Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Oct 2004 22:18:30 +0300
From:      Ruslan Ermilov <ru@freebsd.org>
To:        freebsd-current <freebsd-current@freebsd.org>
Subject:   Re: NOPROFILE, make release, libcom_err [was: Re: make release: creating a trimmed down release?]
Message-ID:  <20041020191829.GB2195@ip.net.ua>
In-Reply-To: <20041020153135.GA1365@isis.wad.cz>
References:  <20041018225532.GE4968@isis.wad.cz> <20041020153135.GA1365@isis.wad.cz>

index | next in thread | previous in thread | raw e-mail

[-- Attachment #1 --]
On Wed, Oct 20, 2004 at 05:31:35PM +0200, Roman Neuhauser wrote:
> # neuhauser@chello.cz / 2004-10-19 00:55:32 +0200:
> > I'd like to create a trimmed down release, but it looks like
> > make release -DNO_CXX ... is not the way to go. What's the official
> > way of doing this kind of stuff? Specifically, I've attempted the build
> > with
> 
>     (...)
> 
>     It now appears I managed to get past self-inflicted problems, and
>     seem to be facing a genuine bug:
> 
>     ===> lib/libcom_err
>     cd /usr/src/lib/libcom_err;  make install -DNO_SUBDIR DESTDIR=/R/stage/trees/base SHARED=>
>     install -C -o root -g wheel -m 444   libcom_err.a /R/stage/trees/base/usr/lib
>     install -C -o root -g wheel -m 444   libcom_err_p.a /R/stage/trees/base/usr/lib
>     install: libcom_err_p.a: No such file or directory
> 
>     -DNOPROFILE is among WORLD_FLAGS like this:
> 
>     make release \
>         BUILDNAME=$buildname \
>         CHROOTDIR=$chrootdir \
>         CVSROOT=$cvsroot \
>         EXTSRCDIR=$extsrcdir \
>         RELEASETAG=$releasetag \
>         -DRELEASENOUPDATE \
>         -DNOPORTS \
>         -DNODOC \
>         KERNEL_FLAGS=-j8 \
>         WORLD_FLAGS="-j8 KERNCONF?=GENERIC NO_CXX=yes NO_BLUETOOTH=yes NO_DYNAMICROOT=yes NO_FORTRAN=yes NO_I4B=yes NO_IPFILTER=yes NO_KERBEROS=yes NO_OBJC=yes NO_OPENSSH=yes NO_OPENSSL=yes NO_SENDMAIL=yes NO_TOOLCHAIN=yes NO_BIND=yes NOATM=yes NOGAMES=yes NOINET6=yes NOPROFILE=yes"
> 
>     shouldn't the NOPROFILE variable be included on the "make install"
>     line? or should I forget building a release without profiled libs?
> 
This is because "distributeworld" in release.2 is run without WORLD_FLAGS.
Please try this patch:

%%%
Index: Makefile
===================================================================
RCS file: /home/ncvs/src/release/Makefile,v
retrieving revision 1.865
diff -u -r1.865 Makefile
--- Makefile	30 Sep 2004 22:59:47 -0000	1.865
+++ Makefile	20 Oct 2004 19:15:49 -0000
@@ -586,7 +586,8 @@
 # Install the system into the various distributions.
 release.2:
 	cd ${.CURDIR}/../etc && make distrib-dirs DESTDIR=${RD}/trees/base
-	cd ${.CURDIR}/.. && ${CROSSMAKE} distributeworld DISTDIR=${RD}/trees
+	cd ${.CURDIR}/.. && ${CROSSMAKE} ${WORLD_FLAGS} \
+	    distributeworld DISTDIR=${RD}/trees
 	touch ${.TARGET}
 
 # Make and install the generic kernel(s).
%%%

To save time, just apply this patch to ${CHROOTDIR}/usr/src/release/Makefile,
and then run "make rerelease", leaving all other options as is, including
the RELEASENOUPDATE option.  By the way, FOO=yes is usually spelled as
-DFOO in src/ world.


Cheers,
-- 
Ruslan Ermilov
ru@FreeBSD.org
FreeBSD committer

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (FreeBSD)

iD8DBQFBdroFqRfpzJluFF4RAvEnAJ9UGSn4/30+OFuzjsrxjLMlcc38LwCghJ5i
Of2XVjO1r0Ekxqi9/3AXAD8=
=KM6y
-----END PGP SIGNATURE-----
help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041020191829.GB2195>