Build: make sure that -DBUILD_SHARED_LIBS:bool=off is honoured to build only the...
authorEven Rouault <even.rouault@spatialys.com>
Sun, 17 Sep 2017 10:17:49 +0000 (12:17 +0200)
committerEven Rouault <even.rouault@spatialys.com>
Sun, 17 Sep 2017 10:17:49 +0000 (12:17 +0200)
CMakeLists.txt
src/lib/openjp2/CMakeLists.txt

index f315d7cf6052c0e69fe0a5d69db55fb05eae73a9..ec42bc99bdcd0afabc398bed9bb011f702746a40 100644 (file)
@@ -173,6 +173,7 @@ configure_file(
 #-----------------------------------------------------------------------------
 # OpenJPEG build configuration options.
 option(BUILD_SHARED_LIBS "Build OpenJPEG shared library and link executables against it." ON)
+option(BUILD_STATIC_LIBS "Build OpenJPEG static library." ON)
 set (EXECUTABLE_OUTPUT_PATH ${OPENJPEG_BINARY_DIR}/bin CACHE PATH "Single output directory for building all executables.")
 set (LIBRARY_OUTPUT_PATH ${OPENJPEG_BINARY_DIR}/bin CACHE PATH "Single output directory for building all libraries.")
 mark_as_advanced(LIBRARY_OUTPUT_PATH EXECUTABLE_OUTPUT_PATH)
index 697b07ea2b6b40b38e806c49cd7e09d90aad5c55..0b452038458c4013cc305a35e5efc6bbd7b3b73b 100644 (file)
@@ -91,11 +91,15 @@ if(WIN32)
   add_library(${OPENJPEG_LIBRARY_NAME} ${OPENJPEG_SRCS})
   set(INSTALL_LIBS ${OPENJPEG_LIBRARY_NAME})
 else()
-  # Builds both static and dynamic libs
-  add_library(${OPENJPEG_LIBRARY_NAME} SHARED ${OPENJPEG_SRCS})
-  add_library(openjp2_static STATIC ${OPENJPEG_SRCS})
-  set_target_properties(openjp2_static PROPERTIES OUTPUT_NAME ${OPENJPEG_LIBRARY_NAME})
-  set(INSTALL_LIBS ${OPENJPEG_LIBRARY_NAME} openjp2_static)
+  if(BUILD_SHARED_LIBS AND BUILD_STATIC_LIBS)
+    # Builds both static and dynamic libs
+    add_library(${OPENJPEG_LIBRARY_NAME} SHARED ${OPENJPEG_SRCS})
+    add_library(openjp2_static STATIC ${OPENJPEG_SRCS})
+    set_target_properties(openjp2_static PROPERTIES OUTPUT_NAME ${OPENJPEG_LIBRARY_NAME})
+    set(INSTALL_LIBS ${OPENJPEG_LIBRARY_NAME} openjp2_static)
+  else()
+    add_library(${OPENJPEG_LIBRARY_NAME} ${OPENJPEG_SRCS})
+  endif()
 endif()
 
 if(UNIX)