From 69c488cdc6ed5346e27ba559d54e9b2879de04d8 Mon Sep 17 00:00:00 2001 From: Ruslan Ermilov Date: Thu, 16 Jun 2011 12:28:37 +0000 Subject: [PATCH] It's a bit odd, but "make update" in src/ can also update the ports/, doc/, and now www/ trees, but only using the "cvsup" transport. When "make update" is run using a tree's makefile, it can also use "cvs" (except for www/) and "svn" (only src/). Clean up documentation and code regarding "make update": - Increase oddness by adding support for WWWSUPFILE and NO_WWWUPDATE to Makefile.inc1 (analogous to PORTSSUPFILE/NO_PORTSUPDATE and DOCSUPFILE/NO_DOCUPDATE; WWWSUPFILE already supported by www/Makefile). - Document all trees that support CVS_UPDATE. - Document all trees that support SUP_UPDATE. - Document SVN_UPDATE. - Document NO_WWWUPDATE. - make.conf(5) mistakenly said that *SUPFILE* had defaults. - Add an example entry for WWWSUPFILE. --- Makefile | 2 +- Makefile.inc1 | 6 ++++- share/examples/etc/make.conf | 1 + share/man/man5/make.conf.5 | 49 ++++++++++++++++++++++++------------ share/man/man7/build.7 | 6 ++++- 5 files changed, 45 insertions(+), 19 deletions(-) diff --git a/Makefile b/Makefile index e28569a0e66b..61e678bd9751 100644 --- a/Makefile +++ b/Makefile @@ -19,7 +19,7 @@ # kernel - buildkernel + installkernel. # kernel-toolchain - Builds the subset of world necessary to build a kernel # doxygen - Build API documentation of the kernel, needs doxygen. -# update - Convenient way to update your source tree (cvs). +# update - Convenient way to update your source tree(s). # check-old - List obsolete directories/files/libraries. # check-old-dirs - List obsolete directories. # check-old-files - List obsolete files. diff --git a/Makefile.inc1 b/Makefile.inc1 index 9ebc1e34a73b..7fdce3628b9b 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -12,6 +12,7 @@ # -DNO_KERNELOBJ do not run ${MAKE} obj in ${MAKE} buildkernel # -DNO_PORTSUPDATE do not update ports in ${MAKE} update # -DNO_DOCUPDATE do not update doc in ${MAKE} update +# -DNO_WWWUPDATE do not update www in ${MAKE} update # -DNO_CTF do not run the DTrace CTF conversion tools on built objects # LOCAL_DIRS="list of dirs" to add additional dirs to the SUBDIR list # TARGET="machine" to crossbuild world for a different machine type @@ -904,7 +905,7 @@ doxygen: # # update # -# Update the source tree, by running cvsup and/or running cvs to update to the +# Update the source tree(s), by running cvsup/cvs/svn to update to the # latest copy. # update: @@ -927,6 +928,9 @@ update: .if defined(DOCSUPFILE) && !defined(NO_DOCUPDATE) @${SUP} ${SUPFLAGS} ${DOCSUPFILE} .endif +.if defined(WWWSUPFILE) && !defined(NO_WWWUPDATE) + @${SUP} ${SUPFLAGS} ${WWWSUPFILE} +.endif .endif .if defined(CVS_UPDATE) @cd ${.CURDIR} ; \ diff --git a/share/examples/etc/make.conf b/share/examples/etc/make.conf index 516a0e20edf3..d3cdf3e7d279 100644 --- a/share/examples/etc/make.conf +++ b/share/examples/etc/make.conf @@ -188,6 +188,7 @@ #SUPFILE= /usr/share/examples/cvsup/standard-supfile #PORTSSUPFILE= /usr/share/examples/cvsup/ports-supfile #DOCSUPFILE= /usr/share/examples/cvsup/doc-supfile +#WWWSUPFILE= /usr/share/examples/cvsup/www-supfile # # top(1) uses a hash table for the user names. The size of this hash # can be tuned to match the number of local users. The table size should diff --git a/share/man/man5/make.conf.5 b/share/man/man5/make.conf.5 index 0f9e70d3b848..c424a1ea1ad3 100644 --- a/share/man/man5/make.conf.5 +++ b/share/man/man5/make.conf.5 @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 15, 2009 +.Dd June 16, 2011 .Dt MAKE.CONF 5 .Os .Sh NAME @@ -181,7 +181,11 @@ options. .Pq Vt bool Set this to use .Xr cvs 1 -to update your ports with +to update your +.Pa src , ports +and +.Pa doc +trees with .Dq Li "make update" . .It Va CXXFLAGS .Pq Vt str @@ -202,8 +206,8 @@ The documentation .Ar supfile to use when doing a .Dq Li "make update" . -This defaults to -.Pa /usr/share/examples/cvsup/doc\-supfile . +For example, +.Pa /usr/share/examples/cvsup/doc-supfile . .It Va INSTALL .Pq Vt str the default install command. @@ -259,14 +263,18 @@ Set this to not update the doc tree during .Pq Vt bool Set this to not update the ports tree during .Dq Li "make update" . +.It Va NO_WWWUPDATE +.Pq Vt bool +Set this to not update the www tree during +.Dq Li "make update" . .It Va PORTSSUPFILE .Pq Vt str The ports .Ar supfile to use when doing a .Dq Li "make update" . -This defaults to -.Pa /usr/share/examples/cvsup/ports\-supfile . +For example, +.Pa /usr/share/examples/cvsup/ports-supfile . .It Va SUP .Pq Vt str The location of the @@ -281,24 +289,20 @@ The first .Ar supfile to use when doing a .Dq Li "make update" . -This defaults to -.Pa /usr/share/examples/cvsup/standard\-supfile . +For example, +.Pa /usr/share/examples/cvsup/standard-supfile . .It Va SUPFILE1 .Pq Vt str The second .Ar supfile to use when doing a .Dq Li "make update" . -This defaults to -.Pa /usr/share/examples/cvsup/secure\-supfile . .It Va SUPFILE2 .Pq Vt str The third .Ar supfile to use when doing a .Dq Li "make update" . -This defaults to -.Pa /usr/share/examples/cvsup/secure\-supfile . .It Va SUPFLAGS .Pq Vt str The flag for the @@ -315,16 +319,28 @@ The hostname of the sup server to use when doing .Pq Vt bool Set this to use .Xr cvsup 1 -to update your ports with +to update your +.Pa src , ports , doc +and +.Pa www +trees with +.Dq Li "make update" . +.It Va SVN_UPDATE +.Pq Vt bool +Set this to use +.Xr svn 1 +to update your +.Pa src +tree with .Dq Li "make update" . .It Va WWWSUPFILE .Pq Vt str The www .Ar supfile to use when doing a -.Dq Li "make update" -This defaults to -.Pa /usr/share/examples/cvsup/www\-supfile . +.Dq Li "make update" . +For example, +.Pa /usr/share/examples/cvsup/www-supfile . .El .Ss "BUILDING THE KERNEL" The following list provides a name and short description for variables @@ -730,6 +746,7 @@ filter, or both. .Bl -tag -width ".Pa /usr/share/examples/etc/make.conf" -compact .It Pa /etc/make.conf .It Pa /usr/doc/Makefile +.It Pa /usr/ports/Makefile .It Pa /usr/share/examples/etc/make.conf .It Pa /usr/share/mk/sys.mk .It Pa /usr/src/Makefile diff --git a/share/man/man7/build.7 b/share/man/man7/build.7 index 22305b7c0e77..b43a961d6777 100644 --- a/share/man/man7/build.7 +++ b/share/man/man7/build.7 @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd March 18, 2011 +.Dd June 16, 2011 .Dt BUILD 7 .Os .Sh NAME @@ -517,6 +517,10 @@ target. If set, the update process does not update the Ports tree as part of the .Dq make update target. +.It Va NO_WWWUPDATE +If set, the update process does not update the www tree as part of the +.Dq make update +target. .El .Pp Builds under directory