Add BSDmakefile to prevent errors when make
is called under FreeBSD
#4446
Conversation
The syntax of the gitea Makefile is not platform-agnostic and is specific to the GNU version of `make`. BSD platforms such as FreeBSD ship with bmake (BSD make) as their default `make` program; attempting to compile gitea by simply executing `make` causes a wall of errors to show as a result of syntax incompatible with BSD make. If a file named `BSDmakefile` is present, `bmake` will give it preference over a generic `Makefile`. This `BSDmakefile` is taken from the BSD-licensed `gmake-proxy` project [0], which transparently proxies all `make` commands to `gmake` (GNU make) on systems where `bmake` is the default, and if `gmake` is not installed an error message is displayed. [0]: https://github.com/neosmart/gmake-proxy
Codecov Report
@@ Coverage Diff @@
## master #4446 +/- ##
==========================================
+ Coverage 20.03% 20.04% +<.01%
==========================================
Files 153 153
Lines 30796 30796
==========================================
+ Hits 6171 6174 +3
+ Misses 23681 23679 -2
+ Partials 944 943 -1
Continue to review full report at Codecov.
|
LGTM |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
The syntax of the gitea Makefile is not platform-agnostic and is
specific to the GNU version of
make
. BSD platforms such as FreeBSDship with bmake (BSD make) as their default
make
program; attemptingto compile gitea by simply executing
make
causes a wall of errors toshow as a result of syntax incompatible with BSD make.
If a file named
BSDmakefile
is present,bmake
will give itpreference over a generic
Makefile
. ThisBSDmakefile
is taken fromthe BSD-licensed
gmake-proxy
project, which transparently proxiesall
make
commands togmake
(GNU make) on systems wherebmake
isthe default, and if
gmake
is not installed an error message isdisplayed.