mirror of
https://github.com/mirror/make.git
synced 2025-02-10 03:40:12 +08:00
* README.git: Describe GCC and GNU make requirements
* maintMakefile: Put custom C flags into a separate variable so they can be overridden more easily on the command line.
This commit is contained in:
parent
5ff6ae6177
commit
76b6e668a6
12
README.git
12
README.git
@ -85,6 +85,8 @@ need to install the following extra software:
|
|||||||
* autopoint
|
* autopoint
|
||||||
* pkg-config
|
* pkg-config
|
||||||
* texinfo (for makeinfo)
|
* texinfo (for makeinfo)
|
||||||
|
* GCC (Clang's GCC emulation is not sufficient)
|
||||||
|
* GNU make (POSIX make is not sufficient)
|
||||||
|
|
||||||
And any tools that those utilities require (GNU m4, Perl, etc.)
|
And any tools that those utilities require (GNU m4, Perl, etc.)
|
||||||
|
|
||||||
@ -93,10 +95,13 @@ a local installation of gnulib you can set GNULIB_SRCDIR to point to it.
|
|||||||
Otherwise, ./bootstrap will obtain a clone for you.
|
Otherwise, ./bootstrap will obtain a clone for you.
|
||||||
|
|
||||||
Unfortunately due to issues with gnulib's getloadavg, you must have automake
|
Unfortunately due to issues with gnulib's getloadavg, you must have automake
|
||||||
1.16.1 or above. This version is not yet widely available in GNU/Linux
|
1.16.1 or above. This version may not yet be available through GNU/Linux
|
||||||
package managers. If you need to install from source be sure to set
|
package managers. If you need to install from source be sure to set
|
||||||
ACLOCAL_PATH to point to the pkg-config location (e.g., /usr/share/aclocal).
|
ACLOCAL_PATH to point to the pkg-config location (e.g., /usr/share/aclocal).
|
||||||
|
|
||||||
|
If you want to build from Git with a non-GCC compiler, add "MAKE_CFLAGS=" to
|
||||||
|
your make command line (or at least remove any flags your compiler does not
|
||||||
|
support).
|
||||||
|
|
||||||
When building from Git you must build in the source directory: "VPATH
|
When building from Git you must build in the source directory: "VPATH
|
||||||
builds" from remote directories are not supported. Once you've created
|
builds" from remote directories are not supported. Once you've created
|
||||||
@ -118,6 +123,11 @@ That is, you can just run:
|
|||||||
|
|
||||||
to build and install GNU make.
|
to build and install GNU make.
|
||||||
|
|
||||||
|
NOTE! This method builds GNU make in "maintainer mode". In this mode it will
|
||||||
|
be slower, possibly MUCH slower: there are various sanity checks
|
||||||
|
enabled. If you want to build from Git with "maintainer mode" disabled,
|
||||||
|
add "MAKE_MAINTAINER_MODE=" to your make command line.
|
||||||
|
|
||||||
|
|
||||||
Building From Git for Windows
|
Building From Git for Windows
|
||||||
-----------------------------
|
-----------------------------
|
||||||
|
@ -29,11 +29,13 @@ MAKEWEBDIR ?= $(SRCROOTDIR)/make/make-web
|
|||||||
# We like mondo-warnings!
|
# We like mondo-warnings!
|
||||||
# Also force comments to be preserved. This helps when using ccache, in
|
# Also force comments to be preserved. This helps when using ccache, in
|
||||||
# combination with GCC 7's implicit-fallthrough warning.
|
# combination with GCC 7's implicit-fallthrough warning.
|
||||||
AM_CFLAGS += -C -Wall -Wextra -Werror -Wwrite-strings -Wshadow \
|
MAKE_CFLAGS := -C -Wall -Wextra -Werror -Wwrite-strings -Wshadow \
|
||||||
-Wdeclaration-after-statement -Wbad-function-cast -Wformat-security \
|
-Wdeclaration-after-statement -Wbad-function-cast -Wformat-security \
|
||||||
-Wtype-limits -Wunused-but-set-parameter -Wlogical-op -Wpointer-arith \
|
-Wtype-limits -Wunused-but-set-parameter -Wlogical-op -Wpointer-arith \
|
||||||
-Wignored-qualifiers -Wformat-signedness -Wduplicated-cond
|
-Wignored-qualifiers -Wformat-signedness -Wduplicated-cond
|
||||||
|
|
||||||
|
AM_CFLAGS += $(MAKE_CFLAGS)
|
||||||
|
|
||||||
# Unfortunately the Guile headers are sometimes broken. Convince GCC
|
# Unfortunately the Guile headers are sometimes broken. Convince GCC
|
||||||
# to treat them as system headers so warnings are ignored.
|
# to treat them as system headers so warnings are ignored.
|
||||||
GUILE_CFLAGS := $(patsubst -I%,-isystem %,$(GUILE_CFLAGS))
|
GUILE_CFLAGS := $(patsubst -I%,-isystem %,$(GUILE_CFLAGS))
|
||||||
|
Loading…
Reference in New Issue
Block a user