aboutsummaryrefslogtreecommitdiffstats
path: root/mklibs/mkslib.solaris-cc
diff options
context:
space:
mode:
Diffstat (limited to 'mklibs/mkslib.solaris-cc')
-rwxr-xr-xmklibs/mkslib.solaris-cc61
1 files changed, 61 insertions, 0 deletions
diff --git a/mklibs/mkslib.solaris-cc b/mklibs/mkslib.solaris-cc
new file mode 100755
index 0000000..539c674
--- /dev/null
+++ b/mklibs/mkslib.solaris-cc
@@ -0,0 +1,61 @@
+#!/bin/sh
+
+# Make a Solaris shared library
+# goal: same tool for any machines ...
+#
+
+# First argument is name of output library
+# without dirname and suffix
+# second and third are the major and minor number
+# Rest of arguments are object files
+
+set -x
+
+LIBDIR=$1
+shift 1
+
+LIBRARY=$1
+shift 1
+
+LIBMAJOR=$1
+shift 1
+
+LIBMINOR=$1
+shift 1
+
+LIBBUGFIX=$1
+shift 1
+
+
+OBJECTS=$*
+
+# the following provided by Thomas Hiller ([email protected])
+
+VERSION="${LIBMAJOR}.${LIBMINOR}.${LIBBUGFIX}"
+
+LIBNAME=${LIBRARY}.so
+
+echo "Building shared object $LIBRARY.so.$VERSION and the archive library $LIBRARY.a"
+rm -f ${LIBDIR}/${LIBNAME}*
+
+cc -G -o ${LIBDIR}/${LIBNAME}.${VERSION} ${OBJECTS}
+
+( cd ${LIBDIR} ;
+ ln -s ${LIBNAME}.${VERSION} ${LIBNAME}.${LIBMAJOR}.${LIBMINOR}
+)
+
+( cd ${LIBDIR} ;
+ ln -s ${LIBNAME}.${LIBMAJOR}.${LIBMINOR} ${LIBNAME}.${LIBMAJOR}
+)
+
+( cd ${LIBDIR} ;
+ ln -s ${LIBNAME}.${LIBMAJOR} ${LIBNAME}
+)
+
+# Print a reminder about shared libs:
+echo
+echo "******Be sure to add" ${LIBDIR}" to your LD_LIBRARY_PATH variable"
+echo
+sleep 2
+
+