Benjamin Greiner
4758396167
- Require wxWidgets >= 3.1.6 * Add PrusaSlicer-drop-wx3.0.patch * gh#prusa3d/PrusaSlicer#11026, gh#prusa3d/PrusaSlicer#11027 OBS-URL: https://build.opensuse.org/request/show/1099890 OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=61
86 lines
5.0 KiB
Diff
86 lines
5.0 KiB
Diff
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|
index 49fe3437f..aa297b03b 100644
|
|
--- a/CMakeLists.txt
|
|
+++ b/CMakeLists.txt
|
|
@@ -26,7 +26,6 @@ endif()
|
|
option(SLIC3R_STATIC "Compile PrusaSlicer with static libraries (Boost, TBB, glew)" ${SLIC3R_STATIC_INITIAL})
|
|
option(SLIC3R_GUI "Compile PrusaSlicer with GUI components (OpenGL, wxWidgets)" 1)
|
|
option(SLIC3R_FHS "Assume PrusaSlicer is to be installed in a FHS directory structure" 0)
|
|
-option(SLIC3R_WX_STABLE "Build against wxWidgets stable (3.0) as oppsed to dev (3.1) on Linux" 0)
|
|
option(SLIC3R_PCH "Use precompiled headers" 1)
|
|
option(SLIC3R_MSVC_COMPILE_PARALLEL "Compile on Visual Studio in parallel" 1)
|
|
option(SLIC3R_MSVC_PDB "Generate PDB files on MSVC in Release mode" 1)
|
|
diff --git a/doc/Dependencies.md b/doc/Dependencies.md
|
|
index d8ced6318..5645e7169 100644
|
|
--- a/doc/Dependencies.md
|
|
+++ b/doc/Dependencies.md
|
|
@@ -1,7 +1,7 @@
|
|
# Dependency report for PrusaSlicer
|
|
## Possible dynamic linking on Linux
|
|
* zlib: Strict dependency required from the system, linked dynamically. Many other libs depend on zlib.
|
|
-* wxWidgets: searches for wx-3.1 by default, but with cmake option `SLIC3R_WX_STABLE=ON` it will use wx-3.0 bundled with most distros.
|
|
+* wxWidgets >= 3.1.6
|
|
* libcurl
|
|
* tbb
|
|
* boost
|
|
diff --git a/doc/How to build - Linux et al.md b/doc/How to build - Linux et al.md
|
|
index 81e6310c4..de6e365fb 100644
|
|
--- a/doc/How to build - Linux et al.md
|
|
+++ b/doc/How to build - Linux et al.md
|
|
@@ -87,7 +87,6 @@ And that's it. It is now possible to run the freshly built PrusaSlicer binary:
|
|
- `-DSLIC3R_ASAN=ON` enables gcc/clang address sanitizer (defaults to `OFF`, requires gcc>4.8 or clang>3.1)
|
|
- `-DSLIC3R_GTK=3` to use GTK3 (defaults to `2`). Note that wxWidgets must be built against the same GTK version.
|
|
- `-DSLIC3R_STATIC=ON` for static build (defaults to `OFF`)
|
|
-- `-DSLIC3R_WX_STABLE=ON` to look for wxWidgets 3.0 (defaults to `OFF`)
|
|
- `-DCMAKE_BUILD_TYPE=Debug` to build in debug mode (defaults to `Release`)
|
|
- `-DSLIC3R_GUI=no` to build the console variant of PrusaSlicer
|
|
|
|
@@ -101,14 +100,6 @@ As already mentioned above, dynamic linking of dependencies is possible, but Pru
|
|
|
|
The list of dependencies can be easily obtained by inspecting the CMake scripts in the `deps/` directory. Some of the dependencies don't have to be as recent as the versions listed - generally versions available on conservative Linux distros such as Debian stable, Ubuntu LTS releases or Fedora are likely sufficient. If you decide to build this way, it is your responsibility to make sure that CMake finds all required dependencies. It is possible to look at your distribution PrusaSlicer package to see how the package maintainers solved the dependency issues.
|
|
|
|
-#### wxWidgets
|
|
-By default, PrusaSlicer looks for wxWidgets 3.1. Our build script in fact downloads specific patched version of wxWidgets. If you want to link against wxWidgets 3.0 (which are still provided by most distributions because wxWidgets 3.1 have not yet been declared stable), you must set `-DSLIC3R_WX_STABLE=ON` when running CMake. Note that while PrusaSlicer can be linked against wWidgets 3.0, the combination is not well tested and there might be bugs in the resulting application.
|
|
-
|
|
-When building on ubuntu 20.04 focal fossa, the package libwxgtk3.0-gtk3-dev needs to be installed instead of libwxgtk3.0-dev and you should use:
|
|
-```
|
|
--DSLIC3R_WX_STABLE=1 -DSLIC3R_GTK=3
|
|
-```
|
|
-
|
|
## Miscellaneous
|
|
|
|
### Installation
|
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
|
index 50eccfc84..1a335f2cd 100644
|
|
--- a/src/CMakeLists.txt
|
|
+++ b/src/CMakeLists.txt
|
|
@@ -49,23 +49,17 @@ if (SLIC3R_GUI)
|
|
|
|
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
|
set (wxWidgets_CONFIG_OPTIONS "--toolkit=gtk${SLIC3R_GTK}")
|
|
- if (SLIC3R_WX_STABLE)
|
|
- find_package(wxWidgets 3.0 REQUIRED COMPONENTS base core adv html gl)
|
|
- else ()
|
|
- find_package(wxWidgets 3.1 QUIET COMPONENTS base core adv html gl)
|
|
-
|
|
- if (NOT wxWidgets_FOUND)
|
|
- message(FATAL_ERROR "\nCould not find wxWidgets 3.1.\n"
|
|
- "Hint: On Linux you can set -DSLIC3R_WX_STABLE=1 to use wxWidgets 3.0\n")
|
|
- endif ()
|
|
+ find_package(wxWidgets 3.1.6 QUIET COMPONENTS base core adv html gl)
|
|
+ if (NOT wxWidgets_FOUND)
|
|
+ message(FATAL_ERROR "Could not find wxWidgets >= 3.1.6")
|
|
endif ()
|
|
|
|
include(${wxWidgets_USE_FILE})
|
|
else ()
|
|
- find_package(wxWidgets 3.1 COMPONENTS html adv gl core base)
|
|
+ find_package(wxWidgets 3.1.6 COMPONENTS html adv gl core base)
|
|
if (NOT wxWidgets_FOUND)
|
|
message(STATUS "Trying to find wxWidgets in CONFIG mode...")
|
|
- find_package(wxWidgets 3.2 CONFIG REQUIRED COMPONENTS html adv gl core base)
|
|
+ find_package(wxWidgets 3.1.6 CONFIG REQUIRED COMPONENTS html adv gl core base)
|
|
slic3r_remap_configs(wx::wxhtml wx::wxadv wx::wxgl wx::wxcore wx::wxbase RelWithDebInfo Release)
|
|
else ()
|
|
include(${wxWidgets_USE_FILE})
|