From owner-freebsd-current@FreeBSD.ORG Mon Aug 25 19:36:30 2014 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A72F0427; Mon, 25 Aug 2014 19:36:30 +0000 (UTC) Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229]) by mx1.freebsd.org (Postfix) with ESMTP id 63301332D; Mon, 25 Aug 2014 19:36:30 +0000 (UTC) Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001) id 5B1195A9F25; Mon, 25 Aug 2014 19:36:29 +0000 (UTC) Date: Mon, 25 Aug 2014 19:36:29 +0000 From: Brooks Davis To: Craig Rodrigues Subject: Re: "make installworld" commands used to generate manifest for makefs? Message-ID: <20140825193629.GD91673@spindle.one-eyed-alien.net> References: <20140825165522.GC91673@spindle.one-eyed-alien.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="eheScQNz3K90DVRs" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Cc: freebsd-current Current X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Aug 2014 19:36:30 -0000 --eheScQNz3K90DVRs Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Aug 25, 2014 at 10:38:12AM -0700, Craig Rodrigues wrote: > On Mon, Aug 25, 2014 at 9:55 AM, Brooks Davis wrote: > > On Sun, Aug 24, 2014 at 04:10:21PM -0700, Craig Rodrigues wrote: > >> Hi, > >> > >> Is there an easy way to take most of the commands performed > >> during "make installworld" and create a manifest file > >> which is compatible with makefs? > > > > make -DNO_ROOT -DDB_FROM_SRC DESTDIR=3D installworld > > > > should result in a /METALOG file suitable for passing to makefs. > > You may also want the distribution target if you want a populated /etc. > > > > -- Broks >=20 > Hi, >=20 > I got this: >=20 >=20 > # make -DNO_ROOT -DDB_FROM_SRC DESTDIR=3D/tmp installworld you really don't want DESTDIR=3D/tmp, it will install a full OS in that directory along with the METALOG file. > mkdir -p /tmp/install.hEJfJDhM > progs=3D$(for prog in [ awk cap_mkdb cat chflags chmod chown date echo > egrep find grep id install ln lockf make mkdir mtree mv pwd_mkdb rm > sed services_mkdb sh sysctl test true uname wc zic tzsetup ; do if > progpath=3D`which $prog`; then echo $progpath; else echo "Required > tool $prog not found in PATH." >&2; exit 1; fi; done); libs=3D$(ldd > -f "%o %p\n" -f "%o %p\n" $progs 2>/dev/null | sort -u | while read > line; do set -- $line; if [ "$2 $3" !=3D "not found" ]; then echo $2; > else echo "Required library $1 not found." >&2; exit 1; fi; > done); cp $libs $progs /tmp/install.hEJfJDhM > cp -R ${PATH_LOCALE:-"/usr/share/locale"} /tmp/install.hEJfJDhM/locale > echo "#mtree 2.0" > /tmp//METALOG > cd /usr/src; MAKEOBJDIRPREFIX=3D/usr/obj MACHINE_ARCH=3Damd64 > MACHINE=3Damd64 CPUTYPE=3D > GROFF_BIN_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/bin > GROFF_FONT_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/groff_font > GROFF_TMAC_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/tmac > PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/u= sr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/legacy/bi= n:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/s= rc/tmp/usr/games:/tmp/install.hEJfJDhM > LD_LIBRARY_PATH=3D/tmp/install.hEJfJDhM > PATH_LOCALE=3D/tmp/install.hEJfJDhM/locale make -DWITH_ATF -f > Makefile.inc1 INSTALL=3D"install -N /usr/src/etc -U -M /tmp//METALOG -D > /tmp" MTREE_CMD=3D"mtree -N /usr/src/etc -W" > __MAKE_SHELL=3D/tmp/install.hEJfJDhM/sh -DNO_ROOT METALOG=3D/tmp//METALOG > reinstall; MAKEOBJDIRPREFIX=3D/usr/obj MACHINE_ARCH=3Damd64 MACHINE=3Dam= d64 > CPUTYPE=3D GROFF_BIN_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/bin > GROFF_FONT_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/groff_font > GROFF_TMAC_PATH=3D/usr/obj/usr/src/tmp/legacy/usr/share/tmac > PATH=3D/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/u= sr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/legacy/bi= n:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/usr/s= rc/tmp/usr/games:/tmp/install.hEJfJDhM > LD_LIBRARY_PATH=3D/tmp/install.hEJfJDhM > PATH_LOCALE=3D/tmp/install.hEJfJDhM/locale rm -rf /tmp/install.hEJfJDhM > make[2]: "/usr/src/share/mk/bsd.compiler.mk" line 37: Unable to > determine compiler type for cc. Consider setting COMPILER_TYPE. You need to build world before you can install it. -- Brooks --eheScQNz3K90DVRs Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iEYEARECAAYFAlP7kDwACgkQXY6L6fI4GtQXUgCggMW+4lSQJbDaCXY6zebtl6I4 PtcAoL8C03ghZhQZUBY4MD1zFT1lzQkG =u702 -----END PGP SIGNATURE----- --eheScQNz3K90DVRs--