summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-12-10build system: configure: robustly support special characters in custom args.midipix1-27/+9
Special thanks to Jonas 'Sortie' Termansen, author of the Sortix operating sys (https://sortix.org), for brainstorming about the best way to forward arguments containing special symbols or characters to a sourced (aka dot) shell script, as well as sharing single-quote tips and tricks.
2018-12-10build system: configure: set $mb_native_cc independently of $CC.midipix1-8/+0
2018-12-10build system: support custom configuration via cfgdefs.sh (and usrdefs.mk).midipix3-3/+99
2018-12-10build system: added NATIVE_CC_HOST support.midipix3-1/+18
2018-11-25build system: --all-shared: ensure linking against the newly built library.midipix1-1/+1
This patch guards against the case where -lfoo would result in the linking in of either an external import library libfoo.lib.a, or a static libfoo.a, be it internal or external to the build system.
2018-11-25build system: only apply LDFLAGS_IMPLIB to the package's primary shared lib.midipix2-1/+1
2018-11-25build system: --all-shared: properly express primary shared library dependency.midipix1-1/+1
2018-11-25build system: PE, ELF: defined DSO_REF_VER, DSO_REF_SONAME, DSO_REF_SOLINK.midipix2-0/+8
These definitions come in handy when a project generates alongside its ``primary shared library'' one or more ``extension libraries'' that depend on it. When the rules for generating extension libraries use the $^ directive, the above dependency must be declared in a target-aware manner. In most cases, one would want to express this dependency by way of $(DSO_REF_SONAME), thereby pulling in lib/libfoo.so.$(MAJOR) on ELF targets, lib/libfoo.$(MAJOR).lib.a on midipix targets, and lib/libfoo.$(MAJOR).dll.a on win32 targets.
2018-11-25build system: sysinfo: bsd/linux: remove implib .PHONY defs (are in elf.mk).midipix2-4/+0
2018-11-23build system: all-shared: use LDFLAGS_APP as before, now with correct ordering.midipix1-1/+1
2018-11-22build system: added --cfghost support.midipix4-2/+17
2018-11-10install mode: host flavors: properly support suffixed suffixes.midipix1-4/+24
2018-11-10link mode: host flavors: properly support suffixed suffixes.midipix3-27/+52
2018-11-10install mode: slbt_exec_uninstall_entry(): refactor (".so" --> dsosuffix).midipix1-6/+10
2018-11-10driver: host flavors: added suffixed suffixes support.midipix2-7/+9
2018-11-10driver: host flavors: whitespace meditation.midipix1-9/+39
2018-11-10driver: host flavors: midipix: ldso environment variable is LD_LIBRARY_PATH.midipix1-1/+1
2018-11-10build system: host flavors: support suffixed library extensions.midipix10-3/+35
'cause you cannot eat your Apfel and eat it two.
2018-11-07release 0.5.28v0.5.28midipix2-1/+9
2018-11-07driver: enhanced target-ar logic: accommodate legacy systems.midipix1-29/+35
On legacy systems, posix_spawnp() might return 0 even if the execvp() invocation in the child had failed with ENOENT. Replace posix_spawnp() with an internal, fork+execvp based internal function.
2018-11-07release 0.5.27v0.5.27midipix2-1/+12
2018-11-07driver: slbt_init_host_params(): enhance the target-ar related logic.midipix1-0/+82
2018-10-24release 0.5.26v0.5.26midipix2-1/+25
2018-10-24slbt_exec_compile{_finalize_argument_vector}(): remove placeholder arguments.midipix1-0/+99
2018-10-24driver: execution context: added slbt_reset_argvector().midipix3-0/+41
2018-10-21slbt_exec_link_finalize_argument_vector(): remove redundant -L arguments.midipix1-0/+14
2018-10-21slbt_exec_link_finalize_argument_vector(): refactor argument removal logic.midipix1-36/+40
2018-10-21slbt_exec_link_finalize_argument_vector(): remove placeholder arguments.midipix1-1/+4
2018-10-21slbt_exec_link_finalize_argument_vector(): remove redundant -l arguments.midipix1-2/+48
2018-10-21slbt_exec_link_finalize_argument_vector(): properly handle local archives.midipix1-0/+4
2018-10-21slbt_split_argv(): properly normalize --library-path=<path> arguments.midipix1-1/+1
2018-10-15slbt_exec_link_create_dep_file(): simplify given the recent argv normalization.midipix1-19/+4
2018-10-15driver: clone, normalize (-l,--library,-L,--library-path) the argument vector.midipix2-22/+138
2018-10-15slbt_exec_link_finalize_argument_vector(): fix sneaky typo.midipix1-2/+2
2018-08-17driver: slbt_get_driver_ctx(): support stack-based argv.midipix1-1/+1
2018-08-14slbt_lconf_open(): close all temporarily-opened directory file descriptors.midipix1-2/+8
2018-08-13internals: slbt_adjust_linker_argument() now uses the context's fdcwd.midipix1-2/+6
2018-08-13internals: slbt_mkdir() now uses the context's fdcwd.midipix3-5/+12
2018-08-13slbt_get_driver_ctx(): output error vector upon post-argv-parsing failures.midipix1-33/+32
2018-08-13utility: convenience symlinks: added rclibtool, rdlibtool, and rdclibtool.midipix2-0/+28
2018-08-13slbt_lconf_open(): removed redundant check.midipix1-4/+0
2018-08-13utility: --heuristics support: added the 'rlibtool' convenience symlink.midipix2-0/+11
2018-08-13driver: added --heuristics support.midipix4-0/+44
2018-08-13internals: -shared/-static heuristics: added slbt_get_lconf_flags().midipix5-0/+203
2018-08-09coding-style meditation.midipix1-2/+7
2018-08-09internals: slbt_output_strerror(): use strerror_r(3) rather than strerror(3).midipix1-5/+11
2018-08-09front-end utility: slbt_main(): remove the redundant argc parameter.midipix4-9/+14
2018-08-05build system: configure: replace non-simple backtick with $(...) construct.midipix1-1/+1
2018-08-05coding-style meditation.midipix1-3/+3
2018-08-04library: removed slbt_create_driver_ctx() [too much of a good thing].midipix2-39/+0