From 480d827b660a4e13fd5b9a4bacb3df57cad1a5aa Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Mon, 27 Mar 2000 19:42:09 +0000 Subject: 2000-03-27 Roland McGrath * 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. --- Makeconfig | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'Makeconfig') diff --git a/Makeconfig b/Makeconfig index daae310cee..56b5d3330b 100644 --- a/Makeconfig +++ b/Makeconfig @@ -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)' \ -- cgit v1.2.3