From 7cc3d9e6696b77a8fdf396cbd55370de3f3ebd9e Mon Sep 17 00:00:00 2001 From: Sergey BELASH Date: Fri, 11 Apr 2014 15:43:56 +0400 Subject: [PATCH] Linux (CentOS 6.3) environment created. --- CMakeCommon/FindPython.cmake | 13 +++-- CMakeCommon/FindQt.cmake | 8 +-- CMakeCommon/XMLProcessing.cmake | 12 +++-- CMakeLists.txt | 2 +- buildNewGEOM.bat | 2 +- centos6_env.sh | 85 ++++++++++++++++++++++++++++++++ eclipse.sh | 20 ++++++++ env.bat => msvc10_env.bat | 8 +-- src/Config/CMakeLists.txt | 2 +- src/Event/CMakeLists.txt | 2 +- src/Model/CMakeLists.txt | 2 +- src/ModelAPI/CMakeLists.txt | 2 +- src/ModuleBase/CMakeLists.txt | 2 +- src/PartSet/CMakeLists.txt | 2 +- src/PartSetPlugin/CMakeLists.txt | 2 +- src/XGUI/CMakeLists.txt | 2 +- 16 files changed, 140 insertions(+), 26 deletions(-) create mode 100644 centos6_env.sh create mode 100644 eclipse.sh rename env.bat => msvc10_env.bat (95%) diff --git a/CMakeCommon/FindPython.cmake b/CMakeCommon/FindPython.cmake index 543d830ad..5b8f5f04d 100644 --- a/CMakeCommon/FindPython.cmake +++ b/CMakeCommon/FindPython.cmake @@ -1,9 +1,14 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) -IF(CMAKE_BUILD_TYPE STREQUAL "Debug") - SET(PYTHON_LIBRARY_DLL "python27_d.lib") + +IF(WIN32) + IF(CMAKE_BUILD_TYPE STREQUAL "Debug") + SET(PYTHON_LIBRARY_DLL "python27_d.lib") + ElSE() + SET(PYTHON_LIBRARY_DLL "python27.lib") + ENDIF() ElSE() - SET(PYTHON_LIBRARY_DLL "python27.lib") + SET(PYTHON_LIBRARY_DLL "libpython27.so") ENDIF() FILE(TO_CMAKE_PATH "$ENV{PYTHON_LIB_DIR}/${PYTHON_LIBRARY_DLL}" PYTHON_LIBRARY) diff --git a/CMakeCommon/FindQt.cmake b/CMakeCommon/FindQt.cmake index 786612a30..426cd0581 100644 --- a/CMakeCommon/FindQt.cmake +++ b/CMakeCommon/FindQt.cmake @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) IF(WIN32) SET(QT_USE_QTMAIN ON) @@ -7,8 +7,8 @@ ENDIF() # Widgets finds its own dependencies (QtGui and QtCore). FIND_PACKAGE(Qt4 REQUIRED) -IF(NOT Qt4_FOUND) - MESSAGE(FATAL_ERROR "Qt not found.") +IF(NOT QT4_FOUND) + MESSAGE(FATAL_ERROR "Qt not found.") ENDIF() INCLUDE(${QT_USE_FILE}) @@ -22,4 +22,4 @@ ADD_DEFINITIONS(${QT_DEFINITIONS}) # Executables fail to build with Qt 5 in the default configuration # without -fPIE. We add that here. -#SET(CMAKE_CXX_FLAGS "${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}") \ No newline at end of file +#SET(CMAKE_CXX_FLAGS "${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}") diff --git a/CMakeCommon/XMLProcessing.cmake b/CMakeCommon/XMLProcessing.cmake index da2bbf47c..7a512165b 100644 --- a/CMakeCommon/XMLProcessing.cmake +++ b/CMakeCommon/XMLProcessing.cmake @@ -1,10 +1,15 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) -SET(LIBXMLDIR $ENV{LIBXML2_DIR}) +SET(LIBXMLDIR $ENV{LIBXML2_ROOT_DIR}) INCLUDE_DIRECTORIES(${LIBXMLDIR}/include/libxml2) LINK_DIRECTORIES (${LIBXMLDIR}/lib) +IF(WIN32) + SET(LIBXML2_LIBRARIES ${LIBXMLDIR}/lib/libxml2.lib) +ELSE() + SET(LIBXML2_LIBRARIES ${LIBXMLDIR}/lib/libxml2.so) +ENDIF() + -SET(LIBXML2_LIBRARIES ${LIBXMLDIR}/lib/libxml2.lib) #set(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} ${LIBXMLDIR}/lib/libxml2.lib) #FILE(TO_CMAKE_PATH $ENV{PC_LIBXML_INCLUDEDIR} PC_LIBXML_INCLUDEDIR) @@ -12,7 +17,6 @@ SET(LIBXML2_LIBRARIES ${LIBXMLDIR}/lib/libxml2.lib) #FILE(TO_CMAKE_PATH $ENV{PC_LIBXML_LIBDIR} PC_LIBXML_LIBDIR) #message(STATUS "PC_LIBXML_INCLUDEDIR " ${PC_LIBXML_INCLUDEDIR}) #message(STATUS "PC_LIBXML_LIBDIR " ${PC_LIBXML_LIBDIR}) - #FIND_PACKAGE(LibXml2 REQUIRED) #if(LIBXML2_FOUND) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5639cfb13..fcea072de 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) PROJECT (NewGEOM) diff --git a/buildNewGEOM.bat b/buildNewGEOM.bat index 51e29adda..edb65c0cd 100644 --- a/buildNewGEOM.bat +++ b/buildNewGEOM.bat @@ -9,7 +9,7 @@ popd @SET SRC_DIR=%ROOT_DIR%\sources -call %SRC_DIR%\env.bat +call %SRC_DIR%\msvc10_env.bat mkdir %ROOT_DIR%\build cd %ROOT_DIR%\build diff --git a/centos6_env.sh b/centos6_env.sh new file mode 100644 index 000000000..f9ec06de4 --- /dev/null +++ b/centos6_env.sh @@ -0,0 +1,85 @@ +#------ Setting products installation directory ------ +export INST_ROOT=/misc/dn21/hdfeditor/sbh/NewGeom/products + +#------ Python ------ +export PYTHON_ROOT_DIR=${INST_ROOT}/Python-2.7.3 +export PYTHONHOME=${PYTHON_ROOT_DIR} +export PYTHON_INCLUDE=${PYTHON_ROOT_DIR}/include/python2.7 +export PYTHON_VERSION=2.7 +export PATH=${PYTHON_ROOT_DIR}/bin:${PATH} +export LD_LIBRARY_PATH=${PYTHON_ROOT_DIR}/lib:${LD_LIBRARY_PATH} +export PYTHONPATH=${PYTHON_ROOT_DIR}/lib/python2.7 +#For cmake +export PYTHON_LIB_DIR=${PYTHON_ROOT_DIR}/lib +export PYTHON_INC_DIR=${PYTHON_INCLUDE} +## +#------ Qt ------ +export QT4_ROOT_DIR=${INST_ROOT}/qt-4.8.4 +export QT_PLUGIN_PATH=${QT4_ROOT_DIR}/plugins +export PATH=${QT4_ROOT_DIR}/bin:${PATH} +export LD_LIBRARY_PATH=${QT4_ROOT_DIR}/lib:${LD_LIBRARY_PATH} +## +#------ boost ------ +#export BOOST_ROOT_DIR=${INST_ROOT}/boost-1.52.0 +#export LD_LIBRARY_PATH ${BOOST_ROOT_DIR}/lib +## +#------ swig ------ +export SWIG_ROOT_DIR=${INST_ROOT}/swig-2.0.8 +export SWIG_LIB=${SWIG_ROOT_DIR}/share/swig/2.0.8 +export PATH=${SWIG_ROOT_DIR}/bin:${PATH} +## +#------ cmake ------ +export CMAKE_ROOT_DIR=${INST_ROOT}/cmake-2.8.10.2 +export PATH=${CMAKE_ROOT_DIR}/bin:${PATH} +## +#------ freetype ------ +export FREETYPE_ROOT_DIR=${INST_ROOT}/freetype-2.4.11 +export LD_LIBRARY_PATH=${FREETYPE_ROOT_DIR}/lib:${LD_LIBRARY_PATH} +## +#------ freeimage ------ +export FREEIMAGE_ROOT_DIR=${INST_ROOT}/freeimage-3.15.4 +export PATH=${FREEIMAGE_ROOT_DIR}/bin:${PATH} +export LD_LIBRARY_PATH=${FREEIMAGE_ROOT_DIR}/lib:${LD_LIBRARY_PATH} +## +#------ gl2ps ------ +export GL2PS_ROOT_DIR=${INST_ROOT}/gl2ps-1.3.8 +export PATH=${GL2PS_ROOT_DIR}/bin:${PATH} +export LD_LIBRARY_PATH=${GL2PS_ROOT_DIR}/lib:${LD_LIBRARY_PATH} +## +#------ tbb ------ +export TBB_ROOT_DIR=${INST_ROOT}/tbb-30_018oss +export PATH=${TBB_ROOT_DIR}/bin/intel64/cc4.1.0_libc2.4_kernel2.6.16.21:${PATH} +export LD_LIBRARY_PATH=${TBB_ROOT_DIR}/lib/intel64/cc4.1.0_libc2.4_kernel2.6.16.21:${LD_LIBRARY_PATH} +## +#------ libxml2 ------ +export LIBXML2_ROOT_DIR=${INST_ROOT}/libxml2-2.9.0 +export PATH=${LIBXML2_ROOT_DIR}/bin:${PATH} +export LD_LIBRARY_PATH=${LIBXML2_ROOT_DIR}/lib:${LD_LIBRARY_PATH} +# DO NOT rename following 3 variables, +# they are required by CMake "find(Libxml2)" procedure +export LIBXML2_INCLUDE_DIR=${LIBXML2_ROOT_DIR}/include/libxml2 +export LIBXML2_LIB_DIR=${LIBXML2_ROOT_DIR}/lib +export LIBXML2_BIN_DIR=${LIBXML2_ROOT_DIR}/bin +## +#------ OCCT ------ +export CAS_ROOT_DIR=${INST_ROOT}/OCCT-6.7.0 + +export PATH=${CAS_ROOT_DIR}:${CAS_ROOT_DIR}/bin:${PATH} +export LD_LIBRARY_PATH=${CAS_ROOT_DIR}:${CAS_ROOT_DIR}/lib:${LD_LIBRARY_PATH} +# Variable for Foundation Classes : +export CSF_UnitsLexicon=${CAS_ROOT_DIR}/src/UnitsAPI/Lexi_Expr.dat +export CSF_UnitsDefinition=${CAS_ROOT_DIR}/src/UnitsAPI/Units.dat +# Variable for DataExchange : +export CSF_SHMessage=${CAS_ROOT_DIR}/src/SHMessage +export CSF_XSMessage=${CAS_ROOT_DIR}/src/XSMessage +# Variable for Font : +export CSF_MDTVFontDirectory=${CAS_ROOT_DIR}/src/FontMFT +export CSF_MDTVTexturesDirectory=${CAS_ROOT_DIR}/src/Textures +# Activation of OCCT Kernel multithreading : +export MMGT_REENTRANT=1 +# this variable only needed for DRAWEXE +export CASROOT=${CAS_ROOT_DIR} +## +export LIB=${LD_LIBRARY_PATH} + + diff --git a/eclipse.sh b/eclipse.sh new file mode 100644 index 000000000..dc910dae3 --- /dev/null +++ b/eclipse.sh @@ -0,0 +1,20 @@ + +# Find absolute path to ROOT_DIR +export ROOT_DIR=$(pwd)/.. +export ROOT_DIR=`cd "${ROOT_DIR}";pwd` + +SRC_DIR=${ROOT_DIR}/sources + +source ${SRC_DIR}/centos6_env.sh +mkdir -p ${ROOT_DIR}/build +cd ${ROOT_DIR}/build + +CMAKE_ARGS="-D_ECLIPSE_VERSION=4.3" +CMAKE_ARGS="${CMAKE_ARGS} -DCMAKE_BUILD_TYPE=Debug" +CMAKE_ARGS="${CMAKE_ARGS} -DCMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT=ON" +CMAKE_ARGS="${CMAKE_ARGS} -DCMAKE_INSTALL_PREFIX:PATH=${ROOT_DIR}/install" +CMAKE_ARGS="${CMAKE_ARGS} ${SRC_DIR}" + +cmake -G "Eclipse CDT4 - Unix Makefiles" ${CMAKE_ARGS} + +/misc/dn21/hdfeditor/sbh/devtools/eclipse-4.3.0/eclipse& \ No newline at end of file diff --git a/env.bat b/msvc10_env.bat similarity index 95% rename from env.bat rename to msvc10_env.bat index 9affd5422..6b774f930 100644 --- a/env.bat +++ b/msvc10_env.bat @@ -108,12 +108,12 @@ set PATH=%CMAKEDIR%\bin;%PATH% @REM ------------------------- @REM LIBXML2 -@SET LIBXML2_DIR=%PDIR%\libxml2-2.9.0 +@SET LIBXML2_ROOT_DIR=%PDIR%\libxml2-2.9.0 @REM DO NOT rename following 3 variables, @REM they are required by CMake "find(Libxml2)" procedure -@SET LIBXML2_INCLUDE_DIR=%LIBXML2_DIR%\include\libxml2 -@SET LIBXML2_LIB_DIR=%LIBXML2_DIR%\lib -@SET LIBXML2_BIN_DIR=%LIBXML2_DIR%\bin +@SET LIBXML2_INCLUDE_DIR=%LIBXML2_ROOT_DIR%\include\libxml2 +@SET LIBXML2_LIB_DIR=%LIBXML2_ROOT_DIR%\lib +@SET LIBXML2_BIN_DIR=%LIBXML2_ROOT_DIR%\bin @SET PATH=%LIBXML2_BIN_DIR%;%LIBXML2_LIB_DIR%;%PATH% @REM ------------------------- diff --git a/src/Config/CMakeLists.txt b/src/Config/CMakeLists.txt index 159be465c..ef1090887 100644 --- a/src/Config/CMakeLists.txt +++ b/src/Config/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) INCLUDE(Common) INCLUDE(XMLProcessing) diff --git a/src/Event/CMakeLists.txt b/src/Event/CMakeLists.txt index 4b2c1d86e..3e458d5b4 100644 --- a/src/Event/CMakeLists.txt +++ b/src/Event/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) INCLUDE(Common) diff --git a/src/Model/CMakeLists.txt b/src/Model/CMakeLists.txt index 48a70e9ac..fae978371 100644 --- a/src/Model/CMakeLists.txt +++ b/src/Model/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) INCLUDE(Common) INCLUDE(FindCAS) diff --git a/src/ModelAPI/CMakeLists.txt b/src/ModelAPI/CMakeLists.txt index 4b15c44e3..bfe828ea8 100644 --- a/src/ModelAPI/CMakeLists.txt +++ b/src/ModelAPI/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) FIND_PACKAGE(SWIG REQUIRED) INCLUDE(${SWIG_USE_FILE}) diff --git a/src/ModuleBase/CMakeLists.txt b/src/ModuleBase/CMakeLists.txt index 240c0da62..dd8b1cb03 100644 --- a/src/ModuleBase/CMakeLists.txt +++ b/src/ModuleBase/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) INCLUDE(Common) SET(CMAKE_AUTOMOC ON) diff --git a/src/PartSet/CMakeLists.txt b/src/PartSet/CMakeLists.txt index 337a75ad6..25b8d89ba 100644 --- a/src/PartSet/CMakeLists.txt +++ b/src/PartSet/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) INCLUDE(Common) SET(CMAKE_AUTOMOC ON) diff --git a/src/PartSetPlugin/CMakeLists.txt b/src/PartSetPlugin/CMakeLists.txt index ab420ebe9..9a7e1ba0a 100644 --- a/src/PartSetPlugin/CMakeLists.txt +++ b/src/PartSetPlugin/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) INCLUDE(Common) diff --git a/src/XGUI/CMakeLists.txt b/src/XGUI/CMakeLists.txt index f428942ff..3e4556b62 100644 --- a/src/XGUI/CMakeLists.txt +++ b/src/XGUI/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.10) INCLUDE(FindCAS) -- 2.39.2