Message ID | ghlhhnf0j2.fsf@lena.gouders.net (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
* Dirk Gouders <dirk@gouders.net> wrote: > For example on Gentoo systems where _FORTIFY_SOURCE is set by default, > `make -C tools/perf' fails, because of the macro being redefined. > > Fix that by a feature-check analogous to tools/perf/config/Makefile. > > Signed-off-by: Dirk Gouders <dirk@gouders.net> > --- > tools/lib/api/Makefile | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/tools/lib/api/Makefile b/tools/lib/api/Makefile > index d8fe29f..acf9097 100644 > --- a/tools/lib/api/Makefile > +++ b/tools/lib/api/Makefile > @@ -16,7 +16,14 @@ MAKEFLAGS += --no-print-directory > LIBFILE = $(OUTPUT)libapi.a > > CFLAGS := $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) > -CFLAGS += -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -D_FORTIFY_SOURCE=2 -fPIC > +CFLAGS += -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -fPIC > + > +ifeq ($(DEBUG),0) > + ifeq ($(feature-fortify-source), 1) > + CFLAGS += -D_FORTIFY_SOURCE=2 > + endif > +endif So how about undefining it instead and re-defining it as _FORTIFY_SOURCE=2? Just in case a distro sets a weaker version - lets not accept that weaker setting. We've always had the stronger version of it. Thanks, Ingo -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Ingo Molnar <mingo@kernel.org> writes: > * Dirk Gouders <dirk@gouders.net> wrote: > >> For example on Gentoo systems where _FORTIFY_SOURCE is set by default, >> `make -C tools/perf' fails, because of the macro being redefined. >> >> Fix that by a feature-check analogous to tools/perf/config/Makefile. >> >> Signed-off-by: Dirk Gouders <dirk@gouders.net> >> --- >> tools/lib/api/Makefile | 9 ++++++++- >> 1 file changed, 8 insertions(+), 1 deletion(-) >> >> diff --git a/tools/lib/api/Makefile b/tools/lib/api/Makefile >> index d8fe29f..acf9097 100644 >> --- a/tools/lib/api/Makefile >> +++ b/tools/lib/api/Makefile >> @@ -16,7 +16,14 @@ MAKEFLAGS += --no-print-directory >> LIBFILE = $(OUTPUT)libapi.a >> >> CFLAGS := $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) >> -CFLAGS += -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -D_FORTIFY_SOURCE=2 -fPIC >> +CFLAGS += -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -fPIC >> + >> +ifeq ($(DEBUG),0) >> + ifeq ($(feature-fortify-source), 1) >> + CFLAGS += -D_FORTIFY_SOURCE=2 >> + endif >> +endif > > So how about undefining it instead and re-defining it as > _FORTIFY_SOURCE=2? > > Just in case a distro sets a weaker version - lets not accept that > weaker setting. We've always had the stronger version of it. Yes, I was suggesting something similar (but without founded reasoning), some time ago [1]. Would the "undefining-approch" mean that we should modify the handling of _FORTIFY_SOURCE in tools/perf/config/Makefile as well? Dirk [1] https://lkml.org/lkml/2013/5/22/186 -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi, Dirk Gouders <dirk@gouders.net> wrote: > Yes, I was suggesting something similar (but without founded reasoning), > some time ago [1]. I submitted a patch for this a few days ago, but I didn't realize I should CC linux-kbuild@ (my bad): https://lkml.org/lkml/2015/4/18/71 yours, Bobby -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Bobby Powers <bobbypowers@gmail.com> writes: > Hi, > > Dirk Gouders <dirk@gouders.net> wrote: >> Yes, I was suggesting something similar (but without founded reasoning), >> some time ago [1]. > > I submitted a patch for this a few days ago, but I didn't realize I > should CC linux-kbuild@ (my bad): > https://lkml.org/lkml/2015/4/18/71 Thanks for the hint, Bobby, I really should have checked recent archives. I could not apply your patch against Linus' current tree, but tested it with your change typed in, manually with positive result (as expected). Dirk -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/tools/lib/api/Makefile b/tools/lib/api/Makefile index d8fe29f..acf9097 100644 --- a/tools/lib/api/Makefile +++ b/tools/lib/api/Makefile @@ -16,7 +16,14 @@ MAKEFLAGS += --no-print-directory LIBFILE = $(OUTPUT)libapi.a CFLAGS := $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) -CFLAGS += -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -D_FORTIFY_SOURCE=2 -fPIC +CFLAGS += -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -fPIC + +ifeq ($(DEBUG),0) + ifeq ($(feature-fortify-source), 1) + CFLAGS += -D_FORTIFY_SOURCE=2 + endif +endif + CFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 RM = rm -f
For example on Gentoo systems where _FORTIFY_SOURCE is set by default, `make -C tools/perf' fails, because of the macro being redefined. Fix that by a feature-check analogous to tools/perf/config/Makefile. Signed-off-by: Dirk Gouders <dirk@gouders.net> --- tools/lib/api/Makefile | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)