16 Commits

Author SHA1 Message Date
bapt
b59c5e751e Merge from head 2015-09-12 11:41:31 +00:00
imp
979fd50373 For each FOO in FILESLISTS, append the value of FOO.yes, sort, and
remove duplicates.
2015-08-27 01:52:45 +00:00
bapt
35a6f0a11c Merge from head 2015-06-15 10:56:01 +00:00
bapt
06736b2230 Allow to tag the METALOG per file group 2015-03-05 12:39:18 +00:00
bapt
f746c0075f Makes it more flexible to tag and define a target package 2015-02-13 00:16:05 +00:00
bapt
68eae5df4b Tag the metalog with a global default sets of tags that will be used to decide
what will go in which package, more finer grain tagging to come
2015-02-10 22:29:07 +00:00
sjg
d7cd1d425c Merge head from 7/28 2014-08-19 06:50:54 +00:00
jmmv
12a7a79295 Ensure files are created during the build when using bsd.subdir.mk.
When FILES is defined in a Makefile that _also_ includes bsd.subdir.mk, the
build of the files (if any) was not properly triggered during the build
stage.  This was because bsd.files.mk did not define the buildfiles target
if it was already defined... and bsd.subdir.mk defined this target on its
own, thus causing a conflict.

Fix this by unconditionally defining buildfiles from bsd.files.mk; this is
safe because nothing else in the tree needs to redefine this and because the
target itself contains no commands: all it does is define dependencies.
Also ensure that bsd.files.mk is always pulled in by bsd.test.mk regardless
of what bsd.prog.mk does.

These fixes allow "make installworld" to run cleanly on a system with
read-only src and obj trees.

This is "make tinderbox" clean.

Reviewed by:	imp
Obtained from:	jilles
2014-06-09 14:36:49 +00:00
sjg
5e568154a0 Merge head 2014-04-28 07:50:45 +00:00
rpaulo
c71fd6a108 Allow mixing bsd.files.mk with bsd.subdir.mk.
If a single Makefile wants to recurse into subdirectories and also
wants to install files, bsd.files.mk's targets would get ignored in
favor of those defined by bsd.subdir.mk because installfiles would
not get defined in bsd.files.mk.

Prevent this from happening by defining the targets in bsd.files.mk
with auxiliary names and listing them as dependencies of installfiles
instead.

This is required by bsd.test.mk, which needs to install a Kyuafile
in pretty much all cases but may also need to recurse into
subdirectories for build purposes.

Submitted by:	Julio Merino jmmv google.com
Reviewed by:	sjg
MFC after:	2 weeks
2013-10-25 05:11:10 +00:00
sjg
933720a26c Because the target of SYMLINKS is typically a full path, we
"stage" them to the stage tree rather than a location within.
2013-01-23 00:46:53 +00:00
marcel
9dd41e3647 Sync FreeBSD's bmake branch with Juniper's internal bmake branch.
Requested by: Simon Gerraty <sjg@juniper.net>
2012-08-22 19:25:57 +00:00
harti
f2968c80c9 Make sure the only thing that follows .endif or .else is a comment. 2005-04-11 07:13:29 +00:00
ru
a8adf98c82 Drop support for COPY, -c has been the default mode of install(1)
for a long time now.

Approved by:	bde
2002-07-29 09:40:17 +00:00
ru
734b0dc514 Try really hard to fix parallel installs. Add a bunch of .ORDER
directives to ensure that all realinstall sub-tasks are executed
after beforeinstall, similarly ensure that all afterinstall sub-
tasks are executed after realinstall.  Demonstration:

all: task1 task2
.ORDER: task1 task2

task2: task2_subtask
.ORDER: task1 task2_subtask

task1 task2 task2_subtask:
	@sleep `jot -r 1 0 1.0`
	@echo ${.TARGET}

Without the second .ORDER directive, task2_subtask can be run in
parallel with task1.

Spotted by:	Andrea Campi <andrea@webcom.it>
2002-07-03 12:28:03 +00:00
ru
f24282207a Reimplement FILES support using bsd.files.mk with the
same set of features as in recently added bsd.incs.mk
(FILESGROUPS, accessibility from both bsd.prog.mk and
bsd.lib.mk, de-pessimized typical installation path,
etc.)  New standard targets: buildfiles, installfiles,
and files (buildfiles + installfiles).
2002-06-03 14:49:34 +00:00