-
-
Notifications
You must be signed in to change notification settings - Fork 854
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CMake and Build System Overhaul #5045
Open
Ocraftyone
wants to merge
105
commits into
SoftFever:main
Choose a base branch
from
Ocraftyone:enh-build-system-improvments
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
CMake and Build System Overhaul #5045
Ocraftyone
wants to merge
105
commits into
SoftFever:main
from
Ocraftyone:enh-build-system-improvments
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Similar flags to the existing MSVC flag
SLIC3R_GTK default is now 3 No GTK2 CMake presets
…uild-system-improvments
Add name for NLopt debug library If building in debug on linux, build Qhull in RelWithDebInfo (debug errors out and says it can't find qhullcpp)
Only builds dependencies if there is a change in committed or uncommited files within the deps folder (excluding build files)
Sometimes if you stop a build, it doesn't stop the underlying compile processes, so this command allows you to do it manually
Remove unneeded cmake arguments and refactor
Cmake will auto generate these when configuring/building
Even on multi config generators, it is still used for BUILD_DEPS and setting BBL_RELEASE_TO_PUBLIC
Major updates since last time:
|
@SoftFever I think its ready 😄 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add the ability to build deps from main CMake file
During the configuration of the main project CMake file, you can specify BUILD_DEPS to have the deps built. After they are built, the current state of the deps folder is saved and building is skipped until the folder is updated or the option FORCE_DEPS is specified. CLEAN_DEPS is also available to remove the deps folder and recompile.
CMake presets
CMake presets include all of the options needed for each OS and build type. This allows the user to select a preset to use and get up and running quicker without having to manually set each option. This is most useful for IDEs that support presets (VS, VSCode with CMake Tools extension, CLion).
Other Changes
Update the main CMake build file to be more readable (Add compiler flags and LINUX flag plus general organization and pruning)
Automatic generation of CMAKE_PREFIX_PATH (and CMAKE_INSTALL_RPATH on macOS)
Change Linux DESTDIR and CMAKE_PREFIX_PATH to OrcaSlicer_dep to follow other platforms
Automatic BBL_RELEASE_TO_PUBLIC (On when build type is Release, Off on others)
Stop using BBL_INTERNAL_TESTING in BuildLinux.sh. Most of its functionality is disabled anyway.
Default to GTK3 on linux
Fix deps debug build on linux so they only need to be compiled once
Hide compiler commands during OpenSSL, MPFR and GMP builds
Re-enable patch test for wxWidgets
Suppress CMake depreciation warnings
Update devcontainer.json
Update linux build script
Update Windows build script
Update macOS build scrip