Index: head/en_US.ISO8859-1/books/porters-handbook/makefiles/chapter.xml
===================================================================
--- head/en_US.ISO8859-1/books/porters-handbook/makefiles/chapter.xml
+++ head/en_US.ISO8859-1/books/porters-handbook/makefiles/chapter.xml
@@ -4692,6 +4692,16 @@
WRKSRC= ${WRKDIR}/${PORTNAME}
+
+ WRKSRC_SUBDIR
+
+ If the source files needed for the port are in a
+ subdirectory of the extracted distribution file, set
+ WRKSRC_SUBDIR to that directory.
+
+ WRKSRC_SUBDIR= src
+
+
NO_WRKSUBDIR
@@ -4700,6 +4710,14 @@
indicate that.
NO_WRKSUBDIR= yes
+
+
+ Because WRKDIR is the only directory
+ that is supposed to be writable during the build, and is
+ used to store many files recording the status of the build,
+ it is always better to force extraction into a subdirectory
+ anyway.
+
Index: head/en_US.ISO8859-1/books/porters-handbook/special/chapter.xml
===================================================================
--- head/en_US.ISO8859-1/books/porters-handbook/special/chapter.xml
+++ head/en_US.ISO8859-1/books/porters-handbook/special/chapter.xml
@@ -31,21 +31,16 @@
in &os;, DESTDIR has a different meaning
(see ).
- When a port still requires system-wide privileges in order
- to run the stage and
- package targets, this line must be
- added to the
- Makefile:
-
- NEED_ROOT= yes
-
- The vast majority of ports do not really
- need to be root. It can mostly be avoided by
- using USES=uidfix,
- and from time to time by slightly patching the port's
- Makefiles.
+ No port really needs to be root. It
+ can mostly be avoided by using USES=uidfix.
+ If the port still runs commands like &man.chown.8;,
+ &man.chgrp.1;, or forces owner or group with &man.install.1;
+ then use USES=fakeroot
+ to fake those calls. Sligh patching of the port's
+ Makefiles will be needed.Meta ports, or ports that do not install files themselves
@@ -57,6 +52,13 @@
NO_MTREE= yes
+
+ Metaports should use USES=metaport.
+ It sets up defaults for ports that do not fetch, build, or
+ install anything.
+
+
Staging is enabled by prepending
STAGEDIR to paths used in the
pre-install,
Index: head/en_US.ISO8859-1/books/porters-handbook/uses/chapter.xml
===================================================================
--- head/en_US.ISO8859-1/books/porters-handbook/uses/chapter.xml
+++ head/en_US.ISO8859-1/books/porters-handbook/uses/chapter.xml
@@ -407,7 +407,9 @@
(none)Changes some default behaviour of build systems to
- allow installing as a user.
+ allow installing as a user. See for
+ more information on fakeroot.