X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2Fgdcmjasper%2Fsrc%2Flibjasper%2FCMakeLists.txt;h=cb30a24499ccd9f151f3ed55cc7ed6c0ee3760ad;hb=3982051682be501009c8c9112f5ea6e2fb64c4fd;hp=cdf594f0883926c42867b752340dd9b33aea2cbc;hpb=92caef4ab9527cc610e45d51e6fde0d94a045088;p=gdcm.git diff --git a/src/gdcmjasper/src/libjasper/CMakeLists.txt b/src/gdcmjasper/src/libjasper/CMakeLists.txt index cdf594f0..cb30a244 100644 --- a/src/gdcmjasper/src/libjasper/CMakeLists.txt +++ b/src/gdcmjasper/src/libjasper/CMakeLists.txt @@ -1,23 +1,51 @@ -SUBDIRS(base - bmp - jp2 - jpc - jpg - mif - pgx - pnm - ras - ) - -ADD_LIBRARY(gdcmjasper) -TARGET_LINK_LIBRARIES(gdcmjasper - 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 + +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 such beast of 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) + +