Skip to content

Commit

Permalink
Moved settings for default configuration and support data directory, and
Browse files Browse the repository at this point in the history
used same default values for non-Windows systems as for GNU autoconf.
  • Loading branch information
Joerg Riesmeier committed Nov 4, 2010
1 parent 688eaa9 commit 6eb6db2
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 33 deletions.
5 changes: 5 additions & 0 deletions CHANGES.355
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,11 @@ Changes between releases are documented here.

**** Changes from 2010.11.03 (riesmeier)

- Moved settings for default configuration and support data directory, and
used same default values for non-Windows systems as for GNU autoconf.
Affects: CMake/GenerateDCMTKConfigure.cmake
CMakeLists.txt

- Removed superfluous path separator.
Affects: doxygen/CMakeLists.txt

Expand Down
42 changes: 25 additions & 17 deletions CMake/GenerateDCMTKConfigure.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -36,24 +36,32 @@ IF(WIN32 AND NOT CYGWIN AND NOT MINGW)
# Set path and multiple path separator being used in dictionary code etc.
SET(PATH_SEPARATOR "\\\\")
SET(ENVIRONMENT_PATH_SEPARATOR ";")
# Set dictionary path to the data dir inside install main dir (prefix)
SET(DCM_DICT_DEFAULT_PATH "${DCMTK_PREFIX}${INSTALL_DATDIR}/dicom.dic")
# If private dictionary should be utilized, add it to default dictionary path
# Set dictionary path to the data dir inside install main dir (prefix)
SET(DCM_DICT_DEFAULT_PATH "${DCMTK_PREFIX}${INSTALL_DATDIR}${PATH_SEPARATOR}dicom.dic")
# If private dictionary should be utilized, add it to default dictionary path.
IF(WITH_PRIVATE_TAGS)
SET(DCM_DICT_DEFAULT_PATH "${DCM_DICT_DEFAULT_PATH}${ENVIRONMENT_PATH_SEPARATOR}${DCMTK_PREFIX}${INSTALL_DATDIR}${PATH_SEPARATOR}private.dic" )
SET(DCM_DICT_DEFAULT_PATH "${DCM_DICT_DEFAULT_PATH}${ENVIRONMENT_PATH_SEPARATOR}${DCMTK_PREFIX}${INSTALL_DATDIR}${PATH_SEPARATOR}private.dic")
ENDIF(WITH_PRIVATE_TAGS)
# Again, for windows strip all / from path and replace it with \\.
STRING(REGEX REPLACE "/" "\\\\\\\\" DCM_DICT_DEFAULT_PATH "${DCM_DICT_DEFAULT_PATH}")
# Set default directory for configuration and support data.
SET(DCMTK_DEFAULT_CONFIGURATION_DIR "")
SET(DCMTK_DEFAULT_SUPPORT_DATA_DIR "")
ELSE(WIN32 AND NOT CYGWIN AND NOT MINGW)
# Set DCMTK_PREFIX needed within some code.
SET(DCMTK_PREFIX "${CMAKE_INSTALL_PREFIX}")
# Set path and multiple path separator being used in dictionary code etc.
SET(PATH_SEPARATOR "/")
SET(ENVIRONMENT_PATH_SEPARATOR ":")
SET(DCMTK_PREFIX "${CMAKE_INSTALL_PREFIX}")
# Set dictionary path to the data dir inside install main dir (prefix)
SET(DCM_DICT_DEFAULT_PATH "${DCMTK_PREFIX}${INSTALL_DATDIR}${PATH_SEPARATOR}dicom.dic")
# If private dictionary should be utilized, add it to default dictionary path
# If private dictionary should be utilized, add it to default dictionary path.
IF(WITH_PRIVATE_TAGS)
SET(DCM_DICT_DEFAULT_PATH "${DCM_DICT_DEFAULT_PATH}${ENVIRONMENT_PATH_SEPARATOR}${DCMTK_PREFIX}${INSTALL_DATDIR}${PATH_SEPARATOR}private.dic" )
SET(DCM_DICT_DEFAULT_PATH "${DCM_DICT_DEFAULT_PATH}${ENVIRONMENT_PATH_SEPARATOR}${DCMTK_PREFIX}${INSTALL_DATDIR}${PATH_SEPARATOR}private.dic")
ENDIF(WITH_PRIVATE_TAGS)
# Set default directory for configuration and support data.
SET(DCMTK_DEFAULT_CONFIGURATION_DIR "${DCMTK_PREFIX}${INSTALL_ETCDIR}${PATH_SEPARATOR}")
SET(DCMTK_DEFAULT_SUPPORT_DATA_DIR "${DCMTK_PREFIX}${INSTALL_DATDIR}${PATH_SEPARATOR}")
ENDIF(WIN32 AND NOT CYGWIN AND NOT MINGW)

# Check the sizes of various types
Expand Down Expand Up @@ -220,11 +228,11 @@ ENDIF(WIN32 AND NOT CYGWIN)
CHECK_FUNCTION_EXISTS(usleep HAVE_USLEEP)
CHECK_FUNCTION_EXISTS(waitpid HAVE_WAITPID)
CHECK_FUNCTION_EXISTS(_findfirst HAVE__FINDFIRST)

SET(HEADERS)

IF(HAVE_IOSTREAM_H)
SET(HEADERS ${HEADERS} iostream.h)
SET(HEADERS ${HEADERS} iostream.h)
ENDIF(HAVE_IOSTREAM_H)

IF(HAVE_MATH_H)
Expand Down Expand Up @@ -355,17 +363,17 @@ ENDIF(WIN32 AND NOT CYGWIN)
#CHECK_LIBRARY_EXISTS(iostream "" "" HAVE_LIBIOSTREAM)
#CHECK_LIBRARY_EXISTS(nsl "" "" HAVE_LIBNSL)
#CHECK_LIBRARY_EXISTS(socket "" "" HAVE_LIBSOCKET)

# Check for some type definitions needed by JasPer and defines them if necessary
# Even if not functions but types are looked for, the script works fine.
# "definition" is an (exchangeable) identifier that is needed for successful compile test
CHECK_FUNCTIONWITHHEADER_EXISTS("uchar definition" "${HEADERS}" HAVE_UCHAR_TYPEDEF)
CHECK_FUNCTIONWITHHEADER_EXISTS("ushort definition" "${HEADERS}" HAVE_USHORT_TYPEDEF)
CHECK_FUNCTIONWITHHEADER_EXISTS("uint definition" "${HEADERS}" HAVE_UINT_TYPEDEF)
CHECK_FUNCTIONWITHHEADER_EXISTS("ulong definition" "${HEADERS}" HAVE_ULONG_TYPEDEF)
CHECK_FUNCTIONWITHHEADER_EXISTS("longlong definition" "${HEADERS}" HAVE_LONGLONG)
CHECK_FUNCTIONWITHHEADER_EXISTS("ulonglong definition" "${HEADERS}" HAVE_ULONGLONG)
CHECK_FUNCTIONWITHHEADER_EXISTS("uchar definition" "${HEADERS}" HAVE_UCHAR_TYPEDEF)
CHECK_FUNCTIONWITHHEADER_EXISTS("ushort definition" "${HEADERS}" HAVE_USHORT_TYPEDEF)
CHECK_FUNCTIONWITHHEADER_EXISTS("uint definition" "${HEADERS}" HAVE_UINT_TYPEDEF)
CHECK_FUNCTIONWITHHEADER_EXISTS("ulong definition" "${HEADERS}" HAVE_ULONG_TYPEDEF)
CHECK_FUNCTIONWITHHEADER_EXISTS("longlong definition" "${HEADERS}" HAVE_LONGLONG)
CHECK_FUNCTIONWITHHEADER_EXISTS("ulonglong definition" "${HEADERS}" HAVE_ULONGLONG)

# tests that require a try-compile

# check for HAVE_CXX_BOOL
Expand Down
29 changes: 13 additions & 16 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ PROJECT(DCMTK)

# Minimum CMake version required
CMAKE_MINIMUM_REQUIRED(VERSION 2.4)
IF(CMAKE_BACKWARDS_COMPATIBILITY GREATER 2.8.1)
SET(CMAKE_BACKWARDS_COMPATIBILITY 2.8.1 CACHE STRING "Latest version of CMake when this project was released." FORCE)
ENDIF(CMAKE_BACKWARDS_COMPATIBILITY GREATER 2.8.1)
IF(CMAKE_BACKWARDS_COMPATIBILITY GREATER 2.8.2)
SET(CMAKE_BACKWARDS_COMPATIBILITY 2.8.2 CACHE STRING "Latest version of CMake when this project was released." FORCE)
ENDIF(CMAKE_BACKWARDS_COMPATIBILITY GREATER 2.8.2)

#-----------------------------------------------------------------------------
# General project settings to configure DCMTK build process
Expand All @@ -22,8 +22,6 @@ SET(DCMTK_PACKAGE_VERSION "3.5.5")
SET(DCMTK_PACKAGE_VERSION_NUMBER "355")
SET(DCMTK_PACKAGE_VERSION_SUFFIX "")
SET(DCMTK_PACKAGE_DATE "CVS")
SET(DCMTK_DEFAULT_CONFIGURATION_DIR "")
SET(DCMTK_DEFAULT_SUPPORT_DATA_DIR "")

# DCMTK build options
OPTION(DCMTK_WITH_TIFF "Configure DCMTK with support for TIFF" ON)
Expand Down Expand Up @@ -79,7 +77,7 @@ INCLUDE_DIRECTORIES(${DCMTK_INCLUDE_DIR})
SET(INSTALL_BINDIR "/bin")
SET(INSTALL_INCDIR "/include")
SET(INSTALL_LIBDIR "/lib")
SET(INSTALL_ETCDIR "/etc/dcmtk/")
SET(INSTALL_ETCDIR "/etc/dcmtk")
SET(INSTALL_DATDIR "/share/dcmtk")
SET(INSTALL_DOCDIR "/share/doc/dcmtk")
SET(INSTALL_HTMDIR "/share/doc/dcmtk/html")
Expand Down Expand Up @@ -273,21 +271,20 @@ IF(WITH_THREADS)
IF(APPLE)
ADD_DEFINITIONS(-D_XOPEN_SOURCE_EXTENDED -D_BSD_SOURCE -D_BSD_COMPAT -D_OSF_SOURCE)
ENDIF(APPLE)

IF("${CMAKE_SYSTEM_NAME}" MATCHES "^IRIX")
ADD_DEFINITIONS(-D_XOPEN_SOURCE_EXTENDED -D_BSD_SOURCE -D_BSD_COMPAT)
ENDIF("${CMAKE_SYSTEM_NAME}" MATCHES "^IRIX")

ENDIF(HAVE_PTHREAD_RWLOCK)

IF(HAVE_PTHREAD_H)
CHECK_LIBRARY_EXISTS(pthread pthread_key_create "" HAVE_LIBPTHREAD)
IF(HAVE_LIBPTHREAD)
SET(THREAD_LIBS pthread)
ENDIF(HAVE_LIBPTHREAD)
CHECK_LIBRARY_EXISTS(rt sem_init "" HAVE_LIBRT)
IF(HAVE_LIBRT)
SET(THREAD_LIBS ${THREAD_LIBS} rt)
ENDIF(HAVE_LIBRT)
CHECK_LIBRARY_EXISTS(pthread pthread_key_create "" HAVE_LIBPTHREAD)
IF(HAVE_LIBPTHREAD)
SET(THREAD_LIBS pthread)
ENDIF(HAVE_LIBPTHREAD)
CHECK_LIBRARY_EXISTS(rt sem_init "" HAVE_LIBRT)
IF(HAVE_LIBRT)
SET(THREAD_LIBS ${THREAD_LIBS} rt)
ENDIF(HAVE_LIBRT)
ENDIF(HAVE_PTHREAD_H)
ENDIF(WITH_THREADS)

Expand Down

0 comments on commit 6eb6db2

Please sign in to comment.