54 lines
2.0 KiB
CMake
54 lines
2.0 KiB
CMake
#define global options, this makes it easy to use ccmake, or the cmake gui
|
|
MACRO (DEFINE_OPTIONS extraOptions extraLibs)
|
|
IF(ENABLE_DEBUG)
|
|
SET (${extraOptions} "${${extraOptions}} -D_DEBUG")
|
|
ENDIF(ENABLE_DEBUG)
|
|
|
|
IF(ENABLE_MMAP)
|
|
SET (${extraOptions} "${${extraOptions}} -DLUCENE_FS_MMAP")
|
|
ENDIF(ENABLE_MMAP)
|
|
|
|
IF(ENABLE_DMALLOC)
|
|
SET (${extraOptions} "${${extraOptions}} -DDMALLOC")
|
|
IF ( DISABLE_MULTITHREADING )
|
|
SET (${extraLibs} ${${extraLibs}} "dmalloccxx")
|
|
ELSE( DISABLE_MULTITHREADING )
|
|
SET (${extraLibs} ${${extraLibs}} "dmallocthcxx")
|
|
ENDIF ( DISABLE_MULTITHREADING )
|
|
ENDIF(ENABLE_DMALLOC)
|
|
|
|
IF(DISABLE_MULTITHREADING)
|
|
SET (${extraOptions} "${${extraOptions}} -D_CL_DISABLE_MULTITHREADING")
|
|
ELSE(DISABLE_MULTITHREADING)
|
|
SET(${extraOptions} "${${extraOptions}} -D_REENTRANT")
|
|
ENDIF(DISABLE_MULTITHREADING)
|
|
|
|
IF(ENABLE_ASCII_MODE)
|
|
SET (${extraOptions} "${${extraOptions}} -D_ASCII")
|
|
ELSE(ENABLE_ASCII_MODE)
|
|
SET (${extraOptions} "${${extraOptions}} -D_UCS2")
|
|
SET (${extraOptions} "${${extraOptions}} -D_UNICODE")
|
|
ENDIF(ENABLE_ASCII_MODE)
|
|
|
|
IF ( MSVC80 OR MSVC90)
|
|
#todo: remove this once crt functions are fixed...
|
|
SET (${extraOptions} "${${extraOptions}} -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE")
|
|
ENDIF ( MSVC80 OR MSVC90 )
|
|
|
|
IF(CYGWIN)
|
|
ADD_DEFINITIONS(-D__LARGE64_FILES)
|
|
ENDIF(CYGWIN)
|
|
|
|
# calm mdown msvc
|
|
IF(MSVC)
|
|
IF ( NOT MSVC60 )
|
|
#ADD_DEFINITIONS(-wd4251) # 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2'
|
|
#ADD_DEFINITIONS(-wd4275) # non DLL-interface classkey 'identifier' used as base for DLL-interface classkey 'identifier'
|
|
#ADD_DEFINITIONS(-wd4309) # 'conversion' : truncation of constant value
|
|
#ADD_DEFINITIONS(-wd4503) # decorated name length exceeded
|
|
#ADD_DEFINITIONS(-wd4786) # identifier was truncated to '255' characters in the debug information
|
|
ENDIF ( NOT MSVC60 )
|
|
ENDIF(MSVC)
|
|
|
|
ENDMACRO (DEFINE_OPTIONS)
|