Commit Graph

161 Commits

Author SHA1 Message Date
Enji Cooper
ed8251f888 mergemaster: fix description of -p
-p only handles updating /etc/master.passwd and /etc/group . No more,
no less.

Also, mergemaster (and no other portions of the vanilla FreeBSD build
process) should be messing with __MAKECONF or SRCCONF as part of the
installworld or distribution process. Don't insinuate that mergemaster
does that as it's a false claim.

MFC after:	1 week
Sponsored by:	Dell EMC Isilon
2017-03-07 04:13:22 +00:00
Bryan Drewery
ffe0dde6c6 META_MODE: Don't require filemon(4) for mergemaster(8)/etcupdate(8)
New .meta files will be created without filemon data, but any future build
that wants filemon data will force a rebuild due to the missing data
due to use of bmake's .MAKE.MODE=missing-filemon=yes feature.

Reported by:	np
Sponsored by:	EMC / Isilon Storage Division
MFC after:	3 days
2016-07-12 19:47:01 +00:00
Bryan Drewery
e0efd9ee69 All supported releases have the -m support from r186678, so remove
the mention of it and reword this a bit to remove 'you'.

MFC after:	3 days
2015-09-29 17:54:01 +00:00
Simon J. Gerraty
ccfb965433 Add META_MODE support.
Off by default, build behaves normally.
WITH_META_MODE we get auto objdir creation, the ability to
start build from anywhere in the tree.

Still need to add real targets under targets/ to build packages.

Differential Revision:       D2796
Reviewed by: brooks imp
2015-06-13 19:20:56 +00:00
Simon J. Gerraty
44d314f704 dirdeps.mk now sets DEP_RELDIR 2015-06-08 23:35:17 +00:00
Simon J. Gerraty
ee7b0571c2 Merge head from 7/28 2014-08-19 06:50:54 +00:00
Marcel Moolenaar
e7d939bda2 Remove ia64.
This includes:
o   All directories named *ia64*
o   All files named *ia64*
o   All ia64-specific code guarded by __ia64__
o   All ia64-specific makefile logic
o   Mention of ia64 in comments and documentation

This excludes:
o   Everything under contrib/
o   Everything under crypto/
o   sys/xen/interface
o   sys/sys/elf_common.h

Discussed at: BSDcan
2014-07-07 00:27:09 +00:00
Baptiste Daroussin
01c2b8ac0d use .Mt to mark up email addresses consistently (part2)
PR:		191174
Submitted by:	Franco Fichtner  <franco@lastsummer.de>
2014-06-20 09:57:27 +00:00
Simon J. Gerraty
3b8f084595 Merge head 2014-04-28 07:50:45 +00:00
Jilles Tjoelker
819b4fd06a mergemaster: Avoid "/var/tmp/temproot disappeared" if there is nothing to
compare.

Because of the change to find in SVN r253886, the entire temproot would be
deleted if it became empty, leading to a confusing message "*** FATAL ERROR:
The temproot directory ${TEMPROOT} has disappeared!"

Note that mergemaster does not do anything useful in this situation anyway
(e.g. put IGNORE_FILES="/etc/group /etc/master.passwd" in
/etc/mergemaster.rc and run mergemaster -p).

As noted in that commit, add -mindepth 1.

PR:		bin/188485
Submitted by:	David Boyd
MFC after:	1 week
2014-04-14 22:01:49 +00:00
John Baldwin
385d6d4738 Generate /var/db/services.db during 'make distribution' so that it is
present during new installs.  Update etcupdate and mergemaster to
ignore the generated file.

Tested by:	gjb (release build)
MFC after:	1 month
2014-01-22 16:59:53 +00:00
Brooks Davis
baf4f1f082 Fix mergemaster -U by forcing FreeBSD 9 compatiblity in mtree when mtree is
nmtree.

The mtree output used by mergemaster in this case was clearly not meant for
computer consumption and an approach based on -f <file1> -f <file2> would
probalby be a better idea, but this is a minimal change.

MFC after:	3 days
X-MFC-with:	r258437
2013-11-22 00:06:11 +00:00
Simon J. Gerraty
d466a5b069 Merge head 2013-09-11 18:16:18 +00:00
Xin LI
b10eed4081 Pass -n (do not emit comments) when saving mtree information for future
mergemaster(8) runs.

MFC after:	3 days
Approved by:	re (kib)
2013-09-09 20:36:28 +00:00
Simon J. Gerraty
d1d0158641 Merge from head 2013-09-05 20:18:59 +00:00
Eitan Adler
b3ff5e4561 Remove request to email suggestions and fixes to the author.
He is no longer involved with the FreeBSD project.

While here: remove "no known bugs" and related.  This isn't present in other manual pages.

PR:		docs/179914
2013-06-24 19:57:25 +00:00
Peter Wemm
41b886b61c Don't mess with /etc/localtime if it is a symlink. 2013-05-22 19:00:05 +00:00
Eitan Adler
1bfbcedae9 Permit relative paths with mergemaster -m
Reviewed by:	dim, brooks
MFC after:	3 days
2013-05-10 17:42:13 +00:00
Brooks Davis
20e0cc0abb Use the system MAKEOBJDIRPREFIX when running make targets in
mergemaster.  This allows bootstrap verions of tools to be used.

Add a note to UPDATING about this change.

Discussed with:	jhb
Sponsored by:	DARPA, AFRL
MFC after:	5 days
2013-04-25 21:19:50 +00:00
Simon J. Gerraty
f5f7c05209 Updated dependencies 2013-02-16 01:23:54 +00:00
David E. O'Brien
d9a447559b Sync with HEAD. 2013-02-08 16:10:16 +00:00
Eitan Adler
a927ac5de0 Remove pointless check for the existence of /usr/bin/less which exists
in all configurations.

Reviewed by:	mjg
Approved by:	cperciva
MFC after:	2 weeks
2012-12-05 13:56:36 +00:00
Eitan Adler
c7b686bbb7 Add ability to mergemaster to permit the user to type
the absolute path to PAGER if mergemaster can not find
the one already set.

Reviewed by:	mjg
Approved by:	cperciva
MFC after:	2 weeks
2012-12-05 13:56:32 +00:00
Simon J. Gerraty
23090366f7 Sync from head 2012-11-04 02:52:03 +00:00
Doug Barton
3aec794146 Remove references to CVS so that people will stop bringing it up
For -p:
	The localtime update should have been excluded in the first place

	The make.conf comparison has been OBE for some time now, and there
	is no src.conf equivalent to share/examples/make.conf, so remove
	the whole thing.

Update copyright
2012-10-05 05:01:42 +00:00
Marcel Moolenaar
7750ad47a9 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
Doug Barton
878c6432be If using DISTDIR we need to be sure to create a ${DESTDIR}/var/db/zoneinfo
PR:		bin/162891
Submitted by:	Helge Oldach <src-mergemaster-nov11@oldach.net>
2011-11-29 08:22:12 +00:00
Doug Barton
b90270a146 1. Add a new option, --run-updates, to always or never run the newalises,
pwd_mkdb, etc. updates at the end of the comparison.

2. Add an update to the end to handle /etc/localtime, if it exists.
   If /var/db/zoneinfo exists, automatically update /etc/localtime,
   which should (hopefully) be safe to do. If not, prompt the user
   to run tzsetup.

3. Update run_it_now(), the function that handles input for the updates,
   to make sure that we got a valid answer, and to handle the --run-updates
   option if supplied.
2011-11-02 07:40:23 +00:00
Doug Barton
a2ca3bc171 Make clear that the -U option can be dangerous. [1]
In -p mode install the group file with the same permissions as normally
done in etc/Makefile.

Update the copyright.

Requested by:	peter [1]

Approved by:	re (kib)
2011-08-09 07:42:19 +00:00
Ulrich Spörlein
0d9deed52c mdoc: drop redundant .Pp and .LP calls
They have no effect when coming in pairs, or before .Bl/.Bd
2010-10-08 12:40:16 +00:00
Doug Barton
de2bfae478 Hide the creation and population of the temproot 2010-05-14 19:12:06 +00:00
Norikatsu Shigemura
2db9a1171c Add support run services_mkdb(8).
Approved by:	dougb, imp (mentor)
Reviewed by:	ume
MFC after:	2 weeks
2010-05-04 11:25:04 +00:00
Doug Barton
c9bb666937 Make it more clear in the docs that -a is not compatible with -iFU,
and enforce this in the code. Apparently a lot of users mistakenly
combine -a with these flags and are then mystified that no changes
were made.

While I'm here, fix a trailing space in mergemaster.8
2010-03-14 05:22:46 +00:00
Doug Barton
a68c7fa928 Make -U once again honor -D after my change to consolidate setting
of MTREEDB with DESTDIR.

PR:		bin/143089
Submitted by:	Anton Yuzhaninov <citrin@citrin.ru>
2010-01-22 17:17:47 +00:00
Ruslan Ermilov
aa4a335bae Use the newly brought %U macro. 2010-01-15 16:01:22 +00:00
Doug Barton
bc1b4f78f9 Oops, deleted one line too many. Add back the null case for IGNORE_MOTD 2010-01-15 04:09:22 +00:00
Doug Barton
705b2d5389 Now that we've officially arrived at FreeBSD 9, remove the IGNORE_MOTD
compat shim as advertised. This change should not be MFC'ed.
2010-01-15 03:56:48 +00:00
Doug Barton
f94a6780d9 Update copyright date
Update delete_temproot() to include the error message if it fails,
and clean up the places where it's called.

If there are no files left in temproot when the comparison is done
delete it without prompting. This should make "automated" runs of
mergemaster without -a a little easier.

Document the new behavior in the man page.
2010-01-08 00:05:10 +00:00
Doug Barton
15768c780a If we are using -p it does not make any sense to even create the
MTREENEW file since it will never be used.
2009-12-31 04:07:13 +00:00
Doug Barton
3dbee1749a It's not necessary to include both Op and Fl for command line options
included in the text, so use only the latter.

Clarify that using -U doesn't make sense in combination with -a
2009-12-30 23:26:29 +00:00
Doug Barton
6fb3661e8f Document the DELETE_STALE_RC_FILES option introduced in r201291. This is
an "rc file only" option by design.

While I'm here, update the comments in the example rc file to indicate
which command line options they relate to, and correct the defaults
for a couple of options.
2009-12-30 23:16:14 +00:00
Doug Barton
8d54ee3c0b Add some patches contributed by jhb:
1. Don't prompt the user for "-U but no db" error if we're using -a
2. Add an option to delete stale rc.d files automatically if the user
has DELETE_STALE_RC_FILES in their rc file. Lack of command line option
for this is not an oversight.
3. Add []'s around the terminal $ for the $FreeBSD$ test for -F

For one bug raised by jhb I did a more thorough solution:
There were a lot of things that "snuck in" between the end of the test
for -r and the start of the comparison. One of them is the creation of
the mtree db, as pointed out by jhb. Fix this problem more thoroughly
by moving the end of the test down to where it should/used to be, right
before the comparison. As a result, indent the interloping code to match.
2009-12-30 23:14:03 +00:00
Doug Barton
d90331f910 Fix a problem with how mergemaster handles the hard links for /.cshrc
and /.profile. The problem is that install(1) will unlink the old file
before it installs the new one, which means that in the best case we
have to compare the changes for the old file twice.

So, change the logic to first test to see if the link exists, then
install the file. Then if the link was there and we're using -i, just
create the link in /root and be done with it. Otherwise display the
message to the user and give them the option.

Because we are now sorting things before doing the comparison we can
know conclusively that the files in / should be the sources, and the
files in /root will be the targets, so adjust the paths accordingly.

While I'm here, split a too-long error message into two lines and
just return at the end of handling these files instead of setting
the variable that says "do nothing" and then returning at the end
of the function anyway.
2009-12-19 05:20:26 +00:00
Doug Barton
98e47f9dfe Fix an indentation issue, no functional changes 2009-12-19 01:32:34 +00:00
Doug Barton
bdeda2817b In the places where find is used that the user may see the results,
first pipe it to sort so that order of processing will be deterministic
and like things will be grouped together.
2009-12-19 01:30:45 +00:00
Doug Barton
1b2aeedc64 Over time things that used to be files/directories/links can change
to something else. So add code to detect when things don't match and
give the user choices about how to fix it.

If we're using -P and something in the above check needs to be moved
we need to have the directory there for it, so create it at the
beginning and delete empty versions of it at the end.

The case where something used to be a file or link and now is supposed
to be a directory (e.g., /etc/security) is especially dangerous, so
make failure to install a necessary directory in $DESTDIR a fatal error.
2009-12-12 02:19:41 +00:00
Doug Barton
044823bee6 Simplify handling of MTREEFILE relative to DESTDIR
Make the message about a missing MTREEFILE combined with -U
more informative
2009-12-11 23:03:35 +00:00
Doug Barton
119d24adab 1. Update the message that prints out for -U when the mtree database does
not exist to let the user know that it will be created for the next run.

2. Delete more stuff we're not going to use from the temproot prior to
creating the mtree database to dramatically reduce its size (162K -> 37K).

3. We've been deleting the zero-size files from temproot for a long time
now, so remove the spurious "-size +0" from the find command in the
comparison loop, and remove what is now a really stale comment.
2009-06-09 20:20:08 +00:00
Doug Barton
1b855ebe6c Enhance the safety of the -U option:
1. In several places make sure that the mtree database is not empty using
the -s argument to test instead of -f. (I thought I'd already changed this,
but obviously not.)
2. When deriving the list of changed files use a colon-delimited list.
3. If the list of changed files is empty, unset the variable, and test
for a non-empty CHANGED in diff_loop() before entering that routine.

Enhance the speed of the -U option by using an internal case statement
instead of echoing the variable to an external grep for every file.

Fix indentation on one line.
2009-05-16 22:22:31 +00:00
Doug Barton
7d7a10d261 Add -L to the mtree invocation to chase symbolic links that are present
in "Service jails."

Submitted by:	Jeremie Le Hen <jeremie@le-hen.org>
2009-05-16 21:32:09 +00:00