-SUBDIRS(base
- bmp
- jp2
- jpc
- jpg
- mif
- pgx
- pnm
- ras
- )
+# Convenient library are not portable (at least does not work on Win32).
+# Therefore instead of doing a SUBDIRS, let's do an INCLUDE of the subdirs
+# and build the global library here...
+SUBDIRS(include/jasper) # This is one can stay here
-ADD_LIBRARY(gdcmjasper)
-TARGET_LINK_LIBRARIES(gdcmjasper
- base
- bmp
- jp2
- jpc
- jpg
- mif
- pgx
- pnm
- ras)
+MACRO(GDCM_CONVENIENT_LIBRARY)
+ SET(GDCMJASPER_SOURCES)
+ FOREACH(SUBDIR ${ARGV})
+ INCLUDE("${GDCMJASPER_SOURCE_DIR}/src/libjasper/${SUBDIR}/CMakeLists.txt")
+ #SET(convenient_lib${SUBDIR}_la_SOURCES)
+ FOREACH(file ${lib${SUBDIR}_la_SOURCES})
+ #SET(convenient_lib${SUBDIR}_la_SOURCES
+ # "${GDCMJASPER_SOURCE_DIR}/src/libjasper/${SUBDIR}/${file}"
+ # "${convenient_lib${SUBDIR}_la_SOURCES}"
+ # )
+ SET(GDCMJASPER_SOURCES
+ ${GDCMJASPER_SOURCE_DIR}/src/libjasper/${SUBDIR}/${file}
+ ${GDCMJASPER_SOURCES}
+ )
+ ENDFOREACH(file)
+ ENDFOREACH(SUBDIR)
+ENDMACRO(GDCM_CONVENIENT_LIBRARY)
+
+# Yeah ! I know how come I only did jpeg 8bits... bla bla
+# I'll wait until I actually see such beast as jpeg2000 + some
+# crazy 16bits lossless jpeg...
+IF(HAVE_LIBJPEG)
+ INCLUDE_DIRECTORIES(${GDCM_BINARY_DIR}/src/gdcmjpeg/8)
+ENDIF(HAVE_LIBJPEG)
+
+# For more info about this patch see the thread on gcc:
+# [ld: common symbols not allowed with MH_DYLIB output format with the -multi_module option]
+# http://www.mail-archive.com/gcc@gcc.gnu.org/msg05981.html
+IF(APPLE)
+ SET_SOURCE_FILES_PROPERTIES(
+ "${GDCMJASPER_SOURCE_DIR}/src/libjasper/jpc/jpc_t1cod.c"
+ PROPERTIES COMPILE_FLAGS -fno-common)
+ENDIF(APPLE)
+
+INCLUDE_DIRECTORIES(${GDCMJASPER_BINARY_DIR}/src/libjasper/include)
+INCLUDE_DIRECTORIES(${GDCMJASPER_SOURCE_DIR}/src/libjasper/include)
+GDCM_CONVENIENT_LIBRARY(base bmp jp2 jpc jpg mif pgx pnm ras)
+
+#MESSAGE("src= ${GDCMJASPER_SOURCES}")
+ADD_LIBRARY(gdcmjasper ${GDCMJASPER_SOURCES})
+IF(HAVE_LIBJPEG)
+ TARGET_LINK_LIBRARIES(gdcmjasper gdcmjpeg8)
+ENDIF(HAVE_LIBJPEG)
+
+INSTALL_TARGETS(/lib/gdcm/ gdcmjasper)