revert to previous behaviour for cmake: builds (and links) dynamically by default...
[openjpeg.git] / libopenjpeg / CMakeLists.txt
index 752e8945f08f5e9c1827c05d9c6f8cfa363b8deb..d1d77a2b6d81646b540c188fb88125cf25fff6d9 100644 (file)
@@ -1,13 +1,11 @@
 INCLUDE_REGULAR_EXPRESSION("^.*$")
 # Defines the source code for the library
-SET(OpenJPEG_SRCS
+SET(OPENJPEG_SRCS
   bio.c
   cio.c
   dwt.c
   event.c
-  fix.c
   image.c
-  int.c
   j2k.c
   j2k_lib.c
   jp2.c
@@ -21,19 +19,41 @@ SET(OpenJPEG_SRCS
   t2.c
   tcd.c
   tgt.c
+  opj_convert.c
 )
 
-# Handle the dllimport/dllexport for building shared lib on Win32
-IF (WIN32)
-  IF (BUILD_SHARED_LIBS)
-    ADD_DEFINITIONS(-DOPJ_SHARED)
-  ELSE (BUILD_SHARED_LIBS)
-    ADD_DEFINITIONS(-DOPJ_STATIC)
-  ENDIF (BUILD_SHARED_LIBS)
-ENDIF (WIN32)
+IF(LCMS_INCLUDE_DIR)
+  INCLUDE_DIRECTORIES( ${LCMS_INCLUDE_DIR} )
+ENDIF(LCMS_INCLUDE_DIR)
 
-# Create the library
-ADD_LIBRARY(${OPJ_PREFIX}openjpeg ${OpenJPEG_SRCS})
+# Build the library
+IF(WIN32)
+  IF(BUILD_SHARED_LIBS)
+    ADD_DEFINITIONS(-DOPJ_EXPORTS)
+  ELSE(BUILD_SHARED_LIBS)
+    ADD_DEFINITIONS(-DOPJ_STATIC)
+  ENDIF(BUILD_SHARED_LIBS)
+ENDIF(WIN32)
+ADD_LIBRARY(${OPENJPEG_LIBRARY_NAME} ${OPENJPEG_SRCS})
+SET_TARGET_PROPERTIES(${OPENJPEG_LIBRARY_NAME} PROPERTIES ${OPENJPEG_LIBRARY_PROPERTIES})
+IF(LCMS_LIB)
+  TARGET_LINK_LIBRARIES(${OPENJPEG_LIBRARY_NAME} ${LCMS_LIB})
+ENDIF(LCMS_LIB)
 
 # Install library
-INSTALL_TARGETS(/lib/ ${OPJ_PREFIX}openjpeg)
+INSTALL(TARGETS ${OPENJPEG_LIBRARY_NAME}
+  EXPORT OpenJPEGTargets
+  DESTINATION ${OPENJPEG_INSTALL_LIB_DIR} COMPONENT Libraries
+)
+
+# Install includes files
+INSTALL(FILES openjpeg.h
+  DESTINATION ${OPENJPEG_INSTALL_INCLUDE_DIR}/${subdir} COMPONENT Headers
+)
+INSTALL(CODE
+  "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E create_symlink \$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${OPENJPEG_INSTALL_INCLUDE_DIR}/${subdir}/openjpeg.h \$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${OPENJPEG_INSTALL_INCLUDE_DIR}/openjpeg.h)")
+
+# install man page of the library
+INSTALL(
+  FILES       ../doc/man/man3/libopenjpeg.3
+  DESTINATION ${OPENJPEG_INSTALL_MAN_DIR}/man3)