Age | Commit message (Collapse) | Author |
|
Allow options to be passed to the autoreconf script if necessary.
Signed-off-by: Will Newton <will.newton@gmail.com>
|
|
The "project" feature was designed to allow to several projects to be
built inside the same Buildroot source tree and allowing the toolchain
and non-configurable packages to be shared between the different
projects on the same architecture. While being interesting in theory,
this feature adds a level of complexity to Buildroot, both from an
user perspective and from a developer perspective, while one of the
main Buildroot strengh is to be simple. Moreover, this feature is only
seldomly used by our users.
From a user-level perspective, this for example allows to remove the
project_build_ARCH directory, which was very confusing. The
autotools-stamps directory is also removed, since these stamps are
back at their normal location.
Description of the changes involved :
* project/, directory removed
* Makefile
- Don't include project/Makefile.in and project/project.mk anymore
- Grab a copy of the contents of project/Makefile.in at the
location it was imported, but remove the definition related to
PROJECT_BUILD_DIR. The TARGET_DIR is now in
$(BUILD_DIR)/target_dir
- Remove the creation/removal of the $(PROJECT_BUILD_DIR) and
$(PROJECT_BUILD_DIR)/autotools-stamps directories
- Don't make world depends on target-host-info. This target was
defined by project/project.mk to customize /etc/issue,
/etc/hostname and create /etc/br-version depending on the
project definitions. We can of course imagine re-adding such a
feature later.
- Replace PROJECT_BUILD_DIR by BUILD_DIR everywhere
- Remove the update, log and lognr.$(PROJECT) target, they were
specific to the project feature.
* package/Makefile.autotools.in
- Replace PROJECT_BUILD_DIR by BUILD_DIR for the location of the
configure cache
- Move the INSTALL_TARGET and HOOK_POST_INSTALL stamps to the same
directory as the other stamps (i.e, in the package directory).
* package/Makefile.in
- Replace PROJECT_BUILD_DIR by BUILD_DIR for the location of the
configure cache
* package/at/at.mk,
package/busybox/busybox.mk,
package/busybox/initramfs.mk,
package/customize/customize.mk,
package/linux-fusion/linux-fusion.mk,
package/ltp-testsuite/ltp-testsuite.mk,
package/nfs-utils/nfs-utils.mk,
target/cpio/cpioroot.mk,
target/cramfs/cramfs.mk,
target/device/Atmel/DataFlashBoot/DataflashBoot.mk,
target/device/Atmel/Makefile.in,
target/device/Atmel/at91bootstrap/at91bootstrap.mk,
target/device/KwikByte/Makefile.in,
target/ext2/ext2root.mk,
target/initramfs/initramfs.mk,
target/iso9660/iso9660.mk,
target/jffs2/jffs2root.mk,
target/linux/Makefile.in,
target/romfs/romfs.mk,
target/squashfs/squashfsroot.mk,
target/tar/tarroot.mk,
target/ubifs/ubifsroot.mk
- Replace PROJECT_BUILD_DIR by BUILD_DIR
* target/device/Config.in
- Do not include project/Config.in anymore
* target/linux/Makefile.in.advanced
- Replace PROJECT_BUILD_DIR by BUILD_DIR
- Store the stamps file in $(STAMP_DIR) instead of
$(PROJECT_BUILD_DIR)/autotools-stamps
* target/u-boot/Makefile.in
- Replace PROJECT_BUILD_DIR by BUILD_DIR
- Remove $(PROJECT) from the U-Boot target binary name
- Remove the insertion in the configuration of the project name as
the hostname
- The u-boot-autoscript target now generates
$(U_BOOT_AUTOSCRIPT).img instead of
$(U_BOOT_AUTOSCRIPT).$(PROJECT)
* toolchain/gcc/gcc-uclibc-3.x.mk
toolchain/gcc/gcc-uclibc-4.x.mk
- Move the stamps files to $(STAMP_DIR)
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
The directory argument was introduced to support packages in
subdirectories of package/ several months ago.
Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
|
|
This ensures that the correct build tools are found rather than the host
versions (glib-genmarshal, ..)
|
|
As requested on irc.
|
|
|
|
|
|
:= causes the function parameters to get evaluated at definition time
instead of implementation time, which is kind of silly for a function.
Fixes make source-check / external-deps
|
|
This is the long requested backup mirror support. So far only enabled
for Makefile.autotools.in, but there's no reason why we cannot use
DOWNLOAD everywhere.
Notice, I'm still syncing http://buildroot.uclibc.org/downloads/sources/
|
|
Simply set SHELL to bash instead of adding CONFIG_SHELL to all shell
invocations. CONFIG_SHELL is still set, as it is used by kconfig.
|
|
|
|
The following changes allow for use of a central configure cache
file. This speeds up configuration of packages.
Its use is configurable at the top level (BR2_CONFIG_CACHE - default n).
Old style makefiles can use it if they use the following MACRO in makefiles:
$(AUTO_CONFIGURE_TARGET) see my change to directfb.mk.
New style Autotools.in will use it if you set the global option.
However you can enable the global option and on a per package overrule it by doing
the following: $(PKGNAME)_USE_CONFIG_CACHE = NO see fontconfig.mk for an example
of this.
Finally I have removed a few config variable settings which indicated no CXX compiler
as this is wrong and breaks the build when using this central cache.
Config.in | 8 ++++++++
package/Makefile.autotools.in | 5 ++++-
package/Makefile.in | 28 +++++++++++++++++++++++++++-
package/atk/atk.mk | 2 +-
package/directfb/directfb.mk | 7 +------
package/fontconfig/fontconfig.mk | 3 +++
package/libglib2/libglib2.mk | 2 +-
package/libgtk2/libgtk2.mk | 1 -
8 files changed, 45 insertions(+), 11 deletions(-)
I would appreciate feedback on this change (I have been testing for 2-3 weeks)
But I can never test all cases! If you enable the BR2_CONFIG_CACHE option some
Makefile.autotools.in based packages may now break - I cannot build them all.
In this case you may need to remove config options that are being hardcoded all
over the place (like gtk saying we have 2 CXX compiler) or disable the use
of CONFIG CACHE file like I have done in fontconfig.
I can build all packages required to get WebKit on DirectFB up and running
and it runs fine.
I will try to resolve any issues this creates as fast as I can.
Signed-off-by: Daniel Laird <daniel.j.laird@nxp.com>
|
|
The following patch makes the MESSAGE Macro in Makefile.autotools.in
work.
I think it was originally intended to print the messages in bold type
but it doesn't appear to work correctly. This patch should work on all
platforms.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
(Fixed to not continously call tput)
|
|
This patch will create the autotools-stamps directory early in the build
process, thus making it possible for non Makefile.autotools.in packages to use
this directory to hold stamp files.
Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
|
|
A lot of tools take a -q option to be quiet.
Set this if make is called with the -s (silent) option and use for
wget, git, svn and configure.
|
|
Some packages' install-strip target install quite big documentation,
so create an option to remove it similar to the existing man/info options.
|
|
|
|
Don't use recursively expanded definition
(Use ':=' instead of '=')
|
|
-Make tar switches 1.14 compatible
(Not sure of a more elegant way to handle this ... ?)
|
|
Minor fix for Makefile.autotools.in that deals with the packages
that use AUTOCONF to regenerate configure etc.
(my mistake to start with)
Daniel Laird
|
|
1. I added a HOOK_POST_EXTRACT previously so that I could cope with the
bad libxml2 package. This required me to remove some dead patches
(.rej) files after I extracted the package, the issue is that the
EXTRACT target runs patch-kernel.sh to patch the ltmain.sh.
It then finds some.rej files and bombs out.
I have altered the sequence so that the HOOK_POST_EXTRACT target runs
before the make target that patches libtool to deal with this.
2.) I have added a $(PKG)_LIBTOOL_PATCH variable. This is defaulted to
YES however if you override it in the package makefile to NO then the
ltmain.sh file will not be patched automatically but only if you have
added your own patches.
This is necessary for freetype 2.3.7 as it cannot use the
buildroot-libtool patch.
I am using this patch for building a set of packages, however it
is not a complete set of packages so await feedback of issues (if any)
Daniel Laird
|
|
DESTDIR per default points to TARGET_DIR / STAGING_DIR without /usr
appended.
|
|
It defaults to TARGET_DIR, not STAGING_DIR.
|
|
$(PROJECT_BUILD_DIR)/autotools-stamps. Without this, autotools-using
packages won't be installed into any other projects than the first.
|
|
duplicating its actions
|
|
|
|
so that those actions will do something if executed again.
|
|
It is not possible currently in Makefile.autotools.in packages
to do something extra after an extract or configure.
This may be useful for example
extract libxml2-2.6.32
POST_EXTRACT = remove some .rej files that are in offical release
patch (not fail because of remaining .rej files)
configure
I think this is useful improvement
(necessary for Makefile.autotools.in packages)
Daniel Laird
|
|
Patch by Wade Berrier.
|
|
The silent support added in r23041 was missing a shell continuation character
breaking PKG_CONF_OPT support - Fixed.
|
|
|
|
Use --quiet configure argument when make is invoked with the -s (silent)
option.
|
|
|
|
for i in `find -name 'Config*' -o -name 'Makefile*' -o -name '*.mk'`;
do
sed -i 's/ \+$//' $i;
done
|
|
The MAKELEVEL test is not that robust; It fails with the recent log
support or if buildroot is driven from an external Makefile.
Rework it to instead detect source-check/external-deps by the fact that
they set SPIDER.
|
|
Ulfs r22659 commit broke make source-check/external deps, so reverting it.
|
|
|
|
Handling source/source-check/external-deps together doesn't work, as
wget will then download the sources every time make source is called
even if it's available in DL_DIR
Instead detect source-check/external-deps from MAKELEVEL.
Support downloadable package patches in source-check/external-deps
while we're at it.
|
|
|
|
Empty strings gets defined to "", so check for that instead of if
the variable is defined.
|
|
|
|
|
|
ports mirrors (like: ftp2.uk.freebsd.org/pub/FreeBSD/ports/distfiles) are a good place to find almost all of the source packages.
|
|
to patch libtool automatically.
|
|
|
|
|
|
|
|
|
|
|