diff mbox

Don't disable dependency tracking if using <pkg>_OVERRIDE_SRCDIR.

Message ID 20170201135310.3ghqvpqww25jfzm2@zenon.in.qult.net
State Accepted
Headers show

Commit Message

Ignacy Gawędzki Feb. 1, 2017, 1:53 p.m. UTC
Include the --disable-dependency-tracking option in
<pkg>_CONFIGURE_CMDS only on the condition that <pkg>_OVERRIDE_SRCDIR
is empty.  Dependency tracking is very welcome while developing in
order to properly rebuild when calling make <pkg>-rebuild for
instance.

Signed-off-by: Ignacy Gawędzki <ignacy.gawedzki@green-communications.fr>
---
 package/pkg-autotools.mk | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Romain Naour Feb. 6, 2017, 6:39 p.m. UTC | #1
Hi Ignacy,

Le 01/02/2017 à 14:53, Ignacy Gawędzki a écrit :
> Include the --disable-dependency-tracking option in
> <pkg>_CONFIGURE_CMDS only on the condition that <pkg>_OVERRIDE_SRCDIR
> is empty.  Dependency tracking is very welcome while developing in
> order to properly rebuild when calling make <pkg>-rebuild for
> instance.
> 
> Signed-off-by: Ignacy Gawędzki <ignacy.gawedzki@green-communications.fr>
> ---
>  package/pkg-autotools.mk | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk
> index f7b8488..e8579f4 100644
> --- a/package/pkg-autotools.mk
> +++ b/package/pkg-autotools.mk
> @@ -199,7 +199,8 @@ define $(2)_CONFIGURE_CMDS
>  		--disable-documentation \
>  		--with-xmlto=no \
>  		--with-fop=no \
> -		--disable-dependency-tracking \
> +		$$(if $$($$(PKG)_OVERRIDE_SRCDIR),, \
> +		   --disable-dependency-tracking) \
>  		--enable-ipv6 \
>  		$$(DISABLE_NLS) \
>  		$$(SHARED_STATIC_LIBS_OPTS) \
> @@ -232,7 +233,8 @@ define $(2)_CONFIGURE_CMDS
>  		--disable-debug \
>  		--with-xmlto=no \
>  		--with-fop=no \
> -		--disable-dependency-tracking \
> +		$$(if $$($$(PKG)_OVERRIDE_SRCDIR),, \
> +		   --disable-dependency-tracking) \

You're likely working on the target variant, so probably you can let the
dependency tracking enabled for the host?

Best regards,
Romain

>  		$$(QUIET) $$($$(PKG)_CONF_OPTS) \
>  	)
>  endef
>
Ignacy Gawędzki Feb. 6, 2017, 7:37 p.m. UTC | #2
On Mon, Feb 06, 2017 at 07:39:00PM +0100, thus spake Romain Naour:
> Hi Ignacy,
> 
> Le 01/02/2017 à 14:53, Ignacy Gawędzki a écrit :
> > Include the --disable-dependency-tracking option in
> > <pkg>_CONFIGURE_CMDS only on the condition that <pkg>_OVERRIDE_SRCDIR
> > is empty.  Dependency tracking is very welcome while developing in
> > order to properly rebuild when calling make <pkg>-rebuild for
> > instance.
> > 
> > Signed-off-by: Ignacy Gawędzki <ignacy.gawedzki@green-communications.fr>
> > ---
> >  package/pkg-autotools.mk | 6 ++++--
> >  1 file changed, 4 insertions(+), 2 deletions(-)
> > 
> > diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk
> > index f7b8488..e8579f4 100644
> > --- a/package/pkg-autotools.mk
> > +++ b/package/pkg-autotools.mk
> > @@ -199,7 +199,8 @@ define $(2)_CONFIGURE_CMDS
> >  		--disable-documentation \
> >  		--with-xmlto=no \
> >  		--with-fop=no \
> > -		--disable-dependency-tracking \
> > +		$$(if $$($$(PKG)_OVERRIDE_SRCDIR),, \
> > +		   --disable-dependency-tracking) \
> >  		--enable-ipv6 \
> >  		$$(DISABLE_NLS) \
> >  		$$(SHARED_STATIC_LIBS_OPTS) \
> > @@ -232,7 +233,8 @@ define $(2)_CONFIGURE_CMDS
> >  		--disable-debug \
> >  		--with-xmlto=no \
> >  		--with-fop=no \
> > -		--disable-dependency-tracking \
> > +		$$(if $$($$(PKG)_OVERRIDE_SRCDIR),, \
> > +		   --disable-dependency-tracking) \
> 
> You're likely working on the target variant, so probably you can let the
> dependency tracking enabled for the host?

Dependency tracking was initially *disabled* for both target and host.
I suppose that <pkg>_OVERRIDE_SRCDIR works for both target and host,
so I don't see why we should leave it disabled for one and not the
other.

Regards,

Ignacy
Romain Naour Feb. 7, 2017, 10:14 p.m. UTC | #3
Hi Ignacy,

Le 06/02/2017 à 20:37, Ignacy Gawędzki a écrit :
> On Mon, Feb 06, 2017 at 07:39:00PM +0100, thus spake Romain Naour:
>> Hi Ignacy,
>>
>> Le 01/02/2017 à 14:53, Ignacy Gawędzki a écrit :
>>> Include the --disable-dependency-tracking option in
>>> <pkg>_CONFIGURE_CMDS only on the condition that <pkg>_OVERRIDE_SRCDIR
>>> is empty.  Dependency tracking is very welcome while developing in
>>> order to properly rebuild when calling make <pkg>-rebuild for
>>> instance.
>>>
>>> Signed-off-by: Ignacy Gawędzki <ignacy.gawedzki@green-communications.fr>
>>> ---
>>>  package/pkg-autotools.mk | 6 ++++--
>>>  1 file changed, 4 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk
>>> index f7b8488..e8579f4 100644
>>> --- a/package/pkg-autotools.mk
>>> +++ b/package/pkg-autotools.mk
>>> @@ -199,7 +199,8 @@ define $(2)_CONFIGURE_CMDS
>>>  		--disable-documentation \
>>>  		--with-xmlto=no \
>>>  		--with-fop=no \
>>> -		--disable-dependency-tracking \
>>> +		$$(if $$($$(PKG)_OVERRIDE_SRCDIR),, \
>>> +		   --disable-dependency-tracking) \
>>>  		--enable-ipv6 \
>>>  		$$(DISABLE_NLS) \
>>>  		$$(SHARED_STATIC_LIBS_OPTS) \
>>> @@ -232,7 +233,8 @@ define $(2)_CONFIGURE_CMDS
>>>  		--disable-debug \
>>>  		--with-xmlto=no \
>>>  		--with-fop=no \
>>> -		--disable-dependency-tracking \
>>> +		$$(if $$($$(PKG)_OVERRIDE_SRCDIR),, \
>>> +		   --disable-dependency-tracking) \
>>
>> You're likely working on the target variant, so probably you can let the
>> dependency tracking enabled for the host?
> 
> Dependency tracking was initially *disabled* for both target and host.
> I suppose that <pkg>_OVERRIDE_SRCDIR works for both target and host,
> so I don't see why we should leave it disabled for one and not the
> other.

Indeed <pkg>_OVERRIDE_SRCDIR works for both target and host packages and the
"dependency tracking" was disabled (see [1]) to reduce the build time.

My initial feeling is to allow to enable the "dependency tracking" only when
doing active development on a *target* package using <pkg>_OVERRIDE_SRCDIR.
Buildroot is unlikely used for active development on a *host* package.

But ok, if you're using <pkg>_OVERRIDE_SRCDIR for a host package, you probably
don't really care of the build time...

Lets see other opinion.

Best regards,
Romain

[1]
https://git.busybox.net/buildroot/commit/?id=3e37b0fc6cbbe2245e39fedb247a381fb4e0d992

> 
> Regards,
> 
> Ignacy
>
Nicolas Cavallari Feb. 8, 2017, 9:28 a.m. UTC | #4
On 07/02/2017 23:14, Romain Naour a écrit:
> Hi Ignacy,
> 
> Le 06/02/2017 à 20:37, Ignacy Gawędzki a écrit :
>> On Mon, Feb 06, 2017 at 07:39:00PM +0100, parla Romain Naour:
>>>
>>> You're likely working on the target variant, so probably you can let the
>>> dependency tracking enabled for the host?
>>
>> Dependency tracking was initially *disabled* for both target and host.
>> I suppose that <pkg>_OVERRIDE_SRCDIR works for both target and host,
>> so I don't see why we should leave it disabled for one and not the
>> other.
> 
> Indeed <pkg>_OVERRIDE_SRCDIR works for both target and host packages and the
> "dependency tracking" was disabled (see [1]) to reduce the build time.
> 
> My initial feeling is to allow to enable the "dependency tracking" only when
> doing active development on a *target* package using <pkg>_OVERRIDE_SRCDIR.
> Buildroot is unlikely used for active development on a *host* package.

Some hosts packages are a dependency of the target package, because
they are not very friendly to cross-compiling, so the host variant
compiles build tools used by the target variant.  Both should be in
sync when building.

So it make sense to enable dependency tracking for hosts packages
during active development for a target package.
Thomas Petazzoni March 5, 2017, 9:48 p.m. UTC | #5
Hello,

On Wed, 1 Feb 2017 14:53:10 +0100, Ignacy Gawędzki wrote:
> Include the --disable-dependency-tracking option in
> <pkg>_CONFIGURE_CMDS only on the condition that <pkg>_OVERRIDE_SRCDIR
> is empty.  Dependency tracking is very welcome while developing in
> order to properly rebuild when calling make <pkg>-rebuild for
> instance.
> 
> Signed-off-by: Ignacy Gawędzki <ignacy.gawedzki@green-communications.fr>
> ---
>  package/pkg-autotools.mk | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)

Applied to master, with a slight tweak to the commit title, and putting

	$$(if $$($$(PKG)_OVERRIDE_SRCDIR),,--disable-dependency-tracking) \

even if it's 83 characters wide. I find that more readable this way.

Thanks!

Thomas
diff mbox

Patch

diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk
index f7b8488..e8579f4 100644
--- a/package/pkg-autotools.mk
+++ b/package/pkg-autotools.mk
@@ -199,7 +199,8 @@  define $(2)_CONFIGURE_CMDS
 		--disable-documentation \
 		--with-xmlto=no \
 		--with-fop=no \
-		--disable-dependency-tracking \
+		$$(if $$($$(PKG)_OVERRIDE_SRCDIR),, \
+		   --disable-dependency-tracking) \
 		--enable-ipv6 \
 		$$(DISABLE_NLS) \
 		$$(SHARED_STATIC_LIBS_OPTS) \
@@ -232,7 +233,8 @@  define $(2)_CONFIGURE_CMDS
 		--disable-debug \
 		--with-xmlto=no \
 		--with-fop=no \
-		--disable-dependency-tracking \
+		$$(if $$($$(PKG)_OVERRIDE_SRCDIR),, \
+		   --disable-dependency-tracking) \
 		$$(QUIET) $$($$(PKG)_CONF_OPTS) \
 	)
 endef