Commit Graph

16 Commits

Author SHA1 Message Date
Bernd Kuhls
30ed9de2fd package/gnutls: disable for static build
The gnutils code uses __attribute__((constructor)) and
__attribute__((destructor)) to call constructor/desctructor when a
shared library is loaded.
Constructor/desctructor are not used when a static library is used
(except when if -Wl,--whole-archive -lgnutls -Wno-whole-archive is
used, not tested).

Even if gnutls initialization (_gnutls_global_init()) may be
called manually, the gnutls maintainer said it's not supported [1].

"Note that static linking applications with gnutls is not something
 supported. gnutls relies on library constructors and destructors
 which are not loaded when linking statically."

Now the gnutls script warns about static linking [2].

So disable gnutls statically by adding "depends on !BR2_STATIC_LIBS"
at Kconfig level and --disable-static in GNUTLS_CONF_OPTS.

Fixes:
[taskd] http://autobuild.buildroot.net/results/c2d/c2dd5c1c9dc87d2943c15e58ee56e67d7375368c
[ffmpeg] http://autobuild.buildroot.net/results/892/8926d319d6d1cd1ee72239ad7d9ca869d2355628
[sngrep] http://autobuild.buildroot.net/results/f7f/f7fb42d3742f6f01000a0d181e0c785640284405

[1] https://gitlab.com/gnutls/gnutls/issues/203
[2] 6b74888679

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Romain: merge our two patches together
    add some option comment
    disable static libgnutls.a
    add sngrep autobuilder reference]
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Tested-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: do not disable libgnutls.a]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-05-29 22:52:34 +02:00
Jörg Krause
2f89476ad9 package/libgpg-error: bump to version 1.23
This patch is based on a patch sent by Vicente Olivert Riera and commented by
Arnout Vandecappelle [1].

- Bump version to 1.23
- Add a hook to fix cross-compilation
- Fix license and license files
- Remove patch applied upstream
- Add a BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS variable
- Propagate the dependencies using that variable:
    * package/cppcms
    * package/crda
    * package/gnupg2
        - package/gcr
            - package/midori
    * package/kodi
    * package/libaacs
    * package/libassuan
    * package/libgcrypt
    * package/libgpgme
    * package/libksba
    * package/libmicrohttpd
        - package/janus-gateway
        - package/kodi
        - package/ola
        - package/systemd
    * package/libssh
    * package/libssh2
        - package/php-ssh2
    * package/netatalk
    * package/network-manager
    * package/ntfs-3g
    * package/opkg
    * package/php-gnupg
    * package/rng-tools
    * package/strongswan
    * package/vpnc

[1] http://patchwork.ozlabs.org/patch/416427/

Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
[Thomas:
 - rebase on master
 - changing systemd no longer needed, as it no longer selects
   libgcrypt.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[Maxime:
 - rebase on master
 - bump to new version
 - propagate dependencies to missing packages]
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Reviewed-by: Romain Naour <romain.naour@gmail.com>
[Thomas:
 - fix hash file.
 - change the way to handle the various arch so that it works properly
   for uClibc.
 - add nios2 arch support.
 - Maxime Hadjinlian learned some basic Emacs-fu to do the final fixups
   of this commit.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-04 22:22:27 +02:00
Romain Naour
f844ac4e67 package: remove _gp issue workaround for Codesourcery nios2 toolchain
The _gp link issue has been fixed in CS nios2 2015.11.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-03-05 19:11:29 +01:00
Romain Naour
c785b1b2c4 toolchain-external: CodeSourcery NIOSII: support only one version
See the conclusion about external toolchains during the Buildroot
meeting [1]:
"In the future, we stick to a single external toolchain version. The
Kconfig symbol should not encode the version (avoid legacy handling)"

[1] http://elinux.org/index.php?title=Buildroot:DeveloperDaysELCE2015#Report

Signed-off-by: Romain Naour <romain.naour@openwide.fr>
Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-12-18 22:57:16 +01:00
Bernd Kuhls
87059dd20e package/libmicrohttpd: mark as broken on Nios II, infamous _gp issue
Fixes
http://autobuild.buildroot.net/results/76f/76f838b2b33311897f3c2ce82a65f3b73af2c046/

Propagate reverse dependency to janus-gateway. I did not propagate the
reverse dependency to kodi, ola and systemd because they are not
available for nios.

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-08-01 10:16:31 +02:00
Jerzy Grzegorek
3033bc0c6e package: remove the empty trailing line(s)
Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-04 10:39:29 +01:00
Thomas De Schampheleire
35eaed8d07 Config.in files: use if/endif instead of 'depends on' for main symbol
In the Config.in file of package foo, it often happens that there are other
symbols besides BR2_PACKAGE_FOO. Typically, these symbols only make sense
when foo itself is enabled. There are two ways to express this: with
    depends on BR2_PACKAGE_FOO
in each extra symbol, or with
    if BR2_PACKAGE_FOO
        ...
    endif
around the entire set of extra symbols.

The if/endif approach avoids the repetition of 'depends on' statements on
multiple symbols, so this is clearly preferred. But even when there is only
one extra symbol, if/endif is a more logical choice:
- it is future-proof for when extra symbols are added
- it allows to have just one strategy instead of two (less confusion)

This patch modifies the Config.in files accordingly.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-12-25 12:21:39 +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
Carsten Schoenert
4e6093b60e package/libmicrohttpd: minor fixes and additions
Correcting the indentation inside Config.in. Also adding the missed
license information.

Note: libmicrohttpd is partialy dual licensed, if you don't need or want
to use the HTTPS option you can choose between LPGLv2.1+ and the eCos
license (http://ecos.sourceware.org/license-overview.html).
If you use the HTTPS option you have to agree to the LGPLv2.1+!

Signed-off-by: Carsten Schoenert <c.schoenert@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-27 10:32:31 +02:00
Peter Korsgaard
669de89be7 Revert "gnutls: wchar only needed for tools"
This reverts commit 7672b1235d.

It turns out that libgnutls.so ends up with a reference to wctomb() on
uClibc, as uClibc doesn't have vasnprintf so gnutls builds its internal
gnulib version of it, referencing wctomb().

Fix it by going back to requiring wchar for the base gnutls library as well.

Fixes http://autobuild.buildroot.net/results/780/780e825e56dc78f1ea347ca462e2e31044428775/

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-06 15:02:38 +02:00
Peter Korsgaard
7672b1235d gnutls: wchar only needed for tools
And adjust reverse dependencies to match.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-03 17:27:00 +02:00
Peter Korsgaard
68c3f5257d Revert "gnutls: make it non-wchar friendly"
This reverts commit f1b86cef98

While the fix makes gnutls build without wchar, it doesn't actually work as
there's no rpl_wctomb implementation so the .so ends up with an undefined
reference to wctomb:

./host/usr/bin/arm-linux-nm -D staging/usr/lib/libgnutls.so.28|grep wctomb
         U wctomb

Causing linker errors for packages trying to use it:

  CCLD   msmtp
host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgnutls.so:
undefined reference to `wctomb'
collect2: ld returned 1 exit status

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-02-05 11:45:28 +01:00
Gustavo Zacarias
562d1ad82e libmicrohttpd: bump to version 0.9.24
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-12-26 23:40:54 +01:00
Peter Korsgaard
7ee387f43b libmicrohttpd: make https support optional
Libmicrohttpd works nicely without https support, so make it optional.
Also ensure the cross-libgcrypt-config is found, rather than whatever
is installed on the host.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-19 23:48:48 +01:00
Peter Korsgaard
c5388a1c62 libmicrohttpd: cleanup Config.in
- 'n' is default, so no need to mention it explicit
- Add homepage URL

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-21 17:46:06 +02:00
Will Newton
1a9015f5d5 libmicrohttpd: New package.
libmicrohttpd is a library that allows embedding an HTTP server into
an application with a small code and memory footprint.

Signed-off-by: Will Newton <will.newton@gmail.com>
2009-09-20 19:34:41 +01:00