aboutsummaryrefslogtreecommitdiffstats
path: root/devel/libtool22/files/patch-libltdl_config_ltmain.sh
blob: 8dc8434921eb37f1a629a6a6cad8bff2a11ff489 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
--- libltdl/config/ltmain.sh.orig   2009-06-29 12:36:19.000000000 -0500
+++ libltdl/config/ltmain.sh    2009-06-29 12:57:44.000000000 -0500
@@ -1010,6 +1010,21 @@
 func_infer_tag ()
 {
     $opt_debug
+
+    # FreeBSD-specific: where we install compilers with non-standard names
+    tag_compilers_CC="*cc cc* *gcc gcc*"
+    tag_compilers_CXX="*c++ c++* *g++ g++*"
+    base_compiler=`set -- "$@"; echo $1`
+
+    # If $tagname isn't set, then try to infer if the default "CC" tag applies
+    if test -z "$tagname"; then
+      for zp in $tag_compilers_CC; do
+        case $base_compiler in
+    $zp) tagname="CC"; break;;
+   esac
+      done
+    fi
+
     if test -n "$available_tags" && test -z "$tagname"; then
       CC_quoted=
       for arg in $CC; do
@@ -1042,7 +1057,22 @@
          break
          ;;
        esac
-     fi
+
+       # FreeBSD-specific: try compilers based on inferred tag
+       if test -z "$tagname"; then
+         eval "tag_compilers=\$tag_compilers_${z}"
+         if test -n "$tag_compilers"; then
+       for zp in $tag_compilers; do
+         case $base_compiler in   
+           $zp) tagname=$z; break;;
+         esac
+       done
+       if test -n "$tagname"; then
+         break
+       fi
+         fi
+            fi
+          fi
    done
    # If $tagname still isn't set, then no tagged configuration
    # was found and let the user know that the "--tag" command
@@ -2528,6 +2558,9 @@
      ;;
    esac
    ;;
+      *-*-freebsd*)
+   # FreeBSD doesn't need this...
+   ;;
       *)
    func_fatal_error "unknown suffix for \`$my_dlsyms'"
    ;;
@@ -4584,6 +4617,7 @@
        *" $arg "*) ;;
        * ) new_inherited_linker_flags="$new_inherited_linker_flags $arg" ;;
    esac
+   deplibs="$deplibs $arg"
    continue
    ;;
 
@@ -5073,13 +5107,30 @@
        finalize_deplibs="$deplib $finalize_deplibs"
      else
        compiler_flags="$compiler_flags $deplib"
-       if test "$linkmode" = lib ; then
-       case "$new_inherited_linker_flags " in
-           *" $deplib "*) ;;
-           * ) new_inherited_linker_flags="$new_inherited_linker_flags $deplib" ;;
-       esac
-       fi
      fi
+
+     case $linkmode in
+     lib)
+       deplibs="$deplib $deplibs"
+       test "$pass" = conv && continue
+       newdependency_libs="$deplib $newdependency_libs"
+       ;;
+     prog)
+       if test "$pass" = conv; then
+         deplibs="$deplib $deplibs"
+         continue
+       fi
+       if test "$pass" = scan; then
+         deplibs="$deplib $deplibs"
+       else
+         compile_deplibs="$deplib $compile_deplibs"
+         finalize_deplibs="$deplib $finalize_deplibs"
+       fi
+       ;;
+     *)
+       ;;
+     esac # linkmode
+
      continue
      ;;
    -l*)