-
Notifications
You must be signed in to change notification settings - Fork 79
Feature/makefile rewrite #290
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
Open
vonericsen
wants to merge
29
commits into
develop
Choose a base branch
from
feature/makefile_rewrite
base: develop
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
Conversation
This file contains hidden or 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
…ild system Used copilot to assist in generating this new makefile system with the goal of making it match meson capabilities where it makes sense and reducing the duplication we have in our old makefiles. Also updating the CI job to test more platforms and build confidence that this backup system will work. Unfortunately not all platforms we have to support always have meson available so having this as a backup is helpful to continue support. Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…o new makefiles Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…it varies on BSD OS's Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…r makefile use Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Windows needs to limit the version of the API to target because it's missing things in "normal" mingw compilation and Solaris needs some other things set to build correctly Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…file build targets Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Adding missing sources for some BSDs. Adding definition to turn off certain Windows code for older mingw where UCRT64 is not used. Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…iles Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Testing these options before using them for compatibility Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…file Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…h anything to -dumpversion Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…ing and trying to get solaris going Adding a mingw cross-compile test under ubuntu since that target should be supported. Cleaned up the packaging step to work more like it does in meson.yml Trying more things to get the solaris VM happy Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…ve solaris build Fixed merge error that broke artifact upload. Trying to manually specify gcc for solaris build to resolve breaking build Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…laris debug output Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…build instructions Adding more info to building with meson and updating how to build with the new makefiles. Making sure meson is noted as the preferred build system as well, but GNU make is available as a backup. Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…n the file. Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
…rnatives Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
… Retesting openindiana Moved all package installs to prepare section instead of run. Signed-off-by: Tyler Erickson <tyler.erickson@seagate.com>
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.
This is a makefile rewrite for our backup makefile system.
Copilot helped with the rewrite and after the latest commit, it is fully functional on Linux, Windows, Solaris, OmniOS, FreeBSD, DragonflyBSD, OpenBSD, and NetBSD.
It should also work for ESXi, but I haven't completed testing that yet as I need to get a machine online.
Asking for a review of these new makefiles before we move forward with these changes and remove the old makefiles.
Only opened a pull request at openSeaChest level, but new makefiles are in the submodules as well.
Testing is all with JSON output set to disabled since that has some odd behavior within the CI and isn't compatible with ESXi right now either.
The goal was to make these new makefiles follow best practices and recommendations for GNU make and match as much of the meson build process as we reasonably could.