Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 2 Jun 2013 16:53:06 -0400
From:      Alexander Kabaev <kabaev@gmail.com>
To:        "Simon J. Gerraty" <sjg@juniper.net>
Cc:        current@FreeBSD.ORG
Subject:   Re: Undesirable bmake behavior
Message-ID:  <20130602165306.3f38f265@kan.dyndns.org>
In-Reply-To: <20130602044057.9798358097@chaos.jnpr.net>
References:  <20130601234310.1ef241d5@kan.dyndns.org> <20130602044057.9798358097@chaos.jnpr.net>

next in thread | previous in thread | raw e-mail | index | archive | help
--Sig_/nmzKQCm0sXmAO590AB4uC45
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

On Sat, 1 Jun 2013 21:40:57 -0700
"Simon J. Gerraty" <sjg@juniper.net> wrote:

> >today I got confronted with this little curiosity from bmake. I have
> >built and installed the world, and after reboot I ran 'make
> >delete-old' as root to get rid of accumulated stale files. This is
> >what I got back:
> >
> >>>> Removing old files (only deletes safe to delete libs)
> >....
> >>>> Old files removed
> >>>> Removing old directories
> >>>> Old directories removed
> >To remove old libraries run '/usr/obj/usr/src/make.amd64/make
> >delete-old-libs'.
> >
> >It turns out that somehow running make in src tree finds and tries to
> >run a copy from .OBJDIR, if one is present, unconditionally now. I do
>=20
> This simply what src/Makefile says to do, and AFAIK it has been that
> way for ages.
>=20
> Since delete-old is in TGTS it gets run via:
>=20
> #
> # Handle the user-driven targets, using the source relative mk files.
> #
>=20
> ${TGTS}:
>         ${_+_}@cd ${.CURDIR}; ${_MAKE} ${.TARGET}
>=20
>=20
> and
>=20
> $ make -dV -V _MAKE
> PATH=3D${PATH} ${BINMAKE} -f Makefile.inc1 TARGET=3D${_TARGET}
> TARGET_ARCH=3D${_TARGET_ARCH} $ make -dV -V BINMAKE
> `if [ -x ${MAKEPATH}/make ]; then echo ${MAKEPATH}/make; else echo
> ${MAKE}; fi`  -m ${.CURDIR}/share/mk
> $ make -V _MAKE
> PATH=3D/sbin:/bin:/usr/sbin:/usr/bin `if [ -x
> /var/obj/current/b/sjg/work/FreeBSD/current/src/make.amd64/make ];
> then
> echo /var/obj/current/b/sjg/work/FreeBSD/current/src/make.amd64/make;
> else echo make; fi`  -m /b/sjg/work/FreeBSD/current/src/share/mk -f
> Makefile.inc1 TARGET=3Damd64 TARGET_ARCH=3Damd64 $
>=20
> Now you may be right that that's a bad idea, but it isn't anything
> new.
>=20
> --sjg

Indeed, it seems this is an issue that rears it head every time we
resort to building the bootstrap make, which happens not often. bmake
just made me notice the issue, and it wasn't the cause.
--=20
Alexander Kabaev

--Sig_/nmzKQCm0sXmAO590AB4uC45
Content-Type: application/pgp-signature; name=signature.asc
Content-Disposition: attachment; filename=signature.asc

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.20 (FreeBSD)

iD8DBQFRq7DKQ6z1jMm+XZYRAu+DAJ9IhdY9CQ6GjaJCxcE0TOyo0z2eYwCg3FHm
7gu+fyZlVK9+mmWnBdi1gmk=
=IyWF
-----END PGP SIGNATURE-----

--Sig_/nmzKQCm0sXmAO590AB4uC45--



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