11999-03-15 Alexandre Oliva <oliva@dcc.unicamp.br> 2 3 * configure.in, libtool.spec, NEWS: bump to 1.3a 4 * Branched for release 1.3 (branch-1-3) 5 * configure.in, libtool.spec, NEWS: bump to 1.2g 6 7 * configure.in, libtool.spec: bump to 1.2f 8 * doc/PLATFORMS: ditto 9 * NEWS: libtool 1.2f released 10 11 * ltmain.in: silence ``unbug'' :-) detected by sh.test 12 131999-03-14 Alexandre Oliva <oliva@dcc.unicamp.br> 14 15 * TODO: we now use full pathnames for `file' 16 171999-03-14 Thomas Tanner <tanner@gmx.de> 18 19 * TODO: libltdl is now documented 20 * doc/libltdl.texi (linking with installed libtool libraries): 21 fixed typo 22 * doc/libltdl.texi (libltdl): added documentation for building 23 libtool modules and examples how to embed libltdl 24 * ltmain.in: don't ignore user-specified run-paths (fixed it 25 at the right place) 26 271999-03-14 Alexandre Oliva <oliva@dcc.unicamp.br> 28 29 * ltmain.in (deplibs_check_method=none): discard -L and -R 30 switches when testing whether deplibs contains some library 31 321999-03-14 Erez Zadok <ezk@cs.columbia.edu> 33 34 * config.sub: recognize hppa2.0w, yet to be installed at GNU 35 36 * config.guess: minor update for FreeBSD-elf, yet to be installed 37 at GNU 38 391999-03-14 Alexandre Oliva <oliva@dcc.unicamp.br> 40 41 * ltconfig.in (bsdi4*, sys_lib_search_path_spec, 42 sys_lib_dlsearch_path_spec): fix thinko in variable names; add 43 standard directories 44 45 * ltmain.in (exclude_expsyms): exclude symbols before sorting, 46 otherwise only the sorted list will have them excluded 47 48 * ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*, 49 bsdi4*): use full pathnames when possible 50 51 * Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST 52 (all-local, check-local): remove, unused 53 54 * doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up; 55 reorder; untabify 56 57 * config.guess, config.sub: updated from GNU common 58 59 * doc/libtool.texi: notes on thread-safety problems of 60 libltdl/dlopen on GNU/Linux and FreeBSD 61 62 * ltconfig.in (aix3*, aix4*): GNU ld on AIX is very broken: it 63 cannot create working shared libraries. Print a warning 64 suggesting the user not to use it and disable shared libraries. 65 661999-03-13 Alexandre Oliva <oliva@dcc.unicamp.br> 67 68 * ltconfig.in (global_symbol_to_cdecl): was reset before trying 69 `symprfx=_', rendering the test with `_' useless 70 71 * doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes 72 73 * doc/libtool.texi: complete dlopening/libltdl documentation 74 75 * ltconfig.in (osf3*, osf4*, deplibs_check_method): pass_all does 76 not really work; use file_magic instead. 77 (osf3*, osf4*): customize sys_lib_[dl]search_path_spec 78 79 * ltconfig.in (file_magic_test_file): new variable; if set, it 80 will be used as an argument for $file_magic_cmd to test whether 81 the regex in deplibs_check_method matches its output 82 (file_magic_cmd): use full pathnames whenever possible 83 84 * ltconfig.in (sys_lib_dlsearch_path_spec): new variable, that 85 lists the system *run-time* search path. Listed directories are 86 not implicitly hard-coded into executables. 87 * ltmain.in: use it, but *never* discard -R flags 88 * doc/libtool.texi: document it 89 * NEWS: ditto 90 Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us> 91 92 * tests/sh.test: look for `$Xsed' without `$echo "X...' 93 * ltconfig.in, ltmain.in: fixed a few such occurrences 94 95 * ltmain.in (-static, -all-static): revert March 11's patch, I was 96 barking up the wrong tree 97 981999-03-12 Thomas Tanner <tanner@gmx.de> 99 100 * libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX 101 is sufficient and doesn't break HP/UX 102 1031999-03-11 Alexandre Oliva <oliva@dcc.unicamp.br> 104 105 * ltconfig.in: (global_symbol_pipe) extract symbol tag from the 106 output of NM too 107 (global_symbol_to_cdecl): new variable; convert the output of 108 global_symbol_pipe to valid C declarations; on HP/UX, convert 109 text symbols to function declarations 110 * libtool.m4: similar modifications 111 * doc/libtool.texi: document new variable 112 * ltmain.in: use global_symbol_to_cdecl to generate lt_dlpreopened 113 symbols; avoid extracting symbol lists from dlpreopened files 114 twice; do not filter symbols from dlpreopened libraries 115 * TODO: fixed HP/UX dlpreopening problem 116 117 * ltmain.in (-static, -all-static): set dlopen_self to 118 $dlopen_self_static regardless of link_static_flag or pic_flag 119 120 * ltmain.in: FreeBSD bug that needs symbol table compiled with 121 -fPIC is fixed in release 3.1; use it only for 2.* and 3.0 122 1231999-03-11 Thomas Tanner <tanner@gmx.de> 124 125 * ltmain.in: when building a library it doesn't make 126 sense to remove a relinked program ("lt-" prefix) 127 1281999-03-11 Alexandre Oliva <oliva@dcc.unicamp.br> 129 130 * mdemo/main.c (main, test_dl, test_dlself): propagate error 131 conditions better, to avoid false positives 132 133 * */configure.in: AC_SUBST(LIBTOOL_DEPS) 134 * */Makefile.am $(OBJECTS): depend on libtool 135 (libtool): rebuild automatically 136 137 * ltconfig.in: set dlopen_* variables to unknown when appropriate 138 * ltmain.in: only emit warning about lack of AC_LIBTOOL_DLOPEN if 139 *all* dlopen_* variables are set to unknown 140 1411999-03-11 Thomas Tanner <tanner@gmx.de> 142 143 * ltmain.in: delete the old output files (incl. the relinked binary) 144 before linking. 145 146 * ltconfig.in: replaced `configure' with $progname and all 147 line numbers with @LINENO@ 148 1491999-03-11 Alexandre Oliva <oliva@dcc.unicamp.br> 150 151 * libltdl/ltdl.c (strdup): cannot return str when it's NULL 152 because of const correctness 153 1541999-03-10 Alexandre Oliva <oliva@dcc.unicamp.br> 155 156 * libltdl/ltdl.c (strdup): always use our own, because the 157 standard strdup won't use lt_dlmalloc 158 159 * ltconfig.in (dlfcn.h): function definition may cause warnings; 160 define variable instead 161 162 * ltmain.in: properly create an export file for a program, 163 avoiding error messages about not finding it 164 165 * TODO: need to document AC_LIBLTDL_*; static self dlopening 166 problem fixed 167 168 * libtool.m4 (AC_LIBTOOL_DLOPEN): just set lt_dlopen=yes 169 (AC_LIBTOOL_SETUP): if lt_dlopen=yes, add --enable-dlopen to 170 libtool_flags; drop --enable-dlopen-self 171 * ltconfig.in: perform all the dirty work of testing for dlopening 172 support, because we need platform-dependent equivalents for 173 -export-dynamic, for self dlopening, and -static, for static self 174 dlopening 175 (dlopen_self_static): new configuration variable that is set to 176 yes only if static programs can dlopen themselves 177 * ltmain.in (-static, -all-static): dlopen_self=dlopen_self_static 178 179 * libltdl/configure.in (libltdl_cv_need_uscore): do not assume 180 dlfcn.h and LTDL_LAZY exist; use LTDL_GLOBAL and LTDL_LAZY_OR_NOW. 181 This test is likely to fail if self-dlopening does not work, 182 especially because we do not link the program with 183 -export-dynamic. Let's just hope that platforms whose symbol 184 names start with underscores will also accept underscores for 185 dlopen. We should probably use libtool to compile and link this 186 test, so that we can use -export-dynamic. 187 188 * mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h 189 190 * configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh 191 so that they work if srcdir is relative too 192 193 * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE): 194 avoid introducing multiple --enable options when re-running 195 config.status 196 * libltdl/configure.in: if enable_ltdl_* is not set, assume no 197 * configure.in: if enable_ltdl_install is not set, enable it 198 199 * libltdl/configure.in: only assume implicit installation if 200 libltdl was libtoolized. If not, print a warning message 201 suggesting the use of --enable-ltdl-install or of one of the 202 AC_LIBLTDL_* macros. 203 204 * libtool.m4 (AC_LIBTOOL_SETUP): new macro, that does all the 205 configure-work that AC_PROG_LIBTOOL used to do; add 206 --cache-file=$cache_file to libtool_flags 207 (AC_PROG_LIBTOOL): call AC_LIBTOOL_SETUP, save the cache, run 208 ltconfig and reload the cache 209 * configure.in: run AC_LIBTOOL_SETUP, then set LIBTOOL_FLAGS to 210 libtool_flags 211 * ltconfig.in: support --cache-file switch. If it is used, load 212 the cache in the beginning and save it just before terminating 213 214 * tests/Makefile.am (TESTS): run demo-nofast before demo-shared 215 216 * configure.in: create ltconfig and ltmain.sh at the end of 217 config.status, if they do not exist. This fixes the bootstrap 218 problem reported by Erez Zadok <ezk@cs.columbia.edu> 219 2201999-03-10 Thomas Tanner <tanner@gmx.de> 221 222 * NEWS: sorted by importance 223 * Makefile.am: set LIBTOOL_FLAGS when generating libtool 224 * configure.in: check for dlopen support and set LIBTOOL_FLAGS 225 accordingly 226 227 * configure.in: fix spacing for --disable-ltdl-install, 228 always configure libltdl, add libltdl/acinclude.m4 to 229 ACINCLUDE_M4_LIST, disable installation of libltdl if necessary 230 * libltdl/Makefile.am: set version info for libltdl.la 231 * libltdl/configure.in: don't check whether 232 enable_ltdl_convenience/install was set so that libltdl 233 can be used as independent package (libltdl.tar.gz) without 234 the need to use --enable-ltdl* 235 * libltdl/ltdl.c: minor cleanups, allocate the line cache 236 dynamically (lt_dlopen) 237 2381999-03-10 Alexandre Oliva <oliva@dcc.unicamp.br> 239 240 * libltdl/ltdl.c (lt_dlopen): some preprocessors choke if the `#' 241 of `#define' is not in column 1; let's go back to fortran! :-) 242 Add #undefs too, to avoid potential warnings or errors. 243 2441999-03-09 Alexandre Oliva <oliva@dcc.unicamp.br> 245 246 * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE): 247 renamed convenience libltdl, dropped toinst hack for installable 248 * libltdl/Makefile.am: ditto 249 * libltdl/configure.in: ditto; abort if none of the macros is used 250 251 * ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt- 252 2531999-03-09 Thomas Tanner <tanner@gmx.de> 254 255 * libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the 256 constant strings 257 2581999-03-09 Alexandre Oliva <oliva@dcc.unicamp.br> 259 260 * Makefile.am (install-data-hook): install libltdl as a directory, 261 not as a tar-file, so that we do not modify the build tree at make 262 install time 263 * libtoolize.in (ltdl, ltdl_tar): update 264 265 * configure.in, Makefile.am, NEWS: install libltdl by default 266 267 * libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE): 268 new macros 269 * NEWS: ditto 270 * libltdl/configure.in: if none of the new macros or configure 271 arguments are used, warn and build convenience library only 272 * libltdl/Makefile.am: conditionally build convenience libltdl.la 273 * mdemo/configure.in: use AC_LIBLTDL_CONVENIENCE 274 * mdemo/Makefile.am: refer to @LIBLTDL@ 275 2761999-03-09 Gary V. Vaughan <gvv@techie.com> 277 278 * NEWS: updated. 279 2801999-03-08 Alexandre Oliva <oliva@dcc.unicamp.br> 281 282 * ltmain.in: extract symbols from program objects to nlist first, 283 then translate them to the export_symbols format. Now it works, 284 but it appears to be needlessly extracting the symbol list from 285 dlpreopened libraries twice 286 287 * ltmain.in: temporarily disable dlopen_self when linking with 288 -static or -all-static, until we figure out how to test whether it 289 works at configure time 290 291 * TODO: remember to fix this later 292 293 * tests/build-relink.test: when hell is expected to fail, run it 294 within a subshell and redirect stderr to stdout, so that dynamic 295 linker errors are only printed in verbose mode 296 297 * ltmain.in (hardcode_libdir_separator, compile_rpath, 298 finalize_rpath): only substitute hardcode_libdir_flag_spec if 299 hardcode_libdirs is non-empty 300 301 * libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence 302 of dlfcn.h nor on the definition of RTLD_LAZY 303 304 * tests/build-relink.test: hellT was renamed to lt-hell 305 306 * libltdl/Makefile.am (@TOINST@/libltdl.la): do not hide the 307 command that creates the TOINST directory; remove `-o $@' from the 308 LINK command, $(LINK) already contains it. 309 3101999-03-08 Thomas Tanner <tanner@gmx.de> 311 312 * doc/libtool.texi (tests): documented demo-nofast.test and 313 renamed cdemo* to demo* 314 3151999-03-08 Alexandre Oliva <oliva@dcc.unicamp.br> 316 317 * libltdl/Makefile.am, libltdl/configure.in, mdemo/Makefile.am: 318 libltdl must not be renamed; if there's a problem with the install 319 option, let's fix it, not just work around it by breaking code of 320 users of the convenience library 321 322 * tests/build-relink.test: link broken libhello.la with at least 323 one libtool object 324 3251999-03-08 Thomas Tanner <tanner@gmx.de> 326 327 * TODO: updated (libltdl build problem fixed) 328 * doc/libtool.texi (libltdl interface): removed the line which 329 promised that lt_dlopen will return NULL if it can't resolve all 330 symbols 331 * libltdl/Makefile.am, libltdl/configure.in: fixed build problem: 332 renamed the convenience library to libltdlc.la and the 333 installed version to libltdl.la 334 * ltmain.in (wrapper script): replaced the "T" suffix of the program 335 file name with a "lt-" prefix 336 * mdemo/Makefile.am: use libltdlc.la 337 * tests/Makefile.am, tests/demo-nofast.test: added demo to 338 test --enable-fast-install=no 339 3401999-03-07 Alexandre Oliva <oliva@dcc.unicamp.br> 341 342 * tests/Makefile.am (TESTS): run hardcode before build-relink 343 trashes libhello.la 344 * tests/hardcode.test (need_prefix): set to yes so that _inst is 345 not removed 346 347 * ltmain.in (compile_command): append finalize search path to 348 compile search path 349 350 * tests/build-relink.test: new; check shlibpath_overrides_runpath 351 * tests/Makefile.am (TESTS): add build-relink.test; remove 352 hardcode.test duplicates 353 * doc/libtool.texi: document it 354 355 * ltmain.in (relink_command): do not prepend cd `pwd` to it, the 356 scripts already enters the correct directory, and expanding the 357 pathname would prevent the build tree from moving 358 359 * ltconfig.in (enable_fast_install): force it to no only if we 360 need relink; in the other cases, set it to needless 361 * ltmain.in (fast_install): if needless, set relink_command empty 362 * doc/libtool.texi (fast_install, shlibpath_overrides_runpath): 363 document the new behavior 364 365 * ltconfig.in (enable_fast_install): test whether it can be forced 366 off after shlibpath_overrides_runpath and enable_shared are set 367 3681999-03-07 Thomas Tanner <tanner@gmx.de> 369 370 * TODO: updated 371 * NEWS: updated 372 373 * TODO: scheduled some items for next release/future 374 * demo/configure.in: use AC_LIBTOOL_DLOPEN 375 * libtool.m4: added AC_ENABLE/DISABLE_FAST_INSTALL macro 376 * ltconfig.in: added --disable-fast-install flag 377 * ltmain.in: partially reverted Alexandre's patch and implemented 378 on-demand linking in such a way that the old developer-friendly 379 linking style is optional, 380 don't hardcode library paths that are in the system search path, 381 fixed a typo in lib_search_path, 382 implemented -export-symbols-regex for programs 383 3841999-03-06 Alexandre Oliva <oliva@dcc.unicamp.br> 385 386 * libltdl/ltdl.c (LTDL_LAZY_OR_NOW): renamed from LTDL_NOW; prefer 387 LAZY loading because it's much faster and NOW is apparently 388 partially broken on FreeBSD 389 Reported by Archie Cobbs <archie@whistle.com> 390 391 * ltconfig.in (archive_expsym_cmds, solaris, without_gnu_ld): 392 $lib.exp already starts with $objdir/ 393 Reported by Godmar Back <gback@cs.utah.edu> 394 395 * ltmain.in (freebsd): compile symbol table file with pic_flag 396 only on FreeBSD and when not static linking; it's been causing 397 trouble on platforms such as OpenBSD. 398 3991999-02-26 Gary V. Vaughan <gvv@techie.com> 400 401 * libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g. Must've 402 missed this file when I changed to cygnus' new sanction name. 403 404 * ltconfig.in (sub_uncdrive): removed. This won't work with 405 the next version of cygwin. 406 (sub_uncdir): removed. We use <drive>:/path/to/executable now. 407 * libtool.m4 (AC_PROG_LD): removed sub_uncdrive and sub_uncdir. 408 4091999-02-25 Thomas Tanner <tanner@gmx.de> 410 411 * TODO: added items for next alpha release, ILD etc. 412 * libltdl/ltdl.c: removed unnecessary check from presym_sym, 413 fixed bug in lt_dlclose, allow lt_dlopenext(NULL), 414 set deplibs for lt_dlopen(NULL) 415 4161999-02-24 Alexandre Oliva <oliva@dcc.unicamp.br> 417 418 * ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d' 419 4201999-02-22 Thomas Tanner <tanner@gmx.de> 421 422 * ltconfig.in (dlopen, dlopen_self): default is unknown 423 * ltmain.in: fixed -dlopen self, print a warning 424 if -dlopen is used without AC_LIBTOOL_DLOPEN 425 * mdemo/Makefile.am: use -dlopen self 426 4271999-02-22 Alexandre Oliva <oliva@dcc.unicamp.br> 428 429 * ltmain.in: added missing mkdir $progdir for on-demand executable 430 431 * ltmain.in: create on-demand executable as $progdir/$$-$program, 432 and rename it to $progdir/$program only when it's finished, to 433 avoid race conditions. We can still get the program linked 434 multiple times, if multiple instances are started simultaneously 435 and the program does not exist, but they are very unlikely to 436 interfere with each other. There's still a possibility that one 437 process removes the $program another has just created, and doesn't 438 replace it before the other tries to run it, in a system whose 439 `mv' is not atomic, so it will $rm then $mv, but so what? :-) 440 Locking files have been avoided to prevent dead-locks in case they 441 are left over after a reboot or crash. 442 443 * TODO: removed ILD, soon to be merged, and added convenience 444 libraries docs 445 446 * ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes 447 448 * ltmain.in: remove on-demand executable in the proper place, and 449 just warn if it can't be removed; add wrapper code to test whether 450 the install-executable is newer than the build-executable, to 451 relink it when it appears to be out-of-date 452 453 * libltdl/configure.in: check for dld.h 454 * libltdl/ltdl.c: include dld.h 455 (dld_open) it's spelled memory_error, not no_memory_error 456 Reported by Stefan Burstroem <f94sbu@efd.lth.se> 457 458 * ltmain.in: fix typos in my last change (s/ocmpile/compile/) 459 4601999-02-21 Thomas Tanner <tanner@gmx.de> 461 462 * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle 463 when dlopening the executable 464 * libtool.m4 (AC_LIBTOOL_DLOPEN): removed the redundant "yes: " 465 prefix for lt_cv_dlopen, renamed lt_cv_dlopen_LIBS 466 to lt_cv_dlopen_libs (more consistent) 467 * ltmain.in: implemented -dl[pre]open self, necessary for 468 lt_dlopen(NULL), generation of exported symbols was broken 469 4701999-02-20 Alexandre Oliva <oliva@dcc.unicamp.br> 471 472 * ltmain.in: avoid duplication of -L switches, it sometimes breaks 473 IRIX 5.2's linker 474 475 * ltconfig.in (freebsd*, finish_cmds): expand objformat here 476 Reported by Vladimir Kushnir <kushn@mail.kar.net> 477 4781999-02-20 Vladimir Kushnir <kushn@mail.kar.net> 479 480 * ltconfig.in (freebsd-elf*, need_version, need_lib_prefix): no 481 (freebsd-elf*, library_names_spec): add $libname.so instead of 482 $libname.so$versuffix; add $libname$release.so 483 4841999-02-20 Alexandre Oliva <oliva@dcc.unicamp.br> 485 486 * doc/libtool.texi: remove ticks from menu items; it breaks TeX 487 Reported by Erez Zadok <ezk@cs.columbia.edu> 488 489 * ltmain.in: fixes for export-symbols dry-run 490 491 * ltconfig.in (shlibpath_overrides_runpath): new variable; 492 determines whether LD_LIBRARY_PATH or equivalent can be used to 493 override a hard-coded library search path; default to unknown 494 (linux-gnu*): set it to no 495 (solaris*, sunos4*): set it to yes 496 * ltmain.in (build_libdirs_flags, build_libdirs, build_rpath): if 497 shlibpath_overrides_runpath is not yes, arrange that wrapper 498 scripts create, on demand, programs that use uninstalled libraries 499 500 * doc/libtool.texi: document it 501 502 * libtool.m4 (AC_LIBTOOL_DLOPEN): check for dlopen in libc before 503 trying in dl. Add the actual dlopening type to lt_cv_dlopen, and 504 add any needed libraries to lt_cv_dlopen_LIBS. Add test for 505 MS-Windows' LoadLibrary. Check whether a program can dlopen 506 itself only if we really have dlopen(), not some equivalent 507 function, but leave room for testing with other mechanisms. 508 (AC_PROG_LIBTOOL): assume some form of dlopen, but not 509 dlopen(NULL), is available if AC_LIBTOOL_DLOPEN is not used, for 510 backward compatibility. 511 5121999-02-20 Archie Cobbs <archie@whistle.com> 513 514 * libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle 515 where appropriate, when dlopening a non-libtool library 516 5171999-02-19 Gary V. Vaughan <gvv@techie.com> 518 519 * ltconfig.in (export_symbols_cmds): renamed from 520 export_symbols_cmd. 521 (cygwin, mingw): Be sure to compile the ltdll.c object before 522 extracting the exported symbol list. Extract only the names 523 of the exported symbols from the def file [otherwise we might 524 run into trouble with -export-symbols-regex]. 525 (archive_expsym_cmds): Regenerate the def file from the symbol 526 export list. 527 (delay_variable_subst): New sed expression to allow us to delay 528 evaluation of $foo in a double_quote_subst evaluated variable by 529 using \$. 530 * ltmain.in (export_symbols_cmds): evaluate each ~ delimitted cmd 531 separately. 532 * doc/libtool.texi (libtool script contents): new paragraph to 533 explain the difference between _cmd and _cmds suffixes for 534 variable names. 535 (export_symbols_cmds): renamed from export_symbols_cmd. 536 5371999-02-18 Alexandre Oliva <oliva@dcc.unicamp.br> 538 539 * ltconfig.in (ld_shlibs): move -soname and similar flags to the 540 end of archive_cmds and archive_expsym_cmds, so as to prevent 541 gcc's collect2 from inserting an object file between -soname and 542 the library name 543 544 * ltconfig.in (openbsd*, netbsd*, library_names_spec): append 545 alternate name without ${release}, otherwise build fails when 546 -release is used 547 5481999-02-18 Gary V. Vaughan <gvv@techie.com> 549 550 * ltconfig.in (archive{,_sym}_commands): Be careful not to 551 re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and 552 _cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry 553 function being called with inter-dll dependencies. 554 Reported by DJ Delorie <dj@delorie.com> 555 * THANKS: Added DJ Delorie, since his code inspired the impgen.c 556 program and because he has patiently answered all of the 557 irritating dll and win32 questions I have fired at him. 558 559 * ltmain.in (version_type): Oops. Irix versioning implies that 560 major version numbers are 1 based (not zero based). Fixed. 561 562 * ltmain.in (version_type): Implement irix versioning. 563 * ltconfig.in (irix{5,6}*): Use new irix shared object versioning. 564 * TODO: remove irix versioning from TODO list. 565 566 * ltmain.in (impgen.c): Added a new embedded C file that can be 567 used under win32 to extract a def file (symbol export list) from a 568 dll that has none. Code to use it might need to wait for the ILD 569 merge before it will be useful... 570 5711999-02-18 Thomas Tanner <tanner@gmx.de> 572 573 * TODO: updated 574 * autogen: only libltdl needs autoheader 575 * doc/libtool.texi (link mode): documented -export-symbols-regex 576 and updated -export-symbols 577 * doc/libtool.texi (script contents): documented 578 always_export_symbols, export_symbols_cmd, exclude_expsyms, 579 include_expsyms, dlopen and dlopen_self 580 more detailed description of need_lib_prefix 581 * ltconfig.in: a "'" was missing in the default value 582 of export_symbols_cmd 583 * ltmain.in: implemented -export-symbols-regex 584 5851999-02-17 Alexandre Oliva <oliva@dcc.unicamp.br> 586 587 * ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude 588 _GLOBAL_OFFSET_TABLE_ 589 * ltmain.in: implement exclude_expsyms with egrep 590 591 * libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope 592 with argument lists, we __P even in the definition 593 5941999-02-15 Thomas Tanner <tanner@gmx.de> 595 596 * cdemo/Makefile.am: renamed *foo1 to *foo, removed $(MATH_LIB) 597 * cdemo/foo1.c: renamed to foo.c 598 * libltdl/ltdl.c: eliminated lt_dltype, in presym_open(): 599 search for @PROGRAM@ if filename == 0, in lt_dlopen(): 600 fixed bug for filename == 0 601 * libltdl/ltdl.h: use __P macro for lt_dlmalloc/free 602 * libtool.m4: new macro AC_LIBTOOL_DLOPEN: checks for dlopen 603 and dlopen(NULL) support 604 * ltconfig.in: added new variables dlopen and dlopen_self, 605 --enable-dlopen[-self] flags for AC_LIBTOOL_DLOPEN 606 * ltmain.in: use dlopen[_self], dlpreopen files if there's no 607 dlopen support, build lt_preloaded_symbols only if 608 -dl[pre]open was used, include program symbols if -export-dynamic 609 was specified and there's no dlopen(NULL) support 610 * mdemo/configure.in: use AC_LIBTOOL_DLOPEN 611 * mdemo/main.c: demonstrate lt_dlopen(0) 612 6131999-02-15 Gary V. Vaughan <gvv@techie.com> 614 615 * demo/dlmain.c (_WIN32): The lt_symlist structure is now const, 616 so my original horrible temporary win32 hack no longer worked. 617 Here is a new horrible temporary hack to prevent helldl from SEGVing 618 on win32. I will fix this properly when we figure out how to do 619 data exports from dlls. 620 6211999-02-14 Alexandre Oliva <oliva@dcc.unicamp.br> 622 623 * libtool.m4 (AC_CHECK_LIBM): do not set MATHLIB or AC_SUBST it, 624 this has a negative side-effect of causing automake to add MATHLIB 625 to every single Makefile. Let's use plain AC_CHECK_LIB, so that 626 LIBS get set, until we find a better alternative 627 * *demo/Makefile.am: remove $(MATHLIB) 628 629 * libltdl/configure.in: add a DESCRIPTION argument to AC_DEFINEs 630 where appropriate, so as to get rid of acconfig.h 631 * libltdl/acconfig.h: removed 632 6331999-02-13 Thomas Tanner <tanner@gmx.de> 634 635 * *demo/Makefile.am: use $(MATHLIB) 636 * *demo/configure.in: use AC_CHECK_LIBM 637 * doc/libtool.texi: renamed file_magic_command to file_magic_cmd, 638 renamed archive_sym_cmds to archive_expsym_cmds 639 * ltconfig.in: ditto 640 * ltmain.in: ditto 641 * libltdl/ltdl.c: use lt_dlmalloc/free 642 * libltdl/ltdl.h: define lt_dlmalloc/free 643 * libtool.m4: added AC_CHECK_LIBM macro 644 * ltconfig.in: renamed archive_sym_cmds to archive_expsym_cmds, 645 added always_export_symbols, export_symbols_cmd, exclude_expsyms, 646 include_expsyms, removed archive_cmds for cygwin/mingw and AIX, 647 on Solaris store the exported symbols list in objdir 648 * ltmain.in: allow -export-symbols for modules, use thread_safe flag, 649 add include_expsyms to the exported symbols 650 6511999-02-12 Gary V. Vaughan <gvv@techie.com> 652 653 * libltdl/ltdl.h (_LTDLL_EXTERN): libltdl is no longer linked as a 654 shared library, so the _declspec's were preventing the linker from 655 resolving symbols on win32. They have been removed now. 656 6571999-02-12 Alexandre Oliva <oliva@dcc.unicamp.br> 658 659 * ltmain.in: don't try to read objdir/libname.la before it is 660 created! 661 662 * ltmain.in: create libname.lai at link time, not at install time, 663 but still create it at install time if it is missing 664 Reported by Akim Demaille <demaille@inf.enst.fr> 665 666 * libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed 667 6681999-02-11 Thomas Tanner <tanner@gmx.de> 669 670 * autogen: libltdl needs autoheader 671 * demo/Makefile.am: renamed hell.debug to hell.static 672 (we're demonstrating static linking, not debugging) 673 * tests/demo*: ditto 674 * doc/libtool.texi (libltdl): documented new lt_dlopen(NULL) 675 feature 676 * libltdl/acconfig.h: required for config.h 677 * libltdl/configure.in: use config.h 678 * libltdl/ltdl.c: use config.h, support lt_dlopen(NULL) 679 (returns a handle for the program itself) 680 * ltconfig.in: minor reformatting 681 * ltmain.in: in lt_preloaded_symbols always define 682 the program's symbols first, for -export-dynamic list all 683 program symbols together, -export-symbols was broken for 684 programs, minor reformatting 685 * mdemo/Makefile.am: renamed mdemo.debug to mdemo.static 686 * tests/mdemo*: ditto, mdemo.test was completely broken 687 6881999-02-10 Alexandre Oliva <oliva@dcc.unicamp.br> 689 690 * ltconfig.in (irix5*, irix6*, osf3*, osf4*): do not use 691 -set_version in archive_cmds if verstring is empty 692 (irix6*, shlibpath_var, sys_lib_search_path-spec, 693 deplibs_check_method): set appropriate values depending on 694 selected ABI, -32, -n32 or -64, as set in LD by libtool.m4 695 (uts4*): remove dot between .so and versuffix 696 6971999-02-08 Alexandre Oliva <oliva@dcc.unicamp.br> 698 699 * ltconfig.in (irix5*, irix6*, deplibs_check_method): use 700 file_magic for inter-library dependency tracking 701 702 * ltconfig.in (irix5*, hardcode_libdir_separator): set it to a 703 colon, because on IRIX 5 only the last -rpath switch prevails, and 704 it can be a list of colon-separated directories. This change will 705 affect irix6 too, but that's not a problem. 706 707 * ltconfig.in (irix5*, library_names_spec): add soname_spec, 708 otherwise we can't dlopen 709 7101999-02-08 Thomas Tanner <tanner@gmx.de> 711 712 * ltconfig.in: according to Marcus Sundberg <mackan@stacken.kth.se> 713 HP/UX, IRIX, OpenBSD, Digital Unix and SunOS support 714 need_version=no and need_lib_prefix=no, 715 fixed a bug in Solaris' archive_sym_cmds 716 7171999-02-04 Alexandre Oliva <oliva@dcc.unicamp.br> 718 719 * libtool.m4 (ac_cv_sys_global_symbol_pipe): accept TAB in 720 addition to space as separator, and allow more than one space 721 between the symbol code and the symbol name; HP/UX's nm, for 722 example, uses two spaces 723 * ltconfig.in (global_symbol_pipe): ditto 724 (bsdi4, deplibs_check_method): variable name was misspelled 725 * libltdl/configure.in (libltdl_cv_preloaded_symbols): rewrite 726 test, so as not to depend on the way global_symbol_pipe is 727 initialized; the current test would get false positives, as 728 global_symbol_pipe was initialized `x=""', not `x=' 729 730 * libltdl/ltdl.c (find_module): initialize filename if dir is NULL 731 Reported by Godmar Back <gback@cs.utah.edu> 732 7331999-02-04 Godmar Back <gback@cs.utah.edu> 734 735 * libltdl/ltdl.c (lt_dlopenext): missing space for terminator when 736 allocating memory for shlib_ext 737 7381999-02-03 Alexandre Oliva <oliva@dcc.unicamp.br> 739 740 * libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext 741 was longer than 3 characters 742 7431999-02-02 Gary V. Vaughan <gvv@techie.com> 744 745 * ltconfig.in: new config.guess returns *-*-cygwin now instead of 746 *-*-cygwin32. sed -e 's%\(cygwin\|mingw\)32%\1%g' ltconfig.in 747 * ltmain.in: sed -e 's%\(cygwin\|mingw\)32%\1%g' ltmain.in 748 749 * ltconfig.in (hardcode_libdir_flag_spec, allow_undefined_flag, 750 archive_cmds, archive_sym_cmds, old_archive_from_new_cmds): 751 removed duplication of config by assuming that `test $with_gcc = 752 yes' implies gnu ld, otherwise MSVC++ (which I haven't tested 753 since I inheritted the code from Ian Lance Taylor btw!) is implied. 754 7551999-01-28 Gary V. Vaughan <gvv@techie.com> 756 757 * ltmain.in: Reverted this change of Alexandre's from the 758 1999-01-25; "don't try to use .o instead of .lo just because 759 there's no PIC flag. It loses if --disable-static, and there's 760 not much point if we're referring to the same file anyway...", 761 because not all linkers will accept .lo object names. 762 * ltmain.in: In the case where --disable-static is specified (as 763 noted in Alexandre's log entry), we just link some .o files to 764 prevent the original error. 765 Reported by Andrey Slepuhin <pooh@msu.ru> 766 7671999-01-27 Alexandre Oliva <oliva@dcc.unicamp.br> 768 769 * libtoolize.in: search for A[MC]_PROG_LIBTOOL, not 770 AM_PROG_LIBTOOL 771 Reported by Jeff Garzik <jgarzik@pobox.com> 772 7731999-01-27 Gary V. Vaughan <gvv@techie.com> 774 775 * THANKS: Now that we have a policy, applied it to the existing 776 list. This in no way demeans the work of those people removed 777 from the THANKS file, who are still credited in the ChangeLogs and 778 without who's work, libtool would not work so well on many 779 platforms, but serves to highlight the outstanding and continued 780 contribution the remaining people have made. And I quote, "We 781 reserve THANKS for people who have made major contributions, and 782 leave the credit to the others for the ChangeLog only." 783 784 * THANKS: added Sam Vilain. 785 * ltconfig.in ($echo): When using printf to replace echo the shell 786 expands %s\n to %sn. Changed to use "%s\n" (with quotes). 787 Reported by Sam Vilain <sam.vilain@nz.unisys.com> 788 7891999-01-27 Alexandre Oliva <oliva@dcc.unicamp.br> 790 791 * libltdl/ltdl.c (find_file): fix endless loop condition 792 (find_module): filename allocation was off by 1 793 794 * libltdl/Makefile.am (distclean-local): renamed from 795 distclean-hook, that didn't work 796 797 * libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on 798 failure 799 800 * Makefile.am (ltconfig, ltmain.sh): some broken makes don't like 801 macros in targets; replace $(srcdir) with @srcdir@ 802 * configure.in (ACINCLUDE_M4_LIST): same problem; expand $srcdir 803 804 * libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is 805 enabled, create to-be-installed libltdl.la within @TOINST@ 806 directory 807 (noinst_LTLIBRARIES): even if installation is enabled, build 808 convenience libltdl.la, otherwise builds of random packages may 809 fail if the user happens to enable installation 810 (distclean-hook): wipe out $(TOINST) 811 * libltdl/configure.in: set TOINST and LIBLIBS as appropriate; 812 don't set NOINSTLIBS any more 813 * mdemo/Makefile.am: use libltdl.la 814 815 * libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed 816 817 * libltdl/ltdl.c (find_file): allocate filename dynamically 818 819 * libltdl/configure.in (AC_PROG_LIBTOOL): automake does not 820 recognize it and fail, better keep using AM_PROG_LIBTOOL until the 821 next release of automake 822 * demo/configure.in, cdemo/configure.in: ditto 823 * depdemo/configure.in, mdemo/configure.in: ditto 824 825 * libltdl/ltdl.c: make all global strings char[], not char*; check 826 that all calls to malloc() are properly cast 827 (strdup, strchr, strrchr, trim, free_vars): declare as inline 828 (find_module): allocate filename dynamically; support null dir 829 (free_vars): free dir and name only if non-null 830 (lt_dlopen): keep dir as NULL if not given; fix expression that 831 calculated the size of name; only free and name if non-null 832 (lt_dlopenext): allocate tmp dynamically 833 834 * configure.in (pkgdatadir): expand ${PACKAGE} at configure-time, 835 just like automake does 836 837 * configure.in (pkgdatadir): define pkgdatadir explicitly, and 838 comment that automake does not need it, but libtoolize does 839 840 * Makefile.am (aclocaldir): do not set it explicitly, automake 841 does already 842 843 * configure.in (TIMESTAMP): use mkstamp here too 844 8451999-01-27 Thomas Tanner <tanner@gmx.de> 846 847 * cdemo/configure.in: renamed AM_PROG_LIBTOOL to AC_PROG_LIBTOOL 848 * demo/configure.in: likewise 849 * depdemo/configure.in: likewise 850 * libltdl/configure.in: likewise 851 * mdemo/configure.in: likewise 852 * libltdl/ltdl.c: in find_module() check whether libdir is defined, 853 tryall_dlopen(): move deallocation of an already opened handle 854 to lt_dlopen(), allocate the directory in lt_dlopen() dynamically, 855 minor cleanups, fixed memory leak (name) 856 * libtool.m4: renamed all AM_ macros to AC_ and added aliases for 857 compatibilty, updated AC_SYS_NM_PARSE (no undefined symbols, 858 don't count the symbols) 859 * ltconfig.in: added thread_safe_flag_spec (not used yet), 860 added generic variable for linker options "linkopts" in 861 all archive_cmds 862 * ltmain.in: added -thread-safe flag (unused) 863 8641999-01-26 Alexandre Oliva <oliva@dcc.unicamp.br> 865 866 * ltconfig.in (LTCONFIG_VERSION): damn!, adding TIMESTAMP doesn't 867 always work, because then different ChangeLog timestamps fail to 868 pass the version test. Instead of forcing both ltconfig and 869 ltmain.sh to be updated every time ChangeLog changes, better 870 revert it 871 872 * ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove 873 explicit quotes and add it to the list of variables to quote 874 875 * ltmain.in: reworded `dropped inter-library dependencies' 876 message, and added a warning about inter-library dependencies even 877 for non-module builds 878 8791999-01-26 Gary V. Vaughan <gvv@techie.com> 880 881 * Makefile.am (install-data-hook): Don't show the if expression 882 that tests for gzip with a conditional error message; just do it 883 quietly and show the error if it fails, or the next action if it 884 succeeds. 885 886 * configure.in: It seems Alexandre accidentally removed the 887 AC_SUBST(pkgdatadir) line recently which breaks libtoolize. 888 Reverted that small change. 889 8901999-01-25 Alexandre Oliva <oliva@dcc.unicamp.br> 891 892 * libltdl/ltdl.c (find_module): test old_name and dlname for NULL, 893 not len==0 894 895 * libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/" 896 in configure.in was much simpler 897 * libltdl/ltdl.c (objdir): ditto 898 899 * libltdl/ltdl.c (objdir): string collation isn't portable; strcat 900 "/" explicitly. Or should this be moved to configure.in? 901 9021999-01-25 Thomas Tanner <tanner@gmx.de> 903 904 * libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically 905 9061999-01-25 Alexandre Oliva <oliva@dcc.unicamp.br> 907 908 * ltmain.in (file_magic): use egrep instead of expr to support 909 more general regular expressions 910 (file_regex): remove it; the name is misleading, it's not used 911 anywhere, and probably will never be 912 * ltconfig.in, doc/libtool.texi: ditto 913 * ltconfig.in (linux-gnu*, deplibs_check_method): extend regex to 914 support `LSB dynamic lib' in the output of `file' 915 Reported by Scott D. Heavner <sdh@po.cwru.edu> 916 917 * ltmain.in (dependency_libs, xrpath): add -R switches to 918 dependency_libs only just before creating the .la file; they 919 should not be passed to the C compiler or linker at 920 library-creation time, since we don't know whether it is supported 921 922 * ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6, 923 this must be `no' 924 925 * mkstamp: move the sed script to extract revision and date 926 information into a separate shell-script, so that we can break 927 lines between commands; FreeBSD's sed doesn't like `;' after `t' 928 Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de> 929 * Makefile.am: use mkstamp 930 * THANKS: added Axel Thimm 931 932 * ltmain.in: don't try to use .o instead of .lo just because 933 there's no PIC flag. It loses if --disable-static, and there's 934 not much point if we're referring to the same file anyway... 935 936 * ltmain.in (pass_all=none, droppeddeps): set only if deplibs was 937 non-empty 938 9391999-01-24 Thomas Tanner <tanner@gmx.de> 940 941 * libltdl/ltdl.c: minor bugfixes, append a "/" the search 942 directory only if necessary 943 * ltconfig.in: added support for FreeBSD >= 3.0 944 (patch from Kurt D. Zeilenga) 945 * THANKS: added Kurt D. Zeilenga 946 9471999-01-24 Thomas Tanner <tanner@gmx.de> 948 949 * doc/libtool.texi (libltdl): list supported dlopen mechanisms, 950 added function lt_dlopenext(), removed reference to 951 LTDL_PRELOADED_SYMBOLS in LTDL_SET_PRELOADED_SYMBOLS 952 * libltdl/ltdl.c: partially reverted Alexandre's dynamic string 953 allocation change (it was not necessary and the code was unreadable), 954 cleanups, removed usr_search_path_size, renamed usr_search_path 955 to user_search_path, in find_module() also check for moved 956 modules, merged find_file() and find_library(), 957 added lt_dlopenext(), in lt_dladdsearchdir() no longer reset 958 the search path if 'search_dir' == NULL and don't use realloc() 959 (might not be available on all platforms), 960 removed __P((void)) in the declaration of lt_dlgetsearchpath() 961 * libltdl/ltdl.h: added lt_dlopenext() 962 * ltconfig.in: AIX archive commands were broken, 963 fixed a MAJOR bug in global_symbol_pipe which caused 964 "demo-shared.test;demo-make.test" to fail (libtool must not extract 965 undefined symbols of libraries, i.e. symcode must not contain 'U') 966 * tests/Makefile.am (clean-local): "make distclean" in cdemo, too 967 9681999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br> 969 970 * Makefile.am (ltconfig, ltmain.sh): add ChangeLog Revision to 971 TIMESTAMP 972 * configure.in: get values of PACKAGE and VERSION set by 973 AM_INIT_AUTOMAKE, and extract only TIMESTAMP from the ChangeLog 974 975 * libltdl/ltdl.c (lt_dlopen): if we're reusing a previously opened 976 handle, don't reset its name nor add it to the list, and free the 977 name we have allocated 978 Reported by Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM> 979 980 * Makefile.am (ltconfig, ltmain.sh, TIMESTAMP): let's not assume 981 anything about the format of the date, just that it does not 982 contain `$' 983 9841999-01-22 Gary V. Vaughan <gvv@techie.com> 985 986 * configure.in (date): echo the version number during 987 configuration, and show $date for cvs versions. 988 989 * Makefile.am ($(srcdir)/ltconfig): Oops. cvs co keyword 990 expansion ate the sed expression! Changed sed separator to '%' 991 because there are '/' in the date. Added missing '\(' to search 992 expression. Inserted a null string to stop cvs from expanding it 993 next time =)O| 994 ($(srcdir)/ltmain.sh): ditto. 995 9961999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br> 997 998 * Makefile.am (TSDEPS_DIST): dist-time dependencies for timestamps 999 (timestamps, update-timestamps): check whether TSDEPS_DIST are 1000 up-to-date and update ltconfig and ltmain.sh if needed 1001 (ltconfig, ltmain.sh): depend on TSDEPS; replace @TIMESTAMP@ with 1002 the Date tag in the ChangeLog 1003 (TSDEPS): empty unless overridden by update-timestamps 1004 * ltconfig.in, ltmain.in (TIMESTAMP): append timestamp to most 1005 references to VERSION 1006 10071999-01-22 Gary V. Vaughan <gvv@techie.com> 1008 1009 * ltmain.in (ild): Revert the change which allowed libtool to 1010 link libraries with dependencies on .la libs. 1011 * NEWS: Removed reference to win32, incase 1.3 ships before 1012 ild is ready. 1013 * doc/PLATFORMS: Removed i686-pc-cygwin32, for the same reason. 1014 * doc/libtool.texi: Removed win32 refs, for the same reason. 1015 10161999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br> 1017 1018 * ltmain.in (Xsed): add 1 to Xsed definition that goes into 1019 temporary wrapper scripts 1020 * libtool.m4: we don't have Xsed here, expand it manually 1021 Reported by Pavel Roskin <pavel_roskin@geocities.com> 1022 10231999-01-22 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM> 1024 1025 * ltmain.in (finalize_hardcode_libdirs, finalize_rpath): in 1026 platforms that use -rpath, programs must be finalized at 1027 installation time, otherwise build-tree programs will 1028 prefer installed libraries over build-tree ones 1029 10301999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br> 1031 1032 * mdemo/Makefile.am (../libltdl/libtool): if it does not exist, 1033 the sub-make for libltdlc.la will take care of it, but we must at 1034 least provide an empty rule for it, otherwise the sub-make will 1035 never run 1036 1037 * demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it 1038 didn't make any difference. 1039 10401999-01-21 Gary V. Vaughan <gvv@techie.com> 1041 1042 * THANKS: Added Chris Laas <golem@MIT.EDU> 1043 1044 From Chris Laas <golem@MIT.EDU> 1045 * ltmain.in (compile): corrected a typo in compile mode which 1046 caused "gcc: unrecognized option -c-fPIC" errors due to a missing 1047 space. 1048 10491999-01-21 Alexandre Oliva <oliva@dcc.unicamp.br> 1050 1051 * libltdl/configure.in: reintroduce code to detect native library 1052 extension 1053 * libltdl/ltdl.c (lt_dlopen): if a .la file name is given, that's 1054 all. Otherwise, lt_dlopen now tries to append .la first. If this 1055 fails, it tries the given filename, and, at last, tries to append 1056 the native library extension to the given filename. 1057 * doc/libtool.texi (lt_dlopen): explain new lookup strategy 1058 1059 * libltdl/ltdl.c: major rewrite to avoid almost all fixed-size 1060 buffers; only `tmp' in lt_dlopen remained. But the code got ugly 1061 :-( 1062 1063 * ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash 1064 1065 * demo/configure.in: set DLPREOPEN to -dlopen if we don't have 1066 shared libraries 1067 * demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen 1068 (STATIC): use $(STATIC), not @STATIC@ 1069 * mdemo/Makefile.am (STATIC): ditto 1070 1071 * tests/demo-shared.test, tests/demo-static.test: new tests 1072 * tests/mdemo-shared.test, tests/mdemo-static.test: ditto 1073 * tests/Makefile.am: ditto 1074 * doc/libtool.texi: document them 1075 * demo/Makefile.am, mdemo/Makefile.am (STATIC): do not use 1076 -static unconditionally, it can't work with --disable-static 1077 * demo/configure.in, mdemo/configure.in: check whether libtool was 1078 configured to build static libraries and, if not, set STATIC to an 1079 empty string 1080 10811999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br> 1082 1083 * ltmain.in (module, droppeddeps): if libtool could not satisfy 1084 all dependencies of a module, it will only build a static version 1085 of it, and display a warning message 1086 10871999-01-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 1088 1089 * ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey 1090 Slepuhin's last patch 1091 10921999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br> 1093 1094 * Makefile.am (@DIST_MAKEFILE_LIST@): work around Ultrix /bin/sh bug 1095 * tests/nomode.test (must specify a MODE): ditto 1096 Reported by Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1097 * THANKS: Added Rainer Orth 1098 10991999-01-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE> 1100 1101 * ltconfig.in: No known version of Solaris 2 hardcoded -L paths. 1102 11031999-01-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 1104 1105 * ltmain.in: s/n\'t/ not/ 1106 * doc/PLATFORMS: updates for sunos4/m68k and aix 1107 11081999-01-20 Andrey Slepuhin <pooh@msu.ru> 1109 1110 * ltconfig.in (aix4*): check for reworked collect2, always pass 1111 -bnoentry option to linker when building a shared library 1112 11131999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br> 1114 1115 * ltmain.in (file_magic): follow soft-links before running `file' 1116 on the candidate library; try to avoid entering endless loop 1117 Suggested by Nix <nix@esperi.demon.co.uk> 1118 1119 * ltconfig.in (linux*, solaris*, bsdi4*, sys_lib_search_path): 1120 remove expansion of $LD_LIBRARY_PATH 1121 * ltmain.in (lib_search_path): append the expansion of $shlibpath_var 1122 * doc/libtool.texi: document it 1123 1124 * THANKS: Added Steven Schultz 1125 11261999-01-20 Steven M. Schultz <sms@wlv.iipo.gtegsc.com> 1127 1128 * ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic 1129 (bsdi4*, sys_lib_search_path): add /shlib and other dirs 1130 11311999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br> 1132 1133 * cdemo/main.c (main): use K&R definition syntax 1134 * mdemo/main.c (test_dl, main): ditto 1135 (test_dl): casts return value of lt_dlsym to appropriate types 1136 1137 * ltmain.in (dlsyms): #define const to nothing if not __STDC__ 1138 1139 * ltconfig.in (global_symbol_pipe): #define const to nothing if 1140 not __STDC__ 1141 1142 * demo/dlmain.c (main): cast s->address to the appropriate pointer 1143 types, otherwise StunOS4's cc refuses to compile it 1144 1145 * ltconfig.in (sunos4*, without_gnu_ld, with_gcc, archive_cmds): 1146 add -fPIC, because libgcc is multilibbed, and we want the PIC 1147 version of it for shared libraries, otherwise ld complains 1148 1149 * demo/dlmain.c (main): add missing const to declaration of name 1150 1151 * libltdl/ltdl.c (find_module): remove the libdir argument, and 1152 try to open library only as old_name and dir/dlname 1153 (lt_dlopen): use `installed' variable in .la file to decide 1154 whether to use libdir or objdir 1155 1156 * demo/configure.in (AC_C_CONST): added, for portability 1157 * mdemo/configure.in (AC_C_CONST): ditto 1158 * libltdl/configure.in (AC_C_CONST, AC_C_INLINE): ditto 1159 * libltdl/ltdl.c (LTDL_FILENAME_MAX): use FILENAME_MAX if defined 1160 (FILENAME_MAX): replace all explicit uses with LTDL_FILENAME_MAX 1161 (presym_free_symlists, trim): don't return void, for portability 1162 (lt_dlgetsearchpath): replace (void) with __P((void)) 1163 1164 * ltmain.in (compile): when compiling both PIC and non-PIC, write 1165 the PIC object to .libs/.lo and only rename it to .lo after 1166 compiling the .o, to avoid fooling make dependencies 1167 1168 * mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove 1169 11701999-01-20 Gary V. Vaughan <gvv@techie.com> 1171 1172 * TODO: Added inter-library deps for ltlibs. 1173 1174 * THANKS: Added Vladimir Kushnir. 1175 11761999-01-20 Vladimir Kushnir <kushn@mail.kar.net> 1177 1178 * ltconfig.in (freebsd3*): Define `deplibs_check_method' and 1179 `file_magic_command' for freebsd-elf. 1180 11811999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br> 1182 1183 * TODO: should we also build a `static' copy of a convenience 1184 library out of .o files? 1185 1186 * ltconfig.in (bsdi4*, netbsd*, uts4*, library_names_spec, 1187 soname_spec): removed duplicate dot before $major 1188 Reported by Steven M. Schultz <sms@wlv.iipo.gtegsc.com> (bsdi4*) 1189 1190 * THANKS: added Manfred Weichel 1191 11921999-01-20 Manfred Weichel <Manfred.Weichel@pdb.siemens.de> 1193 1194 * ltconfig.in (sysv5*): same as sysv4.3* 1195 11961999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br> 1197 1198 * libltdl/ltdl.c (lt_dlopen): properly detect error condition when 1199 full pathname of non-libtool library is provided 1200 1201 * libltdl/configure.in (libltdl_cv_preloaded_symbols, 1202 HAVE_PRELOADED_SYMBOLS): test whether we support -dl*open 1203 * libltdl/ltdl.c (!HAVE_PRELOADED_SYMBOLS, lt_preloaded_symbols): 1204 define it to an empty list if libtool won't generate it, so as to 1205 avoid link errors. This will cause silent dlopening failures, but 1206 maybe this is better than failing to link the program... 1207 1208 * libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to 1209 declare lt_preloaded_symbols 1210 * doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto 1211 1212 * ltmain.in (dlpredeps): removed, reverting 1999-01-17's change 1213 12141999-01-19 Alexandre Oliva <oliva@dcc.unicamp.br> 1215 1216 * libltdl/Makefile.am (Makefile): depend on libtool 1217 1218 * ltmain.in (lt_preloaded_setup): function added to symbol list 1219 source file to work around FreeBSD problem 1220 1221 * Makefile.am (check-local): depend on libltdl/Makefile 1222 1223 * mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen 1224 flags to LDADD 1225 * doc/libtool.texi (Using Automake): how to add -dlopen to LDADD 1226 12271999-01-19 Gary V. Vaughan <gvv@techie.com> 1228 1229 From Andrey Slepuhin <pooh@msu.ru> 1230 * ltmain.in (hardcode_action) Oops, misapplied the patch! 1231 1232 * ltconfig.in (compile_dependencylbs): removed this 1233 variable and pick up the library dependencies from $deplibs. 1234 * ltmain.in (compile_dependencylibs): removed this 1235 variable, use deplibs to hold these dependencies. 1236 1237 From Andrey Slepuhin <pooh@msu.ru> 1238 * ltmain.in (hardcode_action) make sure deplibs is set to include 1239 all the extra libs added to compile_command. 1240 12411999-01-18 Alexandre Oliva <oliva@dcc.unicamp.br> 1242 1243 * libtool.m4 (LIBTOOL_DEPS): set it 1244 * libltdl/configure.in (LIBTOOL_DEPS): AC_SUBST it 1245 * libltdl/Makefile.am (libtool): use it 1246 * doc/libtool.texi (AM_PROG_LIBTOOL): document it 1247 1248 * Makefile.am (libltdl.tar.gz): don't create it as part of the 1249 build, since it is likely to become stale if we do 1250 (install-data-hook): create and install libltdl.tar.gz, without 1251 depending on GNU tar 1252 Reported by Manfred Weichel <Manfred.Weichel@pdb.siemens.de> 1253 12541999-01-17 Thomas Tanner <tanner@gmx.de> 1255 1256 * Makefile.am: added libltdl.tar.gz to CLEANFILES 1257 * ChangeLog: some reformatting 1258 * TODO: documentation updates 1259 * doc/libtool.texi: added preliminary libltdl documentation, 1260 updated dlopen and -module documentation, 1261 renamed -avoid-versioning to -avoid-version 1262 documented the libtool script variables compiler_c_o, 1263 compiler_o_lo, need_locks, old_postuninstall_cmds, 1264 postuninstall_cmds, sys_lib_search_path_spec, 1265 fix_srcfile_path, objdir, objext, libext, 1266 documented the two new flags (--ltdl[-tar]) of libtoolize 1267 * libltdl/Makefile.am: incremented the version, removed 1268 libtool dependency so that it can be build independently 1269 * libltdl/configure.in: removed LTDL_SHLIB_EXT hack, 1270 set version to 1.0, use AM_MAINTAINER_MODE, 1271 DLPREOPEN is always supported, check for libtool's objdir variable 1272 (LTDL_OBJDIR) 1273 * libltdl/ltdl.c: some cleanups (moved constants to the beginning 1274 of the file and prefixed all of them with LTDL_, minor optimizations 1275 in find_file() and find_module()), renamed lt_dlpreopen* to 1276 lt_dlpreload* for consistency, removed LTDL_SHLIB_EXT hack, 1277 we don't need unistd.h, DLPREOPEN is _always_ supported, 1278 reverted Alexandre's lt_dlpreopen_default_ change, 1279 try to open the not-installed module before the installed one, 1280 replaced lt_dlsearchpath() with lt_dladdsearchdir(), 1281 lt_dlsetsearchpath() and lt_dlgetsearchpath() 1282 * libltdl/ltdl.h: renamed lt_dlpreopen* to lt_dlpreload* 1283 for consistency, removed the declaration of lt_preloaded_symbols 1284 (should be imported by programs), 1285 reverted Alexandre's lt_dlpreopen_default_ change and added 1286 two new macros LTDL_PRELOADED_SYMBOLS and 1287 LTDL_SET_PRELOADED_SYMBOLS(), 1288 added lt_dladdsearchdir(), lt_dlsetsearchpath() and 1289 lt_dlgetsearchpath() 1290 * libtool.m4: some reformatting 1291 * libtoolize.in: implemented --ltdl, bugfix when checking for 1292 the libtool package directory 1293 * ltconfig.in: removed $thread_safe_flags from Andrey Slepuhin's 1294 AIX patch, renamed sys_lib_search_path to sys_lib_search_path_spec, 1295 some reformatting, fixed typo in deplibs_check_method (unkwnon) 1296 * ltmain.in: documented -o for compile mode, some reformatting, 1297 renamed -avoid-versioning to -avoid-version 1298 renamed sys_lib_search_path to sys_lib_search_path_spec 1299 * mdemo/Makefile.am: use -avoid-version 1300 * mdemo/main.c: use LTDL_PRELOADED_SYMBOLS and 1301 LTDL_SET_PRELOADED_SYMBOLS() 1302 13031999-01-17 Alexandre Oliva <oliva@dcc.unicamp.br> 1304 1305 * ltconfig.in (wlarc): set to either '${wl}' or an empty string, 1306 depending on whether archive_cmds runs CC or LD 1307 (gnu_ld=yes, whole_archive_flag_spec): "$wlarc" instead of '${wl}' 1308 1309 * mdemo/Makefile.am (../libltdl/libltdlc.la): depend on 1310 ../libtool, because ../libltdl/libtool depends on it 1311 (mdemo_debug_*): copy from mdemo_*, adding -static to LDFLAGS 1312 1313 * ltmain.in (dlpredeps): append dependencies from dlopened modules 1314 (but not dlpreopened ones) after all explicitly linked libraries 1315 1316 * ltconfig.in (need_lib_prefix, need_version, 1317 deplibs_check_method): default to unknown, so that we're 1318 remembered that this needs porting; unknown is interpreted as yes, 1319 yes and none, respectively 1320 (freebsd2*, freebsd3*, sunos4*, need_version): set to yes 1321 (freebsd2*, freebsd3*, library_names_spec): libraries without a 1322 version number are not used by `ld'; add $versuffix; 1323 Reported by Ben Jackson <ben@ben.com> 1324 * ltmain.in (deplibs_check_method): alias unknown to none 1325 (need_version): if vinfo was not provided and release info was, 1326 zero out versuffix only if we don't need_version. 1327 * doc/libtool.texi: document what `unknown' means 1328 1329 * libltdl/ltdl.h (lt_dlpreopen_default): reverted to a macro 1330 without arguments, that calls lt_dlpreopen_default_ with 1331 lt_dlpreloaded_symbols 1332 * libltdl/ltdl.c (lt_dlpreopen_default_): renamed from 1333 lt_dlpreopen_default 1334 (find_module) tryall_dlopen old_name first, so that we don't 1335 override statically linked symbols with dlopened ones 1336 13371999-01-15 Gary V. Vaughan <gvv@techie.com> 1338 1339 From Andrey Slepuhin <pooh@msu.ru> 1340 * libtoolize.in (cd $pkgdatadir): Make sure we return the the 1341 working directory when this is done. 1342 1343 From Andrey Slepuhin <pooh@msu.ru> 1344 * ltconfig.in (aix): Use shared library support correctly on 1345 aix4*, and tweak the config for aix3. 1346 * NEWS: added aix3 and aix4 to list of hosts with improved 1347 support. 1348 * THANKS: added Andrey Slepuhin <pooh@msu.ru>. 1349 13501999-01-15 Thomas Tanner <tanner@gmx.de> 1351 1352 * Makefile.am (@DIST_MAKEFILE_LIST@): added a second '$' 1353 before abs_scrdir, removed ltconfig and ltmain.sh from 1354 EXTRA_DIST (automake distributes them by default) 1355 13561999-01-14 Thomas Tanner <tanner@gmx.de> 1357 1358 * autogen: moved faking of the libtool scripts before 1359 the call of automake, so that ltconfig and ltmain.sh 1360 are included in the distribution 1361 * ltconfig.in: when checking whether PIC is supported assume 1362 only on HP/UX that warnings during compilation mean that 1363 PIC is not supported (Thanks to Ron O'Hara) 1364 * THANKS: added Ron O'Hara 1365 13661999-01-14 Alexandre Oliva <oliva@dcc.unicamp.br> 1367 1368 * Makefile.am: Moved ltconfig and ltmain.sh back into srcdir, and 1369 add them to the distribution. Added work-around if `mv -f' fails. 1370 fix @AINCLUDE_M4_LIST@ and @DIST_MAKEFILE_LIST@ for relative and 1371 absolute specifications of srcdir 1372 13731999-01-14 Thomas Tanner <tanner@gmx.de> 1374 1375 * libltdl/ltdl.c: added variable symbol prefix, added user-defined 1376 library search path (can be set using lt_dlsearchpath()), 1377 added default_preloaded_symbols which are independent of 1378 lt_dlinit/exit 1379 * libltdl/ltdl.h: added lt_dlsearchpath() and 1380 lt_dlpreopen_default() 1381 * mdemo/Makefile.am: use -export-dynamic until libtool 1382 and libltdl are able to handle module dependencies 1383 13841999-01-14 Gary V. Vaughan <gvv@techie.com> 1385 1386 * THANKS: added Mark Elbrecht. 1387 * ltconfig.in (PATH_SEPARATOR): new variable to hold valid $PATH 1388 separator characters for the build host, to support DJGPP 1389 environment. 1390 * ltconfig.in: Use PATH_SEPARATOR instead of hardcoded `:'. 1391 Reported by Mark Elbrecht <snowball3@usa.net> 1392 1393 * cdemo/README: typo: mdemo->cdemo 1394 13951999-01-14 Thomas Tanner <tanner@gmx.de> 1396 1397 * autogen: fake the libtool scripts to help fixing 1398 the bootstrapping problem 1399 * Makefile.am: always configure libltdl, however after building 1400 the libtool scripts, 1401 build the libtool scripts in builddir, not srcdir 1402 (unfortunately this breaks building when srcdir!=objdir, 1403 but it was just plain wrong - needs to be fixed), 1404 build and install libltdl.tar.gz, 1405 copy acinclude.m4 instead of linking them, so that we 1406 can 'make dist' in libltdl, 1407 fixed configuring of subdirectories 1408 * configure.in: removed --enable-ltdl-install - libltdl is supposed 1409 to be installed by packages, not by libtool itself 1410 * libtoolize.in: new flags --ltdl and --ltdl-tar to install libltdl 1411 in packages (--ltdl doesn't work yet), 1412 install only the necessary libtool scripts, not just all 1413 files in pkgdatadir 1414 * mdemo/Makefile.am: removed the rule for libltdl configuration 1415 14161999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br> 1417 1418 * mdemo/Makefile.am (../libltdl/libtool): mkdir and configure 1419 ../libltdl 1420 14211999-01-13 Thomas Tanner <tanner@gmx.de> 1422 1423 * demo/dlmain.c, libltdl/ltdl.c, ltconfig.in, ltmain.in, 1424 doc/libtool.texi: renamed dld_preloaded_symbols to 1425 lt_preloaded_symbols, symbol lists are 'const' 1426 * cdemo/configure.in: don't check for string.h 1427 * demo/dlmain.c: renamed dld_symlist to lt_symlist, 1428 preloaded symbols are 'const', use lt_ptr_t instead of void* 1429 * demo/foo.h: define lt_ptr_t 1430 * doc/libtool.texi: document lt_preloaded_symbols correctly 1431 * libltdl/Makefile.am, mdemo/Makefile.am: renamed libtest to libltdlc 1432 * libltdl/ltdl.c: fixed some minor typos, renamed dldpre to presym, 1433 bugfix: search in search_path only if we have no directory 1434 and a search_path, in lt_dlsym() check whether symbol != 0 1435 * libltdl/ltdl.h: removed lt_dlpreopen_default() 1436 * ltconfig.in (dlpreopen): removed dld_preloaded_symbol_count 1437 * ltmain.in: added help for -avoid-versioning, -export-symbols, 1438 -module, add @SYMFILE@ if one of -export-dynamic, -dlopen or 1439 -dlpreopen is used 1440 * mail/deplibs.html: added Gordon Matzigkeit's inter-library 1441 dependencies article 1442 * mdemo/Makefile.am: removed -export-dynamic from LDFLAGS 1443 (no longer necessary, since libtool defines lt_preloaded_symbols 1444 when -dlopen is used), initialize with lt_preloaded_symbols 1445 14461999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br> 1447 1448 * doc/libtool.texi (Test descriptions): cdemo-static works, thanks 1449 to Edouard Parmelan! 1450 1451 * THANKS: added Sebastian Wilhelmi 1452 1453 * ltconfig.in (solaris): define `need_version' to no 1454 14551999-01-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de> 1456 1457 * ltconfig.in (solaris): Define `deplibs_check_method', 1458 `file_magic_command', `need_lib_prefix' and `sys_lib_search_path' 1459 * ltmain.in (file_magic_regex): Add space before matching pattern, 1460 such that it works on solaris (solaris has a tab between the 1461 library name (including the colon) and the `ELF' and such the 1462 `ELF' will never be matched). 1463 14641999-01-13 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM> 1465 1466 * ltconfig.in (NM): PATH search was not updated like in 1467 libtool.m4, in last Alexandre Oliva's change to it 1468 (sysv4*, ncr): pass all library dependencies 1469 * ltmain.in (dependency_libs, -R): use `deplib' instead of `arg' to 1470 iterate, otherwise we'd overwrite `arg' 1471 (convenience, old_libs): if --disable-shared, convenience 1472 libraries are just old archives, as .lo's are of no use 1473 * tests/cdemo-static.test: print --disable-shared here 1474 14751999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br> 1476 1477 * libltdl/configure.in (libltdl_cv_shlibext, LTDL_SHLIB_EXT): 1478 system-dependent extension of shared libraries 1479 (libltdl_cv_shlibpath_var, LTDL_SHLIBPATH_VAR): system-dependent 1480 run-time shared library search path 1481 * libltdl/ltdl.c (dldpre_init, dldpre_exit): unrelate init/exit 1482 from add/remove symlists, so one may add dld_preloaded_symbols 1483 from main(), when only a library will call dldpre_init 1484 (lt_dlopen): use LTDL_SHLIBPATH_VAR, if defined, as secondary 1485 search path. Also, if a requested .la file cannot be found, try 1486 with the LTDL_SHLIB_EXTension instead. 1487 1488 * ltmain.in (old_archives, oldobjs): use find to SYMDEF here too 1489 1490 * Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled 1491 1492 * configure.in (AC_CONFIG_DIRS): configure only libltdl, and then, 1493 only if --enable-ltdl-install 1494 (CONF_SUBDIRS): list directories that are configured on demand, 1495 but that must be included in the distribution 1496 (ACINCLUDE_M4_LIST, DIST_MAKEFILE_LIST): generated from CONF_SUBDIRS 1497 * Makefile.am (AUTOMAKE_OPTIONS): added version 1.3e and 1498 readme-alpha, to handle README-alpha automatically 1499 (EXTRA_DIST): removed README-alpha 1500 (BUILD_SUBDIRS): subdirectories that are always built 1501 (SUBDIRS): BUILD_SUBDIRS plus BUILD_LTDL 1502 (DIST_SUBDIRS): BUILD_SUBDIRS plus CONF_SUBDIRS, from configure 1503 (all-local, check-local): depend on $(ACINCLUDE_M4_LIST), from 1504 configure, and libtool, so that it is built before subdirs 1505 (configure-subdirs): new target 1506 (configure-subdirs, distdir): depend on $(DIST_MAKEFILE_LIST), 1507 from configure 1508 (@DIST_MAKEFILE_LIST@): create subdir if needed, then run 1509 configure. 1510 On-demand configuration of subdirs at distribution time was 1511 suggested by Gary V. Vaughan <gvv@techie.com> 1512 1513 * libtool.m4, ltconfig.in (NM): search for NM in PATH before 1514 /usr/ccs/bin, /usr/ucb and /bin. However, if the found one isn't 1515 BSD-compat keep searching. If no BSD-compat is found, use the 1516 first we found. 1517 1518 * THANKS: added Raffaele Sena 1519 15201999-01-13 Raffaele Sena <raff@aromatic.com> 1521 1522 * libltdl/ltdl.c: replaced RTDL with RTLD 1523 15241999-01-13 Manish Singh <yosh@gimp.org> 1525 1526 * ltconfig.in (osf3*, osf4*, irix6*): include 1527 ${libname}{release}.so for library_names_spec 1528 15291999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br> 1530 1531 * configure.in (AC_CONFIG_SUBDIRS): added cdemo 1532 * Makefile.am (DIST_SUBDIRS): ditto 1533 (ACINCLUDE_M4_LIST): ditto 1534 * tests/Makefile.am (TESTS): added cdemo-shared.test 1535 * tests/cdemo-static.test: disable shared libraries here 1536 * tests/cdemo-shared.test: disable static libraries here 1537 * doc/libtool.texi (Test descriptions): added cdemo tests 1538 * THANKS: added Edouard G. Parmelan 1539 15401999-01-13 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM> 1541 1542 * ltmain.in: fix convenience libraries when static libraries 1543 are disables. 1544 * cdemo/README, cdemo/Makefile.am, cdemo/configure.in, cdemo/foo.h, 1545 cdemo/foo1.c, cdemo/main.c, cdemo/.cvsignore, test/cdemo-conf.test, 1546 test/cdemo-make.test, test/cdemo-exec.test, test/cdemo-static.test: 1547 new tests for convenience libraries. 1548 * autogen, Makefile.am, test/Makefile.am: ditto. 1549 1550 * ltconfig.in, doc/PLATFORMS: Added support for NCR MP-RAS 1551 (i586-ncr-sysv4.3*) with native compiler. 1552 * README, doc/libtool.texi: Added note for NCR MP-RAS compiler. 1553 15541999-01-12 Thomas Tanner <tanner@gmx.de> 1555 1556 * ltmain.in: before using LN_S remove the symlink 1557 * libltdl/ltdl.c: support multiple symbol lists, moved library- 1558 and file searching to separate functions, renamed "preload_libs" 1559 to "dl_dependency_libs", set the LT_SYMBOL_OVERHEAD to the correct 1560 value (7), fix to support lt_dlsym() for not-libtool modules again, 1561 check for invalid handles, when using strdup() check whether 1562 it fails 1563 * libltdl/ltdl.h: declare the lt_dlsymlist type for lt_dlpreopen() 1564 * mdemo/README: rewritten 1565 * mdemo/configure.in: check only for math.h (string.h is no longer 1566 necessary) 1567 15681999-01-12 Gary V. Vaughan <gvv@techie.com> 1569 1570 * configure.in (ltdl-install): Fixed up the indentation so that 1571 `configure --help' is pretty again. 1572 15731999-01-11 Alexandre Oliva <oliva@dcc.unicamp.br> 1574 1575 * ltmain.in, NEWS, doc/libtool.texi: Added support for -R flag 1576 * ltmain.in, doc/libtool.texi: documented that -rpath is the same 1577 as -R for programs 1578 * ltmain.in: softened the instructions for linking with installed 1579 libraries, and noted that libtool can be used to link with them; 1580 documented that -rpath is not required for convenience libraries 1581 1582 * ltconfig.in (symxfrm): don't print $pipe_works twice, once for 1583 each $ac_symprfx 1584 Reported by Godmar Back <gback@cs.utah.edu> 1585 1586 * ltmain.in (convenience, libobjs): get only .o and .lo files from 1587 the files extract from the convenience library. Some systems, 1588 such as FreeBSD2, will add a SYMDEF file, that is not an object 1589 file, and therefore should not be fed to the linker 1590 1591 * libtool.m4 (AM_SYS_NM_PARSE): while we are at it, we may well 1592 cache the value of ac_cv_sys_symbol_underscore 1593 1594 * libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now 1595 auto-detected, by trying first without, then with it. 1596 1597 * ltconfig.in: ditto 1598 15991999-01-10 Alexandre Oliva <oliva@dcc.unicamp.br> 1600 1601 * configure.in (AC_CONFIG_SUBDIRS): add libltdl, demo, mdemo and 1602 depdemo commented out, so that `dist' works before `check' 1603 (BUILD_LTDL): will contain libltdl if --enable-ltdl-install 1604 * Makefile.am (DIST_SUBDIRS): expand SUBDIRS and add depdemo, 1605 commented out 1606 (SUBDIRS): add $(BUILT_LTDL) 1607 * libltdl/Makefile.am (EXTRA_LTLIBRARIES): add libtest.la, the 1608 same as libltdl but always a convenience library. Not built by 1609 default. Both libraries now depend on the libtool script, that 1610 depends on ../libtool and is rebuilt when needed 1611 * mdemo/Makefile.am (mdemo, mdemo.debug): depend on and link with 1612 ../libltdl/libtest.la, that is rebuilt if needed 1613 (mdemo_LDADD): removed $(LIBADD_M), to avoid silent failures 1614 (foo1.la): renamed from libfoo1.la; test removing the lib prefix 1615 * mdemo/foo1.c: renamed libfoo1_LTX symbols to foo1_LTX 1616 * mdemo/main.c: don't include string.h nor math.h, nor refer to 1617 sin nor cos 1618 * tests/mdemo-exec.test: renamed libfoo1.la to foo1.la 1619 * tests/mdemo-inst.test: ditto 1620 1621 * libltdl/ltdl.c (FILENAME_MAX): use it instead of MAX_FILENAME, 1622 and don't redefine it if already defined; default to 1024, as on 1623 most systems 1624 (LT_SYMBOL_LENGTH): renamed from MAX_SYMBOL_LENGTH 1625 (LT_SYMBOL_OVERHEAD): new macro, that accounts for the size of 1626 the _LTX_ separator and the initial underscore 1627 (lt_dlsym): sym now points to a stack buffer (lsym) if possible, 1628 or is dynamically allocated. If allocation fails, a 1629 buffer_overflow_error is returned. 1630 16311999-01-10 Thomas Tanner <tanner@gmx.de> 1632 1633 * ltmain.in: define dld_preloaded_symbols if at least one of 1634 -export-dynamic, -dlopen or -dlpreopen was specified, 1635 do not include program objects in the symbol list 1636 if -export-dynamic was not enabled 1637 * libltdl/ltdl.c: limit symbols to max. 256 bytes 1638 * mdemo/Makefile.am: build libltdl in a subdirectory, 1639 do not use -export-dynamic for mdemo and mdemo.debug 1640 * tests/mdemo-conf.test,tests/mdemo-make.test,tests/mdemo-inst.test: 1641 do not check for libltdl 1642 16431999-01-09 Alexandre Oliva <oliva@dcc.unicamp.br> 1644 1645 * libltdl/ltdl.c (lt_dlopen): missing strlen in bound test 1646 16471999-01-09 Thomas Tanner <tanner@gmx.de> 1648 1649 * NEWS: support for BSD/OS 4.x was not documented 1650 * demo/Makefile.am: link against libm only if available 1651 * mdemo/Makefile.am: likewise, use -avoid-versioning flag 1652 instead of -avoid-version (typo) 1653 * demo/configure.in: check for libm, string.h and math.h 1654 * mdemo/configure.in: likewise 1655 * depdemo/configure.in: check for libm and math.h 1656 * libltdl/configure.in: check for dlerror 1657 * libltdl/ltdl.c: check for buffer overflows, implemented 1658 dlerror, fixed a severe bug which occured when opening 1659 non-libtool modules, dlopen with the flags GLOBAL and NOW 1660 * mdemo/main.c: report the error using lt_dlerror() 1661 16621999-01-08 Gary V. Vaughan <gvv@techie.com> 1663 1664 * doc/libtool.texi (old_archive_from_new_commands): Documented 1665 this ltcofig variable. 1666 16671999-01-07 Gary V. Vaughan <gvv@techie.com> 1668 1669 * ltmain.sh (cygwin, allow_undefined): Unfortunately, there are 1670 problems with this variable when trying to make a dll which has 1671 undefined symbols, in which case not even a static library is 1672 built. For now, we need to specify -no-undefined on the libtool 1673 link line when we can be certain that all symbols are satisfied, 1674 otherwise we get a static library. 1675 16761999-01-06 Thomas Tanner <tanner@gmx.de> 1677 1678 * ChangeLog: merged in tests/ChangeLog 1679 * tests/ChangeLog: deleted 1680 * libltdl/ltdl.c: assigned copyright to the FSF 1681 * libltdl/ltdl.h, mdemo/foo*,main.c: likewise 1682 16831999-01-06 Gary V. Vaughan <gvv@techie.com> 1684 1685 * ltmain.in (dllsearchpath): add absolute directory paths to 1686 dllsearchpath so that the wrapper scripts can be called from any 1687 directory (e.g. tests) on cygwin. 1688 1689 * ltconfig.in (cygwin, library_names_spec): revert Alexandre's 1690 change from yesterday to use `-dll.a' suffix. That change caused 1691 $libname-dll.a to be a symlink to $soname, which isn't even an 1692 `ar' archive. Before the import library suffix can be changed, we 1693 need to figure out how to handle building objects differently for 1694 linking with an import library versus an equivalent static library. 1695 1696 * TODO: Added details of a Linux wrapper script bug. 1697 Reported by Jeff Garzik <jgarzik@pobox.com>. 1698 16991999-01-05 Alexandre Oliva <oliva@dcc.unicamp.br> 1700 1701 * ltmain.in (libobjs_save, oldobjs): when building an 1702 old-fashioned archive, use a copy of libobjs saved before 1703 convenience libraries are appended 1704 1705 * libltdl/ltdl.h (_LTDLL_EXPORT, _LTDLL_IMPORT): use cygwin or 1706 unix library import/export primitives; this may be convenient for 1707 people willing to create DLLs 1708 (_LTDLL_EXTERN): select _LTDLL_EXPORT or _LTDLL_IMPORT depending 1709 on _LTDL_COMPILE_ 1710 * libltdl/ltdl.h, libltdl/ltdl.c (lt_dlpreopen): new function, 1711 that replaces the current preloaded_symbols list with its 1712 argument, and returns the old value, initially NULL 1713 (dldpre_init): don't refer to dld_preloaded_symbols any more 1714 (dldpre_open, dldpre_sym): search preloaded_symbols 1715 (lt_dlpreopen_default): call lt_dlpreopen with 1716 dld_preloaded_symbols, that is declared as extern; it should be 1717 called from the main program or from some static library without 1718 -no-undefined 1719 (lt_dlerror): new function, that returns the error message for the 1720 last error occurred; the error message is kept in the static 1721 variable last_error 1722 * libltdl/configure.in (enable-ltdl-install): moved back from 1723 enable-install; other packages might use enable-install already, 1724 better have fine grained control over this. 1725 * libltdl/Makefile.am (libltdls.la): discarded 1726 17271999-01-05 Thomas Tanner <tanner@gmx.de> 1728 1729 * configure.in: do not configure libltdl by default 1730 * Makefile.am: do not build libltdl by default 1731 * libltdl/Makefile.am: ltdls.lo depends on libtool 1732 * tests/Makefile.am: before starting the tests 1733 make sure that libtool was build 1734 * tests/mdemo-conf.test: configure libltdl 1735 * tests/mdemo-make.test: build libltdl 1736 17371999-01-05 Alexandre Oliva <oliva@dcc.unicamp.br> 1738 1739 * ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this 1740 would lose for files with embedded blanks. 1741 1742 * ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved 1743 ltdll.c into ltmain.in, to avoid its duplication, and added a sed 1744 script to extract it. Also, create def and base files in $objdir, 1745 and don't remove them after the compilation. 1746 (cygwin, library_names_spec): Create static part of the dll with 1747 suffix -dll.a, to avoid conflicts with actual static libraries. 1748 * ltmain.in: Added ltdll.c, as commented out text 1749 17501999-01-01 Thomas Tanner <tanner@gmx.de> 1751 1752 * NEWS: new BeOS support 1753 * THANKS: added Joseph Beckenbach 1754 * libltdl/ltdl.h: use dllimport/export on Win32 1755 17561998-12-31 Joseph Beckenbach III <jrb3@best.com> 1757 1758 * ltconfig.in: added support for BeOS 1759 * ltmain.in (shlibpath_var): added a workaround for 1760 an odd bug in the BeOS R4 sed 1761 17621998-12-31 Thomas Tanner <tanner@gmx.de> 1763 1764 * verified all copyright notices 1765 and updated them to 1999 1766 * TODO: added some things that need to documented 1767 * doc/libtool.texi: -export-symbols is not 1768 supported on all platforms 1769 * doc/PLATFORMS: added a few new platforms 1770 17711998-12-30 Thomas Tanner <tanner@gmx.de> 1772 1773 * NEWS: updated 1774 * THANKS: added Todd Vierling <tv@pobox.com> 1775 17761998-12-30 Todd Vierling <tv@pobox.com> 1777 1778 * ltconfig.in: improved shared object handling on both 1779 a.out and ELF platforms for NetBSD 1780 17811998-12-29 Thomas Tanner <tanner@gmx.de> 1782 1783 * ltconfig.in: do not rely on a leading space when concatenating 1784 variables as suggested by Erez Zadok 1785 * ltmain.in: likewise 1786 * doc/PLATFORMS: updated and reformatted 1787 (thanks to Erez Zadok for the testing) 1788 17891998-12-27 Thomas Tanner <tanner@gmx.de> 1790 1791 * THANKS: added Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 1792 17931998-12-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu> 1794 1795 * ltconfig.in: support i486-ncr-sysv4.3.03 1796 shared libraries. 1797 1798 * ltmain.in: before every ln -s, remove the link name 1799 18001998-12-25 Thomas Tanner <tanner@gmx.de> 1801 1802 * depdemo/configure.in: removed last relics of demo 1803 * depdemo/sysdep.h: ditto 1804 * mdemo/Makefile.am: ditto 1805 * libltdl/Makefile.am: fixed the version number, build libltdls if 1806 -enable-install and -enable-dlpreopen are enabled 1807 * libltdl/configure.in: libltdl is version 0.1, not 1.0, 1808 renamed -enable-ltdl-install to -enable-install, 1809 conditionals for libltdls, check for strchr and index, 1810 replaced NULL with 0 1811 * libltdl/ltdl.c: replaced NULL with 0, dlpreopen only if 1812 USE_DLPREOPEN was defined, integrated shl_load code from GModule 1813 (still untested) 1814 18151998-12-24 Gary V. Vaughan <gvv@techie.com> 1816 1817 * libltdl/configure.in: fixup spacing in --enable-ltdl-install 1818 help string so that it lines up nicely for configure --help. 1819 1820 * ltmain.in (dllsearchpath): keep track of what the dll search path 1821 will need to be in the wrapper scripts as deplibs are calculated. 1822 Make sure the wrapper script doesn't end in `.exr', which makes 1823 win32 try to execute it as a binary! 1824 Add the contents of dllsearchpath to $PATH in the wrapper script. 1825 Use the relative path to the wrapped program so that the dll 1826 search path is calculated properly by win32 OSes. 1827 * TODO: removed the item for making wrapper scripts work on win32. 1828 1829 * TODO: removed the reference to making libltdl and demo work on 1830 win32. They *do* work now that wrapper scripts are functioning. 1831 1832 * ltmain.in (file_magic_command): It turns out that if the 1833 file_magic_command generates huge output (e.g. running `objdump 1834 -f' over a large import lib [say libX11.a]) the expr to check it 1835 against the file_magic_regex blows up. There is now an optimistic 1836 heuristic, to save only the first 10 lines of running 1837 file_magic_command which (at risk of sounding like Bill) should be 1838 enough for anyone =)O|. 1839 1840 * ltmain.in: Set the compile_dependencylibs and dllsearchpath for 1841 non-libtool libs, or else libdeps only works between ltlibs for 1842 cygwin32. 1843 18441998-12-23 Alexandre Oliva <oliva@dcc.unicamp.br> 1845 1846 * ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very 1847 long lines to sed 1848 * doc/libtool.texi (sed): very long lines are no longer a problem 1849 1850 * libltdl/Makefile.am: install libltdl conditionally... 1851 * libltdl/configure.in: ... if --enable-ltdl-install is issued 1852 * libltdl/ltdl.c: removed #ifdef DEBUG 1853 * mdemo/Makefile.am (mdemo_debug_LDADD, mdemo_debug_DEPENDENCIES): 1854 use libltdl.la 1855 18561998-12-23 Gary V. Vaughan <gvv@techie.com> 1857 1858 * doc/PLATFORMS: added my cygwin32 box (i686-pc-cygwin32). 1859 1860 * TODO: remind myself of the win32 tasks remaining. 1861 1862 * ltconfig.in (archive_cmds, archive_sym_cmds, 1863 old_archive_from_new_cmds): Fixed a bug which left an a.exe in the 1864 build directory. Fixed a bug where $soname-def was never deleted. 1865 1866 * ltconfig.in (file_magic_command): new variable holds the command 1867 (including any args) to run to generate the string to match 1868 against the regex in $file_magic. Use the variable where 1869 necessary. Added to libtool header output. 1870 (deplibs_check_method): use file_magic for win32, but compare the 1871 output of `objdump -f' with the regex (see below). 1872 (archive_cmds, archive_sym_cmds): use compile_dependencylibs for 1873 each $CC invokation (see below). 1874 1875 * ltmain.in: Set allow_undefined to `no' for win32 variants by 1876 default, otherwise it is impossible to link a dll without forcing 1877 the makefile maintainer to figure out whether to pass 1878 --no-undefined at every libtool invokation. 1879 (compile_dependencylibs): save the list of dependency library 1880 flags needed for a deplib build on win32. 1881 (link_against_libtool_libs): commented out the check for this; if 1882 it is left in, then ltlibs (i.e. *.la files) cannot be deplibs for 1883 subsequent links. 1884 Don't add -lc to the deplibs line for win32 platforms (which don't 1885 have a libc as such). 1886 (file_magic_command): use this to get some output to compare with 1887 the file_magic regex (instead of hardcoding `file' which doesn't 1888 exist on win32. 1889 * doc/libtool.texi (Porting inter-library dependencies): Updated 1890 to document the changes above. 1891 1892 * ltconfig.in (deplibs_check_method): Changed the file_magic regex 1893 to match more linux variants. This is less lenient than Thomas 1894 Tanner's commit to fix the same problem below. 1895 Reported by Joel Klecker <espy@debian.org> 1896 * THANKS: added Joel Klecker <espy@debian.org> 1897 18981998-12-23 Thomas Tanner <tanner@gmx.de> 1899 1900 * ltconfig.in: fixed file-magic for Linux shared libraries 1901 * ltmain.in: removed the unused -force-static flag 1902 * libltdl/ltdl.c: added strchr, search modules in LTDL_LIBRARY_PATH, 1903 check whether actual module was already dlopened, 1904 read in preload_libs rather than dependency_libs 1905 19061998-12-23 Thomas Tanner <tanner@gmx.de> 1907 1908 * libltdl/Makefile.am: build two versions of libltdl: 1909 libltdl (support native dlopen if available, otherwise dlpreopen), 1910 libltdls (like libltdl, but always support for dlpreopen) 1911 * libltdl/ltdl.c: ditto 1912 * libltdl/configure.in: warn if dlopen is not supported 1913 * mdemo/Makefile.am (mdemo.debug): use libltdls 1914 19151998-12-22 Gary V. Vaughan <gvv@techie.com> 1916 1917 * ltconfig.in: revert Thomas Tanners change to create all 1918 libraries without the `lib' prefix on win32, otherwise `gcc foo.c 1919 -lbar' can't find libbar.a. 1920 19211998-12-22 Alexandre Oliva <oliva@dcc.unicamp.br> 1922 1923 * Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive 1924 dependency hack 1925 19261998-12-21 Thomas Tanner <tanner@gmx.de> 1927 1928 * ltconfig.in: indentation is now 8 character wide tabs 1929 * ltmain.in: ditto 1930 * ChangeLog: ditto 1931 * ltmain.in: renamed check_shared_deplibs_method to 1932 deplibs_check_method (we_dont_want_too_long_variable_names :) 1933 * doc/libtool.texi (Porting inter-library dependencies): ditto 1934 * depdemo/.cvsignore: renamed hell* to depdemo*, added *.lo,*.la 1935 * mdemo/.cvsignore: ditto 1936 19371998-12-21 Gary V. Vaughan <gvv@techie.com> 1938 1939 * libtool.m4 (AM_SYS_NM_PARSE): apparently __ptr_t is predefined 1940 on some systems - use lt_ptr_t instead. 1941 * ltconfig.in: ditto. 1942 * ltmain.in: ditto. 1943 1944 * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): use an AC_SUBST to pass 1945 the result of this into the compile rather than AC_DEFINE which 1946 breaks when building with older versions of autoconf. 1947 * ltconfig.in (symxfrm): Don't put the leading underscore back 1948 with the global_symbol_pipe. 1949 * demo/dlmain.c (main): No need to specialcase underscores in 1950 dld_preloaded_symbols - it is fixed by symxfrm above! 1951 * libltdl/configure.in: use AM_SYS_SYMBOL_UNDERSCORE from 1952 libtool.m4 rather than reinvent the wheel here =)O| 1953 1954 * ltmain.in: Fix deplibs methods to not rely on a.out (cygwin 1955 uses a.exe!). 1956 1957 * libltdl/configure.in: Cleanups - fix header comment and emacs 1958 local-vars. 1959 1960 * demo/dlmain.c (win32_force_data_import_address): a nasty hack 1961 to force the address of imported data symbols into 1962 dld_preloaded_symbols on win32, which does data imports 1963 differently to function imports (sheesh!). This functionality 1964 needs to be moved into the dld_preloaded_symbols generation code. 1965 demo/helldl with static linking is broken on win32 by this change, 1966 probably until after libtool-1.3 =(O| 1967 * demo/foo.h: make sure __CYGWIN32__ is always defined on cygwin32 1968 systems. Use the correct __declspec macro for lib exports/imports 1969 on cygwin32. 1970 * demo/foo.c, demo/hello.c: Make sure we tell foo.h that these 1971 sources are inside libfoo, and want to export symbols. 1972 19731998-12-20 Thomas Tanner <tanner@gmx.de> 1974 1975 * autogen: configure demo, depdemo, libltdl and mdemo 1976 * tests/mdemo-exec.test: renamed hell* to mdemo* 1977 * tests/mdemo-inst.test: ditto 1978 19791998-12-19 Thomas Tanner <tanner@gmx.de> 1980 1981 * libltdl/Makefile.am: build a normal libtool library 1982 * libltdl/ltdl.c: get LTDL_LIBRARY_PATH but don't make use of it yet, 1983 some reformatting 1984 * ltmain.in: fixed a bug which listed symbols in 1985 dld_preloaded_symbols twice 1986 * TODO: removed symbol export lists and deplibs 1987 19881998-12-18 Thomas Tanner <tanner@gmx.de> 1989 1990 * ltconfig.in: added need_lib_prefix and need_version, 1991 which determine whether we must prefix modules with 'lib' 1992 and whether versioning is required for libraries. 1993 * ltmain.in: allow modules names without 'lib' prefix, 1994 new -avoid-versioning option 1995 * doc/libtool.texi (link flags): updated documentation for -module, 1996 added -avoid-versioning 1997 * doc/libtool.texi (libtool script contents): 1998 documented the two new flags and archive_sym_cmds 1999 * doc/libtool.texi (tests): 2000 added (partially very short) documentation for assign.test, 2001 nomode.test, quote.test, sh.test 2002 * libltdl/ltdl.c: canonicalize module names, 2003 some cleanups and bugfixes, __ptr_t is predefined on 2004 some systems - use lt_ptr_t instead 2005 * mdemo/: renamed hell* to mdemo* (hell is already used in 2006 demo), updated the documentation, import sin and cos in main 2007 program rather than linking libfoo1 statically 2008 20091998-12-17 Gary V. Vaughan <gvv@techie.com> 2010 2011 * libtool.m4 (AM_PROG_LIBTOOL): Added AC_PREREQ(2.12) to prevent 2012 people using libtool with old autoconfs that don't provide the 2013 features we need. 2014 20151998-12-16 Alexandre Oliva <oliva@dcc.unicamp.br> 2016 2017 * NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS 2018 2019 * NEWS, configure.in, libtool.spec: Bumped to 1.2d for release 2020 2021 * Makefile.am (cvs-dist): our release tags are in lower case 2022 (cvs-diff): ditto 2023 (EXTRA_DIST): added README-alpha 2024 * README-alpha: minor adaptations 2025 * demo/Makefile.am, mdemo/Makefile.am, depdemo/Makefile.am: 2026 removed comment about special needs for distribution 2027 * depdemo/Makefile.am: don't generate dependencies 2028 * depdemo/configure.in: modified version number 2029 2030 * ltmain.in (-force-static, force_static): removed 2031 * libltdl/Makefile.am (CFLAGS): ditto 2032 * libltdl/configure.in: check for memory.h, rindex() and 2033 dlpreopening. Fixed NEED_USCORE caching policy. 2034 * libltdl/ltdl.h (lt_dlsym): make the name argument const 2035 * libltdl/ltdl.c (types): new variable: head of list of available 2036 dlopening mechanisms 2037 (lt_dltype_t): interface of a dlopening mechanism, with pointers 2038 to functions for init, exit, open, close and sym 2039 (lt_dlhandle_t): added pointer to interface type 2040 (strdup): don't name it strdup; it can be troublesome 2041 (strrchr): ditto; use rindex if available 2042 (LIBTOOL_STATIC): check HAVE_DLPREOPEN instead, and move to the 2043 end of the file, so that it becomes the header of the list 2044 (all): renamed all interface-implementation functions, to avoid 2045 name clashes, and created lt_dltype_t nodes for all of them 2046 (lt_dlinit): initialize all available interfaces; remove those 2047 that fail from the list. Return failure only if no interfaces 2048 could be initialized. 2049 (lt_dlexit): return number of failures 2050 (tryall_dlopen): try to open the library with all available 2051 interfaces 2052 (lt_dlopen): use tryall_dlopen; increased size of fixed buffers. 2053 We should probably make these bound-checked or dynamically 2054 allocated for the final release! Fix bug when filename did not 2055 contain slashes; should we check for `\\' too? Try old_library if 2056 everything else fails. 2057 (lt_dlclose): use the interface type for closing 2058 (lt_dlsym): make `symbol' const, use interface type for looking up 2059 * mdemo/Makefile.am: moved mdemo/modules/* back into mdemo 2060 (SUBDIRS): removed 2061 (libfoo2_la_LDFLAGS): added -static; nice test. However, since it 2062 causes -lm to linked into hell*, it causes tests that should fail 2063 to pass 2064 (noinst_HEADERS): no need to install foo.h 2065 * mdemo/configure.in: remove modules/Makefile 2066 tests/mdemo-exec.test: updated accordingly 2067 2068 * NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new 2069 maintainers. Detailed expected failures of libtldl+mdemo. Listed 2070 recent ports. Added full URL for the home page. Note that 2071 libtool C program is unusable. 2072 20731998-12-16 Bruno Haible <haible@ilog.fr> 2074 2075 * doc/libtool.texi (Tested platforms): broken `sed' programs 2076 20771998-12-16 Alexandre Oliva <oliva@dcc.unicamp.br> 2078 2079 * THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas 2080 Tanner, now that they're AUTHORS 2081 20821998-12-16 Stephan Kulow <coolo@kde.org> 2083 2084 * ltmain.in (freebsd-aout, freebsd-elf): added missing dot to 2085 versuffix 2086 20871998-12-16 Alexandre Oliva <oliva@dcc.unicamp.br> 2088 2089 * libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed 2090 (libtool): automatically update 2091 2092 * libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check 2093 * libltdl/ltdl.c: include them 2094 2095 * demo/configure.in (BINARY_HELLDL): test whether dlopen is 2096 supported at configure time 2097 * demo/Makefile.am (helldl): use automake conditionals to build 2098 helldl as a script or as a binary program 2099 2100 * tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test 2101 (clean-local): don't clean libltdl any more 2102 * tests/ltdl-conf.test: removed 2103 * tests/ltdl-inst.test: ditto 2104 * tests/ltdl-make.test: ditto 2105 * tests/ltdl-unst.test: ditto 2106 * tests/mdemo-make.test: updated accordingly 2107 * tests/mdemo-inst.test: ditto 2108 * tests/mdemo-unst.test: ditto 2109 * doc/libtool.texi: ditto 2110 2111 * ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined 2112 only for -force-static; it should be removed soon, before people 2113 start to use it 2114 2115 * configure.in (AC_CONFIG_SUBDIRS): added libltdl 2116 * Makefile.am (SUBDIRS): build libltdl by default 2117 (DIST_SUBDIRS): simplify distribution of demo and mdemo 2118 (libtool, clibtool, libtoolize, ltconfig, ltmain.sh): add 2119 srcdir where appropriate 2120 (ACINCLUDE_M4_LIST): new rule for maintaining links from 2121 acinclude.m4 to libtool.m4 2122 (*demo/Makefile.in): don't update autoconf/automake files any 2123 more; make check is needed 2124 21251998-12-14 Gary V. Vaughan <gvv@techie.com> 2126 2127 * ltconfig.in (archive_cmds): tweaked for cygwin b18->b20.1 2128 compatibility and fixed a bug with generating the export 2129 definitions file. This is only tested on b20.1, but should 2130 work back to b18 at least. 2131 21321998-12-11 Thomas Tanner <tanner@gmx.de> 2133 2134 * ltmain.in: -module implies now -export-dynamic, 2135 dlpreopen files if we're linking statically 2136 * doc/libtool.texi (link flags): added documentation for -module 2137 and the tests for mdemo and libltdl 2138 * mdemo/Makefile.am: replaced -dlpreopen with -dlopen 2139 21401998-12-09 Alexandre Oliva <oliva@dcc.unicamp.br> 2141 2142 * PORTING: removed the text Akim Demaille converted to .texi 2143 21441998-12-09 Akim Demaille <demaille@inf.enst.fr> 2145 2146 * doc/libtool.texi: converted inter-library dependencies 2147 instructions from PORTING 2148 21491998-12-09 Alexandre Oliva <oliva@dcc.unicamp.br> 2150 2151 * ltmain.in (convenience, deplibs): propagate dependencies 2152 * libltdl/Makefile.am (noinst_HEADERS): don't install ltdl.h yet 2153 (noinst_LTLIBRARIES): ditto for libltdl.la 2154 21551998-12-08 Gary V. Vaughan <gvv@techie.com> 2156 2157 * README-alpha: adapted the release procedure from 2158 automake/HACKING. 2159 * Makefile.am: adapted the cvs-dist and cvs-diff rules from 2160 automake/Makefile.am. I guess this is probably safe to use 2161 already, but I didn't test it as it tags the CVS tree. If 2162 it needs tweaking, we'll find out come 1.2d. 2163 21641998-12-08 Thomas Tanner <tanner@gmx.de> 2165 2166 * ltconfig.in: fixed some typos in archive_sym_cmds 2167 * ltmain.in: replaced basename with a sed expression 2168 21691998-12-07 Alexandre Oliva <oliva@dcc.unicamp.br> 2170 2171 * configure.in: we no longer use PRCS 2172 2173 * doc/libtool.texi (author): listed all the AUTHORS 2174 (Dlopen issues): added reference to libltdl, still undocumented 2175 (C++ libraries): it's not *that* simple, after all :-( 2176 (Inter-library dependencies): they're back! 2177 21781998-12-04 Alexandre Oliva <oliva@dcc.unicamp.br> 2179 2180 * libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't 2181 work, use `test a = b' instead 2182 2183 * Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist 2184 2185 * ltconfig.in (solaris): do not use $CC for linking if GNU ld is 2186 not available 2187 21881998-12-04 Manfred Weichel <Manfred.Weichel@pdb.siemens.de> 2189 2190 * ltconfig.in: Port to SCO UnixWare 7.x. 2191 21921998-12-03 Thomas Tanner <tanner@gmx.de> 2193 2194 * ChangeLog: converted CR/LF back to CR format 2195 * ltconfig.in: new variable sys_lib_search_path for searching 2196 of installed libraries, export archive_sym_cmds and 2197 sys_lib_search_path 2198 * ltmain.in: use sys_lib_search_path, removed extradeplibs 2199 (they're not portable) 2200 22011998-12-02 Gary V. Vaughan <gvv@techie.com> 2202 2203 * libltdl/configure.in: look for string.h or else strings.h, and 2204 also check for ANSI strrchr() function. Fix `undescore before 2205 symbols' macro to not rely on a.out (cygwin uses a.exe!). Fix 2206 `underscore for dlsym' to set cache variable properly, not just in 2207 environment of AC_DEFINE(NEED_USCORE). 2208 * libltdl/ltdl.h (__ptr_t): for K&R compatibility using char*. 2209 * libltdl/ltdl.c (strrchr): fallback function incase none is 2210 defined in libc. 2211 (trim, ltdlopen): replace rindex with ANSI strrchr. 2212 Add static function declarations so that we get type checking with 2213 ANSI compilers. Use __ptr_t instead of void*. 2214 22151998-12-01 Thomas Tanner <tanner@gmx.de> 2216 2217 * ltconfig.in: added -export-symbols support for GNU ld and 2218 Solaris (untested), archive_sym_cmds for -export-symbols 2219 * doc/libtool.texi, ltmain.in: -export-symbols is now 2220 independent from -export-dynamic and does not work for modules 2221 anymore 2222 * ltmain.in: added some checks for -export-symbols 2223 * mdemo/modules/Makefile.am: replaced -export-symbols with 2224 -export-dynamic since it doesn't work for modules 2225 22261998-12-01 Gary V. Vaughan <gvv@techie.com> 2227 2228 * README: Updated homepage pointer to gnu libtool page. 2229 2230 * ltconfig.in (ltdll.c): update the ltdll.c file for cygwinb20. 2231 Based on code from Mumit Khan <khan@xraylith.wisc.edu>. 2232 (archive_cmds): correct typo libtool.c->ltdll.c. Update shell 2233 commands for cygwin32. 2234 2235 * libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): New macro; find out 2236 whether compiled symbols have an extra leading underscore. 2237 (AM_SYS_NM_PARSE): New macro (converted to m4 from ltconfig.in); 2238 find a sed expression to parse global symbols from the output of 2239 $NM. 2240 (AM_PROG_LIBTOOL): require AM_SYS_NM_PARSE and 2241 AM_SYS_SYMBOL_UNDERSCORE. 2242 * demo/dlmain.c (main): Remove a single leading underscore from 2243 compiled symbol names if necessary. 2244 22451998-12-01 Alexandre Oliva <oliva@dcc.unicamp.br> 2246 2247 * config.guess, config.sub: imported from autoconf pre-2.13 2248 22491998-11-27 Gary V. Vaughan <gvv@techie.com> 2250 2251 * libtool (AM_PROG_LD): Oops... we need to know the host_os for 2252 the changes below. I'm not sure whether mingw32 and os2 support 2253 UNC paths, if they did we wouldn't need the check, we could use 2254 UNC paths on all three; or if the bug with $LD not being 2255 shell-meta escaped was fixed, we could use '\\' separators on all 2256 three. AC_REQUIRE'ed AC_CANONICAL_HOST. 2257 2258 * libtool.m4 (AM_PROG_LD): Cannonicalize the absolute path for the 2259 ld program; The order is funny to provide canonicalization to 2260 paths with '\\' separators as well as '/'. 2261 * ltconfig.in: ditto. 2262 2263 * AUTHORS: Added myself as a co-maintainer. 2264 2265 * ltconfig.in (archive_cmds): The `;\' in a compound statement is 2266 expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to 2267 `;'. 2268 22691998-11-25 Alexandre Oliva <oliva@dcc.unicamp.br> 2270 2271 * libtool.spec (URL): point to www.gnu.org 2272 (Source): point to ftp.gnu.org 2273 2274 * Makefile.am (EXTRA_DIST): removed libtool.prj 2275 Reported by Akim Demaille <demaille@inf.enst.fr> 2276 22771998-11-24 Alexandre Oliva <oliva@dcc.unicamp.br> 2278 2279 * ltconfig.in (echo): avoid shell error messages when we're 2280 testing for large command line support 2281 Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de> 2282 2283 * doc/PLATFORMS: updated last-tested release for platforms I've 2284 got access to 2285 2286 * THANKS: added Chris P. Ross 2287 22881998-11-24 Chris P. Ross <cross@eng.us.uu.net> 2289 2290 * ltconfig.in: added recognition of the dynamic linker on BSD/OS 4.x 2291 * README: added BSD/OS 4.x to the list of supported platforms 2292 * doc/PLATFORMS: added BSD/OS 4.x support for various host id's 2293 22941998-11-24 David Heine <dlheine@truffle.Stanford.EDU> 2295 2296 * ltmain.in (pass_all): actively pass the flags 2297 22981998-11-24 Thomas Tanner <tanner@gmx.de> 2299 2300 * depdemo: added inter-library dependencies demo (doesn't work yet!) 2301 * AUTHORS: added myself to the list of maintainers 2302 23031998-11-22 Thomas Tanner <tanner@gmx.de> 2304 2305 * libltdl: added support for .la files, LGPL license, 2306 K&R compatibility, some API changes and bugfixes 2307 * ltmain.in: renamed -module flag (for compiling) to -force-static, 2308 define -DSTATIC when compiling static .o files, 2309 do not include directories in dld_preloaded_symbols 2310 * mdemo: modified mdemo to work with the new libltdl 2311 * tests/mdemo-exec.test, tests/mdemo-inst.test: use .la files 2312 23131998-11-21 Alexandre Oliva <oliva@dcc.unicamp.br> 2314 2315 * libltdl/ltdl.c: replace NULL with 0, so that we don't depend on 2316 header files defining it. 2317 2318 * ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create 2319 libraries with gcc -shared if using gcc without GNU ld. 2320 2321 * ltconfig.in: replaced occurrences of solaris2 with solaris, to 2322 prepare for Solaris 7 2323 23241998-11-19 Alexandre Oliva <oliva@dcc.unicamp.br> 2325 2326 * mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen 2327 (hell_LDFLAGS): added -export-dynamic and -dlopen 2328 (SUBDIRS, INCLUDES): added modules directory 2329 (foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules 2330 * Makefile.am: ditto 2331 * tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved 2332 * mdemo/modules/Makefile.am: new file 2333 2334 * */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies 2335 2336 * ltmain.in: missing `test' between `&&' and `"$module"' 2337 2338 * ltconfig.in (echo_test_string): the whole ltconfig script was 2339 too much for DU4.0's ksh, but the first 50 lines will be enough. 2340 2341 * ltmain.in (installed): new variable defined within a .la file, 2342 so that libtool can now link already-installed libraries into a 2343 program. 2344 * NEWS: ditto 2345 * doc/libtool.texi (Linking executables): document it 2346 2347 * ltmain.in (output_objdir): compute it from $output, not $arg 2348 2349 * tests/mdemo-inst.test (libltdl): install it 2350 * tests/mdemo-unst.test (libltdl): uninstall it 2351 * tests/Makefile.am (TESTS): list ltdl-unst.test before mdemo-conf.test 2352 23531998-11-18 Alexandre Oliva <oliva@dcc.unicamp.br> 2354 2355 * NEWS: -module and libtldl 2356 * mdemo/Makefile.am: ../libltdl is within $(srcdir) 2357 23581998-11-18 Thomas Tanner <tanner@gmx.de> 2359 2360 * libltdl, Makefile.am: added libltdl (a system independent 2361 dlopen wrapper library extracted from mdemo) 2362 * ltmain.in: added -module flag for compiling and linking of 2363 modules. If enabled it compiles always both .o (with -DLT_RENAME) 2364 and .lo files 2365 * mdemo: modified mdemo to work with libltdl 2366 * tests/ltdl*: added tests for libltdl 2367 23681998-11-16 Steve Price <sprice@hiwaay.net> 2369 2370 * ltconfig.in: when $host_os is freebsd[23]* determine whether 2371 the current linker format is a.out or ELF 2372 * ltmain.in: add two new $version_type's, freebsd-aout and 2373 freebsd-elf, to support above change 2374 23751998-11-16 Stephan Kulow <coolo@kde.org> 2376 2377 * ltconfig.in: extent no_builtin_flag to contain -fno-rtti and 2378 -fno-exceptions in case we compile with a gcc, that supports 2379 this options (egcs and gcc >= 2.8) 2380 23811998-11-16 Alexandre Oliva <oliva@dcc.unicamp.br> 2382 2383 * ltmain.in (C_compiler): copy $CC before it is overwritten with 2384 command-line compiler, so that we can use it to compile C sources 2385 generated during the build. This fixes the problem that showed up 2386 with -export-dynamic of C++ programs in egcs 1.1. 2387 * NEWS: ditto 2388 23891998-11-12 Alexandre Oliva <oliva@dcc.unicamp.br> 2390 2391 * PORTING: Porting instructions are in the libtool manual already 2392 2393 * NEWS: Mention -export-symbols and new dlpreopen 2394 23951998-11-11 Alexandre Oliva <oliva@dcc.unicamp.br> 2396 2397 * ltmain.in (IFS): revert Gary's patch when parsing version 2398 information; we still use `:' here :-) 2399 2400 * NEWS: updated 2401 * PORTING: new file, with general instructions and inter-library 2402 dependencies tips 2403 24041998-11-11 Gary V. Vaughan <gvv@techie.com> 2405 2406 * ltconfig.in: make use of '~' field separator in reload_cmds, 2407 old_archive_from_new_cmds, old_archive_cmds, archive_cmds, 2408 old_postinstall_cmds, postinstall_cmds, old_postuninstall_cmds, 2409 postuninstall_cmds and finish_cmds, so that the semi-colons inside 2410 if/then/else/fi and for/do/done etc. do not break the eval loop in 2411 ltmain.in (below). 2412 * ltmain.in: changed all of the eval loops to use an IFS of `~', 2413 to allow differentiation between the end-of-statement-; 2414 (now `~' is used) and end-of-substatement-; (still `;'). This 2415 fixes AIX and win32 at least. 2416 24171998-11-11 Alexandre Oliva <oliva@dcc.unicamp.br> 2418 2419 * ltconfig.in (sunos*, sympat, symxfrm): remove underscore 2420 prepended by the compiler 2421 24221998-11-10 Toshio Kuratomi <badger@prtr-13.ucsc.edu> 2423 2424 * ltconfig.in: re-enable deplibs 2425 * ltmain.in: support deplibs, at least for GNU/Linux/x86 2426 Updated to current libtool by Thomas Tanner <tanner@gmx.de> 2427 24281998-11-10 Gordon Matzigkeit <gord@trick.fig.org> 2429 2430 * ltmain.in (link): Make the relink warning less harsh. 2431 24321998-11-07 William M. Perry <wmperry@aventail.com> 2433 2434 * ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds 2435 24361998-11-07 Alexandre Oliva <oliva@dcc.unicamp.br> 2437 2438 * ltconfig.in: add --falback-echo, to be used if everything else 2439 fails. The tests now check the behavior of $echo for very large 2440 strings, because some echo commands would just core dump (e.g., 2441 Solaris' printf). If too large strings fail, smaller ones are 2442 tested. 2443 (ltecho): arrange that, if the --fallback-echo method is selected, 2444 echo will be defined in the libtool script so as to re-run itself, 2445 not ltconfig 2446 * ltmain.in: add --fallback-echo 2447 (qecho) ensure that, if --falback-echo is being used, qecho is 2448 defined with the full pathname of the libtool script 2449 2450 * tests/sh.test (test X): ensure that the double-quote supposed to be 2451 reported is really reported 2452 24531998-11-07 Thomas Tanner <tanner@gmx.de> 2454 2455 * mdemo/main.c: removed hardcoded library names; link against -lm 2456 * tests/mdemo-exec, tests/mdemo-inst: pass the library names 2457 to the program 2458 24591998-11-07 Marc J. Fraioli <fraioli@dg-rtp.dg.com> 2460 2461 * README: Added DG/UX 2462 * doc/PLATFORMS: ditto 2463 24641998-11-04 Michael Tiemann <tiemann@cygnus.com> 2465 2466 * ltconfig.in (irix6): it's a little bit different from irix5 2467 24681998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br> 2469 2470 * THANKS: Added Thomas Tanner and Gary V. Vaughan 2471 2472 * ltconfig.in, ltmain.in: updated and fixed the patches below 2473 24741998-11-04 Thomas Tanner <tanner@gmx.de> 2475 2476 * mdemo/*: added new demo to demonstrate building of dlopenend 2477 modules 2478 * tests/Makefile.am, tests/mdemo*: added some tests for mdemo 2479 24801998-11-04 Gary V. Vaughan <gvv@techie.com> 2481 2482 * demo/configure.in: added AC_EXEEXT macro so that the tests can 2483 work on cywin32/mingw32 hosts. This requires the current CVS 2484 autoconf 2485 24861998-11-04 Thomas Tanner <tanner@gmx.de> 2487 2488 * ltmain.in: New flag -export-symbols; new dlpreopen system 2489 * demo/dlmain.c: removed dld_preloaded_symbol_count 2490 24911998-11-04 Ian Lance Taylor <ian@cygnus.com> 2492 2493 * ltmain.in: On installation, don't get confused if the same name 2494 appears more than once in the list of library names. 2495 24961998-11-04 Ian Lance Taylor <ian@cygnus.com> 2497 2498 * ltconfig.in: Add objext and libext variables. Check for object 2499 suffix. Check for mingw32* as well as cygwin32*. Use objext when 2500 testing compiler. Add support for Visual C++ on cygwin32 when not 2501 using gcc. Add objext, libext, and fix_srcfile_path to generated 2502 libtool script. 2503 * ltmain.in: Use .${objext} rather than .o. Use fix_srcfile_path 2504 if it is set. Check for .obj as well as for .o, and for .lib as 2505 well as for .a. Use .${libext} rather than .a when creating old 2506 libraries. 2507 * libtoolize.in: Change initial /bin/sh to @SHELL@. 2508 * libtool.m4 (AM_PROG_LIBTOOL): Add AC_REQUIRE for 2509 AC_CANONICAL_BUILD, so that autoconf doesn't get mixed up by the 2510 AC_REQUIRE in AC_CHECK_TOOL. 2511 25121998-11-04 Ian Lance Taylor <ian@cygnus.com> 2513 2514 * ltconfig.in: Look in the right directory for libtool.c in 2515 archive_cmds for cygwin32. 2516 25171998-11-04 Ian Lance Taylor <ian@cygnus.com> 2518 2519 * ltconfig.in: Fix cygwin32 support to avoid using a double 2520 extension, to delete the def file, to set version_type to windows, 2521 and to include versuffix in the DLL name. 2522 * ltmain.in: Add support for a version_type of windows. 2523 25241998-11-04 Ian Lance Taylor <ian@cygnus.com> 2525 2526 * ltconfig.in: Add cygwin32 support. 2527 * libtool.m4 (AM_PROG_LIBTOOL): Call AM_SYS_LIBTOOL_CYGWIN32 on a 2528 cygwin32 host. Pass DLLTOOL and AS to ltconfig. 2529 (AM_SYS_LIBTOOL_CYGWIN32): New macro. 2530 25311998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br> 2532 2533 * libtool.m4 (sco): fix typo 2534 25351998-11-04 Ian Lance Taylor <ian@cygnus.com> 2536 2537 * ltconfig.in: On AIX, don't treat GNU ld specially. 2538 25391998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br> 2540 2541 * ltconfig.in (hardcode_minus_L): Revert Ian's patch for 2542 ltconfig.in. Although -L hardcoding is not used with GNU ld, it 2543 does happen, so hardcode_minus_L must be set to yes. 2544 2545 * ltconfig.in (compiler_o_lo): check whether we can write directly 2546 to a .lo 2547 2548 * ltmain.in (compiler_o_lo): if not, write to .o and rename it 2549 25501998-11-04 Ian Lance Taylor <ian@cygnus.com> 2551 2552 * ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to 2553 no. 2554 * ltmain.in: Add some hacks to make SunOS --enable-shared work 2555 when using GNU ld. 2556 25571998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br> 2558 2559 * THANKS: Added Marc J. Fraioli 2560 25611998-11-04 Marc J. Fraioli <fraioli@dg-rtp.dg.com> 2562 2563 * ltconfig.in (dgux): new supported platforms 2564 25651998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br> 2566 2567 * ltconfig.in (need_locks): if neither `-c -o' nor hard links are 2568 available, fallback to not so safe mechanism, by setting 2569 need_locks to warn 2570 * ltmain.in (need_locks): when need_locks is set to warn, use the 2571 lockfile to try to fail in case of incorrect concurrent builds 2572 2573 * THANKS: Added Eric Estievenart 2574 25751998-11-04 Eric Estievenart <eric@via.ecp.fr> 2576 2577 * doc/libtool.texi (Compile mode): Document that -o is fully 2578 supported. 2579 2580 * libtool.m4 (libtool-lock): new ARG_ENABLE; sets (need_locks) 2581 * ltconfig.in (disable-lock): control need_locks 2582 (hard_links): check whether hard-links can be used for locking 2583 * ltmain.in (need_locks): use $output_obj.lock for locking 2584 25851998-11-03 Alexandre Oliva <oliva@dcc.unicamp.br> 2586 2587 * ltmain.in: correctly create libraries and programs with 2588 directory components in their names 2589 25901998-11-03 Eric Estievenart <eric@via.ecp.fr> 2591 2592 * ltmain.in (output_obj): typo 2593 25941998-11-02 Ian Lance Taylor <ian@cygnus.com> 2595 2596 * ltconfig.in: For sunos4, add ${libname}.so$versuffix to 2597 library_names_spec. 2598 * ltmain.in: For version_type of sunos, set versuffix even if 2599 -version-info was not used. 2600 26011998-11-02 Alexandre Oliva <oliva@dcc.unicamp.br> 2602 2603 * ltmain.in (libobj): default value must not contain directory 2604 components 2605 26061998-11-02 Eric Estievenart <eric@via.ecp.fr> 2607 2608 * ltconfig.in (compiler): detect if the compiler supports 2609 -c and -o flags, create a variable compiler_c_o. Also issue 2610 a big warning if it is not supported 2611 2612 * ltmain.in (compile): enable the -o option as input for libtool. 2613 The objects are not moved if the compiler supports -o with -c. 2614 Sources and objects can contain relative directories. 2615 (link): enable the linking of executables into relative directories 2616 26171998-11-02 Alexandre Oliva <oliva@dcc.unicamp.br> 2618 2619 * AUTHORS: added myself as a co-maintainer 2620 * THANKS: and removed my name from here 2621 2622 * autogen: new script; run it to bootstrap libtool after checking 2623 it out from CVS 2624 2625 * libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as 2626 suggested by Robert Lipe <robertl@dgii.com> 2627 26281998-10-31 Gordon Matzigkeit <gord@trick.fig.org> 2629 2630 * demo/Makefile.am (hc-libpath): Use parameters from the libtool 2631 in the top build directory, since the one in the demo directory is 2632 not guaranteed to exist. 2633 26341998-10-27 Alexandre Oliva <oliva@dcc.unicamp.br> 2635 2636 * demo/Makefile.am (objdir): there are no longer quotes around 2637 objdir in the libtool script 2638 26391998-10-27 Gordon Matzigkeit <gord@trick.fig.org> 2640 2641 * ltconfig.in (dynamic_linker): Echo the result to fd 6, so that 2642 --silent works correctly. From William M. Perry. 2643 26441998-09-24 Gordon Matzigkeit <gord@trick.fig.org> 2645 2646 * ltmain.in (link): Fix problems when building only static 2647 libraries. From Owen Taylor. 2648 26491998-08-20 Gordon Matzigkeit <gord@trick.fig.org> 2650 2651 * ltmain.in (install): When library_names_spec has redundancies, 2652 avoid deleting the main library when installing symlinks. From 2653 Jeff Dairiki. 2654 (link): Get rid of backticks in a here doc comment. 2655 This causes segfaults on Solaris 2. From Aleksandar Bakic. 2656 (finish): Don't display messages 2657 2658 * ltconfig.in (archive_cmds): On HP-UX 9, make sure we don't try 2659 to move a file to itself. From Jeff Dairiki. 2660 26611998-08-19 Gordon Matzigkeit <gord@trick.fig.org> 2662 2663 * ltconfig.in: Make changes to accomodate ltmain.c. 2664 2665 * Makefile.am (clibtool): New target for the C version of libtool. 2666 2667 * ltmain.c: Experimental C version of libtool. 2668 26691998-07-10 Ian Lance Taylor <ian@cygnus.com> 2670 2671 * ltmain.in (install): Test against both $SHELL and /bin/sh. 2672 26731998-06-30 Gordon Matzigkeit <gord@trick.fig.org> 2674 2675 * ltmain.in: Convenience archive support. From Ulrich Drepper. 2676 2677 * ltconfig.in (postinstall_commands): Change libraries to be 2678 executable on Solaris in order to prevent ldd from moaning. From 2679 Julian Gosnell. 2680 (whole_archive_flag_spec): New variable to shortcut convenience 2681 archive expansion. From Ulrich Drepper. 2682 26831998-06-11 Gordon Matzigkeit <gord@profitpress.com> 2684 2685 * ltconfig.in, ltmain.in: Change globs to accept forward slashes 2686 in absolute directory names used on DOS-like systems. From Robert 2687 S. Maier. 2688 2689Thu May 28 18:59:08 1998 Ian Lance Taylor <ian@cygnus.com> 2690 2691 * ltconfig.in: Use $SHELL when invoking shell scripts. 2692 26931998-05-21 Gordon Matzigkeit <gord@profitpress.com> 2694 2695 * ltmain.in (compile): Don't have `-static' turn off libtool 2696 libraries, so that people can use it just to guarantee that `.o' 2697 files exist. Suggested by David Mosberger-Tang. 2698 26991998-05-18 Gordon Matzigkeit <gord@profitpress.com> 2700 2701 * ltmain.in (link): Possibly reexec the shell from within the 2702 wrapper script. 2703 Allow `-version-info' and `-release' to coexist again. If people 2704 want to shoot themselves in the foot, I'd better let them do so, 2705 so that people who are smart enough not to can squeeze out another 2706 ounce of functionality. From Tim Janik. 2707 (version_vars): Delete dead variable. 2708 2709 * ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at 2710 last. Reported by Jason Nordwick. 2711 2712 * libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if 2713 test ...; then : ; else ...' constructs to `if test ! ...; then 2714 ...', for clarity. 2715 27161998-05-17 Gordon Matzigkeit <gord@profitpress.com> 2717 2718 * ltmain.in (LC_ALL, LANG): Save these values and restore them 2719 during execute mode. From Pavel Kankovsky. 2720 (mode): Accept strace and truss as programs that throw us into 2721 execute mode. From Pavel Kankovsky. 2722 27231998-05-07 Ian Lance Taylor <ian@cygnus.com> 2724 2725 * ltconfig.in: Don't use .$versuffix or .$major. Instead, assume 2726 the variable will include any required prefix. 2727 * ltmain.in: If no -version-info option was used, produce empty 2728 version strings rather than 0.0.0. When making library symlinks, 2729 avoid making a symlink if the name would be the same. 2730 27311998-04-27 Gordon Matzigkeit <gord@profitpress.com> 2732 2733 * ltmain.in (link): Support `unsupported' as a hardcode_action. 2734 Reported by Lars Hecking. 2735 (lib_linked): Do some sanity checking to make sure that we 2736 actually do link libtool libraries into the program to prevent the 2737 above problem from happening again. 2738 27391998-04-20 Gordon Matzigkeit <gord@profitpress.com> 2740 2741 * ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work. 2742 Reported by Lars Hecking. 2743 27441998-04-19 Gordon Matzigkeit <gord@profitpress.com> 2745 2746 * Makefile.am (maintainer-rekey): New rule to force us to change 2747 Project-Version after we make a release. This keeps all version 2748 numbers in sync, rather than branching just before the release. 2749 (maintainer-release, maintainer-checkin): Use maintainer-rekey. 2750 2751 * ltmain.in (finish): Notice when a finish command fails, so that 2752 we can add it to the list of recommendations. 2753 27541998-04-17 Gordon Matzigkeit <gord@profitpress.com> 2755 2756 * libtool.m4 (AM_PROG_LIBTOOL): Append file descriptor 5 to 2757 config.log, so that configure doesn't clobber the messages that 2758 ltconfig put there. From David Taylor. 2759 27601998-04-15 Gordon Matzigkeit <gord@profitpress.com> 2761 2762 * ltconfig.in (archive_cmds): Try using `$CC -shared' when 2763 configuring for GCC under irix5 and irix6. From Wolfram Gloger. 2764 (ofile): Add `--output' flag to change the name of the generated 2765 libtool. Suggested by Wolfram Gloger. 2766 27671998-04-14 Gordon Matzigkeit <gord@profitpress.com> 2768 2769 * ltmain.in: Remove all hardcoded references to ltmain.in in 2770 favour of $PACKAGE and $PROGRAM. 2771 (install): Compute the installation name for programs, in case we 2772 install a relinked file which has a different name. Reported by 2773 Pieter Schoenmakers. 2774 2775 * ltconfig.in (echo): Try using the ksh(1) `print -r' builtin 2776 command, before reverting to printf(1). 2777 2778 * Makefile.am (libtool): Use $(SHELL) when invoking ltconfig. 2779 2780 * ltconfig.in (echo): Rewrite the test for a working echo so that 2781 we win on Solaris by avoiding printf(1), if possible. 2782 2783 * tests/quote.test (echo): Update the echo test from ../ltconfig.in. 2784 27851998-04-13 Ian Lance Taylor <ian@cygnus.com> 2786 2787 * libtool.m4 (AM_PROG_NM): Don't override NM in the environment. 2788 27891998-04-13 Gordon Matzigkeit <gord@profitpress.com> 2790 2791 * ltmain.in: New `--config' flag to print out all configured 2792 variables. 2793 2794 * libtool.m4: Pass ltconfig the undocumented --no-reexec flag, 2795 since we call it explicitly using CONFIG_SHELL. 2796 2797 * ltconfig.in: Restart the script under a different shell if 2798 CONFIG_SHELL is not /bin/sh. This way, people can use Bash if 2799 they don't have a working echo program. 2800 2801 * ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when 2802 generating executable scripts. 2803 2804 * libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug' 2805 flag to begin shell tracing. 2806 2807 * ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we 2808 have GNU ld. Reported by Robert S. Maier. 2809 28101998-04-06 Gordon Matzigkeit <gord@profitpress.com> 2811 2812 * ltconfig.in (pic_flag): Create more than just a null C file, so 2813 that the SunPRO 4.2 cc doesn't complain. From Bob Friesenhahn. 2814 (gnu_ld_acts_native): Delete this variable. There is just too 2815 much version skew to try to pretend GNU ld is the same as the 2816 system ld. Reported by Ian Lance Taylor. 2817 (hardcode_action): Don't bother relinking or aborting on systems 2818 that are too dynamic to have a consistent hardcode method. 2819 Reported by Doug Winterburn. 2820 28211998-03-24 Gordon Matzigkeit <gord@profitpress.com> 2822 2823 * doc/libtool.texi: A little proofreading. From Albert 2824 Chin-A-Young. 2825 28261998-03-23 Gordon Matzigkeit <gord@profitpress.com> 2827 2828 * ltconfig.in: Treat HP-UX 11 just like HP-UX 10. From Jeff Law. 2829 28301998-03-21 Gordon Matzigkeit <gord@profitpress.com> 2831 2832 * ltconfig.in (reload_flag): Correct a tiny bug where `--silent' 2833 would still print out the reload flag. From Stephan Kulow. 2834 28351998-03-20 Ian Lance Taylor <ian@cygnus.com> 2836 2837 * libtool.m4: Use changequote to avoid problems with square 2838 bracket patterns. 2839 28401998-03-20 Gordon Matzigkeit <gord@profitpress.com> 2841 2842 * Release 1.2. 2843 28441998-03-18 Gordon Matzigkeit <gord@profitpress.com> 2845 2846 * ltmain.in: Rearrange some of the echos to make them more 2847 consistent. 2848 28491998-03-14 Gordon Matzigkeit <gord@profitpress.com> 2850 2851 * ltmain.in: Break up an echo command that causes Solaris printf 2852 to dump core. Apparently the Solaris people hardcoded a 2110-byte 2853 buffer into their printf(1). Feh. From John Judge. 2854 28551998-03-11 Gordon Matzigkeit <gord@profitpress.com> 2856 2857 * ltconfig.in: Change the test for the PIC compiler flag so that 2858 we assume it doesn't work if there are any warning messages. This 2859 fixes a bug using old GCC's on HP-UX. Reported by Akim Demaille. 2860 28611998-03-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 2862 2863 * Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create 2864 a file ltconfig in the build directory. 2865 28661998-03-09 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> 2867 2868 * ltmain.in: Avoid unnecessary use of command substitution, 2869 replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\". 2870 2871 (link): Use ${1+"$@"} in wrapper scripts in order to pass 2872 arguments safely to a program. 2873 2874 * ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches 2875 m68*. 2876 28771998-03-08 Gordon Matzigkeit <gord@profitpress.com> 2878 2879 * Release 1.1. 2880 2881 * ltmain.in: <sigh> I like `here documents' a lot, but apparently 2882 they are so badly handled by old and buggy /bin/sh's, that 2883 replacing `cat <<EOF ... EOF' by `$echo "..."' improves libtool's 2884 speed by a factor of 5. So, I've eliminated here docs from the 2885 all-important ltmain.in. From Tom Lane. 2886 2887 * tests/tlibtool: Eliminate from distribution. 2888 2889 * tests/defs (libtool): Don't use tlibtool anymore, since we can now use 2890 the generated libtool directly. 2891 28921998-03-07 Gordon Matzigkeit <gord@profitpress.com> 2893 2894 * ltconfig.in: Copy the contents of ltmain.sh into the generated 2895 libtool. This should more than halve the execution times on old 2896 or buggy /bin/sh systems, such as HP-UX 9 and SunOS 4.1.4. From 2897 Tom Lane. 2898 28991998-03-05 Gordon Matzigkeit <gord@profitpress.com> 2900 2901 * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for 2902 the `default' package, so that people can control unnamed 2903 packages. 2904 (LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't 2905 support them. From Alexandre Oliva. 2906 29071998-03-01 Gordon Matzigkeit <gord@profitpress.com> 2908 2909 * ltconfig.in: Port to UnixWare 2.x. From Christopher Olsen. 2910 29111998-02-25 Gordon Matzigkeit <gord@profitpress.com> 2912 2913 * ltmain.in (compile): For consistency, honour the `-static' flag 2914 during compilation. 2915 29161998-02-23 Brendan Kehoe <brendan@cygnus.com> 2917 2918 * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): For 2919 --enable-shared, heed the value of $PACKAGE from AM_INIT_AUTOMAKE 2920 if given as the argument for the library to be built shared. 2921 29221998-02-20 Gordon Matzigkeit <gord@profitpress.com> 2923 2924 * libtool.m4, ltconfig.in (NM): Fix up a typo confusion between 2925 $ac_dir and $dir. Reported by Akim Demaille. 2926 2927 * ltmain.in (link): Don't allow both `-version-info' and 2928 `-release'. Reported by Danny Backx. 2929 29301998-02-18 Gordon Matzigkeit <gord@profitpress.com> 2931 2932 * Makefile.am (noinst_SCRIPTS): Remove lineno from distribution. 2933 2934 * lineno: Remove from distribution, as it is no longer needed. 2935 2936 * Makefile.am ($(srcdir)/ltconfig.in, $(srcdir)/ltmain.sh): 2937 Rewrite these rules not to use config.status or lineno. This 2938 makes things simpler, and reduces dependencies, so that the 2939 scripts are rebuilt and installed in srcdir only when necessary. 2940 Reported by Stephan Kulow. 2941 2942 * tests/sh.test (scripts): Remove the lineno script, since it is no 2943 longer distributed. 2944 2945 * tests/assign.test, if.test, test-e.test: Even though 15 tests looks 2946 impressive, these are now redundant. Remove them from the 2947 distribution. 2948 2949 * tests/sh.test: Do what assign.test, if.test, and test-e.test used to 2950 do. 2951 29521998-02-16 Gordon Matzigkeit <gord@profitpress.com> 2953 2954 * libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute 2955 directory names on MS-DOS. Suggested by Bob Friesenhahn. 2956 2957 * ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d' 2958 commands to `sed Nq', for efficiency. 2959 2960 * ltmain.in: Only egrep the first few lines of files in order to 2961 determine if they were libtool-generated. This prevents egrep(1) 2962 from taking forever to look at a 10MB binary on Solaris. From 2963 Stephan Kulow. 2964 2965 * tests/defs: Correctly identify absolute directory names on MS-DOS. 2966 Suggested by Bob Friesenhahn. 2967 29681998-02-11 Gordon Matzigkeit <gord@profitpress.com> 2969 2970 * ltconfig.in (no_undefined_flag): Add a flag to declare under 2971 Solaris that the library should not have any undefined 2972 references. Suggested by Bob Friesenhahn. 2973 2974 * ltmain.in (mkdir): Fix one more mkdir race. From H.J. Lu. 2975 29761998-02-08 Gordon Matzigkeit <gord@profitpress.com> 2977 2978 * ltconfig.in, ltmain.in (striplib, old_striplib): Ditto. 2979 2980 * ltconfig.in (profile_flag_pattern): Get rid of dead code. 2981 29821998-02-07 Gordon Matzigkeit <gord@profitpress.com> 2983 2984 * libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): New macros to 2985 modify the `--enable-shared' and `--enable-static' defaults in the 2986 configure script. This works a lot better than the old 2987 `enable_shared' and `enable_static' variables did. Reported by 2988 Bob Friesenhahn. 2989 2990 * tests/suffix.test (extensions): Added GNAT (GNU Ada Translator) 2991 suffices, `.ada', `.ads', `.adb'. From Samuel Tardieu. 2992 29931998-02-07 Samuel Tardieu <sam@inf.enst.fr> 2994 2995 * ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they 2996 are used by GNAT, the GNU Ada compiler). 2997 29981998-02-06 Gordon Matzigkeit <gord@profitpress.com> 2999 3000 * ltconfig.in: Turn on IRIX shared libraries again! 3001 3002 * libtool.m4 (LD): Use file(1) to discover which ABI we're using 3003 on IRIX, and propagate the correct linker flag. From Jim Wilson. 3004 3005 * ltconfig.in, ltmain.in (Xsed): `arg=-n; echo "$arg" | sed ...' 3006 gives problems, because the `-n' is interpreted as an option to 3007 echo(1). So, use `echo "X$arg" | sed -e 's/^X//' ...' everywhere, 3008 via the $Xsed convenience variable. Suggested by H.J. Lu. 3009 30101998-02-02 Gordon Matzigkeit <gord@profitpress.com> 3011 3012 * ltconfig.in: Turn off IRIX shared library support until 32-bit 3013 and 64-bit ABI differences can be resolved. 3014 30151998-01-28 Gordon Matzigkeit <gord@profitpress.com> 3016 3017 * libtool.m4 (LD): Reverse yesterday's change because `-old_ld' 3018 isn't accepted by GCC. 3019 30201998-01-27 Gordon Matzigkeit <gord@profitpress.com> 3021 3022 * ltconfig.in (soname_spec): Add in user-specified release numbers 3023 for every host system that supports an soname that differs from 3024 the linkname. 3025 3026 * libtool.m4 (LD): Add `-old_ld' to the list of flags that need to 3027 be passed through on SGI. Reported by Chris Lee. 3028 3029 * ltmain.in (release): Prepend a hyphen to the release number, and 3030 fix a typo because `-version-info' takes only 3 args. From 3031 H.J. Lu. 3032 30331998-01-25 Gordon Matzigkeit <gord@profitpress.com> 3034 3035 * ltconfig.in (library_names_spec): On Linux, use the 3036 user-specified release. 3037 3038 * ltmain.in (link): Allow the user to specify a release number for 3039 the library using the `-release' flag. Suggested by H.J. Lu and 3040 Ian Lance Taylor. 3041 30421998-01-23 Gordon Matzigkeit <gord@profitpress.com> 3043 3044 * tests/Makefile.am (TESTS_ENVIRONMENT): Export some important 3045 environment variables. Reported by Ian Haggard. 3046 30471998-01-19 Gordon Matzigkeit <gord@profitpress.com> 3048 3049 * ltconfig.in (old_postuninstall_cmds): Reorder so that chmod 3050 happens after ranlib. From Markus F.X.J. Oberhumer. 3051 3052 * ltmain.in (mode): Added `gcc*' and `*-gcc*' to the patterns that 3053 recognize compilers. From Pieter Schoenmakers. 3054 (link): Recognize `.a' files again. Suggested by Pieter 3055 Schoenmakers. 3056 30571998-01-18 Gordon Matzigkeit <gord@profitpress.com> 3058 3059 * ltmain.in (compile): Recognize `.asm' extension, for use with 3060 the nasm assembler. From Markus F.X.J. Oberhumer. 3061 3062 * tests/suffix.test (extensions): Recognize `.asm'. From Markus 3063 F.X.J. Oberhumer. 3064 30651998-01-12 Gordon Matzigkeit <gord@profitpress.com> 3066 3067 * ltconfig.in (runpath_var): Use instead of 3068 `hardcode_runpath_var'. 3069 30701998-01-11 Gordon Matzigkeit <gord@profitpress.com> 3071 3072 * ltmain.in (finish): Add a better --finish message. Suggested by 3073 Kenneth Albanowski. 3074 3075 * ltconfig.in, ltmain.in: Fix a few typos. 3076 30771998-01-03 Gordon Matzigkeit <gord@profitpress.com> 3078 3079 * ltmain.in (link): Quote the definition of $echo in the wrapper 3080 script. 3081 3082 * ltconfig.in (export_dynamic_flag_spec): Use `--export-dynamic' 3083 instead of `-export-dynamic', which is not accepted by all GNU 3084 ld's. From Eiichi Takamori. 3085 3086 * ltmain.in (install): Don't print silly `library stripping' 3087 warnings. Reported by Fran�ois Pinard. 3088 30891997-12-19 Gordon Matzigkeit <gord@profitpress.com> 3090 3091 * ltmain.in: Don't forget to quote the CDPATH substitution. From 3092 Tor Lillqvist. 3093 30941997-12-18 Gordon Matzigkeit <gord@profitpress.com> 3095 3096 * ltconfig.in, ltmain.in (CDPATH): Unset this environment variable 3097 so that HP-UX shells, at least, don't print out the directory name 3098 after a `cd' command. From Tor Lillqvist. 3099 31001997-12-10 Gordon Matzigkeit <gord@gnu.org> 3101 3102 * demo/Makefile.am (hardcode): Change a bunch of references to 3103 `$(LIBS)' to `-lm', since we no longer put -lm in LIBS. 3104 3105 * demo/configure.in: Delete the test for libm, since it is 3106 standard on every system. 3107 3108 * demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm, 3109 in accordance with new inter-library dependency code. 3110 3111 * ltmain.in (dependency_libs): Added to help people link programs 3112 without having to explicitly specify inter-library dependencies. 3113 3114 * ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3 3115 restriction to the generated libtool script. Reported by Stefan 3116 Westerfeld. 3117 31181997-12-05 Gordon Matzigkeit <gord@gnu.org> 3119 3120 * ltconfig.in (thisdir): Quote $echo in the generated libtool 3121 script for HP-UX. From Markus F.X.J. Oberhumer. 3122 3123 * ltmain.in (link): Recognize the `.s' suffix. From Markus 3124 F.X.J. Oberhumer. 3125 3126 * ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX 3127 because link_static_flag is never evaled. From Eric Backus. 3128 3129 * tests/suffix.test (extensions): Recognize `.s'. From Markus 3130 F.X.J. Oberhumer. 3131 31321997-12-01 Gordon Matzigkeit <gord@gnu.org> 3133 3134 * demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our 3135 dependencies so that parallel builds work correctly. From Jim 3136 Meyering. 3137 3138 * Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite 3139 these rules so that they are parallelizable. Reported by Jim 3140 Meyering. 3141 3142 * ltconfig.in (ltecho): We need special handling to quote the 3143 `echo' variable itself. From Alexandre Oliva. 3144 31451997-11-29 Gordon Matzigkeit <gord@gnu.org> 3146 3147 * ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken 3148 collect2 only on AIX 3. This avoids problems on other AIX 3149 versions. Reported by Stefan Westerfeld. 3150 3151 * ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds, 3152 except it is a single command which is evaled, and not shown. 3153 3154 * ltconfig.in: Port to AmigaOS. From Joop van de Wege. 3155 3156 * ltmain.in (echo): Delete preamble to check for a working echo, 3157 since we just use the one included in the generated libtool. 3158 3159 * ltconfig.in (echo): Include this definition in the generated 3160 libtool script. 3161 31621997-11-28 Gordon Matzigkeit <gord@gnu.org> 3163 3164 * ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH 3165 before checking. From Kaveh R. Ghazi. 3166 (NM): Delete an extraneous egrep from ltconfig. 3167 3168 * ltconfig.in (finish_cmds): Change back to using `ldconfig -n'. 3169 This makes Linux behave like other systems, which is more in line 3170 with what libtool needs. 3171 31721997-11-27 Gordon Matzigkeit <gord@gnu.org> 3173 3174 * ltmain.in: Change a whole bunch of `progname' variables to 3175 `modename'. This is for clarity, and to fix a tiny typo in finish 3176 mode. 3177 3178 * libtool.spec (Name, Version): Ditto. 3179 3180 * configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate 3181 the proper package name and version number. 3182 3183 * ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native 3184 linker on SunOS 4.x. Suggested by Alexandre Oliva. 3185 (deplibs): Change the defaults all over, since most systems cannot 3186 handle inter-library dependencies. 3187 3188 * libtool.m4, ltconfig.in (NM): Only look at the first line of the 3189 output from NM when determining whether it supports a command line 3190 option. This prevents false positives on OSes which ignore 3191 invalid flags, like HP-UX, which prints `nm: unknown option "B" 3192 ignored'. Reported by Kaveh R. Ghazi. 3193 3194 * ltconfig.in (finish_cmds): On Linux, update ld.so.cache by 3195 removing the `-n' flag from ldconfig. Suggested by Kenneth 3196 Albanowski. 3197 3198 * Makefile.am (maintainer-checkin, maintainer-release): New 3199 commands to reap the full benefit of using PRCS to maintain 3200 libtool version numbers. 3201 3202 * ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all 3203 addresses to __ptr_t. This fixes a bug due to a strict IRIX 3204 compiler. Suggested by Kaveh R. Ghazi. 3205 32061997-11-23 Gordon Matzigkeit <gord@gnu.org> 3207 3208 * ltmain.in (echo): For aesthetics, avoid using `$echo' when 3209 `echo' will do *exactly* the same thing. This prevents ugly 3210 `printf %s\n timestamp > some.lo' commands from appearing in the 3211 libtool output. 3212 (link): Delete the `-allow-undefined' flag because it is now the 3213 default. Make `-no-undefined' in order for people to declare that 3214 a library is entirely self-contained. This prevents maintainers 3215 from accidentally creating shared libraries that won't work on 3216 AIX. Reported by Stefan Westerfeld and Danny Backx. 3217 3218 * ltconfig.in (echo): Use an echo variable, just as in ltmain.in, 3219 because we need it for quoting substitutions. For most of the 3220 script, though, use the default echo, just like Autoconf does. 3221 Without this patch, character \001 ends up in global_symbol_pipe. 3222 Reported by Lars Hecking and J�rgen Fluk. 3223 3224 * ltmain.in (echo): Set default to `echo=echo'. Ooops. That's 3225 what you get for testing obscure code paths and forgetting to 3226 revert to the original version. Reported by Danny Backx. 3227 32281997-11-14 Gordon Matzigkeit <gord@gnu.org> 3229 3230 * ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD 3231 2.2. From Sean Kelly. 3232 (postuninstall_cmds, old_postuninstall_cmds): Commands to run 3233 after uninstall mode deletes the libraries. Suggested by Joop van 3234 de Wege. 3235 (export_dynamic_flag_spec): On HP-UX, add the `${wl}-E' 3236 export_dynamic_flag_spec. Reported by Matthias Hoelzer. 3237 32381997-11-11 Gordon Matzigkeit <gord@gnu.org> 3239 3240 * ltconfig.in, ltmain.in (sed_quote_subst): Oops. We forgot to 3241 quote backticks. Reported by Joop van de Wege. 3242 3243 * tests/quote.test: Add backticks to the backslashify test. 3244 32451997-11-09 Gordon Matzigkeit <gord@gnu.org> 3246 3247 * ltconfig.in (symcode): On IRIX, don't extract undefined 3248 symbols. When a function is inlined by G++, references to it are 3249 still marked as undefined in the object file. This means that our 3250 symbol file causes undefined references, because there are 3251 actually no matching global symbols. Reported by Paul Kendall. 3252 32531997-11-08 Gordon Matzigkeit <gord@gnu.org> 3254 3255 * ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool 3256 script fragment to the generated libtool, rather than to stdout. 3257 32581997-11-07 Gordon Matzigkeit <gord@gnu.org> 3259 3260 * libtool.m4 (LD): Add a more sophisticated test to determine the 3261 ABI flag on IRIX 6. Suggested by Lars Hecking and Ian Lance 3262 Taylor. 3263 3264 * ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this 3265 variable if we are running under AIX. Otherwise, we tickle a g++ 3266 bug under IRIX. From Paul Kendall. 3267 3268 * Change bug reporting address to <bug-libtool@gnu.org>. 3269 3270 * ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a 3271 wildcard argument to `-expect_unresolved'. From Stephan Kulow. 3272 32731997-11-06 Gordon Matzigkeit <gord@gnu.org> 3274 3275 * ltmain.in (link): Use libname_spec. 3276 3277 * ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was 3278 dropped between libtool-1.0 and now. Add it back in. Reported by 3279 Akim Demaille. 3280 Integrated more patches for OS/2. From Jeff Freedman. 3281 (libname_spec): New variable for OSes that don't require their 3282 libraries to look like `libNAME.a'. 3283 3284 * ltmain.in (link): Only use global_symbol_pipe if it has been 3285 defined. From Stephan Kulow. 3286 3287 * ltconfig.in (global_symbol_pipe): Protect C fragment under C++ 3288 compilers. From Stephan Kulow. 3289 3290 * Makefile.am ($(srcdir)/acinclude.m4, 3291 $(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that 3292 they can be run on any system. 3293 3294 * ltconfig.in (archive_cmds): For NetBSD, don't include deplibs. 3295 From Dieter Baron. 3296 3297 * ltmain.in (mkdir): Check that the directory doesn't exist before 3298 we exit with error, so that we don't get races during parallel 3299 builds. From H.J. Lu. 3300 (fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a 3301 bug that will empty base_compile unless we do this dummy 3302 assignment. From Marc van Kempen. 3303 33041997-10-22 Gordon Matzigkeit <gord@gnu.org> 3305 3306 * libtool.m4 (libtool_shared, libtool_static): Fixed logic error 3307 to reenable override of libtool's defaults by setting 3308 enable_shared or enable_static in configure.in. Reported by Tom 3309 Tromey and Stephan Kulow. 3310 3311 * ltmain.in (link): Add explicit support for compiler options that 3312 begin with `+'. Reported by Aubert Pierre. 3313 33141997-10-20 Gordon Matzigkeit <gord@gnu.org> 3315 3316 * ltmain.in: Silly me. Change a bunch of occurances of "* $dir *" 3317 into *" $dir "*. 3318 3319 * ltconfig.in (pic_flag): PIC is the default for AIX. From Mark 3320 Kettenis. It is also the default for OSF/1. 3321 3322 * demo/Makefile.am (objdir): Quote double-quotes. From Mark 3323 Kettenis. 3324 3325 * ltconfig.in (global_symbol_pipe): This variable is not 3326 double-evaled, so it should not be double quoted. From Mark 3327 Kettenis. 3328 33291997-10-19 Gordon Matzigkeit <gord@gnu.org> 3330 3331 * ltconfig.in (LD): Same as below. 3332 3333 * libtool.m4 (LD): Set LD if we discover an absolute path to GNU 3334 ld. This prevents breakage when `$CC -print-prog-name=ld' returns 3335 an absolute directory name. Reported by Ulrich Drepper. 3336 3337 * ltconfig.in: Port to OS/2 using EMX. From Jeff Freedman. 3338 3339 * ltmain.in (link): Use old_archive_from_new_cmds. 3340 3341 * ltconfig.in (old_archive_from_new_cmds): New variable to 3342 support DLL libraries. 3343 3344 * ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is 3345 not empty. Reported by Stephan Kulow. 3346 33471997-10-18 Gordon Matzigkeit <gord@gnu.org> 3348 3349 * ltconfig.in (objdir): Use the .libs directory on all systems for 3350 which that name is valid, and _libs on the others (like MS-DOS). 3351 Suggested by Juergen Erhard. 3352 33531997-10-14 Gordon Matzigkeit <gord@gnu.org> 3354 3355 * ltmain.in (link): Added a bit more inter-language support to the 3356 symbol file generation process. 3357 Instead of complaining about unrecognized argument suffices, pass 3358 them to the linker. This prevents libtool from barfing on 3359 mandatory arguments to linker flags. Reported by Michael 3360 Tiemann. 3361 33621997-10-09 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3363 3364 * ltmain.in (link): Change the wrapper script to follow symlinks 3365 in order to find thisdir. This should put the final nail in the 3366 coffin for problems with wrapper scripts. From Ian Lance Taylor. 3367 33681997-10-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3369 3370 * ltmain.in: Change a few `$echo' commands into `$show' to make 3371 --silent mode behave as advertised. 3372 3373 * ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use 3374 `-expect_unresolved \*'. From Christian Mondrup. 3375 3376 * ltmain.in (install): Change install mode to allow a specified 3377 /bin/sh argument at the beginning of the install_prog. Also, 3378 specify the shell to run when invoking libtool recursively for 3379 finish mode. From Chris Provenzano. 3380 3381 * libtool.m4 (LIBTOOL): Change definition to include $(SHELL). 3382 From Chris Provenzano. 3383 3384 * ltconfig.in: Port to UTS 4.x. From Alistair Crooks. 3385 3386 * demo/Makefile.am (hc-libflag): Add rules to make this binary for 3387 hardcode.test. 3388 3389 * tests/hardcode.test (hardcode_libdir_flag_spec): Check the hardcoding 3390 properties of the flag_spec, too. 3391 33921997-09-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3393 3394 * ltconfig.in (LD): As with libtool.m4, don't override LD. 3395 Do a whole bunch of ac_t quoting. 3396 33971997-09-24 Ian Lance Taylor <ian@cygnus.com> 3398 3399 * libtool.m4 (AM_PROG_LD): Don't override LD in the environment. 3400 34011997-09-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3402 3403 * libtool.m4, ltconfig.in (NM): Arguments to the for loop must be 3404 whitespace separated. This fixes a bug under FreeBSD's /bin/sh. 3405 From George Scott. 3406 3407 * tests/defs, tests/Makefile.am (clean-local): Change =inst to 3408 _inst to fix portability on MS-DOS. From Robert Hoehne. 3409 34101997-09-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3411 3412 * ltmain.in (deplibs): When building shared libraries, always add 3413 -lc to deplibs. Reported by Andreas Jellinghaus. 3414 34151997-09-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3416 3417 * ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES 3418 environment variable has not been set, set it to empty. This 3419 apparently fixes the AIX bug with GCC's collect2. Reported by 3420 Mark Kettenis. 3421 3422 * demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir): 3423 Changed objdir variable .libs to _libs. This is another MS-DOS 3424 portability fix. Suggested by Robert Hoehne. 3425 3426 * tests/hardcode.test (objdir): New variable to simplify change from 3427 .libs to _libs (MS-DOS portability fix). 3428 34291997-09-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3430 3431 * ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming 3432 hardcode_minusL to hardcode_minus_L. Also add FreeBSD 3433 hardcode_libdir_flag_spec. From Paul Traina. 3434 3435 * ltmain.in (link): Honour multiple `-rpath' flags when linking 3436 programs. Suggested by Bengt Martensson. 3437 Quote appearances of $echo in the wrapper script. From Alexandre 3438 Oliva. 3439 3440 * Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead 3441 of ltmain.sh.in. 3442 3443 * ltmain.in: Rename ltmain.sh.in to ltmain.in. This fixes a 3444 portability problem (on MS-DOS, of all places!). From Robert 3445 Hoehne. 3446 34471997-09-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3448 3449 * ltmain.sh.in (link): Do not transform libtool objects to regular 3450 objects if we did not build old libs. Reported by Tomas Hiller. 3451 34521997-09-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3453 3454 * demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to 3455 hell.debug in order to reflect the new static linking semantics. 3456 3457 * ltmain.sh.in (link): Add new `-all-static' flag to prevent all 3458 dynamic linking. The old `-static' flag just prevents dynamic 3459 linking against libtool libraries. Suggested by Bengt 3460 Martensson. 3461 3462 * ltconfig.in (with_gnu_ld): Add a test to make sure that we are 3463 actually using GNU ld. This fixes an inconsistency when running 3464 ltconfig without using libtool.m4. Reported by Ulrich Drepper. 3465 (global_symbol_pipe): Delete symbols that are not valid C 3466 identifiers. Reported by Johan Danielsson and Bengt Martensson. 3467 3468 * tests/demo-exec.test, tests/demo-inst.test: Change references from 3469 hell.static to hell.debug. 3470 3471 * tests/quote.test (echo): Add the same Digital Unix echo test fixes as 3472 the ones to ltmain.sh.in from Todd Kover. 3473 3474 * tests/if.test, tests/test-e.test (scripts): Add ../lineno to 3475 the scripts we check. 3476 * tests/if.test: Check for accidental use of test X$something rather 3477 than test "X$something". 3478 34791997-09-04 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3480 3481 * ltmain.sh.in (echo): Quote all the uses of `echo' in all eval 3482 statements. Reported by Bengt Martensson and Alexandre Oliva. 3483 (echo): Need to surround test args with double quotes, or the echo 3484 test fails on Digital Unix 4.0. From Todd Kover. 3485 34861997-08-28 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3487 3488 * ltmain.sh.in (echo): Change test to one that uses printf. 3489 This works on AIX, which has the same problems that Solaris does, 3490 but no working echo program. 3491 3492 * tests/quote.test (echo): Change test to version that uses printf. 3493 Be less strict about return results. 3494 34951997-08-27 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3496 3497 * ltmain.sh.in (link): Make sure that compile_command and 3498 finalize_command are always evaled. Quote any unknown linker 3499 flags we need to pass through. 3500 (compile): Use quoting for flags we pass. 3501 (echo): I hate Sun! The /usr/bin/echo on Solaris handles 3502 backslash sequences, which makes it impossible to do backslash 3503 quoting using echo and sed. So, we search for an echo that obeys 3504 the `echo '\t'` = '\t' equality. Then we use `$echo' everywhere 3505 in ltmain.sh. 3506 Put tabs back into the ${IFS= } sequences. Emacs untabify is 3507 libtool bane. 3508 3509 * ltconfig.in: Quote all variable values that may contain 3510 metacharacters creating the libtool script. This provides 3511 complete protection, so that even single-quotes may appear inside 3512 a libtool variable value. 3513 3514 * ltmain.sh.in (link): Quote finalize_command before putting it in 3515 the wrapper script. 3516 3517 * tests/quote.test (echo): Add the test for a non-backslash-mangling 3518 echo. 3519 35201997-08-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3521 3522 * ltmain.sh.in (sed_quote_subst): Change the quoting procedure 3523 again. I think that the new one is robust for *all* characters, 3524 including whitespace and metacharacters. 3525 3526 * tests/quote.test: New torture test for libtool metacharacter quoting. 3527 35281997-08-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3529 3530 * ltmain.sh.in: Change quoting procedure because some shells 3531 cannot handle `]' in scan sets. From Ian Dall. 3532 35331997-08-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3534 3535 * ltmain.sh.in (execute): Added -dlopen flag handling. Suggested 3536 by Alexandre Oliva. 3537 35381997-08-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3539 3540 * ltmain.sh.in (link): Change executable wrapper to fix up value 3541 of thisdir, as well as progdir, if the $0 path doesn't work. This 3542 guarantees that shlibpath_var is set correctly. Add support for 3543 execute mode. 3544 3545 * ltmain.sh.in (execute): New mode to automatically set 3546 shlibpath_var, which allows easy debugging of uninstalled 3547 executables and libraries. Suggested by Kenneth Albanowski. 3548 35491997-08-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3550 3551 * Makefile.am ($(srcdir)/ltconfig): Use lineno. 3552 3553 * configure.in: Add AM_PROG_AWK for lineno. 3554 3555 * lineno: New program to automatically put line numbers in 3556 ltconfig. 3557 3558 * libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which 3559 incorporates the results of `gcc -print-program-name=ld'. 3560 Suggested by Alexandre Oliva. 3561 35621997-08-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3563 3564 * ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off 3565 command echoing. From Juergen A. Erhard. 3566 3567 (compile): Recognize the Objective C `.m' extension. From Juergen 3568 A. Erhard. 3569 3570 (compile): Suppress error output from the second compilation (if 3571 any) so that we don't get those frustrating duplicate error 3572 messages. 3573 3574 * tests/suffix.test (extensions): Added Objective C extension, `.m'. 3575 35761997-08-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3577 3578 * ltconfig.in: Added messages to config.log to describe what sort 3579 of test we are running. 3580 (pic_flag): Added a sanity check for pic_flag. This should fix 3581 bugs reported using the cc bundled with HP-UX 10. Suggested by 3582 Bruno Haible and Akim Demaille. 3583 35841997-08-01 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3585 3586 * ltmain.sh.in (link): Add -dlopen and -dlpreopen support for 3587 libtool objects. This means that dlopened modules no longer need 3588 to be shared libraries. 3589 3590 * ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC. 3591 Reported by Ian Lance Taylor. 3592 3593 * libtool.m4 (LD): Always add `-n32' to the linker if we are using 3594 GCC on IRIX 6. Reported by Ian Lance Taylor. 3595 35961997-07-30 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3597 3598 * libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and 3599 enable_static rather than just enableval. This allows 3600 configure.in scripts to set their own defaults. Suggested by 3601 Tommy Reilly. 3602 36031997-07-29 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3604 3605 * ltmain.sh.in: Add NLS environment variable handling copied from 3606 ltconfig.in. Reported by Akim Demaille. 3607 (link): If allow_undefined_flag is not supported, then turn on old 3608 libraries. Reported by Akim Demaille. 3609 3610 * demo/dlmain.c (main): Use dld_preloaded_symbol_count to display 3611 a message about the sortedness of the symbol table. 3612 3613 * ltconfig.in (nlist): Use an nlist convenience variable, so that 3614 code can be shared directly with ltmain.sh.in. 3615 3616 * ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up 3617 the number of symbols in the dld_preloaded_symbols. Set to `-1' 3618 if the list wasn't both sorted and counted. This allows 3619 applications to do a quick binary search, if they are so inclined. 3620 36211997-07-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3622 3623 * ltmain.sh.in (link): Remove code for `-version-file', since it 3624 has been long-deprecated. 3625 3626 Disable static linking if hardcode_direct is unsupported and there 3627 is no working link_static_flag. This provides correct behaviour 3628 for all cases on AIX 3, regardless of whether collect2 is broken 3629 or not. Reported by Mark Kettenis. 3630 3631 * ltconfig.in: Fix typo in test polarity. From Mark Kettenis. 3632 36331997-07-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3634 3635 * ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses 3636 a broken collect2. Adapted out of test results from Mark 3637 Kettenis. 3638 (link_static_flag): Make sure the link_static_flag actually works 3639 with a trivial binary. 3640 3641 * ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed 3642 from export_dynamic_flag because we eval it in ltmain.sh. 3643 3644 * ltmain.sh.in (link_static): Don't eval link_static_flag. 3645 3646 * demo/dlmain.c (main): Change function prototype to be KNR 3647 compatible. From Kaveh R. Ghazi. 3648 3649 * ltmain.sh.in (link): Use no_builtin_flag. This works around 3650 conflicting definitions of builtin functions with at least GCC. 3651 Reported by Kazuhiro Sasayama. 3652 3653 * ltconfig.in (no_builtin_flag): New flag to turn off builtin 3654 functions when compiling an object file. 3655 (pipe_works): Use it. 3656 3657 * tests/demo-exec.test (status): Use status variables so that we try to 3658 execute all the programs. 3659 36601997-07-23 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3661 3662 * ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure 3663 script, DEC alpha CPUs are PIC-only, as well. Reported by Kevin 3664 Jacobs. 3665 36661997-07-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3667 3668 * ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X; 3669 Y'" with "sed -e 'X' -e 'Y'". 3670 3671 * ltmain.sh.in (link): Finish full integration for `-dlopen' and 3672 `-dlpreopen'. 3673 3674 Fix two silly typos where I used a compile_command in place of a 3675 finalize_command, and vice versa. 3676 3677 Change the wrapper script to check a hardcoded path only if the 3678 argv[0] method fails. This is a compromise for the previous two 3679 patches, and should solve the majority of problems with wrapper 3680 scripts. From Kenneth Albanowski. 3681 3682 (link): Change a reference to hardcode_libdir_colon_separated to 3683 use the new hardcode_libdir_separator variable. 3684 3685 * demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and 3686 `-dlpreopen' for building helldl. 3687 3688 * demo/dlmain.c (main): Succeed, even if none of the libhello 3689 symbols have been preloaded. 3690 36911997-07-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3692 3693 * ltconfig.in (global_symbol_pipe): Add `U' to the accepted global 3694 symbol types. This means that we will get duplicate symbols, but 3695 we'll also be sure to get all global symbols used by the program. 3696 3697 * ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make 3698 symbol output unique. 3699 37001997-07-19 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3701 3702 * ltconfig.in (pipe_works): Check to make sure our guessed 3703 global_symbol_pipe actually works. 3704 3705 * ltmain.sh.in (link): Revert change from Kenneth Albanowski. The 3706 wrapper scripts are more reliable when they just use the argv[0] 3707 value. Generally, when the argv[0] method doesn't work, the user 3708 is trying to do something weird with an uninstalled binary, and 3709 should try a different approach. 3710 3711 * ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of 3712 `$cc'. This fixes a FreeBSD bug. Reported by Chuck Robey, and 3713 others. 3714 37151997-07-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3716 3717 * ltmain.sh.in (link): In wrapper scripts, hardcode the current 3718 directory to prevent phony argv[0] values from screwing up our 3719 program. From Kenneth Albanowski. 3720 37211997-07-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3722 3723 * Makefile.am (demo_distfiles): Add demo/dlmain.c to the 3724 distribution. 3725 37261997-07-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3727 3728 * demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate 3729 `-dlopen' usage. 3730 3731 * demo/dlmain.c: New file to demonstrate preloaded modules. 3732 3733 * ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic 3734 modules, even on static platforms. Use `$NM' and 3735 `$global_symbol_cmd' to extract symbols from required files. 3736 (dlname): Delete dlname mode entirely. It is rendered obsolete 3737 because the `.la' file format is now a public interface. 3738 3739 * ltconfig.in (NM): New variable for BSD-compatible nm program. 3740 (global_symbol_cmd): Pipeline to extract global symbols from the 3741 nm output. 3742 3743 * ltmain.sh.in: The .la file header should depend on `ltmain.sh', 3744 not `$PROGRAM'. 3745 (link): Make sure $export_dynamic_flag is eval'ed before it is 3746 used. 3747 3748 * tests/demo-exec.test, tests/demo-inst.test: Check the new 3749 helldl program, too. 3750 37511997-07-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3752 3753 * libtool.spec: New Red Hat Package Manager specification file in 3754 order to help people prepare distributions of libtool for Linux. 3755 3756 * ltmain.sh.in: Eliminate two accidental uses of the NONE magic 3757 value. These were breaking libtool's behaviour when no mode is 3758 specified. 3759 3760 * tests/nomode.test: New test to make sure there is correct behaviour 3761 when we don't specify a mode. 3762 37631997-07-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3764 3765 * Release 1.0. 3766 3767 * ltconfig.in: On SunOS, append /usr/etc to the PATH before 3768 running ldconfig; on *BSD, append /sbin. This was done in line 3769 with the Linux change suggested by Kenneth Albanowski. 3770 3771 * demo/Makefile.am (hardcode_tests): Aesthetic change to 3772 alphabetize order of compiling the hardcode tests. 3773 3774 * Makefile.am (EXTRA_DIST): Delete README-automake. 3775 3776 * README-automake: Remove from distribution. 3777 37781997-07-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3779 3780 * ltmain.sh.in (link): In the executable wrapper, strip trailing 3781 colons from the shlibpath_var because some ld.so's, notably 3782 OpenBSD 2.0's (!), don't parse colon-terminated values correctly. 3783 From Tim Pierce. 3784 37851997-07-01 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3786 3787 * ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic 3788 variable value. Use an empty variable instead. 3789 3790 * ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C 3791 compiler and linker if the variables are unset, or if they are not 3792 GNU C and ld. 3793 (RANLIB): Eliminate redundant `if' statement. 3794 3795 * configure.in: Use AM_PROG_LD. 3796 3797 * libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU 3798 ld. 3799 (AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD. Parameterize 3800 so that the user can specify `--with-gnu-ld' or `--without-gnu-ld' 3801 to indicate his preference. 3802 (AM_PROG_LIBTOOL): Use it. 3803 38041997-06-30 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3805 3806 * ltconfig.in: Append /sbin to the path before running ldconfig on 3807 Linux. This helps superusers who haven't set their PATH 3808 correctly. Suggested by Kenneth Albanowski. 3809 3810 * tests/if.test: New test to make sure that we haven't forgotten to 3811 follow an `if' statement with a `test' command. This should avoid 3812 the majority of hard-to-track bugs. 3813 38141997-06-29 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3815 3816 * ltmain.sh.in: Change all the `eval "$run ..."' sequences to 3817 `$run "eval ..."'. 3818 3819 Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'. 3820 This is the sequence recommended by the Autoconf manual, and 3821 should avoid any problems on older machines. Eliminate all uses 3822 of `cp -p'. Reported by Akim Demaille. 3823 3824 (install): Use `test $# -gt 0' instead of `test -n "$1"'. 3825 3826 * ltconfig.in (LN_S): Add test to see if `ln -s' works. 3827 3828 * libtool.m4: Increment serial number, and require AC_PROG_LN_S. 3829 38301997-06-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3831 3832 * ltmain.sh.in (link): Add missing `test' statement. Reported by 3833 Akim Demaille. 3834 38351997-06-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3836 3837 * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of 3838 am_cv_path_ld. From Tim Pierce. 3839 38401997-06-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3841 3842 * ltmain.sh.in: Redo two robustness fixes. Alexandre had the 3843 correct approach, but I botched them. 3844 3845 * ltconfig.in (dynamic_linker): Disable shared libraries on 3846 MkLinux unless GNU libc is in use. Reported by Akim Demaille. 3847 38481997-06-19 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3849 3850 * ltmain.sh.in (install): Add a missing `test' command. Reported 3851 by Joel Weber. 3852 Miscellaneous fixes to improve robustness. From Alexandre Oliva. 3853 3854 * tests/demo-conf.test (CONFIG_SITE): Set to /dev/null, so that the 3855 config.site file doesn't mess up our prefix. Reported by Joel 3856 Weber. 3857 3858 * tests/demo-inst.test: Always run both hell.static and hell. 3859 3860 * tests/demo-conf.test: Always remove the local config.cache, but run 3861 `make distclean' only if the Makefile exists. Otherwise, the demo 3862 directory is not cleaned up if a user uses their own config.cache. 3863 Reported by Joel Weber. 3864 38651997-06-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3866 3867 * ltmain.sh.in (link): Create invalid libtool objects when partial 3868 linking if we don't have PIC. From Jeff Dairiki. 3869 (install): Fix bug if libtool object is installed to a file name 3870 without directory components. From Jeff Dairiki. 3871 38721997-06-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3873 3874 * Makefile.am (demo/configure): Fix up rules to run autoconf. 3875 (aclocal.m4): Now we depend on our own libtool.m4. 3876 3877 * configure.in (AM_PATH_PROG_LD): Use it. 3878 3879 * libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used 3880 by the C compiler. 3881 (AM_PROG_LIBTOOL): Use it. 3882 3883 * ltmain.sh.in (install, uninstall): Support installing and 3884 uninstalling `.lo' files. From Jeff Dairiki. 3885 38861997-06-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3887 3888 * Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not 3889 the current directory. Don't regenerate every time the package is 3890 reconfigured. Reported by Tom Tromey. 3891 (MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that 3892 $(srcdir) is not messed with during a regular clean. 3893 38941997-06-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3895 3896 * Makefile.am (ltconfig, ltmain.sh): Be sure to move these files 3897 into $(srcdir) once they are created. 3898 3899 * ltmain.sh.in (link): Disable building static libraries. 3900 People should use their favourite AR and RANLIB commands. 3901 Disable building old-style objects if `--disable-static' is 3902 given. Suggested by Tom Lees and Stephan Kulow. 3903 39041997-06-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3905 3906 * ltconfig.in (host_cpu, host_vendor, host_os): Patch up 3907 definitions, to allow for the fact that the host_os may contain 3908 hyphens (as in linux-gnu). From Scott Goehring. 3909 3910 * ltmain.sh.in (link): Move the `dlname' setting closer to the top 3911 of the file. Suggested by David Mosberger-Tang. 3912 Symlink the libtool archive into the `.libs' directory so that it 3913 can be found by programs that want to find a library's dlname by 3914 searching LD_LIBRARY_PATH. Reported by David Mosberger-Tang. 3915 39161997-06-06 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3917 3918 * Tell people to report bugs to the new libtool mailing list, 3919 <bug-libtool@gnu.ai.mit.edu>. 3920 39211997-06-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3922 3923 * ltconfig.in (allow_undefined_flag): New variable that implements 3924 `-allow-undefined'. 3925 (archive_cmds): Enable C++ constructors for FreeBSD 2.2. From 3926 David Nugent. 3927 3928 * ltmain.sh.in (link): Accept new `-allow-undefined' flag when 3929 building libtool libraries. This tells libtool to allow 3930 unresolved symbols to exist in shared libraries. Basically, this 3931 turns off shared libraries on AIX. Suggested by Ian Lance Taylor. 3932 39331997-05-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3934 3935 * libtool.m4 (LD): On at least IRIX, many different flags need to 3936 be propagated to the linker if they are part of the compiler 3937 command line. Reported by Anthony Green. 3938 39391997-05-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3940 3941 * ltconfig.in: Trivial port to FreeBSD 3. From David Nugent. 3942 39431997-04-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3944 3945 * ltmain.sh.in (link): Remove all traces of `-whole-archive', 3946 `-no-whole-archive', and libtool convenience libraries. They were 3947 more trouble than they're worth. If these are ever reimplemented, 3948 they need more careful attention to make portable. 3949 3950 * libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn 3951 off static library creation. From Tom Lees (who finally convinced 3952 me that it was the Right Thing to do). 3953 39541997-04-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3955 3956 * ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if 3957 the linker has no -rpath flag. 3958 Quote the values we use to set runpath_var and shlibpath_var. 3959 (link): Use libobjlibs for libtool convenience libraries. 3960 3961 * ltconfig.in (hardcode_runpath_var, runpath_var): Add new 3962 variables to describe linkers that honour `LD_RUN_PATH'. 3963 (host_cpu, host_os): Use these more specific variables, rather 3964 than the full canonical host system name. 3965 3966 * ltmain.sh.in (dlname): Distinguish between missing 3967 `-export-dynamic' and when the library is only statically linked. 3968 39691997-04-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3970 3971 * ltconfig.in: Trivial port to OpenBSD by making it an alias for 3972 NetBSD. From Tim Pierce. 3973 39741997-04-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3975 3976 * ltconfig.in: Temporary measures to check for a broken collect2 3977 program. Right now, we just see if we're using GCC on AIX 3. 3978 3979 * tests/hardcode.test: AIX also has arbitrary limits on the line length 3980 of input to fgrep(1), so we need to translate NUL characters to 3981 newlines in order to properly detect embedded `.libs'. From Bruno 3982 Haible. 3983 Also redirect stderr to /dev/null, so that AIX users don't get 3984 worried by `fgrep: Maximum line length of 2048 exceeded.'. 3985 39861997-04-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3987 3988 * ltmain.sh.in (mode): Use `egrep -e' when inferring the operation 3989 mode. 3990 39911997-04-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3992 3993 * ltconfig.in (linker): Some GNU ld's don't accept `--version', 3994 but do accept `-v'. From Jukka Honkela. 3995 (ld_shlibs): AIX lossage may be settling down. AIX 3.2.5 ld does 3996 *not* hardcode direct libraries, but AIX 4.1.[45] ld does. 3997 39981997-04-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 3999 4000 * ltconfig.in (hardcode_action): Fix silly logic error. From 4001 Bruno Haible. 4002 40031997-04-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4004 4005 * ltmain.sh.in (install): Relink if hardcode_action is `relink', 4006 rather than using complex conditionals based on the other 4007 hardcode variables. 4008 4009 * ltconfig.in (hardcode_action): Set to `relink', not `immediate', 4010 if we can only hardcode existing directories. Rearrange 4011 conditionals to make the intent clearer, otherwise this can be one 4012 hellish piece of code for the already-dizzy libtool maintainer. 4013 40141997-04-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4015 4016 * replfunc.m4: Delete from the distribution. Documentation now 4017 describes how to set LTALLOCA and LTLIBOBJS in your own 4018 configure.in. 4019 4020 * ltmain.sh.in (link): Make sure a libtool library only counts as 4021 a shared library if its library_names are non-null. 4022 Use timestamps for .lo's when PIC is turned off, rather than 4023 symlinking to the real object. This helps invalid mixtures of PIC 4024 and non-PIC to fail. 4025 40261997-04-01 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4027 4028 * Makefile.am (EXTRA_DIST): Distribute libtool.prj. 4029 4030 * Shameless plug: Changed source code management system from CVS 4031 to PRCS. 4032 4033 * libtool.scm: Initial Guile implementation of libtool. 4034 4035 * ltmain.sh.in: An unexpected inconsistency in my whole approach 4036 to shared libraries has proven that libtool needs to be completely 4037 rewritten if I'm going to give full shared library support for 4038 platforms that don't use the GNU C library version 2 (which to my 4039 knowledge currently only works on GNU Hurd and Linux/GNU systems). 4040 Porting the GNU C library should not be difficult, though. 4041 4042 Platforms that don't have the dlopen(3) family of functions will 4043 need to install GNU DLD version 4 in order to build any kind of 4044 libraries at all. Unfortunately, DLD 4 won't be released for a 4045 while, because I maintain it, and I'm too busy working on libtool. 4046 4047 I'll keep the old ltconfig/ltmain.sh implementation around for as 4048 long as I can, and continue applying bug fixes, so that I'll have 4049 a reasonable starting point for this new libtool implementation. 4050 4051 It looks like this implementation will be even more complex than 4052 the original (pre-0.7) libtool. Initial estimates show that it 4053 may be up to 3 times slower, and 5 times larger than libtool-0.9. 4054 I'll probably have to rewrite it in Guile to get reasonable 4055 performance, which will severely limit its portability for a 4056 while. 4057 4058 That will also introduce a bootstrapping issue, since the next 4059 release of Guile will use libtool to build shared libraries. So, 4060 if users want to have shared Guile libraries, they will have to 4061 configure Guile with `--disable-shared', compile it, install it, 4062 then reconfigure Guile with `--enable-shared' and repeat. 4063 4064 I was hoping to get libtool 1.0 out the door by early April, but 4065 now it looks like it will take at least another year before it'll 4066 be usable by the public at large. April fools. libtool.scm 4067 doesn't exist yet, either. 4068 4069 * ltconfig.in (verify_host): Remove redundant `Transform *-*-linux* 4070 to *-*-linux-gnu*'. From Bruno Haible. 4071 4072 * tests/hardcode.test: AIX 3 doesn't have strings(1) so we need to do a 4073 funny tr and pipe the output to fgrep. From Bruno Haible. 4074 40751997-03-31 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4076 4077 * Makefile.am: Use the new AUTOMAKE and ACLOCAL variables. 4078 4079 * ltmain.sh.in (link): Only fail if a convenience library doesn't 4080 exist, and the user specified -whole-archive. 4081 Fix shell quoting that was breaking @OUTPUT@ substitution. 4082 40831997-03-28 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4084 4085 * ltmain.sh.in (link): Use the hardcode_libdir_separator. 4086 Convenience libraries are libtool objects if we're not building 4087 libtool libs. 4088 4089 * ltconfig.in (hardcode_libdir_separator): Added in case the 4090 linker only honours the last of the -rpath flags (but it can 4091 contain multiple colon-separated directories), such as on OSF/1. 4092 Reported by Carl D. Roth. 4093 4094 * ltmain.sh.in (link): Set the dlname if -export-dynamic is given. 4095 (install, uninstall): Handle the dlname file separately. 4096 4097 * ltconfig.in (export_dynamic_flag): Added to allow programs to 4098 use reflexive dlopens. 4099 4100 * ltmain.sh.in: Include the mode name in any help messages. 4101 (dlname): New mode to give the name to be used with dlopen(3). 4102 4103 * ltconfig.in (AR): Allow AR to be set by the user, and export it 4104 to ltmain.sh. 4105 4106 * ltmain.sh.in: Remove broken profiled library support. 4107 Added `-whole-archive' and `-no-whole-archive' to manipulate 4108 convenience libraries. 4109 41101997-03-27 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4111 4112 * ltmain.sh.in (link): Allow the creation of static convenience 4113 libraries made of libtool objects. Suggested by David 4114 Mosberger-Tang. 4115 41161997-03-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4117 4118 * ltconfig.in: On AIX, libtool also needs to look for `B' symbols 4119 in nm output. These are global variable definitions. 4120 4121 * ltmain.sh.in: Linking with -static should link against the 4122 linklib if old_library is empty (like it is on AIX). 4123 4124 * ltconfig.in: Change the order of OS detection, so that 4125 linux-gnu* is detected before gnu*. 4126 4127 * Makefile.am (libtool): Use the correct CC, RANLIB, LD, when 4128 generating libtool. From Carl D. Roth. 4129 4130 * configure.in: Find out the user-supplied CC, LD, RANLIB. From 4131 Carl D. Roth. 4132 41331997-03-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4134 4135 * ltmain.sh.in: Linking with -static should link against the old 4136 library, not linklib. 4137 4138 * README-automake: Updated to point to Automake 1.1m. 4139 41401997-03-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4141 4142 * demo/main.c: Use it. 4143 4144 * demo/foo.h: Declare it. 4145 4146 * demo/foo.c: Added definition of `nothing' so that we have an 4147 global variable definition, as well as functions. 4148 41491997-03-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4150 4151 * ltconfig.in: Make sure either enable_shared or enable_static is 4152 configured. Reported by Tom Tromey. 4153 4154 * ltmain.sh.in: Bomb out if no library types are configured. 4155 41561997-02-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4157 4158 * ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed 4159 from `hardcode_libdir_flag'. 4160 (library_names_spec): Renamed from `lib_names'. 4161 4162 * ltconfig.in, ltmain.sh.in (hardcode_action): Change value from 4163 `rpath' to `immediate'. 4164 4165 * replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and 4166 AM_STRUCT_ST_BLOCKS. 4167 41681997-02-18 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4169 4170 * ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support 4171 old-style config.guess scripts. 4172 41731997-02-17 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4174 4175 * ltmain.sh.in: Create objdir *before* linking a program into it. 4176 41771997-02-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4178 4179 * ltconfig.in: Any ld --version that returns GNU is probably a GNU 4180 ld. From Marcus Daniels. 4181 4182 * libtool.m4: Added AM_REPLACE_FUNCS. 4183 41841997-02-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4185 4186 * ltconfig.in: Trivial port to *-*-osf4. From Bruno Haible. 4187 41881997-02-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4189 4190 * ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not 4191 specified. This behaviour is the same with both xlc and gcc. 4192 41931997-02-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4194 4195 * doc/platforms.texi: Yaay! We found a workaround for HP-UX 4196 /bin/sh buffer overflows. From Eric Backus. 4197 41981997-02-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4199 4200 * Release 0.9. 4201 4202 * PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am: 4203 Move PLATFORMS to doc/platforms.texi. 4204 4205 * ltmain.sh.in (link): Use hardcode_libdir_flag to get a library 4206 directory into the resulting binary. 4207 Use hardcode_action, and make many simplifying changes to have 4208 compilation and finalization be consistent with each other. 4209 4210 * ltconfig.in: Not so amazing! It's AIX cc that hardcodes direct 4211 libraries... gcc doesn't, though. 4212 (link_rpath_flag): Change link_rpath_flag to be 4213 hardcode_libdir_flag. 4214 (hardcode_action): New variable to simplify ltmain.sh. 4215 4216 * tests/Makefile.am (TESTS): Do the full make sequence with 4217 --disable-shared, then without. 4218 4219 * tests/demo-sttc.test: Configure the demo directory with 4220 --disable-shared. 4221 42221997-01-29 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4223 4224 * ltmain.sh.in: Change to take advantage of linkers that don't 4225 hardcode direct libraries. 4226 4227 * ltconfig.in: Amazing! AIX 3 linker doesn't hardcode direct 4228 libraries, which makes it less buggy than AIX 4. Reported by Mark 4229 Kettenis. 4230 4231 * demo/configure.in: Check for the math library. 4232 4233 * demo/foo.c (foo): Change to use the `cos' function, so that we 4234 need to link against another library. 4235 4236 * tests/hardcode.test: Rewrite to use fgrep on output from ``strings 4237 -a'' if using fgrep directly on the binary files fails. From Mark 4238 Kettenis. 4239 42401997-01-28 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4241 4242 * ltmain.sh.in (link): Export the PATH variable in order to find 4243 the program, rather than giving a full path. This helps give the 4244 program a less confusing value for argv[0]. 4245 4246 * tests/hardcode.test: Make sure that ../demo/libhello.la really is a 4247 shared library before running hardcoding tests. 4248 42491997-01-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4250 4251 * Release 0.8. 4252 42531997-01-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4254 4255 * Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the 4256 distribution. 4257 42581997-01-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4259 4260 * libtool.m4: For IRIX 6, ld needs -n32 if cc uses it. Reported 4261 by Bruno Haible. 4262 4263 * ltconfig.in: IRIX ld does not hardcode direct libraries. 4264 Reported by Bruno Haible. 4265 42661997-01-18 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4267 4268 * ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new 4269 value, `unsupported', since most linkers do not allow you to use 4270 shlibpath_var for initial linking. 4271 4272 * ltconfig.in: Lots of bug fixes from Bruno Haible. Set wl on 4273 OSF/1, fix definitions of hardcode_* variables. 4274 (archive_cmds): Fix not to use +h on HP-UX 9.x. Reported by Bruno 4275 Haible. 4276 4277 * tests/demo-conf.test: Use the CONFIG_SHELL environment variable when 4278 running configure in the demo directory. From Bruno Haible. 4279 4280 * tests/Makefile.am (clean-local): Make distclean in the demo directory, 4281 so that ``make clean; env CC=cc make check'' works as one would 4282 expect. 4283 4284 * tests/demo-make.test: Fix typo (use $make instead of make). Reported 4285 by Akim Demaille. 4286 42871997-01-17 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4288 4289 * libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings. 4290 Suggested by Akim Demaille. 4291 4292 * libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is 4293 specified. Reported by Bruno Haible. 4294 42951997-01-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4296 4297 * demo/Makefile.am (hc-direct): Do better searching for the proper 4298 name to do a direct link. 4299 (hc-libpath): Make allowances if shlibpath_var cannot be used 4300 to find libraries at link time, such as on AIX. 4301 4302 * Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c. 4303 4304 * demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to 4305 KNR form, for better portability, and less ansi2knr hair. 4306 4307 * demo/configure.in: Remove AM_FUNC_PROTOTYPES. 4308 4309 * demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS. 4310 4311 * demo/ansi2knr.1, demo/ansi2knr.c: Removed these files. 4312 4313 * ltmain.sh.in: Use 1>&2 consistently to direct errors and 4314 warnings to stderr. 4315 (compile): Fix missing single quote. 4316 4317 * ltconfig.in (hardcode_direct): On Solaris at least, using 4318 DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode 4319 variable to reflect that. 4320 4321 * ltmain.sh.in (link): If linking with $link_static_flag fails, 4322 then retry without it, but still use the .a versions of 4323 uninstalled libtool archives. 4324 4325 * tests/tlibtool: Rewrote to grab all the settings from the generated 4326 libtool script. 4327 4328 * tests/hardcode.test: Make allowances if shlibpath_var cannot be used 4329 to find libraries at link time, such as on AIX. 4330 43311997-01-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4332 4333 * ltmain.sh.in (link): Eval $link_static_flag. Reported by Bruno 4334 Haible. 4335 4336 * PLATFORMS: Add to distribution. Suggested by Bruno Haible. 4337 43381997-01-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4339 4340 * tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test, 4341 tests/hardcode.test: 4342 Use $make instead of make. 4343 4344 * tests/defs (make): Add definition of $make that uses the $MAKE 4345 environment variable, if set. Suggested by Bruno Haible. 4346 4347 * tests/demo-unst.test (leftovers): Change the find command to ignore 4348 files beginning with a dot, as egrep -v doesn't seem to do the 4349 trick. Reported by Bruno Haible. 4350 43511997-01-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4352 4353 * ltconfig.in: Add support for SCO OpenServer 5.x. From 4354 Christopher Olsen. 4355 4356 (can_build_shared): Initialize at the top of the file, so that 4357 shared libraries aren't built on platforms that don't support 4358 them. 4359 4360 * tests/hardcode.test: Added a test to make sure that libtool's idea of 4361 hardcoding system linkers is correct. 4362 43631997-01-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4364 4365 * ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi: 4366 Update the copyright completion years. 4367 43681997-01-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4369 4370 * ltconfig.in: Port to IRIX 5.3, 6.2. 4371 43721997-01-06 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4373 4374 * ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the 4375 port is trivial. 4376 4377 * libtoolize.in: Add --dry-run option, -n for short. 4378 43791997-01-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4380 4381 * ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't 4382 understand "export something=val". From Bruno Haible. 4383 4384 * tests/Makefile.am (distclean-local): Remove all files that the tests 4385 may have created. Reported by Bruno Haible. 4386 4387 * For all tests, discover srcdir when running from the command 4388 line. 4389 4390 * tests/demo-unst.test: Don't fail if make uninstall doesn't delete 4391 files beginning with a dot, since spurious .nfsXXX files may be 4392 present when running NFS. Reported by Bruno Haible. 4393 43941997-01-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4395 4396 * ltmain.sh.in (compile): Recognize valid source file suffixes for 4397 Fortran and C++. 4398 4399 * tests/suffix.test: New test to guarantee that libtool compile 4400 recognizes valid source file suffices. 4401 44021996-12-17 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4403 4404 * ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid 4405 object type suffixes, in spite of Automake's current ansi2knr 4406 implementation. Not all compilers allow non-`.o' suffixes. 4407 44081996-12-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4409 4410 * ltmain.sh.in (link): Delete the `libtool' version type. 4411 44121996-12-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4413 4414 * ltconfig.in: Use the full autoconf syntax when checking for GNU 4415 C. Delete library stripping program, until we have a correct 4416 test. 4417 44181996-12-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4419 4420 * ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm. From Mark 4421 Kettenis. 4422 44231996-12-09 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4424 4425 Reported by Charles Kerr: 4426 * doc/libtool.texi (Creating Object Files): Doc fix independant -> 4427 independent. 4428 4429 * ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library 4430 dependencies. 4431 44321996-12-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4433 4434 * Release 0.7. 4435 4436 * Makefile.am (EXTRA_DIST): Add README-automake to the 4437 distribution. 4438 4439 * ltmain.sh.in (link): When linking libtool libraries, use 4440 standard objects if they are PIC. This prevents spurious warnings 4441 about invalid suffixes on AIX. 4442 4443 * demo/Makefile.am: Rename libhell to libhello, so that we're not 4444 quite as offensive. 4445 4446 * ltconfig.in: Remove unnecessary host validity checking. 4447 4448 * ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la 4449 is good enough (for consistency with *.a handling). 4450 4451 * tests/demo.test: Break up into demo-conf.test, demo-make.test, 4452 demo-exec.test, demo-inst.test, and demo-unst.test, so that passes 4453 and failures are reported more quickly. 4454 4455 * tests/link-2.test: Test to make sure that .lo files don't get built 4456 directly into programs. 4457 44581996-12-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4459 4460 * ltmain.sh.in (link): Accept files ending in .a as standard 4461 object files. Reported by Ulrich Drepper. 4462 Remove support for creating profiled libraries (for now). 4463 Transform all library objects into standard objects when linking a 4464 program. 4465 4466 * ltconfig.in (thisdir): How embarrassing! An error in the regexp 4467 for finding the directory component of the script path. 4468 4469 * tests/tlibtool: A typically-configured libtool script, that uses 4470 ../ltmain.sh.in for its backend. 4471 4472 * tests/link.test: Make sure that it is legal to link against .a files. 4473 44741996-12-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4475 4476 * ltmain.sh.in (compile): Support `.S' (preprocessed assembler) 4477 files. Reported by Anthony Green. 4478 4479 * libtoolize.in: Give clearer instrutions for how to update 4480 aclocal.m4. 4481 4482 * ltconfig.in, ltmain.sh.in (link): Add support for creating 4483 reloadable objects. 4484 44851996-12-04 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4486 4487 * ltmain.sh.in (install): Fix passing -n flag to `libtool 4488 --finish'. 4489 (compile): Compile `.lo' and `.o' objects at the same time so that 4490 non-PIC objects (if they are available) can be used for linking 4491 into programs and creating static archives. Suggested by Ulrich 4492 Drepper. 4493 44941996-12-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4495 4496 * ltmain.sh.in (link): Give the full path to the libtool library 4497 when sourcing it. 4498 4499 * ltconfig.in (old_striplib): Do a configuration test to determine 4500 if old-style libraries actually can be stripped or not. 4501 45021996-12-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4503 4504 * tests/demo.test: Try compiling the ../demo subdirectory, with no 4505 special options. 4506 4507 * test-e.test: Check that we haven't used `test -e' anywhere in 4508 our portable shell scripts. 4509 45101996-12-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4511 4512 * ltconfig.in: Delete reference to ABOUT-LIBS. 4513 4514 * tests: Added new subdirectory. 4515 4516 * doc/libtool.texi: Doc fixes, and finished up the Configuring 4517 chapter. 4518 4519 * ltmain.sh.in (link): Allow *._o and *.l_o to be valid object 4520 file suffixes, for Automake's ansi2knr implementation. 4521 New option -version-info replaces -version-file. 4522 4523 [help]: Give a pointer to mode-specific help when appropriate. 4524 4525 * ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC. 4526 4527 * demo: Also test Automake's ansi2knr support. 4528 45291996-11-19 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4530 4531 * ltconfig.in: Bug fixes for AIX 4, and for static platforms. 4532 4533 * ltmain.sh.in (install): Fix for loops over arguments. 4534 Need to quote ${IFS= } -> "${IFS= }". 4535 (link): Fix soname_spec bug. Create objdir whether or not we have 4536 shared libraries. 4537 4538 * ltconfig.in: Check for library stripping program. 4539 Use test -f instead of test -e. 4540 45411996-11-18 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4542 4543 * ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't 4544 set. 4545 Be verbose about the environment variables we were configured 4546 with. 4547 4548 * ltmain.sh.in (objdir): change to .libs. 4549 45501996-11-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4551 4552 * ltmain.sh.in (install): Just plunge ahead with the 4553 installation... don't try to enforce dependencies. 4554 45551996-11-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4556 4557 * ltmain.sh.in: Fix up $libdir to be $dest in install mode. 4558 45591996-11-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4560 4561 * ltmain.sh: Finished rewrite of compile, link, and install 4562 modes. 4563 4564 * New ChangeLog file for libtool-0.7, since I've totally rewritten 4565 libtool. 4566 45671996-03-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu> 4568 4569 * For historical reasons: this is when I started writing libtool. 4570