Commit Graph

136 Commits

Author SHA1 Message Date
deraadt f2a208ef80 minor cranking of libraries exposes a problem, details too long to explain.
Run ldconfig -R after installing base libraries, and once again after
installing gnu libraries.
ok kettenis
2020-04-05 20:14:14 +00:00
espie 3367dcf595 a few depend:-related thingies that were still in.
okay millert@, tb@
2019-12-21 21:39:59 +00:00
espie 6340e171d8 bye bye depends
okay tb@ deraadt@
2017-07-05 10:22:32 +00:00
espie 60fd9b1090 mark newish phony targets as phony.
okay tb@
2017-04-14 21:37:15 +00:00
rpe 92d422c276 Ensure the build user can write to the GLOBAL_AUTOCONF_CACHE file by
creating or truncating it with the proper ownership and permissions.

OK tb@
2017-01-29 17:06:56 +00:00
tb 46df90c2f4 Enable builds with a dedicated user that cannot elevate privileges or write
to /usr/src or /usr/xenocara.

Change /usr/{,x}obj to owner build:wobj with mode 770 and install the
systemwide makefiles before starting a build.  The root of the noperm fs
containing DESTDIR should also be owned by build:wobj.

Developers will need to add their users to group wobj to be able to write
to /usr/{,x}obj/.

"push forward" deraadt; testing, input & ok rpe
2016-11-19 14:20:58 +00:00
tb 57fb2d252f Swap 'make cleandir' and 'make includes' for real.
Should have been part of commitid uHRFWpwUBjIz0UuR.

Original message:

Move libcrypto, librpcsvc and gnu/usr.bin/cc/include from RDIRS to PRDIRS,
and add prereq targets, so some header files are generated by BUILDUSER
during 'make prereq' instead of by root during 'make includes'.

Switch the order of 'make cleandir' and 'make includes' during 'make build'
so we don't generate many files twice.

Except for some machine@ symlinks from ${MACHINE}/stand, /usr/obj is now
clean from files generated by root during 'make build'. Those will be
cleaned up in a second step.

help, testing & ok deraadt, input from natano, further testing rpe
2016-10-18 02:47:07 +00:00
natano 0afaca0c6d Print the root check error message to stderr. While there add the name
of the target to the message to be more descriptive.

ok deraadt tb
2016-10-06 18:56:17 +00:00
tb 192f59d447 Simplify the 'make includes' step in 'make build': move the privdrop
bit up into 'make includes', so the latter benefits from that idiom
as well. Sprinkle a few 'exec' while there.

ok natano
2016-10-06 16:22:43 +00:00
natano 2a3ca3e957 De-escalate to an unprivileged users during 'make build' and 'make release'.
- If you start make build as root, everything will be run as root.
  Nothing new here. New is, that you can set BUILDUSER=somebody and the
  unprived parts will be run as somebody.
- If you start make build with sudo, the unprived parts will be run as
  the real user (meaning YOU). You can still set BUILDUSER=somebody and
  the uprived parts will run as somebody.
- If you start make build as a normal user it will error out. "I'm sorry
  Dave."

Note that DESTDIR must be on partition with the noperm flag set for make
release to work correctly as an unprivileged user.

idea and ok deraadt
input and ok tb ratchov millert
rpe, halex and probably others where part of the conversation to make
this happen, thanks!
2016-10-05 18:00:41 +00:00
deraadt f10adcc6a4 stop supporting SUDO builds. Something better is coming, so let's
align everyone who is using SUDO builds towards the new strategy.
ok natano
2016-10-04 16:54:31 +00:00
deraadt 84b1e8ae48 must make obj in etc as well; the etc.*/Makefile stubs depend upon it. 2015-08-23 14:22:56 +00:00
deraadt 91c7b537e1 missing " spotted by Kyle Milz 2015-06-02 06:10:14 +00:00
rpe a1cc089f21 Create etc set during 'make build' and embed it in base set to make
it available during a regular install or upgrade so that it doesn't
need to be independently fetched.

Idea, directions and OK deraadt@
Feedback and Ok halex@ and aja@
2014-08-26 20:19:25 +00:00
espie 79df76e379 do locatedb as part of the build process
"works for me" deraadt@
2014-07-09 19:23:28 +00:00
reyk 84fc8f7ce6 Remove KERBEROS5 from the Makefiles (except ssh for now, where it is
already manually disabled).

ok deraadt@
2014-04-22 10:21:56 +00:00
todd 2b4edc40ec enter keberosV/doc to resurrect heimdal.info for real this time
ok deraadt@
2013-07-23 22:37:02 +00:00
robert b70a26d9ad switch to new kerberosV directory layout 2013-06-17 19:16:02 +00:00
espie 9f592787bf remove ancient cruft.
okay deraadt@
2012-08-29 22:10:32 +00:00
pirofti 7797d2abc7 Document proper cross-tools command to run, specially when working on a
new port.

Okay miod@
2011-09-17 16:59:53 +00:00
guenther 7feaea157e Head off attempts to do 'make build' with DESTDIR set, as it doesn't work
ok sthen@, deraadt@
2011-04-24 22:04:43 +00:00
espie fcf0571868 install mtree always
okay deraadt@
2010-03-23 21:31:02 +00:00
deraadt de206b4f66 do not enter lkm 2005-12-02 01:17:20 +00:00
jmc 37a1d5d822 use shell-neutral language (in a comment);
from ray lai;
ok krw@
2005-09-16 12:28:34 +00:00
espie a222f1590e move cross-stuff into its own file.
okay mickey@, niklas@
2005-01-09 20:36:20 +00:00
espie 42aa7dab60 Synch with bsd.own.mk: USE_GCC3 is always set now, so we must set it to no
explicitly.
2005-01-09 19:35:26 +00:00
espie 3de481534f i386 is gcc3 for cross too. 2005-01-09 00:14:32 +00:00
grange 641d118ebd We don't need cross-{nm,size} anymore, our host tools are good enough.
mickey ok a long time ago.
2004-12-25 16:17:33 +00:00
mickey 6ba694771f need to pass MAKEOBJDIR to prereq and includes 2004-11-30 15:46:01 +00:00
mickey 0c1a7e21b5 match cross-binutils-new selection w/ bsd.own.mk and add hppa64 where needed 2004-10-26 05:01:02 +00:00
grange 5088dc13e9 Move the cross glue from the root makefile to the toolchain's,
allowing bulding cross-tools with new binutils and gcc3.

ok drahn@ brad@ espie@
2004-10-21 20:47:29 +00:00
grange 11d7f4bc3b cross-nm doesn't need TARGET_MACHINE_ARCH anymore.
ok mickey@
2004-10-16 15:28:14 +00:00
pefo e64abf1daf fix/add sgi 2004-08-06 22:30:54 +00:00
drahn 1a6eb946e1 Remove OpenBSD/pegaos, this has been announced before but delayed until
the tree was stable. No point in code supporting a company which screws
its employees being in the OpenBSD tree.
2004-05-03 15:18:18 +00:00
miod d0b189c628 Add luna88k related directories and information to the build infrastructure.
ok deraadt@, millert@, krw@ - mdoc ok jmc@
2004-04-21 15:58:21 +00:00
mickey 3f20d135be repair cross-tools 2004-03-31 19:13:04 +00:00
deraadt 77fd8a68cd change amd64's MACHINE_ARCH from x86_64 to amd64. There are many many
reasons for this, quite a few of them technical, and not all of them
in response to Intel's broken ia32e crud.  The gcc toolchain stays at
x86_64 for now.
2004-02-27 17:36:11 +00:00
brad 6ff18210a4 - remove sun3
- use "new" ld/gas/etc. for pegasos with cross-compile
- reorder arch/machine names in alpha order

ok drahn@
2004-02-01 06:16:50 +00:00
mickey f92b546106 amd64 hook ups 2004-01-28 02:24:28 +00:00
brad 592abc31a3 add pegasos as a powerpc system for cross-compile target
ok drahn@
2004-01-14 23:26:24 +00:00
mickey 1e632e67a3 abcomodate cross for the new nm+size 2004-01-05 01:33:40 +00:00
matthieu 21cdfd0542 Don't go into kerberosV/lib explicitely for now. Nothing to do there.
Ok deraadt@, miod@.
2003-12-14 10:02:57 +00:00
mickey dfaba83c4a need to escape the quotes in cross-{lib,bin} 2003-10-05 00:18:02 +00:00
mickey 8492e38257 need to eval the CROSSENV 2003-10-05 00:12:52 +00:00
millert 7c8333e236 Don't build libperl separately in the libs pass, just build it when
we build perl itself.  We need perl to run Configure *after* the
other libraries are installed, since Configure looks at what symbols
exist in libc and the other libs.  If anfd when other things in the tree
link against libperl we may need to revisit this issue.
2003-05-17 20:58:52 +00:00
mho 8383aa7aaf Remove krb4 support. 2003-05-14 08:01:02 +00:00
drahn faf0164a7a Add i386 to list of archs which use binutils. 2003-04-17 03:48:56 +00:00
mickey e53e939cb9 enquote flags and opts in cross-env; reported by david krause 2003-01-05 22:52:19 +00:00
miod 21eafbae48 Prevent the a.out cross-ld from building rtld too early in the build. 2002-09-17 16:19:49 +00:00
wcobb 3e0db07eb5 - add cross-distrib target to cross-compile the world (except gnu)
- add cross-obj, cross-depend, cross-clean and cross-cleandir targets
- add dependencies between the cross-tools targets
- simplify cross-binutils
- build a cross c++ compiler
- use distribution-etc-root-var in etc for preparing ${CROSSDIR}

ok art@, miod@
2002-08-16 02:04:58 +00:00