instdso.sh revision 4a13940dc2990df0a798718d3a3f9cf1566c2217
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# Licensed to the Apache Software Foundation (ASF) under one or more
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# contributor license agreements. See the NOTICE file distributed with
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# this work for additional information regarding copyright ownership.
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# The ASF licenses this file to You under the Apache License, Version 2.0
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# (the "License"); you may not use this file except in compliance with
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# the License. You may obtain a copy of the License at
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# http://www.apache.org/licenses/LICENSE-2.0
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# Unless required by applicable law or agreed to in writing, software
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# distributed under the License is distributed on an "AS IS" BASIS,
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# See the License for the specific language governing permissions and
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# limitations under the License.
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# instdso.sh - install Apache DSO modules
bb4d3b6e93db1495f02de46aff5076862e30517bChristian Maeder# we use this instead of libtool --install because:
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# 1) on a few platforms libtool doesn't install DSOs exactly like we'd
70e83495a9753d2a104a9869ac2a997ac30d05c1Christian Maeder# want (weird names, doesn't remove DSO first)
bb4d3b6e93db1495f02de46aff5076862e30517bChristian Maeder# 2) we never want the .la files copied, so we might as well copy
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder# the .so files ourselves
bb4d3b6e93db1495f02de46aff5076862e30517bChristian Maeder echo "wrong number of arguments to instdso.sh"
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder echo "Usage: instdso.sh SH_LIBTOOL-value dso-name path-to-modules"
62d8627183cce49c052386186ad69c95b1aa3953Christian MaederSH_LIBTOOL=`echo $1 | sed -e 's/^SH_LIBTOOL=//'`
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian MaederDSOBASE=`echo $DSOARCHIVE_BASENAME | sed -e 's/\.la$//'`
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder # on AIX, shared libraries remain in storage even when
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder # all processes using them have exited; standard practice
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder # prior to installing a shared library is to rm -f first
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian MaederCMD="$SH_LIBTOOL --mode=install cp $DSOARCHIVE $TARGETDIR/"
722e8a91f69209ba0e99bf799c4989801d78cf16Christian Maeder # on OS/2, aplibtool --install doesn't copy the .la files & we can't
bc994dca195712fe9143e074ed479077f9bab75dChristian Maeder # rename DLLs to have a .so extension or they won't load so none of the
722e8a91f69209ba0e99bf799c4989801d78cf16Christian Maeder # steps below make sense.
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maederif test -s "$TARGETDIR/$DSOARCHIVE_BASENAME"
83b3260413a3b1b7dee1f9c4d3249dec994a875cMihai Codescu DLNAME=`sed -n "/^dlname=/{s/.*='\([^']*\)'/\1/;p;}" $TARGETDIR/$DSOARCHIVE_BASENAME`
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder LIBRARY_NAMES=`sed -n "/^library_names/{s/library_names='\([^']*\)'/\1/;p;}" $TARGETDIR/$DSOARCHIVE_BASENAME`
cf7e0d6750e408ddb47545d6b8349a70cf0b47afChristian Maeder LIBRARY_NAMES=`echo $LIBRARY_NAMES | sed -e "s/ *$DLNAME//g"`
bb4d3b6e93db1495f02de46aff5076862e30517bChristian Maeder echo "Warning! dlname not found in $TARGETDIR/$DSOARCHIVE_BASENAME."
21b18016469e574bd145ad07c7b0f02839677cc3Christian Maeder echo "Assuming installing a .so rather than a libtool archive."