diff options
author | Larry Wall <lwall@netlabs.com> | 1991-06-06 23:27:54 +0000 |
---|---|---|
committer | Larry Wall <lwall@netlabs.com> | 1991-06-06 23:27:54 +0000 |
commit | 2b317908ea5309ab202d1cdbadccfdf42d10e2b1 (patch) | |
tree | f523f01a4205f56f5435a39161acb4020ad5bc5b /x2p/cflags.SH | |
parent | 132b68a5c516d31aa5abdbca3bb36ded2c13b4cc (diff) | |
download | perl-2b317908ea5309ab202d1cdbadccfdf42d10e2b1.tar.gz |
perl 4.0 patch 5: patch #4, continued
See patch #4.
Diffstat (limited to 'x2p/cflags.SH')
-rw-r--r-- | x2p/cflags.SH | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/x2p/cflags.SH b/x2p/cflags.SH new file mode 100644 index 0000000000..2f78e2caf0 --- /dev/null +++ b/x2p/cflags.SH @@ -0,0 +1,84 @@ +case $CONFIG in +'') + if test ! -f config.sh; then + ln ../config.sh . || \ + ln ../../config.sh . || \ + ln ../../../config.sh . || \ + (echo "Can't find config.sh."; exit 1) + fi + . config.sh + ;; +esac +: This forces SH files to create target in same directory as SH file. +: This is so that make depend always knows where to find SH derivatives. +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +echo "Extracting cflags (with variable substitutions)" +: This section of the file will have variable substitutions done on it. +: Move anything that needs config subs from !NO!SUBS! section to !GROK!THIS!. +: Protect any dollar signs and backticks that you do not want interpreted +: by putting a backslash in front. You may delete these comments. +$spitshell >cflags <<!GROK!THIS! +!GROK!THIS! + +: In the following dollars and backticks do not need the extra backslash. +$spitshell >>cflags <<'!NO!SUBS!' +case "$0" in +*/*) cd `expr X$0 : 'X\(.*\)/'` ;; +esac +case $CONFIG in +'') + if test ! -f config.sh; then + ln ../config.sh . || \ + ln ../../config.sh . || \ + ln ../../../config.sh . || \ + (echo "Can't find config.sh."; exit 1) + fi 2>/dev/null + . ./config.sh + ;; +esac + +also=': ' +case $# in +1) also='echo 1>&2 " CCCMD = "' +esac + +case $# in +0) set *.c; echo "The current C flags are:" ;; +esac + +set `echo "$* " | sed 's/\.[oc] / /g'` + +for file do + + case "$#" in + 1) ;; + *) echo $n " $file.c $c" ;; + esac + + : allow variables like str_cflags to be evaluated + + eval 'eval ${'"${file}_cflags"'-""}' + + : or customize here + + case "$file" in + a2p) ;; + a2py) ;; + hash) ;; + str) ;; + util) ;; + walk) ;; + *) ;; + esac + + echo "$cc -c $ccflags $optimize $large $split" + eval "$also "'"$cc -c $ccflags $optimize $large $split"' + + . ./config.sh + +done +!NO!SUBS! +chmod +x cflags +$eunicefix cflags |