Commit Graph

31 Commits

Author SHA1 Message Date
Peter Korsgaard
ee525dc389 beecrypt: arm assembly optimizations needs ARM instructions support
Fixes:
http://autobuild.buildroot.net/results/980/98034ebb086987fb8fc004672164f609f5a69543/
http://autobuild.buildroot.net/results/3bd/3bdba5cf7e901f8600e567b1b0eb0866d6dfc523/

So disable it for thumb(2)-only configurations (armv7m), similar to how we
do it for m68k coldfire.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-06-27 16:33:07 +02:00
Waldemar Brodkorb
a5e57a8b6c beecrypt: fix compile for coldfire
Package uses m68k optimization, which doesn't work with coldfire.
These optimizations are disabled with --enable-debug.

Fixes following autobuild failure:
http://autobuild.buildroot.net/results/bbe57a096de207b78e069591e21ac5a79eab069e/
http://autobuild.buildroot.net/results/ab702e6db382b1975d0cd61feaba9812830e81e8/

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-06-18 23:38:29 +02:00
Thomas Petazzoni
9f99ec21e5 icu: remove BR2_ARCH_HAS_ATOMICS dependency
The BR2_ARCH_HAS_ATOMICS was added because on ARC, atomic instructions
may not be provided by the architecture and therefore the compiler
does not provide the __sync_*() built-ins.

However, since then, icu was changed and is now able to use C++11
atomics, or even no atomic operations at all. In fact, icu will:

 * If possible, it will use C++11 atomics, which internally rely on
   the __atomic built-ins. These are available since gcc 4.7, and all
   architectures provide it. On some architectures, you *must* link
   with libatomic, on some other architectures, they are available
   built-in, but in all cases, linking against libatomic does not
   harm. Thanks to this, even ARC with no atomic support (which was
   the original reason for adding the BR2_ARCH_HAS_ATOMICS) dependency
   builds fine, provided -latomic is added to LIBS.

 * If C++11 atomics are not available, then it falls back to
   __sync_*() built-ins, which allows compilers older than 4.7 to be
   supported.

 * If really no atomic mechanism is available, then it falls back to a
   basic implementation based on a mutex.

Conclusion:

 - The BR2_ARCH_HAS_ATOMICS dependency is no longer needed.

 - We need to link with -latomic when gcc >= 4.7 is used.

Note that reverse dependencies of icu are also changed accordingly.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-01-26 21:26:08 +01:00
Yann E. MORIN
a1c16fb299 package/beecrypt: fix C++ support
C++ support unconditionally needs shared libraries; it uses
dlopen/dlsym.

Also, fix the conditions under which the comment is shown.

Finally, explicitly require C++ support when configuring.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-08-17 22:45:25 +02:00
Peter Korsgaard
298cd8eaa2 package/*: rename patches according to the new policy
Autogenerated from rename-patch.py (http://patchwork.ozlabs.org/patch/403345)

Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2015-02-03 14:52:56 +01:00
Yann E. MORIN
2ced21f8f9 package: add hashes for SourceForge-hosted packages
Since SourceForge sometimes serves us faulty tarballs, we can tons of
autobuild failures:
    http://autobuild.buildroot.org/results/9fb/9fba5bf086a4e7a29e5f7156ec43847db7aacfc4/
    http://autobuild.buildroot.org/results/6c8/6c837b244c45ac3b3a887734a371cd6d226cf216/
    ...

Fix that by adding hash files for all SourceForge-hosted packages (thos
etht did not already have it).

We normally prefer to use hashes published by upstream, but hunting them
all one by one is a tedious task, so those hashes were all locally
computed with a script that searched for SF-hosted packages, downloades
the associated tarball, computed the hash, and stored it in the
corresponding .hash file.

Also, SF publishes sha1 hashes, while I used the stronger sha256, since
sha1 is now considered to be relatively weak.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Cc: Richard Braun <rbraun@sceen.net>
Cc: Nathaniel Roach <nroach44@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-28 22:21:16 +01:00
Jerzy Grzegorek
dd7346f415 package: indentation cleanup
Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-12-22 09:27:37 +01:00
Bernd Kuhls
2717199e13 package/beecrypt: Replace work-around to fix gcc-4.7 compile error
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-10-22 18:00:56 +02:00
Bernd Kuhls
8511314f9b package/beecrypt: Fix build with BR2_ENABLE_DEBUG=yes, no need for expert mode anymore
Fixes
http://autobuild.buildroot.net/results/d32/d326799e9b1a959778be66e36ee78e6891a7b068/
http://autobuild.buildroot.net/results/b35/b353696a01ae85ad0b0c379364aaa9224e0bde42/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-10-22 17:57:12 +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
Yann E. MORIN
19237110da package/icu: use the new ARCH_HAS_ATOMICS as dependency
And propagate to the reverse dependencies of icu.
Also, fix beecrypt's comment: only the C++ support needs atomics.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Anton Kolesov <Anton.Kolesov@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-08-18 10:56:42 +02:00
Anton Kolesov
b7a791a103 icu: Add dependency on atomic intrinsics
ICU requires GCC built-in atomic functions which are architecture specific
and may not be implemented.

Signed-off-by: Anton Kolesov <Anton.Kolesov@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-08-03 11:24:33 +02:00
Arnout Vandecappelle
3fb263f714 beecrypt: make a config option for C++ support
beecrypt used to pull in icu automatically when C++ support was enabled,
but since icu is pretty large and slow, that automatic dependency was
removed.  However, it is not obvious to the user that he should enable
icu in order to get C++ support in beecrypt. Therefore, make the C++
support a user visible config option and mention icu in the help text.

It would also be possible to automatically enable C++ support if icu
happens to be selected for another reason, but that doesn't really seem
to offer an advantage.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-03-26 22:50:24 +01:00
Peter Korsgaard
205839d085 beecrypt: only build C++ support if dependencies are available
Instead of automatically pulling in the (big) icu library if the toolchain
dependencies are available.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-03-26 16:01:32 +01:00
Thomas Petazzoni
8797a8cb58 icu: not available when BR2_BINFMT_FLAT is used
icu does not recognize 'uclinux' as a supported platform. While making
it recognize uclinux is easy, there is another problem down the road:
icu does very weird things to generate an ELF library containing
static data (libicudata.a), and the generated library being ELF, it is
not compatible with the FLAT binary format expected by uclinux
platforms such as Blackfin in FLAT format.

Therefore, we simply disallow the selection of icu on FLAT
platforms.

Note that adding a dependency on BR2_BINFMT_ELF doesn't work, because
BR2_BINFMT_FDPIC is considered to be separate (even if technically
FDPIC is a derivative of ELF). That's why the dependency we're adding
is "depends on !BR2_BINFMT_FLAT" and not "depends on BR2_BINFMT_ELF".

Fixes:

  http://autobuild.buildroot.org/results/b41/b415fed7fae4012bad7d8b53a481bd71bdab716f/build-end.log

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-20 19:06:31 +01:00
Thomas De Schampheleire
cc2c75b0ec beecrypt: unconditionally disable openpm
beecrypt does not properly handle its dependency on openpm, so that
applications using libbeecrypt are not aware that they also need openmp
(libgomp). This causes error messages during linking, such as (rpm):

..-gcc [..] -lbeecrypt  -lbz2 -lz -lpopt -lpthread
libbecrypt.so: undefined reference to `GOMP_sections_end_nowait'
libbecrypt.so: undefined reference to `GOMP_parallel_end'
libbecrypt.so: undefined reference to `GOMP_sections_next'
libbecrypt.so: undefined reference to `GOMP_parallel_sections_start'

Because the openpm dependency of beecrypt is only used by rsa.c, to
parallelize the calculation of RSA cyphers, we can simply disable openmp in
beecrypt instead of trying to fix the way -lgomp is passed.

Fixes http://autobuild.buildroot.net/results/bcf/bcff4b81bfbb1191f97317b0945c74d948c9774b/

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-11-23 00:20:40 +01:00
Thomas De Schampheleire
32d6473ab5 beecrypt: include sequence numbers in patch names
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
[ThomasDS: minor change in commit message]
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-11-23 00:20:30 +01:00
Mischa Jonker
9b6c5e9c98 icu: Doesn't work on ARC yet
icu depends on __sync_sub_and_fetch and other atomic primitives that
don't exist in the ARC toolchain yet.

[Peter: adjust beecrypt/php comment dependency, don't mention atomic builtins]
Signed-off-by: Mischa Jonker <mjonker@synopsys.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-11-11 22:27:25 +01:00
Thomas De Schampheleire
66bb10b7b0 Config.in files: unify comments of toolchain option dependencies
This patch lines up the comments in Config.in files that clarify which
toolchain options the package depends on.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-10-14 22:45:57 +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
Alexandre Belloni
702704014d Fix package headers to comply with coding style
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-06 17:26:35 +02:00
Simon Dawson
914274b4e4 beecrypt: add license information
Signed-off-by: Simon Dawson <simond@trainfx.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-12-04 13:56:08 -08:00
Stefan Fröberg
23ef45ca1e remove rest of the BR2_SOURCEFORGE_MIRROR references
Signed-off-by: Stefan Fröberg <stefan.froberg@petroprogram.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-08-28 22:59:52 +02:00
Arnout Vandecappelle (Essensium/Mind)
e1502ebc0c all packages: rename XXXTARGETS to xxx-package
Also remove the redundant $(call ...).

This is a purely mechanical change, performed with
find package linux toolchain boot -name \*.mk | \
  xargs sed -i -e 's/$(eval $(call GENTARGETS))/$(eval $(generic-package))/' \
               -e 's/$(eval $(call AUTOTARGETS))/$(eval $(autotools-package))/' \
               -e 's/$(eval $(call CMAKETARGETS))/$(eval $(cmake-package))/'

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-17 20:23:05 +02:00
Gustavo Zacarias
f7ea7b227f beecrypt: needs threads support
Fixes
http://autobuild.buildroot.net/results/e28e5dfe73d838b8bc4e9c586bc865d57d717f76/build-end.log

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-07-04 14:52:41 +02:00
Thomas Petazzoni
74da2cca30 beecrypt: fix build failure of C++ code with g++ 4.7
This fixes
http://autobuild.buildroot.org/results/5c1e904b201676275465c902ba3c09951973755c/build-end.log.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-06-05 00:20:31 +02:00
Peter Korsgaard
8145105ee3 beecrypt: bump version, build with C++ support if available
The issue with cppglue.cxx is still present in 4.2.1, but the previous
workaround had to be extended to allow builds with C++ support.
Similary, the ICU check didn't handle cross compilation.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-12-14 22:54:04 +01:00
Thomas Petazzoni
300f9c9c9d package: remove useless arguments from AUTOTARGETS
Thanks to the pkgparentdir and pkgname functions, we can rewrite the
AUTOTARGETS macro in a way that avoids the need for each package to
repeat its name and the directory in which it is present.

[Peter: pkgdir->pkgparentdir]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-09-29 23:12:27 +02:00
Thomas Petazzoni
478ea1a12d packages: remove unneeded _INSTALL_TARGET_OPT definitions
Now that <pkg>_INSTALL_TARGET_OPT always defaults to
'DESTDIR=$(TARGET_DIR) install', we can remove the
<pkg>_INSTALL_TARGET_OPT definition from a lot of packages.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-09-27 15:32:32 +02:00
Peter Korsgaard
4683420c4c Kconfig: remove 'default n'
'default n' is the default, so there's no need to say it explicitly.
2008-07-17 20:01:44 +00:00
Nigel Kukard
d114386c45 * Added beecrypt 2008-04-12 09:45:49 +00:00