#!/bin/sh # # No Copyright 2002 Pekka Riikonen # # This script fixes the fundamental problem of libtool: it is not # configurable in run-time. This changes the libtool so that it becomes # more generic and configurable in run-time. # # New command line options to libtool: # # --libtool-enable-shared Enable shared library compilation # --libtool-enable-static Enable static library compilation # --libtool-disable-shared Disable shared library compilation # --libtool-disable-static Disable static library compilation # # If options are omitted the default libtool configuration will apply. # # Sanity checks if test '!' -f ./libtool; then echo "./libtool does not exist" exit 0 fi # Take configuration from the ./libtool sed '/^# ltmain\.sh/q' ./libtool >./libtool.tmp # Put our wrapper to the new libtool. This allows the run-time # configuration of the libtool. ltmain=`pwd`/ltmain.sh cat << EOF >> ./libtool.tmp args=\`echo \$*\` cargs=\`echo \$* | sed -e '/--libtool-enable-shared/s///' -e '/--libtool-enable-static/s///' -e '/--libtool-disable-shared/s///' -e '/--libtool-disable-static/s///'\` for i in \$args do if test "\$i" = "--libtool-enable-shared"; then build_libtool_libs=yes fast_install=yes continue fi if test "\$i" = "--libtool-disable-shared"; then build_libtool_libs=no continue fi if test "\$i" = "--libtool-enable-static"; then build_old_libs=yes continue fi if test "\$i" = "--libtool-disable-static"; then build_old_libs=no continue fi done if test "\$cargs" = ""; then cargs="--silent" fi . $ltmain \$cargs EOF mv -f ./libtool.tmp ./libtool chmod +x ./libtool exit 1