diff options
author | Kelvin M. Klann <kmk3.code@protonmail.com> | 2022-11-30 00:27:48 -0300 |
---|---|---|
committer | Kelvin M. Klann <kmk3.code@protonmail.com> | 2022-12-08 06:41:08 -0300 |
commit | 87948b3ffe9e8e704c55509cd6c747547b3c7072 (patch) | |
tree | f43a175d6bced67b6daf75aaf511527437cb6cbc /src/fnettrace-icmp/main.c | |
parent | build: move library flags from EXTRA_LDFLAGS to LIBS (diff) | |
download | firejail-87948b3ffe9e8e704c55509cd6c747547b3c7072.tar.gz firejail-87948b3ffe9e8e704c55509cd6c747547b3c7072.tar.zst firejail-87948b3ffe9e8e704c55509cd6c747547b3c7072.zip |
makefiles: stop overriding CFLAGS/LDFLAGS
From the manual of GNU Automake (version 1.16.5)[1] [2]:
> 3.6 Variables reserved for the user
>
> Some `Makefile` variables are reserved by the GNU Coding Standards for
> the use of the "user"—the person building the package. For instance,
> `CFLAGS` is one such variable.
>
> Sometimes package developers are tempted to set user variables such
> as `CFLAGS` because it appears to make their job easier. However, the
> package itself should never set a user variable, particularly not to
> include switches that are required for proper compilation of the
> package. Since these variables are documented as being for the
> package builder, that person rightfully expects to be able to override
> any of these variables at build time.
>
> To get around this problem, Automake introduces an
> automake-specific shadow variable for each user flag variable.
> (Shadow variables are not introduced for variables like `CC`, where
> they would make no sense.) The shadow variable is named by prepending
> `AM_` to the user variable's name. For instance, the shadow variable
> for `YFLAGS` is `AM_YFLAGS`. The package maintainer—that is, the
> author(s) of the `Makefile.am` and `configure.ac` files—may adjust
> these shadow variables however necessary.
>
> Note Flag Variables Ordering::, for more discussion about these
> variables and how they interact with per-target variables.
See also the description of CFLAGS in the GNU Autoconf manual[3].
Note: We do not use automake (save for aclocal) nor generally follow the
GNU Coding Standards, but the concept still applies. Also, the closest
analogous in the project to the `AM_` prefix would currently likely be
`EXTRA_`.
[1] https://www.gnu.org/software/automake/manual/1.16.5/html_node/User-Variables.html
[2] https://www.gnu.org/software/automake/manual/1.16.5/html_node/Flag-Variables-Ordering.html
[3] https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Preset-Output-Variables.html
Diffstat (limited to 'src/fnettrace-icmp/main.c')
0 files changed, 0 insertions, 0 deletions