diff --git a/CMakeLists.txt b/CMakeLists.txt index 075f95562..fcea767f8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -314,6 +314,7 @@ if(FREECAD_LIBPACK_USE) find_file(FREECAD_LIBPACK_CHECKFILE9X boost_program_options-vc90-mt-gd-1_54.lib ${FREECAD_LIBPACK_DIR}/lib ) find_file(FREECAD_LIBPACK_CHECKFILE10X boost_program_options-vc110-mt-1_55.lib ${FREECAD_LIBPACK_DIR}/lib ) find_file(FREECAD_LIBPACK_CHECKCUSTOM boost_program_options-vc90-mt-gd-1_41.lib ${FREECAD_LIBPACK_DIR}/lib ) + find_file(FREECAD_LIBPACK_CHECKFILE_CLBUNDLER MANIFEST.db ${FREECAD_LIBPACK_DIR}) # don't show them in the GUI set(FREECAD_LIBPACK_CHECKFILE6X "${FREECAD_LIBPACK_CHECKFILE6X}" CACHE INTERNAL "Find libpack") @@ -322,8 +323,12 @@ if(FREECAD_LIBPACK_USE) set(FREECAD_LIBPACK_CHECKFILE9X "${FREECAD_LIBPACK_CHECKFILE9X}" CACHE INTERNAL "Find libpack") set(FREECAD_LIBPACK_CHECKFILE10X "${FREECAD_LIBPACK_CHECKFILE10X}" CACHE INTERNAL "Find libpack") set(FREECAD_LIBPACK_CHECKCUSTOM "${FREECAD_LIBPACK_CHECKCUSTOM}" CACHE INTERNAL "Find libpack") + set(FREECAD_LIBPACK_CHECKFILE_CLBUNDLER "${FREECAD_LIBPACK_CHECKFILE_CLBUNDLER}" CACHE INTERNAL "Find libpack") - IF(FREECAD_LIBPACK_CHECKFILE6X) + IF(FREECAD_LIBPACK_CHECKFILE_CLBUNDLER) + set(FREECAD_LIBPACK_VERSION "CLbundler" CACHE STRING "Displays if the libpack has been found" FORCE) + include(cMake/UseLibPackCLbundler.cmake) + ELSEIF(FREECAD_LIBPACK_CHECKFILE6X) set(FREECAD_LIBPACK_VERSION "6.x" CACHE STRING "Displays if the libpack has been found" FORCE) include(cMake/UseLibPack6x.cmake) ELSEIF(FREECAD_LIBPACK_CHECKFILE7X) @@ -372,7 +377,9 @@ if(FREECAD_LIBPACK_USE) find_package(PySideTools REQUIRED) # Pyside utilities (pyside-uic & pyside-rcc) -else(FREECAD_LIBPACK_USE) +endif(FREECAD_LIBPACK_USE) + +if(NOT FREECAD_LIBPACK_USE OR FREECAD_LIBPACK_CHECKFILE_CLBUNDLER) # ================================================================================ # == for other OSes search the packages ========================================== @@ -436,7 +443,6 @@ else(FREECAD_LIBPACK_USE) find_package (OCE QUIET) if(${OCE_FOUND}) message("-- OpenCASCADE Community Edition has been found.") - add_definitions (-DHAVE_CONFIG_H) #lib list copied from FreeCAD's FindOpenCasCade.cmake set(OCC_LIBRARIES TKFillet @@ -472,6 +478,8 @@ else(FREECAD_LIBPACK_USE) TKXDEIGES TKMeshVS ) + set(OCC_INCLUDE_DIR ${OCE_INCLUDE_DIRS}) + CHECK_MINIMUM_OCC_VERSION_HEX(0x060703) if (NOT OCC_MIN_VERSION) set(OCC_OCAF_LIBRARIES @@ -479,7 +487,7 @@ else(FREECAD_LIBPACK_USE) TKAdvTools ) endif() - set(OCC_INCLUDE_DIR ${OCE_INCLUDE_DIRS}) + set(OCC_FOUND ${OCE_FOUND}) else() #look for OpenCASCADE find_package(OpenCasCade) @@ -582,7 +590,11 @@ else(FREECAD_LIBPACK_USE) foreach(it ${moc_files}) get_filename_component(it ${it} ABSOLUTE) QT4_MAKE_OUTPUT_FILE(${it} moc_ cpp outfile) - QT4_CREATE_MOC_COMMAND(${it} ${outfile} "${moc_flags}" "${moc_options}" "${moc_target}") + ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + COMMAND ${QT_MOC_EXECUTABLE} + ARGS ${moc_options} ${it} -o ${outfile} + MAIN_DEPENDENCY ${it} + ) set(${outfiles} ${${outfiles}} ${outfile}) add_file_dependencies(${it} ${outfile}) endforeach(it) @@ -648,7 +660,7 @@ else(FREECAD_LIBPACK_USE) endif(BUILD_GUI) -endif(FREECAD_LIBPACK_USE) +endif(NOT FREECAD_LIBPACK_USE OR FREECAD_LIBPACK_CHECKFILE_CLBUNDLER) if(BUILD_VR) find_package(Rift) @@ -685,7 +697,7 @@ ENDIF(CMAKE_SIZEOF_VOID_P EQUAL 8) IF(MSVC) # set default compiler settings SET (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /EHa") - SET (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DFC_DEBUG") + SET (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DFC_DEBUG /Zm128") # set default libs SET (CMAKE_C_STANDARD_LIBRARIES "kernel32.lib user32.lib gdi32.lib winspool.lib SHFolder.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib winmm.lib comsupp.lib Ws2_32.lib dbghelp.lib ") set (CMAKE_CXX_STANDARD_LIBRARIES "${CMAKE_C_STANDARD_LIBRARIES}") diff --git a/cMake/FindNETGEN.cmake b/cMake/FindNETGEN.cmake index d993fbfad..c93aca0eb 100644 --- a/cMake/FindNETGEN.cmake +++ b/cMake/FindNETGEN.cmake @@ -15,7 +15,10 @@ FIND_LIBRARY(NGLIB_LIBRARIES nglib /usr/lib /usr/local/lib) SET(NETGEN_INCLUDE_DIRS) SET(NETGEN_INCLUDE_DIRS ${NETGEN_INCLUDE_DIRS} -DNO_PARALLEL_THREADS -DOCCGEOMETRY) -SET(NETGENDATA /usr/share/netgen/libsrc) +if(NOT NETGENDATA) + SET(NETGENDATA /usr/share/netgen/libsrc) +endif() + FIND_PATH(NETGEN_DIR_csg csg.hpp PATHS ${NETGENDATA}/csg) FIND_PATH(NETGEN_DIR_gen array.hpp PATHS ${NETGENDATA}/general) FIND_PATH(NETGEN_DIR_geom2d geom2dmesh.hpp PATHS ${NETGENDATA}/geom2d) diff --git a/cMake/UseLibPack10x.cmake b/cMake/UseLibPack10x.cmake index e77186da5..7a2f4c014 100644 --- a/cMake/UseLibPack10x.cmake +++ b/cMake/UseLibPack10x.cmake @@ -132,12 +132,8 @@ set(QT_DEBUG_LIBRARIES debug QtWebKitd4.lib ) -set(QT_QTCORE_LIBRARY_DEBUG - debug QtCored4.lib -) - set(QT_QTCORE_LIBRARY - optimized QtCore4.lib + optimized QtCore4.lib debug QtCored4.lib ) set(QT_QT3SUPPORT_LIBRARY_DEBUG diff --git a/cMake/UseLibPack8x.cmake b/cMake/UseLibPack8x.cmake index 4d01bba21..d3ce8a681 100644 --- a/cMake/UseLibPack8x.cmake +++ b/cMake/UseLibPack8x.cmake @@ -137,12 +137,9 @@ set(QT_DEBUG_LIBRARIES debug QtWebKitd4.lib ) -set(QT_QTCORE_LIBRARY_DEBUG - debug QtCored4.lib - ) - set(QT_QTCORE_LIBRARY optimized QtCore4.lib + debug QtCored4.lib ) set(QT_UIC_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/uic.exe) diff --git a/cMake/UseLibPack9x.cmake b/cMake/UseLibPack9x.cmake index 1ba79ed3b..99c540d59 100644 --- a/cMake/UseLibPack9x.cmake +++ b/cMake/UseLibPack9x.cmake @@ -140,12 +140,9 @@ set(QT_DEBUG_LIBRARIES debug QtWebKitd4.lib ) -set(QT_QTCORE_LIBRARY_DEBUG - debug QtCored4.lib -) - set(QT_QTCORE_LIBRARY optimized QtCore4.lib + debug QtCored4.lib ) set(QT_QT3SUPPORT_LIBRARY_DEBUG diff --git a/cMake/UseLibPackCLbundler.cmake b/cMake/UseLibPackCLbundler.cmake new file mode 100644 index 000000000..a06b34c88 --- /dev/null +++ b/cMake/UseLibPackCLbundler.cmake @@ -0,0 +1,87 @@ +set(ENV{PATH} "${FREECAD_LIBPACK_DIR};$ENV{PATH}") +set(ENV{CMAKE_PREFIX_PATH} ${FREECAD_LIBPACK_DIR}) + +set(Boost_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include CACHE PATH "" FORCE) + +set(OCE_DIR ${FREECAD_LIBPACK_DIR}/lib/cmake CACHE PATH "" FORCE) + +set(SWIG_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/swig/swig.exe CACHE FILEPATH "Swig" FORCE) + +set(PYTHON_EXECUTABLE ${FREECAD_LIBPACK_DIR}/bin/python.exe CACHE FILEPATH "" FORCE) +set(PYTHON_LIBRARY ${FREECAD_LIBPACK_DIR}/lib/python27.lib CACHE FILEPATH "" FORCE) +set(PYTHON_DEBUG_LIBRARY ${FREECAD_LIBPACK_DIR}/lib/python27_d.lib CACHE FILEPATH "" FORCE) +set(PYTHON_INCLUDE_DIR ${FREECAD_LIBPACK_DIR}/include/python2.7 CACHE PATH "" FORCE) + +find_library(XERCESC_LIBRARIES xerces-c_3 "${FREECAD_LIBPACK_DIR}/lib") +find_library(XERCESC_DEBUG_LIBRARIES xerces-c_3D "${FREECAD_LIBPACK_DIR}/lib") +set(XERCESC_FOUND TRUE) + +find_library(COIN3D_LIBRARY_RELEASE coin4 "${FREECAD_LIBPACK_DIR}/lib") +find_library(COIN3D_LIBRARY_DEBUG coin4d "${FREECAD_LIBPACK_DIR}/lib") +set(COIN3D_FOUND TRUE) + +set(NETGENDATA ${FREECAD_LIBPACK_DIR}/include/netgen) + +if(FREECAD_USE_FREETYPE) + set(FREETYPE_INCLUDE_DIR_freetype2 ${FREECAD_LIBPACK_DIR}/include/freetype2) +endif(FREECAD_USE_FREETYPE) + +link_directories(${FREECAD_LIBPACK_DIR}/lib) +set(PCL_INCLUDE_DIRS ${FREECAD_LIBPACK_DIR}/include/pcl-1.7) +set(PCL_LIBRARY_DIRS ${FREECAD_LIBPACK_DIR}/lib) + +set(PCL_COMMON_LIBRARIES optimized pcl_common_release debug pcl_common_debug) +set(PCL_FEATURES_LIBRARIES optimized pcl_features_release debug pcl_features_debug) +set(PCL_FILTERS_LIBRARIES optimized pcl_filters_release debug pcl_filters_debug) +set(PCL_IO_LIBRARIES optimized pcl_io_release debug pcl_io_debug) +set(PCL_IO_PLY_LIBRARIES optimized pcl_io_ply_release debug pcl_io_ply_debug) +set(PCL_KDTREE_LIBRARIES optimized pcl_kdtree_release debug pcl_kdtree_debug) +set(PCL_KEYPOINTS_LIBRARIES optimized pcl_keypoints_release debug pcl_keypoints_debug) +set(PCL_ML_LIBRARIES optimized pcl_ml_release debug pcl_ml_debug) +set(PCL_OCTREE_LIBRARIES optimized pcl_octree_release debug pcl_octree_debug) +set(PCL_RECOGNITION_LIBRARIES optimized pcl_recognition_release debug pcl_recognition_debug) +set(PCL_REGISTRATION_LIBRARIES optimized pcl_registration_release debug pcl_registration_debug) +set(PCL_SAMPLE_CONSENSUS_LIBRARIES optimized pcl_sample_consensus_release debug pcl_sample_consensus_debug) +set(PCL_SEARCH_LIBRARIES optimized pcl_search_release debug pcl_search_debug) +set(PCL_SEGMENTATION_LIBRARIES optimized pcl_segmentation_release debug pcl_segmentation_debug) +set(PCL_STEREO_LIBRARIES optimized pcl_stereo_release debug pcl_stereo_debug) +set(PCL_SURFACE_LIBRARIES optimized pcl_surface_release debug pcl_surface_debug) +set(PCL_TRACKING_LIBRARIES optimized pcl_tracking_release debug pcl_tracking_debug) + +set(PCL_LIBRARIES + ${PCL_COMMON_LIBRARIES} + ${PCL_FEATURES_LIBRARIES} + ${PCL_FILTERS_LIBRARIES} + ${PCL_IO_LIBRARIES} + ${PCL_IO_PLY_LIBRARIES} + ${PCL_KDTREE_LIBRARIES} + ${PCL_KEYPOINTS_LIBRARIES} + ${PCL_ML_LIBRARIES} + ${PCL_OCTREE_LIBRARIES} + ${PCL_RECOGNITION_LIBRARIES} + ${PCL_REGISTRATION_LIBRARIES} + ${PCL_SAMPLE_CONSENSUS_LIBRARIES} + ${PCL_SEARCH_LIBRARIES} + ${PCL_SEGMENTATION_LIBRARIES} + ${PCL_STEREO_LIBRARIES} + ${PCL_SURFACE_LIBRARIES} + ${PCL_TRACKING_LIBRARIES} +) +set(PCL_FOUND TRUE) +set(PCL_COMMON_FOUND TRUE) +set(PCL_FEATURES_FOUND TRUE) +set(PCL_FILTERS_FOUND TRUE) +set(PCL_IO_FOUND TRUE) +set(PCL_IO_PLY_FOUND TRUE) +set(PCL_KDTREE_FOUND TRUE) +set(PCL_KEYPOINTS_FOUND TRUE) +set(PCL_ML_FOUND TRUE) +set(PCL_OCTREE_FOUND TRUE) +set(PCL_RECOGNITION_FOUND TRUE) +set(PCL_REGISTRATION_FOUND TRUE) +set(PCL_SAMPLE_CONSENSUS_FOUND TRUE) +set(PCL_SEARCH_FOUND TRUE) +set(PCL_SEGMENTATION_FOUND TRUE) +set(PCL_STEREO_FOUND TRUE) +set(PCL_SURFACE_FOUND TRUE) +set(PCL_TRACKING_FOUND TRUE) diff --git a/src/3rdParty/salomesmesh/CMakeLists.txt b/src/3rdParty/salomesmesh/CMakeLists.txt index d3f2de90d..4c907b7cb 100644 --- a/src/3rdParty/salomesmesh/CMakeLists.txt +++ b/src/3rdParty/salomesmesh/CMakeLists.txt @@ -9,6 +9,13 @@ SET(SMESH_VERSION_TWEAK 2) CMAKE_MINIMUM_REQUIRED(VERSION 2.6) include_directories( + inc + src/SMDS + src/Driver + src/DriverUNV + src/DriverDAT + src/DriverSTL + src/StdMeshers ${CMAKE_BINARY_DIR}/src ${CMAKE_SOURCE_DIR}/src ${CMAKE_CURRENT_BINARY_DIR} @@ -16,13 +23,6 @@ include_directories( ${OCC_INCLUDE_DIR} ${NGLIB_INCLUDE_DIR} ${NETGEN_INCLUDE_DIRS} - src/SMDS - src/Driver - src/DriverUNV - src/DriverDAT - src/DriverSTL - src/StdMeshers - inc ) link_directories(${OCC_LIBRARY_DIR}) diff --git a/src/App/Application.cpp b/src/App/Application.cpp index 08011e92c..7c2795b92 100644 --- a/src/App/Application.cpp +++ b/src/App/Application.cpp @@ -45,10 +45,6 @@ #ifdef FC_OS_WIN32 # include -// Doesn't seem to work with VS2010 -# if (defined(_MSC_VER) && (_MSC_VER < 1600)) -# include -# endif #endif diff --git a/src/Base/CMakeLists.txt b/src/Base/CMakeLists.txt index 3b4bef55d..5c41eb417 100644 --- a/src/Base/CMakeLists.txt +++ b/src/Base/CMakeLists.txt @@ -26,7 +26,6 @@ if(MSVC) debug ${XERCESC_DEBUG_LIBRARIES} optimized ${XERCESC_LIBRARIES} ${QT_QTCORE_LIBRARY} - ${QT_QTCORE_LIBRARY_DEBUG} ${ZLIB_LIBRARIES} debug MSVCRTD.LIB debug MSVCPRTD.LIB diff --git a/src/Mod/Drawing/App/PreCompiled.h b/src/Mod/Drawing/App/PreCompiled.h index c225ce530..cb599e286 100644 --- a/src/Mod/Drawing/App/PreCompiled.h +++ b/src/Mod/Drawing/App/PreCompiled.h @@ -114,7 +114,7 @@ #include #include #include -#if OCC_VERSION_HEX < 0x060800 +#if OCC_VERSION_HEX < 0x060700 #include #include #endif diff --git a/src/Mod/Mesh/App/CMakeLists.txt b/src/Mod/Mesh/App/CMakeLists.txt index 270555614..564ecfaf3 100644 --- a/src/Mod/Mesh/App/CMakeLists.txt +++ b/src/Mod/Mesh/App/CMakeLists.txt @@ -20,7 +20,6 @@ include_directories( set(Mesh_LIBS ${Boost_LIBRARIES} ${QT_QTCORE_LIBRARY} - ${QT_QTCORE_LIBRARY_DEBUG} FreeCADBase FreeCADApp ) diff --git a/src/Mod/Robot/App/CMakeLists.txt b/src/Mod/Robot/App/CMakeLists.txt index ee3588c33..eccb50227 100644 --- a/src/Mod/Robot/App/CMakeLists.txt +++ b/src/Mod/Robot/App/CMakeLists.txt @@ -20,20 +20,11 @@ include_directories( ) link_directories(${OCC_LIBRARY_DIR}) -if(MSVC) - set(Robot_LIBS - Part - ${QT_QTCORE_LIBRARY} - ${QT_QTCORE_LIBRARY_DEBUG} - FreeCADApp - ) -else(MSVC) - set(Robot_LIBS - Part - ${QT_QTCORE_LIBRARY} - FreeCADApp - ) -endif(MSVC) +set(Robot_LIBS + Part + ${QT_QTCORE_LIBRARY} + FreeCADApp +) FILE( GLOB KDL_SRCS kdl_cp/[^.]*.cpp ) FILE( GLOB KDL_HPPS kdl_cp/[^.]*.hpp kdl_cp/[^.]*.inl)