|
@@ -1,5 +1,5 @@
|
|
|
cmake_minimum_required(VERSION 3.13)
|
|
|
-project(SuperSlicer-native)
|
|
|
+project(Slic3r-native)
|
|
|
|
|
|
add_subdirectory(build-utils)
|
|
|
add_subdirectory(admesh)
|
|
@@ -89,56 +89,56 @@ if (SLIC3R_GUI)
|
|
|
endif()
|
|
|
|
|
|
|
|
|
-# Create a SuperSlicer executable
|
|
|
+# Create a Slic3r executable
|
|
|
# Process mainfests for various platforms.
|
|
|
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/SuperSlicer.rc.in ${CMAKE_CURRENT_BINARY_DIR}/SuperSlicer.rc @ONLY)
|
|
|
+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/Slic3r.rc.in ${CMAKE_CURRENT_BINARY_DIR}/Slic3r.rc @ONLY)
|
|
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/PrusaSlicer-gcodeviewer.rc.in ${CMAKE_CURRENT_BINARY_DIR}/PrusaSlicer-gcodeviewer.rc @ONLY)
|
|
|
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/PrusaSlicer.manifest.in ${CMAKE_CURRENT_BINARY_DIR}/SuperSlicer.manifest @ONLY)
|
|
|
+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/PrusaSlicer.manifest.in ${CMAKE_CURRENT_BINARY_DIR}/Slic3r.manifest @ONLY)
|
|
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/osx/Info.plist.in ${CMAKE_CURRENT_BINARY_DIR}/Info.plist @ONLY)
|
|
|
if (WIN32)
|
|
|
- add_library(SuperSlicer SHARED PrusaSlicer.cpp PrusaSlicer.hpp)
|
|
|
+ add_library(Slic3r SHARED PrusaSlicer.cpp PrusaSlicer.hpp)
|
|
|
else ()
|
|
|
- add_executable(SuperSlicer PrusaSlicer.cpp PrusaSlicer.hpp)
|
|
|
+ add_executable(Slic3r PrusaSlicer.cpp PrusaSlicer.hpp)
|
|
|
endif ()
|
|
|
|
|
|
if (MINGW)
|
|
|
- target_link_options(SuperSlicer PUBLIC "-Wl,-allow-multiple-definition")
|
|
|
- set_target_properties(SuperSlicer PROPERTIES PREFIX "")
|
|
|
+ target_link_options(Slic3r PUBLIC "-Wl,-allow-multiple-definition")
|
|
|
+ set_target_properties(Slic3r PROPERTIES PREFIX "")
|
|
|
endif (MINGW)
|
|
|
|
|
|
if (NOT WIN32 AND NOT APPLE)
|
|
|
# Binary name on unix like systems (Linux, Unix)
|
|
|
- set_target_properties(SuperSlicer PROPERTIES OUTPUT_NAME "superslicer")
|
|
|
+ set_target_properties(Slic3r PROPERTIES OUTPUT_NAME "Slic3r")
|
|
|
endif ()
|
|
|
|
|
|
-target_link_libraries(SuperSlicer libslic3r cereal)
|
|
|
+target_link_libraries(Slic3r libslic3r cereal)
|
|
|
if (APPLE)
|
|
|
# add_compile_options(-stdlib=libc++)
|
|
|
# add_definitions(-DBOOST_THREAD_DONT_USE_CHRONO -DBOOST_NO_CXX11_RVALUE_REFERENCES -DBOOST_THREAD_USES_MOVE)
|
|
|
# -liconv: boost links to libiconv by default
|
|
|
- target_link_libraries(SuperSlicer "-liconv -framework IOKit" "-framework CoreFoundation" -lc++)
|
|
|
+ target_link_libraries(Slic3r "-liconv -framework IOKit" "-framework CoreFoundation" -lc++)
|
|
|
elseif (MSVC)
|
|
|
- # Manifest is provided through SuperSlicer.rc, don't generate your own.
|
|
|
+ # Manifest is provided through Slic3r.rc, don't generate your own.
|
|
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MANIFEST:NO")
|
|
|
else ()
|
|
|
# Boost on Raspberry-Pi does not link to pthreads explicitely.
|
|
|
- target_link_libraries(SuperSlicer ${CMAKE_DL_LIBS} -lstdc++ Threads::Threads)
|
|
|
+ target_link_libraries(Slic3r ${CMAKE_DL_LIBS} -lstdc++ Threads::Threads)
|
|
|
endif ()
|
|
|
|
|
|
# Add the Slic3r GUI library, libcurl, OpenGL and GLU libraries.
|
|
|
if (SLIC3R_GUI)
|
|
|
# target_link_libraries(PrusaSlicer ws2_32 uxtheme setupapi libslic3r_gui ${wxWidgets_LIBRARIES})
|
|
|
-target_link_libraries(SuperSlicer libslic3r_gui)
|
|
|
+target_link_libraries(Slic3r libslic3r_gui)
|
|
|
if (MSVC)
|
|
|
# Generate debug symbols even in release mode.
|
|
|
- target_link_options(SuperSlicer PUBLIC "$<$<CONFIG:RELEASE>:/DEBUG>")
|
|
|
- target_link_libraries(SuperSlicer user32.lib Setupapi.lib)
|
|
|
+ target_link_options(Slic3r PUBLIC "$<$<CONFIG:RELEASE>:/DEBUG>")
|
|
|
+ target_link_libraries(Slic3r user32.lib Setupapi.lib)
|
|
|
elseif (MINGW)
|
|
|
- target_link_libraries(SuperSlicer ws2_32 uxtheme setupapi)
|
|
|
+ target_link_libraries(Slic3r ws2_32 uxtheme setupapi)
|
|
|
elseif (APPLE)
|
|
|
- target_link_libraries(SuperSlicer "-framework OpenGL")
|
|
|
+ target_link_libraries(Slic3r "-framework OpenGL")
|
|
|
else ()
|
|
|
- target_link_libraries(SuperSlicer -ldl)
|
|
|
+ target_link_libraries(Slic3r -ldl)
|
|
|
endif ()
|
|
|
endif ()
|
|
|
|
|
@@ -149,25 +149,25 @@ if (WIN32)
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -municode")
|
|
|
endif()
|
|
|
|
|
|
- add_executable(SuperSlicer_app_gui WIN32 PrusaSlicer_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/SuperSlicer.rc)
|
|
|
+ add_executable(Slic3r_app_gui WIN32 PrusaSlicer_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/Slic3r.rc)
|
|
|
# Generate debug symbols even in release mode.
|
|
|
if(MSVC)
|
|
|
- target_link_options(SuperSlicer_app_gui PUBLIC "$<$<CONFIG:RELEASE>:/DEBUG>")
|
|
|
+ target_link_options(Slic3r_app_gui PUBLIC "$<$<CONFIG:RELEASE>:/DEBUG>")
|
|
|
endif()
|
|
|
- target_compile_definitions(SuperSlicer_app_gui PRIVATE -DSLIC3R_WRAPPER_NOCONSOLE)
|
|
|
- add_dependencies(SuperSlicer_app_gui SuperSlicer)
|
|
|
- set_target_properties(SuperSlicer_app_gui PROPERTIES OUTPUT_NAME "superslicer")
|
|
|
- target_link_libraries(SuperSlicer_app_gui PRIVATE boost_headeronly)
|
|
|
+ target_compile_definitions(Slic3r_app_gui PRIVATE -DSLIC3R_WRAPPER_NOCONSOLE)
|
|
|
+ add_dependencies(Slic3r_app_gui Slic3r)
|
|
|
+ set_target_properties(Slic3r_app_gui PROPERTIES OUTPUT_NAME "superslicer")
|
|
|
+ target_link_libraries(Slic3r_app_gui PRIVATE boost_headeronly)
|
|
|
|
|
|
- add_executable(SuperSlicer_app_console PrusaSlicer_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/SuperSlicer.rc)
|
|
|
+ add_executable(Slic3r_app_console PrusaSlicer_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/Slic3r.rc)
|
|
|
# Generate debug symbols even in release mode.
|
|
|
if (MSVC)
|
|
|
- target_link_options(SuperSlicer_app_console PUBLIC "$<$<CONFIG:RELEASE>:/DEBUG>")
|
|
|
+ target_link_options(Slic3r_app_console PUBLIC "$<$<CONFIG:RELEASE>:/DEBUG>")
|
|
|
endif ()
|
|
|
- target_compile_definitions(SuperSlicer_app_console PRIVATE -DSLIC3R_WRAPPER_CONSOLE)
|
|
|
- add_dependencies(SuperSlicer_app_console SuperSlicer)
|
|
|
- set_target_properties(SuperSlicer_app_console PROPERTIES OUTPUT_NAME "superslicer_console")
|
|
|
- target_link_libraries(SuperSlicer_app_console PRIVATE boost_headeronly)
|
|
|
+ target_compile_definitions(Slic3r_app_console PRIVATE -DSLIC3R_WRAPPER_CONSOLE)
|
|
|
+ add_dependencies(Slic3r_app_console Slic3r)
|
|
|
+ set_target_properties(Slic3r_app_console PROPERTIES OUTPUT_NAME "superslicer_console")
|
|
|
+ target_link_libraries(Slic3r_app_console PRIVATE boost_headeronly)
|
|
|
|
|
|
add_executable(PrusaSlicer_app_gcodeviewer WIN32 PrusaSlicer_app_msvc.cpp ${CMAKE_CURRENT_BINARY_DIR}/PrusaSlicer-gcodeviewer.rc)
|
|
|
# Generate debug symbols even in release mode.
|
|
@@ -175,7 +175,7 @@ if (WIN32)
|
|
|
target_link_options(PrusaSlicer_app_gcodeviewer PUBLIC "$<$<CONFIG:RELEASE>:/DEBUG>")
|
|
|
endif ()
|
|
|
target_compile_definitions(PrusaSlicer_app_gcodeviewer PRIVATE -DSLIC3R_WRAPPER_NOCONSOLE -DSLIC3R_WRAPPER_GCODEVIEWER)
|
|
|
- add_dependencies(PrusaSlicer_app_gcodeviewer SuperSlicer)
|
|
|
+ add_dependencies(PrusaSlicer_app_gcodeviewer Slic3r)
|
|
|
set_target_properties(PrusaSlicer_app_gcodeviewer PROPERTIES OUTPUT_NAME "prusa-gcodeviewer")
|
|
|
target_link_libraries(PrusaSlicer_app_gcodeviewer PRIVATE boost_headeronly)
|
|
|
endif ()
|
|
@@ -186,7 +186,7 @@ if (WIN32)
|
|
|
foreach (CONF ${CMAKE_CONFIGURATION_TYPES})
|
|
|
file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/${CONF}" WIN_CONF_OUTPUT_DIR)
|
|
|
file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/${CONF}/resources" WIN_RESOURCES_SYMLINK)
|
|
|
- add_custom_command(TARGET SuperSlicer POST_BUILD
|
|
|
+ add_custom_command(TARGET Slic3r POST_BUILD
|
|
|
COMMAND if exist "${WIN_CONF_OUTPUT_DIR}" "("
|
|
|
if not exist "${WIN_RESOURCES_SYMLINK}" "("
|
|
|
mklink /J "${WIN_RESOURCES_SYMLINK}" "${SLIC3R_RESOURCES_DIR_WIN}"
|
|
@@ -198,7 +198,7 @@ if (WIN32)
|
|
|
endforeach ()
|
|
|
else ()
|
|
|
file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/resources" WIN_RESOURCES_SYMLINK)
|
|
|
- add_custom_command(TARGET SuperSlicer POST_BUILD
|
|
|
+ add_custom_command(TARGET Slic3r POST_BUILD
|
|
|
COMMAND if not exist "${WIN_RESOURCES_SYMLINK}" "(" mklink /J "${WIN_RESOURCES_SYMLINK}" "${SLIC3R_RESOURCES_DIR_WIN}" ")"
|
|
|
COMMENT "Symlinking the resources directory into the build tree"
|
|
|
VERBATIM
|
|
@@ -206,35 +206,35 @@ if (WIN32)
|
|
|
endif ()
|
|
|
|
|
|
# This has to be a separate target due to the windows command line lenght limits
|
|
|
- add_custom_target(slic3rDllsCopy ALL DEPENDS SuperSlicer)
|
|
|
+ add_custom_target(slic3rDllsCopy ALL DEPENDS Slic3r)
|
|
|
prusaslicer_copy_dlls(slic3rDllsCopy)
|
|
|
|
|
|
else ()
|
|
|
if (APPLE)
|
|
|
# On OSX, the name of the binary matches the name of the Application.
|
|
|
- add_custom_command(TARGET SuperSlicer POST_BUILD
|
|
|
+ add_custom_command(TARGET Slic3r POST_BUILD
|
|
|
COMMAND ls
|
|
|
- # COMMAND ln -sf SuperSlicer superslicer
|
|
|
- COMMAND ln -sf SuperSlicer prusa-gcodeviewer
|
|
|
- COMMAND ln -sf SuperSlicer PrusaGCodeViewer
|
|
|
- WORKING_DIRECTORY "$<TARGET_FILE_DIR:SuperSlicer>"
|
|
|
- COMMENT "Symlinking the G-code viewer to SuperSlicer, symlinking to superslicer and prusa-gcodeviewer"
|
|
|
+ # COMMAND ln -sf Slic3r superslicer
|
|
|
+ COMMAND ln -sf Slic3r prusa-gcodeviewer
|
|
|
+ COMMAND ln -sf Slic3r PrusaGCodeViewer
|
|
|
+ WORKING_DIRECTORY "$<TARGET_FILE_DIR:Slic3r>"
|
|
|
+ COMMENT "Symlinking the G-code viewer to Slic3r, symlinking to superslicer and prusa-gcodeviewer"
|
|
|
VERBATIM)
|
|
|
else ()
|
|
|
- add_custom_command(TARGET SuperSlicer POST_BUILD
|
|
|
+ add_custom_command(TARGET Slic3r POST_BUILD
|
|
|
COMMAND ln -sf superslicer prusa-gcodeviewer
|
|
|
- WORKING_DIRECTORY "$<TARGET_FILE_DIR:SuperSlicer>"
|
|
|
- COMMENT "Symlinking the G-code viewer to SuperSlicer"
|
|
|
+ WORKING_DIRECTORY "$<TARGET_FILE_DIR:Slic3r>"
|
|
|
+ COMMENT "Symlinking the G-code viewer to Slic3r"
|
|
|
VERBATIM)
|
|
|
endif ()
|
|
|
if (XCODE)
|
|
|
- # Because of Debug/Release/etc. configurations (similar to MSVC) the SuperSlicer binary is located in an extra level
|
|
|
+ # Because of Debug/Release/etc. configurations (similar to MSVC) the Slic3r binary is located in an extra level
|
|
|
set(BIN_RESOURCES_DIR "${CMAKE_CURRENT_BINARY_DIR}/resources")
|
|
|
else ()
|
|
|
set(BIN_RESOURCES_DIR "${CMAKE_CURRENT_BINARY_DIR}/../resources")
|
|
|
endif ()
|
|
|
- add_custom_command(TARGET SuperSlicer POST_BUILD
|
|
|
- # COMMAND ln -sfn "${SLIC3R_RESOURCES_DIR}" "${BIN_RESOURCES_DIR}" # make[3]: stat: src/SuperSlicer: Too many levels of symbolic links
|
|
|
+ add_custom_command(TARGET Slic3r POST_BUILD
|
|
|
+ # COMMAND ln -sfn "${SLIC3R_RESOURCES_DIR}" "${BIN_RESOURCES_DIR}" # make[3]: stat: src/Slic3r: Too many levels of symbolic links
|
|
|
COMMAND cp -r "${SLIC3R_RESOURCES_DIR}" "${BIN_RESOURCES_DIR}"
|
|
|
COMMENT "Symlinking the resources directory into the build tree"
|
|
|
VERBATIM)
|
|
@@ -242,13 +242,13 @@ endif ()
|
|
|
|
|
|
# Slic3r binary install target
|
|
|
if (WIN32)
|
|
|
- install(TARGETS SuperSlicer RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}")
|
|
|
+ install(TARGETS Slic3r RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}")
|
|
|
if (MSVC)
|
|
|
- install(TARGETS SuperSlicer_app_gui RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}")
|
|
|
- install(TARGETS SuperSlicer_app_console RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}")
|
|
|
+ install(TARGETS Slic3r_app_gui RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}")
|
|
|
+ install(TARGETS Slic3r_app_console RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}")
|
|
|
endif ()
|
|
|
else ()
|
|
|
- install(TARGETS SuperSlicer RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
|
|
|
+ install(TARGETS Slic3r RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
|
|
|
|
|
|
# Install the symlink for gcodeviewer
|
|
|
install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink superslicer supergcodeviewer WORKING_DIRECTORY \$ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR})")
|