SF Patch #103188, by Donn Cave: BeOS/ar-fake support for extra
libraries.

(I have no way to test this, I just trust Donn.)
diff --git a/BeOS/ar-fake b/BeOS/ar-fake
index 4a06e3b..e7efa75 100755
--- a/BeOS/ar-fake
+++ b/BeOS/ar-fake
@@ -46,10 +46,19 @@
 so)
         case $BE_HOST_CPU in
         ppc)
-                mwld -xms -export pragma -nodup -o $1 $library/*
+                #  In case your libpython.a refers to any exotic libraries,
+                #  mwld needs to know that here.  The following hack makes
+                #  a couple of assumptions about Modules/Makefile.  If it
+                #  doesn't work, you may as well add the necessary libraries
+                #  here explicitly instead.
+                extralibs=$(
+                        (cd Modules; make -f Makefile -n link) |
+                        sed -n 's/.*\.so \(.*\) -o python.*/\1/p'
+                )
+                mwld -xms -export pragma -nodup -o $1 $library/* $extralibs
                 ;;
         x86)
-                gcc -nostart -Wl,-soname=$(basename $1) -o $1 $library/*
+                ld -shared -soname $(basename $1) -o $1 $library/*
                 ;;
         esac
         status=$?