Redfoxmoon / cross / slibtool

Forked from cross/slibtool 10 months ago
Clone
Blob Blame History Raw
0.5.12:

This patch release includes a variety of fixes and improvements in slibtool's
functionality, as well as several enhancements to slibtool's own build system.

- driver: added support for -dlopen (currently a no-op).
- error trace: improved and extended the initial interface.
- error trace: added descriptive error strings for custom errors.
- link mode: properly determine whether -L and -ldeplib are needed.
- link mode: do not respect -disable-static without -rpath.
- link mode: respect -disable-static.
- link mode: properly handle indirect dependencies of .a archives.
- link mode: confirm need for archive import; limit .a deps to external deps.
- compile mode: respect -disable-static and -disable-shared.
- install mode: respect -disable-static.
- legacy wrappers: implemented compatible library and objects wrappers.
- build system: added support for cygwin's, mingw's, and msys's semantics.

0.5.11:

This patch release provides -portbld- support for systems that still need
it, as well as an initial implementation of the --uninstall mode. In addition,
this release includes a few important bug fixes, as well as adds --source-dir
support to slibtool's own build system.

- driver: accommodate hosts that occasionally use '-portbld-' in their triple.
- link mode: properly handle -all-static when creating an executable image.
- link mode: add -L.libs for current-directory .la input arguments.
- uninstall mode: initial implementation.
- build system: support setting an external folder as the source directory.

0.5.10:

This patch release fixes the following subtle link-mode bugs:

- link mode: archive creation: .la-associated objects are always under .libs/.
- link mode: soname: properly handle -module when output begins with dso prefix.

0.5.9:

This patch release enhances support of indirect dependencies, as well
the handling of direct invocation of executables (as opposed to passing
an executable to gdb or similar as an argument).

- execute mode: properly handle direct program invocation.
- link mode: account for directory depth when generating .deps for .la wrapper.
- link mode: properly handle sub-directories in indirect .la wrapper dependency.
- link mode: properly handle dependency information in current-dir .la wrappers.

0.5.8:

This patch release follows several important bug-fixes, as well as the
addition and integration of error trace support.

- install mode: support the -f (force copy) command line argument.
- link mode: properly use dependency information associated with .la wrappers.
- link mode: ignore -rpath when deciding whether to create an executable.
- utility: added error trace support, integration, and annotated output.
- library: added public error trace interfaces.
- argv.h: error message formatting: handle lonely long options.

0.5.7:

This patch release contains one future-looking change in the project's
design, as well as a few improvements in slibtool's own build system.

- utility: added slbt_main() as a public interface, refactored accordingly.
- utility: improved box integration, removed need for build-time macro.
- build system: warn only upon failure to detect native size of pointer.
- build system: add a test for legacy gcc versions.

0.5.6:

This patch release contains a few important fixed to program logic,
as well as one addition to slibtool's own build system.

- driver: added --finish support.
- link mode: properly handle empty dependency files.
- link mode: properly handle absolute path when joining archives.
- build system: support project-specific overrides of OS and toolchain defs.

0.5.5:

This patch release contains a couple of important fixed to program logic,
and a few minor improvements in slibtool's own build system.

- link mode: support over-linking for an .la wrapper linker input argument.
- execute mode: properly handle the current working directory.
- build system: added support for [C|LD]FLAGS_LAST and [C|LD]FLAGS_ONCE.
- build system: avoid side effects on the build system due to git-status.

0.5.4:

This patch release includes a few fixes to the program logic and output,
as well as several improvements in slibtool's own build system.

- link mode: always create the .libs directory.
- output: flush stdout upon return from output functions.
- build system: remove generic dependency of object files on version.tag.
- build system: moved core definition files to a designated folder.
- build system: PE targets: handle subsystem setting in pe.mk.
- build system: added --avoid-version support.

0.5.3:

This patch release includes a few minor fixes and several improvements, all
related to slibtool's own build system.

- build system: app.tag: avoid unconditional step execution.
- build system: configure: added --strict, --ccstrict, --ldstrict support.
- build system: Makefile: added the .conf convenience target.
- build system: Makefile: added the .display_cc convenience target.
- build system: Makefile: added the -display_cflags convenience target.
- build system: Makefile: added custom header installation support.

0.5.2:

This patch release includes several fixes of bugs that were discovered while
testing slibtool as the primary libtool in a pkgsrc comprehensive build. In
addition, the release includes several improvements to slibtool's own build
system.

- link mode: legabits: generate a perfectly compatible wrapper.
- install mode: legabits: install a perfectly compatible wrapper.
- project: by default, slibtool is now an application-only package.
- build system: added support of --disable-shared and --disable-static.
- build system: added support of --all-shared and --all-static.
- build system: properly handle user inclusion of -static in LDFLAGS.

0.5.1:

This patch release includes several small fixes, as well as the addition of
an optional (opt-in at runtime) yet important compatibility feature, namely
the installation of .la wrappers. Changes in this release include:

- driver: added --legabits support.
- install mode: optional installation of .la wrappers.
- project: added compatibility symlinks (clibtool, clibtool-[shared|static])
- build system: removed the endian.h test.
- build system: proper use of any-os.mk.

0.5.0:

This is the first tagged release of slibtool. It is the result of two months of
intensive development, and follows rigorous testing on several systems. As of
this initial release, slibtool is known to successfully build an entire Exherbo
Linux system from source, build the midipix cross compilation toolchain from
source, and likewise build many other packages.

Support for the ELF/default host flavor is complete, and does not appear to have
any errors. Support for the PE/midipix flavor is also complete, and includes not
only static archives and shared libraries, but also import libraries with
version support. Support for the Darwin host flavor already exists too, yet it
is currently semantically incorrect, and so will be fixed in the next release.