aboutsummaryrefslogtreecommitdiff
path: root/package/pkg-autotools.mk
Commit message (Collapse)AuthorAgeFilesLines
* Apply --disable-gtk-doc-html to all packagesGravatar Bernd Kuhls2015-02-031-0/+2
| | | | | | | | Move this option to package/pkg-autotools.mk so it applies to all packages. Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: fix patching libtool for version 2.4Gravatar Yann E. MORIN2015-02-011-1/+1
| | | | | | | | | | | | | | | | | | If the libtool used by the package is 2.4 (i.e. with no patchlevel), we end up with a confusing message: /bin/sh: line 0: test: -gt: unary operator expected That's because patchlevel is empty, and thus there is nothing to comapre to 2, and test complains. Fake a patchlevel of 0 (which is really what a missing patchlevel means anyway) in that case. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Peter Korsgaard <jacmet@uclibc.org> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* support/libtool: add patch for newer versionsGravatar Gustavo Zacarias2014-12-211-1/+7
| | | | | | | | | | | | Add patch to support newer (>2.4.2) versions. Adjust patch logic to check for patchlevel greater than 2 (apply new patch) or not (apply current patch). Some people/distributions used unreleased versions, with the string being 2.4.2.x, this packages are AUTORECONFed and have to be kept like this since the up-to-2.4.2 patch doesn't work, neither does the from-2.4.3 version patch. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: only apply libtool patch at the right momentGravatar Yann E. MORIN2014-11-221-5/+9
| | | | | | | | | | | | | | | | | | | | | | Currently, we apply the libtool patch at post-patch time, always. If we need to autoreconf, we also apply it after autoreconf is done. Obviously, in that second case, we do not need to apply it at post-patch time. This has no impact on the result, as autoreconf will overwrite the just patched files, and they will be patched yet again. But it is not nice to the user that will see a double "Patching libtool" message. So, we apply the libtool patch at post-patch time only if we are not autoreconfiguring the package. [Thomas: fix minor typo s/casse/case/ in the commit log.] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Johan Oudinet <johan.oudinet@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: fold the libtool patching code directly into the hookGravatar Yann E. MORIN2014-11-221-22/+12
| | | | | | | | | | | | | | We now have only one caller of the libtool patching code, which is the hook itself. So, there is no longer any need to extract this code into a utility function, and it can be folded into the hook itself. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Johan Oudinet <johan.oudinet@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: remove redundant shell conditionalGravatar Yann E. MORIN2014-11-221-13/+11
| | | | | | | | | | | | | | The libtool patching function checks whether patching libtool is wanted before doing the actual patching. This is redundant now, as all callers are now protected by a conditional block. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Johan Oudinet <johan.oudinet@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: move the libtool patching call out of the autoreconf hookGravatar Johan Oudinet2014-11-221-1/+4
| | | | | | | | | | | | | | | Call it as a standalone hook, like is done for post-patch. [Thomas: change back the author to Johan. Yann mistakenly changed it when submitting the patch series.] Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com> [yann.morin.1998@free.fr: split the patch into semantically separate patches] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: commonalise the libtool patching codeGravatar Johan Oudinet2014-11-221-28/+25
| | | | | | | | | | | | | | | | | | Currently, the heuristic to patch libtool scripts is duplicated both in the libtool post-patch hook and the autoreconf pre-configure hook. Move that code into a single function that gets called from both hooks. [Thomas: change back the author to Johan. Yann mistakenly changed it when submitting the patch series.] Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com> [yann.morin.1998@free.fr: split the patch into semantically separate patches] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: re-order cleaning up the host dependenciesGravatar Yann E. MORIN2014-11-221-9/+8
| | | | | | | | | | | Move the host dependencies cleanup out from in-between all the hooks, so it is easier to see how the hooks all work together. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Johan Oudinet <johan.oudinet@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: move common macrosGravatar Johan Oudinet2014-11-221-58/+58
| | | | | | | | | | | | | | | | | | | | | | | | | Currently, the common macros used for the various hooks are defined for each and every autotools packages, even though the macros are completely generic. Besides being completely useless, it tends to slow down make, as the variables are redefined over and over again. Move their definitions out of inner-autotools-package. Note: we remove the double-$ because we no longer are in a define-in-a-define block, just a define block. [Thomas: change back the author to Johan. Yann mistakenly changed it when submitting the patch series.] Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com> [yann.morin.1998@free.fr: split the patch into semantically separate patches] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package: indentation cleanupGravatar Jerzy Grzegorek2014-10-261-3/+3
| | | | | Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* apply-patches.sh: Use the "APPLY_PATCHES" variable to call the scriptGravatar Fabio Porcedda2014-10-251-6/+6
| | | | | | | | | | To easy up adding optional parameters when calling the "apply-patches.sh" add and use the "APPLY_PATCHES" variable to execute the script. Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* infra: Move --enable/--disable-debug to package/Makefile.inGravatar Bernd Kuhls2014-10-191-0/+2
| | | | | | | | | | | | A lot of packages ignored BR2_ENABLE_DEBUG. This patch simplifies the handling of this option by adding the corresponding configure option to the global Makefile for target packages. For host packages --disable-debug is added to the global Makefile. Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/pkg-autotools.mk: set --localstatedir=/var by defaultGravatar Jörg Krause2014-10-181-0/+2
| | | | | | | | | | | | | | | `localstatedir` is a common autoconf variable like prefix and sysconfdir. At this time 25 autotools and one generic package uses this Makefile variable. 22 of the autotools packages use --localstatedir=/var, the remaining use custom settings. Setting `localstatedir` to /var is consistent with the Filesystem Hierarchy Standard (FHS). So it's time to move it as a common definition in the autotools infrastructure. Signed-off-by: Jörg Krause <jkrause@posteo.de> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: rename FOO_GETTEXTIZE_OPT into FOO_GETTEXTIZE_OPTSGravatar Thomas De Schampheleire2014-10-041-2/+2
| | | | | | | | | | | | To be consistent with the recent change of FOO_MAKE_OPT into FOO_MAKE_OPTS, make the same change for FOO_GETTEXTIZE_OPT. Sed command used: find * -type f | xargs sed -i 's#_GETTEXTIZE_OPT\>#&S#g' Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: rename FOO_CONF_OPT into FOO_CONF_OPTSGravatar Thomas De Schampheleire2014-10-041-3/+3
| | | | | | | | | | | | To be consistent with the recent change of FOO_MAKE_OPT into FOO_MAKE_OPTS, make the same change for FOO_CONF_OPT. Sed command used: find * -type f | xargs sed -i 's#_CONF_OPT\>#&S#g' Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: rename FOO_AUTORECONF_OPT into FOO_AUTORECONF_OPTSGravatar Thomas De Schampheleire2014-10-041-2/+2
| | | | | | | | | | | | To be consistent with the recent change of FOO_MAKE_OPT into FOO_MAKE_OPTS, make the same change for FOO_AUTORECONF_OPT. Sed command used: find * -type f | xargs sed -i 's#_AUTORECONF_OPT\>#&S#g' Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: rename FOO_INSTALL_STAGING_OPT into FOO_INSTALL_STAGING_OPTSGravatar Thomas De Schampheleire2014-10-041-2/+2
| | | | | | | | | | | | To be consistent with the recent change of FOO_MAKE_OPT into FOO_MAKE_OPTS, make the same change for FOO_INSTALL_STAGING_OPT. Sed command used: find * -type f | xargs sed -i 's#_INSTALL_STAGING_OPT\>#&S#g' Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: rename FOO_INSTALL_TARGET_OPT into FOO_INSTALL_TARGET_OPTSGravatar Thomas De Schampheleire2014-10-041-2/+2
| | | | | | | | | | | | To be consistent with the recent change of FOO_MAKE_OPT into FOO_MAKE_OPTS, make the same change for FOO_INSTALL_TARGET_OPT. Sed command used: find * -type f | xargs sed -i 's#_INSTALL_TARGET_OPT\>#&S#g' Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: rename FOO_INSTALL_OPT into FOO_INSTALL_OPTSGravatar Thomas De Schampheleire2014-10-041-2/+2
| | | | | | | | | | | | To be consistent with the recent change of FOO_MAKE_OPT into FOO_MAKE_OPTS, make the same change for FOO_INSTALL_OPT. Sed command used: find * -type f | xargs sed -i 's#_INSTALL_OPT\>#&S#g' Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: rename FOO_MAKE_OPT into FOO_MAKE_OPTSGravatar Thomas De Schampheleire2014-10-041-3/+3
| | | | | | | | | | | | | | | | | | | | | While the autotools infrastructure was using FOO_MAKE_OPT, generic packages were typically using FOO_MAKE_OPTS. This inconsistency becomes a problem when a new infrastructure is introduced that wants to make use of FOO_MAKE_OPT(S), and can live alongside either generic-package or autotools-package. The new infrastructure will have to choose between either OPT or OPTS, and thus rule out transparent usage by respectively generic packages or generic packages. An example of such an infrastructure is kconfig-package, which provides kconfig-related make targets. The OPTS variant is more logical, as there are typically multiple options. This patch renames all occurrences of FOO_MAKE_OPT in FOO_MAKE_OPTS. Sed command used: find * -type f | xargs sed -i 's#_MAKE_OPT\>#&S#g' Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* package/pkg-autotools: don't use config.site when cross-compilingGravatar Romain Naour2014-09-151-0/+2
| | | | | | | | | | | | | | | | | | | On fedora 20 64bits host, the file /usr/share/config.site contains a fix for installing libraries into /lib/lib64 on 64bits systems that redefine libdir in the generated Makefile For safety and avoid the bug #7262 [1], disable loading this file when running the configure script for the target and the host. Note: configure scripts generated with autoconf < 2.65 will source the /dev/null and print this line: "configure: loading site script /dev/null" [1]: https://bugs.busybox.net/show_bug.cgi?id=7262 Signed-off-by: Romain Naour <romain.naour@openwide.fr> Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* pkg-autotools: use --disable-dependency-trackingGravatar Thomas Petazzoni2014-08-291-0/+2
| | | | | | | | | | | | | | | | | | | | By default, automake does "dependency tracking", which allows the generated Makefile to contain the necessary dependencies to automatically rebuild the appropriate C files when included header files are changed. This dependency tracking is nice when doing active development on the package, but not really useful when doing a one-time build of the package. According to automake's documentation[1], disabling the dependency tracking provides a small speed-up. In some very unscientific measurements (i.e repeated only once), we have noticed a ~3.6% reduction of the total build time of a Buildroot toolchain after applying this patch. [1] http://www.gnu.org/software/automake/manual/html_node/Dependency-Tracking.html Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* trivial: fix typo 'informations'Gravatar Thomas De Schampheleire2014-07-241-1/+1
| | | | | | | | | | | In English, unlike in French, almost all usages of the word 'information' are uncountable, meaning that 'informations' is invalid. This patch fixes this typo throughout the tree, except in CHANGES and docs/news.html (historic text). Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* trivial: fix typo 'an host'Gravatar Thomas De Schampheleire2014-07-241-1/+1
| | | | | | | | In English, unlike in French, the 'h' in 'host' is pronounced, meaning that the article should be 'a' instead of 'an'. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: add support for <pkg>_AUTORECONF_ENVGravatar Rick Taylor2014-07-231-1/+1
| | | | | | | | | | | | | This commit improves the autotools-package infrastructure to support a <pkg>_AUTORECONF_ENV variable, which allows a package maintainer to pass additional variables in the environment of the autoreconf execution. This is useful in the situation where configure.ac contains shell commands using environment variables that are only executed when autoreconf is run. Signed-off-by: Rick Taylor <rick.taylor@cassidian.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* infra/pkg-autotools: cleanup the gettextize stepGravatar Yann E. MORIN2014-07-191-7/+3
| | | | | | | | | | | | | | | | | | | | Align the way we call gettextize to the way we call autoreconf: - provide the $(GETTEXTIZE) variable - pass $(HOST_CONFIGURE_OPTS) in the environment - pass the fully-qualified path to autom4te - use of -f even if the package provides its own options Some eye-candy in the output of gettextize. Thanks to Gustavo for pointing out the discrepancy between the way we call gettextize and the way we call autoreconf, and to Thomas for the live debug session. ;-) Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Gustavo Zacarias <gustavo@zacarias.com.ar> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: fix bad GETTEXTIZE_OPT assignmentGravatar Gustavo Zacarias2014-07-171-1/+1
| | | | | | | | | HOST_PKG_GETTEXTIZE_OPT should get assigned PKG_GETTEXTIZE_OPT and not PKG_GETTEXTIZE. Fixes: http://autobuild.buildroot.net/results/087/087e860173069f58fa9ceb2460d7455d31b2dff8/ Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: add support to gettextize a packageGravatar Yann E. MORIN2014-07-171-2/+31
| | | | | | | | | | | | | | | | | | In case a package comes with a gettext infra which is different from the one Buildroot provides, we'd get autoreconf errors, like: http://autobuild.buildroot.net/results/c0f/c0f7c801f61fdc310cde64342060b00a70155431/ To avoid that, we need to gettextize the package prior to running autoreconf. Provide the necessary infrastructure in the autotools infrastructure, so we can do it consistently across packages. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Gustavo Zacarias <gustavo@zacarias.com.ar> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* infra: fix autotools .la fixing when no .la files are presentGravatar Thomas De Schampheleire2014-07-061-1/+1
| | | | | | | | | | | | | | | | | Commit 6f638ea9c9c7bacc646430a74ad3dd2740eae676 ("infra: /usr support: STAGING_DIR can be outside BASE_DIR") changed a for-construct around 'sed -i' in a 'find | xargs sed -i'. However, if the find returns no results, sed complains with: '/bin/sed: no input files' This commit adds the extra parameter -r / --no-run-if-empty to the xargs call, effectively fixing this problem case. Reported-by: Rohit Kumar <rkthebest@gmail.com> Fix-suggested-by: Yann E. MORIN <yann.morin.1998@free.fr> Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* infra: /usr support: STAGING_DIR can be outside BASE_DIRGravatar Thomas De Schampheleire2014-07-041-11/+12
| | | | | | | | | | | | | If the user sets a custom BR2_HOST_DIR, then STAGING_DIR is not under BASE_DIR. The .pc/.la file fixup commands incorrectly made this assumption and thus should be corrected. Additionally, this patch: - rewords the comment in pkg-autotools that explains the replacements. - removes a for statement in favor of xargs Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* infra: support buildroot being located in /usrGravatar Thomas De Schampheleire2014-06-291-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | | pkg-generic and pkg-autotools both perform sed replacements of /usr to $(STAGING_DIR)/usr, in .pc and .la files respectively. However, if buildroot itself is located in /usr, then STAGING_DIR also starts with /usr, and naive replacements of '/usr' can result in paths of the form: /usr/buildroot/.../sysroot/usr/buildroot/.../sysroot/... This patch makes the replacements more careful, by first replacing the known paths BASE_DIR and STAGING_DIR to tokens, then performing the actual replacement, and finally replacing the tokens with the corresponding paths. Additionally it removes the unnecessary making of a backup copy in pkg-autotools. Partially fixes bug #5750 (https://bugs.busybox.net/show_bug.cgi?id=5750) [Thomas: improve pkg-autotools.mk by including the explanation comment proposed by Arnout.] Partially-based-on-a-patch-from: Ben Stoltz <benstoltz@gmail.com> Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* infra: consistently use double dollar signs inside inner-xxx-targetsGravatar Thomas De Schampheleire2014-06-141-13/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The inner-xxx-targets in the buildroot package infrastructures are evaluated using $(eval) which causes variable references to be a bit different than in regular make code. As we want most references to be expanded only at the time of the $(eval) we should not use standard references $(VAR) but rather use double dollar signs $$(VAR). This includes function references like $(call), $(subst), etc. The only exception is the reference to pkgdir/pkgname and numbered variables, which are parameters to the inner block: $(1), $(2), etc. This patch introduces consistent usage of double-dollar signs throughout the different inner-xxx-targets blocks. In some cases, this would potentially cause circular references, in particular when the value of HOST_FOO_VAR would be obtained from the corresponding FOO_VAR if HOST_FOO_VAR is not defined. In these cases, a test is added to check for a host package (the only case where such constructions are relevant; these are not circular). Benefits of these changes are: - behavior of variables is now again as expected. For example, setting $(2)_VERSION = virtual in pkg-virtual.mk will effectively work, while originally it would cause very odd results. - The output of 'make printvars' is now much more useful. This target shows the value of all variables, and the expression that led to that value. However, if the expression was coming from an inner-xxx-targets block, and was using single dollar signs, it would show in printvars as VAR = value (value) while if double dollar signs are used, it would effectively look like VAR = value (actual expression) as is intended. This improvement is for example effective for FOO_DL_VERSION, FOO_RAWNAME, FOO_SITE_METHOD and FOO_MAKE. The correctness of this patch has been verified using 'make printvars', 'make manual' and 'make legal-info' before and after applying this patch, and comparing the output. Insight-provided-by: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* pkg-autotools: add a AUTOCONF_AC_CHECK_FILE_VAL macroGravatar Thomas Petazzoni2014-03-211-0/+10
| | | | | | | | | | | | | | | | | When configure.ac scripts do AC_CHECK_FILE tests, they always fail in cross-compilation contexts because it is not possible to check for file existence during the build process. Therefore we have to preseed the configure environment with ac_cv_file_<foo>=yes variable, <foo> being the path of the file, where all slashes, dots or dashes have been replaced by underscores. In the context of the boot-wrapper-aarch64, we will have to use three of these variables, with fairly complex paths. So instead of replicating the logic each time, we create a AUTOCONF_AC_CHECK_FILE_VAL macro to help defining such variables. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* package: add toolchain dependency to every target packageGravatar Fabio Porcedda2014-02-141-1/+2
| | | | | | | | | | | | | | | | | | | | | This commit makes the dependency from the target toolchain explicit. This way we can buid from command line a package that use inner-generic-package right after the configuration phase, example: make clean <package-name> Also remove TARGETS_ALL because the only purpose was to add toolchain dependency so it's superseded by this commit. To prevent circular dependency add the new variable <pkgname>_ADD_TOOLCHAIN_DEPENDENCY to avoid adding the toolchain dependency for toolchain packages. This is also a step forward supporting top-level parallel make. Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* pkg-autotools: fixup pkg_CONFIGURE_CMDS after DISABLE_DOCUMENTATION removalGravatar Peter Korsgaard2014-02-091-1/+1
| | | | Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* infra: remove separate definition of DISABLE_DOCUMENTATIONGravatar Thomas De Schampheleire2014-02-081-1/+6
| | | | | | | | | Since we now always disable documentation on target, there is no need to have a separate variable DISABLE_DOCUMENTATION anymore. Suggested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* infra: remove unused 4th parameter to package infrastructures (pkgparentdir)Gravatar Thomas De Schampheleire2014-02-051-7/+6
| | | | | | | | | | The fourth parameter to inner-generic-package is no longer used. Removing this parameters requires renaming all usages of $(5) to $(4), and updating the calls to inner-generic-package (and equivalent for the other package infrastructures). Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* infra: remove redundant $(call) on pkgdir, pkgname, pkgparentdirGravatar Thomas De Schampheleire2014-02-051-2/+2
| | | | | | | | | | When calling make 'functions', the $(call) keyword is only needed if the function takes arguments. For pkgdir, pkgname and pkgparentdir this is not the case, so we can remove the call to make things more readable. Suggested-by: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* infra: remove package clean commandsGravatar Thomas De Schampheleire2013-12-081-11/+0
| | | | | Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* infra: remove uninstall commandsGravatar Thomas De Schampheleire2013-12-061-25/+0
| | | | | Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* pkg-autotools.mk: default host AUTORECONF{,_OPT} to the target valuesGravatar Peter Korsgaard2013-10-021-2/+9
| | | | | | | | | | | | | When we have patches touching configure.ac and hence need to set <pkg>_AUTORECONF = YES we also have to remember to set HOST_<pkg>_AUTORECONF = YES if we build both host and target versions, which is often forgotten (latest case was bison). Fix it by making the host versions of _AUTORECONF and _AUTORECONF_OPT default to whatever the target versions are set to, similar to how we handle a number of the other variables. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* pkg-autotools.mk: also use QUIET for host configure runsGravatar Peter Korsgaard2013-07-171-1/+1
| | | | | | Similar to how we do it for target configure runs. For make -s invocations. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* package: allow to override the make install target for host packagesGravatar Thomas Petazzoni2013-07-031-1/+2
| | | | | | | | | In order to convert gcc to the package infrastructure, we need a way of overriding the name of the make target used for the installation of host packages, just like we have for target packages. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Fix autoreconf libtool patchingGravatar przemyslaw2013-03-241-1/+2
| | | | | | | | | Some ltmain.sh files enclose the version number in quotes. This is already handled corretly by pkg-autotools.mk in LIBTOOL_PATCH_HOOK. This patch adds the same fix for AUTORECONF_HOOK. Signed-off-by: przemyslaw <przemyslaw.wrzos@calyptech.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-autotools.mk: remove extra space from config-update messageGravatar Danomi Manchego2013-03-181-1/+1
| | | | | | | | | | | | | | | | | If you do a "make -s", you will notice that the UPDATE_CONFIG_HOOK message has an extra space compared to other highlighted messages.  For example: >>> util-linux 2.20.1  Updating config.sub and config.guess >>> util-linux 2.20.1 Patching libtool >>> util-linux 2.20.1 Autoreconfiguring A grep shows this is the only instance of the extra space. This patch removes the extra space. Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-infra: pass --disable-doc if documentation is not enabledGravatar Arnout Vandecappelle2012-12-121-0/+9
| | | | | | | | | | | | | | | | Many configure scripts support an option like --disable-doc, --disable-docs or --disable-documentation. Pass all of these to configure. In addition, not all Xorg packages accept the --disable-xxx. Instead they look for xmlto and/or fop and build documentation if they exist. For host packages, this may lead to build errors because /usr/bin/xmlto uses libxml2 and we set LD_LIBRARY_PATH to point to $(HOST_DIR)/lib, which may contain a libxml2 as well. So it's essential to disable xmlto for host packages. Also some whitespace cleanup. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-*targets.mk: factorize and fix $(PKG)_SRCDIR and $(PKG)_BUILDDIR declarationGravatar Samuel Martin2012-07-221-10/+0
| | | | | Signed-off-by: Samuel Martin <s.martin49@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Clean up naming of old GENTARGETS infrastructureGravatar Arnout Vandecappelle (Essensium/Mind)2012-07-171-0/+307
With the renaming of XXXTARGETS to xxx-package, the names of the pkg-xxx.mk files is inconsistent, as well as some internal names in the documentation. These inconsistencies are cleaned up here. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> ...kages-autotargets.txt => adding-packages-autotools.txt} | 4 ++-- ...packages-cmaketargets.txt => adding-packages-cmake.txt} | 4 ++-- docs/manual/adding-packages-directory.txt | 12 ++++++------ ...packages-gentargets.txt => adding-packages-generic.txt} | 4 ++-- docs/manual/adding-packages.txt | 6 +++--- package/Makefile.in | 6 +++--- package/{pkg-autotargets.mk => pkg-autotools.mk} | 0 package/{pkg-cmaketargets.mk => pkg-cmake.mk} | 0 package/{pkg-gentargets.mk => pkg-generic.mk} | 0 9 files changed, 18 insertions(+), 18 deletions(-) Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>