libtool-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

libtool handling frameworks properly


From: Benjamin Reed
Subject: libtool handling frameworks properly
Date: Sun, 18 Jan 2004 09:41:10 -0500
User-agent: Mozilla Thunderbird 0.5a (Macintosh/20040115)

My original patch was basically the right fix, it seems. My earlier troubles turned out to be other libtool bugs that have since been fixed in cvs. Attached is a re-post patch to properly handle include and library paths with "foo.framework" in them, as well as a one-liner fix to a place where shrext was not being eval'd.


2004-01-18  Benjamin Reed  <address@hidden>

       * ltmain.in: Fix handling of frameworks in search paths.  Also
       a one-liner fix to eval shrext in the libtool library search.


--
Benjamin Reed a.k.a. Ranger Rick -- http://ranger.befunk.com/
gpg: 6401 D02A A35F 55E9 D7DD  71C5 52EF A366 D3F6 65FE
"What's that word that's the EXACT opposite of scary?"  "Tacos?"


Index: ChangeLog
===================================================================
RCS file: /cvsroot/libtool/libtool/ChangeLog,v
retrieving revision 1.1379
diff -u -r1.1379 ChangeLog
--- ChangeLog   16 Jan 2004 22:42:26 -0000      1.1379
+++ ChangeLog   18 Jan 2004 14:36:26 -0000
@@ -1,3 +1,8 @@
+2004-01-18  Benjamin Reed  <address@hidden>
+
+       * ltmain.in: Fix handling of frameworks in search paths.  Also
+       a one-liner fix to eval shrext in the libtool library search.
+
 2004-01-16  Gary V. Vaughan  <address@hidden>
 
        * configure.ac (AM_INIT_AUTOMAKE): Require 1.8 for bootstrap, or
Index: ltmain.in
===================================================================
RCS file: /cvsroot/libtool/libtool/ltmain.in,v
retrieving revision 1.367
diff -u -r1.367 ltmain.in
--- ltmain.in   12 Jan 2004 02:32:50 -0000      1.367
+++ ltmain.in   18 Jan 2004 14:36:27 -0000
@@ -1231,8 +1231,8 @@
          case $host in
            *-*-darwin*)
              case "$deplibs " in
-               *" $qarg.framework "*) ;;
-               *) deplibs="$deplibs $qarg.framework" # this is fixed later
+               *" $qarg.ltframework "*) ;;
+               *) deplibs="$deplibs $qarg.ltframework" # this is fixed later
                   ;;
               esac
               ;;
@@ -1361,7 +1361,7 @@
            ;;
          *-*-rhapsody* | *-*-darwin1.[012])
            # Rhapsody C and math libraries are in the System framework
-           deplibs="$deplibs System.framework"
+           deplibs="$deplibs System.ltframework"
            continue
          esac
        elif test "X$arg" = "X-lc_r"; then
@@ -1890,7 +1890,8 @@
          fi
          name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
          for searchdir in $newlib_search_path $lib_search_path 
$sys_lib_search_path $shlib_search_path; do
-           for search_ext in .la $shrext .so .a; do
+           eval shared_ext=\"$shrext\"
+           for search_ext in .la $shared_ext .so .a; do
              # Search the libtool library
              lib="$searchdir/lib${name}${search_ext}"
              if test -f "$lib"; then
@@ -1951,7 +1952,7 @@
            fi
          fi
          ;; # -l
-       *.framework)
+       *.ltframework)
          if test "$linkmode,$pass" = "prog,link"; then
            compile_deplibs="$deplib $compile_deplibs"
            finalize_deplibs="$deplib $finalize_deplibs"
@@ -2093,8 +2094,8 @@
 
        case $host in
        *-*-darwin*)
-         # Convert "-framework foo" to "foo.framework" in dependency_libs
-         test -n "$dependency_libs" && dependency_libs=`$echo 
"X$dependency_libs" | $Xsed -e 's/-framework \([^ $]*\)/\1.framework/g'`
+         # Convert "-framework foo" to "foo.ltframework" in dependency_libs
+         test -n "$dependency_libs" && dependency_libs=`$echo 
"X$dependency_libs" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'`
          ;;
        esac
 
@@ -2710,7 +2711,7 @@
                esac
                ;;
 
-             *.framework)
+             *.ltframework)
                case $host in
                  *-*-darwin*)
                    depdepl="$deplib"
@@ -3235,7 +3236,7 @@
            ;;
          *-*-rhapsody* | *-*-darwin1.[012])
            # Rhapsody C library is in the System framework
-           deplibs="$deplibs System.framework"
+           deplibs="$deplibs System.ltframework"
            ;;
          *-*-netbsd*)
            # Don't link with libc until the a.out ld.so is fixed.
@@ -3528,7 +3529,7 @@
        case $host in
        *-*-rhapsody* | *-*-darwin1.[012])
          # On Rhapsody replace the C library is the System framework
-         newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / 
System.framework /'`
+         newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / 
System.ltframework /'`
          ;;
        esac
 
@@ -3574,11 +3575,11 @@
            fi
          fi
        fi
-       # Time to change all our "foo.framework" stuff back to "-framework foo"
+       # Time to change all our "foo.ltframework" stuff back to "-framework 
foo"
        case $host in
          *-*-darwin*)
-           newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's% \([^ 
$]*\).framework% -framework \1%g'`
-           dependency_libs=`$echo "X $dependency_libs" | $Xsed -e 's% \([^ 
$]*\).framework% -framework \1%g'`
+           newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's% \([^ 
$]*\).ltframework% -framework \1%g'`
+           dependency_libs=`$echo "X $dependency_libs" | $Xsed -e 's% \([^ 
$]*\).ltframework% -framework \1%g'`
            ;;
        esac
        # Done checking deplibs!
@@ -4171,8 +4172,8 @@
       case $host in
       *-*-rhapsody* | *-*-darwin1.[012])
        # On Rhapsody replace the C library is the System framework
-       compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / 
System.framework /'`
-       finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / 
System.framework /'`
+       compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / 
System.ltframework /'`
+       finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / 
System.ltframework /'`
        ;;
       esac
 
@@ -4183,9 +4184,9 @@
         compile_command="$compile_command ${wl}-bind_at_load"
         finalize_command="$finalize_command ${wl}-bind_at_load"
         fi
-       # Time to change all our "foo.framework" stuff back to "-framework foo"
-       compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's% \([^ 
$]*\).framework% -framework \1%g'`
-       finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's% \([^ 
$]*\).framework% -framework \1%g'`
+       # Time to change all our "foo.ltframework" stuff back to "-framework 
foo"
+       compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's% \([^ 
$]*\).ltframework% -framework \1%g'`
+       finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's% \([^ 
$]*\).ltframework% -framework \1%g'`
         ;;
       esac
 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]