Backport -framework support from libtool 2.0

merge-requests/1/head
Mattias Ellert 2004-10-16 16:47:57 +00:00
rodzic 0983c94a43
commit 211711ccfa
2 zmienionych plików z 68 dodań i 16 usunięć

Wyświetl plik

@ -1,3 +1,7 @@
2004-10-16 Mattias Ellert <mattias.ellert@tsl.uu.se>
* ltmain.sh: backport -framework support from libtool 2.0
2004-10-16 Henning Meier-Geinitz <henning@meier-geinitz.de> 2004-10-16 Henning Meier-Geinitz <henning@meier-geinitz.de>
* frontend/saned.c: Fixed NULL string crash. * frontend/saned.c: Fixed NULL string crash.
@ -9,6 +13,7 @@
* backend/niash.c: Enabling support of full DIN A4 size * backend/niash.c: Enabling support of full DIN A4 size
2004-10-16 Oliver Rauch <Oliver.Rauch@Rauch-DOmain.DE> 2004-10-16 Oliver Rauch <Oliver.Rauch@Rauch-DOmain.DE>
* backend/umax.c: added default options for Linotype OPAL2 * backend/umax.c: added default options for Linotype OPAL2
2004-10-15 Henning Meier-Geinitz <henning@meier-geinitz.de> 2004-10-15 Henning Meier-Geinitz <henning@meier-geinitz.de>

Wyświetl plik

@ -28,8 +28,7 @@
# 2003-04-30: Henning Meier-Geinitz # 2003-04-30: Henning Meier-Geinitz
# * soname changed to "libsane" for every backend (all systems but AIX) # * soname changed to "libsane" for every backend (all systems but AIX)
# * fix version number for Irix # * fix version number for Irix
# * -framework addition for MacOS X (from Mattias Ellert # * backported -framework support for MacOS X from libtool 2.0
# <mattias.ellert@tsl.uu.se>)
basename="s,^.*/,,g" basename="s,^.*/,,g"
@ -1182,6 +1181,19 @@ EOF
prev= prev=
continue continue
;; ;;
framework)
case $host in
*-*-darwin*)
case "$deplibs " in
*" $qarg.ltframework "*) ;;
*) deplibs="$deplibs $qarg.ltframework" # this is fixed later
;;
esac
;;
esac
prev=
continue
;;
inst_prefix) inst_prefix)
inst_prefix_dir="$arg" inst_prefix_dir="$arg"
prev= prev=
@ -1413,6 +1425,11 @@ EOF
continue continue
;; ;;
-framework)
prev=framework
continue
;;
-inst-prefix-dir) -inst-prefix-dir)
prev=inst_prefix prev=inst_prefix
continue continue
@ -1479,7 +1496,7 @@ EOF
;; ;;
*-*-rhapsody* | *-*-darwin1.[012]) *-*-rhapsody* | *-*-darwin1.[012])
# Rhapsody C and math libraries are in the System framework # Rhapsody C and math libraries are in the System framework
deplibs="$deplibs -framework System" deplibs="$deplibs System.ltframework"
continue continue
esac esac
elif test "X$arg" = "X-lc_r"; then elif test "X$arg" = "X-lc_r"; then
@ -2059,6 +2076,18 @@ EOF
fi fi
fi fi
;; # -l ;; # -l
*.ltframework)
if test "$linkmode,$pass" = "prog,link"; then
compile_deplibs="$deplib $compile_deplibs"
finalize_deplibs="$deplib $finalize_deplibs"
else
deplibs="$deplib $deplibs"
if test "$linkmode" = lib ; then
newdependency_libs="$deplib $newdependency_libs"
fi
fi
continue
;;
-L*) -L*)
case $linkmode in case $linkmode in
lib) lib)
@ -2202,6 +2231,13 @@ EOF
*) . ./$lib ;; *) . ./$lib ;;
esac esac
case $host in
*-*-darwin*)
# Convert "-framework foo" to "foo.ltframework"
dependency_libs=`$echo "X$dependency_libs" | $Xsed -e 's/-framework \([^ $]*\)/\1.ltframework/g'`
;;
esac
if test "$linkmode,$pass" = "lib,link" || if test "$linkmode,$pass" = "lib,link" ||
test "$linkmode,$pass" = "prog,scan" || test "$linkmode,$pass" = "prog,scan" ||
{ test "$linkmode" != prog && test "$linkmode" != lib; }; then { test "$linkmode" != prog && test "$linkmode" != lib; }; then
@ -3342,7 +3378,7 @@ EOF
;; ;;
*-*-rhapsody* | *-*-darwin1.[012]) *-*-rhapsody* | *-*-darwin1.[012])
# Rhapsody C library is in the System framework # Rhapsody C library is in the System framework
deplibs="$deplibs -framework System" deplibs="$deplibs System.ltframework"
;; ;;
*-*-netbsd*) *-*-netbsd*)
# Don't link with libc until the a.out ld.so is fixed. # Don't link with libc until the a.out ld.so is fixed.
@ -3634,8 +3670,8 @@ EOF
case $host in case $host in
*-*-rhapsody* | *-*-darwin1.[012]) *-*-rhapsody* | *-*-darwin1.[012])
# On Rhapsody replace the C library is the System framework # On Rhapsody replace the C library with the System framework
newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'` newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
;; ;;
esac esac
@ -3684,6 +3720,14 @@ EOF
# Done checking deplibs! # Done checking deplibs!
deplibs=$newdeplibs deplibs=$newdeplibs
fi fi
# Time to change all our "foo.ltframework" stuff back to "-framework foo"
case $host in
*-*-darwin*)
newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
dependency_libs=`$echo "X $dependency_libs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
deplibs=`$echo "X $deplibs" | $Xsed -e 's% \([^ $]*\).ltframework% -framework \1%g'`
;;
esac
# All the library-specific variables (install_libdir is set above). # All the library-specific variables (install_libdir is set above).
library_names= library_names=
@ -4180,20 +4224,23 @@ EOF
case $host in case $host in
*-*-rhapsody* | *-*-darwin1.[012]) *-*-rhapsody* | *-*-darwin1.[012])
# On Rhapsody replace the C library is the System framework # On Rhapsody replace the C library with the System framework
compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'` compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'` finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / System.ltframework /'`
;; ;;
esac esac
case $host in case $host in
*darwin*) *-*-darwin*)
# Don't allow lazy linking, it breaks C++ global constructors # Don't allow lazy linking, it breaks C++ global constructors
if test "$tagname" = CXX ; then if test "$tagname" = CXX ; then
compile_command="$compile_command ${wl}-bind_at_load" compile_command="$compile_command ${wl}-bind_at_load"
finalize_command="$finalize_command ${wl}-bind_at_load" finalize_command="$finalize_command ${wl}-bind_at_load"
fi fi
;; # 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 esac
compile_command="$compile_command $compile_deplibs" compile_command="$compile_command $compile_deplibs"