diff --git a/CMakeLists.txt b/CMakeLists.txt index 7b53c49a49..743f62df2e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -62,29 +62,39 @@ if (MSVC) add_definitions(/fp:precise) endif() -# set compiler short name and choose SSE2 option for appropriate MSVC compilers -if (DEFINED MSVC70) - SET(COMPILER vc7) -elseif (DEFINED MSVC80) - SET(COMPILER vc8) +# choose SSE2 option for appropriate MSVC compilers +if (MSVC80 OR MSVC90 OR MSVC10) if (${COMPILER_BITNESS} STREQUAL 32) add_definitions(/arch:SSE2) endif() -elseif (DEFINED MSVC90) - SET(COMPILER vc9) - if (${COMPILER_BITNESS} STREQUAL 32) - add_definitions(/arch:SSE2) - endif() -elseif (DEFINED MSVC10) - SET(COMPILER vc10) - if (${COMPILER_BITNESS} STREQUAL 32) - add_definitions(/arch:SSE2) - endif() -elseif (DEFINED MSVC11) - SET(COMPILER vc11) -else() - SET(COMPILER ${CMAKE_GENERATOR}) endif() + +# set compiler short name +if (MSVC) + if (MSVC70) + set (COMPILER vc7) + elseif (MSVC80) + set (COMPILER vc8) + elseif (MSVC90) + set (COMPILER vc9) + elseif (MSVC10) + set (COMPILER vc10) + elseif (MSVC11) + set (COMPILER vc11) + endif() +elseif (DEFINED CMAKE_COMPILER_IS_GNUCC) + set (COMPILER gcc) +elseif (DEFINED CMAKE_COMPILER_IS_GNUCXX) + set (COMPILER gxx) +elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") + set (COMPILER clang) +elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") + set (COMPILER icc) +else() + set (COMPILER ${CMAKE_GENERATOR}) + string (REGEX REPLACE " " "" COMPILER ${COMPILER}) +endif() + if (WIN32) SET(OS_WITH_BIT "win${COMPILER_BITNESS}") elseif(APPLE) @@ -271,7 +281,11 @@ MACRO(THIRDPARTY_PRODUCT PRODUCT_NAME HEADER_NAME LIBRARY_NAME) IF(3RDPARTY_${PRODUCT_NAME}_DIR) IF("${3RDPARTY_${PRODUCT_NAME}_INCLUDE_DIR}" STREQUAL "" OR CHANGES_ARE_NEEDED OR "${3RDPARTY_${PRODUCT_NAME}_INCLUDE_DIR}" STREQUAL "3RDPARTY_${PRODUCT_NAME}_INCLUDE_DIR-NOTFOUND") SET(3RDPARTY_${PRODUCT_NAME}_INCLUDE_DIR "3RDPARTY_${PRODUCT_NAME}_INCLUDE_DIR-NOTFOUND" CACHE FILEPATH "Directory contains headers of the ${PRODUCT_NAME} product" FORCE) - FIND_PATH(3RDPARTY_${PRODUCT_NAME}_INCLUDE_DIR ${HEADER_NAME} PATHS "${3RDPARTY_${PRODUCT_NAME}_DIR}/include" NO_DEFAULT_PATH) + if ("${PRODUCT_NAME}" STREQUAL "FREETYPE") + FIND_PATH(3RDPARTY_FREETYPE_INCLUDE_DIR ${HEADER_NAME} PATHS "${3RDPARTY_FREETYPE_DIR}/include" "${3RDPARTY_FREETYPE_DIR}/include/freetype2" NO_DEFAULT_PATH) + else() + FIND_PATH(3RDPARTY_${PRODUCT_NAME}_INCLUDE_DIR ${HEADER_NAME} PATHS "${3RDPARTY_${PRODUCT_NAME}_DIR}/include" NO_DEFAULT_PATH) + endif() ENDIF() IF("${3RDPARTY_${PRODUCT_NAME}_LIBRARY}" STREQUAL "" OR CHANGES_ARE_NEEDED OR "${3RDPARTY_${PRODUCT_NAME}_LIBRARY}" STREQUAL "3RDPARTY_${PRODUCT_NAME}_LIBRARY-NOTFOUND") @@ -406,12 +420,6 @@ ENDIF() # FREETYPE THIRDPARTY_PRODUCT("FREETYPE" "ft2build.h" "freetype${3RDPARTY_BUILD_SUFFIX}") -IF("${3RDPARTY_FREETYPE_INCLUDE_DIR}" STREQUAL "" OR "${3RDPARTY_FREETYPE_INCLUDE_DIR}" STREQUAL "3RDPARTY_FREETYPE_INCLUDE_DIR-NOTFOUND") - -ELSEIF(EXISTS "${3RDPARTY_FREETYPE_INCLUDE_DIR}/freetype2/") - SET(3RDPARTY_INCLUDE_DIRS "${3RDPARTY_INCLUDE_DIRS};${3RDPARTY_FREETYPE_INCLUDE_DIR}/freetype2") -ENDIF() - # FREEIMAGE IF(USE_FREEIMAGE) ADD_DEFINITIONS(-DHAVE_FREEIMAGE) diff --git a/adm/templates/env.sh.in b/adm/templates/env.sh.in index 7bdd0ce25c..4915aca68b 100644 --- a/adm/templates/env.sh.in +++ b/adm/templates/env.sh.in @@ -60,13 +60,12 @@ fi BIN_PATH="${WOKSTATION}${ARCH}/${COMPILER}/bin${CASDEB}" LIBS_PATH="${WOKSTATION}${ARCH}/${COMPILER}/lib${CASDEB}" -export PATH="${CASROOT}/${BIN_PATH}:${THRDPARTY_PATH}:${PATH}" +export PATH="${CASROOT}/${BIN_PATH}:${PATH}" if [ "$LD_LIBRARY_PATH" != "" ]; then - export LD_LIBRARY_PATH="${CASROOT}/${LIBS_PATH}:${LD_LIBRARY_PATH}" - else - export LD_LIBRARY_PATH="${CASROOT}/${LIBS_PATH}" - fi + export LD_LIBRARY_PATH="${CASROOT}/${LIBS_PATH}:${THRDPARTY_PATH}:${LD_LIBRARY_PATH}" +else + export LD_LIBRARY_PATH="${CASROOT}/${LIBS_PATH}:${THRDPARTY_PATH}" fi if [ "$WOKSTATION" == "mac" ]; then diff --git a/adm/templates/tcl.cmake b/adm/templates/tcl.cmake index 3284f82500..e93fd75963 100644 --- a/adm/templates/tcl.cmake +++ b/adm/templates/tcl.cmake @@ -64,7 +64,7 @@ IF("${3RDPARTY_TCL_LIBRARY}" STREQUAL "" OR CHANGES_ARE_NEEDED OR "${3RDPARTY_TC IF(NOT "${3RDPARTY_TCL_DIR}" STREQUAL "") FIND_LIBRARY(3RDPARTY_TCL_LIBRARY - NAMES tcl tcl8${TCL_SEP}6 tcl8${TCL_SEP}5 + NAMES tcl8${TCL_SEP}6 tcl8${TCL_SEP}5 tcl PATHS "${3RDPARTY_TCL_DIR}/lib" NO_DEFAULT_PATH) ELSE() SET(3RDPARTY_TCL_POSSIBLE_LIBRARIES_DIRS /usr/lib /usr/local/lib) @@ -81,16 +81,16 @@ IF("${3RDPARTY_TCL_LIBRARY}" STREQUAL "" OR CHANGES_ARE_NEEDED OR "${3RDPARTY_TC # check default path (with additions) for library search FIND_LIBRARY(3RDPARTY_TCL_LIBRARY - NAMES tcl tcl8${TCL_SEP}6 tcl8${TCL_SEP}5 + NAMES tcl8${TCL_SEP}6 tcl8${TCL_SEP}5 tcl PATHS ${3RDPARTY_TCL_POSSIBLE_LIBRARIES_DIRS}) ENDIF() ENDIF() #search the version of found tcl library IF("${3RDPARTY_TCL_LIBRARY}" STREQUAL "" OR "${3RDPARTY_TCL_LIBRARY}" STREQUAL "3RDPARTY_TCL_LIBRARY-NOTFOUND") - SET (TCL_DLL_SO_NAMES ${DLL_SO_PREFIX}tcl.${DLL_SO} + SET (TCL_DLL_SO_NAMES ${DLL_SO_PREFIX}tcl8${TCL_SEP}6.${DLL_SO} ${DLL_SO_PREFIX}tcl8${TCL_SEP}5.${DLL_SO} - ${DLL_SO_PREFIX}tcl8${TCL_SEP}6.${DLL_SO} ) + ${DLL_SO_PREFIX}tcl.${DLL_SO}) ELSE() GET_FILENAME_COMPONENT(TCL_LIBRARY_NAME "${3RDPARTY_TCL_LIBRARY}" NAME)