aboutsummaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
authorPetter Rodhelind <petter.rodhelind@gmail.com>2020-06-18 23:57:51 +0200
committerPetter Rodhelind <petter.rodhelind@gmail.com>2020-06-18 23:57:51 +0200
commit7cda34cf34f3afbd3f2000aa5e2b59ddc319f0f2 (patch)
treeff18b856a35c80a9cc40573c76899d8a468bedc5 /bin
parentea23656f7c3afcfd8516b00c0db09879ae80a09f (diff)
parent329831171dd6ef81c113f101093c7b4947381003 (diff)
downloadplan9port-7cda34cf34f3afbd3f2000aa5e2b59ddc319f0f2.tar.gz
plan9port-7cda34cf34f3afbd3f2000aa5e2b59ddc319f0f2.tar.bz2
plan9port-7cda34cf34f3afbd3f2000aa5e2b59ddc319f0f2.zip
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'bin')
-rwxr-xr-xbin/9c49
-rwxr-xr-xbin/9l24
-rwxr-xr-xbin/osxvers2
3 files changed, 52 insertions, 23 deletions
diff --git a/bin/9c b/bin/9c
index 0f836d24..a22a0a08 100755
--- a/bin/9c
+++ b/bin/9c
@@ -4,7 +4,7 @@ test -f $PLAN9/config && . $PLAN9/config
usegcc()
{
cc=${CC9:-gcc}
- ngflags=" \
+ cflags=" \
-O2 \
-c \
-Wall \
@@ -24,7 +24,12 @@ usegcc()
"
# want to put -fno-optimize-sibling-calls here but
# that option only works with gcc3+ it seems
- cflags="$ngflags -ggdb"
+ cflags="$cflags -ggdb"
+ cflags="$cflags $CC9FLAGS"
+ case "$cflags" in
+ *sanitize=address*)
+ cflags="$cflags -DPLAN9PORT_ASAN"
+ esac
}
quiet()
@@ -60,7 +65,7 @@ quiet()
useclang()
{
cc=${CC9:-clang}
- ngflags=" \
+ cflags=" \
-O2 \
-c \
-Wall \
@@ -79,7 +84,31 @@ useclang()
-fsigned-char \
-fno-caret-diagnostics \
"
- cflags="$ngflags -g"
+ cflags="$cflags -g"
+ cflags="$cflags $CC9FLAGS"
+
+ case "$cflags" in
+ *sanitize=address*)
+ cflags="$cflags -DPLAN9PORT_ASAN"
+ esac
+}
+
+usexlc()
+{
+ cc=${CC9:-xlc_r}
+ cflags=" \
+ -c \
+ -O0 \
+ -qmaxmem=-1 \
+ -qsuppress=1506-236 \
+ -qsuppress=1506-358 \
+ -qsuppress=1500-010 \
+ -qsuppress=1506-224 \
+ -qsuppress=1506-1300 \
+ -qsuppress=1506-342 \
+ "
+ cflags="$cflags -g -qfullpath"
+ cflags="$cflags $CC9FLAGS"
}
tag="${SYSNAME:-`uname`}-${OBJTYPE:-`uname -m`}-${CC9:-cc}"
@@ -88,14 +117,14 @@ case "$tag" in
*DragonFly*clang|*BSD*clang*) useclang ;;
*Darwin-x86_64*)
useclang
- cflags="$ngflags -g3 -m64"
+ cflags="$cflags -g3 -m64"
;;
*Darwin*clang*)
useclang
- cflags="$ngflags -g3 -m32"
+ cflags="$cflags -g3 -m32"
;;
*Darwin*) usegcc
- cflags="$ngflags -g3 -no-cpp-precomp -m32" ;;
+ cflags="$cflags -g3 -no-cpp-precomp -m32" ;;
*HP-UX*) cc=${CC9:-cc}; cflags="-g -O -c -Ae" ;;
*Linux*) usegcc
case "${CC9:-gcc}" in
@@ -117,11 +146,11 @@ case "$tag" in
u=`uname`
v=`uname -r`
s=`echo $u$v | tr '. ' '__'`
- cflags="$ngflags -g"
+ cflags="$cflags -g"
cflags="$cflags -D__sun__ -D__${s}__"
;;
-*AIX*) usegcc
- cflags="$ngflags -g -D__AIX__"
+*AIX*) usexlc
+ cflags="$cflags -g -D__AIX__"
;;
*)
echo 9c does not know how to compile on "$tag" 1>&2
diff --git a/bin/9l b/bin/9l
index a10aab72..b4f91584 100755
--- a/bin/9l
+++ b/bin/9l
@@ -12,29 +12,29 @@ extralibs="-lm"
tag="${SYSNAME:-`uname`}-${OBJTYPE:-`uname -m`}"
case "$tag" in
*DragonFly*|*BSD*)
- ld=${CC9:-gcc}
+ ld="${CC9:-gcc} $CC9FLAGS"
userpath=true
extralibs="$extralibs -lutil"
;;
*OSF1*)
- ld=${CC9:-cc}
+ ld="${CC9:-cc} $CC9FLAGS"
userpath=true
extralibs="$extralibs -lutil"
nmflags="-B"
;;
*Linux*)
- ld=${CC9:-gcc}
+ ld="${CC9:-gcc} $CC9FLAGS"
userpath=true
extralibs="$extralibs -lutil -lresolv -lpthread"
;;
*Darwin*x86_64*)
- ld="${CC9:-gcc} -m64"
+ ld="${CC9:-gcc} -m64 $CC9FLAGS"
;;
*Darwin*)
- ld="${CC9:-gcc} -m32"
+ ld="${CC9:-gcc} -m32 $CC9FLAGS"
;;
*SunOS*)
- ld="${CC9:-cc} -g"
+ ld="${CC9:-cc} -g $CC9FLAGS"
extralibs="$extralibs -lrt -lpthread -lsocket -lnsl"
# Record paths to shared libraries to avoid needing LD_LIBRARY_PATH
for i in "$libsl $@"
@@ -61,8 +61,8 @@ case "$tag" in
esac
;;
*AIX*)
- ld=${CC9:-gcc}
- nmflags="-B"
+ ld="${CC9:-xlc_r} -g -O0 $CC9FLAGS"
+ nmflags="-A -B"
;;
*)
echo do not know how to link on "$tag" 1>&2
@@ -113,8 +113,8 @@ then
then
a=`
nm $nmflags $ofiles |
- grep '__p9l_autolib_[a-zA-Z0-9+-]*$' |
- sed 's/.*__p9l_autolib_//' |
+ grep '__p9l_autolib_[a-zA-Z0-9+-]*' |
+ sed 's/.*__p9l_autolib_//; s/:.*//' |
sort -u
`
for i in $a
@@ -144,8 +144,8 @@ then
do
b=`
nm $lpath/lib$i.a 2>/dev/null |
- grep '__p9l_autolib_[a-zA-Z0-9+-]*$' |
- sed 's/.*__p9l_autolib_//' |
+ grep '__p9l_autolib_[a-zA-Z0-9+-]*' |
+ sed 's/.*__p9l_autolib_//; s/:.*//' |
sort -u |
egrep -v '^(thread|draw)$'
`
diff --git a/bin/osxvers b/bin/osxvers
index 4af44da2..6ebeb11f 100755
--- a/bin/osxvers
+++ b/bin/osxvers
@@ -3,5 +3,5 @@
u=`uname`
case "$u" in
Darwin)
- sw_vers | awk '$1 == "ProductVersion:" {print $2}' | awk -F. '{printf("CFLAGS=$CFLAGS -DOSX_VERSION=%d%02d%02d\n", $1, $2, $3)}'
+ sw_vers -productVersion | awk -F. '{printf("CFLAGS=$CFLAGS -DOSX_VERSION=%d%02d%02d\n", $1, $2, $3)}'
esac