libtool-patches
[Top][All Lists]
Advanced

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

ltmain-dunno-yo-lib-make-specific-01.patch


From: Guido Draheim
Subject: ltmain-dunno-yo-lib-make-specific-01.patch
Date: Sun, 05 Aug 2001 01:31:48 +0200

There are five different places saying
  echo "*** Warning: This library needs some functionality provided by $deplib."
  echo "*** I have the capability to make that library automatically link in 
when"
  echo "*** you link to this library.  But I can only do this if you have a"
  echo "*** shared version of the library, which you do not appear to have."
but each one is provoked by a different check. They should be different.

The following patch changes the first "warning:" line into something 
more specific that points maintainers to the actual kind of check that
failed during execution. Furthermore it adds one or two lines to the
end of this message block explaining things to the user where this
message had been found not quite intelligible in many cases.

Hope this one gets into cvs soon.
--- ltmain.in.orig      Sat Aug  4 22:47:39 2001
+++ ltmain.in   Sun Aug  5 01:22:30 2001
@@ -1789,10 +1789,12 @@
          lib)
            if test "$deplibs_check_method" != pass_all; then
              echo
-             echo "*** Warning: This library needs some functionality provided 
by $deplib."
+             echo "*** Warning: Trying to link with static lib archive 
$deplib."
              echo "*** I have the capability to make that library 
automatically link in when"
              echo "*** you link to this library.  But I can only do this if 
you have a"
-             echo "*** shared version of the library, which you do not appear 
to have."
+             echo "*** shared version of the library, which you do not appear 
to have"
+             echo "*** because the file extensions .$libext of this argument 
makes me believe"
+             echo "*** that it is just a static archive that I should not used 
here."
            else
              echo
              echo "*** Warning: Linking the shared library $output against the"
@@ -2274,13 +2276,14 @@
            # Just print a warning and add the library to dependency_libs so
            # that the program can be linked against the static library.
            echo
-           echo "*** Warning: This library needs some functionality provided 
by $lib."
+           echo "*** Warning: This system can not link to static lib archive 
$lib."
            echo "*** I have the capability to make that library automatically 
link in when"
            echo "*** you link to this library.  But I can only do this if you 
have a"
            echo "*** shared version of the library, which you do not appear to 
have."
            if test "$module" = yes; then
-             echo "*** Therefore, libtool will create a static module, that 
should work "
-             echo "*** as long as the dlopening application is linked with the 
-dlopen flag."
+             echo "*** But as you try to build a module library, libtool will 
still create "
+             echo "*** a static module, that should work as long as the 
dlopening application"
+             echo "*** is linked with the -dlopen flag to resolve symbols at 
runtime."
              if test -z "$global_symbol_pipe"; then
                echo
                echo "*** However, this would only work if libtool was able to 
extract symbol"
@@ -2876,10 +2879,12 @@
                else
                  droppeddeps=yes
                  echo
-                 echo "*** Warning: This library needs some functionality 
provided by $i."
+                 echo "*** Warning: dynamic linker does not accept needed 
library $i."
                  echo "*** I have the capability to make that library 
automatically link in when"
                  echo "*** you link to this library.  But I can only do this 
if you have a"
-                 echo "*** shared version of the library, which you do not 
appear to have."
+                 echo "*** shared version of the library, which I believe you 
do not have" 
+                 echo "*** because a test_compile did reveal that the linker 
did not use it for"
+                 echo "*** its dynamic dependency list that programs get 
resolved with at runtime."
                fi
              else
                newdeplibs="$newdeplibs $i"
@@ -2906,10 +2911,12 @@
                  else
                    droppeddeps=yes
                    echo
-                   echo "*** Warning: This library needs some functionality 
provided by $i."
+                   echo "*** Warning: dynamic linker does not accept needed 
library $i."
                    echo "*** I have the capability to make that library 
automatically link in when"
                    echo "*** you link to this library.  But I can only do this 
if you have a"
-                   echo "*** shared version of the library, which you do not 
appear to have."
+                   echo "*** shared version of the library, which you do not 
appear to have"
+                   echo "*** because a test_compile did reveal that the linker 
did not use this one"
+                   echo "*** as a dynamic dependency that programs can get 
resolved with at runtime."
                  fi
                else
                  droppeddeps=yes
@@ -2966,10 +2973,17 @@
              if test -n "$a_deplib" ; then
                droppeddeps=yes
                echo
-               echo "*** Warning: This library needs some functionality 
provided by $a_deplib."
+               echo "*** Warning: linker path does not have real file for 
library $a_deplib."
                echo "*** I have the capability to make that library 
automatically link in when"
                echo "*** you link to this library.  But I can only do this if 
you have a"
-               echo "*** shared version of the library, which you do not 
appear to have."
+               echo "*** shared version of the library, which you do not 
appear to have"
+               echo "*** because I did check the linker path looking for a 
file starting"
+               if test -z "$potlib" ; then
+                 echo "*** with $libname but no candidates were found. (...for 
file magic test)"
+               else
+                 echo "*** with $libname and none of the candidates passed a 
file format test"
+                 echo "*** using a file magic. Last file checked: $potlib"
+               fi
              fi
            else
              # Add a -L argument.
@@ -2988,6 +3002,7 @@
              for i in $lib_search_path $sys_lib_search_path 
$shlib_search_path; do
                potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
                for potent_lib in $potential_libs; do
+                 potlib="$potent_lib" # see symlink-check above in file_magic 
test
                  if eval echo \"$potent_lib\" 2>/dev/null \
                      | sed 10q \
                      | egrep "$match_pattern_regex" > /dev/null; then
@@ -3000,10 +3015,17 @@
              if test -n "$a_deplib" ; then
                droppeddeps=yes
                echo
-               echo "*** Warning: This library needs some functionality 
provided by $a_deplib."
+               echo "*** Warning: linker path does not have real file for 
library $a_deplib."
                echo "*** I have the capability to make that library 
automatically link in when"
                echo "*** you link to this library.  But I can only do this if 
you have a"
-               echo "*** shared version of the library, which you do not 
appear to have."
+               echo "*** shared version of the library, which you do not 
appear to have"
+               echo "*** because I did check the linker path looking for a 
file starting"
+               if test -z "$potlib" ; then
+                 echo "*** with $libname but no candidates were found. (...for 
regex pattern test)"
+               else
+                 echo "*** with $libname and none of the candidates passed a 
file format test"
+                 echo "*** using a regex pattern. Last file checked: $potlib"
+               fi
              fi
            else
              # Add a -L argument.

reply via email to

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