mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-23 17:53:37 +08:00
nscd: fix compilation flags
Commit 61653dfb81
added support for
compilers predefining _FORTIFY_SOURCE by adding -U_FORTIFY_SOURCE to
CPPFLAGS for these compilers, but that change doesn't work quite well in
case of nscd: its Makefile sets _FORTIFY_SOURCE using CFLAGS instead of
CPPFLAGS and, thanks to compilation rules defined in Makerules, CPPFLAGS
are passed to compiler after CFLAGS, resulting to a build with
_FORTIFY_SOURCE turned off.
This change implements a more safe method of passing preprocessor and
compiler flags so that no nscd modules could be accidentally forgotten.
This commit is contained in:
parent
bb9510dc34
commit
fc997c6e55
@ -1,5 +1,9 @@
|
||||
2012-10-02 Dmitry V. Levin <ldv@altlinux.org>
|
||||
|
||||
* nscd/Makefile: Remove nscd-cflags and all its users.
|
||||
(CPPFLAGS-nonlib): Add preprocessor flags for nscd modules.
|
||||
(CFLAGS-nonlib): Add compiler flags for nscd modules.
|
||||
|
||||
[BZ #10631]
|
||||
* malloc.c (malloc_printerr): Clarify error message.
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 1998,2000,2002-2009,2011,2012 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1998-2012 Free Software Foundation, Inc.
|
||||
# This file is part of the GNU C Library.
|
||||
|
||||
# The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -79,48 +79,21 @@ CFLAGS-nscd_gethst_r.c = -fexceptions
|
||||
CFLAGS-nscd_getai.c = -fexceptions
|
||||
CFLAGS-nscd_initgroups.c = -fexceptions
|
||||
|
||||
nscd-cflags = -DIS_IN_nscd=1 -D_FORTIFY_SOURCE=2
|
||||
CPPFLAGS-nonlib += -DIS_IN_nscd=1 -D_FORTIFY_SOURCE=2
|
||||
|
||||
ifeq (yesyes,$(have-fpie)$(build-shared))
|
||||
nscd-cflags += $(pie-ccflag)
|
||||
CFLAGS-nonlib += $(pie-ccflag)
|
||||
endif
|
||||
ifeq (yes,$(have-ssp))
|
||||
nscd-cflags += -fstack-protector
|
||||
CFLAGS-nonlib += -fstack-protector
|
||||
endif
|
||||
|
||||
CFLAGS-nscd.c += $(nscd-cflags)
|
||||
CFLAGS-connections.c += $(nscd-cflags)
|
||||
CFLAGS-pwdcache.c += $(nscd-cflags)
|
||||
CFLAGS-getpwnam_r.c += $(nscd-cflags)
|
||||
CFLAGS-getpwuid_r.c += $(nscd-cflags)
|
||||
CFLAGS-grpcache.c += $(nscd-cflags)
|
||||
CFLAGS-getgrnam_r.c += $(nscd-cflags)
|
||||
CFLAGS-getgrgid_r.c += $(nscd-cflags)
|
||||
CFLAGS-hstcache.c += $(nscd-cflags)
|
||||
CFLAGS-gethstbyad_r.c += $(nscd-cflags)
|
||||
CFLAGS-gethstbynm3_r.c += $(nscd-cflags)
|
||||
CFLAGS-dbg_log.c += $(nscd-cflags)
|
||||
CFLAGS-nscd_conf.c += $(nscd-cflags)
|
||||
CFLAGS-nscd_stat.c += $(nscd-cflags)
|
||||
CFLAGS-cache.c += $(nscd-cflags)
|
||||
CFLAGS-xmalloc.c += $(nscd-cflags)
|
||||
CFLAGS-xstrdup.c += $(nscd-cflags)
|
||||
CFLAGS-mem.c += $(nscd-cflags)
|
||||
CFLAGS-nscd_setup_thread.c += $(nscd-cflags)
|
||||
CFLAGS-aicache.c += $(nscd-cflags)
|
||||
CFLAGS-selinux.c += $(nscd-cflags)
|
||||
CFLAGS-initgrcache.c += $(nscd-cflags)
|
||||
CFLAGS-gai.c += $(nscd-cflags)
|
||||
CFLAGS-servicescache.c += $(nscd-cflags)
|
||||
CFLAGS-getsrvbynm_r.c += $(nscd-cflags)
|
||||
CFLAGS-getsrvbypt_r.c += $(nscd-cflags)
|
||||
CFLAGS-res_hconf.c += $(nscd-cflags)
|
||||
CFLAGS-netgroupcache.c += $(nscd-cflags)
|
||||
|
||||
ifeq (yesyes,$(have-fpie)$(build-shared))
|
||||
LDFLAGS-nscd = -Wl,-z,now
|
||||
endif
|
||||
|
||||
# This makes sure -DNOT_IN_libc is passed for all these modules.
|
||||
# This makes sure CPPFLAGS-nonlib and CFLAGS-nonlib are passed
|
||||
# for all these modules.
|
||||
cpp-srcs-left := $(nscd-modules:=.c)
|
||||
lib := nonlib
|
||||
include $(patsubst %,$(..)cppflags-iterator.mk,$(cpp-srcs-left))
|
||||
|
Loading…
Reference in New Issue
Block a user