summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>1999-01-23 22:08:36 +0100
committerMartin Mares <mj@ucw.cz>1999-01-23 22:08:36 +0100
commit2c2f67bd83c267c1dbee68c6ed7d67f9be77e566 (patch)
treeaf1b6208207804a087a742b8c4fd4cabb86ff690 /tools
parentca3d562b24d5a3e303ab00d276496fb38b7382ee (diff)
downloadbird-2c2f67bd83c267c1dbee68c6ed7d67f9be77e566.tar
bird-2c2f67bd83c267c1dbee68c6ed7d67f9be77e566.zip
Filter all `Modules' files through C preprocessor, so that they can
reference BIRD configuration. By the way: Do you know GCC by default does `#define unix 1'?
Diffstat (limited to 'tools')
-rwxr-xr-xtools/mergedirs5
1 files changed, 4 insertions, 1 deletions
diff --git a/tools/mergedirs b/tools/mergedirs
index 7bc9109..4196831 100755
--- a/tools/mergedirs
+++ b/tools/mergedirs
@@ -4,6 +4,7 @@ if [ -z "$4" ] ; then
echo "Usage: mergedirs <src-dir> <src-dir-rel> <obj-dir> <list-of-dirs>"
exit 1
fi
+cpp=${CPP:-gcc -E}
SRCDIR=$1
shift
SRCREL=$1
@@ -19,7 +20,9 @@ shift
echo "Merging system-dependent modules ($@)"
MODULES=`for a in $@ ; do
- sed <$SRCDIR/$a/Modules "s@\\(.*\\)@\\1 $a/\\1@"
+ cat sysdep/autoconf.h $SRCDIR/$a/Modules |
+ $cpp -U unix - |
+ sed "/^[ ]*\$/d;/^#/d;s@\\(.*\\)@\\1 $a/\\1@"
done |
sort +0 -1 -u |
cut -d ' ' -f 2`