--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/config/build-config.sh Wed Jan 16 22:39:43 2008 +0100
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+newfile() {
+ local old=$1
+ local new=${old}.new
+ cat >$new
+ if cmp -s $old $new; then
+ echo "$old is unchanged." >&2
+ rm -f $new
+ else
+ echo "$old was changed, REPLACING." >&2
+ mv -f $new $old
+ fi
+}
+
+{
+ sed -e '/^%%LIST%%$/,$d' showvconfig.cc.in
+ while read type ext name default; do
+ filename=`echo $name | sed -e 's/_/-/g'`
+ sed -e "s|%NAME%|$name|g" \
+ -e "s|%EXT%|$ext|g" \
+ -e "s|%TYPE%|$type|g" \
+ -e "s|%DEFAULT%|$default|g" \
+ -e "s|%FILENAME%|$filename|g" \
+ configvar.in | newfile _${name}.cc
+ echo " show_$ext(\"${filename}\", config->${name}());"
+ done <configrc.in
+ sed -e '1,/^%%LIST%%$/d' showvconfig.cc.in
+} | newfile showvconfig.cc
+
+{
+ sed -e '/^%%LIST%%$/,$d' configrc.h.in
+ while read type ext name default; do
+ echo "public: $type $name() const;"
+ echo "private: config_cache<$type> ${name}_cache;"
+ done <configrc.in
+ sed -e '1,/^%%LIST%%$/d' configrc.h.in
+} | newfile configrc.h
+
+{
+ sed -e '/^%%LIST%%$/,$d' Makefile.am.in
+ while read type ext name default; do
+ echo " _${name}.cc \\"
+ done <configrc.in
+ sed -e '1,/^%%LIST%%$/d' Makefile.am.in
+} | newfile Makefile.am