From d22912349bd909f5ac159b7dcbd1b38422c2a649 Mon Sep 17 00:00:00 2001 From: Luis Ibanez Date: Sun, 5 Sep 2010 20:15:05 +0000 Subject: [PATCH] ENH: Grouping the logic that detects getopt.c into a single .cmake file. Multiple directories were repeating this configuration independently. The directory jp3d is expected to be self-suficient so it still does the configuration directly. --- CMake/CheckHaveGetopt.cmake | 15 +++++++++++++++ CMakeLists.txt | 4 ++++ JavaOpenJPEG/CMakeLists.txt | 11 ----------- codec/CMakeLists.txt | 12 ------------ jpwl/CMakeLists.txt | 12 ------------ 5 files changed, 19 insertions(+), 35 deletions(-) create mode 100644 CMake/CheckHaveGetopt.cmake diff --git a/CMake/CheckHaveGetopt.cmake b/CMake/CheckHaveGetopt.cmake new file mode 100644 index 00000000..c0fd5dcf --- /dev/null +++ b/CMake/CheckHaveGetopt.cmake @@ -0,0 +1,15 @@ +# Check if getopt is present: +INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake) +SET(DONT_HAVE_GETOPT 1) +IF(UNIX) #I am pretty sure only *nix sys have this anyway + CHECK_INCLUDE_FILE("getopt.h" CMAKE_HAVE_GETOPT_H) + # Seems like we need the contrary: + IF(CMAKE_HAVE_GETOPT_H) + SET(DONT_HAVE_GETOPT 0) + ENDIF(CMAKE_HAVE_GETOPT_H) +ENDIF(UNIX) + +IF(DONT_HAVE_GETOPT) + ADD_DEFINITIONS(-DDONT_HAVE_GETOPT) +ENDIF(DONT_HAVE_GETOPT) + diff --git a/CMakeLists.txt b/CMakeLists.txt index ee7305a5..14ec7ea2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -107,6 +107,10 @@ ENDIF(NOT OPENJPEG_INSTALL_PACKAGE_DIR) # Test for some required system information. INCLUDE (${CMAKE_ROOT}/Modules/CMakeBackwardCompatibilityC.cmake) +#----------------------------------------------------------------------------- +# Test for getopt being available in this system +INCLUDE (${PROJECT_SOURCE_DIR}/CMake/CheckHaveGetopt.cmake ) + #----------------------------------------------------------------------------- # Setup file for setting custom ctest vars CONFIGURE_FILE( diff --git a/JavaOpenJPEG/CMakeLists.txt b/JavaOpenJPEG/CMakeLists.txt index 24058463..c115e4aa 100644 --- a/JavaOpenJPEG/CMakeLists.txt +++ b/JavaOpenJPEG/CMakeLists.txt @@ -4,20 +4,9 @@ SET(common_SRCS convert.c ) -# Then check if getopt is present: -INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake) -SET(DONT_HAVE_GETOPT 1) -IF(UNIX) #I am pretty sure only *nix sys have this anyway - CHECK_INCLUDE_FILE("getopt.h" CMAKE_HAVE_GETOPT_H) - # Seems like we need the contrary: - IF(CMAKE_HAVE_GETOPT_H) - SET(DONT_HAVE_GETOPT 0) - ENDIF(CMAKE_HAVE_GETOPT_H) -ENDIF(UNIX) # If not getopt was found then add it to the lib: IF(DONT_HAVE_GETOPT) - ADD_DEFINITIONS(-DDONT_HAVE_GETOPT) SET(common_SRCS ${common_SRCS} compat/getopt.c diff --git a/codec/CMakeLists.txt b/codec/CMakeLists.txt index 2c0d6184..da2cb630 100644 --- a/codec/CMakeLists.txt +++ b/codec/CMakeLists.txt @@ -6,20 +6,8 @@ SET(common_SRCS index.c ) -# Then check if getopt is present: -INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake) -SET(DONT_HAVE_GETOPT 1) -IF(UNIX) #I am pretty sure only *nix sys have this anyway - CHECK_INCLUDE_FILE("getopt.h" CMAKE_HAVE_GETOPT_H) - # Seems like we need the contrary: - IF(CMAKE_HAVE_GETOPT_H) - SET(DONT_HAVE_GETOPT 0) - ENDIF(CMAKE_HAVE_GETOPT_H) -ENDIF(UNIX) - # If not getopt was found then add it to the lib: IF(DONT_HAVE_GETOPT) - ADD_DEFINITIONS(-DDONT_HAVE_GETOPT) SET(common_SRCS ${common_SRCS} compat/getopt.c diff --git a/jpwl/CMakeLists.txt b/jpwl/CMakeLists.txt index a24210f0..7063229b 100755 --- a/jpwl/CMakeLists.txt +++ b/jpwl/CMakeLists.txt @@ -24,20 +24,8 @@ SET(OPJ_SRCS ) SET(JPWL_SRCS crc.c jpwl.c jpwl_lib.c rs.c) -# Then check if getopt is present: -INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake) -SET(DONT_HAVE_GETOPT 1) -IF(UNIX) #I am pretty sure only *nix sys have this anyway - CHECK_INCLUDE_FILE("getopt.h" CMAKE_HAVE_GETOPT_H) - # Seems like we need the contrary: - IF(CMAKE_HAVE_GETOPT_H) - SET(DONT_HAVE_GETOPT 0) - ENDIF(CMAKE_HAVE_GETOPT_H) -ENDIF(UNIX) - # If not getopt was found then add it to the lib: IF(DONT_HAVE_GETOPT) - ADD_DEFINITIONS(-DDONT_HAVE_GETOPT) SET(OPJ_SRCS ${OPJ_SRCS} ../codec/compat/getopt.c -- 2.40.0