diff --git a/CMakeLists.txt b/CMakeLists.txt index f10b46178..cfc653ac4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -59,17 +59,24 @@ endif(CMAKE_COMPILER_IS_GNUCXX) # Output directories for install target if(WIN32) - SET(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}) + SET(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR}/install CACHE PATH "Installation root directory") else(WIN32) SET(CMAKE_INSTALL_PREFIX "/usr/lib${LIB_SUFFIX}/freecad" CACHE PATH "Installation root directory") SET(INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") endif(WIN32) - SET(CMAKE_INSTALL_DATADIR data CACHE PATH "Output directory for data and resource files") SET(CMAKE_INSTALL_INCLUDEDIR include CACHE PATH "Output directory for header files") SET(CMAKE_INSTALL_DOCDIR doc CACHE PATH "Output directory for documentation and license files") +# used as compiler defines +SET(RESOURCEDIR "${CMAKE_INSTALL_DATADIR}") +SET(DOCDIR "${CMAKE_INSTALL_DOCDIR}") + +MESSAGE("prefix: ${CMAKE_INSTALL_PREFIX}") +MESSAGE("datadir: ${CMAKE_INSTALL_DATADIR}") +MESSAGE("docdir: ${CMAKE_INSTALL_DOCDIR}") +MESSAGE("includedir: ${CMAKE_INSTALL_INCLUDEDIR}") # ============================================================================== # == Win32 is default behaviour use the LibPack copied in Source tree ========== @@ -89,8 +96,6 @@ OPTION(FREECAD_MAINTAINERS_BUILD "Build FreeCAD for Maintainers, with Docu and 3 OPTION(FREECAD_BUILD_CAM "Build the FreeCAD CAM module and the needed libs, be aware, unfinished code!" OFF) OPTION(FREECAD_BUILD_FEM "Build the FreeCAD FEM module, be aware, unfinished code!" ON) OPTION(FREECAD_BUILD_SANDBOX "Build the FreeCAD Sandbox module which is only for testing purposes" OFF) -SET(RESOURCEDIR "${CMAKE_INSTALL_PREFIX}/data" CACHE PATH "Absolute path to the data directory.") -SET(DOCDIR "" CACHE PATH "Absolute path to the documentation directory.") # ============================================================================== @@ -473,6 +478,7 @@ if(FREECAD_MAINTAINERS_BUILD AND NOT WIN32) #ADD_CUSTOM_TARGET(DIST make package_source) endif(FREECAD_MAINTAINERS_BUILD AND NOT WIN32) + #add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source) add_custom_target(dist-git COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/Tools/makedist.py --srcdir=${CMAKE_SOURCE_DIR} --bindir=${CMAKE_BINARY_DIR} diff --git a/cMake/FreeCadMacros.cmake b/cMake/FreeCadMacros.cmake index 09116f13b..5fa7680f7 100644 --- a/cMake/FreeCadMacros.cmake +++ b/cMake/FreeCadMacros.cmake @@ -38,37 +38,9 @@ ENDFOREACH(SRC ${FILES}) SET(${TARGETS} ${AddTargets}) ENDMACRO(COPY_IF_DIFFERENT FROM_DIR TO_DIR FILES TARGETS TAGS) -MACRO (fc_copy_to_mod_path mod_name ) - - FOREACH (it ${ARGN}) - file(TO_NATIVE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/${it}" NATIVE_SOURCE) - file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/Mod/${mod_name}/" NATIVE_DEST) - message(STATUS "${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEST}") - if (WIN32) - else (WIN32) - execute_process( COMMAND ${PLATFORM_MK} ${NATIVE_DEST} ) - endif (WIN32) - execute_process( COMMAND ${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEST} ) - ENDFOREACH(it) -ENDMACRO(fc_copy_to_mod_path) - -MACRO (fc_copy_to_path path_name) - - FOREACH (it ${ARGN}) - file(TO_NATIVE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/${it}" NATIVE_SOURCE) - file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/${path_name}/" NATIVE_DEST) - message(STATUS "${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEST}") - if (WIN32) - else (WIN32) - execute_process( COMMAND ${PLATFORM_MK} ${NATIVE_DEST} ) - endif (WIN32) - execute_process( COMMAND ${PLATFORM_CP} ${NATIVE_SOURCE} ${NATIVE_DEST} ) - ENDFOREACH(it) -ENDMACRO(fc_copy_to_path) - -MACRO (fc_copy_sources path_name mod_name) +MACRO (fc_copy_sources target_name outpath) foreach(it ${ARGN}) - file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/${path_name}/${it}" outfile) + file(TO_NATIVE_PATH "${outpath}/${it}" outfile) get_filename_component(infile ${it} ABSOLUTE) get_filename_component(outfile ${outfile} ABSOLUTE) add_file_dependencies(${infile} ${outfile}) @@ -76,42 +48,21 @@ MACRO (fc_copy_sources path_name mod_name) SOURCE ${infile} COMMAND ${CMAKE_COMMAND} ARGS -E copy ${infile} ${outfile} - TARGET ${mod_name} + TARGET ${target_name} OUTPUTS ${outfile} ) endforeach(it) ADD_CUSTOM_COMMAND( - SOURCE ${mod_name} - TARGET ${mod_name} + SOURCE ${target_name} + TARGET ${target_name} DEPENDS ${ARGN} ) ENDMACRO(fc_copy_sources) -MACRO (fc_copy_sources_outpath out_path mod_name) +MACRO (fc_target_copy_resource target_name inpath outpath) foreach(it ${ARGN}) - file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/${out_path}/${it}" outfile) - get_filename_component(infile ${it} ABSOLUTE) - get_filename_component(outfile ${outfile} ABSOLUTE) - add_file_dependencies(${infile} ${outfile}) - ADD_CUSTOM_COMMAND( - SOURCE ${infile} - COMMAND ${CMAKE_COMMAND} - ARGS -E copy ${infile} ${outfile} - TARGET ${mod_name} - OUTPUTS ${outfile} - ) - endforeach(it) - ADD_CUSTOM_COMMAND( - SOURCE ${mod_name} - TARGET ${mod_name} - DEPENDS ${ARGN} - ) -ENDMACRO(fc_copy_sources_outpath) - -MACRO (fc_copy_script path_name mod_name) - foreach(it ${ARGN}) - file(TO_NATIVE_PATH "${CMAKE_SOURCE_DIR}/src/${path_name}/${it}" infile) - file(TO_NATIVE_PATH "${CMAKE_BINARY_DIR}/${path_name}/${it}" outfile) + file(TO_NATIVE_PATH "${inpath}/${it}" infile) + file(TO_NATIVE_PATH "${outpath}/${it}" outfile) get_filename_component(infile ${infile} ABSOLUTE) get_filename_component(outfile ${outfile} ABSOLUTE) add_file_dependencies(${infile} ${outfile}) @@ -119,16 +70,16 @@ MACRO (fc_copy_script path_name mod_name) SOURCE ${infile} COMMAND ${CMAKE_COMMAND} ARGS -E copy ${infile} ${outfile} - TARGET ${mod_name} + TARGET ${target_name} OUTPUTS ${outfile} ) endforeach(it) ADD_CUSTOM_COMMAND( - SOURCE ${mod_name} - TARGET ${mod_name} + SOURCE ${target_name} + TARGET ${target_name} DEPENDS ${ARGN} ) -ENDMACRO(fc_copy_script) +ENDMACRO(fc_target_copy_resource) macro(copy_to_local_output_paths SOURCE_PATHS) if(CMAKE_CFG_INTDIR STREQUAL .) diff --git a/data/examples/CMakeLists.txt b/data/examples/CMakeLists.txt index 8fb5b72d5..9308e5728 100644 --- a/data/examples/CMakeLists.txt +++ b/data/examples/CMakeLists.txt @@ -11,7 +11,7 @@ ADD_CUSTOM_TARGET(Example_data ALL SOURCES ${Examples_Files} ) -fc_copy_sources("data/examples" "Examples" ${Examples_Files}) +fc_copy_sources(Examples "${CMAKE_BINARY_DIR}/data/examples" ${Examples_Files}) INSTALL( FILES diff --git a/src/3rdParty/Pivy-0.5/CMakeLists.txt b/src/3rdParty/Pivy-0.5/CMakeLists.txt index a58a09e72..ed5ef5f02 100644 --- a/src/3rdParty/Pivy-0.5/CMakeLists.txt +++ b/src/3rdParty/Pivy-0.5/CMakeLists.txt @@ -56,15 +56,16 @@ else(MSVC) set_target_properties(coin PROPERTIES OUTPUT_NAME "_coin") set_target_properties(coin PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/pivy) set_target_properties(coin PROPERTIES PREFIX "") - install(TARGETS coin DESTINATION bin/pivy) + set_target_properties(coin PROPERTIES INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/bin/pivy) endif(MSVC) -fc_copy_sources_outpath("bin/pivy" "coin" +fc_copy_sources(coin "${CMAKE_BINARY_DIR}/bin/pivy" __init__.py coin.py sogui.py ) +install(TARGETS coin DESTINATION bin/pivy) install(FILES __init__.py coin.py sogui.py DESTINATION bin/pivy) ########################### SoQtPy ########################### @@ -113,11 +114,13 @@ else(MSVC) set_target_properties(soqt PROPERTIES OUTPUT_NAME "_soqt") set_target_properties(soqt PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/pivy/gui) set_target_properties(soqt PROPERTIES PREFIX "") + set_target_properties(soqt PROPERTIES INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/bin/pivy/gui) endif(MSVC) -fc_copy_sources_outpath("bin/pivy" "soqt" +fc_copy_sources(soqt "${CMAKE_BINARY_DIR}/bin/pivy" gui/soqt.py gui/__init__.py ) +install(TARGETS soqt DESTINATION bin/pivy/gui) install(FILES __init__.py soqt.py DESTINATION bin/pivy/gui) diff --git a/src/3rdParty/Pivy/CMakeLists.txt b/src/3rdParty/Pivy/CMakeLists.txt index dcdabdd5f..9ee6ae537 100644 --- a/src/3rdParty/Pivy/CMakeLists.txt +++ b/src/3rdParty/Pivy/CMakeLists.txt @@ -56,14 +56,16 @@ else(MSVC) set_target_properties(coin PROPERTIES OUTPUT_NAME "_coin") set_target_properties(coin PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/pivy) set_target_properties(coin PROPERTIES PREFIX "") + set_target_properties(coin PROPERTIES INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/bin/pivy) endif(MSVC) -fc_copy_sources_outpath("bin/pivy" "coin" +fc_copy_sources(coin "${CMAKE_BINARY_DIR}/bin/pivy" __init__.py coin.py sogui.py ) +install(TARGETS coin DESTINATION bin/pivy) install(FILES __init__.py coin.py sogui.py DESTINATION bin/pivy) ########################### SoQtPy ########################### @@ -112,11 +114,13 @@ else(MSVC) set_target_properties(soqt PROPERTIES OUTPUT_NAME "_soqt") set_target_properties(soqt PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/pivy/gui) set_target_properties(soqt PROPERTIES PREFIX "") + set_target_properties(soqt PROPERTIES INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/bin/pivy/gui) endif(MSVC) -fc_copy_sources_outpath("bin/pivy" "soqt" +fc_copy_sources(soqt "${CMAKE_BINARY_DIR}/bin/pivy" gui/soqt.py gui/__init__.py ) +install(TARGETS soqt DESTINATION bin/pivy/gui) install(FILES __init__.py gui/soqt.py DESTINATION bin/pivy/gui) diff --git a/src/App/Application.cpp b/src/App/Application.cpp index bed1c143d..541203ab6 100644 --- a/src/App/Application.cpp +++ b/src/App/Application.cpp @@ -102,6 +102,7 @@ #include #include #include +#include using namespace App; using namespace std; @@ -481,8 +482,14 @@ std::string Application::getUserAppDataDir() std::string Application::getResourceDir() { -# ifdef RESOURCEDIR - return std::string(RESOURCEDIR) + "/"; +#ifdef RESOURCEDIR + std::string path(RESOURCEDIR); + path.append("/"); + QDir dir(QString::fromUtf8(RESOURCEDIR)); + if (dir.isAbsolute()) + return path; + else + return mConfig["AppHomePath"] + path; #else return mConfig["AppHomePath"]; #endif @@ -490,8 +497,14 @@ std::string Application::getResourceDir() std::string Application::getHelpDir() { -# ifdef DOCDIR - return std::string(DOCDIR) + "/"; +#ifdef DOCDIR + std::string path(DOCDIR); + path.append("/"); + QDir dir(QString::fromUtf8(DOCDIR)); + if (dir.isAbsolute()) + return path; + else + return mConfig["AppHomePath"] + path; #else return mConfig["DocPath"]; #endif diff --git a/src/App/CMakeLists.txt b/src/App/CMakeLists.txt index 9983266a8..5d1c2137c 100644 --- a/src/App/CMakeLists.txt +++ b/src/App/CMakeLists.txt @@ -4,13 +4,13 @@ if(WIN32) endif(WIN32) # This causes some problems with the resource files to be found, especially with the StartPage -#IF(RESOURCEDIR) -# add_definitions(-DRESOURCEDIR="${RESOURCEDIR}") -#ENDIF(RESOURCEDIR) +IF(RESOURCEDIR) + add_definitions(-DRESOURCEDIR="${RESOURCEDIR}") +ENDIF(RESOURCEDIR) -#IF(DOCDIR) -# add_definitions(-DDOCDIR="${DOCDIR}") -#ENDIF(DOCDIR) +IF(DOCDIR) + add_definitions(-DDOCDIR="${DOCDIR}") +ENDIF(DOCDIR) include_directories( ${CMAKE_BINARY_DIR}/src diff --git a/src/Mod/Arch/CMakeLists.txt b/src/Mod/Arch/CMakeLists.txt index 73f45b793..0e924ec08 100644 --- a/src/Mod/Arch/CMakeLists.txt +++ b/src/Mod/Arch/CMakeLists.txt @@ -28,7 +28,7 @@ ADD_CUSTOM_TARGET(Arch ALL SOURCES ${all_files} ) -fc_copy_sources("Mod/Arch" "Arch" ${all_files}) +fc_copy_sources(Arch "${CMAKE_BINARY_DIR}/Mod/Arch" ${all_files}) INSTALL( FILES ${Arch_SRCS} diff --git a/src/Mod/Assembly/App/CMakeLists.txt b/src/Mod/Assembly/App/CMakeLists.txt index 65d1a8ad4..d800cba35 100644 --- a/src/Mod/Assembly/App/CMakeLists.txt +++ b/src/Mod/Assembly/App/CMakeLists.txt @@ -23,7 +23,12 @@ SET(Assembly_SRCS add_library(Assembly SHARED ${Assembly_SRCS}) target_link_libraries(Assembly ${Assembly_LIBS}) -fc_copy_script("Mod/Assembly" "Assembly" Init.py) + + +fc_target_copy_resource(Assembly + ${CMAKE_SOURCE_DIR}/src/Mod/Assembly + ${CMAKE_BINARY_DIR}/Mod/Assembly + Init.py) if(MSVC) set_target_properties(Assembly PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Assembly/Gui/CMakeLists.txt b/src/Mod/Assembly/Gui/CMakeLists.txt index 9a734ffd3..9d5daf67d 100644 --- a/src/Mod/Assembly/Gui/CMakeLists.txt +++ b/src/Mod/Assembly/Gui/CMakeLists.txt @@ -33,7 +33,12 @@ SET(AssemblyGui_SRCS add_library(AssemblyGui SHARED ${AssemblyGui_SRCS}) target_link_libraries(AssemblyGui ${AssemblyGui_LIBS}) -fc_copy_script("Mod/Assembly" "AssemblyGui" InitGui.py) + + +fc_target_copy_resource(AssemblyGui + ${CMAKE_SOURCE_DIR}/src/Mod/Assembly + ${CMAKE_BINARY_DIR}/Mod/Assembly + InitGui.py) if(MSVC) set_target_properties(AssemblyGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Complete/App/CMakeLists.txt b/src/Mod/Complete/App/CMakeLists.txt index 09cc9db4a..5295f92bd 100644 --- a/src/Mod/Complete/App/CMakeLists.txt +++ b/src/Mod/Complete/App/CMakeLists.txt @@ -23,7 +23,12 @@ SET(Complete_SRCS add_library(Complete SHARED ${Complete_SRCS}) target_link_libraries(Complete ${Complete_LIBS}) -fc_copy_script("Mod/Complete" "Complete" Init.py) + + +fc_target_copy_resource(Complete + ${CMAKE_SOURCE_DIR}/src/Mod/Complete + ${CMAKE_BINARY_DIR}/Mod/Complete + Init.py) if(MSVC) set_target_properties(Complete PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Complete/Gui/CMakeLists.txt b/src/Mod/Complete/Gui/CMakeLists.txt index 5a386d7d5..f3bd769cd 100644 --- a/src/Mod/Complete/Gui/CMakeLists.txt +++ b/src/Mod/Complete/Gui/CMakeLists.txt @@ -29,7 +29,12 @@ SET(CompleteGui_SRCS add_library(CompleteGui SHARED ${CompleteGui_SRCS}) target_link_libraries(CompleteGui ${CompleteGui_LIBS}) -fc_copy_script("Mod/Complete" "CompleteGui" InitGui.py) + + +fc_target_copy_resource(CompleteGui + ${CMAKE_SOURCE_DIR}/src/Mod/Complete + ${CMAKE_BINARY_DIR}/Mod/Complete + InitGui.py) if(MSVC) set_target_properties(CompleteGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Draft/CMakeLists.txt b/src/Mod/Draft/CMakeLists.txt index fc50e12fc..99e27d0f9 100644 --- a/src/Mod/Draft/CMakeLists.txt +++ b/src/Mod/Draft/CMakeLists.txt @@ -34,7 +34,7 @@ ADD_CUSTOM_TARGET(Draft ALL SOURCES ${all_files} ) -fc_copy_sources("Mod/Draft" "Draft" ${all_files}) +fc_copy_sources(Draft "${CMAKE_BINARY_DIR}/Mod/Draft" ${all_files}) INSTALL( diff --git a/src/Mod/Drawing/App/CMakeLists.txt b/src/Mod/Drawing/App/CMakeLists.txt index 18503a274..3258959f8 100644 --- a/src/Mod/Drawing/App/CMakeLists.txt +++ b/src/Mod/Drawing/App/CMakeLists.txt @@ -69,9 +69,21 @@ ENDIF(MSVC) add_library(Drawing SHARED ${Drawing_SRCS} ${Features_SRCS} ${DrawingAlgos_SRCS}) target_link_libraries(Drawing ${Drawing_LIBS}) -fc_copy_script("Mod/Drawing" "Drawing" Init.py) -fc_copy_script("Mod/Drawing" "Drawing" DrawingAlgos.py) -fc_copy_script("Mod/Drawing" "Drawing" ${Drawing_Templates}) + +SET(Drawing_Scripts + Init.py + DrawingAlgos.py +) + +fc_target_copy_resource(Drawing + ${CMAKE_SOURCE_DIR}/src/Mod/Drawing + ${CMAKE_BINARY_DIR}/Mod/Drawing + ${Drawing_Scripts}) + +fc_target_copy_resource(Drawing + ${CMAKE_SOURCE_DIR}/src/Mod/Drawing + ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_DATADIR}/Mod/Drawing + ${Drawing_Templates}) if(MSVC) set_target_properties(Drawing PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Drawing/Gui/CMakeLists.txt b/src/Mod/Drawing/Gui/CMakeLists.txt index 1f5326fa4..0cb04658c 100644 --- a/src/Mod/Drawing/Gui/CMakeLists.txt +++ b/src/Mod/Drawing/Gui/CMakeLists.txt @@ -88,7 +88,12 @@ endif(MSVC) add_library(DrawingGui SHARED ${DrawingGui_SRCS} ${DrawingGuiView_SRCS} ${DrawingGuiViewProvider_SRCS}) target_link_libraries(DrawingGui ${DrawingGui_LIBS}) -fc_copy_script("Mod/Drawing" "DrawingGui" InitGui.py) + + +fc_target_copy_resource(DrawingGui + ${CMAKE_SOURCE_DIR}/src/Mod/Drawing + ${CMAKE_BINARY_DIR}/Mod/Drawing + InitGui.py) if(MSVC) set_target_properties(DrawingGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Fem/App/CMakeLists.txt b/src/Mod/Fem/App/CMakeLists.txt index 97b2df0e2..ac9544ec4 100644 --- a/src/Mod/Fem/App/CMakeLists.txt +++ b/src/Mod/Fem/App/CMakeLists.txt @@ -64,7 +64,12 @@ SOURCE_GROUP("Module" FILES ${Mod_SRCS}) add_library(Fem SHARED ${Fem_SRCS}) target_link_libraries(Fem ${Fem_LIBS}) -fc_copy_script("Mod/Fem" "Fem" Init.py convert2TetGen.py) + + +fc_target_copy_resource(Fem + ${CMAKE_SOURCE_DIR}/src/Mod/Fem + ${CMAKE_BINARY_DIR}/Mod/Fem + Init.py convert2TetGen.py) if(MSVC) set_target_properties(Fem PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Fem/Gui/CMakeLists.txt b/src/Mod/Fem/Gui/CMakeLists.txt index abdd2fd2a..8774505f4 100644 --- a/src/Mod/Fem/Gui/CMakeLists.txt +++ b/src/Mod/Fem/Gui/CMakeLists.txt @@ -51,7 +51,12 @@ SET(FemGui_SRCS add_library(FemGui SHARED ${FemGui_SRCS}) target_link_libraries(FemGui ${FemGui_LIBS}) -fc_copy_script("Mod/Fem" "FemGui" InitGui.py) + + +fc_target_copy_resource(FemGui + ${CMAKE_SOURCE_DIR}/src/Mod/Fem + ${CMAKE_BINARY_DIR}/Mod/Fem + InitGui.py) if(MSVC) set_target_properties(FemGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Idf/CMakeLists.txt b/src/Mod/Idf/CMakeLists.txt index 124b8f3e6..d27534127 100644 --- a/src/Mod/Idf/CMakeLists.txt +++ b/src/Mod/Idf/CMakeLists.txt @@ -49,7 +49,7 @@ ADD_CUSTOM_TARGET(Idf ALL SOURCES ${all_files} ) -fc_copy_sources("Mod/Idf" "Idf" ${all_files}) +fc_copy_sources(Idf "${CMAKE_BINARY_DIR}/Mod/Idf" ${all_files}) INSTALL( FILES diff --git a/src/Mod/Image/App/CMakeLists.txt b/src/Mod/Image/App/CMakeLists.txt index 708947e79..b46f5a326 100644 --- a/src/Mod/Image/App/CMakeLists.txt +++ b/src/Mod/Image/App/CMakeLists.txt @@ -29,7 +29,12 @@ set(Image_SRCS add_library(Image SHARED ${Image_SRCS}) target_link_libraries(Image ${Image_LIBS}) -fc_copy_script("Mod/Image" "Image" Init.py) + + +fc_target_copy_resource(Image + ${CMAKE_SOURCE_DIR}/src/Mod/Image + ${CMAKE_BINARY_DIR}/Mod/Image + Init.py) if(MSVC) set_target_properties(Image PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Image/Gui/CMakeLists.txt b/src/Mod/Image/Gui/CMakeLists.txt index c4af482fc..243b1b58d 100644 --- a/src/Mod/Image/Gui/CMakeLists.txt +++ b/src/Mod/Image/Gui/CMakeLists.txt @@ -54,7 +54,12 @@ SET(ImageGui_SRCS add_library(ImageGui SHARED ${ImageGui_SRCS}) target_link_libraries(ImageGui ${ImageGui_LIBS}) -fc_copy_script("Mod/Image" "ImageGui" InitGui.py) + + +fc_target_copy_resource(ImageGui + ${CMAKE_SOURCE_DIR}/src/Mod/Image + ${CMAKE_BINARY_DIR}/Mod/Image + InitGui.py) if(MSVC) set_target_properties(ImageGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Import/Gui/CMakeLists.txt b/src/Mod/Import/Gui/CMakeLists.txt index 5068a8b85..7cd962a92 100644 --- a/src/Mod/Import/Gui/CMakeLists.txt +++ b/src/Mod/Import/Gui/CMakeLists.txt @@ -40,8 +40,12 @@ SET(ImportGui_SRCS add_library(ImportGui SHARED ${ImportGui_SRCS}) target_link_libraries(ImportGui ${ImportGui_LIBS}) -fc_copy_script("Mod/Import" "ImportGui" Init.py) -fc_copy_script("Mod/Import" "ImportGui" InitGui.py) + + +fc_target_copy_resource(ImportGui + ${CMAKE_SOURCE_DIR}/src/Mod/Import + ${CMAKE_BINARY_DIR}/Mod/Import + Init.py InitGui.py) if(MSVC) set_target_properties(ImportGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Inspection/App/CMakeLists.txt b/src/Mod/Inspection/App/CMakeLists.txt index 6c68175b7..37116678b 100644 --- a/src/Mod/Inspection/App/CMakeLists.txt +++ b/src/Mod/Inspection/App/CMakeLists.txt @@ -35,7 +35,12 @@ SET(Inspection_SRCS add_library(Inspection SHARED ${Inspection_SRCS}) target_link_libraries(Inspection ${Inspection_LIBS}) -fc_copy_script("Mod/Inspection" "Inspection" Init.py) + + +fc_target_copy_resource(Inspection + ${CMAKE_SOURCE_DIR}/src/Mod/Inspection + ${CMAKE_BINARY_DIR}/Mod/Inspection + Init.py) if(MSVC) set_target_properties(Inspection PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Inspection/Gui/CMakeLists.txt b/src/Mod/Inspection/Gui/CMakeLists.txt index 103f80456..b059194e3 100644 --- a/src/Mod/Inspection/Gui/CMakeLists.txt +++ b/src/Mod/Inspection/Gui/CMakeLists.txt @@ -52,7 +52,12 @@ SET(InspectionGui_SRCS add_library(InspectionGui SHARED ${InspectionGui_SRCS}) target_link_libraries(InspectionGui ${InspectionGui_LIBS}) -fc_copy_script("Mod/Inspection" "InspectionGui" InitGui.py) + + +fc_target_copy_resource(InspectionGui + ${CMAKE_SOURCE_DIR}/src/Mod/Inspection + ${CMAKE_BINARY_DIR}/Mod/Inspection + InitGui.py) if(MSVC) set_target_properties(InspectionGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Machining_Distortion/CMakeLists.txt b/src/Mod/Machining_Distortion/CMakeLists.txt index fa2cad73c..6bf855e77 100644 --- a/src/Mod/Machining_Distortion/CMakeLists.txt +++ b/src/Mod/Machining_Distortion/CMakeLists.txt @@ -15,11 +15,11 @@ SET(MachDist_SRCS SOURCE_GROUP("" FILES ${MachDist_SRCS}) -ADD_CUSTOM_TARGET(MachDistortion ALL +ADD_CUSTOM_TARGET( ALL SOURCES ${MachDist_SRCS} ) -fc_copy_sources("Mod/Machining_Distortion" ${MachDist_SRCS}) +fc_copy_sources(MachDistortion "${CMAKE_BINARY_DIR}/Mod/Machining_Distortion" ${MachDist_SRCS}) INSTALL( diff --git a/src/Mod/Mesh/App/CMakeLists.txt b/src/Mod/Mesh/App/CMakeLists.txt index f267429e0..fc7e99653 100644 --- a/src/Mod/Mesh/App/CMakeLists.txt +++ b/src/Mod/Mesh/App/CMakeLists.txt @@ -331,8 +331,16 @@ endif(MSVC) add_library(Mesh SHARED ${Core_SRCS} ${WildMagic4_SRCS} ${Mesh_SRCS}) target_link_libraries(Mesh ${Mesh_LIBS}) -fc_copy_script ("Mod/Mesh" "Mesh" Init.py BuildRegularGeoms.py) -fc_copy_sources("Mod/Mesh" "Mesh" MeshTestsApp.py) + +fc_target_copy_resource(Mesh + ${CMAKE_SOURCE_DIR}/src/Mod/Mesh + ${CMAKE_BINARY_DIR}/Mod/Mesh + Init.py BuildRegularGeoms.py) + +fc_target_copy_resource(Mesh + ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_BINARY_DIR}/Mod/Mesh + MeshTestsApp.py) if(MSVC) set_target_properties(Mesh PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Mesh/Gui/CMakeLists.txt b/src/Mod/Mesh/Gui/CMakeLists.txt index 8d17921ab..9941cac13 100644 --- a/src/Mod/Mesh/Gui/CMakeLists.txt +++ b/src/Mod/Mesh/Gui/CMakeLists.txt @@ -109,7 +109,12 @@ SET(MeshGui_SRCS add_library(MeshGui SHARED ${MeshGui_SRCS}) target_link_libraries(MeshGui ${MeshGui_LIBS}) -fc_copy_script("Mod/Mesh" "MeshGui" InitGui.py) + + +fc_target_copy_resource(MeshGui + ${CMAKE_SOURCE_DIR}/src/Mod/Mesh + ${CMAKE_BINARY_DIR}/Mod/Mesh + InitGui.py) if(MSVC) set_target_properties(MeshGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/MeshPart/App/CMakeLists.txt b/src/Mod/MeshPart/App/CMakeLists.txt index a9e46eaf8..078523f1b 100644 --- a/src/Mod/MeshPart/App/CMakeLists.txt +++ b/src/Mod/MeshPart/App/CMakeLists.txt @@ -51,7 +51,12 @@ SET(MeshPart_SRCS add_library(MeshPart SHARED ${MeshPart_SRCS}) target_link_libraries(MeshPart ${MeshPart_LIBS}) -fc_copy_script("Mod/MeshPart" "MeshPart" Init.py) + + +fc_target_copy_resource(MeshPart + ${CMAKE_SOURCE_DIR}/src/Mod/MeshPart + ${CMAKE_BINARY_DIR}/Mod/MeshPart + Init.py) if(MSVC) set_target_properties(MeshPart PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/MeshPart/Gui/CMakeLists.txt b/src/Mod/MeshPart/Gui/CMakeLists.txt index 2a9b603a8..dfc68c4a6 100644 --- a/src/Mod/MeshPart/Gui/CMakeLists.txt +++ b/src/Mod/MeshPart/Gui/CMakeLists.txt @@ -54,7 +54,12 @@ SET(MeshPartGui_SRCS add_library(MeshPartGui SHARED ${MeshPartGui_SRCS}) target_link_libraries(MeshPartGui ${MeshPartGui_LIBS}) -fc_copy_script("Mod/MeshPart" "MeshPartGui" InitGui.py) + + +fc_target_copy_resource(MeshPartGui + ${CMAKE_SOURCE_DIR}/src/Mod/MeshPart + ${CMAKE_BINARY_DIR}/Mod/MeshPart + InitGui.py) if(MSVC) set_target_properties(MeshPartGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Part/App/CMakeLists.txt b/src/Mod/Part/App/CMakeLists.txt index 40c81da59..bd0cb791a 100644 --- a/src/Mod/Part/App/CMakeLists.txt +++ b/src/Mod/Part/App/CMakeLists.txt @@ -241,7 +241,12 @@ SET(Part_Scripts add_library(Part SHARED ${Part_SRCS}) target_link_libraries(Part ${Part_LIBS}) -fc_copy_script("Mod/Part" "Part" ${Part_Scripts}) + + +fc_target_copy_resource(Part + ${CMAKE_SOURCE_DIR}/src/Mod/Part + ${CMAKE_BINARY_DIR}/Mod/Part + ${Part_Scripts}) if(MSVC) set_target_properties(Part PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Part/Gui/CMakeLists.txt b/src/Mod/Part/Gui/CMakeLists.txt index 38a984c5e..d9ff99f95 100644 --- a/src/Mod/Part/Gui/CMakeLists.txt +++ b/src/Mod/Part/Gui/CMakeLists.txt @@ -165,7 +165,12 @@ SET(PartGui_Scripts add_library(PartGui SHARED ${PartGui_SRCS}) target_link_libraries(PartGui ${PartGui_LIBS}) -fc_copy_script("Mod/Part" "PartGui" ${PartGui_Scripts}) + + +fc_target_copy_resource(PartGui + ${CMAKE_SOURCE_DIR}/src/Mod/Part + ${CMAKE_BINARY_DIR}/Mod/Part + ${PartGui_Scripts}) if(MSVC) set_target_properties(PartGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/PartDesign/App/CMakeLists.txt b/src/Mod/PartDesign/App/CMakeLists.txt index fc2ba5956..49af69836 100644 --- a/src/Mod/PartDesign/App/CMakeLists.txt +++ b/src/Mod/PartDesign/App/CMakeLists.txt @@ -90,7 +90,12 @@ SET(PartDesign_Scripts add_library(PartDesign SHARED ${PartDesign_SRCS}) target_link_libraries(PartDesign ${PartDesign_LIBS}) -fc_copy_script("Mod/PartDesign" "PartDesign" ${PartDesign_Scripts}) + + +fc_target_copy_resource(PartDesign + ${CMAKE_SOURCE_DIR}/src/Mod/PartDesign + ${CMAKE_BINARY_DIR}/Mod/PartDesign + ${PartDesign_Scripts}) if(MSVC) set_target_properties(PartDesign PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/PartDesign/Gui/CMakeLists.txt b/src/Mod/PartDesign/Gui/CMakeLists.txt index 2d6ae25d6..8f6e26556 100644 --- a/src/Mod/PartDesign/Gui/CMakeLists.txt +++ b/src/Mod/PartDesign/Gui/CMakeLists.txt @@ -121,7 +121,12 @@ SET(PartDesignGui_SRCS add_library(PartDesignGui SHARED ${PartDesignGui_SRCS}) target_link_libraries(PartDesignGui ${PartDesignGui_LIBS}) -fc_copy_script("Mod/PartDesign" "PartDesignGui" ${PartDesignGui_Scripts}) + + +fc_target_copy_resource(PartDesignGui + ${CMAKE_SOURCE_DIR}/src/Mod/PartDesign + ${CMAKE_BINARY_DIR}/Mod/PartDesign + ${PartDesignGui_Scripts}) if(MSVC) set_target_properties(PartDesignGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Points/App/CMakeLists.txt b/src/Mod/Points/App/CMakeLists.txt index ef411469c..9cd657f98 100644 --- a/src/Mod/Points/App/CMakeLists.txt +++ b/src/Mod/Points/App/CMakeLists.txt @@ -44,7 +44,11 @@ add_library(Points SHARED ${Points_SRCS}) target_link_libraries(Points ${Points_LIBS}) -fc_copy_script("Mod/Points" "Points" Init.py) + +fc_target_copy_resource(Points + ${CMAKE_SOURCE_DIR}/src/Mod/Points + ${CMAKE_BINARY_DIR}/Mod/Points + Init.py) if(MSVC) set_target_properties(Points PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Points/Gui/CMakeLists.txt b/src/Mod/Points/Gui/CMakeLists.txt index 60a59bcda..fab12ff44 100644 --- a/src/Mod/Points/Gui/CMakeLists.txt +++ b/src/Mod/Points/Gui/CMakeLists.txt @@ -54,7 +54,12 @@ SET(PointsGui_SRCS add_library(PointsGui SHARED ${PointsGui_SRCS}) target_link_libraries(PointsGui ${PointsGui_LIBS}) -fc_copy_script("Mod/Points" "PointsGui" InitGui.py) + + +fc_target_copy_resource(PointsGui + ${CMAKE_SOURCE_DIR}/src/Mod/Points + ${CMAKE_BINARY_DIR}/Mod/Points + InitGui.py) if(MSVC) set_target_properties(PointsGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Raytracing/App/CMakeLists.txt b/src/Mod/Raytracing/App/CMakeLists.txt index 2ee33c178..359ecd9a2 100644 --- a/src/Mod/Raytracing/App/CMakeLists.txt +++ b/src/Mod/Raytracing/App/CMakeLists.txt @@ -51,15 +51,27 @@ SET(Raytracing_SRCS RaySegment.h ) +SET(Raytracing_Scripts + Init.py + RaytracingExample.py +) + SET(Raytracing_Templates Templates/ProjectStd.pov ) add_library(Raytracing SHARED ${Raytracing_SRCS}) target_link_libraries(Raytracing ${Raytracing_LIBS}) -fc_copy_script("Mod/Raytracing" "Raytracing" Init.py) -fc_copy_script("Mod/Raytracing" "Raytracing" RaytracingExample.py) -fc_copy_script("Mod/Raytracing" "Raytracing" ${Raytracing_Templates}) + +fc_target_copy_resource(Raytracing + ${CMAKE_SOURCE_DIR}/src/Mod/Raytracing + ${CMAKE_BINARY_DIR}/Mod/Raytracing + ${Raytracing_Scripts}) + +fc_target_copy_resource(Raytracing + ${CMAKE_SOURCE_DIR}/src/Mod/Raytracing + ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_DATADIR}/Mod/Raytracing + ${Raytracing_Templates}) if(MSVC) set_target_properties(Raytracing PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Raytracing/Gui/CMakeLists.txt b/src/Mod/Raytracing/Gui/CMakeLists.txt index 7b0b55457..fce924ce0 100644 --- a/src/Mod/Raytracing/Gui/CMakeLists.txt +++ b/src/Mod/Raytracing/Gui/CMakeLists.txt @@ -74,7 +74,12 @@ SET(RaytracingGui_SRCS add_library(RaytracingGui SHARED ${RaytracingGui_SRCS}) target_link_libraries(RaytracingGui ${RaytracingGui_LIBS}) -fc_copy_script("Mod/Raytracing" "RaytracingGui" InitGui.py) + + +fc_target_copy_resource(RaytracingGui + ${CMAKE_SOURCE_DIR}/src/Mod/Raytracing + ${CMAKE_BINARY_DIR}/Mod/Raytracing + InitGui.py) if(MSVC) set_target_properties(RaytracingGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/ReverseEngineering/App/CMakeLists.txt b/src/Mod/ReverseEngineering/App/CMakeLists.txt index f4256a878..e62bf7e64 100644 --- a/src/Mod/ReverseEngineering/App/CMakeLists.txt +++ b/src/Mod/ReverseEngineering/App/CMakeLists.txt @@ -32,7 +32,12 @@ SET(Reen_SRCS add_library(ReverseEngineering SHARED ${Reen_SRCS}) target_link_libraries(ReverseEngineering ${Reen_LIBS}) -fc_copy_script("Mod/ReverseEngineering" "ReverseEngineering" Init.py) + + +fc_target_copy_resource(ReverseEngineering + ${CMAKE_SOURCE_DIR}/src/Mod/ReverseEngineering + ${CMAKE_BINARY_DIR}/Mod/ReverseEngineering + Init.py) if(MSVC) set_target_properties(ReverseEngineering PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/ReverseEngineering/Gui/CMakeLists.txt b/src/Mod/ReverseEngineering/Gui/CMakeLists.txt index a60b0ba90..9a775bcbd 100644 --- a/src/Mod/ReverseEngineering/Gui/CMakeLists.txt +++ b/src/Mod/ReverseEngineering/Gui/CMakeLists.txt @@ -39,7 +39,12 @@ SET(ReenGui_SRCS add_library(ReverseEngineeringGui SHARED ${ReenGui_SRCS}) target_link_libraries(ReverseEngineeringGui ${ReenGui_LIBS}) -fc_copy_script("Mod/ReverseEngineering" "ReverseEngineeringGui" InitGui.py) + + +fc_target_copy_resource(ReverseEngineeringGui + ${CMAKE_SOURCE_DIR}/src/Mod/ReverseEngineering + ${CMAKE_BINARY_DIR}/Mod/ReverseEngineering + InitGui.py) if(MSVC) set_target_properties(ReverseEngineeringGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Robot/App/CMakeLists.txt b/src/Mod/Robot/App/CMakeLists.txt index 1438841e3..6af950f3c 100644 --- a/src/Mod/Robot/App/CMakeLists.txt +++ b/src/Mod/Robot/App/CMakeLists.txt @@ -101,6 +101,13 @@ SOURCE_GROUP("KDL" FILES ${KDL_SRCS} ${KDL_HPPS} ${UTIL_SRCS} ${UTIL_HPPS} ) SOURCE_GROUP("Python" FILES ${Python_SRCS}) SOURCE_GROUP("Module" FILES ${Mod_SRCS}) +SET(Robot_Scripts + Init.py + KukaExporter.py + RobotExample.py + RobotExampleTrajectoryOutOfShapes.py +) + SET(Robot_Resources Lib/Kuka/kr500_1.wrl Lib/Kuka/kr500_1.csv @@ -114,15 +121,21 @@ SET(Robot_Resources Lib/Kuka/kr125_3.wrl Lib/Kuka/kr_125.csv Lib/Kuka/kr125_2.pdf - KukaExporter.py - RobotExample.py - RobotExampleTrajectoryOutOfShapes.py ) add_library(Robot SHARED ${Robot_SRCS}) target_link_libraries(Robot ${Robot_LIBS}) -fc_copy_script("Mod/Robot" "Robot" Init.py) -fc_copy_script("Mod/Robot" "Robot" ${Robot_Resources}) + +fc_target_copy_resource(Robot + ${CMAKE_SOURCE_DIR}/src/Mod/Robot + ${CMAKE_BINARY_DIR}/Mod/Robot + ${Robot_Scripts}) + +fc_target_copy_resource(Robot + ${CMAKE_SOURCE_DIR}/src/Mod/Robot + ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_DATADIR}/Mod/Robot + ${Robot_Resources}) + if(MSVC) set_target_properties(Robot PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Robot/Gui/CMakeLists.txt b/src/Mod/Robot/Gui/CMakeLists.txt index afef07a61..fd0e29f10 100644 --- a/src/Mod/Robot/Gui/CMakeLists.txt +++ b/src/Mod/Robot/Gui/CMakeLists.txt @@ -146,8 +146,12 @@ SET(RobotGui_SRCS add_library(RobotGui SHARED ${RobotGui_SRCS}) target_link_libraries(RobotGui ${RobotGui_LIBS}) -fc_copy_script("Mod/Robot" "RobotGui" InitGui.py) -fc_copy_script("Mod/Robot" "RobotGui" MovieTool.py) + + +fc_target_copy_resource(RobotGui + ${CMAKE_SOURCE_DIR}/src/Mod/Robot + ${CMAKE_BINARY_DIR}/Mod/Robot + InitGui.py MovieTool.py) if(MSVC) set_target_properties(RobotGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Sandbox/App/CMakeLists.txt b/src/Mod/Sandbox/App/CMakeLists.txt index 88e3c558d..48ffe2569 100644 --- a/src/Mod/Sandbox/App/CMakeLists.txt +++ b/src/Mod/Sandbox/App/CMakeLists.txt @@ -31,7 +31,12 @@ SET(Sandbox_SRCS add_library(Sandbox SHARED ${Sandbox_SRCS}) target_link_libraries(Sandbox ${Sandbox_LIBS}) -fc_copy_script("Mod/Sandbox" "Sandbox" Init.py) + + +fc_target_copy_resource(Sandbox + ${CMAKE_SOURCE_DIR}/src/Mod/Sandbox + ${CMAKE_BINARY_DIR}/Mod/Sandbox + Init.py) if(MSVC) set_target_properties(Sandbox PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Sandbox/Gui/CMakeLists.txt b/src/Mod/Sandbox/Gui/CMakeLists.txt index 5549b23e9..eef1a96ad 100644 --- a/src/Mod/Sandbox/Gui/CMakeLists.txt +++ b/src/Mod/Sandbox/Gui/CMakeLists.txt @@ -42,7 +42,12 @@ SET(SandboxGui_SRCS add_library(SandboxGui SHARED ${SandboxGui_SRCS}) target_link_libraries(SandboxGui ${SandboxGui_LIBS}) -fc_copy_script("Mod/Sandbox" "SandboxGui" InitGui.py) + + +fc_target_copy_resource(SandboxGui + ${CMAKE_SOURCE_DIR}/src/Mod/Sandbox + ${CMAKE_BINARY_DIR}/Mod/Sandbox + InitGui.py) if(MSVC) set_target_properties(SandboxGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Ship/CMakeLists.txt b/src/Mod/Ship/CMakeLists.txt index 9f86e5e4a..9a7a0b2e3 100644 --- a/src/Mod/Ship/CMakeLists.txt +++ b/src/Mod/Ship/CMakeLists.txt @@ -77,7 +77,7 @@ ADD_CUSTOM_TARGET(Ship ALL SOURCES ${all_files} ) -fc_copy_sources("Mod/Ship" "Ship" ${all_files}) +fc_copy_sources(Ship "${CMAKE_BINARY_DIR}/Mod/Ship" ${all_files}) INSTALL( FILES diff --git a/src/Mod/Sketcher/App/CMakeLists.txt b/src/Mod/Sketcher/App/CMakeLists.txt index 9acc4d2cb..e1f39d46e 100644 --- a/src/Mod/Sketcher/App/CMakeLists.txt +++ b/src/Mod/Sketcher/App/CMakeLists.txt @@ -106,7 +106,12 @@ SET(Sketcher_Scripts add_library(Sketcher SHARED ${Sketcher_SRCS}) target_link_libraries(Sketcher ${Sketcher_LIBS}) -fc_copy_script("Mod/Sketcher" "Sketcher" ${Sketcher_Scripts}) + + +fc_target_copy_resource(Sketcher + ${CMAKE_SOURCE_DIR}/src/Mod/Sketcher + ${CMAKE_BINARY_DIR}/Mod/Sketcher + ${Sketcher_Scripts}) if(MSVC) set_target_properties(Sketcher PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Sketcher/Gui/CMakeLists.txt b/src/Mod/Sketcher/Gui/CMakeLists.txt index f5ad36ab6..d2b6ca04a 100644 --- a/src/Mod/Sketcher/Gui/CMakeLists.txt +++ b/src/Mod/Sketcher/Gui/CMakeLists.txt @@ -98,7 +98,12 @@ SET(SketcherGui_Scripts add_library(SketcherGui SHARED ${SketcherGui_SRCS}) target_link_libraries(SketcherGui ${SketcherGui_LIBS}) -fc_copy_script("Mod/Sketcher" "SketcherGui" ${SketcherGui_Scripts}) + + +fc_target_copy_resource(SketcherGui + ${CMAKE_SOURCE_DIR}/src/Mod/Sketcher + ${CMAKE_BINARY_DIR}/Mod/Sketcher + ${SketcherGui_Scripts}) if(MSVC) set_target_properties(SketcherGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Start/App/CMakeLists.txt b/src/Mod/Start/App/CMakeLists.txt index 0a56332a8..43a5b3c44 100644 --- a/src/Mod/Start/App/CMakeLists.txt +++ b/src/Mod/Start/App/CMakeLists.txt @@ -22,7 +22,12 @@ SET(Start_SRCS add_library(Start SHARED ${Start_SRCS}) target_link_libraries(Start ${Start_LIBS}) -fc_copy_script("Mod/Start" "Start" Init.py) + + +fc_target_copy_resource(Start + ${CMAKE_SOURCE_DIR}/src/Mod/Start + ${CMAKE_BINARY_DIR}/Mod/Start + Init.py) if(MSVC) set_target_properties(Start PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Start/Gui/CMakeLists.txt b/src/Mod/Start/Gui/CMakeLists.txt index 13329d4d0..54bdc5c5e 100644 --- a/src/Mod/Start/Gui/CMakeLists.txt +++ b/src/Mod/Start/Gui/CMakeLists.txt @@ -27,8 +27,13 @@ SET(StartGui_SRCS Workbench.h ) -SET(StartPage_Resources +SET(StartPage_Scripts + InitGui.py StartPage/StartPage.py + StartPage/__init__.py +) + +SET(StartPage_Resources StartPage/PartDesign.py StartPage/ArchDesign.py StartPage/DefaultWorkbench.py @@ -38,7 +43,6 @@ SET(StartPage_Resources StartPage/LoadDrawingExample.py StartPage/LoadRobotExample.py StartPage/Background.jpg - StartPage/__init__.py StartPage/FreeCAD.png StartPage/ArchDesign.png StartPage/PartDesign.png @@ -54,8 +58,16 @@ SET(StartPage_Resources add_library(StartGui SHARED ${StartGui_SRCS}) target_link_libraries(StartGui ${StartGui_LIBS}) -fc_copy_script("Mod/Start" "StartGui" InitGui.py) -fc_copy_script("Mod/Start" "StartGui" ${StartPage_Resources}) + +fc_target_copy_resource(StartGui + ${CMAKE_SOURCE_DIR}/src/Mod/Start + ${CMAKE_BINARY_DIR}/Mod/Start + ${StartPage_Scripts}) + +fc_target_copy_resource(StartGui + ${CMAKE_SOURCE_DIR}/src/Mod/Start + ${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_DATADIR}/Mod/Start + ${StartPage_Resources}) if(MSVC) set_target_properties(StartGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Start/StartPage/CMakeLists.txt b/src/Mod/Start/StartPage/CMakeLists.txt index b6ce8001b..19c59fcf3 100644 --- a/src/Mod/Start/StartPage/CMakeLists.txt +++ b/src/Mod/Start/StartPage/CMakeLists.txt @@ -26,7 +26,11 @@ SET(StartPage_DATA web.png ) -INSTALL(FILES ${StartPage_SRCS} ${StartPage_DATA} +INSTALL(FILES ${StartPage_SRCS} + DESTINATION Mod/Start/StartPage +) + +INSTALL(FILES ${StartPage_DATA} DESTINATION ${CMAKE_INSTALL_DATADIR}/Mod/Start/StartPage ) diff --git a/src/Mod/Surfaces/CMakeLists.txt b/src/Mod/Surfaces/CMakeLists.txt index edf782c51..0aee96c8b 100644 --- a/src/Mod/Surfaces/CMakeLists.txt +++ b/src/Mod/Surfaces/CMakeLists.txt @@ -69,7 +69,7 @@ ADD_CUSTOM_TARGET(Surfaces ALL SOURCES ${all_files} ) -fc_copy_sources("Mod/Surfaces" "Surfaces" ${all_files}) +fc_copy_sources(Surfaces "${CMAKE_BINARY_DIR}/Mod/Surfaces" ${all_files}) INSTALL( FILES diff --git a/src/Mod/Test/CMakeLists.txt b/src/Mod/Test/CMakeLists.txt index ec02a2805..8e0aae840 100644 --- a/src/Mod/Test/CMakeLists.txt +++ b/src/Mod/Test/CMakeLists.txt @@ -18,7 +18,7 @@ ADD_CUSTOM_TARGET(Test ALL SOURCES ${Test_SRCS} ) -fc_copy_sources("Mod/Test" "Test" ${Test_SRCS}) +fc_copy_sources(Test "${CMAKE_BINARY_DIR}/Mod/Test" ${Test_SRCS}) INSTALL( FILES diff --git a/src/Mod/Test/Gui/CMakeLists.txt b/src/Mod/Test/Gui/CMakeLists.txt index 30b98365f..9b8b67252 100644 --- a/src/Mod/Test/Gui/CMakeLists.txt +++ b/src/Mod/Test/Gui/CMakeLists.txt @@ -53,7 +53,7 @@ add_library(QtUnitGui SHARED ${TestGui_SRCS}) target_link_libraries(QtUnitGui ${TestGui_LIBS}) add_dependencies(QtUnitGui Test) -fc_copy_sources_outpath("Mod/Test" "QtUnitGui" qtunittest.py) +fc_copy_sources(QtUnitGui "${CMAKE_BINARY_DIR}/Mod/Test" qtunittest.py) if(MSVC) set_target_properties(QtUnitGui PROPERTIES SUFFIX ".pyd") diff --git a/src/Mod/Web/Gui/CMakeLists.txt b/src/Mod/Web/Gui/CMakeLists.txt index 70747a1d4..2aa8fcb16 100644 --- a/src/Mod/Web/Gui/CMakeLists.txt +++ b/src/Mod/Web/Gui/CMakeLists.txt @@ -36,8 +36,12 @@ SOURCE_GROUP("Moc" FILES ${SketcherGui_MOC_SRCS}) add_library(WebGui SHARED ${WebGui_SRCS}) target_link_libraries(WebGui ${WebGui_LIBS}) -fc_copy_script("Mod/Web" "WebGui" InitGui.py) -fc_copy_script("Mod/Web" "WebGui" Init.py) + + +fc_target_copy_resource(WebGui + ${CMAKE_SOURCE_DIR}/src/Mod/Web + ${CMAKE_BINARY_DIR}/Mod/Web + Init.py InitGui.py) if(MSVC) set_target_properties(WebGui PROPERTIES SUFFIX ".pyd")