Date: Mon, 25 Aug 2014 22:41:14 +0000 From: Brooks Davis <brooks@freebsd.org> To: Julian Elischer <julian@freebsd.org> Cc: Craig Rodrigues <rodrigc@FreeBSD.org>, freebsd-current Current <freebsd-current@freebsd.org> Subject: Re: "make installworld" commands used to generate manifest for makefs? Message-ID: <20140825224114.GE91673@spindle.one-eyed-alien.net> In-Reply-To: <53FBB89B.2020501@freebsd.org> References: <CAG=rPVdB424eOLCcdJmMOT2mxf8g_BYBnYX%2Bre=5JJJXO38T3g@mail.gmail.com> <20140825165522.GC91673@spindle.one-eyed-alien.net> <CAG=rPVfE7%2Bnuo50gWCQE4iEaSm0=JfwkZCi=54RzGd28NiFV1A@mail.gmail.com> <20140825193629.GD91673@spindle.one-eyed-alien.net> <53FBB89B.2020501@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--tMbDGjvJuJijemkf Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Aug 25, 2014 at 03:28:43PM -0700, Julian Elischer wrote: > On 8/25/14, 12:36 PM, Brooks Davis wrote: > > On Mon, Aug 25, 2014 at 10:38:12AM -0700, Craig Rodrigues wrote: > >> On Mon, Aug 25, 2014 at 9:55 AM, Brooks Davis <brooks@freebsd.org> wro= te: > >>> 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<foo> installworld >=20 > if you haven't already this should be documented in the base makefiles=20 > along with the other -DXXXX > values. It was documented in the initial commit. -- Brooks > >>> > >>> should result in a <foo>/METALOG file suitable for passing to makefs. > >>> You may also want the distribution target if you want a populated /et= c. > >>> > >>> -- Broks > >> Hi, > >> > >> I got this: > >> > >> > >> # 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/legac= y/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/legacy= /bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/us= r/src/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//META= LOG > >> reinstall; 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/legac= y/usr/bin:/usr/obj/usr/src/tmp/legacy/usr/games:/usr/obj/usr/src/tmp/legacy= /bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/usr/obj/us= r/src/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 >=20 --tMbDGjvJuJijemkf Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iEYEARECAAYFAlP7u4kACgkQXY6L6fI4GtQoMQCgz1A/aIC8BW1/St4ZbPpNpZFK 5SYAn0LJjZZuXo43YsbGZhgKG/H6Gqfq =j+Al -----END PGP SIGNATURE----- --tMbDGjvJuJijemkf--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140825224114.GE91673>