* [Buildroot] [Bug 4922] Please consider introducing host-make for building software packages within the buildroot
2012-03-14 23:58 [Buildroot] [Bug 4922] New: Please consider introducing host-make for building software packages within the buildroot bugzilla at busybox.net
@ 2012-03-15 7:07 ` bugzilla at busybox.net
2012-03-15 9:33 ` bugzilla at busybox.net
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: bugzilla at busybox.net @ 2012-03-15 7:07 UTC (permalink / raw)
To: buildroot
https://bugs.busybox.net/show_bug.cgi?id=4922
--- Comment #1 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 2012-03-15 07:07:31 UTC ---
I am not sure I would like the fact that Buildroot uses a modified make,
because this means that we would have to maintain and update this make
modification in the future.
If this problem in make is annoying for your use case (and I do understand it),
wouldn't it be better to report it in the upstream project, provide a patch
(maybe adding a new make option that restores the previous behaviour, or
something), so that future versions of make will work properly, or at least
offer the option of working properly.
The problem is really two-fold here :
* In general, I don't like building more and more host tools unnecessarily. I
want to retain the fact that when Buildroot is told to build a Busybox-based
system, it builds Busybox and *nothing* else.
* In particular, I don't think it's a good idea for us to carry patches on the
different components that actually change their behaviour or add features. We
don't want to be maintaining those patches. These changes need to be upstream.
the only patches that we accept to carry are build fixes for cross-compilation,
or bug fixes when those are already on their way to be integrated upstream.
Of course, this is just my opinion, the opinion of others in the Buildroot
community may be different, and I am not the Buildroot maintainer, so my voice
is really one amongst many others.
--
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread* [Buildroot] [Bug 4922] Please consider introducing host-make for building software packages within the buildroot
2012-03-14 23:58 [Buildroot] [Bug 4922] New: Please consider introducing host-make for building software packages within the buildroot bugzilla at busybox.net
2012-03-15 7:07 ` [Buildroot] [Bug 4922] " bugzilla at busybox.net
@ 2012-03-15 9:33 ` bugzilla at busybox.net
2012-03-16 10:04 ` bugzilla at busybox.net
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: bugzilla at busybox.net @ 2012-03-15 9:33 UTC (permalink / raw)
To: buildroot
https://bugs.busybox.net/show_bug.cgi?id=4922
--- Comment #2 from Christoph Schulz <develop@kristov.de> 2012-03-15 09:33:19 UTC ---
I do not want to encourage using a patched make. I only want to let the user
this possibility. Following your first argument, this implies for me that we
should also ban host-autoconf, host-automake etc. from the buildroot because
they need not be specially configured for cross-compiling and, consequently,
one could easily require the host environment to provide them (as it is
currently done for 'make'). So I really fail to see how 'make' does not fit
into the rest of the 'host-' packages.
By the way, autoconf e.g. does get patched in the buildroot.
--
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread* [Buildroot] [Bug 4922] Please consider introducing host-make for building software packages within the buildroot
2012-03-14 23:58 [Buildroot] [Bug 4922] New: Please consider introducing host-make for building software packages within the buildroot bugzilla at busybox.net
2012-03-15 7:07 ` [Buildroot] [Bug 4922] " bugzilla at busybox.net
2012-03-15 9:33 ` bugzilla at busybox.net
@ 2012-03-16 10:04 ` bugzilla at busybox.net
2012-03-23 20:59 ` bugzilla at busybox.net
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: bugzilla at busybox.net @ 2012-03-16 10:04 UTC (permalink / raw)
To: buildroot
https://bugs.busybox.net/show_bug.cgi?id=4922
Christoph Schulz <develop@kristov.de> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #4136|0 |1
is obsolete| |
--- Comment #3 from Christoph Schulz <develop@kristov.de> 2012-03-16 10:04:24 UTC ---
Created attachment 4154
--> https://bugs.busybox.net/attachment.cgi?id=4154
changes the core build system to correctly include host-make into the build
process
This patch corrects a bug where making a noconfig_target failed due to missing
MAKEORIG: use always original $(MAKE) in main Makefile which is overridden only
for buildroot packages to be built.
--
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread* [Buildroot] [Bug 4922] Please consider introducing host-make for building software packages within the buildroot
2012-03-14 23:58 [Buildroot] [Bug 4922] New: Please consider introducing host-make for building software packages within the buildroot bugzilla at busybox.net
` (2 preceding siblings ...)
2012-03-16 10:04 ` bugzilla at busybox.net
@ 2012-03-23 20:59 ` bugzilla at busybox.net
2012-03-23 22:26 ` bugzilla at busybox.net
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: bugzilla at busybox.net @ 2012-03-23 20:59 UTC (permalink / raw)
To: buildroot
https://bugs.busybox.net/show_bug.cgi?id=4922
Christoph Schulz <develop@kristov.de> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #4154|0 |1
is obsolete| |
--- Comment #4 from Christoph Schulz <develop@kristov.de> 2012-03-23 20:59:25 UTC ---
Created attachment 4190
--> https://bugs.busybox.net/attachment.cgi?id=4190
changes the core build system to correctly include host-make into the build
process
The updated version of the patch now also works on a freshly unpacked archive;
it uses $(MAKEORIG) instead of $(MAKE) when building the targets
'silentoldconfig' and 'external-deps'.
--
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread* [Buildroot] [Bug 4922] Please consider introducing host-make for building software packages within the buildroot
2012-03-14 23:58 [Buildroot] [Bug 4922] New: Please consider introducing host-make for building software packages within the buildroot bugzilla at busybox.net
` (3 preceding siblings ...)
2012-03-23 20:59 ` bugzilla at busybox.net
@ 2012-03-23 22:26 ` bugzilla at busybox.net
2012-03-24 9:47 ` bugzilla at busybox.net
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: bugzilla at busybox.net @ 2012-03-23 22:26 UTC (permalink / raw)
To: buildroot
https://bugs.busybox.net/show_bug.cgi?id=4922
--- Comment #5 from Peter Korsgaard <jacmet@uclibc.org> 2012-03-23 22:26:58 UTC ---
(In reply to comment #2)
> I do not want to encourage using a patched make. I only want to let the user
> this possibility. Following your first argument, this implies for me that we
> should also ban host-autoconf, host-automake etc. from the buildroot because
> they need not be specially configured for cross-compiling and, consequently,
> one could easily require the host environment to provide them (as it is
> currently done for 'make'). So I really fail to see how 'make' does not fit
> into the rest of the 'host-' packages.
The choice between building our own or using whatever is present on the host
depends on several factors. Among those are:
- How common is the package? How likely is the user to already have it present?
- Do we have strict version requirements?
- How many dependencies does it have? How long does it take to build (and how
much space does it need)?
I agree with Thomas that I don't really think the scale for make is tipping
towards a host package.
> By the way, autoconf e.g. does get patched in the buildroot.
For bugfixes, yes - Not for features.
--
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread* [Buildroot] [Bug 4922] Please consider introducing host-make for building software packages within the buildroot
2012-03-14 23:58 [Buildroot] [Bug 4922] New: Please consider introducing host-make for building software packages within the buildroot bugzilla at busybox.net
` (4 preceding siblings ...)
2012-03-23 22:26 ` bugzilla at busybox.net
@ 2012-03-24 9:47 ` bugzilla at busybox.net
2012-04-01 6:42 ` bugzilla at busybox.net
2013-05-26 15:17 ` bugzilla at busybox.net
7 siblings, 0 replies; 9+ messages in thread
From: bugzilla at busybox.net @ 2012-03-24 9:47 UTC (permalink / raw)
To: buildroot
https://bugs.busybox.net/show_bug.cgi?id=4922
--- Comment #6 from Christoph Schulz <develop@kristov.de> 2012-03-24 09:47:18 UTC ---
Hello!
(In reply to comment #5)
> The choice between building our own or using whatever is present on the host
> depends on several factors. Among those are:
>
> - How common is the package? How likely is the user to already have it
> present?
> - Do we have strict version requirements?
I think so:
# Check for minimal make version (note: this check will break at make 10.x)
MIN_MAKE_VERSION=3.81
ifneq ($(firstword $(sort $(MAKE_VERSION)
$(MIN_MAKE_VERSION))),$(MIN_MAKE_VERSION))
$(error You have make '$(MAKE_VERSION)' installed. GNU make >=
$(MIN_MAKE_VERSION) is required)
endif
So at least make 3.81 is required. Remember that, although e.g. make 3.80 has
been released 2002, it took years for the various Linux distributions to pick
it up (e.g. Gentoo put it into the stable tree in 2005).
> - How many dependencies does it have? How long does it take to build (and how
> much space does it need)?
It does not have any dependencies (with the exception of autotools). It does
not take much time to build. It does not need much space (the archive is
smaller as that of e.g. autoconf-2.65).
> [...]
> > By the way, autoconf e.g. does get patched in the buildroot.
>
> For bugfixes, yes - Not for features.
Fair enough. But in my eyes, not being able to build reproducable binaries _is_
a bug. Otherwise I would not have started the whole discussion ;-) I don't
think you will be able to stick to make 3.81 forever...
Please consider my last argument: According to
support/dependencies/dependencies.sh, GNU make is apparently the _only_ package
needed for building for which there exist strict version requirements (the
other one is gcc >= 2.95, but gcc 2.95 has been released in 1999, much earlier
than make 3.81). So why not build a host-make which definitely meets our
requirements?
Regards,
Christoph Schulz
--
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread* [Buildroot] [Bug 4922] Please consider introducing host-make for building software packages within the buildroot
2012-03-14 23:58 [Buildroot] [Bug 4922] New: Please consider introducing host-make for building software packages within the buildroot bugzilla at busybox.net
` (5 preceding siblings ...)
2012-03-24 9:47 ` bugzilla at busybox.net
@ 2012-04-01 6:42 ` bugzilla at busybox.net
2013-05-26 15:17 ` bugzilla at busybox.net
7 siblings, 0 replies; 9+ messages in thread
From: bugzilla at busybox.net @ 2012-04-01 6:42 UTC (permalink / raw)
To: buildroot
https://bugs.busybox.net/show_bug.cgi?id=4922
Christoph Schulz <develop@kristov.de> changed:
What |Removed |Added
----------------------------------------------------------------------------
Blocks| |5006
--
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread* [Buildroot] [Bug 4922] Please consider introducing host-make for building software packages within the buildroot
2012-03-14 23:58 [Buildroot] [Bug 4922] New: Please consider introducing host-make for building software packages within the buildroot bugzilla at busybox.net
` (6 preceding siblings ...)
2012-04-01 6:42 ` bugzilla at busybox.net
@ 2013-05-26 15:17 ` bugzilla at busybox.net
7 siblings, 0 replies; 9+ messages in thread
From: bugzilla at busybox.net @ 2013-05-26 15:17 UTC (permalink / raw)
To: buildroot
https://bugs.busybox.net/show_bug.cgi?id=4922
Thomas Petazzoni <thomas.petazzoni@free-electrons.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |WONTFIX
--- Comment #7 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 2013-05-26 15:16:03 UTC ---
Making Buildroot build make is not going to solve the problem entirely:
Buildroot itself would still be using the 'make' installed by the distribution,
which may be problematic if the 'make' installed by the distribution doesn't
work properly (for one reason or another).
Conclusion: since make is such a fundamental tool for Buildroot, if something
is broken/inappropriate in make, we need a correct make to be installed prior
to running Buildroot. We are not going to build a new 'make', from source, at
every Buildroot invocation.
Please get in touch with make upstream, and provide a patch that fixes the
behavior of $(wildcard ...) according to your needs.
--
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 9+ messages in thread