diff -Naur freecad-0.14.3702.orig/CMakeLists.txt freecad-0.14.3702/CMakeLists.txt
--- freecad-0.14.3702.orig/CMakeLists.txt 2014-07-13 10:33:02.000000000 -0500
+++ freecad-0.14.3702/CMakeLists.txt 2014-11-30 16:28:11.540834321 -0600
@@ -117,6 +117,7 @@
OPTION(FREECAD_MAINTAINERS_BUILD "Build FreeCAD for Maintainers, with Docu and 3rd party libs. On Windows the Installer is build." OFF)
OPTION(FREECAD_USE_EXTERNAL_ZIPIOS "Use system installed zipios++ instead of the bundled." OFF)
OPTION(FREECAD_USE_EXTERNAL_PIVY "Use system installed python-pivy instead of the bundled." OFF)
+OPTION(FREECAD_USE_EXTERNAL_SMESH "Use system installed smesh instead of the bundled." OFF)
OPTION(FREECAD_BUILD_DEBIAN "Prepare for a build of a Debian package" OFF)
OPTION(FREECAD_BUILD_CAM "Build the FreeCAD CAM module and the needed libs, be aware, unfinished code!" OFF)
@@ -165,6 +166,7 @@
if (FREECAD_BUILD_DEBIAN)
set(FREECAD_USE_EXTERNAL_ZIPIOS ON)
set(FREECAD_USE_EXTERNAL_PIVY ON)
+ set(FREECAD_USE_EXTERNAL_SMESH ON)
endif (FREECAD_BUILD_DEBIAN)
# ==============================================================================
@@ -348,10 +350,6 @@
message(SEND_ERROR "Could not find libpack in specified location:" ${FREECAD_LIBPACK_DIR})
ENDIF(FREECAD_LIBPACK_CHECKFILE6X)
-# -------------------------------- PyCXX --------------------------------
-
- find_package(PyCXX REQUIRED)
-
# -------------------------------- Swig ----------------------------------
find_package(SWIG)
@@ -473,24 +471,29 @@
# Salome SMESH sources are under src/3rdParty now
IF(OCC_FOUND)
- set(SMESH_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/src/3rdParty/salomesmesh/inc)
- set(SMESH_LIBRARIES
- StdMeshers
- #MEFISTO2
- SMESH
- DriverUNV
- SMESHDS
- DriverSTL
- DriverDAT
- Driver
- SMDS
- )
- set(SMESH_FOUND TRUE)
- ENDIF(OCC_FOUND)
- #find_package(SMESH)
- #IF(NOT SMESH_FOUND)
- # MESSAGE("Salome SMESH was not found!")
- #ENDIF(NOT SMESH_FOUND)
+ if(NOT FREECAD_USE_EXTERNAL_SMESH)
+ set(SMESH_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/src/3rdParty/salomesmesh/inc)
+ else()
+ include_directories(${SMESH_INCLUDE_DIR})
+ set(SMESH_LIBRARIES "")
+ foreach(SMESH_LIB
+ StdMeshers
+ #MEFISTO2
+ SMESH
+ DriverUNV
+ SMESHDS
+ DriverSTL
+ DriverDAT
+ Driver
+ SMDS
+ )
+ find_library(SMESH_${SMESH_LIB} ${SMESH_LIB} REQUIRED)
+ list(APPEND SMESH_LIBRARIES ${SMESH_${SMESH_LIB}})
+ endforeach()
+ message(STATUS "Found SMESH library: ${SMESH_LIBRARIES}")
+ endif()
+ set(SMESH_FOUND TRUE)
+ ENDIF(OCC_FOUND)
# -------------------------------- Netgen --------------------------------
diff -Naur freecad-0.14.3702.orig/src/3rdParty/CMakeLists.txt freecad-0.14.3702/src/3rdParty/CMakeLists.txt
--- freecad-0.14.3702.orig/src/3rdParty/CMakeLists.txt 2014-07-13 10:33:02.000000000 -0500
+++ freecad-0.14.3702/src/3rdParty/CMakeLists.txt 2014-07-26 21:31:55.617168862 -0500
@@ -34,8 +34,8 @@
endif (FREECAD_LIBPACK_CHECKFILE6X)
endif(FREECAD_BUILD_GUI AND NOT FREECAD_USE_EXTERNAL_PIVY)
-# Build SalomeMesh for all Platforms since heavily patched
-if (FREECAD_BUILD_SMESH)
+if(NOT FREECAD_USE_EXTERNAL_SMESH)
+ # Build SalomeMesh for all Platforms since heavily patched
add_subdirectory(salomesmesh)
-endif(FREECAD_BUILD_SMESH)
+endif(NOT FREECAD_USE_EXTERNAL_SMESH)
diff -Naur freecad-0.14.3702.orig/src/Mod/Fem/App/CMakeLists.txt freecad-0.14.3702/src/Mod/Fem/App/CMakeLists.txt
--- freecad-0.14.3702.orig/src/Mod/Fem/App/CMakeLists.txt 2014-07-13 10:33:02.000000000 -0500
+++ freecad-0.14.3702/src/Mod/Fem/App/CMakeLists.txt 2014-12-15 14:23:39.548135756 -0600
@@ -21,7 +21,7 @@
${PYTHON_INCLUDE_PATH}
${ZLIB_INCLUDE_DIR}
${XERCESC_INCLUDE_DIR}
- ${CMAKE_SOURCE_DIR}/src/3rdParty/salomesmesh/inc
+ ${SMESH_INCLUDE_DIR}
)
link_directories(${OCC_LIBRARY_DIR})
@@ -34,6 +34,8 @@
StdMeshers
NETGENPlugin
SMESH
+ SMDS
+ SMESHDS
)
else(FREECAD_BUILD_FEM_NETGEN)
set(Fem_LIBS
@@ -41,6 +43,8 @@
FreeCADApp
StdMeshers
SMESH
+ SMDS
+ SMESHDS
)
endif(FREECAD_BUILD_FEM_NETGEN)
diff -Naur freecad-0.14.3702.orig/src/Mod/Fem/Gui/CMakeLists.txt freecad-0.14.3702/src/Mod/Fem/Gui/CMakeLists.txt
--- freecad-0.14.3702.orig/src/Mod/Fem/Gui/CMakeLists.txt 2014-07-13 10:33:02.000000000 -0500
+++ freecad-0.14.3702/src/Mod/Fem/Gui/CMakeLists.txt 2014-12-15 11:16:24.706617437 -0600
@@ -20,7 +20,7 @@
${SOQT_INCLUDE_DIR}
${PYTHON_INCLUDE_PATH}
${XERCESC_INCLUDE_DIR}
- ${CMAKE_SOURCE_DIR}/src/3rdParty/salomesmesh/inc
+ ${SMESH_INCLUDE_DIR}
)
link_directories(${OCC_LIBRARY_DIR})
diff -Naur freecad-0.14.3702.orig/src/Mod/MeshPart/App/CMakeLists.txt freecad-0.14.3702/src/Mod/MeshPart/App/CMakeLists.txt
--- freecad-0.14.3702.orig/src/Mod/MeshPart/App/CMakeLists.txt 2014-07-13 10:33:02.000000000 -0500
+++ freecad-0.14.3702/src/Mod/MeshPart/App/CMakeLists.txt 2014-12-15 12:55:44.292060698 -0600
@@ -14,7 +14,6 @@
include_directories(
${CMAKE_SOURCE_DIR}/src
- ${CMAKE_SOURCE_DIR}/src/3rdParty/salomesmesh/inc
${Boost_INCLUDE_DIRS}
${OCC_INCLUDE_DIR}
${ZLIB_INCLUDE_DIR}
@@ -34,6 +33,7 @@
StdMeshers
NETGENPlugin
SMESH
+ SMDS
)
else(FREECAD_BUILD_FEM_NETGEN)
set(MeshPart_LIBS
@@ -41,6 +41,7 @@
Mesh
StdMeshers
SMESH
+ SMDS
)
endif(FREECAD_BUILD_FEM_NETGEN)