From 675456ef83622a17c86ae60b94b8e5e3a9d5bb2f Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Sun, 14 Aug 2011 16:08:37 -0700 Subject: [PATCH] Clean up locale/Makefile variables for -D switches. --- ChangeLog | 7 +++++++ locale/Makefile | 28 +++++++++++++++++----------- 2 files changed, 24 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index c67904ea53..341deebefc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2011-08-14 Roland McGrath + * locale/Makefile (locale-CPPFLAGS): Renamed CPPFLAGS-locale-programs. + (locale-CPPFLAGS): New variable; put LOCALEDIR, LOCALE_ALIAS_PATH and + -Iprograms here. + (cppflags-iterator.mk sequence): Use locale-programs in place of nonlib. + (localedef-modules): Add localedef. + (locale-modules): Add locale. + * sysdeps/generic/ldsodefs.h (struct unique_sym): Add a const. * elf/rtld.c (dl_main): Invert order of assignment in last change, to avoid a warning. diff --git a/locale/Makefile b/locale/Makefile index 87c29a55a9..ccaebf190f 100644 --- a/locale/Makefile +++ b/locale/Makefile @@ -60,10 +60,11 @@ vpath %.c programs ../crypt vpath %.h programs vpath %.gperf programs -localedef-modules := $(categories:%=ld-%) charmap linereader locfile \ +localedef-modules := localedef $(categories:%=ld-%) \ + charmap linereader locfile \ repertoire locarchive localedef-aux := md5 -locale-modules := locale-spec +locale-modules := locale locale-spec lib-modules := charmap-dir simple-hash xmalloc xstrdup @@ -91,22 +92,27 @@ endif localepath = "$(localedir):$(i18ndir)" -locale-CPPFLAGS := -DLOCALE_PATH='$(localepath)' \ - -DLOCALEDIR='"$(localedir)"' \ - -DLOCALE_ALIAS_PATH='"$(msgcatdir)"' \ - -DCHARMAP_PATH='"$(i18ndir)/charmaps"' \ - -DREPERTOIREMAP_PATH='"$(i18ndir)/repertoiremaps"' \ - -DLOCSRCDIR='"$(i18ndir)/locales"' -DHAVE_CONFIG_H \ - -Iprograms -DNOT_IN_libc +# -Iprograms doesn't really belong here, but this gets it at the head +# of the list instead of the tail, where CPPFLAGS-$(lib) gets added. +# We need it before the standard -I's to see programs/config.h first. +locale-CPPFLAGS = -DLOCALEDIR='"$(localedir)"' \ + -DLOCALE_ALIAS_PATH='"$(msgcatdir)"' \ + -Iprograms + +CPPFLAGS-locale-programs = -DLOCALE_PATH='$(localepath)' \ + -DCHARMAP_PATH='"$(i18ndir)/charmaps"' \ + -DREPERTOIREMAP_PATH='"$(i18ndir)/repertoiremaps"' \ + -DLOCSRCDIR='"$(i18ndir)/locales"' \ + -DHAVE_CONFIG_H -DNOT_IN_libc CFLAGS-charmap.c = -Wno-write-strings -Wno-char-subscripts CFLAGS-locfile.c = -Wno-write-strings -Wno-char-subscripts CFLAGS-charmap-dir.c = -Wno-write-strings -# This makes sure -DNOT_IN_libc is passed for all these modules. +# This makes sure -DNOT_IN_libc et al are passed for all these modules. cpp-srcs-left := $(addsuffix .c,$(localedef-modules) $(localedef-aux) \ $(locale-modules) $(lib-modules)) -lib := nonlib +lib := locale-programs include $(patsubst %,$(..)cppflags-iterator.mk,$(cpp-srcs-left)) # Depend on libc.so so a DT_NEEDED is generated in the shared objects.