diff --git a/src/cmd/INIT/include/link_ar.mam b/src/cmd/INIT/include/link_ar.mam index 6b5ace35655b..d10254c23372 100644 --- a/src/cmd/INIT/include/link_ar.mam +++ b/src/cmd/INIT/include/link_ar.mam @@ -33,8 +33,13 @@ exec - esac exec - ;; exec - esac exec - done +exec - set -x exec - case ${to_delete:+y} in -exec - y) set -x -exec - %{AR} -d %{@} $to_delete +exec - y) %{AR} -d %{@} $to_delete exec - ;; exec - esac + +note * Some old systems do not automatically update the symbol table upon ad +note * adding or deleting object files (contra POSIX), so update it manually + +exec - %{AR} -s %{@} diff --git a/src/cmd/ksh93/Mamfile b/src/cmd/ksh93/Mamfile index 1041d19a75d8..6dad870ea1f0 100644 --- a/src/cmd/ksh93/Mamfile +++ b/src/cmd/ksh93/Mamfile @@ -1167,8 +1167,7 @@ make install virtual done make %{INSTALLROOT}/lib/libshell.a prev libshell.a - exec - cp -f %{<} %{@} || exit - exec - ranlib %{@} >/dev/null 2>&1 || true + exec - cp -f %{<} %{@} done loop MAN3PG shell nval make %{INSTALLROOT}/man/man3/%{MAN3PG}.3 diff --git a/src/lib/libast/Mamfile b/src/lib/libast/Mamfile index e4bb02614744..1ae2e6d3e9ba 100644 --- a/src/lib/libast/Mamfile +++ b/src/lib/libast/Mamfile @@ -4497,8 +4497,7 @@ make install virtual note * the library and dependency information make %{INSTALLROOT}/lib/libast.a prev libast.a - exec - cp -f %{<} %{@} || exit - exec - ranlib %{@} >/dev/null 2>&1 || true + exec - cp -f %{<} %{@} done make %{INSTALLROOT}/lib/lib/ast prev ast.req diff --git a/src/lib/libcmd/Mamfile b/src/lib/libcmd/Mamfile index 152a07446796..b8ae5fbfc556 100644 --- a/src/lib/libcmd/Mamfile +++ b/src/lib/libcmd/Mamfile @@ -332,8 +332,7 @@ make install virtual done make %{INSTALLROOT}/lib/libcmd.a prev libcmd.a - exec - cp -f %{<} %{@} || exit - exec - ranlib %{@} >/dev/null 2>&1 || true + exec - cp -f %{<} %{@} done make %{INSTALLROOT}/lib/lib/cmd prev cmd.req diff --git a/src/lib/libdll/Mamfile b/src/lib/libdll/Mamfile index 41ec31876120..f3b6380bea0f 100644 --- a/src/lib/libdll/Mamfile +++ b/src/lib/libdll/Mamfile @@ -131,8 +131,7 @@ make install virtual done make %{INSTALLROOT}/lib/libdll.a prev libdll.a - exec - cp -f %{<} %{@} || exit - exec - ranlib %{@} >/dev/null 2>&1 || true + exec - cp -f %{<} %{@} done make %{INSTALLROOT}/lib/lib/dll prev dll.req diff --git a/src/lib/libsum/Mamfile b/src/lib/libsum/Mamfile index 6d3a885b89f1..4024e4d3f671 100644 --- a/src/lib/libsum/Mamfile +++ b/src/lib/libsum/Mamfile @@ -78,8 +78,7 @@ make install virtual done make %{INSTALLROOT}/lib/libsum.a prev libsum.a - exec - cp -f %{<} %{@} || exit - exec - ranlib %{@} >/dev/null 2>&1 || true + exec - cp -f %{<} %{@} done make %{INSTALLROOT}/lib/lib/sum prev sum.req