mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-23 11:18:54 +00:00
4e0ffe0bae
final release. Obtained from: ftp.isc.org
36 lines
890 B
Bash
Executable File
36 lines
890 B
Bash
Executable File
#!/bin/sh
|
|
|
|
# this process is necessary because make(1) puts its command line into
|
|
# the environment, and when we exec a sub-make we need these command
|
|
# line settings (like CDEBUG=-g for example) to override what we get out
|
|
# of port/$systype/Makefile.set. therefore feed Makefile.set to this
|
|
# and it will merge things appropriately. a cache file is maintained
|
|
# to avoid calling this script way too often.
|
|
|
|
cachefile=${1-//}
|
|
if [ -f "$cachefile" ]; then
|
|
echo "Using $cachefile" >&2
|
|
exec cat $cachefile
|
|
fi
|
|
|
|
case $cachefile in
|
|
//) ;;
|
|
*) echo "Making $cachefile" >&2 ;;
|
|
esac
|
|
|
|
result=''
|
|
while read setting; do
|
|
var=`expr "$setting" : "'\([A-Z0-9_]*\)="`
|
|
val=`expr "$setting" : "'[A-Z0-9_]*=\([^']*\)'\$"`
|
|
eval "env=`echo \\${\$var-'$val'}`"
|
|
result="$result '$var=$env'"
|
|
done
|
|
|
|
case $cachefile in
|
|
//) echo $result ;;
|
|
*) echo $result > $cachefile
|
|
exec cat $cachefile ;;
|
|
esac
|
|
|
|
exit
|