mirror of
git://git.savannah.gnu.org/libtool.git
synced 2025-01-18 14:16:00 +08:00
* libltdl/ltdl.c: minor bugfixes, append a "/" the search
directory only if necessary * ltconfig.in: added support for FreeBSD >= 3.0 (patch from Kurt D. Zeilenga) * THANKS: added Kurt D. Zeilenga
This commit is contained in:
parent
05ba011011
commit
d045d768ee
@ -1,3 +1,11 @@
|
||||
1999-01-24 Thomas Tanner <tanner@gmx.de>
|
||||
|
||||
* libltdl/ltdl.c: minor bugfixes, append a "/" the search
|
||||
directory only if necessary
|
||||
* ltconfig.in: added support for FreeBSD >= 3.0
|
||||
(patch from Kurt D. Zeilenga)
|
||||
* THANKS: added Kurt D. Zeilenga
|
||||
|
||||
1999-01-24 Thomas Tanner <tanner@gmx.de>
|
||||
|
||||
* doc/libtool.texi (libltdl): list supported dlopen mechanisms,
|
||||
|
1
THANKS
1
THANKS
@ -26,6 +26,7 @@ Joel N. Weber II <devnull@gnu.org>
|
||||
Joseph Beckenbach III <jrb3@best.com>
|
||||
Karl Berry <kb@cs.umb.edu>
|
||||
Kenneth Albanowski <kjahds@kjahds.com>
|
||||
Kurt D. Zeilenga <Kurt@OpenLDAP.Org>
|
||||
Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
|
||||
Marc J. Fraioli <fraioli@dg-rtp.dg.com>
|
||||
Mark Elbrecht <snowball3@usa.net>
|
||||
|
@ -897,8 +897,11 @@ find_file (basename, search_path, pdir, handle)
|
||||
}
|
||||
if (!*filename)
|
||||
continue;
|
||||
strcat(filename, "/");
|
||||
lendir = strlen(filename);
|
||||
if (filename[lendir-1] != '/') {
|
||||
strcat(filename, "/");
|
||||
lendir++;
|
||||
}
|
||||
if (lendir+strlen(basename) < LTDL_FILENAME_MAX) {
|
||||
strcat(filename, basename);
|
||||
if (handle) {
|
||||
@ -907,7 +910,7 @@ find_file (basename, search_path, pdir, handle)
|
||||
} else {
|
||||
file = fopen(filename, LTDL_READTEXT_MODE);
|
||||
if (file) {
|
||||
filename[lendir+1] = '\0';
|
||||
filename[lendir] = '\0';
|
||||
strcpy(pdir, filename);
|
||||
return (lt_ptr_t) file;
|
||||
}
|
||||
@ -1071,7 +1074,7 @@ lt_dlopen (filename)
|
||||
return 0;
|
||||
}
|
||||
handle->usage = 0;
|
||||
if (tryall_dlopen(&handle, filename) && (*dir
|
||||
if (tryall_dlopen(&handle, filename) && (!*dir
|
||||
|| (find_file(basename, user_search_path, 0, &handle)
|
||||
&& find_file(basename, getenv("LTDL_LIBRARY_PATH"),
|
||||
0, &handle)
|
||||
@ -1130,7 +1133,7 @@ lt_dlopenext (filename)
|
||||
}
|
||||
#ifdef LTDL_SHLIB_EXT
|
||||
/* try "filename.EXT" */
|
||||
tmp[len-1] = '\0';
|
||||
tmp[len] = '\0';
|
||||
if (len+strlen(shlib_ext) >= sizeof(tmp)) {
|
||||
last_error = buffer_overflow_error;
|
||||
return 0;
|
||||
@ -1142,6 +1145,7 @@ lt_dlopenext (filename)
|
||||
return handle;
|
||||
}
|
||||
#endif
|
||||
last_error = file_not_found_error;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
15
ltconfig.in
15
ltconfig.in
@ -1215,6 +1215,11 @@ else
|
||||
fi
|
||||
;;
|
||||
|
||||
freebsd1*)
|
||||
ld_shlibs=no
|
||||
can_build_shared=no
|
||||
;;
|
||||
|
||||
# FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
|
||||
# support. Future versions do this automatically, but an explicit c++rt0.o
|
||||
# does not break anything, and helps significantly (at the cost of a little
|
||||
@ -1235,8 +1240,8 @@ else
|
||||
hardcode_shlibpath_var=no
|
||||
;;
|
||||
|
||||
# FreeBSD 3, at last, uses gcc -shared to do shared libraries.
|
||||
freebsd3*)
|
||||
# FreeBSD 3 and greater uses gcc -shared to do shared libraries.
|
||||
freebsd*)
|
||||
archive_cmds='$CC -shared -o $lib $libobjs $deplibs'
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
hardcode_direct=yes
|
||||
@ -1664,7 +1669,11 @@ cygwin32* | mingw32*)
|
||||
shlibpath_var=PATH
|
||||
;;
|
||||
|
||||
freebsd2* | freebsd3*)
|
||||
freebsd1*)
|
||||
dynamic_linker=no
|
||||
;;
|
||||
|
||||
freebsd*)
|
||||
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
|
||||
version_type=freebsd-$objformat
|
||||
case "$version_type" in
|
||||
|
Loading…
Reference in New Issue
Block a user