2000-03-27 Roland McGrath <roland@baalperazim.frob.com>

* Makeconfig (preprocess-versions): New canned sequence for running
	cpp on shlib-versions and the like.
	(soversions.i): Use it.
	* Makerules (Versions.all, sysd-versions): Use it to preprocess the
	Versions.def and Versions files.
This commit is contained in:
Roland McGrath 2000-03-27 19:42:09 +00:00
parent 22d5fbfe74
commit 480d827b66
3 changed files with 20 additions and 7 deletions

View file

@ -670,6 +670,14 @@ endif
ifeq (yes, $(build-shared))
# Commands to put in a pipeline to preprocess a file with # comments
# %ifdef et al based on config.h settings or other %include'd files.
define preprocess-versions
sed 's/#.*$$//;s/^[ ]*%/#/' \
| $(CC) $(CPPFLAGS) -E -undef -include $(common-objpfx)config.h -x c - \
| sed 's/#.*$$//;/^[ ]*$$/d'
endef
# Process the shlib-versions file, which tells us what shared library
# version numbers to use when we install shared objects on this system.
# We need to wait until $(subdirs) is complete.
@ -681,9 +689,8 @@ $(common-objpfx)soversions.i: $(..)shlib-versions $(..)Makeconfig \
$(add-ons) \
$(subdirs))) \
$(common-objpfx)config.make
sed -e 's/#.*$$//;s/^[ ]*%/#/' \
$(filter-out $(..)Makeconfig $(common-objpfx)config.make,$^) \
| $(CC) -E -undef -include $(common-objpfx)config.h -x c - \
cat $(filter-out $(..)Makeconfig $(common-objpfx)config.make,$^) \
| $(preprocess-versions) \
| while read conf version setname; do \
test -n "$$version" && \
test `expr '$(config-machine)-$(config-vendor)-$(config-os)' \

View file

@ -297,7 +297,8 @@ $(common-objpfx)Versions.all: $(..)scripts/firstversions.awk \
{ while read lib version setname; do \
test -z "$$setname" || echo "$$lib : $$setname"; \
done < $(word 2,$^); \
cat $(filter-out $< $(word 2,$^),$^); \
cat $(filter-out $< $(word 2,$^),$^) \
| $(preprocess-versions); \
} | LC_ALL=C $(AWK) -f $< > $@T
mv -f $@T $@
$(common-objpfx)sysd-versions: $(common-objpfx)Versions.all \
@ -306,9 +307,11 @@ $(common-objpfx)sysd-versions: $(common-objpfx)Versions.all \
$(wildcard $(sysdirs:%=%/Versions)) \
$(sysd-versions-force)
{ echo 'sysd-versions-subdirs = $(all-subdirs) $(config-sysdirs)' ; \
LC_ALL=C $(AWK) -v buildroot=$(common-objpfx) -v defsfile=$< \
-v move_if_change='$(move-if-change)' \
-f $(filter-out $< $(sysd-versions-force),$^); \
cat $(filter-out $< $(word 2,$^) $(sysd-versions-force),$^) \
| $(preprocess-versions) \
| LC_ALL=C $(AWK) -v buildroot=$(common-objpfx) -v defsfile=$< \
-v move_if_change='$(move-if-change)' \
-f $(word 2,$^); \
} > $@T
mv -f $@T $@
endif # avoid-generated

View file

@ -9,6 +9,9 @@ libc {
GLIBC_2.1.3
GLIBC_2.1.4
GLIBC_2.2
%ifdef USE_IN_LIBIO
HURD_CTHREADS_0.3
%endif
}
libcrypt {
GLIBC_2.0