1999-01-17 Alexandre Oliva <oliva@dcc.unicamp.br>
+ * ltconfig.in (need_lib_prefix, need_version,
+ deplibs_check_method): default to unknown, so that we're
+ remembered that this needs porting; unknown is interpreted as yes,
+ yes and none, respectively
+ (freebsd2*, freebsd3*, sunos4*, need_version): set to yes
+ (freebsd2*, freebsd3*, library_names_spec): libraries without a
+ version number are not used by `ld'; add $versuffix;
+ Reported by Ben Jackson <ben@ben.com>
+ * ltmain.in (deplibs_check_method): alias unknown to none
+ (need_version): if vinfo was not provided and release info was,
+ zero out versuffix only if we don't need_version.
+ * doc/libtool.texi: document what `unknown' means
+
* libltdl/ltdl.h (lt_dlpreopen_default): reverted to a macro
without arguments, that calls lt_dlpreopen_default_ with
lt_dlpreloaded_symbols
@item none
@vindex none
-is the default for all systems unless overridden in @file{ltconfig.in}
-(Currently, linux-elf is the only system that overrides.) It causes
-deplibs to be reassigned deplibs="". That way @samp{archive_cmds} can
-contain deplibs on all platforms, but not have deplibs used unless
-needed.
+It causes deplibs to be reassigned deplibs="". That way
+@samp{archive_cmds} can contain deplibs on all platforms, but not have
+deplibs used unless needed.
+
+@item unkwnon
+@vindex unknown
+is the default for all systems unless overridden in @file{ltconfig.in}.
+It is the same as @samp{none}, but it documents that we really don't
+know what the correct value should be, and we welcome patches that
+improve it.
@end table
Then in @file{ltmain.in} we have the real workhorse: a litle
@defvar need_lib_prefix
Whether libtool should automatically prefix module names with 'lib'.
-Set to @samp{yes} or @samp{no}.
+Set to @samp{yes} or @samp{no}. By default, it is @samp{unknown}, which
+means the same as @samp{yes}, but documents that we are not really sure
+about it.
@end defvar
@defvar need_version
Whether versioning is required for libraries.
-Set to @samp{yes} or @samp{no}.
+Set to @samp{yes} or @samp{no}. By default, it is @samp{unknown}, which
+means the same as @samp{yes}, but documents that we are not really sure
+about it.
@end defvar
@defvar no_builtin_flag
allow_undefined_flag=
no_undefined_flag=
-need_lib_prefix=yes
-need_version=yes
+need_lib_prefix=unknown
+need_version=unknown
archive_cmds=
archive_sym_cmds=
old_archive_from_new_cmds=
dynamic_linker="$host_os ld.so"
sys_lib_search_path="/lib /usr/lib /usr/local/lib"
file_magic_command=
-deplibs_check_method='none'
+deplibs_check_method='unkwnon'
# Need to set the preceding variable on all platforms that support
# interlibrary dependencies.
# 'none' -- dependencies not supported.
+# `unknown' -- same as none, but documents that we really don't known.
# 'pass_all' -- all dependencies passed with no checks.
# 'test_compile' -- check by making test program.
# 'file_regex' -- check by looking for filenames that look like the shared
freebsd2* | freebsd3*)
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
version_type=freebsd-$objformat
- library_names_spec='${libname}${release}.so$versuffix $libname.so'
+ library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
finish_cmds='PATH="$PATH:/sbin" OBJFORMAT="$objformat" ldconfig -m $libdir'
shlibpath_var=LD_LIBRARY_PATH
+ need_version=yes
;;
gnu*)
library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
shlibpath_var=LD_LIBRARY_PATH
+ need_version=yes
;;
sysv4.2uw2* | sysv4.3*)
$echo "$help" 1>&2
exit 1
fi
- if test "$need_lib_prefix" = yes; then
+ if test "$need_lib_prefix" != no; then
# Add the "lib" prefix for modules if required
name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`
eval libname=\"$libname_spec\"
# Clear the version info if we defaulted, and they specified a release.
if test -z "$vinfo" && test -n "$release"; then
major=
- versuffix=
verstring="0.0"
- case "$host" in
- *-*-sunos*)
+ if test "$need_version" = no; then
+ versuffix=
+ else
versuffix=".0.0"
- ;;
- esac
+ fi
fi
# Remove version info from name if versioning should be avoided
fi
done # Gone through all deplibs.
;;
- none | *) deplibs="" ;;
+ none | unknown | *) deplibs="" ;;
esac
versuffix=$versuffix_save
major=$major_save