diff ltmain.sh @ 387:469d5c0da01d

Fixed shared library building on MacOS X (thanks Max!)
author Sam Lantinga <slouken@libsdl.org>
date Sat, 01 Jun 2002 18:48:13 +0000
parents cf2af46e9e2a
children 84acd4f134e7
line wrap: on
line diff
--- a/ltmain.sh	Sat Jun 01 18:43:51 2002 +0000
+++ b/ltmain.sh	Sat Jun 01 18:48:13 2002 +0000
@@ -951,6 +951,11 @@
 	  prev=
 	  continue
 	  ;;
+	framework)
+	  deplibs="$deplibs -framework $arg"
+	  prev=
+	  continue
+	  ;;
 	release)
 	  release="-$arg"
 	  prev=
@@ -1037,6 +1042,11 @@
 	continue
 	;;
 
+      -framework)
+	prev=framework
+	continue
+	;;
+
       -L*)
 	dir=`$echo "X$arg" | $Xsed -e 's/^-L//'`
 	# We need an absolute path.
@@ -1768,6 +1778,16 @@
 	  versuffix="-$major-$age-$revision"
 	  ;;
 
+	darwin)
+	  # Like Linux, but with the current version available in
+	  # verstring for coding it into the library header
+	  major=.`expr $current - $age`
+	  versuffix="$major.$age.$revision"
+	  # Darwin ld doesn't like 0 for these options...
+	  minor_current=`expr $current + 1`
+	  verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+	  ;;
+
 	*)
 	  $echo "$modename: unknown library version type \`$version_type'" 1>&2
 	  echo "Fatal configuration error.  See the $PACKAGE docs for more information." 1>&2
@@ -1778,7 +1798,16 @@
 	# Clear the version info if we defaulted, and they specified a release.
 	if test -z "$vinfo" && test -n "$release"; then
 	  major=
+	  case "$version_type" in
+	  darwin)
+	    # we can't check for "0.0" in archive_cmds due to quoting
+	    # problems, so we reset it completely
+	    verstring=""
+	    ;;
+	  *)
 	  verstring="0.0"
+	    ;;
+	  esac
 	  if test "$need_version" = no; then
 	    versuffix=
 	  else