* ltconfig.in (solaris): define `need_version' to no

1999-01-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* ltconfig.in (solaris): Define `deplibs_check_method',
	`file_magic_command', `need_lib_prefix' and `sys_lib_search_path'
	* ltmain.in (file_magic_regex): Add space before matching pattern,
	such that it works on solaris (solaris has a tab between the
	library name (including the colon) and the `ELF' and such the
	`ELF' will never be matched).
This commit is contained in:
Alexandre Oliva 1999-01-13 20:48:54 +00:00 committed by Alexandre Oliva
parent 2e68bf5aec
commit d9bc7946f9
3 changed files with 244 additions and 244 deletions

256
ChangeLog
View File

@ -1,3 +1,16 @@
1999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (solaris): define `need_version' to no
1999-01-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* ltconfig.in (solaris): Define `deplibs_check_method',
`file_magic_command', `need_lib_prefix' and `sys_lib_search_path'
* ltmain.in (file_magic_regex): Add space before matching pattern,
such that it works on solaris (solaris has a tab between the
library name (including the colon) and the `ELF' and such the
`ELF' will never be matched).
1999-01-13 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
* ltconfig.in (NM): PATH search was not updated like in
@ -2862,245 +2875,4 @@ Thu May 28 18:59:08 1998 Ian Lance Taylor <ian@cygnus.com>
* tests/tlibtool: Rewrote to grab all the settings from the generated
libtool script.
* tests/hardcode.test: Make allowances if shlibpath_var cannot be used
to find libraries at link time, such as on AIX.
1997-01-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Eval $link_static_flag. Reported by Bruno
Haible.
* PLATFORMS: Add to distribution. Suggested by Bruno Haible.
1997-01-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test,
tests/hardcode.test:
Use $make instead of make.
* tests/defs (make): Add definition of $make that uses the $MAKE
environment variable, if set. Suggested by Bruno Haible.
* tests/demo-unst.test (leftovers): Change the find command to ignore
files beginning with a dot, as egrep -v doesn't seem to do the
trick. Reported by Bruno Haible.
1997-01-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Add support for SCO OpenServer 5.x. From
Christopher Olsen.
(can_build_shared): Initialize at the top of the file, so that
shared libraries aren't built on platforms that don't support
them.
* tests/hardcode.test: Added a test to make sure that libtool's idea of
hardcoding system linkers is correct.
1997-01-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi:
Update the copyright completion years.
1997-01-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Port to IRIX 5.3, 6.2.
1997-01-06 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the
port is trivial.
* libtoolize.in: Add --dry-run option, -n for short.
1997-01-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't
understand "export something=val". From Bruno Haible.
* tests/Makefile.am (distclean-local): Remove all files that the tests
may have created. Reported by Bruno Haible.
* For all tests, discover srcdir when running from the command
line.
* tests/demo-unst.test: Don't fail if make uninstall doesn't delete
files beginning with a dot, since spurious .nfsXXX files may be
present when running NFS. Reported by Bruno Haible.
1997-01-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (compile): Recognize valid source file suffixes for
Fortran and C++.
* tests/suffix.test: New test to guarantee that libtool compile
recognizes valid source file suffices.
1996-12-17 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid
object type suffixes, in spite of Automake's current ansi2knr
implementation. Not all compilers allow non-`.o' suffixes.
1996-12-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Delete the `libtool' version type.
1996-12-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Use the full autoconf syntax when checking for GNU
C. Delete library stripping program, until we have a correct
test.
1996-12-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm. From Mark
Kettenis.
1996-12-09 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
Reported by Charles Kerr:
* doc/libtool.texi (Creating Object Files): Doc fix independant ->
independent.
* ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library
dependencies.
1996-12-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Release 0.7.
* Makefile.am (EXTRA_DIST): Add README-automake to the
distribution.
* ltmain.sh.in (link): When linking libtool libraries, use
standard objects if they are PIC. This prevents spurious warnings
about invalid suffixes on AIX.
* demo/Makefile.am: Rename libhell to libhello, so that we're not
quite as offensive.
* ltconfig.in: Remove unnecessary host validity checking.
* ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la
is good enough (for consistency with *.a handling).
* tests/demo.test: Break up into demo-conf.test, demo-make.test,
demo-exec.test, demo-inst.test, and demo-unst.test, so that passes
and failures are reported more quickly.
* tests/link-2.test: Test to make sure that .lo files don't get built
directly into programs.
1996-12-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Accept files ending in .a as standard
object files. Reported by Ulrich Drepper.
Remove support for creating profiled libraries (for now).
Transform all library objects into standard objects when linking a
program.
* ltconfig.in (thisdir): How embarrassing! An error in the regexp
for finding the directory component of the script path.
* tests/tlibtool: A typically-configured libtool script, that uses
../ltmain.sh.in for its backend.
* tests/link.test: Make sure that it is legal to link against .a files.
1996-12-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (compile): Support `.S' (preprocessed assembler)
files. Reported by Anthony Green.
* libtoolize.in: Give clearer instrutions for how to update
aclocal.m4.
* ltconfig.in, ltmain.sh.in (link): Add support for creating
reloadable objects.
1996-12-04 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (install): Fix passing -n flag to `libtool
--finish'.
(compile): Compile `.lo' and `.o' objects at the same time so that
non-PIC objects (if they are available) can be used for linking
into programs and creating static archives. Suggested by Ulrich
Drepper.
1996-12-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Give the full path to the libtool library
when sourcing it.
* ltconfig.in (old_striplib): Do a configuration test to determine
if old-style libraries actually can be stripped or not.
1996-12-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* tests/demo.test: Try compiling the ../demo subdirectory, with no
special options.
* test-e.test: Check that we haven't used `test -e' anywhere in
our portable shell scripts.
1996-12-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Delete reference to ABOUT-LIBS.
* tests: Added new subdirectory.
* doc/libtool.texi: Doc fixes, and finished up the Configuring
chapter.
* ltmain.sh.in (link): Allow *._o and *.l_o to be valid object
file suffixes, for Automake's ansi2knr implementation.
New option -version-info replaces -version-file.
[help]: Give a pointer to mode-specific help when appropriate.
* ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC.
* demo: Also test Automake's ansi2knr support.
1996-11-19 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Bug fixes for AIX 4, and for static platforms.
* ltmain.sh.in (install): Fix for loops over arguments.
Need to quote ${IFS= } -> "${IFS= }".
(link): Fix soname_spec bug. Create objdir whether or not we have
shared libraries.
* ltconfig.in: Check for library stripping program.
Use test -f instead of test -e.
1996-11-18 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't
set.
Be verbose about the environment variables we were configured
with.
* ltmain.sh.in (objdir): change to .libs.
1996-11-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (install): Just plunge ahead with the
installation... don't try to enforce dependencies.
1996-11-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Fix up $libdir to be $dest in install mode.
1996-11-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh: Finished rewrite of compile, link, and install
modes.
* New ChangeLog file for libtool-0.7, since I've totally rewritten
libtool.
1996-03-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* For historical reasons: this is when I started writing libtool.
* tes

View File

@ -1733,11 +1733,16 @@ sco3.2v5*)
solaris*)
version_type=linux
need_lib_prefix=no
need_version=no
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
soname_spec='${libname}${release}.so$major'
shlibpath_var=LD_LIBRARY_PATH
# ldd complains unless libraries are executable
postinstall_cmds='chmod +x $lib'
deplibs_check_method="file_magic ELF [0-9][0-9]-bit [LM]SB dynamic lib"
file_magic_command="file"
sys_lib_search_path="/lib /usr/lib /usr/local/lib `echo $LD_LIBRARY_PATH | sed -e 's/:/ /g'`"
;;
sunos4*)

227
ltmain.in
View File

@ -1578,7 +1578,7 @@ EOF
;;
file_magic* | file_regex)
set dummy $deplibs_check_method
file_magic_regex="`expr \"$deplibs_check_method\" : \"$2\(.*\)\"`"
file_magic_regex="`expr \"$deplibs_check_method\" : \"$2 \(.*\)\"`"
for a_deplib in $deplibs; do
name="`expr $a_deplib : '-l\(.*\)'`"
# If $name is empty we are operating on a -L argument.
@ -3019,4 +3019,227 @@ libdir='$install_libdir'\
if test -n "$library_names"; then
# Do each command in the postuninstall commands.
eval cmds=\"$postuninstall_cmds\"
IFS="${IFS= }"; save_i
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
$run eval "$cmd"
done
IFS="$save_ifs"
fi
if test -n "$old_library"; then
# Do each command in the old_postuninstall commands.
eval cmds=\"$old_postuninstall_cmds\"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
$run eval "$cmd"
done
IFS="$save_ifs"
fi
# FIXME: should reinstall the best remaining shared library.
fi
;;
*.lo)
if test "$build_old_libs" = yes; then
oldobj=`$echo "X$name" | $Xsed -e "$lo2o"`
rmfiles="$rmfiles $dir/$oldobj"
fi
$show "$rm $rmfiles"
$run $rm $rmfiles
;;
*)
$show "$rm $rmfiles"
$run $rm $rmfiles
;;
esac
done
exit 0
;;
"")
$echo "$modename: you must specify a MODE" 1>&2
$echo "$generic_help" 1>&2
exit 1
;;
esac
$echo "$modename: invalid operation mode \`$mode'" 1>&2
$echo "$generic_help" 1>&2
exit 1
fi # test -z "$show_help"
# We need to display help for each of the modes.
case "$mode" in
"") $echo \
"Usage: $modename [OPTION]... [MODE-ARG]...
Provide generalized library-building support services.
--config show all configuration variables
--debug enable verbose shell tracing
-n, --dry-run display commands without modifying any files
--features display basic configuration information and exit
--finish same as \`--mode=finish'
--help display this help message and exit
--mode=MODE use operation mode MODE [default=inferred from MODE-ARGS]
--quiet same as \`--silent'
--silent don't print informational messages
--version print version information
MODE must be one of the following:
compile compile a source file into a libtool object
execute automatically set library path, then run a program
finish complete the installation of libtool libraries
install install libraries or executables
link create a library or an executable
uninstall remove libraries from an installed directory
MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for
a more detailed description of MODE."
exit 0
;;
compile)
$echo \
"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
Compile a source file into a libtool library object.
This mode accepts the following additional options:
-static always build a \`.o' file suitable for static linking
COMPILE-COMMAND is a command to be used in creating a \`standard' object file
from the given SOURCEFILE.
The output file name is determined by removing the directory component from
SOURCEFILE, then substituting the C source code suffix \`.c' with the
library object suffix, \`.lo'."
;;
execute)
$echo \
"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]...
Automatically set library path, then run a program.
This mode accepts the following additional options:
-dlopen FILE add the directory containing FILE to the library path
This mode sets the library path environment variable according to \`-dlopen'
flags.
If any of the ARGS are libtool executable wrappers, then they are translated
into their corresponding uninstalled binary, and any of their required library
directories are added to the library path.
Then, COMMAND is executed, with ARGS as arguments."
;;
finish)
$echo \
"Usage: $modename [OPTION]... --mode=finish [LIBDIR]...
Complete the installation of libtool libraries.
Each LIBDIR is a directory that contains libtool libraries.
The commands that this mode executes may require superuser privileges. Use
the \`--dry-run' option if you just want to see what would be executed."
;;
install)
$echo \
"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND...
Install executables or libraries.
INSTALL-COMMAND is the installation command. The first component should be
either the \`install' or \`cp' program.
The rest of the components are interpreted as arguments to that command (only
BSD-compatible install options are recognized)."
;;
link)
$echo \
"Usage: $modename [OPTION]... --mode=link LINK-COMMAND...
Link object files or libraries together to form another library, or to
create an executable program.
LINK-COMMAND is a command using the C compiler that you would use to create
a program from several object files.
The following components of LINK-COMMAND are treated specially:
-all-static do not do any dynamic linking at all
-dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
-dlpreopen FILE link in FILE and add its symbols to dld_preloaded_symbols
-export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
-LLIBDIR search LIBDIR for required installed libraries
-lNAME OUTPUT-FILE requires the installed library libNAME
-no-undefined declare that a library does not refer to external symbols
-o OUTPUT-FILE create OUTPUT-FILE from the specified objects
-release RELEASE specify package release information
-rpath LIBDIR the created library will eventually be installed in LIBDIR
-R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
-static do not do any dynamic linking of libtool libraries
-version-info CURRENT[:REVISION[:AGE]]
specify library version info [each variable defaults to 0]
All other options (arguments beginning with \`-') are ignored.
Every other argument is treated as a filename. Files ending in \`.la' are
treated as uninstalled libtool libraries, other files are standard or library
object files.
If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
only library objects (\`.lo' files) may be specified, and \`-rpath' is
required, except when creating a convenience library.
If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
using \`ar' and \`ranlib', or on Windows using \`lib'.
If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
is created, otherwise an executable program is created."
;;
uninstall)
$echo
"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
Remove libraries from an installation directory.
RM is the name of the program to use to delete files associated with each FILE
(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed
to RM.
If FILE is a libtool library, all the files associated with it are deleted.
Otherwise, only FILE itself is deleted using RM."
;;
*)
$echo "$modename: invalid operation mode \`$mode'" 1>&2
$echo "$help" 1>&2
exit 1
;;
esac
echo
$echo "Try \`$modename --help' for more information about other modes."
exit 0
# Local Variables:
# mode:shell-script
# sh-indentation:2
# End: