summaryrefslogtreecommitdiffhomepage
path: root/src/logic/slbt_exec_link.c
AgeCommit message (Collapse)AuthorFilesLines
2021-04-15library: replace all uses of [slbt_]readlink() with [slbt_]readlinkat().midipix1-3/+4
2021-04-15library: replace all uses of stat() and lstat() with fstatat() counterparts.midipix1-9/+13
2021-04-08link mode: set the -soname linker flag alongside the -avoid-version argument.midipix1-1/+12
2021-04-05link mode: shared: use .deps of a static-only .la input argument as needed.midipix1-1/+5
2021-04-05link mode: always include explicit -L dirs in ldpathenv.Lucio Andrés Illanes Albornoz1-1/+7
2021-04-05link mode: require dependency list to be present for all .la input arguments.midipix1-7/+7
2021-04-03execute mode: handle relative -L pathnames & cwd-relative wrapper scripts.Lucio Andrés Illanes Albornoz1-35/+122
2021-04-02link mode: enclose vnames in wrapper script in braces.Lucio Andrés Illanes Albornoz1-4/+4
2021-04-01link mode: always include deplib dirs in ldpathenv.Lucio Andrés Illanes Albornoz1-2/+22
2021-03-21link mode: slbt_exec_link(): record the -shrext argument for the install step.midipix1-0/+24
2021-03-20slbt_exec_link_create_library_symlink(): check for -version-info with -release.midipix1-5/+6
2020-12-23slbt_exec_{compile|link}(): properly record the not-found path upon error.midipix1-1/+2
2020-12-20internals: error tracing: record the not-found path upon ENOENT as needed.midipix1-29/+35
2020-09-13whitespace meditation.midipix1-9/+9
2020-09-13link mode: slbt_exec_link(): properly handle .la targets built with -module.midipix1-11/+20
2020-09-08driver, link mode: properly implement the -module semantics.midipix1-1/+27
Prior to this commit, -module was not respected when the specified output name happened to end with the platform's shared library suffix. In addition, the logic for generating shared libraries with -module in effect has been incomplete and partially also incorrect.
2019-02-19driver, compile & link mode: support arbitrary & known compiler wrappers.midipix1-4/+14
2018-11-10link mode: host flavors: properly support suffixed suffixes.midipix1-21/+33
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-15slbt_exec_link_create_dep_file(): simplify given the recent argv normalization.midipix1-19/+4
2018-10-15slbt_exec_link_finalize_argument_vector(): fix sneaky typo.midipix1-2/+2
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.midipix1-1/+1
2018-07-18slbt_adjust_object_argument(): support validly alternate (non-)pic objects.midipix1-17/+57
2018-07-18slbt_adjust_input_argument(): split: slbt_adjust_{wrapper|object}_argument().midipix1-9/+42
2018-07-16project: update the _XOPEN_SOURCE requirement to reflect use of openat(3).midipix1-4/+0
2018-07-11compile & link modes: accommodate conceptually challenged, PICky targets.midipix1-1/+3
2018-07-11link mode: properly handle explicit archive input arguments.midipix1-5/+13
2018-07-11whitespace meditation.midipix1-9/+9
2018-07-11slbt_adjust_linker_argument(): properly handle external archives and libraries.midipix1-7/+9
2018-07-10slbt_adjust_linker_argument(): process dependencies also for non-pic .la args.midipix1-1/+1
2018-07-10slbt_adjust_linker_argument(): properly handle explicit .a/.so arguments.midipix1-0/+6
2018-07-07implementation: use of openat(): define _POSIX_C_SOURCE as needed.midipix1-0/+4
2018-07-06library interfaces: invocations of openat() now use the context's fdcwd.midipix1-6/+21
2018-07-05slbt_get_deps_meta(): fix typo (and hide).midipix1-1/+1
2018-06-29execution context: generated wrapper: replaced the stream with a pure fd.midipix1-9/+15
2018-06-29link mode: re-implemented slbt_exec_link_create_dep_file() w. pure fdio.midipix1-89/+120
2018-06-29link mode: re-implemented slbt_exec_link_adjust_argument_vector() w. pure fdio.midipix1-90/+73
2018-06-29slbt_exec_link_adjust_argument_vector(): free depsmeta memory upon error.midipix1-9/+26
2018-06-29link mode: re-implemented slbt_get_deps_meta() w. pure fdio.midipix1-41/+31
2018-06-27annual chores.midipix1-1/+1
2018-06-22link mode: properly handle the combination of -release and -version-info.midipix1-5/+29
2018-06-21link mode: slbt_exec_link_create_dep_file(): record top-level -L arguments.midipix1-0/+18
2018-06-21link mode: --disable-{shared|static}: use differently-named placeholders.midipix1-3/+1
2018-05-08link mode: pass --export-dynamic to the linker as needed.midipix1-0/+3
2017-12-20link mode: re-implemented slbt_exec_link_finalize_argument_vector().midipix1-94/+77
The above internal interface is now doing the right thing, namely to split the argument vector between object arguments and all other arguments, then rejoin the arguments by placing object arguments first, and all other arguments last.