Build release documentation if MAKE_RELNOTES is defined.
RELNOTESTAG specifies a CVS tag to use for checking out release documeentation. Complain if CVSROOT or DOCROOTDIR aren't defined. Move all the original doc stuff into a doc/ subdirectory in the FTP and ISO staging areas, to avoid further cluttering of the top-level directories.
This commit is contained in:
parent
bee1a5c2ba
commit
06d32e698d
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=29050
1 changed files with 45 additions and 3 deletions
|
@ -40,6 +40,19 @@ TOUCH?= /usr/bin/touch
|
|||
# from the document release. Creation of ISO images
|
||||
# requires a mkisofs binary in the invoking user's path.
|
||||
#
|
||||
# MAKE_RELNOTES If defined, enables generation of release documentation.
|
||||
#
|
||||
# RELNOTESTAG CVS tag to use for checkouts of the release documentation.
|
||||
# If not defined, treated as a checkout from HEAD.
|
||||
#
|
||||
.if !defined(DOCROOTDIR)
|
||||
.error "You must define DOCROOTDIR!"
|
||||
.endif
|
||||
|
||||
.if !defined(CVSROOT)
|
||||
.error "You must define CVSROOT!"
|
||||
.endif
|
||||
|
||||
DATE!= date +%Y%m%d
|
||||
BUILDNAME?= ${DATE}
|
||||
|
||||
|
@ -65,6 +78,7 @@ INSTALL_COMPRESSED?= zip gz
|
|||
MISCOPTIONS+= NO_JPMAN=yes RLE=yes IGNORE_COMPAT_SYMLINK=YES
|
||||
|
||||
DOC_PREFIX= ${DOCROOTDIR}/doc
|
||||
RELNOTES_PREFIX=${DOCROOTDIR}/src/release/doc
|
||||
DOCSTAGEDIR= ${DOCROOTDIR}/R
|
||||
DOCBUILDFILE= ${DOCSTAGEDIR}/build.txt
|
||||
DOCKEYFILE= ${DOCSTAGEDIR}/pgpkeyring.txt
|
||||
|
@ -94,12 +108,27 @@ release.1:
|
|||
.else
|
||||
cd ${DOCROOTDIR}; \
|
||||
cvs -R -d ${CVSROOT} co -P doc
|
||||
.endif
|
||||
.if defined(MAKE_RELNOTES)
|
||||
.if defined(RELNOTESTAG)
|
||||
cd ${DOCROOTDIR}; \
|
||||
cvs -R -d ${CVSROOT} co -r${RELNOTESTAG} -P src/release/doc; \
|
||||
cvs -R -d ${CVSROOT} co -r${RELNOTESTAG} -P src/share/man/man4
|
||||
.else
|
||||
cd ${DOCROOTDIR}; \
|
||||
cvs -R -d ${CVSROOT} co -P src/release/doc; \
|
||||
cvs -R -d ${CVSROOT} co -P src/share/man/man4
|
||||
.endif
|
||||
.endif
|
||||
${MKDIR} ${DOCSTAGEDIR}
|
||||
.endif
|
||||
# Build documents.
|
||||
cd ${DOC_PREFIX} && \
|
||||
${MAKE} all FORMATS="${FORMATS}" INSTALL_COMPRESSED="${INSTALL_COMPRESSED}" ${MISCOPTIONS}
|
||||
${MAKE} FORMATS="${FORMATS}" INSTALL_COMPRESSED="${INSTALL_COMPRESSED}" ${MISCOPTIONS} all
|
||||
.if defined(MAKE_RELNOTES)
|
||||
cd ${RELNOTES_PREFIX} && \
|
||||
${MAKE} FORMATS="${FORMATS}" INSTALL_COMPRESSED="${INSTALL_COMPRESSED}" ${MISCOPTIONS} all
|
||||
.endif
|
||||
# Build PGP key ring
|
||||
${RM} -f ${DOCKEYFILE}
|
||||
cd ${DOC_PREFIX}/en_US.ISO8859-1/books/handbook && ${MAKE} pgpkeyring > ${DOCKEYFILE}
|
||||
|
@ -116,8 +145,14 @@ release.1:
|
|||
ftp.1:
|
||||
${RM} -rf ${DOCFTPSTAGEDIR}
|
||||
${MKDIR} ${DOCFTPSTAGEDIR}
|
||||
${MKDIR} -p ${DOCFTPSTAGEDIR}/doc
|
||||
cd ${DOC_PREFIX} && \
|
||||
${MAKE} all install DOCDIR=${DOCFTPSTAGEDIR} FORMATS="${FORMATS}" INSTALL_COMPRESSED="${INSTALL_COMPRESSED}" ${MISCOPTIONS}
|
||||
${MAKE} install DOCDIR=${DOCFTPSTAGEDIR}/doc FORMATS="${FORMATS}" INSTALL_COMPRESSED="${INSTALL_COMPRESSED}" ${MISCOPTIONS}
|
||||
.if defined(MAKE_RELNOTES)
|
||||
${MKDIR} -p ${DOCFTPSTAGEDIR}/src/release/doc
|
||||
cd ${RELNOTES_PREFIX} && \
|
||||
${MAKE} install DOCDIR=${DOCFTPSTAGEDIR}/src/release/doc FORMATS="${FORMATS}" INSTALL_COMPRESSED="${INSTALL_COMPRESSED}" ${MISCOPTIONS}
|
||||
.endif
|
||||
# Copy newly generated files to staging area
|
||||
${CP} ${DOCBUILDFILE} ${DOCKEYFILE} ${DOCFTPSTAGEDIR}
|
||||
# Copy any files in our texts/ directory to staging area
|
||||
|
@ -128,8 +163,14 @@ ftp.1:
|
|||
cdrom.1:
|
||||
${RM} -rf ${DOCCDROMSTAGEDIR}
|
||||
${MKDIR} ${DOCCDROMSTAGEDIR}
|
||||
${MKDIR} -p ${DOCCDROMSTAGEDIR}/doc
|
||||
cd ${DOC_PREFIX} && \
|
||||
${MAKE} all install DOCDIR=${DOCCDROMSTAGEDIR} FORMATS="${FORMATS}" INSTALL_COMPRESSED="" ${MISCOPTIONS}
|
||||
${MAKE} install DOCDIR=${DOCCDROMSTAGEDIR}/doc FORMATS="${FORMATS}" INSTALL_COMPRESSED="" ${MISCOPTIONS}
|
||||
.if defined(MAKE_RELNOTES)
|
||||
${MKDIR} -p ${DOCCDROMSTAGEDIR}/src/release/doc
|
||||
cd ${RELNOTES_PREFIX} && \
|
||||
${MAKE} install DOCDIR=${DOCCDROMSTAGEDIR}/src/release/doc FORMATS="${FORMATS}" INSTALL_COMPRESSED="" ${MISCOPTIONS}
|
||||
.endif
|
||||
# Copy newly generated files to staging area
|
||||
${CP} ${DOCBUILDFILE} ${DOCKEYFILE} ${DOCCDROMSTAGEDIR}
|
||||
# Copy any files in our texts/ directory to the staging area.
|
||||
|
@ -140,4 +181,5 @@ cdrom.1:
|
|||
cd ${DOCROOTDIR} && ${MKISOFS} -r -J -V FreeBSD_Docs -publisher "The FreeBSD Project. http://www.freebsd.org/" -o ${DOCSTAGEDIR}/doc.iso ${DOCCDROMSTAGEDIR}
|
||||
.endif
|
||||
|
||||
.include "../share/mk/doc.common.mk"
|
||||
.include "../share/mk/doc.project.mk"
|
||||
|
|
Loading…
Reference in a new issue