Commit Graph

47 Commits

Author SHA1 Message Date
Thomas Petazzoni 665e13c85e Rename BR2_PREFER_STATIC_LIB to BR2_STATIC_LIBS
Since a while, the semantic of BR2_PREFER_STATIC_LIB has been changed
from "prefer static libraries when possible" to "use only static
libraries". The former semantic didn't make much sense, since the user
had absolutely no control/idea of which package would use static
libraries, and which packages would not. Therefore, for quite some
time, we have been starting to enforce that BR2_PREFER_STATIC_LIB
should really build everything with static libraries.

As a consequence, this patch renames BR2_PREFER_STATIC_LIB to
BR2_STATIC_LIBS, and adjust the Config.in option accordingly.

This also helps preparing the addition of other options to select
shared, shared+static or just static.

Note that we have verified that this commit can be reproduced by
simply doing a global rename of BR2_PREFER_STATIC_LIB to
BR2_STATIC_LIBS plus adding BR2_PREFER_STATIC_LIB to Config.in.legacy.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2014-12-11 22:48:13 +01:00
Francois Perrad 530f12d29d perl-cross: bump to version 0.9.4
this release fixes the build when BR2_PREFER_STATIC_LIB
see http://autobuild.buildroot.net/results/057/057a4b9976fd6b9c5cddd117a3f29de51efe719f/build-end.log
see https://github.com/arsv/perl-cross/issues/11

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-11-18 23:45:06 +01:00
Jerzy Grzegorek df2857de49 package: indentation cleanup
Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-10-25 10:38:25 +02:00
Francois Perrad 43aaa9c05c host-perl: fix dependencies
see autobuilder
http://autobuild.buildroot.net/results/5557b262bfc344700ed04563a40f10bc2a23eb31/
http://autobuild.buildroot.net/results/8b22b950ba9d1635991a97e477ad5268f08b4004/

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-20 09:52:27 +02:00
Francois Perrad 547d0e1607 perl-cross: bump to version 0.9.3
this version fixes the issue with big endian,
see https://github.com/arsv/perl-cross/issues/10

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-17 14:17:48 +02:00
Francois Perrad dfb40e9446 perl: remove useless hacks
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-17 14:17:48 +02:00
Francois Perrad 43f69458ae perl: add host variant
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-17 14:17:48 +02:00
Thomas De Schampheleire f268f7131b .mk files: bulk aligment and whitespace cleanup of assignments
The Buildroot coding style defines one space around make assignments and
does not align the assignment symbols.

This patch does a bulk fix of offending packages. The package
infrastructures (or more in general assignments to calculated variable
names, like $(2)_FOO) are not touched.

Alignment of line continuation characters (\) is kept as-is.

The sed command used to do this replacement is:
find * -name "*.mk" | xargs sed -i \
    -e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\s*$#\1 \2#'
    -e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\s*\([^\\]\+\)$#\1 \2 \3#'
    -e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\s*\([^\\ \t]\+\s*\\\)\s*$#\1 \2 \3#'
    -e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\(\s*\\\)#\1 \2\3#'

Brief explanation of this command:
    ^\([A-Z0-9a-z_]\+\)     a regular variable at the beginning of the line
    \([?:+]\?=\)            any assignment character =, :=, ?=, +=
    \([^\\]\+\)             any string not containing a line continuation
    \([^\\ \t]\+\s*\\\)     string, optional whitespace, followed by a
                            line continuation character
    \(\s*\\\)               optional whitespace, followed by a line
                            continuation character

Hence, the first subexpression handles empty assignments, the second
handles regular assignments, the third handles regular assignments with
line continuation, and the fourth empty assignments with line
continuation.

This expression was tested on following test text: (initial tab not
included)

	FOO     = spaces before
	FOO     =   spaces before and after
	FOO	= tab before
	FOO	  = tab and spaces before
	FOO =	tab after
	FOO =	   tab and spaces after
	FOO =   	spaces and tab after
	FOO =    \
	FOO = bar \
	FOO = bar space    \
	FOO   =		   \
	GENIMAGE_DEPENDENCIES   = host-pkgconf libconfuse
	FOO     += spaces before
	FOO     ?=   spaces before and after
	FOO     :=
	FOO     =
	FOO	=
	FOO	  =
	FOO =
	   $(MAKE1) CROSS_COMPILE=$(TARGET_CROSS) -C
	AT91BOOTSTRAP3_DEFCONFIG = \
	AXEL_DISABLE_I18N=--i18n=0

After this bulk change, following manual fixups were done:
- fix line continuation alignment in cegui06 and spice (the sed
  expression leaves the number of whitespace between the value and line
  continuation character intact, but the whitespace before that could have
  changed, causing misalignment.
- qt5base was reverted, as this package uses extensive alignment which
  actually makes the code more readable.

Finally, the end result was manually reviewed.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Cc: Yann E. Morin <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-07 15:00:28 +02:00
Francois Perrad 4daf09bff1 perl: fix build on big endian arch
see http://autobuild.buildroot.org/results/3a1/3a1c2f0bc802d3cec26ffd4ded8f5c04473a3d4b/build-end.log

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-10-05 13:45:46 +02:00
Thomas De Schampheleire aaffd209fa packages: rename FOO_CONF_OPT into FOO_CONF_OPTS
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>
2014-10-04 18:54:16 +02:00
Francois Perrad f7ef4c2ed4 perl: bump to version 5.20.1
[Peter: squash 'add hash' patch into it]
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-02 21:03:31 +02:00
Francois Perrad 39fadc2863 perl: fix build of native modules
CORE/vutil.h is required when the host perl version is 5.20
see http://autobuild.buildroot.net/results/c3d/c3d48c3b3d6c1e616d8e20a2f65d8ba33abe61da/

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-09-21 21:28:59 +02:00
Francois Perrad d70f19ee93 perl: fix warnings at runtime
autosplit.ix files are used by AutoLoader.pm

    Can't locate auto/Net/SSLeay/autosplit.ix in @INC (@INC contains: /usr/lib/perl5/site_perl/5.18.2/arm-linux /usr/lib/perl5/site_perl/5.18.2 /usr/lib/perl5/5.18.2/arm-linux /usr/lib/perl5/5.18.2 .) at /usr/lib/perl5/5.18.2/AutoLoader.pm line 181.
     at /usr/lib/perl5/site_perl/5.18.2/arm-linux/Net/SSLeay.pm line 24.

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-08-11 23:01:38 +02:00
Francois Perrad 4387568bbf perl: refactor with TARGET_FINALIZE_HOOKS
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-07-29 20:22:37 +02:00
Francois Perrad 353e223d14 perl: handle BR2_PREFER_STATIC_LIB
[Thomas: fix commit title, use one line for both CONF_OPT options.]

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-07-28 22:29:09 +02:00
Francois Perrad 63d0d8040a perl-net-ssleay: fix build
cc_runtime.h is present in old perl distribution
see http://autobuild.buildroot.net/results/6dd/6dd6bf7d0a814aa508062636fd72de1d07c1816a/

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-07-01 15:05:31 +02:00
Francois Perrad d07eddf440 perl-cross: bump to version 0.8.5 and move to github
The perl-cross tarball allows to patch the Perl distribution (in a
_POST_EXTRACT_HOOKS).  The github helper gives a copy of the project which
allows to build this tarball.  So, the github helper can not be used here.

[Peter: mention the change to github]
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-06-11 11:17:32 +02:00
Francois Perrad e037db345e pkg-perl: fix for Perl XS packages configured by Makefile.PL
ExtUtils::MakeMaker adds all the header files used by the perl as
dependencies to the generated Makefile. This means that the generated
Makefile will depend on the system's header files.

Usually this is not a problem, because when building the target package,
these header files will indeed be found in $(STAGING_DIR). However, some
distro's add an extra header file to the system's perl. This header is
also included in the generated Makefile, which makes the build fail
because it doesn't exist in $(STAGING_DIR).

As a work-around, explicitly create this header file in $(STAGING_DIR).
It doesn't hurt to create it even if the system perl doesn't need it.

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-06-11 11:13:22 +02:00
Francois Perrad 18bca3ef24 perl: needs MMU
see build http://autobuild.buildroot.net/results/ba7/ba71d0d532ccd8e16b727cddd5dcaa5521074945/

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-03-08 15:08:24 +01:00
Francois Perrad 7128d249c0 perl: remove PERL_INSTALL_TARGET_GOALS
useless since previous commit (removal of BR2_HAVE_DOCUMENTATION)
see http://git.buildroot.net/buildroot/diff/package/perl/perl.mk?id=7164a32632d14cb83698ddec45e84ad2f3252e9e

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-23 22:33:43 +01:00
Francois Perrad 661fdedef7 perl: remove useless patch
The Perl infrastructure uses a host version of Module-Build
(see previous commit "host-perl-module-build: new package").
The target version is never used, so no need to patch it.

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-10 19:49:43 +01:00
Thomas De Schampheleire 7164a32632 packages: remove support for documentation on target
This patch removes deprecated symbol BR2_HAVE_DOCUMENTATION and all its
usage. Additionally, it removes the now unused BR2_DEPRECATED_SINCE_2012_11.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-08 23:31:21 +01:00
Francois Perrad 1bedb6b30b perl-cross: workaround with PERL5LIB no longer needed
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-08 22:34:32 +01:00
Francois Perrad 542801aca9 perl: bump to version 5.18.2
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-08 22:34:19 +01:00
Thomas De Schampheleire 3d86d29bf0 packages: remove package clean commands
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-12-08 19:42:34 +01:00
Francois Perrad 5a4a11a5d1 perl: fix on uClibc without IPv6 support
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-10-27 11:20:55 +01:00
Francois Perrad a06f31fb64 perl-cross: bump to version 0.8.3
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-10-27 11:06:31 +01:00
Arnout Vandecappelle 83630bc494 perl: fix license info
According to the README, perl can be used either under
Artistic or under GPLv1+ license, so include both.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-10-08 22:40:14 +02:00
Thomas De Schampheleire f8d89f0510 infra: introduce suitable-extractor helper function
In order to simplify determining the right extractor tool for a given
file type, this patch introduces a make function 'suitable-extractor'.
Its usage is $(call suitable-extractor,filename), and it returns the
path to the suitable extractor.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-09-06 23:30:27 +02:00
Francois Perrad f8a9126ded perl: bump to version 5.18.1
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-09-02 21:49:16 +02:00
Francois Perrad d1808f9037 perl-cross: bump to version 0.7.4
since 0.7.3: install paths adjusted to match mainline perl

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-08-10 10:46:23 +02:00
Francois Perrad 2abba11fc3 perl-cross: bump to version 0.7.2
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-07-26 21:06:09 +02:00
Alexandre Belloni 8dfd59d114 Normalize separator size to 80
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-06 22:30:24 +02:00
Shawn J. Goff 1cbffbd015 eliminate double slashes caused by FOO_SITE ending in a slash
When a FOO_SITE variable ends in a slash and gets joined with a
FOO_SOURCE variable like $(FOO_SITE)/$(FOO_SOURCE), the resulting URI
has a double slash. While double-slashes are fine in unix paths, they
are reserved in URIs - the part following '//' must be an authority.

Signed-off-by: Shawn J. Goff <shawn7400@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-04-15 20:33:52 +02:00
Francois Perrad 58917a65dc perl: bump to version 5.16.3
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-03-17 14:36:07 +01:00
Francois Perrad efddfcbe6d perl: refactor configure step
After discussion with Perl-Cross's author (Alex Suykov)

Note: Using -A with variables that aren't option lists makes little sense.

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-12-16 01:09:16 +01:00
Francois Perrad f44221c459 perl: bump to version 5.16.2
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-12-05 08:37:29 -08:00
Francois Perrad 9ba19df16a perl: fix configure step
Configure -A symbol=val generates a extra space in config.sh,
which causes failure like this :
    Building Module-Runtime-0.013
    Unknown OS type ' linux' - using default settings

[Arnout: use -A define:foo instead of patching config.sh]

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-30 12:17:08 -08:00
Arnout Vandecappelle (Essensium/Mind) 92cad6008d perl: remove the double configure hack
configure had to be called twice because with --mode=cross the
miniperl-step failed.  However, just leaving out the --mode parameter
is sufficient to make it work.  Since GNU_TARGET_NAME is always
different from the host's tuple (it has -buildroot- in it), we can
safely assume that the configure script will automatically enter
cross mode.

Also fix a type in perladmin definition.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-30 12:17:03 -08:00
Arnout Vandecappelle (Essensium/Mind) 1a002b5a9d perl: substitute perlcross pod with perl-version-specific pod
As suggested by Dan Pattison at ethertek ca.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-30 12:16:56 -08:00
Arnout Vandecappelle (Essensium/Mind) 74b9fa00ef perl: remove redundant patches
Now we are using perlcross, the patches to make perl work with qemu are
redundant, so remove them.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-30 12:16:52 -08:00
Arnout Vandecappelle 234fe44334 perl: build with perlcross instead of qemu
The perlcross project makes it possible to properly cross-compile
perl.  It creates a host-miniperl that is configured for the target
and uses that to cross-compile the perl modules.

Unfortunately there are still a few hacks needed to make it work.
Proper fixes can be developed and upstreamed later.

Since there is no longer a dependency on qemu, it works on all
architectures again.

Also removed some config options:
- BR2_PACKAGE_PERL_CUSTOM_INSTALL just allows a selection of modules;
this can also be encoded by an empty BR2_PACKAGE_PERL_MODULES.
- BR2_PACKAGE_PERL_DB_FILE and BR2_PACKAGE_PERL_GDBM_FILE can be
derived automatically from the package configs.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-09 10:04:31 +01:00
Francois Perrad 51b5cf20bb cpanminus: new package
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-03 17:07:24 +01:00
Francois Perrad fa3afe2d81 perl: add option "custom install"
allows same behaviour (and footprint) as microperl

Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-03 12:00:38 +01:00
Francois Perrad 1ff20d33e3 perl: add GDBM_File
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-03 11:52:57 +01:00
Francois Perrad df9a5973e9 perl: add DB_File
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-03 11:41:29 +01:00
Francois Perrad 4bb3d3bd1c perl: new package
Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-03 11:23:53 +01:00