#!/bin/sh

# Make a NetBSD shared library
# contributed by Michael Graff (explorer@flame.org)
# updated by Jarkko Hietaniemi (jarkko.hietaniemi@research.nokia.com)

#--identification------------------------------------------------------

# $Id: mklib.netbsd,v 1.8 1997/11/04 02:55:35 brianp Exp $

# $Log: mklib.netbsd,v $
# Revision 1.8  1997/11/04 02:55:35  brianp
# applied Erik Johannessen's changes
#
# Revision 1.7  1997/10/21 23:32:31  brianp
# now takes major and minor version arguments
#

#--common--------------------------------------------------------------

# Usage:  mklib libname major minor file.o ...
#
# First argument is name of output library (LIBRARY)
# Second arg is major version number (MAJOR)
# Third arg is minor version number (MINOR)
# Rest of arguments are object files (OBJECTS)

LIBRARY=$1
shift 1

MAJOR=$1
shift 1

MINOR=$1
shift 1

OBJECTS=$*

#--platform------------------------------------------------------------

set -x

LIBRARY=`basename ${LIBRARY} .so`

VERSION="${MAJOR}.${MINOR}"

echo "Building PIC library $LIBRARY"
rm -f ${LIBRARY}_pic.a ${LIBRARY}.so.${VERSION}
ar cq ${LIBRARY}_pic.a ${OBJECTS}
ranlib ${LIBRARY}_pic.a

ld -x -Bshareable -Bforcearchive -o ${LIBRARY}.so.${VERSION} ${LIBRARY}_pic.a

cp ${LIBRARY}_pic.a ${LIBRARY}.so.${VERSION} ../lib
