Date: Fri, 8 Dec 2000 18:19:08 +0200 From: Ruslan Ermilov <ru@FreeBSD.org> To: marcel@FreeBSD.org, Bruce Evans <bde@FreeBSD.org> Cc: current@FreeBSD.org Subject: Bootstrapping issues with groff(1) Message-ID: <20001208181908.A12716@sunbay.com>
next in thread | raw e-mail | index | archive | help
--EVF5PPMfhYS0aIcm
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Hi!
I have recently upgraded groff(1) to the latest released version.
Groff(1) provides two kind of data files: device files (ones that
installed into /usr/share/groff_font), and macro package files
(ones that installed into /usr/share/tmac). New groff(1) versions
are likely to supply new files of both types.
The typical world build uses groff(1) to build documentation
(which is later installed into /usr/share/doc).
The attached patches (p4 and p5) try to solve this bootstrapping
problem with groff(1). I have lightly tested this on my -stable
box, and would appreciate a feedback on them.
The p5 patch is for -current, and p4 is for -stable.
<PS>
There is still at least one issue not resolved with this patch.
One can specify MANBUILDCAT=YES (does anyone have this?) to ask
the system to build preformatted manual pages (see bsd.man.mk
for details). This will use mdoc(7) and man(7) macro packages
from /usr/share/tmac while they should be taken from
${WORLDTMP}/usr/share/tmac.
</PS>
Cheers,
--
Ruslan Ermilov Oracle Developer/DBA,
ru@sunbay.com Sunbay Software AG,
ru@FreeBSD.org FreeBSD committer,
+380.652.512.251 Simferopol, Ukraine
http://www.FreeBSD.org The Power To Serve
http://www.oracle.com Enabling The Information Age
--EVF5PPMfhYS0aIcm
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=p5
Index: Makefile.inc1
===================================================================
RCS file: /home/ncvs/src/Makefile.inc1,v
retrieving revision 1.179
diff -u -r1.179 Makefile.inc1
--- Makefile.inc1 2000/12/03 20:29:31 1.179
+++ Makefile.inc1 2000/12/08 16:02:05
@@ -168,6 +168,7 @@
COMPILER_PATH=${WORLDTMP}/usr/libexec:${WORLDTMP}/usr/bin \
LIBRARY_PATH=${WORLDTMP}${SHLIBDIR}:${WORLDTMP}/usr/lib \
OBJFORMAT_PATH=${WORLDTMP}/usr/libexec \
+ TRFLAGS="-F${WORLDTMP}/usr/share/groff_font -M${WORLDTMP}/usr/share/tmac" \
PERL5LIB=${WORLDTMP}/usr/libdata/perl/5.6.0
# bootstrap-tool stage
@@ -200,16 +201,6 @@
PATH=${STRICTTMPPATH}:${INSTALLTMP}
IMAKE= ${IMAKEENV} ${MAKE} -f Makefile.inc1
-USRDIRS= usr/bin usr/lib/compat/aout usr/games usr/libdata/ldscripts \
- usr/libexec/${OBJFORMAT} usr/sbin usr/share/misc
-
-.if ${MACHINE_ARCH} == "i386" && ${MACHINE} == "pc98"
-USRDIRS+= usr/libexec/aout
-.endif
-
-INCDIRS= arpa g++/std objc protocols readline rpc rpcsvc openssl \
- security ss
-
#
# buildworld
#
@@ -224,7 +215,7 @@
.if !defined(NOCLEAN)
rm -rf ${WORLDTMP}
.else
- for dir in bin games include lib sbin; do \
+ for dir in bin games include lib sbin share; do \
rm -rf ${WORLDTMP}/usr/$$dir; \
done
rm -f ${WORLDTMP}/sys
@@ -232,12 +223,7 @@
# This is beyond dirty...
rm -f ${OBJTREE}${.CURDIR}/gnu/usr.bin/cc/cc_tools/.depend
.endif
-.for _dir in ${USRDIRS}
- mkdir -p ${WORLDTMP}/${_dir}
-.endfor
-.for _dir in ${INCDIRS}
- mkdir -p ${WORLDTMP}/usr/include/${_dir}
-.endfor
+ cd ${.CURDIR}; ${BMAKE} hierarchy
ln -sf ${.CURDIR}/sys ${WORLDTMP}/sys
@echo
@echo "--------------------------------------------------------------"
@@ -528,7 +514,7 @@
bootstrap-tools:
.for _tool in ${_strfile} usr.bin/yacc usr.bin/colldef usr.sbin/config \
- gnu/usr.bin/gperf gnu/usr.bin/texinfo
+ gnu/usr.bin/gperf gnu/usr.bin/groff gnu/usr.bin/texinfo
cd ${.CURDIR}/${_tool}; \
${MAKE} obj; \
${MAKE} depend; \
--EVF5PPMfhYS0aIcm
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=p4
Index: Makefile.inc1
===================================================================
RCS file: /home/ncvs/src/Makefile.inc1,v
retrieving revision 1.141.2.18
diff -u -r1.141.2.18 Makefile.inc1
--- Makefile.inc1 2000/12/01 21:58:09 1.141.2.18
+++ Makefile.inc1 2000/12/08 16:02:16
@@ -168,6 +168,7 @@
COMPILER_PATH=${WORLDTMP}/usr/libexec:${WORLDTMP}/usr/bin \
LIBRARY_PATH=${WORLDTMP}${SHLIBDIR}:${WORLDTMP}/usr/lib \
OBJFORMAT_PATH=${WORLDTMP}/usr/libexec \
+ TRFLAGS="-F${WORLDTMP}/usr/share/groff_font -M${WORLDTMP}/usr/share/tmac" \
PERL5LIB=${WORLDTMP}/usr/libdata/perl/5.00503
# bootstrap-tool stage
@@ -198,16 +199,6 @@
PATH=${STRICTTMPPATH}:${INSTALLTMP}
IMAKE= ${IMAKEENV} ${MAKE} -f Makefile.inc1
-USRDIRS= usr/bin usr/lib/compat/aout usr/games usr/libdata/ldscripts \
- usr/libexec/${OBJFORMAT} usr/sbin usr/share/misc
-
-.if ${MACHINE_ARCH} == "i386" && ${MACHINE} == "pc98"
-USRDIRS+= usr/libexec/aout
-.endif
-
-INCDIRS= arpa g++/std objc protocols readline rpc rpcsvc openssl \
- security ss
-
#
# buildworld
#
@@ -222,7 +213,7 @@
.if !defined(NOCLEAN)
rm -rf ${WORLDTMP}
.else
- for dir in bin games include lib sbin; do \
+ for dir in bin games include lib sbin share; do \
rm -rf ${WORLDTMP}/usr/$$dir; \
done
rm -f ${WORLDTMP}/sys
@@ -230,12 +221,7 @@
# This is beyond dirty...
rm -f ${OBJTREE}${.CURDIR}/gnu/usr.bin/cc/cc_tools/.depend
.endif
-.for _dir in ${USRDIRS}
- mkdir -p ${WORLDTMP}/${_dir}
-.endfor
-.for _dir in ${INCDIRS}
- mkdir -p ${WORLDTMP}/usr/include/${_dir}
-.endfor
+ cd ${.CURDIR}; ${BMAKE} hierarchy
ln -sf ${.CURDIR}/sys ${WORLDTMP}/sys
@echo
@echo "--------------------------------------------------------------"
@@ -509,7 +495,7 @@
bootstrap-tools:
.for _tool in ${_strfile} usr.bin/yacc usr.bin/colldef usr.sbin/config \
- gnu/usr.bin/gperf gnu/usr.bin/texinfo
+ gnu/usr.bin/gperf gnu/usr.bin/groff gnu/usr.bin/texinfo
cd ${.CURDIR}/${_tool}; \
${MAKE} obj; \
${MAKE} depend; \
--EVF5PPMfhYS0aIcm--
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20001208181908.A12716>
