-IF(UNIX)
- IF(CMAKE_COMPILER_IS_GNUCC)
- #C++11 is not supported on some platforms, disable it
- MESSAGE(STATUS "Setting -std=c++0x flag for the gcc...")
- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
-
- #Supporting test coverage checks (gcov) in the DEBUG mode
- IF(USE_TEST_COVERAGE)
- INCLUDE(CodeCoverage)
- MESSAGE(STATUS "Setting flags for gcov support the the gcc...")
- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
- SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 -fprofile-arcs -ftest-coverage")
- SET(CMAKE_SHARED_LINKER_FLAGS "-lgcov")
-
- SETUP_TARGET_FOR_COVERAGE(test_coverage # Name for custom target.
- ctest # Name of the test driver executable that runs the tests.
- coverage) # Name of output directory.
- ENDIF(USE_TEST_COVERAGE)
-
- #SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -E")
- MESSAGE(STATUS "gcc flags are: " ${CMAKE_CXX_FLAGS})
- MESSAGE(STATUS "linker flags are: " ${CMAKE_SHARED_LINKER_FLAGS})
- ENDIF(CMAKE_COMPILER_IS_GNUCC)
-ENDIF(UNIX)
-
-IF(CMAKE_BUILD_TYPE MATCHES RELEASE)
- ADD_SUBDIRECTORY (doc)
-ENDIF(CMAKE_BUILD_TYPE MATCHES RELEASE)
+ FIND_PACKAGE(SalomeOpenCASCADE REQUIRED)
+
+ELSE(${HAVE_SALOME})
+ INCLUDE(FindPython)
+ INCLUDE(FindSalomeOpenCASCADE)
+ENDIF(${HAVE_SALOME})
+
+# Common CMake macros
+# ===================
+
+
+# Find LibXml2
+IF(DEFINED ENV{LIBXML2_ROOT_DIR})
+ IF(WIN32)
+ FILE(TO_CMAKE_PATH $ENV{LIBXML2_ROOT_DIR}/lib/libxml2.lib LIBXML2_LIBRARIES)
+ FILE(TO_CMAKE_PATH $ENV{LIBXML2_ROOT_DIR}/include LIBXML2_INCLUDE_DIR)
+ ELSE()
+ FILE(TO_CMAKE_PATH $ENV{LIBXML2_ROOT_DIR}/lib/libxml2.so LIBXML2_LIBRARIES)
+ FILE(TO_CMAKE_PATH $ENV{LIBXML2_ROOT_DIR}/include/libxml2 LIBXML2_INCLUDE_DIR)
+ ENDIF()
+ENDIF()
+# It could be called only once
+FIND_PACKAGE(LibXml2 REQUIRED)
+
+SET(_pydir lib/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages/salome)
+SET(SHAPER_INSTALL_PYTHON_API ${_pydir}/salome/shaper CACHE INTERNAL "" FORCE)
+SET(SHAPER_INSTALL_SWIG ${_pydir} CACHE INTERNAL "" FORCE)
+IF(${HAVE_SALOME})
+ SET(SHAPER_INSTALL_ADDONS bin/salome CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_BIN lib/salome CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_PLUGIN_FILES lib/salome CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_PYTHON_FILES bin/salome CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_HEADERS include/salome CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_RESOURCES share/salome/resources/shaper CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_QM_RESOURCES share/salome/resources/shaper CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_XML_RESOURCES share/salome/resources/shaper CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_GUI_DOC share/doc/salome/gui/SHAPER CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_TUI_DOC share/doc/salome/tui/SHAPER CACHE INTERNAL "" FORCE)
+ # without SALOME there is another kind of documentation, separated one
+
+ SALOME_INSTALL_SCRIPTS("shaper_test.py" ${SHAPER_INSTALL_PYTHON_FILES})
+ELSE(${HAVE_SALOME})
+ SET(SHAPER_INSTALL_ADDONS addons CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_BIN bin CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_HEADERS include CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_PLUGIN_FILES plugins CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_PYTHON_FILES plugins CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_RESOURCES resources CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_QM_RESOURCES bin CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_XML_RESOURCES plugins CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_GUI_DOC doc CACHE INTERNAL "" FORCE)
+ SET(SHAPER_INSTALL_TUI_DOC doc CACHE INTERNAL "" FORCE)
+ENDIF(${HAVE_SALOME})
+
+# Sketcher: Change radius of circular edges while dragging a point on the edge
+SET(SKETCHER_CHANGE_RADIUS_WHEN_MOVE TRUE)
+
+SET(MAKE_TRANSLATION YES)
+
+ ADD_DEFINITIONS( -DMAKE_TRANSLATION )