diff options
author | Axel Beckert <abe@deuxchevaux.org> | 2011-09-03 14:05:23 +0200 |
---|---|---|
committer | Axel Beckert <abe@deuxchevaux.org> | 2011-09-03 14:05:23 +0200 |
commit | bdf45bc45637eefdbdee913465729f9d31d6c255 (patch) | |
tree | 9b6538c483ad6c2b38177068d5c5730397c9f292 /etc/ccdefs | |
parent | 14a4b00c9ef680b78469333291270e4c276f100d (diff) | |
download | screen-upstream/3.9.5.tar.gz |
Imported Upstream version 3.9.5upstream/3.9.5
Diffstat (limited to 'etc/ccdefs')
-rwxr-xr-x | etc/ccdefs | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/etc/ccdefs b/etc/ccdefs new file mode 100755 index 0000000..2358fcd --- /dev/null +++ b/etc/ccdefs @@ -0,0 +1,45 @@ +#!/bin/sh +cd /tmp +umask 022 + +CC=cc +CPP=/lib/cpp + +TEMP=def$$ +trap 'rm -f ${TEMP}*; trap 0; exit' 0 1 2 3 15 + +set `type $CC` +q=$# +set x `type $CC` +shift $q +cc=$1 + +set `type $CPP` +q=$# +set x `type $CPP` +shift $q +cpp=$1 + +strings - "$cc" 2>/dev/null | tr ' ' '\012' > ${TEMP}.x + +if test -x "$cpp"; then +strings - "$cpp" 2>/dev/null | tr ' ' '\012' >> ${TEMP}.x +else +echo "Warning: cpp not found." +fi + +sort < ${TEMP}.x | uniq | awk ' +/^-D[A-Za-z_][A-Za-z_0-9]*$/ { + printf("#ifdef %s\n", substr($0,3)) + printf("\"%s\": %s\n", substr($0,3), substr($0,3)) + print "#endif" + } +/^[A-Za-z_][A-Za-z_0-9]*$/ { + printf("#ifdef %s\n", $0) + printf("\"%s\": %s\n", $0, $0) + print "#endif" + } +' > ${TEMP}.c + +echo "Defines in cc are:" +cc -E ${TEMP}.c | sed -n -e 's/"\([^:]*\)":/\1:/p' | sort | uniq |