Commit Graph

53 Commits

Author SHA1 Message Date
Thomas Tanner
b29cdab5af * ltmain.in: always link a library before its dependency libs
* mdemo/Makefile.am: test -export-symbols-regex
1999-03-30 23:32:07 +00:00
Thomas Tanner
3e89f4c492 * doc/libtool.texi: fixed a typo
* libtoolize.in: add the libtool scripts to libltdl.tar.gz
* libtool.m4: don't AC_SUBST(USE_SYMBOL_UNDERSCORE),
  AC_CHECK_LIBM sets LIBM, AC_LIBLTDL_INSTALLABLE doesn't work
  when libltdl is already installed
* *demo/Makefile.am: use LIBM
* *demo/configure.in: AC_SUBST LIBM
* libltdl/configure.in: use ac_cv_sys_symbol_underscore instead of
  USE_SYMBOL_UNDERSCORE
* ltconfig.in: added link_all_deplibs variable
* doc/libtool.texi: document it
* ltmain.in: always search for libname.la - don't eval libname_spec,
  when linking libraries against static ones just print a warning
  and add them to dependency_libs, add -lc before deplibs,
  always link all dependencies of a static library or if
  link_all_deplibs is yes, hardcode library paths if
  hardcode_into_libs is no, don't link against dependency_libs
  that already are deplibs
1999-03-30 19:22:41 +00:00
Thomas Tanner
e65f46d3fc * use the same header in all configure.in's and Makefile.am's
* NEWS: improved support for BeOS and Cygwin
* TODO: ILD branch was merged, all internal variables and macros
  are now documented
* demo/Makefile.am: use $(LIBS) instead of -lm
* doc/libtool.texi: documented new variable hardcode_into_libs
  and thread_safe_flag_spec, renamed all AM_ENABLE/DISABLE_* macros
  to AC_*, documented AC_DISABLE_FAST_INSTALL and AC_LIBTOOL_DLOPEN
* libltdl/ltdl.c: added two new error messages (cannot_open_error,
  cannot_close_error), use them where approriate,
  BeOS support (thanks to Xavier Pianet), on BeOS search modules
  additionally in ADDON_PATH
* libtool.m4: rewrote AC_CHECK_LIBM: BeOS and Cygwin don't have
  libm and *-ncr-sysv4.3* requires libmw
* ltconfig.in: don't check for LoadLibrary, hardcode dlopen
  configuration for BeOS and Cygwin
* ltmain.in: fix sourcing of .la files on Solaris
  (patch by Raja R Harinath)
1999-03-20 00:27:33 +00:00
Alexandre Oliva
030c6635a0 s/debug/static/ 1999-03-17 06:53:36 +00:00
Alexandre Oliva
61b5e233b4 added acinclude.m4 1999-03-14 05:43:03 +00:00
Alexandre Oliva
c853ec3163 * mdemo/main.c (main, test_dl, test_dlself): propagate error
conditions better, to avoid false positives
1999-03-11 22:13:00 +00:00
Alexandre Oliva
c7c23418fd * */configure.in: AC_SUBST(LIBTOOL_DEPS)
* */Makefile.am $(OBJECTS): depend on libtool
(libtool): rebuild automatically
1999-03-11 21:28:36 +00:00
Alexandre Oliva
b0dc971f4d * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h 1999-03-11 00:44:13 +00:00
Alexandre Oliva
68799c0077 * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
new macros
* NEWS: ditto
* libltdl/configure.in: if none of the new macros or configure
arguments are used, warn and build convenience library only
* libltdl/Makefile.am: conditionally build convenience libltdl.la
* mdemo/configure.in: use AC_LIBLTDL_CONVENIENCE
* mdemo/Makefile.am: refer to @LIBLTDL@
1999-03-09 22:02:09 +00:00
Alexandre Oliva
a78b093478 * libltdl/Makefile.am, libltdl/configure.in, mdemo/Makefile.am:
libltdl must not be renamed; if there's a problem with the install
option, let's fix it, not just work around it by breaking code of
users of the convenience library
1999-03-08 17:40:42 +00:00
Thomas Tanner
0984f95203 * TODO: updated (libltdl build problem fixed)
* doc/libtool.texi (libltdl interface): removed the line which
  promised that lt_dlopen will return NULL if it can't resolve all
  symbols
* libltdl/Makefile.am, libltdl/configure.in: fixed build problem:
  renamed the convenience library to libltdlc.la and the
  installed version to libltdl.la
* ltmain.in (wrapper script): replaced the "T" suffix of the program
  file name with a "lt-" prefix
* mdemo/Makefile.am: use libltdlc.la
* tests/Makefile.am, tests/demo-nofast.test: added demo to
  test --enable-fast-install=no
1999-03-08 15:56:45 +00:00
Thomas Tanner
3a381a67c0 * ltconfig.in (dlopen, dlopen_self): default is unknown
* ltmain.in: fixed -dlopen self, print a warning
  if -dlopen is used without AC_LIBTOOL_DLOPEN
* mdemo/Makefile.am: use -dlopen self
1999-02-22 21:17:56 +00:00
Thomas Tanner
c361d1cfeb * cdemo/Makefile.am: renamed *foo1 to *foo, removed $(MATH_LIB)
* cdemo/foo1.c: renamed to foo.c
* libltdl/ltdl.c: eliminated lt_dltype, in presym_open():
  search for @PROGRAM@ if filename == 0, in lt_dlopen():
  fixed bug for filename == 0
* libltdl/ltdl.h: use __P macro for lt_dlmalloc/free
* libtool.m4: new macro AC_LIBTOOL_DLOPEN: checks for dlopen
  and dlopen(NULL) support
* ltconfig.in: added new variables dlopen and dlopen_self,
  --enable-dlopen[-self] flags for AC_LIBTOOL_DLOPEN
* ltmain.in: use dlopen[_self], dlpreopen files if there's no
  dlopen support, build lt_preloaded_symbols only if
  -dl[pre]open was used, include program symbols if -export-dynamic
  was specified and there's no dlopen(NULL) support
* mdemo/configure.in: use AC_LIBTOOL_DLOPEN
* mdemo/main.c: demonstrate lt_dlopen(0)
1999-02-15 16:46:55 +00:00
Alexandre Oliva
2e6d9dc7a7 * libtool.m4 (AC_CHECK_LIBM): do not set MATHLIB or AC_SUBST it,
this has a negative side-effect of causing automake to add MATHLIB
to every single Makefile.  Let's use plain AC_CHECK_LIB, so that
LIBS get set, until we find a better alternative
* *demo/Makefile.am: remove $(MATHLIB)
1999-02-14 03:04:51 +00:00
Thomas Tanner
6d34bd85f0 * *demo/Makefile.am: use $(MATHLIB)
* *demo/configure.in: use AC_CHECK_LIBM
* doc/libtool.texi: renamed file_magic_command to file_magic_cmd,
  renamed archive_sym_cmds to archive_expsym_cmds
* ltconfig.in: ditto
* ltmain.in: ditto
* libltdl/ltdl.c: use lt_dlmalloc/free
* libltdl/ltdl.h: define lt_dlmalloc/free
* libtool.m4: added AC_CHECK_LIBM macro
* ltconfig.in: renamed archive_sym_cmds to archive_expsym_cmds,
  added always_export_symbols, export_symbols_cmd, exclude_expsyms,
  include_expsyms, removed archive_cmds for cygwin/mingw and AIX,
  on Solaris store the exported symbols list in objdir
* ltmain.in: allow -export-symbols for modules, use thread_safe flag,
  add include_expsyms to the exported symbols
1999-02-13 15:43:04 +00:00
Thomas Tanner
17915a088c * autogen: libltdl needs autoheader
* demo/Makefile.am: renamed hell.debug to hell.static
  (we're demonstrating static linking, not debugging)
* tests/demo*: ditto
* doc/libtool.texi (libltdl): documented new lt_dlopen(NULL)
  feature
* libltdl/acconfig.h: required for config.h
* libltdl/configure.in: use config.h
* libltdl/ltdl.c: use config.h, support lt_dlopen(NULL)
  (returns a handle for the program itself)
* ltconfig.in: minor reformatting
* ltmain.in: in lt_preloaded_symbols always define
  the program's symbols first, for -export-dynamic list all
  program symbols together, -export-symbols was broken for
  programs, minor reformatting
* mdemo/Makefile.am: renamed mdemo.debug to mdemo.static
* tests/mdemo*: ditto, mdemo.test was completely broken
1999-02-11 23:48:25 +00:00
Alexandre Oliva
e54b1b6916 * libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is
enabled, create to-be-installed libltdl.la within @TOINST@
directory
(noinst_LTLIBRARIES): even if installation is enabled, build
convenience libltdl.la, otherwise builds of random packages may
fail if the user happens to enable installation
(distclean-hook): wipe out $(TOINST)
* libltdl/configure.in: set TOINST and LIBLIBS as appropriate;
don't set NOINSTLIBS any more
* mdemo/Makefile.am: use libltdl.la
1999-01-27 06:15:21 +00:00
Alexandre Oliva
ad4654e94a * libltdl/configure.in (AC_PROG_LIBTOOL): automake does not
recognize it and fail, better keep using AM_PROG_LIBTOOL until the
next release of automake
* demo/configure.in, cdemo/configure.in: ditto
* depdemo/configure.in, mdemo/configure.in: ditto
1999-01-27 05:36:49 +00:00
Thomas Tanner
a5f6b87d4a * cdemo/configure.in: renamed AM_PROG_LIBTOOL to AC_PROG_LIBTOOL
* demo/configure.in: likewise
* depdemo/configure.in: likewise
* libltdl/configure.in: likewise
* mdemo/configure.in: likewise
* libltdl/ltdl.c: in find_module() check whether libdir is defined,
  tryall_dlopen(): move deallocation of an already opened handle
  to lt_dlopen(), allocate the directory in lt_dlopen() dynamically,
  minor cleanups, fixed memory leak (name)
* libtool.m4: renamed all AM_ macros to AC_ and added aliases for
  compatibilty, updated AC_SYS_NM_PARSE (no undefined symbols,
  don't count the symbols)
* ltconfig.in: added thread_safe_flag_spec (not used yet),
  added generic variable for linker options "linkopts" in
  all archive_cmds
* ltmain.in: added -thread-safe flag (unused)
1999-01-27 00:49:06 +00:00
Alexandre Oliva
f212b8d7df * mdemo/Makefile.am (../libltdl/libtool): if it does not exist,
the sub-make for libltdlc.la will take care of it, but we must at
least provide an empty rule for it, otherwise the sub-make will
never run
1999-01-22 09:39:15 +00:00
Alexandre Oliva
0506cf492e * demo/configure.in: set DLPREOPEN to -dlopen if we don't have
shared libraries
* demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen
(STATIC): use $(STATIC), not @STATIC@
* mdemo/Makefile.am (STATIC): ditto
* demo/Makefile.am, mdemo/Makefile.am (STATIC): do not use
1999-01-21 04:09:39 +00:00
Alexandre Oliva
72abadcd76 * tests/demo-shared.test, tests/demo-static.test: new tests
* tests/mdemo-shared.test, tests/mdemo-static.test: ditto
* tests/Makefile.am: ditto
* doc/libtool.texi: document them
* demo/Makefile.am, mdemo/Makefile.am (@STATIC@): do not use
-static unconditionally, it can't work with --disable-static
* demo/configure.in, mdemo/configure.in: check whether libtool was
configured to build static libraries and, if not, set STATIC to an
empty string
1999-01-21 03:50:07 +00:00
Alexandre Oliva
5053e11d81 * cdemo/main.c (main): use K&R definition syntax
* mdemo/main.c (test_dl, main): ditto
	(test_dl): casts return value of lt_dlsym to appropriate types
1999-01-20 18:42:10 +00:00
Alexandre Oliva
3770203057 * demo/configure.in (AC_C_CONST): added, for portability
* mdemo/configure.in (AC_C_CONST): ditto
	* libltdl/configure.in (AC_C_CONST, AC_C_INLINE): ditto
	* libltdl/ltdl.c (LTDL_FILENAME_MAX): use FILENAME_MAX if defined
	(FILENAME_MAX): replace all explicit uses with LTDL_FILENAME_MAX
	(presym_free_symlists, trim): don't return void, for portability
	(lt_dlgetsearchpath): replace (void) with __P((void))
1999-01-20 13:01:27 +00:00
Alexandre Oliva
bce83af75f * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove 1999-01-20 12:28:43 +00:00
Alexandre Oliva
27767b945e * mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen
flags to LDADD
	* doc/libtool.texi (Using Automake): how to add -dlopen to LDADD
1999-01-19 23:45:01 +00:00
Thomas Tanner
6b7c38b36c *** empty log message *** 1999-01-17 11:19:40 +00:00
Alexandre Oliva
3dfd80fb0d * mdemo/Makefile.am (../libltdl/libltdlc.la): depend on
../libtool, because ../libltdl/libtool depends on it
	(mdemo_debug_*): copy from mdemo_*, adding -static to LDFLAGS
1999-01-17 05:47:10 +00:00
Thomas Tanner
bfe6d93ab4 *** empty log message *** 1999-01-14 16:31:23 +00:00
Thomas Tanner
1f37f97bf1 *** empty log message *** 1999-01-14 15:07:12 +00:00
Alexandre Oliva
751b01ef7b * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
../libltdl
1999-01-13 22:07:33 +00:00
Thomas Tanner
94cfa949e2 *** empty log message *** 1999-01-13 21:39:14 +00:00
Thomas Tanner
89aa144652 *** empty log message *** 1999-01-12 20:42:47 +00:00
Alexandre Oliva
fbd5377930 * configure.in (AC_CONFIG_SUBDIRS): add libltdl, demo, mdemo and
depdemo commented out, so that `dist' works before `check'
	(BUILD_LTDL): will contain libltdl if --enable-ltdl-install
	* Makefile.am (DIST_SUBDIRS): expand SUBDIRS and add depdemo,
	commented out
	(SUBDIRS): add $(BUILT_LTDL)
	* libltdl/Makefile.am (EXTRA_LTLIBRARIES): add libtest.la, the
	same as libltdl but always a convenience library.  Not built by
	default.  Both libraries now depend on the libtool script, that
	depends on ../libtool and is rebuilt when needed
	* mdemo/Makefile.am (mdemo, mdemo.debug): depend on and link with
	../libltdl/libtest.la, that is rebuilt if needed
	(mdemo_LDADD): removed $(LIBADD_M), to avoid silent failures
	(foo1.la): renamed from libfoo1.la; test removing the lib prefix
	* mdemo/foo1.c: renamed libfoo1_LTX symbols to foo1_LTX
	* mdemo/main.c: don't include string.h nor math.h, nor refer to
	sin nor cos
	* tests/mdemo-exec.test: renamed libfoo1.la to foo1.la
	* tests/mdemo-inst.test: ditto
1999-01-10 19:16:30 +00:00
Thomas Tanner
662305576a *** empty log message *** 1999-01-10 14:44:06 +00:00
Alexandre Oliva
e842493250 *** empty log message *** 1999-01-09 20:05:55 +00:00
Thomas Tanner
2a246ffc0d *** empty log message *** 1999-01-09 09:51:44 +00:00
Thomas Tanner
ea4730f0a8 *** empty log message *** 1999-01-06 21:04:20 +00:00
Thomas Tanner
48218d83e7 *** empty log message *** 1998-12-31 11:25:57 +00:00
Thomas Tanner
c7c32517c0 *** empty log message *** 1998-12-25 10:39:59 +00:00
Alexandre Oliva
48c804561a * libltdl/Makefile.am: install libltdl conditionally...
* libltdl/configure.in: ... if --enable-ltdl-install is issued
	* libltdl/ltdl.c: removed #ifdef DEBUG
	* mdemo/Makefile.am (mdemo_debug_LDADD, mdemo_debug_DEPENDENCIES):
	use libltdl.la
1998-12-23 19:33:09 +00:00
Thomas Tanner
05928ae6f2 *** empty log message *** 1998-12-23 10:27:14 +00:00
Thomas Tanner
1d6e1de8a8 *** empty log message *** 1998-12-21 17:30:48 +00:00
Thomas Tanner
23d413543d *** empty log message *** 1998-12-18 22:23:51 +00:00
Alexandre Oliva
8ed98c1580 * Makefile.am (cvs-dist): our release tags are in lower case
(cvs-diff): ditto
	(EXTRA_DIST): added README-alpha
	(DIST_SUBDIRS): added depdemo
	* README-alpha: minor adaptations
	* demo/Makefile.am, mdemo/Makefile.am, depdemo/Makefile.am:
	removed comment about special needs for distribution
	* depdemo/Makefile.am: don't generate dependencies
	* depdemo/configure.in: modified version number
1998-12-16 06:22:02 +00:00
Alexandre Oliva
07978fe161 * ltmain.in (-force-static, force_static): removed
* libltdl/Makefile.am (CFLAGS): ditto
	* libltdl/configure.in: check for memory.h, rindex() and
	dlpreopening.  Fixed NEED_USCORE caching policy.
	* libltdl/ltdl.h (lt_dlsym): make the name argument const
	* libltdl/ltdl.c (types): new variable: head of list of available
	dlopening mechanisms
	(lt_dltype_t): interface of a dlopening mechanism, with pointers
	to functions for init, exit, open, close and sym
	(lt_dlhandle_t): added pointer to interface type
	(strdup): don't name it strdup; it can be troublesome
	(strrchr): ditto; use rindex if available
	(LIBTOOL_STATIC): check HAVE_DLPREOPEN instead, and move to the
	end of the file, so that it becomes the header of the list
	(all): renamed all interface-implementation functions, to avoid
	name clashes, and created lt_dltype_t nodes for all of them
	(lt_dlinit): initialize all available interfaces; remove those
	that fail from the list.  Return failure only if no interfaces
	could be initialized.
	(lt_dlexit): return number of failures
	(tryall_dlopen): try to open the library with all available
	interfaces
	(lt_dlopen): use tryall_dlopen; increased size of fixed buffers.
	We should probably make these bound-checked or dynamically
	allocated for the final release!  Fix bug when filename did not
	contain slashes; should we check for `\\' too?  Try old_library if
	everything else fails.
	(lt_dlclose): use the interface type for closing
	(lt_dlsym): make `symbol' const, use interface type for looking up
	* mdemo/Makefile.am: moved mdemo/modules/* back into mdemo
	(SUBDIRS): removed
	(libfoo2_la_LDFLAGS): added -static; nice test.  However, since it
	causes -lm to linked into hell*, it causes tests that should fail
	to pass
	(noinst_HEADERS): no need to install foo.h
	* mdemo/configure.in: remove modules/Makefile
	tests/mdemo-exec.test: updated accordingly
1998-12-16 05:42:23 +00:00
Thomas Tanner
1c3b55c703 *** empty log message *** 1998-12-11 23:21:03 +00:00
Thomas Tanner
3ce33a45f6 *** empty log message *** 1998-12-01 22:35:00 +00:00
Thomas Tanner
a4f2b1f846 *** empty log message *** 1998-11-23 21:26:38 +00:00
Alexandre Oliva
d4326213cb * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen
(hell_LDFLAGS): added -export-dynamic and -dlopen
	(SUBDIRS, INCLUDES): added modules directory
	(foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules
	* Makefile.am: ditto
	* tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved
	* mdemo/modules/Makefile.am: new file

	* */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies
1998-11-19 22:53:40 +00:00