Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 Sep 2016 11:14:13 -0700
From:      Bryan Drewery <bdrewery@FreeBSD.org>
To:        "Simon J. Gerraty" <sjg@juniper.net>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r305634 - head/share/mk
Message-ID:  <a35a78e8-5464-ec1d-ec06-36f0cf7ded64@FreeBSD.org>
In-Reply-To: <76524.1473467847@kaos.jnpr.net>
References:  <201609090121.u891LZOO023156@repo.freebsd.org> <bf4c21cd-cbf3-55b9-d0f0-c0cbd01e5428@FreeBSD.org> <76524.1473467847@kaos.jnpr.net>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--Mw2OUWH4Fveo5N2C5XJRvQf5jMKMn65Rd
Content-Type: multipart/mixed; boundary="bVD9fPoNnEJC8xwlVnlM5BhIFiJ5rvKXi";
 protected-headers="v1"
From: Bryan Drewery <bdrewery@FreeBSD.org>
To: "Simon J. Gerraty" <sjg@juniper.net>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Message-ID: <a35a78e8-5464-ec1d-ec06-36f0cf7ded64@FreeBSD.org>
Subject: Re: svn commit: r305634 - head/share/mk
References: <201609090121.u891LZOO023156@repo.freebsd.org>
 <bf4c21cd-cbf3-55b9-d0f0-c0cbd01e5428@FreeBSD.org>
 <76524.1473467847@kaos.jnpr.net>
In-Reply-To: <76524.1473467847@kaos.jnpr.net>

--bVD9fPoNnEJC8xwlVnlM5BhIFiJ5rvKXi
Content-Type: text/plain; charset=windows-1252
Content-Transfer-Encoding: quoted-printable

On 9/9/16 5:37 PM, Simon J. Gerraty wrote:
> Bryan Drewery <bdrewery@freebsd.org> wrote:
>=20
>>> +# some targets involve old pre-built targets
>>> +# ignore mtime of shell
>>> +# and mtime of makefiles does not matter in meta mode
>>> +.MAKE.META.IGNORE_PATHS +=3D \
>>> +        ${MAKEFILE} \
>>> +        ${SHELL} \
>>> +        ${SYS_MK_DIR}
>>
>> I think it could be problematic to ignore *.mk changes.  The build
>=20
> If you're not concerned with build optimization,
> this can be disabled - but pretty much any sub-make for which there is =
a
> .meta file will be out-of-date by any changed to *.mk
>=20
>> commands may stay the same, but targets could grow new dependencies.  =
If
>> those dependencies are already "met" then meta mode won't reconsider t=
hem.
>=20
> I'm not sure how easy it is to accomplish that situation.

Can you at least wrap it in something like .if
!defined(META_CONSIDER_MK_FILES) ?

> =20
>> Consider:
>> Build 1:
>> bar:
>> 	touch dep
>> 	touch bar
>>
>> foo:
>> 	touch foo
>>
>> all: bar foo
>>
>> In the first build, all generates dep, bar and foo.
>>
>> Then the code is changed to:
>>
>> bar:
>> 	touch bar
>>
>> dep:
>> 	touch notmade
>> 	touch dep
>>
>> foo: dep
>> 	touch foo
>>
>> all: foo bar
>>
>> Now in the second build, all finds bar command changes and rebuilds,
>> finds foo command is the same and that dep is already satisfied from t=
he
>> last build.  So 'notmade' is never made.
>=20
> Actually given you have missing-meta=3Dyes
> target dep would be remade, either because there is no .meta file, or
> because its commands changed.=20
> Thus notmade should be.
>=20

Good point.

--=20
Regards,
Bryan Drewery


--bVD9fPoNnEJC8xwlVnlM5BhIFiJ5rvKXi--

--Mw2OUWH4Fveo5N2C5XJRvQf5jMKMn65Rd
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQEcBAEBCgAGBQJX2ZN2AAoJEDXXcbtuRpfP2IkH+QHLT895o/vN5jAs67lE4P2L
bXf6PASmfNX2YearLKwHbJ9jAdSSYbazYJ/fBVKaktNZHlD3vMl9ae8uvnNHukmD
qvHKzWl7JwDXI9FBapgPOwexTuFDOqYdp8hmsfmngX6rXR/1bo3h0uUfXmO40SQK
5+5ugrjDCG4ENGRAtL9U0Um3mXC9z09FZ28GHzs8Sb6AFEfWXYAqVWWy75bFeXpE
v4wum0kjP1HRtnpfj6/7ky1cdWz/JA2YNw9Bu8DZRke5Ay40jvVTPRelW08s6H1l
llWPing4OAP7SKYzka5DTz2IqfKA1VDmzsFWPYqJloyPlnUjOzz1FfE+0303qFo=
=DIW8
-----END PGP SIGNATURE-----

--Mw2OUWH4Fveo5N2C5XJRvQf5jMKMn65Rd--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?a35a78e8-5464-ec1d-ec06-36f0cf7ded64>