Date: Mon, 25 Aug 2014 10:38:12 -0700 From: Craig Rodrigues <rodrigc@FreeBSD.org> To: Brooks Davis <brooks@freebsd.org> Cc: freebsd-current Current <freebsd-current@freebsd.org> Subject: Re: "make installworld" commands used to generate manifest for makefs? Message-ID: <CAG=rPVfE7%2Bnuo50gWCQE4iEaSm0=JfwkZCi=54RzGd28NiFV1A@mail.gmail.com> In-Reply-To: <20140825165522.GC91673@spindle.one-eyed-alien.net> References: <CAG=rPVdB424eOLCcdJmMOT2mxf8g_BYBnYX%2Bre=5JJJXO38T3g@mail.gmail.com> <20140825165522.GC91673@spindle.one-eyed-alien.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Aug 25, 2014 at 9:55 AM, Brooks Davis <brooks@freebsd.org> 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<foo> installworld > > should result in a <foo>/METALOG file suitable for passing to makefs. > You may also want the distribution target if you want a populated /etc. > > -- Broks Hi, I got this: # make -DNO_ROOT -DDB_FROM_SRC DESTDIR=3D/tmp installworld 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/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/usr/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//METALOG reinstall; MAKEOBJDIRPREFIX=3D/usr/obj MACHINE_ARCH=3Damd64 MACHINE=3Damd6= 4 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/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/usr/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. *** Error code 1 Stop. make[1]: stopped in /usr/src *** Error code 1 Stop. make: stopped in /usr/src
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAG=rPVfE7%2Bnuo50gWCQE4iEaSm0=JfwkZCi=54RzGd28NiFV1A>