1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-20 11:11:24 +00:00
freebsd/share/mk
Bryan Drewery d0ab0ec2fa Fix Makefiles which override LIBDIR to not add incorrect dependencies into .depend.
This fixes these cases which would rebuild every time:
    make[6]: /usr/obj/usr/src/libexec/rtld-elf/tests/libpythagoras/.depend, 1: ignoring stale .depend for /usr/obj/usr/src/tmp/usr/tests/libexec/rtld-elf/libm.a
    make[6]: /usr/obj/usr/src/lib/libxo/tests/encoder/.depend, 1: ignoring stale .depend for /usr/obj/usr/src/tmp/usr/tests/lib/libxo/libxo.a
    make[7]: /usr/obj/usr/src/lib/libthr/tests/dlopen/dso/.depend, 1: ignoring stale .depend for /usr/obj/usr/src/tmp/usr/tests/lib/libthr/dlopen/libpthread.a

The problem is that some Makefiles will override LIBDIR to where they want
their library to install.  bsd.libnames.mk will then use ${LIBDIR} to define
where *existing* libraries are.  This then leads to looking for the
libraries in the *target* place rather than the *expected* place.

We may want to expand this (and all of the other *DIR variables in bsd.own.mk)
into something like what Ports has, a PREFIX and a LOCALBASE.  PREFIX being
where things are being installed to and LOCALBASE being where they already are.

For now store the default expected LIBDIR into LIBDIR_BASE and use that for
library locations.

Reported by:	sbruno
MFC after:	1 week
Sponsored by:	Dell EMC Isilon
2017-06-17 20:33:11 +00:00
..
atf.test.mk
auto.obj.mk If MAKEOBJDIRPREFIX is a prefix match for .CURDIR, then __objdir is .CURDIR 2017-04-18 23:59:15 +00:00
bsd.arch.inc.mk
bsd.clang-analyze.mk
bsd.compiler.mk Detect clang on macOS. The version string is slightly different. 2016-10-24 17:59:25 +00:00
bsd.confs.mk DIRDEPS_BUILD: Fix '/' in group names creating a bad cookie. 2016-12-03 05:29:35 +00:00
bsd.cpu.mk Explicitly set the desired MIPS ABI in toolchain flags. 2017-04-07 20:02:01 +00:00
bsd.crunchgen.mk META_MODE: Fix build-tools still sometimes rebuilding during target build. 2017-04-06 18:21:59 +00:00
bsd.dep.mk META_MODE: Fix not using .depend files when no OBJDIR is present. 2017-03-17 18:08:36 +00:00
bsd.doc.mk Revert crap accidentally committed 2017-01-28 16:31:23 +00:00
bsd.dtb.mk
bsd.endian.mk Add full softfloat and hardfloat support for MIPS. 2016-10-31 15:33:58 +00:00
bsd.files.mk DIRDEPS_BUILD: Fix '/' in group names creating a bad cookie. 2016-12-03 05:29:35 +00:00
bsd.incs.mk DIRDEPS_BUILD: Fix '/' in group names creating a bad cookie. 2016-12-03 05:29:35 +00:00
bsd.info.mk Revert r301079. 2016-06-03 19:25:36 +00:00
bsd.init.mk Fix INSTALL_AS_USER with external nsswitch databases 2017-05-28 00:45:28 +00:00
bsd.kmod.mk WITH_META_MODE: Resolve SYSDIR to avoid changed build commands. 2016-05-31 23:08:43 +00:00
bsd.lib.mk Always set CLEANFILES, even if not building. 2016-11-13 00:10:56 +00:00
bsd.libnames.mk Fix Makefiles which override LIBDIR to not add incorrect dependencies into .depend. 2017-06-17 20:33:11 +00:00
bsd.links.mk
bsd.man.mk Revert r301079. 2016-06-03 19:25:36 +00:00
bsd.mkopt.mk
bsd.nls.mk Revert r301079. 2016-06-03 19:25:36 +00:00
bsd.obj.mk AUTO_OBJ: Support SRCS/DPSRCS that contain '/' and require a nested OBJDIR. 2016-08-30 22:48:05 +00:00
bsd.opts.mk
bsd.own.mk Fix Makefiles which override LIBDIR to not add incorrect dependencies into .depend. 2017-06-17 20:33:11 +00:00
bsd.port.mk
bsd.port.options.mk
bsd.port.post.mk
bsd.port.pre.mk
bsd.port.subdir.mk
bsd.prog.mk Add rules to build LLVM IR binaries and libraries. 2016-11-01 21:27:42 +00:00
bsd.progs.mk PROGS+META_MODE: Avoid rebuilding common sources when recursing. 2017-05-09 18:45:34 +00:00
bsd.README Fix a couple of typos and reword some sentences in bsd.README. 2017-03-08 05:49:58 +00:00
bsd.snmpmod.mk Add a make target (smilint) for running smilint tool against BMIBS 2017-01-17 03:38:49 +00:00
bsd.stand.mk Do not use -msoft-float with intention of disabling FP on aarch64 2017-04-07 22:58:25 +00:00
bsd.subdir.mk DIRDEPS_BUILD: Consolidate some logic for skipping of reading Makefile.depend. 2016-11-13 00:11:05 +00:00
bsd.suffixes-posix.mk Extract suffix rules into bsd.suffixes[-posix].mk. 2016-10-12 00:42:46 +00:00
bsd.suffixes.mk Revert r307823 (Use upstream suffixes for LLVM IR) for now. It causes a 2016-10-27 18:46:52 +00:00
bsd.symver.mk
bsd.sys.mk Disable -Waddress-of-packed-member for WARNS <= 3. 2017-01-08 14:49:50 +00:00
bsd.test.mk Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
dirdeps.mk Fix typo in comment. 2017-03-07 01:42:30 +00:00
gendirdeps.mk Update meta* from bmake-20161212 2016-12-23 02:57:00 +00:00
host-target.mk
install-new.mk
local.autodep.mk
local.dirdeps.mk DIRDEPS_BUILD: Exclude secure/lib* libraries for host builds. 2016-05-04 03:13:48 +00:00
local.gendirdeps.mk DIRDEPS_BUILD: Clang headers are now in lib/clang/headers 2016-09-02 19:28:24 +00:00
local.init.mk
local.meta.sys.mk META_MODE: Move ignoring of /usr/local/etc/libmap.d to proper place. 2017-06-01 23:04:44 +00:00
local.sys.env.mk
local.sys.mk WITH_META_MODE: End each ERROR_CMD CMD line with ';'. 2017-06-16 21:48:42 +00:00
Makefile Extract suffix rules into bsd.suffixes[-posix].mk. 2016-10-12 00:42:46 +00:00
meta2deps.py Fix syntax error in parse_path after r316952. 2017-05-08 20:44:21 +00:00
meta2deps.sh Update meta* from bmake-20161212 2016-12-23 02:57:00 +00:00
meta.autodep.mk When MAKEOBJDIRPREFIX points to a case-insensitive file system, the 2016-09-24 15:11:27 +00:00
meta.stage.mk Update dirdeps/meta bits from latest bmake. 2017-03-06 23:13:25 +00:00
meta.subdir.mk
meta.sys.mk Avoid clobbering existing value of META_COOKIE_TOUCH 2016-09-13 22:17:25 +00:00
netbsd-tests.test.mk
plain.test.mk
src.init.mk
src.libnames.mk Fix Makefiles which override LIBDIR to not add incorrect dependencies into .depend. 2017-06-17 20:33:11 +00:00
src.opts.mk Finish removal of groff 2017-06-07 23:26:28 +00:00
src.sys.env.mk WITH_META_MODE: Don't let subdir traversals for 'make install' re-enable meta mode. 2016-08-25 23:55:56 +00:00
src.sys.mk
stage-install.sh
suite.test.mk Merge ^/user/ngie/release-pkg-fix-tests to unbreak how test files are installed 2016-05-04 23:20:53 +00:00
sys.dependfile.mk
sys.mk META_MODE: NO_FILEMON should imply nofilemon. 2017-06-12 18:44:14 +00:00
tap.test.mk
version_gen.awk