mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-11 08:47:52 -06:00
Fix of previous commit, added symlinks to gcodeviewer on Linux & OSX
This commit is contained in:
parent
a251d42408
commit
9473ae8fe2
2 changed files with 28 additions and 12 deletions
|
@ -209,20 +209,31 @@ if (WIN32)
|
||||||
add_custom_target(PrusaSlicerDllsCopy ALL DEPENDS PrusaSlicer)
|
add_custom_target(PrusaSlicerDllsCopy ALL DEPENDS PrusaSlicer)
|
||||||
prusaslicer_copy_dlls(PrusaSlicerDllsCopy)
|
prusaslicer_copy_dlls(PrusaSlicerDllsCopy)
|
||||||
|
|
||||||
elseif (XCODE)
|
|
||||||
# Because of Debug/Release/etc. configurations (similar to MSVC) the slic3r binary is located in an extra level
|
|
||||||
add_custom_command(TARGET PrusaSlicer POST_BUILD
|
|
||||||
COMMAND ln -sfn "${SLIC3R_RESOURCES_DIR}" "${CMAKE_CURRENT_BINARY_DIR}/resources"
|
|
||||||
COMMENT "Symlinking the resources directory into the build tree"
|
|
||||||
VERBATIM
|
|
||||||
)
|
|
||||||
else ()
|
else ()
|
||||||
|
if (XCODE)
|
||||||
|
add_custom_command(TARGET PrusaSlicer POST_BUILD
|
||||||
|
COMMAND ln -sf "${CMAKE_CURRENT_BINARY_DIR}/PrusaSlicer" "${CMAKE_CURRENT_BINARY_DIR}/prusa-slicer"
|
||||||
|
COMMAND ln -sf "${CMAKE_CURRENT_BINARY_DIR}/PrusaSlicer" "${CMAKE_CURRENT_BINARY_DIR}/prusa-gcodeviewer"
|
||||||
|
COMMAND ln -sf "${CMAKE_CURRENT_BINARY_DIR}/PrusaSlicer" "${CMAKE_CURRENT_BINARY_DIR}/PrusaGCodeViewer"
|
||||||
|
COMMENT "Symlinking the G-code viewer to PrusaSlicer, symlinking to prusa-slicer and prusa-gcodeviewer"
|
||||||
|
VERBATIM
|
||||||
|
)
|
||||||
|
# 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 ()
|
||||||
|
add_custom_command(TARGET PrusaSlicer POST_BUILD
|
||||||
|
COMMAND ln -sf "${CMAKE_CURRENT_BINARY_DIR}/prusa-slicer" "${CMAKE_CURRENT_BINARY_DIR}/prusa-gcodeviewer"
|
||||||
|
COMMENT "Symlinking the G-code viewer to PrusaSlicer"
|
||||||
|
VERBATIM
|
||||||
|
)
|
||||||
|
set(BIN_RESOURCES_DIR "${CMAKE_CURRENT_BINARY_DIR}/../resources")
|
||||||
|
endif ()
|
||||||
add_custom_command(TARGET PrusaSlicer POST_BUILD
|
add_custom_command(TARGET PrusaSlicer POST_BUILD
|
||||||
COMMAND ln -sfn "${SLIC3R_RESOURCES_DIR}" "${CMAKE_CURRENT_BINARY_DIR}/../resources"
|
COMMAND ln -sfn "${SLIC3R_RESOURCES_DIR}" "${BIN_RESOURCES_DIR}"
|
||||||
COMMENT "Symlinking the resources directory into the build tree"
|
COMMENT "Symlinking the resources directory into the build tree"
|
||||||
VERBATIM
|
VERBATIM
|
||||||
)
|
)
|
||||||
endif()
|
endif ()
|
||||||
|
|
||||||
# Slic3r binary install target
|
# Slic3r binary install target
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
|
|
|
@ -53,7 +53,7 @@ static void start_new_slicer_or_gcodeviewer(const NewSlicerInstanceType instance
|
||||||
{
|
{
|
||||||
std::vector<const char*> args;
|
std::vector<const char*> args;
|
||||||
args.reserve(3);
|
args.reserve(3);
|
||||||
#ifdef(__linux)
|
#ifdef __linux
|
||||||
static const char *gcodeviewer_param = "--gcodeviewer";
|
static const char *gcodeviewer_param = "--gcodeviewer";
|
||||||
{
|
{
|
||||||
// If executed by an AppImage, start the AppImage, not the main process.
|
// If executed by an AppImage, start the AppImage, not the main process.
|
||||||
|
@ -63,17 +63,22 @@ static void start_new_slicer_or_gcodeviewer(const NewSlicerInstanceType instance
|
||||||
args.emplace_back(appimage_binary);
|
args.emplace_back(appimage_binary);
|
||||||
if (instance_type == NewSlicerInstanceType::GCodeViewer)
|
if (instance_type == NewSlicerInstanceType::GCodeViewer)
|
||||||
args.emplace_back(gcodeviewer_param);
|
args.emplace_back(gcodeviewer_param);
|
||||||
if ()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif // __linux
|
#endif // __linux
|
||||||
|
std::string bin_path;
|
||||||
|
if (args.empty()) {
|
||||||
|
// Binary path was not set to the AppImage in the Linux specific block above, call the application directly.
|
||||||
|
bin_path = (own_path.parent_path() / ((instance_type == NewSlicerInstanceType::Slicer) ? "prusa-slicer" : "prusa-gcodeviewer")).string();
|
||||||
|
args.emplace_back(bin_path.c_str());
|
||||||
|
}
|
||||||
std::string to_open;
|
std::string to_open;
|
||||||
if (path_to_open) {
|
if (path_to_open) {
|
||||||
to_open = into_u8(*path_to_open);
|
to_open = into_u8(*path_to_open);
|
||||||
args.emplace_back(to_open.c_str());
|
args.emplace_back(to_open.c_str());
|
||||||
}
|
}
|
||||||
args.emplace_back(nullptr);
|
args.emplace_back(nullptr);
|
||||||
wxExecute(const_cast<char**>(&args.data()), wxEXEC_ASYNC | wxEXEC_HIDE_CONSOLE | wxEXEC_MAKE_GROUP_LEADER);
|
wxExecute(const_cast<char**>(args.data()), wxEXEC_ASYNC | wxEXEC_HIDE_CONSOLE | wxEXEC_MAKE_GROUP_LEADER);
|
||||||
}
|
}
|
||||||
#endif // Linux or Unix
|
#endif // Linux or Unix
|
||||||
#endif // Win32
|
#endif // Win32
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue