From 85caa6890052af9d485b84f54683ea19ffed7d30 Mon Sep 17 00:00:00 2001 From: Calin Crisan Date: Sat, 5 Mar 2016 19:29:40 +0200 Subject: [PATCH] merged with buildroot 2016.02 --- Makefile | 169 +- arch/Config.in | 16 +- arch/Config.in.aarch64 | 3 - arch/Config.in.arc | 3 - arch/Config.in.arm | 68 +- arch/Config.in.bfin | 3 - arch/Config.in.m68k | 3 - arch/Config.in.microblaze | 3 - arch/Config.in.mips | 19 +- arch/Config.in.nios2 | 3 - arch/Config.in.powerpc | 5 +- arch/Config.in.sh | 3 - arch/Config.in.sparc | 12 +- arch/Config.in.x86 | 16 +- arch/Config.in.xtensa | 3 - .../{busybox-1.22.x.config => busybox.config} | 0 boot/grub2/grub2.mk | 13 +- ...ake-board-selection-choices-optional.patch | 742 +++++++++ boot/uboot/Config.in | 11 +- boot/uboot/uboot.hash | 2 +- boot/uboot/uboot.mk | 33 +- configs/bananapi_defconfig | 12 +- configs/cubietruck_defconfig | 14 +- configs/odroidc1_defconfig | 9 +- configs/odroidxu4_defconfig | 10 +- configs/raspberrypi2_defconfig | 10 +- configs/raspberrypi3_defconfig | 10 +- configs/raspberrypi_defconfig | 10 +- fs/Config.in | 1 + fs/axfs/Config.in | 17 + fs/axfs/axfs.mk | 13 + fs/common.mk | 14 +- fs/ext2/Config.in | 20 +- fs/ext2/ext2.mk | 2 + fs/iso9660/Config.in | 5 +- fs/romfs/romfs.mk | 4 +- fs/squashfs/squashfs.mk | 2 +- ...l-Eliminate-Perl-warning.patch.conditional | 45 + linux/Config.ext.in | 4 +- linux/Config.in | 62 +- linux/linux-tool-perf.mk | 14 + linux/linux.mk | 138 +- package/Config.in | 193 ++- package/Config.in.host | 5 + package/Makefile.in | 50 +- package/acpid/S02acpid | 4 +- package/acsccid/Config.in | 19 + package/acsccid/acsccid.hash | 3 + package/acsccid/acsccid.mk | 15 + .../adwaita-icon-theme.hash | 4 +- .../adwaita-icon-theme/adwaita-icon-theme.mk | 4 +- package/aespipe/Config.in.host | 10 + package/aespipe/aespipe.mk | 1 + package/aiccu/Config.in | 6 +- .../alsa-lib/0001-add-missing-include.patch | 29 + package/alsa-lib/0005-musl-pcm-h.patch | 33 + package/alsa-lib/Config.in | 12 +- package/alsa-lib/alsa-lib.hash | 2 +- package/alsa-lib/alsa-lib.mk | 6 +- .../0001-bat-Avoid-local-signal.h-file.patch | 143 ++ ...ncompatible-function-pointers-to-pth.patch | 61 + package/alsa-utils/Config.in | 56 +- package/alsa-utils/alsa-utils.hash | 2 +- package/alsa-utils/alsa-utils.mk | 21 +- package/angularjs/Config.in | 4 +- package/angularjs/angularjs.mk | 2 +- package/apache/apache.hash | 4 +- package/apache/apache.mk | 6 +- package/apitrace/Config.in | 7 +- package/apitrace/apitrace.mk | 4 +- package/apr/apr.mk | 15 + .../0003-fix_build_with_c99_compilers.patch | 80 + package/armadillo/Config.in | 12 +- package/armadillo/armadillo.hash | 5 +- package/armadillo/armadillo.mk | 3 +- .../arptables/0004-Fix-musl-build-issue.patch | 71 + ...Converter-use-proper-64-bit-constant.patch | 35 + .../0002-fix-compilation-on-BigEndian.patch | 40 + package/assimp/Config.in | 14 + package/assimp/assimp.mk | 16 + ...ert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch} | 0 ...ove-manual-compiler-check-with-AC_TR.patch | 33 - ...akefile.in-replace-IROOT-by-DESTDIR.patch} | 39 +- ...file.in-add-LDFLAGS-to-linking-stage.patch | 38 - ...> 0003-Makefile.in-make-install-fix.patch} | 34 +- ...-fix.patch => 0004-getloadavg.c-fix.patch} | 0 ...> 0005-parsetime.l-include-config-h.patch} | 0 ...06-remove-glibc-__isleap-assumption.patch} | 0 package/at/S99at | 4 +- package/at/at.hash | 6 +- package/at/at.mk | 2 +- package/atk/atk.hash | 4 +- package/atk/atk.mk | 59 +- package/atkmm/Config.in | 20 + package/atkmm/atkmm.hash | 2 + package/atkmm/atkmm.mk | 16 + ...01-Fix-pkg-config-for-static-linking.patch | 56 + package/audiofile/audiofile.mk | 2 +- .../0001-Missed-cross-compile-fixes.patch | 694 -------- package/audit/Config.in | 7 +- package/audit/S01auditd | 8 +- package/audit/audit.hash | 2 +- package/audit/audit.mk | 23 +- package/audit/audit_tmpfiles.conf | 1 + .../0001-fix-incorrect-makefile-am.patch | 9 +- package/aumix/aumix.hash | 4 +- package/aumix/aumix.mk | 3 +- .../autoconf-archive/autoconf-archive.hash | 2 +- package/autoconf-archive/autoconf-archive.mk | 2 +- ...lude-linux-nfs.h-directly-in-rpc_sub.patch | 33 + package/autofs/Config.in | 21 + package/autofs/autofs.hash | 2 + package/autofs/autofs.mk | 31 + package/autossh/autossh.mk | 5 + package/avahi/0001-autoipd-perms.patch | 11 - package/avahi/avahi.mk | 29 +- package/avrdude/Config.in | 6 +- package/axfsutils/0001-fix-cflags.patch | 19 + package/axfsutils/0002-use-ldflags.patch | 20 + package/axfsutils/axfsutils.hash | 2 + package/axfsutils/axfsutils.mk | 24 + package/bash/0034-patchlevel-34.patch | 94 ++ package/bash/0035-patchlevel-35.patch | 67 + package/bash/0036-patchlevel-36.patch | 61 + package/bash/0037-patchlevel-37.patch | 47 + package/bash/0038-patchlevel-38.patch | 92 ++ package/bash/0039-patchlevel-39.patch | 61 + package/bash/0040-patchlevel-40.patch | 51 + package/bash/0041-patchlevel-41.patch | 76 + package/bash/0042-patchlevel-42.patch | 59 + package/bash/bash.mk | 1 + package/batctl/0001-musl-fixes.patch | 192 --- package/batctl/batctl.hash | 4 +- package/batctl/batctl.mk | 2 +- package/bc/bc.mk | 2 +- ...inline-crc64-for-gcc-5-compatability.patch | 35 + package/bcache-tools/bcache-tools.hash | 2 + package/bcache-tools/bcache-tools.mk | 2 +- package/bcm2835/Config.in | 19 + package/bcm2835/bcm2835.hash | 2 + package/bcm2835/bcm2835.mk | 13 + ...-the-non-standard-sys-cdefs.h-header.patch | 48 + ...t-requires-inclusion-of-sys-select.h.patch | 31 + package/bcusdk/Config.in | 2 +- ...de-sigcontext.h-and-asm-sigcontext.h.patch | 61 + ...machine-dependent-files-to-src-folde.patch | 424 +++++ package/bdwgc/Config.in | 2 +- package/bdwgc/bdwgc.mk | 3 + package/beecrypt/Config.in | 8 +- package/beecrypt/beecrypt.mk | 1 + ...Fix-LibreSSL-compatibility.-RT-40977.patch | 129 ++ package/bind/0001-disable-tests.patch | 28 - .../0003-Rename-ptrsize-to-ptr_size.patch | 74 + package/bind/Config.in | 5 +- package/bind/S81named | 6 +- package/bind/bind.hash | 4 +- package/bind/bind.mk | 5 +- ...sa-fix-signedness-of-gas-relocations.patch | 47 + ...ensa-fix-.init-.fini-literals-moving.patch | 70 + .../913-xtensa-add-auto-litpools-option.patch | 698 ++++++++ ...sa-fix-signedness-of-gas-relocations.patch | 99 ++ ...ensa-fix-.init-.fini-literals-moving.patch | 149 ++ .../913-xtensa-add-auto-litpools-option.patch | 699 +++++++++ ...sa-fix-signedness-of-gas-relocations.patch | 99 ++ ...n-in-NIOS2-linker-to-allow-signed-16.patch | 70 + ...ensa-fix-.init-.fini-literals-moving.patch | 149 ++ package/binutils/Config.in.host | 6 +- ...002-ld-arc-Provide-the-.tdata-symbol.patch | 145 -- .../0003-Provide-.tbss-symbol.patch | 70 - ...the-input-BFD-actually-contains-any-.patch | 132 -- .../0001-PR-other-56780.patch | 0 .../600-poison-system-directories.patch | 0 package/binutils/binutils.hash | 2 +- package/binutils/binutils.mk | 16 +- package/bitstream/Config.in | 8 + package/bitstream/bitstream.hash | 4 + package/bitstream/bitstream.mk | 21 + package/blackbox/0001-Fix-configure-ac.patch | 34 - package/blackbox/0002-gcc43.patch | 106 -- .../0003-gcc46-textpropertytostring.patch | 34 - package/blackbox/Config.in | 18 - package/blackbox/blackbox.hash | 2 - package/blackbox/blackbox.mk | 23 - ...1-Link-mcaptest-with-lrt-when-needed.patch | 54 - ...01-tools-avinfo-Fix-big-endian-build.patch | 39 + ...02-src-shared-ecc.c-include-config.h.patch | 33 - package/bluez5_utils/Config.in | 9 +- package/bluez5_utils/bluez5_utils.hash | 2 +- package/bluez5_utils/bluez5_utils.mk | 4 +- ...003-fix-compilation-issues-with-musl.patch | 61 + package/bluez_utils/bluez_utils.mk | 2 +- package/bonnie/Config.in | 3 +- package/boost/0002-fix-uclibc-eventfd.patch | 38 + .../0002-gcc.jam-compiler-options-fix.patch | 37 - ...Remove-bogus-c3-cpu-varant-for-SPARC.patch | 42 - .../boost/0003-fix-libquadmath-issue.patch | 91 ++ ...4-fix-declaration-error-with-gcc-4-4.patch | 50 + package/boost/0005-fix-undeclared-isnan.patch | 32 + package/boost/0006-uclibc-fenv.patch | 26 + package/boost/Config.in | 18 +- package/boost/boost.hash | 6 +- package/boost/boost.mk | 81 +- .../0001-fix-musl-compilation-issue.patch | 31 + .../bridge-utils/0003-sysfs-write-fixes.patch | 81 + package/bullet/Config.in | 4 + package/busybox/0002-unzip.patch | 111 ++ .../0003-g-unzip-fix-recent-breakage.patch | 134 ++ package/busybox/0004-truncate-open-mode.patch | 74 + package/busybox/Config.in | 1 + package/busybox/S01logging | 4 +- package/busybox/S50telnet | 4 +- package/busybox/busybox.config | 1 + package/busybox/busybox.hash | 6 +- package/busybox/busybox.mk | 30 +- package/busybox/inittab | 14 +- package/bwm-ng/Config.in | 2 +- package/bwm-ng/bwm-ng.hash | 2 +- package/bwm-ng/bwm-ng.mk | 4 +- package/c-ares/c-ares.mk | 1 + package/c-icap-modules/c-icap-modules.mk | 2 +- package/c-icap/Config.in | 4 +- package/c-icap/S96cicap | 4 +- package/c-icap/c-icap.mk | 2 +- ...issing-header-for-musl-compatibility.patch | 32 + .../c-periphery/0002-Fix-build-on-SPARC.patch | 70 + package/cairo/Config.in | 1 - package/cairo/cairo.hash | 4 +- package/cairo/cairo.mk | 64 +- package/cairomm/Config.in | 19 + package/cairomm/cairomm.hash | 2 + package/cairomm/cairomm.mk | 16 + package/canfestival/Config.in | 7 +- package/canfestival/canfestival.mk | 6 +- package/cantarell/Config.in | 7 + package/cantarell/cantarell.hash | 2 + package/cantarell/cantarell.mk | 15 + package/ccache/ccache.hash | 4 +- package/ccache/ccache.mk | 7 +- ...THROW-to-avoid-build-issue-with-musl.patch | 47 + package/cdrkit/Config.in | 1 + package/check/Config.in | 6 + package/check/check.hash | 3 + package/check/check.mk | 20 + ...attribute-directive-ignored-warnings.patch | 49 + ...igure-fix-with-PACKAGE-option-checks.patch | 67 + ...-ioperm-inb-outb-to-x86-architecture.patch | 80 + package/chocolate-doom/Config.in | 12 + package/chocolate-doom/chocolate-doom.hash | 2 + package/chocolate-doom/chocolate-doom.mk | 44 + package/chrony/S49chrony | 4 +- package/chrony/chrony.hash | 6 +- package/chrony/chrony.mk | 21 +- ....c-include-paths.h-for-_PATH_MOUNTED.patch | 31 + package/cifs-utils/cifs-utils.mk | 4 + package/clamav/0002-static-linking.patch | 58 - package/clamav/0004-fix-static-build.patch | 21 - package/clamav/clamav.hash | 6 +- package/clamav/clamav.mk | 22 +- package/clapack/0006-remove-uninit-f2c.patch | 24 + package/clapack/0007-off64-t.patch | 16 + package/clapack/Config.in | 8 +- package/cloog/cloog.hash | 2 +- package/cloog/cloog.mk | 2 +- ...each-ABI.h-about-Xtensa-architecture.patch | 30 - package/cmake/Config.in | 7 +- package/cmake/cmake.hash | 4 +- package/cmake/cmake.mk | 6 +- ...ltree-libcommon-libheap-dependencies.patch | 21 - package/collectd/Config.in | 6 +- package/collectd/collectd.hash | 4 +- package/collectd/collectd.mk | 6 +- package/comix-cursors/Config.in | 6 + package/comix-cursors/comix-cursors.hash | 2 + package/comix-cursors/comix-cursors.mk | 19 + .../0001-configure-check-for-execinfo.h.patch | 65 + package/connman/0001-uclibc-backtrace.patch | 44 - package/connman/Config.in | 6 +- package/connman/S45connman | 4 +- package/connman/connman.hash | 2 +- package/connman/connman.mk | 3 +- .../0001-src-fix-build-with-musl-libc.patch | 37 + package/conntrack-tools/conntrack-tools.hash | 6 +- package/conntrack-tools/conntrack-tools.mk | 18 +- package/coreutils/coreutils.hash | 2 +- package/coreutils/coreutils.mk | 16 +- package/cpio/Config.in | 2 +- package/cpio/cpio.hash | 9 +- package/cpio/cpio.mk | 17 +- package/cppcms/Config.in | 1 - package/cppcms/cppcms.hash | 5 +- package/cppcms/cppcms.mk | 2 +- package/cramfs/0003-fix-missing-types.patch | 17 + package/crda/Config.in | 6 +- ...1-fix-compilation-against-linux-3.19.patch | 37 - .../0002-fix-ccache-compile.patch | 20 - package/cryptodev-linux/cryptodev-linux.hash | 2 +- package/cryptodev-linux/cryptodev-linux.mk | 2 +- package/cryptsetup/Config.in | 6 +- package/cryptsetup/cryptsetup.hash | 4 +- package/cryptsetup/cryptsetup.mk | 4 +- ...move-man-from-BUILDDIRS-in-configure.patch | 29 + package/cups/0001-fix-static.patch | 28 - package/cups/0002-Do-not-use-genstrings.patch | 36 + .../cups/0002-fix-stack-protector-check.patch | 25 - ...03-Sanitize-the-installation-process.patch | 131 ++ package/cups/0003-mantohtml.patch | 11 - package/cups/Config.in | 16 +- package/cups/cups.hash | 2 + package/cups/cups.mk | 50 +- .../curlftpfs/0004-fix-musl-build-off-t.patch | 39 + package/cwiid/Config.in | 2 +- package/cxxtest/Config.in | 10 + package/cxxtest/cxxtest.hash | 2 + package/cxxtest/cxxtest.mk | 30 + ....ac-to-prevent-contradictory-discove.patch | 206 --- package/czmq/czmq.mk | 2 +- package/dawgdic/Config.in | 6 +- package/dbus-cpp/Config.in | 6 +- package/dbus-cpp/dbus-cpp.mk | 4 +- package/dbus-glib/dbus-glib.hash | 2 +- package/dbus-glib/dbus-glib.mk | 4 +- package/dbus/S30dbus | 4 +- package/dbus/dbus.hash | 2 +- package/dbus/dbus.mk | 10 +- package/dcron/S90dcron | 4 +- package/dcron/dcron.service | 4 +- package/debianutils/debianutils.hash | 4 +- package/debianutils/debianutils.mk | 6 +- package/devmem2/devmem2.hash | 2 + package/dhcp/S80dhcp-relay | 15 +- package/dhcp/S80dhcp-server | 22 +- package/dhcp/dhcp.hash | 4 +- package/dhcp/dhcp.mk | 2 +- package/dhcp/dhcpd.service | 4 +- package/dhcpcd/Config.in | 2 - package/dhcpcd/dhcpcd.hash | 2 +- package/dhcpcd/dhcpcd.mk | 3 +- package/dhcpdump/Config.in | 2 + package/dhcpdump/dhcpdump.hash | 2 + package/dhcpdump/dhcpdump.mk | 3 +- package/dhrystone/Makefile | 2 +- package/dhrystone/dhrystone.hash | 2 + ...nge-fltk-config-test-to-be-more-cros.patch | 40 - package/dillo/dillo.hash | 2 +- package/dillo/dillo.mk | 4 +- package/directfb-examples/Config.in | 151 -- .../directfb-examples/directfb-examples.hash | 4 +- .../directfb-examples/directfb-examples.mk | 98 +- ...03-remove-redefinition-of-__typeof__.patch | 28 - ...n-lock.patch => 0003-setregion-lock.patch} | 39 +- ...gcc-link.patch => 0004-use-gcc-link.patch} | 0 .../0005-add-missing-idivine-header.patch | 65 + package/directfb/Config.in | 46 +- package/directfb/directfb.hash | 4 +- package/directfb/directfb.mk | 34 +- package/divine/Config.in | 8 - package/divine/divine.mk | 19 - .../0001-fix-compilation-under-musl.patch | 47 + package/dmraid/Config.in | 6 +- package/dnsmasq/Config.in | 2 +- package/dnsmasq/S80dnsmasq | 4 +- package/dnsmasq/dnsmasq.hash | 2 +- package/dnsmasq/dnsmasq.mk | 4 +- package/doom-wad/Config.in | 2 +- package/doom-wad/doom-wad.hash | 2 + package/doom-wad/doom-wad.mk | 14 +- package/dos2unix/Config.in | 7 + package/dos2unix/Config.in.host | 2 +- package/dos2unix/dos2unix.hash | 2 +- package/dos2unix/dos2unix.mk | 36 +- ...0001-mkfs.fat-fix-incorrect-int-type.patch | 45 + .../dovecot-pigeonhole.hash | 2 +- .../dovecot-pigeonhole/dovecot-pigeonhole.mk | 2 +- package/dovecot/Config.in | 12 - package/dovecot/dovecot.hash | 2 +- package/dovecot/dovecot.mk | 20 +- package/doxygen/doxygen.mk | 2 +- package/drbd-utils/drbd-utils.hash | 2 +- package/drbd-utils/drbd-utils.mk | 12 +- package/dropbear/Config.in | 9 + package/dropbear/S50dropbear | 16 +- package/dropbear/dropbear.hash | 2 +- package/dropbear/dropbear.mk | 4 +- package/dropbear/dropbear.service | 11 +- package/dropwatch/dropwatch.hash | 2 + package/dtc/Config.in.host | 9 + package/dtc/dtc.mk | 10 + package/dtv-scan-tables/dtv-scan-tables.mk | 4 +- package/dvb-apps/dvb-apps.mk | 2 +- package/dvblast/0001-missing-lm.patch | 29 + package/dvblast/0002-fix-int-types.patch | 24 + package/dvblast/Config.in | 16 + package/dvblast/dvblast.hash | 4 + package/dvblast/dvblast.mk | 29 + package/dvbsnoop/0001-musl-types-h.patch | 15 + package/dvdauthor/dvdauthor.mk | 4 + package/e2fsprogs/Config.in | 6 - package/e2fsprogs/e2fsprogs.mk | 24 +- package/ebtables/Config.in | 7 +- package/ebtables/ebtables.hash | 5 +- package/ebtables/ebtables.mk | 2 +- package/ecryptfs-utils/0001-musl.patch | 35 + package/ecryptfs-utils/ecryptfs-utils.hash | 4 +- package/ecryptfs-utils/ecryptfs-utils.mk | 2 +- package/edid-decode/Config.in | 6 + package/edid-decode/edid-decode.mk | 21 + package/efl/Config.in | 201 ++- package/efl/efl.hash | 2 + package/efl/efl.mk | 278 +++- package/efl/libecore/Config.in | 46 - package/efl/libecore/libecore.mk | 114 -- package/efl/libedbus/Config.in | 44 - package/efl/libedbus/libedbus.mk | 37 - package/efl/libedje/Config.in | 28 - package/efl/libedje/libedje.mk | 28 - package/efl/libeet/Config.in | 11 - package/efl/libeet/libeet.mk | 27 - package/efl/libefreet/Config.in | 10 - package/efl/libefreet/libefreet.mk | 17 - package/efl/libeina/Config.in | 6 - package/efl/libeina/libeina.mk | 18 - package/efl/libeio/Config.in | 22 - package/efl/libeio/libeio.mk | 16 - package/efl/libelementary/Config.in | 17 - package/efl/libelementary/libelementary.mk | 32 - package/efl/libembryo/Config.in | 9 - package/efl/libembryo/libembryo.mk | 18 - package/efl/libethumb/Config.in | 15 - package/efl/libethumb/libethumb.mk | 27 - package/efl/libevas/0001-giflib.patch | 98 -- package/efl/libevas/Config.in | 211 --- package/efl/libevas/libevas.mk | 247 --- package/eigen/eigen.mk | 12 +- package/ejabberd/0001-remove-deps.patch | 6 +- .../ejabberd/0002-disable-rebar-deps.patch | 62 +- .../0007-fix-install-permissions.patch | 31 +- .../0008-add-ac_config_macro_dir.patch | 30 - ...rdctl.patch => 0008-fix-ejabberdctl.patch} | 14 +- .../ejabberd/0010-fix-package-version.patch | 19 - package/ejabberd/S50ejabberd | 4 +- package/ejabberd/ejabberd.hash | 4 + package/ejabberd/ejabberd.mk | 5 +- package/elementary/Config.in | 15 + package/elementary/elementary.hash | 2 + package/elementary/elementary.mk | 37 + package/elf2flt/elf2flt.mk | 12 +- package/elfutils/Config.in | 7 +- package/elfutils/elfutils.mk | 11 +- .../emlog/0001-Fix-access-to-the-dentry.patch | 57 + package/emlog/Config.in | 17 + package/emlog/emlog.hash | 2 + package/emlog/emlog.mk | 22 + package/empty/0002-fix-non-thread-build.patch | 49 + package/enlightenment/Config.in | 33 +- package/enlightenment/enlightenment.hash | 2 + package/enlightenment/enlightenment.mk | 26 +- package/erlang-p1-tls/Config.in | 1 + package/erlang-p1-tls/erlang-p1-tls.mk | 1 + package/erlang-rebar/erlang-rebar.mk | 4 +- package/erlang/Config.in | 9 +- package/erlang/erlang.mk | 4 + ...red-library-on-architectures-needing.patch | 31 + package/espeak/Config.in | 2 +- package/ethtool/ethtool.hash | 2 +- package/ethtool/ethtool.mk | 2 +- package/eudev/eudev.hash | 4 +- package/eudev/eudev.mk | 12 +- package/evemu/evemu.hash | 4 +- package/evemu/evemu.mk | 2 +- package/eventlog/Config.in | 8 + package/eventlog/eventlog.hash | 2 + package/eventlog/eventlog.mk | 15 + ...1-fix-compiling-with-non-glibc-libcs.patch | 26 - package/exfat-utils/Config.in | 2 +- package/exfat-utils/exfat-utils.hash | 4 +- package/exfat-utils/exfat-utils.mk | 18 +- package/exfat/Config.in | 2 +- package/exfat/exfat.hash | 4 +- package/exfat/exfat.mk | 20 +- package/exim/S86exim | 2 +- .../exiv2/0001-remove-useless-header.patch | 19 - package/exiv2/Config.in | 6 +- package/exiv2/exiv2.hash | 4 +- package/exiv2/exiv2.mk | 2 +- package/expat/0001-fix-CVE-2015-1283.patch | 76 + package/{efl => }/expedite/Config.in | 9 +- package/{efl => }/expedite/expedite.mk | 13 +- ...y-include-endian.h-for-BYTE_ORDER-ma.patch | 32 + ...t-include-linux-if_ether.h-for-musl-.patch | 32 + package/fakeroot/fakeroot.hash | 6 +- package/fakeroot/fakeroot.mk | 11 +- package/fan-ctrl/Config.in | 3 - ...ROCEDURAL_OPTIMIZATION-target-proper.patch | 84 + .../0002-Don-t-depend-on-net-if_ether.h.patch | 261 +++ package/fastd/Config.in | 31 + package/fastd/fastd.mk | 40 + package/fbgrab/fbgrab.hash | 2 +- package/fbgrab/fbgrab.mk | 2 +- ...roxy.cpp-fbterm.cpp-fix-musl-compile.patch | 70 + .../0002-mouse.cpp-fix-musl-compile.patch | 30 + package/fbterm/fbterm.mk | 7 + package/fdk-aac/fdk-aac.hash | 2 +- package/fdk-aac/fdk-aac.mk | 2 +- package/feh/feh.hash | 2 +- package/feh/feh.mk | 4 +- package/fetchmail/0002-enable-libressl.patch | 67 + package/ffmpeg/0016-ranlib.patch | 35 - package/ffmpeg/Config.in | 5 +- package/ffmpeg/ffmpeg.hash | 2 +- package/ffmpeg/ffmpeg.mk | 116 +- package/file/file.hash | 2 +- package/file/file.mk | 2 +- package/filemq/filemq.mk | 2 +- package/findutils/findutils.hash | 2 +- package/findutils/findutils.mk | 2 +- ...compile-fix-for-linux-header-changes.patch | 42 + package/fio/Config.in | 2 + package/fio/fio.mk | 4 +- package/flann/Config.in | 2 - package/flashrom/0001-spi.patch | 25 + package/flashrom/0002-sys-io.h.patch | 27 + package/flashrom/Config.in | 2 - package/flashrom/flashrom.mk | 4 +- .../flite/0003-fix-alsa-version-check.patch | 26 + package/flot/flot.hash | 2 +- package/fmlib/fmlib.mk | 2 +- package/fping/fping.hash | 2 +- package/fping/fping.mk | 2 +- .../freerdp/0001-add-support-for-uclibc.patch | 127 -- ...ch => 0001-fix-building-shared-libs.patch} | 7 +- ... => 0002-add-support-for-tz-package.patch} | 0 package/freerdp/0003-add-missing-define.patch | 44 + .../0003-dont-use-unavailable-c99-math.patch | 95 -- package/freerdp/Config.in | 60 +- package/freerdp/freerdp.mk | 120 +- package/freescale-imx/Config.in | 2 + .../firmware-imx/firmware-imx.hash | 2 + .../firmware-imx/firmware-imx.mk | 11 +- package/freescale-imx/freescale-imx.mk | 1 - package/freescale-imx/imx-gpu-viv/Config.in | 26 +- .../imx-gpu-viv/imx-gpu-viv.hash | 3 + .../freescale-imx/imx-gpu-viv/imx-gpu-viv.mk | 56 +- .../imx-kobs/0001-Fix-musl-build.patch | 39 + ...0002-Fix-build-for-recent-toolchains.patch | 26 + package/freescale-imx/imx-kobs/Config.in | 10 + package/freescale-imx/imx-kobs/imx-kobs.hash | 2 + package/freescale-imx/imx-kobs/imx-kobs.mk | 12 + package/freescale-imx/imx-lib/imx-lib.hash | 2 + package/freescale-imx/imx-lib/imx-lib.mk | 6 +- package/freescale-imx/imx-vpu/Config.in | 5 - package/freescale-imx/imx-vpu/imx-vpu.hash | 2 + package/freescale-imx/imx-vpu/imx-vpu.mk | 11 +- .../kernel-module-imx-gpu-viv/Config.in | 14 + .../kernel-module-imx-gpu-viv.hash | 2 + .../kernel-module-imx-gpu-viv.mk | 20 + package/freetype/freetype.hash | 6 +- package/freetype/freetype.mk | 27 +- package/gauche/0001-fix-so-suffix.patch | 31 + ...d-check-for-NO_GETCONTEXT-definition.patch | 62 + package/gauche/Config.in | 28 + package/gauche/gauche.hash | 3 + package/gauche/gauche.mk | 34 + package/gawk/gawk.mk | 26 +- package/gcc/4.7.4/900-musl-support.patch | 36 - .../910-gcc-poison-system-directories.patch | 207 --- ...ix-typo-for-powerpc-e6500-cpu_is_64b.patch | 29 + ...870-xtensa-add-mauto-litpools-option.patch | 290 ++++ ...xtensa-reimplement-register-spilling.patch | 76 + ...d-dw2-fde-dip-instead-of-unwind-dw2-.patch | 33 + .../4.8.5/873-xtensa-fix-_Unwind_GetCFA.patch | 40 + package/gcc/4.8.5/900-musl-support.patch | 36 - .../910-gcc-poison-system-directories.patch | 207 --- ...ix-typo-for-powerpc-e6500-cpu_is_64b.patch | 29 + ...870-xtensa-add-mauto-litpools-option.patch | 290 ++++ ...xtensa-reimplement-register-spilling.patch | 76 + ...d-dw2-fde-dip-instead-of-unwind-dw2-.patch | 33 + .../4.9.3/873-xtensa-fix-_Unwind_GetCFA.patch | 40 + package/gcc/4.9.3/900-musl-support.patch | 36 - .../910-gcc-poison-system-directories.patch | 207 --- .../920-libgcc-remove-unistd-header.patch} | 2 - .../200-gcc-poison-system-directories.patch | 207 --- .../{5.2.0 => 5.3.0}/100-uclibc-conf.patch | 0 ...ix-typo-for-powerpc-e6500-cpu_is_64b.patch | 29 + .../301-missing-execinfo_h.patch | 0 .../810-arm-softfloat-libgcc.patch | 0 .../830-arm_unbreak_armv4t.patch | 0 ...0-microblaze-enable-dwarf-eh-support.patch | 0 .../850-libstdcxx-uclibc-c99.patch | 0 .../gcc/{5.2.0 => 5.3.0}/860-cilk-wchar.patch | 0 ...870-xtensa-add-mauto-litpools-option.patch | 290 ++++ ...xtensa-reimplement-register-spilling.patch | 76 + ...d-dw2-fde-dip-instead-of-unwind-dw2-.patch | 31 + .../5.3.0/873-xtensa-fix-_Unwind_GetCFA.patch | 40 + .../900-libitm-fixes-for-musl-support.patch | 0 ...-fixincludes-update-for-musl-support.patch | 0 .../902-unwind-fix-for-musl.patch | 0 ...libgfortran-gthr-workaround-for-musl.patch | 0 .../904-musl-libc-config.patch | 36 - .../905-add-musl-support-to-gcc.patch | 0 .../906-mips-musl-support.patch | 0 .../907-x86-musl-support.patch | 0 .../908-arm-musl-support.patch | 0 .../909-aarch64-musl-support.patch | 0 package/gcc/Config.in.host | 12 +- ...between-a-bss-TLS-initialized-symbol.patch | 42 - .../910-gcc-poison-system-directories.patch | 221 --- .../100-libstdcxx-uclibc-c99.patch | 0 .../851-PR-other-56780.patch | 0 ...PDATE-Fix-handling-complex-PIC-moves.patch | 103 ++ ...DATE1-Fix-handling-complex-PIC-moves.patch | 83 + ...on-t-allow-mcompact-casesi-for-ARCv2.patch | 100 ++ package/gcc/gcc-final/gcc-final.mk | 33 +- package/gcc/gcc-initial/gcc-initial.mk | 12 +- package/gcc/gcc.hash | 6 +- package/gcc/gcc.mk | 110 +- package/gcr/Config.in | 19 + package/gcr/gcr.hash | 2 + package/gcr/gcr.mk | 29 + .../0004-xtensa-implement-NPTL-helpers.patch | 267 ++++ package/gdb/Config.in.host | 14 +- package/gdb/gdb.hash | 3 +- package/gdb/gdb.mk | 33 +- package/gdk-pixbuf/gdk-pixbuf.hash | 4 +- package/gdk-pixbuf/gdk-pixbuf.mk | 10 +- package/genimage/genimage.hash | 2 +- package/genimage/genimage.mk | 2 +- package/geoip/geoip.hash | 2 +- package/geoip/geoip.mk | 2 +- package/gesftpserver/gesftpserver.hash | 2 +- package/gesftpserver/gesftpserver.mk | 2 +- package/gettext/gettext.hash | 6 +- package/gettext/gettext.mk | 10 +- package/giflib/giflib.hash | 3 +- package/giflib/giflib.mk | 2 +- package/git/git.hash | 2 +- package/git/git.mk | 8 +- package/glib-networking/glib-networking.hash | 4 +- package/glib-networking/glib-networking.mk | 6 +- package/glibc/2.20/0001-CVE-2014-7817.patch | 173 -- package/glibc/2.20/0002-CVE-2014-9402.patch | 24 - package/glibc/2.20/0003-CVE-2015-1472.patch | 88 -- .../glibc/2.21/0001-fix-CVE-2015-7547.patch | 236 +++ .../glibc/2.21/0002-fix-CVE-2015-1781.patch | 32 + .../glibc/2.21/0003-fix-CVE-2014-8121.patch | 176 +++ .../glibc/2.22/0001-fix-CVE-2015-7547.patch | 236 +++ package/glibc/Config.in | 18 +- package/glibc/glibc.hash | 2 +- package/glibc/glibc.mk | 30 + package/glibmm/Config.in | 7 +- package/glibmm/glibmm.hash | 4 +- package/glibmm/glibmm.mk | 4 +- package/glmark2/glmark2.mk | 13 +- package/glog/Config.in | 10 +- package/glog/glog.mk | 11 + package/gmock/0001-force-use-python2.patch | 20 + package/gmock/Config.in | 32 + package/gmock/gmock.hash | 2 + package/gmock/gmock.mk | 62 + ...01-arm-asm-conditional-on-no-thumb-1.patch | 21 - ...02-arm-asm-conditional-on-no-thumb-2.patch | 21 - ...vide-default-bmod-to-mod-threshold-1.patch | 22 - package/gmp/gmp.hash | 2 +- package/gmp/gmp.mk | 7 +- package/gnupg/gnupg.hash | 4 +- package/gnupg/gnupg.mk | 2 +- .../gnupg2/0001-fix-pth-config-usage.patch | 29 +- package/gnupg2/0002-missing-include.patch | 15 + package/gnupg2/0003-dont-run-tests.patch | 39 + ...004-silence-git-when-not-in-git-tree.patch | 26 + package/gnupg2/gnupg2.hash | 4 +- package/gnupg2/gnupg2.mk | 13 +- .../0002-types_t-is-need-for-mode_t.patch | 19 + package/gnuradio/Config.in | 6 +- package/gnuradio/gnuradio.mk | 4 + package/gnutls/Config.in | 3 + package/gnutls/gnutls.hash | 2 +- package/gnutls/gnutls.mk | 58 +- package/gob2/gob2.hash | 2 + .../0002-Install-unversioned-solibrary.patch | 41 + ...Really-install-unversioned-solibrary.patch | 31 + .../0001-Fix-build-against-musl-libc.patch | 36 - package/gpsd/Config.in | 3 - package/gpsd/S50gpsd | 4 +- package/gpsd/gpsd.hash | 4 +- package/gpsd/gpsd.mk | 23 +- package/gptfdisk/Config.in.host | 11 + package/gptfdisk/gptfdisk.mk | 11 + .../0001-disable-double-promotion.patch | 21 + package/graphite2/Config.in | 13 + package/graphite2/graphite2.hash | 3 + package/graphite2/graphite2.mk | 23 + package/grep/0001-fix-CVE-2015-1345.patch | 20 - package/grep/grep.hash | 2 +- package/grep/grep.mk | 2 +- package/gssdp/Config.in | 15 + package/gssdp/gssdp.hash | 2 + package/gssdp/gssdp.mk | 16 + package/gstreamer/gst-ffmpeg/Config.in | 3 + .../gst-fsl-plugins/gst-fsl-plugins.hash | 2 + .../gst-fsl-plugins/gst-fsl-plugins.mk | 2 +- package/gstreamer/gst-plugins-bad/Config.in | 24 +- .../gst-plugins-bad/gst-plugins-bad.mk | 10 + ...x-build-on-x86-if-emmintrin.h-is-ava.patch | 38 + ...-s-HAVE_EMMINTRIN_H-not-HAVE_XMMINTR.patch | 27 + package/gstreamer/gst-plugins-base/Config.in | 4 +- .../gst-plugins-base/gst-plugins-base.mk | 2 + package/gstreamer/gst-plugins-good/Config.in | 5 +- .../gst-plugins-good/gst-plugins-good.mk | 2 + .../gst-plugins-ugly/gst-plugins-ugly.hash | 3 + .../gst-plugins-ugly/gst-plugins-ugly.mk | 5 + package/gstreamer/gstreamer/Config.in | 8 +- package/gstreamer/gstreamer/gstreamer.mk | 8 +- package/gstreamer1/gst1-imx/gst1-imx.mk | 2 +- package/gstreamer1/gst1-libav/gst1-libav.hash | 4 +- package/gstreamer1/gst1-libav/gst1-libav.mk | 2 +- package/gstreamer1/gst1-plugins-bad/Config.in | 112 +- .../gst1-plugins-bad/gst1-plugins-bad.hash | 4 +- .../gst1-plugins-bad/gst1-plugins-bad.mk | 69 +- .../gstreamer1/gst1-plugins-base/Config.in | 4 +- .../gst1-plugins-base/gst1-plugins-base.hash | 4 +- .../gst1-plugins-base/gst1-plugins-base.mk | 6 +- .../gstreamer1/gst1-plugins-good/Config.in | 7 +- .../gst1-plugins-good/gst1-plugins-good.hash | 4 +- .../gst1-plugins-good/gst1-plugins-good.mk | 13 +- .../gstreamer1/gst1-plugins-ugly/Config.in | 6 + .../gst1-plugins-ugly/gst1-plugins-ugly.hash | 4 +- .../gst1-plugins-ugly/gst1-plugins-ugly.mk | 15 +- package/gstreamer1/gst1-validate/Config.in | 2 + .../gst1-validate/gst1-validate.hash | 4 +- .../gstreamer1/gst1-validate/gst1-validate.mk | 9 +- package/gstreamer1/gstreamer1/Config.in | 8 +- package/gstreamer1/gstreamer1/gstreamer1.hash | 4 +- package/gstreamer1/gstreamer1/gstreamer1.mk | 16 +- package/gtest/gtest.mk | 1 + package/gtkmm3/Config.in | 29 + package/gtkmm3/gtkmm3.hash | 2 + package/gtkmm3/gtkmm3.mk | 27 + package/guile/Config.in | 9 +- package/guile/guile.mk | 14 + package/gupnp-av/Config.in | 17 + package/gupnp-av/gupnp-av.hash | 2 + package/gupnp-av/gupnp-av.mk | 16 + package/gupnp/Config.in | 20 + package/gupnp/gupnp.hash | 2 + package/gupnp/gupnp.mk | 16 + package/gvfs/Config.in | 2 +- package/gvfs/gvfs.hash | 4 +- package/gvfs/gvfs.mk | 67 +- package/gzip/gzip.mk | 1 + .../0001-fix-static-linking-with-icu-uc.patch | 33 - package/harfbuzz/Config.in | 2 + package/harfbuzz/harfbuzz.hash | 4 +- package/harfbuzz/harfbuzz.mk | 20 +- package/haserl/Config.in | 2 +- package/haveged/S21haveged | 4 +- package/haveged/haveged.mk | 4 + package/haveged/haveged.service | 2 +- ...-support-since-it-is-no-longer-suppo.patch | 42 + package/hiawatha/Config.in | 10 +- package/hiawatha/hiawatha.hash | 2 +- package/hiawatha/hiawatha.mk | 9 +- ...se-a-C-source-file-since-it-s-pure-C.patch | 47 + package/hidapi/Config.in | 16 + package/hidapi/hidapi.hash | 2 + package/hidapi/hidapi.mk | 24 + ...-Fix-last-fragment-length-validation.patch | 54 + ...TTP-chunked-transfer-encoding-parser.patch | 50 - ...er-underflow-in-WMM-Action-frame-par.patch | 42 - ...-Fix-last-fragment-length-validation.patch | 51 + package/hostapd/0003-EAP-pwd-fixes.patch | 154 -- package/hostapd/Config.in | 10 + package/hostapd/hostapd.hash | 2 +- package/hostapd/hostapd.mk | 9 +- ...ld-use-pkg-config-to-discover-libusb.patch | 45 + package/hplip/0001-fix-make.patch | 35 - ...nfigure.in-fix-AM_INIT_AUTOMAKE-call.patch | 35 + package/hplip/Config.in | 2 - package/hplip/hplip.hash | 2 +- package/hplip/hplip.mk | 16 +- ...File.cpp-support-POSIX-basename-call.patch | 55 + package/ibrcommon/Config.in | 13 + package/ibrcommon/ibrcommon.hash | 2 + package/ibrcommon/ibrcommon.mk | 36 + package/ibrdtn-tools/Config.in | 15 + package/ibrdtn-tools/ibrdtn-tools.hash | 2 + package/ibrdtn-tools/ibrdtn-tools.mk | 31 + package/ibrdtn/Config.in | 16 + package/ibrdtn/ibrdtn.hash | 2 + package/ibrdtn/ibrdtn.mk | 29 + package/ibrdtnd/Config.in | 15 + package/ibrdtnd/ibrdtnd.hash | 2 + package/ibrdtnd/ibrdtnd.mk | 52 + ...ting-memory-for-pkgDataFlags.-compil.patch | 34 + package/icu/Config.in | 2 - package/icu/icu.hash | 6 +- package/icu/icu.mk | 10 +- package/ifupdown/ifupdown.hash | 4 +- package/ifupdown/ifupdown.mk | 6 +- package/imagemagick/imagemagick.hash | 4 +- package/imagemagick/imagemagick.mk | 16 +- ...007-fix-compilation-issues-with-musl.patch | 31 + package/inadyn/S70inadyn | 24 +- package/inadyn/inadyn.conf | 5 +- package/initscripts/init.d/S20urandom | 4 +- package/initscripts/init.d/S40network | 2 +- .../input-event-daemon/S99input-event-daemon | 4 +- package/input-tools/input-tools.mk | 2 +- package/intel-microcode/intel-microcode.hash | 4 +- package/intel-microcode/intel-microcode.mk | 4 +- package/intltool/intltool.hash | 7 +- package/intltool/intltool.mk | 2 +- package/iodine/iodine.mk | 13 +- package/iostat/iostat.mk | 3 +- .../0002-Fix-build-using-musl-libc.patch | 43 + package/iperf3/Config.in | 2 +- package/iperf3/iperf3.hash | 2 + package/iperf3/iperf3.mk | 4 +- package/ipkg/0001-fix-musl-build.patch | 50 + package/ipmitool/ipmitool.hash | 2 +- package/ipmitool/ipmitool.mk | 2 +- ...-CC-instead-of-gcc-full-link-for-sta.patch | 43 - ...uild-doc.patch => 0001-no-build-doc.patch} | 11 +- ...-lib-Makefile.am-fix-lanplus-disable.patch | 38 + ...onfigure.ac-fix-stack-protector-test.patch | 45 + .../0003-really-disable-lanplus.patch | 95 -- package/ipmiutil/Config.in | 5 +- package/ipmiutil/ipmiutil.hash | 2 +- package/ipmiutil/ipmiutil.mk | 6 +- .../0001-Avoid-in6_addr-redefinition.patch | 95 ++ ...0002-Add-missing-sys-types.h-include.patch | 38 + ...0003-iproute2-fix-building-with-musl.patch | 33 + package/iproute2/iproute2.hash | 2 +- package/iproute2/iproute2.mk | 7 +- package/iprutils/0001-Don-t-use-gettext.patch | 32 - .../0001-iprutils-Don-t-use-gettext.patch | 48 + ...FLAGS-to-be-extended-from-the-enviro.patch | 31 - ...-pow-instead-of-matherr-for-libm-che.patch | 36 + ...tic-build-by-passing-the-libraries-i.patch | 35 - ...ib-fixes-for-compatibility-with-musl.patch | 34 + package/iprutils/iprutils.hash | 2 +- package/iprutils/iprutils.mk | 19 +- package/ipsec-tools/ipsec-tools.mk | 5 +- package/ipset/ipset.hash | 6 +- package/ipset/ipset.mk | 2 +- .../iptables/0001-fix-build-with-musl.patch | 67 + package/iptables/0001-fix-static-link.patch | 68 - ...les-config-parser.h-to-BUILT_SOURCES.patch | 39 + ...tables-save.c-remove-dlfcn.h-include.patch | 47 - package/iptables/Config.in | 33 +- package/iptables/iptables.hash | 6 +- package/iptables/iptables.mk | 37 +- .../iputils/0001-ping-link-against-libm.patch | 29 + ...01-ping-ping6-Fix-hang-with-f-option.patch | 34 - package/iputils/Config.in | 2 +- package/iputils/iputils.hash | 4 +- package/iputils/iputils.mk | 29 +- package/iqvlinux/Config.in | 18 + package/iqvlinux/iqvlinux.hash | 5 + package/iqvlinux/iqvlinux.mk | 21 + package/irda-utils/0004-musl.patch | 31 + package/irqbalance/S13irqbalance | 4 +- ...0001-Fix-quote-around-macro-argument.patch | 46 + package/irssi/Config.in | 30 + package/irssi/irssi.hash | 2 + package/irssi/irssi.mk | 54 + package/iucode-tool/Config.in | 5 +- package/iucode-tool/iucode-tool.hash | 2 + package/iucode-tool/iucode-tool.mk | 8 +- package/iw/iw.hash | 2 +- package/iw/iw.mk | 2 +- package/jack2/Config.in | 4 +- package/jack2/jack2.mk | 8 + package/janus-gateway/Config.in | 6 +- package/janus-gateway/janus-gateway.mk | 2 +- package/jimtcl/jimtcl.mk | 8 +- package/jpeg-turbo/jpeg-turbo.hash | 8 +- package/jpeg-turbo/jpeg-turbo.mk | 2 +- .../0001-libm.h-comment-j0-j1-y0-and-y1.patch | 49 - package/jq/Config.in.host | 11 + package/jq/jq.hash | 2 + package/jq/jq.mk | 10 +- package/jquery-datetimepicker/Config.in | 1 - package/jquery-keyboard/Config.in | 3 +- package/jquery-sidebar/Config.in | 6 + package/jquery-sidebar/jquery-sidebar.hash | 2 + package/jquery-sidebar/jquery-sidebar.mk | 17 + package/jquery-sparkline/Config.in | 3 +- package/jquery-ui-themes/Config.in | 2 +- package/jquery-ui/Config.in | 3 +- package/jquery-validation/Config.in | 3 +- .../jquery-validation/jquery-validation.hash | 2 + .../jquery-validation/jquery-validation.mk | 2 +- package/json-c/Config.in | 2 + package/jsoncpp/0001-Remove-Werror.patch | 39 + ...evert-Use-std-namespace-for-snprintf.patch | 39 - ...2-Add-option-JSONCPP_WITH_STRICT_ISO.patch | 68 + package/jsoncpp/Config.in | 5 +- package/jsoncpp/jsoncpp.mk | 5 +- ...-add-configure-flag-to-disable-tests.patch | 64 + package/kbd/0001-link-against-libintl.patch | 34 - ...002-Link-against-libintl-when-needed.patch | 49 + package/kbd/kbd.hash | 2 +- package/kbd/kbd.mk | 13 +- package/kexec-lite/Config.in | 8 +- package/kexec-lite/kexec-lite.hash | 2 + package/kexec-lite/kexec-lite.mk | 2 +- package/kexec/kexec.hash | 2 +- package/kexec/kexec.mk | 9 +- package/keyutils/keyutils.mk | 2 +- package/kismet/kismet.mk | 4 + package/kmod/kmod.hash | 2 +- package/kmod/kmod.mk | 11 +- package/knock/knock.hash | 2 +- package/knock/knock.mk | 5 +- package/kobs-ng/0001-fix-mtd-defines.patch | 73 - package/kobs-ng/Config.in | 9 - package/kobs-ng/kobs-ng.hash | 2 - package/kobs-ng/kobs-ng.mk | 13 - .../kodi-audioencoder-flac.mk | 2 +- ...entation-of-char_class_e-in-struct-t.patch | 45 + package/kodi-pvr-argustv/Config.in | 5 + package/kodi-pvr-argustv/kodi-pvr-argustv.mk | 2 +- package/kodi-pvr-filmon/Config.in | 4 + package/kodi-pvr-filmon/kodi-pvr-filmon.mk | 2 +- package/kodi-pvr-hts/kodi-pvr-hts.mk | 2 +- ...entation-of-char_class_e-in-struct-t.patch | 42 + package/kodi-pvr-mythtv/kodi-pvr-mythtv.mk | 2 +- ...entation-of-char_class_e-in-struct-t.patch | 48 + package/kodi-pvr-pctv/Config.in | 4 + package/kodi-pvr-pctv/kodi-pvr-pctv.mk | 2 +- package/kodi-pvr-stalker/Config.in | 5 + package/kodi-pvr-stalker/kodi-pvr-stalker.mk | 4 +- package/kodi-pvr-vbox/kodi-pvr-vbox.mk | 2 +- ...001-Adapt-xbmc_vis_dll.h-header-path.patch | 26 - .../kodi-visualisation-waveforhue.mk | 2 +- package/kodi/Config.in | 31 +- package/kodi/S50kodi | 4 +- package/kodi/kodi.hash | 2 + package/kodi/kodi.mk | 12 +- ...e-use-autoconf-CXX-for-proper-builds.patch | 27 + .../0002-append-to-cflags-and-cxxflags.patch | 49 + package/kompexsqlite/Config.in | 15 + package/kompexsqlite/kompexsqlite.hash | 2 + package/kompexsqlite/kompexsqlite.mk | 14 + package/lcdproc/0002-musl.patch | 102 ++ package/lcms2/lcms2.hash | 5 +- package/lcms2/lcms2.mk | 2 +- package/leafnode2/leafnode2.hash | 2 + package/leafpad/leafpad.hash | 2 +- package/leafpad/leafpad.mk | 2 +- package/less/less.hash | 4 +- package/less/less.mk | 4 +- package/lftp/lftp.hash | 2 +- package/lftp/lftp.mk | 6 +- package/libarchive/libarchive.mk | 7 + ...1-Fix-linux-detection-with-buildroot.patch | 31 + package/libasplib/Config.in | 14 + package/libasplib/libasplib.hash | 2 + package/libasplib/libasplib.mk | 13 + package/libass/libass.hash | 2 +- package/libass/libass.mk | 17 +- package/libatomic_ops/Config.in | 6 +- package/libbluray/libbluray.hash | 4 +- package/libbluray/libbluray.mk | 13 +- package/libbroadvoice/Config.in | 10 + package/libbroadvoice/libbroadvoice.mk | 19 + ...build-clock_gettime-might-need-librt.patch | 49 + package/libbsd/Config.in | 6 +- package/libbsd/libbsd.hash | 2 +- package/libbsd/libbsd.mk | 7 +- package/libcap-ng/Config.in | 2 +- package/libcdaudio/Config.in | 2 + package/libcddb/Config.in | 20 + package/libcddb/libcddb.hash | 2 + package/libcddb/libcddb.mk | 26 + package/libcec/Config.in | 6 +- package/libcgroup/Config.in | 9 + package/libcgroup/libcgroup.mk | 7 +- ...-compiler-to-build-generate_cookbook.patch | 153 ++ ...002-Add-option-to-disable-unit-tests.patch | 50 + package/libcodec2/Config.in | 7 + package/libcodec2/libcodec2.mk | 16 + .../libconfuse/0001-fix-configure-ac.patch | 27 - package/libconfuse/libconfuse.hash | 2 + package/libconfuse/libconfuse.mk | 9 +- package/libcroco/Config.in | 20 + package/libcroco/libcroco.hash | 2 + package/libcroco/libcroco.mk | 20 + package/libcrossguid/Config.in | 15 + package/libcrossguid/libcrossguid.mk | 28 + package/libcue/0001-_unused-fix.patch | 50 - package/libcue/Config.in | 2 +- package/libcue/libcue.hash | 2 +- package/libcue/libcue.mk | 14 +- package/libcurl/libcurl.hash | 2 +- package/libcurl/libcurl.mk | 6 +- package/libdcadec/libdcadec.mk | 13 +- ...e-limits.h-to-fix-build-error-on-Sol.patch | 31 + package/libdrm/Config.in | 28 +- package/libdrm/libdrm.hash | 4 +- package/libdrm/libdrm.mk | 18 +- package/libdvbpsi/Config.in | 12 + package/libdvbpsi/libdvbpsi.hash | 4 + package/libdvbpsi/libdvbpsi.mk | 14 + package/libeXosip2/libeXosip2.mk | 4 + package/libedit/libedit.mk | 6 + package/libev/libev.hash | 2 +- package/libev/libev.mk | 2 +- .../libevas-generic-loaders/Config.in | 24 +- .../libevas-generic-loaders.hash | 2 + .../libevas-generic-loaders.mk | 19 +- ...ure-add-disable-runtime-tests-option.patch | 42 + package/libevdev/libevdev.hash | 4 +- package/libevdev/libevdev.mk | 7 +- package/libevent/Config.in | 2 +- package/libevent/libevent.mk | 5 +- package/libfcgi/0006-fix-CVE-2012-6687.patch | 104 ++ ...-Fix-installation-location-of-libffi.patch | 15 +- ...Fix-use-of-compact-eh-frames-on-MIPS.patch | 26 +- package/libffi/0003-fix-typo.patch | 41 - ...-hardfloat-in-the-MIPS-assembly-code.patch | 41 + ...issing-GNU-stack-markings-in-win32.S.patch | 36 - .../0005-Fix-paths-in-libffi.pc.in.patch | 46 - package/libffi/libffi.hash | 2 +- package/libffi/libffi.mk | 14 +- package/libfm/Config.in | 4 +- package/libfm/libfm.mk | 7 + package/libfreeglut/Config.in | 20 + package/libfreeglut/libfreeglut.hash | 2 + package/libfreeglut/libfreeglut.mk | 33 + ...-compilation-issue-with-GCC-5.x-C-11.patch | 1172 ++++++++++++++ package/libfribidi/libfribidi.hash | 4 +- package/libfribidi/libfribidi.mk | 6 +- package/libfslcodec/libfslcodec.hash | 2 + package/libfslcodec/libfslcodec.mk | 4 +- package/libfslparser/libfslparser.hash | 2 + package/libfslparser/libfslparser.mk | 4 +- package/libfslvpuwrap/libfslvpuwrap.hash | 2 + package/libfslvpuwrap/libfslvpuwrap.mk | 4 +- package/libftdi/Config.in | 11 +- package/libftdi/libftdi.mk | 1 + package/libftdi1/libftdi1.mk | 2 +- package/libfuse/Config.in | 2 +- package/libfuse/libfuse.hash | 5 +- package/libfuse/libfuse.mk | 6 +- package/libg7221/Config.in | 7 + package/libg7221/libg7221.mk | 16 + package/libgail/Config.in | 4 +- package/libgcrypt/libgcrypt.hash | 6 +- package/libgcrypt/libgcrypt.mk | 2 +- ...x-compile-error-when-cross-compiling.patch | 35 + package/libgdiplus/Config.in | 19 + package/libgdiplus/libgdiplus.hash | 2 + package/libgdiplus/libgdiplus.mk | 56 + package/libglew/libglew.hash | 2 +- package/libglew/libglew.mk | 2 +- package/libglfw/Config.in | 16 + package/libglfw/libglfw.hash | 2 + package/libglfw/libglfw.mk | 28 + package/libglib2/0002-disable-tests.patch | 43 + package/libglib2/libglib2.hash | 4 +- package/libglib2/libglib2.mk | 28 +- package/libgpgme/libgpgme.mk | 2 +- package/libgsasl/libgsasl.mk | 10 +- package/libgtk2/Config.in | 4 +- package/libgtk2/libgtk2.hash | 4 +- package/libgtk2/libgtk2.mk | 54 +- package/libgtk3/Config.in | 6 +- package/libgtk3/libgtk3.hash | 4 +- package/libgtk3/libgtk3.mk | 2 +- package/libgudev/Config.in | 22 + package/libgudev/libgudev.hash | 2 + package/libgudev/libgudev.mk | 15 + package/libhdhomerun/0001-dont-strip.patch | 18 + package/libhdhomerun/Config.in | 12 + package/libhdhomerun/libhdhomerun.hash | 2 + package/libhdhomerun/libhdhomerun.mk | 32 + ...tion-when-calling-ln-at-install-time.patch | 35 + package/libhttpparser/Config.in | 17 + package/libhttpparser/libhttpparser.hash | 2 + package/libhttpparser/libhttpparser.mk | 26 + package/libidn/libidn.hash | 4 +- package/libidn/libidn.mk | 4 +- package/libiio/Config.in | 4 + package/libilbc/Config.in | 7 + package/libilbc/libilbc.mk | 15 + ...1-rename-log_msg-to-libinput_log_msg.patch | 24 +- package/libinput/libinput.hash | 4 +- package/libinput/libinput.mk | 2 +- package/libiscsi/libiscsi.mk | 2 +- package/libjpeg/libjpeg.hash | 2 +- package/libjpeg/libjpeg.mk | 2 +- ...le-free-for-answers-bigger-than-4096.patch | 25 + ...fix-whitespace-bug-in-ldns-read-zone.patch | 45 + package/libldns/Config.in | 9 + package/libldns/libldns.hash | 4 + package/libldns/libldns.mk | 47 + package/liblinear/Config.in | 4 +- package/liblinear/liblinear.hash | 2 +- package/liblinear/liblinear.mk | 6 +- package/liblockfile/liblockfile.hash | 6 +- package/liblockfile/liblockfile.mk | 8 +- package/libmbim/Config.in | 1 + package/libmbim/libmbim.mk | 2 +- package/libmicrohttpd/Config.in | 6 +- package/libmicrohttpd/libmicrohttpd.hash | 2 +- package/libmicrohttpd/libmicrohttpd.mk | 4 +- package/libmng/0001-jpeg-9a.patch | 22 + package/libmng/Config.in | 9 + package/libmng/libmng.hash | 3 + package/libmng/libmng.mk | 22 + .../0001-ndptool.c-Fix-musl-build.patch | 30 + package/libndp/libndp.mk | 2 +- package/libnet/Config.in | 12 + package/libnet/libnet.hash | 3 + package/libnet/libnet.mk | 15 + .../libnetfilter_conntrack/0001-uclinux.patch | 26 - ...2-src-Makefile.am-drop-hardcoded-ldl.patch | 27 - .../libnetfilter_conntrack.hash | 6 +- .../libnetfilter_conntrack.mk | 4 +- package/libnetfilter_queue/0002-musl.patch | 45 + package/libnfnetlink/0002-musl.patch | 32 + package/libnfs/Config.in | 7 +- package/libnfs/libnfs.hash | 2 + package/libnfs/libnfs.mk | 12 +- ...libnftnl_xfree-to-avoid-symbol-namin.patch | 436 +++-- package/libnftnl/libnftnl.hash | 4 +- package/libnftnl/libnftnl.mk | 2 +- package/libnl/libnl.hash | 4 +- package/libnl/libnl.mk | 2 +- package/libnspr/0001-nios2.patch | 22 +- package/libnspr/0002-microblaze.patch | 25 +- ...internal-getproto-functions-for-musl.patch | 35 + package/libnspr/libnspr.hash | 4 +- package/libnspr/libnspr.mk | 26 +- package/libnss/libnss.hash | 4 +- package/libnss/libnss.mk | 9 +- package/liboauth/liboauth.mk | 2 +- package/libopenh264/Config.in | 22 + package/libopenh264/libopenh264.mk | 52 + package/liboping/liboping.mk | 2 +- package/libpam-radius-auth/Config.in | 9 + .../libpam-radius-auth.hash | 2 + .../libpam-radius-auth/libpam-radius-auth.mk | 28 + package/libpam-tacplus/Config.in | 9 + package/libpam-tacplus/libpam-tacplus.mk | 21 + package/libpcap/libpcap.mk | 4 +- package/libpciaccess/0001-limits_h.patch | 4 +- package/libpciaccess/0002-musl-arm.patch | 20 + package/libpfm4/libpfm4.hash | 7 +- package/libpfm4/libpfm4.mk | 7 +- package/libplist/Config.in | 4 +- package/libplist/libplist.hash | 2 + package/libplist/libplist.mk | 3 +- package/libpng/libpng.hash | 6 +- package/libpng/libpng.mk | 2 +- package/libpthsem/libpthsem.mk | 14 + ...-paths-which-break-cross-compilation.patch | 29 + ...ibraw_x3f.cpp-remove-Byte-order-mark.patch | 39 + package/libraw/libraw.hash | 2 +- package/libraw/libraw.mk | 27 +- ...-the-CLOCK_MONOTONIC_RAW-test-condit.patch | 38 + package/libraw1394/libraw1394.hash | 4 +- package/libraw1394/libraw1394.mk | 3 +- package/librsvg/Config.in | 11 +- package/librsvg/librsvg.hash | 4 +- package/librsvg/librsvg.mk | 21 +- package/librtas/Config.in | 1 + package/libseccomp/0002-musl.patch | 28 + package/libseccomp/libseccomp.mk | 2 +- ...add-Libs.private-field-for-libgcrypt.patch | 38 + package/libsecret/libsecret.hash | 4 +- package/libsecret/libsecret.mk | 12 +- package/libselinux/Config.in | 3 + package/libselinux/libselinux.mk | 3 +- package/libsemanage/Config.in | 2 + .../0001-disable-python-bindings.patch | 21 +- ...se-high-baudrates-when-not-available.patch | 65 + .../0002-add-missing-header-include.patch | 15 - package/libserial/Config.in | 9 +- package/libserial/libserial.hash | 7 +- package/libserial/libserial.mk | 3 +- package/libserialport/libserialport.hash | 2 + package/libserialport/libserialport.mk | 13 +- package/libsigc/Config.in | 5 +- package/libsigc/libsigc.hash | 4 +- package/libsigc/libsigc.mk | 4 +- ...aglelogic.h-fix-build-with-musl-libc.patch | 36 + package/libsigrok/Config.in | 7 +- package/libsigrok/libsigrok.hash | 2 + package/libsigrok/libsigrok.mk | 13 +- package/libsigrokdecode/Config.in | 2 +- package/libsigrokdecode/libsigrokdecode.hash | 2 + package/libsigrokdecode/libsigrokdecode.mk | 13 +- .../0005-fix-sparc64-stackpointer.patch | 16 + package/libsigsegv/Config.in | 6 +- package/libsilk/Config.in | 6 + package/libsilk/libsilk.mk | 16 + package/libsndfile/libsndfile.hash | 2 +- package/libsndfile/libsndfile.mk | 2 +- package/libsoc/libsoc.hash | 2 + package/libsoc/libsoc.mk | 2 +- package/libsodium/libsodium.hash | 4 +- package/libsodium/libsodium.mk | 8 +- package/libsoil/0001-fix-makefile.patch | 40 + package/libsoil/Config.in | 12 + package/libsoil/libsoil.hash | 2 + package/libsoil/libsoil.mk | 50 + package/libsoundtouch/Config.in | 12 + package/libsoundtouch/libsoundtouch.mk | 20 + package/libsoup/libsoup.hash | 4 +- package/libsoup/libsoup.mk | 6 +- package/libsoxr/libsoxr.hash | 5 +- package/libsoxr/libsoxr.mk | 2 +- package/libssh/Config.in | 18 + package/libssh/libssh.hash | 4 + package/libssh/libssh.mk | 36 + package/libssh2/Config.in | 2 + package/libssh2/libssh2.hash | 2 +- package/libssh2/libssh2.mk | 2 +- .../libstrophe/0001-make-autoreconfable.patch | 17 +- package/libstrophe/libstrophe.mk | 4 +- package/libsvg-cairo/Config.in | 1 - package/libsvg/Config.in | 2 +- package/libsvg/libsvg.mk | 2 +- package/libtasn1/libtasn1.hash | 2 +- package/libtasn1/libtasn1.mk | 4 +- ...parts-of-TIRPC-requiring-NIS-support.patch | 14 +- ...pcgen-program-from-nfs-utils-sources.patch | 2 +- ...Disable-DES-authentification-support.patch | 148 ++ .../libtirpc/0006-Use-local-bsdqueue.h.patch | 903 ----------- ...sing-rwlock_unlocks-in-xprt_register.patch | 63 + ...Disable-DES-authentification-support.patch | 75 - package/libtirpc/Config.in | 7 - package/libtirpc/libtirpc.hash | 4 +- package/libtirpc/libtirpc.mk | 2 +- package/libtorrent/0001-cross_compile.patch | 54 +- package/libtorrent/Config.in | 8 +- package/libtorrent/libtorrent.hash | 2 + package/libtorrent/libtorrent.mk | 8 +- package/libuci/libuci.mk | 2 +- package/libuecc/Config.in | 10 + package/libuecc/libuecc.mk | 13 + package/libungif/Config.in | 8 - package/libungif/libungif.hash | 2 - package/libungif/libungif.mk | 28 - package/libunwind/Config.in | 31 +- package/libupnpp/Config.in | 12 +- package/libupnpp/libupnpp.hash | 4 +- package/libupnpp/libupnpp.mk | 2 +- package/liburcu/0002-support-aarch64.patch | 21 + package/liburcu/Config.in | 14 +- package/liburcu/liburcu.hash | 6 +- package/liburcu/liburcu.mk | 3 +- ...d-fixed-width-integer-types-in-usb.h.patch | 236 +++ .../0001-unix-fix-support-for-uClibc-ng.patch | 30 + package/libuv/libuv.hash | 2 + package/libuv/libuv.mk | 2 +- ...keytable-fix-missing-libintl-linking.patch | 57 + ...-priv.h-Use-off_t-instead-of-__off_t.patch | 111 ++ ...se-ENABLE_NLS-for-locale-related-cod.patch | 110 ++ ...ly-expose-jpeg_mem_-protoypes-when-J.patch | 56 + package/libv4l/Config.in | 21 +- package/libv4l/libv4l.hash | 2 +- package/libv4l/libv4l.mk | 23 +- .../libva-intel-driver.hash | 4 +- .../libva-intel-driver/libva-intel-driver.mk | 2 +- package/libva/libva.hash | 4 +- package/libva/libva.mk | 2 +- package/libvips/libvips.mk | 10 + package/libvncserver/Config.in | 2 + package/libwebcam/libwebcam.mk | 3 +- .../0003-fix-incorrect-inline.patch | 66 + ....cmake.in-update-include-directories.patch | 28 - ...-forward-declarations-only-for-glibc.patch | 52 - package/libxml2/libxml2.hash | 2 +- package/libxml2/libxml2.mk | 3 +- package/libxmlpp/Config.in | 7 +- package/libxmlpp/libxmlpp.hash | 4 +- package/libxmlpp/libxmlpp.mk | 4 +- package/libyuv/0001-i386-sse2.patch | 16 + package/libyuv/0002-aarch64.patch | 36 + package/libyuv/Config.in | 12 + package/libyuv/libyuv.mk | 18 + ...01-cross-compilation-configure-fixes.patch | 40 - .../0002-ppc-disassembler-build-fix.patch | 53 - package/lightning/Config.in | 6 + package/lightning/lightning.hash | 2 +- package/lightning/lightning.mk | 5 +- .../0001-Fix-default-config-file.patch | 32 +- package/lighttpd/0002-compat-latest-lua.patch | 1398 +++++++++++++++++ package/lighttpd/Config.in | 2 +- package/lighttpd/S50lighttpd | 4 +- package/lighttpd/lighttpd.hash | 2 +- package/lighttpd/lighttpd.mk | 2 +- package/linknx/Config.in | 3 +- package/links/links.hash | 2 +- package/links/links.mk | 47 +- package/linux-firmware/Config.in | 32 +- package/linux-firmware/linux-firmware.mk | 62 +- ...-conversion-spec-and-value-in-printk.patch | 29 + ...n-Unknown-symbol-tasklist_lock-err-0.patch | 38 + ...0004-Port-one-one_udp.c-to-Linux-4.1.patch | 99 ++ package/linux-fusion/Config.in | 3 +- package/linux-fusion/linux-fusion.hash | 4 +- package/linux-fusion/linux-fusion.mk | 20 +- ...fix-__packed-in-exported-kernel-head.patch | 46 - package/linux-headers/Config.in | 2 + package/linux-headers/Config.in.host | 84 +- package/linux-headers/linux-headers.mk | 74 +- package/linux-pam/Config.in | 5 +- ...configure.ac-use-AC_CONFIG_MACRO_DIR.patch | 45 + package/liquid-dsp/Config.in | 28 + package/liquid-dsp/liquid-dsp.hash | 2 + package/liquid-dsp/liquid-dsp.mk | 54 + package/lirc-tools/Config.in | 8 +- package/lirc-tools/S25lircd | 4 +- package/lirc-tools/lirc-tools.mk | 7 +- package/live555/live555.hash | 4 +- package/live555/live555.mk | 2 +- package/lldpd/Config.in | 73 + package/lldpd/lldpd.hash | 2 + package/lldpd/lldpd.mk | 38 + .../lm-sensors/0003-musl-fix-includes.patch | 100 ++ package/lm-sensors/lm-sensors.hash | 4 +- package/lm-sensors/lm-sensors.mk | 4 +- package/localedef/localedef.hash | 2 + package/localedef/localedef.mk | 2 + package/lockdev/lockdev.mk | 6 + package/lpeg/lpeg.hash | 2 +- package/lpeg/lpeg.mk | 2 +- package/lrzsz/Config.in | 10 + package/lshw/lshw.hash | 5 +- package/lshw/lshw.mk | 6 +- package/lsof/Config.in | 2 +- package/lsof/lsof.hash | 2 +- package/lsof/lsof.mk | 2 +- ...e-tirpc_auth_authdes_seccreate-tests.patch | 31 + package/ltp-testsuite/Config.in | 2 +- package/ltp-testsuite/ltp-testsuite.hash | 6 +- package/ltp-testsuite/ltp-testsuite.mk | 12 +- ...-sparc-add-missing-library.h-include.patch | 36 + package/ltrace/Config.in | 6 +- package/ltrace/ltrace.mk | 3 +- package/ltris/0001-fix-gcc5-build.patch | 308 ++++ package/lttng-babeltrace/Config.in | 7 +- package/lttng-babeltrace/lttng-babeltrace.mk | 2 +- package/lttng-libust/Config.in | 9 +- package/lttng-libust/lttng-libust.hash | 4 +- package/lttng-libust/lttng-libust.mk | 4 +- package/lttng-modules/lttng-modules.hash | 4 +- package/lttng-modules/lttng-modules.mk | 4 +- package/lttng-tools/Config.in | 22 +- package/lttng-tools/lttng-tools.hash | 2 +- package/lttng-tools/lttng-tools.mk | 4 +- ...issing-header-for-musl-compatibility.patch | 34 + .../lua-periphery/0001-fix-build-flags.patch | 21 - .../0002-Fix-build-on-SPARC.patch | 60 + package/lua-periphery/lua-periphery.hash | 2 +- package/lua-periphery/lua-periphery.mk | 4 +- .../lua/{5.3.1 => 5.3.2}/0001-root-path.patch | 0 .../0002-shared-libs-for-lua.patch | 0 .../lua/{5.3.1 => 5.3.2}/0004-lua-pc.patch | 2 +- .../lua/{5.3.1 => 5.3.2}/0011-linenoise.patch | 6 +- package/lua/Config.in | 2 +- package/lua/lua.hash | 4 +- package/lua/lua.mk | 2 +- package/luabitop/Config.in | 6 +- ...-glibc-_POSIX_PRIORITY_SCHEDULING-bu.patch | 59 + package/luaposix/luaposix.mk | 2 + package/luarocks/luarocks.hash | 2 + package/luarocks/luarocks.mk | 2 +- package/luv/Config.in | 14 + package/luv/luv.hash | 2 + package/luv/luv.mk | 29 + package/luvi/Config.in | 30 + package/luvi/luvi.hash | 2 + package/luvi/luvi.mk | 62 + package/lvm2/lvm2.hash | 4 +- package/lvm2/lvm2.mk | 4 +- package/lxc/Config.in | 6 +- package/lxc/lxc.hash | 4 +- package/lxc/lxc.mk | 11 +- package/lz4/Config.in | 2 +- package/macchanger/macchanger.mk | 1 + package/make/make.mk | 9 +- package/makedevs/makedevs.c | 40 +- package/mbedtls/Config.in | 20 + package/mbedtls/mbedtls.hash | 2 + package/mbedtls/mbedtls.mk | 64 + package/mc/mc.hash | 4 +- package/mc/mc.mk | 9 +- package/mdadm/mdadm.hash | 2 +- package/mdadm/mdadm.mk | 2 +- ...or-compatibility-with-old-toolchains.patch | 303 ---- package/media-ctl/Config.in | 9 - package/media-ctl/media-ctl.mk | 17 - package/mediastreamer/mediastreamer.mk | 21 + package/memcached/memcached.hash | 6 +- package/memcached/memcached.mk | 2 +- package/memtest86/memtest86.hash | 2 +- package/memtest86/memtest86.mk | 3 +- .../0001-demos-non-mesa-impl.patch | 244 --- ...-gl.patch => 0001-demos-optional-gl.patch} | 19 +- package/mesa3d-demos/0003-demos-x11-fix.patch | 30 - package/mesa3d-demos/Config.in | 6 +- package/mesa3d-demos/mesa3d-demos.hash | 4 +- package/mesa3d-demos/mesa3d-demos.mk | 23 +- package/mesa3d-headers/mesa3d-headers.mk | 2 +- ...m.h-not-installed-if-EGL-is-disabled.patch | 4 +- package/mesa3d/0003-musl.patch | 18 + package/mesa3d/Config.in | 52 +- package/mesa3d/mesa3d.hash | 4 +- package/mesa3d/mesa3d.mk | 24 +- package/micropython-lib/Config.in | 7 + package/micropython-lib/micropython-lib.hash | 2 + package/micropython-lib/micropython-lib.mk | 18 + package/micropython/0001-fix-version.patch | 22 + package/micropython/Config.in | 16 + package/micropython/micropython.hash | 2 + package/micropython/micropython.mk | 32 + package/midori/Config.in | 6 +- package/midori/midori.mk | 2 +- .../minicom/0001-musl-libc-compile-fix.patch | 28 + ...-change-maxnamlen-to-posixs-name-max.patch | 51 + package/minicom/Config.in | 8 +- package/minicom/minicom.hash | 2 + package/minicom/minicom.mk | 8 +- package/minidlna/Config.in | 7 +- package/minidlna/S60minidlnad | 13 +- package/minidlna/minidlna.hash | 5 +- package/minidlna/minidlna.mk | 9 +- package/minizip/Config.in | 15 + package/minizip/minizip.hash | 2 + package/minizip/minizip.mk | 16 + package/miraclecast/Config.in | 23 + package/miraclecast/miraclecast.hash | 2 + package/miraclecast/miraclecast.mk | 23 + package/mjpg-streamer/0001-musl-pthread.patch | 18 + package/mjpg-streamer/mjpg-streamer.hash | 2 + package/mjpg-streamer/mjpg-streamer.mk | 2 +- package/mke2img/mke2img | 10 +- package/moarvm/Config.in | 7 +- package/moarvm/moarvm.hash | 2 +- package/moarvm/moarvm.mk | 2 +- package/modem-manager/Config.in | 3 +- package/modem-manager/S44modem-manager | 4 +- package/modem-manager/modem-manager.hash | 2 +- package/modem-manager/modem-manager.mk | 4 +- package/mongodb/Config.in | 29 + package/mongodb/mongodb.hash | 2 + package/mongodb/mongodb.mk | 66 + package/mongoose/Config.in | 3 +- package/mongoose/S85mongoose | 41 - package/mongoose/mongoose.hash | 2 +- package/mongoose/mongoose.mk | 23 +- package/mongoose/mongoose.service | 10 - ...04-Rename-symbol-to-prevent-conflict.patch | 45 + package/mongrel2/Config.in | 24 +- package/mongrel2/mongrel2.mk | 15 + package/monkey/monkey.mk | 4 +- package/mono-gtksharp3/mono-gtksharp3.mk | 2 +- package/mono/0003-fix-parallel-install.patch | 40 - ...ing-initialization-of-have-vasprintf.patch | 29 + ...checking-for-locale_charset-function.patch | 28 + ...ove-unit-tests-from-mono-compilation.patch | 29 + ...ixing-wrong-MonoPosixHelper-location.patch | 28 + ...doc-Fixing-wrong-monodoc-search-path.patch | 29 + package/mono/Config.in | 7 +- package/mono/mono.hash | 2 +- package/mono/mono.mk | 2 +- package/monolite/monolite.hash | 2 +- package/monolite/monolite.mk | 2 +- package/mosh/Config.in | 14 +- package/mosh/mosh.mk | 2 +- package/mosquitto/Config.in | 6 +- package/mosquitto/S50mosquitto | 4 +- package/mosquitto/mosquitto.hash | 2 +- package/mosquitto/mosquitto.mk | 10 +- package/mosquitto/mosquitto.service | 10 + package/motion/motion.mk | 2 +- ...-notify-Don-t-use-constexpr-on-Haiku.patch | 28 + ...notify-use-constexpr-only-with-glibc.patch | 31 + ...ex-Cond-use-constexpr-only-with-glib.patch | 97 ++ ...e-include-stdio.h-for-prctl-as-well.patch} | 10 +- ...gure.ac-check-if-libatomic-is-needed.patch | 40 + package/mpd/Config.in | 30 +- package/mpd/S95mpd | 4 +- package/mpd/mpd.hash | 2 +- package/mpd/mpd.mk | 9 +- package/mpdecimal/mpdecimal.hash | 4 +- package/mpdecimal/mpdecimal.mk | 8 +- package/mpg123/mpg123.hash | 6 +- package/mpg123/mpg123.mk | 5 +- .../mplayer/0001-disable-install-strip.patch | 21 +- package/mplayer/0002-fix-cc-parsing.patch | 22 - ...002-mpdemux-live555-async-interface.patch} | 0 package/mplayer/0004-add-arc-support.patch | 13 - .../0005-Support-newer-GIFLIB-versions.patch | 268 ---- ...-Support-newer-GIFLIB-versions-part2.patch | 44 - package/mplayer/Config.in | 7 +- package/mplayer/mplayer.hash | 8 +- package/mplayer/mplayer.mk | 41 +- package/mraa/Config.in | 14 + package/mraa/mraa.mk | 25 + .../0001-DVMRP-report-missing-subnet.patch | 35 + package/msgpack/Config.in | 4 +- package/msmtp/msmtp.hash | 6 +- package/msmtp/msmtp.mk | 3 +- package/mtd/Config.in | 3 + package/mtd/mtd.mk | 10 +- .../0001-Fix-build-with-musl-libc.patch | 30 + ...-include-fpu-control-with-glibc-only.patch | 26 + .../musepack/0004-missing-sys-select.patch | 21 + package/musl/0001-fix-uselocale.patch | 30 - package/musl/Config.in | 3 +- package/musl/musl.hash | 2 +- package/musl/musl.mk | 11 +- package/mutt/mutt.hash | 4 +- package/mutt/mutt.mk | 11 +- ...0007-dont-install-in-mysql-directory.patch | 182 +++ package/mysql/S97mysqld | 14 +- package/mysql/mysql.mk | 47 +- package/nano/nano.hash | 2 +- package/nano/nano.mk | 2 +- package/nasm/nasm.hash | 2 +- package/nasm/nasm.mk | 2 +- package/nbd/0001-avoid-name-clashing.patch | 28 + package/nbd/nbd.hash | 6 +- package/nbd/nbd.mk | 2 +- package/neard/Config.in | 2 + package/neard/S53neard | 4 +- package/net-tools/net-tools.mk | 2 +- package/netatalk/Config.in | 5 +- package/netatalk/netatalk.hash | 6 +- package/netatalk/netatalk.mk | 2 +- package/netbsd-queue/Config.in | 2 + package/netbsd-queue/netbsd-queue.hash | 2 + package/netbsd-queue/netbsd-queue.mk | 24 + package/netplug/S29netplug | 4 +- package/netsniff-ng/Config.in | 23 + package/netsniff-ng/netsniff-ng.hash | 2 + package/netsniff-ng/netsniff-ng.mk | 51 + package/netsnmp/S59snmpd | 22 +- package/netsnmp/netsnmp.mk | 9 +- ... => 0001-disable-testsuite-examples.patch} | 0 .../nettle/0001-fix-shared-only-build.patch | 75 - package/nettle/nettle.hash | 2 +- package/nettle/nettle.mk | 15 +- package/network-manager/Config.in | 1 + package/network-manager/S45network-manager | 4 +- package/network-manager/network-manager.hash | 4 +- package/network-manager/network-manager.mk | 4 +- ...ntd-Add-check-for-struct-file_handle.patch | 46 + ...4-statd-Fix-test-for-foreground-mode.patch | 30 - package/nfs-utils/S60nfs | 26 +- package/nfs-utils/nfs-utils.hash | 4 +- package/nfs-utils/nfs-utils.mk | 38 +- package/nfs-utils/nfs-utils_env.sh | 3 + package/nfs-utils/nfs-utils_tmpfiles.conf | 4 + package/nftables/nftables.hash | 4 +- package/nftables/nftables.mk | 2 +- package/nginx/S50nginx | 2 +- package/nginx/nginx.hash | 2 +- package/nginx/nginx.mk | 4 +- package/nmap/nmap.hash | 2 +- package/nmap/nmap.mk | 2 +- ...-build-error-without-OpenSSL-support.patch | 54 - .../0001-remove-python-bz2-dependency.patch | 0 ...02-gyp-force-link-command-to-use-CXX.patch | 0 .../0003-use-python-variable.patch | 0 .../0004-fix-musl-USE-MISC-build-issue.patch | 47 + .../0005-Fix-support-for-uClibc-ng.patch | 33 + ...ariable-instead-of-hardcoding-Python.patch | 63 - ...-build-error-without-OpenSSL-support.patch | 46 - ...move-dependency-on-Python-bz2-module.patch | 14 +- ...02-gyp-force-link-command-to-use-CXX.patch | 4 +- ...ariable-instead-of-hardcoding-Python.patch | 112 ++ .../5.5.0/0004-Fix-va_list-not-declared.patch | 39 + .../0005-Fix-support-for-uClibc-ng.patch | 33 + package/nodejs/Config.in | 47 +- package/nodejs/nodejs.hash | 8 +- package/nodejs/nodejs.mk | 31 +- package/noip/noip.hash | 2 + package/noip/noip.mk | 7 +- package/nss-pam-ldapd/Config.in | 25 + package/nss-pam-ldapd/S45nslcd | 25 + package/nss-pam-ldapd/nslcd.service | 11 + package/nss-pam-ldapd/nss-pam-ldapd.hash | 4 + package/nss-pam-ldapd/nss-pam-ldapd.mk | 46 + package/ntfs-3g/ntfs-3g.mk | 2 +- package/ntp/0002-ntp-syscalls-fallback.patch | 27 + package/ntp/Config.in | 6 + package/ntp/S49ntp | 4 +- package/ntp/ntp.hash | 6 +- package/ntp/ntp.mk | 5 +- package/numactl/numactl.hash | 4 + package/numactl/numactl.mk | 8 +- package/nut/nut.mk | 7 +- package/nvidia-driver/Config.in | 1 + package/nvidia-driver/nvidia-driver.hash | 4 +- package/nvidia-driver/nvidia-driver.mk | 2 +- package/obsidian-cursors/Config.in | 6 + .../obsidian-cursors/obsidian-cursors.hash | 2 + package/obsidian-cursors/obsidian-cursors.mk | 18 + package/odhcp6c/odhcp6c.hash | 2 + package/odhcp6c/odhcp6c.mk | 2 +- package/ofono/0001-uclibc-backtrace.patch | 55 +- package/ofono/Config.in | 6 +- package/ofono/S46ofono | 4 +- package/ofono/ofono.hash | 2 +- package/ofono/ofono.mk | 7 +- ...001-Remove-fvisibiliy-inlines-hidden.patch | 26 + package/ola/Config.in | 12 +- package/ola/ola.hash | 3 + package/ola/ola.mk | 4 +- package/olsr/S50olsr | 4 +- package/olsr/olsr.mk | 2 +- package/omniorb/omniorb.mk | 13 +- ...NER-and-GROUPS-parameters-to-install.patch | 15 - package/open-plc-utils/open-plc-utils.mk | 2 +- .../0001-Fix-detection-of-C11-atomics.patch | 53 + package/openal/Config.in | 32 + package/openal/openal.hash | 2 + package/openal/openal.mk | 53 + package/openbox/Config.in | 27 + package/openbox/openbox.hash | 2 + package/openbox/openbox.mk | 61 + ...01-core-fix-x86-PIC-code-compilation.patch | 49 + ...turn-type-value-VideoFrameSource_GPU.patch | 40 + ...kgconfig.cmake-rework-opencv.pc-gene.patch | 156 ++ package/opencv/Config.in | 249 +-- package/opencv/opencv.mk | 142 +- ...ad-based-parallel_for-with-gcc-4.4.3.patch | 0 ...ix-support-for-pthreads-parallel_for.patch | 0 package/opencv3/Config.in | 339 ++++ package/opencv3/opencv3.mk | 363 +++++ package/openipmi/openipmi.hash | 2 + package/openipmi/openipmi.mk | 8 +- package/openldap/openldap.hash | 8 +- package/openldap/openldap.mk | 4 +- package/openntpd/S49ntp | 6 +- package/openntpd/openntpd.mk | 4 + package/openobex/Config.in | 5 +- package/openobex/openobex.hash | 3 + package/openobex/openobex.mk | 14 +- ...tion-error-in-src-flash-nor-mini51.c.patch | 30 - ...configuration-to-force-static-librar.patch | 14 +- package/openocd/Config.in | 9 +- package/openocd/openocd.hash | 6 +- package/openocd/openocd.mk | 4 +- package/openpgm/Config.in | 19 +- package/openpgm/openpgm.hash | 2 + package/openpgm/openpgm.mk | 17 +- ...ter-regex-for-cmake-system-processor.patch | 89 -- ...-stack-libraries-to-lib-subdirectory.patch | 133 ++ ...002-cmake-install-oplk-headers-files.patch | 32 + ...user-space-stack-enable-shared-build.patch | 54 - ...AKE_CURRENT_SOURCE_DIR-instead-of-CM.patch | 154 ++ ...T_NAME-instead-of-CMAKE_PROJECT_NAME.patch | 125 ++ .../0005-Add-top-level-CMakeLists.txt.patch | 170 ++ package/openpowerlink/Config.in | 124 +- package/openpowerlink/openpowerlink.hash | 5 + package/openpowerlink/openpowerlink.mk | 135 +- package/openssh/S50sshd | 4 +- package/openssh/openssh.hash | 4 +- package/openssh/openssh.mk | 6 +- ...building-manpages-if-we-re-not-going.patch | 27 + ...Fix-issue-with-signature-generation.patch} | 69 +- package/openssl/001-do-not-build-docs.patch | 13 - package/openssl/openssl.hash | 9 +- package/openssl/openssl.mk | 34 +- package/openswan/openswan.hash | 4 +- package/openswan/openswan.mk | 2 +- package/openvmtools/Config.in | 11 +- package/openvmtools/S10vmtoolsd | 4 +- package/openvpn/Config.in | 6 + package/openvpn/S60openvpn | 22 +- package/openvpn/openvpn.hash | 2 +- package/openvpn/openvpn.mk | 8 +- package/opkg/opkg.mk | 2 +- .../0001-Include-time.h-for-nanosleep.patch | 44 - package/oprofile/0001-musl.patch | 48 + package/oprofile/oprofile.hash | 5 +- package/oprofile/oprofile.mk | 16 +- ...bashism-in-ARM-optimization-handling.patch | 43 - package/opus/opus.hash | 2 +- package/opus/opus.mk | 2 +- package/opusfile/opusfile.hash | 2 +- package/opusfile/opusfile.mk | 2 +- package/p11-kit/p11-kit.hash | 2 +- package/p11-kit/p11-kit.mk | 2 +- package/pango/0001-no-tests.patch | 21 +- package/pango/Config.in | 4 +- package/pango/S25pango | 20 - package/pango/pango.hash | 4 +- package/pango/pango.mk | 62 +- package/pangomm/Config.in | 22 + package/pangomm/pangomm.hash | 2 + package/pangomm/pangomm.mk | 16 + .../parted/0004-fix-includes-for-musl.patch | 18 + package/patch/patch.mk | 7 + package/pax-utils/Config.in | 4 + package/pax-utils/pax-utils.hash | 2 +- package/pax-utils/pax-utils.mk | 2 +- package/pciutils/pciutils.hash | 2 +- package/pciutils/pciutils.mk | 4 +- package/pcmanfm/Config.in | 4 +- package/pcre/pcre.hash | 5 +- package/pcre/pcre.mk | 2 +- package/perl-crypt-openssl-random/Config.in | 3 +- .../perl-crypt-openssl-random.hash | 4 +- .../perl-crypt-openssl-random.mk | 4 +- .../perl-crypt-openssl-rsa.mk | 2 +- .../perl-datetime-tiny/perl-datetime-tiny.mk | 1 - package/perl-db-file/Config.in | 3 +- package/perl-db-file/perl-db-file.mk | 11 +- package/perl-digest-hmac/perl-digest-hmac.mk | 1 - package/perl-digest-sha1/perl-digest-sha1.mk | 2 +- .../perl-encode-detect/perl-encode-detect.mk | 2 +- .../perl-encode-locale/perl-encode-locale.mk | 1 - package/perl-file-util/perl-file-util.mk | 3 +- package/perl-gd/perl-gd.mk | 2 +- package/perl-gdgraph/perl-gdgraph.mk | 2 +- package/perl-gdtextutil/perl-gdtextutil.mk | 1 - package/perl-html-parser/Config.in | 4 + package/perl-html-parser/perl-html-parser.mk | 2 +- package/perl-html-tagset/perl-html-tagset.mk | 1 - package/perl-http-cookies/Config.in | 1 + .../perl-http-cookies/perl-http-cookies.mk | 2 +- package/perl-http-daemon/Config.in | 2 + package/perl-http-daemon/perl-http-daemon.mk | 2 +- package/perl-http-date/perl-http-date.mk | 1 - .../perl-http-message/perl-http-message.hash | 4 +- .../perl-http-message/perl-http-message.mk | 13 +- package/perl-io-html/perl-io-html.mk | 1 - .../perl-io-socket-ssl.hash | 4 +- .../perl-io-socket-ssl/perl-io-socket-ssl.mk | 5 +- package/perl-json-tiny/perl-json-tiny.mk | 1 - package/perl-libwww-perl/Config.in | 4 + .../perl-libwww-perl/perl-libwww-perl.hash | 4 +- package/perl-libwww-perl/perl-libwww-perl.mk | 3 +- .../perl-lwp-mediatypes.mk | 1 - package/perl-mail-dkim/perl-mail-dkim.mk | 3 +- package/perl-mailtools/perl-mailtools.mk | 3 +- package/perl-mime-base64/Config.in | 4 + package/perl-mime-base64/perl-mime-base64.mk | 1 - .../perl-module-build/perl-module-build.hash | 4 +- .../perl-module-build/perl-module-build.mk | 2 +- .../perl-mojolicious/perl-mojolicious.hash | 4 +- package/perl-mojolicious/perl-mojolicious.mk | 3 +- package/perl-net-dns/Config.in | 4 - package/perl-net-dns/perl-net-dns.hash | 4 +- package/perl-net-dns/perl-net-dns.mk | 6 +- package/perl-net-http/perl-net-http.hash | 4 +- package/perl-net-http/perl-net-http.mk | 4 +- package/perl-net-ssleay/perl-net-ssleay.hash | 4 +- package/perl-net-ssleay/perl-net-ssleay.mk | 4 +- package/perl-netaddr-ip/Config.in | 5 +- package/perl-netaddr-ip/perl-netaddr-ip.hash | 4 +- package/perl-netaddr-ip/perl-netaddr-ip.mk | 5 +- package/perl-path-tiny/perl-path-tiny.mk | 1 - package/perl-time-hires/Config.in | 4 + package/perl-time-hires/perl-time-hires.mk | 1 - package/perl-timedate/perl-timedate.mk | 2 +- package/perl-try-tiny/perl-try-tiny.mk | 1 - package/perl-uri/perl-uri.hash | 4 +- package/perl-uri/perl-uri.mk | 3 +- package/perl-www-robotrules/Config.in | 2 +- package/perl-xml-libxml/perl-xml-libxml.hash | 4 +- package/perl-xml-libxml/perl-xml-libxml.mk | 4 +- .../perl-xml-namespacesupport.mk | 2 +- .../perl-xml-sax-base/perl-xml-sax-base.mk | 2 +- package/perl-xml-sax/perl-xml-sax.mk | 2 +- package/perl/0002-dynaloader-hints.patch | 13 - package/perl/perl.hash | 10 +- package/perl/perl.mk | 15 +- package/php-ssh2/Config.in | 2 + package/php/Config.ext | 3 +- package/php/php.hash | 2 +- package/php/php.mk | 10 +- package/picocom/Config.in | 7 +- package/picocom/picocom.hash | 2 + package/picocom/picocom.mk | 6 +- .../0003-Makefile-fix-static-link.patch | 23 + package/pinentry/Config.in | 4 +- package/pinentry/pinentry.mk | 11 +- package/pixman/0001-Disable-tests.patch | 29 + package/pixman/0001-check-fe-divbyzero.patch | 41 - ...re-processor-issues-in-LEAF_MIPS32R2.patch | 33 - ...ivate-include-float.h-only-in-C-code.patch | 46 + package/pixman/pixman.hash | 4 +- package/pixman/pixman.mk | 12 +- package/pkg-autotools.mk | 12 +- package/pkg-cmake.mk | 15 +- package/pkg-download.mk | 8 +- package/pkg-generic.mk | 110 +- package/pkg-kconfig.mk | 43 +- package/pkg-kernel-module.mk | 5 + package/pkg-perl.mk | 9 + package/pkg-utils.mk | 4 +- package/pkg-virtual.mk | 2 + ...all-variables-sysroot-prefix-problem.patch | 58 + package/pkgconf/0001-fix-variable.patch | 29 - package/pkgconf/0002-fix-double-sysroot.patch | 40 - package/pkgconf/pkgconf.hash | 4 +- package/pkgconf/pkgconf.mk | 4 +- package/poco/0001-aarch64.patch | 39 - ...-add-the-staging-path-to-search-path.patch | 38 + .../poco/0002-add-cross-build-config.patch | 82 - ...002-poco-don-t-build-debug-libraries.patch | 33 + ...ting-declaration-with-unbundled-pcre.patch | 56 + .../poco/0003-add-staging-search-path.patch | 23 - package/poco/0004-dont-build-debug-libs.patch | 19 - .../poco/0004-fix-unbundled-pcre-usage.patch | 72 + ...005-add-missing-LIBPREFIX-definition.patch | 29 + package/poco/Config.in | 5 +- package/poco/poco.hash | 2 - package/poco/poco.mk | 10 +- package/polarssl/polarssl.hash | 4 +- package/polarssl/polarssl.mk | 5 +- package/popt/popt.hash | 2 +- package/popt/popt.mk | 3 +- package/portaudio/portaudio.hash | 2 +- package/portaudio/portaudio.mk | 4 +- package/portmap/S13portmap | 4 +- package/portmap/portmap.hash | 2 + package/postgresql/S50postgresql | 4 +- package/postgresql/postgresql.hash | 4 +- package/postgresql/postgresql.mk | 5 +- package/powerpc-utils/Config.in | 5 + .../0003-add-missing-sys-time.h-header.patch | 35 + .../0004-add-missing-stdio.h-header.patch | 35 + package/powertop/powertop.mk | 2 +- package/pppd/pppd.mk | 2 +- .../0003-pqueue.h-include-sys-types.h.patch | 30 + ...02-use-pkgconfig-for-ncursesw-cflags.patch | 15 +- package/procps-ng/procps-ng.hash | 4 +- package/procps-ng/procps-ng.mk | 14 +- package/proftpd/S50proftpd | 4 +- package/proftpd/proftpd.hash | 6 +- package/proftpd/proftpd.mk | 6 +- package/protobuf-c/Config.in | 2 +- package/protobuf-c/protobuf-c.hash | 2 + package/protobuf-c/protobuf-c.mk | 2 +- package/protobuf/Config.in | 26 +- package/protobuf/protobuf.hash | 2 + package/protobuf/protobuf.mk | 4 +- package/psmisc/psmisc.hash | 1 + package/psmisc/psmisc.mk | 2 + package/ptpd/S65ptpd | 4 +- package/ptpd2/0001-musl.patch | 15 + package/ptpd2/Config.in | 3 +- package/ptpd2/S65ptpd2 | 4 +- package/ptpd2/ptpd2.hash | 2 +- package/ptpd2/ptpd2.mk | 6 +- .../0001-padsp-Make-it-compile-on-musl.patch | 75 + package/pulseaudio/Config.in | 4 +- package/pulseaudio/S50pulseaudio | 4 +- package/pulseaudio/pulseaudio.hash | 6 +- package/pulseaudio/pulseaudio.mk | 38 +- package/pulseview/0001-musl.patch | 54 + package/pulseview/Config.in | 7 +- package/pulseview/pulseview.hash | 3 + package/pulseview/pulseview.mk | 11 +- package/pure-ftpd/pure-ftpd.mk | 8 + package/pv/pv.mk | 9 +- package/python-alsaaudio/Config.in | 2 +- .../python-alsaaudio/python-alsaaudio.hash | 4 +- package/python-alsaaudio/python-alsaaudio.mk | 4 +- package/python-backports-abc/Config.in | 7 + .../python-backports-abc.hash | 3 + .../python-backports-abc.mk | 13 + package/python-beautifulsoup4/Config.in | 10 + .../python-beautifulsoup4.hash | 4 + .../python-beautifulsoup4.mk | 14 + package/python-can/python-can.hash | 3 + package/python-can/python-can.mk | 6 +- package/python-cbor/Config.in | 7 + package/python-cbor/python-cbor.hash | 3 + package/python-cbor/python-cbor.mk | 13 + package/python-cffi/python-cffi.hash | 6 +- package/python-cffi/python-cffi.mk | 14 +- package/python-cherrypy/python-cherrypy.hash | 6 +- package/python-cherrypy/python-cherrypy.mk | 2 +- package/python-click/Config.in | 7 + package/python-click/python-click.hash | 3 + package/python-click/python-click.mk | 14 + package/python-configshell-fb/Config.in | 1 + .../python-configshell-fb.mk | 4 +- package/python-cssselect/Config.in | 6 + .../python-cssselect/python-cssselect.hash | 4 + package/python-cssselect/python-cssselect.mk | 14 + package/python-ecdsa/Config.in | 6 + package/python-ecdsa/python-ecdsa.hash | 4 + package/python-ecdsa/python-ecdsa.mk | 14 + package/python-html5lib/Config.in | 6 + package/python-html5lib/python-html5lib.hash | 3 + package/python-html5lib/python-html5lib.mk | 14 + package/python-httplib2/python-httplib2.hash | 6 +- package/python-httplib2/python-httplib2.mk | 2 +- package/python-idna/Config.in | 10 + package/python-idna/python-idna.hash | 3 + package/python-idna/python-idna.mk | 14 + package/python-ipaddress/Config.in | 7 + .../python-ipaddress/python-ipaddress.hash | 3 + package/python-ipaddress/python-ipaddress.mk | 13 + package/python-jinja2/python-jinja2.hash | 6 +- package/python-jinja2/python-jinja2.mk | 2 +- package/python-lxml/python-lxml.hash | 2 +- package/python-lxml/python-lxml.mk | 2 +- ...ld-with-SSLv2-when-it-is-not-availab.patch | 36 + package/python-m2crypto/python-m2crypto.hash | 4 +- package/python-m2crypto/python-m2crypto.mk | 20 +- package/python-mako/python-mako.hash | 4 + package/python-mako/python-mako.mk | 2 +- package/python-mistune/Config.in | 7 + package/python-mistune/python-mistune.hash | 3 + package/python-mistune/python-mistune.mk | 14 + package/python-msgpack/Config.in | 5 +- package/python-msgpack/python-msgpack.hash | 3 + package/python-msgpack/python-msgpack.mk | 2 +- package/python-netaddr/Config.in | 6 + package/python-netaddr/python-netaddr.hash | 3 + package/python-netaddr/python-netaddr.mk | 14 + .../python-networkmanager.hash | 6 +- .../python-networkmanager.mk | 2 +- ...-enable-frexpl-and-ldexpl-for-uClibc.patch | 33 + package/python-numpy/Config.in | 13 +- package/python-paho-mqtt/Config.in | 9 + .../python-paho-mqtt/python-paho-mqtt.hash | 3 + package/python-paho-mqtt/python-paho-mqtt.mk | 14 + package/python-pam/Config.in | 6 +- package/python-paramiko/Config.in | 10 + package/python-paramiko/python-paramiko.hash | 4 + package/python-paramiko/python-paramiko.mk | 14 + package/python-pillow/python-pillow.mk | 2 +- ...-disable-unneeded-build-dependencies.patch | 37 + package/python-protobuf/python-protobuf.mk | 2 +- package/python-psutil/python-psutil.hash | 6 +- package/python-psutil/python-psutil.mk | 2 +- package/python-pyasn/python-pyasn.hash | 3 + package/python-pyasn/python-pyasn.mk | 4 +- package/python-pycli/python-pycli.mk | 2 +- .../python-pycparser/python-pycparser.hash | 3 + package/python-pycparser/python-pycparser.mk | 14 + package/python-pydal/Config.in | 1 - .../python-pyftpdlib/python-pyftpdlib.hash | 5 +- package/python-pyftpdlib/python-pyftpdlib.mk | 5 +- .../python-pyparsing/python-pyparsing.hash | 5 +- package/python-pyparsing/python-pyparsing.mk | 4 +- package/python-pyparted/Config.in | 12 + package/python-pyparted/python-pyparted.hash | 2 + package/python-pyparted/python-pyparted.mk | 14 + package/python-pypcap/python-pypcap.mk | 2 +- package/python-pyratemp/Config.in | 8 + package/python-pyratemp/python-pyratemp.hash | 4 + package/python-pyratemp/python-pyratemp.mk | 14 + package/python-pyroute2/Config.in | 7 + package/python-pyroute2/python-pyroute2.hash | 3 + package/python-pyroute2/python-pyroute2.mk | 14 + package/python-pysmb/Config.in | 15 + package/python-pysmb/python-pysmb.hash | 3 + package/python-pysmb/python-pysmb.mk | 14 + package/python-pytz/python-pytz.mk | 2 +- ...ng-libudev-on-systems-without-ldconf.patch | 47 + package/python-pyudev/Config.in | 14 + package/python-pyudev/python-pyudev.hash | 3 + package/python-pyudev/python-pyudev.mk | 14 + package/python-pyxml/Config.in | 12 - package/python-pyxml/python-pyxml.hash | 2 - package/python-pyxml/python-pyxml.mk | 17 - package/python-pyyaml/python-pyyaml.mk | 2 +- package/python-pyzmq/python-pyzmq.mk | 2 +- package/python-requests/Config.in | 2 + package/python-requests/python-requests.hash | 6 +- package/python-requests/python-requests.mk | 2 +- package/python-rtslib-fb/Config.in | 1 + package/python-rtslib-fb/python-rtslib-fb.mk | 3 +- package/python-serial/Config.in | 2 +- package/python-serial/python-serial.hash | 3 + package/python-serial/python-serial.mk | 4 +- .../0001-add-executable.patch | 45 +- package/python-setuptools/Config.in | 6 +- .../python-setuptools/python-setuptools.hash | 6 +- .../python-setuptools/python-setuptools.mk | 2 +- package/python-singledispatch/Config.in | 8 + .../python-singledispatch.hash | 3 + .../python-singledispatch.mk | 14 + package/python-six/python-six.hash | 2 +- package/python-six/python-six.mk | 2 +- package/python-smbus-cffi/Config.in | 10 + .../python-smbus-cffi/python-smbus-cffi.hash | 3 + .../python-smbus-cffi/python-smbus-cffi.mk | 15 + .../0001-Fix-build-with-musl-libc.patch | 43 + package/python-spidev/python-spidev.hash | 2 + package/python-spidev/python-spidev.mk | 2 +- package/python-tornado/Config.in | 2 + package/python-tornado/python-tornado.hash | 4 +- package/python-tornado/python-tornado.mk | 2 +- package/python-twisted/Config.in | 1 - package/python-twisted/python-twisted.hash | 2 +- package/python-twisted/python-twisted.mk | 2 +- package/python-urllib3/Config.in | 9 + package/python-urllib3/python-urllib3.hash | 3 + package/python-urllib3/python-urllib3.mk | 14 + package/python-urwid/python-urwid.hash | 3 + package/python-urwid/python-urwid.mk | 2 +- package/python-web2py/S51web2py | 4 +- package/python-web2py/python-web2py.hash | 2 + package/python-web2py/python-web2py.mk | 12 +- package/python-webpy/python-webpy.hash | 2 + package/python-webpy/python-webpy.mk | 4 +- package/python-werkzeug/python-werkzeug.hash | 6 +- package/python-werkzeug/python-werkzeug.mk | 2 +- .../python-zope-interface.hash | 5 +- .../python-zope-interface.mk | 2 +- package/python/python.hash | 6 +- package/python/python.mk | 2 +- ...do-not-add-invalid-header-locations.patch} | 18 +- ...stall-location-of-_sysconfigdata.py.patch} | 30 +- ...ld-of-pyc-and-pyo-files-conditional.patch} | 38 +- ...taddrinfo-configure-test-when-cross-.patch | 27 + ...e-to-disable-the-build-of-certain-e.patch} | 38 +- ...stutils-sysconfig-use-sysconfigdata.patch} | 22 +- ...-header-paths-for-cross-compilation.patch} | 50 +- ...ok-in-usr-lib-termcap-for-libraries.patch} | 17 +- ...h => 0009-Don-t-add-multiarch-paths.patch} | 17 +- ...> 0010-Abort-on-failed-module-build.patch} | 17 +- ...tch => 0011-Serial-ioctl-workaround.patch} | 15 +- ...-shebang-of-Python-scripts-for-cros.patch} | 18 +- ...g.sh.in-ensure-sed-invocations-only.patch} | 13 +- ...de-invalid-path-to-ncursesw-headers.patch} | 17 +- ...ocale-and-set-to-default-when-addin.patch} | 18 +- ...Add-importlib-fix-for-PEP-3147-issue.patch | 79 + ...disable-installation-of-test-module.patch} | 29 +- ...0018-Add-an-option-to-disable-pydoc.patch} | 39 +- ...19-Add-an-option-to-disable-lib2to3.patch} | 73 +- ...ption-to-disable-the-sqlite3-module.patch} | 65 +- ...-an-option-to-disable-the-tk-module.patch} | 31 +- ...option-to-disable-the-curses-module.patch} | 27 +- ...0023-Add-an-option-to-disable-expat.patch} | 35 +- ...Add-an-option-to-disable-CJK-codecs.patch} | 17 +- ...> 0025-Add-an-option-to-disable-NIS.patch} | 17 +- ...dd-an-option-to-disable-unicodedata.patch} | 17 +- ... 0027-Add-an-option-to-disable-IDLE.patch} | 39 +- ...28-Add-an-option-to-disable-decimal.patch} | 23 +- ...n-to-disable-the-ossaudiodev-module.patch} | 17 +- package/python3/004-old-stdlib-cache.patch | 78 - .../006-cross-compile-getaddrinfo.patch | 21 - .../python3/016-distutils-no-pep3147.patch | 36 - package/python3/python3.mk | 10 + package/qemu/qemu.hash | 2 +- package/qemu/qemu.mk | 6 +- package/qhull/Config.in | 6 +- package/qhull/qhull.hash | 4 + package/qhull/qhull.mk | 5 +- ...QUtil.hh-time_t-needs-include-time.h.patch | 29 - package/qpdf/qpdf.hash | 6 +- package/qpdf/qpdf.mk | 2 +- ...-compiler-detection-with-_ARG1-_ARG2.patch | 52 - package/qt-webkit-kiosk/Config.in | 1 - ...onstructor-error-for-legacy-c-compil.patch | 163 ++ ...usion-order-when-building-statically.patch | 105 ++ package/qt/Config.in | 10 +- package/qt/Config.mouse.in | 5 + package/qt/qt.mk | 21 + package/qt5/Config.in | 6 +- package/qt5/qt5.mk | 2 +- package/qt5/qt53d/Config.in | 19 + package/qt5/qt53d/qt53d.hash | 2 + package/qt5/qt53d/qt53d.mk | 41 + package/qt5/qt5base/0002-mkspecs-files.patch | 39 - package/qt5/qt5base/0003-xcb-egl-fixes.patch | 22 +- .../0004-no-gold-linker-for-host-build.patch | 41 - .../0007-big_endian-fix_destformat.patch | 34 - ...tGui-force-image-dir-in-include_path.patch | 89 -- .../0009-fix-eglfs-for-sunxi-mali.patch | 109 ++ ...t-conditional-for-defining-QT_SOCKLE.patch | 40 + package/qt5/qt5base/Config.in | 6 +- package/qt5/qt5base/qmake.conf | 24 + package/qt5/qt5base/qplatformdefs.h | 1 + package/qt5/qt5base/qt5base.hash | 6 +- package/qt5/qt5base/qt5base.mk | 30 +- .../qt5/qt5connectivity/qt5connectivity.hash | 6 +- .../qt5/qt5declarative/qt5declarative.hash | 6 +- package/qt5/qt5enginio/qt5enginio.hash | 6 +- .../qt5graphicaleffects.hash | 6 +- .../qt5/qt5imageformats/qt5imageformats.hash | 6 +- package/qt5/qt5multimedia/qt5multimedia.hash | 6 +- package/qt5/qt5multimedia/qt5multimedia.mk | 6 +- package/qt5/qt5quick1/qt5quick1.hash | 6 +- .../qt5quickcontrols/qt5quickcontrols.hash | 6 +- .../qt5/qt5quickcontrols/qt5quickcontrols.mk | 4 +- package/qt5/qt5script/qt5script.hash | 6 +- package/qt5/qt5sensors/qt5sensors.hash | 6 +- package/qt5/qt5serialport/qt5serialport.hash | 6 +- package/qt5/qt5svg/qt5svg.hash | 6 +- package/qt5/qt5webchannel/qt5webchannel.hash | 6 +- package/qt5/qt5webchannel/qt5webchannel.mk | 6 + .../qt5webkit-examples.hash | 6 +- package/qt5/qt5webkit/Config.in | 1 - package/qt5/qt5webkit/qt5webkit.hash | 6 +- package/qt5/qt5websockets/qt5websockets.hash | 6 +- package/qt5/qt5x11extras/qt5x11extras.hash | 6 +- .../qt5/qt5xmlpatterns/qt5xmlpatterns.hash | 6 +- ...ure-fix-static-linking-with-readline.patch | 41 + package/quagga/quagga.mk | 9 + package/quazip/quazip.mk | 2 +- package/quota/quota.mk | 7 + package/rabbitmq-c/Config.in | 15 + package/rabbitmq-c/rabbitmq-c.hash | 2 + package/rabbitmq-c/rabbitmq-c.mk | 38 + package/racehound/Config.in | 9 +- package/radvd/S50radvd | 2 +- package/radvd/radvd.hash | 1 + package/radvd/radvd.mk | 2 + ...heme-check-for-compiled-python-files.patch | 31 + package/ranger/Config.in | 21 + package/ranger/ranger.hash | 2 + package/ranger/ranger.mk | 26 + package/rapidjson/rapidjson.mk | 2 + package/rapidxml/Config.in | 11 + package/rapidxml/rapidxml.hash | 6 + package/rapidxml/rapidxml.mk | 27 + .../0001-Fix-install-file-list.patch | 29 + .../read-edid/0002-Fix-compiler-check.patch | 19 + package/read-edid/Config.in | 2 - package/read-edid/read-edid.hash | 2 +- package/read-edid/read-edid.mk | 13 +- .../skeleton/etc => package/readline}/inputrc | 0 package/readline/readline.mk | 14 +- package/redis/S50redis | 4 +- package/redis/redis.hash | 4 +- package/redis/redis.mk | 2 +- package/rfkill/Config.in | 7 + package/rfkill/rfkill.hash | 2 + package/rfkill/rfkill.mk | 22 + package/rng-tools/Config.in | 2 +- package/rng-tools/S21rngd | 48 + package/rng-tools/rng-tools.mk | 10 +- package/rng-tools/rngd.service | 3 +- ...n-t-use-the-xp_auth-pointer-directly.patch | 42 + package/rpcbind/Config.in | 4 - package/rpcbind/S30rpcbind | 4 +- package/rpi-firmware/config.txt | 2 +- package/rpi-firmware/mkknlimg | 232 ++- ...gure-option-to-disable-documentation.patch | 71 + package/rrdtool/0001-automake-compat.patch | 18 - ...configure-dont-hardcode-include-dirs.patch | 26 - package/rrdtool/Config.in | 36 +- package/rrdtool/rrdtool.hash | 2 +- package/rrdtool/rrdtool.mk | 37 +- package/rsh-redone/Config.in | 10 +- package/rsync/rsync.hash | 2 +- package/rsync/rsync.mk | 2 +- package/rsyslog/0001-musl-fcntl-h.patch | 30 + package/rsyslog/Config.in | 2 + package/rsyslog/S01logging | 4 +- package/rsyslog/rsyslog.mk | 2 +- package/rt-tests/Config.in | 5 +- package/rtai/Config.in | 1 + package/rtmpdump/rtmpdump.mk | 16 +- package/rtorrent/0001-cross_compile.patch | 58 +- package/rtorrent/Config.in | 7 +- package/rtorrent/rtorrent.hash | 2 + package/rtorrent/rtorrent.mk | 6 +- package/rubix/rubix.hash | 2 + package/rubix/rubix.mk | 9 +- package/ruby/ruby.hash | 4 +- package/ruby/ruby.mk | 12 +- package/samba/S91smb | 10 +- ...-build-improve-stack-protector-check.patch | 56 + package/samba4/Config.in | 9 +- package/samba4/S91smb | 10 +- package/samba4/samba4.hash | 2 +- package/samba4/samba4.mk | 5 +- .../0002-remove-unsafe-headers-path.patch | 24 - ...0003-remove-cups-and-systemd-support.patch | 56 - package/sane-backends/sane-backends.hash | 4 +- package/sane-backends/sane-backends.mk | 29 +- package/sane-backends/saned.socket | 10 + package/sane-backends/saned@.service | 18 + .../0001-link-using-gcc-instead-of-ld.patch | 19 - package/sawman/Config.in | 11 - package/sawman/sawman.mk | 16 - package/sbc/Config.in | 8 + package/sbc/sbc.hash | 2 + package/sbc/sbc.mk | 15 + package/schifra/Config.in | 26 - package/schifra/schifra.hash | 3 - package/schifra/schifra.mk | 44 - .../0001-fix-ssl-libs-ordering.patch | 36 - package/sconeserver/Config.in | 2 - package/sconeserver/sconeserver.hash | 2 + package/sconeserver/sconeserver.mk | 15 +- package/scrypt/Config.in | 9 + package/scrypt/scrypt.hash | 2 + package/scrypt/scrypt.mk | 15 + package/sdl/sdl.mk | 11 +- package/sdl2/Config.in | 33 + package/sdl2/sdl2.hash | 2 + package/sdl2/sdl2.mk | 116 ++ package/sdl_sound/sdl_sound.mk | 20 +- package/sed/sed.mk | 8 +- package/setools/Config.in | 12 +- package/setools/setools.mk | 6 +- package/shairport-sync/Config.in | 1 + package/shairport-sync/S99shairport-sync | 4 +- package/shairport-sync/shairport-sync.hash | 3 + package/shairport-sync/shairport-sync.mk | 14 +- .../shared-mime-info/shared-mime-info.hash | 2 +- package/shared-mime-info/shared-mime-info.mk | 4 +- package/sigrok-cli/sigrok-cli.hash | 2 + package/sigrok-cli/sigrok-cli.mk | 13 +- package/skeleton/nfs_check | 20 + package/skeleton/skeleton.mk | 97 +- ...close-function-to-posix_close_slfile.patch | 47 + package/slang/slang.mk | 5 + ...mmon.c-Include-limits.h-for-PATH_MAX.patch | 29 + package/smack/smack.mk | 2 +- package/smartmontools/smartmontools.hash | 5 +- package/smartmontools/smartmontools.mk | 2 +- package/smstools3/S50smsd | 4 +- package/snowball-init/snowball-init.mk | 2 +- ...002-ptrdiff_t-is-defined-in-stddef.h.patch | 28 + package/socat/socat.hash | 4 +- package/socat/socat.mk | 2 +- package/softether/softether.mk | 2 +- package/sox/sox.mk | 6 + ...akefile-more-cross-compiler-friendly.patch | 22 + .../sp-oops-extract/0002-stdint-cleanup.patch | 33 + package/sp-oops-extract/Config.in | 6 + package/sp-oops-extract/sp-oops-extract.hash | 2 + package/sp-oops-extract/sp-oops-extract.mk | 22 + package/spi-tools/Config.in | 7 + package/spi-tools/spi-tools.hash | 2 + package/spi-tools/spi-tools.mk | 14 + package/spice-protocol/spice-protocol.hash | 4 +- package/spice-protocol/spice-protocol.mk | 2 +- package/spice/Config.in | 1 + package/spice/spice.mk | 1 + package/spidev_test/spidev_test.hash | 3 + package/sqlcipher/sqlcipher.mk | 3 +- package/sqlite/sqlite.hash | 4 +- package/sqlite/sqlite.mk | 12 +- package/squashfs/0001-musl.patch | 71 + package/squashfs/squashfs.mk | 11 +- ...ile-allow-passing-CFLAGS-and-LDFLAGS.patch | 54 + ...utput_alsa-use-mallopt-only-on-glibc.patch | 34 + package/squeezelite/Config.in | 42 + package/squeezelite/squeezelite.hash | 2 + package/squeezelite/squeezelite.mk | 42 + package/squid/S97squid | 8 +- package/squid/squid.hash | 6 +- package/squid/squid.mk | 16 +- package/sredird/0001-termio.patch | 20 + package/sredird/Config.in | 2 + package/sredird/sredird.hash | 2 + package/sredird/sredird.mk | 5 +- package/sshfs/Config.in | 2 +- package/sshfs/sshfs.hash | 4 +- package/sshfs/sshfs.mk | 2 +- .../0001-add-uclibc-alias-and-musl.patch | 28 +- .../start-stop-daemon/start-stop-daemon.hash | 4 +- .../start-stop-daemon/start-stop-daemon.mk | 7 +- ...-arc-metag-nios2-or1k-tile-fix-build.patch | 104 ++ ...001-linux-aarch64-add-missing-header.patch | 25 - package/strace/Config.in | 1 - package/strace/strace.hash | 6 +- package/strace/strace.mk | 2 +- package/stress-ng/Config.in | 25 + package/stress-ng/stress-ng.hash | 2 + package/stress-ng/stress-ng.mk | 22 + package/strongswan/Config.in | 5 +- package/strongswan/strongswan.hash | 6 +- package/strongswan/strongswan.mk | 2 +- package/stunnel/S50stunnel | 4 +- package/stunnel/stunnel.hash | 4 +- package/stunnel/stunnel.mk | 4 +- .../subversion/0001-dont-mangle-cflags.patch | 34 +- ...0002-disable-macos-specific-features.patch | 23 + package/subversion/Config.in | 6 +- package/subversion/subversion.hash | 4 +- package/subversion/subversion.mk | 13 +- .../sudo/0001-musl-fix-missing-header.patch | 19 - package/sudo/sudo.hash | 4 +- package/sudo/sudo.mk | 2 +- package/sunxi-tools/sunxi-tools.hash | 2 + package/sunxi-tools/sunxi-tools.mk | 19 +- package/supervisor/S99supervisord | 4 +- package/supervisor/supervisor.hash | 2 + package/supervisor/supervisor.mk | 5 +- package/swig/swig.hash | 2 +- package/swig/swig.mk | 25 +- package/swupdate/Config.in | 56 + package/swupdate/swupdate.config | 61 + package/swupdate/swupdate.hash | 4 + package/swupdate/swupdate.mk | 117 ++ package/sysdig/Config.in | 12 +- package/sysklogd/S01logging | 4 +- package/sysklogd/sysklogd.mk | 4 +- package/syslog-ng/Config.in | 19 + package/syslog-ng/S01logging | 38 + package/syslog-ng/syslog-ng.conf | 16 + package/syslog-ng/syslog-ng.hash | 2 + package/syslog-ng/syslog-ng.mk | 99 ++ package/sysstat/sysstat.hash | 4 +- package/sysstat/sysstat.mk | 4 +- package/systemd/Config.in | 1 - package/systemd/systemd.hash | 4 +- package/systemd/systemd.mk | 32 +- package/sysvinit/0001-fix-libcrypt-test.patch | 9 +- package/sysvinit/Config.in | 2 +- package/sysvinit/inittab | 2 +- package/taglib/taglib.mk | 2 +- package/targetcli-fb/Config.in | 1 + package/targetcli-fb/S50target | 4 +- package/targetcli-fb/target.service | 14 + package/targetcli-fb/targetcli-fb.mk | 12 +- package/tcl/Config.in | 8 +- package/tcpdump/0002-fix-CVE-2014-8767.patch | 20 - package/tcpdump/0003-fix-CVE-2014-8768.patch | 19 - package/tcpdump/0004-fix-CVE-2014-8769.patch | 19 - package/tcpreplay/tcpreplay.hash | 5 +- package/tcpreplay/tcpreplay.mk | 4 +- package/texinfo/texinfo.hash | 2 - package/texinfo/texinfo.mk | 17 - package/tftpd/S80tftpd-hpa | 12 +- package/thrift/Config.in | 2 - package/ti-gfx/Config.in | 3 +- package/ti-gfx/ti-gfx.mk | 1 + package/tiff/Config.in | 4 + package/tiff/tiff.hash | 2 +- package/tiff/tiff.mk | 8 +- package/tinc/tinc.mk | 6 + ...-function-pcm_get_format_name-static.patch | 45 + package/tinyalsa/Config.in | 2 +- package/tinyhttpd/S85tinyhttpd | 6 +- ...-against-OpenSSL-without-SSLv2_SSLv3.patch | 32 + package/tn5250/tn5250.mk | 3 +- package/tor/0001-openssl-libz.patch | 63 +- package/tor/tor.hash | 2 +- package/tor/tor.mk | 2 +- package/torsmo/Config.in | 1 + package/torsmo/torsmo.hash | 2 + package/tovid/Config.in | 3 +- ...ad-include-sys-stat.h-for-open-modes.patch | 33 + ...-sure-libintl-is-in-LDFLAGS-when-nee.patch | 104 ++ .../0002-configure.in-remove-Werror.patch | 27 + package/tpm-tools/Config.in | 14 + package/tpm-tools/tpm-tools.hash | 3 + package/tpm-tools/tpm-tools.mk | 25 + .../trace-cmd/0001-Fix-ptrace-detection.patch | 36 - package/trace-cmd/trace-cmd.mk | 8 +- .../0002-musl-missing-header.patch | 36 + package/tremor/Config.in | 1 + package/tremor/tremor.mk | 2 +- package/triggerhappy/S10triggerhappy | 4 +- package/triggerhappy/triggerhappy.hash | 2 + package/triggerhappy/triggerhappy.mk | 6 +- package/trinity/0001-mips-fix-prctl-s.patch | 39 + ...-include-to-fix-building-with-uClibc.patch | 47 - package/trinity/trinity.hash | 2 + package/trinity/trinity.mk | 2 +- ...-inline-for-read_data-and-write_data.patch | 94 ++ ...er-understands-pie-and-relro-options.patch | 215 +++ package/trousers/Config.in | 18 + package/trousers/trousers.hash | 3 + package/trousers/trousers.mk | 33 + ...0001-build-get-along-with-buildroot.patch} | 0 package/tstools/Config.in | 19 +- package/tstools/tstools.hash | 2 + package/tstools/tstools.mk | 11 +- package/tvheadend/0001-no-check_config.patch | 6 +- package/tvheadend/Config.in | 8 +- package/tvheadend/tvheadend.hash | 2 + package/tvheadend/tvheadend.mk | 17 +- package/tz/tz.mk | 2 +- package/tzdata/tzdata.hash | 4 +- package/tzdata/tzdata.mk | 4 +- .../0001-drop-configh-from-tools.patch | 25 +- package/uboot-tools/0003-Fix-musl-build.patch | 71 - ...nfig-when-available-to-get-SSL-flags.patch | 39 - package/uboot-tools/uboot-tools.hash | 2 +- package/uboot-tools/uboot-tools.mk | 2 +- ...1-Install-server-and-client-examples.patch | 23 + package/ubus/Config.in | 30 + package/ubus/ubus.hash | 2 + package/ubus/ubus.mk | 40 + ...001-bits-time.h-sync-with-glibc-2.16.patch | 37 - .../0.9.33.2/0003-Add-dup3-syscall.patch | 54 - ...add-__kernel_long-and-__kernel_ulong.patch | 381 ----- ...e-stack-pointer-just-after-return-fr.patch | 42 - ...dd-missing-IT-instruction-for-Thumb2.patch | 29 - ...-move-check-for-BX-to-its-own-header.patch | 257 --- .../0.9.33.2/0009-mips64-fix-n64-interp.patch | 51 - ...Rules.mak-fix-breakage-from-603af30d.patch | 31 - ...bc-add-non-standard-execvpe-function.patch | 163 -- ...012-libc-stdlib-add-mkostemp-helpers.patch | 155 -- ...d-Implement-eventfd2-and-fix-eventfd.patch | 64 - .../0.9.33.2/0015-add-posix_madvise.c.patch | 61 - ...h-fix-race-condition-in-lll_wait_tid.patch | 38 - ...CANCEL-to-the-list-of-blocked-signal.patch | 37 - ...so-include-dlfcn.h-for-RTLD_NODELETE.patch | 52 - ...e-elf.h-update-for-ELFOSABI_-changes.patch | 34 - ...update-ptrace.h-to-latest-from-glibc.patch | 113 -- ...hnone_marshal-in-multithreading-cont.patch | 128 -- ...yscall_error-callers-to-use-a0-for-a.patch | 57 - ...ead-of-v0-for-__syscall_error-argume.patch | 63 - ...rm-mode-for-resolver-unconditionally.patch | 29 - ...pid-behave-similar-to-the-common-one.patch | 53 - ...ls.h-allow-immediate-values-as-6th-s.patch | 33 - ...-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch | 57 - ...0029-inet-rpc-fix-build-in-NPTL-case.patch | 58 - ...nt-assignment-allocation-m-character.patch | 190 --- ...ys_mmap2-do-unsigned-shift-of-offset.patch | 35 - .../0033-rpmatch-backport-function.patch | 78 - .../0034-statfs-support-f_frsize.patch | 189 --- ...ket.h-pull-socket_type.h-from-eglibc.patch | 1374 ---------------- .../uclibc/0.9.33.2/0036-mount.h-update.patch | 91 -- ...s_syscall_h-do-not-leave-undefined-S.patch | 38 - ...bc-sysdeps-sync-bits-in.h-with-glibc.patch | 117 -- ...e-free-slots-at-the-end-of-exit-func.patch | 43 - ...AP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch | 200 --- .../0041-libc-add-posix_fallocate.patch | 337 ---- ...overflow-checking-in-int_add_no_wrap.patch | 44 - ...issing-SYMBOL_PREFIX-to-symbol-names.patch | 86 - ...do-not-filter-responses-in-res_query.patch | 46 - ...ve-pragma-weak-for-undeclared-symbol.patch | 39 - ...-the-nameserver-from-_res-state-afte.patch | 34 - ...fputws_unlocked-S-F-instead-of-fputw.patch | 30 - ...x-a-problem-with-scanning-wide-chars.patch | 66 - ...ness-in-dlopen-do_dlopen-wrapper-wor.patch | 66 - ...-implementation-from-statically-link.patch | 60 - ...x-backtrace-for-statically-linked-ap.patch | 168 -- ...acktrace-fix-build-due-to-some-typos.patch | 39 - ...tly-include-uClibc_page.h-to-make-PA.patch | 30 - ...w-bits-scheme-for-arch-specific-flag.patch | 284 ---- ...info_h-add-a-missing-function-member.patch | 66 - ...G-to-128-not-129.-This-matches-glibc.patch | 43 - ...D_SIZE-takes-__WORDSIZE-into-account.patch | 70 - ...h-correctly-interpret-status-0x007f-.patch | 54 - ...st-tls-fix-build-with-newer-binutils.patch | 37 - .../0.9.33.2/0059-test-cater-for-config.patch | 81 - .../0060-test-Fix-math-c-dependency.patch | 30 - .../0.9.33.2/0061-fix-sparc-networking.patch | 39 - ...Also-include-dl-tls.h-for-for-SHARED.patch | 58 - ...remove-duplicate-vfork-in-libpthread.patch | 691 -------- ...update-ptrace.h-to-latest-from-glibc.patch | 134 -- ...update-ptrace.h-to-latest-from-glibc.patch | 151 -- ...-__iconv_codesets-into-iconv-utility.patch | 79 - ...6-mips-rename-siginfo-_timer-members.patch | 157 -- ...d-tcb-offsets.h-include-with-RESET_P.patch | 31 - ...lementations-conditional-compilation.patch | 58 - ...69-Add-missing-C99-float-ld-wrappers.patch | 870 ---------- ...r-NO_LONG_DOUBLE-in-ldouble_wrappers.patch | 89 -- .../0071-Fix-libgcc_s_resume-issue.patch | 56 - ...db.h-Do-not-define-IDN-related-flags.patch | 54 + ...ps-fix-build-if-threads-are-disabled.patch | 59 + package/uclibc/Config.in | 78 +- ...remove-duplicate-vfork-in-libpthread.patch | 722 --------- ...set-so-it-could-be-used-without-doub.patch | 81 - package/uclibc/uClibc-0.9.33.config | 277 ---- package/uclibc/uClibc-ng.config | 4 +- package/uclibc/uClibc-snapshot.config | 41 - package/uclibc/uclibc.hash | 11 +- package/uclibc/uclibc.mk | 42 +- ...-fix-build-with-newer-glibc-versions.patch | 29 + package/udisks/Config.in | 1 + package/udisks/udisks.hash | 2 +- package/udisks/udisks.mk | 5 +- package/udpcast/Config.in | 8 +- .../uemacs/02-skip-xcase-termios-flag.patch | 16 + package/ulogd/ulogd.mk | 14 + ...Revert-to-old-pre-1.0-meta-directory.patch | 36 + package/unionfs/0001-fuse-no-cxx-needed.patch | 19 - package/unionfs/Config.in | 2 +- package/unionfs/unionfs.hash | 5 +- package/unionfs/unionfs.mk | 7 +- package/unrar/Config.in | 13 + package/unrar/unrar.hash | 2 + package/unrar/unrar.mk | 23 + package/unscd/Config.in | 25 + package/unscd/S46unscd | 25 + package/unscd/nscd.conf | 33 + package/unscd/unscd.hash | 2 + package/unscd/unscd.mk | 36 + ...keFile.txt-to-ease-cross-compilation.patch | 53 + package/unzip/Config.in | 11 + package/unzip/unzip.hash | 2 + package/unzip/unzip.mk | 15 + ...-Add-conditional-check-for-__linux__.patch | 32 - package/upmpdcli/Config.in | 6 +- package/upmpdcli/S99upmpdcli | 4 +- package/upmpdcli/upmpdcli.hash | 4 +- package/upmpdcli/upmpdcli.mk | 2 +- .../usb_modeswitch/0001-rename-abort.patch | 105 -- package/usb_modeswitch/usb_modeswitch.hash | 2 +- package/usb_modeswitch/usb_modeswitch.mk | 2 +- .../usb_modeswitch_data.hash | 2 +- .../usb_modeswitch_data.mk | 2 +- package/usbmount/usbmount.mk | 4 +- ...002-ushare-fix-building-with-gcc-5.x.patch | 49 + .../0001-cross-compile-modifications.patch | 144 -- package/ustr/Config.in | 5 + package/ustr/ustr.hash | 2 + package/ustr/ustr.mk | 53 +- .../0002-program-invocation-short-name.patch | 11 - ...ipw-Remove-pre-ANSI-compiler-support.patch | 35 + .../0005-build-sys-use-REALTIME_LIBS.patch | 41 + ...ix-static-configuration-and-building.patch | 54 + .../util-linux/0007-build-sys-fix-typo.patch | 34 + package/util-linux/Config.in | 65 +- package/util-linux/util-linux.hash | 4 +- package/util-linux/util-linux.mk | 31 +- package/v4l2grab/Config.in | 20 + package/v4l2grab/v4l2grab.hash | 2 + package/v4l2grab/v4l2grab.mk | 15 + package/vala/vala.hash | 4 +- package/vala/vala.mk | 4 +- .../0001-workaround-SIGSEGV-on-PPC.patch | 10 +- ...SIGINFO-on-PowerPC-when-not-availab.patch} | 23 +- ...x-configure-for-Linux-kernel-4.0-rc1.patch | 48 - .../0003-mips-replace-addi-with-addiu.patch | 137 ++ .../valgrind/0004-Fixes-for-musl-libc.patch | 99 ++ ...re.ac-Generalize-glibc-version-check.patch | 228 --- package/valgrind/Config.in | 4 + package/valgrind/valgrind.hash | 2 +- package/valgrind/valgrind.mk | 27 +- ...missing-definition-of-MTD_CHAR_MAJOR.patch | 30 + ...d-missing-header-include-for-ssize_t.patch | 27 + .../0003-Avoid-RSA-type-redefinition.patch | 44 + package/vboot-utils/Config.in.host | 7 + package/vboot-utils/vboot-utils.hash | 2 + package/vboot-utils/vboot-utils.mk | 38 + package/vde2/vde2.mk | 2 +- package/vim/vim.mk | 21 +- package/vlc/Config.in | 24 +- package/vlc/vlc.mk | 39 +- ...c-add-option-to-disable-image-output.patch | 51 + package/vnstat/Config.in | 16 +- package/vnstat/vnstat.hash | 2 +- package/vnstat/vnstat.mk | 27 +- ...c-Fix-large-alloca-on-bad-AIFF-input.patch | 37 + package/vsftpd/S70vsftpd | 4 +- package/vsftpd/vsftpd.mk | 9 + package/vtun/vtun.mk | 5 + package/w_scan/0001-musl.patch | 26 + package/wavpack/wavpack.hash | 2 +- package/wavpack/wavpack.mk | 18 +- package/webkit/Config.in | 4 +- ...se-_ABI64-instead-of-_MIPS_SIM_ABI64.patch | 46 + ...quotes-in-licence-break-Python-stdin.patch | 36 + package/webkitgtk24/Config.in | 15 +- package/webkitgtk24/webkitgtk24.mk | 12 +- package/weston/Config.in | 7 +- package/wget/wget.hash | 2 +- package/wget/wget.mk | 2 +- package/whetstone/whetstone.hash | 2 + package/whois/whois.hash | 4 +- package/whois/whois.mk | 4 +- ...t-call-to-memset-with-a-null-pointer.patch | 40 - ...to-override-the-location-of-the-conf.patch | 109 ++ package/wine/0002-detect-ncursesw.patch | 17 - package/wine/0003-sane-config-fix.patch | 21 - package/wine/wine.hash | 5 +- package/wine/wine.mk | 51 +- package/wipe/0001-musl.patch | 28 + package/wireless-regdb/wireless-regdb.hash | 2 +- package/wireless-regdb/wireless-regdb.mk | 2 +- ...-assume-broken-inet_pton-in-case-of-.patch | 32 + package/wireshark/Config.in | 4 +- package/wireshark/wireshark.hash | 5 +- package/wireshark/wireshark.mk | 84 +- ...D-element-length-before-copying-it-C.patch | 45 - .../0001-fix-readline-libs-ordering.patch | 26 + ...ata-in-WNM-Sleep-Mode-Response-frame.patch | 32 + ...TTP-chunked-transfer-encoding-parser.patch | 50 - ...er-underflow-in-WMM-Action-frame-par.patch | 42 - ...-Fix-last-fragment-length-validation.patch | 54 + .../wpa_supplicant/0004-EAP-pwd-fixes.patch | 154 -- ...-Fix-last-fragment-length-validation.patch | 51 + ...-error-path-for-unexpected-Confirm-m.patch | 34 + .../0006-fix-libwpa_client.patch | 39 + package/wpa_supplicant/Config.in | 30 + package/wpa_supplicant/wpa_supplicant.hash | 2 +- package/wpa_supplicant/wpa_supplicant.mk | 34 +- package/wvdial/Config.in | 5 +- package/wvstreams/Config.in | 6 +- package/x11r7/Config.in | 3 +- package/x11r7/libepoxy/Config.in | 10 +- package/x11r7/libepoxy/libepoxy.mk | 5 +- package/x11r7/libxcb/libxcb.hash | 4 +- package/x11r7/libxcb/libxcb.mk | 2 +- ...eprocessor-when-generating-filenames.patch | 32 + package/x11r7/xapp_xbacklight/Config.in | 1 + package/x11r7/xapp_xcompmgr/Config.in | 4 +- package/x11r7/xapp_xdm/S99xdm | 2 +- package/x11r7/xapp_xf86dga/xapp_xf86dga.mk | 5 +- package/x11r7/xapp_xinput/xapp_xinput.hash | 4 +- package/x11r7/xapp_xinput/xapp_xinput.mk | 2 +- package/x11r7/xapp_xkbcomp/xapp_xkbcomp.hash | 4 +- package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk | 2 +- .../x11r7/xdriver_xf86-input-evdev/Config.in | 1 + .../xdriver_xf86-input-evdev.hash | 4 +- .../xdriver_xf86-input-evdev.mk | 6 +- .../xdriver_xf86-input-libinput.hash | 4 +- .../xdriver_xf86-input-libinput.mk | 2 +- .../xdriver_xf86-input-synaptics/Config.in | 1 + .../xdriver_xf86-input-synaptics.hash | 4 +- .../xdriver_xf86-input-synaptics.mk | 4 +- .../xdriver_xf86-input-vmmouse.mk | 7 + .../x11r7/xdriver_xf86-video-ati/Config.in | 6 +- .../xdriver_xf86-video-ati.hash | 4 +- .../xdriver_xf86-video-ati.mk | 5 +- ...sunxi_x_g2d-drop-unused-dri2-include.patch | 28 + .../xdriver_xf86-video-fbturbo/Config.in | 16 + .../xdriver_xf86-video-fbturbo.mk | 35 + .../xdriver_xf86-video-imx-viv.hash | 2 + .../xdriver_xf86-video-imx-viv.mk | 3 +- .../xdriver_xf86-video-intel.hash | 2 - .../xdriver_xf86-video-intel.mk | 6 +- .../xdriver_xf86-video-nouveau/Config.in | 18 + .../xdriver_xf86-video-nouveau.hash | 2 + .../xdriver_xf86-video-nouveau.mk | 25 + .../xdriver_xf86-video-siliconmotion.mk | 2 + .../xdriver_xf86-video-sis.hash | 2 + .../xdriver_xf86-video-sis.mk | 5 +- package/x11r7/xfont_encodings/Config.in | 1 + .../x11r7/xfont_font-adobe-100dpi/Config.in | 1 + .../x11r7/xfont_font-adobe-75dpi/Config.in | 1 + .../xfont_font-adobe-utopia-100dpi/Config.in | 1 + .../xfont_font-adobe-utopia-75dpi/Config.in | 1 + .../xfont_font-adobe-utopia-type1/Config.in | 1 + package/x11r7/xfont_font-alias/Config.in | 1 + .../x11r7/xfont_font-arabic-misc/Config.in | 1 + package/x11r7/xfont_font-bh-100dpi/Config.in | 1 + package/x11r7/xfont_font-bh-75dpi/Config.in | 1 + .../Config.in | 1 + .../Config.in | 1 + package/x11r7/xfont_font-bh-ttf/Config.in | 1 + package/x11r7/xfont_font-bh-type1/Config.in | 1 + .../xfont_font-bitstream-100dpi/Config.in | 1 + .../xfont_font-bitstream-75dpi/Config.in | 1 + .../xfont_font-bitstream-type1/Config.in | 1 + .../xfont_font-cronyx-cyrillic/Config.in | 1 + .../x11r7/xfont_font-cursor-misc/Config.in | 1 + .../x11r7/xfont_font-daewoo-misc/Config.in | 1 + package/x11r7/xfont_font-dec-misc/Config.in | 1 + package/x11r7/xfont_font-ibm-type1/Config.in | 1 + package/x11r7/xfont_font-isas-misc/Config.in | 1 + package/x11r7/xfont_font-jis-misc/Config.in | 1 + package/x11r7/xfont_font-micro-misc/Config.in | 1 + .../x11r7/xfont_font-misc-cyrillic/Config.in | 1 + .../x11r7/xfont_font-misc-ethiopic/Config.in | 1 + .../x11r7/xfont_font-misc-meltho/Config.in | 1 + package/x11r7/xfont_font-misc-misc/Config.in | 1 + package/x11r7/xfont_font-mutt-misc/Config.in | 1 + .../xfont_font-schumacher-misc/Config.in | 1 + .../xfont_font-screen-cyrillic/Config.in | 1 + package/x11r7/xfont_font-sony-misc/Config.in | 1 + package/x11r7/xfont_font-sun-misc/Config.in | 1 + .../xfont_font-winitzki-cyrillic/Config.in | 1 + .../x11r7/xfont_font-xfree86-type1/Config.in | 1 + .../xkeyboard-config/xkeyboard-config.hash | 4 +- .../xkeyboard-config/xkeyboard-config.mk | 2 +- package/x11r7/xlib_libXi/xlib_libXi.hash | 4 +- package/x11r7/xlib_libXi/xlib_libXi.mk | 2 +- package/x11r7/xlib_libfontenc/Config.in | 1 + .../0001-modesettings-needs-dri2.patch | 19 + package/x11r7/xserver_xorg-server/Config.in | 20 +- .../xserver_xorg-server.hash | 6 +- .../xserver_xorg-server.mk | 27 +- package/x264/x264.mk | 6 +- package/x265/Config.in | 26 + package/x265/x265.hash | 2 + package/x265/x265.mk | 31 + package/xdotool/Config.in | 12 + package/xdotool/xdotool.hash | 2 + package/xdotool/xdotool.mk | 24 + package/xerces/xerces.hash | 4 +- package/xerces/xerces.mk | 9 +- ...-do-dynamic-linking-of-libtool-libra.patch | 40 + ...aces-static-with-static-libtool-libs.patch | 129 -- package/xfsprogs/0002-no-crc32-checks.patch | 32 + ...progs-don-t-use-CFLAGS-with-BUILD_CC.patch | 40 + package/xfsprogs/Config.in | 1 + package/xfsprogs/xfsprogs.hash | 4 +- package/xfsprogs/xfsprogs.mk | 2 +- package/xl2tp/0002-musl.patch | 19 + package/xmlstarlet/xmlstarlet.mk | 1 + package/xscreensaver/Config.in | 4 +- package/xtables-addons/Config.in | 1 + package/xtables-addons/xtables-addons.hash | 7 +- package/xtables-addons/xtables-addons.mk | 2 +- package/xterm/xterm.hash | 2 +- package/xterm/xterm.mk | 4 +- .../{x11r7 => }/xutil_util-macros/Config.in | 0 .../xutil_util-macros/xutil_util-macros.hash | 0 .../xutil_util-macros/xutil_util-macros.mk | 0 package/xvkbd/Config.in | 2 +- package/xvkbd/xvkbd.hash | 2 +- package/xvkbd/xvkbd.mk | 4 +- package/xxhash/Config.in | 7 + package/xxhash/xxhash.mk | 20 + package/xz/xz.hash | 2 +- package/xz/xz.mk | 4 +- package/yad/Config.in | 13 + package/yad/yad.hash | 3 + package/yad/yad.mk | 23 + package/yajl/yajl.hash | 3 + package/yajl/yajl.mk | 1 + package/yasm/yasm.hash | 2 +- package/yasm/yasm.mk | 2 +- package/ympd/Config.in | 6 +- ...y-reducing-the-warning-error-checkin.patch | 26 + ...toype-to-be-compatible-with-recent-l.patch | 27 + .../0003-Disable-building-documentation.patch | 27 + ...ical-not-operations-into-parentheses.patch | 80 + package/zbar/Config.in | 18 + package/zbar/zbar.hash | 2 + package/zbar/zbar.mk | 22 + ...n-code-of-sodium_init-is-not-checked.patch | 73 + package/zeromq/Config.in | 4 +- package/zeromq/zeromq.hash | 6 +- package/zeromq/zeromq.mk | 2 +- package/zic/0001-fix-dependencies.patch | 27 - package/zic/zic.hash | 4 +- package/zic/zic.mk | 4 +- ...-Check-C-compiler-type-optimization-.patch | 0 .../0002-configure-Don-t-use-host-CPP.patch | 0 ...akefile-Use-CFLAGS-from-command-line.patch | 0 ...figure-use-LDFLAGS-from-command-line.patch | 0 ...-configure-remove-GID-UID-size-check.patch | 0 ...e-borrow-the-LFS-test-from-autotools.patch | 0 package/{infozip => zip}/Config.in | 4 +- .../{infozip/infozip.hash => zip/zip.hash} | 0 package/{infozip/infozip.mk => zip/zip.mk} | 32 +- ...ilding-shared-or-static-library-only.patch | 81 + ...all-static-library-for-static-builds.patch | 30 + package/zmqpp/Config.in | 5 +- package/zmqpp/zmqpp.hash | 3 + package/zmqpp/zmqpp.mk | 11 +- ...Add-time.h-includes-where-appropiate.patch | 194 +++ package/znc/0001-time.patch | 303 ---- package/znc/0002-csocket-timeh.patch | 19 + package/znc/Config.in | 7 +- package/znc/znc.hash | 2 + package/znc/znc.mk | 17 +- package/zsh/zsh.hash | 4 +- package/zsh/zsh.mk | 25 +- package/zxing-cpp/Config.in | 14 + package/zxing-cpp/zxing-cpp.hash | 2 + package/zxing-cpp/zxing-cpp.mk | 18 + package/zxing/0001-makefile.patch | 30 - package/zxing/Config.in | 13 - package/zxing/zxing.mk | 40 - package/zyre/Config.in | 4 - package/zyre/zyre.mk | 4 +- support/dependencies/dependencies.sh | 26 +- support/download/bzr | 26 +- support/download/cp | 8 +- support/download/cvs | 16 +- support/download/git | 16 +- support/download/hg | 14 +- support/download/scp | 8 +- support/download/svn | 8 +- support/download/wget | 8 +- support/kconfig/merge_config.sh | 2 +- support/legal-info/README.header | 10 +- support/misc/Vagrantfile | 56 + support/misc/toolchainfile.cmake.in | 32 +- support/scripts/apply-patches.sh | 73 +- support/scripts/build-ext3-img | 152 -- support/scripts/check-host-rpath | 71 + support/scripts/graph-depends | 107 +- support/scripts/mkmakefile | 4 +- support/scripts/mkusers | 45 +- support/scripts/scancpan | 22 +- support/scripts/size-stats | 217 +++ support/scripts/size-stats-compare | 127 ++ system/Config.in | 32 +- system/skeleton/{bin => dev/shm}/.empty | 0 system/skeleton/etc/group | 2 +- system/skeleton/etc/issue | 3 - system/skeleton/etc/ld.so.conf.d/.empty | 0 .../etc/network/if-pre-up.d/wait_iface | 21 + system/skeleton/etc/passwd | 1 - system/skeleton/etc/profile | 70 +- system/skeleton/etc/profile.d/umask.sh | 1 + system/skeleton/etc/shadow | 8 +- system/skeleton/home/ftp/.empty | 0 system/skeleton/lib/.empty | 0 system/skeleton/root/.bash_history | 0 system/skeleton/root/.bash_logout | 7 - system/skeleton/root/.bash_profile | 7 - system/skeleton/sbin/.empty | 0 system/system.mk | 121 -- toolchain/Config.in | 1 + toolchain/helpers.mk | 87 +- toolchain/toolchain-buildroot/Config.in | 10 +- toolchain/toolchain-common.in | 100 +- toolchain/toolchain-external/Config.in | 705 +++------ .../toolchain-external.hash | 38 +- .../toolchain-external/toolchain-external.mk | 323 ++-- ...oolchain-wrapper.c => toolchain-wrapper.c} | 68 +- toolchain/toolchain-wrapper.mk | 40 + 2808 files changed, 43546 insertions(+), 29208 deletions(-) rename board/common/{busybox-1.22.x.config => busybox.config} (100%) create mode 100644 boot/uboot/2015.07/0001-Revert-arch-Make-board-selection-choices-optional.patch create mode 100644 fs/axfs/Config.in create mode 100644 fs/axfs/axfs.mk create mode 100644 linux/0001-timeconst.pl-Eliminate-Perl-warning.patch.conditional create mode 100644 package/acsccid/Config.in create mode 100644 package/acsccid/acsccid.hash create mode 100644 package/acsccid/acsccid.mk create mode 100644 package/aespipe/Config.in.host create mode 100644 package/alsa-lib/0001-add-missing-include.patch create mode 100644 package/alsa-lib/0005-musl-pcm-h.patch create mode 100644 package/alsa-utils/0001-bat-Avoid-local-signal.h-file.patch create mode 100644 package/alsa-utils/0002-bat-Don-t-pass-incompatible-function-pointers-to-pth.patch create mode 100644 package/argp-standalone/0003-fix_build_with_c99_compilers.patch create mode 100644 package/arptables/0004-Fix-musl-build-issue.patch create mode 100644 package/assimp/0001-Fix-FBXConverter-use-proper-64-bit-constant.patch create mode 100644 package/assimp/0002-fix-compilation-on-BigEndian.patch create mode 100644 package/assimp/Config.in create mode 100644 package/assimp/assimp.mk rename package/at/{0002-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch => 0001-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch} (100%) delete mode 100644 package/at/0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch rename package/at/{0004-Makefile.in-replace-IROOT-by-DESTDIR.patch => 0002-Makefile.in-replace-IROOT-by-DESTDIR.patch} (81%) delete mode 100644 package/at/0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch rename package/at/{0005-Makefile.in-make-install-fix.patch => 0003-Makefile.in-make-install-fix.patch} (78%) rename package/at/{0006-getloadavg.c-fix.patch => 0004-getloadavg.c-fix.patch} (100%) rename package/at/{0007-parsetime.l-include-config-h.patch => 0005-parsetime.l-include-config-h.patch} (100%) rename package/at/{0008-remove-glibc-__isleap-assumption.patch => 0006-remove-glibc-__isleap-assumption.patch} (100%) create mode 100644 package/atkmm/Config.in create mode 100644 package/atkmm/atkmm.hash create mode 100644 package/atkmm/atkmm.mk create mode 100644 package/audiofile/0001-Fix-pkg-config-for-static-linking.patch delete mode 100755 package/audit/0001-Missed-cross-compile-fixes.patch create mode 100644 package/audit/audit_tmpfiles.conf create mode 100644 package/autofs/0001-include-linux-nfs.h-directly-in-rpc_sub.patch create mode 100644 package/autofs/Config.in create mode 100644 package/autofs/autofs.hash create mode 100644 package/autofs/autofs.mk delete mode 100644 package/avahi/0001-autoipd-perms.patch create mode 100644 package/axfsutils/0001-fix-cflags.patch create mode 100644 package/axfsutils/0002-use-ldflags.patch create mode 100644 package/axfsutils/axfsutils.hash create mode 100644 package/axfsutils/axfsutils.mk create mode 100644 package/bash/0034-patchlevel-34.patch create mode 100644 package/bash/0035-patchlevel-35.patch create mode 100644 package/bash/0036-patchlevel-36.patch create mode 100644 package/bash/0037-patchlevel-37.patch create mode 100644 package/bash/0038-patchlevel-38.patch create mode 100644 package/bash/0039-patchlevel-39.patch create mode 100644 package/bash/0040-patchlevel-40.patch create mode 100644 package/bash/0041-patchlevel-41.patch create mode 100644 package/bash/0042-patchlevel-42.patch delete mode 100644 package/batctl/0001-musl-fixes.patch create mode 100644 package/bcache-tools/0001-Don-t-inline-crc64-for-gcc-5-compatability.patch create mode 100644 package/bcache-tools/bcache-tools.hash create mode 100644 package/bcm2835/Config.in create mode 100644 package/bcm2835/bcm2835.hash create mode 100644 package/bcm2835/bcm2835.mk create mode 100644 package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch create mode 100644 package/bcusdk/0002-fd_set-requires-inclusion-of-sys-select.h.patch create mode 100644 package/bdwgc/0002-Do-not-include-sigcontext.h-and-asm-sigcontext.h.patch create mode 100644 package/bdwgc/0003-Revert-Move-asm-machine-dependent-files-to-src-folde.patch create mode 100644 package/bind/0001-Fix-LibreSSL-compatibility.-RT-40977.patch delete mode 100644 package/bind/0001-disable-tests.patch create mode 100644 package/bind/0003-Rename-ptrsize-to-ptr_size.patch create mode 100644 package/binutils/2.23.2/914-xtensa-fix-signedness-of-gas-relocations.patch create mode 100644 package/binutils/2.23.2/915-xtensa-fix-.init-.fini-literals-moving.patch create mode 100644 package/binutils/2.24/913-xtensa-add-auto-litpools-option.patch create mode 100644 package/binutils/2.24/914-xtensa-fix-signedness-of-gas-relocations.patch create mode 100644 package/binutils/2.24/915-xtensa-fix-.init-.fini-literals-moving.patch create mode 100644 package/binutils/2.25.1/913-xtensa-add-auto-litpools-option.patch create mode 100644 package/binutils/2.25.1/914-xtensa-fix-signedness-of-gas-relocations.patch create mode 100644 package/binutils/2.25.1/915-Correct-assertion-in-NIOS2-linker-to-allow-signed-16.patch create mode 100644 package/binutils/2.25.1/915-xtensa-fix-.init-.fini-literals-moving.patch delete mode 100644 package/binutils/arc-2015.06/0002-ld-arc-Provide-the-.tdata-symbol.patch delete mode 100644 package/binutils/arc-2015.06/0003-Provide-.tbss-symbol.patch delete mode 100644 package/binutils/arc-2015.06/0004-Check-to-see-if-the-input-BFD-actually-contains-any-.patch rename package/binutils/{arc-2015.06 => arc-2015.12}/0001-PR-other-56780.patch (100%) rename package/binutils/{arc-2015.06 => arc-2015.12}/600-poison-system-directories.patch (100%) create mode 100644 package/bitstream/Config.in create mode 100644 package/bitstream/bitstream.hash create mode 100644 package/bitstream/bitstream.mk delete mode 100644 package/blackbox/0001-Fix-configure-ac.patch delete mode 100644 package/blackbox/0002-gcc43.patch delete mode 100644 package/blackbox/0003-gcc46-textpropertytostring.patch delete mode 100644 package/blackbox/Config.in delete mode 100644 package/blackbox/blackbox.hash delete mode 100644 package/blackbox/blackbox.mk delete mode 100644 package/bluez5_utils/0001-Link-mcaptest-with-lrt-when-needed.patch create mode 100644 package/bluez5_utils/0001-tools-avinfo-Fix-big-endian-build.patch delete mode 100644 package/bluez5_utils/0002-src-shared-ecc.c-include-config.h.patch create mode 100644 package/bluez_utils/0003-fix-compilation-issues-with-musl.patch create mode 100644 package/boost/0002-fix-uclibc-eventfd.patch delete mode 100644 package/boost/0002-gcc.jam-compiler-options-fix.patch delete mode 100644 package/boost/0003-Remove-bogus-c3-cpu-varant-for-SPARC.patch create mode 100644 package/boost/0003-fix-libquadmath-issue.patch create mode 100644 package/boost/0004-fix-declaration-error-with-gcc-4-4.patch create mode 100644 package/boost/0005-fix-undeclared-isnan.patch create mode 100644 package/boost/0006-uclibc-fenv.patch create mode 100644 package/bootutils/0001-fix-musl-compilation-issue.patch create mode 100644 package/bridge-utils/0003-sysfs-write-fixes.patch create mode 100644 package/busybox/0002-unzip.patch create mode 100644 package/busybox/0003-g-unzip-fix-recent-breakage.patch create mode 100644 package/busybox/0004-truncate-open-mode.patch create mode 100644 package/c-periphery/0001-Add-missing-header-for-musl-compatibility.patch create mode 100644 package/c-periphery/0002-Fix-build-on-SPARC.patch create mode 100644 package/cairomm/Config.in create mode 100644 package/cairomm/cairomm.hash create mode 100644 package/cairomm/cairomm.mk create mode 100644 package/cantarell/Config.in create mode 100644 package/cantarell/cantarell.hash create mode 100644 package/cantarell/cantarell.mk create mode 100644 package/cdrkit/0002-define-__THROW-to-avoid-build-issue-with-musl.patch create mode 100644 package/check/Config.in create mode 100644 package/check/check.hash create mode 100644 package/check/check.mk create mode 100644 package/chocolate-doom/0001-Fix-gcc_struct-attribute-directive-ignored-warnings.patch create mode 100644 package/chocolate-doom/0002-configure-fix-with-PACKAGE-option-checks.patch create mode 100644 package/chocolate-doom/0003-opl-limit-use-of-ioperm-inb-outb-to-x86-architecture.patch create mode 100644 package/chocolate-doom/Config.in create mode 100644 package/chocolate-doom/chocolate-doom.hash create mode 100644 package/chocolate-doom/chocolate-doom.mk create mode 100644 package/cifs-utils/0001-mtab.c-include-paths.h-for-_PATH_MOUNTED.patch delete mode 100644 package/clamav/0002-static-linking.patch delete mode 100644 package/clamav/0004-fix-static-build.patch create mode 100644 package/clapack/0006-remove-uninit-f2c.patch create mode 100644 package/clapack/0007-off64-t.patch delete mode 100644 package/cmake/0002-KWIML-Teach-ABI.h-about-Xtensa-architecture.patch delete mode 100644 package/collectd/0001-build-add-libavltree-libcommon-libheap-dependencies.patch create mode 100644 package/comix-cursors/Config.in create mode 100644 package/comix-cursors/comix-cursors.hash create mode 100644 package/comix-cursors/comix-cursors.mk create mode 100644 package/connman/0001-configure-check-for-execinfo.h.patch delete mode 100644 package/connman/0001-uclibc-backtrace.patch create mode 100644 package/conntrack-tools/0001-src-fix-build-with-musl-libc.patch create mode 100644 package/cramfs/0003-fix-missing-types.patch delete mode 100644 package/cryptodev-linux/0001-fix-compilation-against-linux-3.19.patch delete mode 100644 package/cryptodev-linux/0002-fix-ccache-compile.patch create mode 100644 package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch delete mode 100644 package/cups/0001-fix-static.patch create mode 100644 package/cups/0002-Do-not-use-genstrings.patch delete mode 100644 package/cups/0002-fix-stack-protector-check.patch create mode 100644 package/cups/0003-Sanitize-the-installation-process.patch delete mode 100644 package/cups/0003-mantohtml.patch create mode 100644 package/cups/cups.hash create mode 100644 package/curlftpfs/0004-fix-musl-build-off-t.patch create mode 100644 package/cxxtest/Config.in create mode 100644 package/cxxtest/cxxtest.hash create mode 100644 package/cxxtest/cxxtest.mk delete mode 100644 package/czmq/0001-Simply-configure.ac-to-prevent-contradictory-discove.patch create mode 100644 package/devmem2/devmem2.hash create mode 100644 package/dhcpdump/dhcpdump.hash create mode 100644 package/dhrystone/dhrystone.hash delete mode 100644 package/dillo/0001-configure.ac-change-fltk-config-test-to-be-more-cros.patch delete mode 100644 package/directfb/0003-remove-redefinition-of-__typeof__.patch rename package/directfb/{0004-setregion-lock.patch => 0003-setregion-lock.patch} (79%) rename package/directfb/{0005-use-gcc-link.patch => 0004-use-gcc-link.patch} (100%) create mode 100644 package/directfb/0005-add-missing-idivine-header.patch delete mode 100644 package/divine/Config.in delete mode 100644 package/divine/divine.mk create mode 100644 package/dmraid/0001-fix-compilation-under-musl.patch create mode 100644 package/doom-wad/doom-wad.hash create mode 100644 package/dos2unix/Config.in create mode 100644 package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch create mode 100644 package/dropwatch/dropwatch.hash create mode 100644 package/dtc/Config.in.host create mode 100644 package/dvblast/0001-missing-lm.patch create mode 100644 package/dvblast/0002-fix-int-types.patch create mode 100644 package/dvblast/Config.in create mode 100644 package/dvblast/dvblast.hash create mode 100644 package/dvblast/dvblast.mk create mode 100644 package/dvbsnoop/0001-musl-types-h.patch create mode 100644 package/ecryptfs-utils/0001-musl.patch create mode 100644 package/edid-decode/Config.in create mode 100644 package/edid-decode/edid-decode.mk create mode 100644 package/efl/efl.hash delete mode 100644 package/efl/libecore/Config.in delete mode 100644 package/efl/libecore/libecore.mk delete mode 100644 package/efl/libedbus/Config.in delete mode 100644 package/efl/libedbus/libedbus.mk delete mode 100644 package/efl/libedje/Config.in delete mode 100644 package/efl/libedje/libedje.mk delete mode 100644 package/efl/libeet/Config.in delete mode 100644 package/efl/libeet/libeet.mk delete mode 100644 package/efl/libefreet/Config.in delete mode 100644 package/efl/libefreet/libefreet.mk delete mode 100644 package/efl/libeina/Config.in delete mode 100644 package/efl/libeina/libeina.mk delete mode 100644 package/efl/libeio/Config.in delete mode 100644 package/efl/libeio/libeio.mk delete mode 100644 package/efl/libelementary/Config.in delete mode 100644 package/efl/libelementary/libelementary.mk delete mode 100644 package/efl/libembryo/Config.in delete mode 100644 package/efl/libembryo/libembryo.mk delete mode 100644 package/efl/libethumb/Config.in delete mode 100644 package/efl/libethumb/libethumb.mk delete mode 100644 package/efl/libevas/0001-giflib.patch delete mode 100644 package/efl/libevas/Config.in delete mode 100644 package/efl/libevas/libevas.mk delete mode 100644 package/ejabberd/0008-add-ac_config_macro_dir.patch rename package/ejabberd/{0009-fix-ejabberdctl.patch => 0008-fix-ejabberdctl.patch} (67%) delete mode 100644 package/ejabberd/0010-fix-package-version.patch create mode 100644 package/ejabberd/ejabberd.hash create mode 100644 package/elementary/Config.in create mode 100644 package/elementary/elementary.hash create mode 100644 package/elementary/elementary.mk create mode 100644 package/emlog/0001-Fix-access-to-the-dentry.patch create mode 100644 package/emlog/Config.in create mode 100644 package/emlog/emlog.hash create mode 100644 package/emlog/emlog.mk create mode 100644 package/empty/0002-fix-non-thread-build.patch create mode 100644 package/enlightenment/enlightenment.hash create mode 100644 package/espeak/0001-Fix-build-of-shared-library-on-architectures-needing.patch create mode 100644 package/eventlog/Config.in create mode 100644 package/eventlog/eventlog.hash create mode 100644 package/eventlog/eventlog.mk delete mode 100644 package/exfat-utils/0001-fix-compiling-with-non-glibc-libcs.patch delete mode 100644 package/exiv2/0001-remove-useless-header.patch create mode 100644 package/expat/0001-fix-CVE-2015-1283.patch rename package/{efl => }/expedite/Config.in (56%) rename package/{efl => }/expedite/expedite.mk (55%) create mode 100644 package/faifa/0001-sha2.c-explicitly-include-endian.h-for-BYTE_ORDER-ma.patch create mode 100644 package/faifa/0002-hpav_cfg.c-do-not-include-linux-if_ether.h-for-musl-.patch create mode 100644 package/fastd/0001-cmake-use-INTERPROCEDURAL_OPTIMIZATION-target-proper.patch create mode 100644 package/fastd/0002-Don-t-depend-on-net-if_ether.h.patch create mode 100644 package/fastd/Config.in create mode 100644 package/fastd/fastd.mk create mode 100644 package/fbterm/0001-fbio.cpp-improxy.cpp-fbterm.cpp-fix-musl-compile.patch create mode 100644 package/fbterm/0002-mouse.cpp-fix-musl-compile.patch create mode 100644 package/fetchmail/0002-enable-libressl.patch delete mode 100644 package/ffmpeg/0016-ranlib.patch create mode 100644 package/fio/0001-compile-fix-for-linux-header-changes.patch create mode 100644 package/flashrom/0001-spi.patch create mode 100644 package/flashrom/0002-sys-io.h.patch create mode 100644 package/flite/0003-fix-alsa-version-check.patch delete mode 100644 package/freerdp/0001-add-support-for-uclibc.patch rename package/freerdp/{0002-fix-building-shared-libs.patch => 0001-fix-building-shared-libs.patch} (92%) rename package/freerdp/{0004-add-support-for-tz-package.patch => 0002-add-support-for-tz-package.patch} (100%) create mode 100644 package/freerdp/0003-add-missing-define.patch delete mode 100644 package/freerdp/0003-dont-use-unavailable-c99-math.patch create mode 100644 package/freescale-imx/firmware-imx/firmware-imx.hash create mode 100644 package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash create mode 100644 package/freescale-imx/imx-kobs/0001-Fix-musl-build.patch create mode 100644 package/freescale-imx/imx-kobs/0002-Fix-build-for-recent-toolchains.patch create mode 100644 package/freescale-imx/imx-kobs/Config.in create mode 100644 package/freescale-imx/imx-kobs/imx-kobs.hash create mode 100644 package/freescale-imx/imx-kobs/imx-kobs.mk create mode 100644 package/freescale-imx/imx-lib/imx-lib.hash create mode 100644 package/freescale-imx/imx-vpu/imx-vpu.hash create mode 100644 package/freescale-imx/kernel-module-imx-gpu-viv/Config.in create mode 100644 package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash create mode 100644 package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk create mode 100644 package/gauche/0001-fix-so-suffix.patch create mode 100644 package/gauche/0002-gc-configure.ac-add-check-for-NO_GETCONTEXT-definition.patch create mode 100644 package/gauche/Config.in create mode 100644 package/gauche/gauche.hash create mode 100644 package/gauche/gauche.mk delete mode 100644 package/gcc/4.7.4/910-gcc-poison-system-directories.patch create mode 100644 package/gcc/4.8.5/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch create mode 100644 package/gcc/4.8.5/870-xtensa-add-mauto-litpools-option.patch create mode 100644 package/gcc/4.8.5/871-xtensa-reimplement-register-spilling.patch create mode 100644 package/gcc/4.8.5/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch create mode 100644 package/gcc/4.8.5/873-xtensa-fix-_Unwind_GetCFA.patch delete mode 100644 package/gcc/4.8.5/910-gcc-poison-system-directories.patch create mode 100644 package/gcc/4.9.3/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch create mode 100644 package/gcc/4.9.3/870-xtensa-add-mauto-litpools-option.patch create mode 100644 package/gcc/4.9.3/871-xtensa-reimplement-register-spilling.patch create mode 100644 package/gcc/4.9.3/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch create mode 100644 package/gcc/4.9.3/873-xtensa-fix-_Unwind_GetCFA.patch delete mode 100644 package/gcc/4.9.3/910-gcc-poison-system-directories.patch rename package/gcc/{5.2.0/201-libgcc-remove-unistd-header.patch => 4.9.3/920-libgcc-remove-unistd-header.patch} (74%) delete mode 100644 package/gcc/5.2.0/200-gcc-poison-system-directories.patch rename package/gcc/{5.2.0 => 5.3.0}/100-uclibc-conf.patch (100%) create mode 100644 package/gcc/5.3.0/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch rename package/gcc/{5.2.0 => 5.3.0}/301-missing-execinfo_h.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/810-arm-softfloat-libgcc.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/830-arm_unbreak_armv4t.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/840-microblaze-enable-dwarf-eh-support.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/850-libstdcxx-uclibc-c99.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/860-cilk-wchar.patch (100%) create mode 100644 package/gcc/5.3.0/870-xtensa-add-mauto-litpools-option.patch create mode 100644 package/gcc/5.3.0/871-xtensa-reimplement-register-spilling.patch create mode 100644 package/gcc/5.3.0/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch create mode 100644 package/gcc/5.3.0/873-xtensa-fix-_Unwind_GetCFA.patch rename package/gcc/{5.2.0 => 5.3.0}/900-libitm-fixes-for-musl-support.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/901-fixincludes-update-for-musl-support.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/902-unwind-fix-for-musl.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/903-libstdc++-libgfortran-gthr-workaround-for-musl.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/904-musl-libc-config.patch (86%) rename package/gcc/{5.2.0 => 5.3.0}/905-add-musl-support-to-gcc.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/906-mips-musl-support.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/907-x86-musl-support.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/908-arm-musl-support.patch (100%) rename package/gcc/{5.2.0 => 5.3.0}/909-aarch64-musl-support.patch (100%) delete mode 100644 package/gcc/arc-2015.06/0001-Differentiate-between-a-bss-TLS-initialized-symbol.patch delete mode 100644 package/gcc/arc-2015.06/910-gcc-poison-system-directories.patch rename package/gcc/{arc-2015.06 => arc-2015.12}/100-libstdcxx-uclibc-c99.patch (100%) rename package/gcc/{arc-2015.06 => arc-2015.12}/851-PR-other-56780.patch (100%) create mode 100644 package/gcc/arc-2015.12/900-UPDATE-Fix-handling-complex-PIC-moves.patch create mode 100644 package/gcc/arc-2015.12/901-UPDATE1-Fix-handling-complex-PIC-moves.patch create mode 100644 package/gcc/arc-2015.12/950-Don-t-allow-mcompact-casesi-for-ARCv2.patch create mode 100644 package/gcr/Config.in create mode 100644 package/gcr/gcr.hash create mode 100644 package/gcr/gcr.mk create mode 100644 package/gdb/7.9.1/0004-xtensa-implement-NPTL-helpers.patch delete mode 100644 package/glibc/2.20/0001-CVE-2014-7817.patch delete mode 100644 package/glibc/2.20/0002-CVE-2014-9402.patch delete mode 100644 package/glibc/2.20/0003-CVE-2015-1472.patch create mode 100644 package/glibc/2.21/0001-fix-CVE-2015-7547.patch create mode 100644 package/glibc/2.21/0002-fix-CVE-2015-1781.patch create mode 100644 package/glibc/2.21/0003-fix-CVE-2014-8121.patch create mode 100644 package/glibc/2.22/0001-fix-CVE-2015-7547.patch create mode 100644 package/gmock/0001-force-use-python2.patch create mode 100644 package/gmock/Config.in create mode 100644 package/gmock/gmock.hash create mode 100644 package/gmock/gmock.mk delete mode 100644 package/gmp/0001-arm-asm-conditional-on-no-thumb-1.patch delete mode 100644 package/gmp/0002-arm-asm-conditional-on-no-thumb-2.patch delete mode 100644 package/gmp/0003-powerpc-provide-default-bmod-to-mod-threshold-1.patch create mode 100644 package/gnupg2/0002-missing-include.patch create mode 100644 package/gnupg2/0003-dont-run-tests.patch create mode 100644 package/gnupg2/0004-silence-git-when-not-in-git-tree.patch create mode 100644 package/gnuradio/0002-types_t-is-need-for-mode_t.patch create mode 100644 package/gob2/gob2.hash create mode 100644 package/gpm/0002-Install-unversioned-solibrary.patch create mode 100644 package/gpm/0003-src-Makefile.in-Really-install-unversioned-solibrary.patch delete mode 100644 package/gpsd/0001-Fix-build-against-musl-libc.patch create mode 100644 package/gptfdisk/Config.in.host create mode 100644 package/graphite2/0001-disable-double-promotion.patch create mode 100644 package/graphite2/Config.in create mode 100644 package/graphite2/graphite2.hash create mode 100644 package/graphite2/graphite2.mk delete mode 100644 package/grep/0001-fix-CVE-2015-1345.patch create mode 100644 package/gssdp/Config.in create mode 100644 package/gssdp/gssdp.hash create mode 100644 package/gssdp/gssdp.mk create mode 100644 package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.hash create mode 100644 package/gstreamer/gst-plugins-base/0002-audioresample-Fix-build-on-x86-if-emmintrin.h-is-ava.patch create mode 100644 package/gstreamer/gst-plugins-base/0003-audioresample-It-s-HAVE_EMMINTRIN_H-not-HAVE_XMMINTR.patch create mode 100644 package/gtkmm3/Config.in create mode 100644 package/gtkmm3/gtkmm3.hash create mode 100644 package/gtkmm3/gtkmm3.mk create mode 100644 package/gupnp-av/Config.in create mode 100644 package/gupnp-av/gupnp-av.hash create mode 100644 package/gupnp-av/gupnp-av.mk create mode 100644 package/gupnp/Config.in create mode 100644 package/gupnp/gupnp.hash create mode 100644 package/gupnp/gupnp.mk delete mode 100644 package/harfbuzz/0001-fix-static-linking-with-icu-uc.patch create mode 100644 package/heirloom-mailx/0001-Patched-out-SSL2-support-since-it-is-no-longer-suppo.patch create mode 100644 package/hidapi/0001-hidtest-dont-use-a-C-source-file-since-it-s-pure-C.patch create mode 100644 package/hidapi/Config.in create mode 100644 package/hidapi/hidapi.hash create mode 100644 package/hidapi/hidapi.mk create mode 100644 package/hostapd/0001-EAP-pwd-peer-Fix-last-fragment-length-validation.patch delete mode 100644 package/hostapd/0001-WPS-Fix-HTTP-chunked-transfer-encoding-parser.patch delete mode 100644 package/hostapd/0002-AP-WMM-Fix-integer-underflow-in-WMM-Action-frame-par.patch create mode 100644 package/hostapd/0002-EAP-pwd-server-Fix-last-fragment-length-validation.patch delete mode 100644 package/hostapd/0003-EAP-pwd-fixes.patch create mode 100644 package/hplip/0001-build-use-pkg-config-to-discover-libusb.patch delete mode 100644 package/hplip/0001-fix-make.patch create mode 100644 package/hplip/0002-configure.in-fix-AM_INIT_AUTOMAKE-call.patch create mode 100644 package/ibrcommon/0001-ibrcommon-data-File.cpp-support-POSIX-basename-call.patch create mode 100644 package/ibrcommon/Config.in create mode 100644 package/ibrcommon/ibrcommon.hash create mode 100644 package/ibrcommon/ibrcommon.mk create mode 100644 package/ibrdtn-tools/Config.in create mode 100644 package/ibrdtn-tools/ibrdtn-tools.hash create mode 100644 package/ibrdtn-tools/ibrdtn-tools.mk create mode 100644 package/ibrdtn/Config.in create mode 100644 package/ibrdtn/ibrdtn.hash create mode 100644 package/ibrdtn/ibrdtn.mk create mode 100644 package/ibrdtnd/Config.in create mode 100644 package/ibrdtnd/ibrdtnd.hash create mode 100644 package/ibrdtnd/ibrdtnd.mk create mode 100644 package/icu/0006-fix-Error-allocating-memory-for-pkgDataFlags.-compil.patch create mode 100644 package/imlib2/0007-fix-compilation-issues-with-musl.patch create mode 100644 package/iperf3/0002-Fix-build-using-musl-libc.patch create mode 100644 package/iperf3/iperf3.hash create mode 100644 package/ipkg/0001-fix-musl-build.patch delete mode 100644 package/ipmiutil/0001-configure.ac-use-CC-instead-of-gcc-full-link-for-sta.patch rename package/ipmiutil/{0002-no-build-doc.patch => 0001-no-build-doc.patch} (78%) create mode 100644 package/ipmiutil/0002-lib-Makefile.am-fix-lanplus-disable.patch create mode 100644 package/ipmiutil/0003-configure.ac-fix-stack-protector-test.patch delete mode 100644 package/ipmiutil/0003-really-disable-lanplus.patch create mode 100644 package/iproute2/0001-Avoid-in6_addr-redefinition.patch create mode 100644 package/iproute2/0002-Add-missing-sys-types.h-include.patch create mode 100644 package/iproute2/0003-iproute2-fix-building-with-musl.patch delete mode 100644 package/iprutils/0001-Don-t-use-gettext.patch create mode 100644 package/iprutils/0001-iprutils-Don-t-use-gettext.patch delete mode 100644 package/iprutils/0002-Allow-CFLAGS-to-be-extended-from-the-enviro.patch create mode 100644 package/iprutils/0002-configure.ac-use-pow-instead-of-matherr-for-libm-che.patch delete mode 100644 package/iprutils/0003-Fix-static-build-by-passing-the-libraries-i.patch create mode 100644 package/iprutils/0003-iprlib-fixes-for-compatibility-with-musl.patch create mode 100644 package/iptables/0001-fix-build-with-musl.patch delete mode 100644 package/iptables/0001-fix-static-link.patch create mode 100644 package/iptables/0002-iptables-add-xtables-config-parser.h-to-BUILT_SOURCES.patch delete mode 100644 package/iptables/0002-iptables-ip-6-tables-save.c-remove-dlfcn.h-include.patch create mode 100644 package/iputils/0001-ping-link-against-libm.patch delete mode 100644 package/iputils/0001-ping-ping6-Fix-hang-with-f-option.patch create mode 100644 package/iqvlinux/Config.in create mode 100644 package/iqvlinux/iqvlinux.hash create mode 100644 package/iqvlinux/iqvlinux.mk create mode 100644 package/irda-utils/0004-musl.patch create mode 100644 package/irssi/0001-Fix-quote-around-macro-argument.patch create mode 100644 package/irssi/Config.in create mode 100644 package/irssi/irssi.hash create mode 100644 package/irssi/irssi.mk create mode 100644 package/iucode-tool/iucode-tool.hash delete mode 100644 package/jq/0001-libm.h-comment-j0-j1-y0-and-y1.patch create mode 100644 package/jq/Config.in.host create mode 100644 package/jq/jq.hash create mode 100644 package/jquery-sidebar/Config.in create mode 100644 package/jquery-sidebar/jquery-sidebar.hash create mode 100644 package/jquery-sidebar/jquery-sidebar.mk create mode 100644 package/jquery-validation/jquery-validation.hash create mode 100644 package/jsoncpp/0001-Remove-Werror.patch delete mode 100644 package/jsoncpp/0001-Revert-Use-std-namespace-for-snprintf.patch create mode 100644 package/jsoncpp/0002-Add-option-JSONCPP_WITH_STRICT_ISO.patch create mode 100644 package/kbd/0001-add-configure-flag-to-disable-tests.patch delete mode 100644 package/kbd/0001-link-against-libintl.patch create mode 100644 package/kbd/0002-Link-against-libintl-when-needed.patch create mode 100644 package/kexec-lite/kexec-lite.hash delete mode 100644 package/kobs-ng/0001-fix-mtd-defines.patch delete mode 100644 package/kobs-ng/Config.in delete mode 100644 package/kobs-ng/kobs-ng.hash delete mode 100644 package/kobs-ng/kobs-ng.mk create mode 100644 package/kodi-pvr-argustv/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch create mode 100644 package/kodi-pvr-mediaportal-tvserver/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch create mode 100644 package/kodi-pvr-nextpvr/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch delete mode 100644 package/kodi-visualisation-waveforhue/0001-Adapt-xbmc_vis_dll.h-header-path.patch create mode 100644 package/kodi/kodi.hash create mode 100644 package/kompexsqlite/0001-Makefile-use-autoconf-CXX-for-proper-builds.patch create mode 100644 package/kompexsqlite/0002-append-to-cflags-and-cxxflags.patch create mode 100644 package/kompexsqlite/Config.in create mode 100644 package/kompexsqlite/kompexsqlite.hash create mode 100644 package/kompexsqlite/kompexsqlite.mk create mode 100644 package/lcdproc/0002-musl.patch create mode 100644 package/leafnode2/leafnode2.hash create mode 100644 package/libasplib/0001-Fix-linux-detection-with-buildroot.patch create mode 100644 package/libasplib/Config.in create mode 100644 package/libasplib/libasplib.hash create mode 100644 package/libasplib/libasplib.mk create mode 100644 package/libbroadvoice/Config.in create mode 100644 package/libbroadvoice/libbroadvoice.mk create mode 100644 package/libbsd/0001-build-clock_gettime-might-need-librt.patch create mode 100644 package/libcddb/Config.in create mode 100644 package/libcddb/libcddb.hash create mode 100644 package/libcddb/libcddb.mk create mode 100644 package/libcodec2/0001-Use-the-native-compiler-to-build-generate_cookbook.patch create mode 100644 package/libcodec2/0002-Add-option-to-disable-unit-tests.patch create mode 100644 package/libcodec2/Config.in create mode 100644 package/libcodec2/libcodec2.mk delete mode 100644 package/libconfuse/0001-fix-configure-ac.patch create mode 100644 package/libconfuse/libconfuse.hash create mode 100644 package/libcroco/Config.in create mode 100644 package/libcroco/libcroco.hash create mode 100644 package/libcroco/libcroco.mk create mode 100644 package/libcrossguid/Config.in create mode 100644 package/libcrossguid/libcrossguid.mk delete mode 100644 package/libcue/0001-_unused-fix.patch create mode 100644 package/libdrm/0002-xf86drm.c-Include-limits.h-to-fix-build-error-on-Sol.patch create mode 100644 package/libdvbpsi/Config.in create mode 100644 package/libdvbpsi/libdvbpsi.hash create mode 100644 package/libdvbpsi/libdvbpsi.mk rename package/{efl => }/libevas-generic-loaders/Config.in (59%) create mode 100644 package/libevas-generic-loaders/libevas-generic-loaders.hash rename package/{efl => }/libevas-generic-loaders/libevas-generic-loaders.mk (63%) create mode 100644 package/libevdev/0001-configure-add-disable-runtime-tests-option.patch create mode 100644 package/libfcgi/0006-fix-CVE-2012-6687.patch delete mode 100644 package/libffi/0003-fix-typo.patch create mode 100644 package/libffi/0003-libffi-enable-hardfloat-in-the-MIPS-assembly-code.patch delete mode 100644 package/libffi/0004-Add-missing-GNU-stack-markings-in-win32.S.patch delete mode 100644 package/libffi/0005-Fix-paths-in-libffi.pc.in.patch create mode 100644 package/libfreeglut/Config.in create mode 100644 package/libfreeglut/libfreeglut.hash create mode 100644 package/libfreeglut/libfreeglut.mk create mode 100644 package/libfreeimage/0003-LibWebP-fix-compilation-issue-with-GCC-5.x-C-11.patch create mode 100644 package/libfslcodec/libfslcodec.hash create mode 100644 package/libfslparser/libfslparser.hash create mode 100644 package/libfslvpuwrap/libfslvpuwrap.hash create mode 100644 package/libg7221/Config.in create mode 100644 package/libg7221/libg7221.mk create mode 100644 package/libgdiplus/0001-Fix-compile-error-when-cross-compiling.patch create mode 100644 package/libgdiplus/Config.in create mode 100644 package/libgdiplus/libgdiplus.hash create mode 100644 package/libgdiplus/libgdiplus.mk create mode 100644 package/libglfw/Config.in create mode 100644 package/libglfw/libglfw.hash create mode 100644 package/libglfw/libglfw.mk create mode 100644 package/libglib2/0002-disable-tests.patch create mode 100644 package/libgudev/Config.in create mode 100644 package/libgudev/libgudev.hash create mode 100644 package/libgudev/libgudev.mk create mode 100644 package/libhdhomerun/0001-dont-strip.patch create mode 100644 package/libhdhomerun/Config.in create mode 100644 package/libhdhomerun/libhdhomerun.hash create mode 100644 package/libhdhomerun/libhdhomerun.mk create mode 100644 package/libhttpparser/0001-Use-f-option-when-calling-ln-at-install-time.patch create mode 100644 package/libhttpparser/Config.in create mode 100644 package/libhttpparser/libhttpparser.hash create mode 100644 package/libhttpparser/libhttpparser.mk create mode 100644 package/libilbc/Config.in create mode 100644 package/libilbc/libilbc.mk create mode 100644 package/libldns/0001-fix-double-free-for-answers-bigger-than-4096.patch create mode 100644 package/libldns/0002-fix-whitespace-bug-in-ldns-read-zone.patch create mode 100644 package/libldns/Config.in create mode 100644 package/libldns/libldns.hash create mode 100644 package/libldns/libldns.mk create mode 100644 package/libmng/0001-jpeg-9a.patch create mode 100644 package/libmng/Config.in create mode 100644 package/libmng/libmng.hash create mode 100644 package/libmng/libmng.mk create mode 100644 package/libndp/0001-ndptool.c-Fix-musl-build.patch create mode 100644 package/libnet/Config.in create mode 100644 package/libnet/libnet.hash create mode 100644 package/libnet/libnet.mk delete mode 100644 package/libnetfilter_conntrack/0001-uclinux.patch delete mode 100644 package/libnetfilter_conntrack/0002-src-Makefile.am-drop-hardcoded-ldl.patch create mode 100644 package/libnetfilter_queue/0002-musl.patch create mode 100644 package/libnfnetlink/0002-musl.patch create mode 100644 package/libnfs/libnfs.hash create mode 100644 package/libnspr/0003-enable-internal-getproto-functions-for-musl.patch create mode 100644 package/libopenh264/Config.in create mode 100644 package/libopenh264/libopenh264.mk create mode 100644 package/libpam-radius-auth/Config.in create mode 100644 package/libpam-radius-auth/libpam-radius-auth.hash create mode 100644 package/libpam-radius-auth/libpam-radius-auth.mk create mode 100644 package/libpam-tacplus/Config.in create mode 100644 package/libpam-tacplus/libpam-tacplus.mk create mode 100644 package/libpciaccess/0002-musl-arm.patch create mode 100644 package/libplist/libplist.hash create mode 100644 package/libraw/0001-Remove-paths-which-break-cross-compilation.patch create mode 100644 package/libraw/0002-libraw_x3f.cpp-remove-Byte-order-mark.patch create mode 100644 package/libraw1394/0001-testlibraw-build-the-CLOCK_MONOTONIC_RAW-test-condit.patch create mode 100644 package/libseccomp/0002-musl.patch create mode 100644 package/libsecret/0001-libsecret.pc-add-Libs.private-field-for-libgcrypt.patch create mode 100644 package/libserial/0002-Don-t-use-high-baudrates-when-not-available.patch delete mode 100644 package/libserial/0002-add-missing-header-include.patch create mode 100644 package/libserialport/libserialport.hash create mode 100644 package/libsigrok/0001-beaglelogic.h-fix-build-with-musl-libc.patch create mode 100644 package/libsigrok/libsigrok.hash create mode 100644 package/libsigrokdecode/libsigrokdecode.hash create mode 100644 package/libsigsegv/0005-fix-sparc64-stackpointer.patch create mode 100644 package/libsilk/Config.in create mode 100644 package/libsilk/libsilk.mk create mode 100644 package/libsoc/libsoc.hash create mode 100644 package/libsoil/0001-fix-makefile.patch create mode 100644 package/libsoil/Config.in create mode 100644 package/libsoil/libsoil.hash create mode 100644 package/libsoil/libsoil.mk create mode 100644 package/libsoundtouch/Config.in create mode 100644 package/libsoundtouch/libsoundtouch.mk create mode 100644 package/libssh/Config.in create mode 100644 package/libssh/libssh.hash create mode 100644 package/libssh/libssh.mk create mode 100644 package/libtirpc/0006-Disable-DES-authentification-support.patch delete mode 100644 package/libtirpc/0006-Use-local-bsdqueue.h.patch create mode 100644 package/libtirpc/0007-Add-missing-rwlock_unlocks-in-xprt_register.patch delete mode 100644 package/libtirpc/0007-Disable-DES-authentification-support.patch create mode 100644 package/libtorrent/libtorrent.hash create mode 100644 package/libuecc/Config.in create mode 100644 package/libuecc/libuecc.mk delete mode 100644 package/libungif/Config.in delete mode 100644 package/libungif/libungif.hash delete mode 100644 package/libungif/libungif.mk create mode 100644 package/liburcu/0002-support-aarch64.patch create mode 100644 package/libusb-compat/0001-Use-C99-standard-fixed-width-integer-types-in-usb.h.patch create mode 100644 package/libuv/0001-unix-fix-support-for-uClibc-ng.patch create mode 100644 package/libuv/libuv.hash create mode 100644 package/libv4l/0002-dvb-keytable-fix-missing-libintl-linking.patch create mode 100644 package/libv4l/0003-libv4lsyscall-priv.h-Use-off_t-instead-of-__off_t.patch create mode 100644 package/libv4l/0004-utils-Properly-use-ENABLE_NLS-for-locale-related-cod.patch create mode 100644 package/libv4l/0005-libv4lconvert-only-expose-jpeg_mem_-protoypes-when-J.patch create mode 100644 package/libwebsock/0003-fix-incorrect-inline.patch delete mode 100644 package/libxml2/0001-libxml2-config.cmake.in-update-include-directories.patch delete mode 100644 package/libxml2/0002-threads-use-forward-declarations-only-for-glibc.patch create mode 100644 package/libyuv/0001-i386-sse2.patch create mode 100644 package/libyuv/0002-aarch64.patch create mode 100644 package/libyuv/Config.in create mode 100644 package/libyuv/libyuv.mk delete mode 100644 package/lightning/0001-cross-compilation-configure-fixes.patch delete mode 100644 package/lightning/0002-ppc-disassembler-build-fix.patch create mode 100644 package/lighttpd/0002-compat-latest-lua.patch create mode 100644 package/linux-fusion/0002-Fix-mismatched-conversion-spec-and-value-in-printk.patch create mode 100644 package/linux-fusion/0003-Fix-fusion-Unknown-symbol-tasklist_lock-err-0.patch create mode 100644 package/linux-fusion/0004-Port-one-one_udp.c-to-Linux-4.1.patch delete mode 100644 package/linux-headers/3.0.101/0001-headers_install-fix-__packed-in-exported-kernel-head.patch create mode 100644 package/linux-headers/Config.in create mode 100644 package/liquid-dsp/0001-configure.ac-use-AC_CONFIG_MACRO_DIR.patch create mode 100644 package/liquid-dsp/Config.in create mode 100644 package/liquid-dsp/liquid-dsp.hash create mode 100644 package/liquid-dsp/liquid-dsp.mk create mode 100644 package/lldpd/Config.in create mode 100644 package/lldpd/lldpd.hash create mode 100644 package/lldpd/lldpd.mk create mode 100644 package/lm-sensors/0003-musl-fix-includes.patch create mode 100644 package/localedef/localedef.hash create mode 100644 package/ltp-testsuite/0002-rpc-tirpc-disable-tirpc_auth_authdes_seccreate-tests.patch create mode 100644 package/ltrace/0002-sparc-add-missing-library.h-include.patch create mode 100644 package/ltris/0001-fix-gcc5-build.patch create mode 100644 package/lua-periphery/0001-Add-missing-header-for-musl-compatibility.patch delete mode 100644 package/lua-periphery/0001-fix-build-flags.patch create mode 100644 package/lua-periphery/0002-Fix-build-on-SPARC.patch rename package/lua/{5.3.1 => 5.3.2}/0001-root-path.patch (100%) rename package/lua/{5.3.1 => 5.3.2}/0002-shared-libs-for-lua.patch (100%) rename package/lua/{5.3.1 => 5.3.2}/0004-lua-pc.patch (98%) rename package/lua/{5.3.1 => 5.3.2}/0011-linenoise.patch (78%) create mode 100644 package/luaposix/0001-sched-workaround-glibc-_POSIX_PRIORITY_SCHEDULING-bu.patch create mode 100644 package/luarocks/luarocks.hash create mode 100644 package/luv/Config.in create mode 100644 package/luv/luv.hash create mode 100644 package/luv/luv.mk create mode 100644 package/luvi/Config.in create mode 100644 package/luvi/luvi.hash create mode 100644 package/luvi/luvi.mk create mode 100644 package/mbedtls/Config.in create mode 100644 package/mbedtls/mbedtls.hash create mode 100644 package/mbedtls/mbedtls.mk delete mode 100644 package/media-ctl/0001-add-kernel-headers-for-compatibility-with-old-toolchains.patch delete mode 100644 package/media-ctl/Config.in delete mode 100644 package/media-ctl/media-ctl.mk delete mode 100644 package/mesa3d-demos/0001-demos-non-mesa-impl.patch rename package/mesa3d-demos/{0002-demos-optional-gl.patch => 0001-demos-optional-gl.patch} (84%) delete mode 100644 package/mesa3d-demos/0003-demos-x11-fix.patch create mode 100644 package/mesa3d/0003-musl.patch create mode 100644 package/micropython-lib/Config.in create mode 100644 package/micropython-lib/micropython-lib.hash create mode 100644 package/micropython-lib/micropython-lib.mk create mode 100644 package/micropython/0001-fix-version.patch create mode 100644 package/micropython/Config.in create mode 100644 package/micropython/micropython.hash create mode 100644 package/micropython/micropython.mk create mode 100644 package/minicom/0001-musl-libc-compile-fix.patch create mode 100644 package/minicom/0002-change-maxnamlen-to-posixs-name-max.patch create mode 100644 package/minicom/minicom.hash create mode 100644 package/minizip/Config.in create mode 100644 package/minizip/minizip.hash create mode 100644 package/minizip/minizip.mk create mode 100644 package/miraclecast/Config.in create mode 100644 package/miraclecast/miraclecast.hash create mode 100644 package/miraclecast/miraclecast.mk create mode 100644 package/mjpg-streamer/0001-musl-pthread.patch create mode 100644 package/mjpg-streamer/mjpg-streamer.hash create mode 100644 package/mongodb/Config.in create mode 100644 package/mongodb/mongodb.hash create mode 100644 package/mongodb/mongodb.mk delete mode 100755 package/mongoose/S85mongoose delete mode 100644 package/mongoose/mongoose.service create mode 100644 package/mongrel2/0004-Rename-symbol-to-prevent-conflict.patch delete mode 100644 package/mono/0003-fix-parallel-install.patch create mode 100644 package/mono/0004-fixing-initialization-of-have-vasprintf.patch create mode 100644 package/mono/0005-eglib-checking-for-locale_charset-function.patch create mode 100644 package/mono/0006-Remove-unit-tests-from-mono-compilation.patch create mode 100644 package/mono/0007-config.in-fixing-wrong-MonoPosixHelper-location.patch create mode 100644 package/mono/0008-monodoc-Fixing-wrong-monodoc-search-path.patch create mode 100644 package/mosquitto/mosquitto.service create mode 100644 package/mpd/0001-notify-Don-t-use-constexpr-on-Haiku.patch create mode 100644 package/mpd/0002-notify-use-constexpr-only-with-glibc.patch create mode 100644 package/mpd/0003-thread-Posix-Mutex-Cond-use-constexpr-only-with-glib.patch rename package/mpd/{0001-thread-Name-include-stdio.h-for-prctl-as-well.patch => 0004-thread-Name-include-stdio.h-for-prctl-as-well.patch} (81%) create mode 100644 package/mpd/0005-configure.ac-check-if-libatomic-is-needed.patch delete mode 100644 package/mplayer/0002-fix-cc-parsing.patch rename package/mplayer/{0003-mpdemux-live555-async-interface.patch => 0002-mpdemux-live555-async-interface.patch} (100%) delete mode 100644 package/mplayer/0004-add-arc-support.patch delete mode 100644 package/mplayer/0005-Support-newer-GIFLIB-versions.patch delete mode 100644 package/mplayer/0006-Support-newer-GIFLIB-versions-part2.patch create mode 100644 package/mraa/Config.in create mode 100644 package/mraa/mraa.mk create mode 100644 package/mrouted/0001-DVMRP-report-missing-subnet.patch create mode 100644 package/mtdev2tuio/0001-Fix-build-with-musl-libc.patch create mode 100644 package/musepack/0003-include-fpu-control-with-glibc-only.patch create mode 100644 package/musepack/0004-missing-sys-select.patch delete mode 100644 package/musl/0001-fix-uselocale.patch create mode 100644 package/mysql/0007-dont-install-in-mysql-directory.patch create mode 100644 package/nbd/0001-avoid-name-clashing.patch create mode 100644 package/netbsd-queue/Config.in create mode 100644 package/netbsd-queue/netbsd-queue.hash create mode 100644 package/netbsd-queue/netbsd-queue.mk create mode 100644 package/netsniff-ng/Config.in create mode 100644 package/netsniff-ng/netsniff-ng.hash create mode 100644 package/netsniff-ng/netsniff-ng.mk rename package/nettle/{0002-disable-testsuite-examples.patch => 0001-disable-testsuite-examples.patch} (100%) delete mode 100644 package/nettle/0001-fix-shared-only-build.patch create mode 100644 package/nfs-utils/0004-mountd-Add-check-for-struct-file_handle.patch delete mode 100644 package/nfs-utils/0004-statd-Fix-test-for-foreground-mode.patch create mode 100755 package/nfs-utils/nfs-utils_env.sh create mode 100644 package/nfs-utils/nfs-utils_tmpfiles.conf delete mode 100644 package/nodejs/0.10.40/0004-fix-build-error-without-OpenSSL-support.patch rename package/nodejs/{0.10.40 => 0.10.42}/0001-remove-python-bz2-dependency.patch (100%) rename package/nodejs/{0.10.40 => 0.10.42}/0002-gyp-force-link-command-to-use-CXX.patch (100%) rename package/nodejs/{0.10.40 => 0.10.42}/0003-use-python-variable.patch (100%) create mode 100644 package/nodejs/0.10.42/0004-fix-musl-USE-MISC-build-issue.patch create mode 100644 package/nodejs/0.10.42/0005-Fix-support-for-uClibc-ng.patch delete mode 100644 package/nodejs/0.12.7/0003-Use-a-python-variable-instead-of-hardcoding-Python.patch delete mode 100644 package/nodejs/0.12.7/0004-fix-build-error-without-OpenSSL-support.patch rename package/nodejs/{0.12.7 => 5.5.0}/0001-Remove-dependency-on-Python-bz2-module.patch (60%) rename package/nodejs/{0.12.7 => 5.5.0}/0002-gyp-force-link-command-to-use-CXX.patch (87%) create mode 100644 package/nodejs/5.5.0/0003-Use-a-python-variable-instead-of-hardcoding-Python.patch create mode 100644 package/nodejs/5.5.0/0004-Fix-va_list-not-declared.patch create mode 100644 package/nodejs/5.5.0/0005-Fix-support-for-uClibc-ng.patch create mode 100644 package/noip/noip.hash create mode 100644 package/nss-pam-ldapd/Config.in create mode 100644 package/nss-pam-ldapd/S45nslcd create mode 100644 package/nss-pam-ldapd/nslcd.service create mode 100644 package/nss-pam-ldapd/nss-pam-ldapd.hash create mode 100644 package/nss-pam-ldapd/nss-pam-ldapd.mk create mode 100644 package/ntp/0002-ntp-syscalls-fallback.patch create mode 100644 package/numactl/numactl.hash create mode 100644 package/obsidian-cursors/Config.in create mode 100644 package/obsidian-cursors/obsidian-cursors.hash create mode 100644 package/obsidian-cursors/obsidian-cursors.mk create mode 100644 package/odhcp6c/odhcp6c.hash create mode 100644 package/ola/0001-Remove-fvisibiliy-inlines-hidden.patch create mode 100644 package/ola/ola.hash create mode 100644 package/openal/0001-Fix-detection-of-C11-atomics.patch create mode 100644 package/openal/Config.in create mode 100644 package/openal/openal.hash create mode 100644 package/openal/openal.mk create mode 100644 package/openbox/Config.in create mode 100644 package/openbox/openbox.hash create mode 100644 package/openbox/openbox.mk create mode 100644 package/opencv/0001-core-fix-x86-PIC-code-compilation.patch create mode 100644 package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch create mode 100644 package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch rename package/{opencv => opencv3}/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch (100%) rename package/{opencv => opencv3}/0002-fix-support-for-pthreads-parallel_for.patch (100%) create mode 100644 package/opencv3/Config.in create mode 100644 package/opencv3/opencv3.mk create mode 100644 package/openobex/openobex.hash delete mode 100644 package/openocd/0001-Fix-compilation-error-in-src-flash-nor-mini51.c.patch create mode 100644 package/openpgm/openpgm.hash delete mode 100644 package/openpowerlink/0001-fix-use-a-better-regex-for-cmake-system-processor.patch create mode 100644 package/openpowerlink/0001-install-the-stack-libraries-to-lib-subdirectory.patch create mode 100644 package/openpowerlink/0002-cmake-install-oplk-headers-files.patch delete mode 100644 package/openpowerlink/0002-fix-user-space-stack-enable-shared-build.patch create mode 100644 package/openpowerlink/0003-cmake-use-CMAKE_CURRENT_SOURCE_DIR-instead-of-CM.patch create mode 100644 package/openpowerlink/0004-Use-PROJECT_NAME-instead-of-CMAKE_PROJECT_NAME.patch create mode 100644 package/openpowerlink/0005-Add-top-level-CMakeLists.txt.patch create mode 100644 package/openpowerlink/openpowerlink.hash create mode 100644 package/openssl/0001-Dont-waste-time-building-manpages-if-we-re-not-going.patch rename package/openssl/{003-cryptodev-Fix-issue-with-signature-generation.patch => 0002-cryptodev-Fix-issue-with-signature-generation.patch} (82%) delete mode 100644 package/openssl/001-do-not-build-docs.patch delete mode 100644 package/oprofile/0001-Include-time.h-for-nanosleep.patch create mode 100644 package/oprofile/0001-musl.patch delete mode 100644 package/opus/0001-configure.ac-fix-bashism-in-ARM-optimization-handling.patch delete mode 100644 package/pango/S25pango create mode 100644 package/pangomm/Config.in create mode 100644 package/pangomm/pangomm.hash create mode 100644 package/pangomm/pangomm.mk create mode 100644 package/parted/0004-fix-includes-for-musl.patch delete mode 100644 package/perl/0002-dynaloader-hints.patch create mode 100644 package/picocom/picocom.hash create mode 100644 package/pifmrds/0003-Makefile-fix-static-link.patch create mode 100644 package/pixman/0001-Disable-tests.patch delete mode 100644 package/pixman/0001-check-fe-divbyzero.patch delete mode 100644 package/pixman/0002-Fix-C-pre-processor-issues-in-LEAF_MIPS32R2.patch create mode 100644 package/pixman/0002-pixman-private-include-float.h-only-in-C-code.patch create mode 100644 package/pkgconf/0001-Fix-all-variables-sysroot-prefix-problem.patch delete mode 100644 package/pkgconf/0001-fix-variable.patch delete mode 100644 package/pkgconf/0002-fix-double-sysroot.patch delete mode 100644 package/poco/0001-aarch64.patch create mode 100644 package/poco/0001-poco-add-the-staging-path-to-search-path.patch delete mode 100644 package/poco/0002-add-cross-build-config.patch create mode 100644 package/poco/0002-poco-don-t-build-debug-libraries.patch create mode 100644 package/poco/0003-Fix-conflicting-declaration-with-unbundled-pcre.patch delete mode 100644 package/poco/0003-add-staging-search-path.patch delete mode 100644 package/poco/0004-dont-build-debug-libs.patch create mode 100644 package/poco/0004-fix-unbundled-pcre-usage.patch create mode 100644 package/poco/0005-add-missing-LIBPREFIX-definition.patch delete mode 100644 package/poco/poco.hash create mode 100644 package/portmap/portmap.hash create mode 100644 package/powertop/0003-add-missing-sys-time.h-header.patch create mode 100644 package/powertop/0004-add-missing-stdio.h-header.patch create mode 100644 package/pptp-linux/0003-pqueue.h-include-sys-types.h.patch create mode 100644 package/protobuf-c/protobuf-c.hash create mode 100644 package/protobuf/protobuf.hash create mode 100644 package/ptpd2/0001-musl.patch create mode 100644 package/pulseaudio/0001-padsp-Make-it-compile-on-musl.patch create mode 100644 package/pulseview/0001-musl.patch create mode 100644 package/pulseview/pulseview.hash create mode 100644 package/python-backports-abc/Config.in create mode 100644 package/python-backports-abc/python-backports-abc.hash create mode 100644 package/python-backports-abc/python-backports-abc.mk create mode 100644 package/python-beautifulsoup4/Config.in create mode 100644 package/python-beautifulsoup4/python-beautifulsoup4.hash create mode 100644 package/python-beautifulsoup4/python-beautifulsoup4.mk create mode 100644 package/python-can/python-can.hash create mode 100644 package/python-cbor/Config.in create mode 100644 package/python-cbor/python-cbor.hash create mode 100644 package/python-cbor/python-cbor.mk create mode 100644 package/python-click/Config.in create mode 100644 package/python-click/python-click.hash create mode 100644 package/python-click/python-click.mk create mode 100644 package/python-cssselect/Config.in create mode 100644 package/python-cssselect/python-cssselect.hash create mode 100644 package/python-cssselect/python-cssselect.mk create mode 100644 package/python-ecdsa/Config.in create mode 100644 package/python-ecdsa/python-ecdsa.hash create mode 100644 package/python-ecdsa/python-ecdsa.mk create mode 100644 package/python-html5lib/Config.in create mode 100644 package/python-html5lib/python-html5lib.hash create mode 100644 package/python-html5lib/python-html5lib.mk create mode 100644 package/python-idna/Config.in create mode 100644 package/python-idna/python-idna.hash create mode 100644 package/python-idna/python-idna.mk create mode 100644 package/python-ipaddress/Config.in create mode 100644 package/python-ipaddress/python-ipaddress.hash create mode 100644 package/python-ipaddress/python-ipaddress.mk create mode 100644 package/python-m2crypto/0001-Don-t-try-to-build-with-SSLv2-when-it-is-not-availab.patch create mode 100644 package/python-mako/python-mako.hash create mode 100644 package/python-mistune/Config.in create mode 100644 package/python-mistune/python-mistune.hash create mode 100644 package/python-mistune/python-mistune.mk create mode 100644 package/python-msgpack/python-msgpack.hash create mode 100644 package/python-netaddr/Config.in create mode 100644 package/python-netaddr/python-netaddr.hash create mode 100644 package/python-netaddr/python-netaddr.mk create mode 100644 package/python-numpy/0002-Don-t-blindly-enable-frexpl-and-ldexpl-for-uClibc.patch create mode 100644 package/python-paho-mqtt/Config.in create mode 100644 package/python-paho-mqtt/python-paho-mqtt.hash create mode 100644 package/python-paho-mqtt/python-paho-mqtt.mk create mode 100644 package/python-paramiko/Config.in create mode 100644 package/python-paramiko/python-paramiko.hash create mode 100644 package/python-paramiko/python-paramiko.mk create mode 100644 package/python-protobuf/0001-disable-unneeded-build-dependencies.patch create mode 100644 package/python-pyasn/python-pyasn.hash create mode 100644 package/python-pycparser/python-pycparser.hash create mode 100644 package/python-pycparser/python-pycparser.mk create mode 100644 package/python-pyparted/Config.in create mode 100644 package/python-pyparted/python-pyparted.hash create mode 100644 package/python-pyparted/python-pyparted.mk create mode 100644 package/python-pyratemp/Config.in create mode 100644 package/python-pyratemp/python-pyratemp.hash create mode 100644 package/python-pyratemp/python-pyratemp.mk create mode 100644 package/python-pyroute2/Config.in create mode 100644 package/python-pyroute2/python-pyroute2.hash create mode 100644 package/python-pyroute2/python-pyroute2.mk create mode 100644 package/python-pysmb/Config.in create mode 100644 package/python-pysmb/python-pysmb.hash create mode 100644 package/python-pysmb/python-pysmb.mk create mode 100644 package/python-pyudev/0001-Workaround-finding-libudev-on-systems-without-ldconf.patch create mode 100644 package/python-pyudev/Config.in create mode 100644 package/python-pyudev/python-pyudev.hash create mode 100644 package/python-pyudev/python-pyudev.mk delete mode 100644 package/python-pyxml/Config.in delete mode 100644 package/python-pyxml/python-pyxml.hash delete mode 100644 package/python-pyxml/python-pyxml.mk create mode 100644 package/python-serial/python-serial.hash create mode 100644 package/python-singledispatch/Config.in create mode 100644 package/python-singledispatch/python-singledispatch.hash create mode 100644 package/python-singledispatch/python-singledispatch.mk create mode 100644 package/python-smbus-cffi/Config.in create mode 100644 package/python-smbus-cffi/python-smbus-cffi.hash create mode 100644 package/python-smbus-cffi/python-smbus-cffi.mk create mode 100644 package/python-spidev/0001-Fix-build-with-musl-libc.patch create mode 100644 package/python-spidev/python-spidev.hash create mode 100644 package/python-urllib3/Config.in create mode 100644 package/python-urllib3/python-urllib3.hash create mode 100644 package/python-urllib3/python-urllib3.mk create mode 100644 package/python-urwid/python-urwid.hash create mode 100644 package/python-web2py/python-web2py.hash create mode 100644 package/python-webpy/python-webpy.hash rename package/python3/{001-remove-host-header-path.patch => 0001-setup.py-do-not-add-invalid-header-locations.patch} (80%) rename package/python3/{003-sysconfigdata-install-location.patch => 0002-Change-the-install-location-of-_sysconfigdata.py.patch} (76%) rename package/python3/{005-pyc-pyo-conditional.patch => 0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch} (65%) create mode 100644 package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch rename package/python3/{007-disable-extensions.patch => 0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch} (77%) rename package/python3/{008-distutils-sysconfig-use-sysconfigdata.patch => 0006-distutils-sysconfig-use-sysconfigdata.patch} (69%) rename package/python3/{009-distutils-use-python-sysroot.patch => 0007-Adjust-library-header-paths-for-cross-compilation.patch} (76%) rename package/python3/{010-no-termcap-host-path.patch => 0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch} (67%) rename package/python3/{012-dont-add-multiarch-path.patch => 0009-Don-t-add-multiarch-paths.patch} (70%) rename package/python3/{013-abort-on-failed-modules.patch => 0010-Abort-on-failed-module-build.patch} (57%) rename package/python3/{014-serial-ioctl-workaround.patch => 0011-Serial-ioctl-workaround.patch} (64%) rename package/python3/{015-distutils-scripts-dont-adjust-shebang.patch => 0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch} (61%) rename package/python3/{017-python-config-include-libdir.patch => 0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch} (89%) rename package/python3/{018-ncursesw-remove-wrong-includedir.patch => 0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch} (62%) rename package/python3/{019-fix-add-gcc-paths-logic.patch => 0015-Override-system-locale-and-set-to-default-when-addin.patch} (69%) create mode 100644 package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch rename package/python3/{100-optional-test-modules.patch => 0017-Add-an-option-to-disable-installation-of-test-module.patch} (81%) rename package/python3/{101-optional-pydoc.patch => 0018-Add-an-option-to-disable-pydoc.patch} (72%) rename package/python3/{102-optional-2to3.patch => 0019-Add-an-option-to-disable-lib2to3.patch} (75%) rename package/python3/{103-optional-sqlite.patch => 0020-Add-option-to-disable-the-sqlite3-module.patch} (61%) rename package/python3/{104-optional-tk.patch => 0021-Add-an-option-to-disable-the-tk-module.patch} (65%) rename package/python3/{105-optional-curses.patch => 0022-Add-an-option-to-disable-the-curses-module.patch} (61%) rename package/python3/{106-optional-expat.patch => 0023-Add-an-option-to-disable-expat.patch} (75%) rename package/python3/{107-optional-codecs-cjk.patch => 0024-Add-an-option-to-disable-CJK-codecs.patch} (58%) rename package/python3/{108-optional-nis.patch => 0025-Add-an-option-to-disable-NIS.patch} (63%) rename package/python3/{109-optional-unicodedata.patch => 0026-Add-an-option-to-disable-unicodedata.patch} (58%) rename package/python3/{110-optional-idle.patch => 0027-Add-an-option-to-disable-IDLE.patch} (71%) rename package/python3/{111-optional-decimal.patch => 0028-Add-an-option-to-disable-decimal.patch} (74%) rename package/python3/{112-optional-ossaudiodev.patch => 0029-Add-an-option-to-disable-the-ossaudiodev-module.patch} (54%) delete mode 100644 package/python3/004-old-stdlib-cache.patch delete mode 100644 package/python3/006-cross-compile-getaddrinfo.patch delete mode 100644 package/python3/016-distutils-no-pep3147.patch create mode 100644 package/qhull/qhull.hash delete mode 100644 package/qpdf/0001-QUtil.hh-time_t-needs-include-time.h.patch delete mode 100644 package/qpid-proton/0001-proton-c-fix-C-compiler-detection-with-_ARG1-_ARG2.patch create mode 100644 package/qt/0008-Fix-conversion-constructor-error-for-legacy-c-compil.patch create mode 100644 package/qt/0009-Fix-library-inclusion-order-when-building-statically.patch create mode 100644 package/qt5/qt53d/Config.in create mode 100644 package/qt5/qt53d/qt53d.hash create mode 100644 package/qt5/qt53d/qt53d.mk delete mode 100644 package/qt5/qt5base/0002-mkspecs-files.patch delete mode 100644 package/qt5/qt5base/0004-no-gold-linker-for-host-build.patch delete mode 100644 package/qt5/qt5base/0007-big_endian-fix_destformat.patch delete mode 100644 package/qt5/qt5base/0008-QtGui-force-image-dir-in-include_path.patch create mode 100644 package/qt5/qt5base/0009-fix-eglfs-for-sunxi-mali.patch create mode 100644 package/qt5/qt5base/0014-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch create mode 100644 package/qt5/qt5base/qmake.conf create mode 100644 package/qt5/qt5base/qplatformdefs.h create mode 100644 package/quagga/0002-configure-fix-static-linking-with-readline.patch create mode 100644 package/rabbitmq-c/Config.in create mode 100644 package/rabbitmq-c/rabbitmq-c.hash create mode 100644 package/rabbitmq-c/rabbitmq-c.mk create mode 100644 package/ranger/0001-colorscheme-check-for-compiled-python-files.patch create mode 100644 package/ranger/Config.in create mode 100644 package/ranger/ranger.hash create mode 100644 package/ranger/ranger.mk create mode 100644 package/rapidxml/Config.in create mode 100644 package/rapidxml/rapidxml.hash create mode 100644 package/rapidxml/rapidxml.mk create mode 100644 package/read-edid/0001-Fix-install-file-list.patch create mode 100644 package/read-edid/0002-Fix-compiler-check.patch rename {system/skeleton/etc => package/readline}/inputrc (100%) create mode 100644 package/rfkill/Config.in create mode 100644 package/rfkill/rfkill.hash create mode 100644 package/rfkill/rfkill.mk create mode 100755 package/rng-tools/S21rngd create mode 100644 package/rpcbind/0002-handle_reply-Don-t-use-the-xp_auth-pointer-directly.patch mode change 100755 => 100644 package/rpi-firmware/mkknlimg create mode 100644 package/rrdtool/0001-Add-configure-option-to-disable-documentation.patch delete mode 100644 package/rrdtool/0001-automake-compat.patch delete mode 100644 package/rrdtool/0002-configure-dont-hardcode-include-dirs.patch create mode 100644 package/rsyslog/0001-musl-fcntl-h.patch create mode 100644 package/rtorrent/rtorrent.hash create mode 100644 package/rubix/rubix.hash create mode 100644 package/samba4/0002-build-improve-stack-protector-check.patch delete mode 100644 package/sane-backends/0002-remove-unsafe-headers-path.patch delete mode 100644 package/sane-backends/0003-remove-cups-and-systemd-support.patch create mode 100644 package/sane-backends/saned.socket create mode 100644 package/sane-backends/saned@.service delete mode 100644 package/sawman/0001-link-using-gcc-instead-of-ld.patch delete mode 100644 package/sawman/Config.in delete mode 100644 package/sawman/sawman.mk create mode 100644 package/sbc/Config.in create mode 100644 package/sbc/sbc.hash create mode 100644 package/sbc/sbc.mk delete mode 100644 package/schifra/Config.in delete mode 100644 package/schifra/schifra.hash delete mode 100644 package/schifra/schifra.mk delete mode 100644 package/sconeserver/0001-fix-ssl-libs-ordering.patch create mode 100644 package/sconeserver/sconeserver.hash create mode 100644 package/scrypt/Config.in create mode 100644 package/scrypt/scrypt.hash create mode 100644 package/scrypt/scrypt.mk create mode 100644 package/sdl2/Config.in create mode 100644 package/sdl2/sdl2.hash create mode 100644 package/sdl2/sdl2.mk create mode 100644 package/shairport-sync/shairport-sync.hash create mode 100644 package/sigrok-cli/sigrok-cli.hash create mode 100755 package/skeleton/nfs_check create mode 100644 package/slang/0004-Rename-posix_close-function-to-posix_close_slfile.patch create mode 100644 package/smack/0001-libsmack-common.c-Include-limits.h-for-PATH_MAX.patch create mode 100644 package/socat/0002-ptrdiff_t-is-defined-in-stddef.h.patch create mode 100644 package/sp-oops-extract/0001-Make-the-Makefile-more-cross-compiler-friendly.patch create mode 100644 package/sp-oops-extract/0002-stdint-cleanup.patch create mode 100644 package/sp-oops-extract/Config.in create mode 100644 package/sp-oops-extract/sp-oops-extract.hash create mode 100644 package/sp-oops-extract/sp-oops-extract.mk create mode 100644 package/spi-tools/Config.in create mode 100644 package/spi-tools/spi-tools.hash create mode 100644 package/spi-tools/spi-tools.mk create mode 100644 package/spidev_test/spidev_test.hash create mode 100644 package/squashfs/0001-musl.patch create mode 100644 package/squeezelite/0001-Makefile-allow-passing-CFLAGS-and-LDFLAGS.patch create mode 100644 package/squeezelite/0002-output_alsa-use-mallopt-only-on-glibc.patch create mode 100644 package/squeezelite/Config.in create mode 100644 package/squeezelite/squeezelite.hash create mode 100644 package/squeezelite/squeezelite.mk create mode 100644 package/sredird/0001-termio.patch create mode 100644 package/sredird/sredird.hash create mode 100644 package/strace/0001-arc-metag-nios2-or1k-tile-fix-build.patch delete mode 100644 package/strace/0001-linux-aarch64-add-missing-header.patch create mode 100644 package/stress-ng/Config.in create mode 100644 package/stress-ng/stress-ng.hash create mode 100644 package/stress-ng/stress-ng.mk create mode 100644 package/subversion/0002-disable-macos-specific-features.patch delete mode 100644 package/sudo/0001-musl-fix-missing-header.patch create mode 100644 package/sunxi-tools/sunxi-tools.hash create mode 100644 package/supervisor/supervisor.hash create mode 100644 package/swupdate/Config.in create mode 100644 package/swupdate/swupdate.config create mode 100644 package/swupdate/swupdate.hash create mode 100644 package/swupdate/swupdate.mk create mode 100644 package/syslog-ng/Config.in create mode 100644 package/syslog-ng/S01logging create mode 100644 package/syslog-ng/syslog-ng.conf create mode 100644 package/syslog-ng/syslog-ng.hash create mode 100644 package/syslog-ng/syslog-ng.mk create mode 100644 package/targetcli-fb/target.service delete mode 100644 package/tcpdump/0002-fix-CVE-2014-8767.patch delete mode 100644 package/tcpdump/0003-fix-CVE-2014-8768.patch delete mode 100644 package/tcpdump/0004-fix-CVE-2014-8769.patch delete mode 100644 package/texinfo/texinfo.hash delete mode 100644 package/texinfo/texinfo.mk create mode 100644 package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch create mode 100644 package/tn5250/0002-Allow-building-against-OpenSSL-without-SSLv2_SSLv3.patch create mode 100644 package/torsmo/torsmo.hash create mode 100644 package/tpm-tools/0001-tpm_nvread-include-sys-stat.h-for-open-modes.patch create mode 100644 package/tpm-tools/0002-Makefile.am-make-sure-libintl-is-in-LDFLAGS-when-nee.patch create mode 100644 package/tpm-tools/0002-configure.in-remove-Werror.patch create mode 100644 package/tpm-tools/Config.in create mode 100644 package/tpm-tools/tpm-tools.hash create mode 100644 package/tpm-tools/tpm-tools.mk delete mode 100644 package/trace-cmd/0001-Fix-ptrace-detection.patch create mode 100644 package/transmission/0002-musl-missing-header.patch create mode 100644 package/triggerhappy/triggerhappy.hash create mode 100644 package/trinity/0001-mips-fix-prctl-s.patch delete mode 100644 package/trinity/0001-vt.c-add-missing-include-to-fix-building-with-uClibc.patch create mode 100644 package/trinity/trinity.hash create mode 100644 package/trousers/0001-Remove-inline-for-read_data-and-write_data.patch create mode 100644 package/trousers/0002-Check-if-the-compiler-understands-pie-and-relro-options.patch create mode 100644 package/trousers/Config.in create mode 100644 package/trousers/trousers.hash create mode 100644 package/trousers/trousers.mk rename package/tstools/{001-build-get-along-with-buildroot.patch => 0001-build-get-along-with-buildroot.patch} (100%) create mode 100644 package/tstools/tstools.hash create mode 100644 package/tvheadend/tvheadend.hash delete mode 100644 package/uboot-tools/0003-Fix-musl-build.patch delete mode 100644 package/uboot-tools/0004-tools-use-pkg-config-when-available-to-get-SSL-flags.patch create mode 100644 package/ubus/0001-Install-server-and-client-examples.patch create mode 100644 package/ubus/Config.in create mode 100644 package/ubus/ubus.hash create mode 100644 package/ubus/ubus.mk delete mode 100644 package/uclibc/0.9.33.2/0001-bits-time.h-sync-with-glibc-2.16.patch delete mode 100644 package/uclibc/0.9.33.2/0003-Add-dup3-syscall.patch delete mode 100644 package/uclibc/0.9.33.2/0004-libc-sysdeps-add-__kernel_long-and-__kernel_ulong.patch delete mode 100644 package/uclibc/0.9.33.2/0006-arm-clone-restore-stack-pointer-just-after-return-fr.patch delete mode 100644 package/uclibc/0.9.33.2/0007-arm-clone.S-Add-missing-IT-instruction-for-Thumb2.patch delete mode 100644 package/uclibc/0.9.33.2/0008-arm-move-check-for-BX-to-its-own-header.patch delete mode 100644 package/uclibc/0.9.33.2/0009-mips64-fix-n64-interp.patch delete mode 100644 package/uclibc/0.9.33.2/0010-Rules.mak-fix-breakage-from-603af30d.patch delete mode 100644 package/uclibc/0.9.33.2/0011-libc-add-non-standard-execvpe-function.patch delete mode 100644 package/uclibc/0.9.33.2/0012-libc-stdlib-add-mkostemp-helpers.patch delete mode 100644 package/uclibc/0.9.33.2/0013-eventfd-Implement-eventfd2-and-fix-eventfd.patch delete mode 100644 package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch delete mode 100644 package/uclibc/0.9.33.2/0016-nptl-sh-fix-race-condition-in-lll_wait_tid.patch delete mode 100644 package/uclibc/0.9.33.2/0017-librt-re-add-SIGCANCEL-to-the-list-of-blocked-signal.patch delete mode 100644 package/uclibc/0.9.33.2/0018-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch delete mode 100644 package/uclibc/0.9.33.2/0019-include-elf.h-update-for-ELFOSABI_-changes.patch delete mode 100644 package/uclibc/0.9.33.2/0020-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0022-inet-rpc-fix-authnone_marshal-in-multithreading-cont.patch delete mode 100644 package/uclibc/0.9.33.2/0023-MIPS-Convert-__syscall_error-callers-to-use-a0-for-a.patch delete mode 100644 package/uclibc/0.9.33.2/0024-MIPS-Use-a0-instead-of-v0-for-__syscall_error-argume.patch delete mode 100644 package/uclibc/0.9.33.2/0025-ldso-use-.arm-mode-for-resolver-unconditionally.patch delete mode 100644 package/uclibc/0.9.33.2/0026-make-NPTL-s-getpid-behave-similar-to-the-common-one.patch delete mode 100644 package/uclibc/0.9.33.2/0027-i386-bits-syscalls.h-allow-immediate-values-as-6th-s.patch delete mode 100644 package/uclibc/0.9.33.2/0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch delete mode 100644 package/uclibc/0.9.33.2/0029-inet-rpc-fix-build-in-NPTL-case.patch delete mode 100644 package/uclibc/0.9.33.2/0030-stdio-implement-assignment-allocation-m-character.patch delete mode 100644 package/uclibc/0.9.33.2/0031-mmap-sys_mmap2-do-unsigned-shift-of-offset.patch delete mode 100644 package/uclibc/0.9.33.2/0033-rpmatch-backport-function.patch delete mode 100644 package/uclibc/0.9.33.2/0034-statfs-support-f_frsize.patch delete mode 100644 package/uclibc/0.9.33.2/0035-socket.h-pull-socket_type.h-from-eglibc.patch delete mode 100644 package/uclibc/0.9.33.2/0036-mount.h-update.patch delete mode 100644 package/uclibc/0.9.33.2/0037-buildsys-gen_bits_syscall_h-do-not-leave-undefined-S.patch delete mode 100644 package/uclibc/0.9.33.2/0038-libc-sysdeps-sync-bits-in.h-with-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0039-libc-atexit-reuse-free-slots-at-the-end-of-exit-func.patch delete mode 100644 package/uclibc/0.9.33.2/0040-mman-rename-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch delete mode 100644 package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch delete mode 100644 package/uclibc/0.9.33.2/0042-nice-fix-overflow-checking-in-int_add_no_wrap.patch delete mode 100644 package/uclibc/0.9.33.2/0043-buildsys-Add-missing-SYMBOL_PREFIX-to-symbol-names.patch delete mode 100644 package/uclibc/0.9.33.2/0044-inet-do-not-filter-responses-in-res_query.patch delete mode 100644 package/uclibc/0.9.33.2/0045-Remove-pragma-weak-for-undeclared-symbol.patch delete mode 100644 package/uclibc/0.9.33.2/0046-inet-fix-getting-the-nameserver-from-_res-state-afte.patch delete mode 100644 package/uclibc/0.9.33.2/0047-_vfprintf.c-use-fputws_unlocked-S-F-instead-of-fputw.patch delete mode 100644 package/uclibc/0.9.33.2/0048-Fix-a-problem-with-scanning-wide-chars.patch delete mode 100644 package/uclibc/0.9.33.2/0049-Fix-some-fragileness-in-dlopen-do_dlopen-wrapper-wor.patch delete mode 100644 package/uclibc/0.9.33.2/0050-libdl-fix-dlopen-implementation-from-statically-link.patch delete mode 100644 package/uclibc/0.9.33.2/0051-libubacktrace-fix-backtrace-for-statically-linked-ap.patch delete mode 100644 package/uclibc/0.9.33.2/0052-libubacktrace-fix-build-due-to-some-typos.patch delete mode 100644 package/uclibc/0.9.33.2/0053-libc-elf-explicitly-include-uClibc_page.h-to-make-PA.patch delete mode 100644 package/uclibc/0.9.33.2/0055-Use-new-bits-scheme-for-arch-specific-flag.patch delete mode 100644 package/uclibc/0.9.33.2/0055-siginfo_h-add-a-missing-function-member.patch delete mode 100644 package/uclibc/0.9.33.2/0056-MIPS-set-_NSIG-to-128-not-129.-This-matches-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0056-siginfo_h-__SIGEV_PAD_SIZE-takes-__WORDSIZE-into-account.patch delete mode 100644 package/uclibc/0.9.33.2/0057-bits-waitstatus.h-correctly-interpret-status-0x007f-.patch delete mode 100644 package/uclibc/0.9.33.2/0058-test-tls-fix-build-with-newer-binutils.patch delete mode 100644 package/uclibc/0.9.33.2/0059-test-cater-for-config.patch delete mode 100644 package/uclibc/0.9.33.2/0060-test-Fix-math-c-dependency.patch delete mode 100644 package/uclibc/0.9.33.2/0061-fix-sparc-networking.patch delete mode 100644 package/uclibc/0.9.33.2/0062-ldso-libdl-Also-include-dl-tls.h-for-for-SHARED.patch delete mode 100644 package/uclibc/0.9.33.2/0062-nptl-remove-duplicate-vfork-in-libpthread.patch delete mode 100644 package/uclibc/0.9.33.2/0063-powerpc-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0064-sparc-update-ptrace.h-to-latest-from-glibc.patch delete mode 100644 package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch delete mode 100644 package/uclibc/0.9.33.2/0066-mips-rename-siginfo-_timer-members.patch delete mode 100644 package/uclibc/0.9.33.2/0067-sparc-clone.S-guard-tcb-offsets.h-include-with-RESET_P.patch delete mode 100644 package/uclibc/0.9.33.2/0068-Fix-getopt-implementations-conditional-compilation.patch delete mode 100644 package/uclibc/0.9.33.2/0069-Add-missing-C99-float-ld-wrappers.patch delete mode 100644 package/uclibc/0.9.33.2/0070-libm-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch delete mode 100644 package/uclibc/0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch create mode 100644 package/uclibc/0001-include-netdb.h-Do-not-define-IDN-related-flags.patch create mode 100644 package/uclibc/0002-mips-fix-build-if-threads-are-disabled.patch delete mode 100644 package/uclibc/arc-2015.06/0001-nptl-remove-duplicate-vfork-in-libpthread.patch delete mode 100644 package/uclibc/arc-2015.06/0002-ARCv2-update-memset-so-it-could-be-used-without-doub.patch delete mode 100644 package/uclibc/uClibc-0.9.33.config delete mode 100644 package/uclibc/uClibc-snapshot.config create mode 100644 package/udisks/0001-fix-build-with-newer-glibc-versions.patch create mode 100644 package/uemacs/02-skip-xcase-termios-flag.patch create mode 100644 package/unionfs/0001-Revert-to-old-pre-1.0-meta-directory.patch delete mode 100644 package/unionfs/0001-fuse-no-cxx-needed.patch create mode 100644 package/unrar/Config.in create mode 100644 package/unrar/unrar.hash create mode 100644 package/unrar/unrar.mk create mode 100644 package/unscd/Config.in create mode 100644 package/unscd/S46unscd create mode 100644 package/unscd/nscd.conf create mode 100644 package/unscd/unscd.hash create mode 100644 package/unscd/unscd.mk create mode 100644 package/unzip/0001-Add-a-CMakeFile.txt-to-ease-cross-compilation.patch create mode 100644 package/unzip/Config.in create mode 100644 package/unzip/unzip.hash create mode 100644 package/unzip/unzip.mk delete mode 100644 package/upmpdcli/0001-Add-conditional-check-for-__linux__.patch delete mode 100644 package/usb_modeswitch/0001-rename-abort.patch create mode 100644 package/ushare/0002-ushare-fix-building-with-gcc-5.x.patch delete mode 100644 package/ustr/0001-cross-compile-modifications.patch delete mode 100644 package/util-linux/0002-program-invocation-short-name.patch create mode 100644 package/util-linux/0004-vipw-Remove-pre-ANSI-compiler-support.patch create mode 100644 package/util-linux/0005-build-sys-use-REALTIME_LIBS.patch create mode 100644 package/util-linux/0006-buildsys-fix-static-configuration-and-building.patch create mode 100644 package/util-linux/0007-build-sys-fix-typo.patch create mode 100644 package/v4l2grab/Config.in create mode 100644 package/v4l2grab/v4l2grab.hash create mode 100644 package/v4l2grab/v4l2grab.mk rename package/valgrind/{0003-add-missing-ptrace-getsiginfo-on-powerpc.patch => 0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch} (52%) delete mode 100644 package/valgrind/0002-Fix-configure-for-Linux-kernel-4.0-rc1.patch create mode 100644 package/valgrind/0003-mips-replace-addi-with-addiu.patch create mode 100644 package/valgrind/0004-Fixes-for-musl-libc.patch delete mode 100644 package/valgrind/0004-configure.ac-Generalize-glibc-version-check.patch create mode 100644 package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch create mode 100644 package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch create mode 100644 package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch create mode 100644 package/vboot-utils/Config.in.host create mode 100644 package/vboot-utils/vboot-utils.hash create mode 100644 package/vboot-utils/vboot-utils.mk create mode 100644 package/vnstat/0001-configure.ac-add-option-to-disable-image-output.patch create mode 100644 package/vorbis-tools/0001-oggenc-Fix-large-alloca-on-bad-AIFF-input.patch create mode 100644 package/w_scan/0001-musl.patch create mode 100644 package/webkitgtk24/0002-WTF-Platform.h-use-_ABI64-instead-of-_MIPS_SIM_ABI64.patch create mode 100644 package/webkitgtk24/0003-Pretty-quotes-in-licence-break-Python-stdin.patch create mode 100644 package/whetstone/whetstone.hash delete mode 100644 package/wine/0001-Prevent-call-to-memset-with-a-null-pointer.patch create mode 100644 package/wine/0001-configure-allow-to-override-the-location-of-the-conf.patch delete mode 100644 package/wine/0002-detect-ncursesw.patch delete mode 100644 package/wine/0003-sane-config-fix.patch create mode 100644 package/wipe/0001-musl.patch create mode 100644 package/wireshark/0001-configure-do-not-assume-broken-inet_pton-in-case-of-.patch delete mode 100644 package/wpa_supplicant/0001-P2P-Validate-SSID-element-length-before-copying-it-C.patch create mode 100644 package/wpa_supplicant/0001-fix-readline-libs-ordering.patch create mode 100644 package/wpa_supplicant/0002-WNM-Ignore-Key-Data-in-WNM-Sleep-Mode-Response-frame.patch delete mode 100644 package/wpa_supplicant/0002-WPS-Fix-HTTP-chunked-transfer-encoding-parser.patch delete mode 100644 package/wpa_supplicant/0003-AP-WMM-Fix-integer-underflow-in-WMM-Action-frame-par.patch create mode 100644 package/wpa_supplicant/0003-EAP-pwd-peer-Fix-last-fragment-length-validation.patch delete mode 100644 package/wpa_supplicant/0004-EAP-pwd-fixes.patch create mode 100644 package/wpa_supplicant/0004-EAP-pwd-server-Fix-last-fragment-length-validation.patch create mode 100644 package/wpa_supplicant/0005-EAP-pwd-peer-Fix-error-path-for-unexpected-Confirm-m.patch create mode 100644 package/wpa_supplicant/0006-fix-libwpa_client.patch create mode 100644 package/x11r7/xapp_sessreg/0001-Pass-P-to-the-preprocessor-when-generating-filenames.patch create mode 100644 package/x11r7/xdriver_xf86-video-fbturbo/0001-sunxi_x_g2d-drop-unused-dri2-include.patch create mode 100644 package/x11r7/xdriver_xf86-video-fbturbo/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.mk create mode 100644 package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.hash delete mode 100644 package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.hash create mode 100644 package/x11r7/xdriver_xf86-video-nouveau/Config.in create mode 100644 package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash create mode 100644 package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.mk create mode 100644 package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.hash create mode 100644 package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch create mode 100644 package/x265/Config.in create mode 100644 package/x265/x265.hash create mode 100644 package/x265/x265.mk create mode 100644 package/xdotool/Config.in create mode 100644 package/xdotool/xdotool.hash create mode 100644 package/xdotool/xdotool.mk create mode 100644 package/xfsprogs/0001-mdrestore-do-not-do-dynamic-linking-of-libtool-libra.patch delete mode 100644 package/xfsprogs/0001-xfsprogs-replaces-static-with-static-libtool-libs.patch create mode 100644 package/xfsprogs/0002-no-crc32-checks.patch create mode 100644 package/xfsprogs/0003-xfsprogs-don-t-use-CFLAGS-with-BUILD_CC.patch create mode 100644 package/xl2tp/0002-musl.patch rename package/{x11r7 => }/xutil_util-macros/Config.in (100%) rename package/{x11r7 => }/xutil_util-macros/xutil_util-macros.hash (100%) rename package/{x11r7 => }/xutil_util-macros/xutil_util-macros.mk (100%) create mode 100644 package/xxhash/Config.in create mode 100644 package/xxhash/xxhash.mk create mode 100644 package/yad/Config.in create mode 100644 package/yad/yad.hash create mode 100644 package/yad/yad.mk create mode 100644 package/yajl/yajl.hash create mode 100644 package/zbar/0001-Fix-autoreconf-by-reducing-the-warning-error-checkin.patch create mode 100644 package/zbar/0002-Fix-function-protoype-to-be-compatible-with-recent-l.patch create mode 100644 package/zbar/0003-Disable-building-documentation.patch create mode 100644 package/zbar/0004-Wrap-logical-not-operations-into-parentheses.patch create mode 100644 package/zbar/Config.in create mode 100644 package/zbar/zbar.hash create mode 100644 package/zbar/zbar.mk create mode 100644 package/zeromq/0003-Problem-return-code-of-sodium_init-is-not-checked.patch delete mode 100644 package/zic/0001-fix-dependencies.patch rename package/{infozip => zip}/0001-configure-Remove-Check-C-compiler-type-optimization-.patch (100%) rename package/{infozip => zip}/0002-configure-Don-t-use-host-CPP.patch (100%) rename package/{infozip => zip}/0003-Makefile-Use-CFLAGS-from-command-line.patch (100%) rename package/{infozip => zip}/0004-configure-use-LDFLAGS-from-command-line.patch (100%) rename package/{infozip => zip}/0005-unix-configure-remove-GID-UID-size-check.patch (100%) rename package/{infozip => zip}/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch (100%) rename package/{infozip => zip}/Config.in (88%) rename package/{infozip/infozip.hash => zip/zip.hash} (100%) rename package/{infozip/infozip.mk => zip/zip.mk} (66%) create mode 100644 package/zmqpp/0002-Allow-building-shared-or-static-library-only.patch create mode 100644 package/zmqpp/0003-Install-static-library-for-static-builds.patch create mode 100644 package/zmqpp/zmqpp.hash create mode 100644 package/znc/0001-Add-time.h-includes-where-appropiate.patch delete mode 100644 package/znc/0001-time.patch create mode 100644 package/znc/0002-csocket-timeh.patch create mode 100644 package/znc/znc.hash create mode 100644 package/zxing-cpp/Config.in create mode 100644 package/zxing-cpp/zxing-cpp.hash create mode 100644 package/zxing-cpp/zxing-cpp.mk delete mode 100644 package/zxing/0001-makefile.patch delete mode 100644 package/zxing/Config.in delete mode 100644 package/zxing/zxing.mk create mode 100644 support/misc/Vagrantfile delete mode 100755 support/scripts/build-ext3-img create mode 100755 support/scripts/check-host-rpath create mode 100755 support/scripts/size-stats create mode 100755 support/scripts/size-stats-compare rename system/skeleton/{bin => dev/shm}/.empty (100%) delete mode 100644 system/skeleton/etc/issue delete mode 100644 system/skeleton/etc/ld.so.conf.d/.empty create mode 100755 system/skeleton/etc/network/if-pre-up.d/wait_iface create mode 100644 system/skeleton/etc/profile.d/umask.sh delete mode 100644 system/skeleton/home/ftp/.empty delete mode 100644 system/skeleton/lib/.empty delete mode 100644 system/skeleton/root/.bash_history delete mode 100644 system/skeleton/root/.bash_logout delete mode 100644 system/skeleton/root/.bash_profile delete mode 100644 system/skeleton/sbin/.empty delete mode 100644 system/system.mk rename toolchain/{toolchain-external/ext-toolchain-wrapper.c => toolchain-wrapper.c} (76%) create mode 100644 toolchain/toolchain-wrapper.mk diff --git a/Makefile b/Makefile index eed41efd95c..e16b5cf3194 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ # # Copyright (C) 1999-2005 by Erik Andersen # Copyright (C) 2006-2014 by the Buildroot developers -# Copyright (C) 2014 by the Buildroot developers +# Copyright (C) 2014-2016 by the Buildroot developers # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -41,7 +41,7 @@ else # umask all: # Set and export the version string -export BR2_VERSION := 2015.08-rc1 +export BR2_VERSION := 2016.02 # Save running make version since it's clobbered by the make package RUNNING_MAKE_VERSION := $(MAKE_VERSION) @@ -52,16 +52,6 @@ ifneq ($(firstword $(sort $(RUNNING_MAKE_VERSION) $(MIN_MAKE_VERSION))),$(MIN_MA $(error You have make '$(RUNNING_MAKE_VERSION)' installed. GNU make >= $(MIN_MAKE_VERSION) is required) endif -export HOSTARCH := $(shell uname -m | \ - sed -e s/i.86/x86/ \ - -e s/sun4u/sparc64/ \ - -e s/arm.*/arm/ \ - -e s/sa110/arm/ \ - -e s/ppc64/powerpc64/ \ - -e s/ppc/powerpc/ \ - -e s/macppc/powerpc/\ - -e s/sh.*/sh/) - # Parallel execution of this Makefile is disabled because it changes # the packages building order, that can be a problem for two reasons: # - If a package has an unspecified optional dependency and that @@ -104,7 +94,7 @@ noconfig_targets := menuconfig nconfig gconfig xconfig config oldconfig randconf # something else than one of the nobuild_targets. nobuild_targets := source source-check \ legal-info external-deps _external-deps \ - clean distclean + clean distclean help ifeq ($(MAKECMDGOALS),) BR_BUILDING = y else ifneq ($(filter-out $(nobuild_targets),$(MAKECMDGOALS)),) @@ -183,7 +173,9 @@ endif ifneq ($(BR2_DL_DIR),) DL_DIR := $(BR2_DL_DIR) endif - +ifneq ($(BR2_CCACHE_DIR),) +BR_CACHE_DIR := $(BR2_CCACHE_DIR) +endif # Need that early, before we scan packages # Avoids doing the $(or...) everytime @@ -226,14 +218,12 @@ ifndef KBUILD_VERBOSE endif ifeq ($(KBUILD_VERBOSE),1) - quiet = Q = ifndef VERBOSE VERBOSE = 1 endif export VERBOSE else - quiet = quiet_ Q = @ endif @@ -245,7 +235,7 @@ SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ # kconfig uses CONFIG_SHELL CONFIG_SHELL := $(SHELL) -export SHELL CONFIG_SHELL quiet Q KBUILD_VERBOSE +export SHELL CONFIG_SHELL Q KBUILD_VERBOSE ifndef HOSTAR HOSTAR := ar @@ -293,6 +283,40 @@ HOSTRANLIB := $(shell which $(HOSTRANLIB) || type -p $(HOSTRANLIB) || echo ranli export HOSTAR HOSTAS HOSTCC HOSTCXX HOSTLD export HOSTCC_NOCCACHE HOSTCXX_NOCCACHE +# Determine the userland we are running on. +# +# Note that, despite its name, we are not interested in the actual +# architecture name. This is mostly used to determine whether some +# of the binary tools (e.g. pre-built external toolchains) can run +# on the current host. So we need to know if the userland we're +# running on can actually run those toolchains. +# +# For example, a 64-bit prebuilt toolchain will not run on a 64-bit +# kernel if the userland is 32-bit (e.g. in a chroot for example). +# +# So, we extract the first part of the tuple the host gcc was +# configured to generate code for; we assume this is our userland. +# +export HOSTARCH := $(shell LC_ALL=C $(HOSTCC_NOCCACHE) -v 2>&1 | \ + sed -e '/^Target: \([^-]*\).*/!d' \ + -e 's//\1/' \ + -e 's/i.86/x86/' \ + -e 's/sun4u/sparc64/' \ + -e 's/arm.*/arm/' \ + -e 's/sa110/arm/' \ + -e 's/ppc64/powerpc64/' \ + -e 's/ppc/powerpc/' \ + -e 's/macppc/powerpc/' \ + -e 's/sh.*/sh/' ) + +HOSTCC_VERSION := $(shell $(HOSTCC_NOCCACHE) --version | \ + sed -n -r 's/^.* ([0-9]*)\.([0-9]*)\.([0-9]*)[ ]*.*/\1 \2/p') + +# For gcc >= 5.x, we only need the major version. +ifneq ($(firstword $(HOSTCC_VERSION)),4) +HOSTCC_VERSION := $(firstword $(HOSTCC_VERSION)) +endif + # Make sure pkg-config doesn't look outside the buildroot tree HOST_PKG_CONFIG_PATH := $(PKG_CONFIG_PATH) unexport PKG_CONFIG_PATH @@ -321,6 +345,7 @@ unexport ARCH unexport CC unexport CXX unexport CPP +unexport RANLIB unexport CFLAGS unexport CXXFLAGS unexport GREP_OPTIONS @@ -334,6 +359,7 @@ unexport O GNU_HOST_NAME := $(shell support/gnuconfig/config.guess) PACKAGES := +PACKAGES_ALL := # silent mode requested? QUIET := $(if $(findstring s,$(filter-out --%,$(MAKEFLAGS))),-q) @@ -371,10 +397,12 @@ TARGET_DIR_WARNING_FILE = $(TARGET_DIR)/THIS_IS_NOT_YOUR_ROOT_FILESYSTEM ifeq ($(BR2_CCACHE),y) CCACHE := $(HOST_DIR)/usr/bin/ccache -BR_CACHE_DIR = $(call qstrip,$(BR2_CCACHE_DIR)) +BR_CACHE_DIR ?= $(call qstrip,$(BR2_CCACHE_DIR)) export BR_CACHE_DIR HOSTCC := $(CCACHE) $(HOSTCC) HOSTCXX := $(CCACHE) $(HOSTCXX) +else +export BR_NO_CCACHE endif # Scripts in support/ or post-build scripts may need to reference @@ -422,6 +450,34 @@ include fs/common.mk include $(BR2_EXTERNAL)/external.mk +# Now we are sure we have all the packages scanned and defined. We now +# check for each package in the list of enabled packages, that all its +# dependencies are indeed enabled. +# +# Only trigger the check for default builds. If the user forces building +# a package, even if not enabled in the configuration, we want to accept +# it. +# +ifeq ($(MAKECMDGOALS),) + +define CHECK_ONE_DEPENDENCY +ifeq ($$($(2)_TYPE),target) +ifeq ($$($(2)_IS_VIRTUAL),) +ifneq ($$($$($(2)_KCONFIG_VAR)),y) +$$(error $$($(2)_NAME) is in the dependency chain of $$($(1)_NAME) that \ +has added it to its _DEPENDENCIES variable without selecting it or \ +depending on it from Config.in) +endif +endif +endif +endef + +$(foreach pkg,$(call UPPERCASE,$(PACKAGES)),\ + $(foreach dep,$(call UPPERCASE,$($(pkg)_FINAL_ALL_DEPENDENCIES)),\ + $(eval $(call CHECK_ONE_DEPENDENCY,$(pkg),$(dep))$(sep)))) + +endif + dirs: $(BUILD_DIR) $(STAGING_DIR) $(TARGET_DIR) \ $(HOST_DIR) $(BINARIES_DIR) @@ -445,22 +501,9 @@ world: target-post-image $(BUILD_DIR) $(TARGET_DIR) $(HOST_DIR) $(BINARIES_DIR) $(LEGAL_INFO_DIR) $(REDIST_SOURCES_DIR_TARGET) $(REDIST_SOURCES_DIR_HOST): @mkdir -p $@ -# We make a symlink lib32->lib or lib64->lib as appropriate -# MIPS64/n32 requires lib32 even though it's a 64-bit arch. -ifeq ($(BR2_ARCH_IS_64)$(BR2_MIPS_NABI32),y) -LIB_SYMLINK = lib64 -else -LIB_SYMLINK = lib32 -endif - +# Populating the staging with the base directories is handled by the skeleton package $(STAGING_DIR): - @mkdir -p $(STAGING_DIR)/bin - @mkdir -p $(STAGING_DIR)/lib - @ln -snf lib $(STAGING_DIR)/$(LIB_SYMLINK) - @mkdir -p $(STAGING_DIR)/usr/lib - @ln -snf lib $(STAGING_DIR)/usr/$(LIB_SYMLINK) - @mkdir -p $(STAGING_DIR)/usr/include - @mkdir -p $(STAGING_DIR)/usr/bin + @mkdir -p $(STAGING_DIR) @ln -snf $(STAGING_DIR) $(BASE_DIR)/staging RSYNC_VCS_EXCLUSIONS = \ @@ -475,11 +518,12 @@ STRIP_FIND_CMD += -type f \( -perm /111 -o -name '*.so*' \) # file exclusions: # - libpthread.so: a non-stripped libpthread shared library is needed for # proper debugging of pthread programs using gdb. +# - ld.so: a non-stripped dynamic linker library is needed for valgrind # - kernel modules (*.ko): do not function properly when stripped like normal # applications and libraries. Normally kernel modules are already excluded # by the executable permission check above, so the explicit exclusion is only # done for kernel modules with incorrect permissions. -STRIP_FIND_CMD += -not \( $(call findfileclauses,libpthread*.so* *.ko $(call qstrip,$(BR2_STRIP_EXCLUDE_FILES))) \) -print0 +STRIP_FIND_CMD += -not \( $(call findfileclauses,libpthread*.so* ld-*.so* *.ko $(call qstrip,$(BR2_STRIP_EXCLUDE_FILES))) \) -print0 ifeq ($(BR2_ECLIPSE_REGISTER),y) define TOOLCHAIN_ECLIPSE_REGISTER @@ -563,8 +607,8 @@ target-finalize: $(PACKAGES) $(TARGET_DIR)/usr/lib/pkgconfig $(TARGET_DIR)/usr/share/pkgconfig \ $(TARGET_DIR)/usr/lib/cmake $(TARGET_DIR)/usr/share/cmake find $(TARGET_DIR)/usr/{lib,share}/ -name '*.cmake' -print0 | xargs -0 rm -f - find $(TARGET_DIR)/lib \( -name '*.a' -o -name '*.la' \) -print0 | xargs -0 rm -f - find $(TARGET_DIR)/usr/lib \( -name '*.a' -o -name '*.la' \) -print0 | xargs -0 rm -f + find $(TARGET_DIR)/lib $(TARGET_DIR)/usr/lib $(TARGET_DIR)/usr/libexec \ + \( -name '*.a' -o -name '*.la' \) -print0 | xargs -0 rm -f ifneq ($(BR2_PACKAGE_GDB),y) rm -rf $(TARGET_DIR)/usr/share/gdb endif @@ -592,19 +636,15 @@ ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) xargs -r $(STRIPCMD) $(STRIP_STRIP_DEBUG) endif +# Valgrind needs ld.so with enough information, so only strip +# debugging symbols. + find $(TARGET_DIR)/lib -type f -name 'ld-*.so*' | \ + xargs -r $(STRIPCMD) $(STRIP_STRIP_DEBUG) + test -f $(TARGET_DIR)/etc/ld.so.conf && \ + { echo "ERROR: we shouldn't have a /etc/ld.so.conf file"; exit 1; } || true + test -d $(TARGET_DIR)/etc/ld.so.conf.d && \ + { echo "ERROR: we shouldn't have a /etc/ld.so.conf.d directory"; exit 1; } || true mkdir -p $(TARGET_DIR)/etc - # Mandatory configuration file and auxiliary cache directory - # for recent versions of ldconfig - touch $(TARGET_DIR)/etc/ld.so.conf - mkdir -p $(TARGET_DIR)/var/cache/ldconfig - if [ -x "$(TARGET_CROSS)ldconfig" ]; \ - then \ - $(TARGET_CROSS)ldconfig -r $(TARGET_DIR) \ - -f $(TARGET_DIR)/etc/ld.so.conf; \ - else \ - /sbin/ldconfig -r $(TARGET_DIR) \ - -f $(TARGET_DIR)/etc/ld.so.conf; \ - fi ( \ echo "NAME=Buildroot"; \ echo "VERSION=$(BR2_VERSION_FULL)"; \ @@ -647,7 +687,6 @@ legal-info-prepare: $(LEGAL_INFO_DIR) @$(call legal-manifest,PACKAGE,VERSION,LICENSE,LICENSE FILES,SOURCE ARCHIVE,SOURCE SITE,HOST) @$(call legal-manifest,buildroot,$(BR2_VERSION_FULL),GPLv2+,COPYING,not saved,not saved,HOST) @$(call legal-warning,the Buildroot source code has not been saved) - @$(call legal-warning,the toolchain has not been saved) @cp $(BR2_CONFIG) $(LEGAL_INFO_DIR)/buildroot.config legal-info: dirs legal-info-clean legal-info-prepare $(foreach p,$(PACKAGES),$(p)-all-legal-info) \ @@ -682,8 +721,21 @@ graph-depends: graph-depends-requirements @$(INSTALL) -d $(GRAPHS_DIR) @cd "$(CONFIG_DIR)"; \ $(TOPDIR)/support/scripts/graph-depends $(BR2_GRAPH_DEPS_OPTS) \ - |tee $(GRAPHS_DIR)/$(@).dot \ - |dot $(BR2_GRAPH_DOT_OPTS) -T$(BR_GRAPH_OUT) -o $(GRAPHS_DIR)/$(@).$(BR_GRAPH_OUT) + -o $(GRAPHS_DIR)/$(@).dot + dot $(BR2_GRAPH_DOT_OPTS) -T$(BR_GRAPH_OUT) \ + -o $(GRAPHS_DIR)/$(@).$(BR_GRAPH_OUT) \ + $(GRAPHS_DIR)/$(@).dot + +graph-size: + $(Q)mkdir -p $(GRAPHS_DIR) + $(Q)$(TOPDIR)/support/scripts/size-stats --builddir $(BASE_DIR) \ + --graph $(GRAPHS_DIR)/graph-size.$(BR_GRAPH_OUT) \ + --file-size-csv $(GRAPHS_DIR)/file-size-stats.csv \ + --package-size-csv $(GRAPHS_DIR)/package-size-stats.csv + +check-dependencies: + @cd "$(CONFIG_DIR)"; \ + $(TOPDIR)/support/scripts/graph-depends -C else # ifeq ($(BR2_HAVE_DOT_CONFIG),y) @@ -713,6 +765,7 @@ COMMON_CONFIG_ENV = \ KCONFIG_TRISTATE=$(BUILD_DIR)/buildroot-config/tristate.config \ BR2_CONFIG=$(BR2_CONFIG) \ BR2_EXTERNAL=$(BR2_EXTERNAL) \ + HOST_GCC_VERSION="$(HOSTCC_VERSION)" \ SKIP_LEGACY= xconfig: $(BUILD_DIR)/buildroot-config/qconf outputmakefile @@ -814,10 +867,13 @@ ifeq ($(NEED_WRAPPER),y) $(Q)$(TOPDIR)/support/scripts/mkmakefile $(TOPDIR) $(O) endif -# printvars prints all the variables currently defined in our Makefiles +# printvars prints all the variables currently defined in our +# Makefiles. Alternatively, if a non-empty VARS variable is passed, +# only the variables matching the make pattern passed in VARS are +# displayed. printvars: @$(foreach V, \ - $(sort $(.VARIABLES)), \ + $(sort $(if $(VARS),$(filter $(VARS),$(.VARIABLES)),$(.VARIABLES))), \ $(if $(filter-out environment% default automatic, \ $(origin $V)), \ $(info $V=$($V) ($(value $V))))) @@ -835,7 +891,7 @@ ifeq ($(O),output) rm -rf $(O) endif rm -rf $(BR2_CONFIG) $(CONFIG_DIR)/.config.old $(CONFIG_DIR)/..config.tmp \ - $(CONFIG_DIR)/.auto.deps + $(CONFIG_DIR)/.auto.deps $(BR2_EXTERNAL_FILE) help: @echo 'Cleaning:' @@ -876,7 +932,6 @@ help: @echo ' -dirclean - Remove build directory' @echo ' -reconfigure - Restart the build from the configure step' @echo ' -rebuild - Restart the build from the build step' - @echo ' -legal-info - Generate license information for ' ifeq ($(BR2_PACKAGE_BUSYBOX),y) @echo ' busybox-menuconfig - Run BusyBox menuconfig' endif @@ -903,6 +958,7 @@ endif @echo ' manual-epub - build manual in ePub' @echo ' graph-build - generate graphs of the build times' @echo ' graph-depends - generate graph of the dependency tree' + @echo ' graph-size - generate stats of the filesystem size' @echo ' list-defconfigs - list all defconfigs (pre-configured minimal systems)' @echo @echo 'Miscellaneous:' @@ -946,6 +1002,9 @@ release: print-version: @echo $(BR2_VERSION_FULL) +#include docs/manual/manual.mk +#-include $(BR2_EXTERNAL)/docs/*/*.mk + .PHONY: $(noconfig_targets) endif #umask diff --git a/arch/Config.in b/arch/Config.in index 875f4121a29..401bd28e86e 100644 --- a/arch/Config.in +++ b/arch/Config.in @@ -217,6 +217,16 @@ config BR2_sparc http://www.oracle.com/sun http://en.wikipedia.org/wiki/Sparc +config BR2_sparc64 + bool "SPARC64" + select BR2_ARCH_IS_64 + select BR2_ARCH_HAS_MMU_MANDATORY + help + SPARC (from Scalable Processor Architecture) is a RISC instruction + set architecture (ISA) developed by Sun Microsystems. + http://www.oracle.com/sun + http://en.wikipedia.org/wiki/Sparc + config BR2_x86_64 bool "x86_64" select BR2_ARCH_IS_64 @@ -274,10 +284,6 @@ config BR2_GCC_TARGET_FLOAT_ABI config BR2_GCC_TARGET_MODE string -# If the architecture has atomic operations, select this: -config BR2_ARCH_HAS_ATOMICS - bool - # Must be selected by binary formats that support shared libraries. config BR2_BINFMT_SUPPORTS_SHARED bool @@ -388,7 +394,7 @@ if BR2_sh || BR2_sh64 source "arch/Config.in.sh" endif -if BR2_sparc +if BR2_sparc || BR2_sparc64 source "arch/Config.in.sparc" endif diff --git a/arch/Config.in.aarch64 b/arch/Config.in.aarch64 index 325bcccda26..34cd409a592 100644 --- a/arch/Config.in.aarch64 +++ b/arch/Config.in.aarch64 @@ -5,6 +5,3 @@ config BR2_ARCH config BR2_ENDIAN default "LITTLE" if BR2_aarch64 default "BIG" if BR2_aarch64_be - -config BR2_ARCH_HAS_ATOMICS - default y diff --git a/arch/Config.in.arc b/arch/Config.in.arc index 7e0ad08425c..7d341f31366 100644 --- a/arch/Config.in.arc +++ b/arch/Config.in.arc @@ -21,9 +21,6 @@ config BR2_ARC_ATOMIC_EXT bool "Atomic extension (LLOCK/SCOND instructions)" default y if BR2_arc770d || BR2_archs38 -config BR2_ARCH_HAS_ATOMICS - default y if BR2_ARC_ATOMIC_EXT - config BR2_ARCH default "arc" if BR2_arcle default "arceb" if BR2_arceb diff --git a/arch/Config.in.arm b/arch/Config.in.arm index 9aa23a3d8d7..2b34f42850c 100644 --- a/arch/Config.in.arm +++ b/arch/Config.in.arm @@ -78,6 +78,12 @@ config BR2_arm926t select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV5 select BR2_ARCH_HAS_MMU_OPTIONAL +config BR2_arm1136j_s + bool "arm1136j-s" + select BR2_ARM_CPU_HAS_ARM + select BR2_ARM_CPU_HAS_THUMB + select BR2_ARM_CPU_ARMV6 + select BR2_ARCH_HAS_MMU_OPTIONAL config BR2_arm1136jf_s bool "arm1136jf-s" select BR2_ARM_CPU_HAS_ARM @@ -98,6 +104,13 @@ config BR2_arm1176jzf_s select BR2_ARM_CPU_HAS_THUMB select BR2_ARM_CPU_ARMV6 select BR2_ARCH_HAS_MMU_OPTIONAL +config BR2_arm11mpcore + bool "mpcore" + select BR2_ARM_CPU_HAS_ARM + select BR2_ARM_CPU_MAYBE_HAS_VFPV2 + select BR2_ARM_CPU_HAS_THUMB + select BR2_ARM_CPU_ARMV6 + select BR2_ARCH_HAS_MMU_OPTIONAL config BR2_cortex_a5 bool "cortex-A5" select BR2_ARM_CPU_HAS_ARM @@ -179,9 +192,30 @@ config BR2_iwmmxt select BR2_ARCH_HAS_MMU_OPTIONAL endchoice +config BR2_ARM_ENABLE_NEON + bool "Enable NEON SIMD extension support" + depends on BR2_ARM_CPU_MAYBE_HAS_NEON + select BR2_ARM_CPU_HAS_NEON + help + For some CPU cores, the NEON SIMD extension is optional. + Select this option if you are certain your particular + implementation has NEON support and you want to use it. + +config BR2_ARM_ENABLE_VFP + bool "Enable VFP extension support" + depends on BR2_ARM_CPU_MAYBE_HAS_VFPV2 + select BR2_ARM_CPU_HAS_VFPV4 if BR2_ARM_CPU_MAYBE_HAS_VFPV4 + select BR2_ARM_CPU_HAS_VFPV3 if BR2_ARM_CPU_MAYBE_HAS_VFPV3 + select BR2_ARM_CPU_HAS_VFPV2 if BR2_ARM_CPU_MAYBE_HAS_VFPV2 + help + For some CPU cores, the VFP extension is optional. Select + this option if you are certain your particular + implementation has VFP support and you want to use it. + choice prompt "Target ABI" depends on BR2_arm || BR2_armeb + default BR2_ARM_EABIHF if BR2_ARM_CPU_HAS_VFPV2 default BR2_ARM_EABI help Application Binary Interface to use. The Application Binary @@ -215,7 +249,7 @@ config BR2_ARM_EABI config BR2_ARM_EABIHF bool "EABIhf" - depends on BR2_ARM_CPU_MAYBE_HAS_VFPV2 || BR2_ARM_CPU_HAS_VFPV2 + depends on BR2_ARM_CPU_HAS_VFPV2 help The EABIhf is an extension of EABI which supports the 'hard' floating point model. This model uses the floating point @@ -233,15 +267,6 @@ config BR2_ARM_EABIHF endchoice -config BR2_ARM_ENABLE_NEON - bool "Enable NEON SIMD extension support" - depends on BR2_ARM_CPU_MAYBE_HAS_NEON - select BR2_ARM_CPU_HAS_NEON - help - For some CPU cores, the NEON SIMD extension is optional. - Select this option if you are certain your particular - implementation has NEON support and you want to use it. - choice prompt "Floating point strategy" depends on BR2_ARM_EABI || BR2_ARM_EABIHF @@ -262,7 +287,7 @@ config BR2_ARM_SOFT_FLOAT config BR2_ARM_FPU_VFPV2 bool "VFPv2" - depends on BR2_ARM_CPU_HAS_VFPV2 || BR2_ARM_CPU_MAYBE_HAS_VFPV2 + depends on BR2_ARM_CPU_HAS_VFPV2 help This option allows to use the VFPv2 floating point unit, as available in some ARMv5 processors (ARM926EJ-S) and some @@ -275,7 +300,7 @@ config BR2_ARM_FPU_VFPV2 config BR2_ARM_FPU_VFPV3 bool "VFPv3" - depends on BR2_ARM_CPU_HAS_VFPV3 || BR2_ARM_CPU_MAYBE_HAS_VFPV3 + depends on BR2_ARM_CPU_HAS_VFPV3 help This option allows to use the VFPv3 floating point unit, as available in some ARMv7 processors (Cortex-A{8, 9}). This @@ -291,7 +316,7 @@ config BR2_ARM_FPU_VFPV3 config BR2_ARM_FPU_VFPV3D16 bool "VFPv3-D16" - depends on BR2_ARM_CPU_HAS_VFPV3 || BR2_ARM_CPU_MAYBE_HAS_VFPV3 + depends on BR2_ARM_CPU_HAS_VFPV3 help This option allows to use the VFPv3 floating point unit, as available in some ARMv7 processors (Cortex-A{8, 9}). This @@ -306,7 +331,7 @@ config BR2_ARM_FPU_VFPV3D16 config BR2_ARM_FPU_VFPV4 bool "VFPv4" - depends on BR2_ARM_CPU_HAS_VFPV4 || BR2_ARM_CPU_MAYBE_HAS_VFPV4 + depends on BR2_ARM_CPU_HAS_VFPV4 help This option allows to use the VFPv4 floating point unit, as available in some ARMv7 processors (Cortex-A{5, 7, 12, @@ -321,7 +346,7 @@ config BR2_ARM_FPU_VFPV4 config BR2_ARM_FPU_VFPV4D16 bool "VFPv4-D16" - depends on BR2_ARM_CPU_HAS_VFPV4 || BR2_ARM_CPU_MAYBE_HAS_VFPV4 + depends on BR2_ARM_CPU_HAS_VFPV4 help This option allows to use the VFPv4 floating point unit, as available in some ARMv7 processors (Cortex-A{5, 7, 12, @@ -346,7 +371,7 @@ config BR2_ARM_FPU_NEON config BR2_ARM_FPU_NEON_VFPV4 bool "NEON/VFPv4" - depends on BR2_ARM_CPU_HAS_VFPV4 || BR2_ARM_CPU_MAYBE_HAS_VFPV4 + depends on BR2_ARM_CPU_HAS_VFPV4 depends on BR2_ARM_CPU_HAS_NEON help This option allows to use both the VFPv4 and the NEON SIMD @@ -370,12 +395,18 @@ config BR2_ARM_INSTRUCTIONS_ARM config BR2_ARM_INSTRUCTIONS_THUMB bool "Thumb" depends on BR2_ARM_CPU_HAS_THUMB + # Thumb-1 and VFP are not compatible + depends on BR2_ARM_SOFT_FLOAT help This option instructions the compiler to generate Thumb instructions, which allows to mix 16 bits instructions and 32 bits instructions. This generally provides a much smaller compiled binary size. +comment "Thumb1 is not compatible with VFP" + depends on BR2_ARM_CPU_HAS_THUMB + depends on !BR2_ARM_SOFT_FLOAT + config BR2_ARM_INSTRUCTIONS_THUMB2 bool "Thumb2" depends on BR2_ARM_CPU_HAS_THUMB2 @@ -395,9 +426,6 @@ config BR2_ENDIAN default "LITTLE" if BR2_arm default "BIG" if BR2_armeb -config BR2_ARCH_HAS_ATOMICS - default y - config BR2_GCC_TARGET_CPU default "arm920t" if BR2_arm920t default "arm922t" if BR2_arm922t @@ -406,6 +434,8 @@ config BR2_GCC_TARGET_CPU default "arm1136jf-s" if BR2_arm1136jf_s default "arm1176jz-s" if BR2_arm1176jz_s default "arm1176jzf-s" if BR2_arm1176jzf_s + default "mpcore" if BR2_arm11mpcore && BR2_ARM_CPU_HAS_VFPV2 + default "mpcorenovfp" if BR2_arm11mpcore default "cortex-a5" if BR2_cortex_a5 default "cortex-a7" if BR2_cortex_a7 default "cortex-a8" if BR2_cortex_a8 diff --git a/arch/Config.in.bfin b/arch/Config.in.bfin index 0783969261a..415fc890d88 100644 --- a/arch/Config.in.bfin +++ b/arch/Config.in.bfin @@ -68,9 +68,6 @@ config BR2_ARCH config BR2_ENDIAN default "LITTLE" -config BR2_ARCH_HAS_ATOMICS - default y - config BR2_GCC_TARGET_CPU default bf606 if BR2_bf606 default bf607 if BR2_bf607 diff --git a/arch/Config.in.m68k b/arch/Config.in.m68k index 6b868a1676f..f40f97c43e8 100644 --- a/arch/Config.in.m68k +++ b/arch/Config.in.m68k @@ -4,9 +4,6 @@ config BR2_ARCH config BR2_ENDIAN default "BIG" -config BR2_ARCH_HAS_ATOMICS - default y - config BR2_GCC_TARGET_ARCH default "68000" if BR2_m68k_68000 default "68010" if BR2_m68k_68010 diff --git a/arch/Config.in.microblaze b/arch/Config.in.microblaze index 7c21dfca8c9..2d4c1fec439 100644 --- a/arch/Config.in.microblaze +++ b/arch/Config.in.microblaze @@ -9,6 +9,3 @@ config BR2_ENDIAN config BR2_microblaze bool default y if BR2_microblazeel || BR2_microblazebe - -config BR2_ARCH_HAS_ATOMICS - default y diff --git a/arch/Config.in.mips b/arch/Config.in.mips index 7630503ed26..fda1a1d7e7d 100644 --- a/arch/Config.in.mips +++ b/arch/Config.in.mips @@ -6,8 +6,8 @@ choice help Specific CPU variant to use - 64bit cabable: 3, 4, 64, 64r2 - non-64bit capable: 1, 2, 32, 32r2 + 64bit cabable: 64, 64r2, 64r6 + non-64bit capable: 32, 32r2, 32r6 config BR2_mips_32 bool "mips 32" @@ -15,12 +15,18 @@ config BR2_mips_32 config BR2_mips_32r2 bool "mips 32r2" depends on !BR2_ARCH_IS_64 +config BR2_mips_32r6 + bool "mips 32r6" + depends on !BR2_ARCH_IS_64 config BR2_mips_64 bool "mips 64" depends on BR2_ARCH_IS_64 config BR2_mips_64r2 bool "mips 64r2" depends on BR2_ARCH_IS_64 +config BR2_mips_64r6 + bool "mips 64r6" + depends on BR2_ARCH_IS_64 endchoice @@ -61,18 +67,13 @@ config BR2_ENDIAN default "LITTLE" if BR2_mipsel || BR2_mips64el default "BIG" if BR2_mips || BR2_mips64 -config BR2_ARCH_HAS_ATOMICS - default y - config BR2_GCC_TARGET_ARCH - default "mips1" if BR2_mips_1 - default "mips2" if BR2_mips_2 - default "mips3" if BR2_mips_3 - default "mips4" if BR2_mips_4 default "mips32" if BR2_mips_32 default "mips32r2" if BR2_mips_32r2 + default "mips32r6" if BR2_mips_32r6 default "mips64" if BR2_mips_64 default "mips64r2" if BR2_mips_64r2 + default "mips64r6" if BR2_mips_64r6 config BR2_MIPS_OABI32 bool diff --git a/arch/Config.in.nios2 b/arch/Config.in.nios2 index 7807769cfab..ed638981aaa 100644 --- a/arch/Config.in.nios2 +++ b/arch/Config.in.nios2 @@ -3,6 +3,3 @@ config BR2_ARCH config BR2_ENDIAN default "LITTLE" - -config BR2_ARCH_HAS_ATOMICS - default y diff --git a/arch/Config.in.powerpc b/arch/Config.in.powerpc index 95bcaeefe6e..09ac794d61b 100644 --- a/arch/Config.in.powerpc +++ b/arch/Config.in.powerpc @@ -164,9 +164,6 @@ config BR2_ENDIAN default "BIG" if BR2_powerpc || BR2_powerpc64 default "LITTLE" if BR2_powerpc64le -config BR2_ARCH_HAS_ATOMICS - default y - config BR2_GCC_TARGET_CPU default "401" if BR2_powerpc_401 default "403" if BR2_powerpc_403 @@ -200,6 +197,8 @@ config BR2_GCC_TARGET_CPU default "e300c2" if BR2_powerpc_e300c2 default "e300c3" if BR2_powerpc_e300c3 default "e500mc" if BR2_powerpc_e500mc + default "e5500" if BR2_powerpc_e5500 + default "e6500" if BR2_powerpc_e6500 default "power4" if BR2_powerpc_power4 default "power5" if BR2_powerpc_power5 default "power6" if BR2_powerpc_power6 diff --git a/arch/Config.in.sh b/arch/Config.in.sh index 9f8f79c6ad9..1bdea37cbc5 100644 --- a/arch/Config.in.sh +++ b/arch/Config.in.sh @@ -28,6 +28,3 @@ config BR2_ARCH config BR2_ENDIAN default "LITTLE" if BR2_sh4 || BR2_sh4a || BR2_sh64 default "BIG" if BR2_sh2a || BR2_sh4eb || BR2_sh4aeb - -config BR2_ARCH_HAS_ATOMICS - default y diff --git a/arch/Config.in.sparc b/arch/Config.in.sparc index cc10e8d0efe..307540fdbf0 100644 --- a/arch/Config.in.sparc +++ b/arch/Config.in.sparc @@ -1,18 +1,25 @@ choice prompt "Target Architecture Variant" - depends on BR2_sparc - default BR2_sparc_v8 + depends on BR2_sparc || BR2_sparc64 + default BR2_sparc_v8 if BR2_sparc + default BR2_sparc_v9 if BR2_sparc64 help Specific CPU variant to use config BR2_sparc_v8 bool "v8" + depends on BR2_sparc config BR2_sparc_leon3 bool "leon3" + depends on BR2_sparc +config BR2_sparc_v9 + bool "v9" + depends on BR2_sparc64 endchoice config BR2_ARCH default "sparc" if BR2_sparc + default "sparc64" if BR2_sparc64 config BR2_ENDIAN default "BIG" @@ -20,3 +27,4 @@ config BR2_ENDIAN config BR2_GCC_TARGET_CPU default "leon3" if BR2_sparc_leon3 default "v8" if BR2_sparc_v8 + default "ultrasparc" if BR2_sparc_v9 diff --git a/arch/Config.in.x86 b/arch/Config.in.x86 index 43f6abc3427..7be814b8fa7 100644 --- a/arch/Config.in.x86 +++ b/arch/Config.in.x86 @@ -34,6 +34,17 @@ config BR2_x86_i486 config BR2_x86_i586 bool "i586" depends on !BR2_x86_64 +config BR2_x86_x1000 + bool "x1000" + depends on !BR2_x86_64 + help + The Intel X1000 is a Pentium class microprocessor in the + Quark (sub-Atom) Product Line. The X1000 has a bug on the + lock prefix requiring that prefix must be stripped at build + time. + + See https://en.wikipedia.org/wiki/Intel_Quark + config BR2_x86_i686 bool "i686" depends on !BR2_x86_64 @@ -202,6 +213,7 @@ config BR2_ARCH default "i386" if BR2_x86_i386 default "i486" if BR2_x86_i486 default "i586" if BR2_x86_i586 + default "i586" if BR2_x86_x1000 default "i586" if BR2_x86_pentium_mmx default "i586" if BR2_x86_geode default "i586" if BR2_x86_c3 @@ -233,13 +245,11 @@ config BR2_ARCH config BR2_ENDIAN default "LITTLE" -config BR2_ARCH_HAS_ATOMICS - default y if !BR2_x86_i386 - config BR2_GCC_TARGET_ARCH default "i386" if BR2_x86_i386 default "i486" if BR2_x86_i486 default "i586" if BR2_x86_i586 + default "i586" if BR2_x86_x1000 default "pentium-mmx" if BR2_x86_pentium_mmx default "i686" if BR2_x86_i686 default "pentiumpro" if BR2_x86_pentiumpro diff --git a/arch/Config.in.xtensa b/arch/Config.in.xtensa index a0e18f1e669..fcb3dc926f9 100644 --- a/arch/Config.in.xtensa +++ b/arch/Config.in.xtensa @@ -54,6 +54,3 @@ config BR2_ENDIAN config BR2_ARCH default "xtensa" if BR2_xtensa - -config BR2_ARCH_HAS_ATOMICS - default y diff --git a/board/common/busybox-1.22.x.config b/board/common/busybox.config similarity index 100% rename from board/common/busybox-1.22.x.config rename to board/common/busybox.config diff --git a/boot/grub2/grub2.mk b/boot/grub2/grub2.mk index 1fc910ee703..88a46f4cee7 100644 --- a/boot/grub2/grub2.mk +++ b/boot/grub2/grub2.mk @@ -40,15 +40,22 @@ endif # Grub2 is kind of special: it considers CC, LD and so on to be the # tools to build the native tools (i.e to be executed on the build -# machine), and uses TARGET_CC, TARGET_CFLAGS, TARGET_CPPFLAGS to -# build the bootloader itself. +# machine), and uses TARGET_CC, TARGET_CFLAGS, TARGET_CPPFLAGS, +# TARGET_LDFLAGS to build the bootloader itself. However, to add to +# the confusion, it also uses NM, OBJCOPY and STRIP to build the +# bootloader itself; none of these are used to build the native +# tools. GRUB2_CONF_ENV = \ $(HOST_CONFIGURE_OPTS) \ CPP="$(HOSTCC) -E" \ TARGET_CC="$(TARGET_CC)" \ TARGET_CFLAGS="$(TARGET_CFLAGS)" \ - TARGET_CPPFLAGS="$(TARGET_CPPFLAGS)" + TARGET_CPPFLAGS="$(TARGET_CPPFLAGS)" \ + TARGET_LDFLAGS="$(TARGET_LDFLAGS)" \ + NM="$(TARGET_NM)" \ + OBJCOPY="$(TARGET_OBJCOPY)" \ + STRIP="$(TARGET_STRIP)" GRUB2_CONF_OPTS = \ --target=$(GRUB2_TARGET) \ diff --git a/boot/uboot/2015.07/0001-Revert-arch-Make-board-selection-choices-optional.patch b/boot/uboot/2015.07/0001-Revert-arch-Make-board-selection-choices-optional.patch new file mode 100644 index 00000000000..8b814f2d69c --- /dev/null +++ b/boot/uboot/2015.07/0001-Revert-arch-Make-board-selection-choices-optional.patch @@ -0,0 +1,742 @@ +From ee11fed43e2bd029f71af1e72ab9bb5652f5fc54 Mon Sep 17 00:00:00 2001 +From: Alexey Brodkin +Date: Wed, 29 Jul 2015 20:32:59 +0300 +Subject: [PATCH] Revert "arch: Make board selection choices optional" + +This reverts commit a26cd04920dc069fd6e91abb785426cf6c29f45f. + +Reverted commit caused an issue with "make oldconfig" - default prompt +for target selection was set as No that lead to missing platform +selection by automated scripts like that: +------------------>8------------------ +"yes "" | make oldconfig" on defconfig +------------------>8------------------ + +And that lead to build failure: +------------------>8------------------ +$ make +scripts/kconfig/conf --silentoldconfig Kconfig + CHK include/config.h + UPD include/config.h + GEN include/autoconf.mk +In file included from ./include/common.h:18:0: +include/config.h:5:22: fatal error: configs/.h: No such file or directory + #include + ^ +compilation terminated. +scripts/Makefile.autoconf:72: recipe for target 'include/autoconf.mk' failed +make[1]: *** [include/autoconf.mk] Error 1 +------------------>8------------------ + +Signed-off-by: Alexey Brodkin +--- + arch/arc/Kconfig | 1 - + arch/arm/Kconfig | 1 - + arch/arm/cpu/armv7/exynos/Kconfig | 1 - + arch/arm/cpu/armv7/mx5/Kconfig | 1 - + arch/arm/cpu/armv7/mx6/Kconfig | 1 - + arch/arm/cpu/armv7/omap3/Kconfig | 1 - + arch/arm/cpu/armv7/omap4/Kconfig | 1 - + arch/arm/cpu/armv7/omap5/Kconfig | 1 - + arch/arm/cpu/armv7/rmobile/Kconfig | 1 - + arch/arm/cpu/armv7/s5pc1xx/Kconfig | 1 - + arch/arm/mach-at91/Kconfig | 1 - + arch/arm/mach-bcm283x/Kconfig | 1 - + arch/arm/mach-davinci/Kconfig | 1 - + arch/arm/mach-integrator/Kconfig | 2 -- + arch/arm/mach-keystone/Kconfig | 1 - + arch/arm/mach-kirkwood/Kconfig | 1 - + arch/arm/mach-nomadik/Kconfig | 1 - + arch/arm/mach-orion5x/Kconfig | 1 - + arch/arm/mach-socfpga/Kconfig | 1 - + arch/arm/mach-tegra/Kconfig | 1 - + arch/arm/mach-tegra/tegra114/Kconfig | 1 - + arch/arm/mach-tegra/tegra124/Kconfig | 1 - + arch/arm/mach-tegra/tegra20/Kconfig | 1 - + arch/arm/mach-tegra/tegra30/Kconfig | 1 - + arch/arm/mach-zynq/Kconfig | 1 - + arch/avr32/Kconfig | 1 - + arch/blackfin/Kconfig | 1 - + arch/m68k/Kconfig | 1 - + arch/microblaze/Kconfig | 1 - + arch/mips/Kconfig | 1 - + arch/nds32/Kconfig | 1 - + arch/nios2/Kconfig | 1 - + arch/openrisc/Kconfig | 1 - + arch/powerpc/Kconfig | 1 - + arch/powerpc/cpu/mpc512x/Kconfig | 1 - + arch/powerpc/cpu/mpc5xx/Kconfig | 1 - + arch/powerpc/cpu/mpc5xxx/Kconfig | 1 - + arch/powerpc/cpu/mpc8260/Kconfig | 1 - + arch/powerpc/cpu/mpc83xx/Kconfig | 1 - + arch/powerpc/cpu/mpc85xx/Kconfig | 1 - + arch/powerpc/cpu/mpc86xx/Kconfig | 1 - + arch/powerpc/cpu/mpc8xx/Kconfig | 1 - + arch/powerpc/cpu/ppc4xx/Kconfig | 1 - + arch/sh/Kconfig | 1 - + arch/sparc/Kconfig | 1 - + board/amcc/canyonlands/Kconfig | 1 - + board/coreboot/Kconfig | 1 - + board/dbau1x00/Kconfig | 1 - + board/google/Kconfig | 1 - + board/intel/Kconfig | 1 - + board/micronas/vct/Kconfig | 1 - + board/seco/Kconfig | 2 -- + board/sunxi/Kconfig | 1 - + 53 files changed, 55 deletions(-) + +diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig +index 925e312..640cda8 100644 +--- a/arch/arc/Kconfig ++++ b/arch/arc/Kconfig +@@ -129,7 +129,6 @@ config ARC_CACHE_LINE_SHIFT + + choice + prompt "Target select" +- optional + + config TARGET_TB100 + bool "Support tb100" +diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig +index 9908b43..8eeb46c 100644 +--- a/arch/arm/Kconfig ++++ b/arch/arm/Kconfig +@@ -64,7 +64,6 @@ config SEMIHOSTING + + choice + prompt "Target select" +- optional + + config ARCH_AT91 + bool "Atmel AT91" +diff --git a/arch/arm/cpu/armv7/exynos/Kconfig b/arch/arm/cpu/armv7/exynos/Kconfig +index 4a7d82f..f2fe748 100644 +--- a/arch/arm/cpu/armv7/exynos/Kconfig ++++ b/arch/arm/cpu/armv7/exynos/Kconfig +@@ -2,7 +2,6 @@ if ARCH_EXYNOS + + choice + prompt "EXYNOS board select" +- optional + + config TARGET_SMDKV310 + select SUPPORT_SPL +diff --git a/arch/arm/cpu/armv7/mx5/Kconfig b/arch/arm/cpu/armv7/mx5/Kconfig +index 9f250c6..2d6c0ce 100644 +--- a/arch/arm/cpu/armv7/mx5/Kconfig ++++ b/arch/arm/cpu/armv7/mx5/Kconfig +@@ -12,7 +12,6 @@ config MX53 + + choice + prompt "MX5 board select" +- optional + + config TARGET_USBARMORY + bool "Support USB armory" +diff --git a/arch/arm/cpu/armv7/mx6/Kconfig b/arch/arm/cpu/armv7/mx6/Kconfig +index 10908c4..662596f 100644 +--- a/arch/arm/cpu/armv7/mx6/Kconfig ++++ b/arch/arm/cpu/armv7/mx6/Kconfig +@@ -27,7 +27,6 @@ config MX6SX + + choice + prompt "MX6 board select" +- optional + + config TARGET_SECOMX6 + bool "Support secomx6 boards" +diff --git a/arch/arm/cpu/armv7/omap3/Kconfig b/arch/arm/cpu/armv7/omap3/Kconfig +index b32a6b0..cc82c50 100644 +--- a/arch/arm/cpu/armv7/omap3/Kconfig ++++ b/arch/arm/cpu/armv7/omap3/Kconfig +@@ -2,7 +2,6 @@ if OMAP34XX + + choice + prompt "OMAP3 board select" +- optional + + config TARGET_AM3517_EVM + bool "AM3517 EVM" +diff --git a/arch/arm/cpu/armv7/omap4/Kconfig b/arch/arm/cpu/armv7/omap4/Kconfig +index df27ea1..eccf897 100644 +--- a/arch/arm/cpu/armv7/omap4/Kconfig ++++ b/arch/arm/cpu/armv7/omap4/Kconfig +@@ -2,7 +2,6 @@ if OMAP44XX + + choice + prompt "OMAP4 board select" +- optional + + config TARGET_DUOVERO + bool "OMAP4430 Gumstix Duovero" +diff --git a/arch/arm/cpu/armv7/omap5/Kconfig b/arch/arm/cpu/armv7/omap5/Kconfig +index 20c3bd9..aca862d 100644 +--- a/arch/arm/cpu/armv7/omap5/Kconfig ++++ b/arch/arm/cpu/armv7/omap5/Kconfig +@@ -2,7 +2,6 @@ if OMAP54XX + + choice + prompt "OMAP5 board select" +- optional + + config TARGET_CM_T54 + bool "CompuLab CM-T54" +diff --git a/arch/arm/cpu/armv7/rmobile/Kconfig b/arch/arm/cpu/armv7/rmobile/Kconfig +index ef56286..638b63d 100644 +--- a/arch/arm/cpu/armv7/rmobile/Kconfig ++++ b/arch/arm/cpu/armv7/rmobile/Kconfig +@@ -2,7 +2,6 @@ if RMOBILE + + choice + prompt "Renesus ARM SoCs board select" +- optional + + config TARGET_ARMADILLO_800EVA + bool "armadillo 800 eva board" +diff --git a/arch/arm/cpu/armv7/s5pc1xx/Kconfig b/arch/arm/cpu/armv7/s5pc1xx/Kconfig +index 792ef59..65cc9eb 100644 +--- a/arch/arm/cpu/armv7/s5pc1xx/Kconfig ++++ b/arch/arm/cpu/armv7/s5pc1xx/Kconfig +@@ -2,7 +2,6 @@ if ARCH_S5PC1XX + + choice + prompt "S5PC1XX board select" +- optional + + config TARGET_S5P_GONI + bool "S5P Goni board" +diff --git a/arch/arm/mach-at91/Kconfig b/arch/arm/mach-at91/Kconfig +index bbf4228..5dc2cb2 100644 +--- a/arch/arm/mach-at91/Kconfig ++++ b/arch/arm/mach-at91/Kconfig +@@ -2,7 +2,6 @@ if ARCH_AT91 + + choice + prompt "Atmel AT91 board select" +- optional + + config TARGET_AT91RM9200EK + bool "Atmel AT91RM9200 evaluation kit" +diff --git a/arch/arm/mach-bcm283x/Kconfig b/arch/arm/mach-bcm283x/Kconfig +index 2315a13..d40f505 100644 +--- a/arch/arm/mach-bcm283x/Kconfig ++++ b/arch/arm/mach-bcm283x/Kconfig +@@ -3,7 +3,6 @@ menu "Broadcom BCM283X family" + + choice + prompt "Broadcom BCM283X board select" +- optional + + config TARGET_RPI + bool "Raspberry Pi" +diff --git a/arch/arm/mach-davinci/Kconfig b/arch/arm/mach-davinci/Kconfig +index e6cb390..3ef55d3 100644 +--- a/arch/arm/mach-davinci/Kconfig ++++ b/arch/arm/mach-davinci/Kconfig +@@ -2,7 +2,6 @@ if ARCH_DAVINCI + + choice + prompt "DaVinci board select" +- optional + + config TARGET_ENBW_CMC + bool "EnBW CMC board" +diff --git a/arch/arm/mach-integrator/Kconfig b/arch/arm/mach-integrator/Kconfig +index c54d69d..8ffc544 100644 +--- a/arch/arm/mach-integrator/Kconfig ++++ b/arch/arm/mach-integrator/Kconfig +@@ -3,7 +3,6 @@ menu "Integrator Options" + + choice + prompt "Integrator platform select" +- optional + + config ARCH_INTEGRATOR_AP + bool "Support Integrator/AP platform" +@@ -19,7 +18,6 @@ config ARCH_CINTEGRATOR + + choice + prompt "Integrator core module select" +- optional + + config CM720T + bool "Core Module for ARM720T" +diff --git a/arch/arm/mach-keystone/Kconfig b/arch/arm/mach-keystone/Kconfig +index 67f1a33..134ae87 100644 +--- a/arch/arm/mach-keystone/Kconfig ++++ b/arch/arm/mach-keystone/Kconfig +@@ -2,7 +2,6 @@ if ARCH_KEYSTONE + + choice + prompt "TI Keystone board select" +- optional + + config TARGET_K2HK_EVM + bool "TI Keystone 2 Kepler/Hawking EVM" +diff --git a/arch/arm/mach-kirkwood/Kconfig b/arch/arm/mach-kirkwood/Kconfig +index 1261885..45c6687 100644 +--- a/arch/arm/mach-kirkwood/Kconfig ++++ b/arch/arm/mach-kirkwood/Kconfig +@@ -2,7 +2,6 @@ if KIRKWOOD + + choice + prompt "Marvell Kirkwood board select" +- optional + + config TARGET_OPENRD + bool "Marvell OpenRD Board" +diff --git a/arch/arm/mach-nomadik/Kconfig b/arch/arm/mach-nomadik/Kconfig +index ba72a41..265f336 100644 +--- a/arch/arm/mach-nomadik/Kconfig ++++ b/arch/arm/mach-nomadik/Kconfig +@@ -2,7 +2,6 @@ if ARCH_NOMADIK + + choice + prompt "Nomadik board select" +- optional + + config NOMADIK_NHK8815 + bool "ST 8815 Nomadik Hardware Kit" +diff --git a/arch/arm/mach-orion5x/Kconfig b/arch/arm/mach-orion5x/Kconfig +index 7644b8d..291c511 100644 +--- a/arch/arm/mach-orion5x/Kconfig ++++ b/arch/arm/mach-orion5x/Kconfig +@@ -2,7 +2,6 @@ if ORION5X + + choice + prompt "Marvell Orion board select" +- optional + + config TARGET_EDMINIV2 + bool "LaCie Ethernet Disk mini V2" +diff --git a/arch/arm/mach-socfpga/Kconfig b/arch/arm/mach-socfpga/Kconfig +index e46c348..204efca 100644 +--- a/arch/arm/mach-socfpga/Kconfig ++++ b/arch/arm/mach-socfpga/Kconfig +@@ -2,7 +2,6 @@ if ARCH_SOCFPGA + + choice + prompt "Altera SOCFPGA board select" +- optional + + config TARGET_SOCFPGA_ARRIA5 + bool "Altera SOCFPGA Arria V" +diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig +index 54bd648..ef77c84 100644 +--- a/arch/arm/mach-tegra/Kconfig ++++ b/arch/arm/mach-tegra/Kconfig +@@ -2,7 +2,6 @@ if TEGRA + + choice + prompt "Tegra SoC select" +- optional + + config TEGRA20 + bool "Tegra20 family" +diff --git a/arch/arm/mach-tegra/tegra114/Kconfig b/arch/arm/mach-tegra/tegra114/Kconfig +index 1047b92..31012bc 100644 +--- a/arch/arm/mach-tegra/tegra114/Kconfig ++++ b/arch/arm/mach-tegra/tegra114/Kconfig +@@ -2,7 +2,6 @@ if TEGRA114 + + choice + prompt "Tegra114 board select" +- optional + + config TARGET_DALMORE + bool "NVIDIA Tegra114 Dalmore evaluation board" +diff --git a/arch/arm/mach-tegra/tegra124/Kconfig b/arch/arm/mach-tegra/tegra124/Kconfig +index f3324ff..86c1301 100644 +--- a/arch/arm/mach-tegra/tegra124/Kconfig ++++ b/arch/arm/mach-tegra/tegra124/Kconfig +@@ -2,7 +2,6 @@ if TEGRA124 + + choice + prompt "Tegra124 board select" +- optional + + config TARGET_JETSON_TK1 + bool "NVIDIA Tegra124 Jetson TK1 board" +diff --git a/arch/arm/mach-tegra/tegra20/Kconfig b/arch/arm/mach-tegra/tegra20/Kconfig +index 1bb8dff..7f09f81 100644 +--- a/arch/arm/mach-tegra/tegra20/Kconfig ++++ b/arch/arm/mach-tegra/tegra20/Kconfig +@@ -2,7 +2,6 @@ if TEGRA20 + + choice + prompt "Tegra20 board select" +- optional + + config TARGET_HARMONY + bool "NVIDIA Tegra20 Harmony evaluation board" +diff --git a/arch/arm/mach-tegra/tegra30/Kconfig b/arch/arm/mach-tegra/tegra30/Kconfig +index e78331e..3abdc7b 100644 +--- a/arch/arm/mach-tegra/tegra30/Kconfig ++++ b/arch/arm/mach-tegra/tegra30/Kconfig +@@ -2,7 +2,6 @@ if TEGRA30 + + choice + prompt "Tegra30 board select" +- optional + + config TARGET_APALIS_T30 + bool "Toradex Apalis T30 board" +diff --git a/arch/arm/mach-zynq/Kconfig b/arch/arm/mach-zynq/Kconfig +index 1de5b07..6b0e295 100644 +--- a/arch/arm/mach-zynq/Kconfig ++++ b/arch/arm/mach-zynq/Kconfig +@@ -10,7 +10,6 @@ config ZYNQ_CUSTOM_INIT + + choice + prompt "Xilinx Zynq board select" +- optional + + config TARGET_ZYNQ_ZED + bool "Zynq ZedBoard" +diff --git a/arch/avr32/Kconfig b/arch/avr32/Kconfig +index eb33774..801b9cc 100644 +--- a/arch/avr32/Kconfig ++++ b/arch/avr32/Kconfig +@@ -6,7 +6,6 @@ config SYS_ARCH + + choice + prompt "Target select" +- optional + + config TARGET_ATNGW100 + bool "Support atngw100" +diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig +index 0a2fb4d..31913fe 100644 +--- a/arch/blackfin/Kconfig ++++ b/arch/blackfin/Kconfig +@@ -6,7 +6,6 @@ config SYS_ARCH + + choice + prompt "Target select" +- optional + + config TARGET_BCT_BRETTL2 + bool "Support bct-brettl2" +diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig +index 26509b7..69cb0f7 100644 +--- a/arch/m68k/Kconfig ++++ b/arch/m68k/Kconfig +@@ -114,7 +114,6 @@ config M548x + + choice + prompt "Target select" +- optional + + config TARGET_M52277EVB + bool "Support M52277EVB" +diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig +index 077b2a7..6f419f0 100644 +--- a/arch/microblaze/Kconfig ++++ b/arch/microblaze/Kconfig +@@ -6,7 +6,6 @@ config SYS_ARCH + + choice + prompt "Target select" +- optional + + config TARGET_MICROBLAZE_GENERIC + bool "Support microblaze-generic" +diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig +index 7f7e258..87b94ac 100644 +--- a/arch/mips/Kconfig ++++ b/arch/mips/Kconfig +@@ -10,7 +10,6 @@ config SYS_CPU + + choice + prompt "Target select" +- optional + + config TARGET_QEMU_MIPS + bool "Support qemu-mips" +diff --git a/arch/nds32/Kconfig b/arch/nds32/Kconfig +index 98b0282..81b0a01 100644 +--- a/arch/nds32/Kconfig ++++ b/arch/nds32/Kconfig +@@ -6,7 +6,6 @@ config SYS_ARCH + + choice + prompt "Target select" +- optional + + config TARGET_ADP_AG101 + bool "Support adp-ag101" +diff --git a/arch/nios2/Kconfig b/arch/nios2/Kconfig +index 8ae7f6e..b3be7b5 100644 +--- a/arch/nios2/Kconfig ++++ b/arch/nios2/Kconfig +@@ -6,7 +6,6 @@ config SYS_ARCH + + choice + prompt "Target select" +- optional + + config TARGET_NIOS2_GENERIC + bool "Support nios2-generic" +diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig +index 11014d1..4d62b4c 100644 +--- a/arch/openrisc/Kconfig ++++ b/arch/openrisc/Kconfig +@@ -6,7 +6,6 @@ config SYS_ARCH + + choice + prompt "Target select" +- optional + + config TARGET_OPENRISC_GENERIC + bool "Support openrisc-generic" +diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig +index 3b3f446..8e5a3e2 100644 +--- a/arch/powerpc/Kconfig ++++ b/arch/powerpc/Kconfig +@@ -6,7 +6,6 @@ config SYS_ARCH + + choice + prompt "CPU select" +- optional + + config MPC512X + bool "MPC512X" +diff --git a/arch/powerpc/cpu/mpc512x/Kconfig b/arch/powerpc/cpu/mpc512x/Kconfig +index 53450ae..a0f0ede 100644 +--- a/arch/powerpc/cpu/mpc512x/Kconfig ++++ b/arch/powerpc/cpu/mpc512x/Kconfig +@@ -6,7 +6,6 @@ config SYS_CPU + + choice + prompt "Target select" +- optional + + config TARGET_PDM360NG + bool "Support pdm360ng" +diff --git a/arch/powerpc/cpu/mpc5xx/Kconfig b/arch/powerpc/cpu/mpc5xx/Kconfig +index 5275447..aad4a7c 100644 +--- a/arch/powerpc/cpu/mpc5xx/Kconfig ++++ b/arch/powerpc/cpu/mpc5xx/Kconfig +@@ -6,7 +6,6 @@ config SYS_CPU + + choice + prompt "Target select" +- optional + + config TARGET_CMI_MPC5XX + bool "Support cmi_mpc5xx" +diff --git a/arch/powerpc/cpu/mpc5xxx/Kconfig b/arch/powerpc/cpu/mpc5xxx/Kconfig +index 5d49228..eec9d7d 100644 +--- a/arch/powerpc/cpu/mpc5xxx/Kconfig ++++ b/arch/powerpc/cpu/mpc5xxx/Kconfig +@@ -6,7 +6,6 @@ config SYS_CPU + + choice + prompt "Target select" +- optional + + config TARGET_A3M071 + bool "Support a3m071" +diff --git a/arch/powerpc/cpu/mpc8260/Kconfig b/arch/powerpc/cpu/mpc8260/Kconfig +index e93732d..55941c8 100644 +--- a/arch/powerpc/cpu/mpc8260/Kconfig ++++ b/arch/powerpc/cpu/mpc8260/Kconfig +@@ -6,7 +6,6 @@ config SYS_CPU + + choice + prompt "Target select" +- optional + + config TARGET_KM82XX + bool "Support km82xx" +diff --git a/arch/powerpc/cpu/mpc83xx/Kconfig b/arch/powerpc/cpu/mpc83xx/Kconfig +index 3fb901f..88a3bd6 100644 +--- a/arch/powerpc/cpu/mpc83xx/Kconfig ++++ b/arch/powerpc/cpu/mpc83xx/Kconfig +@@ -6,7 +6,6 @@ config SYS_CPU + + choice + prompt "Target select" +- optional + + config TARGET_MPC8308_P1M + bool "Support mpc8308_p1m" +diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig b/arch/powerpc/cpu/mpc85xx/Kconfig +index 3e8d0b1..aff5fdb 100644 +--- a/arch/powerpc/cpu/mpc85xx/Kconfig ++++ b/arch/powerpc/cpu/mpc85xx/Kconfig +@@ -6,7 +6,6 @@ config SYS_CPU + + choice + prompt "Target select" +- optional + + config TARGET_SBC8548 + bool "Support sbc8548" +diff --git a/arch/powerpc/cpu/mpc86xx/Kconfig b/arch/powerpc/cpu/mpc86xx/Kconfig +index fe1859d..14e8b1a 100644 +--- a/arch/powerpc/cpu/mpc86xx/Kconfig ++++ b/arch/powerpc/cpu/mpc86xx/Kconfig +@@ -6,7 +6,6 @@ config SYS_CPU + + choice + prompt "Target select" +- optional + + config TARGET_SBC8641D + bool "Support sbc8641d" +diff --git a/arch/powerpc/cpu/mpc8xx/Kconfig b/arch/powerpc/cpu/mpc8xx/Kconfig +index 79cee35..e8bcbe9 100644 +--- a/arch/powerpc/cpu/mpc8xx/Kconfig ++++ b/arch/powerpc/cpu/mpc8xx/Kconfig +@@ -6,7 +6,6 @@ config SYS_CPU + + choice + prompt "Target select" +- optional + + config TARGET_TQM823L + bool "Support TQM823L" +diff --git a/arch/powerpc/cpu/ppc4xx/Kconfig b/arch/powerpc/cpu/ppc4xx/Kconfig +index 10b86e0..4d5954a 100644 +--- a/arch/powerpc/cpu/ppc4xx/Kconfig ++++ b/arch/powerpc/cpu/ppc4xx/Kconfig +@@ -6,7 +6,6 @@ config SYS_CPU + + choice + prompt "Target select" +- optional + + config TARGET_CSB272 + bool "Support csb272" +diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig +index 6ac22af..ff8f5b5 100644 +--- a/arch/sh/Kconfig ++++ b/arch/sh/Kconfig +@@ -29,7 +29,6 @@ config SH_32BIT + + choice + prompt "Target select" +- optional + + config TARGET_RSK7203 + bool "RSK+ 7203" +diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig +index 04dc08f..2df09b2 100644 +--- a/arch/sparc/Kconfig ++++ b/arch/sparc/Kconfig +@@ -14,7 +14,6 @@ config LEON3 + + choice + prompt "Board select" +- optional + + config TARGET_GRSIM_LEON2 + bool "GRSIM simulating a LEON2 board" +diff --git a/board/amcc/canyonlands/Kconfig b/board/amcc/canyonlands/Kconfig +index a655dbc..ef66ad4 100644 +--- a/board/amcc/canyonlands/Kconfig ++++ b/board/amcc/canyonlands/Kconfig +@@ -11,7 +11,6 @@ config SYS_CONFIG_NAME + + choice BOARD_TYPE + prompt "Select which board to build for" +- optional + + config CANYONLANDS + bool "Glacier" +diff --git a/board/coreboot/Kconfig b/board/coreboot/Kconfig +index ede6065..dc9b70f 100644 +--- a/board/coreboot/Kconfig ++++ b/board/coreboot/Kconfig +@@ -8,7 +8,6 @@ if VENDOR_COREBOOT + + choice + prompt "Mainboard model" +- optional + + config TARGET_COREBOOT + bool "coreboot" +diff --git a/board/dbau1x00/Kconfig b/board/dbau1x00/Kconfig +index b813adb..1286e45 100644 +--- a/board/dbau1x00/Kconfig ++++ b/board/dbau1x00/Kconfig +@@ -13,7 +13,6 @@ menu "dbau1x00 board options" + + choice + prompt "Select au1x00 SoC type" +- optional + + config DBAU1100 + bool "Select AU1100" +diff --git a/board/google/Kconfig b/board/google/Kconfig +index e9559c9..302f68e 100644 +--- a/board/google/Kconfig ++++ b/board/google/Kconfig +@@ -8,7 +8,6 @@ if VENDOR_GOOGLE + + choice + prompt "Mainboard model" +- optional + + config TARGET_CHROMEBOOK_LINK + bool "Chromebook link" +diff --git a/board/intel/Kconfig b/board/intel/Kconfig +index 3d9ecf0..7fe21b9 100644 +--- a/board/intel/Kconfig ++++ b/board/intel/Kconfig +@@ -8,7 +8,6 @@ if VENDOR_INTEL + + choice + prompt "Mainboard model" +- optional + + config TARGET_CROWNBAY + bool "Crown Bay" +diff --git a/board/micronas/vct/Kconfig b/board/micronas/vct/Kconfig +index c518079..288a1ae 100644 +--- a/board/micronas/vct/Kconfig ++++ b/board/micronas/vct/Kconfig +@@ -13,7 +13,6 @@ menu "vct board options" + + choice + prompt "Board variant" +- optional + + config VCT_PLATINUM + bool "Enable VCT_PLATINUM" +diff --git a/board/seco/Kconfig b/board/seco/Kconfig +index af16697..dcb1ac8 100644 +--- a/board/seco/Kconfig ++++ b/board/seco/Kconfig +@@ -2,7 +2,6 @@ if TARGET_SECOMX6 + + choice + prompt "SECO i.MX6 Board variant" +- optional + + config SECOMX6_Q7 + bool "Q7" +@@ -17,7 +16,6 @@ endchoice + + choice + prompt "SECO i.MX6 SoC variant" +- optional + + config SECOMX6Q + bool "i.MX6Q" +diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig +index 2a1cd3c..808de26 100644 +--- a/board/sunxi/Kconfig ++++ b/board/sunxi/Kconfig +@@ -18,7 +18,6 @@ config SUNXI_GEN_SUN6I + + choice + prompt "Sunxi SoC Variant" +- optional + + config MACH_SUN4I + bool "sun4i (Allwinner A10)" +-- +2.4.3 + diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in index be516429183..dde4710270b 100644 --- a/boot/uboot/Config.in +++ b/boot/uboot/Config.in @@ -38,7 +38,7 @@ choice Select the specific U-Boot version you want to use config BR2_TARGET_UBOOT_LATEST_VERSION - bool "2015.07" + bool "2016.01" config BR2_TARGET_UBOOT_CUSTOM_VERSION bool "Custom version" @@ -83,7 +83,7 @@ endif config BR2_TARGET_UBOOT_VERSION string - default "2015.07" if BR2_TARGET_UBOOT_LATEST_VERSION + default "2016.01" if BR2_TARGET_UBOOT_LATEST_VERSION default BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE \ if BR2_TARGET_UBOOT_CUSTOM_VERSION default "custom" if BR2_TARGET_UBOOT_CUSTOM_TARBALL @@ -139,6 +139,13 @@ config BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE Path to the U-Boot configuration file. endif +config BR2_TARGET_UBOOT_NEEDS_DTC + bool "U-Boot needs dtc" + select BR2_PACKAGE_HOST_DTC + help + Select this option if your U-Boot board configuration + requires the Device Tree compiler to be available. + choice prompt "U-Boot binary format" default BR2_TARGET_UBOOT_FORMAT_BIN diff --git a/boot/uboot/uboot.hash b/boot/uboot/uboot.hash index 3b687d52df9..31b0db96ddc 100644 --- a/boot/uboot/uboot.hash +++ b/boot/uboot/uboot.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 0b48c9bd717f2c322ef791f8282e14c88be942dc7d1226df7e31a812a3af94d9 u-boot-2015.07.tar.bz2 +sha256 e5792fba9399d9804aa2ef667f14ff771e2cdece72367d340250265bf095a5d5 u-boot-2016.01.tar.bz2 diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk index 19ac9d52b3e..d539b3123ae 100644 --- a/boot/uboot/uboot.mk +++ b/boot/uboot/uboot.mk @@ -12,8 +12,6 @@ UBOOT_LICENSE_FILES = Licenses/gpl-2.0.txt UBOOT_INSTALL_IMAGES = YES -UBOOT_DEPENDENCIES += linux - ifeq ($(UBOOT_VERSION),custom) # Handle custom U-Boot tarballs as specified by the configuration UBOOT_TARBALL = $(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION)) @@ -73,23 +71,23 @@ UBOOT_BIN = u-boot.bin UBOOT_BIN_IFT = $(UBOOT_BIN).ift endif +# The kernel calls AArch64 'arm64', but U-Boot calls it just 'arm', so +# we have to special case it. Similar for i386/x86_64 -> x86 +ifeq ($(KERNEL_ARCH),arm64) +UBOOT_ARCH = arm +else ifneq ($(filter $(KERNEL_ARCH),i386 x86_64),) +UBOOT_ARCH = x86 +else UBOOT_ARCH = $(KERNEL_ARCH) +endif UBOOT_MAKE_OPTS += \ - CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ ARCH=$(UBOOT_ARCH) -# Helper function to fill the U-Boot config.h file. -# Argument 1: option name -# Argument 2: option value -# If the option value is empty, this function does nothing. -define insert_define -$(if $(call qstrip,$(2)), - @echo "#ifdef $(strip $(1))" >> $(@D)/include/config.h - @echo "#undef $(strip $(1))" >> $(@D)/include/config.h - @echo "#endif" >> $(@D)/include/config.h - @echo '#define $(strip $(1)) $(call qstrip,$(2))' >> $(@D)/include/config.h) -endef +ifeq ($(BR2_TARGET_UBOOT_NEEDS_DTC),y) +UBOOT_DEPENDENCIES += host-dtc +endif # prior to u-boot 2013.10 the license info was in COPYING. Copy it so # legal-info finds it @@ -100,6 +98,7 @@ define UBOOT_COPY_OLD_LICENSE_FILE endef UBOOT_POST_EXTRACT_HOOKS += UBOOT_COPY_OLD_LICENSE_FILE +UBOOT_POST_RSYNC_HOOKS += UBOOT_COPY_OLD_LICENSE_FILE # Prior to Buildroot 2015.05, only patch directories were supported. New # configurations use BR2_TARGET_UBOOT_PATCH instead. @@ -137,13 +136,11 @@ define UBOOT_CONFIGURE_CMDS endef else ifeq ($(BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG),y) ifeq ($(BR2_TARGET_UBOOT_USE_DEFCONFIG),y) -UBOOT_SOURCE_CONFIG = $(UBOOT_DIR)/configs/$(call qstrip,\ - $(BR2_TARGET_UBOOT_BOARD_DEFCONFIG))_defconfig +UBOOT_KCONFIG_DEFCONFIG = $(call qstrip,$(BR2_TARGET_UBOOT_BOARD_DEFCONFIG))_defconfig else ifeq ($(BR2_TARGET_UBOOT_USE_CUSTOM_CONFIG),y) -UBOOT_SOURCE_CONFIG = $(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE)) +UBOOT_KCONFIG_FILE = $(call qstrip,$(BR2_TARGET_UBOOT_CUSTOM_CONFIG_FILE)) endif # BR2_TARGET_UBOOT_USE_DEFCONFIG -UBOOT_KCONFIG_FILE = $(UBOOT_SOURCE_CONFIG) UBOOT_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig UBOOT_KCONFIG_OPTS = $(UBOOT_MAKE_OPTS) endif # BR2_TARGET_UBOOT_BUILD_SYSTEM_LEGACY diff --git a/configs/bananapi_defconfig b/configs/bananapi_defconfig index b2a86668206..034f1f6e1d6 100644 --- a/configs/bananapi_defconfig +++ b/configs/bananapi_defconfig @@ -1,6 +1,5 @@ BR2_arm=y BR2_cortex_a7=y -BR2_ARM_EABIHF=y BR2_ARM_FPU_NEON_VFPV4=y BR2_DL_DIR="$(TOPDIR)/.download" BR2_CCACHE=y @@ -10,7 +9,6 @@ BR2_KERNEL_HEADERS_VERSION=y BR2_DEFAULT_KERNEL_VERSION="4.1.18" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y BR2_TOOLCHAIN_BUILDROOT_GLIBC=y -BR2_GLIBC_VERSION_2_21=y BR2_BINUTILS_VERSION_2_25_X=y BR2_EXTRA_GCC_CONFIG_OPTIONS="--with-float=hard" BR2_TOOLCHAIN_BUILDROOT_CXX=y @@ -23,14 +21,15 @@ BR2_ROOTFS_SKELETON_CUSTOM_PATH="board/common/skeleton" BR2_ROOTFS_OVERLAY="board/common/overlay board/bananapi/overlay" BR2_ROOTFS_POST_BUILD_SCRIPT="board/common/postscript.sh" BR2_LINUX_KERNEL=y -BR2_LINUX_KERNEL_SAME_AS_HEADERS=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.1.18" BR2_LINUX_KERNEL_PATCH="board/bananapi/linux-rtl8192cu.patch.gz" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/bananapi/kernel.config" BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x40008000" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun7i-a20-bananapi" -BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox-1.22.x.config" +BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox.config" BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_PACKAGE_MOTIONEYE=y BR2_PACKAGE_FFMPEG=y @@ -41,7 +40,6 @@ BR2_PACKAGE_LIBWEBCAM=y BR2_PACKAGE_MOTION=y BR2_PACKAGE_MOTION_MRDAVE=y BR2_PACKAGE_GZIP=y -BR2_PACKAGE_TAR=y BR2_PACKAGE_CIFS_UTILS=y # BR2_PACKAGE_E2FSPROGS_BADBLOCKS is not set # BR2_PACKAGE_E2FSPROGS_CHATTR is not set @@ -51,7 +49,6 @@ BR2_PACKAGE_E2FSPROGS_DEBUGFS=y # BR2_PACKAGE_E2FSPROGS_E2LABEL is not set # BR2_PACKAGE_E2FSPROGS_E2UNDO is not set # BR2_PACKAGE_E2FSPROGS_FILEFRAG is not set -# BR2_PACKAGE_E2FSPROGS_FINDFS is not set # BR2_PACKAGE_E2FSPROGS_LOGSAVE is not set # BR2_PACKAGE_E2FSPROGS_LSATTR is not set # BR2_PACKAGE_E2FSPROGS_MKLOSTFOUND is not set @@ -65,6 +62,8 @@ BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9170=y BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9271=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XX=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8797=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8897=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y @@ -109,6 +108,7 @@ BR2_PACKAGE_WPA_SUPPLICANT=y BR2_PACKAGE_WPA_SUPPLICANT_EAP=y BR2_PACKAGE_WPA_SUPPLICANT_CLI=y BR2_PACKAGE_BASH=y +BR2_PACKAGE_TAR=y BR2_PACKAGE_UTIL_LINUX_BINARIES=y BR2_PACKAGE_UTIL_LINUX_PARTX=y BR2_PACKAGE_NANO=y diff --git a/configs/cubietruck_defconfig b/configs/cubietruck_defconfig index a90197b4c08..feb313e06b0 100644 --- a/configs/cubietruck_defconfig +++ b/configs/cubietruck_defconfig @@ -1,6 +1,6 @@ BR2_arm=y BR2_cortex_a7=y -BR2_ARM_EABIHF=y +BR2_ARM_FPU_NEON_VFPV4=y BR2_DL_DIR="$(TOPDIR)/.download" BR2_CCACHE=y BR2_CCACHE_DIR="$(TOPDIR)/.buildroot-ccache-cubietruck" @@ -9,7 +9,6 @@ BR2_KERNEL_HEADERS_VERSION=y BR2_DEFAULT_KERNEL_VERSION="4.1.18" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y BR2_TOOLCHAIN_BUILDROOT_GLIBC=y -BR2_GLIBC_VERSION_2_21=y BR2_BINUTILS_VERSION_2_25_X=y BR2_EXTRA_GCC_CONFIG_OPTIONS="--with-float=hard" BR2_TOOLCHAIN_BUILDROOT_CXX=y @@ -22,14 +21,15 @@ BR2_ROOTFS_SKELETON_CUSTOM_PATH="board/common/skeleton" BR2_ROOTFS_OVERLAY="board/common/overlay board/cubietruck/overlay" BR2_ROOTFS_POST_BUILD_SCRIPT="board/common/postscript.sh" BR2_LINUX_KERNEL=y -BR2_LINUX_KERNEL_SAME_AS_HEADERS=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.1.18" BR2_LINUX_KERNEL_PATCH="board/cubietruck/linux-rtl8192cu.patch.gz" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/cubietruck/kernel.config" BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x40008000" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun7i-a20-cubietruck" -BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox-1.22.x.config" +BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox.config" BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_PACKAGE_MOTIONEYE=y BR2_PACKAGE_FFMPEG=y @@ -40,8 +40,6 @@ BR2_PACKAGE_LIBWEBCAM=y BR2_PACKAGE_MOTION=y BR2_PACKAGE_MOTION_MRDAVE=y BR2_PACKAGE_GZIP=y -BR2_PACKAGE_GETTEXT=y -BR2_PACKAGE_TAR=y BR2_PACKAGE_CIFS_UTILS=y # BR2_PACKAGE_E2FSPROGS_BADBLOCKS is not set # BR2_PACKAGE_E2FSPROGS_CHATTR is not set @@ -51,7 +49,6 @@ BR2_PACKAGE_E2FSPROGS_DEBUGFS=y # BR2_PACKAGE_E2FSPROGS_E2LABEL is not set # BR2_PACKAGE_E2FSPROGS_E2UNDO is not set # BR2_PACKAGE_E2FSPROGS_FILEFRAG is not set -# BR2_PACKAGE_E2FSPROGS_FINDFS is not set # BR2_PACKAGE_E2FSPROGS_LOGSAVE is not set # BR2_PACKAGE_E2FSPROGS_LSATTR is not set # BR2_PACKAGE_E2FSPROGS_MKLOSTFOUND is not set @@ -65,6 +62,8 @@ BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9170=y BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9271=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XX=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8797=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8897=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y @@ -107,6 +106,7 @@ BR2_PACKAGE_WPA_SUPPLICANT=y BR2_PACKAGE_WPA_SUPPLICANT_EAP=y BR2_PACKAGE_WPA_SUPPLICANT_CLI=y BR2_PACKAGE_BASH=y +BR2_PACKAGE_TAR=y BR2_PACKAGE_UTIL_LINUX_BINARIES=y BR2_PACKAGE_UTIL_LINUX_PARTX=y BR2_PACKAGE_NANO=y diff --git a/configs/odroidc1_defconfig b/configs/odroidc1_defconfig index 16f80e12dc7..a71d82f44ba 100644 --- a/configs/odroidc1_defconfig +++ b/configs/odroidc1_defconfig @@ -23,18 +23,17 @@ BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/odroidc1/kernel.config" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="meson8b_odroidc" -BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox-1.22.x.config" +BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox.config" BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_PACKAGE_MOTIONEYE=y BR2_PACKAGE_FFMPEG=y BR2_PACKAGE_FFMPEG_GPL=y BR2_PACKAGE_FFMPEG_NONFREE=y BR2_PACKAGE_FFMPEG_SWSCALE=y +BR2_PACKAGE_LIBWEBCAM=y BR2_PACKAGE_MOTION=y BR2_PACKAGE_MOTION_MRDAVE=y BR2_PACKAGE_GZIP=y -BR2_PACKAGE_GETTEXT=y -BR2_PACKAGE_TAR=y BR2_PACKAGE_CIFS_UTILS=y # BR2_PACKAGE_E2FSPROGS_BADBLOCKS is not set # BR2_PACKAGE_E2FSPROGS_CHATTR is not set @@ -44,7 +43,6 @@ BR2_PACKAGE_E2FSPROGS_DEBUGFS=y # BR2_PACKAGE_E2FSPROGS_E2LABEL is not set # BR2_PACKAGE_E2FSPROGS_E2UNDO is not set # BR2_PACKAGE_E2FSPROGS_FILEFRAG is not set -# BR2_PACKAGE_E2FSPROGS_FINDFS is not set # BR2_PACKAGE_E2FSPROGS_LOGSAVE is not set # BR2_PACKAGE_E2FSPROGS_LSATTR is not set # BR2_PACKAGE_E2FSPROGS_MKLOSTFOUND is not set @@ -58,6 +56,8 @@ BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9170=y BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9271=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XX=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8797=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8897=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y @@ -100,6 +100,7 @@ BR2_PACKAGE_WPA_SUPPLICANT=y BR2_PACKAGE_WPA_SUPPLICANT_EAP=y BR2_PACKAGE_WPA_SUPPLICANT_CLI=y BR2_PACKAGE_BASH=y +BR2_PACKAGE_TAR=y BR2_PACKAGE_UTIL_LINUX_BINARIES=y BR2_PACKAGE_UTIL_LINUX_PARTX=y BR2_PACKAGE_NANO=y diff --git a/configs/odroidxu4_defconfig b/configs/odroidxu4_defconfig index c9a50456a8d..37cf3acbdd6 100644 --- a/configs/odroidxu4_defconfig +++ b/configs/odroidxu4_defconfig @@ -1,6 +1,5 @@ BR2_arm=y BR2_cortex_a7=y -BR2_ARM_EABIHF=y BR2_ARM_FPU_NEON_VFPV4=y BR2_DL_DIR="$(TOPDIR)/.download" BR2_CCACHE=y @@ -23,18 +22,17 @@ BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/odroidxu4/kernel.config" BR2_LINUX_KERNEL_ZIMAGE=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="exynos5422-odroidxu3" -BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox-1.22.x.config" +BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox.config" BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_PACKAGE_MOTIONEYE=y BR2_PACKAGE_FFMPEG=y BR2_PACKAGE_FFMPEG_GPL=y BR2_PACKAGE_FFMPEG_NONFREE=y BR2_PACKAGE_FFMPEG_SWSCALE=y +BR2_PACKAGE_LIBWEBCAM=y BR2_PACKAGE_MOTION=y BR2_PACKAGE_MOTION_MRDAVE=y BR2_PACKAGE_GZIP=y -BR2_PACKAGE_GETTEXT=y -BR2_PACKAGE_TAR=y BR2_PACKAGE_CIFS_UTILS=y # BR2_PACKAGE_E2FSPROGS_BADBLOCKS is not set # BR2_PACKAGE_E2FSPROGS_CHATTR is not set @@ -44,7 +42,6 @@ BR2_PACKAGE_E2FSPROGS_DEBUGFS=y # BR2_PACKAGE_E2FSPROGS_E2LABEL is not set # BR2_PACKAGE_E2FSPROGS_E2UNDO is not set # BR2_PACKAGE_E2FSPROGS_FILEFRAG is not set -# BR2_PACKAGE_E2FSPROGS_FINDFS is not set # BR2_PACKAGE_E2FSPROGS_LOGSAVE is not set # BR2_PACKAGE_E2FSPROGS_LSATTR is not set # BR2_PACKAGE_E2FSPROGS_MKLOSTFOUND is not set @@ -58,6 +55,8 @@ BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9170=y BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9271=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XX=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8797=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8897=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y @@ -100,6 +99,7 @@ BR2_PACKAGE_WPA_SUPPLICANT=y BR2_PACKAGE_WPA_SUPPLICANT_EAP=y BR2_PACKAGE_WPA_SUPPLICANT_CLI=y BR2_PACKAGE_BASH=y +BR2_PACKAGE_TAR=y BR2_PACKAGE_UTIL_LINUX_BINARIES=y BR2_PACKAGE_UTIL_LINUX_PARTX=y BR2_PACKAGE_NANO=y diff --git a/configs/raspberrypi2_defconfig b/configs/raspberrypi2_defconfig index 81606846786..b95120f8bf5 100644 --- a/configs/raspberrypi2_defconfig +++ b/configs/raspberrypi2_defconfig @@ -10,9 +10,7 @@ BR2_KERNEL_HEADERS_VERSION=y BR2_DEFAULT_KERNEL_VERSION="4.1.18" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y BR2_TOOLCHAIN_BUILDROOT_GLIBC=y -BR2_GLIBC_VERSION_2_21=y BR2_BINUTILS_VERSION_2_25_X=y -BR2_GCC_VERSION_4_8_X=y BR2_EXTRA_GCC_CONFIG_OPTIONS="--with-float=hard" BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_TARGET_OPTIMIZATION="-pipe -mhard-float" @@ -29,7 +27,7 @@ BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/a BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/raspberrypi2/kernel.config" BR2_LINUX_KERNEL_ZIMAGE=y -BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox-1.22.x.config" +BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox.config" BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_PACKAGE_MOTIONEYE=y BR2_PACKAGE_FFMPEG=y @@ -42,8 +40,6 @@ BR2_PACKAGE_MOTION_MMAL=y BR2_PACKAGE_MOTION_MRDAVE=y BR2_PACKAGE_STREAMEYE=y BR2_PACKAGE_GZIP=y -BR2_PACKAGE_GETTEXT=y -BR2_PACKAGE_TAR=y BR2_PACKAGE_CIFS_UTILS=y # BR2_PACKAGE_E2FSPROGS_BADBLOCKS is not set # BR2_PACKAGE_E2FSPROGS_CHATTR is not set @@ -53,7 +49,6 @@ BR2_PACKAGE_E2FSPROGS_DEBUGFS=y # BR2_PACKAGE_E2FSPROGS_E2LABEL is not set # BR2_PACKAGE_E2FSPROGS_E2UNDO is not set # BR2_PACKAGE_E2FSPROGS_FILEFRAG is not set -# BR2_PACKAGE_E2FSPROGS_FINDFS is not set # BR2_PACKAGE_E2FSPROGS_LOGSAVE is not set # BR2_PACKAGE_E2FSPROGS_LSATTR is not set # BR2_PACKAGE_E2FSPROGS_MKLOSTFOUND is not set @@ -67,6 +62,8 @@ BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9170=y BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9271=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XX=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8797=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8897=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y @@ -115,6 +112,7 @@ BR2_PACKAGE_WPA_SUPPLICANT=y BR2_PACKAGE_WPA_SUPPLICANT_EAP=y BR2_PACKAGE_WPA_SUPPLICANT_CLI=y BR2_PACKAGE_BASH=y +BR2_PACKAGE_TAR=y BR2_PACKAGE_UTIL_LINUX_BINARIES=y BR2_PACKAGE_UTIL_LINUX_PARTX=y BR2_PACKAGE_NANO=y diff --git a/configs/raspberrypi3_defconfig b/configs/raspberrypi3_defconfig index efdec8656d3..623d7cb702a 100644 --- a/configs/raspberrypi3_defconfig +++ b/configs/raspberrypi3_defconfig @@ -10,9 +10,7 @@ BR2_KERNEL_HEADERS_VERSION=y BR2_DEFAULT_KERNEL_VERSION="4.1.18" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y BR2_TOOLCHAIN_BUILDROOT_GLIBC=y -BR2_GLIBC_VERSION_2_21=y BR2_BINUTILS_VERSION_2_25_X=y -BR2_GCC_VERSION_4_8_X=y BR2_EXTRA_GCC_CONFIG_OPTIONS="--with-float=hard" BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_TARGET_OPTIMIZATION="-pipe -mhard-float" @@ -31,7 +29,7 @@ BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/raspberrypi3/kernel.config" BR2_LINUX_KERNEL_ZIMAGE=y BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2710-rpi-3-b" -BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox-1.22.x.config" +BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox.config" BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_PACKAGE_MOTIONEYE=y BR2_PACKAGE_FFMPEG=y @@ -44,8 +42,6 @@ BR2_PACKAGE_MOTION_MMAL=y BR2_PACKAGE_MOTION_MRDAVE=y BR2_PACKAGE_STREAMEYE=y BR2_PACKAGE_GZIP=y -BR2_PACKAGE_GETTEXT=y -BR2_PACKAGE_TAR=y BR2_PACKAGE_CIFS_UTILS=y # BR2_PACKAGE_E2FSPROGS_BADBLOCKS is not set # BR2_PACKAGE_E2FSPROGS_CHATTR is not set @@ -55,7 +51,6 @@ BR2_PACKAGE_E2FSPROGS_DEBUGFS=y # BR2_PACKAGE_E2FSPROGS_E2LABEL is not set # BR2_PACKAGE_E2FSPROGS_E2UNDO is not set # BR2_PACKAGE_E2FSPROGS_FILEFRAG is not set -# BR2_PACKAGE_E2FSPROGS_FINDFS is not set # BR2_PACKAGE_E2FSPROGS_LOGSAVE is not set # BR2_PACKAGE_E2FSPROGS_LSATTR is not set # BR2_PACKAGE_E2FSPROGS_MKLOSTFOUND is not set @@ -69,6 +64,8 @@ BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9170=y BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9271=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XX=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8797=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8897=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y @@ -117,6 +114,7 @@ BR2_PACKAGE_WPA_SUPPLICANT=y BR2_PACKAGE_WPA_SUPPLICANT_EAP=y BR2_PACKAGE_WPA_SUPPLICANT_CLI=y BR2_PACKAGE_BASH=y +BR2_PACKAGE_TAR=y BR2_PACKAGE_UTIL_LINUX_BINARIES=y BR2_PACKAGE_UTIL_LINUX_PARTX=y BR2_PACKAGE_NANO=y diff --git a/configs/raspberrypi_defconfig b/configs/raspberrypi_defconfig index 1edee952b79..5291ba1017b 100644 --- a/configs/raspberrypi_defconfig +++ b/configs/raspberrypi_defconfig @@ -9,9 +9,7 @@ BR2_KERNEL_HEADERS_VERSION=y BR2_DEFAULT_KERNEL_VERSION="4.1.18" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y BR2_TOOLCHAIN_BUILDROOT_GLIBC=y -BR2_GLIBC_VERSION_2_21=y BR2_BINUTILS_VERSION_2_25_X=y -BR2_GCC_VERSION_4_8_X=y BR2_EXTRA_GCC_CONFIG_OPTIONS="--with-float=hard" BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_TARGET_OPTIMIZATION="-pipe -mhard-float" @@ -28,7 +26,7 @@ BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/a BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/raspberrypi/kernel.config" BR2_LINUX_KERNEL_ZIMAGE=y -BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox-1.22.x.config" +BR2_PACKAGE_BUSYBOX_CONFIG="board/common/busybox.config" BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_PACKAGE_MOTIONEYE=y BR2_PACKAGE_FFMPEG=y @@ -41,8 +39,6 @@ BR2_PACKAGE_MOTION_MMAL=y BR2_PACKAGE_MOTION_MRDAVE=y BR2_PACKAGE_STREAMEYE=y BR2_PACKAGE_GZIP=y -BR2_PACKAGE_GETTEXT=y -BR2_PACKAGE_TAR=y BR2_PACKAGE_CIFS_UTILS=y # BR2_PACKAGE_E2FSPROGS_BADBLOCKS is not set # BR2_PACKAGE_E2FSPROGS_CHATTR is not set @@ -52,7 +48,6 @@ BR2_PACKAGE_E2FSPROGS_DEBUGFS=y # BR2_PACKAGE_E2FSPROGS_E2LABEL is not set # BR2_PACKAGE_E2FSPROGS_E2UNDO is not set # BR2_PACKAGE_E2FSPROGS_FILEFRAG is not set -# BR2_PACKAGE_E2FSPROGS_FINDFS is not set # BR2_PACKAGE_E2FSPROGS_LOGSAVE is not set # BR2_PACKAGE_E2FSPROGS_LSATTR is not set # BR2_PACKAGE_E2FSPROGS_MKLOSTFOUND is not set @@ -66,6 +61,8 @@ BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9170=y BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9271=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XX=y BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8797=y +BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8897=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y @@ -116,6 +113,7 @@ BR2_PACKAGE_WPA_SUPPLICANT=y BR2_PACKAGE_WPA_SUPPLICANT_EAP=y BR2_PACKAGE_WPA_SUPPLICANT_CLI=y BR2_PACKAGE_BASH=y +BR2_PACKAGE_TAR=y BR2_PACKAGE_UTIL_LINUX_BINARIES=y BR2_PACKAGE_UTIL_LINUX_PARTX=y BR2_PACKAGE_NANO=y diff --git a/fs/Config.in b/fs/Config.in index 58531134278..51ccf28169e 100644 --- a/fs/Config.in +++ b/fs/Config.in @@ -1,5 +1,6 @@ menu "Filesystem images" +source "fs/axfs/Config.in" source "fs/cloop/Config.in" source "fs/cpio/Config.in" source "fs/cramfs/Config.in" diff --git a/fs/axfs/Config.in b/fs/axfs/Config.in new file mode 100644 index 00000000000..8dfaffab744 --- /dev/null +++ b/fs/axfs/Config.in @@ -0,0 +1,17 @@ +config BR2_TARGET_ROOTFS_AXFS + bool "axfs root filesystem" + help + The Advanced XIP File System is a Linux kernel filesystem + driver that enables files to be executed directly from flash + or ROM memory rather than being copied into RAM. It has the + ability to store individual *pages* in a file + uncompressed/XIP or compressed/Demand Paged. + + So far, the only supported mode is 'XIP all', so all the + files that have the execute attribute set will be XIP'ed. + + At the moment, the FS is not supported in Linux mainline + (v4.3-rc5), so the kernel has to be built with the axfs + patches to be able to read it. Patches can be found at: + + https://github.com/jaredeh/axfs diff --git a/fs/axfs/axfs.mk b/fs/axfs/axfs.mk new file mode 100644 index 00000000000..05d6e5d3956 --- /dev/null +++ b/fs/axfs/axfs.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# Build the axfs root filesystem image +# +################################################################################ + +ROOTFS_AXFS_DEPENDENCIES = host-axfsutils + +define ROOTFS_AXFS_CMD + $(HOST_DIR)/usr/bin/mkfs.axfs -s -a $(TARGET_DIR) $@ +endef + +$(eval $(call ROOTFS_TARGET,axfs)) diff --git a/fs/common.mk b/fs/common.mk index b7e3ce641dd..0b6ca9ee61f 100644 --- a/fs/common.mk +++ b/fs/common.mk @@ -16,6 +16,9 @@ # ROOTFS_$(FSTYPE)_PRE_GEN_HOOKS, a list of hooks to call before # generating the filesystem image # +# ROOTFS_$(FSTYPE)_POST_GEN_HOOKS, a list of hooks to call after +# generating the filesystem image +# # ROOTFS_$(FSTYPE)_POST_TARGETS, the list of targets that should be # run after running the main filesystem target. This is useful for # initramfs, to rebuild the kernel once the initramfs is generated. @@ -75,6 +78,11 @@ $$(BINARIES_DIR)/rootfs.$(1): target-finalize $$(ROOTFS_$(2)_DEPENDENCIES) rm -f $$(USERS_TABLE) echo "set -e" >> $$(FAKEROOT_SCRIPT) echo "chown -h -R 0:0 $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT) +ifneq ($$(ROOTFS_USERS_TABLES),) + cat $$(ROOTFS_USERS_TABLES) >> $$(USERS_TABLE) +endif + printf '$$(subst $$(sep),\n,$$(PACKAGES_USERS))' >> $$(USERS_TABLE) + #PATH=$$(BR_PATH) $$(TOPDIR)/support/scripts/mkusers $$(USERS_TABLE) $$(TARGET_DIR) >> $$(FAKEROOT_SCRIPT) ifneq ($$(ROOTFS_DEVICE_TABLES),) cat $$(ROOTFS_DEVICE_TABLES) > $$(FULL_DEVICE_TABLE) ifeq ($$(BR2_ROOTFS_DEVICE_CREATION_STATIC),y) @@ -83,11 +91,6 @@ endif printf '$$(subst $$(sep),\n,$$(PACKAGES_PERMISSIONS_TABLE))' >> $$(FULL_DEVICE_TABLE) #echo "$$(HOST_DIR)/usr/bin/makedevs -d $$(FULL_DEVICE_TABLE) $$(TARGET_DIR)" >> $$(FAKEROOT_SCRIPT) endif -ifneq ($$(ROOTFS_USERS_TABLES),) - cat $$(ROOTFS_USERS_TABLES) >> $$(USERS_TABLE) -endif - printf '$$(subst $$(sep),\n,$$(PACKAGES_USERS))' >> $$(USERS_TABLE) - #PATH=$$(BR_PATH) $$(TOPDIR)/support/scripts/mkusers $$(USERS_TABLE) $$(TARGET_DIR) >> $$(FAKEROOT_SCRIPT) echo "$$(ROOTFS_$(2)_CMD)" >> $$(FAKEROOT_SCRIPT) chmod a+x $$(FAKEROOT_SCRIPT) PATH=$$(BR_PATH) $$(HOST_DIR)/usr/bin/fakeroot -- $$(FAKEROOT_SCRIPT) @@ -96,6 +99,7 @@ endif ifneq ($$(ROOTFS_$(2)_COMPRESS_CMD),) PATH=$$(BR_PATH) $$(ROOTFS_$(2)_COMPRESS_CMD) $$@ > $$@$$(ROOTFS_$(2)_COMPRESS_EXT) endif + $$(foreach hook,$$(ROOTFS_$(2)_POST_GEN_HOOKS),$$(call $$(hook))$$(sep)) rootfs-$(1)-show-depends: @echo $$(ROOTFS_$(2)_DEPENDENCIES) diff --git a/fs/ext2/Config.in b/fs/ext2/Config.in index 5b1cd0cd98e..1e7f719a8d6 100644 --- a/fs/ext2/Config.in +++ b/fs/ext2/Config.in @@ -45,13 +45,29 @@ config BR2_TARGET_ROOTFS_EXT2_LABEL string "filesystem label" config BR2_TARGET_ROOTFS_EXT2_BLOCKS - int "size in blocks (leave at 0 for auto calculation)" + int "exact size in blocks (leave at 0 for auto calculation)" default 0 config BR2_TARGET_ROOTFS_EXT2_INODES - int "inodes (leave at 0 for auto calculation)" + int "exact number of inodes (leave at 0 for auto calculation)" default 0 +config BR2_TARGET_ROOTFS_EXT2_EXTRA_BLOCKS + int "extra size in blocks" if BR2_TARGET_ROOTFS_EXT2_BLOCKS = 0 + default 0 + help + Enter here the number of extra blocks of free space you + want on your filesystem. By default, Buildroot will not + leave much space free. + +config BR2_TARGET_ROOTFS_EXT2_EXTRA_INODES + int "extra inodes" if BR2_TARGET_ROOTFS_EXT2_INODES = 0 + default 0 + help + Enter here the number of extra free inodes you want on + your filesystem. By default, Buildroot will not leave + many free inodes. + config BR2_TARGET_ROOTFS_EXT2_RESBLKS int "reserved blocks percentage" default 0 diff --git a/fs/ext2/ext2.mk b/fs/ext2/ext2.mk index cab66a5e245..7417f81cf0e 100644 --- a/fs/ext2/ext2.mk +++ b/fs/ext2/ext2.mk @@ -9,10 +9,12 @@ EXT2_OPTS = -G $(BR2_TARGET_ROOTFS_EXT2_GEN) -R $(BR2_TARGET_ROOTFS_EXT2_REV) ifneq ($(strip $(BR2_TARGET_ROOTFS_EXT2_BLOCKS)),0) EXT2_OPTS += -b $(BR2_TARGET_ROOTFS_EXT2_BLOCKS) endif +EXT2_OPTS += -B $(BR2_TARGET_ROOTFS_EXT2_EXTRA_BLOCKS) ifneq ($(strip $(BR2_TARGET_ROOTFS_EXT2_INODES)),0) EXT2_OPTS += -i $(BR2_TARGET_ROOTFS_EXT2_INODES) endif +EXT2_OPTS += -I $(BR2_TARGET_ROOTFS_EXT2_EXTRA_INODES) ifneq ($(strip $(BR2_TARGET_ROOTFS_EXT2_RESBLKS)),0) EXT2_OPTS += -r $(BR2_TARGET_ROOTFS_EXT2_RESBLKS) diff --git a/fs/iso9660/Config.in b/fs/iso9660/Config.in index 7e1ddd64ffb..2482e44e318 100644 --- a/fs/iso9660/Config.in +++ b/fs/iso9660/Config.in @@ -47,13 +47,14 @@ config BR2_TARGET_ROOTFS_ISO9660_ISOLINUX endchoice config BR2_TARGET_ROOTFS_ISO9660_BOOT_MENU - string "Boot menu.lst file" + string "Boot menu config file" default "fs/iso9660/menu.lst" if BR2_TARGET_ROOTFS_ISO9660_GRUB default "fs/iso9660/grub.cfg" if BR2_TARGET_ROOTFS_ISO9660_GRUB2 default "fs/iso9660/isolinux.cfg" if BR2_TARGET_ROOTFS_ISO9660_ISOLINUX help Use this option to provide a custom bootloader configuration - file (menu.lst for Grub, isolinux.cfg for isolinux). + file (menu.lst for Grub, grub.cfg for Grub 2, isolinux.cfg for + isolinux). Note that the strings __KERNEL_PATH__ and __INITRD_PATH__ will automatically be replaced by the path to the kernel and diff --git a/fs/romfs/romfs.mk b/fs/romfs/romfs.mk index e0ac65ff9e5..2738b6b2929 100644 --- a/fs/romfs/romfs.mk +++ b/fs/romfs/romfs.mk @@ -4,12 +4,10 @@ # ################################################################################ -ROMFS_TARGET = $(IMAGE).romfs - ROOTFS_ROMFS_DEPENDENCIES = host-genromfs define ROOTFS_ROMFS_CMD $(HOST_DIR)/usr/bin/genromfs -d $(TARGET_DIR) -f $@ endef -$(eval $(call ROOTFS_TARGET,romfs)) \ No newline at end of file +$(eval $(call ROOTFS_TARGET,romfs)) diff --git a/fs/squashfs/squashfs.mk b/fs/squashfs/squashfs.mk index 446906f10c7..a71d9cc57b5 100644 --- a/fs/squashfs/squashfs.mk +++ b/fs/squashfs/squashfs.mk @@ -7,7 +7,7 @@ ROOTFS_SQUASHFS_DEPENDENCIES = host-squashfs ifeq ($(BR2_TARGET_ROOTFS_SQUASHFS4_LZ4),y) -ROOTFS_SQUASHFS_ARGS += -comp lz4 +ROOTFS_SQUASHFS_ARGS += -comp lz4 -Xhc else ifeq ($(BR2_TARGET_ROOTFS_SQUASHFS4_LZO),y) ROOTFS_SQUASHFS_ARGS += -comp lzo diff --git a/linux/0001-timeconst.pl-Eliminate-Perl-warning.patch.conditional b/linux/0001-timeconst.pl-Eliminate-Perl-warning.patch.conditional new file mode 100644 index 00000000000..02abadd38ce --- /dev/null +++ b/linux/0001-timeconst.pl-Eliminate-Perl-warning.patch.conditional @@ -0,0 +1,45 @@ +From 63a3f603413ffe82ad775f2d62a5afff87fd94a0 Mon Sep 17 00:00:00 2001 +From: "H. Peter Anvin" +Date: Thu, 7 Feb 2013 17:14:08 -0800 +Subject: [PATCH] timeconst.pl: Eliminate Perl warning + +defined(@array) is deprecated in Perl and gives off a warning. +Restructure the code to remove that warning. + +[ hpa: it would be interesting to revert to the timeconst.bc script. + It appears that the failures reported by akpm during testing of + that script was due to a known broken version of make, not a problem + with bc. The Makefile rules could probably be restructured to avoid + the make bug, or it is probably old enough that it doesn't matter. ] + +Reported-by: Andi Kleen +Signed-off-by: H. Peter Anvin +Cc: Andrew Morton +Cc: +Signed-off-by: Gustavo Zacarias +--- +Patch status: upstream + + kernel/timeconst.pl | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/kernel/timeconst.pl b/kernel/timeconst.pl +index eb51d76..3f42652 100644 +--- a/kernel/timeconst.pl ++++ b/kernel/timeconst.pl +@@ -369,10 +369,8 @@ if ($hz eq '--can') { + die "Usage: $0 HZ\n"; + } + +- @val = @{$canned_values{$hz}}; +- if (!defined(@val)) { +- @val = compute_values($hz); +- } ++ $cv = $canned_values{$hz}; ++ @val = defined($cv) ? @$cv : compute_values($hz); + output($hz, @val); + } + exit 0; +-- +2.4.10 + diff --git a/linux/Config.ext.in b/linux/Config.ext.in index ea79aa166cc..755c23b70f9 100644 --- a/linux/Config.ext.in +++ b/linux/Config.ext.in @@ -50,7 +50,9 @@ config BR2_LINUX_KERNEL_EXT_FBTFT select BR2_PACKAGE_FBTFT help Linux Framebuffer drivers for small TFT LCD display modules, - e.g. Adafruit PiTFT displays for Raspberry Pi. + e.g. Adafruit PiTFT displays for Raspberry Pi (this extra + package is only needed for linux kernels until v3.19, since + v4.0 the drivers are included in the staging area). To enable fbtft, e.g. for Adafruit 2.8 PiTFT, enable the following kernel configurations: diff --git a/linux/Config.in b/linux/Config.in index 806c4950f13..4d0090520c7 100644 --- a/linux/Config.in +++ b/linux/Config.in @@ -8,6 +8,12 @@ config BR2_LINUX_KERNEL if BR2_LINUX_KERNEL +# Packages that need to have a kernel with support for loadable modules, +# but do not use the kernel-modules infrastructure, should select that +# option. +config BR2_LINUX_NEEDS_MODULES + bool + # # Version selection. We provide the choice between: # @@ -21,18 +27,7 @@ choice prompt "Kernel version" config BR2_LINUX_KERNEL_LATEST_VERSION - bool "4.1.4" - -config BR2_LINUX_KERNEL_SAME_AS_HEADERS - bool "Same as toolchain kernel headers" - depends on BR2_TOOLCHAIN_BUILDROOT - help - This option will re-use the same kernel sources as the one - that have been used for the kernel headers of the - cross-compiling toolchain. Having the same version for the - kernel running on the system and for the kernel headers is - not a requirement, but using the same version allows to - download only one tarball of the kernel sources. + bool "4.4.3" config BR2_LINUX_KERNEL_CUSTOM_VERSION bool "Custom version" @@ -109,8 +104,7 @@ config BR2_LINUX_KERNEL_CUSTOM_LOCAL_PATH config BR2_LINUX_KERNEL_VERSION string - default "4.1.4" if BR2_LINUX_KERNEL_LATEST_VERSION - default BR2_DEFAULT_KERNEL_HEADERS if BR2_LINUX_KERNEL_SAME_AS_HEADERS + default "4.4.3" if BR2_LINUX_KERNEL_LATEST_VERSION default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \ if BR2_LINUX_KERNEL_CUSTOM_VERSION default "custom" if BR2_LINUX_KERNEL_CUSTOM_TARBALL @@ -205,6 +199,10 @@ config BR2_LINUX_KERNEL_ZIMAGE BR2_powerpc64 || BR2_powerpc64le || BR2_sparc || \ BR2_sh || BR2_sh64 || BR2_xtensa +config BR2_LINUX_KERNEL_ZIMAGE_EPAPR + bool "zImage.epapr" + depends on BR2_powerpc64 || BR2_powerpc64le + config BR2_LINUX_KERNEL_APPENDED_ZIMAGE bool "zImage with appended DT" depends on BR2_arm || BR2_armeb @@ -225,6 +223,10 @@ config BR2_LINUX_KERNEL_SIMPLEIMAGE select BR2_LINUX_KERNEL_DTS_SUPPORT select BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT +config BR2_LINUX_KERNEL_IMAGE + bool "Image" + depends on BR2_aarch64 + config BR2_LINUX_KERNEL_LINUX_BIN bool "linux.bin" depends on BR2_microblaze @@ -241,6 +243,10 @@ config BR2_LINUX_KERNEL_VMLINUZ bool "vmlinuz" depends on BR2_mips || BR2_mipsel +config BR2_LINUX_KERNEL_VMLINUZ_BIN + bool "vmlinuz.bin" + depends on BR2_mips || BR2_mipsel + config BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM bool "custom target" help @@ -254,6 +260,34 @@ config BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM endchoice +# +# Kernel compression format +# + +choice + prompt "Kernel compression format" + help + This selection will just ensure that the correct host tools are build. + The actual compression for the kernel should be selected in the + kernel configuration menu. + +config BR2_LINUX_KERNEL_GZIP + bool "gzip compression" + +config BR2_LINUX_KERNEL_LZ4 + bool "lz4 compression" + +config BR2_LINUX_KERNEL_LZMA + bool "lzma compression" + +config BR2_LINUX_KERNEL_LZO + bool "lzo compression" + +config BR2_LINUX_KERNEL_XZ + bool "xz compression" + +endchoice + config BR2_LINUX_KERNEL_IMAGE_TARGET_NAME string "Kernel image target name" depends on BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM diff --git a/linux/linux-tool-perf.mk b/linux/linux-tool-perf.mk index 0bd0ed1a13e..1070a1c0985 100644 --- a/linux/linux-tool-perf.mk +++ b/linux/linux-tool-perf.mk @@ -27,6 +27,19 @@ PERF_MAKE_FLAGS = \ WERROR=0 \ ASCIIDOC= +# We need to pass an argument to ld for setting the endianness when +# building it for MIPS architecture, otherwise the default one will +# always be used (which is big endian) and the compilation for little +# endian will always fail showing an error like this one: +# LD foo.o +# mips-linux-gnu-ld: foo.o: compiled for a little endian system and +# target is big endian +ifeq ($(BR2_mips)$(BR2_mips64),y) +PERF_MAKE_FLAGS += LD="$(TARGET_LD) -EB" +else ifeq ($(BR2_mipsel)$(BR2_mips64el),y) +PERF_MAKE_FLAGS += LD="$(TARGET_LD) -EL" +endif + # The call to backtrace() function fails for ARC, because for some # reason the unwinder from libgcc returns early. Thus the usage of # backtrace() should be disabled in perf explicitly: at build time @@ -84,4 +97,5 @@ define PERF_INSTALL_TARGET_CMDS $(TARGET_MAKE_ENV) $(MAKE1) $(PERF_MAKE_FLAGS) \ -C $(@D)/tools/perf O=$(@D)/tools/perf/ install $(RM) -rf $(TARGET_DIR)/usr/libexec/perf-core/scripts/ + $(RM) -rf $(TARGET_DIR)/usr/libexec/perf-core/tests/ endef diff --git a/linux/linux.mk b/linux/linux.mk index d91dbb2df4d..7e202559564 100644 --- a/linux/linux.mk +++ b/linux/linux.mk @@ -28,9 +28,6 @@ LINUX_SOURCE = linux-$(LINUX_VERSION).tar.xz ifeq ($(BR2_LINUX_KERNEL_CUSTOM_VERSION),y) BR_NO_CHECK_HASH_FOR += $(LINUX_SOURCE) endif -ifeq ($(BR2_LINUX_KERNEL_SAME_AS_HEADERS)$(BR2_KERNEL_HEADERS_VERSION),yy) -BR_NO_CHECK_HASH_FOR += $(LINUX_SOURCE) -endif # In X.Y.Z, get X and Y. We replace dots and dashes by spaces in order # to use the $(word) function. We support versions such as 4.0, 3.1, # 2.6.32, 2.6.32-rc1, 3.0-rc6, etc. @@ -56,7 +53,23 @@ LINUX_PATCHES = $(call qstrip,$(BR2_LINUX_KERNEL_PATCH)) LINUX_PATCH = $(filter ftp://% http://% https://%,$(LINUX_PATCHES)) LINUX_INSTALL_IMAGES = YES -LINUX_DEPENDENCIES += host-kmod host-lzop +LINUX_DEPENDENCIES += host-kmod + +# host tools needed for kernel compression +ifeq ($(BR2_LINUX_KERNEL_LZ4),y) +LINUX_DEPENDENCIES += host-lz4 +else ifeq ($(BR2_LINUX_KERNEL_LZMA),y) +LINUX_DEPENDENCIES += host-lzma +else ifeq ($(BR2_LINUX_KERNEL_LZO),y) +LINUX_DEPENDENCIES += host-lzop +else ifeq ($(BR2_LINUX_KERNEL_XZ),y) +LINUX_DEPENDENCIES += host-xz +endif +LINUX_COMPRESSION_OPT_$(BR2_LINUX_KERNEL_GZIP) = CONFIG_KERNEL_GZIP +LINUX_COMPRESSION_OPT_$(BR2_LINUX_KERNEL_LZ4) = CONFIG_KERNEL_LZ4 +LINUX_COMPRESSION_OPT_$(BR2_LINUX_KERNEL_LZMA) = CONFIG_KERNEL_LZMA +LINUX_COMPRESSION_OPT_$(BR2_LINUX_KERNEL_LZO) = CONFIG_KERNEL_LZO +LINUX_COMPRESSION_OPT_$(BR2_LINUX_KERNEL_XZ) = CONFIG_KERNEL_XZ ifeq ($(BR2_LINUX_KERNEL_UBOOT_IMAGE),y) LINUX_DEPENDENCIES += host-uboot-tools @@ -67,7 +80,7 @@ LINUX_MAKE_FLAGS = \ HOSTCFLAGS="$(HOSTCFLAGS)" \ ARCH=$(KERNEL_ARCH) \ INSTALL_MOD_PATH=$(TARGET_DIR) \ - CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ DEPMOD=$(HOST_DIR)/sbin/depmod LINUX_MAKE_ENV = \ @@ -105,12 +118,16 @@ else ifeq ($(BR2_LINUX_KERNEL_BZIMAGE),y) LINUX_IMAGE_NAME = bzImage else ifeq ($(BR2_LINUX_KERNEL_ZIMAGE),y) LINUX_IMAGE_NAME = zImage +else ifeq ($(BR2_LINUX_KERNEL_ZIMAGE_EPAPR),y) +LINUX_IMAGE_NAME = zImage.epapr else ifeq ($(BR2_LINUX_KERNEL_APPENDED_ZIMAGE),y) LINUX_IMAGE_NAME = zImage else ifeq ($(BR2_LINUX_KERNEL_CUIMAGE),y) LINUX_IMAGE_NAME = cuImage.$(KERNEL_DTS_NAME) else ifeq ($(BR2_LINUX_KERNEL_SIMPLEIMAGE),y) LINUX_IMAGE_NAME = simpleImage.$(KERNEL_DTS_NAME) +else ifeq ($(BR2_LINUX_KERNEL_IMAGE),y) +LINUX_IMAGE_NAME = Image else ifeq ($(BR2_LINUX_KERNEL_LINUX_BIN),y) LINUX_IMAGE_NAME = linux.bin else ifeq ($(BR2_LINUX_KERNEL_VMLINUX_BIN),y) @@ -119,6 +136,8 @@ else ifeq ($(BR2_LINUX_KERNEL_VMLINUX),y) LINUX_IMAGE_NAME = vmlinux else ifeq ($(BR2_LINUX_KERNEL_VMLINUZ),y) LINUX_IMAGE_NAME = vmlinuz +else ifeq ($(BR2_LINUX_KERNEL_VMLINUZ_BIN),y) +LINUX_IMAGE_NAME = vmlinuz.bin endif # The if-else blocks above are all the image types we know of, and all # come from a Kconfig choice, so we know we have LINUX_IMAGE_NAME set @@ -147,6 +166,8 @@ ifeq ($(BR2_LINUX_KERNEL_VMLINUX),y) LINUX_IMAGE_PATH = $(LINUX_DIR)/$(LINUX_IMAGE_NAME) else ifeq ($(BR2_LINUX_KERNEL_VMLINUZ),y) LINUX_IMAGE_PATH = $(LINUX_DIR)/$(LINUX_IMAGE_NAME) +else ifeq ($(BR2_LINUX_KERNEL_VMLINUZ_BIN),y) +LINUX_IMAGE_PATH = $(LINUX_DIR)/$(LINUX_IMAGE_NAME) else LINUX_IMAGE_PATH = $(KERNEL_ARCH_PATH)/boot/$(LINUX_IMAGE_NAME) endif # BR2_LINUX_KERNEL_VMLINUX @@ -163,18 +184,35 @@ endef LINUX_POST_PATCH_HOOKS += LINUX_APPLY_LOCAL_PATCHES +# Older linux kernels use deprecated perl constructs in timeconst.pl +# that were removed for perl 5.22+ so it breaks on newer distributions +# Try a dry-run patch to see if this applies, if it does go ahead +define LINUX_TRY_PATCH_TIMECONST + @if patch -p1 --dry-run -f -s -d $(@D) <$(LINUX_PKGDIR)/0001-timeconst.pl-Eliminate-Perl-warning.patch.conditional >/dev/null ; then \ + $(APPLY_PATCHES) $(@D) $(LINUX_PKGDIR) 0001-timeconst.pl-Eliminate-Perl-warning.patch.conditional ; \ + fi +endef +LINUX_POST_PATCH_HOOKS += LINUX_TRY_PATCH_TIMECONST + ifeq ($(BR2_LINUX_KERNEL_USE_DEFCONFIG),y) -KERNEL_SOURCE_CONFIG = $(KERNEL_ARCH_PATH)/configs/$(call qstrip,$(BR2_LINUX_KERNEL_DEFCONFIG))_defconfig +LINUX_KCONFIG_DEFCONFIG = $(call qstrip,$(BR2_LINUX_KERNEL_DEFCONFIG))_defconfig else ifeq ($(BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG),y) -KERNEL_SOURCE_CONFIG = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE)) +LINUX_KCONFIG_FILE = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE)) endif - -LINUX_KCONFIG_FILE = $(KERNEL_SOURCE_CONFIG) LINUX_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES)) LINUX_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig LINUX_KCONFIG_OPTS = $(LINUX_MAKE_FLAGS) +# If no package has yet set it, set it from the Kconfig option +LINUX_NEEDS_MODULES ?= $(BR2_LINUX_NEEDS_MODULES) + define LINUX_KCONFIG_FIXUP_CMDS + $(if $(LINUX_NEEDS_MODULES), + $(call KCONFIG_ENABLE_OPT,CONFIG_MODULES,$(@D)/.config)) + $(call KCONFIG_ENABLE_OPT,$(LINUX_COMPRESSION_OPT_y),$(@D)/.config) + $(foreach opt, $(LINUX_COMPRESSION_OPT_), + $(call KCONFIG_DISABLE_OPT,$(opt),$(@D)/.config) + ) $(if $(BR2_arm)$(BR2_armeb), $(call KCONFIG_ENABLE_OPT,CONFIG_AEABI,$(@D)/.config)) $(if $(BR2_TARGET_ROOTFS_CPIO), @@ -215,10 +253,13 @@ define LINUX_KCONFIG_FIXUP_CMDS $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER,$(@D)/.config) $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER_XTABLES,$(@D)/.config)) $(if $(BR2_PACKAGE_XTABLES_ADDONS), + $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER_ADVANCED,$(@D)/.config) $(call KCONFIG_ENABLE_OPT,CONFIG_NF_CONNTRACK,$(@D)/.config) $(call KCONFIG_ENABLE_OPT,CONFIG_NF_CONNTRACK_MARK,$(@D)/.config)) $(if $(BR2_LINUX_KERNEL_APPENDED_DTB), $(call KCONFIG_ENABLE_OPT,CONFIG_ARM_APPENDED_DTB,$(@D)/.config)) + $(if $(BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV), + $(call KCONFIG_DISABLE_OPT,CONFIG_MXC_GPU_VIV,$(@D)/.config)) endef ifeq ($(BR2_LINUX_KERNEL_DTS_SUPPORT),y) @@ -226,31 +267,30 @@ ifeq ($(BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT),) define LINUX_BUILD_DTB $(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(KERNEL_DTBS) endef +ifeq ($(BR2_LINUX_KERNEL_APPENDED_DTB),) define LINUX_INSTALL_DTB # dtbs moved from arch//boot to arch//boot/dts since 3.8-rc1 cp $(addprefix \ $(KERNEL_ARCH_PATH)/boot/$(if $(wildcard \ $(addprefix $(KERNEL_ARCH_PATH)/boot/dts/,$(KERNEL_DTBS))),dts/),$(KERNEL_DTBS)) \ - $(BINARIES_DIR)/ -endef -define LINUX_INSTALL_DTB_TARGET - # dtbs moved from arch//boot to arch//boot/dts since 3.8-rc1 - cp $(addprefix \ - $(KERNEL_ARCH_PATH)/boot/$(if $(wildcard \ - $(addprefix $(KERNEL_ARCH_PATH)/boot/dts/,$(KERNEL_DTBS))),dts/),$(KERNEL_DTBS)) \ - $(TARGET_DIR)/boot/ + $(1) endef -endif -endif +endif # BR2_LINUX_KERNEL_APPENDED_DTB +endif # BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT +endif # BR2_LINUX_KERNEL_DTS_SUPPORT ifeq ($(BR2_LINUX_KERNEL_APPENDED_DTB),y) # dtbs moved from arch/$ARCH/boot to arch/$ARCH/boot/dts since 3.8-rc1 define LINUX_APPEND_DTB - if [ -e $(KERNEL_ARCH_PATH)/boot/$(KERNEL_DTS_NAME).dtb ]; then \ - cat $(KERNEL_ARCH_PATH)/boot/$(KERNEL_DTS_NAME).dtb; \ - else \ - cat $(KERNEL_ARCH_PATH)/boot/dts/$(KERNEL_DTS_NAME).dtb; \ - fi >> $(KERNEL_ARCH_PATH)/boot/zImage + (cd $(KERNEL_ARCH_PATH)/boot; \ + for dtb in $(KERNEL_DTS_NAME); do \ + if test -e $${dtb}.dtb ; then \ + dtbpath=$${dtb}.dtb ; \ + else \ + dtbpath=dts/$${dtb}.dtb ; \ + fi ; \ + cat zImage $${dtbpath} > zImage.$${dtb} || exit 1; \ + done) endef ifeq ($(BR2_LINUX_KERNEL_APPENDED_UIMAGE),y) # We need to generate a new u-boot image that takes into @@ -258,11 +298,14 @@ ifeq ($(BR2_LINUX_KERNEL_APPENDED_UIMAGE),y) # of the image. To do so, we first need to retrieve both load # address and entry point for the kernel from the already # generate uboot image before using mkimage -l. -LINUX_APPEND_DTB += $(sep) MKIMAGE_ARGS=`$(MKIMAGE) -l $(LINUX_IMAGE_PATH) |\ +LINUX_APPEND_DTB += ; \ + MKIMAGE_ARGS=`$(MKIMAGE) -l $(LINUX_IMAGE_PATH) |\ sed -n -e 's/Image Name:[ ]*\(.*\)/-n \1/p' -e 's/Load Address:/-a/p' -e 's/Entry Point:/-e/p'`; \ - $(MKIMAGE) -A $(MKIMAGE_ARCH) -O linux \ - -T kernel -C none $${MKIMAGE_ARGS} \ - -d $(KERNEL_ARCH_PATH)/boot/zImage $(LINUX_IMAGE_PATH); + for dtb in $(KERNEL_DTS_NAME); do \ + $(MKIMAGE) -A $(MKIMAGE_ARCH) -O linux \ + -T kernel -C none $${MKIMAGE_ARGS} \ + -d $(KERNEL_ARCH_PATH)/boot/zImage.$${dtb} $(LINUX_IMAGE_PATH).$${dtb}; \ + done endif endif @@ -270,7 +313,7 @@ endif # configuration has changed. define LINUX_BUILD_CMDS $(if $(BR2_LINUX_KERNEL_USE_CUSTOM_DTS), - cp $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)) $(KERNEL_ARCH_PATH)/boot/dts/) + cp -f $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_DTS_PATH)) $(KERNEL_ARCH_PATH)/boot/dts/) $(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) $(LINUX_TARGET_NAME) @if grep -q "CONFIG_MODULES=y" $(@D)/.config; then \ $(LINUX_MAKE_ENV) $(MAKE) $(LINUX_MAKE_FLAGS) -C $(@D) modules ; \ @@ -279,26 +322,39 @@ define LINUX_BUILD_CMDS $(LINUX_APPEND_DTB) endef +ifeq ($(BR2_LINUX_KERNEL_APPENDED_DTB),y) +# When a DTB was appended, install the potential several images with +# appended DTBs. +define LINUX_INSTALL_IMAGE + mkdir -p $(1) + cp $(KERNEL_ARCH_PATH)/boot/$(LINUX_IMAGE_NAME).* $(1) +endef +else +# Otherwise, just install the unique image generated by the kernel +# build process. +define LINUX_INSTALL_IMAGE + $(INSTALL) -m 0644 -D $(LINUX_IMAGE_PATH) $(1)/$(LINUX_IMAGE_NAME) +endef +endif ifeq ($(BR2_LINUX_KERNEL_INSTALL_TARGET),y) define LINUX_INSTALL_KERNEL_IMAGE_TO_TARGET - install -m 0644 -D $(LINUX_IMAGE_PATH) $(TARGET_DIR)/boot/$(LINUX_IMAGE_NAME) - $(LINUX_INSTALL_DTB_TARGET) + $(call LINUX_INSTALL_IMAGE,$(TARGET_DIR)/boot) + $(call LINUX_INSTALL_DTB,$(TARGET_DIR)/boot) endef endif - define LINUX_INSTALL_HOST_TOOLS # Installing dtc (device tree compiler) as host tool, if selected if grep -q "CONFIG_DTC=y" $(@D)/.config; then \ - $(INSTALL) -D -m 0755 $(@D)/scripts/dtc/dtc $(HOST_DIR)/usr/bin/dtc ; \ + $(INSTALL) -D -m 0755 $(@D)/scripts/dtc/dtc $(HOST_DIR)/usr/bin/linux-dtc ; \ fi endef define LINUX_INSTALL_IMAGES_CMDS - cp $(LINUX_IMAGE_PATH) $(BINARIES_DIR) - $(LINUX_INSTALL_DTB) + $(call LINUX_INSTALL_IMAGE,$(BINARIES_DIR)) + $(call LINUX_INSTALL_DTB,$(BINARIES_DIR)) endef define LINUX_INSTALL_TARGET_CMDS @@ -358,13 +414,16 @@ LINUX_POST_INSTALL_TARGET_HOOKS += $(foreach tool,$(LINUX_TOOLS),\ ifeq ($(BR_BUILDING),y) ifeq ($(BR2_LINUX_KERNEL_USE_DEFCONFIG),y) +# We must use the user-supplied kconfig value, because +# LINUX_KCONFIG_DEFCONFIG will at least contain the +# trailing _defconfig ifeq ($(call qstrip,$(BR2_LINUX_KERNEL_DEFCONFIG)),) $(error No kernel defconfig name specified, check your BR2_LINUX_KERNEL_DEFCONFIG setting) endif endif ifeq ($(BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG),y) -ifeq ($(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE)),) +ifeq ($(LINUX_KCONFIG_FILE),) $(error No kernel configuration file specified, check your BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE setting) endif endif @@ -374,13 +433,6 @@ $(error No kernel device tree source specified, check your \ BR2_LINUX_KERNEL_USE_INTREE_DTS / BR2_LINUX_KERNEL_USE_CUSTOM_DTS settings) endif -ifeq ($(BR2_LINUX_KERNEL_APPENDED_DTB),y) -ifneq ($(words $(KERNEL_DTS_NAME)),1) -$(error Kernel with appended device tree needs exactly one DTS source. \ - Check BR2_LINUX_KERNEL_INTREE_DTS_NAME or BR2_LINUX_KERNEL_CUSTOM_DTS_PATH.) -endif -endif - endif # BR_BUILDING $(eval $(kconfig-package)) diff --git a/package/Config.in b/package/Config.in index ed97f269d92..b4e23ee510e 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1,13 +1,14 @@ menu "Target packages" - source "package/skeleton/Config.in" source "package/busybox/Config.in" + source "package/skeleton/Config.in" source "package/motioneye/Config.in" menu "Audio and video applications" source "package/alsa-utils/Config.in" source "package/aumix/Config.in" source "package/bellagio/Config.in" + source "package/dvblast/Config.in" source "package/dvdauthor/Config.in" source "package/dvdrw-tools/Config.in" source "package/espeak/Config.in" @@ -20,9 +21,9 @@ menu "Audio and video applications" source "package/jack2/Config.in" source "package/kodi/Config.in" source "package/lame/Config.in" - source "package/libvpx/Config.in" source "package/libwebcam/Config.in" source "package/madplay/Config.in" + source "package/miraclecast/Config.in" source "package/mjpegtools/Config.in" source "package/motion/Config.in" source "package/motion-mmal/Config.in" @@ -39,11 +40,13 @@ menu "Audio and video applications" source "package/pulseaudio/Config.in" source "package/sox/Config.in" source "package/streameye/Config.in" + source "package/squeezelite/Config.in" source "package/tidsp-binaries/Config.in" source "package/tovid/Config.in" source "package/tstools/Config.in" source "package/twolame/Config.in" source "package/upmpdcli/Config.in" + source "package/v4l2grab/Config.in" source "package/vlc/Config.in" source "package/vorbis-tools/Config.in" source "package/wavpack/Config.in" @@ -56,11 +59,15 @@ menu "Compressors and decompressors" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/gzip/Config.in" endif - source "package/infozip/Config.in" source "package/lz4/Config.in" source "package/lzip/Config.in" source "package/lzop/Config.in" + source "package/unrar/Config.in" +if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS + source "package/unzip/Config.in" +endif source "package/xz/Config.in" + source "package/zip/Config.in" endmenu menu "Debugging, profiling and benchmark" @@ -93,6 +100,7 @@ endif source "package/mcelog/Config.in" source "package/memstat/Config.in" source "package/netperf/Config.in" + source "package/netsniff-ng/Config.in" source "package/oprofile/Config.in" source "package/pax-utils/Config.in" source "package/pv/Config.in" @@ -103,6 +111,7 @@ endif source "package/spidev_test/Config.in" source "package/strace/Config.in" source "package/stress/Config.in" + source "package/stress-ng/Config.in" source "package/sysdig/Config.in" source "package/sysprof/Config.in" source "package/tinymembench/Config.in" @@ -116,11 +125,14 @@ menu "Development tools" source "package/binutils/Config.in" source "package/bsdiff/Config.in" source "package/bustle/Config.in" + source "package/check/Config.in" source "package/cmake/Config.in" source "package/cppunit/Config.in" source "package/cvs/Config.in" + source "package/cxxtest/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/diffutils/Config.in" + source "package/dos2unix/Config.in" source "package/findutils/Config.in" endif source "package/flex/Config.in" @@ -146,14 +158,12 @@ if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS endif source "package/sstrip/Config.in" source "package/subversion/Config.in" -if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS - source "package/tar/Config.in" -endif source "package/tree/Config.in" source "package/yasm/Config.in" endmenu menu "Filesystem and flash utilities" + source "package/autofs/Config.in" source "package/btrfs-progs/Config.in" source "package/cifs-utils/Config.in" source "package/cpio/Config.in" @@ -170,7 +180,6 @@ menu "Filesystem and flash utilities" source "package/genext2fs/Config.in" source "package/genpart/Config.in" source "package/genromfs/Config.in" - source "package/kobs-ng/Config.in" source "package/makedevs/Config.in" source "package/mmc-utils/Config.in" source "package/mtd/Config.in" @@ -178,6 +187,7 @@ menu "Filesystem and flash utilities" source "package/nfs-utils/Config.in" source "package/ntfs-3g/Config.in" source "package/simicsfs/Config.in" + source "package/sp-oops-extract/Config.in" source "package/squashfs/Config.in" source "package/sshfs/Config.in" source "package/sunxi-tools/Config.in" @@ -185,10 +195,15 @@ menu "Filesystem and flash utilities" source "package/xfsprogs/Config.in" endmenu -menu "Fonts, icons, sounds and themes" +menu "Fonts, cursors, icons, sounds and themes" + +comment "Cursors" + source "package/comix-cursors/Config.in" + source "package/obsidian-cursors/Config.in" comment "Fonts" source "package/bitstream-vera/Config.in" + source "package/cantarell/Config.in" source "package/dejavu/Config.in" source "package/ghostscript-fonts/Config.in" source "package/inconsolata/Config.in" @@ -209,6 +224,7 @@ comment "Themes" endmenu menu "Games" + source "package/chocolate-doom/Config.in" source "package/doom-wad/Config.in" source "package/gnuchess/Config.in" source "package/lbreakout2/Config.in" @@ -223,6 +239,7 @@ endmenu menu "Graphic libraries and applications (graphic/text)" comment "Graphic applications" + source "package/expedite/Config.in" source "package/fswebcam/Config.in" source "package/glmark2/Config.in" source "package/gnuplot/Config.in" @@ -235,7 +252,8 @@ comment "Graphic libraries" source "package/cegui06/Config.in" source "package/directfb/Config.in" source "package/directfb-examples/Config.in" - source "package/divine/Config.in" + source "package/efl/Config.in" + source "package/elementary/Config.in" source "package/fbdump/Config.in" source "package/fbgrab/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS @@ -252,7 +270,6 @@ endif source "package/mesa3d-headers/Config.in" source "package/ocrad/Config.in" source "package/psplash/Config.in" - source "package/sawman/Config.in" source "package/sdl/Config.in" source "package/sdl_gfx/Config.in" source "package/sdl_image/Config.in" @@ -260,9 +277,9 @@ endif source "package/sdl_net/Config.in" source "package/sdl_sound/Config.in" source "package/sdl_ttf/Config.in" + source "package/sdl2/Config.in" comment "Other GUIs" - source "package/efl/Config.in" source "package/qt/Config.in" source "package/qt5/Config.in" if BR2_PACKAGE_QT || BR2_PACKAGE_QT5 @@ -295,20 +312,22 @@ comment "X applications" source "package/torsmo/Config.in" source "package/wmctrl/Config.in" source "package/x11vnc/Config.in" + source "package/xdotool/Config.in" source "package/xscreensaver/Config.in" source "package/xterm/Config.in" source "package/xvkbd/Config.in" + source "package/yad/Config.in" comment "X libraries and helper libraries" source "package/libsexy/Config.in" source "package/x11r7/xkeyboard-config/Config.in" comment "X window managers" - source "package/blackbox/Config.in" source "package/enlightenment/Config.in" source "package/fluxbox/Config.in" source "package/matchbox/Config.in" source "package/metacity/Config.in" + source "package/openbox/Config.in" endmenu menu "Hardware handling" @@ -344,6 +363,7 @@ endif source "package/dtv-scan-tables/Config.in" source "package/dvb-apps/Config.in" source "package/dvbsnoop/Config.in" + source "package/edid-decode/Config.in" source "package/eeprog/Config.in" source "package/eudev/Config.in" source "package/evemu/Config.in" @@ -373,6 +393,7 @@ endif source "package/iostat/Config.in" source "package/ipmitool/Config.in" source "package/ipmiutil/Config.in" + source "package/iqvlinux/Config.in" source "package/irda-utils/Config.in" source "package/iucode-tool/Config.in" source "package/kbd/Config.in" @@ -385,7 +406,6 @@ endif source "package/lsuio/Config.in" source "package/lvm2/Config.in" source "package/mdadm/Config.in" - source "package/media-ctl/Config.in" source "package/memtest86/Config.in" source "package/memtester/Config.in" source "package/minicom/Config.in" @@ -409,6 +429,7 @@ endif source "package/pps-tools/Config.in" source "package/pulseview/Config.in" source "package/read-edid/Config.in" + source "package/rfkill/Config.in" source "package/rng-tools/Config.in" source "package/rpi-armmem/Config.in" source "package/rpi-userland/Config.in" @@ -423,6 +444,7 @@ endif source "package/smartmontools/Config.in" source "package/smstools3/Config.in" source "package/snowball-hdmiservice/Config.in" + source "package/spi-tools/Config.in" source "package/sredird/Config.in" source "package/statserial/Config.in" source "package/stm32flash/Config.in" @@ -436,6 +458,7 @@ endif source "package/ti-utils/Config.in" source "package/triggerhappy/Config.in" source "package/uboot-tools/Config.in" + source "package/ubus/Config.in" source "package/udev/Config.in" source "package/udisks/Config.in" source "package/usb_modeswitch/Config.in" @@ -467,6 +490,7 @@ menu "Erlang libraries/modules" source "package/erlang-p1-zlib/Config.in" endmenu endif + source "package/gauche/Config.in" source "package/guile/Config.in" source "package/haserl/Config.in" source "package/jamvm/Config.in" @@ -511,6 +535,8 @@ menu "Lua libraries/modules" source "package/luasocket/Config.in" source "package/luasql-sqlite3/Config.in" source "package/lunit/Config.in" + source "package/luv/Config.in" + source "package/luvi/Config.in" source "package/lzlib/Config.in" source "package/orbit/Config.in" source "package/rings/Config.in" @@ -519,6 +545,8 @@ menu "Lua libraries/modules" endmenu endif source "package/lutok/Config.in" + source "package/micropython/Config.in" + source "package/micropython-lib/Config.in" source "package/moarvm/Config.in" source "package/mono/Config.in" if BR2_PACKAGE_MONO @@ -595,31 +623,40 @@ endif source "package/python/Config.in" source "package/python3/Config.in" if BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 -menu "external python modules" +menu "External python modules" source "package/python-alsaaudio/Config.in" + source "package/python-backports-abc/Config.in" + source "package/python-beautifulsoup4/Config.in" source "package/python-bottle/Config.in" source "package/python-can/Config.in" + source "package/python-cbor/Config.in" source "package/python-certifi/Config.in" source "package/python-cffi/Config.in" source "package/python-cheetah/Config.in" source "package/python-cherrypy/Config.in" + source "package/python-click/Config.in" source "package/python-coherence/Config.in" source "package/python-configobj/Config.in" source "package/python-configshell-fb/Config.in" source "package/python-crc16/Config.in" + source "package/python-cssselect/Config.in" source "package/python-daemon/Config.in" source "package/python-dialog/Config.in" source "package/python-django/Config.in" source "package/python-docopt/Config.in" source "package/python-dpkt/Config.in" + source "package/python-ecdsa/Config.in" source "package/python-enum/Config.in" source "package/python-enum34/Config.in" source "package/python-flask/Config.in" source "package/python-flup/Config.in" source "package/python-gobject/Config.in" + source "package/python-html5lib/Config.in" source "package/python-httplib2/Config.in" source "package/python-id3/Config.in" + source "package/python-idna/Config.in" source "package/python-ipaddr/Config.in" + source "package/python-ipaddress/Config.in" source "package/python-ipy/Config.in" source "package/python-ipython/Config.in" source "package/python-itsdangerous/Config.in" @@ -628,17 +665,21 @@ menu "external python modules" source "package/python-keyring/Config.in" source "package/python-libconfig/Config.in" source "package/python-lxml/Config.in" - source "package/python-mako/Config.in" source "package/python-mad/Config.in" + source "package/python-mako/Config.in" source "package/python-markdown/Config.in" source "package/python-markupsafe/Config.in" source "package/python-meld3/Config.in" + source "package/python-mistune/Config.in" source "package/python-msgpack/Config.in" + source "package/python-netaddr/Config.in" source "package/python-netifaces/Config.in" source "package/python-networkmanager/Config.in" source "package/python-nfc/Config.in" source "package/python-numpy/Config.in" + source "package/python-paho-mqtt/Config.in" source "package/python-pam/Config.in" + source "package/python-paramiko/Config.in" source "package/python-picamera/Config.in" source "package/python-pillow/Config.in" source "package/python-posix-ipc/Config.in" @@ -653,17 +694,21 @@ menu "external python modules" source "package/python-pygame/Config.in" source "package/python-pyinotify/Config.in" source "package/python-pyparsing/Config.in" + source "package/python-pyparted/Config.in" source "package/python-pypcap/Config.in" source "package/python-pyqt/Config.in" + source "package/python-pyratemp/Config.in" source "package/python-pyro/Config.in" + source "package/python-pyroute2/Config.in" source "package/python-pysendfile/Config.in" + source "package/python-pysmb/Config.in" source "package/python-pysnmp/Config.in" source "package/python-pysnmp-apps/Config.in" source "package/python-pysnmp-mibs/Config.in" source "package/python-pytz/Config.in" + source "package/python-pyudev/Config.in" source "package/python-pyusb/Config.in" source "package/python-pyxb/Config.in" - source "package/python-pyxml/Config.in" source "package/python-pyyaml/Config.in" source "package/python-pyzmq/Config.in" source "package/python-requests/Config.in" @@ -672,12 +717,15 @@ menu "external python modules" source "package/python-serial/Config.in" source "package/python-setuptools/Config.in" source "package/python-simplejson/Config.in" + source "package/python-singledispatch/Config.in" source "package/python-sip/Config.in" source "package/python-six/Config.in" + source "package/python-smbus-cffi/Config.in" source "package/python-spidev/Config.in" source "package/python-thrift/Config.in" source "package/python-tornado/Config.in" source "package/python-twisted/Config.in" + source "package/python-urllib3/Config.in" source "package/python-urwid/Config.in" source "package/python-versiontools/Config.in" source "package/python-web2py/Config.in" @@ -690,7 +738,7 @@ endif source "package/ruby/Config.in" source "package/tcl/Config.in" if BR2_PACKAGE_TCL -menu "tcl libraries/modules" +menu "Tcl libraries/modules" source "package/expect/Config.in" source "package/tcllib/Config.in" endmenu @@ -705,11 +753,17 @@ menu "Audio/Sound" source "package/celt051/Config.in" source "package/fdk-aac/Config.in" source "package/libao/Config.in" + source "package/libasplib/Config.in" + source "package/libbroadvoice/Config.in" source "package/libcdaudio/Config.in" + source "package/libcddb/Config.in" source "package/libcdio/Config.in" + source "package/libcodec2/Config.in" source "package/libcue/Config.in" source "package/libcuefile/Config.in" + source "package/libg7221/Config.in" source "package/libid3tag/Config.in" + source "package/libilbc/Config.in" source "package/liblo/Config.in" source "package/libmad/Config.in" source "package/libmodplug/Config.in" @@ -718,14 +772,18 @@ menu "Audio/Sound" source "package/libreplaygain/Config.in" source "package/libsamplerate/Config.in" source "package/libsidplay2/Config.in" + source "package/libsilk/Config.in" source "package/libsndfile/Config.in" + source "package/libsoundtouch/Config.in" source "package/libsoxr/Config.in" source "package/libvorbis/Config.in" source "package/mp4v2/Config.in" + source "package/openal/Config.in" source "package/opencore-amr/Config.in" source "package/opus/Config.in" source "package/opusfile/Config.in" source "package/portaudio/Config.in" + source "package/sbc/Config.in" source "package/speex/Config.in" source "package/taglib/Config.in" source "package/tinyalsa/Config.in" @@ -736,9 +794,10 @@ endmenu menu "Compression and decompression" source "package/libarchive/Config.in" - source "package/libzip/Config.in" source "package/libsquish/Config.in" + source "package/libzip/Config.in" source "package/lzo/Config.in" + source "package/minizip/Config.in" source "package/snappy/Config.in" source "package/szip/Config.in" source "package/zlib/Config.in" @@ -749,6 +808,7 @@ menu "Crypto" source "package/botan/Config.in" source "package/ca-certificates/Config.in" source "package/cryptodev/Config.in" + source "package/gcr/Config.in" source "package/gnutls/Config.in" source "package/libassuan/Config.in" source "package/libgcrypt/Config.in" @@ -761,17 +821,23 @@ menu "Crypto" source "package/libsecret/Config.in" source "package/libsha1/Config.in" source "package/libsodium/Config.in" + source "package/libssh/Config.in" source "package/libssh2/Config.in" + source "package/libuecc/Config.in" + source "package/mbedtls/Config.in" source "package/nettle/Config.in" source "package/openssl/Config.in" source "package/polarssl/Config.in" + source "package/trousers/Config.in" endmenu menu "Database" source "package/berkeleydb/Config.in" source "package/cppdb/Config.in" source "package/gdbm/Config.in" + source "package/kompexsqlite/Config.in" source "package/leveldb/Config.in" + source "package/mongodb/Config.in" source "package/mysql/Config.in" source "package/postgresql/Config.in" source "package/redis/Config.in" @@ -792,9 +858,12 @@ menu "Filesystem" endmenu menu "Graphics" + source "package/assimp/Config.in" source "package/atk/Config.in" + source "package/atkmm/Config.in" source "package/bullet/Config.in" source "package/cairo/Config.in" + source "package/cairomm/Config.in" source "package/exiv2/Config.in" source "package/fltk/Config.in" source "package/fontconfig/Config.in" @@ -803,6 +872,8 @@ menu "Graphics" source "package/gdk-pixbuf/Config.in" source "package/giblib/Config.in" source "package/giflib/Config.in" + source "package/graphite2/Config.in" + source "package/gtkmm3/Config.in" source "package/harfbuzz/Config.in" source "package/ijs/Config.in" source "package/imlib2/Config.in" @@ -814,33 +885,40 @@ menu "Graphics" source "package/libdmtx/Config.in" source "package/libdri2/Config.in" source "package/libdrm/Config.in" + source "package/libevas-generic-loaders/Config.in" source "package/libexif/Config.in" source "package/libfm/Config.in" source "package/libfm-extra/Config.in" + source "package/libfreeglut/Config.in" source "package/libfreeimage/Config.in" source "package/libgail/Config.in" + source "package/libgdiplus/Config.in" source "package/libgeotiff/Config.in" source "package/libglade/Config.in" source "package/libglew/Config.in" + source "package/libglfw/Config.in" source "package/libglu/Config.in" source "package/libgtk2/Config.in" source "package/libgtk3/Config.in" + source "package/libmng/Config.in" source "package/libpng/Config.in" source "package/libqrencode/Config.in" source "package/libraw/Config.in" source "package/librsvg/Config.in" + source "package/libsoil/Config.in" source "package/libsvg/Config.in" source "package/libsvg-cairo/Config.in" source "package/libsvgtiny/Config.in" - source "package/libungif/Config.in" source "package/libva/Config.in" source "package/libva-intel-driver/Config.in" source "package/libvips/Config.in" source "package/menu-cache/Config.in" source "package/opencv/Config.in" + source "package/opencv3/Config.in" source "package/opengl/Config.in" source "package/openjpeg/Config.in" source "package/pango/Config.in" + source "package/pangomm/Config.in" source "package/pixman/Config.in" source "package/poppler/Config.in" source "package/powervr/Config.in" @@ -849,14 +927,18 @@ menu "Graphics" source "package/webkit/Config.in" source "package/webkitgtk24/Config.in" source "package/webp/Config.in" - source "package/zxing/Config.in" + source "package/zbar/Config.in" + source "package/zxing-cpp/Config.in" endmenu menu "Hardware handling" + source "package/acsccid/Config.in" + source "package/bcm2835/Config.in" source "package/c-periphery/Config.in" source "package/ccid/Config.in" source "package/dtc/Config.in" source "package/gnu-efi/Config.in" + source "package/hidapi/Config.in" source "package/lcdapi/Config.in" source "package/libaio/Config.in" source "package/libatasmart/Config.in" @@ -864,6 +946,7 @@ menu "Hardware handling" source "package/libfreefare/Config.in" source "package/libftdi/Config.in" source "package/libftdi1/Config.in" + source "package/libgudev/Config.in" source "package/libhid/Config.in" source "package/libiio/Config.in" source "package/libinput/Config.in" @@ -886,6 +969,7 @@ menu "Hardware handling" source "package/libusb-compat/Config.in" source "package/libv4l/Config.in" source "package/libxkbcommon/Config.in" + source "package/mraa/Config.in" source "package/mtdev/Config.in" source "package/ne10/Config.in" source "package/neardal/Config.in" @@ -900,13 +984,18 @@ menu "Javascript" source "package/explorercanvas/Config.in" source "package/flot/Config.in" source "package/jquery/Config.in" +if BR2_PACKAGE_JQUERY +menu "External jQuery plugins" source "package/jquery-datetimepicker/Config.in" source "package/jquery-keyboard/Config.in" source "package/jquery-mobile/Config.in" + source "package/jquery-sidebar/Config.in" source "package/jquery-sparkline/Config.in" source "package/jquery-ui/Config.in" source "package/jquery-ui-themes/Config.in" source "package/jquery-validation/Config.in" +endmenu +endif source "package/jsmin/Config.in" source "package/json-javascript/Config.in" endmenu @@ -930,6 +1019,7 @@ menu "JSON/XML" source "package/libyaml/Config.in" source "package/mxml/Config.in" source "package/rapidjson/Config.in" + source "package/rapidxml/Config.in" source "package/tinyxml/Config.in" source "package/tinyxml2/Config.in" source "package/xerces/Config.in" @@ -938,6 +1028,7 @@ menu "JSON/XML" endmenu menu "Logging" + source "package/eventlog/Config.in" source "package/glog/Config.in" source "package/liblog4c-localtime/Config.in" source "package/liblogging/Config.in" @@ -947,10 +1038,12 @@ menu "Logging" endmenu menu "Multimedia" + source "package/bitstream/Config.in" source "package/libass/Config.in" source "package/libbluray/Config.in" source "package/libdcadec/Config.in" source "package/libdvbcsa/Config.in" + source "package/libdvbpsi/Config.in" source "package/libdvbsi/Config.in" source "package/libdvdnav/Config.in" source "package/libdvdread/Config.in" @@ -958,15 +1051,20 @@ menu "Multimedia" source "package/libfslcodec/Config.in" source "package/libfslparser/Config.in" source "package/libfslvpuwrap/Config.in" + source "package/libhdhomerun/Config.in" source "package/libmatroska/Config.in" source "package/libmms/Config.in" source "package/libmpeg2/Config.in" source "package/libogg/Config.in" + source "package/libopenh264/Config.in" source "package/libplayer/Config.in" source "package/libtheora/Config.in" + source "package/libvpx/Config.in" + source "package/libyuv/Config.in" source "package/live555/Config.in" source "package/mediastreamer/Config.in" source "package/x264/Config.in" + source "package/x265/Config.in" endmenu menu "Networking" @@ -978,10 +1076,15 @@ menu "Networking" source "package/czmq/Config.in" source "package/filemq/Config.in" source "package/flickcurl/Config.in" - source "package/freeradius-client/Config.in" source "package/fmlib/Config.in" + source "package/freeradius-client/Config.in" source "package/geoip/Config.in" source "package/glib-networking/Config.in" + source "package/gssdp/Config.in" + source "package/gupnp/Config.in" + source "package/gupnp-av/Config.in" + source "package/ibrcommon/Config.in" + source "package/ibrdtn/Config.in" source "package/libcgi/Config.in" source "package/libcgicc/Config.in" source "package/libcurl/Config.in" @@ -989,15 +1092,17 @@ menu "Networking" source "package/libeXosip2/Config.in" source "package/libfcgi/Config.in" source "package/libgsasl/Config.in" + source "package/libhttpparser/Config.in" source "package/libidn/Config.in" source "package/libiscsi/Config.in" + source "package/libldns/Config.in" source "package/libmbus/Config.in" source "package/libmemcached/Config.in" source "package/libmicrohttpd/Config.in" source "package/libmnl/Config.in" source "package/libmodbus/Config.in" source "package/libndp/Config.in" - source "package/libnice/Config.in" + source "package/libnet/Config.in" source "package/libnetfilter_acct/Config.in" source "package/libnetfilter_conntrack/Config.in" source "package/libnetfilter_cthelper/Config.in" @@ -1006,6 +1111,7 @@ menu "Networking" source "package/libnetfilter_queue/Config.in" source "package/libnfnetlink/Config.in" source "package/libnftnl/Config.in" + source "package/libnice/Config.in" source "package/libnl/Config.in" source "package/liboauth/Config.in" source "package/liboping/Config.in" @@ -1026,14 +1132,17 @@ menu "Networking" source "package/libvncserver/Config.in" source "package/libwebsock/Config.in" source "package/libwebsockets/Config.in" + source "package/mongoose/Config.in" source "package/neon/Config.in" source "package/nss-mdns/Config.in" + source "package/nss-pam-ldapd/Config.in" source "package/omniorb/Config.in" source "package/openldap/Config.in" source "package/openpgm/Config.in" source "package/ortp/Config.in" source "package/qdecoder/Config.in" source "package/qpid-proton/Config.in" + source "package/rabbitmq-c/Config.in" source "package/rtmpdump/Config.in" source "package/slirp/Config.in" source "package/snmppp/Config.in" @@ -1066,6 +1175,7 @@ menu "Other" source "package/gflags/Config.in" source "package/glibmm/Config.in" source "package/glm/Config.in" + source "package/gmock/Config.in" source "package/gmp/Config.in" source "package/gsl/Config.in" source "package/gtest/Config.in" @@ -1076,6 +1186,8 @@ menu "Other" source "package/libcap-ng/Config.in" source "package/libcgroup/Config.in" source "package/libcofi/Config.in" + source "package/libcroco/Config.in" + source "package/libcrossguid/Config.in" source "package/libdaemon/Config.in" source "package/libee/Config.in" source "package/libev/Config.in" @@ -1103,12 +1215,19 @@ menu "Other" source "package/libuv/Config.in" source "package/lightning/Config.in" source "package/linux-pam/Config.in" +if BR2_PACKAGE_LINUX_PAM +comment "linux-pam plugins" + source "package/libpam-radius-auth/Config.in" + source "package/libpam-tacplus/Config.in" +endif + source "package/liquid-dsp/Config.in" source "package/lttng-libust/Config.in" source "package/mpc/Config.in" source "package/mpdecimal/Config.in" source "package/mpfr/Config.in" source "package/msgpack/Config.in" source "package/mtdev2tuio/Config.in" + source "package/netbsd-queue/Config.in" source "package/orc/Config.in" source "package/p11-kit/Config.in" source "package/poco/Config.in" @@ -1116,7 +1235,6 @@ menu "Other" source "package/protobuf-c/Config.in" source "package/qhull/Config.in" source "package/qlibc/Config.in" - source "package/schifra/Config.in" source "package/startup-notification/Config.in" source "package/tz/Config.in" source "package/tzdata/Config.in" @@ -1173,11 +1291,12 @@ menu "Miscellaneous" source "package/haveged/Config.in" source "package/mcrypt/Config.in" source "package/mobile-broadband-provider-info/Config.in" - source "package/qpdf/Config.in" source "package/qemu/Config.in" + source "package/qpdf/Config.in" source "package/shared-mime-info/Config.in" source "package/snowball-init/Config.in" source "package/wine/Config.in" + source "package/xutil_util-macros/Config.in" endmenu menu "Networking applications" @@ -1222,6 +1341,7 @@ endif source "package/ejabberd/Config.in" source "package/ethtool/Config.in" source "package/faifa/Config.in" + source "package/fastd/Config.in" source "package/fcgiwrap/Config.in" source "package/fmc/Config.in" source "package/foomatic-filters/Config.in" @@ -1233,6 +1353,8 @@ endif source "package/hostapd/Config.in" source "package/hplip/Config.in" source "package/httping/Config.in" + source "package/ibrdtn-tools/Config.in" + source "package/ibrdtnd/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/ifplugd/Config.in" endif @@ -1252,6 +1374,7 @@ endif source "package/iptables/Config.in" source "package/iptraf-ng/Config.in" source "package/iputils/Config.in" + source "package/irssi/Config.in" source "package/iw/Config.in" source "package/janus-gateway/Config.in" source "package/kismet/Config.in" @@ -1263,6 +1386,7 @@ endif source "package/links/Config.in" source "package/linphone/Config.in" source "package/linux-zigbee/Config.in" + source "package/lldpd/Config.in" source "package/lrzsz/Config.in" source "package/macchanger/Config.in" source "package/memcached/Config.in" @@ -1270,7 +1394,6 @@ endif source "package/minidlna/Config.in" source "package/mjpg-streamer/Config.in" source "package/modem-manager/Config.in" - source "package/mongoose/Config.in" source "package/mongrel2/Config.in" source "package/monkey/Config.in" source "package/mosh/Config.in" @@ -1383,6 +1506,17 @@ endif endmenu menu "Package managers" +comment "-------------------------------------------------------" +comment "Please note: " +comment "- Buildroot does *not* generate binary packages, " +comment "- Buildroot does *not* install any package database. " +comment "* " +comment "It is up to you to provide those by yourself if you " +comment "want to use any of those package managers. " +comment "* " +comment "See the manual: " +comment "http://buildroot.org/manual.html#faq-no-binary-packages" +comment "-------------------------------------------------------" source "package/ipkg/Config.in" source "package/opkg/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS @@ -1419,6 +1553,7 @@ comment "Utilities" source "package/logrotate/Config.in" source "package/logsurfer/Config.in" source "package/pinentry/Config.in" + source "package/ranger/Config.in" source "package/screen/Config.in" source "package/sudo/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS @@ -1429,6 +1564,7 @@ if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/which/Config.in" endif source "package/xmlstarlet/Config.in" + source "package/xxhash/Config.in" endmenu menu "System tools" @@ -1445,6 +1581,7 @@ if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/debianutils/Config.in" endif source "package/dsp-tools/Config.in" + source "package/emlog/Config.in" source "package/ftop/Config.in" source "package/getent/Config.in" source "package/htop/Config.in" @@ -1472,18 +1609,24 @@ endif if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/rsyslog/Config.in" endif + source "package/scrypt/Config.in" source "package/smack/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/start-stop-daemon/Config.in" endif source "package/supervisor/Config.in" + source "package/swupdate/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/sysklogd/Config.in" + source "package/syslog-ng/Config.in" endif source "package/systemd/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/sysvinit/Config.in" + source "package/tar/Config.in" endif + source "package/tpm-tools/Config.in" + source "package/unscd/Config.in" source "package/util-linux/Config.in" endmenu diff --git a/package/Config.in.host b/package/Config.in.host index 1e047aadfd9..1c691a3508b 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -1,17 +1,21 @@ menu "Host utilities" + source "package/aespipe/Config.in.host" source "package/checkpolicy/Config.in.host" source "package/cramfs/Config.in.host" source "package/dfu-util/Config.in.host" source "package/dos2unix/Config.in.host" source "package/dosfstools/Config.in.host" + source "package/dtc/Config.in.host" source "package/e2fsprogs/Config.in.host" source "package/e2tools/Config.in.host" source "package/faketime/Config.in.host" source "package/genext2fs/Config.in.host" source "package/genimage/Config.in.host" source "package/genpart/Config.in.host" + source "package/gptfdisk/Config.in.host" source "package/imx-usb-loader/Config.in.host" + source "package/jq/Config.in.host" source "package/lpc3250loader/Config.in.host" source "package/mke2img/Config.in.host" source "package/mtd/Config.in.host" @@ -27,5 +31,6 @@ menu "Host utilities" source "package/sunxi-tools/Config.in.host" source "package/uboot-tools/Config.in.host" source "package/util-linux/Config.in.host" + source "package/vboot-utils/Config.in.host" endmenu diff --git a/package/Makefile.in b/package/Makefile.in index 545694f3890..dd595e2b776 100644 --- a/package/Makefile.in +++ b/package/Makefile.in @@ -91,7 +91,7 @@ endif # code size and performance, the linker can usually optimize away the # overhead when a call ends up within a certain range. # -# Use text-section-literals for Xtensa globally. +# Use auto-litpools for Xtensa globally. # Collecting literals into separate section can be advantageous if that # section is placed into DTCM at link time. This is applicable for code # running on bare metal, but makes no sense under linux, where userspace @@ -100,7 +100,7 @@ endif # instruction can only access literals in 256 KBytes range. # ifeq ($(BR2_xtensa),y) -TARGET_ABI += -mlongcalls -mtext-section-literals +TARGET_ABI += -mlongcalls -mauto-litpools endif ifeq ($(BR2_arc)$(BR2_ARC_ATOMIC_EXT),yy) @@ -110,22 +110,20 @@ endif STAGING_SUBDIR = usr/$(GNU_TARGET_NAME)/sysroot STAGING_DIR = $(HOST_DIR)/$(STAGING_SUBDIR) -TARGET_OPTIMIZATION := $(call qstrip,$(BR2_TARGET_OPTIMIZATION)) - ifeq ($(BR2_OPTIMIZE_0),y) -TARGET_OPTIMIZATION += -O0 +TARGET_OPTIMIZATION = -O0 endif ifeq ($(BR2_OPTIMIZE_1),y) -TARGET_OPTIMIZATION += -O1 +TARGET_OPTIMIZATION = -O1 endif ifeq ($(BR2_OPTIMIZE_2),y) -TARGET_OPTIMIZATION += -O2 +TARGET_OPTIMIZATION = -O2 endif ifeq ($(BR2_OPTIMIZE_3),y) -TARGET_OPTIMIZATION += -O3 +TARGET_OPTIMIZATION = -O3 endif ifeq ($(BR2_OPTIMIZE_S),y) -TARGET_OPTIMIZATION += -Os +TARGET_OPTIMIZATION = -Os endif ifeq ($(BR2_DEBUG_1),y) TARGET_DEBUGGING = -g1 @@ -161,7 +159,13 @@ TARGET_CFLAGS += -msep-data TARGET_CXXFLAGS += -msep-data endif -ifeq ($(BR2_ENABLE_SSP),y) +ifeq ($(BR2_SSP_REGULAR),y) +TARGET_CFLAGS += -fstack-protector +TARGET_CXXFLAGS += -fstack-protector +else ifeq ($(BR2_SSP_STRONG),y) +TARGET_CFLAGS += -fstack-protector-strong +TARGET_CXXFLAGS += -fstack-protector-strong +else ifeq ($(BR2_SSP_ALL),y) TARGET_CFLAGS += -fstack-protector-all TARGET_CXXFLAGS += -fstack-protector-all endif @@ -186,14 +190,6 @@ TARGET_READELF = $(TARGET_CROSS)readelf TARGET_OBJCOPY = $(TARGET_CROSS)objcopy TARGET_OBJDUMP = $(TARGET_CROSS)objdump -TARGET_CC_NOCCACHE := $(TARGET_CC) -TARGET_CXX_NOCCACHE := $(TARGET_CXX) - -ifeq ($(BR2_CCACHE),y) -TARGET_CC := $(CCACHE) $(TARGET_CC) -TARGET_CXX := $(CCACHE) $(TARGET_CXX) -endif - ifeq ($(BR2_STRIP_strip),y) STRIP_STRIP_DEBUG := --strip-debug STRIP_STRIP_UNNEEDED := --strip-unneeded @@ -229,10 +225,6 @@ HOST_CFLAGS += $(HOST_CPPFLAGS) HOST_CXXFLAGS += $(HOST_CFLAGS) HOST_LDFLAGS += -L$(HOST_DIR)/lib -L$(HOST_DIR)/usr/lib -Wl,-rpath,$(HOST_DIR)/usr/lib -# hostcc version as an integer - E.G. 4.3.2 => 432 -HOSTCC_VERSION := $(shell $(HOSTCC_NOCCACHE) --version | \ - sed -n 's/^.* \([0-9]*\)\.\([0-9]*\)\.\([0-9]*\)[ ]*.*$$/\1\2\3/p') - # host-intltool should be executed with the system perl, so we save # the path to the system perl, before a host-perl built by Buildroot # might get installed into $(HOST_DIR)/usr/bin and therefore appears @@ -306,12 +298,10 @@ HOST_CONFIGURE_OPTS = \ PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ PKG_CONFIG_SYSROOT_DIR="/" \ PKG_CONFIG_LIBDIR="$(HOST_DIR)/usr/lib/pkgconfig:$(HOST_DIR)/usr/share/pkgconfig" \ - LD_LIBRARY_PATH="$(HOST_DIR)/usr/lib$(if $(LD_LIBRARY_PATH),:$(LD_LIBRARY_PATH))" \ INTLTOOL_PERL=$(PERL) HOST_MAKE_ENV = \ PATH=$(BR_PATH) \ - LD_LIBRARY_PATH="$(HOST_DIR)/usr/lib$(if $(LD_LIBRARY_PATH),:$(LD_LIBRARY_PATH))" \ PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ PKG_CONFIG_SYSROOT_DIR="/" \ PKG_CONFIG_LIBDIR="$(HOST_DIR)/usr/lib/pkgconfig" @@ -350,6 +340,15 @@ else BR2_AC_CV_C_BIGENDIAN = ac_cv_c_bigendian=no endif +# AM_GNU_GETTEXT misdetects musl gettext support. +# musl currently implements api level 1 and 2 (basic + ngettext) +# http://www.openwall.com/lists/musl/2015/04/16/3 +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +BR2_GT_CV_FUNC_GNUGETTEXT_LIBC = \ + gt_cv_func_gnugettext1_libc=yes \ + gt_cv_func_gnugettext2_libc=yes +endif + TARGET_CONFIGURE_ARGS = \ $(BR2_AC_CV_TRAP_CHECK) \ ac_cv_func_mmap_fixed_mapped=yes \ @@ -360,7 +359,8 @@ TARGET_CONFIGURE_ARGS = \ ac_cv_func_calloc_0_nonnull=yes \ ac_cv_func_realloc_0_nonnull=yes \ lt_cv_sys_lib_search_path_spec="" \ - $(BR2_AC_CV_C_BIGENDIAN) + $(BR2_AC_CV_C_BIGENDIAN) \ + $(BR2_GT_CV_FUNC_GNUGETTEXT_LIBC) ################################################################################ diff --git a/package/acpid/S02acpid b/package/acpid/S02acpid index 0840305d1c8..e8d36616748 100755 --- a/package/acpid/S02acpid +++ b/package/acpid/S02acpid @@ -2,12 +2,12 @@ case "$1" in start) - echo -n "Starting acpid: " + printf "Starting acpid: " start-stop-daemon -S -q -m -b -p /var/run/acpid.pid --exec /usr/sbin/acpid -- -n [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping acpid: " + printf "Stopping acpid: " start-stop-daemon -K -q -p /var/run/acpid.pid [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/acsccid/Config.in b/package/acsccid/Config.in new file mode 100644 index 00000000000..90624ee7976 --- /dev/null +++ b/package/acsccid/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_ACSCCID + bool "acsccid" + depends on BR2_TOOLCHAIN_HAS_THREADS # pcsc-lite, libusb + depends on BR2_USE_MMU # pcsc-lite + depends on !BR2_STATIC_LIBS # pcsc-lite + select BR2_PACKAGE_PCSC_LITE + # Even though there is a --disable-libusb option, it has in + # fact no effect, and acsccid really requires libusb. + select BR2_PACKAGE_LIBUSB + help + acsccid is a PC/SC driver for Linux/Mac OS X and it supports + ACS CCID smart card readers. + + http://acsccid.sourceforge.net/ + +comment "acsccid needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS diff --git a/package/acsccid/acsccid.hash b/package/acsccid/acsccid.hash new file mode 100644 index 00000000000..1bfe9e4b592 --- /dev/null +++ b/package/acsccid/acsccid.hash @@ -0,0 +1,3 @@ +# From https://sourceforge.net/projects/acsccid/files/acsccid/1.1.1/ +sha1 ae340256bbba36032a903c9f89883297a31ca340 acsccid-1.1.1.tar.bz2 +md5 26dc34141188e64fa2b3545032060357 acsccid-1.1.1.tar.bz2 diff --git a/package/acsccid/acsccid.mk b/package/acsccid/acsccid.mk new file mode 100644 index 00000000000..c2e7d2157e4 --- /dev/null +++ b/package/acsccid/acsccid.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# acsccid +# +################################################################################ + +ACSCCID_VERSION = 1.1.1 +ACSCCID_SOURCE = acsccid-$(ACSCCID_VERSION).tar.bz2 +ACSCCID_SITE = http://downloads.sourceforge.net/acsccid +ACSCCID_LICENSE = LGPLv2.1+ +ACSCCID_LICENSE_FILES = COPYING +ACSCCID_INSTALL_STAGING = YES +ACSCCID_DEPENDENCIES = pcsc-lite host-flex host-pkgconf libusb + +$(eval $(autotools-package)) diff --git a/package/adwaita-icon-theme/adwaita-icon-theme.hash b/package/adwaita-icon-theme/adwaita-icon-theme.hash index 1662ab98623..14e88ed1972 100644 --- a/package/adwaita-icon-theme/adwaita-icon-theme.hash +++ b/package/adwaita-icon-theme/adwaita-icon-theme.hash @@ -1,2 +1,2 @@ -# From ftp://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/3.14/adwaita-icon-theme-3.14.0.sha256sum -sha256 afacb6025a18be007e33a9663b92cee9d2745279bb00107a68e09b2806f9541f adwaita-icon-theme-3.14.0.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/3.18/adwaita-icon-theme-3.18.0.sha256sum +sha256 5e9ce726001fdd8ee93c394fdc3cdb9e1603bbed5b7c62df453ccf521ec50e58 adwaita-icon-theme-3.18.0.tar.xz diff --git a/package/adwaita-icon-theme/adwaita-icon-theme.mk b/package/adwaita-icon-theme/adwaita-icon-theme.mk index f9a6b50516f..cf39d04d777 100644 --- a/package/adwaita-icon-theme/adwaita-icon-theme.mk +++ b/package/adwaita-icon-theme/adwaita-icon-theme.mk @@ -4,9 +4,9 @@ # ################################################################################ -ADWAITA_ICON_THEME_VERSION_MAJOR = 3.14 +ADWAITA_ICON_THEME_VERSION_MAJOR = 3.18 ADWAITA_ICON_THEME_VERSION = $(ADWAITA_ICON_THEME_VERSION_MAJOR).0 -ADWAITA_ICON_THEME_SITE = ftp://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/$(ADWAITA_ICON_THEME_VERSION_MAJOR) +ADWAITA_ICON_THEME_SITE = http://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/$(ADWAITA_ICON_THEME_VERSION_MAJOR) ADWAITA_ICON_THEME_SOURCE = adwaita-icon-theme-$(ADWAITA_ICON_THEME_VERSION).tar.xz ADWAITA_ICON_THEME_LICENSE = LGPLv3 or CC-BY-SA-3.0 ADWAITA_ICON_THEME_LICENSE_FILES = COPYING COPYING_LGPL COPYING_CCBYSA3 diff --git a/package/aespipe/Config.in.host b/package/aespipe/Config.in.host new file mode 100644 index 00000000000..b64868ce74b --- /dev/null +++ b/package/aespipe/Config.in.host @@ -0,0 +1,10 @@ +config BR2_PACKAGE_HOST_AESPIPE + bool "host aespipe" + help + aespipe program is AES encrypting or decrypting pipe. It + reads from standard input and writes to standard output. It + can be used to create and restore encrypted tar or cpio + archives. It can be used to encrypt and decrypt loop-AES + compatible encrypted disk images. + + http://koti.tnnet.fi/jari.ruusu/linux/ diff --git a/package/aespipe/aespipe.mk b/package/aespipe/aespipe.mk index a220688d56e..c567092ae8a 100644 --- a/package/aespipe/aespipe.mk +++ b/package/aespipe/aespipe.mk @@ -10,3 +10,4 @@ AESPIPE_SITE = http://loop-aes.sourceforge.net/aespipe AESPIPE_LICENSE = GPL $(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/aiccu/Config.in b/package/aiccu/Config.in index 4a0d20d71db..2bfd649d265 100644 --- a/package/aiccu/Config.in +++ b/package/aiccu/Config.in @@ -4,8 +4,7 @@ config BR2_PACKAGE_AICCU depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() # Triggers the _gp link issue - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII select BR2_PACKAGE_GNUTLS help SixXS Automatic IPv6 Connectivity Client Utility @@ -24,5 +23,4 @@ config BR2_PACKAGE_AICCU comment "aiccu needs a toolchain w/ wchar, threads" depends on BR2_USE_MMU depends on !(BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS) - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII diff --git a/package/alsa-lib/0001-add-missing-include.patch b/package/alsa-lib/0001-add-missing-include.patch new file mode 100644 index 00000000000..ac7dfa95c57 --- /dev/null +++ b/package/alsa-lib/0001-add-missing-include.patch @@ -0,0 +1,29 @@ +Subject: [PATCH] topology: Add missing include sys/stat.h + +Necessary for proper definitions of S_IRUSR & co. Otherwise it +results in compile errors with old glibc: + parser.c: In function 'snd_tplg_build_file': + parser.c:262: error: 'S_IRUSR' undeclared (first use in this function) + parser.c:262: error: (Each undeclared identifier is reported only once + parser.c:262: error: for each function it appears in.) + +Signed-off-by: Takashi Iwai +Signed-off-by: Gustavo Zacarias +--- +Status: upstream + +diff --git a/src/topology/parser.c b/src/topology/parser.c +index 80a0ae0..18bb9c7 100644 +--- a/src/topology/parser.c ++++ b/src/topology/parser.c +@@ -16,6 +16,7 @@ + Liam Girdwood + */ + ++#include + #include "list.h" + #include "tplg_local.h" + +-- +1.7.11.7 + diff --git a/package/alsa-lib/0005-musl-pcm-h.patch b/package/alsa-lib/0005-musl-pcm-h.patch new file mode 100644 index 00000000000..ce1528c572a --- /dev/null +++ b/package/alsa-lib/0005-musl-pcm-h.patch @@ -0,0 +1,33 @@ +Fix musl-related build errors in packages depending on alsa, in our case +this fixes openal. + +Downloaded from +http://git.alpinelinux.org/cgit/aports/tree/main/alsa-lib/alsa-lib_pcm_h.patch + +Signed-off-by: Bernd Kuhls + +--- alsa-lib-1.0.25/include/pcm.h ++++ alsa-lib-1.0.25.patched/include/pcm.h +@@ -33,6 +33,7 @@ + extern "C" { + #endif + ++#include + /** + * \defgroup PCM PCM Interface + * See the \ref pcm page for more details. +@@ -941,10 +942,10 @@ + int snd_pcm_format_physical_width(snd_pcm_format_t format); /* in bits */ + snd_pcm_format_t snd_pcm_build_linear_format(int width, int pwidth, int unsignd, int big_endian); + ssize_t snd_pcm_format_size(snd_pcm_format_t format, size_t samples); +-u_int8_t snd_pcm_format_silence(snd_pcm_format_t format); +-u_int16_t snd_pcm_format_silence_16(snd_pcm_format_t format); +-u_int32_t snd_pcm_format_silence_32(snd_pcm_format_t format); +-u_int64_t snd_pcm_format_silence_64(snd_pcm_format_t format); ++uint8_t snd_pcm_format_silence(snd_pcm_format_t format); ++uint16_t snd_pcm_format_silence_16(snd_pcm_format_t format); ++uint32_t snd_pcm_format_silence_32(snd_pcm_format_t format); ++uint64_t snd_pcm_format_silence_64(snd_pcm_format_t format); + int snd_pcm_format_set_silence(snd_pcm_format_t format, void *buf, unsigned int samples); + + snd_pcm_sframes_t snd_pcm_bytes_to_frames(snd_pcm_t *pcm, ssize_t bytes); diff --git a/package/alsa-lib/Config.in b/package/alsa-lib/Config.in index a732c081024..97e848978c7 100644 --- a/package/alsa-lib/Config.in +++ b/package/alsa-lib/Config.in @@ -1,4 +1,7 @@ -config BR2_PACKAGE_ALSA_LIB +comment "alsa-lib needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + +menuconfig BR2_PACKAGE_ALSA_LIB bool "alsa-lib" # Temporary until # https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4913 @@ -15,9 +18,6 @@ config BR2_PACKAGE_ALSA_LIB http://www.alsa-project.org/ -comment "alsa-lib needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS - if BR2_PACKAGE_ALSA_LIB config BR2_PACKAGE_ALSA_LIB_PYTHON @@ -29,8 +29,6 @@ config BR2_PACKAGE_ALSA_LIB_PYTHON in the target directory http://www.alsa-project.org/ -menu "ALSA lib selection" - config BR2_PACKAGE_ALSA_LIB_DEVDIR string "directory with ALSA device files" default "/dev/snd" @@ -77,6 +75,4 @@ config BR2_PACKAGE_ALSA_LIB_OLD_SYMBOLS bool "old-symbols" default y -endmenu - endif diff --git a/package/alsa-lib/alsa-lib.hash b/package/alsa-lib/alsa-lib.hash index 3e132c82d84..506416d2af9 100644 --- a/package/alsa-lib/alsa-lib.hash +++ b/package/alsa-lib/alsa-lib.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 73043c35eb9636be0f4af6a240235c213f12a25feb1f04aeeac8cb7e30fcbdd0 alsa-lib-1.0.29.tar.bz2 +sha256 dfde65d11e82b68f82e562ab6228c1fb7c78854345d3c57e2c68a9dd3dae1f15 alsa-lib-1.1.0.tar.bz2 diff --git a/package/alsa-lib/alsa-lib.mk b/package/alsa-lib/alsa-lib.mk index 3115433b56e..2075d419dba 100644 --- a/package/alsa-lib/alsa-lib.mk +++ b/package/alsa-lib/alsa-lib.mk @@ -4,7 +4,7 @@ # ################################################################################ -ALSA_LIB_VERSION = 1.0.29 +ALSA_LIB_VERSION = 1.1.0 ALSA_LIB_SOURCE = alsa-lib-$(ALSA_LIB_VERSION).tar.bz2 ALSA_LIB_SITE = ftp://ftp.alsa-project.org/pub/lib ALSA_LIB_LICENSE = LGPLv2.1+ @@ -20,7 +20,9 @@ ALSA_LIB_CONF_OPTS = \ # Can't build with static & shared at the same time (1.0.25+) ifeq ($(BR2_STATIC_LIBS),y) -ALSA_LIB_CONF_OPTS += --enable-shared=no +ALSA_LIB_CONF_OPTS += \ + --enable-shared=no \ + --without-libdl else ALSA_LIB_CONF_OPTS += --enable-static=no endif diff --git a/package/alsa-utils/0001-bat-Avoid-local-signal.h-file.patch b/package/alsa-utils/0001-bat-Avoid-local-signal.h-file.patch new file mode 100644 index 00000000000..250f77dbc4a --- /dev/null +++ b/package/alsa-utils/0001-bat-Avoid-local-signal.h-file.patch @@ -0,0 +1,143 @@ +bat: Avoid local signal.h file + +Patch backported from upstream: + + http://git.alsa-project.org/?p=alsa-utils.git;a=commit;h=3bf8e79c3bfee3ca14277aad3d9c406dfc053bbf + +Signed-off-by: Vicente Olivert Riera + +From 3bf8e79c3bfee3ca14277aad3d9c406dfc053bbf Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Mon, 9 Nov 2015 14:04:11 +0100 +Subject: [PATCH 1/2] bat: Avoid local signal.h file + +The local header file named as "signal.h" causes mysterious compile +error when built with an old glibc. + signal.h:27: error: conflicting types for 'sin_generator_init' + ./signal.h:27: error: previous declaration of 'sin_generator_init' was here + signal.h:28: error: conflicting types for 'sin_generator_next_sample' + ./signal.h:28: error: previous declaration of 'sin_generator_next_sample' was here + .... + +This turned out to be the conflict of signal.h; namely, pthread.h that +is included before our local signal.h also includes "pthread.h". +Since our local "signal.h" has a higher priority, it gets loaded +instead of the expected pthread's one. Then we load it again, and it +screws up. + +Although it's basically a bug of pthread, it's anyway not good to have +a header file conflicting with the standard header file. So, let's +name it more explicitly as specific to BAT, bat-signal.h, for avoiding +such a conflict. + +Signed-off-by: Takashi Iwai +--- + bat/Makefile.am | 2 +- + bat/alsa.c | 2 +- + bat/bat-signal.h | 30 ++++++++++++++++++++++++++++++ + bat/signal.h | 30 ------------------------------ + 4 files changed, 32 insertions(+), 32 deletions(-) + create mode 100644 bat/bat-signal.h + delete mode 100644 bat/signal.h + +diff --git a/bat/Makefile.am b/bat/Makefile.am +index 842ae6b..f0dc5ab 100644 +--- a/bat/Makefile.am ++++ b/bat/Makefile.am +@@ -13,7 +13,7 @@ bat_SOURCES = \ + + noinst_HEADERS = \ + common.h \ +- signal.h \ ++ bat-signal.h \ + alsa.h \ + convert.h \ + analyze.h +diff --git a/bat/alsa.c b/bat/alsa.c +index 582c604..d31a633 100644 +--- a/bat/alsa.c ++++ b/bat/alsa.c +@@ -27,7 +27,7 @@ + + #include "common.h" + #include "alsa.h" +-#include "signal.h" ++#include "bat-signal.h" + + struct pcm_container { + snd_pcm_t *handle; +diff --git a/bat/bat-signal.h b/bat/bat-signal.h +new file mode 100644 +index 0000000..a295517 +--- /dev/null ++++ b/bat/bat-signal.h +@@ -0,0 +1,30 @@ ++/* ++ * Copyright (C) 2015 Caleb Crome ++ * Copyright (C) 2013-2015 Intel Corporation ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ */ ++ ++/* ++ * Here's a generic sine wave generator that will work indefinitely ++ * for any frequency. ++ * ++ * Note: the state & phasor are stored as doubles (and updated as ++ * doubles) because after a million samples the magnitude drifts a ++ * bit. If we really need floats, it can be done with periodic ++ * renormalization of the state_real+state_imag magnitudes. ++ */ ++ ++int sin_generator_init(struct sin_generator *, float, float, float); ++float sin_generator_next_sample(struct sin_generator *); ++void sin_generator_vfill(struct sin_generator *, float *, int); ++int generate_sine_wave(struct bat *, int, void *); +diff --git a/bat/signal.h b/bat/signal.h +deleted file mode 100644 +index a295517..0000000 +--- a/bat/signal.h ++++ /dev/null +@@ -1,30 +0,0 @@ +-/* +- * Copyright (C) 2015 Caleb Crome +- * Copyright (C) 2013-2015 Intel Corporation +- * +- * This program is free software; you can redistribute it and/or modify +- * it under the terms of the GNU General Public License as published by +- * the Free Software Foundation; either version 2 of the License, or +- * (at your option) any later version. +- * +- * This program is distributed in the hope that it will be useful, +- * but WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- * GNU General Public License for more details. +- * +- */ +- +-/* +- * Here's a generic sine wave generator that will work indefinitely +- * for any frequency. +- * +- * Note: the state & phasor are stored as doubles (and updated as +- * doubles) because after a million samples the magnitude drifts a +- * bit. If we really need floats, it can be done with periodic +- * renormalization of the state_real+state_imag magnitudes. +- */ +- +-int sin_generator_init(struct sin_generator *, float, float, float); +-float sin_generator_next_sample(struct sin_generator *); +-void sin_generator_vfill(struct sin_generator *, float *, int); +-int generate_sine_wave(struct bat *, int, void *); +-- +2.4.10 + diff --git a/package/alsa-utils/0002-bat-Don-t-pass-incompatible-function-pointers-to-pth.patch b/package/alsa-utils/0002-bat-Don-t-pass-incompatible-function-pointers-to-pth.patch new file mode 100644 index 00000000000..1aee9aeaccf --- /dev/null +++ b/package/alsa-utils/0002-bat-Don-t-pass-incompatible-function-pointers-to-pth.patch @@ -0,0 +1,61 @@ +bat: Don't pass incompatible function pointers to pthread_cleanup_push() + +Patch backported from upstream: + + http://git.alsa-project.org/?p=alsa-utils.git;a=commit;h=ed0cce1b6061aade0077982cb5d22fa68ddffd2f + +Signed-off-by: Vicente Olivert Riera + +From ed0cce1b6061aade0077982cb5d22fa68ddffd2f Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Mon, 9 Nov 2015 14:09:50 +0100 +Subject: [PATCH 2/2] bat: Don't pass incompatible function pointers to + pthread_cleanup_push() + +pthread_cleanup_push() takes a function pointer for void (void *). +Although it may work in most cases, we shouldn't pass an incompatible +function pointer there, as some old gcc complains: + alsa.c:560: warning: initialization from incompatible pointer type + alsa.c:562: warning: initialization from incompatible pointer type + +Signed-off-by: Takashi Iwai +--- + bat/alsa.c | 14 ++++++++++++-- + 1 file changed, 12 insertions(+), 2 deletions(-) + +diff --git a/bat/alsa.c b/bat/alsa.c +index d31a633..5eaa25b 100644 +--- a/bat/alsa.c ++++ b/bat/alsa.c +@@ -505,6 +505,16 @@ static int read_from_pcm_loop(FILE *fp, int count, + return 0; + } + ++static void pcm_cleanup(void *p) ++{ ++ snd_pcm_close(p); ++} ++ ++static void file_cleanup(void *p) ++{ ++ fclose(p); ++} ++ + /** + * Record + */ +@@ -557,9 +567,9 @@ void *record_alsa(struct bat *bat) + + pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL); + pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, NULL); +- pthread_cleanup_push(snd_pcm_close, sndpcm.handle); ++ pthread_cleanup_push(pcm_cleanup, sndpcm.handle); + pthread_cleanup_push(free, sndpcm.buffer); +- pthread_cleanup_push(fclose, fp); ++ pthread_cleanup_push(file_cleanup, fp); + + err = write_wav_header(fp, &wav, bat); + if (err != 0) { +-- +2.4.10 + diff --git a/package/alsa-utils/Config.in b/package/alsa-utils/Config.in index 3a99279276a..b58e6583c3d 100644 --- a/package/alsa-utils/Config.in +++ b/package/alsa-utils/Config.in @@ -1,11 +1,12 @@ -comment "alsa-utils needs a toolchain w/ threads" +comment "alsa-utils needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU # fork - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS -config BR2_PACKAGE_ALSA_UTILS +menuconfig BR2_PACKAGE_ALSA_UTILS bool "alsa-utils" depends on BR2_USE_MMU # fork depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib + depends on !BR2_STATIC_LIBS # uses dlfcn.h select BR2_PACKAGE_ALSA_LIB select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE help @@ -15,15 +16,21 @@ config BR2_PACKAGE_ALSA_UTILS http://www.alsa-project.org/ if BR2_PACKAGE_ALSA_UTILS -menu "ALSA utils selection" config BR2_PACKAGE_ALSA_UTILS_ALSACONF bool "alsaconf" +config BR2_PACKAGE_ALSA_UTILS_ACONNECT + bool "aconnect" + select BR2_PACKAGE_ALSA_LIB_SEQ + config BR2_PACKAGE_ALSA_UTILS_ALSACTL bool "alsactl" default y +config BR2_PACKAGE_ALSA_UTILS_ALSALOOP + bool "alsaloop" + config BR2_PACKAGE_ALSA_UTILS_ALSAMIXER bool "alsamixer" select BR2_PACKAGE_NCURSES @@ -37,50 +44,51 @@ config BR2_PACKAGE_ALSA_UTILS_ALSAMIXER comment "alsamixer needs a toolchain w/ wchar" depends on !BR2_USE_WCHAR +config BR2_PACKAGE_ALSA_UTILS_ALSAUCM + bool "alsaucm" + +config BR2_PACKAGE_ALSA_UTILS_ALSATPLG + bool "alsatplg" + config BR2_PACKAGE_ALSA_UTILS_AMIDI + bool "amidi" select BR2_PACKAGE_ALSA_LIB_RAWMIDI select BR2_PACKAGE_ALSA_LIB_SEQ - bool "amidi" config BR2_PACKAGE_ALSA_UTILS_AMIXER - select BR2_PACKAGE_ALSA_LIB_MIXER bool "amixer" + select BR2_PACKAGE_ALSA_LIB_MIXER config BR2_PACKAGE_ALSA_UTILS_APLAY - select BR2_PACKAGE_ALSA_LIB_PCM bool "aplay/arecord" - -config BR2_PACKAGE_ALSA_UTILS_IECSET select BR2_PACKAGE_ALSA_LIB_PCM - bool "iecset" - -config BR2_PACKAGE_ALSA_UTILS_ACONNECT - select BR2_PACKAGE_ALSA_LIB_SEQ - bool "aconnect" - -config BR2_PACKAGE_ALSA_UTILS_ALSAUCM - bool "alsaucm" config BR2_PACKAGE_ALSA_UTILS_APLAYMIDI - select BR2_PACKAGE_ALSA_LIB_SEQ bool "aplaymidi" + select BR2_PACKAGE_ALSA_LIB_SEQ config BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI - select BR2_PACKAGE_ALSA_LIB_SEQ bool "arecordmidi" + select BR2_PACKAGE_ALSA_LIB_SEQ config BR2_PACKAGE_ALSA_UTILS_ASEQDUMP - select BR2_PACKAGE_ALSA_LIB_SEQ bool "aseqdump" + select BR2_PACKAGE_ALSA_LIB_SEQ config BR2_PACKAGE_ALSA_UTILS_ASEQNET - select BR2_PACKAGE_ALSA_LIB_SEQ bool "aseqnet" + select BR2_PACKAGE_ALSA_LIB_SEQ -config BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST +config BR2_PACKAGE_ALSA_UTILS_BAT + bool "bat" + select BR2_PACKAGE_FFTW + +config BR2_PACKAGE_ALSA_UTILS_IECSET + bool "iecset" select BR2_PACKAGE_ALSA_LIB_PCM - bool "speaker-test" -endmenu +config BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST + bool "speaker-test" + select BR2_PACKAGE_ALSA_LIB_PCM endif diff --git a/package/alsa-utils/alsa-utils.hash b/package/alsa-utils/alsa-utils.hash index ba5061b1295..e6530ebd055 100644 --- a/package/alsa-utils/alsa-utils.hash +++ b/package/alsa-utils/alsa-utils.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 5160058f3e14483ced5de919dd473f93932059454530a9b7ef97dcabd6833e9b alsa-utils-1.0.29.tar.bz2 +sha256 3b1c3135b76e14532d3dd23fb15759ddd7daf9ffbc183f7a9a0a3a86374748f1 alsa-utils-1.1.0.tar.bz2 diff --git a/package/alsa-utils/alsa-utils.mk b/package/alsa-utils/alsa-utils.mk index 06bda9a09f8..b5dc698e6bc 100644 --- a/package/alsa-utils/alsa-utils.mk +++ b/package/alsa-utils/alsa-utils.mk @@ -4,14 +4,15 @@ # ################################################################################ -ALSA_UTILS_VERSION = 1.0.29 +ALSA_UTILS_VERSION = 1.1.0 ALSA_UTILS_SOURCE = alsa-utils-$(ALSA_UTILS_VERSION).tar.bz2 ALSA_UTILS_SITE = ftp://ftp.alsa-project.org/pub/utils ALSA_UTILS_LICENSE = GPLv2 ALSA_UTILS_LICENSE_FILES = COPYING ALSA_UTILS_INSTALL_STAGING = YES ALSA_UTILS_DEPENDENCIES = host-gettext host-pkgconf alsa-lib \ - $(if $(BR2_PACKAGE_NCURSES),ncurses) + $(if $(BR2_PACKAGE_NCURSES),ncurses) \ + $(if $(BR2_PACKAGE_LIBSAMPLERATE),libsamplerate) # Regenerate aclocal.m4 to pick the patched # version of alsa.m4 from alsa-lib ALSA_UTILS_AUTORECONF = YES @@ -29,16 +30,32 @@ ALSA_UTILS_DEPENDENCIES += gettext ALSA_UTILS_CONF_ENV += LIBS=-lintl endif +ifeq ($(BR2_PACKAGE_ALSA_UTILS_ALSALOOP),y) +ALSA_UTILS_CONF_OPTS += --enable-alsaloop +else +ALSA_UTILS_CONF_OPTS += --disable-alsaloop +endif + ifneq ($(BR2_PACKAGE_ALSA_UTILS_ALSAMIXER),y) ALSA_UTILS_CONF_OPTS += --disable-alsamixer --disable-alsatest endif +ifeq ($(BR2_PACKAGE_ALSA_UTILS_BAT),y) +ALSA_UTILS_CONF_OPTS += --enable-bat +ALSA_UTILS_DEPENDENCIES += fftw +else +ALSA_UTILS_CONF_OPTS += --disable-bat +endif + ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSACONF) += usr/sbin/alsaconf ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSACTL) += usr/sbin/alsactl +ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSALOOP) += usr/bin/alsaloop ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSAMIXER) += usr/bin/alsamixer +ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSATPLG) += usr/bin/alsatplg ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_AMIDI) += usr/bin/amidi ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_AMIXER) += usr/bin/amixer ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_APLAY) += usr/bin/aplay usr/bin/arecord +ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_BAT) += usr/bin/bat ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_IECSET) += usr/bin/iecset ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ACONNECT) += usr/bin/aconnect ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSAUCM) += usr/bin/alsaucm diff --git a/package/angularjs/Config.in b/package/angularjs/Config.in index 2b563f786b2..206b3d84994 100644 --- a/package/angularjs/Config.in +++ b/package/angularjs/Config.in @@ -1,4 +1,4 @@ -config BR2_PACKAGE_ANGULARJS +menuconfig BR2_PACKAGE_ANGULARJS bool "angularjs" help AngularJS web application framework. @@ -7,7 +7,7 @@ config BR2_PACKAGE_ANGULARJS if BR2_PACKAGE_ANGULARJS -menuconfig BR2_ANGULARJS_MODULES +config BR2_ANGULARJS_MODULES bool "angularjs modules" help Select which modules to install. If disabled, all modules diff --git a/package/angularjs/angularjs.mk b/package/angularjs/angularjs.mk index 1dbd7a775cb..60dbdb6d30b 100644 --- a/package/angularjs/angularjs.mk +++ b/package/angularjs/angularjs.mk @@ -6,7 +6,7 @@ ANGULARJS_VERSION = 1.4.3 ANGULARJS_SOURCE = angular-$(ANGULARJS_VERSION).zip -ANGULARJS_SITE = https://code.angularjs.org/$(ANGULARJS_VERSION)/ +ANGULARJS_SITE = https://code.angularjs.org/$(ANGULARJS_VERSION) ANGULARJS_LICENSE = MIT # There's no separate license file in the archive, so use angular.js instead. ANGULARJS_LICENSE_FILES = angular.js diff --git a/package/apache/apache.hash b/package/apache/apache.hash index 9dffe12fb91..d4a8a9fe22e 100644 --- a/package/apache/apache.hash +++ b/package/apache/apache.hash @@ -1,2 +1,2 @@ -# From http://www.apache.org/dist/httpd/httpd-2.4.16.tar.bz2.sha1 -sha1 9963e7482700dd50c53e47abfe2d1c5068875a9c httpd-2.4.16.tar.bz2 +# From http://www.apache.org/dist/httpd/httpd-2.4.18.tar.bz2.sha1 +sha1 271a129f2f04e3aa694e5c2091df9b707bf8ef80 httpd-2.4.18.tar.bz2 diff --git a/package/apache/apache.mk b/package/apache/apache.mk index acd242dbfe7..e752fcc6c57 100644 --- a/package/apache/apache.mk +++ b/package/apache/apache.mk @@ -4,7 +4,7 @@ # ################################################################################ -APACHE_VERSION = 2.4.16 +APACHE_VERSION = 2.4.18 APACHE_SOURCE = httpd-$(APACHE_VERSION).tar.bz2 APACHE_SITE = http://archive.apache.org/dist/httpd APACHE_LICENSE = Apache-2.0 @@ -35,10 +35,6 @@ APACHE_CONF_OPTS = \ --disable-lua \ --disable-luajit -ifeq ($(BR2_ARCH_HAS_ATOMICS),y) -APACHE_CONF_OPTS += --enable-nonportable-atomics=yes -endif - ifeq ($(BR2_PACKAGE_LIBXML2),y) APACHE_DEPENDENCIES += libxml2 # Apache wants the path to the header file, where it can find diff --git a/package/apitrace/Config.in b/package/apitrace/Config.in index 6491463263e..a9777128186 100644 --- a/package/apitrace/Config.in +++ b/package/apitrace/Config.in @@ -1,13 +1,16 @@ -comment "apitrace needs a (e)glibc toolchain w/ C++" +comment "apitrace needs a (e)glibc toolchain w/ C++, gcc >= 4.6" depends on BR2_PACKAGE_XORG7 - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 config BR2_PACKAGE_APITRACE bool "apitrace" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_USES_GLIBC # uses glibc specific __libc_dlsym + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 depends on BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_LIBPNG help Trace and replay OpenGL and OpenGL ES APIs calls to/from a file. You may install apitrace GUI from your distribution to diff --git a/package/apitrace/apitrace.mk b/package/apitrace/apitrace.mk index b16436712e2..fbd957c6175 100644 --- a/package/apitrace/apitrace.mk +++ b/package/apitrace/apitrace.mk @@ -4,12 +4,12 @@ # ################################################################################ -APITRACE_VERSION = c181b7fbf4b1c3912424761fec8ac7124640543a +APITRACE_VERSION = 7.0 APITRACE_SITE = $(call github,apitrace,apitrace,$(APITRACE_VERSION)) APITRACE_LICENSE = MIT APITRACE_LICENSE_FILES = LICENSE -APITRACE_DEPENDENCIES = xlib_libX11 host-python +APITRACE_DEPENDENCIES = xlib_libX11 host-python libpng # Gui was never tested, so we prefer to explicitly disable it APITRACE_CONF_OPTS += -DENABLE_GUI=false diff --git a/package/apr/apr.mk b/package/apr/apr.mk index 0fed19c54df..361a79f99ba 100644 --- a/package/apr/apr.mk +++ b/package/apr/apr.mk @@ -35,6 +35,21 @@ endif # Fix lfs detection when cross compiling APR_CONF_ENV += apr_cv_use_lfs64=yes +# Use non-portable atomics when available: 8 bytes atomics are used on +# 64-bits architectures, 4 bytes atomics on 32-bits architectures. We +# have to override ap_cv_atomic_builtins because the test used to +# check for atomic builtins uses AC_TRY_RUN, which doesn't work when +# cross-compiling. +ifeq ($(BR2_ARCH_IS_64):$(BR2_TOOLCHAIN_HAS_SYNC_8),y:y) +APR_CONF_OPTS += --enable-nonportable-atomics +APR_CONF_ENV += ap_cv_atomic_builtins=yes +else ifeq ($(BR2_ARCH_IS_64):$(BR2_TOOLCHAIN_HAS_SYNC_4),:y) +APR_CONF_OPTS += --enable-nonportable-atomics +APR_CONF_ENV += ap_cv_atomic_builtins=yes +else +APR_CONF_OPTS += --disable-nonportable-atomics +endif + ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) APR_DEPENDENCIES += util-linux endif diff --git a/package/argp-standalone/0003-fix_build_with_c99_compilers.patch b/package/argp-standalone/0003-fix_build_with_c99_compilers.patch new file mode 100644 index 00000000000..bfa0bb53e1f --- /dev/null +++ b/package/argp-standalone/0003-fix_build_with_c99_compilers.patch @@ -0,0 +1,80 @@ +From b2dfa011a3fdcb7d22764d143517d0fbd1c2a201 Mon Sep 17 00:00:00 2001 +From: Emmanuel Dreyfus +Date: Wed, 22 Jan 2014 14:47:23 +0100 +Subject: [PATCH] Fix build with c99 compilers + +BUG: 764655 +Change-Id: If5dfdc9c7427bd3d39d8da8f79e33ae2da6a3137 +Signed-off-by: Emmanuel Dreyfus +Reviewed-on: http://review.gluster.org/6034 +Reviewed-by: Harshavardhana +Tested-by: Gluster Build System +--- + +diff --git a/argp-fmtstream.c b/argp-fmtstream.c +index 7f79285..494b6b3 100644 +--- a/argp-fmtstream.c ++++ b/argp-fmtstream.c +@@ -389,6 +389,7 @@ + weak_alias (__argp_fmtstream_printf, argp_fmtstream_printf) + #endif + ++#if __STDC_VERSION__ - 199900L < 1 + /* Duplicate the inline definitions in argp-fmtstream.h, for compilers + * that don't do inlining. */ + size_t +@@ -471,5 +472,6 @@ + __argp_fmtstream_update (__fs); + return __fs->point_col >= 0 ? __fs->point_col : 0; + } ++#endif /* __STDC_VERSION__ - 199900L < 1 */ + + #endif /* !ARGP_FMTSTREAM_USE_LINEWRAP */ +diff --git a/argp-fmtstream.h b/argp-fmtstream.h +index e797b11..828f435 100644 +--- a/argp-fmtstream.h ++++ b/argp-fmtstream.h +@@ -153,6 +153,7 @@ + __const char *__fmt, ...) + PRINTF_STYLE(2,3); + ++#if __STDC_VERSION__ - 199900L < 1 + extern int __argp_fmtstream_putc (argp_fmtstream_t __fs, int __ch); + extern int argp_fmtstream_putc (argp_fmtstream_t __fs, int __ch); + +@@ -163,6 +164,7 @@ + __const char *__str, size_t __len); + extern size_t argp_fmtstream_write (argp_fmtstream_t __fs, + __const char *__str, size_t __len); ++#endif /* __STDC_VERSION__ - 199900L < 1 */ + + /* Access macros for various bits of state. */ + #define argp_fmtstream_lmargin(__fs) ((__fs)->lmargin) +@@ -172,6 +174,7 @@ + #define __argp_fmtstream_rmargin argp_fmtstream_rmargin + #define __argp_fmtstream_wmargin argp_fmtstream_wmargin + ++#if __STDC_VERSION__ - 199900L < 1 + /* Set __FS's left margin to LMARGIN and return the old value. */ + extern size_t argp_fmtstream_set_lmargin (argp_fmtstream_t __fs, + size_t __lmargin); +@@ -193,6 +196,7 @@ + /* Return the column number of the current output point in __FS. */ + extern size_t argp_fmtstream_point (argp_fmtstream_t __fs); + extern size_t __argp_fmtstream_point (argp_fmtstream_t __fs); ++#endif /* __STDC_VERSION__ - 199900L < 1 */ + + /* Internal routines. */ + extern void _argp_fmtstream_update (argp_fmtstream_t __fs); +@@ -216,7 +220,11 @@ + #endif + + #ifndef ARGP_FS_EI ++#if defined(__GNUC__) && !defined(__GNUC_STDC_INLINE__) + #define ARGP_FS_EI extern inline ++#else ++#define ARGP_FS_EI inline ++#endif + #endif + + ARGP_FS_EI size_t diff --git a/package/armadillo/Config.in b/package/armadillo/Config.in index e49997d885a..18bf750ebde 100644 --- a/package/armadillo/Config.in +++ b/package/armadillo/Config.in @@ -1,14 +1,18 @@ comment "armadillo needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP - depends on !(BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) # clapack - depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC) # clapack - depends on !BR2_bfin # clapack + depends on !(BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) + depends on !BR2_powerpc + depends on !BR2_bfin + +comment "armadillo needs an (e)glibc toolchain w/ C++" + depends on BR2_powerpc + depends on !BR2_INSTALL_LIBSTDCPP || BR2_TOOLCHAIN_USES_UCLIBC config BR2_PACKAGE_ARMADILLO bool "armadillo" depends on BR2_INSTALL_LIBSTDCPP depends on !(BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) # clapack - depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC) # clapack + depends on !BR2_powerpc || BR2_TOOLCHAIN_USES_GLIBC # clapack depends on !BR2_bfin # clapack select BR2_PACKAGE_CLAPACK help diff --git a/package/armadillo/armadillo.hash b/package/armadillo/armadillo.hash index 0046c568b30..4149a777ded 100644 --- a/package/armadillo/armadillo.hash +++ b/package/armadillo/armadillo.hash @@ -1,2 +1,5 @@ +# From http://sourceforge.net/projects/arma/files/?source=navbar +md5 a39f27197d24b3d25437fab6bb1d118f armadillo-6.500.4.tar.gz +sha1 68166e67521a720c72917d196b0807bc6cab8b2e armadillo-6.500.4.tar.gz # Locally computed: -sha256 63150f12bf7c7c598ea55b7271d99fce349ff386a3dc2cae3904b244f6e35320 armadillo-5.100.2.tar.gz +sha256 813de85fa61ba5077ed871d801ba7070d369e7e9742002e4c11474c75ff6d1c6 armadillo-6.500.4.tar.gz diff --git a/package/armadillo/armadillo.mk b/package/armadillo/armadillo.mk index 607103cd185..813a41bdc7e 100644 --- a/package/armadillo/armadillo.mk +++ b/package/armadillo/armadillo.mk @@ -4,8 +4,7 @@ # ################################################################################ -ARMADILLO_VERSION_MAJOR = 5.100 -ARMADILLO_VERSION = $(ARMADILLO_VERSION_MAJOR).2 +ARMADILLO_VERSION = 6.500.4 ARMADILLO_SITE = http://downloads.sourceforge.net/project/arma ARMADILLO_DEPENDENCIES = clapack ARMADILLO_INSTALL_STAGING = YES diff --git a/package/arptables/0004-Fix-musl-build-issue.patch b/package/arptables/0004-Fix-musl-build-issue.patch new file mode 100644 index 00000000000..e9419b0a964 --- /dev/null +++ b/package/arptables/0004-Fix-musl-build-issue.patch @@ -0,0 +1,71 @@ +From cbf84a0bc377c6a368d30571f37ebfab27784697 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Wed, 2 Dec 2015 04:57:33 +0100 +Subject: [PATCH 4/4] Fix musl build issue +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Due to clashes in the namespace between the Linux Kernel headers and the +netinet headers building arptables with the musl C library fails. + +Best advice from the musl developers is to not include both headers in a +userspace tool (see the thread on the musl mailing list [1], especially [2]). + +Since arptables only requires a few definitions from the Linux Kernel headers +we opt-out the clashing header files and define the needed definitions. + +[1] http://www.openwall.com/lists/musl/2012/10/09/1 +[2] http://www.openwall.com/lists/musl/2012/10/11/1 + +Signed-off-by: Jörg Krause +--- + extensions/arpt_CLASSIFY.c | 7 +++++++ + include/linux/netfilter_arp.h | 11 +++++++++++ + 2 files changed, 18 insertions(+) + +diff --git a/extensions/arpt_CLASSIFY.c b/extensions/arpt_CLASSIFY.c +index cb5770b..c58129f 100644 +--- a/extensions/arpt_CLASSIFY.c ++++ b/extensions/arpt_CLASSIFY.c +@@ -21,7 +21,14 @@ + #include + #include + #include ++ ++#ifdef __KERNEL__ + #include ++#else ++struct xt_classify_target_info { ++ uint32_t priority; ++}; ++#endif + + #define TC_H_MAJ_MASK (0xFFFF0000U) + #define TC_H_MIN_MASK (0x0000FFFFU) +diff --git a/include/linux/netfilter_arp.h b/include/linux/netfilter_arp.h +index 92bc6dd..2a63e82 100644 +--- a/include/linux/netfilter_arp.h ++++ b/include/linux/netfilter_arp.h +@@ -5,7 +5,18 @@ + * (C)2002 Rusty Russell IBM -- This code is GPL. + */ + ++#ifdef __KERNEL__ + #include ++#else ++/* Responses from hook functions. */ ++#define NF_DROP 0 ++#define NF_ACCEPT 1 ++#define NF_STOLEN 2 ++#define NF_QUEUE 3 ++#define NF_REPEAT 4 ++#define NF_STOP 5 ++#define NF_MAX_VERDICT NF_STOP ++#endif + + /* There is no PF_ARP. */ + #define NF_ARP 0 +-- +2.6.2 + diff --git a/package/assimp/0001-Fix-FBXConverter-use-proper-64-bit-constant.patch b/package/assimp/0001-Fix-FBXConverter-use-proper-64-bit-constant.patch new file mode 100644 index 00000000000..bfcbeb55e32 --- /dev/null +++ b/package/assimp/0001-Fix-FBXConverter-use-proper-64-bit-constant.patch @@ -0,0 +1,35 @@ +From 30a2ecc7939449f235282eb6de42e367fc5b1867 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Thu, 14 Jan 2016 22:13:15 +0100 +Subject: [PATCH] Fix FBXConverter: use proper 64-bit constant + +Use proper 64-bit constant for CONVERT_FBX_TIME(time) conversion, fixes: + + code/FBXConverter.cpp:2025: error: integer constant is too large for 'long' type + code/FBXConverter.cpp:2026: error: integer constant is too large for 'long' type + code/FBXConverter.cpp:2794: error: integer constant is too large for 'long' type + code/FBXConverter.cpp:2868: error: integer constant is too large for 'long' type + code/FBXConverter.cpp:2878: error: integer constant is too large for 'long' type + code/FBXConverter.cpp:2888: error: integer constant is too large for 'long' type + +Signed-off-by: Peter Seiderer +--- + code/FBXConverter.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/code/FBXConverter.cpp b/code/FBXConverter.cpp +index e0c6b9c..b1e9a71 100644 +--- a/code/FBXConverter.cpp ++++ b/code/FBXConverter.cpp +@@ -67,7 +67,7 @@ namespace FBX { + + #define MAGIC_NODE_TAG "_$AssimpFbx$" + +-#define CONVERT_FBX_TIME(time) static_cast(time) / 46186158000L ++#define CONVERT_FBX_TIME(time) static_cast(time) / 46186158000LL + + // XXX vc9's debugger won't step into anonymous namespaces + //namespace { +-- +2.1.4 + diff --git a/package/assimp/0002-fix-compilation-on-BigEndian.patch b/package/assimp/0002-fix-compilation-on-BigEndian.patch new file mode 100644 index 00000000000..93cba5d1206 --- /dev/null +++ b/package/assimp/0002-fix-compilation-on-BigEndian.patch @@ -0,0 +1,40 @@ +From 8457f3eff89dae35d43f679a66842ceedfd08808 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?IOhannes=20m=20zm=C3=B6lnig?= + +Date: Fri, 13 Nov 2015 22:33:20 +0100 +Subject: [PATCH] fix compilation on BigEndian + +cannot pass a function by reference where an lvalue is expected +(only applies to bigendian, where a macro expands to a byteswap function) + +Closes https://github.com/assimp/assimp/issues/613 + +Taken from [1] for buildroot assimp package compile fix. + +[1] https://github.com/assimp/assimp/commit/756cfd4f74b866e3183caede69daa8c105b73bab.patch + +Signed-off-by: Peter Seiderer +--- + code/Bitmap.cpp | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/code/Bitmap.cpp b/code/Bitmap.cpp +index 13ec372..829fd02 100644 +--- a/code/Bitmap.cpp ++++ b/code/Bitmap.cpp +@@ -84,7 +84,12 @@ namespace Assimp { + + template + inline std::size_t Copy(uint8_t* data, T& field) { ++#ifdef AI_BUILD_BIG_ENDIAN ++ T field_swapped=AI_BE(field); ++ std::memcpy(data, &field_swapped, sizeof(field)); return sizeof(field); ++#else + std::memcpy(data, &AI_BE(field), sizeof(field)); return sizeof(field); ++#endif + } + + void Bitmap::WriteHeader(Header& header, IOStream* file) { +-- +2.1.4 + diff --git a/package/assimp/Config.in b/package/assimp/Config.in new file mode 100644 index 00000000000..35e2f239acf --- /dev/null +++ b/package/assimp/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_ASSIMP + bool "assimp" + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_ZLIB + help + Open Asset Import Library (assimp) is a portable Open Source + library to import various well-known 3D model formats in a uniform + manner. The most recent version also knows how to export 3d files + and is therefore suitable as a general-purpose 3D model converter. + + http://www.assimp.org + +comment "assimp needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/assimp/assimp.mk b/package/assimp/assimp.mk new file mode 100644 index 00000000000..fd556e59623 --- /dev/null +++ b/package/assimp/assimp.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# assimp +# +################################################################################ + +ASSIMP_VERSION = v3.2 +ASSIMP_SITE = $(call github,assimp,assimp,$(ASSIMP_VERSION)) +ASSIMP_LICENSE = BSD-3c +ASSIMP_LICENSE_FILES = LICENSE +ASSIMP_DEPENDENCIES = zlib +ASSIMP_INSTALL_STAGING = YES + +ASSIMP_CONF_OPTS += -DASSIMP_BUILD_TESTS=OFF + +$(eval $(cmake-package)) diff --git a/package/at/0002-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch b/package/at/0001-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch similarity index 100% rename from package/at/0002-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch rename to package/at/0001-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch diff --git a/package/at/0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch b/package/at/0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch deleted file mode 100644 index 9e69922945a..00000000000 --- a/package/at/0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch +++ /dev/null @@ -1,33 +0,0 @@ -From a182f18fa3b9fb3dd817b601b51c758f9a77f407 Mon Sep 17 00:00:00 2001 -From: Marc Kleine-Budde -Date: Tue, 1 Dec 2009 17:08:14 +0100 -Subject: [PATCH 1/5] configure.ac: remove manual compiler check with AC_TRY_RUN - -AC_TRY_RUN breaks cross compilation, so remove it. autotools will take -care about a working (cross-) compiler. - -Signed-off-by: Marc Kleine-Budde ---- - configure.ac | 6 ------ - 1 files changed, 0 insertions(+), 6 deletions(-) - -diff --git a/configure.ac b/configure.ac -index a8c2a14..997a37f 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -38,12 +38,6 @@ case "$host" in - AC_MSG_RESULT(no) - ;; - esac --AC_MSG_CHECKING(Trying to compile a trivial ANSI C program) --AC_TRY_RUN([ main(int ac, char **av) { return 0; } ], -- AC_MSG_RESULT(yes), -- AC_MSG_RESULT(no) -- AC_MSG_ERROR(Could not compile and run even a trivial ANSI C program - check CC.), -- AC_MSG_ERROR(Could not compile and run even a trivial ANSI C program - check CC.)) - - AC_MSG_CHECKING(__attribute__((noreturn))) - AC_TRY_COMPILE([], [void __attribute__((noreturn)) panic(void);], --- -1.6.5.3 - diff --git a/package/at/0004-Makefile.in-replace-IROOT-by-DESTDIR.patch b/package/at/0002-Makefile.in-replace-IROOT-by-DESTDIR.patch similarity index 81% rename from package/at/0004-Makefile.in-replace-IROOT-by-DESTDIR.patch rename to package/at/0002-Makefile.in-replace-IROOT-by-DESTDIR.patch index 0d1d5f6e3e4..856b6c8d08f 100644 --- a/package/at/0004-Makefile.in-replace-IROOT-by-DESTDIR.patch +++ b/package/at/0002-Makefile.in-replace-IROOT-by-DESTDIR.patch @@ -6,27 +6,30 @@ Subject: [PATCH 5/5] Makefile.in: replace IROOT by DESTDIR This patch replaces IROOT by DESTDIR, which is the autotools standard variable. For backwards compatibilty IROOT overwrites the DESTDIR. +[Vincent: tweak the patch for the new version] + Signed-off-by: Marc Kleine-Budde +Signed-off-by: Vicente Olivert Riera --- - Makefile.in | 64 +++++++++++++++++++++++++++++++----------------------------- - 1 file changed, 34 insertions(+), 30 deletions(-) + Makefile.in | 68 ++++++++++++++++++++++++++++++++----------------------------- + 1 file changed, 36 insertions(+), 32 deletions(-) -Index: at-3.1.13/Makefile.in -=================================================================== ---- at-3.1.13.orig/Makefile.in -+++ at-3.1.13/Makefile.in -@@ -16,6 +16,10 @@ docdir = $(prefix)/doc - atdocdir = $(docdir)/at +diff --git a/Makefile.in b/Makefile.in +index 06544f9..1f699d9 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -17,6 +17,10 @@ atdocdir = $(docdir)/at etcdir = @ETCDIR@ + systemdsystemunitdir = @systemdsystemunitdir@ +ifdef IROOT -+DESTDIR = $(IROOT) ++DESTDIR = $(DESTDIR) +endif + DAEMON_USERNAME = @DAEMON_USERNAME@ DAEMON_GROUPNAME= @DAEMON_GROUPNAME@ LOADAVG_MX = @LOADAVG_MX@ -@@ -86,38 +90,38 @@ atrun: atrun.in +@@ -91,41 +95,41 @@ atrun: atrun.in $(CC) -c $(CFLAGS) $(DEFS) $*.c install: all @@ -63,15 +66,15 @@ Index: at-3.1.13/Makefile.in + touch $(DESTDIR)$(LFILE) + chmod 600 $(DESTDIR)$(LFILE) + chown $(DAEMON_USERNAME):$(DAEMON_GROUPNAME) $(DESTDIR)$(LFILE) -+ test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -o root -g $(DAEMON_GROUPNAME) -m 640 at.deny $(DESTDIR$ -+ $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 6755 -s at $(DESTDIR)$(bindir) ++ test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -o root -g $(DAEMON_GROUPNAME) -m 640 at.deny $(DESTDIR)$(etcdir)/ ++ $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 6755 at $(DESTDIR)$(bindir) + $(LN_S) -f at $(DESTDIR)$(bindir)/atq + $(LN_S) -f at $(DESTDIR)$(bindir)/atrm + $(INSTALL) -g root -o root -m 755 batch $(DESTDIR)$(bindir) + $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man1dir) + $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man5dir) + $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man8dir) -+ $(INSTALL) -g root -o root -m 755 -s atd $(DESTDIR)$(sbindir) ++ $(INSTALL) -g root -o root -m 755 atd $(DESTDIR)$(sbindir) + $(INSTALL) -g root -o root -m 755 atrun $(DESTDIR)$(sbindir) + $(INSTALL) -g root -o root -m 644 at.1 $(DESTDIR)$(man1dir)/ + cd $(DESTDIR)$(man1dir) && $(LN_S) -f at.1 atq.1 && $(LN_S) -f at.1 batch.1 && $(LN_S) -f at.1 atrm.1 @@ -92,6 +95,14 @@ Index: at-3.1.13/Makefile.in + rm -f $(DESTDIR)$(mandir)/cat1/at.1* $(DESTDIR)$(mandir)/cat1/batch.1* \ + $(DESTDIR)$(mandir)/cat1/atq.1* + rm -f $(DESTDIR)$(mandir)/cat1/atd.8* + if test x"$(systemdsystemunitdir)" != xno; then \ +- $(INSTALL) -o root -g root -m 755 -d $(IROOT)$(systemdsystemunitdir); \ +- $(INSTALL) -o root -g root -m 644 atd.service $(IROOT)$(systemdsystemunitdir); \ ++ $(INSTALL) -o root -g root -m 755 -d $(DESTDIR)$(systemdsystemunitdir); \ ++ $(INSTALL) -o root -g root -m 644 atd.service $(DESTDIR)$(systemdsystemunitdir); \ + fi dist: checkin $(DIST) $(LIST) Filelist.asc - (cd ..; tar cf - `for a in $(DIST) $(LIST); do echo at-$(VERSION)/$$a; done` |\ +-- +2.4.10 + diff --git a/package/at/0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch b/package/at/0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch deleted file mode 100644 index e1ab3d37667..00000000000 --- a/package/at/0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 8720a71757f3626bf3bbc3a7aa2185e6387e5689 Mon Sep 17 00:00:00 2001 -From: Marc Kleine-Budde -Date: Tue, 1 Dec 2009 20:37:31 +0100 -Subject: [PATCH 3/5] Makefile.in: add LDFLAGS to linking stage - -The linking stage ignores the LDFLAGS, this breaks if the flex library -lives in a non standard location. - -This patch add LDFLAGS to both "at" and "atd" linking stage. - -Signed-off-by: Marc Kleine-Budde ---- - Makefile.in | 4 ++-- - 1 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/Makefile.in b/Makefile.in -index dae6b7d..b766bbb 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -65,13 +65,13 @@ LIST = Filelist Filelist.asc - all: at atd atrun - - at: $(ATOBJECTS) -- $(CC) $(CFLAGS) -o at $(ATOBJECTS) $(LIBS) $(LEXLIB) -+ $(CC) $(CFLAGS) $(LDFLAGS) -o at $(ATOBJECTS) $(LIBS) $(LEXLIB) - rm -f $(CLONES) - $(LN_S) -f at atq - $(LN_S) -f at atrm - - atd: $(RUNOBJECTS) -- $(CC) $(CFLAGS) -o atd $(RUNOBJECTS) $(LIBS) $(PAMLIB) -+ $(CC) $(CFLAGS) $(LDFLAGS) -o atd $(RUNOBJECTS) $(LIBS) $(PAMLIB) - - y.tab.c y.tab.h: parsetime.y - $(YACC) -d parsetime.y --- -1.6.5.3 - diff --git a/package/at/0005-Makefile.in-make-install-fix.patch b/package/at/0003-Makefile.in-make-install-fix.patch similarity index 78% rename from package/at/0005-Makefile.in-make-install-fix.patch rename to package/at/0003-Makefile.in-make-install-fix.patch index ad843449a28..831ea1a3a99 100644 --- a/package/at/0005-Makefile.in-make-install-fix.patch +++ b/package/at/0003-Makefile.in-make-install-fix.patch @@ -3,16 +3,19 @@ Buildroot will ensure all files are owned by root and stripped anyway (if needed) before the rootfs is created. +[Vincent: tweak the patch for the new version] + Signed-off-by: Peter Korsgaard +Signed-off-by: Vicente Olivert Riera --- - Makefile.in | 39 +++++++++++++++++++-------------------- - 1 file changed, 19 insertions(+), 20 deletions(-) + Makefile.in | 43 +++++++++++++++++++++---------------------- + 1 file changed, 21 insertions(+), 22 deletions(-) -Index: at-3.1.13/Makefile.in -=================================================================== ---- at-3.1.13.orig/Makefile.in -+++ at-3.1.13/Makefile.in -@@ -90,35 +90,34 @@ atrun: atrun.in +diff --git a/Makefile.in b/Makefile.in +index 1f699d9..f313f9b 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -95,41 +95,40 @@ atrun: atrun.in $(CC) -c $(CFLAGS) $(DEFS) $*.c install: all @@ -32,8 +35,8 @@ Index: at-3.1.13/Makefile.in touch $(DESTDIR)$(LFILE) chmod 600 $(DESTDIR)$(LFILE) - chown $(DAEMON_USERNAME):$(DAEMON_GROUPNAME) $(DESTDIR)$(LFILE) -- test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -o root -g $(DAEMON_GROUPNAME) -m 640 at.deny $(DESTDIR$ -- $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 6755 -s at $(DESTDIR)$(bindir) +- test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -o root -g $(DAEMON_GROUPNAME) -m 640 at.deny $(DESTDIR)$(etcdir)/ +- $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 6755 at $(DESTDIR)$(bindir) + test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -m 640 at.deny $(DESTDIR)$(etcdir)/ + $(INSTALL) -m 6755 at $(DESTDIR)$(bindir) $(LN_S) -f at $(DESTDIR)$(bindir)/atq @@ -42,7 +45,7 @@ Index: at-3.1.13/Makefile.in - $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man1dir) - $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man5dir) - $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man8dir) -- $(INSTALL) -g root -o root -m 755 -s atd $(DESTDIR)$(sbindir) +- $(INSTALL) -g root -o root -m 755 atd $(DESTDIR)$(sbindir) - $(INSTALL) -g root -o root -m 755 atrun $(DESTDIR)$(sbindir) - $(INSTALL) -g root -o root -m 644 at.1 $(DESTDIR)$(man1dir)/ + $(INSTALL) -m 755 batch $(DESTDIR)$(bindir) @@ -67,3 +70,14 @@ Index: at-3.1.13/Makefile.in rm -f $(DESTDIR)$(mandir)/cat1/at.1* $(DESTDIR)$(mandir)/cat1/batch.1* \ $(DESTDIR)$(mandir)/cat1/atq.1* rm -f $(DESTDIR)$(mandir)/cat1/atd.8* + if test x"$(systemdsystemunitdir)" != xno; then \ +- $(INSTALL) -o root -g root -m 755 -d $(DESTDIR)$(systemdsystemunitdir); \ +- $(INSTALL) -o root -g root -m 644 atd.service $(DESTDIR)$(systemdsystemunitdir); \ ++ $(INSTALL) -m 755 -d $(DESTDIR)$(systemdsystemunitdir); \ ++ $(INSTALL) -m 644 atd.service $(DESTDIR)$(systemdsystemunitdir); \ + fi + + dist: checkin $(DIST) $(LIST) Filelist.asc +-- +2.4.10 + diff --git a/package/at/0006-getloadavg.c-fix.patch b/package/at/0004-getloadavg.c-fix.patch similarity index 100% rename from package/at/0006-getloadavg.c-fix.patch rename to package/at/0004-getloadavg.c-fix.patch diff --git a/package/at/0007-parsetime.l-include-config-h.patch b/package/at/0005-parsetime.l-include-config-h.patch similarity index 100% rename from package/at/0007-parsetime.l-include-config-h.patch rename to package/at/0005-parsetime.l-include-config-h.patch diff --git a/package/at/0008-remove-glibc-__isleap-assumption.patch b/package/at/0006-remove-glibc-__isleap-assumption.patch similarity index 100% rename from package/at/0008-remove-glibc-__isleap-assumption.patch rename to package/at/0006-remove-glibc-__isleap-assumption.patch diff --git a/package/at/S99at b/package/at/S99at index accaa316faf..666d39b546e 100755 --- a/package/at/S99at +++ b/package/at/S99at @@ -6,12 +6,12 @@ umask 077 start() { - echo -n "Starting atd: " + printf "Starting atd: " start-stop-daemon --start --quiet --make-pidfile --pidfile /var/run/atd.pid --background --exec /usr/sbin/atd -- -f echo "OK" } stop() { - echo -n "Stopping atd: " + printf "Stopping atd: " start-stop-daemon --stop --quiet --pidfile /var/run/atd.pid echo "OK" } diff --git a/package/at/at.hash b/package/at/at.hash index 481c93716fb..22c732cc7ed 100644 --- a/package/at/at.hash +++ b/package/at/at.hash @@ -1,4 +1,2 @@ -# From http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/a/at/at_3.1.13-2%2Bdeb7u1.dsc -sha1 9873e0c38403ef58364912d0b505fd20798fd400 at_3.1.13.orig.tar.gz -sha256 3a8b90868d615d21a92f4986ea9a823886329af8fae8dd7ab4eed9b273bca072 at_3.1.13.orig.tar.gz -md5 1da61af6c29e323abaaf13ee1a8dad79 at_3.1.13.orig.tar.gz +# From: http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/a/at/at_3.1.16-1.dsc +sha256 cb9af59c6a54edce9536ba629841055409d1f89d8ae26494727a97141fb4d5c1 at_3.1.16.orig.tar.gz diff --git a/package/at/at.mk b/package/at/at.mk index 1504e32a621..88653604270 100644 --- a/package/at/at.mk +++ b/package/at/at.mk @@ -4,7 +4,7 @@ # ################################################################################ -AT_VERSION = 3.1.13 +AT_VERSION = 3.1.16 AT_SOURCE = at_$(AT_VERSION).orig.tar.gz AT_SITE = http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/a/at # missing deps for parsetime.l diff --git a/package/atk/atk.hash b/package/atk/atk.hash index 4f905f2dfbc..986497c490c 100644 --- a/package/atk/atk.hash +++ b/package/atk/atk.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/atk/2.16/atk-2.16.0.sha256sum -sha256 095f986060a6a0b22eb15eef84ae9f14a1cf8082488faa6886d94c37438ae562 atk-2.16.0.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/atk/2.18/atk-2.18.0.sha256sum +sha256 ce6c48d77bf951083029d5a396dd552d836fff3c1715d3a7022e917e46d0c92b atk-2.18.0.tar.xz diff --git a/package/atk/atk.mk b/package/atk/atk.mk index 53365e07674..1c5b90c77d2 100644 --- a/package/atk/atk.mk +++ b/package/atk/atk.mk @@ -4,7 +4,7 @@ # ################################################################################ -ATK_VERSION_MAJOR = 2.16 +ATK_VERSION_MAJOR = 2.18 ATK_VERSION = $(ATK_VERSION_MAJOR).0 ATK_SOURCE = atk-$(ATK_VERSION).tar.xz ATK_SITE = http://ftp.gnome.org/pub/gnome/sources/atk/$(ATK_VERSION_MAJOR) @@ -12,64 +12,7 @@ ATK_LICENSE = LGPLv2+ ATK_LICENSE_FILES = COPYING ATK_INSTALL_STAGING = YES ATK_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) LDFLAGS=-L$(STAGING_DIR)/usr/lib install - -ATK_CONF_ENV = \ - ac_cv_func_posix_getpwuid_r=yes \ - glib_cv_stack_grows=no \ - glib_cv_uscore=no \ - ac_cv_func_strtod=yes \ - ac_fsusage_space=yes \ - fu_cv_sys_stat_statfs2_bsize=yes \ - ac_cv_func_closedir_void=no \ - ac_cv_func_getloadavg=no \ - ac_cv_lib_util_getloadavg=no \ - ac_cv_lib_getloadavg_getloadavg=no \ - ac_cv_func_getgroups=yes \ - ac_cv_func_getgroups_works=yes \ - ac_cv_func_chown_works=yes \ - ac_cv_have_decl_euidaccess=no \ - ac_cv_func_euidaccess=no \ - ac_cv_have_decl_strnlen=yes \ - ac_cv_func_strnlen_working=yes \ - ac_cv_func_lstat_dereferences_slashed_symlink=yes \ - ac_cv_func_lstat_empty_string_bug=no \ - ac_cv_func_stat_empty_string_bug=no \ - vb_cv_func_rename_trailing_slash_bug=no \ - ac_cv_have_decl_nanosleep=yes \ - jm_cv_func_nanosleep_works=yes \ - gl_cv_func_working_utimes=yes \ - ac_cv_func_utime_null=yes \ - ac_cv_have_decl_strerror_r=yes \ - ac_cv_func_strerror_r_char_p=no \ - jm_cv_func_svid_putenv=yes \ - ac_cv_func_getcwd_null=yes \ - ac_cv_func_getdelim=yes \ - ac_cv_func_mkstemp=yes \ - utils_cv_func_mkstemp_limitations=no \ - utils_cv_func_mkdir_trailing_slash_bug=no \ - ac_cv_func_memcmp_working=yes \ - ac_cv_have_decl_malloc=yes \ - jm_cv_func_gettimeofday_clobber=no \ - gl_cv_func_working_readdir=yes \ - jm_ac_cv_func_link_follows_symlink=no \ - utils_cv_localtime_cache=no \ - ac_cv_struct_st_mtim_nsec=no \ - gl_cv_func_tzset_clobber=no \ - gl_cv_func_getcwd_null=yes \ - gl_cv_func_getcwd_path_max=yes \ - ac_cv_func_fnmatch_gnu=yes \ - am_getline_needs_run_time_check=no \ - am_cv_func_working_getline=yes \ - gl_cv_func_mkdir_trailing_slash_bug=no \ - gl_cv_func_mkstemp_limitations=no \ - ac_cv_func_working_mktime=yes \ - jm_cv_func_working_re_compile_pattern=yes \ - ac_use_included_regex=no \ - gl_cv_c_restrict=no \ - ac_cv_prog_F77=no - ATK_CONF_OPTS = --disable-glibtest --enable-explicit-deps=no - ATK_DEPENDENCIES = libglib2 host-pkgconf $(eval $(autotools-package)) diff --git a/package/atkmm/Config.in b/package/atkmm/Config.in new file mode 100644 index 00000000000..2091eabeb49 --- /dev/null +++ b/package/atkmm/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_ATKMM + bool "atkmm" + select BR2_PACKAGE_ATK + select BR2_PACKAGE_GLIBMM + select BR2_PACKAGE_LIBSIGC + depends on BR2_INSTALL_LIBSTDCPP # glibmm + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_TOOLCHAIN_HAS_THREADS # atk/glibmm -> libglib2 + depends on BR2_USE_MMU # atk/glibmm -> libglib2 + depends on BR2_USE_WCHAR # atk/glibmm -> libglib2 + + help + The atkmm package is a set of C++ bindings for Atk. + + http://www.gtkmm.org/ + +comment "atkmm needs a toolchain w/ C++, wchar, threads, gcc >= 4.8" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR \ + || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/atkmm/atkmm.hash b/package/atkmm/atkmm.hash new file mode 100644 index 00000000000..4b3577c88d4 --- /dev/null +++ b/package/atkmm/atkmm.hash @@ -0,0 +1,2 @@ +# From http://ftp.gnome.org/pub/gnome/sources/atkmm/2.24/atkmm-2.24.2.sha256sum +sha256 ff95385759e2af23828d4056356f25376cfabc41e690ac1df055371537e458bd atkmm-2.24.2.tar.xz diff --git a/package/atkmm/atkmm.mk b/package/atkmm/atkmm.mk new file mode 100644 index 00000000000..2c070f250e6 --- /dev/null +++ b/package/atkmm/atkmm.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# atkmm +# +################################################################################ + +ATKMM_VERSION_MAJOR = 2.24 +ATKMM_VERSION = $(ATKMM_VERSION_MAJOR).2 +ATKMM_SOURCE = atkmm-$(ATKMM_VERSION).tar.xz +ATKMM_SITE = http://ftp.gnome.org/pub/gnome/sources/atkmm/$(ATKMM_VERSION_MAJOR) +ATKMM_LICENSE = LGPLv2.1+ (library), GPLv2+ (tools) +ATKMM_LICENSE_FILES = COPYING COPYING.tools +ATKMM_INSTALL_STAGING = YES +ATKMM_DEPENDENCIES = atk glibmm libsigc host-pkgconf + +$(eval $(autotools-package)) diff --git a/package/audiofile/0001-Fix-pkg-config-for-static-linking.patch b/package/audiofile/0001-Fix-pkg-config-for-static-linking.patch new file mode 100644 index 00000000000..54757abbd51 --- /dev/null +++ b/package/audiofile/0001-Fix-pkg-config-for-static-linking.patch @@ -0,0 +1,56 @@ +From 2abf7d2e5c533bf4d7407c2c8057a329cd49a3cd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Tue, 24 Nov 2015 21:57:27 +0100 +Subject: [PATCH 1/1] Fix pkg-config for static linking +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Static linking userspace programs such as MPD against libaudiofile fails if +FLAC is available, because libaudiofile is linked against FLAC, but this isn't +expressed in the pkg-config file: + +[..] +arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libaudiofile.a(FLAC.o): In function `FLACDecoder::reset2()': +FLAC.cpp:(.text+0x58): undefined reference to `FLAC__stream_decoder_seek_absolute' +/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libaudiofile.a(FLAC.o): In function `FLACEncoder::sync2()': +FLAC.cpp:(.text+0x88): undefined reference to `FLAC__stream_encoder_finish' +/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libaudiofile.a(FLAC.o): In function `FLACDecoder::~FLACDecoder()': +FLAC.cpp:(.text+0xc4): undefined reference to `FLAC__stream_decoder_delete' +/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libaudiofile.a(FLAC.o): In function `FLACEncoder::~FLACEncoder()': +FLAC.cpp:(.text+0x164): undefined reference to `FLAC__stream_encoder_delete' +/home/buildroot/build/instance-1/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libaudiofile.a(FLAC.o): In function `FLACDecoder::runPull()': +[..] + +The Libs.private field is specifically designed for such usage: + +From pkg-config documentation: + + Libs.private: + + This line should list any private libraries in use. Private + libraries are libraries which are not exposed through your + library, but are needed in the case of static linking. + +Therefore, this patch adds a reference to FLAC as well as to lcov in the +Libs.private field of the pkg-config file. + +Signed-off-by: Jörg Krause +--- + audiofile.pc.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/audiofile.pc.in b/audiofile.pc.in +index ad5956a..d6055ef 100644 +--- a/audiofile.pc.in ++++ b/audiofile.pc.in +@@ -8,5 +8,5 @@ Description: audiofile + Requires: + Version: @VERSION@ + Libs: -L${libdir} -laudiofile +-Libs.private: -lm ++Libs.private: @FLAC_LIBS@ @COVERAGE_LIBS@ -lm + Cflags: -I${includedir} +-- +2.6.2 + diff --git a/package/audiofile/audiofile.mk b/package/audiofile/audiofile.mk index c685ce16163..ee3f833a4d3 100644 --- a/package/audiofile/audiofile.mk +++ b/package/audiofile/audiofile.mk @@ -12,7 +12,7 @@ AUDIOFILE_CONF_OPTS = --disable-examples AUDIOFILE_DEPENDENCIES = host-pkgconf # configure is outdated and has old bugs because of it AUDIOFILE_AUTORECONF = YES -AUDIOFILE_LICENSE = GPLv2+ LGPLv2.1+ +AUDIOFILE_LICENSE = GPLv2+, LGPLv2.1+ AUDIOFILE_LICENSE_FILES = COPYING COPYING.GPL ifeq ($(BR2_PACKAGE_FLAC),y) diff --git a/package/audit/0001-Missed-cross-compile-fixes.patch b/package/audit/0001-Missed-cross-compile-fixes.patch deleted file mode 100755 index a52d0cdcd5b..00000000000 --- a/package/audit/0001-Missed-cross-compile-fixes.patch +++ /dev/null @@ -1,694 +0,0 @@ -From d93f9cc084bb88d245413da2e8b03db26c6957bc Mon Sep 17 00:00:00 2001 -From: Clayton Shotwell -Date: Wed, 22 Jul 2015 08:58:36 -0500 -Subject: [PATCH] Missed cross compile fixes - -My previous patch set attempted to fix the building of the gen_tables.c -applications so they can run on the build machine when cross compiling. -I failed to realize that automake would still attempt to insert the -CFLAGS and CPPFLAGS variables even when they should be CFLAGS_FOR_BUILD -and CPPFLAGS_FOR_BUILD. This change set should override those FLAGS -variables properly. - -Signed-off-by: Clayton Shotwell ---- - auparse/Makefile.am | 185 +++++++++++++++++++++++++++++++++++++++++----------- - lib/Makefile.am | 85 +++++++++++++++++++----- - 2 files changed, 216 insertions(+), 54 deletions(-) - -diff --git a/auparse/Makefile.am b/auparse/Makefile.am -index 742f7ba..4b864d7 100644 ---- a/auparse/Makefile.am -+++ b/auparse/Makefile.am -@@ -79,302 +79,413 @@ noinst_PROGRAMS = gen_accesstabs_h gen_captabs_h gen_clock_h \ - gen_umounttabs_h - - gen_accesstabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h accesstab.h --gen_accesstabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="accesstab.h"' -+gen_accesstabs_h_CFLAGS = '-DTABLE_H="accesstab.h"' - $(gen_accesstabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_accesstabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_accesstabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_accesstabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_accesstabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_accesstabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - accesstabs.h: gen_accesstabs_h Makefile - ./gen_accesstabs_h --i2s-transtab access > $@ - - gen_captabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h captab.h --gen_captabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="captab.h"' -+gen_captabs_h_CFLAGS = '-DTABLE_H="captab.h"' - $(gen_captabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_captabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_captabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_captabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_captabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_captabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - captabs.h: gen_captabs_h Makefile - ./gen_captabs_h --i2s cap > $@ - - gen_clock_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h clocktab.h --gen_clock_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="clocktab.h"' -+gen_clock_h_CFLAGS = '-DTABLE_H="clocktab.h"' - $(gen_clock_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_clock_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_clock_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_clock_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_clock_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_clock_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - clocktabs.h: gen_clock_h Makefile - ./gen_clock_h --i2s clock > $@ - - gen_clone_flagtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h \ - clone-flagtab.h --gen_clone_flagtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="clone-flagtab.h"' -+gen_clone_flagtabs_h_CFLAGS = '-DTABLE_H="clone-flagtab.h"' - $(gen_clone_flagtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_clone_flagtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_clone_flagtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_clone-flagtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_clone-flagtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_clone-flagtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - clone-flagtabs.h: gen_clone-flagtabs_h Makefile - ./gen_clone-flagtabs_h --i2s-transtab clone_flag > $@ - - gen_epoll_ctls_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h epoll_ctl.h --gen_epoll_ctls_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="epoll_ctl.h"' -+gen_epoll_ctls_h_CFLAGS = '-DTABLE_H="epoll_ctl.h"' - $(gen_epoll_ctls_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_epoll_ctls_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_epoll_ctls_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_epoll_ctls_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_epoll_ctls_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_epoll_ctls_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - epoll_ctls.h: gen_epoll_ctls_h Makefile - ./gen_epoll_ctls_h --i2s epoll_ctl > $@ - - gen_famtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h famtab.h --gen_famtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="famtab.h"' -+gen_famtabs_h_CFLAGS = '-DTABLE_H="famtab.h"' - $(gen_famtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_famtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_famtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_famtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_famtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_famtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - famtabs.h: gen_famtabs_h Makefile - ./gen_famtabs_h --i2s fam > $@ - - gen_flagtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h flagtab.h - # ../auparse/ is used to avoid using ../lib/flagtab.h --gen_flagtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="../auparse/flagtab.h"' -+gen_flagtabs_h_CFLAGS = '-DTABLE_H="../auparse/flagtab.h"' - $(gen_flagtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_flagtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_flagtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_flagtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_flagtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_flagtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - flagtabs.h: gen_flagtabs_h Makefile - ./gen_flagtabs_h --i2s-transtab flag > $@ - - gen_fcntl_cmdtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h \ - fcntl-cmdtab.h --gen_fcntl_cmdtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="fcntl-cmdtab.h"' -+gen_fcntl_cmdtabs_h_CFLAGS = '-DTABLE_H="fcntl-cmdtab.h"' - $(gen_fcntl_cmdtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_fcntl_cmdtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_fcntl_cmdtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_fcntl-cmdtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_fcntl-cmdtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_fcntl-cmdtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - fcntl-cmdtabs.h: gen_fcntl-cmdtabs_h Makefile - ./gen_fcntl-cmdtabs_h --i2s fcntl > $@ - - gen_icmptypetabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h icmptypetab.h --gen_icmptypetabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="icmptypetab.h"' -+gen_icmptypetabs_h_CFLAGS = '-DTABLE_H="icmptypetab.h"' - $(gen_icmptypetabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_icmptypetabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_icmptypetabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_icmptypetabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_icmptypetabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_icmptypetabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - icmptypetabs.h: gen_icmptypetabs_h Makefile - ./gen_icmptypetabs_h --i2s icmptype > $@ - - gen_ioctlreqtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h ioctlreqtab.h --gen_ioctlreqtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="ioctlreqtab.h"' -+gen_ioctlreqtabs_h_CFLAGS = '-DTABLE_H="ioctlreqtab.h"' - $(gen_ioctlreqtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_ioctlreqtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_ioctlreqtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_ioctlreqtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_ioctlreqtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_ioctlreqtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - ioctlreqtabs.h: gen_ioctlreqtabs_h Makefile - ./gen_ioctlreqtabs_h --i2s ioctlreq > $@ - - gen_ipctabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h ipctab.h --gen_ipctabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="ipctab.h"' -+gen_ipctabs_h_CFLAGS = '-DTABLE_H="ipctab.h"' - $(gen_ipctabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_ipctabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_ipctabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_ipctabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_ipctabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_ipctabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - ipctabs.h: gen_ipctabs_h Makefile - ./gen_ipctabs_h --i2s ipc > $@ - - gen_ipccmdtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h ipccmdtab.h --gen_ipccmdtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="ipccmdtab.h"' -+gen_ipccmdtabs_h_CFLAGS = '-DTABLE_H="ipccmdtab.h"' - $(gen_ipccmdtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_ipccmdtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_ipccmdtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_ipccmdtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_ipccmdtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_ipccmdtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - ipccmdtabs.h: gen_ipccmdtabs_h Makefile - ./gen_ipccmdtabs_h --i2s-transtab ipccmd > $@ - - gen_ipoptnametabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h ipoptnametab.h --gen_ipoptnametabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="ipoptnametab.h"' -+gen_ipoptnametabs_h_CFLAGS = '-DTABLE_H="ipoptnametab.h"' - $(gen_ipoptnametabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_ipoptnametabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_ipoptnametabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_ipoptnametabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_ipoptnametabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_ipoptnametabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - ipoptnametabs.h: gen_ipoptnametabs_h Makefile - ./gen_ipoptnametabs_h --i2s ipoptname > $@ - - gen_ip6optnametabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h ip6optnametab.h --gen_ip6optnametabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="ip6optnametab.h"' -+gen_ip6optnametabs_h_CFLAGS = '-DTABLE_H="ip6optnametab.h"' - $(gen_ip6optnametabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_ip6optnametabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_ip6optnametabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_ip6optnametabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_ip6optnametabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_ip6optnametabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - ip6optnametabs.h: gen_ip6optnametabs_h Makefile - ./gen_ip6optnametabs_h --i2s ip6optname > $@ - - gen_mmaptabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h mmaptab.h --gen_mmaptabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="mmaptab.h"' -+gen_mmaptabs_h_CFLAGS = '-DTABLE_H="mmaptab.h"' - $(gen_mmaptabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_mmaptabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_mmaptabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_mmaptabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_mmaptabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_mmaptabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - mmaptabs.h: gen_mmaptabs_h Makefile - ./gen_mmaptabs_h --i2s-transtab mmap > $@ - - gen_mounttabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h mounttab.h --gen_mounttabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="mounttab.h"' -+gen_mounttabs_h_CFLAGS = '-DTABLE_H="mounttab.h"' - $(gen_mounttabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_mounttabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_mounttabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_mounttabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_mounttabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_mounttabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - mounttabs.h: gen_mounttabs_h Makefile - ./gen_mounttabs_h --i2s-transtab mount > $@ - - gen_nfprototabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h nfprototab.h --gen_nfprototabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="nfprototab.h"' -+gen_nfprototabs_h_CFLAGS = '-DTABLE_H="nfprototab.h"' - $(gen_nfprototabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_nfprototabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_nfprototabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_nfprototabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_nfprototabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_nfprototabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - nfprototabs.h: gen_nfprototabs_h Makefile - ./gen_nfprototabs_h --i2s nfproto > $@ - - gen_open_flagtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h \ - open-flagtab.h --gen_open_flagtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="open-flagtab.h"' -+gen_open_flagtabs_h_CFLAGS = '-DTABLE_H="open-flagtab.h"' - $(gen_open_flagtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_open_flagtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_open_flagtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_open-flagtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_open-flagtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_open-flagtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - open-flagtabs.h: gen_open-flagtabs_h Makefile - ./gen_open-flagtabs_h --i2s-transtab open_flag > $@ - - gen_persontabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h persontab.h --gen_persontabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="persontab.h"' -+gen_persontabs_h_CFLAGS = '-DTABLE_H="persontab.h"' - $(gen_persontabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_persontabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_persontabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_persontabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_persontabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_persontabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - persontabs.h: gen_persontabs_h Makefile - ./gen_persontabs_h --i2s person > $@ - - gen_ptracetabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h ptracetab.h --gen_ptracetabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="ptracetab.h"' -+gen_ptracetabs_h_CFLAGS = '-DTABLE_H="ptracetab.h"' - $(gen_ptracetabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_ptracetabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_ptracetabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_ptracetabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_ptracetabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_ptracetabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - ptracetabs.h: gen_ptracetabs_h Makefile - ./gen_ptracetabs_h --i2s ptrace > $@ - - gen_prctl_opttabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h prctl-opt-tab.h --gen_prctl_opttabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="prctl-opt-tab.h"' -+gen_prctl_opttabs_h_CFLAGS = '-DTABLE_H="prctl-opt-tab.h"' - $(gen_prctl_opttabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_prctl_opttabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_prctl_opttabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_prctl_opttabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_prctl_opttabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_prctl_opttabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - prctl_opttabs.h: gen_prctl_opttabs_h Makefile - ./gen_prctl_opttabs_h --i2s prctl_opt > $@ - - gen_pktoptnametabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h pktoptnametab.h --gen_pktoptnametabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="pktoptnametab.h"' -+gen_pktoptnametabs_h_CFLAGS = '-DTABLE_H="pktoptnametab.h"' - $(gen_pktoptnametabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_pktoptnametabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_pktoptnametabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_pktoptnametabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_pktoptnametabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_pktoptnametabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - pktoptnametabs.h: gen_pktoptnametabs_h Makefile - ./gen_pktoptnametabs_h --i2s pktoptname > $@ - - gen_prottabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h prottab.h --gen_prottabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="prottab.h"' -+gen_prottabs_h_CFLAGS = '-DTABLE_H="prottab.h"' - $(gen_prottabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_prottabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_prottabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_prottabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_prottabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_prottabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - prottabs.h: gen_prottabs_h Makefile - ./gen_prottabs_h --i2s-transtab prot > $@ - - gen_recvtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h recvtab.h --gen_recvtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="recvtab.h"' -+gen_recvtabs_h_CFLAGS = '-DTABLE_H="recvtab.h"' - $(gen_recvtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_recvtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_recvtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_recvtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_recvtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_recvtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - recvtabs.h: gen_recvtabs_h Makefile - ./gen_recvtabs_h --i2s-transtab recv > $@ - - gen_rlimit_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h rlimittab.h --gen_rlimit_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="rlimittab.h"' -+gen_rlimit_h_CFLAGS = '-DTABLE_H="rlimittab.h"' - $(gen_rlimit_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_rlimit_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_rlimit_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_rlimit_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_rlimit_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_rlimit_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - rlimittabs.h: gen_rlimit_h Makefile - ./gen_rlimit_h --i2s rlimit > $@ - - gen_schedtabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h schedtab.h --gen_schedtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="schedtab.h"' -+gen_schedtabs_h_CFLAGS = '-DTABLE_H="schedtab.h"' - $(gen_schedtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_schedtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_schedtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_schedtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_schedtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_schedtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - schedtabs.h: gen_schedtabs_h Makefile - ./gen_schedtabs_h --i2s sched > $@ - - gen_seccomptabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h seccomptab.h --gen_seccomptabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="seccomptab.h"' -+gen_seccomptabs_h_CFLAGS = '-DTABLE_H="seccomptab.h"' - $(gen_seccomptabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_seccomptabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_seccomptabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_seccomptabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_seccomptabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_seccomptabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - seccomptabs.h: gen_seccomptabs_h Makefile - ./gen_seccomptabs_h --i2s seccomp > $@ - - gen_seektabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h seektab.h --gen_seektabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="seektab.h"' -+gen_seektabs_h_CFLAGS = '-DTABLE_H="seektab.h"' - $(gen_seektabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_seektabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_seektabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_seektabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_seektabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_seektabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - seektabs.h: gen_seektabs_h Makefile - ./gen_seektabs_h --i2s seek > $@ - - gen_shm_modetabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h shm_modetab.h --gen_shm_modetabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="shm_modetab.h"' -+gen_shm_modetabs_h_CFLAGS = '-DTABLE_H="shm_modetab.h"' - $(gen_shm_modetabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_shm_modetabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_shm_modetabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_shm_modetabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_shm_modetabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_shm_modetabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - shm_modetabs.h: gen_shm_modetabs_h Makefile - ./gen_shm_modetabs_h --i2s-transtab shm_mode > $@ - - gen_signals_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h signaltab.h --gen_signals_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="signaltab.h"' -+gen_signals_h_CFLAGS = '-DTABLE_H="signaltab.h"' - $(gen_signals_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_signals_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_signals_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_signals_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_signals_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_signals_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - signaltabs.h: gen_signals_h Makefile - ./gen_signals_h --i2s signal > $@ - - gen_sockleveltabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h sockleveltab.h --gen_sockleveltabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="sockleveltab.h"' -+gen_sockleveltabs_h_CFLAGS = '-DTABLE_H="sockleveltab.h"' - $(gen_sockleveltabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_sockleveltabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_sockleveltabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_sockleveltabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_sockleveltabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_sockleveltabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - sockleveltabs.h: gen_sockleveltabs_h Makefile - ./gen_sockleveltabs_h --i2s socklevel > $@ - - gen_sockoptnametabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h sockoptnametab.h --gen_sockoptnametabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="sockoptnametab.h"' -+gen_sockoptnametabs_h_CFLAGS = '-DTABLE_H="sockoptnametab.h"' - $(gen_sockoptnametabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_sockoptnametabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_sockoptnametabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_sockoptnametabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_sockoptnametabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_sockoptnametabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - sockoptnametabs.h: gen_sockoptnametabs_h Makefile - ./gen_sockoptnametabs_h --i2s sockoptname > $@ - - gen_socktabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h socktab.h --gen_socktabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="socktab.h"' -+gen_socktabs_h_CFLAGS = '-DTABLE_H="socktab.h"' - $(gen_socktabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_socktabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_socktabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_socktabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_socktabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_socktabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - socktabs.h: gen_socktabs_h Makefile - ./gen_socktabs_h --i2s sock > $@ - - gen_socktypetabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h socktypetab.h --gen_socktypetabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="socktypetab.h"' -+gen_socktypetabs_h_CFLAGS = '-DTABLE_H="socktypetab.h"' - $(gen_socktypetabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_socktypetabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_socktypetabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_socktypetabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_socktypetabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_socktypetabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - socktypetabs.h: gen_socktypetabs_h Makefile - ./gen_socktypetabs_h --i2s sock_type > $@ - - gen_tcpoptnametabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h tcpoptnametab.h --gen_tcpoptnametabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="tcpoptnametab.h"' -+gen_tcpoptnametabs_h_CFLAGS = '-DTABLE_H="tcpoptnametab.h"' - $(gen_tcpoptnametabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_tcpoptnametabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_tcpoptnametabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_tcpoptnametabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_tcpoptnametabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_tcpoptnametabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - tcpoptnametabs.h: gen_tcpoptnametabs_h Makefile - ./gen_tcpoptnametabs_h --i2s tcpoptname > $@ - - gen_typetabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h typetab.h --gen_typetabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="typetab.h"' -+gen_typetabs_h_CFLAGS = '-DTABLE_H="typetab.h"' - $(gen_typetabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_typetabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_typetabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_typetabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_typetabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_typetabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - typetabs.h: gen_typetabs_h Makefile - ./gen_typetabs_h --s2i type > $@ - - gen_umounttabs_h_SOURCES = ../lib/gen_tables.c ../lib/gen_tables.h umounttab.h --gen_umounttabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="umounttab.h"' -+gen_umounttabs_h_CFLAGS = '-DTABLE_H="umounttab.h"' - $(gen_umounttabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_umounttabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_umounttabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_umounttabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_umounttabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_umounttabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - umounttabs.h: gen_umounttabs_h Makefile - ./gen_umounttabs_h --i2s-transtab umount > $@ - -diff --git a/lib/Makefile.am b/lib/Makefile.am -index dddadd5..e2ed101 100644 ---- a/lib/Makefile.am -+++ b/lib/Makefile.am -@@ -70,145 +70,196 @@ if USE_AARCH64 - noinst_PROGRAMS += gen_aarch64_tables_h - endif - gen_actiontabs_h_SOURCES = gen_tables.c gen_tables.h actiontab.h --gen_actiontabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="actiontab.h"' -+gen_actiontabs_h_CFLAGS = '-DTABLE_H="actiontab.h"' - $(gen_actiontabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_actiontabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_actiontabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_actiontabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_actiontabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_actiontabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - actiontabs.h: gen_actiontabs_h Makefile - ./gen_actiontabs_h --lowercase --i2s --s2i action > $@ - - if USE_ALPHA - gen_alpha_tables_h_SOURCES = gen_tables.c gen_tables.h alpha_table.h --gen_alpha_tables_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="alpha_table.h"' -+gen_alpha_tables_h_CFLAGS = '-DTABLE_H="alpha_table.h"' - $(gen_alpha_tables_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_alpha_tables_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_alpha_tables_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_alpha_tables_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_alpha_tables_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_alpha_tables_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - alpha_tables.h: gen_alpha_tables_h Makefile - ./gen_alpha_tables_h --lowercase --i2s --s2i alpha_syscall > $@ - endif - - if USE_ARM - gen_arm_tables_h_SOURCES = gen_tables.c gen_tables.h arm_table.h --gen_arm_tables_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="arm_table.h"' -+gen_arm_tables_h_CFLAGS = '-DTABLE_H="arm_table.h"' - $(gen_arm_tables_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_arm_tables_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_arm_tables_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_arm_tables_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_arm_tables_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_arm_tables_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - arm_tables.h: gen_arm_tables_h Makefile - ./gen_arm_tables_h --lowercase --i2s --s2i arm_syscall > $@ - endif - - if USE_AARCH64 - gen_aarch64_tables_h_SOURCES = gen_tables.c gen_tables.h aarch64_table.h --gen_aarch64_tables_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="aarch64_table.h"' -+gen_aarch64_tables_h_CFLAGS = '-DTABLE_H="aarch64_table.h"' - $(gen_aarch64_tables_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_aarch64_tables_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_aarch64_tables_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_aarch64_tables_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_aarch64_tables_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_aarch64_tables_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - aarch64_tables.h: gen_aarch64_tables_h Makefile - ./gen_aarch64_tables_h --lowercase --i2s --s2i aarch64_syscall > $@ - endif - - gen_errtabs_h_SOURCES = gen_tables.c gen_tables.h errtab.h --gen_errtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="errtab.h"' -+gen_errtabs_h_CFLAGS = '-DTABLE_H="errtab.h"' - $(gen_errtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_errtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_errtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_errtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_errtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_errtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - errtabs.h: gen_errtabs_h Makefile - ./gen_errtabs_h --duplicate-ints --uppercase --i2s --s2i err > $@ - - gen_fieldtabs_h_SOURCES = gen_tables.c gen_tables.h fieldtab.h --gen_fieldtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="fieldtab.h"' -+gen_fieldtabs_h_CFLAGS = '-DTABLE_H="fieldtab.h"' - $(gen_fieldtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_fieldtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_fieldtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_fieldtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_fieldtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_fieldtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - fieldtabs.h: gen_fieldtabs_h Makefile - ./gen_fieldtabs_h --duplicate-ints --lowercase --i2s --s2i field > $@ - - gen_flagtabs_h_SOURCES = gen_tables.c gen_tables.h flagtab.h --gen_flagtabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="flagtab.h"' -+gen_flagtabs_h_CFLAGS = '-DTABLE_H="flagtab.h"' - $(gen_flagtabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_flagtabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_flagtabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_flagtabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_flagtabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_flagtabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - flagtabs.h: gen_flagtabs_h Makefile - ./gen_flagtabs_h --lowercase --i2s --s2i flag > $@ - - gen_ftypetabs_h_SOURCES = gen_tables.c gen_tables.h ftypetab.h --gen_ftypetabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="ftypetab.h"' -+gen_ftypetabs_h_CFLAGS = '-DTABLE_H="ftypetab.h"' - $(gen_ftypetabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_ftypetabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_ftypetabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_ftypetabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_ftypetabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_ftypetabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - ftypetabs.h: gen_ftypetabs_h Makefile - ./gen_ftypetabs_h --lowercase --i2s --s2i ftype > $@ - - gen_i386_tables_h_SOURCES = gen_tables.c gen_tables.h i386_table.h --gen_i386_tables_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="i386_table.h"' -+gen_i386_tables_h_CFLAGS = '-DTABLE_H="i386_table.h"' - $(gen_i386_tables_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_i386_tables_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_i386_tables_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_i386_tables_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_i386_tables_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_i386_tables_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - i386_tables.h: gen_i386_tables_h Makefile - ./gen_i386_tables_h --duplicate-ints --lowercase --i2s --s2i \ - i386_syscall > $@ - - gen_ia64_tables_h_SOURCES = gen_tables.c gen_tables.h ia64_table.h --gen_ia64_tables_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="ia64_table.h"' -+gen_ia64_tables_h_CFLAGS = '-DTABLE_H="ia64_table.h"' - $(gen_ia64_tables_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_ia64_tables_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_ia64_tables_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_ia64_tables_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_ia64_tables_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_ia64_tables_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - ia64_tables.h: gen_ia64_tables_h Makefile - ./gen_ia64_tables_h --lowercase --i2s --s2i ia64_syscall > $@ - - gen_machinetabs_h_SOURCES = gen_tables.c gen_tables.h machinetab.h --gen_machinetabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="machinetab.h"' -+gen_machinetabs_h_CFLAGS = '-DTABLE_H="machinetab.h"' - $(gen_machinetabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_machinetabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_machinetabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_machinetabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_machinetabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_machinetabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - machinetabs.h: gen_machinetabs_h Makefile - ./gen_machinetabs_h --duplicate-ints --lowercase --i2s --s2i machine \ - > $@ - - gen_msg_typetabs_h_SOURCES = gen_tables.c gen_tables.h msg_typetab.h --gen_msg_typetabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="msg_typetab.h"' -+gen_msg_typetabs_h_CFLAGS = '-DTABLE_H="msg_typetab.h"' - $(gen_msg_typetabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_msg_typetabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_msg_typetabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_msg_typetabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_msg_typetabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_msg_typetabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - msg_typetabs.h: gen_msg_typetabs_h Makefile - ./gen_msg_typetabs_h --uppercase --i2s --s2i msg_type > $@ - - gen_optabs_h_SOURCES = gen_tables.c gen_tables.h optab.h --gen_optabs_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="optab.h"' -+gen_optabs_h_CFLAGS = '-DTABLE_H="optab.h"' - $(gen_optabs_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_optabs_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_optabs_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_optabs_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_optabs_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_optabs_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - optabs.h: gen_optabs_h Makefile - ./gen_optabs_h --i2s op > $@ - - gen_ppc_tables_h_SOURCES = gen_tables.c gen_tables.h ppc_table.h --gen_ppc_tables_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="ppc_table.h"' -+gen_ppc_tables_h_CFLAGS = '-DTABLE_H="ppc_table.h"' - $(gen_ppc_tables_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_ppc_tables_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_ppc_tables_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_ppc_tables_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_ppc_tables_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_ppc_tables_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - ppc_tables.h: gen_ppc_tables_h Makefile - ./gen_ppc_tables_h --lowercase --i2s --s2i ppc_syscall > $@ - - gen_s390_tables_h_SOURCES = gen_tables.c gen_tables.h s390_table.h --gen_s390_tables_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="s390_table.h"' -+gen_s390_tables_h_CFLAGS = '-DTABLE_H="s390_table.h"' - $(gen_s390_tables_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_s390_tables_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_s390_tables_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_s390_tables_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_s390_tables_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_s390_tables_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - s390_tables.h: gen_s390_tables_h Makefile - ./gen_s390_tables_h --lowercase --i2s --s2i s390_syscall > $@ - - gen_s390x_tables_h_SOURCES = gen_tables.c gen_tables.h s390x_table.h --gen_s390x_tables_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="s390x_table.h"' -+gen_s390x_tables_h_CFLAGS = '-DTABLE_H="s390x_table.h"' - $(gen_s390x_tables_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_s390x_tables_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_s390x_tables_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_s390x_tables_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_s390x_tables_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_s390x_tables_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - s390x_tables.h: gen_s390x_tables_h Makefile - ./gen_s390x_tables_h --lowercase --i2s --s2i s390x_syscall > $@ - - gen_x86_64_tables_h_SOURCES = gen_tables.c gen_tables.h x86_64_table.h --gen_x86_64_tables_h_CFLAGS = $(CFLAGS_FOR_BUILD) '-DTABLE_H="x86_64_table.h"' -+gen_x86_64_tables_h_CFLAGS = '-DTABLE_H="x86_64_table.h"' - $(gen_x86_64_tables_h_OBJECTS): CC=$(CC_FOR_BUILD) -+$(gen_x86_64_tables_h_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD) - $(gen_x86_64_tables_h_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - gen_x86_64_tables_h$(BUILD_EXEEXT): CC=$(CC_FOR_BUILD) -+gen_x86_64_tables_h$(BUILD_EXEEXT): CFLAGS=$(CFLAGS_FOR_BUILD) -+gen_x86_64_tables_h$(BUILD_EXEEXT): CPPFLAGS=$(CPPFLAGS_FOR_BUILD) - x86_64_tables.h: gen_x86_64_tables_h Makefile - ./gen_x86_64_tables_h --lowercase --i2s --s2i x86_64_syscall > $@ --- -1.9.1 - diff --git a/package/audit/Config.in b/package/audit/Config.in index a973e208545..717c364fd51 100644 --- a/package/audit/Config.in +++ b/package/audit/Config.in @@ -8,6 +8,8 @@ config BR2_PACKAGE_AUDIT bool "audit" depends on BR2_PACKAGE_AUDIT_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_MUSL help The audit package contains the user space utilities for storing and searching the audit records generated by @@ -17,6 +19,7 @@ config BR2_PACKAGE_AUDIT http://people.redhat.com/sgrubb/audit/ -comment "audit needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS +comment "audit needs a uClibc or (e)glibc toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ + || BR2_TOOLCHAIN_USES_MUSL depends on BR2_PACKAGE_AUDIT_ARCH_SUPPORTS diff --git a/package/audit/S01auditd b/package/audit/S01auditd index 94857394bc5..2ecf0f1df93 100644 --- a/package/audit/S01auditd +++ b/package/audit/S01auditd @@ -14,7 +14,7 @@ CONFIG=/etc/audit/auditd.conf PIDFILE=/var/run/${NAME}.pid start(){ - echo -n "Starting ${NAME}: " + printf "Starting ${NAME}: " # Create dir to store log files in if one doesn't exist. Create # the directory with SELinux permissions if possible @@ -38,20 +38,20 @@ start(){ } stop(){ - echo -n "Stopping ${NAME}: " + printf "Stopping ${NAME}: " start-stop-daemon -K -q -p ${PIDFILE} [ $? = 0 ] && echo "OK" || echo "FAIL" } reload(){ - echo -n "Reloading ${NAME} configuration: " + printf "Reloading ${NAME} configuration: " start-stop-daemon --stop -s 1 -p ${PIDFILE} 1>/dev/null [ $? = 0 ] && echo "OK" || echo "FAIL" } rotate(){ - echo -n "Rotating ${NAME} logs: " + printf "Rotating ${NAME} logs: " start-stop-daemon --stop -s 10 -p ${PIDFILE} 1>/dev/null [ $? = 0 ] && echo "OK" || echo "FAIL" } diff --git a/package/audit/audit.hash b/package/audit/audit.hash index 6c24ace5467..f234fdb2067 100644 --- a/package/audit/audit.hash +++ b/package/audit/audit.hash @@ -1,2 +1,2 @@ #Locally computed -sha256 9c914704fecc602e143e37152f3efbab2469692684c1a8cc1b801c1b49c7abc6 audit-2.4.3.tar.gz +sha256 25f57f465f3230d7b1166b615ffd6748818a3dc225d0e8b396c5b2e951674e23 audit-2.4.4.tar.gz diff --git a/package/audit/audit.mk b/package/audit/audit.mk index 61e876bb9e1..329f8c5aca1 100644 --- a/package/audit/audit.mk +++ b/package/audit/audit.mk @@ -4,16 +4,13 @@ # ################################################################################ -AUDIT_VERSION = 2.4.3 -AUDIT_SITE = http://people.redhat.com/sgrubb/audit/ +AUDIT_VERSION = 2.4.4 +AUDIT_SITE = http://people.redhat.com/sgrubb/audit AUDIT_LICENSE = GPLv2 AUDIT_LICENSE_FILES = COPYING AUDIT_INSTALL_STAGING = YES -# Patching Makefile.am -AUDIT_AUTORECONF = YES - AUDIT_CONF_OPTS = --without-python --without-python3 --disable-zos-remote ifeq ($(BR2_PACKAGE_LIBCAP_NG),y) @@ -34,10 +31,26 @@ ifeq ($(BR2_aarch64),y) AUDIT_CONF_OPTS += --with-aarch64 endif +ifeq ($(BR2_INIT_SYSTEMD),y) +AUDIT_CONF_OPTS += --enable-systemd +else +AUDIT_CONF_OPTS += --disable-systemd +endif + define AUDIT_INSTALL_INIT_SYSV $(INSTALL) -D -m 755 package/audit/S01auditd $(TARGET_DIR)/etc/init.d/S01auditd endef +define AUDIT_INSTALL_INIT_SYSTEMD + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -fs ../../../../usr/lib/systemd/system/auditd.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/auditd.service + + mkdir -p $(TARGET_DIR)/usr/lib/tmpfiles.d + $(INSTALL) -D -m 644 package/audit/audit_tmpfiles.conf \ + $(TARGET_DIR)/usr/lib/tmpfiles.d/audit.conf +endef + define AUDIT_INSTALL_CLEANUP $(RM) -rf $(TARGET_DIR)/etc/rc.d $(RM) -rf $(TARGET_DIR)/etc/sysconfig diff --git a/package/audit/audit_tmpfiles.conf b/package/audit/audit_tmpfiles.conf new file mode 100644 index 00000000000..6b8325b595b --- /dev/null +++ b/package/audit/audit_tmpfiles.conf @@ -0,0 +1 @@ +d /var/log/audit 0755 - - diff --git a/package/aumix/0001-fix-incorrect-makefile-am.patch b/package/aumix/0001-fix-incorrect-makefile-am.patch index 8d55218bbbf..143174deec9 100644 --- a/package/aumix/0001-fix-incorrect-makefile-am.patch +++ b/package/aumix/0001-fix-incorrect-makefile-am.patch @@ -15,15 +15,14 @@ Index: aumix-2.8/src/Makefile.am =================================================================== --- aumix-2.8.orig/src/Makefile.am +++ aumix-2.8/src/Makefile.am -@@ -7,9 +7,8 @@ +@@ -9,9 +9,8 @@ mouse.c common.h curses.h gpm-xterm.h gtk.h interactive.h \ mouse.h play.xpm record.xpm localedir = $(datadir)/locale -INCLUDES = -I../intl -DLOCALEDIR=\"$(localedir)\" -I@includedir@ --CFLAGS = @CFLAGS@ @GLIB_CFLAGS@ @GTK_CFLAGS@ --LDADD = -L@libdir@ +INCLUDES = -I../intl -DLOCALEDIR=\"$(localedir)\" -+AM_CFLAGS = @CFLAGS@ @GLIB_CFLAGS@ @GTK_CFLAGS@ - LIBS = @LIBS@ @GTK_LIBS@ @INTLLIBS@ + AM_CFLAGS = @CFLAGS@ @GLIB_CFLAGS@ @GTK_CFLAGS@ +-LDADD = -L@libdir@ + LIBS = @LIBS@ @GTK_LIBS@ @LIBINTL@ DEFS = @DEFS@ diff --git a/package/aumix/aumix.hash b/package/aumix/aumix.hash index dbcd1e5b5f5..0463ea01a65 100644 --- a/package/aumix/aumix.hash +++ b/package/aumix/aumix.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 636eef7f400c2f3df489c0d2fa21507e88692113561e75a40a26c52bc422d7fc aumix-2.8.tar.bz2 +# Locally calculated +sha256 d2ce43d532ef75072c8d4e7922e3bc06be6d97765a508d9ceb0d1766bbe70e29 aumix-2.9.1.tar.bz2 diff --git a/package/aumix/aumix.mk b/package/aumix/aumix.mk index 8c668d2e939..eae34d0fbc4 100644 --- a/package/aumix/aumix.mk +++ b/package/aumix/aumix.mk @@ -4,10 +4,11 @@ # ################################################################################ -AUMIX_VERSION = 2.8 +AUMIX_VERSION = 2.9.1 AUMIX_SOURCE = aumix-$(AUMIX_VERSION).tar.bz2 AUMIX_SITE = http://jpj.net/~trevor/aumix/releases AUMIX_AUTORECONF = YES +AUMIX_GETTEXTIZE = YES AUMIX_LICENSE = GPLv2+ AUMIX_LICENSE_FILES = COPYING diff --git a/package/autoconf-archive/autoconf-archive.hash b/package/autoconf-archive/autoconf-archive.hash index c310f5a09fe..55765668702 100644 --- a/package/autoconf-archive/autoconf-archive.hash +++ b/package/autoconf-archive/autoconf-archive.hash @@ -1,2 +1,2 @@ # Computed locally -sha256 69715bdd078f552ca85e498a94543e11cb8bcdf0359e659b84d84d19372b0dc5 autoconf-archive-2015.02.24.tar.xz +sha256 7c0467a5dbd2340153bca5a477bd92fbc951d9ee3cbed92f16f6bf08ac0c350a autoconf-archive-2015.09.25.tar.xz diff --git a/package/autoconf-archive/autoconf-archive.mk b/package/autoconf-archive/autoconf-archive.mk index 673a57f1161..98acba3e41b 100644 --- a/package/autoconf-archive/autoconf-archive.mk +++ b/package/autoconf-archive/autoconf-archive.mk @@ -4,7 +4,7 @@ # ################################################################################ -AUTOCONF_ARCHIVE_VERSION = 2015.02.24 +AUTOCONF_ARCHIVE_VERSION = 2015.09.25 AUTOCONF_ARCHIVE_SOURCE = autoconf-archive-$(AUTOCONF_ARCHIVE_VERSION).tar.xz AUTOCONF_ARCHIVE_SITE = $(BR2_GNU_MIRROR)/autoconf-archive AUTOCONF_ARCHIVE_LICENSE = GPLv3+ with exception diff --git a/package/autofs/0001-include-linux-nfs.h-directly-in-rpc_sub.patch b/package/autofs/0001-include-linux-nfs.h-directly-in-rpc_sub.patch new file mode 100644 index 00000000000..26e86c325fb --- /dev/null +++ b/package/autofs/0001-include-linux-nfs.h-directly-in-rpc_sub.patch @@ -0,0 +1,33 @@ +Upstream-Status: Pending + +From 44bdce8c6ed9b30c1643e5981172a4f9025f013c Mon Sep 17 00:00:00 2001 +From: Andreas Oberritter +Date: Wed, 13 Mar 2013 16:17:08 +0100 +Subject: [PATCH] autofs-5.0.7: include linux/nfs.h directly in rpc_subs.h + +Fixes compile error with uclibc. Glibc's nfs/nfs.h contains +nothing but "#include linux/nfs.h". rpc_subs.h already includes +other linux/nfs*.h files directly. + +Signed-off-by: Andreas Oberritter +Signed-off-by: Thomas Petazzoni +--- + include/rpc_subs.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/rpc_subs.h b/include/rpc_subs.h +index b6d59f9..a2d9648 100644 +--- a/include/rpc_subs.h ++++ b/include/rpc_subs.h +@@ -18,7 +18,7 @@ + + #include + #include +-#include ++#include + #include + #include + +-- +1.7.10.4 + diff --git a/package/autofs/Config.in b/package/autofs/Config.in new file mode 100644 index 00000000000..dbe667442f6 --- /dev/null +++ b/package/autofs/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_AUTOFS + bool "autofs" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC + depends on !BR2_STATIC_LIBS # dlfcn + help + Autofs controls the operation of the automount daemons. The + automount daemons automatically mount filesystems when they + are used and unmount them after a period of inactivity based + on a set of pre-configured maps defined by default in + /etc/auto.master. The kernel automounter implements SunOS + style automounter under Linux and requires a kernel version + of at least 2.6.17 and the autofs4 kernel module. + + http://www.linuxfromscratch.org/blfs/view/svn/general/autofs.html + +comment "autofs needs a toolchain w/ threads, RPC, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_NATIVE_RPC diff --git a/package/autofs/autofs.hash b/package/autofs/autofs.hash new file mode 100644 index 00000000000..2d98375a7be --- /dev/null +++ b/package/autofs/autofs.hash @@ -0,0 +1,2 @@ +# From https://www.kernel.org/pub/linux/daemons/autofs/v5/sha256sums.asc +sha256 e08ff0ef9ff365d87b6c33dca136d20e4e07675197a324f2816894cb437021c3 autofs-5.1.1.tar.xz diff --git a/package/autofs/autofs.mk b/package/autofs/autofs.mk new file mode 100644 index 00000000000..a98e5eb6851 --- /dev/null +++ b/package/autofs/autofs.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# autofs +# +################################################################################ + +AUTOFS_VERSION = 5.1.1 +AUTOFS_SOURCE = autofs-$(AUTOFS_VERSION).tar.xz +AUTOFS_SITE = $(BR2_KERNEL_MIRROR)/linux/daemons/autofs/v5 +AUTOFS_LICENSE = GPLv2+ +AUTOFS_LICENSE_FILES = COPYING COPYRIGHT +AUTOFS_DEPENDENCIES = host-flex host-bison + +# autofs looks on the build machine for the path of modprobe, so tell +# it explicitly where it will be located on the target. +AUTOFS_CONF_ENV = \ + ac_cv_path_MODPROBE=/sbin/modprobe + +# instead of looking in the PATH like any reasonable package, autofs +# configure looks only in an hardcoded search path for host tools, +# which we have to override with --with-path. +AUTOFS_CONF_OPTS = \ + --disable-mount-locking \ + --enable-ignore-busy \ + --without-openldap \ + --without-sasl \ + --with-path="$(BR_PATH)" + +AUTOFS_MAKE_ENV = DONTSTRIP=1 + +$(eval $(autotools-package)) diff --git a/package/autossh/autossh.mk b/package/autossh/autossh.mk index 01d3c65cc90..d52b4e96667 100644 --- a/package/autossh/autossh.mk +++ b/package/autossh/autossh.mk @@ -10,6 +10,11 @@ AUTOSSH_SOURCE = autossh-$(AUTOSSH_VERSION).tgz AUTOSSH_LICENSE = Modified BSD AUTOSSH_LICENSE_FILES = autossh.c +# Bundled ./configure is not up-to-date with what is in configure.ac +AUTOSSH_AUTORECONF = YES + +AUTOSSH_CONF_OPTS = --with-ssh=/usr/bin/ssh + define AUTOSSH_INSTALL_TARGET_CMDS $(INSTALL) -m 755 -D $(@D)/autossh $(TARGET_DIR)/usr/bin/autossh endef diff --git a/package/avahi/0001-autoipd-perms.patch b/package/avahi/0001-autoipd-perms.patch deleted file mode 100644 index c740e3f8aa7..00000000000 --- a/package/avahi/0001-autoipd-perms.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- avahi-0.6.14/avahi-autoipd/main.c.cls 2006-09-13 12:49:45.000000000 -0700 -+++ avahi-0.6.14/avahi-autoipd/main.c 2006-09-25 20:34:10.000000000 -0700 -@@ -239,7 +239,7 @@ - - fprintf(f, "%s\n", inet_ntop(AF_INET, &addr, buf, sizeof (buf))); - fclose(f); -- -+ chmod(fn, S_IRUSR|S_IWUSR); - return 0; - - fail: diff --git a/package/avahi/avahi.mk b/package/avahi/avahi.mk index 9c6b609d246..b7ad81dc378 100644 --- a/package/avahi/avahi.mk +++ b/package/avahi/avahi.mk @@ -68,9 +68,21 @@ AVAHI_CONF_ENV = \ avahi_cv_sys_cxx_works=yes \ DATADIRNAME=share +# Note: even if we have Gtk2 and Gtk3 support in Buildroot, we +# explicitly disable support for them, in order to avoid the following +# circular dependencies: +# +# avahi -> libglade -> libgtk2 -> cups -> avahi +# avahi -> libgtk3 -> cups -> avahi +# +# Since Gtk2 and Gtk3 in Avahi are only used for some example/demo +# programs, we decided to disable their support to solve the circular +# dependency. AVAHI_CONF_OPTS = \ --disable-qt3 \ --disable-qt4 \ + --disable-gtk \ + --disable-gtk3 \ --disable-gdbm \ --disable-pygtk \ --disable-mono \ @@ -103,6 +115,10 @@ else AVAHI_CONF_OPTS += --disable-libdaemon endif +ifeq ($(BR2_PACKAGE_LIBCAP),y) +AVAHI_DEPENDENCIES += libcap +endif + ifeq ($(BR2_PACKAGE_AVAHI_DAEMON),y) AVAHI_DEPENDENCIES += expat AVAHI_CONF_OPTS += --with-xml=expat @@ -126,19 +142,6 @@ else AVAHI_CONF_OPTS += --disable-glib --disable-gobject endif -ifeq ($(BR2_PACKAGE_LIBGLADE),y) -AVAHI_DEPENDENCIES += libglade -else -AVAHI_CONF_OPTS += --disable-gtk -endif - -ifeq ($(BR2_PACKAGE_LIBGTK3),y) -AVAHI_DEPENDENCIES += libgtk3 -AVAHI_CONF_OPTS += --enable-gtk3 -else -AVAHI_CONF_OPTS += --disable-gtk3 -endif - ifeq ($(BR2_PACKAGE_PYTHON),y) AVAHI_CONF_ENV += \ am_cv_pathless_PYTHON=python \ diff --git a/package/avrdude/Config.in b/package/avrdude/Config.in index dc842371ac5..460f1550862 100644 --- a/package/avrdude/Config.in +++ b/package/avrdude/Config.in @@ -8,12 +8,14 @@ config BR2_PACKAGE_AVRDUDE depends on BR2_USE_WCHAR # elfutils depends on !BR2_STATIC_LIBS # elfutils depends on !BR2_bfin # elfutils + depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils help avrdude is a programmer for Atmel AVR microcontrollers this package provides a version with new linuxspi driver https://github.com/kcuzner/avrdude -comment "avrdude needs a toolchain w/ threads, wchar, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || BR2_STATIC_LIBS +comment "avrdude needs a uclibc or (e)glibc toolchain w/ threads, wchar, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || BR2_STATIC_LIBS \ + || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) depends on !BR2_bfin diff --git a/package/axfsutils/0001-fix-cflags.patch b/package/axfsutils/0001-fix-cflags.patch new file mode 100644 index 00000000000..0415d82f458 --- /dev/null +++ b/package/axfsutils/0001-fix-cflags.patch @@ -0,0 +1,19 @@ +Makefile: complement CFLAGS provided by the user + +In some circumstances, the user may want to pass its own CFLAGS, +like for when the zlib headers are not located in the standard gcc +search paths. + +Signed-off-by: "Yann E. MORIN" + +diff -durN a/mkfs.axfs-legacy/Makefile b/mkfs.axfs-legacy/Makefile +--- a/mkfs.axfs-legacy/Makefile ++++ b/mkfs.axfs-legacy/Makefile +@@ -1,5 +1,5 @@ +-INC = -I./ +-CFLAGS = -g $(INC) -O0 ++INC += -I./ ++CFLAGS += -g $(INC) -O0 + + MKFSOBJS = mkfs.axfs.o + diff --git a/package/axfsutils/0002-use-ldflags.patch b/package/axfsutils/0002-use-ldflags.patch new file mode 100644 index 00000000000..20e03a9bb56 --- /dev/null +++ b/package/axfsutils/0002-use-ldflags.patch @@ -0,0 +1,20 @@ +Makefile: use LDFLAGS as provided by the user + +In some circumstances, the user may want to pass some LDFLAGS, like +-L flags to point to the zlib location if it was not installed in a +standard location. + +Signed-off-by: "Yann E. MORIN" + +diff -durN a/mkfs.axfs-legacy/Makefile b/mkfs.axfs-legacy/Makefile +--- a/mkfs.axfs-legacy/Makefile ++++ b/mkfs.axfs-legacy/Makefile +@@ -6,7 +6,7 @@ + all: mkfs.axfs + + mkfs.axfs: $(MKFSOBJS) +- $(CC) $(CFLAGS) -o mkfs.axfs $(MKFSOBJS) -lz ++ $(CC) $(CFLAGS) $(LDFLAGS) -o mkfs.axfs $(MKFSOBJS) -lz + + clean_mkfs.axfs: + rm -rf $(MKFSOBJS) mkfs.axfs diff --git a/package/axfsutils/axfsutils.hash b/package/axfsutils/axfsutils.hash new file mode 100644 index 00000000000..4a3b3fb34db --- /dev/null +++ b/package/axfsutils/axfsutils.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9c041393131bdfebefa89cfaba7788b514b56ffc51bda8f130fd49b39fe89dc0 axfsutils-f26ae785e33df76f658b71ef2cfbc7f511ff875d.tar.gz diff --git a/package/axfsutils/axfsutils.mk b/package/axfsutils/axfsutils.mk new file mode 100644 index 00000000000..4dd60efcde7 --- /dev/null +++ b/package/axfsutils/axfsutils.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# axfsutils +# +################################################################################ + +AXFSUTILS_VERSION = f26ae785e33df76f658b71ef2cfbc7f511ff875d +AXFSUTILS_SITE = $(call github,jaredeh,axfs,$(AXFSUTILS_VERSION)) +AXFSUTILS_LICENSE = GPLv2 +AXFSUTILS_LICENSE_FILES = mkfs.axfs-legacy/COPYING +AXFSUTILS_DEPENDENCIES = host-zlib + +# The 'new' mkfs.axfs version requires GNUstep which is not a buildroot +# prerequisite. The 'legacy' one works just as well without that requirement. +define HOST_AXFSUTILS_BUILD_CMDS + $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D)/mkfs.axfs-legacy +endef + +define HOST_AXFSUTILS_INSTALL_CMDS + $(INSTALL) -D -m 0755 $(@D)/mkfs.axfs-legacy/mkfs.axfs \ + $(HOST_DIR)/usr/bin/mkfs.axfs +endef + +$(eval $(host-generic-package)) diff --git a/package/bash/0034-patchlevel-34.patch b/package/bash/0034-patchlevel-34.patch new file mode 100644 index 00000000000..79c8945c5c4 --- /dev/null +++ b/package/bash/0034-patchlevel-34.patch @@ -0,0 +1,94 @@ +From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-034 + +Signed-off-by: Gustavo Zacarias + + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-034 + +Bug-Reported-by: Dreamcat4 +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-05/msg00001.html + +Bug-Description: + +If neither the -f nor -v options is supplied to unset, and a name argument is +found to be a function and unset, subsequent name arguments are not treated as +variables before attempting to unset a function by that name. + +Patch (apply with `patch -p0'): + +*** a/bash-4.3-patched/builtins/set.def 2013-04-19 07:20:34.000000000 -0400 +--- b/builtins/set.def 2015-05-05 13:25:36.000000000 -0400 +*************** +*** 752,758 **** +--- 797,805 ---- + { + int unset_function, unset_variable, unset_array, opt, nameref, any_failed; ++ int global_unset_func, global_unset_var; + char *name; + + unset_function = unset_variable = unset_array = nameref = any_failed = 0; ++ global_unset_func = global_unset_var = 0; + + reset_internal_getopt (); +*************** +*** 762,769 **** + { + case 'f': +! unset_function = 1; + break; + case 'v': +! unset_variable = 1; + break; + case 'n': +--- 809,816 ---- + { + case 'f': +! global_unset_func = 1; + break; + case 'v': +! global_unset_var = 1; + break; + case 'n': +*************** +*** 778,782 **** + list = loptend; + +! if (unset_function && unset_variable) + { + builtin_error (_("cannot simultaneously unset a function and a variable")); +--- 825,829 ---- + list = loptend; + +! if (global_unset_func && global_unset_var) + { + builtin_error (_("cannot simultaneously unset a function and a variable")); +*************** +*** 796,799 **** +--- 843,849 ---- + name = list->word->word; + ++ unset_function = global_unset_func; ++ unset_variable = global_unset_var; ++ + #if defined (ARRAY_VARS) + unset_array = 0; + +*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 +--- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 33 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 34 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0035-patchlevel-35.patch b/package/bash/0035-patchlevel-35.patch new file mode 100644 index 00000000000..c18b60dc562 --- /dev/null +++ b/package/bash/0035-patchlevel-35.patch @@ -0,0 +1,67 @@ +From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-035 + +Signed-off-by: Gustavo Zacarias + + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-035 + +Bug-Reported-by: +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-08/msg00045.html + +Bug-Description: + +A locale with a long name can trigger a buffer overflow and core dump. This +applies on systems that do not have locale_charset in libc, are not using +GNU libiconv, and are not using the libintl that ships with bash in lib/intl. + +Patch (apply with `patch -p0'): + +*** a/bash-4.3-patched/lib/sh/unicode.c 2014-01-30 16:47:19.000000000 -0500 +--- b/lib/sh/unicode.c 2015-05-01 08:58:30.000000000 -0400 +*************** +*** 79,83 **** + if (s) + { +! strcpy (charsetbuf, s+1); + t = strchr (charsetbuf, '@'); + if (t) +--- 79,84 ---- + if (s) + { +! strncpy (charsetbuf, s+1, sizeof (charsetbuf) - 1); +! charsetbuf[sizeof (charsetbuf) - 1] = '\0'; + t = strchr (charsetbuf, '@'); + if (t) +*************** +*** 85,89 **** + return charsetbuf; + } +! strcpy (charsetbuf, locale); + return charsetbuf; + } +--- 86,91 ---- + return charsetbuf; + } +! strncpy (charsetbuf, locale, sizeof (charsetbuf) - 1); +! charsetbuf[sizeof (charsetbuf) - 1] = '\0'; + return charsetbuf; + } +*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 +--- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 34 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 35 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0036-patchlevel-36.patch b/package/bash/0036-patchlevel-36.patch new file mode 100644 index 00000000000..f35b29b5bd7 --- /dev/null +++ b/package/bash/0036-patchlevel-36.patch @@ -0,0 +1,61 @@ +From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-036 + +Signed-off-by: Gustavo Zacarias + + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-036 + +Bug-Reported-by: emanuelczirai@cryptolab.net +Bug-Reference-ID: +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00071.html + +Bug-Description: + +When evaluating and setting integer variables, and the assignment fails to +create a variable (for example, when performing an operation on an array +variable with an invalid subscript), bash attempts to dereference a null +pointer, causing a segmentation violation. + +Patch (apply with `patch -p0'): + +*** a/bash-20150206/variables.c 2015-01-23 20:39:27.000000000 -0500 +--- b/variables.c 2015-02-19 13:56:12.000000000 -0500 +*************** +*** 2834,2841 **** + v = bind_variable (lhs, rhs, 0); + +! if (v && isint) +! VSETATTR (v, att_integer); +! +! VUNSETATTR (v, att_invisible); + + return (v); +--- 2834,2843 ---- + v = bind_variable (lhs, rhs, 0); + +! if (v) +! { +! if (isint) +! VSETATTR (v, att_integer); +! VUNSETATTR (v, att_invisible); +! } + + return (v); +*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 +--- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 35 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 36 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0037-patchlevel-37.patch b/package/bash/0037-patchlevel-37.patch new file mode 100644 index 00000000000..5f8aff356c4 --- /dev/null +++ b/package/bash/0037-patchlevel-37.patch @@ -0,0 +1,47 @@ +From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-037 + +Signed-off-by: Gustavo Zacarias + + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-037 + +Bug-Reported-by: Greg Wooledge +Bug-Reference-ID: <20150204144240.GN13956@eeg.ccf.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00007.html + +Bug-Description: + +If an associative array uses `@' or `*' as a subscript, `declare -p' produces +output that cannot be reused as input. + +Patch (apply with `patch -p0'): + +*** a/bash-4.3-patched/assoc.c 2011-11-05 16:39:05.000000000 -0400 +--- b/assoc.c 2015-02-04 15:28:25.000000000 -0500 +*************** +*** 437,440 **** +--- 440,445 ---- + if (sh_contains_shell_metas (tlist->key)) + istr = sh_double_quote (tlist->key); ++ else if (ALL_ELEMENT_SUB (tlist->key[0]) && tlist->key[1] == '\0') ++ istr = sh_double_quote (tlist->key); + else + istr = tlist->key; +*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 +--- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 36 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 37 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0038-patchlevel-38.patch b/package/bash/0038-patchlevel-38.patch new file mode 100644 index 00000000000..09fd9c2ec0b --- /dev/null +++ b/package/bash/0038-patchlevel-38.patch @@ -0,0 +1,92 @@ +From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-038 + +Signed-off-by: Gustavo Zacarias + + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-038 + +Bug-Reported-by: worley@alum.mit.edu (Dale R. Worley) +Bug-Reference-ID: <201406100051.s5A0pCeB014978@hobgoblin.ariadne.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-06/msg00028.html + +Bug-Description: + +There are a number of instances where `time' is not recognized as a reserved +word when the shell grammar says it should be. + +Patch (apply with `patch -p0'): + +*** a/bash-4.3-patched/parse.y 2014-04-07 11:56:12.000000000 -0400 +--- b/parse.y 2014-06-11 10:25:53.000000000 -0400 +*************** +*** 2819,2827 **** + case OR_OR: + case '&': + case DO: + case THEN: + case ELSE: + case '{': /* } */ +! case '(': /* ) */ + case BANG: /* ! time pipeline */ + case TIME: /* time time pipeline */ +--- 2819,2832 ---- + case OR_OR: + case '&': ++ case WHILE: + case DO: ++ case UNTIL: ++ case IF: + case THEN: ++ case ELIF: + case ELSE: + case '{': /* } */ +! case '(': /* )( */ +! case ')': /* only valid in case statement */ + case BANG: /* ! time pipeline */ + case TIME: /* time time pipeline */ +*** a/bash-4.3-patched/y.tab.c 2014-10-05 13:52:50.000000000 -0400 +--- b/y.tab.c 2015-05-19 15:08:43.000000000 -0400 +*************** +*** 5131,5139 **** + case OR_OR: + case '&': + case DO: + case THEN: + case ELSE: + case '{': /* } */ +! case '(': /* ) */ + case BANG: /* ! time pipeline */ + case TIME: /* time time pipeline */ +--- 5131,5144 ---- + case OR_OR: + case '&': ++ case WHILE: + case DO: ++ case UNTIL: ++ case IF: + case THEN: ++ case ELIF: + case ELSE: + case '{': /* } */ +! case '(': /* )( */ +! case ')': /* only valid in case statement */ + case BANG: /* ! time pipeline */ + case TIME: /* time time pipeline */ +*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 +--- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 37 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 38 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0039-patchlevel-39.patch b/package/bash/0039-patchlevel-39.patch new file mode 100644 index 00000000000..2a555b96c1a --- /dev/null +++ b/package/bash/0039-patchlevel-39.patch @@ -0,0 +1,61 @@ +From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-039 + +Signed-off-by: Gustavo Zacarias + + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-039 + +Bug-Reported-by: SN +Bug-Reference-ID: <54E2554C.205@gazeta.pl> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-02/msg00060.html + +Bug-Description: + +Using the output of `declare -p' when run in a function can result in variables +that are invisible to `declare -p'. This problem occurs when an assignment +builtin such as `declare' receives a quoted compound array assignment as one of +its arguments. + +Patch (apply with `patch -p0'): + +*** a/bash-4.3-patched/arrayfunc.c 2014-10-01 13:08:48.000000000 -0400 +--- b/arrayfunc.c 2015-02-19 14:33:05.000000000 -0500 +*************** +*** 405,408 **** +--- 405,411 ---- + else + array_insert (a, i, l->word->word); ++ ++ VUNSETATTR (var, att_invisible); /* no longer invisible */ ++ + return var; + } +*************** +*** 635,638 **** +--- 638,645 ---- + if (nlist) + dispose_words (nlist); ++ ++ if (var) ++ VUNSETATTR (var, att_invisible); /* no longer invisible */ ++ + return (var); + } +*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 +--- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 38 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 39 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0040-patchlevel-40.patch b/package/bash/0040-patchlevel-40.patch new file mode 100644 index 00000000000..2a03c45a92a --- /dev/null +++ b/package/bash/0040-patchlevel-40.patch @@ -0,0 +1,51 @@ +From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-040 + +Signed-off-by: Gustavo Zacarias + + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-040 + +Bug-Reported-by: Jean Delvare +Bug-Reference-ID: <20150609180231.5f463695@endymion.delvare> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-06/msg00033.html + +Bug-Description: + +There is a memory leak that occurs when bash expands an array reference on +the rhs of an assignment statement. + +Patch (apply with `patch -p0'): + +*** a/bash-4.3-patched/subst.c 2014-10-01 12:57:47.000000000 -0400 +--- b/subst.c 2015-06-22 09:16:53.000000000 -0400 +*************** +*** 5783,5787 **** + if (pflags & PF_ASSIGNRHS) + { +! temp = array_variable_name (name, &tt, (int *)0); + if (ALL_ELEMENT_SUB (tt[0]) && tt[1] == ']') + temp = array_value (name, quoted|Q_DOUBLE_QUOTES, 0, &atype, &ind); +--- 5783,5787 ---- + if (pflags & PF_ASSIGNRHS) + { +! var = array_variable_part (name, &tt, (int *)0); + if (ALL_ELEMENT_SUB (tt[0]) && tt[1] == ']') + temp = array_value (name, quoted|Q_DOUBLE_QUOTES, 0, &atype, &ind); +*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 +--- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 39 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 40 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0041-patchlevel-41.patch b/package/bash/0041-patchlevel-41.patch new file mode 100644 index 00000000000..c8ba4b10816 --- /dev/null +++ b/package/bash/0041-patchlevel-41.patch @@ -0,0 +1,76 @@ +From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-041 + +Signed-off-by: Gustavo Zacarias + + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-041 + +Bug-Reported-by: Hanno Böck +Bug-Reference-ID: <20150623131106.6f111da9@pc1>, <20150707004640.0e61d2f9@pc1> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-06/msg00089.html, + http://lists.gnu.org/archive/html/bug-bash/2015-07/msg00018.html + +Bug-Description: + +There are several out-of-bounds read errors that occur when completing command +lines where assignment statements appear before the command name. The first +two appear only when programmable completion is enabled; the last one only +happens when listing possible completions. + +Patch (apply with `patch -p0'): + +*** a/bash-4.3.40/bashline.c 2014-12-29 14:39:43.000000000 -0500 +--- b/bashline.c 2015-08-12 10:21:58.000000000 -0400 +*************** +*** 1469,1476 **** +--- 1469,1489 ---- + os = start; + n = 0; ++ was_assignment = 0; + s = find_cmd_start (os); + e = find_cmd_end (end); + do + { ++ /* Don't read past the end of rl_line_buffer */ ++ if (s > rl_end) ++ { ++ s1 = s = e1; ++ break; ++ } ++ /* Or past point if point is within an assignment statement */ ++ else if (was_assignment && s > rl_point) ++ { ++ s1 = s = e1; ++ break; ++ } + /* Skip over assignment statements preceding a command name. If we + don't find a command name at all, we can perform command name +*** a/bash-4.3.40/lib/readline/complete.c 2013-10-14 09:27:10.000000000 -0400 +--- b/lib/readline/complete.c 2015-07-31 09:34:39.000000000 -0400 +*************** +*** 690,693 **** +--- 690,695 ---- + if (temp == 0 || *temp == '\0') + return (pathname); ++ else if (temp[1] == 0 && temp == pathname) ++ return (pathname); + /* If the basename is NULL, we might have a pathname like '/usr/src/'. + Look for a previous slash and, if one is found, return the portion +*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 +--- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 40 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 41 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0042-patchlevel-42.patch b/package/bash/0042-patchlevel-42.patch new file mode 100644 index 00000000000..bb3471c63f4 --- /dev/null +++ b/package/bash/0042-patchlevel-42.patch @@ -0,0 +1,59 @@ +From http://ftp.gnu.org/pub/gnu/bash/bash-4.3-patches/bash43-042 + +Signed-off-by: Gustavo Zacarias + + BASH PATCH REPORT + ================= + +Bash-Release: 4.3 +Patch-ID: bash43-042 + +Bug-Reported-by: Nathan Neulinger +Bug-Reference-ID: <558EFDF2.7060402@neulinger.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2015-06/msg00096.html + +Bug-Description: + +There is a problem when parsing command substitutions containing `case' +commands within pipelines that causes the parser to not correctly identify +the end of the command substitution. + +Patch (apply with `patch -p0'): + +*** a/bash-4.3-patched/parse.y 2015-05-18 19:27:05.000000000 -0400 +--- b/parse.y 2015-06-29 10:59:27.000000000 -0400 +*************** +*** 3709,3712 **** +--- 3709,3714 ---- + tflags |= LEX_INWORD; + lex_wlen = 0; ++ if (tflags & LEX_RESWDOK) ++ lex_rwlen = 0; + } + } +*** a/bash-4.3-patched/y.tab.c 2015-05-18 19:27:05.000000000 -0400 +--- b/y.tab.c 2015-06-29 10:59:27.000000000 -0400 +*************** +*** 6021,6024 **** +--- 6021,6026 ---- + tflags |= LEX_INWORD; + lex_wlen = 0; ++ if (tflags & LEX_RESWDOK) ++ lex_rwlen = 0; + } + } +*** a/bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 +--- b/patchlevel.h 2014-03-20 20:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 41 + + #endif /* _PATCHLEVEL_H_ */ +--- 26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 42 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/bash.mk b/package/bash/bash.mk index 9865e1971d7..97d7182e2f8 100644 --- a/package/bash/bash.mk +++ b/package/bash/bash.mk @@ -16,6 +16,7 @@ BASH_LICENSE_FILES = COPYING BASH_CONF_ENV += \ ac_cv_rl_prefix="$(STAGING_DIR)" \ ac_cv_rl_version="$(READLINE_VERSION)" \ + bash_cv_getcwd_malloc=yes \ bash_cv_job_control_missing=present \ bash_cv_sys_named_pipes=present \ bash_cv_func_sigsetjmp=present \ diff --git a/package/batctl/0001-musl-fixes.patch b/package/batctl/0001-musl-fixes.patch deleted file mode 100644 index 4d64f318112..00000000000 --- a/package/batctl/0001-musl-fixes.patch +++ /dev/null @@ -1,192 +0,0 @@ -musl does not allow including netinet/* and linux/* headers together. -batctl includes netinet/if_ether.h indirectly via net/ethernet.h, -so netinet/if_ether.h must be used instead of linux/if_ether.h. - -__be16 and __be32 are linux-specific typedefs for uint16_t and -uint32_t with __attribute__((bitwise)) that has no effect -outside of the kernel. - -Signed-off-by: Alex Suykov - ---- batctl-2014.4.0/ping.c -+++ batctl-2014.4.0/ping.c -@@ -34,7 +34,7 @@ - #include - #include - #include --#include -+#include - - #include "main.h" - #include "ping.h" ---- batctl-2014.4.0/tcpdump.h -+++ batctl-2014.4.0/tcpdump.h -@@ -23,7 +23,7 @@ - #define _BATCTL_TCPDUMP_H - - #include --#include -+#include - #include - #include - #include "main.h" ---- batctl-2014.4.0/traceroute.c -+++ batctl-2014.4.0/traceroute.c -@@ -28,7 +28,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include ---- batctl-2014.4.0/packet.h -+++ batctl-2014.4.0/packet.h -@@ -196,7 +196,7 @@ - struct batadv_bla_claim_dst { - uint8_t magic[3]; /* FF:43:05 */ - uint8_t type; /* bla_claimframe */ -- __be16 group; /* group id */ -+ uint16_t group; /* group id */ - }; - #pragma pack() - -@@ -213,12 +213,12 @@ - uint8_t version; - uint8_t ttl; - uint8_t flags; -- __be32 seqno; -+ uint32_t seqno; - uint8_t orig[ETH_ALEN]; - uint8_t prev_sender[ETH_ALEN]; - uint8_t reserved; - uint8_t tq; -- __be16 tvlv_len; -+ uint16_t tvlv_len; - /* __packed is not needed as the struct size is divisible by 4, - * and the largest data type in this struct has a size of 4. - */ -@@ -273,7 +273,7 @@ - uint8_t orig[ETH_ALEN]; - uint8_t uid; - uint8_t reserved; -- __be16 seqno; -+ uint16_t seqno; - }; - - #define BATADV_RR_LEN 16 -@@ -300,7 +300,7 @@ - uint8_t orig[ETH_ALEN]; - uint8_t uid; - uint8_t rr_cur; -- __be16 seqno; -+ uint16_t seqno; - uint8_t rr[BATADV_RR_LEN][ETH_ALEN]; - }; - -@@ -380,8 +380,8 @@ - #endif - uint8_t dest[ETH_ALEN]; - uint8_t orig[ETH_ALEN]; -- __be16 seqno; -- __be16 total_size; -+ uint16_t seqno; -+ uint16_t total_size; - }; - - /** -@@ -398,7 +398,7 @@ - uint8_t version; /* batman version field */ - uint8_t ttl; - uint8_t reserved; -- __be32 seqno; -+ uint32_t seqno; - uint8_t orig[ETH_ALEN]; - /* "4 bytes boundary + 2 bytes" long to make the payload after the - * following ethernet header again 4 bytes boundary aligned -@@ -431,14 +431,14 @@ - /* uint8_t first_dest[ETH_ALEN]; - saved in mac header destination */ - uint8_t first_source[ETH_ALEN]; - uint8_t first_orig_dest[ETH_ALEN]; -- __be32 first_crc; -+ uint32_t first_crc; - uint8_t second_ttl; - uint8_t second_ttvn; - uint8_t second_dest[ETH_ALEN]; - uint8_t second_source[ETH_ALEN]; - uint8_t second_orig_dest[ETH_ALEN]; -- __be32 second_crc; -- __be16 coded_len; -+ uint32_t second_crc; -+ uint16_t coded_len; - }; - - #pragma pack() -@@ -461,7 +461,7 @@ - uint8_t reserved; - uint8_t dst[ETH_ALEN]; - uint8_t src[ETH_ALEN]; -- __be16 tvlv_len; -+ uint16_t tvlv_len; - uint16_t align; - }; - -@@ -474,7 +474,7 @@ - struct batadv_tvlv_hdr { - uint8_t type; - uint8_t version; -- __be16 len; -+ uint16_t len; - }; - - /** -@@ -484,8 +484,8 @@ - * @bandwidth_up: advertised uplink upload bandwidth - */ - struct batadv_tvlv_gateway_data { -- __be32 bandwidth_down; -- __be32 bandwidth_up; -+ uint32_t bandwidth_down; -+ uint32_t bandwidth_up; - }; - - /** -@@ -498,7 +498,7 @@ - struct batadv_tvlv_tt_data { - uint8_t flags; - uint8_t ttvn; -- __be16 num_vlan; -+ uint16_t num_vlan; - }; - - /** -@@ -509,8 +509,8 @@ - * @reserved: unused, useful for alignment purposes - */ - struct batadv_tvlv_tt_vlan_data { -- __be32 crc; -- __be16 vid; -+ uint32_t crc; -+ uint16_t vid; - uint16_t reserved; - }; - -@@ -526,7 +526,7 @@ - uint8_t flags; - uint8_t reserved[3]; - uint8_t addr[ETH_ALEN]; -- __be16 vid; -+ uint16_t vid; - }; - - /** -@@ -536,7 +536,7 @@ - */ - struct batadv_tvlv_roam_adv { - uint8_t client[ETH_ALEN]; -- __be16 vid; -+ uint16_t vid; - }; - - /** diff --git a/package/batctl/batctl.hash b/package/batctl/batctl.hash index 663e6021de0..1a045f43ed4 100644 --- a/package/batctl/batctl.hash +++ b/package/batctl/batctl.hash @@ -1,2 +1,4 @@ +# http://downloads.open-mesh.org/batman/releases/batman-adv-2015.1/batctl-2015.1.tar.gz.sha1 +sha1 ae086f334ff912ab2a8116caedf0a2a1816acf1a batctl-2015.1.tar.gz # Locally calculated -sha256 77509ed70232ebc0b73e2fa9471ae13b12d6547d167dda0a82f7a7fad7252c36 batctl-2014.4.0.tar.gz +sha256 ea67ee22785e6fcd5149472bdf2df4e9f21716968e025e7dd41556a010a8d14a batctl-2015.1.tar.gz diff --git a/package/batctl/batctl.mk b/package/batctl/batctl.mk index c458752148c..e91dff99dc8 100644 --- a/package/batctl/batctl.mk +++ b/package/batctl/batctl.mk @@ -4,7 +4,7 @@ # ################################################################################ -BATCTL_VERSION = 2014.4.0 +BATCTL_VERSION = 2015.1 BATCTL_SITE = http://downloads.open-mesh.org/batman/releases/batman-adv-$(BATCTL_VERSION) BATCTL_LICENSE = GPLv2 BATCTL_DEPENDENCIES = libnl host-pkgconf diff --git a/package/bc/bc.mk b/package/bc/bc.mk index 146c472dacf..8f3e08dda66 100644 --- a/package/bc/bc.mk +++ b/package/bc/bc.mk @@ -8,7 +8,7 @@ BC_VERSION = 1.06.95 BC_SOURCE = bc-$(BC_VERSION).tar.bz2 BC_SITE = http://alpha.gnu.org/gnu/bc BC_DEPENDENCIES = host-flex -BC_LICENSE = GPLv2+ LGPLv2.1+ +BC_LICENSE = GPLv2+, LGPLv2.1+ BC_LICENSE_FILES = COPYING COPYING.LIB # Build after busybox so target ends up with bc's "dc" version diff --git a/package/bcache-tools/0001-Don-t-inline-crc64-for-gcc-5-compatability.patch b/package/bcache-tools/0001-Don-t-inline-crc64-for-gcc-5-compatability.patch new file mode 100644 index 00000000000..1a437a84fbb --- /dev/null +++ b/package/bcache-tools/0001-Don-t-inline-crc64-for-gcc-5-compatability.patch @@ -0,0 +1,35 @@ +Don't inline crc64 for gcc-5 compatability + +This patch is backported from Debian and it fixes the following error: + +bcache.c:125:9: warning: 'crc_table' is static but used in inline +function 'crc64' which is not static +... +make-bcache.c:277: undefined reference to `crc64' + +Signed-off-by: Vicente Olivert Riera + +From: David Mohr +Date: Tue, 26 May 2015 20:34:31 -0600 +Subject: Don't inline crc64 for gcc-5 compatability + +Forwarded: http://article.gmane.org/gmane.linux.kernel.bcache.devel/2919 + +By James Cowgill, see Debian bug #777798 +--- + bcache.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/bcache.c b/bcache.c +index 8f37445..8b4b986 100644 +--- a/bcache.c ++++ b/bcache.c +@@ -115,7 +115,7 @@ static const uint64_t crc_table[256] = { + 0x9AFCE626CE85B507ULL + }; + +-inline uint64_t crc64(const void *_data, size_t len) ++uint64_t crc64(const void *_data, size_t len) + { + uint64_t crc = 0xFFFFFFFFFFFFFFFFULL; + const unsigned char *data = _data; diff --git a/package/bcache-tools/bcache-tools.hash b/package/bcache-tools/bcache-tools.hash new file mode 100644 index 00000000000..6d3502fc297 --- /dev/null +++ b/package/bcache-tools/bcache-tools.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 d56923936f37287efc57a46315679102ef2c86cd0be5874590320acd48c1201c bcache-tools-v1.0.8.tar.gz diff --git a/package/bcache-tools/bcache-tools.mk b/package/bcache-tools/bcache-tools.mk index 666a02f29c0..09604f6bf58 100644 --- a/package/bcache-tools/bcache-tools.mk +++ b/package/bcache-tools/bcache-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -BCACHE_TOOLS_VERSION = v1.0.7 +BCACHE_TOOLS_VERSION = v1.0.8 BCACHE_TOOLS_SITE = $(call github,g2p,bcache-tools,$(BCACHE_TOOLS_VERSION)) BCACHE_TOOLS_LICENSE = GPLv2 BCACHE_TOOLS_LICENSE_FILES = COPYING diff --git a/package/bcm2835/Config.in b/package/bcm2835/Config.in new file mode 100644 index 00000000000..4c3eb2cbfc8 --- /dev/null +++ b/package/bcm2835/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_BCM2835 + bool "bcm2835" + depends on BR2_arm + help + C library for Broadcom BCM 2835 as used in Raspberry Pi. + It provides access to GPIO and other IO functions on the + Broadcom BCM 2835 chip, allowing access to the GPIO pins + on the 26 pin IDE plug on the RPi board so you can control + and interface with various external devices. + + WARNING: the opinion of the Buildroot developers is that + such library is a complete abomination as it entirely works + around the standard Linux interfaces to access GPIOs, I2C, + SPI busses or other IOs. The library directly remaps the + hardware registers in user-space, completely bypassing what + the kernel drivers are doing, and potentially conflicting + with them. + + http://www.airspayce.com/mikem/bcm2835 diff --git a/package/bcm2835/bcm2835.hash b/package/bcm2835/bcm2835.hash new file mode 100644 index 00000000000..1aea3ae3ddc --- /dev/null +++ b/package/bcm2835/bcm2835.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 295f66dab533592ce41db8e07befe985645a2e661bbf75dce9c383e61e24cb5f bcm2835-1.48.tar.gz diff --git a/package/bcm2835/bcm2835.mk b/package/bcm2835/bcm2835.mk new file mode 100644 index 00000000000..c111a0ad5df --- /dev/null +++ b/package/bcm2835/bcm2835.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# bcm2835 +# +################################################################################ + +BCM2835_VERSION = 1.48 +BCM2835_SITE = http://www.airspayce.com/mikem/bcm2835 +BCM2835_LICENSE = GPLv2 +BCM2835_LICENSE_FILES = COPYING +BCM2835_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch b/package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch new file mode 100644 index 00000000000..fc64386ca62 --- /dev/null +++ b/package/bcusdk/0001-Do-not-use-the-non-standard-sys-cdefs.h-header.patch @@ -0,0 +1,48 @@ +From c36db3f798bf576f42d81a0c51198b17d7112e8c Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 8 Aug 2015 17:43:28 +0200 +Subject: [PATCH] Do not use the non-standard header + + is glibc-specific, and should be used only internally by +glibc, not by external libraries/programs. It is not available in all +standard C libraries. + +Submitted upstream: https://sourceforge.net/p/bcusdk/patches/3/ + +Signed-off-by: Thomas Petazzoni +--- + eibd/include/eibclient.h | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +diff --git a/eibd/include/eibclient.h b/eibd/include/eibclient.h +index 2781878..b095a1c 100644 +--- a/eibd/include/eibclient.h ++++ b/eibd/include/eibclient.h +@@ -27,10 +27,11 @@ + #ifndef EIBCLIENT_H + #define EIBCLIENT_H + +-#include + #include + +-__BEGIN_DECLS; ++#ifdef __cplusplus ++extern "C" { ++#endif + + #include "eibloadresult.h" + +@@ -889,5 +890,9 @@ int EIB_Cache_LastUpdates_async (EIBConnection * con, uint16_t start, + uint16_t * end); + + +-__END_DECLS ++ ++#ifdef __cplusplus ++} ++#endif ++ + #endif +-- +2.5.0 + diff --git a/package/bcusdk/0002-fd_set-requires-inclusion-of-sys-select.h.patch b/package/bcusdk/0002-fd_set-requires-inclusion-of-sys-select.h.patch new file mode 100644 index 00000000000..723de5c1a29 --- /dev/null +++ b/package/bcusdk/0002-fd_set-requires-inclusion-of-sys-select.h.patch @@ -0,0 +1,31 @@ +From 2541ee3d709803096b17e45610ccc1404e2e5eee Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 8 Aug 2015 17:46:34 +0200 +Subject: [PATCH] fd_set requires inclusion of + +According to POSIX.1-2001, the definition fd_set and related macros is +in , so it should be included in files using fd_set to +make the code compatible with all standard C libraries. + +Submitted upstream: https://sourceforge.net/p/bcusdk/patches/3/ + +Signed-off-by: Thomas Petazzoni +--- + eibd/examples/common.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/eibd/examples/common.h b/eibd/examples/common.h +index 51fc514..f038da1 100644 +--- a/eibd/examples/common.h ++++ b/eibd/examples/common.h +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + #include "eibclient.h" + + /** unsigned char*/ +-- +2.5.0 + diff --git a/package/bcusdk/Config.in b/package/bcusdk/Config.in index 72deef154bb..8f9330e0d17 100644 --- a/package/bcusdk/Config.in +++ b/package/bcusdk/Config.in @@ -3,7 +3,7 @@ config BR2_PACKAGE_BCUSDK depends on BR2_USE_MMU # libpthsem depends on BR2_INSTALL_LIBSTDCPP select BR2_PACKAGE_LIBPTHSEM - select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC + select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL help A free development environment for the Bus Coupling Units of the European Installation Bus. diff --git a/package/bdwgc/0002-Do-not-include-sigcontext.h-and-asm-sigcontext.h.patch b/package/bdwgc/0002-Do-not-include-sigcontext.h-and-asm-sigcontext.h.patch new file mode 100644 index 00000000000..40c90631030 --- /dev/null +++ b/package/bdwgc/0002-Do-not-include-sigcontext.h-and-asm-sigcontext.h.patch @@ -0,0 +1,61 @@ +From c887470e0e3310c81ecdb7e736bc5d2ead45db2a Mon Sep 17 00:00:00 2001 +From: Ivan Maidanski +Date: Mon, 6 Apr 2015 20:06:47 +0300 +Subject: [PATCH 1/1] Do not include sigcontext.h and asm/sigcontext.h (these + Linux headers define sigcontext which is no longer used as replaced with + ucontext_t in GC 7.0alpha1) + +* os_dep.c: Do not include linux/version.h (do not test +LINUX_VERSION_CODE), asm/signal.h, sigcontext.h, asm/sigcontext.h +since struct sigcontext not used in GC v7+. + +Signed-off-by: Brendan Heading +Upstream-status: backport +--- + os_dep.c | 30 ------------------------------ + 1 file changed, 30 deletions(-) + +diff --git a/os_dep.c b/os_dep.c +index f62d4ed..a1bafbd 100644 +--- a/os_dep.c ++++ b/os_dep.c +@@ -16,36 +16,6 @@ + + #include "private/gc_priv.h" + +-#if defined(LINUX) && !defined(POWERPC) && !defined(NO_SIGCONTEXT_H) +-# include +-# if (LINUX_VERSION_CODE <= 0x10400) +- /* Ugly hack to get struct sigcontext_struct definition. Required */ +- /* for some early 1.3.X releases. Will hopefully go away soon. */ +- /* in some later Linux releases, asm/sigcontext.h may have to */ +- /* be included instead. */ +-# define __KERNEL__ +-# include +-# undef __KERNEL__ +-# else +- /* Kernels prior to 2.1.1 defined struct sigcontext_struct instead of */ +- /* struct sigcontext. libc6 (glibc2) uses "struct sigcontext" in */ +- /* prototypes, so we have to include the top-level sigcontext.h to */ +- /* make sure the former gets defined to be the latter if appropriate. */ +-# include +-# if 2 <= __GLIBC__ +-# if 2 == __GLIBC__ && 0 == __GLIBC_MINOR__ +- /* glibc 2.1 no longer has sigcontext.h. But signal.h */ +- /* has the right declaration for glibc 2.1. */ +-# include +-# endif /* 0 == __GLIBC_MINOR__ */ +-# else /* __GLIBC__ < 2 */ +- /* libc5 doesn't have : go directly with the kernel */ +- /* one. Check LINUX_VERSION_CODE to see which we should reference. */ +-# include +-# endif /* __GLIBC__ < 2 */ +-# endif +-#endif /* LINUX && !POWERPC */ +- + #if !defined(OS2) && !defined(PCR) && !defined(AMIGA) && !defined(MACOS) \ + && !defined(MSWINCE) && !defined(__CC_ARM) + # include +-- +2.4.3 + diff --git a/package/bdwgc/0003-Revert-Move-asm-machine-dependent-files-to-src-folde.patch b/package/bdwgc/0003-Revert-Move-asm-machine-dependent-files-to-src-folde.patch new file mode 100644 index 00000000000..03af6a39908 --- /dev/null +++ b/package/bdwgc/0003-Revert-Move-asm-machine-dependent-files-to-src-folde.patch @@ -0,0 +1,424 @@ +Signed-off-by: Waldemar Brodkorb + +From 5e756d4d8df2949cb3b6e51532d3016cbb276fd7 Mon Sep 17 00:00:00 2001 +From: Ivan Maidanski +Date: Fri, 27 Feb 2015 21:32:22 +0300 +Subject: [PATCH 004/135] Revert "Move asm machine-dependent files to 'src' + folder" (partly) + +Asm files moved back to base folder to avoid build issues (reported +for NetBSD and Solaris on Sparc). Alternative way is to adjust +configure.ac and Makefile.am properly but it requires more efforts +(including testing). + +* Makefile.am (EXTRA_libgc_la_SOURCES): Remove "src/" prefix. +* Makefile.direct (SRCS, mach_dep.o): Likewise. +* src/ia64_save_regs_in_stack.s: Move to base folder. +* src/sparc_mach_dep.S: Likewise. +* src/sparc_netbsd_mach_dep.s: Likewise. +* src/sparc_sunos4_mach_dep.s: Likewise. + +--- + Makefile.am | 4 +-- + Makefile.direct | 20 +++++++------- + ia64_save_regs_in_stack.s | 11 ++++++++ + sparc_mach_dep.S | 61 +++++++++++++++++++++++++++++++++++++++++ + sparc_netbsd_mach_dep.s | 34 +++++++++++++++++++++++ + sparc_sunos4_mach_dep.s | 32 +++++++++++++++++++++ + src/ia64_save_regs_in_stack.s | 11 -------- + src/sparc_mach_dep.S | 61 ----------------------------------------- + src/sparc_netbsd_mach_dep.s | 34 ----------------------- + src/sparc_sunos4_mach_dep.s | 32 --------------------- + 11 files changed, 151 insertions(+), 151 deletions(-) + create mode 100644 ia64_save_regs_in_stack.s + create mode 100644 sparc_mach_dep.S + create mode 100644 sparc_netbsd_mach_dep.s + create mode 100644 sparc_sunos4_mach_dep.s + delete mode 100644 src/ia64_save_regs_in_stack.s + delete mode 100644 src/sparc_mach_dep.S + delete mode 100644 src/sparc_netbsd_mach_dep.s + delete mode 100644 src/sparc_sunos4_mach_dep.s + +diff --git a/Makefile.am b/Makefile.am +index f8057db..1688be2 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -100,8 +100,8 @@ libgc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) $(ATOMIC_OPS_LIBS) + libgc_la_DEPENDENCIES = @addobjs@ + libgc_la_LDFLAGS = $(extra_ldflags_libgc) -version-info 1:3:0 -no-undefined + +-EXTRA_libgc_la_SOURCES = src/ia64_save_regs_in_stack.s src/sparc_mach_dep.S \ +- src/sparc_netbsd_mach_dep.s src/sparc_sunos4_mach_dep.s ++EXTRA_libgc_la_SOURCES = ia64_save_regs_in_stack.s sparc_mach_dep.S \ ++ sparc_netbsd_mach_dep.s sparc_sunos4_mach_dep.s + + + # C++ Interface +diff --git a/Makefile.direct b/Makefile.direct +index d64598b..8ab80e8 100644 +--- a/Makefile.direct ++++ b/Makefile.direct +@@ -108,8 +108,8 @@ SRCS= $(CSRCS) \ + include/gc_config_macros.h include/private/pthread_support.h \ + include/private/pthread_stop_world.h include/private/darwin_semaphore.h \ + include/private/darwin_stop_world.h include/private/thread_local_alloc.h \ +- src/ia64_save_regs_in_stack.s src/sparc_mach_dep.S \ +- src/sparc_netbsd_mach_dep.s src/sparc_sunos4_mach_dep.s $(CORD_SRCS) ++ ia64_save_regs_in_stack.s sparc_mach_dep.S \ ++ sparc_netbsd_mach_dep.s sparc_sunos4_mach_dep.s $(CORD_SRCS) + + DOC_FILES= README.QUICK TODO doc/README.Mac doc/README.OS2 \ + doc/README.amiga doc/README.cords doc/debugging.html \ +@@ -309,17 +309,17 @@ dyn_test: + # gcc -shared -Wl,-soname=libgc.so.0 -o libgc.so.0 $(LIBOBJS) dyn_load.lo + # touch liblinuxgc.so + +-mach_dep.o: $(srcdir)/mach_dep.c $(srcdir)/src/sparc_mach_dep.S \ +- $(srcdir)/src/sparc_sunos4_mach_dep.s \ +- $(srcdir)/src/ia64_save_regs_in_stack.s \ +- $(srcdir)/src/sparc_netbsd_mach_dep.s $(UTILS) ++mach_dep.o: $(srcdir)/mach_dep.c $(srcdir)/sparc_mach_dep.S \ ++ $(srcdir)/sparc_sunos4_mach_dep.s \ ++ $(srcdir)/ia64_save_regs_in_stack.s \ ++ $(srcdir)/sparc_netbsd_mach_dep.s $(UTILS) + rm -f mach_dep.o +- ./if_mach SPARC SOLARIS $(CC) -c -o mach_dep2.o $(srcdir)/src/sparc_mach_dep.S +- ./if_mach SPARC OPENBSD $(AS) -o mach_dep2.o $(srcdir)/src/sparc_sunos4_mach_dep.s +- ./if_mach SPARC NETBSD $(AS) -o mach_dep2.o $(srcdir)/src/sparc_netbsd_mach_dep.s ++ ./if_mach SPARC SOLARIS $(CC) -c -o mach_dep2.o $(srcdir)/sparc_mach_dep.S ++ ./if_mach SPARC OPENBSD $(AS) -o mach_dep2.o $(srcdir)/sparc_sunos4_mach_dep.s ++ ./if_mach SPARC NETBSD $(AS) -o mach_dep2.o $(srcdir)/sparc_netbsd_mach_dep.s + ./if_mach SPARC "" $(CC) -c -o mach_dep1.o $(SPECIALCFLAGS) $(srcdir)/mach_dep.c + ./if_mach SPARC "" ld -r -o mach_dep.o mach_dep1.o mach_dep2.o +- ./if_mach IA64 "" as $(AS_ABI_FLAG) -o ia64_save_regs_in_stack.o $(srcdir)/src/ia64_save_regs_in_stack.s ++ ./if_mach IA64 "" as $(AS_ABI_FLAG) -o ia64_save_regs_in_stack.o $(srcdir)/ia64_save_regs_in_stack.s + ./if_mach IA64 "" $(CC) -c -o mach_dep1.o $(SPECIALCFLAGS) $(srcdir)/mach_dep.c + ./if_mach IA64 "" ld -r -o mach_dep.o mach_dep1.o ia64_save_regs_in_stack.o + ./if_not_there mach_dep.o $(CC) -c $(SPECIALCFLAGS) $(srcdir)/mach_dep.c +diff --git a/ia64_save_regs_in_stack.s b/ia64_save_regs_in_stack.s +new file mode 100644 +index 0000000..2b81edf +--- /dev/null ++++ b/ia64_save_regs_in_stack.s +@@ -0,0 +1,11 @@ ++ .text ++ .align 16 ++ .global GC_save_regs_in_stack ++ .proc GC_save_regs_in_stack ++GC_save_regs_in_stack: ++ .body ++ flushrs ++ ;; ++ mov r8=ar.bsp ++ br.ret.sptk.few rp ++ .endp GC_save_regs_in_stack +diff --git a/sparc_mach_dep.S b/sparc_mach_dep.S +new file mode 100644 +index 0000000..d204dc4 +--- /dev/null ++++ b/sparc_mach_dep.S +@@ -0,0 +1,61 @@ ++! SPARCompiler 3.0 and later apparently no longer handles ++! asm outside functions. So we need a separate .s file ++! This is only set up for SunOS 5, not SunOS 4. ++! Assumes this is called before the stack contents are ++! examined. ++ ++ .seg "text" ++ .globl GC_save_regs_in_stack ++GC_save_regs_in_stack: ++#if defined(__arch64__) || defined(__sparcv9) ++ save %sp,-128,%sp ++ flushw ++ ret ++ restore %sp,2047+128,%o0 ++#else /* 32 bit SPARC */ ++ ta 0x3 ! ST_FLUSH_WINDOWS ++ mov %sp,%o0 ++ retl ++ nop ++#endif /* 32 bit SPARC */ ++.GC_save_regs_in_stack_end: ++ .size GC_save_regs_in_stack,.GC_save_regs_in_stack_end-GC_save_regs_in_stack ++ ++! GC_clear_stack_inner(arg, limit) clears stack area up to limit and ++! returns arg. Stack clearing is crucial on SPARC, so we supply ++! an assembly version that s more careful. Assumes limit is hotter ++! than sp, and limit is 8 byte aligned. ++ .globl GC_clear_stack_inner ++GC_clear_stack_inner: ++#if defined(__arch64__) || defined(__sparcv9) ++ mov %sp,%o2 ! Save sp ++ add %sp,2047-8,%o3 ! p = sp+bias-8 ++ add %o1,-2047-192,%sp ! Move sp out of the way, ++ ! so that traps still work. ++ ! Includes some extra words ++ ! so we can be sloppy below. ++loop: ++ stx %g0,[%o3] ! *(long *)p = 0 ++ cmp %o3,%o1 ++ bgu,pt %xcc, loop ! if (p > limit) goto loop ++ add %o3,-8,%o3 ! p -= 8 (delay slot) ++ retl ++ mov %o2,%sp ! Restore sp., delay slot ++#else /* 32 bit SPARC */ ++ mov %sp,%o2 ! Save sp ++ add %sp,-8,%o3 ! p = sp-8 ++ clr %g1 ! [g0,g1] = 0 ++ add %o1,-0x60,%sp ! Move sp out of the way, ++ ! so that traps still work. ++ ! Includes some extra words ++ ! so we can be sloppy below. ++loop: ++ std %g0,[%o3] ! *(long long *)p = 0 ++ cmp %o3,%o1 ++ bgu loop ! if (p > limit) goto loop ++ add %o3,-8,%o3 ! p -= 8 (delay slot) ++ retl ++ mov %o2,%sp ! Restore sp., delay slot ++#endif /* 32 bit SPARC */ ++.GC_clear_stack_inner_end: ++ .size GC_clear_stack_inner,.GC_clear_stack_inner_end-GC_clear_stack_inner +diff --git a/sparc_netbsd_mach_dep.s b/sparc_netbsd_mach_dep.s +new file mode 100644 +index 0000000..14feb15 +--- /dev/null ++++ b/sparc_netbsd_mach_dep.s +@@ -0,0 +1,34 @@ ++! SPARCompiler 3.0 and later apparently no longer handles ++! asm outside functions. So we need a separate .s file ++! This is only set up for SunOS 4. ++! Assumes this is called before the stack contents are ++! examined. ++ ++#include "machine/asm.h" ++ ++ .seg "text" ++ .globl _C_LABEL(GC_save_regs_in_stack) ++ .globl _C_LABEL(GC_push_regs) ++_C_LABEL(GC_save_regs_in_stack): ++_C_LABEL(GC_push_regs): ++ ta 0x3 ! ST_FLUSH_WINDOWS ++ mov %sp,%o0 ++ retl ++ nop ++ ++ .globl _C_LABEL(GC_clear_stack_inner) ++_C_LABEL(GC_clear_stack_inner): ++ mov %sp,%o2 ! Save sp ++ add %sp,-8,%o3 ! p = sp-8 ++ clr %g1 ! [g0,g1] = 0 ++ add %o1,-0x60,%sp ! Move sp out of the way, ++ ! so that traps still work. ++ ! Includes some extra words ++ ! so we can be sloppy below. ++loop: ++ std %g0,[%o3] ! *(long long *)p = 0 ++ cmp %o3,%o1 ++ bgu loop ! if (p > limit) goto loop ++ add %o3,-8,%o3 ! p -= 8 (delay slot) ++ retl ++ mov %o2,%sp ! Restore sp., delay slot +diff --git a/sparc_sunos4_mach_dep.s b/sparc_sunos4_mach_dep.s +new file mode 100644 +index 0000000..923f5ea +--- /dev/null ++++ b/sparc_sunos4_mach_dep.s +@@ -0,0 +1,32 @@ ++! SPARCompiler 3.0 and later apparently no longer handles ++! asm outside functions. So we need a separate .s file ++! This is only set up for SunOS 4. ++! Assumes this is called before the stack contents are ++! examined. ++ ++ .seg "text" ++ .globl _GC_save_regs_in_stack ++ .globl _GC_push_regs ++_GC_save_regs_in_stack: ++_GC_push_regs: ++ ta 0x3 ! ST_FLUSH_WINDOWS ++ mov %sp,%o0 ++ retl ++ nop ++ ++ .globl _GC_clear_stack_inner ++_GC_clear_stack_inner: ++ mov %sp,%o2 ! Save sp ++ add %sp,-8,%o3 ! p = sp-8 ++ clr %g1 ! [g0,g1] = 0 ++ add %o1,-0x60,%sp ! Move sp out of the way, ++ ! so that traps still work. ++ ! Includes some extra words ++ ! so we can be sloppy below. ++loop: ++ std %g0,[%o3] ! *(long long *)p = 0 ++ cmp %o3,%o1 ++ bgu loop ! if (p > limit) goto loop ++ add %o3,-8,%o3 ! p -= 8 (delay slot) ++ retl ++ mov %o2,%sp ! Restore sp., delay slot +diff --git a/src/ia64_save_regs_in_stack.s b/src/ia64_save_regs_in_stack.s +deleted file mode 100644 +index 2b81edf..0000000 +--- a/src/ia64_save_regs_in_stack.s ++++ /dev/null +@@ -1,11 +0,0 @@ +- .text +- .align 16 +- .global GC_save_regs_in_stack +- .proc GC_save_regs_in_stack +-GC_save_regs_in_stack: +- .body +- flushrs +- ;; +- mov r8=ar.bsp +- br.ret.sptk.few rp +- .endp GC_save_regs_in_stack +diff --git a/src/sparc_mach_dep.S b/src/sparc_mach_dep.S +deleted file mode 100644 +index d204dc4..0000000 +--- a/src/sparc_mach_dep.S ++++ /dev/null +@@ -1,61 +0,0 @@ +-! SPARCompiler 3.0 and later apparently no longer handles +-! asm outside functions. So we need a separate .s file +-! This is only set up for SunOS 5, not SunOS 4. +-! Assumes this is called before the stack contents are +-! examined. +- +- .seg "text" +- .globl GC_save_regs_in_stack +-GC_save_regs_in_stack: +-#if defined(__arch64__) || defined(__sparcv9) +- save %sp,-128,%sp +- flushw +- ret +- restore %sp,2047+128,%o0 +-#else /* 32 bit SPARC */ +- ta 0x3 ! ST_FLUSH_WINDOWS +- mov %sp,%o0 +- retl +- nop +-#endif /* 32 bit SPARC */ +-.GC_save_regs_in_stack_end: +- .size GC_save_regs_in_stack,.GC_save_regs_in_stack_end-GC_save_regs_in_stack +- +-! GC_clear_stack_inner(arg, limit) clears stack area up to limit and +-! returns arg. Stack clearing is crucial on SPARC, so we supply +-! an assembly version that s more careful. Assumes limit is hotter +-! than sp, and limit is 8 byte aligned. +- .globl GC_clear_stack_inner +-GC_clear_stack_inner: +-#if defined(__arch64__) || defined(__sparcv9) +- mov %sp,%o2 ! Save sp +- add %sp,2047-8,%o3 ! p = sp+bias-8 +- add %o1,-2047-192,%sp ! Move sp out of the way, +- ! so that traps still work. +- ! Includes some extra words +- ! so we can be sloppy below. +-loop: +- stx %g0,[%o3] ! *(long *)p = 0 +- cmp %o3,%o1 +- bgu,pt %xcc, loop ! if (p > limit) goto loop +- add %o3,-8,%o3 ! p -= 8 (delay slot) +- retl +- mov %o2,%sp ! Restore sp., delay slot +-#else /* 32 bit SPARC */ +- mov %sp,%o2 ! Save sp +- add %sp,-8,%o3 ! p = sp-8 +- clr %g1 ! [g0,g1] = 0 +- add %o1,-0x60,%sp ! Move sp out of the way, +- ! so that traps still work. +- ! Includes some extra words +- ! so we can be sloppy below. +-loop: +- std %g0,[%o3] ! *(long long *)p = 0 +- cmp %o3,%o1 +- bgu loop ! if (p > limit) goto loop +- add %o3,-8,%o3 ! p -= 8 (delay slot) +- retl +- mov %o2,%sp ! Restore sp., delay slot +-#endif /* 32 bit SPARC */ +-.GC_clear_stack_inner_end: +- .size GC_clear_stack_inner,.GC_clear_stack_inner_end-GC_clear_stack_inner +diff --git a/src/sparc_netbsd_mach_dep.s b/src/sparc_netbsd_mach_dep.s +deleted file mode 100644 +index 14feb15..0000000 +--- a/src/sparc_netbsd_mach_dep.s ++++ /dev/null +@@ -1,34 +0,0 @@ +-! SPARCompiler 3.0 and later apparently no longer handles +-! asm outside functions. So we need a separate .s file +-! This is only set up for SunOS 4. +-! Assumes this is called before the stack contents are +-! examined. +- +-#include "machine/asm.h" +- +- .seg "text" +- .globl _C_LABEL(GC_save_regs_in_stack) +- .globl _C_LABEL(GC_push_regs) +-_C_LABEL(GC_save_regs_in_stack): +-_C_LABEL(GC_push_regs): +- ta 0x3 ! ST_FLUSH_WINDOWS +- mov %sp,%o0 +- retl +- nop +- +- .globl _C_LABEL(GC_clear_stack_inner) +-_C_LABEL(GC_clear_stack_inner): +- mov %sp,%o2 ! Save sp +- add %sp,-8,%o3 ! p = sp-8 +- clr %g1 ! [g0,g1] = 0 +- add %o1,-0x60,%sp ! Move sp out of the way, +- ! so that traps still work. +- ! Includes some extra words +- ! so we can be sloppy below. +-loop: +- std %g0,[%o3] ! *(long long *)p = 0 +- cmp %o3,%o1 +- bgu loop ! if (p > limit) goto loop +- add %o3,-8,%o3 ! p -= 8 (delay slot) +- retl +- mov %o2,%sp ! Restore sp., delay slot +diff --git a/src/sparc_sunos4_mach_dep.s b/src/sparc_sunos4_mach_dep.s +deleted file mode 100644 +index 923f5ea..0000000 +--- a/src/sparc_sunos4_mach_dep.s ++++ /dev/null +@@ -1,32 +0,0 @@ +-! SPARCompiler 3.0 and later apparently no longer handles +-! asm outside functions. So we need a separate .s file +-! This is only set up for SunOS 4. +-! Assumes this is called before the stack contents are +-! examined. +- +- .seg "text" +- .globl _GC_save_regs_in_stack +- .globl _GC_push_regs +-_GC_save_regs_in_stack: +-_GC_push_regs: +- ta 0x3 ! ST_FLUSH_WINDOWS +- mov %sp,%o0 +- retl +- nop +- +- .globl _GC_clear_stack_inner +-_GC_clear_stack_inner: +- mov %sp,%o2 ! Save sp +- add %sp,-8,%o3 ! p = sp-8 +- clr %g1 ! [g0,g1] = 0 +- add %o1,-0x60,%sp ! Move sp out of the way, +- ! so that traps still work. +- ! Includes some extra words +- ! so we can be sloppy below. +-loop: +- std %g0,[%o3] ! *(long long *)p = 0 +- cmp %o3,%o1 +- bgu loop ! if (p > limit) goto loop +- add %o3,-8,%o3 ! p -= 8 (delay slot) +- retl +- mov %o2,%sp ! Restore sp., delay slot +-- +1.7.10.4 + diff --git a/package/bdwgc/Config.in b/package/bdwgc/Config.in index 9aa7c7dff51..95139efb933 100644 --- a/package/bdwgc/Config.in +++ b/package/bdwgc/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_BDWGC bool "bdwgc" - depends on BR2_PACKAGE_LIBATOMIC_ARCH_SUPPORTS + depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS select BR2_PACKAGE_LIBATOMIC_OPS help The Boehm-Demers-Weiser conservative garbage collector can diff --git a/package/bdwgc/bdwgc.mk b/package/bdwgc/bdwgc.mk index 19a66f33cf7..4603151166f 100644 --- a/package/bdwgc/bdwgc.mk +++ b/package/bdwgc/bdwgc.mk @@ -19,6 +19,9 @@ BDWGC_DEPENDENCIES = libatomic_ops host-pkgconf BDWGC_AUTORECONF = YES BDWGC_CFLAGS = $(TARGET_CFLAGS) +ifeq ($(BR2_sparc),y) +BDWGC_CFLAGS += -DAO_NO_SPARC_V9 +endif ifeq ($(BR2_STATIC_LIBS),y) BDWGC_CFLAGS += -DGC_NO_DLOPEN endif diff --git a/package/beecrypt/Config.in b/package/beecrypt/Config.in index b9685ef3b06..069f3d5cfd4 100644 --- a/package/beecrypt/Config.in +++ b/package/beecrypt/Config.in @@ -16,14 +16,14 @@ config BR2_PACKAGE_BEECRYPT_CPP depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR # icu depends on !BR2_BINFMT_FLAT # icu - depends on BR2_ARCH_HAS_ATOMICS # icu + depends on !BR2_STATIC_LIBS select BR2_PACKAGE_ICU help Enable C++ support. This pulls in the (large) icu package. -comment "C++ support needs a toolchain w/ wchar" +comment "C++ support needs a toolchain w/ C++, wchar, dynamic libraries" depends on !BR2_BINFMT_FLAT - depends on BR2_ARCH_HAS_ATOMICS - depends on BR2_INSTALL_LIBSTDCPP && !BR2_USE_WCHAR + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \ + || BR2_STATIC_LIBS endif # BR2_PACKAGE_BEECRYPT diff --git a/package/beecrypt/beecrypt.mk b/package/beecrypt/beecrypt.mk index cd0b4ac96bc..e66cec10d68 100644 --- a/package/beecrypt/beecrypt.mk +++ b/package/beecrypt/beecrypt.mk @@ -19,6 +19,7 @@ BEECRYPT_CONF_OPTS = \ ifeq ($(BR2_PACKAGE_BEECRYPT_CPP),y) BEECRYPT_DEPENDENCIES += icu +BEECRYPT_CONF_OPTS += --with-cplusplus else BEECRYPT_CONF_OPTS += --without-cplusplus diff --git a/package/bind/0001-Fix-LibreSSL-compatibility.-RT-40977.patch b/package/bind/0001-Fix-LibreSSL-compatibility.-RT-40977.patch new file mode 100644 index 00000000000..921ec367be3 --- /dev/null +++ b/package/bind/0001-Fix-LibreSSL-compatibility.-RT-40977.patch @@ -0,0 +1,129 @@ +From f824c65d1fb6a2490b03228e63cc43dae6844f73 Mon Sep 17 00:00:00 2001 +From: Mark Andrews +Date: Mon, 19 Oct 2015 10:43:58 +1100 +Subject: [PATCH] 4340. [port] Fix LibreSSL compatibility. [RT + #40977] + +Status: upstream git + +Signed-off-by: Gustavo Zacarias +--- + lib/dns/dst_openssl.h | 2 +- + lib/dns/openssl_link.c | 8 ++++---- + lib/dns/openssldh_link.c | 4 ++-- + lib/dns/openssldsa_link.c | 4 ++-- + lib/dns/opensslrsa_link.c | 2 +- + +diff --git a/lib/dns/dst_openssl.h b/lib/dns/dst_openssl.h +index dd67405..12f8bfc 100644 +--- a/lib/dns/dst_openssl.h ++++ b/lib/dns/dst_openssl.h +@@ -36,7 +36,7 @@ + #define USE_ENGINE 1 + #endif + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + /* + * These are new in OpenSSL 1.1.0. BN_GENCB _cb needs to be declared in + * the function like this before the BN_GENCB_new call: +diff --git a/lib/dns/openssl_link.c b/lib/dns/openssl_link.c +index 8683bee..6a52b31 100644 +--- a/lib/dns/openssl_link.c ++++ b/lib/dns/openssl_link.c +@@ -88,7 +88,7 @@ entropy_getpseudo(unsigned char *buf, int num) { + return (result == ISC_R_SUCCESS ? 1 : -1); + } + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + static void + entropy_add(const void *buf, int num, double entropy) { + /* +@@ -121,7 +121,7 @@ lock_callback(int mode, int type, const char *file, int line) { + UNLOCK(&locks[type]); + } + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + static unsigned long + id_callback(void) { + return ((unsigned long)isc_thread_self()); +@@ -187,7 +187,7 @@ dst__openssl_init(const char *engine) { + if (result != ISC_R_SUCCESS) + goto cleanup_mutexalloc; + CRYPTO_set_locking_callback(lock_callback); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + CRYPTO_set_id_callback(id_callback); + #endif + +@@ -287,7 +287,7 @@ dst__openssl_destroy(void) { + CRYPTO_cleanup_all_ex_data(); + #endif + ERR_clear_error(); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + ERR_remove_state(0); + #endif + ERR_free_strings(); +diff --git a/lib/dns/openssldh_link.c b/lib/dns/openssldh_link.c +index 9f42219..67fbf69 100644 +--- a/lib/dns/openssldh_link.c ++++ b/lib/dns/openssldh_link.c +@@ -173,7 +173,7 @@ openssldh_generate(dst_key_t *key, int generator, void (*callback)(int)) { + DH *dh = NULL; + #if OPENSSL_VERSION_NUMBER > 0x00908000L + BN_GENCB *cb; +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + BN_GENCB _cb; + #endif + union { +@@ -210,7 +210,7 @@ openssldh_generate(dst_key_t *key, int generator, void (*callback)(int)) { + if (dh == NULL) + return (dst__openssl_toresult(ISC_R_NOMEMORY)); + cb = BN_GENCB_new(); +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) + if (cb == NULL) { + DH_free(dh); + return (dst__openssl_toresult(ISC_R_NOMEMORY)); +diff --git a/lib/dns/openssldsa_link.c b/lib/dns/openssldsa_link.c +index 963e2f5..d47b265 100644 +--- a/lib/dns/openssldsa_link.c ++++ b/lib/dns/openssldsa_link.c +@@ -359,7 +359,7 @@ openssldsa_generate(dst_key_t *key, int unused, void (*callback)(int)) { + isc_result_t result; + #if OPENSSL_VERSION_NUMBER > 0x00908000L + BN_GENCB *cb; +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + BN_GENCB _cb; + #endif + union { +@@ -383,7 +383,7 @@ openssldsa_generate(dst_key_t *key, int unused, void (*callback)(int)) { + if (dsa == NULL) + return (dst__openssl_toresult(DST_R_OPENSSLFAILURE)); + cb = BN_GENCB_new(); +-#if OPENSSL_VERSION_NUMBER >= 0x10100000L ++#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER) + if (cb == NULL) { + DSA_free(dsa); + return (dst__openssl_toresult(DST_R_OPENSSLFAILURE)); +diff --git a/lib/dns/opensslrsa_link.c b/lib/dns/opensslrsa_link.c +index 94aced2..d799be0 100644 +--- a/lib/dns/opensslrsa_link.c ++++ b/lib/dns/opensslrsa_link.c +@@ -771,7 +771,7 @@ opensslrsa_generate(dst_key_t *key, int exp, void (*callback)(int)) { + } u; + RSA *rsa = RSA_new(); + BIGNUM *e = BN_new(); +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if OPENSSL_VERSION_NUMBER < 0x10100000L || defined(LIBRESSL_VERSION_NUMBER) + BN_GENCB _cb; + #endif + BN_GENCB *cb = BN_GENCB_new(); +-- +2.4.10 + diff --git a/package/bind/0001-disable-tests.patch b/package/bind/0001-disable-tests.patch deleted file mode 100644 index 181b229d9a4..00000000000 --- a/package/bind/0001-disable-tests.patch +++ /dev/null @@ -1,28 +0,0 @@ -Disable tests to avoid cross-compilation issues (tries to run genrandom). - -Signed-off-by: Gustavo Zacarias - -diff -Nura bind-9.9.4-P2.orig/bin/Makefile.in bind-9.9.4-P2/bin/Makefile.in ---- bind-9.9.4-P2.orig/bin/Makefile.in 2013-12-19 21:28:28.000000000 -0300 -+++ bind-9.9.4-P2/bin/Makefile.in 2014-01-17 11:41:25.378784210 -0300 -@@ -19,7 +19,7 @@ - VPATH = @srcdir@ - top_srcdir = @top_srcdir@ - --SUBDIRS = named rndc dig dnssec tools tests nsupdate \ -+SUBDIRS = named rndc dig dnssec tools nsupdate \ - check confgen @PYTHON_TOOLS@ @PKCS11_TOOLS@ - TARGETS = - -diff -Nura bind-9.9.4-P2.orig/lib/Makefile.in bind-9.9.4-P2/lib/Makefile.in ---- bind-9.9.4-P2.orig/lib/Makefile.in 2013-12-19 21:28:28.000000000 -0300 -+++ bind-9.9.4-P2/lib/Makefile.in 2014-01-17 11:41:30.489954861 -0300 -@@ -23,7 +23,7 @@ - # Attempt to disable parallel processing. - .NOTPARALLEL: - .NO_PARALLEL: --SUBDIRS = isc isccc dns isccfg bind9 lwres tests -+SUBDIRS = isc isccc dns isccfg bind9 lwres - TARGETS = - - @BIND9_MAKE_RULES@ diff --git a/package/bind/0003-Rename-ptrsize-to-ptr_size.patch b/package/bind/0003-Rename-ptrsize-to-ptr_size.patch new file mode 100644 index 00000000000..e3b58e202d5 --- /dev/null +++ b/package/bind/0003-Rename-ptrsize-to-ptr_size.patch @@ -0,0 +1,74 @@ +From 254dc19788ba2a03504fc6d1036fef477a60035f Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Fri, 22 Jan 2016 08:31:02 -0300 +Subject: [PATCH] Rename ptrsize to ptr_size + +This is to compensate for a uClibc mess caused by commit +70a04a287a2875c82e6822c36e071afba5b63a62 where ptrsize is defined for +mips, hence causing build breakage under certain conditions for programs +that use this variable name. + +Status: definitely not upstreamable. + +Signed-off-by: Gustavo Zacarias +--- + lib/dns/rbt.c | 6 +++--- + lib/dns/rbtdb.c | 4 ++-- + 2 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/lib/dns/rbt.c b/lib/dns/rbt.c +index 86b5183..5fd55de 100644 +--- a/lib/dns/rbt.c ++++ b/lib/dns/rbt.c +@@ -113,7 +113,7 @@ struct file_header { + * information about the system on which the map file was generated + * will be used to tell if we can load the map file or not + */ +- isc_uint32_t ptrsize; ++ isc_uint32_t ptr_size; + unsigned int bigendian:1; /* big or little endian system */ + unsigned int rdataset_fixed:1; /* compiled with --enable-rrset-fixed */ + unsigned int nodecount; /* shadow from rbt structure */ +@@ -517,7 +517,7 @@ write_header(FILE *file, dns_rbt_t *rbt, isc_uint64_t first_node_offset, + memmove(header.version1, FILE_VERSION, sizeof(header.version1)); + memmove(header.version2, FILE_VERSION, sizeof(header.version2)); + header.first_node_offset = first_node_offset; +- header.ptrsize = (isc_uint32_t) sizeof(void *); ++ header.ptr_size = (isc_uint32_t) sizeof(void *); + header.bigendian = (1 == htonl(1)) ? 1 : 0; + + #ifdef DNS_RDATASET_FIXED +@@ -902,7 +902,7 @@ dns_rbt_deserialize_tree(void *base_address, size_t filesize, + } + #endif + +- if (header->ptrsize != (isc_uint32_t) sizeof(void *)) { ++ if (header->ptr_size != (isc_uint32_t) sizeof(void *)) { + result = ISC_R_INVALIDFILE; + goto cleanup; + } +diff --git a/lib/dns/rbtdb.c b/lib/dns/rbtdb.c +index c7168cb..dbcf944 100644 +--- a/lib/dns/rbtdb.c ++++ b/lib/dns/rbtdb.c +@@ -114,7 +114,7 @@ typedef struct rbtdb_file_header rbtdb_file_header_t; + + struct rbtdb_file_header { + char version1[32]; +- isc_uint32_t ptrsize; ++ isc_uint32_t ptr_size; + unsigned int bigendian:1; + isc_uint64_t tree; + isc_uint64_t nsec; +@@ -7593,7 +7593,7 @@ rbtdb_write_header(FILE *rbtfile, off_t tree_location, off_t nsec_location, + memset(&header, 0, sizeof(rbtdb_file_header_t)); + memmove(header.version1, FILE_VERSION, sizeof(header.version1)); + memmove(header.version2, FILE_VERSION, sizeof(header.version2)); +- header.ptrsize = (isc_uint32_t) sizeof(void *); ++ header.ptr_size = (isc_uint32_t) sizeof(void *); + header.bigendian = (1 == htonl(1)) ? 1 : 0; + header.tree = (isc_uint64_t) tree_location; + header.nsec = (isc_uint64_t) nsec_location; +-- +2.4.10 + diff --git a/package/bind/Config.in b/package/bind/Config.in index d7588845914..a580f0ee662 100644 --- a/package/bind/Config.in +++ b/package/bind/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_BIND bool "bind" depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS help BIND (Berkeley Internet Name Domain) is an implementation of @@ -37,6 +38,6 @@ config BR2_PACKAGE_BIND_TOOLS endif -comment "bind needs a toolchain w/ dynamic library" +comment "bind needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/bind/S81named b/package/bind/S81named index 4581eb362af..bc4bb0f246f 100644 --- a/package/bind/S81named +++ b/package/bind/S81named @@ -9,17 +9,17 @@ DAEMON=/usr/sbin/named case "$1" in start) if [ ! -f /etc/rndc.key ]; then - echo -n "Initializing bind control key: " + printf "Initializing bind control key: " # if rndc.key is a symlink, the target must exist touch /etc/rndc.key rndc-confgen -a -r /dev/urandom 2>/dev/null && echo "OK" || echo "FAIL" fi - echo -n "Starting domain name daemon: " + printf "Starting domain name daemon: " start-stop-daemon -S -x $DAEMON -- -c $CONFIG -u named [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping domain name daemon: " + printf "Stopping domain name daemon: " rndc stop || start-stop-daemon -K -x $DAEMON [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/bind/bind.hash b/package/bind/bind.hash index 6bc2d1b645b..fea800c741c 100644 --- a/package/bind/bind.hash +++ b/package/bind/bind.hash @@ -1,2 +1,2 @@ -# Verified from ftp://ftp.isc.org/isc/bind9/9.9.7-P2/bind-9.9.7-P2.tar.gz.sha256.asc -sha256 f5f433567e5f68d61460d86f691471259a49b6d10d7422acbd88b7fdb038b518 bind-9.9.7-P2.tar.gz +# Verified from ftp://ftp.isc.org/isc/bind9/9.10.3-P3/bind-9.10.3-P3.tar.gz.sha256.asc +sha256 690810d1fbb72afa629e74638d19cd44e28d2b2e5eb63f55c705ad85d1a4cb83 bind-9.10.3-P3.tar.gz diff --git a/package/bind/bind.mk b/package/bind/bind.mk index 62019913025..12dd52e74ca 100644 --- a/package/bind/bind.mk +++ b/package/bind/bind.mk @@ -4,8 +4,10 @@ # ################################################################################ -BIND_VERSION = 9.9.7-P2 +BIND_VERSION = 9.10.3-P3 BIND_SITE = ftp://ftp.isc.org/isc/bind9/$(BIND_VERSION) +# bind does not support parallel builds. +BIND_MAKE = $(MAKE1) BIND_INSTALL_STAGING = YES BIND_CONFIG_SCRIPTS = bind9-config isc-config.sh BIND_LICENSE = ISC @@ -22,6 +24,7 @@ BIND_CONF_ENV = \ BUILD_CC="$(TARGET_CC)" \ BUILD_CFLAGS="$(TARGET_CFLAGS)" BIND_CONF_OPTS = \ + --with-libjson=no \ --with-randomdev=/dev/urandom \ --enable-epoll \ --with-libtool \ diff --git a/package/binutils/2.23.2/914-xtensa-fix-signedness-of-gas-relocations.patch b/package/binutils/2.23.2/914-xtensa-fix-signedness-of-gas-relocations.patch new file mode 100644 index 00000000000..2955e114e27 --- /dev/null +++ b/package/binutils/2.23.2/914-xtensa-fix-signedness-of-gas-relocations.patch @@ -0,0 +1,47 @@ +From 6c7c5c477ef9ccf2d2548cf2ac3cec9bd3c9c5b6 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Tue, 2 Feb 2016 17:11:38 +0300 +Subject: [PATCH] xtensa: fix signedness of gas relocations + +Change 1058c7532d0b "Use signed data type for R_XTENSA_DIFF* relocation +offsets." changed signedness of BFD_RELOC_XTENSA_DIFF* relocations +substituted for BFD_RELOC_*. This made it impossible to encode arbitrary +8-, 16- and 32-bit values, which broke e.g. debug info encoding by .loc +directive. Revert this part and add test. + +gas/ +2016-02-03 Max Filippov + * config/tc-xtensa.c (md_apply_fix): Mark BFD_RELOC_XTENSA_DIFF* + substitutions for BFD_RELOC_* as unsigned. + +Signed-off-by: Max Filippov +--- + gas/config/tc-xtensa.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c +index a119871..36a06cc 100644 +--- a/gas/config/tc-xtensa.c ++++ b/gas/config/tc-xtensa.c +@@ -5961,15 +5961,15 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) + { + case BFD_RELOC_8: + fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF8; +- fixP->fx_signed = 1; ++ fixP->fx_signed = 0; + break; + case BFD_RELOC_16: + fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF16; +- fixP->fx_signed = 1; ++ fixP->fx_signed = 0; + break; + case BFD_RELOC_32: + fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF32; +- fixP->fx_signed = 1; ++ fixP->fx_signed = 0; + break; + default: + break; +-- +2.1.4 + diff --git a/package/binutils/2.23.2/915-xtensa-fix-.init-.fini-literals-moving.patch b/package/binutils/2.23.2/915-xtensa-fix-.init-.fini-literals-moving.patch new file mode 100644 index 00000000000..4bdd8a0277d --- /dev/null +++ b/package/binutils/2.23.2/915-xtensa-fix-.init-.fini-literals-moving.patch @@ -0,0 +1,70 @@ +From 7db2accc3fdea0aaa0c3a76a413d8e8030e022c3 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Tue, 16 Feb 2016 02:23:28 +0300 +Subject: [PATCH] xtensa: fix .init/.fini literals moving + +Despite the documentation and the comment in xtensa_move_literals, in +the presence of --text-section-literals and --auto-litpools literals are +moved from the separate literal sections into .init and .fini, because +the check in the xtensa_move_literals is incorrect. + +This moving was broken with introduction of auto litpools: some literals +now may be lost. This happens because literal frags emitted from .init +and .fini are not closed when new .literal_position marks new literal +pool. Then frag_align(2, 0, 0) changes type of the last literal frag to +rs_align. rs_align frags are skipped in the xtensa_move_literals. As a +result fixups against such literals are not moved out of .init.literal/ +.fini.literal sections producing the following assembler error: + + test.S: Warning: fixes not all moved from .init.literal + test.S: Internal error! + +Fix check for .init.literal/.fini.literal in the xtensa_move_literals +and don't let it move literals from there in the presence of +--text-section-literals or --auto-litpools. + +2016-02-17 Max Filippov +gas/ + * config/tc-xtensa.c (xtensa_move_literals): Fix check for + .init.literal/.fini.literal section name. + +Signed-off-by: Max Filippov +--- +Backported from: 4111950f363221c4641dc2f33bea61cc94f34906 + + gas/config/tc-xtensa.c | 12 ++++++++++-- + 1 file changed, 19 insertions(+), 2 deletions(-) + +diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c +index 36a06cc..5773634 100644 +--- a/gas/config/tc-xtensa.c ++++ b/gas/config/tc-xtensa.c +@@ -10625,5 +10625,9 @@ xtensa_move_literals (void) + fixS *fix, *next_fix, **fix_splice; + sym_list *lit; ++ const char *init_name = INIT_SECTION_NAME; ++ const char *fini_name = FINI_SECTION_NAME; ++ int init_name_len = strlen(init_name); ++ int fini_name_len = strlen(fini_name); + + mark_literal_frags (literal_head->next); + +@@ -10632,9 +10636,13 @@ xtensa_move_literals (void) + + for (segment = literal_head->next; segment; segment = segment->next) + { ++ const char *seg_name = segment_name (segment->seg); ++ + /* Keep the literals for .init and .fini in separate sections. */ +- if (!strcmp (segment_name (segment->seg), INIT_SECTION_NAME) +- || !strcmp (segment_name (segment->seg), FINI_SECTION_NAME)) ++ if ((!memcmp (seg_name, init_name, init_name_len) && ++ !strcmp (seg_name + init_name_len, ".literal")) || ++ (!memcmp (seg_name, fini_name, fini_name_len) && ++ !strcmp (seg_name + fini_name_len, ".literal"))) + continue; + + frchain_from = seg_info (segment->seg)->frchainP; +-- +2.1.4 + diff --git a/package/binutils/2.24/913-xtensa-add-auto-litpools-option.patch b/package/binutils/2.24/913-xtensa-add-auto-litpools-option.patch new file mode 100644 index 00000000000..f0199e1e2a0 --- /dev/null +++ b/package/binutils/2.24/913-xtensa-add-auto-litpools-option.patch @@ -0,0 +1,698 @@ +From 978adaaa4cd3921842e2be8a31c05f081fb17fcf Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Wed, 29 Jul 2015 17:42:54 +0300 +Subject: [PATCH] xtensa: add --auto-litpools option + +Auto-litpools is the automated version of text-section-literals: literal +pool candidate frags are planted every N frags and during relaxation +they are turned into actual literal pools where literals are moved to +become reachable for their first reference by L32R instruction. + +2015-08-12 David Weatherford +gas/ + * config/tc-xtensa.c (struct litpool_frag, struct litpool_seg): + New structures. + (xtensa_maybe_create_literal_pool_frag): New function. + (litpool_seg_list, auto_litpools, auto_litpool_limit) + (litpool_buf, litpool_slotbuf): New static variables. + (option_auto_litpools, option_no_auto_litpools) + (option_auto_litpool_limit): New enum identifiers. + (md_longopts): Add entries for auto-litpools, no-auto-litpools + and auto-litpool-limit. + (md_parse_option): Handle option_auto_litpools, + option_no_auto_litpools and option_auto_litpool_limit. + (md_show_usage): Add help for --[no-]auto-litpools and + --auto-litpool-limit. + (xtensa_mark_literal_pool_location): Record a place for literal + pool with a call to xtensa_maybe_create_literal_pool_frag. + (get_literal_pool_location): Find highest priority literal pool + or convert candidate to literal pool when auto-litpools are used. + (xg_assemble_vliw_tokens): Create literal pool after jump + instruction. + (xtensa_check_frag_count): Create candidate literal pool every + auto_litpool_limit frags. + (xtensa_relax_frag): Add jump around literals to non-empty + literal pool. + (xtensa_move_literals): Estimate literal pool addresses and move + unreachable literals closer to their users, converting candidate + to literal pool if needed. + (xtensa_switch_to_non_abs_literal_fragment): Only emit error + about missing .literal_position in case auto-litpools are not + used. + * config/tc-xtensa.h (xtensa_relax_statesE): New relaxation + state: RELAX_LITERAL_POOL_CANDIDATE_BEGIN. + +2015-08-12 Max Filippov +gas/testsuite/ + * gas/xtensa/all.exp: Add auto-litpools to the list of xtensa + tests. + * gas/xtensa/auto-litpools.s: New file: auto-litpools test. + * gas/xtensa/auto-litpools.s: New file: auto-litpools test + result pattern. + +Signed-off-by: Max Filippov +--- +Backported from: b46824bd49648c575372e6d9bc6a6defeabd6ed5 +Changes to ChangeLogs and documentation are dropped. + + gas/config/tc-xtensa.c | 432 ++++++++++++++++++++++++++++++- + gas/config/tc-xtensa.h | 1 + + gas/testsuite/gas/xtensa/all.exp | 1 + + gas/testsuite/gas/xtensa/auto-litpools.d | 12 + + gas/testsuite/gas/xtensa/auto-litpools.s | 13 + + 5 files changed, 454 insertions(+), 5 deletions(-) + create mode 100644 gas/testsuite/gas/xtensa/auto-litpools.d + create mode 100644 gas/testsuite/gas/xtensa/auto-litpools.s + +diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c +index 7311a05..b8b1e7d 100644 +--- a/gas/config/tc-xtensa.c ++++ b/gas/config/tc-xtensa.c +@@ -440,6 +440,29 @@ bfd_boolean directive_state[] = + #endif + }; + ++/* A circular list of all potential and actual literal pool locations ++ in a segment. */ ++struct litpool_frag ++{ ++ struct litpool_frag *next; ++ struct litpool_frag *prev; ++ fragS *fragP; ++ addressT addr; ++ short priority; /* 1, 2, or 3 -- 1 is highest */ ++ short original_priority; ++}; ++ ++/* Map a segment to its litpool_frag list. */ ++struct litpool_seg ++{ ++ struct litpool_seg *next; ++ asection *seg; ++ struct litpool_frag frag_list; ++ int frag_count; /* since last litpool location */ ++}; ++ ++static struct litpool_seg litpool_seg_list; ++ + + /* Directive functions. */ + +@@ -474,6 +497,9 @@ static void xtensa_create_trampoline_frag (bfd_boolean); + static void xtensa_maybe_create_trampoline_frag (void); + struct trampoline_frag; + static int init_trampoline_frag (struct trampoline_frag *); ++static void xtensa_maybe_create_literal_pool_frag (bfd_boolean, bfd_boolean); ++static bfd_boolean auto_litpools = FALSE; ++static int auto_litpool_limit = 10000; + + /* Alignment Functions. */ + +@@ -698,6 +724,10 @@ enum + + option_trampolines, + option_no_trampolines, ++ ++ option_auto_litpools, ++ option_no_auto_litpools, ++ option_auto_litpool_limit, + }; + + const char *md_shortopts = ""; +@@ -773,6 +803,10 @@ struct option md_longopts[] = + { "trampolines", no_argument, NULL, option_trampolines }, + { "no-trampolines", no_argument, NULL, option_no_trampolines }, + ++ { "auto-litpools", no_argument, NULL, option_auto_litpools }, ++ { "no-auto-litpools", no_argument, NULL, option_no_auto_litpools }, ++ { "auto-litpool-limit", required_argument, NULL, option_auto_litpool_limit }, ++ + { NULL, no_argument, NULL, 0 } + }; + +@@ -961,6 +995,34 @@ md_parse_option (int c, char *arg) + use_trampolines = FALSE; + return 1; + ++ case option_auto_litpools: ++ auto_litpools = TRUE; ++ use_literal_section = FALSE; ++ return 1; ++ ++ case option_no_auto_litpools: ++ auto_litpools = FALSE; ++ auto_litpool_limit = -1; ++ return 1; ++ ++ case option_auto_litpool_limit: ++ { ++ int value = 0; ++ if (auto_litpool_limit < 0) ++ as_fatal (_("no-auto-litpools is incompatible with auto-litpool-limit")); ++ if (*arg == 0 || *arg == '-') ++ as_fatal (_("invalid auto-litpool-limit argument")); ++ value = strtol (arg, &arg, 10); ++ if (*arg != 0) ++ as_fatal (_("invalid auto-litpool-limit argument")); ++ if (value < 100 || value > 10000) ++ as_fatal (_("invalid auto-litpool-limit argument (range is 100-10000)")); ++ auto_litpool_limit = value; ++ auto_litpools = TRUE; ++ use_literal_section = FALSE; ++ return 1; ++ } ++ + default: + return 0; + } +@@ -986,7 +1048,12 @@ Xtensa options:\n\ + flix bundles\n\ + --rename-section old=new Rename section 'old' to 'new'\n\ + --[no-]trampolines [Do not] generate trampolines (jumps to jumps)\n\ +- when jumps do not reach their targets\n", stream); ++ when jumps do not reach their targets\n\ ++ --[no-]auto-litpools [Do not] automatically create literal pools\n\ ++ --auto-litpool-limit=\n\ ++ (range 100-10000) Maximum number of blocks of\n\ ++ instructions to emit between literal pool\n\ ++ locations; implies --auto-litpools flag\n", stream); + } + + +@@ -4728,6 +4795,8 @@ xtensa_mark_literal_pool_location (void) + pool_location = frag_now; + frag_now->tc_frag_data.lit_frchain = frchain_now; + frag_now->tc_frag_data.literal_frag = frag_now; ++ /* Just record this frag. */ ++ xtensa_maybe_create_literal_pool_frag (FALSE, FALSE); + frag_variant (rs_machine_dependent, 0, 0, + RELAX_LITERAL_POOL_BEGIN, NULL, 0, NULL); + xtensa_set_frag_assembly_state (frag_now); +@@ -4832,6 +4901,31 @@ get_expanded_loop_offset (xtensa_opcode opcode) + static fragS * + get_literal_pool_location (segT seg) + { ++ struct litpool_seg *lps = litpool_seg_list.next; ++ struct litpool_frag *lpf; ++ for ( ; lps && lps->seg->id != seg->id; lps = lps->next) ++ ; ++ if (lps) ++ { ++ for (lpf = lps->frag_list.prev; lpf->fragP; lpf = lpf->prev) ++ { /* Skip "candidates" for now. */ ++ if (lpf->fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN && ++ lpf->priority == 1) ++ return lpf->fragP; ++ } ++ /* Must convert a lower-priority pool. */ ++ for (lpf = lps->frag_list.prev; lpf->fragP; lpf = lpf->prev) ++ { ++ if (lpf->fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN) ++ return lpf->fragP; ++ } ++ /* Still no match -- try for a low priority pool. */ ++ for (lpf = lps->frag_list.prev; lpf->fragP; lpf = lpf->prev) ++ { ++ if (lpf->fragP->fr_subtype == RELAX_LITERAL_POOL_CANDIDATE_BEGIN) ++ return lpf->fragP; ++ } ++ } + return seg_info (seg)->tc_segment_info_data.literal_pool_loc; + } + +@@ -7098,6 +7192,11 @@ xg_assemble_vliw_tokens (vliw_insn *vinsn) + frag_now->tc_frag_data.slot_symbols[slot] = tinsn->symbol; + frag_now->tc_frag_data.slot_offsets[slot] = tinsn->offset; + frag_now->tc_frag_data.literal_frags[slot] = tinsn->literal_frag; ++ if (tinsn->opcode == xtensa_l32r_opcode) ++ { ++ frag_now->tc_frag_data.literal_frags[slot] = ++ tinsn->tok[1].X_add_symbol->sy_frag; ++ } + if (tinsn->literal_space != 0) + xg_assemble_literal_space (tinsn->literal_space, slot); + frag_now->tc_frag_data.free_reg[slot] = tinsn->extra_arg; +@@ -7170,6 +7269,8 @@ xg_assemble_vliw_tokens (vliw_insn *vinsn) + frag_now->fr_symbol, frag_now->fr_offset, NULL); + xtensa_set_frag_assembly_state (frag_now); + xtensa_maybe_create_trampoline_frag (); ++ /* Always create one here. */ ++ xtensa_maybe_create_literal_pool_frag (TRUE, FALSE); + } + else if (is_branch && do_align_targets ()) + { +@@ -7314,11 +7415,18 @@ xtensa_check_frag_count (void) + clear_frag_count (); + unreachable_count = 0; + } ++ ++ /* We create an area for a possible literal pool every N (default 5000) ++ frags or so. */ ++ xtensa_maybe_create_literal_pool_frag (TRUE, TRUE); + } + + static xtensa_insnbuf trampoline_buf = NULL; + static xtensa_insnbuf trampoline_slotbuf = NULL; + ++static xtensa_insnbuf litpool_buf = NULL; ++static xtensa_insnbuf litpool_slotbuf = NULL; ++ + #define TRAMPOLINE_FRAG_SIZE 3000 + + static void +@@ -7410,6 +7518,135 @@ dump_trampolines (void) + } + } + ++static void dump_litpools (void) __attribute__ ((unused)); ++ ++static void ++dump_litpools (void) ++{ ++ struct litpool_seg *lps = litpool_seg_list.next; ++ struct litpool_frag *lpf; ++ ++ for ( ; lps ; lps = lps->next ) ++ { ++ printf("litpool seg %s\n", lps->seg->name); ++ for ( lpf = lps->frag_list.next; lpf->fragP; lpf = lpf->next ) ++ { ++ fragS *litfrag = lpf->fragP->fr_next; ++ int count = 0; ++ while (litfrag && litfrag->fr_subtype != RELAX_LITERAL_POOL_END) ++ { ++ if (litfrag->fr_fix == 4) ++ count++; ++ litfrag = litfrag->fr_next; ++ } ++ printf(" %ld <%d:%d> (%d) [%d]: ", ++ lpf->addr, lpf->priority, lpf->original_priority, ++ lpf->fragP->fr_line, count); ++ //dump_frag(lpf->fragP); ++ } ++ } ++} ++ ++static void ++xtensa_maybe_create_literal_pool_frag (bfd_boolean create, ++ bfd_boolean only_if_needed) ++{ ++ struct litpool_seg *lps = litpool_seg_list.next; ++ fragS *fragP; ++ struct litpool_frag *lpf; ++ bfd_boolean needed = FALSE; ++ ++ if (use_literal_section || !auto_litpools) ++ return; ++ ++ for ( ; lps ; lps = lps->next ) ++ { ++ if (lps->seg == now_seg) ++ break; ++ } ++ ++ if (lps == NULL) ++ { ++ lps = (struct litpool_seg *)xcalloc (sizeof (struct litpool_seg), 1); ++ lps->next = litpool_seg_list.next; ++ litpool_seg_list.next = lps; ++ lps->seg = now_seg; ++ lps->frag_list.next = &lps->frag_list; ++ lps->frag_list.prev = &lps->frag_list; ++ } ++ ++ lps->frag_count++; ++ ++ if (create) ++ { ++ if (only_if_needed) ++ { ++ if (past_xtensa_end || !use_transform() || ++ frag_now->tc_frag_data.is_no_transform) ++ { ++ return; ++ } ++ if (auto_litpool_limit <= 0) ++ { ++ /* Don't create a litpool based only on frag count. */ ++ return; ++ } ++ else if (lps->frag_count > auto_litpool_limit) ++ { ++ needed = TRUE; ++ } ++ else ++ { ++ return; ++ } ++ } ++ else ++ { ++ needed = TRUE; ++ } ++ } ++ ++ if (needed) ++ { ++ int size = (only_if_needed) ? 3 : 0; /* Space for a "j" insn. */ ++ /* Create a potential site for a literal pool. */ ++ frag_wane (frag_now); ++ frag_new (0); ++ xtensa_set_frag_assembly_state (frag_now); ++ fragP = frag_now; ++ fragP->tc_frag_data.lit_frchain = frchain_now; ++ fragP->tc_frag_data.literal_frag = fragP; ++ frag_var (rs_machine_dependent, size, size, ++ (only_if_needed) ? ++ RELAX_LITERAL_POOL_CANDIDATE_BEGIN : ++ RELAX_LITERAL_POOL_BEGIN, ++ NULL, 0, NULL); ++ frag_now->tc_frag_data.lit_seg = now_seg; ++ frag_variant (rs_machine_dependent, 0, 0, ++ RELAX_LITERAL_POOL_END, NULL, 0, NULL); ++ xtensa_set_frag_assembly_state (frag_now); ++ } ++ else ++ { ++ /* RELAX_LITERAL_POOL_BEGIN frag is being created; ++ just record it here. */ ++ fragP = frag_now; ++ } ++ ++ lpf = (struct litpool_frag *)xmalloc(sizeof (struct litpool_frag)); ++ /* Insert at tail of circular list. */ ++ lpf->addr = 0; ++ lps->frag_list.prev->next = lpf; ++ lpf->next = &lps->frag_list; ++ lpf->prev = lps->frag_list.prev; ++ lps->frag_list.prev = lpf; ++ lpf->fragP = fragP; ++ lpf->priority = (needed) ? (only_if_needed) ? 3 : 2 : 1; ++ lpf->original_priority = lpf->priority; ++ ++ lps->frag_count = 0; ++} ++ + static void + xtensa_cleanup_align_frags (void) + { +@@ -9029,7 +9266,41 @@ xtensa_relax_frag (fragS *fragP, long stretch, int *stretched_p) + break; + + case RELAX_LITERAL_POOL_BEGIN: ++ if (fragP->fr_var != 0) ++ { ++ /* We have a converted "candidate" literal pool; ++ assemble a jump around it. */ ++ TInsn insn; ++ if (!litpool_slotbuf) ++ { ++ litpool_buf = xtensa_insnbuf_alloc (isa); ++ litpool_slotbuf = xtensa_insnbuf_alloc (isa); ++ } ++ new_stretch += 3; ++ fragP->tc_frag_data.relax_seen = FALSE; /* Need another pass. */ ++ fragP->tc_frag_data.is_insn = TRUE; ++ tinsn_init (&insn); ++ insn.insn_type = ITYPE_INSN; ++ insn.opcode = xtensa_j_opcode; ++ insn.ntok = 1; ++ set_expr_symbol_offset (&insn.tok[0], fragP->fr_symbol, ++ fragP->fr_fix); ++ fmt = xg_get_single_format (xtensa_j_opcode); ++ tinsn_to_slotbuf (fmt, 0, &insn, litpool_slotbuf); ++ xtensa_format_set_slot (isa, fmt, 0, litpool_buf, litpool_slotbuf); ++ xtensa_insnbuf_to_chars (isa, litpool_buf, ++ (unsigned char *)fragP->fr_literal + ++ fragP->fr_fix, 3); ++ fragP->fr_fix += 3; ++ fragP->fr_var -= 3; ++ /* Add a fix-up. */ ++ fix_new (fragP, 0, 3, fragP->fr_symbol, 0, TRUE, ++ BFD_RELOC_XTENSA_SLOT0_OP); ++ } ++ break; ++ + case RELAX_LITERAL_POOL_END: ++ case RELAX_LITERAL_POOL_CANDIDATE_BEGIN: + case RELAX_MAYBE_UNREACHABLE: + case RELAX_MAYBE_DESIRE_ALIGN: + /* No relaxation required. */ +@@ -10789,12 +11060,115 @@ xtensa_move_literals (void) + segT dest_seg; + fixS *fix, *next_fix, **fix_splice; + sym_list *lit; ++ struct litpool_seg *lps; + + mark_literal_frags (literal_head->next); + + if (use_literal_section) + return; + ++ /* Assign addresses (rough estimates) to the potential literal pool locations ++ and create new ones if the gaps are too large. */ ++ ++ for (lps = litpool_seg_list.next; lps; lps = lps->next) ++ { ++ frchainS *frchP = seg_info (lps->seg)->frchainP; ++ struct litpool_frag *lpf = lps->frag_list.next; ++ addressT addr = 0; ++ ++ for ( ; frchP; frchP = frchP->frch_next) ++ { ++ fragS *fragP; ++ for (fragP = frchP->frch_root; fragP; fragP = fragP->fr_next) ++ { ++ if (lpf && fragP == lpf->fragP) ++ { ++ gas_assert(fragP->fr_type == rs_machine_dependent && ++ (fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN || ++ fragP->fr_subtype == RELAX_LITERAL_POOL_CANDIDATE_BEGIN)); ++ /* Found a litpool location. */ ++ lpf->addr = addr; ++ lpf = lpf->next; ++ } ++ if (fragP->fr_type == rs_machine_dependent && ++ fragP->fr_subtype == RELAX_SLOTS) ++ { ++ int slot; ++ for (slot = 0; slot < MAX_SLOTS; slot++) ++ { ++ if (fragP->tc_frag_data.literal_frags[slot]) ++ { ++ /* L32R; point its literal to the nearest litpool ++ preferring non-"candidate" positions to avoid ++ the jump-around. */ ++ fragS *litfrag = fragP->tc_frag_data.literal_frags[slot]; ++ struct litpool_frag *lp = lpf->prev; ++ if (!lp->fragP) ++ { ++ break; ++ } ++ while (lp->fragP->fr_subtype == ++ RELAX_LITERAL_POOL_CANDIDATE_BEGIN) ++ { ++ lp = lp->prev; ++ if (lp->fragP == NULL) ++ { ++ /* End of list; have to bite the bullet. ++ Take the nearest. */ ++ lp = lpf->prev; ++ break; ++ } ++ /* Does it (conservatively) reach? */ ++ if (addr - lp->addr <= 128 * 1024) ++ { ++ if (lp->fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN) ++ { ++ /* Found a good one. */ ++ break; ++ } ++ else if (lp->prev->fragP && ++ addr - lp->prev->addr > 128 * 1024) ++ { ++ /* This is still a "candidate" but the next one ++ will be too far away, so revert to the nearest ++ one, convert it and add the jump around. */ ++ fragS *poolbeg; ++ fragS *poolend; ++ symbolS *lsym; ++ char label[10 + 2 * sizeof (fragS *)]; ++ lp = lpf->prev; ++ poolbeg = lp->fragP; ++ lp->priority = 1; ++ poolbeg->fr_subtype = RELAX_LITERAL_POOL_BEGIN; ++ poolend = poolbeg->fr_next; ++ gas_assert (poolend->fr_type == rs_machine_dependent && ++ poolend->fr_subtype == RELAX_LITERAL_POOL_END); ++ /* Create a local symbol pointing to the ++ end of the pool. */ ++ sprintf (label, ".L0_LT_%p", poolbeg); ++ lsym = (symbolS *)local_symbol_make (label, lps->seg, ++ 0, poolend); ++ poolbeg->fr_symbol = lsym; ++ /* Rest is done in xtensa_relax_frag. */ ++ } ++ } ++ } ++ if (! litfrag->tc_frag_data.literal_frag) ++ { ++ /* Take earliest use of this literal to avoid ++ forward refs. */ ++ litfrag->tc_frag_data.literal_frag = lp->fragP; ++ } ++ } ++ } ++ } ++ addr += fragP->fr_fix; ++ if (fragP->fr_type == rs_fill) ++ addr += fragP->fr_offset; ++ } ++ } ++ } ++ + for (segment = literal_head->next; segment; segment = segment->next) + { + /* Keep the literals for .init and .fini in separate sections. */ +@@ -10839,9 +11213,6 @@ xtensa_move_literals (void) + while (search_frag != frag_now) + { + next_frag = search_frag->fr_next; +- +- /* First, move the frag out of the literal section and +- to the appropriate place. */ + if (search_frag->tc_frag_data.literal_frag) + { + literal_pool = search_frag->tc_frag_data.literal_frag; +@@ -10849,8 +11220,56 @@ xtensa_move_literals (void) + frchain_to = literal_pool->tc_frag_data.lit_frchain; + gas_assert (frchain_to); + } ++ ++ if (search_frag->fr_type == rs_fill && search_frag->fr_fix == 0) ++ { ++ /* Skip empty fill frags. */ ++ *frag_splice = next_frag; ++ search_frag = next_frag; ++ continue; ++ } ++ ++ if (search_frag->fr_type == rs_align) ++ { ++ /* Skip alignment frags, because the pool as a whole will be ++ aligned if used, and we don't want to force alignment if the ++ pool is unused. */ ++ *frag_splice = next_frag; ++ search_frag = next_frag; ++ continue; ++ } ++ ++ /* First, move the frag out of the literal section and ++ to the appropriate place. */ ++ ++ /* Insert an aligmnent frag at start of pool. */ ++ if (literal_pool->fr_next->fr_type == rs_machine_dependent && ++ literal_pool->fr_next->fr_subtype == RELAX_LITERAL_POOL_END) ++ { ++ segT pool_seg = literal_pool->fr_next->tc_frag_data.lit_seg; ++ emit_state prev_state; ++ fragS *prev_frag; ++ fragS *align_frag; ++ xtensa_switch_section_emit_state (&prev_state, pool_seg, 0); ++ prev_frag = frag_now; ++ frag_variant (rs_fill, 0, 0, 0, NULL, 0, NULL); ++ align_frag = frag_now; ++ frag_align (2, 0, 0); ++ /* Splice it into the right place. */ ++ prev_frag->fr_next = align_frag->fr_next; ++ align_frag->fr_next = literal_pool->fr_next; ++ literal_pool->fr_next = align_frag; ++ /* Insert after this one. */ ++ literal_pool->tc_frag_data.literal_frag = align_frag; ++ xtensa_restore_emit_state (&prev_state); ++ } + insert_after = literal_pool->tc_frag_data.literal_frag; + dest_seg = insert_after->fr_next->tc_frag_data.lit_seg; ++ /* Skip align frag. */ ++ if (insert_after->fr_next->fr_type == rs_align) ++ { ++ insert_after = insert_after->fr_next; ++ } + + *frag_splice = next_frag; + search_frag->fr_next = insert_after->fr_next; +@@ -11014,7 +11433,10 @@ xtensa_switch_to_non_abs_literal_fragment (emit_state *result) + && !recursive + && !is_init && ! is_fini) + { +- as_bad (_("literal pool location required for text-section-literals; specify with .literal_position")); ++ if (!auto_litpools) ++ { ++ as_bad (_("literal pool location required for text-section-literals; specify with .literal_position")); ++ } + + /* When we mark a literal pool location, we want to put a frag in + the literal pool that points to it. But to do that, we want to +diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h +index b2e43fa..290d902 100644 +--- a/gas/config/tc-xtensa.h ++++ b/gas/config/tc-xtensa.h +@@ -124,6 +124,7 @@ enum xtensa_relax_statesE + + RELAX_LITERAL_POOL_BEGIN, + RELAX_LITERAL_POOL_END, ++ RELAX_LITERAL_POOL_CANDIDATE_BEGIN, + /* Technically these are not relaxations at all but mark a location + to store literals later. Note that fr_var stores the frchain for + BEGIN frags and fr_var stores now_seg for END frags. */ +diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp +index d197ec8..db39629 100644 +--- a/gas/testsuite/gas/xtensa/all.exp ++++ b/gas/testsuite/gas/xtensa/all.exp +@@ -100,5 +100,6 @@ if [istarget xtensa*-*-*] then { + run_dump_test "jlong" + run_dump_test "trampoline" ++ run_dump_test "auto-litpools" + } + + if [info exists errorInfo] then { +diff --git a/gas/testsuite/gas/xtensa/auto-litpools.d b/gas/testsuite/gas/xtensa/auto-litpools.d +new file mode 100644 +index 0000000..4d1a690 +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/auto-litpools.d +@@ -0,0 +1,12 @@ ++#as: --auto-litpools ++#objdump: -d ++#name: auto literal pool placement ++ ++.*: +file format .*xtensa.* ++#... ++.*4:.*l32r.a2, 0 .* ++#... ++.*3e437:.*j.3e440 .* ++#... ++.*40750:.*l32r.a2, 3e43c .* ++#... +diff --git a/gas/testsuite/gas/xtensa/auto-litpools.s b/gas/testsuite/gas/xtensa/auto-litpools.s +new file mode 100644 +index 0000000..9a5b26b +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/auto-litpools.s +@@ -0,0 +1,13 @@ ++ .text ++ .align 4 ++ .literal .L0, 0x12345 ++ .literal .L1, 0x12345 ++ ++f: ++ l32r a2, .L0 ++ .rep 44000 ++ _nop ++ _nop ++ .endr ++ l32r a2, .L1 ++ ret +-- +1.8.1.4 + diff --git a/package/binutils/2.24/914-xtensa-fix-signedness-of-gas-relocations.patch b/package/binutils/2.24/914-xtensa-fix-signedness-of-gas-relocations.patch new file mode 100644 index 00000000000..bd751661b83 --- /dev/null +++ b/package/binutils/2.24/914-xtensa-fix-signedness-of-gas-relocations.patch @@ -0,0 +1,99 @@ +From 6c7c5c477ef9ccf2d2548cf2ac3cec9bd3c9c5b6 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Tue, 2 Feb 2016 17:11:38 +0300 +Subject: [PATCH] xtensa: fix signedness of gas relocations + +Change 1058c7532d0b "Use signed data type for R_XTENSA_DIFF* relocation +offsets." changed signedness of BFD_RELOC_XTENSA_DIFF* relocations +substituted for BFD_RELOC_*. This made it impossible to encode arbitrary +8-, 16- and 32-bit values, which broke e.g. debug info encoding by .loc +directive. Revert this part and add test. + +gas/ +2016-02-03 Max Filippov + * config/tc-xtensa.c (md_apply_fix): Mark BFD_RELOC_XTENSA_DIFF* + substitutions for BFD_RELOC_* as unsigned. + +gas/testsuite/ +2016-02-03 Max Filippov + * gas/xtensa/all.exp: Add loc to list of xtensa tests. + * gas/xtensa/loc.d: New file: loc test result patterns. + * gas/xtensa/loc.s: New file: loc test. + +Signed-off-by: Max Filippov +--- + gas/config/tc-xtensa.c | 6 +++--- + gas/testsuite/gas/xtensa/all.exp | 1 + + gas/testsuite/gas/xtensa/loc.d | 10 ++++++++++ + gas/testsuite/gas/xtensa/loc.s | 7 +++++++ + 4 files changed, 21 insertions(+), 3 deletions(-) + create mode 100644 gas/testsuite/gas/xtensa/loc.d + create mode 100644 gas/testsuite/gas/xtensa/loc.s + +diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c +index a119871..36a06cc 100644 +--- a/gas/config/tc-xtensa.c ++++ b/gas/config/tc-xtensa.c +@@ -5961,15 +5961,15 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) + { + case BFD_RELOC_8: + fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF8; +- fixP->fx_signed = 1; ++ fixP->fx_signed = 0; + break; + case BFD_RELOC_16: + fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF16; +- fixP->fx_signed = 1; ++ fixP->fx_signed = 0; + break; + case BFD_RELOC_32: + fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF32; +- fixP->fx_signed = 1; ++ fixP->fx_signed = 0; + break; + default: + break; +diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp +index 31b725b..7ff7bd7 100644 +--- a/gas/testsuite/gas/xtensa/all.exp ++++ b/gas/testsuite/gas/xtensa/all.exp +@@ -101,6 +101,7 @@ if [istarget xtensa*-*-*] then { + run_dump_test "trampoline" + run_dump_test "first_frag_align" + run_dump_test "auto-litpools" ++ run_dump_test "loc" + } + + if [info exists errorInfo] then { +diff --git a/gas/testsuite/gas/xtensa/loc.d b/gas/testsuite/gas/xtensa/loc.d +new file mode 100644 +index 0000000..71983cc +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/loc.d +@@ -0,0 +1,10 @@ ++#as: ++#objdump: -r ++#name: .loc directive relocs ++ ++.*: +file format .*xtensa.* ++ ++RELOCATION RECORDS FOR \[\.debug_line\]: ++#... ++.*R_XTENSA_DIFF16.*\.text\+0x00009c42 ++#... +diff --git a/gas/testsuite/gas/xtensa/loc.s b/gas/testsuite/gas/xtensa/loc.s +new file mode 100644 +index 0000000..029e14e +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/loc.s +@@ -0,0 +1,7 @@ ++ .text ++ .file 1 "loc.s" ++ .loc 1 3 ++ nop ++ .space 40000 ++ .loc 1 5 ++ nop +-- +2.1.4 + diff --git a/package/binutils/2.24/915-xtensa-fix-.init-.fini-literals-moving.patch b/package/binutils/2.24/915-xtensa-fix-.init-.fini-literals-moving.patch new file mode 100644 index 00000000000..ead3e42b752 --- /dev/null +++ b/package/binutils/2.24/915-xtensa-fix-.init-.fini-literals-moving.patch @@ -0,0 +1,149 @@ +From 7db2accc3fdea0aaa0c3a76a413d8e8030e022c3 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Tue, 16 Feb 2016 02:23:28 +0300 +Subject: [PATCH] xtensa: fix .init/.fini literals moving + +Despite the documentation and the comment in xtensa_move_literals, in +the presence of --text-section-literals and --auto-litpools literals are +moved from the separate literal sections into .init and .fini, because +the check in the xtensa_move_literals is incorrect. + +This moving was broken with introduction of auto litpools: some literals +now may be lost. This happens because literal frags emitted from .init +and .fini are not closed when new .literal_position marks new literal +pool. Then frag_align(2, 0, 0) changes type of the last literal frag to +rs_align. rs_align frags are skipped in the xtensa_move_literals. As a +result fixups against such literals are not moved out of .init.literal/ +.fini.literal sections producing the following assembler error: + + test.S: Warning: fixes not all moved from .init.literal + test.S: Internal error! + +Fix check for .init.literal/.fini.literal in the xtensa_move_literals +and don't let it move literals from there in the presence of +--text-section-literals or --auto-litpools. + +2016-02-17 Max Filippov +gas/ + * config/tc-xtensa.c (xtensa_move_literals): Fix check for + .init.literal/.fini.literal section name. + * testsuite/gas/xtensa/all.exp: Add init-fini-literals to the + list of xtensa tests. + * testsuite/gas/xtensa/init-fini-literals.d: New file: + init-fini-literals test result patterns. + * testsuite/gas/xtensa/init-fini-literals.s: New file: + init-fini-literals test. + +Signed-off-by: Max Filippov +--- +Backported from: 4111950f363221c4641dc2f33bea61cc94f34906 + + gas/config/tc-xtensa.c | 12 ++++++++++-- + gas/testsuite/gas/xtensa/all.exp | 1 + + gas/testsuite/gas/xtensa/init-fini-literals.d | 24 ++++++++++++++++++++++++ + gas/testsuite/gas/xtensa/init-fini-literals.s | 19 +++++++++++++++++++ + 4 files changed, 54 insertions(+), 2 deletions(-) + create mode 100644 gas/testsuite/gas/xtensa/init-fini-literals.d + create mode 100644 gas/testsuite/gas/xtensa/init-fini-literals.s + +diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c +index 36a06cc..5773634 100644 +--- a/gas/config/tc-xtensa.c ++++ b/gas/config/tc-xtensa.c +@@ -11061,6 +11061,10 @@ xtensa_move_literals (void) + fixS *fix, *next_fix, **fix_splice; + sym_list *lit; + struct litpool_seg *lps; ++ const char *init_name = INIT_SECTION_NAME; ++ const char *fini_name = FINI_SECTION_NAME; ++ int init_name_len = strlen(init_name); ++ int fini_name_len = strlen(fini_name); + + mark_literal_frags (literal_head->next); + +@@ -11171,9 +11175,13 @@ xtensa_move_literals (void) + + for (segment = literal_head->next; segment; segment = segment->next) + { ++ const char *seg_name = segment_name (segment->seg); ++ + /* Keep the literals for .init and .fini in separate sections. */ +- if (!strcmp (segment_name (segment->seg), INIT_SECTION_NAME) +- || !strcmp (segment_name (segment->seg), FINI_SECTION_NAME)) ++ if ((!memcmp (seg_name, init_name, init_name_len) && ++ !strcmp (seg_name + init_name_len, ".literal")) || ++ (!memcmp (seg_name, fini_name, fini_name_len) && ++ !strcmp (seg_name + fini_name_len, ".literal"))) + continue; + + frchain_from = seg_info (segment->seg)->frchainP; +diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp +index 7ff7bd7..6b67320 100644 +--- a/gas/testsuite/gas/xtensa/all.exp ++++ b/gas/testsuite/gas/xtensa/all.exp +@@ -102,6 +102,7 @@ if [istarget xtensa*-*-*] then { + run_dump_test "first_frag_align" + run_dump_test "auto-litpools" + run_dump_test "loc" ++ run_dump_test "init-fini-literals" + } + + if [info exists errorInfo] then { +diff --git a/gas/testsuite/gas/xtensa/init-fini-literals.d b/gas/testsuite/gas/xtensa/init-fini-literals.d +new file mode 100644 +index 0000000..19ed121 +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/init-fini-literals.d +@@ -0,0 +1,24 @@ ++#as: --text-section-literals ++#objdump: -r ++#name: check that literals for .init and .fini always go to separate sections ++ ++.*: +file format .*xtensa.* ++#... ++RELOCATION RECORDS FOR \[\.init\.literal\]: ++#... ++00000000 R_XTENSA_PLT init ++#... ++RELOCATION RECORDS FOR \[\.fini\.literal\]: ++#... ++00000000 R_XTENSA_PLT fini ++#... ++RELOCATION RECORDS FOR \[\.init\]: ++#... ++.* R_XTENSA_SLOT0_OP \.init\.literal ++.* R_XTENSA_SLOT0_OP \.init\.literal\+0x00000004 ++#... ++RELOCATION RECORDS FOR \[\.fini\]: ++#... ++.* R_XTENSA_SLOT0_OP \.fini\.literal ++.* R_XTENSA_SLOT0_OP \.fini\.literal\+0x00000004 ++#... +diff --git a/gas/testsuite/gas/xtensa/init-fini-literals.s b/gas/testsuite/gas/xtensa/init-fini-literals.s +new file mode 100644 +index 0000000..7c9ec17 +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/init-fini-literals.s +@@ -0,0 +1,19 @@ ++ .section .init,"ax",@progbits ++ .literal_position ++ .literal .LC0, init@PLT ++ .literal_position ++ .literal .LC1, 1 ++ .align 4 ++ ++ l32r a2, .LC0 ++ l32r a2, .LC1 ++ ++ .section .fini,"ax",@progbits ++ .literal_position ++ .literal .LC2, fini@PLT ++ .literal_position ++ .literal .LC3, 1 ++ .align 4 ++ ++ l32r a2, .LC2 ++ l32r a2, .LC3 +-- +2.1.4 + diff --git a/package/binutils/2.25.1/913-xtensa-add-auto-litpools-option.patch b/package/binutils/2.25.1/913-xtensa-add-auto-litpools-option.patch new file mode 100644 index 00000000000..3ed9af12838 --- /dev/null +++ b/package/binutils/2.25.1/913-xtensa-add-auto-litpools-option.patch @@ -0,0 +1,699 @@ +From 978adaaa4cd3921842e2be8a31c05f081fb17fcf Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Wed, 29 Jul 2015 17:42:54 +0300 +Subject: [PATCH] xtensa: add --auto-litpools option + +Auto-litpools is the automated version of text-section-literals: literal +pool candidate frags are planted every N frags and during relaxation +they are turned into actual literal pools where literals are moved to +become reachable for their first reference by L32R instruction. + +2015-08-12 David Weatherford +gas/ + * config/tc-xtensa.c (struct litpool_frag, struct litpool_seg): + New structures. + (xtensa_maybe_create_literal_pool_frag): New function. + (litpool_seg_list, auto_litpools, auto_litpool_limit) + (litpool_buf, litpool_slotbuf): New static variables. + (option_auto_litpools, option_no_auto_litpools) + (option_auto_litpool_limit): New enum identifiers. + (md_longopts): Add entries for auto-litpools, no-auto-litpools + and auto-litpool-limit. + (md_parse_option): Handle option_auto_litpools, + option_no_auto_litpools and option_auto_litpool_limit. + (md_show_usage): Add help for --[no-]auto-litpools and + --auto-litpool-limit. + (xtensa_mark_literal_pool_location): Record a place for literal + pool with a call to xtensa_maybe_create_literal_pool_frag. + (get_literal_pool_location): Find highest priority literal pool + or convert candidate to literal pool when auto-litpools are used. + (xg_assemble_vliw_tokens): Create literal pool after jump + instruction. + (xtensa_check_frag_count): Create candidate literal pool every + auto_litpool_limit frags. + (xtensa_relax_frag): Add jump around literals to non-empty + literal pool. + (xtensa_move_literals): Estimate literal pool addresses and move + unreachable literals closer to their users, converting candidate + to literal pool if needed. + (xtensa_switch_to_non_abs_literal_fragment): Only emit error + about missing .literal_position in case auto-litpools are not + used. + * config/tc-xtensa.h (xtensa_relax_statesE): New relaxation + state: RELAX_LITERAL_POOL_CANDIDATE_BEGIN. + +2015-08-12 Max Filippov +gas/testsuite/ + * gas/xtensa/all.exp: Add auto-litpools to the list of xtensa + tests. + * gas/xtensa/auto-litpools.s: New file: auto-litpools test. + * gas/xtensa/auto-litpools.s: New file: auto-litpools test + result pattern. + +Signed-off-by: Max Filippov +--- +Backported from: b46824bd49648c575372e6d9bc6a6defeabd6ed5 +Changes to ChangeLogs and documentation are dropped. + + gas/config/tc-xtensa.c | 432 ++++++++++++++++++++++++++++++- + gas/config/tc-xtensa.h | 1 + + gas/testsuite/gas/xtensa/all.exp | 1 + + gas/testsuite/gas/xtensa/auto-litpools.d | 12 + + gas/testsuite/gas/xtensa/auto-litpools.s | 13 + + 5 files changed, 454 insertions(+), 5 deletions(-) + create mode 100644 gas/testsuite/gas/xtensa/auto-litpools.d + create mode 100644 gas/testsuite/gas/xtensa/auto-litpools.s + +diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c +index 7311a05..b8b1e7d 100644 +--- a/gas/config/tc-xtensa.c ++++ b/gas/config/tc-xtensa.c +@@ -440,6 +440,29 @@ bfd_boolean directive_state[] = + #endif + }; + ++/* A circular list of all potential and actual literal pool locations ++ in a segment. */ ++struct litpool_frag ++{ ++ struct litpool_frag *next; ++ struct litpool_frag *prev; ++ fragS *fragP; ++ addressT addr; ++ short priority; /* 1, 2, or 3 -- 1 is highest */ ++ short original_priority; ++}; ++ ++/* Map a segment to its litpool_frag list. */ ++struct litpool_seg ++{ ++ struct litpool_seg *next; ++ asection *seg; ++ struct litpool_frag frag_list; ++ int frag_count; /* since last litpool location */ ++}; ++ ++static struct litpool_seg litpool_seg_list; ++ + + /* Directive functions. */ + +@@ -474,6 +497,9 @@ static void xtensa_create_trampoline_frag (bfd_boolean); + static void xtensa_maybe_create_trampoline_frag (void); + struct trampoline_frag; + static int init_trampoline_frag (struct trampoline_frag *); ++static void xtensa_maybe_create_literal_pool_frag (bfd_boolean, bfd_boolean); ++static bfd_boolean auto_litpools = FALSE; ++static int auto_litpool_limit = 10000; + + /* Alignment Functions. */ + +@@ -698,6 +724,10 @@ enum + + option_trampolines, + option_no_trampolines, ++ ++ option_auto_litpools, ++ option_no_auto_litpools, ++ option_auto_litpool_limit, + }; + + const char *md_shortopts = ""; +@@ -773,6 +803,10 @@ struct option md_longopts[] = + { "trampolines", no_argument, NULL, option_trampolines }, + { "no-trampolines", no_argument, NULL, option_no_trampolines }, + ++ { "auto-litpools", no_argument, NULL, option_auto_litpools }, ++ { "no-auto-litpools", no_argument, NULL, option_no_auto_litpools }, ++ { "auto-litpool-limit", required_argument, NULL, option_auto_litpool_limit }, ++ + { NULL, no_argument, NULL, 0 } + }; + +@@ -961,6 +995,34 @@ md_parse_option (int c, char *arg) + use_trampolines = FALSE; + return 1; + ++ case option_auto_litpools: ++ auto_litpools = TRUE; ++ use_literal_section = FALSE; ++ return 1; ++ ++ case option_no_auto_litpools: ++ auto_litpools = FALSE; ++ auto_litpool_limit = -1; ++ return 1; ++ ++ case option_auto_litpool_limit: ++ { ++ int value = 0; ++ if (auto_litpool_limit < 0) ++ as_fatal (_("no-auto-litpools is incompatible with auto-litpool-limit")); ++ if (*arg == 0 || *arg == '-') ++ as_fatal (_("invalid auto-litpool-limit argument")); ++ value = strtol (arg, &arg, 10); ++ if (*arg != 0) ++ as_fatal (_("invalid auto-litpool-limit argument")); ++ if (value < 100 || value > 10000) ++ as_fatal (_("invalid auto-litpool-limit argument (range is 100-10000)")); ++ auto_litpool_limit = value; ++ auto_litpools = TRUE; ++ use_literal_section = FALSE; ++ return 1; ++ } ++ + default: + return 0; + } +@@ -986,7 +1048,12 @@ Xtensa options:\n\ + flix bundles\n\ + --rename-section old=new Rename section 'old' to 'new'\n\ + --[no-]trampolines [Do not] generate trampolines (jumps to jumps)\n\ +- when jumps do not reach their targets\n", stream); ++ when jumps do not reach their targets\n\ ++ --[no-]auto-litpools [Do not] automatically create literal pools\n\ ++ --auto-litpool-limit=\n\ ++ (range 100-10000) Maximum number of blocks of\n\ ++ instructions to emit between literal pool\n\ ++ locations; implies --auto-litpools flag\n", stream); + } + + +@@ -4728,6 +4795,8 @@ xtensa_mark_literal_pool_location (void) + pool_location = frag_now; + frag_now->tc_frag_data.lit_frchain = frchain_now; + frag_now->tc_frag_data.literal_frag = frag_now; ++ /* Just record this frag. */ ++ xtensa_maybe_create_literal_pool_frag (FALSE, FALSE); + frag_variant (rs_machine_dependent, 0, 0, + RELAX_LITERAL_POOL_BEGIN, NULL, 0, NULL); + xtensa_set_frag_assembly_state (frag_now); +@@ -4832,6 +4901,31 @@ get_expanded_loop_offset (xtensa_opcode opcode) + static fragS * + get_literal_pool_location (segT seg) + { ++ struct litpool_seg *lps = litpool_seg_list.next; ++ struct litpool_frag *lpf; ++ for ( ; lps && lps->seg->id != seg->id; lps = lps->next) ++ ; ++ if (lps) ++ { ++ for (lpf = lps->frag_list.prev; lpf->fragP; lpf = lpf->prev) ++ { /* Skip "candidates" for now. */ ++ if (lpf->fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN && ++ lpf->priority == 1) ++ return lpf->fragP; ++ } ++ /* Must convert a lower-priority pool. */ ++ for (lpf = lps->frag_list.prev; lpf->fragP; lpf = lpf->prev) ++ { ++ if (lpf->fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN) ++ return lpf->fragP; ++ } ++ /* Still no match -- try for a low priority pool. */ ++ for (lpf = lps->frag_list.prev; lpf->fragP; lpf = lpf->prev) ++ { ++ if (lpf->fragP->fr_subtype == RELAX_LITERAL_POOL_CANDIDATE_BEGIN) ++ return lpf->fragP; ++ } ++ } + return seg_info (seg)->tc_segment_info_data.literal_pool_loc; + } + +@@ -7098,6 +7192,11 @@ xg_assemble_vliw_tokens (vliw_insn *vinsn) + frag_now->tc_frag_data.slot_symbols[slot] = tinsn->symbol; + frag_now->tc_frag_data.slot_offsets[slot] = tinsn->offset; + frag_now->tc_frag_data.literal_frags[slot] = tinsn->literal_frag; ++ if (tinsn->opcode == xtensa_l32r_opcode) ++ { ++ frag_now->tc_frag_data.literal_frags[slot] = ++ tinsn->tok[1].X_add_symbol->sy_frag; ++ } + if (tinsn->literal_space != 0) + xg_assemble_literal_space (tinsn->literal_space, slot); + frag_now->tc_frag_data.free_reg[slot] = tinsn->extra_arg; +@@ -7170,6 +7269,8 @@ xg_assemble_vliw_tokens (vliw_insn *vinsn) + frag_now->fr_symbol, frag_now->fr_offset, NULL); + xtensa_set_frag_assembly_state (frag_now); + xtensa_maybe_create_trampoline_frag (); ++ /* Always create one here. */ ++ xtensa_maybe_create_literal_pool_frag (TRUE, FALSE); + } + else if (is_branch && do_align_targets ()) + { +@@ -7314,11 +7415,18 @@ xtensa_check_frag_count (void) + clear_frag_count (); + unreachable_count = 0; + } ++ ++ /* We create an area for a possible literal pool every N (default 5000) ++ frags or so. */ ++ xtensa_maybe_create_literal_pool_frag (TRUE, TRUE); + } + + static xtensa_insnbuf trampoline_buf = NULL; + static xtensa_insnbuf trampoline_slotbuf = NULL; + ++static xtensa_insnbuf litpool_buf = NULL; ++static xtensa_insnbuf litpool_slotbuf = NULL; ++ + #define TRAMPOLINE_FRAG_SIZE 3000 + + static void +@@ -7410,6 +7518,135 @@ dump_trampolines (void) + } + } + ++static void dump_litpools (void) __attribute__ ((unused)); ++ ++static void ++dump_litpools (void) ++{ ++ struct litpool_seg *lps = litpool_seg_list.next; ++ struct litpool_frag *lpf; ++ ++ for ( ; lps ; lps = lps->next ) ++ { ++ printf("litpool seg %s\n", lps->seg->name); ++ for ( lpf = lps->frag_list.next; lpf->fragP; lpf = lpf->next ) ++ { ++ fragS *litfrag = lpf->fragP->fr_next; ++ int count = 0; ++ while (litfrag && litfrag->fr_subtype != RELAX_LITERAL_POOL_END) ++ { ++ if (litfrag->fr_fix == 4) ++ count++; ++ litfrag = litfrag->fr_next; ++ } ++ printf(" %ld <%d:%d> (%d) [%d]: ", ++ lpf->addr, lpf->priority, lpf->original_priority, ++ lpf->fragP->fr_line, count); ++ //dump_frag(lpf->fragP); ++ } ++ } ++} ++ ++static void ++xtensa_maybe_create_literal_pool_frag (bfd_boolean create, ++ bfd_boolean only_if_needed) ++{ ++ struct litpool_seg *lps = litpool_seg_list.next; ++ fragS *fragP; ++ struct litpool_frag *lpf; ++ bfd_boolean needed = FALSE; ++ ++ if (use_literal_section || !auto_litpools) ++ return; ++ ++ for ( ; lps ; lps = lps->next ) ++ { ++ if (lps->seg == now_seg) ++ break; ++ } ++ ++ if (lps == NULL) ++ { ++ lps = (struct litpool_seg *)xcalloc (sizeof (struct litpool_seg), 1); ++ lps->next = litpool_seg_list.next; ++ litpool_seg_list.next = lps; ++ lps->seg = now_seg; ++ lps->frag_list.next = &lps->frag_list; ++ lps->frag_list.prev = &lps->frag_list; ++ } ++ ++ lps->frag_count++; ++ ++ if (create) ++ { ++ if (only_if_needed) ++ { ++ if (past_xtensa_end || !use_transform() || ++ frag_now->tc_frag_data.is_no_transform) ++ { ++ return; ++ } ++ if (auto_litpool_limit <= 0) ++ { ++ /* Don't create a litpool based only on frag count. */ ++ return; ++ } ++ else if (lps->frag_count > auto_litpool_limit) ++ { ++ needed = TRUE; ++ } ++ else ++ { ++ return; ++ } ++ } ++ else ++ { ++ needed = TRUE; ++ } ++ } ++ ++ if (needed) ++ { ++ int size = (only_if_needed) ? 3 : 0; /* Space for a "j" insn. */ ++ /* Create a potential site for a literal pool. */ ++ frag_wane (frag_now); ++ frag_new (0); ++ xtensa_set_frag_assembly_state (frag_now); ++ fragP = frag_now; ++ fragP->tc_frag_data.lit_frchain = frchain_now; ++ fragP->tc_frag_data.literal_frag = fragP; ++ frag_var (rs_machine_dependent, size, size, ++ (only_if_needed) ? ++ RELAX_LITERAL_POOL_CANDIDATE_BEGIN : ++ RELAX_LITERAL_POOL_BEGIN, ++ NULL, 0, NULL); ++ frag_now->tc_frag_data.lit_seg = now_seg; ++ frag_variant (rs_machine_dependent, 0, 0, ++ RELAX_LITERAL_POOL_END, NULL, 0, NULL); ++ xtensa_set_frag_assembly_state (frag_now); ++ } ++ else ++ { ++ /* RELAX_LITERAL_POOL_BEGIN frag is being created; ++ just record it here. */ ++ fragP = frag_now; ++ } ++ ++ lpf = (struct litpool_frag *)xmalloc(sizeof (struct litpool_frag)); ++ /* Insert at tail of circular list. */ ++ lpf->addr = 0; ++ lps->frag_list.prev->next = lpf; ++ lpf->next = &lps->frag_list; ++ lpf->prev = lps->frag_list.prev; ++ lps->frag_list.prev = lpf; ++ lpf->fragP = fragP; ++ lpf->priority = (needed) ? (only_if_needed) ? 3 : 2 : 1; ++ lpf->original_priority = lpf->priority; ++ ++ lps->frag_count = 0; ++} ++ + static void + xtensa_cleanup_align_frags (void) + { +@@ -9029,7 +9266,41 @@ xtensa_relax_frag (fragS *fragP, long stretch, int *stretched_p) + break; + + case RELAX_LITERAL_POOL_BEGIN: ++ if (fragP->fr_var != 0) ++ { ++ /* We have a converted "candidate" literal pool; ++ assemble a jump around it. */ ++ TInsn insn; ++ if (!litpool_slotbuf) ++ { ++ litpool_buf = xtensa_insnbuf_alloc (isa); ++ litpool_slotbuf = xtensa_insnbuf_alloc (isa); ++ } ++ new_stretch += 3; ++ fragP->tc_frag_data.relax_seen = FALSE; /* Need another pass. */ ++ fragP->tc_frag_data.is_insn = TRUE; ++ tinsn_init (&insn); ++ insn.insn_type = ITYPE_INSN; ++ insn.opcode = xtensa_j_opcode; ++ insn.ntok = 1; ++ set_expr_symbol_offset (&insn.tok[0], fragP->fr_symbol, ++ fragP->fr_fix); ++ fmt = xg_get_single_format (xtensa_j_opcode); ++ tinsn_to_slotbuf (fmt, 0, &insn, litpool_slotbuf); ++ xtensa_format_set_slot (isa, fmt, 0, litpool_buf, litpool_slotbuf); ++ xtensa_insnbuf_to_chars (isa, litpool_buf, ++ (unsigned char *)fragP->fr_literal + ++ fragP->fr_fix, 3); ++ fragP->fr_fix += 3; ++ fragP->fr_var -= 3; ++ /* Add a fix-up. */ ++ fix_new (fragP, 0, 3, fragP->fr_symbol, 0, TRUE, ++ BFD_RELOC_XTENSA_SLOT0_OP); ++ } ++ break; ++ + case RELAX_LITERAL_POOL_END: ++ case RELAX_LITERAL_POOL_CANDIDATE_BEGIN: + case RELAX_MAYBE_UNREACHABLE: + case RELAX_MAYBE_DESIRE_ALIGN: + /* No relaxation required. */ +@@ -10789,12 +11060,115 @@ xtensa_move_literals (void) + segT dest_seg; + fixS *fix, *next_fix, **fix_splice; + sym_list *lit; ++ struct litpool_seg *lps; + + mark_literal_frags (literal_head->next); + + if (use_literal_section) + return; + ++ /* Assign addresses (rough estimates) to the potential literal pool locations ++ and create new ones if the gaps are too large. */ ++ ++ for (lps = litpool_seg_list.next; lps; lps = lps->next) ++ { ++ frchainS *frchP = seg_info (lps->seg)->frchainP; ++ struct litpool_frag *lpf = lps->frag_list.next; ++ addressT addr = 0; ++ ++ for ( ; frchP; frchP = frchP->frch_next) ++ { ++ fragS *fragP; ++ for (fragP = frchP->frch_root; fragP; fragP = fragP->fr_next) ++ { ++ if (lpf && fragP == lpf->fragP) ++ { ++ gas_assert(fragP->fr_type == rs_machine_dependent && ++ (fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN || ++ fragP->fr_subtype == RELAX_LITERAL_POOL_CANDIDATE_BEGIN)); ++ /* Found a litpool location. */ ++ lpf->addr = addr; ++ lpf = lpf->next; ++ } ++ if (fragP->fr_type == rs_machine_dependent && ++ fragP->fr_subtype == RELAX_SLOTS) ++ { ++ int slot; ++ for (slot = 0; slot < MAX_SLOTS; slot++) ++ { ++ if (fragP->tc_frag_data.literal_frags[slot]) ++ { ++ /* L32R; point its literal to the nearest litpool ++ preferring non-"candidate" positions to avoid ++ the jump-around. */ ++ fragS *litfrag = fragP->tc_frag_data.literal_frags[slot]; ++ struct litpool_frag *lp = lpf->prev; ++ if (!lp->fragP) ++ { ++ break; ++ } ++ while (lp->fragP->fr_subtype == ++ RELAX_LITERAL_POOL_CANDIDATE_BEGIN) ++ { ++ lp = lp->prev; ++ if (lp->fragP == NULL) ++ { ++ /* End of list; have to bite the bullet. ++ Take the nearest. */ ++ lp = lpf->prev; ++ break; ++ } ++ /* Does it (conservatively) reach? */ ++ if (addr - lp->addr <= 128 * 1024) ++ { ++ if (lp->fragP->fr_subtype == RELAX_LITERAL_POOL_BEGIN) ++ { ++ /* Found a good one. */ ++ break; ++ } ++ else if (lp->prev->fragP && ++ addr - lp->prev->addr > 128 * 1024) ++ { ++ /* This is still a "candidate" but the next one ++ will be too far away, so revert to the nearest ++ one, convert it and add the jump around. */ ++ fragS *poolbeg; ++ fragS *poolend; ++ symbolS *lsym; ++ char label[10 + 2 * sizeof (fragS *)]; ++ lp = lpf->prev; ++ poolbeg = lp->fragP; ++ lp->priority = 1; ++ poolbeg->fr_subtype = RELAX_LITERAL_POOL_BEGIN; ++ poolend = poolbeg->fr_next; ++ gas_assert (poolend->fr_type == rs_machine_dependent && ++ poolend->fr_subtype == RELAX_LITERAL_POOL_END); ++ /* Create a local symbol pointing to the ++ end of the pool. */ ++ sprintf (label, ".L0_LT_%p", poolbeg); ++ lsym = (symbolS *)local_symbol_make (label, lps->seg, ++ 0, poolend); ++ poolbeg->fr_symbol = lsym; ++ /* Rest is done in xtensa_relax_frag. */ ++ } ++ } ++ } ++ if (! litfrag->tc_frag_data.literal_frag) ++ { ++ /* Take earliest use of this literal to avoid ++ forward refs. */ ++ litfrag->tc_frag_data.literal_frag = lp->fragP; ++ } ++ } ++ } ++ } ++ addr += fragP->fr_fix; ++ if (fragP->fr_type == rs_fill) ++ addr += fragP->fr_offset; ++ } ++ } ++ } ++ + for (segment = literal_head->next; segment; segment = segment->next) + { + /* Keep the literals for .init and .fini in separate sections. */ +@@ -10839,9 +11213,6 @@ xtensa_move_literals (void) + while (search_frag != frag_now) + { + next_frag = search_frag->fr_next; +- +- /* First, move the frag out of the literal section and +- to the appropriate place. */ + if (search_frag->tc_frag_data.literal_frag) + { + literal_pool = search_frag->tc_frag_data.literal_frag; +@@ -10849,8 +11220,56 @@ xtensa_move_literals (void) + frchain_to = literal_pool->tc_frag_data.lit_frchain; + gas_assert (frchain_to); + } ++ ++ if (search_frag->fr_type == rs_fill && search_frag->fr_fix == 0) ++ { ++ /* Skip empty fill frags. */ ++ *frag_splice = next_frag; ++ search_frag = next_frag; ++ continue; ++ } ++ ++ if (search_frag->fr_type == rs_align) ++ { ++ /* Skip alignment frags, because the pool as a whole will be ++ aligned if used, and we don't want to force alignment if the ++ pool is unused. */ ++ *frag_splice = next_frag; ++ search_frag = next_frag; ++ continue; ++ } ++ ++ /* First, move the frag out of the literal section and ++ to the appropriate place. */ ++ ++ /* Insert an aligmnent frag at start of pool. */ ++ if (literal_pool->fr_next->fr_type == rs_machine_dependent && ++ literal_pool->fr_next->fr_subtype == RELAX_LITERAL_POOL_END) ++ { ++ segT pool_seg = literal_pool->fr_next->tc_frag_data.lit_seg; ++ emit_state prev_state; ++ fragS *prev_frag; ++ fragS *align_frag; ++ xtensa_switch_section_emit_state (&prev_state, pool_seg, 0); ++ prev_frag = frag_now; ++ frag_variant (rs_fill, 0, 0, 0, NULL, 0, NULL); ++ align_frag = frag_now; ++ frag_align (2, 0, 0); ++ /* Splice it into the right place. */ ++ prev_frag->fr_next = align_frag->fr_next; ++ align_frag->fr_next = literal_pool->fr_next; ++ literal_pool->fr_next = align_frag; ++ /* Insert after this one. */ ++ literal_pool->tc_frag_data.literal_frag = align_frag; ++ xtensa_restore_emit_state (&prev_state); ++ } + insert_after = literal_pool->tc_frag_data.literal_frag; + dest_seg = insert_after->fr_next->tc_frag_data.lit_seg; ++ /* Skip align frag. */ ++ if (insert_after->fr_next->fr_type == rs_align) ++ { ++ insert_after = insert_after->fr_next; ++ } + + *frag_splice = next_frag; + search_frag->fr_next = insert_after->fr_next; +@@ -11014,7 +11433,10 @@ xtensa_switch_to_non_abs_literal_fragment (emit_state *result) + && !recursive + && !is_init && ! is_fini) + { +- as_bad (_("literal pool location required for text-section-literals; specify with .literal_position")); ++ if (!auto_litpools) ++ { ++ as_bad (_("literal pool location required for text-section-literals; specify with .literal_position")); ++ } + + /* When we mark a literal pool location, we want to put a frag in + the literal pool that points to it. But to do that, we want to +diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h +index b2e43fa..290d902 100644 +--- a/gas/config/tc-xtensa.h ++++ b/gas/config/tc-xtensa.h +@@ -124,6 +124,7 @@ enum xtensa_relax_statesE + + RELAX_LITERAL_POOL_BEGIN, + RELAX_LITERAL_POOL_END, ++ RELAX_LITERAL_POOL_CANDIDATE_BEGIN, + /* Technically these are not relaxations at all but mark a location + to store literals later. Note that fr_var stores the frchain for + BEGIN frags and fr_var stores now_seg for END frags. */ +diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp +index d197ec8..db39629 100644 +--- a/gas/testsuite/gas/xtensa/all.exp ++++ b/gas/testsuite/gas/xtensa/all.exp +@@ -100,6 +100,7 @@ if [istarget xtensa*-*-*] then { + run_dump_test "jlong" + run_dump_test "trampoline" + run_dump_test "first_frag_align" ++ run_dump_test "auto-litpools" + } + + if [info exists errorInfo] then { +diff --git a/gas/testsuite/gas/xtensa/auto-litpools.d b/gas/testsuite/gas/xtensa/auto-litpools.d +new file mode 100644 +index 0000000..4d1a690 +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/auto-litpools.d +@@ -0,0 +1,12 @@ ++#as: --auto-litpools ++#objdump: -d ++#name: auto literal pool placement ++ ++.*: +file format .*xtensa.* ++#... ++.*4:.*l32r.a2, 0 .* ++#... ++.*3e437:.*j.3e440 .* ++#... ++.*40750:.*l32r.a2, 3e43c .* ++#... +diff --git a/gas/testsuite/gas/xtensa/auto-litpools.s b/gas/testsuite/gas/xtensa/auto-litpools.s +new file mode 100644 +index 0000000..9a5b26b +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/auto-litpools.s +@@ -0,0 +1,13 @@ ++ .text ++ .align 4 ++ .literal .L0, 0x12345 ++ .literal .L1, 0x12345 ++ ++f: ++ l32r a2, .L0 ++ .rep 44000 ++ _nop ++ _nop ++ .endr ++ l32r a2, .L1 ++ ret +-- +1.8.1.4 + diff --git a/package/binutils/2.25.1/914-xtensa-fix-signedness-of-gas-relocations.patch b/package/binutils/2.25.1/914-xtensa-fix-signedness-of-gas-relocations.patch new file mode 100644 index 00000000000..bd751661b83 --- /dev/null +++ b/package/binutils/2.25.1/914-xtensa-fix-signedness-of-gas-relocations.patch @@ -0,0 +1,99 @@ +From 6c7c5c477ef9ccf2d2548cf2ac3cec9bd3c9c5b6 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Tue, 2 Feb 2016 17:11:38 +0300 +Subject: [PATCH] xtensa: fix signedness of gas relocations + +Change 1058c7532d0b "Use signed data type for R_XTENSA_DIFF* relocation +offsets." changed signedness of BFD_RELOC_XTENSA_DIFF* relocations +substituted for BFD_RELOC_*. This made it impossible to encode arbitrary +8-, 16- and 32-bit values, which broke e.g. debug info encoding by .loc +directive. Revert this part and add test. + +gas/ +2016-02-03 Max Filippov + * config/tc-xtensa.c (md_apply_fix): Mark BFD_RELOC_XTENSA_DIFF* + substitutions for BFD_RELOC_* as unsigned. + +gas/testsuite/ +2016-02-03 Max Filippov + * gas/xtensa/all.exp: Add loc to list of xtensa tests. + * gas/xtensa/loc.d: New file: loc test result patterns. + * gas/xtensa/loc.s: New file: loc test. + +Signed-off-by: Max Filippov +--- + gas/config/tc-xtensa.c | 6 +++--- + gas/testsuite/gas/xtensa/all.exp | 1 + + gas/testsuite/gas/xtensa/loc.d | 10 ++++++++++ + gas/testsuite/gas/xtensa/loc.s | 7 +++++++ + 4 files changed, 21 insertions(+), 3 deletions(-) + create mode 100644 gas/testsuite/gas/xtensa/loc.d + create mode 100644 gas/testsuite/gas/xtensa/loc.s + +diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c +index a119871..36a06cc 100644 +--- a/gas/config/tc-xtensa.c ++++ b/gas/config/tc-xtensa.c +@@ -5961,15 +5961,15 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg) + { + case BFD_RELOC_8: + fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF8; +- fixP->fx_signed = 1; ++ fixP->fx_signed = 0; + break; + case BFD_RELOC_16: + fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF16; +- fixP->fx_signed = 1; ++ fixP->fx_signed = 0; + break; + case BFD_RELOC_32: + fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF32; +- fixP->fx_signed = 1; ++ fixP->fx_signed = 0; + break; + default: + break; +diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp +index 31b725b..7ff7bd7 100644 +--- a/gas/testsuite/gas/xtensa/all.exp ++++ b/gas/testsuite/gas/xtensa/all.exp +@@ -101,6 +101,7 @@ if [istarget xtensa*-*-*] then { + run_dump_test "trampoline" + run_dump_test "first_frag_align" + run_dump_test "auto-litpools" ++ run_dump_test "loc" + } + + if [info exists errorInfo] then { +diff --git a/gas/testsuite/gas/xtensa/loc.d b/gas/testsuite/gas/xtensa/loc.d +new file mode 100644 +index 0000000..71983cc +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/loc.d +@@ -0,0 +1,10 @@ ++#as: ++#objdump: -r ++#name: .loc directive relocs ++ ++.*: +file format .*xtensa.* ++ ++RELOCATION RECORDS FOR \[\.debug_line\]: ++#... ++.*R_XTENSA_DIFF16.*\.text\+0x00009c42 ++#... +diff --git a/gas/testsuite/gas/xtensa/loc.s b/gas/testsuite/gas/xtensa/loc.s +new file mode 100644 +index 0000000..029e14e +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/loc.s +@@ -0,0 +1,7 @@ ++ .text ++ .file 1 "loc.s" ++ .loc 1 3 ++ nop ++ .space 40000 ++ .loc 1 5 ++ nop +-- +2.1.4 + diff --git a/package/binutils/2.25.1/915-Correct-assertion-in-NIOS2-linker-to-allow-signed-16.patch b/package/binutils/2.25.1/915-Correct-assertion-in-NIOS2-linker-to-allow-signed-16.patch new file mode 100644 index 00000000000..6ae9d9afc4d --- /dev/null +++ b/package/binutils/2.25.1/915-Correct-assertion-in-NIOS2-linker-to-allow-signed-16.patch @@ -0,0 +1,70 @@ +From d07f38875f37f4608e8ecb761619d84716896f14 Mon Sep 17 00:00:00 2001 +From: Nick Clifton +Date: Wed, 10 Feb 2016 11:25:59 +0000 +Subject: [PATCH] Correct assertion in NIOS2 linker to allow signed 16-buit + immediate values. + + PR 19405 + * elf32-nios2.c (nios2_elf32_install_imm16): Allow for signed + immediate values. + * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Limit the + number of messages about FDE encoding preventing .eh_frame_hdr + generation. + +[Romain: rebase on 2.25.1] +Signed-off-by: Romain Naour +--- + bfd/elf-eh-frame.c | 18 +++++++++++++++--- + bfd/elf32-nios2.c | 2 +- + 2 files changed, 16 insertions(+), 4 deletions(-) + +diff --git a/bfd/elf-eh-frame.c b/bfd/elf-eh-frame.c +index 002932d..22430f9 100644 +--- a/bfd/elf-eh-frame.c ++++ b/bfd/elf-eh-frame.c +@@ -1181,14 +1181,26 @@ _bfd_elf_discard_section_eh_frame + && ent->make_relative == 0) + || (ent->fde_encoding & 0x70) == DW_EH_PE_aligned)) + { ++ static int num_warnings_issued = 0; ++ + /* If a shared library uses absolute pointers + which we cannot turn into PC relative, + don't create the binary search table, + since it is affected by runtime relocations. */ + hdr_info->table = FALSE; +- (*info->callbacks->einfo) +- (_("%P: FDE encoding in %B(%A) prevents .eh_frame_hdr" +- " table being created.\n"), abfd, sec); ++ if (num_warnings_issued < 10) ++ { ++ (*info->callbacks->einfo) ++ (_("%P: FDE encoding in %B(%A) prevents .eh_frame_hdr" ++ " table being created.\n"), abfd, sec); ++ num_warnings_issued ++; ++ } ++ else if (num_warnings_issued == 10) ++ { ++ (*info->callbacks->einfo) ++ (_("%P: Further warnings about FDE encoding preventing .eh_frame_hdr generation dropped.\n")); ++ num_warnings_issued ++; ++ } + } + ent->removed = 0; + hdr_info->fde_count++; +diff --git a/bfd/elf32-nios2.c b/bfd/elf32-nios2.c +index 0105b70..726647d 100644 +--- a/bfd/elf32-nios2.c ++++ b/bfd/elf32-nios2.c +@@ -1035,7 +1035,7 @@ nios2_elf32_install_imm16 (asection *sec, bfd_vma offset, bfd_vma value) + { + bfd_vma word = bfd_get_32 (sec->owner, sec->contents + offset); + +- BFD_ASSERT(value <= 0xffff); ++ BFD_ASSERT (value <= 0xffff || ((bfd_signed_vma) value) >= -0xffff); + + bfd_put_32 (sec->owner, word | ((value & 0xffff) << 6), + sec->contents + offset); +-- +2.4.3 + diff --git a/package/binutils/2.25.1/915-xtensa-fix-.init-.fini-literals-moving.patch b/package/binutils/2.25.1/915-xtensa-fix-.init-.fini-literals-moving.patch new file mode 100644 index 00000000000..ead3e42b752 --- /dev/null +++ b/package/binutils/2.25.1/915-xtensa-fix-.init-.fini-literals-moving.patch @@ -0,0 +1,149 @@ +From 7db2accc3fdea0aaa0c3a76a413d8e8030e022c3 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Tue, 16 Feb 2016 02:23:28 +0300 +Subject: [PATCH] xtensa: fix .init/.fini literals moving + +Despite the documentation and the comment in xtensa_move_literals, in +the presence of --text-section-literals and --auto-litpools literals are +moved from the separate literal sections into .init and .fini, because +the check in the xtensa_move_literals is incorrect. + +This moving was broken with introduction of auto litpools: some literals +now may be lost. This happens because literal frags emitted from .init +and .fini are not closed when new .literal_position marks new literal +pool. Then frag_align(2, 0, 0) changes type of the last literal frag to +rs_align. rs_align frags are skipped in the xtensa_move_literals. As a +result fixups against such literals are not moved out of .init.literal/ +.fini.literal sections producing the following assembler error: + + test.S: Warning: fixes not all moved from .init.literal + test.S: Internal error! + +Fix check for .init.literal/.fini.literal in the xtensa_move_literals +and don't let it move literals from there in the presence of +--text-section-literals or --auto-litpools. + +2016-02-17 Max Filippov +gas/ + * config/tc-xtensa.c (xtensa_move_literals): Fix check for + .init.literal/.fini.literal section name. + * testsuite/gas/xtensa/all.exp: Add init-fini-literals to the + list of xtensa tests. + * testsuite/gas/xtensa/init-fini-literals.d: New file: + init-fini-literals test result patterns. + * testsuite/gas/xtensa/init-fini-literals.s: New file: + init-fini-literals test. + +Signed-off-by: Max Filippov +--- +Backported from: 4111950f363221c4641dc2f33bea61cc94f34906 + + gas/config/tc-xtensa.c | 12 ++++++++++-- + gas/testsuite/gas/xtensa/all.exp | 1 + + gas/testsuite/gas/xtensa/init-fini-literals.d | 24 ++++++++++++++++++++++++ + gas/testsuite/gas/xtensa/init-fini-literals.s | 19 +++++++++++++++++++ + 4 files changed, 54 insertions(+), 2 deletions(-) + create mode 100644 gas/testsuite/gas/xtensa/init-fini-literals.d + create mode 100644 gas/testsuite/gas/xtensa/init-fini-literals.s + +diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c +index 36a06cc..5773634 100644 +--- a/gas/config/tc-xtensa.c ++++ b/gas/config/tc-xtensa.c +@@ -11061,6 +11061,10 @@ xtensa_move_literals (void) + fixS *fix, *next_fix, **fix_splice; + sym_list *lit; + struct litpool_seg *lps; ++ const char *init_name = INIT_SECTION_NAME; ++ const char *fini_name = FINI_SECTION_NAME; ++ int init_name_len = strlen(init_name); ++ int fini_name_len = strlen(fini_name); + + mark_literal_frags (literal_head->next); + +@@ -11171,9 +11175,13 @@ xtensa_move_literals (void) + + for (segment = literal_head->next; segment; segment = segment->next) + { ++ const char *seg_name = segment_name (segment->seg); ++ + /* Keep the literals for .init and .fini in separate sections. */ +- if (!strcmp (segment_name (segment->seg), INIT_SECTION_NAME) +- || !strcmp (segment_name (segment->seg), FINI_SECTION_NAME)) ++ if ((!memcmp (seg_name, init_name, init_name_len) && ++ !strcmp (seg_name + init_name_len, ".literal")) || ++ (!memcmp (seg_name, fini_name, fini_name_len) && ++ !strcmp (seg_name + fini_name_len, ".literal"))) + continue; + + frchain_from = seg_info (segment->seg)->frchainP; +diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp +index 7ff7bd7..6b67320 100644 +--- a/gas/testsuite/gas/xtensa/all.exp ++++ b/gas/testsuite/gas/xtensa/all.exp +@@ -102,6 +102,7 @@ if [istarget xtensa*-*-*] then { + run_dump_test "first_frag_align" + run_dump_test "auto-litpools" + run_dump_test "loc" ++ run_dump_test "init-fini-literals" + } + + if [info exists errorInfo] then { +diff --git a/gas/testsuite/gas/xtensa/init-fini-literals.d b/gas/testsuite/gas/xtensa/init-fini-literals.d +new file mode 100644 +index 0000000..19ed121 +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/init-fini-literals.d +@@ -0,0 +1,24 @@ ++#as: --text-section-literals ++#objdump: -r ++#name: check that literals for .init and .fini always go to separate sections ++ ++.*: +file format .*xtensa.* ++#... ++RELOCATION RECORDS FOR \[\.init\.literal\]: ++#... ++00000000 R_XTENSA_PLT init ++#... ++RELOCATION RECORDS FOR \[\.fini\.literal\]: ++#... ++00000000 R_XTENSA_PLT fini ++#... ++RELOCATION RECORDS FOR \[\.init\]: ++#... ++.* R_XTENSA_SLOT0_OP \.init\.literal ++.* R_XTENSA_SLOT0_OP \.init\.literal\+0x00000004 ++#... ++RELOCATION RECORDS FOR \[\.fini\]: ++#... ++.* R_XTENSA_SLOT0_OP \.fini\.literal ++.* R_XTENSA_SLOT0_OP \.fini\.literal\+0x00000004 ++#... +diff --git a/gas/testsuite/gas/xtensa/init-fini-literals.s b/gas/testsuite/gas/xtensa/init-fini-literals.s +new file mode 100644 +index 0000000..7c9ec17 +--- /dev/null ++++ b/gas/testsuite/gas/xtensa/init-fini-literals.s +@@ -0,0 +1,19 @@ ++ .section .init,"ax",@progbits ++ .literal_position ++ .literal .LC0, init@PLT ++ .literal_position ++ .literal .LC1, 1 ++ .align 4 ++ ++ l32r a2, .LC0 ++ l32r a2, .LC1 ++ ++ .section .fini,"ax",@progbits ++ .literal_position ++ .literal .LC2, fini@PLT ++ .literal_position ++ .literal .LC3, 1 ++ .align 4 ++ ++ l32r a2, .LC2 ++ l32r a2, .LC3 +-- +2.1.4 + diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host index 40619ab811f..df3c385de5a 100644 --- a/package/binutils/Config.in.host +++ b/package/binutils/Config.in.host @@ -10,11 +10,15 @@ choice config BR2_BINUTILS_VERSION_2_23_X depends on !BR2_aarch64 && !BR2_microblaze && \ !BR2_powerpc64le && !BR2_nios2 + # Unsupported for MIPS R6 + depends on !BR2_mips_32r6 && !BR2_mips_64r6 bool "binutils 2.23.2" config BR2_BINUTILS_VERSION_2_24_X # supported, but broken on Nios-II and powerpc64le depends on !BR2_nios2 && !BR2_powerpc64le + # Unsupported for MIPS R6 + depends on !BR2_mips_32r6 && !BR2_mips_64r6 bool "binutils 2.24" config BR2_BINUTILS_VERSION_2_25_X @@ -24,7 +28,7 @@ endchoice config BR2_BINUTILS_VERSION string - default "arc-2015.06" if BR2_arc + default "arc-2015.12" if BR2_arc default "2.23.2" if BR2_BINUTILS_VERSION_2_23_X default "2.24" if BR2_BINUTILS_VERSION_2_24_X default "2.25.1" if BR2_BINUTILS_VERSION_2_25_X diff --git a/package/binutils/arc-2015.06/0002-ld-arc-Provide-the-.tdata-symbol.patch b/package/binutils/arc-2015.06/0002-ld-arc-Provide-the-.tdata-symbol.patch deleted file mode 100644 index 40341a50b9d..00000000000 --- a/package/binutils/arc-2015.06/0002-ld-arc-Provide-the-.tdata-symbol.patch +++ /dev/null @@ -1,145 +0,0 @@ -From daf1ff839fc68ef31e3263780de4604a95118702 Mon Sep 17 00:00:00 2001 -From: Andrew Burgess -Date: Thu, 23 Jul 2015 14:44:15 +0100 -Subject: [PATCH 1/2] ld/arc: Provide the .tdata symbol. - -When creating local dynamic tls access we rely on a .tdata symbol being -available to link against. Normally, this is fine, as content is placed -into the .tdata section the linker makes a .tdata symbol available and -all is fine. - -However, these linker created section symbols only exist for input -sections, not output sections, so, when we assemble with --fdata-sections, and the content is placed not into '.tdata', but into -sections like, '.tdata.variable' we end up in a situation where there is -no input section called '.tdata', and so the linker does not create a -symbol called '.tdata' for us, at which point the link fails. - -The solution it to have the linker script explicitly provide the symbol -'.tdata', this should ensure that the symbol is always available. - -ld/ChangeLog: - - * scripttempl/arclinux.sc (.tdata): Provide the .tdata symbol. - -ld/testsuite/ChangeLog: - - * ld/testsuite/ld-arc/arc.exp: Run new test. - * ld/testsuite/ld-arc/tls-data-sections.d: New file. - * ld/testsuite/ld-arc/tls-data-sections.s: New file. ---- - ld/ChangeLog.ARC | 4 ++++ - ld/scripttempl/arclinux.sc | 2 +- - ld/testsuite/ChangeLog.ARC | 6 ++++++ - ld/testsuite/ld-arc/arc.exp | 1 + - ld/testsuite/ld-arc/tls-data-sections.d | 12 ++++++++++++ - ld/testsuite/ld-arc/tls-data-sections.s | 30 ++++++++++++++++++++++++++++++ - 6 files changed, 54 insertions(+), 1 deletion(-) - create mode 100644 ld/testsuite/ld-arc/tls-data-sections.d - create mode 100644 ld/testsuite/ld-arc/tls-data-sections.s - -diff --git a/ld/ChangeLog.ARC b/ld/ChangeLog.ARC -index fac6f48..0006bb3 100644 ---- a/ld/ChangeLog.ARC -+++ b/ld/ChangeLog.ARC -@@ -1,3 +1,7 @@ -+2015-07-23 Andrew Burgess -+ -+ * scripttempl/arclinux.sc (.tdata): Provide the .tdata symbol. -+ - 2015-03-26: Claudiu Zissulescu - - * testsuite/ld-arc/sda_relocs.d: New file. -diff --git a/ld/scripttempl/arclinux.sc b/ld/scripttempl/arclinux.sc -index 9d43ca3..1385b30 100644 ---- a/ld/scripttempl/arclinux.sc -+++ b/ld/scripttempl/arclinux.sc -@@ -326,7 +326,7 @@ cat < -+ -+ * ld/testsuite/ld-arc/arc.exp: Run new test. -+ * ld/testsuite/ld-arc/tls-data-sections.d: New file. -+ * ld/testsuite/ld-arc/tls-data-sections.s: New file. -+ - 2015-06-06 Andrew Burgess - - * ld-arc/unaligned-pc32.d: New file. -diff --git a/ld/testsuite/ld-arc/arc.exp b/ld/testsuite/ld-arc/arc.exp -index d2bfafe..74ab458 100644 ---- a/ld/testsuite/ld-arc/arc.exp -+++ b/ld/testsuite/ld-arc/arc.exp -@@ -47,3 +47,4 @@ if {[check_shared_lib_support]} { - - run_dump_test "sda_relocs" - run_dump_test "unaligned-pc32" -+run_dump_test "tls-data-sections" -diff --git a/ld/testsuite/ld-arc/tls-data-sections.d b/ld/testsuite/ld-arc/tls-data-sections.d -new file mode 100644 -index 0000000..9823bf0 ---- /dev/null -+++ b/ld/testsuite/ld-arc/tls-data-sections.d -@@ -0,0 +1,12 @@ -+#source: tls-data-sections.s -+#ld: --entry=main -+#objdump: -rd -+ -+ -+.*: file format elf32-littlearc -+ -+ -+Disassembly of section \.text: -+ -+00010094
: -+ 10094: 00 21 80 3f 00 00 08 00 add r0,r25,8 -diff --git a/ld/testsuite/ld-arc/tls-data-sections.s b/ld/testsuite/ld-arc/tls-data-sections.s -new file mode 100644 -index 0000000..f0450c0 ---- /dev/null -+++ b/ld/testsuite/ld-arc/tls-data-sections.s -@@ -0,0 +1,30 @@ -+ /* This file is not intended to be real code, however, the -+ contents of the main function is real code as generated as -+ part of a local dynamic tls model access. The purpose of -+ this test is to check that such an access will link -+ correctly. -+ -+ Notice that the relocation in main references '.tdata', and -+ though we put content into '.tdata.pgsz.1362' we don't -+ create a '.tdata' section. This is intentional, this example -+ was generated using -fdata-sections. -+ -+ The '.tdata' section will be created in the linker script, -+ and we do expect to be able to reference it. This should link. -+ */ -+ -+ .section ".text", "ax" -+ .global main, _start -+_start: -+ .type main, @function -+main: -+ add r0,pcl,@.tdata@tlsgd ;8 -+ .size main, .-main -+ -+ .section .tdata.pgsz.1362,"awT",@progbits -+ .align 8 -+ .type pgsz.1362, @object -+ .size pgsz.1362, 4 -+ -+pgsz.1362: -+ .word 1 --- -2.4.3 - diff --git a/package/binutils/arc-2015.06/0003-Provide-.tbss-symbol.patch b/package/binutils/arc-2015.06/0003-Provide-.tbss-symbol.patch deleted file mode 100644 index 34bb2a25ff5..00000000000 --- a/package/binutils/arc-2015.06/0003-Provide-.tbss-symbol.patch +++ /dev/null @@ -1,70 +0,0 @@ -From a6014a956a4f2263c28240bb9191bee8f924b5db Mon Sep 17 00:00:00 2001 -From: Claudiu Zissulescu -Date: Tue, 28 Jul 2015 13:34:47 +0200 -Subject: [PATCH 2/2] Provide .tbss symbol - ---- - ld/ChangeLog.ARC | 14 +++++++++----- - ld/scripttempl/arclinux.sc | 2 +- - 2 files changed, 10 insertions(+), 6 deletions(-) - -diff --git a/ld/ChangeLog.ARC b/ld/ChangeLog.ARC -index 0006bb3..fb5c717 100644 ---- a/ld/ChangeLog.ARC -+++ b/ld/ChangeLog.ARC -@@ -1,8 +1,12 @@ -+2015-07-28 Claudiu Zissulescu -+ -+ * scripttempl/arclinux.sc (.tbss): Provide the .tbss symbol. -+ - 2015-07-23 Andrew Burgess - - * scripttempl/arclinux.sc (.tdata): Provide the .tdata symbol. - --2015-03-26: Claudiu Zissulescu -+2015-03-26 Claudiu Zissulescu - - * testsuite/ld-arc/sda_relocs.d: New file. - * testsuite/ld-arc/sda_relocs.ld: Likewise. -@@ -13,21 +17,21 @@ - * scripttempl/arclinux.sc: PROVIDE_HIDDEN .tdata (in case the - section won't be included). - --2014-12-17: Claudiu Zissulescu -+2014-12-17 Claudiu Zissulescu - - * scripttempl/elfarcv2.sc: Update .startup section. - --2014-12-08: Claudiu Zissulescu -+2014-12-08 Claudiu Zissulescu - - * emulparams/arcv2elf.sh :Add discarded sections. - * emulparams/arcv2elfb.sh: Likewise - * scripttempl/elfarcv2.sc: New sections. - --2014-12-01: Claudiu Zissulescu -+2014-12-01 Claudiu Zissulescu - - * scripttempl/elfarcv2.sc: Align the start of the stack. - --2014-11-27: Claudiu Zissulescu -+2014-11-27 Claudiu Zissulescu - - * Makefile.am: Add two new emulation scripts for ARCv2. - * configure.tgt: Likewise. -diff --git a/ld/scripttempl/arclinux.sc b/ld/scripttempl/arclinux.sc -index 1385b30..bef5336 100644 ---- a/ld/scripttempl/arclinux.sc -+++ b/ld/scripttempl/arclinux.sc -@@ -327,7 +327,7 @@ cat < -Date: Tue, 4 Aug 2015 12:53:11 +0200 -Subject: [PATCH] Check to see if the input BFD actually contains any sections. - ---- - bfd/elf32-arc.c | 70 +++++++++++++++++++++++++++++++++++++------------------ - 1 file changed, 47 insertions(+), 23 deletions(-) - -diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c -index 38f72b4..76bac6c 100644 ---- a/bfd/elf32-arc.c -+++ b/bfd/elf32-arc.c -@@ -881,44 +881,68 @@ arc_elf_merge_private_bfd_data (bfd *ibfd, bfd *obfd) - { - unsigned short mach_ibfd; - static unsigned short mach_obfd = EM_NONE; -- flagword old_flags; -- flagword new_flags; -+ flagword out_flags; -+ flagword in_flags; -+ asection *sec; -+ -+ /* Check if we have the same endianess. */ -+ if (! _bfd_generic_verify_endian_match (ibfd, obfd)) -+ { -+ _bfd_error_handler ( -+ _("ERROR: Endian Match failed . Attempting to link %B with binary %s \ -+of opposite endian-ness"), -+ ibfd, bfd_get_filename (obfd)); -+ return FALSE; -+ } - - /* Collect ELF flags. */ -- new_flags = elf_elfheader (ibfd)->e_flags & EF_ARC_MACH_MSK; -- old_flags = elf_elfheader (obfd)->e_flags & EF_ARC_MACH_MSK; -+ in_flags = elf_elfheader (ibfd)->e_flags & EF_ARC_MACH_MSK; -+ out_flags = elf_elfheader (obfd)->e_flags & EF_ARC_MACH_MSK; - - #if DEBUG -- (*_bfd_error_handler) ("old_flags = 0x%.8lx, new_flags = 0x%.8lx, init = %s, filename = %s", -- old_flags, new_flags, elf_flags_init (obfd) ? "yes" : "no", -+ (*_bfd_error_handler) ("out_flags = 0x%.8lx, in_flags = 0x%.8lx, init = %s, filename = %s", -+ out_flags, in_flags, elf_flags_init (obfd) ? "yes" : "no", - bfd_get_filename (ibfd)); - #endif - - if (!elf_flags_init (obfd)) /* First call, no flags set. */ - { - elf_flags_init (obfd) = TRUE; -- old_flags = new_flags; -+ out_flags = in_flags; - } - - if (bfd_get_flavour (ibfd) != bfd_target_elf_flavour - || bfd_get_flavour (obfd) != bfd_target_elf_flavour) - return TRUE; - -- if (bfd_count_sections (ibfd) == 0) -- return TRUE ; /* For the case of empty archive files */ -+ /* Check to see if the input BFD actually contains any sections. If -+ not, its flags may not have been initialised either, but it -+ cannot actually cause any incompatiblity. Do not short-circuit -+ dynamic objects; their section list may be emptied by -+ elf_link_add_object_symbols. */ -+ if (!(ibfd->flags & DYNAMIC)) -+ { -+ bfd_boolean null_input_bfd = TRUE; -+ bfd_boolean only_data_sections = TRUE; - -- mach_ibfd = elf_elfheader (ibfd)->e_machine; -+ for (sec = ibfd->sections; sec != NULL; sec = sec->next) -+ { -+ if ((bfd_get_section_flags (ibfd, sec) -+ & (SEC_LOAD | SEC_CODE | SEC_HAS_CONTENTS)) -+ == (SEC_LOAD | SEC_CODE | SEC_HAS_CONTENTS)) -+ only_data_sections = FALSE; - -- /* Check if we have the same endianess. */ -- if (! _bfd_generic_verify_endian_match (ibfd, obfd)) -- { -- _bfd_error_handler (_("\ --ERROR: Endian Match failed . Attempting to link %B with binary %s \ --of opposite endian-ness"), -- ibfd, bfd_get_filename (obfd)); -- return FALSE; -+ null_input_bfd = FALSE; -+ break; -+ } -+ -+ if (null_input_bfd || only_data_sections) -+ return TRUE; - } - -+ -+ /* Complain about various flag/architecture mismatches. */ -+ mach_ibfd = elf_elfheader (ibfd)->e_machine; - if (mach_obfd == EM_NONE) - { - mach_obfd = mach_ibfd; -@@ -932,23 +956,23 @@ with a binary %s of different architecture"), - ibfd, bfd_get_filename (obfd)); - return FALSE; - } -- else if (new_flags != old_flags) -+ else if (in_flags != out_flags) - { - /* Warn if different flags. */ - (*_bfd_error_handler) - (_("%s: uses different e_flags (0x%lx) fields than previous modules (0x%lx)"), -- bfd_get_filename (ibfd), (long)new_flags, (long)old_flags); -- if (new_flags && old_flags) -+ bfd_get_filename (ibfd), (long)in_flags, (long)out_flags); -+ if (in_flags && out_flags) - return FALSE; - /* MWDT doesnt set the eflags hence make sure we choose the - eflags set by gcc. */ -- new_flags = new_flags > old_flags ? new_flags : old_flags; -+ in_flags = in_flags > out_flags ? in_flags : out_flags; - } - - } - - /* Update the flags. */ -- elf_elfheader (obfd)->e_flags = new_flags; -+ elf_elfheader (obfd)->e_flags = in_flags; - - if (bfd_get_mach (obfd) < bfd_get_mach (ibfd)) - { --- -2.4.3 - diff --git a/package/binutils/arc-2015.06/0001-PR-other-56780.patch b/package/binutils/arc-2015.12/0001-PR-other-56780.patch similarity index 100% rename from package/binutils/arc-2015.06/0001-PR-other-56780.patch rename to package/binutils/arc-2015.12/0001-PR-other-56780.patch diff --git a/package/binutils/arc-2015.06/600-poison-system-directories.patch b/package/binutils/arc-2015.12/600-poison-system-directories.patch similarity index 100% rename from package/binutils/arc-2015.06/600-poison-system-directories.patch rename to package/binutils/arc-2015.12/600-poison-system-directories.patch diff --git a/package/binutils/binutils.hash b/package/binutils/binutils.hash index 51499f0fcba..4af5498219f 100644 --- a/package/binutils/binutils.hash +++ b/package/binutils/binutils.hash @@ -4,4 +4,4 @@ sha512 dec753bbba008f1526b89cf1bd85feba78f362f5333ffdf93953fd131eb755976dec82a0 sha512 5ec95ad47d49b12c4558a8db0ca2109d3ee1955e3776057f3330c4506f8f4d1cf5e505fbf8a16b98403a0fcdeaaf986fe0a22be6456247dbdace63ce1f776b12 binutils-2.24.tar.bz2 sha512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d binutils-2.25.1.tar.bz2 # No hash for the ARC variant, comes from the github-helper: -none xxx binutils-arc-2015.06.tar.gz +none xxx binutils-arc-2015.12.tar.gz diff --git a/package/binutils/binutils.mk b/package/binutils/binutils.mk index 535c019567b..0f75c1d98d8 100644 --- a/package/binutils/binutils.mk +++ b/package/binutils/binutils.mk @@ -9,7 +9,7 @@ BINUTILS_VERSION = $(call qstrip,$(BR2_BINUTILS_VERSION)) ifeq ($(BINUTILS_VERSION),) ifeq ($(BR2_arc),y) -BINUTILS_VERSION = arc-2015.06 +BINUTILS_VERSION = arc-2015.12 else BINUTILS_VERSION = 2.24 endif @@ -30,8 +30,8 @@ BINUTILS_LICENSE = GPLv3+, libiberty LGPLv2.1+ BINUTILS_LICENSE_FILES = COPYING3 COPYING.LIB ifeq ($(BINUTILS_FROM_GIT),y) -BINUTILS_DEPENDENCIES += host-texinfo host-flex host-bison -HOST_BINUTILS_DEPENDENCIES += host-texinfo host-flex host-bison +BINUTILS_DEPENDENCIES += host-flex host-bison +HOST_BINUTILS_DEPENDENCIES += host-flex host-bison endif # When binutils sources are fetched from the binutils-gdb repository, @@ -61,6 +61,10 @@ ifeq ($(BR2_PACKAGE_BUSYBOX),y) BINUTILS_DEPENDENCIES += busybox endif +ifeq ($(BR2_PACKAGE_ZLIB),y) +BINUTILS_DEPENDENCIES += zlib +endif + # "host" binutils should actually be "cross" # We just keep the convention of "host utility" for now HOST_BINUTILS_CONF_OPTS = \ @@ -74,6 +78,12 @@ HOST_BINUTILS_CONF_OPTS = \ $(BINUTILS_DISABLE_GDB_CONF_OPTS) \ $(BINUTILS_EXTRA_CONFIG_OPTIONS) +# binutils run configure script of subdirs at make time, so ensure +# our TARGET_CONFIGURE_ARGS are taken into consideration for those +define BINUTILS_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_ARGS) $(MAKE) -C $(@D) +endef + # We just want libbfd, libiberty and libopcodes, # not the full-blown binutils in staging define BINUTILS_INSTALL_STAGING_CMDS diff --git a/package/bitstream/Config.in b/package/bitstream/Config.in new file mode 100644 index 00000000000..9d967a0f583 --- /dev/null +++ b/package/bitstream/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_BITSTREAM + bool "bitstream" + help + biTStream is a set of C headers allowing a simpler access to + binary structures such as specified by MPEG, DVB, IETF, + SMPTE, IEEE, SCTE, etc. + + http://www.videolan.org/developers/bitstream.html diff --git a/package/bitstream/bitstream.hash b/package/bitstream/bitstream.hash new file mode 100644 index 00000000000..7a3b7f8633e --- /dev/null +++ b/package/bitstream/bitstream.hash @@ -0,0 +1,4 @@ +# from https://get.videolan.org/bitstream/1.1/bitstream-1.1.tar.bz2.md5 +md5 88e6e786242196b4d73a5b6075aeb1a2 bitstream-1.1.tar.bz2 +# locally calculated +sha256 90b65f619895d31e652386d5d7d2d2d62cccd44383c1fac9145d659013a2de9e bitstream-1.1.tar.bz2 diff --git a/package/bitstream/bitstream.mk b/package/bitstream/bitstream.mk new file mode 100644 index 00000000000..a76c3c44b50 --- /dev/null +++ b/package/bitstream/bitstream.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# bitstream +# +################################################################################ + +BITSTREAM_VERSION = 1.1 +BITSTREAM_SOURCE = bitstream-$(BITSTREAM_VERSION).tar.bz2 +BITSTREAM_SITE = https://get.videolan.org/bitstream/$(BITSTREAM_VERSION) +BITSTREAM_LICENSE = MIT +BITSTREAM_LICENSE_FILES = COPYING + +# package consists of header files only +BITSTREAM_INSTALL_STAGING = YES +BITSTREAM_INSTALL_TARGET = NO + +define BITSTREAM_INSTALL_STAGING_CMDS + $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) PREFIX=/usr install +endef + +$(eval $(generic-package)) diff --git a/package/blackbox/0001-Fix-configure-ac.patch b/package/blackbox/0001-Fix-configure-ac.patch deleted file mode 100644 index 180447332c5..00000000000 --- a/package/blackbox/0001-Fix-configure-ac.patch +++ /dev/null @@ -1,34 +0,0 @@ -blackbox: merge existing patch and fix lpthread - -Merge the current configure patch into this one so it will patch -configure.ac instead. Also add pthread to libs to fix a linkage problem. - -Signed-off-by: Vicente Olivert Riera ---- blackbox-0.70.1/configure.ac.orig 2013-12-17 11:02:38.799055141 +0000 -+++ blackbox-0.70.1/configure.ac 2013-12-17 11:09:08.421204545 +0000 -@@ -8,14 +8,6 @@ AC_CONFIG_SRCDIR([src/blackbox.cc]) - dnl Determine default prefix - test "x$prefix" = "xNONE" && prefix="$ac_default_prefix" - --dnl Look in the most logical places for external libraries --CPPFLAGS="$CPPFLAGS -I$prefix/include" --LDFLAGS="$LDFLAGS -L$prefix/lib" --if test "x$prefix" != "x/usr/local"; then -- CPPFLAGS="$CPPFLAGS -I/usr/local/include" -- LDFLAGS="$LDFLAGS -L/usr/local/lib" --fi -- - dnl Locate required external software - AC_PROG_CC - -@@ -128,6 +120,10 @@ int main(int, char **) - [AC_MSG_RESULT([no])] - ) - -+dnl required pthread -+AC_CHECK_LIB([pthread], -+ [pthread_cancel], -+ [LIBS="$LIBS -lpthread"]) - dnl needed for some X11 libs - AC_CHECK_LIB([nsl], - [t_open], diff --git a/package/blackbox/0002-gcc43.patch b/package/blackbox/0002-gcc43.patch deleted file mode 100644 index 1026bd5c80e..00000000000 --- a/package/blackbox/0002-gcc43.patch +++ /dev/null @@ -1,106 +0,0 @@ -diff -Naupr blackbox-0.70.1.orig/lib/Image.cc blackbox-0.70.1/lib/Image.cc ---- blackbox-0.70.1.orig/lib/Image.cc 2005-04-08 17:41:09.000000000 +0200 -+++ blackbox-0.70.1/lib/Image.cc 2008-02-24 08:31:28.000000000 +0100 -@@ -42,8 +42,9 @@ - - #include - #include --#include --#include -+#include -+#include -+#include - - // #define COLORTABLE_DEBUG - // #define MITSHM_DEBUG -diff -Naupr blackbox-0.70.1.orig/lib/Resource.cc blackbox-0.70.1/lib/Resource.cc ---- blackbox-0.70.1.orig/lib/Resource.cc 2005-04-06 23:16:50.000000000 +0200 -+++ blackbox-0.70.1/lib/Resource.cc 2008-02-24 08:33:11.000000000 +0100 -@@ -28,7 +28,8 @@ - #include - #include - --#include -+#include -+#include - - - bt::Resource::Resource(void) -diff -Naupr blackbox-0.70.1.orig/lib/XDG.cc blackbox-0.70.1/lib/XDG.cc ---- blackbox-0.70.1.orig/lib/XDG.cc 2005-04-06 16:04:38.000000000 +0200 -+++ blackbox-0.70.1/lib/XDG.cc 2008-02-24 08:34:11.000000000 +0100 -@@ -25,7 +25,8 @@ - #include "Util.hh" - #include "XDG.hh" - --#include -+#include -+#include - - - // make sure directory names end with a slash -diff -Naupr blackbox-0.70.1.orig/src/BlackboxResource.cc blackbox-0.70.1/src/BlackboxResource.cc ---- blackbox-0.70.1.orig/src/BlackboxResource.cc 2005-10-18 09:34:46.000000000 +0200 -+++ blackbox-0.70.1/src/BlackboxResource.cc 2008-02-24 08:34:49.000000000 +0100 -@@ -33,6 +33,8 @@ - #include - #include - -+#include -+ - - BlackboxResource::BlackboxResource(const std::string& rc): rc_file(rc) { - screen_resources = 0; -diff -Naupr blackbox-0.70.1.orig/src/main.cc blackbox-0.70.1/src/main.cc ---- blackbox-0.70.1.orig/src/main.cc 2005-01-03 10:42:57.000000000 +0100 -+++ blackbox-0.70.1/src/main.cc 2008-02-24 08:37:16.000000000 +0100 -@@ -34,7 +34,8 @@ - #include "blackbox.hh" - #include "../version.h" - --#include -+#include -+#include - - - static void showHelp(int exitval) { -diff -Naupr blackbox-0.70.1.orig/src/Screen.cc blackbox-0.70.1/src/Screen.cc ---- blackbox-0.70.1.orig/src/Screen.cc 2005-10-18 10:07:22.000000000 +0200 -+++ blackbox-0.70.1/src/Screen.cc 2008-02-24 08:35:46.000000000 +0100 -@@ -45,8 +45,9 @@ - #include - #include - #include --#include - #include -+#include -+#include - - - static bool running = true; -diff -Naupr blackbox-0.70.1.orig/src/ScreenResource.cc blackbox-0.70.1/src/ScreenResource.cc ---- blackbox-0.70.1.orig/src/ScreenResource.cc 2005-04-13 07:54:08.000000000 +0200 -+++ blackbox-0.70.1/src/ScreenResource.cc 2008-02-24 08:36:31.000000000 +0100 -@@ -33,6 +33,8 @@ - - #include - -+#include -+ - - static const int iconify_width = 9; - static const int iconify_height = 9; -diff -Naupr blackbox-0.70.1.orig/util/bsetroot.cc blackbox-0.70.1/util/bsetroot.cc ---- blackbox-0.70.1.orig/util/bsetroot.cc 2005-03-15 08:01:37.000000000 +0100 -+++ blackbox-0.70.1/util/bsetroot.cc 2008-02-24 08:38:41.000000000 +0100 -@@ -30,7 +30,9 @@ - #include - - #include --#include -+#include -+#include -+#include - - - // ignore all X errors diff --git a/package/blackbox/0003-gcc46-textpropertytostring.patch b/package/blackbox/0003-gcc46-textpropertytostring.patch deleted file mode 100644 index af03be4b9c9..00000000000 --- a/package/blackbox/0003-gcc46-textpropertytostring.patch +++ /dev/null @@ -1,34 +0,0 @@ -[PATCH] fix build issue with gcc 4.6+ - -Debian patch from http://patch-tracker.debian.org/patch/series/dl/blackbox/0.70.1-13/textpropertytostring-unconditional.diff - -Signed-off-by: Peter Korsgaard - -Description: Declare bt::textPropertyToString unconditionally. -Author: Jakub Wilk -Forwarded: no -Bug-Debian: http://bugs.debian.org/614468 -Last-Update: 2011-03-12 - ---- a/lib/Util.hh -+++ b/lib/Util.hh -@@ -25,6 +25,8 @@ - #ifndef __Util_hh - #define __Util_hh - -+#include -+ - #include - #include - -@@ -94,10 +96,8 @@ - - std::string tolower(const std::string &string); - --#ifdef _XUTIL_H_ - std::string textPropertyToString(::Display *display, - ::XTextProperty& text_prop); --#endif - - } // namespace bt - diff --git a/package/blackbox/Config.in b/package/blackbox/Config.in deleted file mode 100644 index 8b61c735e2d..00000000000 --- a/package/blackbox/Config.in +++ /dev/null @@ -1,18 +0,0 @@ -config BR2_PACKAGE_BLACKBOX - bool "blackbox" - depends on BR2_PACKAGE_XORG7 - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_MMU # fork() - # upstream dead since 2005 - depends on BR2_DEPRECATED_SINCE_2014_08 - select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE - select BR2_PACKAGE_XLIB_LIBX11 - help - Blackbox is a fast, lightweight window manager for the X - Window System. - - http://blackboxwm.sourceforge.net/ - -comment "blackbox needs a toolchain w/ C++" - depends on BR2_PACKAGE_XORG7 && BR2_USE_MMU - depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/blackbox/blackbox.hash b/package/blackbox/blackbox.hash deleted file mode 100644 index 5aae1a9258f..00000000000 --- a/package/blackbox/blackbox.hash +++ /dev/null @@ -1,2 +0,0 @@ -# Locally computed: -sha256 92c2be347253f29b10063d579b4267a21516cb322a41b5e83d770fa6d44afd21 blackbox-0.70.1.tar.bz2 diff --git a/package/blackbox/blackbox.mk b/package/blackbox/blackbox.mk deleted file mode 100644 index a73bc5b84aa..00000000000 --- a/package/blackbox/blackbox.mk +++ /dev/null @@ -1,23 +0,0 @@ -################################################################################ -# -# blackbox -# -################################################################################ - -BLACKBOX_VERSION = 0.70.1 -BLACKBOX_SOURCE = blackbox-$(BLACKBOX_VERSION).tar.bz2 -BLACKBOX_SITE = http://downloads.sourceforge.net/project/blackboxwm/blackboxwm/Blackbox%20$(BLACKBOX_VERSION) -BLACKBOX_CONF_OPTS = \ - --x-includes=$(STAGING_DIR)/usr/include/X11 \ - --x-libraries=$(STAGING_DIR)/usr/lib -BLACKBOX_DEPENDENCIES = xlib_libX11 -BLACKBOX_LICENSE = MIT -BLACKBOX_LICENSE_FILES = LICENSE - -ifneq ($(BR2_ENABLE_LOCALE),y) -BLACKBOX_DEPENDENCIES += libiconv -endif - -BLACKBOX_AUTORECONF = YES - -$(eval $(autotools-package)) diff --git a/package/bluez5_utils/0001-Link-mcaptest-with-lrt-when-needed.patch b/package/bluez5_utils/0001-Link-mcaptest-with-lrt-when-needed.patch deleted file mode 100644 index a36e2850629..00000000000 --- a/package/bluez5_utils/0001-Link-mcaptest-with-lrt-when-needed.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 54b8977c2f854d04f9c6383e2cac76ea4cde3eaa Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Mon, 29 Dec 2014 12:23:41 +0100 -Subject: [PATCH] Link mcaptest with -lrt when needed - -The mcaptest tool uses the profiles/health/mcap.c source file, which -calls clock_getres(). This function is defined in librt in some C -libraries, so mcaptest should be linked against librt when needed, -otherwise one gets link failures such as: - -ld: profiles/health/mcap.o: undefined reference to symbol 'clock_getres@@GLIBC_2.2.5' -ld: note: 'clock_getres@@GLIBC_2.2.5' is defined in DSO [...]/sysroot/lib64/librt.so.1 so try adding it to the linker command line -[...]/sysroot/lib64/librt.so.1: could not read symbols: Invalid operation -collect2: error: ld returned 1 exit status -Makefile:4184: recipe for target 'tools/mcaptest' failed - -Signed-off-by: Thomas Petazzoni ---- - Makefile.tools | 2 +- - configure.ac | 5 +++++ - 2 files changed, 6 insertions(+), 1 deletion(-) - -diff --git a/Makefile.tools b/Makefile.tools -index bc827fe..fef3db5 100644 ---- a/Makefile.tools -+++ b/Makefile.tools -@@ -195,7 +195,7 @@ tools_mcaptest_SOURCES = tools/mcaptest.c \ - btio/btio.h btio/btio.c \ - src/log.c src/log.h \ - profiles/health/mcap.h profiles/health/mcap.c --tools_mcaptest_LDADD = lib/libbluetooth-internal.la @GLIB_LIBS@ -+tools_mcaptest_LDADD = lib/libbluetooth-internal.la @GLIB_LIBS@ @RT_LIBS@ - - dist_man_MANS += tools/hciattach.1 tools/hciconfig.1 \ - tools/hcitool.1 tools/hcidump.1 \ -diff --git a/configure.ac b/configure.ac -index 4739c10..b0afba6 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -54,6 +54,11 @@ AC_CHECK_LIB(pthread, pthread_create, dummy=yes, - AC_CHECK_LIB(dl, dlopen, dummy=yes, - AC_MSG_ERROR(dynamic linking loader is required)) - -+AC_SEARCH_LIBS([clock_getres], [rt], -+ [test "$ac_cv_search_clock_getres" = "none required" || -+ RT_LIBS=$ac_cv_search_clock_getres]) -+AC_SUBST([RT_LIBS]) -+ - PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.28, dummy=yes, - AC_MSG_ERROR(GLib >= 2.28 is required)) - AC_SUBST(GLIB_CFLAGS) --- -2.1.0 - diff --git a/package/bluez5_utils/0001-tools-avinfo-Fix-big-endian-build.patch b/package/bluez5_utils/0001-tools-avinfo-Fix-big-endian-build.patch new file mode 100644 index 00000000000..06c368d87e8 --- /dev/null +++ b/package/bluez5_utils/0001-tools-avinfo-Fix-big-endian-build.patch @@ -0,0 +1,39 @@ +From 01d85fdf6a45150e82143803be3373d779d18522 Mon Sep 17 00:00:00 2001 +From: John Keeping +Date: Wed, 24 Feb 2016 13:57:38 +0000 +Subject: [PATCH] tools/avinfo: Fix big endian build + +Commit 101b439 (tools/avinfo: Add partial support for Sony LDAC) added a +new a2dp_ldac_t structure but only inside a little endian ifdef. Add +the same structure in the big endian code. + +The structure definition doesn't differ for the big/little endian cases +but if the unknown fields are discovered in the future it might, so a +copy is added rather than pulling the existing definition below the +endif. + +[John: backport from upstream commit 01d85fdf6a45150e82143803be3373d779d18522.] +Signed-off-by: John Keeping +--- + profiles/audio/a2dp-codecs.h | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/profiles/audio/a2dp-codecs.h b/profiles/audio/a2dp-codecs.h +index e9da0bf..4fb5c0c 100644 +--- a/profiles/audio/a2dp-codecs.h ++++ b/profiles/audio/a2dp-codecs.h +@@ -234,6 +234,11 @@ typedef struct { + uint8_t channel_mode:4; + } __attribute__ ((packed)) a2dp_aptx_t; + ++typedef struct { ++ a2dp_vendor_codec_t info; ++ uint8_t unknown[2]; ++} __attribute__ ((packed)) a2dp_ldac_t; ++ + #else + #error "Unknown byte order" + #endif +-- +2.7.0.226.gfe986fe + diff --git a/package/bluez5_utils/0002-src-shared-ecc.c-include-config.h.patch b/package/bluez5_utils/0002-src-shared-ecc.c-include-config.h.patch deleted file mode 100644 index f339c887b38..00000000000 --- a/package/bluez5_utils/0002-src-shared-ecc.c-include-config.h.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 3c5a93d0be4457120d17da70918f9eb8799d6c52 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Thu, 1 Jan 2015 22:33:34 +0100 -Subject: [PATCH] src/shared/ecc.c: include - -The ecc.c file forgets to include . This causes build -failures with certain C libraries, because ecc.c uses O_CLOEXEC, which -is only available when _GNU_SOURCE is defined. And _GNU_SOURCE gets -defined by , so it should be included. - -Signed-off-by: Thomas Petazzoni ---- - src/shared/ecc.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/shared/ecc.c b/src/shared/ecc.c -index 33c4187..41be02b 100644 ---- a/src/shared/ecc.c -+++ b/src/shared/ecc.c -@@ -24,6 +24,10 @@ - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -+#ifdef HAVE_CONFIG_H -+#include -+#endif -+ - #include - #include - #include --- -2.1.0 - diff --git a/package/bluez5_utils/Config.in b/package/bluez5_utils/Config.in index 80c383030be..18b7bbf0e07 100644 --- a/package/bluez5_utils/Config.in +++ b/package/bluez5_utils/Config.in @@ -6,6 +6,9 @@ config BR2_PACKAGE_BLUEZ5_UTILS depends on !BR2_STATIC_LIBS # uses dlfcn depends on !BR2_PACKAGE_BLUEZ_UTILS # conflicts with 4.x version depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 + # wordexp support not in our uClibc configuration + depends on !BR2_TOOLCHAIN_USES_UCLIBC + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_DBUS select BR2_PACKAGE_LIBGLIB2 help @@ -74,9 +77,11 @@ config BR2_PACKAGE_BLUEZ5_UTILS_TEST endif -comment "bluez5-utils needs a toolchain w/ wchar, threads, headers >= 3.4, dynamic library" +comment "bluez5-utils needs a glibc or musl toolchain w/ wchar, threads, headers >= 3.4, dynamic library" depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ - !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 || BR2_STATIC_LIBS + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 || BR2_STATIC_LIBS || \ + !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_USE_MMU comment "bluez5-utils conflicts with older bluez-utils version" diff --git a/package/bluez5_utils/bluez5_utils.hash b/package/bluez5_utils/bluez5_utils.hash index 8bddb71f17f..75c53b3010e 100644 --- a/package/bluez5_utils/bluez5_utils.hash +++ b/package/bluez5_utils/bluez5_utils.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/bluetooth/sha256sums.asc: -sha256 fbf33cebc76f8c81f28f0d67c71a8a1ec4b04b087460ec7353f7e0c207a1f981 bluez-5.27.tar.xz +sha256 c14ba9ddcb0055522073477b8fd8bf1ddf5d219e75fdfd4699b7e0ce5350d6b0 bluez-5.37.tar.xz diff --git a/package/bluez5_utils/bluez5_utils.mk b/package/bluez5_utils/bluez5_utils.mk index 4c50e535b46..1308e4e7d35 100644 --- a/package/bluez5_utils/bluez5_utils.mk +++ b/package/bluez5_utils/bluez5_utils.mk @@ -4,12 +4,12 @@ # ################################################################################ -BLUEZ5_UTILS_VERSION = 5.27 +BLUEZ5_UTILS_VERSION = 5.37 BLUEZ5_UTILS_SOURCE = bluez-$(BLUEZ5_UTILS_VERSION).tar.xz BLUEZ5_UTILS_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth BLUEZ5_UTILS_INSTALL_STAGING = YES BLUEZ5_UTILS_DEPENDENCIES = dbus libglib2 -BLUEZ5_UTILS_LICENSE = GPLv2+ LGPLv2.1+ +BLUEZ5_UTILS_LICENSE = GPLv2+, LGPLv2.1+ BLUEZ5_UTILS_LICENSE_FILES = COPYING COPYING.LIB # 0001-Link-mcaptest-with-lrt.patch diff --git a/package/bluez_utils/0003-fix-compilation-issues-with-musl.patch b/package/bluez_utils/0003-fix-compilation-issues-with-musl.patch new file mode 100644 index 00000000000..d8b48eaad27 --- /dev/null +++ b/package/bluez_utils/0003-fix-compilation-issues-with-musl.patch @@ -0,0 +1,61 @@ +From 8aa6aa4ba2d9d00c91e36e146895af20cbc00d17 Mon Sep 17 00:00:00 2001 +From: Brendan Heading +Date: Wed, 2 Sep 2015 12:10:58 +0100 +Subject: [PATCH 1/1] fix compilation issues with musl. + +- sys/time.h needed for struct timeval +- unistd.h should not be included due to clash with encrypt(3) +- sys/types.h needed for mode_t + +Note that this version of bluez is 3 years old. Recent fixes have gone +into the upstream to address musl compatibility issues, but the upstream +has changed so much that it makes little sense to try to backport these. +This patch is really a stopgap until we move to the latest upstream. + +Upstream-Status: not needed +Signed-off-by: Brendan Heading +--- + compat/bnep.c | 1 + + compat/dund.c | 1 - + src/textfile.h | 1 + + 3 files changed, 2 insertions(+), 1 deletion(-) + +diff --git a/compat/bnep.c b/compat/bnep.c +index 281350b..49226c1 100644 +--- a/compat/bnep.c ++++ b/compat/bnep.c +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + + #include + #include +diff --git a/compat/dund.c b/compat/dund.c +index af1b536..c2f085f 100644 +--- a/compat/dund.c ++++ b/compat/dund.c +@@ -29,7 +29,6 @@ + #include + #include + #include +-#include + #include + #include + #include +diff --git a/src/textfile.h b/src/textfile.h +index dc5fc2b..0148b30 100644 +--- a/src/textfile.h ++++ b/src/textfile.h +@@ -24,6 +24,7 @@ + #ifndef __TEXTFILE_H + #define __TEXTFILE_H + ++#include + int create_dirs(const char *filename, const mode_t mode); + int create_file(const char *filename, const mode_t mode); + int create_name(char *buf, size_t size, const char *path, +-- +2.4.3 + diff --git a/package/bluez_utils/bluez_utils.mk b/package/bluez_utils/bluez_utils.mk index 6327a2824b9..c2e8295154d 100644 --- a/package/bluez_utils/bluez_utils.mk +++ b/package/bluez_utils/bluez_utils.mk @@ -11,7 +11,7 @@ BLUEZ_UTILS_INSTALL_STAGING = YES BLUEZ_UTILS_DEPENDENCIES = dbus libglib2 BLUEZ_UTILS_CONF_OPTS = --enable-test --enable-tools BLUEZ_UTILS_AUTORECONF = YES -BLUEZ_UTILS_LICENSE = GPLv2+ LGPLv2.1+ +BLUEZ_UTILS_LICENSE = GPLv2+, LGPLv2.1+ BLUEZ_UTILS_LICENSE_FILES = COPYING COPYING.LIB # BlueZ 3.x compatibility diff --git a/package/bonnie/Config.in b/package/bonnie/Config.in index 6dbd06df580..4b0adda0d00 100644 --- a/package/bonnie/Config.in +++ b/package/bonnie/Config.in @@ -3,7 +3,8 @@ config BR2_PACKAGE_BONNIE depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_MMU # fork() help - Filesystem tester + A benchmark suite that is aimed at performing a number of + simple tests of hard drive and file system performance. http://www.coker.com.au/bonnie++/ diff --git a/package/boost/0002-fix-uclibc-eventfd.patch b/package/boost/0002-fix-uclibc-eventfd.patch new file mode 100644 index 00000000000..1b7eb8723ce --- /dev/null +++ b/package/boost/0002-fix-uclibc-eventfd.patch @@ -0,0 +1,38 @@ +Use eventfd() function with uClibc + +The Boost eventfd code either directly makes the eventfd system call +using __NR_eventfd (when __GLIBC_MINOR is less than 8), or otherwise +uses the eventfd() function provided by the C library. + +However, since uClibc pretends to be glibc 2.2, the Boost eventfd code +directly uses the system call. While it works fine on most +architectures, it doesn't on ARC since __NR_eventfd is not defined on +this architecture. However, eventfd() is properly implemented. + +So, this patch adjusts the logic used by Boost to consider uClibc as a +C library providing the eventfd() function. + +Signed-off-by: Thomas Petazzoni + +Index: b/boost/asio/detail/impl/eventfd_select_interrupter.ipp +=================================================================== +--- a/boost/asio/detail/impl/eventfd_select_interrupter.ipp ++++ b/boost/asio/detail/impl/eventfd_select_interrupter.ipp +@@ -23,7 +23,7 @@ + #include + #include + #include +-#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 8 ++#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 8 && !defined(__UCLIBC__) + # include + #else // __GLIBC__ == 2 && __GLIBC_MINOR__ < 8 + # include +@@ -46,7 +46,7 @@ + + void eventfd_select_interrupter::open_descriptors() + { +-#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 8 ++#if __GLIBC__ == 2 && __GLIBC_MINOR__ < 8 && !defined(__UCLIBC__) + write_descriptor_ = read_descriptor_ = syscall(__NR_eventfd, 0); + if (read_descriptor_ != -1) + { diff --git a/package/boost/0002-gcc.jam-compiler-options-fix.patch b/package/boost/0002-gcc.jam-compiler-options-fix.patch deleted file mode 100644 index c64525000f4..00000000000 --- a/package/boost/0002-gcc.jam-compiler-options-fix.patch +++ /dev/null @@ -1,37 +0,0 @@ -From a891e48ed0b647b7bf550ad1d179398b23d0726e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Sat, 2 May 2015 13:47:54 +0200 -Subject: [PATCH] gcc.jam compiler options fix -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Only PowerPC, SPARC, and x86 do support the -m32 and -m64 compiler options [1]. - -Rather then excluding all architectures not supporting these options as it is -done in commit c0634341d9ee2c02d3a55c91dafb988afc066c49 [2], include all -architectures that do support them. - -[1] https://gcc.gnu.org/onlinedocs/gcc/Option-Summary.html -[2] https://github.com/boostorg/build/commit/c0634341d9ee2c02d3a55c91dafb988afc066c49 - -Signed-off-by: Jörg Krause ---- - src/tools/gcc.jam | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam -index db04534..fbe8ab0 100644 ---- a/tools/build/src/tools/gcc.jam -+++ b/tools/build/src/tools/gcc.jam -@@ -451,7 +451,7 @@ rule setup-address-model ( targets * : sources * : properties * ) - else - { - local arch = [ feature.get-values architecture : $(properties) ] ; -- if $(arch) != arm -+ if $(arch) = power || $(arch) = sparc || $(arch) = x86 - { - if $(model) = 32 - { --- -2.3.7 diff --git a/package/boost/0003-Remove-bogus-c3-cpu-varant-for-SPARC.patch b/package/boost/0003-Remove-bogus-c3-cpu-varant-for-SPARC.patch deleted file mode 100644 index a4d39b31dbe..00000000000 --- a/package/boost/0003-Remove-bogus-c3-cpu-varant-for-SPARC.patch +++ /dev/null @@ -1,42 +0,0 @@ -From ec60c37295146bb80aa44a92cf416027b75b5ff7 Mon Sep 17 00:00:00 2001 -From: Vladimir Prus -Date: Mon, 27 Apr 2015 19:12:54 +0300 -Subject: [PATCH] Remove bogus 'c3' cpu varant for SPARC. - -Signed-off-by: Gustavo Zacarias ---- - src/tools/gcc.jam | 3 +-- - src/tools/gcc.py | 3 +-- - 2 files changed, 2 insertions(+), 4 deletions(-) - -diff --git a/src/tools/gcc.jam b/src/tools/gcc.jam -index eff95ae..128ab84 100644 ---- a/tools/build/src/tools/gcc.jam -+++ b/tools/build/src/tools/gcc.jam -@@ -1138,8 +1138,7 @@ cpu-flags gcc OPTIONS : x86 : c3-2 : -march=c3-2 ; - ## - cpu-flags gcc OPTIONS : x86 : atom : -march=atom ; - # Sparc --cpu-flags gcc OPTIONS : sparc : c3 : -mcpu=c3 : default ; --cpu-flags gcc OPTIONS : sparc : v7 : -mcpu=v7 ; -+cpu-flags gcc OPTIONS : sparc : v7 : -mcpu=v7 : default ; - cpu-flags gcc OPTIONS : sparc : cypress : -mcpu=cypress ; - cpu-flags gcc OPTIONS : sparc : v8 : -mcpu=v8 ; - cpu-flags gcc OPTIONS : sparc : supersparc : -mcpu=supersparc ; -diff --git a/src/tools/gcc.py b/src/tools/gcc.py -index a13ce7a..d2d3294 100644 ---- a/tools/build/src/tools/gcc.py -+++ b/tools/build/src/tools/gcc.py -@@ -789,8 +789,7 @@ cpu_flags('gcc', 'OPTIONS', 'x86', 'atom', ['-march=atom']) - # Sparc - flags('gcc', 'OPTIONS', ['sparc/32'], ['-m32']) - flags('gcc', 'OPTIONS', ['sparc/64'], ['-m64']) --cpu_flags('gcc', 'OPTIONS', 'sparc', 'c3', ['-mcpu=c3'], default=True) --cpu_flags('gcc', 'OPTIONS', 'sparc', 'v7', ['-mcpu=v7']) -+cpu_flags('gcc', 'OPTIONS', 'sparc', 'v7', ['-mcpu=v7'], default=True) - cpu_flags('gcc', 'OPTIONS', 'sparc', 'cypress', ['-mcpu=cypress']) - cpu_flags('gcc', 'OPTIONS', 'sparc', 'v8', ['-mcpu=v8']) - cpu_flags('gcc', 'OPTIONS', 'sparc', 'supersparc', ['-mcpu=supersparc']) --- -2.3.6 - diff --git a/package/boost/0003-fix-libquadmath-issue.patch b/package/boost/0003-fix-libquadmath-issue.patch new file mode 100644 index 00000000000..49772e828e5 --- /dev/null +++ b/package/boost/0003-fix-libquadmath-issue.patch @@ -0,0 +1,91 @@ +From 74ff2db959c5fa75bec770c41ed2951a740fe936 Mon Sep 17 00:00:00 2001 +From: jzmaddock +Date: Fri, 1 Jan 2016 16:49:48 +0000 +Subject: [PATCH] Change config to not use it at all if we don't + have __has_include as GCC may be configured with --disable-libquadmath but + still signal that it supports __float128 + +Backported from: 74ff2db959c5fa75bec770c41ed2951a740fe936 + +[Jörg Krause: adjust pathes to match sourceforge release tarball] +Signed-off-by: Jörg Krause + +--- + boost/math/special_functions/fpclassify.hpp | 16 +++++++++++++--- + boost/math/tools/config.hpp | 12 ------------ + 2 files changed, 13 insertions(+), 15 deletions(-) + +diff --git a/boost/math/special_functions/fpclassify.hpp b/boost/math/special_functions/fpclassify.hpp +index 0a4e1ac..58fad13 100644 +--- a/boost/math/special_functions/fpclassify.hpp ++++ b/boost/math/special_functions/fpclassify.hpp +@@ -81,7 +81,12 @@ is used. + #include + #endif + #ifdef BOOST_MATH_USE_FLOAT128 ++#ifdef __has_include ++#if __has_include("quadmath.h") + #include "quadmath.h" ++#define BOOST_MATH_HAS_QUADMATH_H ++#endif ++#endif + #endif + + #ifdef BOOST_NO_STDC_NAMESPACE +@@ -124,9 +129,14 @@ inline bool is_nan_helper(T, const boost::false_type&) + { + return false; + } +-#ifdef BOOST_MATH_USE_FLOAT128 ++#if defined(BOOST_MATH_USE_FLOAT128) ++#if defined(BOOST_MATH_HAS_QUADMATH_H) + inline bool is_nan_helper(__float128 f, const boost::true_type&) { return ::isnanq(f); } + inline bool is_nan_helper(__float128 f, const boost::false_type&) { return ::isnanq(f); } ++#else ++inline bool is_nan_helper(__float128 f, const boost::true_type&) { return ::isnan(static_cast(f)); } ++inline bool is_nan_helper(__float128 f, const boost::false_type&) { return ::isnan(static_cast(f)); } ++#endif + #endif + } + +@@ -519,7 +529,7 @@ inline bool (isinf)(long double x) + return detail::isinf_impl(static_cast(x), method()); + } + #endif +-#ifdef BOOST_MATH_USE_FLOAT128 ++#if defined(BOOST_MATH_USE_FLOAT128) && defined(BOOST_MATH_HAS_QUADMATH_H) + template<> + inline bool (isinf)(__float128 x) + { +@@ -611,7 +621,7 @@ inline bool (isnan)(long double x) + return detail::isnan_impl(x, method()); + } + #endif +-#ifdef BOOST_MATH_USE_FLOAT128 ++#if defined(BOOST_MATH_USE_FLOAT128) && defined(BOOST_MATH_HAS_QUADMATH_H) + template<> + inline bool (isnan)(__float128 x) + { +diff --git a/boost/math/tools/config.hpp b/boost/math/tools/config.hpp +index ffd0ab4..75d29b6 100644 +--- a/boost/math/tools/config.hpp ++++ b/boost/math/tools/config.hpp +@@ -265,18 +265,6 @@ + # define BOOST_MATH_INT_VALUE_SUFFIX(RV, SUF) RV##SUF + #endif + // +-// Test whether to support __float128, if we don't have quadmath.h then this can't currently work: +-// +-#ifndef BOOST_MATH_USE_FLOAT128 +-#ifdef __has_include +-#if ! __has_include("quadmath.h") +-#define BOOST_MATH_DISABLE_FLOAT128 +-#endif +-#elif !defined(BOOST_ARCH_X86) +-#define BOOST_MATH_DISABLE_FLOAT128 +-#endif +-#endif +-// + // And then the actual configuration: + // + #if defined(_GLIBCXX_USE_FLOAT128) && defined(BOOST_GCC) && !defined(__STRICT_ANSI__) \ diff --git a/package/boost/0004-fix-declaration-error-with-gcc-4-4.patch b/package/boost/0004-fix-declaration-error-with-gcc-4-4.patch new file mode 100644 index 00000000000..073ec041dc7 --- /dev/null +++ b/package/boost/0004-fix-declaration-error-with-gcc-4-4.patch @@ -0,0 +1,50 @@ +From a4e9686f8a0258bc30f9da2abab65673d6b9bd50 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jupp=20M=C3=BCller?= +Date: Wed, 23 Dec 2015 09:18:51 +0100 +Subject: [PATCH] Fix declaration changes meaning error with GCC 4.4.7 (#11856) + +Backported from a4e9686f8a0258bc30f9da2abab65673d6b9bd50 + +[Jörg Krause: adjust pathes to match sourceforge release tarball] +Signed-off-by: Jörg Krause + +--- + libs/container/src/pool_resource.cpp | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/libs/container/src/pool_resource.cpp b/libs/container/src/pool_resource.cpp +index 4df7ee2..45f1564 100644 +--- a/libs/container/src/pool_resource.cpp ++++ b/libs/container/src/pool_resource.cpp +@@ -32,11 +32,11 @@ namespace pmr { + class pool_data_t + : public block_slist_base<> + { +- typedef block_slist_base<> block_slist_base; ++ typedef block_slist_base<> block_slist_base_t; + + public: + explicit pool_data_t(std::size_t initial_blocks_per_chunk) +- : block_slist_base(), next_blocks_per_chunk(initial_blocks_per_chunk) ++ : block_slist_base_t(), next_blocks_per_chunk(initial_blocks_per_chunk) + { slist_algo::init_header(&free_slist); } + + void *allocate_block() BOOST_NOEXCEPT +@@ -59,7 +59,7 @@ class pool_data_t + void release(memory_resource &upstream) + { + slist_algo::init_header(&free_slist); +- this->block_slist_base::release(upstream); ++ this->block_slist_base_t::release(upstream); + next_blocks_per_chunk = pool_options_minimum_max_blocks_per_chunk; + } + +@@ -72,7 +72,7 @@ class pool_data_t + + //Minimum block size is at least max_align, so all pools allocate sizes that are multiple of max_align, + //meaning that all blocks are max_align-aligned. +- char *p = static_cast(block_slist_base::allocate(blocks_per_chunk*pool_block, mr)); ++ char *p = static_cast(block_slist_base_t::allocate(blocks_per_chunk*pool_block, mr)); + + //Create header types. This is no-throw + for(std::size_t i = 0, max = blocks_per_chunk; i != max; ++i){ diff --git a/package/boost/0005-fix-undeclared-isnan.patch b/package/boost/0005-fix-undeclared-isnan.patch new file mode 100644 index 00000000000..95d8fedc786 --- /dev/null +++ b/package/boost/0005-fix-undeclared-isnan.patch @@ -0,0 +1,32 @@ +From fbd1393858719c7bda7d251f742950c1bc691ea8 Mon Sep 17 00:00:00 2001 +From: Kohei Takahashi +Date: Wed, 6 Jan 2016 19:39:55 +0900 +Subject: [PATCH] Qualify std:: for isnan in some situation. + +Because isnan is implemented as a macro and libstdc++ undef it within + (at least FreeBSD 10). + +Backported from fbd1393858719c7bda7d251f742950c1bc691ea8 + +[Jörg Krause: adjust pathes to match sourceforge release tarball] +Signed-off-by: Jörg Krause + +--- + boost/math/special_functions/fpclassify.hpp | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/boost/math/special_functions/fpclassify.hpp b/boost/math/special_functions/fpclassify.hpp +index 58fad13..d83e111 100644 +--- a/boost/math/special_functions/fpclassify.hpp ++++ b/boost/math/special_functions/fpclassify.hpp +@@ -133,6 +133,10 @@ inline bool is_nan_helper(T, const boost::false_type&) + #if defined(BOOST_MATH_HAS_QUADMATH_H) + inline bool is_nan_helper(__float128 f, const boost::true_type&) { return ::isnanq(f); } + inline bool is_nan_helper(__float128 f, const boost::false_type&) { return ::isnanq(f); } ++#elif defined(BOOST_GNU_STDLIB) && BOOST_GNU_STDLIB && \ ++ _GLIBCXX_USE_C99_MATH && !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC ++inline bool is_nan_helper(__float128 f, const boost::true_type&) { return std::isnan(static_cast(f)); } ++inline bool is_nan_helper(__float128 f, const boost::false_type&) { return std::isnan(static_cast(f)); } + #else + inline bool is_nan_helper(__float128 f, const boost::true_type&) { return ::isnan(static_cast(f)); } + inline bool is_nan_helper(__float128 f, const boost::false_type&) { return ::isnan(static_cast(f)); } diff --git a/package/boost/0006-uclibc-fenv.patch b/package/boost/0006-uclibc-fenv.patch new file mode 100644 index 00000000000..ea10f8cc971 --- /dev/null +++ b/package/boost/0006-uclibc-fenv.patch @@ -0,0 +1,26 @@ +Disable fenv.h support for uClibc-based toolchains. + +The boost build system does not recognize the fact that fenv.h is an +optional module in uClibc and tries to use it even if UCLIBC_HAS_FENV +is disabled. This patch disables fenv support completely when compiling +with a uClibc-based toolchain. Bug was reported upstream: +https://svn.boost.org/trac/boost/ticket/11756 + +Signed-off-by: Bernd Kuhls + +--- boost_1_60_0.org/boost/config/platform/linux.hpp 2015-12-08 19:55:19.000000000 +0100 ++++ boost_1_60_0/boost/config/platform/linux.hpp 2016-02-06 12:35:25.692754553 +0100 +@@ -47,6 +47,13 @@ + #endif + + // ++// uClibc has no support for fenv.h ++// ++#if defined(__UCLIBC__) ++# define BOOST_NO_FENV_H ++#endif ++ ++// + // If glibc is past version 2 then we definitely have + // gettimeofday, earlier versions may or may not have it: + // diff --git a/package/boost/Config.in b/package/boost/Config.in index ac701524f91..ed67285a58e 100644 --- a/package/boost/Config.in +++ b/package/boost/Config.in @@ -3,8 +3,7 @@ comment "boost needs a toolchain w/ C++, threads, wchar" config BR2_PACKAGE_BOOST_ARCH_SUPPORTS bool - default y if !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 && \ - !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 + default y if !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII config BR2_PACKAGE_BOOST bool "boost" @@ -65,10 +64,22 @@ config BR2_PACKAGE_BOOST_CHRONO config BR2_PACKAGE_BOOST_CONTAINER bool "boost-container" +# see +# http://www.boost.org/doc/libs/1_59_0/libs/context/doc/html/context/architectures.html +# for the list of supported architectures. Sparc pretends to be +# supported, but it doesn't build. config BR2_PACKAGE_BOOST_CONTEXT bool "boost-context" depends on (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel \ - || BR2_powerpc || BR2_sparc || BR2_x86_64) + || BR2_powerpc || BR2_x86_64) + +config BR2_PACKAGE_BOOST_COROUTINE + bool "boost-coroutine" + depends on BR2_PACKAGE_BOOST_CONTEXT + +config BR2_PACKAGE_BOOST_COROUTINE2 + bool "boost-coroutine2" + depends on BR2_PACKAGE_BOOST_CONTEXT config BR2_PACKAGE_BOOST_DATE_TIME bool "boost-date_time" @@ -92,6 +103,7 @@ config BR2_PACKAGE_BOOST_IOSTREAMS config BR2_PACKAGE_BOOST_LOCALE bool "boost-locale" + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE config BR2_PACKAGE_BOOST_LOG bool "boost-log" diff --git a/package/boost/boost.hash b/package/boost/boost.hash index 706eea276eb..294282a6fd9 100644 --- a/package/boost/boost.hash +++ b/package/boost/boost.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/boost/files/boost/1.58.0/ -md5 b8839650e61e9c1c0a89f371dd475546 boost_1_58_0.tar.bz2 -sha1 2fc96c1651ac6fe9859b678b165bd78dc211e881 boost_1_58_0.tar.bz2 +# From http://sourceforge.net/projects/boost/files/boost/1.60.0/ +md5 65a840e1a0b13a558ff19eeb2c4f0cbe boost_1_60_0.tar.bz2 +sha1 7f56ab507d3258610391b47fef6b11635861175a boost_1_60_0.tar.bz2 diff --git a/package/boost/boost.mk b/package/boost/boost.mk index cc3ba9ee50e..15f0b77a947 100644 --- a/package/boost/boost.mk +++ b/package/boost/boost.mk @@ -4,7 +4,7 @@ # ################################################################################ -BOOST_VERSION = 1.58.0 +BOOST_VERSION = 1.60.0 BOOST_SOURCE = boost_$(subst .,_,$(BOOST_VERSION)).tar.bz2 BOOST_SITE = http://downloads.sourceforge.net/project/boost/boost/$(BOOST_VERSION) BOOST_INSTALL_STAGING = YES @@ -16,17 +16,16 @@ HOST_BOOST_DEPENDENCIES = # keep host variant as minimal as possible HOST_BOOST_FLAGS = --without-icu \ --without-libraries=$(subst $(space),$(comma),atomic chrono context \ - coroutine date_time exception filesystem graph graph_parallel \ - iostreams locale log math mpi program_options python random regex \ - serialization signals system test thread timer wave) - -# coroutine breaks on some weak toolchains and it's new for 1.54+ -BOOST_WITHOUT_FLAGS = coroutine + coroutine coroutine2 date_time exception filesystem graph \ + graph_parallel iostreams locale log math mpi program_options python \ + random regex serialization signals system test thread timer wave) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_ATOMIC),,atomic) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CHRONO),,chrono) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CONTAINER),,container) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_CONTEXT),,context) +BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_COROUTINE),,coroutine) +BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_COROUTINE2),,coroutine2) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_DATE_TIME),,date_time) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_EXCEPTION),,exception) BOOST_WITHOUT_FLAGS += $(if $(BR2_PACKAGE_BOOST_FILESYSTEM),,filesystem) @@ -89,9 +88,23 @@ endif BOOST_OPTS += toolset=gcc \ threading=multi \ abi=$(BOOST_ABI) \ - variant=$(if $(BR2_ENABLE_DEBUG),debug,release) \ - link=$(if $(BR2_STATIC_LIBS),static,shared) \ - runtime-link=$(if $(BR2_STATIC_LIBS),static,shared) + variant=$(if $(BR2_ENABLE_DEBUG),debug,release) + +ifeq ($(BR2_sparc64),y) +BOOST_OPTS += architecture=sparc instruction-set=ultrasparc +endif + +ifeq ($(BR2_sparc),y) +BOOST_OPTS += architecture=sparc instruction-set=v8 +endif + +# By default, Boost build and installs both the shared and static +# variants. Override that if we want static only or shared only. +ifeq ($(BR2_STATIC_LIBS),y) +BOOST_OPTS += link=static runtime-link=static +else ifeq ($(BR2_SHARED_LIBS),y) +BOOST_OPTS += link=shared runtime-link=shared +endif ifeq ($(BR2_PACKAGE_BOOST_LOCALE),y) ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) @@ -102,24 +115,30 @@ endif BOOST_DEPENDENCIES += $(if $(BR2_ENABLE_LOCALE),,libiconv) endif -BOOST_WITHOUT_FLAGS_COMMASEPERATED += $(subst $(space),$(comma),$(strip $(BOOST_WITHOUT_FLAGS))) -BOOST_FLAGS += $(if $(BOOST_WITHOUT_FLAGS_COMMASEPERATED), --without-libraries=$(BOOST_WITHOUT_FLAGS_COMMASEPERATED)) +BOOST_WITHOUT_FLAGS_COMMASEPARATED += $(subst $(space),$(comma),$(strip $(BOOST_WITHOUT_FLAGS))) +BOOST_FLAGS += $(if $(BOOST_WITHOUT_FLAGS_COMMASEPARATED), --without-libraries=$(BOOST_WITHOUT_FLAGS_COMMASEPARATED)) BOOST_LAYOUT = $(call qstrip, $(BR2_PACKAGE_BOOST_LAYOUT)) +# how verbose should the build be? +BOOST_OPTS += $(if $(QUIET),-d,-d+1) +HOST_BOOST_OPTS += $(if $(QUIET),-d,-d+1) + define BOOST_CONFIGURE_CMDS (cd $(@D) && ./bootstrap.sh $(BOOST_FLAGS)) echo "using gcc : `$(TARGET_CC) -dumpversion` : $(TARGET_CXX) : \"$(BOOST_TARGET_CXXFLAGS)\" \"$(TARGET_LDFLAGS)\" ;" > $(@D)/user-config.jam echo "" >> $(@D)/user-config.jam endef -define HOST_BOOST_CONFIGURE_CMDS - (cd $(@D) && ./bootstrap.sh $(HOST_BOOST_FLAGS)) - echo "using gcc : `$(HOST_CC) -dumpversion` : $(HOSTCXX) : \"$(HOST_CXXFLAGS)\" \"$(HOST_LDFLAGS)\" ;" > $(@D)/user-config.jam - echo "" >> $(@D)/user-config.jam +define BOOST_BUILD_CMDS + (cd $(@D) && ./bjam -j$(PARALLEL_JOBS) -q \ + --user-config=$(@D)/user-config.jam \ + $(BOOST_OPTS) \ + --ignore-site-config \ + --layout=$(BOOST_LAYOUT)) endef define BOOST_INSTALL_TARGET_CMDS - (cd $(@D) && ./b2 -j$(PARALLEL_JOBS) -q -d+1 \ + (cd $(@D) && ./b2 -j$(PARALLEL_JOBS) -q \ --user-config=$(@D)/user-config.jam \ $(BOOST_OPTS) \ --prefix=$(TARGET_DIR)/usr \ @@ -127,8 +146,23 @@ define BOOST_INSTALL_TARGET_CMDS --layout=$(BOOST_LAYOUT) install ) endef +define BOOST_INSTALL_STAGING_CMDS + (cd $(@D) && ./bjam -j$(PARALLEL_JOBS) -q \ + --user-config=$(@D)/user-config.jam \ + $(BOOST_OPTS) \ + --prefix=$(STAGING_DIR)/usr \ + --ignore-site-config \ + --layout=$(BOOST_LAYOUT) install) +endef + +define HOST_BOOST_CONFIGURE_CMDS + (cd $(@D) && ./bootstrap.sh $(HOST_BOOST_FLAGS)) + echo "using gcc : `$(HOST_CC) -dumpversion` : $(HOSTCXX) : \"$(HOST_CXXFLAGS)\" \"$(HOST_LDFLAGS)\" ;" > $(@D)/user-config.jam + echo "" >> $(@D)/user-config.jam +endef + define HOST_BOOST_BUILD_CMDS - (cd $(@D) && ./b2 -j$(PARALLEL_JOBS) -q -d+1 \ + (cd $(@D) && ./b2 -j$(PARALLEL_JOBS) -q \ --user-config=$(@D)/user-config.jam \ $(HOST_BOOST_OPTS) \ --ignore-site-config \ @@ -136,7 +170,7 @@ define HOST_BOOST_BUILD_CMDS endef define HOST_BOOST_INSTALL_CMDS - (cd $(@D) && ./b2 -j$(PARALLEL_JOBS) -q -d+1 \ + (cd $(@D) && ./b2 -j$(PARALLEL_JOBS) -q \ --user-config=$(@D)/user-config.jam \ $(HOST_BOOST_OPTS) \ --prefix=$(HOST_DIR)/usr \ @@ -144,14 +178,5 @@ define HOST_BOOST_INSTALL_CMDS --layout=$(BOOST_LAYOUT) install ) endef -define BOOST_INSTALL_STAGING_CMDS - (cd $(@D) && ./bjam -j$(PARALLEL_JOBS) -q -d+1 \ - --user-config=$(@D)/user-config.jam \ - $(BOOST_OPTS) \ - --prefix=$(STAGING_DIR)/usr \ - --ignore-site-config \ - --layout=$(BOOST_LAYOUT) install) -endef - $(eval $(generic-package)) $(eval $(host-generic-package)) diff --git a/package/bootutils/0001-fix-musl-compilation-issue.patch b/package/bootutils/0001-fix-musl-compilation-issue.patch new file mode 100644 index 00000000000..ccb6ef61ec1 --- /dev/null +++ b/package/bootutils/0001-fix-musl-compilation-issue.patch @@ -0,0 +1,31 @@ +From e4c2c18b9d1d7a6dc17d8f7705b26fc2e2efc5a9 Mon Sep 17 00:00:00 2001 +From: Brendan Heading +Date: Sun, 30 Aug 2015 20:12:40 +0100 +Subject: [PATCH 1/1] fix musl compilation issue + +makedev(3) requires sys/types.h to be included. + +Note upstream has not issued releases since 2009. No mailing list activity +since January 2010, and even before then it seems to be mostly spam. + +Upstream-Status: dormant +Signed-off-by: Brendan Heading +--- + raidscan.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/raidscan.c b/raidscan.c +index fab3b02..3cb1a0d 100644 +--- a/raidscan.c ++++ b/raidscan.c +@@ -22,6 +22,7 @@ + #include "config.h" + + #include ++#include + #include + #include + #include +-- +2.4.3 + diff --git a/package/bridge-utils/0003-sysfs-write-fixes.patch b/package/bridge-utils/0003-sysfs-write-fixes.patch new file mode 100644 index 00000000000..a7ff1979f5e --- /dev/null +++ b/package/bridge-utils/0003-sysfs-write-fixes.patch @@ -0,0 +1,81 @@ +commit bb9970a9df95837e39d680021b1f73d231e85406 +Author: Stephen Hemminger +Date: Tue May 3 09:52:43 2011 -0700 + + Check error returns from write to sysfs + + Add helper function to check write to sysfs files. + + Fix incorrect sysfs path in br_set. + +[Thomas De Schampheleire: update commit message only] +Signed-off-by: Thomas De Schampheleire + +diff --git a/libbridge/libbridge_devif.c b/libbridge/libbridge_devif.c +index aa8bc36..1e83925 100644 +--- a/libbridge/libbridge_devif.c ++++ b/libbridge/libbridge_devif.c +@@ -280,25 +280,38 @@ fallback: + return old_get_port_info(brname, port, info); + } + ++static int set_sysfs(const char *path, unsigned long value) ++{ ++ int fd, ret = 0, cc; ++ char buf[32]; ++ ++ fd = open(path, O_WRONLY); ++ if (fd < 0) ++ return -1; ++ ++ cc = snprintf(buf, sizeof(buf), "%lu\n", value); ++ if (write(fd, buf, cc) < 0) ++ ret = -1; ++ close(fd); ++ ++ return ret; ++} ++ + + static int br_set(const char *bridge, const char *name, + unsigned long value, unsigned long oldcode) + { + int ret; + char path[SYSFS_PATH_MAX]; +- FILE *f; + +- snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/%s", bridge, name); ++ snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/bridge/%s", ++ bridge, name); + +- f = fopen(path, "w"); +- if (f) { +- ret = fprintf(f, "%ld\n", value); +- fclose(f); +- } else { ++ if ((ret = set_sysfs(path, value)) < 0) { + /* fallback to old ioctl */ + struct ifreq ifr; + unsigned long args[4] = { oldcode, value, 0, 0 }; +- ++ + strncpy(ifr.ifr_name, bridge, IFNAMSIZ); + ifr.ifr_data = (char *) &args; + ret = ioctl(br_socket_fd, SIOCDEVPRIVATE, &ifr); +@@ -348,14 +361,10 @@ static int port_set(const char *bridge, const char *ifname, + { + int ret; + char path[SYSFS_PATH_MAX]; +- FILE *f; + + snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/brport/%s", ifname, name); +- f = fopen(path, "w"); +- if (f) { +- ret = fprintf(f, "%ld\n", value); +- fclose(f); +- } else { ++ ++ if ((ret = set_sysfs(path, value)) < 0) { + int index = get_portno(bridge, ifname); + + if (index < 0) diff --git a/package/bullet/Config.in b/package/bullet/Config.in index fc285ab33a4..d4d69d2c9e1 100644 --- a/package/bullet/Config.in +++ b/package/bullet/Config.in @@ -1,6 +1,9 @@ config BR2_PACKAGE_BULLET bool "bullet" depends on BR2_INSTALL_LIBSTDCPP + # Affected by + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68476 + depends on !BR2_microblaze help Bullet is a Collision Detection and Rigid Body Dynamics Library. @@ -9,3 +12,4 @@ config BR2_PACKAGE_BULLET comment "bullet needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP + depends on !BR2_microblaze diff --git a/package/busybox/0002-unzip.patch b/package/busybox/0002-unzip.patch new file mode 100644 index 00000000000..400e5284352 --- /dev/null +++ b/package/busybox/0002-unzip.patch @@ -0,0 +1,111 @@ +From 1de25a6e87e0e627aa34298105a3d17c60a1f44e Mon Sep 17 00:00:00 2001 +From: Denys Vlasenko +Date: Mon, 26 Oct 2015 19:33:05 +0100 +Subject: [PATCH] unzip: test for bad archive SEGVing + +function old new delta +huft_build 1296 1300 +4 + +Signed-off-by: Denys Vlasenko +Signed-off-by: Gustavo Zacarias +--- + archival/libarchive/decompress_gunzip.c | 11 +++++++---- + testsuite/unzip.tests | 23 ++++++++++++++++++++++- + 2 files changed, 29 insertions(+), 5 deletions(-) + +diff --git a/archival/libarchive/decompress_gunzip.c b/archival/libarchive/decompress_gunzip.c +index 7b6f459..30bf451 100644 +--- a/archival/libarchive/decompress_gunzip.c ++++ b/archival/libarchive/decompress_gunzip.c +@@ -305,11 +305,12 @@ static int huft_build(const unsigned *b, const unsigned n, + unsigned i; /* counter, current code */ + unsigned j; /* counter */ + int k; /* number of bits in current code */ +- unsigned *p; /* pointer into c[], b[], or v[] */ ++ const unsigned *p; /* pointer into c[], b[], or v[] */ + huft_t *q; /* points to current table */ + huft_t r; /* table entry for structure assignment */ + huft_t *u[BMAX]; /* table stack */ + unsigned v[N_MAX]; /* values in order of bit length */ ++ unsigned v_end; + int ws[BMAX + 1]; /* bits decoded stack */ + int w; /* bits decoded */ + unsigned x[BMAX + 1]; /* bit offsets, then code stack */ +@@ -324,7 +325,7 @@ static int huft_build(const unsigned *b, const unsigned n, + + /* Generate counts for each bit length */ + memset(c, 0, sizeof(c)); +- p = (unsigned *) b; /* cast allows us to reuse p for pointing to b */ ++ p = b; + i = n; + do { + c[*p]++; /* assume all entries <= BMAX */ +@@ -365,12 +366,14 @@ static int huft_build(const unsigned *b, const unsigned n, + } + + /* Make a table of values in order of bit lengths */ +- p = (unsigned *) b; ++ p = b; + i = 0; ++ v_end = 0; + do { + j = *p++; + if (j != 0) { + v[x[j]++] = i; ++ v_end = x[j]; + } + } while (++i < n); + +@@ -432,7 +435,7 @@ static int huft_build(const unsigned *b, const unsigned n, + + /* set up table entry in r */ + r.b = (unsigned char) (k - w); +- if (p >= v + n) { ++ if (p >= v + v_end) { // Was "if (p >= v + n)" but v[] can be shorter! + r.e = 99; /* out of values--invalid code */ + } else if (*p < s) { + r.e = (unsigned char) (*p < 256 ? 16 : 15); /* 256 is EOB code */ +diff --git a/testsuite/unzip.tests b/testsuite/unzip.tests +index 8677a03..ca0a458 100755 +--- a/testsuite/unzip.tests ++++ b/testsuite/unzip.tests +@@ -7,7 +7,7 @@ + + . ./testing.sh + +-# testing "test name" "options" "expected result" "file input" "stdin" ++# testing "test name" "commands" "expected result" "file input" "stdin" + # file input will be file called "input" + # test can create a file "actual" instead of writing to stdout + +@@ -30,6 +30,27 @@ testing "unzip (subdir only)" "unzip -q foo.zip foo/ && test -d foo && test ! -f + rmdir foo + rm foo.zip + ++# File containing some damaged encrypted stream ++testing "unzip (bad archive)" "uudecode; unzip bad.zip 2>&1; echo \$?" \ ++"Archive: bad.zip ++ inflating: ]3j½r«IK-%Ix ++unzip: inflate error ++1 ++" \ ++"" "\ ++begin-base64 644 bad.zip ++UEsDBBQAAgkIAAAAIQA5AAAANwAAADwAAAAQAAcAXTNqwr1ywqtJGxJLLSVJ ++eCkBD0AdKBk8JzQsIj01JC0/ORJQSwMEFAECCAAAAAAhADoAAAAPAAAANgAA ++AAwAAQASw73Ct1DCokohPXQiNjoUNTUiHRwgLT4WHlBLAQIQABQAAggIAAAA ++oQA5AAAANwAAADwAAAAQQAcADAAAACwAMgCAAAAAAABdM2rCvXLCq0kbEkst ++JUl4KQEPQB0oGSY4Cz4QNgEnJSYIPVBLAQIAABQAAggAAAAAIQAqAAAADwAA ++BDYAAAAMAAEADQAAADIADQAAAEEAAAASw73Ct1DKokohPXQiNzA+FAI1HCcW ++NzITNFBLBQUKAC4JAA04Cw0EOhZQSwUGAQAABAIAAgCZAAAAeQAAAAIALhM= ++==== ++" ++ ++rm * ++ + # Clean up scratch directory. + + cd .. +-- +2.6.2 + diff --git a/package/busybox/0003-g-unzip-fix-recent-breakage.patch b/package/busybox/0003-g-unzip-fix-recent-breakage.patch new file mode 100644 index 00000000000..061e2c47e23 --- /dev/null +++ b/package/busybox/0003-g-unzip-fix-recent-breakage.patch @@ -0,0 +1,134 @@ +From 6bd3fff51aa74e2ee2d87887b12182a3b09792ef Mon Sep 17 00:00:00 2001 +From: Denys Vlasenko +Date: Fri, 30 Oct 2015 23:41:53 +0100 +Subject: [PATCH] [g]unzip: fix recent breakage. + +Also, do emit error message we so painstakingly pass from gzip internals + +Signed-off-by: Denys Vlasenko +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + archival/libarchive/decompress_gunzip.c | 33 +++++++++++++++++++++------------ + testsuite/unzip.tests | 1 + + 2 files changed, 22 insertions(+), 12 deletions(-) + +diff --git a/archival/libarchive/decompress_gunzip.c b/archival/libarchive/decompress_gunzip.c +index 30bf451..20e4d9a 100644 +--- a/archival/libarchive/decompress_gunzip.c ++++ b/archival/libarchive/decompress_gunzip.c +@@ -309,8 +309,7 @@ static int huft_build(const unsigned *b, const unsigned n, + huft_t *q; /* points to current table */ + huft_t r; /* table entry for structure assignment */ + huft_t *u[BMAX]; /* table stack */ +- unsigned v[N_MAX]; /* values in order of bit length */ +- unsigned v_end; ++ unsigned v[N_MAX + 1]; /* values in order of bit length. last v[] is never used */ + int ws[BMAX + 1]; /* bits decoded stack */ + int w; /* bits decoded */ + unsigned x[BMAX + 1]; /* bit offsets, then code stack */ +@@ -365,15 +364,17 @@ static int huft_build(const unsigned *b, const unsigned n, + *xp++ = j; + } + +- /* Make a table of values in order of bit lengths */ ++ /* Make a table of values in order of bit lengths. ++ * To detect bad input, unused v[i]'s are set to invalid value UINT_MAX. ++ * In particular, last v[i] is never filled and must not be accessed. ++ */ ++ memset(v, 0xff, sizeof(v)); + p = b; + i = 0; +- v_end = 0; + do { + j = *p++; + if (j != 0) { + v[x[j]++] = i; +- v_end = x[j]; + } + } while (++i < n); + +@@ -435,7 +436,9 @@ static int huft_build(const unsigned *b, const unsigned n, + + /* set up table entry in r */ + r.b = (unsigned char) (k - w); +- if (p >= v + v_end) { // Was "if (p >= v + n)" but v[] can be shorter! ++ if (/*p >= v + n || -- redundant, caught by the second check: */ ++ *p == UINT_MAX /* do we access uninited v[i]? (see memset(v))*/ ++ ) { + r.e = 99; /* out of values--invalid code */ + } else if (*p < s) { + r.e = (unsigned char) (*p < 256 ? 16 : 15); /* 256 is EOB code */ +@@ -520,8 +523,9 @@ static NOINLINE int inflate_codes(STATE_PARAM_ONLY) + e = t->e; + if (e > 16) + do { +- if (e == 99) +- abort_unzip(PASS_STATE_ONLY);; ++ if (e == 99) { ++ abort_unzip(PASS_STATE_ONLY); ++ } + bb >>= t->b; + k -= t->b; + e -= 16; +@@ -557,8 +561,9 @@ static NOINLINE int inflate_codes(STATE_PARAM_ONLY) + e = t->e; + if (e > 16) + do { +- if (e == 99) ++ if (e == 99) { + abort_unzip(PASS_STATE_ONLY); ++ } + bb >>= t->b; + k -= t->b; + e -= 16; +@@ -824,8 +829,9 @@ static int inflate_block(STATE_PARAM smallint *e) + + b_dynamic >>= 4; + k_dynamic -= 4; +- if (nl > 286 || nd > 30) ++ if (nl > 286 || nd > 30) { + abort_unzip(PASS_STATE_ONLY); /* bad lengths */ ++ } + + /* read in bit-length-code lengths */ + for (j = 0; j < nb; j++) { +@@ -906,12 +912,14 @@ static int inflate_block(STATE_PARAM smallint *e) + bl = lbits; + + i = huft_build(ll, nl, 257, cplens, cplext, &inflate_codes_tl, &bl); +- if (i != 0) ++ if (i != 0) { + abort_unzip(PASS_STATE_ONLY); ++ } + bd = dbits; + i = huft_build(ll + nl, nd, 0, cpdist, cpdext, &inflate_codes_td, &bd); +- if (i != 0) ++ if (i != 0) { + abort_unzip(PASS_STATE_ONLY); ++ } + + /* set up data for inflate_codes() */ + inflate_codes_setup(PASS_STATE bl, bd); +@@ -999,6 +1007,7 @@ inflate_unzip_internal(STATE_PARAM transformer_state_t *xstate) + error_msg = "corrupted data"; + if (setjmp(error_jmp)) { + /* Error from deep inside zip machinery */ ++ bb_error_msg(error_msg); + n = -1; + goto ret; + } +diff --git a/testsuite/unzip.tests b/testsuite/unzip.tests +index ca0a458..d8738a3 100755 +--- a/testsuite/unzip.tests ++++ b/testsuite/unzip.tests +@@ -34,6 +34,7 @@ rm foo.zip + testing "unzip (bad archive)" "uudecode; unzip bad.zip 2>&1; echo \$?" \ + "Archive: bad.zip + inflating: ]3j½r«IK-%Ix ++unzip: corrupted data + unzip: inflate error + 1 + " \ +-- +2.6.2 + diff --git a/package/busybox/0004-truncate-open-mode.patch b/package/busybox/0004-truncate-open-mode.patch new file mode 100644 index 00000000000..f0dc6d1f4fe --- /dev/null +++ b/package/busybox/0004-truncate-open-mode.patch @@ -0,0 +1,74 @@ +From be729c1d3b5c923f10871dd68ea94156d0f8c803 Mon Sep 17 00:00:00 2001 +From: Ari Sundholm +Date: Mon, 4 Jan 2016 15:40:37 +0200 +Subject: [PATCH] truncate: always set mode when opening file to avoid fortify + errors + +Busybox crashes due to no mode being given when opening: +$ ./busybox truncate -s 1M foo +*** invalid open64 call: O_CREAT without mode ***: ./busybox terminated +======= Backtrace: ========= +/lib/x86_64-linux-gnu/libc.so.6(+0x7338f)[0x7f66d921338f] +/lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x5c)[0x7f66d92aac9c] +/lib/x86_64-linux-gnu/libc.so.6(+0xeb6aa)[0x7f66d928b6aa] +./busybox[0x4899f9] +======= Memory map: ======== +00400000-004d0000 r-xp 00000000 00:1a 137559 /home/ari/busybox/busybox +006cf000-006d0000 r--p 000cf000 00:1a 137559 /home/ari/busybox/busybox +006d0000-006d1000 rw-p 000d0000 00:1a 137559 /home/ari/busybox/busybox +006d1000-006d4000 rw-p 00000000 00:00 0 +014e7000-01508000 rw-p 00000000 00:00 0 [heap] +7f66d8f8a000-7f66d8fa0000 r-xp 00000000 08:07 1579008 /lib/x86_64-linux-gnu/libgcc_s.so.1 +7f66d8fa0000-7f66d919f000 ---p 00016000 08:07 1579008 /lib/x86_64-linux-gnu/libgcc_s.so.1 +7f66d919f000-7f66d91a0000 rw-p 00015000 08:07 1579008 /lib/x86_64-linux-gnu/libgcc_s.so.1 +7f66d91a0000-7f66d935b000 r-xp 00000000 08:07 1578994 /lib/x86_64-linux-gnu/libc-2.19.so +7f66d935b000-7f66d955a000 ---p 001bb000 08:07 1578994 /lib/x86_64-linux-gnu/libc-2.19.so +7f66d955a000-7f66d955e000 r--p 001ba000 08:07 1578994 /lib/x86_64-linux-gnu/libc-2.19.so +7f66d955e000-7f66d9560000 rw-p 001be000 08:07 1578994 /lib/x86_64-linux-gnu/libc-2.19.so +7f66d9560000-7f66d9565000 rw-p 00000000 00:00 0 +7f66d9565000-7f66d966a000 r-xp 00000000 08:07 1579020 /lib/x86_64-linux-gnu/libm-2.19.so +7f66d966a000-7f66d9869000 ---p 00105000 08:07 1579020 /lib/x86_64-linux-gnu/libm-2.19.so +7f66d9869000-7f66d986a000 r--p 00104000 08:07 1579020 /lib/x86_64-linux-gnu/libm-2.19.so +7f66d986a000-7f66d986b000 rw-p 00105000 08:07 1579020 /lib/x86_64-linux-gnu/libm-2.19.so +7f66d986b000-7f66d988e000 r-xp 00000000 08:07 1578981 /lib/x86_64-linux-gnu/ld-2.19.so +7f66d9a64000-7f66d9a67000 rw-p 00000000 00:00 0 +7f66d9a8a000-7f66d9a8d000 rw-p 00000000 00:00 0 +7f66d9a8d000-7f66d9a8e000 r--p 00022000 08:07 1578981 /lib/x86_64-linux-gnu/ld-2.19.so +7f66d9a8e000-7f66d9a8f000 rw-p 00023000 08:07 1578981 /lib/x86_64-linux-gnu/ld-2.19.so +7f66d9a8f000-7f66d9a90000 rw-p 00000000 00:00 0 +7ffc47761000-7ffc47782000 rw-p 00000000 00:00 0 [stack] +7ffc477ab000-7ffc477ad000 r-xp 00000000 00:00 0 [vdso] +ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] +Aborted (core dumped) +$ + +Fix this by simply always setting the mode, as it doesn't hurt even +when O_CREAT is not specified. + +This bug is a regression introduced in fc3e40e, as xopen(), which +was originally used, would automatically set the mode. + +Signed-off-by: Ari Sundholm +Signed-off-by: Mike Frysinger +(cherry picked from commit e111a1640494fe87fc913f94fae3bb805de0fc99) +Signed-off-by: Gustavo Zacarias +--- + coreutils/truncate.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/coreutils/truncate.c b/coreutils/truncate.c +index e5fa656..4c997bf 100644 +--- a/coreutils/truncate.c ++++ b/coreutils/truncate.c +@@ -64,7 +64,7 @@ int truncate_main(int argc UNUSED_PARAM, char **argv) + + argv += optind; + while (*argv) { +- int fd = open(*argv, flags); ++ int fd = open(*argv, flags, 0666); + if (fd < 0) { + if (errno != ENOENT || !(opts & OPT_NOCREATE)) { + bb_perror_msg("%s: open", *argv); +-- +2.6.2 + diff --git a/package/busybox/Config.in b/package/busybox/Config.in index 25f72de3383..a3a328d4840 100644 --- a/package/busybox/Config.in +++ b/package/busybox/Config.in @@ -36,6 +36,7 @@ config BR2_PACKAGE_BUSYBOX_SELINUX select BR2_PACKAGE_LIBSELINUX depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS + depends on !BR2_arc bool "Enable SELinux support" help Enable SELinux support in BusyBox. Please note that diff --git a/package/busybox/S01logging b/package/busybox/S01logging index 29093707888..a72c69d27d2 100644 --- a/package/busybox/S01logging +++ b/package/busybox/S01logging @@ -4,14 +4,14 @@ # start() { - echo -n "Starting logging: " + printf "Starting logging: " start-stop-daemon -b -S -q -m -p /var/run/syslogd.pid --exec /sbin/syslogd -- -n start-stop-daemon -b -S -q -m -p /var/run/klogd.pid --exec /sbin/klogd -- -n echo "OK" } stop() { - echo -n "Stopping logging: " + printf "Stopping logging: " start-stop-daemon -K -q -p /var/run/syslogd.pid start-stop-daemon -K -q -p /var/run/klogd.pid echo "OK" diff --git a/package/busybox/S50telnet b/package/busybox/S50telnet index 463a772e4cd..47e2b63e19d 100755 --- a/package/busybox/S50telnet +++ b/package/busybox/S50telnet @@ -4,14 +4,14 @@ # start() { - echo -n "Starting telnetd: " + printf "Starting telnetd: " start-stop-daemon -S -q -m -b -p /var/run/telnetd.pid \ -x /usr/sbin/telnetd -- -F [ $? = 0 ] && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping telnetd: " + printf "Stopping telnetd: " start-stop-daemon -K -q -p /var/run/telnetd.pid \ -x /usr/sbin/telnetd [ $? = 0 ] && echo "OK" || echo "FAIL" diff --git a/package/busybox/busybox.config b/package/busybox/busybox.config index 8d1d80a861f..bb138f950c4 100644 --- a/package/busybox/busybox.config +++ b/package/busybox/busybox.config @@ -284,6 +284,7 @@ CONFIG_FEATURE_SORT_BIG=y CONFIG_STTY=y # CONFIG_SUM is not set CONFIG_SYNC=y +# CONFIG_FEATURE_SYNC_FANCY is not set # CONFIG_TAC is not set CONFIG_TAIL=y CONFIG_FEATURE_FANCY_TAIL=y diff --git a/package/busybox/busybox.hash b/package/busybox/busybox.hash index cfd4937f50e..99fb8e4e720 100644 --- a/package/busybox/busybox.hash +++ b/package/busybox/busybox.hash @@ -1,3 +1,3 @@ -# From http://busybox.net/downloads/busybox-1.23.2.tar.bz2.sign -md5 7925683d7dd105aabe9b6b618d48cc73 busybox-1.23.2.tar.bz2 -sha1 7f37193cb249f27630e0b2a2c6c9bbb7b1d24c16 busybox-1.23.2.tar.bz2 +# From http://busybox.net/downloads/busybox-1.24.1.tar.bz2.sign +md5 be98a40cadf84ce2d6b05fa41a275c6a busybox-1.24.1.tar.bz2 +sha1 157d14d24748b4505b1a418535688706a2b81680 busybox-1.24.1.tar.bz2 diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk index 6e302f46132..7f6dbd69325 100644 --- a/package/busybox/busybox.mk +++ b/package/busybox/busybox.mk @@ -4,7 +4,7 @@ # ################################################################################ -BUSYBOX_VERSION = 1.23.2 +BUSYBOX_VERSION = 1.24.1 BUSYBOX_SITE = http://www.busybox.net/downloads BUSYBOX_SOURCE = busybox-$(BUSYBOX_VERSION).tar.bz2 BUSYBOX_LICENSE = GPLv2 @@ -89,6 +89,21 @@ define BUSYBOX_SET_MMU $(call KCONFIG_DISABLE_OPT,CONFIG_SWAPONOFF,$(BUSYBOX_BUILD_CONFIG)) $(call KCONFIG_DISABLE_OPT,CONFIG_ASH,$(BUSYBOX_BUILD_CONFIG)) $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_BASH_COMPAT,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_BRACE_EXPANSION,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_HELP,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_INTERACTIVE,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_SAVEHISTORY,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_JOB,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_TICK,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_IF,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_LOOPS,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_CASE,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_FUNCTIONS,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_LOCAL,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_RANDOM_SUPPORT,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_EXPORT_N,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_ENABLE_OPT,CONFIG_HUSH_MODE_X,$(BUSYBOX_BUILD_CONFIG)) endef endif @@ -117,12 +132,18 @@ define BUSYBOX_INTERNAL_SHADOW_PASSWORDS endef endif -# We also need to use internal functions when using the musl C -# library, since some of them are not yet implemented by musl. +# We also need to use internal shadow password functions when using +# the musl C library, since some of them are not yet implemented by +# musl. +# +# Do not use utmp/wmtp support. wmtp support is not available in musl, +# and utmp support is not sufficient for Busybox. ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) -define BUSYBOX_INTERNAL_SHADOW_PASSWORDS +define BUSYBOX_MUSL_TWEAKS $(call KCONFIG_ENABLE_OPT,CONFIG_USE_BB_PWD_GRP,$(BUSYBOX_BUILD_CONFIG)) $(call KCONFIG_ENABLE_OPT,CONFIG_USE_BB_SHADOW,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_DISABLE_OPT,CONFIG_FEATURE_UTMP,$(BUSYBOX_BUILD_CONFIG)) + $(call KCONFIG_DISABLE_OPT,CONFIG_FEATURE_WTMP,$(BUSYBOX_BUILD_CONFIG)) endef endif @@ -208,6 +229,7 @@ define BUSYBOX_KCONFIG_FIXUP_CMDS $(BUSYBOX_SET_INIT) $(BUSYBOX_SET_WATCHDOG) $(BUSYBOX_SET_SELINUX) + $(BUSYBOX_MUSL_TWEAKS) endef define BUSYBOX_CONFIGURE_CMDS diff --git a/package/busybox/inittab b/package/busybox/inittab index b1892c1cb03..3f49f6bd7a7 100644 --- a/package/busybox/inittab +++ b/package/busybox/inittab @@ -14,12 +14,12 @@ # process == program to run # Startup the system -null::sysinit:/bin/mount -t proc proc /proc -null::sysinit:/bin/mount -o remount,rw / -null::sysinit:/bin/mkdir -p /dev/pts -null::sysinit:/bin/mkdir -p /dev/shm -null::sysinit:/bin/mount -a -null::sysinit:/bin/hostname -F /etc/hostname +::sysinit:/bin/mount -t proc proc /proc +::sysinit:/bin/mount -o remount,rw / +::sysinit:/bin/mkdir -p /dev/pts +::sysinit:/bin/mkdir -p /dev/shm +::sysinit:/bin/mount -a +::sysinit:/bin/hostname -F /etc/hostname # now run any rc scripts ::sysinit:/etc/init.d/rcS @@ -27,7 +27,7 @@ null::sysinit:/bin/hostname -F /etc/hostname #ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100 # GENERIC_SERIAL # Stuff to do for the 3-finger salute -::ctrlaltdel:/sbin/reboot +#::ctrlaltdel:/sbin/reboot # Stuff to do before rebooting ::shutdown:/etc/init.d/rcK diff --git a/package/bwm-ng/Config.in b/package/bwm-ng/Config.in index 25e7cbe8f7f..f93dd9358b4 100644 --- a/package/bwm-ng/Config.in +++ b/package/bwm-ng/Config.in @@ -5,4 +5,4 @@ config BR2_PACKAGE_BWM_NG network and disk-io bandwidth monitor for Linux, BSD, Solaris, Mac OS X and others. - http://sourceforge.net/projects/bwmng/ + http://www.gropp.org/?id=projects&sub=bwm-ng diff --git a/package/bwm-ng/bwm-ng.hash b/package/bwm-ng/bwm-ng.hash index 6bb83554a61..1d3a240a264 100644 --- a/package/bwm-ng/bwm-ng.hash +++ b/package/bwm-ng/bwm-ng.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 c1134358e268329d438b0996399003b0f0b966034fb4b5b138761c2f3c62ffdd bwm-ng-0.6.tar.gz +sha256 027cf3c960cd96fc9ffacdf7713df62d0fc55eeef4a1388289f8a62ae5e50df0 bwm-ng-0.6.1.tar.gz diff --git a/package/bwm-ng/bwm-ng.mk b/package/bwm-ng/bwm-ng.mk index ed1f5aab4ce..e285422b92a 100644 --- a/package/bwm-ng/bwm-ng.mk +++ b/package/bwm-ng/bwm-ng.mk @@ -4,8 +4,8 @@ # ################################################################################ -BWM_NG_VERSION = 0.6 -BWM_NG_SITE = http://downloads.sourceforge.net/project/bwmng/bwmng/$(BWM_NG_VERSION) +BWM_NG_VERSION = 0.6.1 +BWM_NG_SITE = http://www.gropp.org/bwm-ng BWM_NG_CONF_OPTS = --with-procnetdev --with-diskstats BWM_NG_LICENSE = GPLv2 BWM_NG_LICENSE_FILES = COPYING diff --git a/package/c-ares/c-ares.mk b/package/c-ares/c-ares.mk index c858887a18e..77ae4b968f8 100644 --- a/package/c-ares/c-ares.mk +++ b/package/c-ares/c-ares.mk @@ -7,6 +7,7 @@ C_ARES_VERSION = 1.10.0 C_ARES_SITE = http://c-ares.haxx.se/download C_ARES_INSTALL_STAGING = YES +C_ARES_CONF_OPTS = --with-random=/dev/urandom # Rebuild configure to avoid XC_CHECK_USER_CFLAGS C_ARES_AUTORECONF = YES C_ARES_LICENSE = MIT diff --git a/package/c-icap-modules/c-icap-modules.mk b/package/c-icap-modules/c-icap-modules.mk index aeab5803f90..5252a8106c1 100644 --- a/package/c-icap-modules/c-icap-modules.mk +++ b/package/c-icap-modules/c-icap-modules.mk @@ -6,7 +6,7 @@ C_ICAP_MODULES_VERSION = 0.3.2 C_ICAP_MODULES_SOURCE = c_icap_modules-$(C_ICAP_MODULES_VERSION).tar.gz -C_ICAP_MODULES_SITE = http://downloads.sourceforge.net/c-icap/ +C_ICAP_MODULES_SITE = http://downloads.sourceforge.net/c-icap C_ICAP_MODULES_LICENSE = GPLv2+ C_ICAP_MODULES_LICENSE_FILES = COPYING C_ICAP_MODULES_DEPENDENCIES = c-icap diff --git a/package/c-icap/Config.in b/package/c-icap/Config.in index 8121a26a654..8f7963c26aa 100644 --- a/package/c-icap/Config.in +++ b/package/c-icap/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_C_ICAP bool "c-icap" - depends on !BR2_PREFER_STATIC_LIB + depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() help @@ -15,4 +15,4 @@ config BR2_PACKAGE_C_ICAP comment "c-icap needs a toolchain w/ threads and dynamic library" depends on BR2_USE_MMU - depends on BR2_PREFER_STATIC_LIB || !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/c-icap/S96cicap b/package/c-icap/S96cicap index baef334f46b..7b95f86009f 100644 --- a/package/c-icap/S96cicap +++ b/package/c-icap/S96cicap @@ -6,13 +6,13 @@ mkdir -p /var/log/c-icap case "$1" in start) - echo -n "Starting c-icap server: " + printf "Starting c-icap server: " start-stop-daemon -S -q -b -m -p /var/run/c-icap.pid \ -x /usr/bin/c-icap -- -N [ $? == 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping c-icap server: " + printf "Stopping c-icap server: " start-stop-daemon -K -q -p /var/run/c-icap.pid [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/c-icap/c-icap.mk b/package/c-icap/c-icap.mk index 0e27cc4bbdb..b4defb87379 100644 --- a/package/c-icap/c-icap.mk +++ b/package/c-icap/c-icap.mk @@ -6,7 +6,7 @@ C_ICAP_VERSION = 0.3.5 C_ICAP_SOURCE = c_icap-$(C_ICAP_VERSION).tar.gz -C_ICAP_SITE = http://downloads.sourceforge.net/c-icap/ +C_ICAP_SITE = http://downloads.sourceforge.net/c-icap C_ICAP_LICENSE = LGPLv2.1+ C_ICAP_LICENSE_FILES = COPYING C_ICAP_INSTALL_STAGING = YES diff --git a/package/c-periphery/0001-Add-missing-header-for-musl-compatibility.patch b/package/c-periphery/0001-Add-missing-header-for-musl-compatibility.patch new file mode 100644 index 00000000000..108297c9c2b --- /dev/null +++ b/package/c-periphery/0001-Add-missing-header-for-musl-compatibility.patch @@ -0,0 +1,32 @@ +From 1d8cb0ad54099c3d7261aaa19a2c0786f16736d0 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 8 Aug 2015 22:42:39 +0200 +Subject: [PATCH] Add missing header for musl compatibility + + is needed to get the definition of _IOC_SIZEBITS and +solve the following build failure: + +src/spi.c: In function 'spi_transfer': +src/spi.c:100:24: error: '_IOC_SIZEBITS' undeclared (first use in this function) + if (ioctl(spi->fd, SPI_IOC_MESSAGE(1), &spi_xfer) < 1) + +Signed-off-by: Thomas Petazzoni +--- + src/spi.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/spi.c b/src/spi.c +index 52a8d3d..1a6b17c 100644 +--- a/src/spi.c ++++ b/src/spi.c +@@ -16,6 +16,7 @@ + #include + + #include ++#include + #include + + #include "spi.h" +-- +2.5.0 + diff --git a/package/c-periphery/0002-Fix-build-on-SPARC.patch b/package/c-periphery/0002-Fix-build-on-SPARC.patch new file mode 100644 index 00000000000..e491f6f728e --- /dev/null +++ b/package/c-periphery/0002-Fix-build-on-SPARC.patch @@ -0,0 +1,70 @@ +From 295316c3f44c3e779e85d7453424496a3bb4bc48 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 8 Aug 2015 22:56:09 +0200 +Subject: [PATCH] Fix build on SPARC + +On SPARC, the definitions of B2500000, B3000000, B3500000 and B4000000 +are not necessarily available, so use those values only if defined in +the kernel headers. + +It fixes SPARC build failures such as: + +src/serial.c: In function '_serial_baudrate_to_bits': +src/serial.c:73:30: error: 'B2500000' undeclared (first use in this function) + case 2500000: return B2500000; + ^ +src/serial.c:73:30: note: each undeclared identifier is reported only once for each function it appears in +src/serial.c:74:30: error: 'B3000000' undeclared (first use in this function) + case 3000000: return B3000000; + ^ + +Signed-off-by: Thomas Petazzoni +--- + src/serial.c | 16 ++++++++++++++++ + 1 file changed, 16 insertions(+) + +diff --git a/src/serial.c b/src/serial.c +index e385309..efd425e 100644 +--- a/src/serial.c ++++ b/src/serial.c +@@ -70,10 +70,18 @@ static int _serial_baudrate_to_bits(uint32_t baudrate) { + case 1152000: return B1152000; + case 1500000: return B1500000; + case 2000000: return B2000000; ++#ifdef B2500000 + case 2500000: return B2500000; ++#endif ++#ifdef B3000000 + case 3000000: return B3000000; ++#endif ++#ifdef B3500000 + case 3500000: return B3500000; ++#endif ++#ifdef B4000000 + case 4000000: return B4000000; ++#endif + default: return -1; + } + } +@@ -107,10 +115,18 @@ static int _serial_bits_to_baudrate(uint32_t bits) { + case B1152000: return 1152000; + case B1500000: return 1500000; + case B2000000: return 2000000; ++#ifdef B2500000 + case B2500000: return 2500000; ++#endif ++#ifdef B3000000 + case B3000000: return 3000000; ++#endif ++#ifdef B3500000 + case B3500000: return 3500000; ++#endif ++#ifdef B4000000 + case B4000000: return 4000000; ++#endif + default: return -1; + } + } +-- +2.5.0 + diff --git a/package/cairo/Config.in b/package/cairo/Config.in index 38570d6f4c0..0c87a2904b2 100644 --- a/package/cairo/Config.in +++ b/package/cairo/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_CAIRO bool "cairo" - depends on BR2_ARCH_HAS_ATOMICS select BR2_PACKAGE_PIXMAN select BR2_PACKAGE_FONTCONFIG select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 diff --git a/package/cairo/cairo.hash b/package/cairo/cairo.hash index 79b2ec652e3..1440185a6ca 100644 --- a/package/cairo/cairo.hash +++ b/package/cairo/cairo.hash @@ -1,2 +1,2 @@ -# From http://cairographics.org/releases/cairo-1.14.2.tar.xz.sha1 -sha1 c8da68aa66ca0855b5d0ff552766d3e8679e1d24 cairo-1.14.2.tar.xz +# From http://cairographics.org/releases/cairo-1.14.4.tar.xz.sha1 +sha1 5b44471e7c328f96de6830baf8ea65030de797f9 cairo-1.14.4.tar.xz diff --git a/package/cairo/cairo.mk b/package/cairo/cairo.mk index 098f24953df..6b54b286e18 100644 --- a/package/cairo/cairo.mk +++ b/package/cairo/cairo.mk @@ -4,7 +4,7 @@ # ################################################################################ -CAIRO_VERSION = 1.14.2 +CAIRO_VERSION = 1.14.4 CAIRO_SOURCE = cairo-$(CAIRO_VERSION).tar.xz CAIRO_LICENSE = LGPLv2.1+ CAIRO_LICENSE_FILES = COPYING @@ -12,62 +12,16 @@ CAIRO_SITE = http://cairographics.org/releases CAIRO_INSTALL_STAGING = YES CAIRO_AUTORECONF = YES -CAIRO_CONF_ENV = \ - ac_cv_func_posix_getpwuid_r=yes \ - glib_cv_stack_grows=no \ - glib_cv_uscore=no \ - ac_cv_func_strtod=yes \ - ac_fsusage_space=yes \ - fu_cv_sys_stat_statfs2_bsize=yes \ - ac_cv_func_closedir_void=no \ - ac_cv_func_getloadavg=no \ - ac_cv_lib_util_getloadavg=no \ - ac_cv_lib_getloadavg_getloadavg=no \ - ac_cv_func_getgroups=yes \ - ac_cv_func_getgroups_works=yes \ - ac_cv_func_chown_works=yes \ - ac_cv_have_decl_euidaccess=no \ - ac_cv_func_euidaccess=no \ - ac_cv_have_decl_strnlen=yes \ - ac_cv_func_strnlen_working=yes \ - ac_cv_func_lstat_dereferences_slashed_symlink=yes \ - ac_cv_func_lstat_empty_string_bug=no \ - ac_cv_func_stat_empty_string_bug=no \ - vb_cv_func_rename_trailing_slash_bug=no \ - ac_cv_have_decl_nanosleep=yes \ - jm_cv_func_nanosleep_works=yes \ - gl_cv_func_working_utimes=yes \ - ac_cv_func_utime_null=yes \ - ac_cv_have_decl_strerror_r=yes \ - ac_cv_func_strerror_r_char_p=no \ - jm_cv_func_svid_putenv=yes \ - ac_cv_func_getcwd_null=yes \ - ac_cv_func_getdelim=yes \ - ac_cv_func_mkstemp=yes \ - utils_cv_func_mkstemp_limitations=no \ - utils_cv_func_mkdir_trailing_slash_bug=no \ - jm_cv_func_gettimeofday_clobber=no \ - gl_cv_func_working_readdir=yes \ - jm_ac_cv_func_link_follows_symlink=no \ - utils_cv_localtime_cache=no \ - ac_cv_struct_st_mtim_nsec=no \ - gl_cv_func_tzset_clobber=no \ - gl_cv_func_getcwd_null=yes \ - gl_cv_func_getcwd_path_max=yes \ - ac_cv_func_fnmatch_gnu=yes \ - am_getline_needs_run_time_check=no \ - am_cv_func_working_getline=yes \ - gl_cv_func_mkdir_trailing_slash_bug=no \ - gl_cv_func_mkstemp_limitations=no \ - ac_cv_func_working_mktime=yes \ - jm_cv_func_working_re_compile_pattern=yes \ - ac_use_included_regex=no \ - gl_cv_c_restrict=no - ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) CAIRO_CONF_ENV += CPPFLAGS="$(TARGET_CPPFLAGS) -DCAIRO_NO_MUTEX=1" endif +# cairo can use C++11 atomics when available, so we need to link with +# libatomic for the architectures who need libatomic. +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_8),y) +CAIRO_CONF_ENV += LIBS="-latomic" +endif + CAIRO_CONF_OPTS = \ --enable-trace=no \ --enable-interpreter=no @@ -139,6 +93,10 @@ else CAIRO_CONF_OPTS += --disable-vg endif +ifeq ($(BR2_PACKAGE_LZO),y) +CAIRO_DEPENDENCIES += lzo +endif + ifeq ($(BR2_PACKAGE_XORG7),y) CAIRO_CONF_OPTS += --enable-xlib --enable-xcb --with-x CAIRO_DEPENDENCIES += xlib_libX11 xlib_libXext diff --git a/package/cairomm/Config.in b/package/cairomm/Config.in new file mode 100644 index 00000000000..c0d5ccd1df1 --- /dev/null +++ b/package/cairomm/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_CAIROMM + bool "cairomm" + select BR2_PACKAGE_CAIRO + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_LIBSIGC + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_USE_MMU # libglib2 + depends on BR2_INSTALL_LIBSTDCPP + help + The cairomm package is a set of C++ bindings for Cairo. + + http://www.gtkmm.org/ + +comment "cairomm needs a toolchain w/ C++, wchar, threads, gcc >= 4.8" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR \ + || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/cairomm/cairomm.hash b/package/cairomm/cairomm.hash new file mode 100644 index 00000000000..bebd474b12f --- /dev/null +++ b/package/cairomm/cairomm.hash @@ -0,0 +1,2 @@ +# From http://ftp.gnome.org/pub/gnome/sources/cairomm/1.12/cairomm-1.12.0.sha256sum +sha256 a54ada8394a86182525c0762e6f50db6b9212a2109280d13ec6a0b29bfd1afe6 cairomm-1.12.0.tar.xz diff --git a/package/cairomm/cairomm.mk b/package/cairomm/cairomm.mk new file mode 100644 index 00000000000..7a56a6822af --- /dev/null +++ b/package/cairomm/cairomm.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# cairomm +# +################################################################################ + +CAIROMM_VERSION_MAJOR = 1.12 +CAIROMM_VERSION = $(CAIROMM_VERSION_MAJOR).0 +CAIROMM_LICENSE = LGPLv2+ +CAIROMM_LICENSE_FILES = COPYING +CAIROMM_SOURCE = cairomm-$(CAIROMM_VERSION).tar.xz +CAIROMM_SITE = http://ftp.gnome.org/pub/gnome/sources/cairomm/$(CAIROMM_VERSION_MAJOR) +CAIROMM_INSTALL_STAGING = YES +CAIROMM_DEPENDENCIES = cairo libglib2 libsigc host-pkgconf + +$(eval $(autotools-package)) diff --git a/package/canfestival/Config.in b/package/canfestival/Config.in index 7c7b370de01..4e734964aaf 100644 --- a/package/canfestival/Config.in +++ b/package/canfestival/Config.in @@ -2,13 +2,16 @@ config BR2_PACKAGE_CANFESTIVAL_ARCH_SUPPORTS bool default y if BR2_i386 || BR2_x86_64 || BR2_powerpc || BR2_arm -comment "canfestival needs a toolchain w/ threads and dynamic library" +comment "canfestival needs a (e)glibc or uClibc toolchain w/ threads and dynamic library" depends on BR2_PACKAGE_CANFESTIVAL_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_USES_MUSL || \ + !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS config BR2_PACKAGE_CANFESTIVAL bool "canfestival" depends on BR2_PACKAGE_CANFESTIVAL_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_USES_MUSL depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS help diff --git a/package/canfestival/canfestival.mk b/package/canfestival/canfestival.mk index e929c5e0a45..61578d31625 100644 --- a/package/canfestival/canfestival.mk +++ b/package/canfestival/canfestival.mk @@ -36,13 +36,13 @@ define CANFESTIVAL_CONFIGURE_CMDS endef define CANFESTIVAL_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) all \ + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) all \ PYTHON=$(HOST_DIR)/usr/bin/python2 endef define CANFESTIVAL_INSTALL_TARGET_CMDS for d in $(CANFESTIVAL_INSTALLED-y) ; do \ - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$$d install \ + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D)/$$d install \ PYTHON=$(HOST_DIR)/usr/bin/python2 \ DESTDIR=$(TARGET_DIR) || exit 1 ; \ done @@ -50,7 +50,7 @@ endef define CANFESTIVAL_INSTALL_STAGING_CMDS for d in $(CANFESTIVAL_INSTALLED-y) ; do \ - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$$d install \ + $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D)/$$d install \ PYTHON=$(HOST_DIR)/usr/bin/python2 \ DESTDIR=$(STAGING_DIR) || exit 1 ; \ done diff --git a/package/cantarell/Config.in b/package/cantarell/Config.in new file mode 100644 index 00000000000..78af96d5954 --- /dev/null +++ b/package/cantarell/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_CANTARELL + bool "cantarell" + help + The Cantarell font family is a contemporary Humanist + sans serif designed for on-screen reading. + + https://wiki.gnome.org/Projects/CantarellFonts diff --git a/package/cantarell/cantarell.hash b/package/cantarell/cantarell.hash new file mode 100644 index 00000000000..d776647ef79 --- /dev/null +++ b/package/cantarell/cantarell.hash @@ -0,0 +1,2 @@ +# From http://ftp.acc.umu.se/pub/gnome/sources/cantarell-fonts/0.0/cantarell-fonts-0.0.20.1.sha256sum +sha256 0f933516f3270fb7307d9c2e26e4703b403608c5cc9da3127cba4395bcd4ec91 cantarell-fonts-0.0.20.1.tar.xz diff --git a/package/cantarell/cantarell.mk b/package/cantarell/cantarell.mk new file mode 100644 index 00000000000..aaad85a82d1 --- /dev/null +++ b/package/cantarell/cantarell.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# cantarell +# +################################################################################ + +CANTARELL_VERSION_MAJOR = 0.0 +CANTARELL_VERSION = $(CANTARELL_VERSION_MAJOR).20.1 +CANTARELL_SITE = http://ftp.gnome.org/pub/gnome/sources/cantarell-fonts/$(CANTARELL_VERSION_MAJOR) +CANTARELL_SOURCE = cantarell-fonts-$(CANTARELL_VERSION).tar.xz +CANTARELL_DEPENDENCIES = host-pkgconf +CANTARELL_LICENSE = OFLv1.1 +CANTARELL_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/ccache/ccache.hash b/package/ccache/ccache.hash index 56bf0d0c559..483243b02db 100644 --- a/package/ccache/ccache.hash +++ b/package/ccache/ccache.hash @@ -1,2 +1,2 @@ -# Verified key https://samba.org/ftp/ccache/ccache-3.2.2.tar.xz.asc - sha256 computed locally -sha256 4f0d99699f24d198494addca0f41a93b0150cdfd01491f15a5d7eb02c7c2a0ca ccache-3.2.2.tar.xz +# Verified key https://samba.org/ftp/ccache/ccache-3.2.4.tar.xz.asc - sha256 computed locally +sha256 1c3da93f654e78a4ac71a54b0f63b19bc0fef9aa5522f4ebb9c201d4361cea5d ccache-3.2.4.tar.xz diff --git a/package/ccache/ccache.mk b/package/ccache/ccache.mk index 3bd28039e23..bce801ed033 100644 --- a/package/ccache/ccache.mk +++ b/package/ccache/ccache.mk @@ -4,7 +4,7 @@ # ################################################################################ -CCACHE_VERSION = 3.2.2 +CCACHE_VERSION = 3.2.4 CCACHE_SITE = https://samba.org/ftp/ccache CCACHE_SOURCE = ccache-$(CCACHE_VERSION).tar.xz CCACHE_LICENSE = GPLv3+, others @@ -26,15 +26,10 @@ HOST_CCACHE_CONF_OPTS += --with-bundled-zlib # is already used by autotargets for the ccache package. # BR_CACHE_DIR is exported by Makefile based on config option # BR2_CCACHE_DIR. -# - ccache shouldn't use the compiler binary mtime to detect a change in -# the compiler, because in the context of Buildroot, that completely -# defeats the purpose of ccache. Of course, that leaves the user -# responsible for purging its cache when the compiler changes. # - Change hard-coded last-ditch default to match path in .config, to avoid # the need to specify BR_CACHE_DIR when invoking ccache directly. define HOST_CCACHE_PATCH_CONFIGURATION sed -i 's,getenv("CCACHE_DIR"),getenv("BR_CACHE_DIR"),' $(@D)/ccache.c - sed -i 's,conf->compiler_check = x_strdup("mtime"),conf->compiler_check = x_strdup("none"),' $(@D)/conf.c sed -i 's,"%s/.ccache","$(BR_CACHE_DIR)",' $(@D)/conf.c endef diff --git a/package/cdrkit/0002-define-__THROW-to-avoid-build-issue-with-musl.patch b/package/cdrkit/0002-define-__THROW-to-avoid-build-issue-with-musl.patch new file mode 100644 index 00000000000..2e0f6d52e33 --- /dev/null +++ b/package/cdrkit/0002-define-__THROW-to-avoid-build-issue-with-musl.patch @@ -0,0 +1,47 @@ +From 9454ef47db30caa4359766c8730d9d92f65c64f7 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sat, 8 Aug 2015 22:58:57 +0200 +Subject: [PATCH] define __THROW to avoid build issue with musl + +Fixes: +http://autobuild.buildroot.net/results/d27/d2781e70b04a207e2e9397d888032294c7285034/build-end.log + +Signed-off-by: Romain Naour +--- + genisoimage/sha256.h | 4 ++++ + genisoimage/sha512.h | 4 ++++ + 2 files changed, 8 insertions(+) + +diff --git a/genisoimage/sha256.h b/genisoimage/sha256.h +index e7f4cb9..bcae7ef 100644 +--- a/genisoimage/sha256.h ++++ b/genisoimage/sha256.h +@@ -29,6 +29,10 @@ + #include + #include + ++/* define __THROW to avoid build issue when it's not available from the libc */ ++#ifndef __THROW ++# define __THROW ++#endif + + /* Structure to save state of computation between the single steps. */ + struct sha256_ctx +diff --git a/genisoimage/sha512.h b/genisoimage/sha512.h +index 7298355..8cee8b0 100644 +--- a/genisoimage/sha512.h ++++ b/genisoimage/sha512.h +@@ -29,6 +29,10 @@ + #include + #include + ++/* define __THROW to avoid build issue when it's not available from the libc */ ++#ifndef __THROW ++# define __THROW ++#endif + + /* Structure to save state of computation between the single steps. */ + struct sha512_ctx +-- +2.4.3 + diff --git a/package/cdrkit/Config.in b/package/cdrkit/Config.in index 3b0b7f1e547..46c0ba9bf25 100644 --- a/package/cdrkit/Config.in +++ b/package/cdrkit/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_CDRKIT # Needed for libbz select BR2_PACKAGE_BZIP2 select BR2_PACKAGE_LIBCAP + select BR2_PACKAGE_ZLIB depends on BR2_USE_MMU # fork depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # libcap bool "cdrkit" diff --git a/package/check/Config.in b/package/check/Config.in new file mode 100644 index 00000000000..04682e1481a --- /dev/null +++ b/package/check/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_CHECK + bool "check" + help + Check is a unit testing framework for C. + + http://check.sourceforge.net/ diff --git a/package/check/check.hash b/package/check/check.hash new file mode 100644 index 00000000000..0c3a924b575 --- /dev/null +++ b/package/check/check.hash @@ -0,0 +1,3 @@ +# From http://sourceforge.net/projects/check/files/check/0.10.0/ +md5 53c5e5c77d090e103a17f3ed7fd7d8b8 check-0.10.0.tar.gz +sha1 35d3a53446aea7b21a770faedb358d0fc7cba76d check-0.10.0.tar.gz diff --git a/package/check/check.mk b/package/check/check.mk new file mode 100644 index 00000000000..92dd033651b --- /dev/null +++ b/package/check/check.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# check +# +################################################################################ + +CHECK_VERSION = 0.10.0 +CHECK_SITE = http://downloads.sourceforge.net/project/check/check/$(CHECK_VERSION) +CHECK_INSTALL_STAGING = YES +CHECK_DEPENDENCIES = host-pkgconf +CHECK_LICENSE = LGPLv2.1+ +CHECK_LICENSE_FILES = COPYING.LESSER + +# Having checkmk in the target makes no sense +define CHECK_REMOVE_CHECKMK + rm -f $(TARGET_DIR)/usr/bin/checkmk +endef +CHECK_POST_INSTALL_TARGET_HOOKS += CHECK_REMOVE_CHECKMK + +$(eval $(autotools-package)) diff --git a/package/chocolate-doom/0001-Fix-gcc_struct-attribute-directive-ignored-warnings.patch b/package/chocolate-doom/0001-Fix-gcc_struct-attribute-directive-ignored-warnings.patch new file mode 100644 index 00000000000..bff8e3ec1be --- /dev/null +++ b/package/chocolate-doom/0001-Fix-gcc_struct-attribute-directive-ignored-warnings.patch @@ -0,0 +1,49 @@ +From d9c517d9a4e168c1f7ed28ad0eb9365d69f5ceb2 Mon Sep 17 00:00:00 2001 +From: Rodrigo Rebello +Date: Thu, 22 Oct 2015 11:29:55 -0200 +Subject: [PATCH] Fix "`gcc_struct' attribute directive ignored" warnings +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Compilation for target architectures other than i386, x86_64 or PowerPC +(e.g. ARM) caused multiple warnings like the following to appear: + + doomdata.h:75:1: warning: ‘gcc_struct’ attribute directive ignored + } PACKEDATTR mapsidedef_t; + ^ + +This was due to 'gcc_struct' being undefined for these architectures. +Since that attribute was actually introduced by commit 87db726b9a9ae61ca +to address the fact that -mms-bitfields became the default for GCC on +Windows, limit it to that case. + +Upstream-status: accepted, not yet released. +https://github.com/chocolate-doom/chocolate-doom/pull/629 + +Signed-off-by: Rodrigo Rebello +--- + src/doomtype.h | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/doomtype.h b/src/doomtype.h +index bf0a40e..77c026c 100644 +--- a/src/doomtype.h ++++ b/src/doomtype.h +@@ -52,10 +52,10 @@ + + #ifdef __GNUC__ + +-#ifdef __clang__ +-#define PACKEDATTR __attribute__((packed)) +-#else ++#if defined(_WIN32) && !defined(__clang__) + #define PACKEDATTR __attribute__((packed,gcc_struct)) ++#else ++#define PACKEDATTR __attribute__((packed)) + #endif + + #else +-- +2.1.4 + diff --git a/package/chocolate-doom/0002-configure-fix-with-PACKAGE-option-checks.patch b/package/chocolate-doom/0002-configure-fix-with-PACKAGE-option-checks.patch new file mode 100644 index 00000000000..f4d09f558ff --- /dev/null +++ b/package/chocolate-doom/0002-configure-fix-with-PACKAGE-option-checks.patch @@ -0,0 +1,67 @@ +From fd12fa91aa8e35dbd3ffa5bfe055baf6bde0cd63 Mon Sep 17 00:00:00 2001 +From: Rodrigo Rebello +Date: Thu, 22 Oct 2015 15:28:11 -0200 +Subject: [PATCH] configure: fix --with-PACKAGE option checks + +Options of the form --with-PACKAGE[=yes] (e.g. --with-libpng), when +passed to configure, were being treated as though --without-PACKAGE had +been given. + +Although the intention is to have configure check and use PACKAGE by +default if it's available, thus requiring the user to pass an option +only if PACKAGE must NOT be used, there are times when the opposite +might be desired (i.e. the user wants to indicate PACKAGE MUST be used). +Moreover, allowing --with-PACKAGE and behaving as if --without-PACKAGE +had been specified is in itself quite confusing. + +Fix that by testing the result of 'with_PACKAGE' in configure.ac and +acting accordingly instead of blindly assuming a 'no'. + +Upstream-status: accepted, not yet released. +https://github.com/chocolate-doom/chocolate-doom/pull/630 + +Signed-off-by: Rodrigo Rebello +--- + configure.ac | 18 ++++++++++++++++-- + 1 file changed, 16 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index ee97fe2..7b03485 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -80,7 +80,14 @@ AC_SDL_MAIN_WORKAROUND([ + [Build without libsamplerate @<:@default=check@:>@]), + [], + [ +- AC_CHECK_LIB(samplerate, src_new) ++ [with_libsamplerate=check] ++ ]) ++ AS_IF([test "x$with_libsamplerate" != xno], [ ++ AC_CHECK_LIB(samplerate, src_new, [], [ ++ AS_IF([test "x$with_libsamplerate" != xcheck], [AC_MSG_FAILURE( ++ [--with-libsamplerate was given, but test for libsamplerate failed]) ++ ]) ++ ]) + ]) + # Check for libpng. + AC_ARG_WITH([libpng], +@@ -88,8 +95,15 @@ AC_SDL_MAIN_WORKAROUND([ + [Build without libpng @<:@default=check@:>@]), + [], + [ ++ [with_libpng=check] ++ ]) ++ AS_IF([test "x$with_libpng" != xno], [ + AC_CHECK_LIB(z, zlibVersion) +- AC_CHECK_LIB(png, png_get_io_ptr) ++ AC_CHECK_LIB(png, png_get_io_ptr, [], [ ++ AS_IF([test "x$with_libpng" != xcheck], [AC_MSG_FAILURE( ++ [--with-libpng was given, but test for libpng failed]) ++ ]) ++ ]) + ]) + AC_CHECK_LIB(m, log) + +-- +2.1.4 + diff --git a/package/chocolate-doom/0003-opl-limit-use-of-ioperm-inb-outb-to-x86-architecture.patch b/package/chocolate-doom/0003-opl-limit-use-of-ioperm-inb-outb-to-x86-architecture.patch new file mode 100644 index 00000000000..860f563d767 --- /dev/null +++ b/package/chocolate-doom/0003-opl-limit-use-of-ioperm-inb-outb-to-x86-architecture.patch @@ -0,0 +1,80 @@ +From 87c7399305b30045a856d737bbfd8f59b8f52392 Mon Sep 17 00:00:00 2001 +From: Rodrigo Rebello +Date: Fri, 6 Nov 2015 12:14:01 -0200 +Subject: [PATCH] opl: limit use of ioperm/inb/outb to x86 architecture + +The use of I/O ports in the Linux driver to directly control OPL chips +is x86 specific and only really makes sense for x86-based PC's with +compatible hardware. + +For some architectures (e.g. ARM), ioperm, inb and outb do exist and are +detected by the configure script (via AC_CHECK_FUNCS(ioperm)), but their +use is inappropriate in these cases and should be avoided. + +In some other scenarios, like when using a GNU toolchain + uClibc for +PowerPC, the build even fails with the following error: + + opl_linux.c:26:20: fatal error: sys/io.h: No such file or directory + +That is so because ioperm() is exported by uClibc and gets detected by +configure, which enables the "Linux" driver via definition of +HAVE_IOPERM, but in practice 'sys/io.h' is missing for ppc (inb/outb is +not implemented, and the call to ioperm() would return EIO anyway). + +So, besides testing for HAVE_IOPERM, also test if either __i386__ or +__x86_64__ are defined before enabling this OPL driver. + +Upstream-status: accepted, not yet released. +https://github.com/chocolate-doom/chocolate-doom/pull/638 + +Signed-off-by: Rodrigo Rebello +--- + opl/opl.c | 4 ++-- + opl/opl_linux.c | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/opl/opl.c b/opl/opl.c +index 60f027d..0d25689 100644 +--- a/opl/opl.c ++++ b/opl/opl.c +@@ -27,7 +27,7 @@ + + //#define OPL_DEBUG_TRACE + +-#ifdef HAVE_IOPERM ++#if (defined(__i386__) || defined(__x86_64__)) && defined(HAVE_IOPERM) + extern opl_driver_t opl_linux_driver; + #endif + #if defined(HAVE_LIBI386) || defined(HAVE_LIBAMD64) +@@ -40,7 +40,7 @@ extern opl_driver_t opl_sdl_driver; + + static opl_driver_t *drivers[] = + { +-#ifdef HAVE_IOPERM ++#if (defined(__i386__) || defined(__x86_64__)) && defined(HAVE_IOPERM) + &opl_linux_driver, + #endif + #if defined(HAVE_LIBI386) || defined(HAVE_LIBAMD64) +diff --git a/opl/opl_linux.c b/opl/opl_linux.c +index 5df5d46..19e4c3e 100644 +--- a/opl/opl_linux.c ++++ b/opl/opl_linux.c +@@ -17,7 +17,7 @@ + + #include "config.h" + +-#ifdef HAVE_IOPERM ++#if (defined(__i386__) || defined(__x86_64__)) && defined(HAVE_IOPERM) + + #include + #include +@@ -99,5 +99,5 @@ opl_driver_t opl_linux_driver = + OPL_Timer_AdjustCallbacks, + }; + +-#endif /* #ifdef HAVE_IOPERM */ ++#endif /* #if (defined(__i386__) || defined(__x86_64__)) && defined(HAVE_IOPERM) */ + +-- +2.1.4 + diff --git a/package/chocolate-doom/Config.in b/package/chocolate-doom/Config.in new file mode 100644 index 00000000000..5e0d9c11ea6 --- /dev/null +++ b/package/chocolate-doom/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_CHOCOLATE_DOOM + bool "chocolate-doom" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_SDL + select BR2_PACKAGE_SDL_MIXER + select BR2_PACKAGE_SDL_NET + help + Chocolate Doom is a set of conservative source ports for Doom, + Heretic, Hexen and Strife, with a philosophy of preserving the + look, feel, and bugs of the vanilla versions of each. + + http://www.chocolate-doom.org diff --git a/package/chocolate-doom/chocolate-doom.hash b/package/chocolate-doom/chocolate-doom.hash new file mode 100644 index 00000000000..bdf56982e27 --- /dev/null +++ b/package/chocolate-doom/chocolate-doom.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 ad11e2871667c6fa0658abf2dcba0cd9b26fbd651ee8df55adfdc18ad8fd674a chocolate-doom-2.2.1.tar.gz diff --git a/package/chocolate-doom/chocolate-doom.mk b/package/chocolate-doom/chocolate-doom.mk new file mode 100644 index 00000000000..d64ad5168ab --- /dev/null +++ b/package/chocolate-doom/chocolate-doom.mk @@ -0,0 +1,44 @@ +################################################################################ +# +# chocolate-doom +# +################################################################################ + +CHOCOLATE_DOOM_VERSION = 2.2.1 +CHOCOLATE_DOOM_SITE = http://www.chocolate-doom.org/downloads/$(CHOCOLATE_DOOM_VERSION) +CHOCOLATE_DOOM_LICENSE = GPLv2+ +CHOCOLATE_DOOM_LICENSE_FILES = COPYING +CHOCOLATE_DOOM_DEPENDENCIES = sdl sdl_mixer sdl_net + +# We're patching configure.ac, so we need to autoreconf +CHOCOLATE_DOOM_AUTORECONF = YES + +# Avoid installing desktop entries, icons, etc. +CHOCOLATE_DOOM_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install-exec + +ifeq ($(BR2_STATIC_LIBS),y) +# SDL_mixer uses symbols from SDL, but ends up after it on the link +# cmdline. Fix it by forcing the SDL libs at the very end. +CHOCOLATE_DOOM_CONF_ENV = LIBS="`$(STAGING_DIR)/usr/bin/sdl-config --static-libs`" +endif + +CHOCOLATE_DOOM_CONF_OPTS = \ + --disable-sdltest \ + --with-sdl-prefix=$(STAGING_DIR)/usr \ + --with-sdl-exec-prefix=$(STAGING_DIR)/usr + +ifeq ($(BR2_PACKAGE_LIBPNG),y) +CHOCOLATE_DOOM_DEPENDENCIES += libpng +CHOCOLATE_DOOM_CONF_OPTS += --with-libpng +else +CHOCOLATE_DOOM_CONF_OPTS += --without-libpng +endif + +ifeq ($(BR2_PACKAGE_LIBSAMPLERATE),y) +CHOCOLATE_DOOM_DEPENDENCIES += libsamplerate +CHOCOLATE_DOOM_CONF_OPTS += --with-libsamplerate +else +CHOCOLATE_DOOM_CONF_OPTS += --without-libsamplerate +endif + +$(eval $(autotools-package)) diff --git a/package/chrony/S49chrony b/package/chrony/S49chrony index 66a50d59c08..6215acc4aa2 100755 --- a/package/chrony/S49chrony +++ b/package/chrony/S49chrony @@ -6,11 +6,11 @@ case "$1" in start) - echo "Starting chrony: " + printf "Starting chrony: " chronyd && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping chrony: " + printf "Stopping chrony: " killall chronyd && echo "OK" || echo "FAIL" ;; restart|reload) diff --git a/package/chrony/chrony.hash b/package/chrony/chrony.hash index ba7f95e50fd..fb8a6557597 100644 --- a/package/chrony/chrony.hash +++ b/package/chrony/chrony.hash @@ -1,3 +1,3 @@ -# From http://listengine.tuxfamily.org/chrony.tuxfamily.org/chrony-announce/2014/09/msg00000.html -md5 04ab702fc81150db06809562a9aaed92 chrony-1.31.tar.gz -sha1 71bb46cad2f15760192795e60efdf23069973908 chrony-1.31.tar.gz +# From http://listengine.tuxfamily.org/chrony.tuxfamily.org/chrony-announce/2016/01/msg00000.html +md5 ce46990540aab3670d093311ee43fe17 chrony-2.2.1.tar.gz +sha1 290b761478dc90d4921c98b7030ead07c49f2afd chrony-2.2.1.tar.gz diff --git a/package/chrony/chrony.mk b/package/chrony/chrony.mk index 72c4c4bb6c2..59faa10d10e 100644 --- a/package/chrony/chrony.mk +++ b/package/chrony/chrony.mk @@ -4,12 +4,23 @@ # ################################################################################ -CHRONY_VERSION = 1.31 +CHRONY_VERSION = 2.2.1 CHRONY_SITE = http://download.tuxfamily.org/chrony CHRONY_LICENSE = GPLv2 CHRONY_LICENSE_FILES = COPYING -CHRONY_CONF_OPTS = --host-system=Linux --host-machine=$(BR2_ARCH) --prefix=/usr +CHRONY_CONF_OPTS = \ + --host-system=Linux \ + --host-machine=$(BR2_ARCH) \ + --prefix=/usr \ + --without-seccomp \ + --without-tomcrypt + +ifeq ($(BR2_PACKAGE_LIBCAP),y) +CHRONY_DEPENDENCIES += libcap +else +CHRONY_CONF_OPTS += --without-libcap +endif ifeq ($(BR2_PACKAGE_LIBNSS),y) CHRONY_DEPENDENCIES += host-pkgconf libnss @@ -23,12 +34,6 @@ else CHRONY_CONF_OPTS += --disable-readline endif -# Ditch the doc build, needs makeinfo and we don't need them -define CHRONY_DISABLE_DOCS - $(SED) 's/chronyc chrony.txt/chronyc/' $(@D)/Makefile.in -endef -CHRONY_POST_PATCH_HOOKS += CHRONY_DISABLE_DOCS - define CHRONY_CONFIGURE_CMDS cd $(@D) && $(TARGET_CONFIGURE_OPTS) ./configure $(CHRONY_CONF_OPTS) endef diff --git a/package/cifs-utils/0001-mtab.c-include-paths.h-for-_PATH_MOUNTED.patch b/package/cifs-utils/0001-mtab.c-include-paths.h-for-_PATH_MOUNTED.patch new file mode 100644 index 00000000000..8fbec11c388 --- /dev/null +++ b/package/cifs-utils/0001-mtab.c-include-paths.h-for-_PATH_MOUNTED.patch @@ -0,0 +1,31 @@ +From 6603cef0f06c450196a1bca06bb143d8fcda5651 Mon Sep 17 00:00:00 2001 +From: Felix Janda +Date: Fri, 5 Dec 2014 23:19:29 +0100 +Subject: [PATCH 1/1] mtab.c: include for _PATH_MOUNTED +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Backported from: 6603cef0f06c450196a1bca06bb143d8fcda5651 + +Signed-off-by: Felix Janda +Signed-off-by: Jörg Krause +--- + mtab.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/mtab.c b/mtab.c +index 7b365b3..a662a3c 100644 +--- a/mtab.c ++++ b/mtab.c +@@ -38,6 +38,7 @@ + #include + #include + #include ++#include + #include "mount.h" + #include "config.h" + +-- +2.5.0 + diff --git a/package/cifs-utils/cifs-utils.mk b/package/cifs-utils/cifs-utils.mk index e668b08c555..89358b1f171 100644 --- a/package/cifs-utils/cifs-utils.mk +++ b/package/cifs-utils/cifs-utils.mk @@ -14,6 +14,10 @@ ifeq ($(BR2_STATIC_LIBS),y) CIFS_UTILS_CONF_OPTS += --disable-pie endif +ifeq ($(BR2_PACKAGE_KEYUTILS),y) +CIFS_UTILS_DEPENDENCIES += keyutils +endif + define CIFS_UTILS_NO_WERROR $(SED) 's/-Werror//' $(@D)/Makefile.in endef diff --git a/package/clamav/0002-static-linking.patch b/package/clamav/0002-static-linking.patch deleted file mode 100644 index 2369d097a89..00000000000 --- a/package/clamav/0002-static-linking.patch +++ /dev/null @@ -1,58 +0,0 @@ -Fix detection of statically linked libraries - -Patch submitted upstream: https://bugzilla.clamav.net/show_bug.cgi?id=11132 - -Signed-off-by: Bernd Kuhls - -diff -uNr clamav-0.98.4.org/m4/reorganization/libs/curl.m4 clamav-0.98.4/m4/reorganization/libs/curl.m4 ---- clamav-0.98.4.org/m4/reorganization/libs/curl.m4 2014-05-21 17:25:05.000000000 +0200 -+++ clamav-0.98.4/m4/reorganization/libs/curl.m4 2014-09-28 15:39:26.714111527 +0200 -@@ -38,7 +38,7 @@ - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$CURL_LDFLAGS" - AC_CHECK_LIB([curl], [curl_easy_init], [curl_msg="";have_curl="yes";CLAMSUBMIT_LIBS="$CLAMSUBMIT_LIBS $CURL_LDFLAGS";CLAMSUBMIT_CFLAGS="$CLAMSUBMIT_CFLAGS $CURL_CPPFLAGS"], -- [AC_MSG_WARN([Your libcurl is misconfigured. Please use the web interface for submitting FPs/FNs.])]) -+ [AC_MSG_WARN([Your libcurl is misconfigured. Please use the web interface for submitting FPs/FNs.])], [$CURL_LDFLAGS]) - LDFLAGS="$save_LDFLAGS" - fi - -diff -uNr clamav-0.98.4.org/m4/reorganization/libs/openssl.m4 clamav-0.98.4/m4/reorganization/libs/openssl.m4 ---- clamav-0.98.4.org/m4/reorganization/libs/openssl.m4 2014-05-22 15:18:22.000000000 +0200 -+++ clamav-0.98.4/m4/reorganization/libs/openssl.m4 2014-09-28 15:15:18.280323868 +0200 -@@ -26,7 +26,7 @@ - save_CFLAGS="$CFLAGS" - save_LIBS="$LIBS" - --SSL_LIBS="-lssl -lcrypto" -+SSL_LIBS="-lssl -lcrypto -lz" - - if test "$LIBSSL_HOME" != "/usr"; then - SSL_LDFLAGS="-L$LIBSSL_HOME/lib" -@@ -41,12 +41,12 @@ - have_ssl="no" - have_crypto="no" - --AC_CHECK_LIB([ssl], [SSL_library_init], [have_ssl="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto]) -+AC_CHECK_LIB([ssl], [SSL_library_init], [have_ssl="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto -lz]) - --AC_CHECK_LIB([crypto], [EVP_EncryptInit], [have_crypto="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])]) -+AC_CHECK_LIB([crypto], [EVP_EncryptInit], [have_crypto="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto -lz]) - - dnl OpenSSL 0.9.8 is the minimum required version due to X509_VERIFY_PARAM --AC_CHECK_LIB([ssl], [X509_VERIFY_PARAM_new], [], [AC_MSG_ERROR([Your OpenSSL installation is missing the X509_VERIFY_PARAM function. Please upgrade to a more recent version of OpenSSL.])], [-lcrypto]) -+AC_CHECK_LIB([ssl], [X509_VERIFY_PARAM_new], [], [AC_MSG_ERROR([Your OpenSSL installation is missing the X509_VERIFY_PARAM function. Please upgrade to a more recent version of OpenSSL.])], [-lcrypto -lz]) - - LDFLAGS="$save_LDFLAGS" - CFLAGS="$save_CFLAGS" -diff -uNr clamav-0.98.4.org/m4/reorganization/libs/xml.m4 clamav-0.98.4/m4/reorganization/libs/xml.m4 ---- clamav-0.98.4.org/m4/reorganization/libs/xml.m4 2014-05-21 17:25:05.000000000 +0200 -+++ clamav-0.98.4/m4/reorganization/libs/xml.m4 2014-09-28 15:57:41.836339462 +0200 -@@ -67,7 +67,7 @@ - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $XML_LIBS" - -- AC_CHECK_LIB([xml2], [xmlTextReaderRead], [working_xml="yes"], [working_xml="no"]) -+ AC_CHECK_LIB([xml2], [xmlTextReaderRead], [working_xml="yes"], [working_xml="no"], [$XML_LIBS]) - - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" diff --git a/package/clamav/0004-fix-static-build.patch b/package/clamav/0004-fix-static-build.patch deleted file mode 100644 index 9c7850a6e9b..00000000000 --- a/package/clamav/0004-fix-static-build.patch +++ /dev/null @@ -1,21 +0,0 @@ -stats: fix static link - -The stats.c file does not use the dlopen() familly of functions, but -includes dlfcn.h, which is missing on uClibc when it is configured as -a static-only C library. - -so, simply do not include dlfcn.h. - -Signed-off-by: "Yann E. MORIN" - -diff -durN clamav-0.98.5.orig/libclamav/stats.c clamav-0.98.5/libclamav/stats.c ---- clamav-0.98.5.orig/libclamav/stats.c 2014-11-13 23:30:43.000000000 +0100 -+++ clamav-0.98.5/libclamav/stats.c 2014-11-25 19:57:14.344291266 +0100 -@@ -41,7 +41,6 @@ - #include - #endif - #endif --#include - #else - #include - #include diff --git a/package/clamav/clamav.hash b/package/clamav/clamav.hash index 21983f9c635..f1931ad6f57 100644 --- a/package/clamav/clamav.hash +++ b/package/clamav/clamav.hash @@ -1,2 +1,4 @@ -# From http://sourceforge.net/projects/clamav/files/clamav/0.98.7/ -sha1 c9793d67c041e2b944116d912f8681c8bd6e4432 clamav-0.98.7.tar.gz +# From http://sourceforge.net/projects/clamav/files/clamav/0.99/ +sha1 7834baf3ce4898dd856e652c9d0301a8e14b4615 clamav-0.99.tar.gz +# Locally computed +sha256 d2792c8cfadd685fffc40b2199679628815df031fd3149ccf961649fc8787ea9 clamav-0.99.tar.gz diff --git a/package/clamav/clamav.mk b/package/clamav/clamav.mk index e6a11952218..35afd1e88ba 100644 --- a/package/clamav/clamav.mk +++ b/package/clamav/clamav.mk @@ -4,28 +4,31 @@ # ################################################################################ -CLAMAV_VERSION = 0.98.7 +CLAMAV_VERSION = 0.99 CLAMAV_SITE = http://sourceforge.net/projects/clamav/files/clamav/$(CLAMAV_VERSION) CLAMAV_LICENSE = GPLv2 CLAMAV_LICENSE_FILES = COPYING COPYING.bzip2 COPYING.file COPYING.getopt \ - COPYING.LGPL COPYING.llvm COPYING.lzma COPYING.regex COPYING.sha256 \ + COPYING.LGPL COPYING.llvm COPYING.lzma COPYING.pcre COPYING.regex \ COPYING.unrar COPYING.zlib -# clamav-0002-static-linking.patch touches configure.ac -CLAMAV_AUTORECONF = YES -CLAMAV_DEPENDENCIES = openssl zlib $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) +CLAMAV_DEPENDENCIES = \ + host-pkgconf \ + openssl \ + zlib \ + $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) # mmap cannot be detected when cross-compiling, needed for mempool support CLAMAV_CONF_ENV = \ ac_cv_c_mmap_private=yes \ have_cv_ipv6=yes +# UCLIBC_HAS_FTS is disabled, therefore disable fanotify (missing fts.h) CLAMAV_CONF_OPTS = \ --with-dbdir=/var/lib/clamav \ --with-openssl=$(STAGING_DIR)/usr \ --with-zlib=$(STAGING_DIR)/usr \ --disable-rpath \ - --disable-clamuko \ --disable-clamav \ + --disable-fanotify \ --disable-milter \ --disable-llvm \ --disable-clamdtop \ @@ -62,4 +65,11 @@ else CLAMAV_CONF_OPTS += --without-iconv endif +ifeq ($(BR2_PACKAGE_PCRE),y) +CLAMAV_CONF_OPTS += --with-pcre=$(STAGING_DIR)/usr +CLAMAV_DEPENDENCIES += pcre +else +CLAMAV_CONF_OPTS += --without-pcre +endif + $(eval $(autotools-package)) diff --git a/package/clapack/0006-remove-uninit-f2c.patch b/package/clapack/0006-remove-uninit-f2c.patch new file mode 100644 index 00000000000..83c2c5c75f3 --- /dev/null +++ b/package/clapack/0006-remove-uninit-f2c.patch @@ -0,0 +1,24 @@ +uninit.c includes glibc-specific not provided by musl. +Somewhat portable replacement is , which is available in musl +but requires non-trivial changes to uninit.c. + +f2c uses _uninit_f2c() from uninit.c to implement its -trapuv option, +pre-initializiing floating-point variables to NaN and asking FPU to send +SIGFPE whenever NaN value is encountered. + +clapack source has already been run through f2c without -trapuv, +so uninit.c code is not used anywhere and can be safely excluded. + +Signed-off-by: Alex Suykov + +--- a/F2CLIBS/libf2c/CMakeLists.txt ++++ b/F2CLIBS/libf2c/CMakeLists.txt +@@ -1,7 +1,7 @@ + set(MISC + f77vers.c i77vers.c main.c s_rnge.c abort_.c exit_.c getarg_.c iargc_.c + getenv_.c signal_.c s_stop.c s_paus.c system_.c cabs.c ctype.c +- derf_.c derfc_.c erf_.c erfc_.c sig_die.c uninit.c) ++ derf_.c derfc_.c erf_.c erfc_.c sig_die.c) + set(POW pow_ci.c pow_dd.c pow_di.c pow_hh.c pow_ii.c pow_ri.c pow_zi.c pow_zz.c) + set(CX c_abs.c c_cos.c c_div.c c_exp.c c_log.c c_sin.c c_sqrt.c) + set(DCX z_abs.c z_cos.c z_div.c z_exp.c z_log.c z_sin.c z_sqrt.c) diff --git a/package/clapack/0007-off64-t.patch b/package/clapack/0007-off64-t.patch new file mode 100644 index 00000000000..bf66d3c95fc --- /dev/null +++ b/package/clapack/0007-off64-t.patch @@ -0,0 +1,16 @@ +musl only provides off64_t, not __off64_t. +glibc and uclibc have both defined. + +Signed-off-by: Alex Suykov + +--- a/F2CLIBS/libf2c/sysdep1.h ++++ b/F2CLIBS/libf2c/sysdep1.h +@@ -10,7 +10,7 @@ + + #ifdef __linux__ + #define USE_LARGEFILE +-#define OFF_T __off64_t ++#define OFF_T off64_t + #endif + + #ifdef _AIX43 diff --git a/package/clapack/Config.in b/package/clapack/Config.in index f37752a284a..2257524ecde 100644 --- a/package/clapack/Config.in +++ b/package/clapack/Config.in @@ -1,9 +1,13 @@ +comment "clapack needs an (e)glibc toolchain" + depends on BR2_powerpc + depends on !BR2_TOOLCHAIN_USES_GLIBC + config BR2_PACKAGE_CLAPACK bool "cblas/clapack" depends on !(BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) # _fpu_control is used on PowerPC, but not available with - # uClibc - depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC) + # uClibc or musl + depends on !BR2_powerpc || BR2_TOOLCHAIN_USES_GLIBC # disable clapack on blackfin, it triggers "undefined symbol" failure # because of the "_" symbol prefix: # http://autobuild.buildroot.net/results/a28df0ba10803e6e54c2f8160bbd8190cba4d690/ diff --git a/package/cloog/cloog.hash b/package/cloog/cloog.hash index 72a5b65b749..7368c9e9d81 100644 --- a/package/cloog/cloog.hash +++ b/package/cloog/cloog.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 460c6c740acb8cdfbfbb387156b627cf731b3837605f2ec0001d079d89c69734 cloog-0.18.3.tar.gz +sha256 325adf3710ce2229b7eeb9e84d3b539556d093ae860027185e7af8a8b00a750e cloog-0.18.4.tar.gz diff --git a/package/cloog/cloog.mk b/package/cloog/cloog.mk index 4b02cd49955..4c8b4c11e79 100644 --- a/package/cloog/cloog.mk +++ b/package/cloog/cloog.mk @@ -4,7 +4,7 @@ # ################################################################################ -CLOOG_VERSION = 0.18.3 +CLOOG_VERSION = 0.18.4 CLOOG_SITE = http://www.bastoul.net/cloog/pages/download CLOOG_LICENSE = LGPLv2.1+ CLOOG_DEPENDENCIES = gmp isl diff --git a/package/cmake/0002-KWIML-Teach-ABI.h-about-Xtensa-architecture.patch b/package/cmake/0002-KWIML-Teach-ABI.h-about-Xtensa-architecture.patch deleted file mode 100644 index 7d8eec638cc..00000000000 --- a/package/cmake/0002-KWIML-Teach-ABI.h-about-Xtensa-architecture.patch +++ /dev/null @@ -1,30 +0,0 @@ -From ded79a976e2b63bbfd7a63f27ec00bd071410e27 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Tue, 17 Mar 2015 15:51:04 +0300 -Subject: [PATCH] KWIML: Teach ABI.h about Xtensa architecture - -Signed-off-by: Max Filippov ---- - Utilities/KWIML/ABI.h.in | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/Utilities/KWIML/ABI.h.in b/Utilities/KWIML/ABI.h.in -index 21c9139..6300ada 100644 ---- a/Utilities/KWIML/ABI.h.in -+++ b/Utilities/KWIML/ABI.h.in -@@ -432,6 +432,12 @@ suppression macro @KWIML@_ABI_NO_VERIFY was defined. - # define @KWIML@_ABI_ENDIAN_ID @KWIML@_ABI_ENDIAN_ID_BIG - # endif - -+/* Xtensa */ -+#elif defined(__XTENSA_EB__) -+# define @KWIML@_ABI_ENDIAN_ID @KWIML@_ABI_ENDIAN_ID_BIG -+#elif defined(__XTENSA_EL__) -+# define @KWIML@_ABI_ENDIAN_ID @KWIML@_ABI_ENDIAN_ID_LITTLE -+ - /* Unknown CPU */ - #elif !defined(@KWIML@_ABI_NO_ERROR_ENDIAN) - # error "Byte order of target CPU unknown." --- -1.8.1.4 - diff --git a/package/cmake/Config.in b/package/cmake/Config.in index f3f0f85a936..6f04a4ad39e 100644 --- a/package/cmake/Config.in +++ b/package/cmake/Config.in @@ -14,12 +14,14 @@ config BR2_PACKAGE_CMAKE_CTEST bool "ctest" select BR2_PACKAGE_CMAKE select BR2_PACKAGE_ZLIB + select BR2_PACKAGE_JSONCPP select BR2_PACKAGE_LIBCURL select BR2_PACKAGE_LIBARCHIVE select BR2_PACKAGE_EXPAT select BR2_PACKAGE_BZIP2 select BR2_PACKAGE_XZ depends on BR2_PACKAGE_CMAKE_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # from jsoncpp depends on BR2_USE_WCHAR # libarchive depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS @@ -32,6 +34,7 @@ config BR2_PACKAGE_CMAKE_CTEST http://www.cmake.org/ -comment "ctest needs a toolchain w/ C++, wchar, dynamic library" +comment "ctest needs a toolchain w/ C++, wchar, dynamic library, gcc >= 4.7" depends on BR2_PACKAGE_CMAKE_ARCH_SUPPORTS - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || BR2_STATIC_LIBS + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ + BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/cmake/cmake.hash b/package/cmake/cmake.hash index 76e03d32472..5b814162f91 100644 --- a/package/cmake/cmake.hash +++ b/package/cmake/cmake.hash @@ -1,2 +1,2 @@ -# Locally calculated -sha256 45f4d3fa8a2f61cc092ae461aac4cac1bab4ac6706f98274ea7f314dd315c6d0 cmake-3.1.3.tar.gz +# From http://www.cmake.org/files/v3.4/cmake-3.4.3-SHA-256.txt +sha256 b73f8c1029611df7ed81796bf5ca8ba0ef41c6761132340c73ffe42704f980fa cmake-3.4.3.tar.gz diff --git a/package/cmake/cmake.mk b/package/cmake/cmake.mk index 9ca6443a4e5..1a1ba3004c4 100644 --- a/package/cmake/cmake.mk +++ b/package/cmake/cmake.mk @@ -4,14 +4,14 @@ # ################################################################################ -CMAKE_VERSION_MAJOR = 3.1 +CMAKE_VERSION_MAJOR = 3.4 CMAKE_VERSION = $(CMAKE_VERSION_MAJOR).3 -CMAKE_SITE = http://www.cmake.org/files/v$(CMAKE_VERSION_MAJOR) +CMAKE_SITE = https://cmake.org/files/v$(CMAKE_VERSION_MAJOR) CMAKE_LICENSE = BSD-3c CMAKE_LICENSE_FILES = Copyright.txt HOST_CMAKE_DEPENDENCIES = host-pkgconf -CMAKE_DEPENDENCIES = zlib libcurl libarchive expat bzip2 xz +CMAKE_DEPENDENCIES = zlib jsoncpp libcurl libarchive expat bzip2 xz CMAKE_CONF_OPTS = \ -DKWSYS_LFS_WORKS=TRUE \ diff --git a/package/collectd/0001-build-add-libavltree-libcommon-libheap-dependencies.patch b/package/collectd/0001-build-add-libavltree-libcommon-libheap-dependencies.patch deleted file mode 100644 index 1ee1e7c524b..00000000000 --- a/package/collectd/0001-build-add-libavltree-libcommon-libheap-dependencies.patch +++ /dev/null @@ -1,21 +0,0 @@ -build: add libavltree, libcommon & libheap dependencies - -Otherwise it can break on very parallel builds since collectd link time -arrives before one or more of these were built. - -Status: requested github pull (patch slightly different for newer rev). - -Signed-off-by: Gustavo Zacarias - -diff -Nura collectd-5.5.0.orig/src/daemon/Makefile.am collectd-5.5.0/src/daemon/Makefile.am ---- collectd-5.5.0.orig/src/daemon/Makefile.am 2015-07-06 10:01:17.820506239 -0300 -+++ collectd-5.5.0/src/daemon/Makefile.am 2015-07-06 10:02:03.364054763 -0300 -@@ -49,7 +49,7 @@ - collectd_CFLAGS = $(AM_CFLAGS) - collectd_LDFLAGS = -export-dynamic - collectd_LDADD = libavltree.la libcommon.la libheap.la -lm --collectd_DEPENDENCIES = -+collectd_DEPENDENCIES = libavltree.la libcommon.la libheap.la - - # Link to these libraries.. - if BUILD_WITH_LIBRT diff --git a/package/collectd/Config.in b/package/collectd/Config.in index 20549787d44..ec7e942e9e3 100644 --- a/package/collectd/Config.in +++ b/package/collectd/Config.in @@ -284,7 +284,7 @@ config BR2_PACKAGE_COLLECTD_MEMORY config BR2_PACKAGE_COLLECTD_MODBUS bool "modbus" - select BR2_PACKAGE_MODBUS + select BR2_PACKAGE_LIBMODBUS help Reads register values from a modbus "slave" via Modbus/TCP. @@ -504,11 +504,7 @@ config BR2_PACKAGE_COLLECTD_NETWORK config BR2_PACKAGE_COLLECTD_RRDTOOL bool "rrdtool" depends on BR2_USE_WCHAR # rrdtool - select BR2_PACKAGE_FREETYPE - select BR2_PACKAGE_LIBART - select BR2_PACKAGE_LIBPNG select BR2_PACKAGE_RRDTOOL - select BR2_PACKAGE_ZLIB help Writes values to RRD-files. diff --git a/package/collectd/collectd.hash b/package/collectd/collectd.hash index 43bcfdd8f18..3d982fec8b5 100644 --- a/package/collectd/collectd.hash +++ b/package/collectd/collectd.hash @@ -1,2 +1,2 @@ -# From http://collectd.org/download.shtml -sha256 847684cf5c10de1dc34145078af3fcf6e0d168ba98c14f1343b1062a4b569e88 collectd-5.5.0.tar.bz2 +# From https://collectd.org/files/SHA256SUM +sha256 f9c5d526e1f0429a7db1ccd90bdf9e23923a2fd43b7285cfda8f0341e5c0bc3f collectd-5.5.1.tar.bz2 diff --git a/package/collectd/collectd.mk b/package/collectd/collectd.mk index 6e1ea5ceae5..06c5389fe8e 100644 --- a/package/collectd/collectd.mk +++ b/package/collectd/collectd.mk @@ -4,15 +4,13 @@ # ################################################################################ -COLLECTD_VERSION = 5.5.0 +COLLECTD_VERSION = 5.5.1 COLLECTD_SITE = http://collectd.org/files COLLECTD_SOURCE = collectd-$(COLLECTD_VERSION).tar.bz2 COLLECTD_CONF_ENV = ac_cv_lib_yajl_yajl_alloc=yes COLLECTD_INSTALL_STAGING = YES -COLLECTD_LICENSE = GPLv2 LGPLv2.1 +COLLECTD_LICENSE = GPLv2, LGPLv2.1 COLLECTD_LICENSE_FILES = COPYING -# For 0001-build-add-libavltree-libcommon-libheap-dependencies.patch -COLLECTD_AUTORECONF = YES # These require unmet dependencies, are fringe, pointless or deprecated COLLECTD_PLUGINS_DISABLE = \ diff --git a/package/comix-cursors/Config.in b/package/comix-cursors/Config.in new file mode 100644 index 00000000000..ac7a089c360 --- /dev/null +++ b/package/comix-cursors/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_COMIX_CURSORS + bool "comix-cursors" + help + X11 mouse theme with a comics feeling. + + http://kde-look.org/content/show.php/ComixCursors?content=32627 diff --git a/package/comix-cursors/comix-cursors.hash b/package/comix-cursors/comix-cursors.hash new file mode 100644 index 00000000000..d7f33ca0781 --- /dev/null +++ b/package/comix-cursors/comix-cursors.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3109e4d19d930a6a2a5c3422ebaaa2002640169118f9b12c042bb64995f3ec31 ComixCursors-0.8.2.tar.bz2 diff --git a/package/comix-cursors/comix-cursors.mk b/package/comix-cursors/comix-cursors.mk new file mode 100644 index 00000000000..f8e82840557 --- /dev/null +++ b/package/comix-cursors/comix-cursors.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# comix-cursors +# +################################################################################ + +COMIX_CURSORS_VERSION = 0.8.2 +COMIX_CURSORS_SITE = http://limitland.de/downloads/comixcursors +COMIX_CURSORS_SOURCE = ComixCursors-$(COMIX_CURSORS_VERSION).tar.bz2 +COMIX_CURSORS_LICENSE = GPLv3 +COMIX_CURSORS_STRIP_COMPONENTS = 0 + +define COMIX_CURSORS_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/usr/share/cursors/xorg-x11 + cp -a $(@D)/* \ + $(TARGET_DIR)/usr/share/cursors/xorg-x11 +endef + +$(eval $(generic-package)) diff --git a/package/connman/0001-configure-check-for-execinfo.h.patch b/package/connman/0001-configure-check-for-execinfo.h.patch new file mode 100644 index 00000000000..384f41bd8b4 --- /dev/null +++ b/package/connman/0001-configure-check-for-execinfo.h.patch @@ -0,0 +1,65 @@ +From 30642d5b1a3f479987c4d50a237311d84d5f0581 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Thu, 24 Dec 2015 12:04:57 +0100 +Subject: [PATCH] configure: check for execinfo.h + +Not all toolchains have execinfo.h. For example, support for it is +optional in uClibc, while it is entirely missing from musl. + +Add a check in configure to look for it. + +Since execinfo.h is /only/ used to dump a backtrace in case of failure, +just do nothing when execinfo.h is missing. + +Signed-off-by: "Yann E. MORIN" +--- + configure.ac | 2 ++ + src/log.c | 4 ++++ + 2 files changed, 6 insertions(+) + +diff --git a/configure.ac b/configure.ac +index b51d6b3..28e657b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -182,6 +182,8 @@ AC_CHECK_LIB(resolv, ns_initparse, dummy=yes, [ + AC_MSG_ERROR(resolver library support is required)) + ]) + ++AC_CHECK_HEADERS([execinfo.h]) ++ + AC_CHECK_FUNC(signalfd, dummy=yes, + AC_MSG_ERROR(signalfd support is required)) + +diff --git a/src/log.c b/src/log.c +index a693bd0..76e10e7 100644 +--- a/src/log.c ++++ b/src/log.c +@@ -30,7 +30,9 @@ + #include + #include + #include ++#if defined(HAVE_EXECINFO_H) + #include ++#endif + #include + + #include "connman.h" +@@ -112,6 +114,7 @@ void connman_debug(const char *format, ...) + + static void print_backtrace(unsigned int offset) + { ++#if defined(HAVE_EXECINFO_H) + void *frames[99]; + size_t n_ptrs; + unsigned int i; +@@ -210,6 +213,7 @@ static void print_backtrace(unsigned int offset) + + close(outfd[1]); + close(infd[0]); ++#endif /* HAVE_EXECINFO_H */ + } + + static void signal_handler(int signo) +-- +1.9.1 + diff --git a/package/connman/0001-uclibc-backtrace.patch b/package/connman/0001-uclibc-backtrace.patch deleted file mode 100644 index 4b806c6dd38..00000000000 --- a/package/connman/0001-uclibc-backtrace.patch +++ /dev/null @@ -1,44 +0,0 @@ -[PATCH] fix build on uClibc without UCLIBC_HAS_BACKTRACE - -Backtrace support is only used for logging on signal errors, which -isn't really critical, so simply remove backtrace info if not -available in uClibc. - -Signed-off-by: Peter Korsgaard ---- - src/log.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -Index: connman-0.78/src/log.c -=================================================================== ---- connman-0.78.orig/src/log.c -+++ connman-0.78/src/log.c -@@ -30,7 +30,12 @@ - #include - #include - #include -+#include -+/* backtrace support is optional on uClibc */ -+#if !(defined(__UCLIBC__) && !defined (__UCLIBC_HAS_BACKTRACE__)) -+#define HAVE_BACKTRACE - #include -+#endif - #include - - #include "connman.h" -@@ -112,6 +117,7 @@ - - static void print_backtrace(unsigned int offset) - { -+#ifdef HAVE_BACKTRACE - void *frames[99]; - size_t n_ptrs; - unsigned int i; -@@ -210,6 +216,7 @@ - - close(outfd[1]); - close(infd[0]); -+#endif /* HAVE_BACKTRACE */ - } - - static void signal_handler(int signo) diff --git a/package/connman/Config.in b/package/connman/Config.in index ba238af13df..26406c8c4e9 100644 --- a/package/connman/Config.in +++ b/package/connman/Config.in @@ -7,6 +7,7 @@ config BR2_PACKAGE_CONNMAN depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, libglib2 depends on BR2_USE_MMU # dbus, libglib2 depends on !BR2_STATIC_LIBS # needs dlopen() + depends on !BR2_sparc # needs atomic operation __sync_fetch_and_add help The Connection Manager (ConnMan) project provides a daemon for managing internet connections within embedded devices @@ -49,10 +50,12 @@ config BR2_PACKAGE_CONNMAN_LOOPBACK config BR2_PACKAGE_CONNMAN_NEARD bool "enable neard support" select BR2_PACKAGE_NEARD + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # neard config BR2_PACKAGE_CONNMAN_OFONO bool "enable ofono support" - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 # libcap-ng + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # libcap-ng + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # ofono select BR2_PACKAGE_OFONO config BR2_PACKAGE_CONNMAN_DEBUG @@ -66,4 +69,5 @@ endif # BR2_PACKAGE_CONNMAN comment "connman needs a toolchain w/ wchar, threads, resolver, dynamic library" depends on BR2_USE_MMU + depends on !BR2_sparc depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/connman/S45connman b/package/connman/S45connman index a8afd687170..d3d4bd5df4e 100755 --- a/package/connman/S45connman +++ b/package/connman/S45connman @@ -2,12 +2,12 @@ case "$1" in start) - echo -n "Starting connman ... " + printf "Starting connman ... " start-stop-daemon -S -q -m -b -p /var/run/connmand.pid --exec /usr/sbin/connmand -- -n echo "done." ;; stop) - echo -n "Stopping connman ..." + printf "Stopping connman ..." start-stop-daemon -K -q -p /var/run/connmand.pid echo "done." ;; diff --git a/package/connman/connman.hash b/package/connman/connman.hash index 3f266f5b3fe..4810f811486 100644 --- a/package/connman/connman.hash +++ b/package/connman/connman.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/network/connman/sha256sums.asc -sha256 2a5a69693566f7fd59b2e677fa89356ada6d709998aa665caef8707b1e7a8594 connman-1.29.tar.xz +sha256 88fcf0b6df334796b90e2fd2e434d6f5b36cd6f13b886a119b8c90276b72b8e2 connman-1.31.tar.xz diff --git a/package/connman/connman.mk b/package/connman/connman.mk index 5250c2063a5..1fe103cfe26 100644 --- a/package/connman/connman.mk +++ b/package/connman/connman.mk @@ -4,7 +4,7 @@ # ################################################################################ -CONNMAN_VERSION = 1.29 +CONNMAN_VERSION = 1.31 CONNMAN_SOURCE = connman-$(CONNMAN_VERSION).tar.xz CONNMAN_SITE = $(BR2_KERNEL_MIRROR)/linux/network/connman CONNMAN_DEPENDENCIES = libglib2 dbus iptables @@ -12,6 +12,7 @@ CONNMAN_INSTALL_STAGING = YES CONNMAN_LICENSE = GPLv2 CONNMAN_LICENSE_FILES = COPYING CONNMAN_CONF_OPTS += \ + --with-dbusconfdir=/etc \ $(if $(BR2_PACKAGE_CONNMAN_DEBUG),--enable-debug,--disable-debug) \ $(if $(BR2_PACKAGE_CONNMAN_ETHERNET),--enable-ethernet,--disable-ethernet) \ $(if $(BR2_PACKAGE_CONNMAN_WIFI),--enable-wifi,--disable-wifi) \ diff --git a/package/conntrack-tools/0001-src-fix-build-with-musl-libc.patch b/package/conntrack-tools/0001-src-fix-build-with-musl-libc.patch new file mode 100644 index 00000000000..5881f987219 --- /dev/null +++ b/package/conntrack-tools/0001-src-fix-build-with-musl-libc.patch @@ -0,0 +1,37 @@ +From d7b20d9bbed23a7a7e40af2f5e78f37ff67e8d93 Mon Sep 17 00:00:00 2001 +From: Rodrigo Rebello +Date: Mon, 23 Nov 2015 02:12:48 -0200 +Subject: [PATCH] src: fix build with musl libc + +The GNU version of 'struct tcphdr' is not exposed by musl libc headers +unless _GNU_SOURCE is defined. Without this definition, the build fails +with: + + rpc.c: In function 'rpc_helper_cb': + rpc.c:351:15: error: 'struct tcphdr' has no member named 'doff' + offset += th->doff * 4; + ^ + +Upstream status: sent +http://patchwork.ozlabs.org/patch/547376/ + +Signed-off-by: Rodrigo Rebello +--- + src/helpers/rpc.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/helpers/rpc.c b/src/helpers/rpc.c +index 82493c2..3a7b337 100644 +--- a/src/helpers/rpc.c ++++ b/src/helpers/rpc.c +@@ -28,6 +28,7 @@ + + #include + #include ++#define _GNU_SOURCE + #include + #include + +-- +2.1.4 + diff --git a/package/conntrack-tools/conntrack-tools.hash b/package/conntrack-tools/conntrack-tools.hash index ecb081175b9..7ff1cf7a4b0 100644 --- a/package/conntrack-tools/conntrack-tools.hash +++ b/package/conntrack-tools/conntrack-tools.hash @@ -1,3 +1,3 @@ -# From ftp://ftp.netfilter.org/pub/conntrack-tools/conntrack-tools-1.4.2.tar.bz2.{md5sum,sha1sum} -md5 b1f9d006e7bf000a77395ff7cd3fac16 conntrack-tools-1.4.2.tar.bz2 -sha1 50b89305bb689973d42a163c480dc77a5c0f6fe0 conntrack-tools-1.4.2.tar.bz2 +# From ftp://ftp.netfilter.org/pub/conntrack-tools/conntrack-tools-1.4.3.tar.bz2.{md5sum,sha1sum} +md5 966a5d8f846ddf5304bcd12685c0707f conntrack-tools-1.4.3.tar.bz2 +sha1 509db30f34b283f4a74a7e638ba0ca713d3fe98c conntrack-tools-1.4.3.tar.bz2 diff --git a/package/conntrack-tools/conntrack-tools.mk b/package/conntrack-tools/conntrack-tools.mk index 983f9549809..728758789ce 100644 --- a/package/conntrack-tools/conntrack-tools.mk +++ b/package/conntrack-tools/conntrack-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -CONNTRACK_TOOLS_VERSION = 1.4.2 +CONNTRACK_TOOLS_VERSION = 1.4.3 CONNTRACK_TOOLS_SOURCE = conntrack-tools-$(CONNTRACK_TOOLS_VERSION).tar.bz2 CONNTRACK_TOOLS_SITE = http://www.netfilter.org/projects/conntrack-tools/files CONNTRACK_TOOLS_DEPENDENCIES = host-pkgconf \ @@ -13,10 +13,22 @@ CONNTRACK_TOOLS_DEPENDENCIES = host-pkgconf \ CONNTRACK_TOOLS_LICENSE = GPLv2+ CONNTRACK_TOOLS_LICENSE_FILES = COPYING +CONNTRACK_TOOLS_CFLAGS = $(TARGET_CFLAGS) + +# Some of conntrack-tools source files include both linux/in.h (via +# linux/netfilter.h for kernel headers >= 4.2) and netinet/in.h, which +# causes some symbol conflicts when musl is used. Defining __GLIBC__ +# works around that issue since the kernel headers are prepared to +# avoid redefinition of certain symbols when they see __GLIBC__. +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +CONNTRACK_TOOLS_CFLAGS += -D__GLIBC__ +endif + ifeq ($(BR2_PACKAGE_LIBTIRPC),y) -CONNTRACK_TOOLS_CONF_ENV += \ - CFLAGS="$(TARGET_CFLAGS) `$(PKG_CONFIG_HOST_BINARY) --cflags libtirpc`" +CONNTRACK_TOOLS_CFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags libtirpc` CONNTRACK_TOOLS_DEPENDENCIES += libtirpc host-pkgconf endif +CONNTRACK_TOOLS_CONF_ENV = CFLAGS="$(CONNTRACK_TOOLS_CFLAGS)" + $(eval $(autotools-package)) diff --git a/package/coreutils/coreutils.hash b/package/coreutils/coreutils.hash index 21a25450111..38d3bb1eebc 100644 --- a/package/coreutils/coreutils.hash +++ b/package/coreutils/coreutils.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 a2d75286a4b9ef3a13039c2da3868a61be4ee9f17d8ae380a35a97e506972170 coreutils-8.24.tar.xz +sha256 31e67c057a5b32a582f26408c789e11c2e8d676593324849dcf5779296cdce87 coreutils-8.25.tar.xz diff --git a/package/coreutils/coreutils.mk b/package/coreutils/coreutils.mk index bb2ef961b8f..0d7b7821a2b 100644 --- a/package/coreutils/coreutils.mk +++ b/package/coreutils/coreutils.mk @@ -4,7 +4,7 @@ # ################################################################################ -COREUTILS_VERSION = 8.24 +COREUTILS_VERSION = 8.25 COREUTILS_SITE = $(BR2_GNU_MIRROR)/coreutils COREUTILS_SOURCE = coreutils-$(COREUTILS_VERSION).tar.xz COREUTILS_LICENSE = GPLv3+ @@ -99,18 +99,28 @@ COREUTILS_CONF_OPTS += --with-openssl=yes COREUTILS_DEPENDENCIES += openssl endif -define COREUTILS_POST_INSTALL +ifeq ($(BR2_ROOTFS_MERGED_USR),) +define COREUTILS_CLEANUP_BIN # some things go in root rather than usr for f in $(COREUTILS_BIN_PROGS); do \ mv -f $(TARGET_DIR)/usr/bin/$$f $(TARGET_DIR)/bin/$$f || exit 1; \ done +endef +COREUTILS_POST_INSTALL_TARGET_HOOKS += COREUTILS_CLEANUP_BIN +endif + +ifeq ($(BR2_STATIC_LIBS),y) +COREUTILS_CONF_OPTS += --enable-no-install-program=stdbuf +endif + +define COREUTILS_CLEANUP # link for archaic shells ln -fs test $(TARGET_DIR)/usr/bin/[ # gnu thinks chroot is in bin, debian thinks it's in sbin mv -f $(TARGET_DIR)/usr/bin/chroot $(TARGET_DIR)/usr/sbin/chroot endef -COREUTILS_POST_INSTALL_TARGET_HOOKS += COREUTILS_POST_INSTALL +COREUTILS_POST_INSTALL_TARGET_HOOKS += COREUTILS_CLEANUP # If both coreutils and busybox are selected, the corresponding applets # may need to be reinstated by the clean targets. diff --git a/package/cpio/Config.in b/package/cpio/Config.in index df40faccf8f..1210a0bde14 100644 --- a/package/cpio/Config.in +++ b/package/cpio/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_CPIO bool "cpio" # Need argp.h support - select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC + select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL depends on BR2_USE_WCHAR help cpio archive utility for creation and extraction. diff --git a/package/cpio/cpio.hash b/package/cpio/cpio.hash index c52e86a7d30..962a100cc44 100644 --- a/package/cpio/cpio.hash +++ b/package/cpio/cpio.hash @@ -1,9 +1,2 @@ # Locally calculated after checking pgp signature -sha256 601b1d774cd6e4cd39416203c91ec59dbd65dd27d79d75e1a9b89497ea643978 cpio-2.11.tar.gz - -# Locally calculated -sha256 903fb87e00813daf257be5d1680ad93770d320c707ab2ec345486958b2e8a21f cpio-2.11-stdio.in.patch -sha256 6b6505a97dda75d24627d9ba461b45ab9ea4764e1a2788d6986eb2978434f25d cpio-2.11-CVE-2014-9112.patch -sha256 0cf7c9749f1c1610aaf46e17eacd6614c5ef8c2114236bcdd08d53e929020ae5 cpio-2.11-testsuite-CVE-2014-9112.patch -sha256 f1f587f70a38363691cbd4dfe89f962c8c57266277f0fbc781910c6a7065be7e cpio-2.11-check_for_symlinks-CVE-2015-1197.patch -sha256 b3d317e3c5705d7f9e503f56540baf3cb6dd1d0e9be0261151a5b08378c2d98c cpio-2.11-stat.patch +sha256 08a35e92deb3c85d269a0059a27d4140a9667a6369459299d08c17f713a92e73 cpio-2.12.tar.gz diff --git a/package/cpio/cpio.mk b/package/cpio/cpio.mk index aa9daced176..1576127968a 100644 --- a/package/cpio/cpio.mk +++ b/package/cpio/cpio.mk @@ -4,21 +4,16 @@ # ################################################################################ -CPIO_VERSION = 2.11 +CPIO_VERSION = 2.12 CPIO_SITE = http://ftp.gnu.org/gnu/cpio +CPIO_CONF_OPTS = --bindir=/bin +CPIO_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) CPIO_LICENSE = GPLv3+ CPIO_LICENSE_FILES = COPYING -CPIO_PATCH = \ - https://projects.archlinux.org/svntogit/packages.git/plain/cpio/trunk/cpio-2.11-stdio.in.patch \ - https://projects.archlinux.org/svntogit/packages.git/plain/cpio/trunk/cpio-2.11-CVE-2014-9112.patch \ - https://projects.archlinux.org/svntogit/packages.git/plain/cpio/trunk/cpio-2.11-testsuite-CVE-2014-9112.patch \ - https://projects.archlinux.org/svntogit/packages.git/plain/cpio/trunk/cpio-2.11-check_for_symlinks-CVE-2015-1197.patch \ - https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-arch/cpio/files/cpio-2.11-stat.patch -# cpio uses argp.h which is not provided by uclibc by default. -# Use the argp-standalone package to provide this but make sure -# the host package does not try to use the host version. -ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) +# cpio uses argp.h which is not provided by uclibc or musl by default. +# Use the argp-standalone package to provide this. +ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) CPIO_DEPENDENCIES += argp-standalone endif diff --git a/package/cppcms/Config.in b/package/cppcms/Config.in index 85ba1182392..79f54741ba7 100644 --- a/package/cppcms/Config.in +++ b/package/cppcms/Config.in @@ -26,7 +26,6 @@ if BR2_PACKAGE_CPPCMS config BR2_PACKAGE_CPPCMS_ICU bool "enable icu support" depends on !BR2_BINFMT_FLAT # icu - depends on BR2_ARCH_HAS_ATOMICS # icu select BR2_PACKAGE_ICU help Using ICU allows advanced localization features into CppCMS, diff --git a/package/cppcms/cppcms.hash b/package/cppcms/cppcms.hash index 3b2fa28cd6d..28e998c6c17 100644 --- a/package/cppcms/cppcms.hash +++ b/package/cppcms/cppcms.hash @@ -1,2 +1,5 @@ +# From http://sourceforge.net/projects/cppcms/files/cppcms/1.0.5/ +sha1 15f21897c14acfd4b0c74622e49d95857f2fe939 cppcms-1.0.5.tar.bz2 +md5 d668c201dd31fff8090380ebdc0bcc2b cppcms-1.0.5.tar.bz2 # Locally computed: -sha256 7c76befc706f3a5f7435b5757eab56784d762db9dd3654467e02e85000caf700 cppcms-1.0.4.tar.bz2 +sha256 84b685977bca97c3e997497f227bd5906adb80555066d811a7046b01c2f51865 cppcms-1.0.5.tar.bz2 diff --git a/package/cppcms/cppcms.mk b/package/cppcms/cppcms.mk index 7f9a4522961..611020c5887 100644 --- a/package/cppcms/cppcms.mk +++ b/package/cppcms/cppcms.mk @@ -4,7 +4,7 @@ # ################################################################################ -CPPCMS_VERSION = 1.0.4 +CPPCMS_VERSION = 1.0.5 CPPCMS_SOURCE = cppcms-$(CPPCMS_VERSION).tar.bz2 CPPCMS_LICENSE = LGPLv3 CPPCMS_LICENSE_FILES = COPYING.TXT diff --git a/package/cramfs/0003-fix-missing-types.patch b/package/cramfs/0003-fix-missing-types.patch new file mode 100644 index 00000000000..896110011ee --- /dev/null +++ b/package/cramfs/0003-fix-missing-types.patch @@ -0,0 +1,17 @@ +mkcramfs; loff_t is guarded by _GNU_SOURCE + +Although already properly done in cramfsck, it was missing in mkcramfs. + +Signed-off-by: "Yann E. MORIN" + +diff -durN cramfs-1.1.orig/mkcramfs.c cramfs-1.1/mkcramfs.c +--- cramfs-1.1.orig/mkcramfs.c 2015-08-05 22:31:16.830543096 +0200 ++++ cramfs-1.1/mkcramfs.c 2015-08-05 22:33:33.136289744 +0200 +@@ -22,6 +22,7 @@ + * If you change the disk format of cramfs, please update fs/cramfs/README. + */ + ++#define _GNU_SOURCE + #include + #include + #include diff --git a/package/crda/Config.in b/package/crda/Config.in index 5318fc1de6c..4eb1643606b 100644 --- a/package/crda/Config.in +++ b/package/crda/Config.in @@ -7,8 +7,7 @@ config BR2_PACKAGE_CRDA # regdb is a runtime dependency select BR2_PACKAGE_WIRELESS_REGDB # Triggers the _gp link issue - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII help Central Regulatory Domain Agent. @@ -21,5 +20,4 @@ config BR2_PACKAGE_CRDA comment "crda needs a toolchain w/ threads, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII diff --git a/package/cryptodev-linux/0001-fix-compilation-against-linux-3.19.patch b/package/cryptodev-linux/0001-fix-compilation-against-linux-3.19.patch deleted file mode 100644 index aebbc9b595e..00000000000 --- a/package/cryptodev-linux/0001-fix-compilation-against-linux-3.19.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 5054d20d45571cc85339351fde52f872eeb82206 Mon Sep 17 00:00:00 2001 -From: Phil Sutter -Date: Tue, 10 Feb 2015 04:57:05 +0100 -Subject: [PATCH] fix compilation against linux-3.19 - -Commit f938612dd97d481b8b5bf960c992ae577f081c17 in linux.git removes -get_unused_fd() macro. This patch changes the calling code to use it's -content 'get_unused_fd_flags(0)' instead. Checking for when -get_unused_fd_flags was introduced shows it's been there since 2.6.23 at -least, so probably no need to make this change conditional on the target -kernel version. - -Original patch by Ricardo Ribalda Delgado for Open Embedded, reported by -Oleg Rakhmanov. - -Signed-off-by: Phil Sutter -Signed-off-by: Gustavo Zacarias ---- - ioctl.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ioctl.c b/ioctl.c -index 5a55a76..b23f5fd 100644 ---- a/ioctl.c -+++ b/ioctl.c -@@ -546,7 +546,7 @@ static int - clonefd(struct file *filp) - { - int ret; -- ret = get_unused_fd(); -+ ret = get_unused_fd_flags(0); - if (ret >= 0) { - get_file(filp); - fd_install(ret, filp); --- -2.0.5 - diff --git a/package/cryptodev-linux/0002-fix-ccache-compile.patch b/package/cryptodev-linux/0002-fix-ccache-compile.patch deleted file mode 100644 index 058fb434e43..00000000000 --- a/package/cryptodev-linux/0002-fix-ccache-compile.patch +++ /dev/null @@ -1,20 +0,0 @@ -Fix compilation with ccache enabled - -When ccache is enabled the CROSS_COMPILE variable contains a space, so -it must be properly quoted. - -Signed-off-by: Doug Kehn - -Index: cryptodev-linux-1.7/Makefile -=================================================================== ---- cryptodev-linux-1.7.orig/Makefile -+++ cryptodev-linux-1.7/Makefile -@@ -18,7 +18,7 @@ ifneq (${ARCH},) - KERNEL_MAKE_OPTS += ARCH=${ARCH} - endif - ifneq (${CROSS_COMPILE},) --KERNEL_MAKE_OPTS += CROSS_COMPILE=${CROSS_COMPILE} -+KERNEL_MAKE_OPTS += CROSS_COMPILE="${CROSS_COMPILE}" - endif - - build: version.h diff --git a/package/cryptodev-linux/cryptodev-linux.hash b/package/cryptodev-linux/cryptodev-linux.hash index d5e0bae44cc..d7195ac6f86 100644 --- a/package/cryptodev-linux/cryptodev-linux.hash +++ b/package/cryptodev-linux/cryptodev-linux.hash @@ -1,2 +1,2 @@ # Locally calculated after checking php signature -sha256 41880533b53de4d7b3f054e230f576988dafb8eed7bef5ebcf6422bb2e3a3b25 cryptodev-linux-1.7.tar.gz +sha256 67fabde9fb67b286a96c4f45b594b0eccd0f761b495705c18f2ae9461b831376 cryptodev-linux-1.8.tar.gz diff --git a/package/cryptodev-linux/cryptodev-linux.mk b/package/cryptodev-linux/cryptodev-linux.mk index 6001c71921b..c3f53553450 100644 --- a/package/cryptodev-linux/cryptodev-linux.mk +++ b/package/cryptodev-linux/cryptodev-linux.mk @@ -4,7 +4,7 @@ # ################################################################################ -CRYPTODEV_LINUX_VERSION = 1.7 +CRYPTODEV_LINUX_VERSION = 1.8 CRYPTODEV_LINUX_SITE = http://download.gna.org/cryptodev-linux CRYPTODEV_LINUX_INSTALL_STAGING = YES CRYPTODEV_LINUX_LICENSE = GPLv2+ diff --git a/package/cryptsetup/Config.in b/package/cryptsetup/Config.in index d7ccd379e6d..321b97da1c0 100644 --- a/package/cryptsetup/Config.in +++ b/package/cryptsetup/Config.in @@ -10,8 +10,7 @@ config BR2_PACKAGE_CRYPTSETUP depends on !BR2_STATIC_LIBS # lvm2 depends on BR2_USE_WCHAR # util-linux # Triggers the _gp link issue - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII help This tool helps manipulate dm-crypt and luks partitions for on-disk encryption. @@ -21,5 +20,4 @@ config BR2_PACKAGE_CRYPTSETUP comment "cryptsetup needs a toolchain w/ wchar, threads, dynamic library" depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII diff --git a/package/cryptsetup/cryptsetup.hash b/package/cryptsetup/cryptsetup.hash index a4180812dea..8fbbc7d3fb4 100644 --- a/package/cryptsetup/cryptsetup.hash +++ b/package/cryptsetup/cryptsetup.hash @@ -1,2 +1,2 @@ -# From https://www.kernel.org/pub/linux/utils/cryptsetup/v1.6/sha256sums.asc -sha256 c23c24c8d662032da8650c1c84985221be8bbedf4737c1540bba7e4517dfe820 cryptsetup-1.6.7.tar.xz +# From https://www.kernel.org/pub/linux/utils/cryptsetup/v1.7/sha256sums.asc +sha256 075524a7cc0db36d12119fa79116750accb1c6c8825d5faa2534b74b8ce3d148 cryptsetup-1.7.0.tar.xz diff --git a/package/cryptsetup/cryptsetup.mk b/package/cryptsetup/cryptsetup.mk index 3655d5dfbd5..986b131eb3f 100644 --- a/package/cryptsetup/cryptsetup.mk +++ b/package/cryptsetup/cryptsetup.mk @@ -4,8 +4,8 @@ # ################################################################################ -CRYPTSETUP_VERSION_MAJOR = 1.6 -CRYPTSETUP_VERSION = $(CRYPTSETUP_VERSION_MAJOR).7 +CRYPTSETUP_VERSION_MAJOR = 1.7 +CRYPTSETUP_VERSION = $(CRYPTSETUP_VERSION_MAJOR).0 CRYPTSETUP_SOURCE = cryptsetup-$(CRYPTSETUP_VERSION).tar.xz CRYPTSETUP_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/cryptsetup/v$(CRYPTSETUP_VERSION_MAJOR) CRYPTSETUP_DEPENDENCIES = lvm2 popt util-linux host-pkgconf \ diff --git a/package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch b/package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch new file mode 100644 index 00000000000..c0e87a4e5c3 --- /dev/null +++ b/package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch @@ -0,0 +1,29 @@ +From a77bb18a5584bb23687ed3c522dbd91a9987d5a7 Mon Sep 17 00:00:00 2001 +From: Olivier Schonken +Date: Wed, 20 Jan 2016 22:13:11 +0200 +Subject: [PATCH] Remove man from BUILDDIRS in configure + +Since cups doesn't autoreconf properly, we directly patch the +configure script. + +Signed-off-by: Olivier Schonken +--- + configure | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure b/configure +index 4170ff3..3879a75 100755 +--- a/configure ++++ b/configure +@@ -5921,7 +5921,7 @@ fi + + case "$COMPONENTS" in + all) +- BUILDDIRS="filter backend berkeley cgi-bin monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates" ++ BUILDDIRS="filter backend berkeley cgi-bin monitor notifier ppdc scheduler systemv conf data desktop locale doc examples templates" + ;; + + core) +-- +2.5.0 + diff --git a/package/cups/0001-fix-static.patch b/package/cups/0001-fix-static.patch deleted file mode 100644 index 4c9d0d41c42..00000000000 --- a/package/cups/0001-fix-static.patch +++ /dev/null @@ -1,28 +0,0 @@ -cups: fix static linking - -Append -lz to the cups linking libs to fix a problem like this one: - -../cups/libcups.a(file.o): In function `cupsFileSeek': -/home/test/test/1/output/build/cups-1.3.11/cups/file.c:1444: undefined -reference to `inflateEnd' -collect2: error: ld returned 1 exit status -make[2]: *** [ipp] Error 1 -make[2]: *** Waiting for unfinished jobs.... - -This solution is the same used upstream in newer versions. - -Fixes: - http://autobuild.buildroot.net/results/f3d/f3d4f67ce7ee1d54f5bd4c87dfddb7417db614e5/ - -Signed-off-by: Vicente Olivert Riera ---- cups-1.3.11/Makedefs.in.orig 2014-03-05 13:28:10.175437880 +0000 -+++ cups-1.3.11/Makedefs.in 2014-03-05 13:28:35.398845162 +0000 -@@ -132,7 +132,7 @@ LDFLAGS = -L../cups -L../filter @LDARCH - LEGACY_BACKENDS = @LEGACY_BACKENDS@ - LIBCUPSORDER = @LIBCUPSORDER@ - LIBCUPSIMAGEORDER = @LIBCUPSIMAGEORDER@ --LINKCUPS = @LINKCUPS@ $(SSLLIBS) -+LINKCUPS = @LINKCUPS@ $(SSLLIBS) $(LIBZ) - LINKCUPSIMAGE = @LINKCUPSIMAGE@ - LIBS = $(LINKCUPS) $(COMMONLIBS) - OPTIM = @OPTIM@ diff --git a/package/cups/0002-Do-not-use-genstrings.patch b/package/cups/0002-Do-not-use-genstrings.patch new file mode 100644 index 00000000000..325483ea8fd --- /dev/null +++ b/package/cups/0002-Do-not-use-genstrings.patch @@ -0,0 +1,36 @@ +From 193c8d8c55a3478ca5c9e161ce581e5794098c6d Mon Sep 17 00:00:00 2001 +From: Olivier Schonken +Date: Thu, 21 Jan 2016 23:04:49 +0100 +Subject: [PATCH] Do not use genstrings + +Using cross compiled genstrings while cross-compiling will break +compilation. Genstrings is still compiled because some power users +might want to do ppd compilation on their target machine, and for that +they would need to use the native compiled genstrings binary, to +generate a sample.c file for their target + +Signed-off-by: Olivier Schonken +[Thomas: completely remove call to genstrings rather than commenting +it, remove useless and potentially confusing 'echo' before the +genstrings call.] +Signed-off-by: Thomas Petazzoni +--- + ppdc/Makefile | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/ppdc/Makefile b/ppdc/Makefile +index 68bf6b2..d57a0c9 100644 +--- a/ppdc/Makefile ++++ b/ppdc/Makefile +@@ -242,8 +242,6 @@ genstrings: genstrings.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) \ + $(CXX) $(ARCHFLAGS) $(LDFLAGS) -o genstrings genstrings.o \ + libcupsppdc.a ../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) \ + $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) +- echo Generating localization strings... +- ./genstrings >sample.c + + + # +-- +2.6.4 + diff --git a/package/cups/0002-fix-stack-protector-check.patch b/package/cups/0002-fix-stack-protector-check.patch deleted file mode 100644 index 1db35ff02f4..00000000000 --- a/package/cups/0002-fix-stack-protector-check.patch +++ /dev/null @@ -1,25 +0,0 @@ -[PATCH]: use AC_TRY_LINK for stack protector check - -Actually try to link an executable to test for stack protector support, -as gcc seems to accept the -fstack-protector argument even when it's -compiled with --disable-libssp (but linking fails with a error -finding -lssp_nonshared). - -Signed-off-by: Peter Korsgaard ---- - config-scripts/cups-compiler.m4 | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: cups-1.3.9/config-scripts/cups-compiler.m4 -=================================================================== ---- cups-1.3.9.orig/config-scripts/cups-compiler.m4 -+++ cups-1.3.9/config-scripts/cups-compiler.m4 -@@ -109,7 +109,7 @@ if test -n "$GCC"; then - AC_MSG_CHECKING(if GCC supports -fstack-protector) - OLDCFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fstack-protector" -- AC_TRY_COMPILE(,, -+ AC_TRY_LINK(,, - OPTIM="$OPTIM -fstack-protector" - AC_MSG_RESULT(yes), - AC_MSG_RESULT(no)) diff --git a/package/cups/0003-Sanitize-the-installation-process.patch b/package/cups/0003-Sanitize-the-installation-process.patch new file mode 100644 index 00000000000..25bfa42a306 --- /dev/null +++ b/package/cups/0003-Sanitize-the-installation-process.patch @@ -0,0 +1,131 @@ +From e35f809c435c224954a5c7bff3f5729c5b3bc0ba Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 21 Jan 2016 23:21:06 +0100 +Subject: [PATCH] Sanitize the installation process + +The installation process does two things that are not convenient when +cross-compiling: + + - It uses install's -s option to strip binaries, but this option uses + the host strip and not the cross strip, which fails at stripping + binaries. In addition, we do not necessarily want cups to strip its + binaries, we may want to keep the debugging symbols. + + - It enforces ownership (user, group) which isn't possible since + "make install" isn't executed as root when cross-compiling. + + - It installs many files and directories with permissions that + prevent overwriting those files/directories, which meant calling + "make install" twice was failing. + +Signed-off-by: Thomas Petazzoni +--- + Makedefs.in | 12 ++++++------ + conf/Makefile | 6 +++--- + notifier/Makefile | 2 +- + scheduler/Makefile | 17 ++++++++--------- + 4 files changed, 18 insertions(+), 19 deletions(-) + +diff --git a/Makedefs.in b/Makedefs.in +index 3afef0a..3e4f1bd 100644 +--- a/Makedefs.in ++++ b/Makedefs.in +@@ -40,14 +40,14 @@ SHELL = /bin/sh + # Installation programs... + # + +-INSTALL_BIN = $(LIBTOOL) $(INSTALL) -c -m 555 @INSTALL_STRIP@ +-INSTALL_COMPDATA = $(INSTALL) -c -m 444 @INSTALL_GZIP@ ++INSTALL_BIN = $(LIBTOOL) $(INSTALL) -c -m 755 ++INSTALL_COMPDATA = $(INSTALL) -c -m 644 @INSTALL_GZIP@ + INSTALL_CONFIG = $(INSTALL) -c -m @CUPS_CONFIG_FILE_PERM@ +-INSTALL_DATA = $(INSTALL) -c -m 444 ++INSTALL_DATA = $(INSTALL) -c -m 644 + INSTALL_DIR = $(INSTALL) -d +-INSTALL_LIB = $(LIBTOOL) $(INSTALL) -c -m 555 @INSTALL_STRIP@ +-INSTALL_MAN = $(INSTALL) -c -m 444 +-INSTALL_SCRIPT = $(INSTALL) -c -m 555 ++INSTALL_LIB = $(LIBTOOL) $(INSTALL) -c -m 755 ++INSTALL_MAN = $(INSTALL) -c -m 644 ++INSTALL_SCRIPT = $(INSTALL) -c -m 755 + + # + # Default user, group, and system groups for the scheduler... +diff --git a/conf/Makefile b/conf/Makefile +index 933d7d9..6ac5e19 100644 +--- a/conf/Makefile ++++ b/conf/Makefile +@@ -72,11 +72,11 @@ install: all install-data install-headers install-libs install-exec + install-data: + for file in $(KEEP); do \ + if test -r $(SERVERROOT)/$$file ; then \ +- $(INSTALL_CONFIG) -g $(CUPS_GROUP) $$file $(SERVERROOT)/$$file.N ; \ ++ $(INSTALL_CONFIG) $$file $(SERVERROOT)/$$file.N ; \ + else \ +- $(INSTALL_CONFIG) -g $(CUPS_GROUP) $$file $(SERVERROOT) ; \ ++ $(INSTALL_CONFIG) $$file $(SERVERROOT) ; \ + fi ; \ +- $(INSTALL_CONFIG) -g $(CUPS_GROUP) $$file $(SERVERROOT)/$$file.default; \ ++ $(INSTALL_CONFIG) $$file $(SERVERROOT)/$$file.default; \ + done + $(INSTALL_DIR) -m 755 $(DATADIR)/mime + for file in $(REPLACE); do \ +diff --git a/notifier/Makefile b/notifier/Makefile +index 3206dd0..c34a4d7 100644 +--- a/notifier/Makefile ++++ b/notifier/Makefile +@@ -62,7 +62,7 @@ install: all install-data install-headers install-libs install-exec + # + + install-data: +- $(INSTALL_DIR) -m 775 -g $(CUPS_GROUP) $(CACHEDIR)/rss ++ $(INSTALL_DIR) -m 775 $(CACHEDIR)/rss + + + # +diff --git a/scheduler/Makefile b/scheduler/Makefile +index c7d244d..a96a528 100644 +--- a/scheduler/Makefile ++++ b/scheduler/Makefile +@@ -148,30 +148,29 @@ install-data: + echo Creating $(SERVERBIN)/driver... + $(INSTALL_DIR) -m 755 $(SERVERBIN)/driver + echo Creating $(SERVERROOT)... +- $(INSTALL_DIR) -m 755 -g $(CUPS_GROUP) $(SERVERROOT) ++ $(INSTALL_DIR) -m 755 $(SERVERROOT) + echo Creating $(SERVERROOT)/interfaces... +- $(INSTALL_DIR) -m 755 -g $(CUPS_GROUP) $(SERVERROOT)/interfaces ++ $(INSTALL_DIR) -m 755 $(SERVERROOT)/interfaces + echo Creating $(SERVERROOT)/ppd... +- $(INSTALL_DIR) -m 755 -g $(CUPS_GROUP) $(SERVERROOT)/ppd ++ $(INSTALL_DIR) -m 755 $(SERVERROOT)/ppd + if test "x`uname`" != xDarwin; then \ + echo Creating $(SERVERROOT)/ssl...; \ +- $(INSTALL_DIR) -m 700 -g $(CUPS_GROUP) $(SERVERROOT)/ssl; \ ++ $(INSTALL_DIR) -m 700 $(SERVERROOT)/ssl; \ + fi + if test "$(STATEDIR)" != "$(SERVERROOT)"; then \ + echo Creating $(STATEDIR)...; \ + $(INSTALL_DIR) -m 755 $(STATEDIR); \ + fi + echo Creating $(STATEDIR)/certs... +- $(INSTALL_DIR) -m 511 -o $(CUPS_USER) -g $(CUPS_PRIMARY_SYSTEM_GROUP) \ +- $(STATEDIR)/certs ++ $(INSTALL_DIR) -m 711 $(STATEDIR)/certs + echo Creating $(LOGDIR)... + $(INSTALL_DIR) -m 755 $(LOGDIR) + echo Creating $(REQUESTS)... +- $(INSTALL_DIR) -m 710 -g $(CUPS_GROUP) $(REQUESTS) ++ $(INSTALL_DIR) -m 710 $(REQUESTS) + echo Creating $(REQUESTS)/tmp... +- $(INSTALL_DIR) -m 1770 -g $(CUPS_GROUP) $(REQUESTS)/tmp ++ $(INSTALL_DIR) -m 1770 $(REQUESTS)/tmp + echo Creating $(CACHEDIR)... +- $(INSTALL_DIR) -m 770 -g $(CUPS_GROUP) $(CACHEDIR) ++ $(INSTALL_DIR) -m 770 $(CACHEDIR) + if test "x$(INITDIR)" != x; then \ + echo Installing init scripts...; \ + $(INSTALL_DIR) -m 755 $(BUILDROOT)$(INITDIR)/init.d; \ +-- +2.6.4 + diff --git a/package/cups/0003-mantohtml.patch b/package/cups/0003-mantohtml.patch deleted file mode 100644 index e6a10b0d014..00000000000 --- a/package/cups/0003-mantohtml.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- cups-1.3.5/man/Makefile 2007-07-12 21:01:14.000000000 -0400 -+++ cups-1.3.5/man/Makefile 2008-02-11 08:55:24.000000000 -0500 -@@ -173,7 +173,7 @@ html: $(MAN1) $(MAN5) $(MAN7) $(MAN8) ma - done - - mantohtml: mantohtml.o -- $(CC) $(LDFLAGS) -o $@ mantohtml.o -+ gcc -I/usr/include -I../ -L/usr/lib mantohtml.c -o mantohtml - - - # diff --git a/package/cups/Config.in b/package/cups/Config.in index 8e602214698..3f5460c11bf 100644 --- a/package/cups/Config.in +++ b/package/cups/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_CUPS bool "cups" - # serious security issues, needs upgrading - depends on BR2_DEPRECATED_SINCE_2015_05 + # needs libstdcpp for ppdc + depends on BR2_INSTALL_LIBSTDCPP # needs fork() depends on BR2_USE_MMU help @@ -9,15 +9,5 @@ config BR2_PACKAGE_CUPS http://www.cups.org -if BR2_PACKAGE_CUPS - -config BR2_PACKAGE_CUPS_PDFTOPS - bool "pdftops support" - depends on BR2_INSTALL_LIBSTDCPP - help - Enable pdftops support - -comment "pdftops support needs a toolchain w/ C++" +comment "cups needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP - -endif diff --git a/package/cups/cups.hash b/package/cups/cups.hash new file mode 100644 index 00000000000..f38399f0e78 --- /dev/null +++ b/package/cups/cups.hash @@ -0,0 +1,2 @@ +# Locally calculated: +sha256 bab0ca3ba80eae48319b3a6b19a5b14fad5ce230f30151a0cfa4c0271df281ad cups-2.1.2-source.tar.bz2 diff --git a/package/cups/cups.mk b/package/cups/cups.mk index c028ef49a32..c07dcb46402 100644 --- a/package/cups/cups.mk +++ b/package/cups/cups.mk @@ -4,7 +4,7 @@ # ################################################################################ -CUPS_VERSION = 1.3.11 +CUPS_VERSION = 2.1.2 CUPS_SOURCE = cups-$(CUPS_VERSION)-source.tar.bz2 CUPS_SITE = http://www.cups.org/software/$(CUPS_VERSION) CUPS_LICENSE = GPLv2 LGPLv2 @@ -12,20 +12,24 @@ CUPS_LICENSE_FILES = LICENSE.txt CUPS_INSTALL_STAGING = YES CUPS_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) DSTROOT=$(STAGING_DIR) install CUPS_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) DSTROOT=$(TARGET_DIR) install + CUPS_CONF_OPTS = \ --without-perl \ --without-java \ --without-php \ - --disable-gnutls \ --disable-gssapi \ --libdir=/usr/lib CUPS_CONFIG_SCRIPTS = cups-config - CUPS_DEPENDENCIES = \ - $(if $(BR2_PACKAGE_ZLIB),zlib) \ - $(if $(BR2_PACKAGE_LIBPNG),libpng) \ - $(if $(BR2_PACKAGE_JPEG),jpeg) \ - $(if $(BR2_PACKAGE_TIFF),tiff) + $(if $(BR2_PACKAGE_ZLIB),zlib) + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +CUPS_CONF_OPTS += --with-systemd=/usr/lib/systemd/system \ + --enable-systemd +CUPS_DEPENDENCIES += systemd +else +CUPS_CONF_OPTS += --disable-systemd +endif ifeq ($(BR2_PACKAGE_DBUS),y) CUPS_CONF_OPTS += --enable-dbus @@ -34,8 +38,11 @@ else CUPS_CONF_OPTS += --disable-dbus endif -ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y) -CUPS_DEPENDENCIES += xlib_libX11 +ifeq ($(BR2_PACKAGE_GNUTLS),y) +CUPS_CONF_OPTS += --enable-gnutls +CUPS_DEPENDENCIES += gnutls +else +CUPS_CONF_OPTS += --disable-gnutls endif ifeq ($(BR2_PACKAGE_PYTHON),y) @@ -45,18 +52,25 @@ else CUPS_CONF_OPTS += --without-python endif -ifeq ($(BR2_PACKAGE_CUPS_PDFTOPS),y) -CUPS_CONF_OPTS += --enable-pdftops +ifeq ($(BR2_PACKAGE_LIBUSB),y) +CUPS_CONF_OPTS += --enable-libusb +CUPS_DEPENDENCIES += libusb else -CUPS_CONF_OPTS += --disable-pdftops +CUPS_CONF_OPTS += --disable-libusb endif -# standard autoreconf fails with autoheader failures -define CUPS_FIXUP_AUTOCONF - cd $(@D) && $(AUTOCONF) -endef -CUPS_DEPENDENCIES += host-autoconf +ifeq ($(BR2_PACKAGE_LIBPAPER),y) +CUPS_CONF_OPTS += --enable-libpaper +CUPS_DEPENDENCIES += libpaper +else +CUPS_CONF_OPTS += --disable-libpaper +endif -CUPS_PRE_CONFIGURE_HOOKS += CUPS_FIXUP_AUTOCONF +ifeq ($(BR2_PACKAGE_AVAHI),y) +CUPS_DEPENDENCIES += avahi +CUPS_CONF_OPTS += --enable-avahi +else +CUPS_CONF_OPTS += --disable-avahi +endif $(eval $(autotools-package)) diff --git a/package/curlftpfs/0004-fix-musl-build-off-t.patch b/package/curlftpfs/0004-fix-musl-build-off-t.patch new file mode 100644 index 00000000000..93352305206 --- /dev/null +++ b/package/curlftpfs/0004-fix-musl-build-off-t.patch @@ -0,0 +1,39 @@ +Use off_t instead of __off_t + +__off_t is an internal C library type, which shouldn't be used by +applications. It is not defined by the musl C library, so use the +public off_t type instead. + +Signed-off-by: Thomas Petazzoni + +Index: b/ftpfs.c +=================================================================== +--- a/ftpfs.c ++++ b/ftpfs.c +@@ -687,7 +687,7 @@ + return ftpfs_getattr(path, &sbuf); + } + +-static __off_t test_size(const char* path) ++static off_t test_size(const char* path) + { + struct stat sbuf; + int err = ftpfs_getattr(path, &sbuf); +@@ -950,7 +950,7 @@ + + /* fix openoffice problem, truncating exactly to file length */ + +- __off_t size = (long long int)test_size(path); ++ off_t size = (long long int)test_size(path); + DEBUG(1, "ftpfs_truncate: %s check filesize=%lld\n", path, (long long int)size); + + if (offset == size) +@@ -978,7 +978,7 @@ + } + /* fix openoffice problem, truncating exactly to file length */ + +- __off_t size = test_size(path); ++ off_t size = test_size(path); + DEBUG(1, "ftpfs_ftruncate: %s check filesize=%lld\n", path, (long long int)size); + + if (offset == size) diff --git a/package/cwiid/Config.in b/package/cwiid/Config.in index 1b64f0a79d6..03b7dbbcdb8 100644 --- a/package/cwiid/Config.in +++ b/package/cwiid/Config.in @@ -14,7 +14,7 @@ config BR2_PACKAGE_CWIID if BR2_PACKAGE_CWIID config BR2_PACKAGE_CWIID_WMGUI bool "wmgui" - depends on BR2_ARCH_HAS_ATOMICS # libgtk2 -> cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk3 -> pango -> harfbuzz depends on BR2_PACKAGE_XORG7 # libgtk2 depends on BR2_USE_WCHAR # libgtk2 -> libglib2 depends on BR2_TOOLCHAIN_HAS_THREADS # libgtk2 -> libglib2 diff --git a/package/cxxtest/Config.in b/package/cxxtest/Config.in new file mode 100644 index 00000000000..207adab1278 --- /dev/null +++ b/package/cxxtest/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_CXXTEST + bool "cxxtest" + depends on BR2_INSTALL_LIBSTDCPP + help + CxxTest is a unit testing framework for C++ + + http://cxxtest.com/ + +comment "cxxtest needs a toolchain w/ C++ support" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/cxxtest/cxxtest.hash b/package/cxxtest/cxxtest.hash new file mode 100644 index 00000000000..f552e803faa --- /dev/null +++ b/package/cxxtest/cxxtest.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 1c154fef91c65dbf1cd4519af7ade70a61d85a923b6e0c0b007dc7f4895cf7d8 cxxtest-4.4.tar.gz diff --git a/package/cxxtest/cxxtest.mk b/package/cxxtest/cxxtest.mk new file mode 100644 index 00000000000..93bdd8b8d82 --- /dev/null +++ b/package/cxxtest/cxxtest.mk @@ -0,0 +1,30 @@ +####################################################################################### +# +# cxxtest +# +####################################################################################### + +CXXTEST_VERSION = 4.4 +CXXTEST_SITE = https://github.com/CxxTest/cxxtest/releases/download/$(CXXTEST_VERSION) +CXXTEST_LICENSE = LGPLv3 +CXXTEST_LICENSE_FILES = COPYING +CXXTEST_INSTALL_STAGING = YES +CXXTEST_INSTALL_TARGET = NO +CXXTEST_DEPENDENCIES = host-cxxtest +HOST_CXXTEST_SETUP_TYPE = setuptools +HOST_CXXTEST_SUBDIR = python + +# Copy CxxTest header files to staging directory +define CXXTEST_INSTALL_STAGING_CMDS + $(INSTALL) -m 755 -d $(STAGING_DIR)/usr/include/cxxtest + $(INSTALL) -m 644 -t $(STAGING_DIR)/usr/include/cxxtest $(@D)/cxxtest/* +endef + +# CxxTest uses python infrastructure as the build system. It consists of two parts: +# 1. cxxtestgen tool to process tests defined in header files to generate C++ source +# files. cxxtestgen is built as a host package, so that it can be used natively. +# 2. A set of header files which are installed in staging directory. This will be +# used in cross-compiling test harness to generate executable which will run on target. + +$(eval $(generic-package)) +$(eval $(host-python-package)) diff --git a/package/czmq/0001-Simply-configure.ac-to-prevent-contradictory-discove.patch b/package/czmq/0001-Simply-configure.ac-to-prevent-contradictory-discove.patch deleted file mode 100644 index 556a8df97c7..00000000000 --- a/package/czmq/0001-Simply-configure.ac-to-prevent-contradictory-discove.patch +++ /dev/null @@ -1,206 +0,0 @@ -From 23591404610b1eeffb69712d93c77c2327b9ef7a Mon Sep 17 00:00:00 2001 -From: Phillip Mienk -Date: Fri, 31 Oct 2014 00:55:35 -0700 -Subject: [PATCH] Simply configure.ac to prevent contradictory discovery of - libzmq. - -[Romain: rebase on top of 3.0.0] -Signed-off-by: Romain Naour ---- - Makefile.am | 3 ++- - addons/Makefile.am.supplement | 3 ++- - configure.ac | 46 ++----------------------------------------- - model/build-autoconf.gsl | 28 ++++++++++++++++++++++++++ - model/project.xml | 3 +++ - src/Makefile.am.supplement | 12 ++++++++++- - 6 files changed, 48 insertions(+), 47 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index 10f21fb..187c62b 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -1,7 +1,8 @@ - ACLOCAL_AMFLAGS = -I config - - AM_CPPFLAGS = \ -- -I$(srcdir)/include -+ ${zmq_CFLAGS} \ -+ -I$(srcdir)/include - - EXTRA_DIST = \ - version.sh \ -diff --git a/addons/Makefile.am.supplement b/addons/Makefile.am.supplement -index 8800db4..74f0c60 100644 ---- a/addons/Makefile.am.supplement -+++ b/addons/Makefile.am.supplement -@@ -4,7 +4,8 @@ EXTRA_DIST += \ - bin_PROGRAMS += makecert - - makecert_LDADD = \ -- libczmq.la -+ libczmq.la \ -+ ${zmq_LIBS} - - makecert_SOURCES = \ - addons/makecert.c -diff --git a/configure.ac b/configure.ac -index 1a4667e..1ccae06 100755 ---- a/configure.ac -+++ b/configure.ac -@@ -74,50 +74,8 @@ if test "x${CZMQ_GCOV}" == "xyes"; then - fi - fi - --# Check for libzmq library --libzmq_prefix=detect --AC_ARG_WITH([libzmq], -- [AS_HELP_STRING([--with-libzmq=PREFIX], -- [build with ZeroMQ library installed in PREFIX [default=autodetect]])], -- [case "x$withval" in -- xno) -- AC_MSG_ERROR([CZMQ requires the ZeroMQ library]) -- ;; -- xyes|x) -- ;; -- *) -- CPPFLAGS="$CPPFLAGS -I${withval}/include" -- LDFLAGS="$LDFLAGS -L${withval}/lib" -- zeromq_prefix=${withval} -- ;; -- esac ] --) --if test "x$libzmq_prefix" = "xdetect"; then -- PKG_CHECK_MODULES( -- [ZeroMQ], [libzmq], [libzmq_prefix=pkgconfig], [libzmq_prefix=]) -- if test "x$libzmq_prefix" = "xpkgconfig"; then -- CPPFLAGS="$CPPFLAGS ${ZeroMQ_CFLAGS}" -- LDFLAGS="$LDFLAGS ${ZeroMQ_LIBS}" -- fi --fi -- --if test "x$czmq_search_libzmq" = "xyes"; then -- if test -r "${with_libzmq}/include/zmq.h"; then -- CFLAGS="-I${with_libzmq}/include ${CFLAGS}" -- LDFLAGS="-L${with_libzmq}/lib ${LDFLAGS}" -- fi --fi -- --AC_CHECK_HEADER([zmq.h], [], [AC_MSG_ERROR([cannot find zmq.h])]) -- --AC_CHECK_LIB(zmq, zmq_init, ,[AC_MSG_ERROR([cannot link with -lzmq, install libzmq.])]) -- --AC_MSG_CHECKING([whether libzmq installation works]) --AC_LINK_IFELSE([AC_LANG_PROGRAM([#include ], -- [zmq_init(1);]) -- ], -- [AC_MSG_RESULT([yes])], -- [AC_MSG_ERROR([no. Please specify libzmq installation prefix using --with-libzmq])]) -+# Check for libzmq -+PKG_CHECK_MODULES([zmq], [libzmq]) - - # Platform specific checks - czmq_on_mingw32="no" -diff --git a/model/build-autoconf.gsl b/model/build-autoconf.gsl -index d012a3c..30aff14 100644 ---- a/model/build-autoconf.gsl -+++ b/model/build-autoconf.gsl -@@ -46,12 +46,39 @@ lib$(project.name)_la_SOURCES = \\ - - bin_PROGRAMS = $(project.name)_selftest - -+$(project.name)_selftest_CPPFLAGS = \\ -+.for package_dependency where defined (package_dependency.for_test) -+ \${$(package_dependency.name)_CFLAGS} \\ -+.endfor -+ \${lib$(project.name)_la_CFLAGS} -+ - $(project.name)_selftest_LDADD = \\ -+.if count (package_dependency, defined (count.for_lib) | defined (count.for_test) | defined (count.for_all)) > 0 -+ lib$(project.name).la \\ -+.else - lib$(project.name).la -+.endif -+.for package_dependency where defined (package_dependency.for_lib) | defined (package_dependency.for_test) | defined (package_dependency.for_all) -+. if last() -+ \${$(package_dependency.name)_LIBS} -+. else -+ \${$(package_dependency.name)_LIBS} \\ -+.endif -+.endfor - - $(project.name)_selftest_SOURCES = \\ - src/$(project.name)_selftest.c - -+lib$(project.name)_la_CPPFLAGS = \\ -+.for package_dependency where defined (package_dependency.for_lib) -+. if last() -+ \${$(package_dependency.name)_CFLAGS} -+. else -+ \${$(package_dependency.name)_CFLAGS} \\ -+. endif -+.endfor -+ ${AM_CPPFLAGS} -+ - lib$(project.name)_la_LDFLAGS = \\ - -version-info @LTVER@ - -@@ -62,6 +89,7 @@ lib$(project.name)_la_LDFLAGS += \\ - endif - - TESTS = $(project.name)_selftest -+ - .for model - . if first () - -diff --git a/model/project.xml b/model/project.xml -index 91306cf..b7bab4a 100644 ---- a/model/project.xml -+++ b/model/project.xml -@@ -2,6 +2,9 @@ - name = "czmq" - script = "project.gsl" - > -+ -+ -+ -
-
- -diff --git a/src/Makefile.am.supplement b/src/Makefile.am.supplement -index 91e5b62..929aa07 100644 ---- a/src/Makefile.am.supplement -+++ b/src/Makefile.am.supplement -@@ -95,12 +95,19 @@ libczmq_la_SOURCES = \ - - bin_PROGRAMS = czmq_selftest - -+czmq_selftest_CPPFLAGS = \ -+ ${src_libczmq_la_CFLAGS} -+ - czmq_selftest_LDADD = \ -- libczmq.la -+ libczmq.la \ -+ ${zmq_LIBS} - - czmq_selftest_SOURCES = \ - src/czmq_selftest.c - -+libczmq_la_CPPFLAGS = \ -+ ${AM_CPPFLAGS} -+ - libczmq_la_LDFLAGS = \ - -version-info @LTVER@ - -@@ -112,6 +119,9 @@ endif - - TESTS = czmq_selftest - -+# define custom target for all products of /src -+src: src/libczmq.la src/czmq_selftest -+ - # Produce generated models; do this manually in src directory - code: - gsl -q src/sockopts.xml --- -1.9.3 - diff --git a/package/czmq/czmq.mk b/package/czmq/czmq.mk index 3d82095094f..0060c8979f7 100644 --- a/package/czmq/czmq.mk +++ b/package/czmq/czmq.mk @@ -4,7 +4,7 @@ # ################################################################################ -CZMQ_VERSION = v3.0.0 +CZMQ_VERSION = v3.0.2 CZMQ_SITE = $(call github,zeromq,czmq,$(CZMQ_VERSION)) # Autoreconf required as we use the git tree diff --git a/package/dawgdic/Config.in b/package/dawgdic/Config.in index ce0b46647d8..b67342b1944 100644 --- a/package/dawgdic/Config.in +++ b/package/dawgdic/Config.in @@ -1,6 +1,8 @@ config BR2_PACKAGE_DAWGDIC bool "dawgdic" depends on BR2_INSTALL_LIBSTDCPP + # needs std::strtoll + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 help dawgdic provides a library for building and accessing dictionaries implemented with directed acyclic word graphs @@ -13,5 +15,5 @@ config BR2_PACKAGE_DAWGDIC https://github.com/stil/dawgdic -comment "dawgdic needs a toolchain w/ C++" - depends on !BR2_INSTALL_LIBSTDCPP +comment "dawgdic needs a toolchain w/ C++, gcc >= 4.6" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 diff --git a/package/dbus-cpp/Config.in b/package/dbus-cpp/Config.in index f631ece2f4f..8e9ed662a5f 100644 --- a/package/dbus-cpp/Config.in +++ b/package/dbus-cpp/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_DBUS_CPP depends on BR2_TOOLCHAIN_HAS_THREADS # dbus depends on BR2_USE_MMU # dbus depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_TOOLCHAIN_USES_MUSL # no PTHREAD_RECURSIVE_MUTEX_* select BR2_PACKAGE_EXPAT help dbus-c++ attempts to provide a C++ API for D-BUS. @@ -12,7 +13,8 @@ config BR2_PACKAGE_DBUS_CPP http://sourceforge.net/projects/dbus-cplusplus/ -comment "dbus-c++ needs a toolchain w/ C++, threads" +comment "dbus-c++ needs a uClibc or (e)glibc toolchain w/ C++, threads" depends on BR2_USE_MMU depends on BR2_PACKAGE_DBUS - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \ + || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/dbus-cpp/dbus-cpp.mk b/package/dbus-cpp/dbus-cpp.mk index 37d12e7e193..0b519670610 100644 --- a/package/dbus-cpp/dbus-cpp.mk +++ b/package/dbus-cpp/dbus-cpp.mk @@ -26,9 +26,9 @@ DBUS_CPP_AUTORECONF = YES DBUS_CPP_LICENSE = LGPLv2.1+ DBUS_CPP_LICENSE_FILES = COPYING -ifeq ($(BR2_PACKAGE_LIBECORE),y) +ifeq ($(BR2_PACKAGE_EFL),y) DBUS_CPP_CONF_OPTS += --enable-ecore -DBUS_CPP_DEPENDENCIES += libecore +DBUS_CPP_DEPENDENCIES += efl else DBUS_CPP_CONF_OPTS += --disable-ecore endif diff --git a/package/dbus-glib/dbus-glib.hash b/package/dbus-glib/dbus-glib.hash index 572fc404e5d..e5a2ebc309e 100644 --- a/package/dbus-glib/dbus-glib.hash +++ b/package/dbus-glib/dbus-glib.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 bfc1f1a82bfc3ec3ecafe04d0e87bab7e999f50dce4f4a34d0b89caf6bd821f6 dbus-glib-0.104.tar.gz +sha256 b38952706dcf68bad9c302999ef0f420b8cf1a2428227123f0ac4764b689c046 dbus-glib-0.106.tar.gz diff --git a/package/dbus-glib/dbus-glib.mk b/package/dbus-glib/dbus-glib.mk index bbd68136274..e191507c631 100644 --- a/package/dbus-glib/dbus-glib.mk +++ b/package/dbus-glib/dbus-glib.mk @@ -4,10 +4,10 @@ # ################################################################################ -DBUS_GLIB_VERSION = 0.104 +DBUS_GLIB_VERSION = 0.106 DBUS_GLIB_SITE = http://dbus.freedesktop.org/releases/dbus-glib DBUS_GLIB_INSTALL_STAGING = YES -DBUS_GLIB_LICENSE = AFLv2.1 GPLv2+ +DBUS_GLIB_LICENSE = AFLv2.1, GPLv2+ DBUS_GLIB_LICENSE_FILES = COPYING DBUS_GLIB_CONF_ENV = \ diff --git a/package/dbus/S30dbus b/package/dbus/S30dbus index 0d15c730432..4427b5c72c0 100644 --- a/package/dbus/S30dbus +++ b/package/dbus/S30dbus @@ -21,7 +21,7 @@ RETVAL=0 start() { - echo -n "Starting system message bus: " + printf "Starting system message bus: " dbus-uuidgen --ensure dbus-daemon --system @@ -31,7 +31,7 @@ start() { } stop() { - echo -n "Stopping system message bus: " + printf "Stopping system message bus: " ## we don't want to kill all the per-user $processname, we want ## to use the pid file *only*; because we use the fake nonexistent diff --git a/package/dbus/dbus.hash b/package/dbus/dbus.hash index 5df22efc039..10ebc81743e 100644 --- a/package/dbus/dbus.hash +++ b/package/dbus/dbus.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 5c4fbf4c64621c96e871da91d2b729a5b00536e116d3c4612a469d924b1b703a dbus-1.8.20.tar.gz +sha256 b5fefa08a77edd76cd64d872db949eebc02cf6f3f8be82e4bbc641742af5d35f dbus-1.10.6.tar.gz diff --git a/package/dbus/dbus.mk b/package/dbus/dbus.mk index a76f24ae591..33bfb31580a 100644 --- a/package/dbus/dbus.mk +++ b/package/dbus/dbus.mk @@ -4,9 +4,9 @@ # ################################################################################ -DBUS_VERSION = 1.8.20 +DBUS_VERSION = 1.10.6 DBUS_SITE = http://dbus.freedesktop.org/releases/dbus -DBUS_LICENSE = AFLv2.1 GPLv2+ +DBUS_LICENSE = AFLv2.1, GPLv2+ DBUS_LICENSE_FILES = COPYING DBUS_INSTALL_STAGING = YES @@ -18,7 +18,6 @@ define DBUS_USERS dbus -1 dbus -1 * /var/run/dbus - dbus DBus messagebus user endef - DBUS_DEPENDENCIES = host-pkgconf expat DBUS_CONF_ENV = ac_cv_have_abstract_sockets=yes @@ -51,7 +50,7 @@ else DBUS_CONF_OPTS += --disable-selinux endif -ifeq ($(BR2_PACKAGE_AUDIT),y) +ifeq ($(BR2_PACKAGE_AUDIT)$(BR2_PACKAGE_LIBCAP_NG),yy) DBUS_CONF_OPTS += --enable-libaudit DBUS_DEPENDENCIES += audit libcap-ng else @@ -61,6 +60,9 @@ endif ifeq ($(BR2_PACKAGE_XLIB_LIBX11),y) DBUS_CONF_OPTS += --with-x DBUS_DEPENDENCIES += xlib_libX11 +ifeq ($(BR2_PACKAGE_XLIB_LIBSM),y) +DBUS_DEPENDENCIES += xlib_libSM +endif else DBUS_CONF_OPTS += --without-x endif diff --git a/package/dcron/S90dcron b/package/dcron/S90dcron index c2925fd8fc4..de21d2ca138 100644 --- a/package/dcron/S90dcron +++ b/package/dcron/S90dcron @@ -2,12 +2,12 @@ case "$1" in start) - echo -n "Starting cron ... " + printf "Starting cron ... " start-stop-daemon -S -q -m -b -p /var/run/dcron.pid --exec /usr/sbin/crond -- -f echo "done." ;; stop) - echo -n "Stopping cron ..." + printf "Stopping cron ..." start-stop-daemon -K -q -p /var/run/dcron.pid echo "done." ;; diff --git a/package/dcron/dcron.service b/package/dcron/dcron.service index b9fa489a496..924ed722051 100644 --- a/package/dcron/dcron.service +++ b/package/dcron/dcron.service @@ -3,8 +3,8 @@ Description=Task scheduler daemon After=syslog.target [Service] -ExecStart=/usr/sbin/crond -f -S -Restart=always +ExecStart=/usr/sbin/crond -S +Type=forking [Install] WantedBy=multi-user.target diff --git a/package/debianutils/debianutils.hash b/package/debianutils/debianutils.hash index 089dd425f74..43f122501ca 100644 --- a/package/debianutils/debianutils.hash +++ b/package/debianutils/debianutils.hash @@ -1,2 +1,2 @@ -# From http://ftp.de.debian.org/debian/pool/main/d/debianutils/debianutils_4.4.dsc -sha256 190850cdd6b5302e0a1ba1aaed1bc7074d67d3bd8d04c613f242f7145afa53a6 debianutils_4.4.tar.gz +# From http://ftp.de.debian.org/debian/pool/main/d/debianutils/debianutils_4.5.1.dsc +sha256 a531c23e0105fe01cfa928457a8343a1e947e2621b3cd4d05f4e9656020c63b7 debianutils_4.5.1.tar.xz diff --git a/package/debianutils/debianutils.mk b/package/debianutils/debianutils.mk index dd7877423db..5c785049b44 100644 --- a/package/debianutils/debianutils.mk +++ b/package/debianutils/debianutils.mk @@ -4,9 +4,9 @@ # ################################################################################ -DEBIANUTILS_VERSION = 4.4 -DEBIANUTILS_SOURCE = debianutils_$(DEBIANUTILS_VERSION).tar.gz -DEBIANUTILS_SITE = http://snapshot.debian.org/archive/debian/20130728T034252Z/pool/main/d/debianutils +DEBIANUTILS_VERSION = 4.5.1 +DEBIANUTILS_SOURCE = debianutils_$(DEBIANUTILS_VERSION).tar.xz +DEBIANUTILS_SITE = http://snapshot.debian.org/archive/debian/20150526T034723Z/pool/main/d/debianutils DEBIANUTILS_CONF_OPTS = --exec-prefix=/ # Make sure we override the busybox tools, such as which DEBIANUTILS_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) diff --git a/package/devmem2/devmem2.hash b/package/devmem2/devmem2.hash new file mode 100644 index 00000000000..fff5306b7ee --- /dev/null +++ b/package/devmem2/devmem2.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3b15515693bae1ebd14d914e46d388edfec2175829ea1576a7a0c8606ebbe639 devmem2.c diff --git a/package/dhcp/S80dhcp-relay b/package/dhcp/S80dhcp-relay index 9faa13d568f..211431bfff2 100755 --- a/package/dhcp/S80dhcp-relay +++ b/package/dhcp/S80dhcp-relay @@ -13,6 +13,10 @@ INTERFACES="" # Additional options that are passed to the DHCP relay daemon? OPTIONS="" +# Read configuration variable file if it is present +CFG_FILE="/etc/default/dhcrelay" +[ -r "${CFG_FILE}" ] && . "${CFG_FILE}" + # Sanity checks test -f /usr/sbin/dhcrelay || exit 0 test -n "$INTERFACES" || exit 0 @@ -28,22 +32,21 @@ DHCRELAYPID=/var/run/dhcrelay.pid case "$1" in start) - echo -n "Starting DHCP relay: " - start-stop-daemon -S -x /usr/sbin/dhcrelay -- -q $OPTIONS $IFCMD $SERVERS + printf "Starting DHCP relay: " + start-stop-daemon -S -q -x /usr/sbin/dhcrelay -- -q $OPTIONS $IFCMD $SERVERS [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping DHCP relay: " - start-stop-daemon -K -x /usr/sbin/dhcrelay + printf "Stopping DHCP relay: " + start-stop-daemon -K -q -x /usr/sbin/dhcrelay [ $? = 0 ] && echo "OK" || echo "FAIL" ;; restart | force-reload) $0 stop - sleep 2 $0 start ;; *) - echo "Usage: /etc/init.d/dhcp-relay {start|stop|restart|force-reload}" + echo "Usage: $0 {start|stop|restart|force-reload}" exit 1 esac diff --git a/package/dhcp/S80dhcp-server b/package/dhcp/S80dhcp-server index fb99f9ab335..21092bab9f8 100755 --- a/package/dhcp/S80dhcp-server +++ b/package/dhcp/S80dhcp-server @@ -7,34 +7,42 @@ # Separate multiple interfaces with spaces, e.g. "eth0 eth1". INTERFACES="" +# Additional options that are passed to the DHCP server daemon? +OPTIONS="" + +NAME="dhcpd" +DAEMON="/usr/sbin/${NAME}" +CFG_FILE="/etc/default/${NAME}" + +# Read configuration variable file if it is present +[ -r "${CFG_FILE}" ] && . "${CFG_FILE}" + # Sanity checks test -f /usr/sbin/dhcpd || exit 0 test -f /etc/dhcp/dhcpd.conf || exit 0 -test -n "$INTERFACES" || exit 0 case "$1" in start) - echo -n "Starting DHCP server: " + printf "Starting DHCP server: " test -d /var/lib/dhcp/ || mkdir -p /var/lib/dhcp/ test -f /var/lib/dhcp/dhcpd.leases || touch /var/lib/dhcp/dhcpd.leases - start-stop-daemon -S -x /usr/sbin/dhcpd -- -q $INTERFACES + start-stop-daemon -S -q -x ${DAEMON} -- -q $OPTIONS $INTERFACES [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping DHCP server: dhcpd3" - start-stop-daemon -K -x /usr/sbin/dhcpd + printf "Stopping DHCP server: " + start-stop-daemon -K -q -x ${DAEMON} [ $? = 0 ] && echo "OK" || echo "FAIL" ;; restart | force-reload) $0 stop - sleep 2 $0 start if [ "$?" != "0" ]; then exit 1 fi ;; *) - echo "Usage: /etc/init.d/dhcp-server {start|stop|restart|force-reload}" + echo "Usage: $0 {start|stop|restart|force-reload}" exit 1 esac diff --git a/package/dhcp/dhcp.hash b/package/dhcp/dhcp.hash index d4880047310..84e3c638166 100644 --- a/package/dhcp/dhcp.hash +++ b/package/dhcp/dhcp.hash @@ -1,2 +1,2 @@ -# Verified from ftp://ftp.isc.org/isc/dhcp/4.1-ESV-R11/dhcp-4.1-ESV-R11.tar.gz.sha256.asc -sha256 b643d11a50fba66bb1c118f47642eb3fac1e26989d3c0bf8a2471e83c06ac485 dhcp-4.1-ESV-R11.tar.gz +# Verified from ftp://ftp.isc.org/isc/dhcp/4.1-ESV-R12/dhcp-4.1-ESV-R12.tar.gz.sha256.asc +sha256 53265d1bf5e2073379df03c73a1a34d38a904307609c0f9cb77223912e753e5f dhcp-4.1-ESV-R12.tar.gz diff --git a/package/dhcp/dhcp.mk b/package/dhcp/dhcp.mk index effcbe24ca6..c05e69468b1 100644 --- a/package/dhcp/dhcp.mk +++ b/package/dhcp/dhcp.mk @@ -4,7 +4,7 @@ # ################################################################################ -DHCP_VERSION = 4.1-ESV-R11 +DHCP_VERSION = 4.1-ESV-R12 DHCP_SITE = http://ftp.isc.org/isc/dhcp/$(DHCP_VERSION) DHCP_INSTALL_STAGING = YES DHCP_LICENSE = ISC diff --git a/package/dhcp/dhcpd.service b/package/dhcp/dhcpd.service index 7b265cbf3fa..98cc54b05b2 100644 --- a/package/dhcp/dhcpd.service +++ b/package/dhcp/dhcpd.service @@ -5,9 +5,9 @@ After=network.target [Service] Type=forking PIDFile=/run/dhcpd.pid -ExecStart=/usr/sbin/dhcpd -q -pf /run/dhcpd.pid $INTERFACES +ExecStart=/usr/sbin/dhcpd -q -pf /run/dhcpd.pid $OPTIONS $INTERFACES KillSignal=SIGINT -EnvironmentFile=/etc/default/dhcpd.conf +EnvironmentFile=-/etc/default/dhcpd [Install] WantedBy=multi-user.target diff --git a/package/dhcpcd/Config.in b/package/dhcpcd/Config.in index 88f2e489d2a..ece08d2c96a 100644 --- a/package/dhcpcd/Config.in +++ b/package/dhcpcd/Config.in @@ -3,8 +3,6 @@ comment "dhcpcd needs a toolchain w/ headers >= 3.1" config BR2_PACKAGE_DHCPCD bool "dhcpcd" - # No support for AI_ADDRCONFIG - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1 # sa_family_t in linux/socket.h help An RFC2131 compliant DHCP client diff --git a/package/dhcpcd/dhcpcd.hash b/package/dhcpcd/dhcpcd.hash index 98351a23cf5..ea05f86812c 100644 --- a/package/dhcpcd/dhcpcd.hash +++ b/package/dhcpcd/dhcpcd.hash @@ -1,2 +1,2 @@ # Locally calculated from download (no sig, hash) -sha256 c03b750e1fe2890b62ac0e7d7092a1698b598adb6f88b67916586a619f7c066f dhcpcd-6.9.1.tar.xz +sha256 284abf8c3be0580bbac5eaca95359346ab0d78d4072317b6ce87cc68f2e8ae7b dhcpcd-6.10.1.tar.xz diff --git a/package/dhcpcd/dhcpcd.mk b/package/dhcpcd/dhcpcd.mk index 67ae69fd60d..5d1388d5a7d 100644 --- a/package/dhcpcd/dhcpcd.mk +++ b/package/dhcpcd/dhcpcd.mk @@ -4,7 +4,7 @@ # ################################################################################ -DHCPCD_VERSION = 6.9.1 +DHCPCD_VERSION = 6.10.1 DHCPCD_SOURCE = dhcpcd-$(DHCPCD_VERSION).tar.xz DHCPCD_SITE = http://roy.marples.name/downloads/dhcpcd DHCPCD_DEPENDENCIES = host-pkgconf @@ -23,6 +23,7 @@ define DHCPCD_CONFIGURE_CMDS (cd $(@D); \ $(TARGET_CONFIGURE_OPTS) ./configure \ --os=linux \ + --libexecdir=/lib/dhcpcd \ $(DHCPCD_CONFIG_OPTS) ) endef diff --git a/package/dhcpdump/Config.in b/package/dhcpdump/Config.in index 1840e3428f2..e0abe040fc6 100644 --- a/package/dhcpdump/Config.in +++ b/package/dhcpdump/Config.in @@ -3,3 +3,5 @@ config BR2_PACKAGE_DHCPDUMP select BR2_PACKAGE_LIBPCAP help A tool for monitoring dhcp requests using tcpdump. + + http://www.mavetju.org/unix/general.php diff --git a/package/dhcpdump/dhcpdump.hash b/package/dhcpdump/dhcpdump.hash new file mode 100644 index 00000000000..36040c8a5db --- /dev/null +++ b/package/dhcpdump/dhcpdump.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 6d5eb9418162fb738bc56e4c1682ce7f7392dd96e568cc996e44c28de7f77190 dhcpdump-1.8.tar.gz diff --git a/package/dhcpdump/dhcpdump.mk b/package/dhcpdump/dhcpdump.mk index 15fc02f8451..3584f4f22da 100644 --- a/package/dhcpdump/dhcpdump.mk +++ b/package/dhcpdump/dhcpdump.mk @@ -16,7 +16,8 @@ DHCPDUMP_LIBS += `$(STAGING_DIR)/usr/bin/pcap-config --static --additional-libs` endif define DHCPDUMP_BUILD_CMDS - $(MAKE) -C $(@D) CC="$(TARGET_CC) $(TARGET_CFLAGS)" LIBS="$(DHCPDUMP_LIBS)" + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) CC="$(TARGET_CC) $(TARGET_CFLAGS) \ + -D_GNU_SOURCE" LIBS="$(DHCPDUMP_LIBS)" endef define DHCPDUMP_INSTALL_TARGET_CMDS diff --git a/package/dhrystone/Makefile b/package/dhrystone/Makefile index d628ddb507e..f7a212b2fea 100644 --- a/package/dhrystone/Makefile +++ b/package/dhrystone/Makefile @@ -1,4 +1,4 @@ -CPPFLAGS += -DNO_PROTOTYPES=1 +CPPFLAGS += -DNO_PROTOTYPES=1 -DHZ=100 LDLIBS += -lm all: dhrystone diff --git a/package/dhrystone/dhrystone.hash b/package/dhrystone/dhrystone.hash new file mode 100644 index 00000000000..9ea22a360ae --- /dev/null +++ b/package/dhrystone/dhrystone.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 038a7e9169787125c3451a6c941f3aca5db2d2f3863871afcdce154ef17f4e3e dhry-c diff --git a/package/dillo/0001-configure.ac-change-fltk-config-test-to-be-more-cros.patch b/package/dillo/0001-configure.ac-change-fltk-config-test-to-be-more-cros.patch deleted file mode 100644 index 2f184fbd984..00000000000 --- a/package/dillo/0001-configure.ac-change-fltk-config-test-to-be-more-cros.patch +++ /dev/null @@ -1,40 +0,0 @@ -From b2ac6e42f0790bbe1704c468e740cb26293579a7 Mon Sep 17 00:00:00 2001 -From: Peter Seiderer -Date: Thu, 29 May 2014 21:29:18 +0200 -Subject: [PATCH] configure.ac: change fltk-config test to be more - crosscompile/buildroot friendly - -Change fltk-config usage as suggested by Thomas Petazzoni [1]. - -[1] http://lists.busybox.net/pipermail/buildroot/2014-May/097607.html - -Signed-off-by: Peter Seiderer ---- - configure.ac | 9 +++++---- - 1 file changed, 5 insertions(+), 4 deletions(-) - -diff --git a/configure.ac b/configure.ac -index e3ace75..e1f4b6e 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -112,12 +112,13 @@ dnl ------------------------- - dnl - dnl For debugging and to be user friendly - AC_MSG_CHECKING([FLTK 1.3]) --fltk_version="`fltk-config --version 2>/dev/null`" -+AC_PATH_PROG(FLTK_CONFIG,fltk-config) -+fltk_version="`$FLTK_CONFIG --version 2>/dev/null`" - case $fltk_version in - 1.3.*) AC_MSG_RESULT(yes) -- LIBFLTK_CXXFLAGS=`fltk-config --cxxflags` -- LIBFLTK_CFLAGS=`fltk-config --cflags` -- LIBFLTK_LIBS=`fltk-config --ldflags`;; -+ LIBFLTK_CXXFLAGS=`$FLTK_CONFIG --cxxflags` -+ LIBFLTK_CFLAGS=`$FLTK_CONFIG --cflags` -+ LIBFLTK_LIBS=`$FLTK_CONFIG --ldflags`;; - ?*) AC_MSG_RESULT(no) - AC_MSG_ERROR(FLTK 1.3 required; version found: $fltk_version);; - *) AC_MSG_RESULT(no) --- -1.8.1.4 - diff --git a/package/dillo/dillo.hash b/package/dillo/dillo.hash index 927db6288fb..cab0b14abd4 100644 --- a/package/dillo/dillo.hash +++ b/package/dillo/dillo.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 ed97c48029ad1fe62c8a505f81c6ea127532697374153e652065fc6ced098647 dillo-3.0.4.1.tar.bz2 +sha256 db1be16c1c5842ebe07b419aa7c6ef11a45603a75df2877f99635f4f8345148b dillo-3.0.5.tar.bz2 diff --git a/package/dillo/dillo.mk b/package/dillo/dillo.mk index 4ce63d5b921..01ab4f5c8f4 100644 --- a/package/dillo/dillo.mk +++ b/package/dillo/dillo.mk @@ -4,7 +4,7 @@ # ################################################################################ -DILLO_VERSION = 3.0.4.1 +DILLO_VERSION = 3.0.5 DILLO_SOURCE = dillo-$(DILLO_VERSION).tar.bz2 DILLO_SITE = http://www.dillo.org/download DILLO_LICENSE = GPLv3+ @@ -32,7 +32,7 @@ endif ifeq ($(BR2_PACKAGE_JPEG),y) DILLO_CONF_OPTS += --enable-jpeg -DILLO_DEPENDENCIES += libjpeg +DILLO_DEPENDENCIES += jpeg else DILLO_CONF_OPTS += --disable-jpeg endif diff --git a/package/directfb-examples/Config.in b/package/directfb-examples/Config.in index f69cd3baf6a..eef9f5c0417 100644 --- a/package/directfb-examples/Config.in +++ b/package/directfb-examples/Config.in @@ -7,154 +7,3 @@ config BR2_PACKAGE_DIRECTFB_EXAMPLES DirectFB features. http://directfb.org/downloads/Extras/README.DirectFB-examples - -if BR2_PACKAGE_DIRECTFB_EXAMPLES - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_ANDI - bool "df_andi" - help - Penguin demo, press 'space' to form convergence logo, - 's'/'d' to spawn/destroy 'a' penguin, 'r' to revive penguin - after space was pressed, 'c' tests clipping. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_BLTLOAD - bool "df_bltload" - help - Reads information from /proc/bltstat. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_CPULOAD - bool "df_cpuload" - help - CPU Load with data from /proc/stat. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_DATABUFFER - bool "df_databuffer" - help - Simple test application for data buffers. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_DIOLOAD - bool "df_dioload" - help - Disk IO with data from /proc/stat. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK - bool "df_dok" - help - DirectFB benchmark application, runs some tests and - displays benchmark results afterwards. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_DRIVERTEST - bool "df_drivertest" - help - Tool to check drivers for bugs and accuracy. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_FIRE - bool "df_fire" - help - The famous fire effect ported to DirectFB (16 bpp only). - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_FLIP - bool "df_flip" - help - Raw Flip() benchmark. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_FONTS - bool "df_fonts" - help - Takes a list of font files and shows character tables. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_INPUT - bool "df_input" - help - Test application for input devices. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_JOYSTICK - bool "df_joystick" - help - A colored version of df_particle, fointain can be moved with - joystick. The particles of different colors can be spawned - with different joystick buttons (1-4). - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_KNUCKLES - bool "df_knuckles" - help - 3D skull drawn using triangles that can be rotated using - the mouse. 'Space' switches to wireframe, 'b' toggles - backface culling. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_LAYER - bool "df_layer" - help - Simple videoplayer with layers. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_MATRIX - bool "df_matrix" - help - Testing SetMatrix() for free transforms. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_MATRIX_WATER - bool "df_matrix_water" - help - Same as df_matrix, but using new Water API. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_NEO - bool "df_neo" - help - Port from a gdk-pixbuf demo to DirectFB, uses scaling, - alpha blending and color modulation, use cursor keys and - space to change parameters. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_NETLOAD - bool "df_netload" - help - Network statistica from /proc/net/dev. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_PALETTE - bool "df_palette" - help - A example blitting from a surface with a - rotating/morphing palette. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_PARTICLE - bool "df_particle" - help - A moving fountain consisting of alphablended rectangles, - nice and fast if hardware accelerated. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_PORTER - bool "df_porter" - help - Shows porter/duff blending rules. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_STRESS - bool "df_stress" - help - Stress tests surface manager, for debugging purposes only. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_TEXTURE - bool "df_texture" - help - A simple texture example. The 3d windows can be rotated - with the mouse. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_VIDEO - bool "df_video" - help - Shows window stack with alpha blending and video playback - in a moving window. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_VIDEO_PARTICLE - bool "df_video_particle" - help - Same as df_particle, but the rectangles have been - replaced by a video (via video4linux). Nice color effects. - -config BR2_PACKAGE_DIRECTFB_EXAMPLES_WINDOW - bool "df_window" - help - Simple demonstration of the DirectFB window stack, follow - the instructions in the upper left corner. Pass a video - device file or a movie file on the command-line to enable - video playback in one of the windows. - -endif diff --git a/package/directfb-examples/directfb-examples.hash b/package/directfb-examples/directfb-examples.hash index c647fcac111..9d59cfef78d 100644 --- a/package/directfb-examples/directfb-examples.hash +++ b/package/directfb-examples/directfb-examples.hash @@ -1,2 +1,2 @@ -# Locally calculated -sha256 b08293697c211b690856f76a25ad7acd4ca458b4132851e0a1e471d0bf23c821 DirectFB-examples-1.6.0.tar.gz +# Locally computed +sha256 9a2104cc4da8123c8371813551b66b943198979f745cbebc034bb5e10844122a DirectFB-examples-1.7.0.tar.gz diff --git a/package/directfb-examples/directfb-examples.mk b/package/directfb-examples/directfb-examples.mk index 3ba33b41f14..46263da733a 100644 --- a/package/directfb-examples/directfb-examples.mk +++ b/package/directfb-examples/directfb-examples.mk @@ -4,109 +4,15 @@ # ################################################################################ -DIRECTFB_EXAMPLES_VERSION = 1.6.0 +DIRECTFB_EXAMPLES_VERSION = 1.7.0 DIRECTFB_EXAMPLES_SITE = http://www.directfb.org/downloads/Extras DIRECTFB_EXAMPLES_SOURCE = DirectFB-examples-$(DIRECTFB_EXAMPLES_VERSION).tar.gz DIRECTFB_EXAMPLES_LICENSE = MIT DIRECTFB_EXAMPLES_LICENSE_FILES = COPYING -DIRECTFB_EXAMPLES_INSTALL_STAGING = YES DIRECTFB_EXAMPLES_DEPENDENCIES = directfb ifeq ($(BR2_STATIC_LIBS),y) - DIRECTFB_EXAMPLES_CONF_OPTS += LIBS=-lstdc++ +DIRECTFB_EXAMPLES_CONF_OPTS += LIBS=-lstdc++ endif -DIRECTFB_EXAMPLES_TARGETS_ = -DIRECTFB_EXAMPLES_TARGETS_y = - -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_ANDI) += usr/bin/df_andi -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_BLTLOAD) += usr/bin/df_bltload -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_CPULOAD) += usr/bin/df_cpuload -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DATABUFFER) += usr/bin/df_databuffer -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DIOLOAD) += usr/bin/df_dioload -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/bin/df_dok -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DRIVERTEST) += usr/bin/df_drivertest -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_FIRE) += usr/bin/df_fire -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_FLIP) += usr/bin/df_flip -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_FONTS) += usr/bin/df_fonts -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_INPUT) += usr/bin/df_input -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_JOYSTICK) += usr/bin/df_joystick -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_KNUCKLES) += usr/bin/df_knuckles -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_LAYER) += usr/bin/df_layer -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_MATRIX) += usr/bin/df_matrix -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_MATRIX_WATER) += usr/bin/df_matrix_water -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_NEO) += usr/bin/df_neo -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_NETLOAD) += usr/bin/df_netload -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_PALETTE) += usr/bin/df_palette -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_PARTICLE) += usr/bin/df_particle -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_PORTER) += usr/bin/df_porter -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_STRESS) += usr/bin/df_stress -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_TEXTURE) += usr/bin/df_texture -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_VIDEO) += usr/bin/df_video -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_VIDEO_PARTICLE) += usr/bin/df_video_particle -DIRECTFB_EXAMPLES_TARGETS_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_WINDOW) += usr/bin/df_window - -DIRECTFB_EXAMPLES_DATA_ = -DIRECTFB_EXAMPLES_DATA_y = - -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_ANDI) += usr/share/directfb-examples/destination_mask.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_ANDI) += usr/share/directfb-examples/tux.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_ANDI) += usr/share/directfb-examples/wood_andi.jpg - -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/share/directfb-examples/biglogo.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/share/directfb-examples/card.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/share/directfb-examples/melted.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/share/directfb-examples/meter.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/share/directfb-examples/pngtest*.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/share/directfb-examples/colorkeyed.gif -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/share/directfb-examples/intro.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/share/directfb-examples/fish.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/share/directfb-examples/swirl.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK) += usr/share/directfb-examples/rose.png - -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DRIVERTEST) += usr/share/directfb-examples/pngtest.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_DRIVERTEST) += usr/share/directfb-examples/testmask.png - -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_INPUT) += usr/share/directfb-examples/joystick.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_INPUT) += usr/share/directfb-examples/gnu-keys.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_INPUT) += usr/share/directfb-examples/gnome-mouse.png - -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_NEO) += usr/share/directfb-examples/apple-red.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_NEO) += usr/share/directfb-examples/gnome-*.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_NEO) += usr/share/directfb-examples/gnu-*.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_NEO) += usr/share/directfb-examples/background*.jpg - -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_STRESS) += usr/share/directfb-examples/melted.png - -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_TEXTURE) += usr/share/directfb-examples/texture.png - -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_VIDEO) += usr/share/directfb-examples/shot.png - -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_VIDEO_PARTICLE) += usr/share/directfb-examples/convergence.png - -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_WINDOW) += usr/share/directfb-examples/desktop.png -DIRECTFB_EXAMPLES_DATA_$(BR2_PACKAGE_DIRECTFB_EXAMPLES_WINDOW) += usr/share/directfb-examples/dfblogo.png - -DIRECTFB_EXAMPLES_FONT_y = -ifeq ($(BR2_PACKAGE_DIRECTFB_EXAMPLES_FONTS),y) -DIRECTFB_EXAMPLES_FONT_y = usr/share/directfb-examples/fonts/* -endif - -define DIRECTFB_EXAMPLES_INSTALL_TARGET_CMDS - $(Q)mkdir -p $(TARGET_DIR)/usr/bin - $(Q)mkdir -p $(TARGET_DIR)/usr/share/directfb-examples/ - $(Q)mkdir -p $(TARGET_DIR)/usr/share/directfb-examples/fonts/ - $(Q)for file in $(DIRECTFB_EXAMPLES_TARGETS_y); do \ - cp -dpf $(STAGING_DIR)/$$file $(TARGET_DIR)/$$file; \ - done - $(Q)cp -rdpf $(STAGING_DIR)/usr/share/directfb-examples/fonts/decker.ttf $(TARGET_DIR)/usr/share/directfb-examples/fonts/ - $(Q)for file in $(DIRECTFB_EXAMPLES_FONT_y); do \ - $(INSTALL) -m 0644 $(STAGING_DIR)/$$file $(TARGET_DIR)/usr/share/directfb-examples/fonts/; \ - done - $(Q)$(INSTALL) -m 0755 -d $(TARGET_DIR)/usr/share/directfb-examples - $(Q)for file in $(DIRECTFB_EXAMPLES_DATA_y); do \ - $(INSTALL) -m 0644 $(STAGING_DIR)/$$file $(TARGET_DIR)/usr/share/directfb-examples; \ - done -endef - $(eval $(autotools-package)) diff --git a/package/directfb/0003-remove-redefinition-of-__typeof__.patch b/package/directfb/0003-remove-redefinition-of-__typeof__.patch deleted file mode 100644 index e3861af97ca..00000000000 --- a/package/directfb/0003-remove-redefinition-of-__typeof__.patch +++ /dev/null @@ -1,28 +0,0 @@ -Remove definition to fix qt5 build. - -Fetch from: http://git.directfb.org/?p=core/DirectFB.git;a=patch;h=203f78a4193a8ff110dec3c860e0928af1a0a72f - -From 203f78a4193a8ff110dec3c860e0928af1a0a72f Mon Sep 17 00:00:00 2001 -From: Denis Oliver Kropp -Date: Wed, 31 Jul 2013 21:56:05 +0200 -Subject: [PATCH] libdirect: Remove redefinition of __typeof__!!! - ---- - lib/direct/os/linux/glibc/types.h | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/lib/direct/os/linux/glibc/types.h b/lib/direct/os/linux/glibc/types.h -index 08e94b2..80cb350 100644 ---- a/lib/direct/os/linux/glibc/types.h -+++ b/lib/direct/os/linux/glibc/types.h -@@ -81,7 +81,6 @@ typedef int64_t s64; - #define __dfb_no_instrument_function__ __attribute__((no_instrument_function)) - #define __constructor__ __attribute__((constructor)) - #define __destructor__ __attribute__((destructor)) --#define __typeof__(x) __typeof__(x) - - #ifndef __func__ - #define __func__ __FUNCTION__ --- -1.7.9.5 - diff --git a/package/directfb/0004-setregion-lock.patch b/package/directfb/0003-setregion-lock.patch similarity index 79% rename from package/directfb/0004-setregion-lock.patch rename to package/directfb/0003-setregion-lock.patch index 8a246ea057e..bec4234645b 100644 --- a/package/directfb/0004-setregion-lock.patch +++ b/package/directfb/0003-setregion-lock.patch @@ -6,9 +6,11 @@ http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/DirectFB/files/ Signed-off-by: Carsten Schoenert ---- directfb-1.6.3/gfxdrivers/cyber5k/cyber5k.c -+++ directfb-1.6.3/gfxdrivers/cyber5k/cyber5k.c -@@ -636,7 +636,8 @@ osdSetRegion( CoreLayer +Index: b/gfxdrivers/cyber5k/cyber5k.c +=================================================================== +--- a/gfxdrivers/cyber5k/cyber5k.c ++++ b/gfxdrivers/cyber5k/cyber5k.c +@@ -640,7 +640,8 @@ CoreLayerRegionConfigFlags updated, CoreSurface *surface, CorePalette *palette, @@ -18,7 +20,7 @@ Signed-off-by: Carsten Schoenert { DFBResult ret; -@@ -644,7 +645,7 @@ osdSetRegion( CoreLayer +@@ -648,7 +649,7 @@ ret = oldPrimaryFuncs.SetRegion( layer, oldPrimaryDriverData, layer_data, region_data, config, updated, surface, @@ -27,9 +29,11 @@ Signed-off-by: Carsten Schoenert if (ret) return ret; ---- directfb-1.6.3/gfxdrivers/radeon/radeon_crtc1.c -+++ directfb-1.6.3/gfxdrivers/radeon/radeon_crtc1.c -@@ -147,14 +147,15 @@ crtc1SetRegion( CoreLayer +Index: b/gfxdrivers/radeon/radeon_crtc1.c +=================================================================== +--- a/gfxdrivers/radeon/radeon_crtc1.c ++++ b/gfxdrivers/radeon/radeon_crtc1.c +@@ -147,14 +147,15 @@ CoreLayerRegionConfigFlags updated, CoreSurface *surface, CorePalette *palette, @@ -47,9 +51,11 @@ Signed-off-by: Carsten Schoenert } return DFB_OK; ---- directfb-1.6.3/gfxdrivers/cle266/uc_primary.c -+++ directfb-1.6.3/gfxdrivers/cle266/uc_primary.c -@@ -138,7 +138,8 @@ osdSetRegion( CoreLayer +Index: b/gfxdrivers/cle266/uc_primary.c +=================================================================== +--- a/gfxdrivers/cle266/uc_primary.c ++++ b/gfxdrivers/cle266/uc_primary.c +@@ -142,7 +142,8 @@ CoreLayerRegionConfigFlags updated, CoreSurface *surface, CorePalette *palette, @@ -59,7 +65,7 @@ Signed-off-by: Carsten Schoenert { DFBResult ret; UcDriverData *ucdrv = (UcDriverData*) driver_data; -@@ -147,7 +148,7 @@ osdSetRegion( CoreLayer +@@ -151,7 +152,7 @@ ret = ucOldPrimaryFuncs.SetRegion( layer, ucOldPrimaryDriverData, layer_data, region_data, config, updated, surface, @@ -68,9 +74,11 @@ Signed-off-by: Carsten Schoenert if (ret) return ret; ---- directfb-1.6.3/gfxdrivers/unichrome/uc_primary.c -+++ directfb-1.6.3/gfxdrivers/unichrome/uc_primary.c -@@ -135,7 +135,8 @@ osdSetRegion( CoreLayer +Index: b/gfxdrivers/unichrome/uc_primary.c +=================================================================== +--- a/gfxdrivers/unichrome/uc_primary.c ++++ b/gfxdrivers/unichrome/uc_primary.c +@@ -139,7 +139,8 @@ CoreLayerRegionConfigFlags updated, CoreSurface *surface, CorePalette *palette, @@ -80,7 +88,7 @@ Signed-off-by: Carsten Schoenert { DFBResult ret; UcDriverData *ucdrv = (UcDriverData*) driver_data; -@@ -144,7 +145,7 @@ osdSetRegion( CoreLayer +@@ -148,7 +149,7 @@ ret = ucOldPrimaryFuncs.SetRegion( layer, ucOldPrimaryDriverData, layer_data, region_data, config, updated, surface, @@ -89,4 +97,3 @@ Signed-off-by: Carsten Schoenert if (ret) return ret; - diff --git a/package/directfb/0005-use-gcc-link.patch b/package/directfb/0004-use-gcc-link.patch similarity index 100% rename from package/directfb/0005-use-gcc-link.patch rename to package/directfb/0004-use-gcc-link.patch diff --git a/package/directfb/0005-add-missing-idivine-header.patch b/package/directfb/0005-add-missing-idivine-header.patch new file mode 100644 index 00000000000..7823eb76e73 --- /dev/null +++ b/package/directfb/0005-add-missing-idivine-header.patch @@ -0,0 +1,65 @@ +Add idivine.h, which is missing from DirectFB tarballs + +The idivine.h file was taken from the DirectFB Git repository. + +Signed-off-by: Thomas Petazzoni + +Index: b/lib/divine/idivine.h +=================================================================== +--- /dev/null ++++ b/lib/divine/idivine.h +@@ -0,0 +1,54 @@ ++/* ++ (c) Copyright 2012-2013 DirectFB integrated media GmbH ++ (c) Copyright 2001-2013 The world wide DirectFB Open Source Community (directfb.org) ++ (c) Copyright 2000-2004 Convergence (integrated media) GmbH ++ ++ All rights reserved. ++ ++ Written by Denis Oliver Kropp , ++ Andreas Shimokawa , ++ Marek Pikarski , ++ Sven Neumann , ++ Ville Syrjälä and ++ Claudio Ciccani . ++ ++ This library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2 of the License, or (at your option) any later version. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with this library; if not, write to the ++ Free Software Foundation, Inc., 59 Temple Place - Suite 330, ++ Boston, MA 02111-1307, USA. ++*/ ++ ++ ++ ++#ifndef __IDIVINE_H__ ++#define __IDIVINE_H__ ++ ++#include ++ ++/* ++ * private data struct of IDiVine ++ */ ++typedef struct { ++ int ref; /* reference counter */ ++ ++ DiVine *divine; ++} IDiVine_data; ++ ++/* ++ * IDiVine constructor/destructor ++ */ ++DFBResult IDiVine_Construct( IDiVine *thiz ); ++ ++void IDiVine_Destruct ( IDiVine *thiz ); ++ ++#endif diff --git a/package/directfb/Config.in b/package/directfb/Config.in index 2b0d5c75a13..2aed63f1e81 100644 --- a/package/directfb/Config.in +++ b/package/directfb/Config.in @@ -2,10 +2,19 @@ config BR2_PACKAGE_DIRECTFB bool "directfb" depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 + depends on !BR2_TOOLCHAIN_USES_MUSL # sigval_t issue + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_FREETYPE select BR2_PACKAGE_ZLIB help - http://www.directfb.org/ + DirectFB (Direct Frame Buffer) is a set of graphics APIs implemented + on top of the Linux Frame Buffer (fbdev) abstraction layer. It is an + alternative to X11 with a smaller memory footprint that still has an + integrated windowing system. As of 4 October 2015, DirectFB's website + http://www.directfb.org/ is down. See alternative site listed below. + + http://elinux.org/DirectFB if BR2_PACKAGE_DIRECTFB @@ -44,23 +53,20 @@ config BR2_PACKAGE_DIRECTFB_TRACE help Enable call tracing for DirectFB applications -config BR2_PACKAGE_DIRECTFB_XSERVER - bool "build with X server backend" - depends on BR2_PACKAGE_XORG7 +config BR2_PACKAGE_DIRECTFB_DIVINE + bool "divine" + help + Enable the DiVine feature (virtual input) -config BR2_PACKAGE_DIRECTFB_UNIQUE - bool "enable unique window manager" - depends on BR2_UNIMPLEMENTED +config BR2_PACKAGE_DIRECTFB_SAWMAN + bool "sawman" + help + Enable the SawMan feature (window manager) config BR2_PACKAGE_DIRECTFB_ATI128 bool "compile ati128 graphics driver" depends on BR2_i386 || BR2_x86_64 -config BR2_PACKAGE_DIRECTFB_CLE266 - bool "compile cle266 graphics driver" - default y - depends on BR2_i386 || BR2_x86_64 - config BR2_PACKAGE_DIRECTFB_MATROX bool "compile matrox graphics driver" depends on BR2_i386 || BR2_x86_64 @@ -84,11 +90,6 @@ config BR2_PACKAGE_DIRECTFB_EP9X http://cirrus.com/en/products/arm9.html -config BR2_PACKAGE_DIRECTFB_UNICHROME - bool "compile unichrome graphics driver" - default y - depends on BR2_i386 || BR2_x86_64 - config BR2_PACKAGE_DIRECTFB_I830 bool "compile i830 graphics driver" depends on BR2_i386 || BR2_x86_64 @@ -122,6 +123,10 @@ config BR2_PACKAGE_DIRECTFB_GIF bool "enable GIF support" default y +config BR2_PACKAGE_DIRECTFB_TIFF + bool "enable TIFF support" + select BR2_PACKAGE_TIFF + config BR2_PACKAGE_DIRECTFB_IMLIB2 bool "enable IMLIB2 support" select BR2_PACKAGE_IMLIB2 @@ -142,7 +147,6 @@ config BR2_PACKAGE_DIRECTFB_PNG config BR2_PACKAGE_DIRECTFB_SVG bool "enable SVG support" - depends on BR2_ARCH_HAS_ATOMICS # cairo default y select BR2_PACKAGE_LIBSVG_CAIRO @@ -157,5 +161,7 @@ config BR2_PACKAGE_DIRECTFB_TESTS endif # BR2_PACKAGE_DIRECTFB -comment "directfb needs a toolchain w/ C++, threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP +comment "directfb needs a (e)glibc or uClibc toolchain w/ C++, threads, gcc >= 4.5" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/directfb/directfb.hash b/package/directfb/directfb.hash index a577cba06ec..069d8c3f1dc 100644 --- a/package/directfb/directfb.hash +++ b/package/directfb/directfb.hash @@ -1,2 +1,2 @@ -# locally computed hash -sha256 7a96aced0f69b2ec0810e9923068e61c21e6b19dd593e09394c872414df75e70 DirectFB-1.6.3.tar.gz +# Locally computed +sha256 b785c638dc31b8fe3a7c81be1475c89b2255ab3d67b777c747d3fbc52f8027a3 DirectFB-1.7.7.tar.gz diff --git a/package/directfb/directfb.mk b/package/directfb/directfb.mk index ad1dd18a285..d51094f850c 100644 --- a/package/directfb/directfb.mk +++ b/package/directfb/directfb.mk @@ -4,8 +4,8 @@ # ################################################################################ -DIRECTFB_VERSION_MAJOR = 1.6 -DIRECTFB_VERSION = $(DIRECTFB_VERSION_MAJOR).3 +DIRECTFB_VERSION_MAJOR = 1.7 +DIRECTFB_VERSION = $(DIRECTFB_VERSION_MAJOR).7 DIRECTFB_SITE = http://www.directfb.org/downloads/Core/DirectFB-$(DIRECTFB_VERSION_MAJOR) DIRECTFB_SOURCE = DirectFB-$(DIRECTFB_VERSION).tar.gz DIRECTFB_LICENSE = LGPLv2.1+ @@ -14,17 +14,16 @@ DIRECTFB_INSTALL_STAGING = YES DIRECTFB_AUTORECONF = YES DIRECTFB_CONF_OPTS = \ - --disable-explicit-deps \ --enable-zlib \ --enable-freetype \ --enable-fbdev \ - --disable-sysfs \ --disable-sdl \ --disable-vnc \ --disable-osx \ --disable-video4linux \ --disable-video4linux2 \ - --without-tools + --without-tools \ + --disable-x11 ifeq ($(BR2_STATIC_LIBS),y) DIRECTFB_CONF_OPTS += --disable-dynload @@ -35,8 +34,10 @@ DIRECTFB_CONFIG_SCRIPTS = directfb-config DIRECTFB_DEPENDENCIES = freetype zlib ifeq ($(BR2_PACKAGE_DIRECTFB_MULTI),y) -DIRECTFB_CONF_OPTS += --enable-multi --enable-fusion +DIRECTFB_CONF_OPTS += --enable-multi --enable-multi-kernel DIRECTFB_DEPENDENCIES += linux-fusion +else +DIRECTFB_CONF_OPTS += --disable-multi --disable-multi-kernel endif ifeq ($(BR2_PACKAGE_DIRECTFB_DEBUG_SUPPORT),y) @@ -52,25 +53,23 @@ ifeq ($(BR2_PACKAGE_DIRECTFB_TRACE),y) DIRECTFB_CONF_OPTS += --enable-trace endif -ifeq ($(BR2_PACKAGE_XSERVER),y) -DIRECTFB_CONF_OPTS += --enable-x11 +ifeq ($(BR2_PACKAGE_DIRECTFB_DIVINE),y) +DIRECTFB_CONF_OPTS += --enable-divine else -DIRECTFB_CONF_OPTS += --disable-x11 +DIRECTFB_CONF_OPTS += --disable-divine endif -ifeq ($(BR2_PACKAGE_DIRECTFB_UNIQUE),y) -DIRECTFB_CONF_OPTS += --enable-unique +ifeq ($(BR2_PACKAGE_DIRECTFB_SAWMAN),y) +DIRECTFB_CONF_OPTS += --enable-sawman else -DIRECTFB_CONF_OPTS += --disable-unique +DIRECTFB_CONF_OPTS += --disable-sawman endif DIRECTFB_GFX = \ $(if $(BR2_PACKAGE_DIRECTFB_ATI128),ati128) \ - $(if $(BR2_PACKAGE_DIRECTFB_CLE266),cle266) \ $(if $(BR2_PACKAGE_DIRECTFB_CYBER5K),cyber5k) \ $(if $(BR2_PACKAGE_DIRECTFB_MATROX),matrox) \ $(if $(BR2_PACKAGE_DIRECTFB_PXA3XX),pxa3xx) \ - $(if $(BR2_PACKAGE_DIRECTFB_UNICHROME),unichrome) \ $(if $(BR2_PACKAGE_DIRECTFB_I830),i830) \ $(if $(BR2_PACKAGE_DIRECTFB_EP9X),ep9x) @@ -105,6 +104,13 @@ else DIRECTFB_CONF_OPTS += --disable-gif endif +ifeq ($(BR2_PACKAGE_DIRECTFB_TIFF),y) +DIRECTFB_CONF_OPTS += --enable-tiff +DIRECTFB_DEPENDENCIES += tiff +else +DIRECTFB_CONF_OPTS += --disable-tiff +endif + ifeq ($(BR2_PACKAGE_DIRECTFB_PNG),y) DIRECTFB_CONF_OPTS += --enable-png DIRECTFB_DEPENDENCIES += libpng diff --git a/package/divine/Config.in b/package/divine/Config.in deleted file mode 100644 index 79090047616..00000000000 --- a/package/divine/Config.in +++ /dev/null @@ -1,8 +0,0 @@ -config BR2_PACKAGE_DIVINE - bool "directfb virtual input extension" - depends on BR2_PACKAGE_DIRECTFB - help - DiVine provides a DirectFB input driver that reads input - events from a pipe and dispatches them via a virtual input - device. It also installs the tool 'spooky' that allows to - send input events to DirectFB applications. diff --git a/package/divine/divine.mk b/package/divine/divine.mk deleted file mode 100644 index 322e5fcc863..00000000000 --- a/package/divine/divine.mk +++ /dev/null @@ -1,19 +0,0 @@ -################################################################################ -# -# divine -# -################################################################################ - -# tagged version 1.6.3, tarball is missing files -DIVINE_VERSION = 83cafc257a42b9465cd9d6185bf66b8c1b7ed704 -DIVINE_SITE = git://git.directfb.org/git/directfb/extras/DiVine.git -DIVINE_LICENSE = LGPLv2.1+ -DIVINE_LICENSE_FILES = COPYING -DIVINE_INSTALL_STAGING = YES -DIVINE_DEPENDENCIES = directfb -DIVINE_CONFIG_SCRIPTS = divine-config - -# package has no configure script so we have to generate it -DIVINE_AUTORECONF = YES - -$(eval $(autotools-package)) diff --git a/package/dmraid/0001-fix-compilation-under-musl.patch b/package/dmraid/0001-fix-compilation-under-musl.patch new file mode 100644 index 00000000000..7cf87928625 --- /dev/null +++ b/package/dmraid/0001-fix-compilation-under-musl.patch @@ -0,0 +1,47 @@ +From 89c7fc15e064dd407e6d5ccefe78985b86b8a036 Mon Sep 17 00:00:00 2001 +From: Brendan Heading +Date: Tue, 1 Sep 2015 12:26:36 +0100 +Subject: [PATCH 1/1] fix compilation under musl + +Patch borrowed from Void Linux : + +https://github.com/voidlinux/void-packages/blob/master/srcpkgs/dmraid/patches/25_musl-libc.patch + +Upstream package appears dormant, no mailing list and no +maintainence releases since Nov 2010. + +Upstream-Status: dormant +Signed-off-by: Brendan Heading + +--- + 1.0.0.rc16-3/dmraid/include/dmraid/misc.h | 1 + + 1.0.0.rc16-3/dmraid/lib/device/scan.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/1.0.0.rc16-3/dmraid/include/dmraid/misc.h b/1.0.0.rc16-3/dmraid/include/dmraid/misc.h +index 247a68e..1b1dfdf 100644 +--- a/1.0.0.rc16-3/dmraid/include/dmraid/misc.h ++++ b/1.0.0.rc16-3/dmraid/include/dmraid/misc.h +@@ -10,6 +10,7 @@ + + #ifndef _MISC_H_ + #define _MISC_H_ ++#include + + #define DM_ASSERT(__cond) do { if (!(__cond)) { printf("ASSERT file:%s line:%d fuction:%s cond: %s\n", __FILE__, __LINE__, __FUNCTION__, #__cond); } } while(0); + +diff --git a/1.0.0.rc16-3/dmraid/lib/device/scan.c b/1.0.0.rc16-3/dmraid/lib/device/scan.c +index a040d53..6897146 100644 +--- a/1.0.0.rc16-3/dmraid/lib/device/scan.c ++++ b/1.0.0.rc16-3/dmraid/lib/device/scan.c +@@ -10,6 +10,7 @@ + # include + # include + #else ++# include + # include + # include + #endif +-- +2.4.3 + diff --git a/package/dmraid/Config.in b/package/dmraid/Config.in index ec50670d565..d278a116b2a 100644 --- a/package/dmraid/Config.in +++ b/package/dmraid/Config.in @@ -4,8 +4,7 @@ config BR2_PACKAGE_DMRAID depends on BR2_USE_MMU # lvm2 depends on !BR2_STATIC_LIBS # lvm2 # dmraid triggers the _gp link issue - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII select BR2_PACKAGE_LVM2 help dmraid discovers, activates, deactivates and displays properties @@ -17,6 +16,5 @@ config BR2_PACKAGE_DMRAID comment "dmraid needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU # dmraid triggers the _gp link issue - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/dnsmasq/Config.in b/package/dnsmasq/Config.in index 9e1c462f7f4..b4f34b8d2bc 100644 --- a/package/dnsmasq/Config.in +++ b/package/dnsmasq/Config.in @@ -38,7 +38,7 @@ config BR2_PACKAGE_DNSMASQ_IDN config BR2_PACKAGE_DNSMASQ_LUA bool "Lua scripting support" - select BR2_PACKAGE_LUA + depends on BR2_PACKAGE_LUA help Enable Lua scripting for dnsmasq diff --git a/package/dnsmasq/S80dnsmasq b/package/dnsmasq/S80dnsmasq index 587751e5bf0..d2f8b0f6b4d 100755 --- a/package/dnsmasq/S80dnsmasq +++ b/package/dnsmasq/S80dnsmasq @@ -5,12 +5,12 @@ case "$1" in start) - echo -n "Starting dnsmasq: " + printf "Starting dnsmasq: " start-stop-daemon -S -x /usr/sbin/dnsmasq [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping dnsmasq: " + printf "Stopping dnsmasq: " start-stop-daemon -K -q -x /usr/sbin/dnsmasq [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/dnsmasq/dnsmasq.hash b/package/dnsmasq/dnsmasq.hash index 370792f518c..57dc4b175c3 100644 --- a/package/dnsmasq/dnsmasq.hash +++ b/package/dnsmasq/dnsmasq.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 9ed484b9879d63f7a0bc1010562f17d8aaadf4261e9a126299796cb9696d93ba dnsmasq-2.74.tar.xz +sha256 640c4e1d4c298e42458419cd78cfc26acc549401b1a34d271cd3e0e4226941f1 dnsmasq-2.75.tar.xz diff --git a/package/dnsmasq/dnsmasq.mk b/package/dnsmasq/dnsmasq.mk index 0df33caffba..b3e8c4c4043 100644 --- a/package/dnsmasq/dnsmasq.mk +++ b/package/dnsmasq/dnsmasq.mk @@ -4,14 +4,14 @@ # ################################################################################ -DNSMASQ_VERSION = 2.74 +DNSMASQ_VERSION = 2.75 DNSMASQ_SOURCE = dnsmasq-$(DNSMASQ_VERSION).tar.xz DNSMASQ_SITE = http://thekelleys.org.uk/dnsmasq DNSMASQ_MAKE_ENV = $(TARGET_MAKE_ENV) CC="$(TARGET_CC)" DNSMASQ_MAKE_OPTS = COPTS="$(DNSMASQ_COPTS)" PREFIX=/usr CFLAGS="$(TARGET_CFLAGS)" DNSMASQ_MAKE_OPTS += DESTDIR=$(TARGET_DIR) LDFLAGS="$(TARGET_LDFLAGS)" DNSMASQ_DEPENDENCIES = host-pkgconf -DNSMASQ_LICENSE = Dual GPLv2/GPLv3 +DNSMASQ_LICENSE = GPLv2 or GPLv3 DNSMASQ_LICENSE_FILES = COPYING COPYING-v3 ifneq ($(BR2_PACKAGE_DNSMASQ_DHCP),y) diff --git a/package/doom-wad/Config.in b/package/doom-wad/Config.in index aa1d029eb17..edd299b5e82 100644 --- a/package/doom-wad/Config.in +++ b/package/doom-wad/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_DOOM_WAD bool "shareware Doom WAD file" - depends on BR2_PACKAGE_PRBOOM + depends on BR2_PACKAGE_CHOCOLATE_DOOM || BR2_PACKAGE_PRBOOM help This will install the shareware wad data file for the doom game. diff --git a/package/doom-wad/doom-wad.hash b/package/doom-wad/doom-wad.hash new file mode 100644 index 00000000000..fa069c1b772 --- /dev/null +++ b/package/doom-wad/doom-wad.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 cacf0142b31ca1af00796b4a0339e07992ac5f21bc3f81e7532fe1b5e1b486e6 doom19s.zip diff --git a/package/doom-wad/doom-wad.mk b/package/doom-wad/doom-wad.mk index 6f4f9daa0b1..d3ac731bd5d 100644 --- a/package/doom-wad/doom-wad.mk +++ b/package/doom-wad/doom-wad.mk @@ -4,16 +4,20 @@ # ################################################################################ -DOOM_WAD_VERSION = 1.8 -DOOM_WAD_SOURCE = doom-$(DOOM_WAD_VERSION).wad.gz -DOOM_WAD_SITE = ftp://ftp.idsoftware.com/idstuff/doom +DOOM_WAD_VERSION = 1.9 +DOOM_WAD_SOURCE = doom$(subst .,,$(DOOM_WAD_VERSION))s.zip +# Official server currently unavailable +# DOOM_WAD_SITE = ftp://ftp.idsoftware.com/idstuff/doom +DOOM_WAD_SITE = http://www.jbserver.com/downloads/games/doom/misc/shareware define DOOM_WAD_EXTRACT_CMDS - $(ZCAT) $(DL_DIR)/$($(PKG)_SOURCE) > $(@D)/doom1.wad + $(UNZIP) -p $(DL_DIR)/$($(PKG)_SOURCE) 'DOOMS_19.[12]' > \ + $(@D)/doom-$(DOOM_WAD_VERSION).zip + $(UNZIP) -d $(@D) $(@D)/doom-$(DOOM_WAD_VERSION).zip DOOM1.WAD endef define DOOM_WAD_INSTALL_TARGET_CMDS - $(INSTALL) -m 0644 -D $(@D)/doom1.wad \ + $(INSTALL) -m 0644 -D $(@D)/DOOM1.WAD \ $(TARGET_DIR)/usr/share/games/doom/doom1.wad endef diff --git a/package/dos2unix/Config.in b/package/dos2unix/Config.in new file mode 100644 index 00000000000..ead1a8ffac7 --- /dev/null +++ b/package/dos2unix/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_DOS2UNIX + select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE + bool "dos2unix" + help + dos2unix converts text file line endings between CRLF and LF + + http://waterlan.home.xs4all.nl/dos2unix.html diff --git a/package/dos2unix/Config.in.host b/package/dos2unix/Config.in.host index 012d614c0df..5ec6033a8e3 100644 --- a/package/dos2unix/Config.in.host +++ b/package/dos2unix/Config.in.host @@ -3,4 +3,4 @@ config BR2_PACKAGE_HOST_DOS2UNIX help dos2unix converts text file line endings between CRLF and LF - http://freecode.com/projects/dos2unix + http://waterlan.home.xs4all.nl/dos2unix.html diff --git a/package/dos2unix/dos2unix.hash b/package/dos2unix/dos2unix.hash index 7880f1d8556..7e1a1200284 100644 --- a/package/dos2unix/dos2unix.hash +++ b/package/dos2unix/dos2unix.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 551afe005a86e58664b4f41327408e73afafe92400488dd0aab1dad6deb4e72b dos2unix-7.0.tar.gz +sha256 f4d5df24d181c2efecf7631aab6e894489012396092cf206829f1f9a98556b94 dos2unix-7.3.1.tar.gz diff --git a/package/dos2unix/dos2unix.mk b/package/dos2unix/dos2unix.mk index 2d7fcbbc695..21e03aecb07 100644 --- a/package/dos2unix/dos2unix.mk +++ b/package/dos2unix/dos2unix.mk @@ -4,19 +4,45 @@ # ################################################################################ -DOS2UNIX_VERSION = 7.0 +DOS2UNIX_VERSION = 7.3.1 DOS2UNIX_SITE = http://waterlan.home.xs4all.nl/dos2unix -DOS2UNIX_DEPENDENCIES = host-gettext DOS2UNIX_LICENSE = BSD-2c DOS2UNIX_LICENSE_FILES = COPYING.txt +DOS2UNIX_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) +HOST_DOS2UNIX_DEPENDENCIES = + +ifeq ($(BR2_ENABLE_LOCALE),y) +DOS2UNIX_DEPENDENCIES += host-gettext +else +DOS2UNIX_MAKE_OPTS += ENABLE_NLS= +endif + +ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) +DOS2UNIX_DEPENDENCIES += gettext +DOS2UNIX_MAKE_OPTS += LIBS_EXTRA=-lintl +endif + +ifeq ($(BR2_USE_WCHAR),) +DOS2UNIX_MAKE_OPTS += UCS= +endif + +define DOS2UNIX_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(DOS2UNIX_MAKE_OPTS) +endef + +define DOS2UNIX_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) \ + $(DOS2UNIX_MAKE_OPTS) install +endef define HOST_DOS2UNIX_BUILD_CMDS - $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) + $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) ENABLE_NLS= endef define HOST_DOS2UNIX_INSTALL_CMDS - $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ - install DESTDIR=$(HOST_DIR) + $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR) ENABLE_NLS= \ + install endef +$(eval $(generic-package)) $(eval $(host-generic-package)) diff --git a/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch b/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch new file mode 100644 index 00000000000..34ebc240b55 --- /dev/null +++ b/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch @@ -0,0 +1,45 @@ +From 7a589ef6dab52ad32a296939f0ed2acb4d76b2a7 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sun, 16 Aug 2015 15:55:43 +0200 +Subject: [PATCH] mkfs.fat: fix incorrect int type + +u_int32_t is not a stanard type, while uint32_t is. This fixes builds +with the musl C library, which only defines so-called "clean" headers; +build failures are like (back-quotes and elision manually added for +readability): + + http://autobuild.buildroot.org/results/a09/a0923d7f6d4dbae02eba4c5024bbdae3a52aa85a/build-end.log + + /home/peko/autobuild/instance-1/output/host/usr/bin/x86_64-linux-gcc -D_LARGEFILE_SOURCE \ + -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -D_GNU_SOURCE -D_LARGEFILE_SOURCE \ + -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c -o mkfs.fat.o src/mkfs.fat.c + src/mkfs.fat.c: In function 'main': + src/mkfs.fat.c:1415:18: error: 'u_int32_t' undeclared (first use in this function) + volume_id = (u_int32_t) ((create_timeval.tv_sec << 20) | create_timeval.tv_usec); [...] + ^ + src/mkfs.fat.c:1415:18: note: each undeclared identifier is reported only once for each + function it appears in + +Signed-off-by: "Yann E. MORIN" +--- +Upstream status: applied: https://github.com/dosfstools/dosfstools/pull/9 +--- + src/mkfs.fat.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/mkfs.fat.c b/src/mkfs.fat.c +index b38d116..dddbe24 100644 +--- a/src/mkfs.fat.c ++++ b/src/mkfs.fat.c +@@ -1412,7 +1412,7 @@ int main(int argc, char **argv) + + gettimeofday(&create_timeval, NULL); + create_time = create_timeval.tv_sec; +- volume_id = (u_int32_t) ((create_timeval.tv_sec << 20) | create_timeval.tv_usec); /* Default volume ID = creation time, fudged for more uniqueness */ ++ volume_id = (uint32_t) ((create_timeval.tv_sec << 20) | create_timeval.tv_usec); /* Default volume ID = creation time, fudged for more uniqueness */ + check_atari(); + + printf("mkfs.fat " VERSION " (" VERSION_DATE ")\n"); +-- +1.9.1 + diff --git a/package/dovecot-pigeonhole/dovecot-pigeonhole.hash b/package/dovecot-pigeonhole/dovecot-pigeonhole.hash index ac94e41a67c..942046b6d9c 100644 --- a/package/dovecot-pigeonhole/dovecot-pigeonhole.hash +++ b/package/dovecot-pigeonhole/dovecot-pigeonhole.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 d73c1c5a11cdfdcb58304a1c1272cce6c8e1868e3f61d393b3b8a725f3bf665b dovecot-2.2-pigeonhole-0.4.8.tar.gz +sha256 98a2fd79b0d9effd08c0caf04d483b1caa5e4503dae811e6d436948557bfb702 dovecot-2.2-pigeonhole-0.4.12.tar.gz diff --git a/package/dovecot-pigeonhole/dovecot-pigeonhole.mk b/package/dovecot-pigeonhole/dovecot-pigeonhole.mk index 5e6504e32f9..2b8232d4202 100644 --- a/package/dovecot-pigeonhole/dovecot-pigeonhole.mk +++ b/package/dovecot-pigeonhole/dovecot-pigeonhole.mk @@ -4,7 +4,7 @@ # ################################################################################ -DOVECOT_PIGEONHOLE_VERSION = 0.4.8 +DOVECOT_PIGEONHOLE_VERSION = 0.4.12 DOVECOT_PIGEONHOLE_SOURCE = dovecot-2.2-pigeonhole-$(DOVECOT_PIGEONHOLE_VERSION).tar.gz DOVECOT_PIGEONHOLE_SITE = http://pigeonhole.dovecot.org/releases/2.2 DOVECOT_PIGEONHOLE_LICENSE = LGPLv2.1 diff --git a/package/dovecot/Config.in b/package/dovecot/Config.in index 3baae6e5615..194efb6bc3d 100644 --- a/package/dovecot/Config.in +++ b/package/dovecot/Config.in @@ -13,12 +13,6 @@ config BR2_PACKAGE_DOVECOT if BR2_PACKAGE_DOVECOT -config BR2_PACKAGE_DOVECOT_BZIP2 - bool "bzip2 support" - select BR2_PACKAGE_BZIP2 - help - Enable bzip2 support. - config BR2_PACKAGE_DOVECOT_MYSQL bool "mysql support" select BR2_PACKAGE_MYSQL @@ -43,12 +37,6 @@ config BR2_PACKAGE_DOVECOT_SQLITE help Enable SQLite support. -config BR2_PACKAGE_DOVECOT_ZLIB - bool "zlib support" - select BR2_PACKAGE_ZLIB - help - Enable zlib support. - source package/dovecot-pigeonhole/Config.in endif # BR2_PACKAGE_DOVECOT diff --git a/package/dovecot/dovecot.hash b/package/dovecot/dovecot.hash index 8b6e8f516c5..42a187ae228 100644 --- a/package/dovecot/dovecot.hash +++ b/package/dovecot/dovecot.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 b6d8468cea47f1227f47b80618f7fb872e2b2e9d3302adc107a005dd083865bb dovecot-2.2.18.tar.gz +sha256 7ab7139e59e1f0353bf9c24251f13c893cf1a6ef4bcc47e2d44de437108d0b20 dovecot-2.2.21.tar.gz diff --git a/package/dovecot/dovecot.mk b/package/dovecot/dovecot.mk index 58666d03b28..6b69329054a 100644 --- a/package/dovecot/dovecot.mk +++ b/package/dovecot/dovecot.mk @@ -5,7 +5,7 @@ ################################################################################ DOVECOT_VERSION_MAJOR = 2.2 -DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).18 +DOVECOT_VERSION = $(DOVECOT_VERSION_MAJOR).21 DOVECOT_SITE = http://www.dovecot.org/releases/$(DOVECOT_VERSION_MAJOR) DOVECOT_INSTALL_STAGING = YES DOVECOT_LICENSE = LGPLv2.1 @@ -33,7 +33,7 @@ ifeq ($(BR2_PACKAGE_DOVECOT_MYSQL)$(BR2_PACKAGE_DOVECOT_SQLITE),) DOVECOT_CONF_OPTS += --without-sql endif -ifeq ($(BR2_PACKAGE_DOVECOT_BZIP2),y) +ifeq ($(BR2_PACKAGE_BZIP2),y) DOVECOT_CONF_OPTS += --with-bzlib DOVECOT_DEPENDENCIES += bzip2 else @@ -76,7 +76,21 @@ else DOVECOT_CONF_OPTS += --without-sqlite endif -ifeq ($(BR2_PACKAGE_DOVECOT_ZLIB),y) +ifeq ($(BR2_PACKAGE_LZ4),y) +DOVECOT_CONF_OPTS += --with-lz4 +DOVECOT_DEPENDENCIES += lz4 +else +DOVECOT_CONF_OPTS += --without-lz4 +endif + +ifeq ($(BR2_PACKAGE_XZ),y) +DOVECOT_CONF_OPTS += --with-lzma +DOVECOT_DEPENDENCIES += xz +else +DOVECOT_CONF_OPTS += --without-lzma +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) DOVECOT_CONF_OPTS += --with-zlib DOVECOT_DEPENDENCIES += zlib else diff --git a/package/doxygen/doxygen.mk b/package/doxygen/doxygen.mk index 6f81a56742c..14dd0905961 100644 --- a/package/doxygen/doxygen.mk +++ b/package/doxygen/doxygen.mk @@ -6,7 +6,7 @@ DOXYGEN_VERSION = 1.8.9.1 DOXYGEN_SOURCE = doxygen-$(DOXYGEN_VERSION).src.tar.gz -DOXYGEN_SITE = http://ftp.stack.nl/pub/users/dimitri/ +DOXYGEN_SITE = http://ftp.stack.nl/pub/users/dimitri DOXYGEN_LICENSE = GPLv2 DOXYGEN_LICENSE_FILES = LICENSE DOXYGEN_DEPENDENCIES = host-flex host-bison diff --git a/package/drbd-utils/drbd-utils.hash b/package/drbd-utils/drbd-utils.hash index c9894cdf45b..ebd13ef09ee 100644 --- a/package/drbd-utils/drbd-utils.hash +++ b/package/drbd-utils/drbd-utils.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 2c531655d0d198a6af055edbc90f232538c2a3d2ce3fe137d03d06de4c1166d7 drbd-utils-8.9.1.tar.gz +sha256 38929279d1bf549fd1ade4ce6773a6fe209db51bbb0efe7bf6d2b7871ba0afbc drbd-utils-8.9.4.tar.gz diff --git a/package/drbd-utils/drbd-utils.mk b/package/drbd-utils/drbd-utils.mk index 5df5b81988c..88d272952e8 100644 --- a/package/drbd-utils/drbd-utils.mk +++ b/package/drbd-utils/drbd-utils.mk @@ -4,13 +4,13 @@ # ################################################################################ -DRBD_UTILS_VERSION = 8.9.1 -DRBD_UTILS_SITE = http://oss.linbit.com/drbd/ +DRBD_UTILS_VERSION = 8.9.4 +DRBD_UTILS_SITE = http://oss.linbit.com/drbd DRBD_UTILS_LICENSE = GPLv2+ DRBD_UTILS_LICENSE_FILES = COPYING DRBD_UTILS_DEPENDENCIES = host-flex -DRBD_UTILS_CONF_OPTS = --with-distro=generic +DRBD_UTILS_CONF_OPTS = --with-distro=generic --without-manual ifeq ($(BR2_INIT_SYSTEMD),y) DRBD_UTILS_CONF_OPTS += --with-initscripttype=systemd @@ -26,10 +26,4 @@ else DRBD_UTILS_CONF_OPTS += --with-udev=no endif -# Do not build the documentation because it requires docbook -define DRBD_UTILS_DISABLE_DOCS - $(SED) 's/user scripts documentation/user scripts/' $(@D)/Makefile.in -endef -DRBD_UTILS_POST_PATCH_HOOKS += DRBD_UTILS_DISABLE_DOCS - $(eval $(autotools-package)) diff --git a/package/dropbear/Config.in b/package/dropbear/Config.in index c14c6544c3e..d92361fa397 100644 --- a/package/dropbear/Config.in +++ b/package/dropbear/Config.in @@ -4,6 +4,15 @@ config BR2_PACKAGE_DROPBEAR help A small SSH 2 server designed for small memory environments. + Note that dropbear requires a per-device unique host key. The + key will be generated when dropbear starts, but it is not + persistent over reboot (if you have a read-only rootfs) or + upgrade (if you have a read-write rootfs). To make the key + persistent, replace /etc/dropbear with a symlink to a + directory on a persistent, writeable filesystem. + Alternatively, mount a persistent unionfs over your root + filesystem. + http://matt.ucc.asn.au/dropbear/dropbear.html if BR2_PACKAGE_DROPBEAR diff --git a/package/dropbear/S50dropbear b/package/dropbear/S50dropbear index 89387895091..9474eaafaac 100644 --- a/package/dropbear/S50dropbear +++ b/package/dropbear/S50dropbear @@ -9,30 +9,32 @@ test -r /etc/default/dropbear && . /etc/default/dropbear start() { DROPBEAR_ARGS="$DROPBEAR_ARGS -R" - echo -n "Starting dropbear sshd: " - umask 077 - # If /etc/dropbear is a symlink to /var/run/dropbear, and # - the filesystem is RO (i.e. we can not rm the symlink), # create the directory pointed to by the symlink. # - the filesystem is RW (i.e. we can rm the symlink), # replace the symlink with an actual directory if [ -L /etc/dropbear \ - -a "$(readlink -f /etc/dropbear)" = "/var/run/dropbear" ] + -a "$(readlink /etc/dropbear)" = "/var/run/dropbear" ] then - if rm -f /etc/dropbear; then + if rm -f /etc/dropbear >/dev/null 2>&1; then mkdir -p /etc/dropbear else - mkdir -p $(readlink /etc/dropbear) + echo "No persistent location to store SSH host keys. New keys will be" + echo "generated at each boot. Are you sure this is what you want to do?" + mkdir -p "$(readlink /etc/dropbear)" fi fi + printf "Starting dropbear sshd: " + umask 077 + start-stop-daemon -S -q -p /var/run/dropbear.pid \ --exec /usr/sbin/dropbear -- $DROPBEAR_ARGS [ $? = 0 ] && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping dropbear sshd: " + printf "Stopping dropbear sshd: " start-stop-daemon -K -q -p /var/run/dropbear.pid [ $? = 0 ] && echo "OK" || echo "FAIL" } diff --git a/package/dropbear/dropbear.hash b/package/dropbear/dropbear.hash index 30856cceefe..934b26b85c9 100644 --- a/package/dropbear/dropbear.hash +++ b/package/dropbear/dropbear.hash @@ -1,2 +1,2 @@ # From https://matt.ucc.asn.au/dropbear/releases/SHA256SUM.asc -sha256 7e690594645dfde5787065c78a5d2e4d15e288babfa06e140197ce05f698c8e5 dropbear-2015.67.tar.bz2 +sha256 376214169c0e187ee9f48ae1a99b3f835016ad5b98ede4bfd1cf581deba783af dropbear-2015.71.tar.bz2 diff --git a/package/dropbear/dropbear.mk b/package/dropbear/dropbear.mk index 5bbe8645008..e7633ae8bd9 100644 --- a/package/dropbear/dropbear.mk +++ b/package/dropbear/dropbear.mk @@ -4,7 +4,7 @@ # ################################################################################ -DROPBEAR_VERSION = 2015.67 +DROPBEAR_VERSION = 2015.71 DROPBEAR_SITE = http://matt.ucc.asn.au/dropbear/releases DROPBEAR_SOURCE = dropbear-$(DROPBEAR_VERSION).tar.bz2 DROPBEAR_LICENSE = MIT, BSD-2c-like, BSD-2c @@ -93,7 +93,7 @@ define DROPBEAR_INSTALL_TARGET_CMDS for f in $(DROPBEAR_TARGET_BINS); do \ ln -snf ../sbin/dropbear $(TARGET_DIR)/usr/bin/$$f ; \ done - ln -snf ../var/run/dropbear $(TARGET_DIR)/etc/dropbear + ln -snf /var/run/dropbear $(TARGET_DIR)/etc/dropbear endef $(eval $(autotools-package)) diff --git a/package/dropbear/dropbear.service b/package/dropbear/dropbear.service index 52c77024f5a..620cdd7a503 100644 --- a/package/dropbear/dropbear.service +++ b/package/dropbear/dropbear.service @@ -10,14 +10,17 @@ After=syslog.target network.target auditd.service # replace the symlink with an actual directory ExecStartPre=/bin/sh -c '\ if [ -L /etc/dropbear \ - -a "$(readlink -f /etc/dropbear)" = "/var/run/dropbear" ]; then \ - if rm -f /etc/dropbear; then \ + -a "$(readlink /etc/dropbear)" = "/var/run/dropbear" ]; then \ + if rm -f /etc/dropbear >/dev/null 2>&1; then \ mkdir -p /etc/dropbear; \ else \ - mkdir -p $(readlink /etc/dropbear); \ + echo "No persistent location to store SSH host keys. New keys will be"; \ + echo "generated at each boot. Are you sure this is what you want to do?"; \ + mkdir -p "$(readlink /etc/dropbear)"; \ fi; \ fi' -ExecStart=/usr/sbin/dropbear -F -R +EnvironmentFile=-/etc/default/dropbear +ExecStart=/usr/sbin/dropbear -F -R $DROPBEAR_ARGS ExecReload=/bin/kill -HUP $MAINPID [Install] diff --git a/package/dropwatch/dropwatch.hash b/package/dropwatch/dropwatch.hash new file mode 100644 index 00000000000..3f15c84ec19 --- /dev/null +++ b/package/dropwatch/dropwatch.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 c2348b8d72781ab0f3ca52b8415d78ea98808280e14e7d68e76605f196bb5c4a dropwatch-1.4.tar.xz diff --git a/package/dtc/Config.in.host b/package/dtc/Config.in.host new file mode 100644 index 00000000000..cbabf0a240f --- /dev/null +++ b/package/dtc/Config.in.host @@ -0,0 +1,9 @@ +config BR2_PACKAGE_HOST_DTC + bool "host dtc" + help + The Device Tree Compiler, dtc, takes as input a device-tree in + a given format and outputs a device-tree in another format. + + Install host tools: dtc, convert-dtsv0, fdtdump, fdtget and fdtput. + + https://git.kernel.org/cgit/utils/dtc/dtc.git diff --git a/package/dtc/dtc.mk b/package/dtc/dtc.mk index e094f7bf782..f3b6f3b543f 100644 --- a/package/dtc/dtc.mk +++ b/package/dtc/dtc.mk @@ -44,4 +44,14 @@ define DTC_INSTALL_TARGET_CMDS $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) PREFIX=/usr $(DTC_INSTALL_GOAL) endef +# host build +define HOST_DTC_BUILD_CMDS + $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=$(HOST_DIR)/usr +endef + +define HOST_DTC_INSTALL_CMDS + $(MAKE) -C $(@D) PREFIX=$(HOST_DIR)/usr install-bin +endef + $(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/dtv-scan-tables/dtv-scan-tables.mk b/package/dtv-scan-tables/dtv-scan-tables.mk index 4114d235de6..ab6a36c61e5 100644 --- a/package/dtv-scan-tables/dtv-scan-tables.mk +++ b/package/dtv-scan-tables/dtv-scan-tables.mk @@ -4,7 +4,7 @@ # ################################################################################ -DTV_SCAN_TABLES_VERSION = f2053b34a5ac6f263edc22888b0db4b1fa563fe4 +DTV_SCAN_TABLES_VERSION = 6da0f5e851dd5e51e43b87136228a88705a7ba69 DTV_SCAN_TABLES_SITE = http://git.linuxtv.org/cgit.cgi/dtv-scan-tables.git DTV_SCAN_TABLES_SITE_METHOD = git @@ -14,7 +14,7 @@ DTV_SCAN_TABLES_SITE_METHOD = git # However, the package prominently contains the COPYING and COPYING.LIB # license files (respectively for the GPLv2 and the LGPLv2.1), so we use # that as the licensing information. -DTV_SCAN_TABLES_LICENSE = GPLv2 LGPLv2.1 +DTV_SCAN_TABLES_LICENSE = GPLv2, LGPLv2.1 DTV_SCAN_TABLES_LICENSE_FILES = COPYING COPYING.LGPL define DTV_SCAN_TABLES_INSTALL_TARGET_CMDS diff --git a/package/dvb-apps/dvb-apps.mk b/package/dvb-apps/dvb-apps.mk index 2d816c5e919..b5b8a1f09c7 100644 --- a/package/dvb-apps/dvb-apps.mk +++ b/package/dvb-apps/dvb-apps.mk @@ -7,7 +7,7 @@ DVB_APPS_VERSION = 3d43b280298c39a67d1d889e01e173f52c12da35 DVB_APPS_SITE = http://linuxtv.org/hg/dvb-apps DVB_APPS_SITE_METHOD = hg -DVB_APPS_LICENSE = GPLv2 GPLv2+ LGPLv2.1+ +DVB_APPS_LICENSE = GPLv2, GPLv2+, LGPLv2.1+ DVB_APPS_LICENSE_FILES = COPYING COPYING.LGPL ifeq ($(BR2_ENABLE_LOCALE),) diff --git a/package/dvblast/0001-missing-lm.patch b/package/dvblast/0001-missing-lm.patch new file mode 100644 index 00000000000..2efbec4648c --- /dev/null +++ b/package/dvblast/0001-missing-lm.patch @@ -0,0 +1,29 @@ +dvblast: fix static linking + +dvblast links to -lev, wihch uses functions from the maths library, +like floor(). + +When linking to a shared libev.so, that dependency is automatically +pulled in because libev as a DT_NEEDED ELF tag on libm.so. + +But when lnking to the static libev.a, since there is no way to express +such dependencies in static libraries, libm is not pulled in, which +leads to build failures such as; + http://autobuild.buildroot.org/results/1f0/1f02f84fb926839a1adbe3af457bb909fdc44433/build-end.log + +Fix that by always linking to -lm (which must come *after* -lev). + +Signed-off-by: "Yann E. MORIN" + +diff -durN dvblast-3.0.orig/Makefile dvblast-3.0/Makefile +--- dvblast-3.0.orig/Makefile 2015-10-05 17:51:14.000000000 +0200 ++++ dvblast-3.0/Makefile 2015-10-30 15:57:19.547123894 +0100 +@@ -28,7 +28,7 @@ + LDLIBS += -lstreammaster + endif + +-LDLIBS_DVBLAST += -lpthread -lev ++LDLIBS_DVBLAST += -lpthread -lev -lm + + OBJ_DVBLAST = dvblast.o util.o dvb.o udp.o asi.o demux.o output.o en50221.o comm.o mrtg-cnt.o asi-deltacast.o + OBJ_DVBLASTCTL = util.o dvblastctl.o diff --git a/package/dvblast/0002-fix-int-types.patch b/package/dvblast/0002-fix-int-types.patch new file mode 100644 index 00000000000..d741cc6cb68 --- /dev/null +++ b/package/dvblast/0002-fix-int-types.patch @@ -0,0 +1,24 @@ +Standard integer types are uintXX_t not u_intXX_t + +This fixes the build with the musl C library. + +Signed-off-by: "Yann E. MORIN" + +diff -durN dvblast-3.0.orig/dvblast.h dvblast-3.0/dvblast.h +--- dvblast-3.0.orig/dvblast.h 2015-10-05 17:51:14.000000000 +0200 ++++ dvblast-3.0/dvblast.h 2015-10-30 16:29:25.586125193 +0100 +@@ -49,10 +49,10 @@ + * Raw udp packet structure with flexible-array payload + *****************************************************************************/ + struct udpheader { // FAVOR_BSD hell ... +- u_int16_t source; +- u_int16_t dest; +- u_int16_t len; +- u_int16_t check; ++ uint16_t source; ++ uint16_t dest; ++ uint16_t len; ++ uint16_t check; + }; + + #if defined(__FreeBSD__) || defined(__APPLE__) diff --git a/package/dvblast/Config.in b/package/dvblast/Config.in new file mode 100644 index 00000000000..1ea8f934167 --- /dev/null +++ b/package/dvblast/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_DVBLAST + bool "dvblast" + select BR2_PACKAGE_BITSTREAM + select BR2_PACKAGE_LIBEV + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + depends on !BR2_bfin # libev + depends on BR2_TOOLCHAIN_HAS_THREADS + help + DVBlast is a simple and powerful MPEG-2/TS demux and + streaming application. + + http://www.videolan.org/projects/dvblast.html + +comment 'dvblast needs a toolchain w/ threads' + depends on !BR2_bfin # libev + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/dvblast/dvblast.hash b/package/dvblast/dvblast.hash new file mode 100644 index 00000000000..198549f4c0b --- /dev/null +++ b/package/dvblast/dvblast.hash @@ -0,0 +1,4 @@ +# from https://get.videolan.org/dvblast/3.0/dvblast-3.0.tar.bz2.md5 +md5 89ea9ffb16476d47b8853e52a8a3ee63 dvblast-3.0.tar.bz2 +# locally calculated +sha256 4fc3eb2a3d3545cb76a5c515a16671d1c34fe2f5dad57b71e89bd54c14c3045e dvblast-3.0.tar.bz2 diff --git a/package/dvblast/dvblast.mk b/package/dvblast/dvblast.mk new file mode 100644 index 00000000000..ef9a6669e3b --- /dev/null +++ b/package/dvblast/dvblast.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# dvblast +# +################################################################################ + +DVBLAST_VERSION = 3.0 +DVBLAST_SOURCE = dvblast-$(DVBLAST_VERSION).tar.bz2 +DVBLAST_SITE = https://get.videolan.org/dvblast/$(DVBLAST_VERSION) +DVBLAST_LICENSE = GPLv2+, WTFPL +DVBLAST_LICENSE_FILES = COPYING COPYING.WTFPL +DVBLAST_DEPENDENCIES = bitstream libev + +DVBLAST_MAKE_ENV = $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +DVBLAST_DEPENDENCIES += libiconv +DVBLAST_MAKE_ENV += LDLIBS=-liconv +endif + +define DVBLAST_BUILD_CMDS + $(DVBLAST_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define DVBLAST_INSTALL_TARGET_CMDS + $(DVBLAST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) PREFIX=/usr install +endef + +$(eval $(generic-package)) diff --git a/package/dvbsnoop/0001-musl-types-h.patch b/package/dvbsnoop/0001-musl-types-h.patch new file mode 100644 index 00000000000..1149df0d079 --- /dev/null +++ b/package/dvbsnoop/0001-musl-types-h.patch @@ -0,0 +1,15 @@ +Fix musl build + +Signed-off-by: Bernd Kuhls + +diff -uNr dvbsnoop-1.4.50.org/src/misc/helper.h dvbsnoop-1.4.50/src/misc/helper.h +--- dvbsnoop-1.4.50.org/src/misc/helper.h 2006-01-02 20:04:56.000000000 +0100 ++++ dvbsnoop-1.4.50/src/misc/helper.h 2016-01-24 14:35:02.000000000 +0100 +@@ -16,6 +16,7 @@ + #ifndef __HELPER_H + #define __HELPER_H + ++#include + + u_long outBit_Sx (int verbosity, const char *text, u_char *buf, int startbit, int bitlen); + u_long outBit_Sx_NL (int verbosity, const char *text, u_char *buf, int startbit, int bitlen); diff --git a/package/dvdauthor/dvdauthor.mk b/package/dvdauthor/dvdauthor.mk index be006f10e18..6b90c43c3ef 100644 --- a/package/dvdauthor/dvdauthor.mk +++ b/package/dvdauthor/dvdauthor.mk @@ -34,6 +34,10 @@ ifeq ($(BR2_PACKAGE_FONTCONFIG),y) DVDAUTHOR_DEPENDENCIES += fontconfig endif +ifeq ($(BR2_PACKAGE_LIBFRIBIDI),y) +DVDAUTHOR_DEPENDENCIES += libfribidi +endif + ifeq ($(BR2_PACKAGE_DVDAUTHOR_DVDUNAUTHOR),y) DVDAUTHOR_DEPENDENCIES += libdvdread DVDAUTHOR_CONF_OPTS += --enable-dvdunauthor diff --git a/package/e2fsprogs/Config.in b/package/e2fsprogs/Config.in index ad33983e839..e540337d7f2 100644 --- a/package/e2fsprogs/Config.in +++ b/package/e2fsprogs/Config.in @@ -1,4 +1,3 @@ - config BR2_PACKAGE_E2FSPROGS bool "e2fsprogs" depends on BR2_USE_WCHAR # util-linux @@ -59,11 +58,6 @@ config BR2_PACKAGE_E2FSPROGS_FILEFRAG bool "filefrag" default y -config BR2_PACKAGE_E2FSPROGS_FINDFS - bool "findfs" - default y - select BR2_PACKAGE_E2FSPROGS_E2LABEL - config BR2_PACKAGE_E2FSPROGS_FSCK bool "fsck" default y diff --git a/package/e2fsprogs/e2fsprogs.mk b/package/e2fsprogs/e2fsprogs.mk index 178372b2a68..3de4cd48727 100644 --- a/package/e2fsprogs/e2fsprogs.mk +++ b/package/e2fsprogs/e2fsprogs.mk @@ -74,7 +74,6 @@ E2FSPROGS_TXTTARGETS_ = \ usr/sbin/mkfs.ext4dev \ usr/sbin/fsck.ext[234] \ usr/sbin/fsck.ext4dev \ - usr/sbin/findfs \ usr/sbin/tune2fs define E2FSPROGS_TARGET_REMOVE_UNNEEDED @@ -106,9 +105,16 @@ ifeq ($(BR2_PACKAGE_E2FSPROGS_E2FSCK),y) E2FSPROGS_POST_INSTALL_TARGET_HOOKS += E2FSPROGS_TARGET_E2FSCK_SYMLINKS endif -# Remove busybox tune2fs and e2label, since we want the e2fsprogs full -# blown variants to take precedence, but they are not installed in the -# same location. +# If BusyBox is included, its configuration may supply its own variant +# of ext2-related tools. Since Buildroot desires having full blown +# variants take precedence (in this case, e2fsprogs), we want to remove +# BusyBox's variant of e2fsprogs provided binaries. e2fsprogs targets +# /usr/{bin,sbin} where BusyBox targets /{bin,sbin}. We will attempt to +# remove BusyBox-generated ext2-related tools from /{bin,sbin}. We need +# to do this in the pre-install stage to ensure we do not accidentally +# remove e2fsprogs's binaries in usr-merged environments (ie. if they +# are removed, they would be re-installed in this package's install +# stage). ifeq ($(BR2_PACKAGE_BUSYBOX),y) E2FSPROGS_DEPENDENCIES += busybox @@ -119,7 +125,7 @@ define E2FSPROGS_REMOVE_BUSYBOX_APPLETS $(RM) -f $(TARGET_DIR)/sbin/tune2fs $(RM) -f $(TARGET_DIR)/sbin/e2label endef -E2FSPROGS_POST_INSTALL_TARGET_HOOKS += E2FSPROGS_REMOVE_BUSYBOX_APPLETS +E2FSPROGS_PRE_INSTALL_TARGET_HOOKS += E2FSPROGS_REMOVE_BUSYBOX_APPLETS endif define E2FSPROGS_TARGET_TUNE2FS_SYMLINK @@ -130,14 +136,6 @@ ifeq ($(BR2_PACKAGE_E2FSPROGS_TUNE2FS),y) E2FSPROGS_POST_INSTALL_TARGET_HOOKS += E2FSPROGS_TARGET_TUNE2FS_SYMLINK endif -define E2FSPROGS_TARGET_FINDFS_SYMLINK - ln -sf e2label $(TARGET_DIR)/usr/sbin/findfs -endef - -ifeq ($(BR2_PACKAGE_E2FSPROGS_FINDFS),y) -E2FSPROGS_POST_INSTALL_TARGET_HOOKS += E2FSPROGS_TARGET_FINDFS_SYMLINK -endif - # systemd really wants to have fsck in /sbin define E2FSPROGS_TARGET_FSCK_SYMLINK ln -sf ../usr/sbin/fsck $(TARGET_DIR)/sbin/fsck diff --git a/package/ebtables/Config.in b/package/ebtables/Config.in index 18fff2450dd..fa123b196e3 100644 --- a/package/ebtables/Config.in +++ b/package/ebtables/Config.in @@ -1,7 +1,12 @@ config BR2_PACKAGE_EBTABLES bool "ebtables" + depends on !BR2_TOOLCHAIN_USES_MUSL # mixes userspace and kernel headers depends on BR2_USE_MMU # fork() help Ethernet bridge frame table administration - http://ebtables.sourceforge.net + http://ebtables.netfilter.org/ + +comment "ebtables needs a glibc or uClibc toolchain" + depends on BR2_TOOLCHAIN_USES_MUSL + depends on BR2_USE_MMU diff --git a/package/ebtables/ebtables.hash b/package/ebtables/ebtables.hash index 75ab7dbc1a4..45262765c27 100644 --- a/package/ebtables/ebtables.hash +++ b/package/ebtables/ebtables.hash @@ -1,3 +1,2 @@ -# From http://sourceforge.net/projects/ebtables/files/ebtables/ebtables-2-0-10-4/ -sha1 907d3b82329e8fbb7aaaa98049732bd8dab022f9 ebtables-v2.0.10-4.tar.gz -md5 506742a3d44b9925955425a659c1a8d0 ebtables-v2.0.10-4.tar.gz +# Locally computed +sha256 dc6f7b484f207dc712bfca81645f45120cb6aee3380e77a1771e9c34a9a4455d ebtables-v2.0.10-4.tar.gz diff --git a/package/ebtables/ebtables.mk b/package/ebtables/ebtables.mk index 99f936359ed..639593070a5 100644 --- a/package/ebtables/ebtables.mk +++ b/package/ebtables/ebtables.mk @@ -6,7 +6,7 @@ EBTABLES_VERSION = 2.0.10-4 EBTABLES_SOURCE = ebtables-v$(EBTABLES_VERSION).tar.gz -EBTABLES_SITE = http://downloads.sourceforge.net/project/ebtables/ebtables/ebtables-$(subst .,-,$(EBTABLES_VERSION)) +EBTABLES_SITE = http://ftp.netfilter.org/pub/ebtables EBTABLES_LICENSE = GPLv2+ EBTABLES_LICENSE_FILES = COPYING EBTABLES_STATIC = $(if $(BR2_STATIC_LIBS),static) diff --git a/package/ecryptfs-utils/0001-musl.patch b/package/ecryptfs-utils/0001-musl.patch new file mode 100644 index 00000000000..4a3b8a707ec --- /dev/null +++ b/package/ecryptfs-utils/0001-musl.patch @@ -0,0 +1,35 @@ +fix musl build + +Patch inspired by +https://github.com/kraj/meta-musl/blob/master/recipes-core/util-linux/util-linux-2.25/0001-switch_root-use-typeof-instead-of-__SWORD_TYPE-for-s.patch + +Signed-off-by: Bernd Kuhls + +diff -uNr ecryptfs-utils-109.org/src/utils/mount.ecryptfs_private.c ecryptfs-utils-109/src/utils/mount.ecryptfs_private.c +--- ecryptfs-utils-109.org/src/utils/mount.ecryptfs_private.c 2016-01-22 17:04:52.000000000 +0100 ++++ ecryptfs-utils-109/src/utils/mount.ecryptfs_private.c 2016-01-24 16:52:37.000000000 +0100 +@@ -224,6 +224,7 @@ + + static int check_cwd_f_type() + { ++ struct statfs buf; + /** + * This is *not* a list of compatible lower filesystems list for + * eCryptfs. This is a list of filesystems that we reasonably expect to +@@ -235,7 +236,7 @@ + * deceive other programs with a crafted /proc/self/*. See + * https://launchpad.net/bugs/1530566 for more details. + */ +- __SWORD_TYPE f_type_whitelist[] = { ++ typeof(buf.f_type) f_type_whitelist[] = { + 0x61756673 /* AUFS_SUPER_MAGIC */, + 0x9123683E /* BTRFS_SUPER_MAGIC */, + 0x00C36400 /* CEPH_SUPER_MAGIC */, +@@ -259,7 +260,6 @@ + 0x58465342 /* XFS_SB_MAGIC */, + 0x2FC12FC1 /* ZFS_SUPER_MAGIC */, + }; +- struct statfs buf; + size_t i, whitelist_len; + + if (statfs(".", &buf) != 0) { diff --git a/package/ecryptfs-utils/ecryptfs-utils.hash b/package/ecryptfs-utils/ecryptfs-utils.hash index 9dc6b990d13..40cc17cdd67 100644 --- a/package/ecryptfs-utils/ecryptfs-utils.hash +++ b/package/ecryptfs-utils/ecryptfs-utils.hash @@ -1,2 +1,2 @@ -# From https://launchpad.net/ecryptfs/trunk/104/+download/ecryptfs-utils_104.orig.tar.gz/+md5 -md5 6ae93822bcf0d15470516c30a3deee32 ecryptfs-utils_104.orig.tar.gz +# From https://launchpad.net/ecryptfs/trunk/109/+download/ecryptfs-utils_109.orig.tar.gz/+md5 +md5 8e33f096c8cb8288f9c29a9936cd0d28 ecryptfs-utils_109.orig.tar.gz diff --git a/package/ecryptfs-utils/ecryptfs-utils.mk b/package/ecryptfs-utils/ecryptfs-utils.mk index 88ca55e3a8c..81a4b4bd7d0 100644 --- a/package/ecryptfs-utils/ecryptfs-utils.mk +++ b/package/ecryptfs-utils/ecryptfs-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -ECRYPTFS_UTILS_VERSION = 104 +ECRYPTFS_UTILS_VERSION = 109 ECRYPTFS_UTILS_SOURCE = ecryptfs-utils_$(ECRYPTFS_UTILS_VERSION).orig.tar.gz ECRYPTFS_UTILS_SITE = https://launchpad.net/ecryptfs/trunk/$(ECRYPTFS_UTILS_VERSION)/+download ECRYPTFS_UTILS_LICENSE = GPLv2+ diff --git a/package/edid-decode/Config.in b/package/edid-decode/Config.in new file mode 100644 index 00000000000..64297b494dc --- /dev/null +++ b/package/edid-decode/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_EDID_DECODE + bool "edid-decode" + help + Decode EDID data in human-readable format. + + http://cgit.freedesktop.org/xorg/app/edid-decode/ diff --git a/package/edid-decode/edid-decode.mk b/package/edid-decode/edid-decode.mk new file mode 100644 index 00000000000..243ccfbea68 --- /dev/null +++ b/package/edid-decode/edid-decode.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# edid-decode +# +################################################################################ + +EDID_DECODE_VERSION = 681153145d5e05ee15032ea792e967cda06e7622 +EDID_DECODE_SITE = git://anongit.freedesktop.org/git/xorg/app/edid-decode.git +EDID_DECODE_LICENSE = MIT +EDID_DECODE_LICENSE_FILES = edid-decode.c + +define EDID_DECODE_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS)" +endef + +define EDID_DECODE_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" install +endef + +$(eval $(generic-package)) diff --git a/package/efl/Config.in b/package/efl/Config.in index 3d31a2609f4..88e2c360f7d 100644 --- a/package/efl/Config.in +++ b/package/efl/Config.in @@ -1,30 +1,191 @@ -menuconfig BR2_PACKAGE_EFL - bool "Enlightenment Foundation Libraries" - depends on BR2_USE_WCHAR - # libeina uses madvise(). To revisit when bumping EFL to 1.8 +config BR2_PACKAGE_EFL + bool "efl" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_HAS_UDEV # libudev + # https://phab.enlightenment.org/T2728 + depends on BR2_PACKAGE_LUA_5_1 # needs lua 5.1, broken with 5.2+ + depends on BR2_TOOLCHAIN_HAS_THREADS # untested without threads depends on BR2_USE_MMU + depends on BR2_USE_WCHAR # use wchar_t + depends on !BR2_STATIC_LIBS # dlfcn.h + select BR2_PACKAGE_DBUS + select BR2_PACKAGE_FREETYPE + select BR2_PACKAGE_JPEG # Emile needs libjpeg + select BR2_PACKAGE_LIBCURL # Ecore_con_url, runtime dependency + select BR2_PACKAGE_LIBXKBCOMMON if BR2_PACKAGE_WAYLAND + select BR2_PACKAGE_UTIL_LINUX + # libblkid is part of required tools, see EFL's README. + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID help Enlightenment Foundation Libraries - http://enlightenment.org + https://enlightenment.org if BR2_PACKAGE_EFL -source "package/efl/expedite/Config.in" -source "package/efl/libeina/Config.in" -source "package/efl/libecore/Config.in" -source "package/efl/libeet/Config.in" -source "package/efl/libefreet/Config.in" -source "package/efl/libeio/Config.in" -source "package/efl/libevas/Config.in" -source "package/efl/libevas-generic-loaders/Config.in" -source "package/efl/libembryo/Config.in" -source "package/efl/libedje/Config.in" -source "package/efl/libethumb/Config.in" -source "package/efl/libelementary/Config.in" -source "package/efl/libedbus/Config.in" +config BR2_PACKAGE_EFL_BULLET + bool "Enable bullet support (recommended)" + select BR2_PACKAGE_BULLET + default y + help + If you have chosen to disable physics support, this disables + lots of core functionality and is effectively never + tested. You are going to find features that suddenly don't + work and as a result cause a series of breakages. This is + simply not tested so you are on your own in terms of + ensuring everything works if you do this. + +config BR2_PACKAGE_EFL_FONTCONFIG + bool "Enable fontconfig support (recommended)" + select BR2_PACKAGE_FONTCONFIG + default y + help + If fontconfig is disabled, this is going to make general + font searching not work, and only some very direct 'load + /path/file.ttf' will work alongside some old-school ttf file + path searching. This is very likely not what you want, so + highly reconsider turning fontconfig off. Having it off will + lead to visual problems like missing text in many UI areas + etc... + +config BR2_PACKAGE_EFL_GSTREAMER1 + bool "Enable gstreamer1 support (recommended)" + select BR2_PACKAGE_GSTREAMER1 + select BR2_PACKAGE_GST1_PLUGINS_BASE + default y + help + If Gstreamer 1.x support is disabled, it will heavily limit + your media support options and render some functionality as + useless, leading to visible application bugs. + +config BR2_PACKAGE_EFL_LIBFRIBIDI + bool "Enable libfribidi support (recommended)" + select BR2_PACKAGE_LIBFRIBIDI + default y + help + Fribidi is used for handling right-to-left text (like + Arabic, Hebrew, Farsi, Persian etc.) and is very likely not + a feature you want to disable unless you know for absolute + certain you will never encounter and have to display such + scripts. Also note that we don't test with fribidi disabled + so you may also trigger code paths with bugs that are never + normally used. + +config BR2_PACKAGE_EFL_LIBSNDFILE + bool "Enable libsndfile support (recommended)" + select BR2_PACKAGE_LIBSNDFILE + default y + help + If you disabled audio support in Ecore, this is not tested + and may create bugs for you due to it creating untested code + paths. Reconsider disabling audio. + +config BR2_PACKAGE_EFL_PULSEAUDIO + bool "Enable pulseaudio support (recommended)" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pulseaudio -> json-c + select BR2_PACKAGE_PULSEAUDIO + default y + help + The only audio output method supported by Ecore right now is + via Pulseaudio. You have disabled that and likely have + broken a whole bunch of things in the process. Reconsider + your configure options. + + NOTE: multisense support is automatically enabled with + pulseaudio. + +config BR2_PACKAGE_EFL_UTIL_LINUX_LIBMOUNT + bool "Enable libmount support (recommended)" + select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT + default y + help + Libmount is used heavily inside Eeze for support of removable + devices etc... and disabling this will hurt support for + Enlightenment and its filemanager. + +config BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG + bool + default y if BR2_PACKAGE_EFL_BULLET && \ + BR2_PACKAGE_EFL_FONTCONFIG && \ + BR2_PACKAGE_EFL_GSTREAMER1 && \ + BR2_PACKAGE_EFL_LIBFRIBIDI && \ + BR2_PACKAGE_EFL_LIBSNDFILE && \ + BR2_PACKAGE_EFL_PULSEAUDIO && \ + BR2_PACKAGE_EFL_UTIL_LINUX_LIBMOUNT + + +comment "Warning: one of the recommended option for EFL is not enabled" + depends on !BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG + +comment "libecore video support" + +config BR2_PACKAGE_EFL_FB + bool "FB support" + +config BR2_PACKAGE_EFL_X_XLIB + bool "X11 support (xlib)" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXCOMPOSITE + select BR2_PACKAGE_XLIB_LIBXCURSOR + select BR2_PACKAGE_XLIB_LIBXDAMAGE + select BR2_PACKAGE_XLIB_LIBXINERAMA + select BR2_PACKAGE_XLIB_LIBXP + select BR2_PACKAGE_XLIB_LIBXRANDR + select BR2_PACKAGE_XLIB_LIBXRENDER + select BR2_PACKAGE_XLIB_LIBXSCRNSAVER + select BR2_PACKAGE_XLIB_LIBXTST + select BR2_PACKAGE_XPROTO_GLPROTO + +comment "libevas loaders" + +config BR2_PACKAGE_EFL_PNG + bool "libevas png loader" + select BR2_PACKAGE_LIBPNG + help + This enables the loader code that loads png files using + libpng. + +config BR2_PACKAGE_EFL_JP2K + bool "libevas jp2k loader" + select BR2_PACKAGE_OPENJPEG + help + This enables the loader code that loads jp2k files using + openjpeg. + +config BR2_PACKAGE_EFL_JPEG + bool "libevas jpeg loader" + help + This enables the loader code that loads jpeg files using + libjpeg. + +config BR2_PACKAGE_EFL_GIF + bool "libevas gif loader" + select BR2_PACKAGE_GIFLIB + help + This enables the loader code that loads gif files using + giflib. + +config BR2_PACKAGE_EFL_TIFF + bool "libevas tiff loader" + select BR2_PACKAGE_TIFF + help + This enables the loader code that loads tiff files. + +config BR2_PACKAGE_EFL_WEBP + bool "libevas webp image loader" + select BR2_PACKAGE_WEBP + help + This enables the loader code that loads images using WebP. endif # BR2_PACKAGE_EFL -comment "EFL needs a toolchain w/ wchar" - depends on !BR2_USE_WCHAR +comment "efl needs udev /dev management and a toolchain w/ C++, dynamic library, threads, wchar" + depends on !BR2_PACKAGE_HAS_UDEV || !BR2_INSTALL_LIBSTDCPP \ + || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR + depends on BR2_USE_MMU + +comment "efl needs lua 5.1" + depends on !BR2_PACKAGE_LUA_5_1 + depends on BR2_USE_MMU diff --git a/package/efl/efl.hash b/package/efl/efl.hash new file mode 100644 index 00000000000..6673bb51d6f --- /dev/null +++ b/package/efl/efl.hash @@ -0,0 +1,2 @@ +# From https://download.enlightenment.org/rel/libs/efl/efl-1.15.3.tar.xz.sha256 +sha256 3bac40e6294288034bd7f8902088bf1169cf376f6fd25b7a49854ab561630642 efl-1.15.3.tar.xz diff --git a/package/efl/efl.mk b/package/efl/efl.mk index aa6630cff91..2ea2592115c 100644 --- a/package/efl/efl.mk +++ b/package/efl/efl.mk @@ -1,3 +1,277 @@ -EFL_VERSION = 1.7.10 +################################################################################ +# +# efl +# +################################################################################ -include $(sort $(wildcard package/efl/*/*.mk)) +EFL_VERSION = 1.15.3 +EFL_SOURCE = efl-$(EFL_VERSION).tar.xz +EFL_SITE = http://download.enlightenment.org/rel/libs/efl +EFL_LICENSE = BSD-2c, LGPLv2.1+, GPLv2+ +EFL_LICENSE_FILES = \ + COMPLIANCE \ + COPYING \ + licenses/COPYING.BSD \ + licenses/COPYING.FTL \ + licenses/COPYING.GPL \ + licenses/COPYING.LGPL \ + licenses/COPYING.SMALL + +EFL_INSTALL_STAGING = YES + +EFL_DEPENDENCIES = host-pkgconf host-efl dbus freetype jpeg lua udev \ + util-linux zlib + +# Regenerate the autotools: +# - to fix an issue in eldbus-codegen: https://phab.enlightenment.org/T2718 +EFL_AUTORECONF = YES +EFL_GETTEXTIZE = YES + +# Configure options: +# --disable-cxx-bindings: disable C++11 bindings. +# --disable-sdl: disable sdl2 support. +# --disable-systemd: disable systemd support. +# --disable-xinput22: disable X11 XInput v2.2+ support. +# --enable-lua-old: disable Elua and remove luajit dependency. +# --with-opengl=none: disable opengl support. +EFL_CONF_OPTS = \ + --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \ + --with-eolian-gen=$(HOST_DIR)/usr/bin/eolian_gen \ + --disable-cxx-bindings \ + --disable-sdl \ + --disable-systemd \ + --disable-xinput22 \ + --enable-lua-old \ + --with-opengl=none + +# Disable untested configuration warning. +ifeq ($(BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG),) +EFL_CONF_OPTS += --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-aba +endif + +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),y) +EFL_DEPENDENCIES += util-linux +EFL_CONF_OPTS += --enable-libmount +else +EFL_CONF_OPTS += --disable-libmount +endif + +ifeq ($(BR2_PACKAGE_FONTCONFIG),y) +EFL_CONF_OPTS += --enable-fontconfig +EFL_DEPENDENCIES += fontconfig +else +EFL_CONF_OPTS += --disable-fontconfig +endif + +ifeq ($(BR2_PACKAGE_LIBFRIBIDI),y) +EFL_CONF_OPTS += --enable-fribidi +EFL_DEPENDENCIES += libfribidi +else +EFL_CONF_OPTS += --disable-fribidi +endif + +ifeq ($(BR2_PACKAGE_GSTREAMER1)$(BR2_PACKAGE_GST1_PLUGINS_BASE),yy) +EFL_CONF_OPTS += --enable-gstreamer1 +EFL_DEPENDENCIES += gstreamer1 gst1-plugins-base +else +EFL_CONF_OPTS += --disable-gstreamer1 +endif + +ifeq ($(BR2_PACKAGE_BULLET),y) +EFL_CONF_OPTS += --enable-physics +EFL_DEPENDENCIES += bullet +else +EFL_CONF_OPTS += --disable-physics +endif + +ifeq ($(BR2_PACKAGE_LIBSNDFILE),y) +EFL_CONF_OPTS += --enable-audio +EFL_DEPENDENCIES += libsndfile +else +EFL_CONF_OPTS += --disable-audio +endif + +ifeq ($(BR2_PACKAGE_PULSEAUDIO),y) +EFL_CONF_OPTS += --enable-pulseaudio +EFL_DEPENDENCIES += pulseaudio +else +EFL_CONF_OPTS += --disable-pulseaudio +endif + +ifeq ($(BR2_PACKAGE_HARFBUZZ),y) +EFL_DEPENDENCIES += harfbuzz +EFL_CONF_OPTS += --enable-harfbuzz +else +EFL_CONF_OPTS += --disable-harfbuzz +endif + +ifeq ($(BR2_PACKAGE_TSLIB),y) +EFL_DEPENDENCIES += tslib +EFL_CONF_OPTS += --enable-tslib +else +EFL_CONF_OPTS += --disable-tslib +endif + +ifeq ($(BR2_PACKAGE_LIBGLIB2),y) +EFL_DEPENDENCIES += libglib2 +EFL_CONF_OPTS += --with-glib=yes +else +EFL_CONF_OPTS += --with-glib=no +endif + +# Prefer openssl (the default) over gnutls. +ifeq ($(BR2_PACKAGE_OPENSSL),y) +EFL_DEPENDENCIES += openssl +EFL_CONF_OPTS += --with-crypto=openssl +else ifeq ($(BR2_PACKAGE_GNUTLS)$(BR2_PACKAGE_LIBGCRYPT),yy) +EFL_DEPENDENCIES += gnutls libgcrypt +EFL_CONF_OPTS += --with-crypto=gnutls \ + --with-libgcrypt-prefix=$(STAGING_DIR)/usr +else +EFL_CONF_OPTS += --with-crypto=none +endif # BR2_PACKAGE_OPENSSL + +ifeq ($(BR2_PACKAGE_WAYLAND),y) +EFL_DEPENDENCIES += wayland libxkbcommon +EFL_CONF_OPTS += --enable-wayland +else +EFL_CONF_OPTS += --disable-wayland +endif + +ifeq ($(BR2_PACKAGE_EFL_FB),y) +EFL_CONF_OPTS += --enable-fb +else +EFL_CONF_OPTS += --disable-fb +endif + +ifeq ($(BR2_PACKAGE_EFL_X_XLIB),y) +EFL_CONF_OPTS += \ + --with-x11=xlib \ + --with-x=$(STAGING_DIR) \ + --x-includes=$(STAGING_DIR)/usr/include \ + --x-libraries=$(STAGING_DIR)/usr/lib + +EFL_DEPENDENCIES += \ + xlib_libX11 \ + xlib_libXcomposite \ + xlib_libXcursor \ + xlib_libXdamage \ + xlib_libXext \ + xlib_libXinerama \ + xlib_libXrandr \ + xlib_libXrender \ + xlib_libXScrnSaver \ + xlib_libXtst +else +EFL_CONF_OPTS += --with-x11=none +endif + +# Loaders that need external dependencies needs to be --enable-XXX=yes +# otherwise the default is '=static'. +# All other loaders are statically built-in +ifeq ($(BR2_PACKAGE_EFL_PNG),y) +EFL_CONF_OPTS += --enable-image-loader-png=yes +EFL_DEPENDENCIES += libpng +else +EFL_CONF_OPTS += --disable-image-loader-png +endif + +ifeq ($(BR2_PACKAGE_EFL_JPEG),y) +EFL_CONF_OPTS += --enable-image-loader-jpeg=yes +# efl already depends on jpeg. +else +EFL_CONF_OPTS += --disable-image-loader-jpeg +endif + +ifeq ($(BR2_PACKAGE_EFL_GIF),y) +EFL_CONF_OPTS += --enable-image-loader-gif=yes +EFL_DEPENDENCIES += giflib +else +EFL_CONF_OPTS += --disable-image-loader-gif +endif + +ifeq ($(BR2_PACKAGE_EFL_TIFF),y) +EFL_CONF_OPTS += --enable-image-loader-tiff=yes +EFL_DEPENDENCIES += tiff +else +EFL_CONF_OPTS += --disable-image-loader-tiff +endif + +ifeq ($(BR2_PACKAGE_EFL_JP2K),y) +EFL_CONF_OPTS += --enable-image-loader-jp2k=yes +EFL_DEPENDENCIES += openjpeg +else +EFL_CONF_OPTS += --disable-image-loader-jp2k +endif + +ifeq ($(BR2_PACKAGE_EFL_WEBP),y) +EFL_CONF_OPTS += --enable-image-loader-webp=yes +EFL_DEPENDENCIES += webp +else +EFL_CONF_OPTS += --disable-image-loader-webp +endif + +$(eval $(autotools-package)) + +################################################################################ +# +# host-efl +# +################################################################################ + +# We want to build only some host tools used later in the build. +# Actually we want: edje_cc, embryo_cc and eet. + +# Host dependencies: +# * host-dbus: for Eldbus +# * host-freetype: for libevas +# * host-libglib2: for libecore +# * host-libjpeg, host-libpng: for libevas image loader +# * host-lua: disable luajit dependency +HOST_EFL_DEPENDENCIES = \ + host-pkgconf \ + host-dbus \ + host-freetype \ + host-libglib2 \ + host-libjpeg \ + host-libpng \ + host-lua \ + host-zlib + +# Configure options: +# --disable-audio, --disable-multisense remove libsndfile dependency. +# --disable-cxx-bindings: disable C++11 bindings. +# --disable-fontconfig: remove dependency on fontconfig. +# --disable-fribidi: remove dependency on libfribidi. +# --disable-gstreamer1: remove dependency on gtreamer 1.0. +# --disable-libeeze: remove libudev dependency. +# --disable-libmount: remove dependency on host-util-linux libmount. +# --disable-physics: remove Bullet dependency. +# --enable-image-loader-gif=no: disable Gif dependency. +# --enable-image-loader-tiff=no: disable Tiff dependency. +# --enable-lua-old: disable Elua and remove luajit dependency. +# --with-crypto=none: remove dependencies on openssl or gnutls. +# --with-x11=none: remove dependency on X.org. +# Yes I really know what I am doing. +HOST_EFL_CONF_OPTS += \ + --disable-audio \ + --disable-cxx-bindings \ + --disable-fontconfig \ + --disable-fribidi \ + --disable-gstreamer1 \ + --disable-libeeze \ + --disable-libmount \ + --disable-multisense \ + --disable-physics \ + --enable-image-loader-gif=no \ + --enable-image-loader-jpeg=yes \ + --enable-image-loader-png=yes \ + --enable-image-loader-tiff=no \ + --enable-lua-old \ + --with-crypto=none \ + --with-glib=yes \ + --with-opengl=none \ + --with-x11=none \ + --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-aba + +$(eval $(host-autotools-package)) diff --git a/package/efl/libecore/Config.in b/package/efl/libecore/Config.in deleted file mode 100644 index a9408dc762c..00000000000 --- a/package/efl/libecore/Config.in +++ /dev/null @@ -1,46 +0,0 @@ -config BR2_PACKAGE_LIBECORE - bool "libecore" - select BR2_PACKAGE_LIBEINA - help - Ecore is the event/X abstraction layer that makes doing - selections, Xdnd, general X stuff, event loops, timeouts and - idle handlers fast, optimized, and convenient. - - http://trac.enlightenment.org/e/wiki/Ecore - -if BR2_PACKAGE_LIBECORE - -config BR2_PACKAGE_LIBECORE_DIRECTFB - bool "libecore DirectFB support" - depends on BR2_PACKAGE_DIRECTFB - default y - -config BR2_PACKAGE_LIBECORE_FB - bool "libecore framebuffer support" - -config BR2_PACKAGE_LIBECORE_SDL - bool "libecore SDL support" - select BR2_PACKAGE_SDL - -config BR2_PACKAGE_LIBECORE_X - bool "libecore X support" - depends on BR2_PACKAGE_XORG7 - select BR2_PACKAGE_XLIB_LIBX11 - select BR2_PACKAGE_XLIB_LIBXEXT - -config BR2_PACKAGE_LIBECORE_X_XCB - bool "libecore XCB support" - depends on BR2_PACKAGE_XORG7 - select BR2_PACKAGE_LIBXCB - select BR2_PACKAGE_XLIB_LIBX11 - select BR2_PACKAGE_XCB_UTIL - -config BR2_PACKAGE_LIBECORE_EVAS - bool "libecore Evas support" - select BR2_PACKAGE_LIBEVAS - depends on BR2_TOOLCHAIN_HAS_THREADS - -comment "evas support needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS - -endif # BR2_PACKAGE_LIBECORE diff --git a/package/efl/libecore/libecore.mk b/package/efl/libecore/libecore.mk deleted file mode 100644 index 1f711a8315a..00000000000 --- a/package/efl/libecore/libecore.mk +++ /dev/null @@ -1,114 +0,0 @@ -################################################################################ -# -# libecore -# -################################################################################ - -LIBECORE_VERSION = $(EFL_VERSION) -LIBECORE_SOURCE = ecore-$(LIBECORE_VERSION).tar.bz2 -LIBECORE_SITE = http://download.enlightenment.org/releases -LIBECORE_LICENSE = BSD-2c -LIBECORE_LICENSE_FILES = COPYING - -LIBECORE_INSTALL_STAGING = YES - -LIBECORE_DEPENDENCIES = host-pkgconf libeina - -HOST_LIBECORE_DEPENDENCIES = host-pkgconf host-libeina host-libevas -HOST_LIBECORE_CONF_OPTS += \ - --enable-ecore-evas \ - --disable-simple-x11 \ - --disable-ecore-directfb \ - --disable-ecore-x \ - --disable-ecore-x-xcb \ - --disable-ecore-imf-xim - -# default options -LIBECORE_CONF_OPTS = --disable-simple-x11 - -ifeq ($(BR2_PACKAGE_TSLIB),y) -LIBECORE_DEPENDENCIES += tslib -endif - -ifeq ($(BR2_PACKAGE_LIBGLIB2),y) -LIBECORE_DEPENDENCIES += libglib2 -endif - -ifeq ($(BR2_PACKAGE_OPENSSL),y) -LIBECORE_DEPENDENCIES += openssl -LIBECORE_CONF_OPTS += --enable-openssl -else -LIBECORE_CONF_OPTS += --disable-openssl -endif - -ifeq ($(BR2_PACKAGE_GNUTLS)$(BR2_PACKAGE_LIBGCRYPT),yy) -LIBECORE_DEPENDENCIES += gnutls libgcrypt -LIBECORE_CONF_OPTS += --enable-gnutls --with-libgcrypt-prefix=$(STAGING_DIR)/usr -else -LIBECORE_CONF_OPTS += --disable-gnutls -endif - -ifeq ($(BR2_PACKAGE_LIBCURL),y) -LIBECORE_DEPENDENCIES += libcurl -endif - -# libecore -ifeq ($(BR2_PACKAGE_LIBECORE_DIRECTFB),y) -LIBECORE_CONF_OPTS += --enable-ecore-directfb -LIBECORE_DEPENDENCIES += directfb -else -LIBECORE_CONF_OPTS += --disable-ecore-directfb -endif - -ifeq ($(BR2_PACKAGE_LIBECORE_FB),y) -LIBECORE_CONF_OPTS += --enable-ecore-fb -else -LIBECORE_CONF_OPTS += --disable-ecore-fb -endif - -ifeq ($(BR2_PACKAGE_LIBECORE_SDL),y) -LIBECORE_CONF_OPTS += --enable-ecore-sdl -LIBECORE_DEPENDENCIES += sdl -else -LIBECORE_CONF_OPTS += --disable-ecore-sdl -endif - -ifeq ($(BR2_PACKAGE_LIBECORE_X),y) -LIBECORE_CONF_OPTS += --enable-ecore-x \ - --with-x=$(STAGING_DIR) \ - --x-includes=$(STAGING_DIR)/usr/include \ - --x-libraries=$(STAGING_DIR)/usr/lib -LIBECORE_DEPENDENCIES += xlib_libXext xlib_libX11 -else -LIBECORE_CONF_OPTS += --disable-ecore-x --disable-ecore-imf-xim -endif - -ifeq ($(BR2_PACKAGE_LIBECORE_X_XCB),y) -LIBECORE_CONF_OPTS += --enable-ecore-x-xcb -LIBECORE_DEPENDENCIES += libxcb xlib_libX11 xcb-util pixman - -# src/util/makekeys is executed at build time to generate -# ecore_xcb_keysym_table.h, so it should get compiled for the host. -# The ecore makefile unfortunately doesn't know about cross -# compilation so this doesn't work. Long term, we should probably -# teach it about CC_FOR_BUILD, but for now simply build makekeys by -# hand in advance -define LIBECORE_BUILD_MAKEKEYS_FOR_HOST - $(HOST_CONFIGURE_OPTS) $(MAKE1) -C $(@D)/src/util makekeys.o makekeys -endef - -LIBECORE_POST_EXTRACT_HOOKS += LIBECORE_BUILD_MAKEKEYS_FOR_HOST -else -LIBECORE_CONF_OPTS += --disable-ecore-x-xcb -endif - -# libecore-evas -ifeq ($(BR2_PACKAGE_LIBECORE_EVAS),y) -LIBECORE_CONF_OPTS += --enable-ecore-evas -LIBECORE_DEPENDENCIES += libevas -else -LIBECORE_CONF_OPTS += --disable-ecore-evas -endif - -$(eval $(autotools-package)) -$(eval $(host-autotools-package)) diff --git a/package/efl/libedbus/Config.in b/package/efl/libedbus/Config.in deleted file mode 100644 index 7e862d3e58b..00000000000 --- a/package/efl/libedbus/Config.in +++ /dev/null @@ -1,44 +0,0 @@ -config BR2_PACKAGE_LIBEDBUS - bool "libedbus" - select BR2_PACKAGE_LIBEINA - select BR2_PACKAGE_LIBECORE - select BR2_PACKAGE_DBUS - depends on BR2_TOOLCHAIN_HAS_THREADS # dbus - depends on BR2_USE_MMU # dbus - help - E_Dbus is a set of wrappers around D-Bus APIs so they can be - easily used by EFL applications, automatically providing - Ecore/main loop integration, as well as Eina data types. - - http://trac.enlightenment.org/e/wiki/E_Dbus - -if BR2_PACKAGE_LIBEDBUS - -config BR2_PACKAGE_LIBEDBUS_BLUEZ - bool "bluez support" - depends on !BR2_STATIC_LIBS # bluez_utils - depends on BR2_USE_WCHAR # bluez_utils -> glib2 - depends on BR2_TOOLCHAIN_HAS_THREADS # bluez_utils -> glib2 - select BR2_PACKAGE_BLUEZ_UTILS - help - Bluetooth support. - -comment "bluez support needs a toolchain w/ wchar, threads, dynamic library" - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS - -config BR2_PACKAGE_LIBEDBUS_CONNMAN - bool "connman support" - depends on BR2_PACKAGE_CONNMAN - help - Connection manager support. - -config BR2_PACKAGE_LIBEDBUS_NOTIFY - bool "notify support" - help - Notify support. - -endif - -comment "libedbus needs a toolchain w/ threads" - depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/efl/libedbus/libedbus.mk b/package/efl/libedbus/libedbus.mk deleted file mode 100644 index 18f047aa741..00000000000 --- a/package/efl/libedbus/libedbus.mk +++ /dev/null @@ -1,37 +0,0 @@ -################################################################################ -# -# libedbus -# -################################################################################ - -LIBEDBUS_VERSION = $(EFL_VERSION) -LIBEDBUS_SOURCE = e_dbus-$(LIBEDBUS_VERSION).tar.bz2 -LIBEDBUS_SITE = http://download.enlightenment.org/releases -LIBEDBUS_LICENSE = BSD-2c -LIBEDBUS_LICENSE_FILES = COPYING - -LIBEDBUS_INSTALL_STAGING = YES - -LIBEDBUS_DEPENDENCIES = host-pkgconf dbus libeina libecore - -ifeq ($(BR2_PACKAGE_LIBEDBUS_BLUEZ),y) -LIBEDBUS_CONF_OPTS += --enable-ebluez -LIBEDBUS_DEPENDENCIES += bluez_utils -else -LIBEDBUS_CONF_OPTS += --disable-ebluez -endif - -ifeq ($(BR2_PACKAGE_LIBEDBUS_CONNMAN),y) -LIBEDBUS_CONF_OPTS += --enable-econnman0_7x -LIBEDBUS_DEPENDENCIES += connman -else -LIBEDBUS_CONF_OPTS += --disable-econnman0_7x -endif - -ifeq ($(BR2_PACKAGE_LIBEDBUS_NOTIFY),y) -LIBEDBUS_CONF_OPTS += --enable-enotify --disable-edbus-notify-test -else -LIBEDBUS_CONF_OPTS += --disable-enotify -endif - -$(eval $(autotools-package)) diff --git a/package/efl/libedje/Config.in b/package/efl/libedje/Config.in deleted file mode 100644 index b1635082ab9..00000000000 --- a/package/efl/libedje/Config.in +++ /dev/null @@ -1,28 +0,0 @@ -comment "libedje needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS - -config BR2_PACKAGE_LIBEDJE - bool "libedje" - select BR2_PACKAGE_LIBEINA - select BR2_PACKAGE_LIBEET - select BR2_PACKAGE_LIBECORE - select BR2_PACKAGE_LIBECORE_EVAS - select BR2_PACKAGE_LIBEMBRYO - select BR2_PACKAGE_LIBEVAS - select BR2_PACKAGE_LUA - depends on BR2_TOOLCHAIN_HAS_THREADS # libevas - help - A graphical layout and animation library for animated - resizable, compressed and scalable themes. - - http://trac.enlightenment.org/e/wiki/Edje - -if BR2_PACKAGE_LIBEDJE - -config BR2_PACKAGE_LIBEDJE_CC - bool "build edje_cc" - help - Build and install the Edje compiler for the target. Normally this - is not required. - -endif diff --git a/package/efl/libedje/libedje.mk b/package/efl/libedje/libedje.mk deleted file mode 100644 index c067a049ee4..00000000000 --- a/package/efl/libedje/libedje.mk +++ /dev/null @@ -1,28 +0,0 @@ -################################################################################ -# -# libedje -# -################################################################################ - -LIBEDJE_VERSION = $(EFL_VERSION) -LIBEDJE_SOURCE = edje-$(LIBEDJE_VERSION).tar.bz2 -LIBEDJE_SITE = http://download.enlightenment.org/releases -LIBEDJE_LICENSE = GPLv2+ (epp binary), BSD-2c (everything else) -LIBEDJE_LICENSE_FILES = COPYING - -LIBEDJE_INSTALL_STAGING = YES - -LIBEDJE_DEPENDENCIES = \ - host-pkgconf lua libeina libeet libecore libevas \ - libembryo - -ifeq ($(BR2_PACKAGE_LIBEDJE_CC),y) -LIBEDJE_CONF_OPTS += --enable-edje-cc -else -LIBEDJE_CONF_OPTS += --disable-edje-cc -endif - -HOST_LIBEDJE_CONF_OPTS = --enable-edje-cc - -$(eval $(autotools-package)) -$(eval $(host-autotools-package)) diff --git a/package/efl/libeet/Config.in b/package/efl/libeet/Config.in deleted file mode 100644 index 48631a055ea..00000000000 --- a/package/efl/libeet/Config.in +++ /dev/null @@ -1,11 +0,0 @@ -config BR2_PACKAGE_LIBEET - bool "libeet" - select BR2_PACKAGE_ZLIB - select BR2_PACKAGE_JPEG - select BR2_PACKAGE_LIBEINA - help - Eet is a tiny library designed to write an arbitary set of - chunks of data to a file and optionally compress each chunk - (very much like a zip file). - - http://trac.enlightenment.org/e/wiki/Eet diff --git a/package/efl/libeet/libeet.mk b/package/efl/libeet/libeet.mk deleted file mode 100644 index 59582dc9636..00000000000 --- a/package/efl/libeet/libeet.mk +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# -# libeet -# -################################################################################ - -LIBEET_VERSION = $(EFL_VERSION) -LIBEET_SOURCE = eet-$(LIBEET_VERSION).tar.bz2 -LIBEET_SITE = http://download.enlightenment.org/releases -LIBEET_LICENSE = BSD-2c -LIBEET_LICENSE_FILES = COPYING - -LIBEET_INSTALL_STAGING = YES - -LIBEET_DEPENDENCIES = host-pkgconf zlib jpeg libeina -HOST_LIBEET_DEPENDENCIES = host-pkgconf host-zlib host-libjpeg host-libeina - -ifeq ($(BR2_PACKAGE_GNUTLS)$(BR2_PACKAGE_LIBGCRYPT),yy) -LIBEET_DEPENDENCIES += gnutls libgcrypt -LIBEET_CONF_ENV += LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config -LIBEET_CONF_OPTS += --enable-gnutls -else -LIBEET_CONF_OPTS += --disable-gnutls -endif - -$(eval $(autotools-package)) -$(eval $(host-autotools-package)) diff --git a/package/efl/libefreet/Config.in b/package/efl/libefreet/Config.in deleted file mode 100644 index 8687db46725..00000000000 --- a/package/efl/libefreet/Config.in +++ /dev/null @@ -1,10 +0,0 @@ -config BR2_PACKAGE_LIBEFREET - bool "libefreet" - select BR2_PACKAGE_LIBEINA - select BR2_PACKAGE_LIBEET - select BR2_PACKAGE_LIBECORE - help - Efreet is a library designed to help apps work with several of the - Freedesktop.org standards regarding Icons, Desktop files and Menus. - - http://trac.enlightenment.org/e/wiki/Efreet diff --git a/package/efl/libefreet/libefreet.mk b/package/efl/libefreet/libefreet.mk deleted file mode 100644 index 670bbb5467e..00000000000 --- a/package/efl/libefreet/libefreet.mk +++ /dev/null @@ -1,17 +0,0 @@ -################################################################################ -# -# libefreet -# -################################################################################ - -LIBEFREET_VERSION = $(EFL_VERSION) -LIBEFREET_SOURCE = efreet-$(LIBEFREET_VERSION).tar.bz2 -LIBEFREET_SITE = http://download.enlightenment.org/releases -LIBEFREET_LICENSE = BSD-2c -LIBEFREET_LICENSE_FILES = COPYING - -LIBEFREET_INSTALL_STAGING = YES - -LIBEFREET_DEPENDENCIES = libeina libeet libecore - -$(eval $(autotools-package)) diff --git a/package/efl/libeina/Config.in b/package/efl/libeina/Config.in deleted file mode 100644 index 80600ad3406..00000000000 --- a/package/efl/libeina/Config.in +++ /dev/null @@ -1,6 +0,0 @@ -config BR2_PACKAGE_LIBEINA - bool "libeina" - help - Eina is a tiny library to handle data types (list, hash, etc.) - - http://trac.enlightenment.org/e/wiki/Eina diff --git a/package/efl/libeina/libeina.mk b/package/efl/libeina/libeina.mk deleted file mode 100644 index 5b288ddbccd..00000000000 --- a/package/efl/libeina/libeina.mk +++ /dev/null @@ -1,18 +0,0 @@ -################################################################################ -# -# libeina -# -################################################################################ - -LIBEINA_VERSION = $(EFL_VERSION) -LIBEINA_SOURCE = eina-$(LIBEINA_VERSION).tar.bz2 -LIBEINA_SITE = http://download.enlightenment.org/releases -LIBEINA_LICENSE = LGPLv2.1+ -LIBEINA_LICENSE_FILES = COPYING - -LIBEINA_INSTALL_STAGING = YES - -LIBEINA_DEPENDENCIES = host-pkgconf - -$(eval $(autotools-package)) -$(eval $(host-autotools-package)) diff --git a/package/efl/libeio/Config.in b/package/efl/libeio/Config.in deleted file mode 100644 index 5b1e395788e..00000000000 --- a/package/efl/libeio/Config.in +++ /dev/null @@ -1,22 +0,0 @@ -config BR2_PACKAGE_LIBEIO - bool "libeio" - select BR2_PACKAGE_LIBEET - select BR2_PACKAGE_LIBEINA - select BR2_PACKAGE_LIBECORE - depends on BR2_TOOLCHAIN_HAS_THREADS - help - Eio integrates with EFL (Ecore, Eina) to provide efficient - filesystem Input/Output (I/O). It use the best techniques to - achieve such purpose, like using at-variants, splice, - properly handling errors and doing it in an asynchronous - fashion by means of worker threads. It is also ported to - Windows, so multi-platform. - - Whenever you need to list a directory, copy, move or delete - files, Eio will do that task better than you'd achieve with - naive implementations, and it is easy to use. - - http://trac.enlightenment.org/e/wiki/Eio - -comment "libeio needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/efl/libeio/libeio.mk b/package/efl/libeio/libeio.mk deleted file mode 100644 index 6109f943ac4..00000000000 --- a/package/efl/libeio/libeio.mk +++ /dev/null @@ -1,16 +0,0 @@ -################################################################################ -# -# libeio -# -################################################################################ - -LIBEIO_VERSION = $(EFL_VERSION) -LIBEIO_SOURCE = eio-$(LIBEIO_VERSION).tar.bz2 -LIBEIO_SITE = http://download.enlightenment.org/releases -LIBEIO_LICENSE = LGPLv2.1 -LIBEIO_LICENSE_FILES = COPYING - -LIBEIO_INSTALL_STAGING = YES -LIBEIO_DEPENDENCIES = libeina libeet libecore - -$(eval $(autotools-package)) diff --git a/package/efl/libelementary/Config.in b/package/efl/libelementary/Config.in deleted file mode 100644 index 4f62592cc90..00000000000 --- a/package/efl/libelementary/Config.in +++ /dev/null @@ -1,17 +0,0 @@ -comment "libelementary needs a toolchain w/ threads, dynamic library" - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS - -config BR2_PACKAGE_LIBELEMENTARY - bool "libelementary" - select BR2_PACKAGE_LIBEINA - select BR2_PACKAGE_LIBEVAS - select BR2_PACKAGE_LIBECORE - select BR2_PACKAGE_LIBEDJE - depends on BR2_TOOLCHAIN_HAS_THREADS # libevas - depends on !BR2_STATIC_LIBS - help - Elementary is a widget toolkit and EFL wrapper and convenience - library to make it easy to build applications and tools with UIs - with less code. - - http://trac.enlightenment.org/e/wiki/Elementary diff --git a/package/efl/libelementary/libelementary.mk b/package/efl/libelementary/libelementary.mk deleted file mode 100644 index 474e67f48c8..00000000000 --- a/package/efl/libelementary/libelementary.mk +++ /dev/null @@ -1,32 +0,0 @@ -################################################################################ -# -# libelementary -# -################################################################################ - -LIBELEMENTARY_VERSION = $(EFL_VERSION) -LIBELEMENTARY_SOURCE = elementary-$(LIBELEMENTARY_VERSION).tar.bz2 -LIBELEMENTARY_SITE = http://download.enlightenment.org/releases -LIBELEMENTARY_LICENSE = LGPLv2.1 -LIBELEMENTARY_LICENSE_FILES = COPYING - -LIBELEMENTARY_INSTALL_STAGING = YES - -LIBELEMENTARY_DEPENDENCIES = \ - libeina libevas libecore libedje host-libedje \ - host-libeet - -LIBELEMENTARY_CONF_OPTS = \ - --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \ - --with-eet-eet=$(HOST_DIR)/usr/bin/eet - -# libethumb_client is only built when ethumbd is built. -# ethumbd is only built if edbus is built. -ifeq ($(BR2_PACKAGE_LIBETHUMB)$(BR2_PACKAGE_LIBEDBUS),yy) -LIBELEMENTARY_DEPENDENCIES += libethumb -LIBELEMENTARY_CONF_OPTS += --enable-ethumb -else -LIBELEMENTARY_CONF_OPTS += --disable-ethumb -endif - -$(eval $(autotools-package)) diff --git a/package/efl/libembryo/Config.in b/package/efl/libembryo/Config.in deleted file mode 100644 index 63c706415b0..00000000000 --- a/package/efl/libembryo/Config.in +++ /dev/null @@ -1,9 +0,0 @@ -config BR2_PACKAGE_LIBEMBRYO - bool "libembryo" - select BR2_PACKAGE_LIBEINA - help - Embryo is primarily a shared library that gives you an API - to load and control interpreted programs compiled into an - abstract machine bytecode that it understands. - - http://trac.enlightenment.org/e/wiki/Embryo diff --git a/package/efl/libembryo/libembryo.mk b/package/efl/libembryo/libembryo.mk deleted file mode 100644 index ebbf0b25cd2..00000000000 --- a/package/efl/libembryo/libembryo.mk +++ /dev/null @@ -1,18 +0,0 @@ -################################################################################ -# -# libembryo -# -################################################################################ - -LIBEMBRYO_VERSION = $(EFL_VERSION) -LIBEMBRYO_SOURCE = embryo-$(LIBEMBRYO_VERSION).tar.bz2 -LIBEMBRYO_SITE = http://download.enlightenment.org/releases -LIBEMBRYO_LICENSE = BSD-2c, Embryo license -LIBEMBRYO_LICENSE_FILES = COPYING - -LIBEMBRYO_INSTALL_STAGING = YES - -LIBEMBRYO_DEPENDENCIES = host-pkgconf libeina - -$(eval $(autotools-package)) -$(eval $(host-autotools-package)) diff --git a/package/efl/libethumb/Config.in b/package/efl/libethumb/Config.in deleted file mode 100644 index 3e9cbdedf72..00000000000 --- a/package/efl/libethumb/Config.in +++ /dev/null @@ -1,15 +0,0 @@ -comment "libethumb needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS - -config BR2_PACKAGE_LIBETHUMB - bool "libethumb" - select BR2_PACKAGE_LIBEINA - select BR2_PACKAGE_LIBEVAS - select BR2_PACKAGE_LIBECORE - select BR2_PACKAGE_LIBECORE_EVAS - select BR2_PACKAGE_LIBEDJE - depends on BR2_TOOLCHAIN_HAS_THREADS # libevas - help - Ethumb is a library for generating thumbnail images of documents. - - http://trac.enlightenment.org/e/wiki/Ethumb diff --git a/package/efl/libethumb/libethumb.mk b/package/efl/libethumb/libethumb.mk deleted file mode 100644 index b1719d80e15..00000000000 --- a/package/efl/libethumb/libethumb.mk +++ /dev/null @@ -1,27 +0,0 @@ -################################################################################ -# -# libethumb -# -################################################################################ - -LIBETHUMB_VERSION = $(EFL_VERSION) -LIBETHUMB_SOURCE = ethumb-$(LIBETHUMB_VERSION).tar.bz2 -LIBETHUMB_SITE = http://download.enlightenment.org/releases -LIBETHUMB_LICENSE = LGPLv2.1+ -LIBETHUMB_LICENSE_FILES = COPYING - -LIBETHUMB_INSTALL_STAGING = YES - -LIBETHUMB_DEPENDENCIES = libeina libevas libecore libedje host-libedje - -LIBETHUMB_CONF_OPTS = --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc - -ifeq ($(BR2_PACKAGE_LIBEXIF),y) -LIBETHUMB_DEPENDENCIES += libexif -endif - -ifeq ($(BR2_PACKAGE_LIBEDBUS),y) -LIBETHUMB_DEPENDENCIES += libedbus -endif - -$(eval $(autotools-package)) diff --git a/package/efl/libevas/0001-giflib.patch b/package/efl/libevas/0001-giflib.patch deleted file mode 100644 index 93426879f34..00000000000 --- a/package/efl/libevas/0001-giflib.patch +++ /dev/null @@ -1,98 +0,0 @@ -Adjust source code to work with giflib 5.1x - -From http://giflib.sourceforge.net/gif_lib.html: GIF file openers and -closers - DGifOpenFileName(), DGifOpenFileHandle(), DGifOpen(), -DGifClose(), EGifOpenFileName(), EGifOpenFileHandle(), EGifOpen(), and -EGifClose() - all now take a final integer address argument. If -non-null, this is used to pass back an error code when the function -returns NULL. - -Downloaded from -http://commit.cvs.pld.groups.com.ru/332837-packagesevas_fix_building_with_giflib_51_rel_6 - -Signed-off-by: Bernd Kuhls - -diff -uNr evas-1.7.10.org/src/modules/loaders/gif/evas_image_load_gif.c evas-1.7.10/src/modules/loaders/gif/evas_image_load_gif.c ---- evas-1.7.10.org/src/modules/loaders/gif/evas_image_load_gif.c 2013-08-01 17:41:35.000000000 +0200 -+++ evas-1.7.10/src/modules/loaders/gif/evas_image_load_gif.c 2015-01-26 19:44:20.132955194 +0100 -@@ -338,7 +338,7 @@ - - if (!cmap) - { -- DGifCloseFile(gif); -+ DGifCloseFile(gif, NULL); - for (i = 0; i < scale_h; i++) - { - free(rows[i]); -@@ -725,7 +725,7 @@ - if ((w < 1) || (h < 1) || (w > IMG_MAX_SIZE) || (h > IMG_MAX_SIZE) || - IMG_TOO_BIG(w, h)) - { -- DGifCloseFile(gif); -+ DGifCloseFile(gif, NULL); - if (IMG_TOO_BIG(w, h)) - *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; - else -@@ -740,7 +740,7 @@ - if (DGifGetRecordType(gif, &rec) == GIF_ERROR) - { - /* PrintGifError(); */ -- DGifCloseFile(gif); -+ DGifCloseFile(gif, NULL); - *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; - return EINA_FALSE; - } -@@ -754,7 +754,7 @@ - if (DGifGetImageDesc(gif) == GIF_ERROR) - { - /* PrintGifError(); */ -- DGifCloseFile(gif); -+ DGifCloseFile(gif, NULL); - *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; - return EINA_FALSE; - } -@@ -762,7 +762,7 @@ - if (DGifGetCode(gif, &img_code, &img) == GIF_ERROR) - { - /* PrintGifError(); */ -- DGifCloseFile(gif); -+ DGifCloseFile(gif, NULL); - *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; - return EINA_FALSE; - } -@@ -818,7 +818,7 @@ - ie->frames = NULL; - } - -- DGifCloseFile(gif); -+ DGifCloseFile(gif, NULL); - *error = EVAS_LOAD_ERROR_NONE; - return EINA_TRUE; - } -@@ -885,7 +885,7 @@ - } - - ie->frames = eina_list_append(ie->frames, frame); -- DGifCloseFile(gif); -+ DGifCloseFile(gif, NULL); - return EINA_TRUE; - } - -@@ -959,7 +959,7 @@ - *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; - return EINA_FALSE; - } -- DGifCloseFile(gif); -+ DGifCloseFile(gif, NULL); - *error = EVAS_LOAD_ERROR_NONE; - return EINA_TRUE; - } -@@ -1080,7 +1080,7 @@ - } - } while (rec != TERMINATE_RECORD_TYPE); - -- DGifCloseFile(gif); -+ DGifCloseFile(gif, NULL); - return duration; - } - diff --git a/package/efl/libevas/Config.in b/package/efl/libevas/Config.in deleted file mode 100644 index 6645a14944b..00000000000 --- a/package/efl/libevas/Config.in +++ /dev/null @@ -1,211 +0,0 @@ -comment "libevas needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS - -config BR2_PACKAGE_LIBEVAS - bool "libevas" - # libevas should normally build without threads, but due to a - # build issue when the async preloader is disabled, which is - # needed when no threads are available, we don't allow evas to - # be built without threads. This should be revisited when efl - # is bumped to 1.8. - depends on BR2_TOOLCHAIN_HAS_THREADS - select BR2_PACKAGE_FREETYPE - select BR2_PACKAGE_LIBEINA - # required to build so far - select BR2_PACKAGE_LIBEVAS_SCALE_SMOOTH - help - Evas is a clean display canvas API for several target - display systems that can draw anti-aliased text, smooth - super and sub-sampled scaled images, alpha-blend objects - much and more. - - http://trac.enlightenment.org/e/wiki/Evas - -if BR2_PACKAGE_LIBEVAS - -comment "libevas rendering options" - -config BR2_PACKAGE_LIBEVAS_SCALE_SAMPLE - bool "libevas sampling scaler" - help - This enables the sampling scaler code. This is the fastest - image scaling code, but also the lowest quality. - -config BR2_PACKAGE_LIBEVAS_SCALE_SMOOTH - bool "libevas smooth scaler" - help - This is the nicest looking scaler that is not that much - slower than tri-linear, but it looks really good. - -config BR2_PACKAGE_LIBEVAS_SMALL_DITHERING - bool "libevas small dithering" - help - This uses a 4x4 dither mask instead of 128x128. On desktop - boxes these days (Pentium, Pentium2, amd etc.) the speed - difference is not really measurable, but the quality of the - 128x128 dither mask is quite a lot better. - -config BR2_PACKAGE_LIBEVAS_LINE_DITHERING - bool "libevas line dithering" - -config BR2_PACKAGE_LIBEVAS_NO_DITHERING - bool "libevas no dithering" - - -comment "libevas backends" - -config BR2_PACKAGE_LIBEVAS_BUFFER - bool "libevas buffer backend" - help - This enables the software buffer rendering engine. There is - no hardware assist here. - -config BR2_PACKAGE_LIBEVAS_DIRECTFB - bool "libevas DirectFB backend" - depends on BR2_PACKAGE_DIRECTFB - default y - help - This is the DirectFB engine that uses the DirectFB library - (http://www.directfb.org) on Linux to access the framebuffer - with (or maybe without) acceleration. - -config BR2_PACKAGE_LIBEVAS_FB - bool "libevas frame buffer backend" - help - This is the software framebuffer driving engine. this uses - the linux framebuffer device (/dev/fb) and will currently - just inherit the current framebuffer settings on the fb - device and use them to run in. - -config BR2_PACKAGE_LIBEVAS_SDL - bool "libevas SDL backend" - select BR2_PACKAGE_SDL - help - This is the software SDL engine that uses SDL library - (http://www.libsdl.org). This library should work on many - operating systems. - -config BR2_PACKAGE_LIBEVAS_SDL_GL - bool "libevas SDL OpenGL backend" - depends on BR2_PACKAGE_SDL_X11 - depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR # mesa needs big X - help - This is the SDL OpenGL engine that uses SDL library - and OpenGL to render. This may be hardware accelerated. - -comment "SDL OpenGL backend needs modular X.org and X11 support in SDL" - depends on !(BR2_PACKAGE_SDL_X11 && BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR) - -config BR2_PACKAGE_LIBEVAS_X11 - bool "libevas X11 backend" - depends on BR2_PACKAGE_XORG7 - select BR2_PACKAGE_XLIB_LIBX11 - select BR2_PACKAGE_XLIB_LIBXEXT - help - This enables the software X11 rendering engine that renders - to X drawable targets using highly optimised software - routines. There is no hardware assist here. - -config BR2_PACKAGE_LIBEVAS_X11_GLX - bool "libevas X11 GLX backend" - depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR # mesa needs big X - select BR2_PACKAGE_XLIB_LIBX11 - select BR2_PACKAGE_XLIB_LIBXRENDER - select BR2_PACKAGE_XLIB_LIBXEXT - select BR2_PACKAGE_XPROTO_GLPROTO - help - This enables the OpenGL X11 rendering engine that renders - using GLX which may be hardware accelerated. - -config BR2_PACKAGE_LIBEVAS_XCB - bool "libevas XCB backend" - depends on BR2_PACKAGE_XORG7 - select BR2_PACKAGE_LIBXCB - select BR2_PACKAGE_XCB_UTIL - select BR2_PACKAGE_XCB_PROTO - select BR2_PACKAGE_PIXMAN - help - This enable the software XCB rendering engine. It allows the - same features than the software X11 engine. - -config BR2_PACKAGE_LIBEVAS_XCB_GLX - bool "libevas XCB GLX backend" - depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR # mesa needs big X - select BR2_PACKAGE_LIBXCB - select BR2_PACKAGE_XCB_UTIL - select BR2_PACKAGE_XCB_PROTO - select BR2_PACKAGE_XPROTO_GLPROTO - help - This enables the OpenGL X11 XCB rendering engine that renders - using GLX which may be hardware accelerated. - -choice - prompt "libevas OpenGL flavor" - depends on BR2_PACKAGE_LIBEVAS_SDL_GL || BR2_PACKAGE_LIBEVAS_X11_GLX || BR2_PACKAGE_LIBEVAS_XCB_GLX - default BR2_PACKAGE_LIBEVAS_GL - -config BR2_PACKAGE_LIBEVAS_GL - bool "generic OpenGL" - depends on BR2_PACKAGE_HAS_LIBGL - select BR2_PACKAGE_LIBEET - -config BR2_PACKAGE_LIBEVAS_GLES_SGX - bool "OpenGL-ES SGX" - -config BR2_PACKAGE_LIBEVAS_GLES_S3C6410 - bool "OpenGL-ES S3C6410" -endchoice - - -comment "libevas loaders" - -config BR2_PACKAGE_LIBEVAS_PNG - bool "libevas png loader" - select BR2_PACKAGE_LIBPNG - help - This enables the loader code that loads png files using - libpng. - -config BR2_PACKAGE_LIBEVAS_JPEG - bool "libevas jpeg loader" - select BR2_PACKAGE_JPEG - help - This enables the loader code that loads jpeg files using - libjpeg. - -config BR2_PACKAGE_LIBEVAS_GIF - bool "libevas gif loader" - select BR2_PACKAGE_GIFLIB - help - This enables the loader code that loads gif files using - libungif. - -config BR2_PACKAGE_LIBEVAS_PMAPS - bool "libevas pmaps loader" - help - This enables the loader code that loads pmaps files. - -config BR2_PACKAGE_LIBEVAS_TIFF - bool "libevas tiff loader" - select BR2_PACKAGE_TIFF - help - This enables the loader code that loads tiff files. - -config BR2_PACKAGE_LIBEVAS_XPM - bool "libevas xpm loader" - help - This enables the loader code that loads xpm files. - -config BR2_PACKAGE_LIBEVAS_EET - bool "libevas eet image loader" - select BR2_PACKAGE_LIBEET - help - This enables the loader code that loads images using libeet. - -config BR2_PACKAGE_LIBEVAS_EET_FONT - bool "libevas eet font loader" - select BR2_PACKAGE_LIBEET - help - This enables the loader code that loads fonts using libeet. - -endif # BR2_PACKAGE_LIBEVAS diff --git a/package/efl/libevas/libevas.mk b/package/efl/libevas/libevas.mk deleted file mode 100644 index 8113162c4e9..00000000000 --- a/package/efl/libevas/libevas.mk +++ /dev/null @@ -1,247 +0,0 @@ -################################################################################ -# -# libevas -# -################################################################################ - -LIBEVAS_VERSION = $(EFL_VERSION) -LIBEVAS_SOURCE = evas-$(LIBEVAS_VERSION).tar.bz2 -LIBEVAS_SITE = http://download.enlightenment.org/releases -LIBEVAS_LICENSE = BSD-2c -LIBEVAS_LICENSE_FILES = COPYING - -LIBEVAS_INSTALL_STAGING = YES - -LIBEVAS_DEPENDENCIES = host-pkgconf zlib libeina freetype - -HOST_LIBEVAS_DEPENDENCIES = \ - host-pkgconf host-zlib host-libeina \ - host-freetype host-libpng host-libjpeg -HOST_LIBEVAS_CONF_OPTS += \ - --enable-image-loader-png \ - --enable-image-loader-jpeg \ - --disable-image-loader-gif \ - --disable-image-loader-tiff \ - --disable-image-loader-eet \ - --disable-font-loader-eet \ - --disable-cpu-sse3 \ - --disable-software-sdl \ - --disable-gl-sdl \ - --disable-software-xlib \ - --disable-gl-xlib \ - --enable-software-xcb \ - --disable-gl-xcb - -# rendering options -ifeq ($(BR2_PACKAGE_LIBEVAS_SCALE_SAMPLE),y) -LIBEVAS_CONF_OPTS += --enable-scale-sample -else -LIBEVAS_CONF_OPTS += --disable-scale-sample -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_SCALE_SMOOTH),y) -LIBEVAS_CONF_OPTS += --enable-scale-smooth -else -LIBEVAS_CONF_OPTS += --disable-scale-smooth -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_SMALL_DITHERING),y) -LIBEVAS_CONF_OPTS += --enable-small-dither-mask -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_LINE_DITHERING),y) -LIBEVAS_CONF_OPTS += --enable-line-dither-mask -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_NO_DITHERING),y) -LIBEVAS_CONF_OPTS += --enable-no-dither-mask -endif - -# backends -ifeq ($(BR2_PACKAGE_LIBEVAS_BUFFER),y) -LIBEVAS_CONF_OPTS += --enable-buffer -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_X11),y) -LIBEVAS_CONF_OPTS += --enable-software-xlib \ - --with-x=$(STAGING_DIR) \ - --x-includes=$(STAGING_DIR)/usr/include \ - --x-libraries=$(STAGING_DIR)/usr/lib -LIBEVAS_DEPENDENCIES += xlib_libX11 xlib_libXext -else -LIBEVAS_CONF_OPTS += --disable-software-xlib -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_X11_GLX),y) -LIBEVAS_CONF_OPTS += --enable-gl-xlib -LIBEVAS_DEPENDENCIES += \ - xproto_glproto xlib_libX11 xlib_libXrender \ - xlib_libXext libeet -else -LIBEVAS_CONF_OPTS += --disable-gl-xlib -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_XCB),y) -LIBEVAS_CONF_OPTS += --enable-software-xcb -LIBEVAS_DEPENDENCIES += libxcb xcb-proto xcb-util pixman -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_XCB_GLX),y) -LIBEVAS_CONF_OPTS += --enable-gl-xcb -LIBEVAS_DEPENDENCIES += libxcb xcb-proto xcb-util xproto_glproto -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_FB),y) -LIBEVAS_CONF_OPTS += --enable-fb -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_DIRECTFB),y) -LIBEVAS_CONF_OPTS += --enable-directfb -LIBEVAS_DEPENDENCIES += directfb -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_SDL),y) -LIBEVAS_CONF_OPTS += --enable-software-sdl -LIBEVAS_DEPENDENCIES += sdl -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_SDL_GL),y) -LIBEVAS_CONF_OPTS += --enable-gl-sdl -LIBEVAS_DEPENDENCIES += sdl -# configure script forgets to check for eet / fill this out -LIBEVAS_CONF_ENV += \ - GL_EET_CFLAGS='-I$(STAGING_DIR)/usr/include/eet-1' \ - GL_EET_LIBS='-leet' -endif - -# libevas OpenGL flavor -ifeq ($(BR2_PACKAGE_LIBEVAS_GL),y) -LIBEVAS_DEPENDENCIES += mesa3d libeet -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_GLES_SGX),y) -LIBEVAS_CONF_OPTS += --enable-gl-flavor-gles --enable-gles-variety-sgx -else -LIBEVAS_CONF_OPTS += --disable-gles-variety-sgx -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_GLES_S3C6410),y) -LIBEVAS_CONF_OPTS += --enable-gl-flavor-gles --enable-gles-variety-s3c6410 -else -LIBEVAS_CONF_OPTS += --disable-gles-variety-s3c6410 -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_GLES_SGX)$(BR2_PACKAGE_LIBEVAS_GLES_S3C6410),) -LIBEVAS_CONF_OPTS += --disable-gl-flavor-gles -endif - -# code options -ifeq ($(BR2_X86_CPU_HAS_MMX),y) -LIBEVAS_CONF_OPTS += --enable-cpu-mmx -else -LIBEVAS_CONF_OPTS += --disable-cpu-mmx -endif - -ifeq ($(BR2_X86_CPU_HAS_SSE),y) -LIBEVAS_CONF_OPTS += --enable-cpu-sse -else -LIBEVAS_CONF_OPTS += --disable-cpu-sse -endif - -ifeq ($(BR2_X86_CPU_HAS_SSE3),y) -LIBEVAS_CONF_OPTS += --enable-cpu-sse3 -else -LIBEVAS_CONF_OPTS += --disable-cpu-sse3 -endif - -ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y) -LIBEVAS_CONF_OPTS += --enable-cpu-altivec -else -LIBEVAS_CONF_OPTS += --disable-cpu-altivec -endif - -ifeq ($(BR2_ARM_CPU_HAS_NEON),y) -LIBEVAS_CONF_OPTS += --enable-cpu-neon -else -LIBEVAS_CONF_OPTS += --disable-cpu-neon -endif - -# loaders -ifeq ($(BR2_PACKAGE_LIBEVAS_PNG),y) -LIBEVAS_CONF_OPTS += --enable-image-loader-png -LIBEVAS_DEPENDENCIES += libpng -else -LIBEVAS_CONF_OPTS += --disable-image-loader-png -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_JPEG),y) -LIBEVAS_CONF_OPTS += --enable-image-loader-jpeg -LIBEVAS_DEPENDENCIES += jpeg -else -LIBEVAS_CONF_OPTS += --disable-image-loader-jpeg -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_GIF),y) -LIBEVAS_CONF_OPTS += --enable-image-loader-gif -LIBEVAS_DEPENDENCIES += giflib -else -LIBEVAS_CONF_OPTS += --disable-image-loader-gif -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_PMAPS),y) -LIBEVAS_CONF_OPTS += --enable-image-loader-pmaps -else -LIBEVAS_CONF_OPTS += --disable-image-loader-pmaps -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_TIFF),y) -LIBEVAS_CONF_OPTS += --enable-image-loader-tiff -LIBEVAS_DEPENDENCIES += tiff -else -LIBEVAS_CONF_OPTS += --disable-image-loader-tiff -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_XPM),y) -LIBEVAS_CONF_OPTS += --enable-image-loader-xpm -else -LIBEVAS_CONF_OPTS += --disable-image-loader-xpm -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_EET),y) -LIBEVAS_CONF_OPTS += --enable-image-loader-eet -LIBEVAS_DEPENDENCIES += libeet -else -LIBEVAS_CONF_OPTS += --disable-image-loader-eet -endif - -ifeq ($(BR2_PACKAGE_LIBEVAS_EET_FONT),y) -LIBEVAS_CONF_OPTS += --enable-font-loader-eet -LIBEVAS_DEPENDENCIES += libeet -else -LIBEVAS_CONF_OPTS += --disable-font-loader-eet -endif - -ifeq ($(BR2_PACKAGE_FONTCONFIG),y) -LIBEVAS_CONF_OPTS += --enable-fontconfig -LIBEVAS_DEPENDENCIES += fontconfig -else -LIBEVAS_CONF_OPTS += --disable-fontconfig -endif - -ifeq ($(BR2_PACKAGE_LIBFRIBIDI),y) -LIBEVAS_CONF_OPTS += --enable-fribidi -LIBEVAS_DEPENDENCIES += libfribidi -else -LIBEVAS_CONF_OPTS += --disable-fribidi -endif - -# libevas installs the source code of examples on the target, which -# are generally not useful. -define LIBEVAS_REMOVE_EXAMPLES - rm -rf $(TARGET_DIR)/usr/share/evas/examples/ -endef - -LIBEVAS_POST_INSTALL_TARGET_HOOKS += LIBEVAS_REMOVE_EXAMPLES - -$(eval $(autotools-package)) -$(eval $(host-autotools-package)) diff --git a/package/eigen/eigen.mk b/package/eigen/eigen.mk index 1ac570786b4..730bb5ffd21 100644 --- a/package/eigen/eigen.mk +++ b/package/eigen/eigen.mk @@ -4,8 +4,7 @@ # ################################################################################ -# version 3.2 -EIGEN_VERSION = ffa86ffb5570 +EIGEN_VERSION = 3.2.5 EIGEN_SITE = https://bitbucket.org/eigen/eigen EIGEN_SITE_METHOD = hg EIGEN_LICENSE = MPL2, BSD-3c, LGPLv2.1 @@ -21,6 +20,13 @@ define EIGEN_INSTALL_UNSUPPORTED_MODULES_CMDS endef endif +# Generate the .pc file at build time +define EIGEN_BUILD_CMDS + sed -r -e 's,^Version: .*,Version: $(EIGEN_VERSION),' \ + -e 's,^Cflags: .*,Cflags: -I$(EIGEN_DEST_DIR),' \ + $(@D)/eigen3.pc.in >$(@D)/eigen3.pc +endef + # This package only consists of headers that need to be # copied over to the sysroot for compile time use define EIGEN_INSTALL_STAGING_CMDS @@ -28,6 +34,8 @@ define EIGEN_INSTALL_STAGING_CMDS mkdir -p $(EIGEN_DEST_DIR) cp -a $(@D)/Eigen $(EIGEN_DEST_DIR) $(EIGEN_INSTALL_UNSUPPORTED_MODULES_CMDS) + $(INSTALL) -D -m 0644 $(@D)/eigen3.pc \ + $(STAGING_DIR)/usr/lib/pkgconfig/eigen3.pc endef $(eval $(generic-package)) diff --git a/package/ejabberd/0001-remove-deps.patch b/package/ejabberd/0001-remove-deps.patch index ffe210659cf..c5700dd7e36 100644 --- a/package/ejabberd/0001-remove-deps.patch +++ b/package/ejabberd/0001-remove-deps.patch @@ -6,16 +6,16 @@ Author: Philipp Huebner Index: ejabberd/rebar.config.script =================================================================== diff --git a/rebar.config.script b/rebar.config.script -index b4dfaa3..9152c12 100644 +index 633433c..646a15a 100644 --- a/rebar.config.script +++ b/rebar.config.script -@@ -183,9 +183,7 @@ Config = [{erl_opts, Macros ++ HiPE ++ DebugInfo ++ +@@ -187,9 +187,7 @@ Config = [{erl_opts, Macros ++ HiPE ++ DebugInfo ++ {xref_checks, []}, {xref_queries, [{"(XC - UC) || (XU - X - B - " - ++ string:join(CfgXrefs, " - ") ++ ")", []}]}, - {post_hooks, PostHooks ++ CfgPostHooks}, -- {deps, Deps ++ CfgDeps}] ++ ElixirConfig, +- {deps, AllDeps}] ++ ElixirConfig, + ++ string:join(CfgXrefs, " - ") ++ ")", []}]}], %%io:format("ejabberd configuration:~n ~p~n", [Config]), Config. diff --git a/package/ejabberd/0002-disable-rebar-deps.patch b/package/ejabberd/0002-disable-rebar-deps.patch index 1ea40de3adc..e76b8a23210 100644 --- a/package/ejabberd/0002-disable-rebar-deps.patch +++ b/package/ejabberd/0002-disable-rebar-deps.patch @@ -6,10 +6,10 @@ Author: Philipp Huebner Index: ejabberd/Makefile.in =================================================================== diff --git a/Makefile.in b/Makefile.in -index ffd1d30..09cb8d7 100644 +index 8dd6bf5..b9d783a 100644 --- a/Makefile.in +++ b/Makefile.in -@@ -74,26 +74,11 @@ else +@@ -77,26 +77,11 @@ else INIT_USER=$(INSTALLUSER) endif @@ -38,37 +38,39 @@ index ffd1d30..09cb8d7 100644 xref: all $(REBAR) skip_deps=true xref -@@ -109,8 +94,6 @@ spec: - $(ERL) -noinput +B -pa ebin -pa deps/*/ebin -eval \ - 'case xml_gen:compile("tools/xmpp_codec.spec") of ok -> halt(0); _ -> halt(1) end.' +@@ -129,13 +114,10 @@ endef --DLLs := $(wildcard deps/*/priv/*.so) $(wildcard deps/*/priv/lib/*.so) + $(foreach file,$(DEPS_FILES_FILTERED) $(MAIN_FILES),$(eval $(call COPY_template,$(file)))) + +-$(call TO_DEST,$(MAIN_DIRS) $(DEPS_DIRS)): ++$(call TO_DEST,$(MAIN_DIRS)): + $(INSTALL) -d $@ + +-$(call TO_DEST,deps/p1_pam/priv/bin/epam): $(LIBDIR)/%: deps/% $(call TO_DEST,deps/p1_pam/priv/bin/) +- $(INSTALL) -m 750 $(O_USER) $< $@ - - install: all +-copy-files: $(call TO_DEST,$(DEPS_FILES) $(MAIN_FILES)) ++copy-files: $(call TO_DEST,$(MAIN_FILES)) + + install: all copy-files # - # Configuration files -@@ -151,8 +134,6 @@ install: all - $(INSTALL) -d $(BEAMDIR) - $(INSTALL) -m 644 ebin/*.app $(BEAMDIR) - $(INSTALL) -m 644 ebin/*.beam $(BEAMDIR) -- $(INSTALL) -m 644 deps/*/ebin/*.app $(BEAMDIR) -- $(INSTALL) -m 644 deps/*/ebin/*.beam $(BEAMDIR) - # Install Elixir and Elixir dependancies - -$(INSTALL) -m 644 deps/*/lib/*/ebin/*.app $(BEAMDIR) - -$(INSTALL) -m 644 deps/*/lib/*/ebin/*.beam $(BEAMDIR) -@@ -161,7 +142,6 @@ install: all - # ejabberd header files - $(INSTALL) -d $(INCLUDEDIR) - $(INSTALL) -m 644 include/*.hrl $(INCLUDEDIR) -- $(INSTALL) -m 644 deps/*/include/*.hrl $(INCLUDEDIR) +@@ -172,10 +154,6 @@ install: all copy-files + -e "s*@installuser@*$(INIT_USER)*" ejabberd.init.template \ + > ejabberd.init + chmod 755 ejabberd.init +- # Install Elixir and Elixir dependancies +- -$(INSTALL) -m 644 deps/*/lib/*/ebin/*.app $(BEAMDIR) +- -$(INSTALL) -m 644 deps/*/lib/*/ebin/*.beam $(BEAMDIR) +- rm -f $(BEAMDIR)/configure.beam # # Binary C programs $(INSTALL) -d $(PBINDIR) -@@ -173,7 +153,6 @@ install: all - # - # Binary system libraries - $(INSTALL) -d $(SODIR) -- $(INSTALL) -m 644 $(DLLs) $(SODIR) - -[ -f $(SODIR)/jiffy.so ] && (cd $(PRIVDIR); ln -s lib/jiffy.so; true) - -[ -f $(SODIR)/sqlite3_drv.so ] && (cd $(PRIVDIR); ln -s lib/sqlite3_drv.so; true) - # +@@ -266,8 +244,6 @@ TAGS: + + Makefile: Makefile.in + +-deps := $(wildcard deps/*/ebin) +- + dialyzer/erlang.plt: + @mkdir -p dialyzer + @dialyzer --build_plt --output_plt dialyzer/erlang.plt \ diff --git a/package/ejabberd/0007-fix-install-permissions.patch b/package/ejabberd/0007-fix-install-permissions.patch index 452025d15fc..2ad84532385 100644 --- a/package/ejabberd/0007-fix-install-permissions.patch +++ b/package/ejabberd/0007-fix-install-permissions.patch @@ -7,11 +7,11 @@ Author: Johan Oudinet Index: ejabberd/Makefile.in =================================================================== diff --git a/Makefile.in b/Makefile.in -index ffd1d30..a60c5b7 100644 +index b9d783a..6ec805a 100644 --- a/Makefile.in +++ b/Makefile.in -@@ -114,10 +114,8 @@ DLLs := $(wildcard deps/*/priv/*.so) $(wildcard deps/*/priv/lib/*.so) - install: all +@@ -122,10 +122,8 @@ copy-files: $(call TO_DEST,$(MAIN_FILES)) + install: all copy-files # # Configuration files - $(INSTALL) -d -m 750 $(G_USER) $(ETCDIR) @@ -19,19 +19,20 @@ index ffd1d30..a60c5b7 100644 - && $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml-new \ - || $(INSTALL) -b -m 640 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml + $(INSTALL) -d $(ETCDIR) -+ $(INSTALL) -b -m 644 $(G_USER) ejabberd.yml.example $(ETCDIR)/ejabberd.yml ++ $(INSTALL) -b -m 644 ejabberd.yml.example $(ETCDIR)/ejabberd.yml $(SED) -e "s*{{rootdir}}*@prefix@*" \ -e "s*{{installuser}}*@INSTALLUSER@*" \ -e "s*{{bindir}}*@bindir@*" \ -@@ -127,14 +125,11 @@ install: all +@@ -135,14 +133,11 @@ install: all copy-files -e "s*{{docdir}}*@docdir@*" \ -e "s*{{erl}}*@ERL@*" ejabberdctl.template \ > ejabberdctl.example - [ -f $(ETCDIR)/ejabberdctl.cfg ] \ - && $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg-new \ - || $(INSTALL) -b -m 640 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg -+ $(INSTALL) -b -m 644 $(G_USER) ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg - $(INSTALL) -b -m 644 $(G_USER) inetrc $(ETCDIR)/inetrc +- $(INSTALL) -b -m 644 $(G_USER) inetrc $(ETCDIR)/inetrc ++ $(INSTALL) -b -m 644 ejabberdctl.cfg.example $(ETCDIR)/ejabberdctl.cfg ++ $(INSTALL) -b -m 644 inetrc $(ETCDIR)/inetrc # # Administration script - [ -d $(SBINDIR) ] || $(INSTALL) -d -m 755 $(SBINDIR) @@ -39,24 +40,17 @@ index ffd1d30..a60c5b7 100644 + $(INSTALL) -D ejabberdctl.example $(SBINDIR)/ejabberdctl # Elixir binaries [ -d $(BINDIR) ] || $(INSTALL) -d -m 755 $(BINDIR) - -[ -f deps/elixir/bin/iex ] && $(INSTALL) -m 550 $(G_USER) deps/elixir/bin/iex $(BINDIR)/iex -@@ -165,9 +160,9 @@ install: all + [ -f deps/elixir/bin/iex ] && $(INSTALL) -m 550 $(G_USER) deps/elixir/bin/iex $(BINDIR)/iex || true +@@ -157,34 +152,11 @@ install: all copy-files # # Binary C programs $(INSTALL) -d $(PBINDIR) - $(INSTALL) -m 750 $(O_USER) tools/captcha.sh $(PBINDIR) -- $(INSTALL) -m 750 $(O_USER) tools/joincluster $(PBINDIR) -- $(INSTALL) -m 750 $(O_USER) tools/leavecluster $(PBINDIR) + $(INSTALL) tools/captcha.sh $(PBINDIR) -+ $(INSTALL) tools/joincluster $(PBINDIR) -+ $(INSTALL) tools/leavecluster $(PBINDIR) - -[ -f deps/p1_pam/priv/bin/epam ] \ - && $(INSTALL) -m 750 $(O_USER) deps/p1_pam/priv/bin/epam $(PBINDIR) # -@@ -184,29 +179,6 @@ install: all # Copy lite.sql - -[ -d deps/sqlite3 ] && $(INSTALL) -d $(SQLDIR) - -[ -d deps/sqlite3 ] && $(INSTALL) -m 644 sql/lite.sql $(SQLDIR) + [ -d deps/sqlite3 ] && $(INSTALL) -d $(SQLDIR) || true + [ -d deps/sqlite3 ] && $(INSTALL) -m 644 sql/lite.sql $(SQLDIR) || true - # - # Spool directory - $(INSTALL) -d -m 750 $(O_USER) $(SPOOLDIR) @@ -82,3 +76,4 @@ index ffd1d30..a60c5b7 100644 - $(INSTALL) -m 644 COPYING $(DOCDIR) uninstall: uninstall-binary + diff --git a/package/ejabberd/0008-add-ac_config_macro_dir.patch b/package/ejabberd/0008-add-ac_config_macro_dir.patch deleted file mode 100644 index 9cff90ba3e3..00000000000 --- a/package/ejabberd/0008-add-ac_config_macro_dir.patch +++ /dev/null @@ -1,30 +0,0 @@ -upstream: https://github.com/processone/ejabberd/pull/628 -Author: Johan Oudinet - -From 0e7d2b73be335353e9938668a699b3dbb7011c56 Mon Sep 17 00:00:00 2001 -From: Johan Oudinet -Date: Tue, 30 Jun 2015 10:53:45 +0200 -Subject: [PATCH] configure.ac: add AC_CONFIG_MACRO_DIR - -Otherwise, autoconf fails to find extra macros defined in the m4 -directory. ---- - configure.ac | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/configure.ac b/configure.ac -index a3e2638..0a60de0 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -6,6 +6,8 @@ AC_INIT(ejabberd, m4_esyscmd([echo `git describe --tags 2>/dev/null || echo 0.0` - REQUIRE_ERLANG_MIN="5.9.1 (Erlang/OTP R15B01)" - REQUIRE_ERLANG_MAX="9.0.0 (No Max)" - -+AC_CONFIG_MACRO_DIR([m4]) -+ - # Checks for programs. - AC_PROG_MAKE_SET - AC_PROG_INSTALL --- -2.1.4 - diff --git a/package/ejabberd/0009-fix-ejabberdctl.patch b/package/ejabberd/0008-fix-ejabberdctl.patch similarity index 67% rename from package/ejabberd/0009-fix-ejabberdctl.patch rename to package/ejabberd/0008-fix-ejabberdctl.patch index 9ae23ac5c3e..af0b6eea6c6 100644 --- a/package/ejabberd/0009-fix-ejabberdctl.patch +++ b/package/ejabberd/0008-fix-ejabberdctl.patch @@ -3,19 +3,23 @@ Description: fix ejabberdctl Also add a way for the user to change default values. Signed-off-by: Johan Oudinet +Index: ejabberd/ejabberdctl.template +=================================================================== diff --git a/ejabberdctl.template b/ejabberdctl.template -index 79f4438..df0abba 100755 +index c7d76ef..a7afce1 100755 --- a/ejabberdctl.template +++ b/ejabberdctl.template -@@ -14,7 +14,10 @@ SCRIPT_DIR=`cd ${0%/*} && pwd` +@@ -14,9 +14,12 @@ SCRIPT_DIR=`cd ${0%/*} && pwd` ERL={{erl}} IEX={{bindir}}/iex EPMD={{bindir}}/epmd -INSTALLUSER={{installuser}} +INSTALLUSER=ejabberd -+ -+# Read default configuration file if present. -+[ ! -r /etc/default/ejabberd ] || . /etc/default/ejabberd + ERL_LIBS={{libdir}} ++# Read default configuration file if present ++[ ! -r /etc/default/ejabberd ] || . /etc/default/ejabberd ++ # check the proper system user is used if defined if [ "$INSTALLUSER" != "" ] ; then + EXEC_CMD="false" diff --git a/package/ejabberd/0010-fix-package-version.patch b/package/ejabberd/0010-fix-package-version.patch deleted file mode 100644 index c8b3c1042a4..00000000000 --- a/package/ejabberd/0010-fix-package-version.patch +++ /dev/null @@ -1,19 +0,0 @@ -Description: fix package version - Without this patch, the configure tries to guess the version from the - last git tag, which is incorrect here as we are not inside ejabberd - git repository. -Signed-off-by: Johan Oudinet - -diff --git a/configure.ac b/configure.ac -index e7bb43b..e7faac4 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -2,7 +2,7 @@ - # Process this file with autoconf to produce a configure script. - - AC_PREREQ(2.53) --AC_INIT(ejabberd, m4_esyscmd([echo `git describe --tags 2>/dev/null || echo 0.0` | sed 's/-g.*//;s/-/./' | tr -d '\012']), [ejabberd@process-one.net], [ejabberd]) -+AC_INIT(ejabberd, [15.06], [ejabberd@process-one.net], [ejabberd]) - REQUIRE_ERLANG_MIN="5.9.1 (Erlang/OTP R15B01)" - REQUIRE_ERLANG_MAX="9.0.0 (No Max)" - diff --git a/package/ejabberd/S50ejabberd b/package/ejabberd/S50ejabberd index 2161eadca81..830fcb85a77 100644 --- a/package/ejabberd/S50ejabberd +++ b/package/ejabberd/S50ejabberd @@ -19,7 +19,7 @@ mkrundir() { case "$1" in start) mkrundir || exit 1 - echo -n "Starting ejabberd... " + printf "Starting ejabberd... " "$CTL" start # Wait until ejabberd is up and running. if "$CTL" started; then @@ -29,7 +29,7 @@ case "$1" in fi ;; stop) - echo -n "Stopping ejabberd... " + printf "Stopping ejabberd... " "$CTL" stop > /dev/null if [ $? -eq 3 ] || "$CTL" stopped; then echo "OK" diff --git a/package/ejabberd/ejabberd.hash b/package/ejabberd/ejabberd.hash new file mode 100644 index 00000000000..b027183ff1b --- /dev/null +++ b/package/ejabberd/ejabberd.hash @@ -0,0 +1,4 @@ +# From https://www.process-one.net/downloads/ejabberd/15.11/ejabberd-15.11.tgz.md5 +md5 a6997b88d44c5a5acff45bb1d938d0f3 ejabberd-15.11.tgz +# Locally computed +sha256 01044b5a25f9f8dda8c60726698bd27d650751b810e5bfa23f9bb49ba20e946a ejabberd-15.11.tgz diff --git a/package/ejabberd/ejabberd.mk b/package/ejabberd/ejabberd.mk index 7e22e0cab89..841c9119d21 100644 --- a/package/ejabberd/ejabberd.mk +++ b/package/ejabberd/ejabberd.mk @@ -4,8 +4,9 @@ # ################################################################################ -EJABBERD_VERSION = 15.06 -EJABBERD_SITE = $(call github,processone,ejabberd,$(EJABBERD_VERSION)) +EJABBERD_VERSION = 15.11 +EJABBERD_SOURCE = ejabberd-$(EJABBERD_VERSION).tgz +EJABBERD_SITE = https://www.process-one.net/downloads/ejabberd/$(EJABBERD_VERSION) EJABBERD_LICENSE = GPLv2+ with OpenSSL exception EJABBERD_LICENSE_FILES = COPYING EJABBERD_DEPENDENCIES = getent openssl host-erlang-lager erlang-lager \ diff --git a/package/elementary/Config.in b/package/elementary/Config.in new file mode 100644 index 00000000000..f3567847311 --- /dev/null +++ b/package/elementary/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_ELEMENTARY + bool "elementary" + depends on BR2_PACKAGE_EFL + depends on BR2_TOOLCHAIN_HAS_THREADS # elm_store.c + depends on !BR2_STATIC_LIBS + help + Elementary is a widget toolkit and EFL wrapper and convenience + library to make it easy to build applications and tools with UIs + with less code. + + https://enlightenment.org + +comment "elementary needs a toolchain w/ threads, dynamic library" + depends on BR2_PACKAGE_EFL + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/elementary/elementary.hash b/package/elementary/elementary.hash new file mode 100644 index 00000000000..ecdbc8e5bd5 --- /dev/null +++ b/package/elementary/elementary.hash @@ -0,0 +1,2 @@ +# From https://download.enlightenment.org/rel/libs/elementary/elementary-1.15.3.tar.xz.sha256 +sha256 474a9175061021ce8cbcfdbde6162316fc0d927b21118d1ab549377ebc802a93 elementary-1.15.3.tar.xz diff --git a/package/elementary/elementary.mk b/package/elementary/elementary.mk new file mode 100644 index 00000000000..7de0c7b343d --- /dev/null +++ b/package/elementary/elementary.mk @@ -0,0 +1,37 @@ +################################################################################ +# +# elementary +# +################################################################################ + +ELEMENTARY_VERSION = 1.15.3 +ELEMENTARY_SOURCE = elementary-$(ELEMENTARY_VERSION).tar.xz +ELEMENTARY_SITE = http://download.enlightenment.org/rel/libs/elementary +ELEMENTARY_LICENSE = LGPLv2.1 +ELEMENTARY_LICENSE_FILES = COPYING + +ELEMENTARY_INSTALL_STAGING = YES + +ELEMENTARY_DEPENDENCIES = host-pkgconf host-efl host-elementary efl + +ELEMENTARY_CONF_OPTS = \ + --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \ + --with-eet-eet=$(HOST_DIR)/usr/bin/eet \ + --with-eolian-gen=$(HOST_DIR)/usr/bin/eolian_gen \ + --with-eldbus_codegen=$(HOST_DIR)/usr/bin/eldbus-codegen \ + --with-elm-prefs-cc=$(HOST_DIR)/usr/bin/elm_prefs_cc \ + --with-doxygen=no \ + --disable-elementary-test + +# We need a host package in order to provide elm_prefs_cc and +# elementary_codegen. +HOST_ELEMENTARY_DEPENDENCIES = host-pkgconf host-efl +HOST_ELEMENTARY_CONF_OPTS = \ + --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \ + --with-eet-eet=$(HOST_DIR)/usr/bin/eet \ + --with-eolian-gen=$(HOST_DIR)/usr/bin/eolian_gen \ + --with-doxygen=no \ + --disable-elementary-test + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/elf2flt/elf2flt.mk b/package/elf2flt/elf2flt.mk index 0233ed54b92..bec270b5bed 100644 --- a/package/elf2flt/elf2flt.mk +++ b/package/elf2flt/elf2flt.mk @@ -4,8 +4,8 @@ # ################################################################################ -ELF2FLT_VERSION = 21c6a41885ad544763ccd19883c1353f3b0b7a47 -ELF2FLT_SITE = git://wh0rd.org/elf2flt.git +ELF2FLT_VERSION = f859213b18a67fcfc09961267e0a1122d35186f4 +ELF2FLT_SITE = http://cgit.openadk.org/cgi/cgit/elf2flt.git ELF2FLT_SITE_METHOD = git ELF2FLT_LICENSE = GPLv2+ ELF2FLT_LICENSE_FILES = LICENSE.TXT @@ -21,6 +21,12 @@ HOST_ELF2FLT_CONF_OPTS = \ --with-libiberty=$(HOST_BINUTILS_DIR)/libiberty/libiberty.a \ --target=$(GNU_TARGET_NAME) -HOST_ELF2FLT_CONF_ENV = LIBS=-lz +HOST_ELF2FLT_LIBS = -lz + +ifeq ($(BR2_GCC_ENABLE_LTO),y) +HOST_ELF2FLT_LIBS += -ldl +endif + +HOST_ELF2FLT_CONF_ENV = LIBS="$(HOST_ELF2FLT_LIBS)" $(eval $(host-autotools-package)) diff --git a/package/elfutils/Config.in b/package/elfutils/Config.in index 6c6856e3d7a..ca93770bfb9 100644 --- a/package/elfutils/Config.in +++ b/package/elfutils/Config.in @@ -1,6 +1,7 @@ -comment "elfutils needs a toolchain w/ wchar, dynamic library" +comment "elfutils needs a uClibc or (e)glibc toolchain w/ wchar, dynamic library" depends on !BR2_bfin - depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS + depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \ + || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) config BR2_PACKAGE_ELFUTILS bool "elfutils" @@ -8,6 +9,8 @@ config BR2_PACKAGE_ELFUTILS select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT depends on BR2_USE_WCHAR depends on !BR2_STATIC_LIBS + # Only glibc and uClibc implement the myriad of required GNUisms + depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # build issue caused by the _ prefix used on blackfin for # assembly symbols depends on !BR2_bfin diff --git a/package/elfutils/elfutils.mk b/package/elfutils/elfutils.mk index 838c3b881f7..cc056182cb2 100644 --- a/package/elfutils/elfutils.mk +++ b/package/elfutils/elfutils.mk @@ -8,7 +8,7 @@ ELFUTILS_VERSION = 0.161 ELFUTILS_SOURCE = elfutils-$(ELFUTILS_VERSION).tar.bz2 ELFUTILS_SITE = https://fedorahosted.org/releases/e/l/elfutils/$(ELFUTILS_VERSION) ELFUTILS_INSTALL_STAGING = YES -ELFUTILS_LICENSE = GPLv3 GPLv2 LGPLv3 +ELFUTILS_LICENSE = GPLv3, GPLv2, LGPLv3 ELFUTILS_LICENSE_FILES = COPYING COPYING-GPLV2 COPYING-LGPLV3 ELFUTILS_PATCH = elfutils-portability-0.161.patch @@ -16,9 +16,16 @@ ELFUTILS_PATCH = elfutils-portability-0.161.patch ELFUTILS_AUTORECONF = YES ELFUTILS_CONF_OPTS += --disable-werror +ELFUTILS_CFLAGS = $(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CFLAGS)) + +# sparc64 needs -fPIC instead of -fpic +ifeq ($(BR2_sparc64),y) +ELFUTILS_CFLAGS += -fPIC +endif + # elfutils gets confused when lfs mode is forced, so don't ELFUTILS_CONF_ENV += \ - CFLAGS="$(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CFLAGS))" \ + CFLAGS="$(ELFUTILS_CFLAGS)" \ CPPFLAGS="$(filter-out -D_FILE_OFFSET_BITS=64,$(TARGET_CPPFLAGS))" ELFUTILS_LDFLAGS = $(TARGET_LDFLAGS) diff --git a/package/emlog/0001-Fix-access-to-the-dentry.patch b/package/emlog/0001-Fix-access-to-the-dentry.patch new file mode 100644 index 00000000000..07dd5ec92f4 --- /dev/null +++ b/package/emlog/0001-Fix-access-to-the-dentry.patch @@ -0,0 +1,57 @@ +From 33d34a10fdc01c5716aebdb93c34fdfd7557adc0 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Tue, 22 Dec 2015 17:39:35 +0100 +Subject: [PATCH] Fix access to the dentry + +Since Linux 2.6.20, the dentry pointer is no longer stored in +file->f_dentry, but in file->f_path.dentry. Until Linux 3.19, there +was a compatibility macro which made the change transparent, but this +macro has now been removed. + +Since we probably don't care about compatibility with kernels older +than 2.6.20, this commit takes the simple approach of using +file->f_path.dentry. This will work with any kernel >= 2.6.20. + +Submitted upstream at https://github.com/nicupavel/emlog/pull/3. + +Signed-off-by: Thomas Petazzoni +--- + emlog.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/emlog.c b/emlog.c +index 41a67e2..1ef3d80 100644 +--- a/emlog.c ++++ b/emlog.c +@@ -292,8 +292,8 @@ static ssize_t emlog_read(struct file *file, char __user *buffer, /* The bu + struct emlog_info *einfo; + + /* get the metadata about this emlog */ +- if ((einfo = get_einfo(file->f_dentry->d_inode)) == NULL) { +- pr_err("can not fetch einfo for inode %ld.\n", (long)(file->f_dentry->d_inode->i_ino)); ++ if ((einfo = get_einfo(file->f_path.dentry->d_inode)) == NULL) { ++ pr_err("can not fetch einfo for inode %ld.\n", (long)(file->f_path.dentry->d_inode->i_ino)); + return -EIO; + } + +@@ -368,7 +368,7 @@ static ssize_t emlog_write(struct file *file, + struct emlog_info *einfo; + + /* get the metadata about this emlog */ +- if ((einfo = get_einfo(file->f_dentry->d_inode)) == NULL) ++ if ((einfo = get_einfo(file->f_path.dentry->d_inode)) == NULL) + return -EIO; + + /* if the message is longer than the buffer, just take the beginning +@@ -403,7 +403,7 @@ static unsigned int emlog_poll(struct file *file, struct poll_table_struct * wai + struct emlog_info *einfo; + + /* get the metadata about this emlog */ +- if ((einfo = get_einfo(file->f_dentry->d_inode)) == NULL) ++ if ((einfo = get_einfo(file->f_path.dentry->d_inode)) == NULL) + return -EIO; + + poll_wait(file, EMLOG_READQ(einfo), wait); +-- +2.6.4 + diff --git a/package/emlog/Config.in b/package/emlog/Config.in new file mode 100644 index 00000000000..77d0ca35e5f --- /dev/null +++ b/package/emlog/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_EMLOG + bool "emlog" + depends on BR2_LINUX_KERNEL + help + emlog is a Linux kernel module that makes it easy to access + the most recent (and only the most recent) output from a + process. It works just like "tail -f" on a log file, except + that the storage required never grows. This can be useful in + embedded systems where there isn't enough memory or disk + space for keeping complete log files, but the most recent + debugging messages are sometimes needed (e.g., after an + error is observed). + + https://github.com/nicupavel/emlog + +comment "emlog needs a Linux kernel to be built" + depends on !BR2_LINUX_KERNEL diff --git a/package/emlog/emlog.hash b/package/emlog/emlog.hash new file mode 100644 index 00000000000..625fb01b907 --- /dev/null +++ b/package/emlog/emlog.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9bab81e75ef2a1b1b7024a397308356a52463d8ac4b42682ed5a134d46387d1f emlog-bd32494ad757c3d37469877aaf99ced3ee6ca3f8.tar.gz diff --git a/package/emlog/emlog.mk b/package/emlog/emlog.mk new file mode 100644 index 00000000000..f79b1cf8f5b --- /dev/null +++ b/package/emlog/emlog.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# emlog +# +################################################################################ + +EMLOG_VERSION = bd32494ad757c3d37469877aaf99ced3ee6ca3f8 +EMLOG_SITE = $(call github,nicupavel,emlog,$(EMLOG_VERSION)) +EMLOG_LICENSE = GPLv2 +EMLOG_LICENSE_FILES = COPYING + +define EMLOG_BUILD_CMDS + $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) nbcat +endef + +# make install tries to strip, so install manually. +define EMLOG_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/nbcat $(TARGET_DIR)/usr/bin/nbcat +endef + +$(eval $(kernel-module)) +$(eval $(generic-package)) diff --git a/package/empty/0002-fix-non-thread-build.patch b/package/empty/0002-fix-non-thread-build.patch new file mode 100644 index 00000000000..a7e8d90a212 --- /dev/null +++ b/package/empty/0002-fix-non-thread-build.patch @@ -0,0 +1,49 @@ +empty uses SysV semaphores, so the ifdef is wrong here. + +Signed-off-by: Waldemar Brodkorb + +--- empty-0.6.19b.orig/empty.c 2012-09-19 13:24:05.000000000 +0200 ++++ empty-0.6.19b/empty.c 2015-07-09 02:00:09.000000000 +0200 +@@ -179,25 +179,23 @@ int main (int argc, char *argv[]) { + 2 - unknown */ + + /* semaphores */ +-#ifdef _POSIX_SEMAPHORES +- #if defined(__linux__) && defined(__GNU_LIBRARY__) && !defined(_SEM_SEMUN_UNDEFINED) +- /* union semun is defined by including */ +- #else +- union semun { +- int val; +- struct semid_ds *buf; +- #ifdef __SVR4 +- ushort_t *array; +- #endif +- #ifdef __hpux__ +- ushort *array; +- #endif +- #ifdef __linux__ +- unsigned short *array; +- struct seminfo *__buf; /* buffer for IPC_INFO */ +- #endif +- }; +- #endif ++#if defined(__linux__) && defined(__GNU_LIBRARY__) && !defined(_SEM_SEMUN_UNDEFINED) ++ /* union semun is defined by including */ ++#else ++ union semun { ++ int val; ++ struct semid_ds *buf; ++ #ifdef __SVR4 ++ ushort_t *array; ++ #endif ++ #ifdef __hpux__ ++ ushort *array; ++ #endif ++ #ifdef __linux__ ++ unsigned short *array; ++ struct seminfo *__buf; /* buffer for IPC_INFO */ ++ #endif ++ }; + #endif + union semun semu; + diff --git a/package/enlightenment/Config.in b/package/enlightenment/Config.in index 58f8f39ba7a..05ee6fc619c 100644 --- a/package/enlightenment/Config.in +++ b/package/enlightenment/Config.in @@ -1,22 +1,5 @@ config BR2_PACKAGE_ENLIGHTENMENT bool "enlightenment" - select BR2_PACKAGE_EFL - select BR2_PACKAGE_LIBECORE - select BR2_PACKAGE_LIBECORE_X - select BR2_PACKAGE_LIBEINA - select BR2_PACKAGE_LIBEET - select BR2_PACKAGE_LIBEVAS - select BR2_PACKAGE_LIBEVAS_JPEG - select BR2_PACKAGE_LIBEVAS_PNG - select BR2_PACKAGE_LIBEVAS_EET - select BR2_PACKAGE_LIBECORE_EVAS - select BR2_PACKAGE_LIBEDJE - select BR2_PACKAGE_LIBEFREET - select BR2_PACKAGE_LIBEDBUS - select BR2_PACKAGE_LIBEIO - select BR2_PACKAGE_XCB_UTIL_KEYSYMS - select BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS - select BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_SVG # libevas-generic-loaders-svg -> librsvg -> glib2 / pango depends on BR2_USE_WCHAR depends on BR2_INSTALL_LIBSTDCPP @@ -25,9 +8,17 @@ config BR2_PACKAGE_ENLIGHTENMENT depends on BR2_TOOLCHAIN_HAS_THREADS # libedbus -> dbus, efl libraries depends on BR2_USE_MMU + depends on BR2_PACKAGE_EFL depends on BR2_PACKAGE_XORG7 - # libevas-generic-loaders-svg -> librsvg -> pango -> cairo - depends on BR2_ARCH_HAS_ATOMICS + # libevas-generic-loaders-svg -> librsvg -> pango -> harfbuzz + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + select BR2_PACKAGE_EFL_X_XLIB + select BR2_PACKAGE_EFL_JPEG # needed at runtime by enlightenment_start + select BR2_PACKAGE_EFL_PNG # needed at runtime by enlightenment_start + select BR2_PACKAGE_ELEMENTARY + select BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS + select BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_SVG + select BR2_PACKAGE_XCB_UTIL_KEYSYMS help Enlightenment, also known simply as E, is a stacking window manager for the X Window System which can be used alone or @@ -38,6 +29,6 @@ config BR2_PACKAGE_ENLIGHTENMENT http://www.enlightenment.org/ comment "enlightenment needs a toolchain w/ wchar, C++, threads" - depends on BR2_PACKAGE_XORG7 && BR2_USE_MMU + depends on BR2_PACKAGE_EFL && BR2_PACKAGE_XORG7 && BR2_USE_MMU depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/enlightenment/enlightenment.hash b/package/enlightenment/enlightenment.hash new file mode 100644 index 00000000000..66bdb492a46 --- /dev/null +++ b/package/enlightenment/enlightenment.hash @@ -0,0 +1,2 @@ +# From https://phab.enlightenment.org/phame/live/3/post/e19_14_release/ +sha256 8906e762f0d953752bfe002663280a855da9bb74acf613424c517b78a8dde407 enlightenment-0.19.14.tar.xz diff --git a/package/enlightenment/enlightenment.mk b/package/enlightenment/enlightenment.mk index ddebe065a16..a7563613421 100644 --- a/package/enlightenment/enlightenment.mk +++ b/package/enlightenment/enlightenment.mk @@ -4,30 +4,26 @@ # ################################################################################ -ENLIGHTENMENT_VERSION = 0.17.6 -ENLIGHTENMENT_SITE = http://download.enlightenment.org/releases +ENLIGHTENMENT_VERSION = 0.19.14 +ENLIGHTENMENT_SOURCE = enlightenment-$(ENLIGHTENMENT_VERSION).tar.xz +ENLIGHTENMENT_SITE = http://download.enlightenment.org/rel/apps/enlightenment ENLIGHTENMENT_LICENSE = BSD-2c ENLIGHTENMENT_LICENSE_FILES = COPYING -ENLIGHTENMENT_DEPENDENCIES = \ - host-pkgconf \ - libecore \ - libeet \ - libeina \ - libevas \ +ENLIGHTENMENT_DEPENDENCIES = \ + host-pkgconf \ + host-efl \ + efl \ + elementary \ libevas-generic-loaders \ - libedje \ - libefreet \ - libedbus \ - libeio \ - host-libedje \ - host-libeet \ xcb-util-keysyms ENLIGHTENMENT_CONF_OPTS = \ --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \ --with-eet-eet=$(HOST_DIR)/usr/bin/eet \ - --disable-rpath + --disable-pam \ + --disable-rpath \ + --disable-systemd # uClibc has an old incomplete sys/ptrace.h for powerpc & sparc ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC)$(BR2_powerpc)$(BR2_sparc),yy) diff --git a/package/erlang-p1-tls/Config.in b/package/erlang-p1-tls/Config.in index 42c6a3e96c7..0df334820d0 100644 --- a/package/erlang-p1-tls/Config.in +++ b/package/erlang-p1-tls/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_ERLANG_P1_TLS bool "erlang-p1-tls" + select BR2_PACKAGE_OPENSSL help Erlang interface to OpenSSL diff --git a/package/erlang-p1-tls/erlang-p1-tls.mk b/package/erlang-p1-tls/erlang-p1-tls.mk index d706797ad5e..4f1fc485494 100644 --- a/package/erlang-p1-tls/erlang-p1-tls.mk +++ b/package/erlang-p1-tls/erlang-p1-tls.mk @@ -9,5 +9,6 @@ ERLANG_P1_TLS_SITE = $(call github,processone,tls,$(ERLANG_P1_TLS_VERSION)) ERLANG_P1_TLS_LICENSE = GPLv2+ ERLANG_P1_TLS_LICENSE_FILES = COPYING ERLANG_P1_TLS_INSTALL_STAGING = YES +ERLANG_P1_TLS_DEPENDENCIES = openssl $(eval $(rebar-package)) diff --git a/package/erlang-rebar/erlang-rebar.mk b/package/erlang-rebar/erlang-rebar.mk index f29eb756976..d2189e1f7ca 100644 --- a/package/erlang-rebar/erlang-rebar.mk +++ b/package/erlang-rebar/erlang-rebar.mk @@ -13,8 +13,8 @@ ERLANG_REBAR_SITE = $(call github,rebar,rebar,$(ERLANG_REBAR_VERSION)) # Although the file LICENSE state Apache-2.0, a lot (if not all) the files # in src/ bear the MIT licence. -ERLANG_LICENSE = Apache-2.0, MIT -ERLANG_LICENSE_FILES = LICENSE +ERLANG_REBAR_LICENSE = Apache-2.0, MIT +ERLANG_REBAR_LICENSE_FILES = LICENSE # We do not have a target variant, so just define the dependencies, # configure and build commands for the host variant. diff --git a/package/erlang/Config.in b/package/erlang/Config.in index 625b7c1b829..5fa20288c2d 100644 --- a/package/erlang/Config.in +++ b/package/erlang/Config.in @@ -1,14 +1,13 @@ -comment "erlang needs a toolchain w/ threads, shared library" +comment "erlang needs a toolchain w/ dynamic library" depends on BR2_USE_MMU # fork() - depends on BR2_PACKAGE_LIBATOMIC_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS + depends on BR2_STATIC_LIBS config BR2_PACKAGE_ERLANG bool "erlang" depends on BR2_USE_MMU # fork() - depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS - depends on BR2_PACKAGE_LIBATOMIC_ARCH_SUPPORTS + depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS select BR2_PACKAGE_LIBATOMIC_OPS help Erlang is a programming language used to build massively scalable diff --git a/package/erlang/erlang.mk b/package/erlang/erlang.mk index 499f62c1539..848d1ddc44c 100644 --- a/package/erlang/erlang.mk +++ b/package/erlang/erlang.mk @@ -40,6 +40,10 @@ HOST_ERLANG_CONF_OPTS = --without-javac --with-ssl=$(HOST_DIR)/usr HOST_ERLANG_CONF_OPTS += --without-termcap +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) +ERLANG_CONF_OPTS += --disable-threads +endif + ifeq ($(BR2_PACKAGE_NCURSES),y) ERLANG_CONF_OPTS += --with-termcap ERLANG_DEPENDENCIES += ncurses diff --git a/package/espeak/0001-Fix-build-of-shared-library-on-architectures-needing.patch b/package/espeak/0001-Fix-build-of-shared-library-on-architectures-needing.patch new file mode 100644 index 00000000000..2590e158413 --- /dev/null +++ b/package/espeak/0001-Fix-build-of-shared-library-on-architectures-needing.patch @@ -0,0 +1,31 @@ +From 08a464e2b6bd31bb2bf4e258ebfa9b9d65805abf Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Fri, 27 Nov 2015 15:17:02 +0100 +Subject: [PATCH] Fix build of shared library on architectures needing -fPIC + +Certain architectures, like Sparc and Sparc64 require objects to be +built with -fPIC (and not just -fpic) to be usable in shared +libraries. On other architectures, -fPIC is the same as -fpic so this +patch doesn't affect such architectures. + +Signed-off-by: Thomas Petazzoni +--- + src/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/Makefile b/src/Makefile +index 95fe549..c293611 100755 +--- a/src/Makefile ++++ b/src/Makefile +@@ -110,7 +110,7 @@ $(BIN2_NAME): $(OBJS3) $(LIB_NAME) + + + x_%.o: %.cpp +- $(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -fpic -fvisibility=hidden -pedantic \ ++ $(CXX) $(CXXFLAGS) $(USE_AUDIO) -D PATH_ESPEAK_DATA=\"$(DATADIR)\" -Wall -fPIC -fvisibility=hidden -pedantic \ + -I. -D LIBRARY -c -fno-exceptions $< -o x_$*.o + + $(LIB_NAME): $(OBJS2) +-- +2.6.3 + diff --git a/package/espeak/Config.in b/package/espeak/Config.in index 94e281663cc..aed627af92f 100644 --- a/package/espeak/Config.in +++ b/package/espeak/Config.in @@ -32,7 +32,7 @@ config BR2_PACKAGE_ESPEAK_AUDIO_BACKEND_ALSA config BR2_PACKAGE_ESPEAK_AUDIO_BACKEND_PULSEAUDIO bool "pulseaudio" - depends on BR2_ARCH_HAS_ATOMICS # pulseaudio + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pulseaudio -> json-c select BR2_PACKAGE_PULSEAUDIO endchoice diff --git a/package/ethtool/ethtool.hash b/package/ethtool/ethtool.hash index 5fde687ee23..53f31d0d5dd 100644 --- a/package/ethtool/ethtool.hash +++ b/package/ethtool/ethtool.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/software/network/ethtool/sha256sums.asc -sha256 904887acc7d2f9c35dec04eb0e8a727a3205f346af4f4c95560ea3798de5ecff ethtool-4.0.tar.xz +sha256 8cb854bcf71ef8b484b5d2a0e6bf056ae1fbf12cfb19e4907b74b7b21da91e87 ethtool-4.2.tar.xz diff --git a/package/ethtool/ethtool.mk b/package/ethtool/ethtool.mk index c358c6241ba..c56eeb916c9 100644 --- a/package/ethtool/ethtool.mk +++ b/package/ethtool/ethtool.mk @@ -4,7 +4,7 @@ # ################################################################################ -ETHTOOL_VERSION = 4.0 +ETHTOOL_VERSION = 4.2 ETHTOOL_SOURCE = ethtool-$(ETHTOOL_VERSION).tar.xz ETHTOOL_SITE = $(BR2_KERNEL_MIRROR)/software/network/ethtool ETHTOOL_LICENSE = GPLv2 diff --git a/package/eudev/eudev.hash b/package/eudev/eudev.hash index d54c8cf0ce4..e7c331ca9b1 100644 --- a/package/eudev/eudev.hash +++ b/package/eudev/eudev.hash @@ -1,4 +1,4 @@ # From http://dev.gentoo.org/~blueness/eudev/ -md5 07ab33fe310d250f06fc28f010e3fde2 eudev-3.1.2.tar.gz +md5 c4dace42deecede102b6c01904042acc eudev-3.1.5.tar.gz # Locally calculated -sha256 4393b69e93dd8117defde6519b199d479f9d051f52061157a1a7a41b8fe10273 eudev-3.1.2.tar.gz +sha256 f75885a430cd50fe4b31732f808ba7f9b2adf0f26b53b8ba2957b0c1d84b6f2a eudev-3.1.5.tar.gz diff --git a/package/eudev/eudev.mk b/package/eudev/eudev.mk index f587acd759f..942770c4d93 100644 --- a/package/eudev/eudev.mk +++ b/package/eudev/eudev.mk @@ -4,7 +4,7 @@ # ################################################################################ -EUDEV_VERSION = 3.1.2 +EUDEV_VERSION = 3.1.5 EUDEV_SOURCE = eudev-$(EUDEV_VERSION).tar.gz EUDEV_SITE = http://dev.gentoo.org/~blueness/eudev EUDEV_LICENSE = GPLv2+ (programs), LGPLv2.1+ (libraries) @@ -17,18 +17,20 @@ EUDEV_CONF_ENV += LIBS=-lrt EUDEV_CONF_OPTS = \ --disable-manpages \ --sbindir=/sbin \ - --with-rootlibdir=/lib \ --libexecdir=/lib \ --with-firmware-path=/lib/firmware \ --disable-introspection \ - --enable-split-usr \ --enable-libkmod EUDEV_DEPENDENCIES = host-gperf host-pkgconf util-linux kmod EUDEV_PROVIDES = udev +ifeq ($(BR2_ROOTFS_MERGED_USR),) +EUDEV_CONF_OPTS += --with-rootlibdir=/lib --enable-split-usr +endif + ifeq ($(BR2_PACKAGE_EUDEV_RULES_GEN),y) -EUDEV_CONF_OPTS += --enable-rule_generator +EUDEV_CONF_OPTS += --enable-rule-generator endif ifeq ($(BR2_PACKAGE_EUDEV_ENABLE_HWDB),y) @@ -52,7 +54,7 @@ EUDEV_CONF_OPTS += --disable-selinux endif define EUDEV_INSTALL_INIT_SYSV - $(INSTALL) -m 0755 package/eudev/S10udev $(TARGET_DIR)/etc/init.d/S10udev + $(INSTALL) -D -m 0755 package/eudev/S10udev $(TARGET_DIR)/etc/init.d/S10udev endef # Required by default rules for input devices diff --git a/package/evemu/evemu.hash b/package/evemu/evemu.hash index 99668b7e59a..f7a0cc6c342 100644 --- a/package/evemu/evemu.hash +++ b/package/evemu/evemu.hash @@ -1,2 +1,2 @@ -# Hash from http://lists.freedesktop.org/archives/input-tools/2014-November/001125.html -sha256 0c87360882751356e9f977ebf7438c00fe97deb232ac725dd86e5ba78203ee97 evemu-2.1.0.tar.xz +# Hash from http://lists.freedesktop.org/archives/input-tools/2015-October/001221.html +sha256 5b0197735f9effa25563b0412c560354bee34f8263eaddb00dd996e6ff56eb6a evemu-2.3.1.tar.xz diff --git a/package/evemu/evemu.mk b/package/evemu/evemu.mk index b502469ec95..2fce723f05a 100644 --- a/package/evemu/evemu.mk +++ b/package/evemu/evemu.mk @@ -4,7 +4,7 @@ # ################################################################################ -EVEMU_VERSION = 2.1.0 +EVEMU_VERSION = 2.3.1 EVEMU_SITE = http://www.freedesktop.org/software/evemu EVEMU_SOURCE = evemu-$(EVEMU_VERSION).tar.xz EVEMU_LICENSE = LGPLv3 (library), GPLv3 (tools) diff --git a/package/eventlog/Config.in b/package/eventlog/Config.in new file mode 100644 index 00000000000..f9442f61877 --- /dev/null +++ b/package/eventlog/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_EVENTLOG + bool "eventlog" + help + eventlog is a library for creating structured events from + applications, and is the workhorse behind syslog-ng's own + messages. + + https://my.balabit.com/downloads/eventlog/ diff --git a/package/eventlog/eventlog.hash b/package/eventlog/eventlog.hash new file mode 100644 index 00000000000..b8f2ec6141c --- /dev/null +++ b/package/eventlog/eventlog.hash @@ -0,0 +1,2 @@ +# From https://my.balabit.com/downloads/eventlog/0.2/eventlog_0.2.12.dsc +sha256 494dac8e01dc5ce323df2ad554d94874938dab51aa025987677b2bc6906a9c66 eventlog_0.2.12.tar.gz diff --git a/package/eventlog/eventlog.mk b/package/eventlog/eventlog.mk new file mode 100644 index 00000000000..76da002e1ae --- /dev/null +++ b/package/eventlog/eventlog.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# eventlog +# +################################################################################ + +EVENTLOG_VERSION_MAJOR = 0.2 +EVENTLOG_VERSION = $(EVENTLOG_VERSION_MAJOR).12 +EVENTLOG_SOURCE = eventlog_$(EVENTLOG_VERSION).tar.gz +EVENTLOG_SITE = https://my.balabit.com/downloads/eventlog/$(EVENTLOG_VERSION_MAJOR) +EVENTLOG_LICENSE = BSD-3c +EVENTLOG_LICENSE_FILES = COPYING +EVENTLOG_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/exfat-utils/0001-fix-compiling-with-non-glibc-libcs.patch b/package/exfat-utils/0001-fix-compiling-with-non-glibc-libcs.patch deleted file mode 100644 index d2800402066..00000000000 --- a/package/exfat-utils/0001-fix-compiling-with-non-glibc-libcs.patch +++ /dev/null @@ -1,26 +0,0 @@ -[PATCH] fix compilation when libc does not define __GLIBC__ - -libexfat would only compile on Linux with __GLIBC__ defined. Changed -to use __linux__ which likely better fits the original intent. - -Upstream status: applied. -See https://groups.google.com/forum/#!topic/exfat/8g3yumqrf1A. - -Signed-off-by: Brendan Heading ---- - platform.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: libexfat/libexfat/platform.h -=================================================================== ---- libexfat/libexfat/platform.h (revision 422) -+++ libexfat/libexfat/platform.h (working copy) -@@ -24,7 +24,7 @@ - #ifndef PLATFORM_H_INCLUDED - #define PLATFORM_H_INCLUDED - --#if defined(__GLIBC__) -+#if defined(__linux__) - - #include - #include diff --git a/package/exfat-utils/Config.in b/package/exfat-utils/Config.in index aedff5fbb72..9dfbbfcfb84 100644 --- a/package/exfat-utils/Config.in +++ b/package/exfat-utils/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_EXFAT_UTILS help exFAT filesystem utilities. - http://code.google.com/p/exfat/ + https://github.com/relan/exfat comment "exfat-utils needs a toolchain w/ wchar" depends on !BR2_USE_WCHAR diff --git a/package/exfat-utils/exfat-utils.hash b/package/exfat-utils/exfat-utils.hash index 79ccf42505c..7bcaa3315c3 100644 --- a/package/exfat-utils/exfat-utils.hash +++ b/package/exfat-utils/exfat-utils.hash @@ -1,2 +1,2 @@ -# From https://code.google.com/p/exfat/wiki/Downloads?tm=2 -sha1 ddf0819c27aeb3eaae5aae0423d4dafc54d477da exfat-utils-1.1.1.tar.gz +# Locally calculated +sha256 80d3b3f21242d60d36a38a4ddb05cb7cc3a7d4eef5793e8314814937b938fcea exfat-utils-1.2.3.tar.gz diff --git a/package/exfat-utils/exfat-utils.mk b/package/exfat-utils/exfat-utils.mk index 4f432338bed..e6359bca1fd 100644 --- a/package/exfat-utils/exfat-utils.mk +++ b/package/exfat-utils/exfat-utils.mk @@ -4,21 +4,9 @@ # ################################################################################ -EXFAT_UTILS_VERSION = 1.1.1 -EXFAT_UTILS_SITE = http://distfiles.gentoo.org/distfiles -EXFAT_UTILS_DEPENDENCIES = host-scons +EXFAT_UTILS_VERSION = 1.2.3 +EXFAT_UTILS_SITE = https://github.com/relan/exfat/releases/download/v$(EXFAT_UTILS_VERSION) EXFAT_UTILS_LICENSE = GPLv3+ EXFAT_UTILS_LICENSE_FILES = COPYING -define EXFAT_UTILS_BUILD_CMDS - (cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) CCFLAGS="$(TARGET_CFLAGS) -std=c99" $(SCONS)) -endef - -define EXFAT_UTILS_INSTALL_TARGET_CMDS - (cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) CCFLAGS="$(TARGET_CFLAGS) -std=c99" $(SCONS) \ - DESTDIR=$(TARGET_DIR)/usr/bin install) -endef - -$(eval $(generic-package)) +$(eval $(autotools-package)) diff --git a/package/exfat/Config.in b/package/exfat/Config.in index 575f389ff08..c0b4eabe111 100644 --- a/package/exfat/Config.in +++ b/package/exfat/Config.in @@ -9,7 +9,7 @@ config BR2_PACKAGE_EXFAT A full-featured exFAT file system implementation for GNU/Linux and other Unix-like systems as a FUSE module. - http://code.google.com/p/exfat/ + https://github.com/relan/exfat comment "exfat needs a toolchain w/ wchar, threads, dynamic library" depends on BR2_USE_MMU diff --git a/package/exfat/exfat.hash b/package/exfat/exfat.hash index bfaca6e6d93..a6dbdac9d83 100644 --- a/package/exfat/exfat.hash +++ b/package/exfat/exfat.hash @@ -1,2 +1,2 @@ -# From https://code.google.com/p/exfat/wiki/Downloads?tm=2 -sha1 060560f74dbce4dc947c7e658e75fdf339bc10ff fuse-exfat-1.1.0.tar.gz +# Locally calculated +sha256 f2e06eba5a21c621aac1d6da21b12a5a324fdd1e20f9c8acd357dd463c2355d9 fuse-exfat-1.2.3.tar.gz diff --git a/package/exfat/exfat.mk b/package/exfat/exfat.mk index 097c3acbe60..c7904ba23eb 100644 --- a/package/exfat/exfat.mk +++ b/package/exfat/exfat.mk @@ -4,22 +4,12 @@ # ################################################################################ -EXFAT_VERSION = 1.1.0 -EXFAT_SITE = http://distfiles.gentoo.org/distfiles +EXFAT_VERSION = 1.2.3 +EXFAT_SITE = https://github.com/relan/exfat/releases/download/v$(EXFAT_VERSION) EXFAT_SOURCE = fuse-exfat-$(EXFAT_VERSION).tar.gz -EXFAT_DEPENDENCIES = host-scons libfuse +EXFAT_DEPENDENCIES = libfuse host-pkgconf EXFAT_LICENSE = GPLv3+ EXFAT_LICENSE_FILES = COPYING +EXFAT_CFLAGS = $(TARGET_CFLAGS) -std=c99 -define EXFAT_BUILD_CMDS - (cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) CCFLAGS="$(TARGET_CFLAGS) -std=c99" $(SCONS)) -endef - -define EXFAT_INSTALL_TARGET_CMDS - (cd $(@D); \ - $(TARGET_CONFIGURE_OPTS) CCFLAGS="$(TARGET_CFLAGS) -std=c99" $(SCONS) \ - DESTDIR=$(TARGET_DIR)/usr/sbin install) -endef - -$(eval $(generic-package)) +$(eval $(autotools-package)) diff --git a/package/exim/S86exim b/package/exim/S86exim index 8c01b291e15..bec88fc2229 100644 --- a/package/exim/S86exim +++ b/package/exim/S86exim @@ -11,7 +11,7 @@ case "$1" in start-stop-daemon -S -x exim -- -bd ;; stop) - echo -n "Stopping exim..." + printf "Stopping exim..." start-stop-daemon -K -o -p $PIDFILE ;; restart|reload) diff --git a/package/exiv2/0001-remove-useless-header.patch b/package/exiv2/0001-remove-useless-header.patch deleted file mode 100644 index 96a37348b99..00000000000 --- a/package/exiv2/0001-remove-useless-header.patch +++ /dev/null @@ -1,19 +0,0 @@ -version.cpp: remove useless header inclusion - -The inclusion of link.h header is not required and can create build -error with some toolchains. -The patch is pushed on the upstream for the next release. -http://dev.exiv2.org/issues/1007 - -Signed-off-by: Nicolas Serafini - ---- exiv2-0.24.orig/src/version.cpp 2013-12-01 13:13:42.000000000 +0100 -+++ exiv2-0.24/src/version.cpp 2014-12-04 09:30:39.667234130 +0100 -@@ -116,7 +116,6 @@ typedef string_v::iterator string_i; - #elif defined(__linux__) - # include - // http://syprog.blogspot.com/2011/12/listing-loaded-shared-objects-in-linux.html --# include "link.h" - # include - struct something - { diff --git a/package/exiv2/Config.in b/package/exiv2/Config.in index 9a7cf4467c3..8ca95ebcafd 100644 --- a/package/exiv2/Config.in +++ b/package/exiv2/Config.in @@ -1,10 +1,12 @@ -comment "exiv2 needs a toolchain w/ C++, dynamic library" - depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP +comment "exiv2 needs a toolchain w/ C++, wchar, dynamic library" + depends on BR2_STATIC_LIBS || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_USE_WCHAR config BR2_PACKAGE_EXIV2 bool "exiv2" depends on !BR2_STATIC_LIBS depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_WCHAR help Exiv2 is a C++ library and a command line utility to manage image metadata. It provides fast and easy read and write diff --git a/package/exiv2/exiv2.hash b/package/exiv2/exiv2.hash index d4f8c60765f..b1e78d2c949 100644 --- a/package/exiv2/exiv2.hash +++ b/package/exiv2/exiv2.hash @@ -1,4 +1,4 @@ # From http://www.exiv2.org/download.html -md5 b8a23dc56a98ede85c00718a97a8d6fc exiv2-0.24.tar.gz +md5 258d4831b30f75a01e0234065c6c2806 exiv2-0.25.tar.gz # Locally calculated -sha256 f4a443e6c7fb9d9f5e787732f76969a64c72c4c04af69b10ed57f949c2dfef8e exiv2-0.24.tar.gz +sha256 c80bfc778a15fdb06f71265db2c3d49d8493c382e516cb99b8c9f9cbde36efa4 exiv2-0.25.tar.gz diff --git a/package/exiv2/exiv2.mk b/package/exiv2/exiv2.mk index 93e36f725ff..45f92891996 100644 --- a/package/exiv2/exiv2.mk +++ b/package/exiv2/exiv2.mk @@ -4,7 +4,7 @@ # ################################################################################ -EXIV2_VERSION = 0.24 +EXIV2_VERSION = 0.25 EXIV2_SITE = http://www.exiv2.org EXIV2_INSTALL_STAGING = YES diff --git a/package/expat/0001-fix-CVE-2015-1283.patch b/package/expat/0001-fix-CVE-2015-1283.patch new file mode 100644 index 00000000000..cdebaa0fd79 --- /dev/null +++ b/package/expat/0001-fix-CVE-2015-1283.patch @@ -0,0 +1,76 @@ + +Signed-off-by: Gustavo Zacarias + +diff --git a/lib/xmlparse.c b/lib/xmlparse.c +--- a/lib/xmlparse.c ++++ b/lib/xmlparse.c +@@ -1648,29 +1648,40 @@ XML_ParseBuffer(XML_Parser parser, int l + XmlUpdatePosition(encoding, positionPtr, bufferPtr, &position); + positionPtr = bufferPtr; + return result; + } + + void * XMLCALL + XML_GetBuffer(XML_Parser parser, int len) + { ++/* BEGIN MOZILLA CHANGE (sanity check len) */ ++ if (len < 0) { ++ errorCode = XML_ERROR_NO_MEMORY; ++ return NULL; ++ } ++/* END MOZILLA CHANGE */ + switch (ps_parsing) { + case XML_SUSPENDED: + errorCode = XML_ERROR_SUSPENDED; + return NULL; + case XML_FINISHED: + errorCode = XML_ERROR_FINISHED; + return NULL; + default: ; + } + + if (len > bufferLim - bufferEnd) { +- /* FIXME avoid integer overflow */ + int neededSize = len + (int)(bufferEnd - bufferPtr); ++/* BEGIN MOZILLA CHANGE (sanity check neededSize) */ ++ if (neededSize < 0) { ++ errorCode = XML_ERROR_NO_MEMORY; ++ return NULL; ++ } ++/* END MOZILLA CHANGE */ + #ifdef XML_CONTEXT_BYTES + int keep = (int)(bufferPtr - buffer); + + if (keep > XML_CONTEXT_BYTES) + keep = XML_CONTEXT_BYTES; + neededSize += keep; + #endif /* defined XML_CONTEXT_BYTES */ + if (neededSize <= bufferLim - buffer) { +@@ -1689,17 +1700,25 @@ XML_GetBuffer(XML_Parser parser, int len + } + else { + char *newBuf; + int bufferSize = (int)(bufferLim - bufferPtr); + if (bufferSize == 0) + bufferSize = INIT_BUFFER_SIZE; + do { + bufferSize *= 2; +- } while (bufferSize < neededSize); ++/* BEGIN MOZILLA CHANGE (prevent infinite loop on overflow) */ ++ } while (bufferSize < neededSize && bufferSize > 0); ++/* END MOZILLA CHANGE */ ++/* BEGIN MOZILLA CHANGE (sanity check bufferSize) */ ++ if (bufferSize <= 0) { ++ errorCode = XML_ERROR_NO_MEMORY; ++ return NULL; ++ } ++/* END MOZILLA CHANGE */ + newBuf = (char *)MALLOC(bufferSize); + if (newBuf == 0) { + errorCode = XML_ERROR_NO_MEMORY; + return NULL; + } + bufferLim = newBuf + bufferSize; + #ifdef XML_CONTEXT_BYTES + if (bufferPtr) { + diff --git a/package/efl/expedite/Config.in b/package/expedite/Config.in similarity index 56% rename from package/efl/expedite/Config.in rename to package/expedite/Config.in index 1e121088ada..0bcf34349bf 100644 --- a/package/efl/expedite/Config.in +++ b/package/expedite/Config.in @@ -1,15 +1,12 @@ config BR2_PACKAGE_EXPEDITE bool "expedite" - select BR2_PACKAGE_LIBEINA - select BR2_PACKAGE_LIBEVAS - select BR2_PACKAGE_LIBEET + depends on BR2_PACKAGE_EFL depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_TOOLCHAIN_HAS_THREADS # libevas help Expedite is the official Evas benchmark tool. It can test different engines, such as X11, XRender, OpenGL (also ES variant), SDL, DirectFB and so on. Its tests are quite extensive, trying to reproduce real world usage cases. -comment "expedite needs a toolchain w/ C++, threads" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS +comment "expedite needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/efl/expedite/expedite.mk b/package/expedite/expedite.mk similarity index 55% rename from package/efl/expedite/expedite.mk rename to package/expedite/expedite.mk index 02a4ca08c50..8754dc0da76 100644 --- a/package/efl/expedite/expedite.mk +++ b/package/expedite/expedite.mk @@ -4,14 +4,19 @@ # ################################################################################ -EXPEDITE_VERSION = $(EFL_VERSION) -EXPEDITE_SITE = http://download.enlightenment.org/releases +# efl-1.15 branch +EXPEDITE_VERSION = 3ce8b3f1451700f9a2da60c2e717c644220e2449 +EXPEDITE_SITE = http://git.enlightenment.org/tools/expedite.git +EXPEDITE_SITE_METHOD = git EXPEDITE_LICENSE = BSD-2c EXPEDITE_LICENSE_FILES = COPYING -EXPEDITE_DEPENDENCIES = libevas libeina libeet +EXPEDITE_DEPENDENCIES = host-efl host-pkgconf efl -ifeq ($(BR2_PACKAGE_LIBEVAS_X11),y) +# There is no configure script in the git tree. +EXPEDITE_AUTORECONF = YES + +ifeq ($(BR2_PACKAGE_EFL_X_XLIB),y) EXPEDITE_CONF_OPTS += --with-x=$(STAGING_DIR) \ --x-includes=$(STAGING_DIR)/usr/include \ --x-libraries=$(STAGING_DIR)/usr/lib diff --git a/package/faifa/0001-sha2.c-explicitly-include-endian.h-for-BYTE_ORDER-ma.patch b/package/faifa/0001-sha2.c-explicitly-include-endian.h-for-BYTE_ORDER-ma.patch new file mode 100644 index 00000000000..79da360807a --- /dev/null +++ b/package/faifa/0001-sha2.c-explicitly-include-endian.h-for-BYTE_ORDER-ma.patch @@ -0,0 +1,32 @@ +From bfe43f4b4f249cee8c77059d7c89ebbc521d4d93 Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Mon, 14 Sep 2015 22:25:12 +0200 +Subject: [PATCH] sha2.c: explicitly include endian.h for BYTE_ORDER macro + +Fixes a build issue with the musl C library, which doesn't indirectly +include endian.h from any of the included system headers: + +http://autobuild.buildroot.net/results/17b/17bde543db253c008079b04c5e341f804160f59c/build-end.log + +Upstream-Status: submitted (https://github.com/ffainelli/faifa/pull/12) + +Signed-off-by: Peter Korsgaard +--- + sha2.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/sha2.c b/sha2.c +index f2f5132..4c8a72d 100644 +--- a/sha2.c ++++ b/sha2.c +@@ -40,6 +40,7 @@ + #include + #include + ++#include "endian.h" + #include "sha2.h" + + /* +-- +2.1.4 + diff --git a/package/faifa/0002-hpav_cfg.c-do-not-include-linux-if_ether.h-for-musl-.patch b/package/faifa/0002-hpav_cfg.c-do-not-include-linux-if_ether.h-for-musl-.patch new file mode 100644 index 00000000000..6f340c35098 --- /dev/null +++ b/package/faifa/0002-hpav_cfg.c-do-not-include-linux-if_ether.h-for-musl-.patch @@ -0,0 +1,32 @@ +From 36eed08a3783df6bb8d92d3c80cd47d0660eeb12 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 30 Jan 2016 16:27:37 +0100 +Subject: [PATCH 1/1] hpav_cfg.c: do not include linux/if_ether.h for musl + compatibility + +Fixes a build issue with the musl C library +http://autobuild.buildroot.net/results/dc6/dc6e4d7327d2031ef921cccd814605dec73a0f9c/build-end.log + +Patch sent upstream: https://github.com/ffainelli/faifa/pull/13 + +Signed-off-by: Bernd Kuhls +--- + hpav_cfg.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/hpav_cfg.c b/hpav_cfg.c +index 7cc53af..45d3f0a 100644 +--- a/hpav_cfg.c ++++ b/hpav_cfg.c +@@ -53,8 +53,6 @@ + #include + #include + +-#include +- + #include "homeplug_av.h" + #include "crypto.h" + +-- +2.7.0.rc3 + diff --git a/package/fakeroot/fakeroot.hash b/package/fakeroot/fakeroot.hash index c9e1f0c6ee6..f0d436e5c30 100644 --- a/package/fakeroot/fakeroot.hash +++ b/package/fakeroot/fakeroot.hash @@ -1,2 +1,4 @@ -# From http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/f/fakeroot/fakeroot_1.18.4-2.debian.tar.gz -sha256 0a359efa3e9496c33234b3e9c89306a09bb4da9d33de43c261f1d8447e6ebea2 fakeroot_1.18.4.orig.tar.bz2 +# From http://snapshot.debian.org/package/fakeroot/1.20.2-1/ +sha1 367040df07043edb630942b21939e493f3fad888 fakeroot_1.20.2.orig.tar.bz2 +# Calculated based on the hash above +sha256 7c0a164d19db3efa9e802e0fc7cdfeff70ec6d26cdbdc4338c9c2823c5ea230c fakeroot_1.20.2.orig.tar.bz2 diff --git a/package/fakeroot/fakeroot.mk b/package/fakeroot/fakeroot.mk index 3f1c8037fa6..168cd13a488 100644 --- a/package/fakeroot/fakeroot.mk +++ b/package/fakeroot/fakeroot.mk @@ -4,9 +4,16 @@ # ################################################################################ -FAKEROOT_VERSION = 1.18.4 +FAKEROOT_VERSION = 1.20.2 FAKEROOT_SOURCE = fakeroot_$(FAKEROOT_VERSION).orig.tar.bz2 -FAKEROOT_SITE = http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/f/fakeroot +FAKEROOT_SITE = http://snapshot.debian.org/archive/debian/20141005T221953Z/pool/main/f/fakeroot +# Force capabilities detection off +# For now these are process capabilities (faked) rather than file +# so they're of no real use +HOST_FAKEROOT_CONF_ENV = \ + ac_cv_header_sys_capability_h=no \ + ac_cv_func_capset=no + FAKEROOT_LICENSE = GPLv3+ FAKEROOT_LICENSE_FILES = COPYING diff --git a/package/fan-ctrl/Config.in b/package/fan-ctrl/Config.in index fa23aed6947..869631683b2 100644 --- a/package/fan-ctrl/Config.in +++ b/package/fan-ctrl/Config.in @@ -1,9 +1,6 @@ config BR2_PACKAGE_FAN_CTRL bool "fan-ctrl" depends on BR2_USE_MMU # fork() - # SourceForge is down, not backup location, let's disable for - # now. - depends on BR2_BROKEN help Fan-ctrl is a little daemon that controls the speed of one or more system or CPU fans. It does so by monitoring diff --git a/package/fastd/0001-cmake-use-INTERPROCEDURAL_OPTIMIZATION-target-proper.patch b/package/fastd/0001-cmake-use-INTERPROCEDURAL_OPTIMIZATION-target-proper.patch new file mode 100644 index 00000000000..99d20c694e7 --- /dev/null +++ b/package/fastd/0001-cmake-use-INTERPROCEDURAL_OPTIMIZATION-target-proper.patch @@ -0,0 +1,84 @@ +From: Alexander Dahl +Date: Wed, 28 Oct 2015 16:04:13 +0100 +Subject: [PATCH] cmake: use INTERPROCEDURAL_OPTIMIZATION target property + +Instead of hacking on compiler flags use the cmake way for handling +interprocedural optimization. Tests showed cmake currently ignores this +for gcc and clang, at least on Debian Wheezy and Jessie. This actually +results in no interprocedural optimization for the moment. However it +allows to compile fastd against a toolchain without LTO support, which +was broken because of a hack included here for finding binutils. + +According to the upstream author of fastd the main reason for enabling +LTO was binary size on an OpenWRT target for Freifunk Gluon, where they +have very few space left on devices with only 4 MB flash memory. + +Signed-off-by: Alexander Dahl +--- + cmake/CMakeFindBinUtils.cmake | 7 ------- + cmake/checks.cmake | 14 -------------- + src/CMakeLists.txt | 9 +++++++++ + 3 files changed, 9 insertions(+), 21 deletions(-) + delete mode 100644 cmake/CMakeFindBinUtils.cmake + +diff --git a/cmake/CMakeFindBinUtils.cmake b/cmake/CMakeFindBinUtils.cmake +deleted file mode 100644 +index 753577a..0000000 +--- a/cmake/CMakeFindBinUtils.cmake ++++ /dev/null +@@ -1,7 +0,0 @@ +-if(CMAKE_COMPILER_IS_GNUCC) +- find_program(CMAKE_AR NAMES ${_CMAKE_TOOLCHAIN_PREFIX}gcc-ar HINTS ${_CMAKE_TOOLCHAIN_LOCATION}) +- find_program(CMAKE_NM NAMES ${_CMAKE_TOOLCHAIN_PREFIX}gcc-nm HINTS ${_CMAKE_TOOLCHAIN_LOCATION}) +- find_program(CMAKE_RANLIB NAMES ${_CMAKE_TOOLCHAIN_PREFIX}gcc-ranlib HINTS ${_CMAKE_TOOLCHAIN_LOCATION}) +-endif(CMAKE_COMPILER_IS_GNUCC) +- +-include(${CMAKE_ROOT}/Modules/CMakeFindBinUtils.cmake) +diff --git a/cmake/checks.cmake b/cmake/checks.cmake +index f9f0399..3c1f38b 100644 +--- a/cmake/checks.cmake ++++ b/cmake/checks.cmake +@@ -10,20 +10,6 @@ if(ARCH_X86 OR ARCH_X86_64) + endif(ARCH_X86 OR ARCH_X86_64) + + +- +-if(ENABLE_LTO) +- set(CFLAGS_LTO "-flto") +- set(CFLAGS_NO_LTO "-fno-lto") +- +- check_c_compiler_flag("-fwhole-program" HAVE_FLAG_WHOLE_PROGRAM) +- if(HAVE_FLAG_WHOLE_PROGRAM) +- set(LDFLAGS_LTO "-flto -fwhole-program") +- else(HAVE_FLAG_WHOLE_PROGRAM) +- set(LDFLAGS_LTO "-flto") +- endif(HAVE_FLAG_WHOLE_PROGRAM) +-endif(ENABLE_LTO) +- +- + check_c_source_compiles(" + #include + #include +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index e7dd5d1..4991656 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -47,6 +47,15 @@ add_executable(fastd + set_property(TARGET fastd PROPERTY COMPILE_FLAGS "${FASTD_CFLAGS}") + set_property(TARGET fastd PROPERTY LINK_FLAGS "${PTHREAD_LDFLAGS} ${UECC_LDFLAGS_OTHER} ${NACL_LDFLAGS_OTHER} ${OPENSSL_CRYPTO_LDFLAGS_OTHER} ${JSONC_LDFLAGS_OTHER} ${LDFLAGS_LTO}") + set_property(TARGET fastd APPEND PROPERTY INCLUDE_DIRECTORIES ${CAP_INCLUDE_DIR} ${NACL_INCLUDE_DIRS} ${JSONC_INCLUDE_DIRS}) ++if(ENABLE_LTO) ++ set_target_properties(fastd PROPERTIES ++ INTERPROCEDURAL_OPTIMIZATION ON ++ ) ++else(ENABLE_LTO) ++ set_target_properties(fastd PROPERTIES ++ INTERPROCEDURAL_OPTIMIZATION OFF ++ ) ++endif(ENABLE_LTO) + target_link_libraries(fastd protocols methods ciphers macs ${RT_LIBRARY} ${CAP_LIBRARY} ${UECC_LIBRARIES} ${NACL_LIBRARIES} ${OPENSSL_CRYPTO_LIBRARIES} ${JSONC_LIBRARIES}) + + add_dependencies(fastd version) +-- +2.1.4 + diff --git a/package/fastd/0002-Don-t-depend-on-net-if_ether.h.patch b/package/fastd/0002-Don-t-depend-on-net-if_ether.h.patch new file mode 100644 index 00000000000..9036ae58d16 --- /dev/null +++ b/package/fastd/0002-Don-t-depend-on-net-if_ether.h.patch @@ -0,0 +1,261 @@ +From 8ed750311482824e427db3b8b2cec6842ea8bc96 Mon Sep 17 00:00:00 2001 +From: Matthias Schiffer +Date: Thu, 25 Jun 2015 01:03:23 +0200 +Subject: [PATCH] Don't depend on net/if_ether.h + +Instead of adding compatiblity code to make this work with musl, just +duplicate the needed definitions in fastd. + +[Backport from upstream commit 9ac7f3588dda7d175e04878e7b871a88306d13bf. +Fixes missing 'sys/queue.h' issue when building with musl.] + +Signed-off-by: Rodrigo Rebello +--- + cmake/checks.cmake | 5 ----- + src/compat.h | 22 ---------------------- + src/config.y | 1 + + src/fastd.h | 15 +++++++++++---- + src/fastd_config.h.in | 3 --- + src/log.c | 2 +- + src/peer.c | 7 ++++--- + src/receive.c | 2 +- + src/send.c | 2 +- + src/socket.c | 2 ++ + src/status.c | 1 + + src/types.h | 1 + + 12 files changed, 23 insertions(+), 40 deletions(-) + +diff --git a/cmake/checks.cmake b/cmake/checks.cmake +index f9f0399..62d52ff 100644 +--- a/cmake/checks.cmake ++++ b/cmake/checks.cmake +@@ -54,11 +54,6 @@ if(NOT DARWIN) + endif(NOT DARWIN) + + +-set(CMAKE_EXTRA_INCLUDE_FILES "netinet/if_ether.h") +-check_type_size("struct ethhdr" SIZEOF_ETHHDR) +-string(COMPARE NOTEQUAL "${SIZEOF_ETHHDR}" "" HAVE_ETHHDR) +- +- + set(CMAKE_REQUIRED_INCLUDES "sys/types.h") + + if(NOT DARWIN) +diff --git a/src/compat.h b/src/compat.h +index 991c268..29c9253 100644 +--- a/src/compat.h ++++ b/src/compat.h +@@ -39,32 +39,10 @@ + #include + + #include +-#include + #include + +-#include +-#include + #include +-#include + +-#ifndef ETH_ALEN +-/** The length of a MAC address */ +-#define ETH_ALEN 6 +-#endif +- +-#ifndef ETH_HLEN +-/** The length of the standard ethernet header */ +-#define ETH_HLEN 14 +-#endif +- +-#ifndef HAVE_ETHHDR +-/** An ethernet header */ +-struct ethhdr { +- uint8_t h_dest[ETH_ALEN]; /**< The destination MAC address field */ +- uint8_t h_source[ETH_ALEN]; /**< The source MAC address field */ +- uint16_t h_proto; /**< The EtherType/length field */ +-} __attribute__((packed)); +-#endif + + #if defined(USE_FREEBIND) && !defined(IP_FREEBIND) + /** Compatiblity define for systems supporting, but not defining IP_FREEBIND */ +diff --git a/src/config.y b/src/config.y +index f2f597f..5b00d7c 100644 +--- a/src/config.y ++++ b/src/config.y +@@ -33,6 +33,7 @@ + %code requires { + #include + #include ++ #include + } + + %union { +diff --git a/src/fastd.h b/src/fastd.h +index f1b2f93..ec2316b 100644 +--- a/src/fastd.h ++++ b/src/fastd.h +@@ -58,7 +58,14 @@ + + /** An ethernet address */ + struct __attribute__((__packed__)) fastd_eth_addr { +- uint8_t data[ETH_ALEN]; /**< The bytes of the address */ ++ uint8_t data[6]; /**< The bytes of the address */ ++}; ++ ++/** An ethernet header */ ++struct __attribute__((packed)) fastd_eth_header { ++ fastd_eth_addr_t dest; /**< The destination MAC address field */ ++ fastd_eth_addr_t source; /**< The source MAC address field */ ++ uint16_t proto; /**< The EtherType/length field */ + }; + + +@@ -408,7 +415,7 @@ static inline void fastd_setnonblock(int fd) { + static inline size_t fastd_max_payload(void) { + switch (conf.mode) { + case MODE_TAP: +- return conf.mtu+ETH_HLEN; ++ return conf.mtu + sizeof(fastd_eth_header_t); + case MODE_TUN: + return conf.mtu; + default: +@@ -420,14 +427,14 @@ static inline size_t fastd_max_payload(void) { + /** Returns the source address of an ethernet packet */ + static inline fastd_eth_addr_t fastd_buffer_source_address(const fastd_buffer_t buffer) { + fastd_eth_addr_t ret; +- memcpy(&ret, buffer.data+offsetof(struct ethhdr, h_source), ETH_ALEN); ++ memcpy(&ret, buffer.data + offsetof(fastd_eth_header_t, source), sizeof(fastd_eth_addr_t)); + return ret; + } + + /** Returns the destination address of an ethernet packet */ + static inline fastd_eth_addr_t fastd_buffer_dest_address(const fastd_buffer_t buffer) { + fastd_eth_addr_t ret; +- memcpy(&ret, buffer.data+offsetof(struct ethhdr, h_dest), ETH_ALEN); ++ memcpy(&ret, buffer.data + offsetof(fastd_eth_header_t, dest), sizeof(fastd_eth_addr_t)); + return ret; + } + +diff --git a/src/fastd_config.h.in b/src/fastd_config.h.in +index 6a55930..5f9c868 100644 +--- a/src/fastd_config.h.in ++++ b/src/fastd_config.h.in +@@ -35,9 +35,6 @@ + /** Defined if the platform supports the AI_ADDRCONFIG flag to getaddrinfo() */ + #cmakedefine HAVE_AI_ADDRCONFIG + +-/** Defined if the platform defines the \e ethhdr struct */ +-#cmakedefine HAVE_ETHHDR +- + /** Defined if the platform defines get_current_dir_name() */ + #cmakedefine HAVE_GET_CURRENT_DIR_NAME + +diff --git a/src/log.c b/src/log.c +index 7d1538a..0727bbb 100644 +--- a/src/log.c ++++ b/src/log.c +@@ -74,7 +74,7 @@ size_t fastd_snprint_peer_address(char *buffer, size_t size, const fastd_peer_ad + if (!bind_address && hide) + return snprintf_safe(buffer, size, "[hidden]:%u", ntohs(address->in6.sin6_port)); + if (inet_ntop(AF_INET6, &address->in6.sin6_addr, addr_buf, sizeof(addr_buf))) { +- char ifname_buf[IF_NAMESIZE]; ++ char ifname_buf[IFNAMSIZ]; + if (!iface && IN6_IS_ADDR_LINKLOCAL(&address->in6.sin6_addr)) + iface = if_indextoname(address->in6.sin6_scope_id, ifname_buf); + +diff --git a/src/peer.c b/src/peer.c +index 9ce5ca2..3313112 100644 +--- a/src/peer.c ++++ b/src/peer.c +@@ -34,13 +34,14 @@ + #include "poll.h" + + #include ++#include + #include + + + /** Adds peer-specific fields to \e env */ + void fastd_peer_set_shell_env(fastd_shell_env_t *env, const fastd_peer_t *peer, const fastd_peer_address_t *local_addr, const fastd_peer_address_t *peer_addr) { +- /* both INET6_ADDRSTRLEN and IFNAMESIZE already include space for the zero termination, so there is no need to add space for the '%' here. */ +- char buf[INET6_ADDRSTRLEN+IF_NAMESIZE]; ++ /* both INET6_ADDRSTRLEN and IFNAMSIZ already include space for the zero termination, so there is no need to add space for the '%' here. */ ++ char buf[INET6_ADDRSTRLEN+IFNAMSIZ]; + + fastd_shell_env_set(env, "PEER_NAME", peer ? peer->name : NULL); + +@@ -850,7 +851,7 @@ void fastd_peer_set_established(fastd_peer_t *peer) { + + /** Compares two MAC addresses */ + static inline int eth_addr_cmp(const fastd_eth_addr_t *addr1, const fastd_eth_addr_t *addr2) { +- return memcmp(addr1->data, addr2->data, ETH_ALEN); ++ return memcmp(addr1->data, addr2->data, sizeof(fastd_eth_addr_t)); + } + + /** Compares two fastd_peer_eth_addr_t entries by their MAC addresses */ +diff --git a/src/receive.c b/src/receive.c +index 2ee402a..6db5cfd 100644 +--- a/src/receive.c ++++ b/src/receive.c +@@ -289,7 +289,7 @@ void fastd_receive(fastd_socket_t *sock) { + /** Handles a received and decrypted payload packet */ + void fastd_handle_receive(fastd_peer_t *peer, fastd_buffer_t buffer, bool reordered) { + if (conf.mode == MODE_TAP) { +- if (buffer.len < ETH_HLEN) { ++ if (buffer.len < sizeof(fastd_eth_header_t)) { + pr_debug("received truncated packet"); + fastd_buffer_free(buffer); + return; +diff --git a/src/send.c b/src/send.c +index caa7312..6d9f66f 100644 +--- a/src/send.c ++++ b/src/send.c +@@ -209,7 +209,7 @@ static inline bool send_data_tap_single(fastd_buffer_t buffer, fastd_peer_t *sou + if (conf.mode != MODE_TAP) + return false; + +- if (buffer.len < ETH_HLEN) { ++ if (buffer.len < sizeof(fastd_eth_header_t)) { + pr_debug("truncated ethernet packet"); + fastd_buffer_free(buffer); + return true; +diff --git a/src/socket.c b/src/socket.c +index e932148..03a11a6 100644 +--- a/src/socket.c ++++ b/src/socket.c +@@ -32,6 +32,8 @@ + #include "fastd.h" + #include "poll.h" + ++#include ++ + + /** + Creates a new socket bound to a specific address +diff --git a/src/status.c b/src/status.c +index d0b8511..27d6b38 100644 +--- a/src/status.c ++++ b/src/status.c +@@ -39,6 +39,7 @@ + #include "peer.h" + + #include ++#include + #include + + +diff --git a/src/types.h b/src/types.h +index f380541..b684621 100644 +--- a/src/types.h ++++ b/src/types.h +@@ -87,6 +87,7 @@ typedef struct fastd_bind_address fastd_bind_address_t; + typedef struct fastd_socket fastd_socket_t; + typedef struct fastd_peer_group fastd_peer_group_t; + typedef struct fastd_eth_addr fastd_eth_addr_t; ++typedef struct fastd_eth_header fastd_eth_header_t; + typedef struct fastd_peer fastd_peer_t; + typedef struct fastd_peer_eth_addr fastd_peer_eth_addr_t; + typedef struct fastd_remote fastd_remote_t; +-- +2.1.4 + diff --git a/package/fastd/Config.in b/package/fastd/Config.in new file mode 100644 index 00000000000..55bdbd632f8 --- /dev/null +++ b/package/fastd/Config.in @@ -0,0 +1,31 @@ +config BR2_PACKAGE_FASTD + bool "fastd" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # libcap + depends on !BR2_STATIC_LIBS # libuecc + select BR2_PACKAGE_LIBUECC + select BR2_PACKAGE_LIBSODIUM + select BR2_PACKAGE_LIBCAP + help + Fast and Secure Tunneling Daemon + + https://projects.universe-factory.net/projects/fastd/wiki + +if BR2_PACKAGE_FASTD + +config BR2_PACKAGE_FASTD_STATUS_SOCKET + bool "status socket support" + default y + select BR2_PACKAGE_JSON_C + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c + help + Enable support for a socket to get fastd's status. + +endif + +comment "fastd needs a toolchain w/ threads, headers >= 3.0, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 \ + || BR2_STATIC_LIBS diff --git a/package/fastd/fastd.mk b/package/fastd/fastd.mk new file mode 100644 index 00000000000..4c2626f3b0c --- /dev/null +++ b/package/fastd/fastd.mk @@ -0,0 +1,40 @@ +################################################################################ +# +# fastd +# +################################################################################ + +FASTD_VERSION = v17 +FASTD_SITE = git://git.universe-factory.net/fastd +FASTD_LICENSE = BSD-2c +FASTD_LICENSE_FILES = COPYRIGHT +FASTD_CONF_OPTS = -DENABLE_LIBSODIUM=ON +FASTD_DEPENDENCIES = host-bison host-pkgconf libuecc libsodium libcap + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +FASTD_CONF_OPTS += -DENABLE_OPENSSL=ON +FASTD_DEPENDENCIES += openssl +else +FASTD_CONF_OPTS += -DENABLE_OPENSSL=OFF +endif + +ifeq ($(BR2_PACKAGE_FASTD_STATUS_SOCKET),y) +FASTD_CONF_OPTS += -DWITH_STATUS_SOCKET=ON +FASTD_DEPENDENCIES += json-c +else +FASTD_CONF_OPTS += -DWITH_STATUS_SOCKET=OFF +endif + +ifeq ($(BR2_INIT_SYSTEMD),y) +FASTD_CONF_OPTS += -DENABLE_SYSTEMD=ON +else +FASTD_CONF_OPTS += -DENABLE_SYSTEMD=OFF +endif + +ifeq ($(BR2_GCC_ENABLE_LTO),y) +FASTD_CONF_OPTS += -DENABLE_LTO=ON +else +FASTD_CONF_OPTS += -DENABLE_LTO=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/fbgrab/fbgrab.hash b/package/fbgrab/fbgrab.hash index 4652f2c8a59..de3bc1ffd77 100644 --- a/package/fbgrab/fbgrab.hash +++ b/package/fbgrab/fbgrab.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 61e0772ad6ea744ee597ae478398ddd0ba6fceee2cf343859bebde2c15bafb91 fbgrab-1.2.tar.gz +sha256 5fab478cbf8731fbacefaa76236a8f8b38ccff920c53b3a8253bc35509fba8ed fbgrab-1.3.tar.gz diff --git a/package/fbgrab/fbgrab.mk b/package/fbgrab/fbgrab.mk index b60da9a497d..4455423126d 100644 --- a/package/fbgrab/fbgrab.mk +++ b/package/fbgrab/fbgrab.mk @@ -4,7 +4,7 @@ # ################################################################################ -FBGRAB_VERSION = 1.2 +FBGRAB_VERSION = 1.3 FBGRAB_SITE = http://fbgrab.monells.se FBGRAB_DEPENDENCIES = libpng FBGRAB_LICENSE = GPLv2 diff --git a/package/fbterm/0001-fbio.cpp-improxy.cpp-fbterm.cpp-fix-musl-compile.patch b/package/fbterm/0001-fbio.cpp-improxy.cpp-fbterm.cpp-fix-musl-compile.patch new file mode 100644 index 00000000000..27e1e910680 --- /dev/null +++ b/package/fbterm/0001-fbio.cpp-improxy.cpp-fbterm.cpp-fix-musl-compile.patch @@ -0,0 +1,70 @@ +From 1072d60c6c8f1f51feb740527a8a056bfead9318 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Thu, 8 Oct 2015 19:53:47 +0200 +Subject: [PATCH] fbio.cpp, improxy.cpp, fbterm.cpp: fix musl compile +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +- add missing include, fixes: + + fbio.cpp:33:8: error: ‘fd_set’ does not name a type + static fd_set fds; + + improxy.cpp:439:3: error: ‘fd_set’ was not declared in this scope + +- add missing WAIT_ANY define, fixes: + + fbterm.cpp: In member function ‘void FbTerm::processSignal(u32)’: + fbterm.cpp:212:22: error: ‘WAIT_ANY’ was not declared in this scope + s32 pid = waitpid(WAIT_ANY, 0, WNOHANG); + +Signed-off-by: Peter Seiderer +--- + src/fbio.cpp | 1 + + src/fbterm.cpp | 4 ++++ + src/improxy.cpp | 1 + + 3 files changed, 6 insertions(+) + +diff --git a/src/fbio.cpp b/src/fbio.cpp +index e5afc44..88c632c 100644 +--- a/src/fbio.cpp ++++ b/src/fbio.cpp +@@ -30,6 +30,7 @@ + #define NR_EPOLL_FDS 10 + s32 epollFd; + #else ++#include + static fd_set fds; + static u32 maxfd = 0; + #endif +diff --git a/src/fbterm.cpp b/src/fbterm.cpp +index 38d4014..60288e4 100644 +--- a/src/fbterm.cpp ++++ b/src/fbterm.cpp +@@ -37,6 +37,10 @@ + #include "input_key.h" + #include "mouse.h" + ++#ifndef WAIT_ANY ++#define WAIT_ANY (-1) ++#endif ++ + #ifdef HAVE_SIGNALFD + // offered by some systems has bug with g++ + #include "signalfd.h" +diff --git a/src/improxy.cpp b/src/improxy.cpp +index 3d03e66..4e046d2 100644 +--- a/src/improxy.cpp ++++ b/src/improxy.cpp +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + #include + #include "improxy.h" + #include "immessage.h" +-- +2.1.4 + diff --git a/package/fbterm/0002-mouse.cpp-fix-musl-compile.patch b/package/fbterm/0002-mouse.cpp-fix-musl-compile.patch new file mode 100644 index 00000000000..5182d8ba61d --- /dev/null +++ b/package/fbterm/0002-mouse.cpp-fix-musl-compile.patch @@ -0,0 +1,30 @@ +From a34dba99aff2994269ee347da67feb7ede9b1a67 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Thu, 18 Feb 2016 22:32:38 +0100 +Subject: [PATCH] mouse.cpp: fix musl compile + +Add missing include, fixes: + + mouse.cpp:58:37: error: 'memset' was not declared in this scope + mouse.cpp:60:64: error: 'strncpy' was not declared in this scope + +Signed-off-by: Peter Seiderer +--- + src/mouse.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/mouse.cpp b/src/mouse.cpp +index 0435dd9..f173137 100644 +--- a/src/mouse.cpp ++++ b/src/mouse.cpp +@@ -27,6 +27,7 @@ DEFINE_INSTANCE(Mouse) + #include + #include + #include ++#include + #include + #include + #include +-- +2.1.4 + diff --git a/package/fbterm/fbterm.mk b/package/fbterm/fbterm.mk index d78d6b75af1..7a424a5e9bd 100644 --- a/package/fbterm/fbterm.mk +++ b/package/fbterm/fbterm.mk @@ -16,4 +16,11 @@ ifeq ($(BR2_STATIC_LIBS)$(BR2_TOOLCHAIN_HAS_THREADS),yy) FBTERM_CONF_ENV += LIBS='-lpthread' endif +ifeq ($(BR2_PACKAGE_GPM),y) +FBTERM_DEPENDENCIES += gpm +FBTERM_CONF_OPTS += --enable-gpm +else +FBTERM_CONF_OPTS += --disable-gpm +endif + $(eval $(autotools-package)) diff --git a/package/fdk-aac/fdk-aac.hash b/package/fdk-aac/fdk-aac.hash index 8f839511089..28a1eeeb93b 100644 --- a/package/fdk-aac/fdk-aac.hash +++ b/package/fdk-aac/fdk-aac.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 a9cb872802cfb7a2aff7a549c114c547d1e518dd60c2f85942229cc20c0d0c8d fdk-aac-0.1.3.tar.gz +sha256 5910fe788677ca13532e3f47b7afaa01d72334d46a2d5e1d1f080f1173ff15ab fdk-aac-0.1.4.tar.gz diff --git a/package/fdk-aac/fdk-aac.mk b/package/fdk-aac/fdk-aac.mk index 0a97291c341..a872c540880 100644 --- a/package/fdk-aac/fdk-aac.mk +++ b/package/fdk-aac/fdk-aac.mk @@ -4,7 +4,7 @@ # ################################################################################ -FDK_AAC_VERSION = 0.1.3 +FDK_AAC_VERSION = 0.1.4 FDK_AAC_SITE = http://downloads.sourceforge.net/project/opencore-amr/fdk-aac FDK_AAC_LICENSE = fdk-aac license FDK_AAC_LICENSE_FILES = NOTICE diff --git a/package/feh/feh.hash b/package/feh/feh.hash index 2ba2b010ab8..396f33d2b54 100644 --- a/package/feh/feh.hash +++ b/package/feh/feh.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 865088d0481f6862d79d7c08d7b6cf1d25058a74a5784e511a1422fea8aba980 feh-2.13.1.tar.bz2 +sha256 3829cd8995ec7cc08095a2b22a6c98d1e2638bd87c8b4f0e85a059c6f0edbc48 feh-2.14.tar.bz2 diff --git a/package/feh/feh.mk b/package/feh/feh.mk index 1fcec2090e9..7381e252752 100644 --- a/package/feh/feh.mk +++ b/package/feh/feh.mk @@ -4,7 +4,7 @@ # ################################################################################ -FEH_VERSION = 2.13.1 +FEH_VERSION = 2.14 FEH_SOURCE = feh-$(FEH_VERSION).tar.bz2 FEH_SITE = http://feh.finalrewind.org FEH_DEPENDENCIES = libcurl imlib2 libpng xlib_libXinerama xlib_libXt @@ -18,7 +18,7 @@ endef define FEH_INSTALL_TARGET_CMDS $(MAKE1) CC="$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) " \ - DESTDIR=$(TARGET_DIR) -C $(@D) install + PREFIX=/usr DESTDIR=$(TARGET_DIR) -C $(@D) install endef $(eval $(generic-package)) diff --git a/package/fetchmail/0002-enable-libressl.patch b/package/fetchmail/0002-enable-libressl.patch new file mode 100644 index 00000000000..a98e19dda49 --- /dev/null +++ b/package/fetchmail/0002-enable-libressl.patch @@ -0,0 +1,67 @@ +Fetched from upstream git and tweaked for the release: +https://gitlab.com/fetchmail/fetchmail/commit/a2ae6f8d15d7caf815d7bdd13df833fd1b2af5cc + +Signed-off-by: Gustavo Zacarias + +diff -Nura fetchmail-6.3.26.orig/config.h.in fetchmail-6.3.26/config.h.in +--- fetchmail-6.3.26.orig/config.h.in 2015-12-30 10:44:33.467746835 -0300 ++++ fetchmail-6.3.26/config.h.in 2015-12-30 10:45:50.271403589 -0300 +@@ -53,6 +53,10 @@ + if you don't. */ + #undef HAVE_DECL_SSLV2_CLIENT_METHOD + ++/* Define to 1 if you have the declaration of `SSLv3_client_method', and to 0 ++ if you don't. */ ++#undef HAVE_DECL_SSLV3_CLIENT_METHOD ++ + /* Define to 1 if you have the declaration of `strerror', and to 0 if you + don't. */ + #undef HAVE_DECL_STRERROR +diff -Nura fetchmail-6.3.26.orig/configure.ac fetchmail-6.3.26/configure.ac +--- fetchmail-6.3.26.orig/configure.ac 2015-12-30 10:44:33.465746766 -0300 ++++ fetchmail-6.3.26/configure.ac 2015-12-30 10:46:03.708868409 -0300 +@@ -803,6 +803,7 @@ + + case "$LIBS" in *-lssl*) + AC_CHECK_DECLS([SSLv2_client_method],,,[#include ]) ++ AC_CHECK_DECLS([SSLv3_client_method],,,[#include ]) + ;; + esac + +diff -Nura fetchmail-6.3.26.orig/fetchmail.c fetchmail-6.3.26/fetchmail.c +--- fetchmail-6.3.26.orig/fetchmail.c 2015-12-30 10:44:33.469746904 -0300 ++++ fetchmail-6.3.26/fetchmail.c 2015-12-30 10:46:03.708868409 -0300 +@@ -263,6 +263,12 @@ + #ifdef SSL_ENABLE + "+SSL" + #endif ++#if HAVE_DECL_SSLV2_CLIENT_METHOD + 0 == 0 ++ "-SSLv2" ++#endif ++#if HAVE_DECL_SSLV3_CLIENT_METHOD + 0 == 0 ++ "-SSLv3" ++#endif + #ifdef OPIE_ENABLE + "+OPIE" + #endif /* OPIE_ENABLE */ +diff -Nura fetchmail-6.3.26.orig/socket.c fetchmail-6.3.26/socket.c +--- fetchmail-6.3.26.orig/socket.c 2015-12-30 10:44:33.464746731 -0300 ++++ fetchmail-6.3.26/socket.c 2015-12-30 10:46:03.709868443 -0300 +@@ -910,11 +910,16 @@ + #if HAVE_DECL_SSLV2_CLIENT_METHOD + 0 > 0 + _ctx[sock] = SSL_CTX_new(SSLv2_client_method()); + #else +- report(stderr, GT_("Your operating system does not support SSLv2.\n")); ++ report(stderr, GT_("Your OpenSSL version does not support SSLv2.\n")); + return -1; + #endif + } else if(!strcasecmp("ssl3",myproto)) { ++#if HAVE_DECL_SSLV3_CLIENT_METHOD + 0 > 0 + _ctx[sock] = SSL_CTX_new(SSLv3_client_method()); ++#else ++ report(stderr, GT_("Your OpenSSL version does not support SSLv3.\n")); ++ return -1; ++#endif + } else if(!strcasecmp("tls1",myproto)) { + _ctx[sock] = SSL_CTX_new(TLSv1_client_method()); + } else if (!strcasecmp("ssl23",myproto)) { diff --git a/package/ffmpeg/0016-ranlib.patch b/package/ffmpeg/0016-ranlib.patch deleted file mode 100644 index e88b25f1b4a..00000000000 --- a/package/ffmpeg/0016-ranlib.patch +++ /dev/null @@ -1,35 +0,0 @@ -Fix ranlib check when cross-compiling - -Without this patch /usr/bin/ranlib is tested for "-D", not ranlib from the -cross-compiler suite being in use. - -Signed-off-by: Bernd Kuhls - -diff -uNr ffmpeg-2.6.2.org/configure ffmpeg-2.6.2/configure ---- ffmpeg-2.6.2.org/configure 2015-04-12 00:47:55.000000000 +0200 -+++ ffmpeg-2.6.2/configure 2015-04-16 21:53:24.313202517 +0200 -@@ -2719,11 +2719,6 @@ - nm_default="nm -g" - objformat="elf" - pkg_config_default=pkg-config --if ranlib 2>&1 | grep -q "\-D "; then -- ranlib_default="ranlib -D" --else -- ranlib_default="ranlib" --fi - strip_default="strip" - yasmexe_default="yasm" - windres_default="windres" -@@ -3001,6 +2996,12 @@ - die "Must specify target arch and OS when cross-compiling" - fi - -+if "${cross_prefix}ranlib" 2>&1 | grep -q "\-D "; then -+ ranlib_default="ranlib -D" -+else -+ ranlib_default="ranlib" -+fi -+ - test -n "$valgrind" && toolchain="valgrind-memcheck" - - case "$toolchain" in diff --git a/package/ffmpeg/Config.in b/package/ffmpeg/Config.in index e5981fee55c..a273aead2c5 100644 --- a/package/ffmpeg/Config.in +++ b/package/ffmpeg/Config.in @@ -1,8 +1,7 @@ menuconfig BR2_PACKAGE_FFMPEG bool "ffmpeg" - # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2 + depends on !BR2_nios2 help FFmpeg is a complete, cross-platform solution to record, convert and stream audio and video. diff --git a/package/ffmpeg/ffmpeg.hash b/package/ffmpeg/ffmpeg.hash index 2e6b4137c1f..8643bff6eac 100644 --- a/package/ffmpeg/ffmpeg.hash +++ b/package/ffmpeg/ffmpeg.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 7ceb7550ad628c526fa6c9ff23fdfb687a62f54d90c4a730998d8c2b417b9ef2 ffmpeg-2.7.2.tar.bz2 +sha256 25bcedbdafadac3d09c325c1d46a51f53d858b26a260d5aed6b4f17fea6e07fa ffmpeg-2.8.6.tar.xz diff --git a/package/ffmpeg/ffmpeg.mk b/package/ffmpeg/ffmpeg.mk index 54c9f5232d9..ddfac20740c 100644 --- a/package/ffmpeg/ffmpeg.mk +++ b/package/ffmpeg/ffmpeg.mk @@ -4,8 +4,8 @@ # ################################################################################ -FFMPEG_VERSION = 2.7.2 -FFMPEG_SOURCE = ffmpeg-$(FFMPEG_VERSION).tar.bz2 +FFMPEG_VERSION = 2.8.6 +FFMPEG_SOURCE = ffmpeg-$(FFMPEG_VERSION).tar.xz FFMPEG_SITE = http://ffmpeg.org/releases FFMPEG_INSTALL_STAGING = YES @@ -41,6 +41,8 @@ FFMPEG_CONF_OPTS = \ --enable-runtime-cpudetect \ --disable-hardcoded-tables \ --disable-memalign-hack \ + --disable-mipsdspr1 \ + --disable-mipsdspr2 \ --disable-msa \ --enable-hwaccels \ --disable-avisynth \ @@ -48,16 +50,14 @@ FFMPEG_CONF_OPTS = \ --disable-libopencore-amrnb \ --disable-libopencore-amrwb \ --disable-libopencv \ + --disable-libcdio \ --disable-libdc1394 \ --disable-libfaac \ --disable-libgsm \ - --disable-libmp3lame \ + --disable-libilbc \ --disable-libnut \ --disable-libopenjpeg \ - --disable-librtmp \ --disable-libschroedinger \ - --disable-libspeex \ - --disable-libtheora \ --disable-libvo-aacenc \ --disable-libvo-amrwbenc \ --disable-symver \ @@ -193,6 +193,18 @@ else FFMPEG_CONF_OPTS += --disable-bzlib endif +ifeq ($(BR2_PACKAGE_FDK_AAC)$(BR2_PACKAGE_FFMPEG_NONFREE),yy) +FFMPEG_CONF_OPTS += --enable-libfdk-aac +FFMPEG_DEPENDENCIES += fdk-aac +else +FFMPEG_CONF_OPTS += --disable-libfdk-aac +endif + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +FFMPEG_CONF_OPTS += --enable-gnutls --disable-openssl +FFMPEG_DEPENDENCIES += gnutls +else +FFMPEG_CONF_OPTS += --disable-gnutls ifeq ($(BR2_PACKAGE_OPENSSL),y) # openssl isn't license compatible with GPL ifeq ($(BR2_PACKAGE_FFMPEG_GPL)x$(BR2_PACKAGE_FFMPEG_NONFREE),yx) @@ -204,6 +216,21 @@ endif else FFMPEG_CONF_OPTS += --disable-openssl endif +endif + +ifeq ($(BR2_PACKAGE_LIBDCADEC),y) +FFMPEG_CONF_OPTS += --enable-libdcadec +FFMPEG_DEPENDENCIES += libdcadec +else +FFMPEG_CONF_OPTS += --disable-libdcadec +endif + +ifeq ($(BR2_PACKAGE_LIBOPENH264),y) +FFMPEG_CONF_OPTS += --enable-libopenh264 +FFMPEG_DEPENDENCIES += libopenh264 +else +FFMPEG_CONF_OPTS += --disable-libopenh264 +endif ifeq ($(BR2_PACKAGE_LIBVORBIS),y) FFMPEG_DEPENDENCIES += libvorbis @@ -234,6 +261,62 @@ else FFMPEG_CONF_OPTS += --disable-libvpx endif +ifeq ($(BR2_PACKAGE_LIBASS),y) +FFMPEG_CONF_OPTS += --enable-libass +FFMPEG_DEPENDENCIES += libass +else +FFMPEG_CONF_OPTS += --disable-libass +endif + +ifeq ($(BR2_PACKAGE_LIBBLURAY),y) +FFMPEG_CONF_OPTS += --enable-libbluray +FFMPEG_DEPENDENCIES += libbluray +else +FFMPEG_CONF_OPTS += --disable-libbluray +endif + +ifeq ($(BR2_PACKAGE_RTMPDUMP),y) +FFMPEG_CONF_OPTS += --enable-librtmp +FFMPEG_DEPENDENCIES += rtmpdump +else +FFMPEG_CONF_OPTS += --disable-librtmp +endif + +ifeq ($(BR2_PACKAGE_LAME),y) +FFMPEG_CONF_OPTS += --enable-libmp3lame +FFMPEG_DEPENDENCIES += lame +else +FFMPEG_CONF_OPTS += --disable-libmp3lame +endif + +ifeq ($(BR2_PACKAGE_LIBMODPLUG),y) +FFMPEG_CONF_OPTS += --enable-libmodplug +FFMPEG_DEPENDENCIES += libmodplug +else +FFMPEG_CONF_OPTS += --disable-libmodplug +endif + +ifeq ($(BR2_PACKAGE_SPEEX),y) +FFMPEG_CONF_OPTS += --enable-libspeex +FFMPEG_DEPENDENCIES += speex +else +FFMPEG_CONF_OPTS += --disable-libspeex +endif + +ifeq ($(BR2_PACKAGE_LIBTHEORA),y) +FFMPEG_CONF_OPTS += --enable-libtheora +FFMPEG_DEPENDENCIES += libtheora +else +FFMPEG_CONF_OPTS += --disable-libtheora +endif + +ifeq ($(BR2_PACKAGE_WAVPACK),y) +FFMPEG_CONF_OPTS += --enable-libwavpack +FFMPEG_DEPENDENCIES += wavpack +else +FFMPEG_CONF_OPTS += --disable-libwavpack +endif + # ffmpeg freetype support require fenv.h which is only # available/working on glibc. # The microblaze variant doesn't provide the needed exceptions @@ -258,6 +341,13 @@ else FFMPEG_CONF_OPTS += --disable-libx264 endif +ifeq ($(BR2_PACKAGE_X265)$(BR2_PACKAGE_FFMPEG_GPL),yy) +FFMPEG_CONF_OPTS += --enable-libx265 +FFMPEG_DEPENDENCIES += x265 +else +FFMPEG_CONF_OPTS += --disable-libx265 +endif + ifeq ($(BR2_X86_CPU_HAS_MMX),y) FFMPEG_CONF_OPTS += --enable-yasm FFMPEG_DEPENDENCIES += host-yasm @@ -355,16 +445,6 @@ FFMPEG_CONF_OPTS += \ --disable-mips32r2 endif -ifeq ($(BR2_mips_64r2),y) -FFMPEG_CONF_OPTS += \ - --enable-mipsdspr1 \ - --enable-mipsdspr2 -else -FFMPEG_CONF_OPTS += \ - --disable-mipsdspr1 \ - --disable-mipsdspr2 -endif - ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y) FFMPEG_CONF_OPTS += --enable-altivec else @@ -377,14 +457,14 @@ else FFMPEG_CONF_OPTS += --disable-pic endif -FFMPEG_CONF_OPTS += $(call qstrip,$(BR2_PACKAGE_FFMPEG_EXTRACONF)) - ifneq ($(call qstrip,$(BR2_GCC_TARGET_CPU)),) FFMPEG_CONF_OPTS += --cpu=$(BR2_GCC_TARGET_CPU) else ifneq ($(call qstrip,$(BR2_GCC_TARGET_ARCH)),) FFMPEG_CONF_OPTS += --cpu=$(BR2_GCC_TARGET_ARCH) endif +FFMPEG_CONF_OPTS += $(call qstrip,$(BR2_PACKAGE_FFMPEG_EXTRACONF)) + # Override FFMPEG_CONFIGURE_CMDS: FFmpeg does not support --target and others define FFMPEG_CONFIGURE_CMDS (cd $(FFMPEG_SRCDIR) && rm -rf config.cache && \ diff --git a/package/file/file.hash b/package/file/file.hash index 28f071db4ff..2eac7a57e35 100644 --- a/package/file/file.hash +++ b/package/file/file.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 802cb3de2e49e88ef97cdcb52cd507a0f25458112752e398445cea102bc750ce file-5.24.tar.gz +sha256 3735381563f69fb4239470b8c51b876a80425348b8285a7cded8b61d6b890eca file-5.25.tar.gz diff --git a/package/file/file.mk b/package/file/file.mk index f3b09ec6b96..4d13547ef70 100644 --- a/package/file/file.mk +++ b/package/file/file.mk @@ -4,7 +4,7 @@ # ################################################################################ -FILE_VERSION = 5.24 +FILE_VERSION = 5.25 FILE_SITE = ftp://ftp.astron.com/pub/file FILE_DEPENDENCIES = host-file zlib FILE_INSTALL_STAGING = YES diff --git a/package/filemq/filemq.mk b/package/filemq/filemq.mk index d3dc6da9dc3..a79e8f49656 100644 --- a/package/filemq/filemq.mk +++ b/package/filemq/filemq.mk @@ -4,7 +4,7 @@ # ################################################################################ -FILEMQ_VERSION = 482797b8aa30fcc9ea1377aabdf2b0769f9f698e +FILEMQ_VERSION = acf6c0e003fee938994ad803aa7b78245dca57ba FILEMQ_SITE = $(call github,zeromq,filemq,$(FILEMQ_VERSION)) FILEMQ_AUTORECONF = YES diff --git a/package/findutils/findutils.hash b/package/findutils/findutils.hash index 66f1fcc4d58..d5c5519304d 100644 --- a/package/findutils/findutils.hash +++ b/package/findutils/findutils.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 434f32d171cbc0a5e72cfc5372c6fc4cb0e681f8dce566a0de5b6fccd702b62a findutils-4.4.2.tar.gz +sha256 ded4c9f73731cd48fec3b6bdaccce896473b6d8e337e9612e16cf1431bb1169d findutils-4.6.0.tar.gz diff --git a/package/findutils/findutils.mk b/package/findutils/findutils.mk index c2c4b393d9e..8f6b099065b 100644 --- a/package/findutils/findutils.mk +++ b/package/findutils/findutils.mk @@ -4,7 +4,7 @@ # ################################################################################ -FINDUTILS_VERSION = 4.4.2 +FINDUTILS_VERSION = 4.6.0 FINDUTILS_SITE = $(BR2_GNU_MIRROR)/findutils FINDUTILS_LICENSE = GPLv3+ FINDUTILS_LICENSE_FILES = COPYING diff --git a/package/fio/0001-compile-fix-for-linux-header-changes.patch b/package/fio/0001-compile-fix-for-linux-header-changes.patch new file mode 100644 index 00000000000..4a37e9da255 --- /dev/null +++ b/package/fio/0001-compile-fix-for-linux-header-changes.patch @@ -0,0 +1,42 @@ +From d7bb6180f831091c468e5aa749b142efd5eddda4 Mon Sep 17 00:00:00 2001 +From: "Robin H. Johnson" +Date: Wed, 3 Feb 2016 08:32:19 -0800 +Subject: [PATCH] libmtd: compile fix for linux header changes. + +In the Linux kernel source, mtd/mtd-user.h had a change +'mtd: mtd-user: remove stdint.h include' +(137d36af4a53858b8db7ca83c8480247118b8bdf) + +This causes the uint8_t/uint64_t types to be undefined in libmtd.h +now, as they were implicitly coming from it before. + +Import stdint.h explicitly into libmtd.h to resolve this. + +X-URL: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=137d36af4a53858b8db7ca83c8480247118b8bdf +Signed-off-by: Robin H. Johnson +--- +Patch downloaded from upstream repo: +http://git.kernel.dk/?p=fio.git;a=patch;h=d7bb6180f831091c468e5aa749b142efd5eddda4 + +Signed-off-by: Ricardo Martincoski +--- + oslib/libmtd.h | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/oslib/libmtd.h b/oslib/libmtd.h +index 3625de5..b5fd3f3 100644 +--- a/oslib/libmtd.h ++++ b/oslib/libmtd.h +@@ -29,6 +29,9 @@ + extern "C" { + #endif + ++// Needed for uint8_t, uint64_t ++#include ++ + /* Maximum MTD device name length */ + #define MTD_NAME_MAX 127 + /* Maximum MTD device type string length */ +-- +2.5.0 + diff --git a/package/fio/Config.in b/package/fio/Config.in index b1f90456e10..89f54f99a23 100644 --- a/package/fio/Config.in +++ b/package/fio/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_FIO bool "fio" depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_TOOLCHAIN_HAS_THREADS # fio uses posix_madvise(), which is not part of any official # release of uClibc, but is part of uClibc Git, and backported @@ -20,5 +21,6 @@ config BR2_PACKAGE_FIO comment "fio needs a toolchain w/ dynamic library, threads" depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_nios2 depends on BR2_USE_MMU diff --git a/package/fio/fio.mk b/package/fio/fio.mk index f9a690e7cf6..08fef5f75a1 100644 --- a/package/fio/fio.mk +++ b/package/fio/fio.mk @@ -4,10 +4,10 @@ # ################################################################################ -FIO_VERSION = fio-2.1.4 +FIO_VERSION = fio-2.6 FIO_SITE = git://git.kernel.dk/fio.git FIO_LICENSE = GPLv2 + special obligations -FIO_LICENSE_FILES = LICENSE +FIO_LICENSE_FILES = COPYING define FIO_CONFIGURE_CMDS (cd $(@D); ./configure --cc="$(TARGET_CC)" --extra-cflags="$(TARGET_CFLAGS)") diff --git a/package/flann/Config.in b/package/flann/Config.in index 1222310bfdd..3725fc784ff 100644 --- a/package/flann/Config.in +++ b/package/flann/Config.in @@ -2,8 +2,6 @@ config BR2_PACKAGE_FLANN bool "flann" depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS - # triggers an assert in the linker of this toolchain - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 help FLANN is a library for performing fast approximate nearest neighbor searches in high dimensional spaces. It contains a diff --git a/package/flashrom/0001-spi.patch b/package/flashrom/0001-spi.patch new file mode 100644 index 00000000000..22ffcb54dc9 --- /dev/null +++ b/package/flashrom/0001-spi.patch @@ -0,0 +1,25 @@ +linux_spi: add missing include + +Some defines (e.g. _IOC_SIZEBITS) are defined in linux/ioctl.h, +so it must be included before it is used, by SPI_IOC_MESSAGE +from linux/spi/spidev.h + +Fixes build errors with the musl C library, as seen in these +Buildroot autobuilder failures: + + http://autobuild.buildroot.org/results/2a3/2a3744007c630c267575a638ebcd83a4b97644f5/build-end.log + http://autobuild.buildroot.org/results/3de/3de936d9be79e151e66af15193084d82a0f2c04a/build-end.log + +Signed-off-by: "Yann E. MORIN" + +diff -durN flashrom-0.9.8.orig/linux_spi.c flashrom-0.9.8/linux_spi.c +--- flashrom-0.9.8.orig/linux_spi.c 2015-10-28 19:42:38.480285847 +0100 ++++ flashrom-0.9.8/linux_spi.c 2015-10-28 19:43:15.492994613 +0100 +@@ -27,6 +27,7 @@ + #include + #include + #include ++#include + #include + #include + #include "flash.h" diff --git a/package/flashrom/0002-sys-io.h.patch b/package/flashrom/0002-sys-io.h.patch new file mode 100644 index 00000000000..8d990c6f916 --- /dev/null +++ b/package/flashrom/0002-sys-io.h.patch @@ -0,0 +1,27 @@ +hwaccess: sys/io.h is not specific to glibc + +Under Linux, sys/io.h provides inb and outb, so we really need it. +However, its inclusion is conditional to the _GLIBC_ define. This is +usually OK under Linux, since both glibc and uClibc define it (uclibc +fakes being glibc). + +But the musl C library does not impersonate glibc, so we're missing +including sys/io.h in this case. + +Change the include from checking _GLIBC_ to checking whether this is +Linux, looking for the __linux__ define. + +Signed-off-by: "Yann E. MORIN" + +diff -durN flashrom-0.9.8.orig/hwaccess.h flashrom-0.9.8/hwaccess.h +--- flashrom-0.9.8.orig/hwaccess.h 2015-02-10 09:03:10.000000000 +0100 ++++ flashrom-0.9.8/hwaccess.h 2015-10-28 20:01:54.259202484 +0100 +@@ -27,7 +27,7 @@ + #include "platform.h" + + #if IS_X86 +-#if defined(__GLIBC__) ++#if defined(__linux__) + #include + #endif + #endif diff --git a/package/flashrom/Config.in b/package/flashrom/Config.in index 9420cc69dff..adc068cbfa4 100644 --- a/package/flashrom/Config.in +++ b/package/flashrom/Config.in @@ -8,7 +8,6 @@ config BR2_PACKAGE_FLASHROM select BR2_PACKAGE_DMIDECODE depends on BR2_i386 || BR2_x86_64 depends on BR2_TOOLCHAIN_HAS_THREADS # libusb - depends on BR2_ARCH_HAS_ATOMICS # libftdi help flashrom is a utility for identifying, reading, writing, verifying and erasing flash chips. It is designed to flash @@ -20,5 +19,4 @@ config BR2_PACKAGE_FLASHROM comment "flashrom needs a toolchain w/ threads" depends on BR2_i386 || BR2_x86_64 - depends on BR2_ARCH_HAS_ATOMICS depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/flashrom/flashrom.mk b/package/flashrom/flashrom.mk index 525470aeffa..7e0fcf27b37 100644 --- a/package/flashrom/flashrom.mk +++ b/package/flashrom/flashrom.mk @@ -7,12 +7,12 @@ FLASHROM_VERSION = 0.9.8 FLASHROM_SOURCE = flashrom-$(FLASHROM_VERSION).tar.bz2 FLASHROM_SITE = http://download.flashrom.org/releases -FLASHROM_DEPENDENCIES = pciutils libusb libusb-compat libftdi +FLASHROM_DEPENDENCIES = pciutils libusb libusb-compat libftdi host-pkgconf FLASHROM_LICENSE = GPLv2+ FLASHROM_LICENSE_FILES = COPYING define FLASHROM_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) endef define FLASHROM_INSTALL_TARGET_CMDS diff --git a/package/flite/0003-fix-alsa-version-check.patch b/package/flite/0003-fix-alsa-version-check.patch new file mode 100644 index 00000000000..8832ac371c4 --- /dev/null +++ b/package/flite/0003-fix-alsa-version-check.patch @@ -0,0 +1,26 @@ +[PATCH] fix alsa version check + +Check the entire alsa version, and not just the subminor - As this broke +with the recent alsa 1.0.x -> 1.1.0 release. + +It is not clear what major/minor versions the check was supposed to be +against (0.9 or 1.0). I went with 1.0.11 to be on the safe side. + +Signed-off-by: Peter Korsgaard +--- + flite-1.4-release/configure.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: flite-1.4/flite-1.4-release/configure.in +=================================================================== +--- flite-1.4.orig/flite-1.4-release/configure.in ++++ flite-1.4/flite-1.4-release/configure.in +@@ -270,7 +270,7 @@ + # the one I know -- you can still specific --with-audio=alsa + AC_TRY_COMPILE([#include ], + [int j= +- #if SND_LIB_SUBMINOR >= 11 ++ #if SND_LIB_VERSION >= 0x1000b + 3; + #endif], + [AUDIODRIVER="alsa" diff --git a/package/flot/flot.hash b/package/flot/flot.hash index 9bf348a9444..cb9f9ec9d0b 100644 --- a/package/flot/flot.hash +++ b/package/flot/flot.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 d6bddb781ce8ab8bba82c535a0767c22e606cabd9dbb484027b8ff375a193952 flot-0.8.3.tar.gz +sha256 ef9a873befe3ff5ea42ebf1c3657887265a1717744ca8ed0c2bd3dd736d16b21 flot-0.8.3.tar.gz diff --git a/package/fmlib/fmlib.mk b/package/fmlib/fmlib.mk index 828fefe8ae6..978810bad9b 100644 --- a/package/fmlib/fmlib.mk +++ b/package/fmlib/fmlib.mk @@ -6,7 +6,7 @@ FMLIB_VERSION = fsl-sdk-v1.5-rc3 FMLIB_SITE = git://git.freescale.com/ppc/sdk/fmlib.git -FMLIB_LICENSE = BSD-3c GPLv2+ +FMLIB_LICENSE = BSD-3c, GPLv2+ FMLIB_LICENSE_FILES = COPYING FMLIB_DEPENDENCIES = linux FMLIB_INSTALL_STAGING = YES diff --git a/package/fping/fping.hash b/package/fping/fping.hash index 65e25c7865b..99c01cfad0c 100644 --- a/package/fping/fping.hash +++ b/package/fping/fping.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 cd47e842f32fe6aa72369d8a0e3545f7c137bb019e66f47379dc70febad357d8 fping-3.10.tar.gz +sha256 d86f2281bda4653c7049e6ba8fce24ba67edbf9193b7bb1cf6219b0c8ddce4e6 fping-3.12.tar.gz diff --git a/package/fping/fping.mk b/package/fping/fping.mk index 0045befef91..c576dd1abd1 100644 --- a/package/fping/fping.mk +++ b/package/fping/fping.mk @@ -4,7 +4,7 @@ # ################################################################################ -FPING_VERSION = 3.10 +FPING_VERSION = 3.12 FPING_SITE = http://fping.org/dist FPING_LICENSE = BSD-like FPING_LICENSE_FILES = COPYING diff --git a/package/freerdp/0001-add-support-for-uclibc.patch b/package/freerdp/0001-add-support-for-uclibc.patch deleted file mode 100644 index feefc45e371..00000000000 --- a/package/freerdp/0001-add-support-for-uclibc.patch +++ /dev/null @@ -1,127 +0,0 @@ -From 39ac68abaff0d7b59cbe80036aac37f41ad976ec Mon Sep 17 00:00:00 2001 -From: Vicente Olivert Riera -Date: Wed, 24 Sep 2014 13:54:15 +0100 -Subject: [PATCH] Add support for uClibc - -The stable-1.1 branch of freerdp fails to build when using a uClibc -toolchain because it's using functions which are not implemented in -uClibc, like eventfd_read, eventfd_write and futimes. That is causing -build failures like these ones: - -../../libwinpr/synch/libwinpr-synch.so.0.1.0: undefined reference to -`eventfd_read' -../../libwinpr/synch/libwinpr-synch.so.0.1.0: undefined reference to -`eventfd_write' - -../../common/libfreerdp-client.so.1.1.0: undefined reference to -`futimes' - -This patch is based on this upstream patch: - - https://github.com/FreeRDP/FreeRDP/commit/5f9c36da5d5cd3c5dce49f7b32fe011cb293f9ec/ - -To support newer versions of uClibc and uclibc-ng this patch also includes a -backported version of upstream commit 3b7d3190a16c (Fix build with newer -uclibc versions, 2015-04-28) - -Signed-off-by: Vicente Olivert Riera -[baruch: merge in upstream commit 3b7d3190a16c] -Signed-off-by: Baruch Siach ---- - CMakeLists.txt | 3 +++ - channels/drive/client/drive_file.c | 12 +++++++++--- - config.h.in | 1 + - winpr/libwinpr/synch/event.c | 14 ++++++++++++++ - 4 files changed, 27 insertions(+), 3 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 375e2d1b6845..5b7887601aa0 100755 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -276,6 +276,9 @@ endif() - - if(UNIX OR CYGWIN) - check_include_files(sys/eventfd.h HAVE_EVENTFD_H) -+ if (HAVE_EVENTFD_H) -+ check_symbol_exists(eventfd_read sys/eventfd.h WITH_EVENTFD_READ_WRITE) -+ endif() - set(X11_FEATURE_TYPE "RECOMMENDED") - else() - set(X11_FEATURE_TYPE "DISABLED") -diff --git a/channels/drive/client/drive_file.c b/channels/drive/client/drive_file.c -index 376b4fe74be7..b20f408aa356 100644 ---- a/channels/drive/client/drive_file.c -+++ b/channels/drive/client/drive_file.c -@@ -480,7 +480,11 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN - int status; - char* fullpath; - struct STAT st; -+#if defined(ANDROID) - struct timeval tv[2]; -+#else -+ struct timespec tv[2]; -+#endif - UINT64 LastWriteTime; - UINT32 FileAttributes; - UINT32 FileNameLength; -@@ -501,15 +505,17 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN - return FALSE; - - tv[0].tv_sec = st.st_atime; -- tv[0].tv_usec = 0; - tv[1].tv_sec = (LastWriteTime > 0 ? FILE_TIME_RDP_TO_SYSTEM(LastWriteTime) : st.st_mtime); -- tv[1].tv_usec = 0; - #ifndef WIN32 - /* TODO on win32 */ - #ifdef ANDROID -+ tv[0].tv_usec = 0; -+ tv[1].tv_usec = 0; - utimes(file->fullpath, tv); - #else -- futimes(file->fd, tv); -+ tv[0].tv_nsec = 0; -+ tv[1].tv_nsec = 0; -+ futimens(file->fd, tv); - #endif - - if (FileAttributes > 0) -diff --git a/config.h.in b/config.h.in -index 2b8ec09c2afb..55c595d0e162 100755 ---- a/config.h.in -+++ b/config.h.in -@@ -33,6 +33,7 @@ - #cmakedefine WITH_JPEG - #cmakedefine WITH_WIN8 - #cmakedefine WITH_RDPSND_DSOUND -+#cmakedefine WITH_EVENTFD_READ_WRITE - - /* Plugins */ - #cmakedefine STATIC_CHANNELS -diff --git a/winpr/libwinpr/synch/event.c b/winpr/libwinpr/synch/event.c -index 173afafb7cc9..cb3f338178d9 100644 ---- a/winpr/libwinpr/synch/event.c -+++ b/winpr/libwinpr/synch/event.c -@@ -115,6 +115,20 @@ HANDLE OpenEventA(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCSTR lpName) - return NULL; - } - -+#ifdef HAVE_EVENTFD_H -+#if !defined(WITH_EVENTFD_READ_WRITE) -+static int eventfd_read(int fd, eventfd_t* value) -+{ -+ return (read(fd, value, sizeof(*value)) == sizeof(*value)) ? 0 : -1; -+} -+ -+static int eventfd_write(int fd, eventfd_t value) -+{ -+ return (write(fd, &value, sizeof(value)) == sizeof(value)) ? 0 : -1; -+} -+#endif -+#endif -+ - BOOL SetEvent(HANDLE hEvent) - { - ULONG Type; --- -1.7.1 - diff --git a/package/freerdp/0002-fix-building-shared-libs.patch b/package/freerdp/0001-fix-building-shared-libs.patch similarity index 92% rename from package/freerdp/0002-fix-building-shared-libs.patch rename to package/freerdp/0001-fix-building-shared-libs.patch index 420f3d3544b..8922cb15b63 100644 --- a/package/freerdp/0002-fix-building-shared-libs.patch +++ b/package/freerdp/0001-fix-building-shared-libs.patch @@ -12,12 +12,15 @@ Cc: Samuel Martin diff -durN freerdp-440916eae2e07463912d5fe507677e67096eb083.orig/winpr/tools/makecert/CMakeLists.txt freerdp-440916eae2e07463912d5fe507677e67096eb083/winpr/tools/makecert/CMakeLists.txt --- freerdp-440916eae2e07463912d5fe507677e67096eb083.orig/winpr/tools/makecert/CMakeLists.txt 2014-08-25 06:52:43.000000000 -0700 +++ freerdp-440916eae2e07463912d5fe507677e67096eb083/winpr/tools/makecert/CMakeLists.txt 2014-10-24 15:39:39.600319523 -0700 -@@ -43,3 +43,8 @@ +@@ -37,4 +37,11 @@ + add_subdirectory(cli) set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "WinPR/Tools") - ++ +if(BUILD_SHARED_LIBS) + # build libwinpr-makecert-tool.a with PIC because it is used to build + # the shared library libxfreerdp-server.so. + set_property(TARGET ${MODULE_NAME} PROPERTY POSITION_INDEPENDENT_CODE TRUE) +endif() ++ + export_complex_library(LIBNAME ${MODULE_NAME}) diff --git a/package/freerdp/0004-add-support-for-tz-package.patch b/package/freerdp/0002-add-support-for-tz-package.patch similarity index 100% rename from package/freerdp/0004-add-support-for-tz-package.patch rename to package/freerdp/0002-add-support-for-tz-package.patch diff --git a/package/freerdp/0003-add-missing-define.patch b/package/freerdp/0003-add-missing-define.patch new file mode 100644 index 00000000000..a8f669e1029 --- /dev/null +++ b/package/freerdp/0003-add-missing-define.patch @@ -0,0 +1,44 @@ +libwinpr/comm_seria: fix missing define + +FreeRDP uses CMSPAR, which is defined by glibc in bits/termios.h . + +glibc has two flavours of bits/termios.h: a genmeric one and an +architecture-specific one. When installing, glibc will install the +architecture-specific file if it exists, otherwise it installs the +generic file. Only Alpha, MIPS, PPC and Sparc have their own +bits/termios.h. + +The generic bits/termios.h, as well as the Alpha, PPC and Sparc flavours +do define CMSPAR. However, the MIPS flavour does not define it. + +Define CMSPAR to the value from the generic value, which is also the +value known to the Linux kernel for MIPS. + +Fixes: + http://autobuild.buildroot.org/results/0b4/0b4793f0bf9f4c57933897f3480054a4e06528ad/ + http://autobuild.buildroot.org/results/7a2/7a2284d0a2987158fa2e78f789b07c8c6fcdb974/ + http://autobuild.buildroot.org/results/387/3874088c3ccd4bbf76ea0c911ca1ef64c7dc9d1c/ + ... + +Signed-off-by: "Yann E. MORIN" +Cc: Peter Korsgaard +Cc: Thomas Petazzoni + +diff -durN freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16.orig/winpr/libwinpr/comm/comm_serial_sys.c freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16/winpr/libwinpr/comm/comm_serial_sys.c +--- freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16.orig/winpr/libwinpr/comm/comm_serial_sys.c 2015-09-04 16:20:17.000000000 +0100 ++++ freerdp-17834af7bb378f85a3b3cc4dcadaa5125a337e16/winpr/libwinpr/comm/comm_serial_sys.c 2015-10-04 11:07:41.868513726 +0100 +@@ -27,6 +27,14 @@ + #include + #include + #include ++ ++/* glibc for MIPS has its own bits/termios.h which does not define ++ * CMSPAR, so we vampirise the value from the generic bits/termios.h ++ */ ++#ifndef CMSPAR ++#define CMSPAR 010000000000 ++#endif ++ + #include + + #include "comm_serial_sys.h" diff --git a/package/freerdp/0003-dont-use-unavailable-c99-math.patch b/package/freerdp/0003-dont-use-unavailable-c99-math.patch deleted file mode 100644 index 1e23c0d0b6c..00000000000 --- a/package/freerdp/0003-dont-use-unavailable-c99-math.patch +++ /dev/null @@ -1,95 +0,0 @@ -From c0d27019745184052bd428ba74a50de96053cea1 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Sun, 3 May 2015 20:46:22 +0300 -Subject: [PATCH] Don't use unavailable C99 long double math functions - -uClibc variants do not provide the C99 long double math functions like ceill, -powl, etc.. For future compatibility use check_symbol_exists() to check -whether these functions are available, and keep the result in -HAVE_MATH_C99_LONG_DOUBLE. Use that instead of the fragile Cygwin version -check in triodef.h. - -Fixes build failures under uClibc(-ng) like: - -../../libwinpr/utils/libwinpr-utils.so.0.1.0: undefined reference to `powl' -../../libwinpr/utils/libwinpr-utils.so.0.1.0: undefined reference to `fmodl' -../../libwinpr/utils/libwinpr-utils.so.0.1.0: undefined reference to `ceill' -../../libwinpr/utils/libwinpr-utils.so.0.1.0: undefined reference to `log10l' -../../libwinpr/utils/libwinpr-utils.so.0.1.0: undefined reference to `floorl' -collect2: error: ld returned 1 exit status - -Backported from upstream commit -https://github.com/FreeRDP/FreeRDP/commit/414663cc363108cb71a290de1c86a1b04384fb39 - -Signed-off-by: Baruch Siach ---- - CMakeLists.txt | 3 +++ - config.h.in | 1 + - winpr/libwinpr/utils/trio/triodef.h | 25 ++++++------------------- - 3 files changed, 10 insertions(+), 19 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 5b7887601aa0..177e44cfff10 100755 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -279,6 +279,9 @@ if(UNIX OR CYGWIN) - if (HAVE_EVENTFD_H) - check_symbol_exists(eventfd_read sys/eventfd.h WITH_EVENTFD_READ_WRITE) - endif() -+ list(APPEND CMAKE_REQUIRED_LIBRARIES m) -+ check_symbol_exists(ceill math.h HAVE_MATH_C99_LONG_DOUBLE) -+ list(REMOVE_ITEM CMAKE_REQUIRED_LIBRARIES m) - set(X11_FEATURE_TYPE "RECOMMENDED") - else() - set(X11_FEATURE_TYPE "DISABLED") -diff --git a/config.h.in b/config.h.in -index 55c595d0e162..983310d5b9e6 100755 ---- a/config.h.in -+++ b/config.h.in -@@ -34,6 +34,7 @@ - #cmakedefine WITH_WIN8 - #cmakedefine WITH_RDPSND_DSOUND - #cmakedefine WITH_EVENTFD_READ_WRITE -+#cmakedefine HAVE_MATH_C99_LONG_DOUBLE - - /* Plugins */ - #cmakedefine STATIC_CHANNELS -diff --git a/winpr/libwinpr/utils/trio/triodef.h b/winpr/libwinpr/utils/trio/triodef.h -index 11c14b9c42c7..2a0479526f33 100644 ---- a/winpr/libwinpr/utils/trio/triodef.h -+++ b/winpr/libwinpr/utils/trio/triodef.h -@@ -313,25 +313,12 @@ typedef void * trio_pointer_t; - # define TRIO_COMPILER_SUPPORTS_LL - #endif - --#if defined(__CYGWIN__) --/* -- * Cygwin defines the macros for hosted C99, but does not support certain -- * long double math functions. -- */ --# include --# define TRIO_CYGWIN_VERSION_API CYGWIN_VERSION_API_MAJOR * 1000 + \ -- CYGWIN_VERSION_API_MINOR --/* -- * Please change the version number below when the Cygwin API supports -- * long double math functions (powl, fmodl, etc.) -- */ --# if TRIO_CYGWIN_VERSION_API < 99999999 --# define TRIO_NO_FLOORL 1 --# define TRIO_NO_CEILL 1 --# define TRIO_NO_POWL 1 --# define TRIO_NO_FMODL 1 --# define TRIO_NO_LOG10L 1 --# endif -+#if !defined(HAVE_MATH_C99_LONG_DOUBLE) -+# define TRIO_NO_FLOORL 1 -+# define TRIO_NO_CEILL 1 -+# define TRIO_NO_POWL 1 -+# define TRIO_NO_FMODL 1 -+# define TRIO_NO_LOG10L 1 - #endif - - #endif /* TRIO_TRIODEF_H */ --- -2.1.4 - diff --git a/package/freerdp/Config.in b/package/freerdp/Config.in index f7d65509568..9dd2505a443 100644 --- a/package/freerdp/Config.in +++ b/package/freerdp/Config.in @@ -1,17 +1,22 @@ config BR2_PACKAGE_FREERDP bool "freerdp" + # FreeRDP does not have a single C++ source file, however it + # insists on having a C++ compiler. Removing that requirement + # is a bit too much involving, so we just depend on it... + depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR depends on !BR2_STATIC_LIBS # uses dlfcn.h depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # libglib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_ZLIB - select BR2_PACKAGE_GST_PLUGINS_BASE if BR2_PACKAGE_GSTREAMER - select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP if BR2_PACKAGE_GSTREAMER + select BR2_PACKAGE_LIBGLIB2 help FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license - This only installs the freerdp library. + This only installs the freerdp libraries. http://www.freerdp.com/ @@ -23,26 +28,63 @@ config BR2_PACKAGE_FREERDP if BR2_PACKAGE_FREERDP +choice + bool "gstreamer support" + depends on BR2_PACKAGE_XORG7 # xlib-libxrandr + depends on BR2_PACKAGE_GSTREAMER || BR2_PACKAGE_GSTREAMER1 + +config BR2_PACKAGE_FREERDP_GSTREAMER1 + bool "gstreamer-1.x" + depends on BR2_PACKAGE_GSTREAMER1 + # gstreamer-1.x dependencies already dependencies of FreeRDP + select BR2_PACKAGE_GST1_PLUGINS_BASE + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP + select BR2_PACKAGE_XLIB_LIBXRANDR + +config BR2_PACKAGE_FREERDP_GSTREAMER + bool "gstreamer-0.x" + depends on BR2_PACKAGE_GSTREAMER + # gstreamer-0.x dependencies already dependencies of FreeRDP + select BR2_PACKAGE_GST_PLUGINS_BASE + select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP + select BR2_PACKAGE_XLIB_LIBXRANDR + select BR2_PACKAGE_LIBXML2 + +config BR2_PACKAGE_FREERDP_GSTREAMER_NO + bool "none" + +endchoice + +comment "gstreamer support needs X.Org" + depends on !BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_GSTREAMER || BR2_PACKAGE_GSTREAMER1 + config BR2_PACKAGE_FREERDP_SERVER - bool "build server" + bool "server" depends on BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBX11 select BR2_PACKAGE_XLIB_LIBXDAMAGE select BR2_PACKAGE_XLIB_LIBXEXT select BR2_PACKAGE_XLIB_LIBXFIXES -config BR2_PACKAGE_FREERDP_CLIENT - bool "build client" +config BR2_PACKAGE_FREERDP_CLIENT_X11 + bool "X11 client" default y depends on BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBX11 select BR2_PACKAGE_XLIB_LIBXEXT -comment "freerdp server and client need X.Org" +comment "server and X11 client need X.Org" depends on !BR2_PACKAGE_XORG7 +config BR2_PACKAGE_FREERDP_CLIENT_WL + bool "wayland client" + default y + depends on BR2_PACKAGE_WAYLAND + endif -comment "freerdp needs a toolchain w/ wchar, dynamic library, threads" +comment "freerdp needs a toolchain w/ wchar, dynamic library, threads, C++" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \ - || !BR2_TOOLCHAIN_HAS_THREADS + || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/freerdp/freerdp.mk b/package/freerdp/freerdp.mk index 0d10ef8530d..baf83f0cb9f 100644 --- a/package/freerdp/freerdp.mk +++ b/package/freerdp/freerdp.mk @@ -4,10 +4,10 @@ # ################################################################################ -# Changeset on the stable-1.1 branch -FREERDP_VERSION = 770c67d340d5f0a7b48d53a1ae0fc23aff748fc4 +# Changeset on the master branch +FREERDP_VERSION = 17834af7bb378f85a3b3cc4dcadaa5125a337e16 FREERDP_SITE = $(call github,FreeRDP,FreeRDP,$(FREERDP_VERSION)) -FREERDP_DEPENDENCIES = openssl zlib +FREERDP_DEPENDENCIES = libglib2 openssl zlib FREERDP_LICENSE = Apache-2.0 FREERDP_LICENSE_FILES = LICENSE @@ -15,12 +15,18 @@ FREERDP_INSTALL_STAGING = YES FREERDP_CONF_OPTS = -DWITH_MANPAGES=OFF -Wno-dev -ifeq ($(BR2_PACKAGE_GSTREAMER),y) -FREERDP_CONF_OPTS += -DWITH_GSTREAMER=ON -# freerdp needs gstinterface and gstapp from gst-plugins-base -FREERDP_DEPENDENCIES += gstreamer gst-plugins-base +ifeq ($(BR2_PACKAGE_FREERDP_GSTREAMER),y) +FREERDP_CONF_OPTS += -DWITH_GSTREAMER_0_10=ON +FREERDP_DEPENDENCIES += gstreamer gst-plugins-base libxml2 host-pkgconf else -FREERDP_CONF_OPTS += -DWITH_GSTREAMER=OFF +FREERDP_CONF_OPTS += -DWITH_GSTREAMER_0_10=OFF +endif + +ifeq ($(BR2_PACKAGE_FREERDP_GSTREAMER1),y) +FREERDP_CONF_OPTS += -DWITH_GSTREAMER_1_0=ON +FREERDP_DEPENDENCIES += gstreamer1 gst1-plugins-base +else +FREERDP_CONF_OPTS += -DWITH_GSTREAMER_1_0=OFF endif ifeq ($(BR2_PACKAGE_CUPS),y) @@ -70,26 +76,47 @@ endif #--------------------------------------- # Enabling server and/or client +# Clients and server interface must always be enabled to build the +# corresponding libraries. +FREERDP_CONF_OPTS += -DWITH_SERVER_INTERFACE=ON +FREERDP_CONF_OPTS += -DWITH_CLIENT_INTERFACE=ON + ifeq ($(BR2_PACKAGE_FREERDP_SERVER),y) -FREERDP_CONF_OPTS += -DWITH_SERVER=ON -DWITH_SERVER_INTERFACE=ON -else -FREERDP_CONF_OPTS += -DWITH_SERVER=OFF -DWITH_SERVER_INTERFACE=OFF +FREERDP_CONF_OPTS += -DWITH_SERVER=ON endif -ifeq ($(BR2_PACKAGE_FREERDP_CLIENT),y) -FREERDP_CONF_OPTS += -DWITH_CLIENT=ON -DWITH_CLIENT_INTERFACE=ON -else -FREERDP_CONF_OPTS += -DWITH_CLIENT=OFF -DWITH_CLIENT_INTERFACE=OFF +ifneq ($(BR2_PACKAGE_FREERDP_CLIENT_X11)$(BR2_PACKAGE_FREERDP_CLIENT_WL),) +FREERDP_CONF_OPTS += -DWITH_CLIENT=ON endif #--------------------------------------- -# X.Org libs for client and/or server - -ifneq ($(BR2_PACKAGE_FREERDP_SERVER)$(BR2_PACKAGE_FREERDP_CLIENT),) - -# Those two are mandatory for both the server and the client +# Libraries for client and/or server + +# The FreeRDP buildsystem uses non-orthogonal options. For example it +# is not possible to build the server and the wayland client without +# also building the X client. That's because the dependencies of the +# server (the X libraries) are a superset of those of the X client. +# So, as soon as FreeRDP is configured for the server and the wayland +# client, it will believe it also has to build the X client, because +# the libraries it needs are enabled. +# +# Furthermore, the shadow server is always built, even if there's nothing +# it can serve (i.e. the X libs are disabled). +# +# So, we do not care whether we build too much; we remove, as +# post-install hooks, whatever we do not want. + +# If Xorg is enabled, and the server or the X client are, then libX11 +# and libXext are forcibly enabled at the Kconfig level. However, if +# Xorg is enabled but neither the server nor the X client are, then +# there's nothing that guarantees those two libs are enabled. So we +# really must check for them. +ifeq ($(BR2_PACKAGE_XLIB_LIBX11)$(BR2_PACKAGE_XLIB_LIBX11),yy) FREERDP_DEPENDENCIES += xlib_libX11 xlib_libXext FREERDP_CONF_OPTS += -DWITH_X11=ON +else +FREERDP_CONF_OPTS += -DWITH_X11=OFF +endif # The following libs are either optional or mandatory only for either # the server or the client. A mandatory library for either one is @@ -164,11 +191,54 @@ else FREERDP_CONF_OPTS += -DWITH_XV=OFF endif -else # ! SERVER && ! CLIENT +ifeq ($(BR2_PACKAGE_WAYLAND),y) +FREERDP_DEPENDENCIES += wayland +FREERDP_CONF_OPTS += -DWITH_WAYLAND=ON +else +FREERDP_CONF_OPTS += -DWITH_WAYLAND=OFF +endif + +#--------------------------------------- +# Post-install hooks to cleanup and install missing stuff -FREERDP_CONF_OPTS += -DWITH_X11=OFF +# Shadow server is always installed, no matter what, so we manually +# remove it if the user does not want the server. +ifeq ($(BR2_PACKAGE_FREERDP_SERVER),) +define FREERDP_RM_SHADOW_SERVER + rm -f $(TARGET_DIR)/usr/bin/freerdp-shadow +endef +FREERDP_POST_INSTALL_TARGET_HOOKS += FREERDP_RM_SHADOW_SERVER +endif # ! server + +# X client is always built as soon as a client is enabled and the +# necessary libs are enabled (e.g. because of the server), so manually +# remove it if the user does not want it. +ifeq ($(BR2_PACKAGE_FREERDP_CLIENT_X11),) +define FREERDP_RM_CLIENT_X11 + rm -f $(TARGET_DIR)/usr/bin/xfreerdp + rm -f $(TARGET_DIR)/usr/lib/libxfreerdp-client* +endef +FREERDP_POST_INSTALL_TARGET_HOOKS += FREERDP_RM_CLIENT_X11 +define FREERDP_RM_CLIENT_X11_LIB + rm -f $(STAGING_DIR)/usr/lib/libxfreerdp-client* +endef +FREERDP_POST_INSTALL_STAGING_HOOKS += FREERDP_RM_CLIENT_X11_LIB +endif # ! X client + +# Wayland client is always built as soon as wayland is enabled, so +# manually remove it if the user does not want it. +ifeq ($(BR2_PACKAGE_FREERDP_CLIENT_WL),) +define FREERDP_RM_CLIENT_WL + rm -f $(TARGET_DIR)/usr/bin/wlfreerdp +endef +FREERDP_POST_INSTALL_TARGET_HOOKS += FREERDP_RM_CLIENT_WL +endif -endif # ! SERVER && ! CLIENT +# Remove static libraries in unusual dir +define FREERDP_CLEANUP + rm -rf $(TARGET_DIR)/usr/lib/freerdp +endef +FREERDP_POST_INSTALL_TARGET_HOOKS += FREERDP_CLEANUP # Install the server key and certificate, so that a client can connect. # A user can override them with its own in a post-build script, if needed. @@ -177,9 +247,9 @@ endif # ! SERVER && ! CLIENT # backend). Key and cert are installed world-readable, so non-root users # can start a server. define FREERDP_INSTALL_KEYS - $(INSTALL) -m 0644 -D $(@D)/server/X11/server.key \ + $(INSTALL) -m 0644 -D $(@D)/server/Sample/server.key \ $(TARGET_DIR)/etc/freerdp/keys/server.key - $(INSTALL) -m 0644 -D $(@D)/server/X11/server.crt \ + $(INSTALL) -m 0644 -D $(@D)/server/Sample/server.crt \ $(TARGET_DIR)/etc/freerdp/keys/server.crt endef FREERDP_POST_INSTALL_TARGET_HOOKS += FREERDP_INSTALL_KEYS diff --git a/package/freescale-imx/Config.in b/package/freescale-imx/Config.in index dffe76ffc9f..dfb6cc4a3fc 100644 --- a/package/freescale-imx/Config.in +++ b/package/freescale-imx/Config.in @@ -42,6 +42,7 @@ config BR2_PACKAGE_FREESCALE_IMX_PLATFORM default "IMX53" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53 default "IMX6Q" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q +source "package/freescale-imx/imx-kobs/Config.in" source "package/freescale-imx/imx-lib/Config.in" source "package/freescale-imx/imx-vpu/Config.in" source "package/freescale-imx/firmware-imx/Config.in" @@ -51,6 +52,7 @@ source "package/freescale-imx/libz160/Config.in" endif if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q source "package/freescale-imx/imx-gpu-viv/Config.in" +source "package/freescale-imx/kernel-module-imx-gpu-viv/Config.in" endif endif diff --git a/package/freescale-imx/firmware-imx/firmware-imx.hash b/package/freescale-imx/firmware-imx/firmware-imx.hash new file mode 100644 index 00000000000..06d5a5496bc --- /dev/null +++ b/package/freescale-imx/firmware-imx/firmware-imx.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 8cc2df128c0e2d2f5224d73389fbe6e4d6fa9ede76f8c0a9adaf7ec0986d0f1f firmware-imx-5.2.bin diff --git a/package/freescale-imx/firmware-imx/firmware-imx.mk b/package/freescale-imx/firmware-imx/firmware-imx.mk index 71e49e6bfb4..7e6f0e96e82 100644 --- a/package/freescale-imx/firmware-imx/firmware-imx.mk +++ b/package/freescale-imx/firmware-imx/firmware-imx.mk @@ -4,26 +4,29 @@ # ################################################################################ -FIRMWARE_IMX_VERSION = $(FREESCALE_IMX_VERSION) +FIRMWARE_IMX_VERSION = 5.2 FIRMWARE_IMX_SITE = $(FREESCALE_IMX_SITE) FIRMWARE_IMX_SOURCE = firmware-imx-$(FIRMWARE_IMX_VERSION).bin FIRMWARE_IMX_LICENSE = Freescale Semiconductor Software License Agreement, \ Atheros license (ath6k) -FIRMWARE_IMX_LICENSE_FILES = EULA licenses/vpu/EULA +FIRMWARE_IMX_LICENSE_FILES = EULA COPYING FIRMWARE_IMX_REDISTRIBUTE = NO -FIRMWARE_IMX_BLOBS = ath6k sdma vpu +FIRMWARE_IMX_BLOBS = sdma vpu define FIRMWARE_IMX_EXTRACT_CMDS $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(FIRMWARE_IMX_SOURCE)) endef define FIRMWARE_IMX_INSTALL_TARGET_CMDS - mkdir -p $(TARGET_DIR)/lib/firmware + mkdir -p $(TARGET_DIR)/lib/firmware/imx for blobdir in $(FIRMWARE_IMX_BLOBS); do \ cp -r $(@D)/firmware/$${blobdir} $(TARGET_DIR)/lib/firmware; \ done + cp -r $(@D)/firmware/epdc $(TARGET_DIR)/lib/firmware/imx + mv $(TARGET_DIR)/lib/firmware/imx/epdc/epdc_ED060XH2C1.fw.nonrestricted \ + $(TARGET_DIR)/lib/firmware/imx/epdc/epdc_ED060XH2C1.fw endef $(eval $(generic-package)) diff --git a/package/freescale-imx/freescale-imx.mk b/package/freescale-imx/freescale-imx.mk index 26c591b7a85..e8ca77f17b3 100644 --- a/package/freescale-imx/freescale-imx.mk +++ b/package/freescale-imx/freescale-imx.mk @@ -4,7 +4,6 @@ # ################################################################################ -FREESCALE_IMX_VERSION = 3.10.53-1.1.0 FREESCALE_IMX_SITE = http://www.freescale.com/lgfiles/NMG/MAD/YOCTO # Helper for self-extracting binaries distributed by Freescale. diff --git a/package/freescale-imx/imx-gpu-viv/Config.in b/package/freescale-imx/imx-gpu-viv/Config.in index 2a0cf84e1c8..c3867653960 100644 --- a/package/freescale-imx/imx-gpu-viv/Config.in +++ b/package/freescale-imx/imx-gpu-viv/Config.in @@ -33,8 +33,9 @@ choice config BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_X11 bool "X11" depends on BR2_PACKAGE_XORG7 - select BR2_PACKAGE_XLIB_LIBXDAMAGE # Runtime dependency - select BR2_PACKAGE_XLIB_LIBXEXT # Runtime dependency + select BR2_PACKAGE_XLIB_LIBXDAMAGE + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXFIXES comment "X11 backend needs Xorg package" depends on !BR2_PACKAGE_XORG7 @@ -58,6 +59,16 @@ config BR2_PACKAGE_PROVIDES_LIBGLES config BR2_PACKAGE_PROVIDES_LIBOPENVG default "imx-gpu-viv" +config BR2_PACKAGE_IMX_GPU_VIV_APITRACE + bool "install apitrace tools" + select BR2_PACKAGE_IMX_GPU_VIV_G2D + help + Copy the apitrace tool to the target. Apitrace consists + of a set of tools to trace, replay and/or inspect OpenGL, + OpenGL ES APIs calls + + http://apitrace.github.io/ + config BR2_PACKAGE_IMX_GPU_VIV_EXAMPLES bool "install examples" help @@ -65,4 +76,15 @@ config BR2_PACKAGE_IMX_GPU_VIV_EXAMPLES Warning: examples take approximately 150 MB of disk space. +config BR2_PACKAGE_IMX_GPU_VIV_G2D + bool "install G2D libraries" + help + Copy the GPU2D libraries to the target. + +config BR2_PACKAGE_IMX_GPU_VIV_GMEM_INFO + bool "install gmem_info tool" + help + Copy the gmem_info tool to the target which provides + information about GPU memory consumption. + endif diff --git a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash new file mode 100644 index 00000000000..149afc24b69 --- /dev/null +++ b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.hash @@ -0,0 +1,3 @@ +# locally computed +sha256 43fea6ebbb1222e0f594fff3b48147f4bb6173b85f2caa9fa6bf04a1c85ee93a imx-gpu-viv-5.0.11.p7.1-sfp.bin +sha256 e49ca1d31ca83bb50f6672325db37ae3754eb9073ad98a37790ab1209ea5cba8 imx-gpu-viv-5.0.11.p7.1-hfp.bin diff --git a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk index ef2399fd904..61710804b79 100644 --- a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk +++ b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk @@ -4,7 +4,7 @@ # ################################################################################ -IMX_GPU_VIV_BASE_VERSION = 5.0.11.p4.1 +IMX_GPU_VIV_BASE_VERSION = 5.0.11.p7.1 ifeq ($(BR2_ARM_EABIHF),y) IMX_GPU_VIV_VERSION = $(IMX_GPU_VIV_BASE_VERSION)-hfp else @@ -22,17 +22,18 @@ IMX_GPU_VIV_REDISTRIBUTE = NO IMX_GPU_VIV_PROVIDES = libegl libgles libopenvg IMX_GPU_VIV_LIB_TARGET = $(call qstrip,$(BR2_PACKAGE_IMX_GPU_VIV_OUTPUT)) +ifeq ($(IMX_GPU_VIV_LIB_TARGET),x11) +# The libGAL.so library provided by imx-gpu-viv uses X functions. Packages +# may want to link against libGAL.so (QT5 Base with OpenGL and X support +# does so). For this to work we need build dependencies to libXdamage, +# libXext and libXfixes so that X functions used in libGAL.so are referenced. +IMX_GPU_VIV_DEPENDENCIES += xlib_libXdamage xlib_libXext xlib_libXfixes +endif + define IMX_GPU_VIV_EXTRACT_CMDS $(call FREESCALE_IMX_EXTRACT_HELPER,$(DL_DIR)/$(IMX_GPU_VIV_SOURCE)) endef -# For some reason libGAL_egl for x11 is called libGAL_egl.dri.so -ifeq ($(IMX_GPU_VIV_LIB_TARGET),x11) -define IMX_GPU_VIV_FIXUP_SYMLINKS - ln -sf libGAL_egl.dri.so $(@D)/gpu-core/usr/lib/libGAL_egl.so -endef -endif - # Instead of building, we fix up the inconsistencies that exist # in the upstream archive here. # Make sure these commands are idempotent. @@ -49,8 +50,6 @@ define IMX_GPU_VIV_BUILD_CMDS ln -sf libGLESv2-$(IMX_GPU_VIV_LIB_TARGET).so $(@D)/gpu-core/usr/lib/libGLESv2.so.2.0.0 ln -sf libVIVANTE-$(IMX_GPU_VIV_LIB_TARGET).so $(@D)/gpu-core/usr/lib/libVIVANTE.so ln -sf libGAL-$(IMX_GPU_VIV_LIB_TARGET).so $(@D)/gpu-core/usr/lib/libGAL.so - ln -sf libGAL_egl.$(IMX_GPU_VIV_LIB_TARGET).so $(@D)/gpu-core/usr/lib/libGAL_egl.so - $(IMX_GPU_VIV_FIXUP_SYMLINKS) endef ifeq ($(IMX_GPU_VIV_LIB_TARGET),fb) @@ -62,9 +61,17 @@ define IMX_GPU_VIV_FIXUP_FB_HEADERS endef endif +ifeq ($(BR2_PACKAGE_IMX_GPU_VIV_G2D),y) +define IMX_GPU_VIV_INSTALL_G2D_STAGING + cp -dpfr $(@D)/g2d/usr/include/* $(STAGING_DIR)/usr/include/ + cp -dpfr $(@D)/g2d/usr/lib/* $(STAGING_DIR)/usr/lib/ +endef +endif + define IMX_GPU_VIV_INSTALL_STAGING_CMDS cp -r $(@D)/gpu-core/usr/* $(STAGING_DIR)/usr $(IMX_GPU_VIV_FIXUP_FB_HEADERS) + $(IMX_GPU_VIV_INSTALL_G2D_STAGING) for lib in egl glesv2 vg; do \ $(INSTALL) -m 0644 -D \ $(@D)/gpu-core/usr/lib/pkgconfig/$${lib}.pc \ @@ -72,6 +79,20 @@ define IMX_GPU_VIV_INSTALL_STAGING_CMDS done endef +ifeq ($(BR2_PACKAGE_IMX_GPU_VIV_APITRACE),y) +ifeq ($(IMX_GPU_VIV_LIB_TARGET),x11) +define IMX_GPU_VIV_INSTALL_APITRACE + cp -dpfr $(@D)/apitrace/x11/usr/bin/* $(TARGET_DIR)/usr/bin/ + cp -dpfr $(@D)/apitrace/x11/usr/lib/* $(TARGET_DIR)/usr/lib/ +endef +else +define IMX_GPU_VIV_INSTALL_APITRACE + cp -dpfr $(@D)/apitrace/non-x11/usr/bin/* $(TARGET_DIR)/usr/bin/ + cp -dpfr $(@D)/apitrace/non-x11/usr/lib/* $(TARGET_DIR)/usr/lib/ +endef +endif +endif + ifeq ($(BR2_PACKAGE_IMX_GPU_VIV_EXAMPLES),y) define IMX_GPU_VIV_INSTALL_EXAMPLES mkdir -p $(TARGET_DIR)/usr/share/examples/ @@ -79,11 +100,26 @@ define IMX_GPU_VIV_INSTALL_EXAMPLES endef endif +ifeq ($(BR2_PACKAGE_IMX_GPU_VIV_G2D),y) +define IMX_GPU_VIV_INSTALL_G2D + cp -dpfr $(@D)/g2d/usr/lib/* $(TARGET_DIR)/usr/lib/ +endef +endif + +ifeq ($(BR2_PACKAGE_IMX_GPU_VIV_GMEM_INFO),y) +define IMX_GPU_VIV_INSTALL_GMEM_INFO + cp -dpfr $(@D)/gpu-tools/gmem-info/usr/bin/* $(TARGET_DIR)/usr/bin/ +endef +endif + # On the target, remove the unused libraries. # Note that this is _required_, else ldconfig may create symlinks # to the wrong library define IMX_GPU_VIV_INSTALL_TARGET_CMDS + $(IMX_GPU_VIV_INSTALL_APITRACE) $(IMX_GPU_VIV_INSTALL_EXAMPLES) + $(IMX_GPU_VIV_INSTALL_G2D) + $(IMX_GPU_VIV_INSTALL_GMEM_INFO) cp -a $(@D)/gpu-core/usr/lib $(TARGET_DIR)/usr for lib in EGL GAL VIVANTE GLESv2; do \ for f in $(TARGET_DIR)/usr/lib/lib$${lib}-*.so; do \ diff --git a/package/freescale-imx/imx-kobs/0001-Fix-musl-build.patch b/package/freescale-imx/imx-kobs/0001-Fix-musl-build.patch new file mode 100644 index 00000000000..ce123de9cc4 --- /dev/null +++ b/package/freescale-imx/imx-kobs/0001-Fix-musl-build.patch @@ -0,0 +1,39 @@ +[PATCH] Fix musl build + +Signed-off-by: Gary Bisson +--- + src/mtd.c | 1 + + src/mtd.h | 5 +++++ + 2 files changed, 6 insertions(+) + +diff --git a/src/mtd.c b/src/mtd.c +index 1edc441..6d2264c 100644 +--- a/src/mtd.c ++++ b/src/mtd.c +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/src/mtd.h b/src/mtd.h +index bd21add..debfc84 100644 +--- a/src/mtd.h ++++ b/src/mtd.h +@@ -31,6 +31,11 @@ + #include "BootControlBlocks.h" + #include "rom_nand_hamming_code_ecc.h" + ++// musl library doesn't define loff_t ++#if !defined(__GLIBC__) && !defined(__UCLIBC__) ++#define loff_t off_t ++#endif ++ + //------------------------------------------------------------------------------ + // Re-definitions of true and false, because the standard ones aren't good + // enough? +-- +2.5.1 + diff --git a/package/freescale-imx/imx-kobs/0002-Fix-build-for-recent-toolchains.patch b/package/freescale-imx/imx-kobs/0002-Fix-build-for-recent-toolchains.patch new file mode 100644 index 00000000000..c5cfb802245 --- /dev/null +++ b/package/freescale-imx/imx-kobs/0002-Fix-build-for-recent-toolchains.patch @@ -0,0 +1,26 @@ +[PATCH] Fix build for recent toolchains + +Starting with Linux 4.4 headers, mtd-user.h isn't including stdint.h +anymore which breaks the build. + +Signed-off-by: Gary Bisson +--- + src/BootControlBlocks.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/BootControlBlocks.h b/src/BootControlBlocks.h +index 192eb61..aacdb64 100644 +--- a/src/BootControlBlocks.h ++++ b/src/BootControlBlocks.h +@@ -20,6 +20,8 @@ + #ifndef BOOTCONTROLBLOCKS_H_ + #define BOOTCONTROLBLOCKS_H_ + ++#include ++ + #define NCB_FINGERPRINT1 0x504d5453 //!< 'STMP' + #define NCB_FINGERPRINT2 0x2042434e //!< 'NCB' - NAND Control Block + #define NCB_FINGERPRINT3 0x4e494252 //!< 'RBIN' - ROM Boot Image Block - N +-- +2.6.4 + diff --git a/package/freescale-imx/imx-kobs/Config.in b/package/freescale-imx/imx-kobs/Config.in new file mode 100644 index 00000000000..fc2344ed0da --- /dev/null +++ b/package/freescale-imx/imx-kobs/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_IMX_KOBS + bool "imx-kobs" + depends on BR2_arm # Only relevant for i.MX + help + The imx-kobs tool is used for writing images to NAND on i.MX + platforms. + + This library is provided by Freescale as-is and doesn't have + an upstream. + diff --git a/package/freescale-imx/imx-kobs/imx-kobs.hash b/package/freescale-imx/imx-kobs/imx-kobs.hash new file mode 100644 index 00000000000..477f231d8c5 --- /dev/null +++ b/package/freescale-imx/imx-kobs/imx-kobs.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 28c7356187ae26a2b37fb37a4b7bfdb63b3628b72d737d897ae6d5b969fbb51a imx-kobs-5.1.tar.gz diff --git a/package/freescale-imx/imx-kobs/imx-kobs.mk b/package/freescale-imx/imx-kobs/imx-kobs.mk new file mode 100644 index 00000000000..bf015672082 --- /dev/null +++ b/package/freescale-imx/imx-kobs/imx-kobs.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# imx-kobs +# +################################################################################ + +IMX_KOBS_VERSION = 5.1 +IMX_KOBS_SITE = $(FREESCALE_IMX_SITE) +IMX_KOBS_LICENSE = GPLv2+ +IMX_KOBS_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/freescale-imx/imx-lib/imx-lib.hash b/package/freescale-imx/imx-lib/imx-lib.hash new file mode 100644 index 00000000000..8e4bd73eee3 --- /dev/null +++ b/package/freescale-imx/imx-lib/imx-lib.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 2b4547ffb1de328cf8997a09a423c6f015d808493efd11a98a5d42c6497e3445 imx-lib-5.1.tar.gz diff --git a/package/freescale-imx/imx-lib/imx-lib.mk b/package/freescale-imx/imx-lib/imx-lib.mk index 92739a895d8..b49357bd98d 100644 --- a/package/freescale-imx/imx-lib/imx-lib.mk +++ b/package/freescale-imx/imx-lib/imx-lib.mk @@ -4,10 +4,10 @@ # ################################################################################ -IMX_LIB_VERSION = $(FREESCALE_IMX_VERSION) +IMX_LIB_VERSION = 5.1 IMX_LIB_SITE = $(FREESCALE_IMX_SITE) IMX_LIB_LICENSE = LGPLv2.1+ -IMX_LIB_LICENSE_FILES = EULA +IMX_LIB_LICENSE_FILES = COPYING-LGPL-2.1 IMX_LIB_INSTALL_STAGING = YES @@ -21,7 +21,7 @@ IMX_LIB_INCLUDE = \ IMX_LIB_MAKE_ENV = \ $(TARGET_MAKE_ENV) \ $(TARGET_CONFIGURE_OPTS) \ - CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ PLATFORM=$(BR2_PACKAGE_FREESCALE_IMX_PLATFORM) \ INCLUDE="$(IMX_LIB_INCLUDE)" diff --git a/package/freescale-imx/imx-vpu/Config.in b/package/freescale-imx/imx-vpu/Config.in index 8a9541607bc..220385cec83 100644 --- a/package/freescale-imx/imx-vpu/Config.in +++ b/package/freescale-imx/imx-vpu/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_IMX_VPU bool "imx-vpu" - depends on BR2_LINUX_KERNEL depends on BR2_arm # Only relevant for i.MX select BR2_PACKAGE_FIRMWARE_IMX help @@ -11,7 +10,3 @@ config BR2_PACKAGE_IMX_VPU This library is provided by Freescale as-is and doesn't have an upstream. - -comment "imx-vpu needs an imx-specific Linux kernel to be built" - depends on BR2_arm - depends on !BR2_LINUX_KERNEL diff --git a/package/freescale-imx/imx-vpu/imx-vpu.hash b/package/freescale-imx/imx-vpu/imx-vpu.hash new file mode 100644 index 00000000000..3fdd092e169 --- /dev/null +++ b/package/freescale-imx/imx-vpu/imx-vpu.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 a266ab317fbd866541eae506d68983bcd361f49d1162a66bb34cb8088ceec88c imx-vpu-5.4.31.bin diff --git a/package/freescale-imx/imx-vpu/imx-vpu.mk b/package/freescale-imx/imx-vpu/imx-vpu.mk index 4c4a0311144..571cc402354 100644 --- a/package/freescale-imx/imx-vpu/imx-vpu.mk +++ b/package/freescale-imx/imx-vpu/imx-vpu.mk @@ -4,23 +4,20 @@ # ################################################################################ -IMX_VPU_VERSION = 5.4.27 +IMX_VPU_VERSION = 5.4.31 IMX_VPU_SITE = $(FREESCALE_IMX_SITE) IMX_VPU_SOURCE = imx-vpu-$(IMX_VPU_VERSION).bin IMX_VPU_INSTALL_STAGING = YES -# imx-vpu needs access to imx-specific kernel headers -IMX_VPU_DEPENDENCIES += linux IMX_VPU_MAKE_ENV = \ $(TARGET_MAKE_ENV) \ $(TARGET_CONFIGURE_OPTS) \ - CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)" \ - PLATFORM=$(BR2_PACKAGE_FREESCALE_IMX_PLATFORM) \ - INCLUDE="-idirafter $(LINUX_DIR)/include" + CROSS_COMPILE="$(TARGET_CROSS)" \ + PLATFORM=$(BR2_PACKAGE_FREESCALE_IMX_PLATFORM) IMX_VPU_LICENSE = Freescale Semiconductor Software License Agreement -IMX_VPU_LICENSE_FILES = EULA vpu/EULA.txt +IMX_VPU_LICENSE_FILES = EULA COPYING IMX_VPU_REDISTRIBUTE = NO define IMX_VPU_EXTRACT_CMDS diff --git a/package/freescale-imx/kernel-module-imx-gpu-viv/Config.in b/package/freescale-imx/kernel-module-imx-gpu-viv/Config.in new file mode 100644 index 00000000000..bcc55175bc9 --- /dev/null +++ b/package/freescale-imx/kernel-module-imx-gpu-viv/Config.in @@ -0,0 +1,14 @@ +comment "kernel-module-imx-gpu-viv needs a Linux kernel to be built" + depends on !BR2_LINUX_KERNEL + +config BR2_PACKAGE_KERNEL_MODULE_IMX_GPU_VIV + bool "kernel-module-imx-gpu-viv" + depends on BR2_LINUX_KERNEL + help + Kernel loadable module for Vivante GPU. + + This package uses an exact copy of the GPU kernel driver source code + of the same version as base and include fixes and improvements + developed by FSL Community + + https://github.com/Freescale/kernel-module-imx-gpu-viv diff --git a/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash b/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash new file mode 100644 index 00000000000..7d01afbed75 --- /dev/null +++ b/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 955037fd86d31cdddaed15c254f377f4b30a8abcf5a5e4f9185bd660ff14b7c3 kernel-module-imx-gpu-viv-eeeb23c0fb1cee01318088d417025263479c44ac.tar.gz diff --git a/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk b/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk new file mode 100644 index 00000000000..95b0a6bd9b3 --- /dev/null +++ b/package/freescale-imx/kernel-module-imx-gpu-viv/kernel-module-imx-gpu-viv.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# kernel-module-imx-gpu-viv +# +################################################################################ + +KERNEL_MODULE_IMX_GPU_VIV_VERSION = eeeb23c0fb1cee01318088d417025263479c44ac +KERNEL_MODULE_IMX_GPU_VIV_SITE = \ + $(call github,Freescale,kernel-module-imx-gpu-viv,$(KERNEL_MODULE_IMX_GPU_VIV_VERSION)) +KERNEL_MODULE_IMX_GPU_VIV_LICENSE = GPLv2 +KERNEL_MODULE_IMX_GPU_VIV_LICENSE_FILES = COPYING + +KERNEL_MODULE_IMX_GPU_VIV_MODULE_MAKE_OPTS = \ + AQROOT=$(@D)/kernel-module-imx-gpu-viv-src \ + KERNEL_DIR=$(LINUX_DIR) + +KERNEL_MODULE_IMX_GPU_VIV_MODULE_SUBDIRS = kernel-module-imx-gpu-viv-src + +$(eval $(kernel-module)) +$(eval $(generic-package)) diff --git a/package/freetype/freetype.hash b/package/freetype/freetype.hash index 16450d00fe4..dc238f2003c 100644 --- a/package/freetype/freetype.hash +++ b/package/freetype/freetype.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/freetype/files/freetype2/2.6/ -md5 5682890cb0267f6671dd3de6eabd3e69 freetype-2.6.tar.bz2 -sha1 cd2b144205dd2c61693e2d861069367aa3dde1bc freetype-2.6.tar.bz2 +# From http://sourceforge.net/projects/freetype/files/freetype2/2.6.2/ +md5 86109d0c998787d81ac582bad9adf82e freetype-2.6.2.tar.bz2 +sha1 29c22b85b77cb22cf95c13e7062e21f39fe6b17a freetype-2.6.2.tar.bz2 diff --git a/package/freetype/freetype.mk b/package/freetype/freetype.mk index e3c8240cb0d..fa11b0ca3d7 100644 --- a/package/freetype/freetype.mk +++ b/package/freetype/freetype.mk @@ -4,7 +4,7 @@ # ################################################################################ -FREETYPE_VERSION = 2.6 +FREETYPE_VERSION = 2.6.2 FREETYPE_SOURCE = freetype-$(FREETYPE_VERSION).tar.bz2 FREETYPE_SITE = http://downloads.sourceforge.net/project/freetype/freetype2/$(FREETYPE_VERSION) FREETYPE_INSTALL_STAGING = YES @@ -70,31 +70,6 @@ define FREETYPE_FIX_CONFIG_FILE_LIBS endef FREETYPE_POST_INSTALL_STAGING_HOOKS += FREETYPE_FIX_CONFIG_FILE_LIBS -# Version 2.5.1 reorganized headers out of freetype2/freetype. -# It is unexpected for some packages so symlink it until it spreads -# upstream. Note that we also have to remove the symlink prior to the -# installation process, because the installation process of freetype -# removes usr/include/Freetype2/freetype/config, before installing -# something in usr/include/Freetype2/config/ which no longer exists -# due to the symbolic link. -define FREETYPE_REMOVE_FREETYPE_INCLUDE_SYMLINK - $(RM) -f $(STAGING_DIR)/usr/include/freetype2/freetype -endef -FREETYPE_PRE_INSTALL_STAGING_HOOKS += FREETYPE_REMOVE_FREETYPE_INCLUDE_SYMLINK -define FREETYPE_FIX_FREETYPE_INCLUDE - ln -sf . $(STAGING_DIR)/usr/include/freetype2/freetype -endef -FREETYPE_POST_INSTALL_STAGING_HOOKS += FREETYPE_FIX_FREETYPE_INCLUDE - -define HOST_FREETYPE_REMOVE_FREETYPE_INCLUDE_SYMLINK - $(RM) -f $(HOST_DIR)/usr/include/freetype2/freetype -endef -HOST_FREETYPE_PRE_INSTALL_HOOKS += HOST_FREETYPE_REMOVE_FREETYPE_INCLUDE_SYMLINK -define HOST_FREETYPE_FIX_FREETYPE_INCLUDE - ln -sf . $(HOST_DIR)/usr/include/freetype2/freetype -endef -HOST_FREETYPE_POST_INSTALL_HOOKS += HOST_FREETYPE_FIX_FREETYPE_INCLUDE - $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/gauche/0001-fix-so-suffix.patch b/package/gauche/0001-fix-so-suffix.patch new file mode 100644 index 00000000000..b65e2699811 --- /dev/null +++ b/package/gauche/0001-fix-so-suffix.patch @@ -0,0 +1,31 @@ +With uclibc or musl configuration, $host does not match to '*-linux-gnu*'. +I touch configure directly instead of configure.ac because autoreconf +failed by version mismatch of autotools. + +Signed-off-by: Hiroshi Kawashima + +diff -ur a/configure b/configure +--- a/configure 2014-07-20 15:15:05.000000000 +0900 ++++ b/configure 2015-10-20 21:52:32.791442291 +0900 +@@ -6843,7 +6843,7 @@ + SHLIB_MAIN_LDFLAGS="" + SHLIB_OK=ok + ;; +- *-linux-gnu*|*-*-gnu*|*freebsd*|*dragonfly*) ++ *-linux-*|*-*-gnu*|*freebsd*|*dragonfly*) + SHLIB_SO_CFLAGS="-fPIC" + SHLIB_SO_LDFLAGS="$rpath -shared -o" + SHLIB_SO_SUFFIX="so" + +diff -ur a/configure.ac b/configure.ac +--- a/configure.ac 2015-10-21 21:33:17.370000200 +0900 ++++ b/configure.ac 2015-10-21 21:33:39.784110527 +0900 +@@ -572,7 +572,7 @@ + SHLIB_MAIN_LDFLAGS="" + SHLIB_OK=ok + ;; +- *-linux-gnu*|*-*-gnu*|*freebsd*|*dragonfly*) ++ *-linux-*|*-*-gnu*|*freebsd*|*dragonfly*) + SHLIB_SO_CFLAGS="-fPIC" + SHLIB_SO_LDFLAGS="$rpath -shared -o" + SHLIB_SO_SUFFIX="so" diff --git a/package/gauche/0002-gc-configure.ac-add-check-for-NO_GETCONTEXT-definition.patch b/package/gauche/0002-gc-configure.ac-add-check-for-NO_GETCONTEXT-definition.patch new file mode 100644 index 00000000000..6cc065693fd --- /dev/null +++ b/package/gauche/0002-gc-configure.ac-add-check-for-NO_GETCONTEXT-definition.patch @@ -0,0 +1,62 @@ +gc/configure.ac: add check for NO_GETCONTEXT definition + +This patch is ported from bdwgc package. Since Gauche uses an internal +copy of the boehm gc code, it is affected by the same problem. + +Both configure and configure.ac are modified because autoreconf fails +due to an incompatibility with the version of the autotools used by +Buildroot. + +Signed-off-by: Hiroshi Kawashima + +Original credits of patch in bdwgc package: +Signed-off-by: Samuel Martin +[yann.morin.1998@free.fr: add a comment, change variable name, use + AS_IF, remove debug traces, use AC_CHECK_FUNCS (as suggested by + Thomas)] +Signed-off-by: "Yann E. MORIN" +Cc: Thomas Petazzoni + +diff -ur a/gc/configure b/gc/configure +--- a/gc/configure 2015-11-12 21:41:02.394822056 +0900 ++++ b/gc/configure 2015-11-12 22:04:14.655157423 +0900 +@@ -16153,6 +16153,23 @@ + $as_echo "$ac_cv_fno_strict_aliasing" >&6; } + fi + ++# Check for getcontext (uClibc can be configured without it, for example) ++for ac_func in getcontext ++do : ++ ac_fn_c_check_func "$LINENO" "getcontext" "ac_cv_func_getcontext" ++if test "x$ac_cv_func_getcontext" = xyes; then : ++ cat >>confdefs.h <<_ACEOF ++#define HAVE_GETCONTEXT 1 ++_ACEOF ++ ++fi ++done ++ ++if test "$ac_cv_func_getcontext" = "no"; then : ++ CFLAGS="$CFLAGS -DNO_GETCONTEXT" ++ CPPFLAGS="$CPPFLAGS -DNO_GETCONTEXT" ++fi ++ + case "$host" in + # While IRIX 6 has libdl for the O32 and N32 ABIs, it's missing for N64 + # and unnecessary everywhere. +diff -ur a/gc/configure.ac b/gc/configure.ac +--- a/gc/configure.ac 2015-11-12 22:31:44.851510997 +0900 ++++ b/gc/configure.ac 2015-11-12 22:33:39.292191227 +0900 +@@ -459,6 +459,12 @@ + AC_MSG_RESULT($ac_cv_fno_strict_aliasing) + fi + ++# Check for getcontext (uClibc can be configured without it, for example) ++AC_CHECK_FUNCS([getcontext]) ++AS_IF([test "$ac_cv_func_getcontext" = "no"], ++ [CFLAGS="$CFLAGS -DNO_GETCONTEXT" ++ CPPFLAGS="$CPPFLAGS -DNO_GETCONTEXT"]) ++ + case "$host" in + # While IRIX 6 has libdl for the O32 and N32 ABIs, it's missing for N64 + # and unnecessary everywhere. diff --git a/package/gauche/Config.in b/package/gauche/Config.in new file mode 100644 index 00000000000..3ca012d3f8b --- /dev/null +++ b/package/gauche/Config.in @@ -0,0 +1,28 @@ +# Architecture dependency from the bundled bdwgc. +config BR2_PACKAGE_GAUCHE_ARCH_SUPPORTS + bool + default y if BR2_arm || BR2_armeb || BR2_i386 || BR2_m68k || \ + BR2_mips || BR2_mipsel || BR2_mips64 || \ + BR2_mips64el || BR2_powerpc || BR2_powerpc64 || \ + BR2_powerpc64le || BR2_sh || BR2_sh64 || BR2_x86_64 + +config BR2_PACKAGE_GAUCHE + bool "gauche" + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_USE_MMU # fork() + depends on BR2_PACKAGE_GAUCHE_ARCH_SUPPORTS + depends on !BR2_STATIC_LIBS + help + Gauche is an R7RS Scheme implementation developed to be a + handy script interpreter, which allows programmers and + system administrators to write small to large scripts for + their daily chores. Quick startup, built-in system + interface, native multilingual support are some of its + goals. + + http://practical-scheme.net/gauche/ + +comment "gauche needs a toolchain w/ NPTL, dynamic library" + depends on BR2_USE_MMU + depends on BR2_PACKAGE_GAUCHE_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS diff --git a/package/gauche/gauche.hash b/package/gauche/gauche.hash new file mode 100644 index 00000000000..975e958a084 --- /dev/null +++ b/package/gauche/gauche.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 7b18bcd70beaced1e004594be46c8cff95795318f6f5830dd2a8a700410fc149 Gauche-0.9.4.tgz +sha256 0ff5986540d8ad89eee595de766810f09e489a6a3363b47a65ce7ad18701ee01 13a196557848f22a1607a300643131345e9f32b3.patch diff --git a/package/gauche/gauche.mk b/package/gauche/gauche.mk new file mode 100644 index 00000000000..85fcc718486 --- /dev/null +++ b/package/gauche/gauche.mk @@ -0,0 +1,34 @@ +################################################################################ +# +# gauche +# +################################################################################ + +GAUCHE_VERSION = 0.9.4 +GAUCHE_SOURCE = Gauche-$(GAUCHE_VERSION).tgz +GAUCHE_SITE = http://downloads.sourceforge.net/project/gauche/Gauche +GAUCHE_LICENSE = BSD-3c, Boehm-gc, SRFI (srfi-11.scm), reload (reload.scm) +GAUCHE_LICENSE_FILES = COPYING +GAUCHE_DEPENDENCIES = host-gauche +GAUCHE_PATCH = https://github.com/shirok/Gauche/commit/13a196557848f22a1607a300643131345e9f32b3.patch + +HOST_GAUCHE_CONF_OPTS = --without-zlib +GAUCHE_CONF_OPTS = --without-libatomic-ops + +ifeq ($(BR2_PACKAGE_ZLIB),y) +GAUCHE_CONF_OPTS += --with-zlib=$(STAGING_DIR) +GAUCHE_DEPENDENCIES += zlib +else +GAUCHE_CONF_OPTS += --without-zlib +endif + +# Detection of c99 support in configure fails without WCHAR. To enable +# automatic detection of c99 support by configure, we need to enable +# WCHAR in toolchain. But actually we do not need WCHAR at gauche +# runtime. So reuesting WCHAR in toolchain just for automatic detection +# will be overkill. To solve this, explicitly -std=gnu99 is specified +# here. +GAUCHE_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=gnu99" + +$(eval $(host-autotools-package)) +$(eval $(autotools-package)) diff --git a/package/gawk/gawk.mk b/package/gawk/gawk.mk index 18206893597..da9be95cd07 100644 --- a/package/gawk/gawk.mk +++ b/package/gawk/gawk.mk @@ -7,7 +7,7 @@ GAWK_VERSION = 4.1.3 GAWK_SOURCE = gawk-$(GAWK_VERSION).tar.xz GAWK_SITE = $(BR2_GNU_MIRROR)/gawk -GAWK_DEPENDENCIES = host-gawk $(if $(BR2_PACKAGE_MPFR),mpfr) +GAWK_DEPENDENCIES = host-gawk GAWK_LICENSE = GPLv3+ GAWK_LICENSE_FILES = COPYING @@ -16,9 +16,31 @@ ifeq ($(BR2_PACKAGE_BUSYBOX),y) GAWK_DEPENDENCIES += busybox endif -# We don't have a host-busybox +ifeq ($(BR2_PACKAGE_LIBSIGSEGV),y) +GAWK_DEPENDENCIES += libsigsegv +endif + +# --with-mpfr requires an argument so just let +# configure find it automatically +ifeq ($(BR2_PACKAGE_MPFR),y) +GAWK_DEPENDENCIES += mpfr +else +GAWK_CONF_OPTS += --without-mpfr +endif + +# --with-readline requires an argument so just let +# configure find it automatically +ifeq ($(BR2_PACKAGE_READLINE),y) +GAWK_DEPENDENCIES += readline +else +GAWK_CONF_OPTS += --without-readline +endif + +# We don't have a host-busybox, and we don't want to use readline or mpfr HOST_GAWK_DEPENDENCIES = +HOST_GAWK_CONF_OPTS = --without-readline --without-mpfr + define GAWK_CREATE_SYMLINK ln -sf /usr/bin/gawk $(TARGET_DIR)/usr/bin/awk endef diff --git a/package/gcc/4.7.4/900-musl-support.patch b/package/gcc/4.7.4/900-musl-support.patch index 1cb67010e00..67b8c30c1d9 100644 --- a/package/gcc/4.7.4/900-musl-support.patch +++ b/package/gcc/4.7.4/900-musl-support.patch @@ -323,24 +323,6 @@ Index: b/gcc/configure =================================================================== --- a/gcc/configure +++ b/gcc/configure -@@ -26791,6 +26791,9 @@ - else - gcc_cv_libc_provides_ssp=no - case "$target" in -+ *-*-musl*) -+ # All versions of musl provide stack protector -+ gcc_cv_libc_provides_ssp=yes;; - *-*-linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu) - # glibc 2.4 and later provides __stack_chk_fail and - # either __stack_chk_guard, or TLS access to stack guard canary. -@@ -26824,6 +26827,7 @@ - # ) and for now - # simply assert that glibc does provide this, which is true for all - # realistically usable GNU/Hurd configurations. -+ # All supported versions of musl provide it as well - gcc_cv_libc_provides_ssp=yes;; - *-*-darwin* | *-*-freebsd*) - ac_fn_c_check_func "$LINENO" "__stack_chk_fail" "ac_cv_func___stack_chk_fail" @@ -26906,6 +26910,9 @@ gcc_cv_target_dl_iterate_phdr=no fi @@ -355,24 +337,6 @@ Index: b/gcc/configure.ac =================================================================== --- a/gcc/configure.ac +++ b/gcc/configure.ac -@@ -4669,6 +4669,9 @@ - gcc_cv_libc_provides_ssp, - [gcc_cv_libc_provides_ssp=no - case "$target" in -+ *-*-musl*) -+ # All versions of musl provide stack protector -+ gcc_cv_libc_provides_ssp=yes;; - *-*-linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu) - [# glibc 2.4 and later provides __stack_chk_fail and - # either __stack_chk_guard, or TLS access to stack guard canary. -@@ -4702,6 +4705,7 @@ - # ) and for now - # simply assert that glibc does provide this, which is true for all - # realistically usable GNU/Hurd configurations. -+ # All supported versions of musl provide it as well - gcc_cv_libc_provides_ssp=yes;; - *-*-darwin* | *-*-freebsd*) - AC_CHECK_FUNC(__stack_chk_fail,[gcc_cv_libc_provides_ssp=yes], @@ -4767,6 +4771,9 @@ gcc_cv_target_dl_iterate_phdr=no fi diff --git a/package/gcc/4.7.4/910-gcc-poison-system-directories.patch b/package/gcc/4.7.4/910-gcc-poison-system-directories.patch deleted file mode 100644 index bc2d5c60c5e..00000000000 --- a/package/gcc/4.7.4/910-gcc-poison-system-directories.patch +++ /dev/null @@ -1,207 +0,0 @@ -From 160397ef3c3331099af028f1b8d3e085b07d88ad Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 08:59:00 +0400 -Subject: [PATCH 16/35] gcc: poison-system-directories - -Adapted to Buildroot and gcc 4.7.4 by Thomas Petazzoni, especially the -addition of the BR_COMPILER_PARANOID_UNSAFE_PATH environment variable. - -Signed-off-by: Khem Raj -Signed-off-by: Thomas Petazzoni - -Upstream-Status: Inappropriate [distribution: codesourcery] ---- - gcc/Makefile.in | 2 +- - gcc/common.opt | 4 ++++ - gcc/config.in | 6 ++++++ - gcc/configure | 20 ++++++++++++++++++-- - gcc/configure.ac | 10 ++++++++++ - gcc/doc/invoke.texi | 9 +++++++++ - gcc/gcc.c | 2 ++ - gcc/incpath.c | 19 +++++++++++++++++++ - 8 files changed, 69 insertions(+), 3 deletions(-) - -Index: b/gcc/common.opt -=================================================================== ---- a/gcc/common.opt -+++ b/gcc/common.opt -@@ -585,6 +585,10 @@ - Common Var(warn_padded) Warning - Warn when padding is required to align structure members - -+Wpoison-system-directories -+Common Var(flag_poison_system_directories) Init(1) Warning -+Warn for -I and -L options using system directories if cross compiling -+ - Wshadow - Common Var(warn_shadow) Warning - Warn when one local variable shadows another -Index: b/gcc/config.in -=================================================================== ---- a/gcc/config.in -+++ b/gcc/config.in -@@ -144,6 +144,12 @@ - #endif - - -+/* Define to warn for use of native system header directories */ -+#ifndef USED_FOR_TARGET -+#undef ENABLE_POISON_SYSTEM_DIRECTORIES -+#endif -+ -+ - /* Define if you want all operations on RTL (the basic data structure of the - optimizer and back end) to be checked for dynamic type safety at runtime. - This is quite expensive. */ -Index: b/gcc/configure -=================================================================== ---- a/gcc/configure -+++ b/gcc/configure -@@ -918,6 +918,7 @@ - with_system_zlib - enable_maintainer_mode - enable_version_specific_runtime_libs -+enable_poison_system_directories - enable_plugin - enable_libquadmath_support - with_linker_hash_style -@@ -1632,6 +1633,8 @@ - --enable-version-specific-runtime-libs - specify that runtime libraries should be installed - in a compiler-specific directory -+ --enable-poison-system-directories -+ warn for use of native system header directories - --enable-plugin enable plugin support - --disable-libquadmath-support - disable libquadmath support for Fortran -@@ -27186,6 +27189,19 @@ - fi - - -+# Check whether --enable-poison-system-directories was given. -+if test "${enable_poison_system_directories+set}" = set; then : -+ enableval=$enable_poison_system_directories; -+else -+ enable_poison_system_directories=no -+fi -+ -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ -+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h -+ -+fi -+ - # Substitute configuration variables - - -Index: b/gcc/configure.ac -=================================================================== ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -5037,6 +5037,16 @@ - [specify that runtime libraries should be - installed in a compiler-specific directory])]) - -+AC_ARG_ENABLE([poison-system-directories], -+ AS_HELP_STRING([--enable-poison-system-directories], -+ [warn for use of native system header directories]),, -+ [enable_poison_system_directories=no]) -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], -+ [1], -+ [Define to warn for use of native system header directories]) -+fi -+ - # Substitute configuration variables - AC_SUBST(subdirs) - AC_SUBST(srcdir) -Index: b/gcc/doc/invoke.texi -=================================================================== ---- a/gcc/doc/invoke.texi -+++ b/gcc/doc/invoke.texi -@@ -260,6 +260,7 @@ - -Woverlength-strings -Wpacked -Wpacked-bitfield-compat -Wpadded @gol - -Wparentheses -Wpedantic-ms-format -Wno-pedantic-ms-format @gol - -Wpointer-arith -Wno-pointer-to-int-cast @gol -+-Wno-poison-system-directories @gol - -Wredundant-decls @gol - -Wreturn-type -Wsequence-point -Wshadow @gol - -Wsign-compare -Wsign-conversion -Wstack-protector @gol -@@ -3880,6 +3881,14 @@ - for most targets, it is made up of code and thus requires the stack - to be made executable in order for the program to work properly. - -+@item -Wno-poison-system-directories -+@opindex Wno-poison-system-directories -+Do not warn for @option{-I} or @option{-L} options using system -+directories such as @file{/usr/include} when cross compiling. This -+option is intended for use in chroot environments when such -+directories contain the correct headers and libraries for the target -+system rather than the host. -+ - @item -Wfloat-equal - @opindex Wfloat-equal - @opindex Wno-float-equal -Index: b/gcc/gcc.c -=================================================================== ---- a/gcc/gcc.c -+++ b/gcc/gcc.c -@@ -674,6 +674,8 @@ - %{flto} %{flto=*} %l " LINK_PIE_SPEC \ - "%X %{o*} %{e*} %{N} %{n} %{r}\ - %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}}\ -+ %{Wno-poison-system-directories:--no-poison-system-directories}\ -+ %{Werror=poison-system-directories:--error-poison-system-directories}\ - %{static:} %{L*} %(mfwrap) %(link_libgcc) %o\ - %{fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)}\ - %{fgnu-tm:%:include(libitm.spec)%(link_itm)}\ -@@ -3907,6 +3909,12 @@ - gcc_assert (!compare_debug_opt); - } - -+ temp = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); -+ if (temp && strlen(temp) > 0) -+ { -+ save_switch("-Werror=poison-system-directories", 0, NULL, false); -+ } -+ - /* Set up the search paths. We add directories that we expect to - contain GNU Toolchain components before directories specified by - the machine description so that we will find GNU components (like -Index: b/gcc/incpath.c -=================================================================== ---- a/gcc/incpath.c -+++ b/gcc/incpath.c -@@ -30,6 +30,7 @@ - #include "intl.h" - #include "incpath.h" - #include "cppdefault.h" -+#include "diagnostic-core.h" - - /* Microsoft Windows does not natively support inodes. - VMS has non-numeric inodes. */ -@@ -373,6 +374,24 @@ - } - fprintf (stderr, _("End of search list.\n")); - } -+ -+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES -+ if (flag_poison_system_directories) -+ { -+ struct cpp_dir *p; -+ -+ for (p = heads[QUOTE]; p; p = p->next) -+ { -+ if ((!strncmp (p->name, "/usr/include", 12)) -+ || (!strncmp (p->name, "/usr/local/include", 18)) -+ || (!strncmp (p->name, "/usr/X11R6/include", 18))) -+ warning (OPT_Wpoison_system_directories, -+ "include location \"%s\" is unsafe for " -+ "cross-compilation", -+ p->name); -+ } -+ } -+#endif - } - - /* Use given -I paths for #include "..." but not #include <...>, and diff --git a/package/gcc/4.8.5/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch b/package/gcc/4.8.5/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch new file mode 100644 index 00000000000..c11ad35aac5 --- /dev/null +++ b/package/gcc/4.8.5/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch @@ -0,0 +1,29 @@ +From 9bf6066d588632dab9f78932df15b5b4140f31f3 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +Date: Fri, 6 Nov 2015 14:27:23 +0100 +Subject: [PATCH] gcc/config.gcc: fix typo for powerpc e6500 cpu_is_64bit + +Otherwise it is not recognized as a 64-bit powerpc and gcc will not generate +64-bit binaries by default. + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + gcc/config.gcc | 2 +- + 2 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/gcc/config.gcc b/gcc/config.gcc +index 4a7cbd2..9cc765e 100644 +--- a/gcc/config.gcc ++++ b/gcc/config.gcc +@@ -439,7 +439,7 @@ powerpc*-*-*) + cpu_type=rs6000 + extra_headers="ppc-asm.h altivec.h spe.h ppu_intrinsics.h paired.h spu2vmx.h vec_types.h si2vmx.h htmintrin.h htmxlintrin.h" + case x$with_cpu in +- xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345678]|xpower6x|xrs64a|xcell|xa2|xe500mc64|xe5500|Xe6500) ++ xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345678]|xpower6x|xrs64a|xcell|xa2|xe500mc64|xe5500|xe6500) + cpu_is_64bit=yes + ;; + esac +-- +2.6.2 + diff --git a/package/gcc/4.8.5/870-xtensa-add-mauto-litpools-option.patch b/package/gcc/4.8.5/870-xtensa-add-mauto-litpools-option.patch new file mode 100644 index 00000000000..aa1376c44c3 --- /dev/null +++ b/package/gcc/4.8.5/870-xtensa-add-mauto-litpools-option.patch @@ -0,0 +1,290 @@ +From 6d852ffb43b111a39162135c95249e749c4e285b Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Thu, 6 Aug 2015 01:16:02 +0300 +Subject: [PATCH] xtensa: add -mauto-litpools option + +With support from assembler this option allows compiling huge functions, +where single literal pool at the beginning of a function may not be +reachable by L32R instructions at its end. + +Currently assembler --auto-litpools option cannot deal with literals +used from multiple locations separated by more than 256 KBytes of code. +Don't turn constants into literals, instead use MOVI instruction to load +them into registers and let the assembler turn them into literals as +necessary. + +2015-08-12 Max Filippov +gcc/ + * config/xtensa/constraints.md (define_constraint "Y"): New + constraint. + * config/xtensa/elf.h (ASM_SPEC): Add m(no-)auto-litpools. + * config/xtensa/linux.h (ASM_SPEC): Likewise. + * config/xtensa/predicates.md (move_operand): Match constants + and symbols in the presence of TARGET_AUTO_LITPOOLS. + * config/xtensa/xtensa.c (xtensa_valid_move): Don't allow + immediate references to TLS data. + (xtensa_emit_move_sequence): Don't force constants to memory in + the presence of TARGET_AUTO_LITPOOLS. + (print_operand): Add 'y' format, same as default, but capable of + printing SF mode constants as well. + * config/xtensa/xtensa.md (movsi_internal, movhi_internal) + (movsf_internal): Add movi pattern that loads literal. + (movsf, movdf): Don't force constants to memory in the presence + of TARGET_AUTO_LITPOOLS. + (movdf_internal): Add 'Y' constraint. + * config/xtensa/xtensa.opt (mauto-litpools): New option. + +Signed-off-by: Max Filippov +--- +Backported from: r226828 +Changes to ChangeLogs and documentation are dropped. + + gcc/config/xtensa/constraints.md | 5 +++++ + gcc/config/xtensa/elf.h | 4 +++- + gcc/config/xtensa/linux.h | 4 +++- + gcc/config/xtensa/predicates.md | 3 ++- + gcc/config/xtensa/xtensa.c | 19 ++++++++++++++++++- + gcc/config/xtensa/xtensa.md | 35 +++++++++++++++++++---------------- + gcc/config/xtensa/xtensa.opt | 4 ++++ + 7 files changed, 54 insertions(+), 20 deletions(-) + +diff --git a/gcc/config/xtensa/constraints.md b/gcc/config/xtensa/constraints.md +index 30f4c1f..773d4f9 100644 +--- a/gcc/config/xtensa/constraints.md ++++ b/gcc/config/xtensa/constraints.md +@@ -111,6 +111,11 @@ + (and (match_code "const_int") + (match_test "xtensa_mask_immediate (ival)"))) + ++(define_constraint "Y" ++ "A constant that can be used in relaxed MOVI instructions." ++ (and (match_code "const_int,const_double,const,symbol_ref,label_ref") ++ (match_test "TARGET_AUTO_LITPOOLS"))) ++ + ;; Memory constraints. Do not use define_memory_constraint here. Doing so + ;; causes reload to force some constants into the constant pool, but since + ;; the Xtensa constant pool can only be accessed with L32R instructions, it +diff --git a/gcc/config/xtensa/elf.h b/gcc/config/xtensa/elf.h +index e59bede..12056f7 100644 +--- a/gcc/config/xtensa/elf.h ++++ b/gcc/config/xtensa/elf.h +@@ -48,7 +48,9 @@ along with GCC; see the file COPYING3. If not see + %{mtarget-align:--target-align} \ + %{mno-target-align:--no-target-align} \ + %{mlongcalls:--longcalls} \ +- %{mno-longcalls:--no-longcalls}" ++ %{mno-longcalls:--no-longcalls} \ ++ %{mauto-litpools:--auto-litpools} \ ++ %{mno-auto-litpools:--no-auto-litpools}" + + #undef LIB_SPEC + #define LIB_SPEC "-lc -lsim -lc -lhandlers-sim -lhal" +diff --git a/gcc/config/xtensa/linux.h b/gcc/config/xtensa/linux.h +index 675aacf..5b0243a 100644 +--- a/gcc/config/xtensa/linux.h ++++ b/gcc/config/xtensa/linux.h +@@ -42,7 +42,9 @@ along with GCC; see the file COPYING3. If not see + %{mtarget-align:--target-align} \ + %{mno-target-align:--no-target-align} \ + %{mlongcalls:--longcalls} \ +- %{mno-longcalls:--no-longcalls}" ++ %{mno-longcalls:--no-longcalls} \ ++ %{mauto-litpools:--auto-litpools} \ ++ %{mno-auto-litpools:--no-auto-litpools}" + + #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" + +diff --git a/gcc/config/xtensa/predicates.md b/gcc/config/xtensa/predicates.md +index e02209e..d7dfa11 100644 +--- a/gcc/config/xtensa/predicates.md ++++ b/gcc/config/xtensa/predicates.md +@@ -142,7 +142,8 @@ + (match_test "GET_MODE_CLASS (mode) == MODE_INT + && xtensa_simm12b (INTVAL (op))")) + (and (match_code "const_int,const_double,const,symbol_ref,label_ref") +- (match_test "TARGET_CONST16 && CONSTANT_P (op) ++ (match_test "(TARGET_CONST16 || TARGET_AUTO_LITPOOLS) ++ && CONSTANT_P (op) + && GET_MODE_SIZE (mode) % UNITS_PER_WORD == 0"))))) + + ;; Accept the floating point constant 1 in the appropriate mode. +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index eb039ba..206ff80 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -501,6 +501,9 @@ xtensa_valid_move (machine_mode mode, rtx *operands) + { + int dst_regnum = xt_true_regnum (operands[0]); + ++ if (xtensa_tls_referenced_p (operands[1])) ++ return FALSE; ++ + /* The stack pointer can only be assigned with a MOVSP opcode. */ + if (dst_regnum == STACK_POINTER_REGNUM) + return !TARGET_WINDOWED_ABI +@@ -1069,7 +1072,7 @@ xtensa_emit_move_sequence (rtx *operands, machine_mode mode) + return 1; + } + +- if (! TARGET_CONST16) ++ if (! TARGET_AUTO_LITPOOLS && ! TARGET_CONST16) + { + src = force_const_mem (SImode, src); + operands[1] = src; +@@ -2449,6 +2452,20 @@ print_operand (FILE *file, rtx x, int letter) + } + break; + ++ case 'y': ++ if (GET_CODE (x) == CONST_DOUBLE && ++ GET_MODE (x) == SFmode) ++ { ++ REAL_VALUE_TYPE r; ++ long l; ++ REAL_VALUE_FROM_CONST_DOUBLE (r, x); ++ REAL_VALUE_TO_TARGET_SINGLE (r, l); ++ fprintf (file, "0x%08lx", l); ++ break; ++ } ++ ++ /* fall through */ ++ + default: + if (GET_CODE (x) == REG || GET_CODE (x) == SUBREG) + fprintf (file, "%s", reg_names[xt_true_regnum (x)]); +diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md +index 6d84384..0e673a3 100644 +--- a/gcc/config/xtensa/xtensa.md ++++ b/gcc/config/xtensa/xtensa.md +@@ -761,8 +761,8 @@ + }) + + (define_insn "movsi_internal" +- [(set (match_operand:SI 0 "nonimmed_operand" "=D,D,D,D,R,R,a,q,a,W,a,a,U,*a,*A") +- (match_operand:SI 1 "move_operand" "M,D,d,R,D,d,r,r,I,i,T,U,r,*A,*r"))] ++ [(set (match_operand:SI 0 "nonimmed_operand" "=D,D,D,D,R,R,a,q,a,a,W,a,a,U,*a,*A") ++ (match_operand:SI 1 "move_operand" "M,D,d,R,D,d,r,r,I,Y,i,T,U,r,*A,*r"))] + "xtensa_valid_move (SImode, operands)" + "@ + movi.n\t%0, %x1 +@@ -774,15 +774,16 @@ + mov\t%0, %1 + movsp\t%0, %1 + movi\t%0, %x1 ++ movi\t%0, %1 + const16\t%0, %t1\;const16\t%0, %b1 + %v1l32r\t%0, %1 + %v1l32i\t%0, %1 + %v0s32i\t%1, %0 + rsr\t%0, ACCLO + wsr\t%1, ACCLO" +- [(set_attr "type" "move,move,move,load,store,store,move,move,move,move,load,load,store,rsr,wsr") ++ [(set_attr "type" "move,move,move,load,store,store,move,move,move,move,move,load,load,store,rsr,wsr") + (set_attr "mode" "SI") +- (set_attr "length" "2,2,2,2,2,2,3,3,3,6,3,3,3,3,3")]) ++ (set_attr "length" "2,2,2,2,2,2,3,3,3,3,6,3,3,3,3,3")]) + + ;; 16-bit Integer moves + +@@ -796,21 +797,22 @@ + }) + + (define_insn "movhi_internal" +- [(set (match_operand:HI 0 "nonimmed_operand" "=D,D,a,a,a,U,*a,*A") +- (match_operand:HI 1 "move_operand" "M,d,r,I,U,r,*A,*r"))] ++ [(set (match_operand:HI 0 "nonimmed_operand" "=D,D,a,a,a,a,U,*a,*A") ++ (match_operand:HI 1 "move_operand" "M,d,r,I,Y,U,r,*A,*r"))] + "xtensa_valid_move (HImode, operands)" + "@ + movi.n\t%0, %x1 + mov.n\t%0, %1 + mov\t%0, %1 + movi\t%0, %x1 ++ movi\t%0, %1 + %v1l16ui\t%0, %1 + %v0s16i\t%1, %0 + rsr\t%0, ACCLO + wsr\t%1, ACCLO" +- [(set_attr "type" "move,move,move,move,load,store,rsr,wsr") ++ [(set_attr "type" "move,move,move,move,move,load,store,rsr,wsr") + (set_attr "mode" "HI") +- (set_attr "length" "2,2,3,3,3,3,3,3")]) ++ (set_attr "length" "2,2,3,3,3,3,3,3,3")]) + + ;; 8-bit Integer moves + +@@ -881,7 +883,7 @@ + (match_operand:SF 1 "general_operand" ""))] + "" + { +- if (!TARGET_CONST16 && CONSTANT_P (operands[1])) ++ if (!TARGET_CONST16 && !TARGET_AUTO_LITPOOLS && CONSTANT_P (operands[1])) + operands[1] = force_const_mem (SFmode, operands[1]); + + if ((!register_operand (operands[0], SFmode) +@@ -896,8 +898,8 @@ + }) + + (define_insn "movsf_internal" +- [(set (match_operand:SF 0 "nonimmed_operand" "=f,f,U,D,D,R,a,f,a,W,a,a,U") +- (match_operand:SF 1 "move_operand" "f,U,f,d,R,d,r,r,f,iF,T,U,r"))] ++ [(set (match_operand:SF 0 "nonimmed_operand" "=f,f,U,D,D,R,a,f,a,a,W,a,a,U") ++ (match_operand:SF 1 "move_operand" "f,U,f,d,R,d,r,r,f,Y,iF,T,U,r"))] + "((register_operand (operands[0], SFmode) + || register_operand (operands[1], SFmode)) + && !(FP_REG_P (xt_true_regnum (operands[0])) +@@ -912,13 +914,14 @@ + mov\t%0, %1 + wfr\t%0, %1 + rfr\t%0, %1 ++ movi\t%0, %y1 + const16\t%0, %t1\;const16\t%0, %b1 + %v1l32r\t%0, %1 + %v1l32i\t%0, %1 + %v0s32i\t%1, %0" +- [(set_attr "type" "farith,fload,fstore,move,load,store,move,farith,farith,move,load,load,store") ++ [(set_attr "type" "farith,fload,fstore,move,load,store,move,farith,farith,move,move,load,load,store") + (set_attr "mode" "SF") +- (set_attr "length" "3,3,3,2,2,2,3,3,3,6,3,3,3")]) ++ (set_attr "length" "3,3,3,2,2,2,3,3,3,3,6,3,3,3")]) + + (define_insn "*lsiu" + [(set (match_operand:SF 0 "register_operand" "=f") +@@ -991,7 +994,7 @@ + (match_operand:DF 1 "general_operand" ""))] + "" + { +- if (CONSTANT_P (operands[1]) && !TARGET_CONST16) ++ if (CONSTANT_P (operands[1]) && !TARGET_CONST16 && !TARGET_AUTO_LITPOOLS) + operands[1] = force_const_mem (DFmode, operands[1]); + + if (!register_operand (operands[0], DFmode) +@@ -1002,8 +1005,8 @@ + }) + + (define_insn_and_split "movdf_internal" +- [(set (match_operand:DF 0 "nonimmed_operand" "=a,W,a,a,U") +- (match_operand:DF 1 "move_operand" "r,iF,T,U,r"))] ++ [(set (match_operand:DF 0 "nonimmed_operand" "=a,a,W,a,a,U") ++ (match_operand:DF 1 "move_operand" "r,Y,iF,T,U,r"))] + "register_operand (operands[0], DFmode) + || register_operand (operands[1], DFmode)" + "#" +diff --git a/gcc/config/xtensa/xtensa.opt b/gcc/config/xtensa/xtensa.opt +index 2fd6cee..21c6e96 100644 +--- a/gcc/config/xtensa/xtensa.opt ++++ b/gcc/config/xtensa/xtensa.opt +@@ -38,6 +38,10 @@ mtext-section-literals + Target + Intersperse literal pools with code in the text section + ++mauto-litpools ++Target Report Mask(AUTO_LITPOOLS) ++Relax literals in assembler and place them automatically in the text section ++ + mserialize-volatile + Target Report Mask(SERIALIZE_VOLATILE) + -mno-serialize-volatile Do not serialize volatile memory references with MEMW instructions +-- +1.8.1.4 + diff --git a/package/gcc/4.8.5/871-xtensa-reimplement-register-spilling.patch b/package/gcc/4.8.5/871-xtensa-reimplement-register-spilling.patch new file mode 100644 index 00000000000..abc7a08e8d2 --- /dev/null +++ b/package/gcc/4.8.5/871-xtensa-reimplement-register-spilling.patch @@ -0,0 +1,76 @@ +From 05154174b369505238b759cf80d595d8cfc8c731 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Mon, 10 Aug 2015 21:35:20 +0300 +Subject: [PATCH 1/3] xtensa: reimplement register spilling + +Spilling windowed registers in userspace is much easier, more portable, +less error-prone and equally effective as in kernel. Now that register +spilling syscall is considered obsolete in the xtensa linux kernel +replace it with CALL12 followed by series of ENTRY in libgcc. + +2015-08-18 Max Filippov +libgcc/ + * config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill): Use + CALL12 followed by series of ENTRY to spill windowed registers. + (__xtensa_nonlocal_goto): Call __xtensa_libgcc_window_spill + instead of making linux spill syscall. + +Signed-off-by: Max Filippov +--- +Backported from: r226962 + + libgcc/config/xtensa/lib2funcs.S | 30 +++++++++++++++++++++++------- + 1 file changed, 23 insertions(+), 7 deletions(-) + +diff --git a/libgcc/config/xtensa/lib2funcs.S b/libgcc/config/xtensa/lib2funcs.S +index 3ac8c1d..2e678af 100644 +--- a/libgcc/config/xtensa/lib2funcs.S ++++ b/libgcc/config/xtensa/lib2funcs.S +@@ -33,10 +33,29 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + .global __xtensa_libgcc_window_spill + .type __xtensa_libgcc_window_spill,@function + __xtensa_libgcc_window_spill: +- entry sp, 32 +- movi a2, 0 +- syscall ++ entry sp, 48 ++#if XCHAL_NUM_AREGS > 16 ++ call12 1f ++ retw ++ .align 4 ++1: ++ .rept (XCHAL_NUM_AREGS - 24) / 12 ++ _entry sp, 48 ++ mov a12, a0 ++ .endr ++ _entry sp, 16 ++#if XCHAL_NUM_AREGS % 12 == 0 ++ mov a4, a4 ++#elif XCHAL_NUM_AREGS % 12 == 4 ++ mov a8, a8 ++#elif XCHAL_NUM_AREGS % 12 == 8 ++ mov a12, a12 ++#endif ++ retw ++#else ++ mov a8, a8 + retw ++#endif + .size __xtensa_libgcc_window_spill, .-__xtensa_libgcc_window_spill + + +@@ -58,10 +77,7 @@ __xtensa_nonlocal_goto: + entry sp, 32 + + /* Flush registers. */ +- mov a5, a2 +- movi a2, 0 +- syscall +- mov a2, a5 ++ call8 __xtensa_libgcc_window_spill + + /* Because the save area for a0-a3 is stored one frame below + the one identified by a2, the only way to restore those +-- +1.8.1.4 + diff --git a/package/gcc/4.8.5/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch b/package/gcc/4.8.5/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch new file mode 100644 index 00000000000..f23a5c07375 --- /dev/null +++ b/package/gcc/4.8.5/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch @@ -0,0 +1,33 @@ +From f66206679a0ad604f13673559f230160cd3d1189 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Fri, 14 Aug 2015 02:45:02 +0300 +Subject: [PATCH 2/3] xtensa: use unwind-dw2-fde-dip instead of unwind-dw2-fde + +This allows having exception cleanup code in binaries that don't +register their unwind tables. + +2015-08-18 Max Filippov +libgcc/ + * config/xtensa/t-xtensa (LIB2ADDEH): Replace unwind-dw2-fde + with unwind-dw2-fde-dip. + +Signed-off-by: Max Filippov +--- +Backported from: r226963 + + libgcc/config/xtensa/t-xtensa | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libgcc/config/xtensa/t-xtensa b/libgcc/config/xtensa/t-xtensa +index 27399e6..66d0eb3 100644 +--- a/libgcc/config/xtensa/t-xtensa ++++ b/libgcc/config/xtensa/t-xtensa +@@ -13,4 +13,4 @@ LIB1ASMFUNCS = _mulsi3 _divsi3 _modsi3 _udivsi3 _umodsi3 \ + LIB2ADD = $(srcdir)/config/xtensa/lib2funcs.S + + LIB2ADDEH = $(srcdir)/config/xtensa/unwind-dw2-xtensa.c \ +- $(srcdir)/unwind-dw2-fde.c $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c ++ $(srcdir)/unwind-dw2-fde-dip.c $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c +-- +1.8.1.4 + diff --git a/package/gcc/4.8.5/873-xtensa-fix-_Unwind_GetCFA.patch b/package/gcc/4.8.5/873-xtensa-fix-_Unwind_GetCFA.patch new file mode 100644 index 00000000000..dc405132cce --- /dev/null +++ b/package/gcc/4.8.5/873-xtensa-fix-_Unwind_GetCFA.patch @@ -0,0 +1,40 @@ +From 15c7c4d39b317f0d902ef28fd43eca5c3369f891 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Sat, 15 Aug 2015 05:12:11 +0300 +Subject: [PATCH 3/3] xtensa: fix _Unwind_GetCFA + +Returning context->cfa in _Unwind_GetCFA makes CFA point one stack frame +higher than what was actually used by code at context->ra. This results +in invalid CFA value in signal frames and premature unwinding completion +in forced unwinding used by uClibc NPTL thread cancellation. +Returning context->sp from _Unwind_GetCFA makes all CFA values valid and +matching code that used them. + +2015-08-18 Max Filippov +libgcc/ + * config/xtensa/unwind-dw2-xtensa.c (_Unwind_GetCFA): Return + context->sp instead of context->cfa. + +Signed-off-by: Max Filippov +--- +Backported from: r226964 + + libgcc/config/xtensa/unwind-dw2-xtensa.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libgcc/config/xtensa/unwind-dw2-xtensa.c b/libgcc/config/xtensa/unwind-dw2-xtensa.c +index 35f7797..ef6b900 100644 +--- a/libgcc/config/xtensa/unwind-dw2-xtensa.c ++++ b/libgcc/config/xtensa/unwind-dw2-xtensa.c +@@ -130,7 +130,7 @@ _Unwind_GetGR (struct _Unwind_Context *context, int index) + _Unwind_Word + _Unwind_GetCFA (struct _Unwind_Context *context) + { +- return (_Unwind_Ptr) context->cfa; ++ return (_Unwind_Ptr) context->sp; + } + + /* Overwrite the saved value for register INDEX in CONTEXT with VAL. */ +-- +1.8.1.4 + diff --git a/package/gcc/4.8.5/900-musl-support.patch b/package/gcc/4.8.5/900-musl-support.patch index 761f018f219..6743a88b001 100644 --- a/package/gcc/4.8.5/900-musl-support.patch +++ b/package/gcc/4.8.5/900-musl-support.patch @@ -486,24 +486,6 @@ Index: b/gcc/configure =================================================================== --- a/gcc/configure +++ b/gcc/configure -@@ -26821,6 +26821,9 @@ - else - gcc_cv_libc_provides_ssp=no - case "$target" in -+ *-*-musl*) -+ # All versions of musl provide stack protector -+ gcc_cv_libc_provides_ssp=yes;; - *-*-linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu) - # glibc 2.4 and later provides __stack_chk_fail and - # either __stack_chk_guard, or TLS access to stack guard canary. -@@ -26854,6 +26857,7 @@ - # ) and for now - # simply assert that glibc does provide this, which is true for all - # realistically usable GNU/Hurd configurations. -+ # All supported versions of musl provide it as well - gcc_cv_libc_provides_ssp=yes;; - *-*-darwin* | *-*-freebsd*) - ac_fn_c_check_func "$LINENO" "__stack_chk_fail" "ac_cv_func___stack_chk_fail" @@ -26936,6 +26940,9 @@ gcc_cv_target_dl_iterate_phdr=no fi @@ -518,24 +500,6 @@ Index: b/gcc/configure.ac =================================================================== --- a/gcc/configure.ac +++ b/gcc/configure.ac -@@ -4750,6 +4750,9 @@ - gcc_cv_libc_provides_ssp, - [gcc_cv_libc_provides_ssp=no - case "$target" in -+ *-*-musl*) -+ # All versions of musl provide stack protector -+ gcc_cv_libc_provides_ssp=yes;; - *-*-linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu) - [# glibc 2.4 and later provides __stack_chk_fail and - # either __stack_chk_guard, or TLS access to stack guard canary. -@@ -4783,6 +4786,7 @@ - # ) and for now - # simply assert that glibc does provide this, which is true for all - # realistically usable GNU/Hurd configurations. -+ # All supported versions of musl provide it as well - gcc_cv_libc_provides_ssp=yes;; - *-*-darwin* | *-*-freebsd*) - AC_CHECK_FUNC(__stack_chk_fail,[gcc_cv_libc_provides_ssp=yes], @@ -4848,6 +4852,9 @@ gcc_cv_target_dl_iterate_phdr=no fi diff --git a/package/gcc/4.8.5/910-gcc-poison-system-directories.patch b/package/gcc/4.8.5/910-gcc-poison-system-directories.patch deleted file mode 100644 index 88b2c4e535c..00000000000 --- a/package/gcc/4.8.5/910-gcc-poison-system-directories.patch +++ /dev/null @@ -1,207 +0,0 @@ -From 160397ef3c3331099af028f1b8d3e085b07d88ad Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 08:59:00 +0400 -Subject: [PATCH 16/35] gcc: poison-system-directories - -Adapted to Buildroot and gcc 4.8.3 by Thomas Petazzoni, especially the -addition of the BR_COMPILER_PARANOID_UNSAFE_PATH environment variable. - -Signed-off-by: Khem Raj -Signed-off-by: Thomas Petazzoni - -Upstream-Status: Inappropriate [distribution: codesourcery] ---- - gcc/Makefile.in | 2 +- - gcc/common.opt | 4 ++++ - gcc/config.in | 6 ++++++ - gcc/configure | 20 ++++++++++++++++++-- - gcc/configure.ac | 10 ++++++++++ - gcc/doc/invoke.texi | 9 +++++++++ - gcc/gcc.c | 2 ++ - gcc/incpath.c | 19 +++++++++++++++++++ - 8 files changed, 69 insertions(+), 3 deletions(-) - -Index: b/gcc/common.opt -=================================================================== ---- a/gcc/common.opt -+++ b/gcc/common.opt -@@ -595,6 +595,10 @@ - Common Var(pedantic) Warning - Issue warnings needed for strict compliance to the standard - -+Wpoison-system-directories -+Common Var(flag_poison_system_directories) Init(1) Warning -+Warn for -I and -L options using system directories if cross compiling -+ - Wshadow - Common Var(warn_shadow) Warning - Warn when one local variable shadows another -Index: b/gcc/config.in -=================================================================== ---- a/gcc/config.in -+++ b/gcc/config.in -@@ -138,6 +138,12 @@ - #endif - - -+/* Define to warn for use of native system header directories */ -+#ifndef USED_FOR_TARGET -+#undef ENABLE_POISON_SYSTEM_DIRECTORIES -+#endif -+ -+ - /* Define if you want all operations on RTL (the basic data structure of the - optimizer and back end) to be checked for dynamic type safety at runtime. - This is quite expensive. */ -Index: b/gcc/configure -=================================================================== ---- a/gcc/configure -+++ b/gcc/configure -@@ -917,6 +917,7 @@ - with_system_zlib - enable_maintainer_mode - enable_version_specific_runtime_libs -+enable_poison_system_directories - enable_plugin - enable_libquadmath_support - with_linker_hash_style -@@ -1630,6 +1631,8 @@ - --enable-version-specific-runtime-libs - specify that runtime libraries should be installed - in a compiler-specific directory -+ --enable-poison-system-directories -+ warn for use of native system header directories - --enable-plugin enable plugin support - --disable-libquadmath-support - disable libquadmath support for Fortran -@@ -27195,6 +27198,19 @@ - fi - - -+# Check whether --enable-poison-system-directories was given. -+if test "${enable_poison_system_directories+set}" = set; then : -+ enableval=$enable_poison_system_directories; -+else -+ enable_poison_system_directories=no -+fi -+ -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ -+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h -+ -+fi -+ - # Substitute configuration variables - - -Index: b/gcc/configure.ac -=================================================================== ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -5101,6 +5101,16 @@ - [specify that runtime libraries should be - installed in a compiler-specific directory])]) - -+AC_ARG_ENABLE([poison-system-directories], -+ AS_HELP_STRING([--enable-poison-system-directories], -+ [warn for use of native system header directories]),, -+ [enable_poison_system_directories=no]) -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], -+ [1], -+ [Define to warn for use of native system header directories]) -+fi -+ - # Substitute configuration variables - AC_SUBST(subdirs) - AC_SUBST(srcdir) -Index: b/gcc/doc/invoke.texi -=================================================================== ---- a/gcc/doc/invoke.texi -+++ b/gcc/doc/invoke.texi -@@ -258,6 +258,7 @@ - -Woverlength-strings -Wpacked -Wpacked-bitfield-compat -Wpadded @gol - -Wparentheses -Wpedantic-ms-format -Wno-pedantic-ms-format @gol - -Wpointer-arith -Wno-pointer-to-int-cast @gol -+-Wno-poison-system-directories @gol - -Wredundant-decls -Wno-return-local-addr @gol - -Wreturn-type -Wsequence-point -Wshadow @gol - -Wsign-compare -Wsign-conversion -Wsizeof-pointer-memaccess @gol -@@ -4020,6 +4021,14 @@ - for most targets, it is made up of code and thus requires the stack - to be made executable in order for the program to work properly. - -+@item -Wno-poison-system-directories -+@opindex Wno-poison-system-directories -+Do not warn for @option{-I} or @option{-L} options using system -+directories such as @file{/usr/include} when cross compiling. This -+option is intended for use in chroot environments when such -+directories contain the correct headers and libraries for the target -+system rather than the host. -+ - @item -Wfloat-equal - @opindex Wfloat-equal - @opindex Wno-float-equal -Index: b/gcc/gcc.c -=================================================================== ---- a/gcc/gcc.c -+++ b/gcc/gcc.c -@@ -741,6 +741,8 @@ - "%{fuse-ld=*:-fuse-ld=%*}\ - %X %{o*} %{e*} %{N} %{n} %{r}\ - %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}}\ -+ %{Wno-poison-system-directories:--no-poison-system-directories}\ -+ %{Werror=poison-system-directories:--error-poison-system-directories}\ - %{static:} %{L*} %(mfwrap) %(link_libgcc) " SANITIZER_EARLY_SPEC " %o\ - %{fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)}\ - %{fgnu-tm:%:include(libitm.spec)%(link_itm)}\ -@@ -3991,6 +3993,12 @@ - gcc_assert (!compare_debug_opt); - } - -+ temp = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); -+ if (temp && strlen(temp) > 0) -+ { -+ save_switch("-Werror=poison-system-directories", 0, NULL, false, true); -+ } -+ - /* Set up the search paths. We add directories that we expect to - contain GNU Toolchain components before directories specified by - the machine description so that we will find GNU components (like -Index: b/gcc/incpath.c -=================================================================== ---- a/gcc/incpath.c -+++ b/gcc/incpath.c -@@ -28,6 +28,7 @@ - #include "intl.h" - #include "incpath.h" - #include "cppdefault.h" -+#include "diagnostic-core.h" - - /* Microsoft Windows does not natively support inodes. - VMS has non-numeric inodes. */ -@@ -382,6 +383,24 @@ - } - fprintf (stderr, _("End of search list.\n")); - } -+ -+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES -+ if (flag_poison_system_directories) -+ { -+ struct cpp_dir *p; -+ -+ for (p = heads[QUOTE]; p; p = p->next) -+ { -+ if ((!strncmp (p->name, "/usr/include", 12)) -+ || (!strncmp (p->name, "/usr/local/include", 18)) -+ || (!strncmp (p->name, "/usr/X11R6/include", 18))) -+ warning (OPT_Wpoison_system_directories, -+ "include location \"%s\" is unsafe for " -+ "cross-compilation", -+ p->name); -+ } -+ } -+#endif - } - - /* Use given -I paths for #include "..." but not #include <...>, and diff --git a/package/gcc/4.9.3/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch b/package/gcc/4.9.3/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch new file mode 100644 index 00000000000..c11ad35aac5 --- /dev/null +++ b/package/gcc/4.9.3/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch @@ -0,0 +1,29 @@ +From 9bf6066d588632dab9f78932df15b5b4140f31f3 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +Date: Fri, 6 Nov 2015 14:27:23 +0100 +Subject: [PATCH] gcc/config.gcc: fix typo for powerpc e6500 cpu_is_64bit + +Otherwise it is not recognized as a 64-bit powerpc and gcc will not generate +64-bit binaries by default. + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + gcc/config.gcc | 2 +- + 2 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/gcc/config.gcc b/gcc/config.gcc +index 4a7cbd2..9cc765e 100644 +--- a/gcc/config.gcc ++++ b/gcc/config.gcc +@@ -439,7 +439,7 @@ powerpc*-*-*) + cpu_type=rs6000 + extra_headers="ppc-asm.h altivec.h spe.h ppu_intrinsics.h paired.h spu2vmx.h vec_types.h si2vmx.h htmintrin.h htmxlintrin.h" + case x$with_cpu in +- xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345678]|xpower6x|xrs64a|xcell|xa2|xe500mc64|xe5500|Xe6500) ++ xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345678]|xpower6x|xrs64a|xcell|xa2|xe500mc64|xe5500|xe6500) + cpu_is_64bit=yes + ;; + esac +-- +2.6.2 + diff --git a/package/gcc/4.9.3/870-xtensa-add-mauto-litpools-option.patch b/package/gcc/4.9.3/870-xtensa-add-mauto-litpools-option.patch new file mode 100644 index 00000000000..aa1376c44c3 --- /dev/null +++ b/package/gcc/4.9.3/870-xtensa-add-mauto-litpools-option.patch @@ -0,0 +1,290 @@ +From 6d852ffb43b111a39162135c95249e749c4e285b Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Thu, 6 Aug 2015 01:16:02 +0300 +Subject: [PATCH] xtensa: add -mauto-litpools option + +With support from assembler this option allows compiling huge functions, +where single literal pool at the beginning of a function may not be +reachable by L32R instructions at its end. + +Currently assembler --auto-litpools option cannot deal with literals +used from multiple locations separated by more than 256 KBytes of code. +Don't turn constants into literals, instead use MOVI instruction to load +them into registers and let the assembler turn them into literals as +necessary. + +2015-08-12 Max Filippov +gcc/ + * config/xtensa/constraints.md (define_constraint "Y"): New + constraint. + * config/xtensa/elf.h (ASM_SPEC): Add m(no-)auto-litpools. + * config/xtensa/linux.h (ASM_SPEC): Likewise. + * config/xtensa/predicates.md (move_operand): Match constants + and symbols in the presence of TARGET_AUTO_LITPOOLS. + * config/xtensa/xtensa.c (xtensa_valid_move): Don't allow + immediate references to TLS data. + (xtensa_emit_move_sequence): Don't force constants to memory in + the presence of TARGET_AUTO_LITPOOLS. + (print_operand): Add 'y' format, same as default, but capable of + printing SF mode constants as well. + * config/xtensa/xtensa.md (movsi_internal, movhi_internal) + (movsf_internal): Add movi pattern that loads literal. + (movsf, movdf): Don't force constants to memory in the presence + of TARGET_AUTO_LITPOOLS. + (movdf_internal): Add 'Y' constraint. + * config/xtensa/xtensa.opt (mauto-litpools): New option. + +Signed-off-by: Max Filippov +--- +Backported from: r226828 +Changes to ChangeLogs and documentation are dropped. + + gcc/config/xtensa/constraints.md | 5 +++++ + gcc/config/xtensa/elf.h | 4 +++- + gcc/config/xtensa/linux.h | 4 +++- + gcc/config/xtensa/predicates.md | 3 ++- + gcc/config/xtensa/xtensa.c | 19 ++++++++++++++++++- + gcc/config/xtensa/xtensa.md | 35 +++++++++++++++++++---------------- + gcc/config/xtensa/xtensa.opt | 4 ++++ + 7 files changed, 54 insertions(+), 20 deletions(-) + +diff --git a/gcc/config/xtensa/constraints.md b/gcc/config/xtensa/constraints.md +index 30f4c1f..773d4f9 100644 +--- a/gcc/config/xtensa/constraints.md ++++ b/gcc/config/xtensa/constraints.md +@@ -111,6 +111,11 @@ + (and (match_code "const_int") + (match_test "xtensa_mask_immediate (ival)"))) + ++(define_constraint "Y" ++ "A constant that can be used in relaxed MOVI instructions." ++ (and (match_code "const_int,const_double,const,symbol_ref,label_ref") ++ (match_test "TARGET_AUTO_LITPOOLS"))) ++ + ;; Memory constraints. Do not use define_memory_constraint here. Doing so + ;; causes reload to force some constants into the constant pool, but since + ;; the Xtensa constant pool can only be accessed with L32R instructions, it +diff --git a/gcc/config/xtensa/elf.h b/gcc/config/xtensa/elf.h +index e59bede..12056f7 100644 +--- a/gcc/config/xtensa/elf.h ++++ b/gcc/config/xtensa/elf.h +@@ -48,7 +48,9 @@ along with GCC; see the file COPYING3. If not see + %{mtarget-align:--target-align} \ + %{mno-target-align:--no-target-align} \ + %{mlongcalls:--longcalls} \ +- %{mno-longcalls:--no-longcalls}" ++ %{mno-longcalls:--no-longcalls} \ ++ %{mauto-litpools:--auto-litpools} \ ++ %{mno-auto-litpools:--no-auto-litpools}" + + #undef LIB_SPEC + #define LIB_SPEC "-lc -lsim -lc -lhandlers-sim -lhal" +diff --git a/gcc/config/xtensa/linux.h b/gcc/config/xtensa/linux.h +index 675aacf..5b0243a 100644 +--- a/gcc/config/xtensa/linux.h ++++ b/gcc/config/xtensa/linux.h +@@ -42,7 +42,9 @@ along with GCC; see the file COPYING3. If not see + %{mtarget-align:--target-align} \ + %{mno-target-align:--no-target-align} \ + %{mlongcalls:--longcalls} \ +- %{mno-longcalls:--no-longcalls}" ++ %{mno-longcalls:--no-longcalls} \ ++ %{mauto-litpools:--auto-litpools} \ ++ %{mno-auto-litpools:--no-auto-litpools}" + + #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" + +diff --git a/gcc/config/xtensa/predicates.md b/gcc/config/xtensa/predicates.md +index e02209e..d7dfa11 100644 +--- a/gcc/config/xtensa/predicates.md ++++ b/gcc/config/xtensa/predicates.md +@@ -142,7 +142,8 @@ + (match_test "GET_MODE_CLASS (mode) == MODE_INT + && xtensa_simm12b (INTVAL (op))")) + (and (match_code "const_int,const_double,const,symbol_ref,label_ref") +- (match_test "TARGET_CONST16 && CONSTANT_P (op) ++ (match_test "(TARGET_CONST16 || TARGET_AUTO_LITPOOLS) ++ && CONSTANT_P (op) + && GET_MODE_SIZE (mode) % UNITS_PER_WORD == 0"))))) + + ;; Accept the floating point constant 1 in the appropriate mode. +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index eb039ba..206ff80 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -501,6 +501,9 @@ xtensa_valid_move (machine_mode mode, rtx *operands) + { + int dst_regnum = xt_true_regnum (operands[0]); + ++ if (xtensa_tls_referenced_p (operands[1])) ++ return FALSE; ++ + /* The stack pointer can only be assigned with a MOVSP opcode. */ + if (dst_regnum == STACK_POINTER_REGNUM) + return !TARGET_WINDOWED_ABI +@@ -1069,7 +1072,7 @@ xtensa_emit_move_sequence (rtx *operands, machine_mode mode) + return 1; + } + +- if (! TARGET_CONST16) ++ if (! TARGET_AUTO_LITPOOLS && ! TARGET_CONST16) + { + src = force_const_mem (SImode, src); + operands[1] = src; +@@ -2449,6 +2452,20 @@ print_operand (FILE *file, rtx x, int letter) + } + break; + ++ case 'y': ++ if (GET_CODE (x) == CONST_DOUBLE && ++ GET_MODE (x) == SFmode) ++ { ++ REAL_VALUE_TYPE r; ++ long l; ++ REAL_VALUE_FROM_CONST_DOUBLE (r, x); ++ REAL_VALUE_TO_TARGET_SINGLE (r, l); ++ fprintf (file, "0x%08lx", l); ++ break; ++ } ++ ++ /* fall through */ ++ + default: + if (GET_CODE (x) == REG || GET_CODE (x) == SUBREG) + fprintf (file, "%s", reg_names[xt_true_regnum (x)]); +diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md +index 6d84384..0e673a3 100644 +--- a/gcc/config/xtensa/xtensa.md ++++ b/gcc/config/xtensa/xtensa.md +@@ -761,8 +761,8 @@ + }) + + (define_insn "movsi_internal" +- [(set (match_operand:SI 0 "nonimmed_operand" "=D,D,D,D,R,R,a,q,a,W,a,a,U,*a,*A") +- (match_operand:SI 1 "move_operand" "M,D,d,R,D,d,r,r,I,i,T,U,r,*A,*r"))] ++ [(set (match_operand:SI 0 "nonimmed_operand" "=D,D,D,D,R,R,a,q,a,a,W,a,a,U,*a,*A") ++ (match_operand:SI 1 "move_operand" "M,D,d,R,D,d,r,r,I,Y,i,T,U,r,*A,*r"))] + "xtensa_valid_move (SImode, operands)" + "@ + movi.n\t%0, %x1 +@@ -774,15 +774,16 @@ + mov\t%0, %1 + movsp\t%0, %1 + movi\t%0, %x1 ++ movi\t%0, %1 + const16\t%0, %t1\;const16\t%0, %b1 + %v1l32r\t%0, %1 + %v1l32i\t%0, %1 + %v0s32i\t%1, %0 + rsr\t%0, ACCLO + wsr\t%1, ACCLO" +- [(set_attr "type" "move,move,move,load,store,store,move,move,move,move,load,load,store,rsr,wsr") ++ [(set_attr "type" "move,move,move,load,store,store,move,move,move,move,move,load,load,store,rsr,wsr") + (set_attr "mode" "SI") +- (set_attr "length" "2,2,2,2,2,2,3,3,3,6,3,3,3,3,3")]) ++ (set_attr "length" "2,2,2,2,2,2,3,3,3,3,6,3,3,3,3,3")]) + + ;; 16-bit Integer moves + +@@ -796,21 +797,22 @@ + }) + + (define_insn "movhi_internal" +- [(set (match_operand:HI 0 "nonimmed_operand" "=D,D,a,a,a,U,*a,*A") +- (match_operand:HI 1 "move_operand" "M,d,r,I,U,r,*A,*r"))] ++ [(set (match_operand:HI 0 "nonimmed_operand" "=D,D,a,a,a,a,U,*a,*A") ++ (match_operand:HI 1 "move_operand" "M,d,r,I,Y,U,r,*A,*r"))] + "xtensa_valid_move (HImode, operands)" + "@ + movi.n\t%0, %x1 + mov.n\t%0, %1 + mov\t%0, %1 + movi\t%0, %x1 ++ movi\t%0, %1 + %v1l16ui\t%0, %1 + %v0s16i\t%1, %0 + rsr\t%0, ACCLO + wsr\t%1, ACCLO" +- [(set_attr "type" "move,move,move,move,load,store,rsr,wsr") ++ [(set_attr "type" "move,move,move,move,move,load,store,rsr,wsr") + (set_attr "mode" "HI") +- (set_attr "length" "2,2,3,3,3,3,3,3")]) ++ (set_attr "length" "2,2,3,3,3,3,3,3,3")]) + + ;; 8-bit Integer moves + +@@ -881,7 +883,7 @@ + (match_operand:SF 1 "general_operand" ""))] + "" + { +- if (!TARGET_CONST16 && CONSTANT_P (operands[1])) ++ if (!TARGET_CONST16 && !TARGET_AUTO_LITPOOLS && CONSTANT_P (operands[1])) + operands[1] = force_const_mem (SFmode, operands[1]); + + if ((!register_operand (operands[0], SFmode) +@@ -896,8 +898,8 @@ + }) + + (define_insn "movsf_internal" +- [(set (match_operand:SF 0 "nonimmed_operand" "=f,f,U,D,D,R,a,f,a,W,a,a,U") +- (match_operand:SF 1 "move_operand" "f,U,f,d,R,d,r,r,f,iF,T,U,r"))] ++ [(set (match_operand:SF 0 "nonimmed_operand" "=f,f,U,D,D,R,a,f,a,a,W,a,a,U") ++ (match_operand:SF 1 "move_operand" "f,U,f,d,R,d,r,r,f,Y,iF,T,U,r"))] + "((register_operand (operands[0], SFmode) + || register_operand (operands[1], SFmode)) + && !(FP_REG_P (xt_true_regnum (operands[0])) +@@ -912,13 +914,14 @@ + mov\t%0, %1 + wfr\t%0, %1 + rfr\t%0, %1 ++ movi\t%0, %y1 + const16\t%0, %t1\;const16\t%0, %b1 + %v1l32r\t%0, %1 + %v1l32i\t%0, %1 + %v0s32i\t%1, %0" +- [(set_attr "type" "farith,fload,fstore,move,load,store,move,farith,farith,move,load,load,store") ++ [(set_attr "type" "farith,fload,fstore,move,load,store,move,farith,farith,move,move,load,load,store") + (set_attr "mode" "SF") +- (set_attr "length" "3,3,3,2,2,2,3,3,3,6,3,3,3")]) ++ (set_attr "length" "3,3,3,2,2,2,3,3,3,3,6,3,3,3")]) + + (define_insn "*lsiu" + [(set (match_operand:SF 0 "register_operand" "=f") +@@ -991,7 +994,7 @@ + (match_operand:DF 1 "general_operand" ""))] + "" + { +- if (CONSTANT_P (operands[1]) && !TARGET_CONST16) ++ if (CONSTANT_P (operands[1]) && !TARGET_CONST16 && !TARGET_AUTO_LITPOOLS) + operands[1] = force_const_mem (DFmode, operands[1]); + + if (!register_operand (operands[0], DFmode) +@@ -1002,8 +1005,8 @@ + }) + + (define_insn_and_split "movdf_internal" +- [(set (match_operand:DF 0 "nonimmed_operand" "=a,W,a,a,U") +- (match_operand:DF 1 "move_operand" "r,iF,T,U,r"))] ++ [(set (match_operand:DF 0 "nonimmed_operand" "=a,a,W,a,a,U") ++ (match_operand:DF 1 "move_operand" "r,Y,iF,T,U,r"))] + "register_operand (operands[0], DFmode) + || register_operand (operands[1], DFmode)" + "#" +diff --git a/gcc/config/xtensa/xtensa.opt b/gcc/config/xtensa/xtensa.opt +index 2fd6cee..21c6e96 100644 +--- a/gcc/config/xtensa/xtensa.opt ++++ b/gcc/config/xtensa/xtensa.opt +@@ -38,6 +38,10 @@ mtext-section-literals + Target + Intersperse literal pools with code in the text section + ++mauto-litpools ++Target Report Mask(AUTO_LITPOOLS) ++Relax literals in assembler and place them automatically in the text section ++ + mserialize-volatile + Target Report Mask(SERIALIZE_VOLATILE) + -mno-serialize-volatile Do not serialize volatile memory references with MEMW instructions +-- +1.8.1.4 + diff --git a/package/gcc/4.9.3/871-xtensa-reimplement-register-spilling.patch b/package/gcc/4.9.3/871-xtensa-reimplement-register-spilling.patch new file mode 100644 index 00000000000..abc7a08e8d2 --- /dev/null +++ b/package/gcc/4.9.3/871-xtensa-reimplement-register-spilling.patch @@ -0,0 +1,76 @@ +From 05154174b369505238b759cf80d595d8cfc8c731 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Mon, 10 Aug 2015 21:35:20 +0300 +Subject: [PATCH 1/3] xtensa: reimplement register spilling + +Spilling windowed registers in userspace is much easier, more portable, +less error-prone and equally effective as in kernel. Now that register +spilling syscall is considered obsolete in the xtensa linux kernel +replace it with CALL12 followed by series of ENTRY in libgcc. + +2015-08-18 Max Filippov +libgcc/ + * config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill): Use + CALL12 followed by series of ENTRY to spill windowed registers. + (__xtensa_nonlocal_goto): Call __xtensa_libgcc_window_spill + instead of making linux spill syscall. + +Signed-off-by: Max Filippov +--- +Backported from: r226962 + + libgcc/config/xtensa/lib2funcs.S | 30 +++++++++++++++++++++++------- + 1 file changed, 23 insertions(+), 7 deletions(-) + +diff --git a/libgcc/config/xtensa/lib2funcs.S b/libgcc/config/xtensa/lib2funcs.S +index 3ac8c1d..2e678af 100644 +--- a/libgcc/config/xtensa/lib2funcs.S ++++ b/libgcc/config/xtensa/lib2funcs.S +@@ -33,10 +33,29 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + .global __xtensa_libgcc_window_spill + .type __xtensa_libgcc_window_spill,@function + __xtensa_libgcc_window_spill: +- entry sp, 32 +- movi a2, 0 +- syscall ++ entry sp, 48 ++#if XCHAL_NUM_AREGS > 16 ++ call12 1f ++ retw ++ .align 4 ++1: ++ .rept (XCHAL_NUM_AREGS - 24) / 12 ++ _entry sp, 48 ++ mov a12, a0 ++ .endr ++ _entry sp, 16 ++#if XCHAL_NUM_AREGS % 12 == 0 ++ mov a4, a4 ++#elif XCHAL_NUM_AREGS % 12 == 4 ++ mov a8, a8 ++#elif XCHAL_NUM_AREGS % 12 == 8 ++ mov a12, a12 ++#endif ++ retw ++#else ++ mov a8, a8 + retw ++#endif + .size __xtensa_libgcc_window_spill, .-__xtensa_libgcc_window_spill + + +@@ -58,10 +77,7 @@ __xtensa_nonlocal_goto: + entry sp, 32 + + /* Flush registers. */ +- mov a5, a2 +- movi a2, 0 +- syscall +- mov a2, a5 ++ call8 __xtensa_libgcc_window_spill + + /* Because the save area for a0-a3 is stored one frame below + the one identified by a2, the only way to restore those +-- +1.8.1.4 + diff --git a/package/gcc/4.9.3/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch b/package/gcc/4.9.3/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch new file mode 100644 index 00000000000..f23a5c07375 --- /dev/null +++ b/package/gcc/4.9.3/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch @@ -0,0 +1,33 @@ +From f66206679a0ad604f13673559f230160cd3d1189 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Fri, 14 Aug 2015 02:45:02 +0300 +Subject: [PATCH 2/3] xtensa: use unwind-dw2-fde-dip instead of unwind-dw2-fde + +This allows having exception cleanup code in binaries that don't +register their unwind tables. + +2015-08-18 Max Filippov +libgcc/ + * config/xtensa/t-xtensa (LIB2ADDEH): Replace unwind-dw2-fde + with unwind-dw2-fde-dip. + +Signed-off-by: Max Filippov +--- +Backported from: r226963 + + libgcc/config/xtensa/t-xtensa | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libgcc/config/xtensa/t-xtensa b/libgcc/config/xtensa/t-xtensa +index 27399e6..66d0eb3 100644 +--- a/libgcc/config/xtensa/t-xtensa ++++ b/libgcc/config/xtensa/t-xtensa +@@ -13,4 +13,4 @@ LIB1ASMFUNCS = _mulsi3 _divsi3 _modsi3 _udivsi3 _umodsi3 \ + LIB2ADD = $(srcdir)/config/xtensa/lib2funcs.S + + LIB2ADDEH = $(srcdir)/config/xtensa/unwind-dw2-xtensa.c \ +- $(srcdir)/unwind-dw2-fde.c $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c ++ $(srcdir)/unwind-dw2-fde-dip.c $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c +-- +1.8.1.4 + diff --git a/package/gcc/4.9.3/873-xtensa-fix-_Unwind_GetCFA.patch b/package/gcc/4.9.3/873-xtensa-fix-_Unwind_GetCFA.patch new file mode 100644 index 00000000000..dc405132cce --- /dev/null +++ b/package/gcc/4.9.3/873-xtensa-fix-_Unwind_GetCFA.patch @@ -0,0 +1,40 @@ +From 15c7c4d39b317f0d902ef28fd43eca5c3369f891 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Sat, 15 Aug 2015 05:12:11 +0300 +Subject: [PATCH 3/3] xtensa: fix _Unwind_GetCFA + +Returning context->cfa in _Unwind_GetCFA makes CFA point one stack frame +higher than what was actually used by code at context->ra. This results +in invalid CFA value in signal frames and premature unwinding completion +in forced unwinding used by uClibc NPTL thread cancellation. +Returning context->sp from _Unwind_GetCFA makes all CFA values valid and +matching code that used them. + +2015-08-18 Max Filippov +libgcc/ + * config/xtensa/unwind-dw2-xtensa.c (_Unwind_GetCFA): Return + context->sp instead of context->cfa. + +Signed-off-by: Max Filippov +--- +Backported from: r226964 + + libgcc/config/xtensa/unwind-dw2-xtensa.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libgcc/config/xtensa/unwind-dw2-xtensa.c b/libgcc/config/xtensa/unwind-dw2-xtensa.c +index 35f7797..ef6b900 100644 +--- a/libgcc/config/xtensa/unwind-dw2-xtensa.c ++++ b/libgcc/config/xtensa/unwind-dw2-xtensa.c +@@ -130,7 +130,7 @@ _Unwind_GetGR (struct _Unwind_Context *context, int index) + _Unwind_Word + _Unwind_GetCFA (struct _Unwind_Context *context) + { +- return (_Unwind_Ptr) context->cfa; ++ return (_Unwind_Ptr) context->sp; + } + + /* Overwrite the saved value for register INDEX in CONTEXT with VAL. */ +-- +1.8.1.4 + diff --git a/package/gcc/4.9.3/900-musl-support.patch b/package/gcc/4.9.3/900-musl-support.patch index 56502b882c6..a711b068e06 100644 --- a/package/gcc/4.9.3/900-musl-support.patch +++ b/package/gcc/4.9.3/900-musl-support.patch @@ -452,24 +452,6 @@ Index: b/gcc/configure =================================================================== --- a/gcc/configure +++ b/gcc/configure -@@ -27328,6 +27328,9 @@ - else - gcc_cv_libc_provides_ssp=no - case "$target" in -+ *-*-musl*) -+ # All versions of musl provide stack protector -+ gcc_cv_libc_provides_ssp=yes;; - *-*-linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu) - # glibc 2.4 and later provides __stack_chk_fail and - # either __stack_chk_guard, or TLS access to stack guard canary. -@@ -27360,6 +27363,7 @@ - # ) and for now - # simply assert that glibc does provide this, which is true for all - # realistically usable GNU/Hurd configurations. -+ # All supported versions of musl provide it as well - gcc_cv_libc_provides_ssp=yes;; - *-*-darwin* | *-*-freebsd*) - ac_fn_c_check_func "$LINENO" "__stack_chk_fail" "ac_cv_func___stack_chk_fail" @@ -27449,6 +27453,9 @@ gcc_cv_target_dl_iterate_phdr=no fi @@ -484,24 +466,6 @@ Index: b/gcc/configure.ac =================================================================== --- a/gcc/configure.ac +++ b/gcc/configure.ac -@@ -5016,6 +5016,9 @@ - gcc_cv_libc_provides_ssp, - [gcc_cv_libc_provides_ssp=no - case "$target" in -+ *-*-musl*) -+ # All versions of musl provide stack protector -+ gcc_cv_libc_provides_ssp=yes;; - *-*-linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu) - # glibc 2.4 and later provides __stack_chk_fail and - # either __stack_chk_guard, or TLS access to stack guard canary. -@@ -5042,6 +5045,7 @@ - # ) and for now - # simply assert that glibc does provide this, which is true for all - # realistically usable GNU/Hurd configurations. -+ # All supported versions of musl provide it as well - gcc_cv_libc_provides_ssp=yes;; - *-*-darwin* | *-*-freebsd*) - AC_CHECK_FUNC(__stack_chk_fail,[gcc_cv_libc_provides_ssp=yes], @@ -5108,6 +5112,9 @@ gcc_cv_target_dl_iterate_phdr=no fi diff --git a/package/gcc/4.9.3/910-gcc-poison-system-directories.patch b/package/gcc/4.9.3/910-gcc-poison-system-directories.patch deleted file mode 100644 index 975f01fc72e..00000000000 --- a/package/gcc/4.9.3/910-gcc-poison-system-directories.patch +++ /dev/null @@ -1,207 +0,0 @@ -From 160397ef3c3331099af028f1b8d3e085b07d88ad Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 08:59:00 +0400 -Subject: [PATCH 16/35] gcc: poison-system-directories - -Adapted to Buildroot and gcc 4.9.1 by Thomas Petazzoni, especially the -addition of the BR_COMPILER_PARANOID_UNSAFE_PATH environment variable. - -Signed-off-by: Khem Raj -Signed-off-by: Thomas Petazzoni - -Upstream-Status: Inappropriate [distribution: codesourcery] ---- - gcc/Makefile.in | 2 +- - gcc/common.opt | 4 ++++ - gcc/config.in | 6 ++++++ - gcc/configure | 20 ++++++++++++++++++-- - gcc/configure.ac | 10 ++++++++++ - gcc/doc/invoke.texi | 9 +++++++++ - gcc/gcc.c | 2 ++ - gcc/incpath.c | 19 +++++++++++++++++++ - 8 files changed, 69 insertions(+), 3 deletions(-) - -Index: b/gcc/common.opt -=================================================================== ---- a/gcc/common.opt -+++ b/gcc/common.opt -@@ -603,6 +603,10 @@ - Common Var(pedantic) Warning - Issue warnings needed for strict compliance to the standard - -+Wpoison-system-directories -+Common Var(flag_poison_system_directories) Init(1) Warning -+Warn for -I and -L options using system directories if cross compiling -+ - Wshadow - Common Var(warn_shadow) Warning - Warn when one local variable shadows another -Index: b/gcc/config.in -=================================================================== ---- a/gcc/config.in -+++ b/gcc/config.in -@@ -138,6 +138,12 @@ - #endif - - -+/* Define to warn for use of native system header directories */ -+#ifndef USED_FOR_TARGET -+#undef ENABLE_POISON_SYSTEM_DIRECTORIES -+#endif -+ -+ - /* Define if you want all operations on RTL (the basic data structure of the - optimizer and back end) to be checked for dynamic type safety at runtime. - This is quite expensive. */ -Index: b/gcc/configure -=================================================================== ---- a/gcc/configure -+++ b/gcc/configure -@@ -929,6 +929,7 @@ - enable_maintainer_mode - enable_link_mutex - enable_version_specific_runtime_libs -+enable_poison_system_directories - enable_plugin - enable_host_shared - enable_libquadmath_support -@@ -1657,6 +1658,8 @@ - --enable-version-specific-runtime-libs - specify that runtime libraries should be installed - in a compiler-specific directory -+ --enable-poison-system-directories -+ warn for use of native system header directories - --enable-plugin enable plugin support - --enable-host-shared build host code as shared libraries - --disable-libquadmath-support -@@ -27765,6 +27768,19 @@ - fi - - -+# Check whether --enable-poison-system-directories was given. -+if test "${enable_poison_system_directories+set}" = set; then : -+ enableval=$enable_poison_system_directories; -+else -+ enable_poison_system_directories=no -+fi -+ -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ -+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h -+ -+fi -+ - # Substitute configuration variables - - -Index: b/gcc/configure.ac -=================================================================== ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -5411,6 +5411,16 @@ - [specify that runtime libraries should be - installed in a compiler-specific directory])]) - -+AC_ARG_ENABLE([poison-system-directories], -+ AS_HELP_STRING([--enable-poison-system-directories], -+ [warn for use of native system header directories]),, -+ [enable_poison_system_directories=no]) -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], -+ [1], -+ [Define to warn for use of native system header directories]) -+fi -+ - # Substitute configuration variables - AC_SUBST(subdirs) - AC_SUBST(srcdir) -Index: b/gcc/doc/invoke.texi -=================================================================== ---- a/gcc/doc/invoke.texi -+++ b/gcc/doc/invoke.texi -@@ -260,6 +260,7 @@ - -Woverlength-strings -Wpacked -Wpacked-bitfield-compat -Wpadded @gol - -Wparentheses -Wpedantic-ms-format -Wno-pedantic-ms-format @gol - -Wpointer-arith -Wno-pointer-to-int-cast @gol -+-Wno-poison-system-directories @gol - -Wredundant-decls -Wno-return-local-addr @gol - -Wreturn-type -Wsequence-point -Wshadow @gol - -Wsign-compare -Wsign-conversion -Wfloat-conversion @gol -@@ -4209,6 +4210,14 @@ - for most targets, it is made up of code and thus requires the stack - to be made executable in order for the program to work properly. - -+@item -Wno-poison-system-directories -+@opindex Wno-poison-system-directories -+Do not warn for @option{-I} or @option{-L} options using system -+directories such as @file{/usr/include} when cross compiling. This -+option is intended for use in chroot environments when such -+directories contain the correct headers and libraries for the target -+system rather than the host. -+ - @item -Wfloat-equal - @opindex Wfloat-equal - @opindex Wno-float-equal -Index: b/gcc/gcc.c -=================================================================== ---- a/gcc/gcc.c -+++ b/gcc/gcc.c -@@ -770,6 +770,8 @@ - "%{fuse-ld=*:-fuse-ld=%*}\ - %X %{o*} %{e*} %{N} %{n} %{r}\ - %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}} " VTABLE_VERIFICATION_SPEC " \ -+ %{Wno-poison-system-directories:--no-poison-system-directories}\ -+ %{Werror=poison-system-directories:--error-poison-system-directories}\ - %{static:} %{L*} %(mfwrap) %(link_libgcc) " SANITIZER_EARLY_SPEC " %o\ - %{fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)}\ - %{fcilkplus:%:include(libcilkrts.spec)%(link_cilkrts)}\ -@@ -4034,6 +4036,12 @@ - gcc_assert (!compare_debug_opt); - } - -+ temp = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); -+ if (temp && strlen(temp) > 0) -+ { -+ save_switch("-Werror=poison-system-directories", 0, NULL, false, true); -+ } -+ - /* Set up the search paths. We add directories that we expect to - contain GNU Toolchain components before directories specified by - the machine description so that we will find GNU components (like -Index: b/gcc/incpath.c -=================================================================== ---- a/gcc/incpath.c -+++ b/gcc/incpath.c -@@ -28,6 +28,7 @@ - #include "intl.h" - #include "incpath.h" - #include "cppdefault.h" -+#include "diagnostic-core.h" - - /* Microsoft Windows does not natively support inodes. - VMS has non-numeric inodes. */ -@@ -382,6 +383,24 @@ - } - fprintf (stderr, _("End of search list.\n")); - } -+ -+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES -+ if (flag_poison_system_directories) -+ { -+ struct cpp_dir *p; -+ -+ for (p = heads[QUOTE]; p; p = p->next) -+ { -+ if ((!strncmp (p->name, "/usr/include", 12)) -+ || (!strncmp (p->name, "/usr/local/include", 18)) -+ || (!strncmp (p->name, "/usr/X11R6/include", 18))) -+ warning (OPT_Wpoison_system_directories, -+ "include location \"%s\" is unsafe for " -+ "cross-compilation", -+ p->name); -+ } -+ } -+#endif - } - - /* Use given -I paths for #include "..." but not #include <...>, and diff --git a/package/gcc/5.2.0/201-libgcc-remove-unistd-header.patch b/package/gcc/4.9.3/920-libgcc-remove-unistd-header.patch similarity index 74% rename from package/gcc/5.2.0/201-libgcc-remove-unistd-header.patch rename to package/gcc/4.9.3/920-libgcc-remove-unistd-header.patch index 20d1c06de86..df5372bb5a6 100644 --- a/package/gcc/5.2.0/201-libgcc-remove-unistd-header.patch +++ b/package/gcc/4.9.3/920-libgcc-remove-unistd-header.patch @@ -1,7 +1,5 @@ Upstream status: In progress -Index: b/libgcc/config/nios2/linux-atomic.c -=================================================================== --- a/libgcc/config/nios2/linux-atomic.c +++ b/libgcc/config/nios2/linux-atomic.c @@ -20,7 +20,6 @@ diff --git a/package/gcc/5.2.0/200-gcc-poison-system-directories.patch b/package/gcc/5.2.0/200-gcc-poison-system-directories.patch deleted file mode 100644 index f41c0c48a29..00000000000 --- a/package/gcc/5.2.0/200-gcc-poison-system-directories.patch +++ /dev/null @@ -1,207 +0,0 @@ -From 160397ef3c3331099af028f1b8d3e085b07d88ad Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 08:59:00 +0400 -Subject: [PATCH 16/35] gcc: poison-system-directories - -Adapted to Buildroot and gcc 4.9.1 by Thomas Petazzoni, especially the -addition of the BR_COMPILER_PARANOID_UNSAFE_PATH environment variable. - -Signed-off-by: Khem Raj -Signed-off-by: Thomas Petazzoni - -Upstream-Status: Inappropriate [distribution: codesourcery] ---- - gcc/Makefile.in | 2 +- - gcc/common.opt | 4 ++++ - gcc/config.in | 6 ++++++ - gcc/configure | 20 ++++++++++++++++++-- - gcc/configure.ac | 10 ++++++++++ - gcc/doc/invoke.texi | 9 +++++++++ - gcc/gcc.c | 2 ++ - gcc/incpath.c | 19 +++++++++++++++++++ - 8 files changed, 69 insertions(+), 3 deletions(-) - -Index: b/gcc/common.opt -=================================================================== ---- a/gcc/common.opt -+++ b/gcc/common.opt -@@ -623,6 +623,10 @@ - Common Var(warn_return_local_addr) Init(1) Warning - Warn about returning a pointer/reference to a local or temporary variable. - -+Wpoison-system-directories -+Common Var(flag_poison_system_directories) Init(1) Warning -+Warn for -I and -L options using system directories if cross compiling -+ - Wshadow - Common Var(warn_shadow) Warning - Warn when one local variable shadows another -Index: b/gcc/config.in -=================================================================== ---- a/gcc/config.in -+++ b/gcc/config.in -@@ -168,6 +168,12 @@ - #endif - - -+/* Define to warn for use of native system header directories */ -+#ifndef USED_FOR_TARGET -+#undef ENABLE_POISON_SYSTEM_DIRECTORIES -+#endif -+ -+ - /* Define if you want all operations on RTL (the basic data structure of the - optimizer and back end) to be checked for dynamic type safety at runtime. - This is quite expensive. */ -Index: b/gcc/configure -=================================================================== ---- a/gcc/configure -+++ b/gcc/configure -@@ -932,6 +932,7 @@ - enable_maintainer_mode - enable_link_mutex - enable_version_specific_runtime_libs -+enable_poison_system_directories - enable_plugin - enable_host_shared - enable_libquadmath_support -@@ -1661,6 +1662,8 @@ - --enable-version-specific-runtime-libs - specify that runtime libraries should be installed - in a compiler-specific directory -+ --enable-poison-system-directories -+ warn for use of native system header directories - --enable-plugin enable plugin support - --enable-host-shared build host code as shared libraries - --disable-libquadmath-support -@@ -28087,6 +28090,19 @@ - fi - - -+# Check whether --enable-poison-system-directories was given. -+if test "${enable_poison_system_directories+set}" = set; then : -+ enableval=$enable_poison_system_directories; -+else -+ enable_poison_system_directories=no -+fi -+ -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ -+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h -+ -+fi -+ - # Substitute configuration variables - - -Index: b/gcc/configure.ac -=================================================================== ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -5571,6 +5571,16 @@ - [specify that runtime libraries should be - installed in a compiler-specific directory])]) - -+AC_ARG_ENABLE([poison-system-directories], -+ AS_HELP_STRING([--enable-poison-system-directories], -+ [warn for use of native system header directories]),, -+ [enable_poison_system_directories=no]) -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], -+ [1], -+ [Define to warn for use of native system header directories]) -+fi -+ - # Substitute configuration variables - AC_SUBST(subdirs) - AC_SUBST(srcdir) -Index: b/gcc/doc/invoke.texi -=================================================================== ---- a/gcc/doc/invoke.texi -+++ b/gcc/doc/invoke.texi -@@ -269,6 +269,7 @@ - -Woverlength-strings -Wpacked -Wpacked-bitfield-compat -Wpadded @gol - -Wparentheses -Wpedantic-ms-format -Wno-pedantic-ms-format @gol - -Wpointer-arith -Wno-pointer-to-int-cast @gol -+-Wno-poison-system-directories @gol - -Wredundant-decls -Wno-return-local-addr @gol - -Wreturn-type -Wsequence-point -Wshadow -Wno-shadow-ivar @gol - -Wshift-count-negative -Wshift-count-overflow @gol -@@ -4432,6 +4433,14 @@ - most targets, it is made up of code and thus requires the stack to be - made executable in order for the program to work properly. - -+@item -Wno-poison-system-directories -+@opindex Wno-poison-system-directories -+Do not warn for @option{-I} or @option{-L} options using system -+directories such as @file{/usr/include} when cross compiling. This -+option is intended for use in chroot environments when such -+directories contain the correct headers and libraries for the target -+system rather than the host. -+ - @item -Wfloat-equal - @opindex Wfloat-equal - @opindex Wno-float-equal -Index: b/gcc/gcc.c -=================================================================== ---- a/gcc/gcc.c -+++ b/gcc/gcc.c -@@ -835,6 +835,8 @@ - "%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \ - "%X %{o*} %{e*} %{N} %{n} %{r}\ - %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}} " VTABLE_VERIFICATION_SPEC " \ -+ %{Wno-poison-system-directories:--no-poison-system-directories}\ -+ %{Werror=poison-system-directories:--error-poison-system-directories}\ - %{static:} %{L*} %(mfwrap) %(link_libgcc) " SANITIZER_EARLY_SPEC " %o\ - " CHKP_SPEC " \ - %{fopenacc|fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)}\ -@@ -4244,6 +4246,12 @@ - gcc_assert (!compare_debug_opt); - } - -+ temp = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); -+ if (temp && strlen(temp) > 0) -+ { -+ save_switch("-Werror=poison-system-directories", 0, NULL, false, true); -+ } -+ - /* Set up the search paths. We add directories that we expect to - contain GNU Toolchain components before directories specified by - the machine description so that we will find GNU components (like -Index: b/gcc/incpath.c -=================================================================== ---- a/gcc/incpath.c -+++ b/gcc/incpath.c -@@ -28,6 +28,7 @@ - #include "intl.h" - #include "incpath.h" - #include "cppdefault.h" -+#include "diagnostic-core.h" - - /* Microsoft Windows does not natively support inodes. - VMS has non-numeric inodes. */ -@@ -383,6 +384,24 @@ - } - fprintf (stderr, _("End of search list.\n")); - } -+ -+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES -+ if (flag_poison_system_directories) -+ { -+ struct cpp_dir *p; -+ -+ for (p = heads[QUOTE]; p; p = p->next) -+ { -+ if ((!strncmp (p->name, "/usr/include", 12)) -+ || (!strncmp (p->name, "/usr/local/include", 18)) -+ || (!strncmp (p->name, "/usr/X11R6/include", 18))) -+ warning (OPT_Wpoison_system_directories, -+ "include location \"%s\" is unsafe for " -+ "cross-compilation", -+ p->name); -+ } -+ } -+#endif - } - - /* Use given -I paths for #include "..." but not #include <...>, and diff --git a/package/gcc/5.2.0/100-uclibc-conf.patch b/package/gcc/5.3.0/100-uclibc-conf.patch similarity index 100% rename from package/gcc/5.2.0/100-uclibc-conf.patch rename to package/gcc/5.3.0/100-uclibc-conf.patch diff --git a/package/gcc/5.3.0/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch b/package/gcc/5.3.0/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch new file mode 100644 index 00000000000..c11ad35aac5 --- /dev/null +++ b/package/gcc/5.3.0/120-gcc-config.gcc-fix-typo-for-powerpc-e6500-cpu_is_64b.patch @@ -0,0 +1,29 @@ +From 9bf6066d588632dab9f78932df15b5b4140f31f3 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +Date: Fri, 6 Nov 2015 14:27:23 +0100 +Subject: [PATCH] gcc/config.gcc: fix typo for powerpc e6500 cpu_is_64bit + +Otherwise it is not recognized as a 64-bit powerpc and gcc will not generate +64-bit binaries by default. + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + gcc/config.gcc | 2 +- + 2 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/gcc/config.gcc b/gcc/config.gcc +index 4a7cbd2..9cc765e 100644 +--- a/gcc/config.gcc ++++ b/gcc/config.gcc +@@ -439,7 +439,7 @@ powerpc*-*-*) + cpu_type=rs6000 + extra_headers="ppc-asm.h altivec.h spe.h ppu_intrinsics.h paired.h spu2vmx.h vec_types.h si2vmx.h htmintrin.h htmxlintrin.h" + case x$with_cpu in +- xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345678]|xpower6x|xrs64a|xcell|xa2|xe500mc64|xe5500|Xe6500) ++ xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345678]|xpower6x|xrs64a|xcell|xa2|xe500mc64|xe5500|xe6500) + cpu_is_64bit=yes + ;; + esac +-- +2.6.2 + diff --git a/package/gcc/5.2.0/301-missing-execinfo_h.patch b/package/gcc/5.3.0/301-missing-execinfo_h.patch similarity index 100% rename from package/gcc/5.2.0/301-missing-execinfo_h.patch rename to package/gcc/5.3.0/301-missing-execinfo_h.patch diff --git a/package/gcc/5.2.0/810-arm-softfloat-libgcc.patch b/package/gcc/5.3.0/810-arm-softfloat-libgcc.patch similarity index 100% rename from package/gcc/5.2.0/810-arm-softfloat-libgcc.patch rename to package/gcc/5.3.0/810-arm-softfloat-libgcc.patch diff --git a/package/gcc/5.2.0/830-arm_unbreak_armv4t.patch b/package/gcc/5.3.0/830-arm_unbreak_armv4t.patch similarity index 100% rename from package/gcc/5.2.0/830-arm_unbreak_armv4t.patch rename to package/gcc/5.3.0/830-arm_unbreak_armv4t.patch diff --git a/package/gcc/5.2.0/840-microblaze-enable-dwarf-eh-support.patch b/package/gcc/5.3.0/840-microblaze-enable-dwarf-eh-support.patch similarity index 100% rename from package/gcc/5.2.0/840-microblaze-enable-dwarf-eh-support.patch rename to package/gcc/5.3.0/840-microblaze-enable-dwarf-eh-support.patch diff --git a/package/gcc/5.2.0/850-libstdcxx-uclibc-c99.patch b/package/gcc/5.3.0/850-libstdcxx-uclibc-c99.patch similarity index 100% rename from package/gcc/5.2.0/850-libstdcxx-uclibc-c99.patch rename to package/gcc/5.3.0/850-libstdcxx-uclibc-c99.patch diff --git a/package/gcc/5.2.0/860-cilk-wchar.patch b/package/gcc/5.3.0/860-cilk-wchar.patch similarity index 100% rename from package/gcc/5.2.0/860-cilk-wchar.patch rename to package/gcc/5.3.0/860-cilk-wchar.patch diff --git a/package/gcc/5.3.0/870-xtensa-add-mauto-litpools-option.patch b/package/gcc/5.3.0/870-xtensa-add-mauto-litpools-option.patch new file mode 100644 index 00000000000..aa1376c44c3 --- /dev/null +++ b/package/gcc/5.3.0/870-xtensa-add-mauto-litpools-option.patch @@ -0,0 +1,290 @@ +From 6d852ffb43b111a39162135c95249e749c4e285b Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Thu, 6 Aug 2015 01:16:02 +0300 +Subject: [PATCH] xtensa: add -mauto-litpools option + +With support from assembler this option allows compiling huge functions, +where single literal pool at the beginning of a function may not be +reachable by L32R instructions at its end. + +Currently assembler --auto-litpools option cannot deal with literals +used from multiple locations separated by more than 256 KBytes of code. +Don't turn constants into literals, instead use MOVI instruction to load +them into registers and let the assembler turn them into literals as +necessary. + +2015-08-12 Max Filippov +gcc/ + * config/xtensa/constraints.md (define_constraint "Y"): New + constraint. + * config/xtensa/elf.h (ASM_SPEC): Add m(no-)auto-litpools. + * config/xtensa/linux.h (ASM_SPEC): Likewise. + * config/xtensa/predicates.md (move_operand): Match constants + and symbols in the presence of TARGET_AUTO_LITPOOLS. + * config/xtensa/xtensa.c (xtensa_valid_move): Don't allow + immediate references to TLS data. + (xtensa_emit_move_sequence): Don't force constants to memory in + the presence of TARGET_AUTO_LITPOOLS. + (print_operand): Add 'y' format, same as default, but capable of + printing SF mode constants as well. + * config/xtensa/xtensa.md (movsi_internal, movhi_internal) + (movsf_internal): Add movi pattern that loads literal. + (movsf, movdf): Don't force constants to memory in the presence + of TARGET_AUTO_LITPOOLS. + (movdf_internal): Add 'Y' constraint. + * config/xtensa/xtensa.opt (mauto-litpools): New option. + +Signed-off-by: Max Filippov +--- +Backported from: r226828 +Changes to ChangeLogs and documentation are dropped. + + gcc/config/xtensa/constraints.md | 5 +++++ + gcc/config/xtensa/elf.h | 4 +++- + gcc/config/xtensa/linux.h | 4 +++- + gcc/config/xtensa/predicates.md | 3 ++- + gcc/config/xtensa/xtensa.c | 19 ++++++++++++++++++- + gcc/config/xtensa/xtensa.md | 35 +++++++++++++++++++---------------- + gcc/config/xtensa/xtensa.opt | 4 ++++ + 7 files changed, 54 insertions(+), 20 deletions(-) + +diff --git a/gcc/config/xtensa/constraints.md b/gcc/config/xtensa/constraints.md +index 30f4c1f..773d4f9 100644 +--- a/gcc/config/xtensa/constraints.md ++++ b/gcc/config/xtensa/constraints.md +@@ -111,6 +111,11 @@ + (and (match_code "const_int") + (match_test "xtensa_mask_immediate (ival)"))) + ++(define_constraint "Y" ++ "A constant that can be used in relaxed MOVI instructions." ++ (and (match_code "const_int,const_double,const,symbol_ref,label_ref") ++ (match_test "TARGET_AUTO_LITPOOLS"))) ++ + ;; Memory constraints. Do not use define_memory_constraint here. Doing so + ;; causes reload to force some constants into the constant pool, but since + ;; the Xtensa constant pool can only be accessed with L32R instructions, it +diff --git a/gcc/config/xtensa/elf.h b/gcc/config/xtensa/elf.h +index e59bede..12056f7 100644 +--- a/gcc/config/xtensa/elf.h ++++ b/gcc/config/xtensa/elf.h +@@ -48,7 +48,9 @@ along with GCC; see the file COPYING3. If not see + %{mtarget-align:--target-align} \ + %{mno-target-align:--no-target-align} \ + %{mlongcalls:--longcalls} \ +- %{mno-longcalls:--no-longcalls}" ++ %{mno-longcalls:--no-longcalls} \ ++ %{mauto-litpools:--auto-litpools} \ ++ %{mno-auto-litpools:--no-auto-litpools}" + + #undef LIB_SPEC + #define LIB_SPEC "-lc -lsim -lc -lhandlers-sim -lhal" +diff --git a/gcc/config/xtensa/linux.h b/gcc/config/xtensa/linux.h +index 675aacf..5b0243a 100644 +--- a/gcc/config/xtensa/linux.h ++++ b/gcc/config/xtensa/linux.h +@@ -42,7 +42,9 @@ along with GCC; see the file COPYING3. If not see + %{mtarget-align:--target-align} \ + %{mno-target-align:--no-target-align} \ + %{mlongcalls:--longcalls} \ +- %{mno-longcalls:--no-longcalls}" ++ %{mno-longcalls:--no-longcalls} \ ++ %{mauto-litpools:--auto-litpools} \ ++ %{mno-auto-litpools:--no-auto-litpools}" + + #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" + +diff --git a/gcc/config/xtensa/predicates.md b/gcc/config/xtensa/predicates.md +index e02209e..d7dfa11 100644 +--- a/gcc/config/xtensa/predicates.md ++++ b/gcc/config/xtensa/predicates.md +@@ -142,7 +142,8 @@ + (match_test "GET_MODE_CLASS (mode) == MODE_INT + && xtensa_simm12b (INTVAL (op))")) + (and (match_code "const_int,const_double,const,symbol_ref,label_ref") +- (match_test "TARGET_CONST16 && CONSTANT_P (op) ++ (match_test "(TARGET_CONST16 || TARGET_AUTO_LITPOOLS) ++ && CONSTANT_P (op) + && GET_MODE_SIZE (mode) % UNITS_PER_WORD == 0"))))) + + ;; Accept the floating point constant 1 in the appropriate mode. +diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c +index eb039ba..206ff80 100644 +--- a/gcc/config/xtensa/xtensa.c ++++ b/gcc/config/xtensa/xtensa.c +@@ -501,6 +501,9 @@ xtensa_valid_move (machine_mode mode, rtx *operands) + { + int dst_regnum = xt_true_regnum (operands[0]); + ++ if (xtensa_tls_referenced_p (operands[1])) ++ return FALSE; ++ + /* The stack pointer can only be assigned with a MOVSP opcode. */ + if (dst_regnum == STACK_POINTER_REGNUM) + return !TARGET_WINDOWED_ABI +@@ -1069,7 +1072,7 @@ xtensa_emit_move_sequence (rtx *operands, machine_mode mode) + return 1; + } + +- if (! TARGET_CONST16) ++ if (! TARGET_AUTO_LITPOOLS && ! TARGET_CONST16) + { + src = force_const_mem (SImode, src); + operands[1] = src; +@@ -2449,6 +2452,20 @@ print_operand (FILE *file, rtx x, int letter) + } + break; + ++ case 'y': ++ if (GET_CODE (x) == CONST_DOUBLE && ++ GET_MODE (x) == SFmode) ++ { ++ REAL_VALUE_TYPE r; ++ long l; ++ REAL_VALUE_FROM_CONST_DOUBLE (r, x); ++ REAL_VALUE_TO_TARGET_SINGLE (r, l); ++ fprintf (file, "0x%08lx", l); ++ break; ++ } ++ ++ /* fall through */ ++ + default: + if (GET_CODE (x) == REG || GET_CODE (x) == SUBREG) + fprintf (file, "%s", reg_names[xt_true_regnum (x)]); +diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md +index 6d84384..0e673a3 100644 +--- a/gcc/config/xtensa/xtensa.md ++++ b/gcc/config/xtensa/xtensa.md +@@ -761,8 +761,8 @@ + }) + + (define_insn "movsi_internal" +- [(set (match_operand:SI 0 "nonimmed_operand" "=D,D,D,D,R,R,a,q,a,W,a,a,U,*a,*A") +- (match_operand:SI 1 "move_operand" "M,D,d,R,D,d,r,r,I,i,T,U,r,*A,*r"))] ++ [(set (match_operand:SI 0 "nonimmed_operand" "=D,D,D,D,R,R,a,q,a,a,W,a,a,U,*a,*A") ++ (match_operand:SI 1 "move_operand" "M,D,d,R,D,d,r,r,I,Y,i,T,U,r,*A,*r"))] + "xtensa_valid_move (SImode, operands)" + "@ + movi.n\t%0, %x1 +@@ -774,15 +774,16 @@ + mov\t%0, %1 + movsp\t%0, %1 + movi\t%0, %x1 ++ movi\t%0, %1 + const16\t%0, %t1\;const16\t%0, %b1 + %v1l32r\t%0, %1 + %v1l32i\t%0, %1 + %v0s32i\t%1, %0 + rsr\t%0, ACCLO + wsr\t%1, ACCLO" +- [(set_attr "type" "move,move,move,load,store,store,move,move,move,move,load,load,store,rsr,wsr") ++ [(set_attr "type" "move,move,move,load,store,store,move,move,move,move,move,load,load,store,rsr,wsr") + (set_attr "mode" "SI") +- (set_attr "length" "2,2,2,2,2,2,3,3,3,6,3,3,3,3,3")]) ++ (set_attr "length" "2,2,2,2,2,2,3,3,3,3,6,3,3,3,3,3")]) + + ;; 16-bit Integer moves + +@@ -796,21 +797,22 @@ + }) + + (define_insn "movhi_internal" +- [(set (match_operand:HI 0 "nonimmed_operand" "=D,D,a,a,a,U,*a,*A") +- (match_operand:HI 1 "move_operand" "M,d,r,I,U,r,*A,*r"))] ++ [(set (match_operand:HI 0 "nonimmed_operand" "=D,D,a,a,a,a,U,*a,*A") ++ (match_operand:HI 1 "move_operand" "M,d,r,I,Y,U,r,*A,*r"))] + "xtensa_valid_move (HImode, operands)" + "@ + movi.n\t%0, %x1 + mov.n\t%0, %1 + mov\t%0, %1 + movi\t%0, %x1 ++ movi\t%0, %1 + %v1l16ui\t%0, %1 + %v0s16i\t%1, %0 + rsr\t%0, ACCLO + wsr\t%1, ACCLO" +- [(set_attr "type" "move,move,move,move,load,store,rsr,wsr") ++ [(set_attr "type" "move,move,move,move,move,load,store,rsr,wsr") + (set_attr "mode" "HI") +- (set_attr "length" "2,2,3,3,3,3,3,3")]) ++ (set_attr "length" "2,2,3,3,3,3,3,3,3")]) + + ;; 8-bit Integer moves + +@@ -881,7 +883,7 @@ + (match_operand:SF 1 "general_operand" ""))] + "" + { +- if (!TARGET_CONST16 && CONSTANT_P (operands[1])) ++ if (!TARGET_CONST16 && !TARGET_AUTO_LITPOOLS && CONSTANT_P (operands[1])) + operands[1] = force_const_mem (SFmode, operands[1]); + + if ((!register_operand (operands[0], SFmode) +@@ -896,8 +898,8 @@ + }) + + (define_insn "movsf_internal" +- [(set (match_operand:SF 0 "nonimmed_operand" "=f,f,U,D,D,R,a,f,a,W,a,a,U") +- (match_operand:SF 1 "move_operand" "f,U,f,d,R,d,r,r,f,iF,T,U,r"))] ++ [(set (match_operand:SF 0 "nonimmed_operand" "=f,f,U,D,D,R,a,f,a,a,W,a,a,U") ++ (match_operand:SF 1 "move_operand" "f,U,f,d,R,d,r,r,f,Y,iF,T,U,r"))] + "((register_operand (operands[0], SFmode) + || register_operand (operands[1], SFmode)) + && !(FP_REG_P (xt_true_regnum (operands[0])) +@@ -912,13 +914,14 @@ + mov\t%0, %1 + wfr\t%0, %1 + rfr\t%0, %1 ++ movi\t%0, %y1 + const16\t%0, %t1\;const16\t%0, %b1 + %v1l32r\t%0, %1 + %v1l32i\t%0, %1 + %v0s32i\t%1, %0" +- [(set_attr "type" "farith,fload,fstore,move,load,store,move,farith,farith,move,load,load,store") ++ [(set_attr "type" "farith,fload,fstore,move,load,store,move,farith,farith,move,move,load,load,store") + (set_attr "mode" "SF") +- (set_attr "length" "3,3,3,2,2,2,3,3,3,6,3,3,3")]) ++ (set_attr "length" "3,3,3,2,2,2,3,3,3,3,6,3,3,3")]) + + (define_insn "*lsiu" + [(set (match_operand:SF 0 "register_operand" "=f") +@@ -991,7 +994,7 @@ + (match_operand:DF 1 "general_operand" ""))] + "" + { +- if (CONSTANT_P (operands[1]) && !TARGET_CONST16) ++ if (CONSTANT_P (operands[1]) && !TARGET_CONST16 && !TARGET_AUTO_LITPOOLS) + operands[1] = force_const_mem (DFmode, operands[1]); + + if (!register_operand (operands[0], DFmode) +@@ -1002,8 +1005,8 @@ + }) + + (define_insn_and_split "movdf_internal" +- [(set (match_operand:DF 0 "nonimmed_operand" "=a,W,a,a,U") +- (match_operand:DF 1 "move_operand" "r,iF,T,U,r"))] ++ [(set (match_operand:DF 0 "nonimmed_operand" "=a,a,W,a,a,U") ++ (match_operand:DF 1 "move_operand" "r,Y,iF,T,U,r"))] + "register_operand (operands[0], DFmode) + || register_operand (operands[1], DFmode)" + "#" +diff --git a/gcc/config/xtensa/xtensa.opt b/gcc/config/xtensa/xtensa.opt +index 2fd6cee..21c6e96 100644 +--- a/gcc/config/xtensa/xtensa.opt ++++ b/gcc/config/xtensa/xtensa.opt +@@ -38,6 +38,10 @@ mtext-section-literals + Target + Intersperse literal pools with code in the text section + ++mauto-litpools ++Target Report Mask(AUTO_LITPOOLS) ++Relax literals in assembler and place them automatically in the text section ++ + mserialize-volatile + Target Report Mask(SERIALIZE_VOLATILE) + -mno-serialize-volatile Do not serialize volatile memory references with MEMW instructions +-- +1.8.1.4 + diff --git a/package/gcc/5.3.0/871-xtensa-reimplement-register-spilling.patch b/package/gcc/5.3.0/871-xtensa-reimplement-register-spilling.patch new file mode 100644 index 00000000000..4056f8b8ed9 --- /dev/null +++ b/package/gcc/5.3.0/871-xtensa-reimplement-register-spilling.patch @@ -0,0 +1,76 @@ +From 40507bf199440082ed69b777986d50c31efe2520 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Mon, 10 Aug 2015 21:35:20 +0300 +Subject: [PATCH 1/3] xtensa: reimplement register spilling + +Spilling windowed registers in userspace is much easier, more portable, +less error-prone and equally effective as in kernel. Now that register +spilling syscall is considered obsolete in the xtensa linux kernel +replace it with CALL12 followed by series of ENTRY in libgcc. + +2015-08-18 Max Filippov +libgcc/ + * config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill): Use + CALL12 followed by series of ENTRY to spill windowed registers. + (__xtensa_nonlocal_goto): Call __xtensa_libgcc_window_spill + instead of making linux spill syscall. + +Signed-off-by: Max Filippov +--- +Backported from: r226962 + + libgcc/config/xtensa/lib2funcs.S | 30 +++++++++++++++++++++++------- + 1 file changed, 23 insertions(+), 7 deletions(-) + +diff --git a/libgcc/config/xtensa/lib2funcs.S b/libgcc/config/xtensa/lib2funcs.S +index 4d451c8..ef0703f 100644 +--- a/libgcc/config/xtensa/lib2funcs.S ++++ b/libgcc/config/xtensa/lib2funcs.S +@@ -34,10 +34,29 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + .global __xtensa_libgcc_window_spill + .type __xtensa_libgcc_window_spill,@function + __xtensa_libgcc_window_spill: +- entry sp, 32 +- movi a2, 0 +- syscall ++ entry sp, 48 ++#if XCHAL_NUM_AREGS > 16 ++ call12 1f ++ retw ++ .align 4 ++1: ++ .rept (XCHAL_NUM_AREGS - 24) / 12 ++ _entry sp, 48 ++ mov a12, a0 ++ .endr ++ _entry sp, 16 ++#if XCHAL_NUM_AREGS % 12 == 0 ++ mov a4, a4 ++#elif XCHAL_NUM_AREGS % 12 == 4 ++ mov a8, a8 ++#elif XCHAL_NUM_AREGS % 12 == 8 ++ mov a12, a12 ++#endif + retw ++#else ++ mov a8, a8 ++ retw ++#endif + .size __xtensa_libgcc_window_spill, .-__xtensa_libgcc_window_spill + #endif + +@@ -61,10 +80,7 @@ __xtensa_nonlocal_goto: + entry sp, 32 + + /* Flush registers. */ +- mov a5, a2 +- movi a2, 0 +- syscall +- mov a2, a5 ++ call8 __xtensa_libgcc_window_spill + + /* Because the save area for a0-a3 is stored one frame below + the one identified by a2, the only way to restore those +-- +1.8.1.4 + diff --git a/package/gcc/5.3.0/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch b/package/gcc/5.3.0/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch new file mode 100644 index 00000000000..9707f6881c9 --- /dev/null +++ b/package/gcc/5.3.0/872-xtensa-use-unwind-dw2-fde-dip-instead-of-unwind-dw2-.patch @@ -0,0 +1,31 @@ +From 7d7a85f75ba218df4a4226e95865fc8fa561cb86 Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Fri, 14 Aug 2015 02:45:02 +0300 +Subject: [PATCH 2/3] xtensa: use unwind-dw2-fde-dip instead of unwind-dw2-fde + +This allows having exception cleanup code in binaries that don't +register their unwind tables. + +2015-08-18 Max Filippov +libgcc/ + * config/xtensa/t-windowed (LIB2ADDEH): Replace unwind-dw2-fde + with unwind-dw2-fde-dip. + +Signed-off-by: Max Filippov +--- +Backported from: r226963 + + libgcc/config/xtensa/t-windowed | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libgcc/config/xtensa/t-windowed b/libgcc/config/xtensa/t-windowed +index 7d9e9db..a99156c 100644 +--- a/libgcc/config/xtensa/t-windowed ++++ b/libgcc/config/xtensa/t-windowed +@@ -1,2 +1,2 @@ + LIB2ADDEH = $(srcdir)/config/xtensa/unwind-dw2-xtensa.c \ +- $(srcdir)/unwind-dw2-fde.c $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c ++ $(srcdir)/unwind-dw2-fde-dip.c $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c +-- +1.8.1.4 + diff --git a/package/gcc/5.3.0/873-xtensa-fix-_Unwind_GetCFA.patch b/package/gcc/5.3.0/873-xtensa-fix-_Unwind_GetCFA.patch new file mode 100644 index 00000000000..2d8eb7c7785 --- /dev/null +++ b/package/gcc/5.3.0/873-xtensa-fix-_Unwind_GetCFA.patch @@ -0,0 +1,40 @@ +From b33905dc310f475ddbde4c9fb7230724b2068a2b Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Sat, 15 Aug 2015 05:12:11 +0300 +Subject: [PATCH 3/3] xtensa: fix _Unwind_GetCFA + +Returning context->cfa in _Unwind_GetCFA makes CFA point one stack frame +higher than what was actually used by code at context->ra. This results +in invalid CFA value in signal frames and premature unwinding completion +in forced unwinding used by uClibc NPTL thread cancellation. +Returning context->sp from _Unwind_GetCFA makes all CFA values valid and +matching code that used them. + +2015-08-18 Max Filippov +libgcc/ + * config/xtensa/unwind-dw2-xtensa.c (_Unwind_GetCFA): Return + context->sp instead of context->cfa. + +Signed-off-by: Max Filippov +--- +Backported from: r226964 + + libgcc/config/xtensa/unwind-dw2-xtensa.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libgcc/config/xtensa/unwind-dw2-xtensa.c b/libgcc/config/xtensa/unwind-dw2-xtensa.c +index 82b0e63..8e579c7 100644 +--- a/libgcc/config/xtensa/unwind-dw2-xtensa.c ++++ b/libgcc/config/xtensa/unwind-dw2-xtensa.c +@@ -130,7 +130,7 @@ _Unwind_GetGR (struct _Unwind_Context *context, int index) + _Unwind_Word + _Unwind_GetCFA (struct _Unwind_Context *context) + { +- return (_Unwind_Ptr) context->cfa; ++ return (_Unwind_Ptr) context->sp; + } + + /* Overwrite the saved value for register INDEX in CONTEXT with VAL. */ +-- +1.8.1.4 + diff --git a/package/gcc/5.2.0/900-libitm-fixes-for-musl-support.patch b/package/gcc/5.3.0/900-libitm-fixes-for-musl-support.patch similarity index 100% rename from package/gcc/5.2.0/900-libitm-fixes-for-musl-support.patch rename to package/gcc/5.3.0/900-libitm-fixes-for-musl-support.patch diff --git a/package/gcc/5.2.0/901-fixincludes-update-for-musl-support.patch b/package/gcc/5.3.0/901-fixincludes-update-for-musl-support.patch similarity index 100% rename from package/gcc/5.2.0/901-fixincludes-update-for-musl-support.patch rename to package/gcc/5.3.0/901-fixincludes-update-for-musl-support.patch diff --git a/package/gcc/5.2.0/902-unwind-fix-for-musl.patch b/package/gcc/5.3.0/902-unwind-fix-for-musl.patch similarity index 100% rename from package/gcc/5.2.0/902-unwind-fix-for-musl.patch rename to package/gcc/5.3.0/902-unwind-fix-for-musl.patch diff --git a/package/gcc/5.2.0/903-libstdc++-libgfortran-gthr-workaround-for-musl.patch b/package/gcc/5.3.0/903-libstdc++-libgfortran-gthr-workaround-for-musl.patch similarity index 100% rename from package/gcc/5.2.0/903-libstdc++-libgfortran-gthr-workaround-for-musl.patch rename to package/gcc/5.3.0/903-libstdc++-libgfortran-gthr-workaround-for-musl.patch diff --git a/package/gcc/5.2.0/904-musl-libc-config.patch b/package/gcc/5.3.0/904-musl-libc-config.patch similarity index 86% rename from package/gcc/5.2.0/904-musl-libc-config.patch rename to package/gcc/5.3.0/904-musl-libc-config.patch index c4eddb408dc..85491406cf7 100644 --- a/package/gcc/5.2.0/904-musl-libc-config.patch +++ b/package/gcc/5.3.0/904-musl-libc-config.patch @@ -225,24 +225,6 @@ Index: b/gcc/configure =================================================================== --- a/gcc/configure +++ b/gcc/configure -@@ -27681,6 +27681,9 @@ - else - gcc_cv_libc_provides_ssp=no - case "$target" in -+ *-*-musl*) -+ # All versions of musl provide stack protector -+ gcc_cv_libc_provides_ssp=yes;; - *-*-linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu) - # glibc 2.4 and later provides __stack_chk_fail and - # either __stack_chk_guard, or TLS access to stack guard canary. -@@ -27713,6 +27716,7 @@ - # ) and for now - # simply assert that glibc does provide this, which is true for all - # realistically usable GNU/Hurd configurations. -+ # All supported versions of musl provide it as well - gcc_cv_libc_provides_ssp=yes;; - *-*-darwin* | *-*-freebsd*) - ac_fn_c_check_func "$LINENO" "__stack_chk_fail" "ac_cv_func___stack_chk_fail" @@ -27809,6 +27813,9 @@ gcc_cv_target_dl_iterate_phdr=no fi @@ -257,24 +239,6 @@ Index: b/gcc/configure.ac =================================================================== --- a/gcc/configure.ac +++ b/gcc/configure.ac -@@ -5199,6 +5199,9 @@ - gcc_cv_libc_provides_ssp, - [gcc_cv_libc_provides_ssp=no - case "$target" in -+ *-*-musl*) -+ # All versions of musl provide stack protector -+ gcc_cv_libc_provides_ssp=yes;; - *-*-linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu) - # glibc 2.4 and later provides __stack_chk_fail and - # either __stack_chk_guard, or TLS access to stack guard canary. -@@ -5225,6 +5228,7 @@ - # ) and for now - # simply assert that glibc does provide this, which is true for all - # realistically usable GNU/Hurd configurations. -+ # All supported versions of musl provide it as well - gcc_cv_libc_provides_ssp=yes;; - *-*-darwin* | *-*-freebsd*) - AC_CHECK_FUNC(__stack_chk_fail,[gcc_cv_libc_provides_ssp=yes], @@ -5298,6 +5302,9 @@ gcc_cv_target_dl_iterate_phdr=no fi diff --git a/package/gcc/5.2.0/905-add-musl-support-to-gcc.patch b/package/gcc/5.3.0/905-add-musl-support-to-gcc.patch similarity index 100% rename from package/gcc/5.2.0/905-add-musl-support-to-gcc.patch rename to package/gcc/5.3.0/905-add-musl-support-to-gcc.patch diff --git a/package/gcc/5.2.0/906-mips-musl-support.patch b/package/gcc/5.3.0/906-mips-musl-support.patch similarity index 100% rename from package/gcc/5.2.0/906-mips-musl-support.patch rename to package/gcc/5.3.0/906-mips-musl-support.patch diff --git a/package/gcc/5.2.0/907-x86-musl-support.patch b/package/gcc/5.3.0/907-x86-musl-support.patch similarity index 100% rename from package/gcc/5.2.0/907-x86-musl-support.patch rename to package/gcc/5.3.0/907-x86-musl-support.patch diff --git a/package/gcc/5.2.0/908-arm-musl-support.patch b/package/gcc/5.3.0/908-arm-musl-support.patch similarity index 100% rename from package/gcc/5.2.0/908-arm-musl-support.patch rename to package/gcc/5.3.0/908-arm-musl-support.patch diff --git a/package/gcc/5.2.0/909-aarch64-musl-support.patch b/package/gcc/5.3.0/909-aarch64-musl-support.patch similarity index 100% rename from package/gcc/5.2.0/909-aarch64-musl-support.patch rename to package/gcc/5.3.0/909-aarch64-musl-support.patch diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host index baa79560700..cad6896b44c 100644 --- a/package/gcc/Config.in.host +++ b/package/gcc/Config.in.host @@ -31,6 +31,8 @@ choice depends on !BR2_x86_corei7 && !BR2_x86_jaguar && !BR2_x86_steamroller # ARM EABIhf support appeared in gcc 4.6 depends on !BR2_ARM_EABIHF + # Unsupported for MIPS R6 + depends on !BR2_mips_32r6 && !BR2_mips_64r6 # musl patches only for gcc 4.7+ depends on !BR2_TOOLCHAIN_BUILDROOT_MUSL select BR2_GCC_NEEDS_MPC @@ -50,6 +52,8 @@ choice depends on !BR2_sparc_leon3 # Broken or unsupported x86 cores depends on !BR2_x86_jaguar && !BR2_x86_steamroller + # Unsupported for MIPS R6 + depends on !BR2_mips_32r6 && !BR2_mips_64r6 select BR2_GCC_NEEDS_MPC select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 @@ -64,6 +68,8 @@ choice depends on !BR2_powerpc_power8 # gcc-4.8.x + binutils-2.25 is broken for MIPS depends on !((BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) && BR2_BINUTILS_VERSION_2_25_X) + # Unsupported for MIPS R6 + depends on !BR2_mips_32r6 && !BR2_mips_64r6 select BR2_GCC_NEEDS_MPC select BR2_GCC_SUPPORTS_GRAPHITE select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 @@ -80,6 +86,8 @@ choice bool "gcc 4.9.x" # Broken or unsupported architectures depends on !BR2_arc + # Unsupported for MIPS R6 + depends on !BR2_mips_32r6 && !BR2_mips_64r6 # PR60102 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60102 select BR2_GCC_NEEDS_MPC select BR2_GCC_SUPPORTS_GRAPHITE @@ -105,8 +113,8 @@ config BR2_GCC_VERSION default "4.7.4" if BR2_GCC_VERSION_4_7_X default "4.8.5" if BR2_GCC_VERSION_4_8_X default "4.9.3" if BR2_GCC_VERSION_4_9_X - default "5.2.0" if BR2_GCC_VERSION_5_X - default "arc-2015.06" if BR2_GCC_VERSION_4_8_ARC + default "5.3.0" if BR2_GCC_VERSION_5_X + default "arc-2015.12" if BR2_GCC_VERSION_4_8_ARC config BR2_EXTRA_GCC_CONFIG_OPTIONS string "Additional gcc options" diff --git a/package/gcc/arc-2015.06/0001-Differentiate-between-a-bss-TLS-initialized-symbol.patch b/package/gcc/arc-2015.06/0001-Differentiate-between-a-bss-TLS-initialized-symbol.patch deleted file mode 100644 index 7a86b621ace..00000000000 --- a/package/gcc/arc-2015.06/0001-Differentiate-between-a-bss-TLS-initialized-symbol.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 366cc86e4f8ff6f00f0b731dc6f78d22c7ac9e0a Mon Sep 17 00:00:00 2001 -From: Claudiu Zissulescu -Date: Tue, 7 Jul 2015 17:59:52 +0200 -Subject: [PATCH] Differentiate between a bss TLS initialized symbol. - -Back-port from https://github.com/foss-for-synopsys-dwc-arc-processors/gcc/commit/366cc86e4f8ff6f00f0b731dc6f78d22c7ac9e0a - -This patch fixes "undefined reference to .tdata" observed in many autobuilder -results for ARC. - -Once the next release of ARC GNU tools happens this patch must be removed from -Buildroot. - ---- - gcc/config/arc/arc.c | 9 +++++++-- - 1 file changed, 7 insertions(+), 2 deletions(-) - -diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c -index b6eb3b5..73c3a87 100644 ---- a/gcc/config/arc/arc.c -+++ b/gcc/config/arc/arc.c -@@ -5262,10 +5262,15 @@ arc_legitimize_tls_address (rtx addr, enum tls_model model) - { - case TLS_MODEL_LOCAL_DYNAMIC: - rtx base; -- tree base_decl; base_decl -- = lookup_attribute ("tls9", DECL_ATTRIBUTES (SYMBOL_REF_DECL (addr))); -+ tree base_decl, decl; -+ decl = SYMBOL_REF_DECL (addr); -+ base_decl = lookup_attribute ("tls9", DECL_ATTRIBUTES (decl)); - const char *base_name; base_name = DTPOFF_ZERO_SYM; - rtvec v; -+ -+ if (bss_initializer_p (decl)) -+ base_name = ".tbss"; -+ - if (base_decl && TREE_VALUE (base_decl) - && TREE_VALUE (TREE_VALUE (base_decl))) - { --- -2.4.3 - diff --git a/package/gcc/arc-2015.06/910-gcc-poison-system-directories.patch b/package/gcc/arc-2015.06/910-gcc-poison-system-directories.patch deleted file mode 100644 index 67b37997b86..00000000000 --- a/package/gcc/arc-2015.06/910-gcc-poison-system-directories.patch +++ /dev/null @@ -1,221 +0,0 @@ -From 160397ef3c3331099af028f1b8d3e085b07d88ad Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 29 Mar 2013 08:59:00 +0400 -Subject: [PATCH 16/35] gcc: poison-system-directories - -Adapted to Buildroot and gcc arc-4.8-R3 by Thomas Petazzoni, -especially the addition of the BR_COMPILER_PARANOID_UNSAFE_PATH -environment variable. - -Signed-off-by: Khem Raj -Signed-off-by: Thomas Petazzoni - -Upstream-Status: Inappropriate [distribution: codesourcery] ---- - gcc/Makefile.in | 2 +- - gcc/common.opt | 4 ++++ - gcc/config.in | 6 ++++++ - gcc/configure | 20 ++++++++++++++++++-- - gcc/configure.ac | 10 ++++++++++ - gcc/doc/invoke.texi | 9 +++++++++ - gcc/gcc.c | 2 ++ - gcc/incpath.c | 19 +++++++++++++++++++ - 8 files changed, 69 insertions(+), 3 deletions(-) - -Index: b/gcc/common.opt -=================================================================== ---- a/gcc/common.opt -+++ b/gcc/common.opt -@@ -595,6 +595,10 @@ - Common Var(pedantic) Warning - Issue warnings needed for strict compliance to the standard - -+Wpoison-system-directories -+Common Var(flag_poison_system_directories) Init(1) Warning -+Warn for -I and -L options using system directories if cross compiling -+ - Wshadow - Common Var(warn_shadow) Warning - Warn when one local variable shadows another -Index: b/gcc/config.in -=================================================================== ---- a/gcc/config.in -+++ b/gcc/config.in -@@ -138,6 +138,12 @@ - #endif - - -+/* Define to warn for use of native system header directories */ -+#ifndef USED_FOR_TARGET -+#undef ENABLE_POISON_SYSTEM_DIRECTORIES -+#endif -+ -+ - /* Define if you want all operations on RTL (the basic data structure of the - optimizer and back end) to be checked for dynamic type safety at runtime. - This is quite expensive. */ -Index: b/gcc/configure -=================================================================== ---- a/gcc/configure -+++ b/gcc/configure -@@ -917,6 +917,7 @@ - with_system_zlib - enable_maintainer_mode - enable_version_specific_runtime_libs -+enable_poison_system_directories - enable_plugin - enable_libquadmath_support - with_linker_hash_style -@@ -1630,6 +1631,8 @@ - --enable-version-specific-runtime-libs - specify that runtime libraries should be installed - in a compiler-specific directory -+ --enable-poison-system-directories -+ warn for use of native system header directories - --enable-plugin enable plugin support - --disable-libquadmath-support - disable libquadmath support for Fortran -@@ -27103,6 +27106,19 @@ - fi - - -+# Check whether --enable-poison-system-directories was given. -+if test "${enable_poison_system_directories+set}" = set; then : -+ enableval=$enable_poison_system_directories; -+else -+ enable_poison_system_directories=no -+fi -+ -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ -+$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h -+ -+fi -+ - # Substitute configuration variables - - -Index: b/gcc/configure.ac -=================================================================== ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -5063,6 +5063,16 @@ - [specify that runtime libraries should be - installed in a compiler-specific directory])]) - -+AC_ARG_ENABLE([poison-system-directories], -+ AS_HELP_STRING([--enable-poison-system-directories], -+ [warn for use of native system header directories]),, -+ [enable_poison_system_directories=no]) -+if test "x${enable_poison_system_directories}" = "xyes"; then -+ AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES], -+ [1], -+ [Define to warn for use of native system header directories]) -+fi -+ - # Substitute configuration variables - AC_SUBST(subdirs) - AC_SUBST(srcdir) -Index: b/gcc/doc/invoke.texi -=================================================================== ---- a/gcc/doc/invoke.texi -+++ b/gcc/doc/invoke.texi -@@ -258,6 +258,7 @@ - -Woverlength-strings -Wpacked -Wpacked-bitfield-compat -Wpadded @gol - -Wparentheses -Wpedantic-ms-format -Wno-pedantic-ms-format @gol - -Wpointer-arith -Wno-pointer-to-int-cast @gol -+-Wno-poison-system-directories @gol - -Wredundant-decls -Wno-return-local-addr @gol - -Wreturn-type -Wsequence-point -Wshadow @gol - -Wsign-compare -Wsign-conversion -Wsizeof-pointer-memaccess @gol -@@ -4025,6 +4026,14 @@ - for most targets, it is made up of code and thus requires the stack - to be made executable in order for the program to work properly. - -+@item -Wno-poison-system-directories -+@opindex Wno-poison-system-directories -+Do not warn for @option{-I} or @option{-L} options using system -+directories such as @file{/usr/include} when cross compiling. This -+option is intended for use in chroot environments when such -+directories contain the correct headers and libraries for the target -+system rather than the host. -+ - @item -Wfloat-equal - @opindex Wfloat-equal - @opindex Wno-float-equal -Index: b/gcc/gcc.c -=================================================================== ---- a/gcc/gcc.c -+++ b/gcc/gcc.c -@@ -740,6 +740,8 @@ - "%{fuse-ld=*:-fuse-ld=%*}\ - %X %{o*} %{e*} %{N} %{n} %{r}\ - %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}}\ -+ %{Wno-poison-system-directories:--no-poison-system-directories}\ -+ %{Werror=poison-system-directories:--error-poison-system-directories}\ - %{static:} %{L*} %(mfwrap) %(link_libgcc) " SANITIZER_EARLY_SPEC " %o\ - %{fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)}\ - %{fgnu-tm:%:include(libitm.spec)%(link_itm)}\ -@@ -3990,6 +3992,12 @@ - gcc_assert (!compare_debug_opt); - } - -+ temp = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH"); -+ if (temp && strlen(temp) > 0) -+ { -+ save_switch("-Werror=poison-system-directories", 0, NULL, false, true); -+ } -+ - /* Set up the search paths. We add directories that we expect to - contain GNU Toolchain components before directories specified by - the machine description so that we will find GNU components (like -Index: b/gcc/incpath.c -=================================================================== ---- a/gcc/incpath.c -+++ b/gcc/incpath.c -@@ -28,6 +28,7 @@ - #include "intl.h" - #include "incpath.h" - #include "cppdefault.h" -+#include "diagnostic-core.h" - - /* Microsoft Windows does not natively support inodes. - VMS has non-numeric inodes. */ -@@ -382,6 +383,24 @@ - } - fprintf (stderr, _("End of search list.\n")); - } -+ -+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES -+ if (flag_poison_system_directories) -+ { -+ struct cpp_dir *p; -+ -+ for (p = heads[QUOTE]; p; p = p->next) -+ { -+ if ((!strncmp (p->name, "/usr/include", 12)) -+ || (!strncmp (p->name, "/usr/local/include", 18)) -+ || (!strncmp (p->name, "/usr/X11R6/include", 18))) -+ warning (OPT_Wpoison_system_directories, -+ "include location \"%s\" is unsafe for " -+ "cross-compilation", -+ p->name); -+ } -+ } -+#endif - } - - /* Use given -I paths for #include "..." but not #include <...>, and -Index: b/gcc/config/arc/arc.h -=================================================================== ---- a/gcc/config/arc/arc.h -+++ b/gcc/config/arc/arc.h -@@ -205,6 +205,8 @@ - %{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S:\ - %(linker) %l " LINK_PIE_SPEC "%X %{o*} %{A} %{d} %{e*} %{m} %{N} %{n} %{r}\ - %{s} %{t} %{u*} %{x} %{z} %{Z} %{!A:%{!nostdlib:%{!nostartfiles:%S}}}\ -+ %{Wno-poison-system-directories:--no-poison-system-directories}\ -+ %{Werror=poison-system-directories:--error-poison-system-directories}\ - %{static:} %{L*} %(mfwrap) %(link_libgcc) %o\ - %{fopenmp:%:include(libgomp.spec)%(link_gomp)} %(mflib)\ - %{fprofile-arcs|fprofile-generate|coverage:-lgcov}\ diff --git a/package/gcc/arc-2015.06/100-libstdcxx-uclibc-c99.patch b/package/gcc/arc-2015.12/100-libstdcxx-uclibc-c99.patch similarity index 100% rename from package/gcc/arc-2015.06/100-libstdcxx-uclibc-c99.patch rename to package/gcc/arc-2015.12/100-libstdcxx-uclibc-c99.patch diff --git a/package/gcc/arc-2015.06/851-PR-other-56780.patch b/package/gcc/arc-2015.12/851-PR-other-56780.patch similarity index 100% rename from package/gcc/arc-2015.06/851-PR-other-56780.patch rename to package/gcc/arc-2015.12/851-PR-other-56780.patch diff --git a/package/gcc/arc-2015.12/900-UPDATE-Fix-handling-complex-PIC-moves.patch b/package/gcc/arc-2015.12/900-UPDATE-Fix-handling-complex-PIC-moves.patch new file mode 100644 index 00000000000..48228dcb6f1 --- /dev/null +++ b/package/gcc/arc-2015.12/900-UPDATE-Fix-handling-complex-PIC-moves.patch @@ -0,0 +1,103 @@ +From b55922d45fd16f5e8fc7c3885da42b2b9b37754d Mon Sep 17 00:00:00 2001 +From: Claudiu Zissulescu +Date: Mon, 18 Jan 2016 16:43:18 +0100 +Subject: [PATCH] UPDATE: Fix handling complex PIC moves. + +fwprop is putting in the REG_EQUIV notes which are involving the +constant pic unspecs. Then, loop may use those notes for +optimizations rezulting in complex patterns that are not supported by +the current implementation. The following piece of code tries to +convert the complex instruction in simpler ones. + +The fix is done in development tree: [arc-4.8-dev b55922d] +and will be a part of the next release of ARC GNU tools. +Once that new release happens this patch must be removed. + + +gcc/ +2016-01-18 Claudiu Zissulescu + + * config/arc/arc.c (arc_legitimize_pic_address): Handle MINUS + operations when doing PIC moves. Make this function static. + (arc_legitimate_pc_offset_p): Use + arc_raw_symbolic_reference_mentioned_p. + * config/arc/arc-protos.h (arc_legitimize_pic_address): Remove. + + gcc/config/arc/arc-protos.h | 1 - + gcc/config/arc/arc.c | 33 +++++++++++++++++++-------------- + 2 files changed, 19 insertions(+), 15 deletions(-) + + * config/arc/arc.c (arc_legitimize_pic_address): Handle complex +diff --git a/gcc/config/arc/arc-protos.h b/gcc/config/arc/arc-protos.h +index 464e0ab..5986e06 100644 +--- a/gcc/config/arc/arc-protos.h ++++ b/gcc/config/arc/arc-protos.h +@@ -53,7 +53,6 @@ extern unsigned int arc_compute_frame_size (); + extern bool arc_ccfsm_branch_deleted_p (void); + extern void arc_ccfsm_record_branch_deleted (void); + +-extern rtx arc_legitimize_pic_address (rtx, rtx); + void arc_asm_output_aligned_decl_local (FILE *, tree, const char *, + unsigned HOST_WIDE_INT, + unsigned HOST_WIDE_INT, +diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c +index a89c8ee..f7cae9f 100644 +--- a/gcc/config/arc/arc.c ++++ b/gcc/config/arc/arc.c +@@ -5243,19 +5243,7 @@ arc_legitimate_pc_offset_p (rtx addr) + if (GET_CODE (addr) != CONST) + return false; + addr = XEXP (addr, 0); +- if (GET_CODE (addr) == PLUS) +- { +- if (GET_CODE (XEXP (addr, 1)) != CONST_INT) +- return false; +- addr = XEXP (addr, 0); +- } +- return (GET_CODE (addr) == UNSPEC +- && XVECLEN (addr, 0) == 1 +- && (XINT (addr, 1) == ARC_UNSPEC_GOT +- || XINT (addr, 1) == ARC_UNSPEC_GOTOFFPC +- || XINT (addr, 1) == UNSPEC_TLS_GD +- || XINT (addr, 1) == UNSPEC_TLS_IE) +- && GET_CODE (XVECEXP (addr, 0, 0)) == SYMBOL_REF); ++ return flag_pic && !arc_raw_symbolic_reference_mentioned_p (addr, false); + } + + /* Return true if ADDR is a valid pic address. +@@ -5522,7 +5510,7 @@ arc_legitimize_tls_address (rtx addr, enum tls_model model) + The return value is the legitimated address. + If OLDX is non-zero, it is the target to assign the address to first. */ + +-rtx ++static rtx + arc_legitimize_pic_address (rtx orig, rtx oldx) + { + rtx addr = orig; +@@ -5569,6 +5557,23 @@ arc_legitimize_pic_address (rtx orig, rtx oldx) + /* Check that the unspec is one of the ones we generate? */ + return orig; + } ++ else if (GET_CODE (addr) == MINUS) ++ { ++ /* The same story with fwprop. */ ++ rtx op0 = XEXP (addr, 0); ++ rtx op1 = XEXP (addr, 1); ++ gcc_assert (oldx); ++ gcc_assert (GET_CODE (op1) == UNSPEC); ++ ++ emit_move_insn (oldx, ++ gen_rtx_CONST (SImode, ++ arc_legitimize_pic_address (op1, ++ NULL_RTX))); ++ emit_insn (gen_rtx_SET (VOIDmode, oldx, ++ gen_rtx_MINUS (SImode, op0, oldx))); ++ return oldx; ++ ++ } + else if (GET_CODE (addr) != PLUS) + { + /* fwprop is putting in the REG_EQUIV notes which are +-- +2.5.0 + diff --git a/package/gcc/arc-2015.12/901-UPDATE1-Fix-handling-complex-PIC-moves.patch b/package/gcc/arc-2015.12/901-UPDATE1-Fix-handling-complex-PIC-moves.patch new file mode 100644 index 00000000000..28cb7c1913a --- /dev/null +++ b/package/gcc/arc-2015.12/901-UPDATE1-Fix-handling-complex-PIC-moves.patch @@ -0,0 +1,83 @@ +From f00b0f17d6889d811468c2c77508fbea8bfc377d Mon Sep 17 00:00:00 2001 +From: Claudiu Zissulescu +Date: Tue, 19 Jan 2016 14:40:16 +0100 +Subject: [PATCH] UPDATE1: Fix handling complex PIC moves. + +The arc_legitimate_pc_offset_p condition is too lax. Updated it. + +The fix is done in development tree: [arc-4.8-dev f00b0f1] +and will be a part of the next release of ARC GNU tools. +Once that new release happens this patch must be removed. + +gcc/ +2016-01-18 Claudiu Zissulescu + + * config/arc/arc.c (arc_needs_pcl_p ): New function + (arc_legitimate_pc_offset_p): Use arc_needs_pcl_p. +--- + gcc/config/arc/arc.c | 42 ++++++++++++++++++++++++++++++++++++++++-- + 1 file changed, 40 insertions(+), 2 deletions(-) + +diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c +index f7cae9f..18d88a3 100644 +--- a/gcc/config/arc/arc.c ++++ b/gcc/config/arc/arc.c +@@ -5234,6 +5234,45 @@ arc_rtx_costs (rtx x, int code, int outer_code, int opno ATTRIBUTE_UNUSED, + } + } + ++/* Helper used by arc_legitimate_pc_offset_p. */ ++ ++static bool ++arc_needs_pcl_p (rtx x) ++{ ++ register const char *fmt; ++ register int i, j; ++ ++ if ((GET_CODE (x) == UNSPEC) ++ && (XVECLEN (x, 0) == 1) ++ && (GET_CODE (XVECEXP (x, 0, 0)) == SYMBOL_REF)) ++ switch (XINT (x, 1)) ++ { ++ case ARC_UNSPEC_GOT: ++ case ARC_UNSPEC_GOTOFFPC: ++ case UNSPEC_TLS_GD: ++ case UNSPEC_TLS_IE: ++ return true; ++ default: ++ break; ++ } ++ ++ fmt = GET_RTX_FORMAT (GET_CODE (x)); ++ for (i = GET_RTX_LENGTH (GET_CODE (x)) - 1; i >= 0; i--) ++ { ++ if (fmt[i] == 'e') ++ { ++ if (arc_needs_pcl_p (XEXP (x, i))) ++ return true; ++ } ++ else if (fmt[i] == 'E') ++ for (j = XVECLEN (x, i) - 1; j >= 0; j--) ++ if (arc_needs_pcl_p (XVECEXP (x, i, j))) ++ return true; ++ } ++ ++ return false; ++} ++ + /* Return true if ADDR is an address that needs to be expressed as an + explicit sum of pcl + offset. */ + +@@ -5242,8 +5281,7 @@ arc_legitimate_pc_offset_p (rtx addr) + { + if (GET_CODE (addr) != CONST) + return false; +- addr = XEXP (addr, 0); +- return flag_pic && !arc_raw_symbolic_reference_mentioned_p (addr, false); ++ return arc_needs_pcl_p (addr); + } + + /* Return true if ADDR is a valid pic address. +-- +2.5.0 + diff --git a/package/gcc/arc-2015.12/950-Don-t-allow-mcompact-casesi-for-ARCv2.patch b/package/gcc/arc-2015.12/950-Don-t-allow-mcompact-casesi-for-ARCv2.patch new file mode 100644 index 00000000000..dc03a028ed4 --- /dev/null +++ b/package/gcc/arc-2015.12/950-Don-t-allow-mcompact-casesi-for-ARCv2.patch @@ -0,0 +1,100 @@ +From 09463827001a7b8094f4b9460514370a1876d908 Mon Sep 17 00:00:00 2001 +From: Claudiu Zissulescu +Date: Wed, 20 Jan 2016 16:32:40 +0100 +Subject: [PATCH] Don't allow mcompact-casesi for ARCv2 + +The compact casesi is not working for arcv2 processors family as it +makes use of the add_s rx,rx,pcl instruction which is only valid for +arc6xx and arc700 processors. Also not having this instruction makes +no much sens to change the compact-casesi pattern to use normal add +instructions as it nullifies the advantage of short instruction use. +The default casesi pattern betters suits the arcv2 architecture. + +The fix is done in development tree: [arc-4.8-dev 0946382] +and will be a part of the next release of ARC GNU tools. +Once that new release happens this patch must be removed. + +gcc/ +2016-01-20 Claudiu Zissulescu + + * common/config/arc/arc-common.c (arc_option_optimization_table): + Remove mcompact-casesi option. + * config/arc/arc.c (arc_override_options): Use compact-casesi only + for arcv1. + * config/arc/arc.md (casesi_load): Use short instructions. +--- + gcc/common/config/arc/arc-common.c | 1 - + gcc/config/arc/arc.c | 9 +++++---- + gcc/config/arc/arc.md | 10 ++++++++-- + 3 files changed, 13 insertions(+), 7 deletions(-) + + * config/arc/arc.c (arc_legitimize_pic_address): Handle MINUS +diff --git a/gcc/common/config/arc/arc-common.c b/gcc/common/config/arc/arc-common.c +index e2e36fa..310bc80 100644 +--- a/gcc/common/config/arc/arc-common.c ++++ b/gcc/common/config/arc/arc-common.c +@@ -58,7 +58,6 @@ static const struct default_options arc_option_optimization_table[] = + { OPT_LEVELS_ALL, OPT_mbbit_peephole, NULL, 1 }, + { OPT_LEVELS_SIZE, OPT_mq_class, NULL, 1 }, + { OPT_LEVELS_SIZE, OPT_mcase_vector_pcrel, NULL, 1 }, +- { OPT_LEVELS_SIZE, OPT_mcompact_casesi, NULL, 1 }, + { OPT_LEVELS_NONE, 0, NULL, 0 } + }; + +diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c +index 18d88a3..f828398 100644 +--- a/gcc/config/arc/arc.c ++++ b/gcc/config/arc/arc.c +@@ -1151,6 +1151,11 @@ arc_override_options (void) + if (arc_size_opt_level == 3) + optimize_size = 1; + ++ if (TARGET_V2) ++ TARGET_COMPACT_CASESI = 0; ++ else if (optimize_size == 1) ++ TARGET_COMPACT_CASESI = 1; ++ + if (flag_pic) + target_flags |= MASK_NO_SDATA_SET; + +@@ -1163,10 +1168,6 @@ arc_override_options (void) + if (!TARGET_Q_CLASS) + TARGET_COMPACT_CASESI = 0; + +- /* For the time being don't support COMPACT_CASESI for ARCv2. */ +- if (TARGET_V2) +- TARGET_COMPACT_CASESI = 0; +- + if (TARGET_COMPACT_CASESI) + TARGET_CASE_VECTOR_PC_RELATIVE = 1; + +diff --git a/gcc/config/arc/arc.md b/gcc/config/arc/arc.md +index bc4ac38..ba7c8bc 100644 +--- a/gcc/config/arc/arc.md ++++ b/gcc/config/arc/arc.md +@@ -3837,14 +3837,20 @@ + switch (GET_MODE (diff_vec)) + { + case SImode: +- return \"ld.as %0,[%1,%2]%&\"; ++ if ((which_alternative == 0) && TARGET_CODE_DENSITY) ++ return \"ld_s.as %0,[%1,%2]%&\"; ++ else ++ return \"ld.as %0,[%1,%2]%&\"; + case HImode: + if (ADDR_DIFF_VEC_FLAGS (diff_vec).offset_unsigned) + return \"ldw.as %0,[%1,%2]\"; + return \"ldw.x.as %0,[%1,%2]\"; + case QImode: + if (ADDR_DIFF_VEC_FLAGS (diff_vec).offset_unsigned) +- return \"ldb%? %0,[%1,%2]%&\"; ++ if (which_alternative == 0) ++ return \"ldb_s %0,[%1,%2]%&\"; ++ else ++ return \"ldb %0,[%1,%2]%&\"; + return \"ldb.x %0,[%1,%2]\"; + default: + gcc_unreachable (); +-- +2.5.0 + diff --git a/package/gcc/gcc-final/gcc-final.mk b/package/gcc/gcc-final/gcc-final.mk index 86b3c78b205..dbdb6158e1f 100644 --- a/package/gcc/gcc-final/gcc-final.mk +++ b/package/gcc/gcc-final/gcc-final.mk @@ -12,7 +12,8 @@ HOST_GCC_FINAL_DEPENDENCIES = \ $(HOST_GCC_COMMON_DEPENDENCIES) \ $(BR_LIBC) -HOST_GCC_FINAL_EXTRACT_CMDS = $(HOST_GCC_EXTRACT_CMDS) +HOST_GCC_FINAL_EXCLUDES = $(HOST_GCC_EXCLUDES) +HOST_GCC_FINAL_POST_EXTRACT_HOOKS += HOST_GCC_FAKE_TESTSUITE ifneq ($(call qstrip, $(BR2_XTENSA_CORE_NAME)),) HOST_GCC_FINAL_POST_EXTRACT_HOOKS += HOST_GCC_XTENSA_OVERLAY_EXTRACT @@ -26,6 +27,15 @@ HOST_GCC_FINAL_SUBDIR = build HOST_GCC_FINAL_PRE_CONFIGURE_HOOKS += HOST_GCC_CONFIGURE_SYMLINK +# We want to always build the static variants of all the gcc libraries, +# of which libstdc++, libgomp, libmudflap... +# To do so, we can not just pass --enable-static to override the generic +# --disable-static flag, otherwise gcc fails to build some of those +# libraries, see; +# http://lists.busybox.net/pipermail/buildroot/2013-October/080412.html +# +# So we must completely override the generic commands and provide our own. +# define HOST_GCC_FINAL_CONFIGURE_CMDS (cd $(HOST_GCC_FINAL_SRCDIR) && rm -rf config.cache; \ $(HOST_CONFIGURE_OPTS) \ @@ -50,7 +60,6 @@ GCC_FINAL_CROSS_LANGUAGES = $(subst $(space),$(comma),$(GCC_FINAL_CROSS_LANGUAGE HOST_GCC_FINAL_CONF_OPTS = \ $(HOST_GCC_COMMON_CONF_OPTS) \ --enable-languages=$(GCC_FINAL_CROSS_LANGUAGES) \ - --enable-poison-system-directories \ --with-build-time-tools=$(HOST_DIR)/usr/$(GNU_TARGET_NAME)/bin HOST_GCC_FINAL_GCC_LIB_DIR = $(HOST_DIR)/usr/$(GNU_TARGET_NAME)/lib* @@ -86,27 +95,23 @@ HOST_GCC_FINAL_CONF_OPTS += \ HOST_GCC_FINAL_CONF_ENV = \ $(HOST_GCC_COMMON_CONF_ENV) +HOST_GCC_FINAL_MAKE_OPTS += $(HOST_GCC_COMMON_MAKE_OPTS) + # Make sure we have 'cc' define HOST_GCC_FINAL_CREATE_CC_SYMLINKS if [ ! -e $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-cc ]; then \ - ln -snf $(GNU_TARGET_NAME)-gcc \ + ln -f $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-gcc \ $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-cc; \ fi - if [ ! -e $(HOST_DIR)/usr/$(GNU_TARGET_NAME)/bin/cc ]; then \ - ln -snf gcc $(HOST_DIR)/usr/$(GNU_TARGET_NAME)/bin/cc; \ - fi endef HOST_GCC_FINAL_POST_INSTALL_HOOKS += HOST_GCC_FINAL_CREATE_CC_SYMLINKS -# Create -linux- symlinks -define HOST_GCC_FINAL_CREATE_SIMPLE_SYMLINKS - (cd $(HOST_DIR)/usr/bin; for i in $(GNU_TARGET_NAME)-*; do \ - ln -snf $$i $(ARCH)-linux$${i##$(GNU_TARGET_NAME)}; \ - done) -endef - -HOST_GCC_FINAL_POST_INSTALL_HOOKS += HOST_GCC_FINAL_CREATE_SIMPLE_SYMLINKS +HOST_GCC_FINAL_TOOLCHAIN_WRAPPER_ARGS += $(HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS) +HOST_GCC_FINAL_POST_BUILD_HOOKS += TOOLCHAIN_BUILD_WRAPPER +# Note: this must be done after CREATE_CC_SYMLINKS, otherwise the +# -cc symlink to the wrapper is not created. +HOST_GCC_FINAL_POST_INSTALL_HOOKS += HOST_GCC_INSTALL_WRAPPER_AND_SIMPLE_SYMLINKS # In gcc 4.7.x, the ARM EABIhf library loader path for (e)glibc was not # correct, so we create a symbolic link to make things work diff --git a/package/gcc/gcc-initial/gcc-initial.mk b/package/gcc/gcc-initial/gcc-initial.mk index 6bb7997b9f8..1e58d8b5f78 100644 --- a/package/gcc/gcc-initial/gcc-initial.mk +++ b/package/gcc/gcc-initial/gcc-initial.mk @@ -10,7 +10,8 @@ GCC_INITIAL_SOURCE = $(GCC_SOURCE) HOST_GCC_INITIAL_DEPENDENCIES = $(HOST_GCC_COMMON_DEPENDENCIES) -HOST_GCC_INITIAL_EXTRACT_CMDS = $(HOST_GCC_EXTRACT_CMDS) +HOST_GCC_INITIAL_EXCLUDES = $(HOST_GCC_EXCLUDES) +HOST_GCC_INITIAL_POST_EXTRACT_HOOKS += HOST_GCC_FAKE_TESTSUITE ifneq ($(call qstrip, $(BR2_XTENSA_CORE_NAME)),) HOST_GCC_INITIAL_POST_EXTRACT_HOOKS += HOST_GCC_XTENSA_OVERLAY_EXTRACT @@ -51,10 +52,7 @@ HOST_GCC_INITIAL_CONF_OPTS = \ HOST_GCC_INITIAL_CONF_ENV = \ $(HOST_GCC_COMMON_CONF_ENV) -# We need to tell gcc that the C library will be providing the ssp -# support, as it can't guess it since the C library hasn't been built -# yet (we're gcc-initial). -HOST_GCC_INITIAL_MAKE_OPTS = $(if $(BR2_TOOLCHAIN_HAS_SSP),gcc_cv_libc_provides_ssp=yes) all-gcc +HOST_GCC_INITIAL_MAKE_OPTS = $(HOST_GCC_COMMON_MAKE_OPTS) all-gcc HOST_GCC_INITIAL_INSTALL_OPTS = install-gcc ifeq ($(BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE),y) @@ -62,4 +60,8 @@ HOST_GCC_INITIAL_MAKE_OPTS += all-target-libgcc HOST_GCC_INITIAL_INSTALL_OPTS += install-target-libgcc endif +HOST_GCC_INITIAL_TOOLCHAIN_WRAPPER_ARGS += $(HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS) +HOST_GCC_INITIAL_POST_BUILD_HOOKS += TOOLCHAIN_BUILD_WRAPPER +HOST_GCC_INITIAL_POST_INSTALL_HOOKS += HOST_GCC_INSTALL_WRAPPER_AND_SIMPLE_SYMLINKS + $(eval $(host-autotools-package)) diff --git a/package/gcc/gcc.hash b/package/gcc/gcc.hash index 763f19f2b44..0ef4e65f058 100644 --- a/package/gcc/gcc.hash +++ b/package/gcc/gcc.hash @@ -6,7 +6,7 @@ sha512 dfcb737073191e628231031a3571ec77ee760a59377630f4a6e4fdfa66f9ddad39fde47e sha512 47fdfeca0c0a624cdec9c4ae47137d056c918d5c386d4b96985bb3c8172aba377cb66cbcc30e80832fd244a7d98f562c20198056915c70cfef0977545073a8ea gcc-4.8.5.tar.bz2 # From ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.9.3/sha512.sum sha512 9ac57377a6975fc7adac704ec81355262b9f537def6955576753b87715470a20ee6a2a3144a79cc8fcba3443f7b44c7337d79d704b522d053f54f79aa6b442df gcc-4.9.3.tar.bz2 -# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-5.2.0/sha512.sum -sha512 844120349ec04465dcea52d8ec747f1cbbc9d76a39fe3d8ef5e6b93614e63d718862d60d0a1c1cbf59ffc7815562287d0a2e536a6b220cebcd0b8de4ba35e715 gcc-5.2.0.tar.bz2 +# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-5.3.0/sha512.sum +sha512 d619847383405fd389f5a2d7225f97fedb01f81478dbb8339047ccba7561a5c20045ab500a8744bffd19ea51892ce09fc37f862f2cfcb42de0f0f8cd8f8da37a gcc-5.3.0.tar.bz2 # No hash for the ARC variant, comes from the github-helper: -none xxx gcc-arc-2015.06.tar.gz +none xxx gcc-arc-2015.12.tar.gz diff --git a/package/gcc/gcc.mk b/package/gcc/gcc.mk index 501fcea50f8..07883d074a6 100644 --- a/package/gcc/gcc.mk +++ b/package/gcc/gcc.mk @@ -23,9 +23,10 @@ GCC_SOURCE ?= gcc-$(GCC_VERSION).tar.bz2 # Xtensa special hook # +HOST_GCC_XTENSA_OVERLAY_TAR = $(BR2_XTENSA_OVERLAY_DIR)/xtensa_$(call qstrip,$(BR2_XTENSA_CORE_NAME)).tar + define HOST_GCC_XTENSA_OVERLAY_EXTRACT - tar xf $(BR2_XTENSA_OVERLAY_DIR)/xtensa_$(call qstrip,\ - $(BR2_XTENSA_CORE_NAME)).tar -C $(@D) --strip-components=1 gcc + tar xf $(HOST_GCC_XTENSA_OVERLAY_TAR) -C $(@D) --strip-components=1 gcc endef # @@ -47,18 +48,11 @@ define HOST_GCC_APPLY_PATCHES $(HOST_GCC_APPLY_POWERPC_PATCH) endef -# -# Custom extract command to save disk space -# +HOST_GCC_EXCLUDES = \ + libjava/* libgo/* \ + gcc/testsuite/* libstdc++-v3/testsuite/* -define HOST_GCC_EXTRACT_CMDS - $(call suitable-extractor,$(GCC_SOURCE)) $(DL_DIR)/$(GCC_SOURCE) | \ - $(TAR) --strip-components=1 -C $(@D) \ - --exclude='libjava/*' \ - --exclude='libgo/*' \ - --exclude='gcc/testsuite/*' \ - --exclude='libstdc++-v3/testsuite/*' \ - $(TAR_OPTIONS) - +define HOST_GCC_FAKE_TESTSUITE mkdir -p $(@D)/libstdc++-v3/testsuite/ echo "all:" > $(@D)/libstdc++-v3/testsuite/Makefile.in echo "install:" >> $(@D)/libstdc++-v3/testsuite/Makefile.in @@ -112,11 +106,11 @@ GCC_COMMON_TARGET_CXXFLAGS = $(filter-out -Os,$(GCC_COMMON_TARGET_CXXFLAGS)) endif endif -# Xtensa libgcc can't be built with -mtext-section-literals +# Xtensa libgcc can't be built with -mauto-litpools # because of the trick used to generate .init/.fini sections. ifeq ($(BR2_xtensa),y) -GCC_COMMON_TARGET_CFLAGS = $(filter-out -mtext-section-literals,$(TARGET_CFLAGS)) -GCC_COMMON_TARGET_CXXFLAGS = $(filter-out -mtext-section-literals,$(TARGET_CXXFLAGS)) +GCC_COMMON_TARGET_CFLAGS = $(filter-out -mauto-litpools,$(TARGET_CFLAGS)) +GCC_COMMON_TARGET_CXXFLAGS = $(filter-out -mauto-litpools,$(TARGET_CXXFLAGS)) endif # Propagate options used for target software building to GCC target libs @@ -141,7 +135,7 @@ endif # libsanitizer is broken for SPARC # https://bugs.busybox.net/show_bug.cgi?id=7951 -ifeq ($(BR2_sparc),y) +ifeq ($(BR2_sparc)$(BR2_sparc64),y) HOST_GCC_COMMON_CONF_OPTS += --disable-libsanitizer endif @@ -176,8 +170,14 @@ HOST_GCC_COMMON_CONF_OPTS += --with-mpc=$(HOST_DIR)/usr endif ifeq ($(BR2_GCC_ENABLE_GRAPHITE),y) -HOST_GCC_COMMON_DEPENDENCIES += host-isl host-cloog -HOST_GCC_COMMON_CONF_OPTS += --with-isl=$(HOST_DIR)/usr --with-cloog=$(HOST_DIR)/usr +HOST_GCC_COMMON_DEPENDENCIES += host-isl +HOST_GCC_COMMON_CONF_OPTS += --with-isl=$(HOST_DIR)/usr +# gcc 5 doesn't need cloog any more, see +# https://gcc.gnu.org/gcc-5/changes.html +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_5),) +HOST_GCC_COMMON_DEPENDENCIES += host-cloog +HOST_GCC_COMMON_CONF_OPTS += --with-cloog=$(HOST_DIR)/usr +endif else HOST_GCC_COMMON_CONF_OPTS += --without-isl --without-cloog endif @@ -235,4 +235,76 @@ HOST_GCC_COMMON_CONF_OPTS += \ --with-long-double-128 endif +HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS += -DBR_CROSS_PATH_SUFFIX='".br_real"' + +# For gcc-initial, we need to tell gcc that the C library will be +# providing the ssp support, as it can't guess it since the C library +# hasn't been built yet. +# +# For gcc-final, the gcc logic to detect whether SSP support is +# available or not in the C library is not working properly for +# uClibc, so let's be explicit as well. +HOST_GCC_COMMON_MAKE_OPTS = \ + gcc_cv_libc_provides_ssp=$(if $(BR2_TOOLCHAIN_HAS_SSP),yes,no) + +ifeq ($(BR2_CCACHE),y) +HOST_GCC_COMMON_CCACHE_HASH_FILES += $(DL_DIR)/$(GCC_SOURCE) +# Cfr. PATCH_BASE_DIRS in .stamp_patched, but we catch both versioned and +# unversioned patches unconditionally +HOST_GCC_COMMON_CCACHE_HASH_FILES += \ + $(sort $(wildcard \ + package/gcc/$(GCC_VERSION)/*.patch \ + $(addsuffix $((PKG)_RAWNAME)/$(GCC_VERSION)/*.patch,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))) \ + $(addsuffix $((PKG)_RAWNAME)/*.patch,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))))) +ifeq ($(BR2_xtensa),y) +HOST_GCC_COMMON_CCACHE_HASH_FILES += $(HOST_GCC_XTENSA_OVERLAY_TAR) +endif +ifeq ($(ARCH),powerpc) +ifneq ($(BR2_SOFT_FLOAT),) +HOST_GCC_COMMON_CCACHE_HASH_FILES += package/gcc/$(GCC_VERSION)/1000-powerpc-link-with-math-lib.patch.conditional +endif +endif + +# _CONF_OPTS contains some references to the absolute path of $(HOST_DIR) +# and a reference to the Buildroot git revision (BR2_VERSION_FULL), +# so substitute those away. +HOST_GCC_COMMON_TOOLCHAIN_WRAPPER_ARGS += -DBR_CCACHE_HASH=\"`\ + printf '%s\n' $(subst $(HOST_DIR),@HOST_DIR@,\ + $(subst --with-pkgversion="Buildroot $(BR2_VERSION_FULL)",,$($(PKG)_CONF_OPTS))) \ + | sha256sum - $(HOST_GCC_COMMON_CCACHE_HASH_FILES) \ + | cut -c -64 | tr -d '\n'`\" +endif # BR2_CCACHE + +# The LTO support in gcc creates wrappers for ar, ranlib and nm which load +# the lto plugin. These wrappers are called *-gcc-ar, *-gcc-ranlib, and +# *-gcc-nm and should be used instead of the real programs when -flto is +# used. However, we should not add the toolchain wrapper for them, and they +# match the *cc-* pattern. Therefore, an additional case is added for *-ar, +# *-ranlib and *-nm. +# Avoid that a .br_real is symlinked a second time. +# Also create -linux- symlinks. +define HOST_GCC_INSTALL_WRAPPER_AND_SIMPLE_SYMLINKS + $(Q)cd $(HOST_DIR)/usr/bin; \ + for i in $(GNU_TARGET_NAME)-*; do \ + case "$$i" in \ + *.br_real) \ + ;; \ + *-ar|*-ranlib|*-nm) \ + ln -snf $$i $(ARCH)-linux$${i##$(GNU_TARGET_NAME)}; \ + ;; \ + *cc|*cc-*|*++|*++-*|*cpp) \ + rm -f $$i.br_real; \ + mv $$i $$i.br_real; \ + ln -sf toolchain-wrapper $$i; \ + ln -sf toolchain-wrapper $(ARCH)-linux$${i##$(GNU_TARGET_NAME)}; \ + ln -snf $$i.br_real $(ARCH)-linux$${i##$(GNU_TARGET_NAME)}.br_real; \ + ;; \ + *) \ + ln -snf $$i $(ARCH)-linux$${i##$(GNU_TARGET_NAME)}; \ + ;; \ + esac; \ + done + +endef + include $(sort $(wildcard package/gcc/*/*.mk)) diff --git a/package/gcr/Config.in b/package/gcr/Config.in new file mode 100644 index 00000000000..cd40ca18f6c --- /dev/null +++ b/package/gcr/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_GCR + bool "gcr" + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_MMU # libglib2 + depends on !BR2_STATIC_LIBS # p11-kit + select BR2_PACKAGE_GNUPG2 # runtime + select BR2_PACKAGE_LIBGCRYPT + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_P11_KIT + help + Library for cryptographic UIs and accessing PKCS#11 modules. + + https://developer.gnome.org/gcr/ + +comment "gcr needs a toolchain w/ wchar, threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS diff --git a/package/gcr/gcr.hash b/package/gcr/gcr.hash new file mode 100644 index 00000000000..8f1f931c0d4 --- /dev/null +++ b/package/gcr/gcr.hash @@ -0,0 +1,2 @@ +# From http://ftp.acc.umu.se/pub/gnome/sources/gcr/3.18/gcr-3.18.0.sha256sum +sha256 d4d16da5af55148a694055835ccd07ad34daf0ad03bdad929bf7cad15637ce00 gcr-3.18.0.tar.xz diff --git a/package/gcr/gcr.mk b/package/gcr/gcr.mk new file mode 100644 index 00000000000..a89f874f4c9 --- /dev/null +++ b/package/gcr/gcr.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# gcr +# +################################################################################ + +GCR_VERSION_MAJOR = 3.18 +GCR_VERSION = $(GCR_VERSION_MAJOR).0 +GCR_SITE = http://ftp.acc.umu.se/pub/gnome/sources/gcr/$(GCR_VERSION_MAJOR) +GCR_SOURCE = gcr-$(GCR_VERSION).tar.xz +GCR_DEPENDENCIES = host-intltool host-pkgconf libgcrypt libglib2 p11-kit +GCR_INSTALL_STAGING = YES +GCR_CONF_ENV = ac_cv_path_GNUPG=/usr/bin/gpg2 +GCR_CONF_OPTS = \ + --disable-gtk-doc \ + --with-libgcrypt-prefix=$(STAGING_DIR)/usr +# Even though COPYING is v2 the code states v2.1+ +GCR_LICENSE = LGPLv2.1+ +GCR_LICENSE_FILES = COPYING + +# Only the X11 backend is supported for the simple GUI +ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) +GCR_DEPENDENCIES += libgtk3 +GCR_CONF_OPTS += --with-gtk +else +GCR_CONF_OPTS += --without-gtk +endif + +$(eval $(autotools-package)) diff --git a/package/gdb/7.9.1/0004-xtensa-implement-NPTL-helpers.patch b/package/gdb/7.9.1/0004-xtensa-implement-NPTL-helpers.patch new file mode 100644 index 00000000000..e7bc74ea53a --- /dev/null +++ b/package/gdb/7.9.1/0004-xtensa-implement-NPTL-helpers.patch @@ -0,0 +1,267 @@ +From d4eb69fc4b50f9a0babd70b28d0601b40f31bd0f Mon Sep 17 00:00:00 2001 +From: Max Filippov +Date: Thu, 2 Jul 2015 15:10:58 +0300 +Subject: [PATCH] xtensa: implement NPTL helpers + +These changes allow debugging multithreaded NPTL xtensa applications. + +2015-08-20 Max Filippov +gdb/gdbserver/ + * configure.srv (xtensa*-*-linux*): Add srv_linux_thread_db=yes. + * linux-xtensa-low.c (arch/xtensa.h gdb_proc_service.h): New + #includes. + (ps_get_thread_area): New function. + +2015-08-20 Max Filippov +gdb/ + * arch/xtensa.h: New file. + * xtensa-linux-nat.c (gdb_proc_service.h): New #include. + (ps_get_thread_area): New function. + * xtensa-linux-tdep.c (xtensa_linux_init_abi): Add call to + set_gdbarch_fetch_tls_load_module_address to enable TLS support. + * xtensa-tdep.c (osabi.h): New #include. + (xtensa_gdbarch_init): Call gdbarch_init_osabi to register + xtensa-specific hooks. + * xtensa-tdep.h (struct xtensa_elf_gregset_t): Add threadptr + member and move the structure to arch/xtensa.h. + +Signed-off-by: Max Filippov +--- +Backported from: 40045d91812b25c88c8275b8c08d27c234b68ba8 +Changes to ChangeLog files are dropped. + + gdb/arch/xtensa.h | 46 ++++++++++++++++++++++++++++++++++++++++ + gdb/gdbserver/configure.srv | 1 + + gdb/gdbserver/linux-xtensa-low.c | 21 ++++++++++++++++++ + gdb/xtensa-linux-nat.c | 22 ++++++++++++++++++ + gdb/xtensa-linux-tdep.c | 4 ++++ + gdb/xtensa-tdep.c | 4 ++++ + gdb/xtensa-tdep.h | 24 ++------------------ + 7 files changed, 100 insertions(+), 22 deletions(-) + create mode 100644 gdb/arch/xtensa.h + +diff --git a/gdb/arch/xtensa.h b/gdb/arch/xtensa.h +new file mode 100644 +index 0000000..fe96584 +--- /dev/null ++++ b/gdb/arch/xtensa.h +@@ -0,0 +1,46 @@ ++/* Common Target-dependent code for the Xtensa port of GDB, the GNU debugger. ++ ++ Copyright (C) 2003-2015 Free Software Foundation, Inc. ++ ++ This file is part of GDB. ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 3 of the License, or ++ (at your option) any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program. If not, see . */ ++ ++#ifndef XTENSA_H ++#define XTENSA_H ++ ++/* Xtensa ELF core file register set representation ('.reg' section). ++ Copied from target-side ELF header . */ ++ ++typedef uint32_t xtensa_elf_greg_t; ++ ++typedef struct ++{ ++ xtensa_elf_greg_t pc; ++ xtensa_elf_greg_t ps; ++ xtensa_elf_greg_t lbeg; ++ xtensa_elf_greg_t lend; ++ xtensa_elf_greg_t lcount; ++ xtensa_elf_greg_t sar; ++ xtensa_elf_greg_t windowstart; ++ xtensa_elf_greg_t windowbase; ++ xtensa_elf_greg_t threadptr; ++ xtensa_elf_greg_t reserved[7+48]; ++ xtensa_elf_greg_t ar[64]; ++} xtensa_elf_gregset_t; ++ ++#define XTENSA_ELF_NGREG (sizeof (xtensa_elf_gregset_t) \ ++ / sizeof (xtensa_elf_greg_t)) ++ ++#endif +diff --git a/gdb/gdbserver/configure.srv b/gdb/gdbserver/configure.srv +index 0b18d1d..320c26a 100644 +--- a/gdb/gdbserver/configure.srv ++++ b/gdb/gdbserver/configure.srv +@@ -352,6 +352,7 @@ case "${target}" in + xtensa*-*-linux*) srv_regobj=reg-xtensa.o + srv_tgtobj="$srv_linux_obj linux-xtensa-low.o" + srv_linux_regsets=yes ++ srv_linux_thread_db=yes + ;; + tilegx-*-linux*) srv_regobj=reg-tilegx.o + srv_regobj="${srv_regobj} reg-tilegx32.o" +diff --git a/gdb/gdbserver/linux-xtensa-low.c b/gdb/gdbserver/linux-xtensa-low.c +index 4daccee..debe467 100644 +--- a/gdb/gdbserver/linux-xtensa-low.c ++++ b/gdb/gdbserver/linux-xtensa-low.c +@@ -26,6 +26,8 @@ extern const struct target_desc *tdesc_xtensa; + + #include + #include ++#include "arch/xtensa.h" ++#include "gdb_proc_service.h" + + #include "xtensa-xtregs.c" + +@@ -179,6 +181,25 @@ xtensa_breakpoint_at (CORE_ADDR where) + xtensa_breakpoint, xtensa_breakpoint_len) == 0; + } + ++/* Called by libthread_db. */ ++ ++ps_err_e ++ps_get_thread_area (const struct ps_prochandle *ph, ++ lwpid_t lwpid, int idx, void **base) ++{ ++ xtensa_elf_gregset_t regs; ++ ++ if (ptrace (PTRACE_GETREGS, lwpid, NULL, ®s) != 0) ++ return PS_ERR; ++ ++ /* IDX is the bias from the thread pointer to the beginning of the ++ thread descriptor. It has to be subtracted due to implementation ++ quirks in libthread_db. */ ++ *base = (void *) ((char *) regs.threadptr - idx); ++ ++ return PS_OK; ++} ++ + static struct regsets_info xtensa_regsets_info = + { + xtensa_regsets, /* regsets */ +diff --git a/gdb/xtensa-linux-nat.c b/gdb/xtensa-linux-nat.c +index 77ad3e0..5538d5b 100644 +--- a/gdb/xtensa-linux-nat.c ++++ b/gdb/xtensa-linux-nat.c +@@ -37,6 +37,9 @@ + #include "gregset.h" + #include "xtensa-tdep.h" + ++/* Defines ps_err_e, struct ps_prochandle. */ ++#include "gdb_proc_service.h" ++ + /* Extended register set depends on hardware configs. + Keeping these definitions separately allows to introduce + hardware-specific overlays. */ +@@ -280,6 +283,25 @@ xtensa_linux_store_inferior_registers (struct target_ops *ops, + store_xtregs (regcache, regnum); + } + ++/* Called by libthread_db. */ ++ ++ps_err_e ++ps_get_thread_area (const struct ps_prochandle *ph, ++ lwpid_t lwpid, int idx, void **base) ++{ ++ xtensa_elf_gregset_t regs; ++ ++ if (ptrace (PTRACE_GETREGS, lwpid, NULL, ®s) != 0) ++ return PS_ERR; ++ ++ /* IDX is the bias from the thread pointer to the beginning of the ++ thread descriptor. It has to be subtracted due to implementation ++ quirks in libthread_db. */ ++ *base = (void *) ((char *) regs.threadptr - idx); ++ ++ return PS_OK; ++} ++ + void _initialize_xtensa_linux_nat (void); + + void +diff --git a/gdb/xtensa-linux-tdep.c b/gdb/xtensa-linux-tdep.c +index 61ea9b0..99e0d3e 100644 +--- a/gdb/xtensa-linux-tdep.c ++++ b/gdb/xtensa-linux-tdep.c +@@ -106,6 +106,10 @@ xtensa_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) + xtensa_linux_gdb_signal_from_target); + set_gdbarch_gdb_signal_to_target (gdbarch, + xtensa_linux_gdb_signal_to_target); ++ ++ /* Enable TLS support. */ ++ set_gdbarch_fetch_tls_load_module_address (gdbarch, ++ svr4_fetch_objfile_link_map); + } + + /* Provide a prototype to silence -Wmissing-prototypes. */ +diff --git a/gdb/xtensa-tdep.c b/gdb/xtensa-tdep.c +index 55e7d98..4b693ed 100644 +--- a/gdb/xtensa-tdep.c ++++ b/gdb/xtensa-tdep.c +@@ -28,6 +28,7 @@ + #include "value.h" + #include "dis-asm.h" + #include "inferior.h" ++#include "osabi.h" + #include "floatformat.h" + #include "regcache.h" + #include "reggroups.h" +@@ -3273,6 +3274,9 @@ xtensa_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) + set_solib_svr4_fetch_link_map_offsets + (gdbarch, svr4_ilp32_fetch_link_map_offsets); + ++ /* Hook in the ABI-specific overrides, if they have been registered. */ ++ gdbarch_init_osabi (info, gdbarch); ++ + return gdbarch; + } + +diff --git a/gdb/xtensa-tdep.h b/gdb/xtensa-tdep.h +index caa2988..5b28cab 100644 +--- a/gdb/xtensa-tdep.h ++++ b/gdb/xtensa-tdep.h +@@ -18,6 +18,8 @@ + along with this program. If not, see . */ + + ++#include "arch/xtensa.h" ++ + /* XTENSA_TDEP_VERSION can/should be changed along with XTENSA_CONFIG_VERSION + whenever the "tdep" structure changes in an incompatible way. */ + +@@ -81,28 +83,6 @@ typedef enum + } xtensa_target_flags_t; + + +-/* Xtensa ELF core file register set representation ('.reg' section). +- Copied from target-side ELF header . */ +- +-typedef uint32_t xtensa_elf_greg_t; +- +-typedef struct +-{ +- xtensa_elf_greg_t pc; +- xtensa_elf_greg_t ps; +- xtensa_elf_greg_t lbeg; +- xtensa_elf_greg_t lend; +- xtensa_elf_greg_t lcount; +- xtensa_elf_greg_t sar; +- xtensa_elf_greg_t windowstart; +- xtensa_elf_greg_t windowbase; +- xtensa_elf_greg_t reserved[8+48]; +- xtensa_elf_greg_t ar[64]; +-} xtensa_elf_gregset_t; +- +-#define XTENSA_ELF_NGREG (sizeof (xtensa_elf_gregset_t) \ +- / sizeof (xtensa_elf_greg_t)) +- + /* Mask. */ + + typedef struct +-- +1.8.1.4 + diff --git a/package/gdb/Config.in.host b/package/gdb/Config.in.host index 32077942993..68076945bd3 100644 --- a/package/gdb/Config.in.host +++ b/package/gdb/Config.in.host @@ -4,7 +4,7 @@ config BR2_PACKAGE_HOST_GDB # allow to build a cross-gdb, as the one of the external # toolchain should be used. depends on !BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY - depends on !BR2_aarch64 && !BR2_nios2 + depends on !BR2_nios2 help Build a cross gdb that runs on the host machine and debugs programs running on the target. It requires 'gdbserver' @@ -27,7 +27,7 @@ choice prompt "GDB debugger Version" depends on !BR2_arc depends on !BR2_microblaze - default BR2_GDB_VERSION_7_8 + default BR2_GDB_VERSION_7_9 help Select the version of gdb you wish to use. @@ -41,6 +41,9 @@ choice config BR2_GDB_VERSION_7_9 bool "gdb 7.9.x" + config BR2_GDB_VERSION_7_10 + bool "gdb 7.10.x" + endchoice endif @@ -49,8 +52,9 @@ endif config BR2_GDB_VERSION string depends on BR2_PACKAGE_GDB || BR2_PACKAGE_HOST_GDB - default "arc-2015.06-gdb" if BR2_arc + default "arc-2015.12-gdb" if BR2_arc default "6be65fb56ea6694a9260733a536a023a1e2d4d57" if BR2_microblaze default "7.7.1" if BR2_GDB_VERSION_7_7 - default "7.8.2" if BR2_GDB_VERSION_7_8 || !BR2_PACKAGE_HOST_GDB - default "7.9.1" if BR2_GDB_VERSION_7_9 + default "7.8.2" if BR2_GDB_VERSION_7_8 + default "7.9.1" if BR2_GDB_VERSION_7_9 || !BR2_PACKAGE_HOST_GDB + default "7.10.1" if BR2_GDB_VERSION_7_10 diff --git a/package/gdb/gdb.hash b/package/gdb/gdb.hash index a970f0a68fd..3abdcd015a8 100644 --- a/package/gdb/gdb.hash +++ b/package/gdb/gdb.hash @@ -2,6 +2,7 @@ sha512 887b9b726dae8f6e3e5e41574460a67e4f9002b0d47bc985dcf63bdf3518397a90b6a208cb5b19e5ed2341715ad75cfeed4df4fb423f39f74218e36bc87f1cab gdb-7.7.1.tar.bz2 sha512 face5bf1b4ce144fc8604fc84620beed956177a11fd632b4e41906fc7f632910b2b43a50e6cfdfd6cbd876ee527c813bddab8df29dc560a6c36694cdb8edc4e4 gdb-7.8.2.tar.xz sha512 eebdf88b24e52e792b8a4b89ea85790de72b462a7810b44975fdf4232c068f353b15506071f450102a9d4bcecdde8e93dc3748a10699b7f73f3e04fb2d9d8414 gdb-7.9.1.tar.xz +sha512 17a5138277a31685a5c2a841cb47ed9bc4626ea617b8ca77750513b300299f4fbbffe504958b5372de610dcb952c679cf8fa9c1bdadd380294fbf59b6e366010 gdb-7.10.1.tar.xz # No hash for the ARC & microblaze variants, comes from the github-helper: -none xxx gdb-arc-2015.06-gdb.tar.gz +none xxx gdb-arc-2015.12-gdb.tar.gz none xxx gdb-6be65fb56ea6694a9260733a536a023a1e2d4d57.tar.gz diff --git a/package/gdb/gdb.mk b/package/gdb/gdb.mk index 338de209ffa..32d52eb3a1f 100644 --- a/package/gdb/gdb.mk +++ b/package/gdb/gdb.mk @@ -11,13 +11,11 @@ GDB_SOURCE = gdb-$(GDB_VERSION).tar.xz ifeq ($(BR2_arc),y) GDB_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,binutils-gdb,$(GDB_VERSION)) GDB_SOURCE = gdb-$(GDB_VERSION).tar.gz -GDB_FROM_GIT = y endif ifeq ($(BR2_microblaze),y) GDB_SITE = $(call github,Xilinx,gdb,$(GDB_VERSION)) GDB_SOURCE = gdb-$(GDB_VERSION).tar.gz -GDB_FROM_GIT = y endif # Use .tar.bz2 for 7.7.x since there was no .tar.xz release back then @@ -25,7 +23,7 @@ ifneq ($(filter 7.7.%,$(GDB_VERSION)),) GDB_SOURCE = gdb-$(GDB_VERSION).tar.bz2 endif -GDB_LICENSE = GPLv2+ LGPLv2+ GPLv3+ LGPLv3+ +GDB_LICENSE = GPLv2+, LGPLv2+, GPLv3+, LGPLv3+ GDB_LICENSE_FILES = COPYING COPYING.LIB COPYING3 COPYING3.LIB # We only want gdbserver and not the entire debugger. @@ -53,6 +51,19 @@ GDB_PRE_PATCH_HOOKS += GDB_XTENSA_PRE_PATCH HOST_GDB_PRE_PATCH_HOOKS += GDB_XTENSA_PRE_PATCH endif +# Prevent gdb to build the documentation +define GDB_DISABLE_DOC + $(SED) '/^SUBDIRS =/ s/doc//' $(@D)/gdb/Makefile.in + if test -e $(@D)/bfd/doc/Makefile.in ; then \ + $(SED) 's/^INFO_DEPS =.*$$/INFO_DEPS =/' $(@D)/bfd/doc/Makefile.in ; \ + fi + if test -e $(@D)/gprof/Makefile.in ; then \ + $(SED) 's/^INFO_DEPS =.*$$/INFO_DEPS =/' $(@D)/gprof/Makefile.in ; \ + fi +endef +GDB_PRE_CONFIGURE_HOOKS += GDB_DISABLE_DOC +HOST_GDB_PRE_CONFIGURE_HOOKS += GDB_DISABLE_DOC + # When gdb sources are fetched from the binutils-gdb repository, they # also contain the binutils sources, but binutils shouldn't be built, # so we disable it. @@ -107,6 +118,13 @@ else GDB_CONF_OPTS += --without-expat endif +ifeq ($(BR2_PACKAGE_XZ),y) +GDB_CONF_OPTS += --with-lzma +GDB_DEPENDENCIES += xz +else +GDB_CONF_OPTS += --without-lzma +endif + ifeq ($(BR2_PACKAGE_ZLIB),y) GDB_CONF_OPTS += --with-zlib GDB_DEPENDENCIES += zlib @@ -165,15 +183,6 @@ else HOST_GDB_CONF_OPTS += --without-python endif -ifeq ($(GDB_FROM_GIT),y) -GDB_DEPENDENCIES += host-texinfo -HOST_GDB_DEPENDENCIES += host-texinfo -else -# don't generate documentation -GDB_CONF_ENV += ac_cv_prog_MAKEINFO=missing -HOST_GDB_CONF_ENV += ac_cv_prog_MAKEINFO=missing -endif - # legacy $arch-linux-gdb symlink define HOST_GDB_ADD_SYMLINK cd $(HOST_DIR)/usr/bin && \ diff --git a/package/gdk-pixbuf/gdk-pixbuf.hash b/package/gdk-pixbuf/gdk-pixbuf.hash index 3efe9d3b547..186e158ea73 100644 --- a/package/gdk-pixbuf/gdk-pixbuf.hash +++ b/package/gdk-pixbuf/gdk-pixbuf.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.30/gdk-pixbuf-2.30.8.sha256sum -sha256 4853830616113db4435837992c0aebd94cbb993c44dc55063cee7f72a7bef8be gdk-pixbuf-2.30.8.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/2.32/gdk-pixbuf-2.32.3.sha256sum +sha256 2b6771f1ac72f687a8971e59810b8dc658e65e7d3086bd2e676e618fd541d031 gdk-pixbuf-2.32.3.tar.xz diff --git a/package/gdk-pixbuf/gdk-pixbuf.mk b/package/gdk-pixbuf/gdk-pixbuf.mk index 3a66e61c73c..be79e11c5df 100644 --- a/package/gdk-pixbuf/gdk-pixbuf.mk +++ b/package/gdk-pixbuf/gdk-pixbuf.mk @@ -4,8 +4,8 @@ # ################################################################################ -GDK_PIXBUF_VERSION_MAJOR = 2.30 -GDK_PIXBUF_VERSION = $(GDK_PIXBUF_VERSION_MAJOR).8 +GDK_PIXBUF_VERSION_MAJOR = 2.32 +GDK_PIXBUF_VERSION = $(GDK_PIXBUF_VERSION_MAJOR).3 GDK_PIXBUF_SOURCE = gdk-pixbuf-$(GDK_PIXBUF_VERSION).tar.xz GDK_PIXBUF_SITE = http://ftp.gnome.org/pub/gnome/sources/gdk-pixbuf/$(GDK_PIXBUF_VERSION_MAJOR) GDK_PIXBUF_LICENSE = LGPLv2+ @@ -52,6 +52,12 @@ define GDK_PIXBUF_INSTALL_INIT_SYSV $(TARGET_DIR)/etc/init.d/S26gdk-pixbuf endef +# Tests don't build correctly with uClibc +define GDK_PIXBUF_DISABLE_TESTS + $(SED) 's/ tests//' $(@D)/Makefile.in +endef +GDK_PIXBUF_POST_PATCH_HOOKS += GDK_PIXBUF_DISABLE_TESTS + $(eval $(autotools-package)) HOST_GDK_PIXBUF_CONF_OPTS = \ diff --git a/package/genimage/genimage.hash b/package/genimage/genimage.hash index 71b7601bf5f..b01ea460285 100644 --- a/package/genimage/genimage.hash +++ b/package/genimage/genimage.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 7366dcfe4c542298ffe8a6c8d3551b1c3a84e25bfbb76ca75b9692e974f4534a genimage-7.tar.xz +sha256 363b2222b8036eca927c464994e7a877539adc3ea9ba895c1e2186f0589fafbf genimage-8.tar.xz diff --git a/package/genimage/genimage.mk b/package/genimage/genimage.mk index 07d95a426c8..2dffbc55cfd 100644 --- a/package/genimage/genimage.mk +++ b/package/genimage/genimage.mk @@ -4,7 +4,7 @@ # ################################################################################ -GENIMAGE_VERSION = 7 +GENIMAGE_VERSION = 8 GENIMAGE_SOURCE = genimage-$(GENIMAGE_VERSION).tar.xz GENIMAGE_SITE = http://www.pengutronix.de/software/genimage/download GENIMAGE_DEPENDENCIES = host-pkgconf libconfuse diff --git a/package/geoip/geoip.hash b/package/geoip/geoip.hash index d410c2f1527..505c38f9416 100644 --- a/package/geoip/geoip.hash +++ b/package/geoip/geoip.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 0ae1c95e69ad627d3a45cb897f79ce0c30f13fcd4b4a0dda073be0c9552521b3 GeoIP-1.6.5.tar.gz +sha256 4b446491843de67c1af9b887da17a3e5939e0aeed4826923a5f4bf09d845096f GeoIP-1.6.9.tar.gz diff --git a/package/geoip/geoip.mk b/package/geoip/geoip.mk index 0496de1eb74..cf3bc1a042e 100644 --- a/package/geoip/geoip.mk +++ b/package/geoip/geoip.mk @@ -4,7 +4,7 @@ # ################################################################################ -GEOIP_VERSION = 1.6.5 +GEOIP_VERSION = 1.6.9 GEOIP_SOURCE = GeoIP-$(GEOIP_VERSION).tar.gz GEOIP_SITE = https://github.com/maxmind/geoip-api-c/releases/download/v$(GEOIP_VERSION) GEOIP_INSTALL_STAGING = YES diff --git a/package/gesftpserver/gesftpserver.hash b/package/gesftpserver/gesftpserver.hash index b952cf09595..b4c9fdf52c1 100644 --- a/package/gesftpserver/gesftpserver.hash +++ b/package/gesftpserver/gesftpserver.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 1db183e2d4cca5cc3ef10526f417ddef28e0402d0119030a06227bf925e63872 sftpserver-0.1.tar.gz +sha256 5f744c38df9bb82f5ab500858a0fb4767ac3ee2254301da03cbcf8e6c587cbf5 sftpserver-0.2.1.tar.gz diff --git a/package/gesftpserver/gesftpserver.mk b/package/gesftpserver/gesftpserver.mk index 16f70fd00a7..25c947a78b3 100644 --- a/package/gesftpserver/gesftpserver.mk +++ b/package/gesftpserver/gesftpserver.mk @@ -4,7 +4,7 @@ # ################################################################################ -GESFTPSERVER_VERSION = 0.1 +GESFTPSERVER_VERSION = 0.2.1 GESFTPSERVER_SOURCE = sftpserver-$(GESFTPSERVER_VERSION).tar.gz GESFTPSERVER_SITE = http://www.greenend.org.uk/rjk/sftpserver GESFTPSERVER_LICENSE = GPLv2+ diff --git a/package/gettext/gettext.hash b/package/gettext/gettext.hash index 8d161f6f8b7..3236fda7023 100644 --- a/package/gettext/gettext.hash +++ b/package/gettext/gettext.hash @@ -1,3 +1,3 @@ -# From https://lists.gnu.org/archive/html/info-gnu/2015-07/msg00008.html -md5 9b7c37e410df4bd1bf854e8c897cf937 gettext-0.19.5.1.tar.xz -sha1 668562227972d2645ac6c5930448ba74df65a53f gettext-0.19.5.1.tar.xz +# From http://lists.gnu.org/archive/html/bug-gettext/2015-12/msg00019.html +md5 f81e50556da41b44c1d59ac93474dca5 gettext-0.19.7.tar.xz +sha1 4b2574b76d14c98270bf607a2a62f033524d8e8c gettext-0.19.7.tar.xz diff --git a/package/gettext/gettext.mk b/package/gettext/gettext.mk index 5ef1ac45bc3..0b4e5dde945 100644 --- a/package/gettext/gettext.mk +++ b/package/gettext/gettext.mk @@ -4,15 +4,17 @@ # ################################################################################ -GETTEXT_VERSION = 0.19.5.1 +GETTEXT_VERSION = 0.19.7 GETTEXT_SITE = $(BR2_GNU_MIRROR)/gettext GETTEXT_SOURCE = gettext-$(GETTEXT_VERSION).tar.xz GETTEXT_INSTALL_STAGING = YES -GETTEXT_LICENSE = GPLv2+ -GETTEXT_LICENSE_FILES = COPYING +GETTEXT_LICENSE = LGPLv2.1+ (libintl), GPLv3+ (the rest) +GETTEXT_LICENSE_FILES = COPYING gettext-runtime/intl/COPYING.LIB GETTEXT_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv) -HOST_GETTEXT_DEPENDENCIES = # we don't want the libiconv dependency + +# Avoid using the bundled subset of libxml2 +HOST_GETTEXT_DEPENDENCIES = host-libxml2 GETTEXT_CONF_OPTS += \ --disable-libasprintf \ diff --git a/package/giflib/giflib.hash b/package/giflib/giflib.hash index 46ba7ca88df..94bcb5d7a37 100644 --- a/package/giflib/giflib.hash +++ b/package/giflib/giflib.hash @@ -1,2 +1,3 @@ # From http://sourceforge.net/projects/giflib/files -sha1 e5d716e0ccef671103c38c25693927e413fac639 giflib-5.1.1.tar.bz2 +md5 323a9f11ab56c8a2d1715376410ce376 giflib-5.1.2.tar.bz2 +sha1 3f7bc86280db30a7120b2113f9f261301c515ad2 giflib-5.1.2.tar.bz2 diff --git a/package/giflib/giflib.mk b/package/giflib/giflib.mk index 96a1dfdae2e..6f67a99fe1c 100644 --- a/package/giflib/giflib.mk +++ b/package/giflib/giflib.mk @@ -4,7 +4,7 @@ # ################################################################################ -GIFLIB_VERSION = 5.1.1 +GIFLIB_VERSION = 5.1.2 GIFLIB_SOURCE = giflib-$(GIFLIB_VERSION).tar.bz2 GIFLIB_SITE = http://downloads.sourceforge.net/project/giflib GIFLIB_INSTALL_STAGING = YES diff --git a/package/git/git.hash b/package/git/git.hash index 81caf394ec2..802855d42e7 100644 --- a/package/git/git.hash +++ b/package/git/git.hash @@ -1,2 +1,2 @@ # From: https://www.kernel.org/pub/software/scm/git/sha256sums.asc -sha256 c31a5f5f72e025f8fe26845032a06683c7e5c1a73236c2353b5606ddd22e0494 git-2.4.5.tar.xz +sha256 1c0170952163e0b240256bc47388b95c617cf8cf446c93261df83d42cf5dd466 git-2.6.4.tar.xz diff --git a/package/git/git.mk b/package/git/git.mk index e2d04aaae1e..8d9d3abf22b 100644 --- a/package/git/git.mk +++ b/package/git/git.mk @@ -4,7 +4,7 @@ # ################################################################################ -GIT_VERSION = 2.4.5 +GIT_VERSION = 2.6.4 GIT_SOURCE = git-$(GIT_VERSION).tar.xz GIT_SITE = https://www.kernel.org/pub/software/scm/git GIT_LICENSE = GPLv2 LGPLv2.1+ @@ -26,9 +26,11 @@ else GIT_CONF_OPTS += --without-libpcre endif -ifeq ($(BR2_PACKAGE_CURL),y) +ifeq ($(BR2_PACKAGE_LIBCURL),y) GIT_DEPENDENCIES += libcurl GIT_CONF_OPTS += --with-curl +GIT_CONF_ENV += \ + ac_cv_prog_curl_config=$(STAGING_DIR)/usr/bin/$(LIBCURL_CONFIG_SCRIPTS) else GIT_CONF_OPTS += --without-curl endif @@ -57,7 +59,7 @@ endif # assume yes for these tests, configure will bail out otherwise # saying error: cannot run test program while cross compiling -GIT_CONF_ENV = \ +GIT_CONF_ENV += \ ac_cv_fread_reads_directories=yes \ ac_cv_snprintf_returns_bogus=yes LIBS='$(GIT_CONF_ENV_LIBS)' diff --git a/package/glib-networking/glib-networking.hash b/package/glib-networking/glib-networking.hash index 03ed3ae7f27..22518ceb095 100644 --- a/package/glib-networking/glib-networking.hash +++ b/package/glib-networking/glib-networking.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/glib-networking/2.44/glib-networking-2.44.0.sha256sum -sha256 8f8a340d3ba99bfdef38b653da929652ea6640e27969d29f7ac51fbbe11a4346 glib-networking-2.44.0.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/glib-networking/2.46/glib-networking-2.46.1.sha256sum +sha256 d5034214217f705891b6c9e719cc2c583c870bfcfdc454ebbb5e5e8940ac90b1 glib-networking-2.46.1.tar.xz diff --git a/package/glib-networking/glib-networking.mk b/package/glib-networking/glib-networking.mk index 0ef69c46bc3..b7b92c6c12a 100644 --- a/package/glib-networking/glib-networking.mk +++ b/package/glib-networking/glib-networking.mk @@ -4,8 +4,8 @@ # ################################################################################ -GLIB_NETWORKING_VERSION_MAJOR = 2.44 -GLIB_NETWORKING_VERSION = $(GLIB_NETWORKING_VERSION_MAJOR).0 +GLIB_NETWORKING_VERSION_MAJOR = 2.46 +GLIB_NETWORKING_VERSION = $(GLIB_NETWORKING_VERSION_MAJOR).1 GLIB_NETWORKING_SITE = http://ftp.gnome.org/pub/gnome/sources/glib-networking/$(GLIB_NETWORKING_VERSION_MAJOR) GLIB_NETWORKING_SOURCE = glib-networking-$(GLIB_NETWORKING_VERSION).tar.xz GLIB_NETWORKING_INSTALL_STAGING = YES @@ -16,6 +16,8 @@ GLIB_NETWORKING_DEPENDENCIES = \ libglib2 GLIB_NETWORKING_LICENSE = LGPLv2+ GLIB_NETWORKING_LICENSE_FILES = COPYING +GLIB_NETWORKING_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) \ + GIO_MODULE_DIR=/usr/lib/gio/modules install ifeq ($(BR2_PACKAGE_GNUTLS),y) GLIB_NETWORKING_DEPENDENCIES += gnutls diff --git a/package/glibc/2.20/0001-CVE-2014-7817.patch b/package/glibc/2.20/0001-CVE-2014-7817.patch deleted file mode 100644 index cd20c42c203..00000000000 --- a/package/glibc/2.20/0001-CVE-2014-7817.patch +++ /dev/null @@ -1,173 +0,0 @@ -Patch from https://bugzilla.redhat.com/show_bug.cgi?id=1157689 - -Signed-off-by: Gustavo Zacarias - -WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! WARNING !!! -EMBARGOED !!! EMBARGOED !!! EMARGOED !!! EMBARGOED !!! EMBARGOED !!! -SECURITY !!! SECURITY !!! SECURITY !!! SECURITY !!! SECURITY !!! - -CVE-2014-7817: - -The function wordexp() fails to properly handle the WRDE_NOCMD -flag when processing arithmetic inputs in the form of "$((... ``))" -where "..." can be anything valid. The backticks in the arithmetic -epxression are evaluated by in a shell even if WRDE_NOCMD forbade -command substitution. This allows an attacker to attempt to pass -dangerous commands via constructs of the above form, and bypass -the WRDE_NOCMD flag. This patch fixes this by checking for WRDE_NOCMD -in parse_arith(). The patch also hardens parse_backticks() and -parse_comm() to check for WRDE_NOCMD flag and return an error instead -of ever running a shell. - -We expand the testsuite and add 3 new regression tests of roughtly -the same form but with a couple of nested levels. - -On top of the 3 new tests we add fork validation to the WRDE_NOCMD -testing. If any forks are detected during the execution of a wordexp() -call with WRDE_NOCMD, the test is marked as failed. This is slightly -heuristic since vfork might be used, but it provides a higher level -of assurance that no shells were executed as part of command substitution -with WRDE_NOCMD in effect. In addition it doesn't require libpthread or -libdl, instead we use the public implementation namespace function -__register_atfork (already part of the public ABI for libpthread). - -Tested on x86_64 with no regressions. - -2014-10-27 Carlos O'Donell - - * wordexp-test.c (__dso_handle): Add prototype. - (__register_atfork): Likewise. - (__app_register_atfork): New function. - (registered_forks): New global. - (register_fork): New function. - (test_case): Add 3 new tests for WRDE_CMDSUB. - (main): Call __app_register_atfork. - (testit): If WRDE_NOCMD set registered_forks to zero, run test, and - if fork count is non-zero fail the test. - * posix/wordexp.c (parse_arith): Return WRDE_NOCMD if WRDE_NOCMD flag - is set and parsing '`'. - (parse_comm): Return WRDE_NOCMD if WRDE_NOCMD flag is set. - (parse_backtick): Return WRDE_NOCMD if WRDE_NOCMD flag is set and - parsing '`'. - -diff --git a/posix/wordexp-test.c b/posix/wordexp-test.c -index 4957006..5ce2a1b 100644 ---- a/posix/wordexp-test.c -+++ b/posix/wordexp-test.c -@@ -27,6 +27,25 @@ - - #define IFS " \n\t" - -+extern void *__dso_handle __attribute__ ((__weak__, __visibility__ ("hidden"))); -+extern int __register_atfork (void (*) (void), void (*) (void), void (*) (void), void *); -+ -+static int __app_register_atfork (void (*prepare) (void), void (*parent) (void), void (*child) (void)) -+{ -+ return __register_atfork (prepare, parent, child, -+ &__dso_handle == NULL ? NULL : __dso_handle); -+} -+ -+/* Number of forks seen. */ -+static int registered_forks; -+ -+/* For each fork increment the fork count. */ -+static void -+register_fork (void) -+{ -+ registered_forks++; -+} -+ - struct test_case_struct - { - int retval; -@@ -206,6 +225,12 @@ struct test_case_struct - { WRDE_SYNTAX, NULL, "$((2+))", 0, 0, { NULL, }, IFS }, - { WRDE_SYNTAX, NULL, "`", 0, 0, { NULL, }, IFS }, - { WRDE_SYNTAX, NULL, "$((010+4+))", 0, 0, { NULL }, IFS }, -+ /* Test for CVE-2014-7817. We test 3 combinations of command -+ substitution inside an arithmetic expression to make sure that -+ no commands are executed and error is returned. */ -+ { WRDE_CMDSUB, NULL, "$((`echo 1`))", WRDE_NOCMD, 0, { NULL, }, IFS }, -+ { WRDE_CMDSUB, NULL, "$((1+`echo 1`))", WRDE_NOCMD, 0, { NULL, }, IFS }, -+ { WRDE_CMDSUB, NULL, "$((1+$((`echo 1`))))", WRDE_NOCMD, 0, { NULL, }, IFS }, - - { -1, NULL, NULL, 0, 0, { NULL, }, IFS }, - }; -@@ -258,6 +283,15 @@ main (int argc, char *argv[]) - return -1; - } - -+ /* If we are not allowed to do command substitution, we install -+ fork handlers to verify that no forks happened. No forks should -+ happen at all if command substitution is disabled. */ -+ if (__app_register_atfork (register_fork, NULL, NULL) != 0) -+ { -+ printf ("Failed to register fork handler.\n"); -+ return -1; -+ } -+ - for (test = 0; test_case[test].retval != -1; test++) - if (testit (&test_case[test])) - ++fail; -@@ -367,6 +401,9 @@ testit (struct test_case_struct *tc) - - printf ("Test %d (%s): ", ++tests, tc->words); - -+ if (tc->flags & WRDE_NOCMD) -+ registered_forks = 0; -+ - if (tc->flags & WRDE_APPEND) - { - /* initial wordexp() call, to be appended to */ -@@ -378,6 +415,13 @@ testit (struct test_case_struct *tc) - } - retval = wordexp (tc->words, &we, tc->flags); - -+ if ((tc->flags & WRDE_NOCMD) -+ && (registered_forks > 0)) -+ { -+ printf ("FAILED fork called for WRDE_NOCMD\n"); -+ return 1; -+ } -+ - if (tc->flags & WRDE_DOOFFS) - start_offs = sav_we.we_offs; - -diff --git a/posix/wordexp.c b/posix/wordexp.c -index b6b65dd..d6a158f 100644 ---- a/posix/wordexp.c -+++ b/posix/wordexp.c -@@ -693,6 +693,12 @@ parse_arith (char **word, size_t *word_length, size_t *max_length, - break; - - case '`': -+ if (flags & WRDE_NOCMD) -+ { -+ free (expr); -+ return WRDE_NOCMD; -+ } -+ - (*offset)++; - error = parse_backtick (&expr, &expr_length, &expr_maxlen, - words, offset, flags, NULL, NULL, NULL); -@@ -1144,6 +1150,10 @@ parse_comm (char **word, size_t *word_length, size_t *max_length, - size_t comm_maxlen; - char *comm = w_newword (&comm_length, &comm_maxlen); - -+ /* Do nothing if command substitution should not succeed. */ -+ if (flags & WRDE_NOCMD) -+ return WRDE_CMDSUB; -+ - for (; words[*offset]; ++(*offset)) - { - switch (words[*offset]) -@@ -2121,6 +2131,9 @@ parse_backtick (char **word, size_t *word_length, size_t *max_length, - switch (words[*offset]) - { - case '`': -+ if (flags & WRDE_NOCMD) -+ return WRDE_NOCMD; -+ - /* Go -- give the script to the shell */ - error = exec_comm (comm, word, word_length, max_length, flags, - pwordexp, ifs, ifs_white); diff --git a/package/glibc/2.20/0002-CVE-2014-9402.patch b/package/glibc/2.20/0002-CVE-2014-9402.patch deleted file mode 100644 index d6d753e2b5b..00000000000 --- a/package/glibc/2.20/0002-CVE-2014-9402.patch +++ /dev/null @@ -1,24 +0,0 @@ -Fix CVE-2014-9402 - denial of service in getnetbyname function. -Backport from https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=11e3417af6e354f1942c68a271ae51e892b2814d -See https://bugzilla.redhat.com/show_bug.cgi?id=1175369 - -Signed-off-by: Gustavo Zacarias - -diff --git a/resolv/nss_dns/dns-network.c b/resolv/nss_dns/dns-network.c -index 0a77c8b..08cf0a6 100644 ---- a/resolv/nss_dns/dns-network.c -+++ b/resolv/nss_dns/dns-network.c -@@ -398,8 +398,8 @@ getanswer_r (const querybuf *answer, int anslen, struct netent *result, - - case BYNAME: - { -- char **ap = result->n_aliases++; -- while (*ap != NULL) -+ char **ap; -+ for (ap = result->n_aliases; *ap != NULL; ++ap) - { - /* Check each alias name for being of the forms: - 4.3.2.1.in-addr.arpa = net 1.2.3.4 --- -1.7.1 - diff --git a/package/glibc/2.20/0003-CVE-2015-1472.patch b/package/glibc/2.20/0003-CVE-2015-1472.patch deleted file mode 100644 index b2f8e49d46f..00000000000 --- a/package/glibc/2.20/0003-CVE-2015-1472.patch +++ /dev/null @@ -1,88 +0,0 @@ -Fix CVE-2015-1472 - heap buffer overflow in wscanf -Backport from upstream: -https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=5bd80bfe9ca0d955bfbbc002781bc7b01b6bcb06 -See: https://bugzilla.redhat.com/show_bug.cgi?id=1188235 - -Signed-off-by: Gustavo Zacarias - -diff --git a/stdio-common/tst-sscanf.c b/stdio-common/tst-sscanf.c -index aece3f2..8a2eb9e 100644 ---- a/stdio-common/tst-sscanf.c -+++ b/stdio-common/tst-sscanf.c -@@ -233,5 +233,38 @@ main (void) - } - } - -+ /* BZ #16618 -+ The test will segfault during SSCANF if the buffer overflow -+ is not fixed. The size of `s` is such that it forces the use -+ of malloc internally and this triggers the incorrect computation. -+ Thus the value for SIZE is arbitrariy high enough that malloc -+ is used. */ -+ { -+#define SIZE 131072 -+ CHAR *s = malloc ((SIZE + 1) * sizeof (*s)); -+ if (s == NULL) -+ abort (); -+ for (size_t i = 0; i < SIZE; i++) -+ s[i] = L('0'); -+ s[SIZE] = L('\0'); -+ int i = 42; -+ /* Scan multi-digit zero into `i`. */ -+ if (SSCANF (s, L("%d"), &i) != 1) -+ { -+ printf ("FAIL: bug16618: SSCANF did not read one input item.\n"); -+ result = 1; -+ } -+ if (i != 0) -+ { -+ printf ("FAIL: bug16618: Value of `i` was not zero as expected.\n"); -+ result = 1; -+ } -+ free (s); -+ if (result != 1) -+ printf ("PASS: bug16618: Did not crash.\n"); -+#undef SIZE -+ } -+ -+ - return result; - } -diff --git a/stdio-common/vfscanf.c b/stdio-common/vfscanf.c -index cd129a8..0e204e7 100644 ---- a/stdio-common/vfscanf.c -+++ b/stdio-common/vfscanf.c -@@ -272,9 +272,10 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr, - if (__glibc_unlikely (wpsize == wpmax)) \ - { \ - CHAR_T *old = wp; \ -- size_t newsize = (UCHAR_MAX + 1 > 2 * wpmax \ -- ? UCHAR_MAX + 1 : 2 * wpmax); \ -- if (use_malloc || !__libc_use_alloca (newsize)) \ -+ bool fits = __glibc_likely (wpmax <= SIZE_MAX / sizeof (CHAR_T) / 2); \ -+ size_t wpneed = MAX (UCHAR_MAX + 1, 2 * wpmax); \ -+ size_t newsize = fits ? wpneed * sizeof (CHAR_T) : SIZE_MAX; \ -+ if (!__libc_use_alloca (newsize)) \ - { \ - wp = realloc (use_malloc ? wp : NULL, newsize); \ - if (wp == NULL) \ -@@ -286,14 +287,13 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr, - } \ - if (! use_malloc) \ - MEMCPY (wp, old, wpsize); \ -- wpmax = newsize; \ -+ wpmax = wpneed; \ - use_malloc = true; \ - } \ - else \ - { \ - size_t s = wpmax * sizeof (CHAR_T); \ -- wp = (CHAR_T *) extend_alloca (wp, s, \ -- newsize * sizeof (CHAR_T)); \ -+ wp = (CHAR_T *) extend_alloca (wp, s, newsize); \ - wpmax = s / sizeof (CHAR_T); \ - if (old != NULL) \ - MEMCPY (wp, old, wpsize); \ --- -1.9.4 - diff --git a/package/glibc/2.21/0001-fix-CVE-2015-7547.patch b/package/glibc/2.21/0001-fix-CVE-2015-7547.patch new file mode 100644 index 00000000000..4353a168aac --- /dev/null +++ b/package/glibc/2.21/0001-fix-CVE-2015-7547.patch @@ -0,0 +1,236 @@ +Fetched from gentoo glibc patchball +Original patch filename: 10_all_glibc-CVE-2015-7547.patch +Based on: https://sourceware.org/ml/libc-alpha/2016-02/msg00416.html + +Fixes: +CVE-2015-7547 - glibc getaddrinfo stack-based buffer overflow. + +Signed-off-by: Gustavo Zacarias + +--- a/resolv/nss_dns/dns-host.c ++++ b/resolv/nss_dns/dns-host.c +@@ -1031,7 +1031,10 @@ gaih_getanswer_slice (const querybuf *answer, int anslen, const char *qname, + int h_namelen = 0; + + if (ancount == 0) +- return NSS_STATUS_NOTFOUND; ++ { ++ *h_errnop = HOST_NOT_FOUND; ++ return NSS_STATUS_NOTFOUND; ++ } + + while (ancount-- > 0 && cp < end_of_message && had_error == 0) + { +@@ -1208,7 +1211,14 @@ gaih_getanswer_slice (const querybuf *answer, int anslen, const char *qname, + /* Special case here: if the resolver sent a result but it only + contains a CNAME while we are looking for a T_A or T_AAAA record, + we fail with NOTFOUND instead of TRYAGAIN. */ +- return canon == NULL ? NSS_STATUS_TRYAGAIN : NSS_STATUS_NOTFOUND; ++ if (canon != NULL) ++ { ++ *h_errnop = HOST_NOT_FOUND; ++ return NSS_STATUS_NOTFOUND; ++ } ++ ++ *h_errnop = NETDB_INTERNAL; ++ return NSS_STATUS_TRYAGAIN; + } + + +@@ -1242,8 +1252,15 @@ gaih_getanswer (const querybuf *answer1, int anslen1, const querybuf *answer2, + &pat, &buffer, &buflen, + errnop, h_errnop, ttlp, + &first); ++ /* Use the second response status in some cases. */ + if (status != NSS_STATUS_SUCCESS && status2 != NSS_STATUS_NOTFOUND) + status = status2; ++ /* Do not return a truncated second response (unless it was ++ unavoidable e.g. unrecoverable TRYAGAIN). */ ++ if (status == NSS_STATUS_SUCCESS ++ && (status2 == NSS_STATUS_TRYAGAIN ++ && *errnop == ERANGE && *h_errnop != NO_RECOVERY)) ++ status = NSS_STATUS_TRYAGAIN; + } + + return status; +--- a/resolv/res_query.c ++++ b/resolv/res_query.c +@@ -396,6 +396,7 @@ __libc_res_nsearch(res_state statp, + { + free (*answerp2); + *answerp2 = NULL; ++ *nanswerp2 = 0; + *answerp2_malloced = 0; + } + } +@@ -447,6 +448,7 @@ __libc_res_nsearch(res_state statp, + { + free (*answerp2); + *answerp2 = NULL; ++ *nanswerp2 = 0; + *answerp2_malloced = 0; + } + +@@ -521,6 +523,7 @@ __libc_res_nsearch(res_state statp, + { + free (*answerp2); + *answerp2 = NULL; ++ *nanswerp2 = 0; + *answerp2_malloced = 0; + } + if (saved_herrno != -1) +--- a/resolv/res_send.c ++++ b/resolv/res_send.c +@@ -639,11 +639,7 @@ send_vc(res_state statp, + { + const HEADER *hp = (HEADER *) buf; + const HEADER *hp2 = (HEADER *) buf2; +- u_char *ans = *ansp; +- int orig_anssizp = *anssizp; +- // XXX REMOVE +- // int anssiz = *anssizp; +- HEADER *anhp = (HEADER *) ans; ++ HEADER *anhp = (HEADER *) *ansp; + struct sockaddr_in6 *nsap = EXT(statp).nsaddrs[ns]; + int truncating, connreset, n; + /* On some architectures compiler might emit a warning indicating +@@ -767,35 +763,6 @@ send_vc(res_state statp, + assert (anscp != NULL || ansp2 == NULL); + thisresplenp = &resplen; + } else { +- if (*anssizp != MAXPACKET) { +- /* No buffer allocated for the first +- reply. We can try to use the rest +- of the user-provided buffer. */ +-#if __GNUC_PREREQ (4, 7) +- DIAG_PUSH_NEEDS_COMMENT; +- DIAG_IGNORE_NEEDS_COMMENT (5, "-Wmaybe-uninitialized"); +-#endif +-#if _STRING_ARCH_unaligned +- *anssizp2 = orig_anssizp - resplen; +- *ansp2 = *ansp + resplen; +-#else +- int aligned_resplen +- = ((resplen + __alignof__ (HEADER) - 1) +- & ~(__alignof__ (HEADER) - 1)); +- *anssizp2 = orig_anssizp - aligned_resplen; +- *ansp2 = *ansp + aligned_resplen; +-#endif +-#if __GNUC_PREREQ (4, 7) +- DIAG_POP_NEEDS_COMMENT; +-#endif +- } else { +- /* The first reply did not fit into the +- user-provided buffer. Maybe the second +- answer will. */ +- *anssizp2 = orig_anssizp; +- *ansp2 = *ansp; +- } +- + thisanssizp = anssizp2; + thisansp = ansp2; + thisresplenp = resplen2; +@@ -804,10 +771,14 @@ send_vc(res_state statp, + anhp = (HEADER *) *thisansp; + + *thisresplenp = rlen; +- if (rlen > *thisanssizp) { +- /* Yes, we test ANSCP here. If we have two buffers +- both will be allocatable. */ +- if (__glibc_likely (anscp != NULL)) { ++ /* Is the answer buffer too small? */ ++ if (*thisanssizp < rlen) { ++ /* If the current buffer is not the the static ++ user-supplied buffer then we can reallocate ++ it. */ ++ if (thisansp != NULL && thisansp != ansp) { ++ /* Always allocate MAXPACKET, callers expect ++ this specific size. */ + u_char *newp = malloc (MAXPACKET); + if (newp == NULL) { + *terrno = ENOMEM; +@@ -957,8 +928,6 @@ send_dg(res_state statp, + { + const HEADER *hp = (HEADER *) buf; + const HEADER *hp2 = (HEADER *) buf2; +- u_char *ans = *ansp; +- int orig_anssizp = *anssizp; + struct timespec now, timeout, finish; + struct pollfd pfd[1]; + int ptimeout; +@@ -1154,50 +1123,48 @@ send_dg(res_state statp, + assert (anscp != NULL || ansp2 == NULL); + thisresplenp = &resplen; + } else { +- if (*anssizp != MAXPACKET) { +- /* No buffer allocated for the first +- reply. We can try to use the rest +- of the user-provided buffer. */ +-#if _STRING_ARCH_unaligned +- *anssizp2 = orig_anssizp - resplen; +- *ansp2 = *ansp + resplen; +-#else +- int aligned_resplen +- = ((resplen + __alignof__ (HEADER) - 1) +- & ~(__alignof__ (HEADER) - 1)); +- *anssizp2 = orig_anssizp - aligned_resplen; +- *ansp2 = *ansp + aligned_resplen; +-#endif +- } else { +- /* The first reply did not fit into the +- user-provided buffer. Maybe the second +- answer will. */ +- *anssizp2 = orig_anssizp; +- *ansp2 = *ansp; +- } +- + thisanssizp = anssizp2; + thisansp = ansp2; + thisresplenp = resplen2; + } + + if (*thisanssizp < MAXPACKET +- /* Yes, we test ANSCP here. If we have two buffers +- both will be allocatable. */ +- && anscp ++ /* If the current buffer is not the the static ++ user-supplied buffer then we can reallocate ++ it. */ ++ && (thisansp != NULL && thisansp != ansp) + #ifdef FIONREAD ++ /* Is the size too small? */ + && (ioctl (pfd[0].fd, FIONREAD, thisresplenp) < 0 + || *thisanssizp < *thisresplenp) + #endif + ) { ++ /* Always allocate MAXPACKET, callers expect ++ this specific size. */ + u_char *newp = malloc (MAXPACKET); + if (newp != NULL) { +- *anssizp = MAXPACKET; +- *thisansp = ans = newp; ++ *thisanssizp = MAXPACKET; ++ *thisansp = newp; + if (thisansp == ansp2) + *ansp2_malloced = 1; + } + } ++ /* We could end up with truncation if anscp was NULL ++ (not allowed to change caller's buffer) and the ++ response buffer size is too small. This isn't a ++ reliable way to detect truncation because the ioctl ++ may be an inaccurate report of the UDP message size. ++ Therefore we use this only to issue debug output. ++ To do truncation accurately with UDP we need ++ MSG_TRUNC which is only available on Linux. We ++ can abstract out the Linux-specific feature in the ++ future to detect truncation. */ ++ if (__glibc_unlikely (*thisanssizp < *thisresplenp)) { ++ Dprint(statp->options & RES_DEBUG, ++ (stdout, ";; response may be truncated (UDP)\n") ++ ); ++ } ++ + HEADER *anhp = (HEADER *) *thisansp; + socklen_t fromlen = sizeof(struct sockaddr_in6); + assert (sizeof(from) <= fromlen); diff --git a/package/glibc/2.21/0002-fix-CVE-2015-1781.patch b/package/glibc/2.21/0002-fix-CVE-2015-1781.patch new file mode 100644 index 00000000000..3bdfa97000d --- /dev/null +++ b/package/glibc/2.21/0002-fix-CVE-2015-1781.patch @@ -0,0 +1,32 @@ +From 10c6d2e3243cefdd22933d3706f53d9f913c6cab Mon Sep 17 00:00:00 2001 +From: Arjun Shankar +Date: Tue, 21 Apr 2015 14:06:31 +0200 +Subject: [PATCH] CVE-2015-1781: resolv/nss_dns/dns-host.c buffer overflow + [BZ#18287] + +Fixes: +CVE-2015-1781 - buffer overflow in gethostbyname_r() and related +functions with misaligned buffer. + +Signed-off-by: Gustavo Zacarias +--- + resolv/nss_dns/dns-host.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/resolv/nss_dns/dns-host.c b/resolv/nss_dns/dns-host.c +index f715ab0..40069a7 100644 +--- a/resolv/nss_dns/dns-host.c ++++ b/resolv/nss_dns/dns-host.c +@@ -615,7 +615,8 @@ getanswer_r (const querybuf *answer, int anslen, const char *qname, int qtype, + int have_to_map = 0; + uintptr_t pad = -(uintptr_t) buffer % __alignof__ (struct host_data); + buffer += pad; +- if (__glibc_unlikely (buflen < sizeof (struct host_data) + pad)) ++ buflen = buflen > pad ? buflen - pad : 0; ++ if (__glibc_unlikely (buflen < sizeof (struct host_data))) + { + /* The buffer is too small. */ + too_small: +-- +2.4.4 + diff --git a/package/glibc/2.21/0003-fix-CVE-2014-8121.patch b/package/glibc/2.21/0003-fix-CVE-2014-8121.patch new file mode 100644 index 00000000000..df3534e8795 --- /dev/null +++ b/package/glibc/2.21/0003-fix-CVE-2014-8121.patch @@ -0,0 +1,176 @@ +From 6d0b7b443c9735672bb76d003c3f7263c5292d7d Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Wed, 29 Apr 2015 14:41:25 +0200 +Subject: [PATCH 23/27] CVE-2014-8121: Do not close NSS files database during + iteration [BZ #18007] +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +(cherry picked from commit e871e19b5f19d2e6595e911b0a5b1c19cda20cc7) + +Fixes: +CVE-2014-8121 - Unexpected closing of nss_files databases after lookups +causes denial of service. + +Signed-off-by: Gustavo Zacarias +--- + nss/Makefile | 2 +- + nss/nss_files/files-XXX.c | 2 +- + nss/tst-nss-getpwent.c | 118 ++++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 120 insertions(+), 2 deletions(-) + create mode 100644 nss/tst-nss-getpwent.c + +diff --git a/nss/Makefile b/nss/Makefile +index d419baf..dc351dd 100644 +--- a/nss/Makefile ++++ b/nss/Makefile +@@ -39,7 +39,7 @@ install-bin := getent makedb + makedb-modules = xmalloc hash-string + extra-objs += $(makedb-modules:=.o) + +-tests = test-netdb tst-nss-test1 test-digits-dots ++tests = test-netdb tst-nss-test1 test-digits-dots tst-nss-getpwent + xtests = bug-erange + + # Specify rules for the nss_* modules. We have some services. +diff --git a/nss/nss_files/files-XXX.c b/nss/nss_files/files-XXX.c +index a7a45e5..a7ce5ea 100644 +--- a/nss/nss_files/files-XXX.c ++++ b/nss/nss_files/files-XXX.c +@@ -134,7 +134,7 @@ CONCAT(_nss_files_set,ENTNAME) (int stayopen) + + __libc_lock_lock (lock); + +- status = internal_setent (stayopen); ++ status = internal_setent (1); + + if (status == NSS_STATUS_SUCCESS && fgetpos (stream, &position) < 0) + { +diff --git a/nss/tst-nss-getpwent.c b/nss/tst-nss-getpwent.c +new file mode 100644 +index 0000000..f2e8abc +--- /dev/null ++++ b/nss/tst-nss-getpwent.c +@@ -0,0 +1,118 @@ ++/* Copyright (C) 2015 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++ . */ ++ ++#include ++#include ++#include ++#include ++#include ++ ++int ++do_test (void) ++{ ++ /* Count the number of entries in the password database, and fetch ++ data from the first and last entries. */ ++ size_t count = 0; ++ struct passwd * pw; ++ char *first_name = NULL; ++ uid_t first_uid = 0; ++ char *last_name = NULL; ++ uid_t last_uid = 0; ++ setpwent (); ++ while ((pw = getpwent ()) != NULL) ++ { ++ if (first_name == NULL) ++ { ++ first_name = strdup (pw->pw_name); ++ if (first_name == NULL) ++ { ++ printf ("strdup: %m\n"); ++ return 1; ++ } ++ first_uid = pw->pw_uid; ++ } ++ ++ free (last_name); ++ last_name = strdup (pw->pw_name); ++ if (last_name == NULL) ++ { ++ printf ("strdup: %m\n"); ++ return 1; ++ } ++ last_uid = pw->pw_uid; ++ ++count; ++ } ++ endpwent (); ++ ++ if (count == 0) ++ { ++ printf ("No entries in the password database.\n"); ++ return 0; ++ } ++ ++ /* Try again, this time interleaving with name-based and UID-based ++ lookup operations. The counts do not match if the interleaved ++ lookups affected the enumeration. */ ++ size_t new_count = 0; ++ setpwent (); ++ while ((pw = getpwent ()) != NULL) ++ { ++ if (new_count == count) ++ { ++ printf ("Additional entry in the password database.\n"); ++ return 1; ++ } ++ ++new_count; ++ struct passwd *pw2 = getpwnam (first_name); ++ if (pw2 == NULL) ++ { ++ printf ("getpwnam (%s) failed: %m\n", first_name); ++ return 1; ++ } ++ pw2 = getpwnam (last_name); ++ if (pw2 == NULL) ++ { ++ printf ("getpwnam (%s) failed: %m\n", last_name); ++ return 1; ++ } ++ pw2 = getpwuid (first_uid); ++ if (pw2 == NULL) ++ { ++ printf ("getpwuid (%llu) failed: %m\n", ++ (unsigned long long) first_uid); ++ return 1; ++ } ++ pw2 = getpwuid (last_uid); ++ if (pw2 == NULL) ++ { ++ printf ("getpwuid (%llu) failed: %m\n", ++ (unsigned long long) last_uid); ++ return 1; ++ } ++ } ++ endpwent (); ++ if (new_count < count) ++ { ++ printf ("Missing entry in the password database.\n"); ++ return 1; ++ } ++ ++ return 0; ++} ++ ++#define TEST_FUNCTION do_test () ++#include "../test-skeleton.c" +-- +2.6.2 + diff --git a/package/glibc/2.22/0001-fix-CVE-2015-7547.patch b/package/glibc/2.22/0001-fix-CVE-2015-7547.patch new file mode 100644 index 00000000000..19b8b6ebd87 --- /dev/null +++ b/package/glibc/2.22/0001-fix-CVE-2015-7547.patch @@ -0,0 +1,236 @@ +Fetched from gentoo glibc patchball +Original patch filename: 10_all_glibc-CVE-2015-7547.patch +Based on: https://sourceware.org/ml/libc-alpha/2016-02/msg00416.html + +Fixes: +CVE-2015-7547 - glibc getaddrinfo stack-based buffer overflow. + +Signed-off-by: Gustavo Zacarias + +--- a/resolv/nss_dns/dns-host.c ++++ b/resolv/nss_dns/dns-host.c +@@ -1031,7 +1031,10 @@ gaih_getanswer_slice (const querybuf *answer, int anslen, const char *qname, + int h_namelen = 0; + + if (ancount == 0) +- return NSS_STATUS_NOTFOUND; ++ { ++ *h_errnop = HOST_NOT_FOUND; ++ return NSS_STATUS_NOTFOUND; ++ } + + while (ancount-- > 0 && cp < end_of_message && had_error == 0) + { +@@ -1208,7 +1211,14 @@ gaih_getanswer_slice (const querybuf *answer, int anslen, const char *qname, + /* Special case here: if the resolver sent a result but it only + contains a CNAME while we are looking for a T_A or T_AAAA record, + we fail with NOTFOUND instead of TRYAGAIN. */ +- return canon == NULL ? NSS_STATUS_TRYAGAIN : NSS_STATUS_NOTFOUND; ++ if (canon != NULL) ++ { ++ *h_errnop = HOST_NOT_FOUND; ++ return NSS_STATUS_NOTFOUND; ++ } ++ ++ *h_errnop = NETDB_INTERNAL; ++ return NSS_STATUS_TRYAGAIN; + } + + +@@ -1242,8 +1252,15 @@ gaih_getanswer (const querybuf *answer1, int anslen1, const querybuf *answer2, + &pat, &buffer, &buflen, + errnop, h_errnop, ttlp, + &first); ++ /* Use the second response status in some cases. */ + if (status != NSS_STATUS_SUCCESS && status2 != NSS_STATUS_NOTFOUND) + status = status2; ++ /* Do not return a truncated second response (unless it was ++ unavoidable e.g. unrecoverable TRYAGAIN). */ ++ if (status == NSS_STATUS_SUCCESS ++ && (status2 == NSS_STATUS_TRYAGAIN ++ && *errnop == ERANGE && *h_errnop != NO_RECOVERY)) ++ status = NSS_STATUS_TRYAGAIN; + } + + return status; +--- a/resolv/res_query.c ++++ b/resolv/res_query.c +@@ -396,6 +396,7 @@ __libc_res_nsearch(res_state statp, + { + free (*answerp2); + *answerp2 = NULL; ++ *nanswerp2 = 0; + *answerp2_malloced = 0; + } + } +@@ -447,6 +448,7 @@ __libc_res_nsearch(res_state statp, + { + free (*answerp2); + *answerp2 = NULL; ++ *nanswerp2 = 0; + *answerp2_malloced = 0; + } + +@@ -521,6 +523,7 @@ __libc_res_nsearch(res_state statp, + { + free (*answerp2); + *answerp2 = NULL; ++ *nanswerp2 = 0; + *answerp2_malloced = 0; + } + if (saved_herrno != -1) +--- a/resolv/res_send.c ++++ b/resolv/res_send.c +@@ -639,11 +639,7 @@ send_vc(res_state statp, + { + const HEADER *hp = (HEADER *) buf; + const HEADER *hp2 = (HEADER *) buf2; +- u_char *ans = *ansp; +- int orig_anssizp = *anssizp; +- // XXX REMOVE +- // int anssiz = *anssizp; +- HEADER *anhp = (HEADER *) ans; ++ HEADER *anhp = (HEADER *) *ansp; + struct sockaddr *nsap = get_nsaddr (statp, ns); + int truncating, connreset, n; + /* On some architectures compiler might emit a warning indicating +@@ -767,35 +763,6 @@ send_vc(res_state statp, + assert (anscp != NULL || ansp2 == NULL); + thisresplenp = &resplen; + } else { +- if (*anssizp != MAXPACKET) { +- /* No buffer allocated for the first +- reply. We can try to use the rest +- of the user-provided buffer. */ +-#if __GNUC_PREREQ (4, 7) +- DIAG_PUSH_NEEDS_COMMENT; +- DIAG_IGNORE_NEEDS_COMMENT (5, "-Wmaybe-uninitialized"); +-#endif +-#if _STRING_ARCH_unaligned +- *anssizp2 = orig_anssizp - resplen; +- *ansp2 = *ansp + resplen; +-#else +- int aligned_resplen +- = ((resplen + __alignof__ (HEADER) - 1) +- & ~(__alignof__ (HEADER) - 1)); +- *anssizp2 = orig_anssizp - aligned_resplen; +- *ansp2 = *ansp + aligned_resplen; +-#endif +-#if __GNUC_PREREQ (4, 7) +- DIAG_POP_NEEDS_COMMENT; +-#endif +- } else { +- /* The first reply did not fit into the +- user-provided buffer. Maybe the second +- answer will. */ +- *anssizp2 = orig_anssizp; +- *ansp2 = *ansp; +- } +- + thisanssizp = anssizp2; + thisansp = ansp2; + thisresplenp = resplen2; +@@ -804,10 +771,14 @@ send_vc(res_state statp, + anhp = (HEADER *) *thisansp; + + *thisresplenp = rlen; +- if (rlen > *thisanssizp) { +- /* Yes, we test ANSCP here. If we have two buffers +- both will be allocatable. */ +- if (__glibc_likely (anscp != NULL)) { ++ /* Is the answer buffer too small? */ ++ if (*thisanssizp < rlen) { ++ /* If the current buffer is not the the static ++ user-supplied buffer then we can reallocate ++ it. */ ++ if (thisansp != NULL && thisansp != ansp) { ++ /* Always allocate MAXPACKET, callers expect ++ this specific size. */ + u_char *newp = malloc (MAXPACKET); + if (newp == NULL) { + *terrno = ENOMEM; +@@ -957,8 +928,6 @@ send_dg(res_state statp, + { + const HEADER *hp = (HEADER *) buf; + const HEADER *hp2 = (HEADER *) buf2; +- u_char *ans = *ansp; +- int orig_anssizp = *anssizp; + struct timespec now, timeout, finish; + struct pollfd pfd[1]; + int ptimeout; +@@ -1154,50 +1123,48 @@ send_dg(res_state statp, + assert (anscp != NULL || ansp2 == NULL); + thisresplenp = &resplen; + } else { +- if (*anssizp != MAXPACKET) { +- /* No buffer allocated for the first +- reply. We can try to use the rest +- of the user-provided buffer. */ +-#if _STRING_ARCH_unaligned +- *anssizp2 = orig_anssizp - resplen; +- *ansp2 = *ansp + resplen; +-#else +- int aligned_resplen +- = ((resplen + __alignof__ (HEADER) - 1) +- & ~(__alignof__ (HEADER) - 1)); +- *anssizp2 = orig_anssizp - aligned_resplen; +- *ansp2 = *ansp + aligned_resplen; +-#endif +- } else { +- /* The first reply did not fit into the +- user-provided buffer. Maybe the second +- answer will. */ +- *anssizp2 = orig_anssizp; +- *ansp2 = *ansp; +- } +- + thisanssizp = anssizp2; + thisansp = ansp2; + thisresplenp = resplen2; + } + + if (*thisanssizp < MAXPACKET +- /* Yes, we test ANSCP here. If we have two buffers +- both will be allocatable. */ +- && anscp ++ /* If the current buffer is not the the static ++ user-supplied buffer then we can reallocate ++ it. */ ++ && (thisansp != NULL && thisansp != ansp) + #ifdef FIONREAD ++ /* Is the size too small? */ + && (ioctl (pfd[0].fd, FIONREAD, thisresplenp) < 0 + || *thisanssizp < *thisresplenp) + #endif + ) { ++ /* Always allocate MAXPACKET, callers expect ++ this specific size. */ + u_char *newp = malloc (MAXPACKET); + if (newp != NULL) { +- *anssizp = MAXPACKET; +- *thisansp = ans = newp; ++ *thisanssizp = MAXPACKET; ++ *thisansp = newp; + if (thisansp == ansp2) + *ansp2_malloced = 1; + } + } ++ /* We could end up with truncation if anscp was NULL ++ (not allowed to change caller's buffer) and the ++ response buffer size is too small. This isn't a ++ reliable way to detect truncation because the ioctl ++ may be an inaccurate report of the UDP message size. ++ Therefore we use this only to issue debug output. ++ To do truncation accurately with UDP we need ++ MSG_TRUNC which is only available on Linux. We ++ can abstract out the Linux-specific feature in the ++ future to detect truncation. */ ++ if (__glibc_unlikely (*thisanssizp < *thisresplenp)) { ++ Dprint(statp->options & RES_DEBUG, ++ (stdout, ";; response may be truncated (UDP)\n") ++ ); ++ } ++ + HEADER *anhp = (HEADER *) *thisansp; + socklen_t fromlen = sizeof(struct sockaddr_in6); + assert (sizeof(from) <= fromlen); diff --git a/package/glibc/Config.in b/package/glibc/Config.in index 8cc8ccef3ce..aeb236c5972 100644 --- a/package/glibc/Config.in +++ b/package/glibc/Config.in @@ -1,9 +1,9 @@ if BR2_TOOLCHAIN_BUILDROOT_EGLIBC -# For legal-info config BR2_PACKAGE_EGLIBC bool default y + select BR2_PACKAGE_LINUX_HEADERS choice prompt "eglibc version" @@ -25,24 +25,22 @@ endif if BR2_TOOLCHAIN_BUILDROOT_GLIBC -# For legal-info config BR2_PACKAGE_GLIBC bool default y + select BR2_PACKAGE_LINUX_HEADERS choice prompt "glibc version" - default BR2_GLIBC_VERSION_2_20 - -config BR2_GLIBC_VERSION_2_20 - depends on !BR2_nios2 - # Broken see https://bugs.busybox.net/show_bug.cgi?id=7941 - depends on !BR2_sparc - bool "2.20" + default BR2_GLIBC_VERSION_2_21 config BR2_GLIBC_VERSION_2_21 bool "2.21" +config BR2_GLIBC_VERSION_2_22 + bool "2.22" + depends on !BR2_sparc # broken + endchoice endif @@ -51,5 +49,5 @@ config BR2_GLIBC_VERSION_STRING string default "2.18-svnr23787" if BR2_EGLIBC_VERSION_2_18 default "2.19-svnr25243" if BR2_EGLIBC_VERSION_2_19 - default "2.20" if BR2_GLIBC_VERSION_2_20 default "2.21" if BR2_GLIBC_VERSION_2_21 + default "2.22" if BR2_GLIBC_VERSION_2_22 diff --git a/package/glibc/glibc.hash b/package/glibc/glibc.hash index 525a5ed3a3c..979202e43d3 100644 --- a/package/glibc/glibc.hash +++ b/package/glibc/glibc.hash @@ -4,5 +4,5 @@ md5 b395b021422a027d89884992e91734fc eglibc-2.18-svnr23787.tar.bz2 sha1 224d9e655e8f0ad04ffde47b97a11c64e2255b56 eglibc-2.18-svnr23787.tar.bz2 md5 197836c2ba42fb146e971222647198dd eglibc-2.19-svnr25243.tar.bz2 sha1 8013c1935b46fd50d2d1fbfad3b0af362b75fb28 eglibc-2.19-svnr25243.tar.bz2 -sha256 f84b6d42aecc288d593c397b0a3d02260a33ee686bce0c634eb9b32798f36ba5 glibc-2.20.tar.xz sha256 aeeb362437965a5d3f40b151094ca79def04a115bd363fdd4a9a0c69482923b8 glibc-2.21.tar.xz +sha256 eb731406903befef1d8f878a46be75ef862b9056ab0cde1626d08a7a05328948 glibc-2.22.tar.xz diff --git a/package/glibc/glibc.mk b/package/glibc/glibc.mk index cbfbf32063e..e60575f62bd 100644 --- a/package/glibc/glibc.mk +++ b/package/glibc/glibc.mk @@ -121,4 +121,34 @@ define GLIBC_INSTALL_TARGET_CMDS done endef +# MIPS R6 requires to have NaN2008 support which is currently not +# supported by the Linux kernel. In order to prevent building the +# glibc against kernels not having NaN2008 support on platforms that +# requires it, glibc currently checks for an (inexisting) 10.0.0 +# kernel headers version. +# +# Since in practice the kernel support for NaN2008 is not really +# required for things to work properly, we adjust the glibc check to +# make it believe that NaN2008 support was added in the kernel +# starting from version 4.0.0. +# +# In general the compatibility issues introduced by mis-matched NaN +# encodings will not cause a problem as signalling NaNs are rarely used +# in average code. For MIPS R6 there isn't actually any compatibility +# issue as the hardware is always NaN2008 and software is always +# NaN2008. The problem only comes from when older MIPS code is linked in +# via a DSO and multiple NaN encodings are introduced. Since Buildroot +# is intended to have all code built from source then this scenario is +# highly unlikely. The failure mode, if it ever occurs, would be either +# that a signalling NaN fails to raise an invalid operation exception or +# (more likely) an ordinary NaN raises an invalid operation exception. +ifeq ($(BR2_mips_32r6)$(BR2_mips_64r6),y) +define GLIBC_FIX_MIPS_R6 + $(SED) 's#10.0.0#4.0.0#' \ + $(@D)/sysdeps/unix/sysv/linux/mips/configure \ + $(@D)/sysdeps/unix/sysv/linux/mips/configure.ac +endef +GLIBC_POST_EXTRACT_HOOKS += GLIBC_FIX_MIPS_R6 +endif + $(eval $(autotools-package)) diff --git a/package/glibmm/Config.in b/package/glibmm/Config.in index 6ac4be54323..fdbb43812c9 100644 --- a/package/glibmm/Config.in +++ b/package/glibmm/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_GLIBMM bool "glibmm" select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBSIGC + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR # libglib2 depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 @@ -11,7 +12,7 @@ config BR2_PACKAGE_GLIBMM http://www.gtkmm.org/ -comment "glibmm needs a toolchain w/ C++, wchar, threads" +comment "glibmm needs a toolchain w/ C++, wchar, threads, gcc >= 4.8" depends on BR2_USE_MMU - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR \ + || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/glibmm/glibmm.hash b/package/glibmm/glibmm.hash index 4fbde55a354..c0703633656 100644 --- a/package/glibmm/glibmm.hash +++ b/package/glibmm/glibmm.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/glibmm/2.36/glibmm-2.36.1.sha256sum -sha256 d1f7dec2fd75ea95034ec143fcf2ff77a02e92aacf3e0cc110f9c67e7fe23766 glibmm-2.36.1.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/glibmm/2.46/glibmm-2.46.3.sha256sum +sha256 c78654addeb27a1213bedd7cd21904a45bbb98a5ba2f2f0de2b2f1a5682d86cf glibmm-2.46.3.tar.xz diff --git a/package/glibmm/glibmm.mk b/package/glibmm/glibmm.mk index 4081251da09..4b6d68f8020 100644 --- a/package/glibmm/glibmm.mk +++ b/package/glibmm/glibmm.mk @@ -4,8 +4,8 @@ # ################################################################################ -GLIBMM_VERSION_MAJOR = 2.36 -GLIBMM_VERSION = $(GLIBMM_VERSION_MAJOR).1 +GLIBMM_VERSION_MAJOR = 2.46 +GLIBMM_VERSION = $(GLIBMM_VERSION_MAJOR).3 GLIBMM_LICENSE = LGPLv2.1+ (library), GPLv2+ (tools) GLIBMM_LICENSE_FILES = COPYING COPYING.tools GLIBMM_SOURCE = glibmm-$(GLIBMM_VERSION).tar.xz diff --git a/package/glmark2/glmark2.mk b/package/glmark2/glmark2.mk index ffaea735b90..bd5b51a3f88 100644 --- a/package/glmark2/glmark2.mk +++ b/package/glmark2/glmark2.mk @@ -8,7 +8,7 @@ GLMARK2_VERSION = 499aa81a68fb4c8aac1c80f0d6a4cce05941c4cc GLMARK2_SITE = $(call github,glmark2,glmark2,$(GLMARK2_VERSION)) GLMARK2_LICENSE = GPLv3+ SGIv1 GLMARK2_LICENSE_FILES = COPYING COPYING.SGI -GLMARK2_DEPENDENCIES = host-pkgconf jpeg libpng \ +GLMARK2_DEPENDENCIES = host-pkgconf host-python jpeg libpng \ $(if $(BR2_PACKAGE_HAS_LIBEGL),libegl) \ $(if $(BR2_PACKAGE_HAS_LIBGLES),libgles) \ $(if $(BR2_PACKAGE_HAS_LIBGL),libgl) @@ -36,7 +36,7 @@ GLMARK2_DEPENDENCIES += wayland GLMARK2_FLAVORS += wayland-glesv2 endif -ifeq ($(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_HAS_LIBGL),yy) +ifeq ($(BR2_PACKAGE_WAYLAND)$(BR2_PACKAGE_HAS_LIBEGL)$(BR2_PACKAGE_HAS_LIBGL),yyy) GLMARK2_DEPENDENCIES += wayland GLMARK2_FLAVORS += wayland-gl endif @@ -47,21 +47,18 @@ GLMARK2_CONF_OPTS += \ define GLMARK2_CONFIGURE_CMDS (cd $(@D); \ - PYTHON_CONFIG="$(STAGING_DIR)/usr/bin/python-config" \ - python_LDFLAGS="" \ - python_LIBDIR="" \ $(TARGET_CONFIGURE_OPTS) \ $(GLMARK2_CONF_ENV) \ - ./waf configure $(GLMARK2_CONF_OPTS) \ + $(HOST_DIR)/usr/bin/python2 ./waf configure $(GLMARK2_CONF_OPTS) \ ) endef define GLMARK2_BUILD_CMDS - cd $(@D) && $(TARGET_MAKE_ENV) ./waf + cd $(@D) && $(TARGET_MAKE_ENV) $(HOST_DIR)/usr/bin/python2 ./waf endef define GLMARK2_INSTALL_TARGET_CMDS - cd $(@D) && $(TARGET_MAKE_ENV) ./waf install --destdir=$(TARGET_DIR) + cd $(@D) && $(TARGET_MAKE_ENV) $(HOST_DIR)/usr/bin/python2 ./waf install --destdir=$(TARGET_DIR) endef $(eval $(generic-package)) diff --git a/package/glog/Config.in b/package/glog/Config.in index 3f540201a8a..f7087581018 100644 --- a/package/glog/Config.in +++ b/package/glog/Config.in @@ -3,18 +3,14 @@ config BR2_PACKAGE_GLOG depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS - # build issues with these external toolchains - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1 - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1 - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 + # build issues with this external toolchain + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX help C++ implementation of the Google logging module https://github.com/google/glog comment "glog needs a toolchain w/ C++, threads, dynamic library" - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1 - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1 - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ BR2_STATIC_LIBS diff --git a/package/glog/glog.mk b/package/glog/glog.mk index 8a8409487a6..aa7cacbdd34 100644 --- a/package/glog/glog.mk +++ b/package/glog/glog.mk @@ -14,4 +14,15 @@ ifeq ($(BR2_PACKAGE_GFLAGS),y) GLOG_DEPENDENCIES = gflags endif +# glog can optionally use atomic __sync built-ins. However, its +# configure script only checks for the availability of the 4 bytes +# version, but the code also uses the 1 byte version. While this works +# on most architectures, it does not on architectures that implement +# only the 4 bytes version, such as Microblaze. So if the architecture +# does not implement the 1 byte version, we hint the configure script +# that atomic built-ins should not be used. +ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_1),) +GLOG_CONF_ENV += ac_cv___sync_val_compare_and_swap=no +endif + $(eval $(autotools-package)) diff --git a/package/gmock/0001-force-use-python2.patch b/package/gmock/0001-force-use-python2.patch new file mode 100644 index 00000000000..5dcb2311681 --- /dev/null +++ b/package/gmock/0001-force-use-python2.patch @@ -0,0 +1,20 @@ +Force use of Python 2 even when Python 3 is the default Python interpreter. + +Signed-off-by: Carlos Santos + +--- ./gtest/scripts/fuse_gtest_files.py.orig 2013-09-18 14:48:30.000000000 -0300 ++++ ./gtest/scripts/fuse_gtest_files.py 2015-07-22 15:42:53.291591205 -0300 +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python2 + # + # Copyright 2009, Google Inc. + # All rights reserved. +--- ./scripts/generator/gmock_gen.py.orig 2013-09-18 14:50:15.000000000 -0300 ++++ ./scripts/generator/gmock_gen.py 2015-07-22 17:06:51.071815634 -0300 +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python2 + # + # Copyright 2008 Google Inc. All Rights Reserved. + # diff --git a/package/gmock/Config.in b/package/gmock/Config.in new file mode 100644 index 00000000000..ec3eb921d18 --- /dev/null +++ b/package/gmock/Config.in @@ -0,0 +1,32 @@ +config BR2_PACKAGE_GMOCK + bool "gmock" + select BR2_PACKAGE_GTEST + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_MMU # fork() + help + Inspired by jMock, EasyMock, and Hamcrest, and designed with C++'s + specifics in mind, Google C++ Mocking Framework (or Google Mock for + short) is a library for writing and using C++ mock classes. + + Google Mock: + + * lets you create mock classes trivially using simple macros, + * supports a rich set of matchers and actions, + * handles unordered, partially ordered, or completely ordered + expectations, + * is extensible by users, and + * works on Linux, Mac OS X, Windows, Windows Mobile, minGW, and + Symbian. + + http://code.google.com/p/googlemock/ + + There are both host and target packages. The target one has include + files required to compile the tests and the static libraries required + to link/run them. The host package installs gmock_gen, a Python script + used to generate code mocks. + +comment "gmock needs a toolchain w/ C++, wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/gmock/gmock.hash b/package/gmock/gmock.hash new file mode 100644 index 00000000000..2b7173988f6 --- /dev/null +++ b/package/gmock/gmock.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 26fcbb5925b74ad5fc8c26b0495dfc96353f4d553492eb97e85a8a6d2f43095b gmock-1.7.0.zip diff --git a/package/gmock/gmock.mk b/package/gmock/gmock.mk new file mode 100644 index 00000000000..a0351d0ad6d --- /dev/null +++ b/package/gmock/gmock.mk @@ -0,0 +1,62 @@ +################################################################################ +# +# gmock +# +################################################################################ + +# Make sure this remains the same version as the gtest one +GMOCK_VERSION = 1.7.0 +GMOCK_SOURCE = gmock-$(GMOCK_VERSION).zip +GMOCK_SITE = http://googlemock.googlecode.com/files +GMOCK_INSTALL_STAGING = YES +GMOCK_INSTALL_TARGET = NO +GMOCK_LICENSE = BSD-3c +GMOCK_LICENSE_FILES = LICENSE +GMOCK_DEPENDENCIES = gtest host-gmock + +# GMock 1.7.0 relies on Python 2.7 syntax which is NOT compatible with Python3. +HOST_GMOCK_DEPENDENCIES = host-python +HOST_GMOCK_PYTHONPATH=$(HOST_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages + +# Static linking is required in order to keep the GMock package completely +# separated from GTest. According to GMock's README file: +# +# "Google Mock can be used as a DLL, but the same DLL must contain Google +# Test as well. See Google Test's README file for instructions on how to +# set up necessary compiler settings". +GMOCK_CONF_OPTS = --enable-static --disable-shared + +define GMOCK_EXTRACT_CMDS + $(UNZIP) $(DL_DIR)/$(GMOCK_SOURCE) -d $(BUILD_DIR) +endef + +# We can't use the default rule for autotools-package staging because it fails +# because it tries to rebuild/install gtest stuff and fails after this error: +# "'make install' is dangerous and not supported. Instead, see README for +# how to integrate Google Test into your build system." +define GMOCK_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 0755 $(@D)/lib/.libs/libgmock.a $(STAGING_DIR)/usr/lib/libgmock.a + $(INSTALL) -D -m 0755 $(@D)/lib/.libs/libgmock_main.a $(STAGING_DIR)/usr/lib/libgmock_main.a + $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/include/gmock/ + cp -rp $(@D)/include/gmock/* $(STAGING_DIR)/usr/include/gmock/ +endef + +# Unzipping inside $(@D) and moving everything from the created subdirectory is +# required because unzipping directly in $(BUILD_DIR) would cause host-gmock to +# overwrite the gmock subdir instead of unzipping in a host-gmock subdir. +define HOST_GMOCK_EXTRACT_CMDS + $(UNZIP) $(DL_DIR)/$(GMOCK_SOURCE) -d $(@D) + mv $(@D)/gmock-$(GMOCK_VERSION)/* $(@D) + rmdir $(@D)/gmock-$(GMOCK_VERSION) +endef + +define HOST_GMOCK_INSTALL_CMDS + $(INSTALL) -D -m 0755 $(@D)/scripts/generator/gmock_gen.py $(HOST_DIR)/usr/bin/gmock_gen.py + ln -sf gmock_gen.py $(HOST_DIR)/usr/bin/gmock_gen + cp -rp $(@D)/scripts/generator/cpp $(HOST_GMOCK_PYTHONPATH) +endef + +$(eval $(autotools-package)) +# The host package does not build anything, just installs gmock_gen stuff, so +# it does not need to be a host-autotools-package. +$(eval $(host-generic-package)) diff --git a/package/gmp/0001-arm-asm-conditional-on-no-thumb-1.patch b/package/gmp/0001-arm-asm-conditional-on-no-thumb-1.patch deleted file mode 100644 index eb678b01b04..00000000000 --- a/package/gmp/0001-arm-asm-conditional-on-no-thumb-1.patch +++ /dev/null @@ -1,21 +0,0 @@ - -# HG changeset patch -# User Torbjorn Granlund -# Date 1396035313 -3600 -# Node ID c56ea318eb6435bdd28dbfef657b2fe372134f1f -# Parent c6fe20ab62acc266ff5ad3629bef447bc43dcd1b -Conditionalise ARM asm on !__thumb__. - -diff -r c6fe20ab62ac -r c56ea318eb64 mpn/generic/mod_1_1.c ---- a/mpn/generic/mod_1_1.c Wed Mar 26 12:58:33 2014 +0100 -+++ b/mpn/generic/mod_1_1.c Fri Mar 28 20:35:13 2014 +0100 -@@ -129,7 +129,7 @@ - "%2" ((UDItype)(a0)), "r" ((UDItype)(b0)) __CLOBBER_CC) - #endif - --#if defined (__arm__) && W_TYPE_SIZE == 32 -+#if defined (__arm__) && !defined (__thumb__) && W_TYPE_SIZE == 32 - #define add_mssaaaa(m, sh, sl, ah, al, bh, bl) \ - __asm__ ( "adds %2, %5, %6\n\t" \ - "adcs %1, %3, %4\n\t" \ - diff --git a/package/gmp/0002-arm-asm-conditional-on-no-thumb-2.patch b/package/gmp/0002-arm-asm-conditional-on-no-thumb-2.patch deleted file mode 100644 index 666cf58cf69..00000000000 --- a/package/gmp/0002-arm-asm-conditional-on-no-thumb-2.patch +++ /dev/null @@ -1,21 +0,0 @@ - -# HG changeset patch -# User Torbjorn Granlund -# Date 1396602422 -7200 -# Node ID 676e2d0f0e4dd301a7066079d2c9326c25c34a40 -# Parent 0194a75b56b21a9196626430af86c5bd9110c42d -Conditionalise ARM asm on !__thumb__. - -diff -r 0194a75b56b2 -r 676e2d0f0e4d mpn/generic/div_qr_1n_pi1.c ---- a/mpn/generic/div_qr_1n_pi1.c Thu Apr 03 23:58:51 2014 +0200 -+++ b/mpn/generic/div_qr_1n_pi1.c Fri Apr 04 11:07:02 2014 +0200 -@@ -130,7 +130,7 @@ - "%2" ((UDItype)(a0)), "r" ((UDItype)(b0)) __CLOBBER_CC) - #endif - --#if defined (__arm__) && W_TYPE_SIZE == 32 -+#if defined (__arm__) && !defined (__thumb__) && W_TYPE_SIZE == 32 - #define add_mssaaaa(m, sh, sl, ah, al, bh, bl) \ - __asm__ ( "adds %2, %5, %6\n\t" \ - "adcs %1, %3, %4\n\t" \ - diff --git a/package/gmp/0003-powerpc-provide-default-bmod-to-mod-threshold-1.patch b/package/gmp/0003-powerpc-provide-default-bmod-to-mod-threshold-1.patch deleted file mode 100644 index 76aa72f0861..00000000000 --- a/package/gmp/0003-powerpc-provide-default-bmod-to-mod-threshold-1.patch +++ /dev/null @@ -1,22 +0,0 @@ - -# HG changeset patch -# User Torbjorn Granlund -# Date 1395835068 -3600 -# Node ID 4a6d258b467f661da0894cc60ecd060f2e3c67c7 -# Parent 301ce2788826a2d4d2725bd5cf01e998638db37a -Provide default for BMOD_1_TO_MOD_1_THRESHOLD. - -diff -r 301ce2788826 -r 4a6d258b467f mpn/powerpc64/mode64/gcd_1.asm ---- a/mpn/powerpc64/mode64/gcd_1.asm Tue Mar 25 15:34:52 2014 +0100 -+++ b/mpn/powerpc64/mode64/gcd_1.asm Wed Mar 26 12:57:48 2014 +0100 -@@ -43,6 +43,9 @@ - define(`n', `r4') - define(`v0', `r5') - -+ifdef(`BMOD_1_TO_MOD_1_THRESHOLD',, -+ `define(`BMOD_1_TO_MOD_1_THRESHOLD',30)') -+ - EXTERN_FUNC(mpn_mod_1) - EXTERN_FUNC(mpn_modexact_1c_odd) - - diff --git a/package/gmp/gmp.hash b/package/gmp/gmp.hash index 9fe634406b5..e803623c00b 100644 --- a/package/gmp/gmp.hash +++ b/package/gmp/gmp.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 9156d32edac6955bc53b0218f5f3763facb890b73a835d5e1b901dcf8eb8b764 gmp-6.0.0a.tar.xz +sha256 68dadacce515b0f8a54f510edf07c1b636492bcdb8e8d54c56eb216225d16989 gmp-6.1.0.tar.xz diff --git a/package/gmp/gmp.mk b/package/gmp/gmp.mk index f71a2109ab3..af6958de811 100644 --- a/package/gmp/gmp.mk +++ b/package/gmp/gmp.mk @@ -4,7 +4,7 @@ # ################################################################################ -GMP_VERSION = 6.0.0a +GMP_VERSION = 6.1.0 GMP_SITE = $(BR2_GNU_MIRROR)/gmp GMP_SOURCE = gmp-$(GMP_VERSION).tar.xz GMP_INSTALL_STAGING = YES @@ -12,5 +12,10 @@ GMP_LICENSE = LGPLv3+ GMP_LICENSE_FILES = COPYING.LESSERv3 GMP_DEPENDENCIES = host-m4 +# GMP doesn't support assembly for r6 ISA yet +ifeq ($(BR2_mips_32r6)$(BR2_mips_64r6),y) +GMP_CONF_OPTS += --disable-assembly +endif + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/gnupg/gnupg.hash b/package/gnupg/gnupg.hash index ba38d38fbaf..f872d24d5cd 100644 --- a/package/gnupg/gnupg.hash +++ b/package/gnupg/gnupg.hash @@ -1,2 +1,2 @@ -# From http://lists.gnupg.org/pipermail/gnupg-announce/2015q1/000363.html -sha1 5503f7faa0a0e84450838706a67621546241ca50 gnupg-1.4.19.tar.bz2 +# From https://lists.gnupg.org/pipermail/gnupg-announce/2015q4/000382.html +sha1 cbc9d960e3d8488c32675019a79fbfbf8680387e gnupg-1.4.20.tar.bz2 diff --git a/package/gnupg/gnupg.mk b/package/gnupg/gnupg.mk index f358fa36f54..8893a1cc687 100644 --- a/package/gnupg/gnupg.mk +++ b/package/gnupg/gnupg.mk @@ -4,7 +4,7 @@ # ################################################################################ -GNUPG_VERSION = 1.4.19 +GNUPG_VERSION = 1.4.20 GNUPG_SOURCE = gnupg-$(GNUPG_VERSION).tar.bz2 GNUPG_SITE = ftp://ftp.gnupg.org/gcrypt/gnupg GNUPG_LICENSE = GPLv3+ diff --git a/package/gnupg2/0001-fix-pth-config-usage.patch b/package/gnupg2/0001-fix-pth-config-usage.patch index e58aad3f749..756d3513978 100644 --- a/package/gnupg2/0001-fix-pth-config-usage.patch +++ b/package/gnupg2/0001-fix-pth-config-usage.patch @@ -6,22 +6,19 @@ original one when reporting the version number. This patch to gnupg2's configure script adjusts the version checking to support this difference, since Buildroot uses pth-config from pthsem. -We patch directly the configure script, because triggering the entire -autoreconf dance for just a one byte change in the configure script -seems a bit silly. - Signed-off-by: Thomas Petazzoni +[yann.morin.1998@free.fr: adapt to patch m4 macro for autoreconfiguring] +Signed-off-by: "Yann E. MORIN" -Index: b/configure -=================================================================== ---- a/configure -+++ b/configure -@@ -8346,7 +8346,7 @@ - tmp=1.3.7 - if test "$PTH_CONFIG" != "no"; then - -- _pth_version=`$PTH_CONFIG --version | awk 'NR==1 {print $3}'` -+ _pth_version=`$PTH_CONFIG --version | awk 'NR==1 {print $2}'` - _req_version="$tmp" +diff -durN gnupg2-2.0.29.orig/m4/gnupg-pth.m4 gnupg2-2.0.29/m4/gnupg-pth.m4 +--- gnupg2-2.0.29.orig/m4/gnupg-pth.m4 2015-09-08 14:39:24.000000000 +0200 ++++ gnupg2-2.0.29/m4/gnupg-pth.m4 2015-12-16 18:30:54.336513493 +0100 +@@ -17,7 +17,7 @@ + # Taken and modified from the m4 macros which come with Pth. + AC_DEFUN([GNUPG_PTH_VERSION_CHECK], + [ +- _pth_version=`$PTH_CONFIG --version | awk 'NR==1 {print [$]3}'` ++ _pth_version=`$PTH_CONFIG --version | awk 'NR==1 {print [$]2}'` + _req_version="ifelse([$1],,1.2.0,$1)" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTH - version >= $_req_version" >&5 + AC_MSG_CHECKING(for PTH - version >= $_req_version) diff --git a/package/gnupg2/0002-missing-include.patch b/package/gnupg2/0002-missing-include.patch new file mode 100644 index 00000000000..f20994cedbf --- /dev/null +++ b/package/gnupg2/0002-missing-include.patch @@ -0,0 +1,15 @@ +tools/watchgnupg: select() is from sys/select.h + +Signed-off-by: "Yann E. MORIN" + +diff -durN gnupg2-2.0.29.orig/tools/watchgnupg.c gnupg2-2.0.29/tools/watchgnupg.c +--- gnupg2-2.0.29.orig/tools/watchgnupg.c 2015-09-08 14:39:24.000000000 +0200 ++++ gnupg2-2.0.29/tools/watchgnupg.c 2015-12-16 18:17:17.758057787 +0100 +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + + #define PGM "watchgnupg" + diff --git a/package/gnupg2/0003-dont-run-tests.patch b/package/gnupg2/0003-dont-run-tests.patch new file mode 100644 index 00000000000..1858a0de09f --- /dev/null +++ b/package/gnupg2/0003-dont-run-tests.patch @@ -0,0 +1,39 @@ +tests: really don't run tests in cross-compilation + +Signed-off-by: "Yann E. MORIN" + +diff -durN gnupg2-2.0.29.orig/tests/Makefile.am gnupg2-2.0.29/tests/Makefile.am +--- gnupg2-2.0.29.orig/tests/Makefile.am 2015-09-08 14:39:24.000000000 +0200 ++++ gnupg2-2.0.29/tests/Makefile.am 2015-12-16 18:27:55.778227183 +0100 +@@ -64,6 +64,7 @@ + asschk_SOURCES = asschk.c + + ++if RUN_GPG_TESTS + all-local: inittests.stamp + + clean-local: +@@ -72,4 +73,5 @@ + inittests.stamp: inittests + srcdir=$(srcdir) $(TESTS_ENVIRONMENT) $(srcdir)/inittests + echo timestamp >./inittests.stamp ++endif # RUN_GPG_TESTS + +diff -durN gnupg2-2.0.29.orig/tests/pkits/Makefile.am gnupg2-2.0.29/tests/pkits/Makefile.am +--- gnupg2-2.0.29.orig/tests/pkits/Makefile.am 2015-09-01 08:52:21.000000000 +0200 ++++ gnupg2-2.0.29/tests/pkits/Makefile.am 2015-12-16 18:44:06.422655594 +0100 +@@ -52,6 +52,7 @@ + + DISTCLEANFILES = pubring.kbx~ random_seed + ++if RUN_GPG_TESTS + all-local: inittests.stamp + + clean-local: +@@ -71,5 +72,5 @@ + elif test $$? -eq 77; then echo "- SKIP $$tst"; \ + fi; \ + done +- ++endif # RUN_GPG_TESTS + diff --git a/package/gnupg2/0004-silence-git-when-not-in-git-tree.patch b/package/gnupg2/0004-silence-git-when-not-in-git-tree.patch new file mode 100644 index 00000000000..5eaefe4bda8 --- /dev/null +++ b/package/gnupg2/0004-silence-git-when-not-in-git-tree.patch @@ -0,0 +1,26 @@ +configure: silence autoreconf when not in a git tree + +When autoreconfiguring ourside of a git tree, the output is verbose +with git errors. + +Silence that by consigning stderr to oblivion. + +Signed-off-by: "Yann E. MORIN" + +diff -durN gnupg2-2.0.29.orig/configure.ac gnupg2-2.0.29/configure.ac +--- gnupg2-2.0.29.orig/configure.ac 2015-09-08 14:39:24.000000000 +0200 ++++ gnupg2-2.0.29/configure.ac 2015-12-16 18:34:47.099493863 +0100 +@@ -33,11 +33,11 @@ + # flag indicating a development version (mym4_isgit). Note that the + # m4 processing is done by autoconf and not during the configure run. + m4_define([mym4_revision], +- m4_esyscmd([git rev-parse --short HEAD | tr -d '\n\r'])) ++ m4_esyscmd([git rev-parse --short HEAD 2>/dev/null | tr -d '\n\r'])) + m4_define([mym4_revision_dec], + m4_esyscmd_s([echo $((0x$(echo ]mym4_revision[|head -c 4)))])) + m4_define([mym4_betastring], +- m4_esyscmd_s([git describe --match 'gnupg-2.[0-9].*[0-9]' --long|\ ++ m4_esyscmd_s([git describe --match 'gnupg-2.[0-9].*[0-9]' --long 2>/dev/null |\ + awk -F- '$3!=0{print"-beta"$3}'])) + m4_define([mym4_isgit],m4_if(mym4_betastring,[],[no],[yes])) + m4_define([mym4_full_version],[mym4_version[]mym4_betastring]) diff --git a/package/gnupg2/gnupg2.hash b/package/gnupg2/gnupg2.hash index 2a2305cfbaa..1219338bcfd 100644 --- a/package/gnupg2/gnupg2.hash +++ b/package/gnupg2/gnupg2.hash @@ -1,2 +1,2 @@ -# From http://lists.gnupg.org/pipermail/gnupg-announce/2015q2/000367.html -sha1 9a1050f72b6c9afe2b4a0a3f2e9dca2abba8e4ef gnupg-2.0.28.tar.bz2 +# From https://lists.gnu.org/archive/html/info-gnu/2015-09/msg00001.html +sha1 87eb0df18f9953675f979405a1af10ab6c5322b3 gnupg-2.0.29.tar.bz2 diff --git a/package/gnupg2/gnupg2.mk b/package/gnupg2/gnupg2.mk index ab3a59a599d..8d4f3737e9f 100644 --- a/package/gnupg2/gnupg2.mk +++ b/package/gnupg2/gnupg2.mk @@ -4,13 +4,17 @@ # ################################################################################ -GNUPG2_VERSION = 2.0.28 +GNUPG2_VERSION = 2.0.29 GNUPG2_SOURCE = gnupg-$(GNUPG2_VERSION).tar.bz2 GNUPG2_SITE = ftp://ftp.gnupg.org/gcrypt/gnupg GNUPG2_LICENSE = GPLv3+ GNUPG2_LICENSE_FILES = COPYING GNUPG2_DEPENDENCIES = zlib libgpg-error libgcrypt libassuan libksba libpthsem \ $(if $(BR2_PACKAGE_LIBICONV),libiconv) + +# Patching configure.ac and m4 macros, as well as Makefile.am +GNUPG2_AUTORECONF = YES + GNUPG2_CONF_OPTS = \ --disable-rpath --disable-regex --disable-doc \ --with-libgpg-error-prefix=$(STAGING_DIR)/usr \ @@ -34,6 +38,13 @@ else GNUPG2_CONF_OPTS += --disable-bzip2 endif +ifeq ($(BR2_PACKAGE_LIBUSB_COMPAT),y) +GNUPG2_CONF_OPTS += --enable-ccid-driver +GNUPG2_DEPENDENCIES += libusb-compat +else +GNUPG2_CONF_OPTS += --disable-ccid-driver +endif + ifeq ($(BR2_PACKAGE_READLINE),y) GNUPG2_CONF_OPTS += --with-readline=$(STAGING_DIR) GNUPG2_DEPENDENCIES += readline diff --git a/package/gnuradio/0002-types_t-is-need-for-mode_t.patch b/package/gnuradio/0002-types_t-is-need-for-mode_t.patch new file mode 100644 index 00000000000..7730d2dfc6d --- /dev/null +++ b/package/gnuradio/0002-types_t-is-need-for-mode_t.patch @@ -0,0 +1,19 @@ +To avoid : +error: 'mode_t' has not been declared +sys/types.h must be included + +Signed-off-by: Gwenhael Goavec-Merou +--- +Index: gnuradio-3.7.5/gnuradio-runtime/include/gnuradio/logger.h.in +=================================================================== +--- gnuradio-3.7.5.orig/gnuradio-runtime/include/gnuradio/logger.h.in ++++ gnuradio-3.7.5/gnuradio-runtime/include/gnuradio/logger.h.in +@@ -44,6 +44,8 @@ + + #ifdef _MSC_VER + typedef unsigned short mode_t; ++#else ++#include + #endif + + #include diff --git a/package/gnuradio/Config.in b/package/gnuradio/Config.in index e264a2145ef..603532cf0c9 100644 --- a/package/gnuradio/Config.in +++ b/package/gnuradio/Config.in @@ -45,14 +45,16 @@ config BR2_PACKAGE_GNURADIO_FEC config BR2_PACKAGE_GNURADIO_PYTHON bool "python support" + depends on BR2_PACKAGE_PYTHON + depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS select BR2_PACKAGE_BOOST_PYTHON - select BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON_NUMPY # runtime help Enable python component config BR2_PACKAGE_GNURADIO_UTILS bool "gr-utils support" - select BR2_PACKAGE_GNURADIO_PYTHON + depends on BR2_PACKAGE_GNURADIO_PYTHON help Misc python utilities diff --git a/package/gnuradio/gnuradio.mk b/package/gnuradio/gnuradio.mk index fc5cd1fa596..b7dbcb9fdd5 100644 --- a/package/gnuradio/gnuradio.mk +++ b/package/gnuradio/gnuradio.mk @@ -17,6 +17,10 @@ GNURADIO_DEPENDENCIES = \ host-swig \ boost +ifeq ($(BR2_PACKAGE_ORC),y) +GNURADIO_DEPENDENCIES += orc +endif + GNURADIO_CONF_OPTS = \ -DENABLE_DEFAULT=OFF \ -DENABLE_VOLK=ON \ diff --git a/package/gnutls/Config.in b/package/gnutls/Config.in index ecb6756d25e..998e213c7d0 100644 --- a/package/gnutls/Config.in +++ b/package/gnutls/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_GNUTLS bool "gnutls" + select BR2_PACKAGE_LIBTASN1 select BR2_PACKAGE_NETTLE select BR2_PACKAGE_PCRE depends on BR2_USE_WCHAR @@ -13,6 +14,8 @@ if BR2_PACKAGE_GNUTLS config BR2_PACKAGE_GNUTLS_TOOLS bool "install tools" + select BR2_PACKAGE_ARGP_STANDALONE \ + if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL help Install GnuTLS command line tools for various cryptographic tasks. diff --git a/package/gnutls/gnutls.hash b/package/gnutls/gnutls.hash index 620caae9441..1bccffd03ce 100644 --- a/package/gnutls/gnutls.hash +++ b/package/gnutls/gnutls.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 80a471c723572a43ddbe75d7825a3275f640650cc99eae42963ab39b9d0b7552 gnutls-3.3.16.tar.xz +sha256 48594fadba33d450f796ec69526cf2bce6ff9bc3dc90fbd7bf38dc3601f57c3f gnutls-3.4.9.tar.xz diff --git a/package/gnutls/gnutls.mk b/package/gnutls/gnutls.mk index 4593034efbd..32f44e6fa05 100644 --- a/package/gnutls/gnutls.mk +++ b/package/gnutls/gnutls.mk @@ -4,24 +4,24 @@ # ################################################################################ -GNUTLS_VERSION_MAJOR = 3.3 -GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).16 +GNUTLS_VERSION_MAJOR = 3.4 +GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).9 GNUTLS_SOURCE = gnutls-$(GNUTLS_VERSION).tar.xz GNUTLS_SITE = ftp://ftp.gnutls.org/gcrypt/gnutls/v$(GNUTLS_VERSION_MAJOR) -GNUTLS_LICENSE = GPLv3+ LGPLv2.1+ +GNUTLS_LICENSE = GPLv3+, LGPLv2.1+ GNUTLS_LICENSE_FILES = COPYING COPYING.LESSER -GNUTLS_DEPENDENCIES = host-pkgconf nettle pcre \ - $(if $(BR2_PACKAGE_P11_KIT),p11-kit) \ - $(if $(BR2_PACKAGE_LIBIDN),libidn) \ - $(if $(BR2_PACKAGE_LIBTASN1),libtasn1) \ - $(if $(BR2_PACKAGE_ZLIB),zlib) +GNUTLS_DEPENDENCIES = host-pkgconf libtasn1 nettle pcre GNUTLS_CONF_OPTS = \ - --with-libnettle-prefix=$(STAGING_DIR)/usr \ - --with-librt-prefix=$(STAGING_DIR) \ - --disable-rpath \ --disable-doc \ --disable-guile \ - --enable-local-libopts + --disable-libdane \ + --disable-rpath \ + --enable-local-libopts \ + --enable-openssl-compatibility \ + --with-libnettle-prefix=$(STAGING_DIR)/usr \ + --with-librt-prefix=$(STAGING_DIR) \ + --without-tpm \ + $(if $(BR2_PACKAGE_GNUTLS_TOOLS),--enable-tools,--disable-tools) GNUTLS_CONF_ENV = gl_cv_socket_ipv6=yes \ ac_cv_header_wchar_h=$(if $(BR2_USE_WCHAR),yes,no) \ gt_cv_c_wchar_t=$(if $(BR2_USE_WCHAR),yes,no) \ @@ -46,6 +46,12 @@ ifeq ($(BR2_PACKAGE_GNUTLS_TOOLS),) GNUTLS_CONF_OPTS += --disable-crywrap endif +# Prerequisite for crywrap +ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) +GNUTLS_CONF_ENV += LIBS="-largp" +GNUTLS_DEPENDENCIES += argp-standalone +endif + # libidn support for nommu must exclude the crywrap wrapper (uses fork) GNUTLS_CONF_OPTS += $(if $(BR2_USE_MMU),,--disable-crywrap) @@ -54,17 +60,25 @@ GNUTLS_CONF_OPTS += --enable-cryptodev GNUTLS_DEPENDENCIES += cryptodev-linux endif -# Some examples in doc/examples use wchar -define GNUTLS_DISABLE_DOCS - $(SED) 's/ doc / /' $(@D)/Makefile.in -endef +ifeq ($(BR2_PACKAGE_LIBIDN),y) +GNUTLS_CONF_OPTS += --with-idn +GNUTLS_DEPENDENCIES += libidn +else +GNUTLS_CONF_OPTS += --without-idn +endif -define GNUTLS_DISABLE_TOOLS - $(SED) 's/\$$(PROGRAMS)//' $(@D)/src/Makefile.in - $(SED) 's/) install-exec-am/)/' $(@D)/src/Makefile.in -endef +ifeq ($(BR2_PACKAGE_P11_KIT),y) +GNUTLS_CONF_OPTS += --with-p11-kit +GNUTLS_DEPENDENCIES += p11-kit +else +GNUTLS_CONF_OPTS += --without-p11-kit +endif -GNUTLS_POST_PATCH_HOOKS += GNUTLS_DISABLE_DOCS -GNUTLS_POST_PATCH_HOOKS += $(if $(BR2_PACKAGE_GNUTLS_TOOLS),,GNUTLS_DISABLE_TOOLS) +ifeq ($(BR2_PACKAGE_ZLIB),y) +GNUTLS_CONF_OPTS += --with-zlib +GNUTLS_DEPENDENCIES += zlib +else +GNUTLS_CONF_OPTS += --without-zlib +endif $(eval $(autotools-package)) diff --git a/package/gob2/gob2.hash b/package/gob2/gob2.hash new file mode 100644 index 00000000000..3678bdd5c96 --- /dev/null +++ b/package/gob2/gob2.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 f7ee84c07ca88ae96e5a60461957cc4dd0aa69d61804433d1c85de3d50be8026 gob2-2.0.20.tar.xz diff --git a/package/gpm/0002-Install-unversioned-solibrary.patch b/package/gpm/0002-Install-unversioned-solibrary.patch new file mode 100644 index 00000000000..27e97acb32b --- /dev/null +++ b/package/gpm/0002-Install-unversioned-solibrary.patch @@ -0,0 +1,41 @@ +From 06b00d53d8bd513ad5d262dc94a016c6fbf2d3aa Mon Sep 17 00:00:00 2001 +From: Kamil Rytarowski +Date: Sat, 4 May 2013 01:30:17 +0200 +Subject: [PATCH] Install unversioned solibrary + +Unversioned solibraries are shipped with -devel packages in Linux +distros. Generate and install it for the consistency. + +[Upstream patch backported from the github repository, +https://github.com/telmich/gpm/commit/06b00d53d8bd513ad5d262dc94a016c6fbf2d3aa] + +Signed-off-by: Bernd Kuhls +--- + src/Makefile.in | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/src/Makefile.in b/src/Makefile.in +index 6b60ad3..7e9e2ef 100644 +--- a/src/Makefile.in ++++ b/src/Makefile.in +@@ -79,7 +79,7 @@ prog/%: prog/%.o + # | $(SED) '\''s/\($*\)\.o\([ :]*\)/\1.o \1.lo\2/g'\'' > $(DEPDIR)/$@' + + # Do it all! +-all: gpm lib/libgpm.so.@abi_lev@ @LIBGPM_A@ $(PROG) ++all: gpm lib/libgpm.so.@abi_lev@ lib/libgpm.so @LIBGPM_A@ $(PROG) + + gpm: $(GOBJ) + $(CC) @LDFLAGS@ $(LDFLAGS) -o $@ $(GOBJ) @LIBS@ $(LIBS) -lm +@@ -168,9 +168,8 @@ lib/libgpm.so.@abi_full@: $(PICS) + @LDFLAGS@ $(LDFLAGS) -o lib/libgpm.so.@abi_full@ $^ @LIBS@ @SHARED_LIBS@ $(LIBS) + lib/libgpm.so.@abi_lev@: lib/libgpm.so.@abi_full@ + $(LN_S) -f libgpm.so.@abi_full@ lib/libgpm.so.@abi_lev@ +-# unneeded, isn't it? +-#lib/libgpm.so: lib/libgpm.so.@abi_full@ +-# $(LN_S) -f libgpm.so.@abi_full@ lib/libgpm.so ++lib/libgpm.so: lib/libgpm.so.@abi_full@ ++ $(LN_S) -f libgpm.so.@abi_full@ lib/libgpm.so + + include $(DEPFILE) + diff --git a/package/gpm/0003-src-Makefile.in-Really-install-unversioned-solibrary.patch b/package/gpm/0003-src-Makefile.in-Really-install-unversioned-solibrary.patch new file mode 100644 index 00000000000..58b260ce247 --- /dev/null +++ b/package/gpm/0003-src-Makefile.in-Really-install-unversioned-solibrary.patch @@ -0,0 +1,31 @@ +From 445be05fba32c512fd87a0c98b4e9936629ef95e Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 20 Feb 2016 17:59:52 +0100 +Subject: [PATCH 1/1] src/Makefile.in: Really install unversioned solibrary + +This commit is a follow-up to +https://github.com/telmich/gpm/commit/06b00d53d8bd513ad5d262dc94a016c6fbf2d3aa +which created libgpm.so but failed to include it in the install target. + +Patch sent upstream: https://github.com/telmich/gpm/pull/11 + +Signed-off-by: Bernd Kuhls +--- + src/Makefile.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/Makefile.in b/src/Makefile.in +index 7e9e2ef..bca226f 100644 +--- a/src/Makefile.in ++++ b/src/Makefile.in +@@ -115,6 +115,7 @@ install: check + if test "x@SHLIB@" != "x" ; then \ + $(INSTALL_DATA) -m 755 lib/libgpm.so.@abi_full@ $(libdir)/libgpm.so.@abi_full@ ; \ + cd $(libdir) && $(LN_S) -f libgpm.so.@abi_full@ libgpm.so.@abi_lev@ ; \ ++ cd $(libdir) && $(LN_S) -f libgpm.so.@abi_full@ libgpm.so ; \ + echo "WARNING: We installed a lib, you should now call ldconfig" ; \ + echo "f.i.: ldconfig -n -l $(libdir)/libgpm.so.@abi_full@" ; \ + echo "Or to update everything just type ldconfig" ; \ +-- +2.7.0 + diff --git a/package/gpsd/0001-Fix-build-against-musl-libc.patch b/package/gpsd/0001-Fix-build-against-musl-libc.patch deleted file mode 100644 index c7c5b2333c8..00000000000 --- a/package/gpsd/0001-Fix-build-against-musl-libc.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 2f1b033094df266008d9c4070cd7be33e93a4e12 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Fri, 19 Jun 2015 08:08:32 +0300 -Subject: [PATCH] Fix build against musl libc - -musl does not include sys/ttydefaults.h from sys/termios.h. Include it -explicitly. - -Fixes build failures like: - -gpsmon.o: In function `main': -gpsmon.c:(.text.startup+0x8f4): undefined reference to `CTRL' - -Upstream status: sent -(http://lists.nongnu.org/archive/html/gpsd-dev/2015-06/msg00031.html) - -Signed-off-by: Baruch Siach ---- - gpsmon.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/gpsmon.c b/gpsmon.c -index c3001c865821..0ccf74110b5a 100644 ---- a/gpsmon.c -+++ b/gpsmon.c -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - #include - #include - --- -2.1.4 - diff --git a/package/gpsd/Config.in b/package/gpsd/Config.in index fa8b8f6b2ad..b4008ebd835 100644 --- a/package/gpsd/Config.in +++ b/package/gpsd/Config.in @@ -1,7 +1,6 @@ comment "gpsd needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS - depends on !BR2_microblaze config BR2_PACKAGE_GPSD bool "gpsd" @@ -10,8 +9,6 @@ config BR2_PACKAGE_GPSD depends on BR2_TOOLCHAIN_HAS_THREADS # Always tries to build a shared library depends on !BR2_STATIC_LIBS - # triggers gcc ice - depends on !BR2_microblaze help gpsd is a service daemon that monitors one or more GPSes or AIS receivers attached to a host computer through serial or USB ports, diff --git a/package/gpsd/S50gpsd b/package/gpsd/S50gpsd index 6e5ce88dd4d..39bf2320614 100644 --- a/package/gpsd/S50gpsd +++ b/package/gpsd/S50gpsd @@ -9,11 +9,11 @@ DEVICES=/dev/ttyS1 PIDFILE=/var/run/$NAME.pid start() { - echo -n "Starting $NAME: " + printf "Starting $NAME: " start-stop-daemon -S -q -p $PIDFILE --exec $DAEMON -- -P $PIDFILE $DEVICES && echo "OK" || echo "Failed" } stop() { - echo -n "Stopping $NAME: " + printf "Stopping $NAME: " start-stop-daemon -K -q -p $PIDFILE && echo "OK" || echo "Failed" rm -f $PIDFILE } diff --git a/package/gpsd/gpsd.hash b/package/gpsd/gpsd.hash index 8e27ff02ee7..3083af24f1f 100644 --- a/package/gpsd/gpsd.hash +++ b/package/gpsd/gpsd.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 81c89e271ae112313e68655ab30d227bc38fe7841ffbff0f1860b12a9d7696ea gpsd-3.15.tar.gz +# Locally calculated +sha256 03579af13a4d3fe0c5b79fa44b5f75c9f3cac6749357f1d99ce5d38c09bc2029 gpsd-3.16.tar.gz diff --git a/package/gpsd/gpsd.mk b/package/gpsd/gpsd.mk index 2199e313e10..4fe5d18b1a5 100644 --- a/package/gpsd/gpsd.mk +++ b/package/gpsd/gpsd.mk @@ -4,7 +4,7 @@ # ################################################################################ -GPSD_VERSION = 3.15 +GPSD_VERSION = 3.16 GPSD_SITE = http://download-mirror.savannah.gnu.org/releases/gpsd GPSD_LICENSE = BSD-3c GPSD_LICENSE_FILES = COPYING @@ -13,6 +13,7 @@ GPSD_INSTALL_STAGING = YES GPSD_DEPENDENCIES = host-scons host-pkgconf GPSD_LDFLAGS = $(TARGET_LDFLAGS) +GPSD_CFLAGS = $(TARGET_CFLAGS) GPSD_SCONS_ENV = $(TARGET_CONFIGURE_OPTS) @@ -37,6 +38,13 @@ else GPSD_SCONS_OPTS += libgpsmm=no endif +# prevents from triggering GCC ICE +# A bug was reported to the gcc bug tracker: +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68485 +ifeq ($(BR2_microblaze),y) +GPSD_CFLAGS += -fno-expensive-optimizations -fno-schedule-insns +endif + # Enable or disable Qt binding ifeq ($(BR2_PACKAGE_QT_NETWORK),y) GPSD_SCONS_ENV += QMAKE="$(QT_QMAKE)" @@ -59,6 +67,12 @@ else GPSD_SCONS_OPTS += bluez=no endif +# If pps-tools is available, build it before so the package can use it +# (HAVE_SYS_TIMEPPS_H). +ifeq ($(BR2_PACKAGE_PPS_TOOLS),y) +GPSD_DEPENDENCIES += pps-tools +endif + ifeq ($(BR2_PACKAGE_DBUS_GLIB),y) GPSD_SCONS_OPTS += dbus_export=yes GPSD_DEPENDENCIES += dbus-glib @@ -102,7 +116,7 @@ ifneq ($(BR2_PACKAGE_GPSD_MTK3301),y) GPSD_SCONS_OPTS += mtk3301=no endif ifneq ($(BR2_PACKAGE_GPSD_NMEA),y) -GPSD_SCONS_OPTS += nmea=no +GPSD_SCONS_OPTS += nmea0183=no endif ifneq ($(BR2_PACKAGE_GPSD_NTRIP),y) GPSD_SCONS_OPTS += ntrip=no @@ -185,7 +199,7 @@ ifeq ($(BR2_PACKAGE_GPSD_MAX_DEV),y) GPSD_SCONS_OPTS += limited_max_devices=$(BR2_PACKAGE_GPSD_MAX_DEV_VALUE) endif -GPSD_SCONS_ENV += LDFLAGS="$(GPSD_LDFLAGS)" +GPSD_SCONS_ENV += LDFLAGS="$(GPSD_LDFLAGS)" CFLAGS="$(GPSD_CFLAGS)" define GPSD_BUILD_CMDS (cd $(@D); \ @@ -217,6 +231,8 @@ define GPSD_INSTALL_STAGING_CMDS install) endef +# After installing the udev rule, make it writable so that this +# package can be re-built/re-installed. ifeq ($(BR2_PACKAGE_HAS_UDEV),y) define GPSD_INSTALL_UDEV_RULES (cd $(@D); \ @@ -225,6 +241,7 @@ define GPSD_INSTALL_UDEV_RULES $(SCONS) \ $(GPSD_SCONS_OPTS) \ udev-install) + chmod u+w $(TARGET_DIR)/lib/udev/rules.d/25-gpsd.rules endef GPSD_POST_INSTALL_TARGET_HOOKS += GPSD_INSTALL_UDEV_RULES diff --git a/package/gptfdisk/Config.in.host b/package/gptfdisk/Config.in.host new file mode 100644 index 00000000000..fb7c682d081 --- /dev/null +++ b/package/gptfdisk/Config.in.host @@ -0,0 +1,11 @@ +config BR2_PACKAGE_HOST_GPTFDISK + bool "host gptfdisk" + select BR2_PACKAGE_HOST_UTIL_LINUX + help + GPT fdisk (consisting of the gdisk and sgdisk programs) is a + text-mode partitioning tool that works on Globally Unique + Identifier (GUID) Partition Table (GPT) disks, rather than + on the more common (through 2010) Master Boot Record (MBR) + partition tables. + + http://www.rodsbooks.com/gdisk/ diff --git a/package/gptfdisk/gptfdisk.mk b/package/gptfdisk/gptfdisk.mk index abfddfb9789..274591c7d42 100644 --- a/package/gptfdisk/gptfdisk.mk +++ b/package/gptfdisk/gptfdisk.mk @@ -46,4 +46,15 @@ define GPTFDISK_INSTALL_TARGET_CMDS done endef +HOST_GPTFDISK_DEPENDENCIES = host-util-linux host-popt + +define HOST_GPTFDISK_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) sgdisk +endef + +define HOST_GPTFDISK_INSTALL_CMDS + $(INSTALL) -D -m 0755 $(@D)/sgdisk $(HOST_DIR)/usr/sbin/sgdisk +endef + $(eval $(generic-package)) +$(eval $(host-generic-package)) diff --git a/package/graphite2/0001-disable-double-promotion.patch b/package/graphite2/0001-disable-double-promotion.patch new file mode 100644 index 00000000000..3bda3d7c63e --- /dev/null +++ b/package/graphite2/0001-disable-double-promotion.patch @@ -0,0 +1,21 @@ +Don't use -Wdouble-promotion gcc option + +The warning flag isn't recognized for older GCC versions (blackfin), +so just disable it. + +Signed-off-by: Gustavo Zacarias +[Gustavo: update for 1.3.5] + +diff -Nura graphite2-1.3.5.orig/src/CMakeLists.txt graphite2-1.3.5/src/CMakeLists.txt +--- graphite2-1.3.5.orig/src/CMakeLists.txt 2016-02-15 11:46:45.941906112 -0300 ++++ graphite2-1.3.5/src/CMakeLists.txt 2016-02-15 11:46:54.237194222 -0300 +@@ -111,9 +111,6 @@ + COMPILE_FLAGS "-Wall -Wextra -Wno-unknown-pragmas -Wendif-labels -Wshadow -Wctor-dtor-privacy -Wnon-virtual-dtor -fno-rtti -fno-exceptions -fvisibility=hidden -fvisibility-inlines-hidden -fno-stack-protector" + LINK_FLAGS "-nodefaultlibs ${GRAPHITE_LINK_FLAGS}" + LINKER_LANGUAGE C) +- if (CMAKE_COMPILER_IS_GNUCXX) +- add_definitions(-Wdouble-promotion) +- endif (CMAKE_COMPILER_IS_GNUCXX) + message(STATUS "Compiler ID is: ${CMAKE_CXX_COMPILER_ID}") + if (${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang") + add_definitions(-Wimplicit-fallthrough) diff --git a/package/graphite2/Config.in b/package/graphite2/Config.in new file mode 100644 index 00000000000..5499e17e274 --- /dev/null +++ b/package/graphite2/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_GRAPHITE2 + bool "graphite2" + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS + help + Graphite is a project within SIL's scripts and software dev + groups to provide cross-platform rendering for complex + writing systems. + + http://graphite.sil.org/ + +comment "graphite2 needs a toolchain w/ C++, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS diff --git a/package/graphite2/graphite2.hash b/package/graphite2/graphite2.hash new file mode 100644 index 00000000000..07102cfcd2e --- /dev/null +++ b/package/graphite2/graphite2.hash @@ -0,0 +1,3 @@ +# From http://sourceforge.net/projects/silgraphite/files/graphite2 +md5 5b8d22a8bbf031838e31432868c0109c graphite2-1.3.5.tgz +sha1 044f65d5b4ade3169f5fcd75a25f047c81f5d33e graphite2-1.3.5.tgz diff --git a/package/graphite2/graphite2.mk b/package/graphite2/graphite2.mk new file mode 100644 index 00000000000..82c4a3b5d2e --- /dev/null +++ b/package/graphite2/graphite2.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# graphite2 +# +################################################################################ + +GRAPHITE2_VERSION = 1.3.5 +GRAPHITE2_SOURCE = graphite2-$(GRAPHITE2_VERSION).tgz +GRAPHITE2_SITE = http://downloads.sourceforge.net/project/silgraphite/graphite2 +GRAPHITE2_INSTALL_STAGING = YES +GRAPHITE2_LICENSE = LGPLv2.1+ +GRAPHITE2_LICENSE_FILES = LICENSE + +# Avoid building docs and tests to save time +define GRAPHITE2_DISABLE_TESTS_DOC + $(SED) '/^add_subdirectory(doc)/d' \ + -e '/^add_subdirectory(tests)/d' \ + -e '/add_subdirectory(gr2fonttest)/d' \ + $(@D)/CMakeLists.txt +endef +GRAPHITE2_POST_PATCH_HOOKS += GRAPHITE2_DISABLE_TESTS_DOC + +$(eval $(cmake-package)) diff --git a/package/grep/0001-fix-CVE-2015-1345.patch b/package/grep/0001-fix-CVE-2015-1345.patch deleted file mode 100644 index f7701aa0105..00000000000 --- a/package/grep/0001-fix-CVE-2015-1345.patch +++ /dev/null @@ -1,20 +0,0 @@ -Simplified patch from upstream to avoid autoreconf. Source: -http://git.savannah.gnu.org/cgit/grep.git/commit/?id=83a95bd8c8561875b948cadd417c653dbe7ef2e2 - -Signed-off-by: Gustavo Zacarias ---- -diff --git a/src/kwset.c b/src/kwset.c -index 4003c8d..376f7c3 100644 ---- a/src/kwset.c -+++ b/src/kwset.c -@@ -643,6 +643,8 @@ bmexec_trans (kwset_t kwset, char const *text, size_t size) - if (! tp) - return -1; - tp++; -+ if (ep <= tp) -+ break; - } - } - } --- -cgit v0.9.0.2 diff --git a/package/grep/grep.hash b/package/grep/grep.hash index d27a26a372b..5c49da2a6a2 100644 --- a/package/grep/grep.hash +++ b/package/grep/grep.hash @@ -1,2 +1,2 @@ # Locally calculated after checking signature -sha256 5244a11c00dee8e7e5e714b9aaa053ac6cbfa27e104abee20d3c778e4bb0e5de grep-2.21.tar.xz +sha256 54fc478ee1ce17780109820ef30730c9e18715a949f7d5c6afc673adb2a56ecf grep-2.23.tar.xz diff --git a/package/grep/grep.mk b/package/grep/grep.mk index 80f6e71efb7..65ef469d89e 100644 --- a/package/grep/grep.mk +++ b/package/grep/grep.mk @@ -4,7 +4,7 @@ # ################################################################################ -GREP_VERSION = 2.21 +GREP_VERSION = 2.23 GREP_SITE = $(BR2_GNU_MIRROR)/grep GREP_SOURCE = grep-$(GREP_VERSION).tar.xz GREP_LICENSE = GPLv3+ diff --git a/package/gssdp/Config.in b/package/gssdp/Config.in new file mode 100644 index 00000000000..83149718da8 --- /dev/null +++ b/package/gssdp/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_GSSDP + bool "gssdp" + depends on BR2_USE_WCHAR # glib2, libsoup + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2, libsoup + depends on BR2_USE_MMU # glib2, libsoup + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_LIBSOUP + help + GSSDP implements resource discovery and announcement over SSDP. + + http://www.gupnp.org + +comment "gssdp needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/gssdp/gssdp.hash b/package/gssdp/gssdp.hash new file mode 100644 index 00000000000..09b8532d56c --- /dev/null +++ b/package/gssdp/gssdp.hash @@ -0,0 +1,2 @@ +# Hash from: http://ftp.gnome.org/pub/gnome/sources/gssdp/0.13/gssdp-0.13.2.sha256sum: +sha256 8f663f8a72b66254f5c20a3610ff853ac8d00bf6f253828e37e51579caa34dce gssdp-0.13.2.tar.xz diff --git a/package/gssdp/gssdp.mk b/package/gssdp/gssdp.mk new file mode 100644 index 00000000000..d9459a1e01d --- /dev/null +++ b/package/gssdp/gssdp.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# gssdp +# +################################################################################ + +GSSDP_VERSION_MAJOR = 0.13 +GSSDP_VERSION = $(GSSDP_VERSION_MAJOR).2 +GSSDP_SOURCE = gssdp-$(GSSDP_VERSION).tar.xz +GSSDP_SITE = http://ftp.gnome.org/pub/gnome/sources/gssdp/$(GSSDP_VERSION_MAJOR) +GSSDP_LICENSE = LGPLv2+ +GSSDP_LICENSE_FILES = COPYING +GSSDP_INSTALL_STAGING = YES +GSSDP_DEPENDENCIES = host-pkgconf libglib2 libsoup + +$(eval $(autotools-package)) diff --git a/package/gstreamer/gst-ffmpeg/Config.in b/package/gstreamer/gst-ffmpeg/Config.in index cc9b4971bb2..004ec1cb3d5 100644 --- a/package/gstreamer/gst-ffmpeg/Config.in +++ b/package/gstreamer/gst-ffmpeg/Config.in @@ -1,5 +1,8 @@ config BR2_PACKAGE_GST_FFMPEG bool "gst-ffmpeg" + # Unsupported for MIPS R6. It bundles a version of libav which + # doesn't have support for MIPS R6. + depends on !BR2_mips_32r6 && !BR2_mips_64r6 select BR2_PACKAGE_GST_PLUGINS_BASE help GStreamer plugin containing one plugin with a set of elements using diff --git a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.hash b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.hash new file mode 100644 index 00000000000..f1d639142f8 --- /dev/null +++ b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 568883b2a1d8d32e4004cb3f123790d0b4286c91c1fac38c9dc8e20bd1250764 gst-fsl-plugins-4.0.3.tar.gz diff --git a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk index a7dea0f769a..2ac558a2fb8 100644 --- a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk +++ b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST_FSL_PLUGINS_VERSION = 4.0.2 +GST_FSL_PLUGINS_VERSION = 4.0.3 GST_FSL_PLUGINS_SITE = $(FREESCALE_IMX_SITE) # Most is LGPLv2+, but some sources are copied from upstream and are diff --git a/package/gstreamer/gst-plugins-bad/Config.in b/package/gstreamer/gst-plugins-bad/Config.in index 1b465b28dba..d95edaa572e 100644 --- a/package/gstreamer/gst-plugins-bad/Config.in +++ b/package/gstreamer/gst-plugins-bad/Config.in @@ -252,6 +252,7 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_BZ2 config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_CDAUDIO bool "cdaudio" + depends on !BR2_nios2 # libcdaudio select BR2_PACKAGE_LIBCDAUDIO config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_CURL @@ -260,9 +261,8 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_CURL config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_DIRECTFB bool "directfb" - select BR2_PACKAGE_DIRECTFB - depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_DIRECTFB + default y config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_DVB bool "dvb" @@ -298,12 +298,12 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_OPUS config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_RSVG bool "rsvg" depends on BR2_INSTALL_LIBSTDCPP # librsvg -> pango - depends on BR2_ARCH_HAS_ATOMICS # librsvg -> cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # librsvg -> pango -> harfbuzz select BR2_PACKAGE_LIBRSVG comment "rsvg plugin needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_SDL bool "sdl" @@ -320,4 +320,18 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_VP8 bool "vp8" select BR2_PACKAGE_LIBVPX +config BR2_PACKAGE_GST_PLUGINS_BAD_ZBAR + bool "zbar" + depends on BR2_TOOLCHAIN_HAS_THREADS # zbar-> libv4l + depends on BR2_USE_MMU # zbar-> libv4l + depends on !BR2_STATIC_LIBS # zbar-> libv4l + depends on BR2_INSTALL_LIBSTDCPP # zbar-> libv4l + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # zbar-> libv4l + select BR2_PACKAGE_ZBAR + +comment "zbar plugin needs a toolchain w/ threads, dynamic library, C++ and headers >= 3.0" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ + || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + endif diff --git a/package/gstreamer/gst-plugins-bad/gst-plugins-bad.mk b/package/gstreamer/gst-plugins-bad/gst-plugins-bad.mk index 0a85603ccb6..98e5c1cfb86 100644 --- a/package/gstreamer/gst-plugins-bad/gst-plugins-bad.mk +++ b/package/gstreamer/gst-plugins-bad/gst-plugins-bad.mk @@ -7,6 +7,9 @@ GST_PLUGINS_BAD_VERSION = 0.10.23 GST_PLUGINS_BAD_SOURCE = gst-plugins-bad-$(GST_PLUGINS_BAD_VERSION).tar.xz GST_PLUGINS_BAD_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-bad +# COPYING.LIB is in fact v2, but most of the code is v2.1+ +GST_PLUGINS_BAD_LICENSE = LGPLv2.1+, GPLv2+ +GST_PLUGINS_BAD_LICENSE_FILES = COPYING.LIB COPYING GST_PLUGINS_BAD_CONF_OPTS = \ --disable-examples @@ -585,4 +588,11 @@ else GST_PLUGINS_BAD_CONF_OPTS += --disable-vp8 endif +ifeq ($(BR2_PACKAGE_GST_PLUGINS_BAD_ZBAR),y) +GST_PLUGINS_BAD_CONF_OPTS += --enable-zbar +GST_PLUGINS_BAD_DEPENDENCIES += zbar +else +GST_PLUGINS_BAD_CONF_OPTS += --disable-zbar +endif + $(eval $(autotools-package)) diff --git a/package/gstreamer/gst-plugins-base/0002-audioresample-Fix-build-on-x86-if-emmintrin.h-is-ava.patch b/package/gstreamer/gst-plugins-base/0002-audioresample-Fix-build-on-x86-if-emmintrin.h-is-ava.patch new file mode 100644 index 00000000000..eabea4f8ca9 --- /dev/null +++ b/package/gstreamer/gst-plugins-base/0002-audioresample-Fix-build-on-x86-if-emmintrin.h-is-ava.patch @@ -0,0 +1,38 @@ +From daa194b71ea6f9e8ee522ab02e8c56150b7e62b3 Mon Sep 17 00:00:00 2001 +From: Antoine Jacoutot +Date: Mon, 20 Jan 2014 15:44:09 +0100 +Subject: [PATCH] audioresample: Fix build on x86 if emmintrin.h is available + but can't be used + +On i386, EMMINTRIN is defined but not usable without SSE so check for +__SSE__ and __SSE2__ as well. + +https://bugzilla.gnome.org/show_bug.cgi?id=670690 +Signed-off-by: Peter Korsgaard +--- + gst/audioresample/resample.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/gst/audioresample/resample.c b/gst/audioresample/resample.c +index 98d006c..481fa01 100644 +--- a/gst/audioresample/resample.c ++++ b/gst/audioresample/resample.c +@@ -77,13 +77,13 @@ + #define EXPORT G_GNUC_INTERNAL + + #ifdef _USE_SSE +-#ifndef HAVE_XMMINTRIN_H ++#if !defined(__SSE__) || !defined(HAVE_XMMINTRIN_H) + #undef _USE_SSE + #endif + #endif + + #ifdef _USE_SSE2 +-#ifndef HAVE_EMMINTRIN_H ++#if !defined(__SSE2__) || !defined(HAVE_XMMINTRIN_H) + #undef _USE_SSE2 + #endif + #endif +-- +2.1.4 + diff --git a/package/gstreamer/gst-plugins-base/0003-audioresample-It-s-HAVE_EMMINTRIN_H-not-HAVE_XMMINTR.patch b/package/gstreamer/gst-plugins-base/0003-audioresample-It-s-HAVE_EMMINTRIN_H-not-HAVE_XMMINTR.patch new file mode 100644 index 00000000000..e67531d2f7f --- /dev/null +++ b/package/gstreamer/gst-plugins-base/0003-audioresample-It-s-HAVE_EMMINTRIN_H-not-HAVE_XMMINTR.patch @@ -0,0 +1,27 @@ +From 4e3d101aa854cfee633a9689efeb75e5001baa5e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= +Date: Mon, 20 Jan 2014 16:11:04 +0100 +Subject: [PATCH] audioresample: It's HAVE_EMMINTRIN_H, not HAVE_XMMINTRIN_H + for SSE2 + +Signed-off-by: Peter Korsgaard +--- + gst/audioresample/resample.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gst/audioresample/resample.c b/gst/audioresample/resample.c +index 481fa01..4410bdd 100644 +--- a/gst/audioresample/resample.c ++++ b/gst/audioresample/resample.c +@@ -83,7 +83,7 @@ + #endif + + #ifdef _USE_SSE2 +-#if !defined(__SSE2__) || !defined(HAVE_XMMINTRIN_H) ++#if !defined(__SSE2__) || !defined(HAVE_EMMINTRIN_H) + #undef _USE_SSE2 + #endif + #endif +-- +2.1.4 + diff --git a/package/gstreamer/gst-plugins-base/Config.in b/package/gstreamer/gst-plugins-base/Config.in index 8ececea5ad0..8ad9a8ef819 100644 --- a/package/gstreamer/gst-plugins-base/Config.in +++ b/package/gstreamer/gst-plugins-base/Config.in @@ -85,12 +85,12 @@ config BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_OGG config BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_PANGO bool "pango font renderer" depends on BR2_INSTALL_LIBSTDCPP # pango -> freetype - depends on BR2_ARCH_HAS_ATOMICS # pango -> cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz select BR2_PACKAGE_PANGO comment "pango plugin needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 config BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_THEORA bool "theora (*.ogg video)" diff --git a/package/gstreamer/gst-plugins-base/gst-plugins-base.mk b/package/gstreamer/gst-plugins-base/gst-plugins-base.mk index 08733d172b4..e1374ed8015 100644 --- a/package/gstreamer/gst-plugins-base/gst-plugins-base.mk +++ b/package/gstreamer/gst-plugins-base/gst-plugins-base.mk @@ -8,6 +8,8 @@ GST_PLUGINS_BASE_VERSION = 0.10.36 GST_PLUGINS_BASE_SOURCE = gst-plugins-base-$(GST_PLUGINS_BASE_VERSION).tar.xz GST_PLUGINS_BASE_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-base GST_PLUGINS_BASE_INSTALL_STAGING = YES +GST_PLUGINS_BASE_LICENSE = GPLv2+, LGPLv2+ +GST_PLUGINS_BASE_LICENSE_FILES = COPYING COPYING.LIB # freetype is only used by examples, but if it is not found # and the host has a freetype-config script, then the host diff --git a/package/gstreamer/gst-plugins-good/Config.in b/package/gstreamer/gst-plugins-good/Config.in index 0544b7cc042..65f74e819d7 100644 --- a/package/gstreamer/gst-plugins-good/Config.in +++ b/package/gstreamer/gst-plugins-good/Config.in @@ -174,7 +174,6 @@ config BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_ANNODEX config BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_CAIRO bool "cairo" - depends on BR2_ARCH_HAS_ATOMICS # cairo select BR2_PACKAGE_CAIRO select BR2_PACKAGE_CAIRO_PNG @@ -204,14 +203,14 @@ config BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_OSS4 config BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_PULSE depends on BR2_TOOLCHAIN_HAS_THREADS # pulseaudio depends on BR2_USE_MMU # pulseaudio - depends on BR2_ARCH_HAS_ATOMICS # pulseaudio depends on !BR2_STATIC_LIBS # pulseaudio + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pulseaudio -> json-c select BR2_PACKAGE_PULSEAUDIO bool "pulseaudio" comment "pulseaudio support needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS config BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_SOUPHTTPSRC diff --git a/package/gstreamer/gst-plugins-good/gst-plugins-good.mk b/package/gstreamer/gst-plugins-good/gst-plugins-good.mk index fee83a1c60d..a686caf604a 100644 --- a/package/gstreamer/gst-plugins-good/gst-plugins-good.mk +++ b/package/gstreamer/gst-plugins-good/gst-plugins-good.mk @@ -7,6 +7,8 @@ GST_PLUGINS_GOOD_VERSION = 0.10.31 GST_PLUGINS_GOOD_SOURCE = gst-plugins-good-$(GST_PLUGINS_GOOD_VERSION).tar.xz GST_PLUGINS_GOOD_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-good +GST_PLUGINS_GOOD_LICENSE = LGPLv2.1+ +GST_PLUGINS_GOOD_LICENSE_FILES = COPYING GST_PLUGINS_GOOD_CONF_OPTS = \ --disable-examples \ diff --git a/package/gstreamer/gst-plugins-ugly/gst-plugins-ugly.hash b/package/gstreamer/gst-plugins-ugly/gst-plugins-ugly.hash index ffa0c989191..56f2a8c4bdb 100644 --- a/package/gstreamer/gst-plugins-ugly/gst-plugins-ugly.hash +++ b/package/gstreamer/gst-plugins-ugly/gst-plugins-ugly.hash @@ -1,2 +1,5 @@ # From http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-0.10.19.tar.xz.md5 md5 ba26045c8c8c91f0d48d327ccf53ac0c gst-plugins-ugly-0.10.19.tar.xz +# Locally computed +sha256 4934f65ff892637e7efaf1cfe635779189dde429d0706f40c86a3aac476ea873 gst-plugins-ugly-0.10.19.tar.xz +sha256 2a8aa4cd019fab333f1f8377bf7afa426d3038a033361d90fab70c335e9a53e7 cdio-cd-text-api.patch diff --git a/package/gstreamer/gst-plugins-ugly/gst-plugins-ugly.mk b/package/gstreamer/gst-plugins-ugly/gst-plugins-ugly.mk index e8f23620f65..0f56164d46e 100644 --- a/package/gstreamer/gst-plugins-ugly/gst-plugins-ugly.mk +++ b/package/gstreamer/gst-plugins-ugly/gst-plugins-ugly.mk @@ -7,6 +7,11 @@ GST_PLUGINS_UGLY_VERSION = 0.10.19 GST_PLUGINS_UGLY_SOURCE = gst-plugins-ugly-$(GST_PLUGINS_UGLY_VERSION).tar.xz GST_PLUGINS_UGLY_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-ugly +GST_PLUGINS_UGLY_PATCH = http://git.alpinelinux.org/cgit/aports/plain/main/gst-plugins-ugly0.10/cdio-cd-text-api.patch +# COPYING is in fact LGPLv2.1, but all of the code is v2+ +# (except for one test, xingmux) +GST_PLUGINS_UGLY_LICENSE = LGPLv2+, GPLv2+ (synaesthesia) +GST_PLUGINS_UGLY_LICENSE_FILES = COPYING GST_PLUGINS_UGLY_CONF_OPTS = \ --disable-examples diff --git a/package/gstreamer/gstreamer/Config.in b/package/gstreamer/gstreamer/Config.in index b833c96579b..eb1249ac5f2 100644 --- a/package/gstreamer/gstreamer/Config.in +++ b/package/gstreamer/gstreamer/Config.in @@ -1,3 +1,7 @@ +comment "gstreamer 0.10 needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + config BR2_PACKAGE_GSTREAMER bool "gstreamer 0.10" depends on BR2_USE_WCHAR # glib2 @@ -30,7 +34,3 @@ config BR2_PACKAGE_GSTREAMER_PLUGIN_REGISTRY the launch-time for a GStreamer application. endif - -comment "gstreamer 0.10 needs a toolchain w/ wchar, threads" - depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/gstreamer/gstreamer/gstreamer.mk b/package/gstreamer/gstreamer/gstreamer.mk index 1dbd66fdaec..f2bde30d29e 100644 --- a/package/gstreamer/gstreamer/gstreamer.mk +++ b/package/gstreamer/gstreamer/gstreamer.mk @@ -8,11 +8,14 @@ GSTREAMER_VERSION = 0.10.36 GSTREAMER_SOURCE = gstreamer-$(GSTREAMER_VERSION).tar.xz GSTREAMER_SITE = http://gstreamer.freedesktop.org/src/gstreamer GSTREAMER_INSTALL_STAGING = YES +# COPYING is in fact v2, but most of the code is v2.1+ +GSTREAMER_LICENSE = LGPLv2.1+ +GSTREAMER_LICENSE_FILES = COPYING # Checking if unaligned memory access works correctly cannot be done when cross # compiling. For the following architectures there is no information available # in the configure script. -ifeq ($(BR2_arc)$(BR2_xtensa)$(BR2_microblaze),y) +ifeq ($(BR2_arc)$(BR2_xtensa)$(BR2_microblaze)$(BR2_nios2),y) GSTREAMER_CONF_ENV = as_cv_unaligned_access=no endif ifeq ($(BR2_aarch64),y) @@ -27,6 +30,7 @@ GSTREAMER_CONF_OPTS = \ $(if $(BR2_PACKAGE_GSTREAMER_GST_DEBUG),,--disable-gst-debug) \ $(if $(BR2_PACKAGE_GSTREAMER_PLUGIN_REGISTRY),,--disable-registry) -GSTREAMER_DEPENDENCIES = libglib2 host-pkgconf host-bison host-flex +GSTREAMER_DEPENDENCIES = libglib2 host-pkgconf host-bison host-flex \ + $(if $(BR2_PACKAGE_LIBXML2),libxml2) $(eval $(autotools-package)) diff --git a/package/gstreamer1/gst1-imx/gst1-imx.mk b/package/gstreamer1/gst1-imx/gst1-imx.mk index 9ba7550290a..8ede8adf0d4 100644 --- a/package/gstreamer1/gst1-imx/gst1-imx.mk +++ b/package/gstreamer1/gst1-imx/gst1-imx.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_IMX_VERSION = 0.10.1 +GST1_IMX_VERSION = 0.11.1 GST1_IMX_SITE = $(call github,Freescale,gstreamer-imx,$(GST1_IMX_VERSION)) GST1_IMX_LICENSE = LGPLv2+ diff --git a/package/gstreamer1/gst1-libav/gst1-libav.hash b/package/gstreamer1/gst1-libav/gst1-libav.hash index c1a757b9586..d234b32b45c 100644 --- a/package/gstreamer1/gst1-libav/gst1-libav.hash +++ b/package/gstreamer1/gst1-libav/gst1-libav.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/gstreamer-devel/2014-December/050904.html -sha256 605c62624604f3bb5c870844cc1f2711779cc533b004c2aa1d8c0d58557afbbc gst-libav-1.4.5.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-libav/gst-libav-1.6.3.tar.xz.sha256sum +sha256 857b9c060a0337de38c6d26238c47352433c02eabf26c2f860c854dbc35bd4ab gst-libav-1.6.3.tar.xz diff --git a/package/gstreamer1/gst1-libav/gst1-libav.mk b/package/gstreamer1/gst1-libav/gst1-libav.mk index 8d71677abbf..3a987a79d44 100644 --- a/package/gstreamer1/gst1-libav/gst1-libav.mk +++ b/package/gstreamer1/gst1-libav/gst1-libav.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_LIBAV_VERSION = 1.4.5 +GST1_LIBAV_VERSION = 1.6.3 GST1_LIBAV_SOURCE = gst-libav-$(GST1_LIBAV_VERSION).tar.xz GST1_LIBAV_SITE = http://gstreamer.freedesktop.org/src/gst-libav diff --git a/package/gstreamer1/gst1-plugins-bad/Config.in b/package/gstreamer1/gst1-plugins-bad/Config.in index bc995277bcc..6e7d21d126a 100644 --- a/package/gstreamer1/gst1-plugins-bad/Config.in +++ b/package/gstreamer1/gst1-plugins-bad/Config.in @@ -70,8 +70,8 @@ comment "glx not supported with rpi-userland" comment "glx needs the opengl API and modular X.org" depends on !BR2_PACKAGE_RPI_USERLAND && \ - (!BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_OPENGL || \ - !BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR) + (!BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_OPENGL || \ + !BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR) config BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_EGL bool "egl" @@ -82,7 +82,7 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_EGL comment "egl needs an API and an EGL backend" depends on !BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_HAS_API || \ - !BR2_PACKAGE_HAS_LIBEGL + !BR2_PACKAGE_HAS_LIBEGL comment "Window systems" @@ -104,8 +104,8 @@ comment "x11 not supported with rpi-userland" comment "x11 needs a platform and X.org" depends on !BR2_PACKAGE_RPI_USERLAND && \ - (!BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_HAS_PLATFORM || \ - !BR2_PACKAGE_XORG7) + (!BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_HAS_PLATFORM || \ + !BR2_PACKAGE_XORG7) config BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_WAYLAND bool "wayland" @@ -116,7 +116,7 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_WAYLAND comment "wayland needs the egl platform and the wayland package" depends on !BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_EGL || \ - !BR2_PACKAGE_WAYLAND + !BR2_PACKAGE_WAYLAND config BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_DISPMANX bool "dispmanx" @@ -129,7 +129,7 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_DISPMANX comment "dispmanx needs the egl platform and rpi-userland" depends on !BR2_PACKAGE_GST1_PLUGINS_BAD_LIB_OPENGL_EGL || \ - !BR2_PACKAGE_RPI_USERLAND + !BR2_PACKAGE_RPI_USERLAND endif @@ -219,6 +219,12 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DEBUGUTILS help Collection of elements that may or may not be useful for debugging +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DTLS + bool "dtls" + select BR2_PACKAGE_OPENSSL + help + DTLS plugin + config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVBSUBOVERLAY bool "dvdsuboverlay" help @@ -347,6 +353,9 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MXF config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_NUVDEMUX bool "nuvdemux" +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ONVIF + bool "onvif" + config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_PATCHDETECT bool "patchdetect" @@ -365,14 +374,14 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_RAWPARSE help Parses byte streams into raw frames -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_REAL - bool "real" - config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_REMOVESILENCE bool "removesilence" help Removes silence from an audio stream +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_RTP + bool "rtp" + config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SDI bool "sdi" @@ -492,15 +501,13 @@ comment "decklink needs a toolchain w/ C++" config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DIRECTFB bool "directfb" - select BR2_PACKAGE_DIRECTFB - depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_DIRECTFB + default y config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WAYLAND bool "wayland" - depends on !BR2_STATIC_LIBS # wayland - depends on BR2_TOOLCHAIN_HAS_THREADS # wayland - select BR2_PACKAGE_WAYLAND + depends on BR2_PACKAGE_WAYLAND + default y help Wayland Video Sink @@ -555,16 +562,59 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_NEON help lib neon http client src -config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENCV - bool "opencv" +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENAL + bool "openal" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL - depends on BROKEN # gst1-plugin-opencv does not (yet) support opencv >=3.x + depends on BR2_PAKCAGE_OPENAL_ARCH_SUPPORTS + select BR2_PACKAGE_OPENAL + +comment "openal plugin needs a toolchain w/ NPTL, C++" + depends on BR2_PAKCAGE_OPENAL_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL \ + || !BR2_INSTALL_LIBSTDCPP + +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENCV + bool "opencv" + depends on BR2_PACKAGE_OPENCV + # Remove the following opencv modules when gstreamer fixes the + # problem of including the old "cv.h" header + # bug: https://bugzilla.gnome.org/show_bug.cgi?id=725163 + select BR2_PACKAGE_OPENCV_LIB_CALIB3D + select BR2_PACKAGE_OPENCV_LIB_CONTRIB + select BR2_PACKAGE_OPENCV_LIB_FEATURES2D + select BR2_PACKAGE_OPENCV_LIB_FLANN + select BR2_PACKAGE_OPENCV_LIB_IMGPROC + select BR2_PACKAGE_OPENCV_LIB_LEGACY + select BR2_PACKAGE_OPENCV_LIB_ML + select BR2_PACKAGE_OPENCV_LIB_OBJDETECT + select BR2_PACKAGE_OPENCV_LIB_VIDEO help GStreamer OpenCV Plugins -comment "opencv plugin needs a toolchain w/ C++, NPTL" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL +comment "opencv plugin needs OpenCV-2.4" + depends on !BR2_PACKAGE_OPENCV + +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENH264 + bool "openh264" + depends on BR2_PACKAGE_LIBOPENH264_ARCH_SUPPORTS + depends on BR2_INSTALL_LIBSTDCPP # libopenh264 + depends on !BR2_STATIC_LIBS # libopenh264 + depends on BR2_TOOLCHAIN_HAS_THREADS # libopenh264 + select BR2_PACKAGE_LIBOPENH264 + help + OpenH264 based encoding/decoding plugin + +comment "openh264 plugin needs a toolchain w/ C++, dynamic library, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS + depends on BR2_PACKAGE_LIBOPENH264_ARCH_SUPPORTS + +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENJPEG + bool "openjpeg" + select BR2_PACKAGE_OPENJPEG + help + GStreamer OpenJPEG plugin config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPUS bool "opus" @@ -575,14 +625,14 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPUS config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_RSVG bool "rsvg" depends on BR2_INSTALL_LIBSTDCPP # librsvg -> pango - depends on BR2_ARCH_HAS_ATOMICS # librsvg -> cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # librsvg -> pango -> harfbuzz select BR2_PACKAGE_LIBRSVG help RSVG plugin library comment "rsvg plugin needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL bool "gl" @@ -603,13 +653,29 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SNDFILE config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVB bool "dvb" select BR2_PACKAGE_DTV_SCAN_TABLES + # FEC_2_5 / QAM_4_NR definitions + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 help DVB elements +comment "dvb needs a toolchain w/ headers >= 3.7" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_HLS bool "hls" select BR2_PACKAGE_GNUTLS help Fragmented streaming plugins +config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_X265 + bool "x265" + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_X265 + help + x265 encoding plugin + +comment "x265 needs a toolchain w/ C++, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS + endif diff --git a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash index d2322d301f0..b1a80f5d785 100644 --- a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash +++ b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/gstreamer-devel/2014-December/050904.html -sha256 152fad7250683d72f9deb36c5685428338365fe4a4c87ffe15e38783b14f983c gst-plugins-bad-1.4.5.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.6.3.tar.xz.sha256sum +sha256 971b29101d6a9c5e3fe94d99d977a227f58f0b2d29b6ca2c7f292052542b3a61 gst-plugins-bad-1.6.3.tar.xz diff --git a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk index ee936fe7038..3a097e86d10 100644 --- a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk +++ b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk @@ -4,9 +4,10 @@ # ################################################################################ -GST1_PLUGINS_BAD_VERSION = 1.4.5 +GST1_PLUGINS_BAD_VERSION = 1.6.3 GST1_PLUGINS_BAD_SOURCE = gst-plugins-bad-$(GST1_PLUGINS_BAD_VERSION).tar.xz GST1_PLUGINS_BAD_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-bad +GST1_PLUGINS_BAD_INSTALL_STAGING = YES GST1_PLUGINS_BAD_LICENSE_FILES = COPYING COPYING.LIB # Unknown and GPL licensed plugins will append to GST1_PLUGINS_BAD_LICENSE if # enabled. @@ -22,12 +23,10 @@ GST1_PLUGINS_BAD_CONF_OPTS = \ --disable-directsound \ --disable-wsapi \ --disable-direct3d \ - --disable-directdraw \ --disable-direct3d9 \ --disable-winks \ --disable-android_media \ --disable-apple_media \ - --disable-osx_video \ --disable-sdltest \ --disable-wininet \ --disable-acm @@ -35,10 +34,10 @@ GST1_PLUGINS_BAD_CONF_OPTS = \ # Options which require currently unpackaged libraries GST1_PLUGINS_BAD_CONF_OPTS += \ --disable-avc \ - --disable-quicktime \ --disable-opensles \ --disable-uvch264 \ --disable-voamrwbenc \ + --disable-bs2b \ --disable-chromaprint \ --disable-dash \ --disable-dc1394 \ @@ -51,17 +50,15 @@ GST1_PLUGINS_BAD_CONF_OPTS += \ --disable-kate \ --disable-ladspa \ --disable-lv2 \ + --disable-libde265 \ --disable-strp \ --disable-linsys \ --disable-modplug \ --disable-mimic \ --disable-mplex \ - --disable-mythtv \ --disable-nas \ --disable-ofa \ - --disable-openal \ --disable-openexr \ - --disable-openjpeg \ --disable-openni2 \ --disable-pvr \ --disable-libvisual \ @@ -81,7 +78,9 @@ GST1_PLUGINS_BAD_CONF_OPTS += \ --disable-spandsp \ --disable-gsettings \ --disable-sndio \ - --disable-hls + --disable-hls \ + --disable-gtk3 \ + --disable-qt GST1_PLUGINS_BAD_DEPENDENCIES = gst1-plugins-base gstreamer1 @@ -261,6 +260,13 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-debugutils endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DTLS),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-dtls +GST1_PLUGINS_BAD_DEPENDENCIES += openssl +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-dtls +endif + ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVBSUBOVERLAY),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-dvbsuboverlay else @@ -431,6 +437,12 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-nuvdemux endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ONVIF),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-onvif +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-onvif +endif + ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_PATCHDETECT),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-patchdetect else @@ -455,18 +467,18 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-rawparse endif -ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_REAL),y) -GST1_PLUGINS_BAD_CONF_OPTS += --enable-real -else -GST1_PLUGINS_BAD_CONF_OPTS += --disable-real -endif - ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_REMOVESILENCE),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-removesilence else GST1_PLUGINS_BAD_CONF_OPTS += --disable-removesilence endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_RTP),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-rtp +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-rtp +endif + ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SDI),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-sdi else @@ -689,6 +701,13 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-neon endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENAL),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-openal +GST1_PLUGINS_BAD_DEPENDENCIES += openal +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-openal +endif + ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENCV),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-opencv GST1_PLUGINS_BAD_DEPENDENCIES += opencv @@ -696,6 +715,20 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-opencv endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENH264),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-openh264 +GST1_PLUGINS_BAD_DEPENDENCIES += libopenh264 +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-openh264 +endif + +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPENJPEG),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-openjpeg +GST1_PLUGINS_BAD_DEPENDENCIES += openjpeg +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-openjpeg +endif + ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_OPUS),y) GST1_PLUGINS_BAD_CONF_OPTS += --enable-opus GST1_PLUGINS_BAD_DEPENDENCIES += opus @@ -745,6 +778,14 @@ else GST1_PLUGINS_BAD_CONF_OPTS += --disable-hls endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_X265),y) +GST1_PLUGINS_BAD_CONF_OPTS += --enable-x265 +GST1_PLUGINS_BAD_DEPENDENCIES += x265 +GST1_PLUGINS_BAD_HAS_GPL_LICENSE = y +else +GST1_PLUGINS_BAD_CONF_OPTS += --disable-x265 +endif + # Add GPL license if GPL licensed plugins enabled. ifeq ($(GST1_PLUGINS_BAD_HAS_GPL_LICENSE),y) GST1_PLUGINS_BAD_LICENSE += GPL diff --git a/package/gstreamer1/gst1-plugins-base/Config.in b/package/gstreamer1/gst1-plugins-base/Config.in index 44367eb7e5a..b19fa59b921 100644 --- a/package/gstreamer1/gst1-plugins-base/Config.in +++ b/package/gstreamer1/gst1-plugins-base/Config.in @@ -129,14 +129,14 @@ config BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_OGG config BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_PANGO bool "pango font renderer" depends on BR2_INSTALL_LIBSTDCPP # pango -> freetype - depends on BR2_ARCH_HAS_ATOMICS # pango -> cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz select BR2_PACKAGE_PANGO help Pango-based text rendering and overlay comment "pango plugin needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 config BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_THEORA bool "theora (*.ogg video)" diff --git a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash index 4d5d63b7ae8..63ca85c89e4 100644 --- a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash +++ b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/gstreamer-devel/2014-December/050904.html -sha256 77bd8199e7a312d3d71de9b7ddf761a3b78560a2c2a80829d0815ca39cbd551d gst-plugins-base-1.4.5.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.6.3.tar.xz.sha256sum +sha256 b6154f8fdba4877e95efd94610ef0ada4f0171cd12eb829a3c3c97345d9c7a75 gst-plugins-base-1.6.3.tar.xz diff --git a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk index 9c833fc0e2f..0db787e89d8 100644 --- a/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk +++ b/package/gstreamer1/gst1-plugins-base/gst1-plugins-base.mk @@ -4,12 +4,12 @@ # ################################################################################ -GST1_PLUGINS_BASE_VERSION = 1.4.5 +GST1_PLUGINS_BASE_VERSION = 1.6.3 GST1_PLUGINS_BASE_SOURCE = gst-plugins-base-$(GST1_PLUGINS_BASE_VERSION).tar.xz GST1_PLUGINS_BASE_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-base GST1_PLUGINS_BASE_INSTALL_STAGING = YES GST1_PLUGINS_BASE_LICENSE_FILES = COPYING.LIB -GST1_PLUGINS_BASE_LICENSE = LGPLv2+ LGPLv2.1+ +GST1_PLUGINS_BASE_LICENSE = LGPLv2+, LGPLv2.1+ # freetype is only used by examples, but if it is not found # and the host has a freetype-config script, then the host @@ -18,10 +18,12 @@ GST1_PLUGINS_BASE_CONF_ENV = FT2_CONFIG=/bin/false \ ac_cv_header_stdint_t="stdint.h" +# gio_unix_2_0 is only used for tests GST1_PLUGINS_BASE_CONF_OPTS = \ --disable-examples \ --disable-oggtest \ --disable-vorbistest \ + --disable-gio_unix_2_0 \ --disable-freetypetest \ --disable-valgrind diff --git a/package/gstreamer1/gst1-plugins-good/Config.in b/package/gstreamer1/gst1-plugins-good/Config.in index 6216c7f9347..a59033a24ed 100644 --- a/package/gstreamer1/gst1-plugins-good/Config.in +++ b/package/gstreamer1/gst1-plugins-good/Config.in @@ -276,12 +276,11 @@ config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_V4L2 help elements for Video 4 Linux -comment "v4l2 needs toolchain w/ headers >= 3.0" +comment "v4l2 needs a toolchain w/ headers >= 3.0" depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_CAIRO bool "cairo" - depends on BR2_ARCH_HAS_ATOMICS # cairo select BR2_PACKAGE_CAIRO select BR2_PACKAGE_CAIRO_PNG help @@ -311,8 +310,8 @@ comment "gdkpixbuf needs a toolchain w/ wchar, threads" config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_PULSE depends on BR2_TOOLCHAIN_HAS_THREADS # pulseaudio depends on BR2_USE_MMU # pulseaudio - depends on BR2_ARCH_HAS_ATOMICS # pulseaudio depends on !BR2_STATIC_LIBS # pulseaudio + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pulseaudio -> json-c select BR2_PACKAGE_PULSEAUDIO bool "pulseaudio" help @@ -320,7 +319,7 @@ config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_PULSE comment "pulseaudio support needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS config BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_SOUPHTTPSRC diff --git a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash index be4c80184a1..3d8f9439e4e 100644 --- a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash +++ b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/gstreamer-devel/2014-December/050904.html -sha256 79b1b5f3f7bcaa8a615202eb5e176121eeb8336960f70687e536ad78dbc7e641 gst-plugins-good-1.4.5.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-1.6.3.tar.xz.sha256sum +sha256 24b19db70b2a83461ebddfe20033db432dadfdb5d4b54ffb1dfa0d830134a177 gst-plugins-good-1.6.3.tar.xz diff --git a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk index d9b4438ce81..6bf17c0604e 100644 --- a/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk +++ b/package/gstreamer1/gst1-plugins-good/gst1-plugins-good.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_PLUGINS_GOOD_VERSION = 1.4.5 +GST1_PLUGINS_GOOD_VERSION = 1.6.3 GST1_PLUGINS_GOOD_SOURCE = gst-plugins-good-$(GST1_PLUGINS_GOOD_VERSION).tar.xz GST1_PLUGINS_GOOD_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-good GST1_PLUGINS_GOOD_LICENSE_FILES = COPYING @@ -35,6 +35,13 @@ GST1_PLUGINS_GOOD_CONF_OPTS += \ GST1_PLUGINS_GOOD_DEPENDENCIES = gstreamer1 gst1-plugins-base +ifeq ($(BR2_PACKAGE_LIBV4L),y) +GST1_PLUGINS_GOOD_CONF_OPTS += --with-libv4l2 +GST1_PLUGINS_GOOD_DEPENDENCIES += libv4l +else +GST1_PLUGINS_GOOD_CONF_OPTS += --without-libv4l2 +endif + ifeq ($(BR2_PACKAGE_ORC),y) GST1_PLUGINS_GOOD_CONF_OPTS += --enable-orc GST1_PLUGINS_GOOD_DEPENDENCIES += orc @@ -320,13 +327,11 @@ ifeq ($(BR2_PACKAGE_XORG7),y) GST1_PLUGINS_GOOD_DEPENDENCIES += xlib_libX11 xlib_libXext xlib_libXv GST1_PLUGINS_GOOD_CONF_OPTS += \ --enable-x \ - --enable-xshm \ $(if $(BR2_PACKAGE_XLIB_LIBXFIXES),xlib_libXfixes) \ $(if $(BR2_PACKAGE_XLIB_LIBXDAMAGE),xlib_libXdamage) else GST1_PLUGINS_GOOD_CONF_OPTS += \ - --disable-x \ - --disable-xshm + --disable-x endif ifeq ($(BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_CAIRO),y) diff --git a/package/gstreamer1/gst1-plugins-ugly/Config.in b/package/gstreamer1/gst1-plugins-ugly/Config.in index f33e2588d9b..fbcb128c22e 100644 --- a/package/gstreamer1/gst1-plugins-ugly/Config.in +++ b/package/gstreamer1/gst1-plugins-ugly/Config.in @@ -67,6 +67,12 @@ config BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_MPEG2DEC help LibMpeg2 decoder +config BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_X264 + bool "x264" + select BR2_PACKAGE_X264 + help + x264 encoder + # Note: to get descriptions use the following. # # find . -name 'plugin-*.xml' | xargs grep -m 1 description endif diff --git a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash index a031dc55ed5..54880b704e5 100644 --- a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash +++ b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/gstreamer-devel/2014-December/050904.html -sha256 5cd5e81cf618944f4dc935f1669b2125e8bb2fe9cc7dc8dc15b72237aca49067 gst-plugins-ugly-1.4.5.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-1.6.3.tar.xz.sha256sum +sha256 2fecf7b7c7882f8f62f1900048f4013f98c214fb3d3303d8d812245bb41fd064 gst-plugins-ugly-1.6.3.tar.xz diff --git a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk index daa9e3f7cb8..b42efcb5199 100644 --- a/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk +++ b/package/gstreamer1/gst1-plugins-ugly/gst1-plugins-ugly.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_PLUGINS_UGLY_VERSION = 1.4.5 +GST1_PLUGINS_UGLY_VERSION = 1.6.3 GST1_PLUGINS_UGLY_SOURCE = gst-plugins-ugly-$(GST1_PLUGINS_UGLY_VERSION).tar.xz GST1_PLUGINS_UGLY_SITE = http://gstreamer.freedesktop.org/src/gst-plugins-ugly GST1_PLUGINS_UGLY_LICENSE_FILES = COPYING @@ -13,14 +13,13 @@ GST1_PLUGINS_UGLY_LICENSE = LGPLv2.1+ GST1_PLUGINS_UGLY_CONF_OPTS = --disable-examples --disable-valgrind -GST_PLUGINS_BAD1_CONF_OPTS += \ +GST1_PLUGINS_UGLY_CONF_OPTS += \ --disable-a52dec \ --disable-amrnb \ --disable-amrwb \ --disable-cdio \ --disable-sidplay \ - --disable-twolame \ - --disable-x264 + --disable-twolame GST1_PLUGINS_UGLY_DEPENDENCIES = gstreamer1 gst1-plugins-base @@ -90,6 +89,14 @@ else GST1_PLUGINS_UGLY_CONF_OPTS += --disable-mpeg2dec endif +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_UGLY_PLUGIN_X264),y) +GST1_PLUGINS_UGLY_CONF_OPTS += --enable-x264 +GST1_PLUGINS_UGLY_DEPENDENCIES += x264 +GST1_PLUGINS_UGLY_HAS_GPL_LICENSE = y +else +GST1_PLUGINS_UGLY_CONF_OPTS += --disable-x264 +endif + # Add GPL license if GPL plugins enabled. ifeq ($(GST1_PLUGINS_UGLY_HAS_GPL_LICENSE),y) GST1_PLUGINS_UGLY_LICENSE += GPLv2 diff --git a/package/gstreamer1/gst1-validate/Config.in b/package/gstreamer1/gst1-validate/Config.in index 34ec85ff4a0..a9bb2aa388b 100644 --- a/package/gstreamer1/gst1-validate/Config.in +++ b/package/gstreamer1/gst1-validate/Config.in @@ -3,6 +3,8 @@ config BR2_PACKAGE_GST1_VALIDATE depends on BR2_PACKAGE_PYTHON select BR2_PACKAGE_GST1_PLUGINS_BASE select BR2_PACKAGE_PYTHON_PYEXPAT + # cairo is autodetected but needs PNG support + select BR2_PACKAGE_CAIRO_PNG if BR2_PACKAGE_CAIRO help GstValidate is a tool that allows GStreamer developers to check that the GstElements they write behave the way they diff --git a/package/gstreamer1/gst1-validate/gst1-validate.hash b/package/gstreamer1/gst1-validate/gst1-validate.hash index e2eb3ae65df..c50475ccb0d 100644 --- a/package/gstreamer1/gst1-validate/gst1-validate.hash +++ b/package/gstreamer1/gst1-validate/gst1-validate.hash @@ -1,2 +1,2 @@ -# Hash from http://gstreamer.freedesktop.org/src/gst-validate/gst-validate-1.4.0.tar.xz.sha256sum -sha256 ac30d1041a8cfe5d268439f5cedee7e9753ba49080fc67bff1266581198438d0 gst-validate-1.4.0.tar.xz +# From http://gstreamer.freedesktop.org/src/gst-validate/gst-validate-1.6.0.tar.xz.sha256sum +sha256 3baef8c7b5363293c20314a30afd54629849fc597669991fdcf92303602dafee gst-validate-1.6.0.tar.xz diff --git a/package/gstreamer1/gst1-validate/gst1-validate.mk b/package/gstreamer1/gst1-validate/gst1-validate.mk index 9a9e796aa95..a7d66be4611 100644 --- a/package/gstreamer1/gst1-validate/gst1-validate.mk +++ b/package/gstreamer1/gst1-validate/gst1-validate.mk @@ -4,7 +4,7 @@ # ################################################################################ -GST1_VALIDATE_VERSION = 1.4.0 +GST1_VALIDATE_VERSION = 1.6.0 GST1_VALIDATE_SOURCE = gst-validate-$(GST1_VALIDATE_VERSION).tar.xz GST1_VALIDATE_SITE = http://gstreamer.freedesktop.org/src/gst-validate GST1_VALIDATE_LICENSE = LGPLv2.1+ @@ -12,6 +12,11 @@ GST1_VALIDATE_LICENSE_FILES = COPYING GST1_VALIDATE_CONF_OPTS = --disable-sphinx-doc -GST1_VALIDATE_DEPENDENCIES = gstreamer1 gst1-plugins-base host-python python +GST1_VALIDATE_DEPENDENCIES = \ + gstreamer1 \ + gst1-plugins-base \ + host-python \ + python \ + $(if $(BR2_PACKAGE_CAIRO),cairo) $(eval $(autotools-package)) diff --git a/package/gstreamer1/gstreamer1/Config.in b/package/gstreamer1/gstreamer1/Config.in index 0d8dd626f69..c13f0419134 100644 --- a/package/gstreamer1/gstreamer1/Config.in +++ b/package/gstreamer1/gstreamer1/Config.in @@ -1,3 +1,7 @@ +comment "gstreamer 1.x needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + config BR2_PACKAGE_GSTREAMER1 bool "gstreamer 1.x" depends on BR2_USE_WCHAR # glib2 @@ -49,7 +53,3 @@ config BR2_PACKAGE_GSTREAMER1_INSTALL_TOOLS additional space on the target. endif - -comment "gstreamer 1.x needs a toolchain w/ wchar, threads" - depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/gstreamer1/gstreamer1/gstreamer1.hash b/package/gstreamer1/gstreamer1/gstreamer1.hash index 6ef2fff8e9d..8a88de868cc 100644 --- a/package/gstreamer1/gstreamer1/gstreamer1.hash +++ b/package/gstreamer1/gstreamer1/gstreamer1.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/gstreamer-devel/2014-December/050904.html -sha256 40801aa7f979024526258a0e94707ba42b8ab6f7d2206e56adbc4433155cb0ae gstreamer-1.4.5.tar.xz +# From http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.6.3.tar.xz.sha256sum +sha256 22f9568d67b87cf700a111f381144bd37cb93790a77e4e331db01fe854a37f24 gstreamer-1.6.3.tar.xz diff --git a/package/gstreamer1/gstreamer1/gstreamer1.mk b/package/gstreamer1/gstreamer1/gstreamer1.mk index 7840284b525..b78816012cd 100644 --- a/package/gstreamer1/gstreamer1/gstreamer1.mk +++ b/package/gstreamer1/gstreamer1/gstreamer1.mk @@ -4,17 +4,17 @@ # ################################################################################ -GSTREAMER1_VERSION = 1.4.5 +GSTREAMER1_VERSION = 1.6.3 GSTREAMER1_SOURCE = gstreamer-$(GSTREAMER1_VERSION).tar.xz GSTREAMER1_SITE = http://gstreamer.freedesktop.org/src/gstreamer GSTREAMER1_INSTALL_STAGING = YES GSTREAMER1_LICENSE_FILES = COPYING -GSTREAMER1_LICENSE = LGPLv2+ LGPLv2.1+ +GSTREAMER1_LICENSE = LGPLv2+, LGPLv2.1+ # Checking if unaligned memory access works correctly cannot be done when cross # compiling. For the following architectures there is no information available # in the configure script. -ifeq ($(BR2_arc)$(BR2_xtensa)$(BR2_microblaze),y) +ifeq ($(BR2_arc)$(BR2_xtensa)$(BR2_microblaze)$(BR2_nios2),y) GSTREAMER1_CONF_ENV = as_cv_unaligned_access=no endif ifeq ($(BR2_aarch64),y) @@ -36,4 +36,14 @@ GSTREAMER1_CONF_OPTS = \ GSTREAMER1_DEPENDENCIES = libglib2 host-pkgconf host-bison host-flex +# gstreamer-1.6 changed the location of its gstconfig.h file, +# and unfortunately, not all (by far!) consumers have been +# updated to look in the correct location. +# Add a symlink to the legacy location +define GSTREAMER1_LEGACY_CGSTCONFIG_H + cd $(STAGING_DIR)/usr/include/gstreamer-1.0/gst && \ + ln -sf ../../../lib/gstreamer-1.0/include/gst/gstconfig.h . +endef +GSTREAMER1_POST_INSTALL_STAGING_HOOKS += GSTREAMER1_LEGACY_CGSTCONFIG_H + $(eval $(autotools-package)) diff --git a/package/gtest/gtest.mk b/package/gtest/gtest.mk index 562acf015e5..da08621029e 100644 --- a/package/gtest/gtest.mk +++ b/package/gtest/gtest.mk @@ -4,6 +4,7 @@ # ################################################################################ +# Make sure this remains the same version as the gmock one GTEST_VERSION = 1.7.0 GTEST_SOURCE = gtest-$(GTEST_VERSION).zip GTEST_SITE = http://googletest.googlecode.com/files diff --git a/package/gtkmm3/Config.in b/package/gtkmm3/Config.in new file mode 100644 index 00000000000..238a8cdeba6 --- /dev/null +++ b/package/gtkmm3/Config.in @@ -0,0 +1,29 @@ +config BR2_PACKAGE_GTKMM3 + bool "gtkmm3" + # Broken on existing external/internal nios2 toolchains, + # revisit when they are upgraded with at least Binutils >= 2.26 + # and GCC >= 5.3. + # https://sourceware.org/bugzilla/show_bug.cgi?id=19405 + depends on !BR2_nios2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pangomm, libgtk3 -> pango -> harfbuzz + depends on BR2_INSTALL_LIBSTDCPP # glibmm, libpangomm -> glibmm/pango + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_TOOLCHAIN_HAS_THREADS # *mm/libgtk3 -> libglib2 + depends on BR2_USE_MMU # *mm/libgtk3 -> libglib2 + depends on BR2_USE_WCHAR # *mm/libgtk3 -> libglib2 + select BR2_PACKAGE_ATKMM + select BR2_PACKAGE_CAIROMM + select BR2_PACKAGE_GLIBMM + select BR2_PACKAGE_LIBGTK3 + select BR2_PACKAGE_LIBSIGC + select BR2_PACKAGE_PANGOMM + help + The gtkmm3 package is a set of C++ bindings for GTK 3. + + http://www.gtkmm.org/ + +comment "gtkmm3 needs a toolchain w/ C++, wchar, threads, gcc >= 4.8" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR \ + || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/gtkmm3/gtkmm3.hash b/package/gtkmm3/gtkmm3.hash new file mode 100644 index 00000000000..49e2f76bd76 --- /dev/null +++ b/package/gtkmm3/gtkmm3.hash @@ -0,0 +1,2 @@ +# From http://ftp.gnome.org/pub/GNOME/sources/gtkmm/3.14/gtkmm-3.14.0.sha256sum +sha256 d9f528a62c6ec226fa08287c45c7465b2dce5aae5068e9ac48d30a64a378e48b gtkmm-3.14.0.tar.xz diff --git a/package/gtkmm3/gtkmm3.mk b/package/gtkmm3/gtkmm3.mk new file mode 100644 index 00000000000..034cdf9cae8 --- /dev/null +++ b/package/gtkmm3/gtkmm3.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# gtkmm3 +# +################################################################################ + +GTKMM3_VERSION_MAJOR = 3.14 +GTKMM3_VERSION = $(GTKMM3_VERSION_MAJOR).0 +GTKMM3_SOURCE = gtkmm-$(GTKMM3_VERSION).tar.xz +GTKMM3_SITE = http://ftp.gnome.org/pub/gnome/sources/gtkmm/$(GTKMM3_VERSION_MAJOR) +GTKMM3_LICENSE = LGPLv2.1+ (library), GPLv2+ (tools) +GTKMM3_LICENSE_FILES = COPYING COPYING.tools +GTKMM3_INSTALL_STAGING = YES +GTKMM3_DEPENDENCIES = atkmm cairomm glibmm libgtk3 libsigc pangomm host-pkgconf + +# Explicit use of C++11 to build with newer *mm dependencies that require C++11. +# +# The most recent release of *mm-related libraries require C++11. This project's +# dependencies (ex. libpangomm) are updated and enforce the C++11 standard. +# Since the gtkmm3 must match the libgtk3 version, the useable version of +# gtkmm3 does not have this enforcement; however, to build with the most +# recent version of the dependencies, gtkmm3 requires to be built with +# `-std=c++11`. The following enforces C++11 standard. When libgtk3 is updated, +# followed by a gtkmm3 update, this flag modification can be removed. +GTKMM3_CONF_ENV = CPPFLAGS="$(TARGET_CPPFLAGS) -std=c++11" + +$(eval $(autotools-package)) diff --git a/package/guile/Config.in b/package/guile/Config.in index d24f3184486..b3f744ea41e 100644 --- a/package/guile/Config.in +++ b/package/guile/Config.in @@ -1,8 +1,10 @@ config BR2_PACKAGE_GUILE bool "guile" + depends on !BR2_TOOLCHAIN_USES_MUSL # no strtol_l depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_PACKAGE_LIBATOMIC_ARCH_SUPPORTS # bdwgc + depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS # bdwgc depends on BR2_USE_WCHAR # libunistring + depends on !BR2_STATIC_LIBS select BR2_PACKAGE_LIBUNISTRING select BR2_PACKAGE_LIBFFI select BR2_PACKAGE_GMP @@ -14,6 +16,7 @@ config BR2_PACKAGE_GUILE http://www.gnu.org/software/guile -comment "guile needs a toolchain w/ threads, wchar" - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR +comment "guile needs a uClibc or (e)glibc toolchain w/ threads, wchar, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \ + BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/guile/guile.mk b/package/guile/guile.mk index fed79a64f07..0e0b1a34c18 100644 --- a/package/guile/guile.mk +++ b/package/guile/guile.mk @@ -28,6 +28,20 @@ GUILE_CFLAGS = \ -DHAVE_GC_GET_FREE_SPACE_DIVISOR \ -DHAVE_GC_SET_FINALIZE_ON_DEMAND +ifeq ($(BR2_STATIC_LIBS),y) +GUILE_CFLAGS += -DGC_NO_DLOPEN +endif + +# It can use readline, but on the condition that it was build against +# ncurses. If both aren't present disable readline support since the +# host readline/ncurses support can poison the build. +ifeq ($(BR2_PACKAGE_NCURSES)$(BR2_PACKAGE_READLINE),yy) +GUILE_CONF_OPTS += --with-libreadline-prefix=$(STAGING_DIR)/usr +GUILE_DEPENDENCIES += readline +else +GUILE_CONF_OPTS += --without-libreadline-prefix +endif + GUILE_CONF_ENV += GUILE_FOR_BUILD=$(HOST_DIR)/usr/bin/guile \ CFLAGS="$(TARGET_CFLAGS) $(GUILE_CFLAGS)" diff --git a/package/gupnp-av/Config.in b/package/gupnp-av/Config.in new file mode 100644 index 00000000000..5320b82b5a4 --- /dev/null +++ b/package/gupnp-av/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_GUPNP_AV + bool "gupnp-av" + depends on BR2_USE_WCHAR # glib2, gupnp + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2, gupnp + depends on BR2_USE_MMU # glib2, gupnp + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_GUPNP + select BR2_PACKAGE_LIBXML2 + help + GUPnP-AV is a collection of helpers for building AV (audio/video) + applications using GUPnP. + + http://www.gupnp.org/ + +comment "gupnp-av needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/gupnp-av/gupnp-av.hash b/package/gupnp-av/gupnp-av.hash new file mode 100644 index 00000000000..0101ed4f5d5 --- /dev/null +++ b/package/gupnp-av/gupnp-av.hash @@ -0,0 +1,2 @@ +# Hash from: http://ftp.gnome.org/pub/gnome/sources/gupnp-av/0.11/gupnp-av-0.11.6.sha256sum: +sha256 401991336babb18c4ebed16e75e0b4d3e5848cff7bb878bbfd54a5d15203c4cc gupnp-av-0.11.6.tar.xz diff --git a/package/gupnp-av/gupnp-av.mk b/package/gupnp-av/gupnp-av.mk new file mode 100644 index 00000000000..6360c93cccd --- /dev/null +++ b/package/gupnp-av/gupnp-av.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# gupnp-av +# +################################################################################ + +GUPNP_AV_VERSION_MAJOR = 0.11 +GUPNP_AV_VERSION = $(GUPNP_AV_VERSION_MAJOR).6 +GUPNP_AV_SOURCE = gupnp-av-$(GUPNP_AV_VERSION).tar.xz +GUPNP_AV_SITE = http://ftp.gnome.org/pub/gnome/sources/gupnp-av/$(GUPNP_AV_VERSION_MAJOR) +GUPNP_AV_LICENSE = LGPLv2+ +GUPNP_AV_LICENSE_FILES = COPYING +GUPNP_AV_INSTALL_STAGING = YES +GUPNP_AV_DEPENDENCIES = host-pkgconf libglib2 libxml2 gupnp + +$(eval $(autotools-package)) diff --git a/package/gupnp/Config.in b/package/gupnp/Config.in new file mode 100644 index 00000000000..a5ecab771e0 --- /dev/null +++ b/package/gupnp/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_GUPNP + bool "gupnp" + depends on BR2_USE_WCHAR # glib2, gssdp, util-linux + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2, gssdp + depends on BR2_USE_MMU # glib2, gssdp + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_GSSDP + select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + GUPnP implements the UPnP specification: resource announcement + and discovery, description, control, event notification, and + presentation. + + http://www.gupnp.org/ + +comment "gupnp needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/gupnp/gupnp.hash b/package/gupnp/gupnp.hash new file mode 100644 index 00000000000..597cb4224cd --- /dev/null +++ b/package/gupnp/gupnp.hash @@ -0,0 +1,2 @@ +# Hash from: http://ftp.gnome.org/pub/gnome/sources/gupnp/0.19/gupnp-0.19.4.sha256sum: +sha256 3c1fb2873cb2f8f152b9d49598d55b15b8f3c1096a03ade46ce69694798fb243 gupnp-0.19.4.tar.xz diff --git a/package/gupnp/gupnp.mk b/package/gupnp/gupnp.mk new file mode 100644 index 00000000000..85faaa47347 --- /dev/null +++ b/package/gupnp/gupnp.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# gupnp +# +################################################################################ + +GUPNP_VERSION_MAJOR = 0.19 +GUPNP_VERSION = $(GUPNP_VERSION_MAJOR).4 +GUPNP_SOURCE = gupnp-$(GUPNP_VERSION).tar.xz +GUPNP_SITE = http://ftp.gnome.org/pub/gnome/sources/gupnp/$(GUPNP_VERSION_MAJOR) +GUPNP_LICENSE = LGPLv2+ +GUPNP_LICENSE_FILES = COPYING +GUPNP_INSTALL_STAGING = YES +GUPNP_DEPENDENCIES = host-pkgconf libglib2 libxml2 gssdp util-linux + +$(eval $(autotools-package)) diff --git a/package/gvfs/Config.in b/package/gvfs/Config.in index 5e019182192..44a75210e52 100644 --- a/package/gvfs/Config.in +++ b/package/gvfs/Config.in @@ -13,7 +13,7 @@ config BR2_PACKAGE_GVFS all applications using the gio API. It also supports exposing the gvfs mounts to non-gio applications using fuse. - http://en.wikipedia.org/wiki/GVFS + https://wiki.gnome.org/action/show/Projects/gvfs comment "gvfs needs a toolchain w/ wchar, threads" depends on BR2_USE_MMU diff --git a/package/gvfs/gvfs.hash b/package/gvfs/gvfs.hash index df217909350..19e820a5067 100644 --- a/package/gvfs/gvfs.hash +++ b/package/gvfs/gvfs.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/GNOME/sources/gvfs/1.16/gvfs-1.16.2.sha256sum -sha256 6b0e62d27fe73844efb536689057b762fbce085984800c83395371306ec547f1 gvfs-1.16.2.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/gvfs/1.26/gvfs-1.26.2.sha256sum +sha256 695b6e0f3de5ac2cb4d188917edef3f13299328150a2413f1a7131d9b2d48d18 gvfs-1.26.2.tar.xz diff --git a/package/gvfs/gvfs.mk b/package/gvfs/gvfs.mk index 4242e801bf9..48d2b506c01 100644 --- a/package/gvfs/gvfs.mk +++ b/package/gvfs/gvfs.mk @@ -4,7 +4,7 @@ # ################################################################################ -GVFS_VERSION_MAJOR = 1.16 +GVFS_VERSION_MAJOR = 1.26 GVFS_VERSION = $(GVFS_VERSION_MAJOR).2 GVFS_SOURCE = gvfs-$(GVFS_VERSION).tar.xz GVFS_SITE = http://ftp.gnome.org/pub/GNOME/sources/gvfs/$(GVFS_VERSION_MAJOR) @@ -17,14 +17,21 @@ GVFS_LICENSE_FILES = COPYING # build system from searching the host paths. GVFS_CONF_ENV = ac_cv_path_LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config +# Most of these are missing library support GVFS_CONF_OPTS = \ - --disable-gconf \ - --disable-cdda \ - --disable-obexftp \ - --disable-gphoto2 \ - --disable-keyring \ - --disable-bash-completion \ - --disable-hal + --disable-afc \ + --disable-bash-completion \ + --disable-cdda \ + --disable-gconf \ + --disable-gcr \ + --disable-gdu \ + --disable-goa \ + --disable-google \ + --disable-gphoto2 \ + --disable-hal \ + --disable-keyring \ + --disable-libmtp \ + --disable-udisks2 ifeq ($(BR2_PACKAGE_AVAHI),y) GVFS_DEPENDENCIES += avahi @@ -33,13 +40,31 @@ else GVFS_CONF_OPTS += --disable-avahi endif +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +GVFS_DEPENDENCIES += udev +endif + +ifeq ($(BR2_PACKAGE_LIBGUDEV),y) +GVFS_DEPENDENCIES += libgudev +endif + ifeq ($(BR2_PACKAGE_LIBARCHIVE),y) GVFS_DEPENDENCIES += libarchive -GVFS_CONF_OPTS += --enable-archive +GVFS_CONF_OPTS += \ + --enable-archive \ + --with-archive-includes=$(STAGING_DIR)/usr \ + --with-archive-libs=$(STAGING_DIR)/usr else GVFS_CONF_OPTS += --disable-archive endif +ifeq ($(BR2_PACKAGE_LIBBLURAY),y) +GVFS_DEPENDENCIES += libbluray +GVFS_CONF_OPTS += --enable-bluray +else +GVFS_CONF_OPTS += --disable-bluray +endif + ifeq ($(BR2_PACKAGE_LIBFUSE),y) GVFS_DEPENDENCIES += libfuse GVFS_CONF_OPTS += --enable-fuse @@ -47,8 +72,26 @@ else GVFS_CONF_OPTS += --disable-fuse endif +# AFP support is anon-only without libgcrypt which isn't very useful ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) +GVFS_CONF_OPTS += --enable-afp GVFS_DEPENDENCIES += libgcrypt +else +GVFS_CONF_OPTS += --disable-afp +endif + +ifeq ($(BR2_PACKAGE_LIBGTK3),y) +GVFS_CONF_OPTS += --enable-gtk +GVFS_DEPENDENCIES += libgtk3 +else +GVFS_CONF_OPTS += --disable-gtk +endif + +ifeq ($(BR2_PACKAGE_LIBNFS),y) +GVFS_CONF_OPTS += --enable-nfs +GVFS_DEPENDENCIES += libnfs +else +GVFS_CONF_OPTS += --disable-nfs endif ifeq ($(BR2_PACKAGE_LIBSOUP),y) @@ -69,6 +112,12 @@ else GVFS_CONF_OPTS += --disable-samba endif +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +GVFS_DEPENDENCIES += systemd +else +GVFS_CONF_OPTS += --disable-libsystemd-login +endif + define GVFS_REMOVE_USELESS_BINARY rm $(TARGET_DIR)/usr/bin/gvfs-less endef diff --git a/package/gzip/gzip.mk b/package/gzip/gzip.mk index 4ae2ae03dae..1b2f678fe0e 100644 --- a/package/gzip/gzip.mk +++ b/package/gzip/gzip.mk @@ -13,5 +13,6 @@ GZIP_CONF_OPTS = --exec-prefix=/ GZIP_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) GZIP_LICENSE = GPLv3+ GZIP_LICENSE_FILES = COPYING +GZIP_CONF_ENV += gl_cv_func_fflush_stdin=yes $(eval $(autotools-package)) diff --git a/package/harfbuzz/0001-fix-static-linking-with-icu-uc.patch b/package/harfbuzz/0001-fix-static-linking-with-icu-uc.patch deleted file mode 100644 index dd64393c639..00000000000 --- a/package/harfbuzz/0001-fix-static-linking-with-icu-uc.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 5752d3f17072aa97a056dc081e402f43e1a3ba32 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Wed, 22 Jul 2015 23:26:23 +0200 -Subject: [PATCH] fix static linking with icu-uc - -When linking test-unicode statically it needs $(ICU_LIBS) -which contains all required flags. -Especially -lstdc++. - -Fixes: -http://autobuild.buildroot.net/results/210/2107f9dfb39eeb6559fb4271c7af8b39aef521ca/ - -Signed-off-by: Romain Naour ---- - test/api/Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/test/api/Makefile.am b/test/api/Makefile.am -index 4ff14fa..314a09f 100644 ---- a/test/api/Makefile.am -+++ b/test/api/Makefile.am -@@ -34,7 +34,7 @@ test_unicode_CPPFLAGS += $(GLIB_CFLAGS) - endif - if HAVE_ICU - test_unicode_CPPFLAGS += $(ICU_CFLAGS) --test_unicode_LDADD += $(top_builddir)/src/libharfbuzz-icu.la -+test_unicode_LDADD += $(top_builddir)/src/libharfbuzz-icu.la $(ICU_LIBS) - endif - - --- -2.4.3 - diff --git a/package/harfbuzz/Config.in b/package/harfbuzz/Config.in index 7a864e9b7a2..a6db9840ccf 100644 --- a/package/harfbuzz/Config.in +++ b/package/harfbuzz/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_HARFBUZZ bool "harfbuzz" depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_SYNC_4 help HarfBuzz is an OpenType text shaping engine @@ -10,4 +11,5 @@ config BR2_PACKAGE_HARFBUZZ glib2 and icu packages if they are selected. comment "harfbuzz needs a toolchain w/ C++" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/harfbuzz/harfbuzz.hash b/package/harfbuzz/harfbuzz.hash index daf495cb3c7..67050a78b7a 100644 --- a/package/harfbuzz/harfbuzz.hash +++ b/package/harfbuzz/harfbuzz.hash @@ -1,2 +1,2 @@ -# From http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-1.0.1.tar.bz2.sha256 -sha256 32a1a7ad584a2f2cfba5c1d234d046c0521e86e7a21d403e15e89aa509ef0ea8 harfbuzz-1.0.1.tar.bz2 +# From http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-1.1.3.tar.bz2.sha256 +sha256 d93d7cb7979c32672e902fdfa884599e63f07f2fa5b06c66147d20c516d4b8f7 harfbuzz-1.1.3.tar.bz2 diff --git a/package/harfbuzz/harfbuzz.mk b/package/harfbuzz/harfbuzz.mk index 1d10a94fd61..c704f3262ad 100644 --- a/package/harfbuzz/harfbuzz.mk +++ b/package/harfbuzz/harfbuzz.mk @@ -4,30 +4,27 @@ # ################################################################################ -HARFBUZZ_VERSION = 1.0.1 +HARFBUZZ_VERSION = 1.1.3 HARFBUZZ_SITE = http://www.freedesktop.org/software/harfbuzz/release HARFBUZZ_SOURCE = harfbuzz-$(HARFBUZZ_VERSION).tar.bz2 HARFBUZZ_LICENSE = MIT, ISC (ucdn library) HARFBUZZ_LICENSE_FILES = COPYING src/hb-ucdn/COPYING HARFBUZZ_INSTALL_STAGING = YES -HARFBUZZ_CONF_OPTS = --without-coretext --without-uniscribe --without-graphite2 +HARFBUZZ_CONF_OPTS = --with-coretext=no --with-uniscribe=no # freetype & glib2 support required by host-pango HOST_HARFBUZZ_DEPENDENCIES = \ host-freetype \ host-libglib2 HOST_HARFBUZZ_CONF_OPTS = \ - --without-corext \ - --without-uniscribe \ - --without-graphite2 \ + --with-coretext=no \ + --with-uniscribe=no \ + --with-graphite2=no \ --with-cairo=no \ --with-icu=no \ --with-freetype=yes \ --with-glib=yes -# beta libtool version and patching Makefile.am -HARFBUZZ_AUTORECONF = YES - ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) # forgets to link test programs with -pthread breaking static link HARFBUZZ_CONF_ENV = LDFLAGS="$(TARGET_LDFLAGS) -pthread" @@ -47,6 +44,13 @@ else HARFBUZZ_CONF_OPTS += --with-freetype=no endif +ifeq ($(BR2_PACKAGE_GRAPHITE2),y) +HARFBUZZ_DEPENDENCIES += graphite2 +HARFBUZZ_CONF_OPTS += --with-graphite2=yes +else +HARFBUZZ_CONF_OPTS += --with-graphite2=no +endif + ifeq ($(BR2_PACKAGE_LIBGLIB2),y) HARFBUZZ_DEPENDENCIES += libglib2 HARFBUZZ_CONF_OPTS += --with-glib=yes diff --git a/package/haserl/Config.in b/package/haserl/Config.in index 1620d725ab8..9ccc392d358 100644 --- a/package/haserl/Config.in +++ b/package/haserl/Config.in @@ -11,6 +11,6 @@ config BR2_PACKAGE_HASERL config BR2_PACKAGE_HASERL_WITH_LUA bool "Lua support" depends on BR2_PACKAGE_HASERL - select BR2_PACKAGE_LUA + depends on BR2_PACKAGE_LUA help Enable Lua support for haserl diff --git a/package/haveged/S21haveged b/package/haveged/S21haveged index 1918b2763ea..3e6ce8678ff 100755 --- a/package/haveged/S21haveged +++ b/package/haveged/S21haveged @@ -4,12 +4,12 @@ case "$1" in start) - echo -n "Starting haveged: " + printf "Starting haveged: " start-stop-daemon -S -x /usr/sbin/haveged -- -w 1024 -r 0 [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping haveged: " + printf "Stopping haveged: " start-stop-daemon -K -x /usr/sbin/haveged [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/haveged/haveged.mk b/package/haveged/haveged.mk index c68f76633c5..66d69a6d7ae 100644 --- a/package/haveged/haveged.mk +++ b/package/haveged/haveged.mk @@ -9,6 +9,10 @@ HAVEGED_SITE = http://www.issihosts.com/haveged HAVEGED_LICENSE = GPLv3+ HAVEGED_LICENSE_FILES = COPYING +ifeq ($(BR2_sparc_v8)$(BR2_sparc_leon3),y) +HAVEGED_CONF_OPTS += --enable-clock_gettime=yes +endif + define HAVEGED_INSTALL_INIT_SYSV $(INSTALL) -m 755 -D package/haveged/S21haveged \ $(TARGET_DIR)/etc/init.d/S21haveged diff --git a/package/haveged/haveged.service b/package/haveged/haveged.service index d87fe5bc977..91035c67111 100644 --- a/package/haveged/haveged.service +++ b/package/haveged/haveged.service @@ -3,7 +3,7 @@ Description=Entropy Harvesting Daemon Documentation=man:haveged(8) [Service] -ExecStart=/usr/bin/haveged -F -w 1024 -v 1 +ExecStart=/usr/sbin/haveged -F -w 1024 -v 1 SuccessExitStatus=143 [Install] diff --git a/package/heirloom-mailx/0001-Patched-out-SSL2-support-since-it-is-no-longer-suppo.patch b/package/heirloom-mailx/0001-Patched-out-SSL2-support-since-it-is-no-longer-suppo.patch new file mode 100644 index 00000000000..db5b19ee520 --- /dev/null +++ b/package/heirloom-mailx/0001-Patched-out-SSL2-support-since-it-is-no-longer-suppo.patch @@ -0,0 +1,42 @@ +From: Hilko Bengen +Date: Wed, 27 Apr 2011 00:18:42 +0200 +Subject: Patched out SSL2 support since it is no longer supported by OpenSSL. + +Now that openssl has dropped SSLv2 support we need to patch it out. +Patch picked up from debian patchseries 5. + +Signed-off-by: Gustavo Zacarias + +--- + mailx.1 | 2 +- + openssl.c | 4 +--- + 2 files changed, 2 insertions(+), 4 deletions(-) + +diff --git a/mailx.1 b/mailx.1 +index 417ea04..a02e430 100644 +--- a/mailx.1 ++++ b/mailx.1 +@@ -3575,7 +3575,7 @@ Only applicable if SSL/TLS support is built using OpenSSL. + .TP + .B ssl-method + Selects a SSL/TLS protocol version; +-valid values are `ssl2', `ssl3', and `tls1'. ++valid values are `ssl3', and `tls1'. + If unset, the method is selected automatically, + if possible. + .TP +diff --git a/openssl.c b/openssl.c +index b4e33fc..44fe4e5 100644 +--- a/openssl.c ++++ b/openssl.c +@@ -216,9 +216,7 @@ ssl_select_method(const char *uhp) + + cp = ssl_method_string(uhp); + if (cp != NULL) { +- if (equal(cp, "ssl2")) +- method = SSLv2_client_method(); +- else if (equal(cp, "ssl3")) ++ if (equal(cp, "ssl3")) + method = SSLv3_client_method(); + else if (equal(cp, "tls1")) + method = TLSv1_client_method(); diff --git a/package/hiawatha/Config.in b/package/hiawatha/Config.in index 53336972ada..68e47fde87c 100644 --- a/package/hiawatha/Config.in +++ b/package/hiawatha/Config.in @@ -1,12 +1,14 @@ -comment "hiawatha needs a toolchain w/ threads" +comment "hiawatha needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS config BR2_PACKAGE_HIAWATHA bool "hiawatha" # needs fork() depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_ZLIB help Hiawatha is a webserver for Unix and has been built with security in mind. This resulted in a highly secure @@ -27,7 +29,7 @@ config BR2_PACKAGE_HIAWATHA if BR2_PACKAGE_HIAWATHA config BR2_PACKAGE_HIAWATHA_SSL - bool "hiawatha SSL support" - select BR2_PACKAGE_POLARSSL + bool "hiawatha TLS support" + select BR2_PACKAGE_MBEDTLS endif diff --git a/package/hiawatha/hiawatha.hash b/package/hiawatha/hiawatha.hash index a9ac716de08..af59e9f59d2 100644 --- a/package/hiawatha/hiawatha.hash +++ b/package/hiawatha/hiawatha.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 5d9cdec51c618bb3efab747030e593d9bd49dfaf3236254c8e0cb60715716dbf hiawatha-9.2.tar.gz +sha256 a39d1f771d818025538bd1231f42001bf29a1ebf55ce3d82afb7305cc251dd0e hiawatha-10.0.tar.gz diff --git a/package/hiawatha/hiawatha.mk b/package/hiawatha/hiawatha.mk index 91c972ddd74..411853bda85 100644 --- a/package/hiawatha/hiawatha.mk +++ b/package/hiawatha/hiawatha.mk @@ -4,16 +4,17 @@ # ################################################################################ -HIAWATHA_VERSION = 9.2 +HIAWATHA_VERSION = 10.0 HIAWATHA_SITE = http://www.hiawatha-webserver.org/files +HIAWATHA_DEPENDENCIES = zlib HIAWATHA_LICENSE = GPLv2 HIAWATHA_LICENSE_FILES = LICENSE ifeq ($(BR2_PACKAGE_HIAWATHA_SSL),y) -HIAWATHA_CONF_OPTS += -DUSE_SYSTEM_POLARSSL=ON -HIAWATHA_DEPENDENCIES += polarssl +HIAWATHA_CONF_OPTS += -DUSE_SYSTEM_MBEDTLS=ON +HIAWATHA_DEPENDENCIES += mbedtls else -HIAWATHA_CONF_OPTS += -DENABLE_SSL=OFF +HIAWATHA_CONF_OPTS += -DENABLE_TLS=OFF endif HIAWATHA_CONF_OPTS += \ diff --git a/package/hidapi/0001-hidtest-dont-use-a-C-source-file-since-it-s-pure-C.patch b/package/hidapi/0001-hidtest-dont-use-a-C-source-file-since-it-s-pure-C.patch new file mode 100644 index 00000000000..3ea4fdb54b1 --- /dev/null +++ b/package/hidapi/0001-hidtest-dont-use-a-C-source-file-since-it-s-pure-C.patch @@ -0,0 +1,47 @@ +From 2fb04c2245167e247b95400112b5dbea12fcb206 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 30 Dec 2015 20:02:29 +0100 +Subject: [PATCH] hidtest: dont' use a C++ source file, since it's pure C + +This allows to build the test program with toolchains that don't have +C++ support. + +Signed-off-by: Thomas Petazzoni +--- + hidtest/Makefile.am | 6 +++--- + hidtest/{hidtest.cpp => hidtest.c} | 0 + 2 files changed, 3 insertions(+), 3 deletions(-) + rename hidtest/{hidtest.cpp => hidtest.c} (100%) + +diff --git a/hidtest/Makefile.am b/hidtest/Makefile.am +index d278644..5f52c3f 100644 +--- a/hidtest/Makefile.am ++++ b/hidtest/Makefile.am +@@ -4,17 +4,17 @@ AM_CPPFLAGS = -I$(top_srcdir)/hidapi/ + if OS_LINUX + noinst_PROGRAMS = hidtest-libusb hidtest-hidraw + +-hidtest_hidraw_SOURCES = hidtest.cpp ++hidtest_hidraw_SOURCES = hidtest.c + hidtest_hidraw_LDADD = $(top_builddir)/linux/libhidapi-hidraw.la + +-hidtest_libusb_SOURCES = hidtest.cpp ++hidtest_libusb_SOURCES = hidtest.c + hidtest_libusb_LDADD = $(top_builddir)/libusb/libhidapi-libusb.la + else + + # Other OS's + noinst_PROGRAMS = hidtest + +-hidtest_SOURCES = hidtest.cpp ++hidtest_SOURCES = hidtest.c + hidtest_LDADD = $(top_builddir)/$(backend)/libhidapi.la + + endif +diff --git a/hidtest/hidtest.cpp b/hidtest/hidtest.c +similarity index 100% +rename from hidtest/hidtest.cpp +rename to hidtest/hidtest.c +-- +2.6.4 + diff --git a/package/hidapi/Config.in b/package/hidapi/Config.in new file mode 100644 index 00000000000..5119aac93d5 --- /dev/null +++ b/package/hidapi/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_HIDAPI + bool "hidapi" + depends on BR2_PACKAGE_HAS_UDEV + depends on BR2_TOOLCHAIN_HAS_THREADS # libusb + select BR2_PACKAGE_LIBUSB + select BR2_PACKAGE_LIBGUDEV + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + help + HIDAPI is a multi-platform library which allows an application + to interface with USB and Bluetooth HID-Class devices on + Windows, Linux, and Mac OS X. + + http://www.signal11.us/oss/hidapi/ + +comment "hidapi needs udev /dev management and a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_HAS_UDEV diff --git a/package/hidapi/hidapi.hash b/package/hidapi/hidapi.hash new file mode 100644 index 00000000000..ba00df2e901 --- /dev/null +++ b/package/hidapi/hidapi.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 33e206f5e145fc1bc6aeb55084d71b55d686533d23ad5bb762746ceba81e728b hidapi-d17db57b9d4354752e0af42f5f33007a42ef2906.tar.gz diff --git a/package/hidapi/hidapi.mk b/package/hidapi/hidapi.mk new file mode 100644 index 00000000000..270836c6c13 --- /dev/null +++ b/package/hidapi/hidapi.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# hidapi +# +################################################################################ + +# Use master version as the current stable is very old and some bugs +# have been fixed since then. +HIDAPI_VERSION = d17db57b9d4354752e0af42f5f33007a42ef2906 +HIDAPI_SITE = $(call github,signal11,hidapi,$(HIDAPI_VERSION)) +HIDAPI_INSTALL_STAGING = YES +# No configure provided, so we need to autoreconf. +HIDAPI_AUTORECONF = YES +HIDAPI_LICENSE = GPLv3 or BSD-3c or HIDAPI license +HIDAPI_LICENSE_FILES = LICENSE.txt LICENSE-gpl3.txt LICENSE-bsd.txt LICENSE-orig.txt + +HIDAPI_DEPENDENCIES = libusb libgudev + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +HIDAPI_DEPENDENCIES += libiconv +HIDAPI_CONF_ENV += LIBS="-liconv" +endif + +$(eval $(autotools-package)) diff --git a/package/hostapd/0001-EAP-pwd-peer-Fix-last-fragment-length-validation.patch b/package/hostapd/0001-EAP-pwd-peer-Fix-last-fragment-length-validation.patch new file mode 100644 index 00000000000..82c26398b69 --- /dev/null +++ b/package/hostapd/0001-EAP-pwd-peer-Fix-last-fragment-length-validation.patch @@ -0,0 +1,54 @@ +From 8057821706784608b828e769ccefbced95591e50 Mon Sep 17 00:00:00 2001 +From: Jouni Malinen +Date: Sun, 1 Nov 2015 18:18:17 +0200 +Subject: [PATCH] EAP-pwd peer: Fix last fragment length validation + +All but the last fragment had their length checked against the remaining +room in the reassembly buffer. This allowed a suitably constructed last +fragment frame to try to add extra data that would go beyond the buffer. +The length validation code in wpabuf_put_data() prevents an actual +buffer write overflow from occurring, but this results in process +termination. (CVE-2015-5315) + +Signed-off-by: Jouni Malinen +--- + src/eap_peer/eap_pwd.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/src/eap_peer/eap_pwd.c b/src/eap_peer/eap_pwd.c +index 1f78544..75ceef1 100644 +--- a/src/eap_peer/eap_pwd.c ++++ b/src/eap_peer/eap_pwd.c +@@ -903,7 +903,7 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, + /* + * buffer and ACK the fragment + */ +- if (EAP_PWD_GET_MORE_BIT(lm_exch)) { ++ if (EAP_PWD_GET_MORE_BIT(lm_exch) || data->in_frag_pos) { + data->in_frag_pos += len; + if (data->in_frag_pos > wpabuf_size(data->inbuf)) { + wpa_printf(MSG_INFO, "EAP-pwd: Buffer overflow attack " +@@ -916,7 +916,8 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, + return NULL; + } + wpabuf_put_data(data->inbuf, pos, len); +- ++ } ++ if (EAP_PWD_GET_MORE_BIT(lm_exch)) { + resp = eap_msg_alloc(EAP_VENDOR_IETF, EAP_TYPE_PWD, + EAP_PWD_HDR_SIZE, + EAP_CODE_RESPONSE, eap_get_id(reqData)); +@@ -930,10 +931,8 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, + * we're buffering and this is the last fragment + */ + if (data->in_frag_pos) { +- wpabuf_put_data(data->inbuf, pos, len); + wpa_printf(MSG_DEBUG, "EAP-pwd: Last fragment, %d bytes", + (int) len); +- data->in_frag_pos += len; + pos = wpabuf_head_u8(data->inbuf); + len = data->in_frag_pos; + } +-- +1.9.1 + diff --git a/package/hostapd/0001-WPS-Fix-HTTP-chunked-transfer-encoding-parser.patch b/package/hostapd/0001-WPS-Fix-HTTP-chunked-transfer-encoding-parser.patch deleted file mode 100644 index d9dccf91166..00000000000 --- a/package/hostapd/0001-WPS-Fix-HTTP-chunked-transfer-encoding-parser.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 5acd23f4581da58683f3cf5e36cb71bbe4070bd7 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Tue, 28 Apr 2015 17:08:33 +0300 -Subject: [PATCH] WPS: Fix HTTP chunked transfer encoding parser - -strtoul() return value may end up overflowing the int h->chunk_size and -resulting in a negative value to be stored as the chunk_size. This could -result in the following memcpy operation using a very large length -argument which would result in a buffer overflow and segmentation fault. - -This could have been used to cause a denial service by any device that -has been authorized for network access (either wireless or wired). This -would affect both the WPS UPnP functionality in a WPS AP (hostapd with -upnp_iface parameter set in the configuration) and WPS ER -(wpa_supplicant with WPS_ER_START control interface command used). - -Validate the parsed chunk length value to avoid this. In addition to -rejecting negative values, we can also reject chunk size that would be -larger than the maximum configured body length. - -Thanks to Kostya Kortchinsky of Google security team for discovering and -reporting this issue. - -Signed-off-by: Jouni Malinen -Signed-off-by: Baruch Siach ---- - src/wps/httpread.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/src/wps/httpread.c b/src/wps/httpread.c -index 2f08f37275c0..d2855e32fd0f 100644 ---- a/src/wps/httpread.c -+++ b/src/wps/httpread.c -@@ -533,6 +533,13 @@ static void httpread_read_handler(int sd, void *eloop_ctx, void *sock_ctx) - if (!isxdigit(*cbp)) - goto bad; - h->chunk_size = strtoul(cbp, NULL, 16); -+ if (h->chunk_size < 0 || -+ h->chunk_size > h->max_bytes) { -+ wpa_printf(MSG_DEBUG, -+ "httpread: Invalid chunk size %d", -+ h->chunk_size); -+ goto bad; -+ } - /* throw away chunk header - * so we have only real data - */ --- -2.1.4 - diff --git a/package/hostapd/0002-AP-WMM-Fix-integer-underflow-in-WMM-Action-frame-par.patch b/package/hostapd/0002-AP-WMM-Fix-integer-underflow-in-WMM-Action-frame-par.patch deleted file mode 100644 index 307297b9e3c..00000000000 --- a/package/hostapd/0002-AP-WMM-Fix-integer-underflow-in-WMM-Action-frame-par.patch +++ /dev/null @@ -1,42 +0,0 @@ -From ef566a4d4f74022e1fdb0a2addfe81e6de9f4aae Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Wed, 29 Apr 2015 02:21:53 +0300 -Subject: [PATCH] AP WMM: Fix integer underflow in WMM Action frame parser - -The length of the WMM Action frame was not properly validated and the -length of the information elements (int left) could end up being -negative. This would result in reading significantly past the stack -buffer while parsing the IEs in ieee802_11_parse_elems() and while doing -so, resulting in segmentation fault. - -This can result in an invalid frame being used for a denial of service -attack (hostapd process killed) against an AP with a driver that uses -hostapd for management frame processing (e.g., all mac80211-based -drivers). - -Thanks to Kostya Kortchinsky of Google security team for discovering and -reporting this issue. - -Signed-off-by: Jouni Malinen -Signed-off-by: Baruch Siach ---- - src/ap/wmm.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/ap/wmm.c b/src/ap/wmm.c -index 6d4177c2a847..314e244bc956 100644 ---- a/src/ap/wmm.c -+++ b/src/ap/wmm.c -@@ -274,6 +274,9 @@ void hostapd_wmm_action(struct hostapd_data *hapd, - return; - } - -+ if (left < 0) -+ return; /* not a valid WMM Action frame */ -+ - /* extract the tspec info element */ - if (ieee802_11_parse_elems(pos, left, &elems, 1) == ParseFailed) { - hostapd_logger(hapd, mgmt->sa, HOSTAPD_MODULE_IEEE80211, --- -2.1.4 - diff --git a/package/hostapd/0002-EAP-pwd-server-Fix-last-fragment-length-validation.patch b/package/hostapd/0002-EAP-pwd-server-Fix-last-fragment-length-validation.patch new file mode 100644 index 00000000000..bfc4c74e95c --- /dev/null +++ b/package/hostapd/0002-EAP-pwd-server-Fix-last-fragment-length-validation.patch @@ -0,0 +1,51 @@ +From bef802ece03f9ae9d52a21f0cf4f1bc2c5a1f8aa Mon Sep 17 00:00:00 2001 +From: Jouni Malinen +Date: Sun, 1 Nov 2015 18:24:16 +0200 +Subject: [PATCH] EAP-pwd server: Fix last fragment length validation + +All but the last fragment had their length checked against the remaining +room in the reassembly buffer. This allowed a suitably constructed last +fragment frame to try to add extra data that would go beyond the buffer. +The length validation code in wpabuf_put_data() prevents an actual +buffer write overflow from occurring, but this results in process +termination. (CVE-2015-5314) + +Signed-off-by: Jouni Malinen +--- + src/eap_server/eap_server_pwd.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/eap_server/eap_server_pwd.c b/src/eap_server/eap_server_pwd.c +index cb83ff7..9f787ab 100644 +--- a/src/eap_server/eap_server_pwd.c ++++ b/src/eap_server/eap_server_pwd.c +@@ -970,7 +970,7 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, + /* + * the first and all intermediate fragments have the M bit set + */ +- if (EAP_PWD_GET_MORE_BIT(lm_exch)) { ++ if (EAP_PWD_GET_MORE_BIT(lm_exch) || data->in_frag_pos) { + if ((data->in_frag_pos + len) > wpabuf_size(data->inbuf)) { + wpa_printf(MSG_DEBUG, "EAP-pwd: Buffer overflow " + "attack detected! (%d+%d > %d)", +@@ -981,6 +981,8 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, + } + wpabuf_put_data(data->inbuf, pos, len); + data->in_frag_pos += len; ++ } ++ if (EAP_PWD_GET_MORE_BIT(lm_exch)) { + wpa_printf(MSG_DEBUG, "EAP-pwd: Got a %d byte fragment", + (int) len); + return; +@@ -990,8 +992,6 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, + * buffering fragments so that's how we know it's the last) + */ + if (data->in_frag_pos) { +- wpabuf_put_data(data->inbuf, pos, len); +- data->in_frag_pos += len; + pos = wpabuf_head_u8(data->inbuf); + len = data->in_frag_pos; + wpa_printf(MSG_DEBUG, "EAP-pwd: Last fragment, %d bytes", +-- +1.9.1 + diff --git a/package/hostapd/0003-EAP-pwd-fixes.patch b/package/hostapd/0003-EAP-pwd-fixes.patch deleted file mode 100644 index 16a1f539883..00000000000 --- a/package/hostapd/0003-EAP-pwd-fixes.patch +++ /dev/null @@ -1,154 +0,0 @@ -This patch combines the following upstream security fixes: - -28a069a545b0 EAP-pwd peer: Fix asymmetric fragmentation behavior -3035cc2894e0 EAP-pwd server: Fix Total-Length parsing for fragment reassembly -477c74395acd EAP-pwd peer: Fix Total-Length parsing for fragment reassembly -e28a58be2618 EAP-pwd server: Fix payload length validation for Commit and Confirm -dd2f043c9c43 EAP-pwd peer: Fix payload length validation for Commit and Confirm - -Details at -http://w1.fi/security/2015-4/eap-pwd-missing-payload-length-validation.txt - -Signed-off-by: Baruch Siach ---- -diff --git a/src/eap_peer/eap_pwd.c b/src/eap_peer/eap_pwd.c -index f2b092669a42..e58b13a42f73 100644 ---- a/src/eap_peer/eap_pwd.c -+++ b/src/eap_peer/eap_pwd.c -@@ -355,6 +355,23 @@ eap_pwd_perform_commit_exchange(struct eap_sm *sm, struct eap_pwd_data *data, - BIGNUM *mask = NULL, *x = NULL, *y = NULL, *cofactor = NULL; - u16 offset; - u8 *ptr, *scalar = NULL, *element = NULL; -+ size_t prime_len, order_len; -+ -+ if (data->state != PWD_Commit_Req) { -+ ret->ignore = TRUE; -+ goto fin; -+ } -+ -+ prime_len = BN_num_bytes(data->grp->prime); -+ order_len = BN_num_bytes(data->grp->order); -+ -+ if (payload_len != 2 * prime_len + order_len) { -+ wpa_printf(MSG_INFO, -+ "EAP-pwd: Unexpected Commit payload length %u (expected %u)", -+ (unsigned int) payload_len, -+ (unsigned int) (2 * prime_len + order_len)); -+ goto fin; -+ } - - if (((data->private_value = BN_new()) == NULL) || - ((data->my_element = EC_POINT_new(data->grp->group)) == NULL) || -@@ -554,6 +571,18 @@ eap_pwd_perform_confirm_exchange(struct eap_sm *sm, struct eap_pwd_data *data, - u8 conf[SHA256_MAC_LEN], *cruft = NULL, *ptr; - int offset; - -+ if (data->state != PWD_Confirm_Req) { -+ ret->ignore = TRUE; -+ goto fin; -+ } -+ -+ if (payload_len != SHA256_MAC_LEN) { -+ wpa_printf(MSG_INFO, -+ "EAP-pwd: Unexpected Confirm payload length %u (expected %u)", -+ (unsigned int) payload_len, SHA256_MAC_LEN); -+ goto fin; -+ } -+ - /* - * first build up the ciphersuite which is group | random_function | - * prf -@@ -837,11 +866,23 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, - * if it's the first fragment there'll be a length field - */ - if (EAP_PWD_GET_LENGTH_BIT(lm_exch)) { -+ if (len < 2) { -+ wpa_printf(MSG_DEBUG, -+ "EAP-pwd: Frame too short to contain Total-Length field"); -+ ret->ignore = TRUE; -+ return NULL; -+ } - tot_len = WPA_GET_BE16(pos); - wpa_printf(MSG_DEBUG, "EAP-pwd: Incoming fragments whose " - "total length = %d", tot_len); - if (tot_len > 15000) - return NULL; -+ if (data->inbuf) { -+ wpa_printf(MSG_DEBUG, -+ "EAP-pwd: Unexpected new fragment start when previous fragment is still in use"); -+ ret->ignore = TRUE; -+ return NULL; -+ } - data->inbuf = wpabuf_alloc(tot_len); - if (data->inbuf == NULL) { - wpa_printf(MSG_INFO, "Out of memory to buffer " -@@ -927,6 +968,7 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, - /* - * we have output! Do we need to fragment it? - */ -+ lm_exch = EAP_PWD_GET_EXCHANGE(lm_exch); - len = wpabuf_len(data->outbuf); - if ((len + EAP_PWD_HDR_SIZE) > data->mtu) { - resp = eap_msg_alloc(EAP_VENDOR_IETF, EAP_TYPE_PWD, data->mtu, -diff --git a/src/eap_server/eap_server_pwd.c b/src/eap_server/eap_server_pwd.c -index 66bd5d2e9179..2bfc3c27647d 100644 ---- a/src/eap_server/eap_server_pwd.c -+++ b/src/eap_server/eap_server_pwd.c -@@ -656,9 +656,21 @@ eap_pwd_process_commit_resp(struct eap_sm *sm, struct eap_pwd_data *data, - BIGNUM *x = NULL, *y = NULL, *cofactor = NULL; - EC_POINT *K = NULL, *point = NULL; - int res = 0; -+ size_t prime_len, order_len; - - wpa_printf(MSG_DEBUG, "EAP-pwd: Received commit response"); - -+ prime_len = BN_num_bytes(data->grp->prime); -+ order_len = BN_num_bytes(data->grp->order); -+ -+ if (payload_len != 2 * prime_len + order_len) { -+ wpa_printf(MSG_INFO, -+ "EAP-pwd: Unexpected Commit payload length %u (expected %u)", -+ (unsigned int) payload_len, -+ (unsigned int) (2 * prime_len + order_len)); -+ goto fin; -+ } -+ - if (((data->peer_scalar = BN_new()) == NULL) || - ((data->k = BN_new()) == NULL) || - ((cofactor = BN_new()) == NULL) || -@@ -774,6 +786,13 @@ eap_pwd_process_confirm_resp(struct eap_sm *sm, struct eap_pwd_data *data, - u8 conf[SHA256_MAC_LEN], *cruft = NULL, *ptr; - int offset; - -+ if (payload_len != SHA256_MAC_LEN) { -+ wpa_printf(MSG_INFO, -+ "EAP-pwd: Unexpected Confirm payload length %u (expected %u)", -+ (unsigned int) payload_len, SHA256_MAC_LEN); -+ goto fin; -+ } -+ - /* build up the ciphersuite: group | random_function | prf */ - grp = htons(data->group_num); - ptr = (u8 *) &cs; -@@ -923,11 +942,21 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, - * the first fragment has a total length - */ - if (EAP_PWD_GET_LENGTH_BIT(lm_exch)) { -+ if (len < 2) { -+ wpa_printf(MSG_DEBUG, -+ "EAP-pwd: Frame too short to contain Total-Length field"); -+ return; -+ } - tot_len = WPA_GET_BE16(pos); - wpa_printf(MSG_DEBUG, "EAP-pwd: Incoming fragments, total " - "length = %d", tot_len); - if (tot_len > 15000) - return; -+ if (data->inbuf) { -+ wpa_printf(MSG_DEBUG, -+ "EAP-pwd: Unexpected new fragment start when previous fragment is still in use"); -+ return; -+ } - data->inbuf = wpabuf_alloc(tot_len); - if (data->inbuf == NULL) { - wpa_printf(MSG_INFO, "EAP-pwd: Out of memory to " diff --git a/package/hostapd/Config.in b/package/hostapd/Config.in index 656645bff15..62fbb66d639 100644 --- a/package/hostapd/Config.in +++ b/package/hostapd/Config.in @@ -14,6 +14,16 @@ config BR2_PACKAGE_HOSTAPD if BR2_PACKAGE_HOSTAPD +config BR2_PACKAGE_HOSTAPD_ACS + bool "Enable ACS" + default y + help + Enable support for standard ACS (Automatic Channel Selection). + Some propietary drivers use a custom algorithm which requires + channel to be set to '0' (which enables ACS in the config), + causing hostapd to use the standard one which doesn't work + for those cases. + config BR2_PACKAGE_HOSTAPD_EAP bool "Enable EAP" depends on !BR2_STATIC_LIBS diff --git a/package/hostapd/hostapd.hash b/package/hostapd/hostapd.hash index 3c7b63ded48..869849b6408 100644 --- a/package/hostapd/hostapd.hash +++ b/package/hostapd/hostapd.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 6fe0eb6bd1c9cbd24952ece8586b6f7bd14ab358edfda99794e79b9b9dbd657f hostapd-2.4.tar.gz +sha256 8e272d954dc0d7026c264b79b15389ec2b2c555b32970de39f506b9f463ec74a hostapd-2.5.tar.gz diff --git a/package/hostapd/hostapd.mk b/package/hostapd/hostapd.mk index 1ad32a24655..dca07c1bc58 100644 --- a/package/hostapd/hostapd.mk +++ b/package/hostapd/hostapd.mk @@ -4,18 +4,17 @@ # ################################################################################ -HOSTAPD_VERSION = 2.4 +HOSTAPD_VERSION = 2.5 HOSTAPD_SITE = http://hostap.epitest.fi/releases HOSTAPD_SUBDIR = hostapd HOSTAPD_CONFIG = $(HOSTAPD_DIR)/$(HOSTAPD_SUBDIR)/.config HOSTAPD_DEPENDENCIES = host-pkgconf libnl HOSTAPD_CFLAGS = $(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/libnl3/ -HOSTAPD_LICENSE = GPLv2/BSD-3c +HOSTAPD_LICENSE = BSD-3c HOSTAPD_LICENSE_FILES = README HOSTAPD_CONFIG_SET = HOSTAPD_CONFIG_ENABLE = \ - CONFIG_ACS \ CONFIG_FULL_DYNAMIC_VLAN \ CONFIG_HS20 \ CONFIG_IEEE80211AC \ @@ -45,6 +44,10 @@ HOSTAPD_CONFIG_DISABLE += CONFIG_EAP_PWD HOSTAPD_CONFIG_EDITS += 's/\#\(CONFIG_TLS=\).*/\1internal/' endif +ifeq ($(BR2_PACKAGE_HOSTAPD_ACS),y) +HOSTAPD_CONFIG_ENABLE += CONFIG_ACS +endif + ifeq ($(BR2_PACKAGE_HOSTAPD_EAP),y) HOSTAPD_CONFIG_ENABLE += \ CONFIG_EAP \ diff --git a/package/hplip/0001-build-use-pkg-config-to-discover-libusb.patch b/package/hplip/0001-build-use-pkg-config-to-discover-libusb.patch new file mode 100644 index 00000000000..59b89a4a327 --- /dev/null +++ b/package/hplip/0001-build-use-pkg-config-to-discover-libusb.patch @@ -0,0 +1,45 @@ +From 1eed2b65eff4c66b80eab0ec46c6705de19bdb9d Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 21 Jan 2016 23:54:03 +0100 +Subject: [PATCH] build: use pkg-config to discover libusb + +This allows to remove hardcoded paths to libusb headers. + +Signed-off-by: Thomas Petazzoni +--- + Makefile.am | 4 ++-- + configure.in | 3 +-- + 2 files changed, 3 insertions(+), 4 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 73fed2e..3a4e899 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -92,8 +92,8 @@ libhpmud_la_SOURCES += io/hpmud/musb_libusb01.c + libhpmud_la_LDFLAGS += -lusb + else + libhpmud_la_SOURCES += io/hpmud/musb.c +-libhpmud_la_CFLAGS += -I/usr/include/libusb-1.0 +-libhpmud_la_LDFLAGS += -lusb-1.0 ++libhpmud_la_CFLAGS += $(LIBUSB_CFLAGS) ++libhpmud_la_LDFLAGS += $(LIBUSB_LIBS) + endif + + if NETWORK_BUILD +diff --git a/configure.in b/configure.in +index 3706645..8b06428 100755 +--- a/configure.in ++++ b/configure.in +@@ -542,8 +542,7 @@ if test "$hpijs_only_build" = "no" && test "$hpcups_only_build" = "no"; then + AC_CHECK_LIB([usb], [usb_init], [LIBS="$LIBS"], [AC_MSG_ERROR([cannot find libusb support], 2)]) + AC_CHECK_HEADERS(usb.h, ,[AC_MSG_ERROR([cannot find libusb-devel support], 11)]) + else +- AC_CHECK_LIB([usb-1.0], [libusb_init], [LIBS="$LIBS"], [AC_MSG_ERROR([cannot find libusb 1.0 support], 2)]) +- AC_CHECK_HEADERS(libusb-1.0/libusb.h, ,[AC_MSG_ERROR([cannot find libusb-1.0-devel support], 11)]) ++ PKG_CHECK_MODULES([LIBUSB], [libusb-1.0]) + fi + fi + +-- +2.6.4 + diff --git a/package/hplip/0001-fix-make.patch b/package/hplip/0001-fix-make.patch deleted file mode 100644 index da05d03fd38..00000000000 --- a/package/hplip/0001-fix-make.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 6019d012246578ae1a191d3510284e7b894fb528 Mon Sep 17 00:00:00 2001 -From: Olivier Schonken -Date: Sat, 2 Mar 2013 18:01:03 +0200 -Subject: [PATCH] Changed Makefile.am to allow cross-compilation of HPLIP - -Signed-off-by: Olivier Schonken ---- - Makefile.am | 28 ++++++++++++++-------------- - 1 file changed, 14 insertions(+), 14 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index 16ea902..b22f46a 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -72,7 +72,7 @@ libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/ - io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/pml.h io/hpmud/dot4.c \ - io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h io/hpmud/musb.h io/hpmud/musb_libusb01.c - else --libhpmud_la_CFLAGS = -I/usr/include/libusb-1.0 -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\" -+libhpmud_la_CFLAGS = -I$(includedir)/libusb-1.0 -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\" - libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/pml.c \ - io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/pml.h io/hpmud/dot4.c \ - io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h io/hpmud/musb.h io/hpmud/musb.c -@@ -292,7 +292,7 @@ hpmudext_la_LIBADD = libhpmud.la - if LIBUSB01_BUILD - hpmudext_la_CFLAGS = -I$(PYTHONINCLUDEDIR) - else --hpmudext_la_CFLAGS =-I/usr/include/libusb-1.0 -I$(PYTHONINCLUDEDIR) -+hpmudext_la_CFLAGS =-I$(includedir)/libusb-1.0 -I$(PYTHONINCLUDEDIR) - endif - - # ui (qt3) --- -1.7.10.4 - diff --git a/package/hplip/0002-configure.in-fix-AM_INIT_AUTOMAKE-call.patch b/package/hplip/0002-configure.in-fix-AM_INIT_AUTOMAKE-call.patch new file mode 100644 index 00000000000..7c7538d1ab5 --- /dev/null +++ b/package/hplip/0002-configure.in-fix-AM_INIT_AUTOMAKE-call.patch @@ -0,0 +1,35 @@ +From a2de7e834417de68db10dc6f09d5810b06e6cbc8 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 21 Jan 2016 23:54:50 +0100 +Subject: [PATCH] configure.in: fix AM_INIT_AUTOMAKE call + +Uncomment the appropriate call to AM_INIT_AUTOMAKE so that the +"foreign" option is passed, which avoids the need for creating various +unneeded files when autoreconfiguring. + +Add the subdir-objects options since the main Makefile.am references +files in subdirectories. This allows to silence a huge amount of +warning when autoreconfiguring. + +Signed-off-by: Thomas Petazzoni +--- + configure.in | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/configure.in b/configure.in +index 8b06428..680cad5 100755 +--- a/configure.in ++++ b/configure.in +@@ -27,8 +27,7 @@ + + #AC_PREREQ(2.59) + AC_INIT([HP Linux Imaging and Printing], [3.15.11], [3.15.11], [hplip]) +-#AM_INIT_AUTOMAKE([1.9 foreign]) +-AM_INIT_AUTOMAKE ++AM_INIT_AUTOMAKE([1.9 foreign subdir-objects]) + AC_DISABLE_STATIC + + # Checks for programs. +-- +2.6.4 + diff --git a/package/hplip/Config.in b/package/hplip/Config.in index a8a5f691222..756567150d1 100644 --- a/package/hplip/Config.in +++ b/package/hplip/Config.in @@ -1,7 +1,5 @@ config BR2_PACKAGE_HPLIP bool "hplip" - # because of cups security issues - depends on BR2_DEPRECATED_SINCE_2015_05 depends on BR2_INSTALL_LIBSTDCPP depends on BR2_PACKAGE_CUPS depends on BR2_TOOLCHAIN_HAS_THREADS # libusb diff --git a/package/hplip/hplip.hash b/package/hplip/hplip.hash index fb7d4e74de7..75ff7d3d0c1 100644 --- a/package/hplip/hplip.hash +++ b/package/hplip/hplip.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 a8122cd824398ac6374154f86152e24fdf5c0100b5c1d6518e853308362e627d hplip-3.13.10.tar.gz +sha256 33c4711bde04a34b81f3f70e6277a0375dded171469e5aa8b9cef1a14a407c6d hplip-3.15.11.tar.gz diff --git a/package/hplip/hplip.mk b/package/hplip/hplip.mk index 2cdddca5936..b1e8cb55d25 100644 --- a/package/hplip/hplip.mk +++ b/package/hplip/hplip.mk @@ -4,10 +4,10 @@ # ################################################################################ -HPLIP_VERSION = 3.13.10 +HPLIP_VERSION = 3.15.11 HPLIP_SITE = http://downloads.sourceforge.net/hplip/hplip HPLIP_AUTORECONF = YES -HPLIP_DEPENDENCIES = cups libusb jpeg +HPLIP_DEPENDENCIES = cups libusb jpeg host-pkgconf HPLIP_LICENSE = GPLv2 BSD-3c MIT HPLIP_LICENSE_FILES = COPYING @@ -25,9 +25,7 @@ HPLIP_CONF_OPTS = \ --disable-foomatic-drv-install \ --disable-foomatic-rip-hplip-install \ --enable-new-hpcups \ - --enable-lite-build \ - --with-sysroot=$(STAGING_DIR) \ - --includedir=$(STAGING_DIR)/usr/include + --enable-lite-build ifeq ($(BR2_PACKAGE_DBUS),y) HPLIP_CONF_OPTS += --enable-dbus-build @@ -42,12 +40,4 @@ define HPLIP_POST_INSTALL_TARGET_FIXUP endef HPLIP_POST_INSTALL_TARGET_HOOKS += HPLIP_POST_INSTALL_TARGET_FIXUP -define HPLIP_PRE_CONFIGURE_FIXUP - touch $(@D)/AUTHORS - touch $(@D)/ChangeLog - touch $(@D)/NEWS - touch $(@D)/README -endef -HPLIP_PRE_CONFIGURE_HOOKS += HPLIP_PRE_CONFIGURE_FIXUP - $(eval $(autotools-package)) diff --git a/package/ibrcommon/0001-ibrcommon-data-File.cpp-support-POSIX-basename-call.patch b/package/ibrcommon/0001-ibrcommon-data-File.cpp-support-POSIX-basename-call.patch new file mode 100644 index 00000000000..b7c1839f757 --- /dev/null +++ b/package/ibrcommon/0001-ibrcommon-data-File.cpp-support-POSIX-basename-call.patch @@ -0,0 +1,55 @@ +From d667b13a87cf3207599a19eb981a893a1d7a67ee Mon Sep 17 00:00:00 2001 +From: Brendan Heading +Date: Mon, 14 Sep 2015 23:25:52 +0100 +Subject: [PATCH 1/1] ibrcommon/data/File.cpp: support POSIX basename call + +Firstly, and somewhat strangely, musl chooses not to provide a basename(3) +prototype within whenever __cplusplus is defined. This can be +solved by including the header defined by POSIX 1003.1 whenever +__GLIBC__ is not defined. + +However, this leads to a second problem. POSIX defines the function as +char* basename(char*) and this is the only version supported by musl. +However, the std::string.cstr() method returns a const char*. + +POSIX says that the string parameter can be modified. However the GNU +implementation never modifies it. glibc therefore supports an extension +when compiling under C++ by also supplying +const char* basename(const char*). This extension is not present on musl +which is the cause of the failure. + +The solution is reasonably straightforward; test if __GLIBC__ is defined +before calling basename. If not, use the fallback already provided for +other platforms whereby basename() is called on a temporary copy. + +Signed-off-by: Brendan Heading +Upstream-status: pending +--- + ibrcommon/data/File.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/ibrcommon/data/File.cpp b/ibrcommon/data/File.cpp +index 31af4ae..68e9b4f 100644 +--- a/ibrcommon/data/File.cpp ++++ b/ibrcommon/data/File.cpp +@@ -35,7 +35,7 @@ + #include + #include + +-#if !defined(HAVE_FEATURES_H) || defined(ANDROID) ++#if !defined(HAVE_FEATURES_H) || !defined(__GLIBC__) || defined(ANDROID) + #include + #endif + +@@ -225,7 +225,7 @@ namespace ibrcommon + + std::string File::getBasename() const + { +-#if !defined(ANDROID) && defined(HAVE_FEATURES_H) ++#if !defined(ANDROID) && defined(HAVE_FEATURES_H) && defined(__GLIBC__) + return std::string(basename(_path.c_str())); + #else + char path[_path.length()+1]; +-- +2.4.3 + diff --git a/package/ibrcommon/Config.in b/package/ibrcommon/Config.in new file mode 100644 index 00000000000..36ccfbc3833 --- /dev/null +++ b/package/ibrcommon/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_IBRCOMMON + bool "ibrcommon" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + help + IBR-DTN is a small dtn application that supports: + Bundle Protocol RFC 5050 + Bundle Security Protocol RFC 6257 + + http://trac.ibr.cs.tu-bs.de/project-cm-2012-ibrdtn + +comment "ibrcommon needs a toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/ibrcommon/ibrcommon.hash b/package/ibrcommon/ibrcommon.hash new file mode 100644 index 00000000000..21a0ec6f19b --- /dev/null +++ b/package/ibrcommon/ibrcommon.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9c457c1ebc01e6216524636628c647bef34ab11bd96f0e0788be8749374fdc20 ibrcommon-1.0.1.tar.gz diff --git a/package/ibrcommon/ibrcommon.mk b/package/ibrcommon/ibrcommon.mk new file mode 100644 index 00000000000..5fa2cb5191a --- /dev/null +++ b/package/ibrcommon/ibrcommon.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# ibrcommon +# +################################################################################ + +IBRCOMMON_VERSION = 1.0.1 +IBRCOMMON_SOURCE = ibrcommon-$(IBRCOMMON_VERSION).tar.gz +IBRCOMMON_SITE = https://www.ibr.cs.tu-bs.de/projects/ibr-dtn/releases +IBRCOMMON_INSTALL_STAGING = YES +IBRCOMMON_LICENSE = Apache-2.0 +IBRCOMMON_LICENSE_FILES = COPYING README +IBRCOMMON_DEPENDENCIES = host-pkgconf + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +IBRCOMMON_DEPENDENCIES += openssl +IBRCOMMON_CONF_OPTS += --with-openssl +else +IBRCOMMON_CONF_OPTS += --without-openssl +endif + +ifeq ($(BR2_PACKAGE_LIBNL),y) +IBRCOMMON_DEPENDENCIES += libnl +IBRCOMMON_CONF_OPTS += --with-lowpan +else +IBRCOMMON_CONF_OPTS += --without-lowpan +endif + +ifeq ($(BR2_PACKAGE_LIBXML2),y) +IBRCOMMON_DEPENDENCIES += libxml2 +IBRCOMMON_CONF_OPTS += --with-xml +else +IBRCOMMON_CONF_OPTS += --without-xml +endif + +$(eval $(autotools-package)) diff --git a/package/ibrdtn-tools/Config.in b/package/ibrdtn-tools/Config.in new file mode 100644 index 00000000000..91419d67696 --- /dev/null +++ b/package/ibrdtn-tools/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_IBRDTN_TOOLS + bool "ibrdtn-tools" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_IBRCOMMON + select BR2_PACKAGE_IBRDTN + help + IBR-DTN is a small dtn application that supports: + Bundle Protocol RFC 5050 + Bundle Security Protocol RFC 6257 + + http://trac.ibr.cs.tu-bs.de/project-cm-2012-ibrdtn + +comment "ibrdtn-tools needs a toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/ibrdtn-tools/ibrdtn-tools.hash b/package/ibrdtn-tools/ibrdtn-tools.hash new file mode 100644 index 00000000000..fb77207526c --- /dev/null +++ b/package/ibrdtn-tools/ibrdtn-tools.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 eab066cf15f9c322d769c6c9c58adfb474cba7d446fd12e8de5ff6344376795b ibrdtn-tools-1.0.1.tar.gz diff --git a/package/ibrdtn-tools/ibrdtn-tools.mk b/package/ibrdtn-tools/ibrdtn-tools.mk new file mode 100644 index 00000000000..97ec3c9e171 --- /dev/null +++ b/package/ibrdtn-tools/ibrdtn-tools.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# ibrdtn-tools +# +################################################################################ + +IBRDTN_TOOLS_VERSION = 1.0.1 +IBRDTN_TOOLS_SITE = https://www.ibr.cs.tu-bs.de/projects/ibr-dtn/releases +IBRDTN_TOOLS_LICENSE = Apache-2.0 +IBRDTN_TOOLS_LICENSE_FILES = COPYING +IBRDTN_TOOLS_DEPENDENCIES = ibrcommon ibrdtn host-pkgconf + +ifeq ($(BR2_STATIC_LIBS),y) +IBRDTN_TOOLS_CONF_ENV += LDFLAGS="$(TARGET_LDFLAGS) -pthread" +endif + +ifeq ($(BR2_PACKAGE_LIBDAEMON),y) +IBRDTN_TOOLS_CONF_OPTS += --with-libdaemon +IBRDTN_TOOLS_DEPENDENCIES += libdaemon +else +IBRDTN_TOOLS_CONF_OPTS += --without-libdaemon +endif + +ifeq ($(BR2_PACKAGE_LIBARCHIVE),y) +IBRDTN_TOOLS_CONF_OPTS += --with-libarchive +IBRDTN_TOOLS_DEPENDENCIES += libarchive +else +IBRDTN_TOOLS_CONF_OPTS += --without-libarchive +endif + +$(eval $(autotools-package)) diff --git a/package/ibrdtn/Config.in b/package/ibrdtn/Config.in new file mode 100644 index 00000000000..569831596dd --- /dev/null +++ b/package/ibrdtn/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_IBRDTN + bool "ibrdtn" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_IBRCOMMON + help + IBR-DTN is a small dtn application that supports: + Bundle Protocol RFC 5050 + Bundle Security Protocol RFC 6257 + + This package contains the ibrdtn library. + + http://trac.ibr.cs.tu-bs.de/project-cm-2012-ibrdtn + +comment "ibrdtn needs a toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/ibrdtn/ibrdtn.hash b/package/ibrdtn/ibrdtn.hash new file mode 100644 index 00000000000..5f233277c1f --- /dev/null +++ b/package/ibrdtn/ibrdtn.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 288b14ccbaefb5e3234065c2778c247797ccb3c7afbb6746bb37dc12c620d360 ibrdtn-1.0.1.tar.gz diff --git a/package/ibrdtn/ibrdtn.mk b/package/ibrdtn/ibrdtn.mk new file mode 100644 index 00000000000..7bd9b9bf1d4 --- /dev/null +++ b/package/ibrdtn/ibrdtn.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# ibrdtn +# +################################################################################ + +IBRDTN_VERSION = 1.0.1 +IBRDTN_SOURCE = ibrdtn-$(IBRDTN_VERSION).tar.gz +IBRDTN_SITE = https://www.ibr.cs.tu-bs.de/projects/ibr-dtn/releases +IBRDTN_INSTALL_STAGING = YES +IBRDTN_LICENSE = Apache-2.0 +IBRDTN_LICENSE_FILES = COPYING +IBRDTN_DEPENDENCIES = ibrcommon host-pkgconf + +ifeq ($(BR2_PACKAGE_ZLIB),y) +IBRDTN_CONF_OPTS += --with-compression +IBRDTN_DEPENDENCIES += zlib +else +IBRDTN_CONF_OPTS += --without-compression +endif + +ifeq ($(BR2_PACKAGE_LIBGLIB2),y) +IBRDTN_CONF_OPTS += --with-glib +IBRDTN_DEPENDENCIES += libglib2 +else +IBRDTN_CONF_OPTS += --without-glib +endif + +$(eval $(autotools-package)) diff --git a/package/ibrdtnd/Config.in b/package/ibrdtnd/Config.in new file mode 100644 index 00000000000..f7f371edfd6 --- /dev/null +++ b/package/ibrdtnd/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_IBRDTND + bool "ibrdtnd" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + select BR2_PACKAGE_IBRDTN + select BR2_PACKAGE_IBRCOMMON + help + IBR-DTN is a small dtn application that supports: + Bundle Protocol RFC 5050 + Bundle Security Protocol RFC 6257 + + http://trac.ibr.cs.tu-bs.de/project-cm-2012-ibrdtn + +comment "ibrdtnd needs a toolchain w/ C++, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/ibrdtnd/ibrdtnd.hash b/package/ibrdtnd/ibrdtnd.hash new file mode 100644 index 00000000000..4b7dd7c3d86 --- /dev/null +++ b/package/ibrdtnd/ibrdtnd.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9bd79636154093ab6bf4fd10d6c62d67c6db45141460847b19def327c93771ed ibrdtnd-1.0.1.tar.gz diff --git a/package/ibrdtnd/ibrdtnd.mk b/package/ibrdtnd/ibrdtnd.mk new file mode 100644 index 00000000000..01ebb7ab36f --- /dev/null +++ b/package/ibrdtnd/ibrdtnd.mk @@ -0,0 +1,52 @@ +################################################################################ +# +# ibrdtnd +# +################################################################################ + +IBRDTND_VERSION = 1.0.1 +IBRDTND_SOURCE = ibrdtnd-$(IBRDTND_VERSION).tar.gz +IBRDTND_SITE = https://www.ibr.cs.tu-bs.de/projects/ibr-dtn/releases +IBRDTND_LICENSE = Apache-2.0 +IBRDTND_LICENSE_FILES = COPYING +IBRDTND_DEPENDENCIES = ibrdtn ibrcommon host-pkgconf + +# Disable features that don't have the necessary dependencies in +# Buildroot +IBRDTND_CONF_OPTS = \ + --disable-dtndht \ + --without-wifip2p \ + --without-vmime + +# don't build documentation +IBRDTND_CONF_ENV = PDFLATEX='no' + +ifeq ($(BR2_PACKAGE_LIBDAEMON),y) +IBRDTND_CONF_OPTS += --enable-libdaemon +IBRDTND_DEPENDENCIES += libdaemon +else +IBRDTND_CONF_OPTS += --disable-libdaemon +endif + +ifeq ($(BR2_PACKAGE_LIBCURL),y) +IBRDTND_CONF_OPTS += --with-curl +IBRDTND_DEPENDENCIES += libcurl +else +IBRDTND_CONF_OPTS += --without-curl +endif + +ifeq ($(BR2_PACKAGE_SQLITE),y) +IBRDTND_CONF_OPTS += --with-sqlite +IBRDTND_DEPENDENCIES += sqlite +else +IBRDTND_CONF_OPTS += --without-sqlite +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +IBRDTND_CONF_OPTS += --with-tls +IBRDTND_DEPENDENCIES += openssl +else +IBRDTND_CONF_OPTS += --without-tls +endif + +$(eval $(autotools-package)) diff --git a/package/icu/0006-fix-Error-allocating-memory-for-pkgDataFlags.-compil.patch b/package/icu/0006-fix-Error-allocating-memory-for-pkgDataFlags.-compil.patch new file mode 100644 index 00000000000..d53a7617f7f --- /dev/null +++ b/package/icu/0006-fix-Error-allocating-memory-for-pkgDataFlags.-compil.patch @@ -0,0 +1,34 @@ +From 212016f27dd581fd7bef1a44a3342c59619a4ec8 Mon Sep 17 00:00:00 2001 +From: Zoltan Gyarmati +Date: Wed, 27 Jan 2016 17:24:25 +0100 +Subject: [PATCH] fix "Error allocating memory for pkgDataFlags." compilation + error + + This is backport of the upstream icu commit 38081 +(http://bugs.icu-project.org/trac/changeset/38081/icu/trunk), which is +a fix to upstream icu bug #11959 +(http://bugs.icu-project.org/trac/ticket/11959) + +Signed-off-by: Zoltan Gyarmati +--- + source/tools/toolutil/flagparser.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/source/tools/toolutil/flagparser.c b/source/tools/toolutil/flagparser.c +index 5543415..57256c3 100644 +--- a/source/tools/toolutil/flagparser.c ++++ b/source/tools/toolutil/flagparser.c +@@ -96,8 +96,8 @@ parseFlagsFile_cleanup: + uprv_free(buffer); + + T_FileStream_close(f); +- +- if (U_FAILURE(*status)) { ++ ++ if (U_FAILURE(*status) && *status != U_BUFFER_OVERFLOW_ERROR) { + return -1; + } + +-- +1.9.1 + diff --git a/package/icu/Config.in b/package/icu/Config.in index 4d47c325405..d31c1fa3dcf 100644 --- a/package/icu/Config.in +++ b/package/icu/Config.in @@ -7,7 +7,6 @@ config BR2_PACKAGE_ICU # file, and it cannot easily be changed to generate FLAT # format. depends on !BR2_BINFMT_FLAT - depends on BR2_ARCH_HAS_ATOMICS help International Components for Unicode. @@ -28,6 +27,5 @@ endif comment "icu needs a toolchain w/ C++, wchar, threads" depends on !BR2_BINFMT_FLAT - depends on BR2_ARCH_HAS_ATOMICS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/icu/icu.hash b/package/icu/icu.hash index cc3352ed43d..e9f82b15185 100644 --- a/package/icu/icu.hash +++ b/package/icu/icu.hash @@ -1,2 +1,4 @@ -# From https://ssl.icu-project.org/files/icu4c/55.1/icu4c-src-55_1.md5 -md5 e2d523df79d6cb7855c2fbe284f4db29 icu4c-55_1-src.tgz +# From https://ssl.icu-project.org/files/icu4c/56.1/icu4c-src-56_1.md5 +md5 c4a2d71ff56aec5ebfab2a3f059be99d icu4c-56_1-src.tgz +# Calculated based on the hash above +sha256 3a64e9105c734dcf631c0b3ed60404531bce6c0f5a64bfe1a6402a4cc2314816 icu4c-56_1-src.tgz diff --git a/package/icu/icu.mk b/package/icu/icu.mk index e89290adc9e..b4574e5be5d 100644 --- a/package/icu/icu.mk +++ b/package/icu/icu.mk @@ -4,7 +4,7 @@ # ################################################################################ -ICU_VERSION = 55.1 +ICU_VERSION = 56.1 ICU_SOURCE = icu4c-$(subst .,_,$(ICU_VERSION))-src.tgz ICU_SITE = http://download.icu-project.org/files/icu4c/$(ICU_VERSION) ICU_LICENSE = ICU License @@ -17,6 +17,14 @@ ICU_CONF_OPTS = \ --with-cross-build=$(HOST_ICU_DIR)/source \ --disable-samples \ --disable-tests + +# When available, icu prefers to use C++11 atomics, which rely on the +# __atomic builtins. On certain architectures, this requires linking +# with libatomic starting from gcc 4.8. +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_8),y) +ICU_CONF_ENV += LIBS="-latomic" +endif + HOST_ICU_CONF_OPTS = \ --disable-samples \ --disable-tests \ diff --git a/package/ifupdown/ifupdown.hash b/package/ifupdown/ifupdown.hash index f0c314bd01b..02dfd2b6ac1 100644 --- a/package/ifupdown/ifupdown.hash +++ b/package/ifupdown/ifupdown.hash @@ -1,2 +1,2 @@ -# From http://ftp.de.debian.org/debian/pool/main/i/ifupdown/ifupdown_0.7.49.dsc -sha256 5d07c73610ff90393c7273e2af9003eeb1825fc88144ae5ed11a5517547d0f58 ifupdown_0.7.49.tar.xz +# From http://ftp.de.debian.org/debian/pool/main/i/ifupdown/ifupdown_0.8.2.dsc +sha256 edb08f935fea9bc376c3faa0140c04c7a4d4ef5f22fd280ec4060386a75df10b ifupdown_0.8.2.tar.xz diff --git a/package/ifupdown/ifupdown.mk b/package/ifupdown/ifupdown.mk index 5c78eedcd11..7fbd003650e 100644 --- a/package/ifupdown/ifupdown.mk +++ b/package/ifupdown/ifupdown.mk @@ -4,16 +4,16 @@ # ################################################################################ -IFUPDOWN_VERSION = 0.7.49 +IFUPDOWN_VERSION = 0.8.2 IFUPDOWN_SOURCE = ifupdown_$(IFUPDOWN_VERSION).tar.xz -IFUPDOWN_SITE = http://snapshot.debian.org/archive/debian/20140923T221921Z/pool/main/i/ifupdown +IFUPDOWN_SITE = http://snapshot.debian.org/archive/debian/20151205T042642Z/pool/main/i/ifupdown IFUPDOWN_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) IFUPDOWN_LICENSE = GPLv2+ IFUPDOWN_LICENSE_FILES = COPYING define IFUPDOWN_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="$(TARGET_CFLAGS) -D'IFUPDOWN_VERSION=\"$(IFUPDOWN_VERSION)\"'" \ + CFLAGS="$(TARGET_CFLAGS) -std=gnu99 -D'IFUPDOWN_VERSION=\"$(IFUPDOWN_VERSION)\"'" \ -C $(@D) endef diff --git a/package/imagemagick/imagemagick.hash b/package/imagemagick/imagemagick.hash index e57a9949f28..31ddfd242f6 100644 --- a/package/imagemagick/imagemagick.hash +++ b/package/imagemagick/imagemagick.hash @@ -1,2 +1,2 @@ -# From ftp://ftp.nluug.nl/pub/ImageMagick/digest.rdf -sha256 987b353058482b5ba15d42746eebc51c15eb05241ce94f22381b8aae0b841617 ImageMagick-6.9.1-8.tar.xz +# From http://www.imagemagick.org/download/releases/digest.rdf +sha256 d127f76c674f1454adf0444ecec96f344c3dca522cc3320f0ef88d8060123048 ImageMagick-6.9.3-3.tar.xz diff --git a/package/imagemagick/imagemagick.mk b/package/imagemagick/imagemagick.mk index d4829a36c16..639b0e853cb 100644 --- a/package/imagemagick/imagemagick.mk +++ b/package/imagemagick/imagemagick.mk @@ -4,7 +4,7 @@ # ################################################################################ -IMAGEMAGICK_VERSION = 6.9.1-8 +IMAGEMAGICK_VERSION = 6.9.3-3 IMAGEMAGICK_SOURCE = ImageMagick-$(IMAGEMAGICK_VERSION).tar.xz IMAGEMAGICK_SITE = http://www.imagemagick.org/download/releases IMAGEMAGICK_LICENSE = Apache-2.0 @@ -60,6 +60,13 @@ else IMAGEMAGICK_CONF_OPTS += --without-jpeg endif +ifeq ($(BR2_PACKAGE_LCMS2),y) +IMAGEMAGICK_CONF_OPTS += --with-lcms +IMAGEMAGICK_DEPENDENCIES += lcms2 +else +IMAGEMAGICK_CONF_OPTS += --without-lcms +endif + ifeq ($(BR2_PACKAGE_LIBPNG),y) IMAGEMAGICK_CONF_OPTS += --with-png IMAGEMAGICK_DEPENDENCIES += libpng @@ -98,6 +105,13 @@ else IMAGEMAGICK_CONF_OPTS += --without-fftw endif +ifeq ($(BR2_PACKAGE_WEBP),y) +IMAGEMAGICK_CONF_OPTS += --with-webp +IMAGEMAGICK_DEPENDENCIES += webp +else +IMAGEMAGICK_CONF_OPTS += --without-webp +endif + ifeq ($(BR2_PACKAGE_ZLIB),y) IMAGEMAGICK_CONF_OPTS += --with-zlib IMAGEMAGICK_DEPENDENCIES += zlib diff --git a/package/imlib2/0007-fix-compilation-issues-with-musl.patch b/package/imlib2/0007-fix-compilation-issues-with-musl.patch new file mode 100644 index 00000000000..50e88a230f7 --- /dev/null +++ b/package/imlib2/0007-fix-compilation-issues-with-musl.patch @@ -0,0 +1,31 @@ +From bdfa1169c549122a8dc848b84469458101adeb20 Mon Sep 17 00:00:00 2001 +From: Brendan Heading +Date: Mon, 3 Aug 2015 12:44:55 +0100 +Subject: [PATCH 1/1] fix compilation issues with musl + +Using time_t strictly requires time.h to be included. + +NOTE I've stuck to the convention on this project where most of the +files appear to pick up most of their headers by including "common.h". + +Upstream-status: pending +Signed-off-by: Brendan Heading +--- + src/lib/common.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/lib/common.h b/src/lib/common.h +index 798965f..9053826 100644 +--- a/src/lib/common.h ++++ b/src/lib/common.h +@@ -9,6 +9,7 @@ + #include + #include + #include ++#include + #ifdef WITH_DMALLOC + #include + #endif +-- +2.4.3 + diff --git a/package/inadyn/S70inadyn b/package/inadyn/S70inadyn index b20048ce8c0..ca7b4146781 100644 --- a/package/inadyn/S70inadyn +++ b/package/inadyn/S70inadyn @@ -4,25 +4,33 @@ # CONFIG=/etc/inadyn.conf -VR_INADYN=/var/run/inadyn # check if CONFIG exists, print message & exit if it doesn't [ ! -f $CONFIG ] && ( echo "The config file "$CONFIG" is missing...exiting now." && exit 2 ) -# check if VR_INADYN exists, create it if not -[ ! -d $VR_INADYN ] && mkdir -p $VR_INADYN +# Allow a few customizations from a config file. Especially inadyn +# must be explicitly enabled by adding ENABLED="yes" in this file. +test -r /etc/default/inadyn && . /etc/default/inadyn case "$1" in start) - echo "Starting inadyn: " - start-stop-daemon -S -x /usr/bin/inadyn + printf "Starting inadyn: " + if test "${ENABLED}" != "yes" ; then + echo "SKIPPED" + exit 0 + fi + start-stop-daemon -b -q -S -p /var/run/inadyn.pid -x /usr/sbin/inadyn [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo "Stopping inadyn: " - start-stop-daemon -q -K -x /usr/bin/inadyn + printf "Stopping inadyn: " + if test "${ENABLED}" != "yes" ; then + echo "SKIPPED" + exit 0 + fi + start-stop-daemon -q -K -p /var/run/inadyn.pid -x /usr/sbin/inadyn [ $? = 0 ] && echo "OK" || echo "FAIL" - rm -f /var/run/inadyn/inadyn.pid + rm -f /var/run/inadyn.pid ;; restart) "$0" stop diff --git a/package/inadyn/inadyn.conf b/package/inadyn/inadyn.conf index b5877f7a77d..ab8aa3611c4 100644 --- a/package/inadyn/inadyn.conf +++ b/package/inadyn/inadyn.conf @@ -1,12 +1,11 @@ # Basic configuration file for inadyn # # /etc/inadyn.conf -background +pidfile /var/run/inadyn.pid update_period_sec 600 # Check for a new IP every 600 seconds username test # replace 'test' with your username password test # replace 'test' with your password -dyndns_system dyndns@dyndns.org # replace w/ your provider +dyndns_system default@dyndns.org # replace w/ your provider -# uncomment the alias statement below to test it on your system alias test.homeip.net # replace 'test.homeip.net' with yourdomainname for actual (non-test) use diff --git a/package/initscripts/init.d/S20urandom b/package/initscripts/init.d/S20urandom index 36277ba6181..2f5b4e4c861 100755 --- a/package/initscripts/init.d/S20urandom +++ b/package/initscripts/init.d/S20urandom @@ -19,7 +19,7 @@ case "$1" in fi if [ "$VERBOSE" != no ] then - echo -n "Initializing random number generator... " + printf "Initializing random number generator... " fi # Load and then save 512 bytes, # which is the size of the entropy pool @@ -38,7 +38,7 @@ case "$1" in fi # Carry a random seed from shut-down to start-up; # see documentation in linux/drivers/char/random.c - [ "$VERBOSE" != no ] && echo -n "Saving random seed... " + [ "$VERBOSE" != no ] && printf "Saving random seed... " umask 077 dd if=/dev/urandom of=/etc/random-seed count=1 \ >/dev/null 2>&1 || echo "urandom stop: failed." diff --git a/package/initscripts/init.d/S40network b/package/initscripts/init.d/S40network index bfdd491e93d..7b11d8b9020 100755 --- a/package/initscripts/init.d/S40network +++ b/package/initscripts/init.d/S40network @@ -12,7 +12,7 @@ case "$1" in /sbin/ifup -a ;; stop) - echo -n "Stopping network..." + printf "Stopping network..." /sbin/ifdown -a ;; restart|reload) diff --git a/package/input-event-daemon/S99input-event-daemon b/package/input-event-daemon/S99input-event-daemon index 3a82b06ca12..8d70dd3079c 100755 --- a/package/input-event-daemon/S99input-event-daemon +++ b/package/input-event-daemon/S99input-event-daemon @@ -3,14 +3,14 @@ [ -f /usr/bin/input-event-daemon ] || exit 0 start() { - echo -n "Starting input-event-daemon: " + printf "Starting input-event-daemon: " input-event-daemon echo "done" } stop() { - echo -n "Stopping input-event-daemon: " + printf "Stopping input-event-daemon: " killall input-event-daemon echo "done" } diff --git a/package/input-tools/input-tools.mk b/package/input-tools/input-tools.mk index c70ef471bfe..81e913d8f22 100644 --- a/package/input-tools/input-tools.mk +++ b/package/input-tools/input-tools.mk @@ -7,7 +7,7 @@ INPUT_TOOLS_VERSION = 20051019 INPUT_TOOLS_SOURCE = joystick_$(INPUT_TOOLS_VERSION).orig.tar.gz INPUT_TOOLS_PATCH = joystick_$(INPUT_TOOLS_VERSION)-5.diff.gz -INPUT_TOOLS_SITE = http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/j/joystick +INPUT_TOOLS_SITE = http://snapshot.debian.org/archive/debian/20101023T043132Z/pool/main/j/joystick INPUT_TOOLS_LICENSE = GPLv2+ INPUT_TOOLS_LICENSE_FILES = utils/Makefile diff --git a/package/intel-microcode/intel-microcode.hash b/package/intel-microcode/intel-microcode.hash index e46f7b0d030..7925209b22a 100644 --- a/package/intel-microcode/intel-microcode.hash +++ b/package/intel-microcode/intel-microcode.hash @@ -1,2 +1,2 @@ -# Locally computed by Yann (http://lists.busybox.net/pipermail/buildroot/2015-January/117918.html) and me -sha256 f5e7fb58643b2bf327eedf7bd91780fd5dfe74397552977cc77194c165910255 microcode-20150107.tgz +# Locally computed +sha256 096e39489eef67666be652e81fa372a06b74f39ea3d565dc0287242c668717e7 microcode-20151106.tgz diff --git a/package/intel-microcode/intel-microcode.mk b/package/intel-microcode/intel-microcode.mk index 23c4b3ebfb4..aefa99a1c96 100644 --- a/package/intel-microcode/intel-microcode.mk +++ b/package/intel-microcode/intel-microcode.mk @@ -4,9 +4,9 @@ # ################################################################################ -INTEL_MICROCODE_VERSION = 20150107 +INTEL_MICROCODE_VERSION = 20151106 INTEL_MICROCODE_SOURCE = microcode-$(INTEL_MICROCODE_VERSION).tgz -INTEL_MICROCODE_SITE = http://downloadmirror.intel.com/24616/eng +INTEL_MICROCODE_SITE = http://downloadmirror.intel.com/25512/eng INTEL_MICROCODE_STRIP_COMPONENTS = 0 INTEL_MICROCODE_LICENSE = PROPRIETARY INTEL_MICROCODE_LICENSE_FILES = license.txt diff --git a/package/intltool/intltool.hash b/package/intltool/intltool.hash index a60af507cc6..f6f41dc7092 100644 --- a/package/intltool/intltool.hash +++ b/package/intltool/intltool.hash @@ -1,2 +1,5 @@ -# From https://launchpad.net/intltool/trunk/0.50.2/+download/intltool-0.50.2.tar.gz/+md5 -md5 23fbd879118253cb99aeac067da5f591 intltool-0.50.2.tar.gz +# From https://launchpad.net/intltool/trunk/0.51.0/+download/intltool-0.51.0.tar.gz/+md5 +md5 12e517cac2b57a0121cda351570f1e63 intltool-0.51.0.tar.gz + +# Locally calculated +sha256 67c74d94196b153b774ab9f89b2fa6c6ba79352407037c8c14d5aeb334e959cd intltool-0.51.0.tar.gz diff --git a/package/intltool/intltool.mk b/package/intltool/intltool.mk index 549cb3b2f1d..fb801a17b42 100644 --- a/package/intltool/intltool.mk +++ b/package/intltool/intltool.mk @@ -4,7 +4,7 @@ # ################################################################################ -INTLTOOL_VERSION = 0.50.2 +INTLTOOL_VERSION = 0.51.0 INTLTOOL_SITE = https://launchpad.net/intltool/trunk/$(INTLTOOL_VERSION)/+download INTLTOOL_LICENSE = GPLv2+ INTLTOOL_LICENSE_FILES = COPYING diff --git a/package/iodine/iodine.mk b/package/iodine/iodine.mk index 57deb9ece8a..9de54e041e0 100644 --- a/package/iodine/iodine.mk +++ b/package/iodine/iodine.mk @@ -10,8 +10,19 @@ IODINE_DEPENDENCIES = zlib IODINE_LICENSE = MIT IODINE_LICENSE_FILES = README +IODINE_CFLAGS = $(TARGET_CFLAGS) + +# iodine contains a local implementation of daemon(3) for older +# systems, unless __GLIBC__ is defined. Musl does provide it, but +# unlike uClibc it doesn't define __GLIBC__. Work around it by +# pretending to be glibc as we otherwise end up with symbol conflicts. +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +IODINE_CFLAGS += -D__GLIBC__ +endif + define IODINE_BUILD_CMDS - $(MAKE) CC="$(TARGET_CC)" ARCH=$(BR2_ARCH) -C $(@D) + $(TARGET_CONFIGURE_OPTS) CFLAGS="$(IODINE_CFLAGS)" \ + $(MAKE) ARCH=$(BR2_ARCH) -C $(@D) endef define IODINE_INSTALL_TARGET_CMDS diff --git a/package/iostat/iostat.mk b/package/iostat/iostat.mk index d28dc1b76e5..d591c67dcb3 100644 --- a/package/iostat/iostat.mk +++ b/package/iostat/iostat.mk @@ -10,7 +10,8 @@ IOSTAT_LICENSE = GPL IOSTAT_LICENSE_FILES = LICENSE define IOSTAT_BUILD_CMDS - $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) + $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -DHZ=100" endef define IOSTAT_INSTALL_TARGET_CMDS diff --git a/package/iperf3/0002-Fix-build-using-musl-libc.patch b/package/iperf3/0002-Fix-build-using-musl-libc.patch new file mode 100644 index 00000000000..f2203605f00 --- /dev/null +++ b/package/iperf3/0002-Fix-build-using-musl-libc.patch @@ -0,0 +1,43 @@ +From 1fe02385b60c9dcd8a04b8bd3ff5cff120ec35a6 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 30 Jan 2016 19:23:20 +0100 +Subject: [PATCH 1/1] Fix build using musl libc + +Fixes https://github.com/esnet/iperf/issues/331 + +Signed-off-by: Bernd Kuhls +--- +Patch sent upstream: https://github.com/esnet/iperf/pull/344 + + src/cjson.h | 2 ++ + src/timer.h | 1 + + 2 files changed, 3 insertions(+) + +diff --git a/src/cjson.h b/src/cjson.h +index d4449e6..7af19a9 100644 +--- a/src/cjson.h ++++ b/src/cjson.h +@@ -23,6 +23,8 @@ + #ifndef cJSON__h + #define cJSON__h + ++#include ++ + #ifdef __cplusplus + extern "C" + { +diff --git a/src/timer.h b/src/timer.h +index 0f9c5eb..9b22b7f 100644 +--- a/src/timer.h ++++ b/src/timer.h +@@ -30,6 +30,7 @@ + #ifndef __TIMER_H + #define __TIMER_H + ++#include + #include + + /* TimerClientData is an opaque value that tags along with a timer. The +-- +2.7.0.rc3 + diff --git a/package/iperf3/Config.in b/package/iperf3/Config.in index 1f263ab8d0b..074c1d36c08 100644 --- a/package/iperf3/Config.in +++ b/package/iperf3/Config.in @@ -10,7 +10,7 @@ config BR2_PACKAGE_IPERF3 It's a redesign of the NLANR/DAST iperf(2) and is not backward compatible. - https://github.com/esnet/iperf + http://software.es.net/iperf/index.html comment "iperf3 needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/iperf3/iperf3.hash b/package/iperf3/iperf3.hash new file mode 100644 index 00000000000..4b9332d6f6a --- /dev/null +++ b/package/iperf3/iperf3.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 86f292e554d42d1bddbd5f587e594005f4ca202c284e4da45ed8cfbe935a5be8 iperf3-3.1.1.tar.gz diff --git a/package/iperf3/iperf3.mk b/package/iperf3/iperf3.mk index b8e594f1505..74d6cce2be1 100644 --- a/package/iperf3/iperf3.mk +++ b/package/iperf3/iperf3.mk @@ -4,9 +4,11 @@ # ################################################################################ -IPERF3_VERSION = 3.0.10 +IPERF3_VERSION = 3.1.1 IPERF3_SITE = $(call github,esnet,iperf,$(IPERF3_VERSION)) IPERF3_LICENSE = BSD-3c, BSD-2c, MIT IPERF3_LICENSE_FILES = LICENSE +IPERF3_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" + $(eval $(autotools-package)) diff --git a/package/ipkg/0001-fix-musl-build.patch b/package/ipkg/0001-fix-musl-build.patch new file mode 100644 index 00000000000..fce3ec4afbe --- /dev/null +++ b/package/ipkg/0001-fix-musl-build.patch @@ -0,0 +1,50 @@ +Remove __P macro usage to fix musl build + +__P() is used for compatibility with old K&R C compilers. With ANSI C +this macro has no effect. + +This fixes a compilation error with musl libc because of undeclared +__P. + +Signed-off-by: Thomas Petazzoni + +Index: b/md5.c +=================================================================== +--- a/md5.c ++++ b/md5.c +@@ -97,21 +97,21 @@ + + /* Initialize structure containing state of computation. + (RFC 1321, 3.3: Step 3) */ +-static void md5_init_ctx __P ((struct md5_ctx *ctx)); ++static void md5_init_ctx (struct md5_ctx *ctx); + + /* Starting with the result of former calls of this function (or the + initialization function update the context for the next LEN bytes + starting at BUFFER. + It is necessary that LEN is a multiple of 64!!! */ +-static void md5_process_block __P ((const void *buffer, size_t len, +- struct md5_ctx *ctx)); ++static void md5_process_block (const void *buffer, size_t len, ++ struct md5_ctx *ctx); + + /* Starting with the result of former calls of this function (or the + initialization function update the context for the next LEN bytes + starting at BUFFER. + It is NOT required that LEN is a multiple of 64. */ +-static void md5_process_bytes __P ((const void *buffer, size_t len, +- struct md5_ctx *ctx)); ++static void md5_process_bytes (const void *buffer, size_t len, ++ struct md5_ctx *ctx); + + /* Process the remaining bytes in the buffer and put result from CTX + in first 16 bytes following RESBUF. The result is always in little +@@ -120,7 +120,7 @@ + + IMPORTANT: On some systems it is required that RESBUF is correctly + aligned for a 32 bits value. */ +-static void *md5_finish_ctx __P ((struct md5_ctx *ctx, void *resbuf)); ++static void *md5_finish_ctx (struct md5_ctx *ctx, void *resbuf); + + //---------------------------------------------------------------------------- + //--------end of md5.h diff --git a/package/ipmitool/ipmitool.hash b/package/ipmitool/ipmitool.hash index 04b3542e756..60189c00bf2 100644 --- a/package/ipmitool/ipmitool.hash +++ b/package/ipmitool/ipmitool.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 3209c99b996fdea38c462cfd10387d6895fd5261227ab6f79b59f88e21938ce5 ipmitool-1.8.14.tar.bz2 +sha256 4acd2df5f8740fef5c032cebee0113ec4d3bbef04a6f4dbfaf7fcc7f3eb08c40 ipmitool-1.8.15.tar.bz2 diff --git a/package/ipmitool/ipmitool.mk b/package/ipmitool/ipmitool.mk index 137987fd710..3ace5a75288 100644 --- a/package/ipmitool/ipmitool.mk +++ b/package/ipmitool/ipmitool.mk @@ -4,7 +4,7 @@ # ################################################################################ -IPMITOOL_VERSION = 1.8.14 +IPMITOOL_VERSION = 1.8.15 IPMITOOL_SOURCE = ipmitool-$(IPMITOOL_VERSION).tar.bz2 IPMITOOL_SITE = http://downloads.sourceforge.net/project/ipmitool/ipmitool/$(IPMITOOL_VERSION) IPMITOOL_LICENSE = BSD-3c diff --git a/package/ipmiutil/0001-configure.ac-use-CC-instead-of-gcc-full-link-for-sta.patch b/package/ipmiutil/0001-configure.ac-use-CC-instead-of-gcc-full-link-for-sta.patch deleted file mode 100644 index 07e37d4a17f..00000000000 --- a/package/ipmiutil/0001-configure.ac-use-CC-instead-of-gcc-full-link-for-sta.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 2909bfbc97559cf3e28c9045f64e3078aacca354 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Sat, 4 Apr 2015 17:59:32 +0200 -Subject: [PATCH] configure.ac: use CC instead of gcc, full link for stack - protector test - -Using gcc directly is incorrect when cross-compiling, $CC should be -used instead. - -Also, for the stack protector test, a full link is needed, since just -the compilation can work, but the link can fail due to libssp not -being available in the toolchain. - -Signed-off-by: Thomas Petazzoni ---- - configure.ac | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure.ac b/configure.ac -index c1193c6..61efbc5 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -308,7 +308,7 @@ else - echo $ECHO_N "checking compile warning flags ... $ECHO_C" - cfwarn="-Wno-pointer-sign -Wno-sign-conversion -Wunused-result -Wgnu-designator" - echo "int main() { return(1); }" >$tmpc -- gcc -o $tmpo -c $cfwarn $tmpc >/dev/null 2>&1 -+ $CC -o $tmpo -c $cfwarn $tmpc >/dev/null 2>&1 - if test $? -ne 0 ; then - cfwarn= - echo "skip" -@@ -319,7 +319,7 @@ else - echo $ECHO_N "checking compile fortify flags ... $ECHO_C" - cfhard="-fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2" - echo "int main() { return(1); }" >$tmpc -- gcc -o $tmpo -c $cfhard $tmpc >/dev/null 2>&1 -+ $CC -o $tmpo $cfhard $tmpc >/dev/null 2>&1 - if test $? -ne 0 ; then - cfhard= - echo "skip" --- -2.1.0 - diff --git a/package/ipmiutil/0002-no-build-doc.patch b/package/ipmiutil/0001-no-build-doc.patch similarity index 78% rename from package/ipmiutil/0002-no-build-doc.patch rename to package/ipmiutil/0001-no-build-doc.patch index f26d22e97c9..ea7da972493 100644 --- a/package/ipmiutil/0002-no-build-doc.patch +++ b/package/ipmiutil/0001-no-build-doc.patch @@ -7,10 +7,11 @@ Fixes: Signed-off-by: "Yann E. MORIN" -diff -durN ipmiutil-2.9.5.orig/configure.ac ipmiutil-2.9.5/configure.ac ---- ipmiutil-2.9.5.orig/configure.ac 2015-04-06 12:23:01.020731749 +0200 -+++ ipmiutil-2.9.5/configure.ac 2015-04-06 12:24:31.181773510 +0200 -@@ -55,7 +55,7 @@ +diff --git a/configure.ac b/configure.ac +index 344b27a71a35..41b6ea89167a 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -56,7 +56,7 @@ LIB_DIR="/usr/lib" isredhat=0 init_scripts="scripts/ipmi_port.sh scripts/ipmiutil_evt scripts/ipmiutil_asy scripts/ipmiutil_wdt" projdir=`pwd` @@ -19,7 +20,7 @@ diff -durN ipmiutil-2.9.5.orig/configure.ac ipmiutil-2.9.5/configure.ac os=Linux # ltmain.sh, config.sub, et al should have been created, but check to be sure. -@@ -161,7 +161,7 @@ +@@ -162,7 +162,7 @@ AC_ARG_ENABLE([standalone], LANPLUS_SAM="no" LD_SAMX="" CFLAGS="-O2" diff --git a/package/ipmiutil/0002-lib-Makefile.am-fix-lanplus-disable.patch b/package/ipmiutil/0002-lib-Makefile.am-fix-lanplus-disable.patch new file mode 100644 index 00000000000..35d1d679ba3 --- /dev/null +++ b/package/ipmiutil/0002-lib-Makefile.am-fix-lanplus-disable.patch @@ -0,0 +1,38 @@ +From: Baruch Siach +Date: Tue, 27 Oct 2015 14:23:44 +0200 +Subject: [PATCH] lib/Makefile.am: fix lanplus disable + +Protect the install target as well when lanplus is disabled. Fixes the +following installation failure when openssl is missing: + +In file included from lanplus.c:78:0: +./inc/ipmitool/ipmi.h:51:25: fatal error: openssl/evp.h: No such file or directory + +Patch status: sent upstream +(http://sourceforge.net/p/ipmiutil/mailman/message/34572580/) + +Signed-off-by: Baruch Siach +--- + lib/Makefile.am | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/lib/Makefile.am b/lib/Makefile.am +index 805a218ab7eb..939594cfd3e5 100644 +--- a/lib/Makefile.am ++++ b/lib/Makefile.am +@@ -51,8 +51,10 @@ distclean: + cd lanplus; make distclean + + install: +- $(MKDIR) ${datato} +- cd lanplus; make install ++ if [ "$(PLUSFLAGS)" = "-DHAVE_LANPLUS" ]; then \ ++ $(MKDIR) ${datato} ; \ ++ cd lanplus; make install ; \ ++ fi + + check: + +-- +2.6.1 + diff --git a/package/ipmiutil/0003-configure.ac-fix-stack-protector-test.patch b/package/ipmiutil/0003-configure.ac-fix-stack-protector-test.patch new file mode 100644 index 00000000000..d6ad6045dd3 --- /dev/null +++ b/package/ipmiutil/0003-configure.ac-fix-stack-protector-test.patch @@ -0,0 +1,45 @@ +From: Baruch Siach +Date: Tue, 27 Oct 2015 13:58:24 +0200 +Subject: [PATCH] configure.ac: fix stack protector test + +gcc does not generate stack protection check code for function that does not +use its stack. Some toolchain (most notable uClibc based) accept the +-fstack-protector option, but don't provide libssp. The current test will +incorrectly identify this case, leading to link failures like: + +ipmiutil.o: In function `main': +ipmiutil.c:(.text.startup+0x1c0): undefined reference to +`__stack_chk_fail_local' +ialarms.o: In function `get_alarms_picmg': +ialarms.c:(.text+0x1c5): undefined reference to `__stack_chk_fail_local' +ialarms.o: In function `.L46': +ialarms.c:(.text+0x362): undefined reference to `__stack_chk_fail_local' +ialarms.o: In function `get_enc_leds': +ialarms.c:(.text+0x45f): undefined reference to `__stack_chk_fail_local' + +Add stack usage code to the test to correctly identify missing libssp. + +Patch status: sent upstream +(http://sourceforge.net/p/ipmiutil/mailman/message/34572536/) + +Signed-off-by: Baruch Siach +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 41b6ea89167a..f3f60fb9ff69 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -334,7 +334,7 @@ else + rm -f $tmpc $tmpo >/dev/null 2>&1 + echo $ECHO_N "checking compile fortify flags ... $ECHO_C" + cfhard="-fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2" +- echo "int main() { return(1); }" >$tmpc ++ echo "int main() { alloca(100); return(1); }" >$tmpc + $CC -o $tmpo $cfhard $tmpc >/dev/null 2>&1 + if test $? -ne 0 ; then + cfhard= +-- +2.6.1 + diff --git a/package/ipmiutil/0003-really-disable-lanplus.patch b/package/ipmiutil/0003-really-disable-lanplus.patch deleted file mode 100644 index 33dd249196f..00000000000 --- a/package/ipmiutil/0003-really-disable-lanplus.patch +++ /dev/null @@ -1,95 +0,0 @@ -lib: do not try to build lanplus if it is disabled - -If lanplus is disabled, we do not want to build it, especially when -openssl is disabled, otherwise it fails to build with: - - make[4]: Entering directory `/home/buildroot/build/instance-0/output/build/ipmiutil-2.9.5/lib/lanplus' - /home/buildroot/build/instance-0/output/host/usr/bin/i686-ctng-linux-gnu-gcc -DHAVE_CONFIG_H - -I. -I../.. -I. -I./inc -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 - -DLINUX -DSKIP_MD2 -fPIC -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -fPIC - -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -c -o lanplus.o lanplus.c - In file included from lanplus.c:78:0: - ./inc/ipmitool/ipmi.h:51:25: fatal error: openssl/evp.h: No such file or directory - -Sample build error visible at: - http://autobuild.buildroot.org/results/04a/04a1c48d484debd7894fd32997ed50d3a0110b93/build-end.log - -Signed-off-by: "Yann E. MORIN" - -diff -durN ipmiutil-2.9.5.orig/configure.ac ipmiutil-2.9.5/configure.ac ---- ipmiutil-2.9.5.orig/configure.ac 2015-05-23 19:33:54.293468417 +0200 -+++ ipmiutil-2.9.5/configure.ac 2015-05-23 19:31:41.595877435 +0200 -@@ -474,6 +474,8 @@ - AC_SUBST(SHR_LINK) - AC_SUBST(pkgconfigdir) - -+AM_CONDITIONAL([LANPLUS], [test x$LANPLUS_SAM = xyes]) -+ - AC_OUTPUT(Makefile util/Makefile lib/Makefile lib/libipmiutil.pc lib/lanplus/Makefile doc/Makefile scripts/Makefile) - - if test "x$sysname" = "xSunOS"; then -diff -durN ipmiutil-2.9.5.orig/lib/lanplus/Makefile.am ipmiutil-2.9.5/lib/lanplus/Makefile.am ---- ipmiutil-2.9.5.orig/lib/lanplus/Makefile.am 2014-11-04 18:46:11.000000000 +0100 -+++ ipmiutil-2.9.5/lib/lanplus/Makefile.am 2015-05-23 19:32:30.956469461 +0200 -@@ -1,5 +1,7 @@ - # Makefile.am for libipmi_lanplus.so and libipmi_lanplus.a - -+if LANPLUS -+ - ODIR = obj - CFLAGS_STATIC = @OS_CFLAGS@ -DSTATIC -fno-strict-aliasing -fPIC $(CFLAGS) - AM_CFLAGS = @OS_CFLAGS@ -fPIC @LANPLUS_CFLAGS@ -@@ -53,3 +55,4 @@ - #$(ODIR)/%.o: %.c $(ODIR) - # $(CC) -c $(CFLAGS_STATIC) $(INCLUDES) -o $@ $< - -+endif -diff -durN ipmiutil-2.9.5.orig/lib/Makefile.am ipmiutil-2.9.5/lib/Makefile.am ---- ipmiutil-2.9.5.orig/lib/Makefile.am 2014-11-04 18:46:11.000000000 +0100 -+++ ipmiutil-2.9.5/lib/Makefile.am 2015-05-23 19:41:06.378636668 +0200 -@@ -32,28 +32,39 @@ - else cp -f libipmiapi64.a.redhat libipmiapi.a; fi \ - else cp -f libipmiapi32.a libipmiapi.a; fi \ - fi -+if LANPLUS - cd lanplus; make clean; make - cp -f lanplus/libipmi_lanplus.a . -+endif # LANPLUS - - clean: - rm -f libipmiapi.a lib*_lanplus.a lib*_lanplus.so -+if LANPLUS - cd lanplus; make clean -+endif # LANPLUS - - clobber: - rm -f libipmiapi.a lib*_lanplus.a lib*_lanplus.so -+if LANPLUS - cd lanplus; make clean -+endif # LANPLUS - - distclean: - rm -f libipmiapi.a lib*.a lib*_lanplus.so -+if LANPLUS - cd lanplus; make distclean -+endif # LANPLUS - - install: - $(MKDIR) ${datato} -+if LANPLUS - cd lanplus; make install -+endif # LANPLUS - - check: - - installso: -+if LANPLUS - @if [ -d /usr/lib64 ]; then \ - $(MKDIR) ${lib64} ; \ - echo "installing libipmi_lanplus into ${lib64}"; \ -@@ -68,4 +79,5 @@ - (cd ${lib32} && rm -f libipmi_lanplus.* ); \ - ../../libtool --finish ${lib64} \ - fi -+endif # LANPLUS - diff --git a/package/ipmiutil/Config.in b/package/ipmiutil/Config.in index a2a898b5c5e..9eb5452b6ce 100644 --- a/package/ipmiutil/Config.in +++ b/package/ipmiutil/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_IPMIUTIL bool "ipmiutil" depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_x86_64 || BR2_i386 help @@ -11,7 +12,7 @@ config BR2_PACKAGE_IPMIUTIL http://ipmiutil.sourceforge.net/ -comment "ipmiutil needs a toolchain w/ threads" +comment "ipmiutil needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS depends on BR2_x86_64 || BR2_i386 diff --git a/package/ipmiutil/ipmiutil.hash b/package/ipmiutil/ipmiutil.hash index 2afc0f2c131..35a0bd360c1 100644 --- a/package/ipmiutil/ipmiutil.hash +++ b/package/ipmiutil/ipmiutil.hash @@ -1,2 +1,2 @@ # From http://sourceforge.net/projects/ipmiutil/files/?source=navbar -sha1 265f022c876da373b2ecb4be2bc0f98e65f70977 ipmiutil-2.9.5.tar.gz +sha1 cc26d977afc87717812ef25aa02b2d5ab84843c4 ipmiutil-2.9.7.tar.gz diff --git a/package/ipmiutil/ipmiutil.mk b/package/ipmiutil/ipmiutil.mk index 6f462b96557..30d0f966c62 100644 --- a/package/ipmiutil/ipmiutil.mk +++ b/package/ipmiutil/ipmiutil.mk @@ -4,11 +4,11 @@ # ################################################################################ -IPMIUTIL_VERSION = 2.9.5 -IPMIUTIL_SITE = http://sourceforge.net/projects/ipmiutil/files/ +IPMIUTIL_VERSION = 2.9.7 +IPMIUTIL_SITE = http://sourceforge.net/projects/ipmiutil/files IPMIUTIL_LICENSE = BSD-3c IPMIUTIL_LICENSE_FILES = COPYING -# We're patching configure.ac , lib/Makefile.am and lib/lanplus/Makefile.am +# We're patching configure.ac, lib/Makefile.am IPMIUTIL_AUTORECONF = YES IPMIUTIL_MAKE = $(MAKE1) diff --git a/package/iproute2/0001-Avoid-in6_addr-redefinition.patch b/package/iproute2/0001-Avoid-in6_addr-redefinition.patch new file mode 100644 index 00000000000..52e29408ad9 --- /dev/null +++ b/package/iproute2/0001-Avoid-in6_addr-redefinition.patch @@ -0,0 +1,95 @@ +From 48596709d8ab59727b79a5c6db33ebb251c36543 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 19 Nov 2015 17:44:25 +0100 +Subject: [PATCH] Avoid in6_addr redefinition +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Due to both and being included, the +in6_addr is being redefined: once from the C library headers and once +from the kernel headers. This causes some build failures with for +example the musl C library: + +In file included from ../include/linux/xfrm.h:4:0, + from xfrm.h:29, + from ipxfrm.c:39: +../include/linux/in6.h:32:8: error: redefinition of ‘struct in6_addr’ + struct in6_addr { + ^ +In file included from .../output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/netdb.h:9:0, + from ipxfrm.c:34: +.../output/host/usr/x86_64-buildroot-linux-musl/sysroot/usr/include/netinet/in.h:24:8: note: originally defined here + struct in6_addr + ^ + +In order to fix this, use just the C library header . + +Original patch taken from +http://git.alpinelinux.org/cgit/aports/tree/main/iproute2/musl-fixes.patch. + +Signed-off-by: Thomas Petazzoni +--- + include/libiptc/ipt_kernel_headers.h | 2 -- + include/linux/if_bridge.h | 1 - + include/linux/netfilter.h | 2 -- + include/linux/xfrm.h | 1 - + 4 files changed, 6 deletions(-) + +diff --git a/include/libiptc/ipt_kernel_headers.h b/include/libiptc/ipt_kernel_headers.h +index 7e87828..9566be5 100644 +--- a/include/libiptc/ipt_kernel_headers.h ++++ b/include/libiptc/ipt_kernel_headers.h +@@ -15,12 +15,10 @@ + #else /* libc5 */ + #include + #include +-#include + #include + #include + #include + #include + #include +-#include + #endif + #endif +diff --git a/include/linux/if_bridge.h b/include/linux/if_bridge.h +index ee197a3..f823aa4 100644 +--- a/include/linux/if_bridge.h ++++ b/include/linux/if_bridge.h +@@ -15,7 +15,6 @@ + + #include + #include +-#include + + #define SYSFS_BRIDGE_ATTR "bridge" + #define SYSFS_BRIDGE_FDB "brforward" +diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h +index b71b4c9..3e4e6ae 100644 +--- a/include/linux/netfilter.h ++++ b/include/linux/netfilter.h +@@ -4,8 +4,6 @@ + #include + + #include +-#include +-#include + + /* Responses from hook functions. */ + #define NF_DROP 0 +diff --git a/include/linux/xfrm.h b/include/linux/xfrm.h +index b8f5451..a9761a5 100644 +--- a/include/linux/xfrm.h ++++ b/include/linux/xfrm.h +@@ -1,7 +1,6 @@ + #ifndef _LINUX_XFRM_H + #define _LINUX_XFRM_H + +-#include + #include + + /* All of the structures in this file may not change size as they are +-- +2.6.3 + diff --git a/package/iproute2/0002-Add-missing-sys-types.h-include.patch b/package/iproute2/0002-Add-missing-sys-types.h-include.patch new file mode 100644 index 00000000000..ef918140dae --- /dev/null +++ b/package/iproute2/0002-Add-missing-sys-types.h-include.patch @@ -0,0 +1,38 @@ +From 560dee4b4be54699c0c9679771c9e0d61e4db80a Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 19 Nov 2015 17:48:55 +0100 +Subject: [PATCH] Add missing include +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The u_intXX_t types are defined in , so it should be +included before using those types. Otherwise, with certain C +libraries, the build fails with: + +In file included from ../include/iptables.h:4:0, + from m_ipt.c:18: +../include/iptables_common.h:47:16: error: unknown type name ‘u_int32_t’ + #define __le32 u_int32_t + +Signed-off-by: Thomas Petazzoni +--- + include/iptables_common.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/include/iptables_common.h b/include/iptables_common.h +index 9099667..2c27a4b 100644 +--- a/include/iptables_common.h ++++ b/include/iptables_common.h +@@ -43,6 +43,8 @@ extern char *lib_dir; + extern void init_extensions(void); + #endif + ++#include ++ + #define __be32 u_int32_t + #define __le32 u_int32_t + #define __be16 u_int16_t +-- +2.6.3 + diff --git a/package/iproute2/0003-iproute2-fix-building-with-musl.patch b/package/iproute2/0003-iproute2-fix-building-with-musl.patch new file mode 100644 index 00000000000..377bf40bff5 --- /dev/null +++ b/package/iproute2/0003-iproute2-fix-building-with-musl.patch @@ -0,0 +1,33 @@ +From e445686215f44c95b8b777c4c7efe5318d48505e Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Thu, 21 Jan 2016 15:14:44 -0300 +Subject: [PATCH] iproute2: fix building with musl +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +We need limits.h for PATH_MAX, fixes: + +rt_names.c:364:13: error: ‘PATH_MAX’ undeclared (first use in this +function) + +Signed-off-by: Gustavo Zacarias +--- + lib/rt_names.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/lib/rt_names.c b/lib/rt_names.c +index f6d17c0..b665d3e 100644 +--- a/lib/rt_names.c ++++ b/lib/rt_names.c +@@ -18,6 +18,7 @@ + #include + #include + #include ++#include + + #include + #include +-- +2.4.10 + diff --git a/package/iproute2/iproute2.hash b/package/iproute2/iproute2.hash index 2263e89d80d..d291d3de8d3 100644 --- a/package/iproute2/iproute2.hash +++ b/package/iproute2/iproute2.hash @@ -1,2 +1,2 @@ # From https://kernel.org/pub/linux/utils/net/iproute2/sha256sums.asc -sha256 73077a989efb934450bd655cbd9aaddaa747cb696c64d0c9a3323768a6a8e66f iproute2-4.1.1.tar.xz +sha256 bc91c367288a19f78ef800cd6840363be1f22da8436fbae88e1a7250490d6514 iproute2-4.4.0.tar.xz diff --git a/package/iproute2/iproute2.mk b/package/iproute2/iproute2.mk index c42c5c9f0cb..6fa68c2c297 100644 --- a/package/iproute2/iproute2.mk +++ b/package/iproute2/iproute2.mk @@ -4,7 +4,7 @@ # ################################################################################ -IPROUTE2_VERSION = 4.1.1 +IPROUTE2_VERSION = 4.4.0 IPROUTE2_SOURCE = iproute2-$(IPROUTE2_VERSION).tar.xz IPROUTE2_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/net/iproute2 IPROUTE2_DEPENDENCIES = host-bison host-flex host-pkgconf \ @@ -18,6 +18,10 @@ ifeq ($(BR2_PACKAGE_BUSYBOX),y) IPROUTE2_DEPENDENCIES += busybox endif +ifeq ($(BR2_PACKAGE_ELFUTILS),y) +IPROUTE2_DEPENDENCIES += elfutils +endif + # If we've got iptables enable xtables support for tc ifeq ($(BR2_PACKAGE_IPTABLES)x$(BR2_STATIC_LIBS),yx) IPROUTE2_DEPENDENCIES += iptables @@ -54,7 +58,6 @@ define IPROUTE2_CONFIGURE_CMDS cd $(@D) && $(TARGET_CONFIGURE_OPTS) ./configure $(IPROUTE2_DISABLE_ARPD) $(IPROUTE2_WITH_IPTABLES) - $(IPROUTE2_DISABLE_TIPC) endef define IPROUTE2_BUILD_CMDS diff --git a/package/iprutils/0001-Don-t-use-gettext.patch b/package/iprutils/0001-Don-t-use-gettext.patch deleted file mode 100644 index a80cc8758cf..00000000000 --- a/package/iprutils/0001-Don-t-use-gettext.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 34fb0785f1d66ba1f79b470223426031f6258782 Mon Sep 17 00:00:00 2001 -From: Vicente Olivert Riera -Date: Wed, 17 Sep 2014 17:48:54 +0100 -Subject: [PATCH 1/3] iprutils: Don't use gettext - -... since we don't have any translation. - -Based on the former patch by Jeremy Kerr. - -Signed-off-by: Vicente Olivert Riera ---- - iprconfig.h | 4 +--- - 1 files changed, 1 insertions(+), 3 deletions(-) - -diff --git a/iprconfig.h b/iprconfig.h -index cad591a..4a1fa0d 100644 ---- a/iprconfig.h -+++ b/iprconfig.h -@@ -11,9 +11,7 @@ - * - **/ - --#include -- --#define _(string) gettext(string) -+#define _(string) (string) - #define __(string) (string) - #define EXIT_FLAG 0x8000 /* stops at given screen on exit call */ - #define CANCEL_FLAG 0x4000 /* stops at given screen on quit call */ --- -1.7.1 - diff --git a/package/iprutils/0001-iprutils-Don-t-use-gettext.patch b/package/iprutils/0001-iprutils-Don-t-use-gettext.patch new file mode 100644 index 00000000000..680bb07f5d8 --- /dev/null +++ b/package/iprutils/0001-iprutils-Don-t-use-gettext.patch @@ -0,0 +1,48 @@ +From 4ce3545b704588c5889b8dd7b100fcdb88ae2e1a Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Wed, 17 Sep 2014 17:48:54 +0100 +Subject: [PATCH] iprutils: Don't use gettext + +... since we don't have any translation. + +Based on the former patch by Jeremy Kerr. + +Signed-off-by: Vicente Olivert Riera +[Thomas: adapt to the new autotools build system.] +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 2 +- + iprconfig.h | 4 +--- + 2 files changed, 2 insertions(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index ee69bee..c1a4f70 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -137,7 +137,7 @@ AC_SUBST([IPRCONFIG_LIBS]) + LIBS="$save_LIBS" + + # Checks for header files. +-AC_CHECK_HEADERS([fcntl.h libintl.h locale.h netinet/in.h nl_types.h \ ++AC_CHECK_HEADERS([fcntl.h locale.h netinet/in.h nl_types.h \ + paths.h stddef.h stdint.h stdlib.h string.h sys/file.h \ + sys/ioctl.h sys/mount.h sys/socket.h syslog.h \ + unistd.h ncurses.h form.h menu.h], [], +diff --git a/iprconfig.h b/iprconfig.h +index 9bce950..751a737 100644 +--- a/iprconfig.h ++++ b/iprconfig.h +@@ -11,9 +11,7 @@ + * + **/ + +-#include +- +-#define _(string) gettext(string) ++#define _(string) (string) + #define __(string) (string) + #define EXIT_FLAG 0x8000 /* stops at given screen on exit call */ + #define CANCEL_FLAG 0x4000 /* stops at given screen on quit call */ +-- +2.6.4 + diff --git a/package/iprutils/0002-Allow-CFLAGS-to-be-extended-from-the-enviro.patch b/package/iprutils/0002-Allow-CFLAGS-to-be-extended-from-the-enviro.patch deleted file mode 100644 index dbfa0084cb5..00000000000 --- a/package/iprutils/0002-Allow-CFLAGS-to-be-extended-from-the-enviro.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 9a46afebdc63ba67cd95748f898969d6c622a129 Mon Sep 17 00:00:00 2001 -From: Vicente Olivert Riera -Date: Wed, 17 Sep 2014 18:08:31 +0100 -Subject: [PATCH 1/2] iprutils: Allow CFLAGS to be extended from the environment - -We also remove -g, since we don't necessarily want to build with -debugging symbols. Buildroot will add -g if needed. - -Based on the former patch by Thomas Petazzoni. - -Signed-off-by: Vicente Olivert Riera ---- - Makefile | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/Makefile b/Makefile -index c4e2427..66c4942 100644 ---- a/Makefile -+++ b/Makefile -@@ -9,7 +9,7 @@ CC = gcc - - include version.mk - --CFLAGS += -g -Wall $(IPR_DEFINES) -+override CFLAGS += -Wall $(IPR_DEFINES) - UTILS_VER = $(IPR_MAJOR_RELEASE).$(IPR_MINOR_RELEASE).$(IPR_FIX_LEVEL) - TAR = cd .. && tar -zcpf iprutils-$(UTILS_VER)-src.tgz --exclude .git --exclude CVS --exclude applied-patches --exclude series --exclude txt --exclude pc --exclude patches --exclude debug --exclude *~* iprutils - --- -1.7.1 - diff --git a/package/iprutils/0002-configure.ac-use-pow-instead-of-matherr-for-libm-che.patch b/package/iprutils/0002-configure.ac-use-pow-instead-of-matherr-for-libm-che.patch new file mode 100644 index 00000000000..ea7a683570c --- /dev/null +++ b/package/iprutils/0002-configure.ac-use-pow-instead-of-matherr-for-libm-che.patch @@ -0,0 +1,36 @@ +From 62a41abffa028a3a4c4ae0803d48c559a14e97f1 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 7 Feb 2016 13:54:10 +0100 +Subject: [PATCH] configure.ac: use pow() instead of matherr() for libm check + +In certain configurations of uClibc, the matherr() function may not be +provided by the C library, which makes the current configure.ac check +for libm fail. However, iprutils does not use matherr(), so using this +function for the test makes little sense. + +This patch adjusts configure.ac to test for pow() instead, which is +actually used by iprutils, and more commonly available, including in +uClibc. + +Signed-off-by: Bernd Kuhls +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index c1a4f70..e430554 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -129,7 +129,7 @@ save_LIBS="$LIBS" + AC_CHECK_LIB([ncurses], [curses_version], [], + [AC_ERROR("libncurses not found.")]) + AC_CHECK_LIB([form], [free_form], [], [AC_ERROR("libform not found.")]) +-AC_CHECK_LIB([m], [matherr], [], [AC_ERROR("libm not found.")]) ++AC_CHECK_LIB([m], [pow], [], [AC_ERROR("libm not found.")]) + AC_CHECK_LIB([menu], [new_menu], [], [AC_ERROR("libmenu not found.")]) + AC_CHECK_LIB([panel], [show_panel], [], [AC_ERROR("libpanel not found.")]) + IPRCONFIG_LIBS="$LIBS" +-- +2.6.4 + diff --git a/package/iprutils/0003-Fix-static-build-by-passing-the-libraries-i.patch b/package/iprutils/0003-Fix-static-build-by-passing-the-libraries-i.patch deleted file mode 100644 index 5ea7d1be0f4..00000000000 --- a/package/iprutils/0003-Fix-static-build-by-passing-the-libraries-i.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 1f62dd91314b0ce6378aeafb2a03566002036326 Mon Sep 17 00:00:00 2001 -From: Vicente Olivert Riera -Date: Thu, 11 Dec 2014 23:36:55 +0100 -Subject: [PATCH 3/3] iprutils: Fix static build by passing the libraries in - the right order - -This mistake was causing failures like this one: - -m_post.c:(.text+0x60): undefined reference to `wattr_on' - -http://autobuild.buildroot.net/results/500/5004e7b230635e0605acdd17d2b7d2d01fc5075c/build-end.log - -Signed-off-by: Vicente Olivert Riera -[Romain: rebase on top of 2.4.5] -Signed-off-by: Romain Naour ---- - Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Makefile b/Makefile -index 66c4942..18cea94 100644 ---- a/Makefile -+++ b/Makefile -@@ -16,7 +16,7 @@ TAR = cd .. && tar -zcpf iprutils-$(UTILS_VER)-src.tgz --exclude .git --exclude - all: iprconfig iprupdate iprdump iprinit iprdbg docs - - iprconfig: iprconfig.c iprlib.o iprconfig.h -- $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprconfig iprconfig.c iprlib.o $(LDFLAGS) -lform -lpanel -lncurses -lmenu -lm -+ $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprconfig iprconfig.c iprlib.o $(LDFLAGS) -lform -lpanel -lmenu -lncurses -lm - - iprupdate: iprupdate.c iprlib.o - $(CC) $(CFLAGS) $(INCLUDEDIR) -o iprupdate iprlib.o iprupdate.c $(LDFLAGS) --- -1.9.3 - diff --git a/package/iprutils/0003-iprlib-fixes-for-compatibility-with-musl.patch b/package/iprutils/0003-iprlib-fixes-for-compatibility-with-musl.patch new file mode 100644 index 00000000000..0fe882fb8ea --- /dev/null +++ b/package/iprutils/0003-iprlib-fixes-for-compatibility-with-musl.patch @@ -0,0 +1,34 @@ +From df3b2b74ed7b49d74f5a5ec5687bcc3188d3b319 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 7 Feb 2016 14:10:44 +0100 +Subject: [PATCH] iprlib: fixes for compatibility with musl + + is an internal C library header, which is not +guaranteed to be available in all C libraries, so it shouldn't be +included, otherwise iprutils cannot be built with musl. + + is needed to get the definition of PATH_MAX. + +Signed-off-by: Thomas Petazzoni +--- + iprlib.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/iprlib.h b/iprlib.h +index 16fe1e1..73aa1ce 100644 +--- a/iprlib.h ++++ b/iprlib.h +@@ -46,9 +46,9 @@ + #include + #include + #include +-#include + #include + #include ++#include + + typedef uint8_t u8; + typedef uint16_t u16; +-- +2.6.4 + diff --git a/package/iprutils/iprutils.hash b/package/iprutils/iprutils.hash index 388c30011c1..4b43a6177e8 100644 --- a/package/iprutils/iprutils.hash +++ b/package/iprutils/iprutils.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 5c4fca20090b819dc5ab7409798519a3f16e1fce2475ef59f9f18c735b3bd871 iprutils-2.4.5-src.tgz +sha256 99f28418fec505c4dfd532270569d4902a3792dcb2f08710b896f4e7bc0211e0 iprutils-2.4.10.1.tar.gz diff --git a/package/iprutils/iprutils.mk b/package/iprutils/iprutils.mk index b2fe4cffc0f..2d3d62ed6ab 100644 --- a/package/iprutils/iprutils.mk +++ b/package/iprutils/iprutils.mk @@ -4,20 +4,13 @@ # ################################################################################ -IPRUTILS_VERSION = 2.4.5 -IPRUTILS_SITE = http://downloads.sourceforge.net/project/iprdd/iprutils%20for%202.6%20kernels/$(IPRUTILS_VERSION) -IPRUTILS_SOURCE = iprutils-$(IPRUTILS_VERSION)-src.tgz +IPRUTILS_VERSION_MAJOR = 2.4.10 +IPRUTILS_VERSION = $(IPRUTILS_VERSION_MAJOR).1 +IPRUTILS_SITE = http://downloads.sourceforge.net/project/iprdd/iprutils%20for%202.6%20kernels/$(IPRUTILS_VERSION_MAJOR) IPRUTILS_DEPENDENCIES = ncurses libsysfs pciutils IPRUTILS_LICENSE = Common Public License Version 1.0 IPRUTILS_LICENSE_FILES = LICENSE +# Patches touching configure.ac +IPRUTILS_AUTORECONF = YES -define IPRUTILS_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ - INCLUDEDIR="-I." all -endef - -define IPRUTILS_INSTALL_TARGET_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) INSTALL_MOD_PATH=$(TARGET_DIR) -C $(@D) install -endef - -$(eval $(generic-package)) +$(eval $(autotools-package)) diff --git a/package/ipsec-tools/ipsec-tools.mk b/package/ipsec-tools/ipsec-tools.mk index 9454c4e7658..98216eaea69 100644 --- a/package/ipsec-tools/ipsec-tools.mk +++ b/package/ipsec-tools/ipsec-tools.mk @@ -4,10 +4,9 @@ # ################################################################################ -IPSEC_TOOLS_VERSION_MAJOR = 0.8 -IPSEC_TOOLS_VERSION = $(IPSEC_TOOLS_VERSION_MAJOR).2 +IPSEC_TOOLS_VERSION = 0.8.2 IPSEC_TOOLS_SOURCE = ipsec-tools-$(IPSEC_TOOLS_VERSION).tar.bz2 -IPSEC_TOOLS_SITE = http://ftp.sunet.se/pub/NetBSD/misc/ipsec-tools/$(IPSEC_TOOLS_VERSION_MAJOR) +IPSEC_TOOLS_SITE = http://sourceforge.net/projects/ipsec-tools/files/ipsec-tools/$(IPSEC_TOOLS_VERSION) IPSEC_TOOLS_INSTALL_STAGING = YES IPSEC_TOOLS_MAKE = $(MAKE1) IPSEC_TOOLS_DEPENDENCIES = openssl flex host-flex diff --git a/package/ipset/ipset.hash b/package/ipset/ipset.hash index e0f11d9c710..844bebba8c5 100644 --- a/package/ipset/ipset.hash +++ b/package/ipset/ipset.hash @@ -1,4 +1,4 @@ -# From ftp://ftp.netfilter.org/pub/ipset/ipset-6.25.1.tar.bz2.md5sum.txt -md5 e58262af2d53bda271f43883eebc8d54 ipset-6.25.1.tar.bz2 +# From ftp://ftp.netfilter.org/pub/ipset/ipset-6.27.tar.bz2.md5sum.txt +md5 c39f8958908b1396e2c69f082b75d924 ipset-6.27.tar.bz2 # Calculated based on the hash above -sha256 658e15d0d0d6a7160137ef1c2bc2c8669cfee996eb9e049df8d7313e34795e7b ipset-6.25.1.tar.bz2 +sha256 724897a80395534466142c3542184e5a480a5046140ca2a7d9097690b931b235 ipset-6.27.tar.bz2 diff --git a/package/ipset/ipset.mk b/package/ipset/ipset.mk index e5e9218e433..fff67e27460 100644 --- a/package/ipset/ipset.mk +++ b/package/ipset/ipset.mk @@ -4,7 +4,7 @@ # ################################################################################ -IPSET_VERSION = 6.25.1 +IPSET_VERSION = 6.27 IPSET_SOURCE = ipset-$(IPSET_VERSION).tar.bz2 IPSET_SITE = http://ipset.netfilter.org IPSET_DEPENDENCIES = libmnl host-pkgconf diff --git a/package/iptables/0001-fix-build-with-musl.patch b/package/iptables/0001-fix-build-with-musl.patch new file mode 100644 index 00000000000..d5e0c2ed6cb --- /dev/null +++ b/package/iptables/0001-fix-build-with-musl.patch @@ -0,0 +1,67 @@ +From 2f2fde48594ec34e93ab409cd83442efe58e10ad Mon Sep 17 00:00:00 2001 +From: Brendan Heading +Date: Mon, 31 Aug 2015 15:24:44 +0100 +Subject: [PATCH 3/3] fix build with musl + +Add needed headers they are just not needed for glibc6+ but also +for musl +Define additional TCOPTS if not there + +u_initX types are in sys/types.h be explicit about it + +Upstream-Status: Pending + +bh: this is a copy of the patch at the link below, modified to remove +the changes to include/libiptc/ipt_kernel_headers.h as these are +already integrated in the upstream tree. See : + +http://lists.openembedded.org/pipermail/openembedded-core/2015-April/103613.html + +Signed-off-by: Khem Raj +Signed-off-by: Brendan Heading +--- + extensions/libxt_TCPOPTSTRIP.c | 15 +++++++++++++++ + include/linux/netfilter_ipv4/ip_tables.h | 1 + + 2 files changed, 16 insertions(+) + +diff --git a/extensions/libxt_TCPOPTSTRIP.c b/extensions/libxt_TCPOPTSTRIP.c +index 6897857..8a170b2 100644 +--- a/extensions/libxt_TCPOPTSTRIP.c ++++ b/extensions/libxt_TCPOPTSTRIP.c +@@ -12,6 +12,21 @@ + #ifndef TCPOPT_MD5SIG + # define TCPOPT_MD5SIG 19 + #endif ++#ifndef TCPOPT_MAXSEG ++# define TCPOPT_MAXSEG 2 ++#endif ++#ifndef TCPOPT_WINDOW ++# define TCPOPT_WINDOW 3 ++#endif ++#ifndef TCPOPT_SACK_PERMITTED ++# define TCPOPT_SACK_PERMITTED 4 ++#endif ++#ifndef TCPOPT_SACK ++# define TCPOPT_SACK 5 ++#endif ++#ifndef TCPOPT_TIMESTAMP ++# define TCPOPT_TIMESTAMP 8 ++#endif + + enum { + O_STRIP_OPTION = 0, +diff --git a/include/linux/netfilter_ipv4/ip_tables.h b/include/linux/netfilter_ipv4/ip_tables.h +index 57fd82a..4807246 100644 +--- a/include/linux/netfilter_ipv4/ip_tables.h ++++ b/include/linux/netfilter_ipv4/ip_tables.h +@@ -15,6 +15,7 @@ + #ifndef _IPTABLES_H + #define _IPTABLES_H + ++#include + #include + + #include +-- +2.4.3 + diff --git a/package/iptables/0001-fix-static-link.patch b/package/iptables/0001-fix-static-link.patch deleted file mode 100644 index ce2ea488663..00000000000 --- a/package/iptables/0001-fix-static-link.patch +++ /dev/null @@ -1,68 +0,0 @@ -From 76e230e41947576efb96e86e605bb84015cdb287 Mon Sep 17 00:00:00 2001 -From: Jan Engelhardt -Date: Tue, 13 Aug 2013 19:02:06 +0000 -Subject: iptables: link against libnetfilter_conntrack - -Linking currently fails in --enable-static case: - -../extensions/libext.a(libxt_connlabel.o): In function `connlabel_get_name': -iptables/extensions/libxt_connlabel.c:57: undefined reference to `nfct_labelmap_get_name' -[..] -It's libxtables.la(libxt_connlabel.o) using libnetfilter_conntrack. - -If libnetfilter_conntrack is not found, @libnetfilter_conntrack_CFLAGS@ -and @libnetfilter_conntrack_LIBS@ (and their ${} ones) should be empty, -therefore producing no harm to include unconditionally. - -[Gustavo: update for iptables 1.4.21] -Reported-and-tested-by: Gustavo Zacarias -Signed-off-by: Florian Westphal ---- -diff --git a/extensions/GNUmakefile.in b/extensions/GNUmakefile.in -index 14e7c57..780e715 100644 ---- a/extensions/GNUmakefile.in -+++ b/extensions/GNUmakefile.in -@@ -21,7 +21,7 @@ regular_CPPFLAGS = @regular_CPPFLAGS@ - kinclude_CPPFLAGS = @kinclude_CPPFLAGS@ - - AM_CFLAGS = ${regular_CFLAGS} --AM_CPPFLAGS = ${regular_CPPFLAGS} -I${top_builddir}/include -I${top_builddir} -I${top_srcdir}/include ${kinclude_CPPFLAGS} ${CPPFLAGS} -+AM_CPPFLAGS = ${regular_CPPFLAGS} -I${top_builddir}/include -I${top_builddir} -I${top_srcdir}/include ${kinclude_CPPFLAGS} ${CPPFLAGS} @libnetfilter_conntrack_CFLAGS@ - AM_DEPFLAGS = -Wp,-MMD,$(@D)/.$(@F).d,-MT,$@ - AM_LDFLAGS = @noundef_LDFLAGS@ - -@@ -93,7 +93,7 @@ lib%.so: lib%.oo - ${AM_VERBOSE_CCLD} ${CCLD} ${AM_LDFLAGS} -shared ${LDFLAGS} -o $@ $< -L../libxtables/.libs -lxtables ${$*_LIBADD}; - - lib%.oo: ${srcdir}/lib%.c -- ${AM_VERBOSE_CC} ${CC} ${AM_CPPFLAGS} ${AM_DEPFLAGS} ${AM_CFLAGS} -D_INIT=lib$*_init -DPIC -fPIC ${CFLAGS} ${$*_CFLAGADD} -o $@ -c $<; -+ ${AM_VERBOSE_CC} ${CC} ${AM_CPPFLAGS} ${AM_DEPFLAGS} ${AM_CFLAGS} -D_INIT=lib$*_init -DPIC -fPIC ${CFLAGS} -o $@ -c $<; - - libxt_NOTRACK.so: libxt_CT.so - ln -fs $< $@ -@@ -103,9 +103,7 @@ libxt_state.so: libxt_conntrack.so - # Need the LIBADDs in iptables/Makefile.am too for libxtables_la_LIBADD - xt_RATEEST_LIBADD = -lm - xt_statistic_LIBADD = -lm --@HAVE_LIBNETFILTER_CONNTRACK_TRUE@xt_connlabel_LIBADD = @libnetfilter_conntrack_LIBS@ -- --@HAVE_LIBNETFILTER_CONNTRACK_TRUE@xt_connlabel_CFLAGADD = @libnetfilter_conntrack_CFLAGS@ -+xt_connlabel_LIBADD = @libnetfilter_conntrack_LIBS@ - - # - # Static bits -diff --git a/libxtables/Makefile.am b/libxtables/Makefile.am -index c5795fe..4267cb5 100644 ---- a/libxtables/Makefile.am -+++ b/libxtables/Makefile.am -@@ -10,7 +10,7 @@ libxtables_la_LIBADD = - if ENABLE_STATIC - # With --enable-static, shipped extensions are linked into the main executable, - # so we need all the LIBADDs here too --libxtables_la_LIBADD += -lm -+libxtables_la_LIBADD += -lm ${libnetfilter_conntrack_LIBS} - endif - if ENABLE_SHARED - libxtables_la_CFLAGS = ${AM_CFLAGS} --- -cgit v0.9.2 diff --git a/package/iptables/0002-iptables-add-xtables-config-parser.h-to-BUILT_SOURCES.patch b/package/iptables/0002-iptables-add-xtables-config-parser.h-to-BUILT_SOURCES.patch new file mode 100644 index 00000000000..761c04894f6 --- /dev/null +++ b/package/iptables/0002-iptables-add-xtables-config-parser.h-to-BUILT_SOURCES.patch @@ -0,0 +1,39 @@ +From 4dc8e2aa91bd4151f7e5cd56d88d3731b4c1525e Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Wed, 30 Dec 2015 14:39:35 -0300 +Subject: [PATCH] iptables: add xtables-config-parser.h to BUILT_SOURCES + +Otherwise other sources that use it might be built before it's ready leading +to build failure, for example by iptables/nft.c + +Signed-off-by: Gustavo Zacarias +--- +Status: sent upstream (mailing list, no link yet) + + iptables/Makefile.am | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/iptables/Makefile.am b/iptables/Makefile.am +index 3c0faa5..c3eb8a8 100644 +--- a/iptables/Makefile.am ++++ b/iptables/Makefile.am +@@ -4,6 +4,8 @@ AM_CFLAGS = ${regular_CFLAGS} + AM_CPPFLAGS = ${regular_CPPFLAGS} -I${top_builddir}/include -I${top_srcdir}/include ${kinclude_CPPFLAGS} ${libmnl_CFLAGS} ${libnftnl_CFLAGS} ${libnetfilter_conntrack_CFLAGS} + AM_YFLAGS = -d + ++BUILT_SOURCES = ++ + xtables_multi_SOURCES = xtables-multi.c iptables-xml.c + xtables_multi_CFLAGS = ${AM_CFLAGS} + xtables_multi_LDADD = ../extensions/libext.a +@@ -27,6 +29,7 @@ xtables_multi_LDADD += ../libxtables/libxtables.la -lm + + # nftables compatibility layer + if ENABLE_NFTABLES ++BUILT_SOURCES += xtables-config-parser.h + xtables_compat_multi_SOURCES = xtables-compat-multi.c iptables-xml.c + xtables_compat_multi_CFLAGS = ${AM_CFLAGS} + xtables_compat_multi_LDADD = ../extensions/libext.a ../extensions/libext_ebt.a +-- +2.4.10 + diff --git a/package/iptables/0002-iptables-ip-6-tables-save.c-remove-dlfcn.h-include.patch b/package/iptables/0002-iptables-ip-6-tables-save.c-remove-dlfcn.h-include.patch deleted file mode 100644 index 1cdc6c0af25..00000000000 --- a/package/iptables/0002-iptables-ip-6-tables-save.c-remove-dlfcn.h-include.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 2efdcf332a40431c6584970bb0c68712d14d409b Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Wed, 27 Nov 2013 10:18:11 -0300 -Subject: [PATCH] iptables/ip(6)tables-save.c: remove dlfcn.h include - -It's not required and breaks on static-only uClibc builds which don't -have the header file. - -Signed-off-by: Gustavo Zacarias ---- - iptables/ip6tables-save.c | 4 ---- - iptables/iptables-save.c | 4 ---- - 2 files changed, 8 deletions(-) - -diff --git a/iptables/ip6tables-save.c b/iptables/ip6tables-save.c -index d819b30..a86a64a 100644 ---- a/iptables/ip6tables-save.c -+++ b/iptables/ip6tables-save.c -@@ -18,10 +18,6 @@ - #include "ip6tables.h" - #include "ip6tables-multi.h" - --#ifndef NO_SHARED_LIBS --#include --#endif -- - static int show_counters = 0; - - static const struct option options[] = { -diff --git a/iptables/iptables-save.c b/iptables/iptables-save.c -index e599fce..2999c7f 100644 ---- a/iptables/iptables-save.c -+++ b/iptables/iptables-save.c -@@ -17,10 +17,6 @@ - #include "iptables.h" - #include "iptables-multi.h" - --#ifndef NO_SHARED_LIBS --#include --#endif -- - static int show_counters = 0; - - static const struct option options[] = { --- -1.8.3.2 - diff --git a/package/iptables/Config.in b/package/iptables/Config.in index 8c4e989fcc3..c7b69a8d731 100644 --- a/package/iptables/Config.in +++ b/package/iptables/Config.in @@ -1,6 +1,35 @@ config BR2_PACKAGE_IPTABLES bool "iptables" help - Linux kernel (2.4+) firewall, NAT, and packet mangling tools. + Linux kernel firewall, NAT, and packet mangling tools. - http://www.iptables.org/ + http://www.netfilter.org/projects/iptables/index.html + +if BR2_PACKAGE_IPTABLES + +config BR2_PACKAGE_IPTABLES_BPF_NFSYNPROXY + bool "bpfc and nfsynproxy" + # this dependency can be removed when using a musl version + # containing this commit: + # http://git.musl-libc.org/cgit/musl/commit/?id=53f41fb568ae43034c9876cc9bd3961fd6d13671 + depends on !BR2_TOOLCHAIN_USES_MUSL + select BR2_PACKAGE_LIBPCAP + help + Build bpf compiler and nfsynproxy configuration tool. + +config BR2_PACKAGE_IPTABLES_NFTABLES + bool "nftables compat" + # uses dlfcn + depends on !BR2_STATIC_LIBS + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 + select BR2_PACKAGE_LIBMNL + select BR2_PACKAGE_LIBNFTNL + help + Build nftables compat utilities. + +comment "nftables compat needs a toolchain w/ wchar, dynamic library, headers >= 3.4" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4 || \ + !BR2_USE_WCHAR || BR2_STATIC_LIBS + +endif diff --git a/package/iptables/iptables.hash b/package/iptables/iptables.hash index a813f742970..18d8b4406c7 100644 --- a/package/iptables/iptables.hash +++ b/package/iptables/iptables.hash @@ -1,3 +1,3 @@ -# From ftp://ftp.netfilter.org/pub/iptables/iptables-1.4.21.tar.bz2.{md5sum,sha1sum} -md5 536d048c8e8eeebcd9757d0863ebb0c0 iptables-1.4.21.tar.bz2 -sha1 85d4160537546a23a7e42bc26dd7ee62a0ede4c8 iptables-1.4.21.tar.bz2 +# From ftp://ftp.netfilter.org/pub/iptables/iptables-1.6.0.tar.bz2.{md5sum,sha1sum} +md5 27ba3451cb622467fc9267a176f19a31 iptables-1.6.0.tar.bz2 +sha1 21a694e75b0d6863cc001f85fb15915d12b8cc22 iptables-1.6.0.tar.bz2 diff --git a/package/iptables/iptables.mk b/package/iptables/iptables.mk index e425ec6f4ac..12e00f23831 100644 --- a/package/iptables/iptables.mk +++ b/package/iptables/iptables.mk @@ -4,7 +4,7 @@ # ################################################################################ -IPTABLES_VERSION = 1.4.21 +IPTABLES_VERSION = 1.6.0 IPTABLES_SOURCE = iptables-$(IPTABLES_VERSION).tar.bz2 IPTABLES_SITE = http://ftp.netfilter.org/pub/iptables IPTABLES_INSTALL_STAGING = YES @@ -15,7 +15,7 @@ IPTABLES_LICENSE_FILES = COPYING # Building static causes ugly warnings on some plugins IPTABLES_CONF_OPTS = --libexecdir=/usr/lib --with-kernel=$(STAGING_DIR)/usr \ $(if $(BR2_STATIC_LIBS),,--disable-static) -# Because of iptables-01-fix-static-link.patch +# For 0002-iptables-add-xtables-config-parser.h-to-BUILT_SOURCES.patch IPTABLES_AUTORECONF = YES # For connlabel match @@ -28,20 +28,25 @@ ifeq ($(BR2_PACKAGE_LIBNFNETLINK),y) IPTABLES_DEPENDENCIES += libnfnetlink endif -define IPTABLES_TARGET_SYMLINK_CREATE - ln -sf xtables-multi $(TARGET_DIR)/usr/sbin/iptables - ln -sf xtables-multi $(TARGET_DIR)/usr/sbin/iptables-save - ln -sf xtables-multi $(TARGET_DIR)/usr/sbin/iptables-restore -endef - -define IPTABLES_TARGET_IPV6_SYMLINK_CREATE - ln -sf xtables-multi $(TARGET_DIR)/usr/sbin/ip6tables - ln -sf xtables-multi $(TARGET_DIR)/usr/sbin/ip6tables-save - ln -sf xtables-multi $(TARGET_DIR)/usr/sbin/ip6tables-restore -endef - -IPTABLES_POST_INSTALL_TARGET_HOOKS += IPTABLES_TARGET_SYMLINK_CREATE +# For iptables-compat tools +ifeq ($(BR2_PACKAGE_IPTABLES_NFTABLES),y) +IPTABLES_CONF_OPTS += --enable-nftables +IPTABLES_DEPENDENCIES += host-bison host-flex libmnl libnftnl +else +IPTABLES_CONF_OPTS += --disable-nftables +endif -IPTABLES_POST_INSTALL_TARGET_HOOKS += IPTABLES_TARGET_IPV6_SYMLINK_CREATE +# bpf compiler support and nfsynproxy tool +ifeq ($(BR2_PACKAGE_IPTABLES_BPF_NFSYNPROXY),y) +# libpcap is tricky for static-only builds and needs help +ifeq ($(BR2_STATIC_LIBS),y) +IPTABLES_LIBS_FOR_STATIC_LINK += `$(STAGING_DIR)/usr/bin/pcap-config --static --additional-libs` +IPTABLES_CONF_OPTS += LIBS="$(IPTABLES_LIBS_FOR_STATIC_LINK)" +endif +IPTABLES_CONF_OPTS += --enable-bpf-compiler --enable-nfsynproxy +IPTABLES_DEPENDENCIES += libpcap +else +IPTABLES_CONF_OPTS += --disable-bpf-compiler --disable-nfsynproxy +endif $(eval $(autotools-package)) diff --git a/package/iputils/0001-ping-link-against-libm.patch b/package/iputils/0001-ping-link-against-libm.patch new file mode 100644 index 00000000000..d151c5bf964 --- /dev/null +++ b/package/iputils/0001-ping-link-against-libm.patch @@ -0,0 +1,29 @@ +From 8d189e73e660a637ae3f5a604448103ea42e397d Mon Sep 17 00:00:00 2001 +From: Martin Bark +Date: Fri, 12 Feb 2016 16:52:19 +0000 +Subject: [PATCH] ping: link against libm + +This commit links ping against libm because ping.c calls the math library +function finite(). + +Signed-off-by: Martin Bark +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 8b37c42..fb80f6f 100644 +--- a/Makefile ++++ b/Makefile +@@ -156,7 +156,7 @@ LIB_clockdiff = $(LIB_CAP) + DEF_ping_common = $(DEF_CAP) $(DEF_IDN) + DEF_ping6_common = $(DEF_CAP) $(DEF_IDN) + DEF_ping = $(DEF_CAP) $(DEF_IDN) $(DEF_WITHOUT_IFADDRS) +-LIB_ping = $(LIB_CAP) $(LIB_IDN) $(LIB_RESOLV) ++LIB_ping = $(LIB_CAP) $(LIB_IDN) $(LIB_RESOLV) -lm + + ping: ping_common.o ping6_common.o + ping.o ping_common.o ping6_common.o: ping.h in6_flowlabel.h +-- +2.7.0 + diff --git a/package/iputils/0001-ping-ping6-Fix-hang-with-f-option.patch b/package/iputils/0001-ping-ping6-Fix-hang-with-f-option.patch deleted file mode 100644 index fe1ab774a0b..00000000000 --- a/package/iputils/0001-ping-ping6-Fix-hang-with-f-option.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 712fddacfb5c4a8a48d9c5debe1870bc051d836c Mon Sep 17 00:00:00 2001 -From: YOSHIFUJI Hideaki -Date: Tue, 6 Nov 2012 02:44:12 +0900 -Subject: [PATCH] ping,ping6: Fix hang with -f option. - -Bug was introduced by commit 8feb586c4... (ping,ping6: Check return -value of write(2) for stdout.). - -https://bugs.archlinux.org/task/32306 - -Patch-by: Jan Synacek -Reported-by: Mohammad Alsaleh -Signed-off-by: YOSHIFUJI Hideaki -Signed-off-by: Peter Korsgaard ---- - ping_common.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ping_common.h b/ping_common.h -index d2a2b5c..6726e1b 100644 ---- a/ping_common.h -+++ b/ping_common.h -@@ -140,7 +140,7 @@ static inline void write_stdout(const char *str, size_t len) - do { - cc = write(STDOUT_FILENO, str + o, len - o); - o += cc; -- } while (len >= o || cc < 0); -+ } while (len > o || cc < 0); - } - - /* --- -2.1.3 - diff --git a/package/iputils/Config.in b/package/iputils/Config.in index 53246395730..40580d2365f 100644 --- a/package/iputils/Config.in +++ b/package/iputils/Config.in @@ -6,4 +6,4 @@ config BR2_PACKAGE_IPUTILS This package is set of small useful utilities for Linux networking. It includes complete versions of ping, traceroute, etc. - http://sourceforge.net/projects/iputils/ + https://github.com/iputils/iputils diff --git a/package/iputils/iputils.hash b/package/iputils/iputils.hash index 21a20444e30..e32e134114e 100644 --- a/package/iputils/iputils.hash +++ b/package/iputils/iputils.hash @@ -1,2 +1,2 @@ -# From http://sourceforge.net/projects/iputils/files/ -sha1 3e85179746fd93000d6267bd55addfe97f321ba7 iputils-s20121011.tar.bz2 +# Locally computed +sha256 0e98cb527fa175d1e08afb969c124e452b30968f10ec2c3b078f1440c8977a94 iputils-c8ff6feaf0442f8efd96ccb415770c54f9e84d47.tar.gz diff --git a/package/iputils/iputils.mk b/package/iputils/iputils.mk index 332e20f15c3..6392decfd31 100644 --- a/package/iputils/iputils.mk +++ b/package/iputils/iputils.mk @@ -4,10 +4,16 @@ # ################################################################################ -IPUTILS_VERSION = s20121011 -IPUTILS_SITE = http://www.skbuff.net/iputils -IPUTILS_SOURCE = iputils-$(IPUTILS_VERSION).tar.bz2 -IPUTILS_LICENSE = GPLv2+ BSD-3c +# The original upstream was forked to the github repository in 2014 to +# pull fixes from other distribution and centralize the changes after +# the upstream seemed to have gone dormant. The fork contains the +# latest changes including msul support, removing a libsysfs dependency +# and IPv6 updates. +# http://www.spinics.net/lists/netdev/msg279881.html + +IPUTILS_VERSION = c8ff6feaf0442f8efd96ccb415770c54f9e84d47 +IPUTILS_SITE = $(call github,iputils,iputils,$(IPUTILS_VERSION)) +IPUTILS_LICENSE = GPLv2+, BSD-3c, BSD-4c # Only includes a license file for BSD IPUTILS_LICENSE_FILES = ninfod/COPYING IPUTILS_DEPENDENCIES = openssl @@ -18,11 +24,15 @@ ifeq ($(BR2_PACKAGE_BUSYBOX),y) IPUTILS_DEPENDENCIES += busybox endif -# Disabling CAP_SETPCAP (file capabilities) -IPUTILS_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) USE_CAP=no USE_SYSFS=no\ - CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" \ - arping clockdiff ping rarpd rdisc tftpd tracepath \ - ping6 tracepath6 traceroute6 +IPUTILS_MAKE_OPTS = $(TARGET_CONFIGURE_OPTS) USE_SYSFS=no USE_IDN=no\ + CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" + +ifeq ($(BR2_PACKAGE_LIBCAP),y) +IPUTILS_MAKE_OPTS += USE_CAP=yes +IPUTILS_DEPENDENCIES += libcap +else +IPUTILS_MAKE_OPTS += USE_CAP=no +endif define IPUTILS_BUILD_CMDS $(MAKE) -C $(@D) $(IPUTILS_MAKE_OPTS) @@ -36,7 +46,6 @@ define IPUTILS_INSTALL_TARGET_CMDS $(INSTALL) -D -m 755 $(@D)/rdisc $(TARGET_DIR)/sbin/rdisc $(INSTALL) -D -m 755 $(@D)/tftpd $(TARGET_DIR)/usr/sbin/in.tftpd $(INSTALL) -D -m 755 $(@D)/tracepath $(TARGET_DIR)/bin/tracepath - $(INSTALL) -D -m 755 $(@D)/ping6 $(TARGET_DIR)/bin/ping6 $(INSTALL) -D -m 755 $(@D)/tracepath6 $(TARGET_DIR)/bin/tracepath6 $(INSTALL) -D -m 755 $(@D)/traceroute6 $(TARGET_DIR)/bin/traceroute6 endef diff --git a/package/iqvlinux/Config.in b/package/iqvlinux/Config.in new file mode 100644 index 00000000000..89599557457 --- /dev/null +++ b/package/iqvlinux/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_IQVLINUX + bool "iqvlinux" + depends on BR2_LINUX_KERNEL + help + Intel Ethernet Adapter Debug Driver for Linux (iqvlinux), + which supports kernel versions 2.6.x up through 4.0.x. + + This debug driver supports all Intel's networking Tools based + on the SDK version 2.19.36.0 or higher which support Intel + Ethernet chip including e1000, e1000e, i210... + + Note: This driver requires PCI support to be enabled + (i.e. CONFIG_PCI). + + http://sourceforge.net/projects/e1000/files/iqvlinux/ + +comment "iqvlinux needs a Linux kernel to be built" + depends on !BR2_LINUX_KERNEL diff --git a/package/iqvlinux/iqvlinux.hash b/package/iqvlinux/iqvlinux.hash new file mode 100644 index 00000000000..ddf57b712c5 --- /dev/null +++ b/package/iqvlinux/iqvlinux.hash @@ -0,0 +1,5 @@ +# From http://sourceforge.net/projects/e1000/files/iqvlinux/1.1.5.3/ +sha1 bd94416e4364015dbbd78a22e51080bf7ea81fac iqvlinux.tar.gz +md5 fb6a2a4dc122d39070fcb06985c97a05 iqvlinux.tar.gz +# locally computed +sha256 8cb19f3bfe040100a13bb2d05cb2b54f2b259e55cef23f8cc5aa6f2f31e98bec iqvlinux.tar.gz diff --git a/package/iqvlinux/iqvlinux.mk b/package/iqvlinux/iqvlinux.mk new file mode 100644 index 00000000000..b3981fa7706 --- /dev/null +++ b/package/iqvlinux/iqvlinux.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# iqvlinux +# +################################################################################ + +IQVLINUX_VERSION = 1.1.5.3 +IQVLINUX_SITE = http://sourceforge.net/projects/e1000/files/iqvlinux/$(IQVLINUX_VERSION) +IQVLINUX_SOURCE = iqvlinux.tar.gz + +IQVLINUX_LICENSE = GPLv2, BSD-3c +IQVLINUX_LICENSE_FILES = \ + COPYING src/linux/driver/files.txt \ + inc/linux/files.txt inc/files.txt + +IQVLINUX_MODULE_MAKE_OPTS = NALDIR=$(@D) KSRC=$(LINUX_DIR) CC=$(TARGET_CC) + +IQVLINUX_MODULE_SUBDIRS = src/linux/driver + +$(eval $(kernel-module)) +$(eval $(generic-package)) diff --git a/package/irda-utils/0004-musl.patch b/package/irda-utils/0004-musl.patch new file mode 100644 index 00000000000..6cf975b8c17 --- /dev/null +++ b/package/irda-utils/0004-musl.patch @@ -0,0 +1,31 @@ +Replace use of with . + +kernel headers already provides the +needed definitions, moreover not all libc implementations +provide if_packet.h e.g. musl + +Signed-off-by: Khem Raj +Upstream-Status: Pending +[From http://cgit.openembedded.org/openembedded-core/plain/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/musl.patch.] +Signed-off-by: Bernd Kuhls + +Index: irda-utils-0.9.18/irdaping/irdaping.c +=================================================================== +--- irda-utils-0.9.18.orig/irdaping/irdaping.c ++++ irda-utils-0.9.18/irdaping/irdaping.c +@@ -33,7 +33,6 @@ + #include + #include + #include /* For struct ifreq */ +-#include /* For struct sockaddr_pkt */ + #include /* For ARPHRD_IRDA */ + #include /* For ETH_P_ALL */ + #include /* For htons */ +@@ -46,6 +45,7 @@ + #include /* __cpu_to_le32 and co. */ + + #include /* For __u8 and co. */ ++#include /* For struct sockaddr_pkt */ + #include + + #ifndef AF_IRDA diff --git a/package/irqbalance/S13irqbalance b/package/irqbalance/S13irqbalance index 1d713ae33ad..b06a3372e98 100644 --- a/package/irqbalance/S13irqbalance +++ b/package/irqbalance/S13irqbalance @@ -9,7 +9,7 @@ PID="/var/run/irqbalance.pid" case "$1" in start) - echo -n "Starting irqbalance: " + printf "Starting irqbalance: " start-stop-daemon -S -q -x $EXEC -- $ARGS if [ $? != 0 ]; then echo "FAILED" @@ -20,7 +20,7 @@ case "$1" in pidof irqbalance > $PID ;; stop) - echo -n "Stopping irqbalance: " + printf "Stopping irqbalance: " start-stop-daemon -K -q -p $PID echo "OK" ;; diff --git a/package/irssi/0001-Fix-quote-around-macro-argument.patch b/package/irssi/0001-Fix-quote-around-macro-argument.patch new file mode 100644 index 00000000000..d0509d5a497 --- /dev/null +++ b/package/irssi/0001-Fix-quote-around-macro-argument.patch @@ -0,0 +1,46 @@ +From a9d2f9ca6edb7a958ecb606f7db2055caad26a1e Mon Sep 17 00:00:00 2001 +From: Rodrigo Rebello +Date: Wed, 28 Oct 2015 13:38:21 -0200 +Subject: [PATCH 1/1] Fix quote around macro argument + +In m4/curses.m4, line 134, the 5th argument passed to AC_NCURSES was +surrounded by '"' instead of '[' and ']'. Because of that, the expansion +of AC_NCURSES in that case would produce the following line inside the +configure script (note the repeated double quotes): + + screen_manager=""ncurses on $withval/include"" + +That would cause the following error when configure was executed with +the "--with-ncurses=dir" argument: + + ./configure: line 13468: on: command not found + +Although in the case above the error doesn't actually influence the +build process ('screen_manager' isn't used anywhere in the script), +trying to execute 'on' might be harmful if it corresponded to an +existing command in the user's environment. + +Upstream-status: accepted, not yet released. +https://github.com/irssi/irssi/pull/344 + +Signed-off-by: Rodrigo Rebello +--- + m4/curses.m4 | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/m4/curses.m4 b/m4/curses.m4 +index 82b110f..41c0e6c 100644 +--- a/m4/curses.m4 ++++ b/m4/curses.m4 +@@ -131,7 +131,7 @@ AC_DEFUN([AC_CHECK_CURSES],[ + if test x$withval = xno ; then + search_ncurses=false + elif test x$withval != xyes ; then +- AC_NCURSES($withval/include, ncurses.h, -L$withval/lib -lncurses, -I$withval/include, "ncurses on $withval/include") ++ AC_NCURSES($withval/include, ncurses.h, -L$withval/lib -lncurses, -I$withval/include, [ncurses on $withval/include]) + fi + ) + +-- +2.1.4 + diff --git a/package/irssi/Config.in b/package/irssi/Config.in new file mode 100644 index 00000000000..7d292017892 --- /dev/null +++ b/package/irssi/Config.in @@ -0,0 +1,30 @@ +config BR2_PACKAGE_IRSSI + bool "irssi" + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_NCURSES + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_MMU # fork() + help + Irssi is a terminal based IRC client for UNIX systems. + + http://irssi.org/ + +if BR2_PACKAGE_IRSSI + +config BR2_PACKAGE_IRSSI_PROXY + bool "proxy module" + help + Build the irssi proxy module, which allows an IRC connection + to be shared among multiple clients. + +config BR2_PACKAGE_IRSSI_TRUE_COLOR + bool "true color support" + help + Build with true color support in terminal. + +endif + +comment "irssi needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/irssi/irssi.hash b/package/irssi/irssi.hash new file mode 100644 index 00000000000..0bfafe6d463 --- /dev/null +++ b/package/irssi/irssi.hash @@ -0,0 +1,2 @@ +# Locally calculated after checking pgp signature +sha256 3c9600cad2edf58f1d012febc1a0ba844274df6e331c01a9e935467705166807 irssi-0.8.17.tar.bz2 diff --git a/package/irssi/irssi.mk b/package/irssi/irssi.mk new file mode 100644 index 00000000000..176dce78abd --- /dev/null +++ b/package/irssi/irssi.mk @@ -0,0 +1,54 @@ +################################################################################ +# +# irssi +# +################################################################################ + +IRSSI_VERSION = 0.8.17 +IRSSI_SOURCE = irssi-$(IRSSI_VERSION).tar.bz2 +# Do not use the github helper here. The generated tarball is *NOT* the +# same as the one uploaded by upstream for the release. +IRSSI_SITE = https://github.com/irssi-import/irssi/releases/download/$(IRSSI_VERSION) +IRSSI_LICENSE = GPLv2+ +IRSSI_LICENSE_FILES = COPYING +IRSSI_DEPENDENCIES = host-pkgconf libglib2 ncurses +IRSSI_AUTORECONF = YES + +IRSSI_CONF_OPTS = \ + --disable-glibtest \ + --with-ncurses=$(STAGING_DIR)/usr \ + --without-perl + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +IRSSI_CONF_OPTS += --enable-ssl +IRSSI_DEPENDENCIES += openssl +else +IRSSI_CONF_OPTS += --disable-ssl +endif + +ifeq ($(BR2_PACKAGE_IRSSI_PROXY),y) +IRSSI_CONF_OPTS += --with-proxy +# If shared libs are disabled, 'proxy' has to go in the list of built-in +# modules. +ifeq ($(BR2_STATIC_LIBS),y) +IRSSI_CONF_OPTS += --with-modules=proxy +endif +else +IRSSI_CONF_OPTS += --without-proxy +endif # proxy + +ifeq ($(BR2_PACKAGE_IRSSI_TRUE_COLOR),y) +IRSSI_CONF_OPTS += --enable-true-color +else +IRSSI_CONF_OPTS += --disable-true-color +endif + +# Cross-compiling irssi with the perl interpreter enabled doesn't work +# yet. So, remove scripts as they are useless in that case. +define IRSSI_REMOVE_SCRIPTS + rm -rf $(TARGET_DIR)/usr/share/irssi/scripts/ +endef + +IRSSI_POST_INSTALL_TARGET_HOOKS += IRSSI_REMOVE_SCRIPTS + +$(eval $(autotools-package)) diff --git a/package/iucode-tool/Config.in b/package/iucode-tool/Config.in index b996b36d356..d81dabb196c 100644 --- a/package/iucode-tool/Config.in +++ b/package/iucode-tool/Config.in @@ -2,8 +2,9 @@ config BR2_PACKAGE_IUCODE_TOOL bool "iucode-tool" depends on BR2_x86_64 || BR2_i386 select BR2_PACKAGE_INTEL_MICROCODE - select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC + select BR2_PACKAGE_ARGP_STANDALONE \ + if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL help Intel processor microcode tool - https://gitorious.org/iucode-tool + https://gitlab.com/iucode-tool diff --git a/package/iucode-tool/iucode-tool.hash b/package/iucode-tool/iucode-tool.hash new file mode 100644 index 00000000000..c1f3bef0456 --- /dev/null +++ b/package/iucode-tool/iucode-tool.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 33271652032f20f866a212bc98ea01a8db65c4ac839fa820aa23da974fd6ff62 iucode-tool_1.5.tar.xz diff --git a/package/iucode-tool/iucode-tool.mk b/package/iucode-tool/iucode-tool.mk index 44d49d9e986..cee05726498 100644 --- a/package/iucode-tool/iucode-tool.mk +++ b/package/iucode-tool/iucode-tool.mk @@ -4,13 +4,13 @@ # ################################################################################ -IUCODE_TOOL_VERSION = 1cbd73013cd4c6b2b287f07f6189eef35cb83ca0 -IUCODE_TOOL_SITE = git://gitorious.org/iucode-tool/iucode-tool.git -ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) +IUCODE_TOOL_VERSION = 1.5 +IUCODE_TOOL_SOURCE = iucode-tool_$(IUCODE_TOOL_VERSION).tar.xz +IUCODE_TOOL_SITE = https://gitlab.com/iucode-tool/releases/raw/latest +ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) IUCODE_TOOL_CONF_ENV = LIBS="-largp" IUCODE_TOOL_DEPENDENCIES = argp-standalone endif -IUCODE_TOOL_AUTORECONF = YES IUCODE_TOOL_LICENSE = GPLv2+ IUCODE_TOOL_LICENSE_FILES = COPYING diff --git a/package/iw/iw.hash b/package/iw/iw.hash index 02f9a5229e7..424a71e5dec 100644 --- a/package/iw/iw.hash +++ b/package/iw/iw.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/software/network/iw/sha256sums.asc -sha256 5164aaacd8e82501d84a2187af194e8285a5a5b76e200447eb58d4dd78d1a34b iw-4.1.tar.xz +sha256 a6add81a51667649d8d7cfba783ab6a0f82e250a663a4065b13babdff3f6b220 iw-4.3.tar.xz diff --git a/package/iw/iw.mk b/package/iw/iw.mk index 27668501732..3c1767ae088 100644 --- a/package/iw/iw.mk +++ b/package/iw/iw.mk @@ -4,7 +4,7 @@ # ################################################################################ -IW_VERSION = 4.1 +IW_VERSION = 4.3 IW_SOURCE = iw-$(IW_VERSION).tar.xz IW_SITE = $(BR2_KERNEL_MIRROR)/software/network/iw IW_LICENSE = iw license diff --git a/package/jack2/Config.in b/package/jack2/Config.in index 350a34256b6..94cb7e042bb 100644 --- a/package/jack2/Config.in +++ b/package/jack2/Config.in @@ -3,8 +3,8 @@ config BR2_PACKAGE_JACK2 depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib depends on BR2_USE_MMU # fork() depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_ARCH_HAS_ATOMICS depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_LIBSAMPLERATE select BR2_PACKAGE_LIBSNDFILE select BR2_PACKAGE_ALSA_LIB @@ -23,6 +23,6 @@ config BR2_PACKAGE_JACK2 comment "jack2 needs a toolchain w/ threads, C++, dynamic library" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ BR2_STATIC_LIBS diff --git a/package/jack2/jack2.mk b/package/jack2/jack2.mk index 73328d3fd40..81508da7160 100644 --- a/package/jack2/jack2.mk +++ b/package/jack2/jack2.mk @@ -10,6 +10,14 @@ JACK2_LICENSE = GPLv2+ (jack server), LGPLv2.1+ (jack library) JACK2_DEPENDENCIES = libsamplerate libsndfile alsa-lib host-python JACK2_INSTALL_STAGING = YES +ifeq ($(BR2_PACKAGE_OPUS),y) +JACK2_DEPENDENCIES += opus +endif + +ifeq ($(BR2_PACKAGE_READLINE),y) +JACK2_DEPENDENCIES += readline +endif + define JACK2_CONFIGURE_CMDS (cd $(@D); \ $(TARGET_CONFIGURE_OPTS) \ diff --git a/package/janus-gateway/Config.in b/package/janus-gateway/Config.in index cafad94dc35..1c00d323e73 100644 --- a/package/janus-gateway/Config.in +++ b/package/janus-gateway/Config.in @@ -11,8 +11,7 @@ config BR2_PACKAGE_JANUS_GATEWAY depends on BR2_USE_WCHAR # libnice -> libglib2 depends on BR2_USE_MMU # libnice depends on !BR2_STATIC_LIBS # dlopen - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 # libmicrohttpd - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 # libmicrohttpd + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # libmicrohttpd help Janus is an open source, general purpose, WebRTC gateway designed and developed by Meetecho. @@ -22,5 +21,4 @@ config BR2_PACKAGE_JANUS_GATEWAY comment "janus-gateway needs a toolchain w/ dynamic library, threads, wchar" depends on BR2_USE_MMU depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII diff --git a/package/janus-gateway/janus-gateway.mk b/package/janus-gateway/janus-gateway.mk index d2556e0c25f..e1361d3dacc 100644 --- a/package/janus-gateway/janus-gateway.mk +++ b/package/janus-gateway/janus-gateway.mk @@ -18,7 +18,7 @@ JANUS_GATEWAY_DEPENDENCIES = host-pkgconf libmicrohttpd jansson \ JANUS_GATEWAY_AUTORECONF = YES define JANUS_GATEWAY_M4 - mkdir -p $(@D)/m4 + mkdir -p $(@D)/m4 endef JANUS_GATEWAY_POST_PATCH_HOOKS += JANUS_GATEWAY_M4 diff --git a/package/jimtcl/jimtcl.mk b/package/jimtcl/jimtcl.mk index e79e0f6951e..fe35223b43e 100644 --- a/package/jimtcl/jimtcl.mk +++ b/package/jimtcl/jimtcl.mk @@ -33,8 +33,8 @@ else JIMTCL_SHARED = --shared define JIMTCL_INSTALL_LIB $(INSTALL) -m 0755 -D $(@D)/libjim.so.$(JIMTCL_VERSION) \ - $(1)/usr/lib/libjim.$(JIMTCL_VERSION) - ln -s libjim.$(JIMTCL_VERSION) $(1)/usr/lib/libjim.so + $(1)/usr/lib/libjim.so.$(JIMTCL_VERSION) + ln -sf libjim.so.$(JIMTCL_VERSION) $(1)/usr/lib/libjim.so endef endif @@ -46,7 +46,11 @@ define JIMTCL_CONFIGURE_CMDS ) endef +# -fPIC is mandatory to build shared libraries on certain architectures +# (e.g. SPARC) and causes no harm or drawbacks on other architectures define JIMTCL_BUILD_CMDS + SH_CFLAGS="-fPIC" \ + SHOBJ_CFLAGS="-fPIC" \ $(MAKE) -C $(@D) endef diff --git a/package/jpeg-turbo/jpeg-turbo.hash b/package/jpeg-turbo/jpeg-turbo.hash index bbc62f2bf9e..a38a5afae7d 100644 --- a/package/jpeg-turbo/jpeg-turbo.hash +++ b/package/jpeg-turbo/jpeg-turbo.hash @@ -1,3 +1,5 @@ -# From http://sourceforge.net/projects/libjpeg-turbo/files/1.4.0/ -sha1 a9ed7a99a6090e0848836c5df8e836f300a098b9 libjpeg-turbo-1.4.0.tar.gz -md5 039153dabe61e1ac8d9323b5522b56b0 libjpeg-turbo-1.4.0.tar.gz +# From http://sourceforge.net/projects/libjpeg-turbo/files/1.4.2/ +sha1 2666158ccd5318513f875867bbc4af52f6eb9f0b libjpeg-turbo-1.4.2.tar.gz +md5 86b0d5f7507c2e6c21c00219162c3c44 libjpeg-turbo-1.4.2.tar.gz +# Locally computed +sha256 521bb5d3043e7ac063ce3026d9a59cc2ab2e9636c655a2515af5f4706122233e libjpeg-turbo-1.4.2.tar.gz diff --git a/package/jpeg-turbo/jpeg-turbo.mk b/package/jpeg-turbo/jpeg-turbo.mk index dd3ae194cc5..047e925909f 100644 --- a/package/jpeg-turbo/jpeg-turbo.mk +++ b/package/jpeg-turbo/jpeg-turbo.mk @@ -4,7 +4,7 @@ # ################################################################################ -JPEG_TURBO_VERSION = 1.4.0 +JPEG_TURBO_VERSION = 1.4.2 JPEG_TURBO_SOURCE = libjpeg-turbo-$(JPEG_TURBO_VERSION).tar.gz JPEG_TURBO_SITE = http://downloads.sourceforge.net/project/libjpeg-turbo/$(JPEG_TURBO_VERSION) JPEG_TURBO_LICENSE = jpeg-license (BSD-3c-like) diff --git a/package/jq/0001-libm.h-comment-j0-j1-y0-and-y1.patch b/package/jq/0001-libm.h-comment-j0-j1-y0-and-y1.patch deleted file mode 100644 index dfc2f4cd1ad..00000000000 --- a/package/jq/0001-libm.h-comment-j0-j1-y0-and-y1.patch +++ /dev/null @@ -1,49 +0,0 @@ -From e87163425a67938afde96f01b19587ac3348b369 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Sun, 7 Sep 2014 10:49:57 +0200 -Subject: [PATCH] libm.h: comment j0, j1, y0 and y1 - -Those functions are currently not used by jq, but having them in -libm.h prevents building with the uClibc C library when it doesn't -have DO_XSI_MATH option enabled. - -This issue was spotted by the Buildroot autobuilder system: - - http://autobuild.buildroot.org/results/aaf/aaf3c114e0ca3e265ae32c646ba67f01aaf608bd/build-end.log - -Submitted upstream at https://github.com/stedolan/jq/pull/570. - -Signed-off-by: Thomas Petazzoni ---- - libm.h | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/libm.h b/libm.h -index f8c52be..8e82fb7 100644 ---- a/libm.h -+++ b/libm.h -@@ -10,8 +10,8 @@ LIBM_DD(cosh) - LIBM_DD(exp2) - LIBM_DD(exp) - LIBM_DD(floor) --LIBM_DD(j0) --LIBM_DD(j1) -+/* LIBM_DD(j0) */ -+/* LIBM_DD(j1) */ - LIBM_DD(log10) - LIBM_DD(log2) - LIBM_DD(log) -@@ -21,8 +21,8 @@ LIBM_DD(sqrt) - LIBM_DD(tan) - LIBM_DD(tanh) - LIBM_DD(tgamma) --LIBM_DD(y0) --LIBM_DD(y1) -+/* LIBM_DD(y0) */ -+/* LIBM_DD(y1) */ - /* LIBM_DID(jn) */ - /* LIBM_DID(yn) */ - /* LIBM_DDD(pow) */ --- -2.0.0 - diff --git a/package/jq/Config.in.host b/package/jq/Config.in.host new file mode 100644 index 00000000000..a0aabc0b304 --- /dev/null +++ b/package/jq/Config.in.host @@ -0,0 +1,11 @@ +config BR2_PACKAGE_HOST_JQ + bool "host jq" + help + jq is like sed for JSON data - you can use it to slice and filter + and map and transform structured data with the same ease that sed, + awk, grep and friends let you play with text. + + As a host tool, jq can be useful to create/edit/merge/check JSON + files from a post-build script. + + http://stedolan.github.io/jq/ diff --git a/package/jq/jq.hash b/package/jq/jq.hash new file mode 100644 index 00000000000..2cd640563ab --- /dev/null +++ b/package/jq/jq.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 c4d2bfec6436341113419debf479d833692cc5cdab7eb0326b5a4d4fbe9f493c jq-1.5.tar.gz diff --git a/package/jq/jq.mk b/package/jq/jq.mk index 6a9dfc8eae0..9a094ba9a0b 100644 --- a/package/jq/jq.mk +++ b/package/jq/jq.mk @@ -4,12 +4,18 @@ # ################################################################################ -JQ_VERSION = 1.4 -JQ_SITE = http://stedolan.github.io/jq/download/source +JQ_VERSION = 1.5 +JQ_SITE = https://github.com/stedolan/jq/releases/download/jq-$(JQ_VERSION) JQ_LICENSE = MIT (code), CC-BY-3.0 (documentation) JQ_LICENSE_FILES = COPYING # uses c99 specific features JQ_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -std=c99" +HOST_JQ_CONF_ENV += CFLAGS="$(HOST_CFLAGS) -std=c99" + +# jq explicitly enables maintainer mode, which we don't need/want +JQ_CONF_OPTS += --disable-maintainer-mode +HOST_JQ_CONF_OPTS += --disable-maintainer-mode $(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/jquery-datetimepicker/Config.in b/package/jquery-datetimepicker/Config.in index 6a07ec31c0d..9da37188ae8 100644 --- a/package/jquery-datetimepicker/Config.in +++ b/package/jquery-datetimepicker/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_JQUERY_DATETIMEPICKER bool "jquery-datetimepicker" - select BR2_PACKAGE_JQUERY help Use this plugin to unobtrusively add a datetimepicker, datepicker or timepicker dropdown to your forms. diff --git a/package/jquery-keyboard/Config.in b/package/jquery-keyboard/Config.in index e44193ed649..117c4a56655 100644 --- a/package/jquery-keyboard/Config.in +++ b/package/jquery-keyboard/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_JQUERY_KEYBOARD - bool "jQuery keyboard" - select BR2_PACKAGE_JQUERY + bool "jquery-keyboard" select BR2_PACKAGE_JQUERY_UI help Virtual Keyboard using jQuery UI diff --git a/package/jquery-sidebar/Config.in b/package/jquery-sidebar/Config.in new file mode 100644 index 00000000000..324a20c2008 --- /dev/null +++ b/package/jquery-sidebar/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_JQUERY_SIDEBAR + bool "jquery-sidebar" + help + A stupid simple sidebar jQuery plugin. + + http://jillix.github.io/jQuery-sidebar/ diff --git a/package/jquery-sidebar/jquery-sidebar.hash b/package/jquery-sidebar/jquery-sidebar.hash new file mode 100644 index 00000000000..60e44d4187d --- /dev/null +++ b/package/jquery-sidebar/jquery-sidebar.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 c96e46439a87555f2200442f597cce64f21f81f94d7601ddfc3b837913ddb42f jquery-sidebar-3.3.2.tar.gz diff --git a/package/jquery-sidebar/jquery-sidebar.mk b/package/jquery-sidebar/jquery-sidebar.mk new file mode 100644 index 00000000000..7af3667b624 --- /dev/null +++ b/package/jquery-sidebar/jquery-sidebar.mk @@ -0,0 +1,17 @@ +################################################################################ +# +# jquery-sidebar +# +################################################################################ + +JQUERY_SIDEBAR_VERSION = 3.3.2 +JQUERY_SIDEBAR_SITE = $(call github,jillix,jQuery-sidebar,$(JQUERY_SIDEBAR_VERSION)) +JQUERY_SIDEBAR_LICENSE = MIT +JQUERY_SIDEBAR_LICENSE_FILES = LICENSE + +define JQUERY_SIDEBAR_INSTALL_TARGET_CMDS + $(INSTALL) -m 0644 -D $(@D)/src/jquery.sidebar.min.js \ + $(TARGET_DIR)/var/www/jquery-plugins/sidebar/jquery.sidebar.min.js +endef + +$(eval $(generic-package)) diff --git a/package/jquery-sparkline/Config.in b/package/jquery-sparkline/Config.in index ae66364aa68..1741a2941a1 100644 --- a/package/jquery-sparkline/Config.in +++ b/package/jquery-sparkline/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_JQUERY_SPARKLINE - bool "jQuery-Sparkline" - select BR2_PACKAGE_JQUERY + bool "jquery-sparkline" help This jQuery plugin generates sparklines (small inline charts) directly in the browser using data supplied either diff --git a/package/jquery-ui-themes/Config.in b/package/jquery-ui-themes/Config.in index bea1a431129..a7ae11eca60 100644 --- a/package/jquery-ui-themes/Config.in +++ b/package/jquery-ui-themes/Config.in @@ -1,5 +1,5 @@ config BR2_PACKAGE_JQUERY_UI_THEMES - bool "jQuery UI themes" + bool "jquery-ui-themes" depends on BR2_PACKAGE_JQUERY_UI help Themes for jQuery UI. diff --git a/package/jquery-ui/Config.in b/package/jquery-ui/Config.in index f1653d5ab8b..a7c0a6df5a6 100644 --- a/package/jquery-ui/Config.in +++ b/package/jquery-ui/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_JQUERY_UI - bool "jQuery UI" - select BR2_PACKAGE_JQUERY + bool "jquery-ui" help jQuery UI provides abstractions for low-level interaction and animation, advanced effects and high-level, themeable widgets, diff --git a/package/jquery-validation/Config.in b/package/jquery-validation/Config.in index ab2ee261338..39e898e8537 100644 --- a/package/jquery-validation/Config.in +++ b/package/jquery-validation/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_JQUERY_VALIDATION - bool "jQuery-Validation" - select BR2_PACKAGE_JQUERY + bool "jquery-validation" help The jQuery Validation Plugin provides drop-in validation for your existing forms, while making all kinds of diff --git a/package/jquery-validation/jquery-validation.hash b/package/jquery-validation/jquery-validation.hash new file mode 100644 index 00000000000..61c16cf093f --- /dev/null +++ b/package/jquery-validation/jquery-validation.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 14efe6f1784ef6e97116b15c77b04b7e8f47ec07b1479bcd6fa0b081faa19440 jquery-validation-1.14.0.zip diff --git a/package/jquery-validation/jquery-validation.mk b/package/jquery-validation/jquery-validation.mk index b496b0a2d09..10d2a92afcc 100644 --- a/package/jquery-validation/jquery-validation.mk +++ b/package/jquery-validation/jquery-validation.mk @@ -4,7 +4,7 @@ # ################################################################################ -JQUERY_VALIDATION_VERSION = 1.12.0 +JQUERY_VALIDATION_VERSION = 1.14.0 JQUERY_VALIDATION_SITE = http://jqueryvalidation.org/files JQUERY_VALIDATION_SOURCE = jquery-validation-$(JQUERY_VALIDATION_VERSION).zip JQUERY_VALIDATION_LICENSE = MIT diff --git a/package/json-c/Config.in b/package/json-c/Config.in index 67348fb51c7..4df44a96ab6 100644 --- a/package/json-c/Config.in +++ b/package/json-c/Config.in @@ -1,5 +1,7 @@ config BR2_PACKAGE_JSON_C bool "json-c" + # uses __sync_val_compare_and_swap_4 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 help JSON-C - A JSON implementation in C diff --git a/package/jsoncpp/0001-Remove-Werror.patch b/package/jsoncpp/0001-Remove-Werror.patch new file mode 100644 index 00000000000..178cbbf78f7 --- /dev/null +++ b/package/jsoncpp/0001-Remove-Werror.patch @@ -0,0 +1,39 @@ +From d7b84f69c5e92178e110552cce27f900744e1779 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Thu, 30 Jul 2015 23:47:05 +0200 +Subject: [PATCH 1/1] Remove Werror +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +-Werror shouldn't be used in released code since it can cause random build +failures on moderate warnings. It also depends on the used toolchain since +different toolchains may or may not print the same warnings. + +Backported from: d7b84f69c5e92178e110552cce27f900744e1779 + +Signed-off-by: Jörg Krause +--- + CMakeLists.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index cab0de8..62bf203 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -97,10 +97,10 @@ endif( MSVC ) + + if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + # using regular Clang or AppleClang +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Werror -Wall -Wconversion -Wshadow -Wno-sign-conversion") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wconversion -Wshadow -Wno-sign-conversion") + elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") + # using GCC +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Werror -Wall -Wconversion -Wshadow -Wextra -pedantic") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wconversion -Wshadow -Wextra -pedantic") + # not yet ready for -Wsign-conversion + endif() + +-- +2.5.0 + diff --git a/package/jsoncpp/0001-Revert-Use-std-namespace-for-snprintf.patch b/package/jsoncpp/0001-Revert-Use-std-namespace-for-snprintf.patch deleted file mode 100644 index 79358492149..00000000000 --- a/package/jsoncpp/0001-Revert-Use-std-namespace-for-snprintf.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 29bfb6ac06b7304d326e3b70fc0209a702b89d83 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Subject: [PATCH] Revert "Use std namespace for snprintf." - -This reverts commit 1c58876185d2a4ed87dac4a54b82f607e74f55fd. - -std::snprintf() is only available in C++11, which is not provided by -all compilers. Since the C library snprintf() can easily be used as a -replacement on Linux systems, this patch changes jsoncpp to use the C -library snprintf() instead of C++11 std::snprintf(), fixing the build error -below: - -src/lib_json/json_writer.cpp:33:18: error: 'snprintf' is not a member of 'std' - -Upstream status: sent upstream -package/jsoncpp/0001-Revert-Use-std-namespace-for-snprintf.patch - -Signed-off-by: Baruch Siach ---- - - src/lib_json/json_writer.cpp | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/src/lib_json/json_writer.cpp b/src/lib_json/json_writer.cpp -index 83102fd2bb86..f7ad1e21bbc0 100644 ---- a/src/lib_json/json_writer.cpp -+++ b/src/lib_json/json_writer.cpp -@@ -29,8 +29,6 @@ - - #if defined(_MSC_VER) && _MSC_VER < 1500 // VC++ 8.0 and below - #define snprintf _snprintf --#elif __cplusplus >= 201103L --#define snprintf std::snprintf - #endif - - #if defined(_MSC_VER) && _MSC_VER >= 1400 // VC++ 8.0 --- -2.1.4 - diff --git a/package/jsoncpp/0002-Add-option-JSONCPP_WITH_STRICT_ISO.patch b/package/jsoncpp/0002-Add-option-JSONCPP_WITH_STRICT_ISO.patch new file mode 100644 index 00000000000..f6172e93b26 --- /dev/null +++ b/package/jsoncpp/0002-Add-option-JSONCPP_WITH_STRICT_ISO.patch @@ -0,0 +1,68 @@ +From 9c5478562eba4bed32577a1dd7ce02b3bb7f6b4e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Thu, 29 Oct 2015 09:19:41 +0100 +Subject: [PATCH 1/1] Add option JSONCPP_WITH_STRICT_ISO +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +'-pedantic' issues all warnings demanded by strict ISO C/C++; rejecting +extensions that do not follow ISO C/C++. Without this option, certain GNU +extensions and traditional C/C++ features are supported as well. + +With this option enabled building jsoncpp fails with the musl toolchain on +x86 because of an incompatible posix_memalign declaration [1]. Without +'-pedantic' there is no error anymore and jsoncpp builds fine. + +Add an option JSONCPP_WITH_STRICT_ISO to disable compilation with '-pedantic' +with GCC. If jsoncpp is build with the JSONCPP_WITH_WARNING_AS_ERROR option +'-pedantic-errors' is used instead. + +[1] https://gcc.gnu.org/ml/gcc-patches/2015-05/msg01425.html + +Backported from: 48bfe910622d79507983fc36254ca9f3ca63acb6 + +Signed-off-by: Jörg Krause +--- + CMakeLists.txt | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 62bf203..60ecb6f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -7,6 +7,7 @@ ENABLE_TESTING() + OPTION(JSONCPP_WITH_TESTS "Compile and (for jsoncpp_check) run JsonCpp test executables" ON) + OPTION(JSONCPP_WITH_POST_BUILD_UNITTEST "Automatically run unit-tests as a post build step" ON) + OPTION(JSONCPP_WITH_WARNING_AS_ERROR "Force compilation to fail if a warning occurs" OFF) ++OPTION(JSONCPP_WITH_STRICT_ISO "Issue all the warnings demanded by strict ISO C and ISO C++" ON) + OPTION(JSONCPP_WITH_PKGCONFIG_SUPPORT "Generate and install .pc files" ON) + OPTION(JSONCPP_WITH_CMAKE_PACKAGE "Generate and install cmake package files" OFF) + OPTION(BUILD_SHARED_LIBS "Build jsoncpp_lib as a shared library." OFF) +@@ -83,6 +84,9 @@ macro(UseCompilationWarningAsError) + # Only enabled in debug because some old versions of VS STL generate + # warnings when compiled in release configuration. + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /WX ") ++ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") ++ if (JSONCPP_WITH_STRICT_ISO) ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic-errors") + endif( MSVC ) + endmacro() + +@@ -100,8 +104,12 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wconversion -Wshadow -Wno-sign-conversion") + elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") + # using GCC +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wconversion -Wshadow -Wextra -pedantic") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall -Wconversion -Wshadow -Wextra") + # not yet ready for -Wsign-conversion ++ ++ if (JSONCPP_WITH_STRICT_ISO AND NOT JSONCPP_WITH_WARNING_AS_ERROR) ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic") ++ endif () + endif() + + IF(JSONCPP_WITH_WARNING_AS_ERROR) +-- +2.6.2 + diff --git a/package/jsoncpp/Config.in b/package/jsoncpp/Config.in index 2c96f13266f..83118c400cd 100644 --- a/package/jsoncpp/Config.in +++ b/package/jsoncpp/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_JSONCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11 depends on BR2_INSTALL_LIBSTDCPP bool "jsoncpp" help @@ -10,5 +11,5 @@ config BR2_PACKAGE_JSONCPP https://github.com/open-source-parsers/jsoncpp -comment "jsoncpp needs a toolchain w/ C++" - depends on !BR2_INSTALL_LIBSTDCPP +comment "jsoncpp needs a toolchain w/ C++, gcc >= 4.7" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/jsoncpp/jsoncpp.mk b/package/jsoncpp/jsoncpp.mk index 63b18e62a17..52db2cd2c21 100644 --- a/package/jsoncpp/jsoncpp.mk +++ b/package/jsoncpp/jsoncpp.mk @@ -4,7 +4,7 @@ # ################################################################################ -JSONCPP_VERSION = 1.6.1 +JSONCPP_VERSION = 1.6.5 JSONCPP_SITE = $(call github,open-source-parsers,jsoncpp,$(JSONCPP_VERSION)) JSONCPP_LICENSE = Public Domain or MIT JSONCPP_LICENSE_FILES = LICENSE @@ -12,6 +12,7 @@ JSONCPP_INSTALL_STAGING = YES JSONCPP_CONF_OPTS += \ -DJSONCPP_WITH_POST_BUILD_UNITTEST=OFF \ - -DJSONCPP_WITH_TESTS=OFF + -DJSONCPP_WITH_TESTS=OFF \ + -DJSONCPP_WITH_STRICT_ISO=OFF $(eval $(cmake-package)) diff --git a/package/kbd/0001-add-configure-flag-to-disable-tests.patch b/package/kbd/0001-add-configure-flag-to-disable-tests.patch new file mode 100644 index 00000000000..28983e97a06 --- /dev/null +++ b/package/kbd/0001-add-configure-flag-to-disable-tests.patch @@ -0,0 +1,64 @@ +From baeb5aa827d956bd06492775dc5bd9f89d394149 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger +Date: Mon, 13 Jul 2015 23:38:41 -0400 +Subject: [PATCH] add configure flag to disable tests + +The tests require the check package to be installed. There is a configure +test for this package (which is good), but it's unconditional (which is +bad) as it means you can't even build & install kbd w/out the check +package being installed. + +URL: https://bugs.gentoo.org/485116 +Reported-by: Arfrever Frehtes Taifersar Arahesis +--- + Makefile.am | 5 ++++- + configure.ac | 17 +++++++++++++++-- + 2 files changed, 19 insertions(+), 3 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 89c7e83..f855110 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -8,7 +8,10 @@ EXTRA_DIST = \ + CREDITS \ + contrib docs rc + +-SUBDIRS = src data po tests docs ++SUBDIRS = src data po docs ++if BUILD_TESTS ++SUBDIRS += tests ++endif + + kbd-$(VERSION).tar.xz: + make distcheck +diff --git a/configure.ac b/configure.ac +index d0b462b..f659758 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -10,8 +10,21 @@ AC_CONFIG_MACRO_DIR([m4]) + AM_INIT_AUTOMAKE([1.9 -Wall color-tests dist-xz]) + AC_CONFIG_SRCDIR([src/loadkeys.c]) + AC_CONFIG_HEADERS(config.h) +- +-PKG_CHECK_MODULES([CHECK], [check >= 0.9.4]) ++PKG_PROG_PKG_CONFIG ++ ++AC_ARG_ENABLE(tests, ++ [AS_HELP_STRING([--disable-tests], [do not build tests])], ++ [build_tests=$enableval], [build_tests=auto]) ++if test "$build_tests" != "no"; then ++ PKG_CHECK_MODULES([CHECK], [check >= 0.9.4], ++ [build_tests="yes"], [ ++ if test "$build_tests" = "yes"; then ++ AC_MSG_ERROR([tests requested, but check package is missing]) ++ fi ++ build_tests="no" ++ ]) ++fi ++AM_CONDITIONAL(BUILD_TESTS, test "$build_tests" != "no") + + m4_ifndef([AM_SILENT_RULES], [m4_define([AM_SILENT_RULES],[])]) + AM_SILENT_RULES([yes]) +-- +2.6.4 + diff --git a/package/kbd/0001-link-against-libintl.patch b/package/kbd/0001-link-against-libintl.patch deleted file mode 100644 index 39fd461cc4d..00000000000 --- a/package/kbd/0001-link-against-libintl.patch +++ /dev/null @@ -1,34 +0,0 @@ -Make sure we link against libintl if needed - -We modify directly the Makefile.in so that we don't have to -autoreconfigure the package, which doesn't work because packages using -gettext need the autopoint tool for their autoregeneration step and -this thing doesn't work (yet) in Buildroot. - -Signed-off-by: Thomas Petazzoni - -Index: kbd-1.15.2/src/Makefile.am -=================================================================== ---- kbd-1.15.2.orig/src/Makefile.am 2011-05-22 16:08:51.144530776 +0200 -+++ kbd-1.15.2/src/Makefile.am 2011-05-22 16:09:09.892530778 +0200 -@@ -5,6 +5,8 @@ - AM_CPPFLAGS = -DDATADIR=\"$(datadir)\" -DLOCALEDIR=\"$(localedir)\" $(WARNINGS) \ - -funit-at-a-time - -+LDADD = @INTLLIBS@ -+ - OLDPROGS = mapscrn loadunimap - PROGS = \ - dumpkeys loadkeys showkey setfont showconsolefont \ -Index: kbd-1.15.2/src/Makefile.in -=================================================================== ---- kbd-1.15.2.orig/src/Makefile.in 2011-05-22 16:10:27.540530777 +0200 -+++ kbd-1.15.2/src/Makefile.in 2011-05-22 16:10:51.172530778 +0200 -@@ -26,6 +26,7 @@ - install_sh_PROGRAM = $(install_sh) -c - install_sh_SCRIPT = $(install_sh) -c - INSTALL_HEADER = $(INSTALL_DATA) -+LDADD = @INTLLIBS@ - transform = $(program_transform_name) - NORMAL_INSTALL = : - PRE_INSTALL = : diff --git a/package/kbd/0002-Link-against-libintl-when-needed.patch b/package/kbd/0002-Link-against-libintl-when-needed.patch new file mode 100644 index 00000000000..d28f0c809c5 --- /dev/null +++ b/package/kbd/0002-Link-against-libintl-when-needed.patch @@ -0,0 +1,49 @@ +From 008e7dc0ae46281360be62b7d69cd13e0a7f7e14 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 7 Feb 2016 18:24:35 +0100 +Subject: [PATCH] Link against libintl when needed + +Since the kbd code uses gettext functionality, it should link with the +libintl library using the @INTLLIBS@ symbol provided by the gettext m4 +macro. This is necessary on C libraries that don't provide a built-in +gettext functionality, and rely on the libintl library provided by +gettext, as is the case with the uClibc C library. + +@INTLLIBS@ is empty when linking a separate library is not needed, as +is the case with the glibc C library. + +Signed-off-by: Thomas Petazzoni +--- + src/Makefile.am | 2 +- + tests/Makefile.am | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/Makefile.am b/src/Makefile.am +index 40e8083..d4e0583 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -80,7 +80,7 @@ mapscrn_CFLAGS = -DMAIN + loadunimap_CFLAGS = -DMAIN + + noinst_LIBRARIES = libcommon.a libfont.a +-LDADD = libcommon.a libfont.a libkeymap/libkeymap.la ++LDADD = libcommon.a libfont.a libkeymap/libkeymap.la @INTLLIBS@ + + install-exec-hook: + for i in psfaddtable psfgettable psfstriptable; do \ +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 1976333..848fd31 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -4,7 +4,7 @@ AM_CPPFLAGS = \ + -DDATADIR=\"$(srcdir)\" -DBUILDDIR=\"$(builddir)\" + + AM_CFLAGS = $(CHECK_CFLAGS) +-LDADD = $(top_builddir)/src/libkeymap/libkeymap.la $(CHECK_LIBS) ++LDADD = $(top_builddir)/src/libkeymap/libkeymap.la $(CHECK_LIBS) @INTLLIBS@ + + EXTRA_DIST = \ + alt-is-meta.in \ +-- +2.6.4 + diff --git a/package/kbd/kbd.hash b/package/kbd/kbd.hash index c4dfd23b3be..39a4cddb6e9 100644 --- a/package/kbd/kbd.hash +++ b/package/kbd/kbd.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/utils/kbd/sha256sums.asc -sha256 400196f5f51f1900ad2df2c02b61945a72e5ccadd7fb7e1f72b3d89bd33debef kbd-1.15.5.tar.xz +sha256 7a899de1c0eb75f3aea737095a736f2375e1cbfbe693fc14a3fe0bfb4649fb5e kbd-2.0.3.tar.xz diff --git a/package/kbd/kbd.mk b/package/kbd/kbd.mk index dd698a4708a..9dabce13b1c 100644 --- a/package/kbd/kbd.mk +++ b/package/kbd/kbd.mk @@ -4,12 +4,19 @@ # ################################################################################ -KBD_VERSION = 1.15.5 +KBD_VERSION = 2.0.3 KBD_SOURCE = kbd-$(KBD_VERSION).tar.xz KBD_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/kbd -KBD_CONF_OPTS = --disable-vlock -KBD_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) +KBD_CONF_OPTS = \ + --disable-vlock \ + --disable-tests +KBD_DEPENDENCIES = \ + $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) \ + host-pkgconf KBD_LICENSE = GPLv2+ KBD_LICENSE_FILES = COPYING +KBD_AUTORECONF = YES + +KBD_INSTALL_TARGET_OPTS += MKINSTALLDIRS=$(@D)/config/mkinstalldirs $(eval $(autotools-package)) diff --git a/package/kexec-lite/Config.in b/package/kexec-lite/Config.in index 8417dac94f5..fcc0d88be56 100644 --- a/package/kexec-lite/Config.in +++ b/package/kexec-lite/Config.in @@ -1,8 +1,9 @@ config BR2_PACKAGE_KEXEC_LITE bool "kexec-lite" - depends on BR2_powerpc || BR2_powerpc64 + depends on BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le depends on !BR2_STATIC_LIBS # dtc, elfutils depends on BR2_USE_WCHAR # elfutils + depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils select BR2_PACKAGE_ELFUTILS select BR2_PACKAGE_DTC select BR2_PACKAGE_DTC_PROGRAMS @@ -13,6 +14,7 @@ config BR2_PACKAGE_KEXEC_LITE This package is a tiny implementation of the kexec userspace components, for devicetree-based platforms. -comment "kexec-lite needs a toolchain w/ wchar, dynamic library" +comment "kexec-lite needs a uClibc or (e)glibc toolchain w/ wchar, dynamic library" depends on BR2_powerpc || BR2_powerpc64 - depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR + depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR \ + || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) diff --git a/package/kexec-lite/kexec-lite.hash b/package/kexec-lite/kexec-lite.hash new file mode 100644 index 00000000000..e8179b70215 --- /dev/null +++ b/package/kexec-lite/kexec-lite.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 2300187bf25616c382cb2f191a2eb13033e019511854794ce234a76cf9f5ad6b kexec-lite-783fb4a811d0b0f8cc2ed68fa7872dcad56a3944.tar.gz diff --git a/package/kexec-lite/kexec-lite.mk b/package/kexec-lite/kexec-lite.mk index 7e3c8d30f8c..27bc20485d5 100644 --- a/package/kexec-lite/kexec-lite.mk +++ b/package/kexec-lite/kexec-lite.mk @@ -4,7 +4,7 @@ # ################################################################################ -KEXEC_LITE_VERSION = fb8543fea3beb0522b5a63a74ea1a845dbd7b954 +KEXEC_LITE_VERSION = 783fb4a811d0b0f8cc2ed68fa7872dcad56a3944 KEXEC_LITE_SITE = $(call github,antonblanchard,kexec-lite,$(KEXEC_LITE_VERSION)) KEXEC_LITE_LICENSE = GPLv2+ KEXEC_LITE_DEPENDENCIES = elfutils dtc diff --git a/package/kexec/kexec.hash b/package/kexec/kexec.hash index fa2d8be875f..24a71e7a45a 100644 --- a/package/kexec/kexec.hash +++ b/package/kexec/kexec.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/utils/kernel/kexec/sha256sums.asc -sha256 8ae34a9ceb76350954e1e1e3ca9ab51da15862bd5f2fd14392208e60fb454f71 kexec-tools-2.0.9.tar.xz +sha256 b1097986ffdb928cf41a94e8a5dfddc981a8fa710cccf13298e7f8dd939a2ee3 kexec-tools-2.0.11.tar.xz diff --git a/package/kexec/kexec.mk b/package/kexec/kexec.mk index d1584069ef3..0e64c0d4f33 100644 --- a/package/kexec/kexec.mk +++ b/package/kexec/kexec.mk @@ -4,7 +4,7 @@ # ################################################################################ -KEXEC_VERSION = 2.0.9 +KEXEC_VERSION = 2.0.11 KEXEC_SOURCE = kexec-tools-$(KEXEC_VERSION).tar.xz KEXEC_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/kernel/kexec KEXEC_LICENSE = GPLv2 @@ -17,6 +17,13 @@ else KEXEC_CONF_OPTS += --without-zlib endif +ifeq ($(BR2_PACKAGE_XZ),y) +KEXEC_CONF_OPTS += --with-lzma +KEXEC_DEPENDENCIES += xz +else +KEXEC_CONF_OPTS += --without-lzma +endif + define KEXEC_REMOVE_LIB_TOOLS rm -rf $(TARGET_DIR)/usr/lib/kexec-tools endef diff --git a/package/keyutils/keyutils.mk b/package/keyutils/keyutils.mk index 3d6697eb9bf..7a30ba644d8 100644 --- a/package/keyutils/keyutils.mk +++ b/package/keyutils/keyutils.mk @@ -7,7 +7,7 @@ KEYUTILS_VERSION = 1.5.9 KEYUTILS_SOURCE = keyutils-$(KEYUTILS_VERSION).tar.bz2 KEYUTILS_SITE = http://people.redhat.com/~dhowells/keyutils -KEYUTILS_LICENSE = GPLv2+ LGPLv2.1+ +KEYUTILS_LICENSE = GPLv2+, LGPLv2.1+ KEYUTILS_LICENSE_FILES = LICENCE.GPL LICENCE.LGPL KEYUTILS_INSTALL_STAGING = YES diff --git a/package/kismet/kismet.mk b/package/kismet/kismet.mk index 64a0ab27699..f4a28b86dca 100644 --- a/package/kismet/kismet.mk +++ b/package/kismet/kismet.mk @@ -15,6 +15,10 @@ KISMET_LICENSE_FILES = debian/copyright # We touch configure.in: KISMET_AUTORECONF = YES +ifeq ($(BR2_PACKAGE_LIBCAP),y) +KISMET_DEPENDENCIES += libcap +endif + ifeq ($(BR2_PACKAGE_PCRE),y) KISMET_DEPENDENCIES += pcre endif diff --git a/package/kmod/kmod.hash b/package/kmod/kmod.hash index cf7e8023533..75b819e3e35 100644 --- a/package/kmod/kmod.hash +++ b/package/kmod/kmod.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/utils/kernel/kmod/sha256sums.asc -sha256 89c1a1a2193c31f9ebe582640bfa2bd401341dc24119f5a7f702588116fadaa0 kmod-20.tar.xz +sha256 ba3b1ddea33228b473189fcb05b809024a3b86e9a7cf37d420cae06beb749f82 kmod-22.tar.xz diff --git a/package/kmod/kmod.mk b/package/kmod/kmod.mk index e07e6019e9a..2b9d002939b 100644 --- a/package/kmod/kmod.mk +++ b/package/kmod/kmod.mk @@ -4,7 +4,7 @@ # ################################################################################ -KMOD_VERSION = 20 +KMOD_VERSION = 22 KMOD_SOURCE = kmod-$(KMOD_VERSION).tar.xz KMOD_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/kernel/kmod KMOD_INSTALL_STAGING = YES @@ -46,9 +46,16 @@ KMOD_LICENSE_FILES += COPYING # take precedence over busybox implementation KMOD_DEPENDENCIES += $(if $(BR2_PACKAGE_BUSYBOX),busybox) +# /sbin is really /usr/sbin with merged /usr, so adjust relative symlink +ifeq ($(BR2_ROOTFS_MERGED_USR),y) +KMOD_BIN_PATH = ../bin/kmod +else +KMOD_BIN_PATH = ../usr/bin/kmod +endif + define KMOD_INSTALL_TOOLS for i in depmod insmod lsmod modinfo modprobe rmmod; do \ - ln -sf ../usr/bin/kmod $(TARGET_DIR)/sbin/$$i; \ + ln -sf $(KMOD_BIN_PATH) $(TARGET_DIR)/sbin/$$i; \ done endef diff --git a/package/knock/knock.hash b/package/knock/knock.hash index ae152dbf8f4..3599e43da2e 100644 --- a/package/knock/knock.hash +++ b/package/knock/knock.hash @@ -1,2 +1,2 @@ # locally computed hash -sha256 9938479c321066424f74c61f6bee46dfd355a828263dc89561a1ece3f56578a4 knock-0.7.tar.gz +sha256 940a8de61b4b3530560805c3b9310a077c28c99173c2ccb07ff96720b0e93c58 knock-258a27e5a47809f97c2b9f2751a88c2f94aae891.tar.gz diff --git a/package/knock/knock.mk b/package/knock/knock.mk index 28db1eb7220..2ab8d1b6807 100644 --- a/package/knock/knock.mk +++ b/package/knock/knock.mk @@ -4,8 +4,9 @@ # ################################################################################ -KNOCK_VERSION = 0.7 -KNOCK_SITE = http://www.zeroflux.org/proj/knock/files +KNOCK_VERSION = 258a27e5a47809f97c2b9f2751a88c2f94aae891 +KNOCK_SITE = $(call github,jvinet,knock,$(KNOCK_VERSION)) +KNOCK_AUTORECONF = YES KNOCK_LICENSE = GPLv2+ KNOCK_LICENSE_FILES = COPYING KNOCK_DEPENDENCIES = libpcap diff --git a/package/kobs-ng/0001-fix-mtd-defines.patch b/package/kobs-ng/0001-fix-mtd-defines.patch deleted file mode 100644 index 3ffba7166d1..00000000000 --- a/package/kobs-ng/0001-fix-mtd-defines.patch +++ /dev/null @@ -1,73 +0,0 @@ -Newer kernel headers renamed mtd mode defines and no longer support -MEMSETOOBSEL. Allow code to work with both older and newer kernel -versions. - -Signed-off-by: Paul B. Henson -Signed-off-by: Sergey Alyoshin - -diff -u -r kobs-ng-3.0.35-4.0.0-orig/src/mtd.c kobs-ng-3.0.35-4.0.0/src/mtd.c ---- kobs-ng-3.0.35-4.0.0-orig/src/mtd.c 2012-12-17 22:37:40.000000000 -0800 -+++ kobs-ng-3.0.35-4.0.0/src/mtd.c 2013-07-28 19:39:59.000000000 -0700 -@@ -852,8 +852,11 @@ - mp = &md->part[i]; - - if (mp->fd != -1) { -+/* Newer kernels dropped MEMSETOOBSEL */ -+#ifdef MEMSETOOBSEL - (void)ioctl(mp->fd, MEMSETOOBSEL, - &mp->old_oobinfo); -+#endif - close(mp->fd); - } - -@@ -896,6 +899,8 @@ - continue; - } - -+/* Newer kernels dropped MEMSETOOBSEL */ -+#ifdef MEMSETOOBSEL - if (r == -ENOTTY) { - r = ioctl(mp->fd, MEMSETOOBSEL, &mp->old_oobinfo); - if (r != 0) { -@@ -904,6 +909,7 @@ - } - mp->oobinfochanged = 0; - } -+#endif - } else { - r = ioctl(mp->fd, MTDFILEMODE, (void *)MTD_MODE_RAW); - if (r != 0 && r != -ENOTTY) { -@@ -911,6 +917,8 @@ - continue; - } - -+/* Newer kernels dropped MEMSETOOBSEL */ -+#ifdef MEMSETOOBSEL - if (r == -ENOTTY) { - r = ioctl(mp->fd, MEMSETOOBSEL, &none_oobinfo); - if (r != 0) { -@@ -920,6 +928,7 @@ - mp->oobinfochanged = 1; - } else - mp->oobinfochanged = 2; -+#endif - } - - mp->ecc = ecc; -diff -u -r kobs-ng-3.0.35-4.0.0-orig/src/mtd.h kobs-ng-3.0.35-4.0.0/src/mtd.h ---- kobs-ng-3.0.35-4.0.0-orig/src/mtd.h 2012-12-17 22:37:40.000000000 -0800 -+++ kobs-ng-3.0.35-4.0.0/src/mtd.h 2013-07-28 19:33:57.000000000 -0700 -@@ -31,6 +31,13 @@ - #include "BootControlBlocks.h" - #include "rom_nand_hamming_code_ecc.h" - -+// Newer kernel headers renamed define -+#include -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0) -+# define MTD_MODE_NORMAL MTD_FILE_MODE_NORMAL -+# define MTD_MODE_RAW MTD_FILE_MODE_RAW -+#endif -+ - //------------------------------------------------------------------------------ - // Re-definitions of true and false, because the standard ones aren't good - // enough? diff --git a/package/kobs-ng/Config.in b/package/kobs-ng/Config.in deleted file mode 100644 index 1f6b2d16cc7..00000000000 --- a/package/kobs-ng/Config.in +++ /dev/null @@ -1,9 +0,0 @@ -config BR2_PACKAGE_KOBS_NG - bool "kobs-ng" - depends on BR2_arm - help - The kobs-ng tool is used for writing images to NAND on i.MX - platforms. - - This utility is provided by Freescale as-is and doesn't have an - upstream. diff --git a/package/kobs-ng/kobs-ng.hash b/package/kobs-ng/kobs-ng.hash deleted file mode 100644 index 3e527da480a..00000000000 --- a/package/kobs-ng/kobs-ng.hash +++ /dev/null @@ -1,2 +0,0 @@ -# From http://repository.timesys.com/buildsources/k/kobs-ng/kobs-ng-3.0.35-4.0.0/kobs-ng-3.0.35-4.0.0.tar.gz.md5sum -md5 26104c577f59a6b81782a5bd16aadd82 kobs-ng-3.0.35-4.0.0.tar.gz diff --git a/package/kobs-ng/kobs-ng.mk b/package/kobs-ng/kobs-ng.mk deleted file mode 100644 index 13d1fafa39a..00000000000 --- a/package/kobs-ng/kobs-ng.mk +++ /dev/null @@ -1,13 +0,0 @@ -################################################################################ -# -# kobs-ng -# -################################################################################ - -# kobs-ng versions have never made much sense :( -KOBS_NG_VERSION = 3.0.35-4.0.0 -KOBS_NG_SITE = http://repository.timesys.com/buildsources/k/kobs-ng/kobs-ng-$(KOBS_NG_VERSION) -KOBS_NG_LICENSE = GPLv2+ -KOBS_NG_LICENSE_FILES = COPYING - -$(eval $(autotools-package)) diff --git a/package/kodi-audioencoder-flac/kodi-audioencoder-flac.mk b/package/kodi-audioencoder-flac/kodi-audioencoder-flac.mk index 2de54a4a4fc..94645770bde 100644 --- a/package/kodi-audioencoder-flac/kodi-audioencoder-flac.mk +++ b/package/kodi-audioencoder-flac/kodi-audioencoder-flac.mk @@ -4,7 +4,7 @@ # ################################################################################ -KODI_AUDIOENCODER_FLAC_VERSION = 46038892846c29543a2127d2117460f767313111 +KODI_AUDIOENCODER_FLAC_VERSION = 8e6718508bb9169d614c1fd5ee0e3de02af3b548 KODI_AUDIOENCODER_FLAC_SITE = $(call github,xbmc,audioencoder.flac,$(KODI_AUDIOENCODER_FLAC_VERSION)) KODI_AUDIOENCODER_FLAC_LICENSE = GPLv2+ KODI_AUDIOENCODER_FLAC_LICENSE_FILES = src/EncoderFlac.cpp diff --git a/package/kodi-pvr-argustv/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch b/package/kodi-pvr-argustv/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch new file mode 100644 index 00000000000..596be616faa --- /dev/null +++ b/package/kodi-pvr-argustv/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch @@ -0,0 +1,45 @@ +From 2c15b3931410669f281cd7e183c81e550b7e7221 Mon Sep 17 00:00:00 2001 +From: Balint Reczey +Date: Wed, 23 Dec 2015 12:55:00 +0100 +Subject: [PATCH 01/19] Sync enum representation of char_class_e in struct + traits with definition + +Signed-off-by: Bernd Kuhls +[backport of upstream patch from master branch: + https://github.com/kodi-pvr/pvr.argustv/commit/2c15b3931410669f281cd7e183c81e550b7e7221] +--- + src/uri.h | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/uri.h b/src/uri.h +index 0b2afcd..c20600f 100644 +--- a/src/uri.h ++++ b/src/uri.h +@@ -21,13 +21,13 @@ + namespace uri + { + /// Char class. +- enum char_class_e ++ typedef enum char_class_e : signed char + { + CINV = -2, ///< invalid + CEND = -1, ///< end delimitor + CVAL = 0, ///< valid any position + CVA2 = 1, ///< valid anywhere but 1st position +- }; ++ } char_class_e_type; + + /// Traits used for parsing and encoding components. + struct traits +@@ -35,7 +35,7 @@ namespace uri + char* begin_cstring; ///< begin cstring (or 0 if none) + char begin_char; ///< begin char (or 0 if none) + char end_char; ///< end char (or 0 if none) +- char char_class[256]; ///< map of char to class ++ char_class_e_type char_class[256]; ///< map of char to class + }; + + /** +-- +2.7.0 + diff --git a/package/kodi-pvr-argustv/Config.in b/package/kodi-pvr-argustv/Config.in index 698ff46f45d..247d83ce170 100644 --- a/package/kodi-pvr-argustv/Config.in +++ b/package/kodi-pvr-argustv/Config.in @@ -1,7 +1,12 @@ config BR2_PACKAGE_KODI_PVR_ARGUSTV bool "kodi-pvr-argustv" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # jsoncpp + select BR2_PACKAGE_JSONCPP select BR2_PACKAGE_KODI_PLATFORM help Kodi's ARGUS TV client addon https://github.com/kodi-pvr/pvr.argustv + +comment "kodi-pvr-argustv needs a toolchain w/ gcc >= 4.7" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/kodi-pvr-argustv/kodi-pvr-argustv.mk b/package/kodi-pvr-argustv/kodi-pvr-argustv.mk index 8fb5c89c22d..0ce333a255c 100644 --- a/package/kodi-pvr-argustv/kodi-pvr-argustv.mk +++ b/package/kodi-pvr-argustv/kodi-pvr-argustv.mk @@ -4,7 +4,7 @@ # ################################################################################ -KODI_PVR_ARGUSTV_VERSION = 96c80267935d8edc4f6f92d16b540ef77cdcb1db +KODI_PVR_ARGUSTV_VERSION = 32f03271cc3fb1b50edfacd2793d5ac70a98dd20 KODI_PVR_ARGUSTV_SITE = $(call github,kodi-pvr,pvr.argustv,$(KODI_PVR_ARGUSTV_VERSION)) KODI_PVR_ARGUSTV_LICENSE = GPLv2+ KODI_PVR_ARGUSTV_LICENSE_FILES = src/client.h diff --git a/package/kodi-pvr-filmon/Config.in b/package/kodi-pvr-filmon/Config.in index 0b662df1766..3d87ec82edf 100644 --- a/package/kodi-pvr-filmon/Config.in +++ b/package/kodi-pvr-filmon/Config.in @@ -1,8 +1,12 @@ config BR2_PACKAGE_KODI_PVR_FILMON bool "kodi-pvr-filmon" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # jsoncpp select BR2_PACKAGE_JSONCPP select BR2_PACKAGE_KODI_PLATFORM help Filmon PVR client addon for Kodi https://github.com/kodi-pvr/pvr.filmon + +comment "kodi-pvr-filmon needs a toolchain w/ gcc >= 4.7" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/kodi-pvr-filmon/kodi-pvr-filmon.mk b/package/kodi-pvr-filmon/kodi-pvr-filmon.mk index 76e4ca907e9..7e49268c61f 100644 --- a/package/kodi-pvr-filmon/kodi-pvr-filmon.mk +++ b/package/kodi-pvr-filmon/kodi-pvr-filmon.mk @@ -4,7 +4,7 @@ # ################################################################################ -KODI_PVR_FILMON_VERSION = 5c41f4e361c9bcdd6e53cffd541222c5aa131a27 +KODI_PVR_FILMON_VERSION = 67abb5696798aa954b38de2cc7b4a74e6554d627 KODI_PVR_FILMON_SITE = $(call github,kodi-pvr,pvr.filmon,$(KODI_PVR_FILMON_VERSION)) KODI_PVR_FILMON_LICENSE = GPLv2+ KODI_PVR_FILMON_LICENSE_FILES = src/client.h diff --git a/package/kodi-pvr-hts/kodi-pvr-hts.mk b/package/kodi-pvr-hts/kodi-pvr-hts.mk index 726a1552b40..f8b03598a11 100644 --- a/package/kodi-pvr-hts/kodi-pvr-hts.mk +++ b/package/kodi-pvr-hts/kodi-pvr-hts.mk @@ -4,7 +4,7 @@ # ################################################################################ -KODI_PVR_HTS_VERSION = 9b05d4cbdda80d12cc8d90b6cc2c80ab6f65e4d2 +KODI_PVR_HTS_VERSION = 016b0b3251d6d5bffaf68baf59010e4347759c4a KODI_PVR_HTS_SITE = $(call github,kodi-pvr,pvr.hts,$(KODI_PVR_HTS_VERSION)) KODI_PVR_HTS_LICENSE = GPLv2+ KODI_PVR_HTS_LICENSE_FILES = src/client.h diff --git a/package/kodi-pvr-mediaportal-tvserver/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch b/package/kodi-pvr-mediaportal-tvserver/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch new file mode 100644 index 00000000000..890c15105ab --- /dev/null +++ b/package/kodi-pvr-mediaportal-tvserver/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch @@ -0,0 +1,42 @@ +From 7b14e0657a1308e8e133991b778e2fdcb2eb6b9c Mon Sep 17 00:00:00 2001 +From: Balint Reczey +Date: Wed, 23 Dec 2015 12:55:00 +0100 +Subject: [PATCH] Sync enum representation of char_class_e in struct traits + with definition + +Signed-off-by: Bernd Kuhls +[backport of upstream patch from master branch: + https://github.com/kodi-pvr/pvr.mediaportal.tvserver/commit/7b14e0657a1308e8e133991b778e2fdcb2eb6b9c] +--- + src/uri.h | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/uri.h b/src/uri.h +index d2cc949..415e917 100644 +--- a/src/uri.h ++++ b/src/uri.h +@@ -21,13 +21,13 @@ + namespace uri + { + /// Char class. +- enum char_class_e ++ typedef enum char_class_e : signed char + { + CINV = -2, ///< invalid + CEND = -1, ///< end delimitor + CVAL = 0, ///< valid any position + CVA2 = 1, ///< valid anywhere but 1st position +- }; ++ } char_class_e_type; + + /// Traits used for parsing and encoding components. + struct traits +@@ -35,7 +35,7 @@ namespace uri + const char* begin_cstring; ///< begin cstring (or 0 if none) + const char begin_char; ///< begin char (or 0 if none) + const char end_char; ///< end char (or 0 if none) +- const char char_class[256]; ///< map of char to class ++ const char_class_e_type char_class[256]; ///< map of char to class + }; + + /** diff --git a/package/kodi-pvr-mythtv/kodi-pvr-mythtv.mk b/package/kodi-pvr-mythtv/kodi-pvr-mythtv.mk index c26224a69ee..76235eafb09 100644 --- a/package/kodi-pvr-mythtv/kodi-pvr-mythtv.mk +++ b/package/kodi-pvr-mythtv/kodi-pvr-mythtv.mk @@ -4,7 +4,7 @@ # ################################################################################ -KODI_PVR_MYTHTV_VERSION = 75fee97e2e690b0ee6d2b1540218b61586683e20 +KODI_PVR_MYTHTV_VERSION = 8cb158cebc016f1c2a17014bb21873201ed8957e KODI_PVR_MYTHTV_SITE = $(call github,kodi-pvr,pvr.mythtv,$(KODI_PVR_MYTHTV_VERSION)) KODI_PVR_MYTHTV_LICENSE = GPLv2+ KODI_PVR_MYTHTV_LICENSE_FILES = src/client.h diff --git a/package/kodi-pvr-nextpvr/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch b/package/kodi-pvr-nextpvr/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch new file mode 100644 index 00000000000..18e59951c64 --- /dev/null +++ b/package/kodi-pvr-nextpvr/0001-Sync-enum-representation-of-char_class_e-in-struct-t.patch @@ -0,0 +1,48 @@ +From 2698ac4eeca3a82967ff83386460c070ce387ead Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 28 Feb 2016 01:07:52 +0100 +Subject: [PATCH] Sync enum representation of char_class_e in struct traits + with definition + +Copied from +https://github.com/kodi-pvr/pvr.mediaportal.tvserver/pull/28 +https://github.com/kodi-pvr/pvr.mediaportal.tvserver/pull/35 + +Signed-off-by: Bernd Kuhls +[Patch sent upstream: https://github.com/kodi-pvr/pvr.nextpvr/pull/42] +--- + src/uri.h | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/uri.h b/src/uri.h +index 2757cf0..3dbca88 100644 +--- a/src/uri.h ++++ b/src/uri.h +@@ -21,13 +21,13 @@ + namespace uri + { + /// Char class. +- enum char_class_e ++ typedef enum char_class_e : signed char + { + CINV = -2, ///< invalid + CEND = -1, ///< end delimitor + CVAL = 0, ///< valid any position + CVA2 = 1, ///< valid anywhere but 1st position +- }; ++ } char_class_e_type; + + /// Traits used for parsing and encoding components. + struct traits +@@ -35,7 +35,7 @@ namespace uri + const char* begin_cstring; ///< begin cstring (or 0 if none) + const char begin_char; ///< begin char (or 0 if none) + const char end_char; ///< end char (or 0 if none) +- char char_class[256]; ///< map of char to class ++ const char_class_e_type char_class[256]; ///< map of char to class + }; + + /** +-- +2.7.0 + diff --git a/package/kodi-pvr-pctv/Config.in b/package/kodi-pvr-pctv/Config.in index 255cd4a5f0c..1bef551b2e0 100644 --- a/package/kodi-pvr-pctv/Config.in +++ b/package/kodi-pvr-pctv/Config.in @@ -1,8 +1,12 @@ config BR2_PACKAGE_KODI_PVR_PCTV bool "kodi-pvr-pctv" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # jsoncpp select BR2_PACKAGE_JSONCPP select BR2_PACKAGE_KODI_PLATFORM help PCTV PVR client addon for Kodi https://github.com/kodi-pvr/pvr.vdr.vnsi + +comment "kodi-pvr-pctv needs a toolchain w/ gcc >= 4.7" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/kodi-pvr-pctv/kodi-pvr-pctv.mk b/package/kodi-pvr-pctv/kodi-pvr-pctv.mk index 4f3994a65f6..0cda85a49d3 100644 --- a/package/kodi-pvr-pctv/kodi-pvr-pctv.mk +++ b/package/kodi-pvr-pctv/kodi-pvr-pctv.mk @@ -4,7 +4,7 @@ # ################################################################################ -KODI_PVR_PCTV_VERSION = d23160c043b0cd0a86463f6a3590a8126ff8af9d +KODI_PVR_PCTV_VERSION = bca81657a2879a1ab76404e5b5441e2491f35350 KODI_PVR_PCTV_SITE = $(call github,kodi-pvr,pvr.pctv,$(KODI_PVR_PCTV_VERSION)) KODI_PVR_PCTV_LICENSE = GPLv2+ KODI_PVR_PCTV_LICENSE_FILES = src/client.h diff --git a/package/kodi-pvr-stalker/Config.in b/package/kodi-pvr-stalker/Config.in index b327fd87998..26a8c3f1a29 100644 --- a/package/kodi-pvr-stalker/Config.in +++ b/package/kodi-pvr-stalker/Config.in @@ -1,7 +1,12 @@ config BR2_PACKAGE_KODI_PVR_STALKER bool "kodi-pvr-stalker" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # jsoncpp + select BR2_PACKAGE_JSONCPP select BR2_PACKAGE_KODI_PLATFORM help A PVR Client that connects Kodi to Stalker Middleware https://github.com/kodi-pvr/pvr.stalker + +comment "kodi-pvr-stalker needs a toolchain w/ gcc >= 4.7" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/kodi-pvr-stalker/kodi-pvr-stalker.mk b/package/kodi-pvr-stalker/kodi-pvr-stalker.mk index 589cf7de207..979a4213f6f 100644 --- a/package/kodi-pvr-stalker/kodi-pvr-stalker.mk +++ b/package/kodi-pvr-stalker/kodi-pvr-stalker.mk @@ -4,10 +4,10 @@ # ################################################################################ -KODI_PVR_STALKER_VERSION = 5f6eb1992ffd45a075ebb7bc4253c4a88bf65c80 +KODI_PVR_STALKER_VERSION = a89afb8a2f5e01e3d11f6887ba1f7c81aebd7515 KODI_PVR_STALKER_SITE = $(call github,kodi-pvr,pvr.stalker,$(KODI_PVR_STALKER_VERSION)) KODI_PVR_STALKER_LICENSE = GPLv2+ KODI_PVR_STALKER_LICENSE_FILES = src/client.h -KODI_PVR_STALKER_DEPENDENCIES = kodi-platform +KODI_PVR_STALKER_DEPENDENCIES = jsoncpp kodi-platform $(eval $(cmake-package)) diff --git a/package/kodi-pvr-vbox/kodi-pvr-vbox.mk b/package/kodi-pvr-vbox/kodi-pvr-vbox.mk index 338c29a488a..6bb7769e62a 100644 --- a/package/kodi-pvr-vbox/kodi-pvr-vbox.mk +++ b/package/kodi-pvr-vbox/kodi-pvr-vbox.mk @@ -4,7 +4,7 @@ # ################################################################################ -KODI_PVR_VBOX_VERSION = 874eb8812db1dd1b2626ed6c9f8391790f0e6818 +KODI_PVR_VBOX_VERSION = 0b1d571f0259583671c9654febf2bf45a8e9920c KODI_PVR_VBOX_SITE = $(call github,kodi-pvr,pvr.vbox,$(KODI_PVR_VBOX_VERSION)) KODI_PVR_VBOX_LICENSE = GPLv2+ KODI_PVR_VBOX_LICENSE_FILES = src/client.h diff --git a/package/kodi-visualisation-waveforhue/0001-Adapt-xbmc_vis_dll.h-header-path.patch b/package/kodi-visualisation-waveforhue/0001-Adapt-xbmc_vis_dll.h-header-path.patch deleted file mode 100644 index baa69b4c71a..00000000000 --- a/package/kodi-visualisation-waveforhue/0001-Adapt-xbmc_vis_dll.h-header-path.patch +++ /dev/null @@ -1,26 +0,0 @@ -From d80b2dfeab475b066004d831c0d28c0dab064ca6 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Thu, 30 Jul 2015 10:24:53 +0200 -Subject: [PATCH] Adapt xbmc_vis_dll.h header path - -Signed-off-by: Thomas Petazzoni ---- - src/Main_gles.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/Main_gles.cpp b/src/Main_gles.cpp -index 3c22bf8..f5666e9 100644 ---- a/src/Main_gles.cpp -+++ b/src/Main_gles.cpp -@@ -38,7 +38,7 @@ - #include - #endif - --#include "addons/include/xbmc_vis_dll.h" -+#include "kodi/xbmc_vis_dll.h" - #include "VisGUIShader.h" - - //th --- -2.5.0 - diff --git a/package/kodi-visualisation-waveforhue/kodi-visualisation-waveforhue.mk b/package/kodi-visualisation-waveforhue/kodi-visualisation-waveforhue.mk index 5599065cfa3..28eeb4d8814 100644 --- a/package/kodi-visualisation-waveforhue/kodi-visualisation-waveforhue.mk +++ b/package/kodi-visualisation-waveforhue/kodi-visualisation-waveforhue.mk @@ -4,7 +4,7 @@ # ################################################################################ -KODI_VISUALISATION_WAVEFORHUE_VERSION = 330b5d0432a976993d8ea3e13f01ec9bd3d8b02e +KODI_VISUALISATION_WAVEFORHUE_VERSION = e87d5c7d7e7504036b80af8bc89f4cf6489085fe KODI_VISUALISATION_WAVEFORHUE_SITE = $(call github,notspiff,visualization.waveforhue,$(KODI_VISUALISATION_WAVEFORHUE_VERSION)) KODI_VISUALISATION_WAVEFORHUE_LICENSE = GPLv2+ KODI_VISUALISATION_WAVEFORHUE_LICENSE_FILES = COPYING diff --git a/package/kodi/Config.in b/package/kodi/Config.in index c3b3183ebc2..7d288820268 100644 --- a/package/kodi/Config.in +++ b/package/kodi/Config.in @@ -81,9 +81,9 @@ menuconfig BR2_PACKAGE_KODI select BR2_PACKAGE_TIFF select BR2_PACKAGE_TINYXML select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_KODI_GL - select BR2_PACKAGE_XLIB_XMU if BR2_PACKAGE_KODI_GL # needed by rsxs screensaver - select BR2_PACKAGE_XLIB_XRANDR if BR2_PACKAGE_KODI_GL - select BR2_PACKAGE_XLIB_XT if BR2_PACKAGE_KODI_GL # needed by rsxs screensaver + select BR2_PACKAGE_XLIB_LIBXMU if BR2_PACKAGE_KODI_GL # needed by rsxs screensaver + select BR2_PACKAGE_XLIB_LIBXRANDR if BR2_PACKAGE_KODI_GL + select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_KODI_GL # needed by rsxs screensaver select BR2_PACKAGE_YAJL select BR2_PACKAGE_ZLIB select BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_COPY if BR2_TOOLCHAIN_USES_GLIBC # runtime UTF conversion support @@ -158,13 +158,15 @@ config BR2_PACKAGE_KODI_LIBCEC bool "hdmi cec" depends on !BR2_STATIC_LIBS # libcec depends on BR2_PACKAGE_HAS_UDEV + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # libcec select BR2_PACKAGE_LIBCEC help Enable CEC (Consumer Electronics Control) support. Select this if you want Kodi to support HDMI CEC. comment "hdmi cec support needs udev /dev management and a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS || !BR2_PACKAGE_HAS_UDEV + depends on BR2_STATIC_LIBS || !BR2_PACKAGE_HAS_UDEV || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 config BR2_PACKAGE_KODI_LIRC bool "lirc" @@ -179,13 +181,14 @@ config BR2_PACKAGE_KODI_LIBMICROHTTPD config BR2_PACKAGE_KODI_LIBNFS bool "nfs" - depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC + # libnfs -> libtirpc + depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC || BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_LIBNFS help Enable NFS server support. -comment "nfs support needs a toolchain w/ RPC support" - depends on !BR2_TOOLCHAIN_HAS_NATIVE_RPC +comment "nfs support needs a toolchain w/ threads support" + depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) config BR2_PACKAGE_KODI_RTMPDUMP bool "rtmp" @@ -205,16 +208,24 @@ config BR2_PACKAGE_KODI_LIBSHAIRPLAY comment "shairport support needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS -comment "samba support needs an (e)glibc toolchain" - depends on !BR2_TOOLCHAIN_USES_GLIBC +comment "samba support needs an (e)glibc toolchain w/ RPC" + depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_TOOLCHAIN_HAS_NATIVE_RPC config BR2_PACKAGE_KODI_LIBSMBCLIENT bool "samba" depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_SAMBA4 help Enable Samba support +config BR2_PACKAGE_KODI_LIBSSH + bool "ssh" + select BR2_PACKAGE_LIBSSH + help + Enable sftp virtual filesystem using libssh. + config BR2_PACKAGE_KODI_LIBTHEORA bool "theora" select BR2_PACKAGE_LIBTHEORA @@ -236,7 +247,7 @@ config BR2_PACKAGE_KODI_LIBVA help Enable libva support. -comment "libva support needs toolchain w/ dynamic library" +comment "libva support needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS config BR2_PACKAGE_KODI_WAVPACK diff --git a/package/kodi/S50kodi b/package/kodi/S50kodi index 8468c242b70..f00c59c5d92 100755 --- a/package/kodi/S50kodi +++ b/package/kodi/S50kodi @@ -9,12 +9,12 @@ KODI_ARGS="--standalone -fs -n" PIDFILE=/var/run/kodi.pid start() { - echo -n "Starting Kodi: " + printf "Starting Kodi: " start-stop-daemon -S -q -b -m -p $PIDFILE --exec $BIN -- $KODI $KODI_ARGS [ $? = 0 ] && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping Kodi: " + printf "Stopping Kodi: " start-stop-daemon -K -q -p $PIDFILE [ $? = 0 ] && echo "OK" || echo "FAIL" } diff --git a/package/kodi/kodi.hash b/package/kodi/kodi.hash new file mode 100644 index 00000000000..14af9afd16c --- /dev/null +++ b/package/kodi/kodi.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 dd8aeb942e6de5d1488e243e1346cff3f6597e21b5131a3ba72ff5cc82037110 kodi-15.2-Isengard.tar.gz diff --git a/package/kodi/kodi.mk b/package/kodi/kodi.mk index 6399ff1d920..bf3aa7a0644 100644 --- a/package/kodi/kodi.mk +++ b/package/kodi/kodi.mk @@ -4,13 +4,13 @@ # ################################################################################ -KODI_VERSION = 15.0-Isengard +KODI_VERSION = 15.2-Isengard KODI_SITE = $(call github,xbmc,xbmc,$(KODI_VERSION)) KODI_LICENSE = GPLv2 KODI_LICENSE_FILES = LICENSE.GPL # needed for binary addons KODI_INSTALL_STAGING = YES -KODI_DEPENDENCIES = host-gawk host-gettext host-gperf host-infozip host-giflib \ +KODI_DEPENDENCIES = host-gawk host-gettext host-gperf host-zip host-giflib \ host-libjpeg host-lzo host-nasm host-libpng host-swig KODI_DEPENDENCIES += boost bzip2 expat ffmpeg fontconfig freetype jasper jpeg \ libass libcdio libcurl libfribidi libgcrypt libmpeg2 \ @@ -34,7 +34,6 @@ KODI_CONF_OPTS += \ --disable-openmax \ --disable-projectm \ --disable-pulse \ - --disable-ssh \ --disable-vdpau \ --disable-vtbdecoder \ --enable-optimizations @@ -172,6 +171,13 @@ else KODI_CONF_OPTS += --disable-airplay endif +ifeq ($(BR2_PACKAGE_KODI_LIBSSH),y) +KODI_DEPENDENCIES += libssh +KODI_CONF_OPTS += --enable-ssh +else +KODI_CONF_OPTS += --disable-ssh +endif + ifeq ($(BR2_PACKAGE_KODI_AVAHI),y) KODI_DEPENDENCIES += avahi KODI_CONF_OPTS += --enable-avahi diff --git a/package/kompexsqlite/0001-Makefile-use-autoconf-CXX-for-proper-builds.patch b/package/kompexsqlite/0001-Makefile-use-autoconf-CXX-for-proper-builds.patch new file mode 100644 index 00000000000..408c100d719 --- /dev/null +++ b/package/kompexsqlite/0001-Makefile-use-autoconf-CXX-for-proper-builds.patch @@ -0,0 +1,27 @@ +From 769693d9ddf63b04dd4aad6cad080f3cee3f997e Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Thu, 11 Jun 2015 14:08:38 -0300 +Subject: [PATCH] Makefile: use autoconf CXX for proper builds + +Status: applied upstream. + +Signed-off-by: Gustavo Zacarias +--- + Makefile.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Makefile.in b/Makefile.in +index 91fb8b2..fe862cd 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -23,6 +23,7 @@ mandir = $(prefix)/share/man/man3 + headerdir = $(prefix)/include/kompex + + CC = @CC@ ++CXX = @CXX@ + CFLAGS = @CFLAGS@ + CPPFLAGS = $(CFLAGS) @CPPFLAGS@ + LDFLAGS = @LDFLAGS@ +-- +2.3.6 + diff --git a/package/kompexsqlite/0002-append-to-cflags-and-cxxflags.patch b/package/kompexsqlite/0002-append-to-cflags-and-cxxflags.patch new file mode 100644 index 00000000000..abd0dc0fddd --- /dev/null +++ b/package/kompexsqlite/0002-append-to-cflags-and-cxxflags.patch @@ -0,0 +1,49 @@ +From 3eb064ffa9b43fb5f245b8abda48a1c152a6f2d7 Mon Sep 17 00:00:00 2001 +From: me +Date: Thu, 20 Nov 2014 14:37:34 -0700 +Subject: [PATCH] Append to CFLAGS and CXXFLAGS as setup by ./configure. This + can allow users to Customize the SQLite build process with compile time + #defines rather than altering the sources. + +Signed-off-by: Max Filippov +--- +Backported from: 3eb064ffa9b43fb5f245b8abda48a1c152a6f2d7 + + Makefile-shared.mk | 4 ++-- + Makefile-static.mk | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/Makefile-shared.mk b/Makefile-shared.mk +index b2a4920..d15ce3c 100644 +--- a/Makefile-shared.mk ++++ b/Makefile-shared.mk +@@ -12,10 +12,10 @@ OBJS= \ + ${objsdir}/sqlite3.o + + # C Compiler Flags +-CFLAGS= -fPIC -MMD -MP ++CFLAGS+= -fPIC -MMD -MP + + # CC Compiler Flags +-CPPFLAGS= -DKOMPEX_SQLITEWRAPPER_EXPORT -DKOMPEX_SQLITEWRAPPER_DYN -fPIC -MMD -MP -I${includedir} ++CPPFLAGS+= -DKOMPEX_SQLITEWRAPPER_EXPORT -DKOMPEX_SQLITEWRAPPER_DYN -fPIC -MMD -MP -I${includedir} + + # Link Libraries and Options + LDLIBSOPTIONS= -shared -fPIC +diff --git a/Makefile-static.mk b/Makefile-static.mk +index 429a4ff..0678681 100644 +--- a/Makefile-static.mk ++++ b/Makefile-static.mk +@@ -12,10 +12,10 @@ OBJS= \ + ${objsdir}/sqlite3.o + + # C Compiler Flags +-CFLAGS= -MMD -MP ++CFLAGS+= -MMD -MP + + # CC Compiler Flags +-CPPFLAGS= -I${includedir} -MMD -MP ++CPPFLAGS+= -I${includedir} -MMD -MP + + # Link Libraries and Options + LDLIBSOPTIONS= diff --git a/package/kompexsqlite/Config.in b/package/kompexsqlite/Config.in new file mode 100644 index 00000000000..5b718425777 --- /dev/null +++ b/package/kompexsqlite/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_KOMPEXSQLITE + bool "kompexsqlite" + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS + help + The Kompex SQLite Wrapper is an open source C++ wrapper + library for SQLite. + + http://sqlitewrapper.kompex-online.com/index.php + +comment "kompexsqlite needs a toolchain w/ C++, wchar, threads, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \ + !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/kompexsqlite/kompexsqlite.hash b/package/kompexsqlite/kompexsqlite.hash new file mode 100644 index 00000000000..3c94adf091e --- /dev/null +++ b/package/kompexsqlite/kompexsqlite.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 73bec94fe5dd3a24bd8668b3a131a84dbe39a992579eebab1236aa0e73b2c9cc v1.10.12-1.tar.gz diff --git a/package/kompexsqlite/kompexsqlite.mk b/package/kompexsqlite/kompexsqlite.mk new file mode 100644 index 00000000000..7f57680af58 --- /dev/null +++ b/package/kompexsqlite/kompexsqlite.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# kompexsqlite +# +################################################################################ + +KOMPEXSQLITE_VERSION = v1.10.12-1 +KOMPEXSQLITE_SOURCE = $(KOMPEXSQLITE_VERSION).tar.gz +KOMPEXSQLITE_SITE = https://github.com/Aethelflaed/kompex-sqlite-wrapper/archive +KOMPEXSQLITE_INSTALL_STAGING = YES +KOMPEXSQLITE_LICENSE = LGPLv3+ (wrapper), Public Domain (bundled sqlite) +KOMPEXSQLITE_LICENSE_FILES = LICENSE.txt + +$(eval $(autotools-package)) diff --git a/package/lcdproc/0002-musl.patch b/package/lcdproc/0002-musl.patch new file mode 100644 index 00000000000..d0425fd5b22 --- /dev/null +++ b/package/lcdproc/0002-musl.patch @@ -0,0 +1,102 @@ +Fix musl build + +Partly downloaded from +http://lists.omnipotent.net/pipermail/lcdproc/2015-November/014291.html +http://lists.omnipotent.net/pipermail/lcdproc/2015-November/014281.html + +Signed-off-by: Bernd Kuhls + +diff -uNr lcdproc-0.5.7.org/clients/lcdproc/machine.h lcdproc-0.5.7/clients/lcdproc/machine.h +--- lcdproc-0.5.7.org/clients/lcdproc/machine.h 2012-08-19 16:29:07.000000000 +0200 ++++ lcdproc-0.5.7/clients/lcdproc/machine.h 2016-01-30 14:07:33.641802847 +0100 +@@ -12,6 +12,7 @@ + #ifndef _lcdproc_machine_h_ + #define _lcdproc_machine_h_ + ++#include + #include "shared/LL.h" + + #ifndef LOADAVG_NSTATS +diff -uNr lcdproc-0.5.7.org/server/drivers/hd44780-pifacecad.c lcdproc-0.5.7/server/drivers/hd44780-pifacecad.c +--- lcdproc-0.5.7.org/server/drivers/hd44780-pifacecad.c 2014-03-23 11:22:09.000000000 +0100 ++++ lcdproc-0.5.7/server/drivers/hd44780-pifacecad.c 2016-01-30 14:12:03.521279729 +0100 +@@ -54,6 +54,7 @@ + #include + #include + #include ++#include + #include + #include + +diff -uNr lcdproc-0.5.7.org/server/drivers/hd44780-rpi.c lcdproc-0.5.7/server/drivers/hd44780-rpi.c +--- lcdproc-0.5.7.org/server/drivers/hd44780-rpi.c 2014-03-23 11:22:09.000000000 +0100 ++++ lcdproc-0.5.7/server/drivers/hd44780-rpi.c 2016-01-30 14:04:10.288112853 +0100 +@@ -285,7 +285,7 @@ + + /* Unmap and free memory */ + if (gpio_map != NULL) +- munmap((caddr_t) gpio_map, GPIO_BLOCK_SIZE); ++ munmap((void *) gpio_map, GPIO_BLOCK_SIZE); + if (p->rpi_gpio != NULL) + free(p->rpi_gpio); + p->rpi_gpio = NULL; +diff -uNr lcdproc-0.5.7.org/server/drivers/hd44780-spi.c lcdproc-0.5.7/server/drivers/hd44780-spi.c +--- lcdproc-0.5.7.org/server/drivers/hd44780-spi.c 2014-03-23 11:22:09.000000000 +0100 ++++ lcdproc-0.5.7/server/drivers/hd44780-spi.c 2016-01-30 14:11:11.604763500 +0100 +@@ -29,6 +29,7 @@ + #include + #include + #include ++#include + #include + #include + +diff -uNr lcdproc-0.5.7.org/server/drivers/mtc_s16209x.c lcdproc-0.5.7/server/drivers/mtc_s16209x.c +--- lcdproc-0.5.7.org/server/drivers/mtc_s16209x.c 2011-08-14 14:29:16.000000000 +0200 ++++ lcdproc-0.5.7/server/drivers/mtc_s16209x.c 2016-01-30 14:13:10.691122839 +0100 +@@ -49,6 +49,7 @@ + #include + #include + #include ++#include + + #ifdef HAVE_CONFIG_H + # include "config.h" +diff -uNr lcdproc-0.5.7.org/server/drivers/rawserial.c lcdproc-0.5.7/server/drivers/rawserial.c +--- lcdproc-0.5.7.org/server/drivers/rawserial.c 2014-03-23 11:22:10.000000000 +0100 ++++ lcdproc-0.5.7/server/drivers/rawserial.c 2016-01-30 14:03:43.465779507 +0100 +@@ -60,13 +60,13 @@ + /** \name Event loop timing. refresh_time and refresh_delta form the + * event loop timing mechanism for configurable update rates. + *@{*/ +- uint refresh_time; /**< time at the last screen update */ +- uint refresh_delta; /**< time step to next screen update */ ++ unsigned int refresh_time; /**< time at the last screen update */ ++ unsigned int refresh_delta; /**< time step to next screen update */ + /**@}*/ + } PrivateData; + + /* Local prototypes */ +-static uint get_millisecond_time(void); ++static unsigned int get_millisecond_time(void); + + + /* Vars for the server core */ +@@ -303,7 +303,7 @@ + PrivateData *p = drvthis->private_data; + char out[LCD_MAX_WIDTH * LCD_MAX_HEIGHT]; + +- uint currentTime = get_millisecond_time(); ++ unsigned int currentTime = get_millisecond_time(); + int t_delta = currentTime - p->refresh_time; + + /* +@@ -415,7 +415,7 @@ + * + * \return int with current millisecond time. + */ +-static uint ++static unsigned int + get_millisecond_time(void) + { + struct timeval ts; diff --git a/package/lcms2/lcms2.hash b/package/lcms2/lcms2.hash index 8dcfe4aa5a1..908822f8c15 100644 --- a/package/lcms2/lcms2.hash +++ b/package/lcms2/lcms2.hash @@ -1,2 +1,5 @@ +# From http://sourceforge.net/projects/lcms/files/lcms/2.7/ +sha1 625f0d74bad4a0f6f917120fd992437d26f754d2 lcms2-2.7.tar.gz +md5 06c1626f625424a811fb4b5eb070839d lcms2-2.7.tar.gz # Locally computed: -sha256 6727772b44470a2111dba53b9ce4c952b87e7d1b72a31c5ebdf44ba6eb0aa72b lcms2-2.5.tar.gz +sha256 4524234ae7de185e6b6da5d31d6875085b2198bc63b1211f7dde6e2d197d6a53 lcms2-2.7.tar.gz diff --git a/package/lcms2/lcms2.mk b/package/lcms2/lcms2.mk index 17981232ade..265af290988 100644 --- a/package/lcms2/lcms2.mk +++ b/package/lcms2/lcms2.mk @@ -4,7 +4,7 @@ # ################################################################################ -LCMS2_VERSION = 2.5 +LCMS2_VERSION = 2.7 LCMS2_SITE = http://downloads.sourceforge.net/lcms/lcms LCMS2_LICENSE = MIT LCMS2_LICENSE_FILES = COPYING diff --git a/package/leafnode2/leafnode2.hash b/package/leafnode2/leafnode2.hash new file mode 100644 index 00000000000..9c94fb9ec4c --- /dev/null +++ b/package/leafnode2/leafnode2.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 34eba2cbbb871b724c8d5dd402d1c358aeb21ba426beb5658e155ed0d7461075 leafnode-2.0.0.alpha20140727b.tar.bz2 diff --git a/package/leafpad/leafpad.hash b/package/leafpad/leafpad.hash index 5c4cd78f2aa..be56d41454a 100644 --- a/package/leafpad/leafpad.hash +++ b/package/leafpad/leafpad.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 a047d2f82fb88b361ae7f382b4cae8ce1a30bef5ead503a68ae886d19be5fec0 leafpad-0.8.18.tar.gz +sha256 959d22ae07f22803bc66ff40d373a854532a6e4732680bf8a96a3fbcb9f80a2c leafpad-0.8.18.1.tar.gz diff --git a/package/leafpad/leafpad.mk b/package/leafpad/leafpad.mk index 6366cabeff9..9551a758358 100644 --- a/package/leafpad/leafpad.mk +++ b/package/leafpad/leafpad.mk @@ -4,7 +4,7 @@ # ################################################################################ -LEAFPAD_VERSION = 0.8.18 +LEAFPAD_VERSION = 0.8.18.1 LEAFPAD_SITE = http://savannah.nongnu.org/download/leafpad LEAFPAD_DEPENDENCIES = libgtk2 host-intltool LEAFPAD_LICENSE = GPLv2+ diff --git a/package/less/less.hash b/package/less/less.hash index b1a227ebc30..eea201da1e2 100644 --- a/package/less/less.hash +++ b/package/less/less.hash @@ -1,2 +1,2 @@ -# Locally calculated -sha256 e536c7819ede54b3d487f0ffc4c14b3620bed83734d92a81e89f62346db0fcac less-458.tar.gz +# Locally calculated after checking pgp signature +sha256 3fa38f2cf5e9e040bb44fffaa6c76a84506e379e47f5a04686ab78102090dda5 less-481.tar.gz diff --git a/package/less/less.mk b/package/less/less.mk index 39ef3959ccc..c2175438fb9 100644 --- a/package/less/less.mk +++ b/package/less/less.mk @@ -4,8 +4,8 @@ # ################################################################################ -LESS_VERSION = 458 -LESS_SITE = http://www.greenwoodsoftware.com/less +LESS_VERSION = 481 +LESS_SITE = $(BR2_GNU_MIRROR)/less LESS_LICENSE = GPLv3+ LESS_LICENSE_FILES = COPYING # Build after busybox, full-blown is better diff --git a/package/lftp/lftp.hash b/package/lftp/lftp.hash index f1e45bc23f0..4c5d799591e 100644 --- a/package/lftp/lftp.hash +++ b/package/lftp/lftp.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 8c3a12a1f9ec288132b245bdd7d14d88ade1aa5cb1c14bb68c8fab3b68793840 lftp-4.6.3a.tar.xz +sha256 1e7cb674c83ace48172263f86847ed04bb6ab2f24116b11a8505f70a15e8805c lftp-4.6.4.tar.xz diff --git a/package/lftp/lftp.mk b/package/lftp/lftp.mk index b69e2d69f2b..5051f707a99 100644 --- a/package/lftp/lftp.mk +++ b/package/lftp/lftp.mk @@ -4,7 +4,7 @@ # ################################################################################ -LFTP_VERSION = 4.6.3a +LFTP_VERSION = 4.6.4 LFTP_SOURCE = lftp-$(LFTP_VERSION).tar.xz LFTP_SITE = http://lftp.yar.ru/ftp LFTP_LICENSE = GPLv3+ @@ -17,6 +17,10 @@ ifneq ($(BR2_STATIC_LIBS),y) LFTP_CONF_OPTS += --with-modules endif +ifeq ($(BR2_PACKAGE_EXPAT)$(BR2_PACKAGE_LFTP_PROTO_HTTP),yy) +LFTP_DEPENDENCIES += expat +endif + ifeq ($(BR2_PACKAGE_GNUTLS),y) LFTP_DEPENDENCIES += gnutls LFTP_CONF_OPTS += --with-gnutls diff --git a/package/libarchive/libarchive.mk b/package/libarchive/libarchive.mk index 206de3f58d7..726142b217d 100644 --- a/package/libarchive/libarchive.mk +++ b/package/libarchive/libarchive.mk @@ -42,6 +42,13 @@ else LIBARCHIVE_CONF_OPTS += --disable-xattr endif +ifeq ($(BR2_PACKAGE_BZIP2),y) +LIBARCHIVE_CONF_OPTS += --with-bz2lib +LIBARCHIVE_DEPENDENCIES += bzip2 +else +LIBARCHIVE_CONF_OPTS += --without-bz2lib +endif + ifeq ($(BR2_PACKAGE_EXPAT),y) LIBARCHIVE_DEPENDENCIES += expat else diff --git a/package/libasplib/0001-Fix-linux-detection-with-buildroot.patch b/package/libasplib/0001-Fix-linux-detection-with-buildroot.patch new file mode 100644 index 00000000000..66f51851964 --- /dev/null +++ b/package/libasplib/0001-Fix-linux-detection-with-buildroot.patch @@ -0,0 +1,31 @@ +From 1dc4480e5157e7ac8eb0364446787128f0a156aa Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 20 Dec 2015 22:25:52 +0100 +Subject: [PATCH 1/1] Fix linux detection with buildroot + +Inspired by +http://lists.busybox.net/pipermail/buildroot/2015-July/133312.html + +Patch sent upstream: https://github.com/kodi-adsp/asplib/pull/2 + +Signed-off-by: Bernd Kuhls +--- + asplib_utils/os/asplib_base_os.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/asplib_utils/os/asplib_base_os.h b/asplib_utils/os/asplib_base_os.h +index a2d3b98..9a90b54 100644 +--- a/asplib_utils/os/asplib_base_os.h ++++ b/asplib_utils/os/asplib_base_os.h +@@ -27,7 +27,7 @@ + #define TARGET_WINDOWS + #endif + #include "windows/windows_definitions.h" +-#elif defined(__gnu_linux__) ++#elif (defined(__gnu_linux__) || defined(__linux__)) + #if !defined(TARGET_WINDOWS) + #define TARGET_LINUX + #endif +-- +2.6.4 + diff --git a/package/libasplib/Config.in b/package/libasplib/Config.in new file mode 100644 index 00000000000..71ccfa01763 --- /dev/null +++ b/package/libasplib/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_LIBASPLIB + bool "libasplib" + depends on BR2_INSTALL_LIBSTDCPP + # needs from the compiler + depends on BR2_i386 || BR2_x86_64 + help + asplib (Achim's Signal Processing LIBrary), is a small and + lightweight C++ library for digital signal processing. + + https://github.com/kodi-adsp/asplib + +comment "asplib needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP + depends on BR2_i386 || BR2_x86_64 diff --git a/package/libasplib/libasplib.hash b/package/libasplib/libasplib.hash new file mode 100644 index 00000000000..96c6a2c1e5d --- /dev/null +++ b/package/libasplib/libasplib.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 8979cbd1620dde0603f596d2d05d300355f07e42637bb41ecd564541fa1332f4 libasplib-2fac1bf34efd210b95949fddcbd4a12d287d3e82.tar.gz diff --git a/package/libasplib/libasplib.mk b/package/libasplib/libasplib.mk new file mode 100644 index 00000000000..27629f56c6a --- /dev/null +++ b/package/libasplib/libasplib.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# libasplib +# +################################################################################ + +LIBASPLIB_VERSION = 2fac1bf34efd210b95949fddcbd4a12d287d3e82 +LIBASPLIB_SITE = $(call github,kodi-adsp,asplib,$(LIBASPLIB_VERSION)) +LIBASPLIB_LICENSE = GPLv3+ +LIBASPLIB_LICENSE_FILES = LICENSE +LIBASPLIB_INSTALL_STAGING = YES + +$(eval $(cmake-package)) diff --git a/package/libass/libass.hash b/package/libass/libass.hash index f30016657ea..87d3f269e44 100644 --- a/package/libass/libass.hash +++ b/package/libass/libass.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 a67c54ebaf5ec19ae72e86259ee6ab6adfe2e64ed9f9149db03dc863360ea38c libass-0.12.3.tar.xz +sha256 e0071a3b2e95411c8d474014678368e3f0b852f7d663e0564b344e7335eb0671 libass-0.13.0.tar.xz diff --git a/package/libass/libass.mk b/package/libass/libass.mk index 643a35eb3a4..2f0ca08a390 100644 --- a/package/libass/libass.mk +++ b/package/libass/libass.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBASS_VERSION = 0.12.3 +LIBASS_VERSION = 0.13.0 LIBASS_SOURCE = libass-$(LIBASS_VERSION).tar.xz # Do not use the github helper here, the generated tarball is *NOT* # the same as the one uploaded by upstream for the release. @@ -18,11 +18,17 @@ LIBASS_DEPENDENCIES = \ libfribidi \ $(if $(BR2_PACKAGE_LIBICONV),libiconv) +# configure: WARNING: Install yasm for a significantly faster libass build. +# only for Intel archs +ifeq ($(BR2_i386)$(BR2_x86_64),y) +LIBASS_DEPENDENCIES += host-yasm +endif + ifeq ($(BR2_PACKAGE_FONTCONFIG),y) LIBASS_DEPENDENCIES += fontconfig LIBASS_CONF_OPTS += --enable-fontconfig else -LIBASS_CONF_OPTS += --disable-fontconfig +LIBASS_CONF_OPTS += --disable-fontconfig --disable-require-system-font-provider endif ifeq ($(BR2_PACKAGE_HARFBUZZ),y) @@ -32,11 +38,4 @@ else LIBASS_CONF_OPTS += --disable-harfbuzz endif -ifeq ($(BR2_PACKAGE_LIBENCA),y) -LIBASS_DEPENDENCIES += libenca -LIBASS_CONF_OPTS += --enable-enca -else -LIBASS_CONF_OPTS += --disable-enca -endif - $(eval $(autotools-package)) diff --git a/package/libatomic_ops/Config.in b/package/libatomic_ops/Config.in index a515bb8ceca..c6fe7a03b41 100644 --- a/package/libatomic_ops/Config.in +++ b/package/libatomic_ops/Config.in @@ -1,10 +1,10 @@ -config BR2_PACKAGE_LIBATOMIC_ARCH_SUPPORTS +config BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS bool - default y if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_i386 || BR2_sparc || BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || BR2_x86_64 + default y if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_i386 || BR2_sparc || BR2_sparc64 || BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || BR2_x86_64 config BR2_PACKAGE_LIBATOMIC_OPS bool "libatomic_ops" - depends on BR2_PACKAGE_LIBATOMIC_ARCH_SUPPORTS + depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS help Atomic operations library diff --git a/package/libbluray/libbluray.hash b/package/libbluray/libbluray.hash index b7bc201446b..5bb41a12450 100644 --- a/package/libbluray/libbluray.hash +++ b/package/libbluray/libbluray.hash @@ -1,2 +1,2 @@ -# Hashes from: http://get.videolan.org/libbluray/0.6.2/libbluray-0.6.2.tar.bz2.sha512 -sha512 20fbc5f34d7d025efaac1b6398c18b94b603a52bfb6dd0f021059d3bd4c3cf785e715698cd09e5d1c97a7ed11bbd146b29aa363650620eef1efca08053fc033a libbluray-0.6.2.tar.bz2 +# From http://get.videolan.org/libbluray/0.8.1/libbluray-0.8.1.tar.bz2.sha512 +sha512 6618e01a567f0dc5d21302fc771d4155589c81703028b76f6090a2d12ef1c7e9d08d9c79312a7c8b2ca0d6c63ce980195f0866509a4f8f05f64ed6650c7f78dc libbluray-0.8.1.tar.bz2 diff --git a/package/libbluray/libbluray.mk b/package/libbluray/libbluray.mk index be95b85c1f3..e62ad4844c4 100644 --- a/package/libbluray/libbluray.mk +++ b/package/libbluray/libbluray.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBBLURAY_VERSION = 0.6.2 +LIBBLURAY_VERSION = 0.8.1 LIBBLURAY_SITE = http://get.videolan.org/libbluray/$(LIBBLURAY_VERSION) LIBBLURAY_SOURCE = libbluray-$(LIBBLURAY_VERSION).tar.bz2 LIBBLURAY_INSTALL_STAGING = YES @@ -12,18 +12,29 @@ LIBBLURAY_LICENSE = LGPLv2.1+ LIBBLURAY_LICENSE_FILES = COPYING LIBBLURAY_DEPENDENCIES = host-pkgconf +LIBBLURAY_CONF_OPTS = --enable-udf --disable-bdjava + ifeq ($(BR2_PACKAGE_LIBICONV),y) LIBBLURAY_DEPENDENCIES += libiconv endif ifeq ($(BR2_PACKAGE_FREETYPE),y) LIBBLURAY_DEPENDENCIES += freetype +LIBBLURAY_CONF_OPTS += --with-freetype else LIBBLURAY_CONF_OPTS += --without-freetype endif +ifeq ($(BR2_PACKAGE_FONTCONFIG),y) +LIBBLURAY_DEPENDENCIES += fontconfig +LIBBLURAY_CONF_OPTS += --with-fontconfig +else +LIBBLURAY_CONF_OPTS += --without-fontconfig +endif + ifeq ($(BR2_PACKAGE_LIBXML2),y) LIBBLURAY_DEPENDENCIES += libxml2 +LIBBLURAY_CONF_OPTS += --with-libxml2 else LIBBLURAY_CONF_OPTS += --without-libxml2 endif diff --git a/package/libbroadvoice/Config.in b/package/libbroadvoice/Config.in new file mode 100644 index 00000000000..3301ba8ff80 --- /dev/null +++ b/package/libbroadvoice/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_LIBBROADVOICE + bool "libbroadvoice" + # broken with gcc <= 4.8 on arc + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59049 + depends on !BR2_arc || BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + help + broadvoice - a library for the BroadVoice 16 and 32 speech + codecs + + https://www.broadcom.com/support/broadvoice diff --git a/package/libbroadvoice/libbroadvoice.mk b/package/libbroadvoice/libbroadvoice.mk new file mode 100644 index 00000000000..c18d3d292b3 --- /dev/null +++ b/package/libbroadvoice/libbroadvoice.mk @@ -0,0 +1,19 @@ +################################################################################ +# +# libbroadvoice +# +################################################################################ + +LIBBROADVOICE_VERSION = f65b0f50c8c767229fbf1758370880abc0d78564 +# we use the FreeSwitch fork because (quoting README): +# "This library is based on the Broadcom reference code, but has been +# heavily modified so that it builds into a proper library, with a clean +# usable interface, on a range of platforms." +LIBBROADVOICE_SITE = https://freeswitch.org/stash/scm/sd/libbroadvoice.git +LIBBROADVOICE_SITE_METHOD = git +LIBBROADVOICE_LICENSE = LGPLv2.1 +LIBBROADVOICE_LICENSE_FILES = COPYING +LIBBROADVOICE_AUTORECONF = YES +LIBBROADVOICE_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/libbsd/0001-build-clock_gettime-might-need-librt.patch b/package/libbsd/0001-build-clock_gettime-might-need-librt.patch new file mode 100644 index 00000000000..ad6fcdbdf09 --- /dev/null +++ b/package/libbsd/0001-build-clock_gettime-might-need-librt.patch @@ -0,0 +1,49 @@ +From 188049ac7adcabfa66e5b6a674ac28a2f7da81f3 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Fri, 12 Feb 2016 11:06:58 -0300 +Subject: [PATCH] build: clock_gettime might need librt + +In older glibc versions (< 2.17) clock_gettime is in librt. +Add a check for this to avoid build breakage for programs/libraries that +use libbsd on such systems. + +Signed-off-by: Gustavo Zacarias +--- +Patch status: submitted upstream + + configure.ac | 5 +++++ + src/Makefile.am | 2 ++ + 2 files changed, 7 insertions(+) + +diff --git a/configure.ac b/configure.ac +index d334774..1862d19 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -44,6 +44,11 @@ AC_SUBST([TESTU01_LIBS]) + AM_CONDITIONAL([HAVE_LIBTESTU01], + [test "x$ac_cv_lib_testu01_unif01_CreateExternGenBits" = "xyes"]) + ++# In old glibc versions (< 2.17) clock_gettime() is in librt ++AC_SEARCH_LIBS([clock_gettime], [rt], ++ [LIB_CLOCK_GETTIME="-lrt"]) ++AC_SUBST([LIB_CLOCK_GETTIME]) ++ + # Checks for header files. + AC_CHECK_HEADERS([sys/ndir.h sys/dir.h ndir.h dirent.h]) + +diff --git a/src/Makefile.am b/src/Makefile.am +index 4649937..6b705f0 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -52,6 +52,8 @@ hash/md5hl.c: $(srcdir)/hash/helper.c + libbsd_la_DEPENDENCIES = \ + $(libbsd_la_included_sources) \ + libbsd.map ++libbsd_la_LIBADD = \ ++ $(LIB_CLOCK_GETTIME) + libbsd_la_LDFLAGS = \ + -Wl,--version-script=$(srcdir)/libbsd.map \ + -version-number $(LIBBSD_ABI) +-- +2.4.10 + diff --git a/package/libbsd/Config.in b/package/libbsd/Config.in index d521f05444b..dd2c19c183e 100644 --- a/package/libbsd/Config.in +++ b/package/libbsd/Config.in @@ -1,9 +1,7 @@ config BR2_PACKAGE_LIBBSD_ARCH_SUPPORTS bool - # libbsd requires a.out.h, which is only available for those - # architectures: arm, x86 (and alpha, currently not supported in Buildroot; - # also m68k which is currently not enabled, so can't be tested.) - default y if BR2_arm || BR2_i386 || BR2_x86_64 + # libbsd does not support the MicroBlaze ELF machine type (see local-elf.h) + default y if !BR2_microblaze config BR2_PACKAGE_LIBBSD bool "libbsd" diff --git a/package/libbsd/libbsd.hash b/package/libbsd/libbsd.hash index be4ba505cf0..f77c0aa4d6c 100644 --- a/package/libbsd/libbsd.hash +++ b/package/libbsd/libbsd.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 9e8f34ffa9c8579c87965a55a82d8ac37a1dc64858f717b7c49452ade277cc62 libbsd-0.6.0.tar.xz +sha256 b2f644cae94a6e2fe109449c20ad79a0f6ee4faec2205b07eefa0020565e250a libbsd-0.8.2.tar.xz diff --git a/package/libbsd/libbsd.mk b/package/libbsd/libbsd.mk index d6481b27df1..f750d752fea 100644 --- a/package/libbsd/libbsd.mk +++ b/package/libbsd/libbsd.mk @@ -4,12 +4,13 @@ # ################################################################################ -LIBBSD_VERSION = 0.6.0 +LIBBSD_VERSION = 0.8.2 LIBBSD_SOURCE = libbsd-$(LIBBSD_VERSION).tar.xz LIBBSD_SITE = http://libbsd.freedesktop.org/releases -LIBBSD_LICENSE = BSD-3c MIT +LIBBSD_LICENSE = BSD-3c, MIT LIBBSD_LICENSE_FILES = COPYING - LIBBSD_INSTALL_STAGING = YES +# For 0001-build-clock_gettime-might-need-librt.patch +LIBBSD_AUTORECONF = YES $(eval $(autotools-package)) diff --git a/package/libcap-ng/Config.in b/package/libcap-ng/Config.in index a52d230e605..4939e262ac6 100644 --- a/package/libcap-ng/Config.in +++ b/package/libcap-ng/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_LIBCAP_NG bool "libcap-ng" - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 # triggers compiler bug + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # triggers compiler bug help The libcap-ng library is intended to make programming with posix capabilities much easier than the traditional libcap diff --git a/package/libcdaudio/Config.in b/package/libcdaudio/Config.in index 02df01e4fc8..3eca607fc18 100644 --- a/package/libcdaudio/Config.in +++ b/package/libcdaudio/Config.in @@ -1,5 +1,7 @@ config BR2_PACKAGE_LIBCDAUDIO bool "libcdaudio" + # binutils assertion failure + depends on !BR2_nios2 help libcdaudio is a library designed to provide functions to control operation of a CD-ROM when playing audio CDs. It diff --git a/package/libcddb/Config.in b/package/libcddb/Config.in new file mode 100644 index 00000000000..f2bb827829f --- /dev/null +++ b/package/libcddb/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_LIBCDDB + bool "libcddb" + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + help + Libcddb is a C library to access data on a CDDB server + (freedb.org). It allows you to: + * search the database for possible CD matches; + * retrieve detailed information about a specific CD; + * submit new CD entries to the database. + + http://libcddb.sourceforge.net/index.html + +if BR2_PACKAGE_LIBCDDB + +config BR2_PACKAGE_LIBCDDB_INSTALL_CDDB_QUERY + bool "install cddb_query" + help + cddb_query is an optionnal libcddb test program. + +endif diff --git a/package/libcddb/libcddb.hash b/package/libcddb/libcddb.hash new file mode 100644 index 00000000000..9e60683ea33 --- /dev/null +++ b/package/libcddb/libcddb.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 35ce0ee1741ea38def304ddfe84a958901413aa829698357f0bee5bb8f0a223b libcddb-1.3.2.tar.bz2 diff --git a/package/libcddb/libcddb.mk b/package/libcddb/libcddb.mk new file mode 100644 index 00000000000..96b265a4dd2 --- /dev/null +++ b/package/libcddb/libcddb.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# libcddb +# +################################################################################ + +LIBCDDB_VERSION = 1.3.2 +LIBCDDB_SOURCE = libcddb-$(LIBCDDB_VERSION).tar.bz2 +LIBCDDB_SITE = http://downloads.sourceforge.net/libcddb +LIBCDDB_LICENSE = LGPLv2+ +LIBCDDB_LICENSE_FILES = COPYING +LIBCDDB_INSTALL_STAGING = YES + +ifeq ($(BR2_ENABLE_LOCALE),) +LIBCDDB_DEPENDENCIES += libiconv +endif + +define LIBCDDB_REMOVE_CDDB_QUERY + rm -f $(TARGET_DIR)/usr/bin/cddb_query +endef + +ifeq ($(BR2_PACKAGE_LIBCDDB_INSTALL_CDDB_QUERY),) +LIBCDDB_POST_INSTALL_TARGET_HOOKS += LIBCDDB_REMOVE_CDDB_QUERY +endif + +$(eval $(autotools-package)) diff --git a/package/libcec/Config.in b/package/libcec/Config.in index 2cf011da5d7..2dddc53635a 100644 --- a/package/libcec/Config.in +++ b/package/libcec/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_LIBCEC depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_WCHAR depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11 select BR2_PACKAGE_LIBPLATFORM help libcec allows you in combination with the right hardware to @@ -12,6 +13,7 @@ config BR2_PACKAGE_LIBCEC http://libcec.pulse-eight.com -comment "libcec needs a toolchain w/ C++, wchar, threads, dynamic library" +comment "libcec needs a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 4.7" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ - !BR2_USE_WCHAR || BR2_STATIC_LIBS + !BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 || \ + BR2_STATIC_LIBS diff --git a/package/libcgroup/Config.in b/package/libcgroup/Config.in index b7a84e06e0c..d02c2829ad9 100644 --- a/package/libcgroup/Config.in +++ b/package/libcgroup/Config.in @@ -9,5 +9,14 @@ config BR2_PACKAGE_LIBCGROUP http://libcg.sourceforge.net/ +if BR2_PACKAGE_LIBCGROUP + +config BR2_PACKAGE_LIBCGROUP_TOOLS + bool "install tools" + help + Include a set of command-line tools for managing cgroups. + +endif + comment "libcgroup needs an (e)glibc toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/libcgroup/libcgroup.mk b/package/libcgroup/libcgroup.mk index ace27446995..a4c3084c6c0 100644 --- a/package/libcgroup/libcgroup.mk +++ b/package/libcgroup/libcgroup.mk @@ -20,10 +20,15 @@ LIBCGROUP_CONF_ENV = \ CFLAGS="$(TARGET_CFLAGS) -U_FILE_OFFSET_BITS" LIBCGROUP_CONF_OPTS = \ - --disable-tools \ --disable-daemon \ --disable-initscript-install +ifeq ($(BR2_PACKAGE_LIBCGROUP_TOOLS),y) +LIBCGROUP_CONF_OPTS += --enable-tools +else +LIBCGROUP_CONF_OPTS += --disable-tools +endif + ifeq ($(BR2_PACKAGE_LINUX_PAM),y) LIBCGROUP_DEPENDENCIES += linux-pam LIBCGROUP_CONF_OPTS += --enable-pam diff --git a/package/libcodec2/0001-Use-the-native-compiler-to-build-generate_cookbook.patch b/package/libcodec2/0001-Use-the-native-compiler-to-build-generate_cookbook.patch new file mode 100644 index 00000000000..ede31dbc2ab --- /dev/null +++ b/package/libcodec2/0001-Use-the-native-compiler-to-build-generate_cookbook.patch @@ -0,0 +1,153 @@ +From c7c769990bca3049bc389dcbd9985adaec134946 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 29 Aug 2015 11:59:18 +0200 +Subject: [PATCH] Use the native compiler to build generate_cookbook + +The generate_cookbook binary needs to be executed at build time. When +cross-compiling, this means that it should be built with the native +compiler rather than the cross-compiler. + +To achieve this, this commit imports the AX_CC_FOR_BUILD autoconf +macro from the GNU Autoconf Archive project, and adjusts +src/Makefile.am to use CC_FOR_BUILD to build generate_cookbook. + +Based on initial work by Bernd Kuhls. + +Signed-off-by: Thomas Petazzoni +--- + Makefile.am | 1 + + configure.ac | 2 ++ + m4/ax_cc_for_build.m4 | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++ + src/Makefile.am | 3 ++ + 4 files changed, 83 insertions(+) + create mode 100644 m4/ax_cc_for_build.m4 + +diff --git a/Makefile.am b/Makefile.am +index 4468bca..bd3ce01 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -2,6 +2,7 @@ AM_CFLAGS = -Isrc -fPIC -Wall -O3 -lm + AUTOMAKE_OPTIONS = gnu + NAME = codec2 + AM_CPPFLAGS = $(AM_CFLAGS) ++ACLOCAL_AMFLAGS = -I m4 + + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = codec2.pc +diff --git a/configure.ac b/configure.ac +index 493c517..7520af6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -4,10 +4,12 @@ + AC_PREREQ([2.59]) + AC_INIT(codec2, 0.2, david@rowetel.com) + AM_INIT_AUTOMAKE ++AC_CONFIG_MACRO_DIR([m4]) + + # Checks for programs. + AC_PROG_CC + AC_PROG_LIBTOOL ++AX_CC_FOR_BUILD + + # Checks for libraries. + # FIXME: Replace `main' with a function in `-lm': +diff --git a/m4/ax_cc_for_build.m4 b/m4/ax_cc_for_build.m4 +new file mode 100644 +index 0000000..c880fd0 +--- /dev/null ++++ b/m4/ax_cc_for_build.m4 +@@ -0,0 +1,77 @@ ++# =========================================================================== ++# http://www.gnu.org/software/autoconf-archive/ax_cc_for_build.html ++# =========================================================================== ++# ++# SYNOPSIS ++# ++# AX_CC_FOR_BUILD ++# ++# DESCRIPTION ++# ++# Find a build-time compiler. Sets CC_FOR_BUILD and EXEEXT_FOR_BUILD. ++# ++# LICENSE ++# ++# Copyright (c) 2010 Reuben Thomas ++# Copyright (c) 1999 Richard Henderson ++# ++# This program is free software: you can redistribute it and/or modify it ++# under the terms of the GNU General Public License as published by the ++# Free Software Foundation, either version 3 of the License, or (at your ++# option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General ++# Public License for more details. ++# ++# You should have received a copy of the GNU General Public License along ++# with this program. If not, see . ++# ++# As a special exception, the respective Autoconf Macro's copyright owner ++# gives unlimited permission to copy, distribute and modify the configure ++# scripts that are the output of Autoconf when processing the Macro. You ++# need not follow the terms of the GNU General Public License when using ++# or distributing such scripts, even though portions of the text of the ++# Macro appear in them. The GNU General Public License (GPL) does govern ++# all other use of the material that constitutes the Autoconf Macro. ++# ++# This special exception to the GPL applies to versions of the Autoconf ++# Macro released by the Autoconf Archive. When you make and distribute a ++# modified version of the Autoconf Macro, you may extend this special ++# exception to the GPL to apply to your modified version as well. ++ ++#serial 2 ++ ++dnl Get a default for CC_FOR_BUILD to put into Makefile. ++AC_DEFUN([AX_CC_FOR_BUILD], ++[# Put a plausible default for CC_FOR_BUILD in Makefile. ++if test -z "$CC_FOR_BUILD"; then ++ if test "x$cross_compiling" = "xno"; then ++ CC_FOR_BUILD='$(CC)' ++ else ++ CC_FOR_BUILD=gcc ++ fi ++fi ++AC_SUBST(CC_FOR_BUILD) ++# Also set EXEEXT_FOR_BUILD. ++if test "x$cross_compiling" = "xno"; then ++ EXEEXT_FOR_BUILD='$(EXEEXT)' ++else ++ AC_CACHE_CHECK([for build system executable suffix], bfd_cv_build_exeext, ++ [rm -f conftest* ++ echo 'int main () { return 0; }' > conftest.c ++ bfd_cv_build_exeext= ++ ${CC_FOR_BUILD} -o conftest conftest.c 1>&5 2>&5 ++ for file in conftest.*; do ++ case $file in ++ *.c | *.o | *.obj | *.ilk | *.pdb) ;; ++ *) bfd_cv_build_exeext=`echo $file | sed -e s/conftest//` ;; ++ esac ++ done ++ rm -f conftest* ++ test x"${bfd_cv_build_exeext}" = x && bfd_cv_build_exeext=no]) ++ EXEEXT_FOR_BUILD="" ++ test x"${bfd_cv_build_exeext}" != xno && EXEEXT_FOR_BUILD=${bfd_cv_build_exeext} ++fi ++AC_SUBST(EXEEXT_FOR_BUILD)])dnl +diff --git a/src/Makefile.am b/src/Makefile.am +index 1153b3c..719088d 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -77,6 +77,9 @@ CODEBOOKSGE= \ + + noinst_PROGRAMS = generate_codebook genlspdtcb + ++generate_codebook$(EXEEXT_FOR_BUILD): generate_codebook.c ++ $(CC_FOR_BUILD) -o $@ generate_codebook.c -lm ++ + codebook.$(OBJEXT): codebook.c + codebookd.$(OBJEXT): codebookd.c + codebookdt.$(OBJEXT): codebookdt.c +-- +2.5.0 + diff --git a/package/libcodec2/0002-Add-option-to-disable-unit-tests.patch b/package/libcodec2/0002-Add-option-to-disable-unit-tests.patch new file mode 100644 index 00000000000..78227020925 --- /dev/null +++ b/package/libcodec2/0002-Add-option-to-disable-unit-tests.patch @@ -0,0 +1,50 @@ +From 19db6244200b870317382294f14b7d561d55a64e Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 29 Aug 2015 12:05:53 +0200 +Subject: [PATCH] Add option to disable unit tests + +The unittests require C++, while the rest of the library does not, so +this commit implements a --{enable,disable}-unittests option to +selectively enable the build of the unit tests. When not provided, the +option defaults to yes so that the existing behavior is preserved. + +Based on initial work by Bernd Kuhls. + +Signed-off-by: Thomas Petazzoni +--- + Makefile.am | 6 +++++- + configure.ac | 5 +++++ + 2 files changed, 10 insertions(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index bd3ce01..1da250b 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -95,4 +95,8 @@ src/codebook/lsp8.txt \ + src/codebook/lsp9.txt \ + src/codebook/lsp10.txt + +-SUBDIRS = src unittest ++SUBDIRS = src ++ ++if UNITTESTS ++SUBDIRS += unittest ++endif +diff --git a/configure.ac b/configure.ac +index 7520af6..55b7215 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -24,5 +24,10 @@ AC_CHECK_HEADERS([stdlib.h string.h]) + AC_FUNC_MALLOC + AC_CHECK_FUNCS([floor pow sqrt]) + ++AC_ARG_ENABLE([unittests], ++ AS_HELP_STRING([--disable-unittests], [Disable unittests]), ++ [], [enable_unittests=yes]) ++AM_CONDITIONAL([UNITTESTS], [test "${enable_unittests}" = "yes"]) ++ + AC_CONFIG_FILES([Makefile src/Makefile unittest/Makefile codec2.pc]) + AC_OUTPUT +-- +2.5.0 + diff --git a/package/libcodec2/Config.in b/package/libcodec2/Config.in new file mode 100644 index 00000000000..b27aab1c70e --- /dev/null +++ b/package/libcodec2/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_LIBCODEC2 + bool "libcodec2" + help + Codec2 is an open source low bit rate speech codec designed + for communications quality speech between 1200 and 3200 bit/s. + + http://rowetel.com/codec2.html diff --git a/package/libcodec2/libcodec2.mk b/package/libcodec2/libcodec2.mk new file mode 100644 index 00000000000..73f98ca2fe4 --- /dev/null +++ b/package/libcodec2/libcodec2.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# libcodec2 +# +################################################################################ + +LIBCODEC2_VERSION = 392a55b4f3f8ad30d845ac6ae35e8b27343bb944 +LIBCODEC2_SITE = https://freeswitch.org/stash/scm/sd/libcodec2.git +LIBCODEC2_SITE_METHOD = git +LIBCODEC2_LICENSE = LGPLv2.1 +LIBCODEC2_LICENSE_FILES = COPYING +LIBCODEC2_AUTORECONF = YES +LIBCODEC2_INSTALL_STAGING = YES +LIBCODEC2_CONF_OPTS = --disable-unittests + +$(eval $(autotools-package)) diff --git a/package/libconfuse/0001-fix-configure-ac.patch b/package/libconfuse/0001-fix-configure-ac.patch deleted file mode 100644 index 6d61b4881bf..00000000000 --- a/package/libconfuse/0001-fix-configure-ac.patch +++ /dev/null @@ -1,27 +0,0 @@ -configure: remove po/Makefile.in from AC_CONFIG_FILES - -Since we are gettextizing the package, gettextize updates configure.ac -to add po/Makefile.in to AC_CONFIG_FILES> - -Unfortunately, it's already present, and gettextize does not detect it, -and insists on adding its own. Later on, autoreconf barfs on the double -occurences. - -As suggested by Arnout, just patch configure.ac to remove the -po/Makefile.in occurence, so gettextize can safely add its own - -Reported-by: Arnout Vandecappelle -Signed-off-by: "Yann E. MORIN" -Cc: Alvaro Gamez - -diff -durN libconfuse-V2_7.orig/configure.ac libconfuse-V2_7/configure.ac ---- libconfuse-V2_7.orig/configure.ac 2010-02-20 10:14:10.000000000 +0100 -+++ libconfuse-V2_7/configure.ac 2014-07-17 00:19:18.816785340 +0200 -@@ -49,7 +49,6 @@ - AC_CONFIG_FILES([Makefile \ - src/Makefile \ - examples/Makefile \ -- po/Makefile.in \ - m4/Makefile \ - tests/Makefile \ - doc/Makefile \ diff --git a/package/libconfuse/libconfuse.hash b/package/libconfuse/libconfuse.hash new file mode 100644 index 00000000000..3e221d2a9c0 --- /dev/null +++ b/package/libconfuse/libconfuse.hash @@ -0,0 +1,2 @@ +# From https://github.com/martinh/libconfuse/releases/download/v2.8/confuse-2.8.tar.xz.md5 +md5 cb552c5737a72ef164733f0118971eb0 confuse-2.8.tar.xz diff --git a/package/libconfuse/libconfuse.mk b/package/libconfuse/libconfuse.mk index b3dcceb8086..1a01896ebc1 100644 --- a/package/libconfuse/libconfuse.mk +++ b/package/libconfuse/libconfuse.mk @@ -4,17 +4,14 @@ # ################################################################################ -LIBCONFUSE_VERSION = 9413a82f9cb56a94f71fa420f146e841c5372ed8 -LIBCONFUSE_SITE = $(call github,martinh,libconfuse,$(LIBCONFUSE_VERSION)) +LIBCONFUSE_VERSION = 2.8 +LIBCONFUSE_SOURCE = confuse-$(LIBCONFUSE_VERSION).tar.xz +LIBCONFUSE_SITE = https://github.com/martinh/libconfuse/releases/download/v$(LIBCONFUSE_VERSION) LIBCONFUSE_INSTALL_STAGING = YES LIBCONFUSE_CONF_OPTS = --disable-rpath LIBCONFUSE_DEPENDENCIES = host-flex LIBCONFUSE_LICENSE = ISC LIBCONFUSE_LICENSE_FILES = LICENSE -# Fresh from the repository, no configure et al. -LIBCONFUSE_AUTORECONF = YES -LIBCONFUSE_GETTEXTIZE = YES - $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/libcroco/Config.in b/package/libcroco/Config.in new file mode 100644 index 00000000000..5baf83dfb9d --- /dev/null +++ b/package/libcroco/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_LIBCROCO + bool "libcroco" + select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_LIBGLIB2 + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 + depends on BR2_USE_MMU # glib2 + help + Libcroco is a standalone css2 parsing and manipulation + library. The parser provides a low level event driven SAC + like api and a css object model like api. + + Libcroco provides a CSS2 selection engine and an + experimental xml/css rendering engine. + + https://github.com/GNOME/libcroco + +comment "libcroco needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libcroco/libcroco.hash b/package/libcroco/libcroco.hash new file mode 100644 index 00000000000..edf0b1f3887 --- /dev/null +++ b/package/libcroco/libcroco.hash @@ -0,0 +1,2 @@ +# From http://ftp.acc.umu.se/pub/gnome/sources/libcroco/0.6/libcroco-0.6.11.sha256sum +sha256 132b528a948586b0dfa05d7e9e059901bca5a3be675b6071a90a90b81ae5a056 libcroco-0.6.11.tar.xz diff --git a/package/libcroco/libcroco.mk b/package/libcroco/libcroco.mk new file mode 100644 index 00000000000..c4cb6762d83 --- /dev/null +++ b/package/libcroco/libcroco.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# libcroco +# +################################################################################ + +LIBCROCO_VERSION_MAJOR = 0.6 +LIBCROCO_VERSION = $(LIBCROCO_VERSION_MAJOR).11 +LIBCROCO_SITE = http://ftp.gnome.org/pub/gnome/sources/libcroco/$(LIBCROCO_VERSION_MAJOR) +LIBCROCO_SOURCE = libcroco-$(LIBCROCO_VERSION).tar.xz +LIBCROCO_INSTALL_STAGING = YES +LIBCROCO_DEPENDENCIES = host-pkgconf libglib2 libxml2 +LIBCROCO_CONFIG_SCRIPTS = croco-$(LIBCROCO_VERSION_MAJOR)-config +# NEWS states that it's only LGPL +# Source code says v2.1+ even though COPYING.LIB is v2 +LIBCROCO_LICENSE = LGPLv2.1+ +LIBCROCO_LICENSE_FILES = COPYING.LIB + +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/libcrossguid/Config.in b/package/libcrossguid/Config.in new file mode 100644 index 00000000000..907ad2da369 --- /dev/null +++ b/package/libcrossguid/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_LIBCROSSGUID + bool "libcrossguid" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11 + depends on BR2_USE_WCHAR # util-linux + select BR2_PACKAGE_UTIL_LINUX + select BR2_PACKAGE_UTIL_LINUX_LIBUUID + help + Lightweight cross platform C++ GUID/UUID library + + https://github.com/graeme-hill/crossguid + +comment "libcrossguid needs a toolchain w/ C++, wchar, gcc >= 4.7" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \\ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/libcrossguid/libcrossguid.mk b/package/libcrossguid/libcrossguid.mk new file mode 100644 index 00000000000..46d9a9dcc6b --- /dev/null +++ b/package/libcrossguid/libcrossguid.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# libcrossguid +# +################################################################################ + +LIBCROSSGUID_VERSION = 8f399e8bd4252be9952f3dfa8199924cc8487ca4 +LIBCROSSGUID_SITE = $(call github,graeme-hill,crossguid,$(LIBCROSSGUID_VERSION)) +LIBCROSSGUID_LICENSE = MIT +LIBCROSSGUID_LICENSE_FILES = LICENSE +LIBCROSSGUID_INSTALL_STAGING = YES +# only a static library +LIBCROSSGUID_INSTALL_TARGET = NO +LIBCROSSGUID_DEPENDENCIES = util-linux + +define LIBCROSSGUID_BUILD_CMDS + (cd $(@D); $(TARGET_CXX) $(TARGET_CXXFLAGS) -std=c++11 -DGUID_LIBUUID \ + -c guid.cpp -o guid.o) + (cd $(@D); $(TARGET_AR) rvs libcrossguid.a guid.o) +endef + +define LIBCROSSGUID_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 644 $(@D)/libcrossguid.a \ + $(STAGING_DIR)/usr/lib/libcrossguid.a + $(INSTALL) -D -m 644 $(@D)/guid.h $(STAGING_DIR)/usr/include/guid.h +endef + +$(eval $(generic-package)) diff --git a/package/libcue/0001-_unused-fix.patch b/package/libcue/0001-_unused-fix.patch deleted file mode 100644 index 8a589193253..00000000000 --- a/package/libcue/0001-_unused-fix.patch +++ /dev/null @@ -1,50 +0,0 @@ -[PATCH] fix build on uClibc - -Use cue_unused / cue_dead2 for the unused/non-returning annotation macros, -as uClibc defines a struct member called __unused in stdio.h when built -with locale support, breaking the build. - -According to ANSI C 4.1.2.1, defines beginning with '__' are reserved -for the implementation, so shouldn't be used in user code. - -Signed-off-by: Peter Korsgaard ---- - src/libcue/cue_scanner.c | 10 ++++++---- - 1 file changed, 6 insertions(+), 4 deletions(-) - -Index: libcue-1.4.0/src/libcue/cue_scanner.c -=================================================================== ---- libcue-1.4.0.orig/src/libcue/cue_scanner.c -+++ libcue-1.4.0/src/libcue/cue_scanner.c -@@ -7,9 +7,11 @@ - - #if defined(__FreeBSD__) - #include -+#define cue_unused __unused -+#define cue_dead2 __dead2 - #else --#define __unused --#define __dead2 -+#define cue_unused -+#define cue_dead2 - #endif - - #define FLEX_SCANNER -@@ -248,7 +250,7 @@ - YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len )); - - static void *yy_flex_alloc YY_PROTO(( yy_size_t )); --static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) __unused; -+static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) cue_unused; - static void yy_flex_free YY_PROTO(( void * )); - - #define yy_new_buffer yy_create_buffer -@@ -285,7 +287,7 @@ - static yy_state_type yy_get_previous_state YY_PROTO(( void )); - static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state )); - static int yy_get_next_buffer YY_PROTO(( void )); --static void yy_fatal_error YY_PROTO(( yyconst char msg[] )) __dead2; -+static void yy_fatal_error YY_PROTO(( yyconst char msg[] )) cue_dead2; - - /* Done after the current pattern has been matched and before the - * corresponding action - sets up yytext. diff --git a/package/libcue/Config.in b/package/libcue/Config.in index 61217467d73..69e64955945 100644 --- a/package/libcue/Config.in +++ b/package/libcue/Config.in @@ -4,4 +4,4 @@ config BR2_PACKAGE_LIBCUE help CUE Sheet Parser Library - http://libcue.sourceforge.net/ + https://github.com/lipnitsk/libcue diff --git a/package/libcue/libcue.hash b/package/libcue/libcue.hash index 0fa7100e10d..779cda0d66c 100644 --- a/package/libcue/libcue.hash +++ b/package/libcue/libcue.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 8b7276ec2a2b3918cbc59a3cc03c68dc0775965cc20e4b88757b852ff369729e libcue-1.4.0.tar.bz2 +sha256 c3c46d58cebf15b3fe07e6f649014694d338ddd880e941bfb1fd3cedae66c62f libcue-v1.4.0.tar.gz diff --git a/package/libcue/libcue.mk b/package/libcue/libcue.mk index e2cf6305ba9..70124538f2f 100644 --- a/package/libcue/libcue.mk +++ b/package/libcue/libcue.mk @@ -4,12 +4,18 @@ # ################################################################################ -LIBCUE_VERSION = 1.4.0 -LIBCUE_SITE = http://downloads.sourceforge.net/project/libcue/libcue/$(LIBCUE_VERSION) -LIBCUE_SOURCE = libcue-$(LIBCUE_VERSION).tar.bz2 +LIBCUE_VERSION = v1.4.0 +LIBCUE_SITE = $(call github,lipnitsk,libcue,$(LIBCUE_VERSION)) LIBCUE_LICENSE = GPLv2, BSD-2c (rem.c) LIBCUE_LICENSE_FILES = COPYING -LIBCUE_DEPENDENCIES = flex +LIBCUE_DEPENDENCIES = host-bison host-flex flex LIBCUE_INSTALL_STAGING = YES +LIBCUE_AUTORECONF = YES + +# Needed for autoreconf +define LIBCUE_MAKE_CONFIG_DIR + mkdir $(@D)/config +endef +LIBCUE_POST_EXTRACT_HOOKS += LIBCUE_MAKE_CONFIG_DIR $(eval $(autotools-package)) diff --git a/package/libcurl/libcurl.hash b/package/libcurl/libcurl.hash index ee68922dddf..eef2c13b841 100644 --- a/package/libcurl/libcurl.hash +++ b/package/libcurl/libcurl.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 baa654a1122530483ccc1c58cc112fec3724a82c11c6a389f1e6a37dc8858df9 curl-7.43.0.tar.bz2 +sha256 ddc643ab9382e24bbe4747d43df189a0a6ce38fcb33df041b9cb0b3cd47ae98f curl-7.47.1.tar.bz2 diff --git a/package/libcurl/libcurl.mk b/package/libcurl/libcurl.mk index 29a888cc01a..33a54106dac 100644 --- a/package/libcurl/libcurl.mk +++ b/package/libcurl/libcurl.mk @@ -4,14 +4,14 @@ # ################################################################################ -LIBCURL_VERSION = 7.43.0 +LIBCURL_VERSION = 7.47.1 LIBCURL_SOURCE = curl-$(LIBCURL_VERSION).tar.bz2 LIBCURL_SITE = http://curl.haxx.se/download LIBCURL_DEPENDENCIES = host-pkgconf \ $(if $(BR2_PACKAGE_ZLIB),zlib) \ $(if $(BR2_PACKAGE_LIBIDN),libidn) \ $(if $(BR2_PACKAGE_RTMPDUMP),rtmpdump) -LIBCURL_LICENSE = ICS +LIBCURL_LICENSE = ISC LIBCURL_LICENSE_FILES = COPYING LIBCURL_INSTALL_STAGING = YES @@ -30,7 +30,7 @@ LIBCURL_CONF_ENV += ac_cv_lib_crypto_CRYPTO_lock=yes # native stuff during the rest of configure when target == host. # Fix it by setting LD_LIBRARY_PATH to something sensible so those libs # are found first. -LIBCURL_CONF_ENV += LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:/lib:/usr/lib +LIBCURL_CONF_ENV += LD_LIBRARY_PATH=$(if $(LD_LIBRARY_PATH),$(LD_LIBRARY_PATH):)/lib:/usr/lib LIBCURL_CONF_OPTS += --with-ssl=$(STAGING_DIR)/usr \ --with-ca-path=/etc/ssl/certs else ifeq ($(BR2_PACKAGE_GNUTLS),y) diff --git a/package/libdcadec/libdcadec.mk b/package/libdcadec/libdcadec.mk index 1c423f02705..2b391fcb411 100644 --- a/package/libdcadec/libdcadec.mk +++ b/package/libdcadec/libdcadec.mk @@ -4,25 +4,30 @@ # ################################################################################ -LIBDCADEC_VERSION = 7b3b44cd180c9345c98be9062eac701eab5c7454 +LIBDCADEC_VERSION = 2a9186e34ce557d3af1a20f5b558d1e6687708b9 LIBDCADEC_SITE = $(call github,foo86,dcadec,$(LIBDCADEC_VERSION)) LIBDCADEC_LICENSE = LGPLv2.1+ LIBDCADEC_LICENSE_FILES = COPYING.LGPLv2.1 LIBDCADEC_INSTALL_STAGING = YES +ifeq ($(BR2_STATIC_LIBS),) +LIBDCADEC_SHARED = CONFIG_SHARED=1 +endif + define LIBDCADEC_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="$(TARGET_CFLAGS) -std=gnu99" -C $(@D) + CFLAGS="$(TARGET_CFLAGS) -std=gnu99" \ + $(LIBDCADEC_SHARED) -C $(@D) endef define LIBDCADEC_INSTALL_STAGING_CMDS $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ - DESTDIR=$(STAGING_DIR) PREFIX=/usr install + $(LIBDCADEC_SHARED) DESTDIR=$(STAGING_DIR) PREFIX=/usr install endef define LIBDCADEC_INSTALL_TARGET_CMDS $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ - DESTDIR=$(TARGET_DIR) PREFIX=/usr install + $(LIBDCADEC_SHARED) DESTDIR=$(TARGET_DIR) PREFIX=/usr install endef $(eval $(generic-package)) diff --git a/package/libdrm/0002-xf86drm.c-Include-limits.h-to-fix-build-error-on-Sol.patch b/package/libdrm/0002-xf86drm.c-Include-limits.h-to-fix-build-error-on-Sol.patch new file mode 100644 index 00000000000..03b45245102 --- /dev/null +++ b/package/libdrm/0002-xf86drm.c-Include-limits.h-to-fix-build-error-on-Sol.patch @@ -0,0 +1,31 @@ +From 3fed80daf1dcb0b5d20e623d27228726c735e138 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 27 Sep 2015 19:09:47 +0200 +Subject: [PATCH 1/1] xf86drm.c: Include limits.h to fix build error on Solaris + and with musl + +musl's strict implementation requires #include for PATH_MAX. + +Patch suggested by evgeny for Solaris: +https://bugs.freedesktop.org/show_bug.cgi?id=92082 + +Signed-off-by: Bernd Kuhls +--- + xf86drm.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/xf86drm.c b/xf86drm.c +index a9f5c29..ec985eb 100644 +--- a/xf86drm.c ++++ b/xf86drm.c +@@ -53,6 +53,7 @@ + #include + #include + #include ++#include + #ifdef HAVE_SYS_MKDEV_H + # include /* defines major(), minor(), and makedev() on Solaris */ + #endif +-- +2.5.3 + diff --git a/package/libdrm/Config.in b/package/libdrm/Config.in index dda3aee9c85..445a85bf5b9 100644 --- a/package/libdrm/Config.in +++ b/package/libdrm/Config.in @@ -22,42 +22,52 @@ config BR2_PACKAGE_LIBDRM_INTEL select BR2_PACKAGE_LIBPCIACCESS depends on BR2_i386 || BR2_x86_64 help - installs intel graphics driver + Install intel graphics driver. config BR2_PACKAGE_LIBDRM_RADEON bool "radeon" help - install AMD/ATI graphics driver + Install AMD/ATI graphics driver. + +config BR2_PACKAGE_LIBDRM_AMDGPU + bool "amdgpu" + help + Install AMD GPU driver. config BR2_PACKAGE_LIBDRM_NOUVEAU bool "nouveau" - depends on BR2_i386 || BR2_x86_64 help - install Nvidia graphics driver + Install NVIDIA graphics driver. config BR2_PACKAGE_LIBDRM_VMWGFX bool "vmwgfx" depends on BR2_i386 || BR2_x86_64 help - installs Vmware graphics driver + Installs Vmware graphics driver. config BR2_PACKAGE_LIBDRM_OMAP bool "omap (experimental)" depends on BR2_arm help - install the TI OMAP driver using an experimental API. + Install the TI OMAP driver using an experimental API. config BR2_PACKAGE_LIBDRM_EXYNOS bool "exynos (experimental)" depends on BR2_arm help - installs Samsung Exynos driver using an experimental API. + Install Samsung Exynos driver using an experimental API. config BR2_PACKAGE_LIBDRM_FREEDRENO - bool "freedreno (experimental)" + bool "freedreno" + depends on BR2_arm || BR2_aarch64 || BR2_aarch64_be + help + Install Qualcomm Snapdragon driver. + +config BR2_PACKAGE_LIBDRM_TEGRA + bool "tegra (experimental)" depends on BR2_arm help - install Qualcomm Snapdragon driver using an experimental API. + Install NVIDIA Tegra driver using an experimental API. endmenu diff --git a/package/libdrm/libdrm.hash b/package/libdrm/libdrm.hash index 05944c56c35..948c7bf340b 100644 --- a/package/libdrm/libdrm.hash +++ b/package/libdrm/libdrm.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/dri-devel/2015-June/085375.html -sha256 906c294bdbe1c94c3ca084305d61a6e5a8367f3b4986e6cc13b1e9b3f75931dc libdrm-2.4.62.tar.bz2 +# From http://lists.freedesktop.org/archives/dri-devel/2015-December/097697.html +sha256 79cb8e988749794edfb2d777b298d5292eff353bbbb71ed813589e61d2bc2d76 libdrm-2.4.66.tar.bz2 diff --git a/package/libdrm/libdrm.mk b/package/libdrm/libdrm.mk index 1768214a49c..8d84beb2cf6 100644 --- a/package/libdrm/libdrm.mk +++ b/package/libdrm/libdrm.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBDRM_VERSION = 2.4.62 +LIBDRM_VERSION = 2.4.66 LIBDRM_SOURCE = libdrm-$(LIBDRM_VERSION).tar.bz2 LIBDRM_SITE = http://dri.freedesktop.org/libdrm LIBDRM_LICENSE = MIT @@ -34,6 +34,12 @@ else LIBDRM_CONF_OPTS += --disable-radeon endif +ifeq ($(BR2_PACKAGE_LIBDRM_AMDGPU),y) +LIBDRM_CONF_OPTS += --enable-amdgpu +else +LIBDRM_CONF_OPTS += --disable-amdgpu +endif + ifeq ($(BR2_PACKAGE_LIBDRM_NOUVEAU),y) LIBDRM_CONF_OPTS += --enable-nouveau else @@ -59,9 +65,15 @@ LIBDRM_CONF_OPTS += --disable-exynos-experimental-api endif ifeq ($(BR2_PACKAGE_LIBDRM_FREEDRENO),y) -LIBDRM_CONF_OPTS += --enable-freedreno-experimental-api +LIBDRM_CONF_OPTS += --enable-freedreno +else +LIBDRM_CONF_OPTS += --disable-freedreno +endif + +ifeq ($(BR2_PACKAGE_LIBDRM_TEGRA),y) +LIBDRM_CONF_OPTS += --enable-tegra-experimental-api else -LIBDRM_CONF_OPTS += --disable-freedreno-experimental-api +LIBDRM_CONF_OPTS += --disable-tegra-experimental-api endif ifeq ($(BR2_PACKAGE_HAS_UDEV),y) diff --git a/package/libdvbpsi/Config.in b/package/libdvbpsi/Config.in new file mode 100644 index 00000000000..4d543bc91c8 --- /dev/null +++ b/package/libdvbpsi/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_LIBDVBPSI + bool "libdvbpsi" + depends on BR2_TOOLCHAIN_HAS_THREADS + help + libdvbpsi is a simple library designed for decoding and + generation of MPEG TS and DVB PSI tables according to standards + ISO/IEC 13818 and ITU-T H.222.0. + + http://www.videolan.org/developers/libdvbpsi.html + +comment "libdvbpsi needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libdvbpsi/libdvbpsi.hash b/package/libdvbpsi/libdvbpsi.hash new file mode 100644 index 00000000000..cf76616ff4a --- /dev/null +++ b/package/libdvbpsi/libdvbpsi.hash @@ -0,0 +1,4 @@ +# From http://download.videolan.org/pub/libdvbpsi/1.3.0/libdvbpsi-1.3.0.tar.bz2.md5 +md5 2b217039a1299000c39423441f77e76a libdvbpsi-1.3.0.tar.bz2 +# From http://download.videolan.org/pub/libdvbpsi/1.3.0/libdvbpsi-1.3.0.tar.bz2.sha256 +sha256 a2fed1d11980662f919bbd1f29e2462719e0f6227e1a531310bd5a706db0a1fe libdvbpsi-1.3.0.tar.bz2 diff --git a/package/libdvbpsi/libdvbpsi.mk b/package/libdvbpsi/libdvbpsi.mk new file mode 100644 index 00000000000..218c19e1f01 --- /dev/null +++ b/package/libdvbpsi/libdvbpsi.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# libdvbpsi +# +################################################################################ + +LIBDVBPSI_VERSION = 1.3.0 +LIBDVBPSI_SITE = http://download.videolan.org/pub/libdvbpsi/$(LIBDVBPSI_VERSION) +LIBDVBPSI_SOURCE = libdvbpsi-$(LIBDVBPSI_VERSION).tar.bz2 +LIBDVBPSI_LICENSE = LGPLv2.1+ +LIBDVBPSI_LICENSE_FILES = COPYING +LIBDVBPSI_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/libeXosip2/libeXosip2.mk b/package/libeXosip2/libeXosip2.mk index d7d0af817be..d101f954786 100644 --- a/package/libeXosip2/libeXosip2.mk +++ b/package/libeXosip2/libeXosip2.mk @@ -20,6 +20,10 @@ ifeq ($(BR2_arc),y) LIBEXOSIP2_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -U__arc__" endif +ifeq ($(BR2_PACKAGE_C_ARES),y) +LIBEXOSIP2_DEPENDENCIES += c-ares +endif + ifeq ($(BR2_PACKAGE_OPENSSL),y) LIBEXOSIP2_DEPENDENCIES += openssl LIBEXOSIP2_CONF_OPTS += --enable-openssl diff --git a/package/libedit/libedit.mk b/package/libedit/libedit.mk index 87a1cdc136d..e7ddd1fcb56 100644 --- a/package/libedit/libedit.mk +++ b/package/libedit/libedit.mk @@ -23,6 +23,12 @@ LIBEDIT_POST_EXTRACT_HOOKS += LIBEDIT_FIXUP_M4_DIR # Doesn't really support !wchar, but support is disabled otherwise LIBEDIT_CONF_OPTS += --enable-widec +# musl is ISO 10646 compliant but doesn't define __STDC_ISO_10646__, +# so let's define it manually +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +LIBEDIT_CONF_OPTS += CFLAGS="$(TARGET_CFLAGS) -D__STDC_ISO_10646__=201103L" +endif + # Note: libbsd required for *vis functions, but works only with a toolchain # with __progname; otherwise, some features are disabled, as if libbsd was # missing entirely. diff --git a/package/libev/libev.hash b/package/libev/libev.hash index 22524836f8e..7f029df7fa2 100644 --- a/package/libev/libev.hash +++ b/package/libev/libev.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 88fc5f89ca96ceca14c16c10e7be3e921dae65e84932d680c2fd6a40173edccb libev-4.19.tar.gz +sha256 736079e8ac543c74d59af73f9c52737b3bfec9601f020bf25a87a4f4d0f01bd6 libev-4.22.tar.gz diff --git a/package/libev/libev.mk b/package/libev/libev.mk index cde2ee03863..02bc72cba2c 100644 --- a/package/libev/libev.mk +++ b/package/libev/libev.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBEV_VERSION = 4.19 +LIBEV_VERSION = 4.22 LIBEV_SITE = http://dist.schmorp.de/libev LIBEV_INSTALL_STAGING = YES LIBEV_LICENSE = BSD-2c or GPLv2+ diff --git a/package/efl/libevas-generic-loaders/Config.in b/package/libevas-generic-loaders/Config.in similarity index 59% rename from package/efl/libevas-generic-loaders/Config.in rename to package/libevas-generic-loaders/Config.in index 3f7581fba18..c171d47193e 100644 --- a/package/efl/libevas-generic-loaders/Config.in +++ b/package/libevas-generic-loaders/Config.in @@ -1,29 +1,41 @@ config BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS bool "libevas generic loaders" - select BR2_PACKAGE_LIBEINA + depends on BR2_PACKAGE_EFL select BR2_PACKAGE_ZLIB help These are additional "generic" loaders for Evas that are stand-alone executables that evas may run from its generic loader module. - http://trac.enlightenment.org/e/wiki/Evas_Generic_Loaders + https://www.enlightenment.org/ if BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS +config BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_LIBRAW + bool "libraw loader" + depends on BR2_INSTALL_LIBSTDCPP # libraw + select BR2_PACKAGE_LIBRAW + help + This option enables the Evas generic Libraw loader + +comment "libraw loader needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP + config BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_SVG bool "SVG loader" - select BR2_PACKAGE_LIBRSVG - select BR2_PACKAGE_CAIRO + depends on BR2_USE_MMU # librsvg -> glib2 depends on BR2_USE_WCHAR # librsvg -> glib2 depends on BR2_TOOLCHAIN_HAS_THREADS # librsvg -> glib2 depends on BR2_INSTALL_LIBSTDCPP # librsvg -> pango - depends on BR2_ARCH_HAS_ATOMICS # cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # librsvg -> pango -> harfbuzz + select BR2_PACKAGE_LIBRSVG + select BR2_PACKAGE_CAIRO help This option enables the Evas generic SVG loader comment "SVG loader needs a toolchain w/ wchar, threads, C++" - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP endif diff --git a/package/libevas-generic-loaders/libevas-generic-loaders.hash b/package/libevas-generic-loaders/libevas-generic-loaders.hash new file mode 100644 index 00000000000..32723ba9b31 --- /dev/null +++ b/package/libevas-generic-loaders/libevas-generic-loaders.hash @@ -0,0 +1,2 @@ +# From https://download.enlightenment.org/rel/libs/evas_generic_loaders/evas_generic_loaders-1.15.0.tar.xz.sha256 +sha256 1e539e4d4d4e1590345caeb7fdd84f47ec7cd63bb76b6b7107a87420a401fd7f evas_generic_loaders-1.15.0.tar.xz diff --git a/package/efl/libevas-generic-loaders/libevas-generic-loaders.mk b/package/libevas-generic-loaders/libevas-generic-loaders.mk similarity index 63% rename from package/efl/libevas-generic-loaders/libevas-generic-loaders.mk rename to package/libevas-generic-loaders/libevas-generic-loaders.mk index 3f4e1b25773..ff8ea372ada 100644 --- a/package/efl/libevas-generic-loaders/libevas-generic-loaders.mk +++ b/package/libevas-generic-loaders/libevas-generic-loaders.mk @@ -4,23 +4,30 @@ # ################################################################################ -LIBEVAS_GENERIC_LOADERS_VERSION = $(EFL_VERSION) -LIBEVAS_GENERIC_LOADERS_SOURCE = evas_generic_loaders-$(LIBEVAS_GENERIC_LOADERS_VERSION).tar.bz2 -LIBEVAS_GENERIC_LOADERS_SITE = http://download.enlightenment.org/releases +LIBEVAS_GENERIC_LOADERS_VERSION = 1.15.0 +LIBEVAS_GENERIC_LOADERS_SOURCE = evas_generic_loaders-$(LIBEVAS_GENERIC_LOADERS_VERSION).tar.xz +LIBEVAS_GENERIC_LOADERS_SITE = http://download.enlightenment.org/rel/libs/evas_generic_loaders LIBEVAS_GENERIC_LOADERS_LICENSE = GPLv2 LIBEVAS_GENERIC_LOADERS_LICENSE_FILES = COPYING LIBEVAS_GENERIC_LOADERS_INSTALL_STAGING = YES -LIBEVAS_GENERIC_LOADERS_DEPENDENCIES = libeina zlib +LIBEVAS_GENERIC_LOADERS_DEPENDENCIES = host-pkgconf efl zlib -# For now, we only support the SVG loader +# poppler >= 0.32 is not supported by the current version of +# libevas-generic-loaders. LIBEVAS_GENERIC_LOADERS_CONF_OPTS += \ --disable-poppler \ --disable-spectre \ - --disable-libraw \ --disable-gstreamer +ifeq ($(BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_LIBRAW),y) +LIBEVAS_GENERIC_LOADERS_DEPENDENCIES += libraw +LIBEVAS_GENERIC_LOADERS_CONF_OPTS += --enable-libraw +else +LIBEVAS_GENERIC_LOADERS_CONF_OPTS += --disable-libraw +endif + ifeq ($(BR2_PACKAGE_LIBEVAS_GENERIC_LOADERS_SVG),y) LIBEVAS_GENERIC_LOADERS_DEPENDENCIES += librsvg cairo LIBEVAS_GENERIC_LOADERS_CONF_OPTS += --enable-svg diff --git a/package/libevdev/0001-configure-add-disable-runtime-tests-option.patch b/package/libevdev/0001-configure-add-disable-runtime-tests-option.patch new file mode 100644 index 00000000000..405dff0e5ad --- /dev/null +++ b/package/libevdev/0001-configure-add-disable-runtime-tests-option.patch @@ -0,0 +1,42 @@ +From 95527e43845a5063a6125d7779a30d44c3b437ac Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Sun, 11 Oct 2015 13:33:19 +0200 +Subject: [PATCH] configure: add '--disable-runtime-tests' option + +Signed-off-by: Peter Seiderer +--- + configure.ac | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 54a2510..286737b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -74,7 +74,14 @@ else + AC_MSG_WARN([check not found - skipping building unit tests]) + fi + AM_CONDITIONAL(HAVE_VALGRIND, [test "x$VALGRIND" != "x"]) +-AM_CONDITIONAL(ENABLE_RUNTIME_TESTS, [test "x$HAVE_CHECK" = "xyes"]) ++ ++AC_ARG_ENABLE([runtime-tests], ++ AS_HELP_STRING([--disable-runtime-tests], [Disable runtime tests])) ++AS_IF([test "x$enable_runtime_tests" != "xno"], ++ [enable_runtime_tests=yes], ++ [enable_runtime_tests=no]) ++ ++AM_CONDITIONAL(ENABLE_RUNTIME_TESTS, [test "x${enable_runtime_tests}x$HAVE_CHECK" = "xyesxyes"]) + AM_CONDITIONAL(ENABLE_STATIC_LINK_TEST, [test "x$enable_static" = "xyes"]) + + with_cflags="" +@@ -159,7 +166,7 @@ AC_MSG_RESULT([ + Libdir ${libdir} + + Build documentation ${have_doxygen} +- Enable unit-tests ${HAVE_CHECK} ++ Enable unit-tests ${HAVE_CHECK} (runtime-tests: ${enable_runtime_tests}) + Enable profiling ${enable_gcov} + Static library symbol check ${static_symbol_leaks_test} + ]) +-- +2.1.4 + diff --git a/package/libevdev/libevdev.hash b/package/libevdev/libevdev.hash index 1b7897dcb1f..20ca4fbecbb 100644 --- a/package/libevdev/libevdev.hash +++ b/package/libevdev/libevdev.hash @@ -1,2 +1,2 @@ -# Hash from http://lists.freedesktop.org/archives/input-tools/2015-June/001171.html -sha256 1c418b26fd78b0e9900872be2f77fb5311c877b34ec5c75efd1b670ed627969b libevdev-1.4.3.tar.xz +# Hash from http://lists.freedesktop.org/archives/input-tools/2016-January/001240.html +sha256 7b2ae1a0c7f9f7a96198ddc8fd167f090f233d6cbd8168b847e4f968445132d3 libevdev-1.4.6.tar.xz diff --git a/package/libevdev/libevdev.mk b/package/libevdev/libevdev.mk index 082a7ccf0e7..5513191a068 100644 --- a/package/libevdev/libevdev.mk +++ b/package/libevdev/libevdev.mk @@ -4,15 +4,20 @@ # ################################################################################ -LIBEVDEV_VERSION = 1.4.3 +LIBEVDEV_VERSION = 1.4.6 LIBEVDEV_SITE = http://www.freedesktop.org/software/libevdev LIBEVDEV_SOURCE = libevdev-$(LIBEVDEV_VERSION).tar.xz LIBEVDEV_LICENSE = X11 LIBEVDEV_LICENSE_FILES = COPYING +# patch touches configure.ac +LIBEVDEV_AUTORECONF = YES + # Uses PKG_CHECK_MODULES() in configure.ac LIBEVDEV_DEPENDENCIES = host-pkgconf LIBEVDEV_INSTALL_STAGING = YES +LIBEVDEV_CONF_OPTS += --disable-runtime-tests + $(eval $(autotools-package)) diff --git a/package/libevent/Config.in b/package/libevent/Config.in index 680fa48571f..c32f29e5b02 100644 --- a/package/libevent/Config.in +++ b/package/libevent/Config.in @@ -3,4 +3,4 @@ config BR2_PACKAGE_LIBEVENT help Userspace library for handling asynchronous notifications - http://monkey.org/~provos/ + http://libevent.org diff --git a/package/libevent/libevent.mk b/package/libevent/libevent.mk index d67c73833bf..820beea9c54 100644 --- a/package/libevent/libevent.mk +++ b/package/libevent/libevent.mk @@ -4,9 +4,8 @@ # ################################################################################ -LIBEVENT_VERSION_MAJOR = 2.0 -LIBEVENT_VERSION = $(LIBEVENT_VERSION_MAJOR).22-stable -LIBEVENT_SITE = http://downloads.sourceforge.net/project/levent/libevent/libevent-$(LIBEVENT_VERSION_MAJOR) +LIBEVENT_VERSION = 2.0.22-stable +LIBEVENT_SITE = https://github.com/libevent/libevent/releases/download/release-$(LIBEVENT_VERSION) LIBEVENT_INSTALL_STAGING = YES LIBEVENT_LICENSE = BSD-3c, OpenBSD LIBEVENT_LICENSE_FILES = LICENSE diff --git a/package/libfcgi/0006-fix-CVE-2012-6687.patch b/package/libfcgi/0006-fix-CVE-2012-6687.patch new file mode 100644 index 00000000000..10d33ed58d5 --- /dev/null +++ b/package/libfcgi/0006-fix-CVE-2012-6687.patch @@ -0,0 +1,104 @@ +libfcgi:add security patch for CVE-2012-6687 +CVE-2012-6687 - remote attackers cause a denial of service (crash) via a large number +of connections (http://www.cvedetails.com/cve/CVE-2012-6687/). +Fix:use poll in os_unix.c instead of select to avoid problem with > 1024 connections. +This patch libfcgi_2.4.0-8.3.debian.tar.xz is pulled from the below link: +(https://launchpad.net/ubuntu/+source/libfcgi/2.4.0-8.3) +The next release of libfcgi is 2.4.1 which may have this fix is yet to be released +officially. + +Signed-off-by: Anton Kortunov +Signed-off-by: Niranjan Reddy + +Index: b/libfcgi/os_unix.c +=================================================================== +--- a/libfcgi/os_unix.c ++++ b/libfcgi/os_unix.c +@@ -42,6 +42,7 @@ + #include + #include + #include ++#include + + #ifdef HAVE_NETDB_H + #include +@@ -103,6 +104,9 @@ + static int shutdownPending = FALSE; + static int shutdownNow = FALSE; + ++static int libfcgiOsClosePollTimeout = 2000; ++static int libfcgiIsAfUnixKeeperPollTimeout = 2000; ++ + void OS_ShutdownPending() + { + shutdownPending = TRUE; +@@ -168,6 +172,16 @@ + if(libInitialized) + return 0; + ++ char *libfcgiOsClosePollTimeoutStr = getenv( "LIBFCGI_OS_CLOSE_POLL_TIMEOUT" ); ++ if(libfcgiOsClosePollTimeoutStr) { ++ libfcgiOsClosePollTimeout = atoi(libfcgiOsClosePollTimeoutStr); ++ } ++ ++ char *libfcgiIsAfUnixKeeperPollTimeoutStr = getenv( "LIBFCGI_IS_AF_UNIX_KEEPER_POLL_TIMEOUT" ); ++ if(libfcgiIsAfUnixKeeperPollTimeoutStr) { ++ libfcgiIsAfUnixKeeperPollTimeout = atoi(libfcgiIsAfUnixKeeperPollTimeoutStr); ++ } ++ + asyncIoTable = (AioInfo *)malloc(asyncIoTableSize * sizeof(AioInfo)); + if(asyncIoTable == NULL) { + errno = ENOMEM; +@@ -755,19 +769,16 @@ + + if (shutdown(fd, 1) == 0) + { +- struct timeval tv; +- fd_set rfds; ++ struct pollfd pfd; + int rv; + char trash[1024]; + +- FD_ZERO(&rfds); ++ pfd.fd = fd; ++ pfd.events = POLLIN; + + do + { +- FD_SET(fd, &rfds); +- tv.tv_sec = 2; +- tv.tv_usec = 0; +- rv = select(fd + 1, &rfds, NULL, NULL, &tv); ++ rv = poll(&pfd, 1, libfcgiOsClosePollTimeout); + } + while (rv > 0 && read(fd, trash, sizeof(trash)) > 0); + } +@@ -1116,13 +1127,11 @@ + */ + static int is_af_unix_keeper(const int fd) + { +- struct timeval tval = { READABLE_UNIX_FD_DROP_DEAD_TIMEVAL }; +- fd_set read_fds; +- +- FD_ZERO(&read_fds); +- FD_SET(fd, &read_fds); ++ struct pollfd pfd; ++ pfd.fd = fd; ++ pfd.events = POLLIN; + +- return select(fd + 1, &read_fds, NULL, NULL, &tval) >= 0 && FD_ISSET(fd, &read_fds); ++ return poll(&pfd, 1, libfcgiIsAfUnixKeeperPollTimeout) >= 0 && (pfd.revents & POLLIN); + } + + /* + +Index: b/examples/Makefile.am +=================================================================== +--- a/examples/Makefile.am ++++ b/examples/Makefile.am +@@ -34,5 +34,5 @@ threaded_CFLAGS = @PTHREAD_CFLAGS@ + threaded_LDFLAGS = @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ + + echo_cpp_SOURCES = $(INCLUDE_FILES) $(INCLUDEDIR)/fcgio.h echo-cpp.cpp +-echo_cpp_LDADD = $(LIBDIR)/libfcgi++.la ++echo_cpp_LDADD = $(LIBDIR)/libfcgi++.la $(LIBDIR)/libfcgi.la diff --git a/package/libffi/0001-Fix-installation-location-of-libffi.patch b/package/libffi/0001-Fix-installation-location-of-libffi.patch index 56e08f73634..6ac91237303 100644 --- a/package/libffi/0001-Fix-installation-location-of-libffi.patch +++ b/package/libffi/0001-Fix-installation-location-of-libffi.patch @@ -1,7 +1,10 @@ -From 102c02de867bfe831b5366c89d66bcf170db962e Mon Sep 17 00:00:00 2001 +From 580f46a7bc6e9fea3a2227b5268cc3aed1d60e3b Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Thu, 7 Feb 2013 22:26:56 +0100 Subject: [PATCH] Fix installation location of libffi +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit The libffi is currently declared as toolexeclib_LTLIBRARIES. In many cases, toolexeclib libraries will be installed in /usr/lib, so it @@ -28,15 +31,17 @@ the more standard lib_LTLIBRARIES, which ensures that the libffi library is always installed in /usr/lib. Signed-off-by: Thomas Petazzoni +[unfuzz for 3.2.1] +Signed-off-by: Jörg Krause --- - Makefile.am | 2 +- + Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.am b/Makefile.am -index 6f669ca..b60bcc1 100644 +index 0e40451..309474c 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -93,7 +93,7 @@ FLAGS_TO_PASS = $(AM_MAKEFLAGS) +@@ -104,7 +104,7 @@ FLAGS_TO_PASS = $(AM_MAKEFLAGS) MAKEOVERRIDES= @@ -46,5 +51,5 @@ index 6f669ca..b60bcc1 100644 libffi_la_SOURCES = src/prep_cif.c src/types.c \ -- -1.7.9.5 +2.5.3 diff --git a/package/libffi/0002-Fix-use-of-compact-eh-frames-on-MIPS.patch b/package/libffi/0002-Fix-use-of-compact-eh-frames-on-MIPS.patch index 15d1c96ea75..c19e395f900 100644 --- a/package/libffi/0002-Fix-use-of-compact-eh-frames-on-MIPS.patch +++ b/package/libffi/0002-Fix-use-of-compact-eh-frames-on-MIPS.patch @@ -1,3 +1,11 @@ +From 31b6b6bc14197cd4183bdbd311fddeb36b5ae100 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Sat, 19 Sep 2015 22:53:29 +0200 +Subject: [PATCH] Fix use of compact eh frames on MIPS +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + Newer MIPS toolchains use a different (compact) eh_frame format. libffi don't like them, so we have to switch to the older format. @@ -5,10 +13,17 @@ This patch add -mno-compact-eh to CFLAGS when compiling for Mips and compiler support it. Signed-off-by: Jérôme Pouiller +[unfuzz for 3.2.1] +Signed-off-by: Jörg Krause +--- + configure.ac | 10 ++++++++++ + 1 file changed, 10 insertions(+) ---- a/configure.ac 2013-08-08 14:53:11.884267155 +0200 -+++ b/configure.ac 2013-08-08 14:54:14.437493244 +0200 -@@ -430,6 +430,16 @@ +diff --git a/configure.ac b/configure.ac +index a7bf5ee..36cd0d4 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -469,6 +469,16 @@ esac AM_CONDITIONAL(FFI_EXEC_TRAMPOLINE_TABLE, test x$FFI_EXEC_TRAMPOLINE_TABLE = x1) AC_SUBST(FFI_EXEC_TRAMPOLINE_TABLE) @@ -23,5 +38,8 @@ Signed-off-by: Jérôme Pouiller +fi + if test x$TARGET = xX86_64; then - AC_CACHE_CHECK([assembler supports unwind section type], + AC_CACHE_CHECK([toolchain supports unwind section type], libffi_cv_as_x86_64_unwind_section_type, [ +-- +2.5.3 + diff --git a/package/libffi/0003-fix-typo.patch b/package/libffi/0003-fix-typo.patch deleted file mode 100644 index f20804bf8bd..00000000000 --- a/package/libffi/0003-fix-typo.patch +++ /dev/null @@ -1,41 +0,0 @@ -From cbc5a3c0200aa6c2cf8d6798d69a21501557c83f Mon Sep 17 00:00:00 2001 -From: Ryan Hill -Date: Sat, 31 May 2014 08:26:34 -0400 -Subject: [PATCH 05/10] Fix typo - -This patch was borrowed from upstream, commit -cbc5a3c0200aa6c2cf8d6798d69a21501557c83f, and will be part of the next -3.1.1 release. - -Signed-off-by: Thomas Petazzoni ---- - include/ffi.h.in | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/include/ffi.h.in b/include/ffi.h.in -index 93c776f..70c6179 100644 ---- a/include/ffi.h.in -+++ b/include/ffi.h.in -@@ -1,5 +1,5 @@ - /* -----------------------------------------------------------------*-C-*- -- libffi @VERSION@ - Copyright (c) 2011 Anthony Green -+ libffi @VERSION@ - Copyright (c) 2011, 2014 Anthony Green - - Copyright (c) 1996-2003, 2007, 2008 Red Hat, Inc. - - Permission is hereby granted, free of charge, to any person -@@ -221,10 +221,10 @@ typedef struct { - #endif - } ffi_cif; - --#if HAVE_LONG_DOUBLE_VARIANT -+#if @HAVE_LONG_DOUBLE_VARIANT@ - /* Used to adjust size/alignment of ffi types. */ - void ffi_prep_types (ffi_abi abi); --# endif -+#endif - - /* Used internally, but overridden by some architectures */ - ffi_status ffi_prep_cif_core(ffi_cif *cif, --- -2.0.0 - diff --git a/package/libffi/0003-libffi-enable-hardfloat-in-the-MIPS-assembly-code.patch b/package/libffi/0003-libffi-enable-hardfloat-in-the-MIPS-assembly-code.patch new file mode 100644 index 00000000000..776990df65a --- /dev/null +++ b/package/libffi/0003-libffi-enable-hardfloat-in-the-MIPS-assembly-code.patch @@ -0,0 +1,41 @@ +From 48bc37fabbc685b1e3293055bd33ca66c619305e Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Wed, 13 Jan 2016 14:49:59 +0000 +Subject: [PATCH] libffi: enable hardfloat in the MIPS assembly code + +This way it will be possible to build it for soft-float. This is only a +temporary fix. The package needs to be fixed properly. + +Signed-off-by: Vicente Olivert Riera +--- + src/mips/n32.S | 1 + + src/mips/o32.S | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/src/mips/n32.S b/src/mips/n32.S +index c6985d3..dc842d5 100644 +--- a/src/mips/n32.S ++++ b/src/mips/n32.S +@@ -44,6 +44,7 @@ + .abicalls + #endif + .set mips4 ++ .set hardfloat + .text + .align 2 + .globl ffi_call_N32 +diff --git a/src/mips/o32.S b/src/mips/o32.S +index eb27981..b653daf 100644 +--- a/src/mips/o32.S ++++ b/src/mips/o32.S +@@ -42,6 +42,7 @@ + #define RA_OFF (SIZEOF_FRAME - 1 * FFI_SIZEOF_ARG) + + .abicalls ++ .set hardfloat + .text + .align 2 + .globl ffi_call_O32 +-- +2.4.10 + diff --git a/package/libffi/0004-Add-missing-GNU-stack-markings-in-win32.S.patch b/package/libffi/0004-Add-missing-GNU-stack-markings-in-win32.S.patch deleted file mode 100644 index 6097287a0d7..00000000000 --- a/package/libffi/0004-Add-missing-GNU-stack-markings-in-win32.S.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 978c9540154d320525488db1b7049277122f736d Mon Sep 17 00:00:00 2001 -From: Samuli Suominen -Date: Sat, 31 May 2014 08:53:10 -0400 -Subject: [PATCH 06/10] Add missing GNU stack markings in win32.S - -This patch was borrowed from upstream, commit -978c9540154d320525488db1b7049277122f736d, and will be part of the next -3.1.1 release. - -Signed-off-by: Thomas Petazzoni ---- - src/x86/win32.S | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/src/x86/win32.S b/src/x86/win32.S -index daf0e79..e42baf2 100644 ---- a/src/x86/win32.S -+++ b/src/x86/win32.S -@@ -1,5 +1,6 @@ - /* ----------------------------------------------------------------------- -- win32.S - Copyright (c) 1996, 1998, 2001, 2002, 2009 Red Hat, Inc. -+ win32.S - Copyright (c) 2014 Anthony Green -+ Copyright (c) 1996, 1998, 2001, 2002, 2009 Red Hat, Inc. - Copyright (c) 2001 John Beniton - Copyright (c) 2002 Ranjit Mathew - Copyright (c) 2009 Daniel Witte -@@ -1304,3 +1305,6 @@ L_ffi_closure_SYSV_inner$stub: - - #endif /* !_MSC_VER */ - -+#if defined __ELF__ && defined __linux__ -+ .section .note.GNU-stack,"",@progbits -+#endif --- -2.0.0 - diff --git a/package/libffi/0005-Fix-paths-in-libffi.pc.in.patch b/package/libffi/0005-Fix-paths-in-libffi.pc.in.patch deleted file mode 100644 index fd110a6d587..00000000000 --- a/package/libffi/0005-Fix-paths-in-libffi.pc.in.patch +++ /dev/null @@ -1,46 +0,0 @@ -From ad0d1d239afc7ad09203847793dcc020856d1035 Mon Sep 17 00:00:00 2001 -From: Samuli Suominen -Date: Thu, 12 Jun 2014 06:30:21 -0400 -Subject: [PATCH 09/10] Fix paths in libffi.pc.in - -This patch was borrowed from upstream, commit -ad0d1d239afc7ad09203847793dcc020856d1035, and will be part of the next -3.1.1 release. - -Signed-off-by: Thomas Petazzoni ---- - configure.ac | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 4f7fe3f..bbc1a9d 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -590,11 +590,11 @@ AC_ARG_ENABLE(purify-safety, - if test "x$GCC" = "xyes"; then - if test -n "$with_cross_host" && - test x"$with_cross_host" != x"no"; then -- toolexecdir='$(exec_prefix)/$(target_alias)' -- toolexeclibdir='$(toolexecdir)/lib' -+ toolexecdir="${exec_prefix}"/'$(target_alias)' -+ toolexeclibdir="${toolexecdir}"/lib - else -- toolexecdir='$(libdir)/gcc-lib/$(target_alias)' -- toolexeclibdir='$(libdir)' -+ toolexecdir="${libdir}"/gcc-lib/'$(target_alias)' -+ toolexeclibdir="${libdir}" - fi - multi_os_directory=`$CC $CFLAGS -print-multi-os-directory` - case $multi_os_directory in -@@ -603,7 +603,7 @@ if test "x$GCC" = "xyes"; then - esac - AC_SUBST(toolexecdir) - else -- toolexeclibdir='$(libdir)' -+ toolexeclibdir="${libdir}" - fi - AC_SUBST(toolexeclibdir) - --- -2.0.0 - diff --git a/package/libffi/libffi.hash b/package/libffi/libffi.hash index 4c25fd3d752..63a9203f9bf 100644 --- a/package/libffi/libffi.hash +++ b/package/libffi/libffi.hash @@ -1,2 +1,2 @@ # From ftp://sourceware.org/pub/libffi/sha512.sum -sha512 8994973d75facf5ad928c270e17b1a56e24d1543af75b93731a0048e747df27e4190a736b6dc2dca7d43de1d7e88891220304802c10fcccdcebee9c9ffd3d1b9 libffi-3.1.tar.gz +sha512 980ca30a8d76f963fca722432b1fe5af77d7a4e4d2eac5144fbc5374d4c596609a293440573f4294207e1bdd9fda80ad1e1cafb2ffb543df5a275bc3bd546483 libffi-3.2.1.tar.gz diff --git a/package/libffi/libffi.mk b/package/libffi/libffi.mk index 5644c1e2da3..38ef2d60d08 100644 --- a/package/libffi/libffi.mk +++ b/package/libffi/libffi.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBFFI_VERSION = 3.1 +LIBFFI_VERSION = 3.2.1 LIBFFI_SITE = ftp://sourceware.org/pub/libffi LIBFFI_LICENSE = MIT LIBFFI_LICENSE_FILES = LICENSE @@ -13,15 +13,19 @@ LIBFFI_AUTORECONF = YES # Move the headers to the usual location, and adjust the .pc file # accordingly. -define LIBFFI_MOVE_STAGING_HEADERS - mv $(STAGING_DIR)/usr/lib/libffi-$(LIBFFI_VERSION)/include/*.h $(STAGING_DIR)/usr/include/ +define LIBFFI_MOVE_HEADERS + mv $(1)/usr/lib/libffi-$(LIBFFI_VERSION)/include/*.h $(1)/usr/include/ $(SED) '/^includedir.*/d' -e '/^Cflags:.*/d' \ - $(STAGING_DIR)/usr/lib/pkgconfig/libffi.pc - rm -rf $(TARGET_DIR)/usr/lib/libffi-* + $(1)/usr/lib/pkgconfig/libffi.pc + rm -rf $(1)/usr/lib/libffi-* endef +LIBFFI_MOVE_STAGING_HEADERS = $(call LIBFFI_MOVE_HEADERS,$(STAGING_DIR)) LIBFFI_POST_INSTALL_STAGING_HOOKS += LIBFFI_MOVE_STAGING_HEADERS +HOST_LIBFFI_MOVE_HOST_HEADERS = $(call LIBFFI_MOVE_HEADERS,$(HOST_DIR)) +HOST_LIBFFI_POST_INSTALL_HOOKS += HOST_LIBFFI_MOVE_HOST_HEADERS + # Remove headers that are not at the usual location from the target define LIBFFI_REMOVE_TARGET_HEADERS $(RM) -rf $(TARGET_DIR)/usr/lib/libffi-$(LIBFFI_VERSION) diff --git a/package/libfm/Config.in b/package/libfm/Config.in index c6cfcf6d488..603b4d51ee6 100644 --- a/package/libfm/Config.in +++ b/package/libfm/Config.in @@ -9,7 +9,7 @@ config BR2_PACKAGE_LIBFM depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_USE_MMU # libglib2 depends on BR2_INSTALL_LIBSTDCPP # libgtk2 - depends on BR2_ARCH_HAS_ATOMICS # libgtk2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk2 -> pango -> harfbuzz help A glib/gio-based library providing some file management utilities and related-widgets missing in gtk+/glib. This is @@ -23,6 +23,6 @@ config BR2_PACKAGE_LIBFM comment "libfm needs X.org and a toolchain w/ wchar, threads, C++" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_XORG7 diff --git a/package/libfm/libfm.mk b/package/libfm/libfm.mk index f0888b7e276..e8410d0288d 100644 --- a/package/libfm/libfm.mk +++ b/package/libfm/libfm.mk @@ -12,4 +12,11 @@ LIBFM_LICENSE = GPLv2+, LGPLv2.1+ LIBFM_LICENSE_FILES = COPYING src/extra/fm-xml-file.c LIBFM_INSTALL_STAGING = YES +ifeq ($(BR2_PACKAGE_LIBEXIF),y) +LIBFM_CONF_OPTS += --enable-exif +LIBFM_DEPENDENCIES += libexif +else +LIBFM_CONF_OPTS += --disable-exif +endif + $(eval $(autotools-package)) diff --git a/package/libfreeglut/Config.in b/package/libfreeglut/Config.in new file mode 100644 index 00000000000..e09e7efe899 --- /dev/null +++ b/package/libfreeglut/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_LIBFREEGLUT + bool "libfreeglut" + select BR2_PACKAGE_LIBGLU + select BR2_PACKAGE_XLIB_LIBXI + select BR2_PACKAGE_XLIB_LIBXRANDR + select BR2_PACKAGE_XLIB_LIBXXF86VM + depends on BR2_PACKAGE_HAS_LIBGL + depends on BR2_PACKAGE_XORG7 + help + FreeGLUT is a free-software/open-source alternative to the + OpenGL Utility Toolkit (GLUT) library. GLUT (and hence + FreeGLUT) takes care of all the system-specific chores required + for creating windows, initializing OpenGL contexts, and + handling input events, to allow for trully portable OpenGL + programs. + + http://freeglut.sourceforge.net + +comment "libfreeglut depends on X.org and needs an OpenGL backend" + depends on !BR2_PACKAGE_XORG7 || !BR2_PACKAGE_HAS_LIBGL diff --git a/package/libfreeglut/libfreeglut.hash b/package/libfreeglut/libfreeglut.hash new file mode 100644 index 00000000000..a69a0b41d1d --- /dev/null +++ b/package/libfreeglut/libfreeglut.hash @@ -0,0 +1,2 @@ +# From http://sourceforge.net/projects/freeglut/files/freeglut/3.0.0/ +sha1 fca52242f9344627a30f11487ee42002e6b0dacd freeglut-3.0.0.tar.gz diff --git a/package/libfreeglut/libfreeglut.mk b/package/libfreeglut/libfreeglut.mk new file mode 100644 index 00000000000..507cb523ab8 --- /dev/null +++ b/package/libfreeglut/libfreeglut.mk @@ -0,0 +1,33 @@ +################################################################################ +# +# libfreeglut +# +################################################################################ + +LIBFREEGLUT_VERSION = 3.0.0 +LIBFREEGLUT_SOURCE = freeglut-$(LIBFREEGLUT_VERSION).tar.gz +LIBFREEGLUT_SITE = http://downloads.sourceforge.net/freeglut +LIBFREEGLUT_LICENSE = MIT +LIBFREEGLUT_LICENSE_FILES = COPYING +LIBFREEGLUT_INSTALL_STAGING = YES +LIBFREEGLUT_DEPENDENCIES = \ + libgl \ + libglu \ + xlib_libXi \ + xlib_libXrandr \ + xlib_libXxf86vm + +LIBFREEGLUT_CONF_OPTS = -DFREEGLUT_BUILD_DEMOS=OFF + +# package depends on X.org which depends on !BR2_STATIC_LIBS +ifeq ($(BR2_SHARED_LIBS),y) +LIBFREEGLUT_CONF_OPTS += \ + -DFREEGLUT_BUILD_SHARED_LIBS=ON \ + -DFREEGLUT_BUILD_STATIC_LIBS=OFF +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) +LIBFREEGLUT_CONF_OPTS += \ + -DFREEGLUT_BUILD_SHARED_LIBS=ON \ + -DFREEGLUT_BUILD_STATIC_LIBS=ON +endif + +$(eval $(cmake-package)) diff --git a/package/libfreeimage/0003-LibWebP-fix-compilation-issue-with-GCC-5.x-C-11.patch b/package/libfreeimage/0003-LibWebP-fix-compilation-issue-with-GCC-5.x-C-11.patch new file mode 100644 index 00000000000..6964827cca1 --- /dev/null +++ b/package/libfreeimage/0003-LibWebP-fix-compilation-issue-with-GCC-5.x-C-11.patch @@ -0,0 +1,1172 @@ +From 44bce1b66c1cdd5308ac3ac773ea0a53d83790fd Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Tue, 24 Nov 2015 21:16:39 +0100 +Subject: [PATCH] LibWebP: fix compilation issue with GCC 5.x / C++11 + +GCC 5.1 / C++11 gets confused about the "#" in the inline assembly +code, and dies with errors like: + +Source/LibWebP/./src/dsp/dsp.upsampling_mips_dsp_r2.c:37:34: error: invalid +character ' ' in raw string delimiter + +Fix it by introducting white space around the string literals like it has +been done in upstream webp: + +https://chromium.googlesource.com/webm/libwebp/+/eebaf97f5a1cb713d81d311308d8a48c124e5aef + +Discussed upstream: +http://sourceforge.net/p/freeimage/discussion/36110/thread/605ef8e4/ + +[Scripted by sed -i 's/"\(#[A-Z0-9]*\)"/" \1 "/g' *.c] +Signed-off-by: Peter Korsgaard +--- + Source/LibWebP/src/dsp/dsp.dec_mips_dsp_r2.c | 28 +- + Source/LibWebP/src/dsp/dsp.enc_mips32.c | 314 ++++++++++----------- + Source/LibWebP/src/dsp/dsp.enc_mips_dsp_r2.c | 288 +++++++++---------- + Source/LibWebP/src/dsp/dsp.filters_mips_dsp_r2.c | 10 +- + Source/LibWebP/src/dsp/dsp.lossless_mips32.c | 34 +-- + Source/LibWebP/src/dsp/dsp.lossless_mips_dsp_r2.c | 8 +- + .../LibWebP/src/dsp/dsp.upsampling_mips_dsp_r2.c | 18 +- + Source/LibWebP/src/dsp/dsp.yuv_mips_dsp_r2.c | 10 +- + 8 files changed, 355 insertions(+), 355 deletions(-) + +diff --git a/Source/LibWebP/src/dsp/dsp.dec_mips_dsp_r2.c b/Source/LibWebP/src/dsp/dsp.dec_mips_dsp_r2.c +index dac2c93..aaa8111 100644 +--- a/Source/LibWebP/src/dsp/dsp.dec_mips_dsp_r2.c ++++ b/Source/LibWebP/src/dsp/dsp.dec_mips_dsp_r2.c +@@ -548,10 +548,10 @@ static void SimpleVFilter16(uint8_t* p, int stride, int thresh) { + // TEMP3 = SRC[D + D1 * BPS] + #define LOAD_4_BYTES(TEMP0, TEMP1, TEMP2, TEMP3, \ + A, A1, B, B1, C, C1, D, D1, SRC) \ +- "lbu %["#TEMP0"], "#A"+"#A1"*"XSTR(BPS)"(%["#SRC"]) \n\t" \ +- "lbu %["#TEMP1"], "#B"+"#B1"*"XSTR(BPS)"(%["#SRC"]) \n\t" \ +- "lbu %["#TEMP2"], "#C"+"#C1"*"XSTR(BPS)"(%["#SRC"]) \n\t" \ +- "lbu %["#TEMP3"], "#D"+"#D1"*"XSTR(BPS)"(%["#SRC"]) \n\t" \ ++ "lbu %[" #TEMP0 "], " #A "+" #A1 "*"XSTR(BPS)"(%[" #SRC "]) \n\t" \ ++ "lbu %[" #TEMP1 "], " #B "+" #B1 "*"XSTR(BPS)"(%[" #SRC "]) \n\t" \ ++ "lbu %[" #TEMP2 "], " #C "+" #C1 "*"XSTR(BPS)"(%[" #SRC "]) \n\t" \ ++ "lbu %[" #TEMP3 "], " #D "+" #D1 "*"XSTR(BPS)"(%[" #SRC "]) \n\t" \ + + static void SimpleHFilter16(uint8_t* p, int stride, int thresh) { + int i; +@@ -623,8 +623,8 @@ static void SimpleHFilter16i(uint8_t* p, int stride, int thresh) { + // DST[A * BPS] = TEMP0 + // DST[B + C * BPS] = TEMP1 + #define STORE_8_BYTES(TEMP0, TEMP1, A, B, C, DST) \ +- "usw %["#TEMP0"], "#A"*"XSTR(BPS)"(%["#DST"]) \n\t" \ +- "usw %["#TEMP1"], "#B"+"#C"*"XSTR(BPS)"(%["#DST"]) \n\t" ++ "usw %[" #TEMP0 "], " #A "*"XSTR(BPS)"(%[" #DST "]) \n\t" \ ++ "usw %[" #TEMP1 "], " #B "+" #C "*"XSTR(BPS)"(%[" #DST "]) \n\t" + + static void VE4(uint8_t* dst) { // vertical + const uint8_t* top = dst - BPS; +@@ -725,8 +725,8 @@ static void RD4(uint8_t* dst) { // Down-right + // TEMP0 = SRC[A * BPS] + // TEMP1 = SRC[B + C * BPS] + #define LOAD_8_BYTES(TEMP0, TEMP1, A, B, C, SRC) \ +- "ulw %["#TEMP0"], "#A"*"XSTR(BPS)"(%["#SRC"]) \n\t" \ +- "ulw %["#TEMP1"], "#B"+"#C"*"XSTR(BPS)"(%["#SRC"]) \n\t" ++ "ulw %[" #TEMP0 "], " #A "*"XSTR(BPS)"(%[" #SRC "]) \n\t" \ ++ "ulw %[" #TEMP1 "], " #B "+" #C "*"XSTR(BPS)"(%[" #SRC "]) \n\t" + + static void LD4(uint8_t* dst) { // Down-Left + int temp0, temp1, temp2, temp3, temp4; +@@ -873,24 +873,24 @@ static void DC8uvNoTop(uint8_t* dst) { // DC with no top samples + #define CLIPPING(SIZE) \ + "preceu.ph.qbl %[temp2], %[temp0] \n\t" \ + "preceu.ph.qbr %[temp0], %[temp0] \n\t" \ +-".if "#SIZE" == 8 \n\t" \ ++".if " #SIZE " == 8 \n\t" \ + "preceu.ph.qbl %[temp3], %[temp1] \n\t" \ + "preceu.ph.qbr %[temp1], %[temp1] \n\t" \ + ".endif \n\t" \ + "addu.ph %[temp2], %[temp2], %[dst_1] \n\t" \ + "addu.ph %[temp0], %[temp0], %[dst_1] \n\t" \ +-".if "#SIZE" == 8 \n\t" \ ++".if " #SIZE " == 8 \n\t" \ + "addu.ph %[temp3], %[temp3], %[dst_1] \n\t" \ + "addu.ph %[temp1], %[temp1], %[dst_1] \n\t" \ + ".endif \n\t" \ + "shll_s.ph %[temp2], %[temp2], 7 \n\t" \ + "shll_s.ph %[temp0], %[temp0], 7 \n\t" \ +-".if "#SIZE" == 8 \n\t" \ ++".if " #SIZE " == 8 \n\t" \ + "shll_s.ph %[temp3], %[temp3], 7 \n\t" \ + "shll_s.ph %[temp1], %[temp1], 7 \n\t" \ + ".endif \n\t" \ + "precrqu_s.qb.ph %[temp0], %[temp2], %[temp0] \n\t" \ +-".if "#SIZE" == 8 \n\t" \ ++".if " #SIZE " == 8 \n\t" \ + "precrqu_s.qb.ph %[temp1], %[temp3], %[temp1] \n\t" \ + ".endif \n\t" + +@@ -899,7 +899,7 @@ static void DC8uvNoTop(uint8_t* dst) { // DC with no top samples + int dst_1 = ((int)(DST)[-1] << 16) + (DST)[-1]; \ + int temp0, temp1, temp2, temp3; \ + __asm__ volatile ( \ +- ".if "#SIZE" < 8 \n\t" \ ++ ".if " #SIZE " < 8 \n\t" \ + "ulw %[temp0], 0(%[top]) \n\t" \ + "subu.ph %[dst_1], %[dst_1], %[top_1] \n\t" \ + CLIPPING(4) \ +@@ -911,7 +911,7 @@ static void DC8uvNoTop(uint8_t* dst) { // DC with no top samples + CLIPPING(8) \ + "usw %[temp0], 0(%[dst]) \n\t" \ + "usw %[temp1], 4(%[dst]) \n\t" \ +- ".if "#SIZE" == 16 \n\t" \ ++ ".if " #SIZE " == 16 \n\t" \ + "ulw %[temp0], 8(%[top]) \n\t" \ + "ulw %[temp1], 12(%[top]) \n\t" \ + CLIPPING(8) \ +diff --git a/Source/LibWebP/src/dsp/dsp.enc_mips32.c b/Source/LibWebP/src/dsp/dsp.enc_mips32.c +index 545aa3a..bf1c16d 100644 +--- a/Source/LibWebP/src/dsp/dsp.enc_mips32.c ++++ b/Source/LibWebP/src/dsp/dsp.enc_mips32.c +@@ -31,26 +31,26 @@ static const int kC2 = 35468; + // TEMP0..TEMP3 - registers for corresponding tmp elements + // TEMP4..TEMP5 - temporary registers + #define VERTICAL_PASS(A, B, C, D, TEMP4, TEMP0, TEMP1, TEMP2, TEMP3) \ +- "lh %[temp16], "#A"(%[temp20]) \n\t" \ +- "lh %[temp18], "#B"(%[temp20]) \n\t" \ +- "lh %[temp17], "#C"(%[temp20]) \n\t" \ +- "lh %[temp19], "#D"(%[temp20]) \n\t" \ +- "addu %["#TEMP4"], %[temp16], %[temp18] \n\t" \ ++ "lh %[temp16], " #A "(%[temp20]) \n\t" \ ++ "lh %[temp18], " #B "(%[temp20]) \n\t" \ ++ "lh %[temp17], " #C "(%[temp20]) \n\t" \ ++ "lh %[temp19], " #D "(%[temp20]) \n\t" \ ++ "addu %[" #TEMP4 "], %[temp16], %[temp18] \n\t" \ + "subu %[temp16], %[temp16], %[temp18] \n\t" \ +- "mul %["#TEMP0"], %[temp17], %[kC2] \n\t" \ ++ "mul %[" #TEMP0 "], %[temp17], %[kC2] \n\t" \ + "mul %[temp18], %[temp19], %[kC1] \n\t" \ + "mul %[temp17], %[temp17], %[kC1] \n\t" \ + "mul %[temp19], %[temp19], %[kC2] \n\t" \ +- "sra %["#TEMP0"], %["#TEMP0"], 16 \n\n" \ ++ "sra %[" #TEMP0 "], %[" #TEMP0 "], 16 \n\n" \ + "sra %[temp18], %[temp18], 16 \n\n" \ + "sra %[temp17], %[temp17], 16 \n\n" \ + "sra %[temp19], %[temp19], 16 \n\n" \ +- "subu %["#TEMP2"], %["#TEMP0"], %[temp18] \n\t" \ +- "addu %["#TEMP3"], %[temp17], %[temp19] \n\t" \ +- "addu %["#TEMP0"], %["#TEMP4"], %["#TEMP3"] \n\t" \ +- "addu %["#TEMP1"], %[temp16], %["#TEMP2"] \n\t" \ +- "subu %["#TEMP2"], %[temp16], %["#TEMP2"] \n\t" \ +- "subu %["#TEMP3"], %["#TEMP4"], %["#TEMP3"] \n\t" ++ "subu %[" #TEMP2 "], %[" #TEMP0 "], %[temp18] \n\t" \ ++ "addu %[" #TEMP3 "], %[temp17], %[temp19] \n\t" \ ++ "addu %[" #TEMP0 "], %[" #TEMP4 "], %[" #TEMP3 "] \n\t" \ ++ "addu %[" #TEMP1 "], %[temp16], %[" #TEMP2 "] \n\t" \ ++ "subu %[" #TEMP2 "], %[temp16], %[" #TEMP2 "] \n\t" \ ++ "subu %[" #TEMP3 "], %[" #TEMP4 "], %[" #TEMP3 "] \n\t" + + // macro for one horizontal pass in ITransformOne + // MUL and STORE macros inlined +@@ -59,58 +59,58 @@ static const int kC2 = 35468; + // A - offset in bytes to load from ref and store to dst buffer + // TEMP0, TEMP4, TEMP8 and TEMP12 - registers for corresponding tmp elements + #define HORIZONTAL_PASS(A, TEMP0, TEMP4, TEMP8, TEMP12) \ +- "addiu %["#TEMP0"], %["#TEMP0"], 4 \n\t" \ +- "addu %[temp16], %["#TEMP0"], %["#TEMP8"] \n\t" \ +- "subu %[temp17], %["#TEMP0"], %["#TEMP8"] \n\t" \ +- "mul %["#TEMP0"], %["#TEMP4"], %[kC2] \n\t" \ +- "mul %["#TEMP8"], %["#TEMP12"], %[kC1] \n\t" \ +- "mul %["#TEMP4"], %["#TEMP4"], %[kC1] \n\t" \ +- "mul %["#TEMP12"], %["#TEMP12"], %[kC2] \n\t" \ +- "sra %["#TEMP0"], %["#TEMP0"], 16 \n\t" \ +- "sra %["#TEMP8"], %["#TEMP8"], 16 \n\t" \ +- "sra %["#TEMP4"], %["#TEMP4"], 16 \n\t" \ +- "sra %["#TEMP12"], %["#TEMP12"], 16 \n\t" \ +- "subu %[temp18], %["#TEMP0"], %["#TEMP8"] \n\t" \ +- "addu %[temp19], %["#TEMP4"], %["#TEMP12"] \n\t" \ +- "addu %["#TEMP0"], %[temp16], %[temp19] \n\t" \ +- "addu %["#TEMP4"], %[temp17], %[temp18] \n\t" \ +- "subu %["#TEMP8"], %[temp17], %[temp18] \n\t" \ +- "subu %["#TEMP12"], %[temp16], %[temp19] \n\t" \ ++ "addiu %[" #TEMP0 "], %[" #TEMP0 "], 4 \n\t" \ ++ "addu %[temp16], %[" #TEMP0 "], %[" #TEMP8 "] \n\t" \ ++ "subu %[temp17], %[" #TEMP0 "], %[" #TEMP8 "] \n\t" \ ++ "mul %[" #TEMP0 "], %[" #TEMP4 "], %[kC2] \n\t" \ ++ "mul %[" #TEMP8 "], %[" #TEMP12 "], %[kC1] \n\t" \ ++ "mul %[" #TEMP4 "], %[" #TEMP4 "], %[kC1] \n\t" \ ++ "mul %[" #TEMP12 "], %[" #TEMP12 "], %[kC2] \n\t" \ ++ "sra %[" #TEMP0 "], %[" #TEMP0 "], 16 \n\t" \ ++ "sra %[" #TEMP8 "], %[" #TEMP8 "], 16 \n\t" \ ++ "sra %[" #TEMP4 "], %[" #TEMP4 "], 16 \n\t" \ ++ "sra %[" #TEMP12 "], %[" #TEMP12 "], 16 \n\t" \ ++ "subu %[temp18], %[" #TEMP0 "], %[" #TEMP8 "] \n\t" \ ++ "addu %[temp19], %[" #TEMP4 "], %[" #TEMP12 "] \n\t" \ ++ "addu %[" #TEMP0 "], %[temp16], %[temp19] \n\t" \ ++ "addu %[" #TEMP4 "], %[temp17], %[temp18] \n\t" \ ++ "subu %[" #TEMP8 "], %[temp17], %[temp18] \n\t" \ ++ "subu %[" #TEMP12 "], %[temp16], %[temp19] \n\t" \ + "lw %[temp20], 0(%[args]) \n\t" \ +- "sra %["#TEMP0"], %["#TEMP0"], 3 \n\t" \ +- "sra %["#TEMP4"], %["#TEMP4"], 3 \n\t" \ +- "sra %["#TEMP8"], %["#TEMP8"], 3 \n\t" \ +- "sra %["#TEMP12"], %["#TEMP12"], 3 \n\t" \ +- "lbu %[temp16], 0+"XSTR(BPS)"*"#A"(%[temp20]) \n\t" \ +- "lbu %[temp17], 1+"XSTR(BPS)"*"#A"(%[temp20]) \n\t" \ +- "lbu %[temp18], 2+"XSTR(BPS)"*"#A"(%[temp20]) \n\t" \ +- "lbu %[temp19], 3+"XSTR(BPS)"*"#A"(%[temp20]) \n\t" \ +- "addu %["#TEMP0"], %[temp16], %["#TEMP0"] \n\t" \ +- "addu %["#TEMP4"], %[temp17], %["#TEMP4"] \n\t" \ +- "addu %["#TEMP8"], %[temp18], %["#TEMP8"] \n\t" \ +- "addu %["#TEMP12"], %[temp19], %["#TEMP12"] \n\t" \ +- "slt %[temp16], %["#TEMP0"], $zero \n\t" \ +- "slt %[temp17], %["#TEMP4"], $zero \n\t" \ +- "slt %[temp18], %["#TEMP8"], $zero \n\t" \ +- "slt %[temp19], %["#TEMP12"], $zero \n\t" \ +- "movn %["#TEMP0"], $zero, %[temp16] \n\t" \ +- "movn %["#TEMP4"], $zero, %[temp17] \n\t" \ +- "movn %["#TEMP8"], $zero, %[temp18] \n\t" \ +- "movn %["#TEMP12"], $zero, %[temp19] \n\t" \ ++ "sra %[" #TEMP0 "], %[" #TEMP0 "], 3 \n\t" \ ++ "sra %[" #TEMP4 "], %[" #TEMP4 "], 3 \n\t" \ ++ "sra %[" #TEMP8 "], %[" #TEMP8 "], 3 \n\t" \ ++ "sra %[" #TEMP12 "], %[" #TEMP12 "], 3 \n\t" \ ++ "lbu %[temp16], 0+"XSTR(BPS)"*" #A "(%[temp20]) \n\t" \ ++ "lbu %[temp17], 1+"XSTR(BPS)"*" #A "(%[temp20]) \n\t" \ ++ "lbu %[temp18], 2+"XSTR(BPS)"*" #A "(%[temp20]) \n\t" \ ++ "lbu %[temp19], 3+"XSTR(BPS)"*" #A "(%[temp20]) \n\t" \ ++ "addu %[" #TEMP0 "], %[temp16], %[" #TEMP0 "] \n\t" \ ++ "addu %[" #TEMP4 "], %[temp17], %[" #TEMP4 "] \n\t" \ ++ "addu %[" #TEMP8 "], %[temp18], %[" #TEMP8 "] \n\t" \ ++ "addu %[" #TEMP12 "], %[temp19], %[" #TEMP12 "] \n\t" \ ++ "slt %[temp16], %[" #TEMP0 "], $zero \n\t" \ ++ "slt %[temp17], %[" #TEMP4 "], $zero \n\t" \ ++ "slt %[temp18], %[" #TEMP8 "], $zero \n\t" \ ++ "slt %[temp19], %[" #TEMP12 "], $zero \n\t" \ ++ "movn %[" #TEMP0 "], $zero, %[temp16] \n\t" \ ++ "movn %[" #TEMP4 "], $zero, %[temp17] \n\t" \ ++ "movn %[" #TEMP8 "], $zero, %[temp18] \n\t" \ ++ "movn %[" #TEMP12 "], $zero, %[temp19] \n\t" \ + "addiu %[temp20], $zero, 255 \n\t" \ +- "slt %[temp16], %["#TEMP0"], %[temp20] \n\t" \ +- "slt %[temp17], %["#TEMP4"], %[temp20] \n\t" \ +- "slt %[temp18], %["#TEMP8"], %[temp20] \n\t" \ +- "slt %[temp19], %["#TEMP12"], %[temp20] \n\t" \ +- "movz %["#TEMP0"], %[temp20], %[temp16] \n\t" \ +- "movz %["#TEMP4"], %[temp20], %[temp17] \n\t" \ ++ "slt %[temp16], %[" #TEMP0 "], %[temp20] \n\t" \ ++ "slt %[temp17], %[" #TEMP4 "], %[temp20] \n\t" \ ++ "slt %[temp18], %[" #TEMP8 "], %[temp20] \n\t" \ ++ "slt %[temp19], %[" #TEMP12 "], %[temp20] \n\t" \ ++ "movz %[" #TEMP0 "], %[temp20], %[temp16] \n\t" \ ++ "movz %[" #TEMP4 "], %[temp20], %[temp17] \n\t" \ + "lw %[temp16], 8(%[args]) \n\t" \ +- "movz %["#TEMP8"], %[temp20], %[temp18] \n\t" \ +- "movz %["#TEMP12"], %[temp20], %[temp19] \n\t" \ +- "sb %["#TEMP0"], 0+"XSTR(BPS)"*"#A"(%[temp16]) \n\t" \ +- "sb %["#TEMP4"], 1+"XSTR(BPS)"*"#A"(%[temp16]) \n\t" \ +- "sb %["#TEMP8"], 2+"XSTR(BPS)"*"#A"(%[temp16]) \n\t" \ +- "sb %["#TEMP12"], 3+"XSTR(BPS)"*"#A"(%[temp16]) \n\t" ++ "movz %[" #TEMP8 "], %[temp20], %[temp18] \n\t" \ ++ "movz %[" #TEMP12 "], %[temp20], %[temp19] \n\t" \ ++ "sb %[" #TEMP0 "], 0+"XSTR(BPS)"*" #A "(%[temp16]) \n\t" \ ++ "sb %[" #TEMP4 "], 1+"XSTR(BPS)"*" #A "(%[temp16]) \n\t" \ ++ "sb %[" #TEMP8 "], 2+"XSTR(BPS)"*" #A "(%[temp16]) \n\t" \ ++ "sb %[" #TEMP12 "], 3+"XSTR(BPS)"*" #A "(%[temp16]) \n\t" + + // Does one or two inverse transforms. + static WEBP_INLINE void ITransformOne(const uint8_t* ref, const int16_t* in, +@@ -161,9 +161,9 @@ static void ITransform(const uint8_t* ref, const int16_t* in, + // K - offset in bytes (kZigzag[n] * 4) + // N - offset in bytes (n * 2) + #define QUANTIZE_ONE(J, K, N) \ +- "lh %[temp0], "#J"(%[ppin]) \n\t" \ +- "lhu %[temp1], "#J"(%[ppsharpen]) \n\t" \ +- "lw %[temp2], "#K"(%[ppzthresh]) \n\t" \ ++ "lh %[temp0], " #J "(%[ppin]) \n\t" \ ++ "lhu %[temp1], " #J "(%[ppsharpen]) \n\t" \ ++ "lw %[temp2], " #K "(%[ppzthresh]) \n\t" \ + "sra %[sign], %[temp0], 15 \n\t" \ + "xor %[coeff], %[temp0], %[sign] \n\t" \ + "subu %[coeff], %[coeff], %[sign] \n\t" \ +@@ -172,9 +172,9 @@ static void ITransform(const uint8_t* ref, const int16_t* in, + "addiu %[temp5], $zero, 0 \n\t" \ + "addiu %[level], $zero, 0 \n\t" \ + "beqz %[temp4], 2f \n\t" \ +- "lhu %[temp1], "#J"(%[ppiq]) \n\t" \ +- "lw %[temp2], "#K"(%[ppbias]) \n\t" \ +- "lhu %[temp3], "#J"(%[ppq]) \n\t" \ ++ "lhu %[temp1], " #J "(%[ppiq]) \n\t" \ ++ "lw %[temp2], " #K "(%[ppbias]) \n\t" \ ++ "lhu %[temp3], " #J "(%[ppq]) \n\t" \ + "mul %[level], %[coeff], %[temp1] \n\t" \ + "addu %[level], %[level], %[temp2] \n\t" \ + "sra %[level], %[level], 17 \n\t" \ +@@ -184,8 +184,8 @@ static void ITransform(const uint8_t* ref, const int16_t* in, + "subu %[level], %[level], %[sign] \n\t" \ + "mul %[temp5], %[level], %[temp3] \n\t" \ + "2: \n\t" \ +- "sh %[temp5], "#J"(%[ppin]) \n\t" \ +- "sh %[level], "#N"(%[pout]) \n\t" ++ "sh %[temp5], " #J "(%[ppin]) \n\t" \ ++ "sh %[level], " #N "(%[pout]) \n\t" + + static int QuantizeBlock(int16_t in[16], int16_t out[16], + const VP8Matrix* const mtx) { +@@ -254,14 +254,14 @@ static int Quantize2Blocks(int16_t in[32], int16_t out[32], + // E..H - offsets in bytes to store first results to tmp buffer + // E1..H1 - offsets in bytes to store second results to tmp buffer + #define HORIZONTAL_PASS(A, E, F, G, H, E1, F1, G1, H1) \ +- "lbu %[temp0], 0+"XSTR(BPS)"*"#A"(%[a]) \n\t" \ +- "lbu %[temp1], 1+"XSTR(BPS)"*"#A"(%[a]) \n\t" \ +- "lbu %[temp2], 2+"XSTR(BPS)"*"#A"(%[a]) \n\t" \ +- "lbu %[temp3], 3+"XSTR(BPS)"*"#A"(%[a]) \n\t" \ +- "lbu %[temp4], 0+"XSTR(BPS)"*"#A"(%[b]) \n\t" \ +- "lbu %[temp5], 1+"XSTR(BPS)"*"#A"(%[b]) \n\t" \ +- "lbu %[temp6], 2+"XSTR(BPS)"*"#A"(%[b]) \n\t" \ +- "lbu %[temp7], 3+"XSTR(BPS)"*"#A"(%[b]) \n\t" \ ++ "lbu %[temp0], 0+"XSTR(BPS)"*" #A "(%[a]) \n\t" \ ++ "lbu %[temp1], 1+"XSTR(BPS)"*" #A "(%[a]) \n\t" \ ++ "lbu %[temp2], 2+"XSTR(BPS)"*" #A "(%[a]) \n\t" \ ++ "lbu %[temp3], 3+"XSTR(BPS)"*" #A "(%[a]) \n\t" \ ++ "lbu %[temp4], 0+"XSTR(BPS)"*" #A "(%[b]) \n\t" \ ++ "lbu %[temp5], 1+"XSTR(BPS)"*" #A "(%[b]) \n\t" \ ++ "lbu %[temp6], 2+"XSTR(BPS)"*" #A "(%[b]) \n\t" \ ++ "lbu %[temp7], 3+"XSTR(BPS)"*" #A "(%[b]) \n\t" \ + "addu %[temp8], %[temp0], %[temp2] \n\t" \ + "subu %[temp0], %[temp0], %[temp2] \n\t" \ + "addu %[temp2], %[temp1], %[temp3] \n\t" \ +@@ -278,14 +278,14 @@ static int Quantize2Blocks(int16_t in[32], int16_t out[32], + "subu %[temp3], %[temp3], %[temp6] \n\t" \ + "addu %[temp6], %[temp4], %[temp5] \n\t" \ + "subu %[temp4], %[temp4], %[temp5] \n\t" \ +- "sw %[temp7], "#E"(%[tmp]) \n\t" \ +- "sw %[temp2], "#H"(%[tmp]) \n\t" \ +- "sw %[temp8], "#F"(%[tmp]) \n\t" \ +- "sw %[temp0], "#G"(%[tmp]) \n\t" \ +- "sw %[temp1], "#E1"(%[tmp]) \n\t" \ +- "sw %[temp3], "#H1"(%[tmp]) \n\t" \ +- "sw %[temp6], "#F1"(%[tmp]) \n\t" \ +- "sw %[temp4], "#G1"(%[tmp]) \n\t" ++ "sw %[temp7], " #E "(%[tmp]) \n\t" \ ++ "sw %[temp2], " #H "(%[tmp]) \n\t" \ ++ "sw %[temp8], " #F "(%[tmp]) \n\t" \ ++ "sw %[temp0], " #G "(%[tmp]) \n\t" \ ++ "sw %[temp1], " #E1 "(%[tmp]) \n\t" \ ++ "sw %[temp3], " #H1 "(%[tmp]) \n\t" \ ++ "sw %[temp6], " #F1 "(%[tmp]) \n\t" \ ++ "sw %[temp4], " #G1 "(%[tmp]) \n\t" + + // macro for one vertical pass in Disto4x4 (TTransform) + // two calls of function TTransform are merged into single one +@@ -300,10 +300,10 @@ static int Quantize2Blocks(int16_t in[32], int16_t out[32], + // A1..D1 - offsets in bytes to load second results from tmp buffer + // E..H - offsets in bytes to load from w buffer + #define VERTICAL_PASS(A, B, C, D, A1, B1, C1, D1, E, F, G, H) \ +- "lw %[temp0], "#A1"(%[tmp]) \n\t" \ +- "lw %[temp1], "#C1"(%[tmp]) \n\t" \ +- "lw %[temp2], "#B1"(%[tmp]) \n\t" \ +- "lw %[temp3], "#D1"(%[tmp]) \n\t" \ ++ "lw %[temp0], " #A1 "(%[tmp]) \n\t" \ ++ "lw %[temp1], " #C1 "(%[tmp]) \n\t" \ ++ "lw %[temp2], " #B1 "(%[tmp]) \n\t" \ ++ "lw %[temp3], " #D1 "(%[tmp]) \n\t" \ + "addu %[temp8], %[temp0], %[temp1] \n\t" \ + "subu %[temp0], %[temp0], %[temp1] \n\t" \ + "addu %[temp1], %[temp2], %[temp3] \n\t" \ +@@ -324,18 +324,18 @@ static int Quantize2Blocks(int16_t in[32], int16_t out[32], + "subu %[temp1], %[temp1], %[temp5] \n\t" \ + "subu %[temp0], %[temp0], %[temp6] \n\t" \ + "subu %[temp8], %[temp8], %[temp7] \n\t" \ +- "lhu %[temp4], "#E"(%[w]) \n\t" \ +- "lhu %[temp5], "#F"(%[w]) \n\t" \ +- "lhu %[temp6], "#G"(%[w]) \n\t" \ +- "lhu %[temp7], "#H"(%[w]) \n\t" \ ++ "lhu %[temp4], " #E "(%[w]) \n\t" \ ++ "lhu %[temp5], " #F "(%[w]) \n\t" \ ++ "lhu %[temp6], " #G "(%[w]) \n\t" \ ++ "lhu %[temp7], " #H "(%[w]) \n\t" \ + "madd %[temp4], %[temp3] \n\t" \ + "madd %[temp5], %[temp1] \n\t" \ + "madd %[temp6], %[temp0] \n\t" \ + "madd %[temp7], %[temp8] \n\t" \ +- "lw %[temp0], "#A"(%[tmp]) \n\t" \ +- "lw %[temp1], "#C"(%[tmp]) \n\t" \ +- "lw %[temp2], "#B"(%[tmp]) \n\t" \ +- "lw %[temp3], "#D"(%[tmp]) \n\t" \ ++ "lw %[temp0], " #A "(%[tmp]) \n\t" \ ++ "lw %[temp1], " #C "(%[tmp]) \n\t" \ ++ "lw %[temp2], " #B "(%[tmp]) \n\t" \ ++ "lw %[temp3], " #D "(%[tmp]) \n\t" \ + "addu %[temp8], %[temp0], %[temp1] \n\t" \ + "subu %[temp0], %[temp0], %[temp1] \n\t" \ + "addu %[temp1], %[temp2], %[temp3] \n\t" \ +@@ -413,70 +413,70 @@ static int Disto16x16(const uint8_t* const a, const uint8_t* const b, + // A - offset in bytes to load from src and ref buffers + // TEMP0..TEMP3 - registers for corresponding tmp elements + #define HORIZONTAL_PASS(A, TEMP0, TEMP1, TEMP2, TEMP3) \ +- "lw %["#TEMP1"], 0(%[args]) \n\t" \ +- "lw %["#TEMP2"], 4(%[args]) \n\t" \ +- "lbu %[temp16], 0+"XSTR(BPS)"*"#A"(%["#TEMP1"]) \n\t" \ +- "lbu %[temp17], 0+"XSTR(BPS)"*"#A"(%["#TEMP2"]) \n\t" \ +- "lbu %[temp18], 1+"XSTR(BPS)"*"#A"(%["#TEMP1"]) \n\t" \ +- "lbu %[temp19], 1+"XSTR(BPS)"*"#A"(%["#TEMP2"]) \n\t" \ ++ "lw %[" #TEMP1 "], 0(%[args]) \n\t" \ ++ "lw %[" #TEMP2 "], 4(%[args]) \n\t" \ ++ "lbu %[temp16], 0+"XSTR(BPS)"*" #A "(%[" #TEMP1 "]) \n\t" \ ++ "lbu %[temp17], 0+"XSTR(BPS)"*" #A "(%[" #TEMP2 "]) \n\t" \ ++ "lbu %[temp18], 1+"XSTR(BPS)"*" #A "(%[" #TEMP1 "]) \n\t" \ ++ "lbu %[temp19], 1+"XSTR(BPS)"*" #A "(%[" #TEMP2 "]) \n\t" \ + "subu %[temp20], %[temp16], %[temp17] \n\t" \ +- "lbu %[temp16], 2+"XSTR(BPS)"*"#A"(%["#TEMP1"]) \n\t" \ +- "lbu %[temp17], 2+"XSTR(BPS)"*"#A"(%["#TEMP2"]) \n\t" \ +- "subu %["#TEMP0"], %[temp18], %[temp19] \n\t" \ +- "lbu %[temp18], 3+"XSTR(BPS)"*"#A"(%["#TEMP1"]) \n\t" \ +- "lbu %[temp19], 3+"XSTR(BPS)"*"#A"(%["#TEMP2"]) \n\t" \ +- "subu %["#TEMP1"], %[temp16], %[temp17] \n\t" \ +- "subu %["#TEMP2"], %[temp18], %[temp19] \n\t" \ +- "addu %["#TEMP3"], %[temp20], %["#TEMP2"] \n\t" \ +- "subu %["#TEMP2"], %[temp20], %["#TEMP2"] \n\t" \ +- "addu %[temp20], %["#TEMP0"], %["#TEMP1"] \n\t" \ +- "subu %["#TEMP0"], %["#TEMP0"], %["#TEMP1"] \n\t" \ +- "mul %[temp16], %["#TEMP2"], %[c5352] \n\t" \ +- "mul %[temp17], %["#TEMP2"], %[c2217] \n\t" \ +- "mul %[temp18], %["#TEMP0"], %[c5352] \n\t" \ +- "mul %[temp19], %["#TEMP0"], %[c2217] \n\t" \ +- "addu %["#TEMP1"], %["#TEMP3"], %[temp20] \n\t" \ +- "subu %[temp20], %["#TEMP3"], %[temp20] \n\t" \ +- "sll %["#TEMP0"], %["#TEMP1"], 3 \n\t" \ +- "sll %["#TEMP2"], %[temp20], 3 \n\t" \ ++ "lbu %[temp16], 2+"XSTR(BPS)"*" #A "(%[" #TEMP1 "]) \n\t" \ ++ "lbu %[temp17], 2+"XSTR(BPS)"*" #A "(%[" #TEMP2 "]) \n\t" \ ++ "subu %[" #TEMP0 "], %[temp18], %[temp19] \n\t" \ ++ "lbu %[temp18], 3+"XSTR(BPS)"*" #A "(%[" #TEMP1 "]) \n\t" \ ++ "lbu %[temp19], 3+"XSTR(BPS)"*" #A "(%[" #TEMP2 "]) \n\t" \ ++ "subu %[" #TEMP1 "], %[temp16], %[temp17] \n\t" \ ++ "subu %[" #TEMP2 "], %[temp18], %[temp19] \n\t" \ ++ "addu %[" #TEMP3 "], %[temp20], %[" #TEMP2 "] \n\t" \ ++ "subu %[" #TEMP2 "], %[temp20], %[" #TEMP2 "] \n\t" \ ++ "addu %[temp20], %[" #TEMP0 "], %[" #TEMP1 "] \n\t" \ ++ "subu %[" #TEMP0 "], %[" #TEMP0 "], %[" #TEMP1 "] \n\t" \ ++ "mul %[temp16], %[" #TEMP2 "], %[c5352] \n\t" \ ++ "mul %[temp17], %[" #TEMP2 "], %[c2217] \n\t" \ ++ "mul %[temp18], %[" #TEMP0 "], %[c5352] \n\t" \ ++ "mul %[temp19], %[" #TEMP0 "], %[c2217] \n\t" \ ++ "addu %[" #TEMP1 "], %[" #TEMP3 "], %[temp20] \n\t" \ ++ "subu %[temp20], %[" #TEMP3 "], %[temp20] \n\t" \ ++ "sll %[" #TEMP0 "], %[" #TEMP1 "], 3 \n\t" \ ++ "sll %[" #TEMP2 "], %[temp20], 3 \n\t" \ + "addiu %[temp16], %[temp16], 1812 \n\t" \ + "addiu %[temp17], %[temp17], 937 \n\t" \ + "addu %[temp16], %[temp16], %[temp19] \n\t" \ + "subu %[temp17], %[temp17], %[temp18] \n\t" \ +- "sra %["#TEMP1"], %[temp16], 9 \n\t" \ +- "sra %["#TEMP3"], %[temp17], 9 \n\t" ++ "sra %[" #TEMP1 "], %[temp16], 9 \n\t" \ ++ "sra %[" #TEMP3 "], %[temp17], 9 \n\t" + + // macro for one vertical pass in FTransform + // temp0..temp15 holds tmp[0]..tmp[15] + // A..D - offsets in bytes to store to out buffer + // TEMP0, TEMP4, TEMP8 and TEMP12 - registers for corresponding tmp elements + #define VERTICAL_PASS(A, B, C, D, TEMP0, TEMP4, TEMP8, TEMP12) \ +- "addu %[temp16], %["#TEMP0"], %["#TEMP12"] \n\t" \ +- "subu %[temp19], %["#TEMP0"], %["#TEMP12"] \n\t" \ +- "addu %[temp17], %["#TEMP4"], %["#TEMP8"] \n\t" \ +- "subu %[temp18], %["#TEMP4"], %["#TEMP8"] \n\t" \ +- "mul %["#TEMP8"], %[temp19], %[c2217] \n\t" \ +- "mul %["#TEMP12"], %[temp18], %[c2217] \n\t" \ +- "mul %["#TEMP4"], %[temp19], %[c5352] \n\t" \ ++ "addu %[temp16], %[" #TEMP0 "], %[" #TEMP12 "] \n\t" \ ++ "subu %[temp19], %[" #TEMP0 "], %[" #TEMP12 "] \n\t" \ ++ "addu %[temp17], %[" #TEMP4 "], %[" #TEMP8 "] \n\t" \ ++ "subu %[temp18], %[" #TEMP4 "], %[" #TEMP8 "] \n\t" \ ++ "mul %[" #TEMP8 "], %[temp19], %[c2217] \n\t" \ ++ "mul %[" #TEMP12 "], %[temp18], %[c2217] \n\t" \ ++ "mul %[" #TEMP4 "], %[temp19], %[c5352] \n\t" \ + "mul %[temp18], %[temp18], %[c5352] \n\t" \ + "addiu %[temp16], %[temp16], 7 \n\t" \ +- "addu %["#TEMP0"], %[temp16], %[temp17] \n\t" \ +- "sra %["#TEMP0"], %["#TEMP0"], 4 \n\t" \ +- "addu %["#TEMP12"], %["#TEMP12"], %["#TEMP4"] \n\t" \ +- "subu %["#TEMP4"], %[temp16], %[temp17] \n\t" \ +- "sra %["#TEMP4"], %["#TEMP4"], 4 \n\t" \ +- "addiu %["#TEMP8"], %["#TEMP8"], 30000 \n\t" \ +- "addiu %["#TEMP12"], %["#TEMP12"], 12000 \n\t" \ +- "addiu %["#TEMP8"], %["#TEMP8"], 21000 \n\t" \ +- "subu %["#TEMP8"], %["#TEMP8"], %[temp18] \n\t" \ +- "sra %["#TEMP12"], %["#TEMP12"], 16 \n\t" \ +- "sra %["#TEMP8"], %["#TEMP8"], 16 \n\t" \ +- "addiu %[temp16], %["#TEMP12"], 1 \n\t" \ +- "movn %["#TEMP12"], %[temp16], %[temp19] \n\t" \ +- "sh %["#TEMP0"], "#A"(%[temp20]) \n\t" \ +- "sh %["#TEMP4"], "#C"(%[temp20]) \n\t" \ +- "sh %["#TEMP8"], "#D"(%[temp20]) \n\t" \ +- "sh %["#TEMP12"], "#B"(%[temp20]) \n\t" ++ "addu %[" #TEMP0 "], %[temp16], %[temp17] \n\t" \ ++ "sra %[" #TEMP0 "], %[" #TEMP0 "], 4 \n\t" \ ++ "addu %[" #TEMP12 "], %[" #TEMP12 "], %[" #TEMP4 "] \n\t" \ ++ "subu %[" #TEMP4 "], %[temp16], %[temp17] \n\t" \ ++ "sra %[" #TEMP4 "], %[" #TEMP4 "], 4 \n\t" \ ++ "addiu %[" #TEMP8 "], %[" #TEMP8 "], 30000 \n\t" \ ++ "addiu %[" #TEMP12 "], %[" #TEMP12 "], 12000 \n\t" \ ++ "addiu %[" #TEMP8 "], %[" #TEMP8 "], 21000 \n\t" \ ++ "subu %[" #TEMP8 "], %[" #TEMP8 "], %[temp18] \n\t" \ ++ "sra %[" #TEMP12 "], %[" #TEMP12 "], 16 \n\t" \ ++ "sra %[" #TEMP8 "], %[" #TEMP8 "], 16 \n\t" \ ++ "addiu %[temp16], %[" #TEMP12 "], 1 \n\t" \ ++ "movn %[" #TEMP12 "], %[temp16], %[temp19] \n\t" \ ++ "sh %[" #TEMP0 "], " #A "(%[temp20]) \n\t" \ ++ "sh %[" #TEMP4 "], " #C "(%[temp20]) \n\t" \ ++ "sh %[" #TEMP8 "], " #D "(%[temp20]) \n\t" \ ++ "sh %[" #TEMP12 "], " #B "(%[temp20]) \n\t" + + static void FTransform(const uint8_t* src, const uint8_t* ref, int16_t* out) { + int temp0, temp1, temp2, temp3, temp4, temp5, temp6, temp7, temp8; +@@ -516,14 +516,14 @@ static void FTransform(const uint8_t* src, const uint8_t* ref, int16_t* out) { + #if !defined(WORK_AROUND_GCC) + + #define GET_SSE_INNER(A, B, C, D) \ +- "lbu %[temp0], "#A"(%[a]) \n\t" \ +- "lbu %[temp1], "#A"(%[b]) \n\t" \ +- "lbu %[temp2], "#B"(%[a]) \n\t" \ +- "lbu %[temp3], "#B"(%[b]) \n\t" \ +- "lbu %[temp4], "#C"(%[a]) \n\t" \ +- "lbu %[temp5], "#C"(%[b]) \n\t" \ +- "lbu %[temp6], "#D"(%[a]) \n\t" \ +- "lbu %[temp7], "#D"(%[b]) \n\t" \ ++ "lbu %[temp0], " #A "(%[a]) \n\t" \ ++ "lbu %[temp1], " #A "(%[b]) \n\t" \ ++ "lbu %[temp2], " #B "(%[a]) \n\t" \ ++ "lbu %[temp3], " #B "(%[b]) \n\t" \ ++ "lbu %[temp4], " #C "(%[a]) \n\t" \ ++ "lbu %[temp5], " #C "(%[b]) \n\t" \ ++ "lbu %[temp6], " #D "(%[a]) \n\t" \ ++ "lbu %[temp7], " #D "(%[b]) \n\t" \ + "subu %[temp0], %[temp0], %[temp1] \n\t" \ + "subu %[temp2], %[temp2], %[temp3] \n\t" \ + "subu %[temp4], %[temp4], %[temp5] \n\t" \ +diff --git a/Source/LibWebP/src/dsp/dsp.enc_mips_dsp_r2.c b/Source/LibWebP/src/dsp/dsp.enc_mips_dsp_r2.c +index ec58efe..1a3f968 100644 +--- a/Source/LibWebP/src/dsp/dsp.enc_mips_dsp_r2.c ++++ b/Source/LibWebP/src/dsp/dsp.enc_mips_dsp_r2.c +@@ -27,25 +27,25 @@ static const int kC2 = 35468; + // I - input (macro doesn't change it) + #define ADD_SUB_HALVES_X4(O0, O1, O2, O3, O4, O5, O6, O7, \ + I0, I1, I2, I3, I4, I5, I6, I7) \ +- "addq.ph %["#O0"], %["#I0"], %["#I1"] \n\t" \ +- "subq.ph %["#O1"], %["#I0"], %["#I1"] \n\t" \ +- "addq.ph %["#O2"], %["#I2"], %["#I3"] \n\t" \ +- "subq.ph %["#O3"], %["#I2"], %["#I3"] \n\t" \ +- "addq.ph %["#O4"], %["#I4"], %["#I5"] \n\t" \ +- "subq.ph %["#O5"], %["#I4"], %["#I5"] \n\t" \ +- "addq.ph %["#O6"], %["#I6"], %["#I7"] \n\t" \ +- "subq.ph %["#O7"], %["#I6"], %["#I7"] \n\t" ++ "addq.ph %[" #O0 "], %[" #I0 "], %[" #I1 "] \n\t" \ ++ "subq.ph %[" #O1 "], %[" #I0 "], %[" #I1 "] \n\t" \ ++ "addq.ph %[" #O2 "], %[" #I2 "], %[" #I3 "] \n\t" \ ++ "subq.ph %[" #O3 "], %[" #I2 "], %[" #I3 "] \n\t" \ ++ "addq.ph %[" #O4 "], %[" #I4 "], %[" #I5 "] \n\t" \ ++ "subq.ph %[" #O5 "], %[" #I4 "], %[" #I5 "] \n\t" \ ++ "addq.ph %[" #O6 "], %[" #I6 "], %[" #I7 "] \n\t" \ ++ "subq.ph %[" #O7 "], %[" #I6 "], %[" #I7 "] \n\t" + + // IO - input/output + #define ABS_X8(IO0, IO1, IO2, IO3, IO4, IO5, IO6, IO7) \ +- "absq_s.ph %["#IO0"], %["#IO0"] \n\t" \ +- "absq_s.ph %["#IO1"], %["#IO1"] \n\t" \ +- "absq_s.ph %["#IO2"], %["#IO2"] \n\t" \ +- "absq_s.ph %["#IO3"], %["#IO3"] \n\t" \ +- "absq_s.ph %["#IO4"], %["#IO4"] \n\t" \ +- "absq_s.ph %["#IO5"], %["#IO5"] \n\t" \ +- "absq_s.ph %["#IO6"], %["#IO6"] \n\t" \ +- "absq_s.ph %["#IO7"], %["#IO7"] \n\t" ++ "absq_s.ph %[" #IO0 "], %[" #IO0 "] \n\t" \ ++ "absq_s.ph %[" #IO1 "], %[" #IO1 "] \n\t" \ ++ "absq_s.ph %[" #IO2 "], %[" #IO2 "] \n\t" \ ++ "absq_s.ph %[" #IO3 "], %[" #IO3 "] \n\t" \ ++ "absq_s.ph %[" #IO4 "], %[" #IO4 "] \n\t" \ ++ "absq_s.ph %[" #IO5 "], %[" #IO5 "] \n\t" \ ++ "absq_s.ph %[" #IO6 "], %[" #IO6 "] \n\t" \ ++ "absq_s.ph %[" #IO7 "], %[" #IO7 "] \n\t" + + // dpa.w.ph $ac0 temp0 ,temp1 + // $ac += temp0[31..16] * temp1[31..16] + temp0[15..0] * temp1[15..0] +@@ -56,15 +56,15 @@ static const int kC2 = 35468; + #define MUL_HALF(O0, I0, I1, I2, I3, I4, I5, I6, I7, \ + I8, I9, I10, I11, I12, I13, I14, I15) \ + "mult $ac0, $zero, $zero \n\t" \ +- "dpa.w.ph $ac0, %["#I2"], %["#I0"] \n\t" \ +- "dpax.w.ph $ac0, %["#I5"], %["#I6"] \n\t" \ +- "dpa.w.ph $ac0, %["#I8"], %["#I9"] \n\t" \ +- "dpax.w.ph $ac0, %["#I11"], %["#I4"] \n\t" \ +- "dpa.w.ph $ac0, %["#I12"], %["#I7"] \n\t" \ +- "dpax.w.ph $ac0, %["#I13"], %["#I1"] \n\t" \ +- "dpa.w.ph $ac0, %["#I14"], %["#I3"] \n\t" \ +- "dpax.w.ph $ac0, %["#I15"], %["#I10"] \n\t" \ +- "mflo %["#O0"], $ac0 \n\t" ++ "dpa.w.ph $ac0, %[" #I2 "], %[" #I0 "] \n\t" \ ++ "dpax.w.ph $ac0, %[" #I5 "], %[" #I6 "] \n\t" \ ++ "dpa.w.ph $ac0, %[" #I8 "], %[" #I9 "] \n\t" \ ++ "dpax.w.ph $ac0, %[" #I11 "], %[" #I4 "] \n\t" \ ++ "dpa.w.ph $ac0, %[" #I12 "], %[" #I7 "] \n\t" \ ++ "dpax.w.ph $ac0, %[" #I13 "], %[" #I1 "] \n\t" \ ++ "dpa.w.ph $ac0, %[" #I14 "], %[" #I3 "] \n\t" \ ++ "dpax.w.ph $ac0, %[" #I15 "], %[" #I10 "] \n\t" \ ++ "mflo %[" #O0 "], $ac0 \n\t" + + #define OUTPUT_EARLY_CLOBBER_REGS_17() \ + OUTPUT_EARLY_CLOBBER_REGS_10(), \ +@@ -77,69 +77,69 @@ static const int kC2 = 35468; + // A - offset in bytes to load from src and ref buffers + // TEMP0..TEMP3 - registers for corresponding tmp elements + #define HORIZONTAL_PASS(A, TEMP0, TEMP1, TEMP2, TEMP3) \ +- "lw %["#TEMP0"], 0(%[args]) \n\t" \ +- "lw %["#TEMP1"], 4(%[args]) \n\t" \ +- "lw %["#TEMP2"], "XSTR(BPS)"*"#A"(%["#TEMP0"]) \n\t" \ +- "lw %["#TEMP3"], "XSTR(BPS)"*"#A"(%["#TEMP1"]) \n\t" \ +- "preceu.ph.qbl %["#TEMP0"], %["#TEMP2"] \n\t" \ +- "preceu.ph.qbl %["#TEMP1"], %["#TEMP3"] \n\t" \ +- "preceu.ph.qbr %["#TEMP2"], %["#TEMP2"] \n\t" \ +- "preceu.ph.qbr %["#TEMP3"], %["#TEMP3"] \n\t" \ +- "subq.ph %["#TEMP0"], %["#TEMP0"], %["#TEMP1"] \n\t" \ +- "subq.ph %["#TEMP2"], %["#TEMP2"], %["#TEMP3"] \n\t" \ +- "rotr %["#TEMP0"], %["#TEMP0"], 16 \n\t" \ +- "addq.ph %["#TEMP1"], %["#TEMP2"], %["#TEMP0"] \n\t" \ +- "subq.ph %["#TEMP3"], %["#TEMP2"], %["#TEMP0"] \n\t" \ +- "seh %["#TEMP0"], %["#TEMP1"] \n\t" \ +- "sra %[temp16], %["#TEMP1"], 16 \n\t" \ +- "seh %[temp19], %["#TEMP3"] \n\t" \ +- "sra %["#TEMP3"], %["#TEMP3"], 16 \n\t" \ +- "subu %["#TEMP2"], %["#TEMP0"], %[temp16] \n\t" \ +- "addu %["#TEMP0"], %["#TEMP0"], %[temp16] \n\t" \ ++ "lw %[" #TEMP0 "], 0(%[args]) \n\t" \ ++ "lw %[" #TEMP1 "], 4(%[args]) \n\t" \ ++ "lw %[" #TEMP2 "], "XSTR(BPS)"*" #A "(%[" #TEMP0 "]) \n\t" \ ++ "lw %[" #TEMP3 "], "XSTR(BPS)"*" #A "(%[" #TEMP1 "]) \n\t" \ ++ "preceu.ph.qbl %[" #TEMP0 "], %[" #TEMP2 "] \n\t" \ ++ "preceu.ph.qbl %[" #TEMP1 "], %[" #TEMP3 "] \n\t" \ ++ "preceu.ph.qbr %[" #TEMP2 "], %[" #TEMP2 "] \n\t" \ ++ "preceu.ph.qbr %[" #TEMP3 "], %[" #TEMP3 "] \n\t" \ ++ "subq.ph %[" #TEMP0 "], %[" #TEMP0 "], %[" #TEMP1 "] \n\t" \ ++ "subq.ph %[" #TEMP2 "], %[" #TEMP2 "], %[" #TEMP3 "] \n\t" \ ++ "rotr %[" #TEMP0 "], %[" #TEMP0 "], 16 \n\t" \ ++ "addq.ph %[" #TEMP1 "], %[" #TEMP2 "], %[" #TEMP0 "] \n\t" \ ++ "subq.ph %[" #TEMP3 "], %[" #TEMP2 "], %[" #TEMP0 "] \n\t" \ ++ "seh %[" #TEMP0 "], %[" #TEMP1 "] \n\t" \ ++ "sra %[temp16], %[" #TEMP1 "], 16 \n\t" \ ++ "seh %[temp19], %[" #TEMP3 "] \n\t" \ ++ "sra %[" #TEMP3 "], %[" #TEMP3 "], 16 \n\t" \ ++ "subu %[" #TEMP2 "], %[" #TEMP0 "], %[temp16] \n\t" \ ++ "addu %[" #TEMP0 "], %[" #TEMP0 "], %[temp16] \n\t" \ + "mul %[temp17], %[temp19], %[c2217] \n\t" \ +- "mul %[temp18], %["#TEMP3"], %[c5352] \n\t" \ +- "mul %["#TEMP1"], %[temp19], %[c5352] \n\t" \ +- "mul %[temp16], %["#TEMP3"], %[c2217] \n\t" \ +- "sll %["#TEMP2"], %["#TEMP2"], 3 \n\t" \ +- "sll %["#TEMP0"], %["#TEMP0"], 3 \n\t" \ +- "subu %["#TEMP3"], %[temp17], %[temp18] \n\t" \ +- "addu %["#TEMP1"], %[temp16], %["#TEMP1"] \n\t" \ +- "addiu %["#TEMP3"], %["#TEMP3"], 937 \n\t" \ +- "addiu %["#TEMP1"], %["#TEMP1"], 1812 \n\t" \ +- "sra %["#TEMP3"], %["#TEMP3"], 9 \n\t" \ +- "sra %["#TEMP1"], %["#TEMP1"], 9 \n\t" ++ "mul %[temp18], %[" #TEMP3 "], %[c5352] \n\t" \ ++ "mul %[" #TEMP1 "], %[temp19], %[c5352] \n\t" \ ++ "mul %[temp16], %[" #TEMP3 "], %[c2217] \n\t" \ ++ "sll %[" #TEMP2 "], %[" #TEMP2 "], 3 \n\t" \ ++ "sll %[" #TEMP0 "], %[" #TEMP0 "], 3 \n\t" \ ++ "subu %[" #TEMP3 "], %[temp17], %[temp18] \n\t" \ ++ "addu %[" #TEMP1 "], %[temp16], %[" #TEMP1 "] \n\t" \ ++ "addiu %[" #TEMP3 "], %[" #TEMP3 "], 937 \n\t" \ ++ "addiu %[" #TEMP1 "], %[" #TEMP1 "], 1812 \n\t" \ ++ "sra %[" #TEMP3 "], %[" #TEMP3 "], 9 \n\t" \ ++ "sra %[" #TEMP1 "], %[" #TEMP1 "], 9 \n\t" + + // macro for one vertical pass in FTransform + // temp0..temp15 holds tmp[0]..tmp[15] + // A..D - offsets in bytes to store to out buffer + // TEMP0, TEMP4, TEMP8 and TEMP12 - registers for corresponding tmp elements + #define VERTICAL_PASS(A, B, C, D, TEMP0, TEMP4, TEMP8, TEMP12) \ +- "addu %[temp16], %["#TEMP0"], %["#TEMP12"] \n\t" \ +- "subu %[temp19], %["#TEMP0"], %["#TEMP12"] \n\t" \ +- "addu %[temp17], %["#TEMP4"], %["#TEMP8"] \n\t" \ +- "subu %[temp18], %["#TEMP4"], %["#TEMP8"] \n\t" \ +- "mul %["#TEMP8"], %[temp19], %[c2217] \n\t" \ +- "mul %["#TEMP12"], %[temp18], %[c2217] \n\t" \ +- "mul %["#TEMP4"], %[temp19], %[c5352] \n\t" \ ++ "addu %[temp16], %[" #TEMP0 "], %[" #TEMP12 "] \n\t" \ ++ "subu %[temp19], %[" #TEMP0 "], %[" #TEMP12 "] \n\t" \ ++ "addu %[temp17], %[" #TEMP4 "], %[" #TEMP8 "] \n\t" \ ++ "subu %[temp18], %[" #TEMP4 "], %[" #TEMP8 "] \n\t" \ ++ "mul %[" #TEMP8 "], %[temp19], %[c2217] \n\t" \ ++ "mul %[" #TEMP12 "], %[temp18], %[c2217] \n\t" \ ++ "mul %[" #TEMP4 "], %[temp19], %[c5352] \n\t" \ + "mul %[temp18], %[temp18], %[c5352] \n\t" \ + "addiu %[temp16], %[temp16], 7 \n\t" \ +- "addu %["#TEMP0"], %[temp16], %[temp17] \n\t" \ +- "sra %["#TEMP0"], %["#TEMP0"], 4 \n\t" \ +- "addu %["#TEMP12"], %["#TEMP12"], %["#TEMP4"] \n\t" \ +- "subu %["#TEMP4"], %[temp16], %[temp17] \n\t" \ +- "sra %["#TEMP4"], %["#TEMP4"], 4 \n\t" \ +- "addiu %["#TEMP8"], %["#TEMP8"], 30000 \n\t" \ +- "addiu %["#TEMP12"], %["#TEMP12"], 12000 \n\t" \ +- "addiu %["#TEMP8"], %["#TEMP8"], 21000 \n\t" \ +- "subu %["#TEMP8"], %["#TEMP8"], %[temp18] \n\t" \ +- "sra %["#TEMP12"], %["#TEMP12"], 16 \n\t" \ +- "sra %["#TEMP8"], %["#TEMP8"], 16 \n\t" \ +- "addiu %[temp16], %["#TEMP12"], 1 \n\t" \ +- "movn %["#TEMP12"], %[temp16], %[temp19] \n\t" \ +- "sh %["#TEMP0"], "#A"(%[temp20]) \n\t" \ +- "sh %["#TEMP4"], "#C"(%[temp20]) \n\t" \ +- "sh %["#TEMP8"], "#D"(%[temp20]) \n\t" \ +- "sh %["#TEMP12"], "#B"(%[temp20]) \n\t" ++ "addu %[" #TEMP0 "], %[temp16], %[temp17] \n\t" \ ++ "sra %[" #TEMP0 "], %[" #TEMP0 "], 4 \n\t" \ ++ "addu %[" #TEMP12 "], %[" #TEMP12 "], %[" #TEMP4 "] \n\t" \ ++ "subu %[" #TEMP4 "], %[temp16], %[temp17] \n\t" \ ++ "sra %[" #TEMP4 "], %[" #TEMP4 "], 4 \n\t" \ ++ "addiu %[" #TEMP8 "], %[" #TEMP8 "], 30000 \n\t" \ ++ "addiu %[" #TEMP12 "], %[" #TEMP12 "], 12000 \n\t" \ ++ "addiu %[" #TEMP8 "], %[" #TEMP8 "], 21000 \n\t" \ ++ "subu %[" #TEMP8 "], %[" #TEMP8 "], %[temp18] \n\t" \ ++ "sra %[" #TEMP12 "], %[" #TEMP12 "], 16 \n\t" \ ++ "sra %[" #TEMP8 "], %[" #TEMP8 "], 16 \n\t" \ ++ "addiu %[temp16], %[" #TEMP12 "], 1 \n\t" \ ++ "movn %[" #TEMP12 "], %[temp16], %[temp19] \n\t" \ ++ "sh %[" #TEMP0 "], " #A "(%[temp20]) \n\t" \ ++ "sh %[" #TEMP4 "], " #C "(%[temp20]) \n\t" \ ++ "sh %[" #TEMP8 "], " #D "(%[temp20]) \n\t" \ ++ "sh %[" #TEMP12 "], " #B "(%[temp20]) \n\t" + + static void FTransform(const uint8_t* src, const uint8_t* ref, int16_t* out) { + const int c2217 = 2217; +@@ -329,11 +329,11 @@ static int Disto16x16(const uint8_t* const a, const uint8_t* const b, + // Intra predictions + + #define FILL_PART(J, SIZE) \ +- "usw %[value], 0+"#J"*"XSTR(BPS)"(%[dst]) \n\t" \ +- "usw %[value], 4+"#J"*"XSTR(BPS)"(%[dst]) \n\t" \ +- ".if "#SIZE" == 16 \n\t" \ +- "usw %[value], 8+"#J"*"XSTR(BPS)"(%[dst]) \n\t" \ +- "usw %[value], 12+"#J"*"XSTR(BPS)"(%[dst]) \n\t" \ ++ "usw %[value], 0+" #J "*"XSTR(BPS)"(%[dst]) \n\t" \ ++ "usw %[value], 4+" #J "*"XSTR(BPS)"(%[dst]) \n\t" \ ++ ".if " #SIZE " == 16 \n\t" \ ++ "usw %[value], 8+" #J "*"XSTR(BPS)"(%[dst]) \n\t" \ ++ "usw %[value], 12+" #J "*"XSTR(BPS)"(%[dst]) \n\t" \ + ".endif \n\t" + + #define FILL_8_OR_16(DST, VALUE, SIZE) do { \ +@@ -348,7 +348,7 @@ static int Disto16x16(const uint8_t* const a, const uint8_t* const b, + FILL_PART( 5, SIZE) \ + FILL_PART( 6, SIZE) \ + FILL_PART( 7, SIZE) \ +- ".if "#SIZE" == 16 \n\t" \ ++ ".if " #SIZE " == 16 \n\t" \ + FILL_PART( 8, 16) \ + FILL_PART( 9, 16) \ + FILL_PART(10, 16) \ +@@ -425,7 +425,7 @@ HORIZONTAL_PRED(dst, left, 16) + CLIPPING() \ + "usw %[temp0], 0(%[dst]) \n\t" \ + "usw %[temp1], 4(%[dst]) \n\t" \ +- ".if "#SIZE" == 16 \n\t" \ ++ ".if " #SIZE " == 16 \n\t" \ + "ulw %[temp0], 8(%[top]) \n\t" \ + "ulw %[temp1], 12(%[top]) \n\t" \ + CLIPPING() \ +@@ -1060,8 +1060,8 @@ static void Intra4Preds(uint8_t* dst, const uint8_t* top) { + #if !defined(WORK_AROUND_GCC) + + #define GET_SSE_INNER(A) \ +- "lw %[temp0], "#A"(%[a]) \n\t" \ +- "lw %[temp1], "#A"(%[b]) \n\t" \ ++ "lw %[temp0], " #A "(%[a]) \n\t" \ ++ "lw %[temp1], " #A "(%[b]) \n\t" \ + "preceu.ph.qbr %[temp2], %[temp0] \n\t" \ + "preceu.ph.qbl %[temp0], %[temp0] \n\t" \ + "preceu.ph.qbr %[temp3], %[temp1] \n\t" \ +@@ -1185,28 +1185,28 @@ static int SSE4x4(const uint8_t* a, const uint8_t* b) { + // N - offset in bytes (n * 2) + // N1 - offset in bytes ((n + 1) * 2) + #define QUANTIZE_ONE(J, K, N, N1) \ +- "ulw %[temp1], "#J"(%[ppin]) \n\t" \ +- "ulw %[temp2], "#J"(%[ppsharpen]) \n\t" \ +- "lhu %[temp3], "#K"(%[ppzthresh]) \n\t" \ +- "lhu %[temp6], "#K"+4(%[ppzthresh]) \n\t" \ ++ "ulw %[temp1], " #J "(%[ppin]) \n\t" \ ++ "ulw %[temp2], " #J "(%[ppsharpen]) \n\t" \ ++ "lhu %[temp3], " #K "(%[ppzthresh]) \n\t" \ ++ "lhu %[temp6], " #K "+4(%[ppzthresh]) \n\t" \ + "absq_s.ph %[temp4], %[temp1] \n\t" \ + "ins %[temp3], %[temp6], 16, 16 \n\t" \ + "addu.ph %[coeff], %[temp4], %[temp2] \n\t" \ + "shra.ph %[sign], %[temp1], 15 \n\t" \ + "li %[level], 0x10001 \n\t" \ + "cmp.lt.ph %[temp3], %[coeff] \n\t" \ +- "lhu %[temp1], "#J"(%[ppiq]) \n\t" \ ++ "lhu %[temp1], " #J "(%[ppiq]) \n\t" \ + "pick.ph %[temp5], %[level], $0 \n\t" \ +- "lw %[temp2], "#K"(%[ppbias]) \n\t" \ ++ "lw %[temp2], " #K "(%[ppbias]) \n\t" \ + "beqz %[temp5], 0f \n\t" \ +- "lhu %[temp3], "#J"(%[ppq]) \n\t" \ ++ "lhu %[temp3], " #J "(%[ppq]) \n\t" \ + "beq %[temp5], %[level], 1f \n\t" \ + "andi %[temp5], %[temp5], 0x1 \n\t" \ + "andi %[temp4], %[coeff], 0xffff \n\t" \ + "beqz %[temp5], 2f \n\t" \ + "mul %[level], %[temp4], %[temp1] \n\t" \ +- "sh $0, "#J"+2(%[ppin]) \n\t" \ +- "sh $0, "#N1"(%[pout]) \n\t" \ ++ "sh $0, " #J "+2(%[ppin]) \n\t" \ ++ "sh $0, " #N1 "(%[pout]) \n\t" \ + "addu %[level], %[level], %[temp2] \n\t" \ + "sra %[level], %[level], 17 \n\t" \ + "slt %[temp4], %[max_level], %[level] \n\t" \ +@@ -1216,15 +1216,15 @@ static int SSE4x4(const uint8_t* a, const uint8_t* b) { + "subu %[level], %[level], %[temp6] \n\t" \ + "mul %[temp5], %[level], %[temp3] \n\t" \ + "or %[ret], %[ret], %[level] \n\t" \ +- "sh %[level], "#N"(%[pout]) \n\t" \ +- "sh %[temp5], "#J"(%[ppin]) \n\t" \ ++ "sh %[level], " #N "(%[pout]) \n\t" \ ++ "sh %[temp5], " #J "(%[ppin]) \n\t" \ + "j 3f \n\t" \ + "2: \n\t" \ +- "lhu %[temp1], "#J"+2(%[ppiq]) \n\t" \ ++ "lhu %[temp1], " #J "+2(%[ppiq]) \n\t" \ + "srl %[temp5], %[coeff], 16 \n\t" \ + "mul %[level], %[temp5], %[temp1] \n\t" \ +- "lw %[temp2], "#K"+4(%[ppbias]) \n\t" \ +- "lhu %[temp3], "#J"+2(%[ppq]) \n\t" \ ++ "lw %[temp2], " #K "+4(%[ppbias]) \n\t" \ ++ "lhu %[temp3], " #J "+2(%[ppq]) \n\t" \ + "addu %[level], %[level], %[temp2] \n\t" \ + "sra %[level], %[level], 17 \n\t" \ + "srl %[temp6], %[sign], 16 \n\t" \ +@@ -1233,20 +1233,20 @@ static int SSE4x4(const uint8_t* a, const uint8_t* b) { + "xor %[level], %[level], %[temp6] \n\t" \ + "subu %[level], %[level], %[temp6] \n\t" \ + "mul %[temp5], %[level], %[temp3] \n\t" \ +- "sh $0, "#J"(%[ppin]) \n\t" \ +- "sh $0, "#N"(%[pout]) \n\t" \ ++ "sh $0, " #J "(%[ppin]) \n\t" \ ++ "sh $0, " #N "(%[pout]) \n\t" \ + "or %[ret], %[ret], %[level] \n\t" \ +- "sh %[temp5], "#J"+2(%[ppin]) \n\t" \ +- "sh %[level], "#N1"(%[pout]) \n\t" \ ++ "sh %[temp5], " #J "+2(%[ppin]) \n\t" \ ++ "sh %[level], " #N1 "(%[pout]) \n\t" \ + "j 3f \n\t" \ + "1: \n\t" \ +- "lhu %[temp1], "#J"(%[ppiq]) \n\t" \ +- "lw %[temp2], "#K"(%[ppbias]) \n\t" \ +- "ulw %[temp3], "#J"(%[ppq]) \n\t" \ ++ "lhu %[temp1], " #J "(%[ppiq]) \n\t" \ ++ "lw %[temp2], " #K "(%[ppbias]) \n\t" \ ++ "ulw %[temp3], " #J "(%[ppq]) \n\t" \ + "andi %[temp5], %[coeff], 0xffff \n\t" \ + "srl %[temp0], %[coeff], 16 \n\t" \ +- "lhu %[temp6], "#J"+2(%[ppiq]) \n\t" \ +- "lw %[coeff], "#K"+4(%[ppbias]) \n\t" \ ++ "lhu %[temp6], " #J "+2(%[ppiq]) \n\t" \ ++ "lw %[coeff], " #K "+4(%[ppbias]) \n\t" \ + "mul %[level], %[temp5], %[temp1] \n\t" \ + "mul %[temp4], %[temp0], %[temp6] \n\t" \ + "addu %[level], %[level], %[temp2] \n\t" \ +@@ -1259,15 +1259,15 @@ static int SSE4x4(const uint8_t* a, const uint8_t* b) { + "subu.ph %[level], %[level], %[sign] \n\t" \ + "mul.ph %[temp3], %[level], %[temp3] \n\t" \ + "or %[ret], %[ret], %[level] \n\t" \ +- "sh %[level], "#N"(%[pout]) \n\t" \ ++ "sh %[level], " #N "(%[pout]) \n\t" \ + "srl %[level], %[level], 16 \n\t" \ +- "sh %[level], "#N1"(%[pout]) \n\t" \ +- "usw %[temp3], "#J"(%[ppin]) \n\t" \ ++ "sh %[level], " #N1 "(%[pout]) \n\t" \ ++ "usw %[temp3], " #J "(%[ppin]) \n\t" \ + "j 3f \n\t" \ + "0: \n\t" \ +- "sh $0, "#N"(%[pout]) \n\t" \ +- "sh $0, "#N1"(%[pout]) \n\t" \ +- "usw $0, "#J"(%[ppin]) \n\t" \ ++ "sh $0, " #N "(%[pout]) \n\t" \ ++ "sh $0, " #N1 "(%[pout]) \n\t" \ ++ "usw $0, " #J "(%[ppin]) \n\t" \ + "3: \n\t" + + static int QuantizeBlock(int16_t in[16], int16_t out[16], +@@ -1326,37 +1326,37 @@ static int Quantize2Blocks(int16_t in[32], int16_t out[32], + // A, B, C, D - offset in bytes to load from in buffer + // TEMP0, TEMP1 - registers for corresponding tmp elements + #define HORIZONTAL_PASS_WHT(A, B, C, D, TEMP0, TEMP1) \ +- "lh %["#TEMP0"], "#A"(%[in]) \n\t" \ +- "lh %["#TEMP1"], "#B"(%[in]) \n\t" \ +- "lh %[temp8], "#C"(%[in]) \n\t" \ +- "lh %[temp9], "#D"(%[in]) \n\t" \ +- "ins %["#TEMP1"], %["#TEMP0"], 16, 16 \n\t" \ ++ "lh %[" #TEMP0 "], " #A "(%[in]) \n\t" \ ++ "lh %[" #TEMP1 "], " #B "(%[in]) \n\t" \ ++ "lh %[temp8], " #C "(%[in]) \n\t" \ ++ "lh %[temp9], " #D "(%[in]) \n\t" \ ++ "ins %[" #TEMP1 "], %[" #TEMP0 "], 16, 16 \n\t" \ + "ins %[temp9], %[temp8], 16, 16 \n\t" \ +- "subq.ph %[temp8], %["#TEMP1"], %[temp9] \n\t" \ +- "addq.ph %[temp9], %["#TEMP1"], %[temp9] \n\t" \ +- "precrq.ph.w %["#TEMP0"], %[temp8], %[temp9] \n\t" \ ++ "subq.ph %[temp8], %[" #TEMP1 "], %[temp9] \n\t" \ ++ "addq.ph %[temp9], %[" #TEMP1 "], %[temp9] \n\t" \ ++ "precrq.ph.w %[" #TEMP0 "], %[temp8], %[temp9] \n\t" \ + "append %[temp8], %[temp9], 16 \n\t" \ +- "subq.ph %["#TEMP1"], %["#TEMP0"], %[temp8] \n\t" \ +- "addq.ph %["#TEMP0"], %["#TEMP0"], %[temp8] \n\t" \ +- "rotr %["#TEMP1"], %["#TEMP1"], 16 \n\t" ++ "subq.ph %[" #TEMP1 "], %[" #TEMP0 "], %[temp8] \n\t" \ ++ "addq.ph %[" #TEMP0 "], %[" #TEMP0 "], %[temp8] \n\t" \ ++ "rotr %[" #TEMP1 "], %[" #TEMP1 "], 16 \n\t" + + // macro for one vertical pass in FTransformWHT + // temp0..temp7 holds tmp[0]..tmp[15] + // A, B, C, D - offsets in bytes to store to out buffer + // TEMP0, TEMP2, TEMP4 and TEMP6 - registers for corresponding tmp elements + #define VERTICAL_PASS_WHT(A, B, C, D, TEMP0, TEMP2, TEMP4, TEMP6) \ +- "addq.ph %[temp8], %["#TEMP0"], %["#TEMP4"] \n\t" \ +- "addq.ph %[temp9], %["#TEMP2"], %["#TEMP6"] \n\t" \ +- "subq.ph %["#TEMP2"], %["#TEMP2"], %["#TEMP6"] \n\t" \ +- "subq.ph %["#TEMP6"], %["#TEMP0"], %["#TEMP4"] \n\t" \ +- "addqh.ph %["#TEMP0"], %[temp8], %[temp9] \n\t" \ +- "subqh.ph %["#TEMP4"], %["#TEMP6"], %["#TEMP2"] \n\t" \ +- "addqh.ph %["#TEMP2"], %["#TEMP2"], %["#TEMP6"] \n\t" \ +- "subqh.ph %["#TEMP6"], %[temp8], %[temp9] \n\t" \ +- "usw %["#TEMP0"], "#A"(%[out]) \n\t" \ +- "usw %["#TEMP2"], "#B"(%[out]) \n\t" \ +- "usw %["#TEMP4"], "#C"(%[out]) \n\t" \ +- "usw %["#TEMP6"], "#D"(%[out]) \n\t" ++ "addq.ph %[temp8], %[" #TEMP0 "], %[" #TEMP4 "] \n\t" \ ++ "addq.ph %[temp9], %[" #TEMP2 "], %[" #TEMP6 "] \n\t" \ ++ "subq.ph %[" #TEMP2 "], %[" #TEMP2 "], %[" #TEMP6 "] \n\t" \ ++ "subq.ph %[" #TEMP6 "], %[" #TEMP0 "], %[" #TEMP4 "] \n\t" \ ++ "addqh.ph %[" #TEMP0 "], %[temp8], %[temp9] \n\t" \ ++ "subqh.ph %[" #TEMP4 "], %[" #TEMP6 "], %[" #TEMP2 "] \n\t" \ ++ "addqh.ph %[" #TEMP2 "], %[" #TEMP2 "], %[" #TEMP6 "] \n\t" \ ++ "subqh.ph %[" #TEMP6 "], %[temp8], %[temp9] \n\t" \ ++ "usw %[" #TEMP0 "], " #A "(%[out]) \n\t" \ ++ "usw %[" #TEMP2 "], " #B "(%[out]) \n\t" \ ++ "usw %[" #TEMP4 "], " #C "(%[out]) \n\t" \ ++ "usw %[" #TEMP6 "], " #D "(%[out]) \n\t" + + static void FTransformWHT(const int16_t* in, int16_t* out) { + int temp0, temp1, temp2, temp3, temp4; +@@ -1385,10 +1385,10 @@ static void FTransformWHT(const int16_t* in, int16_t* out) { + // convert 8 coeffs at time + // A, B, C, D - offsets in bytes to load from out buffer + #define CONVERT_COEFFS_TO_BIN(A, B, C, D) \ +- "ulw %[temp0], "#A"(%[out]) \n\t" \ +- "ulw %[temp1], "#B"(%[out]) \n\t" \ +- "ulw %[temp2], "#C"(%[out]) \n\t" \ +- "ulw %[temp3], "#D"(%[out]) \n\t" \ ++ "ulw %[temp0], " #A "(%[out]) \n\t" \ ++ "ulw %[temp1], " #B "(%[out]) \n\t" \ ++ "ulw %[temp2], " #C "(%[out]) \n\t" \ ++ "ulw %[temp3], " #D "(%[out]) \n\t" \ + "absq_s.ph %[temp0], %[temp0] \n\t" \ + "absq_s.ph %[temp1], %[temp1] \n\t" \ + "absq_s.ph %[temp2], %[temp2] \n\t" \ +diff --git a/Source/LibWebP/src/dsp/dsp.filters_mips_dsp_r2.c b/Source/LibWebP/src/dsp/dsp.filters_mips_dsp_r2.c +index 6c34efb..6a1f8f4 100644 +--- a/Source/LibWebP/src/dsp/dsp.filters_mips_dsp_r2.c ++++ b/Source/LibWebP/src/dsp/dsp.filters_mips_dsp_r2.c +@@ -48,7 +48,7 @@ + "srl %[temp0], %[length], 0x2 \n\t" \ + "beqz %[temp0], 4f \n\t" \ + " andi %[temp6], %[length], 0x3 \n\t" \ +- ".if "#INVERSE" \n\t" \ ++ ".if " #INVERSE " \n\t" \ + "lbu %[temp1], -1(%[src]) \n\t" \ + "1: \n\t" \ + "lbu %[temp2], 0(%[src]) \n\t" \ +@@ -84,7 +84,7 @@ + "lbu %[temp1], -1(%[src]) \n\t" \ + "lbu %[temp2], 0(%[src]) \n\t" \ + "addiu %[src], %[src], 1 \n\t" \ +- ".if "#INVERSE" \n\t" \ ++ ".if " #INVERSE " \n\t" \ + "addu %[temp3], %[temp1], %[temp2] \n\t" \ + "sb %[temp3], -1(%[src]) \n\t" \ + ".else \n\t" \ +@@ -131,7 +131,7 @@ static WEBP_INLINE void PredictLine(const uint8_t* src, uint8_t* dst, + "ulw %[temp3], 4(%[src]) \n\t" \ + "ulw %[temp4], 4(%[pred]) \n\t" \ + "addiu %[src], %[src], 8 \n\t" \ +- ".if "#INVERSE" \n\t" \ ++ ".if " #INVERSE " \n\t" \ + "addu.qb %[temp5], %[temp1], %[temp2] \n\t" \ + "addu.qb %[temp6], %[temp3], %[temp4] \n\t" \ + ".else \n\t" \ +@@ -152,7 +152,7 @@ static WEBP_INLINE void PredictLine(const uint8_t* src, uint8_t* dst, + "lbu %[temp2], 0(%[pred]) \n\t" \ + "addiu %[src], %[src], 1 \n\t" \ + "addiu %[pred], %[pred], 1 \n\t" \ +- ".if "#INVERSE" \n\t" \ ++ ".if " #INVERSE " \n\t" \ + "addu %[temp3], %[temp1], %[temp2] \n\t" \ + ".else \n\t" \ + "subu %[temp3], %[temp1], %[temp2] \n\t" \ +@@ -177,7 +177,7 @@ static WEBP_INLINE void PredictLine(const uint8_t* src, uint8_t* dst, + __asm__ volatile ( \ + "lbu %[temp1], 0(%[src]) \n\t" \ + "lbu %[temp2], 0(%[pred]) \n\t" \ +- ".if "#INVERSE" \n\t" \ ++ ".if " #INVERSE " \n\t" \ + "addu %[temp3], %[temp1], %[temp2] \n\t" \ + ".else \n\t" \ + "subu %[temp3], %[temp1], %[temp2] \n\t" \ +diff --git a/Source/LibWebP/src/dsp/dsp.lossless_mips32.c b/Source/LibWebP/src/dsp/dsp.lossless_mips32.c +index 68fbe85..abe97c1 100644 +--- a/Source/LibWebP/src/dsp/dsp.lossless_mips32.c ++++ b/Source/LibWebP/src/dsp/dsp.lossless_mips32.c +@@ -285,28 +285,28 @@ static VP8LStreaks HuffmanCostCombinedCount(const uint32_t* X, + // literal_ and successive histograms could be unaligned + // so we must use ulw and usw + #define ADD_TO_OUT(A, B, C, D, E, P0, P1, P2) \ +- "ulw %[temp0], "#A"(%["#P0"]) \n\t" \ +- "ulw %[temp1], "#B"(%["#P0"]) \n\t" \ +- "ulw %[temp2], "#C"(%["#P0"]) \n\t" \ +- "ulw %[temp3], "#D"(%["#P0"]) \n\t" \ +- "ulw %[temp4], "#A"(%["#P1"]) \n\t" \ +- "ulw %[temp5], "#B"(%["#P1"]) \n\t" \ +- "ulw %[temp6], "#C"(%["#P1"]) \n\t" \ +- "ulw %[temp7], "#D"(%["#P1"]) \n\t" \ ++ "ulw %[temp0], " #A "(%[" #P0 "]) \n\t" \ ++ "ulw %[temp1], " #B "(%[" #P0 "]) \n\t" \ ++ "ulw %[temp2], " #C "(%[" #P0 "]) \n\t" \ ++ "ulw %[temp3], " #D "(%[" #P0 "]) \n\t" \ ++ "ulw %[temp4], " #A "(%[" #P1 "]) \n\t" \ ++ "ulw %[temp5], " #B "(%[" #P1 "]) \n\t" \ ++ "ulw %[temp6], " #C "(%[" #P1 "]) \n\t" \ ++ "ulw %[temp7], " #D "(%[" #P1 "]) \n\t" \ + "addu %[temp4], %[temp4], %[temp0] \n\t" \ + "addu %[temp5], %[temp5], %[temp1] \n\t" \ + "addu %[temp6], %[temp6], %[temp2] \n\t" \ + "addu %[temp7], %[temp7], %[temp3] \n\t" \ +- "addiu %["#P0"], %["#P0"], 16 \n\t" \ +- ".if "#E" == 1 \n\t" \ +- "addiu %["#P1"], %["#P1"], 16 \n\t" \ ++ "addiu %[" #P0 "], %[" #P0 "], 16 \n\t" \ ++ ".if " #E " == 1 \n\t" \ ++ "addiu %[" #P1 "], %[" #P1 "], 16 \n\t" \ + ".endif \n\t" \ +- "usw %[temp4], "#A"(%["#P2"]) \n\t" \ +- "usw %[temp5], "#B"(%["#P2"]) \n\t" \ +- "usw %[temp6], "#C"(%["#P2"]) \n\t" \ +- "usw %[temp7], "#D"(%["#P2"]) \n\t" \ +- "addiu %["#P2"], %["#P2"], 16 \n\t" \ +- "bne %["#P0"], %[LoopEnd], 1b \n\t" \ ++ "usw %[temp4], " #A "(%[" #P2 "]) \n\t" \ ++ "usw %[temp5], " #B "(%[" #P2 "]) \n\t" \ ++ "usw %[temp6], " #C "(%[" #P2 "]) \n\t" \ ++ "usw %[temp7], " #D "(%[" #P2 "]) \n\t" \ ++ "addiu %[" #P2 "], %[" #P2 "], 16 \n\t" \ ++ "bne %[" #P0 "], %[LoopEnd], 1b \n\t" \ + ".set pop \n\t" \ + + #define ASM_END_COMMON_0 \ +diff --git a/Source/LibWebP/src/dsp/dsp.lossless_mips_dsp_r2.c b/Source/LibWebP/src/dsp/dsp.lossless_mips_dsp_r2.c +index 821cda9..31ac181 100644 +--- a/Source/LibWebP/src/dsp/dsp.lossless_mips_dsp_r2.c ++++ b/Source/LibWebP/src/dsp/dsp.lossless_mips_dsp_r2.c +@@ -29,14 +29,14 @@ static void FUNC_NAME(const TYPE* src, \ + for (x = 0; x < (width >> 2); ++x) { \ + int tmp1, tmp2, tmp3, tmp4; \ + __asm__ volatile ( \ +- ".ifc "#TYPE", uint8_t \n\t" \ ++ ".ifc " #TYPE ", uint8_t \n\t" \ + "lbu %[tmp1], 0(%[src]) \n\t" \ + "lbu %[tmp2], 1(%[src]) \n\t" \ + "lbu %[tmp3], 2(%[src]) \n\t" \ + "lbu %[tmp4], 3(%[src]) \n\t" \ + "addiu %[src], %[src], 4 \n\t" \ + ".endif \n\t" \ +- ".ifc "#TYPE", uint32_t \n\t" \ ++ ".ifc " #TYPE ", uint32_t \n\t" \ + "lw %[tmp1], 0(%[src]) \n\t" \ + "lw %[tmp2], 4(%[src]) \n\t" \ + "lw %[tmp3], 8(%[src]) \n\t" \ +@@ -55,7 +55,7 @@ static void FUNC_NAME(const TYPE* src, \ + "lwx %[tmp2], %[tmp2](%[color_map]) \n\t" \ + "lwx %[tmp3], %[tmp3](%[color_map]) \n\t" \ + "lwx %[tmp4], %[tmp4](%[color_map]) \n\t" \ +- ".ifc "#TYPE", uint8_t \n\t" \ ++ ".ifc " #TYPE ", uint8_t \n\t" \ + "ext %[tmp1], %[tmp1], 8, 8 \n\t" \ + "ext %[tmp2], %[tmp2], 8, 8 \n\t" \ + "ext %[tmp3], %[tmp3], 8, 8 \n\t" \ +@@ -66,7 +66,7 @@ static void FUNC_NAME(const TYPE* src, \ + "sb %[tmp4], 3(%[dst]) \n\t" \ + "addiu %[dst], %[dst], 4 \n\t" \ + ".endif \n\t" \ +- ".ifc "#TYPE", uint32_t \n\t" \ ++ ".ifc " #TYPE ", uint32_t \n\t" \ + "sw %[tmp1], 0(%[dst]) \n\t" \ + "sw %[tmp2], 4(%[dst]) \n\t" \ + "sw %[tmp3], 8(%[dst]) \n\t" \ +diff --git a/Source/LibWebP/src/dsp/dsp.upsampling_mips_dsp_r2.c b/Source/LibWebP/src/dsp/dsp.upsampling_mips_dsp_r2.c +index a7864a0..cb3adfe 100644 +--- a/Source/LibWebP/src/dsp/dsp.upsampling_mips_dsp_r2.c ++++ b/Source/LibWebP/src/dsp/dsp.upsampling_mips_dsp_r2.c +@@ -34,15 +34,15 @@ + G = G - t2 + kGCst; \ + B = B + kBCst; \ + __asm__ volatile ( \ +- "shll_s.w %["#R"], %["#R"], 9 \n\t" \ +- "shll_s.w %["#G"], %["#G"], 9 \n\t" \ +- "shll_s.w %["#B"], %["#B"], 9 \n\t" \ +- "precrqu_s.qb.ph %["#R"], %["#R"], $zero \n\t" \ +- "precrqu_s.qb.ph %["#G"], %["#G"], $zero \n\t" \ +- "precrqu_s.qb.ph %["#B"], %["#B"], $zero \n\t" \ +- "srl %["#R"], %["#R"], 24 \n\t" \ +- "srl %["#G"], %["#G"], 24 \n\t" \ +- "srl %["#B"], %["#B"], 24 \n\t" \ ++ "shll_s.w %[" #R "], %[" #R "], 9 \n\t" \ ++ "shll_s.w %[" #G "], %[" #G "], 9 \n\t" \ ++ "shll_s.w %[" #B "], %[" #B "], 9 \n\t" \ ++ "precrqu_s.qb.ph %[" #R "], %[" #R "], $zero \n\t" \ ++ "precrqu_s.qb.ph %[" #G "], %[" #G "], $zero \n\t" \ ++ "precrqu_s.qb.ph %[" #B "], %[" #B "], $zero \n\t" \ ++ "srl %[" #R "], %[" #R "], 24 \n\t" \ ++ "srl %[" #G "], %[" #G "], 24 \n\t" \ ++ "srl %[" #B "], %[" #B "], 24 \n\t" \ + : [R]"+r"(R), [G]"+r"(G), [B]"+r"(B) \ + : \ + ); \ +diff --git a/Source/LibWebP/src/dsp/dsp.yuv_mips_dsp_r2.c b/Source/LibWebP/src/dsp/dsp.yuv_mips_dsp_r2.c +index 66adde5..51cbe9e 100644 +--- a/Source/LibWebP/src/dsp/dsp.yuv_mips_dsp_r2.c ++++ b/Source/LibWebP/src/dsp/dsp.yuv_mips_dsp_r2.c +@@ -39,12 +39,12 @@ + "addu %[temp5], %[temp0], %[temp1] \n\t" \ + "subu %[temp6], %[temp0], %[temp2] \n\t" \ + "addu %[temp7], %[temp0], %[temp4] \n\t" \ +-".if "#K" \n\t" \ ++".if " #K " \n\t" \ + "lbu %[temp0], 1(%[y]) \n\t" \ + ".endif \n\t" \ + "shll_s.w %[temp5], %[temp5], 9 \n\t" \ + "shll_s.w %[temp6], %[temp6], 9 \n\t" \ +-".if "#K" \n\t" \ ++".if " #K " \n\t" \ + "mul %[temp0], %[t_con_5], %[temp0] \n\t" \ + ".endif \n\t" \ + "shll_s.w %[temp7], %[temp7], 9 \n\t" \ +@@ -54,9 +54,9 @@ + "srl %[temp5], %[temp5], 24 \n\t" \ + "srl %[temp6], %[temp6], 24 \n\t" \ + "srl %[temp7], %[temp7], 24 \n\t" \ +- "sb %[temp5], "#R"(%[dst]) \n\t" \ +- "sb %[temp6], "#G"(%[dst]) \n\t" \ +- "sb %[temp7], "#B"(%[dst]) \n\t" \ ++ "sb %[temp5], " #R "(%[dst]) \n\t" \ ++ "sb %[temp6], " #G "(%[dst]) \n\t" \ ++ "sb %[temp7], " #B "(%[dst]) \n\t" \ + + #define ASM_CLOBBER_LIST() \ + : [temp0]"=&r"(temp0), [temp1]"=&r"(temp1), [temp2]"=&r"(temp2), \ +-- +2.1.4 + diff --git a/package/libfribidi/libfribidi.hash b/package/libfribidi/libfribidi.hash index 003944a98a6..79b5dd31852 100644 --- a/package/libfribidi/libfribidi.hash +++ b/package/libfribidi/libfribidi.hash @@ -1,2 +1,2 @@ -# From http://www.fribidi.org/download/fribidi-0.19.6.tar.bz2.sha256 -sha256 cba8b7423c817e5adf50d28ec9079d14eafcec9127b9e8c8f1960c5ad585e17d fribidi-0.19.6.tar.bz2 +# From http://www.fribidi.org/download/fribidi-0.19.7.tar.bz2.sha256 +sha256 08222a6212bbc2276a2d55c3bf370109ae4a35b689acbc66571ad2a670595a8e fribidi-0.19.7.tar.bz2 diff --git a/package/libfribidi/libfribidi.mk b/package/libfribidi/libfribidi.mk index 12e766408d8..4e82a5e4df8 100644 --- a/package/libfribidi/libfribidi.mk +++ b/package/libfribidi/libfribidi.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBFRIBIDI_VERSION = 0.19.6 +LIBFRIBIDI_VERSION = 0.19.7 LIBFRIBIDI_SOURCE = fribidi-$(LIBFRIBIDI_VERSION).tar.bz2 LIBFRIBIDI_SITE = http://www.fribidi.org/download LIBFRIBIDI_LICENSE = LGPLv2.1+ @@ -16,9 +16,9 @@ LIBFRIBIDI_AUTORECONF = YES LIBFRIBIDI_DEPENDENCIES = host-pkgconf ifeq ($(BR2_PACKAGE_LIBGLIB2),y) - LIBFRIBIDI_DEPENDENCIES += libglib2 +LIBFRIBIDI_DEPENDENCIES += libglib2 else - LIBFRIBIDI_CONF_OPTS += --with-glib=no +LIBFRIBIDI_CONF_OPTS += --with-glib=no endif $(eval $(autotools-package)) diff --git a/package/libfslcodec/libfslcodec.hash b/package/libfslcodec/libfslcodec.hash new file mode 100644 index 00000000000..d977a66a44a --- /dev/null +++ b/package/libfslcodec/libfslcodec.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 de1251286ebbc1541452f2f70fbd73e42c58f95630d65d1f9aaabf10a6caa38f libfslcodec-4.0.7.bin diff --git a/package/libfslcodec/libfslcodec.mk b/package/libfslcodec/libfslcodec.mk index 665588a18d3..e151c662b6d 100644 --- a/package/libfslcodec/libfslcodec.mk +++ b/package/libfslcodec/libfslcodec.mk @@ -4,13 +4,13 @@ # ################################################################################ -LIBFSLCODEC_VERSION = 4.0.2 +LIBFSLCODEC_VERSION = 4.0.7 LIBFSLCODEC_SITE = $(FREESCALE_IMX_SITE) LIBFSLCODEC_SOURCE = libfslcodec-$(LIBFSLCODEC_VERSION).bin LIBFSLCODEC_INSTALL_STAGING = YES LIBFSLCODEC_LICENSE = Freescale Semiconductor Software License Agreement, BSD-3c (flac, ogg headers) -LIBFSLCODEC_LICENSE_FILES = EULA EULA.txt +LIBFSLCODEC_LICENSE_FILES = EULA COPYING LIBFSLCODEC_REDISTRIBUTE = NO define LIBFSLCODEC_EXTRACT_CMDS diff --git a/package/libfslparser/libfslparser.hash b/package/libfslparser/libfslparser.hash new file mode 100644 index 00000000000..976a2d21d60 --- /dev/null +++ b/package/libfslparser/libfslparser.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 e7c248e64db03c3ddd84f50ae408e560f8f5819e58c487a5dec5141bc384ae83 libfslparser-4.0.7.bin diff --git a/package/libfslparser/libfslparser.mk b/package/libfslparser/libfslparser.mk index 116a0a25c2e..c5efc85c9af 100644 --- a/package/libfslparser/libfslparser.mk +++ b/package/libfslparser/libfslparser.mk @@ -4,13 +4,13 @@ # ################################################################################ -LIBFSLPARSER_VERSION = 4.0.2 +LIBFSLPARSER_VERSION = 4.0.7 LIBFSLPARSER_SITE = $(FREESCALE_IMX_SITE) LIBFSLPARSER_SOURCE = libfslparser-$(LIBFSLPARSER_VERSION).bin LIBFSLPARSER_INSTALL_STAGING = YES LIBFSLPARSER_LICENSE = Freescale Semiconductor Software License Agreement -LIBFSLPARSER_LICENSE_FILES = EULA EULA.txt +LIBFSLPARSER_LICENSE_FILES = EULA COPYING LIBFSLPARSER_REDISTRIBUTE = NO define LIBFSLPARSER_EXTRACT_CMDS diff --git a/package/libfslvpuwrap/libfslvpuwrap.hash b/package/libfslvpuwrap/libfslvpuwrap.hash new file mode 100644 index 00000000000..8e6ba6147f1 --- /dev/null +++ b/package/libfslvpuwrap/libfslvpuwrap.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 e4bfe218d17ec66acf8cd97d08fef8ef71ab6762d4c8cf0d0193eca5f599b4c9 libfslvpuwrap-1.0.61.bin diff --git a/package/libfslvpuwrap/libfslvpuwrap.mk b/package/libfslvpuwrap/libfslvpuwrap.mk index 625f58654d2..b3d6f0cf0ec 100644 --- a/package/libfslvpuwrap/libfslvpuwrap.mk +++ b/package/libfslvpuwrap/libfslvpuwrap.mk @@ -4,14 +4,14 @@ # ################################################################################ -LIBFSLVPUWRAP_VERSION = 1.0.57 +LIBFSLVPUWRAP_VERSION = 1.0.61 LIBFSLVPUWRAP_SITE = $(FREESCALE_IMX_SITE) LIBFSLVPUWRAP_SOURCE = libfslvpuwrap-$(LIBFSLVPUWRAP_VERSION).bin LIBFSLVPUWRAP_DEPENDENCIES = imx-vpu LIBFSLVPUWRAP_INSTALL_STAGING = YES LIBFSLVPUWRAP_LICENSE = Freescale Semiconductor Software License Agreement -LIBFSLVPUWRAP_LICENSE_FILES = EULA EULA.txt +LIBFSLVPUWRAP_LICENSE_FILES = EULA COPYING LIBFSLVPUWRAP_REDISTRIBUTE = NO define LIBFSLVPUWRAP_EXTRACT_CMDS diff --git a/package/libftdi/Config.in b/package/libftdi/Config.in index 76b30b1ba1a..8e02cb914c5 100644 --- a/package/libftdi/Config.in +++ b/package/libftdi/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_LIBFTDI bool "libftdi" depends on BR2_TOOLCHAIN_HAS_THREADS # libusb - depends on BR2_ARCH_HAS_ATOMICS select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_LIBUSB_COMPAT help @@ -12,13 +11,19 @@ config BR2_PACKAGE_LIBFTDI if BR2_PACKAGE_LIBFTDI config BR2_PACKAGE_LIBTFDI_CPP - depends on BR2_INSTALL_LIBSTDCPP bool "C++ bindings" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS + depends on BR2_USE_WCHAR + select BR2_PACKAGE_BOOST help C++ bindings for libftdi +comment "libftdi C++ bindings need a toolchain w/ wchar, C++" + depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS + depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP + endif # BR2_PACKAGE_LIBFTDI comment "libftdi needs a toolchain w/ threads" - depends on BR2_ARCH_HAS_ATOMICS depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libftdi/libftdi.mk b/package/libftdi/libftdi.mk index 8370b0a1604..28f20e35473 100644 --- a/package/libftdi/libftdi.mk +++ b/package/libftdi/libftdi.mk @@ -15,6 +15,7 @@ LIBFDTI_CONF_OPTS = --without-examples # configure detect it automaticaly so we need to force it ifeq ($(BR2_PACKAGE_LIBTFDI_CPP),y) +LIBFTDI_DEPENDENCIES += boost LIBFDTI_CONF_OPTS += --enable-libftdipp else LIBFDTI_CONF_OPTS += --disable-libftdipp diff --git a/package/libftdi1/libftdi1.mk b/package/libftdi1/libftdi1.mk index 201feb73b46..e77f37bb589 100644 --- a/package/libftdi1/libftdi1.mk +++ b/package/libftdi1/libftdi1.mk @@ -6,7 +6,7 @@ LIBFTDI1_VERSION = 1.2 LIBFTDI1_SOURCE = libftdi1-$(LIBFTDI1_VERSION).tar.bz2 -LIBFTDI1_SITE = http://www.intra2net.com/en/developer/libftdi/download/ +LIBFTDI1_SITE = http://www.intra2net.com/en/developer/libftdi/download LIBFTDI1_INSTALL_STAGING = YES LIBFTDI1_DEPENDENCIES = libusb LIBFTDI1_LICENSE = LGPLv2 (libftdi1), GPLv2 with exception (ftdipp1) diff --git a/package/libfuse/Config.in b/package/libfuse/Config.in index deedb5afd0e..2b0e31a9913 100644 --- a/package/libfuse/Config.in +++ b/package/libfuse/Config.in @@ -7,7 +7,7 @@ config BR2_PACKAGE_LIBFUSE help FUSE (Filesystem in UserSpacE) - http://fuse.sourceforge.net/ + https://github.com/libfuse/libfuse comment "libfuse needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU diff --git a/package/libfuse/libfuse.hash b/package/libfuse/libfuse.hash index b1bbee33b5c..c9c23022390 100644 --- a/package/libfuse/libfuse.hash +++ b/package/libfuse/libfuse.hash @@ -1,3 +1,2 @@ -# From http://sourceforge.net/projects/fuse/files/fuse-2.X/2.9.4/ -md5 ecb712b5ffc6dffd54f4a405c9b372d8 fuse-2.9.4.tar.gz -sha1 c8b25419f33624dc5240af6a5d26f2c04367ca71 fuse-2.9.4.tar.gz +# Locally calculated after checking pgp signature +sha256 579f371cc5ffc1afca7057512bf7d52988a9ede57859a7c55e5b9f72435cdbb5 fuse-2.9.5.tar.gz diff --git a/package/libfuse/libfuse.mk b/package/libfuse/libfuse.mk index 7a28a81b92c..bece18df749 100644 --- a/package/libfuse/libfuse.mk +++ b/package/libfuse/libfuse.mk @@ -4,10 +4,10 @@ # ################################################################################ -LIBFUSE_VERSION = 2.9.4 +LIBFUSE_VERSION = 2.9.5 LIBFUSE_SOURCE = fuse-$(LIBFUSE_VERSION).tar.gz -LIBFUSE_SITE = http://downloads.sourceforge.net/project/fuse/fuse-2.X/$(LIBFUSE_VERSION) -LIBFUSE_LICENSE = GPLv2 LGPLv2.1 +LIBFUSE_SITE = https://github.com/libfuse/libfuse/releases/download/fuse_$(subst .,_,$(LIBFUSE_VERSION)) +LIBFUSE_LICENSE = GPLv2, LGPLv2.1 LIBFUSE_LICENSE_FILES = COPYING COPYING.LIB LIBFUSE_INSTALL_STAGING = YES LIBFUSE_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv) diff --git a/package/libg7221/Config.in b/package/libg7221/Config.in new file mode 100644 index 00000000000..e057d289fb1 --- /dev/null +++ b/package/libg7221/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_LIBG7221 + bool "libg7221" + help + libg722_1 is a library for the ITU G.722.1 and Annex C + wideband speech codecs. + + http://www.soft-switch.org diff --git a/package/libg7221/libg7221.mk b/package/libg7221/libg7221.mk new file mode 100644 index 00000000000..813af11cee2 --- /dev/null +++ b/package/libg7221/libg7221.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# libg7221 +# +################################################################################ + +LIBG7221_VERSION = dbfc29d4806ecdace50379a2f4d68a992a6fec34 +# we use the FreeSwitch fork because it contains pkgconf support +LIBG7221_SITE = https://freeswitch.org/stash/scm/sd/libg7221.git +LIBG7221_SITE_METHOD = git +LIBG7221_LICENSE = Polycom +LIBG7221_LICENSE_FILES = COPYING +LIBG7221_AUTORECONF = YES +LIBG7221_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/libgail/Config.in b/package/libgail/Config.in index 5e4f03bdaf5..821a922fa5d 100644 --- a/package/libgail/Config.in +++ b/package/libgail/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_LIBGAIL depends on BR2_TOOLCHAIN_HAS_THREADS # pango -> libglib2 depends on BR2_USE_MMU # pango -> libglib2 depends on BR2_INSTALL_LIBSTDCPP # pango -> freetype - depends on BR2_ARCH_HAS_ATOMICS # pango -> cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz depends on BR2_PACKAGE_LIBGTK2 depends on BR2_DEPRECATED_SINCE_2015_08 select BR2_PACKAGE_PANGO @@ -27,5 +27,5 @@ comment "libgail needs a toolchain w/ C++, wchar, threads" depends on BR2_PACKAGE_LIBGTK2 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_DEPRECATED_SINCE_2015_08 diff --git a/package/libgcrypt/libgcrypt.hash b/package/libgcrypt/libgcrypt.hash index 9cad1c49b19..272d332353c 100644 --- a/package/libgcrypt/libgcrypt.hash +++ b/package/libgcrypt/libgcrypt.hash @@ -1,2 +1,4 @@ -# From http://lists.gnupg.org/pipermail/gnupg-announce/2015q1/000364.html -sha1 9456e7b64db9df8360a1407a38c8c958da80bbf1 libgcrypt-1.6.3.tar.bz2 +# From https://lists.gnupg.org/pipermail/gnupg-announce/2016q1/000384.html +sha1 c3a5a13e717f7b3e3895650afc1b6e0d3fe9c726 libgcrypt-1.6.5.tar.bz2 +# Calculated based on the hash above +sha256 f49ebc5842d455ae7019def33eb5a014a0f07a2a8353dc3aa50a76fd1dafa924 libgcrypt-1.6.5.tar.bz2 diff --git a/package/libgcrypt/libgcrypt.mk b/package/libgcrypt/libgcrypt.mk index 9153fb847d1..7c27a223208 100644 --- a/package/libgcrypt/libgcrypt.mk +++ b/package/libgcrypt/libgcrypt.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBGCRYPT_VERSION = 1.6.3 +LIBGCRYPT_VERSION = 1.6.5 LIBGCRYPT_SOURCE = libgcrypt-$(LIBGCRYPT_VERSION).tar.bz2 LIBGCRYPT_LICENSE = LGPLv2.1+ LIBGCRYPT_LICENSE_FILES = COPYING.LIB diff --git a/package/libgdiplus/0001-Fix-compile-error-when-cross-compiling.patch b/package/libgdiplus/0001-Fix-compile-error-when-cross-compiling.patch new file mode 100644 index 00000000000..db67d467df4 --- /dev/null +++ b/package/libgdiplus/0001-Fix-compile-error-when-cross-compiling.patch @@ -0,0 +1,35 @@ +From daf96b07c02734dceaf3c3b78c10e4e758b74d9e Mon Sep 17 00:00:00 2001 +From: Sergio Prado +Date: Fri, 18 Dec 2015 15:08:58 -0200 +Subject: [PATCH 1/1] Fix compile error when cross-compiling. + +When cross-compiling with libjpeg enabled, we can get errors like the +following when linking: + +sh-linux-gnu-gcc: ERROR: unsafe header/library path used in +cross-compilation: '/lib' + +That's because there is an error in the configure script that are not +generating ldflags correctly, and are trying to link with -L/lib. + +Signed-off-by: Sergio Prado +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 772d5fc9d87a..58d55ade48e3 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -223,7 +223,7 @@ AC_ARG_WITH([libjpeg], + jpeg_ok=no) + AC_MSG_RESULT($jpeg_ok) + if test "$jpeg_ok" = yes; then +- JPEG='jpeg'; LIBJPEG='-L${libjpeg_prefix}/lib -ljpeg' ++ JPEG='jpeg'; LIBJPEG="-L${libjpeg_prefix}/lib -ljpeg" + else + AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***) + fi +-- +1.9.1 + diff --git a/package/libgdiplus/Config.in b/package/libgdiplus/Config.in new file mode 100644 index 00000000000..68625031e26 --- /dev/null +++ b/package/libgdiplus/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_LIBGDIPLUS + bool "libgdiplus" + select BR2_PACKAGE_XLIB_LIBXFT + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_CAIRO + select BR2_PACKAGE_LIBPNG + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_WCHAR # libglib2 -> gettext + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_MMU # libglib2 + help + An Open Source implementation of the GDI+ API. + + https://github.com/mono/libgdiplus + +comment "libgdiplus needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on BR2_PACKAGE_XORG7 + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libgdiplus/libgdiplus.hash b/package/libgdiplus/libgdiplus.hash new file mode 100644 index 00000000000..f7fdcb58a46 --- /dev/null +++ b/package/libgdiplus/libgdiplus.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 98f8a8e58ed22e136c4ac6eaafbc860757f5a97901ecc0ea357e2b6e4cfa2be5 libgdiplus-4.2.tar.gz diff --git a/package/libgdiplus/libgdiplus.mk b/package/libgdiplus/libgdiplus.mk new file mode 100644 index 00000000000..aac859f865a --- /dev/null +++ b/package/libgdiplus/libgdiplus.mk @@ -0,0 +1,56 @@ +################################################################################ +# +# libgdiplus +# +################################################################################ + +LIBGDIPLUS_VERSION = 4.2 +LIBGDIPLUS_SITE = $(call github,mono,libgdiplus,$(LIBGDIPLUS_VERSION)) + +# Although there is a LICENSE file thas specifies LGPL or MPLv1.1, +# looks like it is incorrect. The actual source files specify that +# they're licensed under MIT, and so does the COPYING file (and they +# all predate the addition of the LICENSE file). +LIBGDIPLUS_LICENSE = MIT +LIBGDIPLUS_LICENSE_FILES = COPYING src/carbon-private.h + +LIBGDIPLUS_INSTALL_STAGING = YES + +# github tarball doesn't have configure +LIBGDIPLUS_AUTORECONF = YES + +LIBGDIPLUS_DEPENDENCIES = xlib_libXft libglib2 cairo libpng host-pkgconf + +# API changes in recent versions of libgif makes it incompatible with +# this version of libgdiplus, so we are disabling it for now. +LIBGDIPLUS_CONF_OPTS = --without-libgif + +# there is a bug in the configure script that enables pango support +# when passing --without-pango, so let's just not use it +ifeq ($(BR2_PACKAGE_PANGO),y) +LIBGDIPLUS_CONF_OPTS += --with-pango +LIBGDIPLUS_DEPENDENCIES += pango +endif + +ifeq ($(BR2_PACKAGE_LIBEXIF),y) +LIBGDIPLUS_CONF_OPTS += --with-libexif +LIBGDIPLUS_DEPENDENCIES += libexif +else +LIBGDIPLUS_CONF_OPTS += --without-libexif +endif + +ifeq ($(BR2_PACKAGE_JPEG),y) +LIBGDIPLUS_CONF_OPTS += --with-libjpeg=$(STAGING_DIR)/usr +LIBGDIPLUS_DEPENDENCIES += jpeg +else +LIBGDIPLUS_CONF_OPTS += --without-libjpeg +endif + +ifeq ($(BR2_PACKAGE_TIFF),y) +LIBGDIPLUS_CONF_OPTS += --with-libtiff=$(STAGING_DIR)/usr +LIBGDIPLUS_DEPENDENCIES += tiff +else +LIBGDIPLUS_CONF_OPTS += --without-libtiff +endif + +$(eval $(autotools-package)) diff --git a/package/libglew/libglew.hash b/package/libglew/libglew.hash index 9ac811ca7a0..5e12785cb17 100644 --- a/package/libglew/libglew.hash +++ b/package/libglew/libglew.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 99c41320b63f6860869b5fb9af9a1854b15582796c64ee3dfd7096dc0c89f307 glew-1.10.0.tgz +sha256 aa25dc48ed84b0b64b8d41cdd42c8f40f149c37fa2ffa39cd97f42c78d128bc7 glew-1.13.0.tgz diff --git a/package/libglew/libglew.mk b/package/libglew/libglew.mk index 938ec675493..dc73f396218 100644 --- a/package/libglew/libglew.mk +++ b/package/libglew/libglew.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBGLEW_VERSION = 1.10.0 +LIBGLEW_VERSION = 1.13.0 LIBGLEW_SOURCE = glew-$(LIBGLEW_VERSION).tgz LIBGLEW_SITE = http://sourceforge.net/projects/glew/files/glew/$(LIBGLEW_VERSION) LIBGLEW_LICENSE = BSD-3c, MIT diff --git a/package/libglfw/Config.in b/package/libglfw/Config.in new file mode 100644 index 00000000000..045bd269e41 --- /dev/null +++ b/package/libglfw/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_LIBGLFW + bool "libglfw" + depends on BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_HAS_LIBGL + select BR2_PACKAGE_XLIB_LIBXCURSOR + select BR2_PACKAGE_XLIB_LIBXEXT + select BR2_PACKAGE_XLIB_LIBXINERAMA + select BR2_PACKAGE_XLIB_LIBXRANDR + help + GLFW is an Open Source, multi-platform library for creating + windows with OpenGL contexts and receiving input and events. + + http://www.glfw.org + +comment "libglfw depends on X.org and needs an OpenGL backend" + depends on !BR2_PACKAGE_XORG7 || !BR2_PACKAGE_HAS_LIBGL diff --git a/package/libglfw/libglfw.hash b/package/libglfw/libglfw.hash new file mode 100644 index 00000000000..3226aad22df --- /dev/null +++ b/package/libglfw/libglfw.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 6ac642087682aaf7f8397761a41a99042b2c656498217a1c63ba9706d1eef122 libglfw-3.1.2.tar.gz diff --git a/package/libglfw/libglfw.mk b/package/libglfw/libglfw.mk new file mode 100644 index 00000000000..0b1730d523d --- /dev/null +++ b/package/libglfw/libglfw.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# libglfw +# +################################################################################ + +LIBGLFW_VERSION = 3.1.2 +LIBGLFW_SITE = $(call github,glfw,glfw,$(LIBGLFW_VERSION)) +LIBGLFW_INSTALL_STAGING = YES +LIBGLFW_DEPENDENCIES = libgl xlib_libXcursor xlib_libXext \ + xlib_libXinerama xlib_libXrandr +LIBGLFW_LICENSE = zlib +LIBGLFW_LICENSE_FILES = COPYING.txt + +LIBGLFW_CONF_OPTS += \ + -DGLFW_BUILD_EXAMPLES=OFF \ + -DGLFW_BUILD_TESTS=OFF \ + -DGLFW_BUILD_DOCS=OFF + +ifeq ($(BR2_PACKAGE_XLIB_LIBXI),y) +LIBGLFW_DEPENDENCIES += xlib_libXi +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXXF86VM),y) +LIBGLFW_DEPENDENCIES += xlib_libXxf86vm +endif + +$(eval $(cmake-package)) diff --git a/package/libglib2/0002-disable-tests.patch b/package/libglib2/0002-disable-tests.patch new file mode 100644 index 00000000000..1b0c5355716 --- /dev/null +++ b/package/libglib2/0002-disable-tests.patch @@ -0,0 +1,43 @@ +Disable tests, some of them need python and sometimes host-python +gets mixed with distro python leading to build failures. + +Signed-off-by: Gustavo Zacarias + +diff -Nura glib-2.46.1.orig/gio/Makefile.am glib-2.46.1/gio/Makefile.am +--- glib-2.46.1.orig/gio/Makefile.am 2015-10-20 16:59:03.042212468 -0300 ++++ glib-2.46.1/gio/Makefile.am 2015-10-20 17:32:26.763146133 -0300 +@@ -233,7 +233,7 @@ + platform_deps += win32/libgiowin32.la + endif + +-SUBDIRS += . tests ++SUBDIRS += . + + if HAVE_FAM + SUBDIRS += fam +diff -Nura glib-2.46.1.orig/glib/Makefile.am glib-2.46.1/glib/Makefile.am +--- glib-2.46.1.orig/glib/Makefile.am 2015-10-20 16:59:03.066213318 -0300 ++++ glib-2.46.1/glib/Makefile.am 2015-10-20 17:33:23.537155988 -0300 +@@ -33,8 +33,8 @@ + MAYBE_PCRE = pcre + endif + +-SUBDIRS = libcharset $(PRINTF_SUBDIR) $(MAYBE_PCRE) update-pcre . tests +-DIST_SUBDIRS = libcharset gnulib pcre update-pcre tests ++SUBDIRS = libcharset $(PRINTF_SUBDIR) $(MAYBE_PCRE) update-pcre . ++DIST_SUBDIRS = libcharset gnulib pcre update-pcre + + AM_CPPFLAGS = \ + $(glib_INCLUDES) \ +diff -Nura glib-2.46.1.orig/Makefile.am glib-2.46.1/Makefile.am +--- glib-2.46.1.orig/Makefile.am 2015-10-20 16:59:03.003211087 -0300 ++++ glib-2.46.1/Makefile.am 2015-10-20 17:32:20.923939420 -0300 +@@ -6,7 +6,7 @@ + + ACLOCAL_AMFLAGS = -I m4macros ${ACLOCAL_FLAGS} + +-SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs tests ++SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs + DIST_SUBDIRS = $(SUBDIRS) build + + bin_SCRIPTS = glib-gettextize diff --git a/package/libglib2/libglib2.hash b/package/libglib2/libglib2.hash index f3c4a6641c9..7bce911fe2b 100644 --- a/package/libglib2/libglib2.hash +++ b/package/libglib2/libglib2.hash @@ -1,2 +1,2 @@ -# https://download.gnome.org/sources/glib/2.44/glib-2.44.1.sha256sum -sha256 8811deacaf8a503d0a9b701777ea079ca6a4277be10e3d730d2112735d5eca07 glib-2.44.1.tar.xz +# https://download.gnome.org/sources/glib/2.46/glib-2.46.2.sha256sum +sha256 5031722e37036719c1a09163cc6cf7c326e4c4f1f1e074b433c156862bd733db glib-2.46.2.tar.xz diff --git a/package/libglib2/libglib2.mk b/package/libglib2/libglib2.mk index 516f5fa3859..ea45f4aa85a 100644 --- a/package/libglib2/libglib2.mk +++ b/package/libglib2/libglib2.mk @@ -4,8 +4,8 @@ # ################################################################################ -LIBGLIB2_VERSION_MAJOR = 2.44 -LIBGLIB2_VERSION = $(LIBGLIB2_VERSION_MAJOR).1 +LIBGLIB2_VERSION_MAJOR = 2.46 +LIBGLIB2_VERSION = $(LIBGLIB2_VERSION_MAJOR).2 LIBGLIB2_SOURCE = glib-$(LIBGLIB2_VERSION).tar.xz LIBGLIB2_SITE = http://ftp.gnome.org/pub/gnome/sources/glib/$(LIBGLIB2_VERSION_MAJOR) LIBGLIB2_LICENSE = LGPLv2+ @@ -85,16 +85,19 @@ else LIBGLIB2_CONF_ENV += glib_cv_have_qsort_r=yes endif +# glib/valgrind.h contains inline asm not compatible with thumb1 +ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y) +LIBGLIB2_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -marm" +endif + HOST_LIBGLIB2_CONF_OPTS = \ + --disable-coverage \ --disable-dtrace \ + --disable-fam \ + --disable-libelf \ + --disable-selinux \ --disable-systemtap \ - --disable-gcov \ - --disable-modular-tests - -LIBGLIB2_CONF_OPTS += --disable-modular-tests -ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) -LIBGLIB2_CONF_OPTS += --with-threads=none --disable-threads -endif + --disable-xattr LIBGLIB2_DEPENDENCIES = host-pkgconf host-libglib2 libffi zlib $(if $(BR2_NEEDS_GETTEXT),gettext) host-gettext @@ -104,6 +107,13 @@ ifneq ($(BR2_ENABLE_LOCALE),y) LIBGLIB2_DEPENDENCIES += libiconv endif +ifeq ($(BR2_PACKAGE_ELFUTILS),y) +LIBGLIB2_CONF_OPTS += --enable-libelf +LIBGLIB2_DEPENDENCIES += elfutils +else +LIBGLIB2_CONF_OPTS += --disable-libelf +endif + ifeq ($(BR2_PACKAGE_LIBICONV),y) LIBGLIB2_CONF_OPTS += --with-libiconv=gnu LIBGLIB2_DEPENDENCIES += libiconv diff --git a/package/libgpgme/libgpgme.mk b/package/libgpgme/libgpgme.mk index ec64d37e8e1..186809985ca 100644 --- a/package/libgpgme/libgpgme.mk +++ b/package/libgpgme/libgpgme.mk @@ -22,7 +22,7 @@ LIBGPGME_CONF_OPTS = --with-gpg=/usr/bin/gpg \ --disable-gpg-test # Handle argp-standalone or it errors out during build -ifeq ($(BR2_PACKAGE_ARGP_STANDALONE)$(BR2_TOOLCHAIN_USES_UCLIBC),yy) +ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) LIBGPGME_CONF_ENV += LIBS="-largp" LIBGPGME_DEPENDENCIES += argp-standalone endif diff --git a/package/libgsasl/libgsasl.mk b/package/libgsasl/libgsasl.mk index f2660ca4fa0..00ce8e03751 100644 --- a/package/libgsasl/libgsasl.mk +++ b/package/libgsasl/libgsasl.mk @@ -9,6 +9,14 @@ LIBGSASL_SITE = $(BR2_GNU_MIRROR)/gsasl LIBGSASL_LICENSE = LGPLv2.1+ (library), GPLv3+ (programs) LIBGSASL_LICENSE_FILES = README COPYING.LIB COPYING LIBGSASL_INSTALL_STAGING = YES -LIBGSASL_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBIDN),libidn) +# It doesn't seem to build with our libgcrypt so better be safe +LIBGSASL_CONF_OPTS = --without-libgcrypt + +ifeq ($(BR2_PACKAGE_LIBIDN),y) +LIBGSASL_CONF_OPTS += --with-libidn-prefix=$(STAGING_DIR)/usr +LIBGSASL_DEPENDENCIES += libidn +else +LIBGSASL_CONF_OPTS += --without-stringprep +endif $(eval $(autotools-package)) diff --git a/package/libgtk2/Config.in b/package/libgtk2/Config.in index 9326f442099..b6cf37e1910 100644 --- a/package/libgtk2/Config.in +++ b/package/libgtk2/Config.in @@ -17,7 +17,7 @@ config BR2_PACKAGE_LIBGTK2 depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 depends on BR2_USE_MMU # glib2 depends on BR2_INSTALL_LIBSTDCPP # pango - depends on BR2_ARCH_HAS_ATOMICS # cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz help The GTK+ version 2 graphical user interface library @@ -35,7 +35,7 @@ endif comment "libgtk2 needs a toolchain w/ wchar, threads, C++" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_PACKAGE_XORG7 depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libgtk2/libgtk2.hash b/package/libgtk2/libgtk2.hash index 21e8eb7b42c..1eb795de1c7 100644 --- a/package/libgtk2/libgtk2.hash +++ b/package/libgtk2/libgtk2.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-2.24.28.sha256sum -sha256 b2c6441e98bc5232e5f9bba6965075dcf580a8726398f7374d39f90b88ed4656 gtk+-2.24.28.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-2.24.29.sha256sum +sha256 0741c59600d3d810a223866453dc2bbb18ce4723828681ba24aa6519c37631b8 gtk+-2.24.29.tar.xz diff --git a/package/libgtk2/libgtk2.mk b/package/libgtk2/libgtk2.mk index 0617b9e4b86..17cdfcb0e8b 100644 --- a/package/libgtk2/libgtk2.mk +++ b/package/libgtk2/libgtk2.mk @@ -5,7 +5,7 @@ ################################################################################ LIBGTK2_VERSION_MAJOR = 2.24 -LIBGTK2_VERSION = $(LIBGTK2_VERSION_MAJOR).28 +LIBGTK2_VERSION = $(LIBGTK2_VERSION_MAJOR).29 LIBGTK2_SOURCE = gtk+-$(LIBGTK2_VERSION).tar.xz LIBGTK2_SITE = http://ftp.gnome.org/pub/gnome/sources/gtk+/$(LIBGTK2_VERSION_MAJOR) LIBGTK2_INSTALL_STAGING = YES @@ -15,60 +15,8 @@ LIBGTK2_LICENSE_FILES = COPYING LIBGTK2_AUTORECONF = YES LIBGTK2_CONF_ENV = \ - ac_cv_func_posix_getpwuid_r=yes \ - glib_cv_stack_grows=no \ - glib_cv_uscore=no \ - ac_cv_func_strtod=yes \ - ac_fsusage_space=yes \ - fu_cv_sys_stat_statfs2_bsize=yes \ - ac_cv_func_closedir_void=no \ - ac_cv_func_getloadavg=no \ - ac_cv_lib_util_getloadavg=no \ - ac_cv_lib_getloadavg_getloadavg=no \ - ac_cv_func_getgroups=yes \ - ac_cv_func_getgroups_works=yes \ - ac_cv_func_chown_works=yes \ - ac_cv_have_decl_euidaccess=no \ - ac_cv_func_euidaccess=no \ - ac_cv_have_decl_strnlen=yes \ - ac_cv_func_strnlen_working=yes \ - ac_cv_func_lstat_dereferences_slashed_symlink=yes \ - ac_cv_func_lstat_empty_string_bug=no \ - ac_cv_func_stat_empty_string_bug=no \ - vb_cv_func_rename_trailing_slash_bug=no \ - ac_cv_have_decl_nanosleep=yes \ - jm_cv_func_nanosleep_works=yes \ - gl_cv_func_working_utimes=yes \ - ac_cv_func_utime_null=yes \ - ac_cv_have_decl_strerror_r=yes \ - ac_cv_func_strerror_r_char_p=no \ - jm_cv_func_svid_putenv=yes \ - ac_cv_func_getcwd_null=yes \ - ac_cv_func_getdelim=yes \ - ac_cv_func_mkstemp=yes \ - utils_cv_func_mkstemp_limitations=no \ - utils_cv_func_mkdir_trailing_slash_bug=no \ - jm_cv_func_gettimeofday_clobber=no \ - gl_cv_func_working_readdir=yes \ - jm_ac_cv_func_link_follows_symlink=no \ - utils_cv_localtime_cache=no \ - ac_cv_struct_st_mtim_nsec=no \ - gl_cv_func_tzset_clobber=no \ - gl_cv_func_getcwd_null=yes \ - gl_cv_func_getcwd_path_max=yes \ - ac_cv_func_fnmatch_gnu=yes \ - am_getline_needs_run_time_check=no \ - am_cv_func_working_getline=yes \ - gl_cv_func_mkdir_trailing_slash_bug=no \ - gl_cv_func_mkstemp_limitations=no \ - ac_cv_func_working_mktime=yes \ - jm_cv_func_working_re_compile_pattern=yes \ - ac_use_included_regex=no \ - gl_cv_c_restrict=no \ ac_cv_path_GTK_UPDATE_ICON_CACHE=$(HOST_DIR)/usr/bin/gtk-update-icon-cache \ ac_cv_path_GDK_PIXBUF_CSOURCE=$(HOST_DIR)/usr/bin/gdk-pixbuf-csource \ - ac_cv_prog_F77=no \ - ac_cv_path_CUPS_CONFIG=no \ DB2HTML=false LIBGTK2_CONF_OPTS = --disable-glibtest --enable-explicit-deps=no diff --git a/package/libgtk3/Config.in b/package/libgtk3/Config.in index cdc3b2db07f..ac56b85a699 100644 --- a/package/libgtk3/Config.in +++ b/package/libgtk3/Config.in @@ -15,7 +15,7 @@ config BR2_PACKAGE_LIBGTK3 depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 depends on BR2_USE_MMU # glib2 depends on BR2_INSTALL_LIBSTDCPP # pango - depends on BR2_ARCH_HAS_ATOMICS # cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz help The GTK+ version 3 graphical user interface library @@ -40,6 +40,8 @@ config BR2_PACKAGE_LIBGTK3_X11 config BR2_PACKAGE_LIBGTK3_WAYLAND bool "GDK Wayland backend" default y + # Needs a libgtk3 bump to match API level + depends on BROKEN depends on BR2_PACKAGE_WAYLAND select BR2_PACKAGE_LIBXKBCOMMON help @@ -82,6 +84,6 @@ endif comment "libgtk3 needs a toolchain w/ wchar, threads, C++" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libgtk3/libgtk3.hash b/package/libgtk3/libgtk3.hash index de787514d77..b310aec0620 100644 --- a/package/libgtk3/libgtk3.hash +++ b/package/libgtk3/libgtk3.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/gtk+/3.14/gtk+-3.14.13.sha256sum -sha256 b1efcb1ef299f9b205e6f4512428315fd03484e5790f65bd3ac164e84ade90b0 gtk+-3.14.13.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/gtk+/3.14/gtk+-3.14.15.sha256sum +sha256 3ac87659112ced9e5ee5bd55d055faa881aafd040f26ca40b0d8ba0fa6509c83 gtk+-3.14.15.tar.xz diff --git a/package/libgtk3/libgtk3.mk b/package/libgtk3/libgtk3.mk index 80dbf947caf..d268b56d545 100644 --- a/package/libgtk3/libgtk3.mk +++ b/package/libgtk3/libgtk3.mk @@ -5,7 +5,7 @@ ################################################################################ LIBGTK3_VERSION_MAJOR = 3.14 -LIBGTK3_VERSION = $(LIBGTK3_VERSION_MAJOR).13 +LIBGTK3_VERSION = $(LIBGTK3_VERSION_MAJOR).15 LIBGTK3_SOURCE = gtk+-$(LIBGTK3_VERSION).tar.xz LIBGTK3_SITE = http://ftp.gnome.org/pub/gnome/sources/gtk+/$(LIBGTK3_VERSION_MAJOR) LIBGTK3_LICENSE = LGPLv2+ diff --git a/package/libgudev/Config.in b/package/libgudev/Config.in new file mode 100644 index 00000000000..ecaacf5fd27 --- /dev/null +++ b/package/libgudev/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_LIBGUDEV + bool "libgudev" + depends on BR2_PACKAGE_HAS_UDEV + depends on BR2_USE_WCHAR # gettext + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBGLIB2 + help + This library provides GObject bindings for libudev. It was + originally part of udev-extras, then udev, then systemd. + It's now a project on its own. Required for building some + programs that use udev, when using systemd. + + When systemd is not used, libgudev is directly provided by + eudev. + + https://wiki.gnome.org/Projects/libgudev + +comment "libgudev needs udev /dev handling and a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_PACKAGE_HAS_UDEV diff --git a/package/libgudev/libgudev.hash b/package/libgudev/libgudev.hash new file mode 100644 index 00000000000..a6c1d6b5351 --- /dev/null +++ b/package/libgudev/libgudev.hash @@ -0,0 +1,2 @@ +# From: http://ftp.gnome.org/pub/GNOME/sources/libgudev/230/libgudev-230.sha256sum +sha256 a2e77faced0c66d7498403adefcc0707105e03db71a2b2abd620025b86347c18 libgudev-230.tar.xz diff --git a/package/libgudev/libgudev.mk b/package/libgudev/libgudev.mk new file mode 100644 index 00000000000..dce9cd8e710 --- /dev/null +++ b/package/libgudev/libgudev.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# libgudev +# +################################################################################ + +LIBGUDEV_VERSION = 230 +LIBGUDEV_SOURCE = libgudev-$(LIBGUDEV_VERSION).tar.xz +LIBGUDEV_SITE = http://ftp.gnome.org/pub/GNOME/sources/libgudev/$(LIBGUDEV_VERSION) +LIBGUDEV_INSTALL_STAGING = YES +LIBGUDEV_DEPENDENCIES = host-pkgconf udev libglib2 +LIBGUDEV_LICENSE = LGPLv2.1+ +LIBGUDEV_LICENSE_FILES = COPYING + +$(eval $(autotools-package)) diff --git a/package/libhdhomerun/0001-dont-strip.patch b/package/libhdhomerun/0001-dont-strip.patch new file mode 100644 index 00000000000..17a9ff49a9d --- /dev/null +++ b/package/libhdhomerun/0001-dont-strip.patch @@ -0,0 +1,18 @@ +Disable strip in Makefile. + +Patch downloaded from Gentoo: +https://gitweb.gentoo.org/repo/gentoo.git/tree/media-libs/libhdhomerun/files/dont-strip.patch + +Signed-off-by: Bernd Kuhls + +diff -Nur libhdhomerun/Makefile libhdhomerun.fix/Makefile +--- libhdhomerun/Makefile 2012-08-30 15:46:27.000000000 -0500 ++++ libhdhomerun.fix/Makefile 2013-03-24 14:47:08.740937164 -0500 +@@ -42,7 +42,6 @@ + + hdhomerun_config$(BINEXT) : hdhomerun_config.c $(LIBSRCS) + $(CC) $(CFLAGS) $+ $(LDFLAGS) -o $@ +- $(STRIP) $@ + + libhdhomerun$(LIBEXT) : $(LIBSRCS) + $(CC) $(CFLAGS) -fPIC -DDLL_EXPORT $(SHARED) $+ $(LDFLAGS) -o $@ diff --git a/package/libhdhomerun/Config.in b/package/libhdhomerun/Config.in new file mode 100644 index 00000000000..9425c1b1591 --- /dev/null +++ b/package/libhdhomerun/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_LIBHDHOMERUN + bool "libhdhomerun" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS + help + HDHomeRun is a network-attached digital television tuner + box, produced by the company SiliconDust USA, Inc. + + http://www.silicondust.com + +comment "libhdhomerun needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/libhdhomerun/libhdhomerun.hash b/package/libhdhomerun/libhdhomerun.hash new file mode 100644 index 00000000000..78977641646 --- /dev/null +++ b/package/libhdhomerun/libhdhomerun.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 907dfbd1eb82aebd8b09e7c00c21a02433e6baaacf4a4f99aa2511b1d5244baf libhdhomerun_20150826.tgz diff --git a/package/libhdhomerun/libhdhomerun.mk b/package/libhdhomerun/libhdhomerun.mk new file mode 100644 index 00000000000..16e34c2383a --- /dev/null +++ b/package/libhdhomerun/libhdhomerun.mk @@ -0,0 +1,32 @@ +################################################################################ +# +# libhdhomerun +# +################################################################################ + +LIBHDHOMERUN_VERSION = 20150826 +LIBHDHOMERUN_SOURCE = libhdhomerun_$(LIBHDHOMERUN_VERSION).tgz +LIBHDHOMERUN_SITE = http://download.silicondust.com/hdhomerun +LIBHDHOMERUN_LICENSE = LGPLv2.1+ +LIBHDHOMERUN_LICENSE_FILES = lgpl.txt +LIBHDHOMERUN_INSTALL_STAGING = YES + +define LIBHDHOMERUN_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) \ + CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) +endef + +define LIBHDHOMERUN_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 0755 $(@D)/libhdhomerun.so \ + $(STAGING_DIR)/usr/lib/libhdhomerun.so + mkdir -p $(STAGING_DIR)/usr/include/libhdhomerun/ + $(INSTALL) -m 0644 $(@D)/*.h \ + $(STAGING_DIR)/usr/include/libhdhomerun/ +endef + +define LIBHDHOMERUN_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/libhdhomerun.so \ + $(TARGET_DIR)/usr/lib/libhdhomerun.so +endef + +$(eval $(generic-package)) diff --git a/package/libhttpparser/0001-Use-f-option-when-calling-ln-at-install-time.patch b/package/libhttpparser/0001-Use-f-option-when-calling-ln-at-install-time.patch new file mode 100644 index 00000000000..df166565f9b --- /dev/null +++ b/package/libhttpparser/0001-Use-f-option-when-calling-ln-at-install-time.patch @@ -0,0 +1,35 @@ +From 384917321c45e492b0ca7aaa94d4b15324aef95d Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Fri, 28 Aug 2015 19:02:11 +0200 +Subject: [PATCH] Use -f option when calling ln at install time + +This allows "make install; make install" to work properly. + +Signed-off-by: Thomas Petazzoni +Signed-off-by: Renaud AUBIN +--- + Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index 33c8ba0..b36d95a 100644 +--- a/Makefile ++++ b/Makefile +@@ -125,12 +125,12 @@ tags: http_parser.c http_parser.h test.c + install: library + $(INSTALL) -D http_parser.h $(INCLUDEDIR)/http_parser.h + $(INSTALL) -D $(SONAME) $(LIBDIR)/$(SONAME) +- ln -s $(LIBDIR)/$(SONAME) $(LIBDIR)/libhttp_parser.$(SOEXT) ++ ln -sf $(LIBDIR)/$(SONAME) $(LIBDIR)/libhttp_parser.$(SOEXT) + + install-strip: library + $(INSTALL) -D http_parser.h $(INCLUDEDIR)/http_parser.h + $(INSTALL) -D -s $(SONAME) $(LIBDIR)/$(SONAME) +- ln -s $(LIBDIR)/$(SONAME) $(LIBDIR)/libhttp_parser.$(SOEXT) ++ ln -sf $(LIBDIR)/$(SONAME) $(LIBDIR)/libhttp_parser.$(SOEXT) + + uninstall: + rm $(INCLUDEDIR)/http_parser.h +-- +2.6.2 + diff --git a/package/libhttpparser/Config.in b/package/libhttpparser/Config.in new file mode 100644 index 00000000000..43563049e49 --- /dev/null +++ b/package/libhttpparser/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_LIBHTTPPARSER + bool "libhttpparser" + depends on !BR2_STATIC_LIBS + help + This is a parser for HTTP messages written in C. It + parses both requests and responses. The parser is + designed to be used in performance HTTP applications. + It does not make any syscalls nor allocations, it does + not buffer data, it can be interrupted at anytime. + Depending on your architecture, it only requires about + 40 bytes of data per message stream (in a web server + that is per connection). + + https://github.com/nodejs/http-parser + +comment "libhttpparser needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/libhttpparser/libhttpparser.hash b/package/libhttpparser/libhttpparser.hash new file mode 100644 index 00000000000..e11006e8a59 --- /dev/null +++ b/package/libhttpparser/libhttpparser.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 a11c5ccb9808496f3de66d54ea1f89271919923307e31c75de2a3a77a6754c97 libhttpparser-v2.6.0.tar.gz diff --git a/package/libhttpparser/libhttpparser.mk b/package/libhttpparser/libhttpparser.mk new file mode 100644 index 00000000000..015efc0a1d9 --- /dev/null +++ b/package/libhttpparser/libhttpparser.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# libhttpparser +# +################################################################################ + +LIBHTTPPARSER_VERSION = v2.6.0 +LIBHTTPPARSER_SITE = $(call github,nodejs,http-parser,$(LIBHTTPPARSER_VERSION)) +LIBHTTPPARSER_INSTALL_STAGING = YES +LIBHTTPPARSER_LICENSE = MIT +LIBHTTPPARSER_LICENSE_FILES = LICENSE-MIT + +define LIBHTTPPARSER_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) library package +endef + +define LIBHTTPPARSER_INSTALL_STAGING_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) PREFIX=$(STAGING_DIR)/usr install + $(INSTALL) -D -m 0644 $(@D)/libhttp_parser.a $(STAGING_DIR)/usr/lib/libhttp_parser.a +endef + +define LIBHTTPPARSER_INSTALL_TARGET_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) PREFIX=$(TARGET_DIR)/usr install +endef + +$(eval $(generic-package)) diff --git a/package/libidn/libidn.hash b/package/libidn/libidn.hash index 6425d55c295..20c844e1210 100644 --- a/package/libidn/libidn.hash +++ b/package/libidn/libidn.hash @@ -1,2 +1,2 @@ -# From http://lists.gnu.org/archive/html/help-libidn/2015-07/msg00011.html -sha1 0bb34003a0fe05a91e60d346803401f16c82a1fb libidn-1.31.tar.gz +# From http://lists.nongnu.org/archive/html/help-libidn/2015-08/msg00001.html +sha1 ddd018611b98af7c67d434aa42d15d39f45129f5 libidn-1.32.tar.gz diff --git a/package/libidn/libidn.mk b/package/libidn/libidn.mk index e10fb6e589b..ab439493553 100644 --- a/package/libidn/libidn.mk +++ b/package/libidn/libidn.mk @@ -4,13 +4,13 @@ # ################################################################################ -LIBIDN_VERSION = 1.31 +LIBIDN_VERSION = 1.32 LIBIDN_SITE = $(BR2_GNU_MIRROR)/libidn LIBIDN_INSTALL_STAGING = YES LIBIDN_CONF_ENV = EMACS="no" LIBIDN_CONF_OPTS = --disable-java --enable-csharp=no LIBIDN_DEPENDENCIES = host-pkgconf $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) $(if $(BR2_PACKAGE_LIBICONV),libiconv) -LIBIDN_LICENSE = GPLv2+ GPLv3+ LGPLv3+ +LIBIDN_LICENSE = GPLv2+, GPLv3+, LGPLv3+ LIBIDN_LICENSE_FILES = COPYINGv2 COPYINGv3 COPYING.LESSERv3 define LIBIDN_REMOVE_BINARY diff --git a/package/libiio/Config.in b/package/libiio/Config.in index 21496ed7c50..99da4c1c100 100644 --- a/package/libiio/Config.in +++ b/package/libiio/Config.in @@ -37,9 +37,13 @@ config BR2_PACKAGE_LIBIIO_TESTS bool "Install test programs" select BR2_PACKAGE_LIBIIO_LOCAL_BACKEND select BR2_PACKAGE_LIBIIO_NETWORK_BACKEND + depends on BR2_TOOLCHAIN_HAS_THREADS help Install the test programs (iio_info, iio_genxml, iio_readdev). +comment "IIO test programs need a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + config BR2_PACKAGE_LIBIIO_BINDINGS_CSHARP bool "Install C# bindings" depends on BR2_PACKAGE_MONO diff --git a/package/libilbc/Config.in b/package/libilbc/Config.in new file mode 100644 index 00000000000..89d5db2fd65 --- /dev/null +++ b/package/libilbc/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_LIBILBC + bool "libilbc" + help + iLBC (internet Low Bitrate Codec) is a FREE speech codec + suitable for robust voice communication over IP. + + http://www.webrtc.org/license-rights/ilbc-freeware diff --git a/package/libilbc/libilbc.mk b/package/libilbc/libilbc.mk new file mode 100644 index 00000000000..06d94eb36d2 --- /dev/null +++ b/package/libilbc/libilbc.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# libilbc +# +################################################################################ + +LIBILBC_VERSION = 829b08c7902ceb87a261279fabb36b6d523c6e07 +LIBILBC_SITE = https://freeswitch.org/stash/scm/sd/libilbc.git +LIBILBC_SITE_METHOD = git +LIBILBC_LICENSE = Global IP Sound iLBC Public License v2.0 +LIBILBC_LICENSE_FILES = gips_iLBClicense.pdf +LIBILBC_AUTORECONF = YES +LIBILBC_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/libinput/0001-rename-log_msg-to-libinput_log_msg.patch b/package/libinput/0001-rename-log_msg-to-libinput_log_msg.patch index 433b29ef022..e36862a12da 100644 --- a/package/libinput/0001-rename-log_msg-to-libinput_log_msg.patch +++ b/package/libinput/0001-rename-log_msg-to-libinput_log_msg.patch @@ -22,9 +22,9 @@ diff --git a/src/libinput-private.h b/src/libinput-private.h index b36dc95..98f91b3 100644 --- a/src/libinput-private.h +++ b/src/libinput-private.h -@@ -179,15 +179,15 @@ struct libinput_event_listener { - typedef void (*libinput_source_dispatch_t)(void *data); +@@ -259,12 +259,12 @@ + typedef void (*libinput_source_dispatch_t)(void *data); -#define log_debug(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_DEBUG, __VA_ARGS__) -#define log_info(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_INFO, __VA_ARGS__) @@ -39,17 +39,22 @@ index b36dc95..98f91b3 100644 +#define log_bug_libinput(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "libinput bug: " __VA_ARGS__) +#define log_bug_client(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "client bug: " __VA_ARGS__) + #define log_debug_ratelimit(li_, r_, ...) log_msg_ratelimit((li_), (r_), LIBINPUT_LOG_PRIORITY_DEBUG, __VA_ARGS__) + #define log_info_ratelimit(li_, r_, ...) log_msg_ratelimit((li_), (r_), LIBINPUT_LOG_PRIORITY_INFO, __VA_ARGS__) +@@ -281,7 +281,7 @@ + LIBINPUT_ATTRIBUTE_PRINTF(4, 5); + void -log_msg(struct libinput *libinput, +libinput_log_msg(struct libinput *libinput, enum libinput_log_priority priority, - const char *format, ...); - + const char *format, ...) + LIBINPUT_ATTRIBUTE_PRINTF(3, 4); diff --git a/src/libinput.c b/src/libinput.c index 279cce0..5748e5e 100644 --- a/src/libinput.c +++ b/src/libinput.c -@@ -107,7 +107,7 @@ log_msg_va(struct libinput *libinput, +@@ -155,7 +155,7 @@ } void @@ -58,6 +63,15 @@ index 279cce0..5748e5e 100644 enum libinput_log_priority priority, const char *format, ...) { +@@ -184,7 +184,7 @@ + va_end(args); + + if (state == RATELIMIT_THRESHOLD) +- log_msg(libinput, ++ libinput_log_msg(libinput, + priority, + "WARNING: log rate limit exceeded (%d msgs per %dms). Discarding future messages.\n", + ratelimit->burst, -- 2.1.2 diff --git a/package/libinput/libinput.hash b/package/libinput/libinput.hash index 299a28f9857..ea4c8e70ddf 100644 --- a/package/libinput/libinput.hash +++ b/package/libinput/libinput.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/wayland-devel/2015-July/023184.html -sha256 69a97da47ef8fa9debadaa8ee11005b9b5183bd2b87c5aa7827b7c388a5acc5d libinput-0.19.0.tar.xz +# From http://lists.freedesktop.org/archives/wayland-devel/2016-January/026701.html +sha256 5e08c45dbb8bf32490cc6cd626da098564d646d161a07cba2e3adbd9745c0622 libinput-1.1.5.tar.xz diff --git a/package/libinput/libinput.mk b/package/libinput/libinput.mk index 175e04f5078..6d8b7b61b9d 100644 --- a/package/libinput/libinput.mk +++ b/package/libinput/libinput.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBINPUT_VERSION = 0.19.0 +LIBINPUT_VERSION = 1.1.5 LIBINPUT_SOURCE = libinput-$(LIBINPUT_VERSION).tar.xz LIBINPUT_SITE = http://www.freedesktop.org/software/libinput LIBINPUT_LICENSE = MIT diff --git a/package/libiscsi/libiscsi.mk b/package/libiscsi/libiscsi.mk index adb94bdb29b..71c10c10140 100644 --- a/package/libiscsi/libiscsi.mk +++ b/package/libiscsi/libiscsi.mk @@ -6,7 +6,7 @@ LIBISCSI_VERSION = 1.15.0 LIBISCSI_SITE = https://sites.google.com/site/libiscsitarballs/libiscsitarballs -LIBISCSI_LICENSE = GPLv2+ LGPLv2.1+ +LIBISCSI_LICENSE = GPLv2+, LGPLv2.1+ LIBISCSI_LICENSE_FILES = COPYING LICENCE-GPL-2.txt LICENCE-LGPL-2.1.txt LIBISCSI_INSTALL_STAGING = YES diff --git a/package/libjpeg/libjpeg.hash b/package/libjpeg/libjpeg.hash index 035812a89be..2ad7dda6cfc 100644 --- a/package/libjpeg/libjpeg.hash +++ b/package/libjpeg/libjpeg.hash @@ -1,2 +1,2 @@ # locally computed hash -sha256 3a753ea48d917945dd54a2d97de388aa06ca2eb1066cbfdc6652036349fe05a7 jpegsrc.v9a.tar.gz +sha256 240fd398da741669bf3c90366f58452ea59041cacc741a489b99f2f6a0bad052 jpegsrc.v9b.tar.gz diff --git a/package/libjpeg/libjpeg.mk b/package/libjpeg/libjpeg.mk index c4190c799ae..14aba61fd4a 100644 --- a/package/libjpeg/libjpeg.mk +++ b/package/libjpeg/libjpeg.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBJPEG_VERSION = 9a +LIBJPEG_VERSION = 9b LIBJPEG_SITE = http://www.ijg.org/files LIBJPEG_SOURCE = jpegsrc.v$(LIBJPEG_VERSION).tar.gz LIBJPEG_LICENSE = jpeg-license (BSD-3c-like) diff --git a/package/libldns/0001-fix-double-free-for-answers-bigger-than-4096.patch b/package/libldns/0001-fix-double-free-for-answers-bigger-than-4096.patch new file mode 100644 index 00000000000..36bc8753c5d --- /dev/null +++ b/package/libldns/0001-fix-double-free-for-answers-bigger-than-4096.patch @@ -0,0 +1,25 @@ +Downloaded from +http://anonscm.debian.org/cgit/pkg-nlnetlabs/ldns.git/plain/debian/patches/fix-double-free-for-answers-bigger-than-4096.patch + +which is a backport from upstream +http://git.nlnetlabs.nl/ldns/commit/?h=develop&id=2853eb352b4461e98f2926ace4ea3810cedf4167 + +Signed-off-by: Bernd Kuhls + +From 2853eb352b4461e98f2926ace4ea3810cedf4167 Mon Sep 17 00:00:00 2001 +From: Willem Toorop +Date: Tue, 28 Jan 2014 11:06:38 +0100 +Subject: bugfix #548: Double free for answers > 4096 + +in ldns_resolver_send_pkt. Thank you sunthought@gmail.com +--- +--- ldns.orig/resolver.c ++++ ldns/resolver.c +@@ -1117,6 +1117,7 @@ ldns_resolver_send_pkt(ldns_pkt **answer + ldns_pkt_set_edns_udp_size(query_pkt + , 4096); + ldns_pkt_free(answer_pkt); ++ answer_pkt = NULL; + /* Nameservers should not become + * unreachable because fragments are + * dropped (network error). We might diff --git a/package/libldns/0002-fix-whitespace-bug-in-ldns-read-zone.patch b/package/libldns/0002-fix-whitespace-bug-in-ldns-read-zone.patch new file mode 100644 index 00000000000..4d8908eb40c --- /dev/null +++ b/package/libldns/0002-fix-whitespace-bug-in-ldns-read-zone.patch @@ -0,0 +1,45 @@ +Dwonloaded from +http://anonscm.debian.org/cgit/pkg-nlnetlabs/ldns.git/tree/debian/patches/fix-whitespace-bug-in-ldns-read-zone.patch + +which is a backport from +http://git.nlnetlabs.nl/ldns/commit/?h=develop&id=d6037a22fbedb8ef3a22de4107e4eaa36840865b + +Signed-off-by: Bernd Kuhls + +From d6037a22fbedb8ef3a22de4107e4eaa36840865b Mon Sep 17 00:00:00 2001 +From: Matthijs Mekking +Date: Wed, 18 Jun 2014 09:55:17 +0200 +Subject: whitespace bug in ldns-read-zone + +--- +--- ldns.orig/rr.c ++++ ldns/rr.c +@@ -670,6 +670,18 @@ ldns_rr_new_question_frm_str(ldns_rr **n + true); + } + ++static int ++ldns_rr_is_whitespace_line(char* line, int line_len) ++{ ++ int i; ++ for (i = 0; i < line_len; i++) { ++ if (!isspace((int)line[i])) { ++ return 0; ++ } ++ } ++ return 1; ++} ++ + ldns_status + ldns_rr_new_frm_fp(ldns_rr **newrr, FILE *fp, uint32_t *ttl, ldns_rdf **origin, ldns_rdf **prev) + { +@@ -745,6 +757,9 @@ ldns_rr_new_frm_fp_l(ldns_rr **newrr, FI + s = LDNS_STATUS_SYNTAX_TTL; + } else if (strncmp(line, "$INCLUDE", 8) == 0) { + s = LDNS_STATUS_SYNTAX_INCLUDE; ++ } else if (ldns_rr_is_whitespace_line(line, size)) { ++ LDNS_FREE(line); ++ return LDNS_STATUS_SYNTAX_EMPTY; + } else { + if (origin && *origin) { + s = ldns_rr_new_frm_str(&rr, (const char*) line, ttl, *origin, prev); diff --git a/package/libldns/Config.in b/package/libldns/Config.in new file mode 100644 index 00000000000..12065ae2f14 --- /dev/null +++ b/package/libldns/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_LIBLDNS + bool "libldns" + help + The goal of ldns is to simplify DNS programming, it supports + recent RFCs like the DNSSEC documents, and allows developers + to easily create software conforming to current RFCs, and + experimental software for current Internet Drafts. + + http://www.nlnetlabs.nl/projects/ldns diff --git a/package/libldns/libldns.hash b/package/libldns/libldns.hash new file mode 100644 index 00000000000..3565c5830ae --- /dev/null +++ b/package/libldns/libldns.hash @@ -0,0 +1,4 @@ +# From http://www.nlnetlabs.nl/downloads/ldns/ldns-1.6.17.tar.gz.sha1 +sha1 4218897b3c002aadfc7280b3f40cda829e05c9a4 ldns-1.6.17.tar.gz +# Locally calculated +sha256 8b88e059452118e8949a2752a55ce59bc71fa5bc414103e17f5b6b06f9bcc8cd ldns-1.6.17.tar.gz diff --git a/package/libldns/libldns.mk b/package/libldns/libldns.mk new file mode 100644 index 00000000000..3d4d35688c7 --- /dev/null +++ b/package/libldns/libldns.mk @@ -0,0 +1,47 @@ +################################################################################ +# +# libldns +# +################################################################################ + +LIBLDNS_VERSION = 1.6.17 +LIBLDNS_SOURCE = ldns-$(LIBLDNS_VERSION).tar.gz +LIBLDNS_SITE = http://www.nlnetlabs.nl/downloads/ldns +LIBLDNS_LICENSE = BSD-3c +LIBLDNS_LICENSE_FILES = LICENSE +LIBLDNS_INSTALL_STAGING = YES +LIBLDNS_CONF_OPTS = \ + --without-examples \ + --without-p5-dns-ldns \ + --without-pyldns \ + --without-pyldnsx + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +LIBLDNS_DEPENDENCIES += openssl +LIBLDNS_CONF_OPTS += \ + --with-ssl=$(STAGING_DIR)/usr \ + --enable-dane \ + --enable-ecdsa \ + --enable-gost \ + --enable-sha2 + +ifeq ($(BR2_STATIC_LIBS),y) +LIBLDNS_DEPENDENCIES += host-pkgconf +# missing -lz breaks configure, add it using pkgconf +LIBLDNS_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs openssl`" +endif + +else +LIBLDNS_CONF_OPTS += \ + --without-ssl \ + --disable-dane \ + --disable-ecdsa \ + --disable-gost \ + --disable-sha2 +endif + +# the linktest make target fails with static linking, and we are only +# interested in the lib target anyway +LIBLDNS_MAKE_OPTS = lib + +$(eval $(autotools-package)) diff --git a/package/liblinear/Config.in b/package/liblinear/Config.in index 17c5a74d4a2..f25c1196fc1 100644 --- a/package/liblinear/Config.in +++ b/package/liblinear/Config.in @@ -2,8 +2,8 @@ config BR2_PACKAGE_LIBLINEAR bool "liblinear" depends on BR2_INSTALL_LIBSTDCPP help - liblinear is a linear classifier for data with millions of instances and - features. + liblinear is a linear classifier for data with millions of instances + and features. http://www.csie.ntu.edu.tw/~cjlin/liblinear/ diff --git a/package/liblinear/liblinear.hash b/package/liblinear/liblinear.hash index 8a335ccf177..4f03fa4a84a 100644 --- a/package/liblinear/liblinear.hash +++ b/package/liblinear/liblinear.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 0ab97ca81c62457fcfe78f56619a7b2f70c1f7c875b4101827343555b4f6c3f4 liblinear-1.96.tar.gz +sha256 fa5c12dedc76ffca12f1681de7073b03af68163c4e4be65194217c99e55a7d68 liblinear-2.1.tar.gz diff --git a/package/liblinear/liblinear.mk b/package/liblinear/liblinear.mk index d712b953630..a9524e35df9 100644 --- a/package/liblinear/liblinear.mk +++ b/package/liblinear/liblinear.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBLINEAR_VERSION = 1.96 +LIBLINEAR_VERSION = 2.1 LIBLINEAR_SITE = http://www.csie.ntu.edu.tw/~cjlin/liblinear LIBLINEAR_LICENSE = BSD-3c LIBLINEAR_LICENSE_FILES = COPYRIGHT @@ -14,8 +14,8 @@ LIBLINEAR_CFLAGS = $(TARGET_CFLAGS) ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y) # $1: destination directory define LIBLINEAR_INSTALL_SHARED - $(INSTALL) -m 0644 -D $(@D)/liblinear.so.2 $(1)/usr/lib/liblinear.so.2 - ln -sf liblinear.so.2 $(1)/usr/lib/liblinear.so + $(INSTALL) -m 0644 -D $(@D)/liblinear.so.3 $(1)/usr/lib/liblinear.so.3 + ln -sf liblinear.so.3 $(1)/usr/lib/liblinear.so endef LIBLINEAR_CFLAGS += -fPIC endif diff --git a/package/liblockfile/liblockfile.hash b/package/liblockfile/liblockfile.hash index 7f7ee7f8228..4421673b91e 100644 --- a/package/liblockfile/liblockfile.hash +++ b/package/liblockfile/liblockfile.hash @@ -1,3 +1,3 @@ -# From http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/libl/liblockfile/liblockfile_1.08-4.dsc -sha256 d63293d5091d7fdc0259563694e4d68771310dbc4e70e188e6b68e7a776405cb liblockfile_1.08.orig.tar.gz -sha256 e1343c37b83722abdaa1b5d98e1696748ca134ad36752b8affebebd51ef78468 liblockfile_1.08-4.debian.tar.bz2 +# From http://snapshot.debian.org/archive/debian/20151026T153523Z/pool/main/libl/liblockfile/liblockfile_1.09-6.dsc +sha256 16979eba05396365e1d6af7100431ae9d32f9bc063930d1de66298a0695f1b7f liblockfile_1.09.orig.tar.gz +sha256 d45eacb7c637c16d03c777c55989d98da494ae9584a0783fe6dbf0db60fa290f liblockfile_1.09-6.debian.tar.bz2 diff --git a/package/liblockfile/liblockfile.mk b/package/liblockfile/liblockfile.mk index 4f7a67ea5cd..8de598f19ba 100644 --- a/package/liblockfile/liblockfile.mk +++ b/package/liblockfile/liblockfile.mk @@ -4,13 +4,13 @@ # ################################################################################ -LIBLOCKFILE_VERSION = 1.08 +LIBLOCKFILE_VERSION = 1.09 LIBLOCKFILE_SOURCE = liblockfile_$(LIBLOCKFILE_VERSION).orig.tar.gz -LIBLOCKFILE_SITE = http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/libl/liblockfile -LIBLOCKFILE_PATCH = liblockfile_$(LIBLOCKFILE_VERSION)-4.debian.tar.bz2 +LIBLOCKFILE_SITE = http://snapshot.debian.org/archive/debian/20151026T153523Z/pool/main/libl/liblockfile +LIBLOCKFILE_PATCH = liblockfile_$(LIBLOCKFILE_VERSION)-6.debian.tar.bz2 LIBLOCKFILE_LICENSE = LGPLv2+, dotlockfile GPLv2+ -# No license file included, it refers to the gnu.org website +LIBLOCKFILE_LICENSE_FILES = COPYRIGHT LIBLOCKFILE_INSTALL_STAGING = YES LIBLOCKFILE_CONF_OPTS = --mandir=/usr/share/man diff --git a/package/libmbim/Config.in b/package/libmbim/Config.in index bd34dd4ba15..0ef28db125c 100644 --- a/package/libmbim/Config.in +++ b/package/libmbim/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_LIBMBIM depends on BR2_USE_WCHAR # libglib2 depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_PACKAGE_HAS_UDEV + select BR2_PACKAGE_LIBGUDEV select BR2_PACKAGE_LIBGLIB2 help libmbim is a glib-based library for talking to WWAN modems and diff --git a/package/libmbim/libmbim.mk b/package/libmbim/libmbim.mk index 8d49f281c6b..3cb9235ecfa 100644 --- a/package/libmbim/libmbim.mk +++ b/package/libmbim/libmbim.mk @@ -11,7 +11,7 @@ LIBMBIM_LICENSE = LGPLv2+ (library), GPLv2+ (programs) LIBMBIM_LICENSE_FILES = COPYING LIBMBIM_INSTALL_STAGING = YES -LIBMBIM_DEPENDENCIES = libglib2 udev +LIBMBIM_DEPENDENCIES = libglib2 udev libgudev # we don't want -Werror LIBMBIM_CONF_OPTS = --enable-more-warnings=no diff --git a/package/libmicrohttpd/Config.in b/package/libmicrohttpd/Config.in index d9e6493776f..68191ea7cff 100644 --- a/package/libmicrohttpd/Config.in +++ b/package/libmicrohttpd/Config.in @@ -2,8 +2,7 @@ config BR2_PACKAGE_LIBMICROHTTPD bool "libmicrohttpd" depends on BR2_TOOLCHAIN_HAS_THREADS # Triggers the _gp link issue - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII help GNU libmicrohttpd is a small C library that makes it easy to run an HTTP server as part of another application. @@ -27,5 +26,4 @@ endif comment "libmicrohttpd needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII diff --git a/package/libmicrohttpd/libmicrohttpd.hash b/package/libmicrohttpd/libmicrohttpd.hash index d5fb7da31ef..f0f15012ff1 100644 --- a/package/libmicrohttpd/libmicrohttpd.hash +++ b/package/libmicrohttpd/libmicrohttpd.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 00352073367003da40607319e4090a6a8308748b59246ae80e9871f34dad7d5b libmicrohttpd-0.9.42.tar.gz +sha256 87667e158f2bf8c691a002e256ffe30885d4121a9ee4143af0320c47cdf8a2a4 libmicrohttpd-0.9.48.tar.gz diff --git a/package/libmicrohttpd/libmicrohttpd.mk b/package/libmicrohttpd/libmicrohttpd.mk index f8a9d22f4ed..9c41b894058 100644 --- a/package/libmicrohttpd/libmicrohttpd.mk +++ b/package/libmicrohttpd/libmicrohttpd.mk @@ -4,11 +4,11 @@ # ################################################################################ -LIBMICROHTTPD_VERSION = 0.9.42 +LIBMICROHTTPD_VERSION = 0.9.48 LIBMICROHTTPD_SITE = $(BR2_GNU_MIRROR)/libmicrohttpd LIBMICROHTTPD_LICENSE_FILES = COPYING LIBMICROHTTPD_INSTALL_STAGING = YES -LIBMICROHTTPD_CONF_OPTS = --disable-curl --disable-spdy --disable-examples +LIBMICROHTTPD_CONF_OPTS = --disable-curl --disable-examples ifeq ($(BR2_PACKAGE_LIBMICROHTTPD_SSL),y) LIBMICROHTTPD_LICENSE = LGPLv2.1+ diff --git a/package/libmng/0001-jpeg-9a.patch b/package/libmng/0001-jpeg-9a.patch new file mode 100644 index 00000000000..5d651335c15 --- /dev/null +++ b/package/libmng/0001-jpeg-9a.patch @@ -0,0 +1,22 @@ +Adaptation from gentoo patch for libmng 2.0.3 +See https://bugs.gentoo.org/show_bug.cgi?id=520906 + +Signed-off-by: Gustavo Zacarias + +diff -Nura libmng-2.0.3.orig/libmng_types.h libmng-2.0.3/libmng_types.h +--- libmng-2.0.3.orig/libmng_types.h 2015-09-24 10:32:05.500984924 -0300 ++++ libmng-2.0.3/libmng_types.h 2015-09-24 10:33:11.145254771 -0300 +@@ -200,13 +200,6 @@ + #undef FAR /* possibly defined by zlib or lcms */ + #endif + #define JPEG_INTERNAL_OPTIONS /* for RGB_PIXELSIZE */ +-/* There has been a change in jpeg-9 : */ +-#if !defined(HAVE_BOOLEAN) && !defined(_WIN32) +-#define HAVE_BOOLEAN +-#endif +-#ifndef _WIN32 +-typedef int boolean; +-#endif + /* For jpegsrc.v09a: */ + #include + #include diff --git a/package/libmng/Config.in b/package/libmng/Config.in new file mode 100644 index 00000000000..a0bd59c8394 --- /dev/null +++ b/package/libmng/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_LIBMNG + bool "libmng" + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_ZLIB + help + The reference library for reading, displaying, writing and + examining Multiple-Image Network Graphics. + + http://sourceforge.net/projects/libmng/ diff --git a/package/libmng/libmng.hash b/package/libmng/libmng.hash new file mode 100644 index 00000000000..a695cc3706a --- /dev/null +++ b/package/libmng/libmng.hash @@ -0,0 +1,3 @@ +# From http://sourceforge.net/projects/libmng/files/libmng-devel/2.0.3/ +md5 e9e899adb1b681b17f14d91e261878c5 libmng-2.0.3.tar.xz +sha1 0f141482ffcef6f8cd4413f945a59310ac2e49af libmng-2.0.3.tar.xz diff --git a/package/libmng/libmng.mk b/package/libmng/libmng.mk new file mode 100644 index 00000000000..090fe183807 --- /dev/null +++ b/package/libmng/libmng.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# libmng +# +################################################################################ + +LIBMNG_VERSION = 2.0.3 +LIBMNG_SITE = http://downloads.sourceforge.net/project/libmng/libmng-devel/$(LIBMNG_VERSION) +LIBMNG_SOURCE = libmng-$(LIBMNG_VERSION).tar.xz +LIBMNG_DEPENDENCIES = jpeg zlib +LIBMNG_CONF_OPTS = --without-lcms +LIBMNG_INSTALL_STAGING = YES +LIBMNG_LICENSE = libmng license +LIBMNG_LICENSE_FILES = LICENSE + +ifeq ($(BR2_PACKAGE_LCMS2),y) +LIBMNG_DEPDENDENCIES += lcms2 +else +LIBMNG_CONF_OPTS += --without-lcms2 +endif + +$(eval $(autotools-package)) diff --git a/package/libndp/0001-ndptool.c-Fix-musl-build.patch b/package/libndp/0001-ndptool.c-Fix-musl-build.patch new file mode 100644 index 00000000000..547598c6ee8 --- /dev/null +++ b/package/libndp/0001-ndptool.c-Fix-musl-build.patch @@ -0,0 +1,30 @@ +From 561f80b9a848be923f37bf1afedbecf92da3b2e7 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 30 Jan 2016 16:36:39 +0100 +Subject: [PATCH 1/1] ndptool.c: Fix musl build + +Fixes a build issue with the musl C library +http://autobuild.buildroot.net/results/d42/d42bebe51bbec38f131840b6bbefdc162f0ad194/build-end.log + +Patch sent upstream: https://github.com/jpirko/libndp/pull/7 + +Signed-off-by: Bernd Kuhls +--- + utils/ndptool.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/utils/ndptool.c b/utils/ndptool.c +index 04ec4e1..c6ef48c 100644 +--- a/utils/ndptool.c ++++ b/utils/ndptool.c +@@ -27,6 +27,7 @@ + #include + #include + #include ++#include + #include + + enum verbosity_level { +-- +2.7.0.rc3 + diff --git a/package/libndp/libndp.mk b/package/libndp/libndp.mk index c40a0172229..c880b7e664d 100644 --- a/package/libndp/libndp.mk +++ b/package/libndp/libndp.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNDP_VERSION = v1.4 +LIBNDP_VERSION = v1.5 LIBNDP_SITE = $(call github,jpirko,libndp,$(LIBNDP_VERSION)) LIBNDP_LICENSE = LGPLv2.1+ LIBNDP_LICENSE_FILES = COPYING diff --git a/package/libnet/Config.in b/package/libnet/Config.in new file mode 100644 index 00000000000..8a881286e77 --- /dev/null +++ b/package/libnet/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_LIBNET + bool "libnet" + # Build with musl fails due to header issues + depends on !BR2_TOOLCHAIN_USES_MUSL + help + libnet provides a portable framework for low-level network + packet construction. + + http://sourceforge.net/projects/libnet-dev + +comment "libnet needs a (e)glibc or uClibc toolchain" + depends on BR2_TOOLCHAIN_USES_MUSL diff --git a/package/libnet/libnet.hash b/package/libnet/libnet.hash new file mode 100644 index 00000000000..dd3349082da --- /dev/null +++ b/package/libnet/libnet.hash @@ -0,0 +1,3 @@ +# From https://sourceforge.net/projects/libnet-dev/files/ +sha1 dffff71c325584fdcf99b80567b60f8ad985e34c libnet-1.1.6.tar.gz +md5 710296fe424a49344e5fcc0d09e53317 libnet-1.1.6.tar.gz diff --git a/package/libnet/libnet.mk b/package/libnet/libnet.mk new file mode 100644 index 00000000000..d13c4533b25 --- /dev/null +++ b/package/libnet/libnet.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# libnet +# +################################################################################ + +LIBNET_VERSION = 1.1.6 +LIBNET_SITE = http://sourceforge.net/projects/libnet-dev/files +LIBNET_INSTALL_STAGING = YES +# PF_PACKET is always available on Linux +LIBNET_CONF_OPTS = libnet_cv_have_packet_socket=yes +LIBNET_LICENSE = BSD-2c, BSD-3c +LIBNET_LICENSE_FILES = doc/COPYING + +$(eval $(autotools-package)) diff --git a/package/libnetfilter_conntrack/0001-uclinux.patch b/package/libnetfilter_conntrack/0001-uclinux.patch deleted file mode 100644 index ef79a806e85..00000000000 --- a/package/libnetfilter_conntrack/0001-uclinux.patch +++ /dev/null @@ -1,26 +0,0 @@ -From bdf4afdcb68f62fcd05536b8cb68478d3ea31c68 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Tue, 10 Sep 2013 15:46:19 -0300 -Subject: [PATCH] configure: uclinux is also linux - -Signed-off-by: Gustavo Zacarias ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 12e1d16..1edfd66 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -19,7 +19,7 @@ AC_PROG_INSTALL - AC_PROG_LN_S - - case "$host" in --*-*-linux*) ;; -+*-*-linux* | *-*-uclinux*) ;; - *) AC_MSG_ERROR([Linux only, dude!]);; - esac - --- -1.8.1.5 - diff --git a/package/libnetfilter_conntrack/0002-src-Makefile.am-drop-hardcoded-ldl.patch b/package/libnetfilter_conntrack/0002-src-Makefile.am-drop-hardcoded-ldl.patch deleted file mode 100644 index e5ad3ba57ae..00000000000 --- a/package/libnetfilter_conntrack/0002-src-Makefile.am-drop-hardcoded-ldl.patch +++ /dev/null @@ -1,27 +0,0 @@ -From b8d32eff8dbfff5a93b6ea6ee9f5747e16cb32c4 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Wed, 14 Jan 2015 10:53:20 -0300 -Subject: [PATCH] src/Makefile.am: drop hardcoded -ldl - -This breaks static builds where the toolchain completely lacks libdl. - -Signed-off-by: Gustavo Zacarias ---- - src/Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/Makefile.am b/src/Makefile.am -index 7d6c905..374598a 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -11,6 +11,6 @@ lib_LTLIBRARIES = libnetfilter_conntrack.la - libnetfilter_conntrack_la_LIBADD = conntrack/libnfconntrack.la \ - expect/libnfexpect.la \ - ${LIBNFNETLINK_LIBS} ${LIBMNL_LIBS} --libnetfilter_conntrack_la_LDFLAGS = -Wc,-nostartfiles -lnfnetlink -ldl \ -+libnetfilter_conntrack_la_LDFLAGS = -Wc,-nostartfiles -lnfnetlink \ - -version-info $(LIBVERSION) - libnetfilter_conntrack_la_SOURCES = main.c callback.c --- -2.0.5 - diff --git a/package/libnetfilter_conntrack/libnetfilter_conntrack.hash b/package/libnetfilter_conntrack/libnetfilter_conntrack.hash index 13fde40f58d..67d1e408a1d 100644 --- a/package/libnetfilter_conntrack/libnetfilter_conntrack.hash +++ b/package/libnetfilter_conntrack/libnetfilter_conntrack.hash @@ -1,3 +1,3 @@ -# From ftp://ftp.netfilter.org/pub/libnetfilter_conntrack/libnetfilter_conntrack-1.0.4.tar.bz2.{md5sum,sha1sum} -md5 18cf80c4b339a3285e78822dbd4f08d7 libnetfilter_conntrack-1.0.4.tar.bz2 -sha1 34fae1a30cbd51d46945e9f35790118c3462b0c6 libnetfilter_conntrack-1.0.4.tar.bz2 +# From ftp://ftp.netfilter.org/pub/libnetfilter_conntrack/libnetfilter_conntrack-1.0.5.tar.bz2.{md5sum,sha1sum} +md5 6aa1bd3c1d0723235ac897087b4cd4e5 libnetfilter_conntrack-1.0.5.tar.bz2 +sha1 9aed8733d98af39d57fffd929c2bea70f1dcba06 libnetfilter_conntrack-1.0.5.tar.bz2 diff --git a/package/libnetfilter_conntrack/libnetfilter_conntrack.mk b/package/libnetfilter_conntrack/libnetfilter_conntrack.mk index 7841f27f0c5..33f129404e0 100644 --- a/package/libnetfilter_conntrack/libnetfilter_conntrack.mk +++ b/package/libnetfilter_conntrack/libnetfilter_conntrack.mk @@ -4,13 +4,11 @@ # ################################################################################ -LIBNETFILTER_CONNTRACK_VERSION = 1.0.4 +LIBNETFILTER_CONNTRACK_VERSION = 1.0.5 LIBNETFILTER_CONNTRACK_SOURCE = libnetfilter_conntrack-$(LIBNETFILTER_CONNTRACK_VERSION).tar.bz2 LIBNETFILTER_CONNTRACK_SITE = http://www.netfilter.org/projects/libnetfilter_conntrack/files LIBNETFILTER_CONNTRACK_INSTALL_STAGING = YES LIBNETFILTER_CONNTRACK_DEPENDENCIES = host-pkgconf libnfnetlink libmnl -# For 0001-uclinux.patch & 0002-src-Makefile.am-drop-hardcoded-ldl.patch -LIBNETFILTER_CONNTRACK_AUTORECONF = YES LIBNETFILTER_CONNTRACK_LICENSE = GPLv2+ LIBNETFILTER_CONNTRACK_LICENSE_FILES = COPYING diff --git a/package/libnetfilter_queue/0002-musl.patch b/package/libnetfilter_queue/0002-musl.patch new file mode 100644 index 00000000000..3765d58af31 --- /dev/null +++ b/package/libnetfilter_queue/0002-musl.patch @@ -0,0 +1,45 @@ +From 5348da83403383a60831f4c297841afb98692887 Mon Sep 17 00:00:00 2001 +From: Felix Janda +Date: Sat, 16 May 2015 14:45:46 +0200 +Subject: [PATCH] extra: Define _GNU_SOURCE to get members of tcphdr&ucphdr + +The source uses linux names for members of tcphdr. For example +"source" instead of "th_sport", ... musl libc's headers need +_GNU_SOURCE defined in order to expose these. + +Signed-off-by: Felix Janda +Signed-off-by: Pablo Neira Ayuso +[yann.morin.1998@free.fr: backported from upstream] +Signed-off-by: "Yann E. MORIN" +--- + src/extra/tcp.c | 1 + + src/extra/udp.c | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/src/extra/tcp.c b/src/extra/tcp.c +index bf161aa..d1cd79d 100644 +--- a/src/extra/tcp.c ++++ b/src/extra/tcp.c +@@ -15,6 +15,7 @@ + #include + #include + #include ++#define _GNU_SOURCE + #include + + #include +diff --git a/src/extra/udp.c b/src/extra/udp.c +index 6e6baed..8c44a66 100644 +--- a/src/extra/udp.c ++++ b/src/extra/udp.c +@@ -14,6 +14,7 @@ + #include + #include + #include ++#define _GNU_SOURCE + #include + + #include +-- +1.9.1 + diff --git a/package/libnfnetlink/0002-musl.patch b/package/libnfnetlink/0002-musl.patch new file mode 100644 index 00000000000..bee7898aae7 --- /dev/null +++ b/package/libnfnetlink/0002-musl.patch @@ -0,0 +1,32 @@ +Include to get the u_int* definitions + +This is needed to fix the build with the musl C library, and this +patch comes from +http://git.alpinelinux.org/cgit/aports/plain/main/libnfnetlink/musl-fix-includes.patch. + +It will no longer be needed with upcoming upstream releases of +libnfnetlink, since they have switched to use the types +instead. However this change was too invasive to backport. + +Signed-off-by: Thomas Petazzoni + +--- libnfnetlink-1.0.1.orig/include/libnfnetlink/linux_nfnetlink.h ++++ libnfnetlink-1.0.1/include/libnfnetlink/linux_nfnetlink.h +@@ -1,6 +1,6 @@ + #ifndef _NFNETLINK_H + #define _NFNETLINK_H +-#include ++#include + #include + + enum nfnetlink_groups { +--- libnfnetlink-1.0.1.orig/include/libnfnetlink/libnfnetlink.h ++++ libnfnetlink-1.0.1/include/libnfnetlink/libnfnetlink.h +@@ -15,6 +15,7 @@ + #define aligned_u64 unsigned long long __attribute__((aligned(8))) + #endif + ++#include + #include /* for sa_family_t */ + #include + #include diff --git a/package/libnfs/Config.in b/package/libnfs/Config.in index 6642fe4258a..2a1ef03cd77 100644 --- a/package/libnfs/Config.in +++ b/package/libnfs/Config.in @@ -1,10 +1,11 @@ config BR2_PACKAGE_LIBNFS bool "libnfs" - depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC + depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC || BR2_TOOLCHAIN_HAS_THREADS # libtirpc + select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC help nfs userspace implementation. http://github.com/sahlberg/libnfs -comment "libnfs needs a toolchain w/ RPC" - depends on !BR2_TOOLCHAIN_HAS_NATIVE_RPC +comment "libnfs needs a toolchain w/ threads" + depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) diff --git a/package/libnfs/libnfs.hash b/package/libnfs/libnfs.hash new file mode 100644 index 00000000000..14d304fca0e --- /dev/null +++ b/package/libnfs/libnfs.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 e95af693e763a504eee72dacf3dc6c1001d83e40b807e7e1d0be2eaf48af779c libnfs-libnfs-1.9.8.tar.gz diff --git a/package/libnfs/libnfs.mk b/package/libnfs/libnfs.mk index 0c8c4f5c178..40d5cebbe6b 100644 --- a/package/libnfs/libnfs.mk +++ b/package/libnfs/libnfs.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNFS_VERSION = libnfs-1.9.5 +LIBNFS_VERSION = libnfs-1.9.8 LIBNFS_SITE = $(call github,sahlberg,libnfs,$(LIBNFS_VERSION)) LIBNFS_INSTALL_STAGING = YES LIBNFS_AUTORECONF = YES @@ -13,4 +13,14 @@ LIBNFS_LICENSE = LGPLv2.1+ LIBNFS_LICENSE_FILES = LICENCE-LGPL-2.1.txt LIBNFS_DEPENDENCIES = host-pkgconf +ifeq ($(BR2_PACKAGE_LIBTIRPC),y) +LIBNFS_DEPENDENCIES += libtirpc +endif + +# Needed for autoreconf +define LIBNFS_MAKE_M4_DIR + mkdir $(@D)/m4 +endef +LIBNFS_POST_EXTRACT_HOOKS += LIBNFS_MAKE_M4_DIR + $(eval $(autotools-package)) diff --git a/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch b/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch index eda5b4bad80..26c9d2e6466 100644 --- a/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch +++ b/package/libnftnl/0001-Rename-xfree-to-libnftnl_xfree-to-avoid-symbol-namin.patch @@ -20,35 +20,48 @@ To solve this, this patch renames the libnftnl xfree() function to libnftnl_xfree(). Signed-off-by: Thomas Petazzoni -[Gustavo: update for version 1.0.3] +[Gustavo: update for version 1.0.5] Signed-off-by: Thomas Petazzoni --- - src/chain.c | 18 +++++++++--------- + include/utils.h | 2 +- + src/chain.c | 28 ++++++++++++++-------------- src/common.c | 2 +- - src/expr.c | 2 +- - src/expr/data_reg.c | 2 +- + src/expr.c | 4 ++-- + src/expr/data_reg.c | 4 ++-- src/expr/immediate.c | 2 +- src/expr/log.c | 6 +++--- src/expr/match.c | 6 +++--- src/expr/target.c | 6 +++--- src/gen.c | 2 +- - src/internal.h | 2 +- src/mxml.c | 2 +- - src/rule.c | 24 ++++++++++++------------ + src/rule.c | 26 +++++++++++++------------- src/ruleset.c | 2 +- - src/set.c | 18 +++++++++--------- - src/set_elem.c | 10 +++++----- - src/table.c | 12 ++++++------ + src/set.c | 22 +++++++++++----------- + src/set_elem.c | 16 ++++++++-------- + src/table.c | 14 +++++++------- src/utils.c | 2 +- - 17 files changed, 59 insertions(+), 59 deletions(-) + 17 files changed, 73 insertions(+), 73 deletions(-) +diff --git a/include/utils.h b/include/utils.h +index f7436fa..e03ee3b 100644 +--- a/include/utils.h ++++ b/include/utils.h +@@ -17,7 +17,7 @@ + + #define __noreturn __attribute__((__noreturn__)) + +-#define xfree(ptr) free((void *)ptr); ++#define nftnl_xfree(ptr) free((void *)ptr); + + #define div_round_up(n, d) (((n) + (d) - 1) / (d)) + diff --git a/src/chain.c b/src/chain.c -index b67385e..9ccde54 100644 +index 8a8e8b8..37a27b1 100644 --- a/src/chain.c +++ b/src/chain.c -@@ -89,11 +89,11 @@ EXPORT_SYMBOL(nft_chain_alloc); - void nft_chain_free(struct nft_chain *c) +@@ -96,13 +96,13 @@ EXPORT_SYMBOL(nftnl_chain_alloc, nft_chain_alloc); + void nftnl_chain_free(struct nftnl_chain *c) { if (c->table != NULL) - xfree(c->table); @@ -56,97 +69,143 @@ index b67385e..9ccde54 100644 if (c->type != NULL) - xfree(c->type); + nftnl_xfree(c->type); + if (c->dev != NULL) +- xfree(c->dev); ++ nftnl_xfree(c->dev); - xfree(c); + nftnl_xfree(c); } - EXPORT_SYMBOL(nft_chain_free); + EXPORT_SYMBOL(nftnl_chain_free, nft_chain_free); -@@ -111,7 +111,7 @@ void nft_chain_attr_unset(struct nft_chain *c, uint16_t attr) +@@ -120,7 +120,7 @@ void nftnl_chain_unset(struct nftnl_chain *c, uint16_t attr) switch (attr) { - case NFT_CHAIN_ATTR_TABLE: + case NFTNL_CHAIN_TABLE: if (c->table) { - xfree(c->table); + nftnl_xfree(c->table); c->table = NULL; } break; -@@ -119,7 +119,7 @@ void nft_chain_attr_unset(struct nft_chain *c, uint16_t attr) +@@ -128,7 +128,7 @@ void nftnl_chain_unset(struct nftnl_chain *c, uint16_t attr) break; - case NFT_CHAIN_ATTR_TYPE: + case NFTNL_CHAIN_TYPE: if (c->type) { - xfree(c->type); + nftnl_xfree(c->type); c->type = NULL; } break; -@@ -164,7 +164,7 @@ void nft_chain_attr_set_data(struct nft_chain *c, uint16_t attr, +@@ -143,7 +143,7 @@ void nftnl_chain_unset(struct nftnl_chain *c, uint16_t attr) + break; + case NFTNL_CHAIN_DEV: + if (c->dev) { +- xfree(c->dev); ++ nftnl_xfree(c->dev); + c->dev = NULL; + } + break; +@@ -179,7 +179,7 @@ void nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, break; - case NFT_CHAIN_ATTR_TABLE: + case NFTNL_CHAIN_TABLE: if (c->table) - xfree(c->table); + nftnl_xfree(c->table); c->table = strdup(data); break; -@@ -194,7 +194,7 @@ void nft_chain_attr_set_data(struct nft_chain *c, uint16_t attr, +@@ -209,13 +209,13 @@ void nftnl_chain_set_data(struct nftnl_chain *c, uint16_t attr, break; - case NFT_CHAIN_ATTR_TYPE: + case NFTNL_CHAIN_TYPE: if (c->type) - xfree(c->type); + nftnl_xfree(c->type); c->type = strdup(data); break; -@@ -915,7 +915,7 @@ void nft_chain_list_free(struct nft_chain_list *list) + case NFTNL_CHAIN_DEV: + if (c->dev) +- xfree(c->dev); ++ nftnl_xfree(c->dev); + + c->dev = strdup(data); + break; +@@ -535,7 +535,7 @@ int nftnl_chain_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_chain *c) + c->flags |= (1 << NFTNL_CHAIN_NAME); + } + if (tb[NFTA_CHAIN_TABLE]) { +- xfree(c->table); ++ nftnl_xfree(c->table); + c->table = strdup(mnl_attr_get_str(tb[NFTA_CHAIN_TABLE])); + c->flags |= (1 << NFTNL_CHAIN_TABLE); + } +@@ -562,7 +562,7 @@ int nftnl_chain_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_chain *c) + c->flags |= (1 << NFTNL_CHAIN_HANDLE); + } + if (tb[NFTA_CHAIN_TYPE]) { +- xfree(c->type); ++ nftnl_xfree(c->type); + c->type = strdup(mnl_attr_get_str(tb[NFTA_CHAIN_TYPE])); + c->flags |= (1 << NFTNL_CHAIN_TYPE); + } +@@ -976,7 +976,7 @@ void nftnl_chain_list_free(struct nftnl_chain_list *list) list_del(&r->head); - nft_chain_free(r); + nftnl_chain_free(r); } - xfree(list); + nftnl_xfree(list); } - EXPORT_SYMBOL(nft_chain_list_free); + EXPORT_SYMBOL(nftnl_chain_list_free, nft_chain_list_free); -@@ -994,6 +994,6 @@ EXPORT_SYMBOL(nft_chain_list_iter_next); +@@ -1061,6 +1061,6 @@ EXPORT_SYMBOL(nftnl_chain_list_iter_next, nft_chain_list_iter_next); - void nft_chain_list_iter_destroy(struct nft_chain_list_iter *iter) + void nftnl_chain_list_iter_destroy(struct nftnl_chain_list_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nft_chain_list_iter_destroy); + EXPORT_SYMBOL(nftnl_chain_list_iter_destroy, nft_chain_list_iter_destroy); diff --git a/src/common.c b/src/common.c -index a6f2508..735b098 100644 +index 43d2cfd..0bc814d 100644 --- a/src/common.c +++ b/src/common.c -@@ -48,7 +48,7 @@ EXPORT_SYMBOL(nft_parse_err_alloc); +@@ -58,7 +58,7 @@ EXPORT_SYMBOL(nftnl_parse_err_alloc, nft_parse_err_alloc); - void nft_parse_err_free(struct nft_parse_err *err) + void nftnl_parse_err_free(struct nftnl_parse_err *err) { - xfree(err); + nftnl_xfree(err); } - EXPORT_SYMBOL(nft_parse_err_free); + EXPORT_SYMBOL(nftnl_parse_err_free, nft_parse_err_free); diff --git a/src/expr.c b/src/expr.c -index 55557da..d23af01 100644 +index 3249a5c..8563d9e 100644 --- a/src/expr.c +++ b/src/expr.c -@@ -52,7 +52,7 @@ void nft_rule_expr_free(struct nft_rule_expr *expr) +@@ -50,7 +50,7 @@ void nftnl_expr_free(struct nftnl_expr *expr) if (expr->ops->free) expr->ops->free(expr); - xfree(expr); + nftnl_xfree(expr); } - EXPORT_SYMBOL(nft_rule_expr_free); + EXPORT_SYMBOL(nftnl_expr_free, nft_rule_expr_free); + +@@ -257,7 +257,7 @@ struct nftnl_expr *nftnl_expr_parse(struct nlattr *attr) + return expr; + err2: +- xfree(expr); ++ nftnl_xfree(expr); + err1: + return NULL; + } diff --git a/src/expr/data_reg.c b/src/expr/data_reg.c -index 33b3346..a217d77 100644 +index b85d2ef..32becb4 100644 --- a/src/expr/data_reg.c +++ b/src/expr/data_reg.c -@@ -130,7 +130,7 @@ static int nft_data_reg_verdict_xml_parse(union nft_data_reg *reg, - NFT_XML_OPT, err); +@@ -123,7 +123,7 @@ static int nftnl_data_reg_verdict_xml_parse(union nftnl_data_reg *reg, + NFTNL_XML_OPT, err); if (chain != NULL) { if (reg->chain) - xfree(reg->chain); @@ -154,13 +213,22 @@ index 33b3346..a217d77 100644 reg->chain = strdup(chain); } +@@ -504,7 +504,7 @@ void nftnl_free_verdict(union nftnl_data_reg *data) + switch(data->verdict) { + case NFT_JUMP: + case NFT_GOTO: +- xfree(data->chain); ++ nftnl_xfree(data->chain); + break; + default: + break; diff --git a/src/expr/immediate.c b/src/expr/immediate.c -index 3d4e48c..d48a4e1 100644 +index c2fb9ad..4a8cd83 100644 --- a/src/expr/immediate.c +++ b/src/expr/immediate.c -@@ -47,7 +47,7 @@ nft_rule_expr_immediate_set(struct nft_rule_expr *e, uint16_t type, +@@ -44,7 +44,7 @@ nftnl_expr_immediate_set(struct nftnl_expr *e, uint16_t type, break; - case NFT_EXPR_IMM_CHAIN: + case NFTNL_EXPR_IMM_CHAIN: if (imm->data.chain) - xfree(imm->data.chain); + nftnl_xfree(imm->data.chain); @@ -168,19 +236,19 @@ index 3d4e48c..d48a4e1 100644 imm->data.chain = strdup(data); break; diff --git a/src/expr/log.c b/src/expr/log.c -index 0a324c4..0eec1dc 100644 +index f615d8e..1957aa6 100644 --- a/src/expr/log.c +++ b/src/expr/log.c -@@ -40,7 +40,7 @@ static int nft_rule_expr_log_set(struct nft_rule_expr *e, uint16_t type, +@@ -38,7 +38,7 @@ static int nftnl_expr_log_set(struct nftnl_expr *e, uint16_t type, switch(type) { - case NFT_EXPR_LOG_PREFIX: + case NFTNL_EXPR_LOG_PREFIX: if (log->prefix) - xfree(log->prefix); + nftnl_xfree(log->prefix); log->prefix = strdup(data); break; -@@ -154,7 +154,7 @@ nft_rule_expr_log_parse(struct nft_rule_expr *e, struct nlattr *attr) +@@ -152,7 +152,7 @@ nftnl_expr_log_parse(struct nftnl_expr *e, struct nlattr *attr) if (tb[NFTA_LOG_PREFIX]) { if (log->prefix) @@ -188,10 +256,10 @@ index 0a324c4..0eec1dc 100644 + nftnl_xfree(log->prefix); log->prefix = strdup(mnl_attr_get_str(tb[NFTA_LOG_PREFIX])); - e->flags |= (1 << NFT_EXPR_LOG_PREFIX); -@@ -331,7 +331,7 @@ static void nft_rule_expr_log_free(struct nft_rule_expr *e) + e->flags |= (1 << NFTNL_EXPR_LOG_PREFIX); +@@ -329,7 +329,7 @@ static void nftnl_expr_log_free(struct nftnl_expr *e) { - struct nft_expr_log *log = nft_expr_data(e); + struct nftnl_expr_log *log = nftnl_expr_data(e); - xfree(log->prefix); + nftnl_xfree(log->prefix); @@ -199,19 +267,19 @@ index 0a324c4..0eec1dc 100644 struct expr_ops expr_ops_log = { diff --git a/src/expr/match.c b/src/expr/match.c -index 26a368f..b452d06 100644 +index ddecb43..2071b3c 100644 --- a/src/expr/match.c +++ b/src/expr/match.c -@@ -53,7 +53,7 @@ nft_rule_expr_match_set(struct nft_rule_expr *e, uint16_t type, +@@ -50,7 +50,7 @@ nftnl_expr_match_set(struct nftnl_expr *e, uint16_t type, break; - case NFT_EXPR_MT_INFO: + case NFTNL_EXPR_MT_INFO: if (mt->data) - xfree(mt->data); + nftnl_xfree(mt->data); mt->data = data; mt->data_len = data_len; -@@ -150,7 +150,7 @@ static int nft_rule_expr_match_parse(struct nft_rule_expr *e, struct nlattr *att +@@ -147,7 +147,7 @@ static int nftnl_expr_match_parse(struct nftnl_expr *e, struct nlattr *attr) void *match_data; if (match->data) @@ -220,9 +288,9 @@ index 26a368f..b452d06 100644 match_data = calloc(1, len); if (match_data == NULL) -@@ -240,7 +240,7 @@ static void nft_rule_expr_match_free(struct nft_rule_expr *e) +@@ -237,7 +237,7 @@ static void nftnl_expr_match_free(struct nftnl_expr *e) { - struct nft_expr_match *match = nft_expr_data(e); + struct nftnl_expr_match *match = nftnl_expr_data(e); - xfree(match->data); + nftnl_xfree(match->data); @@ -230,19 +298,19 @@ index 26a368f..b452d06 100644 struct expr_ops expr_ops_match = { diff --git a/src/expr/target.c b/src/expr/target.c -index a79bc9e..bf836b7 100644 +index cbbee60..064f56a 100644 --- a/src/expr/target.c +++ b/src/expr/target.c -@@ -53,7 +53,7 @@ nft_rule_expr_target_set(struct nft_rule_expr *e, uint16_t type, +@@ -50,7 +50,7 @@ nftnl_expr_target_set(struct nftnl_expr *e, uint16_t type, break; - case NFT_EXPR_TG_INFO: + case NFTNL_EXPR_TG_INFO: if (tg->data) - xfree(tg->data); + nftnl_xfree(tg->data); tg->data = data; tg->data_len = data_len; -@@ -150,7 +150,7 @@ static int nft_rule_expr_target_parse(struct nft_rule_expr *e, struct nlattr *at +@@ -147,7 +147,7 @@ static int nftnl_expr_target_parse(struct nftnl_expr *e, struct nlattr *attr) void *target_data; if (target->data) @@ -251,9 +319,9 @@ index a79bc9e..bf836b7 100644 target_data = calloc(1, len); if (target_data == NULL) -@@ -241,7 +241,7 @@ static void nft_rule_expr_target_free(struct nft_rule_expr *e) +@@ -238,7 +238,7 @@ static void nftnl_expr_target_free(struct nftnl_expr *e) { - struct nft_expr_target *target = nft_expr_data(e); + struct nftnl_expr_target *target = nftnl_expr_data(e); - xfree(target->data); + nftnl_xfree(target->data); @@ -261,36 +329,23 @@ index a79bc9e..bf836b7 100644 struct expr_ops expr_ops_target = { diff --git a/src/gen.c b/src/gen.c -index 21d3a49..515abc4 100644 +index eb3b70d..dac3e47 100644 --- a/src/gen.c +++ b/src/gen.c -@@ -37,7 +37,7 @@ EXPORT_SYMBOL(nft_gen_alloc); +@@ -37,7 +37,7 @@ EXPORT_SYMBOL(nftnl_gen_alloc, nft_gen_alloc); - void nft_gen_free(struct nft_gen *gen) + void nftnl_gen_free(struct nftnl_gen *gen) { - xfree(gen); + nftnl_xfree(gen); } - EXPORT_SYMBOL(nft_gen_free); + EXPORT_SYMBOL(nftnl_gen_free, nft_gen_free); -diff --git a/src/internal.h b/src/internal.h -index db9af11..898a7e7 100644 ---- a/src/internal.h -+++ b/src/internal.h -@@ -16,7 +16,7 @@ - #include - #include - --#define xfree(ptr) free((void *)ptr); -+#define nftnl_xfree(ptr) free((void *)ptr); - - #define BASE_DEC 10 - #define BASE_HEX 16 diff --git a/src/mxml.c b/src/mxml.c -index a97d380..f4b5a05 100644 +index 51dbf1b..5b2aa57 100644 --- a/src/mxml.c +++ b/src/mxml.c -@@ -84,7 +84,7 @@ struct nft_rule_expr *nft_mxml_expr_parse(mxml_node_t *node, +@@ -85,7 +85,7 @@ struct nftnl_expr *nftnl_mxml_expr_parse(mxml_node_t *node, goto err_expr; tree = mxmlLoadString(NULL, xml_text, MXML_OPAQUE_CALLBACK); @@ -300,11 +355,11 @@ index a97d380..f4b5a05 100644 if (tree == NULL) goto err_expr; diff --git a/src/rule.c b/src/rule.c -index c974f8b..56bf6ef 100644 +index 0fb27ed..f8e33ff 100644 --- a/src/rule.c +++ b/src/rule.c -@@ -75,11 +75,11 @@ void nft_rule_free(struct nft_rule *r) - nft_rule_expr_free(e); +@@ -72,11 +72,11 @@ void nftnl_rule_free(struct nftnl_rule *r) + nftnl_expr_free(e); if (r->table != NULL) - xfree(r->table); @@ -316,50 +371,56 @@ index c974f8b..56bf6ef 100644 - xfree(r); + nftnl_xfree(r); } - EXPORT_SYMBOL(nft_rule_free); + EXPORT_SYMBOL(nftnl_rule_free, nft_rule_free); -@@ -97,13 +97,13 @@ void nft_rule_attr_unset(struct nft_rule *r, uint16_t attr) +@@ -94,13 +94,13 @@ void nftnl_rule_unset(struct nftnl_rule *r, uint16_t attr) switch (attr) { - case NFT_RULE_ATTR_TABLE: + case NFTNL_RULE_TABLE: if (r->table) { - xfree(r->table); + nftnl_xfree(r->table); r->table = NULL; } break; - case NFT_RULE_ATTR_CHAIN: + case NFTNL_RULE_CHAIN: if (r->chain) { - xfree(r->chain); + nftnl_xfree(r->chain); r->chain = NULL; } break; -@@ -139,13 +139,13 @@ void nft_rule_attr_set_data(struct nft_rule *r, uint16_t attr, +@@ -136,13 +136,13 @@ void nftnl_rule_set_data(struct nftnl_rule *r, uint16_t attr, switch(attr) { - case NFT_RULE_ATTR_TABLE: + case NFTNL_RULE_TABLE: if (r->table) - xfree(r->table); + nftnl_xfree(r->table); r->table = strdup(data); break; - case NFT_RULE_ATTR_CHAIN: + case NFTNL_RULE_CHAIN: if (r->chain) - xfree(r->chain); + nftnl_xfree(r->chain); r->chain = strdup(data); break; -@@ -395,7 +395,7 @@ static int nft_rule_parse_expr2(struct nlattr *attr, struct nft_rule *r) +@@ -425,12 +425,12 @@ int nftnl_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_rule *r) + return -1; - if (tb[NFTA_EXPR_DATA]) { - if (expr->ops->parse(expr, tb[NFTA_EXPR_DATA]) < 0) { -- xfree(expr); -+ nftnl_xfree(expr); - return -1; - } + if (tb[NFTA_RULE_TABLE]) { +- xfree(r->table); ++ nftnl_xfree(r->table); + r->table = strdup(mnl_attr_get_str(tb[NFTA_RULE_TABLE])); + r->flags |= (1 << NFTNL_RULE_TABLE); + } + if (tb[NFTA_RULE_CHAIN]) { +- xfree(r->chain); ++ nftnl_xfree(r->chain); + r->chain = strdup(mnl_attr_get_str(tb[NFTA_RULE_CHAIN])); + r->flags |= (1 << NFTNL_RULE_CHAIN); } -@@ -491,7 +491,7 @@ int nft_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nft_rule *r) +@@ -451,7 +451,7 @@ int nftnl_rule_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_rule *r) mnl_attr_get_payload(tb[NFTA_RULE_USERDATA]); if (r->user.data) @@ -368,51 +429,51 @@ index c974f8b..56bf6ef 100644 r->user.len = mnl_attr_get_payload_len(tb[NFTA_RULE_USERDATA]); -@@ -1064,7 +1064,7 @@ EXPORT_SYMBOL(nft_rule_expr_iter_next); +@@ -1042,7 +1042,7 @@ EXPORT_SYMBOL(nftnl_expr_iter_next, nft_rule_expr_iter_next); - void nft_rule_expr_iter_destroy(struct nft_rule_expr_iter *iter) + void nftnl_expr_iter_destroy(struct nftnl_expr_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nft_rule_expr_iter_destroy); + EXPORT_SYMBOL(nftnl_expr_iter_destroy, nft_rule_expr_iter_destroy); -@@ -1094,7 +1094,7 @@ void nft_rule_list_free(struct nft_rule_list *list) +@@ -1072,7 +1072,7 @@ void nftnl_rule_list_free(struct nftnl_rule_list *list) list_del(&r->head); - nft_rule_free(r); + nftnl_rule_free(r); } - xfree(list); + nftnl_xfree(list); } - EXPORT_SYMBOL(nft_rule_list_free); + EXPORT_SYMBOL(nftnl_rule_list_free, nft_rule_list_free); -@@ -1179,6 +1179,6 @@ EXPORT_SYMBOL(nft_rule_list_iter_next); +@@ -1163,6 +1163,6 @@ EXPORT_SYMBOL(nftnl_rule_list_iter_next, nft_rule_list_iter_next); - void nft_rule_list_iter_destroy(struct nft_rule_list_iter *iter) + void nftnl_rule_list_iter_destroy(struct nftnl_rule_list_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nft_rule_list_iter_destroy); + EXPORT_SYMBOL(nftnl_rule_list_iter_destroy, nft_rule_list_iter_destroy); diff --git a/src/ruleset.c b/src/ruleset.c -index 6bb7582..e482e18 100644 +index 7b1ab7a..b8188de 100644 --- a/src/ruleset.c +++ b/src/ruleset.c -@@ -48,7 +48,7 @@ void nft_ruleset_free(struct nft_ruleset *r) - nft_set_list_free(r->set_list); - if (r->flags & (1 << NFT_RULESET_ATTR_RULELIST)) - nft_rule_list_free(r->rule_list); +@@ -74,7 +74,7 @@ void nftnl_ruleset_free(struct nftnl_ruleset *r) + nftnl_set_list_free(r->set_list); + if (r->flags & (1 << NFTNL_RULESET_RULELIST)) + nftnl_rule_list_free(r->rule_list); - xfree(r); + nftnl_xfree(r); } - EXPORT_SYMBOL(nft_ruleset_free); + EXPORT_SYMBOL(nftnl_ruleset_free, nft_ruleset_free); diff --git a/src/set.c b/src/set.c -index 2385031..0355f99 100644 +index f5a9454..4eff325 100644 --- a/src/set.c +++ b/src/set.c -@@ -47,15 +47,15 @@ void nft_set_free(struct nft_set *s) - struct nft_set_elem *elem, *tmp; +@@ -45,15 +45,15 @@ void nftnl_set_free(struct nftnl_set *s) + struct nftnl_set_elem *elem, *tmp; if (s->table != NULL) - xfree(s->table); @@ -423,165 +484,218 @@ index 2385031..0355f99 100644 list_for_each_entry_safe(elem, tmp, &s->element_list, head) { list_del(&elem->head); - nft_set_elem_free(elem); + nftnl_set_elem_free(elem); } - xfree(s); + nftnl_xfree(s); } - EXPORT_SYMBOL(nft_set_free); + EXPORT_SYMBOL(nftnl_set_free, nft_set_free); -@@ -71,14 +71,14 @@ void nft_set_attr_unset(struct nft_set *s, uint16_t attr) - case NFT_SET_ATTR_TABLE: - if (s->flags & (1 << NFT_SET_ATTR_TABLE)) +@@ -69,14 +69,14 @@ void nftnl_set_unset(struct nftnl_set *s, uint16_t attr) + case NFTNL_SET_TABLE: + if (s->flags & (1 << NFTNL_SET_TABLE)) if (s->table) { - xfree(s->table); + nftnl_xfree(s->table); s->table = NULL; } break; - case NFT_SET_ATTR_NAME: - if (s->flags & (1 << NFT_SET_ATTR_NAME)) + case NFTNL_SET_NAME: + if (s->flags & (1 << NFTNL_SET_NAME)) if (s->name) { - xfree(s->name); + nftnl_xfree(s->name); s->name = NULL; } break; -@@ -122,13 +122,13 @@ void nft_set_attr_set_data(struct nft_set *s, uint16_t attr, const void *data, +@@ -124,13 +124,13 @@ void nftnl_set_set_data(struct nftnl_set *s, uint16_t attr, const void *data, switch(attr) { - case NFT_SET_ATTR_TABLE: + case NFTNL_SET_TABLE: if (s->table) - xfree(s->table); + nftnl_xfree(s->table); s->table = strdup(data); break; - case NFT_SET_ATTR_NAME: + case NFTNL_SET_NAME: if (s->name) - xfree(s->name); + nftnl_xfree(s->name); s->name = strdup(data); break; -@@ -963,7 +963,7 @@ void nft_set_list_free(struct nft_set_list *list) +@@ -435,12 +435,12 @@ int nftnl_set_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) + return -1; + + if (tb[NFTA_SET_TABLE]) { +- xfree(s->table); ++ nftnl_xfree(s->table); + s->table = strdup(mnl_attr_get_str(tb[NFTA_SET_TABLE])); + s->flags |= (1 << NFTNL_SET_TABLE); + } + if (tb[NFTA_SET_NAME]) { +- xfree(s->name); ++ nftnl_xfree(s->name); + s->name = strdup(mnl_attr_get_str(tb[NFTA_SET_NAME])); + s->flags |= (1 << NFTNL_SET_NAME); + } +@@ -1085,7 +1085,7 @@ void nftnl_set_list_free(struct nftnl_set_list *list) list_del(&s->head); - nft_set_free(s); + nftnl_set_free(s); } - xfree(list); + nftnl_xfree(list); } - EXPORT_SYMBOL(nft_set_list_free); + EXPORT_SYMBOL(nftnl_set_list_free, nft_set_list_free); -@@ -1047,7 +1047,7 @@ EXPORT_SYMBOL(nft_set_list_iter_next); +@@ -1175,7 +1175,7 @@ EXPORT_SYMBOL(nftnl_set_list_iter_next, nft_set_list_iter_next); - void nft_set_list_iter_destroy(struct nft_set_list_iter *iter) + void nftnl_set_list_iter_destroy(struct nftnl_set_list_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nft_set_list_iter_destroy); + EXPORT_SYMBOL(nftnl_set_list_iter_destroy, nft_set_list_iter_destroy); diff --git a/src/set_elem.c b/src/set_elem.c -index 95f12bf..12d636e 100644 +index 293ce15..4e20159 100644 --- a/src/set_elem.c +++ b/src/set_elem.c -@@ -44,11 +44,11 @@ void nft_set_elem_free(struct nft_set_elem *s) +@@ -43,7 +43,7 @@ void nftnl_set_elem_free(struct nftnl_set_elem *s) { - if (s->flags & (1 << NFT_SET_ELEM_ATTR_CHAIN)) { + if (s->flags & (1 << NFTNL_SET_ELEM_CHAIN)) { if (s->data.chain) { - xfree(s->data.chain); + nftnl_xfree(s->data.chain); s->data.chain = NULL; } } +@@ -51,7 +51,7 @@ void nftnl_set_elem_free(struct nftnl_set_elem *s) + if (s->flags & (1 << NFTNL_SET_ELEM_EXPR)) + nftnl_expr_free(s->expr); + - xfree(s); + nftnl_xfree(s); } - EXPORT_SYMBOL(nft_set_elem_free); + EXPORT_SYMBOL(nftnl_set_elem_free, nft_set_elem_free); -@@ -64,7 +64,7 @@ void nft_set_elem_attr_unset(struct nft_set_elem *s, uint16_t attr) - case NFT_SET_ELEM_ATTR_CHAIN: - if (s->flags & (1 << NFT_SET_ELEM_ATTR_CHAIN)) { +@@ -67,7 +67,7 @@ void nftnl_set_elem_unset(struct nftnl_set_elem *s, uint16_t attr) + case NFTNL_SET_ELEM_CHAIN: + if (s->flags & (1 << NFTNL_SET_ELEM_CHAIN)) { if (s->data.chain) { - xfree(s->data.chain); + nftnl_xfree(s->data.chain); s->data.chain = NULL; } } -@@ -98,7 +98,7 @@ void nft_set_elem_attr_set(struct nft_set_elem *s, uint16_t attr, +@@ -110,7 +110,7 @@ void nftnl_set_elem_set(struct nftnl_set_elem *s, uint16_t attr, break; - case NFT_SET_ELEM_ATTR_CHAIN: /* NFTA_SET_ELEM_DATA */ + case NFTNL_SET_ELEM_CHAIN: /* NFTA_SET_ELEM_DATA */ if (s->data.chain) - xfree(s->data.chain); + nftnl_xfree(s->data.chain); s->data.chain = strdup(data); break; -@@ -716,7 +716,7 @@ EXPORT_SYMBOL(nft_set_elems_iter_next); +@@ -390,7 +390,7 @@ static int nftnl_set_elems_parse2(struct nftnl_set *s, const struct nlattr *nest + mnl_attr_get_payload(tb[NFTA_SET_ELEM_USERDATA]); + + if (e->user.data) +- xfree(e->user.data); ++ nftnl_xfree(e->user.data); - void nft_set_elems_iter_destroy(struct nft_set_elems_iter *iter) + e->user.len = mnl_attr_get_payload_len(tb[NFTA_SET_ELEM_USERDATA]); + e->user.data = malloc(e->user.len); +@@ -462,13 +462,13 @@ int nftnl_set_elems_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_set *s) + return -1; + + if (tb[NFTA_SET_ELEM_LIST_TABLE]) { +- xfree(s->table); ++ nftnl_xfree(s->table); + s->table = + strdup(mnl_attr_get_str(tb[NFTA_SET_ELEM_LIST_TABLE])); + s->flags |= (1 << NFTNL_SET_TABLE); + } + if (tb[NFTA_SET_ELEM_LIST_SET]) { +- xfree(s->name); ++ nftnl_xfree(s->name); + s->name = + strdup(mnl_attr_get_str(tb[NFTA_SET_ELEM_LIST_SET])); + s->flags |= (1 << NFTNL_SET_NAME); +@@ -853,7 +853,7 @@ EXPORT_SYMBOL(nftnl_set_elems_iter_next, nft_set_elems_iter_next); + + void nftnl_set_elems_iter_destroy(struct nftnl_set_elems_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nft_set_elems_iter_destroy); + EXPORT_SYMBOL(nftnl_set_elems_iter_destroy, nft_set_elems_iter_destroy); diff --git a/src/table.c b/src/table.c -index c93e6fb..c89bca1 100644 +index 28f6bd6..6aa2eb5 100644 --- a/src/table.c +++ b/src/table.c -@@ -45,9 +45,9 @@ EXPORT_SYMBOL(nft_table_alloc); - void nft_table_free(struct nft_table *t) +@@ -45,9 +45,9 @@ EXPORT_SYMBOL(nftnl_table_alloc, nft_table_alloc); + void nftnl_table_free(struct nftnl_table *t) { - if (t->flags & (1 << NFT_TABLE_ATTR_NAME)) + if (t->flags & (1 << NFTNL_TABLE_NAME)) - xfree(t->name); + nftnl_xfree(t->name); - xfree(t); + nftnl_xfree(t); } - EXPORT_SYMBOL(nft_table_free); + EXPORT_SYMBOL(nftnl_table_free, nft_table_free); -@@ -65,7 +65,7 @@ void nft_table_attr_unset(struct nft_table *t, uint16_t attr) +@@ -65,7 +65,7 @@ void nftnl_table_unset(struct nftnl_table *t, uint16_t attr) switch (attr) { - case NFT_TABLE_ATTR_NAME: + case NFTNL_TABLE_NAME: if (t->name) { - xfree(t->name); + nftnl_xfree(t->name); t->name = NULL; } break; -@@ -95,7 +95,7 @@ void nft_table_attr_set_data(struct nft_table *t, uint16_t attr, +@@ -95,7 +95,7 @@ void nftnl_table_set_data(struct nftnl_table *t, uint16_t attr, switch (attr) { - case NFT_TABLE_ATTR_NAME: + case NFTNL_TABLE_NAME: if (t->name) - xfree(t->name); + nftnl_xfree(t->name); t->name = strdup(data); break; -@@ -486,7 +486,7 @@ void nft_table_list_free(struct nft_table_list *list) +@@ -229,7 +229,7 @@ int nftnl_table_nlmsg_parse(const struct nlmsghdr *nlh, struct nftnl_table *t) + return -1; + + if (tb[NFTA_TABLE_NAME]) { +- xfree(t->name); ++ nftnl_xfree(t->name); + t->name = strdup(mnl_attr_get_str(tb[NFTA_TABLE_NAME])); + t->flags |= (1 << NFTNL_TABLE_NAME); + } +@@ -496,7 +496,7 @@ void nftnl_table_list_free(struct nftnl_table_list *list) list_del(&r->head); - nft_table_free(r); + nftnl_table_free(r); } - xfree(list); + nftnl_xfree(list); } - EXPORT_SYMBOL(nft_table_list_free); + EXPORT_SYMBOL(nftnl_table_list_free, nft_table_list_free); -@@ -565,6 +565,6 @@ EXPORT_SYMBOL(nft_table_list_iter_next); +@@ -581,6 +581,6 @@ EXPORT_SYMBOL(nftnl_table_list_iter_next, nft_table_list_iter_next); - void nft_table_list_iter_destroy(struct nft_table_list_iter *iter) + void nftnl_table_list_iter_destroy(struct nftnl_table_list_iter *iter) { - xfree(iter); + nftnl_xfree(iter); } - EXPORT_SYMBOL(nft_table_list_iter_destroy); + EXPORT_SYMBOL(nftnl_table_list_iter_destroy, nft_table_list_iter_destroy); diff --git a/src/utils.c b/src/utils.c -index 9013b68..7058269 100644 +index c241e5f..ba44a60 100644 --- a/src/utils.c +++ b/src/utils.c -@@ -206,7 +206,7 @@ int nft_fprintf(FILE *fp, void *obj, uint32_t type, uint32_t flags, +@@ -249,7 +249,7 @@ int nftnl_fprintf(FILE *fp, void *obj, uint32_t cmd, uint32_t type, uint32_t fla out: if (buf != _buf) @@ -591,5 +705,5 @@ index 9013b68..7058269 100644 return ret; } -- -2.1.0 +2.4.9 diff --git a/package/libnftnl/libnftnl.hash b/package/libnftnl/libnftnl.hash index 0e857e5176b..50896fba86a 100644 --- a/package/libnftnl/libnftnl.hash +++ b/package/libnftnl/libnftnl.hash @@ -1,2 +1,2 @@ -# From http://www.netfilter.org/projects/libnftnl/downloads.html#libnftnl-1.0.3 -sha1 11da04c6632c3b06728e2341cd9d7cfbb69a484d libnftnl-1.0.3.tar.bz2 +# From http://www.netfilter.org/projects/libnftnl/downloads.html#libnftnl-1.0.5 +sha1 2ae3172251574ee36077af760933ec0369960a17 libnftnl-1.0.5.tar.bz2 diff --git a/package/libnftnl/libnftnl.mk b/package/libnftnl/libnftnl.mk index 703bdee876c..37c82d3a6a2 100644 --- a/package/libnftnl/libnftnl.mk +++ b/package/libnftnl/libnftnl.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNFTNL_VERSION = 1.0.3 +LIBNFTNL_VERSION = 1.0.5 LIBNFTNL_SITE = http://netfilter.org/projects/libnftnl/files LIBNFTNL_SOURCE = libnftnl-$(LIBNFTNL_VERSION).tar.bz2 LIBNFTNL_LICENSE = GPLv2+ diff --git a/package/libnl/libnl.hash b/package/libnl/libnl.hash index 9ce5ffed8d9..2f1a3cb1b32 100644 --- a/package/libnl/libnl.hash +++ b/package/libnl/libnl.hash @@ -1,2 +1,2 @@ -# From https://github.com/thom311/libnl/releases/download/libnl3_2_26/libnl-3.2.26.tar.gz.sha256sum -sha256 1323ff6cea47efe9f988893b09840942a8c36131f472a9f3b96eb68d8f8d7555 libnl-3.2.26.tar.gz +# From https://github.com/thom311/libnl/releases/download/libnl3_2_27/libnl-3.2.27.tar.gz.sha256sum +sha256 4bbbf92b3c78a90f423cf96260bf419a28b75db8cced47051217a56795f58ec6 libnl-3.2.27.tar.gz diff --git a/package/libnl/libnl.mk b/package/libnl/libnl.mk index 5993e970992..85c0db86f6c 100644 --- a/package/libnl/libnl.mk +++ b/package/libnl/libnl.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNL_VERSION = 3.2.26 +LIBNL_VERSION = 3.2.27 LIBNL_SITE = https://github.com/thom311/libnl/releases/download/libnl$(subst .,_,$(LIBNL_VERSION)) LIBNL_LICENSE = LGPLv2.1+ LIBNL_LICENSE_FILES = COPYING diff --git a/package/libnspr/0001-nios2.patch b/package/libnspr/0001-nios2.patch index 4fc6551ee85..22cacd72a1a 100644 --- a/package/libnspr/0001-nios2.patch +++ b/package/libnspr/0001-nios2.patch @@ -1,12 +1,12 @@ Add Nios-II support -[Gustavo: update for nspr 4.10.6] +[Gustavo: update for nspr 4.10.9] Signed-off-by: Ezequiel Garcia -diff -Nura nspr-4.10.6.orig/nspr/pr/include/md/_linux.cfg nspr-4.10.6/nspr/pr/include/md/_linux.cfg ---- nspr-4.10.6.orig/nspr/pr/include/md/_linux.cfg 2014-06-18 10:26:22.447502521 -0300 -+++ nspr-4.10.6/nspr/pr/include/md/_linux.cfg 2014-06-18 10:26:32.746850581 -0300 -@@ -924,6 +924,51 @@ +diff -Nura nspr-4.10.9.orig/nspr/pr/include/md/_linux.cfg nspr-4.10.9/nspr/pr/include/md/_linux.cfg +--- nspr-4.10.9.orig/nspr/pr/include/md/_linux.cfg 2015-10-03 08:11:43.229387215 -0300 ++++ nspr-4.10.9/nspr/pr/include/md/_linux.cfg 2015-10-03 08:11:55.277798841 -0300 +@@ -1017,6 +1017,51 @@ #define PR_BYTES_PER_WORD_LOG2 2 #define PR_BYTES_PER_DWORD_LOG2 3 @@ -58,13 +58,13 @@ diff -Nura nspr-4.10.6.orig/nspr/pr/include/md/_linux.cfg nspr-4.10.6/nspr/pr/in #else #error "Unknown CPU architecture" -diff -Nura nspr-4.10.6.orig/nspr/pr/include/md/_linux.h nspr-4.10.6/nspr/pr/include/md/_linux.h ---- nspr-4.10.6.orig/nspr/pr/include/md/_linux.h 2014-06-18 10:26:22.446502487 -0300 -+++ nspr-4.10.6/nspr/pr/include/md/_linux.h 2014-06-18 10:26:32.747850615 -0300 -@@ -55,6 +55,8 @@ - #define _PR_SI_ARCHITECTURE "avr32" - #elif defined(__m32r__) +diff -Nura nspr-4.10.9.orig/nspr/pr/include/md/_linux.h nspr-4.10.9/nspr/pr/include/md/_linux.h +--- nspr-4.10.9.orig/nspr/pr/include/md/_linux.h 2015-10-03 08:11:43.229387215 -0300 ++++ nspr-4.10.9/nspr/pr/include/md/_linux.h 2015-10-03 08:12:22.474728003 -0300 +@@ -57,6 +57,8 @@ #define _PR_SI_ARCHITECTURE "m32r" + #elif defined(__or1k__) + #define _PR_SI_ARCHITECTURE "or1k" +#elif defined(nios2) +#define _PR_SI_ARCHITECTURE "nios2" #else diff --git a/package/libnspr/0002-microblaze.patch b/package/libnspr/0002-microblaze.patch index 30b17f37680..f1416e7e97e 100644 --- a/package/libnspr/0002-microblaze.patch +++ b/package/libnspr/0002-microblaze.patch @@ -1,12 +1,12 @@ Add Microblaze support -[Gustavo: update for nspr 4.10.6] +[Gustavo: update for nspr 4.10.9] Signed-off-by: Spenser Gilliland -diff -Nura nspr-4.10.6.nios2/nspr/pr/include/md/_linux.cfg nspr-4.10.6/nspr/pr/include/md/_linux.cfg ---- nspr-4.10.6.nios2/nspr/pr/include/md/_linux.cfg 2014-06-18 10:29:15.816361425 -0300 -+++ nspr-4.10.6/nspr/pr/include/md/_linux.cfg 2014-06-18 10:26:59.908768508 -0300 -@@ -969,6 +969,56 @@ +diff -Nura nspr-4.10.9.orig/nspr/pr/include/md/_linux.cfg nspr-4.10.9/nspr/pr/include/md/_linux.cfg +--- nspr-4.10.9.orig/nspr/pr/include/md/_linux.cfg 2015-10-03 08:13:11.845414714 -0300 ++++ nspr-4.10.9/nspr/pr/include/md/_linux.cfg 2015-10-03 08:13:20.435708195 -0300 +@@ -1062,6 +1062,56 @@ #define PR_BYTES_PER_WORD_LOG2 2 #define PR_BYTES_PER_DWORD_LOG2 3 @@ -63,15 +63,18 @@ diff -Nura nspr-4.10.6.nios2/nspr/pr/include/md/_linux.cfg nspr-4.10.6/nspr/pr/i #else #error "Unknown CPU architecture" -diff -Nura nspr-4.10.6.nios2/nspr/pr/include/md/_linux.h nspr-4.10.6/nspr/pr/include/md/_linux.h ---- nspr-4.10.6.nios2/nspr/pr/include/md/_linux.h 2014-06-18 10:29:15.817361459 -0300 -+++ nspr-4.10.6/nspr/pr/include/md/_linux.h 2014-06-18 10:26:59.909768537 -0300 -@@ -55,6 +55,8 @@ - #define _PR_SI_ARCHITECTURE "avr32" - #elif defined(__m32r__) +diff -Nura nspr-4.10.9.orig/nspr/pr/include/md/_linux.h nspr-4.10.9/nspr/pr/include/md/_linux.h +--- nspr-4.10.9.orig/nspr/pr/include/md/_linux.h 2015-10-03 08:13:11.845414714 -0300 ++++ nspr-4.10.9/nspr/pr/include/md/_linux.h 2015-10-03 08:14:53.351882603 -0300 +@@ -57,8 +57,11 @@ #define _PR_SI_ARCHITECTURE "m32r" + #elif defined(__or1k__) + #define _PR_SI_ARCHITECTURE "or1k" +#elif defined(__microblaze__) +#define _PR_SI_ARCHITECTURE "microblaze" #elif defined(nios2) #define _PR_SI_ARCHITECTURE "nios2" ++#elif defined(nios2) #else + #error "Unknown CPU architecture" + #endif diff --git a/package/libnspr/0003-enable-internal-getproto-functions-for-musl.patch b/package/libnspr/0003-enable-internal-getproto-functions-for-musl.patch new file mode 100644 index 00000000000..860ca2ad282 --- /dev/null +++ b/package/libnspr/0003-enable-internal-getproto-functions-for-musl.patch @@ -0,0 +1,35 @@ +From c950bcf9cc7bdc68ed9751a1b7d04f4b4c2a9fb0 Mon Sep 17 00:00:00 2001 +From: Sergio Prado +Date: Tue, 5 Jan 2016 21:15:34 -0200 +Subject: [PATCH] enable internal getproto functions for musl + +Musl toolchains does not have getprotobyname_r and getprotobynumber_r +functions and need its internal implementation. + +Patch backported from Alpine Linux commit +a162da839db0d3f8be94a5c1ad2e2e54e691c38a. + +Signed-off-by: Sergio Prado +--- + nspr/pr/src/misc/prnetdb.c | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) + +diff --git a/nspr/pr/src/misc/prnetdb.c b/nspr/pr/src/misc/prnetdb.c +index b86248f863f0..dc83a5615f45 100644 +--- a/nspr/pr/src/misc/prnetdb.c ++++ b/nspr/pr/src/misc/prnetdb.c +@@ -61,10 +61,7 @@ PRLock *_pr_dnsLock = NULL; + #define _PR_HAVE_GETPROTO_R_POINTER + #endif + +-#if defined(SOLARIS) || (defined(BSDI) && defined(_REENTRANT)) \ +- || (defined(LINUX) && defined(_REENTRANT) \ +- && !(defined(__GLIBC__) && __GLIBC__ >= 2) \ +- && !defined(ANDROID)) ++#if defined(SOLARIS) || (defined(BSDI) && defined(_REENTRANT)) + #define _PR_HAVE_GETPROTO_R + #define _PR_HAVE_GETPROTO_R_POINTER + #endif +-- +1.9.1 + diff --git a/package/libnspr/libnspr.hash b/package/libnspr/libnspr.hash index 632422f8097..87f6d4fafa5 100644 --- a/package/libnspr/libnspr.hash +++ b/package/libnspr/libnspr.hash @@ -1,2 +1,2 @@ -# From https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v4.10.8/src/SHA256SUMS -sha256 507ea57c525c0c524dae4857a642b4ef5c9d795518754c7f83422d22fe544a15 nspr-4.10.8.tar.gz +# From https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v4.11/src/SHA256SUMS +sha256 cb320a9eee7028275ac0fce7adc39dee36f14f02fd8432fce1b7e1aa5e3685c2 nspr-4.11.tar.gz diff --git a/package/libnspr/libnspr.mk b/package/libnspr/libnspr.mk index 752af8798f7..9f49eef9186 100644 --- a/package/libnspr/libnspr.mk +++ b/package/libnspr/libnspr.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNSPR_VERSION = 4.10.8 +LIBNSPR_VERSION = 4.11 LIBNSPR_SOURCE = nspr-$(LIBNSPR_VERSION).tar.gz LIBNSPR_SITE = https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v$(LIBNSPR_VERSION)/src LIBNSPR_SUBDIR = nspr @@ -21,6 +21,22 @@ LIBNSPR_CONF_ENV = \ LIBNSPR_CONF_OPTS = --host=$(GNU_HOST_NAME) LIBNSPR_CONF_OPTS += --$(if $(BR2_ARCH_IS_64),en,dis)able-64bit +# ./nspr/pr/include/md/_linux.h tests only __GLIBC__ version to detect +# c-library features, list musl features here for now (taken from +# Alpine Linux). +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +LIBNSPR_CFLAGS += \ + -D_PR_POLL_AVAILABLE \ + -D_PR_HAVE_OFF64_T \ + -D_PR_INET6 \ + -D_PR_HAVE_INET_NTOP \ + -D_PR_HAVE_GETHOSTBYNAME2 \ + -D_PR_HAVE_GETADDRINFO \ + -D_PR_INET6_PROBE +endif + +LIBNSPR_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) $(LIBNSPR_CFLAGS)" + ifeq ($(BR2_STATIC_LIBS),y) LIBNSPR_MAKE_OPTS = SHARED_LIBRARY= LIBNSPR_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) SHARED_LIBRARY= install @@ -33,12 +49,4 @@ LIBNSPR_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) LIBRARY= install LIBNSPR_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) LIBRARY= install endif -ifeq ($(BR2_arm),y) -ifeq ($(BR2_ARM_CPU_HAS_THUMB2),y) -LIBNSPR_CONF_OPTS += --enable-thumb2 -else -LIBNSPR_CONF_OPTS += --disable-thumb2 -endif -endif - $(eval $(autotools-package)) diff --git a/package/libnss/libnss.hash b/package/libnss/libnss.hash index 2336590c71a..4fa5897b57f 100644 --- a/package/libnss/libnss.hash +++ b/package/libnss/libnss.hash @@ -1,2 +1,2 @@ -# From https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_19_2_RTM/src/SHA256SUMS -sha256 1306663e8f61d8449ad8cbcffab743a604dcd9f6f34232c210847c51dce2c9ae nss-3.19.2.tar.gz +# From https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_21_RTM/src/SHA256SUMS +sha256 3f7a5b027d7cdd5c0e4ff7544da33fdc6f56c2f8c27fff02938fd4a6fbe87239 nss-3.21.tar.gz diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk index 082180441ee..6fdb77cd148 100644 --- a/package/libnss/libnss.mk +++ b/package/libnss/libnss.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNSS_VERSION = 3.19.2 +LIBNSS_VERSION = 3.21 LIBNSS_SOURCE = nss-$(LIBNSS_VERSION).tar.gz LIBNSS_SITE = https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_$(subst .,_,$(LIBNSS_VERSION))_RTM/src LIBNSS_DISTDIR = dist @@ -19,6 +19,7 @@ LIBNSS_BUILD_VARS = \ NSPR_LIB_DIR=$(STAGING_DIR)/usr/lib \ BUILD_OPT=1 \ NS_USE_GCC=1 \ + NSS_DISABLE_GTESTS=1 \ NSS_USE_SYSTEM_SQLITE=1 \ NSS_ENABLE_ECC=1 \ NATIVE_CC="$(HOSTCC)" \ @@ -29,6 +30,12 @@ LIBNSS_BUILD_VARS = \ OS_RELEASE="2.6" \ OS_TEST="$(ARCH)" +# #pragma usage needs gcc >= 4.8 +# See https://bugzilla.mozilla.org/show_bug.cgi?id=1226179 +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_8),) +LIBNSS_BUILD_VARS += NSS_ENABLE_WERROR=0 +endif + ifeq ($(BR2_ARCH_IS_64),y) # MIPS64 n32 is treated as a 32-bit architecture by libnss. # See: https://bugzilla.mozilla.org/show_bug.cgi?id=1010730 diff --git a/package/liboauth/liboauth.mk b/package/liboauth/liboauth.mk index 3b482bfce14..bd54330ddfd 100644 --- a/package/liboauth/liboauth.mk +++ b/package/liboauth/liboauth.mk @@ -5,7 +5,7 @@ ################################################################################ LIBOAUTH_VERSION = 1.0.3 -LIBOAUTH_SITE = http://liboauth.sourceforge.net/pool +LIBOAUTH_SITE = http://downloads.sourceforge.net/project/liboauth LIBOAUTH_INSTALL_STAGING = YES LIBOAUTH_DEPENDENCIES += host-pkgconf openssl LIBOAUTH_LICENSE = MIT diff --git a/package/libopenh264/Config.in b/package/libopenh264/Config.in new file mode 100644 index 00000000000..2b77578a832 --- /dev/null +++ b/package/libopenh264/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_LIBOPENH264_ARCH_SUPPORTS + bool + default y if BR2_arm || BR2_armeb || BR2_aarch64 || BR2_i386 || \ + BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \ + BR2_x86_64 + +config BR2_PACKAGE_LIBOPENH264 + bool "libopenh264" + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_PACKAGE_LIBOPENH264_ARCH_SUPPORTS + help + OpenH264 is a codec library which supports H.264 encoding and + decoding. + + http://www.openh264.org + +comment "libopenh264 needs a toolchain w/ C++, dynamic library, threads" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS + depends on BR2_PACKAGE_LIBOPENH264_ARCH_SUPPORTS diff --git a/package/libopenh264/libopenh264.mk b/package/libopenh264/libopenh264.mk new file mode 100644 index 00000000000..cbe30bcc8e8 --- /dev/null +++ b/package/libopenh264/libopenh264.mk @@ -0,0 +1,52 @@ +################################################################################ +# +# libopenh264 +# +################################################################################ + +LIBOPENH264_VERSION = v1.4.0 +LIBOPENH264_SITE = $(call github,cisco,openh264,$(LIBOPENH264_VERSION)) +LIBOPENH264_LICENSE = BSD-2c +LIBOPENH264_LICENSE_FILES = LICENSE +LIBOPENH264_INSTALL_STAGING = YES + +ifeq ($(BR2_aarch64),y) +LIBOPENH264_ARCH = aarch64 +else ifeq ($(BR2_arm)$(BR2_armeb),y) +LIBOPENH264_ARCH = arm +else ifeq ($(BR2_i386),y) +LIBOPENH264_ARCH = x86 +LIBOPENH264_DEPENDENCIES += host-nasm +else ifeq ($(BR2_mips)$(BR2_mipsel),y) +LIBOPENH264_ARCH = mips +else ifeq ($(BR2_mips64)$(BR2_mips64el),y) +LIBOPENH264_ARCH = mips64 +else ifeq ($(BR2_x86_64),y) +LIBOPENH264_ARCH = x86_64 +LIBOPENH264_DEPENDENCIES += host-nasm +endif + +# ENABLE64BIT is really only used for x86-64, other 64 bits +# architecture don't need it. +LIBOPENH264_MAKE_OPTS = \ + ARCH=$(LIBOPENH264_ARCH) \ + ENABLE64BIT=$(if $(BR2_x86_64),Yes,No) + +define LIBOPENH264_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + $(LIBOPENH264_MAKE_OPTS) +endef + +define LIBOPENH264_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + $(LIBOPENH264_MAKE_OPTS) \ + DESTDIR=$(STAGING_DIR) PREFIX=/usr install +endef + +define LIBOPENH264_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + $(LIBOPENH264_MAKE_OPTS) \ + DESTDIR=$(TARGET_DIR) PREFIX=/usr install +endef + +$(eval $(generic-package)) diff --git a/package/liboping/liboping.mk b/package/liboping/liboping.mk index aeaaa8a9040..94de73c373c 100644 --- a/package/liboping/liboping.mk +++ b/package/liboping/liboping.mk @@ -9,7 +9,7 @@ LIBOPING_SITE = http://noping.cc/files LIBOPING_INSTALL_STAGING = YES LIBOPING_DEPENDENCIES = $(if $(BR2_PACKAGE_NCURSES),ncurses) LIBOPING_CONF_OPTS = --without-perl-bindings -LIBOPING_LICENSE = LGPLv2.1+ GPLv2 +LIBOPING_LICENSE = LGPLv2.1+, GPLv2 LIBOPING_LICENSE_FILES = COPYING $(eval $(autotools-package)) diff --git a/package/libpam-radius-auth/Config.in b/package/libpam-radius-auth/Config.in new file mode 100644 index 00000000000..a0dec148d77 --- /dev/null +++ b/package/libpam-radius-auth/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_LIBPAM_RADIUS_AUTH + bool "libpam-radius-auth" + help + This is the PAM to RADIUS authentication module. It allows + any PAM-capable machine to become a RADIUS client for + authentication and accounting requests. You will need a + RADIUS server to perform the actual authentication. + + http://freeradius.org/pam_radius_auth/ diff --git a/package/libpam-radius-auth/libpam-radius-auth.hash b/package/libpam-radius-auth/libpam-radius-auth.hash new file mode 100644 index 00000000000..ffd7404df31 --- /dev/null +++ b/package/libpam-radius-auth/libpam-radius-auth.hash @@ -0,0 +1,2 @@ +# Locally calculated after checking PGP signature +sha256 742d79fc39824726c098e746bd3dc3484f983f5ee082c621c1e848b2c3725305 pam_radius-1.4.0.tar.gz diff --git a/package/libpam-radius-auth/libpam-radius-auth.mk b/package/libpam-radius-auth/libpam-radius-auth.mk new file mode 100644 index 00000000000..5ed5953c5b3 --- /dev/null +++ b/package/libpam-radius-auth/libpam-radius-auth.mk @@ -0,0 +1,28 @@ +################################################################################ +# +# libpam-radius-auth +# +################################################################################ + +LIBPAM_RADIUS_AUTH_VERSION = 1.4.0 +LIBPAM_RADIUS_AUTH_SITE = ftp://ftp.freeradius.org/pub/radius +LIBPAM_RADIUS_AUTH_SOURCE = pam_radius-$(LIBPAM_RADIUS_AUTH_VERSION).tar.gz +LIBPAM_RADIUS_AUTH_DEPENDENCIES = linux-pam +LIBPAM_RADIUS_AUTH_INSTALL_STAGING = YES +LIBPAM_RADIUS_AUTH_LICENSE = GPLv2+ +LIBPAM_RADIUS_AUTH_LICENSE_FILES = LICENSE +# While autoconf is used for configuration, the Makefile is +# hand-written, so we need to pass CC, LD, CFLAGS at build time. +LIBPAM_RADIUS_AUTH_MAKE_ENV = $(TARGET_CONFIGURE_OPTS) + +define LIBPAM_RADIUS_AUTH_INSTALL_STAGING_CMDS + mkdir -p $(STAGING_DIR)/lib/security/ + cp -dpfr $(@D)/pam_radius_auth.so* $(STAGING_DIR)/lib/security/ +endef + +define LIBPAM_RADIUS_AUTH_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/lib/security/ + cp -dpfr $(@D)/pam_radius_auth.so* $(TARGET_DIR)/lib/security/ +endef + +$(eval $(autotools-package)) diff --git a/package/libpam-tacplus/Config.in b/package/libpam-tacplus/Config.in new file mode 100644 index 00000000000..2d80809d3bf --- /dev/null +++ b/package/libpam-tacplus/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_LIBPAM_TACPLUS + bool "libpam-tacplus" + help + TACACS+ protocol client library and PAM module in C. This + PAM module support authentication, authorization (account + management) and accounting (session management)performed + using TACACS+ protocol designed by Cisco. + + https://github.com/jeroennijhof/pam_tacplus diff --git a/package/libpam-tacplus/libpam-tacplus.mk b/package/libpam-tacplus/libpam-tacplus.mk new file mode 100644 index 00000000000..6696d898876 --- /dev/null +++ b/package/libpam-tacplus/libpam-tacplus.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# libpam-tacplus +# +################################################################################ + +LIBPAM_TACPLUS_VERSION = 1.3.9 +LIBPAM_TACPLUS_SITE = $(call github,jeroennijhof,pam_tacplus,$(LIBPAM_TACPLUS_VERSION)) +LIBPAM_TACPLUS_LICENSE = GPLv2+ +LIBPAM_TACPLUS_LICENSE_FILES = COPYING +LIBPAM_TACPLUS_DEPENDENCIES = linux-pam +# Fetching from github, we need to generate the configure script +LIBPAM_TACPLUS_AUTORECONF = YES +LIBPAM_TACPLUS_AUTORECONF_OPTS = -I m4 +LIBPAM_TACPLUS_INSTALL_STAGING = YES +LIBPAM_TACPLUS_CONF_ENV = \ + ax_cv_check_cflags___fstack_protector_all=$(if $(BR2_TOOLCHAIN_HAS_SSP),yes,no) +LIBPAM_TACPLUS_CONF_OPTS = \ + --enable-pamdir=/lib/security + +$(eval $(autotools-package)) diff --git a/package/libpcap/libpcap.mk b/package/libpcap/libpcap.mk index eb21fa97979..4c7a66c09d1 100644 --- a/package/libpcap/libpcap.mk +++ b/package/libpcap/libpcap.mk @@ -55,8 +55,8 @@ else LIBPCAP_CONF_OPTS += --without-libnl endif -# microblaze needs -fPIC instead of -fpic -ifeq ($(BR2_microblaze),y) +# microblaze/sparc64 need -fPIC instead of -fpic +ifeq ($(BR2_microblaze)$(BR2_sparc64),y) LIBPCAP_CFLAGS += -fPIC endif diff --git a/package/libpciaccess/0001-limits_h.patch b/package/libpciaccess/0001-limits_h.patch index 9afa203cc46..c5c8444a59a 100644 --- a/package/libpciaccess/0001-limits_h.patch +++ b/package/libpciaccess/0001-limits_h.patch @@ -3,8 +3,8 @@ Fix compilation error with musl-based toolchain linux_sysfs.c:751:15: error: 'PATH_MAX' undeclared (first use in this function) char name[PATH_MAX]; -Patch already sent upstream by Felix Janda -http://lists.x.org/archives/xorg-devel/2014-December/044723.html +Patch applied upstream: +http://cgit.freedesktop.org/xorg/lib/libpciaccess/commit/?id=8ea3af620a2d4ad5648917b4a0ef2b23ff566774 Signed-off-by: Felix Janda Signed-off-by: Bernd Kuhls diff --git a/package/libpciaccess/0002-musl-arm.patch b/package/libpciaccess/0002-musl-arm.patch new file mode 100644 index 00000000000..0077f451bf8 --- /dev/null +++ b/package/libpciaccess/0002-musl-arm.patch @@ -0,0 +1,20 @@ +Fix musl build + +Inspired by http://patchwork.openembedded.org/patch/111661/ +"inb/outb are implemented for ARM on glibc but not on linux in general +therefore the conditional has to reflect that" + +Signed-off-by: Bernd Kuhls + +diff -uNr libpciaccess-0.13.4.org/src/linux_sysfs.c libpciaccess-0.13.4/src/linux_sysfs.c +--- libpciaccess-0.13.4.org/src/linux_sysfs.c 2015-05-01 06:44:47.000000000 +0200 ++++ libpciaccess-0.13.4/src/linux_sysfs.c 2016-01-24 15:27:57.141562678 +0100 +@@ -49,7 +49,7 @@ + #include + #include + +-#if defined(__i386__) || defined(__x86_64__) || defined(__arm__) ++#if defined(__i386__) || defined(__x86_64__) + #include + #else + #define inb(x) -1 diff --git a/package/libpfm4/libpfm4.hash b/package/libpfm4/libpfm4.hash index bc0ce52101e..8bebc493fd6 100644 --- a/package/libpfm4/libpfm4.hash +++ b/package/libpfm4/libpfm4.hash @@ -1,2 +1,5 @@ -# Locally computed: -sha256 a23eb9affbff279e13563a39317c0ad71c4de28908d4243c8bc109138430cc3b libpfm-4.3.0.tar.gz +# From http://sourceforge.net/projects/perfmon2/files/libpfm4/: +sha1 2ed06d6e746f7b1cd4b70e9736e621052f60d625 libpfm-4.6.0.tar.gz +md5 5077b9022440e4951d96f2d0e73bd487 libpfm-4.6.0.tar.gz +# Locally calculated +sha256 5ab1e5b0472550f9037a8800834f6bc3b927690070f69fac0b67284b4b05fd5f libpfm-4.6.0.tar.gz diff --git a/package/libpfm4/libpfm4.mk b/package/libpfm4/libpfm4.mk index 11106720aa0..147be7c2b97 100644 --- a/package/libpfm4/libpfm4.mk +++ b/package/libpfm4/libpfm4.mk @@ -4,14 +4,17 @@ # ################################################################################ -LIBPFM4_VERSION = 4.3.0 +LIBPFM4_VERSION = 4.6.0 LIBPFM4_SOURCE = libpfm-$(LIBPFM4_VERSION).tar.gz LIBPFM4_SITE = http://downloads.sourceforge.net/project/perfmon2/libpfm4 LIBPFM4_LICENSE = libpfm4 license LIBPFM4_LICENSE_FILES = COPYING LIBPFM4_INSTALL_STAGING = YES -LIBPFM4_FLAGS = SYS=Linux ARCH=$(BR2_ARCH) CC="$(TARGET_CC)" LDCONFIG=true +LIBPFM4_FLAGS = SYS=Linux ARCH=$(BR2_ARCH) \ + CC="$(TARGET_CC)" LDCONFIG=true \ + CONFIG_PFMLIB_SHARED=$(if $(BR2_STATIC_LIBS),n,y) \ + DBG= define LIBPFM4_BUILD_CMDS $(MAKE) -C $(@D) $(LIBPFM4_FLAGS) diff --git a/package/libplist/Config.in b/package/libplist/Config.in index c9d511b9771..5f96746ea9e 100644 --- a/package/libplist/Config.in +++ b/package/libplist/Config.in @@ -1,12 +1,12 @@ config BR2_PACKAGE_LIBPLIST bool "libplist" - select BR2_PACKAGE_LIBXML2 depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_LIBXML2 help libplist is a client for manipulating Apple Property List (.plist) files - http://cgit.sukimashita.com/libplist.git + http://www.libimobiledevice.org/ comment "libplist needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/libplist/libplist.hash b/package/libplist/libplist.hash new file mode 100644 index 00000000000..06d1b164266 --- /dev/null +++ b/package/libplist/libplist.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 0effdedcb3de128c4930d8c03a3854c74c426c16728b8ab5f0a5b6bdc0b644be libplist-1.12.tar.bz2 diff --git a/package/libplist/libplist.mk b/package/libplist/libplist.mk index b87c5ba3c46..7f60b5ee037 100644 --- a/package/libplist/libplist.mk +++ b/package/libplist/libplist.mk @@ -5,7 +5,8 @@ ################################################################################ LIBPLIST_VERSION = 1.12 -LIBPLIST_SITE = http://cgit.sukimashita.com/libplist.git/snapshot +LIBPLIST_SOURCE = libplist-$(LIBPLIST_VERSION).tar.bz2 +LIBPLIST_SITE = http://www.libimobiledevice.org/downloads LIBPLIST_DEPENDENCIES = libxml2 host-pkgconf LIBPLIST_INSTALL_STAGING = YES LIBPLIST_LICENSE = LGPLv2.1+ diff --git a/package/libpng/libpng.hash b/package/libpng/libpng.hash index dd4af062528..3b2db43ce5d 100644 --- a/package/libpng/libpng.hash +++ b/package/libpng/libpng.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/libpng/files/libpng16/1.6.17/ -md5 430a9b76b78533235cd4b9b26ce75c7e libpng-1.6.17.tar.xz -sha1 6394f3c0847c3b9ea69f4f972dddae3786592050 libpng-1.6.17.tar.xz +# From http://sourceforge.net/projects/libpng/files/libpng16/1.6.21/ +md5 3bacb4728f6694a64ad9052769d6a4ce libpng-1.6.21.tar.xz +sha1 978b2f4e007eda56032001493ddb97d20f0ab291 libpng-1.6.21.tar.xz diff --git a/package/libpng/libpng.mk b/package/libpng/libpng.mk index 08d819658ff..7ce4a3a6931 100644 --- a/package/libpng/libpng.mk +++ b/package/libpng/libpng.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBPNG_VERSION = 1.6.17 +LIBPNG_VERSION = 1.6.21 LIBPNG_SERIES = 16 LIBPNG_SOURCE = libpng-$(LIBPNG_VERSION).tar.xz LIBPNG_SITE = http://downloads.sourceforge.net/project/libpng/libpng${LIBPNG_SERIES}/$(LIBPNG_VERSION) diff --git a/package/libpthsem/libpthsem.mk b/package/libpthsem/libpthsem.mk index f9f6f718132..b8a3d7d561b 100644 --- a/package/libpthsem/libpthsem.mk +++ b/package/libpthsem/libpthsem.mk @@ -13,6 +13,20 @@ LIBPTHSEM_AUTORECONF = YES LIBPTHSEM_INSTALL_STAGING = YES LIBPTHSEM_CONFIG_SCRIPTS = pthsem-config +# Force the setjmp/longjmp detection, because the test being done in +# the AC_CHECK_SJLJ macro is not cross-compilation safe: it checks the +# running kernel with 'uname -r', and checks the C library version by +# looking at /usr/include/features.h. In terms of kernel version, it +# assumes any version later than 2.2.x is fine, except that it doesn't +# recognize 4.x as a valid kernel version, recognizing such systems as +# "braindead" and therefore falling back to the 'sjljlx' value for +# ac_cv_check_sjlj. In terms of C library version, it wants +# __GLIBC_MINOR to be at least 1. Since both conditions are true for +# all Buildroot systems, we can simply force the setjmp/longjmp +# detection to ssjlj. +LIBPTHSEM_CONF_ENV += \ + ac_cv_check_sjlj=ssjlj + ifeq ($(BR2_PACKAGE_LIBPTHSEM_COMPAT),y) LIBPTHSEM_CONF_OPTS += --enable-compat LIBPTHSEM_CONFIG_SCRIPTS += pth-config diff --git a/package/libraw/0001-Remove-paths-which-break-cross-compilation.patch b/package/libraw/0001-Remove-paths-which-break-cross-compilation.patch new file mode 100644 index 00000000000..0f0eee1a64c --- /dev/null +++ b/package/libraw/0001-Remove-paths-which-break-cross-compilation.patch @@ -0,0 +1,29 @@ +From 1f9c2ebc9c65e8ce7fdbece55d578cf00c6c4b46 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 30 Jan 2016 17:06:04 +0100 +Subject: [PATCH 1/1] Remove paths which break cross-compilation + +Patch sent upstream: https://github.com/LibRaw/LibRaw/pull/57 + +Signed-off-by: Bernd Kuhls +--- + configure.ac | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 9bb07b2..78064d9 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -16,9 +16,6 @@ AC_SUBST(LIBTOOL_DEPS) + + # Config files to generate + +-CPPFLAGS="$CPPFLAGS -I/usr/local/include" +-LDFLAGS="$LDFLAGS -L/usr/local/lib" +- + AC_CONFIG_FILES([ + Makefile + libraw.pc +-- +2.7.0.rc3 + diff --git a/package/libraw/0002-libraw_x3f.cpp-remove-Byte-order-mark.patch b/package/libraw/0002-libraw_x3f.cpp-remove-Byte-order-mark.patch new file mode 100644 index 00000000000..24f0eb1897f --- /dev/null +++ b/package/libraw/0002-libraw_x3f.cpp-remove-Byte-order-mark.patch @@ -0,0 +1,39 @@ +From 0f2507bfe30f2df10dfc38b94cdfde5594902b8e Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Fri, 12 Feb 2016 10:00:12 +0100 +Subject: [PATCH] libraw_x3f.cpp: remove Byte order mark + +The U+FEFF character, which is a Byte order mark, at the beginning of +libraw_x3f.cpp, prevents gcc 4.3.x from building this file: + +src/../internal/libraw_x3f.cpp:1: error: stray '\357' in program +src/../internal/libraw_x3f.cpp:1: error: stray '\273' in program +src/../internal/libraw_x3f.cpp:1: error: stray '\277' in program + +Support in gcc for the Byte order mark has been added in gcc +4.4.x. Since anyway this Byte order mark is not useful, we simply +remove it. + +See https://en.wikipedia.org/wiki/Byte_order_mark for more details. + +Signed-off-by: Thomas Petazzoni +--- +Submitted upstream at: +https://github.com/LibRaw/LibRaw/pull/61 + + internal/libraw_x3f.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/internal/libraw_x3f.cpp b/internal/libraw_x3f.cpp +index dbf28c1..67047ab 100644 +--- a/internal/libraw_x3f.cpp ++++ b/internal/libraw_x3f.cpp +@@ -1,4 +1,4 @@ +-/* Library for accessing X3F Files ++/* Library for accessing X3F Files + ---------------------------------------------------------------- + BSD-style License + ---------------------------------------------------------------- +-- +2.6.4 + diff --git a/package/libraw/libraw.hash b/package/libraw/libraw.hash index 98d3c12bcfd..e23ca9ce2cc 100644 --- a/package/libraw/libraw.hash +++ b/package/libraw/libraw.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 588caf5324c76240d6370852691e05ac8ef89428ee8d45168f15ce47422bc36b LibRaw-0.13.4.tar.gz +sha256 e599651a4cc37e00cfc2d2b56be87c3a4e4dae2c360b680fe9ab3f93d07cdea1 LibRaw-0.17.1.tar.gz diff --git a/package/libraw/libraw.mk b/package/libraw/libraw.mk index 9c3522b2849..7fc4709e8f5 100644 --- a/package/libraw/libraw.mk +++ b/package/libraw/libraw.mk @@ -4,17 +4,40 @@ # ################################################################################ -LIBRAW_VERSION = 0.13.4 +LIBRAW_VERSION = 0.17.1 LIBRAW_SOURCE = LibRaw-$(LIBRAW_VERSION).tar.gz LIBRAW_SITE = http://www.libraw.org/data LIBRAW_INSTALL_STAGING = YES +# we patch configure.ac +LIBRAW_AUTORECONF = YES LIBRAW_CONF_OPTS += \ --disable-examples \ - --disable-lcms \ --disable-openmp \ --disable-demosaic-pack-gpl2 \ --disable-demosaic-pack-gpl3 LIBRAW_LICENSE = LGPLv2.1 or CDDL 1.0 or LibRaw Software License 27032010 LIBRAW_LICENSE_FILES = LICENSE.LGPL LICENSE.CDDL LICENSE.LibRaw.pdf README +LIBRAW_DEPENDENCIES = host-pkgconf + +ifeq ($(BR2_PACKAGE_JASPER),y) +LIBRAW_CONF_OPTS += --enable-jasper +LIBRAW_DEPENDENCIES += jasper +else +LIBRAW_CONF_OPTS += --disable-jasper +endif + +ifeq ($(BR2_PACKAGE_JPEG),y) +LIBRAW_CONF_OPTS += --enable-jpeg +LIBRAW_DEPENDENCIES += jpeg +else +LIBRAW_CONF_OPTS += --disable-jpeg +endif + +ifeq ($(BR2_PACKAGE_LCMS2),y) +LIBRAW_CONF_OPTS += --enable-lcms +LIBRAW_DEPENDENCIES += lcms2 host-pkgconf +else +LIBRAW_CONF_OPTS += --disable-lcms +endif $(eval $(autotools-package)) diff --git a/package/libraw1394/0001-testlibraw-build-the-CLOCK_MONOTONIC_RAW-test-condit.patch b/package/libraw1394/0001-testlibraw-build-the-CLOCK_MONOTONIC_RAW-test-condit.patch new file mode 100644 index 00000000000..b87ef715dea --- /dev/null +++ b/package/libraw1394/0001-testlibraw-build-the-CLOCK_MONOTONIC_RAW-test-condit.patch @@ -0,0 +1,38 @@ +From 94c66ade15d7fc468b52c72dfe76a8c10b1910a7 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Fri, 12 Feb 2016 10:13:45 +0100 +Subject: [PATCH] testlibraw: build the CLOCK_MONOTONIC_RAW test conditionally + +CLOCK_MONOTONIC_RAW is a somewhat recent addition, and some older +toolchains/kernels may not have the support for it. Therefore, we +build the part of the test that uses CLOCK_MONOTONIC_RAW only when +this definition is available. + +Signed-off-by: Thomas Petazzoni +--- + tools/testlibraw.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/tools/testlibraw.c b/tools/testlibraw.c +index d8a0702..ae37157 100644 +--- a/tools/testlibraw.c ++++ b/tools/testlibraw.c +@@ -211,6 +211,7 @@ read_cycle_timer(raw1394handle_t handle) + printf(" local time from CLOCK_MONOTONIC: %lld us\n", + (unsigned long long)local_time); + ++#if defined(CLOCK_MONOTONIC_RAW) + retval = raw1394_read_cycle_timer_and_clock(handle, &ct, &local_time, + CLOCK_MONOTONIC_RAW); + if (retval < 0) { +@@ -221,6 +222,7 @@ read_cycle_timer(raw1394handle_t handle) + ct >> 25, (ct >> 12) & 0x1fff, ct & 0xfff); + printf(" local time from CLOCK_MONOTONIC_RAW: %lld us\n", + (unsigned long long)local_time); ++#endif + } + + int test_card(int card) +-- +2.6.4 + diff --git a/package/libraw1394/libraw1394.hash b/package/libraw1394/libraw1394.hash index 5d18e98988b..b785995db1c 100644 --- a/package/libraw1394/libraw1394.hash +++ b/package/libraw1394/libraw1394.hash @@ -1,2 +1,4 @@ # From https://www.kernel.org/pub/linux/libs/ieee1394/sha256sums.asc -sha256 e3dc814bc8014cc0bd306767c15e686c9b3b07fcacbbf62862fb1c1de2d708a4 libraw1394-2.0.7.tar.xz +sha256 1bab9780189f9d1eb4e973df12679c04f979c21e024240fc98e536ff5b680ee9 libraw1394-2.1.1.tar.xz +# Locally computed +sha256 39369c65fbed7fccc2e6d8e645f258f101c414107d67238f10996e6c2009f20d fix-types.patch diff --git a/package/libraw1394/libraw1394.mk b/package/libraw1394/libraw1394.mk index 108dde97a9f..7123ac74c87 100644 --- a/package/libraw1394/libraw1394.mk +++ b/package/libraw1394/libraw1394.mk @@ -4,9 +4,10 @@ # ################################################################################ -LIBRAW1394_VERSION = 2.0.7 +LIBRAW1394_VERSION = 2.1.1 LIBRAW1394_SOURCE = libraw1394-$(LIBRAW1394_VERSION).tar.xz LIBRAW1394_SITE = $(BR2_KERNEL_MIRROR)/linux/libs/ieee1394 +LIBRAW1394_PATCH = http://git.alpinelinux.org/cgit/aports/plain/main/libraw1394/fix-types.patch LIBRAW1394_INSTALL_STAGING = YES LIBRAW1394_LICENSE = LGPLv2.1+ LIBRAW1394_LICENSE_FILES = COPYING.LIB diff --git a/package/librsvg/Config.in b/package/librsvg/Config.in index 94ef2eda41e..7ce9d063a84 100644 --- a/package/librsvg/Config.in +++ b/package/librsvg/Config.in @@ -1,16 +1,17 @@ config BR2_PACKAGE_LIBRSVG bool "librsvg" - select BR2_PACKAGE_LIBXML2 select BR2_PACKAGE_CAIRO select BR2_PACKAGE_CAIRO_PNG - select BR2_PACKAGE_PANGO - select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_GDK_PIXBUF + select BR2_PACKAGE_LIBCROCO + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_PANGO depends on BR2_USE_WCHAR # glib2 depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 depends on BR2_USE_MMU # glib2 depends on BR2_INSTALL_LIBSTDCPP # pango - depends on BR2_ARCH_HAS_ATOMICS # cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz help The rsvg library is an efficient renderer for Scalable Vector Graphics (SVG) pictures. @@ -19,5 +20,5 @@ config BR2_PACKAGE_LIBRSVG comment "librsvg needs a toolchain w/ wchar, threads, C++" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS # cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/librsvg/librsvg.hash b/package/librsvg/librsvg.hash index 7572d6c7195..5147cdaa197 100644 --- a/package/librsvg/librsvg.hash +++ b/package/librsvg/librsvg.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/librsvg/2.26/librsvg-2.26.3.sha256sum -sha256 3761e3d446a9c2f4ebe52431289e15976f1d447f64ed33bb7f35cb1c430eac49 librsvg-2.26.3.tar.gz +# From http://ftp.acc.umu.se/pub/gnome/sources/librsvg/2.40/librsvg-2.40.13.sha256sum +sha256 4d6ea93ec05f5dabe7262d711d246a0a99b2311e215360dd3dcabd6afe3b9804 librsvg-2.40.13.tar.xz diff --git a/package/librsvg/librsvg.mk b/package/librsvg/librsvg.mk index 5c385dc5fdf..80d2cba0b3c 100644 --- a/package/librsvg/librsvg.mk +++ b/package/librsvg/librsvg.mk @@ -4,21 +4,18 @@ # ################################################################################ -LIBRSVG_VERSION_MAJOR = 2.26 -LIBRSVG_VERSION = $(LIBRSVG_VERSION_MAJOR).3 -LIBRSVG_SITE = http://ftp.gnome.org/pub/GNOME/sources/librsvg/$(LIBRSVG_VERSION_MAJOR) +LIBRSVG_VERSION_MAJOR = 2.40 +LIBRSVG_VERSION = $(LIBRSVG_VERSION_MAJOR).13 +LIBRSVG_SITE = http://ftp.gnome.org/pub/gnome/sources/librsvg/$(LIBRSVG_VERSION_MAJOR) +LIBRSVG_SOURCE = librsvg-$(LIBRSVG_VERSION).tar.xz LIBRSVG_INSTALL_STAGING = YES -LIBRSVG_CONF_OPTS = --disable-tools -LIBRSVG_DEPENDENCIES = libxml2 cairo pango libglib2 gdk-pixbuf -HOST_LIBRSVG_DEPENDENCIES = host-libxml2 host-cairo host-pango host-libglib2 host-gdk-pixbuf +LIBRSVG_CONF_OPTS = --disable-tools --enable-introspection=no +HOST_LIBRSVG_CONF_OPTS = --enable-introspection=no +LIBRSVG_DEPENDENCIES = cairo host-gdk-pixbuf gdk-pixbuf libcroco libglib2 libxml2 pango \ + $(if $(BR2_PACKAGE_LIBGTK3),libgtk3) +HOST_LIBRSVG_DEPENDENCIES = host-cairo host-gdk-pixbuf host-libcroco host-libglib2 host-libxml2 host-pango LIBRSVG_LICENSE = LGPLv2+ LIBRSVG_LICENSE_FILES = COPYING.LIB -# If we have Gtk2, let's build it first to benefit from librsvg Gtk -# support. -ifeq ($(BR2_PACKAGE_LIBGTK2),y) -LIBRSVG_DEPENDENCIES += libgtk2 -endif - $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/librtas/Config.in b/package/librtas/Config.in index e437fa12bf7..2e6063f830d 100644 --- a/package/librtas/Config.in +++ b/package/librtas/Config.in @@ -10,4 +10,5 @@ config BR2_PACKAGE_LIBRTAS http://librtas.sourceforge.net/ comment "librtas needs an (e)glibc toolchain" + depends on BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/libseccomp/0002-musl.patch b/package/libseccomp/0002-musl.patch new file mode 100644 index 00000000000..9858d76099e --- /dev/null +++ b/package/libseccomp/0002-musl.patch @@ -0,0 +1,28 @@ +From eb5382287cd25235e760b5da4939510b11bbf2a1 Mon Sep 17 00:00:00 2001 +From: Kylie McClain +Date: Fri, 1 Jan 2016 13:12:59 -0500 +Subject: [PATCH] system.h: Remove conflicting kernel header include + +This fixes building on musl libc, since musl does not include kernel +headers. I've tested this as working on both glibc and musl. + +Signed-off-by: Kylie McClain +[Bernd: downloaded from upstream PR: + https://github.com/seccomp/libseccomp/pull/23] +Signed-off-by: Bernd Kuhls +--- + src/system.h | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/src/system.h b/src/system.h +index 4660679..e84b0a0 100644 +--- a/src/system.h ++++ b/src/system.h +@@ -23,7 +23,6 @@ + #define _SYSTEM_H + + #include +-#include + + #include "configure.h" + diff --git a/package/libseccomp/libseccomp.mk b/package/libseccomp/libseccomp.mk index a188298006b..69559f73f9d 100644 --- a/package/libseccomp/libseccomp.mk +++ b/package/libseccomp/libseccomp.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSECCOMP_VERSION = v2.2.0 +LIBSECCOMP_VERSION = v2.2.3 LIBSECCOMP_SITE = $(call github,seccomp,libseccomp,$(LIBSECCOMP_VERSION)) LIBSECCOMP_LICENSE = LGPLv2.1 LIBSECCOMP_LICENSE_FILES = LICENSE diff --git a/package/libsecret/0001-libsecret.pc-add-Libs.private-field-for-libgcrypt.patch b/package/libsecret/0001-libsecret.pc-add-Libs.private-field-for-libgcrypt.patch new file mode 100644 index 00000000000..62bc84c87e9 --- /dev/null +++ b/package/libsecret/0001-libsecret.pc-add-Libs.private-field-for-libgcrypt.patch @@ -0,0 +1,38 @@ +From 754897490d9478025d174c2b1c1849305f728324 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 28 Dec 2015 12:13:07 +0100 +Subject: [PATCH] libsecret.pc: add Libs.private field for libgcrypt + +When libgcrypt is available, libsecret links with it. When dynamic +linking is used, there is no problem: libsecret.so has a NEEDED +pointing to libgcrypt, so linking an application with -lsecret works +fine. However, when doing static linking, you must specify the entire +chain of libraries, otherwise you get unresolved symbols errors, such +as: + +host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libsecret-1.a(libsecret_1_la-secret-session.o): In function `request_open_session_aes': +build/libsecret-0.18.3/libsecret/secret-session.c:99: undefined reference to `gcry_mpi_release' +build/libsecret-0.18.3/libsecret/secret-session.c:101: undefined reference to `gcry_mpi_aprint' +build/libsecret-0.18.3/libsecret/secret-session.c:107: undefined reference to `gcry_free' + +In order to solve this, we simply need to indicate in the Libs.private +field of the .pc file that we depend on libgcrypt. + +Signed-off-by: Thomas Petazzoni +--- + libsecret/libsecret.pc.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libsecret/libsecret.pc.in b/libsecret/libsecret.pc.in +index 0c342ef..d99cf44 100644 +--- a/libsecret/libsecret.pc.in ++++ b/libsecret/libsecret.pc.in +@@ -11,4 +11,5 @@ Description: GObject bindings for Secret Service API + Version: @VERSION@ + Requires: glib-2.0 gobject-2.0 gio-2.0 + Libs: -L${libdir} -lsecret-@SECRET_MAJOR@ ++Libs.private: @LIBGCRYPT_LIBS@ + Cflags: -I${includedir}/libsecret-@SECRET_MAJOR@ +-- +2.6.4 + diff --git a/package/libsecret/libsecret.hash b/package/libsecret/libsecret.hash index 8e5bbf73e28..cd405e6a891 100644 --- a/package/libsecret/libsecret.hash +++ b/package/libsecret/libsecret.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/GNOME/sources/libsecret/0.18/libsecret-0.18.sha256sum -sha256 0c73aa762dbd1e38ba7b03de350e23ce818cb810b0784375e95ef61e004b02e3 libsecret-0.18.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/libsecret/0.18/libsecret-0.18.4.sha256sum +sha256 0f29b51698198e6999c91f4adce3119c8c457f546b133a85baea5ea9010a19ed libsecret-0.18.4.tar.xz diff --git a/package/libsecret/libsecret.mk b/package/libsecret/libsecret.mk index 5a230ae04d6..84e9f3b97d0 100644 --- a/package/libsecret/libsecret.mk +++ b/package/libsecret/libsecret.mk @@ -4,12 +4,18 @@ # ################################################################################ -LIBSECRET_VERSION = 0.18 -LIBSECRET_SITE = http://ftp.gnome.org/pub/GNOME/sources/libsecret/$(LIBSECRET_VERSION) +LIBSECRET_VERSION_MAJOR = 0.18 +LIBSECRET_VERSION = $(LIBSECRET_VERSION_MAJOR).4 +LIBSECRET_SITE = http://ftp.gnome.org/pub/GNOME/sources/libsecret/$(LIBSECRET_VERSION_MAJOR) LIBSECRET_SOURCE = libsecret-$(LIBSECRET_VERSION).tar.xz LIBSECRET_INSTALL_STAGING = YES LIBSECRET_DEPENDENCIES = libglib2 host-intltool -LIBSECRET_CONF_OPTS = --disable-manpages --disable-strict --disable-coverage --enable-vala=no +LIBSECRET_CONF_OPTS = \ + --disable-manpages \ + --disable-strict \ + --disable-coverage \ + --enable-introspection=no \ + --enable-vala=no LIBSECRET_LICENSE = LGPLv2.1+ LIBSECRET_LICENSE_FILES = COPYING diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in index eb892e4a95a..bc8298db4c4 100644 --- a/package/libselinux/Config.in +++ b/package/libselinux/Config.in @@ -4,6 +4,8 @@ config BR2_PACKAGE_LIBSELINUX select BR2_PACKAGE_PCRE depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS + # Toolchain issue: "fixup not contained within frag" + depends on !BR2_arc help libselinux is the runtime SELinux library that provides interfaces (e.g. library functions for the SELinux kernel @@ -16,4 +18,5 @@ config BR2_PACKAGE_LIBSELINUX http://selinuxproject.org/page/Main_Page comment "libselinux needs a toolchain w/ threads, dynamic library" + depends on !BR2_arc depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/libselinux/libselinux.mk b/package/libselinux/libselinux.mk index e6a7c6b6c6d..d4b96c47d10 100644 --- a/package/libselinux/libselinux.mk +++ b/package/libselinux/libselinux.mk @@ -15,7 +15,8 @@ LIBSELINUX_INSTALL_STAGING = YES LIBSELINUX_MAKE_OPTS = \ $(TARGET_CONFIGURE_OPTS) \ - LDFLAGS="$(TARGET_LDFLAGS) -lpcre -lpthread" + LDFLAGS="$(TARGET_LDFLAGS) -lpcre -lpthread" \ + ARCH=$(KERNEL_ARCH) define LIBSELINUX_BUILD_CMDS # DESTDIR is needed during the compile to compute library and diff --git a/package/libsemanage/Config.in b/package/libsemanage/Config.in index 78b63150648..d9a83c0cf5b 100644 --- a/package/libsemanage/Config.in +++ b/package/libsemanage/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_LIBSEMANAGE select BR2_PACKAGE_BZIP2 depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS + depends on !BR2_arc help libsemanage is the policy management library. It uses libsepol for binary policy manipulation and libselinux for @@ -17,4 +18,5 @@ config BR2_PACKAGE_LIBSEMANAGE http://selinuxproject.org/page/Main_Page comment "libsemanage needs a toolchain w/ threads, dynamic library" + depends on !BR2_arc depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/libserial/0001-disable-python-bindings.patch b/package/libserial/0001-disable-python-bindings.patch index 54b5cb6cf11..1f2f5ed7dfc 100644 --- a/package/libserial/0001-disable-python-bindings.patch +++ b/package/libserial/0001-disable-python-bindings.patch @@ -1,25 +1,26 @@ Disable build of Python bindings, which requires the sipconfig module. Signed-off-by: Simon Dawson +Signed-off-by: Jörg Krause -diff -Nurp a/Makefile.am b/Makefile.am ---- a/Makefile.am 2008-11-12 01:27:31.000000000 +0000 -+++ b/Makefile.am 2013-04-16 09:41:13.476002178 +0100 +diff -purN libserial-0.6.0rc2.orig/Makefile.am libserial-0.6.0rc2/Makefile.am +--- libserial-0.6.0rc2.orig/Makefile.am 2014-06-05 18:37:25.000000000 +0200 ++++ libserial-0.6.0rc2/Makefile.am 2015-07-30 20:59:28.828429011 +0200 @@ -1,4 +1,4 @@ -SUBDIRS=src doc examples sip +SUBDIRS=src doc examples + ACLOCAL_AMFLAGS=-I m4 EXTRA_DIST = doxygen.conf.in Makefile.dist libserial.spec libserial.pc - -diff -Nurp a/Makefile.in b/Makefile.in ---- a/Makefile.in 2008-11-12 01:28:14.000000000 +0000 -+++ b/Makefile.in 2013-04-16 09:41:05.628013626 +0100 -@@ -197,7 +197,7 @@ sysconfdir = @sysconfdir@ - target_alias = @target_alias@ +diff -purN libserial-0.6.0rc2.orig/Makefile.in libserial-0.6.0rc2/Makefile.in +--- libserial-0.6.0rc2.orig/Makefile.in 2014-06-05 18:40:09.000000000 +0200 ++++ libserial-0.6.0rc2/Makefile.in 2015-07-30 21:00:09.215188376 +0200 +@@ -348,7 +348,7 @@ target_alias = @target_alias@ + top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -SUBDIRS = src doc examples sip +SUBDIRS = src doc examples + ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = doxygen.conf.in Makefile.dist libserial.spec libserial.pc pkgconfigdir = $(libdir)/pkgconfig - pkgconfig_DATA = libserial.pc diff --git a/package/libserial/0002-Don-t-use-high-baudrates-when-not-available.patch b/package/libserial/0002-Don-t-use-high-baudrates-when-not-available.patch new file mode 100644 index 00000000000..f2ad61ae7db --- /dev/null +++ b/package/libserial/0002-Don-t-use-high-baudrates-when-not-available.patch @@ -0,0 +1,65 @@ +From 47ca0621ccd2100e4ba0d7f4e2a861d14f05f63c Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Tue, 17 Nov 2015 23:50:14 +0100 +Subject: [PATCH] Don't use high baudrates when not available + +On certain architectures (namely Sparc), the maximum baud rate exposed +by the kernel headers is B2000000. Therefore, the current libserial +code doesn't build for the Sparc and Sparc64 architectures due to +this. + +In order to address this problem, this patch tests the value of +__MAX_BAUD. If it's higher than B2000000 then we assume we're on an +architecture that supports all baud rates up to B4000000. Otherwise, +we simply don't support the baud rates above B2000000. + +Fixes build failures such as: + +./SerialPort.h:88:24: error: 'B2500000' was not declared in this scope + BAUD_2500000 = B2500000, + +Signed-off-by: Thomas Petazzoni +--- + src/SerialPort.h | 2 ++ + src/SerialStreamBuf.h | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/src/SerialPort.h b/src/SerialPort.h +index 6c0baaa..0b1af4c 100644 +--- a/src/SerialPort.h ++++ b/src/SerialPort.h +@@ -85,11 +85,13 @@ public: + BAUD_1152000 = B1152000, + BAUD_1500000 = B1500000, + BAUD_2000000 = B2000000, ++#if __MAX_BAUD > B2000000 + BAUD_2500000 = B2500000, + BAUD_3000000 = B3000000, + BAUD_3500000 = B3500000, + BAUD_4000000 = B4000000, + #endif ++#endif /* __linux__ */ + BAUD_DEFAULT = BAUD_57600 + } ; + +diff --git a/src/SerialStreamBuf.h b/src/SerialStreamBuf.h +index ccbb996..174f31c 100644 +--- a/src/SerialStreamBuf.h ++++ b/src/SerialStreamBuf.h +@@ -85,11 +85,13 @@ extern "C++" + BAUD_1152000 = SerialPort::BAUD_1152000, + BAUD_1500000 = SerialPort::BAUD_1500000, + BAUD_2000000 = SerialPort::BAUD_2000000, ++#if __MAX_BAUD > B2000000 + BAUD_2500000 = SerialPort::BAUD_2500000, + BAUD_3000000 = SerialPort::BAUD_3000000, + BAUD_3500000 = SerialPort::BAUD_3500000, + BAUD_4000000 = SerialPort::BAUD_4000000, + #endif ++#endif /* __linux__ */ + BAUD_DEFAULT = SerialPort::BAUD_DEFAULT, + BAUD_INVALID = -1 + } ; +-- +2.6.3 + diff --git a/package/libserial/0002-add-missing-header-include.patch b/package/libserial/0002-add-missing-header-include.patch deleted file mode 100644 index a0226372b93..00000000000 --- a/package/libserial/0002-add-missing-header-include.patch +++ /dev/null @@ -1,15 +0,0 @@ -Add a missing header include, to fix a build error. - -Signed-off-by: Simon Dawson - -diff -Nurp a/src/SerialPort.cpp b/src/SerialPort.cpp ---- a/src/SerialPort.cpp 2008-11-12 01:27:30.000000000 +0000 -+++ b/src/SerialPort.cpp 2013-04-23 15:43:41.537495852 +0100 -@@ -27,6 +27,7 @@ - #include - #include - #include -+#include - #include - #include - #include diff --git a/package/libserial/Config.in b/package/libserial/Config.in index 22adb7265ad..df5d1b54327 100644 --- a/package/libserial/Config.in +++ b/package/libserial/Config.in @@ -1,11 +1,16 @@ config BR2_PACKAGE_LIBSERIAL bool "libserial" depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS # boost + depends on BR2_TOOLCHAIN_HAS_THREADS # boost + depends on BR2_USE_WCHAR # boost + select BR2_PACKAGE_BOOST help Simplified serial port programming in C++ under POSIX operating systems. http://libserial.sourceforge.net/ -comment "libserial needs a toolchain w/ C++" - depends on !BR2_INSTALL_LIBSTDCPP +comment "libserial needs a toolchain w/ C++, threads, wchar" + depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR diff --git a/package/libserial/libserial.hash b/package/libserial/libserial.hash index 26f65e56864..bca647ae3ff 100644 --- a/package/libserial/libserial.hash +++ b/package/libserial/libserial.hash @@ -1,2 +1,5 @@ -# Locally computed: -sha256 60d8aebf5f262c12baf94ce61d61198fc9b79da2432c735c200decd08ead1fb4 libserial-0.6.0rc1.tar.gz +# From http://sourceforge.net/projects/libserial/files/libserial/0.6.0rc2/ +sha1 e09113be3ba595135e95e853003ff96feea0da63 libserial-0.6.0rc2.tar.gz +md5 7787679b22901e4810bc53ecccdf8266 libserial-0.6.0rc2.tar.gz +# Locally calculated +sha256 35ee29eb1369d52ffb8658237577692f991eb508320d0abbb71c53e6494a1c23 libserial-0.6.0rc2.tar.gz diff --git a/package/libserial/libserial.mk b/package/libserial/libserial.mk index d2c928bb3ea..11f187484e2 100644 --- a/package/libserial/libserial.mk +++ b/package/libserial/libserial.mk @@ -4,11 +4,12 @@ # ################################################################################ -LIBSERIAL_VERSION = 0.6.0rc1 +LIBSERIAL_VERSION = 0.6.0rc2 LIBSERIAL_SITE = http://downloads.sourceforge.net/libserial LIBSERIAL_INSTALL_STAGING = YES LIBSERIAL_LICENSE = GPLv2+ LIBSERIAL_LICENSE_FILES = COPYING +LIBSERIAL_DEPENDENCIES = boost LIBSERIAL_CONF_ENV = ac_cv_prog_DOCBOOK2PDF=no diff --git a/package/libserialport/libserialport.hash b/package/libserialport/libserialport.hash new file mode 100644 index 00000000000..f2619029a2e --- /dev/null +++ b/package/libserialport/libserialport.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 4a2af9d9c3ff488e92fb75b4ba38b35bcf9b8a66df04773eba2a7bbf1fa7529d libserialport-0.1.1.tar.gz diff --git a/package/libserialport/libserialport.mk b/package/libserialport/libserialport.mk index 3dcbccbffae..d8c3a3d1730 100644 --- a/package/libserialport/libserialport.mk +++ b/package/libserialport/libserialport.mk @@ -4,20 +4,11 @@ # ################################################################################ -LIBSERIALPORT_VERSION = f77bb46df5d883527da8b7eb4a5328ea7e990dbb -# No https access on upstream git -LIBSERIALPORT_SITE = git://sigrok.org/libserialport +LIBSERIALPORT_VERSION = 0.1.1 +LIBSERIALPORT_SITE = http://sigrok.org/download/source/libserialport LIBSERIALPORT_LICENSE = LGPLv3+ LIBSERIALPORT_LICENSE_FILES = COPYING -# Git checkout has no configure script -LIBSERIALPORT_AUTORECONF = YES LIBSERIALPORT_INSTALL_STAGING = YES LIBSERIALPORT_DEPENDENCIES = host-pkgconf -define LIBSERIALPORT_ADD_MISSING - mkdir -p $(@D)/autostuff -endef - -LIBSERIALPORT_PRE_CONFIGURE_HOOKS += LIBSERIALPORT_ADD_MISSING - $(eval $(autotools-package)) diff --git a/package/libsigc/Config.in b/package/libsigc/Config.in index ae984c82466..41ea19e2274 100644 --- a/package/libsigc/Config.in +++ b/package/libsigc/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_LIBSIGC bool "libsigc++" + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11 depends on BR2_INSTALL_LIBSTDCPP help libsigc++ implements a typesafe callback system for standard C++. @@ -9,5 +10,5 @@ config BR2_PACKAGE_LIBSIGC http://libsigc.sourceforge.net/ -comment "libsigc++ needs a toolchain w/ C++" - depends on !BR2_INSTALL_LIBSTDCPP +comment "libsigc++ needs a toolchain w/ C++, gcc >= 4.7" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 diff --git a/package/libsigc/libsigc.hash b/package/libsigc/libsigc.hash index 21c0e99d1e6..b9c99c5ee85 100644 --- a/package/libsigc/libsigc.hash +++ b/package/libsigc/libsigc.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/libsigc++/2.2/libsigc++-2.2.11.sha256sum -sha256 9834045f74f56752c2c6b3cdc195c30ab8314ad22dc8e626d6f67f940f1e4957 libsigc++-2.2.11.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/libsigc++/2.6/libsigc++-2.6.2.sha256sum +sha256 fdace7134c31de792c17570f9049ca0657909b28c4c70ec4882f91a03de54437 libsigc++-2.6.2.tar.xz diff --git a/package/libsigc/libsigc.mk b/package/libsigc/libsigc.mk index 7c127c42950..0dc5d24fba9 100644 --- a/package/libsigc/libsigc.mk +++ b/package/libsigc/libsigc.mk @@ -4,8 +4,8 @@ # ################################################################################ -LIBSIGC_VERSION_MAJOR = 2.2 -LIBSIGC_VERSION = $(LIBSIGC_VERSION_MAJOR).11 +LIBSIGC_VERSION_MAJOR = 2.6 +LIBSIGC_VERSION = $(LIBSIGC_VERSION_MAJOR).2 LIBSIGC_SOURCE = libsigc++-$(LIBSIGC_VERSION).tar.xz LIBSIGC_SITE = http://ftp.gnome.org/pub/GNOME/sources/libsigc++/$(LIBSIGC_VERSION_MAJOR) LIBSIGC_DEPENDENCIES = host-m4 diff --git a/package/libsigrok/0001-beaglelogic.h-fix-build-with-musl-libc.patch b/package/libsigrok/0001-beaglelogic.h-fix-build-with-musl-libc.patch new file mode 100644 index 00000000000..2b20680511b --- /dev/null +++ b/package/libsigrok/0001-beaglelogic.h-fix-build-with-musl-libc.patch @@ -0,0 +1,36 @@ +From 83bf4762e42a4d4a5c077f48d8f5715c9147d9b8 Mon Sep 17 00:00:00 2001 +From: Aurelien Jacobs +Date: Mon, 1 Feb 2016 22:37:36 +0100 +Subject: [PATCH] beaglelogic: use standard # operator instead of ugly __STRING + macro + +Also note that the __ namespace is reserved by POSIX for its private +usage, so user land software should never rely on any kind of API +with a __ prefix. + +Signed-off-by: Aurelien Jacobs +Signed-off-by: Bernd Kuhls +--- +Patch downloaded from upstream git: +http://sigrok.org/gitweb/?p=libsigrok.git;a=commit;h=83bf4762e42a4d4a5c077f48d8f5715c9147d9b8 + + src/hardware/beaglelogic/beaglelogic.h | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/src/hardware/beaglelogic/beaglelogic.h b/src/hardware/beaglelogic/beaglelogic.h +index 9015c61..96713ba 100644 +--- a/src/hardware/beaglelogic/beaglelogic.h ++++ b/src/hardware/beaglelogic/beaglelogic.h +@@ -30,8 +30,7 @@ + + /* BeagleLogic device node name */ + #define BEAGLELOGIC_DEV_NODE "/dev/beaglelogic" +-#define BEAGLELOGIC_SYSFS_ATTR(a) "/sys/devices/virtual/misc/beaglelogic/"\ +- __STRING(a) ++#define BEAGLELOGIC_SYSFS_ATTR(a) "/sys/devices/virtual/misc/beaglelogic/" #a + + /* Reproduced verbatim from beaglelogic.h in the kernel tree until the kernel + * module hits the mainline. Contains the ABI, so DO NOT TOUCH this section */ +-- +2.6.2 + diff --git a/package/libsigrok/Config.in b/package/libsigrok/Config.in index 6ef37768f6d..ff2d249827a 100644 --- a/package/libsigrok/Config.in +++ b/package/libsigrok/Config.in @@ -24,12 +24,13 @@ config BR2_PACKAGE_LIBSIGROKCXX bool "build C++ bindings" select BR2_PACKAGE_GLIBMM depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # glibmm help Build libsigrok C++ bindings as well. -comment "C++ bindings need a toolchain w/ C++" - depends on BR2_PACKAGE_LIBSIGROK - depends on !BR2_INSTALL_LIBSTDCPP +comment "C++ bindings need a toolchain w/ C++, gcc >= 4.8" + depends on !BR2_INSTALL_LIBSTDCPP || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 endif diff --git a/package/libsigrok/libsigrok.hash b/package/libsigrok/libsigrok.hash new file mode 100644 index 00000000000..999cef54edb --- /dev/null +++ b/package/libsigrok/libsigrok.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 5f291f3fee36e6dab1336f1c78596e50588831bc5ebd7cddc2a95fe8c71d669e libsigrok-0.4.0.tar.gz diff --git a/package/libsigrok/libsigrok.mk b/package/libsigrok/libsigrok.mk index 54d04826769..e4e079d3c8a 100644 --- a/package/libsigrok/libsigrok.mk +++ b/package/libsigrok/libsigrok.mk @@ -4,23 +4,14 @@ # ################################################################################ -LIBSIGROK_VERSION = fe473123ba836445d477149f2e2c0ae372fc0c4c -# No https access on upstream git -LIBSIGROK_SITE = git://sigrok.org/libsigrok +LIBSIGROK_VERSION = 0.4.0 +LIBSIGROK_SITE = http://sigrok.org/download/source/libsigrok LIBSIGROK_LICENSE = GPLv3+ LIBSIGROK_LICENSE_FILES = COPYING -# Git checkout has no configure script -LIBSIGROK_AUTORECONF = YES LIBSIGROK_INSTALL_STAGING = YES LIBSIGROK_DEPENDENCIES = libglib2 libzip host-pkgconf LIBSIGROK_CONF_OPTS = --disable-glibtest --disable-java --disable-python -define LIBSIGROK_ADD_MISSING - mkdir -p $(@D)/autostuff -endef - -LIBSIGROK_PRE_CONFIGURE_HOOKS += LIBSIGROK_ADD_MISSING - ifeq ($(BR2_PACKAGE_LIBSERIALPORT),y) LIBSIGROK_CONF_OPTS += --enable-libserialport LIBSIGROK_DEPENDENCIES += libserialport diff --git a/package/libsigrokdecode/Config.in b/package/libsigrokdecode/Config.in index a8f4e85c4a1..70f86ceb766 100644 --- a/package/libsigrokdecode/Config.in +++ b/package/libsigrokdecode/Config.in @@ -17,7 +17,7 @@ config BR2_PACKAGE_LIBSIGROKDECODE http://sigrok.org/wiki/Libsigrokdecode -comment "libsigrokecode needs a toolchain w/ wchar, threads, dynamic library" +comment "libsigrokdecode needs a toolchain w/ wchar, threads, dynamic library" depends on BR2_USE_MMU depends on !BR2_PACKAGE_PYTHON depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/libsigrokdecode/libsigrokdecode.hash b/package/libsigrokdecode/libsigrokdecode.hash new file mode 100644 index 00000000000..3ac8a7628d6 --- /dev/null +++ b/package/libsigrokdecode/libsigrokdecode.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 fd7e9d1b73245e844ead97a16d5321c766196f946c9b28a8646cab2e98ec3537 libsigrokdecode-0.4.0.tar.gz diff --git a/package/libsigrokdecode/libsigrokdecode.mk b/package/libsigrokdecode/libsigrokdecode.mk index c0a4017c17f..b8b3c59a88d 100644 --- a/package/libsigrokdecode/libsigrokdecode.mk +++ b/package/libsigrokdecode/libsigrokdecode.mk @@ -4,20 +4,11 @@ # ################################################################################ -LIBSIGROKDECODE_VERSION = 9177963de41c2d003d417049470eea3c98eeb2ef -# No https access on upstream git -LIBSIGROKDECODE_SITE = git://sigrok.org/libsigrokdecode +LIBSIGROKDECODE_VERSION = 0.4.0 +LIBSIGROKDECODE_SITE = http://sigrok.org/download/source/libsigrokdecode LIBSIGROKDECODE_LICENSE = GPLv3+ LIBSIGROKDECODE_LICENSE_FILES = COPYING -# Git checkout has no configure script -LIBSIGROKDECODE_AUTORECONF = YES LIBSIGROKDECODE_INSTALL_STAGING = YES LIBSIGROKDECODE_DEPENDENCIES = host-pkgconf libglib2 python3 -define LIBSIGROKDECODE_ADD_MISSING - mkdir -p $(@D)/autostuff -endef - -LIBSIGROKDECODE_PRE_CONFIGURE_HOOKS += LIBSIGROKDECODE_ADD_MISSING - $(eval $(autotools-package)) diff --git a/package/libsigsegv/0005-fix-sparc64-stackpointer.patch b/package/libsigsegv/0005-fix-sparc64-stackpointer.patch new file mode 100644 index 00000000000..62de35f6e00 --- /dev/null +++ b/package/libsigsegv/0005-fix-sparc64-stackpointer.patch @@ -0,0 +1,16 @@ +Fix sparc64 build. + +Signed-off-by: Waldemar Brodkorb + +diff -Nur libsigsegv-2.10.orig/src/fault-linux-sparc.h libsigsegv-2.10/src/fault-linux-sparc.h +--- libsigsegv-2.10.orig/src/fault-linux-sparc.h 2009-08-01 17:06:49.000000000 +0200 ++++ libsigsegv-2.10/src/fault-linux-sparc.h 2015-11-29 11:55:29.000000000 +0100 +@@ -27,4 +27,8 @@ + (see also ) + are quite different types. */ + ++#if __WORDSIZE == 64 ++#define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.mc_gregs[REG_O6] ++#else + #define SIGSEGV_FAULT_STACKPOINTER ((ucontext_t *) ucp)->uc_mcontext.gregs[REG_O6] ++#endif diff --git a/package/libsigsegv/Config.in b/package/libsigsegv/Config.in index 35f6d67b6c4..e5224da2eed 100644 --- a/package/libsigsegv/Config.in +++ b/package/libsigsegv/Config.in @@ -3,12 +3,12 @@ config BR2_PACKAGE_LIBSIGSEGV depends on !BR2_xtensa depends on !BR2_arc # no ucontext_i.sym file depends on !BR2_microblaze - # No ucontext support in uclibc for powerpc - depends on !(BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC) + # No ucontext support in uclibc for powerpc and superh + depends on !((BR2_powerpc || BR2_sh) && BR2_TOOLCHAIN_USES_UCLIBC) help Library for handling page faults in user mode. http://libsigsegv.sourceforge.net/ comment "libsigsegv needs an (e)glibc toolchain" - depends on BR2_powerpc && BR2_TOOLCHAIN_USES_UCLIBC + depends on (BR2_powerpc || BR2_sh) && BR2_TOOLCHAIN_USES_UCLIBC diff --git a/package/libsilk/Config.in b/package/libsilk/Config.in new file mode 100644 index 00000000000..10fe03ad328 --- /dev/null +++ b/package/libsilk/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_LIBSILK + bool "libsilk" + help + SILK is an audio compression format and audio codec. + + http://tools.ietf.org/html/draft-vos-silk-01 diff --git a/package/libsilk/libsilk.mk b/package/libsilk/libsilk.mk new file mode 100644 index 00000000000..eefdf8fd078 --- /dev/null +++ b/package/libsilk/libsilk.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# libsilk +# +################################################################################ + +LIBSILK_VERSION = 4268a02240c35c6055b0f237c46b09b2dcf79e45 +# we use the FreeSwitch fork because it contains pkgconf support +LIBSILK_SITE = https://freeswitch.org/stash/scm/sd/libsilk.git +LIBSILK_SITE_METHOD = git +LIBSILK_LICENSE = BSD-3c +LIBSILK_LICENSE_FILES = COPYING +LIBSILK_AUTORECONF = YES +LIBSILK_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/libsndfile/libsndfile.hash b/package/libsndfile/libsndfile.hash index a19c2620c6b..04d091b58bc 100644 --- a/package/libsndfile/libsndfile.hash +++ b/package/libsndfile/libsndfile.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 59016dbd326abe7e2366ded5c344c853829bebfd1702ef26a07ef662d6aa4882 libsndfile-1.0.25.tar.gz +sha256 cd6520ec763d1a45573885ecb1f8e4e42505ac12180268482a44b28484a25092 libsndfile-1.0.26.tar.gz diff --git a/package/libsndfile/libsndfile.mk b/package/libsndfile/libsndfile.mk index 88db57696fd..107a356604f 100644 --- a/package/libsndfile/libsndfile.mk +++ b/package/libsndfile/libsndfile.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSNDFILE_VERSION = 1.0.25 +LIBSNDFILE_VERSION = 1.0.26 LIBSNDFILE_SITE = http://www.mega-nerd.com/libsndfile/files LIBSNDFILE_INSTALL_STAGING = YES LIBSNDFILE_LICENSE = LGPLv2.1+ diff --git a/package/libsoc/libsoc.hash b/package/libsoc/libsoc.hash new file mode 100644 index 00000000000..e6a85771f39 --- /dev/null +++ b/package/libsoc/libsoc.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 fc7f4c4ec5cc694833f27d91603aaaa6a43e8100ab26bac47f553753c8d45ac0 libsoc-0.7.1.tar.gz diff --git a/package/libsoc/libsoc.mk b/package/libsoc/libsoc.mk index 99bea17c2a5..84e281fb697 100644 --- a/package/libsoc/libsoc.mk +++ b/package/libsoc/libsoc.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSOC_VERSION = 0.6.4 +LIBSOC_VERSION = 0.7.1 LIBSOC_SITE = $(call github,jackmitch,libsoc,$(LIBSOC_VERSION)) LIBSOC_LICENSE = LGPLv2.1 LIBSOC_LICENSE_FILES = COPYING diff --git a/package/libsodium/libsodium.hash b/package/libsodium/libsodium.hash index 089dc037182..3544237041b 100644 --- a/package/libsodium/libsodium.hash +++ b/package/libsodium/libsodium.hash @@ -1,2 +1,2 @@ -# Locally computed: -sha256 cbcfc63cc90c05d18a20f229a62c7e7054a73731d0aa858c0517152c549b1288 libsodium-1.0.3.tar.gz +# Locally calculated after checking pgp signature +sha256 940d03ea7d2caa7940e24564bf6d9f66d6edd1df1e0111ff8e3655f3b864fb59 libsodium-1.0.6.tar.gz diff --git a/package/libsodium/libsodium.mk b/package/libsodium/libsodium.mk index c0328639691..09bc7776ae4 100644 --- a/package/libsodium/libsodium.mk +++ b/package/libsodium/libsodium.mk @@ -4,10 +4,14 @@ # ################################################################################ -LIBSODIUM_VERSION = 1.0.3 -LIBSODIUM_SITE = https://github.com/jedisct1/libsodium/releases/download/$(LIBSODIUM_VERSION) +LIBSODIUM_VERSION = 1.0.6 +LIBSODIUM_SITE = https://download.libsodium.org/libsodium/releases LIBSODIUM_LICENSE = ISC LIBSODIUM_LICENSE_FILES = LICENSE LIBSODIUM_INSTALL_STAGING = YES +ifeq ($(BR2_arc),y) +LIBSODIUM_CONF_OPTS += --disable-pie +endif + $(eval $(autotools-package)) diff --git a/package/libsoil/0001-fix-makefile.patch b/package/libsoil/0001-fix-makefile.patch new file mode 100644 index 00000000000..310d26448b6 --- /dev/null +++ b/package/libsoil/0001-fix-makefile.patch @@ -0,0 +1,40 @@ +Various makefile fixes to allow cross compilation + +Partly ported from +http://anonscm.debian.org/cgit/pkg-games/libsoil.git/tree/debian/patches/linking_correctly.patch + +Signed-off-by: Bernd Kuhls + +diff -uNr soil.org/projects/makefile/alternate_Makefile.txt soil/projects/makefile/alternate_Makefile.txt +--- soil.org/projects/makefile/alternate_Makefile.txt 2008-07-07 18:13:28.000000000 +0200 ++++ soil/projects/makefile/alternate_Makefile.txt 2015-11-07 11:15:04.140106336 +0100 +@@ -1,8 +1,8 @@ + MAKE = make +-CC = gcc +-INSTALL_FILE = install -p -o root -g root -m 644 +-INSTALL_DIR = install -p -o root -g root -d +-LN = ln -s ++CC = $(GCC) ++INSTALL_FILE = $(INSTALL) -m 644 ++INSTALL_DIR = $(INSTALL) -d ++LN = ln -sf + RM = rm -fv + CFLAGS += -c -O2 -Wall + LDFLAGS += +@@ -23,13 +23,13 @@ + all: $(OFILES) lib + + %.o: %.c +- $(CC) $(CFLAGS) $< -o $@ ++ $(CC) $(CFLAGS) -c -fPIC $< -o $@ + + lib: $(OFILES) + # create static library +- ar -cvq $(LIBNAME).a $(OFILES) ++ $(AR) -cvq $(LIBNAME).a $(OFILES) + # create shared library +- gcc -shared -Wl,-soname,$(LIBNAME).so.$(MAJOR) -o $(LIBNAME).so.$(VERSION) $(OFILES) ++ $(CC) -shared -Wl,-soname,$(LIBNAME).so.$(MAJOR) -o $(LIBNAME).so.$(VERSION) $(OFILES) -lGL -lm + + install: + $(INSTALL_DIR) $(DESTDIR)/$(INCLUDEDIR) diff --git a/package/libsoil/Config.in b/package/libsoil/Config.in new file mode 100644 index 00000000000..aea0cc35483 --- /dev/null +++ b/package/libsoil/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_LIBSOIL + bool "libsoil" + depends on BR2_PACKAGE_HAS_LIBGL + depends on !BR2_STATIC_LIBS + help + SOIL is a tiny C library used primarily for uploading + textures into OpenGL. + + http://www.lonesock.net/soil.html + +comment "libsoil needs an OpenGL backend and a toolchain w/ dynamic library" + depends on !BR2_PACKAGE_HAS_LIBGL || BR2_STATIC_LIBS diff --git a/package/libsoil/libsoil.hash b/package/libsoil/libsoil.hash new file mode 100644 index 00000000000..175569b9f62 --- /dev/null +++ b/package/libsoil/libsoil.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 a2305b8d64f6d636e36d669bbdb0ca5445d1345c754b3d61d3f037dad2e5f701 soil.zip diff --git a/package/libsoil/libsoil.mk b/package/libsoil/libsoil.mk new file mode 100644 index 00000000000..efa67d9eee5 --- /dev/null +++ b/package/libsoil/libsoil.mk @@ -0,0 +1,50 @@ +################################################################################ +# +# libsoil +# +################################################################################ + +LIBSOIL_VERSION = 20080707 +LIBSOIL_SOURCE = soil.zip +LIBSOIL_SITE = http://www.lonesock.net/files +LIBSOIL_INSTALL_STAGING = YES +LIBSOIL_DEPENDENCIES = libgl +LIBSOIL_LICENSE = Public Domain, MIT +LIBSOIL_LICENSE_FILES = src/stb_image_aug.c src/image_helper.c +LIBSOIL_MAKEFILE = ../projects/makefile/alternate_Makefile.txt + +define LIBSOIL_EXTRACT_CMDS + $(UNZIP) -d $(@D) $(DL_DIR)/$(LIBSOIL_SOURCE) + mv $(@D)/Simple\ OpenGL\ Image\ Library/* $(@D) +endef + +# gnu patch < v2.5.9 doesn't correctly handle spaces in file names, +# and we want to patch the 'alternate Makefile.txt' file, so rename +# the file (and patch the renamed file) for compatibility with older +# distributions +define REMOVE_SPACE_FROM_FILENAME + cd $(@D)/projects/makefile/ && \ + mv "alternate Makefile.txt" alternate_Makefile.txt +endef +LIBSOIL_POST_EXTRACT_HOOKS += REMOVE_SPACE_FROM_FILENAME + +define LIBSOIL_BUILD_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -f $(LIBSOIL_MAKEFILE) \ + -C $(@D)/src +endef + +define LIBSOIL_INSTALL_STAGING_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -f $(LIBSOIL_MAKEFILE) \ + DESTDIR=$(STAGING_DIR) install \ + INSTALL=$(INSTALL) \ + -C $(@D)/src +endef + +define LIBSOIL_INSTALL_TARGET_CMDS + $(MAKE) $(TARGET_CONFIGURE_OPTS) -f $(LIBSOIL_MAKEFILE) \ + DESTDIR=$(TARGET_DIR) install \ + INSTALL=$(INSTALL) \ + -C $(@D)/src +endef + +$(eval $(generic-package)) diff --git a/package/libsoundtouch/Config.in b/package/libsoundtouch/Config.in new file mode 100644 index 00000000000..fdbc0757be1 --- /dev/null +++ b/package/libsoundtouch/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_LIBSOUNDTOUCH + bool "libsoundtouch" + depends on BR2_INSTALL_LIBSTDCPP + help + SoundTouch is an open-source audio processing library for + changing the Tempo, Pitch and Playback Rates of audio streams + or audio files. + + http://www.surina.net/soundtouch + +comment "libsoundtouch needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/libsoundtouch/libsoundtouch.mk b/package/libsoundtouch/libsoundtouch.mk new file mode 100644 index 00000000000..cdfec20d2bd --- /dev/null +++ b/package/libsoundtouch/libsoundtouch.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# libsoundtouch +# +################################################################################ + +LIBSOUNDTOUCH_VERSION = 010a91a59071c7fefd316fca62c0d980ec85b4b1 +LIBSOUNDTOUCH_SITE = https://freeswitch.org/stash/scm/sd/libsoundtouch.git +LIBSOUNDTOUCH_SITE_METHOD = git +LIBSOUNDTOUCH_LICENSE = LGPLv2.1+ +LIBSOUNDTOUCH_LICENSE_FILES = COPYING.TXT +LIBSOUNDTOUCH_AUTORECONF = YES +LIBSOUNDTOUCH_INSTALL_STAGING = YES + +define LIBSOUNDTOUCH_CREATE_CONFIG_M4 + mkdir -p $(@D)/config/m4 +endef +LIBSOUNDTOUCH_POST_PATCH_HOOKS += LIBSOUNDTOUCH_CREATE_CONFIG_M4 + +$(eval $(autotools-package)) diff --git a/package/libsoup/libsoup.hash b/package/libsoup/libsoup.hash index 2eb86c4e1b2..78785508946 100644 --- a/package/libsoup/libsoup.hash +++ b/package/libsoup/libsoup.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/gnome/sources/libsoup/2.48/libsoup-2.48.0.sha256sum -sha256 ea34dd64fe44343445daf6dd690d0691e9d973468de44878da97371c16d89784 libsoup-2.48.0.tar.xz +# From http://ftp.gnome.org/pub/gnome/sources/libsoup/2.52/libsoup-2.52.2.sha256sum +sha256 db55628b5c7d952945bb71b236469057c8dfb8dea0c271513579c6273c2093dc libsoup-2.52.2.tar.xz diff --git a/package/libsoup/libsoup.mk b/package/libsoup/libsoup.mk index 8cbd0cb6e36..fd51a0e7f80 100644 --- a/package/libsoup/libsoup.mk +++ b/package/libsoup/libsoup.mk @@ -4,15 +4,15 @@ # ################################################################################ -LIBSOUP_VERSION_MAJOR = 2.48 -LIBSOUP_VERSION = $(LIBSOUP_VERSION_MAJOR).0 +LIBSOUP_VERSION_MAJOR = 2.52 +LIBSOUP_VERSION = $(LIBSOUP_VERSION_MAJOR).2 LIBSOUP_SOURCE = libsoup-$(LIBSOUP_VERSION).tar.xz LIBSOUP_SITE = http://ftp.gnome.org/pub/gnome/sources/libsoup/$(LIBSOUP_VERSION_MAJOR) LIBSOUP_LICENSE = LGPLv2+ LIBSOUP_LICENSE_FILES = COPYING LIBSOUP_INSTALL_STAGING = YES LIBSOUP_CONF_ENV = ac_cv_path_GLIB_GENMARSHAL=$(LIBGLIB2_HOST_BINARY) -LIBSOUP_CONF_OPTS = --disable-glibtest +LIBSOUP_CONF_OPTS = --disable-glibtest --enable-vala=no LIBSOUP_DEPENDENCIES = host-pkgconf host-libglib2 \ libglib2 libxml2 sqlite host-intltool diff --git a/package/libsoxr/libsoxr.hash b/package/libsoxr/libsoxr.hash index f49cc81521b..066b546e62a 100644 --- a/package/libsoxr/libsoxr.hash +++ b/package/libsoxr/libsoxr.hash @@ -1,2 +1,5 @@ +# From http://sourceforge.net/projects/soxr/files/ +sha1 3b990f91dc8dc08e70626cd5fb90deda0239c211 soxr-0.1.2-Source.tar.xz +md5 0866fc4320e26f47152798ac000de1c0 soxr-0.1.2-Source.tar.xz # Locally calculated -sha256 dcc16868d1a157079316f84233afcc2b52dd0bd541dd8439dc25bceb306faac2 soxr-0.1.1-Source.tar.xz +sha256 54e6f434f1c491388cd92f0e3c47f1ade082cc24327bdc43762f7d1eefe0c275 soxr-0.1.2-Source.tar.xz diff --git a/package/libsoxr/libsoxr.mk b/package/libsoxr/libsoxr.mk index eea14181a6c..0fdc57078f5 100644 --- a/package/libsoxr/libsoxr.mk +++ b/package/libsoxr/libsoxr.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSOXR_VERSION = 0.1.1 +LIBSOXR_VERSION = 0.1.2 LIBSOXR_SOURCE = soxr-$(LIBSOXR_VERSION)-Source.tar.xz LIBSOXR_SITE = http://downloads.sourceforge.net/project/soxr LIBSOXR_LICENSE = LGPLv2.1+ diff --git a/package/libssh/Config.in b/package/libssh/Config.in new file mode 100644 index 00000000000..3357fb9e925 --- /dev/null +++ b/package/libssh/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_LIBSSH + bool "libssh" + depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS + # Either OpenSSL or libgcrypt are mandatory + select BR2_PACKAGE_LIBGCRYPT if !BR2_PACKAGE_OPENSSL + help + libssh is a multiplatform C library implementing the SSHv2 + and SSHv1 protocol on client and server side. With libssh, + you can remotely execute programs, transfer files, use a + secure and transparent tunnel for your remote applications. + + http://www.libssh.org/ + +comment "libssh needs a toolchain w/ dynamic library, threads" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libssh/libssh.hash b/package/libssh/libssh.hash new file mode 100644 index 00000000000..1eef804e5c3 --- /dev/null +++ b/package/libssh/libssh.hash @@ -0,0 +1,4 @@ +# from https://red.libssh.org/projects/libssh/files/ +md5 05465da8004f3258db946346213209de libssh-0.7.3.tar.xz +# Locally calculated after checking signature on uncompressed libssh-0.7.3.tar +sha256 26ef46be555da21112c01e4b9f5e3abba9194485c8822ab55ba3d6496222af98 libssh-0.7.3.tar.xz diff --git a/package/libssh/libssh.mk b/package/libssh/libssh.mk new file mode 100644 index 00000000000..29bbf4e9f24 --- /dev/null +++ b/package/libssh/libssh.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# libssh +# +################################################################################ + +LIBSSH_VERSION = 0.7.3 +LIBSSH_SOURCE = libssh-$(LIBSSH_VERSION).tar.xz +LIBSSH_SITE = https://red.libssh.org/attachments/download/195 +LIBSSH_LICENSE = LGPLv2.1 +LIBSSH_LICENSE_FILES = COPYING +LIBSSH_INSTALL_STAGING = YES +LIBSSH_SUPPORTS_IN_SOURCE_BUILD = NO +LIBSSH_CONF_OPTS = \ + -DWITH_STACK_PROTECTOR=OFF \ + -DWITH_SERVER=OFF \ + -DWITH_EXAMPLES=OFF + +ifeq ($(BR2_PACKAGE_ZLIB),y) +LIBSSH_CONF_OPTS += -DWITH_ZLIB=ON +LIBSSH_DEPENDENCIES += zlib +else +LIBSSH_CONF_OPTS += -DWITH_ZLIB=OFF +endif + +ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) +LIBSSH_CONF_OPTS += -DWITH_GCRYPT=ON +LIBSSH_DEPENDENCIES += libgcrypt +else +LIBSSH_CONF_OPTS += -DWITH_GCRYPT=OFF +ifeq ($(BR2_PACKAGE_OPENSSL),y) +LIBSSH_DEPENDENCIES += openssl +endif +endif + +$(eval $(cmake-package)) diff --git a/package/libssh2/Config.in b/package/libssh2/Config.in index 017fd4061a4..ea4bb3b0b80 100644 --- a/package/libssh2/Config.in +++ b/package/libssh2/Config.in @@ -1,6 +1,8 @@ config BR2_PACKAGE_LIBSSH2 bool "libssh2" select BR2_PACKAGE_LIBGCRYPT if !BR2_PACKAGE_OPENSSL + # Triggers the _gp link issue + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII help libssh2 is a client-side C library implementing the SSH2 protocol as defined by Internet Drafts: SECSH-TRANS(22), diff --git a/package/libssh2/libssh2.hash b/package/libssh2/libssh2.hash index ccc6ed50000..8f6268f3d35 100644 --- a/package/libssh2/libssh2.hash +++ b/package/libssh2/libssh2.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 83196badd6868f5b926bdac8017a6f90fb8a90b16652d3bf02df0330d573d0fc libssh2-1.5.0.tar.gz +sha256 e4561fd43a50539a8c2ceb37841691baf03ecb7daf043766da1b112e4280d584 libssh2-1.7.0.tar.gz diff --git a/package/libssh2/libssh2.mk b/package/libssh2/libssh2.mk index bf040a836e1..221fac473c6 100644 --- a/package/libssh2/libssh2.mk +++ b/package/libssh2/libssh2.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSSH2_VERSION = 1.5.0 +LIBSSH2_VERSION = 1.7.0 LIBSSH2_SITE = http://www.libssh2.org/download LIBSSH2_LICENSE = BSD LIBSSH2_LICENSE_FILES = COPYING diff --git a/package/libstrophe/0001-make-autoreconfable.patch b/package/libstrophe/0001-make-autoreconfable.patch index 98da3f47ccd..76ca6f25e81 100644 --- a/package/libstrophe/0001-make-autoreconfable.patch +++ b/package/libstrophe/0001-make-autoreconfable.patch @@ -1,13 +1,20 @@ Make the package autoreconfigurable Signed-off-by: Denis Bodor +[Gustavo: update for 0.8.8] -diff -ur libstrophe.orig/Makefile.am libstrophe/Makefile.am ---- libstrophe.orig/Makefile.am 2014-03-02 18:58:36.219753865 +0100 -+++ libstrophe/Makefile.am 2014-03-02 18:58:02.739752477 +0100 +diff -Nura libstrophe-0.8.8.orig/m4/.empty libstrophe-0.8.8/m4/.empty +--- libstrophe-0.8.8.orig/m4/.empty 1969-12-31 21:00:00.000000000 -0300 ++++ libstrophe-0.8.8/m4/.empty 2015-09-23 19:29:37.893688227 -0300 +@@ -0,0 +1,2 @@ ++ ++ +diff -Nura libstrophe-0.8.8.orig/Makefile.am libstrophe-0.8.8/Makefile.am +--- libstrophe-0.8.8.orig/Makefile.am 2015-09-23 19:26:10.960492781 -0300 ++++ libstrophe-0.8.8/Makefile.am 2015-09-23 19:29:17.265970964 -0300 @@ -1,4 +1,4 @@ -AUTOMAKE_OPTIONS = subdir-objects +AUTOMAKE_OPTIONS = subdir-objects foreign - CFLAGS = -g -Wall - + ACLOCAL_AMFLAGS = -I m4 + AM_CFLAGS = -g -Wall diff --git a/package/libstrophe/libstrophe.mk b/package/libstrophe/libstrophe.mk index 8493692e293..60e29d38c33 100644 --- a/package/libstrophe/libstrophe.mk +++ b/package/libstrophe/libstrophe.mk @@ -4,13 +4,15 @@ # ################################################################################ -LIBSTROPHE_VERSION = 0.8.6 +LIBSTROPHE_VERSION = 0.8.8 LIBSTROPHE_SITE = $(call github,strophe,libstrophe,$(LIBSTROPHE_VERSION)) LIBSTROPHE_DEPENDENCIES = openssl host-pkgconf +# Doesn't ship configure LIBSTROPHE_AUTORECONF = YES LIBSTROPHE_LICENSE = MIT or GPLv3 LIBSTROPHE_LICENSE_FILES = MIT-LICENSE.txt GPL-LICENSE.txt LIBSTROPHE_INSTALL_STAGING = YES +LIBSTROPHE_PATCH = https://github.com/msantos/libstrophe/commit/b08766c8e46956daba010044b00c97f78b598780.patch ifeq ($(BR2_PACKAGE_EXPAT),y) # Passing --without-libxml2 doesn't work, due to how AC_ARG_WITH is diff --git a/package/libsvg-cairo/Config.in b/package/libsvg-cairo/Config.in index d69a6b9259a..9577c69bf03 100644 --- a/package/libsvg-cairo/Config.in +++ b/package/libsvg-cairo/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_LIBSVG_CAIRO bool "libsvg-cairo" - depends on BR2_ARCH_HAS_ATOMICS # cairo select BR2_PACKAGE_CAIRO select BR2_PACKAGE_CAIRO_SVG select BR2_PACKAGE_LIBSVG diff --git a/package/libsvg/Config.in b/package/libsvg/Config.in index e3a5e729d0f..741ef10c7a6 100644 --- a/package/libsvg/Config.in +++ b/package/libsvg/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_LIBSVG bool "libsvg" select BR2_PACKAGE_LIBPNG - select BR2_PACKAGE_LIBJPEG + select BR2_PACKAGE_JPEG select BR2_PACKAGE_LIBXML2 if !BR2_PACKAGE_EXPAT help Libsvg provides a parser for SVG content in files or buffers. diff --git a/package/libsvg/libsvg.mk b/package/libsvg/libsvg.mk index a876c4e6c55..8b85d5a3d67 100644 --- a/package/libsvg/libsvg.mk +++ b/package/libsvg/libsvg.mk @@ -6,7 +6,7 @@ LIBSVG_VERSION = 0.1.4 LIBSVG_SITE = http://cairographics.org/snapshots -LIBSVG_DEPENDENCIES = host-pkgconf libpng libjpeg +LIBSVG_DEPENDENCIES = host-pkgconf libpng jpeg LIBSVG_INSTALL_STAGING = YES LIBSVG_LICENSE = LGPLv2+ LIBSVG_LICENSE_FILES = COPYING diff --git a/package/libtasn1/libtasn1.hash b/package/libtasn1/libtasn1.hash index 653e0182bd0..41e10a6cc29 100644 --- a/package/libtasn1/libtasn1.hash +++ b/package/libtasn1/libtasn1.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 89b3b5dce119273431544ecb305081f3530911001bb12e5d76588907edb71bda libtasn1-4.5.tar.gz +sha256 3462fc25e2d2536878c39a8825f5e36ba2e2611b27ef535e064f4c56258e508b libtasn1-4.6.tar.gz diff --git a/package/libtasn1/libtasn1.mk b/package/libtasn1/libtasn1.mk index eeff76c75d4..701e0e15cdf 100644 --- a/package/libtasn1/libtasn1.mk +++ b/package/libtasn1/libtasn1.mk @@ -4,10 +4,10 @@ # ################################################################################ -LIBTASN1_VERSION = 4.5 +LIBTASN1_VERSION = 4.6 LIBTASN1_SITE = http://ftp.gnu.org/gnu/libtasn1 LIBTASN1_DEPENDENCIES = host-bison -LIBTASN1_LICENSE = GPLv3+ LGPLv2.1+ +LIBTASN1_LICENSE = GPLv3+, LGPLv2.1+ LIBTASN1_LICENSE_FILES = COPYING COPYING.LIB LIBTASN1_INSTALL_STAGING = YES # 'missing' fallback logic botched so disable it completely diff --git a/package/libtirpc/0001-Disable-parts-of-TIRPC-requiring-NIS-support.patch b/package/libtirpc/0001-Disable-parts-of-TIRPC-requiring-NIS-support.patch index 7f58ab36aaf..e51c5a44b26 100644 --- a/package/libtirpc/0001-Disable-parts-of-TIRPC-requiring-NIS-support.patch +++ b/package/libtirpc/0001-Disable-parts-of-TIRPC-requiring-NIS-support.patch @@ -11,6 +11,8 @@ Signed-off-by: Thomas Petazzoni Signed-off-by: "Yann E. MORIN" [joerg.krause@embedded.rocks: update for 0.3.2] Signed-off-by: Jörg Krause +[peda@axentia.se: update for 1.0.1] +Signed-off-by: Peter Rosin --- src/Makefile.am | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) @@ -19,23 +21,23 @@ diff --git a/src/Makefile.am b/src/Makefile.am index 6cc567a..9834f9a 100644 --- a/src/Makefile.am +++ b/src/Makefile.am -@@ -51,7 +51,7 @@ libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c bindresvport.c cln - rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \ +@@ -24,7 +24,7 @@ libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c bindresvport.c cln rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_auth_none.c \ + svc_auth_des.c \ svc_generic.c svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \ - auth_time.c auth_des.c authdes_prot.c debug.c + auth_des.c authdes_prot.c debug.c ## XDR - libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c -@@ -68,8 +68,8 @@ if GSS + libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c xdr_sizeof.c +@@ -41,8 +41,8 @@ if GSS libtirpc_la_CFLAGS = -DHAVE_RPCSEC_GSS $(GSSAPI_CFLAGS) endif -libtirpc_la_SOURCES += key_call.c key_prot_xdr.c getpublickey.c --libtirpc_la_SOURCES += netname.c netnamer.c rtime.c +-libtirpc_la_SOURCES += netname.c netnamer.c rpcdname.c rtime.c +#libtirpc_la_SOURCES += key_call.c key_prot_xdr.c getpublickey.c -+#libtirpc_la_SOURCES += netname.c netnamer.c rtime.c ++#libtirpc_la_SOURCES += netname.c netnamer.c rpcdname.c rtime.c CLEANFILES = cscope.* *~ DISTCLEANFILES = Makefile.in diff --git a/package/libtirpc/0003-Add-rpcgen-program-from-nfs-utils-sources.patch b/package/libtirpc/0003-Add-rpcgen-program-from-nfs-utils-sources.patch index ad14312aa62..1cf861417c9 100644 --- a/package/libtirpc/0003-Add-rpcgen-program-from-nfs-utils-sources.patch +++ b/package/libtirpc/0003-Add-rpcgen-program-from-nfs-utils-sources.patch @@ -87,7 +87,7 @@ index 0000000..2277b6f + $(CPPFLAGS_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) +LINK = $(CC_FOR_BUILD) $(AM_CFLAGS) $(CFLAGS_FOR_BUILD) $(AM_LDFLAGS) $(LDFLAGS_FOR_BUILD) -o $@ + -+bin_PROGRAMS = rpcgen ++noinst_PROGRAMS = rpcgen + +rpcgen_SOURCES = \ + rpc_clntout.c \ diff --git a/package/libtirpc/0006-Disable-DES-authentification-support.patch b/package/libtirpc/0006-Disable-DES-authentification-support.patch new file mode 100644 index 00000000000..59a77ffc1da --- /dev/null +++ b/package/libtirpc/0006-Disable-DES-authentification-support.patch @@ -0,0 +1,148 @@ +From 79975eb4104667be85abd06874c258438826b674 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Fri, 24 Jul 2015 14:45:52 +0200 +Subject: [PATCH] Disable DES authentification support +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +uClibc and musl does not provide DES authentication. + +Signed-off-by: Jörg Krause +[peda@axentia.se: update for 1.0.1] +Signed-off-by: Peter Rosin +--- + src/Makefile.am | 2 +- + src/rpc_soc.c | 32 -------------------------------- + 2 files changed, 1 insertion(+), 33 deletions(-) + +diff --git a/src/Makefile.am b/src/Makefile.am +index 960a522..3a88e31 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -22,9 +22,8 @@ libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c bindresvport.c cln + pmap_prot.c pmap_prot2.c pmap_rmt.c rpc_prot.c rpc_commondata.c \ + rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \ + rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_auth_none.c \ +- svc_auth_des.c \ + svc_generic.c svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \ +- auth_des.c authdes_prot.c debug.c ++ debug.c + + ## XDR + libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c xdr_sizeof.c +diff --git a/src/svc_auth.c b/src/svc_auth.c +--- a/src/svc_auth.c ++++ b/src/svc_auth.c +@@ -114,9 +114,6 @@ _gss_authenticate(rqst, msg, no_dispatch) + case AUTH_SHORT: + dummy = _svcauth_short(rqst, msg); + return (dummy); +- case AUTH_DES: +- dummy = _svcauth_des(rqst, msg); +- return (dummy); + #ifdef HAVE_RPCSEC_GSS + case RPCSEC_GSS: + dummy = _svcauth_gss(rqst, msg, no_dispatch); +diff --git a/src/rpc_soc.c b/src/rpc_soc.c +index e146ed4..161a1ec 100644 +--- a/src/rpc_soc.c ++++ b/src/rpc_soc.c +@@ -61,7 +61,6 @@ #ifdef PORTMAP + #include + #include + #include +-#include + + #include "rpc_com.h" + +@@ -522,86 +521,6 @@ clnt_broadcast(prog, vers, proc, xargs, argsp, xresults, resultsp, eachresult) + } + + /* +- * Create the client des authentication object. Obsoleted by +- * authdes_seccreate(). +- */ +-AUTH * +-authdes_create(servername, window, syncaddr, ckey) +- char *servername; /* network name of server */ +- u_int window; /* time to live */ +- struct sockaddr *syncaddr; /* optional hostaddr to sync with */ +- des_block *ckey; /* optional conversation key to use */ +-{ +- AUTH *nauth; +- char hostname[NI_MAXHOST]; +- +- if (syncaddr) { +- /* +- * Change addr to hostname, because that is the way +- * new interface takes it. +- */ +- switch (syncaddr->sa_family) { +- case AF_INET: +- if (getnameinfo(syncaddr, sizeof(struct sockaddr_in), hostname, +- sizeof hostname, NULL, 0, 0) != 0) +- goto fallback; +- break; +- case AF_INET6: +- if (getnameinfo(syncaddr, sizeof(struct sockaddr_in6), hostname, +- sizeof hostname, NULL, 0, 0) != 0) +- goto fallback; +- break; +- default: +- goto fallback; +- } +- nauth = authdes_seccreate(servername, window, hostname, ckey); +- return (nauth); +- } +-fallback: +- return authdes_seccreate(servername, window, NULL, ckey); +-} +- +-/* +- * Create the client des authentication object. Obsoleted by +- * authdes_pk_seccreate(). +- */ +-extern AUTH *authdes_pk_seccreate(const char *, netobj *, u_int, const char *, +- const des_block *, nis_server *); +- +-AUTH * +-authdes_pk_create(servername, pkey, window, syncaddr, ckey) +- char *servername; /* network name of server */ +- netobj *pkey; /* public key */ +- u_int window; /* time to live */ +- struct sockaddr *syncaddr; /* optional hostaddr to sync with */ +- des_block *ckey; /* optional conversation key to use */ +-{ +- AUTH *nauth; +- char hostname[NI_MAXHOST]; +- +- if (syncaddr) { +- /* +- * Change addr to hostname, because that is the way +- * new interface takes it. +- */ +- switch (syncaddr->sa_family) { +- case AF_INET: +- if (getnameinfo(syncaddr, sizeof(struct sockaddr_in), hostname, +- sizeof hostname, NULL, 0, 0) != 0) +- goto fallback; +- break; +- default: +- goto fallback; +- } +- nauth = authdes_pk_seccreate(servername, pkey, window, hostname, ckey, NULL); +- return (nauth); +- } +-fallback: +- return authdes_pk_seccreate(servername, pkey, window, NULL, ckey, NULL); +-} +- +- +-/* + * Create a client handle for a unix connection. Obsoleted by clnt_vc_create() + */ + CLIENT * +-- +2.4.6 + diff --git a/package/libtirpc/0006-Use-local-bsdqueue.h.patch b/package/libtirpc/0006-Use-local-bsdqueue.h.patch deleted file mode 100644 index 0c9aecfc903..00000000000 --- a/package/libtirpc/0006-Use-local-bsdqueue.h.patch +++ /dev/null @@ -1,903 +0,0 @@ -From 7c337ac4f6fa260e3c25820f780d24329d85e027 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Tue, 5 May 2015 17:06:03 +0200 -Subject: [PATCH 12/16] Use local bsdqueue.h -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Not all systems provide a sys/queue.h implementation. For example the the musl -C library does not and will not have it [1]. - -sys/queue.h first appeared in 4.4BSD and is used in all 4.4BSD variants. Note -that glibc' sys/queue.h is a patched version of this 4.4BDS header (adds -STAILQ_CONCAT and TAILQ_CONCAT). - -There exists several implementations of sys/queue.h. Lets use the version from -the NetBSD project [2] and provide it as a local header file "bsdqueue.h" - -[1] http://wiki.musl-libc.org/wiki/FAQ#Q:_why_is_sys.2Fqueue.h_not_included_.3F -[2] http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/sys/queue.h?rev=1.68 - -Signed-off-by: Jörg Krause ---- - src/clnt_bcast.c | 2 +- - tirpc/bsdqueue.h | 846 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 847 insertions(+), 1 deletion(-) - create mode 100644 tirpc/bsdqueue.h - -diff --git a/src/clnt_bcast.c b/src/clnt_bcast.c -index 262b2ab..3ed8457 100644 ---- a/src/clnt_bcast.c -+++ b/src/clnt_bcast.c -@@ -40,7 +40,6 @@ - */ - #include - #include --#include - - #include - #include -@@ -64,6 +63,7 @@ - #include - #include - -+#include "bsdqueue.h" - #include "rpc_com.h" - - #define MAXBCAST 20 /* Max no of broadcasting transports */ -diff --git a/tirpc/bsdqueue.h b/tirpc/bsdqueue.h -new file mode 100644 -index 0000000..99d01a5 ---- /dev/null -+++ b/tirpc/bsdqueue.h -@@ -0,0 +1,846 @@ -+/* $NetBSD: queue.h,v 1.68 2014/11/19 08:10:01 uebayasi Exp $ */ -+ -+/* -+ * Copyright (c) 1991, 1993 -+ * The Regents of the University of California. All rights reserved. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * 3. Neither the name of the University nor the names of its contributors -+ * may be used to endorse or promote products derived from this software -+ * without specific prior written permission. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -+ * SUCH DAMAGE. -+ * -+ * @(#)queue.h 8.5 (Berkeley) 8/20/94 -+ */ -+ -+#ifndef _SYS_QUEUE_H_ -+#define _SYS_QUEUE_H_ -+ -+/* -+ * This file defines five types of data structures: singly-linked lists, -+ * lists, simple queues, tail queues, and circular queues. -+ * -+ * A singly-linked list is headed by a single forward pointer. The -+ * elements are singly linked for minimum space and pointer manipulation -+ * overhead at the expense of O(n) removal for arbitrary elements. New -+ * elements can be added to the list after an existing element or at the -+ * head of the list. Elements being removed from the head of the list -+ * should use the explicit macro for this purpose for optimum -+ * efficiency. A singly-linked list may only be traversed in the forward -+ * direction. Singly-linked lists are ideal for applications with large -+ * datasets and few or no removals or for implementing a LIFO queue. -+ * -+ * A list is headed by a single forward pointer (or an array of forward -+ * pointers for a hash table header). The elements are doubly linked -+ * so that an arbitrary element can be removed without a need to -+ * traverse the list. New elements can be added to the list before -+ * or after an existing element or at the head of the list. A list -+ * may only be traversed in the forward direction. -+ * -+ * A simple queue is headed by a pair of pointers, one the head of the -+ * list and the other to the tail of the list. The elements are singly -+ * linked to save space, so elements can only be removed from the -+ * head of the list. New elements can be added to the list after -+ * an existing element, at the head of the list, or at the end of the -+ * list. A simple queue may only be traversed in the forward direction. -+ * -+ * A tail queue is headed by a pair of pointers, one to the head of the -+ * list and the other to the tail of the list. The elements are doubly -+ * linked so that an arbitrary element can be removed without a need to -+ * traverse the list. New elements can be added to the list before or -+ * after an existing element, at the head of the list, or at the end of -+ * the list. A tail queue may be traversed in either direction. -+ * -+ * A circle queue is headed by a pair of pointers, one to the head of the -+ * list and the other to the tail of the list. The elements are doubly -+ * linked so that an arbitrary element can be removed without a need to -+ * traverse the list. New elements can be added to the list before or after -+ * an existing element, at the head of the list, or at the end of the list. -+ * A circle queue may be traversed in either direction, but has a more -+ * complex end of list detection. -+ * -+ * For details on the use of these macros, see the queue(3) manual page. -+ */ -+ -+/* -+ * Include the definition of NULL only on NetBSD because sys/null.h -+ * is not available elsewhere. This conditional makes the header -+ * portable and it can simply be dropped verbatim into any system. -+ * The caveat is that on other systems some other header -+ * must provide NULL before the macros can be used. -+ */ -+#ifdef __NetBSD__ -+#include -+#endif -+ -+#if defined(QUEUEDEBUG) -+# if defined(_KERNEL) -+# define QUEUEDEBUG_ABORT(...) panic(__VA_ARGS__) -+# else -+# include -+# define QUEUEDEBUG_ABORT(...) err(1, __VA_ARGS__) -+# endif -+#endif -+ -+/* -+ * Singly-linked List definitions. -+ */ -+#define SLIST_HEAD(name, type) \ -+struct name { \ -+ struct type *slh_first; /* first element */ \ -+} -+ -+#define SLIST_HEAD_INITIALIZER(head) \ -+ { NULL } -+ -+#define SLIST_ENTRY(type) \ -+struct { \ -+ struct type *sle_next; /* next element */ \ -+} -+ -+/* -+ * Singly-linked List access methods. -+ */ -+#define SLIST_FIRST(head) ((head)->slh_first) -+#define SLIST_END(head) NULL -+#define SLIST_EMPTY(head) ((head)->slh_first == NULL) -+#define SLIST_NEXT(elm, field) ((elm)->field.sle_next) -+ -+#define SLIST_FOREACH(var, head, field) \ -+ for((var) = (head)->slh_first; \ -+ (var) != SLIST_END(head); \ -+ (var) = (var)->field.sle_next) -+ -+#define SLIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = SLIST_FIRST((head)); \ -+ (var) != SLIST_END(head) && \ -+ ((tvar) = SLIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ -+/* -+ * Singly-linked List functions. -+ */ -+#define SLIST_INIT(head) do { \ -+ (head)->slh_first = SLIST_END(head); \ -+} while (/*CONSTCOND*/0) -+ -+#define SLIST_INSERT_AFTER(slistelm, elm, field) do { \ -+ (elm)->field.sle_next = (slistelm)->field.sle_next; \ -+ (slistelm)->field.sle_next = (elm); \ -+} while (/*CONSTCOND*/0) -+ -+#define SLIST_INSERT_HEAD(head, elm, field) do { \ -+ (elm)->field.sle_next = (head)->slh_first; \ -+ (head)->slh_first = (elm); \ -+} while (/*CONSTCOND*/0) -+ -+#define SLIST_REMOVE_AFTER(slistelm, field) do { \ -+ (slistelm)->field.sle_next = \ -+ SLIST_NEXT(SLIST_NEXT((slistelm), field), field); \ -+} while (/*CONSTCOND*/0) -+ -+#define SLIST_REMOVE_HEAD(head, field) do { \ -+ (head)->slh_first = (head)->slh_first->field.sle_next; \ -+} while (/*CONSTCOND*/0) -+ -+#define SLIST_REMOVE(head, elm, type, field) do { \ -+ if ((head)->slh_first == (elm)) { \ -+ SLIST_REMOVE_HEAD((head), field); \ -+ } \ -+ else { \ -+ struct type *curelm = (head)->slh_first; \ -+ while(curelm->field.sle_next != (elm)) \ -+ curelm = curelm->field.sle_next; \ -+ curelm->field.sle_next = \ -+ curelm->field.sle_next->field.sle_next; \ -+ } \ -+} while (/*CONSTCOND*/0) -+ -+ -+/* -+ * List definitions. -+ */ -+#define LIST_HEAD(name, type) \ -+struct name { \ -+ struct type *lh_first; /* first element */ \ -+} -+ -+#define LIST_HEAD_INITIALIZER(head) \ -+ { NULL } -+ -+#define LIST_ENTRY(type) \ -+struct { \ -+ struct type *le_next; /* next element */ \ -+ struct type **le_prev; /* address of previous next element */ \ -+} -+ -+/* -+ * List access methods. -+ */ -+#define LIST_FIRST(head) ((head)->lh_first) -+#define LIST_END(head) NULL -+#define LIST_EMPTY(head) ((head)->lh_first == LIST_END(head)) -+#define LIST_NEXT(elm, field) ((elm)->field.le_next) -+ -+#define LIST_FOREACH(var, head, field) \ -+ for ((var) = ((head)->lh_first); \ -+ (var) != LIST_END(head); \ -+ (var) = ((var)->field.le_next)) -+ -+#define LIST_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = LIST_FIRST((head)); \ -+ (var) != LIST_END(head) && \ -+ ((tvar) = LIST_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ -+#define LIST_MOVE(head1, head2) do { \ -+ LIST_INIT((head2)); \ -+ if (!LIST_EMPTY((head1))) { \ -+ (head2)->lh_first = (head1)->lh_first; \ -+ LIST_INIT((head1)); \ -+ } \ -+} while (/*CONSTCOND*/0) -+ -+/* -+ * List functions. -+ */ -+#if defined(QUEUEDEBUG) -+#define QUEUEDEBUG_LIST_INSERT_HEAD(head, elm, field) \ -+ if ((head)->lh_first && \ -+ (head)->lh_first->field.le_prev != &(head)->lh_first) \ -+ QUEUEDEBUG_ABORT("LIST_INSERT_HEAD %p %s:%d", (head), \ -+ __FILE__, __LINE__); -+#define QUEUEDEBUG_LIST_OP(elm, field) \ -+ if ((elm)->field.le_next && \ -+ (elm)->field.le_next->field.le_prev != \ -+ &(elm)->field.le_next) \ -+ QUEUEDEBUG_ABORT("LIST_* forw %p %s:%d", (elm), \ -+ __FILE__, __LINE__); \ -+ if (*(elm)->field.le_prev != (elm)) \ -+ QUEUEDEBUG_ABORT("LIST_* back %p %s:%d", (elm), \ -+ __FILE__, __LINE__); -+#define QUEUEDEBUG_LIST_POSTREMOVE(elm, field) \ -+ (elm)->field.le_next = (void *)1L; \ -+ (elm)->field.le_prev = (void *)1L; -+#else -+#define QUEUEDEBUG_LIST_INSERT_HEAD(head, elm, field) -+#define QUEUEDEBUG_LIST_OP(elm, field) -+#define QUEUEDEBUG_LIST_POSTREMOVE(elm, field) -+#endif -+ -+#define LIST_INIT(head) do { \ -+ (head)->lh_first = LIST_END(head); \ -+} while (/*CONSTCOND*/0) -+ -+#define LIST_INSERT_AFTER(listelm, elm, field) do { \ -+ QUEUEDEBUG_LIST_OP((listelm), field) \ -+ if (((elm)->field.le_next = (listelm)->field.le_next) != \ -+ LIST_END(head)) \ -+ (listelm)->field.le_next->field.le_prev = \ -+ &(elm)->field.le_next; \ -+ (listelm)->field.le_next = (elm); \ -+ (elm)->field.le_prev = &(listelm)->field.le_next; \ -+} while (/*CONSTCOND*/0) -+ -+#define LIST_INSERT_BEFORE(listelm, elm, field) do { \ -+ QUEUEDEBUG_LIST_OP((listelm), field) \ -+ (elm)->field.le_prev = (listelm)->field.le_prev; \ -+ (elm)->field.le_next = (listelm); \ -+ *(listelm)->field.le_prev = (elm); \ -+ (listelm)->field.le_prev = &(elm)->field.le_next; \ -+} while (/*CONSTCOND*/0) -+ -+#define LIST_INSERT_HEAD(head, elm, field) do { \ -+ QUEUEDEBUG_LIST_INSERT_HEAD((head), (elm), field) \ -+ if (((elm)->field.le_next = (head)->lh_first) != LIST_END(head))\ -+ (head)->lh_first->field.le_prev = &(elm)->field.le_next;\ -+ (head)->lh_first = (elm); \ -+ (elm)->field.le_prev = &(head)->lh_first; \ -+} while (/*CONSTCOND*/0) -+ -+#define LIST_REMOVE(elm, field) do { \ -+ QUEUEDEBUG_LIST_OP((elm), field) \ -+ if ((elm)->field.le_next != NULL) \ -+ (elm)->field.le_next->field.le_prev = \ -+ (elm)->field.le_prev; \ -+ *(elm)->field.le_prev = (elm)->field.le_next; \ -+ QUEUEDEBUG_LIST_POSTREMOVE((elm), field) \ -+} while (/*CONSTCOND*/0) -+ -+#define LIST_REPLACE(elm, elm2, field) do { \ -+ if (((elm2)->field.le_next = (elm)->field.le_next) != NULL) \ -+ (elm2)->field.le_next->field.le_prev = \ -+ &(elm2)->field.le_next; \ -+ (elm2)->field.le_prev = (elm)->field.le_prev; \ -+ *(elm2)->field.le_prev = (elm2); \ -+ QUEUEDEBUG_LIST_POSTREMOVE((elm), field) \ -+} while (/*CONSTCOND*/0) -+ -+/* -+ * Simple queue definitions. -+ */ -+#define SIMPLEQ_HEAD(name, type) \ -+struct name { \ -+ struct type *sqh_first; /* first element */ \ -+ struct type **sqh_last; /* addr of last next element */ \ -+} -+ -+#define SIMPLEQ_HEAD_INITIALIZER(head) \ -+ { NULL, &(head).sqh_first } -+ -+#define SIMPLEQ_ENTRY(type) \ -+struct { \ -+ struct type *sqe_next; /* next element */ \ -+} -+ -+/* -+ * Simple queue access methods. -+ */ -+#define SIMPLEQ_FIRST(head) ((head)->sqh_first) -+#define SIMPLEQ_END(head) NULL -+#define SIMPLEQ_EMPTY(head) ((head)->sqh_first == SIMPLEQ_END(head)) -+#define SIMPLEQ_NEXT(elm, field) ((elm)->field.sqe_next) -+ -+#define SIMPLEQ_FOREACH(var, head, field) \ -+ for ((var) = ((head)->sqh_first); \ -+ (var) != SIMPLEQ_END(head); \ -+ (var) = ((var)->field.sqe_next)) -+ -+#define SIMPLEQ_FOREACH_SAFE(var, head, field, next) \ -+ for ((var) = ((head)->sqh_first); \ -+ (var) != SIMPLEQ_END(head) && \ -+ ((next = ((var)->field.sqe_next)), 1); \ -+ (var) = (next)) -+ -+/* -+ * Simple queue functions. -+ */ -+#define SIMPLEQ_INIT(head) do { \ -+ (head)->sqh_first = NULL; \ -+ (head)->sqh_last = &(head)->sqh_first; \ -+} while (/*CONSTCOND*/0) -+ -+#define SIMPLEQ_INSERT_HEAD(head, elm, field) do { \ -+ if (((elm)->field.sqe_next = (head)->sqh_first) == NULL) \ -+ (head)->sqh_last = &(elm)->field.sqe_next; \ -+ (head)->sqh_first = (elm); \ -+} while (/*CONSTCOND*/0) -+ -+#define SIMPLEQ_INSERT_TAIL(head, elm, field) do { \ -+ (elm)->field.sqe_next = NULL; \ -+ *(head)->sqh_last = (elm); \ -+ (head)->sqh_last = &(elm)->field.sqe_next; \ -+} while (/*CONSTCOND*/0) -+ -+#define SIMPLEQ_INSERT_AFTER(head, listelm, elm, field) do { \ -+ if (((elm)->field.sqe_next = (listelm)->field.sqe_next) == NULL)\ -+ (head)->sqh_last = &(elm)->field.sqe_next; \ -+ (listelm)->field.sqe_next = (elm); \ -+} while (/*CONSTCOND*/0) -+ -+#define SIMPLEQ_REMOVE_HEAD(head, field) do { \ -+ if (((head)->sqh_first = (head)->sqh_first->field.sqe_next) == NULL) \ -+ (head)->sqh_last = &(head)->sqh_first; \ -+} while (/*CONSTCOND*/0) -+ -+#define SIMPLEQ_REMOVE_AFTER(head, elm, field) do { \ -+ if (((elm)->field.sqe_next = (elm)->field.sqe_next->field.sqe_next) \ -+ == NULL) \ -+ (head)->sqh_last = &(elm)->field.sqe_next; \ -+} while (/*CONSTCOND*/0) -+ -+#define SIMPLEQ_REMOVE(head, elm, type, field) do { \ -+ if ((head)->sqh_first == (elm)) { \ -+ SIMPLEQ_REMOVE_HEAD((head), field); \ -+ } else { \ -+ struct type *curelm = (head)->sqh_first; \ -+ while (curelm->field.sqe_next != (elm)) \ -+ curelm = curelm->field.sqe_next; \ -+ if ((curelm->field.sqe_next = \ -+ curelm->field.sqe_next->field.sqe_next) == NULL) \ -+ (head)->sqh_last = &(curelm)->field.sqe_next; \ -+ } \ -+} while (/*CONSTCOND*/0) -+ -+#define SIMPLEQ_CONCAT(head1, head2) do { \ -+ if (!SIMPLEQ_EMPTY((head2))) { \ -+ *(head1)->sqh_last = (head2)->sqh_first; \ -+ (head1)->sqh_last = (head2)->sqh_last; \ -+ SIMPLEQ_INIT((head2)); \ -+ } \ -+} while (/*CONSTCOND*/0) -+ -+#define SIMPLEQ_LAST(head, type, field) \ -+ (SIMPLEQ_EMPTY((head)) ? \ -+ NULL : \ -+ ((struct type *)(void *) \ -+ ((char *)((head)->sqh_last) - offsetof(struct type, field)))) -+ -+/* -+ * Tail queue definitions. -+ */ -+#define _TAILQ_HEAD(name, type, qual) \ -+struct name { \ -+ qual type *tqh_first; /* first element */ \ -+ qual type *qual *tqh_last; /* addr of last next element */ \ -+} -+#define TAILQ_HEAD(name, type) _TAILQ_HEAD(name, struct type,) -+ -+#define TAILQ_HEAD_INITIALIZER(head) \ -+ { TAILQ_END(head), &(head).tqh_first } -+ -+#define _TAILQ_ENTRY(type, qual) \ -+struct { \ -+ qual type *tqe_next; /* next element */ \ -+ qual type *qual *tqe_prev; /* address of previous next element */\ -+} -+#define TAILQ_ENTRY(type) _TAILQ_ENTRY(struct type,) -+ -+/* -+ * Tail queue access methods. -+ */ -+#define TAILQ_FIRST(head) ((head)->tqh_first) -+#define TAILQ_END(head) (NULL) -+#define TAILQ_NEXT(elm, field) ((elm)->field.tqe_next) -+#define TAILQ_LAST(head, headname) \ -+ (*(((struct headname *)((head)->tqh_last))->tqh_last)) -+#define TAILQ_PREV(elm, headname, field) \ -+ (*(((struct headname *)((elm)->field.tqe_prev))->tqh_last)) -+#define TAILQ_EMPTY(head) (TAILQ_FIRST(head) == TAILQ_END(head)) -+ -+ -+#define TAILQ_FOREACH(var, head, field) \ -+ for ((var) = ((head)->tqh_first); \ -+ (var) != TAILQ_END(head); \ -+ (var) = ((var)->field.tqe_next)) -+ -+#define TAILQ_FOREACH_SAFE(var, head, field, next) \ -+ for ((var) = ((head)->tqh_first); \ -+ (var) != TAILQ_END(head) && \ -+ ((next) = TAILQ_NEXT(var, field), 1); (var) = (next)) -+ -+#define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ -+ for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last));\ -+ (var) != TAILQ_END(head); \ -+ (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last))) -+ -+#define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, prev) \ -+ for ((var) = TAILQ_LAST((head), headname); \ -+ (var) != TAILQ_END(head) && \ -+ ((prev) = TAILQ_PREV((var), headname, field), 1); (var) = (prev)) -+ -+/* -+ * Tail queue functions. -+ */ -+#if defined(QUEUEDEBUG) -+#define QUEUEDEBUG_TAILQ_INSERT_HEAD(head, elm, field) \ -+ if ((head)->tqh_first && \ -+ (head)->tqh_first->field.tqe_prev != &(head)->tqh_first) \ -+ QUEUEDEBUG_ABORT("TAILQ_INSERT_HEAD %p %s:%d", (head), \ -+ __FILE__, __LINE__); -+#define QUEUEDEBUG_TAILQ_INSERT_TAIL(head, elm, field) \ -+ if (*(head)->tqh_last != NULL) \ -+ QUEUEDEBUG_ABORT("TAILQ_INSERT_TAIL %p %s:%d", (head), \ -+ __FILE__, __LINE__); -+#define QUEUEDEBUG_TAILQ_OP(elm, field) \ -+ if ((elm)->field.tqe_next && \ -+ (elm)->field.tqe_next->field.tqe_prev != \ -+ &(elm)->field.tqe_next) \ -+ QUEUEDEBUG_ABORT("TAILQ_* forw %p %s:%d", (elm), \ -+ __FILE__, __LINE__); \ -+ if (*(elm)->field.tqe_prev != (elm)) \ -+ QUEUEDEBUG_ABORT("TAILQ_* back %p %s:%d", (elm), \ -+ __FILE__, __LINE__); -+#define QUEUEDEBUG_TAILQ_PREREMOVE(head, elm, field) \ -+ if ((elm)->field.tqe_next == NULL && \ -+ (head)->tqh_last != &(elm)->field.tqe_next) \ -+ QUEUEDEBUG_ABORT("TAILQ_PREREMOVE head %p elm %p %s:%d",\ -+ (head), (elm), __FILE__, __LINE__); -+#define QUEUEDEBUG_TAILQ_POSTREMOVE(elm, field) \ -+ (elm)->field.tqe_next = (void *)1L; \ -+ (elm)->field.tqe_prev = (void *)1L; -+#else -+#define QUEUEDEBUG_TAILQ_INSERT_HEAD(head, elm, field) -+#define QUEUEDEBUG_TAILQ_INSERT_TAIL(head, elm, field) -+#define QUEUEDEBUG_TAILQ_OP(elm, field) -+#define QUEUEDEBUG_TAILQ_PREREMOVE(head, elm, field) -+#define QUEUEDEBUG_TAILQ_POSTREMOVE(elm, field) -+#endif -+ -+#define TAILQ_INIT(head) do { \ -+ (head)->tqh_first = TAILQ_END(head); \ -+ (head)->tqh_last = &(head)->tqh_first; \ -+} while (/*CONSTCOND*/0) -+ -+#define TAILQ_INSERT_HEAD(head, elm, field) do { \ -+ QUEUEDEBUG_TAILQ_INSERT_HEAD((head), (elm), field) \ -+ if (((elm)->field.tqe_next = (head)->tqh_first) != TAILQ_END(head))\ -+ (head)->tqh_first->field.tqe_prev = \ -+ &(elm)->field.tqe_next; \ -+ else \ -+ (head)->tqh_last = &(elm)->field.tqe_next; \ -+ (head)->tqh_first = (elm); \ -+ (elm)->field.tqe_prev = &(head)->tqh_first; \ -+} while (/*CONSTCOND*/0) -+ -+#define TAILQ_INSERT_TAIL(head, elm, field) do { \ -+ QUEUEDEBUG_TAILQ_INSERT_TAIL((head), (elm), field) \ -+ (elm)->field.tqe_next = TAILQ_END(head); \ -+ (elm)->field.tqe_prev = (head)->tqh_last; \ -+ *(head)->tqh_last = (elm); \ -+ (head)->tqh_last = &(elm)->field.tqe_next; \ -+} while (/*CONSTCOND*/0) -+ -+#define TAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ -+ QUEUEDEBUG_TAILQ_OP((listelm), field) \ -+ if (((elm)->field.tqe_next = (listelm)->field.tqe_next) != \ -+ TAILQ_END(head)) \ -+ (elm)->field.tqe_next->field.tqe_prev = \ -+ &(elm)->field.tqe_next; \ -+ else \ -+ (head)->tqh_last = &(elm)->field.tqe_next; \ -+ (listelm)->field.tqe_next = (elm); \ -+ (elm)->field.tqe_prev = &(listelm)->field.tqe_next; \ -+} while (/*CONSTCOND*/0) -+ -+#define TAILQ_INSERT_BEFORE(listelm, elm, field) do { \ -+ QUEUEDEBUG_TAILQ_OP((listelm), field) \ -+ (elm)->field.tqe_prev = (listelm)->field.tqe_prev; \ -+ (elm)->field.tqe_next = (listelm); \ -+ *(listelm)->field.tqe_prev = (elm); \ -+ (listelm)->field.tqe_prev = &(elm)->field.tqe_next; \ -+} while (/*CONSTCOND*/0) -+ -+#define TAILQ_REMOVE(head, elm, field) do { \ -+ QUEUEDEBUG_TAILQ_PREREMOVE((head), (elm), field) \ -+ QUEUEDEBUG_TAILQ_OP((elm), field) \ -+ if (((elm)->field.tqe_next) != TAILQ_END(head)) \ -+ (elm)->field.tqe_next->field.tqe_prev = \ -+ (elm)->field.tqe_prev; \ -+ else \ -+ (head)->tqh_last = (elm)->field.tqe_prev; \ -+ *(elm)->field.tqe_prev = (elm)->field.tqe_next; \ -+ QUEUEDEBUG_TAILQ_POSTREMOVE((elm), field); \ -+} while (/*CONSTCOND*/0) -+ -+#define TAILQ_REPLACE(head, elm, elm2, field) do { \ -+ if (((elm2)->field.tqe_next = (elm)->field.tqe_next) != \ -+ TAILQ_END(head)) \ -+ (elm2)->field.tqe_next->field.tqe_prev = \ -+ &(elm2)->field.tqe_next; \ -+ else \ -+ (head)->tqh_last = &(elm2)->field.tqe_next; \ -+ (elm2)->field.tqe_prev = (elm)->field.tqe_prev; \ -+ *(elm2)->field.tqe_prev = (elm2); \ -+ QUEUEDEBUG_TAILQ_POSTREMOVE((elm), field); \ -+} while (/*CONSTCOND*/0) -+ -+#define TAILQ_CONCAT(head1, head2, field) do { \ -+ if (!TAILQ_EMPTY(head2)) { \ -+ *(head1)->tqh_last = (head2)->tqh_first; \ -+ (head2)->tqh_first->field.tqe_prev = (head1)->tqh_last; \ -+ (head1)->tqh_last = (head2)->tqh_last; \ -+ TAILQ_INIT((head2)); \ -+ } \ -+} while (/*CONSTCOND*/0) -+ -+/* -+ * Singly-linked Tail queue declarations. -+ */ -+#define STAILQ_HEAD(name, type) \ -+struct name { \ -+ struct type *stqh_first; /* first element */ \ -+ struct type **stqh_last; /* addr of last next element */ \ -+} -+ -+#define STAILQ_HEAD_INITIALIZER(head) \ -+ { NULL, &(head).stqh_first } -+ -+#define STAILQ_ENTRY(type) \ -+struct { \ -+ struct type *stqe_next; /* next element */ \ -+} -+ -+/* -+ * Singly-linked Tail queue access methods. -+ */ -+#define STAILQ_FIRST(head) ((head)->stqh_first) -+#define STAILQ_END(head) NULL -+#define STAILQ_NEXT(elm, field) ((elm)->field.stqe_next) -+#define STAILQ_EMPTY(head) (STAILQ_FIRST(head) == STAILQ_END(head)) -+ -+/* -+ * Singly-linked Tail queue functions. -+ */ -+#define STAILQ_INIT(head) do { \ -+ (head)->stqh_first = NULL; \ -+ (head)->stqh_last = &(head)->stqh_first; \ -+} while (/*CONSTCOND*/0) -+ -+#define STAILQ_INSERT_HEAD(head, elm, field) do { \ -+ if (((elm)->field.stqe_next = (head)->stqh_first) == NULL) \ -+ (head)->stqh_last = &(elm)->field.stqe_next; \ -+ (head)->stqh_first = (elm); \ -+} while (/*CONSTCOND*/0) -+ -+#define STAILQ_INSERT_TAIL(head, elm, field) do { \ -+ (elm)->field.stqe_next = NULL; \ -+ *(head)->stqh_last = (elm); \ -+ (head)->stqh_last = &(elm)->field.stqe_next; \ -+} while (/*CONSTCOND*/0) -+ -+#define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ -+ if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\ -+ (head)->stqh_last = &(elm)->field.stqe_next; \ -+ (listelm)->field.stqe_next = (elm); \ -+} while (/*CONSTCOND*/0) -+ -+#define STAILQ_REMOVE_HEAD(head, field) do { \ -+ if (((head)->stqh_first = (head)->stqh_first->field.stqe_next) == NULL) \ -+ (head)->stqh_last = &(head)->stqh_first; \ -+} while (/*CONSTCOND*/0) -+ -+#define STAILQ_REMOVE(head, elm, type, field) do { \ -+ if ((head)->stqh_first == (elm)) { \ -+ STAILQ_REMOVE_HEAD((head), field); \ -+ } else { \ -+ struct type *curelm = (head)->stqh_first; \ -+ while (curelm->field.stqe_next != (elm)) \ -+ curelm = curelm->field.stqe_next; \ -+ if ((curelm->field.stqe_next = \ -+ curelm->field.stqe_next->field.stqe_next) == NULL) \ -+ (head)->stqh_last = &(curelm)->field.stqe_next; \ -+ } \ -+} while (/*CONSTCOND*/0) -+ -+#define STAILQ_FOREACH(var, head, field) \ -+ for ((var) = ((head)->stqh_first); \ -+ (var); \ -+ (var) = ((var)->field.stqe_next)) -+ -+#define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ -+ for ((var) = STAILQ_FIRST((head)); \ -+ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ -+ (var) = (tvar)) -+ -+#define STAILQ_CONCAT(head1, head2) do { \ -+ if (!STAILQ_EMPTY((head2))) { \ -+ *(head1)->stqh_last = (head2)->stqh_first; \ -+ (head1)->stqh_last = (head2)->stqh_last; \ -+ STAILQ_INIT((head2)); \ -+ } \ -+} while (/*CONSTCOND*/0) -+ -+#define STAILQ_LAST(head, type, field) \ -+ (STAILQ_EMPTY((head)) ? \ -+ NULL : \ -+ ((struct type *)(void *) \ -+ ((char *)((head)->stqh_last) - offsetof(struct type, field)))) -+ -+ -+#ifndef _KERNEL -+/* -+ * Circular queue definitions. Do not use. We still keep the macros -+ * for compatibility but because of pointer aliasing issues their use -+ * is discouraged! -+ */ -+ -+/* -+ * __launder_type(): We use this ugly hack to work around the the compiler -+ * noticing that two types may not alias each other and elide tests in code. -+ * We hit this in the CIRCLEQ macros when comparing 'struct name *' and -+ * 'struct type *' (see CIRCLEQ_HEAD()). Modern compilers (such as GCC -+ * 4.8) declare these comparisons as always false, causing the code to -+ * not run as designed. -+ * -+ * This hack is only to be used for comparisons and thus can be fully const. -+ * Do not use for assignment. -+ * -+ * If we ever choose to change the ABI of the CIRCLEQ macros, we could fix -+ * this by changing the head/tail sentinal values, but see the note above -+ * this one. -+ */ -+static __inline const void * __launder_type(const void *); -+static __inline const void * -+__launder_type(const void *__x) -+{ -+ __asm __volatile("" : "+r" (__x)); -+ return __x; -+} -+ -+#if defined(QUEUEDEBUG) -+#define QUEUEDEBUG_CIRCLEQ_HEAD(head, field) \ -+ if ((head)->cqh_first != CIRCLEQ_ENDC(head) && \ -+ (head)->cqh_first->field.cqe_prev != CIRCLEQ_ENDC(head)) \ -+ QUEUEDEBUG_ABORT("CIRCLEQ head forw %p %s:%d", (head), \ -+ __FILE__, __LINE__); \ -+ if ((head)->cqh_last != CIRCLEQ_ENDC(head) && \ -+ (head)->cqh_last->field.cqe_next != CIRCLEQ_ENDC(head)) \ -+ QUEUEDEBUG_ABORT("CIRCLEQ head back %p %s:%d", (head), \ -+ __FILE__, __LINE__); -+#define QUEUEDEBUG_CIRCLEQ_ELM(head, elm, field) \ -+ if ((elm)->field.cqe_next == CIRCLEQ_ENDC(head)) { \ -+ if ((head)->cqh_last != (elm)) \ -+ QUEUEDEBUG_ABORT("CIRCLEQ elm last %p %s:%d", \ -+ (elm), __FILE__, __LINE__); \ -+ } else { \ -+ if ((elm)->field.cqe_next->field.cqe_prev != (elm)) \ -+ QUEUEDEBUG_ABORT("CIRCLEQ elm forw %p %s:%d", \ -+ (elm), __FILE__, __LINE__); \ -+ } \ -+ if ((elm)->field.cqe_prev == CIRCLEQ_ENDC(head)) { \ -+ if ((head)->cqh_first != (elm)) \ -+ QUEUEDEBUG_ABORT("CIRCLEQ elm first %p %s:%d", \ -+ (elm), __FILE__, __LINE__); \ -+ } else { \ -+ if ((elm)->field.cqe_prev->field.cqe_next != (elm)) \ -+ QUEUEDEBUG_ABORT("CIRCLEQ elm prev %p %s:%d", \ -+ (elm), __FILE__, __LINE__); \ -+ } -+#define QUEUEDEBUG_CIRCLEQ_POSTREMOVE(elm, field) \ -+ (elm)->field.cqe_next = (void *)1L; \ -+ (elm)->field.cqe_prev = (void *)1L; -+#else -+#define QUEUEDEBUG_CIRCLEQ_HEAD(head, field) -+#define QUEUEDEBUG_CIRCLEQ_ELM(head, elm, field) -+#define QUEUEDEBUG_CIRCLEQ_POSTREMOVE(elm, field) -+#endif -+ -+#define CIRCLEQ_HEAD(name, type) \ -+struct name { \ -+ struct type *cqh_first; /* first element */ \ -+ struct type *cqh_last; /* last element */ \ -+} -+ -+#define CIRCLEQ_HEAD_INITIALIZER(head) \ -+ { CIRCLEQ_END(&head), CIRCLEQ_END(&head) } -+ -+#define CIRCLEQ_ENTRY(type) \ -+struct { \ -+ struct type *cqe_next; /* next element */ \ -+ struct type *cqe_prev; /* previous element */ \ -+} -+ -+/* -+ * Circular queue functions. -+ */ -+#define CIRCLEQ_INIT(head) do { \ -+ (head)->cqh_first = CIRCLEQ_END(head); \ -+ (head)->cqh_last = CIRCLEQ_END(head); \ -+} while (/*CONSTCOND*/0) -+ -+#define CIRCLEQ_INSERT_AFTER(head, listelm, elm, field) do { \ -+ QUEUEDEBUG_CIRCLEQ_HEAD((head), field) \ -+ QUEUEDEBUG_CIRCLEQ_ELM((head), (listelm), field) \ -+ (elm)->field.cqe_next = (listelm)->field.cqe_next; \ -+ (elm)->field.cqe_prev = (listelm); \ -+ if ((listelm)->field.cqe_next == CIRCLEQ_ENDC(head)) \ -+ (head)->cqh_last = (elm); \ -+ else \ -+ (listelm)->field.cqe_next->field.cqe_prev = (elm); \ -+ (listelm)->field.cqe_next = (elm); \ -+} while (/*CONSTCOND*/0) -+ -+#define CIRCLEQ_INSERT_BEFORE(head, listelm, elm, field) do { \ -+ QUEUEDEBUG_CIRCLEQ_HEAD((head), field) \ -+ QUEUEDEBUG_CIRCLEQ_ELM((head), (listelm), field) \ -+ (elm)->field.cqe_next = (listelm); \ -+ (elm)->field.cqe_prev = (listelm)->field.cqe_prev; \ -+ if ((listelm)->field.cqe_prev == CIRCLEQ_ENDC(head)) \ -+ (head)->cqh_first = (elm); \ -+ else \ -+ (listelm)->field.cqe_prev->field.cqe_next = (elm); \ -+ (listelm)->field.cqe_prev = (elm); \ -+} while (/*CONSTCOND*/0) -+ -+#define CIRCLEQ_INSERT_HEAD(head, elm, field) do { \ -+ QUEUEDEBUG_CIRCLEQ_HEAD((head), field) \ -+ (elm)->field.cqe_next = (head)->cqh_first; \ -+ (elm)->field.cqe_prev = CIRCLEQ_END(head); \ -+ if ((head)->cqh_last == CIRCLEQ_ENDC(head)) \ -+ (head)->cqh_last = (elm); \ -+ else \ -+ (head)->cqh_first->field.cqe_prev = (elm); \ -+ (head)->cqh_first = (elm); \ -+} while (/*CONSTCOND*/0) -+ -+#define CIRCLEQ_INSERT_TAIL(head, elm, field) do { \ -+ QUEUEDEBUG_CIRCLEQ_HEAD((head), field) \ -+ (elm)->field.cqe_next = CIRCLEQ_END(head); \ -+ (elm)->field.cqe_prev = (head)->cqh_last; \ -+ if ((head)->cqh_first == CIRCLEQ_ENDC(head)) \ -+ (head)->cqh_first = (elm); \ -+ else \ -+ (head)->cqh_last->field.cqe_next = (elm); \ -+ (head)->cqh_last = (elm); \ -+} while (/*CONSTCOND*/0) -+ -+#define CIRCLEQ_REMOVE(head, elm, field) do { \ -+ QUEUEDEBUG_CIRCLEQ_HEAD((head), field) \ -+ QUEUEDEBUG_CIRCLEQ_ELM((head), (elm), field) \ -+ if ((elm)->field.cqe_next == CIRCLEQ_ENDC(head)) \ -+ (head)->cqh_last = (elm)->field.cqe_prev; \ -+ else \ -+ (elm)->field.cqe_next->field.cqe_prev = \ -+ (elm)->field.cqe_prev; \ -+ if ((elm)->field.cqe_prev == CIRCLEQ_ENDC(head)) \ -+ (head)->cqh_first = (elm)->field.cqe_next; \ -+ else \ -+ (elm)->field.cqe_prev->field.cqe_next = \ -+ (elm)->field.cqe_next; \ -+ QUEUEDEBUG_CIRCLEQ_POSTREMOVE((elm), field) \ -+} while (/*CONSTCOND*/0) -+ -+#define CIRCLEQ_FOREACH(var, head, field) \ -+ for ((var) = ((head)->cqh_first); \ -+ (var) != CIRCLEQ_ENDC(head); \ -+ (var) = ((var)->field.cqe_next)) -+ -+#define CIRCLEQ_FOREACH_REVERSE(var, head, field) \ -+ for ((var) = ((head)->cqh_last); \ -+ (var) != CIRCLEQ_ENDC(head); \ -+ (var) = ((var)->field.cqe_prev)) -+ -+/* -+ * Circular queue access methods. -+ */ -+#define CIRCLEQ_FIRST(head) ((head)->cqh_first) -+#define CIRCLEQ_LAST(head) ((head)->cqh_last) -+/* For comparisons */ -+#define CIRCLEQ_ENDC(head) (__launder_type(head)) -+/* For assignments */ -+#define CIRCLEQ_END(head) ((void *)(head)) -+#define CIRCLEQ_NEXT(elm, field) ((elm)->field.cqe_next) -+#define CIRCLEQ_PREV(elm, field) ((elm)->field.cqe_prev) -+#define CIRCLEQ_EMPTY(head) \ -+ (CIRCLEQ_FIRST(head) == CIRCLEQ_ENDC(head)) -+ -+#define CIRCLEQ_LOOP_NEXT(head, elm, field) \ -+ (((elm)->field.cqe_next == CIRCLEQ_ENDC(head)) \ -+ ? ((head)->cqh_first) \ -+ : (elm->field.cqe_next)) -+#define CIRCLEQ_LOOP_PREV(head, elm, field) \ -+ (((elm)->field.cqe_prev == CIRCLEQ_ENDC(head)) \ -+ ? ((head)->cqh_last) \ -+ : (elm->field.cqe_prev)) -+#endif /* !_KERNEL */ -+ -+#endif /* !_SYS_QUEUE_H_ */ --- -2.3.7 - diff --git a/package/libtirpc/0007-Add-missing-rwlock_unlocks-in-xprt_register.patch b/package/libtirpc/0007-Add-missing-rwlock_unlocks-in-xprt_register.patch new file mode 100644 index 00000000000..56b5bf8392f --- /dev/null +++ b/package/libtirpc/0007-Add-missing-rwlock_unlocks-in-xprt_register.patch @@ -0,0 +1,63 @@ +From 4f1503e84b2f7bd229a097335e52fb8203f5bb0b Mon Sep 17 00:00:00 2001 +From: Michael Forney +Date: Wed, 4 Nov 2015 13:58:06 -0500 +Subject: [PATCH] Add missing rwlock_unlocks in xprt_register + +It looks like in b2c9430f46c4ac848957fb8adaac176a3f6ac03f when svc_run +switched to poll, an early return was added, but the rwlock was not +unlocked. + +I observed that rpcbind built against libtirpc-1.0.1 would handle only +one request before hanging, and tracked it down to a missing +rwlock_unlock here. + +Fixes: b2c9430f46c4 ('Use poll() instead of select() in svc_run()') +Signed-off-by: Michael Forney +Signed-off-by: Steve Dickson +[peda@axentia.se: backport from upstream] +Signed-off-by: Peter Rosin +--- + src/svc.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/src/svc.c b/src/svc.c +index 9c41445..b59467b 100644 +--- a/src/svc.c ++++ b/src/svc.c +@@ -99,7 +99,7 @@ xprt_register (xprt) + { + __svc_xports = (SVCXPRT **) calloc (_rpc_dtablesize(), sizeof (SVCXPRT *)); + if (__svc_xports == NULL) +- return; ++ goto unlock; + } + if (sock < _rpc_dtablesize()) + { +@@ -120,14 +120,14 @@ xprt_register (xprt) + svc_pollfd[i].fd = sock; + svc_pollfd[i].events = (POLLIN | POLLPRI | + POLLRDNORM | POLLRDBAND); +- return; ++ goto unlock; + } + + new_svc_pollfd = (struct pollfd *) realloc (svc_pollfd, + sizeof (struct pollfd) + * (svc_max_pollfd + 1)); + if (new_svc_pollfd == NULL) /* Out of memory */ +- return; ++ goto unlock; + svc_pollfd = new_svc_pollfd; + ++svc_max_pollfd; + +@@ -135,6 +135,7 @@ xprt_register (xprt) + svc_pollfd[svc_max_pollfd - 1].events = (POLLIN | POLLPRI | + POLLRDNORM | POLLRDBAND); + } ++unlock: + rwlock_unlock (&svc_fd_lock); + } + +-- +2.5.3 + diff --git a/package/libtirpc/0007-Disable-DES-authentification-support.patch b/package/libtirpc/0007-Disable-DES-authentification-support.patch deleted file mode 100644 index c25181158b1..00000000000 --- a/package/libtirpc/0007-Disable-DES-authentification-support.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 79975eb4104667be85abd06874c258438826b674 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Fri, 24 Jul 2015 14:45:52 +0200 -Subject: [PATCH] Disable DES authentification support -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -uClibc and musl does not provide DES authentication. - -Signed-off-by: Jörg Krause ---- - src/Makefile.am | 2 +- - src/rpc_soc.c | 32 -------------------------------- - 2 files changed, 1 insertion(+), 33 deletions(-) - -diff --git a/src/Makefile.am b/src/Makefile.am -index 960a522..3a88e31 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -51,7 +51,7 @@ libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c bindresvport.c cln - rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \ - rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_auth_none.c \ - svc_generic.c svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \ -- auth_des.c authdes_prot.c debug.c -+ debug.c - - ## XDR - libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c -diff --git a/src/rpc_soc.c b/src/rpc_soc.c -index e146ed4..161a1ec 100644 ---- a/src/rpc_soc.c -+++ b/src/rpc_soc.c -@@ -521,38 +521,6 @@ clnt_broadcast(prog, vers, proc, xargs, argsp, xresults, resultsp, eachresult) - } - - /* -- * Create the client des authentication object. Obsoleted by -- * authdes_seccreate(). -- */ --AUTH * --authdes_create(servername, window, syncaddr, ckey) -- char *servername; /* network name of server */ -- u_int window; /* time to live */ -- struct sockaddr *syncaddr; /* optional hostaddr to sync with */ -- des_block *ckey; /* optional conversation key to use */ --{ -- AUTH *dummy; -- AUTH *nauth; -- char hostname[NI_MAXHOST]; -- -- if (syncaddr) { -- /* -- * Change addr to hostname, because that is the way -- * new interface takes it. -- */ -- if (getnameinfo(syncaddr, sizeof(syncaddr), hostname, -- sizeof hostname, NULL, 0, 0) != 0) -- goto fallback; -- -- nauth = authdes_seccreate(servername, window, hostname, ckey); -- return (nauth); -- } --fallback: -- dummy = authdes_seccreate(servername, window, NULL, ckey); -- return (dummy); --} -- --/* - * Create a client handle for a unix connection. Obsoleted by clnt_vc_create() - */ - CLIENT * --- -2.4.6 - diff --git a/package/libtirpc/Config.in b/package/libtirpc/Config.in index a8e6dd386a0..2e9c939fa81 100644 --- a/package/libtirpc/Config.in +++ b/package/libtirpc/Config.in @@ -1,11 +1,5 @@ config BR2_PACKAGE_LIBTIRPC bool "libtirpc" - # uClibc toolchains provided by ADI don't have AI_ADDRCONFIG - # support. Note that since they provide native RPC support, we - # don't need to propagate this dependency to reverse - # dependencies of libtirpc for which native RPC support can be - # used instead of libtirpc. - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 depends on BR2_TOOLCHAIN_HAS_THREADS help Libtirpc is a port of Sun's Transport-Independent RPC @@ -14,5 +8,4 @@ config BR2_PACKAGE_LIBTIRPC http://sourceforge.net/projects/libtirpc/ comment "libtirpc needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libtirpc/libtirpc.hash b/package/libtirpc/libtirpc.hash index f171870eef2..cd65164cb27 100644 --- a/package/libtirpc/libtirpc.hash +++ b/package/libtirpc/libtirpc.hash @@ -1,4 +1,4 @@ # From sourceforge's info on download page: -sha1 af9b74d0c4d1499a7b1a43e396e5b7d62180ea65 libtirpc-0.3.2.tar.bz2 +sha1 8da1636f98b5909c0d587e7534bc1e91f5c1a970 libtirpc-1.0.1.tar.bz2 # Locally computed -sha256 2008a379f37f2c5d5a87a568b06707422cc3e4f5da305f7fb71f3f4c6d473ffc libtirpc-0.3.2.tar.bz2 +sha256 5156974f31be7ccbc8ab1de37c4739af6d9d42c87b1d5caf4835dda75fcbb89e libtirpc-1.0.1.tar.bz2 diff --git a/package/libtirpc/libtirpc.mk b/package/libtirpc/libtirpc.mk index 8f49356f950..70a31ac59ff 100644 --- a/package/libtirpc/libtirpc.mk +++ b/package/libtirpc/libtirpc.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBTIRPC_VERSION = 0.3.2 +LIBTIRPC_VERSION = 1.0.1 LIBTIRPC_SOURCE = libtirpc-$(LIBTIRPC_VERSION).tar.bz2 LIBTIRPC_SITE = http://downloads.sourceforge.net/project/libtirpc/libtirpc/$(LIBTIRPC_VERSION) LIBTIRPC_LICENSE = BSD-3c diff --git a/package/libtorrent/0001-cross_compile.patch b/package/libtorrent/0001-cross_compile.patch index f86f289351a..abb243820c3 100644 --- a/package/libtorrent/0001-cross_compile.patch +++ b/package/libtorrent/0001-cross_compile.patch @@ -1,22 +1,35 @@ -Fix cross compilation, based on OpenWRT patch. +From c4cc0ba76c81e1967c648be423f5f0312ac9d87f Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Mon, 5 Oct 2015 00:40:25 +0100 +Subject: [PATCH] Fix cross compilation, based on OpenWRT patch. + +[Vincent: tweak the patch for version 0.13.6] Signed-off-by: Gustavo Zacarias +Signed-off-by: Vicente Olivert Riera +--- + configure.ac | 1 - + scripts/checks.m4 | 2 +- + scripts/common.m4 | 4 ++-- + 3 files changed, 3 insertions(+), 4 deletions(-) -diff -Nura libtorrent-0.13.3.orig/configure.ac libtorrent-0.13.3/configure.ac ---- libtorrent-0.13.3.orig/configure.ac 2012-10-31 07:38:59.345752076 -0300 -+++ libtorrent-0.13.3/configure.ac 2012-10-31 07:39:06.454799361 -0300 -@@ -19,7 +19,6 @@ +diff --git a/configure.ac b/configure.ac +index ba994ee..7696466 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -19,7 +19,6 @@ AC_SUBST(LIBTORRENT_INTERFACE_VERSION_NO) AM_INIT_AUTOMAKE - AM_CONFIG_HEADER(config.h) + AC_CONFIG_HEADERS(config.h) -AM_PATH_CPPUNIT(1.9.6) AC_PROG_CXX -diff -Nura libtorrent-0.13.3.orig/scripts/checks.m4 libtorrent-0.13.3/scripts/checks.m4 ---- libtorrent-0.13.3.orig/scripts/checks.m4 2012-10-31 07:38:59.342752057 -0300 -+++ libtorrent-0.13.3/scripts/checks.m4 2012-10-31 07:39:06.454799361 -0300 -@@ -96,7 +96,7 @@ +diff --git a/scripts/checks.m4 b/scripts/checks.m4 +index 598f39b..0e5abe0 100644 +--- a/scripts/checks.m4 ++++ b/scripts/checks.m4 +@@ -96,7 +96,7 @@ AC_DEFUN([TORRENT_CHECK_KQUEUE], [ AC_DEFUN([TORRENT_CHECK_KQUEUE_SOCKET_ONLY], [ AC_MSG_CHECKING(whether kqueue supports pipes and ptys) @@ -25,10 +38,11 @@ diff -Nura libtorrent-0.13.3.orig/scripts/checks.m4 libtorrent-0.13.3/scripts/ch #include #include #include -diff -Nura libtorrent-0.13.3.orig/scripts/common.m4 libtorrent-0.13.3/scripts/common.m4 ---- libtorrent-0.13.3.orig/scripts/common.m4 2012-10-31 07:38:59.342752057 -0300 -+++ libtorrent-0.13.3/scripts/common.m4 2012-10-31 07:39:32.550972826 -0300 -@@ -223,7 +223,7 @@ +diff --git a/scripts/common.m4 b/scripts/common.m4 +index 5127624..cc68269 100644 +--- a/scripts/common.m4 ++++ b/scripts/common.m4 +@@ -223,7 +223,7 @@ dnl Need to fix this so that it uses the stuff defined by the system. AC_DEFUN([TORRENT_CHECK_EXECINFO], [ AC_MSG_CHECKING(for execinfo.h) @@ -37,3 +51,15 @@ diff -Nura libtorrent-0.13.3.orig/scripts/common.m4 libtorrent-0.13.3/scripts/co #include int main() { backtrace((void**)0, 0); backtrace_symbols((char**)0, 0); return 0;} ])], +@@ -238,7 +238,7 @@ AC_DEFUN([TORRENT_CHECK_EXECINFO], [ + AC_DEFUN([TORRENT_CHECK_ALIGNED], [ + AC_MSG_CHECKING(the byte alignment) + +- AC_RUN_IFELSE([AC_LANG_SOURCE([ ++ AC_LINK_IFELSE([AC_LANG_SOURCE([ + #include + int main() { + char buf@<:@8@:>@ = { 0, 0, 0, 0, 1, 0, 0, 0 }; +-- +1.7.1 + diff --git a/package/libtorrent/Config.in b/package/libtorrent/Config.in index aac71fa0088..4787f9c60d0 100644 --- a/package/libtorrent/Config.in +++ b/package/libtorrent/Config.in @@ -2,13 +2,13 @@ config BR2_PACKAGE_LIBTORRENT bool "libtorrent" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_ARCH_HAS_ATOMICS - select BR2_PACKAGE_LIBSIGC + depends on BR2_TOOLCHAIN_HAS_SYNC_1 && BR2_TOOLCHAIN_HAS_SYNC_4 + select BR2_PACKAGE_ZLIB help BitTorrent library written in C++ for *nix - http://libtorrent.rakshasa.no/ + https://github.com/rakshasa/libtorrent comment "libtorrent needs a toolchain w/ C++, threads" - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_1 && BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libtorrent/libtorrent.hash b/package/libtorrent/libtorrent.hash new file mode 100644 index 00000000000..73753e94cec --- /dev/null +++ b/package/libtorrent/libtorrent.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 2838a08c96edfd936aff8fbf99ecbb930c2bfca3337dd1482eb5fccdb80d5a04 libtorrent-0.13.6.tar.gz diff --git a/package/libtorrent/libtorrent.mk b/package/libtorrent/libtorrent.mk index 5f3920dd4c2..ef1c75f0393 100644 --- a/package/libtorrent/libtorrent.mk +++ b/package/libtorrent/libtorrent.mk @@ -4,11 +4,13 @@ # ################################################################################ -LIBTORRENT_VERSION = 0.13.3 -LIBTORRENT_SITE = http://libtorrent.rakshasa.no/downloads -LIBTORRENT_DEPENDENCIES = host-pkgconf libsigc \ +LIBTORRENT_VERSION = 0.13.6 +LIBTORRENT_SITE = http://rtorrent.net/downloads +LIBTORRENT_DEPENDENCIES = host-pkgconf zlib \ $(if $(BR2_PACKAGE_OPENSSL),openssl) LIBTORRENT_CONF_OPTS = --enable-aligned \ + --disable-instrumentation \ + --with-zlib=$(STAGING_DIR)/usr \ $(if $(BR2_PACKAGE_OPENSSL),--enable-openssl,--disable-openssl) LIBTORRENT_INSTALL_STAGING = YES LIBTORRENT_AUTORECONF = YES diff --git a/package/libuci/libuci.mk b/package/libuci/libuci.mk index a78048dc53c..8c060d59844 100644 --- a/package/libuci/libuci.mk +++ b/package/libuci/libuci.mk @@ -13,7 +13,7 @@ LIBUCI_DEPENDENCIES = libubox ifeq ($(BR2_PACKAGE_LUA_5_1),y) LIBUCI_DEPENDENCIES += lua LIBUCI_CONF_OPTS += -DBUILD_LUA=ON \ - -DLUAPATH=$(STAGING_DIR)/usr/lib/lua/5.1 \ + -DLUAPATH=/usr/lib/lua/5.1 \ -DLUA_CFLAGS=-I$(STAGING_DIR)/usr/include else LIBUCI_CONF_OPTS += -DBUILD_LUA=OFF diff --git a/package/libuecc/Config.in b/package/libuecc/Config.in new file mode 100644 index 00000000000..b7cd0450fec --- /dev/null +++ b/package/libuecc/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_LIBUECC + bool "libuecc" + depends on !BR2_STATIC_LIBS + help + Very small Elliptic Curve Cryptography library + + http://git.universe-factory.net/libuecc + +comment "libuecc needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/libuecc/libuecc.mk b/package/libuecc/libuecc.mk new file mode 100644 index 00000000000..bddb7d518b6 --- /dev/null +++ b/package/libuecc/libuecc.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# libuecc +# +################################################################################ + +LIBUECC_VERSION = v6 +LIBUECC_SITE = git://git.universe-factory.net/libuecc +LIBUECC_LICENSE = BSD-2c +LIBUECC_LICENSE_FILES = COPYRIGHT +LIBUECC_INSTALL_STAGING = YES + +$(eval $(cmake-package)) diff --git a/package/libungif/Config.in b/package/libungif/Config.in deleted file mode 100644 index 012ef76044b..00000000000 --- a/package/libungif/Config.in +++ /dev/null @@ -1,8 +0,0 @@ -config BR2_PACKAGE_LIBUNGIF - bool "libungif" - depends on !BR2_PACKAGE_GIFLIB - depends on BR2_DEPRECATED_SINCE_2015_02 # giflib - help - libungif is a library for handling the uncompressed GIF image format. - - http://sourceforge.net/projects/libungif diff --git a/package/libungif/libungif.hash b/package/libungif/libungif.hash deleted file mode 100644 index 979b04564a7..00000000000 --- a/package/libungif/libungif.hash +++ /dev/null @@ -1,2 +0,0 @@ -# Locally computed: -sha256 708a7eac218d3fd8e8dfb13f1089d4e1e98246985180a17d6ecfca5a6bd4d332 libungif-4.1.4.tar.bz2 diff --git a/package/libungif/libungif.mk b/package/libungif/libungif.mk deleted file mode 100644 index be9f6469e0c..00000000000 --- a/package/libungif/libungif.mk +++ /dev/null @@ -1,28 +0,0 @@ -################################################################################ -# -# libungif -# -################################################################################ - -LIBUNGIF_VERSION = 4.1.4 -LIBUNGIF_SOURCE = libungif-$(LIBUNGIF_VERSION).tar.bz2 -LIBUNGIF_SITE = http://downloads.sourceforge.net/project/giflib/libungif-4.x/libungif-$(LIBUNGIF_VERSION) -LIBUNGIF_INSTALL_STAGING = YES -LIBUNGIF_CONF_OPTS = --without-x -LIBUNGIF_LICENSE = MIT -LIBUNGIF_LICENSE_FILES = COPYING - -LIBUNGIF_BINS = \ - gif2epsn gif2ps gif2rgb gif2x11 gifasm gifbg gifburst gifclip \ - gifclrmp gifcolor gifcomb gifcompose giffiltr giffix gifflip \ - gifhisto gifinfo gifinter gifinto gifovly gifpos gifrotat \ - gifrsize gifspnge giftext gifwedge icon2gif raw2gif rgb2gif \ - text2gif - -define LIBUNGIF_BINS_CLEANUP - rm -f $(addprefix $(TARGET_DIR)/usr/bin/,$(LIBUNGIF_BINS)) -endef - -LIBUNGIF_POST_INSTALL_TARGET_HOOKS += LIBUNGIF_BINS_CLEANUP - -$(eval $(autotools-package)) diff --git a/package/libunwind/Config.in b/package/libunwind/Config.in index 85cb472ed3f..593172fc23a 100644 --- a/package/libunwind/Config.in +++ b/package/libunwind/Config.in @@ -1,15 +1,32 @@ +# libunwind is only available for a certain subset of the +# architectures (as visible in the list of architectures supported +# with the glibc C library below). +# +# In addition to this, on some architectures libunwind requires the +# *context() function from the C library, which are only available on +# certain architectures in uClibc, and not available at all on +# musl. But on some other architectures, libunwind works without using +# the *context() functions, which allows it to be built with musl. +config BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS + bool + default y if BR2_TOOLCHAIN_USES_GLIBC && \ + (BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ + BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64) + default y if BR2_TOOLCHAIN_USES_UCLIBC && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || \ + BR2_mips64 || BR2_mips64el || BR2_x86_64) + default y if BR2_TOOLCHAIN_USES_MUSL && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_x86_64) + config BR2_PACKAGE_LIBUNWIND bool "libunwind" depends on BR2_TOOLCHAIN_HAS_THREADS - depends on (BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) # {g,s}etcontext - depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64 + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS help C API to determine the call-chain of a program. http://www.nongnu.org/libunwind/index.html -comment "libunwind needs a uclibc snapshot or (e)glibc toolchain w/ threads" - depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_mips64 || \ - BR2_mips64el || BR2_powerpc || BR2_sh || BR2_sh64 || BR2_i386 || BR2_x86_64 - depends on !BR2_TOOLCHAIN_HAS_THREADS || !(BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) +comment "libunwind needs a toolchain w/ threads" + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/libupnpp/Config.in b/package/libupnpp/Config.in index 8af0cda698e..17a33918ab1 100644 --- a/package/libupnpp/Config.in +++ b/package/libupnpp/Config.in @@ -5,17 +5,15 @@ config BR2_PACKAGE_LIBUPNPP select BR2_PACKAGE_LIBUPNP depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS # libupnp - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 # Triggers the _gp link issue - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII help The libupnpp C++ library wraps libupnp for easier use by upmpdcli and upplay. http://www.lesbonscomptes.com/upmpdcli/ -comment "libupnpp needs a toolchain w/ C++, threads, gcc >= 4.5" - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 +comment "libupnpp needs a toolchain w/ C++, threads, gcc >= 4.6" + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 diff --git a/package/libupnpp/libupnpp.hash b/package/libupnpp/libupnpp.hash index ae935c17465..a301fb3c075 100644 --- a/package/libupnpp/libupnpp.hash +++ b/package/libupnpp/libupnpp.hash @@ -1,2 +1,2 @@ -# Hashes from: http://www.lesbonscomptes.com/upmpdcli/downloads/libupnpp-0.11.0.tar.gz.sha256 -sha256 e7ceab4313226010b6064f65aa156fa04c25af4d5ae4c23a18303e2034fbca05 libupnpp-0.11.0.tar.gz +# Hashes from: http://www.lesbonscomptes.com/upmpdcli/downloads/libupnpp-0.13.1.tar.gz.sha256 +sha256 d4604e3e4875e99d0446a436f857a849d1e3dda59096861dcd6a0e6c16474cb7 libupnpp-0.13.1.tar.gz diff --git a/package/libupnpp/libupnpp.mk b/package/libupnpp/libupnpp.mk index 1075ff90f4d..71ba311644f 100644 --- a/package/libupnpp/libupnpp.mk +++ b/package/libupnpp/libupnpp.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBUPNPP_VERSION = 0.11.0 +LIBUPNPP_VERSION = 0.13.1 LIBUPNPP_SITE = http://www.lesbonscomptes.com/upmpdcli/downloads LIBUPNPP_LICENSE = GPLv2+ LIBUPNPP_LICENSE_FILES = COPYING diff --git a/package/liburcu/0002-support-aarch64.patch b/package/liburcu/0002-support-aarch64.patch new file mode 100644 index 00000000000..6830e25ebe9 --- /dev/null +++ b/package/liburcu/0002-support-aarch64.patch @@ -0,0 +1,21 @@ +libucru: recognize aarch64 + +Make the same as "arm" internally. + +Upstream-Status: Pending + +Signed-off-by: joe.slater@windriver.com +[moved to buildroot from openembedded-core] +Signed-off-by: Ben Shelton + + +--- a/configure.ac ++++ b/configure.ac +@@ -77,6 +77,7 @@ AS_CASE([$host_cpu], + [alpha*], [ARCHTYPE="alpha"], + [ia64], [ARCHTYPE="gcc"], + [arm*], [ARCHTYPE="arm"], ++ [aarch64], [ARCHTYPE="arm"], + [mips*], [ARCHTYPE="mips"], + [tile*], [ARCHTYPE="gcc"], + [ARCHTYPE="unknown"] diff --git a/package/liburcu/Config.in b/package/liburcu/Config.in index e7cbe937425..49510da4956 100644 --- a/package/liburcu/Config.in +++ b/package/liburcu/Config.in @@ -1,7 +1,11 @@ +config BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS + bool + depends on BR2_arm || BR2_armeb || BR2_aarch64 || BR2_i386 || BR2_powerpc || BR2_x86_64 + default y + config BR2_PACKAGE_LIBURCU bool "liburcu" - depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_powerpc || BR2_x86_64 - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_58854 # liburcu/gcc-4.8.x bug + depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS help Userspace implementation of the Read-Copy-Update (RCU) @@ -18,9 +22,5 @@ config BR2_PACKAGE_LIBURCU http://lttng.org/urcu comment "liburcu needs a toolchain w/ threads" - depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_powerpc || BR2_x86_64 - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_58854 # liburcu/gcc-4.8.x bug + depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on !BR2_TOOLCHAIN_HAS_THREADS - -comment "liburcu needs a toolchain not affected by GCC bug 58854" - depends on BR2_TOOLCHAIN_HAS_GCC_BUG_58854 diff --git a/package/liburcu/liburcu.hash b/package/liburcu/liburcu.hash index 2b1693d8d23..64ba90195af 100644 --- a/package/liburcu/liburcu.hash +++ b/package/liburcu/liburcu.hash @@ -1,4 +1,4 @@ -# http://www.lttng.org/files/urcu/userspace-rcu-0.8.6.tar.bz2.sha1 -sha1 f10e9bf812557cd0c2a35a277e04010ec278d25d userspace-rcu-0.8.6.tar.bz2 +# http://www.lttng.org/files/urcu/userspace-rcu-0.8.7.tar.bz2.sha1 +sha1 5306999b8a3296f3dea91246d92e0a993d732898 userspace-rcu-0.8.7.tar.bz2 # Locally generated -sha256 b1a5d3bce014ba7a702759bc60b692c1cd46ff0e8a5b53f0d0a95e22db74ab21 userspace-rcu-0.8.6.tar.bz2 +sha256 b523f22c4726ca6bb77a77d258e76d8c33c89724433bd65313024b98e55c4295 userspace-rcu-0.8.7.tar.bz2 diff --git a/package/liburcu/liburcu.mk b/package/liburcu/liburcu.mk index 1582d07a1b7..c886a1cf0e4 100644 --- a/package/liburcu/liburcu.mk +++ b/package/liburcu/liburcu.mk @@ -4,12 +4,13 @@ # ################################################################################ -LIBURCU_VERSION = 0.8.6 +LIBURCU_VERSION = 0.8.7 LIBURCU_SITE = http://lttng.org/files/urcu LIBURCU_SOURCE = userspace-rcu-$(LIBURCU_VERSION).tar.bz2 LIBURCU_LICENSE = LGPLv2.1+ for the library; MIT-like license for few source files listed in LICENSE; GPLv2+ for test; GPLv3 for few *.m4 files LIBURCU_LICENSE_FILES = lgpl-2.1.txt lgpl-relicensing.txt gpl-2.0.txt LICENSE +LIBURCU_AUTORECONF = YES LIBURCU_INSTALL_STAGING = YES $(eval $(autotools-package)) diff --git a/package/libusb-compat/0001-Use-C99-standard-fixed-width-integer-types-in-usb.h.patch b/package/libusb-compat/0001-Use-C99-standard-fixed-width-integer-types-in-usb.h.patch new file mode 100644 index 00000000000..ad71199c4c9 --- /dev/null +++ b/package/libusb-compat/0001-Use-C99-standard-fixed-width-integer-types-in-usb.h.patch @@ -0,0 +1,236 @@ +From 2e9b6bbebb7cf1ef0095516ec6d5203deb3822e8 Mon Sep 17 00:00:00 2001 +From: Nathan Hjelm +Date: Fri, 9 Oct 2015 15:03:10 -0600 +Subject: [PATCH 1/1] Use C99 standard fixed width integer types in usb.h + +This patch modifies the integer types in usb.h of the form u_int* to the +C99 standard uint* types. + +Based on patch from Gwenhael Goavec-Merou. + +Backported from upstream commit +https://github.com/libusb/libusb-compat-0.1/commit/2e9b6bbebb7cf1ef0095516ec6d5203deb3822e8. + +Signed-off-by: Gwenhael Goavec-Merou +Signed-off-by: Nathan Hjelm +--- + libusb/usb.h | 130 ++++++++++++++++++++++++++++++++--------------------------- + 1 file changed, 70 insertions(+), 60 deletions(-) + +diff --git a/libusb/usb.h b/libusb/usb.h +index 84e730f..d2c30aa 100644 +--- a/libusb/usb.h ++++ b/libusb/usb.h +@@ -2,6 +2,7 @@ + * Prototypes, structure definitions and macros. + * + * Copyright (c) 2000-2003 Johannes Erdfelt ++ * Copyright (c) 2015 Nathan Hjelm + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public +@@ -22,8 +23,8 @@ + * distribution for details. + */ + +-#ifndef __USB_H__ +-#define __USB_H__ ++#ifndef USB_H ++#define USB_H + + #include + #include +@@ -31,6 +32,15 @@ + + #include + ++/* stdint.h is not available on older MSVC */ ++#if defined(_MSC_VER) && (_MSC_VER < 1600) && (!defined(_STDINT)) && (!defined(_STDINT_H)) ++typedef unsigned __int8 uint8_t; ++typedef unsigned __int16 uint16_t; ++typedef unsigned __int32 uint32_t; ++#else ++#include ++#endif ++ + /* + * USB spec information + * +@@ -78,40 +88,40 @@ + + /* All standard descriptors have these 2 fields in common */ + struct usb_descriptor_header { +- u_int8_t bLength; +- u_int8_t bDescriptorType; ++ uint8_t bLength; ++ uint8_t bDescriptorType; + }; + + /* String descriptor */ + struct usb_string_descriptor { +- u_int8_t bLength; +- u_int8_t bDescriptorType; +- u_int16_t wData[1]; ++ uint8_t bLength; ++ uint8_t bDescriptorType; ++ uint16_t wData[1]; + }; + + /* HID descriptor */ + struct usb_hid_descriptor { +- u_int8_t bLength; +- u_int8_t bDescriptorType; +- u_int16_t bcdHID; +- u_int8_t bCountryCode; +- u_int8_t bNumDescriptors; +- /* u_int8_t bReportDescriptorType; */ +- /* u_int16_t wDescriptorLength; */ ++ uint8_t bLength; ++ uint8_t bDescriptorType; ++ uint16_t bcdHID; ++ uint8_t bCountryCode; ++ uint8_t bNumDescriptors; ++ /* uint8_t bReportDescriptorType; */ ++ /* uint16_t wDescriptorLength; */ + /* ... */ + }; + + /* Endpoint descriptor */ + #define USB_MAXENDPOINTS 32 + struct usb_endpoint_descriptor { +- u_int8_t bLength; +- u_int8_t bDescriptorType; +- u_int8_t bEndpointAddress; +- u_int8_t bmAttributes; +- u_int16_t wMaxPacketSize; +- u_int8_t bInterval; +- u_int8_t bRefresh; +- u_int8_t bSynchAddress; ++ uint8_t bLength; ++ uint8_t bDescriptorType; ++ uint8_t bEndpointAddress; ++ uint8_t bmAttributes; ++ uint16_t wMaxPacketSize; ++ uint8_t bInterval; ++ uint8_t bRefresh; ++ uint8_t bSynchAddress; + + unsigned char *extra; /* Extra descriptors */ + int extralen; +@@ -129,15 +139,15 @@ struct usb_endpoint_descriptor { + /* Interface descriptor */ + #define USB_MAXINTERFACES 32 + struct usb_interface_descriptor { +- u_int8_t bLength; +- u_int8_t bDescriptorType; +- u_int8_t bInterfaceNumber; +- u_int8_t bAlternateSetting; +- u_int8_t bNumEndpoints; +- u_int8_t bInterfaceClass; +- u_int8_t bInterfaceSubClass; +- u_int8_t bInterfaceProtocol; +- u_int8_t iInterface; ++ uint8_t bLength; ++ uint8_t bDescriptorType; ++ uint8_t bInterfaceNumber; ++ uint8_t bAlternateSetting; ++ uint8_t bNumEndpoints; ++ uint8_t bInterfaceClass; ++ uint8_t bInterfaceSubClass; ++ uint8_t bInterfaceProtocol; ++ uint8_t iInterface; + + struct usb_endpoint_descriptor *endpoint; + +@@ -155,14 +165,14 @@ struct usb_interface { + /* Configuration descriptor information.. */ + #define USB_MAXCONFIG 8 + struct usb_config_descriptor { +- u_int8_t bLength; +- u_int8_t bDescriptorType; +- u_int16_t wTotalLength; +- u_int8_t bNumInterfaces; +- u_int8_t bConfigurationValue; +- u_int8_t iConfiguration; +- u_int8_t bmAttributes; +- u_int8_t MaxPower; ++ uint8_t bLength; ++ uint8_t bDescriptorType; ++ uint16_t wTotalLength; ++ uint8_t bNumInterfaces; ++ uint8_t bConfigurationValue; ++ uint8_t iConfiguration; ++ uint8_t bmAttributes; ++ uint8_t MaxPower; + + struct usb_interface *interface; + +@@ -172,28 +182,28 @@ struct usb_config_descriptor { + + /* Device descriptor */ + struct usb_device_descriptor { +- u_int8_t bLength; +- u_int8_t bDescriptorType; +- u_int16_t bcdUSB; +- u_int8_t bDeviceClass; +- u_int8_t bDeviceSubClass; +- u_int8_t bDeviceProtocol; +- u_int8_t bMaxPacketSize0; +- u_int16_t idVendor; +- u_int16_t idProduct; +- u_int16_t bcdDevice; +- u_int8_t iManufacturer; +- u_int8_t iProduct; +- u_int8_t iSerialNumber; +- u_int8_t bNumConfigurations; ++ uint8_t bLength; ++ uint8_t bDescriptorType; ++ uint16_t bcdUSB; ++ uint8_t bDeviceClass; ++ uint8_t bDeviceSubClass; ++ uint8_t bDeviceProtocol; ++ uint8_t bMaxPacketSize0; ++ uint16_t idVendor; ++ uint16_t idProduct; ++ uint16_t bcdDevice; ++ uint8_t iManufacturer; ++ uint8_t iProduct; ++ uint8_t iSerialNumber; ++ uint8_t bNumConfigurations; + }; + + struct usb_ctrl_setup { +- u_int8_t bRequestType; +- u_int8_t bRequest; +- u_int16_t wValue; +- u_int16_t wIndex; +- u_int16_t wLength; ++ uint8_t bRequestType; ++ uint8_t bRequest; ++ uint16_t wValue; ++ uint16_t wIndex; ++ uint16_t wLength; + }; + + /* +@@ -254,7 +264,7 @@ struct usb_device { + + void *dev; /* Darwin support */ + +- u_int8_t devnum; ++ uint8_t devnum; + + unsigned char num_children; + struct usb_device **children; +@@ -266,7 +276,7 @@ struct usb_bus { + char dirname[PATH_MAX + 1]; + + struct usb_device *devices; +- u_int32_t location; ++ uint32_t location; + + struct usb_device *root_dev; + }; +-- +2.4.9 + diff --git a/package/libuv/0001-unix-fix-support-for-uClibc-ng.patch b/package/libuv/0001-unix-fix-support-for-uClibc-ng.patch new file mode 100644 index 00000000000..6aec436d807 --- /dev/null +++ b/package/libuv/0001-unix-fix-support-for-uClibc-ng.patch @@ -0,0 +1,30 @@ +From 21dcb3a98feb3ae6ba862cfbf25fba3361bc8a9b Mon Sep 17 00:00:00 2001 +From: Martin Bark +Date: Mon, 14 Dec 2015 21:46:17 +0000 +Subject: [PATCH] unix: fix support for uClibc-ng + +uClibc-ng is currently at v1.0.9. The patch corrects the uClibc +version test so that HAVE_IFADDRS_H is defined for uClibc versions +after v0.9.32. + +Signed-off-by: Martin Bark +--- + src/unix/linux-core.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/unix/linux-core.c b/src/unix/linux-core.c +index 3ff6fb1..4735bc4 100644 +--- a/src/unix/linux-core.c ++++ b/src/unix/linux-core.c +@@ -39,7 +39,7 @@ + #define HAVE_IFADDRS_H 1 + + #ifdef __UCLIBC__ +-# if __UCLIBC_MAJOR__ < 0 || __UCLIBC_MINOR__ < 9 || __UCLIBC_SUBLEVEL__ < 32 ++# if __UCLIBC_MAJOR__ < 0 && __UCLIBC_MINOR__ < 9 && __UCLIBC_SUBLEVEL__ < 32 + # undef HAVE_IFADDRS_H + # endif + #endif +-- +2.5.0 + diff --git a/package/libuv/libuv.hash b/package/libuv/libuv.hash new file mode 100644 index 00000000000..abbbb0c6b59 --- /dev/null +++ b/package/libuv/libuv.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 906e1a5c673c95cb261adeacdb7308a65b4a8f7c9c50d85f3021364951fa9cde libuv-v1.8.0.tar.gz diff --git a/package/libuv/libuv.mk b/package/libuv/libuv.mk index 505c8d89c00..bf1deadd509 100644 --- a/package/libuv/libuv.mk +++ b/package/libuv/libuv.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBUV_VERSION = v1.6.1 +LIBUV_VERSION = v1.8.0 LIBUV_SITE = $(call github,libuv,libuv,$(LIBUV_VERSION)) LIBUV_DEPENDENCIES = host-pkgconf LIBUV_INSTALL_STAGING = YES diff --git a/package/libv4l/0002-dvb-keytable-fix-missing-libintl-linking.patch b/package/libv4l/0002-dvb-keytable-fix-missing-libintl-linking.patch new file mode 100644 index 00000000000..1b89961d76c --- /dev/null +++ b/package/libv4l/0002-dvb-keytable-fix-missing-libintl-linking.patch @@ -0,0 +1,57 @@ +From 9eec274c2a92beb2bb1a3a1eeffef1988c7dd016 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Fri, 16 Oct 2015 20:32:45 +0200 +Subject: [PATCH] dvb/keytable: fix missing libintl linking + +Patch upstream at +http://git.linuxtv.org/v4l-utils.git/commit/?id=ceaec539b62d83ffb5fdb5231e574a6adef0bf83. + +Signed-off-by: Peter Seiderer +--- + utils/dvb/Makefile.am | 8 ++++---- + utils/keytable/Makefile.am | 1 + + 2 files changed, 5 insertions(+), 4 deletions(-) + +diff --git a/utils/dvb/Makefile.am b/utils/dvb/Makefile.am +index 6aae408..a96a1a2 100644 +--- a/utils/dvb/Makefile.am ++++ b/utils/dvb/Makefile.am +@@ -2,19 +2,19 @@ bin_PROGRAMS = dvb-fe-tool dvbv5-zap dvbv5-scan dvb-format-convert + man_MANS = dvb-fe-tool.1 dvbv5-zap.1 dvbv5-scan.1 dvb-format-convert.1 + + dvb_fe_tool_SOURCES = dvb-fe-tool.c +-dvb_fe_tool_LDADD = ../../lib/libdvbv5/libdvbv5.la ++dvb_fe_tool_LDADD = ../../lib/libdvbv5/libdvbv5.la @LIBINTL@ + dvb_fe_tool_LDFLAGS = $(ARGP_LIBS) -lm + + dvbv5_zap_SOURCES = dvbv5-zap.c +-dvbv5_zap_LDADD = ../../lib/libdvbv5/libdvbv5.la ++dvbv5_zap_LDADD = ../../lib/libdvbv5/libdvbv5.la @LIBINTL@ + dvbv5_zap_LDFLAGS = $(ARGP_LIBS) -lm + + dvbv5_scan_SOURCES = dvbv5-scan.c +-dvbv5_scan_LDADD = ../../lib/libdvbv5/libdvbv5.la ++dvbv5_scan_LDADD = ../../lib/libdvbv5/libdvbv5.la @LIBINTL@ + dvbv5_scan_LDFLAGS = $(ARGP_LIBS) -lm + + dvb_format_convert_SOURCES = dvb-format-convert.c +-dvb_format_convert_LDADD = ../../lib/libdvbv5/libdvbv5.la ++dvb_format_convert_LDADD = ../../lib/libdvbv5/libdvbv5.la @LIBINTL@ + dvb_format_convert_LDFLAGS = $(ARGP_LIBS) -lm + + EXTRA_DIST = README +diff --git a/utils/keytable/Makefile.am b/utils/keytable/Makefile.am +index 925c8ea..8444ac2 100644 +--- a/utils/keytable/Makefile.am ++++ b/utils/keytable/Makefile.am +@@ -5,6 +5,7 @@ keytablesystem_DATA = $(srcdir)/rc_keymaps/* + udevrules_DATA = 70-infrared.rules + + ir_keytable_SOURCES = keytable.c parse.h ++ir_keytable_LDADD = @LIBINTL@ + ir_keytable_LDFLAGS = $(ARGP_LIBS) + + EXTRA_DIST = 70-infrared.rules rc_keymaps rc_keymaps_userspace gen_keytables.pl ir-keytable.1 rc_maps.cfg +-- +2.1.4 + diff --git a/package/libv4l/0003-libv4lsyscall-priv.h-Use-off_t-instead-of-__off_t.patch b/package/libv4l/0003-libv4lsyscall-priv.h-Use-off_t-instead-of-__off_t.patch new file mode 100644 index 00000000000..7868d71ea6d --- /dev/null +++ b/package/libv4l/0003-libv4lsyscall-priv.h-Use-off_t-instead-of-__off_t.patch @@ -0,0 +1,111 @@ +From 87369a8d190a182ee087cec5164e4c9586b0d80e Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 28 Oct 2015 09:27:47 +0100 +Subject: [PATCH] libv4lsyscall-priv.h: Use off_t instead of __off_t + +__off_t is a kernel internal symbol, which happens to be user-visible +with glibc, but not necessarily with other C libraries such as +musl. In v4l-utils code, it's mainly used for the mmap() prototype, +but the mmap() manpage really uses off_t, not __off_t. + +Switching from __off_t to off_t allows the code to build properly with +musl. + +Patch upstream at +http://git.linuxtv.org/v4l-utils.git/commit/?id=a6ff0635f7ed3400eec25039b96002b60a44209b. + +Signed-off-by: Thomas Petazzoni +--- + lib/libv4l1/v4l1compat.c | 3 +-- + lib/libv4l2/v4l2convert.c | 5 ++--- + lib/libv4lconvert/libv4lsyscall-priv.h | 11 +++-------- + 3 files changed, 6 insertions(+), 13 deletions(-) + +diff --git a/lib/libv4l1/v4l1compat.c b/lib/libv4l1/v4l1compat.c +index 97e8c4e..e5c9e56 100644 +--- a/lib/libv4l1/v4l1compat.c ++++ b/lib/libv4l1/v4l1compat.c +@@ -29,7 +29,6 @@ + #include + #include + #include +-#include "../libv4lconvert/libv4lsyscall-priv.h" /* for __off_t */ + + #include + #include +@@ -119,7 +118,7 @@ LIBV4L_PUBLIC ssize_t read(int fd, void *buffer, size_t n) + } + + LIBV4L_PUBLIC void *mmap(void *start, size_t length, int prot, int flags, int fd, +- __off_t offset) ++ off_t offset) + { + return v4l1_mmap(start, length, prot, flags, fd, offset); + } +diff --git a/lib/libv4l2/v4l2convert.c b/lib/libv4l2/v4l2convert.c +index a6dc30e..7b7e253 100644 +--- a/lib/libv4l2/v4l2convert.c ++++ b/lib/libv4l2/v4l2convert.c +@@ -39,7 +39,6 @@ + #include + #include + #include +-#include "../libv4lconvert/libv4lsyscall-priv.h" + #include + #include + +@@ -151,14 +150,14 @@ LIBV4L_PUBLIC ssize_t read(int fd, void *buffer, size_t n) + } + + LIBV4L_PUBLIC void *mmap(void *start, size_t length, int prot, int flags, int fd, +- __off_t offset) ++ off_t offset) + { + return v4l2_mmap(start, length, prot, flags, fd, offset); + } + + #if defined(linux) && defined(__GLIBC__) + LIBV4L_PUBLIC void *mmap64(void *start, size_t length, int prot, int flags, int fd, +- __off64_t offset) ++ off64_t offset) + { + return v4l2_mmap(start, length, prot, flags, fd, offset); + } +diff --git a/lib/libv4lconvert/libv4lsyscall-priv.h b/lib/libv4lconvert/libv4lsyscall-priv.h +index f548fb2..f87eff4 100644 +--- a/lib/libv4lconvert/libv4lsyscall-priv.h ++++ b/lib/libv4lconvert/libv4lsyscall-priv.h +@@ -59,11 +59,6 @@ + #define _IOC_SIZE(cmd) IOCPARM_LEN(cmd) + #define MAP_ANONYMOUS MAP_ANON + #define MMAP2_PAGE_SHIFT 0 +-typedef off_t __off_t; +-#endif +- +-#if defined(ANDROID) +-typedef off_t __off_t; + #endif + + #undef SYS_OPEN +@@ -95,15 +90,15 @@ typedef off_t __off_t; + #if defined(__FreeBSD__) + #define SYS_MMAP(addr, len, prot, flags, fd, off) \ + __syscall(SYS_mmap, (void *)(addr), (size_t)(len), \ +- (int)(prot), (int)(flags), (int)(fd), (__off_t)(off)) ++ (int)(prot), (int)(flags), (int)(fd), (off_t)(off)) + #elif defined(__FreeBSD_kernel__) + #define SYS_MMAP(addr, len, prot, flags, fd, off) \ + syscall(SYS_mmap, (void *)(addr), (size_t)(len), \ +- (int)(prot), (int)(flags), (int)(fd), (__off_t)(off)) ++ (int)(prot), (int)(flags), (int)(fd), (off_t)(off)) + #else + #define SYS_MMAP(addr, len, prot, flags, fd, off) \ + syscall(SYS_mmap2, (void *)(addr), (size_t)(len), \ +- (int)(prot), (int)(flags), (int)(fd), (__off_t)((off) >> MMAP2_PAGE_SHIFT)) ++ (int)(prot), (int)(flags), (int)(fd), (off_t)((off) >> MMAP2_PAGE_SHIFT)) + #endif + + #define SYS_MUNMAP(addr, len) \ +-- +2.6.2 + diff --git a/package/libv4l/0004-utils-Properly-use-ENABLE_NLS-for-locale-related-cod.patch b/package/libv4l/0004-utils-Properly-use-ENABLE_NLS-for-locale-related-cod.patch new file mode 100644 index 00000000000..2be74cc1271 --- /dev/null +++ b/package/libv4l/0004-utils-Properly-use-ENABLE_NLS-for-locale-related-cod.patch @@ -0,0 +1,110 @@ +From 12e5dded4747bf3a3f1eb392a17d10e46ecbc90b Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 28 Oct 2015 09:29:08 +0100 +Subject: [PATCH] utils: Properly use ENABLE_NLS for locale related code + +Various tools in utils/ use ENABLE_NLS to decide whether locale +support is available or not, and only include if ENABLE_NLS +is defined. However, they unconditionally use functions defined in + such as setlocale(), bindtextdomain() or textdomain(), +which causes build failures when the prototypes of such functions are +not available due to not being included. + +In order to fix this, we add ENABLE_NLS conditionals around the calls +to these functions. + +Patch upstream at: +http://git.linuxtv.org/v4l-utils.git/commit/?id=defad307a09c11ba989e6338bb0293c0e1acba87. + +Signed-off-by: Thomas Petazzoni +--- + utils/dvb/dvb-fe-tool.c | 2 ++ + utils/dvb/dvb-format-convert.c | 2 ++ + utils/dvb/dvbv5-scan.c | 2 ++ + utils/dvb/dvbv5-zap.c | 2 ++ + utils/keytable/keytable.c | 2 ++ + 5 files changed, 10 insertions(+) + +diff --git a/utils/dvb/dvb-fe-tool.c b/utils/dvb/dvb-fe-tool.c +index efc2ebf..ba01aa9 100644 +--- a/utils/dvb/dvb-fe-tool.c ++++ b/utils/dvb/dvb-fe-tool.c +@@ -276,9 +276,11 @@ int main(int argc, char *argv[]) + struct dvb_v5_fe_parms *parms; + int fe_flags = O_RDWR; + ++#ifdef ENABLE_NLS + setlocale (LC_ALL, ""); + bindtextdomain (PACKAGE, LOCALEDIR); + textdomain (PACKAGE); ++#endif + + argp_parse(&argp, argc, argv, ARGP_NO_HELP | ARGP_NO_EXIT, 0, 0); + +diff --git a/utils/dvb/dvb-format-convert.c b/utils/dvb/dvb-format-convert.c +index e39df03..09451d4 100644 +--- a/utils/dvb/dvb-format-convert.c ++++ b/utils/dvb/dvb-format-convert.c +@@ -132,9 +132,11 @@ int main(int argc, char **argv) + .args_doc = N_(" "), + }; + ++#ifdef ENABLE_NLS + setlocale (LC_ALL, ""); + bindtextdomain (PACKAGE, LOCALEDIR); + textdomain (PACKAGE); ++#endif + + memset(&args, 0, sizeof(args)); + argp_parse(&argp, argc, argv, ARGP_NO_HELP | ARGP_NO_EXIT, &idx, &args); +diff --git a/utils/dvb/dvbv5-scan.c b/utils/dvb/dvbv5-scan.c +index be1586d..1bb0ced 100644 +--- a/utils/dvb/dvbv5-scan.c ++++ b/utils/dvb/dvbv5-scan.c +@@ -461,9 +461,11 @@ int main(int argc, char **argv) + .args_doc = N_(""), + }; + ++#ifdef ENABLE_NLS + setlocale (LC_ALL, ""); + bindtextdomain (PACKAGE, LOCALEDIR); + textdomain (PACKAGE); ++#endif + + memset(&args, 0, sizeof(args)); + args.sat_number = -1; +diff --git a/utils/dvb/dvbv5-zap.c b/utils/dvb/dvbv5-zap.c +index 2812166..848259b 100644 +--- a/utils/dvb/dvbv5-zap.c ++++ b/utils/dvb/dvbv5-zap.c +@@ -758,9 +758,11 @@ int main(int argc, char **argv) + .args_doc = N_(" [or if in monitor mode]"), + }; + ++#ifdef ENABLE_NLS + setlocale (LC_ALL, ""); + bindtextdomain (PACKAGE, LOCALEDIR); + textdomain (PACKAGE); ++#endif + + memset(&args, 0, sizeof(args)); + args.sat_number = -1; +diff --git a/utils/keytable/keytable.c b/utils/keytable/keytable.c +index 3bf0618..d6d187f 100644 +--- a/utils/keytable/keytable.c ++++ b/utils/keytable/keytable.c +@@ -1467,9 +1467,11 @@ int main(int argc, char *argv[]) + static struct sysfs_names *names; + struct rc_device rc_dev; + ++#ifdef ENABLE_NLS + setlocale (LC_ALL, ""); + bindtextdomain (PACKAGE, LOCALEDIR); + textdomain (PACKAGE); ++#endif + + argp_parse(&argp, argc, argv, ARGP_NO_HELP | ARGP_NO_EXIT, 0, 0); + +-- +2.6.2 + diff --git a/package/libv4l/0005-libv4lconvert-only-expose-jpeg_mem_-protoypes-when-J.patch b/package/libv4l/0005-libv4lconvert-only-expose-jpeg_mem_-protoypes-when-J.patch new file mode 100644 index 00000000000..1868fd30453 --- /dev/null +++ b/package/libv4l/0005-libv4lconvert-only-expose-jpeg_mem_-protoypes-when-J.patch @@ -0,0 +1,56 @@ +From d468d1bba973999f2f1103ebaf7df5c8440a5499 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 21 Jan 2016 10:22:16 +0100 +Subject: [PATCH] libv4lconvert: only expose jpeg_mem_*() protoypes when + JPEG_LIB_VERSION < 80 + +The jpeg_memsrcdest.c file implements jpeg_mem_src() and +jpeg_mem_dest() when JPEG_LIB_VERSION < 80 in order to provide those +functions to libv4lconvert when the libjpeg library being used is too +old. + +However, the jpeg_memsrcdest.h file exposes the prototypes of those +functions unconditionally. Until now, the prototype was matching the +one of the functions exposed by libjpeg (when JPEG_LIB_VERSION >= 80), +so there was no problem. + +But since the release of libjpeg 9b (in January 2016), they changed +the second argument of jpeg_mem_src() from "unsigned char *" to "const +unsigned char*". Therefore, there are two prototypes for the +jpeg_mem_src() function: one from libjpeg, one from libv4l, and they +conflict with each other. + +To resolve this situation, this patch modifies jpeg_memsrcdest.h to +only expose the prototypes when libv4l is implementing the functions +(i.e when JPEG_LIB_VERSION < 80). When JPEG_LIB_VERSION >= 80, the +prototypes will come from . + +Patch upstream at: +http://git.linuxtv.org/v4l-utils.git/commit/?id=0b33f4c87cb26644ea662455acbc1649858b151f. + +Signed-off-by: Thomas Petazzoni +--- + lib/libv4lconvert/jpeg_memsrcdest.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/lib/libv4lconvert/jpeg_memsrcdest.h b/lib/libv4lconvert/jpeg_memsrcdest.h +index e971182..28a6477 100644 +--- a/lib/libv4lconvert/jpeg_memsrcdest.h ++++ b/lib/libv4lconvert/jpeg_memsrcdest.h +@@ -1,5 +1,7 @@ + #include + ++#if JPEG_LIB_VERSION < 80 ++ + void + jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer, + unsigned long bufsize); +@@ -7,3 +9,5 @@ jpeg_mem_src (j_decompress_ptr cinfo, unsigned char * buffer, + void + jpeg_mem_dest (j_compress_ptr cinfo, unsigned char ** outbuffer, + unsigned long * outsize); ++ ++#endif +-- +2.6.4 + diff --git a/package/libv4l/Config.in b/package/libv4l/Config.in index 0437ba1872b..4da00342a27 100644 --- a/package/libv4l/Config.in +++ b/package/libv4l/Config.in @@ -5,14 +5,14 @@ config BR2_PACKAGE_LIBV4L depends on !BR2_STATIC_LIBS # dlopen() depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # media headers - select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC + select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE help libv4l is a collection of libraries which adds a thin abstraction layer on top of video4linux2 devices. libv4l consists of 3 different libraries: libv4lconvert, libv4l1 and libv4l2. - http://freshmeat.net/projects/libv4l + http://linuxtv.org/wiki/index.php/V4l-utils if BR2_PACKAGE_LIBV4L @@ -21,11 +21,24 @@ comment "libv4l JPEG support not enabled" config BR2_PACKAGE_LIBV4L_UTILS bool "v4l-utils tools" + depends on BR2_ENABLE_LOCALE + select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE help v4l-utils is a collection of various video4linux and DVB utilities. Enable this if you want to build the following tools: - cx18-ctl, ir-keytable, ivtv-ctl, v4l2-ctl, v4l2-sysfs-path and - others. + - cx18-ctl + - dvb-fe-tool, dvbv5-zap, dvbv5-scan, dvb-format-convert + - decode_tm6000 + - ir-keytable + - media-ctl + - v4l2-compliance + - v4l2-ctl, cx18-ctl, ivtv-ctl + - v4l2-sysfs-path + - rds-ctl + - qv4l2 (if Qt is enabled) + +comment "libv4l-utils tools need a toolchain w/ locale" + depends on !BR2_ENABLE_LOCALE endif diff --git a/package/libv4l/libv4l.hash b/package/libv4l/libv4l.hash index 3371d3460dd..d79ccbc9ff3 100644 --- a/package/libv4l/libv4l.hash +++ b/package/libv4l/libv4l.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 164abf5c1befcd27e8e6ef824a82d4015bdfb5d99ae82daa00e77d895ff9864c v4l-utils-1.6.3.tar.bz2 +sha256 2f6219b03f19ea07c100e860238d5cdbfcbcfe440a14477e75137cc073431b33 v4l-utils-1.8.1.tar.bz2 diff --git a/package/libv4l/libv4l.mk b/package/libv4l/libv4l.mk index edb2a36d697..ceb1666773c 100644 --- a/package/libv4l/libv4l.mk +++ b/package/libv4l/libv4l.mk @@ -4,13 +4,17 @@ # ################################################################################ -LIBV4L_VERSION = 1.6.3 +LIBV4L_VERSION = 1.8.1 LIBV4L_SOURCE = v4l-utils-$(LIBV4L_VERSION).tar.bz2 LIBV4L_SITE = http://linuxtv.org/downloads/v4l-utils LIBV4L_INSTALL_STAGING = YES LIBV4L_DEPENDENCIES = host-pkgconf LIBV4L_CONF_OPTS = --disable-doxygen-doc +# patch touches Makefile.am (and needs host-gettext for autoreconf) +LIBV4L_AUTORECONF= YES +LIBV4L_DEPENDENCIES += host-gettext + # fix uclibc-ng configure/compile LIBV4L_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' @@ -43,6 +47,23 @@ ifeq ($(BR2_PACKAGE_LIBV4L_UTILS),y) LIBV4L_CONF_OPTS += --enable-v4l-utils # clock_gettime is used, which is provided by librt for glibc < 2.17 LIBV4L_LIBS += -lrt +ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) +LIBV4L_DEPENDENCIES += gettext +endif +ifeq ($(BR2_PACKAGE_QT5BASE)$(BR2_PACKAGE_QT5BASE_GUI)$(BR2_PACKAGE_QT5BASE_WIDGETS),yyy) +LIBV4L_CONF_OPTS += --enable-qv4l2 +LIBV4L_DEPENDENCIES += qt5base +# protect against host version detection of moc-qt5/rcc-qt5/uic-qt5 +LIBV4L_CONF_ENV += \ + ac_cv_prog_MOC=$(HOST_DIR)/usr/bin/moc \ + ac_cv_prog_RCC=$(HOST_DIR)/usr/bin/rcc \ + ac_cv_prog_UIC=$(HOST_DIR)/usr/bin/uic +else ifeq ($(BR2_PACKAGE_QT_GUI_MODULE),y) +LIBV4L_CONF_OPTS += --enable-qv4l2 +LIBV4L_DEPENDENCIES += qt +else +LIBV4L_CONF_OPTS += --disable-qv4l2 +endif else LIBV4L_CONF_OPTS += --disable-v4l-utils endif diff --git a/package/libva-intel-driver/libva-intel-driver.hash b/package/libva-intel-driver/libva-intel-driver.hash index 57010bcda28..1b2d75463a1 100644 --- a/package/libva-intel-driver/libva-intel-driver.hash +++ b/package/libva-intel-driver/libva-intel-driver.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/libva/2015-July/003405.html, checked locally -sha1 8d9da76883429a155511ee0e71a737aea07ad217 libva-intel-driver-1.6.0.tar.bz2 +# From http://lists.freedesktop.org/archives/libva/2015-December/003820.html +sha1 7ecc2a10d22129407fa5ce011da7066037e13255 libva-intel-driver-1.6.2.tar.bz2 diff --git a/package/libva-intel-driver/libva-intel-driver.mk b/package/libva-intel-driver/libva-intel-driver.mk index a61f55e077a..909d73bcb36 100644 --- a/package/libva-intel-driver/libva-intel-driver.mk +++ b/package/libva-intel-driver/libva-intel-driver.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBVA_INTEL_DRIVER_VERSION = 1.6.0 +LIBVA_INTEL_DRIVER_VERSION = 1.6.2 LIBVA_INTEL_DRIVER_SOURCE = libva-intel-driver-$(LIBVA_INTEL_DRIVER_VERSION).tar.bz2 LIBVA_INTEL_DRIVER_SITE = http://www.freedesktop.org/software/vaapi/releases/libva-intel-driver LIBVA_INTEL_DRIVER_LICENSE = MIT diff --git a/package/libva/libva.hash b/package/libva/libva.hash index 82802ceb0af..4d7cdaae6e0 100644 --- a/package/libva/libva.hash +++ b/package/libva/libva.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/libva/2015-July/003404.html -sha1 f9d0cc8edb90a73146cc755f9e4ab94ddcdf8cd6 libva-1.6.0.tar.bz2 +# From http://lists.freedesktop.org/archives/libva/2015-December/003819.html +sha1 8a857db50305e9e3ddb8fe4e342ddd2924ae16f6 libva-1.6.2.tar.bz2 diff --git a/package/libva/libva.mk b/package/libva/libva.mk index 18a322ce270..4adfd52703b 100644 --- a/package/libva/libva.mk +++ b/package/libva/libva.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBVA_VERSION = 1.6.0 +LIBVA_VERSION = 1.6.2 LIBVA_SOURCE = libva-$(LIBVA_VERSION).tar.bz2 LIBVA_SITE = http://www.freedesktop.org/software/vaapi/releases/libva LIBVA_LICENSE = MIT diff --git a/package/libvips/libvips.mk b/package/libvips/libvips.mk index d6dddc8bc33..5f80b2d64cc 100644 --- a/package/libvips/libvips.mk +++ b/package/libvips/libvips.mk @@ -12,6 +12,16 @@ LIBVIPS_LICENSE = LGPLv2.1+ LIBVIPS_LICENSE_FILES = COPYING # We're patching gtk-doc.make, so need to autoreconf LIBVIPS_AUTORECONF = YES + +# Sparc64 compile fails, for all optimization levels except -O0. To +# fix the problem, use -O0 with no optimization instead. Bug reported +# upstream at https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69038. +ifeq ($(BR2_sparc64),y) +LIBVIPS_CXXFLAGS += -O0 +endif + +LIBVIPS_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) $(LIBVIPS_CXXFLAGS)" + LIBVIPS_CONF_OPTS = \ --disable-introspection \ --without-dmalloc \ diff --git a/package/libvncserver/Config.in b/package/libvncserver/Config.in index 28fbaa58336..460aa784e9b 100644 --- a/package/libvncserver/Config.in +++ b/package/libvncserver/Config.in @@ -1,6 +1,8 @@ config BR2_PACKAGE_LIBVNCSERVER bool "libvncserver" depends on BR2_USE_MMU # VNCommand.c uses fork() + # binutils issue (bad expression) + depends on !BR2_nios2 help libvncserver is a VNC server/client library. diff --git a/package/libwebcam/libwebcam.mk b/package/libwebcam/libwebcam.mk index 44129825666..defdc8638c5 100644 --- a/package/libwebcam/libwebcam.mk +++ b/package/libwebcam/libwebcam.mk @@ -6,7 +6,7 @@ LIBWEBCAM_VERSION = 0.2.5 LIBWEBCAM_SOURCE = libwebcam-src-$(LIBWEBCAM_VERSION).tar.gz -LIBWEBCAM_SITE = http://freefr.dl.sourceforge.net/project/libwebcam/source/ +LIBWEBCAM_SITE = http://freefr.dl.sourceforge.net/project/libwebcam/source LIBWEBCAM_DEPENDENCIES = libxml2 define LIBWEBCAM_INSTALL_TARGET_CMDS @@ -16,4 +16,3 @@ define LIBWEBCAM_INSTALL_TARGET_CMDS endef $(eval $(cmake-package)) - diff --git a/package/libwebsock/0003-fix-incorrect-inline.patch b/package/libwebsock/0003-fix-incorrect-inline.patch new file mode 100644 index 00000000000..043df45bd3c --- /dev/null +++ b/package/libwebsock/0003-fix-incorrect-inline.patch @@ -0,0 +1,66 @@ +utf: do not define decode() to be inline + +Currently, decode() is prototyped in utf.h, its body is in utf.c and it +is called from util.c. + +However, decode() is defined to be inline, which can not work since, +when compiling util.c, the body of decode() is out-of-scope for that +compilation unit. + +Furthermore, decode() uses a utf8d, which is a static defined in utf.c . +So utf8d is not visible when compiling util.c either. + +This means that the definition of decode() along with utf8d is basically +wrong, and is now failing with gcc-5.x, with warnings like so: + + libtool: compile: /home/ymorin/dev/buildroot/O/host/usr/bin/arm-linux-gcc -DHAVE_CONFIG_H -I. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wall -Wmissing-prototypes -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -c utf.c -fPIC -DPIC -o .libs/libwebsock_la-utf.o + utf.c:36:12: warning: ‘utf8d’ is static but used in inline function ‘decode’ which is not static + *state = utf8d[256 + *state*16 + type]; + ^ + utf.c:30:19: warning: ‘utf8d’ is static but used in inline function ‘decode’ which is not static + uint32_t type = utf8d[byte]; + ^ + libtool: compile: /home/ymorin/dev/buildroot/O/host/usr/bin/arm-linux-gcc -DHAVE_CONFIG_H -I. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wall -Wmissing-prototypes -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -c util.c -fPIC -DPIC -o .libs/libwebsock_la-util.o + In file included from websock.h:73:0, + from util.c:20: + utf.h:25:17: warning: inline function ‘decode’ declared but never defined + uint32_t inline decode(uint32_t *state, uint32_t *codep, uint32_t byte); + ^ + +This results in decode() to be omitted from libwebsock.so, and thus link +failures when another program wants to link with -lwebsock. + +The simplest solution is to not inline decode() at all. + +Signed-off-by: "Yann E. MORIN" + +--- +Note: an alternative would be to move both decode() and utf8d into +decode.h nad ditch decode.c if decode really must be inline. This is +left as an execise for an interested party. But since upstream hasn't +seen a single commit in more than a year now... :-( + +diff -durN a/src/utf.c b/src/utf.c +--- a/src/utf.c 2014-07-15 01:43:20.000000000 +0200 ++++ b/src/utf.c 2015-08-22 22:29:38.667393786 +0200 +@@ -24,7 +24,7 @@ + 1,3,1,1,1,1,1,3,1,3,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1, // s7..s8 + }; + +-uint32_t inline ++uint32_t + decode(uint32_t* state, uint32_t* codep, uint32_t byte) + { + uint32_t type = utf8d[byte]; +diff -durN a/src/utf.h b/src/utf.h +--- a/src/utf.h 2014-07-15 01:43:20.000000000 +0200 ++++ b/src/utf.h 2015-08-22 22:29:10.439227396 +0200 +@@ -22,7 +22,7 @@ + + #include + +-uint32_t inline decode(uint32_t *state, uint32_t *codep, uint32_t byte); ++uint32_t decode(uint32_t *state, uint32_t *codep, uint32_t byte); + + + #endif /* UTF_H_ */ diff --git a/package/libxml2/0001-libxml2-config.cmake.in-update-include-directories.patch b/package/libxml2/0001-libxml2-config.cmake.in-update-include-directories.patch deleted file mode 100644 index 589c8d601e6..00000000000 --- a/package/libxml2/0001-libxml2-config.cmake.in-update-include-directories.patch +++ /dev/null @@ -1,28 +0,0 @@ -From dd6125f4b58fe7bc270e51bc3fcf41cd228d22fc Mon Sep 17 00:00:00 2001 -From: Samuel Martin -Date: Mon, 29 Dec 2014 20:40:18 +0100 -Subject: [PATCH] libxml2-config.cmake.in: update include directories - -Align the include directories on those from the pkg-config module. - -Signed-off-by: Samuel Martin ---- - libxml2-config.cmake.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libxml2-config.cmake.in b/libxml2-config.cmake.in -index ac29329..6b16fc2 100644 ---- a/libxml2-config.cmake.in -+++ b/libxml2-config.cmake.in -@@ -21,7 +21,7 @@ set(LIBXML2_VERSION_MINOR @LIBXML_MINOR_VERSION@) - set(LIBXML2_VERSION_MICRO @LIBXML_MICRO_VERSION@) - set(LIBXML2_VERSION_STRING "@VERSION@") - set(LIBXML2_INSTALL_PREFIX ${_libxml2_rootdir}) --set(LIBXML2_INCLUDE_DIRS ${_libxml2_rootdir}/include) -+set(LIBXML2_INCLUDE_DIRS ${_libxml2_rootdir}/include ${_libxml2_rootdir}/include/libxml2) - set(LIBXML2_LIBRARY_DIR ${_libxml2_rootdir}/lib) - set(LIBXML2_LIBRARIES -L${LIBXML2_LIBRARY_DIR} -lxml2) - --- -2.2.1 - diff --git a/package/libxml2/0002-threads-use-forward-declarations-only-for-glibc.patch b/package/libxml2/0002-threads-use-forward-declarations-only-for-glibc.patch deleted file mode 100644 index 4123306fb89..00000000000 --- a/package/libxml2/0002-threads-use-forward-declarations-only-for-glibc.patch +++ /dev/null @@ -1,52 +0,0 @@ -Fix musl compile - -Downloaded from upstream commit -https://git.gnome.org/browse/libxml2/commit/?id=fff8a6b87e05200a0ad0af6f86c2e859c7de9172 - -Signed-off-by: Bernd Kuhls ---- -From fff8a6b87e05200a0ad0af6f86c2e859c7de9172 Mon Sep 17 00:00:00 2001 -From: Michael Heimpold -Date: Mon, 22 Dec 2014 11:12:12 +0800 -Subject: threads: use forward declarations only for glibc - -Fixes bug #704908 - -The declarations of pthread functions, used to generate weak references -to them, fail to suppress macros. Thus, if any pthread function has -been provided as a macro, compiling threads.c will fail. -This breaks on musl libc, which defines pthread_equal as a macro (in -addition to providing the function, as required). - -Prevent the declarations for e.g. musl libc by refining the condition. - -The idea for this solution was borrowed from the alpine linux guys, see -http://git.alpinelinux.org/cgit/aports/tree/main/libxml2/libxml2-pthread.patch - -Signed-off-by: Michael Heimpold - -diff --git a/threads.c b/threads.c -index 8921204..78006a2 100644 ---- a/threads.c -+++ b/threads.c -@@ -47,7 +47,7 @@ - #ifdef HAVE_PTHREAD_H - - static int libxml_is_threaded = -1; --#ifdef __GNUC__ -+#if defined(__GNUC__) && defined(__GLIBC__) - #ifdef linux - #if (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || (__GNUC__ > 3) - extern int pthread_once (pthread_once_t *__once_control, -@@ -89,7 +89,7 @@ extern int pthread_cond_signal () - __attribute((weak)); - #endif - #endif /* linux */ --#endif /* __GNUC__ */ -+#endif /* defined(__GNUC__) && defined(__GLIBC__) */ - #endif /* HAVE_PTHREAD_H */ - - /* --- -cgit v0.10.2 - diff --git a/package/libxml2/libxml2.hash b/package/libxml2/libxml2.hash index 69f4fdc5096..00fbf4372bd 100644 --- a/package/libxml2/libxml2.hash +++ b/package/libxml2/libxml2.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 5178c30b151d044aefb1b08bf54c3003a0ac55c59c866763997529d60770d5bc libxml2-2.9.2.tar.gz +sha256 4de9e31f46b44d34871c22f54bfc54398ef124d6f7cafb1f4a5958fbcd3ba12d libxml2-2.9.3.tar.gz diff --git a/package/libxml2/libxml2.mk b/package/libxml2/libxml2.mk index e5832b2fc77..ee9b2ca44e3 100644 --- a/package/libxml2/libxml2.mk +++ b/package/libxml2/libxml2.mk @@ -4,10 +4,9 @@ # ################################################################################ -LIBXML2_VERSION = 2.9.2 +LIBXML2_VERSION = 2.9.3 LIBXML2_SITE = ftp://xmlsoft.org/libxml2 LIBXML2_INSTALL_STAGING = YES -LIBXML2_AUTORECONF = YES LIBXML2_LICENSE = MIT LIBXML2_LICENSE_FILES = COPYING LIBXML2_CONFIG_SCRIPTS = xml2-config diff --git a/package/libxmlpp/Config.in b/package/libxmlpp/Config.in index cb5f3c0ffbd..0f2da98f243 100644 --- a/package/libxmlpp/Config.in +++ b/package/libxmlpp/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_LIBXMLPP bool "libxml++" select BR2_PACKAGE_LIBXML2 select BR2_PACKAGE_GLIBMM + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR # glibmm -> libglib2 depends on BR2_TOOLCHAIN_HAS_THREADS # glibmm -> libglib2 @@ -11,7 +12,7 @@ config BR2_PACKAGE_LIBXMLPP http://libxmlplusplus.sourceforge.net/ -comment "libxml++ needs a toolchain w/ C++, wchar, threads" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - !BR2_TOOLCHAIN_HAS_THREADS +comment "libxml++ needs a toolchain w/ C++, wchar, threads, gcc >= 4.8" + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR \ + ||!BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP depends on BR2_USE_MMU diff --git a/package/libxmlpp/libxmlpp.hash b/package/libxmlpp/libxmlpp.hash index 9e1ae181ae6..5fc7f5beb46 100644 --- a/package/libxmlpp/libxmlpp.hash +++ b/package/libxmlpp/libxmlpp.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/GNOME/sources/libxml++/2.34/libxml++-2.34.2.sha256sum -sha256 77daba20ab76631071d4ed4cc18fa2e981160ca05ae661e8d146f2b0728f9baa libxml++-2.34.2.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/libxml++/2.40/libxml++-2.40.1.sha256sum +sha256 4ad4abdd3258874f61c2e2a41d08e9930677976d303653cd1670d3e9f35463e9 libxml++-2.40.1.tar.xz diff --git a/package/libxmlpp/libxmlpp.mk b/package/libxmlpp/libxmlpp.mk index d9dd8624201..d42819928ad 100644 --- a/package/libxmlpp/libxmlpp.mk +++ b/package/libxmlpp/libxmlpp.mk @@ -4,8 +4,8 @@ # ################################################################################ -LIBXMLPP_VERSION_MAJOR = 2.34 -LIBXMLPP_VERSION = $(LIBXMLPP_VERSION_MAJOR).2 +LIBXMLPP_VERSION_MAJOR = 2.40 +LIBXMLPP_VERSION = $(LIBXMLPP_VERSION_MAJOR).1 LIBXMLPP_LICENSE = LGPLv2.1 (library), LGPLv2+ (examples) LIBXMLPP_LICENSE_FILES = COPYING LIBXMLPP_SOURCE = libxml++-$(LIBXMLPP_VERSION).tar.xz diff --git a/package/libyuv/0001-i386-sse2.patch b/package/libyuv/0001-i386-sse2.patch new file mode 100644 index 00000000000..b8ecb34d0f4 --- /dev/null +++ b/package/libyuv/0001-i386-sse2.patch @@ -0,0 +1,16 @@ +Fix compilation on non-sse2 platforms + +Signed-off-by: Bernd Kuhls + +diff -uNr libyuv-1411.org/include/libyuv/scale_row.h libyuv-1411/include/libyuv/scale_row.h +--- libyuv-1411.org/include/libyuv/scale_row.h 2015-05-22 23:39:21.000000000 +0200 ++++ libyuv-1411/include/libyuv/scale_row.h 2015-05-25 12:35:17.000000000 +0200 +@@ -33,7 +33,7 @@ + + // The following are available on all x86 platforms: + #if !defined(LIBYUV_DISABLE_X86) && \ +- (defined(_M_IX86) || defined(__x86_64__) || defined(__i386__)) ++ (defined(_M_IX86) || defined(__x86_64__) || (defined(__i386__) && defined(__SSE2__))) + #define HAS_FIXEDDIV1_X86 + #define HAS_FIXEDDIV_X86 + #define HAS_SCALEADDROWS_SSE2 diff --git a/package/libyuv/0002-aarch64.patch b/package/libyuv/0002-aarch64.patch new file mode 100644 index 00000000000..c783cffe884 --- /dev/null +++ b/package/libyuv/0002-aarch64.patch @@ -0,0 +1,36 @@ +Add missing source files for aarch64. + +Signed-off-by: Bernd Kuhls + +diff -uNr libyuv-1ebf86795cb213a37f06eb1ef3713cff080568ea.org/CMakeLists.txt libyuv-1ebf86795cb213a37f06eb1ef3713cff080568ea/CMakeLists.txt +--- libyuv-1ebf86795cb213a37f06eb1ef3713cff080568ea.org/CMakeLists.txt 2015-06-20 00:04:06.000000000 +0200 ++++ libyuv-1ebf86795cb213a37f06eb1ef3713cff080568ea/CMakeLists.txt 2015-09-07 19:29:42.898034988 +0200 +@@ -14,6 +14,7 @@ + ${ly_src_dir}/compare.cc + ${ly_src_dir}/compare_common.cc + ${ly_src_dir}/compare_neon.cc ++ ${ly_src_dir}/compare_neon64.cc + ${ly_src_dir}/compare_gcc.cc + ${ly_src_dir}/compare_win.cc + ${ly_src_dir}/convert.cc +@@ -31,10 +32,12 @@ + ${ly_src_dir}/rotate_argb.cc + ${ly_src_dir}/rotate_mips.cc + ${ly_src_dir}/rotate_neon.cc ++ ${ly_src_dir}/rotate_neon64.cc + ${ly_src_dir}/row_any.cc + ${ly_src_dir}/row_common.cc + ${ly_src_dir}/row_mips.cc + ${ly_src_dir}/row_neon.cc ++ ${ly_src_dir}/row_neon64.cc + ${ly_src_dir}/row_gcc.cc + ${ly_src_dir}/row_win.cc + ${ly_src_dir}/scale.cc +@@ -43,6 +46,7 @@ + ${ly_src_dir}/scale_common.cc + ${ly_src_dir}/scale_mips.cc + ${ly_src_dir}/scale_neon.cc ++ ${ly_src_dir}/scale_neon64.cc + ${ly_src_dir}/scale_gcc.cc + ${ly_src_dir}/scale_win.cc + ${ly_src_dir}/video_common.cc diff --git a/package/libyuv/Config.in b/package/libyuv/Config.in new file mode 100644 index 00000000000..29dcaa44edb --- /dev/null +++ b/package/libyuv/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_LIBYUV + bool "libyuv" + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS + help + libyuv is an open source project that includes YUV scaling + and conversion functionality. + + https://code.google.com/p/libyuv + +comment "libyuv needs a toolchain w/ C++, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS diff --git a/package/libyuv/libyuv.mk b/package/libyuv/libyuv.mk new file mode 100644 index 00000000000..c00bc05c0a7 --- /dev/null +++ b/package/libyuv/libyuv.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# libyuv +# +################################################################################ + +LIBYUV_VERSION = 1ebf86795cb213a37f06eb1ef3713cff080568ea +# we use the FreeSwitch fork because there is currently no alternative +# for https://chromium.googlesource.com/libyuv/libyuv which will be +# deactivated in 2015. +LIBYUV_SITE = https://freeswitch.org/stash/scm/sd/libyuv.git +LIBYUV_SITE_METHOD = git +LIBYUV_LICENSE = BSD-3c +LIBYUV_LICENSE_FILES = LICENSE +LIBYUV_INSTALL_STAGING = YES +LIBYUV_DEPENDENCIES = $(if $(BR2_PACKAGE_JPEG),jpeg) + +$(eval $(cmake-package)) diff --git a/package/lightning/0001-cross-compilation-configure-fixes.patch b/package/lightning/0001-cross-compilation-configure-fixes.patch deleted file mode 100644 index 6ced2029100..00000000000 --- a/package/lightning/0001-cross-compilation-configure-fixes.patch +++ /dev/null @@ -1,40 +0,0 @@ -Assume that the functionality is not present - -Patch written by Holger Hans Peter Freyther, and fetched from -http://lists.gnu.org/archive/html/lightning/2014-11/msg00002.html. - -Signed-off-by: Thomas Petazzoni ---- - configure.ac | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 031279d..a36bed6 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -184,7 +184,7 @@ elif test $cpu = x86; then - : "0" (1)); - return (edx & 1 << 26) ? 0 : 1; - } -- ]])],[ac_cv_test_x86_x87=yes],[][]) -+ ]])],[ac_cv_test_x86_x87=yes],[],[ac_cv_test_x86_x87=no]) - elif test $cpu = arm; then - AC_RUN_IFELSE([AC_LANG_SOURCE([[ - #include -@@ -207,7 +207,7 @@ elif test $cpu = arm; then - #endif - return 1; - } -- ]])],[ac_cv_test_arm_arm=yes],[][]) -+ ]])],[ac_cv_test_arm_arm=yes],[],[ac_cv_test_arm_arm=no]) - AC_RUN_IFELSE([AC_LANG_SOURCE([[ - #include - int main(void) { -@@ -229,7 +229,7 @@ elif test $cpu = arm; then - #endif - return 1; - } -- ]])],[ac_cv_test_arm_swf=yes],[][]) -+ ]])],[ac_cv_test_arm_swf=yes],[],[ac_cv_test_arm_swf=no]) - fi - CFLAGS=$save_CFLAGS diff --git a/package/lightning/0002-ppc-disassembler-build-fix.patch b/package/lightning/0002-ppc-disassembler-build-fix.patch deleted file mode 100644 index 4c812b3a7f8..00000000000 --- a/package/lightning/0002-ppc-disassembler-build-fix.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 361caf28545aa0c2b2ab8d1cbd334fbdd952f373 Mon Sep 17 00:00:00 2001 -From: Paulo Andrade -Date: Thu, 15 Jan 2015 14:56:38 -0200 -Subject: [PATCH 4/4] PPC: Only call binutils function if it is available - - * configure.ac, lib/jit_disasm.c: Rewrite workaround - to apparent problem to initialize powerpc disassembler. ---- -diff --git a/configure.ac b/configure.ac -index 749659b..d26e777 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -230,6 +230,13 @@ elif test $cpu = arm; then - return 1; - } - ]])],[ac_cv_test_arm_swf=yes],[],[ac_cv_test_arm_swf=no]) -+elif test $cpu = ppc; then -+ if test "x$DISASSEMBLER" != "xno"; then -+ save_LIBS="$LIBS" -+ LIBS="$LIBS $SHLIB" -+ AC_CHECK_FUNCS(disassemble_init_for_target disassemble_init_powerpc) -+ LIBS="$save_LIBS" -+ fi - fi - CFLAGS=$save_CFLAGS - -diff --git a/lib/jit_disasm.c b/lib/jit_disasm.c -index 01158de..86e5441 100644 ---- a/lib/jit_disasm.c -+++ b/lib/jit_disasm.c -@@ -91,11 +91,19 @@ jit_init_debug(const char *progname) - # if defined(__powerpc__) - disasm_info.arch = bfd_arch_powerpc; - disasm_info.mach = bfd_mach_ppc64; -+# if HAVE_DISASSEMBLE_INIT_FOR_TARGET -+ disassemble_init_for_target(&disasm_info); -+# elif HAVE_DISASSEMBLE_INIT_POWERPC - disassemble_init_powerpc(&disasm_info); -+# endif - # if defined(__powerpc64__) - disasm_info.disassembler_options = "64"; - # endif -+# if HAVE_DISASSEMBLE_INIT_FOR_TARGET -+ disassemble_init_for_target(&disasm_info); -+# elif HAVE_DISASSEMBLE_INIT_POWERPC - disassemble_init_powerpc(&disasm_info); -+# endif - # endif - # if defined(__sparc__) - disasm_info.endian = disasm_info.display_endian = BFD_ENDIAN_BIG; --- -2.1.4 - diff --git a/package/lightning/Config.in b/package/lightning/Config.in index 8caf39f4025..6750114be2c 100644 --- a/package/lightning/Config.in +++ b/package/lightning/Config.in @@ -1,7 +1,13 @@ +comment "lightning needs a toolchain w/ dynamic library" + depends on BR2_sparc || BR2_i386 || BR2_x86_64 || BR2_mips || \ + BR2_mipsel || BR2_arm || BR2_powerpc + depends on BR2_STATIC_LIBS + config BR2_PACKAGE_LIGHTNING bool "lightning" depends on BR2_sparc || BR2_i386 || BR2_x86_64 || BR2_mips || \ BR2_mipsel || BR2_arm || BR2_powerpc + depends on !BR2_STATIC_LIBS help GNU lightning is a library that generates assembly language code at run-time. diff --git a/package/lightning/lightning.hash b/package/lightning/lightning.hash index 7e61d61cbbf..4805686e987 100644 --- a/package/lightning/lightning.hash +++ b/package/lightning/lightning.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 65b66a86aef8772e8c6813868da5174c4977c65b9e6cff3d4c3bb0de1a52a94a lightning-2.0.5.tar.gz +sha256 1fa3a2421852598b3162d6765645bb3cd0fccb5f0c105d0800c64c8428b749a6 lightning-2.1.0.tar.gz diff --git a/package/lightning/lightning.mk b/package/lightning/lightning.mk index 9095cba97e2..b74147a62d7 100644 --- a/package/lightning/lightning.mk +++ b/package/lightning/lightning.mk @@ -4,15 +4,12 @@ # ################################################################################ -LIGHTNING_VERSION = 2.0.5 +LIGHTNING_VERSION = 2.1.0 LIGHTNING_SITE = http://ftp.gnu.org/gnu/lightning LIGHTNING_LICENSE = LGPLv3+ LIGHTNING_LICENSE_FILES = COPYING.LESSER LIGHTNING_INSTALL_STAGING = YES -# We're patching configure.ac -LIGHTNING_AUTORECONF = YES - ifeq ($(BR2_PACKAGE_LIGHTNING_DISASSEMBLER),y) LIGHTNING_DEPENDENCIES += binutils zlib LIGHTNING_CONF_OPTS += --enable-disassembler diff --git a/package/lighttpd/0001-Fix-default-config-file.patch b/package/lighttpd/0001-Fix-default-config-file.patch index bffc2a8ed37..ada15897603 100644 --- a/package/lighttpd/0001-Fix-default-config-file.patch +++ b/package/lighttpd/0001-Fix-default-config-file.patch @@ -9,11 +9,13 @@ Modify the default lighttpd configuration file to have one a starting conf Signed-off-by: Maxime Ripard Signed-off-by: Simon Dawson +[Gustavo: update for 1.4.37] +Signed-off-by: Gustavo Zacarias -diff -Nurp a/doc/config/conf.d/access_log.conf b/doc/config/conf.d/access_log.conf ---- a/doc/config/conf.d/access_log.conf 2010-07-11 18:01:32.000000000 +0100 -+++ b/doc/config/conf.d/access_log.conf 2012-07-21 19:37:58.453207990 +0100 -@@ -9,7 +9,7 @@ server.modules += ( "mod_accesslog" ) +diff -Nura lighttpd-1.4.37.orig/doc/config/conf.d/access_log.conf lighttpd-1.4.37/doc/config/conf.d/access_log.conf +--- lighttpd-1.4.37.orig/doc/config/conf.d/access_log.conf 2015-09-01 14:38:48.684673663 -0300 ++++ lighttpd-1.4.37/doc/config/conf.d/access_log.conf 2015-09-01 14:38:53.975855142 -0300 +@@ -9,7 +9,7 @@ ## ## Default access log. ## @@ -22,9 +24,9 @@ diff -Nurp a/doc/config/conf.d/access_log.conf b/doc/config/conf.d/access_log.co ## ## The default format produces CLF compatible output. -diff -Nurp a/doc/config/lighttpd.conf b/doc/config/lighttpd.conf ---- a/doc/config/lighttpd.conf 2011-12-18 12:57:25.000000000 +0000 -+++ b/doc/config/lighttpd.conf 2012-07-21 19:40:45.281200552 +0100 +diff -Nura lighttpd-1.4.37.orig/doc/config/lighttpd.conf lighttpd-1.4.37/doc/config/lighttpd.conf +--- lighttpd-1.4.37.orig/doc/config/lighttpd.conf 2015-09-01 14:38:48.684673663 -0300 ++++ lighttpd-1.4.37/doc/config/lighttpd.conf 2015-09-01 14:39:40.256442492 -0300 @@ -13,8 +13,8 @@ ## if you add a variable here. Add the corresponding variable in the ## chroot example aswell. @@ -36,7 +38,7 @@ diff -Nurp a/doc/config/lighttpd.conf b/doc/config/lighttpd.conf var.state_dir = "/var/run" var.home_dir = "/var/lib/lighttpd" var.conf_dir = "/etc/lighttpd" -@@ -90,7 +90,7 @@ server.port = 80 +@@ -90,7 +90,7 @@ ## ## Use IPv6? ## @@ -45,7 +47,7 @@ diff -Nurp a/doc/config/lighttpd.conf b/doc/config/lighttpd.conf ## ## bind to a specific IP -@@ -101,8 +101,8 @@ server.use-ipv6 = "enable" +@@ -101,8 +101,8 @@ ## Run as a different username/groupname. ## This requires root permissions during startup. ## @@ -56,7 +58,7 @@ diff -Nurp a/doc/config/lighttpd.conf b/doc/config/lighttpd.conf ## ## enable core files. -@@ -112,7 +112,7 @@ server.groupname = "lighttpd" +@@ -112,7 +112,7 @@ ## ## Document root ## @@ -65,7 +67,7 @@ diff -Nurp a/doc/config/lighttpd.conf b/doc/config/lighttpd.conf ## ## The value for the "Server:" response field. -@@ -138,7 +138,7 @@ server.pid-file = state_dir + "/lighttpd +@@ -138,7 +138,7 @@ ## ## Path to the error log file ## @@ -74,16 +76,16 @@ diff -Nurp a/doc/config/lighttpd.conf b/doc/config/lighttpd.conf ## ## If you want to log to syslog you have to unset the -@@ -188,7 +188,7 @@ server.event-handler = "linux-sysepoll" - ## linux-sendfile - is recommended for small files. +@@ -188,7 +188,7 @@ + ## sendfile - is recommended for small files. ## writev - is recommended for sending many large files ## --server.network-backend = "linux-sendfile" +-server.network-backend = "sendfile" +server.network-backend = "writev" ## ## As lighttpd is a single-threaded server, its main resource limit is -@@ -311,9 +311,9 @@ url.access-deny = ( "~", ".i +@@ -311,9 +311,9 @@ ## disable range requests for pdf files ## workaround for a bug in the Acrobat Reader plugin. ## diff --git a/package/lighttpd/0002-compat-latest-lua.patch b/package/lighttpd/0002-compat-latest-lua.patch new file mode 100644 index 00000000000..ddbbfc2d872 --- /dev/null +++ b/package/lighttpd/0002-compat-latest-lua.patch @@ -0,0 +1,1398 @@ +add handling for lua 5.2 and 5.3 + +Fetch from: https://redmine.lighttpd.net/projects/lighttpd/repository/revisions/3070 + +Signed-off-by: Francois Perrad + +Index: lighttpd-1.4.37/src/mod_magnet_cache.c +=================================================================== +--- lighttpd-1.4.37/src/mod_magnet_cache.c (revision 3069) ++++ lighttpd-1.4.37/src/mod_magnet_cache.c (revision 3070) +@@ -68,6 +68,7 @@ + /* oops, the script failed last time */ + + if (lua_gettop(sc->L) == 0) break; ++ force_assert(lua_gettop(sc->L) == 1); + + if (HANDLER_ERROR == stat_cache_get_entry(srv, con, sc->name, &sce)) { + lua_pop(sc->L, 1); /* pop the old function */ +@@ -81,7 +82,6 @@ + } + + force_assert(lua_isfunction(sc->L, -1)); +- lua_pushvalue(sc->L, -1); /* copy the function-reference */ + + return sc->L; + } +@@ -114,7 +114,6 @@ + + if (0 != luaL_loadfile(sc->L, name->ptr)) { + /* oops, an error, return it */ +- + return sc->L; + } + +@@ -122,14 +121,7 @@ + buffer_copy_buffer(sc->etag, sce->etag); + } + +- /** +- * pcall() needs the function on the stack +- * +- * as pcall() will pop the script from the stack when done, we have to +- * duplicate it here +- */ + force_assert(lua_isfunction(sc->L, -1)); +- lua_pushvalue(sc->L, -1); /* copy the function-reference */ + + return sc->L; + } +Index: lighttpd-1.4.37/src/mod_cml_lua.c +=================================================================== +--- lighttpd-1.4.37/src/mod_cml_lua.c (revision 3069) ++++ lighttpd-1.4.37/src/mod_cml_lua.c (revision 3070) +@@ -28,67 +28,35 @@ + #include + #include + +-typedef struct { +- stream st; +- int done; +-} readme; +- +-static const char * load_file(lua_State *L, void *data, size_t *size) { +- readme *rm = data; +- +- UNUSED(L); +- +- if (rm->done) return 0; +- +- *size = rm->st.size; +- rm->done = 1; +- return rm->st.start; +-} +- + static int lua_to_c_get_string(lua_State *L, const char *varname, buffer *b) { +- int curelem; ++ int curelem = lua_gettop(L); ++ int result; + +- lua_pushstring(L, varname); ++ lua_getglobal(L, varname); + +- curelem = lua_gettop(L); +- lua_gettable(L, LUA_GLOBALSINDEX); +- +- /* it should be a table */ +- if (!lua_isstring(L, curelem)) { +- lua_settop(L, curelem - 1); +- +- return -1; ++ if (lua_isstring(L, curelem)) { ++ buffer_copy_string(b, lua_tostring(L, curelem)); ++ result = 0; ++ } else { ++ result = -1; + } + +- buffer_copy_string(b, lua_tostring(L, curelem)); +- + lua_pop(L, 1); +- +- force_assert(curelem - 1 == lua_gettop(L)); +- +- return 0; ++ force_assert(curelem == lua_gettop(L)); ++ return result; + } + + static int lua_to_c_is_table(lua_State *L, const char *varname) { +- int curelem; ++ int curelem = lua_gettop(L); ++ int result; + +- lua_pushstring(L, varname); ++ lua_getglobal(L, varname); + +- curelem = lua_gettop(L); +- lua_gettable(L, LUA_GLOBALSINDEX); ++ result = lua_istable(L, curelem) ? 1 : 0; + +- /* it should be a table */ +- if (!lua_istable(L, curelem)) { +- lua_settop(L, curelem - 1); +- +- return 0; +- } +- +- lua_settop(L, curelem - 1); +- +- force_assert(curelem - 1 == lua_gettop(L)); +- +- return 1; ++ lua_pop(L, 1); ++ force_assert(curelem == lua_gettop(L)); ++ return result; + } + + static int c_to_lua_push(lua_State *L, int tbl, const char *key, size_t key_len, const char *val, size_t val_len) { +@@ -99,7 +67,6 @@ + return 0; + } + +- + static int cache_export_get_params(lua_State *L, int tbl, buffer *qrystr) { + size_t is_key = 1; + size_t i, len; +@@ -143,83 +110,12 @@ + + return 0; + } +-#if 0 +-int cache_export_cookie_params(server *srv, connection *con, plugin_data *p) { +- data_unset *d; + +- UNUSED(srv); +- +- if (NULL != (d = array_get_element(con->request.headers, "Cookie"))) { +- data_string *ds = (data_string *)d; +- size_t key = 0, value = 0; +- size_t is_key = 1, is_sid = 0; +- size_t i; +- +- /* found COOKIE */ +- if (!DATA_IS_STRING(d)) return -1; +- if (ds->value->used == 0) return -1; +- +- if (ds->value->ptr[0] == '\0' || +- ds->value->ptr[0] == '=' || +- ds->value->ptr[0] == ';') return -1; +- +- buffer_reset(p->session_id); +- for (i = 0; i < ds->value->used; i++) { +- switch(ds->value->ptr[i]) { +- case '=': +- if (is_key) { +- if (0 == strncmp(ds->value->ptr + key, "PHPSESSID", i - key)) { +- /* found PHP-session-id-key */ +- is_sid = 1; +- } +- value = i + 1; +- +- is_key = 0; +- } +- +- break; +- case ';': +- if (is_sid) { +- buffer_copy_string_len(p->session_id, ds->value->ptr + value, i - value); +- } +- +- is_sid = 0; +- key = i + 1; +- value = 0; +- is_key = 1; +- break; +- case ' ': +- if (is_key == 1 && key == i) key = i + 1; +- if (is_key == 0 && value == i) value = i + 1; +- break; +- case '\0': +- if (is_sid) { +- buffer_copy_string_len(p->session_id, ds->value->ptr + value, i - value); +- } +- /* fin */ +- break; +- } +- } +- } +- +- return 0; +-} +-#endif +- + int cache_parse_lua(server *srv, connection *con, plugin_data *p, buffer *fn) { + lua_State *L; +- readme rm; + int ret = -1; + buffer *b; +- int header_tbl = 0; + +- rm.done = 0; +- if (-1 == stream_open(&rm.st, fn)) { +- log_error_write(srv, __FILE__, __LINE__, "sbss", +- "opening lua cml file ", fn, "failed:", strerror(errno)); +- return -1; +- } +- + b = buffer_init(); + /* push the lua file to the interpreter and see what happends */ + L = luaL_newstate(); +@@ -233,73 +129,77 @@ + lua_register(L, "dir_files", f_dir_files); + + #ifdef HAVE_MEMCACHE_H +- lua_pushliteral(L, "memcache_get_long"); + lua_pushlightuserdata(L, p->conf.mc); + lua_pushcclosure(L, f_memcache_get_long, 1); +- lua_settable(L, LUA_GLOBALSINDEX); ++ lua_setglobal(L, "memcache_get_long"); + +- lua_pushliteral(L, "memcache_get_string"); + lua_pushlightuserdata(L, p->conf.mc); + lua_pushcclosure(L, f_memcache_get_string, 1); +- lua_settable(L, LUA_GLOBALSINDEX); ++ lua_setglobal(L, "memcache_get_string"); + +- lua_pushliteral(L, "memcache_exists"); + lua_pushlightuserdata(L, p->conf.mc); + lua_pushcclosure(L, f_memcache_exists, 1); +- lua_settable(L, LUA_GLOBALSINDEX); ++ lua_setglobal(L, "memcache_exists"); + #endif ++ + /* register CGI environment */ +- lua_pushliteral(L, "request"); + lua_newtable(L); +- lua_settable(L, LUA_GLOBALSINDEX); ++ { ++ int header_tbl = lua_gettop(L); + +- lua_pushliteral(L, "request"); +- header_tbl = lua_gettop(L); +- lua_gettable(L, LUA_GLOBALSINDEX); ++ c_to_lua_push(L, header_tbl, CONST_STR_LEN("REQUEST_URI"), CONST_BUF_LEN(con->request.orig_uri)); ++ c_to_lua_push(L, header_tbl, CONST_STR_LEN("SCRIPT_NAME"), CONST_BUF_LEN(con->uri.path)); ++ c_to_lua_push(L, header_tbl, CONST_STR_LEN("SCRIPT_FILENAME"), CONST_BUF_LEN(con->physical.path)); ++ c_to_lua_push(L, header_tbl, CONST_STR_LEN("DOCUMENT_ROOT"), CONST_BUF_LEN(con->physical.doc_root)); ++ if (!buffer_string_is_empty(con->request.pathinfo)) { ++ c_to_lua_push(L, header_tbl, CONST_STR_LEN("PATH_INFO"), CONST_BUF_LEN(con->request.pathinfo)); ++ } + +- c_to_lua_push(L, header_tbl, CONST_STR_LEN("REQUEST_URI"), CONST_BUF_LEN(con->request.orig_uri)); +- c_to_lua_push(L, header_tbl, CONST_STR_LEN("SCRIPT_NAME"), CONST_BUF_LEN(con->uri.path)); +- c_to_lua_push(L, header_tbl, CONST_STR_LEN("SCRIPT_FILENAME"), CONST_BUF_LEN(con->physical.path)); +- c_to_lua_push(L, header_tbl, CONST_STR_LEN("DOCUMENT_ROOT"), CONST_BUF_LEN(con->physical.doc_root)); +- if (!buffer_string_is_empty(con->request.pathinfo)) { +- c_to_lua_push(L, header_tbl, CONST_STR_LEN("PATH_INFO"), CONST_BUF_LEN(con->request.pathinfo)); ++ c_to_lua_push(L, header_tbl, CONST_STR_LEN("CWD"), CONST_BUF_LEN(p->basedir)); ++ c_to_lua_push(L, header_tbl, CONST_STR_LEN("BASEURL"), CONST_BUF_LEN(p->baseurl)); + } ++ lua_setglobal(L, "request"); + +- c_to_lua_push(L, header_tbl, CONST_STR_LEN("CWD"), CONST_BUF_LEN(p->basedir)); +- c_to_lua_push(L, header_tbl, CONST_STR_LEN("BASEURL"), CONST_BUF_LEN(p->baseurl)); +- + /* register GET parameter */ +- lua_pushliteral(L, "get"); + lua_newtable(L); +- lua_settable(L, LUA_GLOBALSINDEX); ++ { ++ int get_tbl = lua_gettop(L); + +- lua_pushliteral(L, "get"); +- header_tbl = lua_gettop(L); +- lua_gettable(L, LUA_GLOBALSINDEX); ++ buffer_copy_buffer(b, con->uri.query); ++ cache_export_get_params(L, get_tbl, b); ++ buffer_reset(b); ++ } ++ lua_setglobal(L, "get"); + +- buffer_copy_buffer(b, con->uri.query); +- cache_export_get_params(L, header_tbl, b); +- buffer_reset(b); +- + /* 2 default constants */ +- lua_pushliteral(L, "CACHE_HIT"); +- lua_pushnumber(L, 0); +- lua_settable(L, LUA_GLOBALSINDEX); ++ lua_pushinteger(L, 0); ++ lua_setglobal(L, "CACHE_HIT"); + +- lua_pushliteral(L, "CACHE_MISS"); +- lua_pushnumber(L, 1); +- lua_settable(L, LUA_GLOBALSINDEX); ++ lua_pushinteger(L, 1); ++ lua_setglobal(L, "CACHE_MISS"); + + /* load lua program */ +- if (lua_load(L, load_file, &rm, fn->ptr) || lua_pcall(L,0,1,0)) { +- log_error_write(srv, __FILE__, __LINE__, "s", +- lua_tostring(L,-1)); ++ ret = luaL_loadfile(L, fn->ptr); ++ if (0 != ret) { ++ log_error_write(srv, __FILE__, __LINE__, "sbsS", ++ "failed loading cml_lua script", ++ fn, ++ ":", ++ lua_tostring(L, -1)); ++ goto error; ++ } + ++ if (lua_pcall(L, 0, 1, 0)) { ++ log_error_write(srv, __FILE__, __LINE__, "sbsS", ++ "failed running cml_lua script", ++ fn, ++ ":", ++ lua_tostring(L, -1)); + goto error; + } + + /* get return value */ +- ret = (int)lua_tonumber(L, -1); ++ ret = (int)lua_tointeger(L, -1); + lua_pop(L, 1); + + /* fetch the data from lua */ +@@ -323,10 +223,8 @@ + goto error; + } + +- lua_pushstring(L, "output_include"); +- ++ lua_getglobal(L, "output_include"); + curelem = lua_gettop(L); +- lua_gettable(L, LUA_GLOBALSINDEX); + + /* HOW-TO build a etag ? + * as we don't just have one file we have to take the stat() +@@ -441,7 +339,6 @@ + error: + lua_close(L); + +- stream_close(&rm.st); + buffer_free(b); + + return ret /* cache-error */; +Index: lighttpd-1.4.37/src/mod_magnet.c +=================================================================== +--- lighttpd-1.4.37/src/mod_magnet.c (revision 3069) ++++ lighttpd-1.4.37/src/mod_magnet.c (revision 3070) +@@ -20,6 +20,9 @@ + #include + #include + ++#define LUA_RIDX_LIGHTTPD_SERVER "lighty.srv" ++#define LUA_RIDX_LIGHTTPD_CONNECTION "lighty.con" ++ + #define MAGNET_CONFIG_RAW_URL "magnet.attract-raw-url-to" + #define MAGNET_CONFIG_PHYSICAL_PATH "magnet.attract-physical-path-to" + #define MAGNET_RESTART_REQUEST 99 +@@ -159,23 +162,57 @@ + } + #undef PATCH + +-/* See http://lua-users.org/wiki/GeneralizedPairsAndIpairs for implementation details. */ ++static void magnet_get_global_table(lua_State *L) { /* (-0, +1, e) */ ++#if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 502 ++ lua_geti(L, LUA_REGISTRYINDEX, LUA_RIDX_GLOBALS); ++#else ++ lua_pushvalue(L, LUA_GLOBALSINDEX); ++#endif ++} + +-/* Override the default pairs() function to allow us to use a __pairs metakey */ ++static void magnet_setfenv_mainfn(lua_State *L, int funcIndex) { /* (-1, 0, -) */ ++#if defined(LUA_VERSION_NUM) && LUA_VERSION_NUM >= 502 ++ /* set "_ENV" upvalue, which should be the first upvalue of a "main" lua ++ * function if it uses any global names ++ */ ++ ++ const char* first_upvalue_name = lua_getupvalue(L, funcIndex, 1); ++ if (NULL == first_upvalue_name) return; /* doesn't have any upvalues */ ++ lua_pop(L, 1); /* only need the name of the upvalue, not the value */ ++ ++ if (0 != strcmp(first_upvalue_name, "_ENV")) return; ++ ++ if (NULL == lua_setupvalue(L, funcIndex, 1)) { ++ /* pop value if lua_setupvalue didn't set the (not existing) upvalue */ ++ lua_pop(L, 1); ++ } ++#else ++ lua_setfenv(L, funcIndex); ++#endif ++} ++ ++#if !defined(LUA_VERSION_NUM) || LUA_VERSION_NUM < 502 ++/* lua 5.2 already supports __pairs */ ++ ++/* See http://lua-users.org/wiki/GeneralizedPairsAndIpairs for implementation details. ++ * Override the default pairs() function to allow us to use a __pairs metakey ++ */ + static int magnet_pairs(lua_State *L) { +- luaL_checkany(L, 1); ++ luaL_checkany(L, 1); /* "self" */ + + if (luaL_getmetafield(L, 1, "__pairs")) { +- lua_insert(L, 1); +- lua_call(L, lua_gettop(L) - 1, LUA_MULTRET); +- return lua_gettop(L); ++ /* call __pairs(self) */ ++ lua_pushvalue(L, 1); ++ lua_call(L, 1, 3); + } else { ++ /* call (self) */ + lua_pushvalue(L, lua_upvalueindex(1)); +- lua_insert(L, 1); +- lua_call(L, lua_gettop(L) - 1, LUA_MULTRET); +- return lua_gettop(L); ++ lua_pushvalue(L, 1); ++ lua_call(L, 1, 3); + } ++ return 3; + } ++#endif + + /* Define a function that will iterate over an array* (in upval 1) using current position (upval 2) */ + static int magnet_array_next(lua_State *L) { +@@ -229,40 +266,63 @@ + return 1; + } + +-static int magnet_print(lua_State *L) { +- const char *s = luaL_checkstring(L, 1); ++static server* magnet_get_server(lua_State *L) { + server *srv; + +- lua_pushstring(L, "lighty.srv"); +- lua_gettable(L, LUA_REGISTRYINDEX); ++ lua_getfield(L, LUA_REGISTRYINDEX, LUA_RIDX_LIGHTTPD_SERVER); + srv = lua_touserdata(L, -1); + lua_pop(L, 1); + +- log_error_write(srv, __FILE__, __LINE__, "ss", +- "(lua-print)", s); ++ return srv; ++} + ++static connection* magnet_get_connection(lua_State *L) { ++ connection *con; ++ ++ lua_getfield(L, LUA_REGISTRYINDEX, LUA_RIDX_LIGHTTPD_CONNECTION); ++ con = lua_touserdata(L, -1); ++ lua_pop(L, 1); ++ ++ return con; ++} ++ ++typedef struct { ++ const char *ptr; ++ size_t len; ++} const_buffer; ++ ++static const_buffer magnet_checkconstbuffer(lua_State *L, int index) { ++ const_buffer cb; ++ cb.ptr = luaL_checklstring(L, index, &cb.len); ++ return cb; ++} ++ ++static buffer* magnet_checkbuffer(lua_State *L, int index) { ++ const_buffer cb = magnet_checkconstbuffer(L, index); ++ buffer *b = buffer_init(); ++ buffer_copy_string_len(b, cb.ptr, cb.len); ++ return b; ++} ++ ++static int magnet_print(lua_State *L) { ++ buffer *b = magnet_checkbuffer(L, 1); ++ ++ log_error_write(magnet_get_server(L), __FILE__, __LINE__, "sB", ++ "(lua-print)", ++ b); ++ ++ buffer_free(b); ++ + return 0; + } + + static int magnet_stat(lua_State *L) { +- const char *s = luaL_checkstring(L, 1); +- server *srv; +- connection *con; +- buffer *sb; ++ buffer *sb = magnet_checkbuffer(L, 1); ++ server *srv = magnet_get_server(L); ++ connection *con = magnet_get_connection(L); + stat_cache_entry *sce = NULL; + handler_t res; + +- lua_pushstring(L, "lighty.srv"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- srv = lua_touserdata(L, -1); +- lua_pop(L, 1); +- +- lua_pushstring(L, "lighty.con"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- con = lua_touserdata(L, -1); +- lua_pop(L, 1); +- +- sb = buffer_init_string(s); + res = stat_cache_get_entry(srv, con, sb, &sce); + buffer_free(sb); + +@@ -271,7 +331,7 @@ + return 1; + } + +- lua_newtable(L); ++ lua_newtable(L); // return value + + lua_pushboolean(L, S_ISREG(sce->st.st_mode)); + lua_setfield(L, -2, "is_file"); +@@ -315,7 +375,6 @@ + lua_pushinteger(L, sce->st.st_ino); + lua_setfield(L, -2, "st_ino"); + +- + if (!buffer_string_is_empty(sce->etag)) { + /* we have to mutate the etag */ + buffer *b = buffer_init(); +@@ -340,31 +399,24 @@ + + + static int magnet_atpanic(lua_State *L) { +- const char *s = luaL_checkstring(L, 1); +- server *srv; ++ buffer *b = magnet_checkbuffer(L, 1); + +- lua_pushstring(L, "lighty.srv"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- srv = lua_touserdata(L, -1); +- lua_pop(L, 1); ++ log_error_write(magnet_get_server(L), __FILE__, __LINE__, "sB", ++ "(lua-atpanic)", ++ b); + +- log_error_write(srv, __FILE__, __LINE__, "ss", +- "(lua-atpanic)", s); ++ buffer_free(b); + + longjmp(exceptionjmp, 1); + } + + static int magnet_reqhdr_get(lua_State *L) { +- connection *con; ++ connection *con = magnet_get_connection(L); + data_string *ds; + ++ /* __index: param 1 is the (empty) table the value was not found in */ + const char *key = luaL_checkstring(L, 2); + +- lua_pushstring(L, "lighty.con"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- con = lua_touserdata(L, -1); +- lua_pop(L, 1); +- + if (NULL != (ds = (data_string *)array_get_element(con->request.headers, key))) { + if (!buffer_is_empty(ds->value)) { + lua_pushlstring(L, CONST_BUF_LEN(ds->value)); +@@ -378,60 +430,40 @@ + } + + static int magnet_reqhdr_pairs(lua_State *L) { +- connection *con; ++ connection *con = magnet_get_connection(L); + +- lua_pushstring(L, "lighty.con"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- con = lua_touserdata(L, -1); +- lua_pop(L, 1); +- + return magnet_array_pairs(L, con->request.headers); + } + + static int magnet_status_get(lua_State *L) { + data_integer *di; +- server *srv; +- size_t key_len = 0; ++ server *srv = magnet_get_server(L); + +- const char *key = luaL_checklstring(L, 2, &key_len); ++ /* __index: param 1 is the (empty) table the value was not found in */ ++ const_buffer key = magnet_checkconstbuffer(L, 2); + +- lua_pushstring(L, "lighty.srv"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- srv = lua_touserdata(L, -1); +- lua_pop(L, 1); ++ di = status_counter_get_counter(srv, key.ptr, key.len); + +- di = status_counter_get_counter(srv, key, key_len); ++ lua_pushinteger(L, (lua_Integer)di->value); + +- lua_pushnumber(L, (double)di->value); +- + return 1; + } + + static int magnet_status_set(lua_State *L) { +- size_t key_len = 0; +- server *srv; ++ server *srv = magnet_get_server(L); + +- const char *key = luaL_checklstring(L, 2, &key_len); +- int counter = luaL_checkint(L, 3); ++ /* __newindex: param 1 is the (empty) table the value is supposed to be set in */ ++ const_buffer key = magnet_checkconstbuffer(L, 2); ++ int counter = (int) luaL_checkinteger(L, 3); + +- lua_pushstring(L, "lighty.srv"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- srv = lua_touserdata(L, -1); +- lua_pop(L, 1); ++ status_counter_set(srv, key.ptr, key.len, counter); + +- status_counter_set(srv, key, key_len, counter); +- + return 0; + } + + static int magnet_status_pairs(lua_State *L) { +- server *srv; ++ server *srv = magnet_get_server(L); + +- lua_pushstring(L, "lighty.srv"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- srv = lua_touserdata(L, -1); +- lua_pop(L, 1); +- + return magnet_array_pairs(L, srv->status); + } + +@@ -534,22 +566,13 @@ + } + + static int magnet_env_get(lua_State *L) { +- server *srv; +- connection *con; ++ server *srv = magnet_get_server(L); ++ connection *con = magnet_get_connection(L); + ++ /* __index: param 1 is the (empty) table the value was not found in */ + const char *key = luaL_checkstring(L, 2); + buffer *dest = NULL; + +- lua_pushstring(L, "lighty.srv"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- srv = lua_touserdata(L, -1); +- lua_pop(L, 1); +- +- lua_pushstring(L, "lighty.con"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- con = lua_touserdata(L, -1); +- lua_pop(L, 1); +- + dest = magnet_env_get_buffer(srv, con, key); + + if (!buffer_is_empty(dest)) { +@@ -562,25 +585,22 @@ + } + + static int magnet_env_set(lua_State *L) { +- server *srv; +- connection *con; ++ server *srv = magnet_get_server(L); ++ connection *con = magnet_get_connection(L); + ++ /* __newindex: param 1 is the (empty) table the value is supposed to be set in */ + const char *key = luaL_checkstring(L, 2); +- const char *val = luaL_checkstring(L, 3); + buffer *dest = NULL; + +- lua_pushstring(L, "lighty.srv"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- srv = lua_touserdata(L, -1); +- lua_pop(L, 1); ++ luaL_checkany(L, 3); /* nil or a string */ + +- lua_pushstring(L, "lighty.con"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- con = lua_touserdata(L, -1); +- lua_pop(L, 1); +- + if (NULL != (dest = magnet_env_get_buffer(srv, con, key))) { +- buffer_copy_string(dest, val); ++ if (lua_isnil(L, 3)) { ++ buffer_reset(dest); ++ } else { ++ const_buffer val = magnet_checkconstbuffer(L, 3); ++ buffer_copy_string_len(dest, val.ptr, val.len); ++ } + } else { + /* couldn't save */ + +@@ -591,28 +611,24 @@ + } + + static int magnet_env_next(lua_State *L) { +- server *srv; +- connection *con; +- int pos = lua_tointeger(L, lua_upvalueindex(1)); ++ server *srv = magnet_get_server(L); ++ connection *con = magnet_get_connection(L); ++ const int pos = lua_tointeger(L, lua_upvalueindex(1)); + + buffer *dest; + +- lua_pushstring(L, "lighty.srv"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- srv = lua_touserdata(L, -1); +- lua_pop(L, 1); +- +- lua_pushstring(L, "lighty.con"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- con = lua_touserdata(L, -1); +- lua_pop(L, 1); +- ++ /* ignore previous key: use upvalue for current pos */ + lua_settop(L, 0); + + if (NULL == magnet_env[pos].name) return 0; /* end of list */ ++ /* Update our positional upval to reflect our new current position */ ++ lua_pushinteger(L, pos + 1); ++ lua_replace(L, lua_upvalueindex(1)); + ++ /* key to return */ + lua_pushstring(L, magnet_env[pos].name); + ++ /* get value */ + dest = magnet_env_get_buffer_by_id(srv, con, magnet_env[pos].type); + if (!buffer_is_empty(dest)) { + lua_pushlstring(L, CONST_BUF_LEN(dest)); +@@ -620,12 +636,7 @@ + lua_pushnil(L); + } + +- /* Update our positional upval to reflect our new current position */ +- pos++; +- lua_pushinteger(L, pos); +- lua_replace(L, lua_upvalueindex(1)); +- +- /* Returning 2 items on the stack (key, value) */ ++ /* return 2 items on the stack (key, value) */ + return 2; + } + +@@ -636,16 +647,12 @@ + } + + static int magnet_cgi_get(lua_State *L) { +- connection *con; ++ connection *con = magnet_get_connection(L); + data_string *ds; + ++ /* __index: param 1 is the (empty) table the value was not found in */ + const char *key = luaL_checkstring(L, 2); + +- lua_pushstring(L, "lighty.con"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- con = lua_touserdata(L, -1); +- lua_pop(L, 1); +- + ds = (data_string *)array_get_element(con->environment, key); + if (NULL != ds && !buffer_is_empty(ds->value)) + lua_pushlstring(L, CONST_BUF_LEN(ds->value)); +@@ -656,47 +663,28 @@ + } + + static int magnet_cgi_set(lua_State *L) { +- connection *con; ++ connection *con = magnet_get_connection(L); + +- const char *key = luaL_checkstring(L, 2); +- const char *val = luaL_checkstring(L, 3); ++ /* __newindex: param 1 is the (empty) table the value is supposed to be set in */ ++ const_buffer key = magnet_checkconstbuffer(L, 2); ++ const_buffer val = magnet_checkconstbuffer(L, 2); + +- lua_pushstring(L, "lighty.con"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- con = lua_touserdata(L, -1); +- lua_pop(L, 1); ++ array_set_key_value(con->environment, key.ptr, key.len, val.ptr, val.len); + +- array_set_key_value(con->environment, key, strlen(key), val, strlen(val)); +- + return 0; + } + + static int magnet_cgi_pairs(lua_State *L) { +- connection *con; ++ connection *con = magnet_get_connection(L); + +- lua_pushstring(L, "lighty.con"); +- lua_gettable(L, LUA_REGISTRYINDEX); +- con = lua_touserdata(L, -1); +- lua_pop(L, 1); +- + return magnet_array_pairs(L, con->environment); + } + + +-static int magnet_copy_response_header(server *srv, connection *con, plugin_data *p, lua_State *L) { +- UNUSED(p); +- /** +- * get the environment of the function +- */ ++static int magnet_copy_response_header(server *srv, connection *con, lua_State *L, int lighty_table_ndx) { ++ force_assert(lua_istable(L, lighty_table_ndx)); + +- lua_getfenv(L, -1); /* -1 is the function */ +- +- /* lighty.header */ +- +- lua_getfield(L, -1, "lighty"); /* lighty.* from the env */ +- force_assert(lua_istable(L, -1)); +- +- lua_getfield(L, -1, "header"); /* lighty.header */ ++ lua_getfield(L, lighty_table_ndx, "header"); /* lighty.header */ + if (lua_istable(L, -1)) { + /* header is found, and is a table */ + +@@ -703,23 +691,17 @@ + lua_pushnil(L); + while (lua_next(L, -2) != 0) { + if (lua_isstring(L, -1) && lua_isstring(L, -2)) { +- const char *key, *val; +- size_t key_len, val_len; ++ const_buffer key = magnet_checkconstbuffer(L, -2); ++ const_buffer val = magnet_checkconstbuffer(L, -1); + +- key = lua_tolstring(L, -2, &key_len); +- val = lua_tolstring(L, -1, &val_len); +- +- response_header_overwrite(srv, con, key, key_len, val, val_len); ++ response_header_overwrite(srv, con, key.ptr, key.len, val.ptr, val.len); + } + + lua_pop(L, 1); + } + } ++ lua_pop(L, 1); /* pop lighty.header */ + +- lua_pop(L, 1); /* pop the header-table */ +- lua_pop(L, 1); /* pop the lighty-env */ +- lua_pop(L, 1); /* pop the function env */ +- + return 0; + } + +@@ -732,22 +714,13 @@ + * + * return 200 + */ +-static int magnet_attach_content(server *srv, connection *con, plugin_data *p, lua_State *L) { +- UNUSED(p); +- /** +- * get the environment of the function +- */ ++static int magnet_attach_content(server *srv, connection *con, lua_State *L, int lighty_table_ndx) { ++ force_assert(lua_istable(L, lighty_table_ndx)); + +- force_assert(lua_isfunction(L, -1)); +- lua_getfenv(L, -1); /* -1 is the function */ +- +- lua_getfield(L, -1, "lighty"); /* lighty.* from the env */ +- force_assert(lua_istable(L, -1)); +- +- lua_getfield(L, -1, "content"); /* lighty.content */ ++ lua_getfield(L, lighty_table_ndx, "content"); /* lighty.content */ + if (lua_istable(L, -1)) { + int i; +- /* header is found, and is a table */ ++ /* content is found, and is a table */ + + for (i = 1; ; i++) { + lua_rawgeti(L, -1, i); +@@ -754,10 +727,9 @@ + + /* -1 is the value and should be the value ... aka a table */ + if (lua_isstring(L, -1)) { +- size_t s_len = 0; +- const char *s = lua_tolstring(L, -1, &s_len); ++ const_buffer data = magnet_checkconstbuffer(L, -1); + +- chunkqueue_append_mem(con->write_queue, s, s_len); ++ chunkqueue_append_mem(con->write_queue, data.ptr, data.len); + } else if (lua_istable(L, -1)) { + lua_getfield(L, -1, "filename"); + lua_getfield(L, -2, "length"); +@@ -766,36 +738,24 @@ + if (lua_isstring(L, -3)) { /* filename has to be a string */ + buffer *fn; + stat_cache_entry *sce; +- const char *fn_str; + handler_t res; + +- fn_str = lua_tostring(L, -3); +- fn = buffer_init_string(fn_str); ++ fn = magnet_checkbuffer(L, -3); + + res = stat_cache_get_entry(srv, con, fn, &sce); + + if (HANDLER_GO_ON == res) { +- off_t off = 0; +- off_t len = 0; ++ off_t off = (off_t) luaL_optinteger(L, -1, 0); ++ off_t len = (off_t) luaL_optinteger(L, -2, (lua_Integer) sce->st.st_size); + +- if (lua_isnumber(L, -1)) { +- off = lua_tonumber(L, -1); +- } +- +- if (lua_isnumber(L, -2)) { +- len = lua_tonumber(L, -2); +- } else { +- len = sce->st.st_size; +- } +- + if (off < 0) { + buffer_free(fn); +- return luaL_error(L, "offset for '%s' is negative", fn_str); ++ return luaL_error(L, "offset for '%s' is negative", lua_tostring(L, -3)); + } + + if (len < off) { + buffer_free(fn); +- return luaL_error(L, "offset > length for '%s'", fn_str); ++ return luaL_error(L, "offset > length for '%s'", lua_tostring(L, -3)); + } + + chunkqueue_append_file(con->write_queue, fn, off, len - off); +@@ -803,40 +763,34 @@ + + buffer_free(fn); + } else { +- lua_pop(L, 3 + 2); /* correct the stack */ +- + return luaL_error(L, "content[%d] is a table and requires the field \"filename\"", i); + } + + lua_pop(L, 3); + } else if (lua_isnil(L, -1)) { +- /* oops, end of list */ ++ /* end of list */ + + lua_pop(L, 1); + + break; + } else { +- lua_pop(L, 4); +- + return luaL_error(L, "content[%d] is neither a string nor a table: ", i); + } + +- lua_pop(L, 1); /* pop the content[...] table */ ++ lua_pop(L, 1); /* pop the content[...] entry value */ + } + } else { + return luaL_error(L, "lighty.content has to be a table"); + } +- lua_pop(L, 1); /* pop the header-table */ +- lua_pop(L, 1); /* pop the lighty-table */ +- lua_pop(L, 1); /* php the function env */ ++ lua_pop(L, 1); /* pop lighty.content */ + + return 0; + } + +-static int traceback (lua_State *L) { ++static int traceback(lua_State *L) { + if (!lua_isstring(L, 1)) /* 'message' not a string? */ + return 1; /* keep it intact */ +- lua_getfield(L, LUA_GLOBALSINDEX, "debug"); ++ lua_getglobal(L, "debug"); + if (!lua_istable(L, -1)) { + lua_pop(L, 1); + return 1; +@@ -852,6 +806,10 @@ + return 1; + } + ++/* push traceback function before calling lua_pcall after narg arguments ++ * have been pushed (inserts it before the arguments). returns index for ++ * traceback function ("msgh" in lua_pcall) ++ */ + static int push_traceback(lua_State *L, int narg) { + int base = lua_gettop(L) - narg; /* function index */ + lua_pushcfunction(L, traceback); +@@ -861,11 +819,11 @@ + + static handler_t magnet_attract(server *srv, connection *con, plugin_data *p, buffer *name) { + lua_State *L; +- int lua_return_value = -1; +- int errfunc; ++ int lua_return_value; ++ const int func_ndx = 1; ++ const int lighty_table_ndx = 2; ++ + /* get the script-context */ +- +- + L = script_cache_get_script(srv, con, p->cache, name); + + if (lua_isstring(L, -1)) { +@@ -878,7 +836,7 @@ + + lua_pop(L, 1); + +- force_assert(lua_gettop(L) == 0); /* only the function should be on the stack */ ++ force_assert(lua_gettop(L) == 0); /* only the error should have been on the stack */ + + con->http_status = 500; + con->mode = DIRECT; +@@ -886,13 +844,14 @@ + return HANDLER_FINISHED; + } + +- lua_pushstring(L, "lighty.srv"); ++ force_assert(lua_gettop(L) == 1); ++ force_assert(lua_isfunction(L, func_ndx)); ++ + lua_pushlightuserdata(L, srv); +- lua_settable(L, LUA_REGISTRYINDEX); /* registery[] = srv */ ++ lua_setfield(L, LUA_REGISTRYINDEX, LUA_RIDX_LIGHTTPD_SERVER); + +- lua_pushstring(L, "lighty.con"); + lua_pushlightuserdata(L, con); +- lua_settable(L, LUA_REGISTRYINDEX); /* registery[] = con */ ++ lua_setfield(L, LUA_REGISTRYINDEX, LUA_RIDX_LIGHTTPD_CONNECTION); + + lua_atpanic(L, magnet_atpanic); + +@@ -901,7 +860,7 @@ + * + * setmetatable({}, {__index = _G}) + * +- * if a function, symbol is not defined in our env, __index will lookup ++ * if a function symbol is not defined in our env, __index will lookup + * in the global env. + * + * all variables created in the script-env will be thrown +@@ -914,9 +873,13 @@ + lua_setfield(L, -2, "print"); /* -1 is the env we want to set(sp -= 1) */ + + /** +- * lighty.request[] has the HTTP-request headers +- * lighty.content[] is a table of string/file +- * lighty.header[] is a array to set response headers ++ * lighty.request[] (ro) has the HTTP-request headers ++ * lighty.env[] (rw) has various url/physical file paths and ++ * request meta data; might contain nil values ++ * lighty.req_env[] (ro) has the cgi environment ++ * lighty.status[] (ro) has the status counters ++ * lighty.content[] (rw) is a table of string/file ++ * lighty.header[] (rw) is a array to set response headers + */ + + lua_newtable(L); /* lighty.* (sp += 1) */ +@@ -931,7 +894,7 @@ + lua_setfield(L, -2, "request"); /* content = {} (sp -= 1) */ + + lua_newtable(L); /* {} (sp += 1) */ +- lua_newtable(L); /* the meta-table for the request-table (sp += 1) */ ++ lua_newtable(L); /* the meta-table for the env-table (sp += 1) */ + lua_pushcfunction(L, magnet_env_get); /* (sp += 1) */ + lua_setfield(L, -2, "__index"); /* (sp -= 1) */ + lua_pushcfunction(L, magnet_env_set); /* (sp += 1) */ +@@ -938,11 +901,11 @@ + lua_setfield(L, -2, "__newindex"); /* (sp -= 1) */ + lua_pushcfunction(L, magnet_env_pairs); /* (sp += 1) */ + lua_setfield(L, -2, "__pairs"); /* (sp -= 1) */ +- lua_setmetatable(L, -2); /* tie the metatable to request (sp -= 1) */ ++ lua_setmetatable(L, -2); /* tie the metatable to env (sp -= 1) */ + lua_setfield(L, -2, "env"); /* content = {} (sp -= 1) */ + + lua_newtable(L); /* {} (sp += 1) */ +- lua_newtable(L); /* the meta-table for the request-table (sp += 1) */ ++ lua_newtable(L); /* the meta-table for the req_env-table (sp += 1) */ + lua_pushcfunction(L, magnet_cgi_get); /* (sp += 1) */ + lua_setfield(L, -2, "__index"); /* (sp -= 1) */ + lua_pushcfunction(L, magnet_cgi_set); /* (sp += 1) */ +@@ -953,7 +916,7 @@ + lua_setfield(L, -2, "req_env"); /* content = {} (sp -= 1) */ + + lua_newtable(L); /* {} (sp += 1) */ +- lua_newtable(L); /* the meta-table for the request-table (sp += 1) */ ++ lua_newtable(L); /* the meta-table for the status-table (sp += 1) */ + lua_pushcfunction(L, magnet_status_get); /* (sp += 1) */ + lua_setfield(L, -2, "__index"); /* (sp -= 1) */ + lua_pushcfunction(L, magnet_status_set); /* (sp += 1) */ +@@ -960,7 +923,7 @@ + lua_setfield(L, -2, "__newindex"); /* (sp -= 1) */ + lua_pushcfunction(L, magnet_status_pairs); /* (sp += 1) */ + lua_setfield(L, -2, "__pairs"); /* (sp -= 1) */ +- lua_setmetatable(L, -2); /* tie the metatable to request (sp -= 1) */ ++ lua_setmetatable(L, -2); /* tie the metatable to statzs (sp -= 1) */ + lua_setfield(L, -2, "status"); /* content = {} (sp -= 1) */ + + /* add empty 'content' and 'header' tables */ +@@ -976,78 +939,92 @@ + lua_pushcfunction(L, magnet_stat); /* (sp += 1) */ + lua_setfield(L, -2, "stat"); /* -1 is the env we want to set (sp -= 1) */ + ++ /* insert lighty table at index 2 */ ++ lua_pushvalue(L, -1); ++ lua_insert(L, lighty_table_ndx); ++ + lua_setfield(L, -2, "lighty"); /* lighty.* (sp -= 1) */ + +- /* override the default pairs() function to our __pairs capable version */ ++#if !defined(LUA_VERSION_NUM) || LUA_VERSION_NUM < 502 ++ /* override the default pairs() function to our __pairs capable version; ++ * not needed for lua 5.2+ ++ */ + lua_getglobal(L, "pairs"); /* push original pairs() (sp += 1) */ + lua_pushcclosure(L, magnet_pairs, 1); + lua_setfield(L, -2, "pairs"); /* (sp -= 1) */ ++#endif + + lua_newtable(L); /* the meta-table for the new env (sp += 1) */ +- lua_pushvalue(L, LUA_GLOBALSINDEX); /* (sp += 1) */ ++ magnet_get_global_table(L); /* (sp += 1) */ + lua_setfield(L, -2, "__index"); /* { __index = _G } (sp -= 1) */ + lua_setmetatable(L, -2); /* setmetatable({}, {__index = _G}) (sp -= 1) */ + ++ magnet_setfenv_mainfn(L, 1); /* (sp -= 1) */ + +- lua_setfenv(L, -2); /* on the stack should be a modified env (sp -= 1) */ +- +- errfunc = push_traceback(L, 0); +- if (lua_pcall(L, 0, 1, errfunc)) { ++ /* pcall will destroy the func value, duplicate it */ /* (sp += 1) */ ++ lua_pushvalue(L, func_ndx); ++ { ++ int errfunc = push_traceback(L, 0); ++ int ret = lua_pcall(L, 0, 1, errfunc); + lua_remove(L, errfunc); +- log_error_write(srv, __FILE__, __LINE__, +- "ss", +- "lua_pcall():", +- lua_tostring(L, -1)); +- lua_pop(L, 1); /* remove the error-msg and the function copy from the stack */ + +- force_assert(lua_gettop(L) == 1); /* only the function should be on the stack */ ++ /* reset environment */ ++ magnet_get_global_table(L); /* (sp += 1) */ ++ magnet_setfenv_mainfn(L, 1); /* (sp -= 1) */ + +- con->http_status = 500; +- con->mode = DIRECT; ++ if (0 != ret) { ++ log_error_write(srv, __FILE__, __LINE__, ++ "ss", ++ "lua_pcall():", ++ lua_tostring(L, -1)); ++ lua_pop(L, 2); /* remove the error-msg and the lighty table at index 2 */ + +- return HANDLER_FINISHED; +- } +- lua_remove(L, errfunc); ++ force_assert(lua_gettop(L) == 1); /* only the function should be on the stack */ + +- /* we should have the function-copy and the return value on the stack */ +- force_assert(lua_gettop(L) == 2); ++ con->http_status = 500; ++ con->mode = DIRECT; + +- if (lua_isnumber(L, -1)) { +- /* if the ret-value is a number, take it */ +- lua_return_value = (int)lua_tonumber(L, -1); ++ return HANDLER_FINISHED; ++ } + } +- lua_pop(L, 1); /* pop the ret-value */ + +- magnet_copy_response_header(srv, con, p, L); ++ /* we should have the function, the lighty table and the return value on the stack */ ++ force_assert(lua_gettop(L) == 3); + +- if (lua_return_value > 99) { +- con->http_status = lua_return_value; +- con->file_finished = 1; ++ lua_return_value = (int) luaL_optinteger(L, -1, -1); ++ lua_pop(L, 1); /* pop return value */ + +- /* try { ...*/ +- if (0 == setjmp(exceptionjmp)) { +- magnet_attach_content(srv, con, p, L); +- if (!chunkqueue_is_empty(con->write_queue)) { +- con->mode = p->id; ++ magnet_copy_response_header(srv, con, L, lighty_table_ndx); ++ ++ { ++ handler_t result = HANDLER_GO_ON; ++ ++ if (lua_return_value > 99) { ++ con->http_status = lua_return_value; ++ con->file_finished = 1; ++ ++ /* try { ...*/ ++ if (0 == setjmp(exceptionjmp)) { ++ magnet_attach_content(srv, con, L, lighty_table_ndx); ++ if (!chunkqueue_is_empty(con->write_queue)) { ++ con->mode = p->id; ++ } ++ } else { ++ lua_settop(L, 2); /* remove all but function and lighty table */ ++ /* } catch () { */ ++ con->http_status = 500; ++ con->mode = DIRECT; + } +- } else { +- /* } catch () { */ +- con->http_status = 500; +- con->mode = DIRECT; ++ ++ result = HANDLER_FINISHED; ++ } else if (MAGNET_RESTART_REQUEST == lua_return_value) { ++ result = HANDLER_COMEBACK; + } + +- force_assert(lua_gettop(L) == 1); /* only the function should be on the stack */ ++ lua_pop(L, 1); /* pop the lighty table */ ++ force_assert(lua_gettop(L) == 1); /* only the function should remain on the stack */ + +- /* we are finished */ +- return HANDLER_FINISHED; +- } else if (MAGNET_RESTART_REQUEST == lua_return_value) { +- force_assert(lua_gettop(L) == 1); /* only the function should be on the stack */ +- +- return HANDLER_COMEBACK; +- } else { +- force_assert(lua_gettop(L) == 1); /* only the function should be on the stack */ +- +- return HANDLER_GO_ON; ++ return result; + } + } + +Index: lighttpd-1.4.37/src/mod_cml_funcs.c +=================================================================== +--- lighttpd-1.4.37/src/mod_cml_funcs.c (revision 3069) ++++ lighttpd-1.4.37/src/mod_cml_funcs.c (revision 3070) +@@ -37,6 +37,8 @@ + HASH HA1; + char hex[33]; + int n = lua_gettop(L); ++ size_t s_len; ++ const char *s; + + if (n != 1) { + lua_pushstring(L, "md5: expected one argument"); +@@ -48,8 +50,10 @@ + lua_error(L); + } + ++ s = lua_tolstring(L, 1, &s_len); ++ + li_MD5_Init(&Md5Ctx); +- li_MD5_Update(&Md5Ctx, (unsigned char *)lua_tostring(L, 1), lua_strlen(L, 1)); ++ li_MD5_Update(&Md5Ctx, (unsigned char *) s, (unsigned int) s_len); + li_MD5_Final(HA1, &Md5Ctx); + + li_tohex(hex, (const char*) HA1, 16); +@@ -79,7 +83,7 @@ + return 1; + } + +- lua_pushnumber(L, st.st_mtime); ++ lua_pushinteger(L, st.st_mtime); + + return 1; + } +@@ -121,7 +125,7 @@ + return 1; + } + +- /* push d into registry */ ++ /* push d into userdata */ + lua_pushlightuserdata(L, d); + lua_pushcclosure(L, f_dir_files_iter, 1); + +@@ -147,7 +151,7 @@ + return 1; + } + +- lua_pushnumber(L, S_ISREG(st.st_mode)); ++ lua_pushinteger(L, S_ISREG(st.st_mode)); + + return 1; + } +@@ -171,7 +175,7 @@ + return 1; + } + +- lua_pushnumber(L, S_ISDIR(st.st_mode)); ++ lua_pushinteger(L, S_ISDIR(st.st_mode)); + + return 1; + } +@@ -183,6 +187,8 @@ + char *r; + int n = lua_gettop(L); + struct memcache *mc; ++ size_t s_len; ++ const char *s; + + if (!lua_islightuserdata(L, lua_upvalueindex(1))) { + lua_pushstring(L, "where is my userdata ?"); +@@ -201,9 +207,8 @@ + lua_error(L); + } + +- if (NULL == (r = mc_aget(mc, +- (char*) lua_tostring(L, 1), lua_strlen(L, 1)))) { +- ++ s = lua_tolstring(L, 1, &s_len); ++ if (NULL == (r = mc_aget(mc, (char*) s, s_len))) { + lua_pushboolean(L, 0); + return 1; + } +@@ -217,6 +222,8 @@ + int f_memcache_get_string(lua_State *L) { + char *r; + int n = lua_gettop(L); ++ size_t s_len; ++ const char *s; + + struct memcache *mc; + +@@ -238,8 +245,8 @@ + lua_error(L); + } + +- if (NULL == (r = mc_aget(mc, +- (char*) lua_tostring(L, 1), lua_strlen(L, 1)))) { ++ s = lua_tolstring(L, 1, &s_len); ++ if (NULL == (r = mc_aget(mc, (char*) s, s_len))) { + lua_pushnil(L); + return 1; + } +@@ -254,6 +261,8 @@ + int f_memcache_get_long(lua_State *L) { + char *r; + int n = lua_gettop(L); ++ size_t s_len; ++ const char *s; + + struct memcache *mc; + +@@ -275,13 +284,13 @@ + lua_error(L); + } + +- if (NULL == (r = mc_aget(mc, +- (char*) lua_tostring(L, 1), lua_strlen(L, 1)))) { ++ s = lua_tolstring(L, 1, &s_len); ++ if (NULL == (r = mc_aget(mc, (char*) s, s_len))) { + lua_pushnil(L); + return 1; + } + +- lua_pushnumber(L, strtol(r, NULL, 10)); ++ lua_pushinteger(L, strtol(r, NULL, 10)); + + free(r); + diff --git a/package/lighttpd/Config.in b/package/lighttpd/Config.in index 2c101e7b046..f62ccb9c050 100644 --- a/package/lighttpd/Config.in +++ b/package/lighttpd/Config.in @@ -52,7 +52,7 @@ config BR2_PACKAGE_LIGHTTPD_WEBDAV config BR2_PACKAGE_LIGHTTPD_LUA bool "lua support" - select BR2_PACKAGE_LUA + depends on BR2_PACKAGE_LUA help Enable Lua support. Needed to support mod_magnet diff --git a/package/lighttpd/S50lighttpd b/package/lighttpd/S50lighttpd index 752402ce422..44ac257c18f 100644 --- a/package/lighttpd/S50lighttpd +++ b/package/lighttpd/S50lighttpd @@ -4,12 +4,12 @@ # start() { - echo -n "Starting lighttpd: " + printf "Starting lighttpd: " start-stop-daemon -S -q -p /var/run/lighttpd.pid --exec /usr/sbin/lighttpd -- -f /etc/lighttpd/lighttpd.conf echo "OK" } stop() { - echo -n "Stopping lighttpd: " + printf "Stopping lighttpd: " start-stop-daemon -K -q -p /var/run/lighttpd.pid echo "OK" } diff --git a/package/lighttpd/lighttpd.hash b/package/lighttpd/lighttpd.hash index f74727c63cb..7ae17f23077 100644 --- a/package/lighttpd/lighttpd.hash +++ b/package/lighttpd/lighttpd.hash @@ -1,2 +1,2 @@ # From http://www.lighttpd.net/ -sha256 897ab6b1cc7bd51671f8af759e7846245fbbca0685c30017e93a5882a9ac1a53 lighttpd-1.4.36.tar.xz +sha256 7eb9a1853c3d6dd5851682b0733a729ba4158d6bdff80974d5ef5f1f6887365b lighttpd-1.4.39.tar.xz diff --git a/package/lighttpd/lighttpd.mk b/package/lighttpd/lighttpd.mk index c75eeff243f..01463737f38 100644 --- a/package/lighttpd/lighttpd.mk +++ b/package/lighttpd/lighttpd.mk @@ -5,7 +5,7 @@ ################################################################################ LIGHTTPD_VERSION_MAJOR = 1.4 -LIGHTTPD_VERSION = $(LIGHTTPD_VERSION_MAJOR).36 +LIGHTTPD_VERSION = $(LIGHTTPD_VERSION_MAJOR).39 LIGHTTPD_SOURCE = lighttpd-$(LIGHTTPD_VERSION).tar.xz LIGHTTPD_SITE = http://download.lighttpd.net/lighttpd/releases-$(LIGHTTPD_VERSION_MAJOR).x LIGHTTPD_LICENSE = BSD-3c diff --git a/package/linknx/Config.in b/package/linknx/Config.in index 9982f3159d5..36838fed6c0 100644 --- a/package/linknx/Config.in +++ b/package/linknx/Config.in @@ -1,7 +1,8 @@ config BR2_PACKAGE_LINKNX bool "linknx" select BR2_PACKAGE_LIBPTHSEM - select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC + select BR2_PACKAGE_ARGP_STANDALONE \ + if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_MMU # libpthsem help diff --git a/package/links/links.hash b/package/links/links.hash index 910bb69d2fc..2d9a7b32360 100644 --- a/package/links/links.hash +++ b/package/links/links.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 e2d4e193eb3147f0d745e28d37d510edb22697707e329cbe361bb79037bae332 links-2.9.tar.gz +sha256 98411811ded1e8028f5aed708dd7d8ec0ae63ce24c2991a0241a989b7d09d84e links-2.12.tar.bz2 diff --git a/package/links/links.mk b/package/links/links.mk index 3b9f011a4ac..62f91a32e39 100644 --- a/package/links/links.mk +++ b/package/links/links.mk @@ -4,7 +4,8 @@ # ################################################################################ -LINKS_VERSION = 2.9 +LINKS_VERSION = 2.12 +LINKS_SOURCE = links-$(LINKS_VERSION).tar.bz2 LINKS_SITE = http://links.twibright.com/download LINKS_DEPENDENCIES = host-pkgconf LINKS_LICENSE = GPLv2+ @@ -27,23 +28,67 @@ else LINKS_CONF_OPTS += --without-directfb endif ifeq ($(BR2_PACKAGE_JPEG),y) +LINKS_CONF_OPTS += --with-libjpeg LINKS_DEPENDENCIES += jpeg +else +LINKS_CONF_OPTS += --without-libjpeg +endif +ifeq ($(BR2_PACKAGE_LIBRSVG),y) +LINKS_CONF_OPTS += --with-librsvg +LINKS_DEPENDENCIES += librsvg +else +LINKS_CONF_OPTS += --without-librsvg endif ifeq ($(BR2_PACKAGE_TIFF),y) +LINKS_CONF_OPTS += --with-libtiff LINKS_DEPENDENCIES += tiff +else +LINKS_CONF_OPTS += --without-libtiff endif +else +LINKS_CONF_OPTS += --disable-graphics endif ifeq ($(BR2_PACKAGE_BZIP2),y) +LINKS_CONF_OPTS += --with-bzip2 LINKS_DEPENDENCIES += bzip2 +else +LINKS_CONF_OPTS += --without-bzip2 +endif + +ifeq ($(BR2_PACKAGE_GPM),y) +LINKS_CONF_OPTS += --with-gpm +LINKS_DEPENDENCIES += gpm +else +LINKS_CONF_OPTS += --without-gpm +endif + +ifeq ($(BR2_PACKAGE_LIBEVENT),y) +LINKS_CONF_OPTS += --with-libevent +LINKS_DEPENDENCIES += libevent +else +LINKS_CONF_OPTS += --without-libevent endif ifeq ($(BR2_PACKAGE_OPENSSL),y) +LINKS_CONF_OPTS += --with-ssl --enable-ssl-pkgconfig LINKS_DEPENDENCIES += openssl +else +LINKS_CONF_OPTS += --without-ssl +endif + +ifeq ($(BR2_PACKAGE_XZ),y) +LINKS_CONF_OPTS += --with-lzma +LINKS_DEPENDENCIES += xz +else +LINKS_CONF_OPTS += --without-lzma endif ifeq ($(BR2_PACKAGE_ZLIB),y) +LINKS_CONF_OPTS += --with-zlib LINKS_DEPENDENCIES += zlib +else +LINKS_CONF_OPTS += --without-zlib endif $(eval $(autotools-package)) diff --git a/package/linux-firmware/Config.in b/package/linux-firmware/Config.in index 2e4c2059374..d8389864ada 100644 --- a/package/linux-firmware/Config.in +++ b/package/linux-firmware/Config.in @@ -155,10 +155,40 @@ config BR2_PACKAGE_LINUX_FIRMWARE_LIBERTAS_SD8688 Firmware files for the Marvell SD8688 module config BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_SD8787 - bool "Marvell Wifi-Ex SD 8787" + bool "Marvell Wifi-Ex 8787 SDIO" help Firmware files for the Marvell Wifi-Ex 8787 module on SDIO. +config BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_SD8797 + bool "Marvell Wifi-Ex 8797 SDIO" + help + Firmware files for the Marvell Wifi-Ex 8797 module on SDIO. + +config BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8797 + bool "Marvell Wifi-Ex 8797 USB" + help + Firmware files for the Marvell Wifi-Ex 8797 module on USB. + +config BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_SD8887 + bool "Marvell Wifi-Ex 8887 SDIO" + help + Firmware files for the Marvell Wifi-Ex 8887 module on SDIO. + +config BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_SD8897 + bool "Marvell Wifi-Ex 8897 SDIO" + help + Firmware files for the Marvell Wifi-Ex 8897 module on SDIO. + +config BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8897 + bool "Marvell Wifi-Ex 8897 USB" + help + Firmware files for the Marvell Wifi-Ex 8897 module on USB. + +config BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_PCIE8897 + bool "Marvell Wifi-Ex 8897 PCI-E" + help + Firmware files for the Marvell Wifi-Ex 8897 module on PCI-E. + config BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61 bool "Ralink rt2501/rt61" help diff --git a/package/linux-firmware/linux-firmware.mk b/package/linux-firmware/linux-firmware.mk index 24485bc3fda..53c4132b8b8 100644 --- a/package/linux-firmware/linux-firmware.mk +++ b/package/linux-firmware/linux-firmware.mk @@ -4,7 +4,7 @@ # ################################################################################ -LINUX_FIRMWARE_VERSION = 3161bfa479d5e9ed4f46b57df9bcecbbc4f8eb3c +LINUX_FIRMWARE_VERSION = bbe4917c054eb0a73e250c6363341e3bf6725839 LINUX_FIRMWARE_SITE = http://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git LINUX_FIRMWARE_SITE_METHOD = git @@ -45,9 +45,9 @@ LINUX_FIRMWARE_FILES += \ rtlwifi/rtl8192cfw.bin rtlwifi/rtl8192cfwU.bin \ rtlwifi/rtl8192cfwU_B.bin rtlwifi/rtl8192cufw.bin \ rtlwifi/rtl8192defw.bin rtlwifi/rtl8192sefw.bin \ - rtlwifi/rtl8188efw.bin rtlwifi/rtl8192cufw_A.bin \ - rtlwifi/rtl8192cufw_B.bin rtlwifi/rtl8192cufw_TMSC.bin \ - rtlwifi/rtl8188eufw.bin + rtlwifi/rtl8188efw.bin rtlwifi/rtl8188eufw.bin \ + rtlwifi/rtl8192cufw_A.bin \ + rtlwifi/rtl8192cufw_B.bin rtlwifi/rtl8192cufw_TMSC.bin LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.rtlwifi_firmware.txt endif @@ -129,6 +129,42 @@ LINUX_FIRMWARE_FILES += mrvl/sd8787_uapsta.bin LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.Marvell endif +# sd8797 +ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_SD8797),y) +LINUX_FIRMWARE_FILES += mrvl/sd8797_uapsta.bin +LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.Marvell +endif + +# usb8797 +ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8797),y) +LINUX_FIRMWARE_FILES += mrvl/usb8797_uapsta.bin +LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.Marvell +endif + +# sd8887 +ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_SD8887),y) +LINUX_FIRMWARE_FILES += mrvl/sd8887_uapsta.bin +LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.Marvell +endif + +# sd8897 +ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_SD8897),y) +LINUX_FIRMWARE_FILES += mrvl/sd8897_uapsta.bin +LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.Marvell +endif + +# usb8897 +ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_USB8897),y) +LINUX_FIRMWARE_FILES += mrvl/usb8897_uapsta.bin +LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.Marvell +endif + +# pcie8897 +ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_PCIE8897),y) +LINUX_FIRMWARE_FILES += mrvl/pcie8897_uapsta.bin +LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.Marvell +endif + # wl127x ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL127X),y) # wl1271-nvs.bin is a symlink to wl127x-nvs.bin @@ -225,14 +261,14 @@ LINUX_FIRMWARE_FILES += \ endif ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_CXGB4_T4),y) -# cxgb4/t4fw.bin is a symlink to cxgb4/t4fw-1.11.27.0.bin -LINUX_FIRMWARE_FILES += cxgb4/t4fw-1.11.27.0.bin cxgb4/t4fw.bin +# cxgb4/t4fw.bin is a symlink to cxgb4/t4fw-1.14.4.0.bin +LINUX_FIRMWARE_FILES += cxgb4/t4fw-1.14.4.0.bin cxgb4/t4fw.bin LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.chelsio_firmware endif ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_CXGB4_T5),y) -# cxgb4/t5fw.bin is a symlink to cxgb4/t5fw-1.11.27.0.bin -LINUX_FIRMWARE_FILES += cxgb4/t5fw-1.11.27.0.bin cxgb4/t5fw.bin +# cxgb4/t5fw.bin is a symlink to cxgb4/t5fw-1.14.4.0.bin +LINUX_FIRMWARE_FILES += cxgb4/t5fw-1.14.4.0.bin cxgb4/t5fw.bin LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.chelsio_firmware endif @@ -293,7 +329,9 @@ LINUX_FIRMWARE_FILES += \ brcm/bcm43xx-0.fw brcm/bcm43xx_hdr-0.fw \ brcm/bcm4329-fullmac-4.bin brcm/brcmfmac4329-sdio.bin \ brcm/brcmfmac4330-sdio.bin brcm/brcmfmac4334-sdio.bin \ - brcm/brcmfmac4335-sdio.bin + brcm/brcmfmac4335-sdio.bin brcm/brcmfmac4339-sdio.bin \ + brcm/brcmfmac4350-pcie.bin brcm/brcmfmac4354-sdio.bin \ + brcm/brcmfmac4356-pcie.bin brcm/brcmfmac4371-pcie.bin LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.broadcom_bcm43xx endif @@ -302,7 +340,11 @@ ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX),y) LINUX_FIRMWARE_FILES += \ brcm/brcmfmac43143.bin brcm/brcmfmac43143-sdio.bin \ brcm/brcmfmac43236b.bin brcm/brcmfmac43241b0-sdio.bin \ - brcm/brcmfmac43241b4-sdio.bin brcm/brcmfmac43362-sdio.bin + brcm/brcmfmac43241b4-sdio.bin brcm/brcmfmac43241b5-sdio.bin \ + brcm/brcmfmac43242a.bin brcm/brcmfmac43340-sdio.bin \ + brcm/brcmfmac43362-sdio.bin brcm/brcmfmac43455-sdio.bin \ + brcm/brcmfmac43569.bin brcm/brcmfmac43570-pcie.bin \ + brcm/brcmfmac43602-pcie.ap.bin brcm/brcmfmac43602-pcie.bin LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.broadcom_bcm43xx endif diff --git a/package/linux-fusion/0002-Fix-mismatched-conversion-spec-and-value-in-printk.patch b/package/linux-fusion/0002-Fix-mismatched-conversion-spec-and-value-in-printk.patch new file mode 100644 index 00000000000..a3f8bb7812b --- /dev/null +++ b/package/linux-fusion/0002-Fix-mismatched-conversion-spec-and-value-in-printk.patch @@ -0,0 +1,29 @@ +From debb9cafe9b7cc2b286399ecc8e3210480061c70 Mon Sep 17 00:00:00 2001 +From: Marc Gonzalez +Date: Mon, 11 Jan 2016 15:42:16 +0100 +Subject: [PATCH] Fix mismatched conversion spec and value in printk + +linux/drivers/char/fusion/fusiondev.c:775:38: warning: +format '%ld' expects argument of type 'long int', but argument 7 has type 'int' + +Subtracting two pointers yields a ptrdiff_t value, and ptrdiff_t is not +necessarily an alias for long int. Cast the value to long int. + +Signed-off-by: Marc Gonzalez +--- + linux/drivers/char/fusion/fusiondev.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/linux/drivers/char/fusion/fusiondev.c b/linux/drivers/char/fusion/fusiondev.c +index 7003407f7e1e..dfb5f8ecb81a 100644 +--- a/linux/drivers/char/fusion/fusiondev.c ++++ b/linux/drivers/char/fusion/fusiondev.c +@@ -775,7 +775,7 @@ call_ioctl(FusionDev * dev, Fusionee * fusionee, + printk( KERN_ERR "fusion: FUSION_CALL_EXECUTE3 with errorneous call (failed on previous ioctl call), " + "call id %d, flags 0x%08x, arg %d, length %u, serial %u, %ld\n", + execute3.call_id, execute3.flags, execute3.call_arg, execute3.length, execute3.ret_length, +- (execute3_bin - (FusionCallExecute3 *) arg) ); ++ (long int)(execute3_bin - (FusionCallExecute3 *) arg) ); + return -EIO; + } + diff --git a/package/linux-fusion/0003-Fix-fusion-Unknown-symbol-tasklist_lock-err-0.patch b/package/linux-fusion/0003-Fix-fusion-Unknown-symbol-tasklist_lock-err-0.patch new file mode 100644 index 00000000000..b14ec9d90af --- /dev/null +++ b/package/linux-fusion/0003-Fix-fusion-Unknown-symbol-tasklist_lock-err-0.patch @@ -0,0 +1,38 @@ +From 9fcd5003c0363af140a06aba94e62c9e1ea0381e Mon Sep 17 00:00:00 2001 +From: Marc Gonzalez +Date: Mon, 11 Jan 2016 16:45:30 +0100 +Subject: [PATCH] Fix fusion: Unknown symbol tasklist_lock (err 0) + +Commit 28f6569ab7d0 renamed TREE_PREEMPT_RCU to PREEMPT_RCU in 3.19 +As a result, the code incorrectly falls back to using tasklist_lock +(which was made private in 2.6.18) + +Always use rcu_read_lock on modern kernels. + +Signed-off-by: Marc Gonzalez +--- + linux/drivers/char/fusion/fusionee.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/linux/drivers/char/fusion/fusionee.c b/linux/drivers/char/fusion/fusionee.c +index ef067f5bc831..70cd0a665f98 100644 +--- a/linux/drivers/char/fusion/fusionee.c ++++ b/linux/drivers/char/fusion/fusionee.c +@@ -925,7 +925,7 @@ fusionee_kill(FusionDev * dev, + if (f != fusionee && (!target || target == f->id)) { + struct task_struct *p; + +-#if defined(CONFIG_TREE_RCU) || defined(CONFIG_TREE_PREEMPT_RCU) || defined(CONFIG_TINY_RCU) || defined(rcu_read_lock) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) + rcu_read_lock(); + #else + read_lock(&tasklist_lock); +@@ -946,7 +946,7 @@ fusionee_kill(FusionDev * dev, + } + } + +-#if defined(CONFIG_TREE_RCU) || defined(CONFIG_TREE_PREEMPT_RCU) || defined(CONFIG_TINY_RCU) || defined(rcu_read_unlock) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) + rcu_read_unlock(); + #else + read_unlock(&tasklist_lock); diff --git a/package/linux-fusion/0004-Port-one-one_udp.c-to-Linux-4.1.patch b/package/linux-fusion/0004-Port-one-one_udp.c-to-Linux-4.1.patch new file mode 100644 index 00000000000..e1bff64f3b9 --- /dev/null +++ b/package/linux-fusion/0004-Port-one-one_udp.c-to-Linux-4.1.patch @@ -0,0 +1,99 @@ +From be288b60278c78eccfd347aacf4d3dd8771215a9 Mon Sep 17 00:00:00 2001 +From: Marc Gonzalez +Date: Tue, 12 Jan 2016 14:01:42 +0100 +Subject: [PATCH] Port one/one_udp.c to Linux 4.1 + +Kernel commit c0371da6047a replaced msg_iov and msg_iovlen with msg_iter +in struct msghdr since 3.19 + +one/one_udp.c: In function 'ksocket_send_iov': +one/one_udp.c:186:9: error: 'struct msghdr' has no member named 'msg_iov' +one/one_udp.c:187:9: error: 'struct msghdr' has no member named 'msg_iovlen' + +one/one_udp.c: In function 'ksocket_receive': +one/one_udp.c:221:9: error: 'struct msghdr' has no member named 'msg_iov' +one/one_udp.c:222:9: error: 'struct msghdr' has no member named 'msg_iovlen' + +The iov_iter interface +https://lwn.net/Articles/625077/ + +Kernel commit d8725c86aeba dropped the len parameter in sock_sendmsg +since 4.1 + +one/one_udp.c: In function 'ksocket_send_iov': +one/one_udp.c:192:13: error: too many arguments to function 'sock_sendmsg' + +Signed-off-by: Marc Gonzalez +--- + one/one_udp.c | 30 +++++++++++++++--------------- + 1 file changed, 15 insertions(+), 15 deletions(-) + +diff --git a/one/one_udp.c b/one/one_udp.c +index 26b9e6a1f729..b1daae164cdf 100644 +--- a/one/one_udp.c ++++ b/one/one_udp.c +@@ -161,7 +161,7 @@ ksocket_send_iov( struct socket *sock, + const struct iovec *iov, + size_t iov_count ) + { +- struct msghdr msg; ++ struct msghdr msg = { addr, sizeof *addr }; + mm_segment_t oldfs; + int size = 0; + size_t len = 0; +@@ -178,18 +178,20 @@ ksocket_send_iov( struct socket *sock, + for (i=0; i -Date: Fri, 24 Jun 2011 15:51:00 +0200 -Subject: [PATCH] headers_install: fix __packed in exported kernel headers -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -checkpatch.pl warns about using __attribute__((packed)) in kernel -headers: "__packed is preferred over __attribute__((packed))". If one -follows that advice it could cause problems in the exported header -files, because the outside world doesn't know about this shortcut. - -For example busybox will fail to compile: - CC miscutils/ubi_attach_detach.o - In file included from miscutils/ubi_attach_detach.c:27:0: - /usr/include/mtd/ubi-user.h:330:3: error: conflicting types for ‘__packed’ - /usr/include/mtd/ubi-user.h:314:3: note: previous declaration of ‘__packed’ was here -... - -Fix the problem by substituting __packed with __attribute__((packed)) in -the header_install.pl script. - -Cc: Artem Bityutskiy -CC: Joe Perches -Signed-off-by: Markus Trippelsdorf -Signed-off-by: Michal Marek ---- - scripts/headers_install.pl | 1 + - 1 files changed, 1 insertions(+), 0 deletions(-) - -diff --git a/scripts/headers_install.pl b/scripts/headers_install.pl -index efb3be1..48462be 100644 ---- a/scripts/headers_install.pl -+++ b/scripts/headers_install.pl -@@ -35,6 +35,7 @@ foreach my $file (@files) { - $line =~ s/([\s(])__iomem\s/$1/g; - $line =~ s/\s__attribute_const__\s/ /g; - $line =~ s/\s__attribute_const__$//g; -+ $line =~ s/\b__packed\b/__attribute__((packed))/g; - $line =~ s/^#include //; - $line =~ s/(^|\s)(inline)\b/$1__$2__/g; - $line =~ s/(^|\s)(asm)\b(\s|[(]|$)/$1__$2__$3/g; --- -1.7.5.4 - diff --git a/package/linux-headers/Config.in b/package/linux-headers/Config.in new file mode 100644 index 00000000000..0ea95164d69 --- /dev/null +++ b/package/linux-headers/Config.in @@ -0,0 +1,2 @@ +config BR2_PACKAGE_LINUX_HEADERS + bool diff --git a/package/linux-headers/Config.in.host b/package/linux-headers/Config.in.host index baf098af54d..d6cb238368a 100644 --- a/package/linux-headers/Config.in.host +++ b/package/linux-headers/Config.in.host @@ -5,17 +5,16 @@ comment "Kernel Header Options" choice prompt "Kernel Headers" - default BR2_KERNEL_HEADERS_4_1 + default BR2_KERNEL_HEADERS_AS_KERNEL if BR2_LINUX_KERNEL + default BR2_KERNEL_HEADERS_4_4 help Select the version of kernel header files you wish to use. You must select the correct set of header files to match the kernel you intend to use on your target system. - config BR2_KERNEL_HEADERS_3_0 - bool "Linux 3.0.x kernel headers" - depends on BR2_DEPRECATED_SINCE_2014_08 - depends on !BR2_arc && !BR2_nios2 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + config BR2_KERNEL_HEADERS_AS_KERNEL + bool "Same as kernel" + depends on BR2_LINUX_KERNEL config BR2_KERNEL_HEADERS_3_2 bool "Linux 3.2.x kernel headers" @@ -32,40 +31,16 @@ choice depends on !BR2_nios2 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 - config BR2_KERNEL_HEADERS_3_11 - bool "Linux 3.11.x kernel headers" - depends on BR2_DEPRECATED_SINCE_2014_08 - depends on !BR2_nios2 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11 - config BR2_KERNEL_HEADERS_3_12 bool "Linux 3.12.x kernel headers" depends on !BR2_nios2 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 - config BR2_KERNEL_HEADERS_3_13 - bool "Linux 3.13.x kernel headers" - depends on BR2_DEPRECATED_SINCE_2014_08 - depends on !BR2_nios2 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 - config BR2_KERNEL_HEADERS_3_14 bool "Linux 3.14.x kernel headers" depends on !BR2_nios2 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 - config BR2_KERNEL_HEADERS_3_15 - bool "Linux 3.15.x kernel headers" - depends on BR2_DEPRECATED_SINCE_2014_08 - depends on !BR2_nios2 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15 - - config BR2_KERNEL_HEADERS_3_16 - bool "Linux 3.16.x kernel headers" - depends on BR2_DEPRECATED_SINCE_2015_02 - depends on !BR2_nios2 - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 - config BR2_KERNEL_HEADERS_3_17 bool "Linux 3.17.x kernel headers" depends on BR2_DEPRECATED_SINCE_2015_05 @@ -91,6 +66,19 @@ choice bool "Linux 4.1.x kernel headers" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 + config BR2_KERNEL_HEADERS_4_2 + bool "Linux 4.2.x kernel headers" + depends on BR2_DEPRECATED_SINCE_2016_02 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + + config BR2_KERNEL_HEADERS_4_3 + bool "Linux 4.3.x kernel headers" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 + + config BR2_KERNEL_HEADERS_4_4 + bool "Linux 4.4.x kernel headers" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + config BR2_KERNEL_HEADERS_VERSION bool "Manually specified Linux version" endchoice @@ -104,7 +92,7 @@ config BR2_DEFAULT_KERNEL_VERSION choice bool "Custom kernel headers series" - depends on BR2_KERNEL_HEADERS_VERSION + depends on BR2_KERNEL_HEADERS_VERSION || BR2_KERNEL_HEADERS_AS_KERNEL default BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_REALLY_OLD help Set to the kernel headers series you manually set above. @@ -112,6 +100,18 @@ choice This is used to hide/show some packages that have strict requirements on the version of kernel headers. +config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_4 + bool "4.4.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + +config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_3 + bool "4.3.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 + +config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_2 + bool "4.2.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1 bool "4.1.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 @@ -207,19 +207,17 @@ endchoice config BR2_DEFAULT_KERNEL_HEADERS string - default "3.0.101" if BR2_KERNEL_HEADERS_3_0 - default "3.2.69" if BR2_KERNEL_HEADERS_3_2 - default "3.4.108" if BR2_KERNEL_HEADERS_3_4 - default "3.10.85" if BR2_KERNEL_HEADERS_3_10 - default "3.11.10" if BR2_KERNEL_HEADERS_3_11 - default "3.12.45" if BR2_KERNEL_HEADERS_3_12 - default "3.13.11" if BR2_KERNEL_HEADERS_3_13 - default "3.14.49" if BR2_KERNEL_HEADERS_3_14 - default "3.15.10" if BR2_KERNEL_HEADERS_3_15 - default "3.16.7" if BR2_KERNEL_HEADERS_3_16 + default "3.2.78" if BR2_KERNEL_HEADERS_3_2 + default "3.4.110" if BR2_KERNEL_HEADERS_3_4 + default "3.10.98" if BR2_KERNEL_HEADERS_3_10 + default "3.12.55" if BR2_KERNEL_HEADERS_3_12 + default "3.14.62" if BR2_KERNEL_HEADERS_3_14 default "3.17.8" if BR2_KERNEL_HEADERS_3_17 - default "3.18.19" if BR2_KERNEL_HEADERS_3_18 + default "3.18.27" if BR2_KERNEL_HEADERS_3_18 default "3.19.8" if BR2_KERNEL_HEADERS_3_19 default "4.0.9" if BR2_KERNEL_HEADERS_4_0 - default "4.1.4" if BR2_KERNEL_HEADERS_4_1 + default "4.1.18" if BR2_KERNEL_HEADERS_4_1 + default "4.2.8" if BR2_KERNEL_HEADERS_4_2 + default "4.3.6" if BR2_KERNEL_HEADERS_4_3 + default "4.4.3" if BR2_KERNEL_HEADERS_4_4 default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION diff --git a/package/linux-headers/linux-headers.mk b/package/linux-headers/linux-headers.mk index ca68a5ba6a4..09007783141 100644 --- a/package/linux-headers/linux-headers.mk +++ b/package/linux-headers/linux-headers.mk @@ -7,6 +7,72 @@ # This package is used to provide Linux kernel headers for the # internal toolchain backend. +ifeq ($(BR2_KERNEL_HEADERS_AS_KERNEL),y) + +LINUX_HEADERS_VERSION = $(call qstrip,$(BR2_LINUX_KERNEL_VERSION)) + +# Compute LINUX_HEADERS_SOURCE and LINUX_HEADERS_SITE from the configuration +ifeq ($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y) +LINUX_HEADERS_TARBALL = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION)) +LINUX_HEADERS_SITE = $(patsubst %/,%,$(dir $(LINUX_HEADERS_TARBALL))) +LINUX_HEADERS_SOURCE = $(notdir $(LINUX_HEADERS_TARBALL)) +BR_NO_CHECK_HASH_FOR += $(LINUX_HEADERS_SOURCE) +else ifeq ($(BR2_LINUX_KERNEL_CUSTOM_LOCAL),y) +LINUX_HEADERS_SITE = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_LOCAL_PATH)) +LINUX_HEADERS_SITE_METHOD = local +else ifeq ($(BR2_LINUX_KERNEL_CUSTOM_GIT),y) +LINUX_HEADERS_SITE = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_REPO_URL)) +LINUX_HEADERS_SITE_METHOD = git +# use same git tarball as linux kernel +LINUX_HEADERS_SOURCE = linux-$(LINUX_HEADERS_VERSION).tar.gz +else ifeq ($(BR2_LINUX_KERNEL_CUSTOM_HG),y) +LINUX_HEADERS_SITE = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_REPO_URL)) +LINUX_HEADERS_SITE_METHOD = hg +# use same hg tarball as linux kernel +LINUX_HEADERS_SOURCE = linux-$(LINUX_HEADERS_VERSION).tar.gz +else +LINUX_HEADERS_SOURCE = linux-$(LINUX_HEADERS_VERSION).tar.xz +ifeq ($(BR2_LINUX_KERNEL_CUSTOM_VERSION),y) +BR_NO_CHECK_HASH_FOR += $(LINUX_HEADERS_SOURCE) +endif +# In X.Y.Z, get X and Y. We replace dots and dashes by spaces in order +# to use the $(word) function. We support versions such as 4.0, 3.1, +# 2.6.32, 2.6.32-rc1, 3.0-rc6, etc. +ifeq ($(findstring x2.6.,x$(LINUX_HEADERS_VERSION)),x2.6.) +LINUX_HEADERS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/v2.6 +else ifeq ($(findstring x3.,x$(LINUX_HEADERS_VERSION)),x3.) +LINUX_HEADERS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/v3.x +else ifeq ($(findstring x4.,x$(LINUX_HEADERS_VERSION)),x4.) +LINUX_HEADERS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/v4.x +endif +# release candidates are in testing/ subdir +ifneq ($(findstring -rc,$(LINUX_HEADERS_VERSION)),) +LINUX_HEADERS_SITE := $(LINUX_HEADERS_SITE)/testing +endif # -rc +endif + +LINUX_HEADERS_PATCHES = $(call qstrip,$(BR2_LINUX_KERNEL_PATCH)) + +# We rely on the generic package infrastructure to download and apply +# remote patches (downloaded from ftp, http or https). For local +# patches, we can't rely on that infrastructure, because there might +# be directories in the patch list (unlike for other packages). +LINUX_HEADERS_PATCH = $(filter ftp://% http://% https://%,$(LINUX_HEADERS_PATCHES)) + +define LINUX_HEADERS_APPLY_LOCAL_PATCHES + for p in $(filter-out ftp://% http://% https://%,$(LINUX_HEADERS_PATCHES)) ; do \ + if test -d $$p ; then \ + $(APPLY_PATCHES) $(@D) $$p \*.patch || exit 1 ; \ + else \ + $(APPLY_PATCHES) $(@D) `dirname $$p` `basename $$p` || exit 1; \ + fi \ + done +endef + +LINUX_HEADERS_POST_PATCH_HOOKS += LINUX_HEADERS_APPLY_LOCAL_PATCHES + +else # ! BR2_KERNEL_HEADERS_AS_KERNEL + LINUX_HEADERS_VERSION = $(call qstrip,$(BR2_DEFAULT_KERNEL_HEADERS)) ifeq ($(findstring x2.6.,x$(LINUX_HEADERS_VERSION)),x2.6.) LINUX_HEADERS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/v2.6 @@ -17,6 +83,11 @@ LINUX_HEADERS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/v4.x endif LINUX_HEADERS_SOURCE = linux-$(LINUX_HEADERS_VERSION).tar.xz +endif # ! BR2_KERNEL_HEADERS_AS_KERNEL + +LINUX_HEADERS_LICENSE = GPLv2 +LINUX_HEADERS_LICENSE_FILES = COPYING + LINUX_HEADERS_INSTALL_STAGING = YES # linux-headers is part of the toolchain so disable the toolchain dependency @@ -39,6 +110,7 @@ define LINUX_HEADERS_CONFIGURE_CMDS HOSTCC="$(HOSTCC)" \ HOSTCFLAGS="$(HOSTCFLAGS)" \ HOSTCXX="$(HOSTCXX)" \ + INSTALL_HDR_PATH=$(@D)/usr \ headers_install) endef @@ -53,7 +125,7 @@ define LINUX_HEADERS_INSTALL_STAGING_CMDS headers_install) endef -ifeq ($(BR2_KERNEL_HEADERS_VERSION),y) +ifeq ($(BR2_KERNEL_HEADERS_VERSION)$(BR2_KERNEL_HEADERS_AS_KERNEL),y) define LINUX_HEADERS_CHECK_VERSION $(call check_kernel_headers_version,\ $(STAGING_DIR),\ diff --git a/package/linux-pam/Config.in b/package/linux-pam/Config.in index 6b92886cf1a..f5088b967fc 100644 --- a/package/linux-pam/Config.in +++ b/package/linux-pam/Config.in @@ -10,11 +10,12 @@ config BR2_PACKAGE_LINUX_PAM # https://lists.fedorahosted.org/pipermail/linux-pam-commits/2012-February/000105.html # for details. depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam help A Security Framework that Provides Authentication for Applications http://linux-pam.org -comment "linux-pam needs a toolchain w/ wchar, locale, dynamic library" +comment "linux-pam needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ - || BR2_STATIC_LIBS + || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/liquid-dsp/0001-configure.ac-use-AC_CONFIG_MACRO_DIR.patch b/package/liquid-dsp/0001-configure.ac-use-AC_CONFIG_MACRO_DIR.patch new file mode 100644 index 00000000000..c51f587813e --- /dev/null +++ b/package/liquid-dsp/0001-configure.ac-use-AC_CONFIG_MACRO_DIR.patch @@ -0,0 +1,45 @@ +From c9d239490d47d5dd3d7d7b8b7d9007171c5f60ce Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 11 Oct 2015 15:27:09 +0200 +Subject: [PATCH] configure.ac: use AC_CONFIG_MACRO_DIR + +Instead of having to explicitly pass -I./scripts when running aclocal, +use the AC_CONFIG_MACRO_DIR() macro in configure.ac. This allows to +use "autoreconf" normally, without any hacks. + +Submitted upstream at https://github.com/jgaeddert/liquid-dsp/pull/15. + +Signed-off-by: Thomas Petazzoni +--- + bootstrap.sh | 2 +- + configure.ac | 1 + + 2 files changed, 2 insertions(+), 1 deletion(-) + +diff --git a/bootstrap.sh b/bootstrap.sh +index 640e01d..eb4894e 100755 +--- a/bootstrap.sh ++++ b/bootstrap.sh +@@ -27,7 +27,7 @@ + # + + rm -f config.cache aclocal.m4 +-aclocal -I./scripts ++aclocal + autoconf + autoheader + #automake --foreign --add-missing +diff --git a/configure.ac b/configure.ac +index a9ad1d7..3b1ba68 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -25,6 +25,7 @@ + + AC_INIT([liquid-dsp],[1.2.0],[support@liquidsdr.org]) + AC_CONFIG_SRCDIR([src/libliquid.c]) ++AC_CONFIG_MACRO_DIR([scripts]) + + # permit auxiliary scripts directory (e.g. config.sub, config.guess, install-sh) + AC_CONFIG_AUX_DIR(scripts/) +-- +2.6.1 + diff --git a/package/liquid-dsp/Config.in b/package/liquid-dsp/Config.in new file mode 100644 index 00000000000..ad887cb5615 --- /dev/null +++ b/package/liquid-dsp/Config.in @@ -0,0 +1,28 @@ +comment "liquid-dsp requires a (e)glibc/musl toolchain w/ dynamic library" + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC + depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL) || BR2_STATIC_LIBS + +config BR2_PACKAGE_LIQUID_DSP + bool "liquid-dsp" + depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_MUSL + depends on !BR2_STATIC_LIBS + # These result in internal compiler error + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC + help + Liquid-DSP is a free and open-source signal processing + library for software-defined radios written in C. Its + purpose is to provide a set of extensible DSP modules that + do no rely on external dependencies or cumbersome + frameworks. + + http://liquidsdr.org/ + +if BR2_PACKAGE_LIQUID_DSP + +config BR2_PACKAGE_LIQUID_DSP_FAST + bool "optimize for speed over accuracy" + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH + help + Optimize for speed over accuracy. + +endif diff --git a/package/liquid-dsp/liquid-dsp.hash b/package/liquid-dsp/liquid-dsp.hash new file mode 100644 index 00000000000..5c1c0a8c279 --- /dev/null +++ b/package/liquid-dsp/liquid-dsp.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 4b6dcb0846ed884c55984494adef721f910ac6f895174b31ec52138263842637 liquid-dsp-df5a459fa05dba4199c1299555891104cc1fdca7.tar.gz diff --git a/package/liquid-dsp/liquid-dsp.mk b/package/liquid-dsp/liquid-dsp.mk new file mode 100644 index 00000000000..e7bb686327a --- /dev/null +++ b/package/liquid-dsp/liquid-dsp.mk @@ -0,0 +1,54 @@ +################################################################################ +# +# liquid-dsp +# +################################################################################ + +LIQUID_DSP_VERSION = df5a459fa05dba4199c1299555891104cc1fdca7 +LIQUID_DSP_SITE = $(call github,jgaeddert,liquid-dsp,$(LIQUID_DSP_VERSION)) +LIQUID_DSP_LICENSE = MIT +LIQUID_DSP_LICENSE_FILES = LICENSE +LIQUID_DSP_INSTALL_STAGING = YES +LIQUID_DSP_AUTORECONF = YES + +LIQUID_DSP_CONF_ENV = \ + ax_cv_have_mmx_ext=$(if $(BR2_X86_CPU_HAS_MMX),yes,no) \ + ax_cv_have_sse_ext=$(if $(BR2_X86_CPU_HAS_SSE),yes,no) \ + ax_cv_have_sse2_ext=$(if $(BR2_X86_CPU_HAS_SSE2),yes,no) \ + ax_cv_have_sse3_ext=$(if $(BR2_X86_CPU_HAS_SSE3),yes,no) \ + ax_cv_have_ssse3_ext=$(if $(BR2_X86_CPU_HAS_SSSE3),yes,no) \ + ax_cv_have_sse41_ext=$(if $(BR2_X86_CPU_HAS_SSE4),yes,no) \ + ax_cv_have_sse42_ext=$(if $(BR2_X86_CPU_HAS_SSE42),yes,no) \ + ax_cv_have_avx_ext=$(if $(BR2_X86_CPU_HAS_AVX),yes,no) + +LIQUID_DSP_CFLAGS = $(TARGET_CFLAGS) +LIQUID_DSP_LDFLAGS = $(TARGET_LDFLAGS) + +# Speed over accuracy trade off +ifeq ($(BR2_PACKAGE_LIQUID_DSP_FAST),y) +LIQUID_DSP_CFLAGS += -ffast-math +endif + +# use FFTW instead of built-in FFT +ifeq ($(BR2_PACKAGE_FFTW_PRECISION_SINGLE),y) +LIQUID_DSP_LDFLAGS += -lfftw3f +endif + +# disable altivec, it has build issues +ifeq ($(BR2_powerpc)$(BR2_powerpc64),y) +LIQUID_DSP_CONF_OPTS += --enable-simdoverride +endif + +ifeq ($(BR2_PACKAGE_FFTW_PRECISION_DOUBLE),y) +LIQUID_DSP_LDFLAGS += -lfftw3 +endif + +ifeq ($(BR2_PACKAGE_FFTW_PRECISION_LONG_DOUBLE),y) +LIQUID_DSP_LDFLAGS += -lfftw3l +endif + +LIQUID_DSP_CONF_OPTS += \ + CFLAGS="$(LIQUID_DSP_CFLAGS)" \ + LDFLAGS="$(LIQUID_DSP_LDFLAGS)" + +$(eval $(autotools-package)) diff --git a/package/lirc-tools/Config.in b/package/lirc-tools/Config.in index 8ce83a05153..3bee0949cae 100644 --- a/package/lirc-tools/Config.in +++ b/package/lirc-tools/Config.in @@ -2,6 +2,9 @@ config BR2_PACKAGE_LIRC_TOOLS bool "lirc-tools" depends on BR2_USE_MMU # fork() depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_USES_MUSL # GLOB_BRACE + # dlopen() + depends on !BR2_STATIC_LIBS help LIRC is a package that supports receiving and sending IR signals of the most common IR remote controls. It contains a @@ -15,6 +18,7 @@ config BR2_PACKAGE_LIRC_TOOLS http://www.lirc.org/ -comment "lirc-tools needs a toolchain w/ threads" +comment "lirc-tools needs a uClibc or (e)glibc toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ + || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/lirc-tools/S25lircd b/package/lirc-tools/S25lircd index 0f57f55ba06..7a0ec2f627d 100755 --- a/package/lirc-tools/S25lircd +++ b/package/lirc-tools/S25lircd @@ -6,7 +6,7 @@ # start() { - echo -n "Starting lirc: " + printf "Starting lirc: " mkdir -p /var/run/lirc ln -sf /var/run/lirc/lircd /dev/lircd start-stop-daemon -b -S -q -m -p /var/run/lirc.pid --exec /usr/sbin/lircd -- -n -O /etc/lirc/lirc_options.conf @@ -14,7 +14,7 @@ start() { } stop() { - echo -n "Stopping lirc: " + printf "Stopping lirc: " start-stop-daemon -K -q -p /var/run/lirc.pid echo "OK" } diff --git a/package/lirc-tools/lirc-tools.mk b/package/lirc-tools/lirc-tools.mk index 6837042c02e..fbd8aaf932d 100644 --- a/package/lirc-tools/lirc-tools.mk +++ b/package/lirc-tools/lirc-tools.mk @@ -6,15 +6,12 @@ LIRC_TOOLS_VERSION = 0.9.2 LIRC_TOOLS_SOURCE = lirc-$(LIRC_TOOLS_VERSION).tar.bz2 -LIRC_TOOLS_SITE = http://downloads.sourceforge.net/project/lirc/LIRC/$(LIRC_TOOLS_VERSION)/ +LIRC_TOOLS_SITE = http://downloads.sourceforge.net/project/lirc/LIRC/$(LIRC_TOOLS_VERSION) LIRC_TOOLS_LICENSE = GPLv2+ LIRC_TOOLS_LICENSE_FILES = COPYING LIRC_TOOLS_DEPENDENCIES = host-pkgconf -LIRC_TOOLS_CONF_OPTS = \ - --without-x \ - --enable-sandboxed \ - --with-driver=userspace +LIRC_TOOLS_CONF_OPTS = --without-x define LIRC_TOOLS_INSTALL_INIT_SYSV $(INSTALL) -D -m 0755 package/lirc-tools/S25lircd \ diff --git a/package/live555/live555.hash b/package/live555/live555.hash index e6d9f53b70e..813a5b4e08a 100644 --- a/package/live555/live555.hash +++ b/package/live555/live555.hash @@ -1,4 +1,4 @@ # From http://live555.com/liveMedia/public/live555-latest-md5.txt -md5 7c13d58c020efa42369b5f23a839be0c live.2015.06.25.tar.gz +md5 6275484ab763673ad3144648bf1015cb live.2016.01.29.tar.gz # Locally generated -sha256 c769542f930840ac246155558e163cd94b119f4f6b9e102b6b5b063f9f055875 live.2015.06.25.tar.gz +sha256 44243a962adae64703c00264dd2333cfee15d7edbd79de4e5b47fd486df9ecd1 live.2016.01.29.tar.gz diff --git a/package/live555/live555.mk b/package/live555/live555.mk index ab80fb1afd3..d40cbaa4373 100644 --- a/package/live555/live555.mk +++ b/package/live555/live555.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIVE555_VERSION = 2015.06.25 +LIVE555_VERSION = 2016.01.29 LIVE555_SOURCE = live.$(LIVE555_VERSION).tar.gz LIVE555_SITE = http://www.live555.com/liveMedia/public LIVE555_LICENSE = LGPLv2.1+ diff --git a/package/lldpd/Config.in b/package/lldpd/Config.in new file mode 100644 index 00000000000..9a9517b5b0f --- /dev/null +++ b/package/lldpd/Config.in @@ -0,0 +1,73 @@ +config BR2_PACKAGE_LLDPD + bool "lldpd" + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_LIBEVENT + help + lldpd is a 802.1ab implementation (LLDP) to help you locate + neighbors of all your equipments. + + LLDP allows you to know exactly on which port is a server + (and reciprocally). + + LLDP is an industry standard protocol designed to supplant + proprietary Link-Layer protocols such as EDP or CDP. The + goal of LLDP is to provide an inter-vendor compatible + mechanism to deliver Link-Layer notifications to adjacent + network devices. + + lldpd is an ISC-licensed implementation of LLDP for various + Unixes. It also supports some proprietary protocols. + + https://vincentbernat.github.io/lldpd/ + +if BR2_PACKAGE_LLDPD + +config BR2_PACKAGE_LLDPD_CDP + bool "CDP" + default y + help + Enable Cisco Discovery Protocol + +config BR2_PACKAGE_LLDPD_FDP + bool "FDP" + default y + help + Enable Foundry Discovery Protocol + +config BR2_PACKAGE_LLDPD_EDP + bool "EDP" + default y + help + Enable Extreme Discovery Protocol + +config BR2_PACKAGE_LLDPD_SONMP + bool "SONMP" + default y + help + Enable SynOptics Network Management + +config BR2_PACKAGE_LLDPD_LLDPMED + bool "LLDP-MED" + default y + help + Enable LLDP-MED extension + +config BR2_PACKAGE_LLDPD_DOT1 + bool "DOT1" + default y + help + Enable Dot1 extension (VLAN stuff) + +config BR2_PACKAGE_LLDPD_DOT3 + bool "DOT3" + default y + help + Enable Dot3 extension (PHY stuff) + +config BR2_PACKAGE_LLDPD_CUSTOM_TLV + bool "Custom TLV" + default y + help + Enable Custom TLV support + +endif diff --git a/package/lldpd/lldpd.hash b/package/lldpd/lldpd.hash new file mode 100644 index 00000000000..a6d905bd36d --- /dev/null +++ b/package/lldpd/lldpd.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 aac11cb1fdc037709517372c70c9bf89c752ab8e5eaab9ce140b84ed5a0507c8 lldpd-0.7.19.tar.gz diff --git a/package/lldpd/lldpd.mk b/package/lldpd/lldpd.mk new file mode 100644 index 00000000000..416967b2239 --- /dev/null +++ b/package/lldpd/lldpd.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# lldpd +# +################################################################################ + +LLDPD_VERSION = 0.7.19 +LLDPD_SITE = http://media.luffy.cx/files/lldpd +LLDPD_DEPENDENCIES = host-pkgconf libevent +LLDPD_LICENSE = ISC +LLDPD_LICENSE_FILES = README.md + +# Detection of c99 support in configure fails without WCHAR. To enable +# automatic detection of c99 support by configure, we need to enable +# WCHAR in toolchain. But actually we do not need WCHAR at lldpd +# runtime. So requesting WCHAR in toolchain just for automatic detection +# will be overkill. To solve this, explicitly -specify c99 here. +LLDPD_CONF_ENV = ac_cv_prog_cc_c99=-std=gnu99 + +LLDPD_CONF_OPTS = \ + --without-readline \ + --without-embedded-libevent \ + --without-snmp \ + --without-xml \ + --without-json \ + --without-seccomp \ + --disable-hardening \ + --disable-privsep \ + $(if $(BR2_PACKAGE_LLDPD_CDP),--enable-cdp,--disable-cdp) \ + $(if $(BR2_PACKAGE_LLDPD_FDP),--enable-fdp,--disable-fdp) \ + $(if $(BR2_PACKAGE_LLDPD_EDP),--enable-edp,--disable-edp) \ + $(if $(BR2_PACKAGE_LLDPD_SONMP),--enable-sonmp,--disable-sonmp) \ + $(if $(BR2_PACKAGE_LLDPD_LLDPMED),--enable-lldpmed,--disable-lldpmed) \ + $(if $(BR2_PACKAGE_LLDPD_DOT1),--enable-dot1,--disable-dot1) \ + $(if $(BR2_PACKAGE_LLDPD_DOT3),--enable-dot3,--disable-dot3) \ + $(if $(BR2_PACKAGE_LLDPD_CUSTOM_TLV),--enable-custom,--disable-custom) + +$(eval $(autotools-package)) diff --git a/package/lm-sensors/0003-musl-fix-includes.patch b/package/lm-sensors/0003-musl-fix-includes.patch new file mode 100644 index 00000000000..69325abce04 --- /dev/null +++ b/package/lm-sensors/0003-musl-fix-includes.patch @@ -0,0 +1,100 @@ +From 6d85773537c9f277ed342f57500f784ccb2c4a3e Mon Sep 17 00:00:00 2001 +From: Brendan Heading +Date: Sun, 30 Aug 2015 22:26:39 +0100 +Subject: [PATCH 1/1] fix compilation under musl + +This patch removes conditional compilation elements that are designed to +support glibc versions earlier than 2.0, which were causing the build +to fail under musl. + +Based on the patch found here : + +http://git.alpinelinux.org/cgit/aports/plain/main/lm_sensors/musl-fix-includes.patch?id=fece1d19448dbd3a56fd8ac70443116187141848 + +This patch has been accepted for integration upstream and should be +present in the next release. See : + +http://www.lm-sensors.org/changeset/6314 + +Signed-off-by: Brendan Heading +Upstream-Status: pending +--- + prog/dump/isadump.c | 6 ------ + prog/dump/isaset.c | 6 ------ + prog/dump/superio.c | 5 ----- + prog/dump/util.c | 5 ----- + 4 files changed, 22 deletions(-) + +diff --git a/prog/dump/isadump.c b/prog/dump/isadump.c +index e031e47..88e4c3b 100644 +--- a/prog/dump/isadump.c ++++ b/prog/dump/isadump.c +@@ -36,13 +36,7 @@ + #include "util.h" + #include "superio.h" + +- +-/* To keep glibc2 happy */ +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 + #include +-#else +-#include +-#endif + + #ifdef __powerpc__ + unsigned long isa_io_base = 0; /* XXX for now */ +diff --git a/prog/dump/isaset.c b/prog/dump/isaset.c +index 1d1bdad..a084c8a 100644 +--- a/prog/dump/isaset.c ++++ b/prog/dump/isaset.c +@@ -32,13 +32,7 @@ + #include + #include "util.h" + +- +-/* To keep glibc2 happy */ +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 + #include +-#else +-#include +-#endif + + #ifdef __powerpc__ + unsigned long isa_io_base = 0; /* XXX for now */ +diff --git a/prog/dump/superio.c b/prog/dump/superio.c +index 1af7358..31e0d78 100644 +--- a/prog/dump/superio.c ++++ b/prog/dump/superio.c +@@ -20,12 +20,7 @@ + */ + + #include +- +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 + #include +-#else +-#include +-#endif + + #include "superio.h" + +diff --git a/prog/dump/util.c b/prog/dump/util.c +index 676c339..d8b0927 100644 +--- a/prog/dump/util.c ++++ b/prog/dump/util.c +@@ -11,12 +11,7 @@ + #include + #include "util.h" + +-/* To keep glibc2 happy */ +-#if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ >= 0 + #include +-#else +-#include +-#endif + + /* Return 1 if we should continue, 0 if we should abort */ + int user_ack(int def) +-- +2.4.3 + diff --git a/package/lm-sensors/lm-sensors.hash b/package/lm-sensors/lm-sensors.hash index 05fd5ca1236..8cbd3d1f757 100644 --- a/package/lm-sensors/lm-sensors.hash +++ b/package/lm-sensors/lm-sensors.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 5dae6a665e1150159a93743c4ff1943a7efe02cd9d3bb12c4805e7d7adcf4fcf lm_sensors-3.3.5.tar.bz2 +# Locally calculated +sha256 e0579016081a262dd23eafe1d22b41ebde78921e73a1dcef71e05e424340061f lm_sensors-3.4.0.tar.bz2 diff --git a/package/lm-sensors/lm-sensors.mk b/package/lm-sensors/lm-sensors.mk index c26f91918d2..d2080d88f0d 100644 --- a/package/lm-sensors/lm-sensors.mk +++ b/package/lm-sensors/lm-sensors.mk @@ -4,9 +4,9 @@ # ################################################################################ -LM_SENSORS_VERSION = 3.3.5 +LM_SENSORS_VERSION = 3.4.0 LM_SENSORS_SOURCE = lm_sensors-$(LM_SENSORS_VERSION).tar.bz2 -LM_SENSORS_SITE = http://dl.lm-sensors.org/lm-sensors/releases +LM_SENSORS_SITE = ftp://ftp.netroedge.com/pub/lm-sensors LM_SENSORS_INSTALL_STAGING = YES LM_SENSORS_DEPENDENCIES = host-bison host-flex LM_SENSORS_LICENSE = libsensors LGPLv2.1+, programs GPLv2+ diff --git a/package/localedef/localedef.hash b/package/localedef/localedef.hash new file mode 100644 index 00000000000..ee14fb16b8c --- /dev/null +++ b/package/localedef/localedef.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9a60f7cdab6fb39adf23a12102f2d950d5f07f0cd7e51e85ec327e07440a79c6 localedef-eglibc-2.14.1-r17443-ptx1.tar.bz2 diff --git a/package/localedef/localedef.mk b/package/localedef/localedef.mk index 4762e64186d..1fe431aac00 100644 --- a/package/localedef/localedef.mk +++ b/package/localedef/localedef.mk @@ -12,6 +12,8 @@ HOST_LOCALEDEF_CONF_OPTS += \ --prefix=/usr \ --with-glibc=./eglibc +HOST_LOCALEDEF_CONF_ENV = CFLAGS="$(HOST_CFLAGS) -fgnu89-inline" + # The makefile does not implement an install target define HOST_LOCALEDEF_INSTALL_CMDS $(INSTALL) -D -m 0755 $(@D)/localedef $(HOST_DIR)/usr/bin/localedef diff --git a/package/lockdev/lockdev.mk b/package/lockdev/lockdev.mk index e40a407d3a8..a45e22e7332 100644 --- a/package/lockdev/lockdev.mk +++ b/package/lockdev/lockdev.mk @@ -24,6 +24,12 @@ LOCKDEV_BUILD_ARGS = shared LOCKDEV_INSTALL_ARGS = install_run endif +# Make the code believe we are using a C library compatible with +# glibc, which for the purpose of lockdev is actually true. +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +LOCKDEV_BUILD_ARGS += CFLAGS="$(TARGET_CFLAGS) -D__GNU_LIBRARY__" +endif + ifeq ($(BR2_SHARED_STATIC_LIBS)$(BR2_SHARED_LIBS),y) define LOCKDEV_CREATE_LINKS_STAGING ln -sf liblockdev.$(LOCKDEV_VERSION).so $(STAGING_DIR)/usr/lib/liblockdev.so diff --git a/package/lpeg/lpeg.hash b/package/lpeg/lpeg.hash index 1d4e3f428da..50e66d12041 100644 --- a/package/lpeg/lpeg.hash +++ b/package/lpeg/lpeg.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 5df2f09d0cbb67e46176c925e434c0f299ec89060ee97beccfa90375a6f8d3a7 lpeg-0.12.2-1.src.rock +sha256 e70c7cf8d7b8feddd8a41235d0ebb27bb60fbe7f31c8364ad23ee30a7f0cc26e lpeg-1.0.0-1.src.rock diff --git a/package/lpeg/lpeg.mk b/package/lpeg/lpeg.mk index 76e75f7bfbd..0754f00d604 100644 --- a/package/lpeg/lpeg.mk +++ b/package/lpeg/lpeg.mk @@ -4,7 +4,7 @@ # ################################################################################ -LPEG_VERSION = 0.12.2-1 +LPEG_VERSION = 1.0.0-1 LPEG_LICENSE = MIT $(eval $(luarocks-package)) diff --git a/package/lrzsz/Config.in b/package/lrzsz/Config.in index 70f10cd0a7f..1b5da148715 100644 --- a/package/lrzsz/Config.in +++ b/package/lrzsz/Config.in @@ -1,6 +1,16 @@ config BR2_PACKAGE_LRZSZ bool "lrzsz" + # It could technically build in a static-only environment, but + # it unconditionally redefines the error() and error_at_line() + # functions, which clashes with the definition from + # uClibc. Since the autotools packaging dates back from 1998, + # lots of work is needed to fix it, and do some proper tests + # on the availability of such functions. + depends on !BR2_STATIC_LIBS help Portable and fast implementation of the X/Y/Zmodem protocols. http://www.ohse.de/uwe/software/lrzsz.html + +comment "lrzsz needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/lshw/lshw.hash b/package/lshw/lshw.hash index d829369bf3b..8dfc7d3e4da 100644 --- a/package/lshw/lshw.hash +++ b/package/lshw/lshw.hash @@ -1,2 +1,5 @@ # Locally calculated -sha256 809882429555b93259785cc261dbff04c16c93d064db5f445a51945bc47157cb lshw-B.02.16.tar.gz +sha256 eb9cc053fa0f1e78685cb695596e73931bfb55d2377e3bc3b8b94aff4c5a489c lshw-B.02.17.tar.gz +sha256 2e5a3d63da8475db17fd90969bcb1930cf19d2b8da7be41edeea5c2a53878382 no-private-uint.patch +sha256 c8365f7ac8fc7a751c78d89ab446111bb1a235bc977a1b21e1b826c2e62361d1 basename-limits-long-bits.patch +sha256 9eba284061574e02a6b162ab20dff07c48693e00f781220ee974ba5c90d1cca9 988f5449791ebf869ab9fa7520463dab4eae3404.patch diff --git a/package/lshw/lshw.mk b/package/lshw/lshw.mk index e0c81d4abb6..e8e67e2cb20 100644 --- a/package/lshw/lshw.mk +++ b/package/lshw/lshw.mk @@ -4,8 +4,12 @@ # ################################################################################ -LSHW_VERSION = B.02.16 +LSHW_VERSION = B.02.17 LSHW_SITE = http://ezix.org/software/files +LSHW_PATCH = \ + http://git.alpinelinux.org/cgit/aports/plain/testing/lshw/basename-limits-long-bits.patch \ + http://git.alpinelinux.org/cgit/aports/plain/testing/lshw/no-private-uint.patch \ + https://github.com/lyonel/lshw/commit/988f5449791ebf869ab9fa7520463dab4eae3404.patch LSHW_LICENSE = GPLv2 LSHW_LICENSE_FILES = COPYING diff --git a/package/lsof/Config.in b/package/lsof/Config.in index 820cbf782b4..7b7e47d65ce 100644 --- a/package/lsof/Config.in +++ b/package/lsof/Config.in @@ -6,4 +6,4 @@ config BR2_PACKAGE_LSOF The lsof tool lists information about files opened by processes. - ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/ + http://people.freebsd.org/~abe/ diff --git a/package/lsof/lsof.hash b/package/lsof/lsof.hash index d1e289afbe9..4a1249f1af0 100644 --- a/package/lsof/lsof.hash +++ b/package/lsof/lsof.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 fe6f9b0e26b779ccd0ea5a0b6327c2b5c38d207a6db16f61ac01bd6c44e5c99b lsof_4.88.tar.bz2 +sha256 81ac2fc5fdc944793baf41a14002b6deb5a29096b387744e28f8c30a360a3718 lsof_4.89.tar.bz2 diff --git a/package/lsof/lsof.mk b/package/lsof/lsof.mk index f9b7661ab51..312d834b032 100644 --- a/package/lsof/lsof.mk +++ b/package/lsof/lsof.mk @@ -4,7 +4,7 @@ # ################################################################################ -LSOF_VERSION = 4.88 +LSOF_VERSION = 4.89 LSOF_SOURCE = lsof_$(LSOF_VERSION).tar.bz2 # Use http mirror since master ftp site access is very draconian LSOF_SITE = http://www.mirrorservice.org/sites/lsof.itap.purdue.edu/pub/tools/unix/lsof diff --git a/package/ltp-testsuite/0002-rpc-tirpc-disable-tirpc_auth_authdes_seccreate-tests.patch b/package/ltp-testsuite/0002-rpc-tirpc-disable-tirpc_auth_authdes_seccreate-tests.patch new file mode 100644 index 00000000000..f69b364efe6 --- /dev/null +++ b/package/ltp-testsuite/0002-rpc-tirpc-disable-tirpc_auth_authdes_seccreate-tests.patch @@ -0,0 +1,31 @@ +rpc-tirpc: disable tirpc_auth_authdes_*create tests + +Due to Buildroot patch 0007-Disable-DES-authentification-support.patch on +libtirpc, this library is built without method authdes_create. Any code +that uses this library, like the rpc-tirpc testsuite, thus fails to link. + +In the context of Buildroot, instead of disabling ltp-testsuite entirely, +just disable the problematic tests. + +Upstream-status: not applicable +Signed-off-by: Thomas De Schampheleire +--- + testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/tirpc/Makefile | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/tirpc/Makefile b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/tirpc/Makefile +index 45bc8a6..c04a088 100644 +--- a/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/tirpc/Makefile ++++ b/testcases/network/rpc/rpc-tirpc/tests_pack/rpc_suite/tirpc/Makefile +@@ -19,4 +19,8 @@ + top_srcdir ?= ../../../../../../.. + + include $(top_srcdir)/include/mk/env_pre.mk ++ ++FILTER_OUT_DIRS += tirpc_auth_authdes_seccreate \ ++ tirpc_auth_authdes_create ++ + include $(top_srcdir)/include/mk/generic_trunk_target.mk +-- +1.9.5 + diff --git a/package/ltp-testsuite/Config.in b/package/ltp-testsuite/Config.in index 91b09ce3fab..84759021589 100644 --- a/package/ltp-testsuite/Config.in +++ b/package/ltp-testsuite/Config.in @@ -20,7 +20,7 @@ config BR2_PACKAGE_LTP_TESTSUITE UCLIBC_HAS_OBSOLETE_BSD_SIGNAL and UCLIBC_SV4_DEPRECATED are needed. - http://ltp.sourceforge.net/ + http://linux-test-project.github.io comment "ltp-testsuite needs a non-musl toolchain w/ threads" depends on !BR2_nios2 diff --git a/package/ltp-testsuite/ltp-testsuite.hash b/package/ltp-testsuite/ltp-testsuite.hash index 77ec483a785..d60b8a444ec 100644 --- a/package/ltp-testsuite/ltp-testsuite.hash +++ b/package/ltp-testsuite/ltp-testsuite.hash @@ -1,2 +1,4 @@ -# Locally computed: -sha256 c21b91407f94a0c55c4cd3f12a0dc30f1d17cd2d4c44598f81ca075843141496 ltp-full-20140115.tar.xz +# From: https://github.com/linux-test-project/ltp/releases/download/20150903/ltp-full-20150903.tar.xz.md5 +md5 4ee849923b69f79b5208e71f3ed20484 ltp-full-20150903.tar.xz +# From: https://github.com/linux-test-project/ltp/releases/download/20150903/ltp-full-20150903.tar.xz.sha1 +sha1 d39bb3a41bfd1fd584703cf066fb2e935af0c00a ltp-full-20150903.tar.xz diff --git a/package/ltp-testsuite/ltp-testsuite.mk b/package/ltp-testsuite/ltp-testsuite.mk index acc1640c43a..e081cfa7087 100644 --- a/package/ltp-testsuite/ltp-testsuite.mk +++ b/package/ltp-testsuite/ltp-testsuite.mk @@ -4,11 +4,14 @@ # ################################################################################ -LTP_TESTSUITE_VERSION = 20140115 +LTP_TESTSUITE_VERSION = 20150903 LTP_TESTSUITE_SOURCE = ltp-full-$(LTP_TESTSUITE_VERSION).tar.xz -LTP_TESTSUITE_SITE = http://downloads.sourceforge.net/project/ltp/LTP%20Source/ltp-$(LTP_TESTSUITE_VERSION) -LTP_TESTSUITE_LICENSE = GPLv2 GPLv2+ +LTP_TESTSUITE_SITE = https://github.com/linux-test-project/ltp/releases/download/$(LTP_TESTSUITE_VERSION) +LTP_TESTSUITE_LICENSE = GPLv2, GPLv2+ LTP_TESTSUITE_LICENSE_FILES = COPYING +LTP_TESTSUITE_CONF_OPTS += \ + --with-power-management-testsuite \ + --with-realtime-testsuite # Needs libcap with file attrs which needs attr, so both required ifeq ($(BR2_PACKAGE_LIBCAP)$(BR2_PACKAGE_ATTR),yy) @@ -32,6 +35,7 @@ endif LTP_TESTSUITE_CONF_ENV += \ CFLAGS="$(LTP_TESTSUITE_CFLAGS)" \ CPPFLAGS="$(LTP_TESTSUITE_CPPFLAGS)" \ - LIBS="$(LTP_TESTSUITE_LIBS)" + LIBS="$(LTP_TESTSUITE_LIBS)" \ + SYSROOT="$(STAGING_DIR)" $(eval $(autotools-package)) diff --git a/package/ltrace/0002-sparc-add-missing-library.h-include.patch b/package/ltrace/0002-sparc-add-missing-library.h-include.patch new file mode 100644 index 00000000000..01f1f2edb3d --- /dev/null +++ b/package/ltrace/0002-sparc-add-missing-library.h-include.patch @@ -0,0 +1,36 @@ +From 4e58f53b7886420d002e5919f279acd6d7c4afd1 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Tue, 22 Dec 2015 21:47:45 +0100 +Subject: [PATCH] sparc: add missing library.h include +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fixes the following build failure on sparc: + +plt.c: In function ‘sym2addr’: +plt.c:33:12: error: dereferencing pointer to incomplete type + return sym->enter_addr; + ^ +plt.c:34:1: warning: control reaches end of non-void function [-Wreturn-type] + +Signed-off-by: Thomas Petazzoni +--- + sysdeps/linux-gnu/sparc/plt.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/sysdeps/linux-gnu/sparc/plt.c b/sysdeps/linux-gnu/sparc/plt.c +index 3d2e589..959eed1 100644 +--- a/sysdeps/linux-gnu/sparc/plt.c ++++ b/sysdeps/linux-gnu/sparc/plt.c +@@ -21,6 +21,7 @@ + #include + #include "proc.h" + #include "common.h" ++#include "library.h" + + GElf_Addr + arch_plt_sym_val(struct ltelf *lte, size_t ndx, GElf_Rela * rela) { +-- +2.6.4 + diff --git a/package/ltrace/Config.in b/package/ltrace/Config.in index 2b42a846e1f..ff4d7bd3b01 100644 --- a/package/ltrace/Config.in +++ b/package/ltrace/Config.in @@ -9,6 +9,7 @@ config BR2_PACKAGE_LTRACE select BR2_PACKAGE_ELFUTILS depends on BR2_USE_WCHAR # elfutils depends on !BR2_STATIC_LIBS # elfutils + depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils help Debugging program which runs a specified command until it exits. While the command is executing, ltrace intercepts and records @@ -17,5 +18,6 @@ config BR2_PACKAGE_LTRACE http://ltrace.org -comment "ltrace needs toolchain w/ wchar, dynamic library" - depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS +comment "ltrace needs a uclibc or (e)glibc toolchain w/ wchar, dynamic library" + depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \ + || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) diff --git a/package/ltrace/ltrace.mk b/package/ltrace/ltrace.mk index 73ae28e9640..eac42be3282 100644 --- a/package/ltrace/ltrace.mk +++ b/package/ltrace/ltrace.mk @@ -19,8 +19,9 @@ LTRACE_POST_PATCH_HOOKS += LTRACE_CREATE_CONFIG_M4 # ltrace can use libunwind only if libc has backtrace() support # We don't normally do so for uClibc and we can't know if it's external +# Also ltrace with libunwind support is broken for MIPS so we disable it ifeq ($(BR2_PACKAGE_LIBUNWIND),y) -ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),) +ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC)$(BR2_mips)$(BR2_mipsel),) # --with-elfutils only selects unwinding support backend. elfutils is a # mandatory dependency regardless. LTRACE_CONF_OPTS += --with-libunwind=yes --with-elfutils=no diff --git a/package/ltris/0001-fix-gcc5-build.patch b/package/ltris/0001-fix-gcc5-build.patch new file mode 100644 index 00000000000..66d0fa3df7a --- /dev/null +++ b/package/ltris/0001-fix-gcc5-build.patch @@ -0,0 +1,308 @@ +Upstream patch to fix build with GCC 5 + +Obtained from the LGames Subversion repository with the following command: +svn diff -c164 svn://svn.code.sf.net/p/lgames/code/trunk/ltris + +Signed-off-by: Rodrigo Rebello + +Revision log message: +------------------------------------------------------------------------ +r164 | kulkanie | 2015-05-16 05:48:02 -0300 (Sat, 16 May 2015) | 1 line + +removed all inline keywords +------------------------------------------------------------------------ + +Line added to LTris ChangeLog concerning the change: +- removed all inline keywords to work with GCC 5 (2015/05/16 MS) + +Author: Michael Speck + +Index: src/sdl.c +=================================================================== +--- a/src/sdl.c (revision 163) ++++ b/src/sdl.c (revision 164) +@@ -244,7 +244,7 @@ + #endif + + /* return full path of bitmap */ +-inline void get_full_bmp_path( char *full_path, char *file_name ) ++void get_full_bmp_path( char *full_path, char *file_name ) + { + sprintf(full_path, "%s/gfx/%s", SRC_DIR, file_name ); + } +@@ -330,7 +330,7 @@ + /* + lock surface + */ +-inline void lock_surf(SDL_Surface *sur) ++void lock_surf(SDL_Surface *sur) + { + if (SDL_MUSTLOCK(sur)) + SDL_LockSurface(sur); +@@ -339,7 +339,7 @@ + /* + unlock surface + */ +-inline void unlock_surf(SDL_Surface *sur) ++void unlock_surf(SDL_Surface *sur) + { + if (SDL_MUSTLOCK(sur)) + SDL_UnlockSurface(sur); +@@ -666,7 +666,7 @@ + /* + lock font surface + */ +-inline void lock_font(Font *fnt) ++void lock_font(Font *fnt) + { + if (SDL_MUSTLOCK(fnt->pic)) + SDL_LockSurface(fnt->pic); +@@ -675,7 +675,7 @@ + /* + unlock font surface + */ +-inline void unlock_font(Font *fnt) ++void unlock_font(Font *fnt) + { + if (SDL_MUSTLOCK(fnt->pic)) + SDL_UnlockSurface(fnt->pic); +@@ -905,7 +905,7 @@ + /* + update rectangle (0,0,0,0)->fullscreen + */ +-inline void refresh_screen(int x, int y, int w, int h) ++void refresh_screen(int x, int y, int w, int h) + { + SDL_UpdateRect(sdl.screen, x, y, w, h); + } +@@ -1055,7 +1055,7 @@ + /* + lock surface + */ +-inline void lock_screen() ++void lock_screen() + { + if (SDL_MUSTLOCK(sdl.screen)) + SDL_LockSurface(sdl.screen); +@@ -1064,7 +1064,7 @@ + /* + unlock surface + */ +-inline void unlock_screen() ++void unlock_screen() + { + if (SDL_MUSTLOCK(sdl.screen)) + SDL_UnlockSurface(sdl.screen); +@@ -1073,7 +1073,7 @@ + /* + flip hardware screens (double buffer) + */ +-inline void flip_screen() ++void flip_screen() + { + SDL_Flip(sdl.screen); + } +@@ -1132,7 +1132,7 @@ + /* + get milliseconds since last call + */ +-inline int get_time() ++int get_time() + { + int ms; + cur_time = SDL_GetTicks(); +@@ -1148,7 +1148,7 @@ + /* + reset timer + */ +-inline void reset_timer() ++void reset_timer() + { + last_time = SDL_GetTicks(); + } +Index: src/sdl.h +=================================================================== +--- a/src/sdl.h (revision 163) ++++ b/src/sdl.h (revision 164) +@@ -41,8 +41,8 @@ + SDL_Surface* load_surf(char *fname, int f); + SDL_Surface* create_surf(int w, int h, int f); + void free_surf( SDL_Surface **surf ); +-inline void lock_surf(SDL_Surface *sur); +-inline void unlock_surf(SDL_Surface *sur); ++void lock_surf(SDL_Surface *sur); ++void unlock_surf(SDL_Surface *sur); + void blit_surf(void); + void alpha_blit_surf(int alpha); + void fill_surf(int c); +@@ -86,8 +86,8 @@ + Font* load_fixed_font(char *fname, int off, int len, int w); + void free_font(Font **sfnt); + int write_text(Font *sfnt, SDL_Surface *dest, int x, int y, char *str, int alpha); +-inline void lock_font(Font *sfnt); +-inline void unlock_font(Font *sfnt); ++void lock_font(Font *sfnt); ++void unlock_font(Font *sfnt); + SDL_Rect last_write_rect(Font *fnt); + int text_width(Font *fnt, char *str); + +@@ -132,14 +132,14 @@ + char** get_mode_names( int *count ); + int set_video_mode( Video_Mode mode ); + void hardware_cap(); +-inline void refresh_screen( int x, int y, int w, int h ); ++void refresh_screen( int x, int y, int w, int h ); + void refresh_rects(); + void add_refresh_rect(int x, int y, int w, int h); + int wait_for_key(); + void wait_for_click(); +-inline void lock_screen(); +-inline void unlock_screen(); +-inline void flip_screen(); ++void lock_screen(); ++void unlock_screen(); ++void flip_screen(); + void fade_screen( int type, int ms ); + void take_screenshot( int i ); + +@@ -148,8 +148,8 @@ + SDL_Cursor* create_cursor( int width, int height, int hot_x, int hot_y, char *source ); + + /* timer */ +-inline int get_time(); +-inline void reset_timer(); ++int get_time(); ++void reset_timer(); + + #ifdef __cplusplus + }; +Index: src/tools.c +=================================================================== +--- a/src/tools.c (revision 163) ++++ b/src/tools.c (revision 164) +@@ -23,7 +23,7 @@ + #include "ltris.h" + + /* compares to strings and returns true if their first strlen(str1) chars are equal */ +-inline int strequal( char *str1, char *str2 ) ++int strequal( char *str1, char *str2 ) + { + if ( strlen( str1 ) != strlen( str2 ) ) return 0; + return ( !strncmp( str1, str2, strlen( str1 ) ) ); +@@ -30,7 +30,7 @@ + } + + /* set delay to ms milliseconds */ +-inline void delay_set( Delay *delay, int ms ) ++void delay_set( Delay *delay, int ms ) + { + delay->limit = ms; + delay->cur = 0; +@@ -37,13 +37,13 @@ + } + + /* reset delay ( cur = 0 )*/ +-inline void delay_reset( Delay *delay ) ++void delay_reset( Delay *delay ) + { + delay->cur = 0; + } + + /* check if times out and reset */ +-inline int delay_timed_out( Delay *delay, int ms ) ++int delay_timed_out( Delay *delay, int ms ) + { + delay->cur += ms; + if ( delay->cur >= delay->limit ) { +@@ -56,12 +56,12 @@ + } + + /* set timer so that we have a time out next call of delay_timed_out() */ +-inline void delay_force_time_out( Delay *delay ) ++void delay_force_time_out( Delay *delay ) + { + delay->cur = delay->limit; + } + +-inline void goto_tile( int *x, int *y, int d ) ++void goto_tile( int *x, int *y, int d ) + { + /* 0 -up, clockwise, 5 - left up */ + switch ( d ) { +@@ -326,24 +326,24 @@ + the target value until reached when counter_update() is called. + ==================================================================== + */ +-inline void counter_set( Counter *counter, double value ) ++void counter_set( Counter *counter, double value ) + { + counter->value = value; + counter->approach = value; + } +-inline void counter_add( Counter *counter, double add ) ++void counter_add( Counter *counter, double add ) + { + counter->value += add; + } +-inline double counter_get_approach( Counter counter ) ++double counter_get_approach( Counter counter ) + { + return counter.approach; + } +-inline double counter_get( Counter counter ) ++double counter_get( Counter counter ) + { + return counter.value; + } +-inline void counter_update( Counter *counter, int ms ) ++void counter_update( Counter *counter, int ms ) + { + double change; + if ( counter->approach == counter->value ) return; +Index: src/bowl.c +=================================================================== +--- a/src/bowl.c (revision 163) ++++ b/src/bowl.c (revision 164) +@@ -333,7 +333,7 @@ + Set a tile contents and pixel contents. + ==================================================================== + */ +-inline void bowl_set_tile( Bowl *bowl, int x, int y, int tile_id ) ++void bowl_set_tile( Bowl *bowl, int x, int y, int tile_id ) + { + int i, j = y * bowl->block_size; + bowl->contents[x][y] = tile_id; +Index: src/tools.h +=================================================================== +--- a/src/tools.h (revision 163) ++++ b/src/tools.h (revision 164) +@@ -33,7 +33,7 @@ + #define VEC_DIST( vec1, vec2 ) ( sqrt( ( vec1.x - vec2.x ) * ( vec1.x - vec2.x ) + ( vec1.y - vec2.y ) * ( vec1.y - vec2.y ) ) ) + + /* compares to strings and returns true if their first strlen(str1) chars are equal */ +-inline int strequal( char *str1, char *str2 ); ++int strequal( char *str1, char *str2 ); + + /* delete lines */ + void delete_lines( char **lines, int line_number ); +@@ -45,16 +45,16 @@ + } Delay; + + /* set delay to ms milliseconds */ +-inline void delay_set( Delay *delay, int ms ); ++void delay_set( Delay *delay, int ms ); + + /* reset delay ( cur = 0 )*/ +-inline void delay_reset( Delay *delay ); ++void delay_reset( Delay *delay ); + + /* check if time's out ( add ms milliseconds )and reset */ +-inline int delay_timed_out( Delay *delay, int ms ); ++int delay_timed_out( Delay *delay, int ms ); + + /* set timer so that we have a time out next call of delay_timed_out() */ +-inline void delay_force_time_out( Delay *delay ); ++void delay_force_time_out( Delay *delay ); + + /* return distance betwteen to map positions */ + int get_dist( int x1, int y1, int x2, int y2 ); diff --git a/package/lttng-babeltrace/Config.in b/package/lttng-babeltrace/Config.in index 0eaaa204fbc..d362779eacf 100644 --- a/package/lttng-babeltrace/Config.in +++ b/package/lttng-babeltrace/Config.in @@ -3,10 +3,10 @@ config BR2_PACKAGE_LTTNG_BABELTRACE select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_POPT depends on BR2_USE_WCHAR # libglib2, util-linux depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_USE_MMU # libglib2 - depends on BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC # posix_fallocate help The Babeltrace project provides trace read and write libraries, as well as a trace converter application. Plugins @@ -27,7 +27,6 @@ config BR2_PACKAGE_LTTNG_BABELTRACE http://www.efficios.com/babeltrace -comment "lttng-babeltrace needs a uclibc snapshot or (e)glib toolchain w/ wchar, threads" +comment "lttng-babeltrace needs a toolchain w/ wchar, threads" depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS \ - || !(BR2_UCLIBC_VERSION_SNAPSHOT || BR2_TOOLCHAIN_USES_GLIBC) + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/lttng-babeltrace/lttng-babeltrace.mk b/package/lttng-babeltrace/lttng-babeltrace.mk index dacb15a5023..5de77fb14da 100644 --- a/package/lttng-babeltrace/lttng-babeltrace.mk +++ b/package/lttng-babeltrace/lttng-babeltrace.mk @@ -7,7 +7,7 @@ LTTNG_BABELTRACE_SITE = http://lttng.org/files/babeltrace LTTNG_BABELTRACE_VERSION = 1.2.4 LTTNG_BABELTRACE_SOURCE = babeltrace-$(LTTNG_BABELTRACE_VERSION).tar.bz2 -LTTNG_BABELTRACE_LICENSE = MIT; LGPLv2.1 for include/babeltrace/list.h; GPLv2 for test code +LTTNG_BABELTRACE_LICENSE = MIT, LGPLv2.1 (include/babeltrace/list.h), GPLv2 (test code) LTTNG_BABELTRACE_LICENSE_FILES = mit-license.txt gpl-2.0.txt LICENSE LTTNG_BABELTRACE_DEPENDENCIES = popt util-linux libglib2 diff --git a/package/lttng-libust/Config.in b/package/lttng-libust/Config.in index 1c26843e21f..ce605995579 100644 --- a/package/lttng-libust/Config.in +++ b/package/lttng-libust/Config.in @@ -5,8 +5,7 @@ config BR2_PACKAGE_LTTNG_LIBUST select BR2_PACKAGE_UTIL_LINUX_LIBUUID depends on BR2_USE_WCHAR # util-linux # liburcu only works on some architectures and requires threads support" - depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_powerpc || BR2_x86_64 - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_58854 # liburcu/gcc-4.8.x bug + depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS help @@ -18,9 +17,5 @@ config BR2_PACKAGE_LTTNG_LIBUST http://lttng.org comment "lttng-libust needs a toolchain w/ dynamic library, wchar, threads" - depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_powerpc || BR2_x86_64 + depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_58854 # liburcu/gcc-4.8.x bug - -comment "lttng-libust needs a toolchain not affected by GCC bug 58854" - depends on BR2_TOOLCHAIN_HAS_GCC_BUG_58854 diff --git a/package/lttng-libust/lttng-libust.hash b/package/lttng-libust/lttng-libust.hash index 65db612e55c..57c7e003ae2 100644 --- a/package/lttng-libust/lttng-libust.hash +++ b/package/lttng-libust/lttng-libust.hash @@ -1,2 +1,2 @@ -# http://www.lttng.org/files/lttng-ust/lttng-ust-2.6.0.tar.bz2.sha1 -sha1 774fc2052781ba6fd789d422223c739d5f64482d lttng-ust-2.6.0.tar.bz2 +# http://www.lttng.org/files/lttng-ust/lttng-ust-2.7.1.tar.bz2.sha1 +sha1 597ebecb885debb58c263de57f30b1096d4eefc6 lttng-ust-2.7.1.tar.bz2 diff --git a/package/lttng-libust/lttng-libust.mk b/package/lttng-libust/lttng-libust.mk index 2afcd6134ec..4a65057c45d 100644 --- a/package/lttng-libust/lttng-libust.mk +++ b/package/lttng-libust/lttng-libust.mk @@ -5,9 +5,9 @@ ################################################################################ LTTNG_LIBUST_SITE = http://lttng.org/files/lttng-ust -LTTNG_LIBUST_VERSION = 2.6.0 +LTTNG_LIBUST_VERSION = 2.7.1 LTTNG_LIBUST_SOURCE = lttng-ust-$(LTTNG_LIBUST_VERSION).tar.bz2 -LTTNG_LIBUST_LICENSE = LGPLv2.1; MIT for system headers; GPLv2 for liblttng-ust-ctl/ustctl.c (used by lttng-sessiond) +LTTNG_LIBUST_LICENSE = LGPLv2.1, MIT (system headers), GPLv2 (liblttng-ust-ctl/ustctl.c used by lttng-sessiond) LTTNG_LIBUST_LICENSE_FILES = COPYING LTTNG_LIBUST_INSTALL_STAGING = YES diff --git a/package/lttng-modules/lttng-modules.hash b/package/lttng-modules/lttng-modules.hash index 918b4cfc7a2..2d50287897e 100644 --- a/package/lttng-modules/lttng-modules.hash +++ b/package/lttng-modules/lttng-modules.hash @@ -1,2 +1,2 @@ -# http://www.lttng.org/files/lttng-modules/lttng-modules-2.6.0.tar.bz2.sha1 -sha1 6402ec848e2a75250e04be35f0c49332bf37a388 lttng-modules-2.6.0.tar.bz2 +# from http://lttng.org/files/lttng-tools/lttng-modules-2.7.1.tar.bz2.sha1 +sha1 38c42ec89b4966c7a4cc04aea75f5841634d8d66 lttng-modules-2.7.1.tar.bz2 diff --git a/package/lttng-modules/lttng-modules.mk b/package/lttng-modules/lttng-modules.mk index 30c581e33e1..5d0c422b139 100644 --- a/package/lttng-modules/lttng-modules.mk +++ b/package/lttng-modules/lttng-modules.mk @@ -4,10 +4,10 @@ # ################################################################################ -LTTNG_MODULES_VERSION = 2.6.0 +LTTNG_MODULES_VERSION = 2.7.1 LTTNG_MODULES_SITE = http://lttng.org/files/lttng-modules LTTNG_MODULES_SOURCE = lttng-modules-$(LTTNG_MODULES_VERSION).tar.bz2 -LTTNG_MODULES_LICENSE = LGPLv2.1/GPLv2 for kernel modules; MIT for lib/bitfield.h and lib/prio_heap/* +LTTNG_MODULES_LICENSE = LGPLv2.1/GPLv2 (kernel modules), MIT (lib/bitfield.h, lib/prio_heap/*) LTTNG_MODULES_LICENSE_FILES = lgpl-2.1.txt gpl-2.0.txt mit-license.txt LICENSE $(eval $(kernel-module)) diff --git a/package/lttng-tools/Config.in b/package/lttng-tools/Config.in index 4d4b923aad1..dd72cc68c7e 100644 --- a/package/lttng-tools/Config.in +++ b/package/lttng-tools/Config.in @@ -1,16 +1,15 @@ config BR2_PACKAGE_LTTNG_TOOLS bool "lttng-tools" + # liburcu only works on some architectures and requires thread support + depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS + depends on BR2_USE_WCHAR # util-linux + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS # uses dlfcn select BR2_PACKAGE_LIBURCU select BR2_PACKAGE_LIBXML2 select BR2_PACKAGE_POPT select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID - # liburcu only works on some architectures and requires thread support - depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_powerpc || BR2_x86_64 - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_58595 # lttng-tools/gcc-4.{7,8}.x bug - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_58854 # liburcu/gcc-4.8.x bug - depends on BR2_USE_WCHAR # util-linux - depends on BR2_TOOLCHAIN_HAS_THREADS help Userspace utilities for the LTTng 2.x tracing infrastructure. @@ -29,11 +28,6 @@ config BR2_PACKAGE_LTTNG_TOOLS http://lttng.org -comment "lttng-tools needs a toolchain w/ threads, wchar" - depends on BR2_arm || BR2_armeb || BR2_i386 || BR2_powerpc || BR2_x86_64 - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_58595 # lttng-tools/gcc-4.{7,8}.x bug - depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_58854 # liburcu/gcc-4.8.x bug - -comment "lttng-tools needs a toolchain not affected by GCC bug 58854 and 58595" - depends on BR2_TOOLCHAIN_HAS_GCC_BUG_58854 || BR2_TOOLCHAIN_HAS_GCC_BUG_58595 +comment "lttng-tools needs a toolchain w/ threads, wchar, dynamic library" + depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || BR2_STATIC_LIBS diff --git a/package/lttng-tools/lttng-tools.hash b/package/lttng-tools/lttng-tools.hash index a356911d557..f05b0e3826c 100644 --- a/package/lttng-tools/lttng-tools.hash +++ b/package/lttng-tools/lttng-tools.hash @@ -1,2 +1,2 @@ # Locally generated -sha256 128166445126d76da7d9f42a56dec12716732a1ed697a6cfdf40c9e135384f32 lttng-tools-2.6.0.tar.bz2 +sha256 0c799fb21dfa42475feaa1507ded934608b2e531039b46c40e944a5b81c7b21c lttng-tools-2.7.1.tar.bz2 diff --git a/package/lttng-tools/lttng-tools.mk b/package/lttng-tools/lttng-tools.mk index 0cd381c8936..c33d6c24260 100644 --- a/package/lttng-tools/lttng-tools.mk +++ b/package/lttng-tools/lttng-tools.mk @@ -4,10 +4,10 @@ # ################################################################################ -LTTNG_TOOLS_VERSION = 2.6.0 +LTTNG_TOOLS_VERSION = 2.7.1 LTTNG_TOOLS_SITE = http://lttng.org/files/lttng-tools LTTNG_TOOLS_SOURCE = lttng-tools-$(LTTNG_TOOLS_VERSION).tar.bz2 -LTTNG_TOOLS_LICENSE = GPLv2+; LGPLv2.1+ for include/lttng/* and src/lib/lttng-ctl/* +LTTNG_TOOLS_LICENSE = GPLv2+, LGPLv2.1+ (include/lttng/*, src/lib/lttng-ctl/*) LTTNG_TOOLS_LICENSE_FILES = gpl-2.0.txt lgpl-2.1.txt LICENSE LTTNG_TOOLS_CONF_OPTS += --with-xml-prefix=$(STAGING_DIR)/usr diff --git a/package/lua-periphery/0001-Add-missing-header-for-musl-compatibility.patch b/package/lua-periphery/0001-Add-missing-header-for-musl-compatibility.patch new file mode 100644 index 00000000000..22c748ccb3c --- /dev/null +++ b/package/lua-periphery/0001-Add-missing-header-for-musl-compatibility.patch @@ -0,0 +1,34 @@ +From 1d8cb0ad54099c3d7261aaa19a2c0786f16736d0 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 8 Aug 2015 22:42:39 +0200 +Subject: [PATCH] Add missing header for musl compatibility + + is needed to get the definition of _IOC_SIZEBITS and +solve the following build failure: + +src/spi.c: In function 'spi_transfer': +src/spi.c:100:24: error: '_IOC_SIZEBITS' undeclared (first use in this function) + if (ioctl(spi->fd, SPI_IOC_MESSAGE(1), &spi_xfer) < 1) + +Signed-off-by: Thomas Petazzoni +[Port from c-periphery] +Signed-off-by: Jörg Krause +--- + src/spi.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/lua-periphery/c-periphery/src/spi.c b/lua-periphery/c-periphery/src/spi.c +index 52a8d3d..1a6b17c 100644 +--- a/lua-periphery/c-periphery/src/spi.c ++++ b/lua-periphery/c-periphery/src/spi.c +@@ -16,6 +16,7 @@ + #include + + #include ++#include + #include + + #include "spi.h" +-- +2.5.0 + diff --git a/package/lua-periphery/0001-fix-build-flags.patch b/package/lua-periphery/0001-fix-build-flags.patch deleted file mode 100644 index 1ac220ca5bf..00000000000 --- a/package/lua-periphery/0001-fix-build-flags.patch +++ /dev/null @@ -1,21 +0,0 @@ -Fix build flags to build properly with uClibc - -Building with -std=c99 -D_DEFAULT_SOURCE hides the struct timespec and -nanosleep() definitions from in uClibc. Work around that by -using -std=gnu99 instead. - -Signed-off-by: Thomas Petazzoni - -Index: b/lua-periphery/Makefile -=================================================================== ---- a/lua-periphery/Makefile -+++ b/lua-periphery/Makefile -@@ -16,7 +16,7 @@ - - ########################################################################### - --CFLAGS += -std=c99 -pedantic -D_DEFAULT_SOURCE -+CFLAGS += -std=gnu99 -pedantic - CFLAGS += -Wall -Wextra -Wno-unused-parameter $(DEBUG) -fPIC -I. $(LUA_CFLAGS) - LDFLAGS += -shared - diff --git a/package/lua-periphery/0002-Fix-build-on-SPARC.patch b/package/lua-periphery/0002-Fix-build-on-SPARC.patch new file mode 100644 index 00000000000..ce461ddca28 --- /dev/null +++ b/package/lua-periphery/0002-Fix-build-on-SPARC.patch @@ -0,0 +1,60 @@ +[PATCH] Fix build on SPARC + +On SPARC, the definitions of B2500000, B3000000, B3500000 and B4000000 +are not necessarily available, so use those values only if defined in +the kernel headers. + +It fixes SPARC build failures such as: + +src/serial.c: In function '_serial_baudrate_to_bits': +src/serial.c:73:30: error: 'B2500000' undeclared (first use in this function) + case 2500000: return B2500000; + ^ +src/serial.c:73:30: note: each undeclared identifier is reported only once for each function it appears in +src/serial.c:74:30: error: 'B3000000' undeclared (first use in this function) + case 3000000: return B3000000; + ^ +Signed-off-by: Thomas Petazzoni + +Index: b/lua-periphery/c-periphery/src/serial.c +=================================================================== +--- a/lua-periphery/c-periphery/src/serial.c ++++ b/lua-periphery/c-periphery/src/serial.c +@@ -70,10 +70,18 @@ + case 1152000: return B1152000; + case 1500000: return B1500000; + case 2000000: return B2000000; ++#ifdef B2500000 + case 2500000: return B2500000; ++#endif ++#ifdef B3000000 + case 3000000: return B3000000; ++#endif ++#ifdef B3500000 + case 3500000: return B3500000; ++#endif ++#ifdef B4000000 + case 4000000: return B4000000; ++#endif + default: return -1; + } + } +@@ -107,10 +115,18 @@ + case B1152000: return 1152000; + case B1500000: return 1500000; + case B2000000: return 2000000; ++#ifdef B2500000 + case B2500000: return 2500000; ++#endif ++#ifdef B3000000 + case B3000000: return 3000000; ++#endif ++#ifdef B3500000 + case B3500000: return 3500000; ++#endif ++#ifdef B4000000 + case B4000000: return 4000000; ++#endif + default: return -1; + } + } diff --git a/package/lua-periphery/lua-periphery.hash b/package/lua-periphery/lua-periphery.hash index 39209dfd191..7f6e63f3bbe 100644 --- a/package/lua-periphery/lua-periphery.hash +++ b/package/lua-periphery/lua-periphery.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 f94f4af342e531ff25b037b8b7c127db50b7464c0bbce4c5ea3b49fd215ada60 lua-periphery-1.0.5-2.src.rock +sha256 53762ed9b8a2edfcc5b4c535ef73e6a425f2577e036bb15994ca16a39b16ebab lua-periphery-1.0.6-1.src.rock diff --git a/package/lua-periphery/lua-periphery.mk b/package/lua-periphery/lua-periphery.mk index 541079f8ac1..48eba392899 100644 --- a/package/lua-periphery/lua-periphery.mk +++ b/package/lua-periphery/lua-periphery.mk @@ -4,8 +4,8 @@ # ################################################################################ -LUA_PERIPHERY_VERSION_UPSTREAM = 1.0.5 -LUA_PERIPHERY_VERSION = $(LUA_PERIPHERY_VERSION_UPSTREAM)-2 +LUA_PERIPHERY_VERSION_UPSTREAM = 1.0.6 +LUA_PERIPHERY_VERSION = $(LUA_PERIPHERY_VERSION_UPSTREAM)-1 LUA_PERIPHERY_SUBDIR = lua-periphery LUA_PERIPHERY_LICENSE = MIT LUA_PERIPHERY_LICENSE_FILES = $(LUA_PERIPHERY_SUBDIR)/LICENSE diff --git a/package/lua/5.3.1/0001-root-path.patch b/package/lua/5.3.2/0001-root-path.patch similarity index 100% rename from package/lua/5.3.1/0001-root-path.patch rename to package/lua/5.3.2/0001-root-path.patch diff --git a/package/lua/5.3.1/0002-shared-libs-for-lua.patch b/package/lua/5.3.2/0002-shared-libs-for-lua.patch similarity index 100% rename from package/lua/5.3.1/0002-shared-libs-for-lua.patch rename to package/lua/5.3.2/0002-shared-libs-for-lua.patch diff --git a/package/lua/5.3.1/0004-lua-pc.patch b/package/lua/5.3.2/0004-lua-pc.patch similarity index 98% rename from package/lua/5.3.1/0004-lua-pc.patch rename to package/lua/5.3.2/0004-lua-pc.patch index d3129d703c5..811d9313b46 100644 --- a/package/lua/5.3.1/0004-lua-pc.patch +++ b/package/lua/5.3.2/0004-lua-pc.patch @@ -14,7 +14,7 @@ Index: b/etc/lua.pc +# grep '^V=' ../Makefile +V= 5.3 +# grep '^R=' ../Makefile -+R= 5.3.0 ++R= 5.3.2 + +# grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/' +prefix= /usr diff --git a/package/lua/5.3.1/0011-linenoise.patch b/package/lua/5.3.2/0011-linenoise.patch similarity index 78% rename from package/lua/5.3.1/0011-linenoise.patch rename to package/lua/5.3.2/0011-linenoise.patch index ccdd3fdf156..f3ced2b22e3 100644 --- a/package/lua/5.3.1/0011-linenoise.patch +++ b/package/lua/5.3.2/0011-linenoise.patch @@ -8,7 +8,7 @@ Index: b/src/lua.c =================================================================== --- a/src/lua.c +++ b/src/lua.c -@@ -83,6 +83,15 @@ +@@ -83,6 +83,13 @@ #define lua_saveline(L,line) ((void)L, add_history(line)) #define lua_freeline(L,b) ((void)L, free(b)) @@ -16,9 +16,7 @@ Index: b/src/lua.c + +#include +#define lua_readline(L,b,p) ((void)L, ((b)=linenoise(p)) != NULL) -+#define lua_saveline(L,idx) \ -+ if (lua_rawlen(L,idx) > 0) /* non-empty line? */ \ -+ linenoiseHistoryAdd(lua_tostring(L, idx)); /* add it to history */ ++#define lua_saveline(L,line) ((void)L, linenoiseHistoryAdd(line)) +#define lua_freeline(L,b) ((void)L, free(b)) + #else /* }{ */ diff --git a/package/lua/Config.in b/package/lua/Config.in index d9cd1dde9fb..711fa89163e 100644 --- a/package/lua/Config.in +++ b/package/lua/Config.in @@ -13,7 +13,7 @@ config BR2_PACKAGE_PROVIDES_LUAINTERPRETER choice prompt "Lua Version" - default BR2_PACKAGE_LUA_5_1 + default BR2_PACKAGE_LUA_5_3 help Select the version of Lua API/ABI you wish to use. diff --git a/package/lua/lua.hash b/package/lua/lua.hash index f0fa87dff68..8f0242e02d5 100644 --- a/package/lua/lua.hash +++ b/package/lua/lua.hash @@ -1,6 +1,6 @@ # Hashes from: http://www.lua.org/ftp/ -md5 797adacada8d85761c079390ff1d9961 lua-5.3.1.tar.gz -sha1 1676c6a041d90b6982db8cef1e5fb26000ab6dee lua-5.3.1.tar.gz +md5 33278c2ab5ee3c1a875be8d55c1ca2a1 lua-5.3.2.tar.gz +sha1 7a47adef554fdca7d0c5536148de34579134a973 lua-5.3.2.tar.gz md5 913fdb32207046b273fdb17aad70be13 lua-5.2.4.tar.gz sha1 ef15259421197e3d85b7d6e4871b8c26fd82c1cf lua-5.2.4.tar.gz diff --git a/package/lua/lua.mk b/package/lua/lua.mk index 1279b763c10..37992f26ab3 100644 --- a/package/lua/lua.mk +++ b/package/lua/lua.mk @@ -5,7 +5,7 @@ ################################################################################ ifeq ($(BR2_PACKAGE_LUA_5_3),y) -LUA_VERSION = 5.3.1 +LUA_VERSION = 5.3.2 else ifeq ($(BR2_PACKAGE_LUA_5_2),y) LUA_VERSION = 5.2.4 diff --git a/package/luabitop/Config.in b/package/luabitop/Config.in index c5b3f602bdd..26442fc9106 100644 --- a/package/luabitop/Config.in +++ b/package/luabitop/Config.in @@ -1,11 +1,11 @@ config BR2_PACKAGE_LUABITOP bool "luabitop" - depends on !BR2_PACKAGE_LUA_32BITS + depends on !BR2_PACKAGE_LUA_5_3 help Lua BitOp is a C extension module for Lua 5.1/5.2 which adds bitwise operations on numbers. http://bitop.luajit.org -comment "luabitop needs a full Lua interpreter" - depends on BR2_PACKAGE_LUA_32BITS +comment "luabitop needs a Lua 5.1/5.2 interpreter" + depends on BR2_PACKAGE_LUA_5_3 diff --git a/package/luaposix/0001-sched-workaround-glibc-_POSIX_PRIORITY_SCHEDULING-bu.patch b/package/luaposix/0001-sched-workaround-glibc-_POSIX_PRIORITY_SCHEDULING-bu.patch new file mode 100644 index 00000000000..3853e9fba6c --- /dev/null +++ b/package/luaposix/0001-sched-workaround-glibc-_POSIX_PRIORITY_SCHEDULING-bu.patch @@ -0,0 +1,59 @@ +From de2a9b45e7b4a89affa3ac6d0a010cc627ab4a87 Mon Sep 17 00:00:00 2001 +From: "Gary V. Vaughan" +Date: Mon, 6 Apr 2015 18:39:46 -0700 +Subject: [PATCH 1/1] sched: workaround glibc _POSIX_PRIORITY_SCHEDULING bug. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Close #223. +* configure.ac (AC_CHECK_HEADERS): Add sched.h. +* ext/posix/sched.c: Remove unistd.h; Predicate use of priority +scheduling APIs on presence of sched.h instead of +_POSIX_PRIORITY_SCHEDULING macro erroneously defined by glibc on +Linux. +Reported by ncopa@github.com. + +Backported from: 11cc8a2973569ec7fb1e7c2466dca0282944b124 + +Signed-off-by: Gary V. Vaughan +[Backport] +Signed-off-by: Jörg Krause +--- + configure.ac | 2 +- + ext/posix/sched.c | 5 +++-- + 2 files changed, 4 insertions(+), 3 deletions(-) + +diff --git a/configure.ac b/configure.ac +index aa18318..89a2feb 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -114,7 +114,7 @@ gl_INIT + + ## Check for header files + AC_HEADER_STDC +-AC_CHECK_HEADERS([crypt.h strings.h sys/statvfs.h]) ++AC_CHECK_HEADERS([crypt.h sched.h strings.h sys/statvfs.h]) + AC_CHECK_HEADERS([net/if.h linux/netlink.h], [], [], [ + #include + ]) +diff --git a/ext/posix/sched.c b/ext/posix/sched.c +index 13b196b..f338d73 100644 +--- a/ext/posix/sched.c ++++ b/ext/posix/sched.c +@@ -21,9 +21,10 @@ + + #include + +-#include /* for _POSIX_PRIORITY_SCHEDULING */ ++/* cannot use unistd.h for _POSIX_PRIORITY_SCHEDULING, because on Linux ++ glibc it is defined even though the APIs are not implemented :-( */ + +-#ifdef _POSIX_PRIORITY_SCHEDULING ++#ifdef HAVE_SCHED_H + #include + #endif + +-- +2.5.2 + diff --git a/package/luaposix/luaposix.mk b/package/luaposix/luaposix.mk index ea4ab0291f7..24b567f7f5c 100644 --- a/package/luaposix/luaposix.mk +++ b/package/luaposix/luaposix.mk @@ -9,6 +9,8 @@ LUAPOSIX_SITE = $(call github,luaposix,luaposix,release-v$(LUAPOSIX_VERSION)) LUAPOSIX_LICENSE = MIT LUAPOSIX_LICENSE_FILES = COPYING LUAPOSIX_DEPENDENCIES = luainterpreter host-lua ncurses +# 0001-sched-workaround-glibc-_POSIX_PRIORITY_SCHEDULING-bu.patch +LUAPOSIX_AUTORECONF = YES LUAPOSIX_CONF_OPTS = --libdir="/usr/lib/lua/$(LUAINTERPRETER_ABIVER)" --datarootdir="/usr/share/lua/$(LUAINTERPRETER_ABIVER)" $(eval $(autotools-package)) diff --git a/package/luarocks/luarocks.hash b/package/luarocks/luarocks.hash new file mode 100644 index 00000000000..4d9840a348b --- /dev/null +++ b/package/luarocks/luarocks.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 68e38feeb66052e29ad1935a71b875194ed8b9c67c2223af5f4d4e3e2464ed97 luarocks-2.3.0.tar.gz diff --git a/package/luarocks/luarocks.mk b/package/luarocks/luarocks.mk index ccbaaf79478..656b832b9b3 100644 --- a/package/luarocks/luarocks.mk +++ b/package/luarocks/luarocks.mk @@ -4,7 +4,7 @@ # ################################################################################ -LUAROCKS_VERSION = 2.2.2 +LUAROCKS_VERSION = 2.3.0 LUAROCKS_SITE = http://luarocks.org/releases LUAROCKS_LICENSE = MIT LUAROCKS_LICENSE_FILES = COPYING diff --git a/package/luv/Config.in b/package/luv/Config.in new file mode 100644 index 00000000000..787d16269b9 --- /dev/null +++ b/package/luv/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_LUV + bool "luv" + select BR2_PACKAGE_LIBUV + depends on BR2_TOOLCHAIN_HAS_THREADS # libuv + depends on BR2_USE_MMU # libuv + depends on !BR2_STATIC_LIBS # libuv + help + libuv bindings for LuaJIT and Lua. + + https://github.com/luvit/luv + +comment "luv needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on BR2_USE_MMU diff --git a/package/luv/luv.hash b/package/luv/luv.hash new file mode 100644 index 00000000000..20aaffe562d --- /dev/null +++ b/package/luv/luv.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 d5b21def19a5c411adaac3e817e2c7d3825d1062d8d0024b6ebd7a1f0a0a58d0 luv-1.8.0-0.tar.gz diff --git a/package/luv/luv.mk b/package/luv/luv.mk new file mode 100644 index 00000000000..c5648c56c78 --- /dev/null +++ b/package/luv/luv.mk @@ -0,0 +1,29 @@ +################################################################################ +# +# luv +# +################################################################################ + +LUV_VERSION = 1.8.0-0 +LUV_SITE = https://github.com/luvit/luv/releases/download/$(LUV_VERSION) +LUV_LICENSE = Apache-2.0 +LUV_LICENSE_FILES = LICENSE.txt +LUV_DEPENDENCIES = libuv +LUV_INSTALL_STAGING = YES + +LUV_CONF_OPTS += \ + -DBUILD_MODULE=OFF \ + -DWITH_SHARED_LIBUV=ON \ + -DLUA_BUILD_TYPE=System + +ifeq ($(BR2_PACKAGE_LUAJIT),y) +LUV_DEPENDENCIES += luajit +LUV_CONF_OPTS += \ + -DWITH_LUA_ENGINE=LuaJIT +else +LUV_DEPENDENCIES += lua +LUV_CONF_OPTS += \ + -DWITH_LUA_ENGINE=Lua +endif + +$(eval $(cmake-package)) diff --git a/package/luvi/Config.in b/package/luvi/Config.in new file mode 100644 index 00000000000..2f01f5c2fa7 --- /dev/null +++ b/package/luvi/Config.in @@ -0,0 +1,30 @@ +config BR2_PACKAGE_LUVI + bool "luvi" + depends on BR2_TOOLCHAIN_HAS_THREADS # libuv + depends on BR2_USE_MMU # libuv + depends on !BR2_STATIC_LIBS # libuv + depends on BR2_PACKAGE_LUAJIT + select BR2_PACKAGE_LIBUV + select BR2_PACKAGE_LUV + help + A project in-between luv and luvit. The goal of this is to make + building luvit and derivatives much easier. + + luvi extends LuaJIT with asynchronous I/O and several optional + modules to run Lua applications and build self-contained binaries + on systems that don't have a compiler. + + The luvi core can be extended with several Lua modules by adding its + bundled Lua binding libraries. To get the Lua module... + * 'rex' select PCRE (BR2_PACKAGE_PCRE) + * 'ssl' select OpenSSL (BR2_PACKAGE_OPENSSL) + * 'zlib' select zlib (BR2_PACKAGE_ZLIB) + + https://github.com/luvit/luvi + +comment "luvi needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on BR2_USE_MMU + +comment "luvi needs LuaJIT" + depends on !BR2_PACKAGE_LUAJIT diff --git a/package/luvi/luvi.hash b/package/luvi/luvi.hash new file mode 100644 index 00000000000..325c84f591a --- /dev/null +++ b/package/luvi/luvi.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 883fca4d50c18dc5b248144a00526b718e7c4c91841123b4a0732fef2b8791f4 luvi-src-v2.5.1.tar.gz diff --git a/package/luvi/luvi.mk b/package/luvi/luvi.mk new file mode 100644 index 00000000000..d83933e9b31 --- /dev/null +++ b/package/luvi/luvi.mk @@ -0,0 +1,62 @@ +################################################################################ +# +# luvi +# +################################################################################ + +LUVI_VERSION = v2.5.1 +LUVI_SOURCE = luvi-src-$(LUVI_VERSION).tar.gz +LUVI_SITE = https://github.com/luvit/luvi/releases/download/$(LUVI_VERSION) +LUVI_LICENSE = Apache-2.0 +LUVI_LICENSE_FILES = LICENSE.txt +LUVI_DEPENDENCIES = libuv luajit luv host-luajit + +# Dispatch all architectures of LuaJIT +ifeq ($(BR2_i386),y) +LUVI_TARGET_ARCH = x86 +else ifeq ($(BR2_x86_64),y) +LUVI_TARGET_ARCH = x64 +else ifeq ($(BR2_powerpc),y) +LUVI_TARGET_ARCH = ppc +else ifeq ($(BR2_arm)$(BR2_armeb),y) +LUVI_TARGET_ARCH = arm +else ifeq ($(BR2_mips),y) +LUVI_TARGET_ARCH = mips +else ifeq ($(BR2_mipsel),y) +LUVI_TARGET_ARCH = mipsel +else +LUVI_TARGET_ARCH = $(BR2_ARCH) +endif + +# Bundled lua bindings have to be linked statically into the luvi executable +LUVI_CONF_OPTS = \ + -DBUILD_SHARED_LIBS=OFF \ + -DWithSharedLibluv=ON \ + -DTARGET_ARCH=$(LUVI_TARGET_ARCH) \ + -DLUA_PATH=$(HOST_DIR)/usr/share/luajit-2.0.4/?.lua + +# Add "rex" module (PCRE via bundled lrexlib) +ifeq ($(BR2_PACKAGE_PCRE),y) +LUVI_DEPENDENCIES += pcre +LUVI_CONF_OPTS += -DWithPCRE=ON -DWithSharedPCRE=ON +else +LUVI_CONF_OPTS += -DWithPCRE=OFF -DWithSharedPCRE=OFF +endif + +# Add "ssl" module (via bundled lua-openssl) +ifeq ($(BR2_PACKAGE_OPENSSL),y) +LUVI_DEPENDENCIES += openssl +LUVI_CONF_OPTS += -DWithOpenSSL=ON -DWithOpenSSLASM=ON -DWithSharedOpenSSL=ON +else +LUVI_CONF_OPTS += -DWithOpenSSL=OFF -DWithOpenSSLASM=OFF -DWithSharedOpenSSL=OFF +endif + +# Add "zlib" module (via bundled lua-zlib) +ifeq ($(BR2_PACKAGE_ZLIB),y) +LUVI_DEPENDENCIES += zlib +LUVI_CONF_OPTS += -DWithZLIB=ON -DWithSharedZLIB=ON +else +LUVI_CONF_OPTS += -DWithZLIB=OFF -DWithSharedZLIB=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/lvm2/lvm2.hash b/package/lvm2/lvm2.hash index eda465d1fb8..17434ff99d3 100644 --- a/package/lvm2/lvm2.hash +++ b/package/lvm2/lvm2.hash @@ -1,2 +1,2 @@ -# From ftp://sources.redhat.com/pub/lvm2/md5.sum -md5 2d24ba982c8a85e8c837210f087a6a51 LVM2.2.02.125.tgz +# From ftp://sources.redhat.com/pub/lvm2/releases/sha512.sum +sha512 d827cbd5dde6079f9fedb6bd64025d33a93a00cd1af6d57873be78df07069c5b9921077d6be98a6445829cfea28ba7a5520db0be58d6e7a7824f1a722d739fb6 LVM2.2.02.138.tgz diff --git a/package/lvm2/lvm2.mk b/package/lvm2/lvm2.mk index 0930a1002dc..0d0dc2c83e9 100644 --- a/package/lvm2/lvm2.mk +++ b/package/lvm2/lvm2.mk @@ -4,11 +4,11 @@ # ################################################################################ -LVM2_VERSION = 2.02.125 +LVM2_VERSION = 2.02.138 LVM2_SOURCE = LVM2.$(LVM2_VERSION).tgz LVM2_SITE = ftp://sources.redhat.com/pub/lvm2/releases LVM2_INSTALL_STAGING = YES -LVM2_LICENSE = GPLv2 LGPLv2.1 +LVM2_LICENSE = GPLv2, LGPLv2.1 LVM2_LICENSE_FILES = COPYING COPYING.LIB # Make sure that binaries and libraries are installed with write diff --git a/package/lxc/Config.in b/package/lxc/Config.in index ffd9b4a061e..a5df3e32eb6 100644 --- a/package/lxc/Config.in +++ b/package/lxc/Config.in @@ -6,8 +6,7 @@ config BR2_PACKAGE_LXC # build system forcefully builds a shared library depends on !BR2_STATIC_LIBS # the toolchain doesn't support setns syscall - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # libcap help Linux Containers (LXC), provides the ability to group and isolate @@ -18,8 +17,7 @@ config BR2_PACKAGE_LXC comment "lxc needs a toolchain w/ threads, headers >= 3.0, dynamic library" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII depends on !BR2_TOOLCHAIN_HAS_THREADS \ || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 \ || BR2_STATIC_LIBS diff --git a/package/lxc/lxc.hash b/package/lxc/lxc.hash index dcc532c0e8a..747010162c7 100644 --- a/package/lxc/lxc.hash +++ b/package/lxc/lxc.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 34ba517ffd7b38a14e5d12d56a4928b78602d56311d5f47c3ef90f4e714b9604 lxc-1.1.2.tar.gz +# Locally calculated +sha256 9588ad1b04e114ee7370f690c65131e28098b28d2521d97c73557d11897ed0be lxc-1.1.5.tar.gz diff --git a/package/lxc/lxc.mk b/package/lxc/lxc.mk index c7ebda4fdc3..819096959a3 100644 --- a/package/lxc/lxc.mk +++ b/package/lxc/lxc.mk @@ -4,8 +4,8 @@ # ################################################################################ -LXC_VERSION = 1.1.2 -LXC_SITE = https://linuxcontainers.org/downloads +LXC_VERSION = 1.1.5 +LXC_SITE = https://linuxcontainers.org/downloads/lxc LXC_LICENSE = LGPLv2.1+ LXC_LICENSE_FILES = COPYING LXC_DEPENDENCIES = libcap host-pkgconf @@ -15,4 +15,11 @@ LXC_CONF_OPTS = --disable-apparmor --with-distro=buildroot \ --disable-lua --disable-python \ $(if $(BR2_PACKAGE_BASH),,--disable-bash) +ifeq ($(BR2_PACKAGE_LIBSECCOMP),y) +LXC_CONF_OPTS += --enable-seccomp +LXC_DEPENDENCIES += libseccomp +else +LXC_CONF_OPTS += --disable-seccomp +endif + $(eval $(autotools-package)) diff --git a/package/lz4/Config.in b/package/lz4/Config.in index 677658cab04..4a00a70365e 100644 --- a/package/lz4/Config.in +++ b/package/lz4/Config.in @@ -7,4 +7,4 @@ config BR2_PACKAGE_LZ4 in multiple GB/s per core, typically reaching RAM speed limits on multi-core systems. - https://code.google.com/p/lz4/ + http://www.lz4.org/ diff --git a/package/macchanger/macchanger.mk b/package/macchanger/macchanger.mk index 5ded0b8097b..a7ea943ab14 100644 --- a/package/macchanger/macchanger.mk +++ b/package/macchanger/macchanger.mk @@ -7,5 +7,6 @@ MACCHANGER_VERSION = 1.6.0 MACCHANGER_SITE = $(BR2_GNU_MIRROR)/macchanger MACCHANGER_LICENSE = GPLv2+ +MACCHANGER_LICENSE_FILES = src/main.c $(eval $(autotools-package)) diff --git a/package/make/make.mk b/package/make/make.mk index ebfa2f0319c..20702dc2371 100644 --- a/package/make/make.mk +++ b/package/make/make.mk @@ -11,16 +11,11 @@ MAKE_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) MAKE_LICENSE = GPLv3+ MAKE_LICENSE_FILES = COPYING +MAKE_CONF_OPTS = --without-guile + # Disable the 'load' operation for static builds since it needs dlopen ifeq ($(BR2_STATIC_LIBS),y) MAKE_CONF_OPTS += --disable-load endif -ifeq ($(BR2_PACKAGE_GUILE),y) -MAKE_DEPENDENCIES += guile -MAKE_CONF_OPTS += --with-guile -else -MAKE_CONF_OPTS += --without-guile -endif - $(eval $(autotools-package)) diff --git a/package/makedevs/makedevs.c b/package/makedevs/makedevs.c index 53ff6fef0ec..e5ef16413e6 100644 --- a/package/makedevs/makedevs.c +++ b/package/makedevs/makedevs.c @@ -40,6 +40,8 @@ const char *bb_applet_name; uid_t recursive_uid; gid_t recursive_gid; unsigned int recursive_mode; +#define PASSWD_PATH "etc/passwd" /* MUST be relative */ +#define GROUP_PATH "etc/group" /* MUST be relative */ void bb_verror_msg(const char *s, va_list p) { @@ -255,10 +257,20 @@ char *bb_get_chomped_line_from_file(FILE *file) long my_getpwnam(const char *name) { struct passwd *myuser; - - myuser = getpwnam(name); - if (myuser==NULL) - bb_error_msg_and_die("unknown user name: %s", name); + FILE *stream; + + stream = bb_xfopen(PASSWD_PATH, "r"); + while(1) { + errno = 0; + myuser = fgetpwent(stream); + if (myuser == NULL) + bb_error_msg_and_die("unknown user name: %s", name); + if (errno) + bb_perror_msg_and_die("fgetpwent"); + if (!strcmp(name, myuser->pw_name)) + break; + } + fclose(stream); return myuser->pw_uid; } @@ -266,12 +278,22 @@ long my_getpwnam(const char *name) long my_getgrnam(const char *name) { struct group *mygroup; + FILE *stream; + + stream = bb_xfopen(GROUP_PATH, "r"); + while(1) { + errno = 0; + mygroup = fgetgrent(stream); + if (mygroup == NULL) + bb_error_msg_and_die("unknown group name: %s", name); + if (errno) + bb_perror_msg_and_die("fgetgrent"); + if (!strcmp(name, mygroup->gr_name)) + break; + } + fclose(stream); - mygroup = getgrnam(name); - if (mygroup==NULL) - bb_error_msg_and_die("unknown group name: %s", name); - - return (mygroup->gr_gid); + return mygroup->gr_gid; } unsigned long get_ug_id(const char *s, long (*my_getxxnam)(const char *)) diff --git a/package/mbedtls/Config.in b/package/mbedtls/Config.in new file mode 100644 index 00000000000..24f0f489d41 --- /dev/null +++ b/package/mbedtls/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_MBEDTLS + bool "mbedtls" + help + mbed TLS (formerly known as PolarSSL) makes it trivially easy + for developers to include cryptographic and SSL/TLS + capabilities in their (embedded) products, facilitating this + functionality with a minimal coding footprint. + + https://tls.mbed.org/ + +if BR2_PACKAGE_MBEDTLS + +config BR2_PACKAGE_MBEDTLS_PROGRAMS + bool "mbedtls programs" + depends on BR2_USE_MMU # fork() + help + This option enables the installation and the build of + mbed TLS companion programs. + +endif diff --git a/package/mbedtls/mbedtls.hash b/package/mbedtls/mbedtls.hash new file mode 100644 index 00000000000..eebbfe85610 --- /dev/null +++ b/package/mbedtls/mbedtls.hash @@ -0,0 +1,2 @@ +# From https://tls.mbed.org/tech-updates/releases/mbedtls-2.2.1-2.1.4-1.3.16-and-polarssl.1.2.19-released +sha256 6ddd5ca2e7dfb43d2fd750400856246fc1c98344dabf01b1594eb2f9880ef7ce mbedtls-2.2.1-apache.tgz diff --git a/package/mbedtls/mbedtls.mk b/package/mbedtls/mbedtls.mk new file mode 100644 index 00000000000..fe166e21f4d --- /dev/null +++ b/package/mbedtls/mbedtls.mk @@ -0,0 +1,64 @@ +################################################################################ +# +# mbedtls +# +################################################################################ + +MBEDTLS_SITE = https://tls.mbed.org/code/releases +MBEDTLS_VERSION = 2.2.1 +MBEDTLS_SOURCE = mbedtls-$(MBEDTLS_VERSION)-apache.tgz +MBEDTLS_CONF_OPTS = \ + -DENABLE_PROGRAMS=$(if $(BR2_PACKAGE_MBEDTLS_PROGRAMS),ON,OFF) \ + -DENABLE_TESTING=OFF +MBEDTLS_INSTALL_STAGING = YES +MBEDTLS_LICENSE = Apache-2.0 +MBEDTLS_LICENSE_FILES = apache-2.0.txt + +# This is mandatory for hiawatha +ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) +define MBEDTLS_ENABLE_THREADING + $(SED) "s://#define MBEDTLS_THREADING_C:#define MBEDTLS_THREADING_C:" \ + $(@D)/include/mbedtls/config.h + $(SED) "s://#define MBEDTLS_THREADING_PTHREAD:#define MBEDTLS_THREADING_PTHREAD:" \ + $(@D)/include/mbedtls/config.h +endef +MBEDTLS_POST_PATCH_HOOKS += MBEDTLS_ENABLE_THREADING +endif + +ifeq ($(BR2_STATIC_LIBS),y) +MBEDTLS_CONF_OPTS += \ + -DUSE_SHARED_MBEDTLS_LIBRARY=OFF -DUSE_STATIC_MBEDTLS_LIBRARY=ON +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) +MBEDTLS_CONF_OPTS += \ + -DUSE_SHARED_MBEDTLS_LIBRARY=ON -DUSE_STATIC_MBEDTLS_LIBRARY=ON +else ifeq ($(BR2_SHARED_LIBS),y) +MBEDTLS_CONF_OPTS += \ + -DUSE_SHARED_MBEDTLS_LIBRARY=ON -DUSE_STATIC_MBEDTLS_LIBRARY=OFF +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +MBEDTLS_CONF_OPTS += -DENABLE_ZLIB_SUPPORT=ON +MBEDTLS_DEPENDENCIES += zlib +else +MBEDTLS_CONF_OPTS += -DENABLE_ZLIB_SUPPORT=OFF +endif + +define MBEDTLS_DISABLE_ASM + $(SED) '/^#define MBEDTLS_AESNI_C/d' \ + $(@D)/include/mbedtls/config.h + $(SED) '/^#define MBEDTLS_HAVE_ASM/d' \ + $(@D)/include/mbedtls/config.h + $(SED) '/^#define MBEDTLS_PADLOCK_C/d' \ + $(@D)/include/mbedtls/config.h +endef + +# ARM in thumb mode breaks debugging with asm optimizations +# Microblaze asm optimizations are broken in general +# MIPS R6 asm is not yet supported +ifeq ($(BR2_ENABLE_DEBUG)$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_ARM_INSTRUCTIONS_THUMB2),yy) +MBEDTLS_POST_CONFIGURE_HOOKS += MBEDTLS_DISABLE_ASM +else ifeq ($(BR2_microblaze)$(BR2_mips_32r6)$(BR2_mips_64r6),y) +MBEDTLS_POST_CONFIGURE_HOOKS += MBEDTLS_DISABLE_ASM +endif + +$(eval $(cmake-package)) diff --git a/package/mc/mc.hash b/package/mc/mc.hash index 7ae1c3bc115..810d1446fcf 100644 --- a/package/mc/mc.hash +++ b/package/mc/mc.hash @@ -1,2 +1,2 @@ -# Hash from http://ftp.midnight-commander.org/mc-4.8.14.sha256: -sha256 6b1f74efbdf394bfab084f4d2ea2e72173de5f12cd42be2533ca2c3b72edb8e6 mc-4.8.14.tar.xz +# Hash from http://ftp.midnight-commander.org/mc-4.8.15.sha256: +sha256 cf4e8f5dfe419830d56ca7e5f2495898e37ebcd05da1e47ff7041446c87fba16 mc-4.8.15.tar.xz diff --git a/package/mc/mc.mk b/package/mc/mc.mk index 2803c90eec4..eb4b104eed0 100644 --- a/package/mc/mc.mk +++ b/package/mc/mc.mk @@ -4,13 +4,20 @@ # ################################################################################ -MC_VERSION = 4.8.14 +MC_VERSION = 4.8.15 MC_SOURCE = mc-$(MC_VERSION).tar.xz MC_SITE = http://ftp.midnight-commander.org MC_LICENSE = GPLv3+ MC_LICENSE_FILES = COPYING MC_DEPENDENCIES = libglib2 host-pkgconf +ifeq ($(BR2_PACKAGE_LIBSSH2),y) +MC_CONF_OPTS += --enable-vfs-sftp +MC_DEPENDENCIES += libssh2 +else +MC_CONF_OPTS += --disable-vfs-sftp +endif + # mc prefers slang, so use that if enabled, otherwise # fallback to using ncurses. # Either or both will be enabled, but we prefer slang. diff --git a/package/mdadm/mdadm.hash b/package/mdadm/mdadm.hash index 45b79ddf87b..7f228d99dcb 100644 --- a/package/mdadm/mdadm.hash +++ b/package/mdadm/mdadm.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/utils/raid/mdadm/sha256sums.asc -sha256 0f3a7e1a76b13892b79f9fceaf99ecb23513260389a768ac644ffa3ae06e5b8c mdadm-3.3.2.tar.xz +sha256 8ae5f45306b873190e91f410709b00e51997b633c072b33f8efd9f7df022ca68 mdadm-3.3.4.tar.xz diff --git a/package/mdadm/mdadm.mk b/package/mdadm/mdadm.mk index 88f358f6c22..7558c18ad82 100644 --- a/package/mdadm/mdadm.mk +++ b/package/mdadm/mdadm.mk @@ -4,7 +4,7 @@ # ################################################################################ -MDADM_VERSION = 3.3.2 +MDADM_VERSION = 3.3.4 MDADM_SOURCE = mdadm-$(MDADM_VERSION).tar.xz MDADM_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/raid/mdadm MDADM_LICENSE = GPLv2+ diff --git a/package/media-ctl/0001-add-kernel-headers-for-compatibility-with-old-toolchains.patch b/package/media-ctl/0001-add-kernel-headers-for-compatibility-with-old-toolchains.patch deleted file mode 100644 index 17b52ced73a..00000000000 --- a/package/media-ctl/0001-add-kernel-headers-for-compatibility-with-old-toolchains.patch +++ /dev/null @@ -1,303 +0,0 @@ -From 480b9effa08541b5df369dd6516013282cf28bd8 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Sun, 6 Oct 2013 17:24:04 +0200 -Subject: [PATCH] Add kernel headers for compatibility with old toolchains - -The media controller mechanism is relatively new in the Linux kernel, -and therefore all toolchains don't yet have the necessary -headers. This patch makes sure that media-ctl provides such headers, -as was already the case with v4l2-common.h, v4l2-subdev.h and -videodev2.h. - -Signed-off-by: Thomas Petazzoni ---- - configure.ac | 6 +-- - src/linux/media.h | 132 ++++++++++++++++++++++++++++++++++++++++++++++ - src/linux/v4l2-mediabus.h | 119 +++++++++++++++++++++++++++++++++++++++++ - 3 files changed, 252 insertions(+), 5 deletions(-) - create mode 100644 src/linux/media.h - create mode 100644 src/linux/v4l2-mediabus.h - -diff --git a/configure.ac b/configure.ac -index a749794..56eb71f 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -51,11 +51,7 @@ AC_ARG_WITH(kernel-headers, - CPPFLAGS="$CPPFLAGS -I$KERNEL_HEADERS_DIR/include" - - # Checks for header files. --AC_CHECK_HEADERS([linux/media.h \ -- linux/types.h \ -- linux/v4l2-mediabus.h \ -- linux/v4l2-subdev.h \ -- linux/videodev2.h], -+AC_CHECK_HEADERS([linux/types.h], - [], - [echo "ERROR: Kernel header file not found or not usable!"; exit 1]) - -diff --git a/src/linux/media.h b/src/linux/media.h -new file mode 100644 -index 0000000..410e7cc ---- /dev/null -+++ b/src/linux/media.h -@@ -0,0 +1,132 @@ -+/* -+ * Multimedia device API -+ * -+ * Copyright (C) 2010 Nokia Corporation -+ * -+ * Contacts: Laurent Pinchart -+ * Sakari Ailus -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License version 2 as -+ * published by the Free Software Foundation. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -+ */ -+ -+#ifndef __LINUX_MEDIA_H -+#define __LINUX_MEDIA_H -+ -+#include -+#include -+#include -+ -+#define MEDIA_API_VERSION KERNEL_VERSION(0, 1, 0) -+ -+struct media_device_info { -+ char driver[16]; -+ char model[32]; -+ char serial[40]; -+ char bus_info[32]; -+ __u32 media_version; -+ __u32 hw_revision; -+ __u32 driver_version; -+ __u32 reserved[31]; -+}; -+ -+#define MEDIA_ENT_ID_FLAG_NEXT (1 << 31) -+ -+#define MEDIA_ENT_TYPE_SHIFT 16 -+#define MEDIA_ENT_TYPE_MASK 0x00ff0000 -+#define MEDIA_ENT_SUBTYPE_MASK 0x0000ffff -+ -+#define MEDIA_ENT_T_DEVNODE (1 << MEDIA_ENT_TYPE_SHIFT) -+#define MEDIA_ENT_T_DEVNODE_V4L (MEDIA_ENT_T_DEVNODE + 1) -+#define MEDIA_ENT_T_DEVNODE_FB (MEDIA_ENT_T_DEVNODE + 2) -+#define MEDIA_ENT_T_DEVNODE_ALSA (MEDIA_ENT_T_DEVNODE + 3) -+#define MEDIA_ENT_T_DEVNODE_DVB (MEDIA_ENT_T_DEVNODE + 4) -+ -+#define MEDIA_ENT_T_V4L2_SUBDEV (2 << MEDIA_ENT_TYPE_SHIFT) -+#define MEDIA_ENT_T_V4L2_SUBDEV_SENSOR (MEDIA_ENT_T_V4L2_SUBDEV + 1) -+#define MEDIA_ENT_T_V4L2_SUBDEV_FLASH (MEDIA_ENT_T_V4L2_SUBDEV + 2) -+#define MEDIA_ENT_T_V4L2_SUBDEV_LENS (MEDIA_ENT_T_V4L2_SUBDEV + 3) -+ -+#define MEDIA_ENT_FL_DEFAULT (1 << 0) -+ -+struct media_entity_desc { -+ __u32 id; -+ char name[32]; -+ __u32 type; -+ __u32 revision; -+ __u32 flags; -+ __u32 group_id; -+ __u16 pads; -+ __u16 links; -+ -+ __u32 reserved[4]; -+ -+ union { -+ /* Node specifications */ -+ struct { -+ __u32 major; -+ __u32 minor; -+ } v4l; -+ struct { -+ __u32 major; -+ __u32 minor; -+ } fb; -+ struct { -+ __u32 card; -+ __u32 device; -+ __u32 subdevice; -+ } alsa; -+ int dvb; -+ -+ /* Sub-device specifications */ -+ /* Nothing needed yet */ -+ __u8 raw[184]; -+ }; -+}; -+ -+#define MEDIA_PAD_FL_SINK (1 << 0) -+#define MEDIA_PAD_FL_SOURCE (1 << 1) -+ -+struct media_pad_desc { -+ __u32 entity; /* entity ID */ -+ __u16 index; /* pad index */ -+ __u32 flags; /* pad flags */ -+ __u32 reserved[2]; -+}; -+ -+#define MEDIA_LNK_FL_ENABLED (1 << 0) -+#define MEDIA_LNK_FL_IMMUTABLE (1 << 1) -+#define MEDIA_LNK_FL_DYNAMIC (1 << 2) -+ -+struct media_link_desc { -+ struct media_pad_desc source; -+ struct media_pad_desc sink; -+ __u32 flags; -+ __u32 reserved[2]; -+}; -+ -+struct media_links_enum { -+ __u32 entity; -+ /* Should have enough room for pads elements */ -+ struct media_pad_desc *pads; -+ /* Should have enough room for links elements */ -+ struct media_link_desc *links; -+ __u32 reserved[4]; -+}; -+ -+#define MEDIA_IOC_DEVICE_INFO _IOWR('|', 0x00, struct media_device_info) -+#define MEDIA_IOC_ENUM_ENTITIES _IOWR('|', 0x01, struct media_entity_desc) -+#define MEDIA_IOC_ENUM_LINKS _IOWR('|', 0x02, struct media_links_enum) -+#define MEDIA_IOC_SETUP_LINK _IOWR('|', 0x03, struct media_link_desc) -+ -+#endif /* __LINUX_MEDIA_H */ -diff --git a/src/linux/v4l2-mediabus.h b/src/linux/v4l2-mediabus.h -new file mode 100644 -index 0000000..7d64e0e ---- /dev/null -+++ b/src/linux/v4l2-mediabus.h -@@ -0,0 +1,119 @@ -+/* -+ * Media Bus API header -+ * -+ * Copyright (C) 2009, Guennadi Liakhovetski -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License version 2 as -+ * published by the Free Software Foundation. -+ */ -+ -+#ifndef __LINUX_V4L2_MEDIABUS_H -+#define __LINUX_V4L2_MEDIABUS_H -+ -+#include -+#include -+ -+/* -+ * These pixel codes uniquely identify data formats on the media bus. Mostly -+ * they correspond to similarly named V4L2_PIX_FMT_* formats, format 0 is -+ * reserved, V4L2_MBUS_FMT_FIXED shall be used by host-client pairs, where the -+ * data format is fixed. Additionally, "2X8" means that one pixel is transferred -+ * in two 8-bit samples, "BE" or "LE" specify in which order those samples are -+ * transferred over the bus: "LE" means that the least significant bits are -+ * transferred first, "BE" means that the most significant bits are transferred -+ * first, and "PADHI" and "PADLO" define which bits - low or high, in the -+ * incomplete high byte, are filled with padding bits. -+ * -+ * The pixel codes are grouped by type, bus_width, bits per component, samples -+ * per pixel and order of subsamples. Numerical values are sorted using generic -+ * numerical sort order (8 thus comes before 10). -+ * -+ * As their value can't change when a new pixel code is inserted in the -+ * enumeration, the pixel codes are explicitly given a numerical value. The next -+ * free values for each category are listed below, update them when inserting -+ * new pixel codes. -+ */ -+enum v4l2_mbus_pixelcode { -+ V4L2_MBUS_FMT_FIXED = 0x0001, -+ -+ /* RGB - next is 0x1009 */ -+ V4L2_MBUS_FMT_RGB444_2X8_PADHI_BE = 0x1001, -+ V4L2_MBUS_FMT_RGB444_2X8_PADHI_LE = 0x1002, -+ V4L2_MBUS_FMT_RGB555_2X8_PADHI_BE = 0x1003, -+ V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE = 0x1004, -+ V4L2_MBUS_FMT_BGR565_2X8_BE = 0x1005, -+ V4L2_MBUS_FMT_BGR565_2X8_LE = 0x1006, -+ V4L2_MBUS_FMT_RGB565_2X8_BE = 0x1007, -+ V4L2_MBUS_FMT_RGB565_2X8_LE = 0x1008, -+ -+ /* YUV (including grey) - next is 0x2014 */ -+ V4L2_MBUS_FMT_Y8_1X8 = 0x2001, -+ V4L2_MBUS_FMT_UYVY8_1_5X8 = 0x2002, -+ V4L2_MBUS_FMT_VYUY8_1_5X8 = 0x2003, -+ V4L2_MBUS_FMT_YUYV8_1_5X8 = 0x2004, -+ V4L2_MBUS_FMT_YVYU8_1_5X8 = 0x2005, -+ V4L2_MBUS_FMT_UYVY8_2X8 = 0x2006, -+ V4L2_MBUS_FMT_VYUY8_2X8 = 0x2007, -+ V4L2_MBUS_FMT_YUYV8_2X8 = 0x2008, -+ V4L2_MBUS_FMT_YVYU8_2X8 = 0x2009, -+ V4L2_MBUS_FMT_Y10_1X10 = 0x200a, -+ V4L2_MBUS_FMT_YUYV10_2X10 = 0x200b, -+ V4L2_MBUS_FMT_YVYU10_2X10 = 0x200c, -+ V4L2_MBUS_FMT_Y12_1X12 = 0x2013, -+ V4L2_MBUS_FMT_UYVY8_1X16 = 0x200f, -+ V4L2_MBUS_FMT_VYUY8_1X16 = 0x2010, -+ V4L2_MBUS_FMT_YUYV8_1X16 = 0x2011, -+ V4L2_MBUS_FMT_YVYU8_1X16 = 0x2012, -+ V4L2_MBUS_FMT_YUYV10_1X20 = 0x200d, -+ V4L2_MBUS_FMT_YVYU10_1X20 = 0x200e, -+ -+ /* Bayer - next is 0x3015 */ -+ V4L2_MBUS_FMT_SBGGR8_1X8 = 0x3001, -+ V4L2_MBUS_FMT_SGBRG8_1X8 = 0x3013, -+ V4L2_MBUS_FMT_SGRBG8_1X8 = 0x3002, -+ V4L2_MBUS_FMT_SRGGB8_1X8 = 0x3014, -+ V4L2_MBUS_FMT_SBGGR10_DPCM8_1X8 = 0x300b, -+ V4L2_MBUS_FMT_SGBRG10_DPCM8_1X8 = 0x300c, -+ V4L2_MBUS_FMT_SGRBG10_DPCM8_1X8 = 0x3009, -+ V4L2_MBUS_FMT_SRGGB10_DPCM8_1X8 = 0x300d, -+ V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_BE = 0x3003, -+ V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_LE = 0x3004, -+ V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_BE = 0x3005, -+ V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_LE = 0x3006, -+ V4L2_MBUS_FMT_SBGGR10_1X10 = 0x3007, -+ V4L2_MBUS_FMT_SGBRG10_1X10 = 0x300e, -+ V4L2_MBUS_FMT_SGRBG10_1X10 = 0x300a, -+ V4L2_MBUS_FMT_SRGGB10_1X10 = 0x300f, -+ V4L2_MBUS_FMT_SBGGR12_1X12 = 0x3008, -+ V4L2_MBUS_FMT_SGBRG12_1X12 = 0x3010, -+ V4L2_MBUS_FMT_SGRBG12_1X12 = 0x3011, -+ V4L2_MBUS_FMT_SRGGB12_1X12 = 0x3012, -+ -+ /* JPEG compressed formats - next is 0x4002 */ -+ V4L2_MBUS_FMT_JPEG_1X8 = 0x4001, -+ -+ /* Vendor specific formats - next is 0x5002 */ -+ -+ /* S5C73M3 sensor specific interleaved UYVY and JPEG */ -+ V4L2_MBUS_FMT_S5C_UYVY_JPEG_1X8 = 0x5001, -+}; -+ -+/** -+ * struct v4l2_mbus_framefmt - frame format on the media bus -+ * @width: frame width -+ * @height: frame height -+ * @code: data format code (from enum v4l2_mbus_pixelcode) -+ * @field: used interlacing type (from enum v4l2_field) -+ * @colorspace: colorspace of the data (from enum v4l2_colorspace) -+ */ -+struct v4l2_mbus_framefmt { -+ __u32 width; -+ __u32 height; -+ __u32 code; -+ __u32 field; -+ __u32 colorspace; -+ __u32 reserved[7]; -+}; -+ -+#endif --- -1.8.1.2 - diff --git a/package/media-ctl/Config.in b/package/media-ctl/Config.in deleted file mode 100644 index 8d1beda69a0..00000000000 --- a/package/media-ctl/Config.in +++ /dev/null @@ -1,9 +0,0 @@ -config BR2_PACKAGE_MEDIA_CTL - bool "media-ctl" - help - Media controller control application - - Useful mostly with ARM OMAP processors to configure and - control the image subsystem - - http://git.ideasonboard.org/media-ctl.git diff --git a/package/media-ctl/media-ctl.mk b/package/media-ctl/media-ctl.mk deleted file mode 100644 index ae0d47075a2..00000000000 --- a/package/media-ctl/media-ctl.mk +++ /dev/null @@ -1,17 +0,0 @@ -################################################################################ -# -# media-ctl -# -################################################################################ - -MEDIA_CTL_VERSION = 87f58c2ed885d636229f7209fde883058433a1ce -MEDIA_CTL_SITE = git://git.ideasonboard.org/media-ctl.git -MEDIA_CTL_INSTALL_STAGING = YES -MEDIA_CTL_LICENSE = LGPLv2.1+ -MEDIA_CTL_LICENSE_FILES = COPYING.LIB - -MEDIA_CTL_AUTORECONF = YES -MEDIA_CTL_CONF_OPTS = --with-kernel-headers=$(STAGING_DIR)/usr/include -MEDIA_CTL_DEPENDENCIES = host-pkgconf - -$(eval $(autotools-package)) diff --git a/package/mediastreamer/mediastreamer.mk b/package/mediastreamer/mediastreamer.mk index 79d8e75ae31..81f5b502d42 100644 --- a/package/mediastreamer/mediastreamer.mk +++ b/package/mediastreamer/mediastreamer.mk @@ -20,6 +20,27 @@ else MEDIASTREAMER_CONF_OPTS += --disable-alsa endif +ifeq ($(BR2_PACKAGE_LIBUPNP),y) +MEDIASTREAMER_CONF_OPTS += --enable-upnp +MEDIASTREAMER_DEPENDENCIES += libupnp +else +MEDIASTREAMER_CONF_OPTS += --disable-upnp +endif + +ifeq ($(BR2_PACKAGE_LIBVPX),y) +MEDIASTREAMER_CONF_OPTS += --enable-vp8 +MEDIASTREAMER_DEPENDENCIES += libvpx +else +MEDIASTREAMER_CONF_OPTS += --disable-vp8 +endif + +ifeq ($(BR2_PACKAGE_OPUS),y) +MEDIASTREAMER_CONF_OPTS += --enable-opus +MEDIASTREAMER_DEPENDENCIES += opus +else +MEDIASTREAMER_CONF_OPTS += --disable-opus +endif + # portaudio backend needs speex as well ifeq ($(BR2_PACKAGE_PORTAUDIO)$(BR2_PACKAGE_SPEEX),yy) MEDIASTREAMER_CONF_OPTS += --enable-portaudio diff --git a/package/memcached/memcached.hash b/package/memcached/memcached.hash index 55376cec036..ed330cff1da 100644 --- a/package/memcached/memcached.hash +++ b/package/memcached/memcached.hash @@ -1,2 +1,4 @@ -# From http://www.memcached.org/files/memcached-1.4.24.tar.gz.sha1 -sha1 32a798a37ef782da10a09d74aa1e5be91f2861db memcached-1.4.24.tar.gz +# From http://www.memcached.org/files/memcached-1.4.25.tar.gz.sha1 +sha1 7fd0ba9283c61204f196638ecf2e9295688b2314 memcached-1.4.25.tar.gz +# Calculated based on the hash above +sha256 f058437b3c224d321919a9a6bb4e3eedb2312ed718c0caf087ff2f04ab795dda memcached-1.4.25.tar.gz diff --git a/package/memcached/memcached.mk b/package/memcached/memcached.mk index 2d39bd87cce..b0753e4a32e 100644 --- a/package/memcached/memcached.mk +++ b/package/memcached/memcached.mk @@ -4,7 +4,7 @@ # ################################################################################ -MEMCACHED_VERSION = 1.4.24 +MEMCACHED_VERSION = 1.4.25 MEMCACHED_SITE = http://www.memcached.org/files MEMCACHED_DEPENDENCIES = libevent MEMCACHED_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' diff --git a/package/memtest86/memtest86.hash b/package/memtest86/memtest86.hash index cac0be75cad..81ad98e72ed 100644 --- a/package/memtest86/memtest86.hash +++ b/package/memtest86/memtest86.hash @@ -1,2 +1,2 @@ # locally computed using sha256sum -sha256 5630ce978d0e6b671891df4253fc5c54659764d0cdfc7515ac0df3d8dd9e8737 memtest86+-4.20.tar.gz +sha256 142127b7953fbd829b1057fb64a78d3340c2b771484230a7347e94530a0d9039 memtest86+-5.01.tar.gz diff --git a/package/memtest86/memtest86.mk b/package/memtest86/memtest86.mk index ef98f612d9f..d2ec1a79923 100644 --- a/package/memtest86/memtest86.mk +++ b/package/memtest86/memtest86.mk @@ -4,7 +4,7 @@ # ################################################################################ -MEMTEST86_VERSION = 4.20 +MEMTEST86_VERSION = 5.01 MEMTEST86_SOURCE = memtest86+-$(MEMTEST86_VERSION).tar.gz MEMTEST86_SITE = http://www.memtest.org/download/$(MEMTEST86_VERSION) MEMTEST86_LICENSE = GPLv2 @@ -16,4 +16,3 @@ define MEMTEST86_INSTALL_TARGET_CMDS endef $(eval $(generic-package)) - diff --git a/package/mesa3d-demos/0001-demos-non-mesa-impl.patch b/package/mesa3d-demos/0001-demos-non-mesa-impl.patch deleted file mode 100644 index d3709293025..00000000000 --- a/package/mesa3d-demos/0001-demos-non-mesa-impl.patch +++ /dev/null @@ -1,244 +0,0 @@ -This makes it possible to build the demos against opengl -implementations other than Mesa - -Signed-off-by: Spenser Gilliland ---- -Index: mesa3d-demos-8.1.0/src/egl/eglut/eglut.c -=================================================================== ---- mesa3d-demos-8.1.0.orig/src/egl/eglut/eglut.c -+++ mesa3d-demos-8.1.0/src/egl/eglut/eglut.c -@@ -76,8 +76,9 @@ _eglutNow(void) - static void - _eglutDestroyWindow(struct eglut_window *win) - { -- if (_eglut->surface_type != EGL_PBUFFER_BIT && -- _eglut->surface_type != EGL_SCREEN_BIT_MESA) -+ -+ if (_eglut->surface_type == EGL_WINDOW_BIT || -+ _eglut->surface_type == EGL_PIXMAP_BIT) - eglDestroySurface(_eglut->dpy, win->surface); - - _eglutNativeFiniWindow(win); -@@ -175,7 +176,9 @@ _eglutCreateWindow(const char *title, in - win->config, win->native.u.pixmap, NULL); - break; - case EGL_PBUFFER_BIT: -+#ifdef EGL_MESA_screen_surface - case EGL_SCREEN_BIT_MESA: -+#endif - win->surface = win->native.u.surface; - break; - default: -@@ -289,8 +292,10 @@ eglutDestroyWindow(int win) - if (window->index != win) - return; - -+#ifdef EGL_MESA_screen_surface - /* XXX it causes some bug in st/egl KMS backend */ - if ( _eglut->surface_type != EGL_SCREEN_BIT_MESA) -+#endif - eglMakeCurrent(_eglut->dpy, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); - - _eglutDestroyWindow(_eglut->current); -Index: mesa3d-demos-8.1.0/src/egl/eglut/eglut_screen.c -=================================================================== ---- mesa3d-demos-8.1.0.orig/src/egl/eglut/eglut_screen.c -+++ mesa3d-demos-8.1.0/src/egl/eglut/eglut_screen.c -@@ -35,26 +35,33 @@ - - #define MAX_MODES 100 - -+#ifdef EGL_MESA_screen_surface - static EGLScreenMESA kms_screen; - static EGLModeMESA kms_mode; - static EGLint kms_width, kms_height; -+#endif - - void - _eglutNativeInitDisplay(void) - { -+#ifdef EGL_MESA_screen_surface - _eglut->native_dpy = EGL_DEFAULT_DISPLAY; - _eglut->surface_type = EGL_SCREEN_BIT_MESA; -+#endif - } - - void - _eglutNativeFiniDisplay(void) - { -+#ifdef EGL_MESA_screen_surface - kms_screen = 0; - kms_mode = 0; - kms_width = 0; - kms_height = 0; -+#endif - } - -+#ifdef EGL_MESA_screen_surface - static void - init_kms(void) - { -@@ -94,19 +101,23 @@ init_kms(void) - kms_width = width; - kms_height = height; - } -+#endif - - void - _eglutNativeInitWindow(struct eglut_window *win, const char *title, - int x, int y, int w, int h) - { -+#ifdef EGL_MESA_screen_surface - EGLint surf_attribs[16]; - EGLint i; -+#endif - const char *exts; - - exts = eglQueryString(_eglut->dpy, EGL_EXTENSIONS); - if (!exts || !strstr(exts, "EGL_MESA_screen_surface")) - _eglutFatal("EGL_MESA_screen_surface is not supported\n"); - -+#ifdef EGL_MESA_screen_surface - init_kms(); - - i = 0; -@@ -128,14 +139,17 @@ _eglutNativeInitWindow(struct eglut_wind - - win->native.width = kms_width; - win->native.height = kms_height; -+#endif - } - - void - _eglutNativeFiniWindow(struct eglut_window *win) - { -+#ifdef EGL_MESA_screen_surface - eglShowScreenSurfaceMESA(_eglut->dpy, - kms_screen, EGL_NO_SURFACE, 0); - eglDestroySurface(_eglut->dpy, win->native.u.surface); -+#endif - } - - void -Index: mesa3d-demos-8.1.0/src/egl/opengl/demo1.c -=================================================================== ---- mesa3d-demos-8.1.0.orig/src/egl/opengl/demo1.c -+++ mesa3d-demos-8.1.0/src/egl/opengl/demo1.c -@@ -18,6 +18,7 @@ - static void - TestScreens(EGLDisplay dpy) - { -+#ifdef EGL_MESA_screen_surface - #define MAX 8 - EGLScreenMESA screens[MAX]; - EGLint numScreens; -@@ -28,6 +29,7 @@ TestScreens(EGLDisplay dpy) - for (i = 0; i < numScreens; i++) { - printf(" Screen %d handle: %d\n", i, (int) screens[i]); - } -+#endif - } - - /** -Index: mesa3d-demos-8.1.0/src/egl/opengl/demo2.c -=================================================================== ---- mesa3d-demos-8.1.0.orig/src/egl/opengl/demo2.c -+++ mesa3d-demos-8.1.0/src/egl/opengl/demo2.c -@@ -16,6 +16,7 @@ - - /*#define FRONTBUFFER*/ - -+#ifdef EGL_MESA_screen_surface - static void _subset_Rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2, - GLfloat r, GLfloat g, GLfloat b) - { -@@ -95,12 +96,13 @@ TestScreens(EGLDisplay dpy) - printf(" Screen %d handle: %d\n", i, (int) screens[i]); - } - } -- -+#endif - - int - main(int argc, char *argv[]) - { - int maj, min; -+#ifdef EGL_MESA_screen_surface - EGLContext ctx; - EGLSurface pbuffer, screen_surf; - EGLConfig configs[10]; -@@ -115,6 +117,7 @@ main(int argc, char *argv[]) - EGLModeMESA mode; - EGLScreenMESA screen; - EGLint count; -+#endif - - EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY); - assert(d); -@@ -132,6 +135,7 @@ main(int argc, char *argv[]) - exit(1); - } - -+#ifdef EGL_MESA_screen_surface - eglGetConfigs(d, configs, 10, &numConfigs); - printf("Got %d EGL configs:\n", numConfigs); - for (i = 0; i < numConfigs; i++) { -@@ -211,6 +215,7 @@ main(int argc, char *argv[]) - eglDestroySurface(d, pbuffer); - eglDestroyContext(d, ctx); - eglTerminate(d); -+#endif - - return 0; - } -Index: mesa3d-demos-8.1.0/src/egl/opengl/demo3.c -=================================================================== ---- mesa3d-demos-8.1.0.orig/src/egl/opengl/demo3.c -+++ mesa3d-demos-8.1.0/src/egl/opengl/demo3.c -@@ -46,7 +46,7 @@ GLubyte OpenGL_bits[] = { - 0x3e, 0x00, 0x00, 0xf8, 0x0c, 0x00, - }; - -- -+#ifdef EGL_MESA_screen_surface - static void Init(void) - { - -@@ -551,11 +551,13 @@ write_ppm(const char *filename, const GL - fclose(f); - } - } -+#endif - - int - main(int argc, char *argv[]) - { - int maj, min; -+#ifdef EGL_MESA_screen_surface - EGLContext ctx; - EGLSurface screen_surf; - EGLConfig configs[10]; -@@ -566,6 +568,7 @@ main(int argc, char *argv[]) - const GLubyte *bitmap; - EGLint screenAttribs[32]; - EGLint i; -+#endif - - EGLDisplay d = eglGetDisplay(EGL_DEFAULT_DISPLAY); - assert(d); -@@ -583,6 +586,7 @@ main(int argc, char *argv[]) - exit(1); - } - -+#ifdef EGL_MESA_screen_surface - eglGetConfigs(d, configs, 10, &numConfigs); - eglGetScreensMESA(d, &screen, 1, &count); - eglGetModesMESA(d, screen, &mode, 1, &count); -@@ -642,6 +646,7 @@ main(int argc, char *argv[]) - eglDestroySurface(d, screen_surf); - eglDestroyContext(d, ctx); - eglTerminate(d); -+#endif - - return 0; - } diff --git a/package/mesa3d-demos/0002-demos-optional-gl.patch b/package/mesa3d-demos/0001-demos-optional-gl.patch similarity index 84% rename from package/mesa3d-demos/0002-demos-optional-gl.patch rename to package/mesa3d-demos/0001-demos-optional-gl.patch index b1985310508..6470e9d8d99 100644 --- a/package/mesa3d-demos/0002-demos-optional-gl.patch +++ b/package/mesa3d-demos/0001-demos-optional-gl.patch @@ -6,7 +6,7 @@ Index: mesa3d-demos-8.1.0/configure.ac =================================================================== --- mesa3d-demos-8.1.0.orig/configure.ac +++ mesa3d-demos-8.1.0/configure.ac -@@ -51,6 +51,14 @@ m4_ifndef([PKG_PROG_PKG_CONFIG], +@@ -51,6 +51,14 @@ ACLOCAL="aclocal -I/other/macro/dir" before running autoreconf.])]) PKG_PROG_PKG_CONFIG() @@ -21,7 +21,7 @@ Index: mesa3d-demos-8.1.0/configure.ac dnl Get the pkg-config definitions for libGL. We include a fallback dnl path for GL implementation that don't provide a .pc file PKG_CHECK_MODULES(GL, [gl], [], [ -@@ -103,6 +111,8 @@ PKG_CHECK_MODULES(GLU, [glu], [], +@@ -113,6 +121,8 @@ DEMO_CFLAGS="$DEMO_CFLAGS $GLU_CFLAGS" DEMO_LIBS="$DEMO_LIBS $GLU_LIBS" @@ -29,8 +29,8 @@ Index: mesa3d-demos-8.1.0/configure.ac + AC_ARG_ENABLE([egl], [AS_HELP_STRING([--enable-egl], - [enable EGL library @<:@default=no@:>@])], -@@ -287,7 +297,7 @@ AC_SUBST([MESA_GLAPI]) + [enable EGL library @<:@default=auto@:>@])], +@@ -303,7 +313,7 @@ AC_SUBST([WAYLAND_CFLAGS]) AC_SUBST([WAYLAND_LIBS]) @@ -43,22 +43,21 @@ Index: mesa3d-demos-8.1.0/src/egl/opengl/Makefile.am =================================================================== --- mesa3d-demos-8.1.0.orig/src/egl/opengl/Makefile.am +++ mesa3d-demos-8.1.0/src/egl/opengl/Makefile.am -@@ -50,6 +50,7 @@ endif +@@ -50,12 +50,14 @@ endif if HAVE_EGL +if HAVE_GL noinst_PROGRAMS = \ - demo1 \ - demo2 \ -@@ -61,6 +62,7 @@ noinst_PROGRAMS = \ + eglinfo \ + peglgears \ $(EGL_DRM_DEMOS) \ $(EGL_X11_DEMOS) endif +endif - egltri_screen_SOURCES = egltri.c - eglgears_screen_SOURCES = eglgears.c + egltri_x11_SOURCES = egltri.c + eglgears_x11_SOURCES = eglgears.c Index: mesa3d-demos-8.1.0/src/util/Makefile.am =================================================================== --- mesa3d-demos-8.1.0.orig/src/util/Makefile.am diff --git a/package/mesa3d-demos/0003-demos-x11-fix.patch b/package/mesa3d-demos/0003-demos-x11-fix.patch deleted file mode 100644 index f6b3b0cb3ea..00000000000 --- a/package/mesa3d-demos/0003-demos-x11-fix.patch +++ /dev/null @@ -1,30 +0,0 @@ -This patch ensures that programs which depend on x11 are not build if x11 -is not available. - -Signed-off-by: Spenser Gilliland ---- -Index: mesa3d-demos-8.1.0/src/egl/opengles2/Makefile.am -=================================================================== ---- mesa3d-demos-8.1.0.orig/src/egl/opengles2/Makefile.am -+++ mesa3d-demos-8.1.0/src/egl/opengles2/Makefile.am -@@ -35,9 +35,10 @@ AM_LDFLAGS = \ - - if HAVE_EGL - if HAVE_GLESV2 --bin_PROGRAMS = \ -+bin_PROGRAMS = es2gears_screen -+if HAVE_X11 -+bin_PROGRAMS += \ - es2_info \ -- es2gears_screen \ - es2gears_x11 \ - es2tri - if HAVE_WAYLAND -@@ -45,6 +46,7 @@ bin_PROGRAMS += es2gears_wayland - endif - endif - endif -+endif - - es2_info_LDADD = $(X11_LIBS) - es2tri_LDADD = $(X11_LIBS) diff --git a/package/mesa3d-demos/Config.in b/package/mesa3d-demos/Config.in index d63c47b3246..f22c0dee917 100644 --- a/package/mesa3d-demos/Config.in +++ b/package/mesa3d-demos/Config.in @@ -1,7 +1,9 @@ config BR2_PACKAGE_MESA3D_DEMOS bool "mesa3d-demos" - select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 - select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7 + select BR2_PACKAGE_LIBGLEW if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL + select BR2_PACKAGE_LIBGLU if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL + select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL + select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7 && BR2_PACKAGE_HAS_LIBGL depends on BR2_PACKAGE_HAS_LIBGL || BR2_PACKAGE_HAS_LIBGLES \ || BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBOPENVG help diff --git a/package/mesa3d-demos/mesa3d-demos.hash b/package/mesa3d-demos/mesa3d-demos.hash index 17db1b0421b..a50a3a1e0cb 100644 --- a/package/mesa3d-demos/mesa3d-demos.hash +++ b/package/mesa3d-demos/mesa3d-demos.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 e4bfecb5816ddd4b7b37c1bc876b63f1f7f06fda5879221a9774d0952f90ba92 mesa-demos-8.2.0.tar.bz2 +# From http://lists.freedesktop.org/archives/mesa-announce/2015-December/000191.html +sha256 c173154bbd0d5fb53d732471984def42fb1b14ac85fcb834138fb9518b3e0bef mesa-demos-8.3.0.tar.bz2 diff --git a/package/mesa3d-demos/mesa3d-demos.mk b/package/mesa3d-demos/mesa3d-demos.mk index 2db7f56caea..cbc15c3b696 100644 --- a/package/mesa3d-demos/mesa3d-demos.mk +++ b/package/mesa3d-demos/mesa3d-demos.mk @@ -4,13 +4,17 @@ # ################################################################################ -MESA3D_DEMOS_VERSION = 8.2.0 +MESA3D_DEMOS_VERSION = 8.3.0 MESA3D_DEMOS_SOURCE = mesa-demos-$(MESA3D_DEMOS_VERSION).tar.bz2 MESA3D_DEMOS_SITE = ftp://ftp.freedesktop.org/pub/mesa/demos/$(MESA3D_DEMOS_VERSION) MESA3D_DEMOS_AUTORECONF = YES MESA3D_DEMOS_DEPENDENCIES = host-pkgconf MESA3D_DEMOS_LICENSE = MIT +MESA3D_DEMOS_CONF_OPTS += \ + --disable-osmesa \ + --disable-gles1 + ifeq ($(BR2_PACKAGE_XORG7)$(BR2_PACKAGE_HAS_LIBGL),yy) MESA3D_DEMOS_DEPENDENCIES += libgl libglew libglu xlib_libX11 xlib_libXext MESA3D_DEMOS_CONF_OPTS += --enable-gl --enable-x11 @@ -27,9 +31,9 @@ endif ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) MESA3D_DEMOS_DEPENDENCIES += libgles -MESA3D_DEMOS_CONF_OPTS += --enable-gles1 --enable-gles2 +MESA3D_DEMOS_CONF_OPTS += --enable-gles2 else -MESA3D_DEMOS_CONF_OPTS += --disable-gles1 --disable-gles2 +MESA3D_DEMOS_CONF_OPTS += --disable-gles2 endif ifeq ($(BR2_PACKAGE_HAS_LIBOPENVG),y) @@ -53,6 +57,19 @@ else MESA3D_DEMOS_CONF_OPTS += --disable-freetype2 endif +ifeq ($(BR2_PACKAGE_LIBFREEGLUT),y) +MESA3D_DEMOS_DEPENDENCIES += libfreeglut +MESA3D_DEMOS_CONF_OPTS += --with-glut=$(STAGING_DIR)/usr +# osmesa support depends on glut +ifeq ($(BR2_PACKAGE_MESA3D_OSMESA),y) +MESA3D_DEMOS_CONF_OPTS += --enable-osmesa +else +MESA3D_DEMOS_CONF_OPTS += --disable-osmesa +endif +else +MESA3D_DEMOS_CONF_OPTS += --without-glut --disable-osmesa +endif + ifeq ($(BR2_PACKAGE_WAYLAND),y) MESA3D_DEMOS_DEPENDENCIES += wayland MESA3D_DEMOS_CONF_OPTS += --enable-wayland diff --git a/package/mesa3d-headers/mesa3d-headers.mk b/package/mesa3d-headers/mesa3d-headers.mk index 77c69296c5a..2c32b163c78 100644 --- a/package/mesa3d-headers/mesa3d-headers.mk +++ b/package/mesa3d-headers/mesa3d-headers.mk @@ -12,7 +12,7 @@ endif # Not possible to directly refer to mesa3d variables, because of # first/second expansion trickery... -MESA3D_HEADERS_VERSION = 10.6.3 +MESA3D_HEADERS_VERSION = 11.1.1 MESA3D_HEADERS_SOURCE = mesa-$(MESA3D_HEADERS_VERSION).tar.xz MESA3D_HEADERS_SITE = ftp://ftp.freedesktop.org/pub/mesa/$(MESA3D_HEADERS_VERSION) MESA3D_HEADERS_LICENSE = MIT, SGI, Khronos diff --git a/package/mesa3d/0001-Fix-khrplatform.h-not-installed-if-EGL-is-disabled.patch b/package/mesa3d/0001-Fix-khrplatform.h-not-installed-if-EGL-is-disabled.patch index 5dc9099305d..ab773f85a4a 100644 --- a/package/mesa3d/0001-Fix-khrplatform.h-not-installed-if-EGL-is-disabled.patch +++ b/package/mesa3d/0001-Fix-khrplatform.h-not-installed-if-EGL-is-disabled.patch @@ -14,8 +14,8 @@ Signed-off-by: Eric Le Bihan Signed-off-by: Bernd Kuhls (rebased for mesa3d 10.3) diff -uNr Mesa-10.3.0-rc2.org/src/egl/main/Makefile.am Mesa-10.3.0-rc2/src/egl/main/Makefile.am ---- Mesa-10.3.0-rc2.org/src/egl/main/Makefile.am 2014-08-29 00:00:57.000000000 +0200 -+++ Mesa-10.3.0-rc2/src/egl/main/Makefile.am 2014-09-02 21:35:52.548071820 +0200 +--- Mesa-10.3.0-rc2.org/src/egl/Makefile.am 2014-08-29 00:00:57.000000000 +0200 ++++ Mesa-10.3.0-rc2/src/egl/Makefile.am 2014-09-02 21:35:52.548071820 +0200 @@ -85,9 +85,6 @@ pkgconfig_DATA = egl.pc diff --git a/package/mesa3d/0003-musl.patch b/package/mesa3d/0003-musl.patch new file mode 100644 index 00000000000..8f7ba773aa1 --- /dev/null +++ b/package/mesa3d/0003-musl.patch @@ -0,0 +1,18 @@ +Fix musl build + +Downloaded from +http://git.alpinelinux.org/cgit/aports/plain/main/mesa/musl-fixes.patch + +Signed-off-by: Bernd Kuhls + +--- ./src/gallium/winsys/svga/drm/vmw_screen.h.orig ++++ ./src/gallium/winsys/svga/drm/vmw_screen.h +@@ -34,7 +34,7 @@ + #ifndef VMW_SCREEN_H_ + #define VMW_SCREEN_H_ + +- ++#include + #include "pipe/p_compiler.h" + #include "pipe/p_state.h" + diff --git a/package/mesa3d/Config.in b/package/mesa3d/Config.in index 93ae02aaf19..8c72a3d4788 100644 --- a/package/mesa3d/Config.in +++ b/package/mesa3d/Config.in @@ -1,19 +1,20 @@ menuconfig BR2_PACKAGE_MESA3D bool "mesa3d" + depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + # Triggers the _gp link issue in nios2 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII select BR2_PACKAGE_LIBDRM select BR2_PACKAGE_EXPAT select BR2_PACKAGE_XPROTO_DRI2PROTO if BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XPROTO_GLPROTO if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XPROTO_XF86DRIPROTO if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXFIXES if BR2_PACKAGE_XORG7 select BR2_PACKAGE_LIBXCB if BR2_PACKAGE_XORG7 - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL - # Triggers the _gp link issue in nios2 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 help Mesa 3D, an open-source implementation of the OpenGL specification. @@ -29,6 +30,8 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER config BR2_PACKAGE_MESA3D_DRI_DRIVER select BR2_PACKAGE_MESA3D_DRIVER select BR2_PACKAGE_HAS_LIBGL + select BR2_PACKAGE_XLIB_LIBXSHMFENCE if BR2_PACKAGE_XPROTO_DRI3PROTO + select BR2_PACKAGE_XPROTO_PRESENTPROTO if BR2_PACKAGE_XPROTO_DRI3PROTO bool config BR2_PACKAGE_PROVIDES_LIBGL @@ -76,10 +79,18 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST This is a software opengl implementation using the Gallium3D infrastructure. -comment "DRI drivers needs X.Org and a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS || !BR2_PACKAGE_XORG7 +config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VIRGL + bool "Gallium virgl driver" + select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER + select BR2_PACKAGE_MESA3D_OPENGL_EGL + help + virgl is the 3D acceleration backend for the virtio-gpu + shipping with qemu. + +comment "DRI drivers need X.Org" + depends on !BR2_PACKAGE_XORG7 -if !BR2_STATIC_LIBS && BR2_PACKAGE_XORG7 +if BR2_PACKAGE_XORG7 comment "DRI drivers" @@ -106,15 +117,28 @@ config BR2_PACKAGE_MESA3D_DRI_DRIVER_I965 help Support for i965-based Intel GPUs. +config BR2_PACKAGE_MESA3D_DRI_DRIVER_NOUVEAU + bool "DRI nouveau driver" + select BR2_PACKAGE_MESA3D_DRI_DRIVER + select BR2_PACKAGE_LIBDRM_NOUVEAU + help + Support for Nvidia-based GPUs. + config BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON bool "DRI radeon driver" - depends on BR2_i386 || BR2_x86_64 select BR2_PACKAGE_MESA3D_DRI_DRIVER select BR2_PACKAGE_LIBDRM_RADEON help Legacy Radeon driver for R100 series GPUs. -endif # !BR2_STATIC_LIBS && BR2_PACKAGE_XORG7 +endif # BR2_PACKAGE_XORG7 + +comment "Off-screen Rendering" + +config BR2_PACKAGE_MESA3D_OSMESA + bool "OSMesa library" + help + The OSMesa API provides functions for making off-screen renderings. if BR2_PACKAGE_MESA3D_DRIVER @@ -144,7 +168,7 @@ config BR2_PACKAGE_PROVIDES_LIBGLES endif # BR2_PACKAGE_MESA3D -comment "mesa3d needs a toolchain w/ C++, NPTL" - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL +comment "mesa3d needs a toolchain w/ C++, NPTL, dynamic library" + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + BR2_STATIC_LIBS diff --git a/package/mesa3d/mesa3d.hash b/package/mesa3d/mesa3d.hash index 459b7d6f9f0..2ad543c3549 100644 --- a/package/mesa3d/mesa3d.hash +++ b/package/mesa3d/mesa3d.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/archives/mesa-announce/2015-July/000165.html -sha256 58592e07c350cd2e8969b73fa83048c657a39fe2f13f3b88f5e5818fe2e4676d mesa-10.6.3.tar.xz +# From http://lists.freedesktop.org/archives/mesa-announce/2016-January/000196.html +sha256 64db074fc514136b5fb3890111f0d50604db52f0b1e94ba3fcb0fe8668a7fd20 mesa-11.1.1.tar.xz diff --git a/package/mesa3d/mesa3d.mk b/package/mesa3d/mesa3d.mk index 67408a3aac1..7ed6af03800 100644 --- a/package/mesa3d/mesa3d.mk +++ b/package/mesa3d/mesa3d.mk @@ -5,7 +5,7 @@ ################################################################################ # When updating the version, please also update mesa3d-headers -MESA3D_VERSION = 10.6.3 +MESA3D_VERSION = 11.1.1 MESA3D_SOURCE = mesa-$(MESA3D_VERSION).tar.xz MESA3D_SITE = ftp://ftp.freedesktop.org/pub/mesa/$(MESA3D_VERSION) MESA3D_LICENSE = MIT, SGI, Khronos @@ -58,11 +58,6 @@ MESA3D_CONF_OPTS += \ --disable-xa endif -ifeq ($(BR2_STATIC_LIBS),) -# fix for "configure: error: Cannot use static libraries for DRI drivers" -MESA3D_CONF_OPTS += --disable-static -endif - # Drivers #Gallium Drivers @@ -70,10 +65,12 @@ MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_NOUVEAU) += nouveau MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_R600) += r600 MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SVGA) += svga MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST) += swrast +MESA3D_GALLIUM_DRIVERS-$(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VIRGL) += virgl # DRI Drivers MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_SWRAST) += swrast MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_I915) += i915 MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_I965) += i965 +MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_NOUVEAU) += nouveau MESA3D_DRI_DRIVERS-$(BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON) += radeon ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER),) @@ -93,7 +90,7 @@ endef ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),) MESA3D_CONF_OPTS += \ - --without-dri-drivers --disable-dri --disable-dri3 + --without-dri-drivers --disable-dri3 MESA3D_POST_INSTALL_STAGING_HOOKS += MESA3D_REMOVE_OPENGL_PC else ifeq ($(BR2_PACKAGE_XPROTO_DRI3PROTO),y) @@ -107,7 +104,6 @@ MESA3D_DEPENDENCIES += xlib_libXxf86vm endif MESA3D_PROVIDES += libgl MESA3D_CONF_OPTS += \ - --enable-dri \ --enable-shared-glapi \ --enable-driglx-direct \ --with-dri-drivers=$(subst $(space),$(comma),$(MESA3D_DRI_DRIVERS-y)) @@ -115,11 +111,17 @@ endif # APIs +ifeq ($(BR2_PACKAGE_MESA3D_OSMESA),y) +MESA3D_CONF_OPTS += --enable-osmesa +else +MESA3D_CONF_OPTS += --disable-osmesa +endif + # Always enable OpenGL: # - it is needed for GLES (mesa3d's ./configure is a bit weird) # - but if no DRI driver is enabled, then libgl is not built, # remove dri.pc and gl.pc in this case (MESA3D_REMOVE_OPENGL_PC) -MESA3D_CONF_OPTS += --enable-opengl +MESA3D_CONF_OPTS += --enable-opengl --enable-dri # libva and mesa3d have a circular dependency # we do not need libva support in mesa3d, therefore disable this option @@ -127,7 +129,11 @@ MESA3D_CONF_OPTS += --disable-va ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y) MESA3D_PROVIDES += libegl +ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y) +MESA3D_EGL_PLATFORMS = drm +else ifeq ($(BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_VIRGL),y) MESA3D_EGL_PLATFORMS = drm +endif ifeq ($(BR2_PACKAGE_WAYLAND),y) MESA3D_DEPENDENCIES += wayland MESA3D_EGL_PLATFORMS += wayland diff --git a/package/micropython-lib/Config.in b/package/micropython-lib/Config.in new file mode 100644 index 00000000000..a7e017be76f --- /dev/null +++ b/package/micropython-lib/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_MICROPYTHON_LIB + bool "micropython-lib" + depends on BR2_PACKAGE_MICROPYTHON + help + Core Python libraries ported to MicroPython. + + http://micropython.org diff --git a/package/micropython-lib/micropython-lib.hash b/package/micropython-lib/micropython-lib.hash new file mode 100644 index 00000000000..30d0cf88820 --- /dev/null +++ b/package/micropython-lib/micropython-lib.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 e659444fadd755c1b5dbff091aa1b23a835e7361da3a32f38774bd39a15937ad micropython-lib-v1.0.tar.gz diff --git a/package/micropython-lib/micropython-lib.mk b/package/micropython-lib/micropython-lib.mk new file mode 100644 index 00000000000..4ed2120a7ea --- /dev/null +++ b/package/micropython-lib/micropython-lib.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# micropython-lib +# +################################################################################ + +MICROPYTHON_LIB_VERSION = v1.0 +MICROPYTHON_LIB_SITE = $(call github,micropython,micropython-lib,$(MICROPYTHON_LIB_VERSION)) +MICROPYTHON_LIB_LICENSE = Python software foundation license v2 (some modules), MIT (everything else) +MICROPYTHON_LIB_LICENSE_FILES = LICENSE + +define MICROPYTHON_LIB_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + PREFIX=$(TARGET_DIR)/usr/lib/micropython \ + install +endef + +$(eval $(generic-package)) diff --git a/package/micropython/0001-fix-version.patch b/package/micropython/0001-fix-version.patch new file mode 100644 index 00000000000..1bf2992169c --- /dev/null +++ b/package/micropython/0001-fix-version.patch @@ -0,0 +1,22 @@ +Always use the fallback behaviour for determining the version number + +When built from within buildroot the micropython build process detects +that it is inside a git repository and ends up using the buildroot +version number instead of the correct micropython version number. + +Signed-off-by: Chris Packham +--- +diff -Naur micropython-v1.4.5-old/py/makeversionhdr.py micropython-v1.4.5/py/makeversionhdr.py +--- micropython-v1.4.5-old/py/makeversionhdr.py 2015-08-12 00:42:30.000000000 +1200 ++++ micropython-v1.4.5/py/makeversionhdr.py 2015-09-16 10:21:06.698962836 +1200 +@@ -70,9 +70,7 @@ + + def make_version_header(filename): + # Get version info using git, with fallback to docs/conf.py +- info = get_version_info_from_git() +- if info is None: +- info = get_version_info_from_docs_conf() ++ info = get_version_info_from_docs_conf() + + git_tag, git_hash, ver = info + diff --git a/package/micropython/Config.in b/package/micropython/Config.in new file mode 100644 index 00000000000..ed65d6ab302 --- /dev/null +++ b/package/micropython/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_MICROPYTHON + bool "micropython" + select BR2_PACKAGE_LIBFFI + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS + # libffi doesn't provide the closure implementation on Blackfin + depends on !BR2_bfin + help + Micro Python is a lean and fast implementation of the Python 3 + programming language that is optimised to run on a microcontroller. + + http://micropython.org + +comment "micropython needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on !BR2_bfin diff --git a/package/micropython/micropython.hash b/package/micropython/micropython.hash new file mode 100644 index 00000000000..b3a7c22ccc0 --- /dev/null +++ b/package/micropython/micropython.hash @@ -0,0 +1,2 @@ +#locally computed +sha256 f8ea3faffa797de1a06c16c8f57c784c665b318ca08ac17f74dcbc95322d47de micropython-v1.6.tar.gz diff --git a/package/micropython/micropython.mk b/package/micropython/micropython.mk new file mode 100644 index 00000000000..853caa2c3e3 --- /dev/null +++ b/package/micropython/micropython.mk @@ -0,0 +1,32 @@ +################################################################################ +# +# micropython +# +################################################################################ + +MICROPYTHON_VERSION = v1.6 +MICROPYTHON_SITE = $(call github,micropython,micropython,$(MICROPYTHON_VERSION)) +MICROPYTHON_LICENSE = MIT +MICROPYTHON_LICENSE_FILES = LICENSE +MICROPYTHON_DEPENDENCIES = host-pkgconf libffi + +# Use fallback implementation for exception handling on architectures that don't +# have explicit support. +ifeq ($(BR2_i386)$(BR2_x86_64)$(BR2_arm)$(BR2_armeb),) +MICROPYTHON_CFLAGS = -DMICROPY_GCREGS_SETJMP=1 +endif + +define MICROPYTHON_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/unix \ + CROSS_COMPILE=$(TARGET_CROSS) \ + CFLAGS_EXTRA=$(MICROPYTHON_CFLAGS) +endef + +define MICROPYTHON_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/unix \ + DESTDIR=$(TARGET_DIR) \ + PREFIX=$(TARGET_DIR)/usr \ + install +endef + +$(eval $(generic-package)) diff --git a/package/midori/Config.in b/package/midori/Config.in index b3ab8a9e3ae..11a280621d2 100644 --- a/package/midori/Config.in +++ b/package/midori/Config.in @@ -1,7 +1,8 @@ -comment "midori needs libgtk2 and a toolchain w/ C++, wchar, NPTL" +comment "midori needs libgtk2 and a toolchain w/ C++, wchar, NPTL, gcc >= 4.8" depends on BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ - !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_PACKAGE_LIBGTK2 + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_PACKAGE_LIBGTK2 \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 config BR2_PACKAGE_MIDORI bool "midori" @@ -16,6 +17,7 @@ config BR2_PACKAGE_MIDORI depends on BR2_INSTALL_LIBSTDCPP # webkitgtk24 depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # webkitgtk24 depends on BR2_USE_WCHAR # webkitgtk24 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # webkitgtk24 depends on BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS help Midori is a lightweight web browser based on WebKit diff --git a/package/midori/midori.mk b/package/midori/midori.mk index ed2cdd86cc1..197f51ab665 100644 --- a/package/midori/midori.mk +++ b/package/midori/midori.mk @@ -37,7 +37,7 @@ ifeq ($(BR2_PACKAGE_MIDORI_HTTPS),y) MIDORI_DEPENDENCIES += glib-networking endif -ifeq ($(BR2_PACKAGE_LIBGTK3),y) +ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) MIDORI_CONF_OPTS += -DUSE_GTK3=ON -DHALF_BRO_INCOM_WEBKIT2=ON MIDORI_DEPENDENCIES += libgtk3 else diff --git a/package/minicom/0001-musl-libc-compile-fix.patch b/package/minicom/0001-musl-libc-compile-fix.patch new file mode 100644 index 00000000000..94c0da06a5e --- /dev/null +++ b/package/minicom/0001-musl-libc-compile-fix.patch @@ -0,0 +1,28 @@ +# HG changeset patch +# User Adam Lackorzynski +# Date 1432407431 -7200 +# Sat May 23 20:57:11 2015 +0200 +# Node ID 8bf81e6a8e60e37c2dec9577a1be6357b8d56165 +# Parent 8c784c80c17aa7a346d982db23bca5df67302cda +musl-libc compile fix + +By Felix Janda : +VC_MUSIC is enabled by default on linux and in dial.c the +necessary header are only included for glibc. (The wrong conditional +include has likely been introduced by the 2003-03-30 GNU/Hurd patch.) + +Signed-off-by: Bernd Kuhls +[Taken from upstream Mercurial commit 8bf81e6a8e60] + +diff -r 8c784c80c17a -r 8bf81e6a8e60 src/dial.c +--- a/src/dial.c Sat May 23 20:56:29 2015 +0200 ++++ b/src/dial.c Sat May 23 20:57:11 2015 +0200 +@@ -39,7 +39,7 @@ + #include "intl.h" + + #ifdef VC_MUSIC +-# if defined(__GLIBC__) ++# if defined(__linux__) || defined(__GLIBC__) + # include + # include + # include diff --git a/package/minicom/0002-change-maxnamlen-to-posixs-name-max.patch b/package/minicom/0002-change-maxnamlen-to-posixs-name-max.patch new file mode 100644 index 00000000000..83e15306002 --- /dev/null +++ b/package/minicom/0002-change-maxnamlen-to-posixs-name-max.patch @@ -0,0 +1,51 @@ +# HG changeset patch +# User Adam Lackorzynski +# Date 1432407475 -7200 +# Sat May 23 20:57:55 2015 +0200 +# Node ID 93e5dd955c8bd944fd64bb04fd117c963c3758bc +# Parent 8bf81e6a8e60e37c2dec9577a1be6357b8d56165 +Change MAXNAMLEN to POSIX's NAME_MAX + +By Felix Janda : +MAXNAMLEN is usually defined in but it is +better to use the equivalent POSIX NAME_MAX. + +Signed-off-by: Bernd Kuhls +[Taken from upstream Mercurial commit 93e5dd955c8b] + +diff -r 8bf81e6a8e60 -r 93e5dd955c8b src/getsdir.c +--- a/src/getsdir.c Sat May 23 20:57:11 2015 +0200 ++++ b/src/getsdir.c Sat May 23 20:57:55 2015 +0200 +@@ -145,7 +145,7 @@ + * + * The data will be in the form: + * typedef struct dirEntry { +- * char fname[MAXNAMLEN + 1]; ++ * char fname[NAME_MAX + 1]; + * time_t time; + * mode_t mode; + * } GETSDIR_ENTRY; +@@ -232,7 +232,7 @@ + } + + /* copy the filename */ +- strncpy((*datptr)[cnt].fname, dp->d_name, MAXNAMLEN); ++ strncpy((*datptr)[cnt].fname, dp->d_name, NAME_MAX); + + /* get information about the directory entry */ + snprintf(fpath, sizeof(fpath), "%s/%s", dirpath, dp->d_name); +diff -r 8bf81e6a8e60 -r 93e5dd955c8b src/getsdir.h +--- a/src/getsdir.h Sat May 23 20:57:11 2015 +0200 ++++ b/src/getsdir.h Sat May 23 20:57:55 2015 +0200 +@@ -23,9 +23,10 @@ + */ + + #include ++#include + + typedef struct dirEntry { /* structure of data item */ +- char fname[MAXNAMLEN + 1]; /* filename + terminating null */ ++ char fname[NAME_MAX + 1]; /* filename + terminating null */ + time_t time; /* last modification date */ + mode_t mode; /* file mode (dir? etc.) */ + ushort cflags; /* caller field for convenience */ diff --git a/package/minicom/Config.in b/package/minicom/Config.in index 07dbeba5ff1..c41c188570d 100644 --- a/package/minicom/Config.in +++ b/package/minicom/Config.in @@ -5,11 +5,11 @@ config BR2_PACKAGE_MINICOM select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE select BR2_PACKAGE_NCURSES help - Minicom is a menu driven communications program. - It emulates ANSI and VT102 terminals. It has a - dialing directory and auto zmodem download. + Minicom is a menu driven communications program. It emulates + ANSI and VT102 terminals. It has a dialing directory and auto + zmodem download. - http://alioth.debian.org/projects/minicom + http://alioth.debian.org/projects/minicom/ comment "minicom needs a toolchain w/ wchar" depends on BR2_USE_MMU diff --git a/package/minicom/minicom.hash b/package/minicom/minicom.hash new file mode 100644 index 00000000000..33ba4ef10c7 --- /dev/null +++ b/package/minicom/minicom.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9ac3a663b82f4f5df64114b4792b9926b536c85f59de0f2d2b321c7626a904f4 minicom-2.7.tar.gz diff --git a/package/minicom/minicom.mk b/package/minicom/minicom.mk index dd0574187e7..94a46286590 100644 --- a/package/minicom/minicom.mk +++ b/package/minicom/minicom.mk @@ -5,14 +5,14 @@ ################################################################################ MINICOM_VERSION = 2.7 -MINICOM_SITE = http://sources.buildroot.net +MINICOM_SITE = https://alioth.debian.org/frs/download.php/file/3977 MINICOM_LICENSE = GPLv2+ MINICOM_LICENSE_FILES = COPYING # pkg-config is only used to check for liblockdev, which we don't have -# in BR, so instead of adding host-pkgconf as a dependency, simply -# make sure the host version isn't used so we don't end up with problems -# if people have liblockdev1-dev installed +# in BR, so instead of adding host-pkgconf as a dependency, simply make +# sure the host version isn't used so we don't end up with problems if +# people have liblockdev1-dev installed MINICOM_CONF_ENV = PKG_CONFIG=/bin/false MINICOM_DEPENDENCIES = ncurses $(if $(BR2_ENABLE_LOCALE),,libiconv) diff --git a/package/minidlna/Config.in b/package/minidlna/Config.in index 0eef7512a15..6925e012234 100644 --- a/package/minidlna/Config.in +++ b/package/minidlna/Config.in @@ -9,12 +9,10 @@ config BR2_PACKAGE_MINIDLNA select BR2_PACKAGE_LIBOGG select BR2_PACKAGE_LIBID3TAG # selects zlib select BR2_PACKAGE_LIBEXIF - select BR2_PACKAGE_LIBJPEG + select BR2_PACKAGE_JPEG select BR2_PACKAGE_SQLITE select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE - # Triggers the _gp link issue in nios2 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_nios2 # ffmpeg help MiniDLNA (aka ReadyDLNA) is server software with the aim of being fully compliant with DLNA/UPnP-AV clients. @@ -23,4 +21,5 @@ config BR2_PACKAGE_MINIDLNA comment "minidlna needs a toolchain w/ threads, wchar" depends on BR2_USE_MMU + depends on !BR2_nios2 depends on !(BR2_TOOLCHAIN_HAS_THREADS && BR2_USE_WCHAR) diff --git a/package/minidlna/S60minidlnad b/package/minidlna/S60minidlnad index f99999a32eb..9b158afd98c 100644 --- a/package/minidlna/S60minidlnad +++ b/package/minidlna/S60minidlnad @@ -4,14 +4,14 @@ # start() { - echo -n "Starting minidlna: " + printf "Starting minidlna: " umask 077 start-stop-daemon -S -q -p /var/run/minidlna/minidlna.pid \ - --exec /usr/sbin/minidlnad + --exec /usr/sbin/minidlnad -- "$@" [ $? = 0 ] && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping minidlna: " + printf "Stopping minidlna: " start-stop-daemon -K -q -p /var/run/minidlna/minidlna.pid [ $? = 0 ] && echo "OK" || echo "FAIL" } @@ -19,7 +19,7 @@ restart() { stop # Sleep needed for minidlna to restart properly sleep 1 - start + start "$@" } case "$1" in @@ -32,8 +32,11 @@ case "$1" in restart|reload) restart ;; + force-reload) + restart -R + ;; *) - echo "Usage: $0 {start|stop|restart}" + echo "Usage: $0 {start|stop|restart|force-reload}" exit 1 esac diff --git a/package/minidlna/minidlna.hash b/package/minidlna/minidlna.hash index 797679a2c88..d1ed4b9184f 100644 --- a/package/minidlna/minidlna.hash +++ b/package/minidlna/minidlna.hash @@ -1,2 +1,3 @@ -# Locally computed: -sha256 9814c04a2c506a0dd942c4218d30c07dedf90dabffbdef2d308a3f9f23545314 minidlna-1.1.4.tar.gz +# From http://sourceforge.net/projects/minidlna/files/minidlna/1.1.5/ +md5 1970e553a1eb8a3e7e302e2ce292cbc4 minidlna-1.1.5.tar.gz +sha1 8185337621f5f9111118d8a4bca1e8cfcdd19505 minidlna-1.1.5.tar.gz diff --git a/package/minidlna/minidlna.mk b/package/minidlna/minidlna.mk index ab9348467a9..729680cafbe 100644 --- a/package/minidlna/minidlna.mk +++ b/package/minidlna/minidlna.mk @@ -4,20 +4,21 @@ # ################################################################################ -MINIDLNA_VERSION = 1.1.4 +MINIDLNA_VERSION = 1.1.5 MINIDLNA_SITE = http://downloads.sourceforge.net/project/minidlna/minidlna/$(MINIDLNA_VERSION) -MINIDLNA_LICENSE = GPLv2 BSD-3c +MINIDLNA_LICENSE = GPLv2, BSD-3c MINIDLNA_LICENSE_FILES = COPYING LICENCE.miniupnpd MINIDLNA_DEPENDENCIES = \ $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) host-gettext \ - ffmpeg flac libvorbis libogg libid3tag libexif libjpeg sqlite \ + ffmpeg flac libvorbis libogg libid3tag libexif jpeg sqlite \ host-xutil_makedepend ifeq ($(BR2_STATIC_LIBS),y) # the configure script / Makefile forgets to link with some of the dependent # libraries breaking static linking, so help it along -MINIDLNA_STATIC_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs libavcodec libexif libvorbis` +MINIDLNA_PKGCONFIG_DEPS = libavcodec libexif vorbis sqlite3 +MINIDLNA_STATIC_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs $(MINIDLNA_PKGCONFIG_DEPS)` MINIDLNA_STATIC_LIBS += $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),-lintl) MINIDLNA_CONF_ENV += LIBS="$(MINIDLNA_STATIC_LIBS)" else diff --git a/package/minizip/Config.in b/package/minizip/Config.in new file mode 100644 index 00000000000..7205e0007ec --- /dev/null +++ b/package/minizip/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_MINIZIP + bool "minizip" + select BR2_PACKAGE_ZLIB + help + Enables to extract files from a .zip archive file. + It is compatible with PKZip 2.04g, WinZip, InfoZip, + MimarSinan Codex Suite 2002 tools, and compatible sofware. + + https://github.com/nmoinvaz/minizip + +config BR2_PACKAGE_MINIZIP_DEMOS + bool "miniunzip/minizip" + depends on BR2_PACKAGE_MINIZIP + help + Enable miniunzip/minizip binary tools. diff --git a/package/minizip/minizip.hash b/package/minizip/minizip.hash new file mode 100644 index 00000000000..a303b2c718b --- /dev/null +++ b/package/minizip/minizip.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 b39158bdf3d8bf81d3a7412dc761851fda398bc93d8989d5e940ed4ae5bbb52c minizip-977afb22966e6ab0ee401293a8e85fe808133f9a.tar.gz diff --git a/package/minizip/minizip.mk b/package/minizip/minizip.mk new file mode 100644 index 00000000000..5b8778615a0 --- /dev/null +++ b/package/minizip/minizip.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# minizip +# +################################################################################ + +MINIZIP_VERSION = 977afb22966e6ab0ee401293a8e85fe808133f9a +MINIZIP_SITE = $(call github,nmoinvaz,minizip,$(MINIZIP_VERSION)) +MINIZIP_DEPENDENCIES = zlib +MINIZIP_AUTORECONF = YES +MINIZIP_INSTALL_STAGING = YES +MINIZIP_CONF_OPTS = $(if $(BR2_PACKAGE_MINIZIP_DEMOS),--enable-demos) +MINIZIP_LICENSE = zlib license +MINIZIP_LICENSE_FILES = LICENSE + +$(eval $(autotools-package)) diff --git a/package/miraclecast/Config.in b/package/miraclecast/Config.in new file mode 100644 index 00000000000..4c6a8aaa07d --- /dev/null +++ b/package/miraclecast/Config.in @@ -0,0 +1,23 @@ +config BR2_PACKAGE_MIRACLECAST + bool "miraclecast" + depends on BR2_PACKAGE_SYSTEMD + depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 + depends on BR2_USE_MMU # glib2 + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_GSTREAMER1 + select BR2_PACKAGE_READLINE + select BR2_PACKAGE_SYSTEMD_KDBUS + help + The MiracleCast project provides software to connect external + monitors to your system via Wifi. It is compatible to the + Wifi-Display specification also known as Miracast. MiracleCast + implements the Display-Source as well as Display-Sink side. + + https://github.com/albfan/miraclecast + +comment "miraclecast needs systemd and a glibc toolchain w/ threads and wchar" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_USE_WCHAR \ + || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_SYSTEMD diff --git a/package/miraclecast/miraclecast.hash b/package/miraclecast/miraclecast.hash new file mode 100644 index 00000000000..2a92cbf0456 --- /dev/null +++ b/package/miraclecast/miraclecast.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 deef87155ed07bcf737260c29599e886bd248b573e72ba167369df93acb1fa61 miraclecast-8b61f733da124ccbfd1b85e188581fad1c41c1e1.tar.gz diff --git a/package/miraclecast/miraclecast.mk b/package/miraclecast/miraclecast.mk new file mode 100644 index 00000000000..598dbd5e4e9 --- /dev/null +++ b/package/miraclecast/miraclecast.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# miraclecast +# +################################################################################ + +MIRACLECAST_VERSION = 8b61f733da124ccbfd1b85e188581fad1c41c1e1 +MIRACLECAST_SITE = $(call github,albfan,miraclecast,$(MIRACLECAST_VERSION)) +MIRACLECAST_LICENSE = LGPLv2.1+, GPLv2 (gdhcp) +MIRACLECAST_LICENSE_FILES = COPYING LICENSE_gdhcp LICENSE_htable LICENSE_lgpl +MIRACLECAST_DEPENDENCIES = host-pkgconf systemd gstreamer1 \ + readline libglib2 +# Straight out the repository, no ./configure +MIRACLECAST_AUTORECONF = YES + +define MIRACLECAST_INSTALL_DBUS_POLICY + $(INSTALL) -m 0644 -D \ + $(@D)/res/org.freedesktop.miracle.conf \ + $(TARGET_DIR)/etc/dbus-1/system.d/org.freedesktop.miracle.conf +endef +MIRACLECAST_POST_INSTALL_TARGET_HOOKS += MIRACLECAST_INSTALL_DBUS_POLICY + +$(eval $(autotools-package)) diff --git a/package/mjpg-streamer/0001-musl-pthread.patch b/package/mjpg-streamer/0001-musl-pthread.patch new file mode 100644 index 00000000000..9e76e760d8a --- /dev/null +++ b/package/mjpg-streamer/0001-musl-pthread.patch @@ -0,0 +1,18 @@ +Fix musl build + +Patch written by Thomas Petazzoni: +http://patchwork.ozlabs.org/patch/572309/ + +Signed-off-by: Bernd Kuhls + +diff -uNr mjpg-streamer-bbf32fddfd02a9e072e89e83a5b33e6ca0a7bd4b.org/plugins/input.h mjpg-streamer-bbf32fddfd02a9e072e89e83a5b33e6ca0a7bd4b/plugins/input.h +--- mjpg-streamer-bbf32fddfd02a9e072e89e83a5b33e6ca0a7bd4b.org/plugins/input.h 2015-11-09 15:56:47.000000000 +0100 ++++ mjpg-streamer-bbf32fddfd02a9e072e89e83a5b33e6ca0a7bd4b/plugins/input.h 2016-01-26 20:19:05.884349502 +0100 +@@ -20,6 +20,7 @@ + # # + *******************************************************************************/ + ++#include + #include + #include "../mjpg_streamer.h" + #define INPUT_PLUGIN_PREFIX " i: " diff --git a/package/mjpg-streamer/mjpg-streamer.hash b/package/mjpg-streamer/mjpg-streamer.hash new file mode 100644 index 00000000000..8bbac29e337 --- /dev/null +++ b/package/mjpg-streamer/mjpg-streamer.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 756a60cbc3404ac21109bb66091774ac8e1d64ebf60e2bf2c0d08a06d1abb9be mjpg-streamer-bbf32fddfd02a9e072e89e83a5b33e6ca0a7bd4b.tar.gz diff --git a/package/mjpg-streamer/mjpg-streamer.mk b/package/mjpg-streamer/mjpg-streamer.mk index e10e9a8b4ac..e54c6006f9f 100644 --- a/package/mjpg-streamer/mjpg-streamer.mk +++ b/package/mjpg-streamer/mjpg-streamer.mk @@ -8,7 +8,7 @@ # http://sourceforge.net/p/mjpg-streamer/code/commit_browser # oliv3r forked the repo to add support for 3.16 and 3.17 kernels: # http://sourceforge.net/p/mjpg-streamer/patches/14/ -MJPG_STREAMER_VERSION = 730b5bcdc378b6a201131c6c2620eedbe0f6eb30 +MJPG_STREAMER_VERSION = bbf32fddfd02a9e072e89e83a5b33e6ca0a7bd4b MJPG_STREAMER_SITE = $(call github,oliv3r,mjpg-streamer,$(MJPG_STREAMER_VERSION)) MJPG_STREAMER_LICENSE = GPLv2+ MJPG_STREAMER_LICENSE_FILES = LICENSE diff --git a/package/mke2img/mke2img b/package/mke2img/mke2img index 5e2f62f0059..c2e0d02b738 100755 --- a/package/mke2img/mke2img +++ b/package/mke2img/mke2img @@ -17,12 +17,16 @@ main() { # Default values gen=2 rev=1 + nb_extra_blocks=0 + nb_extra_inodes=0 - while getopts :hb:i:r:d:o:G:R:l:u: OPT; do + while getopts :hb:B:i:I:r:d:o:G:R:l:u: OPT; do case "${OPT}" in h) help; exit 0;; b) nb_blocks=${OPTARG};; + B) nb_extra_blocks=${OPTARG};; i) nb_inodes=${OPTARG};; + I) nb_extra_inodes=${OPTARG};; r) nb_res_blocks=${OPTARG};; d) root_dir="${OPTARG}";; o) image="${OPTARG}";; @@ -58,6 +62,7 @@ main() { nb_inodes=$(find "${root_dir}" | wc -l) nb_inodes=$((nb_inodes+400)) fi + nb_inodes=$((nb_inodes+nb_extra_inodes)) # calculate needed blocks if [ -z "${nb_blocks}" ]; then @@ -73,10 +78,11 @@ main() { nb_blocks=$((nb_blocks+1300)) fi fi + nb_blocks=$((nb_blocks+nb_extra_blocks)) # Upgrade to rev1 if needed if [ ${rev} -ge 1 ]; then - tune2fs_O_opts+=",filetype" + tune2fs_O_opts+=",filetype,sparse_super" fi # Add a journal for ext3 and above diff --git a/package/moarvm/Config.in b/package/moarvm/Config.in index 95f37522bec..6bc3090dde4 100644 --- a/package/moarvm/Config.in +++ b/package/moarvm/Config.in @@ -3,7 +3,9 @@ config BR2_PACKAGE_MOARVM depends on BR2_TOOLCHAIN_HAS_THREADS # libuv depends on !BR2_STATIC_LIBS # libuv depends on BR2_USE_MMU # libuv - depends on BR2_PACKAGE_LIBATOMIC_ARCH_SUPPORTS # libatomic_ops + depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS # libatomic_ops + # needs AO_fetch_compare_and_swap, not implemented for sparcv9 + depends on !BR2_sparc64 select BR2_PACKAGE_LIBUV select BR2_PACKAGE_LIBATOMIC_OPS help @@ -15,5 +17,6 @@ config BR2_PACKAGE_MOARVM comment "moarvm needs a toolchain w/ threads, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS depends on BR2_USE_MMU - depends on BR2_PACKAGE_LIBATOMIC_ARCH_SUPPORTS + depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS + depends on !BR2_sparc64 diff --git a/package/moarvm/moarvm.hash b/package/moarvm/moarvm.hash index 2a87855895e..47061775825 100644 --- a/package/moarvm/moarvm.hash +++ b/package/moarvm/moarvm.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 828843eb3da020ee24ff83933b63aebf4aa774b815a3dfa3a758d6334779565e MoarVM-2015.05.tar.gz +sha256 d409b684c7c92b144b31cf7f0408f30ccbb033ce646f57d7fbaeb9683773e37b MoarVM-2016.01.tar.gz diff --git a/package/moarvm/moarvm.mk b/package/moarvm/moarvm.mk index 5889436c14e..7456902f9b6 100644 --- a/package/moarvm/moarvm.mk +++ b/package/moarvm/moarvm.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOARVM_VERSION = 2015.05 +MOARVM_VERSION = 2016.01 MOARVM_SITE = http://moarvm.com/releases MOARVM_SOURCE = MoarVM-$(MOARVM_VERSION).tar.gz MOARVM_LICENSE = Artistic-2.0 diff --git a/package/modem-manager/Config.in b/package/modem-manager/Config.in index 59b8d88f0b8..aa7ed1e2fa2 100644 --- a/package/modem-manager/Config.in +++ b/package/modem-manager/Config.in @@ -1,11 +1,12 @@ config BR2_PACKAGE_MODEM_MANAGER bool "modemmanager" depends on BR2_PACKAGE_HAS_UDEV - select BR2_PACKAGE_DBUS depends on BR2_USE_WCHAR # libglib2 and gnutls depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, libglib2 depends on BR2_USE_MMU # dbus + select BR2_PACKAGE_DBUS select BR2_PACKAGE_DBUS_GLIB + select BR2_PACKAGE_LIBGUDEV help ModemManager is a DBus-activated daemon which controls mobile broadband (2G/3G/4G) devices and connections. diff --git a/package/modem-manager/S44modem-manager b/package/modem-manager/S44modem-manager index 10e58e709b2..cf6d89601dd 100755 --- a/package/modem-manager/S44modem-manager +++ b/package/modem-manager/S44modem-manager @@ -8,14 +8,14 @@ PIDFILE=/var/run/ModemManager.pid [ -x $MODEMMANAGER_BIN ] || exit 0 start() { - echo -n "Starting ModemManager: " + printf "Starting ModemManager: " umask 077 start-stop-daemon -S -q -b -m -p $PIDFILE \ --exec /usr/sbin/ModemManager [ $? = 0 ] && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping ModemManager: " + printf "Stopping ModemManager: " start-stop-daemon -K -q -p $PIDFILE [ $? = 0 ] && { echo "OK"; rm -f $PIDFILE; } || echo "FAIL" } diff --git a/package/modem-manager/modem-manager.hash b/package/modem-manager/modem-manager.hash index e3b6ae60b95..585f92abe5e 100644 --- a/package/modem-manager/modem-manager.hash +++ b/package/modem-manager/modem-manager.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 107ba0b4d0749aebb0347691a39f60891cc6004aeca8b2128d69c50557049a63 ModemManager-1.4.10.tar.xz +sha256 7ef5035375a953b285a742591df0a65fd442f4641ce4d8f4392a41d6d6bc70b3 ModemManager-1.4.12.tar.xz diff --git a/package/modem-manager/modem-manager.mk b/package/modem-manager/modem-manager.mk index 0e6b36a749b..451752c4fff 100644 --- a/package/modem-manager/modem-manager.mk +++ b/package/modem-manager/modem-manager.mk @@ -4,12 +4,12 @@ # ################################################################################ -MODEM_MANAGER_VERSION = 1.4.10 +MODEM_MANAGER_VERSION = 1.4.12 MODEM_MANAGER_SOURCE = ModemManager-$(MODEM_MANAGER_VERSION).tar.xz MODEM_MANAGER_SITE = http://www.freedesktop.org/software/ModemManager MODEM_MANAGER_LICENSE = GPLv2+ (programs, plugins), LGPLv2+ (libmm-glib) MODEM_MANAGER_LICENSE_FILES = COPYING -MODEM_MANAGER_DEPENDENCIES = host-pkgconf udev dbus-glib host-intltool +MODEM_MANAGER_DEPENDENCIES = host-pkgconf udev dbus-glib host-intltool libgudev MODEM_MANAGER_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_MODEM_MANAGER_LIBQMI),y) diff --git a/package/mongodb/Config.in b/package/mongodb/Config.in new file mode 100644 index 00000000000..2f6876a1991 --- /dev/null +++ b/package/mongodb/Config.in @@ -0,0 +1,29 @@ +# from src/mongo/platform/bits.h +config BR2_PACKAGE_MONGODB_ARCH_SUPPORTS + bool + # ARM needs LDREX/STREX, so ARMv6+ + default y if BR2_arm && !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5 + default y if BR2_aarch64 || BR2_i386 || BR2_powerpc64 || BR2_x86_64 + +config BR2_PACKAGE_MONGODB + bool "mongodb" + depends on BR2_PACKAGE_MONGODB_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_USES_GLIBC # needs glibc malloc_usable_size + depends on BR2_USE_WCHAR + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + help + MongoDB is a cross-platform document-oriented database (NoSQL). + + It uses JSON-like documents with dynamic schemas (BSON), making + the integration of data in certain types of applications easier + and faster. + + https://www.mongodb.org/ + +comment "mongodb needs a (e)glibc toolchain w/ wchar, threads, C++, gcc >= 4.8" + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + depends on BR2_PACKAGE_MONGODB_ARCH_SUPPORTS diff --git a/package/mongodb/mongodb.hash b/package/mongodb/mongodb.hash new file mode 100644 index 00000000000..0bdd66db93f --- /dev/null +++ b/package/mongodb/mongodb.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 316496375f41f322839529d36e75e3275fdec468f7656fdbeb53ec8dc1ca5275 mongodb-r3.2.0.tar.gz diff --git a/package/mongodb/mongodb.mk b/package/mongodb/mongodb.mk new file mode 100644 index 00000000000..1027c83fac1 --- /dev/null +++ b/package/mongodb/mongodb.mk @@ -0,0 +1,66 @@ +################################################################################ +# +# mongodb +# +################################################################################ + +MONGODB_VERSION_BASE = 3.2.0 +MONGODB_VERSION = r$(MONGODB_VERSION_BASE) +MONGODB_SITE = $(call github,mongodb,mongo,$(MONGODB_VERSION)) + +MONGODB_LICENSE = AGPLv3, Apache-2.0 +MONGODB_LICENSE_FILES = GNU-AGPL-3.0.txt APACHE-2.0.txt + +MONGODB_DEPENDENCIES = host-scons + +MONGODB_SCONS_TARGETS = mongod mongos + +MONGODB_SCONS_ENV = CC="$(TARGET_CC)" CXX="$(TARGET_CXX)" \ + -j"$(PARALLEL_JOBS)" + +MONGODB_SCONS_OPTS = --disable-warnings-as-errors + +# need to pass mongo version when not building from git repo +MONGODB_SCONS_OPTS += MONGO_VERSION=$(MONGODB_VERSION_BASE)- + +# WiredTiger database storage engine only supported on 64 bits +ifeq ($(BR2_ARCH_IS_64),y) +MONGODB_SCONS_OPTS += --wiredtiger=on +else +MONGODB_SCONS_OPTS += --wiredtiger=off +endif + +# JavaScript scripting engine and tcmalloc supported only on +# x86/x86-64 systems. Mongo target is a shell interface that +# depends on the javascript engine, so it will also only be +# built on x86/x86-64 systems. +ifeq ($(BR2_i386)$(BR2_x86_64),y) +MONGODB_SCONS_OPTS += --js-engine=mozjs --allocator=tcmalloc +MONGODB_SCONS_TARGETS += mongo +else +MONGODB_SCONS_OPTS += --js-engine=none --allocator=system +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +MONGODB_DEPENDENCIES += openssl +MONGODB_SCONS_OPTS += --ssl=SSL +endif + +define MONGODB_BUILD_CMDS + (cd $(@D); \ + $(SCONS) \ + $(MONGODB_SCONS_ENV) \ + $(MONGODB_SCONS_OPTS) \ + $(MONGODB_SCONS_TARGETS)) +endef + +define MONGODB_INSTALL_TARGET_CMDS + (cd $(@D); \ + $(SCONS) \ + $(MONGODB_SCONS_ENV) \ + $(MONGODB_SCONS_OPTS) \ + --prefix=$(TARGET_DIR)/usr \ + install) +endef + +$(eval $(generic-package)) diff --git a/package/mongoose/Config.in b/package/mongoose/Config.in index df706b91a40..22b385d457d 100644 --- a/package/mongoose/Config.in +++ b/package/mongoose/Config.in @@ -3,7 +3,8 @@ config BR2_PACKAGE_MONGOOSE depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() help - Mongoose is a small and easy to use web server + Mongoose is an embedded networking library, which can turn + anything into a web server https://github.com/cesanta/mongoose diff --git a/package/mongoose/S85mongoose b/package/mongoose/S85mongoose deleted file mode 100755 index 98e537fd62b..00000000000 --- a/package/mongoose/S85mongoose +++ /dev/null @@ -1,41 +0,0 @@ -#!/bin/sh -# -# Start/stop the mongoose HTTP server -# - -set -e - -PATH=/sbin:/bin:/usr/sbin:/usr/bin -NAME=mongoose -DESC="Mongoose HTTP server" - -DAEMON=`which mongoose` -OPTIONS="-document_root /var/www -listening_port 80" - -[ -e /etc/default/mongoose ] && . /etc/default/mongoose - -case "$1" in - start) - echo "Starting $DESC:" - start-stop-daemon -S -x "$DAEMON" -b -- $OPTIONS - echo "$NAME." - ;; - stop) - echo -n "Stopping $DESC: " - start-stop-daemon -K -x "$DAEMON" - echo "$NAME." - ;; - restart|force-reload) - echo -n "Restarting $DESC: " - start-stop-daemon -K -x "$DAEMON" - sleep 1 - start-stop-daemon -S -x "$DAEMON" -b -- $OPTIONS - echo "$NAME." - ;; - *) - echo "Usage: $0 {start|stop|restart|force-reload}" >&2 - exit 1 - ;; -esac - -exit 0 diff --git a/package/mongoose/mongoose.hash b/package/mongoose/mongoose.hash index 5687094f2db..c131e48c418 100644 --- a/package/mongoose/mongoose.hash +++ b/package/mongoose/mongoose.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 cc2557c7cf9f15e1e691f285a4c6c705cc7e56cb70c64cb49703a428a0677065 mongoose-5.6.tar.gz +sha256 94b934da083afe8abb1c0af5abb8f25294050011793f048166b12f000f9433a0 mongoose-6.2.tar.gz diff --git a/package/mongoose/mongoose.mk b/package/mongoose/mongoose.mk index 14f2aae152f..98f65255005 100644 --- a/package/mongoose/mongoose.mk +++ b/package/mongoose/mongoose.mk @@ -4,7 +4,7 @@ # ################################################################################ -MONGOOSE_VERSION = 5.6 +MONGOOSE_VERSION = 6.2 MONGOOSE_SITE = $(call github,cesanta,mongoose,$(MONGOOSE_VERSION)) MONGOOSE_LICENSE = GPLv2 MONGOOSE_LICENSE_FILES = LICENSE @@ -19,31 +19,10 @@ MONGOOSE_CFLAGS += -DNS_ENABLE_SSL -lssl -lcrypto -lz endif define MONGOOSE_BUILD_CMDS - $(TARGET_CC) $(@D)/examples/web_server/web_server.c $(@D)/mongoose.c \ - -I$(@D) -o $(@D)/examples/web_server/web_server \ - $(MONGOOSE_CFLAGS) -pthread $(TARGET_CC) -c $(@D)/mongoose.c $(MONGOOSE_CFLAGS) -o $(@D)/mongoose.o $(TARGET_AR) rcs $(@D)/libmongoose.a $(@D)/mongoose.o endef -define MONGOOSE_INSTALL_TARGET_CMDS - $(INSTALL) -D -m 755 $(@D)/examples/web_server/web_server \ - $(TARGET_DIR)/usr/sbin/mongoose -endef - -define MONGOOSE_INSTALL_INIT_SYSV - $(INSTALL) -D -m 755 package/mongoose/S85mongoose \ - $(TARGET_DIR)/etc/init.d/S85mongoose -endef - -define MONGOOSE_INSTALL_INIT_SYSTEMD - $(INSTALL) -D -m 644 package/mongoose/mongoose.service \ - $(TARGET_DIR)/usr/lib/systemd/system/mongoose.service - mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants - ln -sf ../../../../usr/lib/systemd/system/mongoose.service \ - $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/mongoose.service -endef - define MONGOOSE_INSTALL_STAGING_CMDS $(INSTALL) -D -m 644 $(@D)/libmongoose.a \ $(STAGING_DIR)/usr/lib/libmongoose.a diff --git a/package/mongoose/mongoose.service b/package/mongoose/mongoose.service deleted file mode 100644 index 12a731c8328..00000000000 --- a/package/mongoose/mongoose.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=Mongoose HTTP server -After=network.target - -[Service] -ExecStart=/usr/sbin/mongoose -document_root /var/www -listening_port 80 -Restart=always - -[Install] -WantedBy=multi-user.target diff --git a/package/mongrel2/0004-Rename-symbol-to-prevent-conflict.patch b/package/mongrel2/0004-Rename-symbol-to-prevent-conflict.patch new file mode 100644 index 00000000000..83698164fd9 --- /dev/null +++ b/package/mongrel2/0004-Rename-symbol-to-prevent-conflict.patch @@ -0,0 +1,45 @@ +From 8d0bc79f38913b1a55e7d151b32bbc9462c24b47 Mon Sep 17 00:00:00 2001 +From: Jason Miller +Date: Fri, 14 Aug 2015 19:03:09 -0700 +Subject: [PATCH] Rename symbol to prevent conflict + +One of the standard headers defines max_align_t on some versions of linux. + +[Backported from upstream commit +https://github.com/mongrel2/mongrel2/commit/563bac8c59b9b32205164d237cf1ec0cb48d189f.] + +Signed-off-by: Rodrigo Rebello +--- + src/mem/align.h | 2 +- + src/mem/halloc.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/mem/align.h b/src/mem/align.h +index 4c6e183..03a4999 100644 +--- a/src/mem/align.h ++++ b/src/mem/align.h +@@ -30,7 +30,7 @@ union max_align + void (*q)(void); + }; + +-typedef union max_align max_align_t; ++typedef union max_align h_max_align_t; + + #endif + +diff --git a/src/mem/halloc.c b/src/mem/halloc.c +index b097d1f..40d0c09 100644 +--- a/src/mem/halloc.c ++++ b/src/mem/halloc.c +@@ -34,7 +34,7 @@ typedef struct hblock + #endif + hlist_item_t siblings; /* 2 pointers */ + hlist_head_t children; /* 1 pointer */ +- max_align_t data[1]; /* not allocated, see below */ ++ h_max_align_t data[1]; /* not allocated, see below */ + + } hblock_t; + +-- +2.1.4 + diff --git a/package/mongrel2/Config.in b/package/mongrel2/Config.in index 1afba77151b..49dd6fd97d4 100644 --- a/package/mongrel2/Config.in +++ b/package/mongrel2/Config.in @@ -1,9 +1,16 @@ -comment "mongrel2 needs a toolchain w/ C++, threads, wchar" - depends on BR2_UCLIBC_VERSION_SNAPSHOT || \ - BR2_TOOLCHAIN_USES_GLIBC || \ - BR2_arm +# mongrel2 uses {get,make,swap}context() functions, which are +# available in glibc for all architectures and in uClibc only for a +# subset of the architectures +config BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS + bool + default y if BR2_TOOLCHAIN_USES_GLIBC + default y if BR2_TOOLCHAIN_USES_UCLIBC && \ + (BR2_arm || BR2_armeb || BR2_i386 || BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || BR2_x86_64) + +comment "mongrel2 needs a uClibc or glibc toolchain w/ C++, threads, wchar, dynamic library" depends on !BR2_INSTALL_LIBSTDCPP || \ - !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR + !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \ + BR2_STATIC_LIBS || !BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS config BR2_PACKAGE_MONGREL2 bool "mongrel2" @@ -12,11 +19,8 @@ config BR2_PACKAGE_MONGREL2 depends on BR2_INSTALL_LIBSTDCPP # zeromq depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq depends on BR2_USE_WCHAR # zeromq -> util-linux - # {get,make,swap}context functions present in - # {e,}glibc and in uClibc's master branch. Source has arm workaround - depends on BR2_UCLIBC_VERSION_SNAPSHOT || \ - BR2_TOOLCHAIN_USES_GLIBC || \ - BR2_arm + depends on !BR2_STATIC_LIBS # uses dlopen() + depends on BR2_PACKAGE_MONGREL2_LIBC_SUPPORTS help Mongrel2 is an application, language, and network architecture agnostic web server that focuses on web applications using diff --git a/package/mongrel2/mongrel2.mk b/package/mongrel2/mongrel2.mk index 0be48327acf..d0640c9680b 100644 --- a/package/mongrel2/mongrel2.mk +++ b/package/mongrel2/mongrel2.mk @@ -13,6 +13,21 @@ MONGREL2_LICENSE = BSD-3c MONGREL2_LICENSE_FILES = LICENSE MONGREL2_DEPENDENCIES = sqlite zeromq +define MONGREL2_POLARSSL_DISABLE_ASM + $(SED) '/^#define POLARSSL_HAVE_ASM/d' $(@D)/src/polarssl/include/polarssl/config.h +endef + +# ARM in thumb mode breaks debugging with asm optimizations +# Microblaze asm optimizations are broken in general +# MIPS R6 asm is not yet supported +ifeq ($(BR2_ENABLE_DEBUG)$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_ARM_INSTRUCTIONS_THUMB2),yy) +MONGREL2_POST_CONFIGURE_HOOKS += MONGREL2_POLARSSL_DISABLE_ASM +else ifeq ($(BR2_microblaze),y) +MONGREL2_POST_CONFIGURE_HOOKS += MONGREL2_POLARSSL_DISABLE_ASM +else ifeq ($(BR2_mips_32r6)$(BR2_mips_64r6),y) +MONGREL2_POST_CONFIGURE_HOOKS += MONGREL2_POLARSSL_DISABLE_ASM +endif + define MONGREL2_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE1) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ PREFIX=/usr all diff --git a/package/monkey/monkey.mk b/package/monkey/monkey.mk index 73fbd62f9fa..02c26c99f41 100644 --- a/package/monkey/monkey.mk +++ b/package/monkey/monkey.mk @@ -6,7 +6,7 @@ MONKEY_VERSION_MAJOR = 1.5 MONKEY_VERSION = $(MONKEY_VERSION_MAJOR).6 -MONKEY_SITE = http://monkey-project.com/releases/$(MONKEY_VERSION_MAJOR)/ +MONKEY_SITE = http://monkey-project.com/releases/$(MONKEY_VERSION_MAJOR) MONKEY_LICENSE = Apache-2.0 MONKEY_LICENSE_FILES = LICENSE @@ -30,7 +30,7 @@ MONKEY_CONF_OPTS += --uclib-mode --no-backtrace endif ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) -MONKEY_CONF_OPTS += --musl-mode +MONKEY_CONF_OPTS += --musl-mode --no-backtrace endif ifeq ($(BR2_PACKAGE_MONKEY_SHARED),y) diff --git a/package/mono-gtksharp3/mono-gtksharp3.mk b/package/mono-gtksharp3/mono-gtksharp3.mk index fa63d669755..cccfcde1268 100644 --- a/package/mono-gtksharp3/mono-gtksharp3.mk +++ b/package/mono-gtksharp3/mono-gtksharp3.mk @@ -6,7 +6,7 @@ MONO_GTKSHARP3_VERSION_MAJOR = 2.99 MONO_GTKSHARP3_VERSION = $(MONO_GTKSHARP3_VERSION_MAJOR).3 -MONO_GTKSHARP3_SITE = http://ftp.gnome.org/pub/gnome/sources/gtk-sharp/$(MONO_GTKSHARP3_VERSION_MAJOR)/ +MONO_GTKSHARP3_SITE = http://ftp.gnome.org/pub/gnome/sources/gtk-sharp/$(MONO_GTKSHARP3_VERSION_MAJOR) MONO_GTKSHARP3_SOURCE = gtk-sharp-$(MONO_GTKSHARP3_VERSION).tar.xz MONO_GTKSHARP3_LICENSE = LGPLv2, MIT (cairo) MONO_GTKSHARP3_LICENSE_FILES = COPYING diff --git a/package/mono/0003-fix-parallel-install.patch b/package/mono/0003-fix-parallel-install.patch deleted file mode 100644 index c151173247a..00000000000 --- a/package/mono/0003-fix-parallel-install.patch +++ /dev/null @@ -1,40 +0,0 @@ -mcs: fix installation with parallel make - -In mcs/ the install of xbuild_12 and xbuild_14 will end-up installing -the same files: - ${NETFRAMEWORK_DIR}/v2.0/RedistList/FrameworkList.xml - ${NETFRAMEWORK_DIR}/v3.0/RedistList/FrameworkList.xml - ${NETFRAMEWORK_DIR}/v3.5/RedistList/FrameworkList.xml - ${NETFRAMEWORK_DIR}/v4.0/Profile/Client/RedistList/FrameworkList.xml - ${NETFRAMEWORK_DIR}/v4.0/RedistList/FrameworkList.xml - ${NETFRAMEWORK_DIR}/v4.5.1/RedistList/FrameworkList.xml - ${NETFRAMEWORK_DIR}/v4.5/RedistList/FrameworkList.xml - -This is because there is no atomicity when installing each file, and -xbuild_12 and xbuild_14 may well run in parallel, each trying to install -each of those files; but the 'install' utility will first check if the -target file exists or not, and behaves differently if it does than if it -does not, thus leading to build failures like so: - http://autobuild.buildroot.org/results/c32/c3288c5d1fb94474f14a4a889e76135878d403bc/build-end.log - -So, ensure ordering of the install of xbuild_12 and xbuild_14 (the -ordering is completely arbitrary, either way gives the same installed -files). - -Signed-off-by: "Yann E. MORIN" -Cc: Angelo Compagnucci - -diff -durN host-mono-4.0.0.orig/mcs/Makefile host-mono-4.0.0/mcs/Makefile ---- host-mono-4.0.0.orig/mcs/Makefile 2015-04-09 16:55:53.000000000 +0200 -+++ host-mono-4.0.0/mcs/Makefile 2015-05-16 17:25:44.475542483 +0200 -@@ -43,6 +43,10 @@ - profile-do--%: - $(MAKE) PROFILE=$(subst --, ,$*) - -+# xbuild_12 and xbuild_14 will try to install the same files, so they need -+# to be ordered -+profile-do--xbuild_14--install: profile-do--xbuild_12--install -+ - # We don't want to run the tests in parallel. We want behaviour like -k. - profiles-do--run-test: - ret=:; $(foreach p,$(PROFILES), { $(MAKE) PROFILE=$(p) run-test || ret=false; }; ) $$ret diff --git a/package/mono/0004-fixing-initialization-of-have-vasprintf.patch b/package/mono/0004-fixing-initialization-of-have-vasprintf.patch new file mode 100644 index 00000000000..55648593a59 --- /dev/null +++ b/package/mono/0004-fixing-initialization-of-have-vasprintf.patch @@ -0,0 +1,29 @@ +From 1c3d615d93b20d10c2729478d5104977dd9af23f Mon Sep 17 00:00:00 2001 +From: Angelo Compagnucci +Date: Wed, 5 Aug 2015 12:59:45 +0200 +Subject: [PATCH] Fixing initialization of have_vasprintf + +This patch initialize properly have_vasprintf in case vasprint function is found. +Solves multiple definition of `vasprintf' error in case vasprint is not properly detected. + +Patch is upstream: + + https://github.com/mono/mono/commit/40c171799b671718969ee28a02f92884d7fd181e + +Signed-off-by: Angelo Compagnucci +--- + eglib/configure.ac | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/eglib/configure.ac b/eglib/configure.ac +index 5281419..4bf91e5 100644 +--- a/eglib/configure.ac ++++ b/eglib/configure.ac +@@ -135,6 +135,7 @@ AC_CHECK_SIZEOF(void *) + AC_CHECK_SIZEOF(long) + AC_CHECK_SIZEOF(long long) + AC_CHECK_FUNCS(strlcpy stpcpy strtok_r rewinddir vasprintf) ++AC_CHECK_FUNC(vasprintf, have_vasprintf=yes) + AC_CHECK_FUNCS(getrlimit) + + # diff --git a/package/mono/0005-eglib-checking-for-locale_charset-function.patch b/package/mono/0005-eglib-checking-for-locale_charset-function.patch new file mode 100644 index 00000000000..52d5638451a --- /dev/null +++ b/package/mono/0005-eglib-checking-for-locale_charset-function.patch @@ -0,0 +1,28 @@ +From 026a8c44d332b3595814ce0aceba255467cd7b6d Mon Sep 17 00:00:00 2001 +From: Angelo Compagnucci +Date: Sat, 5 Sep 2015 08:57:21 +0200 +Subject: [PATCH] eglib: checking for locale_charset function + +This patch checks if locale_charset function is availabe in +libiconv or libcharset and changes the linking options accordingly. + +Signed-off-by: Angelo Compagnucci +--- + eglib/configure.ac | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/eglib/configure.ac b/eglib/configure.ac +index 9d094ea..5ea220e 100644 +--- a/eglib/configure.ac ++++ b/eglib/configure.ac +@@ -182,6 +182,7 @@ fi + AC_SUBST(G_HAVE_ISO_VARARGS) + + AC_CHECK_HEADERS(getopt.h sys/select.h sys/time.h sys/wait.h pwd.h langinfo.h iconv.h localcharset.h sys/types.h sys/resource.h) ++AC_CHECK_LIB([iconv], [locale_charset],[],[AC_CHECK_LIB([charset], [locale_charset],[LIBS+="-liconv -lcharset"])]) + AC_CHECK_HEADER(alloca.h, [HAVE_ALLOCA_H=1], [HAVE_ALLOCA_H=0]) + AC_SUBST(HAVE_ALLOCA_H) + +-- +1.9.1 + diff --git a/package/mono/0006-Remove-unit-tests-from-mono-compilation.patch b/package/mono/0006-Remove-unit-tests-from-mono-compilation.patch new file mode 100644 index 00000000000..3714b65821f --- /dev/null +++ b/package/mono/0006-Remove-unit-tests-from-mono-compilation.patch @@ -0,0 +1,29 @@ +From 155f96953d1b898f04a4e708c9ebc1e450b2f63e Mon Sep 17 00:00:00 2001 +From: Angelo Compagnucci +Date: Tue, 24 Nov 2015 23:11:10 +0100 +Subject: [PATCH] Remove unit-tests from mono compilation + +This patch fixes compiling errors with unit-tests under linux. + +Signed-off-by: Angelo Compagnucci +--- + mono/Makefile.am | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/mono/Makefile.am b/mono/Makefile.am +index ef41dfe..7129507 100644 +--- a/mono/Makefile.am ++++ b/mono/Makefile.am +@@ -30,7 +30,7 @@ monotouch-do-clean: + (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$target); \ + done; + else +-SUBDIRS = arch utils io-layer cil metadata $(sgen_dirs) mini dis tests unit-tests benchmark profiler ++SUBDIRS = arch utils io-layer cil metadata $(sgen_dirs) mini dis tests benchmark profiler + endif + endif +-DIST_SUBDIRS = arch utils io-layer cil metadata $(sgen_dirs) mini dis tests unit-tests benchmark profiler ++DIST_SUBDIRS = arch utils io-layer cil metadata $(sgen_dirs) mini dis tests benchmark profiler +-- +1.9.1 + diff --git a/package/mono/0007-config.in-fixing-wrong-MonoPosixHelper-location.patch b/package/mono/0007-config.in-fixing-wrong-MonoPosixHelper-location.patch new file mode 100644 index 00000000000..6ebb802adf1 --- /dev/null +++ b/package/mono/0007-config.in-fixing-wrong-MonoPosixHelper-location.patch @@ -0,0 +1,28 @@ +From 76aa4fb62a433e61dc35eefcc3077f0463182d2f Mon Sep 17 00:00:00 2001 +From: Angelo Compagnucci +Date: Tue, 23 Feb 2016 22:43:39 +0100 +Subject: [PATCH] config.in: fixing wrong MonoPosixHelper location + +This patch remove a wrong prefix for libMonoPosixHelper + +Signed-off-by: Angelo Compagnucci +--- + data/config.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/data/config.in b/data/config.in +index b760176..41495b9 100644 +--- a/data/config.in ++++ b/data/config.in +@@ -10,7 +10,7 @@ + + + +- ++ + + + +-- +1.9.1 + diff --git a/package/mono/0008-monodoc-Fixing-wrong-monodoc-search-path.patch b/package/mono/0008-monodoc-Fixing-wrong-monodoc-search-path.patch new file mode 100644 index 00000000000..58fa3238d3e --- /dev/null +++ b/package/mono/0008-monodoc-Fixing-wrong-monodoc-search-path.patch @@ -0,0 +1,29 @@ +From 18bba65adf58d54645398de26eac24081d48f793 Mon Sep 17 00:00:00 2001 +From: Angelo Compagnucci +Date: Thu, 25 Feb 2016 22:19:31 +0100 +Subject: [PATCH] mcs/class/monodoc/Makefile: Fixing wrong monodoc search path + +mono_libdir actually leaks host compiler path, fixing +by hardcoding correct path for our usecase. + +Signed-off-by: Angelo Compagnucci +--- + mcs/class/monodoc/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mcs/class/monodoc/Makefile b/mcs/class/monodoc/Makefile +index 3ebba80..ddc2098 100644 +--- a/mcs/class/monodoc/Makefile ++++ b/mcs/class/monodoc/Makefile +@@ -135,7 +135,7 @@ test-local: setup-doc-sources + dist-local: Monodoc.Ecma/EcmaUrlParser.cs + + $(the_lib).config: Makefile monodoc.dll.config.in +- sed 's,@monodoc_refdir@,$(mono_libdir)/monodoc,g' monodoc.dll.config.in > $@ ++ sed 's,@monodoc_refdir@,/usr/lib/monodoc,g' monodoc.dll.config.in > $@ + + Monodoc.Ecma/EcmaUrlParser.cs: Monodoc.Ecma/EcmaUrlParser.jay $(topdir)/jay/skeleton.cs jay.sh + $(topdir)/$(thisdir)/jay.sh $(topdir) $< $@ $(JAY_FLAGS) +-- +1.9.1 + diff --git a/package/mono/Config.in b/package/mono/Config.in index 0c7129b91ac..cf18a033cb6 100644 --- a/package/mono/Config.in +++ b/package/mono/Config.in @@ -7,12 +7,13 @@ config BR2_PACKAGE_MONO bool "mono" depends on BR2_PACKAGE_MONO_ARCH_SUPPORTS depends on BR2_TOOLCHAIN_HAS_THREADS - select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + depends on !BR2_STATIC_LIBS help An open source, cross-platform, implementation of C# and the CLR that is binary compatible with Microsoft.NET. http://download.mono-project.com/sources/mono/ -comment "mono needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS +comment "mono needs a toolchain w/ threads, dynamic library" + depends on BR2_PACKAGE_MONO_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/mono/mono.hash b/package/mono/mono.hash index cf8e0d5b1a7..001f6be7e01 100644 --- a/package/mono/mono.hash +++ b/package/mono/mono.hash @@ -1,2 +1,2 @@ # sha256 locally computed -sha256 b074584eea5bbaaf29362486a69d70abe53d0d2feb334f231fa9c841cf6fd651 mono-4.0.2.5.tar.bz2 +sha256 b7b461fe04375f621d88166ba8c6f1cb33c439fd3e17136460f7d087a51ed792 mono-4.2.1.102.tar.bz2 diff --git a/package/mono/mono.mk b/package/mono/mono.mk index 8668aa0d055..8f99983377a 100644 --- a/package/mono/mono.mk +++ b/package/mono/mono.mk @@ -4,7 +4,7 @@ # ################################################################################ -MONO_VERSION = 4.0.2.5 +MONO_VERSION = 4.2.1.102 MONO_SITE = http://download.mono-project.com/sources/mono MONO_SOURCE = mono-$(MONO_VERSION).tar.bz2 MONO_LICENSE = GPLv2 or MIT (compiler, tools), LGPLv2 (runtime libs), MIT (class libs) or commercial diff --git a/package/monolite/monolite.hash b/package/monolite/monolite.hash index 1139c0af10e..fa098e266d5 100644 --- a/package/monolite/monolite.hash +++ b/package/monolite/monolite.hash @@ -1,2 +1,2 @@ # sha256 locally computed -sha256 07a8573feef0053ec28b98355feba8c83dcfb3f99c2d0913a16a287382daf4b8 monolite-117-latest.tar.gz +sha256 0cf7aeafb22daeb7ed3398057f0ac88015440901f480ef84cba2431a753f8c1e monolite-138-latest.tar.gz diff --git a/package/monolite/monolite.mk b/package/monolite/monolite.mk index aa6c28cd125..3c53bff5aa1 100644 --- a/package/monolite/monolite.mk +++ b/package/monolite/monolite.mk @@ -4,7 +4,7 @@ # ################################################################################ -MONOLITE_VERSION = 117 +MONOLITE_VERSION = 138 MONOLITE_SITE = http://storage.bos.xamarin.com/mono-dist-master/latest MONOLITE_SOURCE = monolite-$(MONOLITE_VERSION)-latest.tar.gz MONOLITE_LICENSE = LGPLv2 or commercial diff --git a/package/mosh/Config.in b/package/mosh/Config.in index 4ad7d61023b..26f72339896 100644 --- a/package/mosh/Config.in +++ b/package/mosh/Config.in @@ -1,12 +1,14 @@ -comment "mosh needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS - depends on !(BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64) +comment "mosh needs a toolchain w/ C++, threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP \ + || BR2_STATIC_LIBS + depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS config BR2_PACKAGE_MOSH bool "mosh" - depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64 # protobuf - depends on BR2_TOOLCHAIN_HAS_THREADS #protobuf - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" # protobuf + depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS + depends on BR2_INSTALL_LIBSTDCPP # protobuf + depends on BR2_TOOLCHAIN_HAS_THREADS # protobuf + depends on !BR2_STATIC_LIBS # protobuf select BR2_PACKAGE_PROTOBUF select BR2_PACKAGE_NCURSES select BR2_PACKAGE_OPENSSL diff --git a/package/mosh/mosh.mk b/package/mosh/mosh.mk index 02954f9e4a9..f8c45e8ccd2 100644 --- a/package/mosh/mosh.mk +++ b/package/mosh/mosh.mk @@ -5,7 +5,7 @@ ################################################################################ MOSH_VERSION = 1.2.5 -MOSH_SITE = https://mosh.mit.edu/ +MOSH_SITE = https://mosh.mit.edu MOSH_DEPENDENCIES = zlib ncurses protobuf openssl host-pkgconf MOSH_LICENSE = GPLv3+ with exception MOSH_LICENSE_FILES = COPYING COPYING.iOS diff --git a/package/mosquitto/Config.in b/package/mosquitto/Config.in index 4053c62259c..ab598d07b66 100644 --- a/package/mosquitto/Config.in +++ b/package/mosquitto/Config.in @@ -3,8 +3,7 @@ config BR2_PACKAGE_MOSQUITTO depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS # builds .so # Triggers the _gp link issue - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII help Mosquitto is an open source message broker that implements the MQ Telemetry Transport protocol versions 3.1 and @@ -19,5 +18,4 @@ config BR2_PACKAGE_MOSQUITTO comment "mosquitto needs a toolchain w/ dynamic library" depends on BR2_USE_MMU depends on BR2_STATIC_LIBS - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII diff --git a/package/mosquitto/S50mosquitto b/package/mosquitto/S50mosquitto index 9f10cce2e87..5241a071d71 100644 --- a/package/mosquitto/S50mosquitto +++ b/package/mosquitto/S50mosquitto @@ -1,14 +1,14 @@ #!/bin/sh start() { - echo -n "Starting mosquitto: " + printf "Starting mosquitto: " start-stop-daemon -S -q -m -b -p /var/run/mosquitto.pid \ --exec /usr/sbin/mosquitto \ -- -c /etc/mosquitto/mosquitto.conf [ $? = 0 ] && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping mosquitto: " + printf "Stopping mosquitto: " start-stop-daemon -K -q -p /var/run/mosquitto.pid [ $? = 0 ] && echo "OK" || echo "FAIL" } diff --git a/package/mosquitto/mosquitto.hash b/package/mosquitto/mosquitto.hash index 90133d79520..861136b6ad0 100644 --- a/package/mosquitto/mosquitto.hash +++ b/package/mosquitto/mosquitto.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 5ebc3800a0018bfbec62dcc3748fb29f628df068acd39c62c4ef651d9276647e mosquitto-1.4.2.tar.gz +sha256 d96eb5610e57cc3e273f4527d3f54358ab7711459941a9e64bc4d0a85c2acfda mosquitto-1.4.8.tar.gz diff --git a/package/mosquitto/mosquitto.mk b/package/mosquitto/mosquitto.mk index 281833c41fb..dfef6e509d5 100644 --- a/package/mosquitto/mosquitto.mk +++ b/package/mosquitto/mosquitto.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOSQUITTO_VERSION = 1.4.2 +MOSQUITTO_VERSION = 1.4.8 MOSQUITTO_SITE = http://mosquitto.org/files/source MOSQUITTO_LICENSE = EPLv1.0 or EDLv1.0 MOSQUITTO_LICENSE_FILES = LICENSE.txt epl-v10 edl-v10 @@ -83,6 +83,14 @@ define MOSQUITTO_INSTALL_INIT_SYSV $(TARGET_DIR)/etc/init.d/S50mosquitto endef +define MOSQUITTO_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/mosquitto/mosquitto.service \ + $(TARGET_DIR)/usr/lib/systemd/system/mosquitto.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -fs ../../../../usr/lib/systemd/system/mosquitto.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/mosquitto.service +endef + define MOSQUITTO_USERS mosquitto -1 nogroup -1 * - - - Mosquitto user endef diff --git a/package/mosquitto/mosquitto.service b/package/mosquitto/mosquitto.service new file mode 100644 index 00000000000..2d1939d1c79 --- /dev/null +++ b/package/mosquitto/mosquitto.service @@ -0,0 +1,10 @@ +[Unit] +Description=Mosquitto MQTT broker + +[Service] +ExecStart=/usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf +ExecReload=/bin/kill -HUP $MAINPID +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/package/motion/motion.mk b/package/motion/motion.mk index 0b5b8c89733..d082b3195ae 100644 --- a/package/motion/motion.mk +++ b/package/motion/motion.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOTION_SITE = http://www.lavrsen.dk/svn/motion/trunk/ +MOTION_SITE = http://www.lavrsen.dk/svn/motion/trunk MOTION_SITE_METHOD = svn MOTION_VERSION = r561 MOTION_CONF_OPTS = --without-pgsql --without-sdl --without-sqlite3 --without-mysql --with-ffmpeg=$(STAGING_DIR)/usr/lib \ diff --git a/package/mpd/0001-notify-Don-t-use-constexpr-on-Haiku.patch b/package/mpd/0001-notify-Don-t-use-constexpr-on-Haiku.patch new file mode 100644 index 00000000000..2685578ec13 --- /dev/null +++ b/package/mpd/0001-notify-Don-t-use-constexpr-on-Haiku.patch @@ -0,0 +1,28 @@ +From f7d5081b727f69ae3a894a4a3310670a5d9ab077 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= +Date: Thu, 17 Sep 2015 22:18:10 +0200 +Subject: [PATCH] notify: Don't use constexpr on Haiku + +[Thomas: taken from upstream commit bf73d0f9051fd5740c22bf6e5114ceb4535d548f.] +Signed-off-by: Thomas Petazzoni +--- + src/notify.hxx | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/notify.hxx b/src/notify.hxx +index 3e62a01..1ee413f 100644 +--- a/src/notify.hxx ++++ b/src/notify.hxx +@@ -28,7 +28,8 @@ struct notify { + Cond cond; + bool pending; + +-#if !defined(WIN32) && !defined(__NetBSD__) && !defined(__BIONIC__) ++#if !defined(WIN32) && !defined(__NetBSD__) && !defined(__BIONIC__) && \ ++ !defined(__HAIKU__) + constexpr + #endif + notify():pending(false) {} +-- +2.6.4 + diff --git a/package/mpd/0002-notify-use-constexpr-only-with-glibc.patch b/package/mpd/0002-notify-use-constexpr-only-with-glibc.patch new file mode 100644 index 00000000000..e50f598540c --- /dev/null +++ b/package/mpd/0002-notify-use-constexpr-only-with-glibc.patch @@ -0,0 +1,31 @@ +From 09830d448d6299a47fbccf39af6f325be5f2b514 Mon Sep 17 00:00:00 2001 +From: Max Kellermann +Date: Thu, 17 Sep 2015 22:56:35 +0200 +Subject: [PATCH] notify: use "constexpr" only with glibc + +The Mutex and Cond constructors are only "constexpr" with glibc, and +this is what this #ifdef is about. + +[Thomas: taken from upstream commit 459a812a54509ebfd634a3df2998395c9cb5b98f.] +Signed-off-by: Thomas Petazzoni +--- + src/notify.hxx | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/src/notify.hxx b/src/notify.hxx +index 1ee413f..c96390b 100644 +--- a/src/notify.hxx ++++ b/src/notify.hxx +@@ -28,8 +28,7 @@ struct notify { + Cond cond; + bool pending; + +-#if !defined(WIN32) && !defined(__NetBSD__) && !defined(__BIONIC__) && \ +- !defined(__HAIKU__) ++#ifdef __GLIBC__ + constexpr + #endif + notify():pending(false) {} +-- +2.6.4 + diff --git a/package/mpd/0003-thread-Posix-Mutex-Cond-use-constexpr-only-with-glib.patch b/package/mpd/0003-thread-Posix-Mutex-Cond-use-constexpr-only-with-glib.patch new file mode 100644 index 00000000000..26fd7f62161 --- /dev/null +++ b/package/mpd/0003-thread-Posix-Mutex-Cond-use-constexpr-only-with-glib.patch @@ -0,0 +1,97 @@ +From 42a5f0c4435757505bd515b68c2a27e8f7565f34 Mon Sep 17 00:00:00 2001 +From: Max Kellermann +Date: Tue, 25 Aug 2015 12:46:12 +0200 +Subject: [PATCH] thread/Posix{Mutex,Cond}: use "constexpr" only with glibc + +Apparently all other C libraries are not compatible with "constexpr". +Those which are not will get a performance penalty, but at least they +work at all. + +[Thomas: taken from upstream commit 75dff6445063d9b49cca126fd661c9abbd680977.] +Signed-off-by: Thomas Petazzoni +--- + src/thread/PosixCond.hxx | 16 ++++++++-------- + src/thread/PosixMutex.hxx | 16 ++++++++-------- + 2 files changed, 16 insertions(+), 16 deletions(-) + +diff --git a/src/thread/PosixCond.hxx b/src/thread/PosixCond.hxx +index b3fe204..73dbe02 100644 +--- a/src/thread/PosixCond.hxx ++++ b/src/thread/PosixCond.hxx +@@ -1,5 +1,5 @@ + /* +- * Copyright (C) 2009-2013 Max Kellermann ++ * Copyright (C) 2009-2015 Max Kellermann + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -41,9 +41,13 @@ class PosixCond { + pthread_cond_t cond; + + public: +-#if defined(__NetBSD__) || defined(__BIONIC__) +- /* NetBSD's PTHREAD_COND_INITIALIZER is not compatible with +- "constexpr" */ ++#ifdef __GLIBC__ ++ /* optimized constexpr constructor for pthread implementations ++ that support it */ ++ constexpr PosixCond():cond(PTHREAD_COND_INITIALIZER) {} ++#else ++ /* slow fallback for pthread implementations that are not ++ compatible with "constexpr" */ + PosixCond() { + pthread_cond_init(&cond, nullptr); + } +@@ -51,10 +55,6 @@ public: + ~PosixCond() { + pthread_cond_destroy(&cond); + } +-#else +- /* optimized constexpr constructor for sane POSIX +- implementations */ +- constexpr PosixCond():cond(PTHREAD_COND_INITIALIZER) {} + #endif + + PosixCond(const PosixCond &other) = delete; +diff --git a/src/thread/PosixMutex.hxx b/src/thread/PosixMutex.hxx +index 5805158..e0fd614 100644 +--- a/src/thread/PosixMutex.hxx ++++ b/src/thread/PosixMutex.hxx +@@ -1,5 +1,5 @@ + /* +- * Copyright (C) 2009-2013 Max Kellermann ++ * Copyright (C) 2009-2015 Max Kellermann + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions +@@ -41,9 +41,13 @@ class PosixMutex { + pthread_mutex_t mutex; + + public: +-#if defined(__NetBSD__) || defined(__BIONIC__) +- /* NetBSD's PTHREAD_MUTEX_INITIALIZER is not compatible with +- "constexpr" */ ++#ifdef __GLIBC__ ++ /* optimized constexpr constructor for pthread implementations ++ that support it */ ++ constexpr PosixMutex():mutex(PTHREAD_MUTEX_INITIALIZER) {} ++#else ++ /* slow fallback for pthread implementations that are not ++ compatible with "constexpr" */ + PosixMutex() { + pthread_mutex_init(&mutex, nullptr); + } +@@ -51,10 +55,6 @@ public: + ~PosixMutex() { + pthread_mutex_destroy(&mutex); + } +-#else +- /* optimized constexpr constructor for sane POSIX +- implementations */ +- constexpr PosixMutex():mutex(PTHREAD_MUTEX_INITIALIZER) {} + #endif + + PosixMutex(const PosixMutex &other) = delete; +-- +2.6.4 + diff --git a/package/mpd/0001-thread-Name-include-stdio.h-for-prctl-as-well.patch b/package/mpd/0004-thread-Name-include-stdio.h-for-prctl-as-well.patch similarity index 81% rename from package/mpd/0001-thread-Name-include-stdio.h-for-prctl-as-well.patch rename to package/mpd/0004-thread-Name-include-stdio.h-for-prctl-as-well.patch index 1711da31602..1943623edb0 100644 --- a/package/mpd/0001-thread-Name-include-stdio.h-for-prctl-as-well.patch +++ b/package/mpd/0004-thread-Name-include-stdio.h-for-prctl-as-well.patch @@ -1,4 +1,4 @@ -From 36139b29cccae008c74924d81ea67d265327f7ac Mon Sep 17 00:00:00 2001 +From a0a9fed68126eb24e04af924c0d46351ff5eeb0f Mon Sep 17 00:00:00 2001 From: Gustavo Zacarias Date: Mon, 26 Jan 2015 09:55:04 -0300 Subject: [PATCH] thread/Name: include stdio.h for prctl as well @@ -12,11 +12,11 @@ Signed-off-by: Gustavo Zacarias 1 file changed, 1 insertion(+) diff --git a/src/thread/Name.hxx b/src/thread/Name.hxx -index 1576b3f..8d46d33 100644 +index a99208d..8f9d7d3 100644 --- a/src/thread/Name.hxx +++ b/src/thread/Name.hxx -@@ -26,6 +26,7 @@ - # include +@@ -25,6 +25,7 @@ + # include #elif defined(HAVE_PRCTL) # include +# include @@ -24,5 +24,5 @@ index 1576b3f..8d46d33 100644 # define HAVE_THREAD_NAME # endif -- -2.0.5 +2.6.4 diff --git a/package/mpd/0005-configure.ac-check-if-libatomic-is-needed.patch b/package/mpd/0005-configure.ac-check-if-libatomic-is-needed.patch new file mode 100644 index 00000000000..a9873a741fc --- /dev/null +++ b/package/mpd/0005-configure.ac-check-if-libatomic-is-needed.patch @@ -0,0 +1,40 @@ +From 8eaf14a17244aaf000b4d19e4fde4a637576939f Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 7 Feb 2016 21:40:47 +0100 +Subject: [PATCH] configure.ac: check if libatomic is needed + +The mpd source code uses the C++11 functionality, which +internally is implemented using the __atomic_*() gcc built-ins. On +certain architectures, the __atomic_*() built-ins are implemented in +the libatomic library that comes with the rest of the gcc runtime. Due +to this, code using might need to link against libatomic, +otherwise one hits build issues such as: + +GlobalEvents.cxx:(.text._ZN12GlobalEvents4EmitENS_5EventE+0x14): undefined reference to `__atomic_fetch_or_4' + +on an architecture like SPARC. + +To solve this, a configure.ac check is added to know if we need to +link against libatomic or not. + +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/configure.ac b/configure.ac +index 107b45a..8e6fab7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -233,6 +233,8 @@ if test x$have_pthread_setname_np = xyes; then + AC_DEFINE(HAVE_PTHREAD_SETNAME_NP, 1, [Is pthread_setname_np() available?]) + fi + ++AC_SEARCH_LIBS([__atomic_load_4], [atomic]) ++ + dnl --------------------------------------------------------------------------- + dnl Event loop selection + dnl --------------------------------------------------------------------------- +-- +2.6.4 + diff --git a/package/mpd/Config.in b/package/mpd/Config.in index 28962f703ab..3ac806f74a3 100644 --- a/package/mpd/Config.in +++ b/package/mpd/Config.in @@ -6,6 +6,7 @@ menuconfig BR2_PACKAGE_MPD depends on BR2_USE_MMU # libglib2 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_ATOMIC select BR2_PACKAGE_BOOST select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE @@ -77,6 +78,7 @@ config BR2_PACKAGE_MPD_FAAD2 config BR2_PACKAGE_MPD_FFMPEG bool "ffmpeg" select BR2_PACKAGE_FFMPEG + depends on !BR2_nios2 # ffmpeg help Enable ffmpeg input support. Select this if you want to play back files supported by @@ -179,21 +181,27 @@ config BR2_PACKAGE_MPD_CURL config BR2_PACKAGE_MPD_LIBNFS bool "nfs" - depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC + # libnfs -> libtirpc + depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC || BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_LIBNFS help Enable Network File System (NFS) support. -comment "nfs support needs a toolchain w/ RPC" - depends on !BR2_TOOLCHAIN_HAS_NATIVE_RPC +comment "nfs support needs a toolchain w/ threads support" + depends on !(BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_HAS_NATIVE_RPC) -comment "samba support needs an (e)glibc toolchain" - depends on !BR2_TOOLCHAIN_USES_GLIBC +comment "samba support needs an (e)glibc toolchain w/ dynamic library, RPC" + depends on !BR2_nios2 + depends on !BR2_TOOLCHAIN_USES_GLIBC || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_NATIVE_RPC config BR2_PACKAGE_MPD_LIBSMBCLIENT bool "samba" depends on !BR2_nios2 # samba depends on BR2_TOOLCHAIN_USES_GLIBC + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_SAMBA4 help Enable Samba support. @@ -221,15 +229,21 @@ config BR2_PACKAGE_MPD_AO help Enable libao output support. +config BR2_PACKAGE_MPD_HTTPD_OUTPUT + bool "httpd output" + help + Enable httpd output support. + config BR2_PACKAGE_MPD_JACK2 bool "jack2" - depends on BR2_ARCH_HAS_ATOMICS depends on !BR2_STATIC_LIBS # jack2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_JACK2 help Enable jack output support. comment "jack support needs a toolchain w/ dynamic library" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_STATIC_LIBS config BR2_PACKAGE_MPD_OSS @@ -239,13 +253,14 @@ config BR2_PACKAGE_MPD_OSS config BR2_PACKAGE_MPD_PULSEAUDIO bool "pulseaudio" - depends on BR2_ARCH_HAS_ATOMICS # pulseaudio depends on !BR2_STATIC_LIBS # pulseaudio + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pulseaudio -> json-c select BR2_PACKAGE_PULSEAUDIO help Enable pulseaudio output support. comment "pulseaudio support needs a toolchain w/ dynamic library" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_STATIC_LIBS comment "Miscellaneous plugins" @@ -298,5 +313,6 @@ endif comment "mpd needs a toolchain w/ C++, threads, wchar, gcc >= 4.6" depends on BR2_USE_MMU depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \ !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 diff --git a/package/mpd/S95mpd b/package/mpd/S95mpd index f25135d38b3..9f68b45837b 100644 --- a/package/mpd/S95mpd +++ b/package/mpd/S95mpd @@ -5,13 +5,13 @@ test -f /usr/bin/mpd || exit 0 test -f /etc/mpd.conf || exit 0 start() { - echo -n "Starting mpd: " + printf "Starting mpd: " start-stop-daemon --start --quiet --background --exec /usr/bin/mpd \ && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping mpd: " + printf "Stopping mpd: " start-stop-daemon --stop --quiet --pidfile /var/run/mpd.pid \ && echo "OK" || echo "FAIL" } diff --git a/package/mpd/mpd.hash b/package/mpd/mpd.hash index 56d30f27a88..bc4792ad374 100644 --- a/package/mpd/mpd.hash +++ b/package/mpd/mpd.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 c386eb3d22f98dc993b5ae3c272f969aa7763713483c6800040ebf1791b15851 mpd-0.19.10.tar.xz +sha256 7b6fe6c7ce72f5f80a276d680072b524ecb395e546e252b8f3a0756377e1e875 mpd-0.19.12.tar.xz diff --git a/package/mpd/mpd.mk b/package/mpd/mpd.mk index 7bbef0317fa..d5d77a638c6 100644 --- a/package/mpd/mpd.mk +++ b/package/mpd/mpd.mk @@ -5,12 +5,13 @@ ################################################################################ MPD_VERSION_MAJOR = 0.19 -MPD_VERSION = $(MPD_VERSION_MAJOR).10 +MPD_VERSION = $(MPD_VERSION_MAJOR).12 MPD_SOURCE = mpd-$(MPD_VERSION).tar.xz MPD_SITE = http://www.musicpd.org/download/mpd/$(MPD_VERSION_MAJOR) MPD_DEPENDENCIES = host-pkgconf boost libglib2 MPD_LICENSE = GPLv2+ MPD_LICENSE_FILES = COPYING +MPD_AUTORECONF = YES # Some options need an explicit --disable or --enable @@ -92,6 +93,12 @@ else MPD_CONF_OPTS += --disable-flac endif +ifeq ($(BR2_PACKAGE_MPD_HTTPD_OUTPUT),y) +MPD_CONF_OPTS += --enable-httpd-output +else +MPD_CONF_OPTS += --disable-httpd-output +endif + ifeq ($(BR2_PACKAGE_MPD_JACK2),y) MPD_DEPENDENCIES += jack2 MPD_CONF_OPTS += --enable-jack diff --git a/package/mpdecimal/mpdecimal.hash b/package/mpdecimal/mpdecimal.hash index 249d56c5616..bc443d1cd9a 100644 --- a/package/mpdecimal/mpdecimal.hash +++ b/package/mpdecimal/mpdecimal.hash @@ -1,2 +1,2 @@ -# From http://code.activestate.com/lists/python-dev/132315/ -sha256 da74d3cfab559971a4fbd4fb506e1b4498636eb77d0fd09e44f8e546d18ac068 mpdecimal_2.4.1.orig.tar.gz +# From http://www.bytereef.org/mpdecimal/download.html +sha256 da74d3cfab559971a4fbd4fb506e1b4498636eb77d0fd09e44f8e546d18ac068 mpdecimal-2.4.1.tar.gz diff --git a/package/mpdecimal/mpdecimal.mk b/package/mpdecimal/mpdecimal.mk index 07a756421e8..9b13def523c 100644 --- a/package/mpdecimal/mpdecimal.mk +++ b/package/mpdecimal/mpdecimal.mk @@ -4,12 +4,8 @@ # ################################################################################ -# Official site currently down -# MPDECIMAL_SITE = http://www.bytereef.org/software/mpdecimal/releases - -MPDECIMAL_SITE = https://launchpad.net/ubuntu/+archive/primary/+files +MPDECIMAL_SITE = http://www.bytereef.org/software/mpdecimal/releases MPDECIMAL_VERSION = 2.4.1 -MPDECIMAL_SOURCE = mpdecimal_$(MPDECIMAL_VERSION).orig.tar.gz MPDECIMAL_INSTALL_STAGING = YES MPDECIMAL_LICENSE = BSD-2c MPDECIMAL_LICENSE_FILES = LICENSE.txt @@ -17,7 +13,7 @@ MPDECIMAL_CONF_OPTS = LD="$(TARGET_CC)" MPDECIMAL_AUTORECONF = YES # On i386, by default, mpdecimal tries to uses which is not -# available in musl/glibc. So in this case, we tell mpdecimal to use +# available in musl/uclibc. So in this case, we tell mpdecimal to use # the generic 32 bits code, which is anyway the one used on ARM, # PowerPC, etc. ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),) diff --git a/package/mpg123/mpg123.hash b/package/mpg123/mpg123.hash index bf81f2a18c5..ae261d00cb9 100644 --- a/package/mpg123/mpg123.hash +++ b/package/mpg123/mpg123.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/mpg123/files/mpg123/1.22.2/ -md5 6f6d2178c354f39207bf97e062936110 mpg123-1.22.2.tar.bz2 -sha1 9125b4eabf6327c71a439e07e16eb39b712085e2 mpg123-1.22.2.tar.bz2 +# From http://sourceforge.net/projects/mpg123/files/mpg123/1.22.4/ +md5 2dfafae3bbc532b4c8b04a77c6a6de89 mpg123-1.22.4.tar.bz2 +sha1 6ca59baceeebe361cc508214ba725a56d4fea743 mpg123-1.22.4.tar.bz2 diff --git a/package/mpg123/mpg123.mk b/package/mpg123/mpg123.mk index 171cbde0be0..f6bb29717cf 100644 --- a/package/mpg123/mpg123.mk +++ b/package/mpg123/mpg123.mk @@ -4,7 +4,7 @@ # ################################################################################ -MPG123_VERSION = 1.22.2 +MPG123_VERSION = 1.22.4 MPG123_SOURCE = mpg123-$(MPG123_VERSION).tar.bz2 MPG123_SITE = http://downloads.sourceforge.net/project/mpg123/mpg123/$(MPG123_VERSION) MPG123_CONF_OPTS = --disable-lfs-alias @@ -67,6 +67,9 @@ ifeq ($(BR2_PACKAGE_ALSA_LIB),y) MPG123_AUDIO += alsa MPG123_CONF_OPTS += --with-default-audio=alsa MPG123_DEPENDENCIES += alsa-lib +# configure script does NOT use pkg-config to figure out how to link +# with alsa, breaking static linking as alsa uses pthreads +MPG123_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs alsa`" endif MPG123_CONF_OPTS += --with-audio=$(subst $(space),$(comma),$(MPG123_AUDIO)) diff --git a/package/mplayer/0001-disable-install-strip.patch b/package/mplayer/0001-disable-install-strip.patch index 644d292eb9c..1bd1dc00ae7 100644 --- a/package/mplayer/0001-disable-install-strip.patch +++ b/package/mplayer/0001-disable-install-strip.patch @@ -4,21 +4,20 @@ Using the -s option of install does not work, as it uses the host strip instead of the cross strip. So, get rid of it, and let Buildroot handle the stripping. +[Vincent: tweak patch for version 1.2] + Signed-off-by: Thomas Petazzoni ---- - configure | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) +Signed-off-by: Vicente Olivert Riera -Index: mplayer-32710/configure -=================================================================== ---- mplayer-32710.orig/configure -+++ mplayer-32710/configure -@@ -2519,7 +2519,7 @@ +diff -Nrua a/configure b/configure +--- a/configure 2015-10-02 21:29:04.000000000 +0100 ++++ b/configure 2015-10-06 13:28:37.245349592 +0100 +@@ -2780,7 +2780,7 @@ # Checking for CFLAGS -_install_strip="-s" +_install_strip= - if test "$_profile" != "" || test "$_debug" != "" ; then - CFLAGS="-O2 $_march $_mcpu $_pipe $_debug $_profile" - WARNFLAGS="-W -Wall" + if test -z "$CFLAGS" || test "$_profile" != "" || test "$_debug" != ""; then + if test "$cc_vendor" = "intel" ; then + CFLAGS="-O2 $_march $_mcpu $_pipe -fomit-frame-pointer" diff --git a/package/mplayer/0002-fix-cc-parsing.patch b/package/mplayer/0002-fix-cc-parsing.patch deleted file mode 100644 index a3ba03ff23e..00000000000 --- a/package/mplayer/0002-fix-cc-parsing.patch +++ /dev/null @@ -1,22 +0,0 @@ -[PATCH] mplayer: fix --cc= parsing if the value contains equal signs (=) - -E.G. if -cc="$CROSS-gcc --sysroot=" is passed. - -Signed-off-by: Peter Korsgaard ---- - configure | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: mplayer-32710/configure -=================================================================== ---- mplayer-32710.orig/configure -+++ mplayer-32710/configure -@@ -870,7 +870,7 @@ - _target=$(echo $ac_option | cut -d '=' -f 2) - ;; - --cc=*) -- _cc=$(echo $ac_option | cut -d '=' -f 2) -+ _cc=$(echo $ac_option | cut -d '=' -f 2-) - ;; - --host-cc=*) - _host_cc=$(echo $ac_option | cut -d '=' -f 2) diff --git a/package/mplayer/0003-mpdemux-live555-async-interface.patch b/package/mplayer/0002-mpdemux-live555-async-interface.patch similarity index 100% rename from package/mplayer/0003-mpdemux-live555-async-interface.patch rename to package/mplayer/0002-mpdemux-live555-async-interface.patch diff --git a/package/mplayer/0004-add-arc-support.patch b/package/mplayer/0004-add-arc-support.patch deleted file mode 100644 index c14ef2397fb..00000000000 --- a/package/mplayer/0004-add-arc-support.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- mplayer-1.1/configure 2013-12-03 00:32:10.815571460 -0800 -+++ mplayer-1.1-arc/configure 2013-11-29 00:34:29.238297709 -0800 -@@ -2492,6 +2492,10 @@ - generic) - arch='generic' - ;; -+ arc) -+ arch='arc' -+ iproc='arc' -+ ;; - - *) - echo "The architecture of your CPU ($host_arch) is not supported by this configure script" diff --git a/package/mplayer/0005-Support-newer-GIFLIB-versions.patch b/package/mplayer/0005-Support-newer-GIFLIB-versions.patch deleted file mode 100644 index a43948947ac..00000000000 --- a/package/mplayer/0005-Support-newer-GIFLIB-versions.patch +++ /dev/null @@ -1,268 +0,0 @@ -Support newer GIFLIB versions - -This is an adapted upstream patch. This patch is incomplete so a new -patch needs to be added after this one. - -Upstream commit: - - https://github.com/pigoz/mplayer-svn/commit/a0ddaef5457e222dade386901bf448c5e3ac7b89 - -Signed-off-by: Vicente Olivert Riera - -From a0ddaef5457e222dade386901bf448c5e3ac7b89 Mon Sep 17 00:00:00 2001 -From: al -Date: Sat, 27 Jul 2013 21:16:06 +0000 -Subject: [PATCH] Support newer GIFLIB versions - -Work with GIFLIB version >= 4.2 - -Several functions have been renamed or changed in signature. - -GIFLIB is used by vo gif89a and demuxer gif. - -Note about GIFLIB Version 4.2: -It does not work with vanilla GIFLIB 4.2 but it works with -versions that have re-added quantize support like e.g. the -package from arch linux. - -Note about GIFLIB Version 5: -The newly added GCB functions use size_t but the necessary -standard headers are not included in gif_lib.h . To workaround -this: - -* configure: use statement_check_broken to include stdlib.h -* vo gif89: include gif_lib.h after stdlib.h -* demuxer gif: no workaround needed, - gif_lib.h is already included after stdlib.h - - - -git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@36367 b3059339-0415-0410-9bf9-f77b7e298cf2 ---- - configure | 1 + - libmpdemux/demux_gif.c | 44 +++++++++++++++++++++++++++++++++++--------- - libvo/vo_gif89a.c | 35 ++++++++++++++++++++++++----------- - 3 files changed, 61 insertions(+), 21 deletions(-) - -diff --git a/configure b/configure -index e9152a8..4cd378d 100755 ---- a/configure -+++ b/configure -@@ -4938,6 +4938,7 @@ if test "$_gif" = auto ; then - _gif=no - for ld_gif in "-lungif" "-lgif" ; do - statement_check gif_lib.h 'QuantizeBuffer(0, 0, 0, 0, 0, 0, 0, 0)' $ld_gif && _gif=yes && break -+ statement_check_broken stdlib.h gif_lib.h 'GifQuantizeBuffer(0, 0, 0, 0, 0, 0, 0, 0)' $ld_gif && _gif=yes && break - done - fi - - -diff --git a/libmpdemux/demux_gif.c b/libmpdemux/demux_gif.c -index 804ce8c..0a11322 100644 ---- a/libmpdemux/demux_gif.c -+++ b/libmpdemux/demux_gif.c -@@ -45,6 +45,32 @@ typedef struct { - - #define GIF_SIGNATURE (('G' << 16) | ('I' << 8) | 'F') - -+#if defined GIFLIB_MAJOR && GIFLIB_MAJOR >= 5 -+#define DGifOpen(a, b) DGifOpen(a, b, NULL) -+#define DGifOpenFileHandle(a) DGifOpenFileHandle(a, NULL) -+#define GifError() (gif ? gif->Error : 0) -+#define GifErrorString() GifErrorString(gif->Error) -+#endif -+ -+/* >= 4.2 prior GIFLIB did not have MAJOR/MINOR defines */ -+#if defined GIFLIB_MAJOR && GIFLIB_MAJOR >= 4 -+static void print_gif_error(GifFileType *gif) -+{ -+ int err = GifError(); -+ char *err_str = GifErrorString(); -+ -+ if (err_str) -+ mp_msg(MSGT_DEMUX, MSGL_ERR, "\n[gif] GIF-LIB error: %s.\n", err_str); -+ else -+ mp_msg(MSGT_DEMUX, MSGL_ERR, "\n[gif] GIF-LIB undefined error %d.\n", err); -+} -+#else -+static void print_gif_error(GifFileType *gif) -+{ -+ PrintGifError(); -+} -+#endif -+ - #ifndef CONFIG_GIF_TVT_HACK - // not supported by certain versions of the library - static int my_read_gif(GifFileType *gif, uint8_t *buf, int len) -@@ -94,14 +120,14 @@ static int demux_gif_fill_buffer(demuxer_t *demuxer, demux_stream_t *ds) - - while (type != IMAGE_DESC_RECORD_TYPE) { - if (DGifGetRecordType(gif, &type) == GIF_ERROR) { -- PrintGifError(); -+ print_gif_error(priv->gif); - return 0; // oops - } - if (type == TERMINATE_RECORD_TYPE) - return 0; // eof - if (type == SCREEN_DESC_RECORD_TYPE) { - if (DGifGetScreenDesc(gif) == GIF_ERROR) { -- PrintGifError(); -+ print_gif_error(priv->gif); - return 0; // oops - } - } -@@ -109,7 +135,7 @@ static int demux_gif_fill_buffer(demuxer_t *demuxer, demux_stream_t *ds) - int code; - unsigned char *p = NULL; - if (DGifGetExtension(gif, &code, &p) == GIF_ERROR) { -- PrintGifError(); -+ print_gif_error(priv->gif); - return 0; // oops - } - if (code == 0xF9) { -@@ -138,7 +164,7 @@ static int demux_gif_fill_buffer(demuxer_t *demuxer, demux_stream_t *ds) - comments[length] = 0; - printf("%s", comments); - if (DGifGetExtensionNext(gif, &p) == GIF_ERROR) { -- PrintGifError(); -+ print_gif_error(priv->gif); - return 0; // oops - } - } -@@ -146,7 +172,7 @@ static int demux_gif_fill_buffer(demuxer_t *demuxer, demux_stream_t *ds) - } - while (p != NULL) { - if (DGifGetExtensionNext(gif, &p) == GIF_ERROR) { -- PrintGifError(); -+ print_gif_error(priv->gif); - return 0; // oops - } - } -@@ -154,7 +180,7 @@ static int demux_gif_fill_buffer(demuxer_t *demuxer, demux_stream_t *ds) - } - - if (DGifGetImageDesc(gif) == GIF_ERROR) { -- PrintGifError(); -+ print_gif_error(priv->gif); - return 0; // oops - } - -@@ -167,7 +193,7 @@ static int demux_gif_fill_buffer(demuxer_t *demuxer, demux_stream_t *ds) - memset(dp->buffer, gif->SBackGroundColor, priv->w * priv->h); - - if (DGifGetLine(gif, buf, len) == GIF_ERROR) { -- PrintGifError(); -+ print_gif_error(priv->gif); - free(buf); - free_demux_packet(dp); - return 0; // oops -@@ -261,7 +287,7 @@ static demuxer_t* demux_open_gif(demuxer_t* demuxer) - gif = DGifOpen(demuxer->stream, my_read_gif); - #endif - if (!gif) { -- PrintGifError(); -+ print_gif_error(NULL); - free(priv); - return NULL; - } -@@ -303,7 +329,7 @@ static void demux_close_gif(demuxer_t* demuxer) - gif_priv_t *priv = demuxer->priv; - if (!priv) return; - if (priv->gif && DGifCloseFile(priv->gif) == GIF_ERROR) -- PrintGifError(); -+ print_gif_error(priv->gif); - free(priv->refimg); - free(priv); - } -diff --git a/libvo/vo_gif89a.c b/libvo/vo_gif89a.c -index b808f81..160291a 100644 ---- a/libvo/vo_gif89a.c -+++ b/libvo/vo_gif89a.c -@@ -44,13 +44,13 @@ - * entire argument being interpretted as the filename. - */ - --#include -- - #include - #include - #include - #include - -+#include -+ - #include "config.h" - #include "subopt-helper.h" - #include "video_out.h" -@@ -69,6 +69,12 @@ static const vo_info_t info = { - - const LIBVO_EXTERN(gif89a) - -+#if defined GIFLIB_MAJOR && GIFLIB_MAJOR >= 5 -+#define EGifOpenFileName(a, b) EGifOpenFileName(a, b, NULL) -+#define MakeMapObject GifMakeMapObject -+#define FreeMapObject GifFreeMapObject -+#define QuantizeBuffer GifQuantizeBuffer -+#endif - - // how many frames per second we are aiming for during output. - static float target_fps; -@@ -156,7 +162,7 @@ static int config(uint32_t s_width, uint32_t s_height, uint32_t d_width, - uint32_t d_height, uint32_t flags, char *title, - uint32_t format) - { --#ifdef CONFIG_GIF_4 -+#if defined CONFIG_GIF_4 || GIFLIB_MAJOR >= 5 - // these are control blocks for the gif looping extension. - char LB1[] = "NETSCAPE2.0"; - char LB2[] = { 1, 0, 0 }; -@@ -185,23 +191,25 @@ static int config(uint32_t s_width, uint32_t s_height, uint32_t d_width, - return 1; - } - -+ new_gif = EGifOpenFileName(gif_filename, 0); -+ if (new_gif == NULL) { -+ mp_msg(MSGT_VO, MSGL_ERR, "GIF89a: error opening file \"%s\" for output.\n", gif_filename); -+ return 1; -+ } -+ -+#if defined GIFLIB_MAJOR && GIFLIB_MAJOR >= 5 -+ EGifSetGifVersion(new_gif, 1); -+#elif defined CONFIG_GIF_4 - // the EGifSetGifVersion line causes segfaults in certain - // earlier versions of libungif. i don't know exactly which, - // but certainly in all those before v4. if you have problems, - // you need to upgrade your gif library. --#ifdef CONFIG_GIF_4 - EGifSetGifVersion("89a"); - #else - mp_msg(MSGT_VO, MSGL_ERR, "GIF89a: Your version of libungif needs to be upgraded.\n"); - mp_msg(MSGT_VO, MSGL_ERR, "GIF89a: Some functionality has been disabled.\n"); - #endif - -- new_gif = EGifOpenFileName(gif_filename, 0); -- if (new_gif == NULL) { -- mp_msg(MSGT_VO, MSGL_ERR, "GIF89a: error opening file \"%s\" for output.\n", gif_filename); -- return 1; -- } -- - slice_data = malloc(img_width * img_height * 3); - if (slice_data == NULL) { - mp_msg(MSGT_VO, MSGL_ERR, "GIF89a: malloc failed.\n"); -@@ -231,7 +239,12 @@ static int config(uint32_t s_width, uint32_t s_height, uint32_t d_width, - - // set the initial width and height info. - EGifPutScreenDesc(new_gif, s_width, s_height, 256, 0, reduce_cmap); --#ifdef CONFIG_GIF_4 -+#if defined GIFLIB_MAJOR && GIFLIB_MAJOR >= 5 -+ EGifPutExtensionLeader(new_gif, 0xFF); -+ EGifPutExtensionBlock(new_gif, 11, LB1); -+ EGifPutExtensionBlock(new_gif, 3, LB2); -+ EGifPutExtensionTrailer(new_gif); -+#elif defined CONFIG_GIF_4 - // version 3 of libungif does not support multiple control blocks. - // looping requires multiple control blocks. - // therefore, looping is only enabled for v4 and up. --- -1.7.1 - diff --git a/package/mplayer/0006-Support-newer-GIFLIB-versions-part2.patch b/package/mplayer/0006-Support-newer-GIFLIB-versions-part2.patch deleted file mode 100644 index 271dce8b598..00000000000 --- a/package/mplayer/0006-Support-newer-GIFLIB-versions-part2.patch +++ /dev/null @@ -1,44 +0,0 @@ -Support newer GIFLIB versions - Part 2 - -Adding another patch to fix the problem with new versions of libgif. -This patch has been sent upstream: - - https://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2015-February/072848.html - -Signed-off-by: Vicente Olivert Riera - -Support newer GIFLIB versions - Part 2 - -This patch is necessary because the previous upstream patch is -incomplete. Without this one, MPlayer will fail to compile displaying -an error message like this one: - -libvo/vo_gif89a.c: In function 'uninit': -libvo/vo_gif89a.c:374:3: error: too few arguments to function 'EGifCloseFile' - EGifCloseFile(new_gif); // also frees gif storage space. - -Signed-off-by: Vicente Olivert Riera ---- - -diff -rup a/libmpdemux/demux_gif.c b/libmpdemux/demux_gif.c ---- a/libmpdemux/demux_gif.c 2015-02-13 15:39:56.582310414 +0000 -+++ b/libmpdemux/demux_gif.c 2015-02-13 15:48:06.396837922 +0000 -@@ -48,6 +48,7 @@ typedef struct { - #if defined GIFLIB_MAJOR && GIFLIB_MAJOR >= 5 - #define DGifOpen(a, b) DGifOpen(a, b, NULL) - #define DGifOpenFileHandle(a) DGifOpenFileHandle(a, NULL) -+#define DGifCloseFile(a) DGifCloseFile(a, NULL) - #define GifError() (gif ? gif->Error : 0) - #define GifErrorString() GifErrorString(gif->Error) - #endif -diff -rup a/libvo/vo_gif89a.c b/libvo/vo_gif89a.c ---- a/libvo/vo_gif89a.c 2015-02-13 15:39:56.631311186 +0000 -+++ b/libvo/vo_gif89a.c 2015-02-13 15:45:25.392168294 +0000 -@@ -71,6 +71,7 @@ const LIBVO_EXTERN(gif89a) - - #if defined GIFLIB_MAJOR && GIFLIB_MAJOR >= 5 - #define EGifOpenFileName(a, b) EGifOpenFileName(a, b, NULL) -+#define EGifCloseFile(a) EGifCloseFile(a, NULL) - #define MakeMapObject GifMakeMapObject - #define FreeMapObject GifFreeMapObject - #define QuantizeBuffer GifQuantizeBuffer diff --git a/package/mplayer/Config.in b/package/mplayer/Config.in index 79ff3b1cea7..686b3b01439 100644 --- a/package/mplayer/Config.in +++ b/package/mplayer/Config.in @@ -3,19 +3,24 @@ config BR2_PACKAGE_MPLAYER_ARCH_SUPPORTS default y # Those architectures are not supported by MPlayer depends on !(BR2_bfin || BR2_sh2a || BR2_sh4a || BR2_sh4aeb \ - || BR2_microblaze || BR2_aarch64 || BR2_nios2) + || BR2_microblaze || BR2_nios2) # Broken support for +Date: Fri, 11 Sep 2015 12:49:30 -0500 +Subject: [PATCH 1/1] DVMRP report missing subnet + +Accepted upstream and will be included in 3.9.8. +https://github.com/troglobit/mrouted/commit/512af5ffe0f48ffa2ba3b45898c66c2a561a5c2d + +A subnet is missing in the DVMRP report sent to it's neighbor after +the initial probe occurs. The issue was with the traversal of a double +linked list from end to start. Once the traversing pointer reaches +the start of routing table for loop (condition) it would break and +always drop the first subnet. + +Signed-off-by: Matt Weber +--- + route.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/route.c b/route.c +index f74e601..9fe779d 100644 +--- a/route.c ++++ b/route.c +@@ -1193,7 +1193,7 @@ static int report_chunk(int which_routes, struct rtentry *start_rt, vifi_t vifi, + + p = send_buf + MIN_IP_HEADER_LEN + IGMP_MINLEN; + +- for (r = start_rt; r != routing_table; r = r->rt_prev) { ++ for (r = start_rt; r != NULL; r = r->rt_prev) { + if (which_routes == CHANGED_ROUTES && !(r->rt_flags & RTF_CHANGED)) { + nrt++; + continue; +-- +1.9.1 + diff --git a/package/msgpack/Config.in b/package/msgpack/Config.in index a57a3784ec2..b8e82138fa1 100644 --- a/package/msgpack/Config.in +++ b/package/msgpack/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_MSGPACK bool "msgpack" depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 help MessagePack is an efficient binary serialization format. @@ -11,5 +11,5 @@ config BR2_PACKAGE_MSGPACK http://msgpack.org/ comment "msgpack needs a toolchain w/ C++" - depends on BR2_ARCH_HAS_ATOMICS depends on !BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_SYNC_4 diff --git a/package/msmtp/msmtp.hash b/package/msmtp/msmtp.hash index a522f9dd805..fb03e05a0df 100644 --- a/package/msmtp/msmtp.hash +++ b/package/msmtp/msmtp.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/msmtp/files/msmtp/1.6.1/ -md5 6ebba4809bbc665b8a665a018d1a5ee1 msmtp-1.6.1.tar.xz -sha1 ac70151bcb53af5e192cbb147fd2b8139c637089 msmtp-1.6.1.tar.xz +# From http://sourceforge.net/projects/msmtp/files/msmtp/1.6.2/ +md5 3baca93c7e5f1aa9d36a2e5b38739ab9 msmtp-1.6.2.tar.xz +sha1 2d2272d04851b9bc806a77f47344e61840185329 msmtp-1.6.2.tar.xz diff --git a/package/msmtp/msmtp.mk b/package/msmtp/msmtp.mk index aa75dd4883e..7c8261e704d 100644 --- a/package/msmtp/msmtp.mk +++ b/package/msmtp/msmtp.mk @@ -4,12 +4,13 @@ # ################################################################################ -MSMTP_VERSION = 1.6.1 +MSMTP_VERSION = 1.6.2 MSMTP_SITE = http://downloads.sourceforge.net/project/msmtp/msmtp/$(MSMTP_VERSION) MSMTP_SOURCE = msmtp-$(MSMTP_VERSION).tar.xz MSMTP_DEPENDENCIES = host-pkgconf MSMTP_CONF_OPTS = \ --without-libidn \ + --disable-gai-idn \ --without-libgsasl MSMTP_LICENSE = GPLv3+ MSMTP_LICENSE_FILES = COPYING diff --git a/package/mtd/Config.in b/package/mtd/Config.in index 6653464f16c..6e4346f2988 100644 --- a/package/mtd/Config.in +++ b/package/mtd/Config.in @@ -71,6 +71,9 @@ config BR2_PACKAGE_MTD_MTD_DEBUG bool "mtd_debug" default y +config BR2_PACKAGE_MTD_MTDPART + bool "mtdpart" + config BR2_PACKAGE_MTD_NANDDUMP bool "nanddump" default y diff --git a/package/mtd/mtd.mk b/package/mtd/mtd.mk index edf6e083ed6..adbf28d8f6d 100644 --- a/package/mtd/mtd.mk +++ b/package/mtd/mtd.mk @@ -17,15 +17,18 @@ MTD_DEPENDENCIES = zlib lzo endif ifeq ($(BR2_PACKAGE_MTD_MKFSUBIFS),y) -MTD_DEPENDENCIES += util-linux zlib lzo +MTD_DEPENDENCIES += util-linux zlib lzo host-pkgconf +define MTD_ADD_MISSING_LINTL + $(SED) "/^LDLIBS_mkfs\.ubifs/ s%$$% `$(PKG_CONFIG_HOST_BINARY) --libs uuid`%" \ + $(@D)/Makefile +endef +MTD_POST_PATCH_HOOKS += MTD_ADD_MISSING_LINTL endif ifeq ($(BR2_PACKAGE_BUSYBOX),y) MTD_DEPENDENCIES += busybox endif -MTD_MAKE_OPTS = WITHOUT_LARGEFILE=1 - # If extended attributes are required, the acl package must # also be enabled which will also include the attr package. ifeq ($(BR2_PACKAGE_ACL),y) @@ -65,6 +68,7 @@ MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_FORMAT) += ftl_format MTD_TARGETS_$(BR2_PACKAGE_MTD_JFFS2DUMP) += jffs2dump MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSJFFS2) += mkfs.jffs2 MTD_TARGETS_$(BR2_PACKAGE_MTD_MTD_DEBUG) += mtd_debug +MTD_TARGETS_$(BR2_PACKAGE_MTD_MTDPART) += mtdpart MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDDUMP) += nanddump MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDTEST) += nandtest MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDWRITE) += nandwrite diff --git a/package/mtdev2tuio/0001-Fix-build-with-musl-libc.patch b/package/mtdev2tuio/0001-Fix-build-with-musl-libc.patch new file mode 100644 index 00000000000..810b66c61bb --- /dev/null +++ b/package/mtdev2tuio/0001-Fix-build-with-musl-libc.patch @@ -0,0 +1,30 @@ +From f974bb1f92603973711bea36a7869dfa8358aae0 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 31 Jan 2016 09:04:46 +0100 +Subject: [PATCH 1/1] Fix build with musl libc + +Include missing header to prevent build error detected by buildroot: +http://autobuild.buildroot.net/results/aee/aee411047265bf205f8990a3d0d2310decb5fd19/build-end.log + +Signed-off-by: Bernd Kuhls +--- +Patch sent upstream: https://github.com/olivopaolo/mtdev2tuio/pull/2 + + mtdev2tuio.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/mtdev2tuio.c b/mtdev2tuio.c +index 3a9174f..f2c98d5 100644 +--- a/mtdev2tuio.c ++++ b/mtdev2tuio.c +@@ -41,6 +41,7 @@ + #include + #include + #include ++#include + + #define NSEC_PER_USEC 1000L + #define NSEC_PER_SEC 1000000000L +-- +2.7.0.rc3 + diff --git a/package/musepack/0003-include-fpu-control-with-glibc-only.patch b/package/musepack/0003-include-fpu-control-with-glibc-only.patch new file mode 100644 index 00000000000..6f50155781d --- /dev/null +++ b/package/musepack/0003-include-fpu-control-with-glibc-only.patch @@ -0,0 +1,26 @@ +Include only on glibc systems + +The header provides _FPU_*() macros, which the +Init_FPU() function uses only on i386, and only when they are +defined. Since is not available, this causes a build +failure with C libraries such as musl. By simply including + explicitly on glibc systems, we avoid the build +failure, since mpcenc.c already conditionally uses the +macros only if they are defined. + +Signed-off-by: Bernd Kuhls +[Thomas: better commit log.] +Signed-off-by: Thomas Petazzoni + +diff -uNr musepack_src_r475.org/mpcenc/mpcenc.h musepack_src_r475/mpcenc/mpcenc.h +--- musepack_src_r475.org/mpcenc/mpcenc.h 2009-02-23 19:15:46.000000000 +0100 ++++ musepack_src_r475/mpcenc/mpcenc.h 2016-01-30 09:29:08.000000000 +0100 +@@ -50,7 +51,7 @@ + # include + #endif + +-#if defined __linux__ ++#if defined __GLIBC__ + # include + #elif defined __FreeBSD__ + # include diff --git a/package/musepack/0004-missing-sys-select.patch b/package/musepack/0004-missing-sys-select.patch new file mode 100644 index 00000000000..1e3a4b11405 --- /dev/null +++ b/package/musepack/0004-missing-sys-select.patch @@ -0,0 +1,21 @@ +Add missing include + +This header is needed when types like fd_set are used. This fixes a +build issue occuring on the musl C library. + +Signed-off-by: Bernd Kuhls +[Thomas: better commit log.] +Signed-off-by: Thomas Petazzoni + +Index: b/mpcenc/mpcenc.h +=================================================================== +--- a/mpcenc/mpcenc.h ++++ b/mpcenc/mpcenc.h +@@ -34,6 +34,7 @@ + //// portable system includes ////////////////////////////////////// + #include + #include ++#include + + //// system dependent system includes ////////////////////////////// + // low level I/O, where are prototypes and constants? diff --git a/package/musl/0001-fix-uselocale.patch b/package/musl/0001-fix-uselocale.patch deleted file mode 100644 index 03a4c6ed342..00000000000 --- a/package/musl/0001-fix-uselocale.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 63f4b9f18f3674124d8bcb119739fec85e6da005 Mon Sep 17 00:00:00 2001 -From: Timo Teräs -Date: Fri, 05 Jun 2015 07:39:42 +0000 -Subject: fix uselocale((locale_t)0) not to modify locale - -commit 68630b55c0c7219fe9df70dc28ffbf9efc8021d8 made the new locale to -be assigned unconditonally resulting in crashes later on. - -Backported from: 63f4b9f18f3674124d8bcb119739fec85e6da005 - -Signed-off-by: Timo Teräs -Signed-off-by: Jörg Krause ---- -diff --git a/src/locale/uselocale.c b/src/locale/uselocale.c -index b70a0c1..0fc5ecb 100644 ---- a/src/locale/uselocale.c -+++ b/src/locale/uselocale.c -@@ -8,9 +8,7 @@ locale_t __uselocale(locale_t new) - locale_t old = self->locale; - locale_t global = &libc.global_locale; - -- if (new == LC_GLOBAL_LOCALE) new = global; -- -- self->locale = new; -+ if (new) self->locale = new == LC_GLOBAL_LOCALE ? global : new; - - return old == global ? LC_GLOBAL_LOCALE : old; - } --- -cgit v0.9.0.3-65-g4555 diff --git a/package/musl/Config.in b/package/musl/Config.in index 0aa353706cb..f1a3150745a 100644 --- a/package/musl/Config.in +++ b/package/musl/Config.in @@ -1,5 +1,6 @@ -# For legal-info config BR2_PACKAGE_MUSL bool depends on BR2_TOOLCHAIN_USES_MUSL default y + select BR2_PACKAGE_LINUX_HEADERS + select BR2_PACKAGE_NETBSD_QUEUE diff --git a/package/musl/musl.hash b/package/musl/musl.hash index 88415b08de6..b13659949ba 100644 --- a/package/musl/musl.hash +++ b/package/musl/musl.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 45bbe9b1c7f7a0f743477af1e103b6889bfe4dd9815e16f6c89f6c90831c8b7c musl-1.1.10.tar.gz +sha256 720b83c7e276b4b679c0bffe9509340d5f81fd601508e607e708177df0d31c0e musl-1.1.12.tar.gz diff --git a/package/musl/musl.mk b/package/musl/musl.mk index d8c0c6edd85..2cc6699a35b 100644 --- a/package/musl/musl.mk +++ b/package/musl/musl.mk @@ -4,7 +4,7 @@ # ################################################################################ -MUSL_VERSION = 1.1.10 +MUSL_VERSION = 1.1.12 MUSL_SITE = http://www.musl-libc.org/releases MUSL_LICENSE = MIT MUSL_LICENSE_FILES = COPYRIGHT @@ -13,6 +13,11 @@ MUSL_LICENSE_FILES = COPYRIGHT # cross-compiler and the kernel headers MUSL_DEPENDENCIES = host-gcc-initial linux-headers +# musl does not provide a sys/queue.h implementation, so add the +# netbsd-queue package that will install a sys/queue.h file in the +# staging directory based on the NetBSD implementation. +MUSL_DEPENDENCIES += netbsd-queue + # musl is part of the toolchain so disable the toolchain dependency MUSL_ADD_TOOLCHAIN_DEPENDENCY = NO @@ -28,7 +33,9 @@ define MUSL_CONFIGURE_CMDS --host=$(GNU_TARGET_NAME) \ --prefix=/usr \ --libdir=/lib \ - --disable-gcc-wrapper) + --disable-gcc-wrapper \ + --enable-static \ + $(if $(BR2_STATIC_LIBS),--disable-shared,--enable-shared)) endef define MUSL_BUILD_CMDS diff --git a/package/mutt/mutt.hash b/package/mutt/mutt.hash index 397f3da6b87..befed137689 100644 --- a/package/mutt/mutt.hash +++ b/package/mutt/mutt.hash @@ -1,2 +1,2 @@ -# Locally computed: -sha256 3af0701e57b9e1880ed3a0dee34498a228939e854a16cdccd24e5e502626fd37 mutt-1.5.23.tar.gz +# Locally calculated +sha256 a292ca765ed7b19db4ac495938a3ef808a16193b7d623d65562bb8feb2b42200 mutt-1.5.24.tar.gz diff --git a/package/mutt/mutt.mk b/package/mutt/mutt.mk index 92457a18710..14c5be95676 100644 --- a/package/mutt/mutt.mk +++ b/package/mutt/mutt.mk @@ -4,8 +4,8 @@ # ################################################################################ -MUTT_VERSION = 1.5.23 -MUTT_SITE = http://downloads.sourceforge.net/project/mutt/mutt +MUTT_VERSION = 1.5.24 +MUTT_SITE = https://bitbucket.org/mutt/mutt/downloads MUTT_LICENSE = GPLv2+ MUTT_LICENSE_FILES = GPL MUTT_DEPENDENCIES = ncurses @@ -17,6 +17,13 @@ MUTT_DEPENDENCIES += libiconv MUTT_CONF_OPTS += --enable-iconv endif +ifeq ($(BR2_PACKAGE_LIBIDN),y) +MUTT_DEPENDENCIES += libidn +MUTT_CONF_OPTS += --with-idn +else +MUTT_CONF_OPTS += --without-idn +endif + ifeq ($(BR2_PACKAGE_MUTT_IMAP),y) MUTT_CONF_OPTS += --enable-imap else diff --git a/package/mysql/0007-dont-install-in-mysql-directory.patch b/package/mysql/0007-dont-install-in-mysql-directory.patch new file mode 100644 index 00000000000..971b9ceeb51 --- /dev/null +++ b/package/mysql/0007-dont-install-in-mysql-directory.patch @@ -0,0 +1,182 @@ +Don't install in mysql directory + +Installing libraries in a subdirectory of /usr/lib leads to no end of +trouble. It requires either setting a RUN_PATH in the ELF files linked +with it or adding the path to ld.so.conf and calling ldconfig on the +target. + +So to simplify things, put everything in /usr/lib instead of +/usr/lib/mysql + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) + +diff -Nrup mysql-5.1.73.orig/dbug/Makefile.am mysql-5.1.73/dbug/Makefile.am +--- mysql-5.1.73.orig/dbug/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/dbug/Makefile.am 2015-12-14 00:34:58.567937603 +0100 +@@ -17,7 +17,7 @@ + + INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include + LDADD = libdbug.a ../mysys/libmysys.a ../strings/libmystrings.a +-pkglib_LIBRARIES = libdbug.a ++lib_LIBRARIES = libdbug.a + noinst_HEADERS = dbug_long.h + libdbug_a_SOURCES = dbug.c sanity.c + EXTRA_DIST = CMakeLists.txt example1.c example2.c example3.c \ +diff -Nrup mysql-5.1.73.orig/libmysql/Makefile.shared mysql-5.1.73/libmysql/Makefile.shared +--- mysql-5.1.73.orig/libmysql/Makefile.shared 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/libmysql/Makefile.shared 2015-12-14 00:34:58.567937603 +0100 +@@ -25,7 +25,7 @@ MYSQLBASEdir= $(prefix) + ## We'll use CLIENT_EXTRA_LDFLAGS for threaded and non-threaded + ## until someone complains that they need separate options. + LDADD = @CLIENT_EXTRA_LDFLAGS@ $(target) +-pkglib_LTLIBRARIES = $(target) ++lib_LTLIBRARIES = $(target) + + noinst_PROGRAMS = conf_to_src + +diff -Nrup mysql-5.1.73.orig/libmysqld/Makefile.am mysql-5.1.73/libmysqld/Makefile.am +--- mysql-5.1.73.orig/libmysqld/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/libmysqld/Makefile.am 2015-12-14 00:34:58.567937603 +0100 +@@ -38,7 +38,7 @@ INCLUDES= -I$(top_builddir)/include -I$ + @condition_dependent_plugin_includes@ + + noinst_LIBRARIES = libmysqld_int.a +-pkglib_LIBRARIES = libmysqld.a ++lib_LIBRARIES = libmysqld.a + SUBDIRS = . examples + libmysqld_sources= libmysqld.c lib_sql.cc emb_qcache.cc + libmysqlsources = errmsg.c get_password.c libmysql.c client.c pack.c \ +diff -Nrup mysql-5.1.73.orig/mysys/Makefile.am mysql-5.1.73/mysys/Makefile.am +--- mysql-5.1.73.orig/mysys/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/mysys/Makefile.am 2015-12-14 00:34:58.567937603 +0100 +@@ -18,7 +18,7 @@ MYSQLSHAREdir = $(pkgdatadir) + MYSQLBASEdir= $(prefix) + INCLUDES = @ZLIB_INCLUDES@ -I$(top_builddir)/include \ + -I$(top_srcdir)/include -I$(srcdir) +-pkglib_LIBRARIES = libmysys.a ++lib_LIBRARIES = libmysys.a + LDADD = libmysys.a $(top_builddir)/strings/libmystrings.a $(top_builddir)/dbug/libdbug.a + noinst_HEADERS = mysys_priv.h my_static.h my_handler_errors.h + libmysys_a_SOURCES = my_init.c my_getwd.c mf_getdate.c my_mmap.c \ +diff -Nrup mysql-5.1.73.orig/storage/csv/Makefile.am mysql-5.1.73/storage/csv/Makefile.am +--- mysql-5.1.73.orig/storage/csv/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/storage/csv/Makefile.am 2015-12-14 00:34:58.563937596 +0100 +@@ -30,7 +30,7 @@ DEFS = @DEFS@ + noinst_HEADERS = ha_tina.h transparent_file.h + + EXTRA_LTLIBRARIES = ha_csv.la +-pkglib_LTLIBRARIES = @plugin_csv_shared_target@ ++lib_LTLIBRARIES = @plugin_csv_shared_target@ + ha_csv_la_LDFLAGS = -module -rpath $(MYSQLLIBdir) + ha_csv_la_CXXFLAGS = $(AM_CXXFLAGS) -DMYSQL_PLUGIN + ha_csv_la_SOURCES = transparent_file.cc ha_tina.cc +diff -Nrup mysql-5.1.73.orig/storage/heap/Makefile.am mysql-5.1.73/storage/heap/Makefile.am +--- mysql-5.1.73.orig/storage/heap/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/storage/heap/Makefile.am 2015-12-14 00:34:58.563937596 +0100 +@@ -26,7 +26,7 @@ WRAPLIBS= + LDADD = + + DEFS = @DEFS@ +-pkglib_LIBRARIES = libheap.a ++lib_LIBRARIES = libheap.a + noinst_PROGRAMS = hp_test1 hp_test2 + noinst_LIBRARIES = libheap.a + hp_test1_LDFLAGS = @NOINST_LDFLAGS@ +diff -Nrup mysql-5.1.73.orig/storage/myisam/Makefile.am mysql-5.1.73/storage/myisam/Makefile.am +--- mysql-5.1.73.orig/storage/myisam/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/storage/myisam/Makefile.am 2015-12-14 00:34:58.563937596 +0100 +@@ -30,7 +30,7 @@ DEFS = @DEFS@ + EXTRA_DIST = mi_test_all.sh mi_test_all.res ft_stem.c CMakeLists.txt plug.in + pkgdata_DATA = mi_test_all mi_test_all.res + +-pkglib_LIBRARIES = libmyisam.a ++lib_LIBRARIES = libmyisam.a + bin_PROGRAMS = myisamchk myisamlog myisampack myisam_ftdump + myisamchk_DEPENDENCIES= $(LIBRARIES) + myisamchk_LDADD= @CLIENT_EXTRA_LDFLAGS@ libmyisam.a \ +diff -Nrup mysql-5.1.73.orig/storage/myisammrg/Makefile.am mysql-5.1.73/storage/myisammrg/Makefile.am +--- mysql-5.1.73.orig/storage/myisammrg/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/storage/myisammrg/Makefile.am 2015-12-14 00:34:58.563937596 +0100 +@@ -26,7 +26,7 @@ WRAPLIBS= + LDADD = + + DEFS = @DEFS@ +-pkglib_LIBRARIES = libmyisammrg.a ++lib_LIBRARIES = libmyisammrg.a + noinst_HEADERS = myrg_def.h ha_myisammrg.h + noinst_LIBRARIES = libmyisammrg.a + libmyisammrg_a_SOURCES = myrg_open.c myrg_extra.c myrg_info.c myrg_locking.c \ +diff -Nrup mysql-5.1.73.orig/strings/Makefile.am mysql-5.1.73/strings/Makefile.am +--- mysql-5.1.73.orig/strings/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/strings/Makefile.am 2015-12-14 00:34:58.567937603 +0100 +@@ -16,7 +16,7 @@ + # This file is public domain and comes with NO WARRANTY of any kind + + INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include +-pkglib_LIBRARIES = libmystrings.a ++lib_LIBRARIES = libmystrings.a + + # Exact one of ASSEMBLER_X + if ASSEMBLER_x86 +@@ -69,15 +69,15 @@ conf_to_src_LDFLAGS= @NOINST_LDFLAGS@ + + FLAGS=$(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) @NOINST_LDFLAGS@ + +-str_test: str_test.c $(pkglib_LIBRARIES) +- $(LINK) $(FLAGS) -DMAIN $(INCLUDES) $(srcdir)/str_test.c $(LDADD) $(pkglib_LIBRARIES) ++str_test: str_test.c $(lib_LIBRARIES) ++ $(LINK) $(FLAGS) -DMAIN $(INCLUDES) $(srcdir)/str_test.c $(LDADD) $(lib_LIBRARIES) + + uctypedump: uctypedump.c + $(LINK) $(INCLUDES) $(srcdir)/uctypedump.c + +-test_decimal$(EXEEXT): decimal.c $(pkglib_LIBRARIES) ++test_decimal$(EXEEXT): decimal.c $(lib_LIBRARIES) + $(CP) $(srcdir)/decimal.c ./test_decimal.c +- $(LINK) $(FLAGS) -DMAIN ./test_decimal.c $(LDADD) $(pkglib_LIBRARIES) ++ $(LINK) $(FLAGS) -DMAIN ./test_decimal.c $(LDADD) $(lib_LIBRARIES) + $(RM) -f ./test_decimal.c + + # Don't update the files from bitkeeper +diff -Nrup mysql-5.1.73.orig/tests/Makefile.am mysql-5.1.73/tests/Makefile.am +--- mysql-5.1.73.orig/tests/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/tests/Makefile.am 2015-12-14 00:34:58.567937603 +0100 +@@ -51,11 +51,11 @@ mysql_client_test.o: mysql_client_fw.c + + insert_test_SOURCES= insert_test.c + select_test_SOURCES= select_test.c +-insert_test_DEPENDENCIES= $(LIBRARIES) $(pkglib_LTLIBRARIES) +-select_test_DEPENDENCIES= $(LIBRARIES) $(pkglib_LTLIBRARIES) ++insert_test_DEPENDENCIES= $(LIBRARIES) $(lib_LTLIBRARIES) ++select_test_DEPENDENCIES= $(LIBRARIES) $(lib_LTLIBRARIES) + + bug25714_SOURCES= bug25714.c +-bug25714_DEPENDENCIES= $(LIBRARIES) $(pkglib_LTLIBRARIES) ++bug25714_DEPENDENCIES= $(LIBRARIES) $(lib_LTLIBRARIES) + + # Fix for mit-threads + DEFS = -DMYSQL_CLIENT_NO_THREADS +diff -Nrup mysql-5.1.73.orig/vio/Makefile.am mysql-5.1.73/vio/Makefile.am +--- mysql-5.1.73.orig/vio/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/vio/Makefile.am 2015-12-14 00:34:58.567937603 +0100 +@@ -16,7 +16,7 @@ + INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include \ + $(openssl_includes) + LDADD = @CLIENT_EXTRA_LDFLAGS@ $(openssl_libs) $(yassl_libs) +-pkglib_LIBRARIES = libvio.a ++lib_LIBRARIES = libvio.a + + noinst_HEADERS = vio_priv.h + +diff -Nrup mysql-5.1.73.orig/zlib/Makefile.am mysql-5.1.73/zlib/Makefile.am +--- mysql-5.1.73.orig/zlib/Makefile.am 2013-11-04 19:52:27.000000000 +0100 ++++ mysql-5.1.73/zlib/Makefile.am 2015-12-14 00:34:58.567937603 +0100 +@@ -19,7 +19,7 @@ INCLUDES= -I$(top_builddir)/include -I$ + + LIBS= $(NON_THREADED_LIBS) + +-pkglib_LTLIBRARIES = libz.la ++lib_LTLIBRARIES = libz.la + noinst_LTLIBRARIES = libzlt.la + + libz_la_LDFLAGS = -static diff --git a/package/mysql/S97mysqld b/package/mysql/S97mysqld index 6f25403b80c..1d87e68d963 100644 --- a/package/mysql/S97mysqld +++ b/package/mysql/S97mysqld @@ -7,16 +7,20 @@ case "$1" in mysql_install_db --user=mysql --ldata=/var/mysql fi + # mysqld runs as user mysql, but /run is only writable by root + # so create a subdirectory for mysql. + install -d -o mysql -g root -m 0700 /run/mysql + # We don't use start-stop-daemon because mysqld has # its own wrapper script. - echo -n "Starting mysql..." - /usr/bin/mysqld_safe --pid-file=/var/run/mysqld.pid & + printf "Starting mysql..." + /usr/bin/mysqld_safe --pid-file=/run/mysql/mysqld.pid & echo "done." ;; stop) - echo -n "Stopping mysql..." - if test -f /var/run/mysqld.pid ; then - kill `cat /var/run/mysqld.pid` + printf "Stopping mysql..." + if test -f /run/mysql/mysqld.pid ; then + kill `cat /run/mysql/mysqld.pid` fi echo "done." ;; diff --git a/package/mysql/mysql.mk b/package/mysql/mysql.mk index c6d9f3a3568..534bd97d25c 100644 --- a/package/mysql/mysql.mk +++ b/package/mysql/mysql.mk @@ -33,6 +33,29 @@ MYSQL_CONF_OPTS = \ --enable-thread-safe-client \ --disable-mysql-maintainer-mode +# host-mysql only installs what is needed to build mysql, i.e. the +# gen_lex_hash tool, and it only builds the parts that are needed to +# create this tool +HOST_MYSQL_DEPENDENCIES = host-zlib host-ncurses + +HOST_MYSQL_CONF_OPTS = \ + --with-embedded-server \ + --disable-mysql-maintainer-mode + +define HOST_MYSQL_BUILD_CMDS + $(MAKE) -C $(@D)/include my_config.h + $(MAKE) -C $(@D)/mysys libmysys.a + $(MAKE) -C $(@D)/strings libmystrings.a + $(MAKE) -C $(@D)/vio libvio.a + $(MAKE) -C $(@D)/dbug libdbug.a + $(MAKE) -C $(@D)/regex libregex.a + $(MAKE) -C $(@D)/sql gen_lex_hash +endef + +define HOST_MYSQL_INSTALL_CMDS + $(INSTALL) -m 0755 $(@D)/sql/gen_lex_hash $(HOST_DIR)/usr/bin/ +endef + ifeq ($(BR2_PACKAGE_OPENSSL),y) MYSQL_DEPENDENCIES += openssl endif @@ -43,11 +66,6 @@ endif ifeq ($(BR2_PACKAGE_MYSQL_SERVER),y) MYSQL_DEPENDENCIES += host-mysql host-bison -HOST_MYSQL_DEPENDENCIES = host-zlib host-ncurses - -HOST_MYSQL_CONF_OPTS = \ - --with-embedded-server \ - --disable-mysql-maintainer-mode MYSQL_CONF_OPTS += \ --localstatedir=/var/mysql \ @@ -74,20 +92,6 @@ else MYSQL_CONF_OPTS += --without-debug endif -define HOST_MYSQL_BUILD_CMDS - $(MAKE) -C $(@D)/include my_config.h - $(MAKE) -C $(@D)/mysys libmysys.a - $(MAKE) -C $(@D)/strings libmystrings.a - $(MAKE) -C $(@D)/vio libvio.a - $(MAKE) -C $(@D)/dbug libdbug.a - $(MAKE) -C $(@D)/regex libregex.a - $(MAKE) -C $(@D)/sql gen_lex_hash -endef - -define HOST_MYSQL_INSTALL_CMDS - $(INSTALL) -m 0755 $(@D)/sql/gen_lex_hash $(HOST_DIR)/usr/bin/ -endef - define MYSQL_USERS mysql -1 nogroup -1 * /var/mysql - - MySQL daemon endef @@ -121,12 +125,7 @@ define MYSQL_REMOVE_TEST_PROGS rm -rf $(TARGET_DIR)/usr/mysql-test $(TARGET_DIR)/usr/sql-bench endef -define MYSQL_ADD_MYSQL_LIB_PATH - echo "/usr/lib/mysql" >> $(TARGET_DIR)/etc/ld.so.conf -endef - MYSQL_POST_INSTALL_TARGET_HOOKS += MYSQL_REMOVE_TEST_PROGS -MYSQL_POST_INSTALL_TARGET_HOOKS += MYSQL_ADD_MYSQL_LIB_PATH $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/nano/nano.hash b/package/nano/nano.hash index 8ad14978f57..8b458470f80 100644 --- a/package/nano/nano.hash +++ b/package/nano/nano.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 c8cd7f18fcf5696d9df3364ee2a840e0ab7b6bdbd22abf850bbdc951db7f65b9 nano-2.4.2.tar.gz +sha256 e06fca01bf183f4d531aa65a28dffc0e2d10185239909eb3de797023f3453bde nano-2.5.1.tar.gz diff --git a/package/nano/nano.mk b/package/nano/nano.mk index 9b844905d22..0fa90093ded 100644 --- a/package/nano/nano.mk +++ b/package/nano/nano.mk @@ -4,7 +4,7 @@ # ################################################################################ -NANO_VERSION = 2.4.2 +NANO_VERSION = 2.5.1 NANO_SITE = $(BR2_GNU_MIRROR)/nano NANO_LICENSE = GPLv3+ NANO_LICENSE_FILES = COPYING diff --git a/package/nasm/nasm.hash b/package/nasm/nasm.hash index a92ba3cb8bd..c693f52223c 100644 --- a/package/nasm/nasm.hash +++ b/package/nasm/nasm.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 233c574f2c068c0256f9b3653220ceb247c72b671085595259529156c6cfa55d nasm-2.11.02.tar.xz +sha256 c99467c7072211c550d147640d8a1a0aa4d636d4d8cf849f3bf4317d900a1f7f nasm-2.11.08.tar.xz diff --git a/package/nasm/nasm.mk b/package/nasm/nasm.mk index b87d6ef5ca3..c70557fece2 100644 --- a/package/nasm/nasm.mk +++ b/package/nasm/nasm.mk @@ -4,7 +4,7 @@ # ################################################################################ -NASM_VERSION = 2.11.02 +NASM_VERSION = 2.11.08 NASM_SOURCE = nasm-$(NASM_VERSION).tar.xz NASM_SITE = http://www.nasm.us/pub/nasm/releasebuilds/$(NASM_VERSION) NASM_LICENSE = BSD-2c diff --git a/package/nbd/0001-avoid-name-clashing.patch b/package/nbd/0001-avoid-name-clashing.patch new file mode 100644 index 00000000000..b3ea9c99c59 --- /dev/null +++ b/package/nbd/0001-avoid-name-clashing.patch @@ -0,0 +1,28 @@ +rename err() function to avoid clashing with err() form C library + +err() is a function available in the C library, so when static linking, +there is a clash at link timebecause the function is provided both by +nbd and the C library: + http://autobuild.buildroot.org/results/aa8/aa8a1ac35a93e1c8b9fddbc2b5d66ecaa921f31e/build-end.log + +Fix that by renaming err() to nbd_err() and providing a small maco +wrapper to avoid touching the many call sites. + +Signed-off-by: "Yann E. MORIN" + +--- +Upstream status: hack, not submitted. + +diff -durN nbd-3.11.orig/cliserv.h nbd-3.11/cliserv.h +--- nbd-3.11.orig/cliserv.h 2015-05-25 12:27:56.000000000 +0200 ++++ nbd-3.11/cliserv.h 2015-08-13 19:28:21.609467505 +0200 +@@ -75,7 +75,8 @@ + void setmysockopt(int sock); + void err_nonfatal(const char *s); + +-void err(const char *s) G_GNUC_NORETURN; ++void nbd_err(const char *s) G_GNUC_NORETURN; ++#define err(S) nbd_err(S) + + void logging(const char* name); + diff --git a/package/nbd/nbd.hash b/package/nbd/nbd.hash index 306e11be716..c90682f4817 100644 --- a/package/nbd/nbd.hash +++ b/package/nbd/nbd.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/nbd/files/nbd/3.11/ -md5 73d11644a28b9f335292cdb3bdc4b74b nbd-3.11.tar.xz -sha1 a9823a656ef3411c7a14f3c1ae843d92a9141476 nbd-3.11.tar.xz +# From http://sourceforge.net/projects/nbd/files/nbd/3.13/ +md5 784be37497cc2f9a53c67c8c77d1676d nbd-3.13.tar.xz +sha1 e43674a2d2b42d20719cba3149748e8f5683e554 nbd-3.13.tar.xz diff --git a/package/nbd/nbd.mk b/package/nbd/nbd.mk index fee2cf815ab..d91c2d717e5 100644 --- a/package/nbd/nbd.mk +++ b/package/nbd/nbd.mk @@ -4,7 +4,7 @@ # ################################################################################ -NBD_VERSION = 3.11 +NBD_VERSION = 3.13 NBD_SOURCE = nbd-$(NBD_VERSION).tar.xz NBD_SITE = http://downloads.sourceforge.net/project/nbd/nbd/$(NBD_VERSION) NBD_CONF_OPTS = --enable-lfs diff --git a/package/neard/Config.in b/package/neard/Config.in index 353d1af8c5a..8571e7c9a20 100644 --- a/package/neard/Config.in +++ b/package/neard/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_NEARD depends on BR2_TOOLCHAIN_HAS_THREADS # libnl, dbus, libglib2 depends on BR2_USE_MMU # dbus, libglib2 depends on !BR2_STATIC_LIBS # dlopen + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_DBUS select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBNL @@ -26,4 +27,5 @@ endif comment "neard needs a toolchain w/ wchar, threads, dynamic library" depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/neard/S53neard b/package/neard/S53neard index 0a75941e275..f515668389a 100755 --- a/package/neard/S53neard +++ b/package/neard/S53neard @@ -11,12 +11,12 @@ DAEMON=/usr/libexec/nfc/$NAME case "$1" in start) - echo -n "Starting $NAME: " + printf "Starting $NAME: " start-stop-daemon -S -q -p /var/run/${NAME}.pid -x $DAEMON -- -d '*' echo "OK" ;; stop) - echo -n "Stopping $NAME: " + printf "Stopping $NAME: " start-stop-daemon -K -q -p /var/run/${NAME}.pid echo "OK" ;; diff --git a/package/net-tools/net-tools.mk b/package/net-tools/net-tools.mk index ab0dd7cb26a..184c50e9652 100644 --- a/package/net-tools/net-tools.mk +++ b/package/net-tools/net-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -NET_TOOLS_VERSION = 3eb367aedf1280f35105ede465c350a39b55fa91 +NET_TOOLS_VERSION = 3f170bff115303e92319791cbd56371e33dcbf6d NET_TOOLS_SITE = git://git.code.sf.net/p/net-tools/code NET_TOOLS_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) NET_TOOLS_LDFLAGS = $(TARGET_LDFLAGS) \ diff --git a/package/netatalk/Config.in b/package/netatalk/Config.in index cdb2039a407..ec6ec2c15db 100644 --- a/package/netatalk/Config.in +++ b/package/netatalk/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_NETATALK bool "netatalk" depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS select BR2_PACKAGE_BERKELEYDB select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_LIBEVENT @@ -13,6 +14,6 @@ config BR2_PACKAGE_NETATALK http://netatalk.sourceforge.net/ -comment "netatalk needs a toolchain w/ threads" +comment "netatalk needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/netatalk/netatalk.hash b/package/netatalk/netatalk.hash index e201ae6a076..955ffd40183 100644 --- a/package/netatalk/netatalk.hash +++ b/package/netatalk/netatalk.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/netatalk/files/netatalk/3.1.7/ -md5 831ec8bf9e084b64f965d16c528af299 netatalk-3.1.7.tar.bz2 -sha1 d4077a9496beae766ab1e4f28afa22e5c96514f0 netatalk-3.1.7.tar.bz2 +# From http://sourceforge.net/projects/netatalk/files/netatalk/3.1.8/ +md5 9cab934ca32b8979f389da52d44c69c2 netatalk-3.1.8.tar.bz2 +sha1 00518461a311e6c17c95738ac214c8f06f863b4b netatalk-3.1.8.tar.bz2 diff --git a/package/netatalk/netatalk.mk b/package/netatalk/netatalk.mk index a882b3cdc9a..dbe13a9404b 100644 --- a/package/netatalk/netatalk.mk +++ b/package/netatalk/netatalk.mk @@ -4,7 +4,7 @@ # ################################################################################ -NETATALK_VERSION = 3.1.7 +NETATALK_VERSION = 3.1.8 NETATALK_SITE = http://downloads.sourceforge.net/project/netatalk/netatalk/$(NETATALK_VERSION) NETATALK_SOURCE = netatalk-$(NETATALK_VERSION).tar.bz2 # For 0001-Fix-setting-of-LD_LIBRARY_FLAGS-shlibpath_var.patch diff --git a/package/netbsd-queue/Config.in b/package/netbsd-queue/Config.in new file mode 100644 index 00000000000..7837f4cd7fb --- /dev/null +++ b/package/netbsd-queue/Config.in @@ -0,0 +1,2 @@ +config BR2_PACKAGE_NETBSD_QUEUE + bool diff --git a/package/netbsd-queue/netbsd-queue.hash b/package/netbsd-queue/netbsd-queue.hash new file mode 100644 index 00000000000..f8e2a6c5987 --- /dev/null +++ b/package/netbsd-queue/netbsd-queue.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 c13407edd0e33be73cae72514cb234f8612e1c0e54401c9448daffd3a240158b queue.h?rev=1.70 diff --git a/package/netbsd-queue/netbsd-queue.mk b/package/netbsd-queue/netbsd-queue.mk new file mode 100644 index 00000000000..5fd926bba1b --- /dev/null +++ b/package/netbsd-queue/netbsd-queue.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# netbsd-queue +# +################################################################################ + +NETBSD_QUEUE_VERSION = 1.70 +NETBSD_QUEUE_SITE = http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/sys +NETBSD_QUEUE_SOURCE = queue.h?rev=$(NETBSD_QUEUE_VERSION) +NETBSD_QUEUE_LICENSE = BSD-3c + +NETBSD_QUEUE_ADD_TOOLCHAIN_DEPENDENCY = NO +NETBSD_QUEUE_INSTALL_STAGING = YES + +define NETBSD_QUEUE_EXTRACT_CMDS + cp $(DL_DIR)/$(NETBSD_QUEUE_SOURCE) $(@D)/queue.h +endef + +define NETBSD_QUEUE_INSTALL_STAGING_CMDS + $(INSTALL) -D -m 0644 $(@D)/queue.h \ + $(STAGING_DIR)/usr/include/sys/queue.h +endef + +$(eval $(generic-package)) diff --git a/package/netplug/S29netplug b/package/netplug/S29netplug index d95554e8953..88f933d5565 100755 --- a/package/netplug/S29netplug +++ b/package/netplug/S29netplug @@ -39,7 +39,7 @@ fi case "$1" in start) # Start daemon. - echo -n "Starting network plug daemon: " + printf "Starting network plug daemon: " start-stop-daemon -S -q -p /var/run/netplugd.pid -x /sbin/netplugd ${NETPLUGDARGS} RETVAL=$? echo @@ -47,7 +47,7 @@ case "$1" in ;; stop) # Stop daemon. - echo -n "Shutting down network plug daemon: " + printf "Shutting down network plug daemon: " start-stop-daemon -K -n netplugd RETVAL=$? echo diff --git a/package/netsniff-ng/Config.in b/package/netsniff-ng/Config.in new file mode 100644 index 00000000000..5d2f5dfebb9 --- /dev/null +++ b/package/netsniff-ng/Config.in @@ -0,0 +1,23 @@ +config BR2_PACKAGE_NETSNIFF_NG + bool "netsniff-ng" + select BR2_PACKAGE_LIBNL + select BR2_PACKAGE_LIBPCAP + select BR2_PACKAGE_LIBCLI + select BR2_PACKAGE_LIBNETFILTER_CONNTRACK + select BR2_PACKAGE_LIBURCU + select BR2_PACKAGE_LIBNET + # Build with uClibc fails due to missing ceill() + # Build with musl fails due to various header issues + depends on BR2_TOOLCHAIN_USES_GLIBC + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS + help + netsniff-ng is a free, performant Linux network analyzer and + networking toolkit. If you will, the Swiss army knife for + network packets. + +comment "netsniff-ng needs an (e)glibc toolchain w/ threads, headers >= 3.0" + depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_USES_GLIBC \ + || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 diff --git a/package/netsniff-ng/netsniff-ng.hash b/package/netsniff-ng/netsniff-ng.hash new file mode 100644 index 00000000000..b4b0500513d --- /dev/null +++ b/package/netsniff-ng/netsniff-ng.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 a76911f5a8ef0b92c42da568ceebc9e6559c02760f498785e22c8426b623d43f netsniff-ng-v0.6.0.tar.gz diff --git a/package/netsniff-ng/netsniff-ng.mk b/package/netsniff-ng/netsniff-ng.mk new file mode 100644 index 00000000000..eecceea6fbf --- /dev/null +++ b/package/netsniff-ng/netsniff-ng.mk @@ -0,0 +1,51 @@ +################################################################################ +# +# netsniff-ng +# +################################################################################ + +NETSNIFF_NG_VERSION = v0.6.0 +NETSNIFF_NG_SITE = $(call github,netsniff-ng,netsniff-ng,$(NETSNIFF_NG_VERSION)) +NETSNIFF_NG_LICENSE = GPLv2 +NETSNIFF_NG_LICENSE_FILES = README COPYING +# Prevent netsniff-ng configure script from finding a host installed nacl +NETSNIFF_NG_CONF_ENV = \ + NACL_INC_DIR=/dev/null \ + NACL_LIB_DIR=/dev/null +NETSNIFF_NG_DEPENDENCIES = \ + libnl libpcap libcli libnetfilter_conntrack \ + liburcu libnet + +ifeq ($(BR2_PACKAGE_GEOIP),y) +NETSNIFF_NG_DEPENDENCIES += geoip +endif + +ifeq ($(BR2_PACKAGE_NCURSES),y) +NETSNIFF_NG_DEPENDENCIES += ncurses +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +NETSNIFF_NG_DEPENDENCIES += zlib +endif + +# hand-written configure script and makefile +define NETSNIFF_NG_CONFIGURE_CMDS + (cd $(@D); \ + $(NETSNIFF_NG_CONF_ENV) \ + $(TARGET_CONFIGURE_ARGS) \ + $(TARGET_CONFIGURE_OPTS) \ + ./configure \ + --prefix=$(TARGET_DIR)/usr \ + ) +endef + +define NETSNIFF_NG_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) +endef + +define NETSNIFF_NG_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + PREFIX=$(TARGET_DIR)/usr ETCDIR=$(TARGET_DIR)/etc install -C $(@D) +endef + +$(eval $(generic-package)) diff --git a/package/netsnmp/S59snmpd b/package/netsnmp/S59snmpd index 868be26f2f9..4eea5122919 100755 --- a/package/netsnmp/S59snmpd +++ b/package/netsnmp/S59snmpd @@ -40,48 +40,48 @@ fi case "$1" in start) - echo -n "Starting network management services:" + printf "Starting network management services:" if [ "$SNMPDRUN" = "yes" -a -f /etc/snmp/snmpd.conf ]; then start-stop-daemon -q -S -x /usr/sbin/snmpd -- $SNMPDOPTS - echo -n " snmpd" + printf " snmpd" fi if [ "$TRAPDRUN" = "yes" -a -f /etc/snmp/snmptrapd.conf ]; then start-stop-daemon -q -S -x /usr/sbin/snmptrapd -- $TRAPDOPTS - echo -n " snmptrapd" + printf " snmptrapd" fi echo "." ;; stop) - echo -n "Stopping network management services:" + printf "Stopping network management services:" start-stop-daemon -q -K $ssd_oknodo -x /usr/sbin/snmpd - echo -n " snmpd" + printf " snmpd" start-stop-daemon -q -K $ssd_oknodo -x /usr/sbin/snmptrapd - echo -n " snmptrapd" + printf " snmptrapd" echo "." ;; restart) - echo -n "Restarting network management services:" + printf "Restarting network management services:" start-stop-daemon -q -K $ssd_oknodo -x /usr/sbin/snmpd start-stop-daemon -q -K $ssd_oknodo -x /usr/sbin/snmptrapd # Allow the daemons time to exit completely. sleep 2 if [ "$SNMPDRUN" = "yes" -a -f /etc/snmp/snmpd.conf ]; then start-stop-daemon -q -S -x /usr/sbin/snmpd -- $SNMPDOPTS - echo -n " snmpd" + printf " snmpd" fi if [ "$TRAPDRUN" = "yes" -a -f /etc/snmp/snmptrapd.conf ]; then # Allow snmpd time to start up. sleep 1 start-stop-daemon -q -S -x /usr/sbin/snmptrapd -- $TRAPDOPTS - echo -n " snmptrapd" + printf " snmptrapd" fi echo "." ;; reload|force-reload) - echo -n "Reloading network management services:" + printf "Reloading network management services:" if [ "$SNMPDRUN" = "yes" -a -f /etc/snmp/snmpd.conf ]; then start-stop-daemon -q -K -s 1 -p /var/run/snmpd.pid -x /usr/sbin/snmpd - echo -n " snmpd" + printf " snmpd" fi echo "." ;; diff --git a/package/netsnmp/netsnmp.mk b/package/netsnmp/netsnmp.mk index 6eff5e30163..0eb3b26711d 100644 --- a/package/netsnmp/netsnmp.mk +++ b/package/netsnmp/netsnmp.mk @@ -49,7 +49,9 @@ endif ifeq ($(BR2_PACKAGE_OPENSSL),y) NETSNMP_DEPENDENCIES += openssl NETSNMP_CONF_OPTS += \ - --with-openssl=$(STAGING_DIR)/usr/include/openssl + --with-openssl=$(STAGING_DIR)/usr/include/openssl \ + --with-security-modules="tsm,usm" \ + --with-transports="DTLSUDP,TLSTCP" ifeq ($(BR2_STATIC_LIBS),y) # openssl uses zlib, so we need to explicitly link with it when static NETSNMP_CONF_ENV += LIBS=-lz @@ -60,6 +62,11 @@ else NETSNMP_CONF_OPTS += --without-openssl endif +# There's no option to forcibly enable or disable it +ifeq ($(BR2_PACKAGE_PCIUTILS),y) +NETSNMP_DEPENDENCIES += pciutils +endif + ifneq ($(BR2_PACKAGE_NETSNMP_ENABLE_MIBS),y) NETSNMP_CONF_OPTS += --disable-mib-loading NETSNMP_CONF_OPTS += --disable-mibs diff --git a/package/nettle/0002-disable-testsuite-examples.patch b/package/nettle/0001-disable-testsuite-examples.patch similarity index 100% rename from package/nettle/0002-disable-testsuite-examples.patch rename to package/nettle/0001-disable-testsuite-examples.patch diff --git a/package/nettle/0001-fix-shared-only-build.patch b/package/nettle/0001-fix-shared-only-build.patch deleted file mode 100644 index 3c9b186fb93..00000000000 --- a/package/nettle/0001-fix-shared-only-build.patch +++ /dev/null @@ -1,75 +0,0 @@ -static/shared: use available libraries when linking our tools/examples/testsuite - -For a shared-only build, static libraries do not exist, so the build fails as -soon as we try to link either of our tools, examples or testsuite utils. - -Use whatever libraries are available, with a preference toward using shared -libraries. - -Signed-off-by: "Yann E. MORIN" - -diff -durN nettle-2.7.1.orig/config.make.in nettle-2.7.1/config.make.in ---- nettle-2.7.1.orig/config.make.in 2013-05-28 16:21:53.000000000 +0200 -+++ nettle-2.7.1/config.make.in 2014-12-12 19:56:07.031292752 +0100 -@@ -30,6 +30,8 @@ - PACKAGE_VERSION = @PACKAGE_VERSION@ - - SHLIBCFLAGS = @SHLIBCFLAGS@ -+@IF_STATIC@LIBS_EXT = .a -+@IF_SHARED@LIBS_EXT = .so - - LIBNETTLE_MAJOR = @LIBNETTLE_MAJOR@ - LIBNETTLE_MINOR = @LIBNETTLE_MINOR@ -diff -durN nettle-2.7.1.orig/tools/Makefile.in nettle-2.7.1/tools/Makefile.in ---- nettle-2.7.1.orig/tools/Makefile.in 2013-05-28 16:21:54.000000000 +0200 -+++ nettle-2.7.1/tools/Makefile.in 2014-12-12 19:57:12.499805574 +0100 -@@ -34,19 +34,19 @@ - DISTFILES = $(SOURCES) Makefile.in input.h misc.h output.h parse.h - - sexp_conv_OBJS = $(sexp_conv_SOURCES:.c=.$(OBJEXT)) $(getopt_OBJS) --sexp-conv$(EXEEXT): $(sexp_conv_OBJS) ../libnettle.a -+sexp-conv$(EXEEXT): $(sexp_conv_OBJS) ../libnettle$(LIBS_EXT) - $(LINK) $(sexp_conv_OBJS) -lnettle $(LIBS) -o $@ - --nettle-lfib-stream$(EXEEXT): nettle-lfib-stream.$(OBJEXT) ../libnettle.a -+nettle-lfib-stream$(EXEEXT): nettle-lfib-stream.$(OBJEXT) ../libnettle$(LIBS_EXT) - $(LINK) nettle-lfib-stream.$(OBJEXT) -lnettle $(LIBS) -o $@ - - pkcs1_conv_OBJS = $(pkcs1_conv_SOURCES:.c=.$(OBJEXT)) $(getopt_OBJS) --pkcs1-conv$(EXEEXT): $(pkcs1_conv_OBJS) ../libnettle.a ../libhogweed.a -+pkcs1-conv$(EXEEXT): $(pkcs1_conv_OBJS) ../libnettle$(LIBS_EXT) ../libhogweed$(LIBS_EXT) - $(LINK) $(pkcs1_conv_OBJS) -lhogweed -lnettle $(LIBS) -o $@ - - # FIXME: Avoid linking with gmp - nettle_hash_OBJS = $(nettle_hash_SOURCES:.c=.$(OBJEXT)) $(getopt_OBJS) --nettle-hash$(EXEEXT): $(nettle_hash_OBJS) ../libnettle.a -+nettle-hash$(EXEEXT): $(nettle_hash_OBJS) ../libnettle$(LIBS_EXT) - $(LINK) $(nettle_hash_OBJS) -lnettle $(LIBS) -o $@ - - -diff -durN nettle-2.7.1.orig/examples/Makefile.in nettle-2.7.1/examples/Makefile.in ---- nettle-2.7.1.orig/examples/Makefile.in 2013-05-28 16:21:54.000000000 +0200 -+++ nettle-2.7.1/examples/Makefile.in 2014-12-12 21:54:48.286251022 +0100 -@@ -117,8 +117,8 @@ - -lhogweed -lnettle $(BENCH_LIBS) $(LIBS) $(OPENSSL_LIBFLAGS) \ - -o hogweed-benchmark$(EXEEXT) - --$(TARGETS) : io.$(OBJEXT) ../libnettle.a --$(HOGWEED_TARGETS): ../libhogweed.a -+$(TARGETS) : io.$(OBJEXT) ../libnettle$(LIBS_EXT) -+$(HOGWEED_TARGETS): ../libhogweed$(LIBS_EXT) - - check: $(TS_ALL) - LD_LIBRARY_PATH=../.lib PATH="../.lib:$$PATH" srcdir="$(srcdir)" \ -diff -durN nettle-2.7.1.orig/testsuite/Makefile.in nettle-2.7.1/testsuite/Makefile.in ---- nettle-2.7.1.orig/testsuite/Makefile.in 2013-05-28 16:21:54.000000000 +0200 -+++ nettle-2.7.1/testsuite/Makefile.in 2014-12-12 21:55:30.414814549 +0100 -@@ -96,7 +96,7 @@ - include $(srcdir)/.test-rules.make - - $(TARGETS) $(EXTRA_TARGETS): testutils.$(OBJEXT) ../nettle-internal.$(OBJEXT) \ -- ../libnettle.a @IF_HOGWEED@ ../libhogweed.a -+ ../libnettle$(LIBS_EXT) @IF_HOGWEED@ ../libhogweed$(LIBS_EXT) - - # For use as, e.g., - # diff --git a/package/nettle/nettle.hash b/package/nettle/nettle.hash index 34c38627b6c..6332e13a633 100644 --- a/package/nettle/nettle.hash +++ b/package/nettle/nettle.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 bc71ebd43435537d767799e414fce88e521b7278d48c860651216e1fc6555b40 nettle-2.7.1.tar.gz +sha256 ea4283def236413edab5a4cf9cf32adf540c8df1b9b67641cfc2302fca849d97 nettle-3.2.tar.gz diff --git a/package/nettle/nettle.mk b/package/nettle/nettle.mk index a25bb24322f..c133839e521 100644 --- a/package/nettle/nettle.mk +++ b/package/nettle/nettle.mk @@ -4,12 +4,12 @@ # ################################################################################ -NETTLE_VERSION = 2.7.1 +NETTLE_VERSION = 3.2 NETTLE_SITE = http://www.lysator.liu.se/~nisse/archive NETTLE_DEPENDENCIES = gmp NETTLE_INSTALL_STAGING = YES -NETTLE_LICENSE = LGPLv2.1+ -NETTLE_LICENSE_FILES = COPYING.LIB +NETTLE_LICENSE = Dual GPLv2+/LGPLv3+ +NETTLE_LICENSE_FILES = COPYING.LESSERv3 COPYINGv2 # don't include openssl support for (unused) examples as it has problems # with static linking NETTLE_CONF_OPTS = --disable-openssl @@ -19,17 +19,10 @@ ifeq ($(BR2_ARM_CPU_ARMV4)$(BR2_ARM_CPU_ARMV5),y) NETTLE_CONF_OPTS += --disable-assembler endif -# ARM NEON, requires binutils 2.21+ -ifeq ($(BR2_ARM_CPU_HAS_NEON)$(BR2_TOOLCHAIN_BUILDROOT)$(BR2_BINUTILS_VERSION_2_20_1),yy) +ifeq ($(BR2_ARM_CPU_HAS_NEON),y) NETTLE_CONF_OPTS += --enable-arm-neon else NETTLE_CONF_OPTS += --disable-arm-neon endif -define NETTLE_DITCH_DEBUGGING_CFLAGS - $(SED) '/CFLAGS/ s/ -ggdb3//' $(@D)/configure -endef - -NETTLE_POST_EXTRACT_HOOKS += NETTLE_DITCH_DEBUGGING_CFLAGS - $(eval $(autotools-package)) diff --git a/package/network-manager/Config.in b/package/network-manager/Config.in index bcf8f906859..8b4607c7ce2 100644 --- a/package/network-manager/Config.in +++ b/package/network-manager/Config.in @@ -11,6 +11,7 @@ config BR2_PACKAGE_NETWORK_MANAGER select BR2_PACKAGE_GNUTLS select BR2_PACKAGE_LIBGCRYPT select BR2_PACKAGE_LIBNL + select BR2_PACKAGE_LIBGUDEV select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID select BR2_PACKAGE_WIRELESS_TOOLS diff --git a/package/network-manager/S45network-manager b/package/network-manager/S45network-manager index 5f32398e6bc..f39e20d73b7 100755 --- a/package/network-manager/S45network-manager +++ b/package/network-manager/S45network-manager @@ -11,7 +11,7 @@ NETWORKMANAGER_BIN=${sbindir}/NetworkManager PID=`pidof NetworkManager` case "$1" in start) - echo -n "Starting NetworkManager ... " + printf "Starting NetworkManager ... " [ ! -d /var/run/NetworkManager ] && install -d /var/run/NetworkManager if [ -z "$PID" ]; then $NETWORKMANAGER_BIN @@ -23,7 +23,7 @@ case "$1" in fi ;; stop) - echo -n "Stopping NetworkManager ... " + printf "Stopping NetworkManager ... " [ ! -z "$PID" ] && kill $PID > /dev/null 2>&1 if [ $? -gt 0 ]; then echo "failed!" diff --git a/package/network-manager/network-manager.hash b/package/network-manager/network-manager.hash index c22fb9464f0..c259b5a039d 100644 --- a/package/network-manager/network-manager.hash +++ b/package/network-manager/network-manager.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/1.0/NetworkManager-1.0.4.sha256sum -sha256 e4099fa2f4f4b8d95d0ad9fdd03ec20960845085fa500bf79aecbf54cee018c9 NetworkManager-1.0.4.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/1.0/NetworkManager-1.0.10.sha256sum +sha256 1bcfce8441dfd9f432a100d06b54f3831a2275cccc3b74b1b4c09a011e179fbc NetworkManager-1.0.10.tar.xz diff --git a/package/network-manager/network-manager.mk b/package/network-manager/network-manager.mk index 25ad2a29cc3..b49f3b8405d 100644 --- a/package/network-manager/network-manager.mk +++ b/package/network-manager/network-manager.mk @@ -5,12 +5,12 @@ ################################################################################ NETWORK_MANAGER_VERSION_MAJOR = 1.0 -NETWORK_MANAGER_VERSION = $(NETWORK_MANAGER_VERSION_MAJOR).4 +NETWORK_MANAGER_VERSION = $(NETWORK_MANAGER_VERSION_MAJOR).10 NETWORK_MANAGER_SOURCE = NetworkManager-$(NETWORK_MANAGER_VERSION).tar.xz NETWORK_MANAGER_SITE = http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/$(NETWORK_MANAGER_VERSION_MAJOR) NETWORK_MANAGER_INSTALL_STAGING = YES NETWORK_MANAGER_DEPENDENCIES = host-pkgconf udev dbus-glib libnl gnutls \ - libgcrypt wireless_tools util-linux host-intltool readline libndp + libgcrypt wireless_tools util-linux host-intltool readline libndp libgudev NETWORK_MANAGER_LICENSE = GPLv2+ (app), LGPLv2+ (libnm-util) NETWORK_MANAGER_LICENSE_FILES = COPYING libnm-util/COPYING diff --git a/package/nfs-utils/0004-mountd-Add-check-for-struct-file_handle.patch b/package/nfs-utils/0004-mountd-Add-check-for-struct-file_handle.patch new file mode 100644 index 00000000000..7aca266977d --- /dev/null +++ b/package/nfs-utils/0004-mountd-Add-check-for-struct-file_handle.patch @@ -0,0 +1,46 @@ +From 3c23b3ea7f5069e8fd4d5758704cd968504f1079 Mon Sep 17 00:00:00 2001 +From: Maxime Hadjinlian +Date: Tue, 2 Feb 2016 10:07:22 +0100 +Subject: [PATCH] mountd: Add check for 'struct file_handle' + +The code to check if name_to_handle_at() is implemented generates only a +warning but with some toolchain it doesn't fail to link (the function must be +implemented somewhere). +However the "struct file_handle" type is not available. + +So, this patch adds a check for this struct. + +Signed-off-by: Maxime Hadjinlian +--- + configure.ac | 1 + + utils/mountd/cache.c | 2 +- + 2 files changed, 2 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 25d2ba4..913a86f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -425,6 +425,7 @@ AC_TYPE_PID_T + AC_TYPE_SIZE_T + AC_HEADER_TIME + AC_STRUCT_TM ++AC_CHECK_TYPES([struct file_handle]) + + dnl ************************************************************* + dnl Check for functions +diff --git a/utils/mountd/cache.c b/utils/mountd/cache.c +index 7847446..dc64f6d 100644 +--- a/utils/mountd/cache.c ++++ b/utils/mountd/cache.c +@@ -424,7 +424,7 @@ static int same_path(char *child, char *parent, int len) + if (count_slashes(p) != count_slashes(parent)) + return 0; + +-#if HAVE_NAME_TO_HANDLE_AT ++#if defined(HAVE_NAME_TO_HANDLE_AT) && defined(HAVE_STRUCT_FILE_HANDLE) + struct { + struct file_handle fh; + unsigned char handle[128]; +-- +2.7.0 + diff --git a/package/nfs-utils/0004-statd-Fix-test-for-foreground-mode.patch b/package/nfs-utils/0004-statd-Fix-test-for-foreground-mode.patch deleted file mode 100644 index a6138a3f2c2..00000000000 --- a/package/nfs-utils/0004-statd-Fix-test-for-foreground-mode.patch +++ /dev/null @@ -1,30 +0,0 @@ -From ca1fd7153937e147f66d1ca3edbe9c2615f33880 Mon Sep 17 00:00:00 2001 -From: Chris Mayo -Date: Sun, 1 Feb 2015 12:03:46 -0500 -Subject: [PATCH] statd: Fix test for foreground mode - -daemon_init parameter has the opposite sense -to code removed in commit 7addf9d - -Signed-off-by: Chris Mayo -Signed-off-by: Steve Dickson ---- - utils/statd/statd.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/utils/statd/statd.c b/utils/statd/statd.c -index 60ce6d1..2b7a167 100644 ---- a/utils/statd/statd.c -+++ b/utils/statd/statd.c -@@ -393,7 +393,7 @@ int main (int argc, char **argv) - simulator (--argc, ++argv); /* simulator() does exit() */ - #endif - -- daemon_init(!(run_mode & MODE_NODAEMON)); -+ daemon_init((run_mode & MODE_NODAEMON)); - - if (run_mode & MODE_LOG_STDERR) { - xlog_syslog(0); --- -2.4.5 - diff --git a/package/nfs-utils/S60nfs b/package/nfs-utils/S60nfs index e163d8069cc..5639b8f7e2e 100755 --- a/package/nfs-utils/S60nfs +++ b/package/nfs-utils/S60nfs @@ -13,22 +13,30 @@ mkdir -p /run/nfs/sm mkdir -p /run/nfs/sm.bak touch /run/nfs/rmtab +CFG_FILE=/etc/default/nfsd + +NR_THREADS=2 +if [ -f "${CFG_FILE}" ]; then + . "${CFG_FILE}" +fi + + start() { # Start daemons. - echo -n "Starting NFS statd: " + printf "Starting NFS statd: " rpc.statd touch /var/lock/subsys/nfslock echo "done" - echo -n "Starting NFS services: " + printf "Starting NFS services: " /usr/sbin/exportfs -r echo "done" - echo -n "Starting NFS daemon: " - rpc.nfsd 2 + printf "Starting NFS daemon: " + rpc.nfsd ${NR_THREADS} echo "done" - echo -n "Starting NFS mountd: " + printf "Starting NFS mountd: " rpc.mountd echo "done" touch /var/lock/subsys/nfs @@ -36,21 +44,21 @@ start() { stop() { # Stop daemons. - echo -n "Shutting down NFS mountd: " + printf "Shutting down NFS mountd: " killall -q rpc.mountd echo "done" - echo "Shutting down NFS daemon: " + printf "Shutting down NFS daemon: " kill -9 `pidof nfsd` 2>/dev/null echo "done" - echo -n "Shutting down NFS services: " + printf "Shutting down NFS services: " /usr/sbin/exportfs -au rm -f /var/lock/subsys/nfs killall -q rpc.statd echo "done" - echo -n "Stopping NFS statd: " + printf "Stopping NFS statd: " killall -q rpc.statd echo "done" rm -f /var/lock/subsys/nfslock diff --git a/package/nfs-utils/nfs-utils.hash b/package/nfs-utils/nfs-utils.hash index a4959ee58c8..2bd5121186e 100644 --- a/package/nfs-utils/nfs-utils.hash +++ b/package/nfs-utils/nfs-utils.hash @@ -1,2 +1,2 @@ -# From https://www.kernel.org/pub/linux/utils/nfs-utils/1.3.2/sha256sums.asc -sha256 2966bb431c06e9ba35a54f48f89db03a5132bc2d8ed8084ac8ccb34e25a9b739 nfs-utils-1.3.2.tar.xz +# From https://www.kernel.org/pub/linux/utils/nfs-utils/1.3.3/sha256sums.asc +sha256 700d689c5622c87953c34102e5befafc4d3c811e676852238f0dd79c9c0c084d nfs-utils-1.3.3.tar.xz diff --git a/package/nfs-utils/nfs-utils.mk b/package/nfs-utils/nfs-utils.mk index 095d095ee15..179009dc5f0 100644 --- a/package/nfs-utils/nfs-utils.mk +++ b/package/nfs-utils/nfs-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -NFS_UTILS_VERSION = 1.3.2 +NFS_UTILS_VERSION = 1.3.3 NFS_UTILS_SOURCE = nfs-utils-$(NFS_UTILS_VERSION).tar.xz NFS_UTILS_SITE = https://www.kernel.org/pub/linux/utils/nfs-utils/$(NFS_UTILS_VERSION) NFS_UTILS_LICENSE = GPLv2+ @@ -28,6 +28,13 @@ NFS_UTILS_TARGETS_$(BR2_PACKAGE_NFS_UTILS_RPCDEBUG) += usr/sbin/rpcdebug NFS_UTILS_TARGETS_$(BR2_PACKAGE_NFS_UTILS_RPC_LOCKD) += usr/sbin/rpc.lockd NFS_UTILS_TARGETS_$(BR2_PACKAGE_NFS_UTILS_RPC_RQUOTAD) += usr/sbin/rpc.rquotad +ifeq ($(BR2_PACKAGE_LIBCAP),y) +NFS_UTILS_CONF_OPTS += --enable-caps +NFS_UTILS_DEPENDENCIES += libcap +else +NFS_UTILS_CONF_OPTS += --disable-caps +endif + ifeq ($(BR2_PACKAGE_LIBTIRPC),y) NFS_UTILS_CONF_OPTS += --enable-tirpc NFS_UTILS_DEPENDENCIES += libtirpc @@ -38,14 +45,43 @@ endif define NFS_UTILS_INSTALL_FIXUP rm -f $(NFS_UTILS_TARGETS_) touch $(TARGET_DIR)/etc/exports + $(INSTALL) -D -m 644 \ + $(@D)/utils/mount/nfsmount.conf $(TARGET_DIR)/etc/nfsmount.conf endef NFS_UTILS_POST_INSTALL_TARGET_HOOKS += NFS_UTILS_INSTALL_FIXUP +ifeq ($(BR2_INIT_SYSTEMD),y) +NFS_UTILS_CONF_OPTS += --with-systemd=/usr/lib/systemd/system +NFS_UTILS_DEPENDENCIES += systemd +else +NFS_UTILS_CONF_OPTS += --without-systemd +endif + define NFS_UTILS_INSTALL_INIT_SYSV $(INSTALL) -D -m 0755 package/nfs-utils/S60nfs \ $(TARGET_DIR)/etc/init.d/S60nfs endef +define NFS_UTILS_INSTALL_INIT_SYSTEMD + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + + ln -fs ../../../../usr/lib/systemd/system/nfs-server.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/nfs-server.service + ln -fs ../../../../usr/lib/systemd/system/nfs-client.target \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/nfs-client.target + + mkdir -p $(TARGET_DIR)/etc/systemd/system/remote-fs.target.wants + + ln -fs ../../../../usr/lib/systemd/system/nfs-client.target \ + $(TARGET_DIR)/etc/systemd/system/remote-fs.target.wants/nfs-client.target + + $(INSTALL) -D -m 0755 package/nfs-utils/nfs-utils_env.sh \ + $(TARGET_DIR)/usr/lib/systemd/scripts/nfs-utils_env.sh + + $(INSTALL) -D -m 0644 package/nfs-utils/nfs-utils_tmpfiles.conf \ + $(TARGET_DIR)/usr/lib/tmpfiles.d/nfs-utils.conf +endef + define NFS_UTILS_REMOVE_NFSIOSTAT rm -f $(TARGET_DIR)/usr/sbin/nfsiostat endef diff --git a/package/nfs-utils/nfs-utils_env.sh b/package/nfs-utils/nfs-utils_env.sh new file mode 100755 index 00000000000..82284cef933 --- /dev/null +++ b/package/nfs-utils/nfs-utils_env.sh @@ -0,0 +1,3 @@ +#!/bin/sh +# This script is empty, it simply needs to exist to make the +# nfs-config.service happy. diff --git a/package/nfs-utils/nfs-utils_tmpfiles.conf b/package/nfs-utils/nfs-utils_tmpfiles.conf new file mode 100644 index 00000000000..f87939fe2d5 --- /dev/null +++ b/package/nfs-utils/nfs-utils_tmpfiles.conf @@ -0,0 +1,4 @@ +d /run/nfs/sm 0700 root root - +d /run/nfs/sm.bak 0700 root root - +f /run/nfs/rmtab 0644 root root - +f /run/nfs/etab 0644 root root - diff --git a/package/nftables/nftables.hash b/package/nftables/nftables.hash index 0b53fc9493f..04ecf7d7b6a 100644 --- a/package/nftables/nftables.hash +++ b/package/nftables/nftables.hash @@ -1,2 +1,2 @@ -# From http://www.netfilter.org/projects/nftables/downloads.html#nftables-0.4 -sha1 c557c710510c59e4280d271e5b7232af7ba3fbb7 nftables-0.4.tar.bz2 +# From http://www.netfilter.org/projects/nftables/downloads.html#nftables-0.5 +sha1 34cfe1daa33d7fd7087dd63199f64854dfb54064 nftables-0.5.tar.bz2 diff --git a/package/nftables/nftables.mk b/package/nftables/nftables.mk index 35c56e8ed77..ccdbcd4b153 100644 --- a/package/nftables/nftables.mk +++ b/package/nftables/nftables.mk @@ -4,7 +4,7 @@ # ################################################################################ -NFTABLES_VERSION = 0.4 +NFTABLES_VERSION = 0.5 NFTABLES_SOURCE = nftables-$(NFTABLES_VERSION).tar.bz2 NFTABLES_SITE = http://www.netfilter.org/projects/nftables/files NFTABLES_DEPENDENCIES = gmp libmnl libnftnl host-bison host-flex \ diff --git a/package/nginx/S50nginx b/package/nginx/S50nginx index f555d937f98..b2f8b808550 100755 --- a/package/nginx/S50nginx +++ b/package/nginx/S50nginx @@ -12,7 +12,7 @@ case "$1" in start-stop-daemon -S -x /usr/sbin/nginx -p $PIDFILE ;; stop) - echo -n "Stopping nginx..." + printf "Stopping nginx..." start-stop-daemon -K -o -p $PIDFILE ;; restart|reload) diff --git a/package/nginx/nginx.hash b/package/nginx/nginx.hash index 7e0dc5e1fff..fe4d6b2f01f 100644 --- a/package/nginx/nginx.hash +++ b/package/nginx/nginx.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 23cca1239990c818d8f6da118320c4979aadf5386deda691b1b7c2c96b9df3d5 nginx-1.8.0.tar.gz +sha256 8f4b3c630966c044ec72715754334d1fdf741caa1d5795fb4646c27d09f797b7 nginx-1.8.1.tar.gz diff --git a/package/nginx/nginx.mk b/package/nginx/nginx.mk index 32a337c2de6..7348e485ef4 100644 --- a/package/nginx/nginx.mk +++ b/package/nginx/nginx.mk @@ -4,7 +4,7 @@ # ################################################################################ -NGINX_VERSION = 1.8.0 +NGINX_VERSION = 1.8.1 NGINX_SITE = http://nginx.org/download NGINX_LICENSE = BSD-2c NGINX_LICENSE_FILES = LICENSE @@ -19,7 +19,7 @@ NGINX_CONF_OPTS = \ # www-data user and group are used for nginx. Because these user and group # are already set by buildroot, it is not necessary to redefine them. -# See system/skeleton/passwd +# See system/skeleton/etc/passwd # username: www-data uid: 33 # groupname: www-data gid: 33 # diff --git a/package/nmap/nmap.hash b/package/nmap/nmap.hash index 8c8da007584..3e5a369c4f8 100644 --- a/package/nmap/nmap.hash +++ b/package/nmap/nmap.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 8fa11e9e203ce2d81a207db5ca4f110a525f6c01c1dd0018325a7112a51aa591 nmap-6.47.tar.bz2 +sha256 cf1fcd2643ba2ef52f47acb3c18e52fa12a4ae4b722804da0e54560704627705 nmap-7.01.tar.bz2 diff --git a/package/nmap/nmap.mk b/package/nmap/nmap.mk index 1a0e977d39b..184555b0046 100644 --- a/package/nmap/nmap.mk +++ b/package/nmap/nmap.mk @@ -4,7 +4,7 @@ # ################################################################################ -NMAP_VERSION = 6.47 +NMAP_VERSION = 7.01 NMAP_SITE = http://nmap.org/dist NMAP_SOURCE = nmap-$(NMAP_VERSION).tar.bz2 NMAP_DEPENDENCIES = libpcap pcre diff --git a/package/nodejs/0.10.40/0004-fix-build-error-without-OpenSSL-support.patch b/package/nodejs/0.10.40/0004-fix-build-error-without-OpenSSL-support.patch deleted file mode 100644 index 9d41516292c..00000000000 --- a/package/nodejs/0.10.40/0004-fix-build-error-without-OpenSSL-support.patch +++ /dev/null @@ -1,54 +0,0 @@ -From d9acdddb42aef48a9504368019beb1ad91c9a0c4 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Mon, 17 Nov 2014 12:34:05 +0100 -Subject: [PATCH 1/1] src/node.cc: fix build error without OpenSSL support -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Jörg Krause ---- - src/node.cc | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/src/node.cc b/src/node.cc -index 18c743f..cb77f08 100644 ---- a/src/node.cc -+++ b/src/node.cc -@@ -82,7 +82,6 @@ typedef int mode_t; - #include "node_script.h" - #include "v8_typed_array.h" - --#include "node_crypto.h" - #include "util.h" - - using namespace v8; -@@ -2544,8 +2543,10 @@ static void PrintHelp() { - " --trace-deprecation show stack traces on deprecations\n" - " --v8-options print v8 command line options\n" - " --max-stack-size=val set max v8 stack size (bytes)\n" -+#if HAVE_OPENSSL - " --enable-ssl2 enable ssl2\n" - " --enable-ssl3 enable ssl3\n" -+#endif - "\n" - "Environment variables:\n" - #ifdef _WIN32 -@@ -2579,12 +2580,14 @@ static void ParseArgs(int argc, char **argv) { - p = 1 + strchr(arg, '='); - max_stack_size = atoi(p); - argv[i] = const_cast(""); -+#if HAVE_OPENSSL - } else if (strcmp(arg, "--enable-ssl2") == 0) { - SSL2_ENABLE = true; - argv[i] = const_cast(""); - } else if (strcmp(arg, "--enable-ssl3") == 0) { - SSL3_ENABLE = true; - argv[i] = const_cast(""); -+#endif - } else if (strcmp(arg, "--help") == 0 || strcmp(arg, "-h") == 0) { - PrintHelp(); - exit(0); --- -2.1.3 - diff --git a/package/nodejs/0.10.40/0001-remove-python-bz2-dependency.patch b/package/nodejs/0.10.42/0001-remove-python-bz2-dependency.patch similarity index 100% rename from package/nodejs/0.10.40/0001-remove-python-bz2-dependency.patch rename to package/nodejs/0.10.42/0001-remove-python-bz2-dependency.patch diff --git a/package/nodejs/0.10.40/0002-gyp-force-link-command-to-use-CXX.patch b/package/nodejs/0.10.42/0002-gyp-force-link-command-to-use-CXX.patch similarity index 100% rename from package/nodejs/0.10.40/0002-gyp-force-link-command-to-use-CXX.patch rename to package/nodejs/0.10.42/0002-gyp-force-link-command-to-use-CXX.patch diff --git a/package/nodejs/0.10.40/0003-use-python-variable.patch b/package/nodejs/0.10.42/0003-use-python-variable.patch similarity index 100% rename from package/nodejs/0.10.40/0003-use-python-variable.patch rename to package/nodejs/0.10.42/0003-use-python-variable.patch diff --git a/package/nodejs/0.10.42/0004-fix-musl-USE-MISC-build-issue.patch b/package/nodejs/0.10.42/0004-fix-musl-USE-MISC-build-issue.patch new file mode 100644 index 00000000000..128058df29b --- /dev/null +++ b/package/nodejs/0.10.42/0004-fix-musl-USE-MISC-build-issue.patch @@ -0,0 +1,47 @@ +From 0bc482abeb814573251ecafb5a1e045c885b13a2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Mon, 25 May 2015 16:22:57 +0200 +Subject: [PATCH 1/1] Fix musl __USE_MISC issue +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The musl C library does not define __USE_MISC and so libuv (built-in dependency) +does not use the correct struct stat definition for musl. + +The feature test macro __USE_MISC is defined by glibc if _BSD_SOURCE or +_SVID_SOURCE is defined. + +The libuv build system enables the feature test macro _GNU_SOURCE for linux +builds. + +Since glibc 2.19, defining _GNU_SOURCE also has the effect of implicitly +defining _DEFAULT_SOURCE - the replacement for _BSD_SOURCE and _SVID_SOURCE. + +In glibc versions before 2.20, defining _GNU_SOURCE also had the effect of +implicitly defining _BSD_SOURCE and _SVID_SOURCE. This is also true for uClibc. + +Alltogether, we can safely replace __USE_MISC by _GNU_SOURCE to support building +nodejs 0.10.x with the musl C library. + +Signed-off-by: Jörg Krause +--- + deps/uv/src/fs-poll.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/deps/uv/src/fs-poll.c b/deps/uv/src/fs-poll.c +index ad27f18..094447e 100644 +--- a/deps/uv/src/fs-poll.c ++++ b/deps/uv/src/fs-poll.c +@@ -198,7 +198,7 @@ static int statbuf_eq(const uv_statbuf_t* a, const uv_statbuf_t* b) { + + /* Jump through a few hoops to get sub-second granularity on Linux. */ + # if defined(__linux__) +-# if defined(__USE_MISC) /* _BSD_SOURCE || _SVID_SOURCE */ ++# if defined(_GNU_SOURCE) /* _BSD_SOURCE || _SVID_SOURCE */ + if (a->st_ctim.tv_nsec != b->st_ctim.tv_nsec) return 0; + if (a->st_mtim.tv_nsec != b->st_mtim.tv_nsec) return 0; + # else +-- +2.4.1 + diff --git a/package/nodejs/0.10.42/0005-Fix-support-for-uClibc-ng.patch b/package/nodejs/0.10.42/0005-Fix-support-for-uClibc-ng.patch new file mode 100644 index 00000000000..59b9d5044c2 --- /dev/null +++ b/package/nodejs/0.10.42/0005-Fix-support-for-uClibc-ng.patch @@ -0,0 +1,33 @@ +From 1cc08f6ceacbb0e5ba1f4638ca3a97ac002d7792 Mon Sep 17 00:00:00 2001 +From: "Bark, Martin" +Date: Mon, 14 Dec 2015 13:26:10 +0000 +Subject: [PATCH 2/2] Fix support for uClibc-ng + +uClibc-ng is currently at v1.0.9. The patch corrects the uClibc +version test so that HAVE_IFADDRS_H is defined for uClibc versions +after v0.9.32. + +Submitted upstream to libuv and accepted, see +https://github.com/libuv/libuv/pull/653 and +https://github.com/libuv/libuv/commit/c861972 + +Signed-off-by: Bark, Martin +--- + deps/uv/src/unix/linux-core.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/deps/uv/src/unix/linux-core.c b/deps/uv/src/unix/linux-core.c +index e6e6828..6cbbb71 100644 +--- a/deps/uv/src/unix/linux-core.c ++++ b/deps/uv/src/unix/linux-core.c +@@ -39,7 +39,7 @@ + #define HAVE_IFADDRS_H 1 + + #ifdef __UCLIBC__ +-# if __UCLIBC_MAJOR__ < 0 || __UCLIBC_MINOR__ < 9 || __UCLIBC_SUBLEVEL__ < 32 ++# if __UCLIBC_MAJOR__ < 0 && __UCLIBC_MINOR__ < 9 && __UCLIBC_SUBLEVEL__ < 32 + # undef HAVE_IFADDRS_H + # endif + #endif +-- +2.6.2 diff --git a/package/nodejs/0.12.7/0003-Use-a-python-variable-instead-of-hardcoding-Python.patch b/package/nodejs/0.12.7/0003-Use-a-python-variable-instead-of-hardcoding-Python.patch deleted file mode 100644 index 37ceda3ab6d..00000000000 --- a/package/nodejs/0.12.7/0003-Use-a-python-variable-instead-of-hardcoding-Python.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 4a48c65921b0f05b621aef5b902b6aa54811ad7a Mon Sep 17 00:00:00 2001 -From: Martin Bark -Date: Tue, 30 Jun 2015 09:44:33 +0100 -Subject: [PATCH 3/4] Use a python variable instead of hardcoding Python - -The nodejs build system uses python in a number of locations. However, -there are some locations where it hardcodes 'python' as the Python -interpreter. However, this causes problems when we need to use python2 -instead of just python. - -This patch fixes that by using the python variable already in place in -the nodejs build system. - -Signed-off-by: Thomas Petazzoni -[Martin: adapt to 0.12.5] -Signed-off-by: Martin Bark ---- - deps/v8/tools/gyp/v8.gyp | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/deps/v8/tools/gyp/v8.gyp b/deps/v8/tools/gyp/v8.gyp -index c703155..06c0b2b 100644 ---- a/deps/v8/tools/gyp/v8.gyp -+++ b/deps/v8/tools/gyp/v8.gyp -@@ -1353,7 +1353,7 @@ - 'outputs': [ - '<(PRODUCT_DIR)/natives_blob.bin', - ], -- 'action': ['python', '<@(_inputs)', '<@(_outputs)'], -+ 'action': ['<(python)', '<@(_inputs)', '<@(_outputs)'], - }], - }], - ['want_separate_host_toolset==1', { -@@ -1435,7 +1435,7 @@ - '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', - ], - 'action': [ -- 'python', -+ '<(python)', - '../../tools/js2c.py', - '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', - 'CORE', -@@ -1462,7 +1462,7 @@ - '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc', - ], - 'action': [ -- 'python', -+ '<(python)', - '../../tools/js2c.py', - '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc', - 'EXPERIMENTAL', -@@ -1500,7 +1500,7 @@ - '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc', - ], - 'action': [ -- 'python', -+ '<(python)', - '../../tools/gen-postmortem-metadata.py', - '<@(_outputs)', - '<@(heapobject_files)' --- -2.1.4 - diff --git a/package/nodejs/0.12.7/0004-fix-build-error-without-OpenSSL-support.patch b/package/nodejs/0.12.7/0004-fix-build-error-without-OpenSSL-support.patch deleted file mode 100644 index ccb29b1193e..00000000000 --- a/package/nodejs/0.12.7/0004-fix-build-error-without-OpenSSL-support.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 6bfa497dceb83de5257c64da59fbcf6a32d83305 Mon Sep 17 00:00:00 2001 -From: Martin Bark -Date: Tue, 30 Jun 2015 09:45:07 +0100 -Subject: [PATCH 4/4] fix build error without OpenSSL support -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Jörg Krause -[Martin: adapt to 0.12.5] -Signed-off-by: Martin Bark ---- - src/node.cc | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/node.cc b/src/node.cc -index e669706..d43b791 100644 ---- a/src/node.cc -+++ b/src/node.cc -@@ -2934,8 +2934,10 @@ static void PrintHelp() { - " present.\n" - #endif - #endif -+#if HAVE_OPENSSL - " --enable-ssl2 enable ssl2\n" - " --enable-ssl3 enable ssl3\n" -+#endif - "\n" - "Environment variables:\n" - #ifdef _WIN32 -@@ -3003,10 +3005,12 @@ static void ParseArgs(int* argc, - } else if (strcmp(arg, "--version") == 0 || strcmp(arg, "-v") == 0) { - printf("%s\n", NODE_VERSION); - exit(0); -+#if HAVE_OPENSSL - } else if (strcmp(arg, "--enable-ssl2") == 0) { - SSL2_ENABLE = true; - } else if (strcmp(arg, "--enable-ssl3") == 0) { - SSL3_ENABLE = true; -+#endif - } else if (strcmp(arg, "--help") == 0 || strcmp(arg, "-h") == 0) { - PrintHelp(); - exit(0); --- -2.1.4 - diff --git a/package/nodejs/0.12.7/0001-Remove-dependency-on-Python-bz2-module.patch b/package/nodejs/5.5.0/0001-Remove-dependency-on-Python-bz2-module.patch similarity index 60% rename from package/nodejs/0.12.7/0001-Remove-dependency-on-Python-bz2-module.patch rename to package/nodejs/5.5.0/0001-Remove-dependency-on-Python-bz2-module.patch index 24a78a4e1af..65bceef94ab 100644 --- a/package/nodejs/0.12.7/0001-Remove-dependency-on-Python-bz2-module.patch +++ b/package/nodejs/5.5.0/0001-Remove-dependency-on-Python-bz2-module.patch @@ -3,13 +3,13 @@ From: Martin Bark Date: Tue, 30 Jun 2015 09:43:11 +0100 Subject: [PATCH 1/4] Remove dependency on Python bz2 module -The Python bz2 module is only needed in certain cases, so only import -it when needed. In the normal nodejs build, this allows to remove the -dependency on this module. +Do not import the bz2 module, it is not used. Signed-off-by: Thomas Petazzoni [Martin: adapt to 0.12.5] Signed-off-by: Martin Bark +[yann.morin.1998@free.fr: adapt to 4.1.2] +Signed-off-by: "Yann E. MORIN" --- deps/v8/tools/js2c.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) @@ -26,14 +26,6 @@ index 77485f6..371caf5 100755 import textwrap -@@ -492,6 +491,7 @@ def CompressMaybe(sources, compression_type): - if compression_type == "off": - return sources_bytes - elif compression_type == "bz2": -+ import bz2 - return bz2.compress(sources_bytes) - else: - raise Error("Unknown compression type %s." % compression_type) -- 2.1.4 diff --git a/package/nodejs/0.12.7/0002-gyp-force-link-command-to-use-CXX.patch b/package/nodejs/5.5.0/0002-gyp-force-link-command-to-use-CXX.patch similarity index 87% rename from package/nodejs/0.12.7/0002-gyp-force-link-command-to-use-CXX.patch rename to package/nodejs/5.5.0/0002-gyp-force-link-command-to-use-CXX.patch index 3b007f1564b..5746582c145 100644 --- a/package/nodejs/0.12.7/0002-gyp-force-link-command-to-use-CXX.patch +++ b/package/nodejs/5.5.0/0002-gyp-force-link-command-to-use-CXX.patch @@ -5,6 +5,8 @@ Subject: [PATCH 2/4] gyp: force link command to use CXX Signed-off-by: Samuel Martin Signed-off-by: Martin Bark +[yann.morin.1998@free.fr: adapt to 4.1.2] +Signed-off-by: "Yann E. MORIN" --- tools/gyp/pylib/gyp/generator/make.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) @@ -13,7 +15,7 @@ diff --git a/tools/gyp/pylib/gyp/generator/make.py b/tools/gyp/pylib/gyp/generat index b88a433..0a1f2e0 100644 --- a/tools/gyp/pylib/gyp/generator/make.py +++ b/tools/gyp/pylib/gyp/generator/make.py -@@ -141,7 +141,7 @@ cmd_alink_thin = rm -f $@ && $(AR.$(TOOLSET)) crsT $@ $(filter %.o,$^) +@@ -142,7 +142,7 @@ cmd_alink_thin = rm -f $@ && $(AR.$(TOOLSET)) crsT $@ $(filter %.o,$^) # special "figure out circular dependencies" flags around the entire # input list during linking. quiet_cmd_link = LINK($(TOOLSET)) $@ diff --git a/package/nodejs/5.5.0/0003-Use-a-python-variable-instead-of-hardcoding-Python.patch b/package/nodejs/5.5.0/0003-Use-a-python-variable-instead-of-hardcoding-Python.patch new file mode 100644 index 00000000000..4d8d715568e --- /dev/null +++ b/package/nodejs/5.5.0/0003-Use-a-python-variable-instead-of-hardcoding-Python.patch @@ -0,0 +1,112 @@ +From 4a48c65921b0f05b621aef5b902b6aa54811ad7a Mon Sep 17 00:00:00 2001 +From: Martin Bark +Date: Tue, 30 Jun 2015 09:44:33 +0100 +Subject: [PATCH 3/4] Use a python variable instead of hardcoding Python + +The nodejs build system uses python in a number of locations. However, +there are some locations where it hardcodes 'python' as the Python +interpreter. However, this causes problems when we need to use python2 +instead of just python. + +This patch fixes that by using the python variable already in place in +the nodejs build system. + +Signed-off-by: Thomas Petazzoni +[Martin: adapt to 0.12.5] +Signed-off-by: Martin Bark +[yann.morin.1998@free.fr: adapt to 4.1.2] +Signed-off-by: "Yann E. MORIN" +[Martin: adapt to 5.5.0] +Signed-off-by: Martin Bark +--- + deps/v8/tools/gyp/v8.gyp | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/deps/v8/tools/gyp/v8.gyp b/deps/v8/tools/gyp/v8.gyp +index 1e5705d..e2e5dfe 100644 +--- a/deps/v8/tools/gyp/v8.gyp ++++ b/deps/v8/tools/gyp/v8.gyp +@@ -1723,14 +1723,14 @@ + '<(PRODUCT_DIR)/natives_blob_host.bin', + ], + 'action': [ +- 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob_host.bin' ++ '<(python)', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob_host.bin' + ], + }, { + 'outputs': [ + '<(PRODUCT_DIR)/natives_blob.bin', + ], + 'action': [ +- 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob.bin' ++ '<(python)', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob.bin' + ], + }], + ], +@@ -1739,7 +1739,7 @@ + '<(PRODUCT_DIR)/natives_blob.bin', + ], + 'action': [ +- 'python', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob.bin' ++ '<(python)', '<@(_inputs)', '<(PRODUCT_DIR)/natives_blob.bin' + ], + }], + ], +@@ -1847,7 +1847,7 @@ + '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', + ], + 'action': [ +- 'python', ++ '<(python)', + '../../tools/js2c.py', + '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', + 'CORE', +@@ -1873,7 +1873,7 @@ + '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc', + ], + 'action': [ +- 'python', ++ '<(python)', + '../../tools/js2c.py', + '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc', + 'EXPERIMENTAL', +@@ -1898,7 +1898,7 @@ + '<(SHARED_INTERMEDIATE_DIR)/code-stub-libraries.cc', + ], + 'action': [ +- 'python', ++ '<(python)', + '../../tools/js2c.py', + '<(SHARED_INTERMEDIATE_DIR)/code-stub-libraries.cc', + 'CODE_STUB', +@@ -1923,7 +1923,7 @@ + '<(SHARED_INTERMEDIATE_DIR)/extras-libraries.cc', + ], + 'action': [ +- 'python', ++ '<(python)', + '../../tools/js2c.py', + '<(SHARED_INTERMEDIATE_DIR)/extras-libraries.cc', + 'EXTRAS', +@@ -1960,7 +1960,7 @@ + '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc', + ], + 'action': [ +- 'python', ++ '<(python)', + '../../tools/gen-postmortem-metadata.py', + '<@(_outputs)', + '<@(heapobject_files)' +diff --git a/deps/v8/build/toolchain.gypi b/deps/v8/build/toolchain.gypi +index c703155..06c0b2b 100644 +--- a/deps/v8/build/toolchain.gypi ++++ b/deps/v8/build/toolchain.gypi +@@ -38,7 +38,7 @@ + 'ubsan%': 0, + 'ubsan_vptr%': 0, + 'v8_target_arch%': '<(target_arch)', +- 'v8_host_byteorder%': ' +Date: Tue, 8 Dec 2015 11:41:08 +0000 +Subject: [PATCH] Fix va_list not declared +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +When compiling with uClibc-ng the following error is seen. + +In file included from ../deps/v8/src/log-utils.cc:5:0: +../deps/v8/src/log-utils.h:64:39: error: ‘va_list’ has not been declared + void AppendVA(const char* format, va_list args); + +This patch fixes the issue by adding the missing #include . Note +that this fix has already be included upstream, see +https://github.com/nodejs/node/blob/8a43a3d/deps/v8/src/log-utils.h + +Signed-off-by: Martin Bark +--- + deps/v8/src/log-utils.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/deps/v8/src/log-utils.h b/deps/v8/src/log-utils.h +index 87dab52..6714307 100644 +--- a/deps/v8/src/log-utils.h ++++ b/deps/v8/src/log-utils.h +@@ -5,6 +5,8 @@ + #ifndef V8_LOG_UTILS_H_ + #define V8_LOG_UTILS_H_ + ++#include ++ + #include "src/allocation.h" + #include "src/base/platform/mutex.h" + #include "src/flags.h" +-- +2.5.0 + diff --git a/package/nodejs/5.5.0/0005-Fix-support-for-uClibc-ng.patch b/package/nodejs/5.5.0/0005-Fix-support-for-uClibc-ng.patch new file mode 100644 index 00000000000..59b9d5044c2 --- /dev/null +++ b/package/nodejs/5.5.0/0005-Fix-support-for-uClibc-ng.patch @@ -0,0 +1,33 @@ +From 1cc08f6ceacbb0e5ba1f4638ca3a97ac002d7792 Mon Sep 17 00:00:00 2001 +From: "Bark, Martin" +Date: Mon, 14 Dec 2015 13:26:10 +0000 +Subject: [PATCH 2/2] Fix support for uClibc-ng + +uClibc-ng is currently at v1.0.9. The patch corrects the uClibc +version test so that HAVE_IFADDRS_H is defined for uClibc versions +after v0.9.32. + +Submitted upstream to libuv and accepted, see +https://github.com/libuv/libuv/pull/653 and +https://github.com/libuv/libuv/commit/c861972 + +Signed-off-by: Bark, Martin +--- + deps/uv/src/unix/linux-core.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/deps/uv/src/unix/linux-core.c b/deps/uv/src/unix/linux-core.c +index e6e6828..6cbbb71 100644 +--- a/deps/uv/src/unix/linux-core.c ++++ b/deps/uv/src/unix/linux-core.c +@@ -39,7 +39,7 @@ + #define HAVE_IFADDRS_H 1 + + #ifdef __UCLIBC__ +-# if __UCLIBC_MAJOR__ < 0 || __UCLIBC_MINOR__ < 9 || __UCLIBC_SUBLEVEL__ < 32 ++# if __UCLIBC_MAJOR__ < 0 && __UCLIBC_MINOR__ < 9 && __UCLIBC_SUBLEVEL__ < 32 + # undef HAVE_IFADDRS_H + # endif + #endif +-- +2.6.2 diff --git a/package/nodejs/Config.in b/package/nodejs/Config.in index 329d270762e..7324f6d7f40 100644 --- a/package/nodejs/Config.in +++ b/package/nodejs/Config.in @@ -1,3 +1,11 @@ +comment "nodejs needs a toolchain w/ C++, dynamic library, threads, gcc >= 4.8, wchar" + depends on BR2_USE_MMU + depends on BR2_arm || BR2_i386 || BR2_x86_64 || BR2_mipsel + depends on !BR2_MIPS_SOFT_FLOAT + depends on !BR2_ARM_CPU_ARMV4 + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || \ + !BR2_HOST_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR + config BR2_PACKAGE_NODEJS bool "nodejs" depends on BR2_TOOLCHAIN_HAS_THREADS @@ -6,6 +14,11 @@ config BR2_PACKAGE_NODEJS depends on !BR2_MIPS_SOFT_FLOAT # ARM needs BLX, so v5t+ depends on !BR2_ARM_CPU_ARMV4 + # 0.10.x could be built without the following toolchain dependencies but + # simplify things by requiring these basic dependencies for all versions. + depends on BR2_HOST_GCC_AT_LEAST_4_8 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + depends on BR2_USE_WCHAR # uses fork() depends on BR2_USE_MMU # uses dlopen(). On ARMv5, we could technically support static @@ -17,35 +30,21 @@ config BR2_PACKAGE_NODEJS http://nodejs.org/ -comment "nodejs needs a toolchain w/ C++, dynamic library, threads" - depends on BR2_USE_MMU - depends on BR2_arm || BR2_i386 || BR2_x86_64 || BR2_mipsel - depends on !BR2_ARM_CPU_ARMV4 - depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS - if BR2_PACKAGE_NODEJS -choice - prompt "Node.js version" - default BR2_BR2_PACKAGE_NODEJS_0_10_X if BR2_ARM_CPU_ARMV5 - default BR2_BR2_PACKAGE_NODEJS_0_12_X - help - Select the version of Node.js you wish to use. - -config BR2_BR2_PACKAGE_NODEJS_0_10_X - bool "v0.10.40" - -# V8 included with v0.12.5 requires at least ARMv6 -config BR2_BR2_PACKAGE_NODEJS_0_12_X - bool "v0.12.7" - depends on !BR2_ARM_CPU_ARMV5 - -endchoice +# Starting with 0.12.x, on ARM, V8 (the JS engine) +# now requires an armv6+ and a VFPv2+. +config BR2_PACKAGE_NODEJS_V8_ARCH_SUPPORTS + bool + # On supported architectures other than ARM, no special requirement + default y if !BR2_arm + # On ARM, at least ARMv6+ with VFPv2+ is needed + default y if !BR2_ARM_CPU_ARMV5 && BR2_ARM_CPU_HAS_VFPV2 config BR2_PACKAGE_NODEJS_VERSION_STRING string - default "0.10.40" if BR2_BR2_PACKAGE_NODEJS_0_10_X - default "0.12.7" if BR2_BR2_PACKAGE_NODEJS_0_12_X + default "5.5.0" if BR2_PACKAGE_NODEJS_V8_ARCH_SUPPORTS + default "0.10.42" menu "Module Selection" diff --git a/package/nodejs/nodejs.hash b/package/nodejs/nodejs.hash index 9be2806c151..a3faa5a4556 100644 --- a/package/nodejs/nodejs.hash +++ b/package/nodejs/nodejs.hash @@ -1,5 +1,5 @@ -# From upstream URL: http://nodejs.org/dist/v0.10.40/SHASUMS256.txt -sha256 bae79c2fd959aebe1629af36077bebbb760128db753da226d2344cd91499149f node-v0.10.40.tar.gz +# From upstream URL: http://nodejs.org/dist/v0.10.42/SHASUMS256.txt +sha256 9b4cc1b5bc397d80dfe217625b04bb6212a3b5a8b1e0eb36000a30d7ae567b8a node-v0.10.42.tar.xz -# From upstream URL: http://nodejs.org/dist/v0.12.7/SHASUMS256.txt -sha256 b23d64df051c9c969b0c583f802d5d71de342e53067127a5061415be7e12f39d node-v0.12.7.tar.gz +# From upstream URL: http://nodejs.org/dist/v5.5.0/SHASUMS256.txt +sha256 9c46b4dc9548e43826f71f6571f56e39783c456b9516045b496ea73321731e22 node-v5.5.0.tar.xz diff --git a/package/nodejs/nodejs.mk b/package/nodejs/nodejs.mk index 414f3f3d491..63ae4631fde 100644 --- a/package/nodejs/nodejs.mk +++ b/package/nodejs/nodejs.mk @@ -5,7 +5,7 @@ ################################################################################ NODEJS_VERSION = $(call qstrip,$(BR2_PACKAGE_NODEJS_VERSION_STRING)) -NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.gz +NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION) NODEJS_DEPENDENCIES = host-python host-nodejs zlib \ $(call qstrip,$(BR2_PACKAGE_NODEJS_MODULES_ADDITIONAL_DEPS)) @@ -52,6 +52,8 @@ ifeq ($(BR2_i386),y) NODEJS_CPU = ia32 else ifeq ($(BR2_x86_64),y) NODEJS_CPU = x64 +else ifeq ($(BR2_mips),y) +NODEJS_CPU = mips else ifeq ($(BR2_mipsel),y) NODEJS_CPU = mipsel else ifeq ($(BR2_arm),y) @@ -60,6 +62,18 @@ NODEJS_CPU = arm NODEJS_ARM_FP = $(call qstrip,$(BR2_GCC_TARGET_FLOAT_ABI)) endif +# MIPS architecture specific options +ifeq ($(BR2_mips)$(BR2_mipsel),y) +ifeq ($(BR2_mips_32r6),y) +NODEJS_MIPS_ARCH_VARIANT = r6 +NODEJS_MIPS_FPU_MODE = fp64 +else ifeq ($(BR2_mips_32r2),y) +NODEJS_MIPS_ARCH_VARIANT = r2 +else ifeq ($(BR2_mips_32),y) +NODEJS_MIPS_ARCH_VARIANT = r1 +endif +endif + define NODEJS_CONFIGURE_CMDS (cd $(@D); \ $(TARGET_CONFIGURE_OPTS) \ @@ -75,6 +89,8 @@ define NODEJS_CONFIGURE_CMDS --without-etw \ --dest-cpu=$(NODEJS_CPU) \ $(if $(NODEJS_ARM_FP),--with-arm-float-abi=$(NODEJS_ARM_FP)) \ + $(if $(NODEJS_MIPS_ARCH_VARIANT),--with-mips-arch-variant=$(NODEJS_MIPS_ARCH_VARIANT)) \ + $(if $(NODEJS_MIPS_FPU_MODE),--with-mips-fpu-mode=$(NODEJS_MIPS_FPU_MODE)) \ --dest-os=linux \ ) endef @@ -102,6 +118,7 @@ NPM = $(TARGET_CONFIGURE_OPTS) \ npm_config_target_arch=$(NODEJS_CPU) \ npm_config_build_from_source=true \ npm_config_nodedir=$(BUILD_DIR)/nodejs-$(NODEJS_VERSION) \ + npm_config_prefix=$(TARGET_DIR)/usr \ $(HOST_DIR)/usr/bin/npm # @@ -112,17 +129,7 @@ define NODEJS_INSTALL_MODULES # If you're having trouble with module installation, adding -d to the # npm install call below and setting npm_config_rollback=false can both # help in diagnosing the problem. - (cd $(TARGET_DIR)/usr/lib && mkdir -p node_modules && \ - $(NPM) install $(NODEJS_MODULES_LIST) \ - ) - - # Symlink all executables in $(TARGET_DIR)/usr/lib/node_modules/.bin to - # $(TARGET_DIR)/usr/bin so they are accessible from the command line - cd $(TARGET_DIR)/usr/bin; \ - for f in ../../usr/lib/node_modules/.bin/*; do \ - [ -f "$${f}" -a -x "$${f}" ] || continue; \ - ln -sf "$${f}" "$${f##*/}" || exit 1; \ - done + $(NPM) install -g $(NODEJS_MODULES_LIST) endef endif diff --git a/package/noip/noip.hash b/package/noip/noip.hash new file mode 100644 index 00000000000..166438db48f --- /dev/null +++ b/package/noip/noip.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 82b9bafab96a0c53b21aaef688bf70b3572e26217b5e2072bdb09da3c4a6f593 noip-duc-linux.tar.gz diff --git a/package/noip/noip.mk b/package/noip/noip.mk index fceea1ed50d..a61d1418327 100644 --- a/package/noip/noip.mk +++ b/package/noip/noip.mk @@ -11,10 +11,9 @@ NOIP_LICENSE = GPLv2+ NOIP_LICENSE_FILES = COPYING define NOIP_BUILD_CMDS - sed -i -e "s:\(#define CONFIG_FILENAME\).*:\1 \"/etc/no-ip2.conf\":" \ - $(@D)/noip2.c - $(MAKE) -C $(@D) CC="$(TARGET_CC)" CFLAGS="$(TARGET_CFLAGS)" \ - PREFIX=/usr CONFDIR=/etc + $(SED) "/^#define CONFIG_FILENAME/ s/PREFIX//" $(@D)/noip2.c + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) CC="$(TARGET_CC)" \ + CFLAGS="$(TARGET_CFLAGS)" PREFIX=/usr CONFDIR=/etc endef define NOIP_INSTALL_TARGET_CMDS diff --git a/package/nss-pam-ldapd/Config.in b/package/nss-pam-ldapd/Config.in new file mode 100644 index 00000000000..da6d331b8a1 --- /dev/null +++ b/package/nss-pam-ldapd/Config.in @@ -0,0 +1,25 @@ +config BR2_PACKAGE_NSS_PAM_LDAPD + bool "nss-pam-ldapd" + depends on BR2_TOOLCHAIN_USES_GLIBC + select BR2_PACKAGE_OPENLDAP + help + Name Service Switch (NSS) module that allows your LDAP + server to provide user account, group, host name, alias, + netgroup, and basically any other information that you would + normally get from /etc flat files or NIS. It also provides a + Pluggable Authentication Module (PAM) to do authentication + to an LDAP server. + + http://arthurdejong.org/nss-pam-ldapd/ + +if BR2_PACKAGE_NSS_PAM_LDAPD + +config BR2_PACKAGE_NSS_PAM_LDAPD_UTILITIES + bool "nss-pam-ldapd utilities" + help + Build/Install command-line utilities. + +endif + +comment "nss-pam-ldapd needs an (e)glibc toolchain" + depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/nss-pam-ldapd/S45nslcd b/package/nss-pam-ldapd/S45nslcd new file mode 100644 index 00000000000..cd3e4d0f201 --- /dev/null +++ b/package/nss-pam-ldapd/S45nslcd @@ -0,0 +1,25 @@ +#!/bin/sh + +NAME="nslcd" +DAEMON="/usr/sbin/${NAME}" + +case "$1" in +start) + echo -n "Starting ${NAME}: " + start-stop-daemon -S -x ${DAEMON} + [ $? -eq 0 ] && echo "OK" || echo "FAIL" + ;; +stop) + echo -n "Stopping ${NAME}: " + start-stop-daemon -K -x ${DAEMON} + [ $? -eq 0 ] && echo "OK" || echo "FAIL" + ;; +restart|reload) + $0 stop + $0 start + ;; +*) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac + diff --git a/package/nss-pam-ldapd/nslcd.service b/package/nss-pam-ldapd/nslcd.service new file mode 100644 index 00000000000..6c0d71b241a --- /dev/null +++ b/package/nss-pam-ldapd/nslcd.service @@ -0,0 +1,11 @@ +[Unit] +Description=Naming services LDAP client daemon. +After=syslog.target network.target + +[Service] +Type=forking +PIDFile=/var/run/nslcd/nslcd.pid +ExecStart=/usr/sbin/nslcd + +[Install] +WantedBy=multi-user.target diff --git a/package/nss-pam-ldapd/nss-pam-ldapd.hash b/package/nss-pam-ldapd/nss-pam-ldapd.hash new file mode 100644 index 00000000000..b931e6fc12b --- /dev/null +++ b/package/nss-pam-ldapd/nss-pam-ldapd.hash @@ -0,0 +1,4 @@ +# From http://arthurdejong.org/nss-pam-ldapd/nss-pam-ldapd-0.9.6.tar.gz.md5 +md5 fa5ec49cb54428d6c73e244a11021695 nss-pam-ldapd-0.9.6.tar.gz +# Locally computed: +sha256 101d5a7fa10549cc77be48d07f2b8141f59182f10f2cc0fea93efd13c3a5a6f2 nss-pam-ldapd-0.9.5.tar.gz diff --git a/package/nss-pam-ldapd/nss-pam-ldapd.mk b/package/nss-pam-ldapd/nss-pam-ldapd.mk new file mode 100644 index 00000000000..ba250829bb8 --- /dev/null +++ b/package/nss-pam-ldapd/nss-pam-ldapd.mk @@ -0,0 +1,46 @@ +################################################################################ +# +# nss-pam-ldapd +# +################################################################################ + +NSS_PAM_LDAPD_VERSION = 0.9.6 +NSS_PAM_LDAPD_SITE = http://arthurdejong.org/nss-pam-ldapd +NSS_PAM_LDAPD_LICENSE = LGPLv2.1+ +NSS_PAM_LDAPD_LICENSE_FILES = COPYING +NSS_PAM_LDAPD_INSTALL_STAGING = YES + +NSS_PAM_LDAPD_CONF_OPTS = --disable-sasl +NSS_PAM_LDAPD_DEPENDENCIES = openldap + +ifeq ($(BR2_PACKAGE_NSS_PAM_LDAPD_UTILITIES),y) +NSS_PAM_LDAPD_CONF_OPTS += --enable-utils +else +NSS_PAM_LDAPD_CONF_OPTS += --disable-utils +endif + +ifeq ($(BR2_PACKAGE_LINUX_PAM),y) +NSS_PAM_LDAPD_CONF_OPTS += --enable-pam +NSS_PAM_LDAPD_DEPENDENCIES += linux-pam +else +NSS_PAM_LDAPD_CONF_OPTS += --disable-pam +endif + +define NSS_PAM_LDAPD_INSTALL_INIT_SYSTEMD + $(INSTALL) -m 755 -D package/nss-pam-ldapd/nslcd.service \ + $(TARGET_DIR)/usr/lib/systemd/system/nslcd.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -fs ../../../../usr/lib/systemd/system/nslcd.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/nslcd.service +endef + +define NSS_PAM_LDAPD_INSTALL_INIT_SYSV + $(INSTALL) -m 755 -D package/nss-pam-ldapd/S45nslcd \ + $(TARGET_DIR)/etc/init.d/S45nslcd +endef + +define NSS_PAM_LDAPD_USERS + nslcd -1 nslcd -1 * - - - nslcd user +endef + +$(eval $(autotools-package)) diff --git a/package/ntfs-3g/ntfs-3g.mk b/package/ntfs-3g/ntfs-3g.mk index 95e3db4e9c9..e5eafb360a9 100644 --- a/package/ntfs-3g/ntfs-3g.mk +++ b/package/ntfs-3g/ntfs-3g.mk @@ -10,7 +10,7 @@ NTFS_3G_SITE = http://tuxera.com/opensource NTFS_3G_CONF_OPTS = --disable-ldconfig NTFS_3G_INSTALL_STAGING = YES NTFS_3G_DEPENDENCIES = host-pkgconf -NTFS_3G_LICENSE = GPLv2+ LGPLv2+ +NTFS_3G_LICENSE = GPLv2+, LGPLv2+ NTFS_3G_LICENSE_FILES = COPYING COPYING.LIB ifeq ($(BR2_PACKAGE_LIBFUSE),y) diff --git a/package/ntp/0002-ntp-syscalls-fallback.patch b/package/ntp/0002-ntp-syscalls-fallback.patch new file mode 100644 index 00000000000..535fc93dfdb --- /dev/null +++ b/package/ntp/0002-ntp-syscalls-fallback.patch @@ -0,0 +1,27 @@ +inline ntp syscalls fallback + +Reference: + https://bugs.ntp.org/show_bug.cgi?id=769 + +Signed-off-by: James Knight +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +--- a/configure.ac ++++ b/configure.ac +@@ -1523,11 +1523,11 @@ AC_CACHE_CHECK( + [ntp_cv_var_ntp_syscalls], + [ + ntp_cv_var_ntp_syscalls=no +- case "$ac_cv_func_ntp_adjtime$ac_cv_func_ntp_gettime$ac_cv_func___adjtimex" in ++ case "$ac_cv_func_ntp_adjtime$ac_cv_func_ntp_gettime$ac_cv_func___adjtimex$ac_cv_func_adjtimex" in + yesyes*) + ntp_cv_var_ntp_syscalls=libc + ;; +- *yes) ++ *yesyes | *yesno | *noyes) + ntp_cv_var_ntp_syscalls=inline + ;; + *) diff --git a/package/ntp/Config.in b/package/ntp/Config.in index d4caddfd0a6..1763225f44d 100644 --- a/package/ntp/Config.in +++ b/package/ntp/Config.in @@ -67,6 +67,12 @@ config BR2_PACKAGE_NTP_NTPSNMPD help Install ntpsnmpd NTP SNMP MIB agent. +config BR2_PACKAGE_NTP_NTPTIME + bool "ntptime" + help + The ntptime utility program is used to read and set kernel time + variables. + config BR2_PACKAGE_NTP_NTPTRACE bool "ntptrace" depends on BR2_PACKAGE_PERL diff --git a/package/ntp/S49ntp b/package/ntp/S49ntp index 171c200d838..b4047fcedac 100755 --- a/package/ntp/S49ntp +++ b/package/ntp/S49ntp @@ -14,12 +14,12 @@ fi case "$1" in start) - echo -n "Starting $NAME: " + printf "Starting $NAME: " start-stop-daemon -S -q -x $DAEMON -- -g [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping $NAME: " + printf "Stopping $NAME: " start-stop-daemon -K -q -n $NAME [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/ntp/ntp.hash b/package/ntp/ntp.hash index d23146f59c7..0c2c29d5bc5 100644 --- a/package/ntp/ntp.hash +++ b/package/ntp/ntp.hash @@ -1,4 +1,4 @@ -# From http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p3.tar.gz.md5 -md5 b98b0cbb72f6df04608e1dd5f313808b ntp-4.2.8p3.tar.gz +# From http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p6.tar.gz.md5 +md5 60049f51e9c8305afe30eb22b711c5c6 ntp-4.2.8p6.tar.gz # Calculated based on the hash above -sha256 818ca4f2ed6ca845b1c5ec43f5e6ad905eaa0fc0aab2d509ed6b962a37fbf38f ntp-4.2.8p3.tar.gz +sha256 583d0e1c573ace30a9c6afbea0fc52cae9c8c916dbc15c026e485a0dda4ba048 ntp-4.2.8p6.tar.gz diff --git a/package/ntp/ntp.mk b/package/ntp/ntp.mk index 599724749f9..2b99ef2d420 100644 --- a/package/ntp/ntp.mk +++ b/package/ntp/ntp.mk @@ -5,7 +5,7 @@ ################################################################################ NTP_VERSION_MAJOR = 4.2 -NTP_VERSION = $(NTP_VERSION_MAJOR).8p3 +NTP_VERSION = $(NTP_VERSION_MAJOR).8p6 NTP_SITE = http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-$(NTP_VERSION_MAJOR) NTP_DEPENDENCIES = host-pkgconf libevent $(if $(BR2_PACKAGE_BUSYBOX),busybox) NTP_LICENSE = ntp license @@ -17,6 +17,8 @@ NTP_CONF_OPTS = \ --disable-tickadj \ --with-yielding-select=yes \ --disable-local-libevent +# 0002-ntp-syscalls-fallback.patch +NTP_AUTORECONF = YES ifeq ($(BR2_PACKAGE_OPENSSL),y) NTP_CONF_OPTS += --with-crypto @@ -46,6 +48,7 @@ NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTPDATE) += ntpdate/ntpdate NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTPDC) += ntpdc/ntpdc NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTPQ) += ntpq/ntpq NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTPSNMPD) += ntpsnmpd/ntpsnmpd +NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTPTIME) += util/ntptime NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTPTRACE) += scripts/ntptrace/ntptrace NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_SNTP) += sntp/sntp NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_TICKADJ) += util/tickadj diff --git a/package/numactl/numactl.hash b/package/numactl/numactl.hash new file mode 100644 index 00000000000..77ccfae6fdb --- /dev/null +++ b/package/numactl/numactl.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 450c091235f891ee874a8651b179c30f57a1391ca5c4673354740ba65e527861 numactl-2.0.11.tar.gz +sha256 1f4c813cc8c81fa4dfd0be959457a5c3de8fc3316bbc80de3aa1d9ef9992b2b6 3770bdc4fa7b9059db5cd2aa8bb09b50fa15e456.patch +sha256 0c4cb6550b46976f2a21087490420b218e62ead7d9b178120ad782d53a7ad3a6 31dc2951c758698bff060aeae8ffd8854616183b.patch diff --git a/package/numactl/numactl.mk b/package/numactl/numactl.mk index c9ea9459a3a..e2d2590cde1 100644 --- a/package/numactl/numactl.mk +++ b/package/numactl/numactl.mk @@ -4,13 +4,13 @@ # ################################################################################ -NUMACTL_VERSION = 2.0.10 +NUMACTL_VERSION = 2.0.11 NUMACTL_SITE = ftp://oss.sgi.com/www/projects/libnuma/download +NUMACTL_PATCH = \ + https://github.com/numactl/numactl/commit/3770bdc4fa7b9059db5cd2aa8bb09b50fa15e456.patch \ + https://github.com/numactl/numactl/commit/31dc2951c758698bff060aeae8ffd8854616183b.patch NUMACTL_LICENSE = LGPLv2.1 (libnuma), GPLv2 (programs) NUMACTL_LICENSE_FILES = README NUMACTL_INSTALL_STAGING = YES -# numactl tarball doesn't contain a pregenerated configure script. -NUMACTL_AUTORECONF = YES - $(eval $(autotools-package)) diff --git a/package/nut/nut.mk b/package/nut/nut.mk index d5babee2b50..b0a92ca660f 100644 --- a/package/nut/nut.mk +++ b/package/nut/nut.mk @@ -50,8 +50,11 @@ else NUT_CONF_OPTS += --without-cgi endif -# libltdl (libtool) is needed for nut-scanner -ifeq ($(BR2_PACKAGE_LIBTOOL),y) +# nut-scanner needs libltdl, which is a wrapper arounf dlopen/dlsym, +# so is not available for static-only builds. +# There is no flag to directly enable/disable nut-scanner, it's done +# via the --enable/disable-libltdl flag. +ifeq ($(BR2_STATIC_LIBS):$(BR2_PACKAGE_LIBTOOL),:y) NUT_DEPENDENCIES += libtool NUT_CONF_OPTS += --with-libltdl else diff --git a/package/nvidia-driver/Config.in b/package/nvidia-driver/Config.in index b50e2c353a4..30763c5a63e 100644 --- a/package/nvidia-driver/Config.in +++ b/package/nvidia-driver/Config.in @@ -76,6 +76,7 @@ comment "nvidia kernel module needs a kernel to be built" config BR2_PACKAGE_NVIDIA_DRIVER_MODULE bool "nvidia kernel module" depends on BR2_LINUX_KERNEL + select BR2_LINUX_NEEDS_MODULES # not using kernel-module infra help Build the nvidia.ko kernel module. diff --git a/package/nvidia-driver/nvidia-driver.hash b/package/nvidia-driver/nvidia-driver.hash index 137590f35f6..ba2f5554bf0 100644 --- a/package/nvidia-driver/nvidia-driver.hash +++ b/package/nvidia-driver/nvidia-driver.hash @@ -1,3 +1,3 @@ # Locally computed -sha256 bba63c30c730ad7b8500a77c81cae58562b9f9b57cd576b61f37a2d8bc45df25 NVIDIA-Linux-x86-346.35.run -sha256 8625acbbc7a2abdda436a5cb9d06f2a7f5913b16e0a35ac4f9f106853a94d086 NVIDIA-Linux-x86_64-346.35.run +sha256 d3a2842cbfb1163e20c658fbfaf5a235d5c9f035cd2d657f15df8a14b3fe80b1 NVIDIA-Linux-x86-358.16.run +sha256 a942cdb29ed715ff1ce25beb06b6c2490126b98ef8bee5d9973967b557596bf2 NVIDIA-Linux-x86_64-358.16.run diff --git a/package/nvidia-driver/nvidia-driver.mk b/package/nvidia-driver/nvidia-driver.mk index 71babfbf1b5..7eef73b0fdf 100644 --- a/package/nvidia-driver/nvidia-driver.mk +++ b/package/nvidia-driver/nvidia-driver.mk @@ -4,7 +4,7 @@ # ################################################################################ -NVIDIA_DRIVER_VERSION = 346.35 +NVIDIA_DRIVER_VERSION = 358.16 NVIDIA_DRIVER_SUFFIX = $(if $(BR2_x86_64),_64) NVIDIA_DRIVER_SITE = ftp://download.nvidia.com/XFree86/Linux-x86$(NVIDIA_DRIVER_SUFFIX)/$(NVIDIA_DRIVER_VERSION) NVIDIA_DRIVER_SOURCE = NVIDIA-Linux-x86$(NVIDIA_DRIVER_SUFFIX)-$(NVIDIA_DRIVER_VERSION).run diff --git a/package/obsidian-cursors/Config.in b/package/obsidian-cursors/Config.in new file mode 100644 index 00000000000..49ec3101701 --- /dev/null +++ b/package/obsidian-cursors/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_OBSIDIAN_CURSORS + bool "obsidian-cursors" + help + Obsidian Cursors is a shiny and clean cursor set. + + http://kde-look.org/content/show.php/Obsidian+Cursors?content=73135 diff --git a/package/obsidian-cursors/obsidian-cursors.hash b/package/obsidian-cursors/obsidian-cursors.hash new file mode 100644 index 00000000000..8f1775e8a4a --- /dev/null +++ b/package/obsidian-cursors/obsidian-cursors.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3d38fe875f6feae8b7772e02cfda530fcf669479807915cd2c12c149da17cfb9 73135-Obsidian.tar.bz2 diff --git a/package/obsidian-cursors/obsidian-cursors.mk b/package/obsidian-cursors/obsidian-cursors.mk new file mode 100644 index 00000000000..87a8d62f3eb --- /dev/null +++ b/package/obsidian-cursors/obsidian-cursors.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# obsidian-cursors +# +################################################################################ + +OBSIDIAN_CURSORS_VERSION = 1.0 +OBSIDIAN_CURSORS_SITE = http://kde-look.org/CONTENT/content-files +OBSIDIAN_CURSORS_SOURCE = 73135-Obsidian.tar.bz2 +OBSIDIAN_CURSORS_LICENSE = GPL + +define OBSIDIAN_CURSORS_INSTALL_TARGET_CMDS + mkdir -p $(TARGET_DIR)/usr/share/cursors/xorg-x11/Obsidian + cp -a $(@D)/cursors \ + $(TARGET_DIR)/usr/share/cursors/xorg-x11/Obsidian +endef + +$(eval $(generic-package)) diff --git a/package/odhcp6c/odhcp6c.hash b/package/odhcp6c/odhcp6c.hash new file mode 100644 index 00000000000..00a096029df --- /dev/null +++ b/package/odhcp6c/odhcp6c.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 b5f920ed300309d65e431a360cae5f3c2010eca09a4231c9ef907c730d3c0d09 odhcp6c-dc186d6d2b0dd4ad23ca5fc69c00e81f796ff6d9.tar.gz diff --git a/package/odhcp6c/odhcp6c.mk b/package/odhcp6c/odhcp6c.mk index 47944f1380e..c841cd31228 100644 --- a/package/odhcp6c/odhcp6c.mk +++ b/package/odhcp6c/odhcp6c.mk @@ -4,7 +4,7 @@ # ################################################################################ -ODHCP6C_VERSION = 8d9b60fb496000988f3633951f2e30380fc2de50 +ODHCP6C_VERSION = dc186d6d2b0dd4ad23ca5fc69c00e81f796ff6d9 ODHCP6C_SITE = $(call github,sbyx,odhcp6c,$(ODHCP6C_VERSION)) ODHCP6C_LICENSE = GPLv2 ODHCP6C_LICENSE_FILES = COPYING diff --git a/package/ofono/0001-uclibc-backtrace.patch b/package/ofono/0001-uclibc-backtrace.patch index 8499bcfb931..3ce7bf8cbcb 100644 --- a/package/ofono/0001-uclibc-backtrace.patch +++ b/package/ofono/0001-uclibc-backtrace.patch @@ -4,41 +4,46 @@ Backtrace support is only used for logging on signal errors, which isn't really critical, so simply remove backtrace info if not available in uClibc. -Signed-off-by: Peter Korsgaard ---- - src/log.c | 7 +++++++ - 1 file changed, 7 insertions(+) +NOTE: based on patch from Peter Korsgaard -Index: ofono-1.5/src/log.c -=================================================================== ---- ofono-1.5.orig/src/log.c -+++ ofono-1.5/src/log.c -@@ -30,7 +30,12 @@ +Signed-off-by: Petr Vorel +--- +--- ofono-1.7.orig/src/log.c ++++ ofono-1.7/src/log.c +@@ -30,7 +30,8 @@ #include #include #include -+#include -+/* backtrace support is optional on uClibc */ -+#if !(defined(__UCLIBC__) && !defined (__UCLIBC_HAS_BACKTRACE__)) +-#ifdef __GLIBC__ ++#if defined(__GLIBC__) && !(defined(__UCLIBC__) && !defined (__UCLIBC_HAS_BACKTRACE__)) +#define HAVE_BACKTRACE #include -+#endif + #endif #include +@@ -115,7 +116,7 @@ + va_end(ap); + } - #include "ofono.h" -@@ -115,6 +120,7 @@ - +-#ifdef __GLIBC__ ++#ifdef HAVE_BACKTRACE static void print_backtrace(unsigned int offset) { -+#ifdef HAVE_BACKTRACE void *frames[99]; - size_t n_ptrs; - unsigned int i; -@@ -213,6 +219,7 @@ +@@ -309,7 +310,7 @@ + if (detach == FALSE) + option |= LOG_PERROR; - close(outfd[1]); - close(infd[0]); -+#endif /* HAVE_BACKTRACE */ - } +-#ifdef __GLIBC__ ++#ifdef HAVE_BACKTRACE + signal_setup(signal_handler); + #endif + +@@ -326,7 +327,7 @@ + + closelog(); + +-#ifdef __GLIBC__ ++#ifdef HAVE_BACKTRACE + signal_setup(SIG_DFL); + #endif - static void signal_handler(int signo) diff --git a/package/ofono/Config.in b/package/ofono/Config.in index f709b04180d..2e3ca223609 100644 --- a/package/ofono/Config.in +++ b/package/ofono/Config.in @@ -3,8 +3,9 @@ config BR2_PACKAGE_OFONO depends on BR2_USE_WCHAR # gettext, libglib2 depends on BR2_TOOLCHAIN_HAS_THREADS # dbus, libglib2 depends on BR2_USE_MMU # dbus, libglib2 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 # libcap-ng + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # libcap-ng depends on !BR2_STATIC_LIBS # dlopen() + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_LIBCAP_NG select BR2_PACKAGE_DBUS select BR2_PACKAGE_LIBGLIB2 @@ -18,5 +19,6 @@ config BR2_PACKAGE_OFONO comment "ofono needs a toolchain w/ dynamic library, wchar, threads" depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII diff --git a/package/ofono/S46ofono b/package/ofono/S46ofono index 34d2b6aa4f3..7eb2fca3b8c 100755 --- a/package/ofono/S46ofono +++ b/package/ofono/S46ofono @@ -2,12 +2,12 @@ case "$1" in start) - echo -n "Starting ofono ... " + printf "Starting ofono ... " start-stop-daemon -S -q -m -b -p /var/run/ofonod.pid --exec /usr/sbin/ofonod -- -n echo "done." ;; stop) - echo -n "Stopping ofono ..." + printf "Stopping ofono ..." start-stop-daemon -K -q -p /var/run/ofonod.pid echo "done." ;; diff --git a/package/ofono/ofono.hash b/package/ofono/ofono.hash index e83ce1a9f0b..50c92ede65f 100644 --- a/package/ofono/ofono.hash +++ b/package/ofono/ofono.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/linux/network/ofono/sha256sums.asc -sha256 403b98dadece8bc804c0bd16b96d3db5a3bb0f84af64b3d67924da2d1a754b07 ofono-1.16.tar.xz +sha256 cbf20f07fd15253c682b23c1786d517f505c3688f7c4ea93da777e1523b89635 ofono-1.17.tar.xz diff --git a/package/ofono/ofono.mk b/package/ofono/ofono.mk index f1a63e2beca..588c9cd62b0 100644 --- a/package/ofono/ofono.mk +++ b/package/ofono/ofono.mk @@ -4,7 +4,7 @@ # ################################################################################ -OFONO_VERSION = 1.16 +OFONO_VERSION = 1.17 OFONO_SOURCE = ofono-$(OFONO_VERSION).tar.xz OFONO_SITE = $(BR2_KERNEL_MIRROR)/linux/network/ofono OFONO_LICENSE = GPLv2 @@ -16,7 +16,10 @@ OFONO_DEPENDENCIES = \ libcap-ng \ mobile-broadband-provider-info -OFONO_CONF_OPTS = --disable-test +OFONO_CONF_OPTS = \ + --disable-test \ + --with-dbusconfdir=/etc \ + $(if $(BR2_INIT_SYSTEMD),--with-systemdunitdir=/usr/lib/systemd/system) # N.B. Qualcomm QMI modem support requires O_CLOEXEC; so # make sure that it is defined. diff --git a/package/ola/0001-Remove-fvisibiliy-inlines-hidden.patch b/package/ola/0001-Remove-fvisibiliy-inlines-hidden.patch new file mode 100644 index 00000000000..f2bf247c2e7 --- /dev/null +++ b/package/ola/0001-Remove-fvisibiliy-inlines-hidden.patch @@ -0,0 +1,26 @@ +From cd4f5d9d8a10c368584e8e714ebb0f9695267063 Mon Sep 17 00:00:00 2001 +From: Simon Marchi +Date: Mon, 10 Aug 2015 15:01:42 -0400 +Subject: [PATCH] Remove -fvisibiliy-inlines-hidden + +Signed-off-by: Simon Marchi +--- + Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index 714e435..17a23e2 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -32,7 +32,7 @@ AM_DISTCHECK_CONFIGURE_FLAGS = --enable-python-libs + COMMON_CXXFLAGS_ONLY_WARNINGS = \ + -I$(top_srcdir)/include \ + -I$(top_builddir)/include \ +- -Wall -Wformat -W -fvisibility-inlines-hidden \ ++ -Wall -Wformat -W \ + $(libprotobuf_CFLAGS) + + COMMON_CXXFLAGS = $(COMMON_CXXFLAGS_ONLY_WARNINGS) +-- +2.5.0 + diff --git a/package/ola/Config.in b/package/ola/Config.in index f587db5ad0a..55cea65d87d 100644 --- a/package/ola/Config.in +++ b/package/ola/Config.in @@ -1,6 +1,7 @@ -comment "ola needs a toolchain w/ C++, threads, wchar" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64 +comment "ola needs a toolchain w/ C++, threads, wchar, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \ + || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS config BR2_PACKAGE_OLA bool "ola (open lighting architecture)" @@ -8,11 +9,10 @@ config BR2_PACKAGE_OLA select BR2_PACKAGE_UTIL_LINUX_LIBUUID select BR2_PACKAGE_UTIL_LINUX depends on BR2_INSTALL_LIBSTDCPP # protobuf + depends on !BR2_STATIC_LIBS # protobuf depends on BR2_USE_WCHAR # util-linux depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64 # protobuf - # protobuf -> host-protobuf - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS help Open Lighting Architecture provides applications with a mechanism to send and receive DMX512 & RDM diff --git a/package/ola/ola.hash b/package/ola/ola.hash new file mode 100644 index 00000000000..628b525280e --- /dev/null +++ b/package/ola/ola.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 74baba18c5b62aba15e27e6b7882c6eac22043c8e7b297e4d2f6eb05dd1a33b0 ola-0.10.0.tar.gz +sha256 32a8a7a00c7db7647710c84ed02611f2eba99669f2de4da7aceae9d4444f53a3 34999c70dcbe2d38bf13d57c9cfbdc63f0899b9a.patch diff --git a/package/ola/ola.mk b/package/ola/ola.mk index 9598de98c92..a983459aee6 100644 --- a/package/ola/ola.mk +++ b/package/ola/ola.mk @@ -4,9 +4,9 @@ # ################################################################################ -OLA_VERSION = 0.9.6 +OLA_VERSION = 0.10.0 OLA_SITE = $(call github,OpenLightingProject,ola,$(OLA_VERSION)) - +OLA_PATCH = https://github.com/OpenLightingProject/ola/commit/34999c70dcbe2d38bf13d57c9cfbdc63f0899b9a.patch OLA_LICENSE = LGPLv2.1+ (libola, libolacommon, Python bindings), GPLv2+ (libolaserver, olad, Python examples and tests) OLA_LICENSE_FILES = LICENCE GPL LGPL OLA_INSTALL_STAGING = YES diff --git a/package/olsr/S50olsr b/package/olsr/S50olsr index b79aa794930..fa1324facd2 100755 --- a/package/olsr/S50olsr +++ b/package/olsr/S50olsr @@ -2,12 +2,12 @@ case "$1" in start) - echo -n "Starting oslrd daemon: " + printf "Starting oslrd daemon: " start-stop-daemon -S -q -x /usr/sbin/olsrd -- -d 0 -pidfile /run/olsrd.pid [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping olsrd daemon: " + printf "Stopping olsrd daemon: " start-stop-daemon -K -q -p /run/olsrd.pid [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/olsr/olsr.mk b/package/olsr/olsr.mk index a96c898ae39..60c80988d0e 100644 --- a/package/olsr/olsr.mk +++ b/package/olsr/olsr.mk @@ -12,7 +12,7 @@ OLSR_PLUGINS = arprefresh bmf dot_draw dyn_gw dyn_gw_plain httpinfo jsoninfo \ mdns nameservice p2pd pgraph secure txtinfo watchdog # Doesn't really need quagga but not very useful without it OLSR_PLUGINS += $(if $(BR2_PACKAGE_QUAGGA),quagga) -OLSR_LICENSE = BSD-3c LGPLv2.1+ +OLSR_LICENSE = BSD-3c, LGPLv2.1+ OLSR_LICENSE_FILES = license.txt lib/pud/nmealib/LICENSE OLSR_DEPENDENCIES = host-flex host-bison diff --git a/package/omniorb/omniorb.mk b/package/omniorb/omniorb.mk index bf5ba47b4f0..d278adccd18 100644 --- a/package/omniorb/omniorb.mk +++ b/package/omniorb/omniorb.mk @@ -8,7 +8,7 @@ OMNIORB_VERSION = 4.2.0 OMNIORB_SITE = http://downloads.sourceforge.net/project/omniorb/omniORB/omniORB-$(OMNIORB_VERSION) OMNIORB_SOURCE = omniORB-$(OMNIORB_VERSION).tar.bz2 OMNIORB_INSTALL_STAGING = YES -OMNIORB_LICENSE = GPL2+ LGPLv2.1+ +OMNIORB_LICENSE = GPL2+, LGPLv2.1+ OMNIORB_LICENSE_FILES = COPYING COPYING.LIB OMNIORB_DEPENDENCIES = host-omniorb HOST_OMNIORB_DEPENDENCIES = host-python @@ -30,6 +30,17 @@ HOST_OMNIORB_CONF_OPTS = ac_cv_path_PYTHON=$(HOST_DIR)/usr/bin/python2 OMNIORB_CONF_OPTS += --disable-longdouble HOST_OMNIORB_CONF_OPTS += --disable-longdouble +ifeq ($(BR2_PACKAGE_OPENSSL),y) +OMNIORB_CONF_OPTS += --with-openssl +OMNIORB_DEPENDENCIES += openssl +else +OMNIORB_CONF_OPTS += --without-openssl +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +OMNIORB_DEPENDENCIES += zlib +endif + # The EmbeddedSystem define (set below in OMNIORB_ADJUST_TOOLDIR) # enables building of just the lib and disables building of # tools/apps/services. In some cases the apps/services are still diff --git a/package/open-plc-utils/0001-Remove-OWNER-and-GROUPS-parameters-to-install.patch b/package/open-plc-utils/0001-Remove-OWNER-and-GROUPS-parameters-to-install.patch index 061b3a62df7..9fc30a969f0 100644 --- a/package/open-plc-utils/0001-Remove-OWNER-and-GROUPS-parameters-to-install.patch +++ b/package/open-plc-utils/0001-Remove-OWNER-and-GROUPS-parameters-to-install.patch @@ -237,21 +237,6 @@ index 60b9bb3..c951218 100755 uninstall: cd ${BIN}; rm -f ${TOOLS} cd ${MAN}; rm -f ${PAGES} -diff --git a/scripts/Makefile b/scripts/Makefile -index c9a785a..022e5f9 100755 ---- a/scripts/Makefile -+++ b/scripts/Makefile -@@ -30,8 +30,8 @@ all compile: - install: - scripts: - manuals: -- test -d ${MAN} || install -m ${DIR_PERM} -o ${OWNER} -g ${GROUP} -d ${MAN} -- install -m ${MAN_PERM} -o ${OWNER} -g ${GROUP} ${PAGES} ${MAN} -+ test -d ${MAN} || install -m ${DIR_PERM} -d ${MAN} -+ install -m ${MAN_PERM} ${PAGES} ${MAN} - library: - uninstall: - clean: diff --git a/serial/Makefile b/serial/Makefile index c25f1a6..6420d4a 100755 --- a/serial/Makefile diff --git a/package/open-plc-utils/open-plc-utils.mk b/package/open-plc-utils/open-plc-utils.mk index 61badcd29f2..a6743724544 100644 --- a/package/open-plc-utils/open-plc-utils.mk +++ b/package/open-plc-utils/open-plc-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPEN_PLC_UTILS_VERSION = 1f6e7e372b313cf570aa63314037588ed01ec0de +OPEN_PLC_UTILS_VERSION = 05ef40c0a2949cfaf1c3230e10679fbcf912d174 OPEN_PLC_UTILS_SITE = $(call github,qca,open-plc-utils,$(OPEN_PLC_UTILS_VERSION)) OPEN_PLC_UTILS_LICENSE = BSD-3c OPEN_PLC_UTILS_LICENSE_FILES = LICENSE diff --git a/package/openal/0001-Fix-detection-of-C11-atomics.patch b/package/openal/0001-Fix-detection-of-C11-atomics.patch new file mode 100644 index 00000000000..c6b98409086 --- /dev/null +++ b/package/openal/0001-Fix-detection-of-C11-atomics.patch @@ -0,0 +1,53 @@ +From 10fee6d71a1f7d6e6319005196562b4a30b4e8ff Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Tue, 2 Feb 2016 14:58:52 +0100 +Subject: [PATCH] Fix detection of C11 atomics + +Currently, the CMakeLists.txt logic to detect the availability of C11 +atomics is based on building a small program that uses the +atomic_load(). + +However, atomic_load() does not need to use any function from +libatomic (part of the gcc runtime). So even if libatomic is missing, +this test concludes that C11 atomic support is available. For example +on SPARC, the example program builds fine without linking to +libatomic, but calling other functions of the atomic_*() APIs fail +without linking to libatomic. + +So, this patch adjusts the CMakeLists.txt test to use a function that +is known to require the libatomic run-time library (on architectures +where it is needed). This way, openal will only use the __atomic_*() +built-ins when they are actually functional. + +Signed-off-by: Thomas Petazzoni +--- + CMakeLists.txt | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 5784d35..a53f996 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -209,14 +209,17 @@ CHECK_C_SOURCE_COMPILES( + HAVE_C11_ALIGNAS) + + # Check if we have C11 _Atomic ++set(OLD_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}) ++set(CMAKE_REQUIRED_LIBRARIES ${EXTRA_LIBS}) + CHECK_C_SOURCE_COMPILES( + "#include +- const int _Atomic foo = ATOMIC_VAR_INIT(~0); ++ int _Atomic foo = ATOMIC_VAR_INIT(~0); + int main() + { +- return atomic_load(&foo); ++ return atomic_fetch_add(&foo, 2); + }" + HAVE_C11_ATOMIC) ++set(CMAKE_REQUIRED_LIBRARIES ${OLD_REQUIRED_LIBRARIES}) + + # Add definitions, compiler switches, etc. + INCLUDE_DIRECTORIES("${OpenAL_SOURCE_DIR}/include" "${OpenAL_BINARY_DIR}") +-- +2.6.4 + diff --git a/package/openal/Config.in b/package/openal/Config.in new file mode 100644 index 00000000000..a564156555f --- /dev/null +++ b/package/openal/Config.in @@ -0,0 +1,32 @@ +# openal can: +# - use __atomic_*() intrinsics when available +# - otherwise use __sync_*() intrinsics when available. It needs the +# 4-byte ones on 32 bits architectures, and the 4-byte and 8-byte +# one on 64 bits architecture +# - it also provides its one implementation of atomic operations on +# x86 and x86_64, but we dont take those into account since in most +# situations __atomic_*() or __sync_*() will be available, and not +# all x86 CPUs provide the necessary assembly instructions. +config BR2_PACKAGE_OPENAL_ARCH_SUPPORTS + bool + default y if BR2_TOOLCHAIN_HAS_ATOMIC + default y if BR2_TOOLCHAIN_HAS_SYNC_4 && !BR2_ARCH_IS_64 + default y if BR2_TOOLCHAIN_HAS_SYNC_4 && BR2_TOOLCHAIN_HAS_SYNC_8 && BR2_ARCH_IS_64 + +config BR2_PACKAGE_OPENAL + bool "openal" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS + help + OpenAL provides capabilities for playing audio in a virtual + 3D environment. Distance attenuation, doppler shift, and + directional sound emitters are among the features handled by + the API. + + http://kcat.strangesoft.net/openal.html + +comment "openal needs a toolchain w/ NPTL, C++" + depends on BR2_PACKAGE_OPENAL_ARCH_SUPPORTS + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL \ + || !BR2_INSTALL_LIBSTDCPP diff --git a/package/openal/openal.hash b/package/openal/openal.hash new file mode 100644 index 00000000000..260f1b7807d --- /dev/null +++ b/package/openal/openal.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 a341f8542f1f0b8c65241a17da13d073f18ec06658e1a1606a8ecc8bbc2b3314 openal-soft-1.17.2.tar.bz2 diff --git a/package/openal/openal.mk b/package/openal/openal.mk new file mode 100644 index 00000000000..2916aa607f3 --- /dev/null +++ b/package/openal/openal.mk @@ -0,0 +1,53 @@ +################################################################################ +# +# openal +# +################################################################################ + +OPENAL_VERSION = 1.17.2 +OPENAL_SOURCE = openal-soft-$(OPENAL_VERSION).tar.bz2 +OPENAL_SITE = http://kcat.strangesoft.net/openal-releases +OPENAL_LICENSE = LGPLv2+ +OPENAL_LICENSE_FILES = COPYING +OPENAL_INSTALL_STAGING = YES + +# We don't need the utilities, Distros don't ship them either +OPENAL_CONF_OPTS += -DALSOFT_UTILS=OFF + +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_8),y) +OPENAL_CONF_OPTS += -DEXTRA_LIBS=atomic +endif + +ifeq ($(BR2_PACKAGE_ALSA_LIB),y) +OPENAL_DEPENDENCIES += alsa-lib +OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_ALSA=ON +else +OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_ALSA=OFF +endif + +ifeq ($(BR2_PACKAGE_JACK2),y) +OPENAL_DEPENDENCIES += jack2 +OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_JACK=ON +else +OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_JACK=OFF +endif + +ifeq ($(BR2_PACKAGE_PORTAUDIO),y) +OPENAL_DEPENDENCIES += portaudio +OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_PORTAUDIO=ON +else +OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_PORTAUDIO=OFF +endif + +ifeq ($(BR2_PACKAGE_PULSEAUDIO),y) +OPENAL_DEPENDENCIES += pulseaudio +OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_PULSEAUDIO=ON +else +OPENAL_CONF_OPTS += -DALSOFT_REQUIRE_PULSEAUDIO=OFF +endif + +ifeq ($(BR2_STATIC_LIBS),y) +OPENAL_CONF_OPTS += -DLIBTYPE=STATIC +endif + +$(eval $(cmake-package)) diff --git a/package/openbox/Config.in b/package/openbox/Config.in new file mode 100644 index 00000000000..3ddd3768039 --- /dev/null +++ b/package/openbox/Config.in @@ -0,0 +1,27 @@ +config BR2_PACKAGE_OPENBOX + bool "openbox" + depends on BR2_PACKAGE_XORG7 + depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 + depends on BR2_USE_MMU # glib2 + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz + depends on BR2_INSTALL_LIBSTDCPP # pango -> freetype + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_LIBXML2 + select BR2_PACKAGE_PANGO + select BR2_PACKAGE_XLIB_LIBX11 + # libxft and libxrender are needed to get xft support in pango + select BR2_PACKAGE_XLIB_LIBXFT + select BR2_PACKAGE_XLIB_LIBXRENDER + help + Openbox is a highly configurable, next generation window + manager with extensive standards support. + + http://openbox.org + +comment "openbox needs a toolchain w/ C++, threads, wchar" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \ + !BR2_INSTALL_LIBSTDCPP + depends on BR2_PACKAGE_XORG7 diff --git a/package/openbox/openbox.hash b/package/openbox/openbox.hash new file mode 100644 index 00000000000..a8696b3f879 --- /dev/null +++ b/package/openbox/openbox.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 abe75855cc5616554ffd47134ad15291fe37ebbebf1a80b69cbde9d670f0e26d openbox-3.6.1.tar.xz diff --git a/package/openbox/openbox.mk b/package/openbox/openbox.mk new file mode 100644 index 00000000000..b5148e00e82 --- /dev/null +++ b/package/openbox/openbox.mk @@ -0,0 +1,61 @@ +################################################################################ +# +# openbox +# +################################################################################ + +OPENBOX_VERSION = 3.6.1 +OPENBOX_SOURCE = openbox-$(OPENBOX_VERSION).tar.xz +OPENBOX_SITE = http://openbox.org/dist/openbox +OPENBOX_LICENSE = GPLv2+ +OPENBOX_LICENSE_FILES = COPYING + +OPENBOX_CONF_OPTS = \ + --x-includes=$(STAGING_DIR)/usr/include/X11 \ + --x-libraries=$(STAGING_DIR)/usr/lib + +OPENBOX_DEPENDENCIES = xlib_libX11 libxml2 libglib2 pango host-pkgconf + +ifeq ($(BR2_PACKAGE_IMLIB2_X),y) +OPENBOX_CONF_OPTS += --enable-imlib2 +OPENBOX_DEPENDENCIES += imlib2 +else +OPENBOX_CONF_OPTS += --disable-imlib2 +endif + +ifeq ($(BR2_PACKAGE_STARTUP_NOTIFICATION),y) +OPENBOX_CONF_OPTS += --enable-startup-notification +OPENBOX_DEPENDENCIES += startup-notification +else +OPENBOX_CONF_OPTS += --disable-startup-notification +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBSM),y) +OPENBOX_CONF_OPTS += --enable-session-management +OPENBOX_DEPENDENCIES += xlib_libSM +else +OPENBOX_CONF_OPTS += --disable-session-management +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y) +OPENBOX_CONF_OPTS += --enable-xinerama +OPENBOX_DEPENDENCIES += xlib_libXinerama +else +OPENBOX_CONF_OPTS += --disable-xinerama +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXRANDR),y) +OPENBOX_CONF_OPTS += --enable-xrandr +OPENBOX_DEPENDENCIES += xlib_libXrandr +else +OPENBOX_CONF_OPTS += --disable-xrandr +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXCURSOR),y) +OPENBOX_DEPENDENCIES += xlib_libXcursor +OPENBOX_CONF_OPTS += --enable-xcursor +else +OPENBOX_CONF_OPTS += --disable-xcursor +endif + +$(eval $(autotools-package)) diff --git a/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch b/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch new file mode 100644 index 00000000000..9e8c2e98eb8 --- /dev/null +++ b/package/opencv/0001-core-fix-x86-PIC-code-compilation.patch @@ -0,0 +1,49 @@ +From ea50be0529c248961e1b66293f8a9e4b807294a6 Mon Sep 17 00:00:00 2001 +From: Samuel Martin +Date: Sun, 12 Oct 2014 10:17:23 +0200 +Subject: [PATCH] core: fix x86 PIC code compilation + +This bug was triggered by Buildroot autobuilders [1,2], causing this +kind of failures [3,4]: + + [ 14%] Building CXX object modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o + /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp: In function '(static initializers for /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp)': + /home/test/autobuild/instance-0/output/build/opencv-2.4.10/modules/core/src/system.cpp:280:10: error: inconsistent operand constraints in an 'asm' + make[3]: *** [modules/core/CMakeFiles/opencv_core.dir/src/system.cpp.o] Error 1 + +[1] http://buildroot.org/ +[2] http://autobuild.buildroot.org/ +[3] http://autobuild.buildroot.org/?reason=opencv-2.4.10 +[4] http://autobuild.buildroot.org/results/483/4838285b25d6293a5cf0bb9eadd5040a7c75d766/build-end.log + +Signed-off-by: Samuel Martin +--- + modules/core/src/system.cpp | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/modules/core/src/system.cpp b/modules/core/src/system.cpp +index 5a970d5..e9ffdc7 100644 +--- a/modules/core/src/system.cpp ++++ b/modules/core/src/system.cpp +@@ -267,14 +267,17 @@ struct HWFeatures + : "cc" + ); + #else ++ // We need to preserve ebx since we are compiling PIC code. ++ // This means we cannot use "=b" for the 2nd output register. + asm volatile + ( + "pushl %%ebx\n\t" + "movl $7,%%eax\n\t" + "movl $0,%%ecx\n\t" + "cpuid\n\t" ++ "movl %%ebx,%1\n\t" + "popl %%ebx\n\t" +- : "=a"(cpuid_data[0]), "=b"(cpuid_data[1]), "=c"(cpuid_data[2]), "=d"(cpuid_data[3]) ++ : "=a"(cpuid_data[0]), "=r"(cpuid_data[1]), "=c"(cpuid_data[2]), "=d"(cpuid_data[3]) + : + : "cc" + ); +-- +2.1.2 + diff --git a/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch b/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch new file mode 100644 index 00000000000..d71235d4244 --- /dev/null +++ b/package/opencv/0002-superres-Fix-return-type-value-VideoFrameSource_GPU.patch @@ -0,0 +1,40 @@ +superres: Fix return value VideoFrameSource_GPU + +Signed-off-by: Vicente Olivert Riera + +From 2e393ab83362743ba1825ad4b31d4a2925c606b4 Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Mon, 27 Oct 2014 13:39:35 +0000 +Subject: [PATCH] superres: Fix return value VideoFrameSource_GPU + +superres module fails to compile with the following error messages: + +[100%] Building CXX object modules/superres/CMakeFiles/opencv_superres.dir/src/super_resolution.cpp.o +/opencv-2.4.10/modules/superres/src/frame_source.cpp: In function 'cv::Ptr cv::superres::createFrameSource_Video_GPU(const string&)': +/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: expected type-specifier before 'VideoFrameSource' +/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: could not convert '(int*)operator new(4ul)' from 'int*' to 'cv::Ptr' +/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:16: error: expected ';' before 'VideoFrameSource' +/opencv-2.4.10/modules/superres/src/frame_source.cpp:263:41: error: 'VideoFrameSource' was not declared in this scope +/opencv-2.4.10/modules/superres/src/frame_source.cpp:264:1: error: control reaches end of non-void function [-Werror=return-type] +cc1plus: some warnings being treated as errors +make[3]: *** [modules/superres/CMakeFiles/opencv_superres.dir/src/frame_source.cpp.o] Error 1 +make[3]: *** Waiting for unfinished jobs.... + +This is caused because the return value of the createFrameSource_Video_GPU function should be a VideoFrameSource_GPU object. +--- + modules/superres/src/frame_source.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules/superres/src/frame_source.cpp b/modules/superres/src/frame_source.cpp +index 5f59a98..c5b2e76 100644 +--- a/modules/superres/src/frame_source.cpp ++++ b/modules/superres/src/frame_source.cpp +@@ -260,7 +260,7 @@ namespace + + Ptr cv::superres::createFrameSource_Video_GPU(const string& fileName) + { +- return new VideoFrameSource(fileName); ++ return new VideoFrameSource_GPU(fileName); + } + + #endif // HAVE_OPENCV_GPU diff --git a/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch b/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch new file mode 100644 index 00000000000..768f08d7783 --- /dev/null +++ b/package/opencv/0003-cmake-OpenCVGenPkgconfig.cmake-rework-opencv.pc-gene.patch @@ -0,0 +1,156 @@ +From eceada586bbf18fc267e437522ec4f1f23ddc656 Mon Sep 17 00:00:00 2001 +From: Samuel Martin +Date: Fri, 3 Oct 2014 00:32:40 +0200 +Subject: [PATCH] cmake/OpenCVGenPkgconfig.cmake: rework opencv.pc generation + +Using absolute path to locate the components in the "Libs:" field of the +*.pc can badly break cross-compilation, especially when building +statically linked objects. + +Indeed, pkg-config automatically replaces the '-I...' and '-L...' paths +when the PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_LIBDIR environment +variables are set [1]. This feature is very helpful and common in +cross-compilation framework like Buildroot [2,3]. + +When there are absolute paths in the *.pc files, pkg-config won't be +able to do the path substitions for these paths when the afromentioned +environment variables are set. +In such case, since the prefix is the target one, not the sysroot one, +these libraries' abolute paths will point to: +- in the best case: a non-existing file (i.e. these files do not exists + on the host system; +- at worst: the host system's libraries. This will make the linking + failed because these host system's libraries will most likely not be + build for the target architecture [4]. + +So, this patch replace the components' absolute paths by the form: + -L -l + +This way, the linker will be able to resolve each dependency path, +whatever the kind of objects/build (shared object or static build) it +is dealing with. + +Note that for static link, the library order does matter [5]. The order +of the opencv components has been carefully chosen to comply with this +requirement. + +Fixes #3931 + +[1] http://linux.die.net/man/1/pkg-config +[2] http://buildroot.org/ +[3] http://git.buildroot.net/buildroot/tree/package/pkgconf/pkg-config.in +[4] http://autobuild.buildroot.net/results/e8a/e8a859276db34aff87ef181b0cce98916b0afc90/build-end.log +[5] http://stackoverflow.com/questions/45135/linker-order-gcc + +Signed-off-by: Samuel Martin + +--- +Note: this patch properly applies on top of the master branch, though it + has been written on top of the 2.4 branch. +--- + cmake/OpenCVGenPkgconfig.cmake | 64 +++++++++++++++++++++++++++--------------- + 1 file changed, 42 insertions(+), 22 deletions(-) + +diff --git a/cmake/OpenCVGenPkgconfig.cmake b/cmake/OpenCVGenPkgconfig.cmake +index fa57db9..183c56d 100644 +--- a/cmake/OpenCVGenPkgconfig.cmake ++++ b/cmake/OpenCVGenPkgconfig.cmake +@@ -8,10 +8,6 @@ + # + # ${BIN_DIR}/unix-install/opencv.pc -> For use *with* "make install" + # ------------------------------------------------------------------------------------------- +-set(prefix "${CMAKE_INSTALL_PREFIX}") +-set(exec_prefix "\${prefix}") +-set(libdir "") #TODO: need link paths for OpenCV_EXTRA_COMPONENTS +-set(includedir "\${prefix}/${OPENCV_INCLUDE_INSTALL_PATH}") + + if(CMAKE_BUILD_TYPE MATCHES "Release") + set(ocv_optkind OPT) +@@ -35,42 +31,66 @@ ocv_list_reverse(OpenCV_LIB_COMPONENTS) + ocv_list_reverse(OpenCV_EXTRA_COMPONENTS) + + #build the list of components +-set(OpenCV_LIB_COMPONENTS_ "") +-foreach(CVLib ${OpenCV_LIB_COMPONENTS}) +- get_target_property(libpath ${CVLib} LOCATION_${CMAKE_BUILD_TYPE}) +- get_filename_component(libname "${libpath}" NAME) + +- if(INSTALL_TO_MANGLED_PATHS) +- set(libname "${libname}.${OPENCV_VERSION}") +- endif() ++# Note: ++# when linking against static libraries, if libfoo depends on libbar, then ++# libfoo must come first in the linker flags. ++ ++# world is a special target whose library should come first, especially for ++# static link. ++if(OpenCV_LIB_COMPONENTS MATCHES "opencv_world") ++ list(REMOVE_ITEM OpenCV_LIB_COMPONENTS "opencv_world") ++ list(INSERT OpenCV_LIB_COMPONENTS 0 "opencv_world") ++endif() ++ ++set(OpenCV_LIB_COMPONENTS_) ++foreach(CVLib ${OpenCV_LIB_COMPONENTS}) + +- #need better solution.... +- if(libpath MATCHES "3rdparty") +- set(installDir "share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH}") ++ get_target_property(libloc ${CVLib} LOCATION_${CMAKE_BUILD_TYPE}) ++ if(libloc MATCHES "3rdparty") ++ set(libpath "\${exec_prefix}/share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH}") + else() +- set(installDir "${OPENCV_LIB_INSTALL_PATH}") ++ set(libpath "\${exec_prefix}/${OPENCV_LIB_INSTALL_PATH}") + endif() ++ list(APPEND OpenCV_LIB_COMPONENTS_ "-L${libpath}") ++ ++ get_filename_component(libname ${CVLib} NAME_WE) ++ string(REGEX REPLACE "^lib" "" libname "${libname}") ++ list(APPEND OpenCV_LIB_COMPONENTS_ "-l${libname}") + +- set(OpenCV_LIB_COMPONENTS_ "${OpenCV_LIB_COMPONENTS_} \${exec_prefix}/${installDir}/${libname}") + endforeach() + + # add extra dependencies required for OpenCV +-set(OpenCV_LIB_COMPONENTS ${OpenCV_LIB_COMPONENTS_}) + if(OpenCV_EXTRA_COMPONENTS) + foreach(extra_component ${OpenCV_EXTRA_COMPONENTS}) + +- if(extra_component MATCHES "^-[lL]" OR extra_component MATCHES "[\\/]") +- set(maybe_l_prefix "") ++ if(extra_component MATCHES "^-[lL]") ++ set(libprefix "") ++ set(libname "${extra_component}") ++ elseif(extra_component MATCHES "[\\/]") ++ get_filename_component(libdir "${extra_component}" PATH) ++ list(APPEND OpenCV_LIB_COMPONENTS_ "-L${libdir}") ++ get_filename_component(libname "${extra_component}" NAME_WE) ++ string(REGEX REPLACE "^lib" "" libname "${libname}") ++ set(libprefix "-l") + else() +- set(maybe_l_prefix "-l") ++ set(libprefix "-l") ++ set(libname "${extra_component}") + endif() +- +- set(OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS} ${maybe_l_prefix}${extra_component}") ++ list(APPEND OpenCV_LIB_COMPONENTS_ "${libprefix}${libname}") + + endforeach() + endif() + ++list(REMOVE_DUPLICATES OpenCV_LIB_COMPONENTS_) ++string(REPLACE ";" " " OpenCV_LIB_COMPONENTS "${OpenCV_LIB_COMPONENTS_}") ++ + #generate the .pc file ++set(prefix "${CMAKE_INSTALL_PREFIX}") ++set(exec_prefix "\${prefix}") ++set(libdir "\${exec_prefix}/${OPENCV_LIB_INSTALL_PATH}") ++set(includedir "\${prefix}/${OPENCV_INCLUDE_INSTALL_PATH}") ++ + if(INSTALL_TO_MANGLED_PATHS) + set(OPENCV_PC_FILE_NAME "opencv-${OPENCV_VERSION}.pc") + else() +-- +2.4.1 + diff --git a/package/opencv/Config.in b/package/opencv/Config.in index 0b5d1acb661..8bc6c347790 100644 --- a/package/opencv/Config.in +++ b/package/opencv/Config.in @@ -1,18 +1,13 @@ menuconfig BR2_PACKAGE_OPENCV - bool "opencv" + bool "opencv-2.4" select BR2_PACKAGE_ZLIB depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR - depends on !BR2_STATIC_LIBS # include dlfcn.h help OpenCV (Open Source Computer Vision) is a library of programming functions for real time computer vision. - Note that the opencv_core module and the opencv_hal library - are always built and installed, not matter which other - modules are enabled below. - http://opencv.org/ if BR2_PACKAGE_OPENCV @@ -21,216 +16,107 @@ comment "OpenCV modules" config BR2_PACKAGE_OPENCV_LIB_CALIB3D bool "calib3d" - select BR2_PACKAGE_OPENCV_LIB_FEATURES2D - select BR2_PACKAGE_OPENCV_LIB_IMGPROC + default y + help + Include opencv_calib3d module into the OpenCV build. + +config BR2_PACKAGE_OPENCV_LIB_CONTRIB + bool "contrib" + default y help - Include opencv_calib3d (camera calibration and 3d reconstruction) module - into the OpenCV build. + Include opencv_contrib module into the OpenCV build. config BR2_PACKAGE_OPENCV_LIB_FEATURES2D bool "features2d" - select BR2_PACKAGE_OPENCV_LIB_FLANN - select BR2_PACKAGE_OPENCV_LIB_IMGPROC - select BR2_PACKAGE_OPENCV_LIB_ML + default y help - Include opencv_features2d (2d features framework) module into the OpenCV - build. + Include opencv_features2d module into the OpenCV build. config BR2_PACKAGE_OPENCV_LIB_FLANN bool "flann" - # opencv_core dependency is already enabled + default y help - Include opencv_flann (clustering and search in multi-dimensional spaces) - module into the OpenCV build. + Include opencv_flann module into the OpenCV build. -config BR2_PACKAGE_OPENCV_LIB_HIGHGUI - bool "highgui" - select BR2_PACKAGE_OPENCV_LIB_IMGCODECS - select BR2_PACKAGE_OPENCV_LIB_IMGPROC - select BR2_PACKAGE_OPENCV_LIB_VIDEOIO +config BR2_PACKAGE_OPENCV_LIB_GPU + bool "gpu" help - Include opencv_highgui (high-level gui and media i/o) module into the - OpenCV build. + Include opencv_gpu module into the OpenCV build. -if BR2_PACKAGE_OPENCV_LIB_HIGHGUI - -choice - prompt "gui toolkit" - help - GUI toolkit to be used by the opencv_highgui module. - -config BR2_PACKAGE_OPENCV_GUI_NONE - bool "none" - -config BR2_PACKAGE_OPENCV_WITH_GTK - bool "gtk2" - depends on BR2_PACKAGE_LIBGTK2 - -comment "gtk2 support needs libgtk2" - depends on BR2_USE_MMU # libgtk2 -> glib2 - depends on BR2_ARCH_HAS_ATOMICS # libgtk2 -> cairo - depends on !BR2_PACKAGE_LIBGTK2 - -config BR2_PACKAGE_OPENCV_WITH_GTK3 - bool "gtk3" - depends on BR2_PACKAGE_LIBGTK3 - -comment "gtk3 support needs libgtk3" - depends on BR2_USE_MMU # libgtk3 -> glib2 - depends on BR2_ARCH_HAS_ATOMICS # libgtk3 -> cairo - depends on !BR2_PACKAGE_LIBGTK3 - -config BR2_PACKAGE_OPENCV_WITH_QT - bool "qt4" - depends on BR2_PACKAGE_QT - select BR2_PACKAGE_QT_STL - select BR2_PACKAGE_QT_GUI_MODULE - select BR2_PACKAGE_QT_TEST - help - Use Qt4 with QtTest and QtGui modules and STL support, as GUI toolkit. - -comment "qt4 support needs qt" - depends on BR2_USE_MMU # qt - depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5 - -config BR2_PACKAGE_OPENCV_WITH_QT5 - bool "qt5" - depends on BR2_PACKAGE_QT5 - select BR2_PACKAGE_QT5BASE - select BR2_PACKAGE_QT5BASE_CONCURRENT - select BR2_PACKAGE_QT5BASE_GUI - select BR2_PACKAGE_QT5BASE_WIDGETS +config BR2_PACKAGE_OPENCV_LIB_HIGHGUI + bool "highgui" + default y help - Use Qt5 with base, concurrent, test, gui and widgets components, as GUI - toolkit. - -comment "qt5 support needs qt5" - depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5 - -endchoice + Include opencv_highgui module into the OpenCV build. -config BR2_PACKAGE_OPENCV_WITH_OPENGL - bool "opengl support" - # OpenGL support done using Qt5OpenGL, so depends on WITH_QT5 - depends on BR2_PACKAGE_OPENCV_WITH_QT5 - # OpenGL support requires Qt5OpenGL with GL support, not GLES - depends on BR2_PACKAGE_QT5_GL_AVAILABLE - depends on BR2_PACKAGE_HAS_LIBGL - select BR2_PACKAGE_QT5BASE_OPENGL +config BR2_PACKAGE_OPENCV_LIB_IMGPROC + bool "imgproc" + default y help - Enable OpenGL for UI. - -comment "opengl support needs an OpenGL provider" - depends on BR2_PACKAGE_OPENCV_WITH_QT5 - depends on !BR2_PACKAGE_QT5_GL_AVAILABLE || \ - !BR2_PACKAGE_HAS_LIBGL + Include opencv_imgproc module into the OpenCV build. -endif # BR2_PACKAGE_OPENCV_LIB_HIGHGUI - - -config BR2_PACKAGE_OPENCV_LIB_IMGCODECS - bool "imgcodecs" - select BR2_PACKAGE_OPENCV_LIB_IMGPROC +config BR2_PACKAGE_OPENCV_LIB_LEGACY + bool "legacy" + default y help - Include opencv_imgcodecs (image codecs) module into the OpenCV build. + Include opencv_legacy module into the OpenCV build. -config BR2_PACKAGE_OPENCV_LIB_IMGPROC - bool "imgproc" - # opencv_core dependency is already enabled +config BR2_PACKAGE_OPENCV_LIB_ML + bool "ml (machine learning)" + default y help - Include opencv_imgproc (image processing) module into the OpenCV build. + Include opencv_ml module into the OpenCV build. -config BR2_PACKAGE_OPENCV_LIB_ML - bool "ml" - # opencv_core dependency is already enabled +config BR2_PACKAGE_OPENCV_LIB_NONFREE + bool "nonfree" help - Include opencv_ml (machine learning) module into the OpenCV build. + Include opencv_nonfree module into the OpenCV build. config BR2_PACKAGE_OPENCV_LIB_OBJDETECT bool "objdetect" - # opencv_core dependency is already enabled - select BR2_PACKAGE_OPENCV_LIB_IMGPROC - select BR2_PACKAGE_OPENCV_LIB_ML + default y help - Include opencv_objdetect (object detection) module into the OpenCV build. + Include opencv_objdetect module into the OpenCV build. config BR2_PACKAGE_OPENCV_LIB_PHOTO bool "photo" - select BR2_PACKAGE_OPENCV_LIB_IMGPROC + default y help - Include opencv_photo (computational photography) module into the OpenCV - build. + Include opencv_photo module into the OpenCV build. -config BR2_PACKAGE_OPENCV_LIB_PYTHON - bool "python" - depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 - depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 \ - || BR2_mips || BR2_mipsel || BR2_powerpc || BR2_powerpc64 \ - || BR2_sh || BR2_x86_64 # python-numpy - depends on !BR2_TOOLCHAIN_USES_UCLIBC || BR2_i386 || BR2_x86_64 # python-numpy - select BR2_PACKAGE_PYTHON_NUMPY - help - Include opencv_python module into the OpenCV build. - No python example is installed. - -config BR2_PACKAGE_OPENCV_LIB_SHAPE - bool "shape" - # opencv_core dependency is already enabled - select BR2_PACKAGE_OPENCV_LIB_IMGPROC - select BR2_PACKAGE_OPENCV_LIB_VIDEO - help - Include opencv_shape (shape descriptors and matchers) module into the - OpenCV build. +comment "opencv_python module requires numpy which is not yet available." config BR2_PACKAGE_OPENCV_LIB_STITCHING bool "stitching" - select BR2_PACKAGE_OPENCV_LIB_CALIB3D - select BR2_PACKAGE_OPENCV_LIB_FEATURES2D - select BR2_PACKAGE_OPENCV_LIB_IMGPROC - select BR2_PACKAGE_OPENCV_LIB_OBJDETECT + default y help - Include opencv_stitching (images stitching) module into the OpenCV build. + Include opencv_stitching module into the OpenCV build. config BR2_PACKAGE_OPENCV_LIB_SUPERRES bool "superres" - select BR2_PACKAGE_OPENCV_LIB_IMGPROC - select BR2_PACKAGE_OPENCV_LIB_VIDEO + default y help - Include opencv_superres (super resolution) module into the OpenCV build. + Include opencv_superres "super resolution" - module into the OpenCV + build. config BR2_PACKAGE_OPENCV_LIB_TS - bool "ts" - # opencv_core dependency is already enabled + bool "ts (touchscreen)" select BR2_PACKAGE_OPENCV_LIB_HIGHGUI - select BR2_PACKAGE_OPENCV_LIB_IMGCODECS - select BR2_PACKAGE_OPENCV_LIB_IMGPROC - select BR2_PACKAGE_OPENCV_LIB_VIDEOIO + default y help - Include opencv_ts (test) module into the OpenCV build. - -config BR2_PACKAGE_OPENCV_LIB_VIDEOIO - bool "videoio" - select BR2_PACKAGE_OPENCV_LIB_IMGCODECS - select BR2_PACKAGE_OPENCV_LIB_IMGPROC - help - Include opencv_videoio (media i/o) module into the OpenCV build. + Include opencv_ts module into the OpenCV build. config BR2_PACKAGE_OPENCV_LIB_VIDEO bool "video" - select BR2_PACKAGE_OPENCV_LIB_IMGPROC + default y help - Include opencv_video (video analysis) module into the OpenCV build. + Include opencv_video module into the OpenCV build. config BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB bool "videostab" - select BR2_PACKAGE_OPENCV_LIB_CALIB3D - select BR2_PACKAGE_OPENCV_LIB_FEATURES2D - select BR2_PACKAGE_OPENCV_LIB_IMGPROC - select BR2_PACKAGE_OPENCV_LIB_PHOTO - select BR2_PACKAGE_OPENCV_LIB_VIDEO + default y help - Include opencv_videostab (video stabilization) module into the OpenCV - build. + Include opencv_videostab module into the OpenCV build. comment "Test sets" config BR2_PACKAGE_OPENCV_BUILD_TESTS @@ -246,6 +132,7 @@ config BR2_PACKAGE_OPENCV_WITH_FFMPEG select BR2_PACKAGE_BZIP2 select BR2_PACKAGE_FFMPEG select BR2_PACKAGE_FFMPEG_SWSCALE + depends on !BR2_nios2 # ffmpeg help Use ffmpeg from the target system. @@ -285,6 +172,17 @@ comment "gstreamer-1.x support needs a toolchain w/ wchar, threads" endchoice +config BR2_PACKAGE_OPENCV_WITH_GTK + bool "gtk support" + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_WCHAR # libgtk2 -> libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # libgtk2 -> libglib2 + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_MMU # libgtk2 -> glib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk2 -> pango -> harfbuzz + depends on BR2_PACKAGE_OPENCV_LIB_HIGHGUI + select BR2_PACKAGE_LIBGTK2 + config BR2_PACKAGE_OPENCV_WITH_JASPER bool "jpeg2000 support" select BR2_PACKAGE_JASPER @@ -307,6 +205,18 @@ config BR2_PACKAGE_OPENCV_WITH_PNG help Use shared libpng from the target system. +config BR2_PACKAGE_OPENCV_WITH_QT + bool "qt backend support" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_MMU # qt + depends on BR2_PACKAGE_OPENCV_LIB_HIGHGUI + select BR2_PACKAGE_QT + select BR2_PACKAGE_QT_STL + select BR2_PACKAGE_QT_GUI_MODULE + select BR2_PACKAGE_QT_TEST + help + Use Qt with QtTest module and STL support + config BR2_PACKAGE_OPENCV_WITH_TIFF bool "tiff support" select BR2_PACKAGE_TIFF @@ -333,8 +243,5 @@ config BR2_PACKAGE_OPENCV_INSTALL_DATA endif # BR2_PACKAGE_OPENCV -comment "opencv needs a toolchain w/ C++, NPTL, wchar, dynamic library" - depends on !BR2_INSTALL_LIBSTDCPP || \ - !BR2_USE_WCHAR || \ - !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ - BR2_STATIC_LIBS +comment "opencv needs a toolchain w/ C++, NPTL, wchar" + depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS_NPTL) diff --git a/package/opencv/opencv.mk b/package/opencv/opencv.mk index bb1bcd85e9e..21c0268a00f 100644 --- a/package/opencv/opencv.mk +++ b/package/opencv/opencv.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENCV_VERSION = 3.0.0 +OPENCV_VERSION = 2.4.10 OPENCV_SITE = $(call github,itseez,opencv,$(OPENCV_VERSION)) OPENCV_INSTALL_STAGING = YES OPENCV_LICENSE = BSD-3c @@ -12,28 +12,19 @@ OPENCV_LICENSE_FILES = LICENSE # OpenCV component options OPENCV_CONF_OPTS += \ - -DBUILD_DOCS=OFF \ -DBUILD_PERF_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS),ON,OFF) \ -DBUILD_TESTS=$(if $(BR2_PACKAGE_OPENCV_BUILD_TESTS),ON,OFF) \ -DBUILD_WITH_DEBUG_INFO=OFF -ifeq ($(BR2_PACKAGE_OPENCV_BUILD_TESTS)$(BR2_PACKAGE_OPENCV_BUILD_PERF_TESTS),) -OPENCV_CONF_OPTS += -DINSTALL_TEST=OFF -else -OPENCV_CONF_OPTS += -DINSTALL_TEST=ON -endif - # OpenCV build options OPENCV_CONF_OPTS += \ -DBUILD_WITH_STATIC_CRT=OFF \ - -DENABLE_COVERAGE=OFF \ -DENABLE_FAST_MATH=ON \ - -DENABLE_IMPL_COLLECTION=OFF \ -DENABLE_NOISY_WARNINGS=OFF \ -DENABLE_OMIT_FRAME_POINTER=ON \ -DENABLE_PRECOMPILED_HEADERS=OFF \ -DENABLE_PROFILING=OFF \ - -DOPENCV_WARNINGS_ARE_ERRORS=OFF + -DOPENCV_CAN_BREAK_BINARY_COMPATIBILITY=ON # OpenCV link options OPENCV_CONF_OPTS += \ @@ -48,59 +39,40 @@ OPENCV_CONF_OPTS += \ -DINSTALL_CREATE_DISTRIB=OFF # OpenCV module selection -# * Modules on: -# - core: if not set, opencv does not build anything -# - hal: core's dependency -# * Modules off: -# - android*: android stuff -# - apps: programs for training classifiers -# - java: java bindings -# - viz: missing VTK dependency -# - world: all-in-one module -# -# * Contrib modules from [1] are disabled: -# - opencv_contrib package is not available in Buildroot; -# - OPENCV_EXTRA_MODULES_PATH is not set. -# -# [1] https://github.com/Itseez/opencv_contrib OPENCV_CONF_OPTS += \ -DBUILD_opencv_androidcamera=OFF \ -DBUILD_opencv_apps=OFF \ -DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV_LIB_CALIB3D),ON,OFF) \ + -DBUILD_opencv_contrib=$(if $(BR2_PACKAGE_OPENCV_LIB_CONTRIB),ON,OFF) \ -DBUILD_opencv_core=ON \ + -DBUILD_opencv_dynamicuda=OFF \ -DBUILD_opencv_features2d=$(if $(BR2_PACKAGE_OPENCV_LIB_FEATURES2D),ON,OFF) \ -DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV_LIB_FLANN),ON,OFF) \ - -DBUILD_opencv_hal=ON \ + -DBUILD_opencv_gpu=$(if $(BR2_PACKAGE_OPENCV_LIB_GPU),ON,OFF) \ -DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV_LIB_HIGHGUI),ON,OFF) \ - -DBUILD_opencv_imgcodecs=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGCODECS),ON,OFF) \ -DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV_LIB_IMGPROC),ON,OFF) \ -DBUILD_opencv_java=OFF \ + -DBUILD_opencv_legacy=$(if $(BR2_PACKAGE_OPENCV_LIB_LEGACY),ON,OFF) \ -DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV_LIB_ML),ON,OFF) \ + -DBUILD_opencv_nonfree=$(if $(BR2_PACKAGE_OPENCV_LIB_NONFREE),ON,OFF) \ -DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV_LIB_OBJDETECT),ON,OFF) \ + -DBUILD_opencv_ocl=OFF \ -DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV_LIB_PHOTO),ON,OFF) \ - -DBUILD_opencv_shape=$(if $(BR2_PACKAGE_OPENCV_LIB_SHAPE),ON,OFF) \ + -DBUILD_opencv_python=OFF \ -DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV_LIB_STITCHING),ON,OFF) \ -DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV_LIB_SUPERRES),ON,OFF) \ -DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV_LIB_TS),ON,OFF) \ -DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEO),ON,OFF) \ - -DBUILD_opencv_videoio=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOIO),ON,OFF) \ -DBUILD_opencv_videostab=$(if $(BR2_PACKAGE_OPENCV_LIB_VIDEOSTAB),ON,OFF) \ - -DBUILD_opencv_viz=OFF \ -DBUILD_opencv_world=OFF # Hardware support options. # # * PowerPC support is turned off since its only effect is altering CFLAGS, # adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot. -# * fma3 and popcnt support is disabled because according to gcc manual [2], it -# is only available on x86_64 haswell, broadwell and knl architecture. -# -# [2] https://gcc.gnu.org/onlinedocs/gcc-5.1.0/gcc/x86-Options.html#x86-Options OPENCV_CONF_OPTS += \ -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \ -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \ - -DENABLE_FMA3=OFF \ - -DENABLE_POPCNT=OFF \ -DENABLE_POWERPC=OFF \ -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \ -DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \ @@ -111,19 +83,6 @@ OPENCV_CONF_OPTS += \ # Cuda stuff OPENCV_CONF_OPTS += \ - -DBUILD_CUDA_STUBS=OFF \ - -DBUILD_opencv_cudaarithm=OFF \ - -DBUILD_opencv_cudabgsegm=OFF \ - -DBUILD_opencv_cudacodec=OFF \ - -DBUILD_opencv_cudafeatures2d=OFF \ - -DBUILD_opencv_cudafilters=OFF \ - -DBUILD_opencv_cudaimgproc=OFF \ - -DBUILD_opencv_cudalegacy=OFF \ - -DBUILD_opencv_cudaobjdetect=OFF \ - -DBUILD_opencv_cudaoptflow=OFF \ - -DBUILD_opencv_cudastereo=OFF \ - -DBUILD_opencv_cudawarping=OFF \ - -DBUILD_opencv_cudev=OFF \ -DWITH_CUBLAS=OFF \ -DWITH_CUDA=OFF \ -DWITH_CUFFT=OFF @@ -138,10 +97,8 @@ OPENCV_CONF_OPTS += \ # Intel stuff OPENCV_CONF_OPTS += \ - -DBUILD_WITH_DYNAMIC_IPP=OFF \ -DWITH_INTELPERC=OFF \ -DWITH_IPP=OFF \ - -DWITH_IPP_A=OFF \ -DWITH_TBB=OFF # Smartek stuff @@ -155,11 +112,10 @@ OPENCV_CONF_OPTS += -DWITH_XIMEA=OFF # Non-Linux support (Android options) must remain OFF: OPENCV_CONF_OPTS += \ - -DANDROID=OFF \ -DBUILD_ANDROID_CAMERA_WRAPPER=OFF \ -DBUILD_ANDROID_EXAMPLES=OFF \ - -DBUILD_ANDROID_SERVICE=OFF \ -DBUILD_FAT_JAVA_LIB=OFF \ + -DBUILD_JAVA_SUPPORT=OFF \ -DINSTALL_ANDROID_EXAMPLES=OFF \ -DWITH_ANDROID_CAMERA=OFF @@ -174,17 +130,15 @@ OPENCV_CONF_OPTS += \ -DWITH_CSTRIPES=OFF \ -DWITH_DSHOW=OFF \ -DWITH_MSMF=OFF \ - -DWITH_PTHREADS_PF=OFF \ -DWITH_VFW=OFF \ -DWITH_VIDEOINPUT=OFF \ -DWITH_WIN32UI=OFF -# Software/3rd-party support options: -# - disable all examples +# Software/3rd-party support options. OPENCV_CONF_OPTS += \ - -DBUILD_EXAMPLES=OFF \ -DBUILD_JASPER=OFF \ -DBUILD_JPEG=OFF \ + -DBUILD_NEW_PYTHON_SUPPORT=OFF \ -DBUILD_OPENEXR=OFF \ -DBUILD_PNG=OFF \ -DBUILD_TIFF=OFF \ @@ -197,20 +151,14 @@ OPENCV_CONF_OPTS += \ # - eigen: OpenCV does not use it, not take any benefit from it. OPENCV_CONF_OPTS += \ -DWITH_1394=OFF \ - -DWITH_CLP=OFF \ -DWITH_EIGEN=OFF \ - -DWITH_GDAL=OFF \ - -DWITH_GPHOTO2=OFF \ + -DWITH_IMAGEIO=OFF \ -DWITH_OPENCL=OFF \ - -DWITH_OPENCL_SVM=OFF \ -DWITH_OPENEXR=OFF \ -DWITH_OPENGL=OFF \ -DWITH_OPENMP=OFF \ - -DWITH_OPENNI2=OFF \ -DWITH_OPENNI=OFF \ -DWITH_UNICAP=OFF \ - -DWITH_VTK=OFF \ - -DWITH_WEBP=OFF \ -DWITH_XINE=OFF OPENCV_DEPENDENCIES += zlib @@ -236,18 +184,11 @@ else OPENCV_CONF_OPTS += -DWITH_GSTREAMER=OFF endif -ifeq ($(BR2_PACKAGE_OPENCV_WITH_GTK)$(BR2_PACKAGE_OPENCV_WITH_GTK3),) -OPENCV_CONF_OPTS += -DWITH_GTK=OFF -DWITH_GTK_2_X=OFF -endif - ifeq ($(BR2_PACKAGE_OPENCV_WITH_GTK),y) -OPENCV_CONF_OPTS += -DWITH_GTK=ON -DWITH_GTK_2_X=ON +OPENCV_CONF_OPTS += -DWITH_GTK=ON OPENCV_DEPENDENCIES += libgtk2 -endif - -ifeq ($(BR2_PACKAGE_OPENCV_WITH_GTK3),y) -OPENCV_CONF_OPTS += -DWITH_GTK=ON -DWITH_GTK_2_X=OFF -OPENCV_DEPENDENCIES += libgtk3 +else +OPENCV_CONF_OPTS += -DWITH_GTK=OFF endif ifeq ($(BR2_PACKAGE_OPENCV_WITH_JASPER),y) @@ -264,15 +205,6 @@ else OPENCV_CONF_OPTS += -DWITH_JPEG=OFF endif -ifeq ($(BR2_PACKAGE_OPENCV_WITH_OPENGL),y) -OPENCV_CONF_OPTS += -DWITH_OPENGL=ON -OPENCV_DEPENDENCIES += libgl -else -OPENCV_CONF_OPTS += -DWITH_OPENGL=OFF -endif - -OPENCV_CONF_OPTS += -DWITH_OPENMP=$(if $(BR2_GCC_ENABLE_OPENMP),ON,OFF) - ifeq ($(BR2_PACKAGE_OPENCV_WITH_PNG),y) OPENCV_CONF_OPTS += -DWITH_PNG=ON OPENCV_DEPENDENCIES += libpng @@ -280,18 +212,11 @@ else OPENCV_CONF_OPTS += -DWITH_PNG=OFF endif -ifeq ($(BR2_PACKAGE_OPENCV_WITH_QT)$(BR2_PACKAGE_OPENCV_WITH_QT5),) -OPENCV_CONF_OPTS += -DWITH_QT=OFF -endif - ifeq ($(BR2_PACKAGE_OPENCV_WITH_QT),y) OPENCV_CONF_OPTS += -DWITH_QT=4 OPENCV_DEPENDENCIES += qt -endif - -ifeq ($(BR2_PACKAGE_OPENCV_WITH_QT5),y) -OPENCV_CONF_OPTS += -DWITH_QT=5 -OPENCV_DEPENDENCIES += qt5base +else +OPENCV_CONF_OPTS += -DWITH_QT=OFF endif ifeq ($(BR2_PACKAGE_OPENCV_WITH_TIFF),y) @@ -310,37 +235,6 @@ else OPENCV_CONF_OPTS += -DWITH_V4L=OFF -DWITH_LIBV4L=OFF endif -ifeq ($(BR2_PACKAGE_OPENCV_LIB_PYTHON),y) -ifeq ($(BR2_PACKAGE_PYTHON),y) -OPENCV_CONF_OPTS += \ - -DBUILD_opencv_python2=ON \ - -DBUILD_opencv_python3=OFF \ - -DPYTHON2_EXECUTABLE=$(HOST_DIR)/usr/bin/python2 \ - -DPYTHON2_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON_VERSION_MAJOR) \ - -DPYTHON2_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON_VERSION_MAJOR).so \ - -DPYTHON2_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/numpy/core/include \ - -DPYTHON2_PACKAGES_PATH=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages \ - -DPYTHON2_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION) -OPENCV_DEPENDENCIES += python -else -OPENCV_CONF_OPTS += \ - -DBUILD_opencv_python2=OFF \ - -DBUILD_opencv_python3=ON \ - -DPYTHON3_EXECUTABLE=$(HOST_DIR)/usr/bin/python3 \ - -DPYTHON3_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON3_VERSION_MAJOR)m \ - -DPYTHON3_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON3_VERSION_MAJOR)m.so \ - -DPYTHON3_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/numpy/core/include \ - -DPYTHON3_PACKAGES_PATH=/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages \ - -DPYTHON3_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION) -OPENCV_DEPENDENCIES += python3 -endif -OPENCV_DEPENDENCIES += python-numpy -else -OPENCV_CONF_OPTS += \ - -DBUILD_opencv_python2=OFF \ - -DBUILD_opencv_python3=OFF -endif - # Installation hooks: define OPENCV_CLEAN_INSTALL_DOC $(RM) -fr $(TARGET_DIR)/usr/share/OpenCV/doc diff --git a/package/opencv/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch b/package/opencv3/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch similarity index 100% rename from package/opencv/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch rename to package/opencv3/0001-Fixed-compilation-of-pthread-based-parallel_for-with-gcc-4.4.3.patch diff --git a/package/opencv/0002-fix-support-for-pthreads-parallel_for.patch b/package/opencv3/0002-fix-support-for-pthreads-parallel_for.patch similarity index 100% rename from package/opencv/0002-fix-support-for-pthreads-parallel_for.patch rename to package/opencv3/0002-fix-support-for-pthreads-parallel_for.patch diff --git a/package/opencv3/Config.in b/package/opencv3/Config.in new file mode 100644 index 00000000000..3a185d68719 --- /dev/null +++ b/package/opencv3/Config.in @@ -0,0 +1,339 @@ +menuconfig BR2_PACKAGE_OPENCV3 + bool "opencv3" + select BR2_PACKAGE_ZLIB + depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_WCHAR + depends on !BR2_STATIC_LIBS # include dlfcn.h + depends on !BR2_PACKAGE_OPENCV + help + OpenCV (Open Source Computer Vision) is a library of programming + functions for real time computer vision. + + Note that the opencv_core module and the opencv_hal library + are always built and installed, not matter which other + modules are enabled below. + + http://opencv.org/ + +if BR2_PACKAGE_OPENCV3 + +comment "OpenCV modules" + +config BR2_PACKAGE_OPENCV3_LIB_CALIB3D + bool "calib3d" + select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + help + Include opencv_calib3d (camera calibration and 3d reconstruction) module + into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_FEATURES2D + bool "features2d" + select BR2_PACKAGE_OPENCV3_LIB_FLANN + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + select BR2_PACKAGE_OPENCV3_LIB_ML + help + Include opencv_features2d (2d features framework) module into the OpenCV + build. + +config BR2_PACKAGE_OPENCV3_LIB_FLANN + bool "flann" + # opencv_core dependency is already enabled + help + Include opencv_flann (clustering and search in multi-dimensional spaces) + module into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_HIGHGUI + bool "highgui" + select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + select BR2_PACKAGE_OPENCV3_LIB_VIDEOIO + help + Include opencv_highgui (high-level gui and media i/o) module into the + OpenCV build. + +if BR2_PACKAGE_OPENCV3_LIB_HIGHGUI + +choice + prompt "gui toolkit" + help + GUI toolkit to be used by the opencv_highgui module. + +config BR2_PACKAGE_OPENCV3_GUI_NONE + bool "none" + +config BR2_PACKAGE_OPENCV3_WITH_GTK + bool "gtk2" + depends on BR2_PACKAGE_LIBGTK2 + +comment "gtk2 support needs libgtk2" + depends on BR2_USE_MMU # libgtk2 -> glib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_PACKAGE_LIBGTK2 + +config BR2_PACKAGE_OPENCV3_WITH_GTK3 + bool "gtk3" + depends on BR2_PACKAGE_LIBGTK3 + +comment "gtk3 support needs libgtk3" + depends on BR2_USE_MMU # libgtk3 -> glib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_PACKAGE_LIBGTK3 + +config BR2_PACKAGE_OPENCV3_WITH_QT + bool "qt4" + depends on BR2_PACKAGE_QT + select BR2_PACKAGE_QT_STL + select BR2_PACKAGE_QT_GUI_MODULE + select BR2_PACKAGE_QT_TEST + help + Use Qt4 with QtTest and QtGui modules and STL support, as GUI toolkit. + +comment "qt4 support needs qt" + depends on BR2_USE_MMU # qt + depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5 + +config BR2_PACKAGE_OPENCV3_WITH_QT5 + bool "qt5" + depends on BR2_PACKAGE_QT5 + select BR2_PACKAGE_QT5BASE + select BR2_PACKAGE_QT5BASE_CONCURRENT + select BR2_PACKAGE_QT5BASE_GUI + select BR2_PACKAGE_QT5BASE_WIDGETS + help + Use Qt5 with base, concurrent, test, gui and widgets components, as GUI + toolkit. + +comment "qt5 support needs qt5" + depends on !BR2_PACKAGE_QT && !BR2_PACKAGE_QT5 + +endchoice + +config BR2_PACKAGE_OPENCV3_WITH_OPENGL + bool "opengl support" + # OpenGL support done using Qt5OpenGL, so depends on WITH_QT5 + depends on BR2_PACKAGE_OPENCV3_WITH_QT5 + # OpenGL support requires Qt5OpenGL with GL support, not GLES + depends on BR2_PACKAGE_QT5_GL_AVAILABLE + depends on BR2_PACKAGE_HAS_LIBGL + select BR2_PACKAGE_QT5BASE_OPENGL + help + Enable OpenGL for UI. + +comment "opengl support needs an OpenGL provider" + depends on BR2_PACKAGE_OPENCV3_WITH_QT5 + depends on !BR2_PACKAGE_QT5_GL_AVAILABLE || \ + !BR2_PACKAGE_HAS_LIBGL + +endif # BR2_PACKAGE_OPENCV3_LIB_HIGHGUI + + +config BR2_PACKAGE_OPENCV3_LIB_IMGCODECS + bool "imgcodecs" + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + help + Include opencv_imgcodecs (image codecs) module into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_IMGPROC + bool "imgproc" + # opencv_core dependency is already enabled + help + Include opencv_imgproc (image processing) module into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_ML + bool "ml" + # opencv_core dependency is already enabled + help + Include opencv_ml (machine learning) module into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_OBJDETECT + bool "objdetect" + # opencv_core dependency is already enabled + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + select BR2_PACKAGE_OPENCV3_LIB_ML + help + Include opencv_objdetect (object detection) module into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_PHOTO + bool "photo" + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + help + Include opencv_photo (computational photography) module into the OpenCV + build. + +config BR2_PACKAGE_OPENCV3_LIB_PYTHON + bool "python" + depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 + depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS + select BR2_PACKAGE_PYTHON_NUMPY + help + Include opencv_python module into the OpenCV build. + No python example is installed. + +config BR2_PACKAGE_OPENCV3_LIB_SHAPE + bool "shape" + # opencv_core dependency is already enabled + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + select BR2_PACKAGE_OPENCV3_LIB_VIDEO + help + Include opencv_shape (shape descriptors and matchers) module into the + OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_STITCHING + bool "stitching" + select BR2_PACKAGE_OPENCV3_LIB_CALIB3D + select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT + help + Include opencv_stitching (images stitching) module into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_SUPERRES + bool "superres" + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + select BR2_PACKAGE_OPENCV3_LIB_VIDEO + help + Include opencv_superres (super resolution) module into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_TS + bool "ts" + # opencv_core dependency is already enabled + select BR2_PACKAGE_OPENCV3_LIB_HIGHGUI + select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + select BR2_PACKAGE_OPENCV3_LIB_VIDEOIO + help + Include opencv_ts (test) module into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_VIDEOIO + bool "videoio" + select BR2_PACKAGE_OPENCV3_LIB_IMGCODECS + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + help + Include opencv_videoio (media i/o) module into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_VIDEO + bool "video" + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + help + Include opencv_video (video analysis) module into the OpenCV build. + +config BR2_PACKAGE_OPENCV3_LIB_VIDEOSTAB + bool "videostab" + select BR2_PACKAGE_OPENCV3_LIB_CALIB3D + select BR2_PACKAGE_OPENCV3_LIB_FEATURES2D + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + select BR2_PACKAGE_OPENCV3_LIB_PHOTO + select BR2_PACKAGE_OPENCV3_LIB_VIDEO + help + Include opencv_videostab (video stabilization) module into the OpenCV + build. + +comment "Test sets" +config BR2_PACKAGE_OPENCV3_BUILD_TESTS + bool "build tests" + +config BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS + bool "build performance tests" + +comment "3rd party support" + +config BR2_PACKAGE_OPENCV3_WITH_FFMPEG + bool "ffmpeg support" + select BR2_PACKAGE_BZIP2 + select BR2_PACKAGE_FFMPEG + select BR2_PACKAGE_FFMPEG_SWSCALE + depends on !BR2_nios2 # ffmpeg + help + Use ffmpeg from the target system. + +choice + prompt "gstreamer support" + help + OpenCV prefers gstreamer-1 over gstreamer-0.10. + +config BR2_PACKAGE_OPENCV3_WITHOUT_GSTREAMER + bool "none" + +config BR2_PACKAGE_OPENCV3_WITH_GSTREAMER + bool "gstreamer-0.10" + depends on BR2_USE_MMU # gstreamer -> libglib2 + depends on BR2_USE_WCHAR # gstreamer -> libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer -> libglib2 + select BR2_PACKAGE_GSTREAMER + select BR2_PACKAGE_GST_PLUGINS_BASE + select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP + +comment "gstreamer-0.10 support needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + +config BR2_PACKAGE_OPENCV3_WITH_GSTREAMER1 + bool "gstreamer-1.x" + depends on BR2_USE_MMU # gstreamer1 -> libglib2 + depends on BR2_USE_WCHAR # gstreamer1 -> libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # gstreamer1 -> libglib2 + select BR2_PACKAGE_GSTREAMER1 + select BR2_PACKAGE_GST1_PLUGINS_BASE + select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP + +comment "gstreamer-1.x support needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + +endchoice + +config BR2_PACKAGE_OPENCV3_WITH_JASPER + bool "jpeg2000 support" + select BR2_PACKAGE_JASPER + help + Enable jpeg2000 support. + + Note: this does not use the libjasper bundled with opencv, + but uses the libjasper package installed system-wide by + Buildroot. + +config BR2_PACKAGE_OPENCV3_WITH_JPEG + bool "jpeg support" + select BR2_PACKAGE_JPEG + help + Use shared libjpeg from the target system. + +config BR2_PACKAGE_OPENCV3_WITH_PNG + bool "png support" + select BR2_PACKAGE_LIBPNG + help + Use shared libpng from the target system. + +config BR2_PACKAGE_OPENCV3_WITH_TIFF + bool "tiff support" + select BR2_PACKAGE_TIFF + help + Use shared libtiff from the target system. + +config BR2_PACKAGE_OPENCV3_WITH_V4L + bool "v4l support" + help + Enable Video 4 Linux support. + + If the package libv4l is enabled, its support is automatically enabled. + +comment "Install options" + +config BR2_PACKAGE_OPENCV3_INSTALL_DATA + bool "install extra data" + help + Install various data that is used by cv libraries and/or demo + applications, specifically for haarcascades and lbpcascades + features. + + For further information: see OpenCV documentation. + +endif # BR2_PACKAGE_OPENCV3 + +comment "opencv3 needs a toolchain w/ C++, NPTL, wchar, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || \ + !BR2_USE_WCHAR || \ + !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + BR2_STATIC_LIBS diff --git a/package/opencv3/opencv3.mk b/package/opencv3/opencv3.mk new file mode 100644 index 00000000000..3ce78b5c034 --- /dev/null +++ b/package/opencv3/opencv3.mk @@ -0,0 +1,363 @@ +################################################################################ +# +# opencv3 +# +################################################################################ + +OPENCV3_VERSION = 3.0.0 +OPENCV3_SITE = $(call github,itseez,opencv,$(OPENCV3_VERSION)) +OPENCV3_INSTALL_STAGING = YES +OPENCV3_LICENSE = BSD-3c +OPENCV3_LICENSE_FILES = LICENSE + +# OpenCV component options +OPENCV3_CONF_OPTS += \ + -DBUILD_DOCS=OFF \ + -DBUILD_PERF_TESTS=$(if $(BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS),ON,OFF) \ + -DBUILD_TESTS=$(if $(BR2_PACKAGE_OPENCV3_BUILD_TESTS),ON,OFF) \ + -DBUILD_WITH_DEBUG_INFO=OFF + +ifeq ($(BR2_PACKAGE_OPENCV3_BUILD_TESTS)$(BR2_PACKAGE_OPENCV3_BUILD_PERF_TESTS),) +OPENCV3_CONF_OPTS += -DINSTALL_TEST=OFF +else +OPENCV3_CONF_OPTS += -DINSTALL_TEST=ON +endif + +# OpenCV build options +OPENCV3_CONF_OPTS += \ + -DBUILD_WITH_STATIC_CRT=OFF \ + -DENABLE_COVERAGE=OFF \ + -DENABLE_FAST_MATH=ON \ + -DENABLE_IMPL_COLLECTION=OFF \ + -DENABLE_NOISY_WARNINGS=OFF \ + -DENABLE_OMIT_FRAME_POINTER=ON \ + -DENABLE_PRECOMPILED_HEADERS=OFF \ + -DENABLE_PROFILING=OFF \ + -DOPENCV3_WARNINGS_ARE_ERRORS=OFF + +# OpenCV link options +OPENCV3_CONF_OPTS += \ + -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF \ + -DCMAKE_SKIP_RPATH=OFF \ + -DCMAKE_USE_RELATIVE_PATHS=OFF + +# OpenCV packaging options: +OPENCV3_CONF_OPTS += \ + -DBUILD_PACKAGE=OFF \ + -DENABLE_SOLUTION_FOLDERS=OFF \ + -DINSTALL_CREATE_DISTRIB=OFF + +# OpenCV module selection +# * Modules on: +# - core: if not set, opencv does not build anything +# - hal: core's dependency +# * Modules off: +# - android*: android stuff +# - apps: programs for training classifiers +# - java: java bindings +# - viz: missing VTK dependency +# - world: all-in-one module +# +# * Contrib modules from [1] are disabled: +# - opencv_contrib package is not available in Buildroot; +# - OPENCV3_EXTRA_MODULES_PATH is not set. +# +# [1] https://github.com/Itseez/opencv_contrib +OPENCV3_CONF_OPTS += \ + -DBUILD_opencv_androidcamera=OFF \ + -DBUILD_opencv_apps=OFF \ + -DBUILD_opencv_calib3d=$(if $(BR2_PACKAGE_OPENCV3_LIB_CALIB3D),ON,OFF) \ + -DBUILD_opencv_core=ON \ + -DBUILD_opencv_features2d=$(if $(BR2_PACKAGE_OPENCV3_LIB_FEATURES2D),ON,OFF) \ + -DBUILD_opencv_flann=$(if $(BR2_PACKAGE_OPENCV3_LIB_FLANN),ON,OFF) \ + -DBUILD_opencv_hal=ON \ + -DBUILD_opencv_highgui=$(if $(BR2_PACKAGE_OPENCV3_LIB_HIGHGUI),ON,OFF) \ + -DBUILD_opencv_imgcodecs=$(if $(BR2_PACKAGE_OPENCV3_LIB_IMGCODECS),ON,OFF) \ + -DBUILD_opencv_imgproc=$(if $(BR2_PACKAGE_OPENCV3_LIB_IMGPROC),ON,OFF) \ + -DBUILD_opencv_java=OFF \ + -DBUILD_opencv_ml=$(if $(BR2_PACKAGE_OPENCV3_LIB_ML),ON,OFF) \ + -DBUILD_opencv_objdetect=$(if $(BR2_PACKAGE_OPENCV3_LIB_OBJDETECT),ON,OFF) \ + -DBUILD_opencv_photo=$(if $(BR2_PACKAGE_OPENCV3_LIB_PHOTO),ON,OFF) \ + -DBUILD_opencv_shape=$(if $(BR2_PACKAGE_OPENCV3_LIB_SHAPE),ON,OFF) \ + -DBUILD_opencv_stitching=$(if $(BR2_PACKAGE_OPENCV3_LIB_STITCHING),ON,OFF) \ + -DBUILD_opencv_superres=$(if $(BR2_PACKAGE_OPENCV3_LIB_SUPERRES),ON,OFF) \ + -DBUILD_opencv_ts=$(if $(BR2_PACKAGE_OPENCV3_LIB_TS),ON,OFF) \ + -DBUILD_opencv_video=$(if $(BR2_PACKAGE_OPENCV3_LIB_VIDEO),ON,OFF) \ + -DBUILD_opencv_videoio=$(if $(BR2_PACKAGE_OPENCV3_LIB_VIDEOIO),ON,OFF) \ + -DBUILD_opencv_videostab=$(if $(BR2_PACKAGE_OPENCV3_LIB_VIDEOSTAB),ON,OFF) \ + -DBUILD_opencv_viz=OFF \ + -DBUILD_opencv_world=OFF + +# Hardware support options. +# +# * PowerPC support is turned off since its only effect is altering CFLAGS, +# adding '-mcpu=G3 -mtune=G5' to them, which is already handled by Buildroot. +# * fma3 and popcnt support is disabled because according to gcc manual [2], it +# is only available on x86_64 haswell, broadwell and knl architecture. +# +# [2] https://gcc.gnu.org/onlinedocs/gcc-5.1.0/gcc/x86-Options.html#x86-Options +OPENCV3_CONF_OPTS += \ + -DENABLE_AVX=$(if $(BR2_X86_CPU_HAS_AVX),ON,OFF) \ + -DENABLE_AVX2=$(if $(BR2_X86_CPU_HAS_AVX2),ON,OFF) \ + -DENABLE_FMA3=OFF \ + -DENABLE_POPCNT=OFF \ + -DENABLE_POWERPC=OFF \ + -DENABLE_SSE=$(if $(BR2_X86_CPU_HAS_SSE),ON,OFF) \ + -DENABLE_SSE2=$(if $(BR2_X86_CPU_HAS_SSE2),ON,OFF) \ + -DENABLE_SSE3=$(if $(BR2_X86_CPU_HAS_SSE3),ON,OFF) \ + -DENABLE_SSE41=$(if $(BR2_X86_CPU_HAS_SSE4),ON,OFF) \ + -DENABLE_SSE42=$(if $(BR2_X86_CPU_HAS_SSE42),ON,OFF) \ + -DENABLE_SSSE3=$(if $(BR2_X86_CPU_HAS_SSSE3),ON,OFF) + +# Cuda stuff +OPENCV3_CONF_OPTS += \ + -DBUILD_CUDA_STUBS=OFF \ + -DBUILD_opencv_cudaarithm=OFF \ + -DBUILD_opencv_cudabgsegm=OFF \ + -DBUILD_opencv_cudacodec=OFF \ + -DBUILD_opencv_cudafeatures2d=OFF \ + -DBUILD_opencv_cudafilters=OFF \ + -DBUILD_opencv_cudaimgproc=OFF \ + -DBUILD_opencv_cudalegacy=OFF \ + -DBUILD_opencv_cudaobjdetect=OFF \ + -DBUILD_opencv_cudaoptflow=OFF \ + -DBUILD_opencv_cudastereo=OFF \ + -DBUILD_opencv_cudawarping=OFF \ + -DBUILD_opencv_cudev=OFF \ + -DWITH_CUBLAS=OFF \ + -DWITH_CUDA=OFF \ + -DWITH_CUFFT=OFF + +# NVidia stuff +OPENCV3_CONF_OPTS += -DWITH_NVCUVID=OFF + +# AMD stuff +OPENCV3_CONF_OPTS += \ + -DWITH_OPENCLAMDBLAS=OFF \ + -DWITH_OPENCLAMDFFT=OFF + +# Intel stuff +OPENCV3_CONF_OPTS += \ + -DBUILD_WITH_DYNAMIC_IPP=OFF \ + -DWITH_INTELPERC=OFF \ + -DWITH_IPP=OFF \ + -DWITH_IPP_A=OFF \ + -DWITH_TBB=OFF + +# Smartek stuff +OPENCV3_CONF_OPTS += -DWITH_GIGEAPI=OFF + +# Prosilica stuff +OPENCV3_CONF_OPTS += -DWITH_PVAPI=OFF + +# Ximea stuff +OPENCV3_CONF_OPTS += -DWITH_XIMEA=OFF + +# Non-Linux support (Android options) must remain OFF: +OPENCV3_CONF_OPTS += \ + -DANDROID=OFF \ + -DBUILD_ANDROID_CAMERA_WRAPPER=OFF \ + -DBUILD_ANDROID_EXAMPLES=OFF \ + -DBUILD_ANDROID_SERVICE=OFF \ + -DBUILD_FAT_JAVA_LIB=OFF \ + -DINSTALL_ANDROID_EXAMPLES=OFF \ + -DWITH_ANDROID_CAMERA=OFF + +# Non-Linux support (Mac OSX options) must remain OFF: +OPENCV3_CONF_OPTS += \ + -DWITH_AVFOUNDATION=OFF \ + -DWITH_CARBON=OFF \ + -DWITH_QUICKTIME=OFF + +# Non-Linux support (Windows options) must remain OFF: +OPENCV3_CONF_OPTS += \ + -DWITH_CSTRIPES=OFF \ + -DWITH_DSHOW=OFF \ + -DWITH_MSMF=OFF \ + -DWITH_PTHREADS_PF=OFF \ + -DWITH_VFW=OFF \ + -DWITH_VIDEOINPUT=OFF \ + -DWITH_WIN32UI=OFF + +# Software/3rd-party support options: +# - disable all examples +OPENCV3_CONF_OPTS += \ + -DBUILD_EXAMPLES=OFF \ + -DBUILD_JASPER=OFF \ + -DBUILD_JPEG=OFF \ + -DBUILD_OPENEXR=OFF \ + -DBUILD_PNG=OFF \ + -DBUILD_TIFF=OFF \ + -DBUILD_ZLIB=OFF \ + -DINSTALL_C_EXAMPLES=OFF \ + -DINSTALL_PYTHON_EXAMPLES=OFF \ + -DINSTALL_TO_MANGLED_PATHS=OFF + +# Disabled features (mostly because they are not available in Buildroot), but +# - eigen: OpenCV does not use it, not take any benefit from it. +OPENCV3_CONF_OPTS += \ + -DWITH_1394=OFF \ + -DWITH_CLP=OFF \ + -DWITH_EIGEN=OFF \ + -DWITH_GDAL=OFF \ + -DWITH_GPHOTO2=OFF \ + -DWITH_OPENCL=OFF \ + -DWITH_OPENCL_SVM=OFF \ + -DWITH_OPENEXR=OFF \ + -DWITH_OPENGL=OFF \ + -DWITH_OPENMP=OFF \ + -DWITH_OPENNI2=OFF \ + -DWITH_OPENNI=OFF \ + -DWITH_UNICAP=OFF \ + -DWITH_VTK=OFF \ + -DWITH_WEBP=OFF \ + -DWITH_XINE=OFF + +OPENCV3_DEPENDENCIES += zlib + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_FFMPEG),y) +OPENCV3_CONF_OPTS += -DWITH_FFMPEG=ON +OPENCV3_DEPENDENCIES += ffmpeg bzip2 +else +OPENCV3_CONF_OPTS += -DWITH_FFMPEG=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_GSTREAMER),y) +OPENCV3_CONF_OPTS += -DWITH_GSTREAMER_0_10=ON +OPENCV3_DEPENDENCIES += gstreamer gst-plugins-base +else +OPENCV3_CONF_OPTS += -DWITH_GSTREAMER_0_10=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_GSTREAMER1),y) +OPENCV3_CONF_OPTS += -DWITH_GSTREAMER=ON +OPENCV3_DEPENDENCIES += gstreamer1 gst1-plugins-base +else +OPENCV3_CONF_OPTS += -DWITH_GSTREAMER=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_GTK)$(BR2_PACKAGE_OPENCV3_WITH_GTK3),) +OPENCV3_CONF_OPTS += -DWITH_GTK=OFF -DWITH_GTK_2_X=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_GTK),y) +OPENCV3_CONF_OPTS += -DWITH_GTK=ON -DWITH_GTK_2_X=ON +OPENCV3_DEPENDENCIES += libgtk2 +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_GTK3),y) +OPENCV3_CONF_OPTS += -DWITH_GTK=ON -DWITH_GTK_2_X=OFF +OPENCV3_DEPENDENCIES += libgtk3 +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_JASPER),y) +OPENCV3_CONF_OPTS += -DWITH_JASPER=ON +OPENCV3_DEPENDENCIES += jasper +else +OPENCV3_CONF_OPTS += -DWITH_JASPER=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_JPEG),y) +OPENCV3_CONF_OPTS += -DWITH_JPEG=ON +OPENCV3_DEPENDENCIES += jpeg +else +OPENCV3_CONF_OPTS += -DWITH_JPEG=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_OPENGL),y) +OPENCV3_CONF_OPTS += -DWITH_OPENGL=ON +OPENCV3_DEPENDENCIES += libgl +else +OPENCV3_CONF_OPTS += -DWITH_OPENGL=OFF +endif + +OPENCV3_CONF_OPTS += -DWITH_OPENMP=$(if $(BR2_GCC_ENABLE_OPENMP),ON,OFF) + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_PNG),y) +OPENCV3_CONF_OPTS += -DWITH_PNG=ON +OPENCV3_DEPENDENCIES += libpng +else +OPENCV3_CONF_OPTS += -DWITH_PNG=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_QT)$(BR2_PACKAGE_OPENCV3_WITH_QT5),) +OPENCV3_CONF_OPTS += -DWITH_QT=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_QT),y) +OPENCV3_CONF_OPTS += -DWITH_QT=4 +OPENCV3_DEPENDENCIES += qt +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_QT5),y) +OPENCV3_CONF_OPTS += -DWITH_QT=5 +OPENCV3_DEPENDENCIES += qt5base +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_TIFF),y) +OPENCV3_CONF_OPTS += -DWITH_TIFF=ON +OPENCV3_DEPENDENCIES += tiff +else +OPENCV3_CONF_OPTS += -DWITH_TIFF=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_WITH_V4L),y) +OPENCV3_CONF_OPTS += \ + -DWITH_LIBV4L=$(if $(BR2_PACKAGE_LIBV4L),ON,OFF) \ + -DWITH_V4L=ON +OPENCV3_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBV4L),libv4l) +else +OPENCV3_CONF_OPTS += -DWITH_V4L=OFF -DWITH_LIBV4L=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENCV3_LIB_PYTHON),y) +ifeq ($(BR2_PACKAGE_PYTHON),y) +OPENCV3_CONF_OPTS += \ + -DBUILD_opencv_python2=ON \ + -DBUILD_opencv_python3=OFF \ + -DPYTHON2_EXECUTABLE=$(HOST_DIR)/usr/bin/python2 \ + -DPYTHON2_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON_VERSION_MAJOR) \ + -DPYTHON2_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON_VERSION_MAJOR).so \ + -DPYTHON2_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/numpy/core/include \ + -DPYTHON2_PACKAGES_PATH=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages \ + -DPYTHON2_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION) +OPENCV3_DEPENDENCIES += python +else +OPENCV3_CONF_OPTS += \ + -DBUILD_opencv_python2=OFF \ + -DBUILD_opencv_python3=ON \ + -DPYTHON3_EXECUTABLE=$(HOST_DIR)/usr/bin/python3 \ + -DPYTHON3_INCLUDE_PATH=$(STAGING_DIR)/usr/include/python$(PYTHON3_VERSION_MAJOR)m \ + -DPYTHON3_LIBRARIES=$(STAGING_DIR)/usr/lib/libpython$(PYTHON3_VERSION_MAJOR)m.so \ + -DPYTHON3_NUMPY_INCLUDE_DIRS=$(STAGING_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages/numpy/core/include \ + -DPYTHON3_PACKAGES_PATH=/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages \ + -DPYTHON3_NUMPY_VERSION=$(PYTHON_NUMPY_VERSION) +OPENCV3_DEPENDENCIES += python3 +endif +OPENCV3_DEPENDENCIES += python-numpy +else +OPENCV3_CONF_OPTS += \ + -DBUILD_opencv_python2=OFF \ + -DBUILD_opencv_python3=OFF +endif + +# Installation hooks: +define OPENCV3_CLEAN_INSTALL_DOC + $(RM) -fr $(TARGET_DIR)/usr/share/OpenCV/doc +endef +OPENCV3_POST_INSTALL_TARGET_HOOKS += OPENCV3_CLEAN_INSTALL_DOC + +define OPENCV3_CLEAN_INSTALL_CMAKE + $(RM) -f $(TARGET_DIR)/usr/share/OpenCV/OpenCVConfig*.cmake +endef +OPENCV3_POST_INSTALL_TARGET_HOOKS += OPENCV3_CLEAN_INSTALL_CMAKE + +ifneq ($(BR2_PACKAGE_OPENCV3_INSTALL_DATA),y) +define OPENCV3_CLEAN_INSTALL_DATA + $(RM) -fr $(TARGET_DIR)/usr/share/OpenCV/haarcascades \ + $(TARGET_DIR)/usr/share/OpenCV/lbpcascades +endef +OPENCV3_POST_INSTALL_TARGET_HOOKS += OPENCV3_CLEAN_INSTALL_DATA +endif + +$(eval $(cmake-package)) diff --git a/package/openipmi/openipmi.hash b/package/openipmi/openipmi.hash index 3a40f6068f6..e6fafe48ab0 100644 --- a/package/openipmi/openipmi.hash +++ b/package/openipmi/openipmi.hash @@ -1,2 +1,4 @@ # From http://sourceforge.net/projects/openipmi/files/OpenIPMI%202.0%20Library/ sha1 54f63ab7fe09f6a4b0b718601fe9c61014aa220b OpenIPMI-2.0.21.tar.gz +# Locally computed +sha256 0eafaa502ccf752899c5089159574081067d0c4ac53ea0ace33a5087f33ea32a 0001-ui-use-standard-uint32_t.patch diff --git a/package/openipmi/openipmi.mk b/package/openipmi/openipmi.mk index 4a813ad2602..ea46e191da8 100644 --- a/package/openipmi/openipmi.mk +++ b/package/openipmi/openipmi.mk @@ -5,8 +5,10 @@ ################################################################################ OPENIPMI_VERSION = 2.0.21 -OPENIPMI_SITE = http://sourceforge.net/projects/openipmi/files/OpenIPMI%202.0%20Library/ +OPENIPMI_SITE = http://sourceforge.net/projects/openipmi/files/OpenIPMI%202.0%20Library OPENIPMI_SOURCE = OpenIPMI-2.0.21.tar.gz +OPENIPMI_PATCH = \ + http://sourceforge.net/p/openipmi/patches/26/attachment/0001-ui-use-standard-uint32_t.patch OPENIPMI_LICENSE = LGPLv2+, GPLv2+, BSD-3c OPENIPMI_LICENSE_FILES = COPYING.LIB COPYING COPYING.BSD OPENIPMI_DEPENDENCIES = popt ncurses host-pkgconf @@ -21,6 +23,10 @@ OPENIPMI_CONF_OPTS = \ --with-python=no \ --with-swig=no +ifeq ($(BR2_PACKAGE_GDBM),y) +OPENIPMI_DEPENDENCIES += gdbm +endif + ifeq ($(BR2_PACKAGE_OPENSSL),y) OPENIPMI_DEPENDENCIES += openssl OPENIPMI_CONF_OPTS += --with-openssl=yes diff --git a/package/openldap/openldap.hash b/package/openldap/openldap.hash index cca1e38b908..83e790f77e3 100644 --- a/package/openldap/openldap.hash +++ b/package/openldap/openldap.hash @@ -1,4 +1,4 @@ -# From http://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.41.sha1 -sha1 c6880df9fec928a5f010b78a4285b497e8a12d6b openldap-2.4.41.tgz -# Locally computed: -sha256 27856bb4a8b44feca2b326c309000e16a9dadd52362c8ab6eec6c67a43737f6e openldap-2.4.41.tgz +# From http://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.43.md5 +md5 49ca65e27891fcf977d78c10f073c705 openldap-2.4.43.tgz +# From http://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.4.43.sha1 +sha1 3b52924df2f45e81f25ecbe37551bc837d090cfa openldap-2.4.43.tgz diff --git a/package/openldap/openldap.mk b/package/openldap/openldap.mk index 4c3a71ab62f..17bf991e25c 100644 --- a/package/openldap/openldap.mk +++ b/package/openldap/openldap.mk @@ -4,9 +4,9 @@ # ################################################################################ -OPENLDAP_VERSION = 2.4.41 +OPENLDAP_VERSION = 2.4.43 OPENLDAP_SOURCE = openldap-$(OPENLDAP_VERSION).tgz -OPENLDAP_SITE = ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release +OPENLDAP_SITE = http://www.openldap.org/software/download/OpenLDAP/openldap-release OPENLDAP_LICENSE = OpenLDAP Public License OPENLDAP_LICENSE_FILES = LICENSE OPENLDAP_INSTALL_STAGING = YES diff --git a/package/openntpd/S49ntp b/package/openntpd/S49ntp index 2654f829dea..c211ac835ed 100755 --- a/package/openntpd/S49ntp +++ b/package/openntpd/S49ntp @@ -5,12 +5,12 @@ case "$1" in start) - echo -n "Starting openntpd: " - start-stop-daemon -S -x /usr/sbin/ntpd -- -p /run/ntpd.pid + printf "Starting openntpd: " + start-stop-daemon -S -x /usr/sbin/ntpd -- -s -p /run/ntpd.pid [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping openntpd: " + printf "Stopping openntpd: " start-stop-daemon -K -q -p /run/ntpd.pid [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/openntpd/openntpd.mk b/package/openntpd/openntpd.mk index d51f902f032..40bb1bf7e09 100644 --- a/package/openntpd/openntpd.mk +++ b/package/openntpd/openntpd.mk @@ -9,6 +9,10 @@ OPENNTPD_SITE = http://ftp.openbsd.org/pub/OpenBSD/OpenNTPD OPENNTPD_LICENSE = MIT-like, BSD-2c, BSD-3c OPENNTPD_LICENSE_FILES = COPYING +# openntpd uses pthread functions for arc4random emulation but forgets +# to use -pthread +OPENNTPD_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -pthread" + define OPENNTPD_INSTALL_INIT_SYSTEMD $(INSTALL) -D -m 0644 package/openntpd/ntpd.service \ $(TARGET_DIR)/usr/lib/systemd/system/ntpd.service diff --git a/package/openobex/Config.in b/package/openobex/Config.in index 5f606fee9ae..ed1b81fe424 100644 --- a/package/openobex/Config.in +++ b/package/openobex/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_OPENOBEX Free open source implementation of the Object Exchange (OBEX) protocol. - http://www.openobex.org + http://sourceforge.net/projects/openobex if BR2_PACKAGE_OPENOBEX @@ -22,8 +22,9 @@ comment "bluez support needs a toolchain w/ wchar, threads, dynamic library" config BR2_PACKAGE_OPENOBEX_LIBUSB bool "enable libusb support" - depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_TOOLCHAIN_HAS_THREADS # libusb select BR2_PACKAGE_LIBUSB + select BR2_PACKAGE_LIBUSB_COMPAT comment "libusb support needs a toolchain w/ threads" depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/openobex/openobex.hash b/package/openobex/openobex.hash new file mode 100644 index 00000000000..2aef98194bb --- /dev/null +++ b/package/openobex/openobex.hash @@ -0,0 +1,3 @@ +# From http://sourceforge.net/projects/openobex/files/openobex/1.5/ +sha1 5332ef95bc8b321bda675cdb74379804c6c1a83f openobex-1.5.0-Source.zip +md5 f6d87af55a1d702d582173c81619176e openobex-1.5.0-Source.zip diff --git a/package/openobex/openobex.mk b/package/openobex/openobex.mk index 82bfd4366a6..6a1a10ba4f0 100644 --- a/package/openobex/openobex.mk +++ b/package/openobex/openobex.mk @@ -4,8 +4,10 @@ # ################################################################################ -OPENOBEX_VERSION = 1.5 -OPENOBEX_SITE = http://ftp.osuosl.org/pub/linux/bluetooth +OPENOBEX_VERSION_MAJOR = 1.5 +OPENOBEX_VERSION = $(OPENOBEX_VERSION_MAJOR).0 +OPENOBEX_SITE = http://downloads.sourceforge.net/project/openobex/openobex/$(OPENOBEX_VERSION_MAJOR) +OPENOBEX_SOURCE = openobex-$(OPENOBEX_VERSION)-Source.zip # Libraries seems to be released under LGPLv2.1+, # while other material is under GPLv2+. OPENOBEX_LICENSE = GPLv2+/LGPLv2.1+ @@ -15,6 +17,12 @@ OPENOBEX_DEPENDENCIES = host-pkgconf OPENOBEX_AUTORECONF = YES OPENOBEX_INSTALL_STAGING = YES +define OPENOBEX_EXTRACT_CMDS + $(UNZIP) -d $(@D) $(DL_DIR)/$(OPENOBEX_SOURCE) + mv $(@D)/openobex-$(OPENOBEX_VERSION)-Source/* $(@D) + $(RM) -r $(@D)/openobex-$(OPENOBEX_VERSION)-Source +endef + OPENOBEX_CONF_OPTS += \ $(if $(BR2_PACKAGE_OPENOBEX_APPS),--enable-apps) \ $(if $(BR2_PACKAGE_OPENOBEX_SYSLOG),--enable-syslog) \ @@ -28,7 +36,7 @@ OPENOBEX_CONF_OPTS += --disable-bluetooth endif ifeq ($(BR2_PACKAGE_OPENOBEX_LIBUSB),y) -OPENOBEX_DEPENDENCIES += libusb +OPENOBEX_DEPENDENCIES += libusb-compat OPENOBEX_CONF_OPTS += --with-usb=$(STAGING_DIR) else OPENOBEX_CONF_OPTS += --disable-usb diff --git a/package/openocd/0001-Fix-compilation-error-in-src-flash-nor-mini51.c.patch b/package/openocd/0001-Fix-compilation-error-in-src-flash-nor-mini51.c.patch deleted file mode 100644 index 6eb7f9d34e1..00000000000 --- a/package/openocd/0001-Fix-compilation-error-in-src-flash-nor-mini51.c.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 893330638a26ea2868c6e7606047acf9b6fe31ea Mon Sep 17 00:00:00 2001 -From: Claudio Laurita -Date: Sun, 30 Nov 2014 17:30:36 +0100 -Subject: [PATCH 1/1] Fix compilation error in src/flash/nor/mini51.c - -0001-Fix-compilation-error-in-src-flash-nor-mini51.c.patch -gcc complains about missing initialization of -local variable flash_size and compilation aborts - -Signed-off-by: Claudio Laurita ---- - src/flash/nor/mini51.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/flash/nor/mini51.c b/src/flash/nor/mini51.c -index 61aee5d..c7ba13a 100644 ---- a/src/flash/nor/mini51.c -+++ b/src/flash/nor/mini51.c -@@ -397,7 +397,7 @@ static int mini51_write(struct flash_bank *bank, const uint8_t *buffer, uint32_t - - static int mini51_probe(struct flash_bank *bank) - { -- uint32_t flash_size; -+ uint32_t flash_size = 0; - int retval; - int num_pages; - uint32_t offset = 0; --- -2.1.3 - diff --git a/package/openocd/0002-Fix-jimtcl-auto-configuration-to-force-static-librar.patch b/package/openocd/0002-Fix-jimtcl-auto-configuration-to-force-static-librar.patch index 5ec0552dd41..fd3cfa469a1 100644 --- a/package/openocd/0002-Fix-jimtcl-auto-configuration-to-force-static-librar.patch +++ b/package/openocd/0002-Fix-jimtcl-auto-configuration-to-force-static-librar.patch @@ -7,15 +7,10 @@ Subject: [PATCH 2/2] Fix jimtcl auto configuration to force static library option in buildroot project. Signed-off-by: Claudio Laurita ---- - jimtcl/auto.def | 8 ++------ - 1 file changed, 2 insertions(+), 6 deletions(-) -diff --git a/jimtcl/auto.def b/jimtcl/auto.def -index ddb0c1e..929ade0 100644 --- a/jimtcl/auto.def +++ b/jimtcl/auto.def -@@ -181,12 +181,8 @@ if {[opt-bool references]} { +@@ -194,12 +194,8 @@ msg-result "Enabling references" define JIM_REFERENCES } @@ -27,9 +22,6 @@ index ddb0c1e..929ade0 100644 -} +msg-result "Building static library" +define JIM_STATICLIB + define LIBSOEXT [format [get-define SH_SOEXTVER] [format %.2f [expr {[get-define JIM_VERSION] / 100.0}]]] define JIM_INSTALL [opt-bool install-jim] - - # Attributes of the extensions --- -2.1.3 - + define JIM_DOCS [opt-bool docs] diff --git a/package/openocd/Config.in b/package/openocd/Config.in index d84aac18f08..231367154e8 100644 --- a/package/openocd/Config.in +++ b/package/openocd/Config.in @@ -84,6 +84,7 @@ config BR2_PACKAGE_OPENOCD_AICE config BR2_PACKAGE_OPENOCD_VSLLINK bool "Versaloon-Link JTAG Programmer" + select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_LIBUSB_COMPAT depends on BR2_TOOLCHAIN_HAS_THREADS # libusb-compat -> libusb help @@ -92,6 +93,7 @@ config BR2_PACKAGE_OPENOCD_VSLLINK config BR2_PACKAGE_OPENOCD_USBPROG bool "USBProg JTAG Programmer" + select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_LIBUSB_COMPAT depends on BR2_TOOLCHAIN_HAS_THREADS # libusb-compat -> libusb help @@ -100,6 +102,7 @@ config BR2_PACKAGE_OPENOCD_USBPROG config BR2_PACKAGE_OPENOCD_RLINK bool "Raisonance RLink JTAG Programmer" + select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_LIBUSB_COMPAT depends on BR2_TOOLCHAIN_HAS_THREADS # libusb-compat -> libusb help @@ -108,6 +111,7 @@ config BR2_PACKAGE_OPENOCD_RLINK config BR2_PACKAGE_OPENOCD_ARMEW bool "Olimex ARM-JTAG-EW Programmer" + select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_LIBUSB_COMPAT depends on BR2_TOOLCHAIN_HAS_THREADS # libusb-compat -> libusb help @@ -123,7 +127,6 @@ config BR2_PACKAGE_OPENOCD_FT2XXX bool "FT2232 based devices (DEPRECATED)" select BR2_PACKAGE_LIBFTDI1 depends on BR2_TOOLCHAIN_HAS_THREADS # libftdi -> libusb - depends on BR2_ARCH_HAS_ATOMICS help (DEPRECATED) Enable building support for FT2232 based devices using the libftdi library @@ -137,7 +140,6 @@ config BR2_PACKAGE_OPENOCD_UBLASTER bool "Altera USB-Blaster" select BR2_PACKAGE_LIBFTDI1 depends on BR2_TOOLCHAIN_HAS_THREADS # libftdi -> libusb - depends on BR2_ARCH_HAS_ATOMICS help Enable building support for the Altera USB-Blaster using the libftdi driver, opensource alternate of @@ -178,7 +180,6 @@ config BR2_PACKAGE_OPENOCD_PRESTO bool "ASIX Presto Programmer" select BR2_PACKAGE_LIBFTDI1 depends on BR2_TOOLCHAIN_HAS_THREADS # libftdi -> libusb - depends on BR2_ARCH_HAS_ATOMICS help Enable building support for ASIX Presto Programmer using the libftdi driver @@ -186,9 +187,9 @@ config BR2_PACKAGE_OPENOCD_PRESTO config BR2_PACKAGE_OPENOCD_OPENJTAG bool "OpenJTAG Programmer" select BR2_PACKAGE_LIBFTDI1 + select BR2_PACKAGE_LIBUSB select BR2_PACKAGE_LIBUSB_COMPAT # needs usb.h depends on BR2_TOOLCHAIN_HAS_THREADS # libftdi -> libusb - depends on BR2_ARCH_HAS_ATOMICS help Enable building support for the OpenJTAG Programmer with ftdi driver diff --git a/package/openocd/openocd.hash b/package/openocd/openocd.hash index bc5c8c0d0ca..4ca11e206e7 100644 --- a/package/openocd/openocd.hash +++ b/package/openocd/openocd.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/openocd/files/openocd/0.8.0/ -sha1 10bf9eeb54e03083cb1a101785b2d69fbdf18f31 openocd-0.8.0.tar.bz2 -md5 6d83c34763a5f1d1ac7ad83c5a11f4fb openocd-0.8.0.tar.bz2 +# From http://sourceforge.net/projects/openocd/files/openocd/0.9.0/ +sha1 bcf99bb21f09513065b2c9ece148ace7d16cdd0c openocd-0.9.0.tar.bz2 +md5 665cc98ae9e7297e09ec6ac7235fee49 openocd-0.9.0.tar.bz2 diff --git a/package/openocd/openocd.mk b/package/openocd/openocd.mk index 3b7685061bf..21a302ff25c 100644 --- a/package/openocd/openocd.mk +++ b/package/openocd/openocd.mk @@ -4,9 +4,9 @@ # ################################################################################ -OPENOCD_VERSION = 0.8.0 +OPENOCD_VERSION = 0.9.0 OPENOCD_SOURCE = openocd-$(OPENOCD_VERSION).tar.bz2 -OPENOCD_SITE = http://downloads.sourceforge.net/project/openocd/openocd/$(OPENOCD_VERSION) +OPENOCD_SITE = http://sourceforge.net/projects/openocd/files/openocd/$(OPENOCD_VERSION) OPENOCD_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=gnu99" diff --git a/package/openpgm/Config.in b/package/openpgm/Config.in index cef5ed43774..94816d80ab4 100644 --- a/package/openpgm/Config.in +++ b/package/openpgm/Config.in @@ -1,19 +1,18 @@ config BR2_PACKAGE_OPENPGM bool "openpgm" - # The following toolchains lack required compiler intrinsics - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1 - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1 - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 + # This toolchain lack required compiler intrinsics + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_WCHAR help - OpenPGM is an open source implementation of the Pragmatic General - Multicast (PGM) specification in RFC 3208 available at www.ietf.org. - PGM is a reliable and scalable multicast protocol that enables - receivers to detect loss, request retransmission of lost data, or - notify an application of unrecoverable loss. + OpenPGM is an open source implementation of the Pragmatic + General Multicast (PGM) specification in RFC 3208 available at + www.ietf.org. PGM is a reliable and scalable multicast + protocol that enables receivers to detect loss, request + retransmission of lost data, or notify an application of + unrecoverable loss. - http://code.google.com/p/openpgm/ + https://github.com/steve-o/openpgm/ comment "openpgm needs a toolchain w/ wchar, threads" depends on !(BR2_TOOLCHAIN_HAS_THREADS && BR2_USE_WCHAR) diff --git a/package/openpgm/openpgm.hash b/package/openpgm/openpgm.hash new file mode 100644 index 00000000000..f20e02a7fb0 --- /dev/null +++ b/package/openpgm/openpgm.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 ecd48fd0bcfd8351ce6dcf31b063dd8fe83d3dab41bca62a6ebd6880a88c4a69 openpgm-release-5-2-122.tar.gz diff --git a/package/openpgm/openpgm.mk b/package/openpgm/openpgm.mk index d54e8eb0b22..42b0a5d8097 100644 --- a/package/openpgm/openpgm.mk +++ b/package/openpgm/openpgm.mk @@ -4,15 +4,22 @@ # ################################################################################ -OPENPGM_VERSION = 5.1.118~dfsg -OPENPGM_SOURCE = libpgm-$(OPENPGM_VERSION).tar.gz -OPENPGM_SITE = http://openpgm.googlecode.com/files +OPENPGM_VERSION = release-5-2-122 +OPENPGM_SITE = $(call github,steve-o,openpgm,$(OPENPGM_VERSION)) OPENPGM_LICENSE = LGPLv2.1+ OPENPGM_LICENSE_FILES = openpgm/pgm/LICENSE OPENPGM_INSTALL_STAGING = YES +OPENPGM_SUBDIR = openpgm/pgm OPENPGM_AUTORECONF = YES -OPENPGM_SUBDIR = openpgm/pgm/ -OPENPGM_DEPENDENCIES = $(if $(BR2_PACKAGE_PYTHON3),host-python3,host-python) + +# We need to create the m4 directory to make sure that autoreconf will +# start calling libtoolize. Otherwise it will start with aclocal and it +# will fail because the m4 directory doesn't exist. +define OPENPGM_CREATE_M4_DIR + mkdir -p $(@D)/$(OPENPGM_SUBDIR)/m4 +endef +OPENPGM_POST_PATCH_HOOKS += OPENPGM_CREATE_M4_DIR + OPENPGM_CONF_ENV = \ ac_cv_file__proc_cpuinfo=yes \ ac_cv_file__dev_rtc=no \ diff --git a/package/openpowerlink/0001-fix-use-a-better-regex-for-cmake-system-processor.patch b/package/openpowerlink/0001-fix-use-a-better-regex-for-cmake-system-processor.patch deleted file mode 100644 index 6fd1990af2b..00000000000 --- a/package/openpowerlink/0001-fix-use-a-better-regex-for-cmake-system-processor.patch +++ /dev/null @@ -1,89 +0,0 @@ -From 9fd3aef2f9bb7a2b05b6823281bb5c988fa25149 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Mon, 17 Nov 2014 23:27:05 +0100 -Subject: [PATCH 1/2] [FIX] use a better regex for CMAKE_SYSTEM_PROCESSOR - -According to CMake doc, CMAKE_SYSTEM_PROCESSOR is set to the -output of the command "uname -p" (in fact it is the output of "uname --m"). This is only true for native compilation. - -In the case of cross-compilation, the CMake code does not set anything, -it just expects the CMAKE_SYSTEM_* variables to be set in the -toolchain file. - -Add a test matching the patern "^i.86$" and keep the old one "x86" for -compatibility. -By doing that, factorize this test using "^(i.86|x86(_64)?)$". - -Thanks to Samuel Martin [1] -[1] http://lists.busybox.net/pipermail/buildroot/2014-November/112163.html - -Signed-off-by: Romain Naour ---- - Examples/X86/Linux/gnu/demo_kernel/CMakeLists.txt | 15 ++++----------- - .../X86/Linux/gnu/powerlink_kernel_module/CMakeLists.txt | 15 ++++----------- - 2 files changed, 8 insertions(+), 22 deletions(-) - -diff --git a/Examples/X86/Linux/gnu/demo_kernel/CMakeLists.txt b/Examples/X86/Linux/gnu/demo_kernel/CMakeLists.txt -index 271ecdc..b49ef53 100644 ---- a/Examples/X86/Linux/gnu/demo_kernel/CMakeLists.txt -+++ b/Examples/X86/Linux/gnu/demo_kernel/CMakeLists.txt -@@ -154,21 +154,14 @@ SET(MODULE_SOURCE_FILES - ${POWERLINK_SOURCE_DIR}/ObjDicts/${OBJDICT}/Objdict.c - ) - --IF (CMAKE_SYSTEM_PROCESSOR STREQUAL x86) -+IF (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$") - SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amix86.c) -- --ELSEIF ( CMAKE_SYSTEM_PROCESSOR STREQUAL arm -- OR CMAKE_SYSTEM_PROCESSOR STREQUAL armv7l) -+ELSEIF (CMAKE_SYSTEM_PROCESSOR STREQUAL "arm" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "armv7l") - SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amiarm.c) -- --ELSEIF ( CMAKE_SYSTEM_PROCESSOR STREQUAL i686 -- OR CMAKE_SYSTEM_PROCESSOR STREQUAL x86_64) -- SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amix86.c) -- --ELSE (CMAKE_SYSTEM_PROCESSOR STREQUAL x86) -+ELSE (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$") - MESSAGE(FATAL_ERROR - "ami: CMAKE_SYSTEM_PROCESSOR is set to ${CMAKE_SYSTEM_PROCESSOR}. Valid targets are (x86, x86_64, arm, armv7l, i686).") --ENDIF (CMAKE_SYSTEM_PROCESSOR STREQUAL x86) -+ENDIF (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$") - - SET(MODULE_FILE - ${MODULE_NAME}.ko -diff --git a/Examples/X86/Linux/gnu/powerlink_kernel_module/CMakeLists.txt b/Examples/X86/Linux/gnu/powerlink_kernel_module/CMakeLists.txt -index 1b47c76..f534a4d 100644 ---- a/Examples/X86/Linux/gnu/powerlink_kernel_module/CMakeLists.txt -+++ b/Examples/X86/Linux/gnu/powerlink_kernel_module/CMakeLists.txt -@@ -171,21 +171,14 @@ ELSE(CFG_POWERLINK_EDRV STREQUAL "I210") - SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/Target/X86/Linux/gnu/generic/TimerHighReskX86.c) - ENDIF(CFG_POWERLINK_EDRV STREQUAL "I210") - --IF (CMAKE_SYSTEM_PROCESSOR STREQUAL x86) -+IF (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$") - SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amix86.c) -- --ELSEIF ( CMAKE_SYSTEM_PROCESSOR STREQUAL arm -- OR CMAKE_SYSTEM_PROCESSOR STREQUAL armv7l) -+ELSEIF (CMAKE_SYSTEM_PROCESSOR STREQUAL "arm" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "armv7l") - SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amiarm.c) -- --ELSEIF ( CMAKE_SYSTEM_PROCESSOR STREQUAL i686 -- OR CMAKE_SYSTEM_PROCESSOR STREQUAL x86_64) -- SET(MODULE_SOURCE_FILES ${MODULE_SOURCE_FILES} ${POWERLINK_SOURCE_DIR}/EplStack/amix86.c) -- --ELSE (CMAKE_SYSTEM_PROCESSOR STREQUAL x86) -+ELSE (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$") - MESSAGE(FATAL_ERROR - "ami: CMAKE_SYSTEM_PROCESSOR is set to ${CMAKE_SYSTEM_PROCESSOR}. Valid targets are (x86, x86_64, arm, armv7l, i686).") --ENDIF (CMAKE_SYSTEM_PROCESSOR STREQUAL x86) -+ENDIF (CMAKE_SYSTEM_PROCESSOR MATCHES "^(i.86|x86(_64)?)$") - - SET(MODULE_FILE - ${MODULE_NAME}.ko --- -1.9.3 - diff --git a/package/openpowerlink/0001-install-the-stack-libraries-to-lib-subdirectory.patch b/package/openpowerlink/0001-install-the-stack-libraries-to-lib-subdirectory.patch new file mode 100644 index 00000000000..e46cbf7423c --- /dev/null +++ b/package/openpowerlink/0001-install-the-stack-libraries-to-lib-subdirectory.patch @@ -0,0 +1,133 @@ +From ebc5aeff65aeda610d9e23ecf4b26b79f9305a0e Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Fri, 1 May 2015 12:19:34 +0200 +Subject: [PATCH] install the stack libraries to "lib" subdirectory + +Using '.' to install the stack libraries is not correct since +it will install them to /usr/. + +ls /usr/liboplkmnapp-kernelintf.so + +Fix this by using 'lib' instead of '.' + +The problem with the openpowerlink build system is that it expect +the stack directory to be a "local staging" directory which +contains headers and libraries. So the libraries build by the +stack project are installed in stack/lib by default. + +This is wrong to do that because it becomes difficult to package +openpowerlink for normal Linux systems. + +Buildroot like others build system expect from a packaged software +to install libraries and headers build/provided in a staging +directory. + +It seems that CMAKE_INSTALL_PREFIX is misused by the default value +"${CMAKE_CURRENT_SOURCE_DIR}/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR}" +since it already contains the lib directory and therefore the +entire build system is messed up. + +It seems that the openpowerlink's build system doesn't allow/support +CMAKE_INSTALL_PREFIX to be set externally +(which is the standard approach). + +The issue has been reported [1] upstream and a build system +refactoring is needed to fix this properly. + +[1] http://sourceforge.net/p/openpowerlink/discussion/newbie/thread/3f13af65/#8f80/a50a/4649/f07c + +Signed-off-by: Romain Naour +--- + stack/proj/linux/liboplkcn/CMakeLists.txt | 2 +- + stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt | 2 +- + stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt | 2 +- + stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt | 2 +- + stack/proj/linux/liboplkmn/CMakeLists.txt | 2 +- + stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt | 2 +- + stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt | 2 +- + stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt | 2 +- + 8 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/stack/proj/linux/liboplkcn/CMakeLists.txt b/stack/proj/linux/liboplkcn/CMakeLists.txt +index b7c73e6..23e3112 100644 +--- a/stack/proj/linux/liboplkcn/CMakeLists.txt ++++ b/stack/proj/linux/liboplkcn/CMakeLists.txt +@@ -88,4 +88,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +diff --git a/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt b/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt +index 6c3bec6..a6f9271 100644 +--- a/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt ++++ b/stack/proj/linux/liboplkcnapp-kernelintf/CMakeLists.txt +@@ -81,4 +81,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +diff --git a/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt b/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt +index fdf6fd4..6df8bb7 100644 +--- a/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt ++++ b/stack/proj/linux/liboplkcnapp-userintf/CMakeLists.txt +@@ -81,4 +81,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +diff --git a/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt b/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt +index 440f02c..6ffcbe9 100644 +--- a/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt ++++ b/stack/proj/linux/liboplkcndrv-pcap/CMakeLists.txt +@@ -77,4 +77,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +diff --git a/stack/proj/linux/liboplkmn/CMakeLists.txt b/stack/proj/linux/liboplkmn/CMakeLists.txt +index 8f97144..e29f795 100644 +--- a/stack/proj/linux/liboplkmn/CMakeLists.txt ++++ b/stack/proj/linux/liboplkmn/CMakeLists.txt +@@ -92,4 +92,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +diff --git a/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt b/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt +index df74265..2ba1cd1 100644 +--- a/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt ++++ b/stack/proj/linux/liboplkmnapp-kernelintf/CMakeLists.txt +@@ -85,4 +85,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +diff --git a/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt b/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt +index 98835c7..12b3dc6 100644 +--- a/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt ++++ b/stack/proj/linux/liboplkmnapp-userintf/CMakeLists.txt +@@ -85,4 +85,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +diff --git a/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt b/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt +index b4dd41b..cf875ca 100644 +--- a/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt ++++ b/stack/proj/linux/liboplkmndrv-pcap/CMakeLists.txt +@@ -80,4 +80,4 @@ ADD_LIBRARY(${LIB_NAME} ${LIB_TYPE} ${LIB_SOURCES}) + TARGET_LINK_LIBRARIES(${LIB_NAME} ${ARCH_LIBRARIES}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) + SET_PROPERTY(TARGET ${LIB_NAME} PROPERTY DEBUG_POSTFIX "_d") +-INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION . LIBRARY DESTINATION .) ++INSTALL(TARGETS ${LIB_NAME} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) +-- +2.4.3 + diff --git a/package/openpowerlink/0002-cmake-install-oplk-headers-files.patch b/package/openpowerlink/0002-cmake-install-oplk-headers-files.patch new file mode 100644 index 00000000000..7553c30eb68 --- /dev/null +++ b/package/openpowerlink/0002-cmake-install-oplk-headers-files.patch @@ -0,0 +1,32 @@ +From c904fb6ce3c29e77d51d8bcbbbdd48b8d22c754b Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Mon, 4 May 2015 11:47:05 +0200 +Subject: [PATCH] cmake: install oplk headers files + +In order to be able to link a third party application +with openpowerlink libraries, we need to install the +oplk headers files related to openpowerlink stack. + +Install all headers file from STACK_INCLUDE_DIR/oplk. + +Signed-off-by: Romain Naour +--- + stack/CMakeLists.txt | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/stack/CMakeLists.txt b/stack/CMakeLists.txt +index 9ff13f4..f4614cd 100644 +--- a/stack/CMakeLists.txt ++++ b/stack/CMakeLists.txt +@@ -103,3 +103,8 @@ ELSEIF((CMAKE_SYSTEM_NAME STREQUAL "Generic") AND (CMAKE_SYSTEM_PROCESSOR STREQU + ELSE() + MESSAGE(FATAL_ERROR "Unknown Platform and processor combination ${CMAKE_SYSTEM_NAME} and ${CMAKE_SYSTEM_PROCESSOR}!!") + ENDIF() ++ ++################################################################################ ++# Install oplk headers files ++################################################################################ ++INSTALL(DIRECTORY ${STACK_INCLUDE_DIR}/oplk DESTINATION "include") +-- +2.4.3 + diff --git a/package/openpowerlink/0002-fix-user-space-stack-enable-shared-build.patch b/package/openpowerlink/0002-fix-user-space-stack-enable-shared-build.patch deleted file mode 100644 index 23455948910..00000000000 --- a/package/openpowerlink/0002-fix-user-space-stack-enable-shared-build.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 9c11eef037dc1137ab7a4656e45afde7d1a615c4 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Sat, 22 Nov 2014 16:38:01 +0100 -Subject: [PATCH 2/2] [FIX]: user space stack: enable dynamic build - -The build fail if BUILD_SHARED_LIBS is set to ON. - -Depending on BUILD_SHARED_LIBS, link with STATIC or SHARED. - -Signed-off-by: Romain Naour ---- - Examples/X86/Generic/powerlink_user_lib/CMakeLists.txt | 12 +++++++++--- - 1 file changed, 9 insertions(+), 3 deletions(-) - -diff --git a/Examples/X86/Generic/powerlink_user_lib/CMakeLists.txt b/Examples/X86/Generic/powerlink_user_lib/CMakeLists.txt -index 40b7756..27360f2 100644 ---- a/Examples/X86/Generic/powerlink_user_lib/CMakeLists.txt -+++ b/Examples/X86/Generic/powerlink_user_lib/CMakeLists.txt -@@ -93,7 +93,13 @@ ENDIF(CFG_STORE_RESTORE) - # - # Set type of library - # --IF (WIN32) -+IF (UNIX) -+ IF (BUILD_SHARED_LIBS) -+ SET(LIB_TYPE "SHARED") -+ ELSE (BUILD_SHARED_LIBS) -+ SET(LIB_TYPE "STATIC") -+ ENDIF(BUILD_SHARED_LIBS) -+ELSEIF (WIN32) - IF(CFG_X86_WINDOWS_DLL) - SET(LIB_TYPE "SHARED") - ELSE(CFG_X86_WINDOWS_DLL) -@@ -313,7 +319,7 @@ ENDIF () - # Define library source code - # - IF (UNIX) -- ADD_LIBRARY(powerlink ${LIB_SOURCES} ${LIB_SOURCES_KERNEL} ${LIB_SOURCES_USER} ${LIB_HEADERS} ${LIB_HEADERS_KERNEL} ${LIB_HEADERS_USER} ${LIB_OBJDICT}) -+ ADD_LIBRARY(powerlink ${LIB_TYPE} ${LIB_SOURCES} ${LIB_SOURCES_KERNEL} ${LIB_SOURCES_USER} ${LIB_HEADERS} ${LIB_HEADERS_KERNEL} ${LIB_HEADERS_USER} ${LIB_OBJDICT}) - - SET_PROPERTY(TARGET powerlink - PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEBUG_LVL=${CFG_DEBUG_LVL}) -@@ -330,7 +336,7 @@ ENDIF () - # Installation - # - IF (UNIX) -- INSTALL(TARGETS powerlink ARCHIVE DESTINATION lib) -+ INSTALL(TARGETS powerlink ARCHIVE DESTINATION lib LIBRARY DESTINATION lib COMPONENT library) - ELSEIF (WIN32) - IF (CFG_X86_WINDOWS_DLL) - INSTALL(TARGETS openPOWERLINK RUNTIME DESTINATION bin) --- -1.9.3 - diff --git a/package/openpowerlink/0003-cmake-use-CMAKE_CURRENT_SOURCE_DIR-instead-of-CM.patch b/package/openpowerlink/0003-cmake-use-CMAKE_CURRENT_SOURCE_DIR-instead-of-CM.patch new file mode 100644 index 00000000000..668c907b3cd --- /dev/null +++ b/package/openpowerlink/0003-cmake-use-CMAKE_CURRENT_SOURCE_DIR-instead-of-CM.patch @@ -0,0 +1,154 @@ +From c354e8d9599aa02566c8acc341f3a2c73281483b Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Wed, 17 Sep 2014 13:27:44 +0200 +Subject: [PATCH] cmake: use CMAKE_CURRENT_SOURCE_DIR instead of + CMAKE_SOURCE_DIR + +The aim of this patch is to be able to call each subproject's CMakeLists.txt +from a top-level CMakeLists.txt. + +This will help to build automatically the epl libraries, epl driver, unittests +and demos. + +This patch has been submitted upstream: +https://github.com/openPOWERLINK/openPOWERLINK_V2/pull/57 + +Signed-off-by: Romain Naour +--- + drivers/linux/drv_daemon_pcap/CMakeLists.txt | 6 +++--- + drivers/linux/drv_kernelmod_edrv/CMakeLists.txt | 8 ++++---- + hardware/CMakeLists.txt | 4 ++-- + hardware/drivers/hostinterface/CMakeLists.txt | 2 +- + hardware/drivers/openmac/CMakeLists.txt | 4 ++-- + unittests/CMakeLists.txt | 4 ++-- + 6 files changed, 14 insertions(+), 14 deletions(-) + +diff --git a/drivers/linux/drv_daemon_pcap/CMakeLists.txt b/drivers/linux/drv_daemon_pcap/CMakeLists.txt +index 4c3f933..9041e4d 100644 +--- a/drivers/linux/drv_daemon_pcap/CMakeLists.txt ++++ b/drivers/linux/drv_daemon_pcap/CMakeLists.txt +@@ -57,8 +57,8 @@ MESSAGE(STATUS "Configuring ${EXE_NAME}") + ############################################################################### + # Set global directories + ############################################################################### +-SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/../../..) +-SET(DRV_SOURCE_DIR ${CMAKE_SOURCE_DIR}) ++SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../..) ++SET(DRV_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) + SET(CONTRIB_SOURCE_DIR ${OPLK_BASE_DIR}/contrib) + SET(OPLK_INCLUDE_DIR ${OPLK_BASE_DIR}/stack/include) + SET(TOOLS_DIR ${OPLK_BASE_DIR}/tools) +@@ -66,7 +66,7 @@ SET(TOOLS_DIR ${OPLK_BASE_DIR}/tools) + ############################################################################### + # Include CMake Modules + ############################################################################### +-SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/../../cmake ${CMAKE_MODULE_PATH}) ++SET(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../cmake ${CMAKE_MODULE_PATH}) + + # include standard cmake modules + INCLUDE(CMakeDependentOption) +diff --git a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt +index 2ad1a0d..af85f86 100644 +--- a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt ++++ b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt +@@ -75,7 +75,7 @@ SET_PROPERTY(CACHE CFG_POWERLINK_EDRV PROPERTY STRINGS 8139 82573 8255x i210 811 + ################################################################################ + # Set global directories + ################################################################################ +-SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/../../..) ++SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../..) + SET(CONTRIB_SOURCE_DIR ${OPLK_BASE_DIR}/contrib) + SET(STACK_SOURCE_DIR ${OPLK_BASE_DIR}/stack/src) + SET(COMMON_SOURCE_DIR ${OPLK_BASE_DIR}/stack/src/common) +@@ -152,10 +152,10 @@ IF(CFG_OPLK_MN) + ENDIF() + SET(MODULE_DEFS "${MODULE_DEFS} -DCONFIG_MN") + SET(MODULE_NAME "${MODULE_NAME}mn") +- INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/proj/mn) ++ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/proj/mn) + ELSE() + SET(MODULE_NAME "${MODULE_NAME}cn") +- INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/proj/cn) ++ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/proj/cn) + ENDIF() + + ############################################################################### +@@ -189,7 +189,7 @@ ENDFOREACH() + # + SET(MODULE_SOURCE_FILES + ${MODULE_SOURCE_FILES} +- ${CMAKE_SOURCE_DIR}/main.c ++ ${CMAKE_CURRENT_SOURCE_DIR}/main.c + ${CONTRIB_SOURCE_DIR}/trace/trace-printk.c + ${EDRV_SOURCE_DIR}/edrvcyclic.c + ${KERNEL_SOURCE_DIR}/ctrl/ctrlk.c +diff --git a/hardware/CMakeLists.txt b/hardware/CMakeLists.txt +index 218c4eb..3ba85ca 100644 +--- a/hardware/CMakeLists.txt ++++ b/hardware/CMakeLists.txt +@@ -40,7 +40,7 @@ INCLUDE(reduceboardname) + + ################################################################################ + # Set paths +-SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/..) ++SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/..) + SET(OMETHLIB_BASE_DIR ${PROJECT_SOURCE_DIR}/drivers/openmac) + SET(OMETHLIB_BUILD_DIR ${PROJECT_BINARY_DIR}/drivers/openmac) + SET(HOSTIF_BASE_DIR ${PROJECT_SOURCE_DIR}/drivers/hostinterface) +@@ -56,7 +56,7 @@ STRING(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" SYSTEM_PROCESSOR_DIR) + + IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + SET(CMAKE_INSTALL_PREFIX +- ${CMAKE_SOURCE_DIR}/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR} CACHE PATH "openPOWERLINK hardware install prefix" FORCE ++ ${CMAKE_CURRENT_SOURCE_DIR}/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR} CACHE PATH "openPOWERLINK hardware install prefix" FORCE + ) + ENDIF() + +diff --git a/hardware/drivers/hostinterface/CMakeLists.txt b/hardware/drivers/hostinterface/CMakeLists.txt +index 1a9d2aa..9c56c16 100644 +--- a/hardware/drivers/hostinterface/CMakeLists.txt ++++ b/hardware/drivers/hostinterface/CMakeLists.txt +@@ -71,7 +71,7 @@ ELSE() + SET( HOSTIF_LIB_NAME "${HOSTIF_NAME}") + ENDIF() + +-SET(BOARDS_COMMON_DIR ${CMAKE_SOURCE_DIR}/boards/${BOARD_NAME}/common) ++SET(BOARDS_COMMON_DIR ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_NAME}/common) + SET(EXAMPLE_BINARY_DIR ${CMAKE_BINARY_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME}) + + ######################################################################## +diff --git a/hardware/drivers/openmac/CMakeLists.txt b/hardware/drivers/openmac/CMakeLists.txt +index 560c0d9..d532996 100644 +--- a/hardware/drivers/openmac/CMakeLists.txt ++++ b/hardware/drivers/openmac/CMakeLists.txt +@@ -55,8 +55,8 @@ ELSE() + SET(OMETH_LIB_NAME "${OMETH_NAME}") + ENDIF() + +-SET(BOARD_EXAMPLE_DIR ${CMAKE_SOURCE_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME}) +-SET(BOARDS_COMMON_DIR ${CMAKE_SOURCE_DIR}/boards/${BOARD_NAME}/common) ++SET(BOARD_EXAMPLE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME}) ++SET(BOARDS_COMMON_DIR ${CMAKE_CURRENT_SOURCE_DIR}/boards/${BOARD_NAME}/common) + SET(EXAMPLE_BINARY_DIR ${CMAKE_BINARY_DIR}/boards/${BOARD_NAME}/${EXAMPLE_NAME}) + + ######################################################################## +diff --git a/unittests/CMakeLists.txt b/unittests/CMakeLists.txt +index 533d4e7..4460c2e 100644 +--- a/unittests/CMakeLists.txt ++++ b/unittests/CMakeLists.txt +@@ -55,10 +55,10 @@ ENDMACRO(ADD_UNIT_TEST) + + ################################################################################ + # Set general directories +-SET(OPLK_BASE_DIR ${CMAKE_SOURCE_DIR}/..) ++SET(OPLK_BASE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/..) + SET(OPLK_SOURCE_DIR ${OPLK_BASE_DIR}/stack/src) + SET(OPLK_INCLUDE_DIR ${OPLK_BASE_DIR}/stack/include) +-SET(TEST_COMMON_SOURCE_DIR ${CMAKE_SOURCE_DIR}/common) ++SET(TEST_COMMON_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/common) + + # We need a oplkcfg.h file for compiling the sources + # We are using the project for the complete MN library +-- +2.4.3 + diff --git a/package/openpowerlink/0004-Use-PROJECT_NAME-instead-of-CMAKE_PROJECT_NAME.patch b/package/openpowerlink/0004-Use-PROJECT_NAME-instead-of-CMAKE_PROJECT_NAME.patch new file mode 100644 index 00000000000..3957cd1ebd2 --- /dev/null +++ b/package/openpowerlink/0004-Use-PROJECT_NAME-instead-of-CMAKE_PROJECT_NAME.patch @@ -0,0 +1,125 @@ +From 7aace6a9d28b02c4325610255dc8afe198f02c4d Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Wed, 12 Aug 2015 10:54:32 +0200 +Subject: [PATCH] Use PROJECT_NAME instead of CMAKE_PROJECT_NAME + +In order to support a top level CMakeLists.txt, use the current project +name instead of the top level one. + +This patch has been submitted upstream: +https://github.com/openPOWERLINK/openPOWERLINK_V2/pull/57 + +Signed-off-by: Romain Naour +--- + apps/demo_cn_console/CMakeLists.txt | 2 +- + apps/demo_cn_console/linux.cmake | 2 +- + apps/demo_mn_console/CMakeLists.txt | 4 ++-- + apps/demo_mn_console/linux.cmake | 2 +- + apps/demo_mn_qt/CMakeLists.txt | 4 ++-- + apps/demo_mn_qt/linux.cmake | 2 +- + drivers/linux/drv_daemon_pcap/CMakeLists.txt | 2 +- + drivers/linux/drv_kernelmod_edrv/CMakeLists.txt | 10 +++++----- + 8 files changed, 14 insertions(+), 14 deletions(-) + +diff --git a/apps/demo_cn_console/CMakeLists.txt b/apps/demo_cn_console/CMakeLists.txt +index cd3b418..c5a47a8 100644 +--- a/apps/demo_cn_console/CMakeLists.txt ++++ b/apps/demo_cn_console/CMakeLists.txt +@@ -112,6 +112,6 @@ TARGET_LINK_LIBRARIES(demo_cn_console ${ARCH_LIBRARIES}) + ################################################################################ + # Installation rules + +-INSTALL(TARGETS demo_cn_console RUNTIME DESTINATION ${CMAKE_PROJECT_NAME}) ++INSTALL(TARGETS demo_cn_console RUNTIME DESTINATION ${PROJECT_NAME}) + + +diff --git a/apps/demo_cn_console/linux.cmake b/apps/demo_cn_console/linux.cmake +index 409bf11..76e381d 100644 +--- a/apps/demo_cn_console/linux.cmake ++++ b/apps/demo_cn_console/linux.cmake +@@ -53,5 +53,5 @@ SET (ARCH_LIBRARIES ${ARCH_LIBRARIES} pthread rt) + ################################################################################ + # Set architecture specific installation files + +-INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${CMAKE_PROJECT_NAME}) ++INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${PROJECT_NAME}) + +diff --git a/apps/demo_mn_console/CMakeLists.txt b/apps/demo_mn_console/CMakeLists.txt +index 0c54a98..d8df68e 100644 +--- a/apps/demo_mn_console/CMakeLists.txt ++++ b/apps/demo_mn_console/CMakeLists.txt +@@ -120,6 +120,6 @@ TARGET_LINK_LIBRARIES(demo_mn_console ${ARCH_LIBRARIES}) + ################################################################################ + # Installation rules + +-INSTALL(TARGETS demo_mn_console RUNTIME DESTINATION ${CMAKE_PROJECT_NAME}) +-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mnobd.cdc DESTINATION ${CMAKE_PROJECT_NAME}) ++INSTALL(TARGETS demo_mn_console RUNTIME DESTINATION ${PROJECT_NAME}) ++INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mnobd.cdc DESTINATION ${PROJECT_NAME}) + +diff --git a/apps/demo_mn_console/linux.cmake b/apps/demo_mn_console/linux.cmake +index a9e9072..a994928 100644 +--- a/apps/demo_mn_console/linux.cmake ++++ b/apps/demo_mn_console/linux.cmake +@@ -53,5 +53,5 @@ SET (ARCH_LIBRARIES ${ARCH_LIBRARIES} pthread rt) + ################################################################################ + # Set architecture specific installation files + +-INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${CMAKE_PROJECT_NAME}) ++INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${PROJECT_NAME}) + +diff --git a/apps/demo_mn_qt/CMakeLists.txt b/apps/demo_mn_qt/CMakeLists.txt +index ff3a9aa..282a9d8 100644 +--- a/apps/demo_mn_qt/CMakeLists.txt ++++ b/apps/demo_mn_qt/CMakeLists.txt +@@ -161,5 +161,5 @@ TARGET_LINK_LIBRARIES(demo_mn_qt ${ARCH_LIBRARIES} ${QT_LIBRARIES}) + ################################################################################ + # Installation rules + +-INSTALL(TARGETS demo_mn_qt RUNTIME DESTINATION ${CMAKE_PROJECT_NAME}) +-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mnobd.cdc DESTINATION ${CMAKE_PROJECT_NAME}) ++INSTALL(TARGETS demo_mn_qt RUNTIME DESTINATION ${PROJECT_NAME}) ++INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mnobd.cdc DESTINATION ${PROJECT_NAME}) +diff --git a/apps/demo_mn_qt/linux.cmake b/apps/demo_mn_qt/linux.cmake +index 6f19ff2..6ed75ee 100644 +--- a/apps/demo_mn_qt/linux.cmake ++++ b/apps/demo_mn_qt/linux.cmake +@@ -45,5 +45,5 @@ SET(ARCH_LIBRARIES ${ARCH_LIBRARIES} pthread rt) + ################################################################################ + # Set architecture specific installation files + +-INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${CMAKE_PROJECT_NAME}) ++INSTALL(PROGRAMS ${TOOLS_DIR}/linux/set_prio DESTINATION ${PROJECT_NAME}) + +diff --git a/drivers/linux/drv_daemon_pcap/CMakeLists.txt b/drivers/linux/drv_daemon_pcap/CMakeLists.txt +index 9041e4d..2702abd 100644 +--- a/drivers/linux/drv_daemon_pcap/CMakeLists.txt ++++ b/drivers/linux/drv_daemon_pcap/CMakeLists.txt +@@ -136,5 +136,5 @@ SET_PROPERTY(TARGET ${EXE_NAME} PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUG;DEF_DEB + TARGET_LINK_LIBRARIES(${EXE_NAME} ${OPLKLIB} ${ARCH_LIBRARIES}) + + # add installation rules +-INSTALL(TARGETS ${EXE_NAME} RUNTIME DESTINATION ${CMAKE_PROJECT_NAME}) ++INSTALL(TARGETS ${EXE_NAME} RUNTIME DESTINATION ${PROJECT_NAME}) + +diff --git a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt +index af85f86..59400c0 100644 +--- a/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt ++++ b/drivers/linux/drv_kernelmod_edrv/CMakeLists.txt +@@ -301,8 +301,8 @@ ADD_CUSTOM_TARGET( + ################################################################################ + # add installation rules + +-INSTALL(FILES ${MODULE_OUTPUT_DIR}/${MODULE_NAME}.ko DESTINATION ${CMAKE_PROJECT_NAME}) +-INSTALL(FILES ${TOOLS_DIR}/linux/50-openPOWERLINK.rules DESTINATION ${CMAKE_PROJECT_NAME}) +-INSTALL(PROGRAMS ${TOOLS_DIR}/linux/plkload DESTINATION ${CMAKE_PROJECT_NAME}) +-INSTALL(PROGRAMS ${TOOLS_DIR}/linux/plkunload DESTINATION ${CMAKE_PROJECT_NAME}) +-INSTALL(PROGRAMS ${TOOLS_DIR}/linux/devices.txt DESTINATION ${CMAKE_PROJECT_NAME}) ++INSTALL(FILES ${MODULE_OUTPUT_DIR}/${MODULE_NAME}.ko DESTINATION ${PROJECT_NAME}) ++INSTALL(FILES ${TOOLS_DIR}/linux/50-openPOWERLINK.rules DESTINATION ${PROJECT_NAME}) ++INSTALL(PROGRAMS ${TOOLS_DIR}/linux/plkload DESTINATION ${PROJECT_NAME}) ++INSTALL(PROGRAMS ${TOOLS_DIR}/linux/plkunload DESTINATION ${PROJECT_NAME}) ++INSTALL(PROGRAMS ${TOOLS_DIR}/linux/devices.txt DESTINATION ${PROJECT_NAME}) +-- +2.4.3 + diff --git a/package/openpowerlink/0005-Add-top-level-CMakeLists.txt.patch b/package/openpowerlink/0005-Add-top-level-CMakeLists.txt.patch new file mode 100644 index 00000000000..f7e3c167234 --- /dev/null +++ b/package/openpowerlink/0005-Add-top-level-CMakeLists.txt.patch @@ -0,0 +1,170 @@ +From 5cf3f37e12d0bb4649e3cda29a43d748708aa554 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Wed, 12 Aug 2015 11:24:24 +0200 +Subject: [PATCH] Add top level CMakeLists.txt + +This CMakeLists.txt can be used to build openpowerlink +using a automated build system. + +Don't use FIND_LIBRARY when the stack is built from a top +level build (ie CFG_OPLK_LIB is ON). +For a top level build, CMake will automatically add a build +dependency on oplk libraries for building demos applications. + +This patch has been submitted upstream: +https://github.com/openPOWERLINK/openPOWERLINK_V2/pull/57 + +Signed-off-by: Romain Naour +--- + CMakeLists.txt | 36 +++++++++++++++ + apps/common/cmake/findoplklib.cmake | 68 +++++++++++++++------------- + drivers/linux/drv_daemon_pcap/CMakeLists.txt | 12 +++-- + 3 files changed, 82 insertions(+), 34 deletions(-) + create mode 100644 CMakeLists.txt + +diff --git a/CMakeLists.txt b/CMakeLists.txt +new file mode 100644 +index 0000000..96e3d0f +--- /dev/null ++++ b/CMakeLists.txt +@@ -0,0 +1,36 @@ ++ ++CMAKE_MINIMUM_REQUIRED (VERSION 2.8.7) ++ ++#### LIB #### ++ ++IF (CFG_OPLK_LIB) ++ ADD_SUBDIRECTORY("stack") ++ENDIF (CFG_OPLK_LIB) ++ ++#### Linux kernel module #### ++ ++IF (CFG_KERNEL_DRIVERS) ++ ADD_SUBDIRECTORY("drivers/linux/drv_kernelmod_edrv") ++ENDIF (CFG_KERNEL_DRIVERS) ++ ++#### Pcap userspace driver #### ++ ++IF (CFG_PCAP_DAEMON) ++ ADD_SUBDIRECTORY("drivers/linux/drv_daemon_pcap") ++ENDIF (CFG_PCAP_DAEMON) ++ ++#### OpenPowerLink Demos #### ++ ++# Add subdirectory of CN console demo application ++IF (CFG_DEMO_CN_CONSOLE) ++ ADD_SUBDIRECTORY("apps/demo_cn_console") ++ENDIF (CFG_DEMO_CN_CONSOLE) ++ ++# Add subdirectory of MN console demo application ++IF (CFG_DEMO_MN_CONSOLE) ++ ADD_SUBDIRECTORY("apps/demo_mn_console") ++ENDIF (CFG_DEMO_MN_CONSOLE) ++ ++IF (CFG_DEMO_MN_QT) ++ ADD_SUBDIRECTORY("apps/demo_mn_qt") ++ENDIF (CFG_DEMO_MN_QT) +diff --git a/apps/common/cmake/findoplklib.cmake b/apps/common/cmake/findoplklib.cmake +index 1bf570e..79ea35b 100644 +--- a/apps/common/cmake/findoplklib.cmake ++++ b/apps/common/cmake/findoplklib.cmake +@@ -81,36 +81,42 @@ MACRO(FIND_OPLK_LIBRARY OPLK_NODE_TYPE) + # Set oplk library directory + SET(OPLKLIB_DIR ${OPLK_BASE_DIR}/stack/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR}) + +- IF((CMAKE_GENERATOR MATCHES "Visual Studio") OR (CMAKE_BUILD_TYPE STREQUAL "Release")) +- # Search for release library +- UNSET(OPLKLIB CACHE) +- MESSAGE(STATUS "Searching for LIBRARY ${OPLKLIB_NAME} in ${OPLKLIB_DIR}") +- FIND_LIBRARY(OPLKLIB NAME ${OPLKLIB_NAME} +- HINTS ${OPLKLIB_DIR} ${OPLKLIB_DIR}/${CFG_DEMO_BOARD_NAME}/${CFG_DEMO_NAME}) +- +- IF(CMAKE_SYSTEM_NAME STREQUAL "Windows") +- +- UNSET(OPLKDLL CACHE) +- FIND_PROGRAM(OPLKDLL NAME ${OPLKLIB_NAME}.dll +- HINTS ${OPLKLIB_DIR}) +- +- ENDIF(CMAKE_SYSTEM_NAME STREQUAL "Windows") +- ENDIF() +- +- IF((CMAKE_GENERATOR MATCHES "Visual Studio") OR (CMAKE_BUILD_TYPE STREQUAL "Debug")) +- # Search for debug library +- UNSET(OPLKLIB_DEBUG CACHE) +- MESSAGE(STATUS "Searching for LIBRARY ${OPLKLIB_DEBUG_NAME} in ${OPLKLIB_DIR}") +- FIND_LIBRARY(OPLKLIB_DEBUG NAME ${OPLKLIB_DEBUG_NAME} +- HINTS ${OPLKLIB_DIR} ${OPLKLIB_DIR}/${CFG_DEMO_BOARD_NAME}/${CFG_DEMO_NAME}) +- +- IF(CMAKE_SYSTEM_NAME STREQUAL "Windows") +- +- UNSET(OPLKDLL_DEBUG CACHE) +- FIND_PROGRAM(OPLKDLL_DEBUG NAME ${OPLKLIB_DEBUG_NAME}.dll +- HINTS ${OPLKLIB_DIR}) +- +- ENDIF(CMAKE_SYSTEM_NAME STREQUAL "Windows") +- ENDIF() ++ # Don't look for oplk libraries for a top level build ++ IF(CFG_OPLK_LIB) ++ SET(OPLKLIB ${OPLKLIB_NAME}) ++ SET(OPLKLIB_DEBUG ${OPLKLIB_DEBUG_NAME}) ++ ELSE(CFG_OPLK_LIB) ++ IF((CMAKE_GENERATOR MATCHES "Visual Studio") OR (CMAKE_BUILD_TYPE STREQUAL "Release")) ++ # Search for release library ++ UNSET(OPLKLIB CACHE) ++ MESSAGE(STATUS "Searching for LIBRARY ${OPLKLIB_NAME} in ${OPLKLIB_DIR}") ++ FIND_LIBRARY(OPLKLIB NAME ${OPLKLIB_NAME} ++ HINTS ${OPLKLIB_DIR} ${OPLKLIB_DIR}/${CFG_DEMO_BOARD_NAME}/${CFG_DEMO_NAME}) ++ ++ IF(CMAKE_SYSTEM_NAME STREQUAL "Windows") ++ ++ UNSET(OPLKDLL CACHE) ++ FIND_PROGRAM(OPLKDLL NAME ${OPLKLIB_NAME}.dll ++ HINTS ${OPLKLIB_DIR}) ++ ++ ENDIF(CMAKE_SYSTEM_NAME STREQUAL "Windows") ++ ENDIF() ++ ++ IF((CMAKE_GENERATOR MATCHES "Visual Studio") OR (CMAKE_BUILD_TYPE STREQUAL "Debug")) ++ # Search for debug library ++ UNSET(OPLKLIB_DEBUG CACHE) ++ MESSAGE(STATUS "Searching for LIBRARY ${OPLKLIB_DEBUG_NAME} in ${OPLKLIB_DIR}") ++ FIND_LIBRARY(OPLKLIB_DEBUG NAME ${OPLKLIB_DEBUG_NAME} ++ HINTS ${OPLKLIB_DIR} ${OPLKLIB_DIR}/${CFG_DEMO_BOARD_NAME}/${CFG_DEMO_NAME}) ++ ++ IF(CMAKE_SYSTEM_NAME STREQUAL "Windows") ++ ++ UNSET(OPLKDLL_DEBUG CACHE) ++ FIND_PROGRAM(OPLKDLL_DEBUG NAME ${OPLKLIB_DEBUG_NAME}.dll ++ HINTS ${OPLKLIB_DIR}) ++ ++ ENDIF(CMAKE_SYSTEM_NAME STREQUAL "Windows") ++ ENDIF() ++ ENDIF(CFG_OPLK_LIB) + + ENDMACRO(FIND_OPLK_LIBRARY) +diff --git a/drivers/linux/drv_daemon_pcap/CMakeLists.txt b/drivers/linux/drv_daemon_pcap/CMakeLists.txt +index 2702abd..81bb598 100644 +--- a/drivers/linux/drv_daemon_pcap/CMakeLists.txt ++++ b/drivers/linux/drv_daemon_pcap/CMakeLists.txt +@@ -104,9 +104,15 @@ ENDIF() + SET(OPLKLIB_DIR ${OPLK_BASE_DIR}/stack/lib/${SYSTEM_NAME_DIR}/${SYSTEM_PROCESSOR_DIR}) + SET(OPLKLIB_INCDIR ${OPLK_BASE_DIR}/stack/proj/${SYSTEM_NAME_DIR}/lib${LIB_NAME}) + +-UNSET(OPLKLIB CACHE) +-FIND_LIBRARY(OPLKLIB NAME ${LIB_NAME}${BUILD_TYPE_EXT} +- HINTS ${OPLKLIB_DIR}) ++# Don't look for oplk libraries for a top level build ++IF(CFG_OPLK_LIB) ++ SET(OPLKLIB ${LIB_NAME}${BUILD_TYPE_EXT}) ++ELSE(CFG_OPLK_LIB) ++ UNSET(OPLKLIB CACHE) ++ FIND_LIBRARY(OPLKLIB NAME ${LIB_NAME}${BUILD_TYPE_EXT} ++ HINTS ${OPLKLIB_DIR}) ++ENDIF(CFG_OPLK_LIB) ++ + INCLUDE_DIRECTORIES(${OPLKLIB_INCDIR}) + + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -pedantic -std=c99 -pthread -fno-strict-aliasing") +-- +2.4.3 + diff --git a/package/openpowerlink/Config.in b/package/openpowerlink/Config.in index d87f8bea4e0..e6b41c32891 100644 --- a/package/openpowerlink/Config.in +++ b/package/openpowerlink/Config.in @@ -1,5 +1,4 @@ comment "openpowerlink needs a toolchain w/ C++, threads" - depends on BR2_USE_MMU depends on BR2_i386 || BR2_x86_64 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS @@ -8,111 +7,106 @@ config BR2_PACKAGE_OPENPOWERLINK depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_i386 || BR2_x86_64 - depends on BR2_USE_MMU # qt help - openPOWERLINK is an Open Source Industrial Ethernet - stack implementing the POWERLINK protocol for Managing Node - (MN, POWERLINK Master) and Controlled Node (CN, POWERLINK Slave). + openPOWERLINK is an Open Source Industrial Ethernet stack + implementing the POWERLINK protocol for Managing Node (MN, + POWERLINK Master) and Controlled Node (CN, POWERLINK Slave). It is provided by SYSTEC electronic (http://www.systec-electronic.com), B&R (http://www.br-automation.com) and Kalycito (http://www.kalycito.com). - https://sourceforge.net/projects/openpowerlink/ + http://openpowerlink.sourceforge.net/web/ if BR2_PACKAGE_OPENPOWERLINK choice - prompt "stack implementation" + prompt "MN/CN mode" -config BR2_PACKAGE_OPENPOWERLINK_LIBPCAP - bool "userspace stack" +config BR2_PACKAGE_OPENPOWERLINK_MN + bool "Managing Node" + help + Enable Managing Node (master) mode + +config BR2_PACKAGE_OPENPOWERLINK_CN + bool "Controlled Node" + help + Enable Controlled Node (slave) mode + +endchoice + +choice + prompt "stack type" + +config BR2_PACKAGE_OPENPOWERLINK_STACK_MONOLITHIC_USER_STACK_LIB + bool "linked into application" + select BR2_PACKAGE_LIBPCAP + help + Compile a monolithic openPOWERLINK library. The library + contains an Ethernet driver which is using the PCAP library + for accessing the network. No kernel-side driver is needed. + +config BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB + bool "user-space pcap daemon" select BR2_PACKAGE_LIBPCAP + select BR2_PACKAGE_OPENPOWERLINK_PCAP_DAEMON help - The Linux userspace implementation of the openPOWERLINK stack provides - all functions for a software based POWERLINK solution running as Linux - userspace application. The stack uses the libpcap library for accessing - the network interface and is therefore totally independant of the used - network card and driver. - -config BR2_PACKAGE_OPENPOWERLINK_KERNEL_MODULE - bool "kernel stack" + Compile openPOWERLINK application library which contains the + interface to a Linux user space driver, and the Linux user + space driver. It is used for implementing a multi-process + solution where the openPOWERLINK layer is running as a + separate Linux user space daemon (i.e. a PCAP based user + space daemon). No kernel-side stack is needed. + +config BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB + bool "kernel-space driver" depends on BR2_LINUX_KERNEL help - The openPOWERLINK stack may be implemented as Linux kernel module. - This solution provides the best performance, but is limited to the - available openPOWERLINK network drivers. - You may select BR2_PACKAGE_PCIUTILS for lscpi, - and BR2_PACKAGE_PROCPS for ps command. - These commands are used in EplLoad and EplUndload scripts. + Compile openPOWERLINK application library which contains the + interface to a Linux kernel space driver. This will also + build and install a Linux kernel module openPOWERLINK + driver. + +comment "openpowerlink kernel stack needs a Linux kernel to be built" + depends on !BR2_LINUX_KERNEL endchoice -if BR2_PACKAGE_OPENPOWERLINK_KERNEL_MODULE +if BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB choice prompt "select Ethernet Powerlink Driver" -config BR2_PACKAGE_OPENPOWERLINK_82573 +config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_82573 bool "Intel 82573" -config BR2_PACKAGE_OPENPOWERLINK_8255x +config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_8255x bool "Intel 8255x" -config BR2_PACKAGE_OPENPOWERLINK_I210 +config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_I210 bool "Intel I210" -config BR2_PACKAGE_OPENPOWERLINK_RTL8139 +config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8111 + bool "Realtek RTL-8111/8168" + +config BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8139 bool "Realtek RTL-8139" endchoice -endif - -choice - prompt "Select MN/CN mode" - - config BR2_PACKAGE_OPENPOWERLINK_MN - bool "MN" - help - Enable Managing Node mode - - config BR2_PACKAGE_OPENPOWERLINK_CN - bool "CN" - help - Enable Controlled Node mode - -endchoice +endif # BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB -menu "openpowerlink demos" +menu "demos" config BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_CONSOLE bool "console MN demo" depends on BR2_PACKAGE_OPENPOWERLINK_MN -config BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_QT - bool "qt MN demo" - depends on BR2_PACKAGE_OPENPOWERLINK_MN - depends on BR2_INSTALL_LIBSTDCPP - select BR2_PACKAGE_QT - select BR2_PACKAGE_QT_STL - config BR2_PACKAGE_OPENPOWERLINK_DEMO_CN_CONSOLE bool "console CN demo" - depends on !BR2_PACKAGE_OPENPOWERLINK_MN - -config BR2_PACKAGE_OPENPOWERLINK_DEMO_LINUX_KERNEL - bool "kernel demo" - depends on BR2_PACKAGE_OPENPOWERLINK_KERNEL_MODULE - depends on BR2_PACKAGE_OPENPOWERLINK_MN + depends on BR2_PACKAGE_OPENPOWERLINK_CN endmenu -config BR2_PACKAGE_OPENPOWERLINK_DEBUG_LEVEL - string "debug level for openpowerlink stack" - default "0xEC000000L" - help - Debug level to be used for openPOWERLINK debugging functions. - -endif +endif # BR2_PACKAGE_OPENPOWERLINK diff --git a/package/openpowerlink/openpowerlink.hash b/package/openpowerlink/openpowerlink.hash new file mode 100644 index 00000000000..6b28be81c49 --- /dev/null +++ b/package/openpowerlink/openpowerlink.hash @@ -0,0 +1,5 @@ +# From http://sourceforge.net/projects/openpowerlink/files/openPOWERLINK/V2.2.2/ +md5 d7f2b08d332b36fed5427ebc5ec118f2 openPOWERLINK_V2.2.2.tar.gz +sha1 f565c6a8e10ba320325d120f6030158f4c4278f8 openPOWERLINK_V2.2.2.tar.gz +# sha256 locally computed +sha256 4de00eaf8af1ff3877bfa2e878a59989873406845fc8031bd6fc58cb1f7cf7e7 openPOWERLINK_V2.2.2.tar.gz diff --git a/package/openpowerlink/openpowerlink.mk b/package/openpowerlink/openpowerlink.mk index d9cdcdd50a6..d9ceca4d539 100644 --- a/package/openpowerlink/openpowerlink.mk +++ b/package/openpowerlink/openpowerlink.mk @@ -4,67 +4,122 @@ # ################################################################################ -OPENPOWERLINK_VERSION = V1.08.5 -OPENPOWERLINK_SITE = http://git.code.sf.net/p/openpowerlink/code -OPENPOWERLINK_SITE_METHOD = git +OPENPOWERLINK_VERSION = V2.2.2 +OPENPOWERLINK_SITE = http://downloads.sourceforge.net/project/openpowerlink/openPOWERLINK/$(OPENPOWERLINK_VERSION) +OPENPOWERLINK_SOURCE = openPOWERLINK_$(OPENPOWERLINK_VERSION).tar.gz OPENPOWERLINK_LICENSE = BSD-2c, GPLv2 -OPENPOWERLINK_LICENSE_FILES = license.txt +OPENPOWERLINK_LICENSE_FILES = license.md + OPENPOWERLINK_INSTALL_STAGING = YES -OPENPOWERLINK_CONF_OPTS = -DCFG_DEBUG_LVL=$(call qstrip,$(BR2_PACKAGE_OPENPOWERLINK_DEBUG_LEVEL)) +# The archive has no leading component. +OPENPOWERLINK_STRIP_COMPONENTS = 0 -ifeq ($(BR2_PACKAGE_OPENPOWERLINK_LIBPCAP),y) -# use the user space stack (libpcap) -OPENPOWERLINK_CONF_OPTS += -DCFG_KERNEL_STACK=OFF -OPENPOWERLINK_DEPENDENCIES = libpcap -else -# use the kernel stack +OPENPOWERLINK_MN_ONOFF = $(if $(BR2_PACKAGE_OPENPOWERLINK_MN),ON,OFF) +OPENPOWERLINK_CN_ONOFF = $(if $(BR2_PACKAGE_OPENPOWERLINK_CN),ON,OFF) + +#### OPLK LIBRARY #### + +# Always build a oplk stack +OPENPOWERLINK_CONF_OPTS += -DCFG_OPLK_LIB=ON + +# All option are ON by default +ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_MONOLITHIC_USER_STACK_LIB),y) +OPENPOWERLINK_DEPENDENCIES += libpcap +OPENPOWERLINK_CONF_OPTS += \ + -DCFG_COMPILE_LIB_MN=$(OPENPOWERLINK_MN_ONOFF) \ + -DCFG_COMPILE_LIB_MNAPP_USERINTF=OFF \ + -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=OFF \ + -DCFG_COMPILE_LIB_MNDRV_PCAP=OFF \ + -DCFG_COMPILE_LIB_CN=$(OPENPOWERLINK_CN_ONOFF) \ + -DCFG_COMPILE_LIB_CNAPP_USERINTF=OFF \ + -DCFG_COMPILE_LIB_CNAPP_KERNELINTF=OFF \ + -DCFG_COMPILE_LIB_CNDRV_PCAP=OFF +else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB),y) +OPENPOWERLINK_DEPENDENCIES += libpcap +OPENPOWERLINK_CONF_OPTS += \ + -DCFG_COMPILE_LIB_MN=OFF \ + -DCFG_COMPILE_LIB_MNAPP_USERINTF=$(OPENPOWERLINK_MN_ONOFF) \ + -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=OFF \ + -DCFG_COMPILE_LIB_MNDRV_PCAP=$(OPENPOWERLINK_MN_ONOFF) \ + -DCFG_COMPILE_LIB_CN=OFF \ + -DCFG_COMPILE_LIB_CNAPP_USERINTF=$(OPENPOWERLINK_CN_ONOFF) \ + -DCFG_COMPILE_LIB_CNAPP_KERNELINTF=OFF \ + -DCFG_COMPILE_LIB_CNDRV_PCAP=$(OPENPOWERLINK_CN_ONOFF) +else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y) OPENPOWERLINK_CONF_OPTS += \ - -DCFG_KERNEL_STACK=ON \ - -DCFG_KERNEL_DIR=$(LINUX_DIR) \ - -DCMAKE_SYSTEM_VERSION=$(LINUX_VERSION) -OPENPOWERLINK_DEPENDENCIES = linux + -DCFG_COMPILE_LIB_MN=OFF \ + -DCFG_COMPILE_LIB_MNAPP_USERINTF=OFF \ + -DCFG_COMPILE_LIB_MNAPP_KERNELINTF=$(OPENPOWERLINK_MN_ONOFF) \ + -DCFG_COMPILE_LIB_MNDRV_PCAP=OFF \ + -DCFG_COMPILE_LIB_CN=OFF \ + -DCFG_COMPILE_LIB_CNAPP_USERINTF=OFF \ + -DCFG_COMPILE_LIB_CNAPP_KERNELINTF=$(OPENPOWERLINK_CN_ONOFF) \ + -DCFG_COMPILE_LIB_CNDRV_PCAP=OFF endif -ifeq ($(BR2_PACKAGE_OPENPOWERLINK_82573),y) +OPENPOWERLINK_CONF_OPTS += \ + -DCFG_COMPILE_SHARED_LIBRARY=$(if $(BR2_STATIC_LIBS),OFF,ON) + +#### OPLK KERNEL DRIVERS #### + +ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y) +OPENPOWERLINK_DEPENDENCIES += linux + +OPENPOWERLINK_CONF_OPTS += \ + -DCFG_KERNEL_DRIVERS=ON \ + -DCFG_KERNEL_DIR="$(LINUX_DIR)" \ + -DCMAKE_SYSTEM_VERSION="$(LINUX_VERSION)" \ + -DCFG_OPLK_MN="$(OPENPOWERLINK_MN_ONOFF)" \ + -DMAKE_KERNEL_ARCH="$(KERNEL_ARCH)" \ + -DMAKE_KERNEL_CROSS_COMPILE="$(CCACHE) $(TARGET_CROSS)" + +ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_82573),y) OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=82573 -else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_8255x),y) +else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_8255x),y) OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=8255x -else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_I210),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=I210 -else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_RTL8139),y) +else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_I210),y) +OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=i210 +else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8111),y) +OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=8111 +else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_KERNEL_DRIVER_RTL8139),y) OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_EDRV=8139 endif - -ifeq ($(BR2_PACKAGE_OPENPOWERLINK_MN),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_MN=ON -else -OPENPOWERLINK_CONF_OPTS += -DCFG_POWERLINK_MN=OFF endif -ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_CONSOLE),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_MN_CONSOLE=ON -else -OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_MN_CONSOLE=OFF +#### OPLK PCAP DAEMON #### + +ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB),y) +OPENPOWERLINK_CONF_OPTS += \ + -DCFG_PCAP_DAEMON=ON \ + -DCFG_OPLK_MN=$(OPENPOWERLINK_MN_ONOFF) endif -ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_QT),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_MN_QT=ON -OPENPOWERLINK_DEPENDENCIES += qt -else -OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_MN_QT=OFF +#### OPLK DEMO APPS #### + +# See apps/common/cmake/configure-linux.cmake for available options list. +ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_MONOLITHIC_USER_STACK_LIB),y) +OPENPOWERLINK_CONF_OPTS += \ + -DCFG_BUILD_KERNEL_STACK="Link to Application" +else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_USERSPACE_DAEMON_LIB),y) +OPENPOWERLINK_CONF_OPTS += \ + -DCFG_BUILD_KERNEL_STACK="Linux Userspace Daemon" +else ifeq ($(BR2_PACKAGE_OPENPOWERLINK_STACK_KERNEL_STACK_LIB),y) +OPENPOWERLINK_CONF_OPTS += \ + -DCFG_BUILD_KERNEL_STACK="Linux Kernel Module" endif -ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_CN_CONSOLE),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_CN_CONSOLE=ON +ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_MN_CONSOLE),y) +OPENPOWERLINK_CONF_OPTS += -DCFG_DEMO_MN_CONSOLE=ON \ + -DCFG_DEMO_MN_CONSOLE_USE_SYNCTHREAD=ON else -OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_CN_CONSOLE=OFF +OPENPOWERLINK_CONF_OPTS += -DCFG_DEMO_MN_CONSOLE=OFF endif -ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_LINUX_KERNEL),y) -OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_LINUX_KERNEL=ON +ifeq ($(BR2_PACKAGE_OPENPOWERLINK_DEMO_CN_CONSOLE),y) +OPENPOWERLINK_CONF_OPTS += -DCFG_DEMO_CN_CONSOLE=ON else -OPENPOWERLINK_CONF_OPTS += -DCFG_X86_DEMO_LINUX_KERNEL=OFF +OPENPOWERLINK_CONF_OPTS += -DCFG_DEMO_CN_CONSOLE=OFF endif $(eval $(cmake-package)) diff --git a/package/openssh/S50sshd b/package/openssh/S50sshd index 65bdb9070d5..c15114257f8 100644 --- a/package/openssh/S50sshd +++ b/package/openssh/S50sshd @@ -12,13 +12,13 @@ umask 077 start() { - echo -n "Starting sshd: " + printf "Starting sshd: " /usr/sbin/sshd touch /var/lock/sshd echo "OK" } stop() { - echo -n "Stopping sshd: " + printf "Stopping sshd: " killall sshd rm -f /var/lock/sshd echo "OK" diff --git a/package/openssh/openssh.hash b/package/openssh/openssh.hash index 76d0be85c9d..b93b4a9c88d 100644 --- a/package/openssh/openssh.hash +++ b/package/openssh/openssh.hash @@ -1,3 +1,3 @@ # Locally calculated after checking pgp signature -# Also from http://www.openssh.com/txt/release-6.9 (sha256 is base64 encoded) -sha256 6e074df538f357d440be6cf93dc581a21f22d39e236f217fcd8eacbb6c896cfe openssh-6.9p1.tar.gz +# Also from http://www.openssh.com/txt/release-7.1p2 +sha256 dd75f024dcf21e06a0d6421d582690bf987a1f6323e32ad6619392f3bfde6bbd openssh-7.1p2.tar.gz diff --git a/package/openssh/openssh.mk b/package/openssh/openssh.mk index 1b30960cf52..827a8e1924c 100644 --- a/package/openssh/openssh.mk +++ b/package/openssh/openssh.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENSSH_VERSION = 6.9p1 +OPENSSH_VERSION = 7.1p2 OPENSSH_SITE = http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable OPENSSH_LICENSE = BSD-3c BSD-2c Public Domain OPENSSH_LICENSE_FILES = LICENCE @@ -26,6 +26,10 @@ endef ifeq ($(BR2_arc),y) OPENSSH_CONF_OPTS += --without-pie endif +# PIE and static does not work on Linux +ifeq ($(BR2_STATIC_LIBS),y) +OPENSSH_CONF_OPTS += --without-pie +endif OPENSSH_DEPENDENCIES = zlib openssl diff --git a/package/openssl/0001-Dont-waste-time-building-manpages-if-we-re-not-going.patch b/package/openssl/0001-Dont-waste-time-building-manpages-if-we-re-not-going.patch new file mode 100644 index 00000000000..10d2b7526cf --- /dev/null +++ b/package/openssl/0001-Dont-waste-time-building-manpages-if-we-re-not-going.patch @@ -0,0 +1,27 @@ +From 389efb564fa1453a9da835393eec9006bfae2a52 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger +Date: Sat, 16 May 2015 18:53:51 +0200 +Subject: Dont waste time building manpages if we're not going to use em. + +Signed-off-by: Ryan Barnett +[Gustavo: update for parallel-build] +--- + Makefile.org | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.org b/Makefile.org +index 60f07cc..976ceaf 100644 +--- a/Makefile.org ++++ b/Makefile.org +@@ -527,7 +527,7 @@ dist: + dist_pem_h: + (cd crypto/pem; $(MAKE) -e $(BUILDENV) pem.h; $(MAKE) clean) + +-install: install_docs install_sw ++install: install_sw + + install_sw: + @$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \ +-- +1.9.1 + diff --git a/package/openssl/003-cryptodev-Fix-issue-with-signature-generation.patch b/package/openssl/0002-cryptodev-Fix-issue-with-signature-generation.patch similarity index 82% rename from package/openssl/003-cryptodev-Fix-issue-with-signature-generation.patch rename to package/openssl/0002-cryptodev-Fix-issue-with-signature-generation.patch index 19ed5e7cd4f..47295500c0f 100644 --- a/package/openssl/003-cryptodev-Fix-issue-with-signature-generation.patch +++ b/package/openssl/0002-cryptodev-Fix-issue-with-signature-generation.patch @@ -1,3 +1,8 @@ +From 90fd7e8f1a316cda86ee442b43fcd7d5e5baeede Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Sat, 16 May 2015 18:55:08 +0200 +Subject: cryptodev: Fix issue with signature generation + Forward port of 0001-cryptodev-Fix-issue-with-signature-generation.patch from http://rt.openssl.org/Ticket/Display.html?id=2770&user=guest&pass=guest It was originally targetted at 1.0.2-beta3. @@ -5,10 +10,15 @@ It was originally targetted at 1.0.2-beta3. Without this patch digest acceleration via cryptodev is broken. Signed-off-by: Gustavo Zacarias +Signed-off-by: Ryan Barnett +--- + crypto/engine/eng_cryptodev.c | 195 +++++++++++++++++++++++++++++++----------- + 1 file changed, 146 insertions(+), 49 deletions(-) -diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto/engine/eng_cryptodev.c ---- openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c 2015-01-28 14:59:58.146682462 -0300 -+++ openssl-1.0.2/crypto/engine/eng_cryptodev.c 2015-01-28 15:29:25.107649077 -0300 +diff --git a/crypto/engine/eng_cryptodev.c b/crypto/engine/eng_cryptodev.c +index 926d95c..7021d9a 100644 +--- a/crypto/engine/eng_cryptodev.c ++++ b/crypto/engine/eng_cryptodev.c @@ -2,6 +2,7 @@ * Copyright (c) 2002 Bob Beck * Copyright (c) 2002 Theo de Raadt @@ -17,7 +27,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto * All rights reserved. * * Redistribution and use in source and binary forms, with or without -@@ -72,7 +73,6 @@ +@@ -72,7 +73,6 @@ struct dev_crypto_state { struct session_op d_sess; int d_fd; # ifdef USE_CRYPTODEV_DIGESTS @@ -25,7 +35,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto unsigned char digest_res[HASH_MAX_LEN]; char *mac_data; int mac_len; -@@ -189,8 +189,10 @@ +@@ -189,8 +189,10 @@ static struct { static struct { int id; int nid; @@ -37,7 +47,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto { CRYPTO_MD5_HMAC, NID_hmacWithMD5, 16 }, -@@ -198,15 +200,15 @@ +@@ -198,15 +200,15 @@ static struct { CRYPTO_SHA1_HMAC, NID_hmacWithSHA1, 20 }, { @@ -57,7 +67,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto { CRYPTO_MD5, NID_md5, 16 }, -@@ -214,6 +216,15 @@ +@@ -214,6 +216,15 @@ static struct { CRYPTO_SHA1, NID_sha1, 20 }, { @@ -73,7 +83,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto 0, NID_undef, 0 }, }; -@@ -288,13 +299,14 @@ +@@ -288,13 +299,14 @@ static int get_cryptodev_ciphers(const int **cnids) static int nids[CRYPTO_ALGORITHM_MAX]; struct session_op sess; int fd, i, count = 0; @@ -89,7 +99,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto for (i = 0; ciphers[i].id && count < CRYPTO_ALGORITHM_MAX; i++) { if (ciphers[i].nid == NID_undef) -@@ -327,18 +339,19 @@ +@@ -327,18 +339,19 @@ static int get_cryptodev_digests(const int **cnids) static int nids[CRYPTO_ALGORITHM_MAX]; struct session_op sess; int fd, i, count = 0; @@ -111,7 +121,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto sess.cipher = 0; if (ioctl(fd, CIOCGSESSION, &sess) != -1 && ioctl(fd, CIOCFSESSION, &sess.ses) != -1) -@@ -424,14 +437,14 @@ +@@ -424,14 +437,14 @@ cryptodev_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, cryp.ses = sess->ses; cryp.flags = 0; cryp.len = inl; @@ -129,7 +139,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto if (!ctx->encrypt) { iiv = in + inl - ctx->cipher->iv_len; memcpy(save_iv, iiv, ctx->cipher->iv_len); -@@ -483,7 +496,7 @@ +@@ -483,7 +496,7 @@ cryptodev_init_key(EVP_CIPHER_CTX *ctx, const unsigned char *key, if ((state->d_fd = get_dev_crypto()) < 0) return (0); @@ -138,7 +148,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto sess->keylen = ctx->key_len; sess->cipher = cipher; -@@ -749,16 +762,6 @@ +@@ -749,16 +762,6 @@ static int digest_nid_to_cryptodev(int nid) return (0); } @@ -155,7 +165,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto static int cryptodev_digest_init(EVP_MD_CTX *ctx) { struct dev_crypto_state *state = ctx->md_data; -@@ -769,7 +772,6 @@ +@@ -769,7 +772,6 @@ static int cryptodev_digest_init(EVP_MD_CTX *ctx) printf("cryptodev_digest_init: Can't get digest \n"); return (0); } @@ -163,7 +173,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto memset(state, 0, sizeof(struct dev_crypto_state)); if ((state->d_fd = get_dev_crypto()) < 0) { -@@ -777,8 +779,8 @@ +@@ -777,8 +779,8 @@ static int cryptodev_digest_init(EVP_MD_CTX *ctx) return (0); } @@ -174,7 +184,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto sess->mac = digest; if (ioctl(state->d_fd, CIOCGSESSION, sess) < 0) { -@@ -794,8 +796,8 @@ +@@ -794,8 +796,8 @@ static int cryptodev_digest_init(EVP_MD_CTX *ctx) static int cryptodev_digest_update(EVP_MD_CTX *ctx, const void *data, size_t count) { @@ -184,7 +194,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto struct session_op *sess = &state->d_sess; if (!data || state->d_fd < 0) { -@@ -804,7 +806,7 @@ +@@ -804,7 +806,7 @@ static int cryptodev_digest_update(EVP_MD_CTX *ctx, const void *data, } if (!count) { @@ -193,7 +203,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto } if (!(ctx->flags & EVP_MD_CTX_FLAG_ONESHOT)) { -@@ -828,9 +830,9 @@ +@@ -828,9 +830,9 @@ static int cryptodev_digest_update(EVP_MD_CTX *ctx, const void *data, cryp.ses = sess->ses; cryp.flags = 0; cryp.len = count; @@ -205,7 +215,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto if (ioctl(state->d_fd, CIOCCRYPT, &cryp) < 0) { printf("cryptodev_digest_update: digest failed\n"); return (0); -@@ -844,8 +846,6 @@ +@@ -844,8 +846,6 @@ static int cryptodev_digest_final(EVP_MD_CTX *ctx, unsigned char *md) struct dev_crypto_state *state = ctx->md_data; struct session_op *sess = &state->d_sess; @@ -214,7 +224,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto if (!md || state->d_fd < 0) { printf("cryptodev_digest_final: illegal input\n"); return (0); -@@ -859,7 +859,7 @@ +@@ -859,7 +859,7 @@ static int cryptodev_digest_final(EVP_MD_CTX *ctx, unsigned char *md) cryp.len = state->mac_len; cryp.src = state->mac_data; cryp.dst = NULL; @@ -223,7 +233,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto if (ioctl(state->d_fd, CIOCCRYPT, &cryp) < 0) { printf("cryptodev_digest_final: digest failed\n"); return (0); -@@ -870,7 +870,7 @@ +@@ -870,7 +870,7 @@ static int cryptodev_digest_final(EVP_MD_CTX *ctx, unsigned char *md) memcpy(md, state->digest_res, ctx->digest->md_size); @@ -232,7 +242,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto } static int cryptodev_digest_cleanup(EVP_MD_CTX *ctx) -@@ -921,8 +921,8 @@ +@@ -921,8 +921,8 @@ static int cryptodev_digest_copy(EVP_MD_CTX *to, const EVP_MD_CTX *from) digest = digest_nid_to_cryptodev(to->digest->type); @@ -243,7 +253,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto sess->mac = digest; dstate->d_fd = get_dev_crypto(); -@@ -947,32 +947,116 @@ +@@ -947,32 +947,116 @@ static int cryptodev_digest_copy(EVP_MD_CTX *to, const EVP_MD_CTX *from) const EVP_MD cryptodev_sha1 = { NID_sha1, @@ -367,7 +377,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto }; # endif /* USE_CRYPTODEV_DIGESTS */ -@@ -992,6 +1076,18 @@ +@@ -992,6 +1076,18 @@ cryptodev_engine_digests(ENGINE *e, const EVP_MD **digest, case NID_sha1: *digest = &cryptodev_sha1; break; @@ -386,7 +396,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto default: # endif /* USE_CRYPTODEV_DIGESTS */ *digest = NULL; -@@ -1022,7 +1118,7 @@ +@@ -1022,7 +1118,7 @@ static int bn2crparam(const BIGNUM *a, struct crparam *crp) return (1); memset(b, 0, bytes); @@ -395,7 +405,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto crp->crp_nbits = bits; for (i = 0, j = 0; i < a->top; i++) { -@@ -1277,7 +1373,7 @@ +@@ -1277,7 +1373,7 @@ static DSA_SIG *cryptodev_dsa_do_sign(const unsigned char *dgst, int dlen, kop.crk_op = CRK_DSA_SIGN; /* inputs: dgst dsa->p dsa->q dsa->g dsa->priv_key */ @@ -404,7 +414,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto kop.crk_param[0].crp_nbits = dlen * 8; if (bn2crparam(dsa->p, &kop.crk_param[1])) goto err; -@@ -1317,7 +1413,7 @@ +@@ -1317,7 +1413,7 @@ cryptodev_dsa_verify(const unsigned char *dgst, int dlen, kop.crk_op = CRK_DSA_VERIFY; /* inputs: dgst dsa->p dsa->q dsa->g dsa->pub_key sig->r sig->s */ @@ -413,7 +423,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto kop.crk_param[0].crp_nbits = dlen * 8; if (bn2crparam(dsa->p, &kop.crk_param[1])) goto err; -@@ -1398,9 +1494,10 @@ +@@ -1398,9 +1494,10 @@ cryptodev_dh_compute_key(unsigned char *key, const BIGNUM *pub_key, DH *dh) goto err; kop.crk_iparams = 3; @@ -426,7 +436,7 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto if (ioctl(fd, CIOCKEY, &kop) == -1) { const DH_METHOD *meth = DH_OpenSSL(); -@@ -1470,7 +1567,7 @@ +@@ -1470,7 +1567,7 @@ void ENGINE_load_cryptodev(void) put_dev_crypto(fd); if (!ENGINE_set_id(engine, "cryptodev") || @@ -435,3 +445,6 @@ diff -Nura openssl-1.0.2.orig/crypto/engine/eng_cryptodev.c openssl-1.0.2/crypto !ENGINE_set_ciphers(engine, cryptodev_engine_ciphers) || !ENGINE_set_digests(engine, cryptodev_engine_digests) || !ENGINE_set_ctrl_function(engine, cryptodev_ctrl) || +-- +1.9.1 + diff --git a/package/openssl/001-do-not-build-docs.patch b/package/openssl/001-do-not-build-docs.patch deleted file mode 100644 index 135a9d3b04e..00000000000 --- a/package/openssl/001-do-not-build-docs.patch +++ /dev/null @@ -1,13 +0,0 @@ -Dont waste time building manpages if we're not going to use em. - ---- openssl/Makefile.org -+++ openssl/Makefile.org -@@ -792,7 +792,7 @@ - dist_pem_h: - (cd crypto/pem; $(MAKE) CC='${CC}' SDIRS='${SDIRS}' CFLAG='${CFLAG}' pem.h; $(MAKE) clean) - --install: all install_docs install_sw -+install: all install_sw - - install_sw: - @$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \ diff --git a/package/openssl/openssl.hash b/package/openssl/openssl.hash index 355be79067e..e3ea2aedced 100644 --- a/package/openssl/openssl.hash +++ b/package/openssl/openssl.hash @@ -1,2 +1,7 @@ -# From https://www.openssl.org/source/openssl-1.0.2d.tar.gz.sha256 -sha256 671c36487785628a703374c652ad2cebea45fa920ae5681515df25d9f2c9a8c8 openssl-1.0.2d.tar.gz +# From https://www.openssl.org/source/openssl-1.0.2g.tar.gz.sha256 +sha256 b784b1b3907ce39abf4098702dade6365522a253ad1552e267a9a0e89594aa33 openssl-1.0.2g.tar.gz +# Locally computed +sha256 eddd8a5123748052c598214487ac178e4bfa4e31ba2ec520c70d59c8c5bfa2e9 openssl-1.0.2a-parallel-install-dirs.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d +sha256 147c3eeaad614c044749ea527cb433eae5e2d5cad34a78c6ba61cd967bfbe01f openssl-1.0.2a-parallel-obj-headers.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d +sha256 30cb49489de5041841a74da9155cd4fabfbce33237262ba7cd23974314ae2956 openssl-1.0.2a-parallel-symlinking.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d +sha256 deaf6f3af41874ecc6d63841ea14b8e6c71cea81d4a511a754bc90c9a993147f openssl-1.0.2d-parallel-build.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d diff --git a/package/openssl/openssl.mk b/package/openssl/openssl.mk index 3d87919eddc..30dfe31dd06 100644 --- a/package/openssl/openssl.mk +++ b/package/openssl/openssl.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENSSL_VERSION = 1.0.2d +OPENSSL_VERSION = 1.0.2g OPENSSL_SITE = http://www.openssl.org/source OPENSSL_LICENSE = OpenSSL or SSLeay OPENSSL_LICENSE_FILES = LICENSE @@ -13,6 +13,11 @@ OPENSSL_DEPENDENCIES = zlib HOST_OPENSSL_DEPENDENCIES = host-zlib OPENSSL_TARGET_ARCH = generic32 OPENSSL_CFLAGS = $(TARGET_CFLAGS) +OPENSSL_PATCH = \ + https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/openssl/files/openssl-1.0.2d-parallel-build.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d \ + https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/openssl/files/openssl-1.0.2a-parallel-obj-headers.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d \ + https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/openssl/files/openssl-1.0.2a-parallel-install-dirs.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d \ + https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-libs/openssl/files/openssl-1.0.2a-parallel-symlinking.patch?id=c8abcbe8de5d3b6cdd68c162f398c011ff6e2d9d ifeq ($(BR2_USE_MMU),) OPENSSL_CFLAGS += -DHAVE_FORK=0 @@ -63,7 +68,7 @@ define HOST_OPENSSL_CONFIGURE_CMDS shared \ zlib-dynamic \ ) - $(SED) "s:-O[0-9]:$(HOST_CFLAGS):" $(@D)/Makefile + $(SED) "s#-O[0-9]#$(HOST_CFLAGS)#" $(@D)/Makefile endef define OPENSSL_CONFIGURE_CMDS @@ -77,7 +82,6 @@ define OPENSSL_CONFIGURE_CMDS --libdir=/lib \ $(if $(BR2_TOOLCHAIN_HAS_THREADS),threads,no-threads) \ $(if $(BR2_STATIC_LIBS),no-shared,shared) \ - no-idea \ no-rc5 \ enable-camellia \ enable-mdc2 \ @@ -85,37 +89,37 @@ define OPENSSL_CONFIGURE_CMDS $(if $(BR2_STATIC_LIBS),zlib,zlib-dynamic) \ $(if $(BR2_STATIC_LIBS),no-dso) \ ) - $(SED) "s:-march=[-a-z0-9] ::" -e "s:-mcpu=[-a-z0-9] ::g" $(@D)/Makefile - $(SED) "s:-O[0-9]:$(OPENSSL_CFLAGS):" $(@D)/Makefile - $(SED) "s: build_tests::" $(@D)/Makefile + $(SED) "s#-march=[-a-z0-9] ##" -e "s#-mcpu=[-a-z0-9] ##g" $(@D)/Makefile + $(SED) "s#-O[0-9]#$(OPENSSL_CFLAGS)#" $(@D)/Makefile + $(SED) "s# build_tests##" $(@D)/Makefile endef # libdl is not available in a static build, and this is not implied by no-dso ifeq ($(BR2_STATIC_LIBS),y) define OPENSSL_FIXUP_STATIC_MAKEFILE - $(SED) 's/-ldl//g' $(@D)/Makefile + $(SED) 's#-ldl##g' $(@D)/Makefile endef OPENSSL_POST_CONFIGURE_HOOKS += OPENSSL_FIXUP_STATIC_MAKEFILE endif define HOST_OPENSSL_BUILD_CMDS - $(MAKE1) -C $(@D) + $(MAKE) -C $(@D) endef define OPENSSL_BUILD_CMDS - $(MAKE1) -C $(@D) + $(MAKE) -C $(@D) endef define OPENSSL_INSTALL_STAGING_CMDS - $(MAKE1) -C $(@D) INSTALL_PREFIX=$(STAGING_DIR) install + $(MAKE) -C $(@D) INSTALL_PREFIX=$(STAGING_DIR) install endef define HOST_OPENSSL_INSTALL_CMDS - $(MAKE1) -C $(@D) install + $(MAKE) -C $(@D) install endef define OPENSSL_INSTALL_TARGET_CMDS - $(MAKE1) -C $(@D) INSTALL_PREFIX=$(TARGET_DIR) install + $(MAKE) -C $(@D) INSTALL_PREFIX=$(TARGET_DIR) install rm -rf $(TARGET_DIR)/usr/lib/ssl rm -f $(TARGET_DIR)/usr/bin/c_rehash endef @@ -123,9 +127,9 @@ endef # libdl has no business in a static build ifeq ($(BR2_STATIC_LIBS),y) define OPENSSL_FIXUP_STATIC_PKGCONFIG - $(SED) 's/-ldl//' $(STAGING_DIR)/usr/lib/pkgconfig/libcrypto.pc - $(SED) 's/-ldl//' $(STAGING_DIR)/usr/lib/pkgconfig/libssl.pc - $(SED) 's/-ldl//' $(STAGING_DIR)/usr/lib/pkgconfig/openssl.pc + $(SED) 's#-ldl##' $(STAGING_DIR)/usr/lib/pkgconfig/libcrypto.pc + $(SED) 's#-ldl##' $(STAGING_DIR)/usr/lib/pkgconfig/libssl.pc + $(SED) 's#-ldl##' $(STAGING_DIR)/usr/lib/pkgconfig/openssl.pc endef OPENSSL_POST_INSTALL_STAGING_HOOKS += OPENSSL_FIXUP_STATIC_PKGCONFIG endif diff --git a/package/openswan/openswan.hash b/package/openswan/openswan.hash index 4853b3f541f..5929f8d1900 100644 --- a/package/openswan/openswan.hash +++ b/package/openswan/openswan.hash @@ -1,2 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 ac7ef1d78766801f23c458cc7c3b080ca6e20c5144a1979598c319bc3bc7c88b openswan-2.6.43.tar.gz +# Locally calculated +sha256 c1605c96d3c3cf357cefea7622f3acbc7a02d6a3cebfb76979327b566084a5ea openswan-2.6.46.tar.gz diff --git a/package/openswan/openswan.mk b/package/openswan/openswan.mk index b7689c14a70..54bd4b3eff5 100644 --- a/package/openswan/openswan.mk +++ b/package/openswan/openswan.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENSWAN_VERSION = 2.6.43 +OPENSWAN_VERSION = 2.6.46 OPENSWAN_SITE = http://download.openswan.org/openswan OPENSWAN_LICENSE = GPLv2+, BSD-3c OPENSWAN_LICENSE_FILES = COPYING LICENSE diff --git a/package/openvmtools/Config.in b/package/openvmtools/Config.in index 8e22eff0052..64bf65c5c9b 100644 --- a/package/openvmtools/Config.in +++ b/package/openvmtools/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_OPENVMTOOLS depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC depends on BR2_ENABLE_LOCALE + depends on !BR2_TOOLCHAIN_USES_UCLIBC select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBDNET help @@ -36,16 +37,18 @@ config BR2_PACKAGE_OPENVMTOOLS_PAM # linux-pam needs locale and wchar, but we already have this # dependency on the main symbol, above. depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam help Support for PAM in openvmtools -comment "PAM support needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS +comment "PAM support needs an (e)glibc toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL endif -comment "openvmtools needs a toolchain w/ wchar, threads, RPC, locale" +comment "openvmtools needs an (e)glibc or musl toolchain w/ wchar, threads, RPC, locale" depends on BR2_i386 || BR2_x86_64 depends on BR2_USE_MMU depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ - !BR2_TOOLCHAIN_HAS_NATIVE_RPC || !BR2_ENABLE_LOCALE + !BR2_TOOLCHAIN_HAS_NATIVE_RPC || !BR2_ENABLE_LOCALE || \ + BR2_TOOLCHAIN_USES_UCLIBC diff --git a/package/openvmtools/S10vmtoolsd b/package/openvmtools/S10vmtoolsd index 969ba930fa4..6afb9ca08ac 100644 --- a/package/openvmtools/S10vmtoolsd +++ b/package/openvmtools/S10vmtoolsd @@ -9,7 +9,7 @@ PID="/var/run/vmtoolsd.pid" case "$1" in start) - echo -n "Starting vmtoolsd: " + printf "Starting vmtoolsd: " start-stop-daemon -S -q -x $EXEC -- $ARGS $PID if [ $? != 0 ]; then echo "FAILED" @@ -19,7 +19,7 @@ case "$1" in fi ;; stop) - echo -n "Stopping vmtoolsd: " + printf "Stopping vmtoolsd: " start-stop-daemon -K -q -p $PID echo "OK" ;; diff --git a/package/openvpn/Config.in b/package/openvpn/Config.in index 5edb479d9f7..2e3712554ed 100644 --- a/package/openvpn/Config.in +++ b/package/openvpn/Config.in @@ -27,6 +27,12 @@ config BR2_PACKAGE_OPENVPN_SMALL You loose eurephia, debugging info, help messages and more. It saves around 100 KiB in binary file size. +config BR2_PACKAGE_OPENVPN_PWSAVE + bool "Allow passwords in files" + help + Allow --askpass and --auth-user-pass passwords to be read + from a file. + choice prompt "Crypto backend" default BR2_PACKAGE_OPENVPN_CRYPTO_OPENSSL diff --git a/package/openvpn/S60openvpn b/package/openvpn/S60openvpn index 94bdc600e05..de82a5095e3 100755 --- a/package/openvpn/S60openvpn +++ b/package/openvpn/S60openvpn @@ -14,8 +14,8 @@ test -d $CONFIG_DIR || exit 0 start_vpn () { $DAEMON --daemon --writepid /var/run/openvpn.$NAME.pid \ - --config $CONFIG_DIR/$NAME.conf --cd $CONFIG_DIR || echo -n " FAILED->" - echo -n " $NAME" + --config $CONFIG_DIR/$NAME.conf --cd $CONFIG_DIR || printf " FAILED->" + printf " $NAME" } stop_vpn () { kill `cat $PIDFILE` || true @@ -24,7 +24,7 @@ stop_vpn () { case "$1" in start) - echo -n "Starting openvpn:" + printf "Starting openvpn:" if test -z $2 ; then for CONFIG in `cd $CONFIG_DIR; ls *.conf 2> /dev/null`; do @@ -36,21 +36,21 @@ start) NAME=$2 start_vpn else - echo -n " No such VPN: $2" + printf " No such VPN: $2" fi fi echo "." ;; stop) - echo -n "Stopping openvpn:" + printf "Stopping openvpn:" if test -z $2 ; then for PIDFILE in `ls /var/run/openvpn.*.pid 2> /dev/null`; do NAME=`echo $PIDFILE | cut -c18-` NAME=${NAME%%.pid} stop_vpn - echo -n " $NAME" + printf " $NAME" done else if test -e /var/run/openvpn.$2.pid ; then @@ -58,16 +58,16 @@ stop) NAME=`echo $PIDFILE | cut -c18-` NAME=${NAME%%.pid} stop_vpn - echo -n " $NAME" + printf " $NAME" else - echo -n " No such VPN: $2" + printf " No such VPN: $2" fi fi echo "." ;; # We only 'reload' for running VPNs. New ones will only start with 'start' or 'restart'. reload|force-reload) - echo -n "Reloading openvpn:" + printf "Reloading openvpn:" for PIDFILE in `ls /var/run/openvpn.*.pid 2> /dev/null`; do NAME=`echo $PIDFILE | cut -c18-` NAME=${NAME%%.pid} @@ -76,12 +76,12 @@ reload|force-reload) stop_vpn sleep 1 start_vpn - echo -n "(restarted)" + printf "(restarted)" else kill -HUP `cat $PIDFILE` || true # start-stop-daemon --stop --signal HUP --quiet --oknodo \ # --exec $DAEMON --pidfile $PIDFILE - echo -n " $NAME" + printf " $NAME" fi done echo "." diff --git a/package/openvpn/openvpn.hash b/package/openvpn/openvpn.hash index 9a917b95df1..4ab916ea249 100644 --- a/package/openvpn/openvpn.hash +++ b/package/openvpn/openvpn.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 4062ce972500f98988e9c6e9dd1040be25582f0d49aa7e69f3f4cff96e9aebee openvpn-2.3.7.tar.xz +sha256 52f16bef3a02369682f1464fbd2821070c98d0bd993f4c46c764e87375abdcc1 openvpn-2.3.9.tar.xz diff --git a/package/openvpn/openvpn.mk b/package/openvpn/openvpn.mk index 336d491ae38..8f02792c892 100644 --- a/package/openvpn/openvpn.mk +++ b/package/openvpn/openvpn.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPENVPN_VERSION = 2.3.7 +OPENVPN_VERSION = 2.3.9 OPENVPN_SOURCE = openvpn-$(OPENVPN_VERSION).tar.xz OPENVPN_SITE = http://swupdate.openvpn.net/community/releases OPENVPN_DEPENDENCIES = host-pkgconf @@ -41,6 +41,12 @@ else OPENVPN_CONF_OPTS += --disable-lzo endif +ifeq ($(BR2_PACKAGE_OPENVPN_PWSAVE),y) +OPENVPN_CONF_OPTS += --enable-password-save +else +OPENVPN_CONF_OPTS += --disable-password-save +endif + ifeq ($(BR2_PACKAGE_OPENVPN_CRYPTO_OPENSSL),y) OPENVPN_CONF_OPTS += --with-crypto-library=openssl OPENVPN_DEPENDENCIES += openssl diff --git a/package/opkg/opkg.mk b/package/opkg/opkg.mk index bcf3f780577..6e4d4ff3665 100644 --- a/package/opkg/opkg.mk +++ b/package/opkg/opkg.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPKG_VERSION = v0.3.0 +OPKG_VERSION = v0.3.1 OPKG_SITE = http://git.yoctoproject.org/git/opkg OPKG_SITE_METHOD = git # Uses PKG_CHECK_MODULES() in configure.ac diff --git a/package/oprofile/0001-Include-time.h-for-nanosleep.patch b/package/oprofile/0001-Include-time.h-for-nanosleep.patch deleted file mode 100644 index d4a9ca2abe0..00000000000 --- a/package/oprofile/0001-Include-time.h-for-nanosleep.patch +++ /dev/null @@ -1,44 +0,0 @@ -From c5b93c33a81d7c52dc6089387e415f2d653f758f Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Mon, 29 Dec 2014 11:43:51 +0100 -Subject: [PATCH] Include for nanosleep() - -The nanosleep() function prototype is in , so this header file -should be included whenever nanosleep() is used. Not including it -causes some issues when building OProfile against a non-thread capable -version of the uClibc C library, probably because in such situation, - does not get included by another header. - -Signed-off-by: Thomas Petazzoni ---- - pe_counting/ocount.cpp | 1 + - pe_profiling/operf.cpp | 1 + - 2 files changed, 2 insertions(+) - -diff --git a/pe_counting/ocount.cpp b/pe_counting/ocount.cpp -index 07dfd0c..fba29eb 100644 ---- a/pe_counting/ocount.cpp -+++ b/pe_counting/ocount.cpp -@@ -28,6 +28,7 @@ - #include - #include - #include -+#include - - #include "op_pe_utils.h" - #include "ocount_counter.h" -diff --git a/pe_profiling/operf.cpp b/pe_profiling/operf.cpp -index 04a25d9..4238754 100644 ---- a/pe_profiling/operf.cpp -+++ b/pe_profiling/operf.cpp -@@ -33,6 +33,7 @@ - #include - #include - #include -+#include - #include - #include "operf_utils.h" - #include "op_pe_utils.h" --- -2.1.0 - diff --git a/package/oprofile/0001-musl.patch b/package/oprofile/0001-musl.patch new file mode 100644 index 00000000000..094cd1647af --- /dev/null +++ b/package/oprofile/0001-musl.patch @@ -0,0 +1,48 @@ +Remove non-Posix use of FTW_ACTIONRETVAL + +The musl implementation of nftw doesn't support the glibc extension +FTW_ACTIONRETVAL. Since none of the features of FTW_ACTIONRETVAL are +used here, just use the normal nftw return value. + +Downloaded from: +https://github.com/openwrt-mirror/openwrt/blob/f22d5e25660106a48727c7aa5d1a73e4171a7987/package/devel/oprofile/patches/100-musl.patch +after I found a hint for the patch here: +http://patchwork.openembedded.org/patch/112675/ + +Removed unneeded patch for libop/op_events.c. + +Because openwrt removed the oprofile package from their repo last week +https://github.com/openwrt-mirror/openwrt/commit/aaf46a8524e138e1673a398e8d2dd9357405b313#diff-fe14456f94abf436d997e2c01c10f3bd +I decided to put this patch into the buildroot repo instead of adding +_PATCH to oprofile.mk + +Signed-off-by: Bernd Kuhls + +--- a/pe_profiling/operf.cpp ++++ b/pe_profiling/operf.cpp +@@ -857,11 +857,14 @@ static int __delete_old_previous_sample_ + int tflag __attribute__((unused)), + struct FTW *ftwbuf __attribute__((unused))) + { ++ int err; ++ + if (remove(fpath)) { ++ err = errno; + perror("sample data removal error"); +- return FTW_STOP; ++ return err; + } else { +- return FTW_CONTINUE; ++ return 0; + } + } + +@@ -896,7 +899,7 @@ static void convert_sample_data(void) + return; + + if (!operf_options::append) { +- int flags = FTW_DEPTH | FTW_ACTIONRETVAL; ++ int flags = FTW_DEPTH; + errno = 0; + if (nftw(previous_sampledir.c_str(), __delete_old_previous_sample_data, 32, flags) !=0 && + errno != ENOENT) { diff --git a/package/oprofile/oprofile.hash b/package/oprofile/oprofile.hash index b6ab3ba7799..cc15ed1100c 100644 --- a/package/oprofile/oprofile.hash +++ b/package/oprofile/oprofile.hash @@ -1,2 +1,3 @@ -# Locally computed: -sha256 847110b4ecdcf8c8353cd38f94c1b704aad4bfcd9453e38b88d112cfb7e3c45a oprofile-1.0.0.tar.gz +# From http://sourceforge.net/projects/oprofile/files/oprofile/oprofile-1.1.0/ +sha1 38c0d8812fe605f6ddd1cd183a482aa7605c0e81 oprofile-1.1.0.tar.gz +md5 248c4c069f9476f427fa7195563f9867 oprofile-1.1.0.tar.gz diff --git a/package/oprofile/oprofile.mk b/package/oprofile/oprofile.mk index 5876307e489..d91ddab7f71 100644 --- a/package/oprofile/oprofile.mk +++ b/package/oprofile/oprofile.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPROFILE_VERSION = 1.0.0 +OPROFILE_VERSION = 1.1.0 OPROFILE_SITE = http://downloads.sourceforge.net/project/oprofile/oprofile/oprofile-$(OPROFILE_VERSION) OPROFILE_LICENSE = GPLv2+ OPROFILE_LICENSE_FILES = COPYING @@ -41,6 +41,18 @@ ifeq ($(BR2_PACKAGE_LIBPFM4),y) OPROFILE_DEPENDENCIES += libpfm4 endif +# When gettext is enabled, popt links with -lintl, specifies it in its +# popt.pc and has done so for the past 6+ years. But oprofile does not +# use pkconfig to find popt, so misses -lintl, which is important for +# a static build. We have to do the call to pkgconfig manually... +OPROFILE_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs popt`" + +ifeq ($(BR2_STATIC_LIBS),) +define OPROFILE_INSTALL_SHARED_LIBRARY + $(INSTALL) -m 755 $(@D)/libopagent/.libs/*.so* $(TARGET_DIR)/usr/lib/oprofile +endef +endif + define OPROFILE_INSTALL_TARGET_CMDS $(INSTALL) -d -m 755 $(TARGET_DIR)/usr/bin $(INSTALL) -d -m 755 $(TARGET_DIR)/usr/share/oprofile @@ -51,7 +63,7 @@ define OPROFILE_INSTALL_TARGET_CMDS fi $(INSTALL) -m 644 $(@D)/libregex/stl.pat $(TARGET_DIR)/usr/share/oprofile $(INSTALL) -m 755 $(addprefix $(@D)/, $(OPROFILE_BINARIES)) $(TARGET_DIR)/usr/bin - $(INSTALL) -m 755 $(@D)/libopagent/.libs/*.so* $(TARGET_DIR)/usr/lib/oprofile + $(OPROFILE_INSTALL_SHARED_LIBRARY) endef $(eval $(autotools-package)) diff --git a/package/opus/0001-configure.ac-fix-bashism-in-ARM-optimization-handling.patch b/package/opus/0001-configure.ac-fix-bashism-in-ARM-optimization-handling.patch deleted file mode 100644 index 80b9dfc6f83..00000000000 --- a/package/opus/0001-configure.ac-fix-bashism-in-ARM-optimization-handling.patch +++ /dev/null @@ -1,43 +0,0 @@ -From a3d4f4f2385394b822b8f66342de8a1e3b4217bb Mon Sep 17 00:00:00 2001 -From: Peter Korsgaard -Date: Sun, 8 Dec 2013 10:54:25 +0100 -Subject: [PATCH] configure.ac: fix bashism in ARM optimization handling - -Submitted upstream: -http://lists.xiph.org/pipermail/opus/2013-December/002422.html - -Breaks configure when /bin/sh isn't bash with: - -configure: Trying to force-enable ARMv6 media instructions... -checking if assembler supports ARMv6 media instructions on ARM... yes -configure: Trying to force-enable NEON instructions... -checking if assembler supports NEON instructions on ARM... yes -./configure.lineno: 12799: Bad substitution - -Fix it by using the %% expansion to remove everything from the first -space instead. - -Signed-off-by: Peter Korsgaard ---- - configure.ac | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 0ba4a80..443362f 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -333,9 +333,9 @@ AS_IF([test x"${enable_asm}" = x"yes"],[ - - AM_CONDITIONAL([CPU_ARM], [test "$cpu_arm" = "yes"]) - AM_CONDITIONAL([OPUS_ARM_INLINE_ASM], -- [test x"${inline_optimization:0:3}" = x"ARM"]) -+ [test x"${inline_optimization%% *}" = x"ARM"]) - AM_CONDITIONAL([OPUS_ARM_EXTERNAL_ASM], -- [test x"${asm_optimization:0:3}" = x"ARM"]) -+ [test x"${asm_optimization%% *}" = x"ARM"]) - - AS_IF([test x"$enable_rtcd" = x"yes"],[ - AS_IF([test x"$rtcd_support" != x"no"],[ --- -1.8.4.rc3 - diff --git a/package/opus/opus.hash b/package/opus/opus.hash index 9c4e34dd7dc..1d483987fd5 100644 --- a/package/opus/opus.hash +++ b/package/opus/opus.hash @@ -1,2 +1,2 @@ # From http://downloads.xiph.org/releases/opus/SHA256SUMS.txt -sha256 b9727015a58affcf3db527322bf8c4d2fcf39f5f6b8f15dbceca20206cbe1d95 opus-1.1.tar.gz +sha256 0e290078e31211baa7b5886bcc8ab6bc048b9fc83882532da4a1a45e58e907fd opus-1.1.2.tar.gz diff --git a/package/opus/opus.mk b/package/opus/opus.mk index 8e6f8853b47..eb082e38b1d 100644 --- a/package/opus/opus.mk +++ b/package/opus/opus.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPUS_VERSION = 1.1 +OPUS_VERSION = 1.1.2 OPUS_SITE = http://downloads.xiph.org/releases/opus OPUS_LICENSE = BSD-3c OPUS_LICENSE_FILES = COPYING diff --git a/package/opusfile/opusfile.hash b/package/opusfile/opusfile.hash index 183395081c1..2da4bab53ee 100644 --- a/package/opusfile/opusfile.hash +++ b/package/opusfile/opusfile.hash @@ -1,2 +1,2 @@ # From http://downloads.xiph.org/releases/opus/SHA256SUMS.txt -sha256 2428717b356e139f18ed2fdb5ad990b5654a238907a0058200b39c46a7d03ea6 opusfile-0.6.tar.gz +sha256 9e2bed13bc729058591a0f1cab2505e8cfd8e7ac460bf10a78bcc3b125e7c301 opusfile-0.7.tar.gz diff --git a/package/opusfile/opusfile.mk b/package/opusfile/opusfile.mk index 918041da8da..c8108d33ebd 100644 --- a/package/opusfile/opusfile.mk +++ b/package/opusfile/opusfile.mk @@ -4,7 +4,7 @@ # ################################################################################ -OPUSFILE_VERSION = 0.6 +OPUSFILE_VERSION = 0.7 OPUSFILE_SITE = http://downloads.xiph.org/releases/opus OPUSFILE_DEPENDENCIES = host-pkgconf libogg opus OPUSFILE_LICENSE = BSD-3c diff --git a/package/p11-kit/p11-kit.hash b/package/p11-kit/p11-kit.hash index 955b890f46c..c0182eb4ce2 100644 --- a/package/p11-kit/p11-kit.hash +++ b/package/p11-kit/p11-kit.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 68405492fe466b33927d461302aa98e703db3b8a596411585508bc33084484d2 p11-kit-0.20.7.tar.gz +sha256 ba726ea8303c97467a33fca50ee79b7b35212964be808ecf9b145e9042fdfaf0 p11-kit-0.23.2.tar.gz diff --git a/package/p11-kit/p11-kit.mk b/package/p11-kit/p11-kit.mk index d661c1f797f..e856cac092f 100644 --- a/package/p11-kit/p11-kit.mk +++ b/package/p11-kit/p11-kit.mk @@ -4,7 +4,7 @@ # ################################################################################ -P11_KIT_VERSION = 0.20.7 +P11_KIT_VERSION = 0.23.2 P11_KIT_SITE = http://p11-glue.freedesktop.org/releases P11_KIT_DEPENDENCIES = host-pkgconf libffi libtasn1 P11_KIT_INSTALL_STAGING = YES diff --git a/package/pango/0001-no-tests.patch b/package/pango/0001-no-tests.patch index e6777f6bcae..734409db682 100644 --- a/package/pango/0001-no-tests.patch +++ b/package/pango/0001-no-tests.patch @@ -3,25 +3,28 @@ Prevent Pango to build tests. Updated to Pango 1.36.3 by Hadrien Boutteville. Signed-off-by: Hadrien Boutteville +[Gustavo: update for 1.38.1] ---- a/Makefile.am -+++ b/Makefile.am +diff -Nura pango-1.38.1.orig/Makefile.am pango-1.38.1/Makefile.am +--- pango-1.38.1.orig/Makefile.am 2015-10-14 15:41:27.620016974 +0000 ++++ pango-1.38.1/Makefile.am 2015-10-14 15:41:54.431240793 +0000 @@ -1,6 +1,6 @@ ## Process this file with automake to create Makefile.in. --SUBDIRS= pango modules pango-view examples docs tools tests build -+SUBDIRS= pango modules pango-view examples docs tools build +-SUBDIRS= pango pango-view examples docs tools tests build ++SUBDIRS= pango pango-view examples docs tools build EXTRA_DIST = \ autogen.sh \ ---- a/Makefile.in -+++ b/Makefile.in -@@ -418,7 +418,7 @@ target_alias = @target_alias@ +diff -Nura pango-1.38.1.orig/Makefile.in pango-1.38.1/Makefile.in +--- pango-1.38.1.orig/Makefile.in 2015-10-14 15:41:27.630016685 +0000 ++++ pango-1.38.1/Makefile.in 2015-10-14 15:41:58.753115676 +0000 +@@ -417,7 +417,7 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ --SUBDIRS = pango modules pango-view examples docs tools tests build -+SUBDIRS = pango modules pango-view examples docs tools build +-SUBDIRS = pango pango-view examples docs tools tests build ++SUBDIRS = pango pango-view examples docs tools build EXTRA_DIST = \ autogen.sh \ pango.pc.in \ diff --git a/package/pango/Config.in b/package/pango/Config.in index e9c3040b1f0..7813c4ebaff 100644 --- a/package/pango/Config.in +++ b/package/pango/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_PANGO depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 depends on BR2_USE_MMU # glib2 depends on BR2_INSTALL_LIBSTDCPP # freetype support - depends on BR2_ARCH_HAS_ATOMICS # cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # harfbuzz select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_EXPAT select BR2_PACKAGE_CAIRO @@ -24,6 +24,6 @@ config BR2_PACKAGE_PANGO comment "pango needs a toolchain w/ wchar, threads, C++" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_INSTALL_LIBSTDCPP diff --git a/package/pango/S25pango b/package/pango/S25pango deleted file mode 100644 index 9af9307c483..00000000000 --- a/package/pango/S25pango +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh -# -# run pango-querymodules if needed - -FILE=/etc/pango/pango.modules - -case "$1" in - start|"") - if [ ! -f $FILE ] ; then - mkdir -p /etc/pango - /usr/bin/pango-querymodules > "$FILE" - fi - ;; - stop) - ;; - *) - echo "Usage: $0 {start|stop}" >&2 - exit 1 - ;; -esac \ No newline at end of file diff --git a/package/pango/pango.hash b/package/pango/pango.hash index 3486001489d..792ac05758b 100644 --- a/package/pango/pango.hash +++ b/package/pango/pango.hash @@ -1,2 +1,2 @@ -# From http://ftp.gnome.org/pub/GNOME/sources/pango/1.36/pango-1.36.8.sha256sum -sha256 18dbb51b8ae12bae0ab7a958e7cf3317c9acfc8a1e1103ec2f147164a0fc2d07 pango-1.36.8.tar.xz +# From http://ftp.gnome.org/pub/GNOME/sources/pango/1.36/pango-1.38.1.sha256sum +sha256 1320569f6c6d75d6b66172b2d28e59c56ee864ee9df202b76799c4506a214eb7 pango-1.38.1.tar.xz diff --git a/package/pango/pango.mk b/package/pango/pango.mk index 75e2d1bc0ae..a6b1a6058b2 100644 --- a/package/pango/pango.mk +++ b/package/pango/pango.mk @@ -4,8 +4,8 @@ # ################################################################################ -PANGO_VERSION_MAJOR = 1.36 -PANGO_VERSION = $(PANGO_VERSION_MAJOR).8 +PANGO_VERSION_MAJOR = 1.38 +PANGO_VERSION = $(PANGO_VERSION_MAJOR).1 PANGO_SOURCE = pango-$(PANGO_VERSION).tar.xz PANGO_SITE = http://ftp.gnome.org/pub/GNOME/sources/pango/$(PANGO_VERSION_MAJOR) PANGO_AUTORECONF = YES @@ -13,59 +13,6 @@ PANGO_INSTALL_STAGING = YES PANGO_LICENSE = LGPLv2+ PANGO_LICENSE_FILES = COPYING -PANGO_CONF_ENV = \ - ac_cv_func_posix_getpwuid_r=yes \ - glib_cv_stack_grows=no \ - glib_cv_uscore=no \ - ac_cv_func_strtod=yes \ - ac_fsusage_space=yes \ - fu_cv_sys_stat_statfs2_bsize=yes \ - ac_cv_func_closedir_void=no \ - ac_cv_func_getloadavg=no \ - ac_cv_lib_util_getloadavg=no \ - ac_cv_lib_getloadavg_getloadavg=no \ - ac_cv_func_getgroups=yes \ - ac_cv_func_getgroups_works=yes \ - ac_cv_func_chown_works=yes \ - ac_cv_have_decl_euidaccess=no \ - ac_cv_func_euidaccess=no \ - ac_cv_have_decl_strnlen=yes \ - ac_cv_func_strnlen_working=yes \ - ac_cv_func_lstat_dereferences_slashed_symlink=yes \ - ac_cv_func_lstat_empty_string_bug=no \ - ac_cv_func_stat_empty_string_bug=no \ - vb_cv_func_rename_trailing_slash_bug=no \ - ac_cv_have_decl_nanosleep=yes \ - jm_cv_func_nanosleep_works=yes \ - gl_cv_func_working_utimes=yes \ - ac_cv_func_utime_null=yes \ - ac_cv_have_decl_strerror_r=yes \ - ac_cv_func_strerror_r_char_p=no \ - jm_cv_func_svid_putenv=yes \ - ac_cv_func_getcwd_null=yes \ - ac_cv_func_getdelim=yes \ - ac_cv_func_mkstemp=yes \ - utils_cv_func_mkstemp_limitations=no \ - utils_cv_func_mkdir_trailing_slash_bug=no \ - jm_cv_func_gettimeofday_clobber=no \ - gl_cv_func_working_readdir=yes \ - jm_ac_cv_func_link_follows_symlink=no \ - utils_cv_localtime_cache=no \ - ac_cv_struct_st_mtim_nsec=no \ - gl_cv_func_tzset_clobber=no \ - gl_cv_func_getcwd_null=yes \ - gl_cv_func_getcwd_path_max=yes \ - ac_cv_func_fnmatch_gnu=yes \ - am_getline_needs_run_time_check=no \ - am_cv_func_working_getline=yes \ - gl_cv_func_mkdir_trailing_slash_bug=no \ - gl_cv_func_mkstemp_limitations=no \ - ac_cv_func_working_mktime=yes \ - jm_cv_func_working_re_compile_pattern=yes \ - ac_use_included_regex=no \ - gl_cv_c_restrict=no \ - ac_cv_path_FREETYPE_CONFIG=$(STAGING_DIR)/usr/bin/freetype-config - PANGO_CONF_OPTS = --enable-explicit-deps=no HOST_PANGO_CONF_OPTS = --enable-explicit-deps=no @@ -97,10 +44,5 @@ PANGO_DEPENDENCIES += xlib_libXft xlib_libXrender PANGO_CONF_OPTS += --with-xft endif -define PANGO_INSTALL_INIT_SYSV - $(INSTALL) -m 755 -D package/pango/S25pango \ - $(TARGET_DIR)/etc/init.d/S25pango -endef - $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/pangomm/Config.in b/package/pangomm/Config.in new file mode 100644 index 00000000000..a7c41a008f2 --- /dev/null +++ b/package/pangomm/Config.in @@ -0,0 +1,22 @@ +config BR2_PACKAGE_PANGOMM + bool "pangomm" + select BR2_PACKAGE_CAIROMM + select BR2_PACKAGE_GLIBMM + select BR2_PACKAGE_PANGO + select BR2_PACKAGE_LIBSIGC + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz + depends on BR2_INSTALL_LIBSTDCPP # glibmm/pango + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11 + depends on BR2_TOOLCHAIN_HAS_THREADS # *mm/pango -> libglib2 + depends on BR2_USE_MMU # *mm/pango -> libglib2 + depends on BR2_USE_WCHAR # *mm/pango -> libglib2 + help + The pangomm package is a set of C++ bindings for Pango. + + http://www.gtkmm.org/ + +comment "pangomm needs a toolchain w/ C++, wchar, threads, gcc >= 4.8" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR \ + || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/pangomm/pangomm.hash b/package/pangomm/pangomm.hash new file mode 100644 index 00000000000..39e6a911de7 --- /dev/null +++ b/package/pangomm/pangomm.hash @@ -0,0 +1,2 @@ +# From http://ftp.gnome.org/pub/gnome/sources/pangomm/2.39/pangomm-2.39.1.sha256sum +sha256 10c06bbf12a03963ffe9c697887b57c72f1dac1671d09dba45cecd25db5dc6ed pangomm-2.39.1.tar.xz diff --git a/package/pangomm/pangomm.mk b/package/pangomm/pangomm.mk new file mode 100644 index 00000000000..42aa99e9b26 --- /dev/null +++ b/package/pangomm/pangomm.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# pangomm +# +################################################################################ + +PANGOMM_VERSION_MAJOR = 2.39 +PANGOMM_VERSION = $(PANGOMM_VERSION_MAJOR).1 +PANGOMM_SOURCE = pangomm-$(PANGOMM_VERSION).tar.xz +PANGOMM_SITE = http://ftp.gnome.org/pub/gnome/sources/pangomm/$(PANGOMM_VERSION_MAJOR) +PANGOMM_LICENSE = LGPLv2.1+ (library), GPLv2+ (tools) +PANGOMM_LICENSE_FILES = COPYING COPYING.tools +PANGOMM_INSTALL_STAGING = YES +PANGOMM_DEPENDENCIES = glibmm cairomm libsigc pango host-pkgconf + +$(eval $(autotools-package)) diff --git a/package/parted/0004-fix-includes-for-musl.patch b/package/parted/0004-fix-includes-for-musl.patch new file mode 100644 index 00000000000..28c94ace7cf --- /dev/null +++ b/package/parted/0004-fix-includes-for-musl.patch @@ -0,0 +1,18 @@ +Include to get loff_t definition + +Patch borrowed from Alpine Linux at +http://git.alpinelinux.org/cgit/aports/plain/main/parted/fix-includes.patch. Solves +build with musl. + +Signed-off-by: Thomas Petazzoni + +--- parted-3.1.orig/libparted/fs/xfs/platform_defs.h ++++ parted-3.1/libparted/fs/xfs/platform_defs.h +@@ -35,6 +35,7 @@ + #define __XFS_PLATFORM_DEFS_H__ + + #include ++#include + #include + #include + #include diff --git a/package/patch/patch.mk b/package/patch/patch.mk index 765dfa923bc..3a942524f0e 100644 --- a/package/patch/patch.mk +++ b/package/patch/patch.mk @@ -10,4 +10,11 @@ PATCH_SITE = $(BR2_GNU_MIRROR)/patch PATCH_LICENSE = GPLv3+ PATCH_LICENSE_FILES = COPYING +ifeq ($(BR2_PACKAGE_ATTR),y) +PATCH_CONF_OPTS += --enable-attr +PATCH_DEPENDENCIES += attr +else +PATCH_CONF_OPTS += --disable-attr +endif + $(eval $(autotools-package)) diff --git a/package/pax-utils/Config.in b/package/pax-utils/Config.in index 58100e482af..e61d9b31f77 100644 --- a/package/pax-utils/Config.in +++ b/package/pax-utils/Config.in @@ -1,7 +1,11 @@ config BR2_PACKAGE_PAX_UTILS bool "pax-utils" + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5 # needs PR_SET_NO_NEW_PRIVS help ELF related utils for ELF 32/64 binaries that can check files for security relevant properties. http://www.gentoo.org/proj/en/hardened/pax-utils.xml + +comment "pax-utils needs a toolchain w/ headers >= 3.5" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5 diff --git a/package/pax-utils/pax-utils.hash b/package/pax-utils/pax-utils.hash index 54013c96c23..399bae40da9 100644 --- a/package/pax-utils/pax-utils.hash +++ b/package/pax-utils/pax-utils.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 844ff25b1a11bcef92ef34b22f576f226a772b67196818656f8874513438f5b9 pax-utils-0.8.1.tar.xz +sha256 796860fbd48c5f811e699e8492dc1110459bad0a62efa8d346b74a4f6f556414 pax-utils-1.1.4.tar.xz diff --git a/package/pax-utils/pax-utils.mk b/package/pax-utils/pax-utils.mk index fc0589fa383..fc2e0caafaa 100644 --- a/package/pax-utils/pax-utils.mk +++ b/package/pax-utils/pax-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -PAX_UTILS_VERSION = 0.8.1 +PAX_UTILS_VERSION = 1.1.4 PAX_UTILS_SITE = http://distfiles.gentoo.org/distfiles PAX_UTILS_SOURCE = pax-utils-$(PAX_UTILS_VERSION).tar.xz PAX_UTILS_LICENSE = GPLv2 diff --git a/package/pciutils/pciutils.hash b/package/pciutils/pciutils.hash index cc901d1c06c..dd75e426fe3 100644 --- a/package/pciutils/pciutils.hash +++ b/package/pciutils/pciutils.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/software/utils/pciutils/sha256sums.asc -sha256 514a3bdb77e4cdbe9e970e1885af46e0ba2011bf97364368c455ade0edd4e3a9 pciutils-3.3.1.tar.xz +sha256 865554cc5604d1644bd8da38d94845405e2a319a6d5acabc6a0296417684a82a pciutils-3.4.1.tar.xz diff --git a/package/pciutils/pciutils.mk b/package/pciutils/pciutils.mk index 12c13b2e16c..d3a0e2072cd 100644 --- a/package/pciutils/pciutils.mk +++ b/package/pciutils/pciutils.mk @@ -4,7 +4,7 @@ # ################################################################################ -PCIUTILS_VERSION = 3.3.1 +PCIUTILS_VERSION = 3.4.1 PCIUTILS_SITE = $(BR2_KERNEL_MIRROR)/software/utils/pciutils PCIUTILS_SOURCE = pciutils-$(PCIUTILS_VERSION).tar.xz PCIUTILS_INSTALL_STAGING = YES @@ -17,7 +17,7 @@ PCIUTILS_MAKE_OPTS = \ LDFLAGS="$(TARGET_LDFLAGS)" \ RANLIB=$(TARGET_RANLIB) \ AR=$(TARGET_AR) \ - PCIUTILS_DNS=no + DNS=no ifeq ($(BR2_PACKAGE_HAS_UDEV),y) PCIUTILS_DEPENDENCIES += udev diff --git a/package/pcmanfm/Config.in b/package/pcmanfm/Config.in index 4289785b4ae..149a595448c 100644 --- a/package/pcmanfm/Config.in +++ b/package/pcmanfm/Config.in @@ -9,7 +9,7 @@ config BR2_PACKAGE_PCMANFM depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_USE_MMU # libglib2 depends on BR2_INSTALL_LIBSTDCPP # libgtk2 - depends on BR2_ARCH_HAS_ATOMICS # libgtk2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk2 -> pango -> harfbuzz help PCMan File Manager (PCManFM) is a file manager application developed by Hong Jen Yee from Taiwan which is meant to be a replacement for @@ -19,6 +19,6 @@ config BR2_PACKAGE_PCMANFM comment "pcmanfm needs X.org and a toolchain w/ wchar, threads, C++" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_XORG7 diff --git a/package/pcre/pcre.hash b/package/pcre/pcre.hash index 0b2b1c448d7..5b580a74c9b 100644 --- a/package/pcre/pcre.hash +++ b/package/pcre/pcre.hash @@ -1,3 +1,2 @@ -# From http://sourceforge.net/projects/pcre/files/pcre/8.37/ -md5 ed91be292cb01d21bc7e526816c26981 pcre-8.37.tar.bz2 -sha1 4c629b3f582366fae4e8912f0d9fa3140347d6e7 pcre-8.37.tar.bz2 +# Locally calculated after checking pgp signature +sha256 b9e02d36e23024d6c02a2e5b25204b3a4fa6ade43e0a5f869f254f49535079df pcre-8.38.tar.bz2 diff --git a/package/pcre/pcre.mk b/package/pcre/pcre.mk index fd339edeec6..06652c70e4d 100644 --- a/package/pcre/pcre.mk +++ b/package/pcre/pcre.mk @@ -4,7 +4,7 @@ # ################################################################################ -PCRE_VERSION = 8.37 +PCRE_VERSION = 8.38 PCRE_SITE = ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre PCRE_SOURCE = pcre-$(PCRE_VERSION).tar.bz2 PCRE_LICENSE = BSD-3c diff --git a/package/perl-crypt-openssl-random/Config.in b/package/perl-crypt-openssl-random/Config.in index 2095cacc66f..2ceb78dfd61 100644 --- a/package/perl-crypt-openssl-random/Config.in +++ b/package/perl-crypt-openssl-random/Config.in @@ -3,8 +3,7 @@ config BR2_PACKAGE_PERL_CRYPT_OPENSSL_RANDOM depends on !BR2_STATIC_LIBS select BR2_PACKAGE_OPENSSL help - Routines for accessing the OpenSSL pseudo-random number generator - using the openSSL libraries + OpenSSL/LibreSSL pseudo-random number generator access http://sourceforge.net/projects/perl-openssl/ diff --git a/package/perl-crypt-openssl-random/perl-crypt-openssl-random.hash b/package/perl-crypt-openssl-random/perl-crypt-openssl-random.hash index 2de6547306a..caacdc90151 100644 --- a/package/perl-crypt-openssl-random/perl-crypt-openssl-random.hash +++ b/package/perl-crypt-openssl-random/perl-crypt-openssl-random.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 b89ca9314c3a066b440a7bb3cb8d725d Crypt-OpenSSL-Random-0.10.tar.gz -sha256 ae65d0ab6907edd1d67f87fdf0923ecae4d54c4c2e0ac9d9df97227903ccf18a Crypt-OpenSSL-Random-0.10.tar.gz +md5 5d71337503e0356ce1ce1481504e5885 Crypt-OpenSSL-Random-0.11.tar.gz +sha256 bb8c81c6a39b9b13a22d818ee9a746242f136f0fadceb6b9776ae615e7524c7a Crypt-OpenSSL-Random-0.11.tar.gz diff --git a/package/perl-crypt-openssl-random/perl-crypt-openssl-random.mk b/package/perl-crypt-openssl-random/perl-crypt-openssl-random.mk index 2692236ac5d..615282106b1 100644 --- a/package/perl-crypt-openssl-random/perl-crypt-openssl-random.mk +++ b/package/perl-crypt-openssl-random/perl-crypt-openssl-random.mk @@ -4,10 +4,10 @@ # ################################################################################ -PERL_CRYPT_OPENSSL_RANDOM_VERSION = 0.10 +PERL_CRYPT_OPENSSL_RANDOM_VERSION = 0.11 PERL_CRYPT_OPENSSL_RANDOM_SOURCE = Crypt-OpenSSL-Random-$(PERL_CRYPT_OPENSSL_RANDOM_VERSION).tar.gz PERL_CRYPT_OPENSSL_RANDOM_SITE = $(BR2_CPAN_MIRROR)/authors/id/R/RU/RURBAN -PERL_CRYPT_OPENSSL_RANDOM_DEPENDENCIES = openssl perl +PERL_CRYPT_OPENSSL_RANDOM_DEPENDENCIES = openssl PERL_CRYPT_OPENSSL_RANDOM_LICENSE = Artistic or GPLv1+ PERL_CRYPT_OPENSSL_RANDOM_LICENSE_FILES = LICENSE diff --git a/package/perl-crypt-openssl-rsa/perl-crypt-openssl-rsa.mk b/package/perl-crypt-openssl-rsa/perl-crypt-openssl-rsa.mk index 30d7303ebb8..7a4e31ee1a9 100644 --- a/package/perl-crypt-openssl-rsa/perl-crypt-openssl-rsa.mk +++ b/package/perl-crypt-openssl-rsa/perl-crypt-openssl-rsa.mk @@ -7,7 +7,7 @@ PERL_CRYPT_OPENSSL_RSA_VERSION = 0.28 PERL_CRYPT_OPENSSL_RSA_SOURCE = Crypt-OpenSSL-RSA-$(PERL_CRYPT_OPENSSL_RSA_VERSION).tar.gz PERL_CRYPT_OPENSSL_RSA_SITE = $(BR2_CPAN_MIRROR)/authors/id/P/PE/PERLER -PERL_CRYPT_OPENSSL_RSA_DEPENDENCIES = perl perl-crypt-openssl-random +PERL_CRYPT_OPENSSL_RSA_DEPENDENCIES = perl-crypt-openssl-random PERL_CRYPT_OPENSSL_RSA_LICENSE = Artistic or GPLv1+ PERL_CRYPT_OPENSSL_RSA_LICENSE_FILES = LICENSE diff --git a/package/perl-datetime-tiny/perl-datetime-tiny.mk b/package/perl-datetime-tiny/perl-datetime-tiny.mk index 6e9c6264f63..bf3b7d97a1f 100644 --- a/package/perl-datetime-tiny/perl-datetime-tiny.mk +++ b/package/perl-datetime-tiny/perl-datetime-tiny.mk @@ -7,7 +7,6 @@ PERL_DATETIME_TINY_VERSION = 1.04 PERL_DATETIME_TINY_SOURCE = DateTime-Tiny-$(PERL_DATETIME_TINY_VERSION).tar.gz PERL_DATETIME_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/A/AD/ADAMK -PERL_DATETIME_TINY_DEPENDENCIES = perl PERL_DATETIME_TINY_LICENSE = Artistic or GPLv1+ PERL_DATETIME_TINY_LICENSE_FILES = LICENSE diff --git a/package/perl-db-file/Config.in b/package/perl-db-file/Config.in index 37bc5da2508..f07e5df483d 100644 --- a/package/perl-db-file/Config.in +++ b/package/perl-db-file/Config.in @@ -2,9 +2,8 @@ config BR2_PACKAGE_PERL_DB_FILE bool "perl-db-file" depends on !BR2_STATIC_LIBS select BR2_PACKAGE_BERKELEYDB - select BR2_PACKAGE_BERKELEYDB_COMPAT185 help - Perl5 access to Berkeley DB version 1.x + Perl5 access to Berkeley DB version 1.x or 2.x. https://metacpan.org/release/DB_File diff --git a/package/perl-db-file/perl-db-file.mk b/package/perl-db-file/perl-db-file.mk index 46b87ae6ea9..3db8c563cb7 100644 --- a/package/perl-db-file/perl-db-file.mk +++ b/package/perl-db-file/perl-db-file.mk @@ -7,7 +7,16 @@ PERL_DB_FILE_VERSION = 1.835 PERL_DB_FILE_SOURCE = DB_File-$(PERL_DB_FILE_VERSION).tar.gz PERL_DB_FILE_SITE = $(BR2_CPAN_MIRROR)/authors/id/P/PM/PMQS -PERL_DB_FILE_DEPENDENCIES = berkeleydb perl +PERL_DB_FILE_DEPENDENCIES = berkeleydb PERL_DB_FILE_LICENSE = Artistic or GPLv1+ +PERL_DB_FILE_LICENSE_FILES = README + +define PERL_DB_FILE_FIX_CONFIG_IN + $(SED) 's%^INCLUDE.*%INCLUDE = $(STAGING_DIR)/usr/include%' \ + $(@D)/config.in + $(SED) 's%^LIB.*%LIB = $(STAGING_DIR)/usr/lib%' \ + $(@D)/config.in +endef +PERL_DB_FILE_POST_PATCH_HOOKS += PERL_DB_FILE_FIX_CONFIG_IN $(eval $(perl-package)) diff --git a/package/perl-digest-hmac/perl-digest-hmac.mk b/package/perl-digest-hmac/perl-digest-hmac.mk index 97ec43e5f5b..bee32f44496 100644 --- a/package/perl-digest-hmac/perl-digest-hmac.mk +++ b/package/perl-digest-hmac/perl-digest-hmac.mk @@ -7,7 +7,6 @@ PERL_DIGEST_HMAC_VERSION = 1.03 PERL_DIGEST_HMAC_SOURCE = Digest-HMAC-$(PERL_DIGEST_HMAC_VERSION).tar.gz PERL_DIGEST_HMAC_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS -PERL_DIGEST_HMAC_DEPENDENCIES = perl PERL_DIGEST_HMAC_LICENSE = Artistic or GPLv1+ PERL_DIGEST_HMAC_LICENSE_FILES = README diff --git a/package/perl-digest-sha1/perl-digest-sha1.mk b/package/perl-digest-sha1/perl-digest-sha1.mk index d3224e1956f..52b9ec355e8 100644 --- a/package/perl-digest-sha1/perl-digest-sha1.mk +++ b/package/perl-digest-sha1/perl-digest-sha1.mk @@ -7,7 +7,7 @@ PERL_DIGEST_SHA1_VERSION = 2.13 PERL_DIGEST_SHA1_SOURCE = Digest-SHA1-$(PERL_DIGEST_SHA1_VERSION).tar.gz PERL_DIGEST_SHA1_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS -PERL_DIGEST_SHA1_DEPENDENCIES = perl PERL_DIGEST_SHA1_LICENSE = Artistic or GPLv1+ +PERL_DIGEST_SHA1_LICENSE_FILES = README $(eval $(perl-package)) diff --git a/package/perl-encode-detect/perl-encode-detect.mk b/package/perl-encode-detect/perl-encode-detect.mk index de9c2ff0b65..732fba8db52 100644 --- a/package/perl-encode-detect/perl-encode-detect.mk +++ b/package/perl-encode-detect/perl-encode-detect.mk @@ -7,7 +7,7 @@ PERL_ENCODE_DETECT_VERSION = 1.01 PERL_ENCODE_DETECT_SOURCE = Encode-Detect-$(PERL_ENCODE_DETECT_VERSION).tar.gz PERL_ENCODE_DETECT_SITE = $(BR2_CPAN_MIRROR)/authors/id/J/JG/JGMYERS -PERL_ENCODE_DETECT_DEPENDENCIES = perl host-perl-module-build +PERL_ENCODE_DETECT_DEPENDENCIES = host-perl-module-build PERL_ENCODE_DETECT_LICENSE = MPL-1.1 PERL_ENCODE_DETECT_LICENSE_FILES = LICENSE diff --git a/package/perl-encode-locale/perl-encode-locale.mk b/package/perl-encode-locale/perl-encode-locale.mk index be18589e66e..2544b16fdbc 100644 --- a/package/perl-encode-locale/perl-encode-locale.mk +++ b/package/perl-encode-locale/perl-encode-locale.mk @@ -7,7 +7,6 @@ PERL_ENCODE_LOCALE_VERSION = 1.05 PERL_ENCODE_LOCALE_SOURCE = Encode-Locale-$(PERL_ENCODE_LOCALE_VERSION).tar.gz PERL_ENCODE_LOCALE_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS -PERL_ENCODE_LOCALE_DEPENDENCIES = perl PERL_ENCODE_LOCALE_LICENSE = Artistic or GPLv1+ PERL_ENCODE_LOCALE_LICENSE_FILES = README diff --git a/package/perl-file-util/perl-file-util.mk b/package/perl-file-util/perl-file-util.mk index c8b4441d1be..7026515e664 100644 --- a/package/perl-file-util/perl-file-util.mk +++ b/package/perl-file-util/perl-file-util.mk @@ -7,9 +7,10 @@ PERL_FILE_UTIL_VERSION = 4.132140 PERL_FILE_UTIL_SOURCE = File-Util-$(PERL_FILE_UTIL_VERSION).tar.gz PERL_FILE_UTIL_SITE = $(BR2_CPAN_MIRROR)/authors/id/T/TO/TOMMY -PERL_FILE_UTIL_DEPENDENCIES = perl host-perl-module-build +PERL_FILE_UTIL_DEPENDENCIES = host-perl-module-build PERL_FILE_UTIL_LICENSE = Artistic or GPLv1+ PERL_FILE_UTIL_LICENSE_FILES = COPYING LICENSE +HOST_PERL_FILE_UTIL_DEPENDENCIES = host-perl-module-build $(eval $(perl-package)) $(eval $(host-perl-package)) diff --git a/package/perl-gd/perl-gd.mk b/package/perl-gd/perl-gd.mk index 843687bacd9..99568cbf1df 100644 --- a/package/perl-gd/perl-gd.mk +++ b/package/perl-gd/perl-gd.mk @@ -7,7 +7,7 @@ PERL_GD_VERSION = 2.53 PERL_GD_SOURCE = GD-$(PERL_GD_VERSION).tar.gz PERL_GD_SITE = $(BR2_CPAN_MIRROR)/authors/id/L/LD/LDS -PERL_GD_DEPENDENCIES = perl zlib libpng freetype gd +PERL_GD_DEPENDENCIES = zlib libpng freetype gd PERL_GD_LICENSE = Artistic-2.0 or GPLv1+ PERL_GD_LICENSE_FILES = LICENSE diff --git a/package/perl-gdgraph/perl-gdgraph.mk b/package/perl-gdgraph/perl-gdgraph.mk index dfb08d133e8..dbc789e1b4f 100644 --- a/package/perl-gdgraph/perl-gdgraph.mk +++ b/package/perl-gdgraph/perl-gdgraph.mk @@ -7,7 +7,7 @@ PERL_GDGRAPH_VERSION = 1.49 PERL_GDGRAPH_SOURCE = GDGraph-$(PERL_GDGRAPH_VERSION).tar.gz PERL_GDGRAPH_SITE = $(BR2_CPAN_MIRROR)/authors/id/R/RU/RUZ -PERL_GDGRAPH_DEPENDENCIES = perl perl-gd perl-gdtextutil +PERL_GDGRAPH_DEPENDENCIES = perl-gd perl-gdtextutil PERL_GDGRAPH_LICENSE = Artistic or GPLv1+ PERL_GDGRAPH_LICENSE_FILES = Dustismo.LICENSE diff --git a/package/perl-gdtextutil/perl-gdtextutil.mk b/package/perl-gdtextutil/perl-gdtextutil.mk index 381bd594a1b..087102a7499 100644 --- a/package/perl-gdtextutil/perl-gdtextutil.mk +++ b/package/perl-gdtextutil/perl-gdtextutil.mk @@ -7,7 +7,6 @@ PERL_GDTEXTUTIL_VERSION = 0.86 PERL_GDTEXTUTIL_SOURCE = GDTextUtil-$(PERL_GDTEXTUTIL_VERSION).tar.gz PERL_GDTEXTUTIL_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MV/MVERB -PERL_GDTEXTUTIL_DEPENDENCIES = perl PERL_GDTEXTUTIL_LICENSE_FILES = Dustismo.LICENSE $(eval $(perl-package)) diff --git a/package/perl-html-parser/Config.in b/package/perl-html-parser/Config.in index afdd5237bb1..8a725f1dbd4 100644 --- a/package/perl-html-parser/Config.in +++ b/package/perl-html-parser/Config.in @@ -1,8 +1,12 @@ config BR2_PACKAGE_PERL_HTML_PARSER bool "perl-html-parser" + depends on !BR2_STATIC_LIBS select BR2_PACKAGE_PERL_HTML_TAGSET help The HTML-Parser distribution is is a collection of modules that parse and extract information from HTML documents http://github.com/gisle/html-parser + +comment "perl-html-parser needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/perl-html-parser/perl-html-parser.mk b/package/perl-html-parser/perl-html-parser.mk index ecdd7fd4f8c..18d25c58d2c 100644 --- a/package/perl-html-parser/perl-html-parser.mk +++ b/package/perl-html-parser/perl-html-parser.mk @@ -7,7 +7,7 @@ PERL_HTML_PARSER_VERSION = 3.71 PERL_HTML_PARSER_SOURCE = HTML-Parser-$(PERL_HTML_PARSER_VERSION).tar.gz PERL_HTML_PARSER_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS -PERL_HTML_PARSER_DEPENDENCIES = perl perl-html-tagset +PERL_HTML_PARSER_DEPENDENCIES = perl-html-tagset PERL_HTML_PARSER_LICENSE = Artistic or GPLv1+ PERL_HTML_PARSER_LICENSE_FILES = README diff --git a/package/perl-html-tagset/perl-html-tagset.mk b/package/perl-html-tagset/perl-html-tagset.mk index 262961111d8..d18d6a63c35 100644 --- a/package/perl-html-tagset/perl-html-tagset.mk +++ b/package/perl-html-tagset/perl-html-tagset.mk @@ -7,7 +7,6 @@ PERL_HTML_TAGSET_VERSION = 3.20 PERL_HTML_TAGSET_SOURCE = HTML-Tagset-$(PERL_HTML_TAGSET_VERSION).tar.gz PERL_HTML_TAGSET_SITE = $(BR2_CPAN_MIRROR)/authors/id/P/PE/PETDANCE -PERL_HTML_TAGSET_DEPENDENCIES = perl PERL_HTML_TAGSET_LICENSE = Artistic or GPLv1+ PERL_HTML_TAGSET_LICENSE_FILES = README diff --git a/package/perl-http-cookies/Config.in b/package/perl-http-cookies/Config.in index 4dd2fd9b4c0..cb5a3c1fa94 100644 --- a/package/perl-http-cookies/Config.in +++ b/package/perl-http-cookies/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PERL_HTTP_COOKIES bool "perl-http-cookies" + select BR2_PACKAGE_PERL_HTTP_DATE select BR2_PACKAGE_PERL_HTTP_MESSAGE help Objects that represent a "cookie jar" diff --git a/package/perl-http-cookies/perl-http-cookies.mk b/package/perl-http-cookies/perl-http-cookies.mk index b3bfa2c61c6..52ee74a5688 100644 --- a/package/perl-http-cookies/perl-http-cookies.mk +++ b/package/perl-http-cookies/perl-http-cookies.mk @@ -7,7 +7,7 @@ PERL_HTTP_COOKIES_VERSION = 6.01 PERL_HTTP_COOKIES_SOURCE = HTTP-Cookies-$(PERL_HTTP_COOKIES_VERSION).tar.gz PERL_HTTP_COOKIES_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS -PERL_HTTP_COOKIES_DEPENDENCIES = perl-http-message +PERL_HTTP_COOKIES_DEPENDENCIES = perl-http-date perl-http-message PERL_HTTP_COOKIES_LICENSE = Artistic or GPLv1+ PERL_HTTP_COOKIES_LICENSE_FILES = README diff --git a/package/perl-http-daemon/Config.in b/package/perl-http-daemon/Config.in index 3d69b8814e0..e09328c963d 100644 --- a/package/perl-http-daemon/Config.in +++ b/package/perl-http-daemon/Config.in @@ -1,6 +1,8 @@ config BR2_PACKAGE_PERL_HTTP_DAEMON bool "perl-http-daemon" + select BR2_PACKAGE_PERL_HTTP_DATE select BR2_PACKAGE_PERL_HTTP_MESSAGE + select BR2_PACKAGE_PERL_LWP_MEDIATYPES help Instances of the `HTTP::Daemon' class are HTTP/1.1 servers that listen on a socket for incoming requests. diff --git a/package/perl-http-daemon/perl-http-daemon.mk b/package/perl-http-daemon/perl-http-daemon.mk index 42d28739257..56dbd7846d1 100644 --- a/package/perl-http-daemon/perl-http-daemon.mk +++ b/package/perl-http-daemon/perl-http-daemon.mk @@ -7,7 +7,7 @@ PERL_HTTP_DAEMON_VERSION = 6.01 PERL_HTTP_DAEMON_SOURCE = HTTP-Daemon-$(PERL_HTTP_DAEMON_VERSION).tar.gz PERL_HTTP_DAEMON_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS -PERL_HTTP_DAEMON_DEPENDENCIES = perl-http-message +PERL_HTTP_DAEMON_DEPENDENCIES = perl-http-date perl-http-message perl-lwp-mediatypes PERL_HTTP_DAEMON_LICENSE = Artistic or GPLv1+ PERL_HTTP_DAEMON_LICENSE_FILES = README diff --git a/package/perl-http-date/perl-http-date.mk b/package/perl-http-date/perl-http-date.mk index 6de95b6ab38..bb5f4dc2fca 100644 --- a/package/perl-http-date/perl-http-date.mk +++ b/package/perl-http-date/perl-http-date.mk @@ -7,7 +7,6 @@ PERL_HTTP_DATE_VERSION = 6.02 PERL_HTTP_DATE_SOURCE = HTTP-Date-$(PERL_HTTP_DATE_VERSION).tar.gz PERL_HTTP_DATE_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS -PERL_HTTP_DATE_DEPENDENCIES = perl PERL_HTTP_DATE_LICENSE = Artistic or GPLv1+ PERL_HTTP_DATE_LICENSE_FILES = README diff --git a/package/perl-http-message/perl-http-message.hash b/package/perl-http-message/perl-http-message.hash index ff6268d7b46..f57fec273a3 100644 --- a/package/perl-http-message/perl-http-message.hash +++ b/package/perl-http-message/perl-http-message.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 e563ac516e28d33f65bc0f295f625f85 HTTP-Message-6.06.tar.gz -sha256 087e97009c5239dca4631cf433d836771b3fc5ba5685eef1965f9d3415cbad63 HTTP-Message-6.06.tar.gz +md5 4ed7add10daea3ab30abfeab6d03872f HTTP-Message-6.11.tar.gz +sha256 e7b368077ae6a188d99920411d8f52a8e5acfb39574d4f5c24f46fd22533d81b HTTP-Message-6.11.tar.gz diff --git a/package/perl-http-message/perl-http-message.mk b/package/perl-http-message/perl-http-message.mk index 12eda900e3d..77213fa1d64 100644 --- a/package/perl-http-message/perl-http-message.mk +++ b/package/perl-http-message/perl-http-message.mk @@ -4,16 +4,11 @@ # ################################################################################ -PERL_HTTP_MESSAGE_VERSION = 6.06 +PERL_HTTP_MESSAGE_VERSION = 6.11 PERL_HTTP_MESSAGE_SOURCE = HTTP-Message-$(PERL_HTTP_MESSAGE_VERSION).tar.gz -PERL_HTTP_MESSAGE_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS +PERL_HTTP_MESSAGE_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER +PERL_HTTP_MESSAGE_DEPENDENCIES = perl-encode-locale perl-http-date perl-io-html perl-lwp-mediatypes perl-uri PERL_HTTP_MESSAGE_LICENSE = Artistic or GPLv1+ -PERL_HTTP_MESSAGE_LICENSE_FILES = README -PERL_HTTP_MESSAGE_DEPENDENCIES = \ - perl-encode-locale \ - perl-http-date \ - perl-io-html \ - perl-lwp-mediatypes \ - perl-uri +PERL_HTTP_MESSAGE_LICENSE_FILES = LICENSE $(eval $(perl-package)) diff --git a/package/perl-io-html/perl-io-html.mk b/package/perl-io-html/perl-io-html.mk index 3926d4411ff..4bdcc8dc380 100644 --- a/package/perl-io-html/perl-io-html.mk +++ b/package/perl-io-html/perl-io-html.mk @@ -7,7 +7,6 @@ PERL_IO_HTML_VERSION = 1.001 PERL_IO_HTML_SOURCE = IO-HTML-$(PERL_IO_HTML_VERSION).tar.gz PERL_IO_HTML_SITE = $(BR2_CPAN_MIRROR)/authors/id/C/CJ/CJM -PERL_IO_HTML_DEPENDENCIES = perl PERL_IO_HTML_LICENSE = Artistic or GPLv1+ PERL_IO_HTML_LICENSE_FILES = LICENSE diff --git a/package/perl-io-socket-ssl/perl-io-socket-ssl.hash b/package/perl-io-socket-ssl/perl-io-socket-ssl.hash index 3a858148d8d..852eb8d728a 100644 --- a/package/perl-io-socket-ssl/perl-io-socket-ssl.hash +++ b/package/perl-io-socket-ssl/perl-io-socket-ssl.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 a71e9f0f76c7a15a11fef14ca8ef8aa8 IO-Socket-SSL-2.016.tar.gz -sha256 936268b3c152a4900f9c1762ab2e0aa3f84ed3a988e8e60aaad604beda7bfe41 IO-Socket-SSL-2.016.tar.gz +md5 a5f284d543aec4a6fcd595eb5fc8898b IO-Socket-SSL-2.022.tar.gz +sha256 651c4e5e2762ca780f2743986639b64557295bb326fddaff32f3adc0eac4f806 IO-Socket-SSL-2.022.tar.gz diff --git a/package/perl-io-socket-ssl/perl-io-socket-ssl.mk b/package/perl-io-socket-ssl/perl-io-socket-ssl.mk index 1816e9375e9..5bbd0c68191 100644 --- a/package/perl-io-socket-ssl/perl-io-socket-ssl.mk +++ b/package/perl-io-socket-ssl/perl-io-socket-ssl.mk @@ -4,10 +4,11 @@ # ################################################################################ -PERL_IO_SOCKET_SSL_VERSION = 2.016 +PERL_IO_SOCKET_SSL_VERSION = 2.022 PERL_IO_SOCKET_SSL_SOURCE = IO-Socket-SSL-$(PERL_IO_SOCKET_SSL_VERSION).tar.gz PERL_IO_SOCKET_SSL_SITE = $(BR2_CPAN_MIRROR)/authors/id/S/SU/SULLR -PERL_IO_SOCKET_SSL_DEPENDENCIES = perl perl-net-ssleay +PERL_IO_SOCKET_SSL_DEPENDENCIES = perl-net-ssleay PERL_IO_SOCKET_SSL_LICENSE = Artistic or GPLv1+ +PERL_IO_SOCKET_SSL_LICENSE_FILES = README $(eval $(perl-package)) diff --git a/package/perl-json-tiny/perl-json-tiny.mk b/package/perl-json-tiny/perl-json-tiny.mk index ddc50aca9f8..7a2a42e048f 100644 --- a/package/perl-json-tiny/perl-json-tiny.mk +++ b/package/perl-json-tiny/perl-json-tiny.mk @@ -7,7 +7,6 @@ PERL_JSON_TINY_VERSION = 0.53 PERL_JSON_TINY_SOURCE = JSON-Tiny-$(PERL_JSON_TINY_VERSION).tar.gz PERL_JSON_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/D/DA/DAVIDO -PERL_JSON_TINY_DEPENDENCIES = perl PERL_JSON_TINY_LICENSE = Artistic-2.0 PERL_JSON_TINY_LICENSE_FILES = LICENSE diff --git a/package/perl-libwww-perl/Config.in b/package/perl-libwww-perl/Config.in index 3db0070a40f..fc46bf1dff6 100644 --- a/package/perl-libwww-perl/Config.in +++ b/package/perl-libwww-perl/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PERL_LIBWWW_PERL bool "perl-libwww-perl" + depends on !BR2_STATIC_LIBS select BR2_PACKAGE_PERL_ENCODE_LOCALE select BR2_PACKAGE_PERL_FILE_LISTING select BR2_PACKAGE_PERL_HTML_PARSER @@ -16,3 +17,6 @@ config BR2_PACKAGE_PERL_LIBWWW_PERL The World-Wide Web library for Perl https://metacpan.org/release/libwww-perl + +comment "perl-libwww-perl needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/perl-libwww-perl/perl-libwww-perl.hash b/package/perl-libwww-perl/perl-libwww-perl.hash index 1ef5ccfe7f7..ffc180f86d6 100644 --- a/package/perl-libwww-perl/perl-libwww-perl.hash +++ b/package/perl-libwww-perl/perl-libwww-perl.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 85b36bcd2fd2450718ee14f894f0d3d1 libwww-perl-6.13.tar.gz -sha256 5fbd13eebd1933e5a203fceb2c1629efbccff3efc8fab6ec0285c79d0a95f8b2 libwww-perl-6.13.tar.gz +md5 6888c9d8728cd6f3ea3c9754461c9f94 libwww-perl-6.15.tar.gz +sha256 6f349d45c21b1ec0501c4437dfcb70570940e6c3d5bff783bd91d4cddead8322 libwww-perl-6.15.tar.gz diff --git a/package/perl-libwww-perl/perl-libwww-perl.mk b/package/perl-libwww-perl/perl-libwww-perl.mk index 64cbfd48450..594eb7d6cbe 100644 --- a/package/perl-libwww-perl/perl-libwww-perl.mk +++ b/package/perl-libwww-perl/perl-libwww-perl.mk @@ -4,13 +4,12 @@ # ################################################################################ -PERL_LIBWWW_PERL_VERSION = 6.13 +PERL_LIBWWW_PERL_VERSION = 6.15 PERL_LIBWWW_PERL_SOURCE = libwww-perl-$(PERL_LIBWWW_PERL_VERSION).tar.gz PERL_LIBWWW_PERL_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER PERL_LIBWWW_PERL_LICENSE = Artistic or GPLv1+ PERL_LIBWWW_LICENSE_FILES = README PERL_LIBWWW_PERL_DEPENDENCIES = \ - perl \ perl-encode-locale \ perl-file-listing \ perl-html-parser \ diff --git a/package/perl-lwp-mediatypes/perl-lwp-mediatypes.mk b/package/perl-lwp-mediatypes/perl-lwp-mediatypes.mk index 2442d41db62..cd7c75a49de 100644 --- a/package/perl-lwp-mediatypes/perl-lwp-mediatypes.mk +++ b/package/perl-lwp-mediatypes/perl-lwp-mediatypes.mk @@ -7,7 +7,6 @@ PERL_LWP_MEDIATYPES_VERSION = 6.02 PERL_LWP_MEDIATYPES_SOURCE = LWP-MediaTypes-$(PERL_LWP_MEDIATYPES_VERSION).tar.gz PERL_LWP_MEDIATYPES_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS -PERL_LWP_MEDIATYPES_DEPENDENCIES = perl PERL_LWP_MEDIATYPES_LICENSE = Artistic or GPLv1+ PERL_LWP_MEDIATYPES_LICENSE_FILES = README diff --git a/package/perl-mail-dkim/perl-mail-dkim.mk b/package/perl-mail-dkim/perl-mail-dkim.mk index 7f002990e5d..03a3b7442d4 100644 --- a/package/perl-mail-dkim/perl-mail-dkim.mk +++ b/package/perl-mail-dkim/perl-mail-dkim.mk @@ -7,6 +7,7 @@ PERL_MAIL_DKIM_VERSION = 0.40 PERL_MAIL_DKIM_SOURCE = Mail-DKIM-$(PERL_MAIL_DKIM_VERSION).tar.gz PERL_MAIL_DKIM_SITE = $(BR2_CPAN_MIRROR)/authors/id/J/JA/JASLONG -PERL_MAIL_DKIM_DEPENDENCIES = perl perl-crypt-openssl-rsa perl-mailtools perl-net-dns +PERL_MAIL_DKIM_DEPENDENCIES = perl-crypt-openssl-rsa perl-mailtools perl-net-dns +PERL_MAIL_DKIM_LICENSE_FILES = README $(eval $(perl-package)) diff --git a/package/perl-mailtools/perl-mailtools.mk b/package/perl-mailtools/perl-mailtools.mk index 5b1162543c6..d3c049d597c 100644 --- a/package/perl-mailtools/perl-mailtools.mk +++ b/package/perl-mailtools/perl-mailtools.mk @@ -7,7 +7,8 @@ PERL_MAILTOOLS_VERSION = 2.14 PERL_MAILTOOLS_SOURCE = MailTools-$(PERL_MAILTOOLS_VERSION).tar.gz PERL_MAILTOOLS_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MA/MARKOV -PERL_MAILTOOLS_DEPENDENCIES = perl perl-timedate +PERL_MAILTOOLS_DEPENDENCIES = perl-timedate PERL_MAILTOOLS_LICENSE = Artistic or GPLv1+ +PERL_MAILTOOLS_LICENSE_FILES = README $(eval $(perl-package)) diff --git a/package/perl-mime-base64/Config.in b/package/perl-mime-base64/Config.in index 7e4858f2803..22563dd5add 100644 --- a/package/perl-mime-base64/Config.in +++ b/package/perl-mime-base64/Config.in @@ -1,7 +1,11 @@ config BR2_PACKAGE_PERL_MIME_BASE64 bool "perl-mime-base64" + depends on !BR2_STATIC_LIBS help This package contains a base64 encoder/decoder and a quoted-printable encoder/decoder. http://github.com/gisle/mime-base64 + +comment "perl-mime-base64 needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/perl-mime-base64/perl-mime-base64.mk b/package/perl-mime-base64/perl-mime-base64.mk index abb2704b054..d06433772ad 100644 --- a/package/perl-mime-base64/perl-mime-base64.mk +++ b/package/perl-mime-base64/perl-mime-base64.mk @@ -7,7 +7,6 @@ PERL_MIME_BASE64_VERSION = 3.15 PERL_MIME_BASE64_SOURCE = MIME-Base64-$(PERL_MIME_BASE64_VERSION).tar.gz PERL_MIME_BASE64_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GA/GAAS -PERL_MIME_BASE64_DEPENDENCIES = perl PERL_MIME_BASE64_LICENSE = Artistic or GPLv1+ PERL_MIME_BASE64_LICENSE_FILES = README diff --git a/package/perl-module-build/perl-module-build.hash b/package/perl-module-build/perl-module-build.hash index 7da87933983..558434bf8b3 100644 --- a/package/perl-module-build/perl-module-build.hash +++ b/package/perl-module-build/perl-module-build.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 296e2ee8d7f7c6b4b178cda6919ba3c9 Module-Build-0.4208.tar.gz -sha256 32eca47c494a5d2a826c30616270b0fc744315b7363223b54fdea2dcef635378 Module-Build-0.4208.tar.gz +md5 7b7ca5a47bef48c50c8b5906ca3ac7fb Module-Build-0.4214.tar.gz +sha256 c579488918cf4db84954a550c475272b3c25f5100c739339e91a65d7c055dc3f Module-Build-0.4214.tar.gz diff --git a/package/perl-module-build/perl-module-build.mk b/package/perl-module-build/perl-module-build.mk index aa6259a7efc..3caf302c7a6 100644 --- a/package/perl-module-build/perl-module-build.mk +++ b/package/perl-module-build/perl-module-build.mk @@ -4,7 +4,7 @@ # ################################################################################ -PERL_MODULE_BUILD_VERSION = 0.4208 +PERL_MODULE_BUILD_VERSION = 0.4214 PERL_MODULE_BUILD_SOURCE = Module-Build-$(PERL_MODULE_BUILD_VERSION).tar.gz PERL_MODULE_BUILD_SITE = $(BR2_CPAN_MIRROR)/authors/id/L/LE/LEONT PERL_MODULE_BUILD_LICENSE = Artistic or GPLv1+ diff --git a/package/perl-mojolicious/perl-mojolicious.hash b/package/perl-mojolicious/perl-mojolicious.hash index d8114e26b19..289f1f3c6f8 100644 --- a/package/perl-mojolicious/perl-mojolicious.hash +++ b/package/perl-mojolicious/perl-mojolicious.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 dd067c5791e27a104a07f2676edf1bf2 Mojolicious-6.14.tar.gz -sha256 9808871b24ee8c9709fc1bd0473a64a54d99fc8c4d6334f503256ae90130b05a Mojolicious-6.14.tar.gz +md5 8c189aed47bbe330584fb335251b3380 Mojolicious-6.25.tar.gz +sha256 2e34d665a505ca9cbd4c55f010b17d184533b9ba2f92431d7c4126e0edc3a41a Mojolicious-6.25.tar.gz diff --git a/package/perl-mojolicious/perl-mojolicious.mk b/package/perl-mojolicious/perl-mojolicious.mk index 50a7f98e75a..3ea828bd96a 100644 --- a/package/perl-mojolicious/perl-mojolicious.mk +++ b/package/perl-mojolicious/perl-mojolicious.mk @@ -4,10 +4,9 @@ # ################################################################################ -PERL_MOJOLICIOUS_VERSION = 6.14 +PERL_MOJOLICIOUS_VERSION = 6.25 PERL_MOJOLICIOUS_SOURCE = Mojolicious-$(PERL_MOJOLICIOUS_VERSION).tar.gz PERL_MOJOLICIOUS_SITE = $(BR2_CPAN_MIRROR)/authors/id/S/SR/SRI -PERL_MOJOLICIOUS_DEPENDENCIES = perl PERL_MOJOLICIOUS_LICENSE = Artistic-2.0 PERL_MOJOLICIOUS_LICENSE_FILES = LICENSE diff --git a/package/perl-net-dns/Config.in b/package/perl-net-dns/Config.in index 52fb4d8fd72..24ce481a69d 100644 --- a/package/perl-net-dns/Config.in +++ b/package/perl-net-dns/Config.in @@ -1,11 +1,7 @@ config BR2_PACKAGE_PERL_NET_DNS bool "perl-net-dns" - depends on !BR2_STATIC_LIBS select BR2_PACKAGE_PERL_DIGEST_HMAC help Net::DNS is a DNS resolver implemented in Perl. http://www.net-dns.org - -comment "perl-net-dns needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS diff --git a/package/perl-net-dns/perl-net-dns.hash b/package/perl-net-dns/perl-net-dns.hash index 01d277212b2..bb1fdfa22b1 100644 --- a/package/perl-net-dns/perl-net-dns.hash +++ b/package/perl-net-dns/perl-net-dns.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 f1d48107ff6b366479ad035783486d7a Net-DNS-0.83.tar.gz -sha256 8e1108d1801b9695909859323e1ed2f7ffb3b03dd3d2028a19fb79fc1a1d7c39 Net-DNS-0.83.tar.gz +md5 5a6f6e6811d6bf8eefd84ce778c2bc2e Net-DNS-1.04.tar.gz +sha256 4b9f220304c5722658fbdbe4db31ab77486b5f0aaada78c9d1b528e4b0680965 Net-DNS-1.04.tar.gz diff --git a/package/perl-net-dns/perl-net-dns.mk b/package/perl-net-dns/perl-net-dns.mk index 75c0a1b11d3..63376128290 100644 --- a/package/perl-net-dns/perl-net-dns.mk +++ b/package/perl-net-dns/perl-net-dns.mk @@ -4,11 +4,11 @@ # ################################################################################ -PERL_NET_DNS_VERSION = 0.83 +PERL_NET_DNS_VERSION = 1.04 PERL_NET_DNS_SOURCE = Net-DNS-$(PERL_NET_DNS_VERSION).tar.gz PERL_NET_DNS_SITE = $(BR2_CPAN_MIRROR)/authors/id/N/NL/NLNETLABS -PERL_NET_DNS_DEPENDENCIES = perl perl-digest-hmac -PERL_NET_DNS_LICENSE = Artistic or GPLv1+ +PERL_NET_DNS_DEPENDENCIES = perl-digest-hmac +PERL_NET_DNS_LICENSE = MIT PERL_NET_DNS_LICENSE_FILES = README $(eval $(perl-package)) diff --git a/package/perl-net-http/perl-net-http.hash b/package/perl-net-http/perl-net-http.hash index 9f5f11b8b74..79f43c5fd5d 100644 --- a/package/perl-net-http/perl-net-http.hash +++ b/package/perl-net-http/perl-net-http.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 b6da691523456089d7a812ac398bc77e Net-HTTP-6.07.tar.gz -sha256 9f31e0325a5a0930ad309fa019da9d208e57e236fb0598675ed883c820240364 Net-HTTP-6.07.tar.gz +md5 3d84d17f64c7316d69e7eb7b4e292b9a Net-HTTP-6.09.tar.gz +sha256 52762b939d84806908ba544581c5708375f7938c3c0e496c128ca3fbc425e58d Net-HTTP-6.09.tar.gz diff --git a/package/perl-net-http/perl-net-http.mk b/package/perl-net-http/perl-net-http.mk index a73dfecae4e..9dbc4ab450b 100644 --- a/package/perl-net-http/perl-net-http.mk +++ b/package/perl-net-http/perl-net-http.mk @@ -4,9 +4,9 @@ # ################################################################################ -PERL_NET_HTTP_VERSION = 6.07 +PERL_NET_HTTP_VERSION = 6.09 PERL_NET_HTTP_SOURCE = Net-HTTP-$(PERL_NET_HTTP_VERSION).tar.gz -PERL_NET_HTTP_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MS/MSCHILLI +PERL_NET_HTTP_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER PERL_NET_HTTP_DEPENDENCIES = perl-uri PERL_NET_HTTP_LICENSE = Artistic or GPLv1+ PERL_NET_HTTP_LICENSE_FILES = README diff --git a/package/perl-net-ssleay/perl-net-ssleay.hash b/package/perl-net-ssleay/perl-net-ssleay.hash index ca659c74a67..556aea7d5e3 100644 --- a/package/perl-net-ssleay/perl-net-ssleay.hash +++ b/package/perl-net-ssleay/perl-net-ssleay.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 511cc451a64b0c5051bd9167f37051a0 Net-SSLeay-1.70.tar.gz -sha256 05eaaa29b8f67778040eee53150ba702fc0ce49420ddd0f1ca68d082f4ee9f4a Net-SSLeay-1.70.tar.gz +md5 a740d7792dbac8ca8c4eb38d3b8fbd01 Net-SSLeay-1.72.tar.gz +sha256 1baac39f0f12cee515d8bec633175bb5916ca542e5356e26420437bd6195d2f4 Net-SSLeay-1.72.tar.gz diff --git a/package/perl-net-ssleay/perl-net-ssleay.mk b/package/perl-net-ssleay/perl-net-ssleay.mk index 8a40a29b194..03a039e0649 100644 --- a/package/perl-net-ssleay/perl-net-ssleay.mk +++ b/package/perl-net-ssleay/perl-net-ssleay.mk @@ -4,10 +4,10 @@ # ################################################################################ -PERL_NET_SSLEAY_VERSION = 1.70 +PERL_NET_SSLEAY_VERSION = 1.72 PERL_NET_SSLEAY_SOURCE = Net-SSLeay-$(PERL_NET_SSLEAY_VERSION).tar.gz PERL_NET_SSLEAY_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MI/MIKEM -PERL_NET_SSLEAY_DEPENDENCIES = perl openssl +PERL_NET_SSLEAY_DEPENDENCIES = openssl PERL_NET_SSLEAY_LICENSE = OpenSSL PERL_NET_SSLEAY_LICENSE_FILES = LICENSE diff --git a/package/perl-netaddr-ip/Config.in b/package/perl-netaddr-ip/Config.in index 4f082f19249..1525830083d 100644 --- a/package/perl-netaddr-ip/Config.in +++ b/package/perl-netaddr-ip/Config.in @@ -1,10 +1,7 @@ config BR2_PACKAGE_PERL_NETADDR_IP bool "perl-netaddr-ip" - depends on !BR2_STATIC_LIBS help - NetAddr::IP - Manages IPv4 and IPv6 addresses and subnets + Manages IPv4 and IPv6 addresses and subnets https://metacpan.org/release/NetAddr-IP -comment "perl-netaddr-ip needs a toolchain w/ dynamic library" - depends on BR2_STATIC_LIBS diff --git a/package/perl-netaddr-ip/perl-netaddr-ip.hash b/package/perl-netaddr-ip/perl-netaddr-ip.hash index 37d17faa5e5..19bba20836c 100644 --- a/package/perl-netaddr-ip/perl-netaddr-ip.hash +++ b/package/perl-netaddr-ip/perl-netaddr-ip.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 b72b91ebd228b096fd3b0acc87df877e NetAddr-IP-4.075.tar.gz -sha256 ab8275bb8f306f780cd029a6dc48764461f4d1ef3a106b99fe5a90cbf2968839 NetAddr-IP-4.075.tar.gz +md5 bca8406520b6535a3f9661d385705d97 NetAddr-IP-4.078.tar.gz +sha256 b9a12294e58dcece0189630ddb6926e37169cbbb24c76091f1e604e426c19614 NetAddr-IP-4.078.tar.gz diff --git a/package/perl-netaddr-ip/perl-netaddr-ip.mk b/package/perl-netaddr-ip/perl-netaddr-ip.mk index e8ace9d09e2..f2eec6c0d5d 100644 --- a/package/perl-netaddr-ip/perl-netaddr-ip.mk +++ b/package/perl-netaddr-ip/perl-netaddr-ip.mk @@ -4,13 +4,14 @@ # ################################################################################ -PERL_NETADDR_IP_VERSION = 4.075 +PERL_NETADDR_IP_VERSION = 4.078 PERL_NETADDR_IP_SOURCE = NetAddr-IP-$(PERL_NETADDR_IP_VERSION).tar.gz PERL_NETADDR_IP_SITE = $(BR2_CPAN_MIRROR)/authors/id/M/MI/MIKER -PERL_NETADDR_IP_DEPENDENCIES = perl PERL_NETADDR_IP_LICENSE = Artistic or GPLv1+ PERL_NETADDR_IP_LICENSE_FILES = Artistic Copying +# we always build the Pure Perl version. +# the build of the native part of NetAddr::IP::Util is buggy. PERL_NETADDR_IP_CONF_OPTS = -noxs $(eval $(perl-package)) diff --git a/package/perl-path-tiny/perl-path-tiny.mk b/package/perl-path-tiny/perl-path-tiny.mk index 71e2e43ca3d..0af84fdd61c 100644 --- a/package/perl-path-tiny/perl-path-tiny.mk +++ b/package/perl-path-tiny/perl-path-tiny.mk @@ -7,7 +7,6 @@ PERL_PATH_TINY_VERSION = 0.072 PERL_PATH_TINY_SOURCE = Path-Tiny-$(PERL_PATH_TINY_VERSION).tar.gz PERL_PATH_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/D/DA/DAGOLDEN -PERL_PATH_TINY_DEPENDENCIES = perl PERL_PATH_TINY_LICENSE = Apache-2.0 PERL_PATH_TINY_LICENSE_FILES = LICENSE diff --git a/package/perl-time-hires/Config.in b/package/perl-time-hires/Config.in index e10c18a0d2d..37bad71d857 100644 --- a/package/perl-time-hires/Config.in +++ b/package/perl-time-hires/Config.in @@ -1,6 +1,10 @@ config BR2_PACKAGE_PERL_TIME_HIRES bool "perl-time-hires" + depends on !BR2_STATIC_LIBS help High resolution alarm, sleep, gettimeofday, interval timers http://search.cpan.org/dist/Time-HiRes/HiRes.pm + +comment "perl-time-hires needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/perl-time-hires/perl-time-hires.mk b/package/perl-time-hires/perl-time-hires.mk index 79207c9108a..7436d96de36 100644 --- a/package/perl-time-hires/perl-time-hires.mk +++ b/package/perl-time-hires/perl-time-hires.mk @@ -7,7 +7,6 @@ PERL_TIME_HIRES_VERSION = 1.9726 PERL_TIME_HIRES_SOURCE = Time-HiRes-$(PERL_TIME_HIRES_VERSION).tar.gz PERL_TIME_HIRES_SITE = $(BR2_CPAN_MIRROR)/authors/id/Z/ZE/ZEFRAM -PERL_TIME_HIRES_DEPENDENCIES = perl PERL_TIME_HIRES_LICENSE = Artistic or GPLv1+ PERL_TIME_HIRES_LICENSE_FILES = README diff --git a/package/perl-timedate/perl-timedate.mk b/package/perl-timedate/perl-timedate.mk index f0c67144372..4c594fb799b 100644 --- a/package/perl-timedate/perl-timedate.mk +++ b/package/perl-timedate/perl-timedate.mk @@ -7,7 +7,7 @@ PERL_TIMEDATE_VERSION = 2.30 PERL_TIMEDATE_SOURCE = TimeDate-$(PERL_TIMEDATE_VERSION).tar.gz PERL_TIMEDATE_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GB/GBARR -PERL_TIMEDATE_DEPENDENCIES = perl PERL_TIMEDATE_LICENSE = Artistic or GPLv1+ +PERL_TIMEDATE_LICENSE_FILES = README $(eval $(perl-package)) diff --git a/package/perl-try-tiny/perl-try-tiny.mk b/package/perl-try-tiny/perl-try-tiny.mk index ba2b00837d8..05cea542bcc 100644 --- a/package/perl-try-tiny/perl-try-tiny.mk +++ b/package/perl-try-tiny/perl-try-tiny.mk @@ -7,7 +7,6 @@ PERL_TRY_TINY_VERSION = 0.22 PERL_TRY_TINY_SOURCE = Try-Tiny-$(PERL_TRY_TINY_VERSION).tar.gz PERL_TRY_TINY_SITE = $(BR2_CPAN_MIRROR)/authors/id/D/DO/DOY -PERL_TRY_TINY_DEPENDENCIES = perl PERL_TRY_TINY_LICENSE = MIT PERL_TRY_TINY_LICENSE_FILES = LICENSE diff --git a/package/perl-uri/perl-uri.hash b/package/perl-uri/perl-uri.hash index ea8de44cc4e..8a265bfcb00 100644 --- a/package/perl-uri/perl-uri.hash +++ b/package/perl-uri/perl-uri.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 4a954ab8d79f831616ca817ba4b26cb9 URI-1.68.tar.gz -sha256 c840d30f7657bfd4b2acbb311bd764232911cd3dc97e92415fbd0a242185c358 URI-1.68.tar.gz +md5 247c3da29a794f72730e01aa5a715daf URI-1.71.tar.gz +sha256 9c8eca0d7f39e74bbc14706293e653b699238eeb1a7690cc9c136fb8c2644115 URI-1.71.tar.gz diff --git a/package/perl-uri/perl-uri.mk b/package/perl-uri/perl-uri.mk index f1aecb069af..e7118fceed5 100644 --- a/package/perl-uri/perl-uri.mk +++ b/package/perl-uri/perl-uri.mk @@ -4,10 +4,9 @@ # ################################################################################ -PERL_URI_VERSION = 1.68 +PERL_URI_VERSION = 1.71 PERL_URI_SOURCE = URI-$(PERL_URI_VERSION).tar.gz PERL_URI_SITE = $(BR2_CPAN_MIRROR)/authors/id/E/ET/ETHER -PERL_URI_DEPENDENCIES = perl PERL_URI_LICENSE = Artistic or GPLv1+ PERL_URI_LICENSE_FILES = LICENSE diff --git a/package/perl-www-robotrules/Config.in b/package/perl-www-robotrules/Config.in index 83dbcfbbbeb..e80f5a0d9d0 100644 --- a/package/perl-www-robotrules/Config.in +++ b/package/perl-www-robotrules/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_PERL_WWW_ROBOTRULES bool "perl-www-robotrules" - select PERL_URI + select BR2_PACKAGE_PERL_URI help This module provides functions that deal the date formats used by the HTTP protocol (and then some more) diff --git a/package/perl-xml-libxml/perl-xml-libxml.hash b/package/perl-xml-libxml/perl-xml-libxml.hash index 516aaeff3a4..782cf5c067a 100644 --- a/package/perl-xml-libxml/perl-xml-libxml.hash +++ b/package/perl-xml-libxml/perl-xml-libxml.hash @@ -1,3 +1,3 @@ # retrieved by scancpan from http://cpan.metacpan.org/ -md5 1544ab9ac110f5da296015346561ce02 XML-LibXML-2.0121.tar.gz -sha256 ec431011cb37a04640fd2316f64d0405a274eece2c6f3847f7fbd336eb1c0dc9 XML-LibXML-2.0121.tar.gz +md5 c9eb502f8aa2586c4a4dce3c784a2a0b XML-LibXML-2.0123.tar.gz +sha256 0525a2491f152cadee8c63550c79a380fb393851fdfc4c1e6cd5f0f92614f7c4 XML-LibXML-2.0123.tar.gz diff --git a/package/perl-xml-libxml/perl-xml-libxml.mk b/package/perl-xml-libxml/perl-xml-libxml.mk index d58a1f30770..9d7216aac87 100644 --- a/package/perl-xml-libxml/perl-xml-libxml.mk +++ b/package/perl-xml-libxml/perl-xml-libxml.mk @@ -4,10 +4,10 @@ # ################################################################################ -PERL_XML_LIBXML_VERSION = 2.0121 +PERL_XML_LIBXML_VERSION = 2.0123 PERL_XML_LIBXML_SOURCE = XML-LibXML-$(PERL_XML_LIBXML_VERSION).tar.gz PERL_XML_LIBXML_SITE = $(BR2_CPAN_MIRROR)/authors/id/S/SH/SHLOMIF -PERL_XML_LIBXML_DEPENDENCIES = perl zlib libxml2 perl-xml-sax perl-xml-namespacesupport +PERL_XML_LIBXML_DEPENDENCIES = zlib libxml2 perl-xml-sax perl-xml-namespacesupport PERL_XML_LIBXML_LICENSE = Artistic or GPLv1+ PERL_XML_LIBXML_LICENSE_FILES = LICENSE diff --git a/package/perl-xml-namespacesupport/perl-xml-namespacesupport.mk b/package/perl-xml-namespacesupport/perl-xml-namespacesupport.mk index 812258e9d79..31b71c13e5c 100644 --- a/package/perl-xml-namespacesupport/perl-xml-namespacesupport.mk +++ b/package/perl-xml-namespacesupport/perl-xml-namespacesupport.mk @@ -7,7 +7,7 @@ PERL_XML_NAMESPACESUPPORT_VERSION = 1.11 PERL_XML_NAMESPACESUPPORT_SOURCE = XML-NamespaceSupport-$(PERL_XML_NAMESPACESUPPORT_VERSION).tar.gz PERL_XML_NAMESPACESUPPORT_SITE = $(BR2_CPAN_MIRROR)/authors/id/P/PE/PERIGRIN -PERL_XML_NAMESPACESUPPORT_DEPENDENCIES = perl PERL_XML_NAMESPACESUPPORT_LICENSE = Artistic or GPLv1+ +PERL_XML_NAMESPACESUPPORT_LICENSE_FILES = README $(eval $(perl-package)) diff --git a/package/perl-xml-sax-base/perl-xml-sax-base.mk b/package/perl-xml-sax-base/perl-xml-sax-base.mk index 528e9766811..60dec316951 100644 --- a/package/perl-xml-sax-base/perl-xml-sax-base.mk +++ b/package/perl-xml-sax-base/perl-xml-sax-base.mk @@ -7,7 +7,7 @@ PERL_XML_SAX_BASE_VERSION = 1.08 PERL_XML_SAX_BASE_SOURCE = XML-SAX-Base-$(PERL_XML_SAX_BASE_VERSION).tar.gz PERL_XML_SAX_BASE_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GR/GRANTM -PERL_XML_SAX_BASE_DEPENDENCIES = perl PERL_XML_SAX_BASE_LICENSE = Artistic or GPLv1+ +PERL_XML_SAX_BASE_LICENSE_FILES = README $(eval $(perl-package)) diff --git a/package/perl-xml-sax/perl-xml-sax.mk b/package/perl-xml-sax/perl-xml-sax.mk index 04d8e5433dd..f6d03729dcc 100644 --- a/package/perl-xml-sax/perl-xml-sax.mk +++ b/package/perl-xml-sax/perl-xml-sax.mk @@ -7,7 +7,7 @@ PERL_XML_SAX_VERSION = 0.99 PERL_XML_SAX_SOURCE = XML-SAX-$(PERL_XML_SAX_VERSION).tar.gz PERL_XML_SAX_SITE = $(BR2_CPAN_MIRROR)/authors/id/G/GR/GRANTM -PERL_XML_SAX_DEPENDENCIES = perl perl-xml-namespacesupport perl-xml-sax-base +PERL_XML_SAX_DEPENDENCIES = perl-xml-namespacesupport perl-xml-sax-base PERL_XML_SAX_LICENSE = Artistic or GPLv1+ PERL_XML_SAX_LICENSE_FILES = LICENSE diff --git a/package/perl/0002-dynaloader-hints.patch b/package/perl/0002-dynaloader-hints.patch deleted file mode 100644 index 2653b78cd71..00000000000 --- a/package/perl/0002-dynaloader-hints.patch +++ /dev/null @@ -1,13 +0,0 @@ -Buildroot puts nlist.h into sysroot/usr/include, -which is in the default include path. - -Signed-off-by: Alex Suykov - ---- a/ext/DynaLoader/hints/linux.pl -+++ b/ext/DynaLoader/hints/linux.pl -@@ -1,5 +1 @@ --# XXX Configure test needed. --# Some Linux releases like to hide their --$self->{CCFLAGS} = $Config{ccflags} . ' -I/usr/include/libelf' -- if -f "/usr/include/libelf/nlist.h"; - 1; diff --git a/package/perl/perl.hash b/package/perl/perl.hash index 0ee587e9100..3f1bd1a6a40 100644 --- a/package/perl/perl.hash +++ b/package/perl/perl.hash @@ -1,7 +1,7 @@ -# Hashes from: http://www.cpan.org/src/5.0/perl-5.20.2.tar.bz2.{md5,sha1,sha256}.txt -md5 21062666f1c627aeb6dbff3c6952738b perl-5.20.2.tar.bz2 -sha1 63126c683b4c79c35008a47d56f7beae876c569f perl-5.20.2.tar.bz2 -sha256 e5a4713bc65e1da98ebd833dce425c000768bfe84d17ec5183ec5ca249db71ab perl-5.20.2.tar.bz2 +# Hashes from: http://www.cpan.org/src/5.0/perl-5.22.1.tar.bz2.{md5,sha1,sha256}.txt +md5 67242b9bd642b458bec884ed2a040910 perl-5.22.1.tar.bz2 +sha1 29f9b320b0299577a3e1d02e9e8ef8f26f160332 perl-5.22.1.tar.bz2 +sha256 e98e4075a3167fa40524abe447c30bcca10c60e02a54ee1361eff278947a1221 perl-5.22.1.tar.bz2 # No upstream hashes for the following -sha256 36cabbc937cc66e59c8ae414d7753190d54a022cae0012c09ee5bbee78bc0aa0 perl-5.20.2-cross-0.9.7.tar.gz +sha256 250ab6e6c034a8b7ae447fa2b453fa0b61ebb7db4d039eba60c52e44ab5899bd perl-5.22.1-cross-1.0.2.tar.gz diff --git a/package/perl/perl.mk b/package/perl/perl.mk index 1e6a054aabf..0bd10ad43b0 100644 --- a/package/perl/perl.mk +++ b/package/perl/perl.mk @@ -4,18 +4,18 @@ # ################################################################################ -PERL_VERSION_MAJOR = 20 -PERL_VERSION = 5.$(PERL_VERSION_MAJOR).2 +PERL_VERSION_MAJOR = 22 +PERL_VERSION = 5.$(PERL_VERSION_MAJOR).1 PERL_SITE = http://www.cpan.org/src/5.0 PERL_SOURCE = perl-$(PERL_VERSION).tar.bz2 PERL_LICENSE = Artistic or GPLv1+ PERL_LICENSE_FILES = Artistic Copying README PERL_INSTALL_STAGING = YES -PERL_CROSS_VERSION = 0.9.7 -PERL_CROSS_BASE_VERSION = 5.$(PERL_VERSION_MAJOR).2 +PERL_CROSS_VERSION = 1.0.2 +PERL_CROSS_BASE_VERSION = 5.$(PERL_VERSION_MAJOR).1 # DO NOT refactor with the github helper (the result is not the same) -PERL_CROSS_SITE = http://raw.github.com/arsv/perl-cross/releases +PERL_CROSS_SITE = https://github.com/arsv/perl-cross/releases/download/$(PERL_CROSS_VERSION) PERL_CROSS_SOURCE = perl-$(PERL_CROSS_BASE_VERSION)-cross-$(PERL_CROSS_VERSION).tar.gz PERL_EXTRA_DOWNLOADS = $(PERL_CROSS_SITE)/$(PERL_CROSS_SOURCE) @@ -45,13 +45,12 @@ PERL_DEPENDENCIES += gdbm endif # We have to override LD, because an external multilib toolchain ld is not -# wrapped to provide the required sysroot options. We also can't use ccache -# because the configure script doesn't support it. +# wrapped to provide the required sysroot options. PERL_CONF_OPTS = \ --target=$(GNU_TARGET_NAME) \ --target-tools-prefix=$(TARGET_CROSS) \ --prefix=/usr \ - -Dld="$(TARGET_CC_NOCCACHE)" \ + -Dld="$(TARGET_CC)" \ -Dccflags="$(TARGET_CFLAGS)" \ -Dldflags="$(TARGET_LDFLAGS) -lm" \ -Dmydomain="" \ diff --git a/package/php-ssh2/Config.in b/package/php-ssh2/Config.in index b4579007400..9b8a3f82abb 100644 --- a/package/php-ssh2/Config.in +++ b/package/php-ssh2/Config.in @@ -2,6 +2,8 @@ config BR2_PACKAGE_PHP_SSH2 bool "php-ssh2" depends on BR2_PACKAGE_PHP select BR2_PACKAGE_LIBSSH2 + # Triggers the _gp link issue (libssh2) + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII help PHP bindings for the libssh2 library. diff --git a/package/php/Config.ext b/package/php/Config.ext index 5324e7958a3..ee51030ab74 100644 --- a/package/php/Config.ext +++ b/package/php/Config.ext @@ -67,6 +67,7 @@ config BR2_PACKAGE_PHP_EXT_HASH config BR2_PACKAGE_PHP_EXT_MCRYPT bool "mcrypt" + select BR2_PACKAGE_LIBMCRYPT help mcrypt support @@ -206,13 +207,11 @@ config BR2_PACKAGE_PHP_EXT_INTL depends on BR2_USE_WCHAR depends on !BR2_BINFMT_FLAT # icu depends on BR2_TOOLCHAIN_HAS_THREADS # icu - depends on BR2_ARCH_HAS_ATOMICS # icu help Internationalization support comment "intl support needs a toolchain w/ C++, wchar, threads" depends on !BR2_BINFMT_FLAT - depends on BR2_ARCH_HAS_ATOMICS depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS config BR2_PACKAGE_PHP_EXT_MBSTRING diff --git a/package/php/php.hash b/package/php/php.hash index ea12138f009..5cdafc6b35c 100644 --- a/package/php/php.hash +++ b/package/php/php.hash @@ -1,2 +1,2 @@ # From http://php.net/downloads.php -sha256 3f97dbb1c646b90e1ef638defabe429ef036f903b5baa1c34769d3de4fe62bd4 php-5.6.11.tar.xz +sha256 54dd9106c3469bc7028644d72ac140af00655420bbaaf4a742a64e9ed02ec1b0 php-5.6.18.tar.xz diff --git a/package/php/php.mk b/package/php/php.mk index 4b171cfca9c..f2c7e28beff 100644 --- a/package/php/php.mk +++ b/package/php/php.mk @@ -4,8 +4,7 @@ # ################################################################################ -PHP_VERSION_MAJOR = 5.6 -PHP_VERSION = $(PHP_VERSION_MAJOR).11 +PHP_VERSION = 5.6.18 PHP_SITE = http://www.php.net/distributions PHP_SOURCE = php-$(PHP_VERSION).tar.xz PHP_INSTALL_STAGING = YES @@ -29,6 +28,10 @@ ifeq ($(BR2_STATIC_LIBS),y) PHP_CONF_ENV += LIBS="$(PHP_STATIC_LIBS)" endif +ifeq ($(BR2_STATIC_LIBS)$(BR2_TOOLCHAIN_HAS_THREADS),yy) +PHP_STATIC_LIBS += -lpthread +endif + ifeq ($(BR2_TARGET_LOCALTIME),) PHP_LOCALTIME = UTC else @@ -209,9 +212,6 @@ endif ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_UNIXODBC),y) PHP_CONF_OPTS += --with-pdo-odbc=unixODBC,$(STAGING_DIR)/usr PHP_DEPENDENCIES += unixodbc -ifeq ($(BR2_STATIC_LIBS)$(BR2_TOOLCHAIN_HAS_THREADS),yy) -PHP_STATIC_LIBS += -lpthread -endif endif endif diff --git a/package/picocom/Config.in b/package/picocom/Config.in index 5a7d5833a49..671d01fb5ab 100644 --- a/package/picocom/Config.in +++ b/package/picocom/Config.in @@ -2,8 +2,7 @@ config BR2_PACKAGE_PICOCOM bool "picocom" depends on BR2_USE_MMU # fork() help - picocom is a minimal dumb-terminal emulation program. It - is, in principle, very much like minicom, only it's pico - instead of mini! + picocom is a minimal dumb-terminal emulation program. It is, in + principle, very much like minicom, only it's pico instead of mini! - http://code.google.com/p/picocom/ + https://github.com/npat-efault/picocom/ diff --git a/package/picocom/picocom.hash b/package/picocom/picocom.hash new file mode 100644 index 00000000000..674b6209d3b --- /dev/null +++ b/package/picocom/picocom.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 6b152fc5f816eaef6b86336a4cec7cf1496b7c712061e5aea5a36f143a0b09ed picocom-2.1.tar.gz diff --git a/package/picocom/picocom.mk b/package/picocom/picocom.mk index 7858d2bf67d..59a749fba18 100644 --- a/package/picocom/picocom.mk +++ b/package/picocom/picocom.mk @@ -4,13 +4,13 @@ # ################################################################################ -PICOCOM_VERSION = 1.7 -PICOCOM_SITE = http://picocom.googlecode.com/files +PICOCOM_VERSION = 2.1 +PICOCOM_SITE = $(call github,npat-efault,picocom,$(PICOCOM_VERSION)) PICOCOM_LICENSE = GPLv2+ PICOCOM_LICENSE_FILES = LICENSE.txt define PICOCOM_BUILD_CMDS - $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) endef define PICOCOM_INSTALL_TARGET_CMDS diff --git a/package/pifmrds/0003-Makefile-fix-static-link.patch b/package/pifmrds/0003-Makefile-fix-static-link.patch new file mode 100644 index 00000000000..ecd7c4fc4cb --- /dev/null +++ b/package/pifmrds/0003-Makefile-fix-static-link.patch @@ -0,0 +1,23 @@ +Makefile: Fix static linking + +Since libsndfile uses funtions from libm, the -lm should be specified +after libsndfile for static linking. + +Signed-off-by: "Eric Limpens" + +diff -purN pifmrds-0bf57f9ce0d954365a38d8af8e7be6f28521c3f2.orig/src/Makefile pifmrds-0bf57f9ce0d954365a38d8af8e7be6f28521c3f2/src/Makefile +--- pifmrds-0bf57f9ce0d954365a38d8af8e7be6f28521c3f2.orig/src/Makefile 2016-02-26 08:06:43.102962592 +0100 ++++ pifmrds-0bf57f9ce0d954365a38d8af8e7be6f28521c3f2/src/Makefile 2016-02-26 08:27:11.069148203 +0100 +@@ -1,10 +1,10 @@ + CC = gcc + + app: rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o +- $(CC) $(LDFLAGS) -o pi_fm_rds rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o -lm -lsndfile ++ $(CC) $(LDFLAGS) -o pi_fm_rds rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o -lsndfile -lm + + rds_wav: rds.o waveforms.o rds_wav.o fm_mpx.o +- $(CC) $(LDFLAGS) -o rds_wav rds_wav.o rds.o waveforms.o fm_mpx.o -lm -lsndfile ++ $(CC) $(LDFLAGS) -o rds_wav rds_wav.o rds.o waveforms.o fm_mpx.o -lsndfile -lm + + rds.o: rds.c waveforms.h + $(CC) $(CFLAGS) rds.c diff --git a/package/pinentry/Config.in b/package/pinentry/Config.in index edf3316322c..f5a81597626 100644 --- a/package/pinentry/Config.in +++ b/package/pinentry/Config.in @@ -23,7 +23,7 @@ config BR2_PACKAGE_PINENTRY_GTK2 depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_ARCH_HAS_ATOMICS # libgtk2 -> cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk2 -> pango -> harfbuzz select BR2_PACKAGE_LIBGTK2 select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE help @@ -31,7 +31,7 @@ config BR2_PACKAGE_PINENTRY_GTK2 comment "pinentry-gtk2 needs X and a toolchain w/ wchar, threads, C++" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_PACKAGE_XORG7 || !BR2_USE_WCHAR || \ !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/pinentry/pinentry.mk b/package/pinentry/pinentry.mk index d3e6b7a1bec..09a7705c276 100644 --- a/package/pinentry/pinentry.mk +++ b/package/pinentry/pinentry.mk @@ -9,7 +9,9 @@ PINENTRY_SOURCE = pinentry-$(PINENTRY_VERSION).tar.bz2 PINENTRY_SITE = ftp://ftp.gnupg.org/gcrypt/pinentry PINENTRY_LICENSE = GPLv2+ PINENTRY_LICENSE_FILES = COPYING -PINENTRY_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv) +PINENTRY_DEPENDENCIES = \ + $(if $(BR2_PACKAGE_LIBICONV),libiconv) \ + host-pkgconf PINENTRY_CONF_OPTS += --without-libcap # requires PAM # build with X if available @@ -19,6 +21,13 @@ else PINENTRY_CONF_OPTS += --without-x endif +ifeq ($(BR2_PACKAGE_LIBSECRET),y) +PINENTRY_CONF_OPTS += --enable-libsecret +PINENTRY_DEPENDENCIES += libsecret +else +PINENTRY_CONF_OPTS += --disable-libsecret +endif + # pinentry-ncurses backend ifeq ($(BR2_PACKAGE_PINENTRY_NCURSES),y) PINENTRY_CONF_OPTS += --enable-ncurses --with-ncurses-include-dir=none diff --git a/package/pixman/0001-Disable-tests.patch b/package/pixman/0001-Disable-tests.patch new file mode 100644 index 00000000000..dfadd69a677 --- /dev/null +++ b/package/pixman/0001-Disable-tests.patch @@ -0,0 +1,29 @@ +From 9b8132738c364fc3c886e81e7d383aaff80dc867 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sat, 5 Dec 2015 12:00:53 +0100 +Subject: [PATCH] Disable tests + +Tests are causing build failures on some architectures that are missing +a proper fenv.h, so just disable them. + +Signed-off-by: "Yann E. MORIN" + +--- +Status: Buildroot specific, not suitable for upstream in this state. +--- + Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index 5137c9e..eae79fd 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -1,4 +1,4 @@ +-SUBDIRS = pixman demos test ++SUBDIRS = pixman demos + + pkgconfigdir=$(libdir)/pkgconfig + pkgconfig_DATA=pixman-1.pc +-- +1.9.1 + diff --git a/package/pixman/0001-check-fe-divbyzero.patch b/package/pixman/0001-check-fe-divbyzero.patch deleted file mode 100644 index 01c6c96de69..00000000000 --- a/package/pixman/0001-check-fe-divbyzero.patch +++ /dev/null @@ -1,41 +0,0 @@ -Add a check for FE_DIVBYZERO - -Some architectures (namely Microblaze) do have fenv.h and -feenableexcept, but they don't have the FE_DIVBYZERO definition. This -patch adds a configure check for FE_DIVBYZERO, and only uses it if -it's available. - -Signed-off-by: Thomas Petazzoni - -Index: b/configure.ac -=================================================================== ---- a/configure.ac -+++ b/configure.ac -@@ -838,6 +838,11 @@ - AC_DEFINE(HAVE_FEENABLEEXCEPT, 1, [Whether we have feenableexcept()]) - fi - -+AC_CHECK_DECL([FE_DIVBYZERO], [], [], [[#include ]]) -+if test x$ac_cv_have_decl_FE_DIVBYZERO = xyes; then -+ AC_DEFINE(HAVE_FEDIVBYZERO, 1, [Whether we have FE_DIVBYZERO]) -+fi -+ - AC_CHECK_FUNC(gettimeofday, have_gettimeofday=yes, have_gettimeofday=no) - AC_CHECK_HEADER(sys/time.h, have_sys_time_h=yes, have_sys_time_h=no) - if test x$have_gettimeofday = xyes && test x$have_sys_time_h = xyes; then -Index: b/test/utils.c -=================================================================== ---- a/test/utils.c -+++ b/test/utils.c -@@ -776,9 +776,11 @@ - { - #ifdef HAVE_FENV_H - #ifdef HAVE_FEENABLEEXCEPT -+#ifdef HAVE_FE_DIVBYZERO - feenableexcept (FE_DIVBYZERO); - #endif - #endif -+#endif - } - - void * diff --git a/package/pixman/0002-Fix-C-pre-processor-issues-in-LEAF_MIPS32R2.patch b/package/pixman/0002-Fix-C-pre-processor-issues-in-LEAF_MIPS32R2.patch deleted file mode 100644 index b898fa5e656..00000000000 --- a/package/pixman/0002-Fix-C-pre-processor-issues-in-LEAF_MIPS32R2.patch +++ /dev/null @@ -1,33 +0,0 @@ -pixman: Fix C pre-processor issues in LEAF_MIPS32R2 - -Signed-off-by: Vicente Olivert Riera - -From 3a60aa8d574f4dfc4fa3ddb13aaa13c7d955105b Mon Sep 17 00:00:00 2001 -From: Vicente Olivert Riera -Date: Thu, 11 Sep 2014 10:24:10 +0100 -Subject: [PATCH] Fix C pre-processor issues in LEAF_MIPS32R2 - -Signed-off-by: Vicente Olivert Riera ---- - pixman/pixman-mips-dspr2-asm.h | 4 ++-- - 1 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/pixman/pixman-mips-dspr2-asm.h b/pixman/pixman-mips-dspr2-asm.h -index 11849bd..b2696d0 100644 ---- a/pixman/pixman-mips-dspr2-asm.h -+++ b/pixman/pixman-mips-dspr2-asm.h -@@ -72,10 +72,10 @@ - #define LEAF_MIPS32R2(symbol) \ - .globl symbol; \ - .align 2; \ --#ifdef __ELF__ -+ .if __ELF__; \ - .hidden symbol; \ - .type symbol, @function; \ --#endif -+ .endif; \ - .ent symbol, 0; \ - symbol: .frame sp, 0, ra; \ - .set push; \ --- -1.7.1 diff --git a/package/pixman/0002-pixman-private-include-float.h-only-in-C-code.patch b/package/pixman/0002-pixman-private-include-float.h-only-in-C-code.patch new file mode 100644 index 00000000000..455cebb2651 --- /dev/null +++ b/package/pixman/0002-pixman-private-include-float.h-only-in-C-code.patch @@ -0,0 +1,46 @@ +From 2a5b33fe5cb921993573392afac19185e224b49a Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 17 Jan 2016 14:14:28 +0100 +Subject: [PATCH] pixman-private: include only in C code + + is included unconditionally by pixman-private.h, which in +turn gets included by assembler files. Unfortunately, with certain C +libraries (like the musl C library), cannot be included in +assembler files: + + CCLD libpixman-arm-simd.la +/home/test/buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/float.h: Assembler messages: +/home/test/buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/float.h:8: Error: bad instruction `int __flt_rounds(void)' +/home/test/buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/float.h: Assembler messages: +/home/test/buildroot/output/host/usr/arm-buildroot-linux-musleabihf/sysroot/usr/include/float.h:8: Error: bad instruction `int __flt_rounds(void)' + +It turns out however that is not needed by assembly files, +so we move its inclusion within the #ifndef __ASSEMBLER__ condition, +which solves the problem. + +Signed-off-by: Thomas Petazzoni +--- + pixman/pixman-private.h | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/pixman/pixman-private.h b/pixman/pixman-private.h +index 73108a0..73a5414 100644 +--- a/pixman/pixman-private.h ++++ b/pixman/pixman-private.h +@@ -1,5 +1,3 @@ +-#include +- + #ifndef PIXMAN_PRIVATE_H + #define PIXMAN_PRIVATE_H + +@@ -30,6 +28,7 @@ + #include + #include + #include ++#include + + #include "pixman-compiler.h" + +-- +2.6.4 + diff --git a/package/pixman/pixman.hash b/package/pixman/pixman.hash index c6ec14e8d05..d5b8934e461 100644 --- a/package/pixman/pixman.hash +++ b/package/pixman/pixman.hash @@ -1,2 +1,2 @@ -# From http://cairographics.org/releases/pixman-0.32.6.tar.gz.sha1 -sha1 8791343cbf6d99451f4d08e8209d6ac11bf96df2 pixman-0.32.6.tar.gz +# From http://lists.x.org/archives/xorg-announce/2016-January/002672.html +sha1 367698744e74d6d4f363041482965b9ea7fbe4a5 pixman-0.34.0.tar.bz2 diff --git a/package/pixman/pixman.mk b/package/pixman/pixman.mk index a244ea82ba8..06070f0c5e0 100644 --- a/package/pixman/pixman.mk +++ b/package/pixman/pixman.mk @@ -4,13 +4,16 @@ # ################################################################################ -PIXMAN_VERSION = 0.32.6 +PIXMAN_VERSION = 0.34.0 +PIXMAN_SOURCE = pixman-$(PIXMAN_VERSION).tar.bz2 PIXMAN_SITE = http://xorg.freedesktop.org/releases/individual/lib PIXMAN_LICENSE = MIT PIXMAN_LICENSE_FILES = COPYING PIXMAN_INSTALL_STAGING = YES PIXMAN_DEPENDENCIES = host-pkgconf + +# For 0001-Disable-tests.patch PIXMAN_AUTORECONF = YES # don't build gtk based demos @@ -25,9 +28,14 @@ endif # toolchain gets confused about TLS access through GOT (PIC), so disable TLS # movhi r4, %got_hiadj(%tls_ldo(fast_path_cache)) # {standard input}:172: Error: bad expression -ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405),y) +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII),y) PIXMAN_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -DPIXMAN_NO_TLS" endif +# Altivec detection isn't reliable for CS toolchains +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC),y) +PIXMAN_CONF_OPTS += --disable-vmx +endif + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/pkg-autotools.mk b/package/pkg-autotools.mk index 478791475c1..502eeea6aa2 100644 --- a/package/pkg-autotools.mk +++ b/package/pkg-autotools.mk @@ -214,12 +214,12 @@ else # installed. define $(2)_CONFIGURE_CMDS (cd $$($$(PKG)_SRCDIR) && rm -rf config.cache; \ - $$(HOST_CONFIGURE_OPTS) \ - CFLAGS="$$(HOST_CFLAGS)" \ - LDFLAGS="$$(HOST_LDFLAGS)" \ - $$($$(PKG)_CONF_ENV) \ - CONFIG_SITE=/dev/null \ - ./configure \ + $$(HOST_CONFIGURE_OPTS) \ + CFLAGS="$$(HOST_CFLAGS)" \ + LDFLAGS="$$(HOST_LDFLAGS)" \ + $$($$(PKG)_CONF_ENV) \ + CONFIG_SITE=/dev/null \ + ./configure \ --prefix="$$(HOST_DIR)/usr" \ --sysconfdir="$$(HOST_DIR)/etc" \ --localstatedir="$$(HOST_DIR)/var" \ diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk index 574ecccacbd..81dcfcce169 100644 --- a/package/pkg-cmake.mk +++ b/package/pkg-cmake.mk @@ -98,7 +98,6 @@ define $(2)_CONFIGURE_CMDS -DBUILD_TESTS=OFF \ -DBUILD_TESTING=OFF \ -DBUILD_SHARED_LIBS=$$(if $$(BR2_STATIC_LIBS),OFF,ON) \ - -DUSE_CCACHE=$$(if $$(BR2_CCACHE),ON,OFF) \ $$(CMAKE_QUIET) \ $$($$(PKG)_CONF_OPTS) \ ) @@ -241,12 +240,12 @@ endif $(HOST_DIR)/usr/share/buildroot/toolchainfile.cmake: @mkdir -p $(@D) sed \ - -e 's:@@STAGING_SUBDIR@@:$(call qstrip,$(STAGING_SUBDIR)):' \ - -e 's:@@TARGET_CFLAGS@@:$(call qstrip,$(TARGET_CFLAGS)):' \ - -e 's:@@TARGET_CXXFLAGS@@:$(call qstrip,$(TARGET_CXXFLAGS)):' \ - -e 's:@@TARGET_LDFLAGS@@:$(call qstrip,$(TARGET_LDFLAGS)):' \ - -e 's:@@TARGET_CC_NOCCACHE@@:$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_CC_NOCCACHE))):' \ - -e 's:@@TARGET_CXX_NOCCACHE@@:$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_CXX_NOCCACHE))):' \ - -e 's:@@CMAKE_SYSTEM_PROCESSOR@@:$(call qstrip,$(CMAKE_SYSTEM_PROCESSOR)):' \ + -e 's#@@STAGING_SUBDIR@@#$(call qstrip,$(STAGING_SUBDIR))#' \ + -e 's#@@TARGET_CFLAGS@@#$(call qstrip,$(TARGET_CFLAGS))#' \ + -e 's#@@TARGET_CXXFLAGS@@#$(call qstrip,$(TARGET_CXXFLAGS))#' \ + -e 's#@@TARGET_LDFLAGS@@#$(call qstrip,$(TARGET_LDFLAGS))#' \ + -e 's#@@TARGET_CC@@#$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_CC)))#' \ + -e 's#@@TARGET_CXX@@#$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_CXX)))#' \ + -e 's#@@CMAKE_SYSTEM_PROCESSOR@@#$(call qstrip,$(CMAKE_SYSTEM_PROCESSOR))#' \ $(TOPDIR)/support/misc/toolchainfile.cmake.in \ > $@ diff --git a/package/pkg-download.mk b/package/pkg-download.mk index c86b9abcff7..1332e66fd2f 100644 --- a/package/pkg-download.mk +++ b/package/pkg-download.mk @@ -214,6 +214,7 @@ endef define DOWNLOAD_INNER $(Q)if test -n "$(call qstrip,$(BR2_PRIMARY_SITE))" ; then \ case "$(call geturischeme,$(BR2_PRIMARY_SITE))" in \ + file) $(call $(3)_LOCALFILES,$(BR2_PRIMARY_SITE)/$(2),$(2)) && exit ;; \ scp) $(call $(3)_SCP,$(BR2_PRIMARY_SITE)/$(2),$(2)) && exit ;; \ *) $(call $(3)_WGET,$(BR2_PRIMARY_SITE)/$(2),$(2)) && exit ;; \ esac ; \ @@ -222,12 +223,7 @@ define DOWNLOAD_INNER exit 1 ; \ fi ; \ if test -n "$(1)" ; then \ - if test -z "$($(PKG)_SITE_METHOD)" ; then \ - scheme="$(call geturischeme,$(1))" ; \ - else \ - scheme="$($(PKG)_SITE_METHOD)" ; \ - fi ; \ - case "$$scheme" in \ + case "$($(PKG)_SITE_METHOD)" in \ git) $($(3)_GIT) && exit ;; \ svn) $($(3)_SVN) && exit ;; \ cvs) $($(3)_CVS) && exit ;; \ diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index 6a7d97efdf0..e22babbcd0c 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -55,6 +55,46 @@ define step_time endef GLOBAL_INSTRUMENTATION_HOOKS += step_time +# Hooks to collect statistics about installed files + +# This hook will be called before the target installation of a +# package. We store in a file named .br_filelist_before the list of +# files currently installed in the target. Note that the MD5 is also +# stored, in order to identify if the files are overwritten. +define step_pkg_size_start + (cd $(TARGET_DIR) ; find . -type f -print0 | xargs -0 md5sum) | sort > \ + $($(PKG)_DIR)/.br_filelist_before +endef + +# This hook will be called after the target installation of a +# package. We store in a file named .br_filelist_after the list of +# files (and their MD5) currently installed in the target. We then do +# a diff with the .br_filelist_before to compute the list of files +# installed by this package. +define step_pkg_size_end + (cd $(TARGET_DIR); find . -type f -print0 | xargs -0 md5sum) | sort > \ + $($(PKG)_DIR)/.br_filelist_after + comm -13 $($(PKG)_DIR)/.br_filelist_before $($(PKG)_DIR)/.br_filelist_after | \ + while read hash file ; do \ + echo "$(1),$${file}" >> $(BUILD_DIR)/packages-file-list.txt ; \ + done +endef + +define step_pkg_size + $(if $(filter install-target,$(2)),\ + $(if $(filter start,$(1)),$(call step_pkg_size_start,$(3))) \ + $(if $(filter end,$(1)),$(call step_pkg_size_end,$(3)))) +endef +GLOBAL_INSTRUMENTATION_HOOKS += step_pkg_size + +# This hook checks that host packages that need libraries that we build +# have a proper DT_RPATH or DT_RUNPATH tag +define check_host_rpath + $(if $(filter install-host,$(2)),\ + $(if $(filter end,$(1)),support/scripts/check-host-rpath $(3) $(HOST_DIR))) +endef +GLOBAL_INSTRUMENTATION_HOOKS += check_host_rpath + # User-supplied script ifneq ($(BR2_INSTRUMENTATION_SCRIPTS),) define step_user @@ -93,8 +133,8 @@ $(BUILD_DIR)/%/.stamp_extracted: # some packages have messed up permissions inside $(Q)chmod -R +rw $(@D) $(foreach hook,$($(PKG)_POST_EXTRACT_HOOKS),$(call $(hook))$(sep)) - $(Q)touch $@ @$(call step_end,extract) + $(Q)touch $@ # Rsync the source directory if the _OVERRIDE_SRCDIR feature is # used. @@ -113,7 +153,6 @@ $(BUILD_DIR)/%/.stamp_rsynced: # prefix of the patches # # For BR2_GLOBAL_PATCH_DIR, only generate if it is defined -$(BUILD_DIR)/%/.stamp_patched: NAMEVER = $(RAWNAME)-$($(PKG)_VERSION) $(BUILD_DIR)/%/.stamp_patched: PATCH_BASE_DIRS = $(PKGDIR) $(BUILD_DIR)/%/.stamp_patched: PATCH_BASE_DIRS += $(addsuffix /$(RAWNAME),$(call qstrip,$(BR2_GLOBAL_PATCH_DIR))) $(BUILD_DIR)/%/.stamp_patched: @@ -133,8 +172,8 @@ $(BUILD_DIR)/%/.stamp_patched: done; \ ) $(foreach hook,$($(PKG)_POST_PATCH_HOOKS),$(call $(hook))$(sep)) - $(Q)touch $@ @$(call step_end,patch) + $(Q)touch $@ # Check that all directories specified in BR2_GLOBAL_PATCH_DIR exist. $(foreach dir,$(call qstrip,$(BR2_GLOBAL_PATCH_DIR)),\ @@ -148,8 +187,8 @@ $(BUILD_DIR)/%/.stamp_configured: $(foreach hook,$($(PKG)_PRE_CONFIGURE_HOOKS),$(call $(hook))$(sep)) $($(PKG)_CONFIGURE_CMDS) $(foreach hook,$($(PKG)_POST_CONFIGURE_HOOKS),$(call $(hook))$(sep)) - $(Q)touch $@ @$(call step_end,configure) + $(Q)touch $@ # Build $(BUILD_DIR)/%/.stamp_built:: @@ -158,8 +197,8 @@ $(BUILD_DIR)/%/.stamp_built:: $(foreach hook,$($(PKG)_PRE_BUILD_HOOKS),$(call $(hook))$(sep)) +$($(PKG)_BUILD_CMDS) $(foreach hook,$($(PKG)_POST_BUILD_HOOKS),$(call $(hook))$(sep)) - $(Q)touch $@ @$(call step_end,build) + $(Q)touch $@ # Install to host dir $(BUILD_DIR)/%/.stamp_host_installed: @@ -168,8 +207,8 @@ $(BUILD_DIR)/%/.stamp_host_installed: $(foreach hook,$($(PKG)_PRE_INSTALL_HOOKS),$(call $(hook))$(sep)) +$($(PKG)_INSTALL_CMDS) $(foreach hook,$($(PKG)_POST_INSTALL_HOOKS),$(call $(hook))$(sep)) - $(Q)touch $@ @$(call step_end,install-host) + $(Q)touch $@ # Install to staging dir # @@ -219,8 +258,8 @@ $(BUILD_DIR)/%/.stamp_staging_installed: -e "s:@TOOLCHAIN_EXTERNAL_INSTALL_DIR@:$(TOOLCHAIN_EXTERNAL_INSTALL_DIR):g") \ -e "s:@STAGING_DIR@:$(STAGING_DIR):g" \ -e "s:@BASE_DIR@:$(BASE_DIR):g" - $(Q)touch $@ @$(call step_end,install-staging) + $(Q)touch $@ # Install to images dir $(BUILD_DIR)/%/.stamp_images_installed: @@ -229,8 +268,8 @@ $(BUILD_DIR)/%/.stamp_images_installed: @$(call MESSAGE,"Installing to images directory") +$($(PKG)_INSTALL_IMAGES_CMDS) $(foreach hook,$($(PKG)_POST_INSTALL_IMAGES_HOOKS),$(call $(hook))$(sep)) - $(Q)touch $@ @$(call step_end,install-image) + $(Q)touch $@ # Install to target dir $(BUILD_DIR)/%/.stamp_target_installed: @@ -246,8 +285,8 @@ $(BUILD_DIR)/%/.stamp_target_installed: $(Q)if test -n "$($(PKG)_CONFIG_SCRIPTS)" ; then \ $(RM) -f $(addprefix $(TARGET_DIR)/usr/bin/,$($(PKG)_CONFIG_SCRIPTS)) ; \ fi - $(Q)touch $@ @$(call step_end,install-target) + $(Q)touch $@ # Remove package sources $(BUILD_DIR)/%/.stamp_dircleaned: @@ -309,6 +348,14 @@ endef define inner-generic-package +# Ensure the package is only declared once, i.e. do not accept that a +# package be re-defined by a br2-external tree +ifneq ($(call strip,$(filter $(1),$(PACKAGES_ALL))),) +$$(error Package '$(1)' defined a second time in '$(pkgdir)'; \ + previous definition was in '$$($(2)_PKGDIR)') +endif +PACKAGES_ALL += $(1) + # Define default values for various package-related variables, if not # already defined. For some variables (version, source, site and # subdir), if they are undefined, we try to see if a variable without @@ -319,6 +366,7 @@ define inner-generic-package $(2)_TYPE = $(4) $(2)_NAME = $(1) $(2)_RAWNAME = $$(patsubst host-%,%,$(1)) +$(2)_PKGDIR = $(pkgdir) # Keep the package version that may contain forward slashes in the _DL_VERSION # variable, then replace all forward slashes ('/') by underscores ('_') to @@ -388,7 +436,7 @@ endif $(2)_ALL_DOWNLOADS = \ $$(foreach p,$$($(2)_SOURCE) $$($(2)_PATCH) $$($(2)_EXTRA_DOWNLOADS),\ $$(if $$(findstring ://,$$(p)),$$(p),\ - $$($(2)_SITE:/=)/$$(p))) + $$($(2)_SITE)/$$(p))) ifndef $(2)_SITE ifdef $(3)_SITE @@ -476,7 +524,10 @@ $(2)_TARGET_DIRCLEAN = $$($(2)_DIR)/.stamp_dircleaned # default extract command $(2)_EXTRACT_CMDS ?= \ $$(if $$($(2)_SOURCE),$$(INFLATE$$(suffix $$($(2)_SOURCE))) $$(DL_DIR)/$$($(2)_SOURCE) | \ - $$(TAR) --strip-components=$$($(2)_STRIP_COMPONENTS) -C $$($(2)_DIR) $$(TAR_OPTIONS) -) + $$(TAR) --strip-components=$$($(2)_STRIP_COMPONENTS) \ + -C $$($(2)_DIR) \ + $$(foreach x,$$($(2)_EXCLUDES),--exclude='$$(x)' ) \ + $$(TAR_OPTIONS) -) # pre/post-steps hooks $(2)_PRE_DOWNLOAD_HOOKS ?= @@ -617,9 +668,11 @@ $(1)-show-depends: $(1)-graph-depends: graph-depends-requirements @$$(INSTALL) -d $$(GRAPHS_DIR) @cd "$$(CONFIG_DIR)"; \ - $$(TOPDIR)/support/scripts/graph-depends -p $(1) $$(BR2_GRAPH_DEPS_OPTS) \ - |tee $$(GRAPHS_DIR)/$$(@).dot \ - |dot $$(BR2_GRAPH_DOT_OPTS) -T$$(BR_GRAPH_OUT) -o $$(GRAPHS_DIR)/$$(@).$$(BR_GRAPH_OUT) + $$(TOPDIR)/support/scripts/graph-depends $$(BR2_GRAPH_DEPS_OPTS) \ + -p $(1) -o $$(GRAPHS_DIR)/$$(@).dot + dot $$(BR2_GRAPH_DOT_OPTS) -T$$(BR_GRAPH_OUT) \ + -o $$(GRAPHS_DIR)/$$(@).$$(BR_GRAPH_OUT) \ + $$(GRAPHS_DIR)/$$(@).dot $(1)-all-source: $(1)-source $(1)-all-source: $$(foreach p,$$($(2)_FINAL_ALL_DEPENDENCIES),$$(p)-all-source) @@ -661,11 +714,11 @@ $(1)-reconfigure: $(1)-clean-for-reconfigure $(1) $$($(2)_TARGET_INSTALL_TARGET): PKG=$(2) $$($(2)_TARGET_INSTALL_STAGING): PKG=$(2) $$($(2)_TARGET_INSTALL_IMAGES): PKG=$(2) -$$($(2)_TARGET_INSTALL_HOST): PKG=$(2) +$$($(2)_TARGET_INSTALL_HOST): PKG=$(2) $$($(2)_TARGET_BUILD): PKG=$(2) $$($(2)_TARGET_CONFIGURE): PKG=$(2) -$$($(2)_TARGET_RSYNC): SRCDIR=$$($(2)_OVERRIDE_SRCDIR) -$$($(2)_TARGET_RSYNC): PKG=$(2) +$$($(2)_TARGET_RSYNC): SRCDIR=$$($(2)_OVERRIDE_SRCDIR) +$$($(2)_TARGET_RSYNC): PKG=$(2) $$($(2)_TARGET_PATCH): PKG=$(2) $$($(2)_TARGET_PATCH): RAWNAME=$$(patsubst host-%,%,$(1)) $$($(2)_TARGET_PATCH): PKGDIR=$(pkgdir) @@ -708,12 +761,18 @@ ifneq ($$($(2)_SITE_METHOD),local) ifneq ($$($(2)_SITE_METHOD),override) # Packages that have a tarball need it downloaded beforehand $(1)-legal-info: $(1)-source $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4))) -$(2)_MANIFEST_TARBALL = $$($(2)_SOURCE) -$(2)_MANIFEST_SITE = $$(call qstrip,$$($(2)_SITE)) endif endif endif +# If FOO_ACTUAL_SOURCE_TARBALL is explicitly defined, it means FOO_SOURCE is +# indeed a binary (e.g. external toolchain) and FOO_ACTUAL_SOURCE_TARBALL/_SITE +# point to the actual sources tarball. Use the actual sources for legal-info. +# For most packages the FOO_SITE/FOO_SOURCE pair points to real source code, +# so these are the defaults for FOO_ACTUAL_*. +$(2)_ACTUAL_SOURCE_TARBALL ?= $$($(2)_SOURCE) +$(2)_ACTUAL_SOURCE_SITE ?= $$(call qstrip,$$($(2)_SITE)) + # legal-info: produce legally relevant info. $(1)-legal-info: # Packages without a source are assumed to be part of Buildroot, skip them. @@ -744,13 +803,16 @@ else # Other packages ifeq ($$($(2)_REDISTRIBUTE),YES) +ifneq ($$($(2)_ACTUAL_SOURCE_TARBALL),$$($(2)_SOURCE)) + $$(call DOWNLOAD,$$($(2)_ACTUAL_SOURCE_SITE)/$$($(2)_ACTUAL_SOURCE_TARBALL)) +endif # Copy the source tarball (just hardlink if possible) - @cp -l $$(DL_DIR)/$$($(2)_SOURCE) $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4))) 2>/dev/null || \ - cp $$(DL_DIR)/$$($(2)_SOURCE) $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4))) + @cp -l $$(DL_DIR)/$$($(2)_ACTUAL_SOURCE_TARBALL) $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4))) 2>/dev/null || \ + cp $$(DL_DIR)/$$($(2)_ACTUAL_SOURCE_TARBALL) $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4))) endif # redistribute endif # other packages - @$$(call legal-manifest,$$($(2)_RAWNAME),$$($(2)_VERSION),$$($(2)_LICENSE),$$($(2)_MANIFEST_LICENSE_FILES),$$($(2)_MANIFEST_TARBALL),$$($(2)_MANIFEST_SITE),$$(call UPPERCASE,$(4))) + @$$(call legal-manifest,$$($(2)_RAWNAME),$$($(2)_VERSION),$$($(2)_LICENSE),$$($(2)_MANIFEST_LICENSE_FILES),$$($(2)_ACTUAL_SOURCE_TARBALL),$$($(2)_ACTUAL_SOURCE_SITE),$$(call UPPERCASE,$(4))) endif # ifneq ($$(call qstrip,$$($(2)_SOURCE)),) $$(foreach hook,$$($(2)_POST_LEGAL_INFO_HOOKS),$$(call $$(hook))$$(sep)) @@ -847,6 +909,10 @@ endif $(1)-source \ $(1)-source-check +ifeq ($$(patsubst %/,ERROR,$$($(2)_SITE)),ERROR) +$$(error $(2)_SITE ($$($(2)_SITE)) cannot have a trailing slash) +endif + endif # $(2)_KCONFIG_VAR endef # inner-generic-package diff --git a/package/pkg-kconfig.mk b/package/pkg-kconfig.mk index 1577922c54c..90f3f9faeb0 100644 --- a/package/pkg-kconfig.mk +++ b/package/pkg-kconfig.mk @@ -63,16 +63,25 @@ $$($(2)_KCONFIG_FILE) $$($(2)_KCONFIG_FRAGMENT_FILES): | $(1)-patch # full .config first. We use 'make oldconfig' because this can be safely # done even when the package does not support defconfigs. $$($(2)_DIR)/.config: $$($(2)_KCONFIG_FILE) $$($(2)_KCONFIG_FRAGMENT_FILES) + $$(if $$($(2)_KCONFIG_DEFCONFIG), \ + $$($(2)_MAKE_ENV) $$(MAKE) -C $$($(2)_DIR) \ + $$($(2)_KCONFIG_OPTS) $$($(2)_KCONFIG_DEFCONFIG), \ + cp $$($(2)_KCONFIG_FILE) $$(@)) support/kconfig/merge_config.sh -m -O $$(@D) \ - $$($(2)_KCONFIG_FILE) $$($(2)_KCONFIG_FRAGMENT_FILES) - $$(Q)yes "" | $$(MAKE) -C $$($(2)_DIR) \ + $$(@) $$($(2)_KCONFIG_FRAGMENT_FILES) + $$(Q)yes "" | $$($(2)_MAKE_ENV) $$(MAKE) -C $$($(2)_DIR) \ $$($(2)_KCONFIG_OPTS) oldconfig +# If _KCONFIG_FILE or _KCONFIG_FRAGMENT_FILES exists, this dependency is +# already implied, but if we only have a _KCONFIG_DEFCONFIG we have to add +# it explicitly. It doesn't hurt to always have it though. +$$($(2)_DIR)/.config: | $(1)-patch + # In order to get a usable, consistent configuration, some fixup may be needed. # The exact rules are specified by the package .mk file. define $(2)_FIXUP_DOT_CONFIG $$($(2)_KCONFIG_FIXUP_CMDS) - $$(Q)yes "" | $$(MAKE) -C $$($(2)_DIR) \ + $$(Q)yes "" | $$($(2)_MAKE_ENV) $$(MAKE) -C $$($(2)_DIR) \ $$($(2)_KCONFIG_OPTS) oldconfig $$(Q)touch $$($(2)_DIR)/.stamp_kconfig_fixup_done endef @@ -89,13 +98,27 @@ $$($(2)_TARGET_CONFIGURE): $$($(2)_DIR)/.stamp_kconfig_fixup_done # already called above, so we can effectively use this variable. ifeq ($$($$($(2)_KCONFIG_VAR)),y) -# FOO_KCONFIG_FILE is required ifeq ($$(BR_BUILDING),y) -ifeq ($$($(2)_KCONFIG_FILE),) -$$(error Internal error: no value specified for $(2)_KCONFIG_FILE) +# Either FOO_KCONFIG_FILE or FOO_KCONFIG_DEFCONFIG is required... +ifeq ($$(or $$($(2)_KCONFIG_FILE),$$($(2)_KCONFIG_DEFCONFIG)),) +$$(error Internal error: no value specified for $(2)_KCONFIG_FILE or $(2)_KCONFIG_DEFCONFIG) +endif +# ... but not both: +ifneq ($$(and $$($(2)_KCONFIG_FILE),$$($(2)_KCONFIG_DEFCONFIG)),) +$$(error Internal error: $(2)_KCONFIG_FILE and $(2)_KCONFIG_DEFCONFIG are mutually exclusive but both are defined) endif endif +# For the configurators, we do want to use the system-provided host +# tools, not the ones we build. This is particularly true for +# pkg-config; if we use our pkg-config (from host-pkgconf), then it +# would not look for the .pc from the host, but we do need them, +# especially to find ncurses, GTK+, Qt (resp. for menuconfig and +# nconfig, gconfig, xconfig). +# So we simply remove our PATH and PKG_CONFIG_* variables. +$(2)_CONFIGURATOR_MAKE_ENV = \ + $$(filter-out PATH=% PKG_CONFIG=% PKG_CONFIG_SYSROOT_DIR=% PKG_CONFIG_LIBDIR=%,$$($(2)_MAKE_ENV)) + # Configuration editors (menuconfig, ...) # # We need to apply the configuration fixups right after a configuration @@ -112,7 +135,7 @@ endif # $$(addprefix $(1)-,$$($(2)_KCONFIG_EDITORS)): $(1)-%: $$($(2)_DIR)/.kconfig_editor_% $$($(2)_DIR)/.kconfig_editor_%: $$($(2)_DIR)/.stamp_kconfig_fixup_done - $$(MAKE) -C $$($(2)_DIR) \ + $$($(2)_CONFIGURATOR_MAKE_ENV) $$(MAKE) -C $$($(2)_DIR) \ $$($(2)_KCONFIG_OPTS) $$(*) rm -f $$($(2)_DIR)/.stamp_{kconfig_fixup_done,configured,built} rm -f $$($(2)_DIR)/.stamp_{target,staging,images}_installed @@ -141,7 +164,7 @@ $(1)-check-configuration-done: fi $(1)-savedefconfig: $(1)-check-configuration-done - $$(MAKE) -C $$($(2)_DIR) \ + $$($(2)_MAKE_ENV) $$(MAKE) -C $$($(2)_DIR) \ $$($(2)_KCONFIG_OPTS) savedefconfig # Target to copy back the configuration to the source configuration file @@ -150,6 +173,8 @@ $(1)-savedefconfig: $(1)-check-configuration-done $(1)-update-config: $(1)-check-configuration-done @$$(if $$($(2)_KCONFIG_FRAGMENT_FILES), \ echo "Unable to perform $(1)-update-config when fragment files are set"; exit 1) + @$$(if $$($(2)_KCONFIG_DEFCONFIG), \ + echo "Unable to perform $(1)-update-config when using a defconfig rule"; exit 1) cp -f $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE) touch --reference $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE) @@ -160,6 +185,8 @@ $(1)-update-config: $(1)-check-configuration-done $(1)-update-defconfig: $(1)-savedefconfig @$$(if $$($(2)_KCONFIG_FRAGMENT_FILES), \ echo "Unable to perform $(1)-update-defconfig when fragment files are set"; exit 1) + @$$(if $$($(2)_KCONFIG_DEFCONFIG), \ + echo "Unable to perform $(1)-update-defconfig when using a defconfig rule"; exit 1) cp -f $$($(2)_DIR)/defconfig $$($(2)_KCONFIG_FILE) touch --reference $$($(2)_DIR)/.config $$($(2)_KCONFIG_FILE) diff --git a/package/pkg-kernel-module.mk b/package/pkg-kernel-module.mk index 5fb19be8080..200c91dfef0 100644 --- a/package/pkg-kernel-module.mk +++ b/package/pkg-kernel-module.mk @@ -44,6 +44,11 @@ define inner-kernel-module +# If the package is enabled, ensure the kernel will support modules +ifeq ($$(BR2_PACKAGE_$(2)),y) +LINUX_NEEDS_MODULES = y +endif + # The kernel must be built first. $(2)_DEPENDENCIES += linux diff --git a/package/pkg-perl.mk b/package/pkg-perl.mk index 6577588db88..a0278101565 100644 --- a/package/pkg-perl.mk +++ b/package/pkg-perl.mk @@ -39,7 +39,15 @@ PERL_RUN = PERL5LIB= $(HOST_DIR)/usr/bin/perl define inner-perl-package +# Target packages need both the perl interpreter on the target (for +# runtime) and the perl interpreter on the host (for +# compilation). However, host packages only need the perl +# interpreter on the host. +ifeq ($(4),target) +$(2)_DEPENDENCIES += host-perl perl +else $(2)_DEPENDENCIES += host-perl +endif # # Configure step. Only define it if not already defined by the package @@ -132,6 +140,7 @@ define $(2)_BUILD_CMDS else \ $$(MAKE1) \ PERL_INC=$$(STAGING_DIR)/usr/lib/perl5/$$(PERL_VERSION)/$$(PERL_ARCHNAME)/CORE \ + FIXIN=: \ $$($(2)_BUILD_OPTS) pure_all; \ fi endef diff --git a/package/pkg-utils.mk b/package/pkg-utils.mk index 44bd2c93055..f88313ab536 100644 --- a/package/pkg-utils.mk +++ b/package/pkg-utils.mk @@ -84,8 +84,8 @@ suitable-extractor = $(INFLATE$(suffix $(1))) # MESSAGE Macro -- display a message in bold type MESSAGE = echo "$(TERM_BOLD)>>> $($(PKG)_NAME) $($(PKG)_VERSION) $(call qstrip,$(1))$(TERM_RESET)" -TERM_BOLD := $(shell tput smso) -TERM_RESET := $(shell tput rmso) +TERM_BOLD := $(shell tput smso 2>/dev/null) +TERM_RESET := $(shell tput rmso 2>/dev/null) # Utility functions for 'find' # findfileclauses(filelist) => -name 'X' -o -name 'Y' diff --git a/package/pkg-virtual.mk b/package/pkg-virtual.mk index 9c68b511c4f..244c1d04203 100644 --- a/package/pkg-virtual.mk +++ b/package/pkg-virtual.mk @@ -41,6 +41,8 @@ $$(error No implementation selected for virtual package $(1). Configuration erro endif endif +$(2)_IS_VIRTUAL = YES + # A virtual package does not have any source associated $(2)_SOURCE = diff --git a/package/pkgconf/0001-Fix-all-variables-sysroot-prefix-problem.patch b/package/pkgconf/0001-Fix-all-variables-sysroot-prefix-problem.patch new file mode 100644 index 00000000000..bac9f6208bf --- /dev/null +++ b/package/pkgconf/0001-Fix-all-variables-sysroot-prefix-problem.patch @@ -0,0 +1,58 @@ +From abc7a780f2a52a1aa3ee288e17140b817b545cc3 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Mon, 2 Nov 2015 18:38:00 -0300 +Subject: [PATCH] Fix all-variables sysroot prefix problem + +According to the pkg-config specifications (or rather documentation) +only the -L/-I directory entries should be sysroot-prefixed. + +We also need to prefix the mapdir/sdkdir variables since they're used by +xorg and expected that way. + +Also allow prefixing for includedir and libdir since in some silly cases +the directories may be requested barebones via pkg-config +--variable=includedir libfool for example. + +Signed-off-by: Gustavo Zacarias +--- + main.c | 17 ++++++++++++----- + 1 file changed, 12 insertions(+), 5 deletions(-) + +diff --git a/main.c b/main.c +index 6947126..52d16c2 100644 +--- a/main.c ++++ b/main.c +@@ -313,9 +313,12 @@ print_variable(pkg_t *pkg, void *data, unsigned int flags) + memset(req->buf, 0, sizeof(req->buf)); + + if (*var == '/' && (flags & PKGF_MUNGE_SYSROOT_PREFIX) && +- (sysroot_dir != NULL && strncmp(var, sysroot_dir, strlen(sysroot_dir)))) +- strlcat(req->buf, sysroot_dir, sizeof(req->buf)); +- ++ (sysroot_dir != NULL && strncmp(var, sysroot_dir, strlen(sysroot_dir))) && ++ (!strcmp(req->variable, "includedir") || \ ++ !strcmp(req->variable, "libdir") || \ ++ !strcmp(req->variable, "mapdir") || \ ++ !strcmp(req->variable, "sdkdir"))) ++ strlcat(req->buf, sysroot_dir, sizeof(req->buf)); + strlcat(req->buf, var, sizeof(req->buf)); + return; + } +@@ -323,8 +326,12 @@ print_variable(pkg_t *pkg, void *data, unsigned int flags) + strlcat(req->buf, " ", sizeof(req->buf)); + + if (*var == '/' && (flags & PKGF_MUNGE_SYSROOT_PREFIX) && +- (sysroot_dir != NULL && strncmp(var, sysroot_dir, strlen(sysroot_dir)))) +- strlcat(req->buf, sysroot_dir, sizeof(req->buf)); ++ (sysroot_dir != NULL && strncmp(var, sysroot_dir, strlen(sysroot_dir))) && ++ (!strcmp(req->variable, "includedir") || \ ++ !strcmp(req->variable, "libdir") || \ ++ !strcmp(req->variable, "mapdir") || \ ++ !strcmp(req->variable, "sdkdir"))) ++ strlcat(req->buf, sysroot_dir, sizeof(req->buf)); + + strlcat(req->buf, var, sizeof(req->buf)); + } +-- +2.4.10 + diff --git a/package/pkgconf/0001-fix-variable.patch b/package/pkgconf/0001-fix-variable.patch deleted file mode 100644 index 4c213d6ee80..00000000000 --- a/package/pkgconf/0001-fix-variable.patch +++ /dev/null @@ -1,29 +0,0 @@ -[PATCH] prefix sysroot to include/libdir path variables - -Prefix includedir / libdir variable values with sysroot if a variable is -requested (--variable=), similar to how it's done for -I / -L flags. - -This is sometimes used to find header files (E.G. in gst-plugins configure), -so ensure the sysroot'ed files are used. - -Signed-off-by: Gustavo Zacarias -Signed-off-by: Bernd Kuhls - -diff -Nura pkgconf-0.8.9.orig/main.c pkgconf-0.8.9/main.c ---- pkgconf-0.8.9.orig/main.c 2012-10-24 14:32:08.236508699 -0300 -+++ pkgconf-0.8.9/main.c 2012-10-24 14:54:36.771070217 -0300 -@@ -298,7 +298,13 @@ - if (eflag != PKG_ERRF_OK) - return false; - -- printf("%s\n", req.buf); -+ if ( !strcmp(req.variable, "includedir") || -+ !strcmp(req.variable, "mapdir") || -+ !strcmp(req.variable, "sdkdir") || -+ !strcmp(req.variable, "libdir")) -+ printf("%s%s\n", sysroot_dir, req.buf); -+ else -+ printf("%s\n", req.buf); - return true; - } - diff --git a/package/pkgconf/0002-fix-double-sysroot.patch b/package/pkgconf/0002-fix-double-sysroot.patch deleted file mode 100644 index 14bc34a6722..00000000000 --- a/package/pkgconf/0002-fix-double-sysroot.patch +++ /dev/null @@ -1,40 +0,0 @@ -pkgconf: don't double prefix lib/include paths with sysroot - -A .pc file could contain statements of the form: - -L/usr/lib -but also: - -L/path/to/sysroot/usr/lib - -The latter form typically occurs when the dependency was configured with a -statement like --with-xxx=$(STAGING_DIR)/usr. - -pkgconf only expects the first form, and prefixes it with the specified -sysroot. However, this strategy would result in a double sysroot in the -second case: - -L/path/to/sysroot/path/to/sysroot/usr/lib - -This patch checks for the presence of the sysroot in the specified -L or -I -directives, and only adds the sysroot when not already present. - -Upstream-status: will be submitted - -Signed-off-by: Thomas De Schampheleire - ---- - main.c | 3 ++- - 1 files changed, 2 insertions(+), 1 deletions(-) - - -diff -r 16865d81819f -r 9d8e1737687f main.c ---- a/main.c Mon Jun 16 19:47:52 2014 +0200 -+++ b/main.c Mon Jun 16 19:48:15 2014 +0200 -@@ -82,7 +82,8 @@ - { - case 'L': - case 'I': -- return sysroot_dir; -+ if (strncmp(sysroot_dir, frag->data, strlen(sysroot_dir)) != 0) -+ return sysroot_dir; - default: - break; - } diff --git a/package/pkgconf/pkgconf.hash b/package/pkgconf/pkgconf.hash index 97060bdfa36..79191bc94e1 100644 --- a/package/pkgconf/pkgconf.hash +++ b/package/pkgconf/pkgconf.hash @@ -1,2 +1,2 @@ -# Locally computed: -sha256 3bbb1c40832b522de0bf0e5bdeba62160ac499a541facedac5755929a9e87027 pkgconf-0.8.9.tar.bz2 +# Locally calculated +sha256 7ec8b516e655e247f4ba976837cee808134785819ab8f538f652fe919cc6c09f pkgconf-0.9.12.tar.bz2 diff --git a/package/pkgconf/pkgconf.mk b/package/pkgconf/pkgconf.mk index 3c93fd5fc4a..c8b0cbaf51d 100644 --- a/package/pkgconf/pkgconf.mk +++ b/package/pkgconf/pkgconf.mk @@ -4,8 +4,8 @@ # ################################################################################ -PKGCONF_VERSION = 0.8.9 -PKGCONF_SITE = http://rabbit.dereferenced.org/~nenolod/distfiles +PKGCONF_VERSION = 0.9.12 +PKGCONF_SITE = https://github.com/pkgconf/pkgconf/releases/download/pkgconf-$(PKGCONF_VERSION) PKGCONF_SOURCE = pkgconf-$(PKGCONF_VERSION).tar.bz2 PKGCONF_LICENSE = pkgconf license PKGCONF_LICENSE_FILES = COPYING diff --git a/package/poco/0001-aarch64.patch b/package/poco/0001-aarch64.patch deleted file mode 100644 index f629f7ba925..00000000000 --- a/package/poco/0001-aarch64.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 37899eda9563d9134cb5864751b6432cabfaac3e Mon Sep 17 00:00:00 2001 -From: Will Newton -Date: Tue, 21 May 2013 22:11:05 +0100 -Subject: [PATCH] Foundation/include/Poco/Platform.h: Add support for AArch64. - -Add support for big and little endian AArch64 preprocessor defines. ---- - Foundation/include/Poco/Platform.h | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/Foundation/include/Poco/Platform.h b/Foundation/include/Poco/Platform.h -index f34f277..8ddb4cb 100644 ---- a/Foundation/include/Poco/Platform.h -+++ b/Foundation/include/Poco/Platform.h -@@ -145,6 +145,7 @@ - #define POCO_ARCH_S390 0x0c - #define POCO_ARCH_SH 0x0d - #define POCO_ARCH_NIOS2 0x0e -+#define POCO_ARCH_AARCH64 0x0f - - - #if defined(__ALPHA) || defined(__alpha) || defined(__alpha__) || defined(_M_ALPHA) -@@ -207,7 +208,12 @@ - #else - #define POCO_ARCH_BIG_ENDIAN 1 - #endif -- -+#elif defined(__AARCH64EL__) -+ #define POCO_ARCH POCO_ARCH_AARCH64 -+ #define POCO_ARCH_LITTLE_ENDIAN 1 -+#elif defined(__AARCH64EB__) -+ #define POCO_ARCH POCO_ARCH_AARCH64 -+ #define POCO_ARCH_BIG_ENDIAN 1 - #endif - - --- -1.8.1.4 - diff --git a/package/poco/0001-poco-add-the-staging-path-to-search-path.patch b/package/poco/0001-poco-add-the-staging-path-to-search-path.patch new file mode 100644 index 00000000000..5695b626186 --- /dev/null +++ b/package/poco/0001-poco-add-the-staging-path-to-search-path.patch @@ -0,0 +1,38 @@ +From b8417607ec8840e6a1e27cf03b6958c794a33e49 Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Tue, 4 Aug 2015 10:14:00 +0200 +Subject: [PATCH 1/2] poco: add the staging path to search path +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Add the mysql headers and client libraries to the search path of the +preprocessor and the linker. The $MYSQL_LIBDIR / $MYSQL_INCIDR variables +must be set from the make command line. + +[Peter: Remove host dirs, add MYSQL_INCDIR] +Signed-off-by: Baruch Siach +[Jörg: Update to version 1.6.1 from github] +Signed-off-by: Jörg Krause +--- + Data/MySQL/Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Data/MySQL/Makefile b/Data/MySQL/Makefile +index 0b18ca5..094e807 100644 +--- a/Data/MySQL/Makefile ++++ b/Data/MySQL/Makefile +@@ -8,8 +8,8 @@ + + include $(POCO_BASE)/build/rules/global + +-SYSLIBS += -L/usr/local/lib$(LIB64SUFFIX)/mysql -L/usr/lib$(LIB64SUFFIX)/mysql -L/usr/mysql/lib$(LIB64SUFFIX) -L/usr/mysql/lib$(LIB64SUFFIX)/mysql -L/usr/local/mysql/lib$(LIB64SUFFIX) -lmysqlclient +-INCLUDE += -I/usr/local/include/mysql/ -I/usr/include/mysql/ -I/usr/mysql/include/mysql -I/usr/local/mysql/include ++SYSLIBS += -L$(MYSQL_LIBDIR) -lmysqlclient ++INCLUDE += -I$(MYSQL_INCDIR) + SYSFLAGS += -DTHREADSAFE -DNO_TCL + + objects = Binder Extractor SessionImpl Connector \ +-- +2.5.0 + diff --git a/package/poco/0002-add-cross-build-config.patch b/package/poco/0002-add-cross-build-config.patch deleted file mode 100644 index a08783833bb..00000000000 --- a/package/poco/0002-add-cross-build-config.patch +++ /dev/null @@ -1,82 +0,0 @@ -From: Baruch Siach -Subject: [PATCH] poco: add Linux configuration file for generic cross build - -This patch adds the Linux-CrossEnv config file to poco. This file is identical -to the Linux one, except the added CROSSENV variable that allows setting of -the toolchain prefix. - -Signed-off-by: Baruch Siach ---- -diff -Nuar poco-1.4.1p1-dist/build/config/Linux-CrossEnv poco-1.4.1p1/build/config/Linux-CrossEnv ---- poco-1.4.1p1-dist/build/config/Linux-CrossEnv 1970-01-01 02:00:00.000000000 +0200 -+++ poco-1.4.1p1/build/config/Linux-CrossEnv 2011-08-02 18:51:03.682047719 +0300 -@@ -0,0 +1,69 @@ -+# -+# Linux -+# -+# Make settings for cross compiled Linux -+# -+# -+ -+# -+# General Settings -+# -+LINKMODE ?= SHARED -+ -+# -+# Define Tools -+# -+CC = $(CROSSENV)gcc -+CXX = $(CROSSENV)g++ -+LINK = $(CXX) -+LIB = $(CROSSENV)ar -cr -+RANLIB = $(CROSSENV)ranlib -+SHLIB = $(CXX) -shared -Wl,-soname,$(notdir $@) -o $@ -+SHLIBLN = $(POCO_BASE)/build/script/shlibln -+STRIP = $(CROSSENV)strip -+DEP = $(POCO_BASE)/build/script/makedepend.gcc -+SHELL = sh -+RM = rm -rf -+CP = cp -+MKDIR = mkdir -p -+ -+# -+# Extension for Shared Libraries -+# -+SHAREDLIBEXT = .so.$(target_version) -+SHAREDLIBLINKEXT = .so -+ -+# -+# Compiler and Linker Flags -+# -+CFLAGS = -+CFLAGS32 = -+CFLAGS64 = -+CXXFLAGS = -Wall -Wno-sign-compare -+CXXFLAGS32 = -+CXXFLAGS64 = -+LINKFLAGS = -+LINKFLAGS32 = -+LINKFLAGS64 = -+STATICOPT_CC = -+STATICOPT_CXX = -+STATICOPT_LINK = -static -+SHAREDOPT_CC = -fPIC -+SHAREDOPT_CXX = -fPIC -+SHAREDOPT_LINK = -Wl,-rpath,$(LIBPATH) -+DEBUGOPT_CC = -g -D_DEBUG -+DEBUGOPT_CXX = -g -D_DEBUG -+DEBUGOPT_LINK = -g -+RELEASEOPT_CC = -O2 -DNDEBUG -+RELEASEOPT_CXX = -O2 -DNDEBUG -+RELEASEOPT_LINK = -O2 -+ -+# -+# System Specific Flags -+# -+SYSFLAGS = -D_XOPEN_SOURCE=500 -D_REENTRANT -D_THREAD_SAFE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DPOCO_HAVE_FD_EPOLL -+ -+# -+# System Specific Libraries -+# -+SYSLIBS = -lpthread -ldl -lrt diff --git a/package/poco/0002-poco-don-t-build-debug-libraries.patch b/package/poco/0002-poco-don-t-build-debug-libraries.patch new file mode 100644 index 00000000000..11bb7e9d1a7 --- /dev/null +++ b/package/poco/0002-poco-don-t-build-debug-libraries.patch @@ -0,0 +1,33 @@ +From e84c85cfa6742becbd4f82047ce92290bb3ec19a Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Tue, 4 Aug 2015 10:15:17 +0200 +Subject: [PATCH 2/2] poco: don't build debug libraries +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Remove the debug libraries build dependency from the default target. + +Signed-off-by: Baruch Siach +[Jörg: Update to version 1.6.1 from github] +Signed-off-by: Jörg Krause +--- + build/rules/compile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/build/rules/compile b/build/rules/compile +index 1945e3c..e0d7fbc 100644 +--- a/build/rules/compile ++++ b/build/rules/compile +@@ -14,7 +14,7 @@ + + all: $(DEFAULT_TARGET) + all_static: static_debug static_release +-all_shared: shared_debug shared_release ++all_shared: shared_release + all_debug: static_debug shared_debug + all_release: static_release shared_release + +-- +2.5.0 + diff --git a/package/poco/0003-Fix-conflicting-declaration-with-unbundled-pcre.patch b/package/poco/0003-Fix-conflicting-declaration-with-unbundled-pcre.patch new file mode 100644 index 00000000000..669e53ac68a --- /dev/null +++ b/package/poco/0003-Fix-conflicting-declaration-with-unbundled-pcre.patch @@ -0,0 +1,56 @@ +From 4e1165e1081e75de842567b16ae963cbed54e2a3 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Tue, 4 Aug 2015 11:09:12 +0200 +Subject: [PATCH 3/3] Fix conflicting declaration with unbundled pcre +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Building poco 1.6.1 with the `--unbundled` config options fails due to an +conflicting declaration of `pcre`: + +```sh +In file included from src/RegularExpression.cpp:21:0: +/usr/include/pcre.h:325:26: error: conflicting declaration ‘typedef struct real_pcre pcre’ + typedef struct real_pcre pcre; + ^ +In file included from src/RegularExpression.cpp:17:0: +include/Poco/RegularExpression.h:37:34: note: previous declaration as ‘typedef struct real_pcre8_or_16 pcre’ + typedef struct real_pcre8_or_16 pcre; +``` + +Upstream status: +https://github.com/pocoproject/poco/pull/897 + +Signed-off-by: Jörg Krause +--- + Foundation/include/Poco/RegularExpression.h | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/Foundation/include/Poco/RegularExpression.h b/Foundation/include/Poco/RegularExpression.h +index e1bc063..989ed52 100644 +--- a/Foundation/include/Poco/RegularExpression.h ++++ b/Foundation/include/Poco/RegularExpression.h +@@ -26,7 +26,9 @@ + #include "Poco/Foundation.h" + #include + +- ++#if defined(POCO_UNBUNDLED) ++#include ++#else + // + // Copy these definitions from pcre.h + // to avoid pulling in the entire header file +@@ -37,7 +39,7 @@ extern "C" + typedef struct real_pcre8_or_16 pcre; + struct pcre_extra; + } +- ++#endif + + namespace Poco { + +-- +2.5.0 + diff --git a/package/poco/0003-add-staging-search-path.patch b/package/poco/0003-add-staging-search-path.patch deleted file mode 100644 index a9397b4f1c1..00000000000 --- a/package/poco/0003-add-staging-search-path.patch +++ /dev/null @@ -1,23 +0,0 @@ -From: Baruch Siach -Subject: [PATCH] poco: add the staging path to search path - -Add the mysql headers and client libraries to the search path of the -preprocessor and the linker. The $MYSQL_LIBDIR / $MYSQL_INCIDR variables -must be set from the make command line. - -[Peter: Remove host dirs, add MYSQL_INCDIR] -Signed-off-by: Baruch Siach ---- ---- poco-1.4.4-all-dist/Data/MySQL/Makefile 2012-09-20 01:30:42.000000000 +0300 -+++ poco-1.4.4-all/Data/MySQL/Makefile 2012-10-11 14:36:10.343153420 +0200 -@@ -8,8 +8,8 @@ - - include $(POCO_BASE)/build/rules/global - --SYSLIBS += -L/usr/local/lib$(LIB64SUFFIX)/mysql -L/usr/lib$(LIB64SUFFIX)/mysql -L/usr/mysql/lib$(LIB64SUFFIX)/mysql -L/usr/local/mysql/lib$(LIB64SUFFIX) -lmysqlclient --INCLUDE += -I/usr/local/include/mysql/ -I/usr/include/mysql -I/usr/mysql/include/mysql -I/usr/local/mysql/include -+SYSLIBS += -L$(MYSQL_LIBDIR) -lmysqlclient -+INCLUDE += -I$(MYSQL_INCDIR) - SYSFLAGS += -DTHREADSAFE -DNO_TCL - - objects = Binder Extractor SessionImpl Connector \ diff --git a/package/poco/0004-dont-build-debug-libs.patch b/package/poco/0004-dont-build-debug-libs.patch deleted file mode 100644 index 7480963721c..00000000000 --- a/package/poco/0004-dont-build-debug-libs.patch +++ /dev/null @@ -1,19 +0,0 @@ -From: Baruch Siach -Subject: [PATCH] poco: don't build debug libraries - -Remove the debug libraries build dependency from the default target. - -Signed-off-by: Baruch Siach ---- - ---- poco-1.4.1p1-dist/build/rules/compile 2011-02-09 11:12:24.000000000 +0200 -+++ poco-1.4.1p1/build/rules/compile 2011-08-03 07:51:42.946044176 +0300 -@@ -14,7 +14,7 @@ - - all: $(DEFAULT_TARGET) - all_static: static_debug static_release --all_shared: shared_debug shared_release -+all_shared: shared_release - all_debug: static_debug shared_debug - all_release: static_release shared_release - diff --git a/package/poco/0004-fix-unbundled-pcre-usage.patch b/package/poco/0004-fix-unbundled-pcre-usage.patch new file mode 100644 index 00000000000..4c6c8b4369f --- /dev/null +++ b/package/poco/0004-fix-unbundled-pcre-usage.patch @@ -0,0 +1,72 @@ +From 75636a750ecd93305eabe226ad95d2a58e65117f Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Tue, 3 Nov 2015 16:33:33 +0100 +Subject: [PATCH] Fix build with unbundled pcre + +Poco supports two modes for the pcre library: bundled (the default) +and unbundled. In bundled mode, an internal copy of the pcre library +is used by Poco. Since this isn't really nice, Buildroot uses the +"unbundled" mode. However, Poco pokes into some internal symbols of +pcre, which doesn't play well with unbundled. + +To solve this, this commit is an adaptation of the Gentoo patch at +https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/poco/files/poco-1.4.4-patch-for-libpcre-8.32.patch?revision=1.1 +to make such symbols available internally in Poco, by using parts of +the bundled Pcre copy. + +Signed-off-by: Thomas Petazzoni +--- + Foundation/Makefile | 1 + + Foundation/src/pcre_internal.h | 17 +++++++++++++++++ + 2 files changed, 18 insertions(+) + +diff --git a/Foundation/Makefile b/Foundation/Makefile +index a347daa..9231c51 100644 +--- a/Foundation/Makefile ++++ b/Foundation/Makefile +@@ -46,6 +46,7 @@ pcre_utf8_objects = pcre_ucd pcre_tables + + ifdef POCO_UNBUNDLED + SYSLIBS += -lpcre -lz ++ objects += $(pcre_utf8_objects) + else + objects += $(zlib_objects) $(pcre_objects) $(pcre_utf8_objects) + endif +diff --git a/Foundation/src/pcre_internal.h b/Foundation/src/pcre_internal.h +index f3e69fc..c6f1d44 100644 +--- a/Foundation/src/pcre_internal.h ++++ b/Foundation/src/pcre_internal.h +@@ -2636,6 +2636,17 @@ typedef struct { + } ucp_type_table; + + ++/* renamed to avoid clashes with system pcre */ ++#define _pcre_utf8_table1 _poco__pcre_utf8_table1 ++#define _pcre_utf8_table1_size _poco__pcre_utf8_table1_size ++#define _pcre_utf8_table2 _poco__pcre_utf8_table2 ++#define _pcre_utf8_table3 _poco__pcre_utf8_table3 ++#define _pcre_utf8_table4 _poco__pcre_utf8_table4 ++#define _pcre_utt _poco__pcre_utt ++#define _pcre_utt_size _poco__pcre_utt_size ++#define _pcre_utt_names _poco__pcre_utt_names ++#define _pcre_OP_lengths _poco__pcre_OP_lengths ++ + /* Internal shared data tables. These are tables that are used by more than one + of the exported public functions. They have to be "external" in the C sense, + but are not part of the PCRE public API. The data for these tables is in the +@@ -2749,6 +2760,12 @@ typedef struct { + pcre_int32 other_case; /* offset to other case, or zero if none */ + } ucd_record; + ++/* renamed to avoid clashes with system pcre */ ++#define _pcre_ucd_records _poco__pcre_ucd_records ++#define _pcre_ucd_stage1 _poco__pcre_ucd_stage1 ++#define _pcre_ucd_stage2 _poco__pcre_ucd_stage2 ++#define _pcre_ucp_gentype _poco__pcre_ucp_gentype ++ + extern const pcre_uint32 PRIV(ucd_caseless_sets)[]; + extern const ucd_record PRIV(ucd_records)[]; + extern const pcre_uint8 PRIV(ucd_stage1)[]; +-- +2.6.2 + diff --git a/package/poco/0005-add-missing-LIBPREFIX-definition.patch b/package/poco/0005-add-missing-LIBPREFIX-definition.patch new file mode 100644 index 00000000000..bfdfad7d211 --- /dev/null +++ b/package/poco/0005-add-missing-LIBPREFIX-definition.patch @@ -0,0 +1,29 @@ +From c2a49cbc635d8dc894763624c061be5ae8a1a01c Mon Sep 17 00:00:00 2001 +From: Guenter Obiltschnig +Date: Mon, 30 Mar 2015 16:21:01 +0200 +Subject: [PATCH] add missing LIBPREFIX definition + +Backport from upstream commit c2a49cbc635d8dc894763624c061be5ae8a1a01c +to ensure libraries are properly installed. + +Signed-off-by: Thomas Petazzoni +--- + Makefile | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Makefile b/Makefile +index 49318a3..7ee99d8 100644 +--- a/Makefile ++++ b/Makefile +@@ -20,6 +20,8 @@ ifndef POCO_BUILD + export POCO_BUILD=$(POCO_BASE) + endif + ++LIBPREFIX ?= lib ++ + .PHONY: poco all libexecs cppunit tests samples cleans clean distclean install + + # TESTS and SAMPLES are set in config.make +-- +2.6.2 + diff --git a/package/poco/Config.in b/package/poco/Config.in index 155f098a309..dfdc8d17c39 100644 --- a/package/poco/Config.in +++ b/package/poco/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_POCO depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS # dlopen() depends on !(BR2_arc || BR2_bfin || BR2_microblaze || BR2_mipsel \ || BR2_xtensa) select BR2_PACKAGE_ZLIB @@ -60,8 +61,8 @@ config BR2_PACKAGE_POCO_DATA_MYSQL endif # BR2_PACKAGE_POCO -comment "poco needs a toolchain w/ wchar, threads, C++" +comment "poco needs a toolchain w/ wchar, threads, C++, dynamic library" depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \ - || !BR2_TOOLCHAIN_HAS_THREADS + || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS depends on !(BR2_arc || BR2_bfin || BR2_microblaze || BR2_mipsel \ || BR2_xtensa) diff --git a/package/poco/poco.hash b/package/poco/poco.hash deleted file mode 100644 index 957293d5b00..00000000000 --- a/package/poco/poco.hash +++ /dev/null @@ -1,2 +0,0 @@ -# Locally computed: -sha256 6791c35e790b055ae9c55abe0bccc453e9616f0183d85a1eeea69ad084e994fe poco-1.4.6p1-all.tar.gz diff --git a/package/poco/poco.mk b/package/poco/poco.mk index 7233d43d180..580ee9e2107 100644 --- a/package/poco/poco.mk +++ b/package/poco/poco.mk @@ -4,10 +4,8 @@ # ################################################################################ -POCO_VERSION_MAJOR = 1.4.6 -POCO_VERSION = $(POCO_VERSION_MAJOR)p1 -POCO_SOURCE = poco-$(POCO_VERSION)-all.tar.gz -POCO_SITE = http://downloads.sourceforge.net/project/poco/sources/poco-$(POCO_VERSION_MAJOR) +POCO_VERSION = poco-1.6.1-release +POCO_SITE = $(call github,pocoproject,poco,$(POCO_VERSION)) POCO_LICENSE = Boost-v1.0 POCO_LICENSE_FILES = LICENSE POCO_INSTALL_STAGING = YES @@ -41,7 +39,7 @@ endif define POCO_CONFIGURE_CMDS (cd $(@D); ./configure \ - --config=Linux-CrossEnv \ + --config=Linux \ --prefix=/usr \ --omit="$(POCO_OMIT)" \ $(POCO_CONF_OPTS) \ @@ -51,7 +49,7 @@ define POCO_CONFIGURE_CMDS endef define POCO_BUILD_CMDS - $(MAKE1) POCO_TARGET_OSARCH=$(ARCH) CROSSENV=$(TARGET_CROSS) \ + $(MAKE1) POCO_TARGET_OSARCH=$(ARCH) CROSS_COMPILE=$(TARGET_CROSS) \ MYSQL_LIBDIR=$(STAGING_DIR)/usr/lib/mysql \ MYSQL_INCDIR=$(STAGING_DIR)/usr/include/mysql -C $(@D) endef diff --git a/package/polarssl/polarssl.hash b/package/polarssl/polarssl.hash index e7883fdd371..3f1871c8f49 100644 --- a/package/polarssl/polarssl.hash +++ b/package/polarssl/polarssl.hash @@ -1,2 +1,2 @@ -# From https://polarssl.org/tech-updates/releases/polarssl-1.2.14-released -sha256 d7cbd8314aa3a5441f6282d13d07df610f49b4bc678088b04188adf093d17d37 polarssl-1.2.14-gpl.tgz +# From https://tls.mbed.org/tech-updates/releases/mbedtls-2.2.1-2.1.4-1.3.16-and-polarssl.1.2.19-released +sha256 24cb1608a160101ead3c7240f35fc447fe7880cd60f7ed6c9db7a1d773ccd4b8 polarssl-1.2.19-gpl.tgz diff --git a/package/polarssl/polarssl.mk b/package/polarssl/polarssl.mk index 289a28d991c..9199f28a07b 100644 --- a/package/polarssl/polarssl.mk +++ b/package/polarssl/polarssl.mk @@ -5,7 +5,7 @@ ################################################################################ POLARSSL_SITE = https://tls.mbed.org/code/releases -POLARSSL_VERSION = 1.2.14 +POLARSSL_VERSION = 1.2.19 POLARSSL_SOURCE = polarssl-$(POLARSSL_VERSION)-gpl.tgz POLARSSL_CONF_OPTS = \ -DENABLE_PROGRAMS=$(if $(BR2_PACKAGE_POLARSSL_PROGRAMS),ON,OFF) @@ -20,10 +20,13 @@ endef # ARM in thumb mode breaks debugging with asm optimizations # Microblaze asm optimizations are broken in general +# MIPS R6 asm is not yet supported ifeq ($(BR2_ENABLE_DEBUG)$(BR2_ARM_INSTRUCTIONS_THUMB)$(BR2_ARM_INSTRUCTIONS_THUMB2),yy) POLARSSL_POST_CONFIGURE_HOOKS += POLARSSL_DISABLE_ASM else ifeq ($(BR2_microblaze),y) POLARSSL_POST_CONFIGURE_HOOKS += POLARSSL_DISABLE_ASM +else ifeq ($(BR2_mips_32r6)$(BR2_mips_64r6),y) +POLARSSL_POST_CONFIGURE_HOOKS += POLARSSL_DISABLE_ASM endif $(eval $(cmake-package)) diff --git a/package/popt/popt.hash b/package/popt/popt.hash index 4d93e47f9d2..875bbae7a3f 100644 --- a/package/popt/popt.hash +++ b/package/popt/popt.hash @@ -1,2 +1,2 @@ -# Locally calculated based on http://anduin.linuxfromscratch.org/sources/BLFS/svn/p/popt-1.16.tar.gz.md5sum +# Locally calculated: sha256 e728ed296fe9f069a0e005003c3d6b2dde3d9cad453422a10d6558616d304cc8 popt-1.16.tar.gz diff --git a/package/popt/popt.mk b/package/popt/popt.mk index 605649b8783..863a47a658a 100644 --- a/package/popt/popt.mk +++ b/package/popt/popt.mk @@ -5,8 +5,7 @@ ################################################################################ POPT_VERSION = 1.16 -# rpm5.org down -POPT_SITE = http://anduin.linuxfromscratch.org/sources/BLFS/svn/p +POPT_SITE = http://rpm5.org/files/popt POPT_INSTALL_STAGING = YES POPT_LICENSE = MIT POPT_LICENSE_FILES = COPYING diff --git a/package/portaudio/portaudio.hash b/package/portaudio/portaudio.hash index b83e9d97cac..2a1931634ea 100644 --- a/package/portaudio/portaudio.hash +++ b/package/portaudio/portaudio.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 9c26d1330d506496789edafe55b0386f20d83c4aa2c0e3f81fbeb0f114ab1b99 pa_stable_v19_20111121.tgz +sha256 8fe024a5f0681e112c6979808f684c3516061cc51d3acc0b726af98fc96c8d57 pa_stable_v19_20140130.tgz diff --git a/package/portaudio/portaudio.mk b/package/portaudio/portaudio.mk index 0cccd202c2a..d1ef07a2608 100644 --- a/package/portaudio/portaudio.mk +++ b/package/portaudio/portaudio.mk @@ -4,7 +4,7 @@ # ################################################################################ -PORTAUDIO_VERSION = v19_20111121 +PORTAUDIO_VERSION = v19_20140130 PORTAUDIO_SITE = http://www.portaudio.com/archives PORTAUDIO_SOURCE = pa_stable_$(PORTAUDIO_VERSION).tgz PORTAUDIO_INSTALL_STAGING = YES @@ -13,7 +13,7 @@ PORTAUDIO_LICENSE = portaudio license (MIT-like plus special clause) PORTAUDIO_LICENSE_FILES = LICENSE.txt PORTAUDIO_DEPENDENCIES = \ - $(if $(BR2_PACKAGE_PORTAUDIO_WITH_ALSA),alsa-lib) + $(if $(BR2_PACKAGE_PORTAUDIO_ALSA),alsa-lib) PORTAUDIO_CONF_OPTS = \ $(if $(BR2_PACKAGE_PORTAUDIO_ALSA),--with-alsa,--without-alsa) \ diff --git a/package/portmap/S13portmap b/package/portmap/S13portmap index 573a16abf04..9aa6adfc5b7 100755 --- a/package/portmap/S13portmap +++ b/package/portmap/S13portmap @@ -3,7 +3,7 @@ [ -f /sbin/portmap ] || exit 0 start() { - echo -n "Starting portmap: " + printf "Starting portmap: " portmap mkdir -p /var/lock/subsys touch /var/lock/subsys/portmap @@ -12,7 +12,7 @@ start() { stop() { - echo -n "Stopping portmap: " + printf "Stopping portmap: " echo killall portmap rm -rf /var/lock/subsys diff --git a/package/portmap/portmap.hash b/package/portmap/portmap.hash new file mode 100644 index 00000000000..e542b2d9819 --- /dev/null +++ b/package/portmap/portmap.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 02c820d39f3e6e729d1bea3287a2d8a6c684f1006fb9612f97dcad4a281d41de portmap-6.0.tgz diff --git a/package/postgresql/S50postgresql b/package/postgresql/S50postgresql index a895bcfcefe..1ece4fca9e2 100644 --- a/package/postgresql/S50postgresql +++ b/package/postgresql/S50postgresql @@ -12,12 +12,12 @@ if [ ! -f /var/lib/pgsql/PG_VERSION ]; then fi start() { - echo -n "Starting postgresql: " + printf "Starting postgresql: " su - postgres -c '/usr/bin/pg_ctl start -w -D /var/lib/pgsql -l logfile' echo "OK" } stop() { - echo -n "Stopping postgresql: " + printf "Stopping postgresql: " su - postgres -c '/usr/bin/pg_ctl stop -D /var/lib/pgsql -m fast' echo "OK" } diff --git a/package/postgresql/postgresql.hash b/package/postgresql/postgresql.hash index 5f415af5355..9015e99040c 100644 --- a/package/postgresql/postgresql.hash +++ b/package/postgresql/postgresql.hash @@ -1,2 +1,2 @@ -# From https://ftp.postgresql.org/pub/source/v9.4.4/postgresql-9.4.4.tar.bz2.sha256 -sha256 538ed99688d6fdbec6fd166d1779cf4588bf2f16c52304e5ef29f904c43b0013 postgresql-9.4.4.tar.bz2 +# From https://ftp.postgresql.org/pub/source/v9.4.6/postgresql-9.4.6.tar.bz2.sha256 +sha256 cbce1f4d01a6142c5d8bebe125623c5198ec04f363da7dd3d3b3a4100b4140a6 postgresql-9.4.6.tar.bz2 diff --git a/package/postgresql/postgresql.mk b/package/postgresql/postgresql.mk index 382f3209ee2..444c1b13214 100644 --- a/package/postgresql/postgresql.mk +++ b/package/postgresql/postgresql.mk @@ -4,7 +4,7 @@ # ################################################################################ -POSTGRESQL_VERSION = 9.4.4 +POSTGRESQL_VERSION = 9.4.6 POSTGRESQL_SOURCE = postgresql-$(POSTGRESQL_VERSION).tar.bz2 POSTGRESQL_SITE = http://ftp.postgresql.org/pub/source/v$(POSTGRESQL_VERSION) POSTGRESQL_LICENSE = PostgreSQL @@ -15,6 +15,7 @@ POSTGRESQL_CONF_ENV = ac_cv_type_struct_sockaddr_in6=yes \ pgac_cv_snprintf_long_long_int_format="%lld" \ pgac_cv_snprintf_size_t_support=yes POSTGRESQL_AUTORECONF = YES +POSTGRESQL_CONF_OPTS = --disable-rpath ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) # PostgreSQL does not build against uClibc with locales @@ -49,7 +50,7 @@ POSTGRESQL_DEPENDENCIES += tzdata POSTGRESQL_CONF_OPTS += --with-system-tzdata=/usr/share/zoneinfo else POSTGRESQL_DEPENDENCIES += host-zic -POSTGRESQL_CONF_ENV += ZIC=$$(ZIC) +POSTGRESQL_CONF_ENV += ZIC="$(ZIC)" endif ifeq ($(BR2_PACKAGE_OPENSSL),y) diff --git a/package/powerpc-utils/Config.in b/package/powerpc-utils/Config.in index 8e02e764597..e18254c1240 100644 --- a/package/powerpc-utils/Config.in +++ b/package/powerpc-utils/Config.in @@ -1,5 +1,10 @@ +comment "powerpc-utils tools needs a toolchain w/ dynamic library" + depends on BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le + depends on BR2_STATIC_LIBS + config BR2_PACKAGE_POWERPC_UTILS bool "powerpc-utils" + depends on !BR2_STATIC_LIBS # dlfcn.h depends on BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le select BR2_PACKAGE_ZLIB help diff --git a/package/powertop/0003-add-missing-sys-time.h-header.patch b/package/powertop/0003-add-missing-sys-time.h-header.patch new file mode 100644 index 00000000000..7156e4256ad --- /dev/null +++ b/package/powertop/0003-add-missing-sys-time.h-header.patch @@ -0,0 +1,35 @@ +From 283cab667a9ac3ae3a675b5e5d1a42191188699f Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sat, 8 Aug 2015 18:24:48 +0200 +Subject: [PATCH] add missing sys/time.h header +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +struct timeval is defined in sys/time.h with a musl toolchain. + +Fixes: +In file included from devices/devfreq.cpp:35:0: +devices/devfreq.h:35:18: error: field ‘stamp_before’ has incomplete type ‘timeval’ + struct timeval stamp_before, stamp_after; + +Signed-off-by: Romain Naour +--- + src/devices/devfreq.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/devices/devfreq.h b/src/devices/devfreq.h +index 16a60fb..4a8983b 100644 +--- a/src/devices/devfreq.h ++++ b/src/devices/devfreq.h +@@ -27,6 +27,7 @@ + + #include "device.h" + #include "../parameters/parameters.h" ++#include + + struct frequency; + +-- +2.4.3 + diff --git a/package/powertop/0004-add-missing-stdio.h-header.patch b/package/powertop/0004-add-missing-stdio.h-header.patch new file mode 100644 index 00000000000..7619cca1318 --- /dev/null +++ b/package/powertop/0004-add-missing-stdio.h-header.patch @@ -0,0 +1,35 @@ +From e6cfd977c81b335664db1d5d3d6b5488c245e30f Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sat, 8 Aug 2015 18:26:15 +0200 +Subject: [PATCH] add missing stdio.h header +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +snprinf is defined in stdio.h. + +Fixes: +perf/perf_bundle.cpp: In function ‘void parse_event_format(const char*)’: +perf/perf_bundle.cpp:141:75: error: ‘sprintf’ was not declared in this scope + sprintf(file, "/sys/kernel/debug/tracing/events/%s/%s/format", sys, event); + +Signed-off-by: Romain Naour +--- + src/perf/perf_bundle.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/perf/perf_bundle.cpp b/src/perf/perf_bundle.cpp +index cf1ae11..3d216ff 100644 +--- a/src/perf/perf_bundle.cpp ++++ b/src/perf/perf_bundle.cpp +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + + #include "perf_bundle.h" + #include "perf_event.h" +-- +2.4.3 + diff --git a/package/powertop/powertop.mk b/package/powertop/powertop.mk index 87da5a40511..53be483a6d3 100644 --- a/package/powertop/powertop.mk +++ b/package/powertop/powertop.mk @@ -5,7 +5,7 @@ ################################################################################ POWERTOP_VERSION = 2.7 -POWERTOP_SITE = https://01.org/sites/default/files/downloads/powertop/ +POWERTOP_SITE = https://01.org/sites/default/files/downloads/powertop POWERTOP_DEPENDENCIES = pciutils ncurses libnl host-gettext host-pkgconf POWERTOP_LICENSE = GPLv2 POWERTOP_LICENSE_FILES = COPYING diff --git a/package/pppd/pppd.mk b/package/pppd/pppd.mk index 554b83018b5..92897be9d96 100644 --- a/package/pppd/pppd.mk +++ b/package/pppd/pppd.mk @@ -7,7 +7,7 @@ PPPD_VERSION = 2.4.7 PPPD_SOURCE = ppp-$(PPPD_VERSION).tar.gz PPPD_SITE = https://download.samba.org/pub/ppp -PPPD_LICENSE = LGPLv2+ LGPL BSD-4c BSD-3c GPLv2+ +PPPD_LICENSE = LGPLv2+, LGPL, BSD-4c, BSD-3c, GPLv2+ PPPD_LICENSE_FILES = \ pppd/tdb.c pppd/plugins/pppoatm/COPYING \ pppdump/bsd-comp.c pppd/ccp.c pppd/plugins/passprompt.c diff --git a/package/pptp-linux/0003-pqueue.h-include-sys-types.h.patch b/package/pptp-linux/0003-pqueue.h-include-sys-types.h.patch new file mode 100644 index 00000000000..d6b5445fa97 --- /dev/null +++ b/package/pptp-linux/0003-pqueue.h-include-sys-types.h.patch @@ -0,0 +1,30 @@ +From 060ad28b9ca5e99d7c6e8010132da58a3a8a0585 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Fri, 22 Jan 2016 10:19:18 -0300 +Subject: [PATCH] pqueue.h: include sys/types.h + +We're using u_int32_t here, this breaks on musl libc builds otherwise. + +Signed-off-by: Gustavo Zacarias +--- +Patch status: sent upstream to the devel mailing list +(moderated, no archive link yet) + + pqueue.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/pqueue.h b/pqueue.h +index a56590f..8c60c62 100644 +--- a/pqueue.h ++++ b/pqueue.h +@@ -3,6 +3,7 @@ + + #include + #include ++#include + + /* wait this many seconds for missing packets before forgetting about them */ + #define DEFAULT_PACKET_TIMEOUT 0.3 +-- +2.4.10 + diff --git a/package/procps-ng/0002-use-pkgconfig-for-ncursesw-cflags.patch b/package/procps-ng/0002-use-pkgconfig-for-ncursesw-cflags.patch index 973c4e5eec5..c25da3b278f 100644 --- a/package/procps-ng/0002-use-pkgconfig-for-ncursesw-cflags.patch +++ b/package/procps-ng/0002-use-pkgconfig-for-ncursesw-cflags.patch @@ -6,6 +6,7 @@ Status: contacted one of the maintainers on sf.net (ticket submission closed to the public, no other way of contacting them). Signed-off-by: Gustavo Zacarias +[Bernd: Rebased for version 3.3.11] diff -Nura procps-ng-3.3.10.orig/configure.ac procps-ng-3.3.10/configure.ac --- procps-ng-3.3.10.orig/configure.ac 2015-04-07 19:21:55.729819952 -0300 @@ -31,14 +32,14 @@ diff -Nura procps-ng-3.3.10.orig/configure.ac procps-ng-3.3.10/configure.ac diff -Nura procps-ng-3.3.10.orig/Makefile.am procps-ng-3.3.10/Makefile.am --- procps-ng-3.3.10.orig/Makefile.am 2015-04-07 19:21:55.655817434 -0300 +++ procps-ng-3.3.10/Makefile.am 2015-04-07 19:32:54.516238136 -0300 -@@ -83,6 +83,7 @@ - slabtop_LDADD = @NCURSES_LIBS@ - watch_SOURCES = watch.c $(top_srcdir)/lib/strutils.c $(top_srcdir)/lib/fileutils.c - watch_LDADD = @WATCH_NCURSES_LIBS@ +@@ -97,6 +97,7 @@ + slabtop_LDADD = $(LDADD) @NCURSES_LIBS@ + watch_SOURCES = watch.c lib/strutils.c lib/fileutils.c + watch_LDADD = $(LDADD) @WATCH_NCURSES_LIBS@ +watch_CFLAGS = @WATCH_NCURSES_CFLAGS@ - endif - - if BUILD_SKILL + top_top_SOURCES = \ + top/top.h \ + top/top.c \ diff -Nura procps-ng-3.3.10.orig/watch.c procps-ng-3.3.10/watch.c --- procps-ng-3.3.10.orig/watch.c 2015-04-07 19:21:55.707819203 -0300 +++ procps-ng-3.3.10/watch.c 2015-04-07 19:22:27.323895083 -0300 diff --git a/package/procps-ng/procps-ng.hash b/package/procps-ng/procps-ng.hash index e011356fc38..c98fb14e69b 100644 --- a/package/procps-ng/procps-ng.hash +++ b/package/procps-ng/procps-ng.hash @@ -1,3 +1,3 @@ # From http://sourceforge.net/projects/procps-ng/files/Production/ -md5 1fb7f3f6bf92ce6c5c9ed9949ae858fe procps-ng-3.3.10.tar.xz -sha1 484db198d6a18a42b4011d5ecb2cb784a81b0e4f procps-ng-3.3.10.tar.xz +md5 6cc5b94c1c5b8cbc89ad345a7b522f74 procps-ng-3.3.11.tar.xz +sha1 1bdca65547df9ed019bd83649b0f8b8eaa017e25 procps-ng-3.3.11.tar.xz diff --git a/package/procps-ng/procps-ng.mk b/package/procps-ng/procps-ng.mk index 07e98b98d46..fb1b236feb4 100644 --- a/package/procps-ng/procps-ng.mk +++ b/package/procps-ng/procps-ng.mk @@ -4,7 +4,7 @@ # ################################################################################ -PROCPS_NG_VERSION = 3.3.10 +PROCPS_NG_VERSION = 3.3.11 PROCPS_NG_SOURCE = procps-ng-$(PROCPS_NG_VERSION).tar.xz PROCPS_NG_SITE = http://downloads.sourceforge.net/project/procps-ng/Production PROCPS_NG_LICENSE = GPLv2+, libproc and libps LGPLv2+ @@ -33,15 +33,9 @@ else PROCPS_NG_CONF_OPTS += --without-systemd endif -# We need this to make procps-ng binaries installed in $(TARGET_DIR)/usr -# instead of $(TARGET_DIR)/usr/usr -PROCPS_NG_CONF_OPTS += \ - --prefix=/usr \ - --exec-prefix=/ \ - --sysconfdir=/etc \ - --libdir=/usr/lib \ - --bindir=/usr/bin \ - --sbindir=/usr/sbin +# Make sure binaries get installed in /bin, so that they overwrite +# their busybox counterparts. +PROCPS_NG_CONF_OPTS += --exec-prefix=/ # Allows unicode characters to show in 'watch' ifeq ($(BR2_PACKAGE_NCURSES_WCHAR),y) diff --git a/package/proftpd/S50proftpd b/package/proftpd/S50proftpd index dd6cad2e531..336680a4566 100755 --- a/package/proftpd/S50proftpd +++ b/package/proftpd/S50proftpd @@ -8,7 +8,7 @@ test -f $DAEMON || exit 0 [ ! -f /var/log/wtmp ] && touch /var/log/wtmp start() { - echo -n "Starting ProFTPD: " + printf "Starting ProFTPD: " $DAEMON if [ $? != 0 ]; then echo "FAILED" @@ -19,7 +19,7 @@ start() { } stop() { - echo -n "Stopping ProFTPD: " + printf "Stopping ProFTPD: " killall proftpd echo "done" } diff --git a/package/proftpd/proftpd.hash b/package/proftpd/proftpd.hash index 183e8247d7c..288e917fe79 100644 --- a/package/proftpd/proftpd.hash +++ b/package/proftpd/proftpd.hash @@ -1,2 +1,4 @@ -# Locally calculated after checking pgp signature -sha256 c198b53991ce641eae6b3237e856e59f0bfe8330794145b49cae33f85b6f5370 proftpd-1.3.4d.tar.gz +# From ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.5a.tar.gz.md5 +md5 b9d3092411478415b31d435f8e26d173 proftpd-1.3.5a.tar.gz +# Locally calculated +sha256 a1f48df8539c414ec56e0cea63dcf4b8e16e606c05f10156f030a4a67fae5696 proftpd-1.3.5a.tar.gz diff --git a/package/proftpd/proftpd.mk b/package/proftpd/proftpd.mk index dec243d4564..3af8b891cf0 100644 --- a/package/proftpd/proftpd.mk +++ b/package/proftpd/proftpd.mk @@ -4,7 +4,7 @@ # ################################################################################ -PROFTPD_VERSION = 1.3.4d +PROFTPD_VERSION = 1.3.5a PROFTPD_SOURCE = proftpd-$(PROFTPD_VERSION).tar.gz PROFTPD_SITE = ftp://ftp.proftpd.org/distrib/source PROFTPD_LICENSE = GPLv2+ @@ -51,6 +51,10 @@ define PROFTPD_INSTALL_TARGET_CMDS $(INSTALL) -m 0644 -D $(@D)/sample-configurations/basic.conf $(TARGET_DIR)/etc/proftpd.conf endef +define PROFTPD_USERS + ftp -1 ftp -1 * /home/ftp - - Anonymous FTP User +endef + define PROFTPD_INSTALL_INIT_SYSV $(INSTALL) -D -m 0755 package/proftpd/S50proftpd $(TARGET_DIR)/etc/init.d/S50proftpd endef diff --git a/package/protobuf-c/Config.in b/package/protobuf-c/Config.in index f9fab37a154..28555502f95 100644 --- a/package/protobuf-c/Config.in +++ b/package/protobuf-c/Config.in @@ -1,7 +1,7 @@ config BR2_PACKAGE_PROTOBUF_C bool "protobuf-c" depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_TOOLCHAIN_HAS_THREADS # protobuf + depends on BR2_TOOLCHAIN_HAS_THREADS # host-protobuf only builds on certain architectures depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" help diff --git a/package/protobuf-c/protobuf-c.hash b/package/protobuf-c/protobuf-c.hash new file mode 100644 index 00000000000..7584058e95d --- /dev/null +++ b/package/protobuf-c/protobuf-c.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 49340784ca0f8657f38547088731fff3bfe8084adb89bf5e8dbc19ac43339aa6 protobuf-c-v1.1.1.tar.gz diff --git a/package/protobuf-c/protobuf-c.mk b/package/protobuf-c/protobuf-c.mk index d73eb2510db..ee4500ee0d7 100644 --- a/package/protobuf-c/protobuf-c.mk +++ b/package/protobuf-c/protobuf-c.mk @@ -4,7 +4,7 @@ # ################################################################################ -PROTOBUF_C_VERSION = v1.0.0-rc1 +PROTOBUF_C_VERSION = v1.1.1 PROTOBUF_C_SITE = $(call github,protobuf-c,protobuf-c,$(PROTOBUF_C_VERSION)) PROTOBUF_C_DEPENDENCIES = host-protobuf-c HOST_PROTOBUF_C_DEPENDENCIES = host-protobuf host-pkgconf diff --git a/package/protobuf/Config.in b/package/protobuf/Config.in index bbb927f2699..3d4320bfca1 100644 --- a/package/protobuf/Config.in +++ b/package/protobuf/Config.in @@ -1,19 +1,27 @@ +# See src/google/protobuf/stubs/platform_macros.h for supported archs. +# PowerPC doesn't actually work. +# host-protobuf only builds on certain architectures +config BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS + bool + default y if BR2_arm + default y if BR2_i386 + default y if BR2_mipsel + default y if BR2_x86_64 + depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + config BR2_PACKAGE_PROTOBUF bool "protobuf" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS - # See src/google/protobuf/stubs/platform_macros.h for supported archs. - # PowerPC doesn't actually work. - depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64 - # host-protobuf only builds on certain architectures - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS + depends on !BR2_STATIC_LIBS help Protocol buffers are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data. https://developers.google.com/protocol-buffers -comment "protobuf needs a toolchain w/ C++, threads" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64 - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" +comment "protobuf needs a toolchain w/ C++, threads, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS \ + || BR2_STATIC_LIBS + depends on BR2_PACKAGE_PROTOBUF_ARCH_SUPPORTS diff --git a/package/protobuf/protobuf.hash b/package/protobuf/protobuf.hash new file mode 100644 index 00000000000..78285b72d2b --- /dev/null +++ b/package/protobuf/protobuf.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 2667b7cda4a6bc8a09e5463adf3b5984e08d94e72338277affa8594d8b6e5cd1 protobuf-v2.6.1.tar.gz diff --git a/package/protobuf/protobuf.mk b/package/protobuf/protobuf.mk index 0426fcec07c..3eeadfc4542 100644 --- a/package/protobuf/protobuf.mk +++ b/package/protobuf/protobuf.mk @@ -4,10 +4,10 @@ # ################################################################################ -PROTOBUF_VERSION = v2.5.0 +PROTOBUF_VERSION = v2.6.1 PROTOBUF_SITE = $(call github,google,protobuf,$(PROTOBUF_VERSION)) PROTOBUF_LICENSE = BSD-3c -PROTOBUF_LICENSE_FILES = COPYING.txt +PROTOBUF_LICENSE_FILES = LICENSE # no configure script PROTOBUF_AUTORECONF = YES diff --git a/package/psmisc/psmisc.hash b/package/psmisc/psmisc.hash index fd99edf2251..5e489ed34c1 100644 --- a/package/psmisc/psmisc.hash +++ b/package/psmisc/psmisc.hash @@ -1,2 +1,3 @@ # Locally computed: sha256 97323cad619210845b696d7d722c383852b2acb5c49b5b0852c4f29c77a8145a psmisc-22.21.tar.gz +sha256 4f1cb11c7182ad96e682ec50a2d9a6a22079a2b11dffde3bb3cb67823b679422 e7203c36a2a4dc10cd8268a5dc036fc9c2a73b6c.diff diff --git a/package/psmisc/psmisc.mk b/package/psmisc/psmisc.mk index cbdf4c69452..2f83b7d8c92 100644 --- a/package/psmisc/psmisc.mk +++ b/package/psmisc/psmisc.mk @@ -6,6 +6,8 @@ PSMISC_VERSION = 22.21 PSMISC_SITE = http://downloads.sourceforge.net/project/psmisc/psmisc +PSMISC_PATCH = \ + https://gitlab.com/psmisc/psmisc/commit/e7203c36a2a4dc10cd8268a5dc036fc9c2a73b6c.diff PSMISC_LICENSE = GPLv2 PSMISC_LICENSE_FILES = COPYING PSMISC_DEPENDENCIES = ncurses $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) diff --git a/package/ptpd/S65ptpd b/package/ptpd/S65ptpd index 4206c5e0c97..89914e96bc6 100755 --- a/package/ptpd/S65ptpd +++ b/package/ptpd/S65ptpd @@ -5,7 +5,7 @@ case "$1" in start) - echo -n "Starting ptpd: " + printf "Starting ptpd: " start-stop-daemon -S -q -x /usr/sbin/ptpd -- -S if [ $? != 0 ]; then echo "FAILED" @@ -15,7 +15,7 @@ case "$1" in fi ;; stop) - echo -n "Stopping ptpd: " + printf "Stopping ptpd: " start-stop-daemon -K -q -x /usr/sbin/ptpd echo "OK" ;; diff --git a/package/ptpd2/0001-musl.patch b/package/ptpd2/0001-musl.patch new file mode 100644 index 00000000000..2e214b2188d --- /dev/null +++ b/package/ptpd2/0001-musl.patch @@ -0,0 +1,15 @@ +Fix musl build + +Signed-off-by: Bernd Kuhls + +diff -uNr ptpd-ptpd-2.3.1.org/src/dep/net.c ptpd-ptpd-2.3.1/src/dep/net.c +--- ptpd-ptpd-2.3.1.org/src/dep/net.c 2015-06-29 17:13:29.000000000 +0200 ++++ ptpd-ptpd-2.3.1/src/dep/net.c 2016-01-24 00:35:44.509860065 +0100 +@@ -82,7 +82,6 @@ + #ifdef SO_TIMESTAMPING + #include + #include +-#include + #endif /* SO_TIMESTAMPING */ + + /** diff --git a/package/ptpd2/Config.in b/package/ptpd2/Config.in index e37b10ed3bd..e88a9bb1ac0 100644 --- a/package/ptpd2/Config.in +++ b/package/ptpd2/Config.in @@ -5,4 +5,5 @@ config BR2_PACKAGE_PTPD2 The PTP daemon (PTPd) implements the Precision Time protocol (PTP) as defined by the IEEE-1588-2008. - http://ptpd.sourceforge.net/ + https://github.com/ptpd/ptpd + diff --git a/package/ptpd2/S65ptpd2 b/package/ptpd2/S65ptpd2 index 7d4ee7f4bfa..f815cb5a7b9 100755 --- a/package/ptpd2/S65ptpd2 +++ b/package/ptpd2/S65ptpd2 @@ -5,7 +5,7 @@ case "$1" in start) - echo -n "Starting ptpd2: " + printf "Starting ptpd2: " start-stop-daemon -S -q -x /usr/sbin/ptpd2 -- -g if [ $? != 0 ]; then echo "FAILED" @@ -15,7 +15,7 @@ case "$1" in fi ;; stop) - echo -n "Stopping ptpd2: " + printf "Stopping ptpd2: " start-stop-daemon -K -q -x /usr/sbin/ptpd2 echo "OK" ;; diff --git a/package/ptpd2/ptpd2.hash b/package/ptpd2/ptpd2.hash index 2570c00e581..af1f78a5a89 100644 --- a/package/ptpd2/ptpd2.hash +++ b/package/ptpd2/ptpd2.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 1a4e90496f004bfd91657ccc49209101dc25b787e540648c07c0973469f1d8f7 ptpd-2.3.0.tar.gz +sha256 267ad61d09d97069acec5d4878dceda20d0ddbebd27557d80230847848cee6c2 ptpd2-ptpd-2.3.1.tar.gz diff --git a/package/ptpd2/ptpd2.mk b/package/ptpd2/ptpd2.mk index cd49fe563bb..da6a10684bb 100644 --- a/package/ptpd2/ptpd2.mk +++ b/package/ptpd2/ptpd2.mk @@ -4,10 +4,10 @@ # ################################################################################ -PTPD2_VERSION = 2.3.0 -PTPD2_SITE = http://downloads.sourceforge.net/project/ptpd/ptpd/$(PTPD2_VERSION) -PTPD2_SOURCE = ptpd-$(PTPD2_VERSION).tar.gz +PTPD2_VERSION = ptpd-2.3.1 +PTPD2_SITE = $(call github,ptpd,ptpd,$(PTPD2_VERSION)) PTPD2_DEPENDENCIES = libpcap +PTPD2_CONF_OPTS = --with-pcap-config=$(STAGING_DIR)/usr/bin/pcap-config # configure not shipped PTPD2_AUTORECONF = YES PTPD2_LICENSE = BSD-2c diff --git a/package/pulseaudio/0001-padsp-Make-it-compile-on-musl.patch b/package/pulseaudio/0001-padsp-Make-it-compile-on-musl.patch new file mode 100644 index 00000000000..19842fadf00 --- /dev/null +++ b/package/pulseaudio/0001-padsp-Make-it-compile-on-musl.patch @@ -0,0 +1,75 @@ +From f6ab3c3aa7a1841c8add04828029356d2a8c88e7 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 6 Apr 2015 21:56:31 -0700 +Subject: [PATCH] padsp: Make it compile on musl + +break assumptions on glibc and there is no stat64 on non +glibc C libraries + +See pulseaudio bug + +https://bugs.freedesktop.org/show_bug.cgi?id=85319 + +Upstream-Status: Pending +Signed-off-by: Khem Raj +[Bernd: taken from +http://git.alpinelinux.org/cgit/aports/tree/testing/pulseaudio/0001-padsp-Make-it-compile-on-musl.patch, +adjusted paths.] +Signed-off-by: Bernd Kuhls + +--- + src/utils/padsp.c | 15 +++++++++------ + 1 file changed, 9 insertions(+), 6 deletions(-) + +diff --git a/src/utils/padsp.c b/src/utils/padsp.c +index e61373c..684721a 100644 +--- a/src/utils/padsp.c ++++ b/src/utils/padsp.c +@@ -2368,7 +2368,7 @@ fail: + return ret; + } + +-#ifdef sun ++#ifndef __GLIBC__ + int ioctl(int fd, int request, ...) { + #else + int ioctl(int fd, unsigned long request, ...) { +@@ -2508,10 +2508,13 @@ int stat(const char *pathname, struct stat *buf) { + + return 0; + } +- + #ifdef HAVE_OPEN64 +- ++#undef stat64 ++#ifdef __GLIBC__ + int stat64(const char *pathname, struct stat64 *buf) { ++#else ++int stat64(const char *pathname, struct stat *buf) { ++#endif + struct stat oldbuf; + int ret; + +@@ -2544,7 +2547,7 @@ int stat64(const char *pathname, struct stat64 *buf) { + + return 0; + } +- ++#undef open64 + int open64(const char *filename, int flags, ...) { + va_list args; + mode_t mode = 0; +@@ -2670,8 +2673,8 @@ FILE* fopen(const char *filename, const char *mode) { + } + + #ifdef HAVE_OPEN64 +- +-FILE *fopen64(const char *filename, const char *mode) { ++#undef fopen64 ++FILE *fopen64(const char *__restrict filename, const char *__restrict mode) { + + debug(DEBUG_LEVEL_VERBOSE, __FILE__": fopen64(%s)\n", filename?filename:"NULL"); + +-- +2.1.4 + diff --git a/package/pulseaudio/Config.in b/package/pulseaudio/Config.in index 63c8ca4b2e6..20aa374fce8 100644 --- a/package/pulseaudio/Config.in +++ b/package/pulseaudio/Config.in @@ -3,12 +3,12 @@ config BR2_PACKAGE_PULSEAUDIO depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c select BR2_PACKAGE_LIBTOOL select BR2_PACKAGE_JSON_C select BR2_PACKAGE_LIBSNDFILE select BR2_PACKAGE_SPEEX depends on BR2_USE_MMU # fork() - depends on BR2_ARCH_HAS_ATOMICS help PulseAudio is a sound system for POSIX OSes, meaning that it is a proxy for your sound applications. It allows you to do @@ -33,5 +33,5 @@ endif comment "pulseaudio needs a toolchain w/ wchar, threads, dynamic library" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/pulseaudio/S50pulseaudio b/package/pulseaudio/S50pulseaudio index 4c6877eb16a..c1d88626f40 100755 --- a/package/pulseaudio/S50pulseaudio +++ b/package/pulseaudio/S50pulseaudio @@ -5,13 +5,13 @@ start() { - echo -n "Starting pulseaudio: " + printf "Starting pulseaudio: " umask 077 /usr/bin/pulseaudio --system --daemonize echo "OK" } stop() { - echo -n "Stopping pulseaudio: " + printf "Stopping pulseaudio: " pulseaudio --kill echo "OK" } diff --git a/package/pulseaudio/pulseaudio.hash b/package/pulseaudio/pulseaudio.hash index dad495e1fbe..0d1a3d2bda3 100644 --- a/package/pulseaudio/pulseaudio.hash +++ b/package/pulseaudio/pulseaudio.hash @@ -1,3 +1,3 @@ -# From http://freedesktop.org/software/pulseaudio/releases/pulseaudio-5.0.tar.xz.{md5,sha1} -md5 c43749838612f4860465e83ed62ca38e pulseaudio-5.0.tar.xz -sha1 e420931a0b9cf37331cd06e30ba415046317ab85 pulseaudio-5.0.tar.xz +# From http://freedesktop.org/software/pulseaudio/releases/pulseaudio-8.0.tar.xz.{md5,sha1} +md5 8678442ba0bb4b4c33ac6f62542962df pulseaudio-8.0.tar.xz +sha1 1399a2f6288ad743184b6c2192129fef033343ac pulseaudio-8.0.tar.xz diff --git a/package/pulseaudio/pulseaudio.mk b/package/pulseaudio/pulseaudio.mk index 0fcfe38f92b..06b0b843c5d 100644 --- a/package/pulseaudio/pulseaudio.mk +++ b/package/pulseaudio/pulseaudio.mk @@ -4,7 +4,7 @@ # ################################################################################ -PULSEAUDIO_VERSION = 5.0 +PULSEAUDIO_VERSION = 8.0 PULSEAUDIO_SOURCE = pulseaudio-$(PULSEAUDIO_VERSION).tar.xz PULSEAUDIO_SITE = http://freedesktop.org/software/pulseaudio/releases PULSEAUDIO_INSTALL_STAGING = YES @@ -12,25 +12,41 @@ PULSEAUDIO_LICENSE = LGPLv2.1+ (specific license for modules, see LICENSE file) PULSEAUDIO_LICENSE_FILES = LICENSE GPL LGPL PULSEAUDIO_CONF_OPTS = \ --disable-default-build-tests \ - --disable-legacy-runtime-dir \ --disable-legacy-database-entry-format \ --disable-manpages +# Make sure we don't detect libatomic_ops. Indeed, since pulseaudio +# requires json-c, which needs 4 bytes __sync builtins, there should +# be no need for pulseaudio to rely on libatomic_ops. +PULSE_AUDIO_CONF_ENV += \ + ac_cv_header_atomic_ops_h=no + PULSEAUDIO_DEPENDENCIES = \ host-pkgconf libtool json-c libsndfile speex host-intltool \ - $(if $(BR2_PACKAGE_LIBATOMIC_OPS),libatomic_ops) \ $(if $(BR2_PACKAGE_LIBSAMPLERATE),libsamplerate) \ $(if $(BR2_PACKAGE_ALSA_LIB),alsa-lib) \ $(if $(BR2_PACKAGE_LIBGLIB2),libglib2) \ $(if $(BR2_PACKAGE_AVAHI_DAEMON),avahi) \ $(if $(BR2_PACKAGE_DBUS),dbus) \ $(if $(BR2_PACKAGE_BLUEZ_UTILS),bluez_utils) \ - $(if $(BR2_PACKAGE_HAS_UDEV),udev) \ $(if $(BR2_PACKAGE_OPENSSL),openssl) \ $(if $(BR2_PACKAGE_FFTW),fftw) \ $(if $(BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING),webrtc-audio-processing) \ $(if $(BR2_PACKAGE_SYSTEMD),systemd) +ifeq ($(BR2_PACKAGE_GDBM),y) +PULSEAUDIO_CONF_OPTS += --with-database=gdbm +PULSEAUDIO_DEPENDENCIES += gdbm +else +PULSEAUDIO_CONF_OPTS += --with-database=simple +endif + +ifeq ($(BR2_PACKAGE_JACK2),y) +PULSEAUDIO_CONF_OPTS += --enable-jack +PULSEAUDIO_DEPENDENCIES += jack2 +else +PULSEAUDIO_CONF_OPTS += --disable-jack +endif ifeq ($(BR2_PACKAGE_ORC),y) PULSEAUDIO_DEPENDENCIES += orc @@ -55,6 +71,20 @@ else PULSEAUDIO_CONF_OPTS += --disable-gtk3 endif +ifeq ($(BR2_PACKAGE_LIBSOXR),y) +PULSEAUDIO_CONF_OPTS += --with-soxr +PULSEAUDIO_DEPENDENCIES += libsoxr +else +PULSEAUDIO_CONF_OPTS += --without-soxr +endif + +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +PULSEAUDIO_CONF_OPTS += --enable-libudev +PULSEAUDIO_DEPENDENCIES += udev +else +PULSEAUDIO_CONF_OPTS += --disable-libudev +endif + ifneq ($(BR2_INSTALL_LIBSTDCPP),y) # The optional webrtc echo canceller is written in C++, causing auto* to want # to link module-echo-cancel.so with CXX even if webrtc ISN'T used. diff --git a/package/pulseview/0001-musl.patch b/package/pulseview/0001-musl.patch new file mode 100644 index 00000000000..1acee73719b --- /dev/null +++ b/package/pulseview/0001-musl.patch @@ -0,0 +1,54 @@ +From dcfe0a01f72021aab961245d0ebcc9f8d4504b40 Mon Sep 17 00:00:00 2001 +From: Soeren Apel +Date: Sun, 31 Jan 2016 14:12:44 +0100 +Subject: [PATCH] View: Honor ENABLE_DECODE compiler switch + +Signed-off-by: Soeren Apel +Signed-off-by: Bernd Kuhls +--- +Patch downloaded from upstream git: +http://sigrok.org/gitweb/?p=pulseview.git;a=commitdiff;h=dcfe0a01f72021aab961245d0ebcc9f8d4504b40 +as suggested by upstream: +http://article.gmane.org/gmane.comp.debugging.sigrok.devel/1954 + + pv/view/view.cpp | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/pv/view/view.cpp b/pv/view/view.cpp +index c9b08bf..6ad7dea 100644 +--- a/pv/view/view.cpp ++++ b/pv/view/view.cpp +@@ -43,7 +43,6 @@ + #include + + #include "analogsignal.hpp" +-#include "decodetrace.hpp" + #include "header.hpp" + #include "logicsignal.hpp" + #include "ruler.hpp" +@@ -59,6 +58,10 @@ + #include "pv/data/logicsegment.hpp" + #include "pv/util.hpp" + ++#ifdef ENABLE_DECODE ++#include "decodetrace.hpp" ++#endif ++ + using boost::shared_lock; + using boost::shared_mutex; + +@@ -455,9 +458,11 @@ void View::enable_coloured_bg(bool state) + if (l) + l->set_coloured_bg(state); + ++#ifdef ENABLE_DECODE + shared_ptr d = dynamic_pointer_cast(i); + if (d) + d->set_coloured_bg(state); ++#endif + } + + viewport_->update(); +-- +2.6.2 + diff --git a/package/pulseview/Config.in b/package/pulseview/Config.in index e6ddc211e45..bbbfd7672eb 100644 --- a/package/pulseview/Config.in +++ b/package/pulseview/Config.in @@ -17,15 +17,16 @@ config BR2_PACKAGE_PULSEVIEW depends on BR2_INSTALL_LIBSTDCPP depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS # libsigrok - depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 help PulseView is a Qt based logic analyzer, oscilloscope and MSO GUI for sigrok. http://sigrok.org/wiki/PulseView -comment "pulseview needs a toolchain w/ wchar, threads, C++, gcc >= 4.7" +comment "pulseview needs a toolchain w/ wchar, threads, C++, gcc >= 4.8" depends on BR2_USE_MMU depends on BR2_PACKAGE_QT5 depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR \ + || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/pulseview/pulseview.hash b/package/pulseview/pulseview.hash new file mode 100644 index 00000000000..dc50ec6149e --- /dev/null +++ b/package/pulseview/pulseview.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 5ffe2cb7a602fcdc60933d400c77bcd66e6ce529bc4f6e97d6a5e5a86f2f530e pulseview-0.3.0.tar.gz +sha256 7de425dfe3b0f76e76e266374dca8b2951510d232380901ef2abda71c7c30bb0 dcfe0a01f72021aab961245d0ebcc9f8d4504b40.patch diff --git a/package/pulseview/pulseview.mk b/package/pulseview/pulseview.mk index 67f293f10b7..cc9718712f4 100644 --- a/package/pulseview/pulseview.mk +++ b/package/pulseview/pulseview.mk @@ -6,14 +6,19 @@ # TODO Pulseview can be built and linked against Qt4 as well. -# No https access on upstream git -PULSEVIEW_SITE = git://sigrok.org/pulseview -PULSEVIEW_VERSION = ec6cc07fed12f5070eee6b8cb11343e83d42533c +PULSEVIEW_VERSION = 0.3.0 +PULSEVIEW_SITE = http://sigrok.org/download/source/pulseview PULSEVIEW_LICENSE = GPLv3+ PULSEVIEW_LICENSE_FILES = COPYING PULSEVIEW_DEPENDENCIES = libsigrok qt5base qt5svg boost PULSEVIEW_CONF_OPTS = -DDISABLE_WERROR=TRUE +ifeq ($(BR2_PACKAGE_BOOST_TEST),y) +PULSEVIEW_CONF_OPTS += -DENABLE_TESTS=TRUE +else +PULSEVIEW_CONF_OPTS += -DENABLE_TESTS=FALSE +endif + ifeq ($(BR2_PACKAGE_LIBSIGROKDECODE),y) PULSEVIEW_CONF_OPTS += -DENABLE_DECODE=TRUE PULSEVIEW_DEPENDENCIES += libsigrokdecode diff --git a/package/pure-ftpd/pure-ftpd.mk b/package/pure-ftpd/pure-ftpd.mk index aa65e9eeacd..e1040fa1595 100644 --- a/package/pure-ftpd/pure-ftpd.mk +++ b/package/pure-ftpd/pure-ftpd.mk @@ -16,6 +16,10 @@ PURE_FTPD_CONF_OPTS = \ --with-puredb \ --with-rfc2640 +ifeq ($(BR2_PACKAGE_ELFUTILS),y) +PURE_FTPD_DEPENDENCIES += elfutils +endif + ifeq ($(BR2_PACKAGE_LIBCAP),y) PURE_FTPD_CONF_OPTS += --with-capabilities PURE_FTPD_DEPENDENCIES += libcap @@ -23,6 +27,10 @@ else PURE_FTPD_CONF_OPTS += --without-capabilities endif +ifeq ($(BR2_PACKAGE_LIBSODIUM),y) +PURE_FTPD_DEPENDENCIES += libsodium +endif + ifeq ($(BR2_PACKAGE_OPENSSL),y) PURE_FTPD_CONF_OPTS += --with-tls PURE_FTPD_DEPENDENCIES += openssl diff --git a/package/pv/pv.mk b/package/pv/pv.mk index 5346b10fc49..47f570f8be6 100644 --- a/package/pv/pv.mk +++ b/package/pv/pv.mk @@ -17,6 +17,13 @@ PV_LICENSE_FILES = doc/COPYING # ensuring that host-gettext is built if gettext support is enabled; PV_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext host-gettext) +# --relax linker option is enabled by default on sparc/sparc64 +# architectures, and it can't be used together with -r option, so +# disable it. +ifeq ($(BR2_sparc)$(BR2_sparc64),y) +PV_LDFLAGS = "-Wl,--no-relax" +endif + # While 'pv' uses autoconf, it does not use automake for its # makefiles. It uses $(LD) $(LDFLAGS) to achieve partial linking, but # using 'ld' directly doesn't work well with some toolchain @@ -25,6 +32,6 @@ PV_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext host-gettext) # ensure that 'gcc' is used to do these partial linking steps. PV_MAKE_OPTS = \ LD="$(TARGET_CC)" \ - LDFLAGS="-Wl,-r -nostdlib" + LDFLAGS="-Wl,-r -nostdlib $(PV_LDFLAGS)" $(eval $(autotools-package)) diff --git a/package/python-alsaaudio/Config.in b/package/python-alsaaudio/Config.in index 22a7e87d6fd..60523bf70a5 100644 --- a/package/python-alsaaudio/Config.in +++ b/package/python-alsaaudio/Config.in @@ -11,4 +11,4 @@ config BR2_PACKAGE_PYTHON_ALSAAUDIO The PyAlsaAudio package contains bindings for the ALSA sound API. - http://pyalsaaudio.sourceforge.net/ + http://larsimmisch.github.io/pyalsaaudio/ diff --git a/package/python-alsaaudio/python-alsaaudio.hash b/package/python-alsaaudio/python-alsaaudio.hash index d8057100217..92277ec3934 100644 --- a/package/python-alsaaudio/python-alsaaudio.hash +++ b/package/python-alsaaudio/python-alsaaudio.hash @@ -1,2 +1,4 @@ +# From https://pypi.python.org/pypi?:action=show_md5&digest=1f22415a3d8da4b303182ad81c2d062e +md5 1f22415a3d8da4b303182ad81c2d062e pyalsaaudio-0.8.2.tar.gz # Locally calculated -sha256 bbd5a9eb351def673800707f48e64680685f397e29da72ea4c9355e1a2b2a0fd pyalsaaudio-0.7.tar.gz +sha256 b6df486f1c4035041a5f3800496b86c64e48e4a7d47f94dcbca11b0187aa3a15 pyalsaaudio-0.8.2.tar.gz diff --git a/package/python-alsaaudio/python-alsaaudio.mk b/package/python-alsaaudio/python-alsaaudio.mk index e64ddb4808e..92c354e3f87 100644 --- a/package/python-alsaaudio/python-alsaaudio.mk +++ b/package/python-alsaaudio/python-alsaaudio.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_ALSAAUDIO_VERSION = 0.7 +PYTHON_ALSAAUDIO_VERSION = 0.8.2 PYTHON_ALSAAUDIO_SOURCE = pyalsaaudio-$(PYTHON_ALSAAUDIO_VERSION).tar.gz -PYTHON_ALSAAUDIO_SITE = http://downloads.sourceforge.net/project/pyalsaaudio +PYTHON_ALSAAUDIO_SITE = https://pypi.python.org/packages/source/p/pyalsaaudio PYTHON_ALSAAUDIO_SETUP_TYPE = distutils PYTHON_ALSAAUDIO_LICENSE = Python software foundation license v2 PYTHON_ALSAAUDIO_LICENSE_FILES = LICENSE diff --git a/package/python-backports-abc/Config.in b/package/python-backports-abc/Config.in new file mode 100644 index 00000000000..26d8cfd98ba --- /dev/null +++ b/package/python-backports-abc/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_BACKPORTS_ABC + bool "python-backports-abc" + help + A backport of recent additions to the 'collections.abc' + module. + + https://pypi.python.org/pypi/backports_abc diff --git a/package/python-backports-abc/python-backports-abc.hash b/package/python-backports-abc/python-backports-abc.hash new file mode 100644 index 00000000000..07e954e6cbf --- /dev/null +++ b/package/python-backports-abc/python-backports-abc.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=0b65a216ce9dc9c1a7e20a729dd7c05b, sha256 locally computed +md5 0b65a216ce9dc9c1a7e20a729dd7c05b backports_abc-0.4.tar.gz +sha256 8b3e4092ba3d541c7a2f9b7d0d9c0275b21c6a01c53a61c731eba6686939d0a5 backports_abc-0.4.tar.gz diff --git a/package/python-backports-abc/python-backports-abc.mk b/package/python-backports-abc/python-backports-abc.mk new file mode 100644 index 00000000000..1e3a9a6e9ce --- /dev/null +++ b/package/python-backports-abc/python-backports-abc.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-backports-abc +# +################################################################################ + +PYTHON_BACKPORTS_ABC_VERSION = 0.4 +PYTHON_BACKPORTS_ABC_SOURCE = backports_abc-$(PYTHON_BACKPORTS_ABC_VERSION).tar.gz +PYTHON_BACKPORTS_ABC_SITE = https://pypi.python.org/packages/source/b/backports_abc +PYTHON_BACKPORTS_ABC_LICENSE = Python Software Foundation License +PYTHON_BACKPORTS_ABC_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-beautifulsoup4/Config.in b/package/python-beautifulsoup4/Config.in new file mode 100644 index 00000000000..76f6d9471c9 --- /dev/null +++ b/package/python-beautifulsoup4/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_BEAUTIFULSOUP4 + bool "python-beautifulsoup4" + help + Beautiful Soup is a Python library for pulling data out of + HTML and XML files. It works with your favorite parser to + provide idiomatic ways of navigating, searching, and + modifying the parse tree. It commonly saves programmers + hours or days of work. + + http://www.crummy.com/software/BeautifulSoup/bs4/ diff --git a/package/python-beautifulsoup4/python-beautifulsoup4.hash b/package/python-beautifulsoup4/python-beautifulsoup4.hash new file mode 100644 index 00000000000..885c26675d4 --- /dev/null +++ b/package/python-beautifulsoup4/python-beautifulsoup4.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/beautifulsoup4/json +md5 8fbd9a7cac0704645fa20d1419036815 beautifulsoup4-4.4.1.tar.gz +# sha256 calculated by scanpypi +sha256 87d4013d0625d4789a4f56b8d79a04d5ce6db1152bb65f1d39744f7709a366b4 beautifulsoup4-4.4.1.tar.gz diff --git a/package/python-beautifulsoup4/python-beautifulsoup4.mk b/package/python-beautifulsoup4/python-beautifulsoup4.mk new file mode 100644 index 00000000000..58481b9794a --- /dev/null +++ b/package/python-beautifulsoup4/python-beautifulsoup4.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-beautifulsoup4 +# +################################################################################ + +PYTHON_BEAUTIFULSOUP4_VERSION = 4.4.1 +PYTHON_BEAUTIFULSOUP4_SOURCE = beautifulsoup4-$(PYTHON_BEAUTIFULSOUP4_VERSION).tar.gz +PYTHON_BEAUTIFULSOUP4_SITE = https://pypi.python.org/packages/source/b/beautifulsoup4 +PYTHON_BEAUTIFULSOUP4_SETUP_TYPE = setuptools +PYTHON_BEAUTIFULSOUP4_LICENSE = MIT +PYTHON_BEAUTIFULSOUP4_LICENSE_FILES = COPYING.txt + +$(eval $(python-package)) diff --git a/package/python-can/python-can.hash b/package/python-can/python-can.hash new file mode 100644 index 00000000000..a8778622bf9 --- /dev/null +++ b/package/python-can/python-can.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=b9b556fe6f016c0a3b27cc67790cf821, sha256 locally computed +md5 b9b556fe6f016c0a3b27cc67790cf821 python-can-1.4.3.tar.gz +sha256 2dcd32737cc39fbf39f41521146a9685f594942c99c6183bad7e3c404930198b python-can-1.4.3.tar.gz diff --git a/package/python-can/python-can.mk b/package/python-can/python-can.mk index 8db5732ff6b..ae9ef1a0ce8 100644 --- a/package/python-can/python-can.mk +++ b/package/python-can/python-can.mk @@ -4,12 +4,10 @@ # ################################################################################ -PYTHON_CAN_VERSION = ae5b6cf -PYTHON_CAN_SITE = https://bitbucket.org/hardbyte/python-can/get/ -PYTHON_CAN_SOURCE = $(PYTHON_CAN_VERSION).tar.bz2 +PYTHON_CAN_VERSION = 1.4.3 +PYTHON_CAN_SITE = https://pypi.python.org/packages/source/p/python-can PYTHON_CAN_LICENSE = LGPLv3 PYTHON_CAN_LICENSE_FILES = LICENSE.txt -PYTHON_CAN_DEPENDENCIES = python PYTHON_CAN_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-cbor/Config.in b/package/python-cbor/Config.in new file mode 100644 index 00000000000..2d0962d592c --- /dev/null +++ b/package/python-cbor/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_CBOR + bool "python-cbor" + help + RFC 7049 - Concise Binary Object Representation. + + https://pypi.python.org/pypi/cbor + diff --git a/package/python-cbor/python-cbor.hash b/package/python-cbor/python-cbor.hash new file mode 100644 index 00000000000..6714348b5e9 --- /dev/null +++ b/package/python-cbor/python-cbor.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=711ee5ecc896595c1e95c1c48356606c, sha256 locally computed. +md5 711ee5ecc896595c1e95c1c48356606c cbor-0.1.25.tar.gz +sha256 e342d425dde88bb93b741e34e3ba092492ba1f6fca94ce356054fb7daa420746 cbor-0.1.25.tar.gz diff --git a/package/python-cbor/python-cbor.mk b/package/python-cbor/python-cbor.mk new file mode 100644 index 00000000000..4c3ce9dba34 --- /dev/null +++ b/package/python-cbor/python-cbor.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-cbor +# +################################################################################ + +PYTHON_CBOR_VERSION = 0.1.25 +PYTHON_CBOR_SOURCE = cbor-$(PYTHON_CBOR_VERSION).tar.gz +PYTHON_CBOR_SITE = http://pypi.python.org/packages/source/c/cbor +PYTHON_CBOR_LICENSE = Apache +PYTHON_CBOR_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-cffi/python-cffi.hash b/package/python-cffi/python-cffi.hash index b41c979126e..c689088c6ec 100644 --- a/package/python-cffi/python-cffi.hash +++ b/package/python-cffi/python-cffi.hash @@ -1,4 +1,4 @@ -# From https://pypi.python.org/pypi/cffi/0.8.6 -md5 474b5a68299a6f05009171de1dc91be6 cffi-0.8.6.tar.gz +# From https://pypi.python.org/pypi?:action=show_md5&digest=dec8441e67880494ee881305059af656 +md5 dec8441e67880494ee881305059af656 cffi-1.5.0.tar.gz # Calculated based on the hash above -sha256 2532d9e3af9e3c6d0f710fc98b0295b563c7f39cfd97dd2242bd36fbf4900610 cffi-0.8.6.tar.gz +sha256 44f76f6c3fc654860821785192eca29bd66531af57d09b681e6d52584604a7e7 cffi-1.5.0.tar.gz diff --git a/package/python-cffi/python-cffi.mk b/package/python-cffi/python-cffi.mk index 17efbab9d83..d7e4edfb5f0 100644 --- a/package/python-cffi/python-cffi.mk +++ b/package/python-cffi/python-cffi.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_CFFI_VERSION = 0.8.6 +PYTHON_CFFI_VERSION = 1.5.0 PYTHON_CFFI_SOURCE = cffi-$(PYTHON_CFFI_VERSION).tar.gz PYTHON_CFFI_SITE = https://pypi.python.org/packages/source/c/cffi PYTHON_CFFI_SETUP_TYPE = setuptools @@ -12,4 +12,16 @@ PYTHON_CFFI_DEPENDENCIES = host-pkgconf libffi PYTHON_CFFI_LICENSE = MIT PYTHON_CFFI_LICENSE_FILES = LICENSE +# This host package uses pkg-config to find libffi, so we have to +# provide the proper hints for pkg-config to behave properly for host +# packages. +HOST_PYTHON_CFFI_ENV = \ + PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \ + PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \ + PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ + PKG_CONFIG_SYSROOT_DIR="/" \ + PKG_CONFIG_LIBDIR="$(HOST_DIR)/usr/lib/pkgconfig:$(HOST_DIR)/usr/share/pkgconfig" +HOST_PYTHON_CFFI_DEPENDENCIES = host-pkgconf host-python-pycparser host-libffi + $(eval $(python-package)) +$(eval $(host-python-package)) diff --git a/package/python-cherrypy/python-cherrypy.hash b/package/python-cherrypy/python-cherrypy.hash index 08fa0754ba2..6befa457d81 100644 --- a/package/python-cherrypy/python-cherrypy.hash +++ b/package/python-cherrypy/python-cherrypy.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=9772dbee426d656f01a13881e2b139d8, sha256 locally computed -md5 9772dbee426d656f01a13881e2b139d8 CherryPy-3.6.0.tar.gz -sha256 a149271819a15417104aa8f641ad5b96287070f0153e6ef2832a87e2c693d75d CherryPy-3.6.0.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=4b765329b0b4b65ec25811e3febb6c93, sha256 locally computed +md5 4b765329b0b4b65ec25811e3febb6c93 CherryPy-4.0.0.tar.gz +sha256 73ad4f8870b5a3e9988a7778b5d3003a390d440527ec3458a0c7e58865d2611a CherryPy-4.0.0.tar.gz diff --git a/package/python-cherrypy/python-cherrypy.mk b/package/python-cherrypy/python-cherrypy.mk index a07f9ed7263..754e0a2becb 100644 --- a/package/python-cherrypy/python-cherrypy.mk +++ b/package/python-cherrypy/python-cherrypy.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_CHERRYPY_VERSION = 3.6.0 +PYTHON_CHERRYPY_VERSION = 4.0.0 PYTHON_CHERRYPY_SOURCE = CherryPy-$(PYTHON_CHERRYPY_VERSION).tar.gz PYTHON_CHERRYPY_SITE = http://pypi.python.org/packages/source/C/CherryPy PYTHON_CHERRYPY_LICENSE = BSD-3c diff --git a/package/python-click/Config.in b/package/python-click/Config.in new file mode 100644 index 00000000000..c0269986771 --- /dev/null +++ b/package/python-click/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_CLICK + bool "python-click" + help + A simple wrapper around optparse for powerful command line + utilities. + + https://pypi.python.org/pypi/click diff --git a/package/python-click/python-click.hash b/package/python-click/python-click.hash new file mode 100644 index 00000000000..72aab0abe32 --- /dev/null +++ b/package/python-click/python-click.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=83252a8095397b1f5f710fdd58b484d9, sha256 locally computed. +md5 83252a8095397b1f5f710fdd58b484d9 click-6.2.tar.gz +sha256 fba0ff70f5ebb4cebbf64c40a8fbc222fb7cf825237241e548354dabe3da6a82 click-6.2.tar.gz diff --git a/package/python-click/python-click.mk b/package/python-click/python-click.mk new file mode 100644 index 00000000000..19ae18700bf --- /dev/null +++ b/package/python-click/python-click.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-click +# +################################################################################ + +PYTHON_CLICK_VERSION = 6.2 +PYTHON_CLICK_SOURCE = click-$(PYTHON_CLICK_VERSION).tar.gz +PYTHON_CLICK_SITE = http://pypi.python.org/packages/source/c/click +PYTHON_CLICK_LICENSE = BSD-3c +PYTHON_CLICK_LICENSE_FILES = LICENSE +PYTHON_CLICK_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-configshell-fb/Config.in b/package/python-configshell-fb/Config.in index 85f47a83bc3..a680ce01f13 100644 --- a/package/python-configshell-fb/Config.in +++ b/package/python-configshell-fb/Config.in @@ -3,6 +3,7 @@ config BR2_PACKAGE_PYTHON_CONFIGSHELL_FB select BR2_PACKAGE_PYTHON_PYPARSING select BR2_PACKAGE_PYTHON3_READLINE if BR2_PACKAGE_PYTHON3 select BR2_PACKAGE_PYTHON_READLINE if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON_SIX select BR2_PACKAGE_PYTHON_URWID help configshell-fb is a Python library that provides a framework diff --git a/package/python-configshell-fb/python-configshell-fb.mk b/package/python-configshell-fb/python-configshell-fb.mk index 76ef48d5735..d0671d5ec91 100644 --- a/package/python-configshell-fb/python-configshell-fb.mk +++ b/package/python-configshell-fb/python-configshell-fb.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_CONFIGSHELL_FB_VERSION = v1.1.fb15 +PYTHON_CONFIGSHELL_FB_VERSION = v1.1.fb18 PYTHON_CONFIGSHELL_FB_SITE = $(call github,agrover,configshell-fb,$(PYTHON_CONFIGSHELL_FB_VERSION)) PYTHON_CONFIGSHELL_FB_LICENSE = Apache-2.0 PYTHON_CONFIGSHELL_FB_LICENSE_FILES = COPYING PYTHON_CONFIGSHELL_FB_SETUP_TYPE = setuptools -PYTHON_CONFIGSHELL_FB_DEPENDENCIES = python-pyparsing python-urwid +PYTHON_CONFIGSHELL_FB_DEPENDENCIES = python-pyparsing python-six python-urwid $(eval $(python-package)) diff --git a/package/python-cssselect/Config.in b/package/python-cssselect/Config.in new file mode 100644 index 00000000000..9c1ffe4610e --- /dev/null +++ b/package/python-cssselect/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_CSSSELECT + bool "python-cssselect" + help + cssselect parses CSS3 Selectors and translates them to XPath 1.0 + + http://packages.python.org/cssselect/ diff --git a/package/python-cssselect/python-cssselect.hash b/package/python-cssselect/python-cssselect.hash new file mode 100644 index 00000000000..08c81e519be --- /dev/null +++ b/package/python-cssselect/python-cssselect.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/cssselect/json +md5 c74f45966277dc7a0f768b9b0f3522ac cssselect-0.9.1.tar.gz +# sha256 calculated by scanpypi +sha256 0535a7e27014874b27ae3a4d33e8749e345bdfa62766195208b7996bf1100682 cssselect-0.9.1.tar.gz diff --git a/package/python-cssselect/python-cssselect.mk b/package/python-cssselect/python-cssselect.mk new file mode 100644 index 00000000000..c6b476b8a75 --- /dev/null +++ b/package/python-cssselect/python-cssselect.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-cssselect +# +################################################################################ + +PYTHON_CSSSELECT_VERSION = 0.9.1 +PYTHON_CSSSELECT_SOURCE = cssselect-$(PYTHON_CSSSELECT_VERSION).tar.gz +PYTHON_CSSSELECT_SITE = https://pypi.python.org/packages/source/c/cssselect +PYTHON_CSSSELECT_SETUP_TYPE = setuptools +PYTHON_CSSSELECT_LICENSE = BSD-3c +PYTHON_CSSSELECT_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-ecdsa/Config.in b/package/python-ecdsa/Config.in new file mode 100644 index 00000000000..ce11910e8b0 --- /dev/null +++ b/package/python-ecdsa/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_ECDSA + bool "python-ecdsa" + help + ECDSA cryptographic signature library (pure python). + + http://github.com/warner/python-ecdsa diff --git a/package/python-ecdsa/python-ecdsa.hash b/package/python-ecdsa/python-ecdsa.hash new file mode 100644 index 00000000000..b4bd70638d0 --- /dev/null +++ b/package/python-ecdsa/python-ecdsa.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/ecdsa/json +md5 1f60eda9cb5c46722856db41a3ae6670 ecdsa-0.13.tar.gz +# sha256 calculated by scanpypi +sha256 64cf1ee26d1cde3c73c6d7d107f835fed7c6a2904aef9eac223d57ad800c43fa ecdsa-0.13.tar.gz diff --git a/package/python-ecdsa/python-ecdsa.mk b/package/python-ecdsa/python-ecdsa.mk new file mode 100644 index 00000000000..75b0634e14f --- /dev/null +++ b/package/python-ecdsa/python-ecdsa.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-ecdsa +# +################################################################################ + +PYTHON_ECDSA_VERSION = 0.13 +PYTHON_ECDSA_SOURCE = ecdsa-$(PYTHON_ECDSA_VERSION).tar.gz +PYTHON_ECDSA_SITE = https://pypi.python.org/packages/source/e/ecdsa +PYTHON_ECDSA_SETUP_TYPE = setuptools +PYTHON_ECDSA_LICENSE = MIT +PYTHON_ECDSA_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-html5lib/Config.in b/package/python-html5lib/Config.in new file mode 100644 index 00000000000..c3e9f2a8591 --- /dev/null +++ b/package/python-html5lib/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_HTML5LIB + bool "python-html5lib" + help + HTML parser based on the WHATWG HTML specification. + + https://github.com/html5lib/html5lib-python diff --git a/package/python-html5lib/python-html5lib.hash b/package/python-html5lib/python-html5lib.hash new file mode 100644 index 00000000000..0ec712a1e53 --- /dev/null +++ b/package/python-html5lib/python-html5lib.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=ef43cb05e9e799f25d65d1135838a96f, sha256 locally computed +md5 ef43cb05e9e799f25d65d1135838a96f html5lib-0.9999999.tar.gz +sha256 2612a191a8d5842bfa057e41ba50bbb9dcb722419d2408c78cff4758d0754868 html5lib-0.9999999.tar.gz diff --git a/package/python-html5lib/python-html5lib.mk b/package/python-html5lib/python-html5lib.mk new file mode 100644 index 00000000000..93eef9a617a --- /dev/null +++ b/package/python-html5lib/python-html5lib.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-html5lib +# +################################################################################ + +PYTHON_HTML5LIB_VERSION = 0.9999999 +PYTHON_HTML5LIB_SOURCE = html5lib-$(PYTHON_HTML5LIB_VERSION).tar.gz +PYTHON_HTML5LIB_SITE = https://pypi.python.org/packages/source/h/html5lib +PYTHON_HTML5LIB_LICENSE = MIT +PYTHON_HTML5LIB_LICENSE_FILES = LICENSE +PYTHON_HTML5LIB_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/python-httplib2/python-httplib2.hash b/package/python-httplib2/python-httplib2.hash index 6b128d34723..879f18b9d21 100644 --- a/package/python-httplib2/python-httplib2.hash +++ b/package/python-httplib2/python-httplib2.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=09d8e8016911fc40e2e4c58f1aa3ec24, sha256 locally computed -md5 09d8e8016911fc40e2e4c58f1aa3ec24 httplib2-0.9.tar.gz -sha256 39ea8c6a6d9f595c177a16134fc49a990ad8d382758cbf469c8659662f2f51ab httplib2-0.9.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=bd1b1445b3b2dfa7276b09b1a07b7f0e, sha256 locally computed +md5 bd1b1445b3b2dfa7276b09b1a07b7f0e httplib2-0.9.2.tar.gz +sha256 c3aba1c9539711551f4d83e857b316b5134a1c4ddce98a875b7027be7dd6d988 httplib2-0.9.2.tar.gz diff --git a/package/python-httplib2/python-httplib2.mk b/package/python-httplib2/python-httplib2.mk index ec5c4763e57..adeddd33b27 100644 --- a/package/python-httplib2/python-httplib2.mk +++ b/package/python-httplib2/python-httplib2.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_HTTPLIB2_VERSION = 0.9 +PYTHON_HTTPLIB2_VERSION = 0.9.2 PYTHON_HTTPLIB2_SOURCE = httplib2-$(PYTHON_HTTPLIB2_VERSION).tar.gz PYTHON_HTTPLIB2_SITE = http://pypi.python.org/packages/source/h/httplib2 PYTHON_HTTPLIB2_SETUP_TYPE = setuptools diff --git a/package/python-idna/Config.in b/package/python-idna/Config.in new file mode 100644 index 00000000000..4ff4581d53a --- /dev/null +++ b/package/python-idna/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_IDNA + bool "python-idna" + help + A library to support the Internationalised Domain Names in + Applications (IDNA) protocol as specified in RFC 5891. This + version of the protocol is often referred to as “IDNA2008” + and can produce different results from the earlier standard + from 2003. + + https://github.com/kjd/idna diff --git a/package/python-idna/python-idna.hash b/package/python-idna/python-idna.hash new file mode 100644 index 00000000000..10e3e9d8414 --- /dev/null +++ b/package/python-idna/python-idna.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=bd17a9d15e755375f48a62c13b25b801, sha256 locally computed +md5 bd17a9d15e755375f48a62c13b25b801 idna-2.0.tar.gz +sha256 16199aad938b290f5be1057c0e1efc6546229391c23cea61ca940c115f7d3d3b idna-2.0.tar.gz diff --git a/package/python-idna/python-idna.mk b/package/python-idna/python-idna.mk new file mode 100644 index 00000000000..7dd1253c174 --- /dev/null +++ b/package/python-idna/python-idna.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-idna +# +################################################################################ + +PYTHON_IDNA_VERSION = 2.0 +PYTHON_IDNA_SOURCE = idna-$(PYTHON_IDNA_VERSION).tar.gz +PYTHON_IDNA_SITE = https://pypi.python.org/packages/source/i/idna +PYTHON_IDNA_LICENSE = BSD-3c +PYTHON_IDNA_LICENSE_FILES = LICENSE.rst +PYTHON_IDNA_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-ipaddress/Config.in b/package/python-ipaddress/Config.in new file mode 100644 index 00000000000..b2b9f0b1c38 --- /dev/null +++ b/package/python-ipaddress/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_IPADDRESS + bool "python-ipaddress" + depends on BR2_PACKAGE_PYTHON + help + Python 3.3's ipaddress for older Python versions. + + https://github.com/phihag/ipaddress diff --git a/package/python-ipaddress/python-ipaddress.hash b/package/python-ipaddress/python-ipaddress.hash new file mode 100644 index 00000000000..21bc37318a1 --- /dev/null +++ b/package/python-ipaddress/python-ipaddress.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=12915e923b738107e47827478d553ba1, sha256 locally computed +md5 12915e923b738107e47827478d553ba1 ipaddress-1.0.15.tar.gz +sha256 af6c85cfc9cdb12b861655e6b9f2f59618bf3088cbde858727b2c0a98e9f6636 ipaddress-1.0.15.tar.gz diff --git a/package/python-ipaddress/python-ipaddress.mk b/package/python-ipaddress/python-ipaddress.mk new file mode 100644 index 00000000000..8019aa8a884 --- /dev/null +++ b/package/python-ipaddress/python-ipaddress.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# python-ipaddress +# +################################################################################ + +PYTHON_IPADDRESS_VERSION = 1.0.15 +PYTHON_IPADDRESS_SOURCE = ipaddress-$(PYTHON_IPADDRESS_VERSION).tar.gz +PYTHON_IPADDRESS_SITE = https://pypi.python.org/packages/source/i/ipaddress +PYTHON_IPADDRESS_LICENSE = Python software foundation license +PYTHON_IPADDRESS_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-jinja2/python-jinja2.hash b/package/python-jinja2/python-jinja2.hash index 6e8c1603b90..04fcbc86c19 100644 --- a/package/python-jinja2/python-jinja2.hash +++ b/package/python-jinja2/python-jinja2.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=b9dffd2f3b43d673802fe857c8445b1a, sha256 locally computed -md5 b9dffd2f3b43d673802fe857c8445b1a Jinja2-2.7.3.tar.gz -sha256 2e24ac5d004db5714976a04ac0e80c6df6e47e98c354cb2c0d82f8879d4f8fdb Jinja2-2.7.3.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=edb51693fe22c53cee5403775c71a99e, sha256 locally computed. +md5 edb51693fe22c53cee5403775c71a99e Jinja2-2.8.tar.gz +sha256 bc1ff2ff88dbfacefde4ddde471d1417d3b304e8df103a7a9437d47269201bf4 Jinja2-2.8.tar.gz diff --git a/package/python-jinja2/python-jinja2.mk b/package/python-jinja2/python-jinja2.mk index 8440b643f74..ce6e2b9c5fc 100644 --- a/package/python-jinja2/python-jinja2.mk +++ b/package/python-jinja2/python-jinja2.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_JINJA2_VERSION = 2.7.3 +PYTHON_JINJA2_VERSION = 2.8 PYTHON_JINJA2_SOURCE = Jinja2-$(PYTHON_JINJA2_VERSION).tar.gz PYTHON_JINJA2_SITE = http://pypi.python.org/packages/source/J/Jinja2 PYTHON_JINJA2_SETUP_TYPE = setuptools diff --git a/package/python-lxml/python-lxml.hash b/package/python-lxml/python-lxml.hash index 624d8b0982a..08402edd0d6 100644 --- a/package/python-lxml/python-lxml.hash +++ b/package/python-lxml/python-lxml.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 b3d362bac471172747cda3513238f115cbd6c5f8b8e6319bf6a97a7892724099 lxml-3.4.4.tgz +sha256 349f93e3a4b09cc59418854ab8013d027d246757c51744bf20069bc89016f578 lxml-3.5.0.tgz diff --git a/package/python-lxml/python-lxml.mk b/package/python-lxml/python-lxml.mk index 321e56d7574..8bfbb3bfe6d 100644 --- a/package/python-lxml/python-lxml.mk +++ b/package/python-lxml/python-lxml.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_LXML_VERSION = 3.4.4 +PYTHON_LXML_VERSION = 3.5.0 PYTHON_LXML_SITE = http://lxml.de/files PYTHON_LXML_SOURCE = lxml-$(PYTHON_LXML_VERSION).tgz diff --git a/package/python-m2crypto/0001-Don-t-try-to-build-with-SSLv2-when-it-is-not-availab.patch b/package/python-m2crypto/0001-Don-t-try-to-build-with-SSLv2-when-it-is-not-availab.patch new file mode 100644 index 00000000000..7210fa213e9 --- /dev/null +++ b/package/python-m2crypto/0001-Don-t-try-to-build-with-SSLv2-when-it-is-not-availab.patch @@ -0,0 +1,36 @@ +From ac01b38302474920288c1a9eb63fd35fa8d1db5b Mon Sep 17 00:00:00 2001 +From: Bosse Klykken +Date: Tue, 17 Jul 2012 15:55:00 +0200 +Subject: [PATCH] =?UTF-8?q?Don=E2=80=99t=20try=20to=20build=20with=20SSLv2?= + =?UTF-8?q?=20when=20it=20is=20not=20available.?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The patch originally from http://stackoverflow.com/a/11072709/164233 + +Fixes #30 + +Signed-off-by: Peter Korsgaard +--- + SWIG/_ssl.i | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/SWIG/_ssl.i b/SWIG/_ssl.i +index 3f6bd61..89b1ad1 100644 +--- a/SWIG/_ssl.i ++++ b/SWIG/_ssl.i +@@ -52,8 +52,10 @@ extern const char *SSL_alert_desc_string(int); + %rename(ssl_get_alert_desc_v) SSL_alert_desc_string_long; + extern const char *SSL_alert_desc_string_long(int); + ++#ifndef OPENSSL_NO_SSL2 + %rename(sslv2_method) SSLv2_method; + extern SSL_METHOD *SSLv2_method(void); ++#endif + %rename(sslv3_method) SSLv3_method; + extern SSL_METHOD *SSLv3_method(void); + %rename(sslv23_method) SSLv23_method; +-- +2.7.0 + diff --git a/package/python-m2crypto/python-m2crypto.hash b/package/python-m2crypto/python-m2crypto.hash index a5231eca818..a2603b987a7 100644 --- a/package/python-m2crypto/python-m2crypto.hash +++ b/package/python-m2crypto/python-m2crypto.hash @@ -1,2 +1,2 @@ -# From https://pypi.python.org/pypi/M2Crypto/0.21.1 -md5 f93d8462ff7646397a9f77a2fe602d17 M2Crypto-0.21.1.tar.gz +# From https://pypi.python.org/pypi/M2Crypto/0.22.5 +md5 f84eb07aa1687f39bc26ee7b1ba5a105 M2Crypto-0.22.5.tar.gz diff --git a/package/python-m2crypto/python-m2crypto.mk b/package/python-m2crypto/python-m2crypto.mk index 7e46f1d3b4d..0416957942b 100644 --- a/package/python-m2crypto/python-m2crypto.mk +++ b/package/python-m2crypto/python-m2crypto.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_M2CRYPTO_VERSION = 0.21.1 +PYTHON_M2CRYPTO_VERSION = 0.22.5 PYTHON_M2CRYPTO_SITE = http://pypi.python.org/packages/source/M/M2Crypto PYTHON_M2CRYPTO_SOURCE = M2Crypto-$(PYTHON_M2CRYPTO_VERSION).tar.gz PYTHON_M2CRYPTO_SETUP_TYPE = setuptools @@ -13,14 +13,16 @@ HOST_PYTHON_M2CRYPTO_DEPENDENCIES = host-openssl host-swig # We need to use python2 because m2crypto is not python3 compliant. HOST_PYTHON_M2CRYPTO_NEEDS_HOST_PYTHON = python2 -# * We need to override the build commands to be able to use build_ext, -# which accepts the --openssl option. -# * Use python2 interpreter to avoid trying building some python3 objects. -define HOST_PYTHON_M2CRYPTO_BUILD_CMDS - (cd $(@D); \ - $(HOST_PKG_PYTHON_SETUPTOOLS_ENV) \ - $(HOST_DIR)/usr/bin/python2 setup.py build_ext \ - --openssl=$(HOST_DIR)/usr) +# The --openssl option that allows to specify a custom path to OpenSSL +# can only be used with the non-default build_ext setup.py command, +# and calling this command directly fails. To work around this, simply +# hardcode the path to OpenSSL in setup.py. +# Bug reported at https://gitlab.com/m2crypto/m2crypto/issues/89 +define HOST_PYTHON_M2CRYPTO_SET_OPENSSL_PATH + $(SED) "s%self.openssl = '/usr'%self.openssl = '$(HOST_DIR)/usr'%" \ + $(@D)/setup.py endef +HOST_PYTHON_M2CRYPTO_POST_PATCH_HOOKS += HOST_PYTHON_M2CRYPTO_SET_OPENSSL_PATH + $(eval $(host-python-package)) diff --git a/package/python-mako/python-mako.hash b/package/python-mako/python-mako.hash new file mode 100644 index 00000000000..374be1a1f77 --- /dev/null +++ b/package/python-mako/python-mako.hash @@ -0,0 +1,4 @@ +# From https://pypi.python.org/pypi/Mako/1.0.3 +md5 a78f20f6366a8a0659ce5532f8614e53 Mako-1.0.3.tar.gz +# Locally computed +sha256 7644bc0ee35965d2e146dde31827b8982ed70a58281085fac42869a09764d38c Mako-1.0.3.tar.gz diff --git a/package/python-mako/python-mako.mk b/package/python-mako/python-mako.mk index 398b8d2fb2f..52679e05185 100644 --- a/package/python-mako/python-mako.mk +++ b/package/python-mako/python-mako.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_MAKO_VERSION = 1.0.1 +PYTHON_MAKO_VERSION = 1.0.3 PYTHON_MAKO_SOURCE = Mako-$(PYTHON_MAKO_VERSION).tar.gz PYTHON_MAKO_SITE = https://pypi.python.org/packages/source/M/Mako PYTHON_MAKO_SETUP_TYPE = setuptools diff --git a/package/python-mistune/Config.in b/package/python-mistune/Config.in new file mode 100644 index 00000000000..e62689d0a77 --- /dev/null +++ b/package/python-mistune/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_MISTUNE + bool "python-mistune" + help + The fastest markdown parser in pure Python with renderer + features, inspired by marked. + + https://pypi.python.org/pypi/mistune diff --git a/package/python-mistune/python-mistune.hash b/package/python-mistune/python-mistune.hash new file mode 100644 index 00000000000..b161e1185e0 --- /dev/null +++ b/package/python-mistune/python-mistune.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=057bc28bf629d6a1283d680a34ed9d0f, sha256 locally computed. +md5 057bc28bf629d6a1283d680a34ed9d0f mistune-0.7.1.tar.gz +sha256 6076dedf768348927d991f4371e5a799c6a0158b16091df08ee85ee231d929a7 mistune-0.7.1.tar.gz diff --git a/package/python-mistune/python-mistune.mk b/package/python-mistune/python-mistune.mk new file mode 100644 index 00000000000..a1e571095c3 --- /dev/null +++ b/package/python-mistune/python-mistune.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-mistune +# +################################################################################ + +PYTHON_MISTUNE_VERSION = 0.7.1 +PYTHON_MISTUNE_SOURCE = mistune-$(PYTHON_MISTUNE_VERSION).tar.gz +PYTHON_MISTUNE_SITE = http://pypi.python.org/packages/source/m/mistune +PYTHON_MISTUNE_LICENSE = BSD-3c +PYTHON_MISTUNE_LICENSE_FILES = LICENSE +PYTHON_MISTUNE_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-msgpack/Config.in b/package/python-msgpack/Config.in index ed0b43255df..7206c22710a 100644 --- a/package/python-msgpack/Config.in +++ b/package/python-msgpack/Config.in @@ -1,9 +1,8 @@ config BR2_PACKAGE_PYTHON_MSGPACK bool "python-msgpack" - depends on BR2_PACKAGE_PYTHON select BR2_PACKAGE_MSGPACK depends on BR2_INSTALL_LIBSTDCPP # msgpack - depends on BR2_ARCH_HAS_ATOMICS # msgpack + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # msgpack help MessagePack (http://msgpack.org/) is a fast, compact binary serialization format, suitable for similar data to JSON. @@ -13,6 +12,6 @@ config BR2_PACKAGE_PYTHON_MSGPACK https://pypi.python.org/pypi/msgpack-python/ comment "python-msgpack needs a toolchain w/ C++" - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on BR2_PACKAGE_PYTHON depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/python-msgpack/python-msgpack.hash b/package/python-msgpack/python-msgpack.hash new file mode 100644 index 00000000000..636aa905e25 --- /dev/null +++ b/package/python-msgpack/python-msgpack.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=eb2aad1081534ef3a9f32a0ecd350b9b, sha356 locally computed. +md5 eb2aad1081534ef3a9f32a0ecd350b9b msgpack-python-0.4.7.tar.gz +sha256 5e001229a54180a02dcdd59db23c9978351af55b1290c27bc549e381f43acd6b msgpack-python-0.4.7.tar.gz diff --git a/package/python-msgpack/python-msgpack.mk b/package/python-msgpack/python-msgpack.mk index adf78b24eb1..344b7bf1508 100644 --- a/package/python-msgpack/python-msgpack.mk +++ b/package/python-msgpack/python-msgpack.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_MSGPACK_VERSION = 0.4.0 +PYTHON_MSGPACK_VERSION = 0.4.7 PYTHON_MSGPACK_SOURCE = msgpack-python-$(PYTHON_MSGPACK_VERSION).tar.gz PYTHON_MSGPACK_SITE = https://pypi.python.org/packages/source/m/msgpack-python PYTHON_MSGPACK_LICENSE = Apache-2.0 diff --git a/package/python-netaddr/Config.in b/package/python-netaddr/Config.in new file mode 100644 index 00000000000..534d136f06f --- /dev/null +++ b/package/python-netaddr/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_NETADDR + bool "python-netaddr" + help + A network address manipulation library for Python. + + https://pypi.python.org/pypi/netaddr diff --git a/package/python-netaddr/python-netaddr.hash b/package/python-netaddr/python-netaddr.hash new file mode 100644 index 00000000000..5fcdda45399 --- /dev/null +++ b/package/python-netaddr/python-netaddr.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=c65bb34f8bedfbbca0b316c490cd13a0, sha256 locally computed. +md5 c65bb34f8bedfbbca0b316c490cd13a0 netaddr-0.7.18.tar.gz +sha256 a1f5c9fcf75ac2579b9995c843dade33009543c04f218ff7c007b3c81695bd19 netaddr-0.7.18.tar.gz diff --git a/package/python-netaddr/python-netaddr.mk b/package/python-netaddr/python-netaddr.mk new file mode 100644 index 00000000000..c68b24fca10 --- /dev/null +++ b/package/python-netaddr/python-netaddr.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-netaddr +# +################################################################################ + +PYTHON_NETADDR_VERSION = 0.7.18 +PYTHON_NETADDR_SOURCE = netaddr-$(PYTHON_NETADDR_VERSION).tar.gz +PYTHON_NETADDR_SITE = http://pypi.python.org/packages/source/n/netaddr +PYTHON_NETADDR_LICENSE = BSD-3c +PYTHON_NETADDR_LICENSE_FILES = LICENSE +PYTHON_NETADDR_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/python-networkmanager/python-networkmanager.hash b/package/python-networkmanager/python-networkmanager.hash index 1438daa8e92..00d31d00d7b 100644 --- a/package/python-networkmanager/python-networkmanager.hash +++ b/package/python-networkmanager/python-networkmanager.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=fbae1f2b0140c560222fed95a259753d, sha256 locally computed -md5 fbae1f2b0140c560222fed95a259753d python-networkmanager-0.9.13.tar.gz -sha256 9a61abded027b723ff929196180dc5ea3b4c17182863837d0b88d6a58fd03ea3 python-networkmanager-0.9.13.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=d7f0337b8e58c193c574ceae984cc65f, sha256 locally computed +md5 d7f0337b8e58c193c574ceae984cc65f python-networkmanager-1.0.1.tar.gz +sha256 6eb4073a0d6572fe0bba8cbfe8423f6a8a51c4504a33e0eb4f1b1eadf54c4cee python-networkmanager-1.0.1.tar.gz diff --git a/package/python-networkmanager/python-networkmanager.mk b/package/python-networkmanager/python-networkmanager.mk index b3b1e67cee0..04a2702133a 100644 --- a/package/python-networkmanager/python-networkmanager.mk +++ b/package/python-networkmanager/python-networkmanager.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_NETWORKMANAGER_VERSION = 0.9.13 +PYTHON_NETWORKMANAGER_VERSION = 1.0.1 PYTHON_NETWORKMANAGER_SITE = http://pypi.python.org/packages/source/p/python-networkmanager PYTHON_NETWORKMANAGER_SETUP_TYPE = distutils PYTHON_NETWORKMANAGER_LICENSE = GPLv3+ diff --git a/package/python-numpy/0002-Don-t-blindly-enable-frexpl-and-ldexpl-for-uClibc.patch b/package/python-numpy/0002-Don-t-blindly-enable-frexpl-and-ldexpl-for-uClibc.patch new file mode 100644 index 00000000000..42d194182fd --- /dev/null +++ b/package/python-numpy/0002-Don-t-blindly-enable-frexpl-and-ldexpl-for-uClibc.patch @@ -0,0 +1,33 @@ +From b0a1b9628d17251bb417a063ec6c6e09f32393c2 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +Date: Tue, 6 Oct 2015 01:20:48 +0100 +Subject: [PATCH] Don't blindly enable frexpl and ldexpl for uClibc + +When the size of double and long double are equal, numpy blindly +assumes that frexpl and ldexpl will be available as well. But for +uClibc, that's not true: it only defines the long double functions +when long double "exists" on the architecture. + +So make an exception for uClibc. + +Signed-off-by: Arnout Vandecappelle (Essensium/Mind) +--- + numpy/core/src/private/npy_config.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/numpy/core/src/private/npy_config.h b/numpy/core/src/private/npy_config.h +index 453dbd0..7ecf72c 100644 +--- a/numpy/core/src/private/npy_config.h ++++ b/numpy/core/src/private/npy_config.h +@@ -11,7 +11,7 @@ + #endif + + /* Safe to use ldexp and frexp for long double for MSVC builds */ +-#if (NPY_SIZEOF_LONGDOUBLE == NPY_SIZEOF_DOUBLE) || defined(_MSC_VER) ++#if ((NPY_SIZEOF_LONGDOUBLE == NPY_SIZEOF_DOUBLE) && !defined(__UCLIBC__)) || defined(_MSC_VER) + #ifdef HAVE_LDEXP + #define HAVE_LDEXPL 1 + #endif +-- +2.5.3 + diff --git a/package/python-numpy/Config.in b/package/python-numpy/Config.in index 1f9938a3299..f7822efc796 100644 --- a/package/python-numpy/Config.in +++ b/package/python-numpy/Config.in @@ -1,12 +1,13 @@ -config BR2_PACKAGE_PYTHON_NUMPY - bool "python-numpy" +config BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS + bool # Numpy has some CPU specific code - depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 \ + default y if BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 \ || BR2_mips || BR2_mipsel || BR2_powerpc || BR2_powerpc64 \ || BR2_sh || BR2_x86_64 - # numpy needs fenv.h. Available for all architectures in - # glibc, but only for x86 and x86-64 in uClibc. - depends on !BR2_TOOLCHAIN_USES_UCLIBC || BR2_i386 || BR2_x86_64 + +config BR2_PACKAGE_PYTHON_NUMPY + bool "python-numpy" + depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS help NumPy is the fundamental package for scientific computing with Python. diff --git a/package/python-paho-mqtt/Config.in b/package/python-paho-mqtt/Config.in new file mode 100644 index 00000000000..79d8b3319cd --- /dev/null +++ b/package/python-paho-mqtt/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_PAHO_MQTT + bool "python-paho-mqtt" + help + The Paho Python Client provides a client class with support + for both MQTT v3.1 and v3.1.1 on Python 2.7 or 3.x. It also + provides some helper functions to make publishing messages + to an MQTT server very straightforward. + + https://pypi.python.org/pypi/paho-mqtt diff --git a/package/python-paho-mqtt/python-paho-mqtt.hash b/package/python-paho-mqtt/python-paho-mqtt.hash new file mode 100644 index 00000000000..52729ccd34a --- /dev/null +++ b/package/python-paho-mqtt/python-paho-mqtt.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=a6407b74eb5e5411e157be1de5c11366, sha256 locally computed +md5 a6407b74eb5e5411e157be1de5c11366 paho-mqtt-1.1.tar.gz +sha256 0f7a629efe6e3a2c61b59d3550aa9f2c4529b5689a65fde45e6f1ac36b9a261e paho-mqtt-1.1.tar.gz diff --git a/package/python-paho-mqtt/python-paho-mqtt.mk b/package/python-paho-mqtt/python-paho-mqtt.mk new file mode 100644 index 00000000000..01da2b3d777 --- /dev/null +++ b/package/python-paho-mqtt/python-paho-mqtt.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-paho-mqtt +# +################################################################################ + +PYTHON_PAHO_MQTT_VERSION = 1.1 +PYTHON_PAHO_MQTT_SOURCE = paho-mqtt-$(PYTHON_PAHO_MQTT_VERSION).tar.gz +PYTHON_PAHO_MQTT_SITE = https://pypi.python.org/packages/source/p/paho-mqtt +PYTHON_PAHO_MQTT_LICENSE = EPLv1.0 or EDLv1.0 +PYTHON_PAHO_MQTT_LICENSE_FILES = LICENSE.txt edl-v10 epl-v10 +PYTHON_PAHO_MQTT_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/python-pam/Config.in b/package/python-pam/Config.in index 6c7bc63d762..b23a8e01724 100644 --- a/package/python-pam/Config.in +++ b/package/python-pam/Config.in @@ -1,6 +1,7 @@ -comment "python-pam needs a toolchain w/ wchar, locale, dynamic library" +comment "python-pam needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" depends on BR2_PACKAGE_PYTHON - depends on !BR2_ENABLE_LOCALE || !BR2_USE_WCHAR || BR2_STATIC_LIBS + depends on !BR2_ENABLE_LOCALE || !BR2_USE_WCHAR || BR2_STATIC_LIBS || \ + BR2_TOOLCHAIN_USES_MUSL config BR2_PACKAGE_PYTHON_PAM bool "python-pam" @@ -8,6 +9,7 @@ config BR2_PACKAGE_PYTHON_PAM depends on BR2_ENABLE_LOCALE # linux-pam depends on BR2_USE_WCHAR # linux-pam depends on !BR2_STATIC_LIBS # linux-pam + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam select BR2_PACKAGE_LINUX_PAM help PAM (Pluggable Authentication Module) bindings for Python. diff --git a/package/python-paramiko/Config.in b/package/python-paramiko/Config.in new file mode 100644 index 00000000000..4c16a9a6963 --- /dev/null +++ b/package/python-paramiko/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_PARAMIKO + bool "python-paramiko" + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 # runtime + select BR2_PACKAGE_PYTHON_PYCRYPTO # runtime + select BR2_PACKAGE_PYTHON_ECDSA # runtime + help + SSH2 protocol library. + + https://github.com/paramiko/paramiko/ diff --git a/package/python-paramiko/python-paramiko.hash b/package/python-paramiko/python-paramiko.hash new file mode 100644 index 00000000000..29af27d1f46 --- /dev/null +++ b/package/python-paramiko/python-paramiko.hash @@ -0,0 +1,4 @@ +# md5 from https://pypi.python.org/pypi/paramiko/json +md5 7e1203f5ffeb7d2bc2bffc4feb804216 paramiko-1.16.0.tar.gz +# sha256 calculated by scanpypi +sha256 3297ebd3cd072f573772f7c7426939a443c62c458d54bb632ff30fd6ecf96892 paramiko-1.16.0.tar.gz diff --git a/package/python-paramiko/python-paramiko.mk b/package/python-paramiko/python-paramiko.mk new file mode 100644 index 00000000000..52822bb2986 --- /dev/null +++ b/package/python-paramiko/python-paramiko.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-paramiko +# +################################################################################ + +PYTHON_PARAMIKO_VERSION = 1.16.0 +PYTHON_PARAMIKO_SOURCE = paramiko-$(PYTHON_PARAMIKO_VERSION).tar.gz +PYTHON_PARAMIKO_SITE = https://pypi.python.org/packages/source/p/paramiko +PYTHON_PARAMIKO_SETUP_TYPE = setuptools +PYTHON_PARAMIKO_LICENSE = LGPLv2.1+ +PYTHON_PARAMIKO_LICENSE_FILES = LICENSE + +$(eval $(python-package)) diff --git a/package/python-pillow/python-pillow.mk b/package/python-pillow/python-pillow.mk index cbdd3abf8e3..b4824c5eba6 100644 --- a/package/python-pillow/python-pillow.mk +++ b/package/python-pillow/python-pillow.mk @@ -6,7 +6,7 @@ PYTHON_PILLOW_VERSION = 2.4.0 PYTHON_PILLOW_SOURCE = Pillow-$(PYTHON_PILLOW_VERSION).zip -PYTHON_PILLOW_SITE = https://pypi.python.org/packages/source/P/Pillow/ +PYTHON_PILLOW_SITE = https://pypi.python.org/packages/source/P/Pillow PYTHON_PILLOW_DEPENDENCIES = python zlib freetype jpeg host-python-setuptools PYTHON_PILLOW_SETUP_TYPE = setuptools diff --git a/package/python-protobuf/0001-disable-unneeded-build-dependencies.patch b/package/python-protobuf/0001-disable-unneeded-build-dependencies.patch new file mode 100644 index 00000000000..3f0eabd23a2 --- /dev/null +++ b/package/python-protobuf/0001-disable-unneeded-build-dependencies.patch @@ -0,0 +1,37 @@ +From 7e7db7225e227905acabfa2149152ece21c93e70 Mon Sep 17 00:00:00 2001 +From: Steven Noonan +Date: Sun, 8 Nov 2015 09:03:00 -0800 +Subject: [PATCH] python-protobuf: don't require google-apputils + +This dependency is totally superfluous for successfully building/running +python-protobuf. It's only "required" at build time and is not staged into the +install directory, but it isn't even really required for a successful build. + +Signed-off-by: Steven Noonan +--- + python/setup.py | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/python/setup.py b/python/setup.py +index 2450a77..db6f497 100755 +--- a/python/setup.py ++++ b/python/setup.py +@@ -160,7 +160,6 @@ if __name__ == '__main__': + packages = [ 'google' ], + namespace_packages = [ 'google' ], + test_suite = 'setup.MakeTestSuite', +- google_test_dir = "google/protobuf/internal", + # Must list modules explicitly so that we don't install tests. + py_modules = [ + 'google.protobuf.internal.api_implementation', +@@ -189,7 +188,6 @@ if __name__ == '__main__': + 'google.protobuf.text_format'], + cmdclass = { 'clean': clean, 'build_py': build_py }, + install_requires = ['setuptools'], +- setup_requires = ['google-apputils'], + ext_modules = ext_module_list, + url = 'https://developers.google.com/protocol-buffers/', + maintainer = maintainer_email, +-- +2.6.2 + diff --git a/package/python-protobuf/python-protobuf.mk b/package/python-protobuf/python-protobuf.mk index 2708312564e..d8be76dd70a 100644 --- a/package/python-protobuf/python-protobuf.mk +++ b/package/python-protobuf/python-protobuf.mk @@ -8,7 +8,7 @@ PYTHON_PROTOBUF_VERSION = $(PROTOBUF_VERSION) PYTHON_PROTOBUF_SOURCE = $(PROTOBUF_SOURCE) PYTHON_PROTOBUF_SITE = $(PROTOBUF_SITE) PYTHON_PROTOBUF_LICENSE = BSD-3c -PYTHON_PROTOBUF_LICENSE_FILES = COPYING.txt +PYTHON_PROTOBUF_LICENSE_FILES = LICENSE PYTHON_PROTOBUF_DEPENDENCIES = host-protobuf PYTHON_PROTOBUF_SETUP_TYPE = setuptools PYTHON_PROTOBUF_SUBDIR = python diff --git a/package/python-psutil/python-psutil.hash b/package/python-psutil/python-psutil.hash index 7897b1573a0..21de357b4d9 100644 --- a/package/python-psutil/python-psutil.hash +++ b/package/python-psutil/python-psutil.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=015a013c46bb9bc30b5c344f26dea0d3, sha256 locally computed -md5 015a013c46bb9bc30b5c344f26dea0d3 psutil-2.1.3.tar.gz -sha256 b434c75f01715777391f10f456002e33d0ca14633f96fdbd9ff9139b42d9452c psutil-2.1.3.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=53d18a5a2aff970d5658c22921c2bbe6, sha256 locally computed +md5 53d18a5a2aff970d5658c22921c2bbe6 psutil-3.4.2.tar.gz +sha256 b17fa01aa766daa388362d0eda5c215d77e03a8d37676b68971f37bf3913b725 psutil-3.4.2.tar.gz diff --git a/package/python-psutil/python-psutil.mk b/package/python-psutil/python-psutil.mk index 870984dceba..3570ff4fe46 100644 --- a/package/python-psutil/python-psutil.mk +++ b/package/python-psutil/python-psutil.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_PSUTIL_VERSION = 2.1.3 +PYTHON_PSUTIL_VERSION = 3.4.2 PYTHON_PSUTIL_SOURCE = psutil-$(PYTHON_PSUTIL_VERSION).tar.gz PYTHON_PSUTIL_SITE = http://pypi.python.org/packages/source/p/psutil PYTHON_PSUTIL_SETUP_TYPE = setuptools diff --git a/package/python-pyasn/python-pyasn.hash b/package/python-pyasn/python-pyasn.hash new file mode 100644 index 00000000000..59c90a832bb --- /dev/null +++ b/package/python-pyasn/python-pyasn.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=f00a02a631d4016818659d1cc38d229a, sha256 locally computed +md5 f00a02a631d4016818659d1cc38d229a pyasn1-0.1.9.tar.gz +sha256 853cacd96d1f701ddd67aa03ecc05f51890135b7262e922710112f12a2ed2a7f pyasn1-0.1.9.tar.gz diff --git a/package/python-pyasn/python-pyasn.mk b/package/python-pyasn/python-pyasn.mk index fbae090a046..80d18cd1354 100644 --- a/package/python-pyasn/python-pyasn.mk +++ b/package/python-pyasn/python-pyasn.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_PYASN_VERSION = 0.1.7 +PYTHON_PYASN_VERSION = 0.1.9 PYTHON_PYASN_SOURCE = pyasn1-$(PYTHON_PYASN_VERSION).tar.gz PYTHON_PYASN_SITE = https://pypi.python.org/packages/source/p/pyasn1 PYTHON_PYASN_LICENSE = BSD-2c -PYTHON_PYASN_LICENSE_FILES = LICENSE +PYTHON_PYASN_LICENSE_FILES = LICENSE.txt PYTHON_PYASN_SETUP_TYPE = distutils $(eval $(python-package)) diff --git a/package/python-pycli/python-pycli.mk b/package/python-pycli/python-pycli.mk index 2d83acd54ff..8e48a065bc5 100644 --- a/package/python-pycli/python-pycli.mk +++ b/package/python-pycli/python-pycli.mk @@ -6,7 +6,7 @@ PYTHON_PYCLI_VERSION = devel PYTHON_PYCLI_SOURCE = pyCLI-$(PYTHON_PYCLI_VERSION).tar.gz -PYTHON_PYCLI_SITE = https://pypi.python.org/packages/source/p/pyCLI/ +PYTHON_PYCLI_SITE = https://pypi.python.org/packages/source/p/pyCLI PYTHON_PYCLI_LICENSE = ISC-like PYTHON_PYCLI_LICENSE_FILES = lib/cli/__init__.py PYTHON_PYCLI_SETUP_TYPE = setuptools diff --git a/package/python-pycparser/python-pycparser.hash b/package/python-pycparser/python-pycparser.hash new file mode 100644 index 00000000000..a87bfd44c7a --- /dev/null +++ b/package/python-pycparser/python-pycparser.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=a2bc8d28c923b4fe2b2c3b4b51a4f935, sha256 locally computed +md5 a2bc8d28c923b4fe2b2c3b4b51a4f935 pycparser-2.14.tar.gz +sha256 7959b4a74abdc27b312fed1c21e6caf9309ce0b29ea86b591fd2e99ecdf27f73 pycparser-2.14.tar.gz diff --git a/package/python-pycparser/python-pycparser.mk b/package/python-pycparser/python-pycparser.mk new file mode 100644 index 00000000000..328bc8a13ce --- /dev/null +++ b/package/python-pycparser/python-pycparser.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pycparser +# +################################################################################ + +PYTHON_PYCPARSER_VERSION = 2.14 +PYTHON_PYCPARSER_SOURCE = pycparser-$(PYTHON_PYCPARSER_VERSION).tar.gz +PYTHON_PYCPARSER_SITE = https://pypi.python.org/packages/source/p/pycparser +PYTHON_PYCPARSER_SETUP_TYPE = setuptools +PYTHON_PYCPARSER_LICENSE = BSD-3c +PYTHON_PYCPARSER_LICENSE_FILES = LICENSE + +$(eval $(host-python-package)) diff --git a/package/python-pydal/Config.in b/package/python-pydal/Config.in index 9aa16f5719b..f1c97f91a0c 100644 --- a/package/python-pydal/Config.in +++ b/package/python-pydal/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_PYTHON_PYDAL bool python-pydal help - pyDAL is a pure Python Database Abstraction Layer. It dynamically generates the SQL in real time using the specified dialect for the database back end, so that you do diff --git a/package/python-pyftpdlib/python-pyftpdlib.hash b/package/python-pyftpdlib/python-pyftpdlib.hash index e1d2e947dbb..b6d0cca416f 100644 --- a/package/python-pyftpdlib/python-pyftpdlib.hash +++ b/package/python-pyftpdlib/python-pyftpdlib.hash @@ -1,2 +1,3 @@ -# Locally computed: -sha256 e2024de33024582ef26e30395225180048b98cab341f3e9f3a55f56397c9a4b5 python-pyftpdlib-1.4.0.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=0c6f7c447fb702af4d5ca0123003c9fd, sha256 locally computed +md5 0c6f7c447fb702af4d5ca0123003c9fd pyftpdlib-1.5.0.tar.gz +sha256 0111127418e9012a8e9e6c05a0c64af1acef8c31128834805fb0f9a49c746261 pyftpdlib-1.5.0.tar.gz diff --git a/package/python-pyftpdlib/python-pyftpdlib.mk b/package/python-pyftpdlib/python-pyftpdlib.mk index af9423f9b49..11e24e21c9d 100644 --- a/package/python-pyftpdlib/python-pyftpdlib.mk +++ b/package/python-pyftpdlib/python-pyftpdlib.mk @@ -4,8 +4,9 @@ # ################################################################################ -PYTHON_PYFTPDLIB_VERSION = 1.4.0 -PYTHON_PYFTPDLIB_SITE = $(call github,giampaolo,pyftpdlib,release-$(PYTHON_PYFTPDLIB_VERSION)) +PYTHON_PYFTPDLIB_VERSION = 1.5.0 +PYTHON_PYFTPDLIB_SOURCE = pyftpdlib-$(PYTHON_PYFTPDLIB_VERSION).tar.gz +PYTHON_PYFTPDLIB_SITE = https://pypi.python.org/packages/source/p/pyftpdlib PYTHON_PYFTPDLIB_SETUP_TYPE = setuptools PYTHON_PYFTPDLIB_LICENSE = MIT PYTHON_PYFTPDLIB_LICENSE_FILES = LICENSE diff --git a/package/python-pyparsing/python-pyparsing.hash b/package/python-pyparsing/python-pyparsing.hash index aee93afbf88..93a08458df0 100644 --- a/package/python-pyparsing/python-pyparsing.hash +++ b/package/python-pyparsing/python-pyparsing.hash @@ -1,2 +1,3 @@ -# Locally computed: -sha256 17e43d6b17588ed5968735575b3983a952133ec4082596d214d7090b56d48a06 pyparsing-2.0.2.tar.gz +# md5 from https://pypi.python.org/pypi/pyparsing/2.0.3, sha256 locally computed +md5 0fe479be09fc2cf005f753d3acc35939 pyparsing-2.0.3.tar.gz +sha256 06e729e1cbf5274703b1f47b6135ed8335999d547f9d8cf048b210fb8ebf844f pyparsing-2.0.3.tar.gz diff --git a/package/python-pyparsing/python-pyparsing.mk b/package/python-pyparsing/python-pyparsing.mk index 8e83f34c0e5..ad066b8f9e7 100644 --- a/package/python-pyparsing/python-pyparsing.mk +++ b/package/python-pyparsing/python-pyparsing.mk @@ -4,9 +4,9 @@ # ################################################################################ -PYTHON_PYPARSING_VERSION = 2.0.2 +PYTHON_PYPARSING_VERSION = 2.0.3 PYTHON_PYPARSING_SOURCE = pyparsing-$(PYTHON_PYPARSING_VERSION).tar.gz -PYTHON_PYPARSING_SITE = http://downloads.sourceforge.net/project/pyparsing/pyparsing/pyparsing-$(PYTHON_PYPARSING_VERSION) +PYTHON_PYPARSING_SITE = https://pypi.python.org/packages/source/p/pyparsing PYTHON_PYPARSING_LICENSE = MIT PYTHON_PYPARSING_LICENSE_FILES = LICENSE PYTHON_PYPARSING_SETUP_TYPE = distutils diff --git a/package/python-pyparted/Config.in b/package/python-pyparted/Config.in new file mode 100644 index 00000000000..150159559b3 --- /dev/null +++ b/package/python-pyparted/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_PYTHON_PYPARTED + bool "python-pyparted" + depends on BR2_USE_WCHAR + select BR2_PACKAGE_PYTHON_CFFI # runtime + select BR2_PACKAGE_PARTED + help + Python bindings for GNU parted (libparted). + + https://github.com/rhinstaller/pyparted + +comment "pyparted needs a toolchain w/ wchar" + depends on !BR2_USE_WCHAR diff --git a/package/python-pyparted/python-pyparted.hash b/package/python-pyparted/python-pyparted.hash new file mode 100644 index 00000000000..a2adc410835 --- /dev/null +++ b/package/python-pyparted/python-pyparted.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 5914e3a60437fe3e3758a9e86ee4a539dfa46cfe18e3df386a5cf1f75a963431 python-pyparted-v3.10.7.tar.gz diff --git a/package/python-pyparted/python-pyparted.mk b/package/python-pyparted/python-pyparted.mk new file mode 100644 index 00000000000..4bf58c49eb2 --- /dev/null +++ b/package/python-pyparted/python-pyparted.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pyparted +# +################################################################################ + +PYTHON_PYPARTED_VERSION = v3.10.7 +PYTHON_PYPARTED_SITE = $(call github,rhinstaller,pyparted,$(PYTHON_PYPARTED_VERSION)) +PYTHON_PYPARTED_SETUP_TYPE = distutils +PYTHON_PYPARTED_LICENSE = GPLv2+ +PYTHON_PYPARTED_LICENSE_FILES = COPYING +PYTHON_PYPARTED_DEPENDENCIES = host-python-cffi parted + +$(eval $(python-package)) diff --git a/package/python-pypcap/python-pypcap.mk b/package/python-pypcap/python-pypcap.mk index bff9d8f1156..97d07f8658a 100644 --- a/package/python-pypcap/python-pypcap.mk +++ b/package/python-pypcap/python-pypcap.mk @@ -12,7 +12,7 @@ PYTHON_PYPCAP_SETUP_TYPE = distutils PYTHON_PYPCAP_DEPENDENCIES = host-python-pyrex libpcap define PYTHON_PYPCAP_CONFIGURE_CMDS - $(HOST_DIR)/usr/bin/pyrexc $(@D)/pcap.pyx + $(HOST_DIR)/usr/bin/python2 $(HOST_DIR)/usr/bin/pyrexc $(@D)/pcap.pyx (cd $(@D); \ $(HOST_DIR)/usr/bin/python setup.py \ config --with-pcap=$(STAGING_DIR)/usr) diff --git a/package/python-pyratemp/Config.in b/package/python-pyratemp/Config.in new file mode 100644 index 00000000000..9a299d1aee3 --- /dev/null +++ b/package/python-pyratemp/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_PYRATEMP + bool "python-pyratemp" + help + python-pyratemp is a Python library for doing html + templates. written entirely in Python, that is designed to + be very easy to use and very like writing Python. + + https://pypi.python.org/pypi/pyratemp/ diff --git a/package/python-pyratemp/python-pyratemp.hash b/package/python-pyratemp/python-pyratemp.hash new file mode 100644 index 00000000000..f3f29a39a82 --- /dev/null +++ b/package/python-pyratemp/python-pyratemp.hash @@ -0,0 +1,4 @@ +#md5 from https://pypi.python.org/pypi?:action=show_md5&digest=e4bbe5d4a98016efef882b2b2f47defb +md5 e4bbe5d4a98016efef882b2b2f47defb pyratemp-0.3.2.tgz +# Locally calculated: +sha256 c45ed656ada482a02fe780495f37a695e7671accb04f918f7e7f18abf877bc71 pyratemp-0.3.2.tgz diff --git a/package/python-pyratemp/python-pyratemp.mk b/package/python-pyratemp/python-pyratemp.mk new file mode 100644 index 00000000000..055fb3049c1 --- /dev/null +++ b/package/python-pyratemp/python-pyratemp.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pyratemp +# +################################################################################ + +PYTHON_PYRATEMP_VERSION = 0.3.2 +PYTHON_PYRATEMP_SOURCE = pyratemp-$(PYTHON_PYRATEMP_VERSION).tgz +PYTHON_PYRATEMP_SITE = https://pypi.python.org/packages/source/p/pyratemp +PYTHON_PYRATEMP_LICENSE = MIT +PYTHON_PYRATEMP_LICENSE_FILES = LICENSE +PYTHON_PYRATEMP_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/python-pyroute2/Config.in b/package/python-pyroute2/Config.in new file mode 100644 index 00000000000..4f13ab2c7b2 --- /dev/null +++ b/package/python-pyroute2/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_PYTHON_PYROUTE2 + bool "python-pyroute2" + help + Python netlink library - Linux network / netns / wireless / + ipset configuration. + + https://github.com/svinota/pyroute2 diff --git a/package/python-pyroute2/python-pyroute2.hash b/package/python-pyroute2/python-pyroute2.hash new file mode 100644 index 00000000000..978492700c8 --- /dev/null +++ b/package/python-pyroute2/python-pyroute2.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=09cf70377ddf45ffc27b4ad56bcdf52e, sha256 locally computed +md5 09cf70377ddf45ffc27b4ad56bcdf52e pyroute2-0.3.15.tar.gz +sha256 f5b7116fd97f73f97adc3b9c040a4ddbe61f18bb02f47e1c8399567c8791d270 pyroute2-0.3.15.tar.gz diff --git a/package/python-pyroute2/python-pyroute2.mk b/package/python-pyroute2/python-pyroute2.mk new file mode 100644 index 00000000000..fffd5562130 --- /dev/null +++ b/package/python-pyroute2/python-pyroute2.mk @@ -0,0 +1,14 @@ +############################################################# +# +# python-pyroute2 +# +############################################################# + +PYTHON_PYROUTE2_VERSION = 0.3.15 +PYTHON_PYROUTE2_SOURCE = pyroute2-$(PYTHON_PYROUTE2_VERSION).tar.gz +PYTHON_PYROUTE2_SITE = https://pypi.python.org/packages/source/p/pyroute2 +PYTHON_PYROUTE2_LICENSE = Apache-2.0 or GPLv2+ +PYTHON_PYROUTE2_LICENSE_FILES = LICENSE.Apache.v2 LICENSE.GPL.v2 README.license.md +PYTHON_PYROUTE2_SETUP_TYPE = distutils + +$(eval $(python-package)) diff --git a/package/python-pysmb/Config.in b/package/python-pysmb/Config.in new file mode 100644 index 00000000000..42a9984ef7c --- /dev/null +++ b/package/python-pysmb/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_PYTHON_PYSMB + bool "python-pysmb" + depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_PYTHON_PYASN + help + pysmb is an experimental SMB/CIFS library written in Python. + It implements the client-side SMB/CIFS protocol (SMB1 and SMB2) + which allows your Python application to access and transfer files + to/from SMB/CIFS shared folders like your Windows file sharing and + Samba folders. + + https://miketeo.net/wp/index.php/projects/pysmb + +comment "python-pysmb needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/python-pysmb/python-pysmb.hash b/package/python-pysmb/python-pysmb.hash new file mode 100644 index 00000000000..b3c91fe2ca8 --- /dev/null +++ b/package/python-pysmb/python-pysmb.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=256b94bdeb63e6cc63f4b6a380b5918b, sha256 locally computed +md5 256b94bdeb63e6cc63f4b6a380b5918b pysmb-1.1.17.tar.gz +sha256 267def5aef2f0f41be4ba141b29dce9c23214667e84bddefd285b56fd481d813 pysmb-1.1.17.tar.gz diff --git a/package/python-pysmb/python-pysmb.mk b/package/python-pysmb/python-pysmb.mk new file mode 100644 index 00000000000..1a00a4ddc86 --- /dev/null +++ b/package/python-pysmb/python-pysmb.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pysmb +# +################################################################################ + +PYTHON_PYSMB_VERSION = 1.1.17 +PYTHON_PYSMB_SOURCE = pysmb-$(PYTHON_PYSMB_VERSION).tar.gz +PYTHON_PYSMB_SITE = https://pypi.python.org/packages/source/p/pysmb +PYTHON_PYSMB_LICENSE = libpng license +PYTHON_PYSMB_LICENSE_FILES = LICENSE +PYTHON_PYSMB_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-pytz/python-pytz.mk b/package/python-pytz/python-pytz.mk index c4f6d19e44a..79d00339341 100644 --- a/package/python-pytz/python-pytz.mk +++ b/package/python-pytz/python-pytz.mk @@ -6,7 +6,7 @@ PYTHON_PYTZ_VERSION = 2014.2 PYTHON_PYTZ_SOURCE = pytz-$(PYTHON_PYTZ_VERSION).tar.gz -PYTHON_PYTZ_SITE = http://pypi.python.org/packages/source/p/pytz/ +PYTHON_PYTZ_SITE = http://pypi.python.org/packages/source/p/pytz PYTHON_PYTZ_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-pyudev/0001-Workaround-finding-libudev-on-systems-without-ldconf.patch b/package/python-pyudev/0001-Workaround-finding-libudev-on-systems-without-ldconf.patch new file mode 100644 index 00000000000..93b9568593f --- /dev/null +++ b/package/python-pyudev/0001-Workaround-finding-libudev-on-systems-without-ldconf.patch @@ -0,0 +1,47 @@ +From e86a1c199d45c9751da67f947af202927dee07f8 Mon Sep 17 00:00:00 2001 +From: Yegor Yefremov +Date: Thu, 10 Dec 2015 08:44:55 +0100 +Subject: [PATCH] Workaround finding libudev on systems without ldconf + +This patch tries to load libudev.so directly without relying on +Python's find_library(). find_library() fails on systems +without library cache mechanism. + +Taken from pyudev issue 117 discussion: +https://github.com/pyudev/pyudev/pull/117 + +Signed-off-by: Yegor Yefremov +--- + src/pyudev/_libudev.py | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/pyudev/_libudev.py b/src/pyudev/_libudev.py +index a0de8fb..1348d17 100644 +--- a/src/pyudev/_libudev.py ++++ b/src/pyudev/_libudev.py +@@ -30,7 +30,7 @@ + from __future__ import (print_function, division, unicode_literals, + absolute_import) + +-from ctypes import (CDLL, Structure, POINTER, ++from ctypes import (cdll, CDLL, Structure, POINTER, + c_char, c_char_p, c_int, c_uint, c_ulonglong) + from ctypes.util import find_library + +@@ -265,10 +265,10 @@ def load_udev_library(): + + Raise :exc:`~exceptions.ImportError`, if the udev library was not found. + """ +- udev_library_name = find_library('udev') +- if not udev_library_name: ++ try: ++ libudev = cdll.LoadLibrary('libudev.so') ++ except OSError: + raise ImportError('No library named udev') +- libudev = CDLL(udev_library_name, use_errno=True) + # context function signature + for namespace, members in SIGNATURES.items(): + for funcname in members: +-- +2.1.4 + diff --git a/package/python-pyudev/Config.in b/package/python-pyudev/Config.in new file mode 100644 index 00000000000..137a983ae72 --- /dev/null +++ b/package/python-pyudev/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_PYTHON_PYUDEV + bool "python-pyudev" + depends on BR2_PACKAGE_HAS_UDEV + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 # runtime + select BR2_PACKAGE_PYTHON_SIX # runtime + help + pyudev is a LGPL licenced, pure Python 2/3 binding to libudev, + the device and hardware management and information library of Linux. + + https://github.com/pyudev/pyudev + +comment "python-pyudev needs udev /dev management" + depends on !BR2_PACKAGE_HAS_UDEV diff --git a/package/python-pyudev/python-pyudev.hash b/package/python-pyudev/python-pyudev.hash new file mode 100644 index 00000000000..adda9a4d257 --- /dev/null +++ b/package/python-pyudev/python-pyudev.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=07a60f5f7a6028e83725f759a1b9490a, sha256 locally computed +md5 07a60f5f7a6028e83725f759a1b9490a pyudev-0.18.tar.gz +sha256 83b315f74e29c3a4aa6ea38b6cf73b0bb7e37066d7a5d70972ac418a80aed62a pyudev-0.18.tar.gz diff --git a/package/python-pyudev/python-pyudev.mk b/package/python-pyudev/python-pyudev.mk new file mode 100644 index 00000000000..70c4faf8de9 --- /dev/null +++ b/package/python-pyudev/python-pyudev.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-pyudev +# +################################################################################ + +PYTHON_PYUDEV_VERSION = 0.18 +PYTHON_PYUDEV_SOURCE = pyudev-$(PYTHON_PYUDEV_VERSION).tar.gz +PYTHON_PYUDEV_SITE = https://pypi.python.org/packages/source/p/pyudev +PYTHON_PYUDEV_LICENSE = LGPLv2.1+ +PYTHON_PYUDEV_LICENSE_FILES = COPYING +PYTHON_PYUDEV_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-pyxml/Config.in b/package/python-pyxml/Config.in deleted file mode 100644 index 82316bab2f2..00000000000 --- a/package/python-pyxml/Config.in +++ /dev/null @@ -1,12 +0,0 @@ -config BR2_PACKAGE_PYTHON_PYXML - bool "python-pyxml" - depends on BR2_PACKAGE_PYTHON - select BR2_PACKAGE_EXPAT - help - This is the Python XML package. The distribution contains a - validating XML parser, an implementation of the SAX and DOM - programming interfaces, an interface to the Expat parser (and the - Expat parser itself), and a C helper module that can speed up - xmllib.py by a factor of 5. There's even documentation! - - http://pyxml.sourceforge.net/topics/index.html diff --git a/package/python-pyxml/python-pyxml.hash b/package/python-pyxml/python-pyxml.hash deleted file mode 100644 index df98c4655af..00000000000 --- a/package/python-pyxml/python-pyxml.hash +++ /dev/null @@ -1,2 +0,0 @@ -# Locally computed -sha256 9fab66f9584fb8e67aebd8745a5c97bf1c5a2e2e461adf68862bcec64e448c13 PyXML-0.8.4.tar.gz diff --git a/package/python-pyxml/python-pyxml.mk b/package/python-pyxml/python-pyxml.mk deleted file mode 100644 index 40435f4b19a..00000000000 --- a/package/python-pyxml/python-pyxml.mk +++ /dev/null @@ -1,17 +0,0 @@ -################################################################################ -# -# python-pyxml -# -################################################################################ - -PYTHON_PYXML_VERSION = 0.8.4 -PYTHON_PYXML_SOURCE = PyXML-$(PYTHON_PYXML_VERSION).tar.gz -PYTHON_PYXML_SITE = http://downloads.sourceforge.net/project/pyxml/pyxml/$(PYTHON_PYXML_VERSION)/ -PYTHON_PYXML_LICENSE = BSD-3c -PYTHON_PYXML_LICENSE_FILES = LICENCE -PYTHON_PYXML_SETUP_TYPE = distutils -PYTHON_PYXML_DEPENDENCIES = expat -PYTHON_PYXML_BUILD_OPTS = --with-libexpat=$(STAGING_DIR)/usr -PYTHON_PYXML_INSTALL_TARGET_OPTS = --with-libexpat=$(STAGING_DIR)/usr - -$(eval $(python-package)) diff --git a/package/python-pyyaml/python-pyyaml.mk b/package/python-pyyaml/python-pyyaml.mk index ef10dac922a..f3d72833db7 100644 --- a/package/python-pyyaml/python-pyyaml.mk +++ b/package/python-pyyaml/python-pyyaml.mk @@ -6,7 +6,7 @@ PYTHON_PYYAML_VERSION = 3.11 PYTHON_PYYAML_SOURCE = PyYAML-$(PYTHON_PYYAML_VERSION).tar.gz -PYTHON_PYYAML_SITE = https://pypi.python.org/packages/source/P/PyYAML/ +PYTHON_PYYAML_SITE = https://pypi.python.org/packages/source/P/PyYAML PYTHON_PYYAML_SETUP_TYPE = distutils PYTHON_PYYAML_LICENSE = Python software foundation license v2 PYTHON_PYYAML_LICENSE_FILES = LICENSE diff --git a/package/python-pyzmq/python-pyzmq.mk b/package/python-pyzmq/python-pyzmq.mk index 7f86b529547..0e787b1d22c 100644 --- a/package/python-pyzmq/python-pyzmq.mk +++ b/package/python-pyzmq/python-pyzmq.mk @@ -7,7 +7,7 @@ PYTHON_PYZMQ_VERSION = 14.3.1 PYTHON_PYZMQ_SOURCE = pyzmq-$(PYTHON_PYZMQ_VERSION).tar.gz PYTHON_PYZMQ_SITE = http://pypi.python.org/packages/source/p/pyzmq -PYTHON_PYZMQ_LICENSE = LGPLv3+ BSD-3c Apache-2.0 +PYTHON_PYZMQ_LICENSE = LGPLv3+, BSD-3c, Apache-2.0 # Apache license only online: http://www.apache.org/licenses/LICENSE-2.0 PYTHON_PYZMQ_LICENSE_FILES = COPYING.LESSER COPYING.BSD PYTHON_PYZMQ_DEPENDENCIES = zeromq diff --git a/package/python-requests/Config.in b/package/python-requests/Config.in index 3367cf07072..23ab3092d51 100644 --- a/package/python-requests/Config.in +++ b/package/python-requests/Config.in @@ -1,5 +1,7 @@ config BR2_PACKAGE_PYTHON_REQUESTS bool "python-requests" + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 # runtime help Requests is an Apache2 Licensed HTTP library, written in Python, for human beings. diff --git a/package/python-requests/python-requests.hash b/package/python-requests/python-requests.hash index d187dcd2a83..b567fe6adc8 100644 --- a/package/python-requests/python-requests.hash +++ b/package/python-requests/python-requests.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=02214b3a179e445545de4b7a98d3dd17, sha256 locally computed -md5 02214b3a179e445545de4b7a98d3dd17 requests-2.4.3.tar.gz -sha256 53c68313c5c6149b1a899234c000296e60a8900682accf73d6f0c6d608afc6b1 requests-2.4.3.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=0b7f480d19012ec52bab78292efd976d, sha256 locally computed +md5 0b7f480d19012ec52bab78292efd976d requests-2.9.1.tar.gz +sha256 c577815dd00f1394203fc44eb979724b098f88264a9ef898ee45b8e5e9cf587f requests-2.9.1.tar.gz diff --git a/package/python-requests/python-requests.mk b/package/python-requests/python-requests.mk index 5c12f1b560b..8cda2c5148d 100644 --- a/package/python-requests/python-requests.mk +++ b/package/python-requests/python-requests.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_REQUESTS_VERSION = 2.4.3 +PYTHON_REQUESTS_VERSION = 2.9.1 PYTHON_REQUESTS_SOURCE = requests-$(PYTHON_REQUESTS_VERSION).tar.gz PYTHON_REQUESTS_SITE = http://pypi.python.org/packages/source/r/requests PYTHON_REQUESTS_SETUP_TYPE = setuptools diff --git a/package/python-rtslib-fb/Config.in b/package/python-rtslib-fb/Config.in index 42a610cc5e5..7bae5604092 100644 --- a/package/python-rtslib-fb/Config.in +++ b/package/python-rtslib-fb/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_PYTHON_RTSLIB_FB bool "python-rtslib-fb" + select BR2_PACKAGE_PYTHON_SIX help rtslib-fb is an object-based Python library for configuring the LIO generic SCSI target, present in 3.x Linux kernel diff --git a/package/python-rtslib-fb/python-rtslib-fb.mk b/package/python-rtslib-fb/python-rtslib-fb.mk index d45c261323c..85bee0ba752 100644 --- a/package/python-rtslib-fb/python-rtslib-fb.mk +++ b/package/python-rtslib-fb/python-rtslib-fb.mk @@ -4,10 +4,11 @@ # ################################################################################ -PYTHON_RTSLIB_FB_VERSION = v2.1.fb50 +PYTHON_RTSLIB_FB_VERSION = v2.1.fb57 PYTHON_RTSLIB_FB_SITE = $(call github,agrover,rtslib-fb,$(PYTHON_RTSLIB_FB_VERSION)) PYTHON_RTSLIB_FB_LICENSE = Apache-2.0 PYTHON_RTSLIB_FB_LICENSE_FILES = COPYING PYTHON_RTSLIB_FB_SETUP_TYPE = setuptools +PYTHON_RTSLIB_FB_DEPENDENCIES = python-six $(eval $(python-package)) diff --git a/package/python-serial/Config.in b/package/python-serial/Config.in index 09a4c39257b..ca12d12e6e0 100644 --- a/package/python-serial/Config.in +++ b/package/python-serial/Config.in @@ -3,4 +3,4 @@ config BR2_PACKAGE_PYTHON_SERIAL help python-serial is a Python library to access serial ports. - http://pyserial.sf.net + https://github.com/pyserial/pyserial diff --git a/package/python-serial/python-serial.hash b/package/python-serial/python-serial.hash new file mode 100644 index 00000000000..74006243a86 --- /dev/null +++ b/package/python-serial/python-serial.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=f94bc6e141d60f17edc7bf8757c4d922, sha256 locally computed +md5 f94bc6e141d60f17edc7bf8757c4d922 pyserial-3.0.tar.gz +sha256 056c2d96c83c009d8d04aad43a90f91f10f6a97d42c0d9656c2655c63fb8ff07 pyserial-3.0.tar.gz diff --git a/package/python-serial/python-serial.mk b/package/python-serial/python-serial.mk index b9b5931c22c..ba871eade2f 100644 --- a/package/python-serial/python-serial.mk +++ b/package/python-serial/python-serial.mk @@ -4,11 +4,11 @@ # ################################################################################ -PYTHON_SERIAL_VERSION = 2.6 +PYTHON_SERIAL_VERSION = 3.0 PYTHON_SERIAL_SOURCE = pyserial-$(PYTHON_SERIAL_VERSION).tar.gz PYTHON_SERIAL_SITE = http://pypi.python.org/packages/source/p/pyserial PYTHON_SERIAL_LICENSE = Python Software Foundation License PYTHON_SERIAL_LICENSE_FILES = LICENSE.txt -PYTHON_SERIAL_SETUP_TYPE = distutils +PYTHON_SERIAL_SETUP_TYPE = setuptools $(eval $(python-package)) diff --git a/package/python-setuptools/0001-add-executable.patch b/package/python-setuptools/0001-add-executable.patch index 502d099cc65..1f8714eaeba 100644 --- a/package/python-setuptools/0001-add-executable.patch +++ b/package/python-setuptools/0001-add-executable.patch @@ -1,16 +1,30 @@ +From 9b3d307f8f6a1af88f3f810f5a6cf0835830e1e8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Mon, 7 Dec 2015 01:14:33 +0100 +Subject: [PATCH 1/1] add executable +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + Add a new --executable option to distribute so that we can force the shebang line in installed python scripts. [Thomas: refresh for setuptools 5.8.] +[Jörg: refresh for setuptools 18.7.1] Signed-off-by: Gustavo Zacarias Signed-off-by: Thomas Petazzoni +Signed-off-by: Jörg Krause +--- + setuptools/command/install.py | 2 ++ + setuptools/command/install_scripts.py | 9 +++++++++ + 2 files changed, 11 insertions(+) -Index: b/setuptools/command/install.py -=================================================================== +diff --git a/setuptools/command/install.py b/setuptools/command/install.py +index d2bca2e..b60ef19 100644 --- a/setuptools/command/install.py +++ b/setuptools/command/install.py -@@ -16,6 +16,7 @@ +@@ -16,6 +16,7 @@ class install(orig.install): """Use easy_install to install the package, w/dependencies""" user_options = orig.install.user_options + [ @@ -18,7 +32,7 @@ Index: b/setuptools/command/install.py ('old-and-unmanageable', None, "Try not to use this!"), ('single-version-externally-managed', None, "used by system package builders to create 'flat' eggs"), -@@ -31,6 +32,7 @@ +@@ -31,6 +32,7 @@ class install(orig.install): def initialize_options(self): orig.install.initialize_options(self) @@ -26,11 +40,11 @@ Index: b/setuptools/command/install.py self.old_and_unmanageable = None self.single_version_externally_managed = None -Index: b/setuptools/command/install_scripts.py -=================================================================== +diff --git a/setuptools/command/install_scripts.py b/setuptools/command/install_scripts.py +index be66cb2..07afaf8 100755 --- a/setuptools/command/install_scripts.py +++ b/setuptools/command/install_scripts.py -@@ -11,6 +11,13 @@ +@@ -11,6 +11,13 @@ class install_scripts(orig.install_scripts): def initialize_options(self): orig.install_scripts.initialize_options(self) self.no_ep = False @@ -43,13 +57,16 @@ Index: b/setuptools/command/install_scripts.py + ) def run(self): - from setuptools.command.easy_install import get_script_args -@@ -32,6 +39,8 @@ + import setuptools.command.easy_install as ei +@@ -31,6 +38,8 @@ class install_scripts(orig.install_scripts): ) bs_cmd = self.get_finalized_command('build_scripts') - executable = getattr(bs_cmd, 'executable', sys_executable) + exec_param = getattr(bs_cmd, 'executable', None) + if self.executable is not None: -+ executable = self.executable - is_wininst = getattr( - self.get_finalized_command("bdist_wininst"), '_is_running', False - ) ++ exec_param = self.executable + bw_cmd = self.get_finalized_command("bdist_wininst") + is_wininst = getattr(bw_cmd, '_is_running', False) + writer = ei.ScriptWriter +-- +2.6.3 + diff --git a/package/python-setuptools/Config.in b/package/python-setuptools/Config.in index 63c2b018170..c72c59fbc84 100644 --- a/package/python-setuptools/Config.in +++ b/package/python-setuptools/Config.in @@ -1,7 +1,9 @@ config BR2_PACKAGE_PYTHON_SETUPTOOLS bool "python-setuptools" - depends on BR2_PACKAGE_PYTHON - select BR2_PACKAGE_PYTHON_ZLIB + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 # runtime + select BR2_PACKAGE_PYTHON_PYEXPAT if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_PYEXPAT if BR2_PACKAGE_PYTHON3 # runtime help Download, build, install, upgrade, and uninstall Python packages. diff --git a/package/python-setuptools/python-setuptools.hash b/package/python-setuptools/python-setuptools.hash index 80c526dc363..88113fa1f9b 100644 --- a/package/python-setuptools/python-setuptools.hash +++ b/package/python-setuptools/python-setuptools.hash @@ -1,2 +1,4 @@ -# From https://pypi.python.org/pypi/setuptools/5.8 -md5 356480fdf03590cfdf4210cf8366bcaf setuptools-5.8.tar.gz +# From https://pypi.python.org/pypi/setuptools/18.7.1 +md5 a0984da9cd8d7b582e1fd7de67dfdbcc setuptools-18.7.1.tar.gz +# Locally calculated +sha256 aff36c95035e0b311eacb1434e3f7e85f5ccaad477773847e582978f8f45bd74 setuptools-18.7.1.tar.gz diff --git a/package/python-setuptools/python-setuptools.mk b/package/python-setuptools/python-setuptools.mk index fa90ed48293..15edc6fd07b 100644 --- a/package/python-setuptools/python-setuptools.mk +++ b/package/python-setuptools/python-setuptools.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_SETUPTOOLS_VERSION = 5.8 +PYTHON_SETUPTOOLS_VERSION = 18.7.1 PYTHON_SETUPTOOLS_SOURCE = setuptools-$(PYTHON_SETUPTOOLS_VERSION).tar.gz PYTHON_SETUPTOOLS_SITE = http://pypi.python.org/packages/source/s/setuptools PYTHON_SETUPTOOLS_LICENSE = Python Software Foundation or Zope Public License diff --git a/package/python-singledispatch/Config.in b/package/python-singledispatch/Config.in new file mode 100644 index 00000000000..192e516ba04 --- /dev/null +++ b/package/python-singledispatch/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_PYTHON_SINGLEDISPATCH + bool "python-singledispatch" + depends on BR2_PACKAGE_PYTHON + help + This library brings functools.singledispatch from + Python 3.4 to Python 2.6-3.3 + + https://pypi.python.org/pypi/singledispatch diff --git a/package/python-singledispatch/python-singledispatch.hash b/package/python-singledispatch/python-singledispatch.hash new file mode 100644 index 00000000000..8a96d21a95d --- /dev/null +++ b/package/python-singledispatch/python-singledispatch.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=af2fc6a3d6cc5a02d0bf54d909785fcb, sha256 locally computed +md5 af2fc6a3d6cc5a02d0bf54d909785fcb singledispatch-3.4.0.3.tar.gz +sha256 5b06af87df13818d14f08a028e42f566640aef80805c3b50c5056b086e3c2b9c singledispatch-3.4.0.3.tar.gz diff --git a/package/python-singledispatch/python-singledispatch.mk b/package/python-singledispatch/python-singledispatch.mk new file mode 100644 index 00000000000..7e1d5ac8e05 --- /dev/null +++ b/package/python-singledispatch/python-singledispatch.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-singledispatch +# +################################################################################ + +PYTHON_SINGLEDISPATCH_VERSION = 3.4.0.3 +PYTHON_SINGLEDISPATCH_SOURCE = singledispatch-$(PYTHON_SINGLEDISPATCH_VERSION).tar.gz +PYTHON_SINGLEDISPATCH_SITE = https://pypi.python.org/packages/source/s/singledispatch +PYTHON_SINGLEDISPATCH_LICENSE = MIT +PYTHON_SINGLEDISPATCH_LICENSE_FILES = setup.py +PYTHON_SINGLEDISPATCH_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-six/python-six.hash b/package/python-six/python-six.hash index 6121a083ec5..a90c79b75cb 100644 --- a/package/python-six/python-six.hash +++ b/package/python-six/python-six.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 e24052411fc4fbd1f672635537c3fc2330d9481b18c0317695b46259512c91d5 six-1.9.0.tar.gz +sha256 105f8d68616f8248e24bf0e9372ef04d3cc10104f1980f54d57b2ce73a5ad56a six-1.10.0.tar.gz diff --git a/package/python-six/python-six.mk b/package/python-six/python-six.mk index 24fd9765caf..0edefe346fd 100644 --- a/package/python-six/python-six.mk +++ b/package/python-six/python-six.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_SIX_VERSION = 1.9.0 +PYTHON_SIX_VERSION = 1.10.0 PYTHON_SIX_SOURCE = six-$(PYTHON_SIX_VERSION).tar.gz PYTHON_SIX_SITE = https://pypi.python.org/packages/source/s/six PYTHON_SIX_SETUP_TYPE = setuptools diff --git a/package/python-smbus-cffi/Config.in b/package/python-smbus-cffi/Config.in new file mode 100644 index 00000000000..32f005c0963 --- /dev/null +++ b/package/python-smbus-cffi/Config.in @@ -0,0 +1,10 @@ +config BR2_PACKAGE_PYTHON_SMBUS_CFFI + bool "python-smbus-cffi" + select BR2_PACKAGE_PYTHON_CFFI + help + This Python module allows SMBus access through the I2C /dev + interface on Linux hosts. The host kernel must have I2C + support, I2C device interface support, and a bus adapter + driver. + + https://github.com/bivab/smbus-cffi diff --git a/package/python-smbus-cffi/python-smbus-cffi.hash b/package/python-smbus-cffi/python-smbus-cffi.hash new file mode 100644 index 00000000000..1e28df99b72 --- /dev/null +++ b/package/python-smbus-cffi/python-smbus-cffi.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=f621c871bd658ee665751ad78e3b2df9, sha256 locally computed +md5 f621c871bd658ee665751ad78e3b2df9 smbus-cffi-0.5.1.tar.gz +sha256 fb4195aaabfc01586863f60d3190b5cb1bf8f12622fd597e23e48768dad6bde8 smbus-cffi-0.5.1.tar.gz diff --git a/package/python-smbus-cffi/python-smbus-cffi.mk b/package/python-smbus-cffi/python-smbus-cffi.mk new file mode 100644 index 00000000000..5fd9558e877 --- /dev/null +++ b/package/python-smbus-cffi/python-smbus-cffi.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# python-smbus-cffi +# +################################################################################ + +PYTHON_SMBUS_CFFI_VERSION = 0.5.1 +PYTHON_SMBUS_CFFI_SOURCE = smbus-cffi-$(PYTHON_SMBUS_CFFI_VERSION).tar.gz +PYTHON_SMBUS_CFFI_SITE = https://pypi.python.org/packages/source/s/smbus-cffi +PYTHON_SMBUS_CFFI_SETUP_TYPE = setuptools +PYTHON_SMBUS_CFFI_LICENSE = GPLv2 +PYTHON_SMBUS_CFFI_LICENSE_FILES = LICENSE +PYTHON_SMBUS_CFFI_DEPENDENCIES = host-python-cffi + +$(eval $(python-package)) diff --git a/package/python-spidev/0001-Fix-build-with-musl-libc.patch b/package/python-spidev/0001-Fix-build-with-musl-libc.patch new file mode 100644 index 00000000000..b22a73aa676 --- /dev/null +++ b/package/python-spidev/0001-Fix-build-with-musl-libc.patch @@ -0,0 +1,43 @@ +From 3d6e59bff088783f249a60a5f1c900c7f99f933b Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 31 Jan 2016 15:03:50 +0100 +Subject: [PATCH 1/1] Fix build with musl libc +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Include missing header to prevent build error: + +spidev_module.c: In function ‘SpiDev_xfer’: +spidev_module.c:330:27: error: ‘_IOC_SIZEBITS’ undeclared (first use in this function) + status = ioctl(self->fd, SPI_IOC_MESSAGE(1), &xfer); + ^ +spidev_module.c:330:27: note: each undeclared identifier is reported only once for each function it appears in +spidev_module.c: In function ‘SpiDev_xfer2’: +spidev_module.c:421:27: error: ‘_IOC_SIZEBITS’ undeclared (first use in this function) + status = ioctl(self->fd, SPI_IOC_MESSAGE(1), &xfer); + ^ + +Signed-off-by: Bernd Kuhls bernd.kuhls@t-online.de +Signed-off-by: Bernd Kuhls +--- +Patch sent upstream: https://github.com/doceme/py-spidev/pull/39 + + spidev_module.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/spidev_module.c b/spidev_module.c +index d58ef07..bccaacf 100644 +--- a/spidev_module.c ++++ b/spidev_module.c +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + + #define SPIDEV_MAXPATH 4096 + +-- +2.7.0 + diff --git a/package/python-spidev/python-spidev.hash b/package/python-spidev/python-spidev.hash new file mode 100644 index 00000000000..49e8db8a867 --- /dev/null +++ b/package/python-spidev/python-spidev.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 355391e9ad3024950590626b080324394c12e75bb21923dbd56a978a1eac6ac7 spidev-3.1.tar.gz diff --git a/package/python-spidev/python-spidev.mk b/package/python-spidev/python-spidev.mk index 14103f32c50..0a8dd15646c 100644 --- a/package/python-spidev/python-spidev.mk +++ b/package/python-spidev/python-spidev.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_SPIDEV_VERSION = 3.0 +PYTHON_SPIDEV_VERSION = 3.1 PYTHON_SPIDEV_SOURCE = spidev-$(PYTHON_SPIDEV_VERSION).tar.gz PYTHON_SPIDEV_SITE = https://pypi.python.org/packages/source/s/spidev PYTHON_SPIDEV_SETUP_TYPE = distutils diff --git a/package/python-tornado/Config.in b/package/python-tornado/Config.in index 85c78914590..ac866824eca 100644 --- a/package/python-tornado/Config.in +++ b/package/python-tornado/Config.in @@ -2,6 +2,8 @@ config BR2_PACKAGE_PYTHON_TORNADO bool "python-tornado" select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON # runtime select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 # runtime + select BR2_PACKAGE_PYTHON_SINGLEDISPATCH if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON_BACKPORTS_ABC # runtime help Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. diff --git a/package/python-tornado/python-tornado.hash b/package/python-tornado/python-tornado.hash index 88e3956d640..e0f3c39a94f 100644 --- a/package/python-tornado/python-tornado.hash +++ b/package/python-tornado/python-tornado.hash @@ -1,3 +1,3 @@ # md5 from https://pypi.python.org/pypi?:action=show_md5&digest=c548d7b77a11d523c3d7255bd7fd6df8, sha256 locally computed -md5 c548d7b77a11d523c3d7255bd7fd6df8 tornado-4.2.tar.gz -sha256 e8b1207da67dbdceebfb291292b4ef1b547d6171525bec1b366853f923456a5f tornado-4.2.tar.gz +md5 d13a99dc0b60ba69f5f8ec1235e5b232 tornado-4.3.tar.gz +sha256 c9c2d32593d16eedf2cec1b6a41893626a2649b40b21ca9c4cac4243bde2efbf tornado-4.3.tar.gz diff --git a/package/python-tornado/python-tornado.mk b/package/python-tornado/python-tornado.mk index a8d1f949240..64809b79022 100644 --- a/package/python-tornado/python-tornado.mk +++ b/package/python-tornado/python-tornado.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_TORNADO_VERSION = 4.2 +PYTHON_TORNADO_VERSION = 4.3 PYTHON_TORNADO_SOURCE = tornado-$(PYTHON_TORNADO_VERSION).tar.gz PYTHON_TORNADO_SITE = https://pypi.python.org/packages/source/t/tornado PYTHON_TORNADO_LICENSE = Apache-2.0 diff --git a/package/python-twisted/Config.in b/package/python-twisted/Config.in index b3021017a89..1221fc25bdf 100644 --- a/package/python-twisted/Config.in +++ b/package/python-twisted/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_PYTHON_TWISTED bool "python-twisted" - depends on BR2_PACKAGE_PYTHON select BR2_PACKAGE_PYTHON_ZOPE_INTERFACE # runtime help Twisted is an event-driven networking engine written in Python. diff --git a/package/python-twisted/python-twisted.hash b/package/python-twisted/python-twisted.hash index 937cab3f716..9a9436fa5cc 100644 --- a/package/python-twisted/python-twisted.hash +++ b/package/python-twisted/python-twisted.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 038096be8723b678e2ead323b14d0d3e2db161e0c7ce3c98fdd18ca5869acb71 Twisted-14.0.2.tar.bz2 +sha256 a8046804a0dfae090234bbb90fc560a6cc11a208b3d048b55244c79c1945c17f Twisted-15.5.0.tar.bz2 diff --git a/package/python-twisted/python-twisted.mk b/package/python-twisted/python-twisted.mk index a2e24860a38..29fd510e8be 100644 --- a/package/python-twisted/python-twisted.mk +++ b/package/python-twisted/python-twisted.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_TWISTED_VERSION = 14.0.2 +PYTHON_TWISTED_VERSION = 15.5.0 PYTHON_TWISTED_SOURCE = Twisted-$(PYTHON_TWISTED_VERSION).tar.bz2 PYTHON_TWISTED_SITE = https://pypi.python.org/packages/source/T/Twisted PYTHON_TWISTED_SETUP_TYPE = setuptools diff --git a/package/python-urllib3/Config.in b/package/python-urllib3/Config.in new file mode 100644 index 00000000000..21d3f6748e8 --- /dev/null +++ b/package/python-urllib3/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_PYTHON_URLLIB3 + bool "python-urllib3" + select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON # runtime + select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 # runtime + help + Python HTTP library with thread-safe connection pooling, file + post support, sanity friendly, and more. + + http://urllib3.readthedocs.org/ diff --git a/package/python-urllib3/python-urllib3.hash b/package/python-urllib3/python-urllib3.hash new file mode 100644 index 00000000000..266b8e90235 --- /dev/null +++ b/package/python-urllib3/python-urllib3.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=5e1407428ac33b521c71a7ac273b3847, sha256 locally computed +md5 5e1407428ac33b521c71a7ac273b3847 urllib3-1.14.tar.gz +sha256 dd4fb13a4ce50b18338c7e4d665b21fd38632c5d4b1d9f1a1379276bd3c08d37 urllib3-1.14.tar.gz diff --git a/package/python-urllib3/python-urllib3.mk b/package/python-urllib3/python-urllib3.mk new file mode 100644 index 00000000000..0101053e9c6 --- /dev/null +++ b/package/python-urllib3/python-urllib3.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-urllib3 +# +################################################################################ + +PYTHON_URLLIB3_VERSION = 1.14 +PYTHON_URLLIB3_SOURCE = urllib3-$(PYTHON_URLLIB3_VERSION).tar.gz +PYTHON_URLLIB3_SITE = https://pypi.python.org/packages/source/u/urllib3 +PYTHON_URLLIB3_LICENSE = MIT +PYTHON_URLLIB3_LICENSE_FILES = LICENSE.txt +PYTHON_URLLIB3_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/python-urwid/python-urwid.hash b/package/python-urwid/python-urwid.hash new file mode 100644 index 00000000000..eceed9d555d --- /dev/null +++ b/package/python-urwid/python-urwid.hash @@ -0,0 +1,3 @@ +# md5 from https://pypi.python.org/pypi/urwid/1.3.0, sha256 locally computed +md5 a989acd54f4ff1a554add464803a9175 urwid-1.3.0.tar.gz +sha256 29f04fad3bf0a79c5491f7ebec2d50fa086e9d16359896c9204c6a92bc07aba2 urwid-1.3.0.tar.gz diff --git a/package/python-urwid/python-urwid.mk b/package/python-urwid/python-urwid.mk index 4f1be466845..1cd30220720 100644 --- a/package/python-urwid/python-urwid.mk +++ b/package/python-urwid/python-urwid.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_URWID_VERSION = 1.2.1 +PYTHON_URWID_VERSION = 1.3.0 PYTHON_URWID_SOURCE = urwid-$(PYTHON_URWID_VERSION).tar.gz PYTHON_URWID_SITE = https://pypi.python.org/packages/source/u/urwid PYTHON_URWID_LICENSE = LGPLv2.1+ diff --git a/package/python-web2py/S51web2py b/package/python-web2py/S51web2py index 1da9ef4fd36..8d229e16cfd 100644 --- a/package/python-web2py/S51web2py +++ b/package/python-web2py/S51web2py @@ -2,7 +2,7 @@ case "$1" in start) - echo -n "Starting web2py: " + printf "Starting web2py: " start-stop-daemon -S -q -m -p /run/web2py.pid \ -c www-data \ -b -x /var/www/web2py/web2py.py \ @@ -10,7 +10,7 @@ case "$1" in [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping web2py: " + printf "Stopping web2py: " start-stop-daemon -K -q -p /run/web2py.pid [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/python-web2py/python-web2py.hash b/package/python-web2py/python-web2py.hash new file mode 100644 index 00000000000..3de8dbf4de5 --- /dev/null +++ b/package/python-web2py/python-web2py.hash @@ -0,0 +1,2 @@ +# sha256 locally computed +sha256 7e22a5624d8d2909e165110f0bec6b43ee36ff6834d689f4027e06dece662031 python-web2py-R-2.12.3.tar.gz diff --git a/package/python-web2py/python-web2py.mk b/package/python-web2py/python-web2py.mk index 313114ad699..38faabc55d4 100644 --- a/package/python-web2py/python-web2py.mk +++ b/package/python-web2py/python-web2py.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_WEB2PY_VERSION = R-2.11.2 +PYTHON_WEB2PY_VERSION = R-2.12.3 PYTHON_WEB2PY_SITE = $(call github,web2py,web2py,$(PYTHON_WEB2PY_VERSION)) PYTHON_WEB2PY_LICENSE = LGPLv3 PYTHON_WEB2PY_LICENSE_FILES = LICENSE @@ -32,8 +32,16 @@ define PYTHON_WEB2PY_INSTALL_INIT_SYSTEMD $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/web2py.service endef +# www-data user and group are used for web2py. Because these user and group +# are already set by buildroot, it is not necessary to redefine them. +# See system/skeleton/etc/passwd +# username: www-data uid: 33 +# groupname: www-data gid: 33 +# +# So, we just need to create the directories used by web2py with the right +# ownership. define PYTHON_WEB2PY_PERMISSIONS - /var/www/web2py r 750 www-data www-data - - - - - + /var/www/web2py r 750 33 33 - - - - - endef $(eval $(generic-package)) diff --git a/package/python-webpy/python-webpy.hash b/package/python-webpy/python-webpy.hash new file mode 100644 index 00000000000..0e0a8d0fb8c --- /dev/null +++ b/package/python-webpy/python-webpy.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 c3cb8930739294103b1ad109e5fd1d0efae67c06d5b6d59fce5b5a2ee6b21624 python-webpy-webpy-0.37.tar.gz diff --git a/package/python-webpy/python-webpy.mk b/package/python-webpy/python-webpy.mk index ef5b6b3d78f..8bcc8ec37fa 100644 --- a/package/python-webpy/python-webpy.mk +++ b/package/python-webpy/python-webpy.mk @@ -4,8 +4,8 @@ # ################################################################################ -PYTHON_WEBPY_VERSION = 0.37 -PYTHON_WEBPY_SITE = $(call github,webpy,webpy,webpy-$(PYTHON_WEBPY_VERSION)) +PYTHON_WEBPY_VERSION = webpy-0.37 +PYTHON_WEBPY_SITE = $(call github,webpy,webpy,$(PYTHON_WEBPY_VERSION)) PYTHON_WEBPY_SETUP_TYPE = distutils PYTHON_WEBPY_LICENSE = Public Domain, CherryPy License PYTHON_WEBPY_LICENSE_FILES = LICENSE.txt web/wsgiserver/LICENSE.txt diff --git a/package/python-werkzeug/python-werkzeug.hash b/package/python-werkzeug/python-werkzeug.hash index 3dcc5b4eeda..f833b89a4d2 100644 --- a/package/python-werkzeug/python-werkzeug.hash +++ b/package/python-werkzeug/python-werkzeug.hash @@ -1,3 +1,3 @@ -# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=f7afcadc03b0f2267bdc156c34586043, sha256 locally computed -md5 42ebf43b19475bf856fde740050d7707 Werkzeug-0.10.tar.gz -sha256 9a97a6fcf87390172748da9e5250710b352dff18e979db925d276112cdcfa7ac Werkzeug-0.10.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=9479bc7ea6a42c2d0d82929d3926df67, sha256 locally computed +md5 9479bc7ea6a42c2d0d82929d3926df67 Werkzeug-0.11.3.tar.gz +sha256 eb5f700a9bfc96420b055635af9002d3662e43d80c3ffd31f224c25bc0d5f462 Werkzeug-0.11.3.tar.gz diff --git a/package/python-werkzeug/python-werkzeug.mk b/package/python-werkzeug/python-werkzeug.mk index 41ae43061d0..3df481a6353 100644 --- a/package/python-werkzeug/python-werkzeug.mk +++ b/package/python-werkzeug/python-werkzeug.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_WERKZEUG_VERSION = 0.10 +PYTHON_WERKZEUG_VERSION = 0.11.3 PYTHON_WERKZEUG_SOURCE = Werkzeug-$(PYTHON_WERKZEUG_VERSION).tar.gz PYTHON_WERKZEUG_SITE = http://pypi.python.org/packages/source/W/Werkzeug PYTHON_WERKZEUG_SETUP_TYPE = setuptools diff --git a/package/python-zope-interface/python-zope-interface.hash b/package/python-zope-interface/python-zope-interface.hash index bdd05d78a84..2c161f3766b 100644 --- a/package/python-zope-interface/python-zope-interface.hash +++ b/package/python-zope-interface/python-zope-interface.hash @@ -1,2 +1,3 @@ -# Locally computed: -sha256 441fefcac1fbac57c55239452557d3598571ab82395198b2565a29d45d1232f6 zope.interface-4.1.2.tar.gz +# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=9ae3d24c0c7415deb249dd1a132f0f79, sha256 locally computed +md5 9ae3d24c0c7415deb249dd1a132f0f79 zope.interface-4.1.3.tar.gz +sha256 2e221a9eec7ccc58889a278ea13dcfed5ef939d80b07819a9a8b3cb1c681484f zope.interface-4.1.3.tar.gz diff --git a/package/python-zope-interface/python-zope-interface.mk b/package/python-zope-interface/python-zope-interface.mk index dea620393ff..ac3c230149e 100644 --- a/package/python-zope-interface/python-zope-interface.mk +++ b/package/python-zope-interface/python-zope-interface.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_ZOPE_INTERFACE_VERSION = 4.1.2 +PYTHON_ZOPE_INTERFACE_VERSION = 4.1.3 PYTHON_ZOPE_INTERFACE_SOURCE = zope.interface-$(PYTHON_ZOPE_INTERFACE_VERSION).tar.gz PYTHON_ZOPE_INTERFACE_SITE = https://pypi.python.org/packages/source/z/zope.interface PYTHON_ZOPE_INTERFACE_SETUP_TYPE = setuptools diff --git a/package/python/python.hash b/package/python/python.hash index ef8dd981209..d1cf1ba0211 100644 --- a/package/python/python.hash +++ b/package/python/python.hash @@ -1,4 +1,4 @@ -# From https://www.python.org/downloads/release/python-2710/ -md5 c685ef0b8e9f27b5e3db5db12b268ac6 Python-2.7.10.tar.xz +# From https://www.python.org/downloads/release/python-2711/ +md5 1dbcc848b4cd8399a8199d000f9f823c Python-2.7.11.tar.xz # Locally calculated -sha256 1cd3730781b91caf0fa1c4d472dc29274186480161a150294c42ce9b5c5effc0 Python-2.7.10.tar.xz +sha256 962b4c45af50124ea61f11a30deb4342fc0bc21126790fa1d7f6c79809413f46 Python-2.7.11.tar.xz diff --git a/package/python/python.mk b/package/python/python.mk index 80ffbdeeee7..4ecd0d1d894 100644 --- a/package/python/python.mk +++ b/package/python/python.mk @@ -5,7 +5,7 @@ ################################################################################ PYTHON_VERSION_MAJOR = 2.7 -PYTHON_VERSION = $(PYTHON_VERSION_MAJOR).10 +PYTHON_VERSION = $(PYTHON_VERSION_MAJOR).11 PYTHON_SOURCE = Python-$(PYTHON_VERSION).tar.xz PYTHON_SITE = http://python.org/ftp/python/$(PYTHON_VERSION) PYTHON_LICENSE = Python software foundation license v2, others diff --git a/package/python3/001-remove-host-header-path.patch b/package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch similarity index 80% rename from package/python3/001-remove-host-header-path.patch rename to package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch index 1eff6083222..3fafd903a1c 100644 --- a/package/python3/001-remove-host-header-path.patch +++ b/package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch @@ -1,4 +1,7 @@ -setup.py: do not add invalid header locations +From 03a4c313f42ea1bbdfc4c64a285b3930766c2b23 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:28:34 +0100 +Subject: [PATCH] setup.py: do not add invalid header locations This piece of code incorrectly adds /usr/include to self.compiler.include_dirs, and results in the following invalid @@ -20,11 +23,15 @@ The -I/usr/include is wrong when cross compiling, so we disable adding INCLUDEDIR and LIBDIR from the host when cross compiling. Signed-off-by: Thomas Petazzoni -Index: b/setup.py -=================================================================== +--- + setup.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 2779658..d3bf8e5 100644 --- a/setup.py +++ b/setup.py -@@ -493,7 +493,8 @@ +@@ -493,7 +493,8 @@ class PyBuildExt(build_ext): add_dir_to_list(dir_list, directory) if os.path.normpath(sys.base_prefix) != '/usr' \ @@ -34,3 +41,6 @@ Index: b/setup.py # OSX note: Don't add LIBDIR and INCLUDEDIR to building a framework # (PYTHONFRAMEWORK is set) to avoid # linking problems when # building a framework with different architectures than +-- +2.6.4 + diff --git a/package/python3/003-sysconfigdata-install-location.patch b/package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch similarity index 76% rename from package/python3/003-sysconfigdata-install-location.patch rename to package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch index cd01ccfbdbf..57b55fb12c9 100644 --- a/package/python3/003-sysconfigdata-install-location.patch +++ b/package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch @@ -1,4 +1,7 @@ -Change the install location of _sysconfigdata.py +From 2f706a2ba92c88f1c8288e34d1937b6ba0e0214c Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:29:04 +0100 +Subject: [PATCH] Change the install location of _sysconfigdata.py The _sysconfigdata.py module contains definitions that are needed when building Python modules. In cross-compilation mode, when building @@ -16,12 +19,16 @@ this directory gets added to the PYTHONPATH of the host Python interpreter when building Python modules for the target. Signed-off-by: Thomas Petazzoni +--- + Makefile.pre.in | 12 ++++++++++-- + configure.ac | 2 +- + 2 files changed, 11 insertions(+), 3 deletions(-) -Index: b/Makefile.pre.in -=================================================================== +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 76aef28..58dab28 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -559,6 +559,9 @@ +@@ -559,6 +559,9 @@ pybuilddir.txt: $(BUILDPYTHON) rm -f ./pybuilddir.txt ; \ exit 1 ; \ fi @@ -31,7 +38,7 @@ Index: b/Makefile.pre.in # Build the shared modules # Under GNU make, MAKEFLAGS are sorted and normalized; the 's' for -@@ -1197,7 +1200,7 @@ +@@ -1197,7 +1200,7 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c else true; \ fi; \ done @@ -40,7 +47,7 @@ Index: b/Makefile.pre.in do \ if test -x $$i; then \ $(INSTALL_SCRIPT) $$i $(DESTDIR)$(LIBDEST); \ -@@ -1207,6 +1210,11 @@ +@@ -1207,6 +1210,11 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c echo $(INSTALL_DATA) $$i $(LIBDEST); \ fi; \ done @@ -52,7 +59,7 @@ Index: b/Makefile.pre.in @for d in $(LIBSUBDIRS); \ do \ a=$(srcdir)/Lib/$$d; \ -@@ -1533,7 +1541,7 @@ +@@ -1533,7 +1541,7 @@ clean: pycremoval find build -name 'fficonfig.h' -exec rm -f {} ';' || true find build -name '*.py' -exec rm -f {} ';' || true find build -name '*.py[co]' -exec rm -f {} ';' || true @@ -61,11 +68,11 @@ Index: b/Makefile.pre.in -rm -f Lib/lib2to3/*Grammar*.pickle -rm -f Modules/_testembed Modules/_freeze_importlib -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index a0d0afa..7b491b4 100644 --- a/configure.ac +++ b/configure.ac -@@ -70,7 +70,7 @@ +@@ -70,7 +70,7 @@ if test "$cross_compiling" = yes; then AC_MSG_ERROR([python$PACKAGE_VERSION interpreter not found]) fi AC_MSG_RESULT($interp) @@ -74,3 +81,6 @@ Index: b/configure.ac fi elif test "$cross_compiling" = maybe; then AC_MSG_ERROR([Cross compiling required --host=HOST-TUPLE and --build=ARCH]) +-- +2.6.4 + diff --git a/package/python3/005-pyc-pyo-conditional.patch b/package/python3/0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch similarity index 65% rename from package/python3/005-pyc-pyo-conditional.patch rename to package/python3/0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch index c3b159da769..03684afec52 100644 --- a/package/python3/005-pyc-pyo-conditional.patch +++ b/package/python3/0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch @@ -1,45 +1,60 @@ -Index: b/Makefile.pre.in -=================================================================== +From 7c5338161263c290f18b1ff90859084d314be98c Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:29:35 +0100 +Subject: [PATCH] Make the build of pyc and pyo files conditional + +This commit adds two new configure options: --disable-pyc-build and +--disable-pyo-build to disable the compilation of pyc and pyo files +respectively. + +Signed-off-by: Thomas Petazzoni +--- + Makefile.pre.in | 8 ++++++++ + configure.ac | 12 ++++++++++++ + 2 files changed, 20 insertions(+) + +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 58dab28..f1bdd99 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1248,24 +1248,32 @@ +@@ -1245,24 +1245,32 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \ $(DESTDIR)$(LIBDEST)/distutils/tests ; \ fi +ifeq (@PYC_BUILD@,yes) -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST) -f $(STDLIB_CACHE_FLAGS) \ + -d $(LIBDEST) -f \ -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ $(DESTDIR)$(LIBDEST) +endif +ifeq (@PYO_BUILD@,yes) -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST) -f $(STDLIB_CACHE_FLAGS) \ + -d $(LIBDEST) -f \ -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ $(DESTDIR)$(LIBDEST) +endif +ifeq (@PYC_BUILD@,yes) -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST)/site-packages -f $(STDLIB_CACHE_FLAGS) \ + -d $(LIBDEST)/site-packages -f \ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages +endif +ifeq (@PYO_BUILD@,yes) -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ - -d $(LIBDEST)/site-packages -f $(STDLIB_CACHE_FLAGS) \ + -d $(LIBDEST)/site-packages -f \ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages +endif -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index 7b491b4..f2c4705 100644 --- a/configure.ac +++ b/configure.ac -@@ -939,6 +939,18 @@ +@@ -922,6 +922,18 @@ fi AC_MSG_CHECKING(LDLIBRARY) @@ -58,3 +73,6 @@ Index: b/configure.ac # MacOSX framework builds need more magic. LDLIBRARY is the dynamic # library that we build, but we do not want to link against it (we # will find it with a -framework option). For this reason there is an +-- +2.6.4 + diff --git a/package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch b/package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch new file mode 100644 index 00000000000..da2a65bc2f2 --- /dev/null +++ b/package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch @@ -0,0 +1,27 @@ +From ef95d6a49f17522ed120def8093fa2fc0b86cbc8 Mon Sep 17 00:00:00 2001 +From: Vanya Sergeev +Date: Wed, 23 Dec 2015 11:30:33 +0100 +Subject: [PATCH] Disable buggy_getaddrinfo configure test when cross-compiling + with IPv6 support + +Signed-off-by: Vanya Sergeev +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index f2c4705..6342b81 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -3415,7 +3415,7 @@ fi + + AC_MSG_RESULT($ac_cv_buggy_getaddrinfo) + +-if test $have_getaddrinfo = no || test "$ac_cv_buggy_getaddrinfo" = yes ++if test $have_getaddrinfo = no || test "$cross_compiling" != "yes" -a "$ac_cv_buggy_getaddrinfo" = yes + then + if test $ipv6 = yes + then +-- +2.6.4 + diff --git a/package/python3/007-disable-extensions.patch b/package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch similarity index 77% rename from package/python3/007-disable-extensions.patch rename to package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch index ce931f7284b..4a32bb191b5 100644 --- a/package/python3/007-disable-extensions.patch +++ b/package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch @@ -1,4 +1,7 @@ -Add infrastructure to disable the build of certain extensions +From 9eb1076b61e83647028a2f6b665b6f9afcb793b0 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:31:08 +0100 +Subject: [PATCH] Add infrastructure to disable the build of certain extensions Some of the extensions part of the Python core have dependencies on external libraries (sqlite, tk, etc.) or are relatively big and not @@ -33,16 +36,16 @@ then extended by Thomas Petazzoni Signed-off-by: Thomas Petazzoni --- - Makefile.pre.in | 4 ++++ - configure.ac | 2 ++ - setup.py | 5 ++++- - 3 files changed, 10 insertions(+), 1 deletion(-) + Makefile.pre.in | 6 +++++- + configure.ac | 2 ++ + setup.py | 5 ++++- + 3 files changed, 11 insertions(+), 2 deletions(-) -Index: b/Makefile.pre.in -=================================================================== +diff --git a/Makefile.pre.in b/Makefile.pre.in +index f1bdd99..e0f9e0f 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -180,6 +180,8 @@ +@@ -177,6 +177,8 @@ FILEMODE= 644 # configure script arguments CONFIG_ARGS= @CONFIG_ARGS@ @@ -51,7 +54,7 @@ Index: b/Makefile.pre.in # Subdirectories with code SRCDIRS= @SRCDIRS@ -@@ -577,6 +579,7 @@ +@@ -574,6 +576,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt esac; \ $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \ @@ -59,7 +62,7 @@ Index: b/Makefile.pre.in $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build # Build static library -@@ -1387,7 +1390,8 @@ +@@ -1384,7 +1387,8 @@ libainstall: all python-config # Install the dynamically loadable modules # This goes into $(exec_prefix) sharedinstall: sharedmods @@ -69,11 +72,11 @@ Index: b/Makefile.pre.in --prefix=$(prefix) \ --install-scripts=$(BINDIR) \ --install-platlib=$(DESTSHARED) \ -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index 6342b81..a3026b8 100644 --- a/configure.ac +++ b/configure.ac -@@ -2369,6 +2369,8 @@ +@@ -2352,6 +2352,8 @@ LIBS="$withval $LIBS" PKG_PROG_PKG_CONFIG @@ -82,11 +85,11 @@ Index: b/configure.ac # Check for use of the system expat library AC_MSG_CHECKING(for --with-system-expat) AC_ARG_WITH(system_expat, -Index: b/setup.py -=================================================================== +diff --git a/setup.py b/setup.py +index d3bf8e5..2a504d2 100644 --- a/setup.py +++ b/setup.py -@@ -39,7 +39,10 @@ +@@ -39,7 +39,10 @@ host_platform = get_platform() COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig.get_config_var("CONFIG_ARGS")) # This global variable is used to hold the list of modules to be disabled. @@ -98,3 +101,6 @@ Index: b/setup.py def add_dir_to_list(dirlist, dir): """Add the directory 'dir' to the list 'dirlist' (after any relative +-- +2.6.4 + diff --git a/package/python3/008-distutils-sysconfig-use-sysconfigdata.patch b/package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch similarity index 69% rename from package/python3/008-distutils-sysconfig-use-sysconfigdata.patch rename to package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch index d0758b15e68..dcf32d6fece 100644 --- a/package/python3/008-distutils-sysconfig-use-sysconfigdata.patch +++ b/package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch @@ -1,8 +1,21 @@ -Index: b/Lib/distutils/sysconfig.py -=================================================================== +From bdb9cccdc2993e43af1e57ad3b8b0055bab64ba0 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:32:23 +0100 +Subject: [PATCH] distutils/sysconfig: use sysconfigdata + +In order to make the use of sysconfig cross-compilation compatible, +use _sysconfigdata. + +Signed-off-by: Thomas Petazzoni +--- + Lib/distutils/sysconfig.py | 37 ++++--------------------------------- + 1 file changed, 4 insertions(+), 33 deletions(-) + +diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py +index a1452fe..1df20ad 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py -@@ -423,40 +423,11 @@ +@@ -423,40 +423,11 @@ def expand_makefile_vars(s, vars): _config_vars = None def _init_posix(): @@ -47,3 +60,6 @@ Index: b/Lib/distutils/sysconfig.py def _init_nt(): """Initialize the module as appropriate for NT""" +-- +2.6.4 + diff --git a/package/python3/009-distutils-use-python-sysroot.patch b/package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch similarity index 76% rename from package/python3/009-distutils-use-python-sysroot.patch rename to package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch index 06f203932b9..59d4ccd6d2f 100644 --- a/package/python3/009-distutils-use-python-sysroot.patch +++ b/package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch @@ -1,4 +1,7 @@ -Adjust library/header paths for cross-compilation +From 678143ce6161379a3eebc20db6634f0c247f8605 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:33:14 +0100 +Subject: [PATCH] Adjust library/header paths for cross-compilation When cross-compiling third-party extensions, the get_python_inc() or get_python_lib() can be called, to return the path to headers or @@ -12,12 +15,32 @@ values, and get correct header/library paths when cross-compiling third-party Python modules. Signed-off-by: Thomas Petazzoni +--- + Lib/distutils/command/build_ext.py | 5 ++++- + Lib/distutils/sysconfig.py | 15 +++++++++++---- + 2 files changed, 15 insertions(+), 5 deletions(-) -Index: b/Lib/distutils/sysconfig.py -=================================================================== +diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py +index acbe648..494a8c9 100644 +--- a/Lib/distutils/command/build_ext.py ++++ b/Lib/distutils/command/build_ext.py +@@ -239,7 +239,10 @@ class build_ext(Command): + if (sysconfig.get_config_var('Py_ENABLE_SHARED')): + if not sysconfig.python_build: + # building third party extensions +- self.library_dirs.append(sysconfig.get_config_var('LIBDIR')) ++ libdir = sysconfig.get_config_var('LIBDIR') ++ if "_python_sysroot" in os.environ: ++ libdir = os.environ.get("_python_sysroot") + libdir ++ self.library_dirs.append(libdir) + else: + # building python standard extensions + self.library_dirs.append('.') +diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py +index 1df20ad..905d280 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py -@@ -16,10 +16,17 @@ +@@ -16,10 +16,17 @@ import sys from .errors import DistutilsPlatformError # These are needed in a couple of spots, so just compute them once. @@ -39,19 +62,6 @@ Index: b/Lib/distutils/sysconfig.py # Path to the base directory of the project. On Windows the binary may # live in project/PCBuild9. If we're dealing with an x64 Windows build, -Index: b/Lib/distutils/command/build_ext.py -=================================================================== ---- a/Lib/distutils/command/build_ext.py -+++ b/Lib/distutils/command/build_ext.py -@@ -239,7 +239,10 @@ - if (sysconfig.get_config_var('Py_ENABLE_SHARED')): - if not sysconfig.python_build: - # building third party extensions -- self.library_dirs.append(sysconfig.get_config_var('LIBDIR')) -+ libdir = sysconfig.get_config_var('LIBDIR') -+ if "_python_sysroot" in os.environ: -+ libdir = os.environ.get("_python_sysroot") + libdir -+ self.library_dirs.append(libdir) - else: - # building python standard extensions - self.library_dirs.append('.') +-- +2.6.4 + diff --git a/package/python3/010-no-termcap-host-path.patch b/package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch similarity index 67% rename from package/python3/010-no-termcap-host-path.patch rename to package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch index 46c8a77f92e..19a76cfc853 100644 --- a/package/python3/010-no-termcap-host-path.patch +++ b/package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch @@ -1,12 +1,18 @@ -Don't look in /usr/lib/termcap for libraries +From 3ef1e30b88c4166f22220812b68e14f39f7ed15b Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:36:00 +0100 +Subject: [PATCH] Don't look in /usr/lib/termcap for libraries Signed-off-by: Thomas Petazzoni +--- + setup.py | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) -Index: b/setup.py -=================================================================== +diff --git a/setup.py b/setup.py +index 2a504d2..acc4ad0 100644 --- a/setup.py +++ b/setup.py -@@ -733,12 +733,9 @@ +@@ -733,12 +733,9 @@ class PyBuildExt(build_ext): pass # Issue 7384: Already linked against curses or tinfo. elif curses_library: readline_libs.append(curses_library) @@ -20,3 +26,6 @@ Index: b/setup.py extra_link_args=readline_extra_link_args, libraries=readline_libs) ) else: +-- +2.6.4 + diff --git a/package/python3/012-dont-add-multiarch-path.patch b/package/python3/0009-Don-t-add-multiarch-paths.patch similarity index 70% rename from package/python3/012-dont-add-multiarch-path.patch rename to package/python3/0009-Don-t-add-multiarch-paths.patch index f32372c78f3..693ab6a5081 100644 --- a/package/python3/012-dont-add-multiarch-path.patch +++ b/package/python3/0009-Don-t-add-multiarch-paths.patch @@ -1,4 +1,7 @@ -Don't add multiarch paths +From b910b3a6e61afcaa6f77b533a5cb4290c528f439 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:36:27 +0100 +Subject: [PATCH] Don't add multiarch paths The add_multiarch_paths() function leads, in certain build environments, to the addition of host header paths to the CFLAGS, @@ -9,12 +12,15 @@ cross-compiling. Investigation done by David . Signed-off-by: Thomas Petazzoni +--- + setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) -Index: b/setup.py -=================================================================== +diff --git a/setup.py b/setup.py +index acc4ad0..eab709e 100644 --- a/setup.py +++ b/setup.py -@@ -456,10 +456,10 @@ +@@ -456,10 +456,10 @@ class PyBuildExt(build_ext): if not cross_compiling: add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') @@ -26,3 +32,6 @@ Index: b/setup.py # Add paths specified in the environment variables LDFLAGS and # CPPFLAGS for header and library files. +-- +2.6.4 + diff --git a/package/python3/013-abort-on-failed-modules.patch b/package/python3/0010-Abort-on-failed-module-build.patch similarity index 57% rename from package/python3/013-abort-on-failed-modules.patch rename to package/python3/0010-Abort-on-failed-module-build.patch index 5ad86fb9037..d2e98224cc9 100644 --- a/package/python3/013-abort-on-failed-modules.patch +++ b/package/python3/0010-Abort-on-failed-module-build.patch @@ -1,4 +1,7 @@ -Abort on failed module build +From 420e08fc9e77b650d11ce420f85257ce1710b70d Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:43:24 +0100 +Subject: [PATCH] Abort on failed module build When building a Python module fails, the setup.py script currently doesn't exit with an error, and simply continues. This is not a really @@ -6,12 +9,15 @@ nice behavior, so this patch changes setup.py to abort with an error, so that the build issue is clearly noticeable. Signed-off-by: Thomas Petazzoni +--- + setup.py | 1 + + 1 file changed, 1 insertion(+) -Index: b/setup.py -=================================================================== +diff --git a/setup.py b/setup.py +index eab709e..86758ce 100644 --- a/setup.py +++ b/setup.py -@@ -284,6 +284,7 @@ +@@ -284,6 +284,7 @@ class PyBuildExt(build_ext): print("Failed to build these modules:") print_three_column(failed) print() @@ -19,3 +25,6 @@ Index: b/setup.py def build_extension(self, ext): +-- +2.6.4 + diff --git a/package/python3/014-serial-ioctl-workaround.patch b/package/python3/0011-Serial-ioctl-workaround.patch similarity index 64% rename from package/python3/014-serial-ioctl-workaround.patch rename to package/python3/0011-Serial-ioctl-workaround.patch index e4aae0078b0..f1db62b6f24 100644 --- a/package/python3/014-serial-ioctl-workaround.patch +++ b/package/python3/0011-Serial-ioctl-workaround.patch @@ -1,4 +1,7 @@ -Serial ioctl() workaround +From f67b0073a30eb83d42a2ead0a62020dfe5db8d1e Mon Sep 17 00:00:00 2001 +From: Baruch Siach +Date: Wed, 23 Dec 2015 11:44:02 +0100 +Subject: [PATCH] Serial ioctl() workaround The ioctls.h of some architectures (notably xtensa) references structs from linux/serial.h. Make sure to include this header as well. @@ -8,8 +11,11 @@ but isn't actually referenced in modern kernels. Signed-off-by: Baruch Siach --- -Index: b/Modules/termios.c -=================================================================== + Modules/termios.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/Modules/termios.c b/Modules/termios.c +index b78d33e..58b0444 100644 --- a/Modules/termios.c +++ b/Modules/termios.c @@ -9,7 +9,9 @@ @@ -22,3 +28,6 @@ Index: b/Modules/termios.c /* HP-UX requires that this be included to pick up MDCD, MCTS, MDSR, * MDTR, MRI, and MRTS (appearantly used internally by some things +-- +2.6.4 + diff --git a/package/python3/015-distutils-scripts-dont-adjust-shebang.patch b/package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch similarity index 61% rename from package/python3/015-distutils-scripts-dont-adjust-shebang.patch rename to package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch index ed2f193f9e3..e4fbf4e4d6a 100644 --- a/package/python3/015-distutils-scripts-dont-adjust-shebang.patch +++ b/package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch @@ -1,4 +1,8 @@ -Do not adjust the shebang of Python scripts for cross-compilation +From 2cac07af643d989b352cccc3b96d86ed269df9b1 Mon Sep 17 00:00:00 2001 +From: Christophe Vu-Brugier +Date: Wed, 23 Dec 2015 11:44:30 +0100 +Subject: [PATCH] Do not adjust the shebang of Python scripts for + cross-compilation The copy_scripts() method in distutils copies the scripts listed in the setup file and adjusts the first line to refer to the current @@ -9,12 +13,15 @@ This patch modifies copy_scripts() to preserve the shebang when cross-compilation is detected. Signed-off-by: Christophe Vu-Brugier +--- + Lib/distutils/command/build_scripts.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) -Index: b/Lib/distutils/command/build_scripts.py -=================================================================== +diff --git a/Lib/distutils/command/build_scripts.py b/Lib/distutils/command/build_scripts.py +index 90a8380..bdf4cf1 100644 --- a/Lib/distutils/command/build_scripts.py +++ b/Lib/distutils/command/build_scripts.py -@@ -91,7 +91,7 @@ +@@ -91,7 +91,7 @@ class build_scripts(Command): adjust = True post_interp = match.group(1) or b'' @@ -23,3 +30,6 @@ Index: b/Lib/distutils/command/build_scripts.py log.info("copying and adjusting %s -> %s", script, self.build_dir) updated_files.append(outfile) +-- +2.6.4 + diff --git a/package/python3/017-python-config-include-libdir.patch b/package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch similarity index 89% rename from package/python3/017-python-config-include-libdir.patch rename to package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch index 46d4633a4bf..f9c72257267 100644 --- a/package/python3/017-python-config-include-libdir.patch +++ b/package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch @@ -1,4 +1,4 @@ -From 50f34d2cac63b6bf0935294a7d63d9451714f4c4 Mon Sep 17 00:00:00 2001 +From 4c0893221e2978854174806f7e14f7643eea32e7 Mon Sep 17 00:00:00 2001 From: Peter Korsgaard Date: Thu, 20 Nov 2014 13:24:59 +0100 Subject: [PATCH] Misc/python-config.sh.in: ensure sed invocations only match @@ -24,11 +24,11 @@ Signed-off-by: Peter Korsgaard Misc/python-config.sh.in | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) -Index: b/Misc/python-config.sh.in -=================================================================== +diff --git a/Misc/python-config.sh.in b/Misc/python-config.sh.in +index 64c81e5..f75eec5 100644 --- a/Misc/python-config.sh.in +++ b/Misc/python-config.sh.in -@@ -29,12 +29,12 @@ +@@ -29,12 +29,12 @@ prefix_real=$(installed_prefix "$0") # Use sed to fix paths from their built-to locations to their installed-to # locations. @@ -46,7 +46,7 @@ Index: b/Misc/python-config.sh.in VERSION="@VERSION@" LIBM="@LIBM@" LIBC="@LIBC@" -@@ -48,7 +48,7 @@ +@@ -48,7 +48,7 @@ OPT="@OPT@" PY_ENABLE_SHARED="@PY_ENABLE_SHARED@" LDVERSION="@LDVERSION@" LIBDEST=${prefix}/lib/python${VERSION} @@ -55,3 +55,6 @@ Index: b/Misc/python-config.sh.in SO="@SO@" PYTHONFRAMEWORK="@PYTHONFRAMEWORK@" INCDIR="-I$includedir/python${VERSION}${ABIFLAGS}" +-- +2.6.4 + diff --git a/package/python3/018-ncursesw-remove-wrong-includedir.patch b/package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch similarity index 62% rename from package/python3/018-ncursesw-remove-wrong-includedir.patch rename to package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch index 1c264383348..4a64427579b 100644 --- a/package/python3/018-ncursesw-remove-wrong-includedir.patch +++ b/package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch @@ -1,4 +1,7 @@ -Do not harcode invalid path to ncursesw headers +From a87f08318cf40a27d41957dcc7312c3b3083ba86 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:45:13 +0100 +Subject: [PATCH] Do not harcode invalid path to ncursesw headers Adding /usr/include/ncursesw is obviously invalid when cross-compiling. Since the ncursesw headers are no longer installed in @@ -6,12 +9,15 @@ usr/include/ncursesw/, but directly in usr/include, there is anyway no need for a special header path. Signed-off-by: Thomas Petazzoni +--- + setup.py | 1 - + 1 file changed, 1 deletion(-) -Index: b/setup.py -=================================================================== +diff --git a/setup.py b/setup.py +index 86758ce..565c304 100644 --- a/setup.py +++ b/setup.py -@@ -1276,7 +1276,6 @@ +@@ -1276,7 +1276,6 @@ class PyBuildExt(build_ext): panel_library = 'panel' if curses_library == 'ncursesw': curses_defines.append(('HAVE_NCURSESW', '1')) @@ -19,3 +25,6 @@ Index: b/setup.py # Bug 1464056: If _curses.so links with ncursesw, # _curses_panel.so must link with panelw. panel_library = 'panelw' +-- +2.6.4 + diff --git a/package/python3/019-fix-add-gcc-paths-logic.patch b/package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch similarity index 69% rename from package/python3/019-fix-add-gcc-paths-logic.patch rename to package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch index 179a29a2d0a..e358e444628 100644 --- a/package/python3/019-fix-add-gcc-paths-logic.patch +++ b/package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch @@ -1,4 +1,8 @@ -Override system locale and set to default when adding gcc paths +From 807357dc50a5a97016ce22646b5eb6a5b64a1a5d Mon Sep 17 00:00:00 2001 +From: Samuel Cabrero +Date: Wed, 23 Dec 2015 11:45:48 +0100 +Subject: [PATCH] Override system locale and set to default when adding gcc + paths Forces the use of the default locale in the function add_gcc_paths, which is called when cross compiling to add the @@ -11,12 +15,15 @@ any system library (eg. libz, libssl, etc.) Signed-off-by: Samuel Cabrero Signed-off-by: Thomas Petazzoni +--- + setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) -Index: b/setup.py -=================================================================== +diff --git a/setup.py b/setup.py +index 565c304..8966779 100644 --- a/setup.py +++ b/setup.py -@@ -423,7 +423,7 @@ +@@ -423,7 +423,7 @@ class PyBuildExt(build_ext): tmpfile = os.path.join(self.build_temp, 'gccpaths') if not os.path.exists(self.build_temp): os.makedirs(self.build_temp) @@ -25,3 +32,6 @@ Index: b/setup.py is_gcc = False in_incdirs = False inc_dirs = [] +-- +2.6.4 + diff --git a/package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch b/package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch new file mode 100644 index 00000000000..02f1d164f75 --- /dev/null +++ b/package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch @@ -0,0 +1,79 @@ +From 1153f503a38daf6388021575f1ad6ce8b702911b Mon Sep 17 00:00:00 2001 +From: Christophe Vu-Brugier +Date: Wed, 23 Dec 2015 11:46:14 +0100 +Subject: [PATCH] Add importlib fix for PEP 3147 issue + +Python 3 has a new standard for installing .pyc file, called PEP +3147. Unfortunately, this standard requires both the .py and .pyc +files to be installed for a Python module to be found. This is quite +annoying on space-constrained embedded systems, since the .py file is +technically not required for execution. + +This patch changes cache_from_source() and source_from_cache() in +importlib to get rid of the "__pycache__" directory. +This effectively disables PEP 3147 for: + +* The python standard library +* Packages built with distutils or setuptools +* Packages built with automake that use the `py-compile` helper + +Signed-off-by: Christophe Vu-Brugier +--- + Lib/importlib/_bootstrap.py | 26 +++++--------------------- + 1 file changed, 5 insertions(+), 21 deletions(-) + +diff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py +index 5b91c05..a1755ec 100644 +--- a/Lib/importlib/_bootstrap.py ++++ b/Lib/importlib/_bootstrap.py +@@ -444,8 +444,6 @@ def cache_from_source(path, debug_override=None): + If debug_override is not None, then it must be a boolean and is used in + place of sys.flags.optimize. + +- If sys.implementation.cache_tag is None then NotImplementedError is raised. +- + """ + debug = not sys.flags.optimize if debug_override is None else debug_override + if debug: +@@ -454,33 +452,19 @@ def cache_from_source(path, debug_override=None): + suffixes = OPTIMIZED_BYTECODE_SUFFIXES + head, tail = _path_split(path) + base, sep, rest = tail.rpartition('.') +- tag = sys.implementation.cache_tag +- if tag is None: +- raise NotImplementedError('sys.implementation.cache_tag is None') +- filename = ''.join([(base if base else rest), sep, tag, suffixes[0]]) +- return _path_join(head, _PYCACHE, filename) ++ filename = ''.join([(base if base else rest), suffixes[0]]) ++ return _path_join(head, filename) + + + def source_from_cache(path): + """Given the path to a .pyc./.pyo file, return the path to its .py file. + + The .pyc/.pyo file does not need to exist; this simply returns the path to +- the .py file calculated to correspond to the .pyc/.pyo file. If path does +- not conform to PEP 3147 format, ValueError will be raised. If +- sys.implementation.cache_tag is None then NotImplementedError is raised. ++ the .py file calculated to correspond to the .pyc/.pyo file. + + """ +- if sys.implementation.cache_tag is None: +- raise NotImplementedError('sys.implementation.cache_tag is None') +- head, pycache_filename = _path_split(path) +- head, pycache = _path_split(head) +- if pycache != _PYCACHE: +- raise ValueError('{} not bottom-level directory in ' +- '{!r}'.format(_PYCACHE, path)) +- if pycache_filename.count('.') != 2: +- raise ValueError('expected only 2 dots in ' +- '{!r}'.format(pycache_filename)) +- base_filename = pycache_filename.partition('.')[0] ++ head, filename = _path_split(path) ++ base_filename = filename.partition('.')[0] + return _path_join(head, base_filename + SOURCE_SUFFIXES[0]) + + +-- +2.6.4 + diff --git a/package/python3/100-optional-test-modules.patch b/package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch similarity index 81% rename from package/python3/100-optional-test-modules.patch rename to package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch index 765e9370d51..6e0f07c87e9 100644 --- a/package/python3/100-optional-test-modules.patch +++ b/package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch @@ -1,21 +1,23 @@ -Add an option to disable installation of test modules +From 3cdd905ad1ff001713d20b768c001b5299a2e72c Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:47:00 +0100 +Subject: [PATCH] Add an option to disable installation of test modules The Python standard distribution comes with many test modules, that are not necessarly useful on embedded targets. Signed-off-by: Thomas Petazzoni Signed-off-by: Samuel Martin - --- - Makefile.pre.in | 50 ++++++++++++++++++++++++++++++++------------------ - configure.ac | 6 ++++++ - 2 files changed, 38 insertions(+), 18 deletions(-) + Makefile.pre.in | 56 ++++++++++++++++++++++++++++++++++++-------------------- + configure.ac | 6 ++++++ + 2 files changed, 42 insertions(+), 20 deletions(-) -Index: b/Makefile.pre.in -=================================================================== +diff --git a/Makefile.pre.in b/Makefile.pre.in +index e0f9e0f..12fae84 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1136,8 +1136,30 @@ +@@ -1133,8 +1133,30 @@ PLATDIR= plat-$(MACHDEP) EXTRAPLATDIR= @EXTRAPLATDIR@ MACHDEPS= $(PLATDIR) $(EXTRAPLATDIR) XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax @@ -48,7 +50,7 @@ Index: b/Makefile.pre.in test/audiodata \ test/capath test/data \ test/cjkencodings test/decimaltestdata test/xmltestdata \ -@@ -1164,28 +1186,22 @@ +@@ -1161,28 +1183,22 @@ LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \ test/test_importlib/namespace_pkgs/project3/parent/child \ test/test_importlib/namespace_pkgs/module_and_namespace_package \ test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test \ @@ -89,11 +91,11 @@ Index: b/Makefile.pre.in libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c @for i in $(SCRIPTDIR) $(LIBDEST); \ do \ -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index a3026b8..b7a8836 100644 --- a/configure.ac +++ b/configure.ac -@@ -2676,6 +2676,12 @@ +@@ -2659,6 +2659,12 @@ if test "$posix_threads" = "yes"; then fi @@ -106,3 +108,6 @@ Index: b/configure.ac # Check for enable-ipv6 AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified]) AC_MSG_CHECKING([if --enable-ipv6 is specified]) +-- +2.6.4 + diff --git a/package/python3/101-optional-pydoc.patch b/package/python3/0018-Add-an-option-to-disable-pydoc.patch similarity index 72% rename from package/python3/101-optional-pydoc.patch rename to package/python3/0018-Add-an-option-to-disable-pydoc.patch index a1b63d591a4..22f194a5552 100644 --- a/package/python3/101-optional-pydoc.patch +++ b/package/python3/0018-Add-an-option-to-disable-pydoc.patch @@ -1,22 +1,24 @@ -Add an option to disable pydoc +From 99ef88cb47a396e2c7005e59e50d34e0a60dd3cb Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:47:11 +0100 +Subject: [PATCH] Add an option to disable pydoc It removes 0.5 MB of data from the target plus the pydoc script itself. Signed-off-by: Thomas Petazzoni Signed-off-by: Samuel Martin - --- - Makefile.pre.in | 8 +++++++- - configure.ac | 5 +++++ - setup.py | 9 +++++++-- + Makefile.pre.in | 8 +++++++- + configure.ac | 5 +++++ + setup.py | 9 +++++++-- 3 files changed, 19 insertions(+), 3 deletions(-) -Index: b/Makefile.pre.in -=================================================================== +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 12fae84..5e2333e 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1103,7 +1103,9 @@ +@@ -1100,7 +1100,9 @@ bininstall: altbininstall -rm -f $(DESTDIR)$(BINDIR)/idle3 (cd $(DESTDIR)$(BINDIR); $(LN) -s idle$(VERSION) idle3) -rm -f $(DESTDIR)$(BINDIR)/pydoc3 @@ -26,7 +28,7 @@ Index: b/Makefile.pre.in -rm -f $(DESTDIR)$(BINDIR)/2to3 (cd $(DESTDIR)$(BINDIR); $(LN) -s 2to3-$(VERSION) 2to3) -rm -f $(DESTDIR)$(BINDIR)/pyvenv -@@ -1154,7 +1156,7 @@ +@@ -1151,7 +1153,7 @@ LIBSUBDIRS= tkinter \ multiprocessing multiprocessing/dummy \ unittest \ venv venv/scripts venv/scripts/posix \ @@ -35,7 +37,7 @@ Index: b/Makefile.pre.in TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ test test/test_asyncio \ -@@ -1198,6 +1200,10 @@ +@@ -1195,6 +1197,10 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ test/test_importlib/import_ test/test_importlib/source \ unittest/test unittest/test/testmock @@ -46,11 +48,11 @@ Index: b/Makefile.pre.in ifeq (@TEST_MODULES@,yes) LIBSUBDIRS += $(TESTSUBDIRS) endif -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index b7a8836..2e75345 100644 --- a/configure.ac +++ b/configure.ac -@@ -2675,6 +2675,11 @@ +@@ -2658,6 +2658,11 @@ if test "$posix_threads" = "yes"; then AC_CHECK_FUNCS(pthread_atfork) fi @@ -62,11 +64,11 @@ Index: b/configure.ac AC_SUBST(TEST_MODULES) -Index: b/setup.py -=================================================================== +diff --git a/setup.py b/setup.py +index 8966779..69198db 100644 --- a/setup.py +++ b/setup.py -@@ -2200,6 +2200,12 @@ +@@ -2200,6 +2200,12 @@ def main(): # turn off warnings when deprecated modules are imported import warnings warnings.filterwarnings("ignore",category=DeprecationWarning) @@ -79,7 +81,7 @@ Index: b/setup.py setup(# PyPI Metadata (PEP 301) name = "Python", version = sys.version.split()[0], -@@ -2224,8 +2230,7 @@ +@@ -2224,8 +2230,7 @@ def main(): # If you change the scripts installed here, you also need to # check the PyBuildScripts command above, and change the links # created by the bininstall target in Makefile.pre.in @@ -89,3 +91,6 @@ Index: b/setup.py ) # --install-platlib +-- +2.6.4 + diff --git a/package/python3/102-optional-2to3.patch b/package/python3/0019-Add-an-option-to-disable-lib2to3.patch similarity index 75% rename from package/python3/102-optional-2to3.patch rename to package/python3/0019-Add-an-option-to-disable-lib2to3.patch index 41814568b56..8a22c0f26e0 100644 --- a/package/python3/102-optional-2to3.patch +++ b/package/python3/0019-Add-an-option-to-disable-lib2to3.patch @@ -1,22 +1,24 @@ -Add an option to disable lib2to3 +From 4d6bc8497ab740ae23a7091ff91dba06a63ba877 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:48:44 +0100 +Subject: [PATCH] Add an option to disable lib2to3 lib2to3 is a library to convert Python 2.x code to Python 3.x. As such, it is probably not very useful on embedded system targets. Signed-off-by: Thomas Petazzoni Signed-off-by: Samuel Martin - --- - Makefile.pre.in | 18 ++++++++++++++---- - configure.ac | 6 ++++++ - setup.py | 5 +++-- - 3 files changed, 23 insertions(+), 6 deletions(-) + Makefile.pre.in | 16 ++++++++++++---- + configure.ac | 6 ++++++ + setup.py | 5 +++-- + 3 files changed, 21 insertions(+), 6 deletions(-) -Index: b/Makefile.pre.in -=================================================================== +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 5e2333e..6656f48 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1107,7 +1107,9 @@ +@@ -1104,7 +1104,9 @@ ifeq (@PYDOC@,yes) (cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3) endif -rm -f $(DESTDIR)$(BINDIR)/2to3 @@ -26,7 +28,7 @@ Index: b/Makefile.pre.in -rm -f $(DESTDIR)$(BINDIR)/pyvenv (cd $(DESTDIR)$(BINDIR); $(LN) -s pyvenv-$(VERSION) pyvenv) if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \ -@@ -1147,7 +1149,6 @@ +@@ -1144,7 +1146,6 @@ LIBSUBDIRS= tkinter \ html json http dbm xmlrpc \ sqlite3 \ logging csv wsgiref urllib \ @@ -34,7 +36,7 @@ Index: b/Makefile.pre.in ctypes ctypes/macholib \ idlelib idlelib/Icons \ distutils distutils/command $(XMLLIBSUBDIRS) \ -@@ -1189,9 +1190,6 @@ +@@ -1186,9 +1187,6 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ test/test_importlib/namespace_pkgs/module_and_namespace_package \ test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test \ sqlite3/test \ @@ -44,7 +46,7 @@ Index: b/Makefile.pre.in ctypes/test \ idlelib/idle_test \ distutils/tests \ -@@ -1204,6 +1202,14 @@ +@@ -1201,6 +1199,14 @@ ifeq (@PYDOC@,yes) LIBSUBDIRS += pydoc_data endif @@ -59,8 +61,8 @@ Index: b/Makefile.pre.in ifeq (@TEST_MODULES@,yes) LIBSUBDIRS += $(TESTSUBDIRS) endif -@@ -1299,10 +1305,12 @@ - -d $(LIBDEST)/site-packages -f $(STDLIB_CACHE_FLAGS) \ +@@ -1296,10 +1302,12 @@ ifeq (@PYO_BUILD@,yes) + -d $(LIBDEST)/site-packages -f \ -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages endif +ifeq (@LIB2TO3@,yes) @@ -72,11 +74,28 @@ Index: b/Makefile.pre.in # Create the PLATDIR source directory, if one wasn't distributed.. $(srcdir)/Lib/$(PLATDIR): -Index: b/setup.py -=================================================================== +diff --git a/configure.ac b/configure.ac +index 2e75345..0ed6b17 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2670,6 +2670,12 @@ AC_ARG_ENABLE(test-modules, + AS_HELP_STRING([--disable-test-modules], [disable test modules]), + [ TEST_MODULES="${enableval}" ], [ TEST_MODULES=yes ]) + ++AC_SUBST(LIB2TO3) ++ ++AC_ARG_ENABLE(lib2to3, ++ AS_HELP_STRING([--disable-lib2to3], [disable lib2to3]), ++ [ LIB2TO3="${enableval}" ], [ LIB2TO3=yes ]) ++ + # Check for enable-ipv6 + AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified]) + AC_MSG_CHECKING([if --enable-ipv6 is specified]) +diff --git a/setup.py b/setup.py +index 69198db..a2bf05a 100644 --- a/setup.py +++ b/setup.py -@@ -2201,10 +2201,11 @@ +@@ -2201,10 +2201,11 @@ def main(): import warnings warnings.filterwarnings("ignore",category=DeprecationWarning) @@ -90,20 +109,6 @@ Index: b/setup.py setup(# PyPI Metadata (PEP 301) name = "Python", -Index: b/configure.ac -=================================================================== ---- a/configure.ac -+++ b/configure.ac -@@ -2687,6 +2687,12 @@ - AS_HELP_STRING([--disable-test-modules], [disable test modules]), - [ TEST_MODULES="${enableval}" ], [ TEST_MODULES=yes ]) - -+AC_SUBST(LIB2TO3) -+ -+AC_ARG_ENABLE(lib2to3, -+ AS_HELP_STRING([--disable-lib2to3], [disable lib2to3]), -+ [ LIB2TO3="${enableval}" ], [ LIB2TO3=yes ]) -+ - # Check for enable-ipv6 - AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified]) - AC_MSG_CHECKING([if --enable-ipv6 is specified]) +-- +2.6.4 + diff --git a/package/python3/103-optional-sqlite.patch b/package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch similarity index 61% rename from package/python3/103-optional-sqlite.patch rename to package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch index f8e5352c3d9..26a7b34c3b2 100644 --- a/package/python3/103-optional-sqlite.patch +++ b/package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch @@ -1,38 +1,20 @@ -Add option to disable the sqlite3 module +From f218ef22019d4c03427113982edc42beddd05683 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:49:01 +0100 +Subject: [PATCH] Add option to disable the sqlite3 module Signed-off-by: Thomas Petazzoni Signed-off-by: Samuel Martin - --- - Makefile.pre.in | 9 +++++++-- - configure.ac | 9 +++++++++ - 2 files changed, 16 insertions(+), 2 deletions(-) + Makefile.pre.in | 7 +++++-- + configure.ac | 9 +++++++++ + 2 files changed, 14 insertions(+), 2 deletions(-) -Index: b/configure.ac -=================================================================== ---- a/configure.ac -+++ b/configure.ac -@@ -2675,6 +2675,15 @@ - AC_CHECK_FUNCS(pthread_atfork) - fi - -+AC_SUBST(SQLITE3) -+AC_ARG_ENABLE(sqlite3, -+ AS_HELP_STRING([--disable-sqlite3], [disable sqlite3]), -+ [ SQLITE3="${enableval}" ], [ SQLITE3=yes ]) -+ -+if test "$SQLITE3" = "no" ; then -+ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3" -+fi -+ - AC_SUBST(PYDOC) - - AC_ARG_ENABLE(pydoc, -Index: b/Makefile.pre.in -=================================================================== +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 6656f48..433cac1 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1147,7 +1147,6 @@ +@@ -1144,7 +1144,6 @@ LIBSUBDIRS= tkinter \ email email/mime \ ensurepip ensurepip/_bundled \ html json http dbm xmlrpc \ @@ -40,7 +22,7 @@ Index: b/Makefile.pre.in logging csv wsgiref urllib \ ctypes ctypes/macholib \ idlelib idlelib/Icons \ -@@ -1189,7 +1188,6 @@ +@@ -1186,7 +1185,6 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \ test/test_importlib/namespace_pkgs/project3/parent/child \ test/test_importlib/namespace_pkgs/module_and_namespace_package \ test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test \ @@ -48,7 +30,7 @@ Index: b/Makefile.pre.in ctypes/test \ idlelib/idle_test \ distutils/tests \ -@@ -1210,6 +1208,11 @@ +@@ -1207,6 +1205,11 @@ TESTSUBDIRS += lib2to3/tests \ lib2to3/tests/data/fixers/myfixes endif @@ -60,3 +42,26 @@ Index: b/Makefile.pre.in ifeq (@TEST_MODULES@,yes) LIBSUBDIRS += $(TESTSUBDIRS) endif +diff --git a/configure.ac b/configure.ac +index 0ed6b17..aaffbd6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2658,6 +2658,15 @@ if test "$posix_threads" = "yes"; then + AC_CHECK_FUNCS(pthread_atfork) + fi + ++AC_SUBST(SQLITE3) ++AC_ARG_ENABLE(sqlite3, ++ AS_HELP_STRING([--disable-sqlite3], [disable sqlite3]), ++ [ SQLITE3="${enableval}" ], [ SQLITE3=yes ]) ++ ++if test "$SQLITE3" = "no" ; then ++ DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3" ++fi ++ + AC_SUBST(PYDOC) + + AC_ARG_ENABLE(pydoc, +-- +2.6.4 + diff --git a/package/python3/104-optional-tk.patch b/package/python3/0021-Add-an-option-to-disable-the-tk-module.patch similarity index 65% rename from package/python3/104-optional-tk.patch rename to package/python3/0021-Add-an-option-to-disable-the-tk-module.patch index 8a852c56f5a..fc3c9b431ce 100644 --- a/package/python3/104-optional-tk.patch +++ b/package/python3/0021-Add-an-option-to-disable-the-tk-module.patch @@ -1,18 +1,20 @@ -Add an option to disable the tk module +From 006bf215734ad63007de044fe7803f66f83a4d19 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:49:14 +0100 +Subject: [PATCH] Add an option to disable the tk module Signed-off-by: Thomas Petazzoni Signed-off-by: Samuel Martin - --- - Makefile.pre.in | 14 +++++++++++--- - configure.ac | 9 +++++++++ - 2 files changed, 20 insertions(+), 3 deletions(-) + Makefile.pre.in | 11 ++++++++--- + configure.ac | 9 +++++++++ + 2 files changed, 17 insertions(+), 3 deletions(-) -Index: b/Makefile.pre.in -=================================================================== +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 433cac1..e492d7b 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1140,7 +1140,7 @@ +@@ -1137,7 +1137,7 @@ PLATDIR= plat-$(MACHDEP) EXTRAPLATDIR= @EXTRAPLATDIR@ MACHDEPS= $(PLATDIR) $(EXTRAPLATDIR) XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax @@ -21,7 +23,7 @@ Index: b/Makefile.pre.in site-packages \ asyncio \ collections concurrent concurrent/futures encodings \ -@@ -1158,8 +1158,7 @@ +@@ -1155,8 +1155,7 @@ LIBSUBDIRS= tkinter \ venv venv/scripts venv/scripts/posix \ curses $(MACHDEPS) @@ -31,7 +33,7 @@ Index: b/Makefile.pre.in test/test_email test/test_email/data \ test/test_json \ test/audiodata \ -@@ -1213,6 +1212,12 @@ +@@ -1210,6 +1209,12 @@ LIBSUBDIRS += sqlite3 TESTSUBDIRS += sqlite3/test endif @@ -44,11 +46,11 @@ Index: b/Makefile.pre.in ifeq (@TEST_MODULES@,yes) LIBSUBDIRS += $(TESTSUBDIRS) endif -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index aaffbd6..7efd54f 100644 --- a/configure.ac +++ b/configure.ac -@@ -2684,6 +2684,15 @@ +@@ -2667,6 +2667,15 @@ if test "$SQLITE3" = "no" ; then DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3" fi @@ -64,3 +66,6 @@ Index: b/configure.ac AC_SUBST(PYDOC) AC_ARG_ENABLE(pydoc, +-- +2.6.4 + diff --git a/package/python3/105-optional-curses.patch b/package/python3/0022-Add-an-option-to-disable-the-curses-module.patch similarity index 61% rename from package/python3/105-optional-curses.patch rename to package/python3/0022-Add-an-option-to-disable-the-curses-module.patch index 72979cf3cd8..de78bb06082 100644 --- a/package/python3/105-optional-curses.patch +++ b/package/python3/0022-Add-an-option-to-disable-the-curses-module.patch @@ -1,18 +1,20 @@ -Add an option to disable the curses module +From 42725aef353df06f760f0a47b80001187d04d8b4 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:49:30 +0100 +Subject: [PATCH] Add an option to disable the curses module Signed-off-by: Thomas Petazzoni Signed-off-by: Samuel Martin - --- - Makefile.pre.in | 6 +++++- - configure.ac | 9 +++++++++ + Makefile.pre.in | 6 +++++- + configure.ac | 9 +++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) -Index: b/Makefile.pre.in -=================================================================== +diff --git a/Makefile.pre.in b/Makefile.pre.in +index e492d7b..66b2c45 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1156,7 +1156,7 @@ +@@ -1153,7 +1153,7 @@ LIBSUBDIRS= \ multiprocessing multiprocessing/dummy \ unittest \ venv venv/scripts venv/scripts/posix \ @@ -21,7 +23,7 @@ Index: b/Makefile.pre.in TESTSUBDIRS = test test/test_asyncio \ test/test_email test/test_email/data \ -@@ -1218,6 +1218,10 @@ +@@ -1215,6 +1215,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \ tkinter/test/test_ttk endif @@ -32,11 +34,11 @@ Index: b/Makefile.pre.in ifeq (@TEST_MODULES@,yes) LIBSUBDIRS += $(TESTSUBDIRS) endif -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index 7efd54f..e48f38e 100644 --- a/configure.ac +++ b/configure.ac -@@ -2693,6 +2693,15 @@ +@@ -2676,6 +2676,15 @@ if test "$TK" = "no"; then DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _tkinter" fi @@ -52,3 +54,6 @@ Index: b/configure.ac AC_SUBST(PYDOC) AC_ARG_ENABLE(pydoc, +-- +2.6.4 + diff --git a/package/python3/106-optional-expat.patch b/package/python3/0023-Add-an-option-to-disable-expat.patch similarity index 75% rename from package/python3/106-optional-expat.patch rename to package/python3/0023-Add-an-option-to-disable-expat.patch index 0bdd6f93bb6..9cb0799c5db 100644 --- a/package/python3/106-optional-expat.patch +++ b/package/python3/0023-Add-an-option-to-disable-expat.patch @@ -1,4 +1,7 @@ -Add an option to disable expat +From f98b83bca09882d27bb04d7dbcd50f9979ad0569 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:49:42 +0100 +Subject: [PATCH] Add an option to disable expat This patch replaces the existing --with-system-expat option with a --with-expat={system,builtin,none} option, which allows to tell Python @@ -8,18 +11,17 @@ installation of XML modules). Signed-off-by: Thomas Petazzoni Signed-off-by: Samuel Martin - --- - Makefile.pre.in | 6 +++++- - configure.ac | 18 +++++++++++++----- - setup.py | 2 +- + Makefile.pre.in | 6 +++++- + configure.ac | 18 +++++++++++++----- + setup.py | 2 +- 3 files changed, 19 insertions(+), 7 deletions(-) -Index: b/Makefile.pre.in -=================================================================== +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 66b2c45..884d5aa 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1150,7 +1150,7 @@ +@@ -1147,7 +1147,7 @@ LIBSUBDIRS= \ logging csv wsgiref urllib \ ctypes ctypes/macholib \ idlelib idlelib/Icons \ @@ -28,7 +30,7 @@ Index: b/Makefile.pre.in importlib \ turtledemo \ multiprocessing multiprocessing/dummy \ -@@ -1222,6 +1222,10 @@ +@@ -1219,6 +1219,10 @@ ifeq (@CURSES@,yes) LIBSUBDIRS += curses endif @@ -39,11 +41,11 @@ Index: b/Makefile.pre.in ifeq (@TEST_MODULES@,yes) LIBSUBDIRS += $(TESTSUBDIRS) endif -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index e48f38e..4bbd597 100644 --- a/configure.ac +++ b/configure.ac -@@ -2372,13 +2372,21 @@ +@@ -2355,13 +2355,21 @@ PKG_PROG_PKG_CONFIG AC_SUBST(DISABLED_EXTENSIONS) # Check for use of the system expat library @@ -70,11 +72,11 @@ Index: b/configure.ac # Check for use of the system libffi library AC_MSG_CHECKING(for --with-system-ffi) -Index: b/setup.py -=================================================================== +diff --git a/setup.py b/setup.py +index a2bf05a..fd3ac65 100644 --- a/setup.py +++ b/setup.py -@@ -1414,7 +1414,7 @@ +@@ -1414,7 +1414,7 @@ class PyBuildExt(build_ext): # # More information on Expat can be found at www.libexpat.org. # @@ -83,3 +85,6 @@ Index: b/setup.py expat_inc = [] define_macros = [] expat_lib = ['expat'] +-- +2.6.4 + diff --git a/package/python3/107-optional-codecs-cjk.patch b/package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch similarity index 58% rename from package/python3/107-optional-codecs-cjk.patch rename to package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch index 2759dd9601e..b4d77849e31 100644 --- a/package/python3/107-optional-codecs-cjk.patch +++ b/package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch @@ -1,16 +1,18 @@ -Add an option to disable CJK codecs +From cf731841e1209c6faa99e2db4cf4c890e7c28080 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:49:55 +0100 +Subject: [PATCH] Add an option to disable CJK codecs Signed-off-by: Thomas Petazzoni - --- - configure.ac | 6 ++++++ + configure.ac | 6 ++++++ 1 file changed, 6 insertions(+) -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index 4bbd597..05817f0 100644 --- a/configure.ac +++ b/configure.ac -@@ -2692,6 +2692,12 @@ +@@ -2675,6 +2675,12 @@ if test "$SQLITE3" = "no" ; then DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3" fi @@ -23,3 +25,6 @@ Index: b/configure.ac AC_SUBST(TK) AC_ARG_ENABLE(tk, AS_HELP_STRING([--disable-tk], [disable tk]), +-- +2.6.4 + diff --git a/package/python3/108-optional-nis.patch b/package/python3/0025-Add-an-option-to-disable-NIS.patch similarity index 63% rename from package/python3/108-optional-nis.patch rename to package/python3/0025-Add-an-option-to-disable-NIS.patch index 8b8c4a0633d..cd6b19d79a7 100644 --- a/package/python3/108-optional-nis.patch +++ b/package/python3/0025-Add-an-option-to-disable-NIS.patch @@ -1,19 +1,21 @@ -Add an option to disable NIS +From f99823ef41d6f5c8e67b198b04b289d9b6ef8570 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:50:11 +0100 +Subject: [PATCH] Add an option to disable NIS NIS is not necessarily available in uClibc, so we need an option to not compile support for it. Signed-off-by: Thomas Petazzoni - --- - configure.ac | 6 ++++++ + configure.ac | 6 ++++++ 1 file changed, 6 insertions(+) -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index 05817f0..4fb35a8 100644 --- a/configure.ac +++ b/configure.ac -@@ -2698,6 +2698,12 @@ +@@ -2681,6 +2681,12 @@ AC_ARG_ENABLE(codecs-cjk, DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _codecs_kr _codecs_jp _codecs_cn _codecs_tw _codecs_hk _codecs_iso2022" fi]) @@ -26,3 +28,6 @@ Index: b/configure.ac AC_SUBST(TK) AC_ARG_ENABLE(tk, AS_HELP_STRING([--disable-tk], [disable tk]), +-- +2.6.4 + diff --git a/package/python3/109-optional-unicodedata.patch b/package/python3/0026-Add-an-option-to-disable-unicodedata.patch similarity index 58% rename from package/python3/109-optional-unicodedata.patch rename to package/python3/0026-Add-an-option-to-disable-unicodedata.patch index 729185230bb..a5880f2603f 100644 --- a/package/python3/109-optional-unicodedata.patch +++ b/package/python3/0026-Add-an-option-to-disable-unicodedata.patch @@ -1,16 +1,18 @@ -Add an option to disable unicodedata +From 4a32e709d128886dab10e59fad60fde005933aff Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:50:27 +0100 +Subject: [PATCH] Add an option to disable unicodedata Signed-off-by: Thomas Petazzoni - --- - configure.ac | 6 ++++++ + configure.ac | 6 ++++++ 1 file changed, 6 insertions(+) -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index 4fb35a8..58f2dd9 100644 --- a/configure.ac +++ b/configure.ac -@@ -2704,6 +2704,12 @@ +@@ -2687,6 +2687,12 @@ AC_ARG_ENABLE(nis, DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} nis" fi]) @@ -23,3 +25,6 @@ Index: b/configure.ac AC_SUBST(TK) AC_ARG_ENABLE(tk, AS_HELP_STRING([--disable-tk], [disable tk]), +-- +2.6.4 + diff --git a/package/python3/110-optional-idle.patch b/package/python3/0027-Add-an-option-to-disable-IDLE.patch similarity index 71% rename from package/python3/110-optional-idle.patch rename to package/python3/0027-Add-an-option-to-disable-IDLE.patch index d30eb02c321..c2b59e82586 100644 --- a/package/python3/110-optional-idle.patch +++ b/package/python3/0027-Add-an-option-to-disable-IDLE.patch @@ -1,21 +1,23 @@ -Add an option to disable IDLE +From 9336cf4eb4ded1eaa83da5549e4aba62b34ef888 Mon Sep 17 00:00:00 2001 +From: Maxime Ripard +Date: Wed, 23 Dec 2015 11:50:42 +0100 +Subject: [PATCH] Add an option to disable IDLE IDLE is an IDE embedded into python, written using Tk, so it doesn't make much sense to have it into our build. Signed-off-by: Maxime Ripard - --- - Makefile.pre.in | 8 +++++++- - configure.ac | 6 ++++++ - setup.py | 4 +++- - 3 files changed, 16 insertions(+), 2 deletions(-) + Makefile.pre.in | 7 ++++++- + configure.ac | 6 ++++++ + setup.py | 4 +++- + 3 files changed, 15 insertions(+), 2 deletions(-) -Index: b/Makefile.pre.in -=================================================================== +diff --git a/Makefile.pre.in b/Makefile.pre.in +index 884d5aa..48b4812 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1101,7 +1101,9 @@ +@@ -1098,7 +1098,9 @@ bininstall: altbininstall -rm -f $(DESTDIR)$(LIBPC)/python3.pc (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION).pc python3.pc) -rm -f $(DESTDIR)$(BINDIR)/idle3 @@ -25,7 +27,7 @@ Index: b/Makefile.pre.in -rm -f $(DESTDIR)$(BINDIR)/pydoc3 ifeq (@PYDOC@,yes) (cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3) -@@ -1149,7 +1151,6 @@ +@@ -1146,7 +1148,6 @@ LIBSUBDIRS= \ html json http dbm xmlrpc \ logging csv wsgiref urllib \ ctypes ctypes/macholib \ @@ -33,7 +35,7 @@ Index: b/Makefile.pre.in distutils distutils/command \ importlib \ turtledemo \ -@@ -1226,6 +1227,10 @@ +@@ -1223,6 +1224,10 @@ ifeq (@EXPAT@,yes) LIBSUBDIRS += $(XMLLIBSUBDIRS) endif @@ -44,11 +46,11 @@ Index: b/Makefile.pre.in ifeq (@TEST_MODULES@,yes) LIBSUBDIRS += $(TESTSUBDIRS) endif -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index 58f2dd9..0ba25e4 100644 --- a/configure.ac +++ b/configure.ac -@@ -2746,6 +2746,12 @@ +@@ -2729,6 +2729,12 @@ AC_ARG_ENABLE(lib2to3, AS_HELP_STRING([--disable-lib2to3], [disable lib2to3]), [ LIB2TO3="${enableval}" ], [ LIB2TO3=yes ]) @@ -61,11 +63,11 @@ Index: b/configure.ac # Check for enable-ipv6 AH_TEMPLATE(ENABLE_IPV6, [Define if --enable-ipv6 is specified]) AC_MSG_CHECKING([if --enable-ipv6 is specified]) -Index: b/setup.py -=================================================================== +diff --git a/setup.py b/setup.py +index fd3ac65..3655e57 100644 --- a/setup.py +++ b/setup.py -@@ -2201,11 +2201,13 @@ +@@ -2201,11 +2201,13 @@ def main(): import warnings warnings.filterwarnings("ignore",category=DeprecationWarning) @@ -80,3 +82,6 @@ Index: b/setup.py setup(# PyPI Metadata (PEP 301) name = "Python", +-- +2.6.4 + diff --git a/package/python3/111-optional-decimal.patch b/package/python3/0028-Add-an-option-to-disable-decimal.patch similarity index 74% rename from package/python3/111-optional-decimal.patch rename to package/python3/0028-Add-an-option-to-disable-decimal.patch index be17c94171c..df85325998e 100644 --- a/package/python3/111-optional-decimal.patch +++ b/package/python3/0028-Add-an-option-to-disable-decimal.patch @@ -1,4 +1,7 @@ -Add an option to disable decimal +From 8fee92a85c170ac4ce24dda5a960f24b83d6f103 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:51:31 +0100 +Subject: [PATCH] Add an option to disable decimal This patch replaces the existing --with-system-libmpdec option with a --with-libmpdec={system,builtin,none} option, which allows to tell @@ -7,12 +10,15 @@ the libmpdec builtin the Python sources, or no libmpdec at all. Signed-off-by: Thomas Petazzoni --- + configure.ac | 17 ++++++++++++----- + setup.py | 2 +- + 2 files changed, 13 insertions(+), 6 deletions(-) -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index 0ba25e4..536b9b2 100644 --- a/configure.ac +++ b/configure.ac -@@ -2405,13 +2405,20 @@ +@@ -2388,13 +2388,20 @@ AC_SUBST(LIBFFI_INCLUDEDIR) AC_MSG_RESULT($with_system_ffi) # Check for use of the system libmpdec library @@ -38,11 +44,11 @@ Index: b/configure.ac # Check for support for loadable sqlite extensions AC_MSG_CHECKING(for --enable-loadable-sqlite-extensions) -Index: b/setup.py -=================================================================== +diff --git a/setup.py b/setup.py +index 3655e57..7f7627d 100644 --- a/setup.py +++ b/setup.py -@@ -1968,7 +1968,7 @@ +@@ -1968,7 +1968,7 @@ class PyBuildExt(build_ext): def _decimal_ext(self): extra_compile_args = [] undef_macros = [] @@ -51,3 +57,6 @@ Index: b/setup.py include_dirs = [] libraries = [':libmpdec.so.2'] sources = ['_decimal/_decimal.c'] +-- +2.6.4 + diff --git a/package/python3/112-optional-ossaudiodev.patch b/package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch similarity index 54% rename from package/python3/112-optional-ossaudiodev.patch rename to package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch index 7f1611b71d9..56b6ae1a793 100644 --- a/package/python3/112-optional-ossaudiodev.patch +++ b/package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch @@ -1,12 +1,18 @@ -Add an option to disable the ossaudiodev module +From 53639100c2f7836ce9a51b5e5b9b4ea08ba1dc4e Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 23 Dec 2015 11:51:58 +0100 +Subject: [PATCH] Add an option to disable the ossaudiodev module Signed-off-by: Thomas Petazzoni +--- + configure.ac | 6 ++++++ + 1 file changed, 6 insertions(+) -Index: b/configure.ac -=================================================================== +diff --git a/configure.ac b/configure.ac +index 536b9b2..c1ab3a1 100644 --- a/configure.ac +++ b/configure.ac -@@ -2420,6 +2420,12 @@ +@@ -2403,6 +2403,12 @@ else fi AC_SUBST(MPDEC) @@ -19,3 +25,6 @@ Index: b/configure.ac # Check for support for loadable sqlite extensions AC_MSG_CHECKING(for --enable-loadable-sqlite-extensions) AC_ARG_ENABLE(loadable-sqlite-extensions, +-- +2.6.4 + diff --git a/package/python3/004-old-stdlib-cache.patch b/package/python3/004-old-stdlib-cache.patch deleted file mode 100644 index 9ed7e59a9b4..00000000000 --- a/package/python3/004-old-stdlib-cache.patch +++ /dev/null @@ -1,78 +0,0 @@ -python3: Fix pyc-only related runtime exceptions - -Python3 changes the pyc lookup strategy, ignoring the -__pycache__ directory if the .py file is missing. Change -install location to enable use of .pyc without their parent .py - -See http://www.python.org/dev/peps/pep-3147 - -Signed-off-by: Daniel Nelson - -Index: b/configure.ac -=================================================================== ---- a/configure.ac -+++ b/configure.ac -@@ -352,6 +352,23 @@ - AC_SUBST(FRAMEWORKUNIXTOOLSPREFIX) - AC_SUBST(FRAMEWORKINSTALLAPPSPREFIX) - -+STDLIB_CACHE_FLAGS= -+AC_MSG_CHECKING(for --enable-old-stdlib-cache) -+AC_ARG_ENABLE(old-stdlib-cache, -+ AS_HELP_STRING([--enable-old-stdlib-cache], [enable pre-pep3147 stdlib cache]), -+[ -+ if test "$enableval" = "yes" -+ then -+ STDLIB_CACHE_FLAGS="-b" -+ else -+ STDLIB_CACHE_FLAGS="" -+ fi -+], -+[ -+ STDLIB_CACHE_FLAGS="" -+]) -+AC_SUBST(STDLIB_CACHE_FLAGS) -+ - ##AC_ARG_WITH(dyld, - ## AS_HELP_STRING([--with-dyld], - ## [Use (OpenStep|Rhapsody) dynamic linker])) -Index: b/Makefile.pre.in -=================================================================== ---- a/Makefile.pre.in -+++ b/Makefile.pre.in -@@ -162,6 +162,9 @@ - # Options to enable prebinding (for fast startup prior to Mac OS X 10.3) - OTHER_LIBTOOL_OPT=@OTHER_LIBTOOL_OPT@ - -+# Option to enable old-style precompiled stdlib -+STDLIB_CACHE_FLAGS=@STDLIB_CACHE_FLAGS@ -+ - # Environment to run shared python without installed libraries - RUNSHARED= @RUNSHARED@ - -@@ -1247,21 +1250,21 @@ - fi - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST) -f \ -+ -d $(LIBDEST) -f $(STDLIB_CACHE_FLAGS) \ - -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ - $(DESTDIR)$(LIBDEST) - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST) -f \ -+ -d $(LIBDEST) -f $(STDLIB_CACHE_FLAGS) \ - -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ - $(DESTDIR)$(LIBDEST) - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST)/site-packages -f \ -+ -d $(LIBDEST)/site-packages -f $(STDLIB_CACHE_FLAGS) \ - -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST)/site-packages -f \ -+ -d $(LIBDEST)/site-packages -f $(STDLIB_CACHE_FLAGS) \ - -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages - -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ - $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt diff --git a/package/python3/006-cross-compile-getaddrinfo.patch b/package/python3/006-cross-compile-getaddrinfo.patch deleted file mode 100644 index c530883b44d..00000000000 --- a/package/python3/006-cross-compile-getaddrinfo.patch +++ /dev/null @@ -1,21 +0,0 @@ -Disable buggy_getaddrinfo configure test when cross-compiling with IPv6 support - -Signed-off-by: Vanya Sergeev - ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: b/configure.ac -=================================================================== ---- a/configure.ac -+++ b/configure.ac -@@ -3432,7 +3432,7 @@ - - AC_MSG_RESULT($ac_cv_buggy_getaddrinfo) - --if test $have_getaddrinfo = no || test "$ac_cv_buggy_getaddrinfo" = yes -+if test $have_getaddrinfo = no || test "$cross_compiling" != "yes" -a "$ac_cv_buggy_getaddrinfo" = yes - then - if test $ipv6 = yes - then diff --git a/package/python3/016-distutils-no-pep3147.patch b/package/python3/016-distutils-no-pep3147.patch deleted file mode 100644 index 0fdfeb24cab..00000000000 --- a/package/python3/016-distutils-no-pep3147.patch +++ /dev/null @@ -1,36 +0,0 @@ -Add distutils fix for PEP 3147 issue - -Python 3 has a new standard for installing .pyc file, called PEP -3147. Unfortunately, this standard requires both the .py and .pyc -files to be installed for a Python module to be found. This is quite -annoying on space-constrained embedded systems, since the .py file is -technically not required for execution. - -For the Python standard library, our Python 3 package already contains -a patch named python3-004-old-stdlib-cache.patch, which allows to -disable the PEP 3147 installation. - -But that lives the distutils/setuptools package an unsolved -problem. This patch therefore adds a new patch to Python, which makes -distutils package use the traditional installation path when byte -compiling, rather than the PEP 3147 installation path. Since -setuptools relies on distutils internally, it also fixes setuptools -based packages. - -Signed-off-by: Thomas Petazzoni - -Index: b/Lib/distutils/util.py -=================================================================== ---- a/Lib/distutils/util.py -+++ b/Lib/distutils/util.py -@@ -437,7 +437,9 @@ - # Terminology from the py_compile module: - # cfile - byte-compiled file - # dfile - purported source filename (same as 'file' by default) -- if optimize >= 0: -+ if "_python_sysroot" in os.environ: -+ cfile = file + (__debug__ and "c" or "o") -+ elif optimize >= 0: - cfile = importlib.util.cache_from_source( - file, debug_override=not optimize) - else: diff --git a/package/python3/python3.mk b/package/python3/python3.mk index fd5709a92e5..a37b791a870 100644 --- a/package/python3/python3.mk +++ b/package/python3/python3.mk @@ -147,7 +147,17 @@ define PYTHON3_TOUCH_GRAMMAR_FILES touch $(@D)/Include/graminit.h $(@D)/Python/graminit.c endef +# This prevents the Python Makefile from regenerating the +# Python/importlib.h header if Lib/importlib/_bootstrap.py has changed +# because its generation is broken in a cross-compilation environment +# and importlib.h is not used. + +define PYTHON3_TOUCH_IMPORTLIB_H + touch $(@D)/Python/importlib.h +endef + PYTHON3_POST_PATCH_HOOKS += PYTHON3_TOUCH_GRAMMAR_FILES +PYTHON3_POST_PATCH_HOOKS += PYTHON3_TOUCH_IMPORTLIB_H # # Remove useless files. In the config/ directory, only the Makefile diff --git a/package/qemu/qemu.hash b/package/qemu/qemu.hash index 4f7983f6072..cccb05936eb 100644 --- a/package/qemu/qemu.hash +++ b/package/qemu/qemu.hash @@ -1,2 +1,2 @@ # Locally computed, tarball verified with GPG signature -sha256 b6bab7f763d5be73e7cb5ee7d4c8365b7a8df2972c52fa5ded18893bd8281588 qemu-2.3.0.tar.bz2 +sha256 3443887401619fe33bfa5d900a4f2d6a79425ae2b7e43d5b8c36eb7a683772d4 qemu-2.5.0.tar.bz2 diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk index 0620804a00b..1b08b42f27f 100644 --- a/package/qemu/qemu.mk +++ b/package/qemu/qemu.mk @@ -4,10 +4,10 @@ # ################################################################################ -QEMU_VERSION = 2.3.0 +QEMU_VERSION = 2.5.0 QEMU_SOURCE = qemu-$(QEMU_VERSION).tar.bz2 QEMU_SITE = http://wiki.qemu.org/download -QEMU_LICENSE = GPLv2 LGPLv2.1 MIT BSD-3c BSD-2c Others/BSD-1c +QEMU_LICENSE = GPLv2, LGPLv2.1, MIT, BSD-3c, BSD-2c, Others/BSD-1c QEMU_LICENSE_FILES = COPYING COPYING.LIB # NOTE: there is no top-level license file for non-(L)GPL licenses; # the non-(L)GPL license texts are specified in the affected @@ -197,7 +197,6 @@ define QEMU_CONFIGURE_CMDS --disable-curses \ --disable-curl \ --disable-bluez \ - --disable-guest-base \ --disable-uuid \ --disable-vde \ --disable-linux-aio \ @@ -207,7 +206,6 @@ define QEMU_CONFIGURE_CMDS --disable-rbd \ --disable-libiscsi \ --disable-usb-redir \ - --disable-smartcard-nss \ --disable-strip \ --disable-seccomp \ --disable-sparse \ diff --git a/package/qhull/Config.in b/package/qhull/Config.in index f671e88d347..0a4b60ffbeb 100644 --- a/package/qhull/Config.in +++ b/package/qhull/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_QHULL bool "qhull" depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_4 # needs gcc >= 4.4 help Qhull computes the convex hull, Delaunay triangulation, Voronoi diagram, halfspace intersection about a point, @@ -14,6 +15,5 @@ config BR2_PACKAGE_QHULL http://www.qhull.org -comment "qhull needs a toolchain w/ C++, dynamic library" - depends on !BR2_INSTALL_LIBSTDCPP - depends on BR2_STATIC_LIBS +comment "qhull needs a toolchain w/ C++, dynamic library, gcc >= 4.4" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_4 diff --git a/package/qhull/qhull.hash b/package/qhull/qhull.hash new file mode 100644 index 00000000000..4f059f2b5bb --- /dev/null +++ b/package/qhull/qhull.hash @@ -0,0 +1,4 @@ +# From http://www.qhull.org/download/qhull-2015.2.md5sum +md5 e6270733a826a6a7c32b796e005ec3dc qhull-2015-src-7.2.0.tgz +# Locally computed +sha256 78b010925c3b577adc3d58278787d7df08f7c8fb02c3490e375eab91bb58a436 qhull-2015-src-7.2.0.tgz diff --git a/package/qhull/qhull.mk b/package/qhull/qhull.mk index 6992d71333c..8ea38f01ade 100644 --- a/package/qhull/qhull.mk +++ b/package/qhull/qhull.mk @@ -4,8 +4,9 @@ # ################################################################################ -QHULL_VERSION = 60d55819729d7b49391dde0271e15a56c70992b9 -QHULL_SITE = git://gitorious.org/qhull/qhull.git +QHULL_VERSION = 7.2.0 +QHULL_SITE = http://www.qhull.org/download +QHULL_SOURCE = qhull-2015-src-$(QHULL_VERSION).tgz QHULL_INSTALL_STAGING = YES QHULL_LICENSE = BSD-Style QHULL_LICENSE_FILES = COPYING.txt diff --git a/package/qpdf/0001-QUtil.hh-time_t-needs-include-time.h.patch b/package/qpdf/0001-QUtil.hh-time_t-needs-include-time.h.patch deleted file mode 100644 index 742c70cb2e0..00000000000 --- a/package/qpdf/0001-QUtil.hh-time_t-needs-include-time.h.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 88ac4baf0a55ef15f298592fa344d8ddae26fa33 Mon Sep 17 00:00:00 2001 -From: Peter Korsgaard -Date: Fri, 24 Apr 2015 19:58:41 +0200 -Subject: [PATCH] QUtil.hh: time_t needs #include - -Fixes build on uClibc without threads: - -http://autobuild.buildroot.net/results/af8/af857caef0c622aa9cfb1859b344880971ff263c/build-end.log - -Signed-off-by: Peter Korsgaard ---- - include/qpdf/QUtil.hh | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/include/qpdf/QUtil.hh b/include/qpdf/QUtil.hh -index 5c2e548..7f912e2 100644 ---- a/include/qpdf/QUtil.hh -+++ b/include/qpdf/QUtil.hh -@@ -14,6 +14,7 @@ - #include - #include - #include -+#include - - class RandomDataProvider; - --- -2.1.3 - diff --git a/package/qpdf/qpdf.hash b/package/qpdf/qpdf.hash index c6c6ebe1602..c882708b52c 100644 --- a/package/qpdf/qpdf.hash +++ b/package/qpdf/qpdf.hash @@ -1,2 +1,4 @@ -# Downloaded from http://sourceforge.net/projects/qpdf/files/qpdf/5.1.2/ -md5 0bd15ef5eea5f628951ab456c84e78ec qpdf-5.1.2.tar.gz +# From http://sourceforge.net/projects/qpdf/files/qpdf/6.0.0/qpdf-6.0.0.sha1/download +sha1 15ebe09d9b9ddd2309a67e4295693fcf82494e33 qpdf-6.0.0.tar.gz +# Locally computed +sha256 a9fdc7e94d38fcd3831f37b6e0fe36492bf79aa6d54f8f66062cf7f9c4155233 qpdf-6.0.0.tar.gz diff --git a/package/qpdf/qpdf.mk b/package/qpdf/qpdf.mk index bfd533cf91d..9601f985428 100644 --- a/package/qpdf/qpdf.mk +++ b/package/qpdf/qpdf.mk @@ -4,7 +4,7 @@ # ################################################################################ -QPDF_VERSION = 5.1.2 +QPDF_VERSION = 6.0.0 QPDF_SITE = http://downloads.sourceforge.net/project/qpdf/qpdf/$(QPDF_VERSION) QPDF_INSTALL_STAGING = YES QPDF_LICENSE = Artistic-2.0 diff --git a/package/qpid-proton/0001-proton-c-fix-C-compiler-detection-with-_ARG1-_ARG2.patch b/package/qpid-proton/0001-proton-c-fix-C-compiler-detection-with-_ARG1-_ARG2.patch deleted file mode 100644 index 16f4aba5210..00000000000 --- a/package/qpid-proton/0001-proton-c-fix-C-compiler-detection-with-_ARG1-_ARG2.patch +++ /dev/null @@ -1,52 +0,0 @@ -From f24be9ae9ab01c7507a366e9d5529c444f0b7edd Mon Sep 17 00:00:00 2001 -From: Luca Ceresoli -Date: Fri, 10 Jul 2015 10:13:47 +0200 -Subject: [PATCH] proton-c: fix C compiler detection with _ARG1/_ARG2 - -The C compiler commandline in CMake is composed by the concatenation of -CMAKE_C_COMPILER + CMAKE_C_COMPILER_ARG1 + CMAKE_C_COMPILER_ARG2. - -In most use cases the two additional argument variables are empty, thus -CMAKE_C_COMPILER can be used without any noticeable difference. - -The Buildroot embedded Linux build system [0], however, optionally exploits the -CMAKE_C_COMPILER_ARG1 variable to speed up the cross-compilation of CMake-based -packages using ccache. It does so by setting [1]: - - CMAKE_C_COMPILER = /path/to/ccache - CMAKE_C_COMPILER_ARG1 = /path/to/cross-gcc - -This works fine with other CMake-based packages, but proton-c's CMakeLists.txt -calls gcc to extract the compiler version. It does so by calling -"${CMAKE_C_COMPILER} -dumpversion", without honoring the two extra arguments. -Within Buildroot with ccache enabled, this means calling -"/path/to/ccache -dumpversion", which fails with the error: - - ccache: invalid option -- 'd' - -Fix the compiler check by adding the two arguments. - -[0] http://buildroot.net/ -[1] http://git.buildroot.net/buildroot/tree/support/misc/toolchainfile.cmake.in?id=2015.05 - -Signed-off-by: Luca Ceresoli ---- - proton-c/CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/proton-c/CMakeLists.txt b/proton-c/CMakeLists.txt -index 93449a9..8c31a89 100644 ---- a/proton-c/CMakeLists.txt -+++ b/proton-c/CMakeLists.txt -@@ -218,7 +218,7 @@ if (CMAKE_COMPILER_IS_GNUCC) - set (COMPILE_LANGUAGE_FLAGS "-std=c99") - set (COMPILE_PLATFORM_FLAGS "-std=gnu99") - -- execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION -+ execute_process(COMMAND ${CMAKE_C_COMPILER} ${CMAKE_C_COMPILER_ARG1} ${CMAKE_C_COMPILER_ARG2} -dumpversion OUTPUT_VARIABLE GCC_VERSION - OUTPUT_STRIP_TRAILING_WHITESPACE) - if (${GCC_VERSION} VERSION_LESS "4.3.0") - # Only a concern if contibuting code back. --- -1.9.1 - diff --git a/package/qt-webkit-kiosk/Config.in b/package/qt-webkit-kiosk/Config.in index 51383f0a079..32952d7c50d 100644 --- a/package/qt-webkit-kiosk/Config.in +++ b/package/qt-webkit-kiosk/Config.in @@ -8,7 +8,6 @@ config BR2_PACKAGE_QT_WEBKIT_KIOSK select BR2_PACKAGE_QT5MULTIMEDIA depends on !BR2_STATIC_LIBS # qt5webkit depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE # qt5webkit - depends on BR2_ARCH_HAS_ATOMICS # qt5webkit depends on !BR2_BINFMT_FLAT # qt5webkit help Simple kiosk-mode browser powered by Qt5Webkit diff --git a/package/qt/0008-Fix-conversion-constructor-error-for-legacy-c-compil.patch b/package/qt/0008-Fix-conversion-constructor-error-for-legacy-c-compil.patch new file mode 100644 index 00000000000..d7d387a78da --- /dev/null +++ b/package/qt/0008-Fix-conversion-constructor-error-for-legacy-c-compil.patch @@ -0,0 +1,163 @@ +From ea46f47fb3c475ba2d7581c15185b8d43e63b8c2 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Fri, 27 Feb 2015 21:30:52 +0100 +Subject: [PATCH] Fix conversion/constructor error for legacy c++ compiler. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fixes the following compile error with legacy c++ compiler: + +error: in C++98 ‘blitRect’ must be initialized by constructor, not by ‘{...}’ + +Signed-off-by: Peter Seiderer +--- + src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp | 14 +++++++------- + src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp | 6 +++--- + src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp | 6 +++--- + src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp | 2 +- + 4 files changed, 14 insertions(+), 14 deletions(-) + +diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp +index 876d0c2..ed69386 100644 +--- a/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp ++++ b/src/plugins/gfxdrivers/directfb/qdirectfbpaintengine.cpp +@@ -942,7 +942,7 @@ void QDirectFBPaintEngine::drawBufferSpan(const uint *buffer, int bufsize, + IDirectFBSurface *src = d->surfaceCache->getSurface(buffer, bufsize); + // ### how does this play with setDFBColor + src->SetColor(src, 0, 0, 0, const_alpha); +- const DFBRectangle rect = { 0, 0, length, 1 }; ++ const DFBRectangle rect = (DFBRectangle_C){ 0, 0, length, 1 }; + d->surface->Blit(d->surface, src, &rect, x, y); + } + +@@ -1223,14 +1223,14 @@ void QDirectFBPaintEnginePrivate::blit(const QRectF &dest, IDirectFBSurface *s, + const QRect dr = engine->state()->matrix.mapRect(dest).toRect(); + if (dr.isEmpty()) + return; +- const DFBRectangle sRect = { sr.x(), sr.y(), sr.width(), sr.height() }; ++ const DFBRectangle sRect = (DFBRectangle_C){ sr.x(), sr.y(), sr.width(), sr.height() }; + DFBResult result; + + if (dr.size() == sr.size()) { + result = surface->Blit(surface, s, &sRect, dr.x(), dr.y()); + } else { + Q_ASSERT(supportsStretchBlit()); +- const DFBRectangle dRect = { dr.x(), dr.y(), dr.width(), dr.height() }; ++ const DFBRectangle dRect = (DFBRectangle_C){ dr.x(), dr.y(), dr.width(), dr.height() }; + result = surface->StretchBlit(surface, s, &sRect, &dRect); + } + if (result != DFB_OK) +@@ -1261,7 +1261,7 @@ void QDirectFBPaintEnginePrivate::drawTiledPixmap(const QRectF &dest, const QPix + if (newClip.isNull()) + return; + +- const DFBRegion clip = { ++ const DFBRegion clip = (DFBRegion_C){ + newClip.x(), + newClip.y(), + newClip.right(), +@@ -1295,7 +1295,7 @@ void QDirectFBPaintEnginePrivate::drawTiledPixmap(const QRectF &dest, const QPix + while (y <= destinationRect.bottom()) { + qreal x = startX; + while (x <= destinationRect.right()) { +- const DFBRectangle destination = { qRound(x), qRound(y), mappedSize.width(), mappedSize.height() }; ++ const DFBRectangle destination = (DFBRectangle_C){ qRound(x), qRound(y), (int)mappedSize.width(), (int)mappedSize.height() }; + surface->StretchBlit(surface, sourceSurface, 0, &destination); + x += mappedSize.width(); + } +@@ -1337,7 +1337,7 @@ void QDirectFBPaintEnginePrivate::drawTiledPixmap(const QRectF &dest, const QPix + if (currentClip.isEmpty()) { + surface->SetClip(surface, 0); + } else { +- const DFBRegion clip = { ++ const DFBRegion clip = (DFBRegion_C){ + currentClip.x(), + currentClip.y(), + currentClip.right(), +@@ -1356,7 +1356,7 @@ void QDirectFBPaintEnginePrivate::updateClip() + surface->SetClip(surface, NULL); + clipType = NoClip; + } else if (clipData->hasRectClip) { +- const DFBRegion r = { ++ const DFBRegion r = (DFBRegion_C){ + clipData->clipRect.x(), + clipData->clipRect.y(), + clipData->clipRect.right(), +diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp +index 412e684..c59c47d 100644 +--- a/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp ++++ b/src/plugins/gfxdrivers/directfb/qdirectfbpixmap.cpp +@@ -363,7 +363,7 @@ void QDirectFBPixmapData::copy(const QPixmapData *data, const QRect &rect) + } else { + dfbSurface->SetBlittingFlags(dfbSurface, DSBLIT_NOFX); + } +- const DFBRectangle blitRect = { rect.x(), rect.y(), ++ const DFBRectangle blitRect = (DFBRectangle_C){ rect.x(), rect.y(), + rect.width(), rect.height() }; + w = rect.width(); + h = rect.height(); +@@ -465,7 +465,7 @@ QPixmap QDirectFBPixmapData::transformed(const QTransform &transform, + } + data->dfbSurface->SetBlittingFlags(data->dfbSurface, flags); + +- const DFBRectangle destRect = { 0, 0, size.width(), size.height() }; ++ const DFBRectangle destRect = (DFBRectangle_C){ 0, 0, size.width(), size.height() }; + data->dfbSurface->StretchBlit(data->dfbSurface, dfbSurface, 0, &destRect); + data->w = size.width(); + data->h = size.height(); +@@ -551,7 +551,7 @@ bool QDirectFBPixmapData::scroll(int dx, int dy, const QRect &rect) + return false; + } + +- const DFBRectangle source = { rect.x(), rect.y(), rect.width(), rect.height() }; ++ const DFBRectangle source = (DFBRectangle_C){ rect.x(), rect.y(), rect.width(), rect.height() }; + result = dfbSurface->Blit(dfbSurface, dfbSurface, &source, source.x + dx, source.y + dy); + if (result != DFB_OK) { + DirectFBError("QDirectFBPixmapData::scroll", result); +diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp +index eab9580..d26e5bf 100644 +--- a/src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp ++++ b/src/plugins/gfxdrivers/directfb/qdirectfbscreen.cpp +@@ -1635,7 +1635,7 @@ void QDirectFBScreen::solidFill(const QColor &color, const QRegion ®ion) + static inline void clearRect(IDirectFBSurface *surface, const QColor &color, const QRect &rect) + { + Q_ASSERT(surface); +- const DFBRegion region = { rect.left(), rect.top(), rect.right(), rect.bottom() }; ++ const DFBRegion region = (DFBRegion_C){ rect.left(), rect.top(), rect.right(), rect.bottom() }; + // could just reinterpret_cast this to a DFBRegion + surface->SetClip(surface, ®ion); + surface->Clear(surface, color.red(), color.green(), color.blue(), color.alpha()); +@@ -1716,14 +1716,14 @@ void QDirectFBScreen::flipSurface(IDirectFBSurface *surface, DFBSurfaceFlipFlags + const DFBSurfaceFlipFlags nonWaitFlags = flipFlags & ~DSFLIP_WAIT; + for (int i=0; iFlip(surface, &dfbReg, i + 1 < rects.size() ? nonWaitFlags : flipFlags); + } + } else { + const QRect r = region.boundingRect(); +- const DFBRegion dfbReg = { r.x() + offset.x(), r.y() + offset.y(), ++ const DFBRegion dfbReg = (DFBRegion_C){ r.x() + offset.x(), r.y() + offset.y(), + r.right() + offset.x(), + r.bottom() + offset.y() }; + surface->Flip(surface, &dfbReg, flipFlags); +diff --git a/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp b/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp +index 4dff907..25ad06b 100644 +--- a/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp ++++ b/src/plugins/gfxdrivers/directfb/qdirectfbwindowsurface.cpp +@@ -333,7 +333,7 @@ bool QDirectFBWindowSurface::scroll(const QRegion ®ion, int dx, int dy) + } + dfbSurface->SetBlittingFlags(dfbSurface, DSBLIT_NOFX); + const QRect r = region.boundingRect(); +- const DFBRectangle rect = { r.x(), r.y(), r.width(), r.height() }; ++ const DFBRectangle rect = (DFBRectangle_C){ r.x(), r.y(), r.width(), r.height() }; + dfbSurface->Blit(dfbSurface, dfbSurface, &rect, r.x() + dx, r.y() + dy); + return true; + } +-- +2.1.4 + diff --git a/package/qt/0009-Fix-library-inclusion-order-when-building-statically.patch b/package/qt/0009-Fix-library-inclusion-order-when-building-statically.patch new file mode 100644 index 00000000000..f6163fa0d2f --- /dev/null +++ b/package/qt/0009-Fix-library-inclusion-order-when-building-statically.patch @@ -0,0 +1,105 @@ +From 7a912823158a4113256c3113a34c38d6b241d275 Mon Sep 17 00:00:00 2001 +From: Alexey Brodkin +Date: Wed, 13 Jan 2016 20:15:36 +0300 +Subject: [PATCH] Fix library inclusion order when building statically + +When building application statically it's important to keep +libraries we're linking against in order. Otherwise if libA depends on +libB but it is mentioned after libB in linker command line +there will be unresolved symbols. + +Consider real example - configuration of Qt with glib for static build. +Initially reported by Buildroot autobuilder here: +http://autobuild.buildroot.net/results/174/174c6e47eb761f9897275b6fedff742ace2f3081 + +What happens here: + +[1] Qt's configuration script tries to build glib test app + (in config.tests/unix/glib) + +[2] For that it first asks which libs to use during linkage this way: + QT_LIBS_GLIB=`$PKG_CONFIG --libs glib-2.0 gthread-2.0 2>/dev/null` + + In our case we're getting something like this: + -L/.../sysroot/usr/lib -lintl -lgthread-2.0 -pthread -lglib-2.0 \ + -lintl -pthread -lintl + + Note "-lintl" is mentioned 3 times because libgthread depends on + libthread and both of them plus libglib all depend on libintl - so + we're getting "lintl" for each separate library mentioned above. + +[3] Now we execute "compileTest" for real heavy lifting this way: + compileTest unix/glib "Glib" $QT_CFLAGS_GLIB $QT_LIBS_GLIB ... + +[4] compileTest (the one for unix) parses command-line passed to it + groups all entries with "-l" prefix and puts them in LFLAGS + variable. And finally executes qmake passing it that kind of + construction: + $OUTDIR/bin/qmake ..."LIBS*=$LFLAGS" + +[5] When qmake sees construction "MYVAR*=MYVAL" it populates MYVAR with + unique values from MYVAL string. + +[6] As a result qmake generated Makefile with the following: + LIBS = $(SUBLIBS) -pthread -L/.../sysroot/usr/lib -lintl -lgthread-2.0 \ + -lglib-2.0 + +[7] And essentially on attempt to link glib test app a failure happens + because libglib needs libintl, i.e. "-lintl" must follow "-lglib-2.0": +-------------------->8------------------ +linking glib + +g++ -static -Wl,-O1 -o glib glib.o -pthread -L/.../sysroot/usr/lib \ +-lintl -lgthread-2.0 -lglib-2.0 + +/.../sysroot/usr/lib/libglib-2.0.a(libglib_2_0_la-ggettext.o): In function '_g_dgettext_should_translate': +ggettext.c:(.text+0x28): undefined reference to `libintl_textdomain' +ggettext.c:(.text+0x36): undefined reference to `libintl_gettext' +/.../sysroot/usr/lib/libglib-2.0.a(libglib_2_0_la-ggettext.o): In function `ensure_gettext_initialized': +ggettext.c:(.text+0xe6): undefined reference to `libintl_bindtextdomain' +ggettext.c:(.text+0xf6): undefined reference to `libintl_bind_textdomain_codeset' +/.../sysroot/usr/lib/libglib-2.0.a(libglib_2_0_la-ggettext.o): In function `g_dgettext': +ggettext.c:(.text+0x148): undefined reference to `libintl_dgettext' +/.../sysroot/usr/lib/libglib-2.0.a(libglib_2_0_la-ggettext.o): In function `g_dcgettext': +ggettext.c:(.text+0x2dc): undefined reference to `libintl_dcgettext' +/.../sysroot/usr/lib/libglib-2.0.a(libglib_2_0_la-ggettext.o): In function `g_dngettext': +ggettext.c:(.text+0x32a): undefined reference to `libintl_dngettext' +collect2: error: ld returned 1 exit status +Makefile:99: recipe for target 'glib' failed +make: *** [glib] Error 1 + +Glib disabled. +Glib support cannot be enabled due to functionality tests! + Turn on verbose messaging (-v) to ./configure to see the final report. + If you believe this message is in error you may use the continue + switch (-continue) to ./configure to continue. +-------------------->8------------------ + +Solution to this problem is simple we have to pass all libraries exactly +in order of their initial mention by upper layers. + +Change-Id: I7ff00901031a8eb85b4fbd7889b0e0c02be806bb + +This fix was sent to Qt Gerrit for review here: +https://codereview.qt-project.org/#/c/145967/ + +--- + config.tests/unix/compile.test | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/config.tests/unix/compile.test b/config.tests/unix/compile.test +index f484f03..dac0a4f 100755 +--- a/config.tests/unix/compile.test ++++ b/config.tests/unix/compile.test +@@ -73,7 +73,7 @@ test -r Makefile && $MAKE distclean >/dev/null 2>&1 + rm -f "$EXE" "${EXE}.exe" + + echo "QT_BUILD_TREE = $OUTDIR" > "$OUTDIR/$TEST/.qmake.cache" +-"$OUTDIR/bin/qmake" -spec "$QMKSPEC" "CONFIG+=$QMAKE_CONFIG" "CONFIG-=debug_and_release" "LIBS*=$LFLAGS" "LIBS+=$MAC_ARCH_LFLAGS" "INCLUDEPATH*=$INCLUDEPATH" "QMAKE_CXXFLAGS*=$CXXFLAGS" "QMAKE_CXXFLAGS+=$MAC_ARCH_CXXFLAGS" "$SRCDIR/$TEST/$EXE.pro" -o "$OUTDIR/$TEST/Makefile" ++"$OUTDIR/bin/qmake" -spec "$QMKSPEC" "CONFIG+=$QMAKE_CONFIG" "CONFIG-=debug_and_release" "LIBS=$LFLAGS" "LIBS+=$MAC_ARCH_LFLAGS" "INCLUDEPATH*=$INCLUDEPATH" "QMAKE_CXXFLAGS*=$CXXFLAGS" "QMAKE_CXXFLAGS+=$MAC_ARCH_CXXFLAGS" "$SRCDIR/$TEST/$EXE.pro" -o "$OUTDIR/$TEST/Makefile" + + if [ "$VERBOSE" = "yes" ]; then + $MAKE +-- +2.4.3 + diff --git a/package/qt/Config.in b/package/qt/Config.in index 418248ab0ea..248af00ec76 100644 --- a/package/qt/Config.in +++ b/package/qt/Config.in @@ -407,16 +407,17 @@ config BR2_PACKAGE_QT_NETWORK config BR2_PACKAGE_QT_ARCH_SUPPORTS_WEBKIT bool + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # see src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h # see http://lists.busybox.net/pipermail/buildroot/2014-November/112605.html default y if BR2_arc || BR2_arm || BR2_armeb || BR2_i386 || BR2_microblazeel || \ BR2_microblazebe || BR2_mips || BR2_mipsel || \ (BR2_mips64 || BR2_mips64el) && !BR2_MIPS_NABI32 || BR2_powerpc || \ - BR2_powerpc64 || BR2_powerpc64le || BR2_sparc || BR2_x86_64 + BR2_powerpc64 || BR2_powerpc64le || BR2_x86_64 # The CodeSourcery SuperH toolchain fails to build Webkit, # with an assertion failure in binutils. default y if (BR2_sh4 || BR2_sh4eb || BR2_sh4a || BR2_sh4aeb) && \ - !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201209 + !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH config BR2_PACKAGE_QT_WEBKIT bool "WebKit Module" @@ -454,12 +455,13 @@ config BR2_PACKAGE_QT_OPENSSL config BR2_PACKAGE_QT_ARCH_SUPPORTS_SCRIPT bool + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # see http://lists.busybox.net/pipermail/buildroot/2014-November/112605.html - default y if BR2_arc || BR2_arm || BR2_armeb || aarch64 || BR2_i386 || \ + default y if BR2_arc || BR2_arm || BR2_armeb || BR2_aarch64 || BR2_i386 || \ BR2_microblazeel || BR2_microblazebe || BR2_mips || BR2_mipsel || \ BR2_mips64 || BR2_mips64el || BR2_nios2 || BR2_powerpc || \ BR2_powerpc64 || BR2_powerpc64le || BR2_sh4 || BR2_sh4eb || \ - BR2_sh4a || BR2_sh4aeb || BR2_sparc || BR2_x86_64 + BR2_sh4a || BR2_sh4aeb || BR2_x86_64 config BR2_PACKAGE_QT_SCRIPT bool "Script Module" diff --git a/package/qt/Config.mouse.in b/package/qt/Config.mouse.in index 16c41c18f62..11da956f62f 100644 --- a/package/qt/Config.mouse.in +++ b/package/qt/Config.mouse.in @@ -11,6 +11,11 @@ config BR2_PACKAGE_QT_MOUSE_LINUXINPUT config BR2_PACKAGE_QT_MOUSE_TSLIB bool "tslib" + select BR2_PACKAGE_TSLIB + depends on !BR2_STATIC_LIBS # tslib + +comment "tslib support needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS config BR2_PACKAGE_QT_MOUSE_QVFB bool "qvfb" diff --git a/package/qt/qt.mk b/package/qt/qt.mk index e0e5d22bdec..c4fff2dc3a5 100644 --- a/package/qt/qt.mk +++ b/package/qt/qt.mk @@ -203,6 +203,10 @@ else QT_CONFIGURE_OPTS += -static endif +ifeq ($(BR2_STATIC_LIBS),y) +QT_CONFIGURE_OPTS += -D QT_NO_DYNAMIC_LIBRARY +endif + ifeq ($(BR2_ENDIAN),"LITTLE") QT_CONFIGURE_OPTS += -little-endian else @@ -656,13 +660,30 @@ define QT_INSTALL_TARGET_FONTS mkdir -p $(TARGET_DIR)/usr/lib/fonts cp -dpf $(QT_FONTS) $(TARGET_DIR)/usr/lib/fonts endef +ifneq ($(BR2_PACKAGE_QT_FONT_MICRO)$(BR2_PACKAGE_QT_FONT_FIXED),) +# as stated in the font source src/3rdparty/fonts/micro.bdf +# source src/3rdparty/fonts/5x7.bdf and source src/3rdparty/fonts/6x13.bdf +QT_LICENSE += , Public Domain (Micro/Fixed font) +endif +ifneq ($(BR2_PACKAGE_QT_FONT_HELVETICA)$(BR2_PACKAGE_QT_FONT_JAPANESE),) +QT_LICENSE += , Adobe Helvetica license (Helvetica/Japanese fonts) +QT_LICENSE_FILES += src/3rdparty/fonts/COPYING.Helvetica +endif +ifeq ($(BR2_PACKAGE_QT_FONT_UNIFONT),y) +QT_LICENSE += , Freeware (Unifont font) +QT_LICENSE_FILES += src/3rdparty/fonts/COPYRIGHT.Unifont endif +endif # QT_FONTS ifeq ($(BR2_PACKAGE_QT_QTFREETYPE)$(BR2_PACKAGE_QT_SYSTEMFREETYPE),y) define QT_INSTALL_TARGET_FONTS_TTF mkdir -p $(TARGET_DIR)/usr/lib/fonts cp -dpf $(STAGING_DIR)/usr/lib/fonts/*.ttf $(TARGET_DIR)/usr/lib/fonts endef +QT_LICENSE += , Bitstream license (DejaVu/Vera TrueType fonts) +QT_LICENSE_FILES += src/3rdparty/fonts/COPYRIGHT.DejaVu \ + src/3rdparty/fonts/README.DejaVu \ + src/3rdparty/fonts/COPYRIGHT.Vera endif endif # BR2_PACKAGE_QT_EMBEDDED diff --git a/package/qt5/Config.in b/package/qt5/Config.in index 3fb65f7c34a..ad6226e07c6 100644 --- a/package/qt5/Config.in +++ b/package/qt5/Config.in @@ -11,15 +11,16 @@ config BR2_PACKAGE_QT5_JSCORE_AVAILABLE depends on !BR2_ARM_CPU_ARMV4 default y -comment "Qt5 needs a toolchain w/ wchar, NPTL, C++" +comment "Qt5 needs a toolchain w/ wchar, NPTL, C++, dynamic library" depends on !BR2_PACKAGE_QT - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS menuconfig BR2_PACKAGE_QT5 bool "Qt5" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on !BR2_STATIC_LIBS depends on !BR2_PACKAGE_QT select BR2_PACKAGE_QT5BASE help @@ -30,6 +31,7 @@ menuconfig BR2_PACKAGE_QT5 if BR2_PACKAGE_QT5 source "package/qt5/qt5base/Config.in" +source "package/qt5/qt53d/Config.in" source "package/qt5/qt5connectivity/Config.in" source "package/qt5/qt5declarative/Config.in" source "package/qt5/qt5enginio/Config.in" diff --git a/package/qt5/qt5.mk b/package/qt5/qt5.mk index d7f38acbfbb..bb33903eaa5 100644 --- a/package/qt5/qt5.mk +++ b/package/qt5/qt5.mk @@ -1,5 +1,5 @@ QT5_VERSION_MAJOR = 5.5 -QT5_VERSION = $(QT5_VERSION_MAJOR).0 +QT5_VERSION = $(QT5_VERSION_MAJOR).1 QT5_SITE = http://download.qt.io/official_releases/qt/$(QT5_VERSION_MAJOR)/$(QT5_VERSION)/submodules include $(sort $(wildcard package/qt5/*/*.mk)) diff --git a/package/qt5/qt53d/Config.in b/package/qt5/qt53d/Config.in new file mode 100644 index 00000000000..b2d2912d5b2 --- /dev/null +++ b/package/qt5/qt53d/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_QT53D + bool "qt53d" + select BR2_PACKAGE_QT5BASE + select BR2_PACKAGE_QT5BASE_GUI + select BR2_PACKAGE_QT5DECLARATIVE + select BR2_PACKAGE_QT5DECLARATIVE_QUICK + depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE # qt5declarative + depends on BR2_PACKAGE_QT5_GL_AVAILABLE # qt5declarative_quick + help + Qt is a cross-platform application and UI framework for + developers using C++. + + This package corresponds to the qt53d module. + + http://doc.qt.io/qt-5/qt3d-index.html + +comment "qt53d module needs an OpenGL-capable backend" + depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE + depends on !BR2_PACKAGE_QT5_GL_AVAILABLE diff --git a/package/qt5/qt53d/qt53d.hash b/package/qt5/qt53d/qt53d.hash new file mode 100644 index 00000000000..8fbc42fb80b --- /dev/null +++ b/package/qt5/qt53d/qt53d.hash @@ -0,0 +1,2 @@ +# Hash from http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qt3d-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 e380906e2bcbd825dab45043bf063dd88b793c0d5fb050ee915bf4e2b58b1bf7 qt3d-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt53d/qt53d.mk b/package/qt5/qt53d/qt53d.mk new file mode 100644 index 00000000000..810242b449e --- /dev/null +++ b/package/qt5/qt53d/qt53d.mk @@ -0,0 +1,41 @@ +################################################################################ +# +# qt53d +# +################################################################################ + +QT53D_VERSION = $(QT5_VERSION) +QT53D_SITE = $(QT5_SITE) +QT53D_SOURCE = qt3d-opensource-src-$(QT5SVG_VERSION).tar.xz +QT53D_DEPENDENCIES = qt5base qt5declarative +QT53D_INSTALL_STAGING = YES + +ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) +QT53D_LICENSE = GPLv2+ or LGPLv3 +QT53D_LICENSE_FILES = LICENSE.GPL LICENSE.LGPLv3 +else +QT53D_LICENSE = Commercial license +QT53D_REDISTRIBUTE = NO +endif + +define QT53D_CONFIGURE_CMDS + (cd $(@D); $(TARGET_MAKE_ENV) $(HOST_DIR)/usr/bin/qmake) +endef + +define QT53D_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define QT53D_INSTALL_STAGING_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install + $(QT5_LA_PRL_FILES_FIXUP) +endef + +ifeq ($(BR2_STATIC_LIBS),) +define QT53D_INSTALL_TARGET_CMDS + cp -dpf $(STAGING_DIR)/usr/lib/libQt53D*.so.* $(TARGET_DIR)/usr/lib + cp -dpfr $(STAGING_DIR)/usr/qml/Qt3D $(TARGET_DIR)/usr/qml +endef +endif + +$(eval $(generic-package)) diff --git a/package/qt5/qt5base/0002-mkspecs-files.patch b/package/qt5/qt5base/0002-mkspecs-files.patch deleted file mode 100644 index 09c1b67c113..00000000000 --- a/package/qt5/qt5base/0002-mkspecs-files.patch +++ /dev/null @@ -1,39 +0,0 @@ -Add a Buildroot 'device' to ease cross-compilation - -Qt5 has a mechanism to support "device" profiles, so that people can -specify the compiler, compiler flags and so on for a specific device. - -We leverage this mechanism in the Buildroot packaging of qt5 to -simplify cross-compilation: we have our own "device" definition, which -allows us to easily pass the cross-compiler paths and flags from our -qt5.mk. - -Signed-off-by: Thomas Petazzoni - -Index: b/mkspecs/devices/linux-buildroot-g++/qmake.conf -=================================================================== ---- /dev/null -+++ b/mkspecs/devices/linux-buildroot-g++/qmake.conf -@@ -0,0 +1,16 @@ -+include(../common/linux_device_pre.conf) -+ -+# modifications to g++-unix.conf -+QMAKE_CC = $${BR_CCACHE} $${CROSS_COMPILE}gcc -+QMAKE_CXX = $${BR_CCACHE} $${CROSS_COMPILE}g++ -+ -+#modifications to gcc-base.conf -+QMAKE_CFLAGS += $${BR_COMPILER_CFLAGS} -+QMAKE_CXXFLAGS += $${BR_COMPILER_CXXFLAGS} -+QMAKE_CXXFLAGS_RELEASE += -O3 -+CONFIG += nostrip -+ -+QMAKE_LIBS += -lrt -lpthread -ldl -+ -+include(../common/linux_device_post.conf) -+load(qt_config) -Index: b/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h -=================================================================== ---- /dev/null -+++ b/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h -@@ -0,0 +1 @@ -+#include "../../linux-g++/qplatformdefs.h" diff --git a/package/qt5/qt5base/0003-xcb-egl-fixes.patch b/package/qt5/qt5base/0003-xcb-egl-fixes.patch index 53f8453461f..65d6f6921c1 100644 --- a/package/qt5/qt5base/0003-xcb-egl-fixes.patch +++ b/package/qt5/qt5base/0003-xcb-egl-fixes.patch @@ -1,12 +1,15 @@ -The vivante headers pull in X11 defines which break eglconvenience +Some EGL headers pull in X11 defines which break eglconvenience * Adds a missing include to qeglplatformcontext.cpp * Fix namespace collision on CursorShape, pulled in from X11/X.h * Do not pass MESA_EGL_NO_X11_HEADERS when xcb is use +* Reorder includes to have the X11-header the last include [based on patch from Yocto project] Signed-off-by: Jérôme Pouiller - +Updated to fix issue in qeglplatformscreen (reorder includes, see also +http://lists.qt-project.org/pipermail/development/2013-March/010511.html) +Signed-off-by: Marc Andre diff -Nuar a/src/platformsupport/eglconvenience/eglconvenience.pri b/src/platformsupport/eglconvenience/eglconvenience.pri --- a/src/platformsupport/eglconvenience/eglconvenience.pri 2014-08-07 16:53:50.038277168 -0400 @@ -61,4 +64,19 @@ diff -Nuar a/src/platformsupport/eglconvenience/qeglplatformcontext.cpp b/src/pl #include "qeglplatformscreen_p.h" QT_BEGIN_NAMESPACE +--- qtbase-opensource-src-5.5.0.orig/src/platformsupport/eglconvenience/qeglplatformscreen.cpp 2015-09-01 14:46:57.116883353 +0200 ++++ qtbase-opensource-src-5.5.0/src/platformsupport/eglconvenience/qeglplatformscreen.cpp 2015-09-01 14:47:36.560882333 +0200 +@@ -31,11 +31,11 @@ + ** + ****************************************************************************/ + +-#include "qeglplatformscreen_p.h" +-#include "qeglplatformwindow_p.h" + #include + #include + #include ++#include "qeglplatformscreen_p.h" ++#include "qeglplatformwindow_p.h" + + QT_BEGIN_NAMESPACE diff --git a/package/qt5/qt5base/0004-no-gold-linker-for-host-build.patch b/package/qt5/qt5base/0004-no-gold-linker-for-host-build.patch deleted file mode 100644 index 3dc9a6d50d5..00000000000 --- a/package/qt5/qt5base/0004-no-gold-linker-for-host-build.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 2cb4b7e947f64580592afaf221d4b261d980bb45 Mon Sep 17 00:00:00 2001 -From: Peter Seiderer -Date: Tue, 19 May 2015 21:30:21 +0200 -Subject: [PATCH] Disable gold linker/new dtags support for host builds - -There is no test for gold linker and new dtags support for the host build -(only for the target compiler/build) which leads to trouble in some cross -compiling environments (see [1] for details). - -So disable gold linker/new dtags support unconditionally for host builds. - -[1] http://lists.busybox.net/pipermail/buildroot/2015-May/128303.html - -Task-number: QTBUG-46125 -Change-Id: Ic62828704dcce461487d63860705158cce3e4af8 -Reviewed-by: Oswald Buddenhagen ---- - mkspecs/features/default_post.prf | 7 +++++-- - 1 file changed, 5 insertions(+), 2 deletions(-) - -diff --git a/mkspecs/features/default_post.prf b/mkspecs/features/default_post.prf -index 8e68b95..bcaddc8 100644 ---- a/mkspecs/features/default_post.prf -+++ b/mkspecs/features/default_post.prf -@@ -62,8 +62,11 @@ debug { - QMAKE_LIBFLAGS += $$QMAKE_LIBFLAGS_RELEASE - } - --use_gold_linker: QMAKE_LFLAGS += $$QMAKE_LFLAGS_USE_GOLD --enable_new_dtags: QMAKE_LFLAGS += $$QMAKE_LFLAGS_NEW_DTAGS -+# disable special linker flags for host builds (no proper test for host support yet) -+!host_build { -+ use_gold_linker: QMAKE_LFLAGS += $$QMAKE_LFLAGS_USE_GOLD -+ enable_new_dtags: QMAKE_LFLAGS += $$QMAKE_LFLAGS_NEW_DTAGS -+} - - dll:win32: QMAKE_LFLAGS += $$QMAKE_LFLAGS_DLL - static:mac: QMAKE_LFLAGS += $$QMAKE_LFLAGS_STATIC_LIB --- -2.1.0 - diff --git a/package/qt5/qt5base/0007-big_endian-fix_destformat.patch b/package/qt5/qt5base/0007-big_endian-fix_destformat.patch deleted file mode 100644 index b30d22003a3..00000000000 --- a/package/qt5/qt5base/0007-big_endian-fix_destformat.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 02ab210ea9bc5ee53fa4f1db2f068ce24272a6cd Mon Sep 17 00:00:00 2001 -From: Allan Sandfeld Jensen -Date: Fri, 3 Jul 2015 14:19:02 +0200 -Subject: [PATCH] Fix compile error on big endian - -DestFormat is not defined here but should be Format_RGBX8888 - -Change-Id: Ie33989a6fc31650434281a6b7b0f4806524268af -Reviewed-by: Konstantin Ritt -Reviewed-by: Timo Jyrinki -Reviewed-by: Simon Hausmann - -Upstream-Status: https://codereview.qt-project.org/#/c/120654/ -Signed-off-by: Julien Corjon ---- - src/gui/image/qimage_conversions.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/gui/image/qimage_conversions.cpp b/src/gui/image/qimage_conversions.cpp -index e0ca2c5..02f32aa 100644 ---- a/src/gui/image/qimage_conversions.cpp -+++ b/src/gui/image/qimage_conversions.cpp -@@ -1103,7 +1103,7 @@ static bool mask_alpha_converter_rgbx_inplace(QImageData *data, Qt::ImageConvers - } - rgb_data += pad; - } -- data->format = DestFormat; -+ data->format = QImage::Format_RGBX8888; - return true; - #endif - } --- -2.1.0 - diff --git a/package/qt5/qt5base/0008-QtGui-force-image-dir-in-include_path.patch b/package/qt5/qt5base/0008-QtGui-force-image-dir-in-include_path.patch deleted file mode 100644 index 8886fb710de..00000000000 --- a/package/qt5/qt5base/0008-QtGui-force-image-dir-in-include_path.patch +++ /dev/null @@ -1,89 +0,0 @@ -From 7f282aa9f718389199b95b7f53ecd6401172fcc6 Mon Sep 17 00:00:00 2001 -From: Oswald Buddenhagen -Date: Fri, 24 Jul 2015 13:18:29 +0200 -Subject: [PATCH 1/1] fix build with no built-in image handlers - -the handlers' .pri files added $$PWD to INCLUDEPATH to make the files -self-contained when used externally, but this polluted the include path -of the gui module itself, thus hiding incorrect use of QPA includes. - -Task-number: QTBUG-47400 -Change-Id: I576469a71e8ded0b409d62687999c0fa884613f9 -Signed-off-by: Julien Corjon ---- - src/gui/image/qgifhandler.pri | 1 - - src/gui/image/qjpeghandler.pri | 1 - - src/gui/image/qpnghandler.pri | 1 - - src/gui/painting/qbrush.cpp | 2 +- - src/plugins/imageformats/gif/gif.pro | 1 + - src/plugins/imageformats/jpeg/jpeg.pro | 1 + - 6 files changed, 3 insertions(+), 4 deletions(-) - -diff --git a/src/gui/image/qgifhandler.pri b/src/gui/image/qgifhandler.pri -index 6eb0751..ec33101 100644 ---- a/src/gui/image/qgifhandler.pri -+++ b/src/gui/image/qgifhandler.pri -@@ -1,4 +1,3 @@ - # common to plugin and built-in forms --INCLUDEPATH *= $$PWD - HEADERS += $$PWD/qgifhandler_p.h - SOURCES += $$PWD/qgifhandler.cpp -diff --git a/src/gui/image/qjpeghandler.pri b/src/gui/image/qjpeghandler.pri -index c8de33d..de40c67 100644 ---- a/src/gui/image/qjpeghandler.pri -+++ b/src/gui/image/qjpeghandler.pri -@@ -1,5 +1,4 @@ - # common to plugin and built-in forms --INCLUDEPATH *= $$PWD - HEADERS += $$PWD/qjpeghandler_p.h - SOURCES += $$PWD/qjpeghandler.cpp - contains(QT_CONFIG, system-jpeg) { -diff --git a/src/gui/image/qpnghandler.pri b/src/gui/image/qpnghandler.pri -index aca7e2c..9ab175d 100644 ---- a/src/gui/image/qpnghandler.pri -+++ b/src/gui/image/qpnghandler.pri -@@ -1,4 +1,3 @@ --INCLUDEPATH *= $$PWD - HEADERS += $$PWD/qpnghandler_p.h - SOURCES += $$PWD/qpnghandler.cpp - contains(QT_CONFIG, system-png) { -diff --git a/src/gui/painting/qbrush.cpp b/src/gui/painting/qbrush.cpp -index 670717c..c3a0f5c 100644 ---- a/src/gui/painting/qbrush.cpp -+++ b/src/gui/painting/qbrush.cpp -@@ -35,7 +35,7 @@ - #include "qpixmap.h" - #include "qbitmap.h" - #include "qpixmapcache.h" --#include "qplatformpixmap.h" -+#include - #include "qdatastream.h" - #include "qvariant.h" - #include "qline.h" -diff --git a/src/plugins/imageformats/gif/gif.pro b/src/plugins/imageformats/gif/gif.pro -index 898f06e..2a5048b 100644 ---- a/src/plugins/imageformats/gif/gif.pro -+++ b/src/plugins/imageformats/gif/gif.pro -@@ -5,6 +5,7 @@ PLUGIN_CLASS_NAME = QGifPlugin - load(qt_plugin) - - include(../../../gui/image/qgifhandler.pri) -+INCLUDEPATH += ../../../gui/image - SOURCES += $$PWD/main.cpp - HEADERS += $$PWD/main.h - OTHER_FILES += gif.json -diff --git a/src/plugins/imageformats/jpeg/jpeg.pro b/src/plugins/imageformats/jpeg/jpeg.pro -index 45bf7bb..e33fde1 100644 ---- a/src/plugins/imageformats/jpeg/jpeg.pro -+++ b/src/plugins/imageformats/jpeg/jpeg.pro -@@ -9,6 +9,7 @@ QT += core-private - QTDIR_build:REQUIRES = "!contains(QT_CONFIG, no-jpeg)" - - include(../../../gui/image/qjpeghandler.pri) -+INCLUDEPATH += ../../../gui/image - SOURCES += main.cpp - HEADERS += main.h - OTHER_FILES += jpeg.json --- -2.1.0 - diff --git a/package/qt5/qt5base/0009-fix-eglfs-for-sunxi-mali.patch b/package/qt5/qt5base/0009-fix-eglfs-for-sunxi-mali.patch new file mode 100644 index 00000000000..a578af39213 --- /dev/null +++ b/package/qt5/qt5base/0009-fix-eglfs-for-sunxi-mali.patch @@ -0,0 +1,109 @@ +Fix Qt5 configure script not autodetecting sunxi-mali drivers rendering +in eglfs_mali not being built. The patch also fix compatibility issues +regarding header files only included in the proprietary version. + +This will be fixed in Qt 5.6. + +ref: https://codereview.qt-project.org/#/c/125837/ + +Signed-off-by: Daniel Nyström + +diff --git a/config.tests/qpa/eglfs-mali-2/eglfs-mali-2.cpp b/config.tests/qpa/eglfs-mali-2/eglfs-mali-2.cpp +new file mode 100644 +index 0000000..1914d64 +--- /dev/null ++++ b/config.tests/qpa/eglfs-mali-2/eglfs-mali-2.cpp +@@ -0,0 +1,44 @@ ++/**************************************************************************** ++** ++** Copyright (C) 2015 The Qt Company Ltd. ++** Contact: http://www.qt.io/licensing/ ++** ++** This file is part of the config.tests of the Qt Toolkit. ++** ++** $QT_BEGIN_LICENSE:LGPL21$ ++** Commercial License Usage ++** Licensees holding valid commercial Qt licenses may use this file in ++** accordance with the commercial license agreement provided with the ++** Software or, alternatively, in accordance with the terms contained in ++** a written agreement between you and The Qt Company. For licensing terms ++** and conditions see http://www.qt.io/terms-conditions. For further ++** information use the contact form at http://www.qt.io/contact-us. ++** ++** GNU Lesser General Public License Usage ++** Alternatively, this file may be used under the terms of the GNU Lesser ++** General Public License version 2.1 or version 3 as published by the Free ++** Software Foundation and appearing in the file LICENSE.LGPLv21 and ++** LICENSE.LGPLv3 included in the packaging of this file. Please review the ++** following information to ensure the GNU Lesser General Public License ++** requirements will be met: https://www.gnu.org/licenses/lgpl.html and ++** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ++** ++** As a special exception, The Qt Company gives you certain additional ++** rights. These rights are described in The Qt Company LGPL Exception ++** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ++** ++** $QT_END_LICENSE$ ++** ++****************************************************************************/ ++ ++#include ++#include ++ ++int main(int, char **) ++{ ++ EGLDisplay dpy = 0; ++ EGLContext ctx = 0; ++ mali_native_window *w = 0; ++ eglDestroyContext(dpy, ctx); ++ return 0; ++} +diff --git a/config.tests/qpa/eglfs-mali-2/eglfs-mali-2.pro b/config.tests/qpa/eglfs-mali-2/eglfs-mali-2.pro +new file mode 100644 +index 0000000..85bcf64 +--- /dev/null ++++ b/config.tests/qpa/eglfs-mali-2/eglfs-mali-2.pro +@@ -0,0 +1,5 @@ ++SOURCES = eglfs-mali-2.cpp ++ ++CONFIG -= qt ++ ++LIBS += -lEGL -lGLESv2 +diff --git a/configure b/configure +index cea62fb..09781bc 100755 +--- a/configure ++++ b/configure +@@ -5624,7 +5624,8 @@ if [ "$CFG_EGLFS" != "no" ]; then + else + CFG_EGLFS_BRCM=no + fi +- if compileTest qpa/eglfs-mali "eglfs-mali"; then ++ if compileTest qpa/eglfs-mali "eglfs-mali" \ ++ || compileTest qpa/eglfs-mali-2 "eglfs-mali-2"; then + CFG_EGLFS_MALI=yes + else + CFG_EGLFS_MALI=no +diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp +index 455d780..43decdf 100644 +--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp ++++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp +@@ -32,7 +32,6 @@ + ****************************************************************************/ + + #include "qeglfsmaliintegration.h" +-#include + + #include + #include +@@ -43,6 +42,11 @@ + + QT_BEGIN_NAMESPACE + ++struct fbdev_window { ++ unsigned short width; ++ unsigned short height; ++}; ++ + void QEglFSMaliIntegration::platformInit() + { + // Keep the non-overridden base class functions based on fb0 working. diff --git a/package/qt5/qt5base/0014-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch b/package/qt5/qt5base/0014-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch new file mode 100644 index 00000000000..97be739d0b6 --- /dev/null +++ b/package/qt5/qt5base/0014-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch @@ -0,0 +1,40 @@ +From 8f09897de948cea8861ca95e182f442cf15a339e Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 8 Jun 2015 13:59:25 -0700 +Subject: [PATCH] linux-oe-g++: Invert conditional for defining QT_SOCKLEN_T + +This helps to make sure that QT_SOCKLEN_T is defined to be 'int' +only when its glibc < 2 and not also for the libraries which may define +it as per standards but are not glibc, e.g. musl + +Signed-off-by: Khem Raj +[Bernd: Downloaded from +https://github.com/meta-qt5/meta-qt5/blob/d9d1d04760430cd0e5edd1764d832860715e7b83/recipes-qt/qt5/qtbase/0014-linux-oe-g-Invert-conditional-for-defining-QT_SOCKLE.patch +and adjusted path.] + +Signed-off-by: Bernd Kuhls +--- + mkspecs/linux-oe-g++/qplatformdefs.h | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/mkspecs/linux-oe-g++/qplatformdefs.h b/mkspecs/linux-oe-g++/qplatformdefs.h +index dd12003..8623651 100644 +--- a/mkspecs/linux-g++/qplatformdefs.h ++++ b/mkspecs/linux-g++/qplatformdefs.h +@@ -86,10 +86,10 @@ + + #undef QT_SOCKLEN_T + +-#if defined(__GLIBC__) && (__GLIBC__ >= 2) +-#define QT_SOCKLEN_T socklen_t +-#else ++#if defined(__GLIBC__) && (__GLIBC__ < 2) + #define QT_SOCKLEN_T int ++#else ++#define QT_SOCKLEN_T socklen_t + #endif + + #if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500) +-- +2.1.4 + diff --git a/package/qt5/qt5base/Config.in b/package/qt5/qt5base/Config.in index 106517f441d..64a7f653861 100644 --- a/package/qt5/qt5base/Config.in +++ b/package/qt5/qt5base/Config.in @@ -178,7 +178,10 @@ config BR2_PACKAGE_QT5BASE_LINUXFB config BR2_PACKAGE_QT5BASE_DIRECTFB bool "directfb support" - select BR2_PACKAGE_DIRECTFB + depends on BR2_PACKAGE_DIRECTFB + +comment "directfb backend if directb is enabled" + depends on !BR2_PACKAGE_DIRECTFB config BR2_PACKAGE_QT5BASE_XCB bool "X.org XCB support" @@ -256,7 +259,6 @@ config BR2_PACKAGE_QT5BASE_DBUS config BR2_PACKAGE_QT5BASE_ICU bool "Enable ICU support" select BR2_PACKAGE_ICU - depends on BR2_ARCH_HAS_ATOMICS # icu depends on !BR2_BINFMT_FLAT # icu help This option enables ICU support in Qt5. This is for example diff --git a/package/qt5/qt5base/qmake.conf b/package/qt5/qt5base/qmake.conf new file mode 100644 index 00000000000..2152d3c7a4d --- /dev/null +++ b/package/qt5/qt5base/qmake.conf @@ -0,0 +1,24 @@ +# Qt5 has a mechanism to support "device" profiles, so that people can +# specify the compiler, compiler flags and so on for a specific device. + +# We leverage this mechanism in the Buildroot packaging of qt5 to +# simplify cross-compilation: we have our own "device" definition, which +# allows us to easily pass the cross-compiler paths and flags from our +# qt5.mk. + +include(../common/linux_device_pre.conf) + +# modifications to g++-unix.conf +QMAKE_CC = $${CROSS_COMPILE}gcc +QMAKE_CXX = $${CROSS_COMPILE}g++ + +# modifications to gcc-base.conf +QMAKE_CFLAGS += $${BR_COMPILER_CFLAGS} +QMAKE_CXXFLAGS += $${BR_COMPILER_CXXFLAGS} +QMAKE_CXXFLAGS_RELEASE += -O3 +CONFIG += nostrip + +QMAKE_LIBS += -lrt -lpthread -ldl + +include(../common/linux_device_post.conf) +load(qt_config) diff --git a/package/qt5/qt5base/qplatformdefs.h b/package/qt5/qt5base/qplatformdefs.h new file mode 100644 index 00000000000..99e9a279232 --- /dev/null +++ b/package/qt5/qt5base/qplatformdefs.h @@ -0,0 +1 @@ +#include "../../linux-g++/qplatformdefs.h" diff --git a/package/qt5/qt5base/qt5base.hash b/package/qt5/qt5base/qt5base.hash index 07f6cafc82d..ea831e99702 100644 --- a/package/qt5/qt5base/qt5base.hash +++ b/package/qt5/qt5base/qt5base.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtbase-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 893f0691739c00d13ff85bf8d3fd14e1c7a62fbbbcffa44b0491da4d5e570965 qtbase-opensource-src-5.5.0.tar.xz -sha1 3d6734bc6d00e1017c1db40d68309997bdf7bf6f qtbase-opensource-src-5.5.0.tar.xz -md5 252613b5a180c94d7196d10467a4f08b qtbase-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtbase-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 dfa4e8a4d7e4c6b69285e7e8833eeecd819987e1bdbe5baa6b6facd4420de916 qtbase-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk index 753b0696f58..6eeb61973a8 100644 --- a/package/qt5/qt5base/qt5base.mk +++ b/package/qt5/qt5base/qt5base.mk @@ -26,7 +26,8 @@ QT5BASE_CONFIGURE_OPTS += \ -no-iconv \ -system-zlib \ -system-pcre \ - -no-pch + -no-pch \ + -shared ifeq ($(BR2_ENABLE_DEBUG),y) QT5BASE_CONFIGURE_OPTS += -debug @@ -34,14 +35,6 @@ else QT5BASE_CONFIGURE_OPTS += -release endif -ifeq ($(BR2_STATIC_LIBS),y) -QT5BASE_CONFIGURE_OPTS += -static -else -# We apparently can't build both the shared and static variants of the -# library. -QT5BASE_CONFIGURE_OPTS += -shared -endif - QT5BASE_CONFIGURE_OPTS += -largefile ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) @@ -154,8 +147,17 @@ QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_ICU),icu) QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_EXAMPLES),-make,-nomake) examples +# gstreamer 0.10 support is broken in qt5multimedia +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y) +QT5BASE_CONFIGURE_OPTS += -gstreamer 1.0 +QT5BASE_DEPENDENCIES += gst1-plugins-base +else +QT5BASE_CONFIGURE_OPTS += -no-gstreamer +endif + # Build the list of libraries to be installed on the target QT5BASE_INSTALL_LIBS_y += Qt5Core +QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_XCB) += Qt5XcbQpa QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_NETWORK) += Qt5Network QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_CONCURRENT) += Qt5Concurrent QT5BASE_INSTALL_LIBS_$(BR2_PACKAGE_QT5BASE_SQL) += Qt5Sql @@ -177,8 +179,13 @@ endef endif define QT5BASE_CONFIGURE_CMDS + $(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qmake.conf \ + $(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf + $(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qplatformdefs.h \ + $(@D)/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h $(QT5BASE_CONFIGURE_CONFIG_FILE) (cd $(@D); \ + $(TARGET_MAKE_ENV) \ PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \ PKG_CONFIG_LIBDIR="$(STAGING_DIR)/usr/lib/pkgconfig" \ PKG_CONFIG_SYSROOT_DIR="$(STAGING_DIR)" \ @@ -195,7 +202,6 @@ define QT5BASE_CONFIGURE_CMDS -nomake tests \ -device buildroot \ -device-option CROSS_COMPILE="$(TARGET_CROSS)" \ - -device-option BR_CCACHE="$(CCACHE)" \ -device-option BR_COMPILER_CFLAGS="$(TARGET_CFLAGS) $(QT5BASE_EXTRA_CFLAGS)" \ -device-option BR_COMPILER_CXXFLAGS="$(TARGET_CXXFLAGS) $(QT5BASE_EXTRA_CFLAGS)" \ $(QT5BASE_CONFIGURE_OPTS) \ @@ -203,11 +209,11 @@ define QT5BASE_CONFIGURE_CMDS endef define QT5BASE_BUILD_CMDS - $(MAKE) -C $(@D) + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) endef define QT5BASE_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) install + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install $(QT5_LA_PRL_FILES_FIXUP) endef diff --git a/package/qt5/qt5connectivity/qt5connectivity.hash b/package/qt5/qt5connectivity/qt5connectivity.hash index d323b5f42d2..058ba31a9b5 100644 --- a/package/qt5/qt5connectivity/qt5connectivity.hash +++ b/package/qt5/qt5connectivity/qt5connectivity.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtconnectivity-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 f1cfdd934e11dc114039c84a6a6b83870b56b2966715f1cb266f25bce1524302 qtconnectivity-opensource-src-5.5.0.tar.xz -sha1 b393471529502028b0d5318088a27e48e944bc90 qtconnectivity-opensource-src-5.5.0.tar.xz -md5 31b005585b2be1c8aca9ea585a90f2b0 qtconnectivity-opensource-src-5.5.0.tar.xz +# Hashe from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtconnectivity-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 3637e6def8582fc0fb3684179b93650720ba2da1311a560d358296153f245023 qtconnectivity-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5declarative/qt5declarative.hash b/package/qt5/qt5declarative/qt5declarative.hash index 9fb96093ef3..f32b0372c8f 100644 --- a/package/qt5/qt5declarative/qt5declarative.hash +++ b/package/qt5/qt5declarative/qt5declarative.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtdeclarative-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 858a12c5647764da8f81edec4ed444af77888cf931b739c10168064ae96f6773 qtdeclarative-opensource-src-5.5.0.tar.xz -sha1 f41766db6f6bc8b9cefff05543891c271436043e qtdeclarative-opensource-src-5.5.0.tar.xz -md5 1452c92f8c660dc7d23d9e17d89f8716 qtdeclarative-opensource-src-5.5.0.tar.xz +# Hashe from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtdeclarative-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 5fd14eefb83fff36fb17681693a70868f6aaf6138603d799c16466a094b26791 qtdeclarative-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5enginio/qt5enginio.hash b/package/qt5/qt5enginio/qt5enginio.hash index 359e745cff9..6f5f626817d 100644 --- a/package/qt5/qt5enginio/qt5enginio.hash +++ b/package/qt5/qt5enginio/qt5enginio.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtenginio-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 f61c4b2a26550bcb5e81cfcde55b1e521ee021226679dc9f60ab6c55f21f1520 qtenginio-opensource-src-5.5.0.tar.xz -sha1 14b961bea8cf2f2d4510283d6120038dbf90d29d qtenginio-opensource-src-5.5.0.tar.xz -md5 917e3105fe125068942f39e775f621ad qtenginio-opensource-src-5.5.0.tar.xz +# Hashe from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtenginio-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 a79936bd5b6a35aba28dd282291b28c8fa869b8d86652c62efe5e268d94defe2 qtenginio-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash index 8c020a08fbb..959230fe4e5 100644 --- a/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash +++ b/package/qt5/qt5graphicaleffects/qt5graphicaleffects.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtgraphicaleffects-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 f143514e7414797f264fea6348635e1db3e15d13e326af4a6b355fecf0a147ee qtgraphicaleffects-opensource-src-5.5.0.tar.xz -sha1 1e9ca2b5d1fdfe6a73dfd646868c5351989ecccc qtgraphicaleffects-opensource-src-5.5.0.tar.xz -md5 2fb95cecb2ab0542cb0b5847c65600c3 qtgraphicaleffects-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtgraphicaleffects-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 9bca0f8db3a4289eceebfa9504915440fe3fa6301d90b65705e4ece528c12d47 qtgraphicaleffects-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5imageformats/qt5imageformats.hash b/package/qt5/qt5imageformats/qt5imageformats.hash index 8bc570565d7..c392abfaade 100644 --- a/package/qt5/qt5imageformats/qt5imageformats.hash +++ b/package/qt5/qt5imageformats/qt5imageformats.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtimageformats-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 6479d1d2ac5b7dd85566799e13a173e525cbccd5c8bd43e7db1bdaf772af8955 qtimageformats-opensource-src-5.5.0.tar.xz -sha1 cffd35f9742f13a0c5afc04eab27b7b47338e800 qtimageformats-opensource-src-5.5.0.tar.xz -md5 72cbebfda5253dece90fa90ded64e953 qtimageformats-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtimageformats-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 c97fee00c602f9f089fea480546d6e9d61a2b2297c2f163bfd9f8aba92b754a5 qtimageformats-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5multimedia/qt5multimedia.hash b/package/qt5/qt5multimedia/qt5multimedia.hash index f4e23d551a2..b4e1b682f0a 100644 --- a/package/qt5/qt5multimedia/qt5multimedia.hash +++ b/package/qt5/qt5multimedia/qt5multimedia.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtmultimedia-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 a8bf1bd59bad74bba2906e6a86faa1cf008c8dba5f5a9cdea72eb0ce5f85355b qtmultimedia-opensource-src-5.5.0.tar.xz -sha1 3438c16f498e40eaa68cd518b76ddd81c02a5471 qtmultimedia-opensource-src-5.5.0.tar.xz -md5 2759807c5d1842ee69e516aacd5e756a qtmultimedia-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtmultimedia-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 7cc7ca99f41587c188303670499e5c75101f9a8cb6178e8f29cc941e637d957f qtmultimedia-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5multimedia/qt5multimedia.mk b/package/qt5/qt5multimedia/qt5multimedia.mk index 763fc28603d..df1395c0905 100644 --- a/package/qt5/qt5multimedia/qt5multimedia.mk +++ b/package/qt5/qt5multimedia/qt5multimedia.mk @@ -18,8 +18,8 @@ QT5MULTIMEDIA_LICENSE = Commercial license QT5MULTIMEDIA_REDISTRIBUTE = NO endif -ifeq ($(BR2_PACKAGE_GST_PLUGINS_BASE),y) -QT5MULTIMEDIA_DEPENDENCIES += gst-plugins-base +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y) +QT5MULTIMEDIA_DEPENDENCIES += gst1-plugins-base endif ifeq ($(BR2_PACKAGE_QT5DECLARATIVE),y) @@ -40,7 +40,7 @@ define QT5MULTIMEDIA_INSTALL_STAGING_CMDS endef ifeq ($(BR2_STATIC_LIBS),) -ifeq ($(BR2_PACKAGE_GST_PLUGINS_BASE),y) +ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BASE),y) define QT5MULTIMEDIA_INSTALL_TARGET_QGSTTOOLS_LIB cp -dpf $(STAGING_DIR)/usr/lib/libqgsttools*.so.* $(TARGET_DIR)/usr/lib endef diff --git a/package/qt5/qt5quick1/qt5quick1.hash b/package/qt5/qt5quick1/qt5quick1.hash index 2b0c19c1bc4..845742c436b 100644 --- a/package/qt5/qt5quick1/qt5quick1.hash +++ b/package/qt5/qt5quick1/qt5quick1.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtquick1-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 db563b33e1670bc8a254d53c0a8e29ba501b903fafcd3b7e3d2ab845db0dfa2c qtquick1-opensource-src-5.5.0.tar.xz -sha1 27d67436cd902bb8b89b5808e4cc4a34fd61ac75 qtquick1-opensource-src-5.5.0.tar.xz -md5 8cd53fd1100e7f7cdf5b14f7c227e7b9 qtquick1-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtquick1-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 c812a7e59a8b9f0a87693181059933e15fef04bc875b6486cd653be1b9b51f2c qtquick1-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5quickcontrols/qt5quickcontrols.hash b/package/qt5/qt5quickcontrols/qt5quickcontrols.hash index 6aab43544a7..99dacb878b4 100644 --- a/package/qt5/qt5quickcontrols/qt5quickcontrols.hash +++ b/package/qt5/qt5quickcontrols/qt5quickcontrols.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtquickcontrols-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 df616aa6b390797f92f33115510961d1a53a55c349a18ae21f74b4aff478c2ea qtquickcontrols-opensource-src-5.5.0.tar.xz -sha1 9b12048acb3555f7e98bd6c1333437fb04cf60d6 qtquickcontrols-opensource-src-5.5.0.tar.xz -md5 24b59d5928092f02e0cba969d9548350 qtquickcontrols-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtquickcontrols-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 1b7a8389d656066c629bd2cb520b39a7eb041d184b567dd1b9639b88d841fcf0 qtquickcontrols-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5quickcontrols/qt5quickcontrols.mk b/package/qt5/qt5quickcontrols/qt5quickcontrols.mk index 4aeca5b39a7..a0b9215f7a7 100644 --- a/package/qt5/qt5quickcontrols/qt5quickcontrols.mk +++ b/package/qt5/qt5quickcontrols/qt5quickcontrols.mk @@ -11,8 +11,8 @@ QT5QUICKCONTROLS_DEPENDENCIES = qt5base qt5declarative QT5QUICKCONTROLS_INSTALL_STAGING = YES ifeq ($(BR2_PACKAGE_QT5BASE_LICENSE_APPROVED),y) -QT5QUICKCONTROLS_LICENSE = LGPLv2.1 with exception or LGPLv3 or GPLv2 -QT5QUICKCONTROLS_LICENSE_FILES = LICENSE.LGPLv21 LGPL_EXCEPTION.txt LICENSE.LGPLv3 LICENSE.GPLv2 +QT5QUICKCONTROLS_LICENSE = LGPLv3, GPLv2, GFDLv1.3 +QT5QUICKCONTROLS_LICENSE_FILES = LICENSE.LGPLv3 LICENSE.GPLv2 LICENSE.FDL else QT5QUICKCONTROLS_LICENSE = Commercial license QT5QUICKCONTROLS_REDISTRIBUTE = NO diff --git a/package/qt5/qt5script/qt5script.hash b/package/qt5/qt5script/qt5script.hash index 2b17fb70b98..f2b1df83584 100644 --- a/package/qt5/qt5script/qt5script.hash +++ b/package/qt5/qt5script/qt5script.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtscript-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 343932ea8b2ecb16c3d9b49db55a7975f2f22534055608de4b06b1e38d867e8b qtscript-opensource-src-5.5.0.tar.xz -sha1 ed5cf73c8217a249535442c49a8a0e5c43f6e648 qtscript-opensource-src-5.5.0.tar.xz -md5 1e9766d2651d6a81221525462378336d qtscript-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtscript-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 cd46dddd998f22bcb06447e0407fef81f7052f25bc770b1c27625654cee828fd qtscript-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5sensors/qt5sensors.hash b/package/qt5/qt5sensors/qt5sensors.hash index e52ee6d9bba..23559f694fb 100644 --- a/package/qt5/qt5sensors/qt5sensors.hash +++ b/package/qt5/qt5sensors/qt5sensors.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtsensors-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 8d5a989df94b28dac872f3b28437982ecc6434b38b44da75f1d4bf81915fd14b qtsensors-opensource-src-5.5.0.tar.xz -sha1 bd4b2fb7685f80ef1661ced90ff665b4b27216aa qtsensors-opensource-src-5.5.0.tar.xz -md5 68ea0a61147a4934ca0fbd04fae10ed6 qtsensors-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtsensors-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 5d264fc0729a5d7679bd4eb8d7a0a9b142ed38d09fa68fc7dfe57f64afc8eeea qtsensors-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5serialport/qt5serialport.hash b/package/qt5/qt5serialport/qt5serialport.hash index 05c276a86d6..db5014510bf 100644 --- a/package/qt5/qt5serialport/qt5serialport.hash +++ b/package/qt5/qt5serialport/qt5serialport.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtserialport-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 a60e2d2113c1c3895b71c901921f83b81e9b3c59e3620cf94bd8647730efa866 qtserialport-opensource-src-5.5.0.tar.xz -sha1 371da46f2f2ad652a22b0f04e4b48f088976d3ce qtserialport-opensource-src-5.5.0.tar.xz -md5 8a76f051ed28a9c925d32f5864d33e78 qtserialport-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtserialport-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 a034dbfb023db1b9b9de54390f7e76a48c1d1eb12533b0ffd574505c99968f7a qtserialport-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5svg/qt5svg.hash b/package/qt5/qt5svg/qt5svg.hash index c47855e3731..afe98cf532a 100644 --- a/package/qt5/qt5svg/qt5svg.hash +++ b/package/qt5/qt5svg/qt5svg.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtsvg-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 00efdeec66d34dabeddf17c510c0d607179991566a030d461968a16d6322e19f qtsvg-opensource-src-5.5.0.tar.xz -sha1 9238a1aedd126f84a73014c12b6391267238da0a qtsvg-opensource-src-5.5.0.tar.xz -md5 08234e3c3696f1a75df30201ca16d4bc qtsvg-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtsvg-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 f7f588be48befd9ccab5a6086832551b8899e8bed9e603ddea979581e05a91c7 qtsvg-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5webchannel/qt5webchannel.hash b/package/qt5/qt5webchannel/qt5webchannel.hash index b96aebb02b0..c0ae89e228f 100644 --- a/package/qt5/qt5webchannel/qt5webchannel.hash +++ b/package/qt5/qt5webchannel/qt5webchannel.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtwebchannel-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 94f88604ff0b29a30f1a1b13601d4bce9af5c0a96c43869705aee1596aeb2d8d qtwebchannel-opensource-src-5.5.0.tar.xz -sha1 7c45ecb9c4226207f184b5cf25d1a18d650075da qtwebchannel-opensource-src-5.5.0.tar.xz -md5 c20146286108477cdab60c67d2d87dc7 qtwebchannel-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtwebchannel-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 7f4295ee57cd4ecba3cb263452d2a08d501b45c9a2b8b7794b6a97d7652f15d0 qtwebchannel-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5webchannel/qt5webchannel.mk b/package/qt5/qt5webchannel/qt5webchannel.mk index cfb6da934e7..6ceb59e0ad9 100644 --- a/package/qt5/qt5webchannel/qt5webchannel.mk +++ b/package/qt5/qt5webchannel/qt5webchannel.mk @@ -35,6 +35,11 @@ define QT5WEBCHANNEL_INSTALL_STAGING_CMDS $(QT5_LA_PRL_FILES_FIXUP) endef +define QT5WEBCHANNEL_INSTALL_TARGET_JAVASCRIPT + $(INSTALL) -m 0644 -D $(@D)/src/webchannel/qwebchannel.js \ + $(TARGET_DIR)/var/www/qwebchannel.js +endef + ifeq ($(BR2_PACKAGE_QT5DECLARATIVE_QUICK),y) define QT5WEBCHANNEL_INSTALL_TARGET_QMLS cp -dpfr $(STAGING_DIR)/usr/qml/QtWebChannel $(TARGET_DIR)/usr/qml/ @@ -56,6 +61,7 @@ endif define QT5WEBCHANNEL_INSTALL_TARGET_CMDS $(QT5WEBCHANNEL_INSTALL_TARGET_LIBS) $(QT5WEBCHANNEL_INSTALL_TARGET_QMLS) + $(QT5WEBCHANNEL_INSTALL_TARGET_JAVASCRIPT) endef $(eval $(generic-package)) diff --git a/package/qt5/qt5webkit-examples/qt5webkit-examples.hash b/package/qt5/qt5webkit-examples/qt5webkit-examples.hash index 83975b06053..b28e0da3dcd 100644 --- a/package/qt5/qt5webkit-examples/qt5webkit-examples.hash +++ b/package/qt5/qt5webkit-examples/qt5webkit-examples.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtwebkit-examples-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 d25564fb56e8e06ad782390c7a7cf2c80f52c1dac5a8cac6ad5382711cd4bd12 qtwebkit-examples-opensource-src-5.5.0.tar.xz -sha1 706464b813e9910fefd4af83e479a8247fd50a68 qtwebkit-examples-opensource-src-5.5.0.tar.xz -md5 5005737b4b29a76c70d2d08e5b105a66 qtwebkit-examples-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtwebkit-examples-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 098935b42d6d249027d1a635e4e70edc3d2969dd860f825b36aec06fc72e46c6 qtwebkit-examples-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5webkit/Config.in b/package/qt5/qt5webkit/Config.in index eee82e8df6a..96d97cc8d1a 100644 --- a/package/qt5/qt5webkit/Config.in +++ b/package/qt5/qt5webkit/Config.in @@ -9,7 +9,6 @@ config BR2_PACKAGE_QT5WEBKIT # This module does not support static linking depends on !BR2_STATIC_LIBS depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE - depends on BR2_ARCH_HAS_ATOMICS # icu depends on !BR2_BINFMT_FLAT # icu help Qt is a cross-platform application and UI framework for diff --git a/package/qt5/qt5webkit/qt5webkit.hash b/package/qt5/qt5webkit/qt5webkit.hash index 741772bc009..8517223d1ad 100644 --- a/package/qt5/qt5webkit/qt5webkit.hash +++ b/package/qt5/qt5webkit/qt5webkit.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtwebkit-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 17964996347d040a68b0c378a84b4b3874f1289c0d561b6868f7668402d9eeec qtwebkit-opensource-src-5.5.0.tar.xz -sha1 8489ffa9253ab429b75f65117e435624dd78f769 qtwebkit-opensource-src-5.5.0.tar.xz -md5 5335fe211f5c0f92a4f6ca370fa9a0ce qtwebkit-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtwebkit-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 77583f9dbd3e6ad874386df71b165dc3ce88efdabbc6e5d97a959ee2187d6d69 qtwebkit-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5websockets/qt5websockets.hash b/package/qt5/qt5websockets/qt5websockets.hash index d3c0f3b8fd4..0bd4a5ac50f 100644 --- a/package/qt5/qt5websockets/qt5websockets.hash +++ b/package/qt5/qt5websockets/qt5websockets.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtwebsockets-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 1ad465b1b2d1e6dddbdc403af9f69d93b1c408f6903c28ccaa52058df7ee8ae8 qtwebsockets-opensource-src-5.5.0.tar.xz -sha1 215f4e8d8170933d68e9395d966ecf6213fc0a74 qtwebsockets-opensource-src-5.5.0.tar.xz -md5 aa7b160a4b97fafe71d5546c20715b8f qtwebsockets-opensource-src-5.5.0.tar.xz +# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtwebsockets-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 cf4e834a867b90337188be504ef20184c52666370f721e704952988f8cb12deb qtwebsockets-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5x11extras/qt5x11extras.hash b/package/qt5/qt5x11extras/qt5x11extras.hash index 3b879686947..d7c0ad0a847 100644 --- a/package/qt5/qt5x11extras/qt5x11extras.hash +++ b/package/qt5/qt5x11extras/qt5x11extras.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtx11extras-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 bcb3cec5c9f0b551f0e2de30824c8be08620fbbe466ad4846beb2ad636d0b979 qtx11extras-opensource-src-5.5.0.tar.xz -sha1 2eb25a96cc061b364d5fc30125a5ca9904857e89 qtx11extras-opensource-src-5.5.0.tar.xz -md5 9bee6d5c127ba8cc878ac7c2664d99f9 qtx11extras-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtx11extras-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 6387a01d972b62e1ad39e5a25e07d0492200f62fc87cf4366122085aeeebeb65 qtx11extras-opensource-src-5.5.1.tar.xz diff --git a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash index 718f8ce4cf5..e04a1a1c9e1 100644 --- a/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash +++ b/package/qt5/qt5xmlpatterns/qt5xmlpatterns.hash @@ -1,4 +1,2 @@ -# Hashes from: http://download.qt.io/official_releases/qt/5.5/5.5.0/submodules/qtxmlpatterns-opensource-src-5.5.0.tar.xz.mirrorlist -sha256 672882c670c13c5caec199173cdabffd38474d06979d261bdc6e19738e0cef53 qtxmlpatterns-opensource-src-5.5.0.tar.xz -sha1 d961f998980264f19916f70c8585da8479a84724 qtxmlpatterns-opensource-src-5.5.0.tar.xz -md5 138ab73b2376fcfca92a4bb6ab47e4a4 qtxmlpatterns-opensource-src-5.5.0.tar.xz +# Hash from: http://download.qt.io/official_releases/qt/5.5/5.5.1/submodules/qtxmlpatterns-opensource-src-5.5.1.tar.xz.mirrorlist +sha256 b537eb0252988e3805a32a16c65038973371d647baf246fdf703bde725d0e8ec qtxmlpatterns-opensource-src-5.5.1.tar.xz diff --git a/package/quagga/0002-configure-fix-static-linking-with-readline.patch b/package/quagga/0002-configure-fix-static-linking-with-readline.patch new file mode 100644 index 00000000000..243dfaf75d8 --- /dev/null +++ b/package/quagga/0002-configure-fix-static-linking-with-readline.patch @@ -0,0 +1,41 @@ +From 62ede7482da15d276b880f6d8540dce400dc50a7 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 26 Nov 2015 15:59:07 +0100 +Subject: [PATCH] configure: fix static linking with readline + +When static linking is used, the order of the libraries is important, +and the libraries using a symbol from another library should be listed +*before* the library providing that symbol (see +http://eli.thegreenplace.net/2013/07/09/library-order-in-static-linking) +for details. + +When vtysh is linked statically, the command line contains "-lcurses +-lreadline", which causes a build failure due to unresolved +symbols. This is because readline is using symbols from the curses +library: the order should be the opposite. + +This patch fixes that problem by putting the -lreadline at the +beginning of the LIBREADLINE variable calcualted by the configure +script. + +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 3003e62..290953d 100755 +--- a/configure.ac ++++ b/configure.ac +@@ -652,7 +652,7 @@ dnl [TODO] on Linux, and in [TODO] on Solaris. + )] + )] + ) +- AC_CHECK_LIB(readline, main, LIBREADLINE="$LIBREADLINE -lreadline",, ++ AC_CHECK_LIB(readline, main, LIBREADLINE="-lreadline $LIBREADLINE",, + "$LIBREADLINE") + if test $ac_cv_lib_readline_main = no; then + AC_MSG_ERROR([vtysh needs libreadline but was not found and usable on your system.]) +-- +2.6.3 + diff --git a/package/quagga/quagga.mk b/package/quagga/quagga.mk index ce1d34b264c..4a5559401c0 100644 --- a/package/quagga/quagga.mk +++ b/package/quagga/quagga.mk @@ -11,6 +11,15 @@ QUAGGA_DEPENDENCIES = host-gawk QUAGGA_LICENSE = GPLv2+ QUAGGA_LICENSE_FILES = COPYING QUAGGA_CONF_OPTS = --program-transform-name='' +# 0002-configure-fix-static-linking-with-readline.patch +QUAGGA_AUTORECONF = YES + +ifeq ($(BR2_PACKAGE_LIBCAP),y) +QUAGGA_CONF_OPTS += --enable-capabilities +QUAGGA_DEPENDENCIES += libcap +else +QUAGGA_CONF_OPTS += --disable-capabilities +endif QUAGGA_CONF_OPTS += $(if $(BR2_PACKAGE_QUAGGA_ZEBRA),--enable-zebra,--disable-zebra) QUAGGA_CONF_OPTS += $(if $(BR2_PACKAGE_QUAGGA_BABELD),--enable-babeld,--disable-babeld) diff --git a/package/quazip/quazip.mk b/package/quazip/quazip.mk index 178a5315d64..adccf90cb21 100644 --- a/package/quazip/quazip.mk +++ b/package/quazip/quazip.mk @@ -5,7 +5,7 @@ ################################################################################ QUAZIP_VERSION = 0.7.1 -QUAZIP_SITE = http://sourceforge.net/projects/quazip/files/quazip/$(QUAZIP_VERSION)/ +QUAZIP_SITE = http://sourceforge.net/projects/quazip/files/quazip/$(QUAZIP_VERSION) QUAZIP_INSTALL_STAGING = YES QUAZIP_DEPENDENCIES = \ zlib \ diff --git a/package/quota/quota.mk b/package/quota/quota.mk index a6b03225aca..c30a2bd85e8 100644 --- a/package/quota/quota.mk +++ b/package/quota/quota.mk @@ -18,6 +18,13 @@ QUOTA_DEPENDENCIES += gettext QUOTA_LIBS += -lintl endif +ifeq ($(BR2_PACKAGE_E2FSPROGS),y) +QUOTA_DEPENDENCIES += e2fsprogs +QUOTA_CONF_OPTS += --enable-ext2direct +else +QUOTA_CONF_OPTS += --disable-ext2direct +endif + ifeq ($(BR2_PACKAGE_LIBTIRPC),y) QUOTA_DEPENDENCIES += libtirpc host-pkgconf QUOTA_CFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags libtirpc` diff --git a/package/rabbitmq-c/Config.in b/package/rabbitmq-c/Config.in new file mode 100644 index 00000000000..0d08233a708 --- /dev/null +++ b/package/rabbitmq-c/Config.in @@ -0,0 +1,15 @@ +config BR2_PACKAGE_RABBITMQ_C + bool "rabbitmq-c" + depends on BR2_TOOLCHAIN_HAS_THREADS + # too old uClibc, not providing posix_spawn functions + # http://autobuild.buildroot.net/results/a6c3e79c61c5a535970d03bf37b068349f766a7f/ + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX + help + This is a C-language AMQP client library for use with v2.0+ + of the RabbitMQ broker. + + https://github.com/alanxz/rabbitmq-c + +comment "rabbitmq-c needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX diff --git a/package/rabbitmq-c/rabbitmq-c.hash b/package/rabbitmq-c/rabbitmq-c.hash new file mode 100644 index 00000000000..e7678721cbe --- /dev/null +++ b/package/rabbitmq-c/rabbitmq-c.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 23df349a7d157543e756acc67e47b217843ecbdafaefe3e4974073bb99d8a26d rabbitmq-c-0.7.1.tar.gz diff --git a/package/rabbitmq-c/rabbitmq-c.mk b/package/rabbitmq-c/rabbitmq-c.mk new file mode 100644 index 00000000000..42e2548e344 --- /dev/null +++ b/package/rabbitmq-c/rabbitmq-c.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# rabbitmq-c +# +################################################################################ + +RABBITMQ_C_VERSION = 0.7.1 +RABBITMQ_C_SITE = https://github.com/alanxz/rabbitmq-c/releases/download/v$(RABBITMQ_C_VERSION) +RABBITMQ_C_LICENSE = MIT +RABBITMQ_C_LICENSE_FILES = LICENSE-MIT +RABBITMQ_C_INSTALL_STAGING = YES +RABBITMQ_C_CONF_OPTS = \ + -DBUILD_API_DOCS=OFF \ + -DBUILD_TOOLS_DOCS=OFF + +ifeq ($(BR2_STATIC_LIBS),y) +RABBITMQ_C_CONF_OPTS += -DBUILD_SHARED_LIBS=OFF -DBUILD_STATIC_LIBS=ON +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) +RABBITMQ_C_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON +else ifeq ($(BR2_SHARED_LIBS),y) +RABBITMQ_C_CONF_OPTS += -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +RABBITMQ_C_CONF_OPTS += -DENABLE_SSL_SUPPORT=ON +RABBITMQ_C_DEPENDENCIES += openssl +else +RABBITMQ_C_CONF_OPTS += -DENABLE_SSL_SUPPORT=OFF +endif + +ifeq ($(BR2_PACKAGE_POPT), y) +RABBITMQ_C_CONF_OPTS += -DBUILD_TOOLS=ON +RABBITMQ_C_DEPENDENCIES += popt +else +RABBITMQ_C_CONF_OPTS += -DBUILD_TOOLS=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/racehound/Config.in b/package/racehound/Config.in index 9fac802b756..9f1011bf0e4 100644 --- a/package/racehound/Config.in +++ b/package/racehound/Config.in @@ -1,13 +1,15 @@ config BR2_PACKAGE_RACEHOUND bool "racehound" - select BR2_PACKAGE_ELFUTILS depends on BR2_LINUX_KERNEL depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR # elfutils depends on !BR2_STATIC_LIBS # elfutils + depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils # only x86/x86_64 supported depends on BR2_i386 || BR2_x86_64 + select BR2_PACKAGE_ELFUTILS + select BR2_LINUX_NEEDS_MODULES # not using kernel-module infra help RaceHound can be used to detect data races in the Linux kernel on x86. @@ -28,6 +30,7 @@ comment "racehound needs an Linux kernel >= 3.14 to be built" depends on !BR2_LINUX_KERNEL || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 depends on BR2_i386 || BR2_x86_64 -comment "racehound needs a toolchain w/ C++, wchar, dynamic library" - depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || BR2_STATIC_LIBS +comment "racehound needs a uClibc or (e)glibc toolchain w/ C++, wchar, dynamic library" depends on BR2_i386 || BR2_x86_64 + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || BR2_STATIC_LIBS \ + || !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) diff --git a/package/radvd/S50radvd b/package/radvd/S50radvd index d3e2cd18ae1..9f1407c95a9 100755 --- a/package/radvd/S50radvd +++ b/package/radvd/S50radvd @@ -4,7 +4,7 @@ RADVD=/usr/sbin/radvd echo "1" > /proc/sys/net/ipv6/conf/all/forwarding -echo -n "Starting radvd: " +printf "Starting radvd: " if [ ! -x "${RADVD}" ]; then echo "missing" exit 1 diff --git a/package/radvd/radvd.hash b/package/radvd/radvd.hash index 7324c31e110..3ace4fc6541 100644 --- a/package/radvd/radvd.hash +++ b/package/radvd/radvd.hash @@ -1,2 +1,3 @@ # From http://www.litech.org/radvd/dist/radvd-2.11.tar.gz.sha256 sha256 04636288fc79fa151260eeb2bea1b05942f59c31f01358c57f930a4eb45b5acc radvd-2.11.tar.xz +sha256 01d12bd2970fedf5695d9177a5ea45483d5e3c709ecceed636972c3049c47d0d 1d8973e13d89802eee0b648451e2b97ac65cf9e0.patch diff --git a/package/radvd/radvd.mk b/package/radvd/radvd.mk index 872eac01fe2..503b62dfb80 100644 --- a/package/radvd/radvd.mk +++ b/package/radvd/radvd.mk @@ -7,6 +7,8 @@ RADVD_VERSION = 2.11 RADVD_SOURCE = radvd-$(RADVD_VERSION).tar.xz RADVD_SITE = http://www.litech.org/radvd/dist +RADVD_PATCH = \ + https://github.com/reubenhwk/radvd/commit/1d8973e13d89802eee0b648451e2b97ac65cf9e0.patch RADVD_DEPENDENCIES = host-bison flex host-flex host-pkgconf RADVD_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' # We're patching configure.ac/Makefile.am. diff --git a/package/ranger/0001-colorscheme-check-for-compiled-python-files.patch b/package/ranger/0001-colorscheme-check-for-compiled-python-files.patch new file mode 100644 index 00000000000..bde3fee035f --- /dev/null +++ b/package/ranger/0001-colorscheme-check-for-compiled-python-files.patch @@ -0,0 +1,31 @@ +From 654e3116825c4d12340613196279fb13a5662113 Mon Sep 17 00:00:00 2001 +From: Thijs Vermeir +Date: Tue, 20 Oct 2015 18:13:36 +0200 +Subject: [PATCH] colorscheme: check for compiled python files + +Some systems only provide *.pyc files + +Patch accepted upstream: +https://github.com/hut/ranger/commit/d69f1ed3207c785d1a39ddd2992f6abb021b7540 + +Signed-off-by: Thijs Vermeir +--- + ranger/gui/colorscheme.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ranger/gui/colorscheme.py b/ranger/gui/colorscheme.py +index d6afcac..d2b3b2d 100644 +--- a/ranger/gui/colorscheme.py ++++ b/ranger/gui/colorscheme.py +@@ -86,7 +86,7 @@ def _colorscheme_name_to_class(signal): + usecustom = not ranger.arg.clean + + def exists(colorscheme): +- return os.path.exists(colorscheme + '.py') ++ return os.path.exists(colorscheme + '.py') or os.path.exists(colorscheme + '.pyc') + + def is_scheme(x): + try: +-- +2.6.1 + diff --git a/package/ranger/Config.in b/package/ranger/Config.in new file mode 100644 index 00000000000..ee0ffecd130 --- /dev/null +++ b/package/ranger/Config.in @@ -0,0 +1,21 @@ +config BR2_PACKAGE_RANGER + bool "ranger" + depends on BR2_USE_MMU # python3 + depends on BR2_USE_WCHAR # python3 + depends on BR2_TOOLCHAIN_HAS_THREADS # python3 + depends on !BR2_STATIC_LIBS # python3 + select BR2_PACKAGE_PYTHON3 if !BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON_CURSES if BR2_PACKAGE_PYTHON + select BR2_PACKAGE_PYTHON3_CURSES if BR2_PACKAGE_PYTHON3 + help + ranger is a console file manager with VI key bindings. It + provides a minimalistic and nice curses interface with a + view on the directory hierarchy. It ships with "rifle", a + file launcher that is good at automatically finding out + which program to use for what file type. + + http://ranger.nongnu.org + +comment "ranger needs a toolchain w/ wchar, threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/ranger/ranger.hash b/package/ranger/ranger.hash new file mode 100644 index 00000000000..30bdbede04e --- /dev/null +++ b/package/ranger/ranger.hash @@ -0,0 +1,2 @@ +# Locally calculated after checking pgp signature +sha256 94f6e342daee4445f15db5a7440a11138487c49cc25da0c473bbf1b8978f5b79 ranger-1.7.2.tar.gz diff --git a/package/ranger/ranger.mk b/package/ranger/ranger.mk new file mode 100644 index 00000000000..fd6809a660a --- /dev/null +++ b/package/ranger/ranger.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# ranger +# +################################################################################ + +RANGER_VERSION = 1.7.2 +RANGER_SITE = http://ranger.nongnu.org +RANGER_SETUP_TYPE = distutils +RANGER_LICENSE = GPLv3 +RANGER_LICENSE_FILES = AUTHORS + +# The ranger script request python to be called with -O (optimize generated +# bytecode slightly; also PYTHONOPTIMIZE=x). This implicitly requires the python +# source files to be present. Therefore, the -O flag is removed when only the .pyc +# files are installed. + +define RANGER_DO_NOT_GENERATE_BYTECODE_AT_RUNTIME + $(SED) 's%/usr/bin/python -O%/usr/bin/python%g' $(@D)/scripts/ranger +endef + +ifeq ($(BR2_PACKAGE_PYTHON3_PYC_ONLY)$(BR2_PACKAGE_PYTHON_PYC_ONLY),y) +RANGER_POST_PATCH_HOOKS += RANGER_DO_NOT_GENERATE_BYTECODE_AT_RUNTIME +endif + +$(eval $(python-package)) diff --git a/package/rapidjson/rapidjson.mk b/package/rapidjson/rapidjson.mk index 1ad93147b6b..5da407b79fb 100644 --- a/package/rapidjson/rapidjson.mk +++ b/package/rapidjson/rapidjson.mk @@ -8,6 +8,8 @@ RAPIDJSON_VERSION = v1.0.2 RAPIDJSON_SITE = $(call github,miloyip,rapidjson,$(RAPIDJSON_VERSION)) RAPIDJSON_LICENSE = MIT RAPIDJSON_LICENSE_FILES = license.txt + +# rapidjson is a header-only C++ library RAPIDJSON_INSTALL_TARGET = NO RAPIDJSON_INSTALL_STAGING = YES diff --git a/package/rapidxml/Config.in b/package/rapidxml/Config.in new file mode 100644 index 00000000000..76b2248ec27 --- /dev/null +++ b/package/rapidxml/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_RAPIDXML + bool "rapidxml" + help + RapidXml is an attempt to create the fastest XML parser + possible, while retaining useability, portability and + reasonable W3C compatibility. It is an in-situ parser with + parsing speed approaching speed of strlen function executed + on the same data. + + http://sourceforge.net/projects/rapidxml/ + https://en.wikipedia.org/wiki/RapidXml diff --git a/package/rapidxml/rapidxml.hash b/package/rapidxml/rapidxml.hash new file mode 100644 index 00000000000..81919f03732 --- /dev/null +++ b/package/rapidxml/rapidxml.hash @@ -0,0 +1,6 @@ +# From https://sourceforge.net/projects/rapidxml/files/rapidxml/rapidxml%201.13/ +sha1 f5fd4fbc5ad7e96045313697811d65ea8089a950 rapidxml-1.13.zip +md5 7b4b42c9331c90aded23bb55dc725d6a rapidxml-1.13.zip + +# Locally calculated +sha256 c3f0b886374981bb20fabcf323d755db4be6dba42064599481da64a85f5b3571 rapidxml-1.13.zip diff --git a/package/rapidxml/rapidxml.mk b/package/rapidxml/rapidxml.mk new file mode 100644 index 00000000000..a76a21b4f57 --- /dev/null +++ b/package/rapidxml/rapidxml.mk @@ -0,0 +1,27 @@ +################################################################################ +# +# rapidxml +# +################################################################################ + +RAPIDXML_VERSION = 1.13 +RAPIDXML_SOURCE = rapidxml-$(RAPIDXML_VERSION).zip +RAPIDXML_SITE = http://downloads.sourceforge.net/project/rapidxml/rapidxml/rapidxml%20$(RAPIDXML_VERSION) +RAPIDXML_LICENSE = Boost Software License 1.0 or MIT +RAPIDXML_LICENSE_FILES = license.txt + +# C++ headers only +RAPIDXML_INSTALL_TARGET = NO +RAPIDXML_INSTALL_STAGING = YES + +define RAPIDXML_EXTRACT_CMDS + $(UNZIP) -d $(@D) $(DL_DIR)/$(RAPIDXML_SOURCE) + mv $(@D)/rapidxml-$(RAPIDXML_VERSION)/* $(@D)/ + rmdir $(@D)/rapidxml-$(RAPIDXML_VERSION) +endef + +define RAPIDXML_INSTALL_STAGING_CMDS + cp -dpfr $(@D)/*hpp $(STAGING_DIR)/usr/include +endef + +$(eval $(generic-package)) diff --git a/package/read-edid/0001-Fix-install-file-list.patch b/package/read-edid/0001-Fix-install-file-list.patch new file mode 100644 index 00000000000..622e97daa8a --- /dev/null +++ b/package/read-edid/0001-Fix-install-file-list.patch @@ -0,0 +1,29 @@ +From 562f48bee3443bda0ac257f2b0c52a72208163e0 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Mon, 7 Dec 2015 21:20:38 +0100 +Subject: [PATCH] Fix install file list. + +Fixes: + CMake Error at cmake_install.cmake:40 (file): + file INSTALL cannot find + ".../build/read-edid-3.0.2/COPYING". + +Signed-off-by: Peter Seiderer +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 7bf4561..2b9bc86 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -13,5 +13,5 @@ endif () + add_subdirectory (parse-edid) + + INSTALL(FILES get-edid.1 DESTINATION share/man/man1) +-INSTALL(FILES AUTHORS ChangeLog COPYING README DESTINATION ++INSTALL(FILES AUTHORS ChangeLog README DESTINATION + share/doc/read-edid) +-- +2.1.4 + diff --git a/package/read-edid/0002-Fix-compiler-check.patch b/package/read-edid/0002-Fix-compiler-check.patch new file mode 100644 index 00000000000..6c5f58c0bd7 --- /dev/null +++ b/package/read-edid/0002-Fix-compiler-check.patch @@ -0,0 +1,19 @@ +Fix compiler check + +By default CMake looks for c++ which the project does not need. + +Patch by Thomas: +http://lists.busybox.net/pipermail/buildroot/2015-December/146865.html + +Signed-off-by: Bernd Kuhls + +diff -uNr read-edid-3.0.2.org/CMakeLists.txt read-edid-3.0.2/CMakeLists.txt +--- read-edid-3.0.2.org/CMakeLists.txt 2014-02-05 17:27:26.000000000 +0100 ++++ read-edid-3.0.2/CMakeLists.txt 2015-12-13 16:08:43.000000000 +0100 +@@ -1,5 +1,5 @@ + cmake_minimum_required (VERSION 2.6) +-project (read-edid) ++project (read-edid C) + + option(I2CBUILD "Build I2C get-edid implementation" ON) + option(CLASSICBUILD "Build VBE get-edid implementation" ON) diff --git a/package/read-edid/Config.in b/package/read-edid/Config.in index a4668e684c9..c830e17f1f5 100644 --- a/package/read-edid/Config.in +++ b/package/read-edid/Config.in @@ -10,6 +10,4 @@ config BR2_PACKAGE_READ_EDID which turns the raw binary information into an XF86Config-compatible monitor section. - Notice that the get-edid tool is only available on x86. - http://polypux.org/projects/read-edid/ diff --git a/package/read-edid/read-edid.hash b/package/read-edid/read-edid.hash index 2c5501cee1c..30052171e13 100644 --- a/package/read-edid/read-edid.hash +++ b/package/read-edid/read-edid.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 c1b5d839fe6349efc183b3a3d33a8be1cd0dfea3c94015a86159d8aaeb6e9dd7 read-edid-1.4.2.tar.gz +sha256 c7c6d8440f5b90f98e276829271ccea5b2ff5a3413df8a0f87ec09f834af186f read-edid-3.0.2.tar.gz diff --git a/package/read-edid/read-edid.mk b/package/read-edid/read-edid.mk index f047e79b8dd..3e38f503fd3 100644 --- a/package/read-edid/read-edid.mk +++ b/package/read-edid/read-edid.mk @@ -4,13 +4,12 @@ # ################################################################################ -READ_EDID_VERSION = 1.4.2 +READ_EDID_VERSION = 3.0.2 READ_EDID_SITE = http://www.polypux.org/projects/read-edid -READ_EDID_LICENSE = GPLv2 -READ_EDID_LICENSE_FILES = COPYING +READ_EDID_LICENSE = BSD-like +READ_EDID_LICENSE_FILES = LICENSE -define READ_EDID_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) -endef +# disable classic get-edid support (needs libx86) +READ_EDID_CONF_OPTS += -DCLASSICBUILD=OFF -$(eval $(autotools-package)) +$(eval $(cmake-package)) diff --git a/system/skeleton/etc/inputrc b/package/readline/inputrc similarity index 100% rename from system/skeleton/etc/inputrc rename to package/readline/inputrc diff --git a/package/readline/readline.mk b/package/readline/readline.mk index c004899c232..763197085e1 100644 --- a/package/readline/readline.mk +++ b/package/readline/readline.mk @@ -17,8 +17,20 @@ READLINE_LICENSE_FILES = COPYING define READLINE_PURGE_EXAMPLES rm -rf $(TARGET_DIR)/usr/share/readline endef - READLINE_POST_INSTALL_TARGET_HOOKS += READLINE_PURGE_EXAMPLES +define READLINE_INSTALL_INPUTRC + $(INSTALL) -D -m 644 package/readline/inputrc $(TARGET_DIR)/etc/inputrc +endef +READLINE_POST_INSTALL_TARGET_HOOKS += READLINE_INSTALL_INPUTRC + +ifneq ($(BR2_STATIC_LIBS),y) +# libraries get installed read only, so strip fails +define READLINE_INSTALL_FIXUPS_SHARED + chmod +w $(addprefix $(TARGET_DIR)/usr/lib/,libhistory.so.* libreadline.so.*) +endef +READLINE_POST_INSTALL_TARGET_HOOKS += READLINE_INSTALL_FIXUPS_SHARED +endif + $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/redis/S50redis b/package/redis/S50redis index c5751d7f442..ae2a34174d9 100644 --- a/package/redis/S50redis +++ b/package/redis/S50redis @@ -4,14 +4,14 @@ # start() { - echo -n "Starting redis: " + printf "Starting redis: " umask 077 start-stop-daemon -S -q -c redis:redis -b \ --exec /usr/bin/redis-server -- /etc/redis.conf [ $? = 0 ] && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping redis: " + printf "Stopping redis: " /usr/bin/redis-cli shutdown [ $? = 0 ] && echo "OK" || echo "FAIL" } diff --git a/package/redis/redis.hash b/package/redis/redis.hash index 9afa94fbbb0..07783f545f0 100644 --- a/package/redis/redis.hash +++ b/package/redis/redis.hash @@ -1,2 +1,4 @@ # From https://github.com/antirez/redis-hashes/blob/master/README -sha1 0e2d7707327986ae652df717059354b358b83358 redis-3.0.3.tar.gz +sha1 e56b4b7e033ae8dbf311f9191cf6fdf3ae974d1c redis-3.0.7.tar.gz +# Calculated based on the hash above +sha256 b2a791c4ea3bb7268795c45c6321ea5abcc24457178373e6a6e3be6372737f23 redis-3.0.7.tar.gz diff --git a/package/redis/redis.mk b/package/redis/redis.mk index ef51972df8f..6a3dd016439 100644 --- a/package/redis/redis.mk +++ b/package/redis/redis.mk @@ -4,7 +4,7 @@ # ################################################################################ -REDIS_VERSION = 3.0.3 +REDIS_VERSION = 3.0.7 REDIS_SITE = http://download.redis.io/releases REDIS_LICENSE = BSD-3c (core); MIT and BSD family licenses (Bundled components) REDIS_LICENSE_FILES = COPYING diff --git a/package/rfkill/Config.in b/package/rfkill/Config.in new file mode 100644 index 00000000000..0d079138b8d --- /dev/null +++ b/package/rfkill/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_RFKILL + bool "rfkill" + help + rfkill is a small userspace tool to query the state of the + rfkill switches. + + https://wireless.wiki.kernel.org/en/users/documentation/rfkill diff --git a/package/rfkill/rfkill.hash b/package/rfkill/rfkill.hash new file mode 100644 index 00000000000..21be0a20746 --- /dev/null +++ b/package/rfkill/rfkill.hash @@ -0,0 +1,2 @@ +# From: https://www.kernel.org/pub/software/network/rfkill/sha256sums.asc +sha256 e0ae3004215e39a6c5c36e0726558740728d16f67ebdb8bea621250f6091d86a rfkill-0.5.tar.xz diff --git a/package/rfkill/rfkill.mk b/package/rfkill/rfkill.mk new file mode 100644 index 00000000000..2f9fe9f9a19 --- /dev/null +++ b/package/rfkill/rfkill.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# rfkill +# +################################################################################ + +RFKILL_VERSION = 0.5 +RFKILL_SOURCE = rfkill-$(RFKILL_VERSION).tar.xz +RFKILL_SITE = https://www.kernel.org/pub/software/network/rfkill +RFKILL_LICENSE = ISC +RFKILL_LICENSE_FILES = COPYING + +define RFKILL_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + VERSION_SUFFIX="br" +endef + +define RFKILL_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install +endef + +$(eval $(generic-package)) diff --git a/package/rng-tools/Config.in b/package/rng-tools/Config.in index 43c5a1c2e5b..469b60e89b4 100644 --- a/package/rng-tools/Config.in +++ b/package/rng-tools/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_RNG_TOOLS bool "rng-tools" - select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC + select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_MUSL # For rdrand ligcrypt is required and it's not obvious to users select BR2_PACKAGE_LIBGCRYPT if BR2_i386 || BR2_x86_64 help diff --git a/package/rng-tools/S21rngd b/package/rng-tools/S21rngd new file mode 100755 index 00000000000..b38be5a507b --- /dev/null +++ b/package/rng-tools/S21rngd @@ -0,0 +1,48 @@ +#!/bin/sh + +NAME="rngd" +DAEMON="/usr/sbin/${NAME}" +DAEMON_ARGS="" +CFG_FILE="/etc/default/${NAME}" +PID_FILE="/var/run/${NAME}.pid" + +# Read configuration variable file if it is present +[ -r "${CFG_FILE}" ] && . "${CFG_FILE}" + +start() +{ + printf "Starting ${NAME}: " + start-stop-daemon -S -q -x "${DAEMON}" -- ${DAEMON_ARGS} + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +stop() +{ + printf "Stopping ${NAME}: " + # This daemon does not exit properly with the default TERM signal unless + # it's forced to work by something reading /dev/random. Killing it and + # removing its PID file is more straightforward. + if start-stop-daemon -K -q -s KILL -p "${PID_FILE}" -n "${NAME}"; then + rm -f "${PID_FILE}" + echo "OK" + else + echo "FAIL" + fi +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + start + ;; + *) + echo "Usage: $0 {start|stop|restart|reload}" >&2 + exit 1 + ;; +esac diff --git a/package/rng-tools/rng-tools.mk b/package/rng-tools/rng-tools.mk index 8648c4f878c..cc07bdf15c4 100644 --- a/package/rng-tools/rng-tools.mk +++ b/package/rng-tools/rng-tools.mk @@ -9,8 +9,9 @@ RNG_TOOLS_SITE = http://downloads.sourceforge.net/project/gkernel/rng-tools/$(RN RNG_TOOLS_LICENSE = GPLv2 RNG_TOOLS_LICENSE_FILES = COPYING -# Work around for uClibc's lack of argp_*() functions -ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y) +# Work around for uClibc or musl toolchains which lack argp_*() +# functions. +ifeq ($(BR2_PACKAGE_ARGP_STANDALONE),y) RNG_TOOLS_CONF_ENV += LIBS="-largp" RNG_TOOLS_DEPENDENCIES += argp-standalone endif @@ -21,6 +22,11 @@ else RNG_TOOLS_CONF_OPTS += --without-libgcrypt endif +define RNG_TOOLS_INSTALL_INIT_SYSV + $(INSTALL) -D -m 755 package/rng-tools/S21rngd \ + $(TARGET_DIR)/etc/init.d/S21rngd +endef + define RNG_TOOLS_INSTALL_INIT_SYSTEMD $(INSTALL) -D -m 644 package/rng-tools/rngd.service \ $(TARGET_DIR)/usr/lib/systemd/system/rngd.service diff --git a/package/rng-tools/rngd.service b/package/rng-tools/rngd.service index 3bdc4c11a7a..c0bcffe59e6 100644 --- a/package/rng-tools/rngd.service +++ b/package/rng-tools/rngd.service @@ -2,8 +2,9 @@ Description=Hardware RNG Entropy Gatherer Daemon [Service] -ExecStart=/usr/sbin/rngd -f +ExecStart=/usr/sbin/rngd -f $DAEMON_ARGS SuccessExitStatus=66 +EnvironmentFile=-/etc/default/rngd [Install] WantedBy=multi-user.target diff --git a/package/rpcbind/0002-handle_reply-Don-t-use-the-xp_auth-pointer-directly.patch b/package/rpcbind/0002-handle_reply-Don-t-use-the-xp_auth-pointer-directly.patch new file mode 100644 index 00000000000..6145514beae --- /dev/null +++ b/package/rpcbind/0002-handle_reply-Don-t-use-the-xp_auth-pointer-directly.patch @@ -0,0 +1,42 @@ +From 9194122389f2a56b1cd1f935e64307e2e963c2da Mon Sep 17 00:00:00 2001 +From: Steve Dickson +Date: Mon, 2 Nov 2015 17:05:18 -0500 +Subject: [PATCH] handle_reply: Don't use the xp_auth pointer directly + +In the latest libtirpc version to access the xp_auth +one must use the SVC_XP_AUTH macro. To be backwards +compatible a couple ifdefs were added to use the +macro when it exists. + +Signed-off-by: Steve Dickson +[peda@axentia.se: backport from upstream] +Signed-off-by: Peter Rosin +--- + src/rpcb_svc_com.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/src/rpcb_svc_com.c b/src/rpcb_svc_com.c +index 4ae93f1..22d6c84 100644 +--- a/src/rpcb_svc_com.c ++++ b/src/rpcb_svc_com.c +@@ -1295,10 +1295,17 @@ handle_reply(int fd, SVCXPRT *xprt) + a.rmt_localvers = fi->versnum; + + xprt_set_caller(xprt, fi); ++#if defined(SVC_XP_AUTH) ++ SVC_XP_AUTH(xprt) = svc_auth_none; ++#else + xprt->xp_auth = &svc_auth_none; ++#endif + svc_sendreply(xprt, (xdrproc_t) xdr_rmtcall_result, (char *) &a); ++#if !defined(SVC_XP_AUTH) + SVCAUTH_DESTROY(xprt->xp_auth); + xprt->xp_auth = NULL; ++#endif ++ + done: + if (buffer) + free(buffer); +-- +2.5.3 + diff --git a/package/rpcbind/Config.in b/package/rpcbind/Config.in index 2a79bdc69c9..9ff64a589c9 100644 --- a/package/rpcbind/Config.in +++ b/package/rpcbind/Config.in @@ -4,9 +4,6 @@ config BR2_PACKAGE_RPCBIND # implementation of toolchains. depends on BR2_TOOLCHAIN_HAS_THREADS # libtirpc select BR2_PACKAGE_LIBTIRPC - # uClibc toolchains provided by ADI don't have AI_ADDRCONFIG - # support, needed for libtirpc - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 # fork() depends on BR2_USE_MMU help @@ -14,6 +11,5 @@ config BR2_PACKAGE_RPCBIND into universal addresses. comment "rpcbind needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 depends on !BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU diff --git a/package/rpcbind/S30rpcbind b/package/rpcbind/S30rpcbind index 85ebd6f1b8b..532d3f8866a 100644 --- a/package/rpcbind/S30rpcbind +++ b/package/rpcbind/S30rpcbind @@ -4,13 +4,13 @@ # start() { - echo -n "Starting rpcbind: " + printf "Starting rpcbind: " umask 077 start-stop-daemon -S -q -p /var/run/rpcbind.pid --exec /usr/bin/rpcbind echo "OK" } stop() { - echo -n "Stopping rpcbind daemon: " + printf "Stopping rpcbind daemon: " start-stop-daemon -K -q -p /var/run/rpcbind.pid echo "OK" } diff --git a/package/rpi-firmware/config.txt b/package/rpi-firmware/config.txt index aa8d2ab5dd0..58cc966a874 100644 --- a/package/rpi-firmware/config.txt +++ b/package/rpi-firmware/config.txt @@ -1,7 +1,7 @@ # Please note that this is only a sample, we recommend you to change it to fit # your needs. # You should override this file using a post-build script. -# See http://buildroot.org/downloads/manual/manual.html#rootfs-custom +# See http://buildroot.org/manual.html#rootfs-custom # and http://elinux.org/RPiconfig for a description of config.txt syntax kernel=zImage diff --git a/package/rpi-firmware/mkknlimg b/package/rpi-firmware/mkknlimg old mode 100755 new mode 100644 index f3779473e76..33f81874bf1 --- a/package/rpi-firmware/mkknlimg +++ b/package/rpi-firmware/mkknlimg @@ -1,25 +1,51 @@ #!/usr/bin/env perl # # Originaly from: https://github.com/raspberrypi/tools/blob/master/mkimage/mkknlimg -# Original cset : 92a2df13b887f4799554bf92c4fc78d53668c868 +# Original cset : f5642106425d430e1f82ee064121a5fd0e05a386 +# +# ---------------------------------------------------------------------- +# mkknlimg by Phil Elwell for Raspberry Pi +# based on extract-ikconfig by Dick Streefland +# +# (c) 2009,2010 Dick Streefland +# (c) 2014,2015 Raspberry Pi (Trading) Limited +# +# Licensed under the terms of the GNU General Public License. +# ---------------------------------------------------------------------- use strict; +use warnings; use integer; +use constant FLAG_PI => 1; +use constant FLAG_DTOK => 2; +use constant FLAG_DDTK => 4; +use constant FLAG_283X => 8; + my $trailer_magic = 'RPTL'; my $tmpfile1 = "/tmp/mkknlimg_$$.1"; my $tmpfile2 = "/tmp/mkknlimg_$$.2"; my $dtok = 0; +my $ddtk = 0; +my $is_283x = 0; -while ($ARGV[0] =~ /^-/) +while (@ARGV && ($ARGV[0] =~ /^-/)) { my $arg = shift(@ARGV); if ($arg eq '--dtok') { $dtok = 1; } + elsif ($arg eq '--ddtk') + { + $ddtk = 1; + } + elsif ($arg eq '--283x') + { + $is_283x = 1; + } else { print ("* Unknown option '$arg'\n"); @@ -32,56 +58,68 @@ usage() if (@ARGV != 2); my $kernel_file = $ARGV[0]; my $out_file = $ARGV[1]; -my @wanted_config_lines = -( - 'CONFIG_BCM2708_DT' -); +if (! -r $kernel_file) +{ + print ("* File '$kernel_file' not found\n"); + usage(); +} + +my $wanted_configs = +{ + 'CONFIG_BCM2708_DT' => FLAG_PI | FLAG_DTOK, + 'CONFIG_ARCH_BCM2835' => FLAG_PI | FLAG_DTOK | FLAG_283X, +}; -my @wanted_strings = -( - 'bcm2708_fb', - 'brcm,bcm2708-pinctrl', - 'brcm,bcm2835-gpio', - 'of_find_property' -); +my $wanted_strings = +{ + 'bcm2708_fb' => FLAG_PI, + 'brcm,bcm2835-mmc' => FLAG_PI, + 'brcm,bcm2835-sdhost' => FLAG_PI, + 'brcm,bcm2708-pinctrl' => FLAG_PI | FLAG_DTOK, + 'brcm,bcm2835-gpio' => FLAG_PI | FLAG_DTOK, + 'brcm,bcm2835-pm-wdt' => FLAG_PI | FLAG_DTOK | FLAG_283X, + 'of_overlay_apply' => FLAG_DTOK | FLAG_DDTK, +}; my $res = try_extract($kernel_file, $tmpfile1); - -$res = try_decompress('\037\213\010', 'xy', 'gunzip', 0, - $kernel_file, $tmpfile1, $tmpfile2) if (!$res); -$res = try_decompress('\3757zXZ\000', 'abcde', 'unxz --single-stream', -1, - $kernel_file, $tmpfile1, $tmpfile2) if (!$res); -$res = try_decompress('BZh', 'xy', 'bunzip2', 0, - $kernel_file, $tmpfile1, $tmpfile2) if (!$res); -$res = try_decompress('\135\0\0\0', 'xxx', 'unlzma', 0, - $kernel_file, $tmpfile1, $tmpfile2) if (!$res); -$res = try_decompress('\211\114\132', 'xy', 'lzop -d', 0, - $kernel_file, $tmpfile1, $tmpfile2) if (!$res); +$res ||= try_decompress('\037\213\010', 'xy', 'gunzip', 0, + $kernel_file, $tmpfile1, $tmpfile2); +$res ||= try_decompress('\3757zXZ\000', 'abcde', 'unxz --single-stream', -1, + $kernel_file, $tmpfile1, $tmpfile2); +$res ||= try_decompress('BZh', 'xy', 'bunzip2', 0, + $kernel_file, $tmpfile1, $tmpfile2); +$res ||= try_decompress('\135\0\0\0', 'xxx', 'unlzma', 0, + $kernel_file, $tmpfile1, $tmpfile2); +$res ||= try_decompress('\211\114\132', 'xy', 'lzop -d', 0, + $kernel_file, $tmpfile1, $tmpfile2); +$res ||= try_decompress('\002\041\114\030', 'xy', 'lz4 -d', 1, + $kernel_file, $tmpfile1, $tmpfile2); my $append_trailer; my $trailer; +my $kver = '?'; + +$append_trailer = $dtok; if ($res) { - print("Version: $res->{''}\n"); + $kver = $res->{'kver'} || '?'; + my $flags = $res->{'flags'}; + print("Version: $kver\n"); - $append_trailer = $dtok; - if (!$dtok) + if ($flags & FLAG_PI) { - if (config_bool($res, 'bcm2708_fb')) - { - $dtok ||= config_bool($res, 'CONFIG_BCM2708_DT'); - $dtok ||= config_bool($res, 'brcm,bcm2708-pinctrl'); - $dtok ||= config_bool($res, 'brcm,bcm2835-gpio'); - $append_trailer = 1; - } - else - { - print ("* This doesn't look like a Raspberry Pi kernel. In pass-through mode.\n"); - } + $append_trailer = 1; + $dtok ||= ($flags & FLAG_DTOK) != 0; + $is_283x ||= ($flags & FLAG_283X) != 0; + $ddtk ||= ($flags & FLAG_DDTK) != 0; + } + else + { + print ("* This doesn't look like a Raspberry Pi kernel. In pass-through mode.\n"); } } -else +elsif (!$dtok) { print ("* Is this a valid kernel? In pass-through mode.\n"); } @@ -89,12 +127,16 @@ else if ($append_trailer) { printf("DT: %s\n", $dtok ? "y" : "n"); + printf("DDT: %s\n", $ddtk ? "y" : "n"); + printf("283x: %s\n", $is_283x ? "y" : "n"); my @atoms; push @atoms, [ $trailer_magic, pack('V', 0) ]; - push @atoms, [ 'KVer', $res->{''} ]; + push @atoms, [ 'KVer', $kver ]; push @atoms, [ 'DTOK', pack('V', $dtok) ]; + push @atoms, [ 'DDTK', pack('V', $ddtk) ]; + push @atoms, [ '283x', pack('V', $is_283x) ]; $trailer = pack_trailer(\@atoms); $atoms[0]->[1] = pack('V', length($trailer)); @@ -102,17 +144,31 @@ if ($append_trailer) $trailer = pack_trailer(\@atoms); } -die "* Failed to open '$kernel_file'\n" if (!open(my $ifh, '<', $kernel_file)); -die "* Failed to create '$out_file'\n" if (!open(my $ofh, '>', $out_file)); - -my $copybuf; +my $ofh; my $total_len = 0; -while (1) + +if ($out_file eq $kernel_file) +{ + die "* Failed to open '$out_file' for append\n" + if (!open($ofh, '>>', $out_file)); + $total_len = tell($ofh); +} +else { + die "* Failed to open '$kernel_file'\n" + if (!open(my $ifh, '<', $kernel_file)); + die "* Failed to create '$out_file'\n" + if (!open($ofh, '>', $out_file)); + + my $copybuf; + while (1) + { my $bytes = sysread($ifh, $copybuf, 64*1024); last if (!$bytes); syswrite($ofh, $copybuf, $bytes); $total_len += $bytes; + } + close($ifh); } if ($trailer) @@ -122,7 +178,6 @@ if ($trailer) syswrite($ofh, $trailer); } -close($ifh); close($ofh); exit($trailer ? 0 : 1); @@ -135,7 +190,7 @@ END { sub usage { - print ("Usage: mkknlimg [--dtok] \n"); + print ("Usage: mkknlimg [--dtok] [--283x] \n"); exit(1); } @@ -149,19 +204,59 @@ sub try_extract chomp($ver); - my $res = { ''=>$ver }; - my $string_pattern = '^('.join('|', @wanted_strings).')$'; + my $res = { 'kver'=>$ver }; + $res->{'flags'} = strings_to_flags($knl, $wanted_strings) | + configs_to_flags($knl, $tmp, $wanted_configs); + + return $res; +} + + +sub try_decompress +{ + my ($magic, $subst, $zcat, $idx, $knl, $tmp1, $tmp2) = @_; + + my $pos = `tr "$magic\n$subst" "\n$subst=" < "$knl" | grep -abo "^$subst"`; + if ($pos) + { + chomp($pos); + $pos = (split(/[\r\n]+/, $pos))[$idx]; + return undef if (!defined($pos)); + $pos =~ s/:.*[\r\n]*$//s; + my $cmd = "tail -c+$pos \"$knl\" | $zcat > $tmp2 2> /dev/null"; + my $err = (system($cmd) >> 8); + return undef if (($err != 0) && ($err != 2)); + + return try_extract($tmp2, $tmp1); + } + + return undef; +} + + +sub strings_to_flags +{ + my ($knl, $strings) = @_; + my $string_pattern = '^('.join('|', keys(%$strings)).')$'; + my $flags = 0; my @matches = `strings \"$knl\" | grep -E \"$string_pattern\"`; foreach my $match (@matches) { chomp($match); - $res->{$match} = 1; + $flags |= $strings->{$match}; } - my $config_pattern = '^('.join('|', @wanted_config_lines).')=(.*)$'; + return $flags; +} + +sub configs_to_flags +{ + my ($knl, $tmp, $configs) = @_; + my $config_pattern = '^('.join('|', keys(%$configs)).')=(.*)$'; my $cf1 = 'IKCFG_ST\037\213\010'; my $cf2 = '0123456789'; + my $flags = 0; my $pos = `tr "$cf1\n$cf2" "\n$cf2=" < "$knl" | grep -abo "^$cf2"`; if ($pos) @@ -176,7 +271,11 @@ sub try_extract while (my $line = <$fh>) { chomp($line); - $res->{$1} = $2 if ($line =~ /$config_pattern/); + if (($line =~ /$config_pattern/) && + (($2 eq 'y') || ($2 eq 'm'))) + { + $flags |= $configs->{$1}; + } } close($fh); @@ -184,28 +283,7 @@ sub try_extract } } - return $res; -} - - -sub try_decompress -{ - my ($magic, $subst, $zcat, $idx, $knl, $tmp1, $tmp2) = @_; - - my $pos = `tr "$magic\n$subst" "\n$subst=" < "$knl" | grep -abo "^$subst"`; - if ($pos) - { - chomp($pos); - $pos = (split(/[\r\n]+/, $pos))[$idx]; - $pos =~ s/:.*[\r\n]*$//s; - my $cmd = "tail -c+$pos \"$knl\" | $zcat > $tmp2 2> /dev/null"; - my $err = (system($cmd) >> 8); - return undef if (($err != 0) && ($err != 2)); - - return try_extract($tmp2, $tmp1); - } - - return undef; + return $flags; } sub pack_trailer @@ -219,9 +297,3 @@ sub pack_trailer } return $trailer; } - -sub config_bool -{ - my ($configs, $wanted) = @_; - return (($configs->{$wanted} eq 'y') || ($configs->{$wanted} eq '1')); -} diff --git a/package/rrdtool/0001-Add-configure-option-to-disable-documentation.patch b/package/rrdtool/0001-Add-configure-option-to-disable-documentation.patch new file mode 100644 index 00000000000..afb62927de8 --- /dev/null +++ b/package/rrdtool/0001-Add-configure-option-to-disable-documentation.patch @@ -0,0 +1,71 @@ +From deaef0790f3cbbce826275d3564551fc9568b628 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Wed, 2 Dec 2015 14:31:52 -0300 +Subject: [PATCH] Add configure option to disable documentation + +Signed-off-by: Gustavo Zacarias +--- + Makefile.am | 6 +++++- + configure.ac | 8 ++++++++ + 2 files changed, 13 insertions(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index f45975c..1f46a9b 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -5,7 +5,11 @@ RSYNC = rsync --rsh=ssh + + # build the following subdirectories + +-SUBDIRS = po src doc bindings tests ++SUBDIRS = po src bindings tests ++ ++if BUILD_DOCS ++SUBDIRS += doc ++endif + + if BUILD_EXAMPLES + SUBDIRS += examples +diff --git a/configure.ac b/configure.ac +index dc70e7d..7460c67 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -100,6 +100,9 @@ AC_ARG_VAR(RRDGRAPH_YLEGEND_ANGLE, + AC_DEFINE_UNQUOTED(RRDGRAPH_YLEGEND_ANGLE,${RRDGRAPH_YLEGEND_ANGLE:-90.0}, + [Vertical label angle: -90.0 (default) or 90.0]) + ++AC_ARG_ENABLE(docs,AS_HELP_STRING([--disable-docs],[disable building documentation]), ++[],[enable_docs=yes]) ++ + AC_ARG_ENABLE(examples,AS_HELP_STRING([--disable-examples],[disable building of examples]), + [],[enable_examples=yes]) + +@@ -115,6 +118,7 @@ AC_ARG_ENABLE(rrd_graph,AS_HELP_STRING([--disable-rrd_graph],[disable all rrd_gr + AC_ARG_ENABLE(rrd_restore,AS_HELP_STRING([--disable-rrd_restore],[disable rrd_restore XML import functions]), + [],[enable_rrd_restore=yes]) + ++AM_CONDITIONAL(BUILD_DOCS,[test $enable_docs != no]) + AM_CONDITIONAL(BUILD_EXAMPLES,[test $enable_examples != no]) + AM_CONDITIONAL(BUILD_RRDCGI,[test $enable_rrdcgi != no]) + AM_CONDITIONAL(BUILD_RRDCACHED,[test $enable_rrdcached != no]) +@@ -945,6 +949,8 @@ fi + + AC_SUBST(COMP_PYTHON) + ++if test $enable_docs != no; then ++ + dnl Check for nroff + AC_ARG_VAR(NROFF, [path to the local nroff version]) + AC_PATH_PROGS(NROFF, [gnroff nroff]) +@@ -961,6 +967,8 @@ AC_ARG_VAR(RRDDOCDIR, [[DATADIR/doc/PACKAGE-VERSION] Documentation directory]) + if test -z "$RRDDOCDIR"; then + RRDDOCDIR='${datadir}/doc/${PACKAGE}-${VERSION}'; fi + ++fi ++ + # systemd check + PKG_PROG_PKG_CONFIG + AC_ARG_WITH([systemdsystemunitdir], +-- +2.4.10 + diff --git a/package/rrdtool/0001-automake-compat.patch b/package/rrdtool/0001-automake-compat.patch deleted file mode 100644 index 92b753db232..00000000000 --- a/package/rrdtool/0001-automake-compat.patch +++ /dev/null @@ -1,18 +0,0 @@ -Make it compatible with newer autoconf/automake. -Patch from OpenWRT. - -Signed-off-by: Gustavo Zacarias - ---- a/bindings/tcl/Makefile.am -+++ b/bindings/tcl/Makefile.am -@@ -26,8 +26,8 @@ tclpkgdir = @TCL_PACKAGE_DIR@ - tclpkg_DATA = pkgIndex.tcl - tclpkg_SCRIPTS = ifOctets.tcl - else --pkglib_DATA = pkgIndex.tcl --pkglib_SCRIPTS = ifOctets.tcl -+pkgdata_DATA = pkgIndex.tcl -+pkgdata_SCRIPTS = ifOctets.tcl - endif - - # Automake doen't like `tclrrd$(VERSION)$(TCL_SHLIB_SUFFIX)' as diff --git a/package/rrdtool/0002-configure-dont-hardcode-include-dirs.patch b/package/rrdtool/0002-configure-dont-hardcode-include-dirs.patch deleted file mode 100644 index 43b57a1b227..00000000000 --- a/package/rrdtool/0002-configure-dont-hardcode-include-dirs.patch +++ /dev/null @@ -1,26 +0,0 @@ -[PATCH] configure.ac: don't hardcode include files search paths - -Breaks cross compilation if host has libart/freetype. - -Signed-off-by: Peter Korsgaard ---- - configure.ac | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -Index: rrdtool-1.2.30/configure.ac -=================================================================== ---- rrdtool-1.2.30.orig/configure.ac -+++ rrdtool-1.2.30/configure.ac -@@ -524,10 +524,10 @@ - - CORE_LIBS="$LIBS" - --EX_CHECK_ALL(art_lgpl_2, art_vpath_add_point, libart_lgpl/libart.h, libart-2.0, 2.3.17, ftp://ftp.gnome.org/pub/GNOME/sources/libart_lgpl/2.3/, /usr/include/libart-2.0) -+EX_CHECK_ALL(art_lgpl_2, art_vpath_add_point, libart_lgpl/libart.h, libart-2.0, 2.3.17, ftp://ftp.gnome.org/pub/GNOME/sources/libart_lgpl/2.3/, "") - EX_CHECK_ALL(z, zlibVersion, zlib.h, zlib, 1.2.3, http://www.gzip.org/zlib/, "") - EX_CHECK_ALL(png, png_access_version_number, png.h, libpng, 1.2.10, http://prdownloads.sourceforge.net/libpng/, "") --EX_CHECK_ALL(freetype, FT_Init_FreeType, ft2build.h, freetype2, 2.1.10, http://prdownloads.sourceforge.net/freetype/, /usr/include/freetype2) -+EX_CHECK_ALL(freetype, FT_Init_FreeType, ft2build.h, freetype2, 2.1.10, http://prdownloads.sourceforge.net/freetype/, "") - - if test "$EX_CHECK_ALL_ERR" = "YES"; then - AC_MSG_ERROR([Please fix the library issues listed above and try again.]) diff --git a/package/rrdtool/Config.in b/package/rrdtool/Config.in index 33fa677745f..631ed32847c 100644 --- a/package/rrdtool/Config.in +++ b/package/rrdtool/Config.in @@ -1,15 +1,37 @@ config BR2_PACKAGE_RRDTOOL bool "rrdtool" - depends on BR2_USE_WCHAR - select BR2_PACKAGE_FREETYPE - select BR2_PACKAGE_LIBART - select BR2_PACKAGE_LIBPNG - select BR2_PACKAGE_ZLIB + depends on BR2_USE_WCHAR # libglib2 + depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_USE_MMU # libglib2 + select BR2_PACKAGE_LIBGLIB2 help RRDtool is the OpenSource industry standard, high performance data logging and graphing system for time series data. http://oss.oetiker.ch/rrdtool/ -comment "rrdtool needs a toolchain w/ wchar" - depends on !BR2_USE_WCHAR +if BR2_PACKAGE_RRDTOOL + +config BR2_PACKAGE_RRDTOOL_RRDGRAPH + bool "rrd_graph" + default y + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz + depends on BR2_INSTALL_LIBSTDCPP # freetype support from pango + select BR2_PACKAGE_CAIRO + select BR2_PACKAGE_CAIRO_PDF + select BR2_PACKAGE_CAIRO_PNG + select BR2_PACKAGE_CAIRO_PS + select BR2_PACKAGE_CAIRO_SVG + select BR2_PACKAGE_PANGO + help + This enables the graphing capabilities ('rrdgraph'). + Without this it will only act as a database backend. + +comment "rrd_graph support needs a toolchain w/ C++" + depends on !BR2_INSTALL_LIBSTDCPP + +endif + +comment "rrdtool needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/rrdtool/rrdtool.hash b/package/rrdtool/rrdtool.hash index 20af75a04c5..36ac50c9deb 100644 --- a/package/rrdtool/rrdtool.hash +++ b/package/rrdtool/rrdtool.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 3190efea410a6dd035799717948b2df09910f608d72d23ee81adad4cd0184ae9 rrdtool-1.2.30.tar.gz +sha256 3a286d449c05d657e3fc3adcaa5cb4f0cfac8f465324b14f364a45d4ff8ca6f6 rrdtool-1.5.5.tar.gz diff --git a/package/rrdtool/rrdtool.mk b/package/rrdtool/rrdtool.mk index e4226946ff3..0bc7c381f1c 100644 --- a/package/rrdtool/rrdtool.mk +++ b/package/rrdtool/rrdtool.mk @@ -4,31 +4,36 @@ # ################################################################################ -RRDTOOL_VERSION = 1.2.30 +RRDTOOL_VERSION = 1.5.5 RRDTOOL_SITE = http://oss.oetiker.ch/rrdtool/pub RRDTOOL_LICENSE = GPLv2+ with FLOSS license exceptions as explained in COPYRIGHT -RRDTOOL_LICENSE_FILES = COPYING COPYRIGHT - -RRDTOOL_DEPENDENCIES = host-pkgconf freetype libart libpng zlib +RRDTOOL_LICENSE_FILES = COPYRIGHT LICENSE +RRDTOOL_DEPENDENCIES = host-pkgconf libglib2 +# For 0001-Add-configure-option-to-disable-documentation.patch RRDTOOL_AUTORECONF = YES +RRDTOOL_GETTEXTIZE = YES RRDTOOL_INSTALL_STAGING = YES -RRDTOOL_CONF_ENV = \ - rd_cv_ieee_works=yes \ - rd_cv_null_realloc=nope \ - ac_cv_func_mmap_fixed_mapped=yes RRDTOOL_CONF_OPTS = \ + --disable-examples \ + --disable-libdbi \ + --disable-librados \ + --disable-libwrap \ + --disable-lua \ --disable-perl \ --disable-python \ --disable-ruby \ - --disable-tcl \ - --program-transform-name='' \ - $(if $(BR2_TOOLCHAIN_HAS_THREADS),,--disable-pthread) -RRDTOOL_MAKE = $(MAKE1) + --disable-tcl -define RRDTOOL_REMOVE_EXAMPLES - rm -rf $(TARGET_DIR)/usr/share/rrdtool/examples -endef +ifeq ($(BR2_PACKAGE_RRDTOOL_RRDGRAPH),y) +RRDTOOL_DEPENDENCIES += cairo pango +else +RRDTOOL_CONF_OPTS += --disable-rrd_graph +endif -RRDTOOL_POST_INSTALL_TARGET_HOOKS += RRDTOOL_REMOVE_EXAMPLES +ifeq ($(BR2_PACKAGE_LIBXML2),y) +RRDTOOL_DEPENDENCIES += libxml2 +else +RRDTOOL_CONF_OPTS += --disable-rrd_restore +endif $(eval $(autotools-package)) diff --git a/package/rsh-redone/Config.in b/package/rsh-redone/Config.in index 218b47ce4ac..316ff7a1db6 100644 --- a/package/rsh-redone/Config.in +++ b/package/rsh-redone/Config.in @@ -16,11 +16,12 @@ config BR2_PACKAGE_RSH_REDONE_RLOGIND bool "rlogind" depends on !BR2_STATIC_LIBS depends on BR2_ENABLE_LOCALE && BR2_USE_WCHAR + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam select BR2_PACKAGE_LINUX_PAM -comment "rlogind needs a toolchain w/ wchar, locale, dynamic library" +comment "rlogind needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ - || BR2_STATIC_LIBS + || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL config BR2_PACKAGE_RSH_REDONE_RSH bool "rsh" @@ -29,10 +30,11 @@ config BR2_PACKAGE_RSH_REDONE_RSHD bool "rshd" depends on BR2_ENABLE_LOCALE && BR2_USE_WCHAR depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam select BR2_PACKAGE_LINUX_PAM -comment "rshd needs a toolchain w/ wchar, locale, dynamic library" +comment "rshd needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ - || BR2_STATIC_LIBS + || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL endif diff --git a/package/rsync/rsync.hash b/package/rsync/rsync.hash index 032047d6556..6311116141e 100644 --- a/package/rsync/rsync.hash +++ b/package/rsync/rsync.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 7de4364fcf5fe42f3bdb514417f1c40d10bbca896abe7e7f2c581c6ea08a2621 rsync-3.1.1.tar.gz +sha256 ecfa62a7fa3c4c18b9eccd8c16eaddee4bd308a76ea50b5c02a5840f09c0a1c2 rsync-3.1.2.tar.gz diff --git a/package/rsync/rsync.mk b/package/rsync/rsync.mk index f3263894c01..e1e850c440f 100644 --- a/package/rsync/rsync.mk +++ b/package/rsync/rsync.mk @@ -4,7 +4,7 @@ # ################################################################################ -RSYNC_VERSION = 3.1.1 +RSYNC_VERSION = 3.1.2 RSYNC_SITE = http://rsync.samba.org/ftp/rsync/src RSYNC_LICENSE = GPLv3+ RSYNC_LICENSE_FILES = COPYING diff --git a/package/rsyslog/0001-musl-fcntl-h.patch b/package/rsyslog/0001-musl-fcntl-h.patch new file mode 100644 index 00000000000..5c2daee6954 --- /dev/null +++ b/package/rsyslog/0001-musl-fcntl-h.patch @@ -0,0 +1,30 @@ +From 835571774dc519dd2cff7ab1020cf298cc953a8f Mon Sep 17 00:00:00 2001 +From: Thordur Bjornsson +Date: Tue, 7 Jul 2015 12:34:08 +0200 +Subject: [PATCH] omfile: unconditionally include fcntl.h. + +required for open() flags + +Signed-off-by: Thordur Bjornsson +[Bernd: downloaded from upstream commit: + https://github.com/rsyslog/rsyslog/commit/835571774dc519dd2cff7ab1020cf298cc953a8f +Signed-off-by: Bernd Kuhls +--- + tools/omfile.c | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/tools/omfile.c b/tools/omfile.c +index 482e723..4444b97 100644 +--- a/tools/omfile.c ++++ b/tools/omfile.c +@@ -48,9 +48,7 @@ + #include + #include + #include +-#ifdef OS_SOLARIS +-# include +-#endif ++#include + #ifdef HAVE_ATOMIC_BUILTINS + # include + #endif diff --git a/package/rsyslog/Config.in b/package/rsyslog/Config.in index d66132f374d..35992077a4a 100644 --- a/package/rsyslog/Config.in +++ b/package/rsyslog/Config.in @@ -7,6 +7,7 @@ config BR2_PACKAGE_RSYSLOG depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() depends on !BR2_STATIC_LIBS # modules + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c help Rsyslog is a powerful and flexible syslog implementation @@ -14,4 +15,5 @@ config BR2_PACKAGE_RSYSLOG comment "rsyslog needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/rsyslog/S01logging b/package/rsyslog/S01logging index 64716762ec4..8e4a59c2d5e 100644 --- a/package/rsyslog/S01logging +++ b/package/rsyslog/S01logging @@ -1,13 +1,13 @@ #!/bin/sh start() { - echo -n "Starting rsyslog daemon: " + printf "Starting rsyslog daemon: " start-stop-daemon -S -q -p /var/run/rsyslogd.pid --exec /usr/sbin/rsyslogd [ $? = 0 ] && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping rsyslog daemon: " + printf "Stopping rsyslog daemon: " start-stop-daemon -K -q -p /var/run/rsyslogd.pid [ $? = 0 ] && echo "OK" || echo "FAIL" } diff --git a/package/rsyslog/rsyslog.mk b/package/rsyslog/rsyslog.mk index 1de481f16fb..5dde9243167 100644 --- a/package/rsyslog/rsyslog.mk +++ b/package/rsyslog/rsyslog.mk @@ -6,7 +6,7 @@ RSYSLOG_VERSION = 8.9.0 RSYSLOG_SITE = http://rsyslog.com/files/download/rsyslog -RSYSLOG_LICENSE = GPLv3 LGPLv3 Apache-2.0 +RSYSLOG_LICENSE = GPLv3, LGPLv3, Apache-2.0 RSYSLOG_LICENSE_FILES = COPYING COPYING.LESSER COPYING.ASL20 RSYSLOG_DEPENDENCIES = zlib libestr liblogging json-c host-pkgconf RSYSLOG_CONF_ENV = ac_cv_prog_cc_c99='-std=c99' diff --git a/package/rt-tests/Config.in b/package/rt-tests/Config.in index db5e0a04e36..4c57c0f0373 100644 --- a/package/rt-tests/Config.in +++ b/package/rt-tests/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_RT_TESTS bool "rt-tests" depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS # dlopen help Set of utilities for testing the real-time behaviour of a Linux system. @@ -26,6 +27,6 @@ comment "rt-tests may not work on MIPS with an external uClibc toolchain" depends on BR2_TOOLCHAIN_EXTERNAL_UCLIBC depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el -comment "rt-tests needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS +comment "rt-tests needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS depends on BR2_USE_MMU diff --git a/package/rtai/Config.in b/package/rtai/Config.in index ecbff38d470..14b1854837e 100644 --- a/package/rtai/Config.in +++ b/package/rtai/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_RTAI bool "rtai" depends on BR2_LINUX_KERNEL_EXT_RTAI + select BR2_LINUX_NEEDS_MODULES # not using kernel-module infra help RTAI - the RealTime Application Interface for Linux. diff --git a/package/rtmpdump/rtmpdump.mk b/package/rtmpdump/rtmpdump.mk index 613f1cd49ea..ad4308c5b6d 100644 --- a/package/rtmpdump/rtmpdump.mk +++ b/package/rtmpdump/rtmpdump.mk @@ -16,9 +16,6 @@ RTMPDUMP_DEPENDENCIES = zlib ifeq ($(BR2_PACKAGE_GNUTLS),y) RTMPDUMP_DEPENDENCIES += gnutls RTMPDUMP_CRYPTO = GNUTLS -else ifeq ($(BR2_PACKAGE_POLARSSL),y) -RTMPDUMP_DEPENDENCIES += polarssl -RTMPDUMP_CRYPTO = POLARSSL else ifeq ($(BR2_PACKAGE_OPENSSL),y) RTMPDUMP_DEPENDENCIES += openssl RTMPDUMP_CRYPTO = OPENSSL @@ -35,22 +32,25 @@ else RTMPDUMP_SHARED = "SHARED=" endif +RTMPDUMP_MAKE_FLAGS = \ + CRYPTO=$(RTMPDUMP_CRYPTO) \ + prefix=/usr \ + $(RTMPDUMP_SHARED) + define RTMPDUMP_BUILD_CMDS - $(MAKE) CRYPTO=$(RTMPDUMP_CRYPTO) \ - prefix=/usr \ + $(MAKE) $(RTMPDUMP_MAKE_FLAGS) \ XCFLAGS="$(RTMPDUMP_CFLAGS)" \ XLDFLAGS="$(TARGET_LDFLAGS)" \ CROSS_COMPILE="$(TARGET_CROSS)" \ - $(RTMPDUMP_SHARED) \ -C $(@D)/librtmp endef define RTMPDUMP_INSTALL_STAGING_CMDS - $(MAKE) prefix=/usr -C $(@D)/librtmp install DESTDIR=$(STAGING_DIR) $(RTMPDUMP_SHARED) + $(MAKE) -C $(@D)/librtmp install DESTDIR=$(STAGING_DIR) $(RTMPDUMP_MAKE_FLAGS) endef define RTMPDUMP_INSTALL_TARGET_CMDS - $(MAKE) prefix=/usr -C $(@D)/librtmp install DESTDIR=$(TARGET_DIR) $(RTMPDUMP_SHARED) + $(MAKE) -C $(@D)/librtmp install DESTDIR=$(TARGET_DIR) $(RTMPDUMP_MAKE_FLAGS) endef $(eval $(generic-package)) diff --git a/package/rtorrent/0001-cross_compile.patch b/package/rtorrent/0001-cross_compile.patch index 2be8d060766..a8ad696e6db 100644 --- a/package/rtorrent/0001-cross_compile.patch +++ b/package/rtorrent/0001-cross_compile.patch @@ -1,22 +1,48 @@ -Fix cross compilation, based on OpenWRT patch. +From d62f7474289970d5be3fd658dd6ace4489408bdf Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Mon, 5 Oct 2015 00:52:26 +0100 +Subject: [PATCH] Fix cross compilation, based on OpenWRT patch. + +[Vincent: tweak the patch for version 0.9.6] Signed-off-by: Gustavo Zacarias +Signed-off-by: Vicente Olivert Riera +--- + configure.ac | 1 - + scripts/checks.m4 | 2 +- + scripts/common.m4 | 4 ++-- + 3 files changed, 3 insertions(+), 4 deletions(-) -diff -Nura rtorrent-0.9.2/configure.ac rtorrent-0.9.2-cross/configure.ac ---- rtorrent-0.9.2/configure.ac 2012-04-20 03:55:30.000000000 -0300 -+++ rtorrent-0.9.2-cross/configure.ac 2012-05-09 11:06:49.436474039 -0300 -@@ -4,7 +4,6 @@ +diff --git a/configure.ac b/configure.ac +index ba5bbf2..0821d4e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -4,7 +4,6 @@ AC_DEFINE(API_VERSION, 9, api version) AM_INIT_AUTOMAKE - AM_CONFIG_HEADER(config.h) + AC_CONFIG_HEADERS(config.h) -AM_PATH_CPPUNIT(1.9.6) AC_PROG_CXX AC_PROG_LIBTOOL -diff -Nura rtorrent-0.9.2/scripts/common.m4 rtorrent-0.9.2-cross/scripts/common.m4 ---- rtorrent-0.9.2/scripts/common.m4 2012-03-13 09:10:49.000000000 -0300 -+++ rtorrent-0.9.2-cross/scripts/common.m4 2012-05-09 11:05:56.620102678 -0300 -@@ -223,7 +223,7 @@ +diff --git a/scripts/checks.m4 b/scripts/checks.m4 +index 598f39b..0e5abe0 100644 +--- a/scripts/checks.m4 ++++ b/scripts/checks.m4 +@@ -96,7 +96,7 @@ AC_DEFUN([TORRENT_CHECK_KQUEUE], [ + AC_DEFUN([TORRENT_CHECK_KQUEUE_SOCKET_ONLY], [ + AC_MSG_CHECKING(whether kqueue supports pipes and ptys) + +- AC_RUN_IFELSE([AC_LANG_SOURCE([ ++ AC_LINK_IFELSE([AC_LANG_SOURCE([ + #include + #include + #include +diff --git a/scripts/common.m4 b/scripts/common.m4 +index 5127624..cc68269 100644 +--- a/scripts/common.m4 ++++ b/scripts/common.m4 +@@ -223,7 +223,7 @@ dnl Need to fix this so that it uses the stuff defined by the system. AC_DEFUN([TORRENT_CHECK_EXECINFO], [ AC_MSG_CHECKING(for execinfo.h) @@ -25,3 +51,15 @@ diff -Nura rtorrent-0.9.2/scripts/common.m4 rtorrent-0.9.2-cross/scripts/common. #include int main() { backtrace((void**)0, 0); backtrace_symbols((char**)0, 0); return 0;} ])], +@@ -238,7 +238,7 @@ AC_DEFUN([TORRENT_CHECK_EXECINFO], [ + AC_DEFUN([TORRENT_CHECK_ALIGNED], [ + AC_MSG_CHECKING(the byte alignment) + +- AC_RUN_IFELSE([AC_LANG_SOURCE([ ++ AC_LINK_IFELSE([AC_LANG_SOURCE([ + #include + int main() { + char buf@<:@8@:>@ = { 0, 0, 0, 0, 1, 0, 0, 0 }; +-- +1.7.1 + diff --git a/package/rtorrent/Config.in b/package/rtorrent/Config.in index 1798331e9b2..190e50fe26c 100644 --- a/package/rtorrent/Config.in +++ b/package/rtorrent/Config.in @@ -4,18 +4,17 @@ config BR2_PACKAGE_RTORRENT depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU # fork() - depends on BR2_ARCH_HAS_ATOMICS # libtorrent + depends on BR2_TOOLCHAIN_HAS_SYNC_1 && BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_LIBCURL - select BR2_PACKAGE_LIBSIGC select BR2_PACKAGE_LIBTORRENT select BR2_PACKAGE_NCURSES select BR2_PACKAGE_OPENSSL help BitTorrent Client using libtorrent - http://libtorrent.rakshasa.no/ + https://github.com/rakshasa/rtorrent comment "rtorrent needs a toolchain w/ C++, threads, wchar" depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_1 && BR2_TOOLCHAIN_HAS_SYNC_4 depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS) diff --git a/package/rtorrent/rtorrent.hash b/package/rtorrent/rtorrent.hash new file mode 100644 index 00000000000..15257acf43c --- /dev/null +++ b/package/rtorrent/rtorrent.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 1e69c24f1f26f8f07d58d673480dc392bfc4317818c1115265b08a7813ff5b0e rtorrent-0.9.6.tar.gz diff --git a/package/rtorrent/rtorrent.mk b/package/rtorrent/rtorrent.mk index 77f0e858f60..edde02ee4b5 100644 --- a/package/rtorrent/rtorrent.mk +++ b/package/rtorrent/rtorrent.mk @@ -4,9 +4,9 @@ # ################################################################################ -RTORRENT_VERSION = 0.9.3 -RTORRENT_SITE = http://libtorrent.rakshasa.no/downloads -RTORRENT_DEPENDENCIES = host-pkgconf libcurl libsigc libtorrent ncurses +RTORRENT_VERSION = 0.9.6 +RTORRENT_SITE = http://rtorrent.net/downloads +RTORRENT_DEPENDENCIES = host-pkgconf libcurl libtorrent ncurses RTORRENT_AUTORECONF = YES RTORRENT_LICENSE = GPLv2 RTORRENT_LICENSE_FILES = COPYING diff --git a/package/rubix/rubix.hash b/package/rubix/rubix.hash new file mode 100644 index 00000000000..90fc9cd11e4 --- /dev/null +++ b/package/rubix/rubix.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 d3c6bf8bfa891e72baac0250a79d26045ddb4412b72d90de7c46091c07516b43 rubix-1.0.5.tar.bz2 diff --git a/package/rubix/rubix.mk b/package/rubix/rubix.mk index dd23edfdd1c..b808bc0b87a 100644 --- a/package/rubix/rubix.mk +++ b/package/rubix/rubix.mk @@ -7,12 +7,15 @@ RUBIX_VERSION = 1.0.5 RUBIX_SOURCE = rubix-$(RUBIX_VERSION).tar.bz2 RUBIX_SITE = http://mirror.egtvedt.no/avr32linux.org/twiki/pub/Main/Rubix -RUBIX_INSTALL_TARGET_OPTS = GAMESDIR=$(TARGET_DIR)/usr/games install RUBIX_LICENSE = Public Domain RUBIX_LICENSE_FILES = LICENCE +RUBIX_DEPENDENCIES = xlib_libX11 -RUBIX_MAKE_OPTS = CC="$(TARGET_CC)" XINC="-I$(STAGING_DIR)/usr/include/X11" XLIB="-L$(STAGING_DIR)/usr/lib -lX11" +RUBIX_MAKE_OPTS = \ + CC="$(TARGET_CC)" \ + XINC="-I$(STAGING_DIR)/usr/include/X11" \ + XLIB="-L$(STAGING_DIR)/usr/lib -lX11" -RUBIX_DEPENDENCIES = xlib_libX11 +RUBIX_INSTALL_TARGET_OPTS = GAMESDIR=$(TARGET_DIR)/usr/games install $(eval $(autotools-package)) diff --git a/package/ruby/ruby.hash b/package/ruby/ruby.hash index 4680a618440..3499263ec93 100644 --- a/package/ruby/ruby.hash +++ b/package/ruby/ruby.hash @@ -1,2 +1,2 @@ -# From https://www.ruby-lang.org/en/news/2015/04/13/ruby-2-2-2-released/ -sha256 f033b5d08ab57083e48c1d81bcd7399967578c370b664da90e12a32891424462 ruby-2.2.2.tar.xz +# From https://www.ruby-lang.org/en/news/2015/12/25/ruby-2-3-0-released/ +sha256 70125af0cfd7048e813a5eecab3676249582bfb65cfd57b868c3595f966e4097 ruby-2.3.0.tar.xz diff --git a/package/ruby/ruby.mk b/package/ruby/ruby.mk index 2fa6b4e7641..19b33dee5f0 100644 --- a/package/ruby/ruby.mk +++ b/package/ruby/ruby.mk @@ -4,9 +4,9 @@ # ################################################################################ -RUBY_VERSION_MAJOR = 2.2 -RUBY_VERSION = $(RUBY_VERSION_MAJOR).2 -RUBY_VERSION_EXT = 2.2.0 +RUBY_VERSION_MAJOR = 2.3 +RUBY_VERSION = $(RUBY_VERSION_MAJOR).0 +RUBY_VERSION_EXT = 2.3.0 RUBY_SITE = http://cache.ruby-lang.org/pub/ruby/$(RUBY_VERSION_MAJOR) RUBY_SOURCE = ruby-$(RUBY_VERSION).tar.xz RUBY_DEPENDENCIES = host-pkgconf host-ruby @@ -30,12 +30,16 @@ endif RUBY_CONF_ENV = CFLAGS="$(RUBY_CFLAGS)" ifeq ($(BR2_bfin),y) -RUBY_CONF_ENV = ac_cv_func_dl_iterate_phdr=no +RUBY_CONF_ENV += ac_cv_func_dl_iterate_phdr=no # Blackfin doesn't have FFI closure support, needed by the fiddle # extension. RUBY_CONF_OPTS += --with-out-ext=fiddle endif +ifeq ($(BR2_TOOLCHAIN_HAS_SSP),) +RUBY_CONF_ENV += stack_protector=no +endif + # Force optionals to build before we do ifeq ($(BR2_PACKAGE_BERKELEYDB),y) RUBY_DEPENDENCIES += berkeleydb diff --git a/package/samba/S91smb b/package/samba/S91smb index 2e03e829ca5..64fa689aa73 100755 --- a/package/samba/S91smb +++ b/package/samba/S91smb @@ -15,12 +15,12 @@ mkdir -p /var/run/samba RETVAL=0 start() { - echo -n "Starting SMB services: " + printf "Starting SMB services: " smbd -D RETVAL=$? echo "done" - echo -n "Starting NMB services: " + printf "Starting NMB services: " nmbd -D RETVAL2=$? echo "done" @@ -31,13 +31,13 @@ start() { } stop() { - echo -n "Shutting down SMB services: " + printf "Shutting down SMB services: " kill -9 `pidof smbd` RETVAL=$? rm -f /var/run/samba/smbd.pid echo "done" - echo -n "Shutting down NMB services: " + printf "Shutting down NMB services: " kill -9 `pidof nmbd` RETVAL2=$? rm -f /var/run/samba/nmbd.pid @@ -53,7 +53,7 @@ restart() { } reload() { - echo -n "Reloading smb.conf file: " + printf "Reloading smb.conf file: " kill -HUP `pidof smbd` RETVAL=$? echo "done" diff --git a/package/samba4/0002-build-improve-stack-protector-check.patch b/package/samba4/0002-build-improve-stack-protector-check.patch new file mode 100644 index 00000000000..51ffc045b16 --- /dev/null +++ b/package/samba4/0002-build-improve-stack-protector-check.patch @@ -0,0 +1,56 @@ +From e4ef92852023f4e2f192d3c47220dc75930a615c Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Fri, 11 Sep 2015 16:41:31 -0300 +Subject: [PATCH] build: improve stack protector check + +Testing a toolchain for proper -fstack-protector must go beyond ensuring +the compiler and linker accept the option. +If the test C program does nothing with the stack then guards aren't +inserted and/or are optimized away giving the false impression that it +works when in fact the libc might not support it. + +Update the check to a program that uses the stack, hence making a link +fail if proper support isn't available, for example in non-ssp enabled +uclibc toolchains like this: + +test.c:(.text.startup+0x64): undefined reference to `__stack_chk_fail' + +Signed-off-by: Gustavo Zacarias +--- + buildtools/wafsamba/samba_autoconf.py | 20 +++++++++++++++++--- + 1 file changed, 17 insertions(+), 3 deletions(-) + +diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py +index c5f132c..ef34b00 100644 +--- a/buildtools/wafsamba/samba_autoconf.py ++++ b/buildtools/wafsamba/samba_autoconf.py +@@ -657,9 +657,23 @@ def SAMBA_CONFIG_H(conf, path=None): + if not IN_LAUNCH_DIR(conf): + return + +- if conf.CHECK_CFLAGS(['-fstack-protector']) and conf.CHECK_LDFLAGS(['-fstack-protector']): +- conf.ADD_CFLAGS('-fstack-protector') +- conf.ADD_LDFLAGS('-fstack-protector') ++ # we need to build real code that can't be optimized away to test ++ if conf.check(fragment=''' ++ #include ++ ++ int main(void) ++ { ++ char t[100000]; ++ while (fgets(t, sizeof(t), stdin)); ++ return 0; ++ } ++ ''', ++ execute=0, ++ ccflags='-fstack-protector', ++ ldflags='-fstack-protector', ++ msg='Checking if toolchain accepts -fstack-protector'): ++ conf.ADD_CFLAGS('-fstack-protector') ++ conf.ADD_LDFLAGS('-fstack-protector') + + if Options.options.debug: + conf.ADD_CFLAGS('-g', testflags=True) +-- +2.4.6 + diff --git a/package/samba4/Config.in b/package/samba4/Config.in index 1411b08b3a9..2503785227b 100644 --- a/package/samba4/Config.in +++ b/package/samba4/Config.in @@ -1,6 +1,6 @@ -comment "samba4 needs an (e)glibc or uClibc-ng toolchain w/ RPC, wchar, dynamic library, threads" - depends on (!BR2_TOOLCHAIN_USES_GLIBC && !BR2_UCLIBC_VERSION_NG) \ - || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_NATIVE_RPC \ +comment "samba4 needs a toolchain w/ RPC, wchar, dynamic library, threads" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_NATIVE_RPC \ || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU @@ -12,9 +12,8 @@ config BR2_PACKAGE_SAMBA4 depends on BR2_TOOLCHAIN_HAS_NATIVE_RPC depends on BR2_TOOLCHAIN_HAS_THREADS # python -> libffi depends on !BR2_STATIC_LIBS # python - # needs $ORIGIN support - depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_UCLIBC_VERSION_NG depends on !BR2_nios2 # binary too large, relocations don't fit + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_E2FSPROGS select BR2_PACKAGE_POPT select BR2_PACKAGE_PYTHON diff --git a/package/samba4/S91smb b/package/samba4/S91smb index ce14e19df94..c8c5fc86a4f 100644 --- a/package/samba4/S91smb +++ b/package/samba4/S91smb @@ -5,21 +5,21 @@ mkdir -p /var/log/samba start() { - echo -n "Starting SMB services: " + printf "Starting SMB services: " smbd -D [ $? = 0 ] && echo "OK" || echo "FAIL" - echo -n "Starting NMB services: " + printf "Starting NMB services: " nmbd -D [ $? = 0 ] && echo "OK" || echo "FAIL" } stop() { - echo -n "Shutting down SMB services: " + printf "Shutting down SMB services: " kill -9 `pidof smbd` [ $? = 0 ] && echo "OK" || echo "FAIL" - echo -n "Shutting down NMB services: " + printf "Shutting down NMB services: " kill -9 `pidof nmbd` [ $? = 0 ] && echo "OK" || echo "FAIL" } @@ -30,7 +30,7 @@ restart() { } reload() { - echo -n "Reloading smb.conf file: " + printf "Reloading smb.conf file: " kill -HUP `pidof smbd` [ $? = 0 ] && echo "OK" || echo "FAIL" } diff --git a/package/samba4/samba4.hash b/package/samba4/samba4.hash index e2b3969f979..f42e37a4ceb 100644 --- a/package/samba4/samba4.hash +++ b/package/samba4/samba4.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 b6dfa5ae4818d891ee2fcff04a5912f4a4fb2394b4f5e66a2a15b428da094c7c samba-4.2.3.tar.gz +sha256 5d0eb52e842832af922f7d57716eacff23192906ec3bdf6727e18ca24f1419d9 samba-4.3.4.tar.gz diff --git a/package/samba4/samba4.mk b/package/samba4/samba4.mk index c88cc9fbffa..118a4aede5b 100644 --- a/package/samba4/samba4.mk +++ b/package/samba4/samba4.mk @@ -4,13 +4,14 @@ # ################################################################################ -SAMBA4_VERSION = 4.2.3 -SAMBA4_SITE = http://ftp.samba.org/pub/samba +SAMBA4_VERSION = 4.3.4 +SAMBA4_SITE = http://ftp.samba.org/pub/samba/stable SAMBA4_SOURCE = samba-$(SAMBA4_VERSION).tar.gz SAMBA4_INSTALL_STAGING = YES SAMBA4_LICENSE = GPLv3+ SAMBA4_LICENSE_FILES = COPYING SAMBA4_DEPENDENCIES = host-e2fsprogs host-heimdal e2fsprogs popt python zlib \ + $(if $(BR2_PACKAGE_LIBBSD),libbsd) \ $(if $(BR2_PACKAGE_LIBCAP),libcap) \ $(if $(BR2_PACKAGE_READLINE),readline) diff --git a/package/sane-backends/0002-remove-unsafe-headers-path.patch b/package/sane-backends/0002-remove-unsafe-headers-path.patch deleted file mode 100644 index 6217b0adb6d..00000000000 --- a/package/sane-backends/0002-remove-unsafe-headers-path.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 3c03e4b81c9de73e57a56029f7f8cda8bec24e91 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Sat, 10 Jan 2015 15:48:21 +0100 -Subject: [PATCH] configure.in: remove unsafe headers path - -Forcing /usr/local/include headers path in CFLAGS is unsafe for -cross-compilation. - -Signed-off-by: Romain Naour -[Gustavo: update to just patch configure and avoid an autoreconf] ---- - -diff -Nura sane-backends-1.0.24.orig/configure sane-backends-1.0.24/configure ---- sane-backends-1.0.24.orig/configure 2015-05-01 09:51:19.479785064 -0300 -+++ sane-backends-1.0.24/configure 2015-05-01 09:51:48.411767378 -0300 -@@ -5192,8 +5192,6 @@ - fi - - --INCLUDES="${INCLUDES} -I/usr/local/include" -- - - if test "${ac_cv_c_compiler_gnu}" = "yes"; then - NORMAL_CFLAGS="\ diff --git a/package/sane-backends/0003-remove-cups-and-systemd-support.patch b/package/sane-backends/0003-remove-cups-and-systemd-support.patch deleted file mode 100644 index e9a637ee5d5..00000000000 --- a/package/sane-backends/0003-remove-cups-and-systemd-support.patch +++ /dev/null @@ -1,56 +0,0 @@ -These tests use absolute directories and host leakage is granted -when cups and systemd are around. In fact there's no way these could work -in any predictable manner. - -CUPS support was in fact disabled upstream since it's not required -in commit efb04936b8ad3bf313c289a522ae5832e22c1b7e - -And for systemd we never handled it properly anyway. - -Signed-off-by: Gustavo Zacarias - -diff -Nura sane-backends-1.0.24.orig/configure sane-backends-1.0.24/configure ---- sane-backends-1.0.24.orig/configure 2015-05-01 09:51:19.479785064 -0300 -+++ sane-backends-1.0.24/configure 2015-05-01 10:08:49.834447226 -0300 -@@ -9649,33 +9649,6 @@ - - fi - --$as_echo "checking for cups" --if test -e /usr/include/cups/cups.h ; then -- --$as_echo "#define HAVE_CUPS 1" >>confdefs.h -- -- with_cups="yes" -- LIBS="-lcups $LIBS" --else -- $as_echo "cups.h not found, you may want to install a cups development package" -- $as_echo "in order to autodetect network scanners in kodakaio." -- with_cups="no" --fi -- --$as_echo_n "Checking for systemd..." --if test -e /usr/include/systemd/sd-daemon.h ; then -- --$as_echo "#define HAVE_SYSTEMD 1" >>confdefs.h -- -- with_systemd="yes" -- SYSTEMD_LIBS=" -lsystemd-daemon" -- -- $as_echo "yes" --else -- with_systemd="no" -- $as_echo "no" --fi -- - - # Check whether --enable-libusb_1_0 was given. - if test "${enable_libusb_1_0+set}" = set; then : -@@ -21180,7 +21153,6 @@ - echo "IPv6 support: `eval eval echo ${ipv6}`" - echo "Avahi support: `eval eval echo ${enable_avahi}`" - echo "SNMP support: `eval eval echo ${with_snmp}`" --echo "CUPS support: `eval eval echo ${with_cups}`" - echo "-> The following backends will be built:" - for backend in ${BACKENDS} ; do - echo $ECHO_N "${backend} " diff --git a/package/sane-backends/sane-backends.hash b/package/sane-backends/sane-backends.hash index 44aea50db3d..a7693e25275 100644 --- a/package/sane-backends/sane-backends.hash +++ b/package/sane-backends/sane-backends.hash @@ -1,2 +1,2 @@ -# From https://alioth.debian.org/frs/download.php/file/3956/sane-backends-1.0.24.tar.gz.md5 -md5 1ca68e536cd7c1852322822f5f6ac3a4 sane-backends-1.0.24.tar.gz +# From http://www.sane-project.org/sane-md5sums.txt +md5 f9ed5405b3c12f07c6ca51ee60225fe7 sane-backends-1.0.25.tar.gz diff --git a/package/sane-backends/sane-backends.mk b/package/sane-backends/sane-backends.mk index 3cb81a92ee8..37e5136c111 100644 --- a/package/sane-backends/sane-backends.mk +++ b/package/sane-backends/sane-backends.mk @@ -4,8 +4,8 @@ # ################################################################################ -SANE_BACKENDS_VERSION = 1.0.24 -SANE_BACKENDS_SITE = https://alioth.debian.org/frs/download.php/file/3958 +SANE_BACKENDS_VERSION = 1.0.25 +SANE_BACKENDS_SITE = https://alioth.debian.org/frs/download.php/file/4146 SANE_BACKENDS_CONFIG_SCRIPTS = sane-config SANE_BACKENDS_LICENSE = GPLv2+ SANE_BACKENDS_LICENSE_FILES = COPYING @@ -14,6 +14,13 @@ SANE_BACKENDS_INSTALL_STAGING = YES SANE_BACKENDS_CONF_OPTS = \ $(if $(BR2_TOOLCHAIN_HAS_THREADS),--enable-pthread,--disable-pthread) +ifeq ($(BR2_INIT_SYSTEMD),y) +SANE_BACKENDS_CONF_OPTS += --with-systemd +SANE_BACKENDS_DEPENDENCIES += systemd +else +SANE_BACKENDS_CONF_OPTS += --without-systemd +endif + ifeq ($(BR2_PACKAGE_LIBUSB),y) SANE_BACKENDS_DEPENDENCIES += libusb SANE_BACKENDS_CONF_OPTS += --enable-libusb_1_0 @@ -39,6 +46,7 @@ SANE_BACKENDS_CONF_OPTS += --enable-avahi endif ifeq ($(BR2_PACKAGE_NETSNMP),y) +SANE_BACKENDS_CONF_ENV += ac_cv_path_SNMP_CONFIG_PATH=$(STAGING_DIR)/usr/bin/net-snmp-config SANE_BACKENDS_DEPENDENCIES += netsnmp else SANE_BACKENDS_CONF_OPTS += --without-snmp @@ -50,4 +58,21 @@ endef SANE_BACKENDS_POST_CONFIGURE_HOOKS += SANE_BACKENDS_DISABLE_DOCS +define SANE_BACKENDS_USERS + saned -1 saned -1 * /etc/sane.d - - Saned User +endef + +define SANE_BACKENDS_INSTALL_INIT_SYSTEMD + $(INSTALL) -m 0644 -D package/sane-backends/saned.socket \ + $(TARGET_DIR)/usr/lib/systemd/system/saned.socket + mkdir -p $(TARGET_DIR)/etc/systemd/system/socket.target.wants + ln -sf ../../../../usr/lib/systemd/system/saned.socket \ + $(TARGET_DIR)/etc/systemd/system/socket.target.wants/saned.socket + $(INSTALL) -m 0644 -D package/sane-backends/saned@.service \ + $(TARGET_DIR)/usr/lib/systemd/system/saned@.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -sf ../../../../usr/lib/systemd/system/saned@.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/saned@.service +endef + $(eval $(autotools-package)) diff --git a/package/sane-backends/saned.socket b/package/sane-backends/saned.socket new file mode 100644 index 00000000000..1aa19e703c9 --- /dev/null +++ b/package/sane-backends/saned.socket @@ -0,0 +1,10 @@ +[Unit] +Description=saned incoming socket + +[Socket] +ListenStream=6566 +Accept=yes +MaxConnections=1 + +[Install] +WantedBy=sockets.target diff --git a/package/sane-backends/saned@.service b/package/sane-backends/saned@.service new file mode 100644 index 00000000000..1905dbf5e28 --- /dev/null +++ b/package/sane-backends/saned@.service @@ -0,0 +1,18 @@ +[Unit] +Description=Scanner Service +Requires=saned.socket + +[Service] +ExecStart=/usr/sbin/saned +User=saned +Group=saned +StandardInput=null +StandardOutput=syslog +StandardError=syslog +Environment=SANE_CONFIG_DIR=/etc/sane.d +# If you need to debug your configuration uncomment the next line and +# change it as appropriate to set the desired debug options +# Environment=SANE_DEBUG_DLL=255 SANE_DEBUG_BJNP=5 + +[Install] +Also=saned.socket diff --git a/package/sawman/0001-link-using-gcc-instead-of-ld.patch b/package/sawman/0001-link-using-gcc-instead-of-ld.patch deleted file mode 100644 index 02e802995ce..00000000000 --- a/package/sawman/0001-link-using-gcc-instead-of-ld.patch +++ /dev/null @@ -1,19 +0,0 @@ -sawman: Link using gcc instead of ld - -Using ld may cause a link failure due to using the default emulation -linker which is configured when building the linker in binutils. Using -gcc instead will pass the appropriate -m value because the compiler -knows the ABI you are using. - -Signed-off-by: Vicente Olivert Riera ---- SaWMan-1.6.3/rules/libobject.make.orig 2013-12-17 15:54:22.137856874 +0000 -+++ SaWMan-1.6.3/rules/libobject.make 2013-12-17 15:54:44.233201909 +0000 -@@ -3,7 +3,7 @@ - if test -d $<.tmp; then rmdir $<.tmp; fi - mkdir $<.tmp - (cd $<.tmp && $(AR) x ../../$<) -- $(LD) -o $@ -r $<.tmp/*.o -+ $(CC) -nostdlib -o $@ -r $<.tmp/*.o - rm -f $<.tmp/*.o && rmdir $<.tmp - - .PHONY: $(LTLIBRARIES:%.la=.libs/%.a) diff --git a/package/sawman/Config.in b/package/sawman/Config.in deleted file mode 100644 index 2f847dbf7f0..00000000000 --- a/package/sawman/Config.in +++ /dev/null @@ -1,11 +0,0 @@ -config BR2_PACKAGE_SAWMAN - bool "SawMan (Window Manager)" - depends on BR2_PACKAGE_DIRECTFB - help - SaWMan is a new window manager module for use with DirectFB. - Its main difference to the default module is that it allows - one process to be an application and window manager, - implementing all kinds of diversity, while SaWMan is only the - working horse. - - See http://www.directfb.org/downloads/Extras/README.SaWMan diff --git a/package/sawman/sawman.mk b/package/sawman/sawman.mk deleted file mode 100644 index 559235fe284..00000000000 --- a/package/sawman/sawman.mk +++ /dev/null @@ -1,16 +0,0 @@ -################################################################################ -# -# sawman -# -################################################################################ - -SAWMAN_VERSION = 1.6.3 -SAWMAN_SOURCE = SaWMan-$(SAWMAN_VERSION).tar.gz -SAWMAN_SITE = http://www.directfb.org/downloads/Extras -SAWMAN_INSTALL_STAGING = YES -SAWMAN_AUTORECONF = YES -SAWMAN_DEPENDENCIES = directfb -SAWMAN_LICENSE = LGPLv2.1+ -SAWMAN_LICENSE_FILES = COPYING - -$(eval $(autotools-package)) diff --git a/package/sbc/Config.in b/package/sbc/Config.in new file mode 100644 index 00000000000..f1dbc0ec2c5 --- /dev/null +++ b/package/sbc/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_SBC + bool "sbc" + select BR2_PACKAGE_LIBSNDFILE + help + An audio codec to connect bluetooth high quality audio + devices like headphones or loudspeakers. + + http://www.bluez.org/ diff --git a/package/sbc/sbc.hash b/package/sbc/sbc.hash new file mode 100644 index 00000000000..be3c8f76f4f --- /dev/null +++ b/package/sbc/sbc.hash @@ -0,0 +1,2 @@ +# From https://www.kernel.org/pub/linux/bluetooth/sha256sums.asc +sha256 e61022cf576f14190241e7071753fdacdce5d1dea89ffd704110fc50be689309 sbc-1.3.tar.xz diff --git a/package/sbc/sbc.mk b/package/sbc/sbc.mk new file mode 100644 index 00000000000..60ebc748199 --- /dev/null +++ b/package/sbc/sbc.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# sbc +# +################################################################################ + +SBC_VERSION = 1.3 +SBC_SOURCE = sbc-$(SBC_VERSION).tar.xz +SBC_SITE = $(BR2_KERNEL_MIRROR)/linux/bluetooth +SBC_INSTALL_STAGING = YES +SBC_DEPENDENCIES = libsndfile host-pkgconf +SBC_LICENSE = GPLv2+ (programs), LGPLv2.1+ (library) +SBC_LICENSE_FILES = COPYING COPYING.LIB + +$(eval $(autotools-package)) diff --git a/package/schifra/Config.in b/package/schifra/Config.in deleted file mode 100644 index a3f699a80fb..00000000000 --- a/package/schifra/Config.in +++ /dev/null @@ -1,26 +0,0 @@ -config BR2_PACKAGE_SCHIFRA - bool "schifra" - depends on BR2_INSTALL_LIBSTDCPP - # Upstream keep changing the tarball without doing new - # releases. This is not acceptable for Buildroot, as - # reproducible builds are very important. - depends on BR2_BROKEN - help - Schifra is a very robust, highly optimized and extremely configurable - Reed-Solomon error correcting code library for both software and IP - core based applications with implementations in C++ and VHDL. - - http://www.schifra.com/ - -if BR2_PACKAGE_SCHIFRA - -config BR2_PACKAGE_SCHIFRA_EXAMPLES - bool "schifra examples" - help - Build and install the schifra example applications. - -endif - -comment "schifra needs a toolchain w/ C++" - depends on BR2_BROKEN - depends on !BR2_INSTALL_LIBSTDCPP diff --git a/package/schifra/schifra.hash b/package/schifra/schifra.hash deleted file mode 100644 index 7f8e6c0e508..00000000000 --- a/package/schifra/schifra.hash +++ /dev/null @@ -1,3 +0,0 @@ -# Calculated locally after download -# Upstream doesn't store a version and tarball may change unexpectedly! -sha256 3e60478cf024d87735d1cc1460aa2176c449e6c7f76914eefda25d3b20d22522 schifra.tgz diff --git a/package/schifra/schifra.mk b/package/schifra/schifra.mk deleted file mode 100644 index 661ef04fa03..00000000000 --- a/package/schifra/schifra.mk +++ /dev/null @@ -1,44 +0,0 @@ -################################################################################ -# -# schifra -# -################################################################################ - -SCHIFRA_VERSION = 0.0.1 -SCHIFRA_SITE = http://www.schifra.com/downloads -SCHIFRA_SOURCE = schifra.tgz -SCHIFRA_INSTALL_STAGING = YES -SCHIFRA_LICENSE = schifra license -SCHIFRA_LICENSE_FILES = schifra_license.txt - -SCHIFRA_MAKE_OPTS = \ - COMPILER="$(TARGET_CXX)" \ - OPTIONS="$(TARGET_CFLAGS) $(TARGET_LDFLAGS)" - -# The examples are the only buildable artefacts. -ifeq ($(BR2_PACKAGE_SCHIFRA_EXAMPLES),y) -define SCHIFRA_BUILD_CMDS - $(MAKE) -C $(@D) $(SCHIFRA_MAKE_OPTS) all -endef - -define SCHIFRA_INSTALL_EXAMPLES - cd $(@D) && for i in `find -type f -name 'schifra_*' -executable` ; \ - do \ - $(INSTALL) -m 0755 -D $$i $(TARGET_DIR)/usr/bin/$$i; \ - done -endef - -SCHIFRA_POST_INSTALL_TARGET_HOOKS += SCHIFRA_INSTALL_EXAMPLES -endif - -define SCHIFRA_INSTALL_TARGET_CMDS - cd $(@D) && for i in schifra_*.hpp; do \ - $(INSTALL) -m 0644 -D $$i $(TARGET_DIR)/usr/include/$$i; done -endef - -define SCHIFRA_INSTALL_STAGING_CMDS - cd $(@D) && for i in schifra_*.hpp; do \ - $(INSTALL) -m 0644 -D $$i $(STAGING_DIR)/usr/include/$$i; done -endef - -$(eval $(generic-package)) diff --git a/package/sconeserver/0001-fix-ssl-libs-ordering.patch b/package/sconeserver/0001-fix-ssl-libs-ordering.patch deleted file mode 100644 index f1f25b905a0..00000000000 --- a/package/sconeserver/0001-fix-ssl-libs-ordering.patch +++ /dev/null @@ -1,36 +0,0 @@ -configure: re-order SSL libs when linking - -When doing static builds, the ordering of libs is important, as the -linker does not back-pedal to previous libraries specified on the -command line to find missing symbols, and only searches for those -missing symbols in the following libs. - -Thus, as -lssl needs symbols from -lcrypto, it needs to come before --lcrypto. - -And globally, we do *not* append new libraries, we prepend them. - -Signed-off-by: "Yann E. MORIN" - -diff -durN a/configure.in b/configure.in ---- a/configure.in 2014-10-16 11:12:08.000000000 +0200 -+++ b/configure.in 2015-05-30 15:44:25.540329788 +0200 -@@ -133,12 +133,14 @@ - [AC_MSG_ERROR([header file is required for OpenSSL, use --with-openssl-path=PATH])] - ) - AC_CHECK_LIB([crypto],[CRYPTO_new_ex_data], -- [SSL_LIBADD="$SSL_LIBADD -lcrypto"], -- [AC_MSG_ERROR([library 'crypto' is required for OpenSSL])] -+ [SSL_LIBADD="-lcrypto $SSL_LIBADD"], -+ [AC_MSG_ERROR([library 'crypto' is required for OpenSSL])], -+ [$SSL_LIBADD] - ) - AC_CHECK_LIB([ssl],[SSL_library_init], -- [SSL_LIBADD="$SSL_LIBADD -lssl"], -- [AC_MSG_ERROR([library 'ssl' is required for OpenSSL])] -+ [SSL_LIBADD="-lssl $SSL_LIBADD"], -+ [AC_MSG_ERROR([library 'ssl' is required for OpenSSL])], -+ [$SSL_LIBADD] - ) - AC_SUBST(SSL_LIBADD) - fi diff --git a/package/sconeserver/Config.in b/package/sconeserver/Config.in index f16e683bf56..4083aa7dce3 100644 --- a/package/sconeserver/Config.in +++ b/package/sconeserver/Config.in @@ -63,7 +63,6 @@ config BR2_PACKAGE_SCONESERVER_LOCATION bool "location" depends on BR2_USE_MMU # gpsd depends on BR2_TOOLCHAIN_HAS_THREADS # gpsd - depends on !BR2_microblaze # gpsd depends on !BR2_STATIC_LIBS # gpsd select BR2_PACKAGE_GPSD help @@ -72,7 +71,6 @@ config BR2_PACKAGE_SCONESERVER_LOCATION comment "location support needs a toolchain w/ theads, dynamic library" depends on BR2_USE_MMU depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBRARY - depends on !BR2_microblaze config BR2_PACKAGE_SCONESERVER_LETTUCE bool "lettuce" diff --git a/package/sconeserver/sconeserver.hash b/package/sconeserver/sconeserver.hash new file mode 100644 index 00000000000..2e1fe84237c --- /dev/null +++ b/package/sconeserver/sconeserver.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 442c29ae93f615b610983187023ba6c1a9ca69526cb07f69576efba1d29d9daf sconeserver-c4b8e14f6e9e06cbff5b4195f69d6fce9391a1cd.tar.gz diff --git a/package/sconeserver/sconeserver.mk b/package/sconeserver/sconeserver.mk index beca926f7d8..592de22d691 100644 --- a/package/sconeserver/sconeserver.mk +++ b/package/sconeserver/sconeserver.mk @@ -4,16 +4,17 @@ # ################################################################################ -# Release 0.6.0 doesn't build cleanly, so use a recent -# Git commit. -SCONESERVER_VERSION = 3b886c3dda6eda39bcb27472d29ed7fd3185ba1d +SCONESERVER_VERSION = c4b8e14f6e9e06cbff5b4195f69d6fce9391a1cd SCONESERVER_SITE = $(call github,sconemad,sconeserver,$(SCONESERVER_VERSION)) SCONESERVER_LICENSE = GPLv2+ SCONESERVER_LICENSE_FILES = COPYING - +# fetching from Git, we need to generate the configure script SCONESERVER_AUTORECONF = YES SCONESERVER_DEPENDENCIES += pcre -SCONESERVER_CONF_OPTS += --with-ip --with-local --with-ip6 +# disable markdown module because its git submodule cmark +# https://github.com/sconemad/sconeserver/tree/master/markdown +# has no cross-compile support provided by the sconeserver build system +SCONESERVER_CONF_OPTS += --with-ip --with-local --with-ip6 --without-markdown # Sconeserver configure script fails to find the libxml2 headers. ifeq ($(BR2_PACKAGE_LIBXML2),y) @@ -50,7 +51,7 @@ SCONESERVER_CONF_OPTS += \ --with-sconesite-image \ --with-Magick++-config="$(STAGING_DIR)/usr/bin/Magick++-config" else -SCONESERVER_CONF_OPTS += --without-sconesite-image +SCONESERVER_CONF_OPTS += --without-sconesite-image --with-Magick++-config=no endif ifeq ($(BR2_PACKAGE_SCONESERVER_MYSQL),y) @@ -78,7 +79,7 @@ SCONESERVER_CONF_OPTS += --without-rss endif ifeq ($(BR2_PACKAGE_SCONESERVER_LOCATION),y) -SCONESERVER_DEPENDENCIES += gpsd +SCONESERVER_DEPENDENCIES += host-pkgconf gpsd SCONESERVER_CONF_OPTS += --with-location else SCONESERVER_CONF_OPTS += --without-location diff --git a/package/scrypt/Config.in b/package/scrypt/Config.in new file mode 100644 index 00000000000..e6d1ac1a651 --- /dev/null +++ b/package/scrypt/Config.in @@ -0,0 +1,9 @@ +config BR2_PACKAGE_SCRYPT + bool "scrypt" + select BR2_PACKAGE_OPENSSL + help + A password-based key derivation function specifically + designed to make it costly to perform large-scale custom + hardware attacks by requiring large amounts of memory. + + http://www.tarsnap.com/scrypt.html diff --git a/package/scrypt/scrypt.hash b/package/scrypt/scrypt.hash new file mode 100644 index 00000000000..66944567635 --- /dev/null +++ b/package/scrypt/scrypt.hash @@ -0,0 +1,2 @@ +# From http://www.tarsnap.com/scrypt/scrypt-sigs-1.2.0.asc +sha256 1754bc89405277c8ac14220377a4c240ddc34b1ce70882aa92cd01bfdc8569d4 scrypt-1.2.0.tgz diff --git a/package/scrypt/scrypt.mk b/package/scrypt/scrypt.mk new file mode 100644 index 00000000000..7ffa7ccf3ff --- /dev/null +++ b/package/scrypt/scrypt.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# scrypt +# +################################################################################ + +SCRYPT_VERSION = 1.2.0 +SCRYPT_SOURCE = scrypt-$(SCRYPT_VERSION).tgz +SCRYPT_SITE = http://www.tarsnap.com/scrypt +SCRYPT_LICENSE = BSD-2c +SCRYPT_LICENSE_FILES = main.c +SCRYPT_DEPENDENCIES = openssl +SCRYPT_INSTALL_STAGING = YES + +$(eval $(autotools-package)) diff --git a/package/sdl/sdl.mk b/package/sdl/sdl.mk index 05d9a547015..cc1ad067316 100644 --- a/package/sdl/sdl.mk +++ b/package/sdl/sdl.mk @@ -34,7 +34,7 @@ SDL_DEPENDENCIES += directfb SDL_CONF_OPTS += --enable-video-directfb=yes SDL_CONF_ENV = ac_cv_path_DIRECTFBCONFIG=$(STAGING_DIR)/usr/bin/directfb-config else -SDL_CONF_OPTS = --enable-video-directfb=no +SDL_CONF_OPTS += --enable-video-directfb=no endif ifeq ($(BR2_PACKAGE_SDL_QTOPIA),y) @@ -58,6 +58,15 @@ ifneq ($(BR2_USE_MMU),y) SDL_CONF_OPTS += --enable-dga=no endif +# overwrite autodection (prevents confusion with host libpth version) +ifeq ($(BR2_PACKAGE_LIBPTHSEM_COMPAT),y) +SDL_CONF_OPTS += --enable-pth +SDL_CONF_ENV += ac_cv_path_PTH_CONFIG=$(STAGING_DIR)/usr/bin/pth-config +SDL_DEPENDENCIES += libpthsem +else +SDL_CONF_OPTS += --disable-pth +endif + ifeq ($(BR2_PACKAGE_TSLIB),y) SDL_DEPENDENCIES += tslib endif diff --git a/package/sdl2/Config.in b/package/sdl2/Config.in new file mode 100644 index 00000000000..b73611dbb04 --- /dev/null +++ b/package/sdl2/Config.in @@ -0,0 +1,33 @@ +config BR2_PACKAGE_SDL2 + bool "sdl2" + depends on !BR2_STATIC_LIBS + help + Simple DirectMedia Layer 2 - SDL2 is a library that allows + programs portable low level access to a video framebuffer, + audio output, mouse, and keyboard. It is not compatible with + SDL1. + + http://www.libsdl.org/ + +if BR2_PACKAGE_SDL2 + +config BR2_PACKAGE_SDL2_DIRECTFB + bool "DirectFB video driver" + depends on BR2_PACKAGE_DIRECTFB + +comment "DirectFB video driver needs directfb" + depends on !BR2_PACKAGE_DIRECTFB + +config BR2_PACKAGE_SDL2_X11 + bool "X11 video driver" + depends on BR2_PACKAGE_XORG7 + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XLIB_LIBXEXT + +comment "X11 video driver needs X.org" + depends on !BR2_PACKAGE_XORG7 + +endif + +comment "sdl2 needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/sdl2/sdl2.hash b/package/sdl2/sdl2.hash new file mode 100644 index 00000000000..6e8533f6c10 --- /dev/null +++ b/package/sdl2/sdl2.hash @@ -0,0 +1,2 @@ +# Locally calculated after checking http://www.libsdl.org/release/SDL2-2.0.3.tar.gz.sig +sha256 a5a69a6abf80bcce713fa873607735fe712f44276a7f048d60a61bb2f6b3c90c SDL2-2.0.3.tar.gz diff --git a/package/sdl2/sdl2.mk b/package/sdl2/sdl2.mk new file mode 100644 index 00000000000..814cc196e45 --- /dev/null +++ b/package/sdl2/sdl2.mk @@ -0,0 +1,116 @@ +################################################################################ +# +# sdl2 +# +################################################################################ + +SDL2_VERSION = 2.0.3 +SDL2_SOURCE = SDL2-$(SDL2_VERSION).tar.gz +SDL2_SITE = http://www.libsdl.org/release +SDL2_LICENSE = zlib +SDL2_LICENSE_FILES = COPYING.txt +SDL2_INSTALL_STAGING = YES +SDL2_CONFIG_SCRIPTS = sdl2-config + +SDL2_CONF_OPTS += \ + --disable-rpath \ + --disable-arts \ + --disable-esd \ + --disable-dbus \ + --disable-pulseaudio \ + --disable-video-opengl \ + --disable-video-opengles \ + --disable-video-wayland + +# We must enable static build to get compilation successful. +SDL2_CONF_OPTS += --enable-static + +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +SDL2_DEPENDENCIES += udev +SDL2_CONF_OPTS += --enable-libudev +else +SDL2_CONF_OPTS += --disable-libudev +endif + +ifeq ($(BR2_PACKAGE_SDL2_DIRECTFB),y) +SDL2_DEPENDENCIES += directfb +SDL2_CONF_OPTS += --enable-video-directfb +SDL2_CONF_ENV = ac_cv_path_DIRECTFBCONFIG=$(STAGING_DIR)/usr/bin/directfb-config +else +SDL2_CONF_OPTS += --disable-video-directfb +endif + +# x-includes and x-libraries must be set for cross-compiling +# By default x_includes and x_libraries contains unsafe paths. +# (/usr/X11R6/include and /usr/X11R6/lib) +ifeq ($(BR2_PACKAGE_SDL2_X11),y) +SDL2_DEPENDENCIES += xlib_libX11 xlib_libXext + +# X11/extensions/shape.h is provided by libXext. +SDL2_CONF_OPTS += --enable-video-x11 \ + --with-x=$(STAGING_DIR) \ + --x-includes=$(STAGING_DIR)/usr/include \ + --x-libraries=$(STAGING_DIR)/usr/lib \ + --enable-video-x11-xshape + +ifeq ($(BR2_PACKAGE_XLIB_LIBXCURSOR),y) +SDL2_DEPENDENCIES += xlib_libXcursor +SDL2_CONF_OPTS += --enable-video-x11-xcursor +else +SDL2_CONF_OPTS += --disable-video-x11-xcursor +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXINERAMA),y) +SDL2_DEPENDENCIES += xlib_libXinerama +SDL2_CONF_OPTS += --enable-video-x11-xinerama +else +SDL2_CONF_OPTS += --disable-video-x11-xinerama +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXI),y) +SDL2_DEPENDENCIES += xlib_libXi +SDL2_CONF_OPTS += --enable-video-x11-xinput +else +SDL2_CONF_OPTS += --disable-video-x11-xinput +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXRANDR),y) +SDL2_DEPENDENCIES += xlib_libXrandr +SDL2_CONF_OPTS += --enable-video-x11-xrandr +else +SDL2_CONF_OPTS += --disable-video-x11-xrandr +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXSCRNSAVER),y) +SDL2_DEPENDENCIES += xlib_libXScrnSaver +SDL2_CONF_OPTS += --enable-video-x11-scrnsaver +else +SDL2_CONF_OPTS += --disable-video-x11-scrnsaver +endif + +ifeq ($(BR2_PACKAGE_XLIB_LIBXXF86VM),y) +SDL2_DEPENDENCIES += xlib_libXxf86vm +SDL2_CONF_OPTS += --enable-video-x11-vm +else +SDL2_CONF_OPTS += --disable-video-x11-vm +endif + +else +SDL2_CONF_OPTS += --disable-video-x11 --without-x +endif + +ifeq ($(BR2_PACKAGE_TSLIB),y) +SDL2_DEPENDENCIES += tslib +SDL2_CONF_OPTS += --enable-input-tslib +else +SDL2_CONF_OPTS += --disable-input-tslib +endif + +ifeq ($(BR2_PACKAGE_ALSA_LIB),y) +SDL2_DEPENDENCIES += alsa-lib +SDL2_CONF_OPTS += --enable-alsa +else +SDL2_CONF_OPTS += --disable-alsa +endif + +$(eval $(autotools-package)) diff --git a/package/sdl_sound/sdl_sound.mk b/package/sdl_sound/sdl_sound.mk index 416f3812159..4fa7d9be0a7 100644 --- a/package/sdl_sound/sdl_sound.mk +++ b/package/sdl_sound/sdl_sound.mk @@ -17,16 +17,32 @@ SDL_SOUND_DEPENDENCIES += libiconv endif # optional dependencies -ifeq ($(BR2_PACKAGE_FLAC),y) -SDL_SOUND_DEPENDENCIES += flac # is only used if ogg is also enabled +ifeq ($(BR2_PACKAGE_FLAC)$(BR2_PACKAGE_LIBOGG),yy) +SDL_SOUND_CONF_OPTS += --enable-flac +SDL_SOUND_DEPENDENCIES += flac libogg +else +SDL_SOUND_CONF_OPTS += --disable-flac +endif + +ifeq ($(BR2_PACKAGE_LIBMODPLUG),y) +SDL_SOUND_CONF_OPTS += --enable-modplug +SDL_SOUND_DEPENDENCIES += libmodplug +else +SDL_SOUND_CONF_OPTS += --disable-modplug endif ifeq ($(BR2_PACKAGE_LIBVORBIS),y) +SDL_SOUND_CONF_OPTS += --enable-ogg SDL_SOUND_DEPENDENCIES += libvorbis +else +SDL_SOUND_CONF_OPTS += --disable-ogg endif ifeq ($(BR2_PACKAGE_SPEEX),y) +SDL_SOUND_CONF_OPTS += --enable-speex SDL_SOUND_DEPENDENCIES += speex +else +SDL_SOUND_CONF_OPTS += --disable-speex endif SDL_SOUND_CONF_OPTS = \ diff --git a/package/sed/sed.mk b/package/sed/sed.mk index b8193004043..71c62d0fd27 100644 --- a/package/sed/sed.mk +++ b/package/sed/sed.mk @@ -10,7 +10,7 @@ SED_LICENSE = GPLv3 SED_LICENSE_FILES = COPYING SED_CONF_OPTS = \ - --bindir=/usr/bin \ + --bindir=/bin \ --libdir=/lib \ --libexecdir=/usr/lib \ --sysconfdir=/etc \ @@ -19,10 +19,4 @@ SED_CONF_OPTS = \ --infodir=/usr/share/info \ --include=$(STAGING_DIR)/usr/include -define SED_MOVE_BINARY - mv $(TARGET_DIR)/usr/bin/sed $(TARGET_DIR)/bin/ -endef - -SED_POST_INSTALL_TARGET_HOOKS = SED_MOVE_BINARY - $(eval $(autotools-package)) diff --git a/package/setools/Config.in b/package/setools/Config.in index 981d64b09b5..c291b2176ea 100644 --- a/package/setools/Config.in +++ b/package/setools/Config.in @@ -7,10 +7,12 @@ config BR2_PACKAGE_SETOOLS depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_USE_WCHAR # bfin: infamous _ symbol prefix issue # nios2: triggers some toolchain issue "No symbol version # section for versioned symbol" - depends on !BR2_nios2 && !BR2_bfin + # arc: libselinux not available + depends on !BR2_nios2 && !BR2_bfin && !BR2_arc help SETools is an open source project designed to facilitate SELinux policy analysis. The primary tools are: @@ -24,7 +26,9 @@ config BR2_PACKAGE_SETOOLS * secmds - command-line tools to analyze and search SELinux policy. -comment "setools needs a toolchain w/ threads, C++, dynamic library" + https://github.com/TresysTechnology/setools3/wiki + +comment "setools needs a toolchain w/ threads, C++, wchar, dynamic library" depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ - || !BR2_INSTALL_LIBSTDCPP - depends on !BR2_nios2 && !BR2_bfin + || !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP + depends on !BR2_nios2 && !BR2_bfin && !BR2_arc diff --git a/package/setools/setools.mk b/package/setools/setools.mk index a2bfd420e51..deb421fe655 100644 --- a/package/setools/setools.mk +++ b/package/setools/setools.mk @@ -6,10 +6,10 @@ SETOOLS_VERSION = 3.3.8 SETOOLS_SOURCE = setools-$(SETOOLS_VERSION).tar.bz2 -SETOOLS_SITE = https://raw.githubusercontent.com/wiki/TresysTechnology/setools3/files/dists/setools-$(SETOOLS_VERSION)/ -SETOOLS_DEPENDENCIES = libselinux libsepol sqlite libxml2 bzip2 host-bison +SETOOLS_SITE = https://raw.githubusercontent.com/wiki/TresysTechnology/setools3/files/dists/setools-$(SETOOLS_VERSION) +SETOOLS_DEPENDENCIES = libselinux libsepol sqlite libxml2 bzip2 host-bison host-flex SETOOLS_INSTALL_STAGING = YES -SETOOLS_LICENSE = GPLv2+ LGPLv2.1+ +SETOOLS_LICENSE = GPLv2+, LGPLv2.1+ SETOOLS_LICENSE_FILES = COPYING COPYING.GPL COPYING.LGPL # configure.ac is patched by the cross compile patch, diff --git a/package/shairport-sync/Config.in b/package/shairport-sync/Config.in index c1d81a7e2a5..c558a64c5be 100644 --- a/package/shairport-sync/Config.in +++ b/package/shairport-sync/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_SHAIRPORT_SYNC depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL select BR2_PACKAGE_ALSA_LIB select BR2_PACKAGE_ALSA_LIB_MIXER + select BR2_PACKAGE_LIBCONFIG select BR2_PACKAGE_LIBDAEMON select BR2_PACKAGE_POLARSSL if !BR2_PACKAGE_OPENSSL select BR2_PACKAGE_POPT diff --git a/package/shairport-sync/S99shairport-sync b/package/shairport-sync/S99shairport-sync index 54d20ff76c0..5443ed138cd 100644 --- a/package/shairport-sync/S99shairport-sync +++ b/package/shairport-sync/S99shairport-sync @@ -5,12 +5,12 @@ OPTIONS="-d" case "$1" in start) - echo -n "Starting shairport-sync: " + printf "Starting shairport-sync: " start-stop-daemon -S -q -p /var/run/shairport-sync.pid --exec /usr/bin/shairport-sync -- $OPTIONS [ $? = 0 ] && echo "OK" || echo "FAIL" ;; stop) - echo -n "Stopping shairport-sync: " + printf "Stopping shairport-sync: " start-stop-daemon -K -q -p /var/run/shairport-sync.pid [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/shairport-sync/shairport-sync.hash b/package/shairport-sync/shairport-sync.hash new file mode 100644 index 00000000000..35aba300781 --- /dev/null +++ b/package/shairport-sync/shairport-sync.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 6f3535012ed25017e4f893f9bad5391c2ea23c64f398caac3f29d8dad5f9e987 shairport-sync-2.8.0.tar.gz +sha256 e0c750f51c54611e564ddb1ee161aa57ba6be36d3bf54198d9a6435ad6bf1757 8e8a0ee7ab0db61dc46735a1206843fe943ffc61.patch diff --git a/package/shairport-sync/shairport-sync.mk b/package/shairport-sync/shairport-sync.mk index 881cceda2c3..628d1213220 100644 --- a/package/shairport-sync/shairport-sync.mk +++ b/package/shairport-sync/shairport-sync.mk @@ -4,17 +4,21 @@ # ################################################################################ -SHAIRPORT_SYNC_VERSION = 2.2.4 +SHAIRPORT_SYNC_VERSION = 2.8.0 SHAIRPORT_SYNC_SITE = $(call github,mikebrady,shairport-sync,$(SHAIRPORT_SYNC_VERSION)) SHAIRPORT_SYNC_LICENSE = MIT, BSD-3c SHAIRPORT_SYNC_LICENSE_FILES = LICENSES -SHAIRPORT_SYNC_DEPENDENCIES = alsa-lib libdaemon popt host-pkgconf +SHAIRPORT_SYNC_DEPENDENCIES = alsa-lib libconfig libdaemon popt host-pkgconf +SHAIRPORT_SYNC_PATCH = https://github.com/mikebrady/shairport-sync/commit/8e8a0ee7ab0db61dc46735a1206843fe943ffc61.patch -# Touching configure.ac with the patches +# git clone, no configure SHAIRPORT_SYNC_AUTORECONF = YES -SHAIRPORT_SYNC_CONF_OPTS = --with-alsa +SHAIRPORT_SYNC_CONF_OPTS = --with-alsa \ + --with-metadata \ + --with-pipe \ + --with-stdout # Avahi or tinysvcmdns (shaiport-sync bundles its own version of tinysvcmdns). # Avahi support needs libavahi-client, which is built by avahi if avahi-daemon @@ -45,6 +49,8 @@ endif define SHAIRPORT_SYNC_INSTALL_TARGET_CMDS $(INSTALL) -D -m 0755 $(@D)/shairport-sync \ $(TARGET_DIR)/usr/bin/shairport-sync + $(INSTALL) -D -m 0644 $(@D)/scripts/shairport-sync.conf \ + $(TARGET_DIR)/etc/shairport-sync.conf endef define SHAIRPORT_SYNC_INSTALL_INIT_SYSV diff --git a/package/shared-mime-info/shared-mime-info.hash b/package/shared-mime-info/shared-mime-info.hash index cd237dd8505..170c6720a14 100644 --- a/package/shared-mime-info/shared-mime-info.hash +++ b/package/shared-mime-info/shared-mime-info.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 52c9f84a8c72de631a0458542980b1728560f59845eb5e93e1dbe825f4b72304 shared-mime-info-0.90.tar.bz2 +sha256 d6412840eb265bf36e61fd7b6fc6bea21b0f58cb22bed16f2ccccdd54bea4180 shared-mime-info-1.5.tar.xz diff --git a/package/shared-mime-info/shared-mime-info.mk b/package/shared-mime-info/shared-mime-info.mk index 80a952687f6..2892344800d 100644 --- a/package/shared-mime-info/shared-mime-info.mk +++ b/package/shared-mime-info/shared-mime-info.mk @@ -4,8 +4,8 @@ # ################################################################################ -SHARED_MIME_INFO_VERSION = 0.90 -SHARED_MIME_INFO_SOURCE = shared-mime-info-$(SHARED_MIME_INFO_VERSION).tar.bz2 +SHARED_MIME_INFO_VERSION = 1.5 +SHARED_MIME_INFO_SOURCE = shared-mime-info-$(SHARED_MIME_INFO_VERSION).tar.xz SHARED_MIME_INFO_SITE = http://freedesktop.org/~hadess SHARED_MIME_INFO_INSTALL_STAGING = YES SHARED_MIME_INFO_CONF_ENV = XMLLINT=$(HOST_DIR)/usr/bin/xmllint diff --git a/package/sigrok-cli/sigrok-cli.hash b/package/sigrok-cli/sigrok-cli.hash new file mode 100644 index 00000000000..b60b57e71e2 --- /dev/null +++ b/package/sigrok-cli/sigrok-cli.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 ab2ede4e245f3987e19a89a530bd204e0d792c07474d9fed3345d4af4e84723c sigrok-cli-0.6.0.tar.gz diff --git a/package/sigrok-cli/sigrok-cli.mk b/package/sigrok-cli/sigrok-cli.mk index 34e0a0efe87..ec5c8bd864e 100644 --- a/package/sigrok-cli/sigrok-cli.mk +++ b/package/sigrok-cli/sigrok-cli.mk @@ -4,13 +4,10 @@ # ################################################################################ -SIGROK_CLI_VERSION = c59bf72b694ab1d08b2ea44de4349c277e206414 -# No https access on upstream git -SIGROK_CLI_SITE = git://sigrok.org/sigrok-cli +SIGROK_CLI_VERSION = 0.6.0 +SIGROK_CLI_SITE = http://sigrok.org/download/source/sigrok-cli SIGROK_CLI_LICENSE = GPLv3+ SIGROK_CLI_LICENSE_FILES = COPYING -# Git checkout has no configure script -SIGROK_CLI_AUTORECONF = YES SIGROK_CLI_DEPENDENCIES = host-pkgconf libsigrok ifeq ($(BR2_PACKAGE_LIBSIGROKDECODE),y) @@ -20,10 +17,4 @@ else SIGROK_CLI_CONF_OPTS += --with-libsigrokdecode=NO endif -define SIGROK_CLI_ADD_MISSING - mkdir -p $(@D)/autostuff -endef - -SIGROK_CLI_PRE_CONFIGURE_HOOKS += SIGROK_CLI_ADD_MISSING - $(eval $(autotools-package)) diff --git a/package/skeleton/nfs_check b/package/skeleton/nfs_check new file mode 100755 index 00000000000..dfa0cbf5802 --- /dev/null +++ b/package/skeleton/nfs_check @@ -0,0 +1,20 @@ +#!/bin/sh + +# This allows NFS booting to work while also being able to configure +# the network interface via DHCP when not NFS booting. Otherwise, a +# NFS booted system will likely hang during DHCP configuration. + +# Attempting to configure the network interface used for NFS will +# initially bring that network down. Since the root filesystem is +# accessed over this network, the system hangs. + +# This script is run by ifup and will attempt to detect if a NFS root +# mount uses the interface to be configured (IFACE), and if so does +# not configure it. This should allow the same build to be disk/flash +# booted or NFS booted. + +nfsip=`sed -n '/^[^ ]*:.* \/ nfs.*[ ,]addr=\([0-9.]\+\).*/s//\1/p' /proc/mounts` +if [ -n "$nfsip" ] && ip route get to "$nfsip" | grep -q "dev $IFACE"; then + echo Skipping $IFACE, used for NFS from $nfsip + exit 1 +fi diff --git a/package/skeleton/skeleton.mk b/package/skeleton/skeleton.mk index 48e708515d6..76188356717 100644 --- a/package/skeleton/skeleton.mk +++ b/package/skeleton/skeleton.mk @@ -13,21 +13,102 @@ SKELETON_SOURCE = # on skeleton. SKELETON_ADD_TOOLCHAIN_DEPENDENCY = NO +# The skeleton also handles the merged /usr case in the sysroot +SKELETON_INSTALL_STAGING = YES + ifeq ($(BR2_ROOTFS_SKELETON_CUSTOM),y) -SKELETON_PATH = $(BR2_ROOTFS_SKELETON_CUSTOM_PATH) -else + +SKELETON_PATH = $(call qstrip,$(BR2_ROOTFS_SKELETON_CUSTOM_PATH)) + +ifeq ($(BR2_ROOTFS_MERGED_USR),y) + +# Ensure the user has prepared a merged /usr. +# +# Extract the inode numbers for all of those directories. In case any is +# a symlink, we want to get the inode of the pointed-to directory, so we +# append '/.' to be sure we get the target directory. Since the symlinks +# can be anyway (/bin -> /usr/bin or /usr/bin -> /bin), we do that for +# all of them. +# +SKELETON_LIB_INODE = $(shell stat -c '%i' $(SKELETON_PATH)/lib/.) +SKELETON_BIN_INODE = $(shell stat -c '%i' $(SKELETON_PATH)/bin/.) +SKELETON_SBIN_INODE = $(shell stat -c '%i' $(SKELETON_PATH)/sbin/.) +SKELETON_USR_LIB_INODE = $(shell stat -c '%i' $(SKELETON_PATH)/usr/lib/.) +SKELETON_USR_BIN_INODE = $(shell stat -c '%i' $(SKELETON_PATH)/usr/bin/.) +SKELETON_USR_SBIN_INODE = $(shell stat -c '%i' $(SKELETON_PATH)/usr/sbin/.) + +ifneq ($(SKELETON_LIB_INODE),$(SKELETON_USR_LIB_INODE)) +SKELETON_CUSTOM_NOT_MERGED_USR += /lib +endif +ifneq ($(SKELETON_BIN_INODE),$(SKELETON_USR_BIN_INODE)) +SKELETON_CUSTOM_NOT_MERGED_USR += /bin +endif +ifneq ($(SKELETON_SBIN_INODE),$(SKELETON_USR_SBIN_INODE)) +SKELETON_CUSTOM_NOT_MERGED_USR += /sbin +endif + +ifneq ($(SKELETON_CUSTOM_NOT_MERGED_USR),) +$(error Use of systemd as an init system requires a merged /usr. \ + However, the custom skeleton in $(SKELETON_PATH) is not \ + using a merged /usr for the following directories: \ + $(SKELETON_CUSTOM_NOT_MERGED_USR)) +endif + +endif # merged /usr + +else # ! custom skeleton + SKELETON_PATH = system/skeleton + +endif # ! custom skeleton + +# This function handles the merged or non-merged /usr cases +ifeq ($(BR2_ROOTFS_MERGED_USR),y) +define SKELETON_USR_SYMLINKS_OR_DIRS + ln -snf usr/bin $(1)/bin + ln -snf usr/sbin $(1)/sbin + ln -snf usr/lib $(1)/lib +endef +else +define SKELETON_USR_SYMLINKS_OR_DIRS + $(INSTALL) -d -m 0755 $(1)/bin + $(INSTALL) -d -m 0755 $(1)/sbin + $(INSTALL) -d -m 0755 $(1)/lib +endef +endif + +# We make a symlink lib32->lib or lib64->lib as appropriate +# MIPS64/n32 requires lib32 even though it's a 64-bit arch. +ifeq ($(BR2_ARCH_IS_64)$(BR2_MIPS_NABI32),y) +SKELETON_LIB_SYMLINK = lib64 +else +SKELETON_LIB_SYMLINK = lib32 endif define SKELETON_INSTALL_TARGET_CMDS - rsync -a --ignore-times $(SYNC_VCS_EXCLUSIONS) \ + rsync -a --ignore-times $(RSYNC_VCS_EXCLUSIONS) \ --chmod=u=rwX,go=rX --exclude .empty --exclude '*~' \ $(SKELETON_PATH)/ $(TARGET_DIR)/ + $(call SKELETON_USR_SYMLINKS_OR_DIRS,$(TARGET_DIR)) + ln -snf lib $(TARGET_DIR)/$(SKELETON_LIB_SYMLINK) + ln -snf lib $(TARGET_DIR)/usr/$(SKELETON_LIB_SYMLINK) $(INSTALL) -m 0644 support/misc/target-dir-warning.txt \ $(TARGET_DIR_WARNING_FILE) - ln -snf lib $(TARGET_DIR)/$(LIB_SYMLINK) - mkdir -p $(TARGET_DIR)/usr - ln -snf lib $(TARGET_DIR)/usr/$(LIB_SYMLINK) +endef + +# For the staging dir, we don't really care about /bin and /sbin. +# But for consistency with the target dir, and to simplify the code, +# we still handle them for the merged or non-merged /usr cases. +# Since the toolchain is not yet available, the staging is not yet +# populated, so we need to create the directories in /usr +define SKELETON_INSTALL_STAGING_CMDS + $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/lib + $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/bin + $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/sbin + $(INSTALL) -d -m 0755 $(STAGING_DIR)/usr/include + $(call SKELETON_USR_SYMLINKS_OR_DIRS,$(STAGING_DIR)) + ln -snf lib $(STAGING_DIR)/$(SKELETON_LIB_SYMLINK) + ln -snf lib $(STAGING_DIR)/usr/$(SKELETON_LIB_SYMLINK) endef SKELETON_TARGET_GENERIC_HOSTNAME = $(call qstrip,$(BR2_TARGET_GENERIC_HOSTNAME)) @@ -75,7 +156,11 @@ define SET_NETWORK_DHCP echo ; \ echo "auto $(NETWORK_DHCP_IFACE)"; \ echo "iface $(NETWORK_DHCP_IFACE) inet dhcp"; \ + echo " pre-up /etc/network/nfs_check"; \ + echo " wait-delay 15"; \ ) >> $(TARGET_DIR)/etc/network/interfaces + $(INSTALL) -m 0755 -D $(SKELETON_PKGDIR)/nfs_check \ + $(TARGET_DIR)/etc/network/nfs_check endef endif diff --git a/package/slang/0004-Rename-posix_close-function-to-posix_close_slfile.patch b/package/slang/0004-Rename-posix_close-function-to-posix_close_slfile.patch new file mode 100644 index 00000000000..4b3c869a60b --- /dev/null +++ b/package/slang/0004-Rename-posix_close-function-to-posix_close_slfile.patch @@ -0,0 +1,47 @@ +From 055b02cf98ab9b7301988c3be2d277f262f0957e Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 18 Nov 2015 23:12:15 +0100 +Subject: [PATCH] Rename posix_close() function to posix_close_slfile() + +posix_close() is a function that will be implemented as part of an +upcoming of the POSIX standard. For this reason, the musl C library +has already started implementing this function call. Unfortunately, +since slang already defines a function with the same name, it cannot +build properly with the musl C library. + +This commit fixes that by renaming the slang function to +posix_close_slfile(). + +This patch has been taken from the Alpine Linux repository, at +http://git.alpinelinux.org/cgit/aports/plain/main/slang/musl-fix-posix_close-clash.patch. + +Signed-off-by: Thomas Petazzoni +--- + src/slposio.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/slposio.c b/src/slposio.c +index 94f20dd..475e2c9 100644 +--- a/src/slposio.c ++++ b/src/slposio.c +@@ -372,7 +372,7 @@ static int posix_close_fd (int *fd) + return 0; + } + +-static int posix_close (SLFile_FD_Type *f) ++static int posix_close_slfile (SLFile_FD_Type *f) + { + int status = do_close (f); + +@@ -1011,7 +1011,7 @@ static SLang_Intrin_Fun_Type Fd_Name_Table [] = + MAKE_INTRINSIC_2("write", posix_write, V, F, B), + MAKE_INTRINSIC_1("dup_fd", posix_dup, V, F), + MAKE_INTRINSIC_2("dup2_fd", posix_dup2, I, F, I), +- MAKE_INTRINSIC_1("close", posix_close, I, F), ++ MAKE_INTRINSIC_1("close", posix_close_slfile, I, F), + MAKE_INTRINSIC_1("_close", posix_close_fd, I, I), + #if defined(TTYNAME_R) + MAKE_INTRINSIC_0("ttyname", posix_ttyname, V), +-- +2.6.3 + diff --git a/package/slang/slang.mk b/package/slang/slang.mk index 59ef9932cdc..9078bf293c5 100644 --- a/package/slang/slang.mk +++ b/package/slang/slang.mk @@ -9,6 +9,7 @@ SLANG_SITE = http://www.jedsoft.org/releases/slang SLANG_LICENSE = GPLv2+ SLANG_LICENSE_FILES = COPYING SLANG_INSTALL_STAGING = YES +SLANG_CONF_OPTS = --with-onig=no SLANG_MAKE = $(MAKE1) # Racy and we don't have/do libtermcap @@ -39,6 +40,7 @@ endif ifeq ($(BR2_PACKAGE_NCURSES),y) SLANG_DEPENDENCIES += ncurses +SLANG_CONF_ENV += ac_cv_path_nc5config=$(STAGING_DIR)/usr/bin/ncurses5-config else SLANG_CONF_OPTS += ac_cv_path_nc5config=no endif @@ -46,6 +48,9 @@ endif ifeq ($(BR2_PACKAGE_READLINE),y) SLANG_CONF_OPTS += --with-readline=gnu SLANG_DEPENDENCIES += readline +ifeq ($(BR2_STATIC_LIBS),y) +SLANG_CONF_ENV += LIBS="`$(STAGING_DIR)/usr/bin/ncurses5-config --libs`" +endif endif ifeq ($(BR2_STATIC_LIBS),y) diff --git a/package/smack/0001-libsmack-common.c-Include-limits.h-for-PATH_MAX.patch b/package/smack/0001-libsmack-common.c-Include-limits.h-for-PATH_MAX.patch new file mode 100644 index 00000000000..0e30ef5e398 --- /dev/null +++ b/package/smack/0001-libsmack-common.c-Include-limits.h-for-PATH_MAX.patch @@ -0,0 +1,29 @@ +From 316c911aa741b14513622a4206ed6d324e951fa0 Mon Sep 17 00:00:00 2001 +From: Felix Janda +Date: Wed, 20 May 2015 21:25:22 +0200 +Subject: [PATCH 1/1] libsmack/common.c: Include for PATH_MAX + +Signed-off-by: Felix Janda +Signed-off-by: Bernd Kuhls +--- +Downloaded from upstream commit +https://github.com/smack-team/smack/commit/316c911aa741b14513622a4206ed6d324e951fa0 + + libsmack/common.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libsmack/common.c b/libsmack/common.c +index 55fee1a..55b59e3 100644 +--- a/libsmack/common.c ++++ b/libsmack/common.c +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + #include + #include + #include +-- +2.7.0 + diff --git a/package/smack/smack.mk b/package/smack/smack.mk index 7e0a362c9fc..3ef4d476d10 100644 --- a/package/smack/smack.mk +++ b/package/smack/smack.mk @@ -4,7 +4,7 @@ # ################################################################################ -SMACK_VERSION = v1.0.4 +SMACK_VERSION = v1.1.0 SMACK_SITE = $(call github,smack-team,smack,$(SMACK_VERSION)) SMACK_LICENSE = LGPLv2.1 SMACK_LICENSE_FILES = COPYING diff --git a/package/smartmontools/smartmontools.hash b/package/smartmontools/smartmontools.hash index 5a806917318..bbaa6dd538f 100644 --- a/package/smartmontools/smartmontools.hash +++ b/package/smartmontools/smartmontools.hash @@ -1,2 +1,3 @@ -# Locally computed: -sha256 a777065d1a5965d71b3672e054b09b7696200ec73aaf45ab636f34016538fe19 smartmontools-6.3.tar.gz +# From http://sourceforge.net/projects/smartmontools/files/smartmontools/6.4/ +md5 56812c8312fd123ed40ef65afde1049e smartmontools-6.4.tar.gz +sha1 855c7d555dd405e5b392b1631dc36dd9632db8b8 smartmontools-6.4.tar.gz diff --git a/package/smartmontools/smartmontools.mk b/package/smartmontools/smartmontools.mk index 7c97a218362..6d0a82b4cd2 100644 --- a/package/smartmontools/smartmontools.mk +++ b/package/smartmontools/smartmontools.mk @@ -4,7 +4,7 @@ # ################################################################################ -SMARTMONTOOLS_VERSION = 6.3 +SMARTMONTOOLS_VERSION = 6.4 SMARTMONTOOLS_SITE = http://downloads.sourceforge.net/project/smartmontools/smartmontools/$(SMARTMONTOOLS_VERSION) SMARTMONTOOLS_LICENSE = GPLv2+ SMARTMONTOOLS_LICENSE_FILES = COPYING diff --git a/package/smstools3/S50smsd b/package/smstools3/S50smsd index 239c3e3199a..cd78150883d 100644 --- a/package/smstools3/S50smsd +++ b/package/smstools3/S50smsd @@ -10,7 +10,7 @@ SPOOL=/var/spool/sms start() { - echo -n "Starting $NAME: " + printf "Starting $NAME: " mkdir -p $SPOOL/outgoing mkdir -p $SPOOL/incoming mkdir -p $SPOOL/checked @@ -19,7 +19,7 @@ start() stop() { - echo -n "Stopping $NAME: " + printf "Stopping $NAME: " start-stop-daemon -K -q -p $PIDFILE && echo "OK" || echo "Failed" rm -f $PIDFILE } diff --git a/package/snowball-init/snowball-init.mk b/package/snowball-init/snowball-init.mk index 40acdd6a03d..f06b03277a1 100644 --- a/package/snowball-init/snowball-init.mk +++ b/package/snowball-init/snowball-init.mk @@ -5,7 +5,7 @@ ################################################################################ SNOWBALL_INIT_VERSION = b064be21de25729039e5e54037bbdd2e25cfd5b7 -SNOWBALL_INIT_SITE = https://github.com/igloocommunity/snowball-init +SNOWBALL_INIT_SITE = $(call github,igloocommunity,snowball-init,$(SNOWBALL_INIT_VERSION)) SNOWBALL_INIT_LICENSE = BSD-4c SNOWBALL_INIT_LICENSE_FILES = debian/copyright diff --git a/package/socat/0002-ptrdiff_t-is-defined-in-stddef.h.patch b/package/socat/0002-ptrdiff_t-is-defined-in-stddef.h.patch new file mode 100644 index 00000000000..acae641b34b --- /dev/null +++ b/package/socat/0002-ptrdiff_t-is-defined-in-stddef.h.patch @@ -0,0 +1,28 @@ +From 99c55f2694fe8621ca2344eb002610dac7f9c969 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Tue, 2 Feb 2016 09:34:24 -0300 +Subject: [PATCH] ptrdiff_t is defined in stddef.h + +Status: sent upstream via email. + +Signed-off-by: Gustavo Zacarias +--- + nestlex.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/nestlex.c b/nestlex.c +index f7950f0..f49482d 100644 +--- a/nestlex.c ++++ b/nestlex.c +@@ -4,6 +4,8 @@ + + /* a function for lexical scanning of nested character patterns */ + ++#include /* ptrdiff_t */ ++ + #include "config.h" + #include "mytypes.h" + +-- +2.4.10 + diff --git a/package/socat/socat.hash b/package/socat/socat.hash index a876ae22351..d867d8ac10b 100644 --- a/package/socat/socat.hash +++ b/package/socat/socat.hash @@ -1,2 +1,4 @@ # From http://www.dest-unreach.org/socat/download.md5sum -md5 ff56576703dfdeac221357a348c30760 socat-2.0.0-b8.tar.bz2 +md5 553b1593d0a192cb09cbdc687ef1baac socat-2.0.0-b9.tar.bz2 +# Calculated based on the hash above +sha256 49efb0a5c66b94b279014addc2851faf8ebbd1ec4b7e31c1de7e912d7b4983d2 socat-2.0.0-b9.tar.bz2 diff --git a/package/socat/socat.mk b/package/socat/socat.mk index eaf13bcd286..754b210b6cf 100644 --- a/package/socat/socat.mk +++ b/package/socat/socat.mk @@ -4,7 +4,7 @@ # ################################################################################ -SOCAT_VERSION = 2.0.0-b8 +SOCAT_VERSION = 2.0.0-b9 SOCAT_SOURCE = socat-$(SOCAT_VERSION).tar.bz2 SOCAT_SITE = http://www.dest-unreach.org/socat/download SOCAT_LICENSE = GPLv2 diff --git a/package/softether/softether.mk b/package/softether/softether.mk index 17a450fe5d5..489341e7e7a 100644 --- a/package/softether/softether.mk +++ b/package/softether/softether.mk @@ -4,7 +4,7 @@ # ################################################################################ -SOFTETHER_VERSION = 18b120e5f747a84d26302ec706f6c1c91d642ace +SOFTETHER_VERSION = 4b65e251f240d0b36c704acd598f4ceb07c41413 SOFTETHER_SITE = $(call github,SoftEtherVPN,SoftEtherVPN,$(SOFTETHER_VERSION)) SOFTETHER_PATCH = \ https://github.com/dajhorn/SoftEtherVPN/commit/c5e5d7e93c6f3302adf5821c29c4efdb7630e418.patch \ diff --git a/package/sox/sox.mk b/package/sox/sox.mk index f4d160876f7..61f52201893 100644 --- a/package/sox/sox.mk +++ b/package/sox/sox.mk @@ -13,6 +13,12 @@ SOX_CONF_OPTS = --with-distro="Buildroot" --without-ffmpeg --disable-gomp \ SOX_LICENSE = GPLv2+ (sox binary), LGPLv2.1+ (libraries) SOX_LICENSE_FILES = LICENSE.GPL LICENSE.LGPL +# MIPS Codescape toolchains don't support stack-smashing protection +# despite of using glibc. +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS)$(BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS),y) +SOX_CONF_OPTS += --disable-stack-protector +endif + ifeq ($(BR2_PACKAGE_ALSA_LIB_PCM),y) SOX_DEPENDENCIES += alsa-lib else diff --git a/package/sp-oops-extract/0001-Make-the-Makefile-more-cross-compiler-friendly.patch b/package/sp-oops-extract/0001-Make-the-Makefile-more-cross-compiler-friendly.patch new file mode 100644 index 00000000000..67153c27bc4 --- /dev/null +++ b/package/sp-oops-extract/0001-Make-the-Makefile-more-cross-compiler-friendly.patch @@ -0,0 +1,22 @@ +Fetch from: https://github.com/Schischu/ptxdist_sh/tree/master/patches/sp-oops-extract-0.0.7 + +From: Bernhard Walle +Date: Wed, 21 Mar 2012 15:55:06 +0100 +Subject: [PATCH] Make the Makefile more cross-compiler friendly + +Signed-off-by: Bernhard Walle +--- + src/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/Makefile b/src/Makefile +index cf5b550..e05eb1f 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -9,4 +9,4 @@ distclean: clean + $(RM) $(TARGETS) + + sp-oops-extract: oopslog.c +- gcc -Wall -s -o $@ $^ ++ $(CC) $(LDFLAGS) $(CPPFLAGS) $(CFLAGS) -Wall -o $@ $^ + diff --git a/package/sp-oops-extract/0002-stdint-cleanup.patch b/package/sp-oops-extract/0002-stdint-cleanup.patch new file mode 100644 index 00000000000..255fe8a8ce8 --- /dev/null +++ b/package/sp-oops-extract/0002-stdint-cleanup.patch @@ -0,0 +1,33 @@ +consolidate use of stdint types + +Change u_int*_t to uint*_t for compatibility with a larger number of C +libraries. + +Signed-off-by: Doug Kehn + +Index: sp-oops-extract-0.0.7-1/src/oopslog.c +=================================================================== +--- sp-oops-extract-0.0.7-1.orig/src/oopslog.c ++++ sp-oops-extract-0.0.7-1/src/oopslog.c +@@ -64,8 +64,8 @@ static int try_to_check_for_bad_blocks(v + + int main(const int argc, const char *argv[]) + { +- u_int32_t *count, maxcount = 0xffffffff; +- u_int32_t *magic_ptr, magic_value = 0x5d005d00; ++ uint32_t *count, maxcount = 0xffffffff; ++ uint32_t *magic_ptr, magic_value = 0x5d005d00; + + unsigned char *charbuf; + unsigned long size; +@@ -137,8 +137,8 @@ int main(const int argc, const char *arg + errx(-1, "%s is something weird", device); + + charbuf = buf; +- count = (u_int32_t *) buf; +- magic_ptr = (u_int32_t *) (buf + sizeof(u_int32_t)); ++ count = (uint32_t *) buf; ++ magic_ptr = (uint32_t *) (buf + sizeof(uint32_t)); + + for (i = 0; i < (size / OOPS_PAGE_SIZE); i++) { + pread(fd, buf, OOPS_PAGE_SIZE, i * OOPS_PAGE_SIZE); diff --git a/package/sp-oops-extract/Config.in b/package/sp-oops-extract/Config.in new file mode 100644 index 00000000000..d4e0252c89a --- /dev/null +++ b/package/sp-oops-extract/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_SP_OOPS_EXTRACT + bool "sp-oops-extract" + help + A tool for extracting OOPS/panic logs from MTD. + + http://maemo.org/packages/view/sp-oops-extract/ diff --git a/package/sp-oops-extract/sp-oops-extract.hash b/package/sp-oops-extract/sp-oops-extract.hash new file mode 100644 index 00000000000..835bfe89158 --- /dev/null +++ b/package/sp-oops-extract/sp-oops-extract.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 85601a569af1f4584db75fad21d3a70e377ce12d1bccad7dbe1112abd3b43d93 sp-oops-extract_0.0.7-1.tar.gz diff --git a/package/sp-oops-extract/sp-oops-extract.mk b/package/sp-oops-extract/sp-oops-extract.mk new file mode 100644 index 00000000000..991980713fe --- /dev/null +++ b/package/sp-oops-extract/sp-oops-extract.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# sp-oops-extract +# +################################################################################ + +SP_OOPS_EXTRACT_VERSION = 0.0.7-1 +SP_OOPS_EXTRACT_SITE = http://repository.maemo.org/pool/maemo5.0/free/s/sp-oops-extract +SP_OOPS_EXTRACT_SOURCE = sp-oops-extract_$(SP_OOPS_EXTRACT_VERSION).tar.gz +SP_OOPS_EXTRACT_LICENSE = GPLv2 +SP_OOPS_EXTRACT_LICENSE_FILES = COPYING + +define SP_OOPS_EXTRACT_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) +endef + +define SP_OOPS_EXTRACT_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install \ + DESTDIR=$(TARGET_DIR) +endef + +$(eval $(generic-package)) diff --git a/package/spi-tools/Config.in b/package/spi-tools/Config.in new file mode 100644 index 00000000000..8d2634444ac --- /dev/null +++ b/package/spi-tools/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_SPI_TOOLS + bool "spi-tools" + help + This package contains some simple command line tools to help + using Linux spidev devices. + + https://github.com/cpb-/spi-tools diff --git a/package/spi-tools/spi-tools.hash b/package/spi-tools/spi-tools.hash new file mode 100644 index 00000000000..25c73814ba4 --- /dev/null +++ b/package/spi-tools/spi-tools.hash @@ -0,0 +1,2 @@ +# locally computed hash +sha256 72a6c4a9d13011addc61bc3906543cd06f76f567270ae4b6ca4d0115fd6a9538 spi-tools-0.8.1.tar.gz diff --git a/package/spi-tools/spi-tools.mk b/package/spi-tools/spi-tools.mk new file mode 100644 index 00000000000..384ae41e68a --- /dev/null +++ b/package/spi-tools/spi-tools.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# spi-tools +# +################################################################################ + +SPI_TOOLS_VERSION = 0.8.1 +SPI_TOOLS_SITE = $(call github,cpb-,spi-tools,$(SPI_TOOLS_VERSION)) +# autoreconf must be run as specified in package documentation +SPI_TOOLS_AUTORECONF = YES +SPI_TOOLS_LICENSE = GPLv2 +SPI_TOOLS_LICENSE_FILES = LICENSE + +$(eval $(autotools-package)) diff --git a/package/spice-protocol/spice-protocol.hash b/package/spice-protocol/spice-protocol.hash index 2e8885505d5..c75c095cbfc 100644 --- a/package/spice-protocol/spice-protocol.hash +++ b/package/spice-protocol/spice-protocol.hash @@ -1,2 +1,2 @@ -# Locally calculated -sha256 9d4745602eb2ab1d1c1ab98b4babf587574870993b4faefe354ac57bb5e8259b spice-protocol-0.12.6.tar.bz2 +# Locally calculated after checking pgp signature +sha256 788f0d7195bec5b14371732b562eb55ca82712aab12273b0e87529fb30532efb spice-protocol-0.12.10.tar.bz2 diff --git a/package/spice-protocol/spice-protocol.mk b/package/spice-protocol/spice-protocol.mk index 6762ff0603b..4e81e6cd7be 100644 --- a/package/spice-protocol/spice-protocol.mk +++ b/package/spice-protocol/spice-protocol.mk @@ -4,7 +4,7 @@ # ################################################################################ -SPICE_PROTOCOL_VERSION = 0.12.6 +SPICE_PROTOCOL_VERSION = 0.12.10 SPICE_PROTOCOL_SOURCE = spice-protocol-$(SPICE_PROTOCOL_VERSION).tar.bz2 SPICE_PROTOCOL_SITE = http://www.spice-space.org/download/releases SPICE_PROTOCOL_LICENSE = BSD-3c diff --git a/package/spice/Config.in b/package/spice/Config.in index f1fcf69a1bd..bde3a92859b 100644 --- a/package/spice/Config.in +++ b/package/spice/Config.in @@ -1,4 +1,5 @@ comment "spice server needs a toolchain w/ wchar, threads" + depends on BR2_i386 || BR2_x86_64 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS comment "spice server depends on python (for pyparsing)" diff --git a/package/spice/spice.mk b/package/spice/spice.mk index a31d78dab0f..61a977225ef 100644 --- a/package/spice/spice.mk +++ b/package/spice/spice.mk @@ -14,6 +14,7 @@ SPICE_DEPENDENCIES = \ alsa-lib \ celt051 \ jpeg \ + libglib2 \ openssl \ pixman \ python-pyparsing \ diff --git a/package/spidev_test/spidev_test.hash b/package/spidev_test/spidev_test.hash new file mode 100644 index 00000000000..6871288ccc5 --- /dev/null +++ b/package/spidev_test/spidev_test.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 80471c330d8c0bf5ba6479c434a54a54bdd2dc59a703b9c76c2541ec04cfb8c3 spidev_test.c?id=v3.0 +sha256 57fa6c534e0b7b4d234075e18bc89e2f3c9fc4ecc27e80f349a8057708e0de46 spidev_test.c?id=v3.15 diff --git a/package/sqlcipher/sqlcipher.mk b/package/sqlcipher/sqlcipher.mk index 9693eb947fe..196f16275b1 100644 --- a/package/sqlcipher/sqlcipher.mk +++ b/package/sqlcipher/sqlcipher.mk @@ -14,7 +14,8 @@ SQLCIPHER_CONF_ENV = \ TCLSH_CMD=$(HOST_DIR)/usr/bin/tclsh$(TCL_VERSION_MAJOR) SQLCIPHER_CONF_OPTS = \ - --enable-threadsafe + --enable-threadsafe \ + --disable-tcl SQLCIPHER_CFLAGS += -DSQLITE_HAS_CODEC # Required according to the README SQLCIPHER_CONF_ENV += LIBS="-lcrypto -lz" diff --git a/package/sqlite/sqlite.hash b/package/sqlite/sqlite.hash index 8b507f0b5dd..1f07794096d 100644 --- a/package/sqlite/sqlite.hash +++ b/package/sqlite/sqlite.hash @@ -1,2 +1,4 @@ # From http://www.sqlite.org/download.html -sha1 d0e22d7e361b6f50830a3cdeafe35311443f8f9a sqlite-autoconf-3081101.tar.gz +sha1 ea4156fc3f6a4a4a2752a5a3ac5c5b3fe7e1a24b sqlite-autoconf-3100200.tar.gz +# Calculated based on the hash above +sha256 a2b3b4bd1291ea7d6c8252f7edff36a4362f2f0e5d5370444ba6cbe313ae2971 sqlite-autoconf-3100200.tar.gz diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk index afeae6c63e3..1603e006e6b 100644 --- a/package/sqlite/sqlite.mk +++ b/package/sqlite/sqlite.mk @@ -4,15 +4,13 @@ # ################################################################################ -SQLITE_VERSION = 3081101 +SQLITE_VERSION = 3100200 SQLITE_SOURCE = sqlite-autoconf-$(SQLITE_VERSION).tar.gz -SQLITE_SITE = http://www.sqlite.org/2015 +SQLITE_SITE = http://www.sqlite.org/2016 SQLITE_LICENSE = Public domain +SQLITE_LICENSE_FILES = tea/license.terms SQLITE_INSTALL_STAGING = YES -# Patching Makefile.am: -SQLITE_AUTORECONF = YES - ifeq ($(BR2_PACKAGE_SQLITE_STAT3),y) SQLITE_CFLAGS += -DSQLITE_ENABLE_STAT3 endif @@ -37,6 +35,8 @@ SQLITE_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) $(SQLITE_CFLAGS)" ifeq ($(BR2_STATIC_LIBS),y) SQLITE_CONF_OPTS += --enable-dynamic-extensions=no +else +SQLITE_CONF_OPTS += --disable-static-shell endif ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) @@ -47,7 +47,7 @@ endif ifeq ($(BR2_PACKAGE_SQLITE_READLINE),y) SQLITE_DEPENDENCIES += ncurses readline -SQLITE_CONF_OPTS += --with-readline-inc="-I$(STAGING_DIR)/usr/include" +SQLITE_CONF_OPTS += --enable-readline else SQLITE_CONF_OPTS += --disable-readline endif diff --git a/package/squashfs/0001-musl.patch b/package/squashfs/0001-musl.patch new file mode 100644 index 00000000000..891b1717a20 --- /dev/null +++ b/package/squashfs/0001-musl.patch @@ -0,0 +1,71 @@ +Fix musl build + +Downloaded from +http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-devtools/squashfs-tools/squashfs-tools/fix-compat.patch +and adjusted paths. + +Signed-off-by: Bernd Kuhls + +Define FNM_EXTMATCH if not defined its glibc specific define +include missing sys/stat.h for stat* function declarations + +Upstream-Status: Pending +Signed-off-by: Khem Raj + +Index: squashfs-tools/action.c +=================================================================== +--- a/squashfs-tools.orig/action.c ++++ b/squashfs-tools/action.c +@@ -44,6 +44,10 @@ + #include "action.h" + #include "error.h" + ++#if !defined(FNM_EXTMATCH) ++#define FNM_EXTMATCH 0 ++#endif ++ + /* + * code to parse actions + */ +Index: squashfs-tools/mksquashfs.c +=================================================================== +--- a/squashfs-tools.orig/mksquashfs.c ++++ b/squashfs-tools/mksquashfs.c +@@ -1286,6 +1286,10 @@ void write_dir(squashfs_inode *inode, st + dir_size + 3, directory_block, directory_offset, NULL, NULL, + dir, 0); + ++#if !defined(FNM_EXTMATCH) ++#define FNM_EXTMATCH 0 ++#endif ++ + #ifdef SQUASHFS_TRACE + { + unsigned char *dirp; +Index: squashfs-tools/pseudo.c +=================================================================== +--- a/squashfs-tools.orig/pseudo.c ++++ b/squashfs-tools/pseudo.c +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + #include + + #include "pseudo.h" +Index: squashfs-tools/unsquashfs.c +=================================================================== +--- a/squashfs-tools.orig/unsquashfs.c ++++ b/squashfs-tools/unsquashfs.c +@@ -38,6 +38,10 @@ + #include + #include + ++#ifndef FNM_EXTMATCH ++#define FNM_EXTMATCH 0 ++#endif ++ + struct cache *fragment_cache, *data_cache; + struct queue *to_reader, *to_inflate, *to_writer, *from_writer; + pthread_t *thread, *inflator_thread; diff --git a/package/squashfs/squashfs.mk b/package/squashfs/squashfs.mk index 3204d054586..cdeb9c8f722 100644 --- a/package/squashfs/squashfs.mk +++ b/package/squashfs/squashfs.mk @@ -9,13 +9,7 @@ SQUASHFS_SOURCE = squashfs$(SQUASHFS_VERSION).tar.gz SQUASHFS_SITE = http://downloads.sourceforge.net/project/squashfs/squashfs/squashfs$(SQUASHFS_VERSION) SQUASHFS_LICENSE = GPLv2+ SQUASHFS_LICENSE_FILES = COPYING - -ifeq ($(BR2_PACKAGE_ATTR),y) -SQUASHFS_DEPENDENCIES += attr -SQUASHFS_MAKE_ARGS += XATTR_SUPPORT=1 -else -SQUASHFS_MAKE_ARGS += XATTR_SUPPORT=0 -endif +SQUASHFS_MAKE_ARGS = XATTR_SUPPORT=1 ifeq ($(BR2_PACKAGE_SQUASHFS_LZ4),y) SQUASHFS_DEPENDENCIES += lz4 @@ -54,9 +48,8 @@ endif HOST_SQUASHFS_DEPENDENCIES = host-zlib host-lz4 host-lzo host-xz -# no libattr/xz in BR HOST_SQUASHFS_MAKE_ARGS = \ - XATTR_SUPPORT=0 \ + XATTR_SUPPORT=1 \ XZ_SUPPORT=1 \ GZIP_SUPPORT=1 \ LZ4_SUPPORT=1 \ diff --git a/package/squeezelite/0001-Makefile-allow-passing-CFLAGS-and-LDFLAGS.patch b/package/squeezelite/0001-Makefile-allow-passing-CFLAGS-and-LDFLAGS.patch new file mode 100644 index 00000000000..2f002a80bc5 --- /dev/null +++ b/package/squeezelite/0001-Makefile-allow-passing-CFLAGS-and-LDFLAGS.patch @@ -0,0 +1,54 @@ +From a0f2e79d1373967dac9f3df4c500a71cd1b96b2b Mon Sep 17 00:00:00 2001 +From: Hiroshi Kawashima +Date: Sun, 7 Feb 2016 18:04:53 +0100 +Subject: [PATCH] Makefile: allow passing CFLAGS and LDFLAGS + +This patch is applied to squeezelite Makefile to add override +directive for CFLAGS and LDFLAGS assignment. +This enables adding flags to CFLAGS and LDFLAGS in Makefile. + +Signed-off-by: Hiroshi Kawashima +--- + Makefile | 12 +++++++----- + 1 file changed, 7 insertions(+), 5 deletions(-) + +diff --git a/Makefile b/Makefile +index dca2abd..286c725 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,4 +1,6 @@ + # Cross compile support - create a Makefile which defines these three variables and then includes this Makefile... ++override CFLAGS += $(OPTS) ++override LDFLAGS += -lasound -lpthread -lm -lrt + CFLAGS ?= -Wall -fPIC -O2 $(OPTS) + LDFLAGS ?= -lasound -lpthread -lm -lrt + EXECUTABLE ?= squeezelite +@@ -52,20 +54,20 @@ endif + + # add optional link options + ifneq (,$(findstring $(OPT_LINKALL), $(CFLAGS))) +- LDFLAGS += $(LINKALL) ++ override LDFLAGS += $(LINKALL) + ifneq (,$(findstring $(OPT_FF), $(CFLAGS))) +- LDFLAGS += $(LINKALL_FF) ++ override LDFLAGS += $(LINKALL_FF) + endif + ifneq (,$(findstring $(OPT_RESAMPLE), $(CFLAGS))) +- LDFLAGS += $(LINKALL_RESAMPLE) ++ override LDFLAGS += $(LINKALL_RESAMPLE) + endif + ifneq (,$(findstring $(OPT_IR), $(CFLAGS))) +- LDFLAGS += $(LINKALL_IR) ++ override LDFLAGS += $(LINKALL_IR) + endif + else + # if not LINKALL and linux add LINK_LINUX + ifeq ($(UNAME), Linux) +- LDFLAGS += $(LINK_LINUX) ++ override LDFLAGS += $(LINK_LINUX) + endif + endif + +-- +2.6.4 + diff --git a/package/squeezelite/0002-output_alsa-use-mallopt-only-on-glibc.patch b/package/squeezelite/0002-output_alsa-use-mallopt-only-on-glibc.patch new file mode 100644 index 00000000000..6962b7b8fd0 --- /dev/null +++ b/package/squeezelite/0002-output_alsa-use-mallopt-only-on-glibc.patch @@ -0,0 +1,34 @@ +From 903922a7bcf06e04d9830b47bba6d65ed37304c1 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 7 Feb 2016 18:05:56 +0100 +Subject: [PATCH] output_alsa: use mallopt() only on glibc + +The musl C library does not provide the glibc specific mallopt() +functionality, so use it only when __GLIBC__ is defined. + +uClibc pretends to be glibc by defining __GLIBC__, but it implements +mallopt(), so it works fine. + +Signed-off-by: Thomas Petazzoni +--- + output_alsa.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/output_alsa.c b/output_alsa.c +index aa01560..44c9fc7 100644 +--- a/output_alsa.c ++++ b/output_alsa.c +@@ -862,8 +862,10 @@ void output_init_alsa(log_level level, const char *device, unsigned output_buf_s + LOG_INFO("memory locked"); + } + ++#ifdef __GLIBC__ + mallopt(M_TRIM_THRESHOLD, -1); + mallopt(M_MMAP_MAX, 0); ++#endif + + touch_memory(silencebuf, MAX_SILENCE_FRAMES * BYTES_PER_FRAME); + touch_memory(outputbuf->buf, outputbuf->size); +-- +2.6.4 + diff --git a/package/squeezelite/Config.in b/package/squeezelite/Config.in new file mode 100644 index 00000000000..1c2960ea62a --- /dev/null +++ b/package/squeezelite/Config.in @@ -0,0 +1,42 @@ +config BR2_PACKAGE_SQUEEZELITE + bool "squeezelite" + depends on BR2_USE_WCHAR # flac + depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib + depends on BR2_USE_MMU # mpg123 + depends on !BR2_STATIC_LIBS # dlopen + select BR2_PACKAGE_ALSA_LIB + select BR2_PACKAGE_ALSA_LIB_MIXER + select BR2_PACKAGE_FLAC + select BR2_PACKAGE_LIBMAD + select BR2_PACKAGE_LIBVORBIS + select BR2_PACKAGE_FAAD2 + select BR2_PACKAGE_MPG123 + help + Logitech Media Server client + + https://code.google.com/p/squeezelite/ + +if BR2_PACKAGE_SQUEEZELITE + +config BR2_PACKAGE_SQUEEZELITE_FFMPEG + bool "Enable WMA and ALAC decoding" + default y + select BR2_PACKAGE_FFMPEG + depends on !BR2_nios2 # ffmpeg + +config BR2_PACKAGE_SQUEEZELITE_DSD + bool "Enable DSD decoding" + +config BR2_PACKAGE_SQUEEZELITE_RESAMPLE + bool "Enable resampling support" + select BR2_PACKAGE_LIBSOXR + +config BR2_PACKAGE_SQUEEZELITE_VISEXPORT + bool "Enable visualiser support" + +endif + +comment "squeezelite needs a toolchain w/ wchar, threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS \ + || BR2_STATIC_LIBS diff --git a/package/squeezelite/squeezelite.hash b/package/squeezelite/squeezelite.hash new file mode 100644 index 00000000000..1dbb4c155a6 --- /dev/null +++ b/package/squeezelite/squeezelite.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 0c844e7714d3f15325629c59ee75e6309763116e61a6b73486b502e2e5cce5fd squeezelite-v1.8.tar.gz diff --git a/package/squeezelite/squeezelite.mk b/package/squeezelite/squeezelite.mk new file mode 100644 index 00000000000..7a82f4a026e --- /dev/null +++ b/package/squeezelite/squeezelite.mk @@ -0,0 +1,42 @@ +################################################################################ +# +# squeezelite +# +################################################################################ + +SQUEEZELITE_VERSION = v1.8 +SQUEEZELITE_SITE = $(call github,robadenshi,squeezelite,$(SQUEEZELITE_VERSION)) +SQUEEZELITE_LICENSE = GPLv3 +SQUEEZELITE_LICENSE_FILES = LICENSE.txt +SQUEEZELITE_DEPENDENCIES = alsa-lib flac libmad libvorbis faad2 mpg123 +SQUEEZELITE_MAKE_OPTS = -DLINKALL + +ifeq ($(BR2_PACKAGE_SQUEEZELITE_FFMPEG),y) +SQUEEZELITE_DEPENDENCIES += ffmpeg +SQUEEZELITE_MAKE_OPTS += -DFFMPEG +endif + +ifeq ($(BR2_PACKAGE_SQUEEZELITE_DSD),y) +SQUEEZELITE_MAKE_OPTS += -DDSD +endif + +ifeq ($(BR2_PACKAGE_SQUEEZELITE_RESAMPLE),y) +SQUEEZELITE_DEPENDENCIES += libsoxr +SQUEEZELITE_MAKE_OPTS += -DRESAMPLE +endif + +ifeq ($(BR2_PACKAGE_SQUEEZELITE_VISEXPORT),y) +SQUEEZELITE_MAKE_OPTS += -DVISEXPORT +endif + +define SQUEEZELITE_BUILD_CMDS + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + OPTS="$(SQUEEZELITE_MAKE_OPTS)" -C $(@D) all +endef + +define SQUEEZELITE_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/squeezelite \ + $(TARGET_DIR)/usr/bin/squeezelite +endef + +$(eval $(generic-package)) diff --git a/package/squid/S97squid b/package/squid/S97squid index b30af5b9f5b..535b1d9622b 100755 --- a/package/squid/S97squid +++ b/package/squid/S97squid @@ -5,7 +5,7 @@ case "$1" in start) - echo -n "Starting squid: " + printf "Starting squid: " if [ ! -d /var/log/squid ]; then mkdir -p /var/log/squid chown squid:squid /var/log/squid @@ -15,19 +15,19 @@ case "$1" in ;; stop) - echo -n "Stopping squid: " + printf "Stopping squid: " /usr/sbin/squid -k shutdown [ $? = 0 ] && echo "OK" || echo "FAIL" ;; reload) - echo -n "Reloading squid configuration: " + printf "Reloading squid configuration: " /usr/sbin/squid -k reconfigure [ $? = 0 ] && echo "OK" || echo "FAIL" ;; restart) - echo -n "Restarting squid: " + printf "Restarting squid: " /usr/sbin/squid -k restart [ $? = 0 ] && echo "OK" || echo "FAIL" ;; diff --git a/package/squid/squid.hash b/package/squid/squid.hash index d5738c763da..106bde6ffa8 100644 --- a/package/squid/squid.hash +++ b/package/squid/squid.hash @@ -1,3 +1,3 @@ -# From http://www.squid-cache.org/Versions/v3/3.5/squid-3.5.6.tar.xz.asc -md5 93e18bd257857e35bb634ddb8a348563 squid-3.5.6.tar.xz -sha1 c5f3ab47e61a08fa6a8767d45befeffd7d26fd9f squid-3.5.6.tar.xz +# From http://www.squid-cache.org/Versions/v3/3.5/squid-3.5.15.tar.bz2.asc +md5 59d6732a4ebd3f63e2164d9847dc37c0 squid-3.5.15.tar.bz2 +sha1 72279380ea94aa731f5cf82f3fb50f9250f1692a squid-3.5.15.tar.bz2 diff --git a/package/squid/squid.mk b/package/squid/squid.mk index e201673730b..b4341ba4551 100644 --- a/package/squid/squid.mk +++ b/package/squid/squid.mk @@ -5,8 +5,8 @@ ################################################################################ SQUID_VERSION_MAJOR = 3.5 -SQUID_VERSION = $(SQUID_VERSION_MAJOR).6 -SQUID_SOURCE = squid-$(SQUID_VERSION).tar.xz +SQUID_VERSION = $(SQUID_VERSION_MAJOR).15 +SQUID_SOURCE = squid-$(SQUID_VERSION).tar.bz2 SQUID_SITE = http://www.squid-cache.org/Versions/v3/$(SQUID_VERSION_MAJOR) SQUID_LICENSE = GPLv2+ SQUID_LICENSE_FILES = COPYING @@ -41,12 +41,10 @@ SQUID_CONF_OPTS = \ --with-swapdir=/var/cache/squid/ \ --with-default-user=squid -# Atomics in Squid use __sync_add_and_fetch_8, i.e a 64 bits atomic -# operation. This atomic intrinsic is only available natively on -# 64-bit architectures that have atomic operations. On 32-bit -# architectures, it would be provided by libatomic, but Buildroot -# typically doesn't provide it. -ifeq ($(BR2_ARCH_HAS_ATOMICS)$(BR2_ARCH_IS_64),yy) +# Atomics in Squid use __sync built-ins on 4 and 8 bytes. However, the +# configure script tests them using AC_TRY_RUN, so we have to give +# some hints. +ifeq ($(BR2_TOOLCHAIN_HAS_SYNC_4)$(BR2_TOOLCHAIN_HAS_SYNC_8),yy) SQUID_CONF_ENV += squid_cv_gnu_atomics=yes else SQUID_CONF_ENV += squid_cv_gnu_atomics=no @@ -90,7 +88,7 @@ define SQUID_INSTALL_INIT_SYSV endef define SQUID_INSTALL_INIT_SYSTEMD - $(INSTALL) -D -m 0644 $(@D)/tools/squid.service \ + $(INSTALL) -D -m 0644 $(@D)/tools/systemd/squid.service \ $(TARGET_DIR)/usr/lib/systemd/system/squid.service mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants ln -sf ../../../..//usr/lib/systemd/system/squid.service \ diff --git a/package/sredird/0001-termio.patch b/package/sredird/0001-termio.patch new file mode 100644 index 00000000000..7c7c67f5a32 --- /dev/null +++ b/package/sredird/0001-termio.patch @@ -0,0 +1,20 @@ +Fix musl build + +Patch was inspired by +http://svnweb.freebsd.org/ports/head/comms/sredird/files/patch-sredird.c?revision=363168&view=markup +http://ftp.netbsd.org/pub/pkgsrc/current/pkgsrc/sysutils/sredird/patches/patch-aa +https://github.com/bitrig/bitrig-ports/blob/master/comms/sredird/patches/patch-sredird_c + +Signed-off-by: Bernd Kuhls + +diff -uNr sredird-2.2.2.org/sredird.c sredird-2.2.2/sredird.c +--- sredird-2.2.2.org/sredird.c 2005-08-12 16:10:46.000000000 +0200 ++++ sredird-2.2.2/sredird.c 2016-01-31 18:53:08.000000000 +0100 +@@ -110,7 +110,6 @@ + #include + #include + #include +-#include + #include + #include + #include diff --git a/package/sredird/Config.in b/package/sredird/Config.in index 463269a751c..d8c5ef9cafe 100644 --- a/package/sredird/Config.in +++ b/package/sredird/Config.in @@ -4,3 +4,5 @@ config BR2_PACKAGE_SREDIRD Sredird is a serial port redirector that is compliant with the RFC 2217 "Telnet Com Port Control Option" protocol. This protocol lets you share a serial port through the network. + + http://freecode.com/projects/sredird diff --git a/package/sredird/sredird.hash b/package/sredird/sredird.hash new file mode 100644 index 00000000000..63a419fc87c --- /dev/null +++ b/package/sredird/sredird.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 640c47dcd84b3b90640165a38eb336a675fdab06c14c09cae2f4a604cae560d3 sredird-2.2.2.tar.gz diff --git a/package/sredird/sredird.mk b/package/sredird/sredird.mk index ebd7122bab0..b564f1ac2a9 100644 --- a/package/sredird/sredird.mk +++ b/package/sredird/sredird.mk @@ -4,9 +4,8 @@ # ################################################################################ -SREDIRD_VERSION = 2.2.1-1.1 -SREDIRD_SOURCE = sredird_$(SREDIRD_VERSION).tar.gz -SREDIRD_SITE = http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/s/sredird +SREDIRD_VERSION = 2.2.2 +SREDIRD_SITE = http://www.ibiblio.org/pub/Linux/system/serial SREDIRD_LICENSE = GPLv2+ SREDIRD_LICENSE_FILES = COPYING diff --git a/package/sshfs/Config.in b/package/sshfs/Config.in index 7c821a583d7..31fef9fc86f 100644 --- a/package/sshfs/Config.in +++ b/package/sshfs/Config.in @@ -12,7 +12,7 @@ config BR2_PACKAGE_SSHFS help FUSE filesystem client based on the SSH File Transfer Protocol. - http://fuse.sourceforge.net/sshfs.html + https://github.com/libfuse/sshfs comment "sshfs needs a toolchain w/ wchar, threads, dynamic library" depends on BR2_USE_MMU diff --git a/package/sshfs/sshfs.hash b/package/sshfs/sshfs.hash index c8b0c00e3dc..16253e01437 100644 --- a/package/sshfs/sshfs.hash +++ b/package/sshfs/sshfs.hash @@ -1,2 +1,2 @@ -# Locally computed: -sha256 e9171452e5d0150b9c6a2158fd2e2dcefb5d5d03ba4d208949e00a3a46c6e63e sshfs-fuse-2.5.tar.gz +# Locally computed +sha256 e9171452e5d0150b9c6a2158fd2e2dcefb5d5d03ba4d208949e00a3a46c6e63e sshfs-fuse-2.5.tar.gz diff --git a/package/sshfs/sshfs.mk b/package/sshfs/sshfs.mk index 572f44e954b..f59f7eab17d 100644 --- a/package/sshfs/sshfs.mk +++ b/package/sshfs/sshfs.mk @@ -5,7 +5,7 @@ ################################################################################ SSHFS_VERSION = 2.5 -SSHFS_SITE = http://downloads.sourceforge.net/project/fuse/sshfs-fuse/$(SSHFS_VERSION) +SSHFS_SITE = https://github.com/libfuse/sshfs/releases/download/sshfs_$(subst .,_,$(SSHFS_VERSION)) SSHFS_SOURCE = sshfs-fuse-$(SSHFS_VERSION).tar.gz SSHFS_LICENSE = GPLv2 SSHFS_LICENSE_FILES = COPYING diff --git a/package/start-stop-daemon/0001-add-uclibc-alias-and-musl.patch b/package/start-stop-daemon/0001-add-uclibc-alias-and-musl.patch index 0b726d4290d..64dc00d72cf 100644 --- a/package/start-stop-daemon/0001-add-uclibc-alias-and-musl.patch +++ b/package/start-stop-daemon/0001-add-uclibc-alias-and-musl.patch @@ -1,26 +1,26 @@ Make linux-uclibcgnueabi an alias for linux-uclibceabi since it's what we use in buildroot toolchains. -Also add support for musl libc which is a backport from 1.17.x with -a slight tweak for musleabi (non-hf). +Slightly tweak musleabi to match the buildroot-used tuple. Signed-off-by: Gustavo Zacarias -diff -Nura dpkg-1.16.15.orig/ostable dpkg-1.16.15/ostable ---- dpkg-1.16.15.orig/ostable 2014-11-07 08:09:07.358304926 -0300 -+++ dpkg-1.16.15/ostable 2014-11-07 09:35:06.158580079 -0300 -@@ -14,8 +14,10 @@ +diff -Nura dpkg-1.18.3.orig/ostable dpkg-1.18.3/ostable +--- dpkg-1.18.3.orig/ostable 2015-10-15 08:05:04.471762555 -0300 ++++ dpkg-1.18.3/ostable 2015-10-15 08:11:05.206132648 -0300 +@@ -12,10 +12,10 @@ # system part of the output of the GNU config.guess script. # # -uclibceabi-linux linux-uclibceabi linux[^-]*-uclibceabi +uclibceabi-linux linux-uclibceabi linux[^-]*-uclibc.*eabi uclibc-linux linux-uclibc linux[^-]*-uclibc -+musleabihf-linux linux-musleabihf linux[^-]*-musleabihf + musleabihf-linux linux-musleabihf linux[^-]*-musleabihf +-musl-linux linux-musl linux[^-]*-musl +musl-linux linux-musl linux[^-]*-musl[^-]* gnueabihf-linux linux-gnueabihf linux[^-]*-gnueabihf gnueabi-linux linux-gnueabi linux[^-]*-gnueabi gnuabin32-linux linux-gnuabin32 linux[^-]*-gnuabin32 -@@ -33,6 +35,6 @@ +@@ -34,6 +34,6 @@ bsd-netbsd netbsd netbsd[^-]* bsd-openbsd openbsd openbsd[^-]* sysv-solaris solaris solaris[^-]* @@ -28,15 +28,3 @@ diff -Nura dpkg-1.16.15.orig/ostable dpkg-1.16.15/ostable +uclibceabi-uclinux uclinux-uclibceabi uclinux[^-]*-uclibc.*eabi uclibc-uclinux uclinux-uclibc uclinux[^-]*(-uclibc.*)? tos-mint mint mint[^-]* -diff -Nura dpkg-1.16.15.orig/triplettable dpkg-1.16.15/triplettable ---- dpkg-1.16.15.orig/triplettable 2014-11-07 08:09:07.345304482 -0300 -+++ dpkg-1.16.15/triplettable 2014-11-07 09:35:29.098364036 -0300 -@@ -5,6 +5,8 @@ - # - uclibceabi-linux-arm uclibc-linux-armel - uclibc-linux- uclibc-linux- -+musleabihf-linux-arm musl-linux-armhf -+musl-linux- musl-linux- - gnueabihf-linux-arm armhf - gnueabi-linux-arm armel - gnuabin32-linux-mips64el mipsn32el diff --git a/package/start-stop-daemon/start-stop-daemon.hash b/package/start-stop-daemon/start-stop-daemon.hash index e3ab29fd841..a05b9a06644 100644 --- a/package/start-stop-daemon/start-stop-daemon.hash +++ b/package/start-stop-daemon/start-stop-daemon.hash @@ -1,2 +1,2 @@ -# From http://ftp.de.debian.org/debian/pool/main/d/dpkg/dpkg_1.16.15.dsc -sha256 92bca9901ba2d9300be42f6de8dbea59b8367a918a2abeeb47d2176c9cf86b55 dpkg_1.16.15.tar.xz +# From http://ftp.de.debian.org/debian/pool/main/d/dpkg/dpkg_1.18.4.dsc +sha256 fe89243868888ce715bf45861f26264f767d4e4dbd0d6f1a26ce60bbbbf106da dpkg_1.18.4.tar.xz diff --git a/package/start-stop-daemon/start-stop-daemon.mk b/package/start-stop-daemon/start-stop-daemon.mk index 5df44d4cfbe..e0ef6c992ce 100644 --- a/package/start-stop-daemon/start-stop-daemon.mk +++ b/package/start-stop-daemon/start-stop-daemon.mk @@ -7,9 +7,9 @@ # Debian start-stop-daemon is part of dpkg. Since start-stop-daemon is the only # interesting tool in it, we call the buildroot package start-stop-daemon. -START_STOP_DAEMON_VERSION = 1.16.15 +START_STOP_DAEMON_VERSION = 1.18.4 START_STOP_DAEMON_SOURCE = dpkg_$(START_STOP_DAEMON_VERSION).tar.xz -START_STOP_DAEMON_SITE = http://snapshot.debian.org/archive/debian/20140616T044945Z/pool/main/d/dpkg +START_STOP_DAEMON_SITE = http://snapshot.debian.org/archive/debian/20151225T154922Z/pool/main/d/dpkg START_STOP_DAEMON_CONF_OPTS = \ --disable-dselect \ --disable-update-alternatives \ @@ -17,7 +17,8 @@ START_STOP_DAEMON_CONF_OPTS = \ --exec-prefix=/ START_STOP_DAEMON_CONF_ENV = \ dpkg_cv_va_copy=yes \ - dpkg_cv_c99_snprintf=yes + dpkg_cv_c99_snprintf=yes \ + DPKG_DEVEL_MODE=1 START_STOP_DAEMON_DEPENDENCIES = host-pkgconf \ $(if $(BR2_PACKAGE_BUSYBOX),busybox) # Patching m4/dpkg-arch.m4 diff --git a/package/strace/0001-arc-metag-nios2-or1k-tile-fix-build.patch b/package/strace/0001-arc-metag-nios2-or1k-tile-fix-build.patch new file mode 100644 index 00000000000..0d81b590817 --- /dev/null +++ b/package/strace/0001-arc-metag-nios2-or1k-tile-fix-build.patch @@ -0,0 +1,104 @@ +From d83bcfa9a2977c037c638ae09e561f554ab19681 Mon Sep 17 00:00:00 2001 +From: Alexey Brodkin +Date: Sat, 26 Dec 2015 00:13:36 +0300 +Subject: [PATCH] arc, metag, nios2, or1k, tile: fix build + +Fix build regression introduced by commit +34683e3926d8c2daa368afb805da422ee7043396. + +* linux/32/syscallent.h: Add sys_ prefix to ARCH_mmap and mmap. +* linux/arc/syscallent.h: Add sys_ prefix to ARCH_mmap and mmap_pgoff. +* linux/nios2/syscallent.h: Likewise. +* linux/or1k/syscallent.h: Likewise. +* linux/tile/syscallent1.h: Add sys_ prefix to ARCH_mmap and sys_mmap_4koff. +* pathtrace.c (pathtrace_match): Handle SEN_ARCH_mmap. + +This is a back-port of upstream commit +http://sourceforge.net/p/strace/code/ci/dd1a80c8d213eed95fe55b7ebcb07ee165dd8e4b/ + +It should be removed upon the next bump of strace version. + +Signed-off-by: Alexey Brodkin +--- + linux/32/syscallent.h | 6 +++--- + linux/arc/syscallent.h | 2 +- + linux/nios2/syscallent.h | 2 +- + linux/or1k/syscallent.h | 2 +- + linux/tile/syscallent1.h | 2 +- + pathtrace.c | 1 + + 6 files changed, 8 insertions(+), 7 deletions(-) + +diff --git a/linux/32/syscallent.h b/linux/32/syscallent.h +index 5f997e7..e6f895c 100644 +--- a/linux/32/syscallent.h ++++ b/linux/32/syscallent.h +@@ -1,5 +1,5 @@ +-#ifndef ARCH_mmap +-# define ARCH_mmap mmap ++#ifndef sys_ARCH_mmap ++# define sys_ARCH_mmap sys_mmap + #endif + [ 0] = { 2, 0, SEN(io_setup), "io_setup" }, + [ 1] = { 1, 0, SEN(io_destroy), "io_destroy" }, +@@ -276,5 +276,5 @@ + [283] = { 2, 0, SEN(membarrier), "membarrier", }, + [284] = { 3, TM, SEN(mlock2), "mlock2" }, + +-#undef ARCH_mmap ++#undef sys_ARCH_mmap + #undef ARCH_WANT_SYNC_FILE_RANGE2 +diff --git a/linux/arc/syscallent.h b/linux/arc/syscallent.h +index 5847dc4..1100008 100644 +--- a/linux/arc/syscallent.h ++++ b/linux/arc/syscallent.h +@@ -1,4 +1,4 @@ +-#define ARCH_mmap mmap_pgoff ++#define sys_ARCH_mmap sys_mmap_pgoff + #include "32/syscallent.h" + [244] = { 3, 0, SEN(printargs), "arc_cacheflush"}, + [245] = { 1, 0, SEN(printargs), "arc_settls" }, +diff --git a/linux/nios2/syscallent.h b/linux/nios2/syscallent.h +index 8a4b70e..01efe3a 100644 +--- a/linux/nios2/syscallent.h ++++ b/linux/nios2/syscallent.h +@@ -1,4 +1,4 @@ +-#define ARCH_mmap mmap_pgoff ++#define sys_ARCH_mmap sys_mmap_pgoff + #include "32/syscallent.h" + [244] = {4, 0, SEN(cacheflush), "cacheflush"}, + [245 ... 259] = { }, +diff --git a/linux/or1k/syscallent.h b/linux/or1k/syscallent.h +index ed84b3b..351fe25 100644 +--- a/linux/or1k/syscallent.h ++++ b/linux/or1k/syscallent.h +@@ -1,4 +1,4 @@ +-#define ARCH_mmap mmap_pgoff ++#define sys_ARCH_mmap sys_mmap_pgoff + #include "32/syscallent.h" + [244] = { 3, NF, SEN(or1k_atomic), "or1k_atomic" }, + [245 ... 259] = { }, +diff --git a/linux/tile/syscallent1.h b/linux/tile/syscallent1.h +index c86f059..28dbab4 100644 +--- a/linux/tile/syscallent1.h ++++ b/linux/tile/syscallent1.h +@@ -1,4 +1,4 @@ +-#define ARCH_mmap mmap_4koff ++#define sys_ARCH_mmap sys_mmap_4koff + #define ARCH_WANT_SYNC_FILE_RANGE2 1 + #include "32/syscallent.h" + [244] = { 1, 0, SEN(printargs), "cmpxchg_badaddr" }, +diff --git a/pathtrace.c b/pathtrace.c +index d530ec2..e72cdf7 100644 +--- a/pathtrace.c ++++ b/pathtrace.c +@@ -216,6 +216,7 @@ pathtrace_match(struct tcb *tcp) + case SEN_mmap: + case SEN_mmap_4koff: + case SEN_mmap_pgoff: ++ case SEN_ARCH_mmap: + /* x, x, x, x, fd */ + return fdmatch(tcp, tcp->u_arg[4]); + +-- +2.4.3 + diff --git a/package/strace/0001-linux-aarch64-add-missing-header.patch b/package/strace/0001-linux-aarch64-add-missing-header.patch deleted file mode 100644 index 2b747753c52..00000000000 --- a/package/strace/0001-linux-aarch64-add-missing-header.patch +++ /dev/null @@ -1,25 +0,0 @@ -From e1e838360288805b6cb561c21e4e7a1ea32e7772 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Sat, 4 Apr 2015 00:49:52 +0200 -Subject: [PATCH] linux/aarch64: add missing header. - -linux/aarch64/arch_regs.h file is missing in the strace-4.10.tar.xz archive. -Add the one from the release 4.10 tag. - -Signed-off-by: Romain Naour ---- - linux/aarch64/arch_regs.h | 2 ++ - 1 file changed, 2 insertions(+) - create mode 100644 linux/aarch64/arch_regs.h - -diff --git a/linux/aarch64/arch_regs.h b/linux/aarch64/arch_regs.h -new file mode 100644 -index 0000000..9a5e33e ---- /dev/null -+++ b/linux/aarch64/arch_regs.h -@@ -0,0 +1,2 @@ -+extern uint64_t *const aarch64_sp_ptr; -+extern uint32_t *const arm_sp_ptr; --- -1.9.3 - diff --git a/package/strace/Config.in b/package/strace/Config.in index bdd76382c8c..bbb582ad530 100644 --- a/package/strace/Config.in +++ b/package/strace/Config.in @@ -1,6 +1,5 @@ config BR2_PACKAGE_STRACE bool "strace" - depends on !BR2_nios2 help A useful diagnostic, instructional, and debugging tool. Allows you to track what system calls a program makes diff --git a/package/strace/strace.hash b/package/strace/strace.hash index a2a10812119..f47d51b059d 100644 --- a/package/strace/strace.hash +++ b/package/strace/strace.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/strace/files/strace/4.10/ -md5 107a5be455493861189e9b57a3a51912 strace-4.10.tar.xz -sha1 5c3ec4c5a9eeb440d7ec70514923c2e7e7f9ab6c strace-4.10.tar.xz +# From http://sourceforge.net/projects/strace/files/strace/4.11/ +md5 a15d2555a7febb56d00c6e1a51c655dc strace-4.11.tar.xz +sha1 8fd717dc3c51b69fde51ce0bdb066404a678363c strace-4.11.tar.xz diff --git a/package/strace/strace.mk b/package/strace/strace.mk index 2df2ec68458..e25428e653f 100644 --- a/package/strace/strace.mk +++ b/package/strace/strace.mk @@ -4,7 +4,7 @@ # ################################################################################ -STRACE_VERSION = 4.10 +STRACE_VERSION = 4.11 STRACE_SOURCE = strace-$(STRACE_VERSION).tar.xz STRACE_SITE = http://downloads.sourceforge.net/project/strace/strace/$(STRACE_VERSION) STRACE_LICENSE = BSD-3c diff --git a/package/stress-ng/Config.in b/package/stress-ng/Config.in new file mode 100644 index 00000000000..1e475b19a01 --- /dev/null +++ b/package/stress-ng/Config.in @@ -0,0 +1,25 @@ +config BR2_PACKAGE_STRESS_NG + bool "stress-ng" + depends on BR2_USE_MMU # fork() + # disabled on musl: stress-malloc.c needs mallopt() and M_MMAP_THRESHOLD + # disabled on uClibc: stress-aio.c needs aio.h + depends on BR2_TOOLCHAIN_USES_GLIBC + # perf.c needs PERF_COUNT_HW_REF_CPU_CYCLES + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 + depends on !BR2_microblaze # keyutils + depends on !BR2_STATIC_LIBS # keyutils + select BR2_PACKAGE_KEYUTILS # stress-key.c needs keyutils.h + select BR2_PACKAGE_ATTR # stress-xattr.c needs xattr.h + help + stress-ng will stress test a computer system in various + selectable ways. It was designed to exercise various physical + subsystems of a computer as well as the various operating + system kernel interfaces. + + http://kernel.ubuntu.com/~cking/stress-ng/ + +comment "stress-ng needs a glibc toolchain w/ dynamic library, headers >= 3.3" + depends on !BR2_microblaze + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3 \ + || !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/stress-ng/stress-ng.hash b/package/stress-ng/stress-ng.hash new file mode 100644 index 00000000000..497930397f0 --- /dev/null +++ b/package/stress-ng/stress-ng.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 9d17dffafdf8dd71eb5c191973b65d4eb2964ecc31f1d01ad188fd03a0c49f6c stress-ng-0.04.16.tar.gz diff --git a/package/stress-ng/stress-ng.mk b/package/stress-ng/stress-ng.mk new file mode 100644 index 00000000000..114c4273815 --- /dev/null +++ b/package/stress-ng/stress-ng.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# stress-ng +# +################################################################################ + +STRESS_NG_VERSION = 0.04.16 +STRESS_NG_SITE = http://kernel.ubuntu.com/~cking/tarballs/stress-ng +STRESS_NG_LICENSE = GPLv2+ +STRESS_NG_LICENSE_FILES = COPYING + +STRESS_NG_DEPENDENCIES = attr keyutils + +define STRESS_NG_BUILD_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +define STRESS_NG_INSTALL_TARGET_CMDS + $(TARGET_CONFIGURE_OPTS) $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/strongswan/Config.in b/package/strongswan/Config.in index b26f1c728b7..cada78bb70d 100644 --- a/package/strongswan/Config.in +++ b/package/strongswan/Config.in @@ -1,11 +1,12 @@ -comment "strongswan needs a toolchain w/ threads" +comment "strongswan needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS menuconfig BR2_PACKAGE_STRONGSWAN bool "strongswan" depends on BR2_USE_MMU # fork() depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS help strongSwan is an OpenSource IPsec implementation for the Linux operating system. It is based on the discontinued diff --git a/package/strongswan/strongswan.hash b/package/strongswan/strongswan.hash index 8b31de41cf3..5a353f15227 100644 --- a/package/strongswan/strongswan.hash +++ b/package/strongswan/strongswan.hash @@ -1,2 +1,4 @@ -# From http://download.strongswan.org/strongswan-5.3.2.tar.bz2.md5 -md5 fab014be1477ef4ebf9a765e10f8802c strongswan-5.3.2.tar.bz2 +# From http://download.strongswan.org/strongswan-5.3.5.tar.bz2.md5 +md5 a2f9ea185f27e7f8413d4cd2ee61efe4 strongswan-5.3.5.tar.bz2 +# Calculated based on the hash above +sha256 2c84b663da652b1ff180a1a73c24a3d7b9fc4b9b8ba6bd07f94a1e33092e6350 strongswan-5.3.5.tar.bz2 diff --git a/package/strongswan/strongswan.mk b/package/strongswan/strongswan.mk index 47a28a3407d..e435c3ad7d6 100644 --- a/package/strongswan/strongswan.mk +++ b/package/strongswan/strongswan.mk @@ -4,7 +4,7 @@ # ################################################################################ -STRONGSWAN_VERSION = 5.3.2 +STRONGSWAN_VERSION = 5.3.5 STRONGSWAN_SOURCE = strongswan-$(STRONGSWAN_VERSION).tar.bz2 STRONGSWAN_SITE = http://download.strongswan.org STRONGSWAN_LICENSE = GPLv2+ diff --git a/package/stunnel/S50stunnel b/package/stunnel/S50stunnel index 5827fe0f8c8..04637b694c0 100644 --- a/package/stunnel/S50stunnel +++ b/package/stunnel/S50stunnel @@ -1,13 +1,13 @@ #!/bin/sh start() { - echo -n "Starting stunnel: " + printf "Starting stunnel: " start-stop-daemon -S -q -p /var/run/stunnel.pid --exec /usr/bin/stunnel [ $? = 0 ] && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping stunnel: " + printf "Stopping stunnel: " start-stop-daemon -K -q -p /var/run/stunnel.pid [ $? = 0 ] && echo "OK" || echo "FAIL" } diff --git a/package/stunnel/stunnel.hash b/package/stunnel/stunnel.hash index 5e75b2e5431..1801e61c7a0 100644 --- a/package/stunnel/stunnel.hash +++ b/package/stunnel/stunnel.hash @@ -1,2 +1,2 @@ -# From http://www.stunnel.org/pipermail/stunnel-users/2015-July/005180.html -sha256 2aef568b1955f5e233f6a8e17ebce3d30755f1be44c813f5a48e621f785596e3 stunnel-5.21.tar.gz +# From http://www.stunnel.org/pipermail/stunnel-announce/2016-January/000117.html +sha256 43909625403ea634fa7cb8399d58faf8e7f11c1b7b29097491469951f56df551 stunnel-5.29.tar.gz diff --git a/package/stunnel/stunnel.mk b/package/stunnel/stunnel.mk index 5e9cd726ec7..8ea71b88969 100644 --- a/package/stunnel/stunnel.mk +++ b/package/stunnel/stunnel.mk @@ -5,13 +5,13 @@ ################################################################################ STUNNEL_VERSION_MAJOR = 5 -STUNNEL_VERSION = $(STUNNEL_VERSION_MAJOR).21 +STUNNEL_VERSION = $(STUNNEL_VERSION_MAJOR).29 STUNNEL_SITE = http://www.usenix.org.uk/mirrors/stunnel/archive/$(STUNNEL_VERSION_MAJOR).x STUNNEL_DEPENDENCIES = openssl STUNNEL_CONF_OPTS = --with-ssl=$(STAGING_DIR)/usr --with-threads=fork \ --disable-libwrap STUNNEL_CONF_ENV = \ - ax_cv_check_cflags___fstack_protector=$(if $(BR2_ENABLE_SSP),yes,no) + ax_cv_check_cflags___fstack_protector=$(if $(BR2_TOOLCHAIN_HAS_SSP),yes,no) STUNNEL_LICENSE = GPLv2+ STUNNEL_LICENSE_FILES = COPYING COPYRIGHT.GPL diff --git a/package/subversion/0001-dont-mangle-cflags.patch b/package/subversion/0001-dont-mangle-cflags.patch index 33370c549ed..adb8b8e9331 100644 --- a/package/subversion/0001-dont-mangle-cflags.patch +++ b/package/subversion/0001-dont-mangle-cflags.patch @@ -1,28 +1,24 @@ -[PATCH] configure: don't mangle CFLAGS +[PATCH] configure.ac: don't mangle CFLAGS Ensure that the sed expression to strip debugging options from CFLAGS doesn't mangle flags like -mfloat-gprs=double, breaking the build. -Patch configure instead of configure.ac as subversion currently doesn't -cleanly autoreconf. +[Vincent: adapt to 1.9.2 and patch configure.ac instead of configure] Signed-off-by: Peter Korsgaard ---- - configure | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) +Signed-off-by: Vicente Olivert Riera -Index: subversion-1.7.18/configure -=================================================================== ---- subversion-1.7.18.orig/configure -+++ subversion-1.7.18/configure -@@ -19798,8 +19798,8 @@ - CFLAGS="$CFLAGS -DSVN_DEBUG -DAP_DEBUG" +diff -Nrup a/configure.ac b/configure.ac +--- a/configure.ac 2015-07-27 00:03:10.000000000 +0100 ++++ b/configure.ac 2015-09-28 10:33:39.175048493 +0100 +@@ -1110,8 +1110,8 @@ if test "$enable_debugging" = "yes" ; th CXXFLAGS="$CXXFLAGS -DSVN_DEBUG -DAP_DEBUG" elif test "$enable_debugging" = "no" ; then -- CFLAGS="`echo $CFLAGS' ' | $SED -e 's/-g[0-9] //g' | $SED -e 's/-g//g'`" -- CXXFLAGS="`echo $CXXFLAGS' ' | $SED -e 's/-g[0-9] //g' | $SED -e 's/-g//g'`" -+ CFLAGS="`echo $CFLAGS' ' | $SED -e 's/-g[0-9]* //g'`" -+ CXXFLAGS="`echo $CXXFLAGS' ' | $SED -e 's/-g[0-9]* //g'`" - CFLAGS="$CFLAGS -DNDEBUG" - CXXFLAGS="$CXXFLAGS -DNDEBUG" - # elif test "$enable_debugging" = "maybe" ; then + AC_MSG_NOTICE([Disabling debugging]) +- CFLAGS=["`echo $CFLAGS' ' | $SED -e 's/-g[0-9] //g' -e 's/-g //g'`"] +- CXXFLAGS=["`echo $CXXFLAGS' ' | $SED -e 's/-g[0-9] //g' -e 's/-g //g'`"] ++ CFLAGS=["`echo $CFLAGS' ' | $SED -e 's/-g[0-9]* //g'`"] ++ CXXFLAGS=["`echo $CXXFLAGS' ' | $SED -e 's/-g[0-9]* //g'`"] + dnl Compile with NDEBUG to get rid of assertions + CFLAGS="$CFLAGS -DNDEBUG" + CXXFLAGS="$CXXFLAGS -DNDEBUG" diff --git a/package/subversion/0002-disable-macos-specific-features.patch b/package/subversion/0002-disable-macos-specific-features.patch new file mode 100644 index 00000000000..b960ca2937a --- /dev/null +++ b/package/subversion/0002-disable-macos-specific-features.patch @@ -0,0 +1,23 @@ +Disable Mac OS specific features + +We only support Linux so we don't need them. Also, they cause a build +failure when cross compiling: + +checking for Mach-O dynamic module iteration functions +error: cannot run test program while cross compiling + +Signed-off-by: Vicente Olivert Riera + +diff -Nrup a/configure.ac b/configure.ac +--- a/configure.ac 2015-09-28 10:33:39.175048493 +0100 ++++ b/configure.ac 2015-09-28 10:47:53.921428143 +0100 +@@ -467,9 +467,6 @@ fi + + dnl Mac OS specific features ------------------- + +-SVN_LIB_MACHO_ITERATE +-SVN_LIB_MACOS_PLIST +-SVN_LIB_MACOS_KEYCHAIN + + dnl APR_HAS_DSO ------------------- + diff --git a/package/subversion/Config.in b/package/subversion/Config.in index 776dad5bf9b..ffe424a7e23 100644 --- a/package/subversion/Config.in +++ b/package/subversion/Config.in @@ -6,11 +6,13 @@ config BR2_PACKAGE_SUBVERSION depends on !BR2_STATIC_LIBS depends on BR2_USE_MMU # apr select BR2_PACKAGE_EXPAT - select BR2_PACKAGE_NEON - select BR2_PACKAGE_NEON_XML select BR2_PACKAGE_ZLIB select BR2_PACKAGE_SQLITE help Subversion is an open source version control system http://subversion.apache.org/ + +comment "subversion needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on BR2_STATIC_LIBS diff --git a/package/subversion/subversion.hash b/package/subversion/subversion.hash index b6a0e886171..4f0a4460ec5 100644 --- a/package/subversion/subversion.hash +++ b/package/subversion/subversion.hash @@ -1,2 +1,2 @@ -# From https://mail-archives.apache.org/mod_mbox/subversion-dev/201412.mbox/%3C548F4EEB.7030601@apache.org%3E -sha1 bb3cd135bbd856e7f0f2d59313f075b9bbec9848 subversion-1.7.19.tar.gz +# From http://subversion.apache.org/download.cgi#recommended-release +sha1 27e8df191c92095f48314a415194ec37c682cbcf subversion-1.9.3.tar.bz2 diff --git a/package/subversion/subversion.mk b/package/subversion/subversion.mk index 3c6c3f0f735..e9aa0ae33c4 100644 --- a/package/subversion/subversion.mk +++ b/package/subversion/subversion.mk @@ -4,24 +4,23 @@ # ################################################################################ -SUBVERSION_VERSION = 1.7.19 -SUBVERSION_SITE = http://archive.apache.org/dist/subversion +SUBVERSION_VERSION = 1.9.3 +SUBVERSION_SOURCE = subversion-$(SUBVERSION_VERSION).tar.bz2 +SUBVERSION_SITE = http://mirror.catn.com/pub/apache/subversion SUBVERSION_LICENSE = Apache-2.0 SUBVERSION_LICENSE_FILES = LICENSE -SUBVERSION_DEPENDENCIES = host-pkgconf apr apr-util expat neon zlib sqlite +SUBVERSION_DEPENDENCIES = host-pkgconf apr apr-util expat zlib sqlite +SUBVERSION_AUTORECONF = YES SUBVERSION_CONF_OPTS = \ --with-expat=$(STAGING_DIR)/usr/include:$(STAGING_DIR)/usr/lib: \ --with-apr=$(STAGING_DIR)/usr \ --with-apr-util=$(STAGING_DIR)/usr \ --with-zlib=$(STAGING_DIR)/usr \ - --with-neon=$(STAGING_DIR)/usr \ - --without-gssapi \ --without-serf \ --without-apxs \ - --without-berkeyley-db \ + --without-berkeley-db \ --without-sasl \ --without-gnome-keyring \ - --without-ssl \ --without-libmagic $(eval $(autotools-package)) diff --git a/package/sudo/0001-musl-fix-missing-header.patch b/package/sudo/0001-musl-fix-missing-header.patch deleted file mode 100644 index e3681b2fcc3..00000000000 --- a/package/sudo/0001-musl-fix-missing-header.patch +++ /dev/null @@ -1,19 +0,0 @@ -Header sys/types.h is needed for id_t - -Patch reported as bug upstream: -http://bugzilla.sudo.ws/show_bug.cgi?id=711 - -Signed-off-by: Jörg Krause - -diff -purN sudo-1.8.14p3.orig/include/sudo_util.h sudo-1.8.14p3/include/sudo_util.h ---- sudo-1.8.14p3.orig/include/sudo_util.h 2015-07-22 14:22:49.000000000 +0200 -+++ sudo-1.8.14p3/include/sudo_util.h 2015-08-01 09:35:15.077909614 +0200 -@@ -23,6 +23,8 @@ - # include "compat/stdbool.h" - #endif /* HAVE_STDBOOL_H */ - -+#include -+ - /* - * Macros for operating on struct timeval. - */ diff --git a/package/sudo/sudo.hash b/package/sudo/sudo.hash index cf96417bd5b..4c2431f13d2 100644 --- a/package/sudo/sudo.hash +++ b/package/sudo/sudo.hash @@ -1,2 +1,2 @@ -# From http://www.sudo.ws/download.html -sha256 a8a697cbb113859058944850d098464618254804cf97961dee926429f00a1237 sudo-1.8.14p3.tar.gz +# From: http://www.sudo.ws/download.html +sha256 4316381708324da8b6cb151f655c1a11855207c7c02244d8ffdea5104d7cc308 sudo-1.8.15.tar.gz diff --git a/package/sudo/sudo.mk b/package/sudo/sudo.mk index 4327c8a2194..f28312ace1a 100644 --- a/package/sudo/sudo.mk +++ b/package/sudo/sudo.mk @@ -4,7 +4,7 @@ # ################################################################################ -SUDO_VERSION = 1.8.14p3 +SUDO_VERSION = 1.8.15 SUDO_SITE = http://www.sudo.ws/sudo/dist SUDO_LICENSE = ISC BSD-3c SUDO_LICENSE_FILES = doc/LICENSE diff --git a/package/sunxi-tools/sunxi-tools.hash b/package/sunxi-tools/sunxi-tools.hash new file mode 100644 index 00000000000..c0499cd0acd --- /dev/null +++ b/package/sunxi-tools/sunxi-tools.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 2aa0afc21476ee9b03acff20a19f32c522106e61bcbfa1a9463168fe90a85fc5 sunxi-tools-v1.3.tar.gz diff --git a/package/sunxi-tools/sunxi-tools.mk b/package/sunxi-tools/sunxi-tools.mk index 2dfd4961f97..4c497c7ba44 100644 --- a/package/sunxi-tools/sunxi-tools.mk +++ b/package/sunxi-tools/sunxi-tools.mk @@ -4,33 +4,32 @@ # ################################################################################ -SUNXI_TOOLS_VERSION = v1.2 +SUNXI_TOOLS_VERSION = v1.3 SUNXI_TOOLS_SITE = $(call github,linux-sunxi,sunxi-tools,$(SUNXI_TOOLS_VERSION)) SUNXI_TOOLS_LICENSE = GPLv2+ SUNXI_TOOLS_LICENSE_FILES = COPYING -HOST_SUNXI_TOOLS_DEPENDENCIES = host-libusb +HOST_SUNXI_TOOLS_DEPENDENCIES = host-libusb host-pkgconf FEX2BIN = $(HOST_DIR)/usr/bin/fex2bin define HOST_SUNXI_TOOLS_BUILD_CMDS - $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) \ + $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) PREFIX=$(HOST_DIR)/usr \ CFLAGS="$(HOST_CFLAGS) -std=c99 -D_POSIX_C_SOURCE=200112L -Iinclude/" \ - -C $(@D) + -C $(@D) tools endef define HOST_SUNXI_TOOLS_INSTALL_CMDS - for i in fexc bin2fex fex2bin bootinfo fel pio; do \ - $(INSTALL) -D -m 0755 $(@D)/$$i $(HOST_DIR)/usr/bin/$$i ; \ - done + $(HOST_MAKE_ENV) $(MAKE) $(HOST_CONFIGURE_OPTS) PREFIX=$(HOST_DIR)/usr \ + -C $(@D) install-tools endef define SUNXI_TOOLS_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ + $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) PREFIX=/usr \ CFLAGS="$(TARGET_CFLAGS) -std=c99 -D_POSIX_C_SOURCE=200112L -Iinclude/" \ - -C $(@D) nand-part + -C $(@D) sunxi-nand-part endef define SUNXI_TOOLS_INSTALL_TARGET_CMDS - $(INSTALL) -D -m 0755 $(@D)/nand-part $(TARGET_DIR)/usr/bin/nand-part + $(INSTALL) -D -m 0755 $(@D)/sunxi-nand-part $(TARGET_DIR)/usr/bin/sunxi-nand-part endef $(eval $(generic-package)) diff --git a/package/supervisor/S99supervisord b/package/supervisor/S99supervisord index 0856d65a5df..921dcf63334 100755 --- a/package/supervisor/S99supervisord +++ b/package/supervisor/S99supervisord @@ -4,12 +4,12 @@ mkdir -p /var/log/supervisor case "$1" in start) - echo -n "Starting supervisord: " + printf "Starting supervisord: " start-stop-daemon -S -q -p /var/run/supervisord.pid --exec /usr/bin/supervisord echo "done" ;; stop) - echo -n "Stopping supervisord: " + printf "Stopping supervisord: " start-stop-daemon -K -q -p /var/run/supervisord.pid echo "done" ;; diff --git a/package/supervisor/supervisor.hash b/package/supervisor/supervisor.hash new file mode 100644 index 00000000000..03f337e7d04 --- /dev/null +++ b/package/supervisor/supervisor.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 e32c546fe8d2a6e079ec4819c49fd24534d4075a58af39118d04367918b3c282 supervisor-3.1.3.tar.gz diff --git a/package/supervisor/supervisor.mk b/package/supervisor/supervisor.mk index a6a4731c860..4c62b66feb3 100644 --- a/package/supervisor/supervisor.mk +++ b/package/supervisor/supervisor.mk @@ -4,9 +4,10 @@ # ################################################################################ -SUPERVISOR_VERSION = 3.0a12 +SUPERVISOR_VERSION = 3.1.3 SUPERVISOR_SITE = http://pypi.python.org/packages/source/s/supervisor -SUPERVISOR_LICENSE_FILES = LICENSES.txt +SUPERVISOR_LICENSE = BSD-like, rdflib (http_client.py), PSF (medusa), ZPL-2.1 +SUPERVISOR_LICENSE_FILES = COPYRIGHT.txt LICENSES.txt SUPERVISOR_SETUP_TYPE = setuptools define SUPERVISOR_INSTALL_CONF_FILES diff --git a/package/swig/swig.hash b/package/swig/swig.hash index 98baaa26e79..62e3d20f680 100644 --- a/package/swig/swig.hash +++ b/package/swig/swig.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 65e13f22a60cecd7279c59882ff8ebe1ffe34078e85c602821a541817a4317f7 swig-2.0.12.tar.gz +sha256 06dc8816a225667ce1eee545af3caf87e1bbaa379c32838d4cea53152514348d swig-3.0.7.tar.gz diff --git a/package/swig/swig.mk b/package/swig/swig.mk index 3f3ab2ff0c6..e4bd64cd3dc 100644 --- a/package/swig/swig.mk +++ b/package/swig/swig.mk @@ -4,28 +4,29 @@ # ################################################################################ -SWIG_VERSION_MAJOR = 2.0 -SWIG_VERSION = $(SWIG_VERSION_MAJOR).12 +SWIG_VERSION_MAJOR = 3.0 +SWIG_VERSION = $(SWIG_VERSION_MAJOR).7 SWIG_SITE = http://downloads.sourceforge.net/project/swig/swig/swig-$(SWIG_VERSION) SWIG_DEPENDENCIES = host-bison HOST_SWIG_CONF_OPTS = \ --without-pcre \ --disable-ccache \ --without-octave -SWIG_LICENSE = GPLv3+ BSD-2c BSD-3c +SWIG_LICENSE = GPLv3+, BSD-2c, BSD-3c SWIG_LICENSE_FILES = LICENSE LICENSE-GPL LICENSE-UNIVERSITIES -# CMake looks first at swig2.0 and then swig. However, when doing the -# search, it will look into the PATH for swig2.0 first, and then for -# swig. While the PATH contains first our $(HOST_DIR)/usr/bin, it also -# contains /usr/bin and other system directories. Therefore, if there -# is an installed swig2.0 on the system, it will get the preference -# over the swig installed in $(HOST_DIR)/usr/bin, which isn't nice. To -# prevent this from happening we create a symbolic link swig2.0 -> -# swig, so that our swig always gets used. +# CMake looks first at swig3.0, then swig2.0 and then swig. However, +# when doing the search, it will look into the PATH for swig2.0 first, +# and then for swig. +# While the PATH contains first our $(HOST_DIR)/usr/bin, it also contains +# /usr/bin and other system directories. Therefore, if there is an +# installed swig3.0 on the system, it will get the preference over the +# swig installed in $(HOST_DIR)/usr/bin, which isn't nice. To prevent +# this from happening we create a symbolic link swig3.0 -> swig, so that +# our swig always gets used. define HOST_SWIG_INSTALL_SYMLINK - ln -fs $(HOST_DIR)/usr/bin/swig $(HOST_DIR)/usr/bin/swig$(SWIG_VERSION_MAJOR) + ln -fs swig $(HOST_DIR)/usr/bin/swig$(SWIG_VERSION_MAJOR) endef HOST_SWIG_POST_INSTALL_HOOKS += HOST_SWIG_INSTALL_SYMLINK diff --git a/package/swupdate/Config.in b/package/swupdate/Config.in new file mode 100644 index 00000000000..f475b8553c4 --- /dev/null +++ b/package/swupdate/Config.in @@ -0,0 +1,56 @@ +config BR2_PACKAGE_SWUPDATE + bool "swupdate" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + # swupdate requires a parser and uses libconfig as default + select BR2_PACKAGE_LIBCONFIG if !BR2_PACKAGE_JSON_C && !BR2_PACKAGE_LUA_5_2 + help + swupdate provides a reliable way to update the software on an + embedded system. + + swupdate is highly configurable to fit the targets requirements and + to minimize the footprint. The provided default configuration file + BR2_PACKAGE_SWUPDATE_CONFIG will enable swupdate with an embedded + webserver, a parser and a handler for raw NAND or NOR flash. + + The default configuration file builds a reasonable firmware update + system with minimal external dependencies in my mind. If you like to + use your own modified configuration, you have to select the + necessary packages manually: + + * Select BR2_PACKAGE_LUA_5_2 if you want to have Lua support. + * Select BR2_LIBCURL if you want to use the download feature. + * Select BR2_PACKAGE_OPENSSL is you want to add encryptions support + to the webserver. + * Select BR2_PACKAGE_MTD if you want to use swupdate with UBI + partitions. + * Select BR2_PACKAGE_ZLIB if you want to deal with gzip compressed + archives. + + https://sbabic.github.io/swupdate + +if BR2_PACKAGE_SWUPDATE + +config BR2_PACKAGE_SWUPDATE_CONFIG + string "swupdate configuration file" + default "package/swupdate/swupdate.config" + help + Path to the swupdate configuration file. + + I you wish to use your own modified swupdate configuration file + specify the config file location with this option. + +config BR2_PACKAGE_SWUPDATE_INSTALL_WEBSITE + bool "install default website" + default y + help + Install the provided website to /var/www/swupdate. + + This is necessary if you want to run swupdate with the embedded + webserver and do not provide an own website to be installed to + /var/www/swupdate. +endif + +comment "swupdate needs a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/swupdate/swupdate.config b/package/swupdate/swupdate.config new file mode 100644 index 00000000000..bac7a58caa5 --- /dev/null +++ b/package/swupdate/swupdate.config @@ -0,0 +1,61 @@ +# +# Automatically generated file; DO NOT EDIT. +# Swupdate Configuration +# +CONFIG_HAVE_DOT_CONFIG=y + +# +# Swupdate Settings +# + +# +# General Configuration +# +CONFIG_SCRIPTS=y +# CONFIG_HW_COMPATIBILITY is not set +# CONFIG_FEATURE_SYSLOG is not set + +# +# Build Options +# +# CONFIG_STATIC is not set +CONFIG_CROSS_COMPILE="" +CONFIG_SYSROOT="" +CONFIG_EXTRA_CFLAGS="" +CONFIG_EXTRA_LDFLAGS="" +CONFIG_EXTRA_LDLIBS="" + +# +# Debugging Options +# +# CONFIG_DEBUG is not set +# CONFIG_WERROR is not set +# CONFIG_NOCLEANUP is not set +CONFIG_WEBSERVER=y + +# +# Webserver Features +# +CONFIG_MONGOOSE=y + +# +# Mongoose Feature +# +CONFIG_MONGOOSEIPV6=y + +# +# Archival Features +# +CONFIG_CPIO=y + +# +# Parser Features +# +# CONFIG_SETSWDESCRIPTION is not set + +# +# Image Handlers +# +CONFIG_RAW=y +# CONFIG_SHELLSCRIPTHANDLER is not set +# CONFIG_UBOOT is not set diff --git a/package/swupdate/swupdate.hash b/package/swupdate/swupdate.hash new file mode 100644 index 00000000000..c57ab899fac --- /dev/null +++ b/package/swupdate/swupdate.hash @@ -0,0 +1,4 @@ +# Locally calculated +sha256 1410f8967aad0f4d3b4561110dbfb2c1f8e337bdc332f6b120f4995762c8bf6b swupdate-2015.07.tar.gz +sha256 6cffe115cad73c0d1095f7880b6d2b97fc12b7f7871f532e5b33717e863f03d7 5a5ef5909f5da5b2070d58ffaee924bb8e6a51e1.patch +sha256 b97a107a0e4625337485b9bb118bc9a33fa0f2bfcb80475cff017940b5261238 f26577423eb65728fcd10f78f9978dd07d51dcb9.patch diff --git a/package/swupdate/swupdate.mk b/package/swupdate/swupdate.mk new file mode 100644 index 00000000000..e22bc08b6a3 --- /dev/null +++ b/package/swupdate/swupdate.mk @@ -0,0 +1,117 @@ +################################################################################ +# +# swupdate +# +################################################################################ + +SWUPDATE_VERSION = 2015.07 +SWUPDATE_SITE = $(call github,sbabic,swupdate,$(SWUPDATE_VERSION)) +SWUPDATE_LICENSE = GPLv2+, MIT, Public Domain +SWUPDATE_LICENSE_FILES = COPYING +SWUPDATE_PATCH = \ + https://github.com/sbabic/swupdate/commit/5a5ef5909f5da5b2070d58ffaee924bb8e6a51e1.patch \ + https://github.com/sbabic/swupdate/commit/f26577423eb65728fcd10f78f9978dd07d51dcb9.patch + +# swupdate bundles its own version of mongoose (version 3.8) and +# lsqlite3 (version 0.8) + +ifeq ($(BR2_PACKAGE_JSON_C),y) +SWUPDATE_DEPENDENCIES += json-c +SWUPDATE_MAKE_ENV += HAVE_JSON_C=y +else +SWUPDATE_MAKE_ENV += HAVE_JSON_C=n +endif + +ifeq ($(BR2_PACKAGE_LIBCONFIG),y) +SWUPDATE_DEPENDENCIES += libconfig +SWUPDATE_MAKE_ENV += HAVE_LIBCONFIG=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBCONFIG=n +endif + +ifeq ($(BR2_PACKAGE_LIBCURL),y) +SWUPDATE_DEPENDENCIES += libcurl +SWUPDATE_MAKE_ENV += HAVE_LIBCURL=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBCURL=n +endif + +ifeq ($(BR2_PACKAGE_LUA_5_2),y) +SWUPDATE_DEPENDENCIES += lua +SWUPDATE_MAKE_ENV += HAVE_LUA=y +else +SWUPDATE_MAKE_ENV += HAVE_LUA=n +endif + +ifeq ($(BR2_PACKAGE_MTD),y) +SWUPDATE_DEPENDENCIES += mtd +SWUPDATE_MAKE_ENV += HAVE_LIBMTD=y +SWUPDATE_MAKE_ENV += HAVE_LIBUBI=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBMTD=n +SWUPDATE_MAKE_ENV += HAVE_LIBUBI=n +endif + +ifeq ($(BR2_PACKAGE_OPENSSL),y) +SWUPDATE_DEPENDENCIES += openssl +SWUPDATE_MAKE_ENV += HAVE_LIBSSL=y +SWUPDATE_MAKE_ENV += HAVE_LIBCRYPTO=y +else +SWUPDATE_MAKE_ENV += HAVE_LIBSSL=n +SWUPDATE_MAKE_ENV += HAVE_LIBCRYPTO=n +endif + +ifeq ($(BR2_PACKAGE_ZLIB),y) +SWUPDATE_DEPENDENCIES += zlib +SWUPDATE_MAKE_ENV += HAVE_ZLIB=y +else +SWUPDATE_MAKE_ENV += HAVE_ZLIB=n +endif + +SWUPDATE_BUILD_CONFIG = $(@D)/.config + +SWUPDATE_KCONFIG_FILE = $(call qstrip,$(BR2_PACKAGE_SWUPDATE_CONFIG)) +SWUPDATE_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig + +ifeq ($(BR2_PREFER_STATIC_LIB),y) +define SWUPDATE_PREFER_STATIC + $(call KCONFIG_ENABLE_OPT,CONFIG_STATIC,$(SWUPDATE_BUILD_CONFIG)) +endef +endif + +define SWUPDATE_SET_BUILD_OPTIONS + $(call KCONFIG_SET_OPT,CONFIG_CROSS_COMPILE,"$(TARGET_CROSS)", \ + $(SWUPDATE_BUILD_CONFIG)) + $(call KCONFIG_SET_OPT,CONFIG_SYSROOT,"$(STAGING_DIR)", \ + $(SWUPDATE_BUILD_CONFIG)) + $(call KCONFIG_SET_OPT,CONFIG_EXTRA_CFLAGS,"$(TARGET_CFLAGS)", \ + $(SWUPDATE_BUILD_CONFIG)) + $(call KCONFIG_SET_OPT,CONFIG_EXTRA_LDFLAGS,"$(TARGET_LDFLAGS)", \ + $(SWUPDATE_BUILD_CONFIG)) +endef + +define SWUPDATE_KCONFIG_FIXUP_CMDS + $(SWUPDATE_PREFER_STATIC) + $(SWUPDATE_SET_BUILD_OPTIONS) +endef + +define SWUPDATE_BUILD_CMDS + $(TARGET_MAKE_ENV) $(SWUPDATE_MAKE_ENV) $(MAKE) -C $(@D) +endef + +define SWUPDATE_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(@D)/swupdate $(TARGET_DIR)/usr/bin/swupdate + $(if $(BR2_PACKAGE_SWUPDATE_INSTALL_WEBSITE), \ + mkdir -p $(TARGET_DIR)/var/www/swupdate; \ + cp -dpf $(@D)/www/* $(TARGET_DIR)/var/www/swupdate) +endef + +# Checks to give errors that the user can understand +# Must be before we call to kconfig-package +ifeq ($(BR2_PACKAGE_SWUPDATE)$(BR_BUILDING),yy) +ifeq ($(call qstrip,$(BR2_PACKAGE_SWUPDATE_CONFIG)),) +$(error No Swupdate configuration file specified, check your BR2_PACKAGE_SWUPDATE_CONFIG setting) +endif +endif + +$(eval $(kconfig-package)) diff --git a/package/sysdig/Config.in b/package/sysdig/Config.in index 36d35fb7ac4..dfb9db50659 100644 --- a/package/sysdig/Config.in +++ b/package/sysdig/Config.in @@ -1,12 +1,13 @@ config BR2_PACKAGE_SYSDIG bool "sysdig" - select BR2_PACKAGE_ZLIB - select BR2_PACKAGE_LUAJIT - select BR2_PACKAGE_JSONCPP depends on BR2_LINUX_KERNEL depends on BR2_INSTALL_LIBSTDCPP # libjson depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # jsoncpp depends on !BR2_STATIC_LIBS # luajit + select BR2_PACKAGE_ZLIB + select BR2_PACKAGE_LUAJIT + select BR2_PACKAGE_JSONCPP help Sysdig is open source, system-level exploration: capture system state and activity from a running Linux instance, @@ -16,6 +17,7 @@ config BR2_PACKAGE_SYSDIG http://sysdig.org -comment "sysdig needs a toolchain w/ C++, dynamibc library and a Linux kernel to be built" - depends on !BR2_LINUX_KERNEL || !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS +comment "sysdig needs a toolchain w/ C++, gcc >= 4.7, dynamic library and a Linux kernel to be built" + depends on !BR2_LINUX_KERNEL || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 || BR2_STATIC_LIBS depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS diff --git a/package/sysklogd/S01logging b/package/sysklogd/S01logging index a0b683fdf25..1cbfe869fae 100644 --- a/package/sysklogd/S01logging +++ b/package/sysklogd/S01logging @@ -2,13 +2,13 @@ case "$1" in start) - echo -n "Starting logging: " + printf "Starting logging: " /sbin/syslogd -m 0 /sbin/klogd echo "OK" ;; stop) - echo -n "Stopping logging: " + printf "Stopping logging: " [ -f /var/run/klogd.pid ] && kill `cat /var/run/klogd.pid` [ -f /var/run/syslogd.pid ] && kill `cat /var/run/syslogd.pid` echo "OK" diff --git a/package/sysklogd/sysklogd.mk b/package/sysklogd/sysklogd.mk index de2edf409e5..49997d4f235 100644 --- a/package/sysklogd/sysklogd.mk +++ b/package/sysklogd/sysklogd.mk @@ -14,8 +14,10 @@ ifeq ($(BR2_PACKAGE_BUSYBOX),y) SYSKLOGD_DEPENDENCIES = busybox endif +# Override SKFLAGS which is used as CFLAGS. define SYSKLOGD_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) + $(MAKE) $(TARGET_CONFIGURE_OPTS) SKFLAGS="$(TARGET_CFLAGS) -DSYSV" \ + -C $(@D) endef define SYSKLOGD_INSTALL_TARGET_CMDS diff --git a/package/syslog-ng/Config.in b/package/syslog-ng/Config.in new file mode 100644 index 00000000000..fdc8d9f2200 --- /dev/null +++ b/package/syslog-ng/Config.in @@ -0,0 +1,19 @@ +config BR2_PACKAGE_SYSLOG_NG + bool "syslog-ng" + select BR2_PACKAGE_EVENTLOG + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_PCRE + select BR2_PACKAGE_OPENSSL + depends on BR2_USE_WCHAR # glib2 + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_MMU # fork() + help + syslog-ng is an enhanced log daemon, supporting a wide range + of input and output methods: syslog, unstructured text, + queueing, SQL & NoSQL + + https://syslog-ng.org/ + +comment "syslog-ng needs a toolchain w/ wchar, threads" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/syslog-ng/S01logging b/package/syslog-ng/S01logging new file mode 100644 index 00000000000..d7c899a1e35 --- /dev/null +++ b/package/syslog-ng/S01logging @@ -0,0 +1,38 @@ +#!/bin/sh + +start() { + printf "Starting syslog-ng daemon: " + start-stop-daemon -S -q -p /var/run/syslog-ng.pid \ + -x /usr/sbin/syslog-ng -- --pidfile /var/run/syslog-ng.pid + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +stop() { + printf "Stopping syslog-ng daemon: " + start-stop-daemon -K -q -p /var/run/syslog-ng.pid \ + -x /usr/sbin/syslog-ng + [ $? = 0 ] && echo "OK" || echo "FAIL" +} + +restart() { + stop + sleep 1 + start +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + restart + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $? diff --git a/package/syslog-ng/syslog-ng.conf b/package/syslog-ng/syslog-ng.conf new file mode 100644 index 00000000000..0b4a860cfaa --- /dev/null +++ b/package/syslog-ng/syslog-ng.conf @@ -0,0 +1,16 @@ +@version: 3.7 + +source s_sys { + file("/proc/kmsg" program_override("kernel")); + unix-stream ("/dev/log"); + internal(); +}; + +destination d_all { + file("/var/log/messages"); +}; + +log { + source(s_sys); + destination(d_all); +}; diff --git a/package/syslog-ng/syslog-ng.hash b/package/syslog-ng/syslog-ng.hash new file mode 100644 index 00000000000..0213d2dadc5 --- /dev/null +++ b/package/syslog-ng/syslog-ng.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 b1b3ccc0ce7f0d8bf15b23e59f2f4f5ded70eed410dfd27105219bc8856388a5 syslog-ng-3.7.2.tar.gz diff --git a/package/syslog-ng/syslog-ng.mk b/package/syslog-ng/syslog-ng.mk new file mode 100644 index 00000000000..1acaad8dea8 --- /dev/null +++ b/package/syslog-ng/syslog-ng.mk @@ -0,0 +1,99 @@ +################################################################################ +# +# syslog-ng +# +################################################################################ + +SYSLOG_NG_VERSION = 3.7.2 +SYSLOG_NG_SOURCE = syslog-ng-$(SYSLOG_NG_VERSION).tar.gz +SYSLOG_NG_SITE = https://github.com/balabit/syslog-ng/releases/download/syslog-ng-$(SYSLOG_NG_VERSION) +SYSLOG_NG_LICENSE = LGPLv2.1+ (syslog-ng core), GPLv2+ (modules) +SYSLOG_NG_LICENSE_FILES = COPYING +SYSLOG_NG_DEPENDENCIES = host-bison host-flex host-pkgconf \ + eventlog libglib2 openssl pcre +# rabbit-mq needs -lrt +SYSLOG_NG_CONF_ENV = LIBS=-lrt +SYSLOG_NG_CONF_OPTS = --disable-manpages + +# We override busybox's S01logging init script +ifeq ($(BR2_PACKAGE_BUSYBOX),y) +SYSLOG_NG_DEPENDENCIES += busybox +endif + +ifeq ($(BR2_PACKAGE_GEOIP),y) +SYSLOG_NG_DEPENDENCIES += geoip +SYSLOG_NG_CONF_OPTS += --enable-geoip +else +SYSLOG_NG_CONF_OPTS += --disable-geoip +endif + +ifeq ($(BR2_PACKAGE_LIBCAP),y) +SYSLOG_NG_DEPENDENCIES += libcap +SYSLOG_NG_CONF_OPTS += --enable-linux-caps +else +SYSLOG_NG_CONF_OPTS += --disable-linux-caps +endif + +ifeq ($(BR2_PACKAGE_PYTHON),y) +SYSLOG_NG_DEPENDENCIES += python +SYSLOG_NG_CONF_OPTS += \ + --enable-python \ + --with-python=$(PYTHON_VERSION_MAJOR) +else ifeq ($(BR2_PACKAGE_PYTHON3),y) +SYSLOG_NG_DEPENDENCIES += python3 +SYSLOG_NG_CONF_OPTS += \ + --enable-python \ + --with-python=$(PYTHON3_VERSION_MAJOR) +else +SYSLOG_NG_CONF_OPTS += \ + --disable-python \ + --without-python +endif + +ifeq ($(BR2_PACKAGE_LIBESMTP),y) +SYSLOG_NG_DEPENDENCIES += libesmtp +SYSLOG_NG_CONF_OPTS += --enable-smtp +SYSLOG_NG_CONF_OPTS += --with-libesmtp="$(STAGING_DIR)/usr" +else +SYSLOG_NG_CONF_OPTS += --disable-smtp +endif + +ifeq ($(BR2_PACKAGE_JSON_C),y) +SYSLOG_NG_DEPENDENCIES += json-c +SYSLOG_NG_CONF_OPTS += --enable-json +else +SYSLOG_NG_CONF_OPTS += --disable-json +endif + +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) +SYSLOG_NG_DEPENDENCIES += util-linux +endif + +ifeq ($(BR2_INIT_SYSTEMD),y) +SYSLOG_NG_DEPENDENCIES += systemd +SYSLOG_NG_CONF_OPTS += \ + --enable-systemd \ + --with-systemdsystemunitdir=/usr/lib/systemd/system +else +SYSLOG_NG_CONF_OPTS += --disable-systemd +endif + +define SYSLOG_NG_INSTALL_INIT_SYSV + $(INSTALL) -m 0755 -D package/syslog-ng/S01logging \ + $(TARGET_DIR)/etc/init.d/S01logging +endef + +# By default syslog-ng installs a number of sample configuration +# files. Some of these rely on optional features being +# enabled. Because of this buildroot uninstalls the shipped config +# files and provides a simplified configuration. +define SYSLOG_NG_FIXUP_CONFIG + $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + DESTDIR=$(TARGET_DIR) scl-uninstall-local + $(INSTALL) -D -m 0644 package/syslog-ng/syslog-ng.conf \ + $(TARGET_DIR)/etc/syslog-ng.conf +endef + +SYSLOG_NG_POST_INSTALL_TARGET_HOOKS = SYSLOG_NG_FIXUP_CONFIG + +$(eval $(autotools-package)) diff --git a/package/sysstat/sysstat.hash b/package/sysstat/sysstat.hash index f535b5415d8..d69440b6ae9 100644 --- a/package/sysstat/sysstat.hash +++ b/package/sysstat/sysstat.hash @@ -1,2 +1,2 @@ -# From http://sebastien.godard.pagesperso-orange.fr/download.html -md5 438d607cd14357a24969633b9798d2be sysstat-11.0.5.tar.xz +# From: http://sebastien.godard.pagesperso-orange.fr/download.html +sha1 61b70892d864f8bac5714e2fe0a006f0fda6efba sysstat-11.2.0.tar.xz diff --git a/package/sysstat/sysstat.mk b/package/sysstat/sysstat.mk index b28c029a279..ba0eb26f993 100644 --- a/package/sysstat/sysstat.mk +++ b/package/sysstat/sysstat.mk @@ -4,7 +4,7 @@ # ################################################################################ -SYSSTAT_VERSION = 11.0.5 +SYSSTAT_VERSION = 11.2.0 SYSSTAT_SOURCE = sysstat-$(SYSSTAT_VERSION).tar.xz SYSSTAT_SITE = http://pagesperso-orange.fr/sebastien.godard SYSSTAT_CONF_OPTS = --disable-man-group --disable-sensors @@ -14,7 +14,7 @@ SYSSTAT_LICENSE_FILES = COPYING ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y) SYSSTAT_DEPENDENCIES += gettext -SYSSTAT_MAKE_OPTS += CFLAGS="$(TARGET_CFLAGS) -lintl" +SYSSTAT_MAKE_OPTS += LFLAGS="$(TARGET_LDFLAGS) -lintl" endif # The isag tool is a post processing script that depends on tcl/tk diff --git a/package/systemd/Config.in b/package/systemd/Config.in index 510baddae73..f7fc3bbfde7 100644 --- a/package/systemd/Config.in +++ b/package/systemd/Config.in @@ -55,7 +55,6 @@ config BR2_PACKAGE_SYSTEMD The selection of other packages will enable some features: - - libglib2 package will add support for gudev. - acl package will add support for multi-seat. http://freedesktop.org/wiki/Software/systemd diff --git a/package/systemd/systemd.hash b/package/systemd/systemd.hash index f7460517bcf..8090200043b 100644 --- a/package/systemd/systemd.hash +++ b/package/systemd/systemd.hash @@ -1,2 +1,2 @@ -# Locally calculated -sha256 085e088650afbfc688ccb13459aedb1fbc7c8810358605b076301f472d51cc4f systemd-221.tar.xz +# sha256 locally computed +sha256 dd124ff561a07e6439ed2b3713f38ca914df7747f110ce86deea17b56d245ae6 systemd-228.tar.gz diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk index b62fc088f68..05121cf0c60 100644 --- a/package/systemd/systemd.mk +++ b/package/systemd/systemd.mk @@ -4,9 +4,8 @@ # ################################################################################ -SYSTEMD_VERSION = 221 -SYSTEMD_SITE = http://www.freedesktop.org/software/systemd -SYSTEMD_SOURCE = systemd-$(SYSTEMD_VERSION).tar.xz +SYSTEMD_VERSION = 228 +SYSTEMD_SITE = $(call github,systemd,systemd,v$(SYSTEMD_VERSION)) SYSTEMD_LICENSE = LGPLv2.1+, GPLv2+ (udev), Public Domain (few source files, see README) SYSTEMD_LICENSE_FILES = LICENSE.GPL2 LICENSE.LGPL2.1 README SYSTEMD_INSTALL_STAGING = YES @@ -28,20 +27,15 @@ endif SYSTEMD_CONF_OPTS += \ --with-rootprefix= \ - --with-rootlibdir=/lib \ --enable-static=no \ --disable-manpages \ --disable-selinux \ --disable-pam \ --disable-libcryptsetup \ - --with-dbuspolicydir=/etc/dbus-1/system.d \ - --with-dbussessionservicedir=/usr/share/dbus-1/services \ - --with-dbussystemservicedir=/usr/share/dbus-1/system-services \ - --enable-split-usr \ --disable-efi \ --disable-gnuefi \ + --disable-ldconfig \ --disable-tests \ - --disable-dbus \ --without-python SYSTEMD_CFLAGS = $(TARGET_CFLAGS) -fno-lto @@ -51,6 +45,11 @@ SYSTEMD_CONF_ENV = \ CFLAGS="$(SYSTEMD_CFLAGS)" \ ac_cv_path_KMOD=/usr/bin/kmod +define SYSTEMD_RUN_INTLTOOLIZE + cd $(@D) && $(HOST_DIR)/usr/bin/intltoolize --force --automake +endef +SYSTEMD_PRE_CONFIGURE_HOOKS += SYSTEMD_RUN_INTLTOOLIZE + ifeq ($(BR2_PACKAGE_SYSTEMD_COMPAT),y) SYSTEMD_CONF_OPTS += --enable-compat-libs else @@ -147,23 +146,10 @@ define SYSTEMD_INSTALL_MACHINEID_HOOK touch $(TARGET_DIR)/etc/machine-id endef -define SYSTEMD_SANITIZE_PATH_IN_UNITS - find $(TARGET_DIR)/lib/systemd/system -name '*.service' \ - -exec $(SED) 's,$(HOST_DIR),,g' {} \; -endef - -# Disable ldconfig.service, as /sbin/ldconfig is not available when the -# target is built with a glibc-based toolchain. -define SYSTEMD_DISABLE_LDCONFIG_SERVICE_HOOK - rm -f $(TARGET_DIR)/lib/systemd/system/sysinit.target.wants/ldconfig.service -endef - SYSTEMD_POST_INSTALL_TARGET_HOOKS += \ SYSTEMD_INSTALL_INIT_HOOK \ SYSTEMD_INSTALL_MACHINEID_HOOK \ - SYSTEMD_INSTALL_RESOLVCONF_HOOK \ - SYSTEMD_DISABLE_LDCONFIG_SERVICE_HOOK \ - SYSTEMD_SANITIZE_PATH_IN_UNITS + SYSTEMD_INSTALL_RESOLVCONF_HOOK define SYSTEMD_USERS systemd-journal -1 systemd-journal -1 * /var/log/journal - - Journal diff --git a/package/sysvinit/0001-fix-libcrypt-test.patch b/package/sysvinit/0001-fix-libcrypt-test.patch index 207270d9c94..6c22436d74a 100644 --- a/package/sysvinit/0001-fix-libcrypt-test.patch +++ b/package/sysvinit/0001-fix-libcrypt-test.patch @@ -6,12 +6,15 @@ Index: b/src/Makefile =================================================================== --- a/src/Makefile +++ b/src/Makefile -@@ -78,7 +78,7 @@ +@@ -78,8 +78,9 @@ else endif # Additional libs for GNU libc. -ifneq ($(wildcard /usr/lib*/libcrypt.a),) -+ifneq ($(wildcard $(SYSROOT)/usr/lib*/libcrypt.a),) - SULOGINLIBS += -lcrypt +- SULOGINLIBS += -lcrypt ++HAS_LIBCRYPT=$(shell f=`mktemp` && echo 'int main(void) {}' | $(CC) -o $$f -xc - -lcrypt >/dev/null 2>&1 && echo yes; rm -f $$f) ++ifeq ($(HAS_LIBCRYPT),yes) ++ SULOGINLIBS += -lcrypt endif + all: $(BIN) $(SBIN) $(USRBIN) diff --git a/package/sysvinit/Config.in b/package/sysvinit/Config.in index d91c643f82f..2dc3bb07bb5 100644 --- a/package/sysvinit/Config.in +++ b/package/sysvinit/Config.in @@ -4,4 +4,4 @@ config BR2_PACKAGE_SYSVINIT help /sbin/init - parent of all processes - http://freshmeat.net/projects/sysvinit/ + http://savannah.nongnu.org/projects/sysvinit diff --git a/package/sysvinit/inittab b/package/sysvinit/inittab index fc0c9b5803f..27eb4a69312 100644 --- a/package/sysvinit/inittab +++ b/package/sysvinit/inittab @@ -15,7 +15,7 @@ si6::sysinit:/etc/init.d/rcS # S0:1:respawn:/sbin/getty -L ttyS0 115200 vt100 # GENERIC_SERIAL # Stuff to do for the 3-finger salute -ca::ctrlaltdel:/sbin/reboot +#ca::ctrlaltdel:/sbin/reboot # Stuff to do before rebooting shd0:06:wait:/etc/init.d/rcK diff --git a/package/taglib/taglib.mk b/package/taglib/taglib.mk index ed088740ea4..24106500253 100644 --- a/package/taglib/taglib.mk +++ b/package/taglib/taglib.mk @@ -7,7 +7,7 @@ TAGLIB_VERSION = 1.9.1 TAGLIB_SITE = http://taglib.github.io/releases TAGLIB_INSTALL_STAGING = YES -TAGLIB_LICENSE = LGPLv2.1 MPL +TAGLIB_LICENSE = LGPLv2.1, MPL TAGLIB_LICENSE_FILES = COPYING.LGPL COPYING.MPL ifeq ($(BR2_PACKAGE_ZLIB),y) diff --git a/package/targetcli-fb/Config.in b/package/targetcli-fb/Config.in index ee241ef9e58..b6559387000 100644 --- a/package/targetcli-fb/Config.in +++ b/package/targetcli-fb/Config.in @@ -6,6 +6,7 @@ config BR2_PACKAGE_TARGETCLI_FB depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 select BR2_PACKAGE_PYTHON_CONFIGSHELL_FB select BR2_PACKAGE_PYTHON_RTSLIB_FB + select BR2_PACKAGE_PYTHON_SIX help targetcli-fb is a command-line interface for configuring the LIO generic SCSI target, present in 3.x Linux kernel diff --git a/package/targetcli-fb/S50target b/package/targetcli-fb/S50target index 88290e4f7b0..3ce55ab4928 100755 --- a/package/targetcli-fb/S50target +++ b/package/targetcli-fb/S50target @@ -6,7 +6,7 @@ start() { local ret - echo -n "Restoring target configuration: " + printf "Restoring target configuration: " /usr/bin/targetctl restore >/dev/null 2>&1 ret=$? echo "done" @@ -17,7 +17,7 @@ start() { stop() { local ret - echo -n "Clearing target configuration: " + printf "Clearing target configuration: " /usr/bin/targetctl clear >/dev/null 2>&1 ret=$? echo "done" diff --git a/package/targetcli-fb/target.service b/package/targetcli-fb/target.service new file mode 100644 index 00000000000..400284edd17 --- /dev/null +++ b/package/targetcli-fb/target.service @@ -0,0 +1,14 @@ +[Unit] +Description=Restore LIO kernel target configuration +Requires=sys-kernel-config.mount +After=sys-kernel-config.mount network.target local-fs.target + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/usr/bin/targetctl restore +ExecStop=/usr/bin/targetctl clear +SyslogIdentifier=target + +[Install] +WantedBy=multi-user.target diff --git a/package/targetcli-fb/targetcli-fb.mk b/package/targetcli-fb/targetcli-fb.mk index b5f2fbe8883..cf7f29ff4e4 100644 --- a/package/targetcli-fb/targetcli-fb.mk +++ b/package/targetcli-fb/targetcli-fb.mk @@ -4,15 +4,21 @@ # ################################################################################ -TARGETCLI_FB_VERSION = v2.1.fb37 +TARGETCLI_FB_VERSION = v2.1.fb41 TARGETCLI_FB_SITE = $(call github,agrover,targetcli-fb,$(TARGETCLI_FB_VERSION)) TARGETCLI_FB_LICENSE = Apache-2.0 TARGETCLI_FB_LICENSE_FILES = COPYING TARGETCLI_FB_SETUP_TYPE = setuptools -TARGETCLI_FB_DEPENDENCIES = python-configshell-fb python-rtslib-fb +TARGETCLI_FB_DEPENDENCIES = python-configshell-fb python-rtslib-fb python-six define TARGETCLI_FB_INSTALL_INIT_SYSV - $(INSTALL) -m 0755 -D package/targetcli-fb/S50target $(TARGET_DIR)/etc/init.d/S50target + $(INSTALL) -m 0755 -D package/targetcli-fb/S50target \ + $(TARGET_DIR)/etc/init.d/S50target +endef + +define TARGETCLI_FB_INSTALL_INIT_SYSTEMD + $(INSTALL) -m 0644 -D package/targetcli-fb/target.service \ + $(TARGET_DIR)/usr/lib/systemd/system/target.service endef # Targetcli stores its configuration in /etc/target/saveconfig.json diff --git a/package/tcl/Config.in b/package/tcl/Config.in index 63d1b256198..f1fa0541a1b 100644 --- a/package/tcl/Config.in +++ b/package/tcl/Config.in @@ -1,3 +1,7 @@ +comment "tcl needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS + config BR2_PACKAGE_TCL bool "tcl" # fork() @@ -11,10 +15,6 @@ config BR2_PACKAGE_TCL http://www.tcl.tk -comment "tcl needs a toolchain w/ threads, dynamic library" - depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS - if BR2_PACKAGE_TCL config BR2_PACKAGE_TCL_DEL_ENCODINGS diff --git a/package/tcpdump/0002-fix-CVE-2014-8767.patch b/package/tcpdump/0002-fix-CVE-2014-8767.patch deleted file mode 100644 index a88efdf58de..00000000000 --- a/package/tcpdump/0002-fix-CVE-2014-8767.patch +++ /dev/null @@ -1,20 +0,0 @@ -From https://bugzilla.redhat.com/show_bug.cgi?id=1165160 - -Signed-off-by: Gustavo Zacarias - ---- tcpdump-tcpdump-4.6/print-olsr.c 2014-10-23 14:07:12.000000000 +0700 -+++ tcpdump-4.6.2/print-olsr.c 2014-11-21 14:56:18.205542679 +0700 -@@ -234,6 +234,13 @@ - ND_PRINT((ndo, "\n\t neighbor\n\t\t")); - neighbor = 1; - -+ u_int caplength; -+ -+ /* Checking length of available data before print */ -+ caplength = (ndo->ndo_snapend >= msg_data) ? ndo->ndo_snapend - msg_data : 0; -+ if (hello_len > caplength) -+ hello_len = caplength; -+ - while (hello_len >= sizeof(struct in_addr)) { - - /* print 4 neighbors per line */ diff --git a/package/tcpdump/0003-fix-CVE-2014-8768.patch b/package/tcpdump/0003-fix-CVE-2014-8768.patch deleted file mode 100644 index a8b82cf7017..00000000000 --- a/package/tcpdump/0003-fix-CVE-2014-8768.patch +++ /dev/null @@ -1,19 +0,0 @@ -From https://bugzilla.redhat.com/show_bug.cgi?id=1165161 - -Signed-off-by: Gustavo Zacarias - ---- tcpdump-tcpdump_4.5/print-geonet.c 2014-02-17 05:58:41.000000000 +0700 -+++ print-geonet.c 2014-11-21 10:06:58.590217933 +0700 -@@ -237,6 +237,12 @@ - printf("Malformed (small) "); - } - -+ /* Checking length before print */ -+ u_int caplength; -+ caplength = (ndo->ndo_snapend >= bp) ? ndo->ndo_snapend - bp : 0; -+ if (length > caplength) -+ length = caplength; -+ - /* Print user data part */ - if (ndo->ndo_vflag) - default_print(bp, length); diff --git a/package/tcpdump/0004-fix-CVE-2014-8769.patch b/package/tcpdump/0004-fix-CVE-2014-8769.patch deleted file mode 100644 index 38eaf1247c1..00000000000 --- a/package/tcpdump/0004-fix-CVE-2014-8769.patch +++ /dev/null @@ -1,19 +0,0 @@ -From https://bugzilla.redhat.com/show_bug.cgi?id=1165162 - -Signed-off-by: Gustavo Zacarias - ---- tcpdump-tcpdump-4.6/print-udp.c 2014-11-21 13:53:05.757690197 +0700 -+++ tcpdump-4.6.2/print-udp.c 2014-11-21 13:50:58.077695164 +0700 -@@ -357,6 +357,12 @@ - #ifdef INET6 - register const struct ip6_hdr *ip6; - #endif -+ u_int caplength; -+ -+ /* Checking length of available data before print */ -+ caplength = (ndo->ndo_snapend >= bp) ? ndo->ndo_snapend - bp : 0; -+ if (length > caplength) -+ length = caplength; - - if (ep > ndo->ndo_snapend) - ep = ndo->ndo_snapend; diff --git a/package/tcpreplay/tcpreplay.hash b/package/tcpreplay/tcpreplay.hash index 7d153e5279a..95d6d5d8187 100644 --- a/package/tcpreplay/tcpreplay.hash +++ b/package/tcpreplay/tcpreplay.hash @@ -1,3 +1,2 @@ -# From http://sourceforge.net/projects/tcpreplay/files/tcpreplay/4.1.0/ -md5 fd48d73d84ade30ece0a9abb538c82d5 tcpreplay-4.1.0.tar.gz -sha1 9723d82a0136d963bcc2665d562cb562d216a1c1 tcpreplay-4.1.0.tar.gz +# Locally calculated after checking pgp signature +sha256 61b916ef91049cad2a9ddc8de6f5e3e3cc5d9998dbb644dc91cf3a798497ffe4 tcpreplay-4.1.1.tar.gz diff --git a/package/tcpreplay/tcpreplay.mk b/package/tcpreplay/tcpreplay.mk index f6bd08f14b9..b32810f78de 100644 --- a/package/tcpreplay/tcpreplay.mk +++ b/package/tcpreplay/tcpreplay.mk @@ -4,8 +4,8 @@ # ################################################################################ -TCPREPLAY_VERSION = 4.1.0 -TCPREPLAY_SITE = http://downloads.sourceforge.net/project/tcpreplay/tcpreplay/$(TCPREPLAY_VERSION) +TCPREPLAY_VERSION = 4.1.1 +TCPREPLAY_SITE = https://github.com/appneta/tcpreplay/releases/download/v$(TCPREPLAY_VERSION) TCPREPLAY_LICENSE = GPLv3 TCPREPLAY_LICENSE_FILES = docs/LICENSE TCPREPLAY_CONF_ENV = \ diff --git a/package/texinfo/texinfo.hash b/package/texinfo/texinfo.hash deleted file mode 100644 index 656c390768e..00000000000 --- a/package/texinfo/texinfo.hash +++ /dev/null @@ -1,2 +0,0 @@ -# Locally calculated after checking pgp signature -sha256 1303e91a1c752b69a32666a407e9fbdd6e936def4b09bc7de30f416301530d68 texinfo-4.13a.tar.gz diff --git a/package/texinfo/texinfo.mk b/package/texinfo/texinfo.mk deleted file mode 100644 index 184288bd71c..00000000000 --- a/package/texinfo/texinfo.mk +++ /dev/null @@ -1,17 +0,0 @@ -################################################################################ -# -# texinfo -# -################################################################################ - -# We are intentionally not using the latest version 5.x, because it -# causes issues with the documentation building process when creating -# a toolchain with the Crosstool-NG backend. - -TEXINFO_VERSION = 4.13a -TEXINFO_SITE = $(BR2_GNU_MIRROR)/texinfo -TEXINFO_LICENSE = GPLv3+ -TEXINFO_LICENSE_FILES = COPYING -TEXINFO_DEPENDENCIES = ncurses - -$(eval $(host-autotools-package)) diff --git a/package/tftpd/S80tftpd-hpa b/package/tftpd/S80tftpd-hpa index 41c28d148d4..4e8361faa77 100755 --- a/package/tftpd/S80tftpd-hpa +++ b/package/tftpd/S80tftpd-hpa @@ -4,9 +4,9 @@ OPTIONS="-c -l -s /var/lib/tftpboot" set -e -PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +PATH=/sbin:/bin:/usr/sbin:/usr/bin DESC="HPA's tftpd" -NAME=in.tftpd +NAME=tftpd DAEMON=/usr/sbin/$NAME PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/S80tftpd-hpa @@ -37,12 +37,12 @@ d_reload() { case "$1" in start) - echo -n "Starting $DESC: " + printf "Starting $DESC: " d_start echo "done" ;; stop) - echo -n "Stopping $DESC: " + printf "Stopping $DESC: " d_stop echo "done" ;; @@ -55,7 +55,7 @@ case "$1" in # If the daemon responds to changes in its config file # directly anyway, make this an "exit 0". # - # echo -n "Reloading $DESC configuration..." + # printf "Reloading $DESC configuration..." # d_reload # echo "done." #;; @@ -65,7 +65,7 @@ case "$1" in # option to the "reload" entry above. If not, "force-reload" is # just the same as "restart". # - echo -n "Restarting $DESC: " + printf "Restarting $DESC: " d_stop sleep 1 d_start diff --git a/package/thrift/Config.in b/package/thrift/Config.in index b9960f81c7a..54ca9b8538a 100644 --- a/package/thrift/Config.in +++ b/package/thrift/Config.in @@ -3,7 +3,6 @@ config BR2_PACKAGE_THRIFT depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_ARCH_HAS_ATOMICS depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS select BR2_PACKAGE_BOOST select BR2_PACKAGE_LIBEVENT @@ -20,7 +19,6 @@ config BR2_PACKAGE_THRIFT http://thrift.apache.org/ comment "thrift needs a toolchain w/ C++, wchar, threads" - depends on BR2_ARCH_HAS_ATOMICS depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS depends on !BR2_USE_WCHAR || \ !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP diff --git a/package/ti-gfx/Config.in b/package/ti-gfx/Config.in index 4ee862291d1..de4e9cbf01a 100644 --- a/package/ti-gfx/Config.in +++ b/package/ti-gfx/Config.in @@ -1,10 +1,11 @@ config BR2_PACKAGE_TI_GFX bool "ti-gfx" + depends on BR2_LINUX_KERNEL && BR2_TOOLCHAIN_USES_GLIBC && BR2_arm select BR2_PACKAGE_HAS_LIBEGL select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_HAS_POWERVR select BR2_PACKAGE_FBSET if !BR2_PACKAGE_BUSYBOX # Runtime dependency only - depends on BR2_LINUX_KERNEL && BR2_TOOLCHAIN_USES_GLIBC && BR2_arm + select BR2_LINUX_NEEDS_MODULES # not using kernel-module infra help Graphics libraries for TI boards. diff --git a/package/ti-gfx/ti-gfx.mk b/package/ti-gfx/ti-gfx.mk index 5339387c985..47eb474c003 100644 --- a/package/ti-gfx/ti-gfx.mk +++ b/package/ti-gfx/ti-gfx.mk @@ -21,6 +21,7 @@ TI_GFX_LICENSE_FILES = TSPA.txt TI_GFX_INSTALL_STAGING = YES TI_GFX_DEPENDENCIES = linux + TI_GFX_PROVIDES = libegl libgles powervr ifeq ($(BR2_PACKAGE_TI_GFX_ES3),y) diff --git a/package/tiff/Config.in b/package/tiff/Config.in index acb335cc9d0..00c2a3dc164 100644 --- a/package/tiff/Config.in +++ b/package/tiff/Config.in @@ -41,6 +41,10 @@ config BR2_PACKAGE_TIFF_ZLIB select BR2_PACKAGE_ZLIB default y +config BR2_PACKAGE_TIFF_XZ + bool "XZ compression" + select BR2_PACKAGE_XZ + config BR2_PACKAGE_TIFF_PIXARLOG bool "Pixar log-format algorithm (requires Zlib)" select BR2_PACKAGE_TIFF_ZLIB diff --git a/package/tiff/tiff.hash b/package/tiff/tiff.hash index c594568142f..7ff746f6c92 100644 --- a/package/tiff/tiff.hash +++ b/package/tiff/tiff.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 8cb1d90c96f61cdfc0bcf036acc251c9dbe6320334da941c7a83cfe1576ef890 tiff-4.0.4.tar.gz +sha256 4d57a50907b510e3049a4bba0d7888930fdfc16ce49f1bf693e5b6247370d68c tiff-4.0.6.tar.gz diff --git a/package/tiff/tiff.mk b/package/tiff/tiff.mk index 548e47a871a..266272aa13a 100644 --- a/package/tiff/tiff.mk +++ b/package/tiff/tiff.mk @@ -4,7 +4,7 @@ # ################################################################################ -TIFF_VERSION = 4.0.4 +TIFF_VERSION = 4.0.6 TIFF_SITE = http://download.osgeo.org/libtiff TIFF_LICENSE = tiff license TIFF_LICENSE_FILES = COPYRIGHT @@ -49,6 +49,12 @@ else TIFF_DEPENDENCIES += zlib endif +ifneq ($(BR2_PACKAGE_TIFF_XZ),y) +TIFF_CONF_OPTS += --disable-lzma +else +TIFF_DEPENDENCIES += xz +endif + ifneq ($(BR2_PACKAGE_TIFF_PIXARLOG),y) TIFF_CONF_OPTS += --disable-pixarlog endif diff --git a/package/tinc/tinc.mk b/package/tinc/tinc.mk index b8d4ca77ef2..f7edd79acd2 100644 --- a/package/tinc/tinc.mk +++ b/package/tinc/tinc.mk @@ -11,4 +11,10 @@ TINC_LICENSE = GPLv2+ with OpenSSL exception TINC_LICENSE_FILES = COPYING COPYING.README TINC_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=c99" +ifeq ($(BR2_arc),y) +TINC_CONF_ENV += \ + ax_cv_check_cflags___fPIE=no \ + ax_cv_check_ldflags___pie=no +endif + $(eval $(autotools-package)) diff --git a/package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch b/package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch new file mode 100644 index 00000000000..4c8d48fd9ed --- /dev/null +++ b/package/tinyalsa/0001-tinypcminfo-make-function-pcm_get_format_name-static.patch @@ -0,0 +1,45 @@ +From 10d82df8d920ceec4be9028a4939f96d6f407e81 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 26 Aug 2015 09:20:13 +0200 +Subject: [PATCH] tinypcminfo: make function pcm_get_format_name() static + +When building tinyalsa with gcc 5.x, the following warnings appear: + +tinypcminfo.c:97:52: warning: 'format_lookup' is static but used in inline function 'pcm_get_format_name' which is not static + return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL; + ^ +tinypcminfo.c:97:35: warning: 'format_lookup' is static but used in inline function 'pcm_get_format_name' which is not static + return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL; + +And the build fails with: + +tinypcminfo.o: In function `main': +tinypcminfo.c:(.text+0x2f0): undefined reference to `pcm_get_format_name' +collect2: error: ld returned 1 exit status + +To fix this, this patch marks the pcm_get_format_name() as static, +since it's anyway only used in tinypcminfo.c. + +Submitted upstream: https://github.com/tinyalsa/tinyalsa/pull/61 + +Signed-off-by: Thomas Petazzoni +--- + tinypcminfo.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tinypcminfo.c b/tinypcminfo.c +index b2d11bc..99eec34 100644 +--- a/tinypcminfo.c ++++ b/tinypcminfo.c +@@ -92,7 +92,7 @@ static const char *format_lookup[] = { + /* Returns a human readable name for the format associated with bit_index, + * NULL if bit_index is not known. + */ +-inline const char *pcm_get_format_name(unsigned bit_index) ++static inline const char *pcm_get_format_name(unsigned bit_index) + { + return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL; + } +-- +2.5.0 + diff --git a/package/tinyalsa/Config.in b/package/tinyalsa/Config.in index 65c5a1aa266..9ee47676fcd 100644 --- a/package/tinyalsa/Config.in +++ b/package/tinyalsa/Config.in @@ -13,5 +13,5 @@ config BR2_PACKAGE_TINYALSA https://github.com/tinyalsa/tinyalsa -comment "tinyalsa needs toolchain w/ dynamic library" +comment "tinyalsa needs a toolchain w/ dynamic library" depends on BR2_STATIC_LIBS diff --git a/package/tinyhttpd/S85tinyhttpd b/package/tinyhttpd/S85tinyhttpd index a1f4ce83684..fb512a0375d 100755 --- a/package/tinyhttpd/S85tinyhttpd +++ b/package/tinyhttpd/S85tinyhttpd @@ -8,17 +8,17 @@ mkdir -p /var/www case "$1" in start) - echo -n "Starting $NAME: " + printf "Starting $NAME: " $NAME > /dev/null & echo "done" ;; stop) - echo -n "Stopping $NAME: " + printf "Stopping $NAME: " killall -9 $NAME echo "done" ;; restart) - echo -n "Restarting $NAME: " + printf "Restarting $NAME: " killall -9 $NAME sleep 1 $NAME > /dev/null & diff --git a/package/tn5250/0002-Allow-building-against-OpenSSL-without-SSLv2_SSLv3.patch b/package/tn5250/0002-Allow-building-against-OpenSSL-without-SSLv2_SSLv3.patch new file mode 100644 index 00000000000..67f0fa63a11 --- /dev/null +++ b/package/tn5250/0002-Allow-building-against-OpenSSL-without-SSLv2_SSLv3.patch @@ -0,0 +1,32 @@ +$OpenBSD: patch-lib5250_sslstream_c,v 1.1 2015/10/07 16:09:04 jca Exp $ + +Allow building against OpenSSL without SSLv2/SSLv3 support. + +Download from: +http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/net/tn5250/patches/patch-lib5250_sslstream_c + +Signed-off-by: Peter Korsgaard +--- a/lib5250/sslstream.c.orig Fri Nov 21 09:12:21 2008 ++++ b/lib5250/sslstream.c Tue Oct 6 21:32:29 2015 +@@ -368,13 +368,19 @@ int tn5250_ssl_stream_init (Tn5250Stream *This) + methstr[4] = '\0'; + } + ++#ifndef OPENSSL_NO_SSL2 + if (!strcmp(methstr, "ssl2")) { + meth = SSLv2_client_method(); + TN5250_LOG(("SSL Method = SSLv2_client_method()\n")); +- } else if (!strcmp(methstr, "ssl3")) { ++ } else ++#endif ++#ifndef OPENSSL_NO_SSL3 ++ if (!strcmp(methstr, "ssl3")) { + meth = SSLv3_client_method(); + TN5250_LOG(("SSL Method = SSLv3_client_method()\n")); +- } else { ++ } else ++#endif ++ { + meth = SSLv23_client_method(); + TN5250_LOG(("SSL Method = SSLv23_client_method()\n")); + } diff --git a/package/tn5250/tn5250.mk b/package/tn5250/tn5250.mk index 213f02cb68e..bbaa686d860 100644 --- a/package/tn5250/tn5250.mk +++ b/package/tn5250/tn5250.mk @@ -13,7 +13,8 @@ TN5250_LICENSE_FILES = COPYING ifeq ($(BR2_PACKAGE_OPENSSL),y) TN5250_CONF_OPTS += --with-ssl-dir=$(STAGING_DIR)/usr -TN5250_DEPENDENCIES += openssl +TN5250_CONF_ENV += LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs openssl`" +TN5250_DEPENDENCIES += openssl host-pkgconf else TN5250_CONF_OPTS += --without-ssl endif diff --git a/package/tor/0001-openssl-libz.patch b/package/tor/0001-openssl-libz.patch index 2aebbf1200b..855b1c5dbf1 100644 --- a/package/tor/0001-openssl-libz.patch +++ b/package/tor/0001-openssl-libz.patch @@ -3,14 +3,15 @@ and remove host paths when looking for openssl. [Vincent: - Adapt the patch to make it apply on the new version.] +[Bernd: rebased for tor-0.2.7.6] Signed-off-by: Bernd Kuhls Signed-off-by: Vicente Olivert Riera -diff -uNr a/configure.ac b/configure.ac ---- a/configure.ac 2015-06-10 17:01:31.000000000 +0200 -+++ b/configure.ac 2015-06-18 16:22:27.652903761 +0200 -@@ -604,11 +604,11 @@ +diff -uNr tor-0.2.7.6.org/configure.ac tor-0.2.7.6/configure.ac +--- tor-0.2.7.6.org/configure.ac 2015-12-10 16:15:25.000000000 +0100 ++++ tor-0.2.7.6/configure.ac 2016-01-31 20:21:34.850408145 +0100 +@@ -607,11 +607,11 @@ fi ]) @@ -24,24 +25,24 @@ diff -uNr a/configure.ac b/configure.ac dnl XXXX check for OPENSSL_VERSION_NUMBER == SSLeay() -diff -uNr a/src/or/include.am b/src/or/include.am ---- a/src/or/include.am 2015-02-24 16:33:30.000000000 +0100 -+++ b/src/or/include.am 2015-06-18 16:24:10.042349070 +0200 +diff -uNr tor-0.2.7.6.org/src/or/include.am tor-0.2.7.6/src/or/include.am +--- tor-0.2.7.6.org/src/or/include.am 2015-12-08 18:35:17.000000000 +0100 ++++ tor-0.2.7.6/src/or/include.am 2016-01-31 20:22:09.322777527 +0100 @@ -110,7 +110,7 @@ src_or_tor_LDADD = src/or/libtor.a src/common/libor.a \ src/common/libor-crypto.a $(LIBDONNA) \ - src/common/libor-event.a \ + src/common/libor-event.a src/trunnel/libor-trunnel.a \ - @TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ \ + @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ @TOR_SYSTEMD_LIBS@ if COVERAGE_ENABLED -diff -uNr a/src/test/include.am b/src/test/include.am ---- a/src/test/include.am 2015-03-10 15:26:37.000000000 +0100 -+++ b/src/test/include.am 2015-06-18 16:28:06.867732744 +0200 -@@ -91,8 +91,8 @@ +diff -uNr tor-0.2.7.6.org/src/test/include.am tor-0.2.7.6/src/test/include.am +--- tor-0.2.7.6.org/src/test/include.am 2015-12-08 18:35:17.000000000 +0100 ++++ tor-0.2.7.6/src/test/include.am 2016-01-31 20:25:59.673127854 +0100 +@@ -127,8 +127,8 @@ src_test_test_LDADD = src/or/libtor-testing.a src/common/libor-testing.a \ - src/common/libor-crypto-testing.a $(LIBDONNA) \ + src/common/libor-crypto-testing.a $(LIBDONNA) src/common/libor.a \ src/common/libor-event-testing.a src/trunnel/libor-trunnel-testing.a \ - @TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \ - @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ \ @@ -50,10 +51,10 @@ diff -uNr a/src/test/include.am b/src/test/include.am @TOR_SYSTEMD_LIBS@ src_test_test_slow_CPPFLAGS = $(src_test_test_CPPFLAGS) -@@ -105,8 +105,8 @@ +@@ -146,8 +146,8 @@ src_test_bench_LDADD = src/or/libtor.a src/common/libor.a \ src/common/libor-crypto.a $(LIBDONNA) \ - src/common/libor-event.a \ + src/common/libor-event.a src/trunnel/libor-trunnel.a \ - @TOR_ZLIB_LIBS@ @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \ - @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ \ + @TOR_LIB_MATH@ @TOR_LIBEVENT_LIBS@ \ @@ -61,7 +62,7 @@ diff -uNr a/src/test/include.am b/src/test/include.am @TOR_SYSTEMD_LIBS@ src_test_test_workqueue_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \ -@@ -115,8 +115,8 @@ +@@ -156,8 +156,8 @@ src/common/libor-testing.a \ src/common/libor-crypto-testing.a $(LIBDONNA) \ src/common/libor-event-testing.a \ @@ -72,7 +73,7 @@ diff -uNr a/src/test/include.am b/src/test/include.am noinst_HEADERS+= \ src/test/fakechans.h \ -@@ -133,8 +133,8 @@ +@@ -174,8 +174,8 @@ src_test_test_ntor_cl_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ src_test_test_ntor_cl_LDADD = src/or/libtor.a src/common/libor.a \ src/common/libor-crypto.a $(LIBDONNA) \ @@ -82,24 +83,34 @@ diff -uNr a/src/test/include.am b/src/test/include.am + @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ src_test_test_ntor_cl_AM_CPPFLAGS = \ -I"$(top_srcdir)/src/or" - NTOR_TEST_DEPS=src/test/test-ntor-cl -diff -uNr a/src/tools/include.am b/src/tools/include.am ---- a/src/tools/include.am 2015-02-24 16:33:31.000000000 +0100 -+++ b/src/tools/include.am 2015-06-18 16:29:48.460515701 +0200 -@@ -9,14 +9,14 @@ + +diff -uNr tor-0.2.7.6.org/src/tools/include.am tor-0.2.7.6/src/tools/include.am +--- tor-0.2.7.6.org/src/tools/include.am 2015-11-13 14:33:26.000000000 +0100 ++++ tor-0.2.7.6/src/tools/include.am 2016-01-31 20:27:29.954004495 +0100 +@@ -21,7 +21,7 @@ src_tools_tor_gencert_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ src_tools_tor_gencert_LDADD = src/common/libor.a src/common/libor-crypto.a \ - $(LIBDONNA) \ + $(LIBDONNA) \ +- @TOR_LIB_MATH@ @TOR_ZLIB_LIBS@ @TOR_OPENSSL_LIBS@ \ ++ @TOR_LIB_MATH@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ + @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ + + if COVERAGE_ENABLED +@@ -32,7 +32,7 @@ + src_tools_tor_cov_gencert_LDADD = src/common/libor-testing.a \ + src/common/libor-crypto-testing.a \ + $(LIBDONNA) \ - @TOR_LIB_MATH@ @TOR_ZLIB_LIBS@ @TOR_OPENSSL_LIBS@ \ + @TOR_LIB_MATH@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ + endif - src_tools_tor_checkkey_SOURCES = src/tools/tor-checkkey.c +@@ -40,7 +40,7 @@ src_tools_tor_checkkey_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ src_tools_tor_checkkey_LDADD = src/common/libor.a src/common/libor-crypto.a \ - $(LIBDONNA) \ + $(LIBDONNA) \ - @TOR_LIB_MATH@ @TOR_ZLIB_LIBS@ @TOR_OPENSSL_LIBS@ \ + @TOR_LIB_MATH@ @TOR_OPENSSL_LIBS@ @TOR_ZLIB_LIBS@ \ @TOR_LIB_WS32@ @TOR_LIB_GDI@ @CURVE25519_LIBS@ - include src/tools/tor-fw-helper/include.am + EXTRA_DIST += src/tools/tor-fw-helper/README diff --git a/package/tor/tor.hash b/package/tor/tor.hash index 341a6114315..a836476f469 100644 --- a/package/tor/tor.hash +++ b/package/tor/tor.hash @@ -1,2 +1,2 @@ # Locally computed -sha256 4a6c29ad89a98d7832c599d9480d6d8e55355fb3b8f4b506c5df557f15942f9c tor-0.2.6.9.tar.gz +sha256 493a8679f904503048114aca6467faef56861206bab8283d858f37141d95105d tor-0.2.7.6.tar.gz diff --git a/package/tor/tor.mk b/package/tor/tor.mk index a4643913df1..f6874a664a4 100644 --- a/package/tor/tor.mk +++ b/package/tor/tor.mk @@ -4,7 +4,7 @@ # ################################################################################ -TOR_VERSION = 0.2.6.9 +TOR_VERSION = 0.2.7.6 TOR_SITE = https://dist.torproject.org TOR_LICENSE = BSD-3c TOR_LICENSE_FILES = LICENSE diff --git a/package/torsmo/Config.in b/package/torsmo/Config.in index a3943bda8b0..5c18ac6f48a 100644 --- a/package/torsmo/Config.in +++ b/package/torsmo/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_TORSMO bool "torsmo" + depends on BR2_DEPRECATED_SINCE_2015_11 depends on BR2_PACKAGE_XORG7 depends on BR2_USE_MMU # fork() select BR2_PACKAGE_XLIB_LIBX11 diff --git a/package/torsmo/torsmo.hash b/package/torsmo/torsmo.hash new file mode 100644 index 00000000000..8bbf9dc87af --- /dev/null +++ b/package/torsmo/torsmo.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 6a6bc82e71c841ba9359f0ffe370e57ef7b04b49a448252bb0c1c28fc10e964c torsmo-0.18.tar.gz diff --git a/package/tovid/Config.in b/package/tovid/Config.in index ccf031e8a6c..093bfdf2a2b 100644 --- a/package/tovid/Config.in +++ b/package/tovid/Config.in @@ -5,8 +5,7 @@ config BR2_PACKAGE_TOVID depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR depends on BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 # ffmpeg - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 # ffmpeg + depends on !BR2_nios2 # ffmpeg depends on BR2_PACKAGE_MPLAYER_ARCH_SUPPORTS # The below dependencies are runtime dependencies only select BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # procps_ng diff --git a/package/tpm-tools/0001-tpm_nvread-include-sys-stat.h-for-open-modes.patch b/package/tpm-tools/0001-tpm_nvread-include-sys-stat.h-for-open-modes.patch new file mode 100644 index 00000000000..35fd7632bd1 --- /dev/null +++ b/package/tpm-tools/0001-tpm_nvread-include-sys-stat.h-for-open-modes.patch @@ -0,0 +1,33 @@ +From 5fedfd32a226e3ac8a6022227ec2d8fc6df26901 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 24 Dec 2015 08:57:09 +0100 +Subject: [PATCH] tpm_nvread: include for open() modes + +As the manual page of open(2) indicates, the header +should be included. Indeed, it is this header that provides the mode_t +macros such as S_IRUSR and S_IWUSR. + +While the build happens to work with glibc without this included +header, it fails with other C libraries such as uClibc, due to the +missing inclusion. + +Signed-off-by: Thomas Petazzoni +--- + src/tpm_mgmt/tpm_nvread.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/tpm_mgmt/tpm_nvread.c b/src/tpm_mgmt/tpm_nvread.c +index 35fe17c..92f047c 100644 +--- a/src/tpm_mgmt/tpm_nvread.c ++++ b/src/tpm_mgmt/tpm_nvread.c +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + #include "tpm_nvcommon.h" + #include "tpm_tspi.h" +-- +2.6.4 + diff --git a/package/tpm-tools/0002-Makefile.am-make-sure-libintl-is-in-LDFLAGS-when-nee.patch b/package/tpm-tools/0002-Makefile.am-make-sure-libintl-is-in-LDFLAGS-when-nee.patch new file mode 100644 index 00000000000..fac7b2cc9a6 --- /dev/null +++ b/package/tpm-tools/0002-Makefile.am-make-sure-libintl-is-in-LDFLAGS-when-nee.patch @@ -0,0 +1,104 @@ +Fetched from: http://sourceforge.net/p/trousers/mailman/message/34728585/ +Upstream status: Submitted + +From 924cbdfc67ca405aa4df2f9d3787365618b58630 Mon Sep 17 00:00:00 2001 +From: Samuel Martin +Date: Wed, 30 Dec 2015 00:06:33 +0100 +Subject: [PATCH] Makefile.am: make sure libintl is in LDFLAGS when needed + +The build-system internally builds a couple of static libraries used to +build the final programs. + +When linking these libraries and the final programs, we need to +explicitly tell libtool to link with libintl in order to resolve all the +missing symbols. + +This is done in the appropriate LDADD/LIBADD variables (or the per-target +*_LDADD/*_LIBADD ones when they do not default to LDADD or LIBADD), for +any sources using gettext/libintl functionalities. + +This change fixes build failures [2,3] in cross-compilation, triggered by +Buildroot buildfarms [1]. + +[1] http://autobuild.buildroot.org/ +[2] http://autobuild.buildroot.org/?reason=tpm-tools-1.3.8 +[3] http://autobuild.buildroot.org/results/c82/c82a6c1f41c561b15f10e7b7ffcaed15fa0ec895/build-end.log + +Signed-off-by: Samuel Martin +--- + lib/Makefile.am | 6 +++--- + src/cmds/Makefile.am | 2 +- + src/data_mgmt/Makefile.am | 2 +- + src/tpm_mgmt/Makefile.am | 2 +- + 4 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/lib/Makefile.am b/lib/Makefile.am +index cef6a2f..c1d7009 100644 +--- a/lib/Makefile.am ++++ b/lib/Makefile.am +@@ -44,7 +44,7 @@ libtpm_utils_la_SOURCES = tpm_utils.c \ + # + # TSPI interface library + libtpm_tspi_la_SOURCES = tpm_tspi.c +-libtpm_tspi_la_LIBADD = libtpm_utils.la -ldl ++libtpm_tspi_la_LIBADD = libtpm_utils.la -ldl @INTLLIBS@ + + # + # PKCS#11 interface library +@@ -52,7 +52,7 @@ if P11_SUPPORT + noinst_LTLIBRARIES += libtpm_pkcs11.la + + libtpm_pkcs11_la_SOURCES= tpm_pkcs11.c +-libtpm_pkcs11_la_LIBADD = libtpm_utils.la ++libtpm_pkcs11_la_LIBADD = libtpm_utils.la @INTLLIBS@ + endif + + # +@@ -80,4 +80,4 @@ endif + # Unseal library - for addition to existing apps, counter part of seal cmd + libtpm_unseal_la_SOURCES = tpm_unseal.c + libtpm_unseal_la_LDFLAGS = -shared -version-info 1:0:0 +-libtpm_unseal_la_LIBADD = -ltspi libtpm_tspi.la ++libtpm_unseal_la_LIBADD = -ltspi libtpm_tspi.la @INTLLIBS@ +diff --git a/src/cmds/Makefile.am b/src/cmds/Makefile.am +index de73ecf..27fc9ef 100644 +--- a/src/cmds/Makefile.am ++++ b/src/cmds/Makefile.am +@@ -30,7 +30,7 @@ else + AM_CPPFLAGS = -I$(top_srcdir)/include -D_LINUX + endif + +-LDADD = $(top_builddir)/lib/libtpm_tspi.la -ltspi $(top_builddir)/lib/libtpm_unseal.la -ltpm_unseal -lcrypto ++LDADD = $(top_builddir)/lib/libtpm_tspi.la -ltspi $(top_builddir)/lib/libtpm_unseal.la -ltpm_unseal -lcrypto @INTLLIBS@ + + tpm_sealdata_SOURCES = tpm_sealdata.c + tpm_unsealdata_SOURCES = tpm_unsealdata.c +diff --git a/src/data_mgmt/Makefile.am b/src/data_mgmt/Makefile.am +index f8bf41c..de505e4 100644 +--- a/src/data_mgmt/Makefile.am ++++ b/src/data_mgmt/Makefile.am +@@ -38,7 +38,7 @@ noinst_HEADERS = data_common.h \ + # Common build flags + AM_CPPFLAGS = -I$(top_srcdir)/include -D_LINUX + +-LDADD = $(top_builddir)/lib/libtpm_pkcs11.la -ltspi -ldl ++LDADD = $(top_builddir)/lib/libtpm_pkcs11.la -ltspi -ldl @INTLLIBS@ + + + # +diff --git a/src/tpm_mgmt/Makefile.am b/src/tpm_mgmt/Makefile.am +index 195fba9..7ca47c9 100644 +--- a/src/tpm_mgmt/Makefile.am ++++ b/src/tpm_mgmt/Makefile.am +@@ -55,7 +55,7 @@ else + AM_CPPFLAGS = -I$(top_srcdir)/include -D_LINUX + endif + +-LDADD = $(top_builddir)/lib/libtpm_tspi.la -ltspi ++LDADD = $(top_builddir)/lib/libtpm_tspi.la -ltspi @INTLLIBS@ + + tpm_startup_SOURCES = tpm_startup.c + tpm_reset_SOURCES = tpm_reset.c +-- +2.6.4 + diff --git a/package/tpm-tools/0002-configure.in-remove-Werror.patch b/package/tpm-tools/0002-configure.in-remove-Werror.patch new file mode 100644 index 00000000000..c101a9517f3 --- /dev/null +++ b/package/tpm-tools/0002-configure.in-remove-Werror.patch @@ -0,0 +1,27 @@ +From b060873f444d79f3f5aa388427cb1ede6665834a Mon Sep 17 00:00:00 2001 +From: Kent Yoder +Date: Mon, 5 Nov 2012 14:58:31 -0600 +Subject: [PATCH] configure.in: remove -Werror + +Signed-off-by: Kent Yoder +Signed-off-by: Noe Rubinstein +--- + configure.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.in b/configure.in +index da170d0..0f175be 100644 +--- a/configure.in ++++ b/configure.in +@@ -138,7 +138,7 @@ AC_TYPE_SIZE_T + AC_TYPE_SIGNAL + AC_TYPE_UID_T + +-CFLAGS="$CFLAGS -Wall -Werror -Wreturn-type -Wsign-compare" ++CFLAGS="$CFLAGS -Wall -Wreturn-type -Wsign-compare" + + AC_CONFIG_FILES(./Makefile \ + po/Makefile.in \ +-- +2.1.4 + diff --git a/package/tpm-tools/Config.in b/package/tpm-tools/Config.in new file mode 100644 index 00000000000..dd59aaaf492 --- /dev/null +++ b/package/tpm-tools/Config.in @@ -0,0 +1,14 @@ +config BR2_PACKAGE_TPM_TOOLS + bool "tpm-tools" + select BR2_PACKAGE_TROUSERS + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE + depends on BR2_TOOLCHAIN_HAS_THREADS # trousers + depends on !BR2_STATIC_LIBS # trousers + help + Tools to manage and diagnose a TPM + + http://trousers.sourceforge.net/ + +comment "tpm-tools needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/tpm-tools/tpm-tools.hash b/package/tpm-tools/tpm-tools.hash new file mode 100644 index 00000000000..8c1ff899a96 --- /dev/null +++ b/package/tpm-tools/tpm-tools.hash @@ -0,0 +1,3 @@ +# http://sourceforge.net/projects/trousers/files/tpm-tools/1.3.8/ +sha1 f2c799ac8dc78f3537e1dbe4ae7c6e93f37e868c tpm-tools-1.3.8.tar.gz +md5 85a978c4e03fefd4b73cbeadde7c4d0b tpm-tools-1.3.8.tar.gz diff --git a/package/tpm-tools/tpm-tools.mk b/package/tpm-tools/tpm-tools.mk new file mode 100644 index 00000000000..72afc443d80 --- /dev/null +++ b/package/tpm-tools/tpm-tools.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# tpm-tools +# +################################################################################ + +TPM_TOOLS_VERSION = 1.3.8 +TPM_TOOLS_SOURCE = tpm-tools-$(TPM_TOOLS_VERSION).tar.gz +TPM_TOOLS_SITE = http://downloads.sourceforge.net/project/trousers/tpm-tools/$(TPM_TOOLS_VERSION) +TPM_TOOLS_STRIP_COMPONENTS = 2 +TPM_TOOLS_LICENSE = Common Public License Version 1.0 +TPM_TOOLS_LICENSE_FILES = LICENSE +TPM_TOOLS_DEPENDENCIES = trousers openssl \ + $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) +# configure.in and lib/Makefile.am is patched +TPM_TOOLS_AUTORECONF = YES +TPM_TOOLS_GETTEXTIZE = YES + +TPM_TOOLS_CONF_OPTS = --disable-pkcs11-support + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +TPM_TOOLS_CONF_ENV += LIBS='-liconv' +endif + +$(eval $(autotools-package)) diff --git a/package/trace-cmd/0001-Fix-ptrace-detection.patch b/package/trace-cmd/0001-Fix-ptrace-detection.patch deleted file mode 100644 index b17d7df0d26..00000000000 --- a/package/trace-cmd/0001-Fix-ptrace-detection.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 0070081ffe65a4fbe442044ddfcc818593c98e33 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Wed, 30 Oct 2013 22:35:34 +0100 -Subject: [PATCH] Fix ptrace detection - -Ptrace support detection is ignored when CFLAGS is set in command -arguments. Use override in Makefile to add -DWARN_NO_PTRACE and --DNO_PTRACE in CFLAGS if ptrace is not available. - -Signed-off-by: Romain Naour ---- - Makefile | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/Makefile b/Makefile -index 83329ca..01b4f45 100644 ---- a/Makefile -+++ b/Makefile -@@ -223,12 +223,12 @@ LDFLAGS ?= - ifndef NO_PTRACE - ifneq ($(call try-cc,$(SOURCE_PTRACE),),y) - NO_PTRACE = 1 -- CFLAGS += -DWARN_NO_PTRACE -+ override CFLAGS += -DWARN_NO_PTRACE - endif - endif - - ifdef NO_PTRACE --CFLAGS += -DNO_PTRACE -+override CFLAGS += -DNO_PTRACE - endif - - # Append required CFLAGS --- -1.8.1.2 - diff --git a/package/trace-cmd/trace-cmd.mk b/package/trace-cmd/trace-cmd.mk index 02836cef1de..2348155cb8e 100644 --- a/package/trace-cmd/trace-cmd.mk +++ b/package/trace-cmd/trace-cmd.mk @@ -4,15 +4,19 @@ # ################################################################################ -TRACE_CMD_VERSION = trace-cmd-v2.3.2 +TRACE_CMD_VERSION = trace-cmd-v2.6 TRACE_CMD_SITE = $(BR2_KERNEL_MIRROR)/scm/linux/kernel/git/rostedt/trace-cmd.git TRACE_CMD_SITE_METHOD = git TRACE_CMD_INSTALL_STAGING = YES -TRACE_CMD_LICENSE = GPLv2 LGPLv2.1 +TRACE_CMD_LICENSE = GPLv2, LGPLv2.1 TRACE_CMD_LICENSE_FILES = COPYING COPYING.LIB TRACE_CMD_DEPENDENCIES = host-pkgconf +ifeq ($(BR2_PACKAGE_AUDIT),y) +TRACE_CMD_DEPENDENCIES += audit +endif + ifeq ($(BR2_PACKAGE_PYTHON),y) TRACE_CMD_DEPENDENCIES += python host-swig TRACE_CMD_MAKE_OPTS = PYTHON_VERS=python diff --git a/package/transmission/0002-musl-missing-header.patch b/package/transmission/0002-musl-missing-header.patch new file mode 100644 index 00000000000..ebb74cbffbe --- /dev/null +++ b/package/transmission/0002-musl-missing-header.patch @@ -0,0 +1,36 @@ +Fix musl build + +Downloaded from +https://cgit.gentoo.org/proj/musl.git/tree/net-p2p/transmission/files/transmission-2.84-musl-missing-header.patch + +Signed-off-by: Bernd Kuhls + + +libtransmission/transmission.h: add missing + +transmission.h and several files including it, like bitfield.c and fdlimits.h +make reference to ssize_t, off_t and other types defined in but +never include the header. By including in transmission.h, the +required type definitions are propagated to all files that need them. + +Not including on glibc and uClibc systems does not pose a problem +because of the way the headers stack in those C Standard Libraries, but on musl +excluding leads to compile time failure. + +For the POSIX specs, see + +http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_types.h.html + +Signed-of-by: Anthony G. Basile + +diff -Naur transmission-2.84.orig/libtransmission/transmission.h transmission-2.84/libtransmission/transmission.h +--- transmission-2.84.orig/libtransmission/transmission.h 2014-07-01 13:09:01.682910744 -0400 ++++ transmission-2.84/libtransmission/transmission.h 2015-07-19 03:11:07.379219181 -0400 +@@ -28,6 +28,7 @@ + + #include /* uintN_t */ + #include /* time_t */ ++#include + + #ifdef WIN32 + #define __USE_MINGW_ANSI_STDIO 1 diff --git a/package/tremor/Config.in b/package/tremor/Config.in index 61259261e63..1a478c47a06 100644 --- a/package/tremor/Config.in +++ b/package/tremor/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_TREMOR bool "tremor (fixed point vorbis decoder)" + select BR2_PACKAGE_LIBOGG help Tremor is a fixed point implementation of an Ogg Vorbis decoder. It provides a decoding API similar to libvorbis, diff --git a/package/tremor/tremor.mk b/package/tremor/tremor.mk index 590a18c0149..97b0ce36e4a 100644 --- a/package/tremor/tremor.mk +++ b/package/tremor/tremor.mk @@ -6,7 +6,7 @@ TREMOR_SITE = http://svn.xiph.org/trunk/Tremor TREMOR_SITE_METHOD = svn -TREMOR_VERSION = 18153 +TREMOR_VERSION = 19427 TREMOR_LICENSE = BSD-3c TREMOR_LICENSE_FILES = COPYING diff --git a/package/triggerhappy/S10triggerhappy b/package/triggerhappy/S10triggerhappy index 81861958497..3253e910b1b 100755 --- a/package/triggerhappy/S10triggerhappy +++ b/package/triggerhappy/S10triggerhappy @@ -11,13 +11,13 @@ test -x $DAEMON || exit 0 [ -r /etc/default/triggerhappy ] && . /etc/default/triggerhappy start() { - echo -n "Starting $NAME: " + printf "Starting $NAME: " start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- $DAEMON_ARGS \ && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping $NAME: " + printf "Stopping $NAME: " start-stop-daemon --stop --quiet --pidfile $PIDFILE \ && echo "OK" || echo "FAIL" } diff --git a/package/triggerhappy/triggerhappy.hash b/package/triggerhappy/triggerhappy.hash new file mode 100644 index 00000000000..17eefdb2481 --- /dev/null +++ b/package/triggerhappy/triggerhappy.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 6b01497377e522c368818c5f6c726362f42530e3dc24a01c6d77b1b4d6068308 triggerhappy-7e5abc69f215678e93a6b999524981c8b40bdcd9.tar.gz diff --git a/package/triggerhappy/triggerhappy.mk b/package/triggerhappy/triggerhappy.mk index 3a68e509453..5a29ca7773d 100644 --- a/package/triggerhappy/triggerhappy.mk +++ b/package/triggerhappy/triggerhappy.mk @@ -4,15 +4,13 @@ # ################################################################################ -TRIGGERHAPPY_VERSION = aac9f353a28c0f414b27ac54bbbb2292c152eedc +TRIGGERHAPPY_VERSION = 7e5abc69f215678e93a6b999524981c8b40bdcd9 TRIGGERHAPPY_SITE = $(call github,wertarbyte,triggerhappy,$(TRIGGERHAPPY_VERSION)) TRIGGERHAPPY_LICENSE = GPLv3+ TRIGGERHAPPY_LICENSE_FILES = COPYING define TRIGGERHAPPY_BUILD_CMDS - $(MAKE) $(TARGET_CONFIGURE_OPTS) \ - LINUX_INPUT_H=$(STAGING_DIR)/usr/include/linux/input.h \ - -C $(@D) thd th-cmd + $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) thd th-cmd endef ifeq ($(BR2_PACKAGE_HAS_UDEV),y) diff --git a/package/trinity/0001-mips-fix-prctl-s.patch b/package/trinity/0001-mips-fix-prctl-s.patch new file mode 100644 index 00000000000..aacd8d5bf65 --- /dev/null +++ b/package/trinity/0001-mips-fix-prctl-s.patch @@ -0,0 +1,39 @@ +From d61dd102b95b9791e45d6bbf1e34814b8c6c1731 Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Mon, 14 Dec 2015 14:46:37 +0000 +Subject: [PATCH] mips: fix prctl's + +It looks like a typo in the syscalls/prctl.c file. It's lacking the PR_ +preffix, and due to that is causing build failures like this one: + + CC syscalls/prctl.o +syscalls/prctl.c:37:2: error: 'GET_FP_MODE' undeclared here (not in a +function) + GET_FP_MODE, SET_FP_MODE, + ^ +syscalls/prctl.c:37:15: error: 'SET_FP_MODE' undeclared here (not +in a function) + GET_FP_MODE, SET_FP_MODE, + ^ + +Signed-off-by: Vicente Olivert Riera +--- + syscalls/prctl.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/syscalls/prctl.c b/syscalls/prctl.c +index 523f03e..5a64fb3 100644 +--- a/syscalls/prctl.c ++++ b/syscalls/prctl.c +@@ -34,7 +34,7 @@ static int prctl_opts[] = { + PR_GET_NO_NEW_PRIVS, PR_GET_TID_ADDRESS, PR_SET_THP_DISABLE, PR_GET_THP_DISABLE, + PR_MPX_ENABLE_MANAGEMENT, PR_MPX_DISABLE_MANAGEMENT, + #ifdef __mips__ +- GET_FP_MODE, SET_FP_MODE, ++ PR_GET_FP_MODE, PR_SET_FP_MODE, + #endif + PR_CAP_AMBIENT, + }; +-- +2.4.10 + diff --git a/package/trinity/0001-vt.c-add-missing-include-to-fix-building-with-uClibc.patch b/package/trinity/0001-vt.c-add-missing-include-to-fix-building-with-uClibc.patch deleted file mode 100644 index e1d23cd6008..00000000000 --- a/package/trinity/0001-vt.c-add-missing-include-to-fix-building-with-uClibc.patch +++ /dev/null @@ -1,47 +0,0 @@ -vt.c: add missing include to fix building with uClibc - -Backporting an upstream patch to fix a building issue with uClibc. - -Upstream commit: - - https://github.com/kernelslacker/trinity/commit/fb4a1adc4540f0702b84aa900f2b8ebed004885d - -Signed-off-by: Vicente Olivert Riera - -From fb4a1adc4540f0702b84aa900f2b8ebed004885d Mon Sep 17 00:00:00 2001 -From: Vicente Olivert Riera -Date: Wed, 18 Mar 2015 09:58:46 +0000 -Subject: [PATCH] vt.c: add missing include to fix building with uClibc - -"#include " is needed in order to build trinity -successfully with uClibc. Otherwise it would fail displaying an error -message like this one: - -ioctls/vt.c:152:8: error: invalid application of 'sizeof' to incomplete -type 'struct serial_rs485' - IOCTL(TIOCGRS485), - -ioctls/vt.c:155:8: error: invalid application of 'sizeof' to incomplete -type 'struct serial_rs485' - IOCTL(TIOCSRS485), - -Signed-off-by: Vicente Olivert Riera ---- - ioctls/vt.c | 1 + - 1 files changed, 1 insertions(+), 0 deletions(-) - -diff --git a/ioctls/vt.c b/ioctls/vt.c -index 5e7e7d7..a4a7e0c 100644 ---- a/ioctls/vt.c -+++ b/ioctls/vt.c -@@ -1,6 +1,7 @@ - #include - #include - #include -+#include - - #include "utils.h" - #include "ioctls.h" --- -1.7.1 - diff --git a/package/trinity/trinity.hash b/package/trinity/trinity.hash new file mode 100644 index 00000000000..e290a40920a --- /dev/null +++ b/package/trinity/trinity.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3ef7ae05dba14f8bb626121983a08bb09d1d51a19de38bd9a8e0f29b11d9e3c9 trinity-v1.6.tar.gz diff --git a/package/trinity/trinity.mk b/package/trinity/trinity.mk index 211f1b61699..7596e92ba83 100644 --- a/package/trinity/trinity.mk +++ b/package/trinity/trinity.mk @@ -4,7 +4,7 @@ # ################################################################################ -TRINITY_VERSION = v1.5 +TRINITY_VERSION = v1.6 TRINITY_SITE = $(call github,kernelslacker,trinity,$(TRINITY_VERSION)) TRINITY_LICENSE = GPLv2 TRINITY_LICENSE_FILES = COPYING diff --git a/package/trousers/0001-Remove-inline-for-read_data-and-write_data.patch b/package/trousers/0001-Remove-inline-for-read_data-and-write_data.patch new file mode 100644 index 00000000000..b0db70b49b4 --- /dev/null +++ b/package/trousers/0001-Remove-inline-for-read_data-and-write_data.patch @@ -0,0 +1,94 @@ +From f03c7987c234a81f7e4274b26bab07318357a2a5 Mon Sep 17 00:00:00 2001 +From: Sergio Prado +Date: Fri, 25 Dec 2015 20:09:21 -0200 +Subject: [PATCH] Remove inline for read_data and write_data + +read_data and write_data functions are declared with inline, but +their definition is not in a .h file. This is causing errors when +linking: + +tcsps.c:(.text+0x4ac): undefined reference to `read_data' +tcsps.c:(.text+0x1888): undefined reference to `write_data' +... + +Partial backport of upstream commit +3297fcdf5ac0df868778e976b8b59e35542c1ee2. + +Signed-off-by: Sergio Prado +--- + src/include/tcsps.h | 5 ----- + src/tcs/ps/ps_utils.c | 8 -------- + src/tspi/ps/ps_utils.c | 4 ++-- + 3 files changed, 2 insertions(+), 15 deletions(-) + +diff --git a/src/include/tcsps.h b/src/include/tcsps.h +index 87542965877d..dcd5db469822 100644 +--- a/src/include/tcsps.h ++++ b/src/include/tcsps.h +@@ -23,13 +23,8 @@ int get_file(); + int put_file(int); + void close_file(int); + void ps_destroy(); +-#ifdef SOLARIS + TSS_RESULT read_data(int, void *, UINT32); + TSS_RESULT write_data(int, void *, UINT32); +-#else +-inline TSS_RESULT read_data(int, void *, UINT32); +-inline TSS_RESULT write_data(int, void *, UINT32); +-#endif + int write_key_init(int, UINT32, UINT32, UINT32); + TSS_RESULT cache_key(UINT32, UINT16, TSS_UUID *, TSS_UUID *, UINT16, UINT32, UINT32); + TSS_RESULT UnloadBlob_KEY_PS(UINT16 *, BYTE *, TSS_KEY *); +diff --git a/src/tcs/ps/ps_utils.c b/src/tcs/ps/ps_utils.c +index 2e7f502b9599..35ac89f8fc12 100644 +--- a/src/tcs/ps/ps_utils.c ++++ b/src/tcs/ps/ps_utils.c +@@ -42,11 +42,7 @@ + struct key_disk_cache *key_disk_cache_head = NULL; + + +-#ifdef SOLARIS + TSS_RESULT +-#else +-inline TSS_RESULT +-#endif + read_data(int fd, void *data, UINT32 size) + { + int rc; +@@ -64,11 +60,7 @@ read_data(int fd, void *data, UINT32 size) + } + + +-#ifdef SOLARIS + TSS_RESULT +-#else +-inline TSS_RESULT +-#endif + write_data(int fd, void *data, UINT32 size) + { + int rc; +diff --git a/src/tspi/ps/ps_utils.c b/src/tspi/ps/ps_utils.c +index aac40a147314..83259141d375 100644 +--- a/src/tspi/ps/ps_utils.c ++++ b/src/tspi/ps/ps_utils.c +@@ -22,7 +22,7 @@ + #include "tspps.h" + #include "tsplog.h" + +-inline TSS_RESULT ++TSS_RESULT + read_data(int fd, void *data, UINT32 size) + { + int rc; +@@ -39,7 +39,7 @@ read_data(int fd, void *data, UINT32 size) + return TSS_SUCCESS; + } + +-inline TSS_RESULT ++TSS_RESULT + write_data(int fd, void *data, UINT32 size) + { + int rc; +-- +1.9.1 + diff --git a/package/trousers/0002-Check-if-the-compiler-understands-pie-and-relro-options.patch b/package/trousers/0002-Check-if-the-compiler-understands-pie-and-relro-options.patch new file mode 100644 index 00000000000..3275b76a2c8 --- /dev/null +++ b/package/trousers/0002-Check-if-the-compiler-understands-pie-and-relro-options.patch @@ -0,0 +1,215 @@ +From 9abda1bb380bdbef1affaec381742ced394ca118 Mon Sep 17 00:00:00 2001 +From: Lada Trimasova +Date: Mon, 18 Jan 2016 15:58:19 +0300 +Subject: [PATCH] Check if the compiler understands pie and relro options + +-pie and -fpie enable the building of position-independent +executables, and -Wl,-z,relro turns on read-only relocation support in gcc. +Add checks to ensure that the compiler and linker understand these options. + +Signed-off-by: Lada Trimasova +--- + configure.in | 5 +++ + m4/ax_check_compile_flag.m4 | 72 ++++++++++++++++++++++++++++++++++++ + m4/ax_check_link_flag.m4 | 71 +++++++++++++++++++++++++++++++++++ + src/tcsd/Makefile.am | 4 +- + 4 files changed, 150 insertions(+), 2 deletions(-) + create mode 100644 m4/ax_check_compile_flag.m4 + create mode 100644 m4/ax_check_link_flag.m4 + +diff --git a/configure.in b/configure.in +index add23dc..9603353 100644 +--- a/configure.in ++++ b/configure.in +@@ -12,6 +12,7 @@ TSS_VER_MINOR=3 + # compute $target + AC_CANONICAL_TARGET + AM_INIT_AUTOMAKE([foreign 1.6]) ++AC_CONFIG_MACRO_DIR([m4]) + + # Debugging support + AC_ARG_ENABLE([debug], +@@ -383,6 +384,10 @@ elif test x"${prefix}" = x"NONE"; then + localstatedir="/usr/local/var" + fi + ++AX_CHECK_COMPILE_FLAG([-fPIE -DPIE], [PIE_CFLAGS="-fPIE -DPIE"]) ++AX_CHECK_LINK_FLAG([-pie], [PIE_LDFLAGS="$PIE_LDFLAGS -pie"]) ++AX_CHECK_LINK_FLAG([-Wl,-z,relro], [LDFLAGS="$LDFLAGS -Wl,-z,relro"]) ++ + AC_OUTPUT(dist/tcsd.conf \ + dist/fedora/trousers.spec \ + dist/trousers.spec \ +diff --git a/m4/ax_check_compile_flag.m4 b/m4/ax_check_compile_flag.m4 +new file mode 100644 +index 0000000..c3a8d69 +--- /dev/null ++++ b/m4/ax_check_compile_flag.m4 +@@ -0,0 +1,72 @@ ++# =========================================================================== ++# http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html ++# =========================================================================== ++# ++# SYNOPSIS ++# ++# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS]) ++# ++# DESCRIPTION ++# ++# Check whether the given FLAG works with the current language's compiler ++# or gives an error. (Warnings, however, are ignored) ++# ++# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on ++# success/failure. ++# ++# If EXTRA-FLAGS is defined, it is added to the current language's default ++# flags (e.g. CFLAGS) when the check is done. The check is thus made with ++# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to ++# force the compiler to issue an error when a bad flag is given. ++# ++# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this ++# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG. ++# ++# LICENSE ++# ++# Copyright (c) 2008 Guido U. Draheim ++# Copyright (c) 2011 Maarten Bosmans ++# ++# This program is free software: you can redistribute it and/or modify it ++# under the terms of the GNU General Public License as published by the ++# Free Software Foundation, either version 3 of the License, or (at your ++# option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General ++# Public License for more details. ++# ++# You should have received a copy of the GNU General Public License along ++# with this program. If not, see . ++# ++# As a special exception, the respective Autoconf Macro's copyright owner ++# gives unlimited permission to copy, distribute and modify the configure ++# scripts that are the output of Autoconf when processing the Macro. You ++# need not follow the terms of the GNU General Public License when using ++# or distributing such scripts, even though portions of the text of the ++# Macro appear in them. The GNU General Public License (GPL) does govern ++# all other use of the material that constitutes the Autoconf Macro. ++# ++# This special exception to the GPL applies to versions of the Autoconf ++# Macro released by the Autoconf Archive. When you make and distribute a ++# modified version of the Autoconf Macro, you may extend this special ++# exception to the GPL to apply to your modified version as well. ++ ++#serial 2 ++ ++AC_DEFUN([AX_CHECK_COMPILE_FLAG], ++[AC_PREREQ(2.59)dnl for _AC_LANG_PREFIX ++AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl ++AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [ ++ ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS ++ _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1" ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], ++ [AS_VAR_SET(CACHEVAR,[yes])], ++ [AS_VAR_SET(CACHEVAR,[no])]) ++ _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags]) ++AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes], ++ [m4_default([$2], :)], ++ [m4_default([$3], :)]) ++AS_VAR_POPDEF([CACHEVAR])dnl ++])dnl AX_CHECK_COMPILE_FLAGS +diff --git a/m4/ax_check_link_flag.m4 b/m4/ax_check_link_flag.m4 +new file mode 100644 +index 0000000..e2d0d36 +--- /dev/null ++++ b/m4/ax_check_link_flag.m4 +@@ -0,0 +1,71 @@ ++# =========================================================================== ++# http://www.gnu.org/software/autoconf-archive/ax_check_link_flag.html ++# =========================================================================== ++# ++# SYNOPSIS ++# ++# AX_CHECK_LINK_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS]) ++# ++# DESCRIPTION ++# ++# Check whether the given FLAG works with the linker or gives an error. ++# (Warnings, however, are ignored) ++# ++# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on ++# success/failure. ++# ++# If EXTRA-FLAGS is defined, it is added to the linker's default flags ++# when the check is done. The check is thus made with the flags: "LDFLAGS ++# EXTRA-FLAGS FLAG". This can for example be used to force the linker to ++# issue an error when a bad flag is given. ++# ++# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this ++# macro in sync with AX_CHECK_{PREPROC,COMPILE}_FLAG. ++# ++# LICENSE ++# ++# Copyright (c) 2008 Guido U. Draheim ++# Copyright (c) 2011 Maarten Bosmans ++# ++# This program is free software: you can redistribute it and/or modify it ++# under the terms of the GNU General Public License as published by the ++# Free Software Foundation, either version 3 of the License, or (at your ++# option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General ++# Public License for more details. ++# ++# You should have received a copy of the GNU General Public License along ++# with this program. If not, see . ++# ++# As a special exception, the respective Autoconf Macro's copyright owner ++# gives unlimited permission to copy, distribute and modify the configure ++# scripts that are the output of Autoconf when processing the Macro. You ++# need not follow the terms of the GNU General Public License when using ++# or distributing such scripts, even though portions of the text of the ++# Macro appear in them. The GNU General Public License (GPL) does govern ++# all other use of the material that constitutes the Autoconf Macro. ++# ++# This special exception to the GPL applies to versions of the Autoconf ++# Macro released by the Autoconf Archive. When you make and distribute a ++# modified version of the Autoconf Macro, you may extend this special ++# exception to the GPL to apply to your modified version as well. ++ ++#serial 2 ++ ++AC_DEFUN([AX_CHECK_LINK_FLAG], ++[AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_ldflags_$4_$1])dnl ++AC_CACHE_CHECK([whether the linker accepts $1], CACHEVAR, [ ++ ax_check_save_flags=$LDFLAGS ++ LDFLAGS="$LDFLAGS $4 $1" ++ AC_LINK_IFELSE([AC_LANG_PROGRAM()], ++ [AS_VAR_SET(CACHEVAR,[yes])], ++ [AS_VAR_SET(CACHEVAR,[no])]) ++ LDFLAGS=$ax_check_save_flags]) ++AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes], ++ [m4_default([$2], :)], ++ [m4_default([$3], :)]) ++AS_VAR_POPDEF([CACHEVAR])dnl ++])dnl AX_CHECK_LINK_FLAGS +diff --git a/src/tcsd/Makefile.am b/src/tcsd/Makefile.am +index 2210734..6640ab2 100644 +--- a/src/tcsd/Makefile.am ++++ b/src/tcsd/Makefile.am +@@ -1,8 +1,8 @@ + sbin_PROGRAMS=tcsd + +-tcsd_CFLAGS=-DAPPID=\"TCSD\" -DVAR_PREFIX=\"@localstatedir@\" -DETC_PREFIX=\"@sysconfdir@\" -I${top_srcdir}/src/include -fPIE -DPIE ++tcsd_CFLAGS=-DAPPID=\"TCSD\" -DVAR_PREFIX=\"@localstatedir@\" -DETC_PREFIX=\"@sysconfdir@\" -I${top_srcdir}/src/include $(PIE_CFLAGS) + tcsd_LDADD=${top_builddir}/src/tcs/libtcs.a ${top_builddir}/src/tddl/libtddl.a -lpthread @CRYPTOLIB@ +-tcsd_LDFLAGS=-pie -Wl,-z,relro -Wl,-z,now ++tcsd_LDFLAGS=$(PIE_LDFLAGS) $(RELRO_LDFLAGS) + + tcsd_SOURCES=svrside.c tcsd_conf.c tcsd_threads.c platform.c + +-- +2.5.0 + diff --git a/package/trousers/Config.in b/package/trousers/Config.in new file mode 100644 index 00000000000..6ab74bf9a5b --- /dev/null +++ b/package/trousers/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_TROUSERS + bool "trousers" + select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE + depends on BR2_TOOLCHAIN_HAS_THREADS + # doesn't build properly in static only configurations + depends on !BR2_STATIC_LIBS + help + The open-source TCG Software Stack (TSS). + + This library enables the use of a Trusted Platform Module that + complies with the TPM specification, version 1.2. It implements the + TSS specification, version 1.2. + + http://trousers.sourceforge.net/ + +comment "trousers needs a toolchain w/ threads, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/trousers/trousers.hash b/package/trousers/trousers.hash new file mode 100644 index 00000000000..997cfa97c1c --- /dev/null +++ b/package/trousers/trousers.hash @@ -0,0 +1,3 @@ +# http://sourceforge.net/projects/trousers/files/trousers/0.3.13/ +sha1 d23f1a3df4febffc4174f5cca7d1c54230477bb2 trousers-0.3.13.tar.gz +md5 ad508f97b406f6e48cd90e85d78e7ca8 trousers-0.3.13.tar.gz diff --git a/package/trousers/trousers.mk b/package/trousers/trousers.mk new file mode 100644 index 00000000000..70daa881727 --- /dev/null +++ b/package/trousers/trousers.mk @@ -0,0 +1,33 @@ +############################################################# +# +# trousers +# +############################################################## + +TROUSERS_VERSION = 0.3.13 +TROUSERS_SOURCE = trousers-$(TROUSERS_VERSION).tar.gz +TROUSERS_SITE = http://downloads.sourceforge.net/project/trousers/trousers/$(TROUSERS_VERSION) +TROUSERS_LICENSE = BSD-3c +TROUSERS_LICENSE_FILES = LICENSE +TROUSERS_INSTALL_STAGING = YES +# Need autoreconf because of a patch touching configure.in and Makefile.am +TROUSERS_AUTORECONF = YES +TROUSERS_DEPENDENCIES = openssl + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +TROUSERS_DEPENDENCIES += libiconv +endif + +# The TrouSerS build system attempts to create the tss user and group +# on the host system. Disable the user checking feature as a +# workaround. +TROUSERS_CONF_OPTS += --disable-usercheck + +# uClibc toolchain for ARC doesn't support PIE at the moment +ifeq ($(BR2_arc),y) +TROUSERS_CONF_ENV += \ + ax_cv_check_cflags___fPIE__DPIE=no \ + ax_cv_check_ldflags___pie=no +endif + +$(eval $(autotools-package)) diff --git a/package/tstools/001-build-get-along-with-buildroot.patch b/package/tstools/0001-build-get-along-with-buildroot.patch similarity index 100% rename from package/tstools/001-build-get-along-with-buildroot.patch rename to package/tstools/0001-build-get-along-with-buildroot.patch diff --git a/package/tstools/Config.in b/package/tstools/Config.in index 706cb543306..f5dd138c4d1 100644 --- a/package/tstools/Config.in +++ b/package/tstools/Config.in @@ -2,16 +2,15 @@ config BR2_PACKAGE_TSTOOLS bool "tstools" depends on BR2_USE_MMU # fork() help - This is a set of cross-platform command line tools for - working with MPEG data + This is a set of cross-platform command line tools for working with + MPEG data. - The emphasis is on relatively simple tools which concentrate - on MPEG (H.264 and H.262) data packaged according to H.222 - (i.e., TS or PS), with a particular interest in checking for - conformance. + The emphasis is on relatively simple tools which concentrate on MPEG + (H.264 and H.262) data packaged according to H.222 (i.e., TS or PS), + with a particular interest in checking for conformance. - Transport Stream (TS) is typically used for distribution of - cable and satellite data. Program Stream (PS) is typically - used to store data on DVDs. + Transport Stream (TS) is typically used for distribution of cable + and satellite data. Program Stream (PS) is typically used to store + data on DVDs. - https://code.google.com/p/tstools/ + https://github.com/kynesim/tstools/ diff --git a/package/tstools/tstools.hash b/package/tstools/tstools.hash new file mode 100644 index 00000000000..9b0f1c7cea8 --- /dev/null +++ b/package/tstools/tstools.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 3d2b2375e2874933f9aa59d4f25bb6b334747219eb0d7a076974e61222d59bf6 tstools-08f6be304040e7b84760ac3920bcff4a563b6cd2.tar.gz diff --git a/package/tstools/tstools.mk b/package/tstools/tstools.mk index 40920d2575d..3355db864ba 100644 --- a/package/tstools/tstools.mk +++ b/package/tstools/tstools.mk @@ -4,10 +4,13 @@ # ################################################################################ -TSTOOLS_VERSION = 1_11 -TSTOOLS_SITE = https://tstools.googlecode.com/files -TSTOOLS_SOURCE = tstools-$(TSTOOLS_VERSION).tgz -TSTOOLS_LICENSE = MPL v1.1 +# No releases or tags yet. Use the latest commit ID from master branch. +TSTOOLS_VERSION = 08f6be304040e7b84760ac3920bcff4a563b6cd2 +TSTOOLS_SITE = $(call github,kynesim,tstools,$(TSTOOLS_VERSION)) +# tstools upstream doesn't contain any license file so far. See: +# https://github.com/kynesim/tstools/issues/32 +TSTOOLS_LICENSE = MPLv1.1 +TSTOOLS_LICENSE_FILES = define TSTOOLS_BUILD_CMDS $(TARGET_CONFIGURE_OPTS) LD="$(TARGET_CC)" $(TARGET_MAKE_ENV) \ diff --git a/package/tvheadend/0001-no-check_config.patch b/package/tvheadend/0001-no-check_config.patch index c77ca76bf0e..361ebcd41ce 100644 --- a/package/tvheadend/0001-no-check_config.patch +++ b/package/tvheadend/0001-no-check_config.patch @@ -12,12 +12,12 @@ Signed-off-by: "Yann E. MORIN" diff -durN tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3.orig/Makefile tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3/Makefile --- tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3.orig/Makefile 2014-03-09 14:47:43.780025330 +0100 +++ tvheadend-c84bc2b72b462ef2dbed305f3fd0bb3fa5046fc3/Makefile 2014-03-09 14:48:40.836539093 +0100 -@@ -516,7 +516,7 @@ +@@ -566,7 +566,7 @@ $(ROOTDIR)/configure $(CONFIGURE_ARGS) # Binary --${PROG}: check_config make_webui $(OBJS) +-${PROG}: .config.mk make_webui $(OBJS) +${PROG}: make_webui $(OBJS) - $(CC) -o $@ $(OBJS) $(CFLAGS) $(LDFLAGS) + $(pCC) -o $@ $(OBJS) $(CFLAGS) $(LDFLAGS) # Object diff --git a/package/tvheadend/Config.in b/package/tvheadend/Config.in index 4edf0145198..095ec655750 100644 --- a/package/tvheadend/Config.in +++ b/package/tvheadend/Config.in @@ -1,10 +1,14 @@ -comment "tvheadend needs a toolchain w/ NPTL, headers >= 3.2" - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 +comment "tvheadend needs a toolchain w/ NPTL, headers >= 3.2, dynamic library" + depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ + !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 || BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 config BR2_PACKAGE_TVHEADEND bool "tvheadend" + depends on !BR2_STATIC_LIBS # dladdr() depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_DTV_SCAN_TABLES select BR2_PACKAGE_FFMPEG_AVRESAMPLE if BR2_PACKAGE_FFMPEG select BR2_PACKAGE_FFMPEG_SWSCALE if BR2_PACKAGE_FFMPEG diff --git a/package/tvheadend/tvheadend.hash b/package/tvheadend/tvheadend.hash new file mode 100644 index 00000000000..de7bc46976a --- /dev/null +++ b/package/tvheadend/tvheadend.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 0caf44de3baaf115d80410b660d99e49a42f50792397254e8f21b6e1c5ca58ef tvheadend-1aa0073be39119f5d0d79212e6c83c470904a161.tar.gz diff --git a/package/tvheadend/tvheadend.mk b/package/tvheadend/tvheadend.mk index ec04e6fc8ba..11f882aa978 100644 --- a/package/tvheadend/tvheadend.mk +++ b/package/tvheadend/tvheadend.mk @@ -4,7 +4,7 @@ # ################################################################################ -TVHEADEND_VERSION = d9cf931f9f7242f070ae990c4765cbdd5276fd66 +TVHEADEND_VERSION = 1aa0073be39119f5d0d79212e6c83c470904a161 TVHEADEND_SITE = $(call github,tvheadend,tvheadend,$(TVHEADEND_VERSION)) TVHEADEND_LICENSE = GPLv3+ TVHEADEND_LICENSE_FILES = LICENSE.md @@ -18,6 +18,13 @@ ifeq ($(BR2_PACKAGE_AVAHI),y) TVHEADEND_DEPENDENCIES += avahi endif +ifeq ($(BR2_PACKAGE_DBUS),y) +TVHEADEND_DEPENDENCIES += dbus +TVHEADEND_CONF_OPTS += --enable-dbus-1 +else +TVHEADEND_CONF_OPTS += --disable-dbus-1 +endif + ifeq ($(BR2_PACKAGE_FFMPEG),y) TVHEADEND_DEPENDENCIES += ffmpeg TVHEADEND_CONF_OPTS += --enable-libav @@ -32,6 +39,13 @@ else TVHEADEND_CONF_OPTS += --disable-dvbcsa endif +ifeq ($(BR2_PACKAGE_LIBHDHOMERUN),y) +TVHEADEND_DEPENDENCIES += libhdhomerun +TVHEADEND_CONF_OPTS += --enable-hdhomerun_client +else +TVHEADEND_CONF_OPTS += --disable-hdhomerun_client +endif + ifeq ($(BR2_PACKAGE_LIBICONV),y) TVHEADEND_DEPENDENCIES += libiconv endif @@ -67,6 +81,7 @@ define TVHEADEND_CONFIGURE_CMDS --enable-dvbscan \ --enable-bundle \ --disable-libffmpeg_static \ + --disable-hdhomerun_static \ $(TVHEADEND_CONF_OPTS) \ ) endef diff --git a/package/tz/tz.mk b/package/tz/tz.mk index 349d73f7f2d..7a756eb5d8f 100644 --- a/package/tz/tz.mk +++ b/package/tz/tz.mk @@ -14,7 +14,7 @@ define TZ_BUILD_CMDS (cd $(HOST_DIR)/usr/share/zoneinfo/posix/; \ for i in $$(find . -type f); do \ mkdir -p $(@D)/output/$$(dirname $$i); \ - $(TZDUMP) -p . -q $${i#./} > $(@D)/output/$$i; \ + $(TZDUMP) -p . -q $${i#./} | sed '1d' > $(@D)/output/$$i; \ done \ ) endef diff --git a/package/tzdata/tzdata.hash b/package/tzdata/tzdata.hash index 091f57c8cf4..80c581288ef 100644 --- a/package/tzdata/tzdata.hash +++ b/package/tzdata/tzdata.hash @@ -1,2 +1,2 @@ -# From 2015e release anouncement. See http://mm.icann.org/pipermail/tz-announce/2015-June/000032.html -sha512 86498190a20c5c67827aa75f7e9c6aa6c19d58a88a70425ce70d5ae7cea42dc7386eb2867fa455fcfcdedc6a105ad70fbbdc7c27c7a58a51bd21d76a135983ce tzdata2015e.tar.gz +# From: http://mm.icann.org/pipermail/tz-announce/2016-January/000035.html +sha512 9aa5f61a73afa5070dfb1d1982945d268ea8215663d0cd594216500aff14797ea5591ccfd488dc2280902fa1820bf782623624912b669873728431258fe10ec1 tzdata2016a.tar.gz diff --git a/package/tzdata/tzdata.mk b/package/tzdata/tzdata.mk index c38d4fe8cd2..bd3cb671dc5 100644 --- a/package/tzdata/tzdata.mk +++ b/package/tzdata/tzdata.mk @@ -4,9 +4,9 @@ # ################################################################################ -TZDATA_VERSION = 2015e +TZDATA_VERSION = 2016a TZDATA_SOURCE = tzdata$(TZDATA_VERSION).tar.gz -TZDATA_SITE = ftp://ftp.iana.org/tz/releases +TZDATA_SITE = http://www.iana.org/time-zones/repository/releases TZDATA_STRIP_COMPONENTS = 0 TZDATA_DEPENDENCIES = host-tzdata HOST_TZDATA_DEPENDENCIES = host-zic diff --git a/package/uboot-tools/0001-drop-configh-from-tools.patch b/package/uboot-tools/0001-drop-configh-from-tools.patch index a36332fb8cd..e77a3017606 100644 --- a/package/uboot-tools/0001-drop-configh-from-tools.patch +++ b/package/uboot-tools/0001-drop-configh-from-tools.patch @@ -1,18 +1,33 @@ +From 2e54434e4dd178773e8e11e48afc81299771f3e7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Tue, 4 Aug 2015 22:13:20 +0200 +Subject: [PATCH 1/1] drop configh from tools +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + We need to build u-boot tools without a board configuration for the target. fw_env just uses config.h to define the default environment of the created image, so it really isn't mandatory. Signed-off-by: Gustavo Zacarias +[Jörg Krause: update for version 2015.07] +Signed-off-by: Jörg Krause +--- + tools/env/fw_env.h | 11 ----------- + 1 file changed, 11 deletions(-) diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h -index aff471b..dfe7439 100644 +index 60c0517..1c5daaa 100644 --- a/tools/env/fw_env.h +++ b/tools/env/fw_env.h -@@ -5,14 +5,6 @@ +@@ -5,17 +5,6 @@ * SPDX-License-Identifier: GPL-2.0+ */ -/* Pull in the current config to define the default environment */ +-#include +- -#ifndef __ASSEMBLY__ -#define __ASSEMBLY__ /* get only #defines from config.h */ -#include @@ -20,6 +35,10 @@ index aff471b..dfe7439 100644 -#else -#include -#endif - +- /* * To build the utility with the static configuration + * comment out the next line. +-- +2.5.0 + diff --git a/package/uboot-tools/0003-Fix-musl-build.patch b/package/uboot-tools/0003-Fix-musl-build.patch deleted file mode 100644 index 7c07dafd42a..00000000000 --- a/package/uboot-tools/0003-Fix-musl-build.patch +++ /dev/null @@ -1,71 +0,0 @@ -From bf738fda390787a10db0c9a4be9fcafd6707a90e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Sat, 18 Apr 2015 08:00:46 +0200 -Subject: [PATCH 1/1] Fix musl build -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This patch fixes cross-compiling U-Boot tools with the musl C library: - * including is needed for ulong - * defining _GNU_SOURCE is needed for loff_t - -Signed-off-by: Jörg Krause ---- - include/image.h | 1 + - tools/env/fw_env.c | 2 ++ - tools/imagetool.h | 1 + - tools/proftool.c | 1 + - 4 files changed, 5 insertions(+) - -diff --git a/include/image.h b/include/image.h -index 3844be6..ac2fd6e 100644 ---- a/include/image.h -+++ b/include/image.h -@@ -18,6 +18,7 @@ - - #include "compiler.h" - #include -+#include - - /* Define this to avoid #ifdefs later on */ - struct lmb; -diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c -index 1173eea..daa02a7 100644 ---- a/tools/env/fw_env.c -+++ b/tools/env/fw_env.c -@@ -8,6 +8,8 @@ - * SPDX-License-Identifier: GPL-2.0+ - */ - -+#define _GNU_SOURCE -+ - #include - #include - #include -diff --git a/tools/imagetool.h b/tools/imagetool.h -index 3e15b4e..b7874f4 100644 ---- a/tools/imagetool.h -+++ b/tools/imagetool.h -@@ -16,6 +16,7 @@ - #include - #include - #include -+#include - #include - #include - #include -diff --git a/tools/proftool.c b/tools/proftool.c -index 3482951..9ce7a77 100644 ---- a/tools/proftool.c -+++ b/tools/proftool.c -@@ -16,6 +16,7 @@ - #include - #include - #include -+#include - - #include - #include --- -2.3.5 diff --git a/package/uboot-tools/0004-tools-use-pkg-config-when-available-to-get-SSL-flags.patch b/package/uboot-tools/0004-tools-use-pkg-config-when-available-to-get-SSL-flags.patch deleted file mode 100644 index 9eb74834da1..00000000000 --- a/package/uboot-tools/0004-tools-use-pkg-config-when-available-to-get-SSL-flags.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 99bc38ac6ebdd3b5d741cb9e50d842fa13d409f7 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Tue, 12 May 2015 22:54:29 +0200 -Subject: [PATCH] tools: use pkg-config when available to get SSL flags - -Instead of hardcoding -lssl -lcrypto as the flags needed to build -mkimage with FIT signature enabled, use pkg-config when -available. This allows to properly support cases where static linking -is used, which requires linking with -lz, since OpenSSL uses zlib -internally. - -We gracefully fallback on the previous behavior of hardcoding -lssl --lcrypto if pkg-config is not available or fails with an error. - -Patch submitted upstream at -http://lists.denx.de/pipermail/u-boot/2015-May/214489.html - -Signed-off-by: Thomas Petazzoni ---- - tools/Makefile | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/tools/Makefile b/tools/Makefile -index 4bbb153..8ff9c2e 100644 ---- a/tools/Makefile -+++ b/tools/Makefile -@@ -122,7 +122,8 @@ endif - - # MXSImage needs LibSSL - ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_FIT_SIGNATURE),) --HOSTLOADLIBES_mkimage += -lssl -lcrypto -+HOSTLOADLIBES_mkimage += \ -+ $(shell pkg-config --libs libssl libcrypto 2> /dev/null || echo "-lssl -lcrypto") - endif - - HOSTLOADLIBES_dumpimage := $(HOSTLOADLIBES_mkimage) --- -2.1.0 - diff --git a/package/uboot-tools/uboot-tools.hash b/package/uboot-tools/uboot-tools.hash index 9cc96f64c77..31b0db96ddc 100644 --- a/package/uboot-tools/uboot-tools.hash +++ b/package/uboot-tools/uboot-tools.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 0a1a70df586655f527befa6f12e184e96ed61b126e5a567382321b17200f5d60 u-boot-2015.04.tar.bz2 +sha256 e5792fba9399d9804aa2ef667f14ff771e2cdece72367d340250265bf095a5d5 u-boot-2016.01.tar.bz2 diff --git a/package/uboot-tools/uboot-tools.mk b/package/uboot-tools/uboot-tools.mk index 3ae346e210a..31502793974 100644 --- a/package/uboot-tools/uboot-tools.mk +++ b/package/uboot-tools/uboot-tools.mk @@ -4,7 +4,7 @@ # ################################################################################ -UBOOT_TOOLS_VERSION = 2015.04 +UBOOT_TOOLS_VERSION = 2016.01 UBOOT_TOOLS_SOURCE = u-boot-$(UBOOT_TOOLS_VERSION).tar.bz2 UBOOT_TOOLS_SITE = ftp://ftp.denx.de/pub/u-boot UBOOT_TOOLS_LICENSE = GPLv2+ diff --git a/package/ubus/0001-Install-server-and-client-examples.patch b/package/ubus/0001-Install-server-and-client-examples.patch new file mode 100644 index 00000000000..0ee4d3e64fd --- /dev/null +++ b/package/ubus/0001-Install-server-and-client-examples.patch @@ -0,0 +1,23 @@ +Install server and client examples + +Signed-off-by: Sergio Prado +--- + examples/CMakeLists.txt | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt +index 0279f6e66b50..2f8f4e026e20 100644 +--- a/examples/CMakeLists.txt ++++ b/examples/CMakeLists.txt +@@ -9,4 +9,8 @@ IF (BUILD_EXAMPLES) + + ADD_EXECUTABLE(client client.c count.c) + TARGET_LINK_LIBRARIES(client ubus ubox) ++ ++ INSTALL(TARGETS server client ++ RUNTIME DESTINATION sbin ++ ) + ENDIF() +-- +1.9.1 + diff --git a/package/ubus/Config.in b/package/ubus/Config.in new file mode 100644 index 00000000000..391fc8d92cc --- /dev/null +++ b/package/ubus/Config.in @@ -0,0 +1,30 @@ +comment "ubus needs a toolchain w/ dynamic library" + depends on BR2_TOOLCHAIN_HAS_SYNC_4 + depends on BR2_STATIC_LIBS + +config BR2_PACKAGE_UBUS + bool "ubus" + select BR2_PACKAGE_LIBUBOX + select BR2_PACKAGE_JSON_C + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # json-c + depends on !BR2_STATIC_LIBS # libubox + help + IPC/RPC bus that allows communication between processes. + + It consists of few parts including a daemon (ubusd), a library + (libubus) and a command line interface (ubus). Although created + for the OpenWRT project, it can be used as a general IPC/RPC + mechanism in other projects. + + * Select BR2_PACKAGE_LUA_5_1 if you want to have Lua support. + + https://wiki.openwrt.org/doc/techref/ubus + +if BR2_PACKAGE_UBUS + +config BR2_PACKAGE_UBUS_EXAMPLES + bool "build and install ubus examples" + help + Build and install client and server ubus examples. + +endif diff --git a/package/ubus/ubus.hash b/package/ubus/ubus.hash new file mode 100644 index 00000000000..af9b652b0e1 --- /dev/null +++ b/package/ubus/ubus.hash @@ -0,0 +1,2 @@ +# No hash for this git snapshot +none xxx ubus-259450f414d8c9ee41896e8e6d6bc57ec00e2b63.tar.gz diff --git a/package/ubus/ubus.mk b/package/ubus/ubus.mk new file mode 100644 index 00000000000..cd66b868dfd --- /dev/null +++ b/package/ubus/ubus.mk @@ -0,0 +1,40 @@ +################################################################################ +# +# ubus +# +################################################################################ + +UBUS_VERSION = 259450f414d8c9ee41896e8e6d6bc57ec00e2b63 +UBUS_SITE = git://git.openwrt.org/project/ubus.git + +UBUS_LICENSE = LGPLv2.1 +UBUS_LICENSE_FILES = ubusd_acl.h + +UBUS_INSTALL_STAGING = YES + +UBUS_DEPENDENCIES = json-c libubox + +# package only compiles with Lua 5.1 +ifeq ($(BR2_PACKAGE_LUA_5_1),y) +UBUS_DEPENDENCIES += lua +UBUS_CONF_OPTS += -DBUILD_LUA=ON \ + -DLUA_CFLAGS=-I$(STAGING_DIR)/usr/include \ + -DLUAPATH=/usr/lib/lua/$(LUAINTERPRETER_ABIVER) +else +UBUS_CONF_OPTS += -DBUILD_LUA=OFF +endif + +ifeq ($(BR2_PACKAGE_SYSTEMD),y) +UBUS_DEPENDENCIES += systemd +UBUS_CONF_OPTS += -DENABLE_SYSTEMD=ON +else +UBUS_CONF_OPTS += -DENABLE_SYSTEMD=OFF +endif + +ifeq ($(BR2_PACKAGE_UBUS_EXAMPLES),y) +UBUS_CONF_OPTS += -DBUILD_EXAMPLES=ON +else +UBUS_CONF_OPTS += -DBUILD_EXAMPLES=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/uclibc/0.9.33.2/0001-bits-time.h-sync-with-glibc-2.16.patch b/package/uclibc/0.9.33.2/0001-bits-time.h-sync-with-glibc-2.16.patch deleted file mode 100644 index d93df6d748b..00000000000 --- a/package/uclibc/0.9.33.2/0001-bits-time.h-sync-with-glibc-2.16.patch +++ /dev/null @@ -1,37 +0,0 @@ -From bb08cd16cb0353b3d4116ca8959dbecd2e78f545 Mon Sep 17 00:00:00 2001 -From: Peter Korsgaard -Date: Tue, 3 Jul 2012 15:54:57 +0200 -Subject: [PATCH 1/8] bits/time.h: sync with glibc 2.16 - -CLOCK_MONOTONIC_RAW is available since 2.6.28 -(2d42244ae71d: clocksource: introduce CLOCK_MONOTONIC_RAW), and -CLOCK_*_COARSE since 2.6.32 (da15cfdae033: time: Introduce -CLOCK_REALTIME_COARSE). - -Signed-off-by: Peter Korsgaard -Signed-off-by: Bernhard Reutner-Fischer -Signed-off-by: Thomas Petazzoni ---- - libc/sysdeps/linux/common/bits/time.h | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/libc/sysdeps/linux/common/bits/time.h b/libc/sysdeps/linux/common/bits/time.h -index 7ed54bf..c871223 100644 ---- a/libc/sysdeps/linux/common/bits/time.h -+++ b/libc/sysdeps/linux/common/bits/time.h -@@ -54,6 +54,12 @@ - # define CLOCK_PROCESS_CPUTIME_ID 2 - /* Thread-specific CPU-time clock. */ - # define CLOCK_THREAD_CPUTIME_ID 3 -+/* Monotonic system-wide clock, not adjusted for frequency scaling. */ -+# define CLOCK_MONOTONIC_RAW 4 -+/* Identifier for system-wide realtime clock, updated only on ticks. */ -+# define CLOCK_REALTIME_COARSE 5 -+/* Monotonic system-wide clock, updated only on ticks. */ -+# define CLOCK_MONOTONIC_COARSE 6 - - /* Flag to indicate time is absolute. */ - # define TIMER_ABSTIME 1 --- -1.8.1.2 - diff --git a/package/uclibc/0.9.33.2/0003-Add-dup3-syscall.patch b/package/uclibc/0.9.33.2/0003-Add-dup3-syscall.patch deleted file mode 100644 index 663b0e1bcad..00000000000 --- a/package/uclibc/0.9.33.2/0003-Add-dup3-syscall.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 518bc50ae42540574bba360225c8a65b56b79148 Mon Sep 17 00:00:00 2001 -From: Jonas Bonn -Date: Tue, 6 Sep 2011 10:30:40 +0200 -Subject: [PATCH 3/8] Add dup3 syscall - -Signed-off-by: Jonas Bonn -Signed-off-by: Thomas Petazzoni ---- - include/unistd.h | 4 ++++ - libc/sysdeps/linux/common/dup3.c | 17 +++++++++++++++++ - 2 files changed, 21 insertions(+) - create mode 100644 libc/sysdeps/linux/common/dup3.c - -diff --git a/include/unistd.h b/include/unistd.h -index 1b2fd4d..f7d070b 100644 ---- a/include/unistd.h -+++ b/include/unistd.h -@@ -513,6 +513,10 @@ extern int dup (int __fd) __THROW __wur; - extern int dup2 (int __fd, int __fd2) __THROW; - libc_hidden_proto(dup2) - -+/* Duplicate FD to FD2, closing FD2 and making it open on the same file. */ -+extern int dup3 (int __fd, int __fd2, int __flags) __THROW; -+libc_hidden_proto(dup3) -+ - /* NULL-terminated array of "NAME=VALUE" environment variables. */ - extern char **__environ; - #ifdef __USE_GNU -diff --git a/libc/sysdeps/linux/common/dup3.c b/libc/sysdeps/linux/common/dup3.c -new file mode 100644 -index 0000000..7b57438 ---- /dev/null -+++ b/libc/sysdeps/linux/common/dup3.c -@@ -0,0 +1,17 @@ -+/* vi: set sw=4 ts=4: */ -+/* -+ * dup3() for uClibc -+ * -+ * Copyright (C) 2000-2006 Erik Andersen -+ * -+ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. -+ */ -+ -+#include -+#include -+ -+ -+#ifdef __NR_dup3 -+_syscall3(int, dup3, int, oldfd, int, newfd, int, flags) -+libc_hidden_def(dup3) -+#endif --- -1.8.1.2 - diff --git a/package/uclibc/0.9.33.2/0004-libc-sysdeps-add-__kernel_long-and-__kernel_ulong.patch b/package/uclibc/0.9.33.2/0004-libc-sysdeps-add-__kernel_long-and-__kernel_ulong.patch deleted file mode 100644 index edd68f1c68c..00000000000 --- a/package/uclibc/0.9.33.2/0004-libc-sysdeps-add-__kernel_long-and-__kernel_ulong.patch +++ /dev/null @@ -1,381 +0,0 @@ -From 7fef6b983456e4c529a5239ea90715050e6f4452 Mon Sep 17 00:00:00 2001 -From: Chris Packham -Date: Mon, 1 Oct 2012 18:12:54 +1300 -Subject: [PATCH 4/8] libc/sysdeps: add __kernel_long and __kernel_ulong - -Linux 3.4 added __kernel_long_t and __kernel_ulong_t and various -exported header files were updated to use these new types. Add the -definitions for __kernel_long_t and __kernel_ulong_t to the relevant -kernel_types.h headers. - -This change was automated with the following scriptlet - - git grep --name-only 'typedef.*__kernel_old_dev_t' \ - | xargs sed -i '/typedef.*__kernel_old_dev_t/ a\ - typedef long\t\t__kernel_long_t;\ - typedef unsigned long\t__kernel_ulong_t;' - -Whitespace in arm, hppa, sparc was then manually fixed up. - -Signed-off-by: Chris Packham -[yann.morin.1998@free.fr: remove avr32 bits, now Buildroot no longer - supports it] -Signed-off-by: "Yann E. MORIN" --- -Here's a cleaned up patch which should get the whitespace right. I'm a -bit iffy about the sparc changes they make sense to me but it's not a -platform I have access to. - -I can break this up per arch or per maintainer if requested. - - libc/sysdeps/linux/alpha/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/arm/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/bfin/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/c6x/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/cris/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/e1/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/h8300/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/hppa/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/i386/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/ia64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/m68k/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/microblaze/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/mips/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/nios2/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/powerpc/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/sh/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/sh64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/sparc/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/v850/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/x86_64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/xtensa/bits/kernel_types.h | 2 ++ - 22 files changed, 50 insertions(+) -Signed-off-by: Bernhard Reutner-Fischer -Signed-off-by: Gustavo Zacarias -Signed-off-by: Thomas Petazzoni ---- - libc/sysdeps/linux/alpha/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/arm/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/bfin/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/c6x/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/cris/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/e1/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/h8300/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/hppa/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/i386/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/ia64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/m68k/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/microblaze/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/mips/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/nios2/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/powerpc/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/sh/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/sh64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/sparc/bits/kernel_types.h | 4 ++++ - libc/sysdeps/linux/v850/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/x86_64/bits/kernel_types.h | 2 ++ - libc/sysdeps/linux/xtensa/bits/kernel_types.h | 2 ++ - 22 files changed, 50 insertions(+) - -diff --git a/libc/sysdeps/linux/alpha/bits/kernel_types.h b/libc/sysdeps/linux/alpha/bits/kernel_types.h -index d5574c9..cd59b9d 100644 ---- a/libc/sysdeps/linux/alpha/bits/kernel_types.h -+++ b/libc/sysdeps/linux/alpha/bits/kernel_types.h -@@ -33,6 +33,8 @@ typedef __kernel_gid_t __kernel_old_gid_t; - typedef __kernel_uid_t __kernel_uid32_t; - typedef __kernel_gid_t __kernel_gid32_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - int val[2]; -diff --git a/libc/sysdeps/linux/arm/bits/kernel_types.h b/libc/sysdeps/linux/arm/bits/kernel_types.h -index 766a306..6b36f32 100644 ---- a/libc/sysdeps/linux/arm/bits/kernel_types.h -+++ b/libc/sysdeps/linux/arm/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef long long __kernel_loff_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/bfin/bits/kernel_types.h b/libc/sysdeps/linux/bfin/bits/kernel_types.h -index d69a875..9fec595 100644 ---- a/libc/sysdeps/linux/bfin/bits/kernel_types.h -+++ b/libc/sysdeps/linux/bfin/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef long long __kernel_loff_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/c6x/bits/kernel_types.h b/libc/sysdeps/linux/c6x/bits/kernel_types.h -index 7557309..2c363a8 100644 ---- a/libc/sysdeps/linux/c6x/bits/kernel_types.h -+++ b/libc/sysdeps/linux/c6x/bits/kernel_types.h -@@ -22,6 +22,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned int __kernel_old_uid_t; - typedef unsigned int __kernel_old_gid_t; - typedef unsigned int __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef unsigned int __kernel_size_t; - typedef int __kernel_ssize_t; - typedef int __kernel_ptrdiff_t; -diff --git a/libc/sysdeps/linux/cris/bits/kernel_types.h b/libc/sysdeps/linux/cris/bits/kernel_types.h -index f122c7f..5d31f7b 100644 ---- a/libc/sysdeps/linux/cris/bits/kernel_types.h -+++ b/libc/sysdeps/linux/cris/bits/kernel_types.h -@@ -28,6 +28,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - #ifdef __GNUC__ - typedef long long __kernel_loff_t; -diff --git a/libc/sysdeps/linux/e1/bits/kernel_types.h b/libc/sysdeps/linux/e1/bits/kernel_types.h -index 8017d85..f55a129 100644 ---- a/libc/sysdeps/linux/e1/bits/kernel_types.h -+++ b/libc/sysdeps/linux/e1/bits/kernel_types.h -@@ -31,6 +31,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - /* -diff --git a/libc/sysdeps/linux/h8300/bits/kernel_types.h b/libc/sysdeps/linux/h8300/bits/kernel_types.h -index 0570675..4cfd1bf 100644 ---- a/libc/sysdeps/linux/h8300/bits/kernel_types.h -+++ b/libc/sysdeps/linux/h8300/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef long long __kernel_loff_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/hppa/bits/kernel_types.h b/libc/sysdeps/linux/hppa/bits/kernel_types.h -index 4441f9b..6b2e794 100644 ---- a/libc/sysdeps/linux/hppa/bits/kernel_types.h -+++ b/libc/sysdeps/linux/hppa/bits/kernel_types.h -@@ -45,6 +45,8 @@ typedef long long __kernel_off64_t; - typedef unsigned long long __kernel_ino64_t; - - typedef unsigned int __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/i386/bits/kernel_types.h b/libc/sysdeps/linux/i386/bits/kernel_types.h -index 9c07c72..59044b8 100644 ---- a/libc/sysdeps/linux/i386/bits/kernel_types.h -+++ b/libc/sysdeps/linux/i386/bits/kernel_types.h -@@ -40,6 +40,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - typedef struct { -diff --git a/libc/sysdeps/linux/ia64/bits/kernel_types.h b/libc/sysdeps/linux/ia64/bits/kernel_types.h -index c8ef86d..e31dc65 100644 ---- a/libc/sysdeps/linux/ia64/bits/kernel_types.h -+++ b/libc/sysdeps/linux/ia64/bits/kernel_types.h -@@ -52,5 +52,7 @@ typedef __kernel_gid_t __kernel_gid32_t; - - typedef unsigned int __kernel_dev_t; - typedef unsigned int __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - #endif /* _ASM_IA64_POSIX_TYPES_H */ -diff --git a/libc/sysdeps/linux/m68k/bits/kernel_types.h b/libc/sysdeps/linux/m68k/bits/kernel_types.h -index 0a77a8f..176b968 100644 ---- a/libc/sysdeps/linux/m68k/bits/kernel_types.h -+++ b/libc/sysdeps/linux/m68k/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef long long __kernel_loff_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/microblaze/bits/kernel_types.h b/libc/sysdeps/linux/microblaze/bits/kernel_types.h -index 2a70575..a9f736b 100644 ---- a/libc/sysdeps/linux/microblaze/bits/kernel_types.h -+++ b/libc/sysdeps/linux/microblaze/bits/kernel_types.h -@@ -44,6 +44,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned int __kernel_old_uid_t; - typedef unsigned int __kernel_old_gid_t; - typedef unsigned int __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - #ifdef __GNUC__ - typedef long long __kernel_loff_t; -diff --git a/libc/sysdeps/linux/mips/bits/kernel_types.h b/libc/sysdeps/linux/mips/bits/kernel_types.h -index 9fc3b96..97faeac 100644 ---- a/libc/sysdeps/linux/mips/bits/kernel_types.h -+++ b/libc/sysdeps/linux/mips/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef int __kernel_gid32_t; - typedef __kernel_uid_t __kernel_old_uid_t; - typedef __kernel_gid_t __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - #else - typedef unsigned int __kernel_dev_t; -@@ -68,6 +70,8 @@ typedef int __kernel_gid32_t; - typedef __kernel_uid_t __kernel_old_uid_t; - typedef __kernel_gid_t __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - #endif - -diff --git a/libc/sysdeps/linux/nios2/bits/kernel_types.h b/libc/sysdeps/linux/nios2/bits/kernel_types.h -index 8b86d79..3c030e7 100644 ---- a/libc/sysdeps/linux/nios2/bits/kernel_types.h -+++ b/libc/sysdeps/linux/nios2/bits/kernel_types.h -@@ -31,6 +31,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef unsigned short __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - typedef struct { -diff --git a/libc/sysdeps/linux/powerpc/bits/kernel_types.h b/libc/sysdeps/linux/powerpc/bits/kernel_types.h -index 3f3b933..1167de2 100644 ---- a/libc/sysdeps/linux/powerpc/bits/kernel_types.h -+++ b/libc/sysdeps/linux/powerpc/bits/kernel_types.h -@@ -36,6 +36,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned int __kernel_old_uid_t; - typedef unsigned int __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - #else - typedef unsigned int __kernel_dev_t; - typedef unsigned int __kernel_ino_t; -@@ -61,6 +63,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned int __kernel_old_uid_t; - typedef unsigned int __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - #endif - -diff --git a/libc/sysdeps/linux/sh/bits/kernel_types.h b/libc/sysdeps/linux/sh/bits/kernel_types.h -index f96e9fa..ac97261 100644 ---- a/libc/sysdeps/linux/sh/bits/kernel_types.h -+++ b/libc/sysdeps/linux/sh/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - typedef struct { -diff --git a/libc/sysdeps/linux/sh64/bits/kernel_types.h b/libc/sysdeps/linux/sh64/bits/kernel_types.h -index 671cc83..8cc6c61 100644 ---- a/libc/sysdeps/linux/sh64/bits/kernel_types.h -+++ b/libc/sysdeps/linux/sh64/bits/kernel_types.h -@@ -43,6 +43,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - typedef struct { -diff --git a/libc/sysdeps/linux/sparc/bits/kernel_types.h b/libc/sysdeps/linux/sparc/bits/kernel_types.h -index 0cc4bc2..a10e075 100644 ---- a/libc/sysdeps/linux/sparc/bits/kernel_types.h -+++ b/libc/sysdeps/linux/sparc/bits/kernel_types.h -@@ -32,6 +32,8 @@ typedef unsigned short __kernel_gid16_t; - typedef __kernel_uid_t __kernel_old_uid_t; - typedef __kernel_gid_t __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef __kernel_uid_t __kernel_uid32_t; - typedef __kernel_gid_t __kernel_gid32_t; - typedef int __kernel_suseconds_t; -@@ -62,6 +64,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - #endif - -diff --git a/libc/sysdeps/linux/v850/bits/kernel_types.h b/libc/sysdeps/linux/v850/bits/kernel_types.h -index 3e851ab..780aa8a 100644 ---- a/libc/sysdeps/linux/v850/bits/kernel_types.h -+++ b/libc/sysdeps/linux/v850/bits/kernel_types.h -@@ -41,6 +41,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - - typedef struct { - #ifdef __USE_ALL -diff --git a/libc/sysdeps/linux/x86_64/bits/kernel_types.h b/libc/sysdeps/linux/x86_64/bits/kernel_types.h -index de800d7..0cae08c 100644 ---- a/libc/sysdeps/linux/x86_64/bits/kernel_types.h -+++ b/libc/sysdeps/linux/x86_64/bits/kernel_types.h -@@ -40,6 +40,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef __kernel_dev_t __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - typedef struct { -diff --git a/libc/sysdeps/linux/xtensa/bits/kernel_types.h b/libc/sysdeps/linux/xtensa/bits/kernel_types.h -index 44f1075..ed38f2e 100644 ---- a/libc/sysdeps/linux/xtensa/bits/kernel_types.h -+++ b/libc/sysdeps/linux/xtensa/bits/kernel_types.h -@@ -33,6 +33,8 @@ typedef unsigned int __kernel_gid32_t; - typedef unsigned short __kernel_old_uid_t; - typedef unsigned short __kernel_old_gid_t; - typedef unsigned short __kernel_old_dev_t; -+typedef long __kernel_long_t; -+typedef unsigned long __kernel_ulong_t; - typedef long long __kernel_loff_t; - - /* Beginning in 2.6 kernels, which is the first version that includes the --- -1.8.1.2 - diff --git a/package/uclibc/0.9.33.2/0006-arm-clone-restore-stack-pointer-just-after-return-fr.patch b/package/uclibc/0.9.33.2/0006-arm-clone-restore-stack-pointer-just-after-return-fr.patch deleted file mode 100644 index de978508261..00000000000 --- a/package/uclibc/0.9.33.2/0006-arm-clone-restore-stack-pointer-just-after-return-fr.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 963671276c0ef14458e0a7990107bcd2c075f3cd Mon Sep 17 00:00:00 2001 -From: Filippo Arcidiacono -Date: Mon, 10 Dec 2012 09:50:52 +0100 -Subject: [PATCH 6/8] arm: clone: restore stack pointer just after return from - syscall - -If the syscall returns with an error the stack pointer and r4 register -are not restored because the instruction 'ldmnefd sp!, {r4}' is executed -after branching to '__error' label. -This bug has been spotted out by running './utstest clone 5' from LTP -built with -fstack-protector-all compiler flag as log below: - -root@cortex-a9:/usr/tests/ltp/testcases/bin# ./utstest clone 5 -stack smashing detected: ./utstest terminated() - -Regression introduced by commit e58798e107d652644629a1daaa95d76430808d53 - -Signed-off-by: Filippo Arcidiacono -Signed-off-by: Giuseppe Di Giore -Signed-off-by: Carmelo Amoroso -Signed-off-by: Thomas Petazzoni ---- - libc/sysdeps/linux/arm/clone.S | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/arm/clone.S b/libc/sysdeps/linux/arm/clone.S -index fdc05b8..e4101ba 100644 ---- a/libc/sysdeps/linux/arm/clone.S -+++ b/libc/sysdeps/linux/arm/clone.S -@@ -111,8 +111,8 @@ __clone: - ldr r4, [sp, #12] - DO_CALL (clone) - movs a1, a1 -- blt __error - ldmnefd sp!, {r4} -+ blt __error - IT(t, ne) - #if defined(__USE_BX__) - bxne lr --- -1.8.1.2 - diff --git a/package/uclibc/0.9.33.2/0007-arm-clone.S-Add-missing-IT-instruction-for-Thumb2.patch b/package/uclibc/0.9.33.2/0007-arm-clone.S-Add-missing-IT-instruction-for-Thumb2.patch deleted file mode 100644 index f4097e98caf..00000000000 --- a/package/uclibc/0.9.33.2/0007-arm-clone.S-Add-missing-IT-instruction-for-Thumb2.patch +++ /dev/null @@ -1,29 +0,0 @@ -From c12211a2f1832169e31063512b3e2081e503e856 Mon Sep 17 00:00:00 2001 -From: Will Newton -Date: Tue, 2 Apr 2013 13:53:35 +0100 -Subject: [PATCH 7/8] arm/clone.S: Add missing IT instruction for Thumb2. - -The conditional load needs to be made part of an IT block on Thumb2 -cores. - -Signed-off-by: Will Newton -Signed-off-by: Thomas Petazzoni ---- - libc/sysdeps/linux/arm/clone.S | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/libc/sysdeps/linux/arm/clone.S b/libc/sysdeps/linux/arm/clone.S -index e4101ba..1f7f09d 100644 ---- a/libc/sysdeps/linux/arm/clone.S -+++ b/libc/sysdeps/linux/arm/clone.S -@@ -111,6 +111,7 @@ __clone: - ldr r4, [sp, #12] - DO_CALL (clone) - movs a1, a1 -+ IT(t, ne) - ldmnefd sp!, {r4} - blt __error - IT(t, ne) --- -1.8.1.2 - diff --git a/package/uclibc/0.9.33.2/0008-arm-move-check-for-BX-to-its-own-header.patch b/package/uclibc/0.9.33.2/0008-arm-move-check-for-BX-to-its-own-header.patch deleted file mode 100644 index c3031b418bd..00000000000 --- a/package/uclibc/0.9.33.2/0008-arm-move-check-for-BX-to-its-own-header.patch +++ /dev/null @@ -1,257 +0,0 @@ -From 06827e81c976d16aa5861a40ac0d780b63a4d470 Mon Sep 17 00:00:00 2001 -From: "Yann E. MORIN" -Date: Thu, 11 Apr 2013 23:02:03 +0200 -Subject: [PATCH 8/8] arm: move check for BX to its own header - -As Will noticed, the header this check is currently done in -is asm-only, and is not meant to be included from C code. -This breaks compilation when compiled for a Thumb2-aware CPU. - -Move the BX check to its own header, and revert 7a246fd. - -Reported-by: Will Newton -Signed-off-by: "Yann E. MORIN" -Cc: Will Newton -Signed-off-by: Thomas Petazzoni ---- - ldso/ldso/arm/dl-startup.h | 2 +- - ldso/ldso/arm/resolve.S | 1 + - libc/string/arm/_memcpy.S | 1 + - libc/string/arm/memcmp.S | 1 + - libc/string/arm/memset.S | 1 + - libc/string/arm/strcmp.S | 1 + - libc/string/arm/strlen.S | 1 + - libc/sysdeps/linux/arm/__longjmp.S | 2 +- - libc/sysdeps/linux/arm/bits/arm_asm.h | 8 -------- - libc/sysdeps/linux/arm/bits/arm_bx.h | 34 ++++++++++++++++++++++++++++++++++ - libc/sysdeps/linux/arm/clone.S | 1 + - libc/sysdeps/linux/arm/mmap64.S | 1 + - libc/sysdeps/linux/arm/syscall-eabi.S | 1 + - libc/sysdeps/linux/arm/sysdep.h | 2 +- - libc/sysdeps/linux/arm/vfork.S | 1 + - 15 files changed, 47 insertions(+), 11 deletions(-) - create mode 100644 libc/sysdeps/linux/arm/bits/arm_bx.h - -diff --git a/ldso/ldso/arm/dl-startup.h b/ldso/ldso/arm/dl-startup.h -index f7d6052..8d6122b 100644 ---- a/ldso/ldso/arm/dl-startup.h -+++ b/ldso/ldso/arm/dl-startup.h -@@ -7,7 +7,7 @@ - */ - - #include --#include -+#include - - #if !defined(__thumb__) - __asm__( -diff --git a/ldso/ldso/arm/resolve.S b/ldso/ldso/arm/resolve.S -index 08889d0..600d3af 100644 ---- a/ldso/ldso/arm/resolve.S -+++ b/ldso/ldso/arm/resolve.S -@@ -92,6 +92,7 @@ - - #include - #include -+#include - - #include - -diff --git a/libc/string/arm/_memcpy.S b/libc/string/arm/_memcpy.S -index b26080d..c59f5b8 100644 ---- a/libc/string/arm/_memcpy.S -+++ b/libc/string/arm/_memcpy.S -@@ -40,6 +40,7 @@ - #include - #include - #include -+#include - - #if !defined(THUMB1_ONLY) - /* -diff --git a/libc/string/arm/memcmp.S b/libc/string/arm/memcmp.S -index 65409f4..9f78415 100644 ---- a/libc/string/arm/memcmp.S -+++ b/libc/string/arm/memcmp.S -@@ -31,6 +31,7 @@ - - #include - #include -+#include - - .text - .global memcmp -diff --git a/libc/string/arm/memset.S b/libc/string/arm/memset.S -index 66aa603..6f78128 100644 ---- a/libc/string/arm/memset.S -+++ b/libc/string/arm/memset.S -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - - .text - .global memset -diff --git a/libc/string/arm/strcmp.S b/libc/string/arm/strcmp.S -index 97363c1..8b77ab0 100644 ---- a/libc/string/arm/strcmp.S -+++ b/libc/string/arm/strcmp.S -@@ -31,6 +31,7 @@ - - #include - #include -+#include - - .text - .global strcmp -diff --git a/libc/string/arm/strlen.S b/libc/string/arm/strlen.S -index 949e918..141f849 100644 ---- a/libc/string/arm/strlen.S -+++ b/libc/string/arm/strlen.S -@@ -21,6 +21,7 @@ - #include - #include - #include -+#include - - /* size_t strlen(const char *S) - * entry: r0 -> string -diff --git a/libc/sysdeps/linux/arm/__longjmp.S b/libc/sysdeps/linux/arm/__longjmp.S -index 5faf4ec..7418dc2 100644 ---- a/libc/sysdeps/linux/arm/__longjmp.S -+++ b/libc/sysdeps/linux/arm/__longjmp.S -@@ -19,11 +19,11 @@ - - #include - #include -+#include - #define _SETJMP_H - #define _ASM - #include - -- - .global __longjmp - .type __longjmp,%function - .align 2 -diff --git a/libc/sysdeps/linux/arm/bits/arm_asm.h b/libc/sysdeps/linux/arm/bits/arm_asm.h -index 921c9a3..ff8ea92 100644 ---- a/libc/sysdeps/linux/arm/bits/arm_asm.h -+++ b/libc/sysdeps/linux/arm/bits/arm_asm.h -@@ -24,12 +24,4 @@ - #define THUMB1_ONLY 1 - #endif - --#if defined(__USE_BX__) --# if ( defined (__ARM_ARCH_2__) || defined (__ARM_ARCH_3__) \ -- || defined (__ARM_ARCH_3M__) || defined (__ARM_ARCH_4__) \ -- ) --# error Use of BX was requested, but is not available on the target processor. --# endif /* ARCH level */ --#endif /* __USE_BX__ */ -- - #endif /* _ARM_ASM_H */ -diff --git a/libc/sysdeps/linux/arm/bits/arm_bx.h b/libc/sysdeps/linux/arm/bits/arm_bx.h -new file mode 100644 -index 0000000..321490e ---- /dev/null -+++ b/libc/sysdeps/linux/arm/bits/arm_bx.h -@@ -0,0 +1,34 @@ -+/* Copyright (C) 2013 Yann E. MORIN -+ * -+ * This file is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU Lesser General Public License as -+ * published by the Free Software Foundation; either version 2.1 of -+ * the License, or (at your option) any later version. -+ * -+ * This file is distributed in the hope that it will be useful, but -+ * WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * Lesser General Public License for more details. -+ * -+ * You should have received a copy of the GNU Lesser General Public -+ * License along with the GNU C Library; if not, see -+ * . -+ */ -+ -+#ifndef _ARM_BX_H -+#define _ARM_BX_H -+ -+/* We need features.h first */ -+#if !defined _FEATURES_H -+#error Please include features.h first -+#endif /* features.h not yet included */ -+ -+#if defined(__USE_BX__) -+# if ( defined (__ARM_ARCH_2__) || defined (__ARM_ARCH_3__) \ -+ || defined (__ARM_ARCH_3M__) || defined (__ARM_ARCH_4__) \ -+ ) -+# error Use of BX was requested, but is not available on the target processor. -+# endif /* ARCH level */ -+#endif /* __USE_BX__ */ -+ -+#endif /* _ARM_BX_H */ -diff --git a/libc/sysdeps/linux/arm/clone.S b/libc/sysdeps/linux/arm/clone.S -index 1f7f09d..4d646be 100644 ---- a/libc/sysdeps/linux/arm/clone.S -+++ b/libc/sysdeps/linux/arm/clone.S -@@ -25,6 +25,7 @@ - #include - #include - #include -+#include - - #if defined(__NR_clone) - /* int clone(int (*fn)(void *arg), void *child_stack, int flags, void *arg); */ -diff --git a/libc/sysdeps/linux/arm/mmap64.S b/libc/sysdeps/linux/arm/mmap64.S -index 7071541..bd2cfb8 100644 ---- a/libc/sysdeps/linux/arm/mmap64.S -+++ b/libc/sysdeps/linux/arm/mmap64.S -@@ -21,6 +21,7 @@ - #include - #include - #include -+#include - - #if defined __UCLIBC_HAS_LFS__ && defined __NR_mmap2 - -diff --git a/libc/sysdeps/linux/arm/syscall-eabi.S b/libc/sysdeps/linux/arm/syscall-eabi.S -index b931882..019f701 100644 ---- a/libc/sysdeps/linux/arm/syscall-eabi.S -+++ b/libc/sysdeps/linux/arm/syscall-eabi.S -@@ -18,6 +18,7 @@ - - #include - #include -+#include - - /* In the EABI syscall interface, we don't need a special syscall to - implement syscall(). It won't work reliably with 64-bit arguments -diff --git a/libc/sysdeps/linux/arm/sysdep.h b/libc/sysdeps/linux/arm/sysdep.h -index e498695..9c1dbca 100644 ---- a/libc/sysdeps/linux/arm/sysdep.h -+++ b/libc/sysdeps/linux/arm/sysdep.h -@@ -21,7 +21,7 @@ - #define _LINUX_ARM_SYSDEP_H 1 - - #include --#include -+#include - - #include - /* For Linux we can use the system call table in the header file -diff --git a/libc/sysdeps/linux/arm/vfork.S b/libc/sysdeps/linux/arm/vfork.S -index 17d6a4d..6c55d71 100644 ---- a/libc/sysdeps/linux/arm/vfork.S -+++ b/libc/sysdeps/linux/arm/vfork.S -@@ -7,6 +7,7 @@ - - #include - #include -+#include - - #define _ERRNO_H - #include --- -1.8.1.2 - diff --git a/package/uclibc/0.9.33.2/0009-mips64-fix-n64-interp.patch b/package/uclibc/0.9.33.2/0009-mips64-fix-n64-interp.patch deleted file mode 100644 index 7efef7891df..00000000000 --- a/package/uclibc/0.9.33.2/0009-mips64-fix-n64-interp.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 603af30d6992e94ac30a66b953264076f4f2fd71 Mon Sep 17 00:00:00 2001 -From: Markos Chandras -Date: Thu, 11 Jul 2013 16:59:16 +0000 -Subject: Rules.mak: MIPS64: Select correct interpreter - -gcc (eg 4.7.3) hardcodes the MIPS64 interpreters like this: -(see gcc/config/linux.h and gcc/config/mips/linux64.h) - -o32: UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" -n32: UCLIBC_DYNAMIC_LINKERN32 "/lib32/ld-uClibc.so.0" -n64: UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" - -The existing check for MIPS64 in uClibc is wrong because it does -not respect the selected ABI - -We fix this by explicitely checking the selected ABI instead of the -selected MIPS variant. - -Signed-off-by: Markos Chandras -Cc: Anthony G. Basile -Signed-off-by: Bernhard Reutner-Fischer ---- -diff --git a/Rules.mak b/Rules.mak -index 792b794..889108e 100644 ---- a/Rules.mak -+++ b/Rules.mak -@@ -138,13 +138,19 @@ export MAJOR_VERSION MINOR_VERSION SUBLEVEL VERSION ABI_VERSION LC_ALL - LIBC := libc - SHARED_LIBNAME := $(LIBC).so.$(ABI_VERSION) - UBACKTRACE_DSO := libubacktrace.so.$(ABI_VERSION) --ifneq ($(findstring $(TARGET_ARCH) , hppa64 ia64 mips64 powerpc64 s390x sparc64 x86_64 ),) -+ -+UCLIBC_LDSO_NAME := ld-uClibc -+ARCH_NATIVE_BIT := 32 -+ifneq ($(findstring $(TARGET_ARCH),hppa64 ia64 powerpc64 s390x sparc64 x86_64),) - UCLIBC_LDSO_NAME := ld64-uClibc - ARCH_NATIVE_BIT := 64 - else --UCLIBC_LDSO_NAME := ld-uClibc --ARCH_NATIVE_BIT := 32 -+ifeq ($(CONFIG_MIPS_N64_ABI),y) -+UCLIBC_LDSO_NAME := ld64-uClibc -+ARCH_NATIVE_BIT := 64 - endif -+endif -+ - UCLIBC_LDSO := $(UCLIBC_LDSO_NAME).so.$(ABI_VERSION) - NONSHARED_LIBNAME := uclibc_nonshared.a - libc := $(top_builddir)lib/$(SHARED_LIBNAME) --- -cgit v0.9.1 diff --git a/package/uclibc/0.9.33.2/0010-Rules.mak-fix-breakage-from-603af30d.patch b/package/uclibc/0.9.33.2/0010-Rules.mak-fix-breakage-from-603af30d.patch deleted file mode 100644 index 61ed439cdb0..00000000000 --- a/package/uclibc/0.9.33.2/0010-Rules.mak-fix-breakage-from-603af30d.patch +++ /dev/null @@ -1,31 +0,0 @@ -From f5017653dc63d62c94cc2884ed3a50a4f93001cd Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Wed, 24 Jul 2013 12:28:19 -0300 -Subject: [PATCHv2] Rules.mak: fix breakage from 603af30d - -Removing the whitespace from findstring for 64 bit architectures has -bad consequences since powerpc would be a match in powerpc64 and sparc -would also be a match in sparc64. -That doesn't make them 64 bits in reality causing general breakage. - -Signed-off-by: Gustavo Zacarias ---- - Rules.mak | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Rules.mak b/Rules.mak -index 889108e..be53d81 100644 ---- a/Rules.mak -+++ b/Rules.mak -@@ -141,7 +141,7 @@ UBACKTRACE_DSO := libubacktrace.so.$(ABI_VERSION) - - UCLIBC_LDSO_NAME := ld-uClibc - ARCH_NATIVE_BIT := 32 --ifneq ($(findstring $(TARGET_ARCH),hppa64 ia64 powerpc64 s390x sparc64 x86_64),) -+ifneq ($(findstring $(TARGET_ARCH) , hppa64 ia64 powerpc64 s390x sparc64 x86_64 ),) - UCLIBC_LDSO_NAME := ld64-uClibc - ARCH_NATIVE_BIT := 64 - else --- -1.8.1.5 - diff --git a/package/uclibc/0.9.33.2/0011-libc-add-non-standard-execvpe-function.patch b/package/uclibc/0.9.33.2/0011-libc-add-non-standard-execvpe-function.patch deleted file mode 100644 index 81413338c02..00000000000 --- a/package/uclibc/0.9.33.2/0011-libc-add-non-standard-execvpe-function.patch +++ /dev/null @@ -1,163 +0,0 @@ -From 0eb30761a26c46aaf555464114851202ae9c27bd Mon Sep 17 00:00:00 2001 -From: Henning Heinold -Date: Sat, 4 Jun 2011 21:23:15 +0200 -Subject: [PATCH] libc: add non standard execvpe function - -[Gustavo]: Drop TODO modification to make it compatible -Signed-off-by: Henning Heinold -Signed-off-by: Bernhard Reutner-Fischer ---- - include/unistd.h | 8 ++++++++ - libc/unistd/exec.c | 38 +++++++++++++++++++++++++++++++++----- - libc/unistd/execvpe.c | 7 +++++++ - 4 files changed, 52 insertions(+), 5 deletions(-) - create mode 100644 libc/unistd/execvpe.c - -diff --git a/include/unistd.h b/include/unistd.h -index feadf93..9479554 100644 ---- a/include/unistd.h -+++ b/include/unistd.h -@@ -619,6 +619,14 @@ extern int execlp (const char *__file, const char *__arg, ...) - __THROW __nonnull ((1)); - libc_hidden_proto(execlp) - -+#ifdef __USE_GNU -+/* Execute FILE, searching in the `PATH' environment variable if it contains -+ no slashes, with arguments ARGV and environment from a pointer */ -+extern int execvpe (__const char *__file, char *__const __argv[], char *__const __envp[]) -+ __THROW __nonnull ((1)); -+libc_hidden_proto(execvpe) -+#endif -+ - - #if defined __USE_MISC || defined __USE_XOPEN - /* Add INC to priority of the current process. */ -diff --git a/libc/unistd/exec.c b/libc/unistd/exec.c -index ba92989..8fa42e5 100644 ---- a/libc/unistd/exec.c -+++ b/libc/unistd/exec.c -@@ -32,6 +32,8 @@ - /**********************************************************************/ - #define EXEC_FUNC_COMMON 0 - #define EXEC_FUNC_EXECVP 1 -+#define EXEC_FUNC_EXECVPE 2 -+ - #if defined(__ARCH_USE_MMU__) - - /* We have an MMU, so use alloca() to grab space for buffers and arg lists. */ -@@ -58,6 +60,7 @@ - * execle(a) -> execve(-) - * execv(-) -> execve(-) - * execvp(a) -> execve(-) -+ * execvpe(a) -> execve(-) - */ - - # define EXEC_ALLOC_SIZE(VAR) /* nothing to do */ -@@ -219,15 +222,18 @@ libc_hidden_def(execlp) - - #endif - /**********************************************************************/ --#ifdef L_execvp -+#if defined (L_execvp) || defined(L_execvpe) - - - /* Use a default path that matches glibc behavior, since SUSv3 says - * this is implementation-defined. The default is current working dir, - * /bin, and then /usr/bin. */ - static const char default_path[] = ":/bin:/usr/bin"; -- -+#if defined (L_execvp) - int execvp(const char *path, char *const argv[]) -+#elif defined (L_execvpe) -+int execvpe(const char *path, char *const argv[], char *const envp[]) -+#endif - { - char *buf = NULL; - char *p; -@@ -245,7 +251,11 @@ int execvp(const char *path, char *const argv[]) - } - - if (strchr(path, '/')) { -+#if defined (L_execvp) - execve(path, argv, __environ); -+#elif defined (L_execvpe) -+ execve(path, argv, envp); -+#endif - if (errno == ENOEXEC) { - char **nargv; - EXEC_ALLOC_SIZE(size2) /* Do NOT add a semicolon! */ -@@ -254,11 +264,19 @@ int execvp(const char *path, char *const argv[]) - /* Need the dimension - 1. We omit counting the trailing - * NULL but we actually omit the first entry. */ - for (n=0 ; argv[n] ; n++) {} -+#if defined (L_execvp) - nargv = (char **) EXEC_ALLOC((n+2) * sizeof(char *), size2, EXEC_FUNC_EXECVP); -+#elif defined (L_execvpe) -+ nargv = (char **) EXEC_ALLOC((n+2) * sizeof(char *), size2, EXEC_FUNC_EXECVPE); -+#endif - nargv[0] = argv[0]; - nargv[1] = (char *)path; - memcpy(nargv+2, argv+1, n*sizeof(char *)); -+#if defined (L_execvp) - execve("/bin/sh", nargv, __environ); -+#elif defined (L_execvpe) -+ execve("/bin/sh", nargv, envp); -+#endif - EXEC_FREE(nargv, size2); - } - } else { -@@ -277,8 +295,11 @@ int execvp(const char *path, char *const argv[]) - return -1; - } - len = (FILENAME_MAX - 1) - plen; -- -+#if defined (L_execvp) - buf = EXEC_ALLOC(FILENAME_MAX, size, EXEC_FUNC_EXECVP); -+#elif defined (L_execvpe) -+ buf = EXEC_ALLOC(FILENAME_MAX, size, EXEC_FUNC_EXECVPE); -+#endif - { - int seen_small = 0; - s0 = buf + len; -@@ -300,8 +321,11 @@ int execvp(const char *path, char *const argv[]) - s[plen-1] = '/'; - } - -+#if defined (L_execvp) - execve(s, argv, __environ); -- -+#elif defined (L_execvpe) -+ execve(s, argv, envp); -+#endif - seen_small = 1; - - if (errno == ENOEXEC) { -@@ -325,7 +349,11 @@ int execvp(const char *path, char *const argv[]) - - return -1; - } -+#if defined (L_execvp) - libc_hidden_def(execvp) -- -+#elif defined (L_execvpe) -+libc_hidden_def(execvpe) - #endif -+ -+#endif /* #if defined (L_execvp) || defined(L_execvpe) */ - /**********************************************************************/ -diff --git a/libc/unistd/execvpe.c b/libc/unistd/execvpe.c -new file mode 100644 -index 0000000..c3c1e43 ---- /dev/null -+++ b/libc/unistd/execvpe.c -@@ -0,0 +1,7 @@ -+/* Copyright (C) 2011-2013 Hennning Heinold -+ * -+ * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball. -+ */ -+ -+#define L_execvpe -+#include "exec.c" --- -1.8.1.5 - diff --git a/package/uclibc/0.9.33.2/0012-libc-stdlib-add-mkostemp-helpers.patch b/package/uclibc/0.9.33.2/0012-libc-stdlib-add-mkostemp-helpers.patch deleted file mode 100644 index 80022408aa9..00000000000 --- a/package/uclibc/0.9.33.2/0012-libc-stdlib-add-mkostemp-helpers.patch +++ /dev/null @@ -1,155 +0,0 @@ -From 42d1b23fc0f3748b8bf474e456d6c44aa7e563fd Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Wed, 14 Nov 2012 00:30:54 -0500 -Subject: [PATCH] libc/stdlib: add mkostemp helpers - -Some projects (like udev) are starting to use this. - -Imported from glibc. - -Signed-off-by: Mike Frysinger ---- - include/stdlib.h | 23 +++++++++++++++++++++++ - libc/stdlib/Makefile.in | 4 ++-- - libc/stdlib/mkostemp.c | 32 ++++++++++++++++++++++++++++++++ - libc/stdlib/mkostemp64.c | 33 +++++++++++++++++++++++++++++++++ - 4 files changed, 90 insertions(+), 2 deletions(-) - create mode 100644 libc/stdlib/mkostemp.c - create mode 100644 libc/stdlib/mkostemp64.c - -diff --git a/include/stdlib.h b/include/stdlib.h -index 354fc66..79ccc55 100644 ---- a/include/stdlib.h -+++ b/include/stdlib.h -@@ -652,6 +652,29 @@ extern int mkstemp64 (char *__template) __nonnull ((1)) __wur; - extern char *mkdtemp (char *__template) __THROW __nonnull ((1)) __wur; - #endif - -+#ifdef __USE_GNU -+/* Generate a unique temporary file name from TEMPLATE similar to -+ mkstemp. But allow the caller to pass additional flags which are -+ used in the open call to create the file.. -+ -+ This function is a possible cancellation point and therefore not -+ marked with __THROW. */ -+# ifndef __USE_FILE_OFFSET64 -+extern int mkostemp (char *__template, int __flags) __nonnull ((1)) __wur; -+# else -+# ifdef __REDIRECT -+extern int __REDIRECT (mkostemp, (char *__template, int __flags), mkostemp64) -+ __nonnull ((1)) __wur; -+# else -+# define mkostemp mkostemp64 -+# endif -+# endif -+# ifdef __USE_LARGEFILE64 -+extern int mkostemp64 (char *__template, int __flags) __nonnull ((1)) __wur; -+# endif -+ -+#endif -+ - - __BEGIN_NAMESPACE_STD - /* Execute the given line as a shell command. -diff --git a/libc/stdlib/Makefile.in b/libc/stdlib/Makefile.in -index 3166b8e..b92f7ce 100644 ---- a/libc/stdlib/Makefile.in -+++ b/libc/stdlib/Makefile.in -@@ -12,7 +12,7 @@ include $(top_srcdir)libc/stdlib/malloc-simple/Makefile.in - include $(top_srcdir)libc/stdlib/malloc-standard/Makefile.in - - CSRC-y := \ -- abort.c getenv.c mkdtemp.c realpath.c canonicalize.c mkstemp.c \ -+ abort.c getenv.c mkdtemp.c realpath.c canonicalize.c mkstemp.c mkostemp.c \ - rand.c random.c random_r.c setenv.c div.c ldiv.c lldiv.c \ - getpt.c drand48-iter.c jrand48.c \ - jrand48_r.c lcong48.c lrand48.c lrand48_r.c mrand48.c mrand48_r.c nrand48.c \ -@@ -21,7 +21,7 @@ CSRC-y := \ - CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_memalign.c - CSRC-$(UCLIBC_HAS_PTY) += grantpt.c unlockpt.c ptsname.c - CSRC-$(UCLIBC_HAS_ARC4RANDOM) += arc4random.c --CSRC-$(UCLIBC_HAS_LFS) += mkstemp64.c -+CSRC-$(UCLIBC_HAS_LFS) += mkstemp64.c mkostemp64.c - CSRC-$(UCLIBC_HAS_FLOATS) += drand48.c drand48_r.c erand48.c erand48_r.c - CSRC-$(if $(findstring yy,$(UCLIBC_HAS_FLOATS)$(UCLIBC_SUSV3_LEGACY)),y) += \ - gcvt.c -diff --git a/libc/stdlib/mkostemp.c b/libc/stdlib/mkostemp.c -new file mode 100644 -index 0000000..93b50fc ---- /dev/null -+++ b/libc/stdlib/mkostemp.c -@@ -0,0 +1,32 @@ -+/* Copyright (C) 1998-2012 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include "../misc/internals/tempname.h" -+ -+/* Generate a unique temporary file name from TEMPLATE. -+ The last six characters of TEMPLATE must be "XXXXXX"; -+ they are replaced with a string that makes the filename unique. -+ Then open the file and return a fd. */ -+int -+mkostemp (template, flags) -+ char *template; -+ int flags; -+{ -+ return __gen_tempname (template, __GT_FILE, flags); -+} -diff --git a/libc/stdlib/mkostemp64.c b/libc/stdlib/mkostemp64.c -new file mode 100644 -index 0000000..5509d8c ---- /dev/null -+++ b/libc/stdlib/mkostemp64.c -@@ -0,0 +1,33 @@ -+/* Copyright (C) 2000-2012 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include -+#include "../misc/internals/tempname.h" -+ -+/* Generate a unique temporary file name from TEMPLATE. -+ The last six characters of TEMPLATE must be "XXXXXX"; -+ they are replaced with a string that makes the filename unique. -+ Then open the file and return a fd. */ -+int -+mkostemp64 (template, flags) -+ char *template; -+ int flags; -+{ -+ return __gen_tempname (template, __GT_BIGFILE, flags | O_LARGEFILE); -+} --- -1.8.1.5 - diff --git a/package/uclibc/0.9.33.2/0013-eventfd-Implement-eventfd2-and-fix-eventfd.patch b/package/uclibc/0.9.33.2/0013-eventfd-Implement-eventfd2-and-fix-eventfd.patch deleted file mode 100644 index fea8ccdd1b8..00000000000 --- a/package/uclibc/0.9.33.2/0013-eventfd-Implement-eventfd2-and-fix-eventfd.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 7810e4f8027b5c4c8ceec6fefec4eb779362ebb5 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sun, 10 Jun 2012 09:36:23 -0700 -Subject: [PATCH] eventfd: Implement eventfd2 and fix eventfd - -eventfd: evntfd assumes to take two arguments instead it -should be one evntfd expects two therefore implement both syscalls with -correct parameters - -Thanks Eugene Rudoy for reporting it and also providing the patch - -Signed-off-by: Khem Raj ---- - libc/sysdeps/linux/common/eventfd.c | 16 ++++++++++++++-- - libc/sysdeps/linux/common/stubs.c | 2 +- - 2 files changed, 15 insertions(+), 3 deletions(-) - -diff --git a/libc/sysdeps/linux/common/eventfd.c b/libc/sysdeps/linux/common/eventfd.c -index cc3f3f0..96597ab 100644 ---- a/libc/sysdeps/linux/common/eventfd.c -+++ b/libc/sysdeps/linux/common/eventfd.c -@@ -7,12 +7,24 @@ - * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - */ - -+#include - #include - #include - - /* - * eventfd() - */ --#ifdef __NR_eventfd --_syscall2(int, eventfd, int, count, int, flags) -+#if defined __NR_eventfd || defined __NR_eventfd2 -+int eventfd (int count, int flags) -+{ -+#if defined __NR_eventfd2 -+ return INLINE_SYSCALL (eventfd2, 2, count, flags); -+#elif defined __NR_eventfd -+ if (flags != 0) { -+ __set_errno (EINVAL); -+ return -1; -+ } -+ return INLINE_SYSCALL (eventfd, 1, count); -+#endif -+} - #endif -diff --git a/libc/sysdeps/linux/common/stubs.c b/libc/sysdeps/linux/common/stubs.c -index 4d1e26c..7af14c1 100644 ---- a/libc/sysdeps/linux/common/stubs.c -+++ b/libc/sysdeps/linux/common/stubs.c -@@ -93,7 +93,7 @@ make_stub(epoll_ctl) - make_stub(epoll_wait) - #endif - --#if !defined __NR_eventfd && defined __UCLIBC_LINUX_SPECIFIC__ -+#if !defined __NR_eventfd && !defined __NR_eventfd2 && defined __UCLIBC_LINUX_SPECIFIC__ - make_stub(eventfd) - #endif - --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch b/package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch deleted file mode 100644 index 097f8fcbc72..00000000000 --- a/package/uclibc/0.9.33.2/0015-add-posix_madvise.c.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 93b8ce8886e30986be31c1403b606b6367dc258a Mon Sep 17 00:00:00 2001 -From: "Peter S. Mazinger" -Date: Tue, 26 Apr 2011 23:03:44 +0200 -Subject: [PATCH] add posix_madvise.c - -Signed-off-by: Peter S. Mazinger -Signed-off-by: Bernhard Reutner-Fischer -Signed-off-by: Mike Frysinger ---- - libc/sysdeps/linux/common/Makefile.in | 2 +- - libc/sysdeps/linux/common/posix_madvise.c | 25 +++++++++++++++++++++++++ - 2 files changed, 26 insertions(+), 1 deletion(-) - create mode 100644 libc/sysdeps/linux/common/posix_madvise.c - -diff --git a/libc/sysdeps/linux/common/Makefile.in b/libc/sysdeps/linux/common/Makefile.in -index 3b5763c..b39082b 100644 ---- a/libc/sysdeps/linux/common/Makefile.in -+++ b/libc/sysdeps/linux/common/Makefile.in -@@ -81,7 +81,7 @@ CSRC-$(UCLIBC_HAS_REALTIME) += clock_getres.c clock_gettime.c clock_settime.c \ - sched_get_priority_max.c sched_get_priority_min.c sched_getscheduler.c \ - sched_rr_get_interval.c sched_setparam.c sched_setscheduler.c sigqueue.c - # clock_getcpuclockid|clock_nanosleep|mq_timedreceive|mq_timedsend|posix_fadvise|posix_fallocate|posix_madvise|posix_memalign|posix_mem_offset|posix_spawnattr_destroy|posix_spawnattr_init|posix_spawnattr_getflags|posix_spawnattr_setflags|posix_spawnattr_getpgroup|posix_spawnattr_setpgroup|posix_spawnattr_getschedparam|posix_spawnattr_setschedparam|posix_spawnattr_getschedpolicy|posix_spawnattr_setschedpolicy|posix_spawnattr_getsigdefault|posix_spawnattr_setsigdefault|posix_spawnattr_getsigmask|posix_spawnattr_setsigmask|posix_spawnattr_init|posix_spawnattr_setflags|posix_spawnattr_setpgroup|posix_spawnattr_setschedparam|posix_spawnattr_setschedpolicy|posix_spawnattr_setsigdefault|posix_spawnattr_setsigmask|posix_spawn_file_actions_addclose|posix_spawn_file_actions_addopen|posix_spawn_file_actions_adddup2|posix_spawn_file_actions_addopen|posix_spawn_file_actions_destroy|posix_spawn_file_actions_init|posix_spawn_file_actions_init|posix_spawn|posix_spawnp|posix_spawnp|posix_typed_mem_get_info|pthread_mutex_timedlock|sem_timedwait --CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise64.c posix_fadvise.c -+CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise64.c posix_fadvise.c posix_madvise.c - CSRC-$(UCLIBC_SUSV4_LEGACY) += utime.c - CSRC-$(UCLIBC_HAS_EPOLL) += epoll.c - CSRC-$(UCLIBC_HAS_XATTR) += xattr.c -diff --git a/libc/sysdeps/linux/common/posix_madvise.c b/libc/sysdeps/linux/common/posix_madvise.c -new file mode 100644 -index 0000000..2f95bcb ---- /dev/null -+++ b/libc/sysdeps/linux/common/posix_madvise.c -@@ -0,0 +1,25 @@ -+/* vi: set sw=4 ts=4: */ -+/* Licensed under the LGPL v2.1, see the file LICENSE in this tarball. */ -+ -+#include -+#include -+ -+#if defined __NR_madvise && defined __USE_XOPEN2K && defined __UCLIBC_HAS_ADVANCED_REALTIME__ -+int posix_madvise(void *addr, size_t len, int advice) -+{ -+ int result; -+ /* We have one problem: the kernel's MADV_DONTNEED does not -+ * correspond to POSIX's POSIX_MADV_DONTNEED. The former simply -+ * discards changes made to the memory without writing it back to -+ * disk, if this would be necessary. The POSIX behaviour does not -+ * allow this. There is no functionality mapping for the POSIX -+ * behaviour so far so we ignore that advice for now. */ -+ if (advice == POSIX_MADV_DONTNEED) -+ return 0; -+ -+ /* this part might use madvise function */ -+ INTERNAL_SYSCALL_DECL (err); -+ result = INTERNAL_SYSCALL (madvise, err, 3, addr, len, advice); -+ return INTERNAL_SYSCALL_ERRNO (result, err); -+} -+#endif --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0016-nptl-sh-fix-race-condition-in-lll_wait_tid.patch b/package/uclibc/0.9.33.2/0016-nptl-sh-fix-race-condition-in-lll_wait_tid.patch deleted file mode 100644 index 233f2bee0a4..00000000000 --- a/package/uclibc/0.9.33.2/0016-nptl-sh-fix-race-condition-in-lll_wait_tid.patch +++ /dev/null @@ -1,38 +0,0 @@ -From ffd9e147b120e9c2bf30ba4861860f1bc59362c5 Mon Sep 17 00:00:00 2001 -From: Stas Sergeev -Date: Thu, 14 Jun 2012 01:00:02 +0200 -Subject: [PATCH] nptl: sh: fix race condition in lll_wait_tid - -Make a local copy of the tid value to avoid a race condition, -as the value could have been changed to 0, thus using a pointer -it would have been passed to the lll_futex_wait modified. - -Signed-off-by: Stas Sergeev -Signed-off-by: Carmelo Amoroso -(cherry picked from commit 0dcc13bf7a61b1d0708e5dd103d5515e0ffec79a) - -Signed-off-by: Carmelo Amoroso ---- - libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h -index d10cd61..b83d863 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/lowlevellock.h -@@ -396,9 +396,9 @@ extern int __lll_unlock_wake (int *__futex, int private) attribute_hidden; - - #define lll_wait_tid(tid) \ - do { \ -- __typeof (tid) *__tid = &(tid); \ -- while (*__tid != 0) \ -- lll_futex_wait (__tid, *__tid, LLL_SHARED); \ -+ __typeof (tid) __tid; \ -+ while ((__tid = (tid)) != 0) \ -+ lll_futex_wait (&(tid), __tid, LLL_SHARED); \ - } while (0) - - extern int __lll_timedwait_tid (int *tid, const struct timespec *abstime) --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0017-librt-re-add-SIGCANCEL-to-the-list-of-blocked-signal.patch b/package/uclibc/0.9.33.2/0017-librt-re-add-SIGCANCEL-to-the-list-of-blocked-signal.patch deleted file mode 100644 index 9a263f8d794..00000000000 --- a/package/uclibc/0.9.33.2/0017-librt-re-add-SIGCANCEL-to-the-list-of-blocked-signal.patch +++ /dev/null @@ -1,37 +0,0 @@ -From fec308fdfaf9f557ef5fb17c308c48259012b825 Mon Sep 17 00:00:00 2001 -From: Filippo Arcidiacono -Date: Thu, 12 Jul 2012 09:24:39 +0200 -Subject: [PATCH] librt: re-add SIGCANCEL to the list of blocked signal in - helper thread - -Indeed if the libpthread is before the libc in the library look up -the SIGCANCEL is removed from the list of the blocked signal by -sigfillset func, this can produce the handler not properly called. -This commit revert what Denys modified in commit -162cfaea20d807f0ae329efe39292a9b22593b41. - -Signed-off-by: Filippo Arcidiacono -Signed-off-by: Carmelo Amoroso -(cherry picked from commit cb43f2afba0633400387fa7c55dda3396517f58a) - -Signed-off-by: Carmelo Amoroso ---- - libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c b/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c -index 4319d8d..2681961 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/timer_routines.c -@@ -175,7 +175,7 @@ __start_helper_thread (void) - sigset_t ss; - sigset_t oss; - sigfillset (&ss); -- /*__sigaddset (&ss, SIGCANCEL); - already done by sigfillset */ -+ __sigaddset (&ss, SIGCANCEL); - INTERNAL_SYSCALL_DECL (err); - INTERNAL_SYSCALL (rt_sigprocmask, err, 4, SIG_SETMASK, &ss, &oss, _NSIG / 8); - --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0018-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch b/package/uclibc/0.9.33.2/0018-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch deleted file mode 100644 index 37fb9132ef0..00000000000 --- a/package/uclibc/0.9.33.2/0018-ldso-include-dlfcn.h-for-RTLD_NODELETE.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 2f09c67232cebca62f3afa4fc296c83aa813427c Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Sun, 18 Nov 2012 04:41:06 -0500 -Subject: [PATCH] ldso: include dlfcn.h for RTLD_NODELETE - -Building with NPTL enabled and shared library support disabled we hit: -In file included from libpthread/nptl/sysdeps/generic/dl-tls.c:30:0: -./ldso/include/dl-elf.h: In function '__dl_parse_dynamic_info': -./ldso/include/dl-elf.h:173:20: error: 'RTLD_NODELETE' undeclared (first use in this function) -./ldso/include/dl-elf.h:173:20: note: each undeclared identifier is reported only once for each function it appears in -make: *** [libpthread/nptl/sysdeps/generic/dl-tls.os] Error 1 - -A previous commit (f26c5f6952ce9bf8edec9c1571c47addb1bcc442) touched -on a similar issue, but added the include to the incorrect location. - -Reported-by: Christophe Lyon [arm nommu] -Reported-by: Daniel Beecham [static x86_64] -Signed-off-by: Mike Frysinger -Signed-off-by: Carmelo Amoroso ---- - ldso/include/dl-elf.h | 2 ++ - ldso/include/ldso.h | 1 - - 2 files changed, 2 insertions(+), 1 deletion(-) - -diff --git a/ldso/include/dl-elf.h b/ldso/include/dl-elf.h -index 29d1a00..e1185f7 100644 ---- a/ldso/include/dl-elf.h -+++ b/ldso/include/dl-elf.h -@@ -18,6 +18,8 @@ struct elf_resolve; - struct r_scope_elem; - - #include -+#include -+ - #ifdef __LDSO_CACHE_SUPPORT__ - extern int _dl_map_cache(void); - extern int _dl_unmap_cache(void); -diff --git a/ldso/include/ldso.h b/ldso/include/ldso.h -index 6f3b728..e250e30 100644 ---- a/ldso/include/ldso.h -+++ b/ldso/include/ldso.h -@@ -42,7 +42,6 @@ - #ifndef __ARCH_HAS_NO_SHARED__ - #include - #include --#include - /* Now the ldso specific headers */ - #include - #ifdef __UCLIBC_HAS_TLS__ --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0019-include-elf.h-update-for-ELFOSABI_-changes.patch b/package/uclibc/0.9.33.2/0019-include-elf.h-update-for-ELFOSABI_-changes.patch deleted file mode 100644 index b3507af78dc..00000000000 --- a/package/uclibc/0.9.33.2/0019-include-elf.h-update-for-ELFOSABI_-changes.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 788d9ca73b7ed1262c83580ccc62fb3625e603c3 Mon Sep 17 00:00:00 2001 -From: Thomas Schwinge -Date: Wed, 31 Oct 2012 20:41:50 +0100 -Subject: [PATCH] include/elf.h: update for ELFOSABI_* changes. - -ELFOSABI_GNU replaces ELFOSABI_LINUX, the latter is kept as a compatibility -alias, and ELFOSABI_HURD is removed. See the table on - for -reference. - -Signed-off-by: Thomas Schwinge -Signed-off-by: Bernhard Reutner-Fischer ---- - include/elf.h | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/include/elf.h b/include/elf.h -index ba3e804..470046e 100644 ---- a/include/elf.h -+++ b/include/elf.h -@@ -148,8 +148,8 @@ typedef struct - #define ELFOSABI_SYSV 0 /* Alias. */ - #define ELFOSABI_HPUX 1 /* HP-UX */ - #define ELFOSABI_NETBSD 2 /* NetBSD. */ --#define ELFOSABI_LINUX 3 /* Linux. */ --#define ELFOSABI_HURD 4 /* GNU/Hurd */ -+#define ELFOSABI_GNU 3 /* Object uses GNU ELF extensions. */ -+#define ELFOSABI_LINUX ELFOSABI_GNU /* Compatibility alias. */ - #define ELFOSABI_SOLARIS 6 /* Sun Solaris. */ - #define ELFOSABI_AIX 7 /* IBM AIX. */ - #define ELFOSABI_IRIX 8 /* SGI Irix. */ --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0020-update-ptrace.h-to-latest-from-glibc.patch b/package/uclibc/0.9.33.2/0020-update-ptrace.h-to-latest-from-glibc.patch deleted file mode 100644 index a46af7e5f76..00000000000 --- a/package/uclibc/0.9.33.2/0020-update-ptrace.h-to-latest-from-glibc.patch +++ /dev/null @@ -1,113 +0,0 @@ -From 2d0c3a704afe6bdc7be129e9f9217ec1369c1bc8 Mon Sep 17 00:00:00 2001 -From: James Hogan -Date: Fri, 30 Nov 2012 10:08:13 +0000 -Subject: [PATCH] update ptrace.h to latest from glibc - -Update libc/sysdeps/linux/common/sys/ptrace.h to latest from glibc's -sysdeps/unix/sysv/linux/sys/ptrace.h. - -This adds definitions for operations: - - PTRACE_GETREGSET - - PTRACE_SETREGSET - - PTRACE_SEIZE - - PTRACE_INTERRUPT - - PTRACE_LISTEN - -And adds flags: - - PTRACE_SEIZE_DEVEL - -And adds event codes: - - PTRACE_EVENT_SECCOMP - -This is to allow access to the generic interface for accessing -architecture specific regsets using the corresponding NT_* types, -required for new Linux kernel architecture ports. - -Signed-off-by: James Hogan -Signed-off-by: Mike Frysinger -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/sysdeps/linux/common/sys/ptrace.h | 42 +++++++++++++++++++++++++++----- - 1 file changed, 36 insertions(+), 6 deletions(-) - -diff --git a/libc/sysdeps/linux/common/sys/ptrace.h b/libc/sysdeps/linux/common/sys/ptrace.h -index 08658f9..95b3fdf 100644 ---- a/libc/sysdeps/linux/common/sys/ptrace.h -+++ b/libc/sysdeps/linux/common/sys/ptrace.h -@@ -1,5 +1,5 @@ - /* `ptrace' debugger support interface. Linux version. -- Copyright (C) 1996-1999,2000,2006,2007 Free Software Foundation, Inc. -+ Copyright (C) 1996-2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -125,13 +125,40 @@ enum __ptrace_request - #define PT_GETSIGINFO PTRACE_GETSIGINFO - - /* Set new siginfo for process. */ -- PTRACE_SETSIGINFO = 0x4203 -+ PTRACE_SETSIGINFO = 0x4203, - #define PT_SETSIGINFO PTRACE_SETSIGINFO -+ -+ /* Get register content. */ -+ PTRACE_GETREGSET = 0x4204, -+#define PTRACE_GETREGSET PTRACE_GETREGSET -+ -+ /* Set register content. */ -+ PTRACE_SETREGSET = 0x4205, -+#define PTRACE_SETREGSET PTRACE_SETREGSET -+ -+ /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect -+ signal or group stop state. */ -+ PTRACE_SEIZE = 0x4206, -+#define PTRACE_SEIZE PTRACE_SEIZE -+ -+ /* Trap seized tracee. */ -+ PTRACE_INTERRUPT = 0x4207, -+#define PTRACE_INTERRUPT PTRACE_INTERRUPT -+ -+ /* Wait for next group event. */ -+ PTRACE_LISTEN = 0x4208 - }; - - -+/* Flag for PTRACE_LISTEN. */ -+enum __ptrace_flags -+{ -+ PTRACE_SEIZE_DEVEL = 0x80000000 -+}; -+ - /* Options set using PTRACE_SETOPTIONS. */ --enum __ptrace_setoptions { -+enum __ptrace_setoptions -+{ - PTRACE_O_TRACESYSGOOD = 0x00000001, - PTRACE_O_TRACEFORK = 0x00000002, - PTRACE_O_TRACEVFORK = 0x00000004, -@@ -139,17 +166,20 @@ enum __ptrace_setoptions { - PTRACE_O_TRACEEXEC = 0x00000010, - PTRACE_O_TRACEVFORKDONE = 0x00000020, - PTRACE_O_TRACEEXIT = 0x00000040, -- PTRACE_O_MASK = 0x0000007f -+ PTRACE_O_TRACESECCOMP = 0x00000080, -+ PTRACE_O_MASK = 0x000000ff - }; - - /* Wait extended result codes for the above trace options. */ --enum __ptrace_eventcodes { -+enum __ptrace_eventcodes -+{ - PTRACE_EVENT_FORK = 1, - PTRACE_EVENT_VFORK = 2, - PTRACE_EVENT_CLONE = 3, - PTRACE_EVENT_EXEC = 4, - PTRACE_EVENT_VFORK_DONE = 5, -- PTRACE_EVENT_EXIT = 6 -+ PTRACE_EVENT_EXIT = 6, -+ PTRAVE_EVENT_SECCOMP = 7 - }; - - /* Perform process tracing functions. REQUEST is one of the values --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0022-inet-rpc-fix-authnone_marshal-in-multithreading-cont.patch b/package/uclibc/0.9.33.2/0022-inet-rpc-fix-authnone_marshal-in-multithreading-cont.patch deleted file mode 100644 index 6d8e2b21a6e..00000000000 --- a/package/uclibc/0.9.33.2/0022-inet-rpc-fix-authnone_marshal-in-multithreading-cont.patch +++ /dev/null @@ -1,128 +0,0 @@ -From 5c797a24a7d6337b5e654079a8d815199b1e8364 Mon Sep 17 00:00:00 2001 -From: Carmelo Amoroso -Date: Thu, 2 Feb 2012 18:22:36 +0100 -Subject: [PATCH] inet:rpc: fix authnone_marshal in multithreading context - -This is a port of glibc's fix by Zack Weinberg as reported -in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=142312, -and discussed in http://sourceware.org/ml/libc-alpha/2002-04/msg00069.html -and following. - -Signed-off-by: Carmelo Amoroso ---- - libc/inet/rpc/auth_none.c | 59 +++++++++++++++++++++---------------------- - libc/inet/rpc/rpc_private.h | 2 -- - libc/inet/rpc/rpc_thread.c | 1 - - 3 files changed, 29 insertions(+), 33 deletions(-) - -diff --git a/libc/inet/rpc/auth_none.c b/libc/inet/rpc/auth_none.c -index c48bbfe..d066f6b 100644 ---- a/libc/inet/rpc/auth_none.c -+++ b/libc/inet/rpc/auth_none.c -@@ -66,49 +66,48 @@ struct authnone_private_s { - char marshalled_client[MAX_MARSHAL_SIZE]; - u_int mcnt; - }; --#ifdef __UCLIBC_HAS_THREADS__ --#define authnone_private (*(struct authnone_private_s **)&RPC_THREAD_VARIABLE(authnone_private_s)) --#else --static struct authnone_private_s *authnone_private; --#endif - --AUTH * --authnone_create (void) -+static struct authnone_private_s authnone_private; -+__libc_once_define(static, authnone_private_guard); -+ -+static void authnone_create_once (void); -+ -+static void -+authnone_create_once (void) - { - struct authnone_private_s *ap; - XDR xdr_stream; - XDR *xdrs; - -- ap = (struct authnone_private_s *) authnone_private; -- if (ap == NULL) -- { -- ap = (struct authnone_private_s *) calloc (1, sizeof (*ap)); -- if (ap == NULL) -- return NULL; -- authnone_private = ap; -- } -- if (!ap->mcnt) -- { -- ap->no_client.ah_cred = ap->no_client.ah_verf = _null_auth; -- ap->no_client.ah_ops = (struct auth_ops *)&ops; -- xdrs = &xdr_stream; -- xdrmem_create (xdrs, ap->marshalled_client, (u_int) MAX_MARSHAL_SIZE, -- XDR_ENCODE); -- (void) xdr_opaque_auth (xdrs, &ap->no_client.ah_cred); -- (void) xdr_opaque_auth (xdrs, &ap->no_client.ah_verf); -- ap->mcnt = XDR_GETPOS (xdrs); -- XDR_DESTROY (xdrs); -- } -- return (&ap->no_client); -+ ap = &authnone_private; -+ -+ ap->no_client.ah_cred = ap->no_client.ah_verf = _null_auth; -+ ap->no_client.ah_ops = (struct auth_ops *) &ops; -+ xdrs = &xdr_stream; -+ xdrmem_create(xdrs, ap->marshalled_client, -+ (u_int) MAX_MARSHAL_SIZE, XDR_ENCODE); -+ (void) xdr_opaque_auth(xdrs, &ap->no_client.ah_cred); -+ (void) xdr_opaque_auth(xdrs, &ap->no_client.ah_verf); -+ ap->mcnt = XDR_GETPOS (xdrs); -+ XDR_DESTROY (xdrs); -+} -+ -+AUTH * -+authnone_create (void) -+{ -+ __libc_once (authnone_private_guard, authnone_create_once); -+ return &authnone_private.no_client; - } - libc_hidden_def(authnone_create) - - static bool_t --authnone_marshal (AUTH *client attribute_unused, XDR *xdrs) -+authnone_marshal (AUTH *client, XDR *xdrs) - { - struct authnone_private_s *ap; - -- ap = authnone_private; -+ /* authnone_create returned authnone_private->no_client, which is -+ the first field of struct authnone_private_s. */ -+ ap = (struct authnone_private_s *) client; - if (ap == NULL) - return FALSE; - return (*xdrs->x_ops->x_putbytes) (xdrs, ap->marshalled_client, ap->mcnt); -diff --git a/libc/inet/rpc/rpc_private.h b/libc/inet/rpc/rpc_private.h -index ede3ddf..e1214d2 100644 ---- a/libc/inet/rpc/rpc_private.h -+++ b/libc/inet/rpc/rpc_private.h -@@ -18,8 +18,6 @@ struct rpc_thread_variables { - struct pollfd *svc_pollfd_s; /* Global, rpc_common.c */ - int svc_max_pollfd_s; /* Global, rpc_common.c */ - -- void *authnone_private_s; /* auth_none.c */ -- - void *clnt_perr_buf_s; /* clnt_perr.c */ - - void *clntraw_private_s; /* clnt_raw.c */ -diff --git a/libc/inet/rpc/rpc_thread.c b/libc/inet/rpc/rpc_thread.c -index 71303b2..3367659 100644 ---- a/libc/inet/rpc/rpc_thread.c -+++ b/libc/inet/rpc/rpc_thread.c -@@ -32,7 +32,6 @@ __rpc_thread_destroy (void) - __rpc_thread_svc_cleanup (); - __rpc_thread_clnt_cleanup (); - /*__rpc_thread_key_cleanup (); */ -- free (tvp->authnone_private_s); - free (tvp->clnt_perr_buf_s); - free (tvp->clntraw_private_s); - free (tvp->svcraw_private_s); --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0023-MIPS-Convert-__syscall_error-callers-to-use-a0-for-a.patch b/package/uclibc/0.9.33.2/0023-MIPS-Convert-__syscall_error-callers-to-use-a0-for-a.patch deleted file mode 100644 index 7103f59dd98..00000000000 --- a/package/uclibc/0.9.33.2/0023-MIPS-Convert-__syscall_error-callers-to-use-a0-for-a.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 6e2dbd7387bc2381e08aa85d6d33bb2d2d140843 Mon Sep 17 00:00:00 2001 -From: Kevin Cernekee -Date: Tue, 5 Jun 2012 15:05:19 -0700 -Subject: [PATCH] MIPS: Convert __syscall_error() callers to use $a0 for - argument - -Some callers passed the first argument in $v0, while others used $a0. -Change the callers to use $a0 consistently. - -Signed-off-by: Kevin Cernekee -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/sysdeps/linux/mips/vfork.S | 1 + - .../linuxthreads/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h | 2 +- - libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S | 1 + - 3 files changed, 3 insertions(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/mips/vfork.S b/libc/sysdeps/linux/mips/vfork.S -index b307447..00cc675 100644 ---- a/libc/sysdeps/linux/mips/vfork.S -+++ b/libc/sysdeps/linux/mips/vfork.S -@@ -84,6 +84,7 @@ NESTED(__vfork,FRAMESZ,sp) - - /* Something bad happened -- no child created. */ - L(error): -+ move a0, v0 - #ifdef __PIC__ - PTR_LA t9, __syscall_error - RESTORE_GP64 -diff --git a/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h b/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h -index fc51774..4d2c405 100644 ---- a/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h -+++ b/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/mips64/sysdep-cancel.h -@@ -31,7 +31,7 @@ - # undef PSEUDO - # define PSEUDO(name, syscall_name, args) \ - .align 2; \ -- 99: \ -+ 99: move a0, v0; \ - PTR_LA t9,__syscall_error; \ - /* manual cpreturn. */ \ - REG_L gp, STKOFF_GP(sp); \ -diff --git a/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S b/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S -index 7bbab5c..238d798 100644 ---- a/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S -+++ b/libpthread/linuxthreads/sysdeps/unix/sysv/linux/mips/vfork.S -@@ -80,6 +80,7 @@ NESTED(__vfork,FRAMESZ,sp) - - /* Something bad happened -- no child created. */ - L(error): -+ move a0, v0 - #ifdef __PIC__ - PTR_LA t9, __syscall_error - RESTORE_GP64 --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0024-MIPS-Use-a0-instead-of-v0-for-__syscall_error-argume.patch b/package/uclibc/0.9.33.2/0024-MIPS-Use-a0-instead-of-v0-for-__syscall_error-argume.patch deleted file mode 100644 index f48b9aeb453..00000000000 --- a/package/uclibc/0.9.33.2/0024-MIPS-Use-a0-instead-of-v0-for-__syscall_error-argume.patch +++ /dev/null @@ -1,63 +0,0 @@ -From c8f9e946bc2a0a42e84b5f97f272932de6485b54 Mon Sep 17 00:00:00 2001 -From: Kevin Cernekee -Date: Tue, 5 Jun 2012 15:05:20 -0700 -Subject: [PATCH] MIPS: Use $a0 instead of $v0 for __syscall_error() argument - -$a0 is saved across _dl_runtime_resolve(); $v0 is not. Unfortunately, -__syscall_error() uses $v0 for its argument, not $a0 as is the MIPS ABI -standard. This means that if lazy binding was used for __syscall_error(), -the errno value in $v0 could get corrupted. - -The problem can be easily seen in testcases where syscalls in librt fail; -when librt tries to call __syscall_error() in libc, the argument gets -lost and errno gets set to a bogus value: - - # ./tst-mqueue1 ; echo $? - mq_receive on O_WRONLY mqd_t did not fail with EBADF: Unknown error 2004684208 - 1 - # ./tst-mqueue2 ; echo $? - mq_timedreceive with too small msg_len did not fail with EMSGSIZE: Unknown error 1997360560 - 1 - # ./tst-mqueue4 ; echo $? - mq_timedsend did not fail with ETIMEDOUT: Unknown error 2008747440 - 1 - -When _dl_runtime_resolve() was taken out of the equation, the same test -cases passed: - - # LD_BIND_NOW=y ./tst-mqueue1 ; echo $? - 0 - # LD_BIND_NOW=y ./tst-mqueue2 ; echo $? - 0 - # LD_BIND_NOW=y ./tst-mqueue4 ; echo $? - 0 - -Changing __syscall_error() to look at $a0 instead of $v0 fixed the -problem. - -(Note that there is also a "__syscall_error.c" file which presumably -uses the standard C calling conventions, but I do not think it is used -on MIPS.) - -Signed-off-by: Kevin Cernekee -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/sysdeps/linux/mips/syscall_error.S | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/mips/syscall_error.S b/libc/sysdeps/linux/mips/syscall_error.S -index 51a8efa..0cc20da 100644 ---- a/libc/sysdeps/linux/mips/syscall_error.S -+++ b/libc/sysdeps/linux/mips/syscall_error.S -@@ -43,7 +43,7 @@ ENTRY(__syscall_error) - #ifdef __PIC__ - SAVE_GP(GPOFF) - #endif -- REG_S v0, V0OFF(sp) -+ REG_S a0, V0OFF(sp) - REG_S ra, RAOFF(sp) - - /* Find our per-thread errno address */ --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0025-ldso-use-.arm-mode-for-resolver-unconditionally.patch b/package/uclibc/0.9.33.2/0025-ldso-use-.arm-mode-for-resolver-unconditionally.patch deleted file mode 100644 index d33a0cddcb3..00000000000 --- a/package/uclibc/0.9.33.2/0025-ldso-use-.arm-mode-for-resolver-unconditionally.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 753e4e4cd9177f25981e81f82cd9fe8612a95ba6 Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Fri, 15 Jun 2012 13:44:35 +0200 -Subject: [PATCH] ldso: use .arm mode for resolver unconditionally - -as per comment in the file. -Fixes runtime with __THUMB_INTERWORK__ enabled. - -Signed-off-by: Bernhard Reutner-Fischer ---- - ldso/ldso/arm/resolve.S | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ldso/ldso/arm/resolve.S b/ldso/ldso/arm/resolve.S -index 08889d0..b0907f7 100644 ---- a/ldso/ldso/arm/resolve.S -+++ b/ldso/ldso/arm/resolve.S -@@ -101,7 +101,7 @@ - - .text - .align 4 @ 16 byte boundary and there are 32 bytes below (arm case) -- #if !defined(__thumb__) || defined(__thumb2__) -+#if 1 /*(!defined(__thumb__) || defined __THUMB_INTERWORK__) || defined(__thumb2__)*/ - .arm - .globl _dl_linux_resolve - .type _dl_linux_resolve,%function --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0026-make-NPTL-s-getpid-behave-similar-to-the-common-one.patch b/package/uclibc/0.9.33.2/0026-make-NPTL-s-getpid-behave-similar-to-the-common-one.patch deleted file mode 100644 index 11f7e2e0faf..00000000000 --- a/package/uclibc/0.9.33.2/0026-make-NPTL-s-getpid-behave-similar-to-the-common-one.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 8a2b550a510cf2a1a0989fc0a665a6a42c83efd4 Mon Sep 17 00:00:00 2001 -From: "Peter S. Mazinger" -Date: Fri, 22 Apr 2011 00:52:22 +0200 -Subject: [PATCH] make NPTL's getpid behave similar to the common one - -make __getpid static -provide getppid alias if needed -remove unneeded libc_hidden_proto - -Signed-off-by: Peter S. Mazinger -Signed-off-by: Bernhard Reutner-Fischer ---- - libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c | 11 ++++++++--- - 1 file changed, 8 insertions(+), 3 deletions(-) - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c b/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c -index d4de3cd..d2b3384 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c -@@ -21,6 +21,10 @@ - #include - #include - -+#ifdef __NR_getxpid -+# undef __NR_getpid -+# define __NR_getpid __NR_getxpid -+#endif - - #ifndef NOT_IN_libc - static inline __attribute__((always_inline)) pid_t really_getpid (pid_t oldval); -@@ -46,8 +50,7 @@ really_getpid (pid_t oldval) - } - #endif - --extern __typeof(getpid) __getpid; --pid_t -+static pid_t - __getpid (void) - { - #ifdef NOT_IN_libc -@@ -60,6 +63,8 @@ __getpid (void) - #endif - return result; - } --libc_hidden_proto(getpid) - weak_alias(__getpid, getpid) - libc_hidden_weak(getpid) -+#if !defined NOT_IN_libc && !defined __NR_getppid -+strong_alias(getpid,getppid) -+#endif --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0027-i386-bits-syscalls.h-allow-immediate-values-as-6th-s.patch b/package/uclibc/0.9.33.2/0027-i386-bits-syscalls.h-allow-immediate-values-as-6th-s.patch deleted file mode 100644 index 5df42ea95d9..00000000000 --- a/package/uclibc/0.9.33.2/0027-i386-bits-syscalls.h-allow-immediate-values-as-6th-s.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 576983880a0ab5d27a4f530d2cef36239b617e78 Mon Sep 17 00:00:00 2001 -From: Natanael Copa -Date: Thu, 5 Jul 2012 11:55:19 +0000 -Subject: [PATCH] i386/bits/syscalls.h: allow immediate values as 6th syscall - arg - -Allow use of immedate values as the 6th syscall argument. Otherwise we must -store the arg on memory. This gives gcc more options to optimize better. - -This also works around an issue with posix_fallocate. - -Signed-off-by: Natanael Copa -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/sysdeps/linux/i386/bits/syscalls.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/i386/bits/syscalls.h b/libc/sysdeps/linux/i386/bits/syscalls.h -index 9fb4f35..566b5ac 100644 ---- a/libc/sysdeps/linux/i386/bits/syscalls.h -+++ b/libc/sysdeps/linux/i386/bits/syscalls.h -@@ -136,7 +136,7 @@ __asm__ ( - #define ASMFMT_5(arg1, arg2, arg3, arg4, arg5) \ - , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5) - #define ASMFMT_6(arg1, arg2, arg3, arg4, arg5, arg6) \ -- , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5), "m" (arg6) -+ , "a" (arg1), "c" (arg2), "d" (arg3), "S" (arg4), "D" (arg5), "g" (arg6) - - #else /* !PIC */ - --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch b/package/uclibc/0.9.33.2/0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch deleted file mode 100644 index 374136757c5..00000000000 --- a/package/uclibc/0.9.33.2/0028-dl-fix-dlsym-lookups-with-RTLD_NEXT.patch +++ /dev/null @@ -1,57 +0,0 @@ -From f5108ce0c0f72a285e4cb198426e477295c84517 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Timo=20Ter=C3=A4s?= -Date: Tue, 8 Jan 2013 11:55:26 +0200 -Subject: [PATCH] dl: fix dlsym lookups with RTLD_NEXT -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The current code for dlsym() when invoked with RTLD_NEXT lookup -searches for the module where it's being called from, and executes the -_dl_find_hash only for the next module in the chain. However, if the -looked symbol is not there, the rest of the modules are not checked. - -Generally this is not a problem as symbols are merged for the parent -modules; so this affects only RTLD_NEXT. - -This patch adds a loop iterating through all the following modules. - -Signed-off-by: Timo Teräs -Reviewed-by: Filippo ARCIDIACONO -Tested-by: Florian Fainelli -Signed-off-by: Bernhard Reutner-Fischer ---- - ldso/libdl/libdl.c | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - -diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c -index 51bcf7d..71ade1f 100644 ---- a/ldso/libdl/libdl.c -+++ b/ldso/libdl/libdl.c -@@ -671,7 +671,7 @@ static void *do_dlsym(void *vhandle, const char *name, void *caller_address) - { - struct elf_resolve *tpnt, *tfrom; - struct dyn_elf *handle; -- ElfW(Addr) from; -+ ElfW(Addr) from = 0; - struct dyn_elf *rpnt; - void *ret; - struct symbol_ref sym_ref = { NULL, NULL }; -@@ -729,7 +729,13 @@ static void *do_dlsym(void *vhandle, const char *name, void *caller_address) - tpnt = NULL; - if (handle == _dl_symbol_tables) - tpnt = handle->dyn; /* Only search RTLD_GLOBAL objs if global object */ -- ret = _dl_find_hash(name2, &handle->dyn->symbol_scope, tpnt, ELF_RTYPE_CLASS_DLSYM, &sym_ref); -+ -+ do { -+ ret = _dl_find_hash(name2, &handle->dyn->symbol_scope, tpnt, ELF_RTYPE_CLASS_DLSYM, &sym_ref); -+ if (ret != NULL) -+ break; -+ handle = handle->next; -+ } while (from && handle); - - #if defined(USE_TLS) && USE_TLS && defined SHARED - if (sym_ref.sym && (ELF_ST_TYPE(sym_ref.sym->st_info) == STT_TLS) && (sym_ref.tpnt)) { --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0029-inet-rpc-fix-build-in-NPTL-case.patch b/package/uclibc/0.9.33.2/0029-inet-rpc-fix-build-in-NPTL-case.patch deleted file mode 100644 index 716052a15d8..00000000000 --- a/package/uclibc/0.9.33.2/0029-inet-rpc-fix-build-in-NPTL-case.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 3a732cacd650bd39d86ac13ba0f57eee0df82d5a Mon Sep 17 00:00:00 2001 -From: Carmelo Amoroso -Date: Wed, 14 Mar 2012 15:21:36 +0100 -Subject: [PATCH] inet:rpc: fix build in !NPTL case - -__libc_once is not available / needed when multithreading support -is not enabled, so authnone_create() calls authnone_create_once() -directly. -When LT.{old,new} is used instead of NPTL, it needs to explicitly -include to get __libc_once to be visible. - -Signed-off-by: Carmelo Amoroso ---- - libc/inet/rpc/auth_none.c | 6 ++++++ - libc/inet/rpc/rpc_private.h | 1 + - 2 files changed, 7 insertions(+) - -diff --git a/libc/inet/rpc/auth_none.c b/libc/inet/rpc/auth_none.c -index d066f6b..70bee5b 100644 ---- a/libc/inet/rpc/auth_none.c -+++ b/libc/inet/rpc/auth_none.c -@@ -68,7 +68,9 @@ struct authnone_private_s { - }; - - static struct authnone_private_s authnone_private; -+#ifdef __UCLIBC_HAS_THREADS__ - __libc_once_define(static, authnone_private_guard); -+#endif - - static void authnone_create_once (void); - -@@ -95,7 +97,11 @@ authnone_create_once (void) - AUTH * - authnone_create (void) - { -+#ifdef __UCLIBC_HAS_THREADS__ - __libc_once (authnone_private_guard, authnone_create_once); -+#else -+ authnone_create_once(); -+#endif - return &authnone_private.no_client; - } - libc_hidden_def(authnone_create) -diff --git a/libc/inet/rpc/rpc_private.h b/libc/inet/rpc/rpc_private.h -index e1214d2..38ade1c 100644 ---- a/libc/inet/rpc/rpc_private.h -+++ b/libc/inet/rpc/rpc_private.h -@@ -12,6 +12,7 @@ extern u_long _create_xid (void) attribute_hidden; - */ - #ifdef __UCLIBC_HAS_THREADS__ - #include -+#include - struct rpc_thread_variables { - fd_set svc_fdset_s; /* Global, rpc_common.c */ - struct rpc_createerr rpc_createerr_s; /* Global, rpc_common.c */ --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0030-stdio-implement-assignment-allocation-m-character.patch b/package/uclibc/0.9.33.2/0030-stdio-implement-assignment-allocation-m-character.patch deleted file mode 100644 index 42a27372da6..00000000000 --- a/package/uclibc/0.9.33.2/0030-stdio-implement-assignment-allocation-m-character.patch +++ /dev/null @@ -1,190 +0,0 @@ -From 050cd6971f92c2337bc506043dfcf1395dd5d622 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Sun, 6 May 2012 03:50:44 -0400 -Subject: [PATCH] stdio: implement assignment-allocation "m" character - -The latest POSIX spec introduces a "m" character to allocate buffers for -the user when using scanf type functions. This is like the old glibc "a" -flag, but now standardized. With packages starting to use these, we need -to implement it. - -for example: - char *s; - sscanf("foo", "%ms", &s); - printf("%s\n", s); - free(s); -This will automatically allocate storage for "s", read in "foo" to it, -and then display it. - -I'm not terribly familiar with the stdio layer, so this could be wrong. -But it seems to work for me. - -Signed-off-by: Mike Frysinger ---- - extra/Configs/Config.in | 13 --------- - libc/stdio/_scanf.c | 68 +++++++++++++++++++++++++++-------------------- - 2 files changed, 39 insertions(+), 42 deletions(-) - -diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in -index 1060729..c2f2fc7 100644 ---- a/extra/Configs/Config.in -+++ b/extra/Configs/Config.in -@@ -1590,19 +1590,6 @@ config UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS - - Most people will answer 9. - -- --config UCLIBC_HAS_SCANF_GLIBC_A_FLAG -- bool "Support glibc's 'a' flag for scanf string conversions (not implemented)" -- help -- NOTE!!! Currently Not Implemented!!! Just A Place Holder!! NOTE!!! -- NOTE!!! Conflicts with an ANSI/ISO C99 scanf flag!! NOTE!!! -- -- Answer Y to enable support for glibc's 'a' flag for the scanf string -- conversions '%s', '%[', '%ls', '%l[', and '%S'. This is used to -- auto-allocate sufficient memory to hold the data retrieved. -- -- Most people will answer N. -- - choice - prompt "Stdio buffer size" - default UCLIBC_HAS_STDIO_BUFSIZ_4096 -diff --git a/libc/stdio/_scanf.c b/libc/stdio/_scanf.c -index f38e72b..952853c 100644 ---- a/libc/stdio/_scanf.c -+++ b/libc/stdio/_scanf.c -@@ -77,14 +77,6 @@ - #include - #endif /* __UCLIBC_HAS_FLOATS__ */ - --#ifdef __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ --#ifdef L_vfscanf --/* only emit this once */ --#warning Forcing undef of __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ until implemented! --#endif --#undef __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ --#endif -- - #undef __STDIO_HAS_VSSCANF - #if defined(__STDIO_BUFFERS) || !defined(__UCLIBC_HAS_WCHAR__) || defined(__UCLIBC_HAS_GLIBC_CUSTOM_STREAMS__) - #define __STDIO_HAS_VSSCANF 1 -@@ -433,8 +425,9 @@ libc_hidden_def(vswscanf) - - - /* float layout 0123456789012345678901 repeat n for "l[" */ --#define SPEC_CHARS "npxXoudifFeEgGaACSncs[" --/* npxXoudif eEgG CS cs[ */ -+#define SPEC_CHARS "npxXoudifFeEgGaACSnmcs[" -+/* npxXoudif eEgG CS cs[ */ -+/* NOTE: the 'm' flag must come before any convs that support it */ - - /* NOTE: Ordering is important! In particular, CONV_LEFTBRACKET - * must immediately precede CONV_c. */ -@@ -444,7 +437,7 @@ enum { - CONV_p, - CONV_x, CONV_X, CONV_o, CONV_u, CONV_d, CONV_i, - CONV_f, CONV_F, CONV_e, CONV_E, CONV_g, CONV_G, CONV_a, CONV_A, -- CONV_C, CONV_S, CONV_LEFTBRACKET, CONV_c, CONV_s, CONV_leftbracket, -+ CONV_C, CONV_S, CONV_LEFTBRACKET, CONV_m, CONV_c, CONV_s, CONV_leftbracket, - CONV_percent, CONV_whitespace /* not in SPEC_* and no flags */ - }; - -@@ -474,7 +467,7 @@ enum { - FLAG_SURPRESS = 0x10, /* MUST BE 1ST!! See DO_FLAGS. */ - FLAG_THOUSANDS = 0x20, - FLAG_I18N = 0x40, /* only works for d, i, u */ -- FLAG_MALLOC = 0x80, /* only works for s, S, and [ (and l[)*/ -+ FLAG_MALLOC = 0x80, /* only works for c, s, S, and [ (and l[)*/ - }; - - -@@ -491,7 +484,7 @@ enum { - /* fFeEgGaA */ (0x0c|FLAG_SURPRESS|FLAG_THOUSANDS|FLAG_I18N), \ - /* C */ ( 0|FLAG_SURPRESS), \ - /* S and l[ */ ( 0|FLAG_SURPRESS|FLAG_MALLOC), \ -- /* c */ (0x04|FLAG_SURPRESS), \ -+ /* c */ (0x04|FLAG_SURPRESS|FLAG_MALLOC), \ - /* s and [ */ (0x04|FLAG_SURPRESS|FLAG_MALLOC), \ - } - -@@ -904,17 +897,17 @@ int attribute_hidden __psfs_parse_spec(register psfs_t *psfs) - if (*psfs->fmt == *p) { - int p_m_spec_chars = p - spec_chars; - --#ifdef __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ --#error implement gnu a flag -- if ((*p == 'a') -- && ((psfs->fmt[1] == '[') || ((psfs->fmt[1]|0x20) == 's')) -- ) { /* Assumes ascii for 's' and 'S' test. */ -- psfs->flags |= FLAG_MALLOC; -+ if (*p == 'm' && -+ (psfs->fmt[1] == '[' || psfs->fmt[1] == 'c' || -+ /* Assumes ascii for 's' and 'S' test. */ -+ (psfs->fmt[1] | 0x20) == 's')) -+ { -+ if (psfs->store) -+ psfs->flags |= FLAG_MALLOC; - ++psfs->fmt; - ++p; -- continue; /* The related conversions follow 'a'. */ -+ continue; /* The related conversions follow 'm'. */ - } --#endif /* __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ */ - - for (p = spec_ranges; p_m_spec_chars > *p ; ++p) {} - if (((psfs->dataargtype >> 8) | psfs->flags) -@@ -1265,12 +1258,6 @@ int VFSCANF (FILE *__restrict fp, const Wchar *__restrict format, va_list arg) - while (*wf && __isascii(*wf) && (b < buf + sizeof(buf) - 1)) { - *b++ = *wf++; - } --#ifdef __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ --#error this is wrong... we need to ched in __psfs_parse_spec instead since this checks last char in buffer and conversion my have stopped before it. -- if ((*b == 'a') && ((*wf == '[') || ((*wf|0x20) == 's'))) { -- goto DONE; /* Spec was excessively long. */ -- } --#endif /* __UCLIBC_HAS_SCANF_GLIBC_A_FLAG__ */ - *b = 0; - if (b == buf) { /* Bad conversion specifier! */ - goto DONE; -@@ -1390,13 +1377,36 @@ int VFSCANF (FILE *__restrict fp, const Wchar *__restrict format, va_list arg) - } - - if (psfs.conv_num == CONV_s) { -+ /* We might have to handle the allocation ourselves */ -+ int len; -+ /* With 'm', we actually got a pointer to a pointer */ -+ unsigned char **ptr = (void *)b; -+ -+ i = 0; -+ if (psfs.flags & FLAG_MALLOC) { -+ len = 0; -+ b = NULL; -+ } else -+ len = -1; -+ - /* Yes, believe it or not, a %s conversion can store nuls. */ - while ((__scan_getc(&sc) >= 0) && !isspace(sc.cc)) { - zero_conversions = 0; -- *b = sc.cc; -- b += psfs.store; -+ if (i == len) { -+ /* Pick a size that won't trigger a lot of -+ * mallocs early on ... */ -+ len += 256; -+ b = realloc(b, len + 1); -+ } -+ b[i] = sc.cc; -+ i += psfs.store; - fail = 0; - } -+ -+ if (psfs.flags & FLAG_MALLOC) -+ *ptr = b; -+ /* The code below takes care of terminating NUL */ -+ b += i; - } else { - #ifdef __UCLIBC_HAS_WCHAR__ - assert((psfs.conv_num == CONV_LEFTBRACKET) || \ --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0031-mmap-sys_mmap2-do-unsigned-shift-of-offset.patch b/package/uclibc/0.9.33.2/0031-mmap-sys_mmap2-do-unsigned-shift-of-offset.patch deleted file mode 100644 index 475dcfdea75..00000000000 --- a/package/uclibc/0.9.33.2/0031-mmap-sys_mmap2-do-unsigned-shift-of-offset.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 569d1423ac2b585b5cb38bee545b5e0ae2bd7f67 Mon Sep 17 00:00:00 2001 -From: James Hogan -Date: Thu, 17 May 2012 12:42:54 +0100 -Subject: [PATCH] mmap()->sys_mmap2: do unsigned shift of offset - -Fix the implementation of mmap based on the mmap2 system call, to -construct pgoffset from offset with an unsigned shift rather than a -signed (off_t) shift. The mmap2 test in the testsuite catches this case -by mmap'ing with a large offset (with the sign bit set). The signed -shift repeats the sign bit making the page shift way out of range. This -is already fixed similarly in mmap64(). - -Signed-off-by: James Hogan -Signed-off-by: Mike Frysinger ---- - libc/sysdeps/linux/common/mmap.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/libc/sysdeps/linux/common/mmap.c b/libc/sysdeps/linux/common/mmap.c -index 8995898..d53eabb 100644 ---- a/libc/sysdeps/linux/common/mmap.c -+++ b/libc/sysdeps/linux/common/mmap.c -@@ -63,7 +63,8 @@ __ptr_t mmap(__ptr_t addr, size_t len, int prot, int flags, int fd, __off_t offs - __set_errno(EINVAL); - return MAP_FAILED; - } -- return __syscall_mmap2(addr, len, prot, flags, fd, offset >> MMAP2_PAGE_SHIFT); -+ return __syscall_mmap2(addr, len, prot, flags, -+ fd, ((__u_long) offset >> MMAP2_PAGE_SHIFT)); - } - - libc_hidden_def(mmap) --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0033-rpmatch-backport-function.patch b/package/uclibc/0.9.33.2/0033-rpmatch-backport-function.patch deleted file mode 100644 index 6a74d78f68d..00000000000 --- a/package/uclibc/0.9.33.2/0033-rpmatch-backport-function.patch +++ /dev/null @@ -1,78 +0,0 @@ -From 929b1a121c5ff0daa33b2107b4c1a68b650d93ee Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Mon, 30 Apr 2012 00:40:49 -0400 -Subject: [PATCH] rpmatch: backport function - -rpmatch will match ^[Yy] and ^[Nn] regardless of locale - -Signed-off-by: Mike Frysinger -Signed-off-by: Bernhard Reutner-Fischer ---- - include/stdlib.h | 2 +- - libc/stdlib/Makefile.in | 2 +- - libc/stdlib/rpmatch.c | 7 +++++++ - libc/stdlib/stdlib.c | 8 ++++++++ - 4 files changed, 17 insertions(+), 2 deletions(-) - create mode 100644 libc/stdlib/rpmatch.c - -diff --git a/include/stdlib.h b/include/stdlib.h -index 4aa1227..42b585c 100644 ---- a/include/stdlib.h -+++ b/include/stdlib.h -@@ -851,7 +851,7 @@ __END_NAMESPACE_STD - #endif /* __UCLIBC_HAS_WCHAR__ */ - - --#if 0 /*def __USE_SVID*/ -+#ifdef __USE_SVID - /* Determine whether the string value of RESPONSE matches the affirmation - or negative response expression as specified by the LC_MESSAGES category - in the program's current locale. Returns 1 if affirmative, 0 if -diff --git a/libc/stdlib/Makefile.in b/libc/stdlib/Makefile.in -index f219d21..e802441 100644 ---- a/libc/stdlib/Makefile.in -+++ b/libc/stdlib/Makefile.in -@@ -33,7 +33,7 @@ endif - - # multi source stdlib.c - CSRC-y += abs.c labs.c atoi.c atol.c strtol.c strtoul.c _stdlib_strto_l.c \ -- qsort.c qsort_r.c bsearch.c \ -+ qsort.c qsort_r.c bsearch.c rpmatch.c \ - llabs.c atoll.c strtoll.c strtoull.c _stdlib_strto_ll.c - # (aliases) strtoq.o strtouq.o - CSRC-$(UCLIBC_HAS_FLOATS) += atof.c -diff --git a/libc/stdlib/rpmatch.c b/libc/stdlib/rpmatch.c -new file mode 100644 -index 0000000..dce06b6 ---- /dev/null -+++ b/libc/stdlib/rpmatch.c -@@ -0,0 +1,7 @@ -+/* Copyright (C) 2012 Bernhard Reutner-Fischer -+ * -+ * Licensed under the LGPL v2.1+, see the file COPYING.LIB in this tarball. -+ */ -+ -+#define L_rpmatch -+#include "stdlib.c" -diff --git a/libc/stdlib/stdlib.c b/libc/stdlib/stdlib.c -index 9e8c347..de8f084 100644 ---- a/libc/stdlib/stdlib.c -+++ b/libc/stdlib/stdlib.c -@@ -318,6 +318,14 @@ long long atoll(const char *nptr) - - #endif - /**********************************************************************/ -+#ifdef L_rpmatch -+int rpmatch (__const char *__response) -+{ -+ return (__response[0] == 'y' || __response[0] == 'Y') ? 1 : -+ (__response[0] == 'n' || __response[0] == 'N') ? 0 : -1; -+} -+#endif -+/**********************************************************************/ - #if defined(L_strtol) || defined(L_strtol_l) - - libc_hidden_proto(__XL_NPP(strtol)) --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0034-statfs-support-f_frsize.patch b/package/uclibc/0.9.33.2/0034-statfs-support-f_frsize.patch deleted file mode 100644 index 102c5e815b6..00000000000 --- a/package/uclibc/0.9.33.2/0034-statfs-support-f_frsize.patch +++ /dev/null @@ -1,189 +0,0 @@ -From 479f8407c4822d2b872afb8bb14e5ab596714744 Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Thu, 17 Jan 2013 22:44:00 +0100 -Subject: [PATCH] statfs: support f_frsize - -closes bugzilla #5834 - -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/misc/statfs/fstatfs64.c | 3 +++ - libc/misc/statfs/internal_statvfs.c | 8 ++++++-- - libc/misc/statfs/statfs64.c | 3 +++ - test/.gitignore | 3 +++ - test/misc/Makefile.in | 6 ++++++ - test/misc/tst-statfs.c | 33 +++++++++++++++++++++++++++++++++ - test/misc/tst-statvfs.c | 28 ++++++++++++++++++++++++++++ - 7 files changed, 82 insertions(+), 2 deletions(-) - create mode 100644 test/misc/tst-statfs.c - create mode 100644 test/misc/tst-statvfs.c - -diff --git a/libc/misc/statfs/fstatfs64.c b/libc/misc/statfs/fstatfs64.c -index 27bb8d6..42df1ae 100644 ---- a/libc/misc/statfs/fstatfs64.c -+++ b/libc/misc/statfs/fstatfs64.c -@@ -43,6 +43,9 @@ int fstatfs64 (int fd, struct statfs64 *buf) - buf->f_files = buf32.f_files; - buf->f_ffree = buf32.f_ffree; - buf->f_fsid = buf32.f_fsid; -+#ifdef _STATFS_F_FRSIZE -+ buf->f_frsize = buf32.f_frsize; -+#endif - buf->f_namelen = buf32.f_namelen; - memcpy (buf->f_spare, buf32.f_spare, sizeof (buf32.f_spare)); - -diff --git a/libc/misc/statfs/internal_statvfs.c b/libc/misc/statfs/internal_statvfs.c -index 6075e9c..c1862b5 100644 ---- a/libc/misc/statfs/internal_statvfs.c -+++ b/libc/misc/statfs/internal_statvfs.c -@@ -19,8 +19,12 @@ - - /* Now fill in the fields we have information for. */ - buf->f_bsize = fsbuf.f_bsize; -- /* Linux does not support f_frsize, so set it to the full block size. */ -+#ifdef _STATFS_F_FRSIZE -+ buf->f_frsize = fsbuf.f_frsize; -+#else -+ /* No support for f_frsize so set it to the full block size. */ - buf->f_frsize = fsbuf.f_bsize; -+#endif - buf->f_blocks = fsbuf.f_blocks; - buf->f_bfree = fsbuf.f_bfree; - buf->f_bavail = fsbuf.f_bavail; -@@ -39,7 +43,7 @@ - buf->__f_unused = 0; - #endif - buf->f_namemax = fsbuf.f_namelen; -- memset (buf->__f_spare, '\0', 6 * sizeof (int)); -+ memset (buf->__f_spare, '\0', sizeof(buf->__f_spare)); - - /* What remains to do is to fill the fields f_favail and f_flag. */ - -diff --git a/libc/misc/statfs/statfs64.c b/libc/misc/statfs/statfs64.c -index 0cc8595..35329bd 100644 ---- a/libc/misc/statfs/statfs64.c -+++ b/libc/misc/statfs/statfs64.c -@@ -42,6 +42,9 @@ int statfs64 (const char *file, struct statfs64 *buf) - buf->f_ffree = buf32.f_ffree; - buf->f_fsid = buf32.f_fsid; - buf->f_namelen = buf32.f_namelen; -+#ifdef _STATFS_F_FRSIZE -+ buf->f_frsize = buf32.f_frsize; -+#endif - memcpy (buf->f_spare, buf32.f_spare, sizeof (buf32.f_spare)); - - return 0; -diff --git a/test/.gitignore b/test/.gitignore -index c892816..7234c48 100644 ---- a/test/.gitignore -+++ b/test/.gitignore -@@ -148,6 +148,8 @@ misc/sem - misc/stdarg - misc/tst-scandir - misc/tst-seekdir -+misc/tst-statfs -+misc/tst-statvfs - misc/tst-utmp - mmap/mmap - mmap/mmap2 -@@ -254,6 +256,7 @@ stdio/64bit - stdio/fclose-loop - stdlib/ptytest - stdlib/qsort -+stdlib/testarc4random - stdlib/testatexit - stdlib/test-canon - stdlib/test-canon2 -diff --git a/test/misc/Makefile.in b/test/misc/Makefile.in -index 2263211..9b74d22 100644 ---- a/test/misc/Makefile.in -+++ b/test/misc/Makefile.in -@@ -9,6 +9,12 @@ CFLAGS_dirent64 := -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS - - DODIFF_dirent := 1 - DODIFF_dirent64 := 1 -+DODIFF_tst-statfs := 1 -+DODIFF_tst-statvfs := 1 - - OPTS_bug-glob1 := $(PWD) - OPTS_tst-fnmatch := < tst-fnmatch.input -+ -+MNTENTS = $(shell mount | while read dev on mp rest; do echo $$mp; done) -+OPTS_tst-statfs := $(MNTENTS) -+OPTS_tst-statvfs := $(MNTENTS) -diff --git a/test/misc/tst-statfs.c b/test/misc/tst-statfs.c -new file mode 100644 -index 0000000..44ab3aa ---- /dev/null -+++ b/test/misc/tst-statfs.c -@@ -0,0 +1,33 @@ -+#define _FILE_OFFSET_BITS 64 -+ -+#include -+#include -+#include -+#include -+#include -+ -+int -+main(int argc, char* argv[]) -+{ -+ struct statfs s; -+ int ret = 0, i; -+ -+ for (i = 1; i < argc; i++) { -+ if (statfs(argv[i], &s) != 0) { -+ fprintf(stderr, "%s: %s: statfs failed. %s\n", -+ *argv, argv[i], strerror(errno)); -+ exit(EXIT_FAILURE); -+ } -+ ++ret; -+ printf("statfs %s:\n\tblocks=%lld\n\tblkfree=%lld\n\tbsize=%d\n", -+ argv[i], s.f_blocks, s.f_bfree, s.f_bsize); -+#ifdef _STATFS_F_FRSIZE -+ printf("\tfrsize=%lld\n", s.f_frsize); -+#elif defined __mips__ -+ printf("\tfrsize=mips, unsupported?\n"); -+#else -+# error no _STATFS_F_FRSIZE -+#endif -+ } -+ exit(ret ? EXIT_SUCCESS : EXIT_FAILURE); -+} -diff --git a/test/misc/tst-statvfs.c b/test/misc/tst-statvfs.c -new file mode 100644 -index 0000000..c1e8fde ---- /dev/null -+++ b/test/misc/tst-statvfs.c -@@ -0,0 +1,28 @@ -+#define _FILE_OFFSET_BITS 64 -+ -+#include -+#include -+#include -+#include -+#include -+ -+int -+main(int argc, char* argv[]) -+{ -+ struct statvfs s; -+ int i; -+ -+ for (i = 1; i < argc; i++) { -+ if (statvfs(argv[i], &s) != 0) { -+ fprintf(stderr, "%s: %s: statvfs failed. %s\n", -+ *argv, argv[i], strerror(errno)); -+ exit(EXIT_FAILURE); -+ } -+ printf("statvfs %s:\n\tblocks=%lld\n\tblkfree=%lld\n\tbsize=%d\n", -+ argv[i], s.f_blocks, s.f_bfree, s.f_bsize); -+#if 1 // def _STATFS_F_FRSIZE -+ printf("\tfrsize=%lld\n", s.f_frsize); -+#endif -+ } -+ exit(EXIT_SUCCESS); -+} --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0035-socket.h-pull-socket_type.h-from-eglibc.patch b/package/uclibc/0.9.33.2/0035-socket.h-pull-socket_type.h-from-eglibc.patch deleted file mode 100644 index 1bea7fb259c..00000000000 --- a/package/uclibc/0.9.33.2/0035-socket.h-pull-socket_type.h-from-eglibc.patch +++ /dev/null @@ -1,1374 +0,0 @@ -From 8eccce991d08960d135b97066621c8d3248a79b7 Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Thu, 17 Jan 2013 19:29:22 +0100 -Subject: [PATCH] socket.h: pull socket_type.h from eglibc - -Signed-off-by: Bernhard Reutner-Fischer ---- - Makefile.in | 2 +- - libc/inet/opensock.c | 9 +- - libc/sysdeps/linux/alpha/bits/socket_type.h | 54 ++++ - libc/sysdeps/linux/common/bits/kernel-features.h | 10 +- - libc/sysdeps/linux/common/bits/socket.h | 104 +++--- - libc/sysdeps/linux/common/bits/socket_type.h | 54 ++++ - libc/sysdeps/linux/common/cmsg_nxthdr.c | 1 + - libc/sysdeps/linux/hppa/bits/socket_type.h | 54 ++++ - libc/sysdeps/linux/mips/bits/socket.h | 369 --------------------- - libc/sysdeps/linux/mips/bits/socket_type.h | 55 ++++ - libc/sysdeps/linux/sparc/bits/socket.h | 376 ---------------------- - libc/sysdeps/linux/sparc/bits/socket_type.h | 54 ++++ - 12 files changed, 325 insertions(+), 817 deletions(-) - create mode 100644 libc/sysdeps/linux/alpha/bits/socket_type.h - create mode 100644 libc/sysdeps/linux/common/bits/socket_type.h - create mode 100644 libc/sysdeps/linux/hppa/bits/socket_type.h - delete mode 100644 libc/sysdeps/linux/mips/bits/socket.h - create mode 100644 libc/sysdeps/linux/mips/bits/socket_type.h - delete mode 100644 libc/sysdeps/linux/sparc/bits/socket.h - create mode 100644 libc/sysdeps/linux/sparc/bits/socket_type.h - -diff --git a/Makefile.in b/Makefile.in -index 87b8e4b..69abfaf 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -255,7 +255,7 @@ HEADERS_RM-$(UCLIBC_HAS_REALTIME) += mqueue.h bits/mqueue.h sched.h \ - HEADERS_RM-$(UCLIBC_HAS_REGEX) += regex.h regexp.h - HEADERS_RM-$(UCLIBC_HAS_RPC) += rpc - HEADERS_RM-$(UCLIBC_HAS_SHADOW) += shadow.h --HEADERS_RM-$(UCLIBC_HAS_SOCKET) += sys/socket.h bits/socket.h sys/socketvar.h -+HEADERS_RM-$(UCLIBC_HAS_SOCKET) += sys/socket.h bits/socket.h sys/socketvar.h bits/socket_type.h - HEADERS_RM-$(UCLIBC_HAS_SYSLOG) += syslog.h sys/syslog.h bits/syslog*.h - HEADERS_RM-$(UCLIBC_HAS_THREADS) += *thread*.h semaphore.h \ - bits/*thread*.h \ -diff --git a/libc/inet/opensock.c b/libc/inet/opensock.c -index 86f8c59..da5858f 100644 ---- a/libc/inet/opensock.c -+++ b/libc/inet/opensock.c -@@ -16,14 +16,11 @@ - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - --#include --#include --#include --#include --#include --#include -+ - #include - #include -+#include -+#include - - /* Return a socket of any type. The socket can be used in subsequent - ioctl calls to talk to the kernel. */ -diff --git a/libc/sysdeps/linux/alpha/bits/socket_type.h b/libc/sysdeps/linux/alpha/bits/socket_type.h -new file mode 100644 -index 0000000..ee55d66 ---- /dev/null -+++ b/libc/sysdeps/linux/alpha/bits/socket_type.h -@@ -0,0 +1,54 @@ -+/* Define enum __socket_type for Linux/Alpha. -+ Copyright (C) 1991-2012 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#ifndef _SYS_SOCKET_H -+# error "Never include directly; use instead." -+#endif -+ -+/* Types of sockets. */ -+enum __socket_type -+{ -+ SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -+ byte streams. */ -+#define SOCK_STREAM SOCK_STREAM -+ SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -+ of fixed maximum length. */ -+#define SOCK_DGRAM SOCK_DGRAM -+ SOCK_RAW = 3, /* Raw protocol interface. */ -+#define SOCK_RAW SOCK_RAW -+ SOCK_RDM = 4, /* Reliably-delivered messages. */ -+#define SOCK_RDM SOCK_RDM -+ SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -+ datagrams of fixed maximum length. */ -+#define SOCK_SEQPACKET SOCK_SEQPACKET -+ SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */ -+#define SOCK_DCCP SOCK_DCCP -+ SOCK_PACKET = 10, /* Linux specific way of getting packets -+ at the dev level. For writing rarp and -+ other similar things on the user level. */ -+#define SOCK_PACKET SOCK_PACKET -+ -+ /* Flags to be ORed into the type parameter of socket and socketpair. */ -+ -+ SOCK_CLOEXEC = 010000000, /* Atomically set close-on-exec flag for the -+ new descriptor(s). */ -+#define SOCK_CLOEXEC SOCK_CLOEXEC -+ SOCK_NONBLOCK = 0x40000000 /* Atomically mark descriptor(s) as -+ non-blocking. */ -+#define SOCK_NONBLOCK SOCK_NONBLOCK -+}; -diff --git a/libc/sysdeps/linux/common/bits/kernel-features.h b/libc/sysdeps/linux/common/bits/kernel-features.h -index 5ea85d2..5665e24 100644 ---- a/libc/sysdeps/linux/common/bits/kernel-features.h -+++ b/libc/sysdeps/linux/common/bits/kernel-features.h -@@ -311,17 +311,19 @@ - - /* Support for various CLOEXEC and NONBLOCK flags was added for x86, - * x86-64, PPC, IA-64, and SPARC in 2.6.27. */ --#if __LINUX_KERNEL_VERSION >= 0x02061b \ -- && (defined __i386__ || defined __x86_64__ || defined __powerpc__ \ -- || defined __ia64__ || defined __sparc__ || defined __s390__) -+#if (__LINUX_KERNEL_VERSION >= 0x02061b \ -+ && (defined __i386__ || defined __x86_64__ || defined __powerpc__ \ -+ || defined __ia64__ || defined __sparc__ || defined __s390__) \ -+ ) || (__LINUX_KERNEL_VERSION >= 0x020621 && defined __alpha__) \ -+ || defined __aarch64__ || defined __tile__ - /* # define __ASSUME_SOCK_CLOEXEC 1 */ - /* # define __ASSUME_IN_NONBLOCK 1 */ - # define __ASSUME_PIPE2 1 - /* # define __ASSUME_EVENTFD2 1 */ - /* # define __ASSUME_SIGNALFD4 1 */ -+/* # define __ASSUME_DUP3 1 */ - #endif - -- - /* These features were surely available with 2.4.12. */ - #if __LINUX_KERNEL_VERSION >= 132108 && defined __mc68000__ - # define __ASSUME_MMAP2_SYSCALL 1 -diff --git a/libc/sysdeps/linux/common/bits/socket.h b/libc/sysdeps/linux/common/bits/socket.h -index 7e12733..6a89340 100644 ---- a/libc/sysdeps/linux/common/bits/socket.h -+++ b/libc/sysdeps/linux/common/bits/socket.h -@@ -1,5 +1,6 @@ - /* System-specific socket constants and types. Linux version. -- Copyright (C) 1991,1992,1994-2001,2004,2006 Free Software Foundation, Inc. -+ Copyright (C) 1991,1992,1994-2001,2004,2006-2012 -+ Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -20,12 +21,11 @@ - #ifndef __BITS_SOCKET_H - #define __BITS_SOCKET_H - --#if !defined _SYS_SOCKET_H && !defined _NETINET_IN_H -+#ifndef _SYS_SOCKET_H - # error "Never include directly; use instead." - #endif - - #define __need_size_t --#define __need_NULL - #include - - #include -@@ -37,37 +37,8 @@ typedef __socklen_t socklen_t; - # define __socklen_t_defined - #endif - --/* Types of sockets. */ --enum __socket_type --{ -- SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -- byte streams. */ --#define SOCK_STREAM SOCK_STREAM -- SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -- of fixed maximum length. */ --#define SOCK_DGRAM SOCK_DGRAM -- SOCK_RAW = 3, /* Raw protocol interface. */ --#define SOCK_RAW SOCK_RAW -- SOCK_RDM = 4, /* Reliably-delivered messages. */ --#define SOCK_RDM SOCK_RDM -- SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -- datagrams of fixed maximum length. */ --#define SOCK_SEQPACKET SOCK_SEQPACKET -- SOCK_PACKET = 10, /* Linux specific way of getting packets -- at the dev level. For writing rarp and -- other similar things on the user level. */ --#define SOCK_PACKET SOCK_PACKET -- -- /* Flags to be ORed into the type parameter of socket and socketpair and -- used for the flags parameter of paccept. */ -- -- SOCK_CLOEXEC = 02000000, /* Atomically set close-on-exec flag for the -- new descriptor(s). */ --#define SOCK_CLOEXEC SOCK_CLOEXEC -- SOCK_NONBLOCK = 04000 /* Atomically mark descriptor(s) as -- non-blocking. */ --#define SOCK_NONBLOCK SOCK_NONBLOCK --}; -+/* Get the architecture-dependent definition of enum __socket_type. */ -+#include - - /* Protocol families. */ - #define PF_UNSPEC 0 /* Unspecified. */ -@@ -94,22 +65,24 @@ enum __socket_type - #define PF_ASH 18 /* Ash. */ - #define PF_ECONET 19 /* Acorn Econet. */ - #define PF_ATMSVC 20 /* ATM SVCs. */ -+#define PF_RDS 21 /* RDS sockets. */ - #define PF_SNA 22 /* Linux SNA Project */ - #define PF_IRDA 23 /* IRDA sockets. */ - #define PF_PPPOX 24 /* PPPoX sockets. */ - #define PF_WANPIPE 25 /* Wanpipe API sockets. */ --#define PF_LLC 26 /* Linux LLC. */ --#define PF_CAN 29 /* Controller Area Network. */ --#define PF_TIPC 30 /* TIPC sockets. */ -+#define PF_LLC 26 /* Linux LLC. */ -+#define PF_CAN 29 /* Controller Area Network. */ -+#define PF_TIPC 30 /* TIPC sockets. */ - #define PF_BLUETOOTH 31 /* Bluetooth sockets. */ - #define PF_IUCV 32 /* IUCV sockets. */ --#define PF_RXRPC 33 /* RxRPC sockets. */ --#define PF_ISDN 34 /* mISDN sockets. */ --#define PF_PHONET 35 /* Phonet sockets. */ --#define PF_IEEE802154 36 /* IEEE 802.15.4 sockets. */ --#define PF_CAIF 37 /* CAIF sockets. */ --#define PF_ALG 38 /* Algorithm sockets. */ --#define PF_MAX 39 /* For now.. */ -+#define PF_RXRPC 33 /* RxRPC sockets. */ -+#define PF_ISDN 34 /* mISDN sockets. */ -+#define PF_PHONET 35 /* Phonet sockets. */ -+#define PF_IEEE802154 36 /* IEEE 802.15.4 sockets. */ -+#define PF_CAIF 37 /* CAIF sockets. */ -+#define PF_ALG 38 /* Algorithm sockets. */ -+#define PF_NFC 39 /* NFC sockets. */ -+#define PF_MAX 40 /* For now.. */ - - /* Address families. */ - #define AF_UNSPEC PF_UNSPEC -@@ -136,21 +109,23 @@ enum __socket_type - #define AF_ASH PF_ASH - #define AF_ECONET PF_ECONET - #define AF_ATMSVC PF_ATMSVC -+#define AF_RDS PF_RDS - #define AF_SNA PF_SNA - #define AF_IRDA PF_IRDA - #define AF_PPPOX PF_PPPOX - #define AF_WANPIPE PF_WANPIPE --#define AF_LLC PF_LLC --#define AF_CAN PF_CAN --#define AF_TIPC PF_TIPC -+#define AF_LLC PF_LLC -+#define AF_CAN PF_CAN -+#define AF_TIPC PF_TIPC - #define AF_BLUETOOTH PF_BLUETOOTH --#define AF_IUCV PF_IUCV --#define AF_RXRPC PF_RXRPC --#define AF_ISDN PF_ISDN --#define AF_PHONET PF_PHONET --#define AF_IEEE802154 PF_IEEE802154 --#define AF_CAIF PF_CAIF --#define AF_ALG PF_ALG -+#define AF_IUCV PF_IUCV -+#define AF_RXRPC PF_RXRPC -+#define AF_ISDN PF_ISDN -+#define AF_PHONET PF_PHONET -+#define AF_IEEE802154 PF_IEEE802154 -+#define AF_CAIF PF_CAIF -+#define AF_ALG PF_ALG -+#define AF_NFC PF_NFC - #define AF_MAX PF_MAX - - /* Socket level values. Others are defined in the appropriate headers. -@@ -235,8 +210,14 @@ enum - #define MSG_ERRQUEUE MSG_ERRQUEUE - MSG_NOSIGNAL = 0x4000, /* Do not generate SIGPIPE. */ - #define MSG_NOSIGNAL MSG_NOSIGNAL -- MSG_MORE = 0x8000 /* Sender will send more. */ -+ MSG_MORE = 0x8000, /* Sender will send more. */ - #define MSG_MORE MSG_MORE -+ MSG_WAITFORONE = 0x10000, /* Wait for at least one packet to return.*/ -+#define MSG_WAITFORONE MSG_WAITFORONE -+ MSG_CMSG_CLOEXEC = 0x40000000 /* Set close_on_exit for file -+ descriptor received through -+ SCM_RIGHTS. */ -+#define MSG_CMSG_CLOEXEC MSG_CMSG_CLOEXEC - }; - - -@@ -290,7 +271,7 @@ struct cmsghdr - #define CMSG_NXTHDR(mhdr, cmsg) __cmsg_nxthdr (mhdr, cmsg) - #define CMSG_FIRSTHDR(mhdr) \ - ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) \ -- ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) NULL) -+ ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) 0) - #define CMSG_ALIGN(len) (((len) + sizeof (size_t) - 1) \ - & (size_t) ~(sizeof (size_t) - 1)) - #define CMSG_SPACE(len) (CMSG_ALIGN (len) \ -@@ -302,14 +283,14 @@ extern struct cmsghdr *__cmsg_nxthdr (struct msghdr *__mhdr, - libc_hidden_proto(__cmsg_nxthdr) - #ifdef __USE_EXTERN_INLINES - # ifndef _EXTERN_INLINE --# define _EXTERN_INLINE extern __inline -+# define _EXTERN_INLINE __extern_inline - # endif - _EXTERN_INLINE struct cmsghdr * - __NTH (__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg)) - { - if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr)) - /* The kernel header does this so there may be a reason. */ -- return 0; -+ return (struct cmsghdr *) 0; - - __cmsg = (struct cmsghdr *) ((unsigned char *) __cmsg - + CMSG_ALIGN (__cmsg->cmsg_len)); -@@ -318,7 +299,7 @@ __NTH (__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg)) - || ((unsigned char *) __cmsg + CMSG_ALIGN (__cmsg->cmsg_len) - > ((unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen))) - /* No more entries. */ -- return 0; -+ return (struct cmsghdr *) 0; - return __cmsg; - } - #endif /* Use `extern inline'. */ -@@ -329,20 +310,21 @@ enum - { - SCM_RIGHTS = 0x01 /* Transfer file descriptors. */ - #define SCM_RIGHTS SCM_RIGHTS --#ifdef __USE_BSD -+#ifdef __USE_GNU - , SCM_CREDENTIALS = 0x02 /* Credentials passing. */ - # define SCM_CREDENTIALS SCM_CREDENTIALS - #endif - }; - -+#ifdef __USE_GNU - /* User visible structure for SCM_CREDENTIALS message */ -- - struct ucred - { - pid_t pid; /* PID of sending process. */ - uid_t uid; /* UID of sending process. */ - gid_t gid; /* GID of sending process. */ - }; -+#endif - - /* Get socket manipulation related informations from kernel headers. */ - #ifndef __GLIBC__ -diff --git a/libc/sysdeps/linux/common/bits/socket_type.h b/libc/sysdeps/linux/common/bits/socket_type.h -new file mode 100644 -index 0000000..65436b0 ---- /dev/null -+++ b/libc/sysdeps/linux/common/bits/socket_type.h -@@ -0,0 +1,54 @@ -+/* Define enum __socket_type for generic Linux. -+ Copyright (C) 1991-2012 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _SYS_SOCKET_H -+# error "Never include directly; use instead." -+#endif -+ -+/* Types of sockets. */ -+enum __socket_type -+{ -+ SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -+ byte streams. */ -+#define SOCK_STREAM SOCK_STREAM -+ SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -+ of fixed maximum length. */ -+#define SOCK_DGRAM SOCK_DGRAM -+ SOCK_RAW = 3, /* Raw protocol interface. */ -+#define SOCK_RAW SOCK_RAW -+ SOCK_RDM = 4, /* Reliably-delivered messages. */ -+#define SOCK_RDM SOCK_RDM -+ SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -+ datagrams of fixed maximum length. */ -+#define SOCK_SEQPACKET SOCK_SEQPACKET -+ SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */ -+#define SOCK_DCCP SOCK_DCCP -+ SOCK_PACKET = 10, /* Linux specific way of getting packets -+ at the dev level. For writing rarp and -+ other similar things on the user level. */ -+#define SOCK_PACKET SOCK_PACKET -+ -+ /* Flags to be ORed into the type parameter of socket and socketpair. */ -+ -+ SOCK_CLOEXEC = 02000000, /* Atomically set close-on-exec flag for the -+ new descriptor(s). */ -+#define SOCK_CLOEXEC SOCK_CLOEXEC -+ SOCK_NONBLOCK = 00004000 /* Atomically mark descriptor(s) as -+ non-blocking. */ -+#define SOCK_NONBLOCK SOCK_NONBLOCK -+}; -diff --git a/libc/sysdeps/linux/common/cmsg_nxthdr.c b/libc/sysdeps/linux/common/cmsg_nxthdr.c -index 0360b47..9c21190 100644 ---- a/libc/sysdeps/linux/common/cmsg_nxthdr.c -+++ b/libc/sysdeps/linux/common/cmsg_nxthdr.c -@@ -19,6 +19,7 @@ - - #define __FORCE_GLIBC - #include -+#include - /* Prevent math.h from defining a colliding inline */ - #undef __USE_EXTERN_INLINES - #include -diff --git a/libc/sysdeps/linux/hppa/bits/socket_type.h b/libc/sysdeps/linux/hppa/bits/socket_type.h -new file mode 100644 -index 0000000..c6df6c3 ---- /dev/null -+++ b/libc/sysdeps/linux/hppa/bits/socket_type.h -@@ -0,0 +1,54 @@ -+/* Define enum __socket_type for Linux/HP-PARISC. -+ Copyright (C) 2012 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _SYS_SOCKET_H -+# error "Never include directly; use instead." -+#endif -+ -+/* Types of sockets. */ -+enum __socket_type -+{ -+ SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -+ byte streams. */ -+#define SOCK_STREAM SOCK_STREAM -+ SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -+ of fixed maximum length. */ -+#define SOCK_DGRAM SOCK_DGRAM -+ SOCK_RAW = 3, /* Raw protocol interface. */ -+#define SOCK_RAW SOCK_RAW -+ SOCK_RDM = 4, /* Reliably-delivered messages. */ -+#define SOCK_RDM SOCK_RDM -+ SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -+ datagrams of fixed maximum length. */ -+#define SOCK_SEQPACKET SOCK_SEQPACKET -+ SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */ -+#define SOCK_DCCP SOCK_DCCP -+ SOCK_PACKET = 10, /* Linux specific way of getting packets -+ at the dev level. For writing rarp and -+ other similar things on the user level. */ -+#define SOCK_PACKET SOCK_PACKET -+ -+ /* Flags to be ORed into the type parameter of socket and socketpair. */ -+ -+ SOCK_CLOEXEC = 010000000, /* Atomically set close-on-exec flag for the -+ new descriptor(s). */ -+#define SOCK_CLOEXEC SOCK_CLOEXEC -+ SOCK_NONBLOCK = 0x40000000 /* Atomically mark descriptor(s) as -+ non-blocking. */ -+#define SOCK_NONBLOCK SOCK_NONBLOCK -+}; -diff --git a/libc/sysdeps/linux/mips/bits/socket.h b/libc/sysdeps/linux/mips/bits/socket.h -deleted file mode 100644 -index 27ceafa..0000000 ---- a/libc/sysdeps/linux/mips/bits/socket.h -+++ /dev/null -@@ -1,369 +0,0 @@ --/* System-specific socket constants and types. Linux/MIPS version. -- Copyright (C) 1991, 92, 1994-1999, 2000, 2001, 2004, 2005, 2006 -- Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#ifndef __BITS_SOCKET_H --#define __BITS_SOCKET_H -- --#if !defined _SYS_SOCKET_H && !defined _NETINET_IN_H --# error "Never include directly; use instead." --#endif -- --#define __need_size_t --#define __need_NULL --#include -- --#include --#include -- --/* Type for length arguments in socket calls. */ --#ifndef __socklen_t_defined --typedef __socklen_t socklen_t; --# define __socklen_t_defined --#endif -- --/* Types of sockets. */ --enum __socket_type --{ -- SOCK_DGRAM = 1, /* Connectionless, unreliable datagrams -- of fixed maximum length. */ --#define SOCK_DGRAM SOCK_DGRAM -- SOCK_STREAM = 2, /* Sequenced, reliable, connection-based -- byte streams. */ --#define SOCK_STREAM SOCK_STREAM -- SOCK_RAW = 3, /* Raw protocol interface. */ --#define SOCK_RAW SOCK_RAW -- SOCK_RDM = 4, /* Reliably-delivered messages. */ --#define SOCK_RDM SOCK_RDM -- SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -- datagrams of fixed maximum length. */ --#define SOCK_SEQPACKET SOCK_SEQPACKET -- SOCK_DCCP = 6, --#define SOCK_DCCP SOCK_DCCP /* Datagram Congestion Control Protocol. */ -- SOCK_PACKET = 10, /* Linux specific way of getting packets -- at the dev level. For writing rarp and -- other similar things on the user level. */ --#define SOCK_PACKET SOCK_PACKET -- /* Flags to be ORed into the type parameter of socket and socketpair and -- used for the flags parameter of paccept. */ -- -- SOCK_CLOEXEC = 02000000, /* Atomically set close-on-exec flag for the -- new descriptor(s). */ --#define SOCK_CLOEXEC SOCK_CLOEXEC -- SOCK_NONBLOCK = 0200 /* Atomically mark descriptor(s) as -- non-blocking. */ --#define SOCK_NONBLOCK SOCK_NONBLOCK --}; -- --/* Protocol families. */ --#define PF_UNSPEC 0 /* Unspecified. */ --#define PF_LOCAL 1 /* Local to host (pipes and file-domain). */ --#define PF_UNIX PF_LOCAL /* Old BSD name for PF_LOCAL. */ --#define PF_FILE PF_LOCAL /* Another non-standard name for PF_LOCAL. */ --#define PF_INET 2 /* IP protocol family. */ --#define PF_AX25 3 /* Amateur Radio AX.25. */ --#define PF_IPX 4 /* Novell Internet Protocol. */ --#define PF_APPLETALK 5 /* Appletalk DDP. */ --#define PF_NETROM 6 /* Amateur radio NetROM. */ --#define PF_BRIDGE 7 /* Multiprotocol bridge. */ --#define PF_ATMPVC 8 /* ATM PVCs. */ --#define PF_X25 9 /* Reserved for X.25 project. */ --#define PF_INET6 10 /* IP version 6. */ --#define PF_ROSE 11 /* Amateur Radio X.25 PLP. */ --#define PF_DECnet 12 /* Reserved for DECnet project. */ --#define PF_NETBEUI 13 /* Reserved for 802.2LLC project. */ --#define PF_SECURITY 14 /* Security callback pseudo AF. */ --#define PF_KEY 15 /* PF_KEY key management API. */ --#define PF_NETLINK 16 --#define PF_ROUTE PF_NETLINK /* Alias to emulate 4.4BSD. */ --#define PF_PACKET 17 /* Packet family. */ --#define PF_ASH 18 /* Ash. */ --#define PF_ECONET 19 /* Acorn Econet. */ --#define PF_ATMSVC 20 /* ATM SVCs. */ --#define PF_SNA 22 /* Linux SNA Project */ --#define PF_IRDA 23 /* IRDA sockets. */ --#define PF_PPPOX 24 /* PPPoX sockets. */ --#define PF_WANPIPE 25 /* Wanpipe API sockets. */ --#define PF_LLC 26 /* Linux LLC. */ --#define PF_CAN 29 /* Controller Area Network. */ --#define PF_TIPC 30 /* TIPC sockets. */ --#define PF_BLUETOOTH 31 /* Bluetooth sockets. */ --#define PF_IUCV 32 /* IUCV sockets. */ --#define PF_RXRPC 33 /* RxRPC sockets. */ --#define PF_ISDN 34 /* mISDN sockets. */ --#define PF_PHONET 35 /* Phonet sockets. */ --#define PF_IEEE802154 36 /* IEEE 802.15.4 sockets. */ --#define PF_CAIF 37 /* CAIF sockets. */ --#define PF_ALG 38 /* Algorithm sockets. */ --#define PF_MAX 39 /* For now.. */ -- --/* Address families. */ --#define AF_UNSPEC PF_UNSPEC --#define AF_LOCAL PF_LOCAL --#define AF_UNIX PF_UNIX --#define AF_FILE PF_FILE --#define AF_INET PF_INET --#define AF_AX25 PF_AX25 --#define AF_IPX PF_IPX --#define AF_APPLETALK PF_APPLETALK --#define AF_NETROM PF_NETROM --#define AF_BRIDGE PF_BRIDGE --#define AF_ATMPVC PF_ATMPVC --#define AF_X25 PF_X25 --#define AF_INET6 PF_INET6 --#define AF_ROSE PF_ROSE --#define AF_DECnet PF_DECnet --#define AF_NETBEUI PF_NETBEUI --#define AF_SECURITY PF_SECURITY --#define AF_KEY PF_KEY --#define AF_NETLINK PF_NETLINK --#define AF_ROUTE PF_ROUTE --#define AF_PACKET PF_PACKET --#define AF_ASH PF_ASH --#define AF_ECONET PF_ECONET --#define AF_ATMSVC PF_ATMSVC --#define AF_SNA PF_SNA --#define AF_IRDA PF_IRDA --#define AF_PPPOX PF_PPPOX --#define AF_WANPIPE PF_WANPIPE --#define AF_LLC PF_LLC --#define AF_CAN PF_CAN --#define AF_TIPC PF_TIPC --#define AF_BLUETOOTH PF_BLUETOOTH --#define AF_IUCV PF_IUCV --#define AF_RXRPC PF_RXRPC --#define AF_ISDN PF_ISDN --#define AF_PHONET PF_PHONET --#define AF_IEEE802154 PF_IEEE802154 --#define AF_CAIF PF_CAIF --#define AF_ALG PF_ALG --#define AF_MAX PF_MAX -- --/* Socket level values. Others are defined in the appropriate headers. -- -- XXX These definitions also should go into the appropriate headers as -- far as they are available. */ --#define SOL_RAW 255 --#define SOL_DECNET 261 --#define SOL_X25 262 --#define SOL_PACKET 263 --#define SOL_ATM 264 /* ATM layer (cell level). */ --#define SOL_AAL 265 /* ATM Adaption Layer (packet level). */ --#define SOL_IRDA 266 -- --/* Maximum queue length specifiable by listen. */ --#define SOMAXCONN 128 -- --/* Get the definition of the macro to define the common sockaddr members. */ --#include -- --/* Structure describing a generic socket address. */ --struct sockaddr -- { -- __SOCKADDR_COMMON (sa_); /* Common data: address family and length. */ -- char sa_data[14]; /* Address data. */ -- }; -- -- --/* Structure large enough to hold any socket address (with the historical -- exception of AF_UNIX). We reserve 128 bytes. */ --#define __ss_aligntype unsigned long int --#define _SS_SIZE 128 --#define _SS_PADSIZE (_SS_SIZE - (2 * sizeof (__ss_aligntype))) -- --struct sockaddr_storage -- { -- __SOCKADDR_COMMON (ss_); /* Address family, etc. */ -- __ss_aligntype __ss_align; /* Force desired alignment. */ -- char __ss_padding[_SS_PADSIZE]; -- }; -- -- --/* Bits in the FLAGS argument to `send', `recv', et al. */ --enum -- { -- MSG_OOB = 0x01, /* Process out-of-band data. */ --#define MSG_OOB MSG_OOB -- MSG_PEEK = 0x02, /* Peek at incoming messages. */ --#define MSG_PEEK MSG_PEEK -- MSG_DONTROUTE = 0x04, /* Don't use local routing. */ --#define MSG_DONTROUTE MSG_DONTROUTE --#ifdef __USE_GNU -- /* DECnet uses a different name. */ -- MSG_TRYHARD = MSG_DONTROUTE, --# define MSG_TRYHARD MSG_DONTROUTE --#endif -- MSG_CTRUNC = 0x08, /* Control data lost before delivery. */ --#define MSG_CTRUNC MSG_CTRUNC -- MSG_PROXY = 0x10, /* Supply or ask second address. */ --#define MSG_PROXY MSG_PROXY -- MSG_TRUNC = 0x20, --#define MSG_TRUNC MSG_TRUNC -- MSG_DONTWAIT = 0x40, /* Nonblocking IO. */ --#define MSG_DONTWAIT MSG_DONTWAIT -- MSG_EOR = 0x80, /* End of record. */ --#define MSG_EOR MSG_EOR -- MSG_WAITALL = 0x100, /* Wait for a full request. */ --#define MSG_WAITALL MSG_WAITALL -- MSG_FIN = 0x200, --#define MSG_FIN MSG_FIN -- MSG_SYN = 0x400, --#define MSG_SYN MSG_SYN -- MSG_CONFIRM = 0x800, /* Confirm path validity. */ --#define MSG_CONFIRM MSG_CONFIRM -- MSG_RST = 0x1000, --#define MSG_RST MSG_RST -- MSG_ERRQUEUE = 0x2000, /* Fetch message from error queue. */ --#define MSG_ERRQUEUE MSG_ERRQUEUE -- MSG_NOSIGNAL = 0x4000, /* Do not generate SIGPIPE. */ --#define MSG_NOSIGNAL MSG_NOSIGNAL -- MSG_MORE = 0x8000, /* Sender will send more. */ --#define MSG_MORE MSG_MORE -- MSG_WAITFORONE = 0x10000, /* Wait for at least one packet to return.*/ --#define MSG_WAITFORONE MSG_WAITFORONE -- -- MSG_CMSG_CLOEXEC = 0x40000000 /* Set close_on_exit for file -- descriptor received through -- SCM_RIGHTS. */ --#define MSG_CMSG_CLOEXEC MSG_CMSG_CLOEXEC -- }; -- -- --/* Structure describing messages sent by -- `sendmsg' and received by `recvmsg'. */ --/* Note: do not change these members to match glibc; these match the -- SuSv3 spec already (e.g. msg_iovlen/msg_controllen). -- http://www.opengroup.org/onlinepubs/009695399/basedefs/sys/socket.h.html */ --/* Note: linux kernel uses __kernel_size_t (which is 8bytes on 64bit -- platforms, and 4bytes on 32bit platforms) for msg_iovlen/msg_controllen */ --struct msghdr -- { -- void *msg_name; /* Address to send to/receive from. */ -- socklen_t msg_namelen; /* Length of address data. */ -- -- struct iovec *msg_iov; /* Vector of data to send/receive into. */ --#if __WORDSIZE == 32 -- int msg_iovlen; /* Number of elements in the vector. */ --#else -- size_t msg_iovlen; /* Number of elements in the vector. */ --#endif -- -- void *msg_control; /* Ancillary data (eg BSD filedesc passing). */ --#if __WORDSIZE == 32 -- socklen_t msg_controllen; /* Ancillary data buffer length. */ --#else -- size_t msg_controllen; /* Ancillary data buffer length. */ --#endif -- -- int msg_flags; /* Flags on received message. */ -- }; -- --/* Structure used for storage of ancillary data object information. */ --struct cmsghdr -- { -- size_t cmsg_len; /* Length of data in cmsg_data plus length -- of cmsghdr structure. */ -- int cmsg_level; /* Originating protocol. */ -- int cmsg_type; /* Protocol specific type. */ --#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L -- __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data. */ --#endif -- }; -- --/* Ancillary data object manipulation macros. */ --#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L --# define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data) --#else --# define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1)) --#endif --#define CMSG_NXTHDR(mhdr, cmsg) __cmsg_nxthdr (mhdr, cmsg) --#define CMSG_FIRSTHDR(mhdr) \ -- ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) \ -- ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) NULL) --#define CMSG_ALIGN(len) (((len) + sizeof (size_t) - 1) \ -- & (size_t) ~(sizeof (size_t) - 1)) --#define CMSG_SPACE(len) (CMSG_ALIGN (len) \ -- + CMSG_ALIGN (sizeof (struct cmsghdr))) --#define CMSG_LEN(len) (CMSG_ALIGN (sizeof (struct cmsghdr)) + (len)) -- --extern struct cmsghdr *__cmsg_nxthdr (struct msghdr *__mhdr, -- struct cmsghdr *__cmsg) __THROW; --libc_hidden_proto(__cmsg_nxthdr) --#ifdef __USE_EXTERN_INLINES --# ifndef _EXTERN_INLINE --# define _EXTERN_INLINE extern __inline --# endif --_EXTERN_INLINE struct cmsghdr * --__NTH (__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg)) --{ -- if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr)) -- /* The kernel header does this so there may be a reason. */ -- return 0; -- -- __cmsg = (struct cmsghdr *) ((unsigned char *) __cmsg -- + CMSG_ALIGN (__cmsg->cmsg_len)); -- if ((unsigned char *) (__cmsg + 1) > ((unsigned char *) __mhdr->msg_control -- + __mhdr->msg_controllen) -- || ((unsigned char *) __cmsg + CMSG_ALIGN (__cmsg->cmsg_len) -- > ((unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen))) -- /* No more entries. */ -- return 0; -- return __cmsg; --} --#endif /* Use `extern inline'. */ -- --/* Socket level message types. This must match the definitions in -- . */ --enum -- { -- SCM_RIGHTS = 0x01 /* Transfer file descriptors. */ --#define SCM_RIGHTS SCM_RIGHTS --#ifdef __USE_BSD -- , SCM_CREDENTIALS = 0x02 /* Credentials passing. */ --# define SCM_CREDENTIALS SCM_CREDENTIALS --#endif -- }; -- --/* User visible structure for SCM_CREDENTIALS message */ -- --struct ucred --{ -- pid_t pid; /* PID of sending process. */ -- uid_t uid; /* UID of sending process. */ -- gid_t gid; /* GID of sending process. */ --}; -- --/* Get socket manipulation related informations from kernel headers. */ --#ifndef __GLIBC__ --#define __GLIBC__ 2 --#include --#undef __GLIBC__ --#else --#include --#endif -- -- --/* Structure used to manipulate the SO_LINGER option. */ --struct linger -- { -- int l_onoff; /* Nonzero to linger on close. */ -- int l_linger; /* Time to linger. */ -- }; -- --#endif /* bits/socket.h */ -diff --git a/libc/sysdeps/linux/mips/bits/socket_type.h b/libc/sysdeps/linux/mips/bits/socket_type.h -new file mode 100644 -index 0000000..20d2732 ---- /dev/null -+++ b/libc/sysdeps/linux/mips/bits/socket_type.h -@@ -0,0 +1,55 @@ -+/* System-specific socket constants and types. Linux/MIPS version. -+ Copyright (C) 1991, 92, 1994-1999, 2000, 2001, 2004, 2005, 2006 -+ Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _SYS_SOCKET_H -+# error "Never include directly; use instead." -+#endif -+ -+/* Types of sockets. */ -+enum __socket_type -+{ -+ SOCK_DGRAM = 1, /* Connectionless, unreliable datagrams -+ of fixed maximum length. */ -+#define SOCK_DGRAM SOCK_DGRAM -+ SOCK_STREAM = 2, /* Sequenced, reliable, connection-based -+ byte streams. */ -+#define SOCK_STREAM SOCK_STREAM -+ SOCK_RAW = 3, /* Raw protocol interface. */ -+#define SOCK_RAW SOCK_RAW -+ SOCK_RDM = 4, /* Reliably-delivered messages. */ -+#define SOCK_RDM SOCK_RDM -+ SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -+ datagrams of fixed maximum length. */ -+#define SOCK_SEQPACKET SOCK_SEQPACKET -+ SOCK_DCCP = 6, -+#define SOCK_DCCP SOCK_DCCP /* Datagram Congestion Control Protocol. */ -+ SOCK_PACKET = 10, /* Linux specific way of getting packets -+ at the dev level. For writing rarp and -+ other similar things on the user level. */ -+#define SOCK_PACKET SOCK_PACKET -+ -+ /* Flags to be ORed into the type parameter of socket and socketpair. */ -+ -+ SOCK_CLOEXEC = 02000000, /* Atomically set close-on-exec flag for the -+ new descriptor(s). */ -+#define SOCK_CLOEXEC SOCK_CLOEXEC -+ SOCK_NONBLOCK = 00000200 /* Atomically mark descriptor(s) as -+ non-blocking. */ -+#define SOCK_NONBLOCK SOCK_NONBLOCK -+}; -diff --git a/libc/sysdeps/linux/sparc/bits/socket.h b/libc/sysdeps/linux/sparc/bits/socket.h -deleted file mode 100644 -index 64973e2..0000000 ---- a/libc/sysdeps/linux/sparc/bits/socket.h -+++ /dev/null -@@ -1,376 +0,0 @@ --/* System-specific socket constants and types. Linux version. -- Copyright (C) 1991,1992,1994-2001,2004,2006 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#ifndef __BITS_SOCKET_H --#define __BITS_SOCKET_H -- --#if !defined _SYS_SOCKET_H && !defined _NETINET_IN_H --# error "Never include directly; use instead." --#endif -- --#define __need_size_t --#define __need_NULL --#include -- --#include --#include -- --/* Type for length arguments in socket calls. */ --#ifndef __socklen_t_defined --typedef __socklen_t socklen_t; --# define __socklen_t_defined --#endif -- --/* Types of sockets. */ --enum __socket_type --{ -- SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -- byte streams. */ --#define SOCK_STREAM SOCK_STREAM -- SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -- of fixed maximum length. */ --#define SOCK_DGRAM SOCK_DGRAM -- SOCK_RAW = 3, /* Raw protocol interface. */ --#define SOCK_RAW SOCK_RAW -- SOCK_RDM = 4, /* Reliably-delivered messages. */ --#define SOCK_RDM SOCK_RDM -- SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -- datagrams of fixed maximum length. */ --#define SOCK_SEQPACKET SOCK_SEQPACKET -- SOCK_PACKET = 10 /* Linux specific way of getting packets -- at the dev level. For writing rarp and -- other similar things on the user level. */ --#define SOCK_PACKET SOCK_PACKET --}; -- --/* Protocol families. */ --#define PF_UNSPEC 0 /* Unspecified. */ --#define PF_LOCAL 1 /* Local to host (pipes and file-domain). */ --#define PF_UNIX PF_LOCAL /* Old BSD name for PF_LOCAL. */ --#define PF_FILE PF_LOCAL /* Another non-standard name for PF_LOCAL. */ --#define PF_INET 2 /* IP protocol family. */ --#define PF_AX25 3 /* Amateur Radio AX.25. */ --#define PF_IPX 4 /* Novell Internet Protocol. */ --#define PF_APPLETALK 5 /* Appletalk DDP. */ --#define PF_NETROM 6 /* Amateur radio NetROM. */ --#define PF_BRIDGE 7 /* Multiprotocol bridge. */ --#define PF_ATMPVC 8 /* ATM PVCs. */ --#define PF_X25 9 /* Reserved for X.25 project. */ --#define PF_INET6 10 /* IP version 6. */ --#define PF_ROSE 11 /* Amateur Radio X.25 PLP. */ --#define PF_DECnet 12 /* Reserved for DECnet project. */ --#define PF_NETBEUI 13 /* Reserved for 802.2LLC project. */ --#define PF_SECURITY 14 /* Security callback pseudo AF. */ --#define PF_KEY 15 /* PF_KEY key management API. */ --#define PF_NETLINK 16 --#define PF_ROUTE PF_NETLINK /* Alias to emulate 4.4BSD. */ --#define PF_PACKET 17 /* Packet family. */ --#define PF_ASH 18 /* Ash. */ --#define PF_ECONET 19 /* Acorn Econet. */ --#define PF_ATMSVC 20 /* ATM SVCs. */ --#define PF_SNA 22 /* Linux SNA Project */ --#define PF_IRDA 23 /* IRDA sockets. */ --#define PF_PPPOX 24 /* PPPoX sockets. */ --#define PF_WANPIPE 25 /* Wanpipe API sockets. */ --#define PF_LLC 26 /* Linux LLC. */ --#define PF_CAN 29 /* Controller Area Network. */ --#define PF_TIPC 30 /* TIPC sockets. */ --#define PF_BLUETOOTH 31 /* Bluetooth sockets. */ --#define PF_IUCV 32 /* IUCV sockets. */ --#define PF_RXRPC 33 /* RxRPC sockets. */ --#define PF_ISDN 34 /* mISDN sockets. */ --#define PF_PHONET 35 /* Phonet sockets. */ --#define PF_IEEE802154 36 /* IEEE 802.15.4 sockets. */ --#define PF_CAIF 37 /* CAIF sockets. */ --#define PF_ALG 38 /* Algorithm sockets. */ --#define PF_MAX 39 /* For now.. */ -- --/* Address families. */ --#define AF_UNSPEC PF_UNSPEC --#define AF_LOCAL PF_LOCAL --#define AF_UNIX PF_UNIX --#define AF_FILE PF_FILE --#define AF_INET PF_INET --#define AF_AX25 PF_AX25 --#define AF_IPX PF_IPX --#define AF_APPLETALK PF_APPLETALK --#define AF_NETROM PF_NETROM --#define AF_BRIDGE PF_BRIDGE --#define AF_ATMPVC PF_ATMPVC --#define AF_X25 PF_X25 --#define AF_INET6 PF_INET6 --#define AF_ROSE PF_ROSE --#define AF_DECnet PF_DECnet --#define AF_NETBEUI PF_NETBEUI --#define AF_SECURITY PF_SECURITY --#define AF_KEY PF_KEY --#define AF_NETLINK PF_NETLINK --#define AF_ROUTE PF_ROUTE --#define AF_PACKET PF_PACKET --#define AF_ASH PF_ASH --#define AF_ECONET PF_ECONET --#define AF_ATMSVC PF_ATMSVC --#define AF_SNA PF_SNA --#define AF_IRDA PF_IRDA --#define AF_PPPOX PF_PPPOX --#define AF_WANPIPE PF_WANPIPE --#define AF_LLC PF_LLC --#define AF_CAN PF_CAN --#define AF_TIPC PF_TIPC --#define AF_BLUETOOTH PF_BLUETOOTH --#define AF_IUCV PF_IUCV --#define AF_RXRPC PF_RXRPC --#define AF_ISDN PF_ISDN --#define AF_PHONET PF_PHONET --#define AF_IEEE802154 PF_IEEE802154 --#define AF_CAIF PF_CAIF --#define AF_ALG PF_ALG --#define AF_MAX PF_MAX -- --/* Socket level values. Others are defined in the appropriate headers. -- -- XXX These definitions also should go into the appropriate headers as -- far as they are available. */ --#define SOL_RAW 255 --#define SOL_DECNET 261 --#define SOL_X25 262 --#define SOL_PACKET 263 --#define SOL_ATM 264 /* ATM layer (cell level). */ --#define SOL_AAL 265 /* ATM Adaption Layer (packet level). */ --#define SOL_IRDA 266 -- --/* Maximum queue length specifiable by listen. */ --#define SOMAXCONN 128 -- --/* Get the definition of the macro to define the common sockaddr members. */ --#include -- --/* Structure describing a generic socket address. */ --struct sockaddr -- { -- __SOCKADDR_COMMON (sa_); /* Common data: address family and length. */ -- char sa_data[14]; /* Address data. */ -- }; -- -- --/* Structure large enough to hold any socket address (with the historical -- exception of AF_UNIX). We reserve 128 bytes. */ --#if ULONG_MAX > 0xffffffff --# define __ss_aligntype __uint64_t --#else --# define __ss_aligntype __uint32_t --#endif --#define _SS_SIZE 128 --#define _SS_PADSIZE (_SS_SIZE - (2 * sizeof (__ss_aligntype))) -- --struct sockaddr_storage -- { -- __SOCKADDR_COMMON (ss_); /* Address family, etc. */ -- __ss_aligntype __ss_align; /* Force desired alignment. */ -- char __ss_padding[_SS_PADSIZE]; -- }; -- -- --/* Bits in the FLAGS argument to `send', `recv', et al. */ --enum -- { -- MSG_OOB = 0x01, /* Process out-of-band data. */ --#define MSG_OOB MSG_OOB -- MSG_PEEK = 0x02, /* Peek at incoming messages. */ --#define MSG_PEEK MSG_PEEK -- MSG_DONTROUTE = 0x04, /* Don't use local routing. */ --#define MSG_DONTROUTE MSG_DONTROUTE --#ifdef __USE_GNU -- /* DECnet uses a different name. */ -- MSG_TRYHARD = MSG_DONTROUTE, --# define MSG_TRYHARD MSG_DONTROUTE --#endif -- MSG_CTRUNC = 0x08, /* Control data lost before delivery. */ --#define MSG_CTRUNC MSG_CTRUNC -- MSG_PROXY = 0x10, /* Supply or ask second address. */ --#define MSG_PROXY MSG_PROXY -- MSG_TRUNC = 0x20, --#define MSG_TRUNC MSG_TRUNC -- MSG_DONTWAIT = 0x40, /* Nonblocking IO. */ --#define MSG_DONTWAIT MSG_DONTWAIT -- MSG_EOR = 0x80, /* End of record. */ --#define MSG_EOR MSG_EOR -- MSG_WAITALL = 0x100, /* Wait for a full request. */ --#define MSG_WAITALL MSG_WAITALL -- MSG_FIN = 0x200, --#define MSG_FIN MSG_FIN -- MSG_SYN = 0x400, --#define MSG_SYN MSG_SYN -- MSG_CONFIRM = 0x800, /* Confirm path validity. */ --#define MSG_CONFIRM MSG_CONFIRM -- MSG_RST = 0x1000, --#define MSG_RST MSG_RST -- MSG_ERRQUEUE = 0x2000, /* Fetch message from error queue. */ --#define MSG_ERRQUEUE MSG_ERRQUEUE -- MSG_NOSIGNAL = 0x4000, /* Do not generate SIGPIPE. */ --#define MSG_NOSIGNAL MSG_NOSIGNAL -- MSG_MORE = 0x8000 /* Sender will send more. */ --#define MSG_MORE MSG_MORE -- }; -- -- --/* Structure describing messages sent by -- `sendmsg' and received by `recvmsg'. */ --/* Note: do not change these members to match glibc; these match the -- SuSv3 spec already (e.g. msg_iovlen/msg_controllen). -- http://www.opengroup.org/onlinepubs/009695399/basedefs/sys/socket.h.html */ --/* Note: linux kernel uses __kernel_size_t (which is 8bytes on 64bit -- platforms, and 4bytes on 32bit platforms) for msg_iovlen/msg_controllen */ --struct msghdr -- { -- void *msg_name; /* Address to send to/receive from. */ -- socklen_t msg_namelen; /* Length of address data. */ -- -- struct iovec *msg_iov; /* Vector of data to send/receive into. */ --#if __WORDSIZE == 32 -- int msg_iovlen; /* Number of elements in the vector. */ --#else -- size_t msg_iovlen; /* Number of elements in the vector. */ --#endif -- -- void *msg_control; /* Ancillary data (eg BSD filedesc passing). */ --#if __WORDSIZE == 32 -- socklen_t msg_controllen; /* Ancillary data buffer length. */ --#else -- size_t msg_controllen; /* Ancillary data buffer length. */ --#endif -- -- int msg_flags; /* Flags on received message. */ -- }; -- --/* Structure used for storage of ancillary data object information. */ --struct cmsghdr -- { -- size_t cmsg_len; /* Length of data in cmsg_data plus length -- of cmsghdr structure. */ -- int cmsg_level; /* Originating protocol. */ -- int cmsg_type; /* Protocol specific type. */ --#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L -- __extension__ unsigned char __cmsg_data __flexarr; /* Ancillary data. */ --#endif -- }; -- --/* Ancillary data object manipulation macros. */ --#if (!defined __STRICT_ANSI__ && __GNUC__ >= 2) || __STDC_VERSION__ >= 199901L --# define CMSG_DATA(cmsg) ((cmsg)->__cmsg_data) --#else --# define CMSG_DATA(cmsg) ((unsigned char *) ((struct cmsghdr *) (cmsg) + 1)) --#endif --#define CMSG_NXTHDR(mhdr, cmsg) __cmsg_nxthdr (mhdr, cmsg) --#define CMSG_FIRSTHDR(mhdr) \ -- ((size_t) (mhdr)->msg_controllen >= sizeof (struct cmsghdr) \ -- ? (struct cmsghdr *) (mhdr)->msg_control : (struct cmsghdr *) NULL) --#define CMSG_ALIGN(len) (((len) + sizeof (size_t) - 1) \ -- & (size_t) ~(sizeof (size_t) - 1)) --#define CMSG_SPACE(len) (CMSG_ALIGN (len) \ -- + CMSG_ALIGN (sizeof (struct cmsghdr))) --#define CMSG_LEN(len) (CMSG_ALIGN (sizeof (struct cmsghdr)) + (len)) -- --extern struct cmsghdr *__cmsg_nxthdr (struct msghdr *__mhdr, -- struct cmsghdr *__cmsg) __THROW; --libc_hidden_proto(__cmsg_nxthdr) --#ifdef __USE_EXTERN_INLINES --# ifndef _EXTERN_INLINE --# define _EXTERN_INLINE extern __inline --# endif --_EXTERN_INLINE struct cmsghdr * --__NTH (__cmsg_nxthdr (struct msghdr *__mhdr, struct cmsghdr *__cmsg)) --{ -- if ((size_t) __cmsg->cmsg_len < sizeof (struct cmsghdr)) -- /* The kernel header does this so there may be a reason. */ -- return 0; -- -- __cmsg = (struct cmsghdr *) ((unsigned char *) __cmsg -- + CMSG_ALIGN (__cmsg->cmsg_len)); -- if ((unsigned char *) (__cmsg + 1) > ((unsigned char *) __mhdr->msg_control -- + __mhdr->msg_controllen) -- || ((unsigned char *) __cmsg + CMSG_ALIGN (__cmsg->cmsg_len) -- > ((unsigned char *) __mhdr->msg_control + __mhdr->msg_controllen))) -- /* No more entries. */ -- return 0; -- return __cmsg; --} --#endif /* Use `extern inline'. */ -- --/* Socket level message types. This must match the definitions in -- . */ --enum -- { -- SCM_RIGHTS = 0x01 /* Transfer file descriptors. */ --#define SCM_RIGHTS SCM_RIGHTS --#ifdef __USE_BSD -- , SCM_CREDENTIALS = 0x02 /* Credentials passing. */ --# define SCM_CREDENTIALS SCM_CREDENTIALS --#endif -- }; -- --/* User visible structure for SCM_CREDENTIALS message */ -- --struct ucred --{ -- pid_t pid; /* PID of sending process. */ -- uid_t uid; /* UID of sending process. */ -- gid_t gid; /* GID of sending process. */ --}; -- --/* Get socket manipulation related informations from kernel headers. */ --#ifndef __GLIBC__ --#define __GLIBC__ 2 --#include --#undef __GLIBC__ --#else --#include --#endif -- -- --/* Structure used to manipulate the SO_LINGER option. */ --struct linger -- { -- int l_onoff; /* Nonzero to linger on close. */ -- int l_linger; /* Time to linger. */ -- }; -- --/* Prefer socketcall over all these for sparc32, -- since it only has socketcall */ --#ifndef __arch64__ -- #undef __NR_accept -- #undef __NR_bind -- #undef __NR_connect -- #undef __NR_getpeername -- #undef __NR_getsockname -- #undef __NR_getsockopt -- #undef __NR_listen -- #undef __NR_recv -- #undef __NR_recvfrom -- #undef __NR_recvmsg -- #undef __NR_send -- #undef __NR_sendmsg -- #undef __NR_sendto -- #undef __NR_setsockopt -- #undef __NR_shutdown -- #undef __NR_socket -- #undef __NR_socketpair --#endif -- --#endif /* bits/socket.h */ -diff --git a/libc/sysdeps/linux/sparc/bits/socket_type.h b/libc/sysdeps/linux/sparc/bits/socket_type.h -new file mode 100644 -index 0000000..494655f ---- /dev/null -+++ b/libc/sysdeps/linux/sparc/bits/socket_type.h -@@ -0,0 +1,54 @@ -+/* System-specific socket constants and types. Linux version. -+ Copyright (C) 1991,1992,1994-2001,2004,2006 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _SYS_SOCKET_H -+# error "Never include directly; use instead." -+#endif -+ -+/* Types of sockets. */ -+enum __socket_type -+{ -+ SOCK_STREAM = 1, /* Sequenced, reliable, connection-based -+ byte streams. */ -+#define SOCK_STREAM SOCK_STREAM -+ SOCK_DGRAM = 2, /* Connectionless, unreliable datagrams -+ of fixed maximum length. */ -+#define SOCK_DGRAM SOCK_DGRAM -+ SOCK_RAW = 3, /* Raw protocol interface. */ -+#define SOCK_RAW SOCK_RAW -+ SOCK_RDM = 4, /* Reliably-delivered messages. */ -+#define SOCK_RDM SOCK_RDM -+ SOCK_SEQPACKET = 5, /* Sequenced, reliable, connection-based, -+ datagrams of fixed maximum length. */ -+#define SOCK_SEQPACKET SOCK_SEQPACKET -+ SOCK_DCCP = 6, /* Datagram Congestion Control Protocol. */ -+#define SOCK_DCCP SOCK_DCCP -+ SOCK_PACKET = 10, /* Linux specific way of getting packets -+ at the dev level. For writing rarp and -+ other similar things on the user level. */ -+#define SOCK_PACKET SOCK_PACKET -+ -+ /* Flags to be ORed into the type parameter of socket and socketpair. */ -+ -+ SOCK_CLOEXEC = 0x400000, /* Atomically set close-on-exec flag for the -+ new descriptor(s). */ -+#define SOCK_CLOEXEC SOCK_CLOEXEC -+ SOCK_NONBLOCK = 0x004000 /* Atomically mark descriptor(s) as -+ non-blocking. */ -+#define SOCK_NONBLOCK SOCK_NONBLOCK -+}; --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0036-mount.h-update.patch b/package/uclibc/0.9.33.2/0036-mount.h-update.patch deleted file mode 100644 index 4c9826cd190..00000000000 --- a/package/uclibc/0.9.33.2/0036-mount.h-update.patch +++ /dev/null @@ -1,91 +0,0 @@ -From 641a5356a021f90ee922229bd8e1aa6eafe152bc Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Fri, 18 Jan 2013 11:12:49 +0100 -Subject: [PATCH] mount.h: update - -Signed-off-by: Bernhard Reutner-Fischer ---- - include/sys/mount.h | 45 +++++++++++++++++++++++++++++++++++---------- - 1 file changed, 35 insertions(+), 10 deletions(-) - -diff --git a/include/sys/mount.h b/include/sys/mount.h -index 57d440f..9eecc5a 100644 ---- a/include/sys/mount.h -+++ b/include/sys/mount.h -@@ -1,5 +1,5 @@ - /* Header file for mounting/unmount Linux filesystems. -- Copyright (C) 1996,1997,1998,1999,2000,2004 Free Software Foundation, Inc. -+ Copyright (C) 1996-2000, 2004, 2010, 2012 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -47,23 +47,46 @@ enum - #define MS_REMOUNT MS_REMOUNT - MS_MANDLOCK = 64, /* Allow mandatory locks on an FS. */ - #define MS_MANDLOCK MS_MANDLOCK -- S_WRITE = 128, /* Write on file/directory/symlink. */ --#define S_WRITE S_WRITE -- S_APPEND = 256, /* Append-only file. */ --#define S_APPEND S_APPEND -- S_IMMUTABLE = 512, /* Immutable file. */ --#define S_IMMUTABLE S_IMMUTABLE -+ MS_DIRSYNC = 128, /* Directory modifications are synchronous. */ -+#define MS_DIRSYNC MS_DIRSYNC - MS_NOATIME = 1024, /* Do not update access times. */ - #define MS_NOATIME MS_NOATIME - MS_NODIRATIME = 2048, /* Do not update directory access times. */ - #define MS_NODIRATIME MS_NODIRATIME - MS_BIND = 4096, /* Bind directory at different place. */ - #define MS_BIND MS_BIND -+ MS_MOVE = 8192, -+#define MS_MOVE MS_MOVE -+ MS_REC = 16384, -+#define MS_REC MS_REC -+ MS_SILENT = 32768, -+#define MS_SILENT MS_SILENT -+ MS_POSIXACL = 1 << 16, /* VFS does not apply the umask. */ -+#define MS_POSIXACL MS_POSIXACL -+ MS_UNBINDABLE = 1 << 17, /* Change to unbindable. */ -+#define MS_UNBINDABLE MS_UNBINDABLE -+ MS_PRIVATE = 1 << 18, /* Change to private. */ -+#define MS_PRIVATE MS_PRIVATE -+ MS_SLAVE = 1 << 19, /* Change to slave. */ -+#define MS_SLAVE MS_SLAVE -+ MS_SHARED = 1 << 20, /* Change to shared. */ -+#define MS_SHARED MS_SHARED -+ MS_RELATIME = 1 << 21, /* Update atime relative to mtime/ctime. */ -+#define MS_RELATIME MS_RELATIME -+ MS_KERNMOUNT = 1 << 22, /* This is a kern_mount call. */ -+#define MS_KERNMOUNT MS_KERNMOUNT -+ MS_I_VERSION = 1 << 23, /* Update inode I_version field. */ -+#define MS_I_VERSION MS_I_VERSION -+ MS_STRICTATIME = 1 << 24, /* Always perform atime updates. */ -+#define MS_STRICTATIME MS_STRICTATIME -+ MS_ACTIVE = 1 << 30, -+#define MS_ACTIVE MS_ACTIVE -+ MS_NOUSER = 1 << 31 -+#define MS_NOUSER MS_NOUSER - }; - - /* Flags that can be altered by MS_REMOUNT */ --#define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_NOATIME \ -- |MS_NODIRATIME) -+#define MS_RMT_MASK (MS_RDONLY|MS_SYNCHRONOUS|MS_MANDLOCK|MS_I_VERSION) - - - /* Magic mount flag number. Has to be or-ed to the flag values. */ -@@ -100,8 +123,10 @@ enum - #define MNT_FORCE MNT_FORCE - MNT_DETACH = 2, /* Just detach from the tree. */ - #define MNT_DETACH MNT_DETACH -- MNT_EXPIRE = 4 /* Mark for expiry. */ -+ MNT_EXPIRE = 4, /* Mark for expiry. */ - #define MNT_EXPIRE MNT_EXPIRE -+ UMOUNT_NOFOLLOW = 8 /* Don't follow symlink on umount. */ -+#define UMOUNT_NOFOLLOW UMOUNT_NOFOLLOW - }; - - --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0037-buildsys-gen_bits_syscall_h-do-not-leave-undefined-S.patch b/package/uclibc/0.9.33.2/0037-buildsys-gen_bits_syscall_h-do-not-leave-undefined-S.patch deleted file mode 100644 index c3107253f6b..00000000000 --- a/package/uclibc/0.9.33.2/0037-buildsys-gen_bits_syscall_h-do-not-leave-undefined-S.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 29411db7b6cf872e73b5560c46dd941f91e704cd Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Sat, 26 Jan 2013 14:13:12 -0500 -Subject: [PATCH] buildsys: gen_bits_syscall_h: do not leave undefined SYS_xxx - around - -If we end up doing '#undef __NR_xxx', we don't want to leave the -corresponding SYS_xxx symbol defined. So undef it too. - -For example, with the ARM EABI layer, we have a bunch of legacy -syscalls that we define early on and then later undefine (such -as __NR_utime). But we left SYS_utime defined so code that tests -for that define before using it would be broken (since it'd be -defined to a non-existent symbol). - -URL: https://bugs.gentoo.org/425006 -Signed-off-by: Mike Frysinger ---- - extra/scripts/gen_bits_syscall_h.sh | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/extra/scripts/gen_bits_syscall_h.sh b/extra/scripts/gen_bits_syscall_h.sh -index f6353ba..fd141f0 100755 ---- a/extra/scripts/gen_bits_syscall_h.sh -+++ b/extra/scripts/gen_bits_syscall_h.sh -@@ -40,7 +40,8 @@ $CC -E $INCLUDE_OPTS - | - sed -ne 's/^UCLIBC\(__ARM_NR_\|__NR_\)\([A-Za-z0-9_]*\) *\(.*\)/#undef \1\2\ - #define \1\2 \3\ - #define SYS_\2 \1\2/gp' \ -- -e 's/^UNDEFUCLIBC\(__ARM_NR_\|__NR_\)\([A-Za-z0-9_]*\).*/#undef \1\2/gp' -+ -e 's/^UNDEFUCLIBC\(__ARM_NR_\|__NR_\)\([A-Za-z0-9_]*\).*/#undef \1\2\ -+#undef SYS_\2/gp' - echo ; - echo "#endif" ; - ) --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0038-libc-sysdeps-sync-bits-in.h-with-glibc.patch b/package/uclibc/0.9.33.2/0038-libc-sysdeps-sync-bits-in.h-with-glibc.patch deleted file mode 100644 index 6f4246840af..00000000000 --- a/package/uclibc/0.9.33.2/0038-libc-sysdeps-sync-bits-in.h-with-glibc.patch +++ /dev/null @@ -1,117 +0,0 @@ -From 4b7f3716b8678c9ff423445f41e6ffb47fd295cd Mon Sep 17 00:00:00 2001 -From: Mike Frysinger -Date: Sat, 26 Jan 2013 17:40:24 -0500 -Subject: [PATCH] libc/sysdeps: sync bits/in.h with glibc - -URL: https://bugs.busybox.net/show_bug.cgi?id=5888 -Signed-off-by: Mike Frysinger ---- - libc/sysdeps/linux/common/bits/in.h | 61 +++++++++++++++++++++++------------ - 1 file changed, 41 insertions(+), 20 deletions(-) - -diff --git a/libc/sysdeps/linux/common/bits/in.h b/libc/sysdeps/linux/common/bits/in.h -index 1f2b817..d9c5e2b 100644 ---- a/libc/sysdeps/linux/common/bits/in.h -+++ b/libc/sysdeps/linux/common/bits/in.h -@@ -1,4 +1,4 @@ --/* Copyright (C) 1991-1999, 2000, 2004 Free Software Foundation, Inc. -+/* Copyright (C) 1991-2013 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -43,31 +43,49 @@ - #define IP_ADD_SOURCE_MEMBERSHIP 39 /* ip_mreq_source: join source group */ - #define IP_DROP_SOURCE_MEMBERSHIP 40 /* ip_mreq_source: leave source group */ - #define IP_MSFILTER 41 --#define MCAST_JOIN_GROUP 42 /* group_req: join any-source group */ --#define MCAST_BLOCK_SOURCE 43 /* group_source_req: block from given group */ --#define MCAST_UNBLOCK_SOURCE 44 /* group_source_req: unblock from given group*/ --#define MCAST_LEAVE_GROUP 45 /* group_req: leave any-source group */ --#define MCAST_JOIN_SOURCE_GROUP 46 /* group_source_req: join source-spec gr */ --#define MCAST_LEAVE_SOURCE_GROUP 47 /* group_source_req: leave source-spec gr*/ --#define MCAST_MSFILTER 48 -- --#define MCAST_EXCLUDE 0 --#define MCAST_INCLUDE 1 -- --#define IP_ROUTER_ALERT 5 /* bool */ --#define IP_PKTINFO 8 /* bool */ --#define IP_PKTOPTIONS 9 --#define IP_PMTUDISC 10 /* obsolete name? */ --#define IP_MTU_DISCOVER 10 /* int; see below */ --#define IP_RECVERR 11 /* bool */ --#define IP_RECVTTL 12 /* bool */ --#define IP_RECVTOS 13 /* bool */ -+#if defined __USE_MISC || defined __USE_GNU -+# define MCAST_JOIN_GROUP 42 /* group_req: join any-source group */ -+# define MCAST_BLOCK_SOURCE 43 /* group_source_req: block from given group */ -+# define MCAST_UNBLOCK_SOURCE 44 /* group_source_req: unblock from given group*/ -+# define MCAST_LEAVE_GROUP 45 /* group_req: leave any-source group */ -+# define MCAST_JOIN_SOURCE_GROUP 46 /* group_source_req: join source-spec gr */ -+# define MCAST_LEAVE_SOURCE_GROUP 47 /* group_source_req: leave source-spec gr*/ -+# define MCAST_MSFILTER 48 -+# define IP_MULTICAST_ALL 49 -+# define IP_UNICAST_IF 50 -+ -+# define MCAST_EXCLUDE 0 -+# define MCAST_INCLUDE 1 -+#endif -+ -+#define IP_ROUTER_ALERT 5 /* bool */ -+#define IP_PKTINFO 8 /* bool */ -+#define IP_PKTOPTIONS 9 -+#define IP_PMTUDISC 10 /* obsolete name? */ -+#define IP_MTU_DISCOVER 10 /* int; see below */ -+#define IP_RECVERR 11 /* bool */ -+#define IP_RECVTTL 12 /* bool */ -+#define IP_RECVTOS 13 /* bool */ -+#define IP_MTU 14 /* int */ -+#define IP_FREEBIND 15 -+#define IP_IPSEC_POLICY 16 -+#define IP_XFRM_POLICY 17 -+#define IP_PASSSEC 18 -+#define IP_TRANSPARENT 19 -+#define IP_MULTICAST_ALL 49 /* bool */ -+ -+/* TProxy original addresses */ -+#define IP_ORIGDSTADDR 20 -+#define IP_RECVORIGDSTADDR IP_ORIGDSTADDR -+ -+#define IP_MINTTL 21 - - - /* IP_MTU_DISCOVER arguments. */ - #define IP_PMTUDISC_DONT 0 /* Never send DF frames. */ - #define IP_PMTUDISC_WANT 1 /* Use per route hints. */ - #define IP_PMTUDISC_DO 2 /* Always DF. */ -+#define IP_PMTUDISC_PROBE 3 /* Ignore dst pmtu. */ - - /* To select the IP level. */ - #define SOL_IP 0 -@@ -76,6 +94,7 @@ - #define IP_DEFAULT_MULTICAST_LOOP 1 - #define IP_MAX_MEMBERSHIPS 20 - -+#if defined __USE_MISC || defined __USE_GNU - /* Structure used to describe IP options for IP_OPTIONS and IP_RETOPTS. - The `ip_dst' field is used for the first-hop gateway when using a - source route (this gets put into the header proper). */ -@@ -100,6 +119,7 @@ struct in_pktinfo - struct in_addr ipi_spec_dst; /* Routing destination address */ - struct in_addr ipi_addr; /* Header destination address */ - }; -+#endif - - #ifdef __UCLIBC_HAS_IPV6__ - /* Options for use with `getsockopt' and `setsockopt' at the IPv6 level. -@@ -159,6 +179,7 @@ struct in_pktinfo - #define IPV6_PMTUDISC_DONT 0 /* Never send DF frames. */ - #define IPV6_PMTUDISC_WANT 1 /* Use per route hints. */ - #define IPV6_PMTUDISC_DO 2 /* Always DF. */ -+#define IPV6_PMTUDISC_PROBE 3 /* Ignore dst pmtu. */ - - /* Socket level values for IPv6. */ - #define SOL_IPV6 41 --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0039-libc-atexit-reuse-free-slots-at-the-end-of-exit-func.patch b/package/uclibc/0.9.33.2/0039-libc-atexit-reuse-free-slots-at-the-end-of-exit-func.patch deleted file mode 100644 index ac9022c235b..00000000000 --- a/package/uclibc/0.9.33.2/0039-libc-atexit-reuse-free-slots-at-the-end-of-exit-func.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 893d4fb45bb0811bcc939054e60e37a47a1786c5 Mon Sep 17 00:00:00 2001 -From: Ronald Wahl -Date: Mon, 4 Feb 2013 14:51:46 +0100 -Subject: [PATCH] libc: atexit: reuse free slots at the end of exit functions - table - -Continuosly dlopen and dlclose of shared object will cause a memory leak -in atexit function. This fix reuse free slots at the end of the list. - -For further detail see https://bugs.busybox.net/show_bug.cgi?id=2455 - -Signed-off-by: Ronald Wahl -Tested-by: Filippo Arcidiacono -Signed-off-by: Carmelo Amoroso -(cherry picked from commit 389cd96704f21549cafc0b5bdcd0ef762b98bc08) ---- - libc/stdlib/_atexit.c | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/libc/stdlib/_atexit.c b/libc/stdlib/_atexit.c -index 48b97ff..0af8c57 100644 ---- a/libc/stdlib/_atexit.c -+++ b/libc/stdlib/_atexit.c -@@ -240,6 +240,16 @@ struct exit_function attribute_hidden *__new_exitfn(void) - - __UCLIBC_MUTEX_LOCK(__atexit_lock); - -+ /* -+ * Reuse free slots at the end of the list. -+ * This avoids eating memory when dlopen and dlclose modules multiple times. -+ */ -+ while (__exit_count > 0) { -+ if (__exit_function_table[__exit_count-1].type == ef_free) { -+ --__exit_count; -+ } else break; -+ } -+ - #ifdef __UCLIBC_DYNAMIC_ATEXIT__ - /* If we are out of function table slots, make some more */ - if (__exit_slots < __exit_count+1) { --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0040-mman-rename-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch b/package/uclibc/0.9.33.2/0040-mman-rename-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch deleted file mode 100644 index 431969436f5..00000000000 --- a/package/uclibc/0.9.33.2/0040-mman-rename-MAP_UNINITIALIZE-to-MAP_UNINITIALIZED.patch +++ /dev/null @@ -1,200 +0,0 @@ -From fb1b8fc191bffd6b3bc6db6bfa824b2d41e18485 Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Tue, 5 Feb 2013 19:13:06 +0100 -Subject: [PATCH] mman: rename MAP_UNINITIALIZE to MAP_UNINITIALIZED - -The name was changed to include a trailing 'D' when it went into the -kernel. - -Signed-off-by: Bernhard Reutner-Fischer ---- - ldso/ldso/dl-elf.c | 2 +- - ldso/ldso/ldso.c | 2 +- - libc/stdlib/malloc-simple/alloc.c | 4 ++-- - libc/stdlib/malloc-standard/malloc.h | 6 +++--- - libc/stdlib/malloc/malloc.c | 2 +- - libc/sysdeps/linux/alpha/bits/mman.h | 2 +- - libc/sysdeps/linux/common/bits/mman-common.h | 2 +- - libc/sysdeps/linux/hppa/bits/mman.h | 2 +- - libc/sysdeps/linux/mips/bits/mman.h | 2 +- - libc/sysdeps/linux/powerpc/bits/mman.h | 2 +- - libc/sysdeps/linux/sparc/bits/mman.h | 2 +- - libc/sysdeps/linux/xtensa/bits/mman.h | 2 +- - 12 files changed, 15 insertions(+), 15 deletions(-) - -diff --git a/ldso/ldso/dl-elf.c b/ldso/ldso/dl-elf.c -index 9e2a12c..0e6d2cd 100644 ---- a/ldso/ldso/dl-elf.c -+++ b/ldso/ldso/dl-elf.c -@@ -500,7 +500,7 @@ struct elf_resolve *_dl_load_elf_shared_library(unsigned rflags, - return NULL; - } - header = _dl_mmap((void *) 0, _dl_pagesize, PROT_READ | PROT_WRITE, -- MAP_PRIVATE | MAP_ANONYMOUS | MAP_UNINITIALIZE, -1, 0); -+ MAP_PRIVATE | MAP_ANONYMOUS | MAP_UNINITIALIZED, -1, 0); - if (_dl_mmap_check_error(header)) { - _dl_dprintf(2, "%s:%i: can't map '%s'\n", _dl_progname, __LINE__, libname); - _dl_internal_error_number = LD_ERROR_MMAP_FAILED; -diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c -index 85d27a3..df46e24 100644 ---- a/ldso/ldso/ldso.c -+++ b/ldso/ldso/ldso.c -@@ -245,7 +245,7 @@ void *_dl_malloc(size_t size) - - _dl_debug_early("mmapping more memory\n"); - _dl_mmap_zero = _dl_malloc_addr = _dl_mmap((void *) 0, rounded_size, -- PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS | MAP_UNINITIALIZE, -1, 0); -+ PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS | MAP_UNINITIALIZED, -1, 0); - if (_dl_mmap_check_error(_dl_mmap_zero)) { - _dl_dprintf(_dl_debug_file, "%s: mmap of a spare page failed!\n", _dl_progname); - _dl_exit(20); -diff --git a/libc/stdlib/malloc-simple/alloc.c b/libc/stdlib/malloc-simple/alloc.c -index 914c89d..ec49781 100644 ---- a/libc/stdlib/malloc-simple/alloc.c -+++ b/libc/stdlib/malloc-simple/alloc.c -@@ -36,7 +36,7 @@ void *malloc(size_t size) - #ifdef __ARCH_USE_MMU__ - # define MMAP_FLAGS MAP_PRIVATE | MAP_ANONYMOUS - #else --# define MMAP_FLAGS MAP_SHARED | MAP_ANONYMOUS | MAP_UNINITIALIZE -+# define MMAP_FLAGS MAP_SHARED | MAP_ANONYMOUS | MAP_UNINITIALIZED - #endif - - result = mmap((void *) 0, size + sizeof(size_t), PROT_READ | PROT_WRITE, -@@ -63,7 +63,7 @@ void * calloc(size_t nmemb, size_t lsize) - result = malloc(size); - - #ifndef __ARCH_USE_MMU__ -- /* mmap'd with MAP_UNINITIALIZE, we have to blank memory ourselves */ -+ /* mmap'd with MAP_UNINITIALIZED, we have to blank memory ourselves */ - if (result != NULL) { - memset(result, 0, size); - } -diff --git a/libc/stdlib/malloc-standard/malloc.h b/libc/stdlib/malloc-standard/malloc.h -index 73d4b12..e6ae544 100644 ---- a/libc/stdlib/malloc-standard/malloc.h -+++ b/libc/stdlib/malloc-standard/malloc.h -@@ -349,13 +349,13 @@ __UCLIBC_MUTEX_EXTERN(__malloc_lock); - #endif - - #ifdef __ARCH_USE_MMU__ --# define _MAP_UNINITIALIZE 0 -+# define _MAP_UNINITIALIZED 0 - #else --# define _MAP_UNINITIALIZE MAP_UNINITIALIZE -+# define _MAP_UNINITIALIZED MAP_UNINITIALIZED - #endif - - #define MMAP(addr, size, prot) \ -- (mmap((addr), (size), (prot), MAP_PRIVATE|MAP_ANONYMOUS|_MAP_UNINITIALIZE, 0, 0)) -+ (mmap((addr), (size), (prot), MAP_PRIVATE|MAP_ANONYMOUS|_MAP_UNINITIALIZED, 0, 0)) - - - /* ----------------------- Chunk representations ----------------------- */ -diff --git a/libc/stdlib/malloc/malloc.c b/libc/stdlib/malloc/malloc.c -index d58a7d0..2b47077 100644 ---- a/libc/stdlib/malloc/malloc.c -+++ b/libc/stdlib/malloc/malloc.c -@@ -124,7 +124,7 @@ __malloc_from_heap (size_t size, struct heap_free_area **heap - MAP_PRIVATE | MAP_ANONYMOUS, 0, 0); - #else - block = mmap ((void *)0, block_size, PROT_READ | PROT_WRITE, -- MAP_SHARED | MAP_ANONYMOUS | MAP_UNINITIALIZE, 0, 0); -+ MAP_SHARED | MAP_ANONYMOUS | MAP_UNINITIALIZED, 0, 0); - #endif - - #endif /* MALLOC_USE_SBRK */ -diff --git a/libc/sysdeps/linux/alpha/bits/mman.h b/libc/sysdeps/linux/alpha/bits/mman.h -index cafad4a..31327ed 100644 ---- a/libc/sysdeps/linux/alpha/bits/mman.h -+++ b/libc/sysdeps/linux/alpha/bits/mman.h -@@ -71,7 +71,7 @@ - # define MAP_NORESERVE 0x10000 /* Don't check for reservations. */ - # define MAP_POPULATE 0x20000 /* Populate (prefault) pagetables. */ - # define MAP_NONBLOCK 0x40000 /* Do not block on IO. */ --# define MAP_UNINITIALIZE 0x4000000 /* For anonymous mmap, memory could -+# define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could - be uninitialized. */ - #endif - -diff --git a/libc/sysdeps/linux/common/bits/mman-common.h b/libc/sysdeps/linux/common/bits/mman-common.h -index f00cb1a..c733a87 100644 ---- a/libc/sysdeps/linux/common/bits/mman-common.h -+++ b/libc/sysdeps/linux/common/bits/mman-common.h -@@ -64,7 +64,7 @@ - # define MAP_POPULATE 0x08000 /* Populate (prefault) pagetables. */ - # define MAP_NONBLOCK 0x10000 /* Do not block on IO. */ - # define MAP_STACK 0x20000 /* Allocation is for a stack. */ --# define MAP_UNINITIALIZE 0x4000000 /* For anonymous mmap, memory could -+# define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could - be uninitialized. */ - #endif - -diff --git a/libc/sysdeps/linux/hppa/bits/mman.h b/libc/sysdeps/linux/hppa/bits/mman.h -index 7f9bf4e..fc73c91 100644 ---- a/libc/sysdeps/linux/hppa/bits/mman.h -+++ b/libc/sysdeps/linux/hppa/bits/mman.h -@@ -45,7 +45,7 @@ - #define MAP_GROWSDOWN 0x8000 /* stack-like segment */ - #define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ - #define MAP_NONBLOCK 0x20000 /* do not block on IO */ --#define MAP_UNINITIALIZE 0x4000000 /* For anonymous mmap, memory could -+#define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could - be uninitialized. */ - - #define MS_SYNC 1 /* synchronous memory sync */ -diff --git a/libc/sysdeps/linux/mips/bits/mman.h b/libc/sysdeps/linux/mips/bits/mman.h -index c480be4..f9a8128 100644 ---- a/libc/sysdeps/linux/mips/bits/mman.h -+++ b/libc/sysdeps/linux/mips/bits/mman.h -@@ -66,7 +66,7 @@ - # define MAP_LOCKED 0x8000 /* pages are locked */ - # define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */ - # define MAP_NONBLOCK 0x20000 /* do not block on IO */ --# define MAP_UNINITIALIZE 0x4000000 /* For anonymous mmap, memory could -+# define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could - be uninitialized. */ - #endif - -diff --git a/libc/sysdeps/linux/powerpc/bits/mman.h b/libc/sysdeps/linux/powerpc/bits/mman.h -index 2d234c5..b766cb6 100644 ---- a/libc/sysdeps/linux/powerpc/bits/mman.h -+++ b/libc/sysdeps/linux/powerpc/bits/mman.h -@@ -63,7 +63,7 @@ - # define MAP_NORESERVE 0x00040 /* Don't check for reservations. */ - # define MAP_POPULATE 0x08000 /* Populate (prefault) pagetables. */ - # define MAP_NONBLOCK 0x10000 /* Do not block on IO. */ --# define MAP_UNINITIALIZE 0x4000000 /* For anonymous mmap, memory could -+# define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could - be uninitialized. */ - #endif - -diff --git a/libc/sysdeps/linux/sparc/bits/mman.h b/libc/sysdeps/linux/sparc/bits/mman.h -index 74921e4..2463e7d 100644 ---- a/libc/sysdeps/linux/sparc/bits/mman.h -+++ b/libc/sysdeps/linux/sparc/bits/mman.h -@@ -65,7 +65,7 @@ - # define _MAP_NEW 0x80000000 /* Binary compatibility with SunOS. */ - # define MAP_POPULATE 0x8000 /* Populate (prefault) pagetables. */ - # define MAP_NONBLOCK 0x10000 /* Do not block on IO. */ --# define MAP_UNINITIALIZE 0x4000000 /* For anonymous mmap, memory could -+# define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could - be uninitialized. */ - #endif - -diff --git a/libc/sysdeps/linux/xtensa/bits/mman.h b/libc/sysdeps/linux/xtensa/bits/mman.h -index fead3ac..dfd9e4c 100644 ---- a/libc/sysdeps/linux/xtensa/bits/mman.h -+++ b/libc/sysdeps/linux/xtensa/bits/mman.h -@@ -64,7 +64,7 @@ - # define MAP_NORESERVE 0x0400 /* Don't check for reservations. */ - # define MAP_POPULATE 0x10000 /* Populate (prefault) pagetables. */ - # define MAP_NONBLOCK 0x20000 /* Do not block on IO. */ --# define MAP_UNINITIALIZE 0x4000000 /* For anonymous mmap, memory could -+# define MAP_UNINITIALIZED 0x4000000 /* For anonymous mmap, memory could - be uninitialized. */ - #endif - --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch b/package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch deleted file mode 100644 index 64fb43d537b..00000000000 --- a/package/uclibc/0.9.33.2/0041-libc-add-posix_fallocate.patch +++ /dev/null @@ -1,337 +0,0 @@ -From 8fc83b7f3fd7425aa4e96c870a7d46df1d81c16c Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Tue, 17 Apr 2012 09:30:15 +0200 -Subject: [PATCH] libc: add posix_fallocate() - -Signed-off-by: Bernhard Reutner-Fischer ---- - include/fcntl.h | 4 +- - libc/sysdeps/linux/common/Makefile.in | 3 +- - libc/sysdeps/linux/common/bits/kernel-features.h | 8 ++ - libc/sysdeps/linux/common/posix_fallocate.c | 43 ++++++++ - libc/sysdeps/linux/common/posix_fallocate64.c | 39 +++++++ - test/.gitignore | 2 + - test/unistd/Makefile.in | 5 +- - test/unistd/tst-posix_fallocate.c | 127 ++++++++++++++++++++++ - test/unistd/tst-posix_fallocate64.c | 2 + - 9 files changed, 228 insertions(+), 5 deletions(-) - create mode 100644 libc/sysdeps/linux/common/posix_fallocate.c - create mode 100644 libc/sysdeps/linux/common/posix_fallocate64.c - create mode 100644 test/unistd/tst-posix_fallocate.c - create mode 100644 test/unistd/tst-posix_fallocate64.c - -diff --git a/include/fcntl.h b/include/fcntl.h -index 26ad1fe..c4a47af 100644 ---- a/include/fcntl.h -+++ b/include/fcntl.h -@@ -210,9 +210,7 @@ extern int posix_fadvise64 (int __fd, __off64_t __offset, __off64_t __len, - - #endif - --#if 0 /* && defined __UCLIBC_HAS_ADVANCED_REALTIME__ */ -- --/* FIXME -- uClibc should probably implement these... */ -+#if defined __UCLIBC_HAS_ADVANCED_REALTIME__ - - /* Reserve storage for the data of the file associated with FD. - -diff --git a/libc/sysdeps/linux/common/Makefile.in b/libc/sysdeps/linux/common/Makefile.in -index e9baa47..e4ac4ff 100644 ---- a/libc/sysdeps/linux/common/Makefile.in -+++ b/libc/sysdeps/linux/common/Makefile.in -@@ -82,7 +82,8 @@ CSRC-$(UCLIBC_HAS_REALTIME) += clock_getres.c clock_gettime.c clock_settime.c \ - sched_get_priority_max.c sched_get_priority_min.c sched_getscheduler.c \ - sched_rr_get_interval.c sched_setparam.c sched_setscheduler.c sigqueue.c - # clock_getcpuclockid|clock_nanosleep|mq_timedreceive|mq_timedsend|posix_fadvise|posix_fallocate|posix_madvise|posix_memalign|posix_mem_offset|posix_spawnattr_destroy|posix_spawnattr_init|posix_spawnattr_getflags|posix_spawnattr_setflags|posix_spawnattr_getpgroup|posix_spawnattr_setpgroup|posix_spawnattr_getschedparam|posix_spawnattr_setschedparam|posix_spawnattr_getschedpolicy|posix_spawnattr_setschedpolicy|posix_spawnattr_getsigdefault|posix_spawnattr_setsigdefault|posix_spawnattr_getsigmask|posix_spawnattr_setsigmask|posix_spawnattr_init|posix_spawnattr_setflags|posix_spawnattr_setpgroup|posix_spawnattr_setschedparam|posix_spawnattr_setschedpolicy|posix_spawnattr_setsigdefault|posix_spawnattr_setsigmask|posix_spawn_file_actions_addclose|posix_spawn_file_actions_addopen|posix_spawn_file_actions_adddup2|posix_spawn_file_actions_addopen|posix_spawn_file_actions_destroy|posix_spawn_file_actions_init|posix_spawn_file_actions_init|posix_spawn|posix_spawnp|posix_spawnp|posix_typed_mem_get_info|pthread_mutex_timedlock|sem_timedwait --CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise64.c posix_fadvise.c posix_madvise.c -+CSRC-$(UCLIBC_HAS_ADVANCED_REALTIME) += posix_fadvise64.c posix_fadvise.c posix_madvise.c \ -+ posix_fallocate.c posix_fallocate64.c - CSRC-$(UCLIBC_SUSV4_LEGACY) += utime.c - CSRC-$(UCLIBC_HAS_EPOLL) += epoll.c - CSRC-$(UCLIBC_HAS_XATTR) += xattr.c -diff --git a/libc/sysdeps/linux/common/bits/kernel-features.h b/libc/sysdeps/linux/common/bits/kernel-features.h -index 5665e24..13c7a63 100644 ---- a/libc/sysdeps/linux/common/bits/kernel-features.h -+++ b/libc/sysdeps/linux/common/bits/kernel-features.h -@@ -496,6 +496,14 @@ - # define __ASSUME_PRIVATE_FUTEX 1 - #endif - -+/* Support for fallocate was added in 2.6.23, -+ on s390 only after 2.6.23-rc1, on alpha only after 2.6.33-rc1. */ -+#if __LINUX_KERNEL_VERSION >= 0x020617 \ -+ && (!defined __s390__ || __LINUX_KERNEL_VERSION >= 0x020618) \ -+ && (!defined __alpha__ || __LINUX_KERNEL_VERSION >= 0x020621) -+# define __ASSUME_FALLOCATE 1 -+#endif -+ - /* getcpu is a syscall for x86-64 since 3.1. */ - #if defined __x86_64__ && __LINUX_KERNEL_VERSION >= 0x030100 - # define __ASSUME_GETCPU_SYSCALL 1 -diff --git a/libc/sysdeps/linux/common/posix_fallocate.c b/libc/sysdeps/linux/common/posix_fallocate.c -new file mode 100644 -index 0000000..9aaa6ce ---- /dev/null -+++ b/libc/sysdeps/linux/common/posix_fallocate.c -@@ -0,0 +1,43 @@ -+/* vi: set sw=4 ts=4: */ -+/* -+ * posix_fallocate() for uClibc -+ * http://www.opengroup.org/onlinepubs/9699919799/functions/posix_fallocate.html -+ * -+ * Copyright (C) 2000-2006 Erik Andersen -+ * -+ * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball. -+ */ -+ -+#include -+#include -+#include -+#include -+ -+#if defined __NR_fallocate -+int posix_fallocate(int fd, __off_t offset, __off_t len) -+{ -+ int ret; -+ -+# if __WORDSIZE == 32 -+ uint32_t off_low = offset; -+ uint32_t len_low = len; -+ /* may assert that these >>31 are 0 */ -+ uint32_t zero = 0; -+ INTERNAL_SYSCALL_DECL(err); -+ ret = (int) (INTERNAL_SYSCALL(fallocate, err, 6, fd, 0, -+ __LONG_LONG_PAIR (zero, off_low), -+ __LONG_LONG_PAIR (zero, len_low))); -+# elif __WORDSIZE == 64 -+ INTERNAL_SYSCALL_DECL(err); -+ ret = (int) (INTERNAL_SYSCALL(fallocate, err, 4, fd, 0, offset, len)); -+# else -+# error your machine is neither 32 bit or 64 bit ... it must be magical -+#endif -+ if (unlikely(INTERNAL_SYSCALL_ERROR_P (ret, err))) -+ return INTERNAL_SYSCALL_ERRNO (ret, err); -+ return 0; -+} -+# if defined __UCLIBC_HAS_LFS__ && __WORDSIZE == 64 -+strong_alias(posix_fallocate,posix_fallocate64) -+# endif -+#endif -diff --git a/libc/sysdeps/linux/common/posix_fallocate64.c b/libc/sysdeps/linux/common/posix_fallocate64.c -new file mode 100644 -index 0000000..818d868 ---- /dev/null -+++ b/libc/sysdeps/linux/common/posix_fallocate64.c -@@ -0,0 +1,39 @@ -+/* vi: set sw=4 ts=4: */ -+/* -+ * posix_fallocate() for uClibc -+ * http://www.opengroup.org/onlinepubs/9699919799/functions/posix_fallocate.html -+ * -+ * Copyright (C) 2000-2006 Erik Andersen -+ * -+ * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball. -+ */ -+ -+#include -+#include -+#include -+#include -+ -+#if defined __NR_fallocate -+ -+# if __WORDSIZE == 64 -+/* Can use normal posix_fallocate() */ -+# elif __WORDSIZE == 32 -+int posix_fallocate64(int fd, __off64_t offset, __off64_t len) -+{ -+ int ret; -+ uint32_t off_low = offset & 0xffffffff; -+ uint32_t off_high = offset >> 32; -+ uint32_t len_low = len & 0xffffffff; -+ uint32_t len_high = len >> 32; -+ INTERNAL_SYSCALL_DECL(err); -+ ret = (int) (INTERNAL_SYSCALL(fallocate, err, 6, fd, 0, -+ __LONG_LONG_PAIR (off_high, off_low), -+ __LONG_LONG_PAIR (len_high, len_low))); -+ if (unlikely(INTERNAL_SYSCALL_ERROR_P (ret, err))) -+ return INTERNAL_SYSCALL_ERRNO (ret, err); -+ return 0; -+} -+# else -+# error your machine is neither 32 bit or 64 bit ... it must be magical -+# endif -+#endif -diff --git a/test/.gitignore b/test/.gitignore -index 7234c48..ef152e9 100644 ---- a/test/.gitignore -+++ b/test/.gitignore -@@ -305,6 +305,8 @@ unistd/getcwd - unistd/getopt - unistd/getopt_long - unistd/tstgetopt -+unistd/tst-posix_fallocate -+unistd/tst-posix_fallocate64 - unistd/tst-preadwrite - unistd/tst-preadwrite64 - unistd/vfork -diff --git a/test/unistd/Makefile.in b/test/unistd/Makefile.in -index c542f98..24b9a37 100644 ---- a/test/unistd/Makefile.in -+++ b/test/unistd/Makefile.in -@@ -2,7 +2,10 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - - ifeq ($(UCLIBC_HAS_LFS),) --TESTS_DISABLED := tst-preadwrite64 -+TESTS_DISABLED := tst-preadwrite64 tst-posix_fallocate64 -+endif -+ifeq ($(UCLIBC_HAS_ADVANCED_REALTIME),) -+TESTS_DISABLED := tst-posix_fallocate - endif - OPTS_getopt := -abcXXX -9 - OPTS_getopt_long := --add XXX --delete YYY --verbose -diff --git a/test/unistd/tst-posix_fallocate.c b/test/unistd/tst-posix_fallocate.c -new file mode 100644 -index 0000000..d41c604 ---- /dev/null -+++ b/test/unistd/tst-posix_fallocate.c -@@ -0,0 +1,127 @@ -+#include -+#include -+ -+#ifndef TST_POSIX_FALLOCATE64 -+# define stat64 stat -+# define fstat64 fstat -+# else -+# ifndef O_LARGEFILE -+# error no O_LARGEFILE but you want to test with LFS enabled -+# endif -+#endif -+ -+static void do_prepare (void); -+#define PREPARE(argc, argv) do_prepare () -+static int do_test (void); -+#define TEST_FUNCTION do_test () -+#include -+ -+static int fd; -+static void -+do_prepare (void) -+{ -+ fd = create_temp_file ("tst-posix_fallocate.", NULL); -+ if (fd == -1) -+ { -+ printf ("cannot create temporary file: %m\n"); -+ exit (1); -+ } -+} -+ -+ -+static int -+do_test (void) -+{ -+ struct stat64 st; -+ -+ if (fstat64 (fd, &st) != 0) -+ { -+ puts ("1st fstat failed"); -+ return 1; -+ } -+ -+ if (st.st_size != 0) -+ { -+ puts ("file not created with size 0"); -+ return 1; -+ } -+ -+ if (posix_fallocate (fd, 512, 768) != 0) -+ { -+ puts ("1st posix_fallocate call failed"); -+ return 1; -+ } -+ -+ if (fstat64 (fd, &st) != 0) -+ { -+ puts ("2nd fstat failed"); -+ return 1; -+ } -+ -+ if (st.st_size != 512 + 768) -+ { -+ printf ("file size after 1st posix_fallocate call is %llu, expected %u\n", -+ (unsigned long long int) st.st_size, 512u + 768u); -+ return 1; -+ } -+ -+ if (posix_fallocate (fd, 0, 1024) != 0) -+ { -+ puts ("2nd posix_fallocate call failed"); -+ return 1; -+ } -+ -+ if (fstat64 (fd, &st) != 0) -+ { -+ puts ("3rd fstat failed"); -+ return 1; -+ } -+ -+ if (st.st_size != 512 + 768) -+ { -+ puts ("file size changed in 2nd posix_fallocate"); -+ return 1; -+ } -+ -+ if (posix_fallocate (fd, 2048, 64) != 0) -+ { -+ puts ("3rd posix_fallocate call failed"); -+ return 1; -+ } -+ -+ if (fstat64 (fd, &st) != 0) -+ { -+ puts ("4th fstat failed"); -+ return 1; -+ } -+ -+ if (st.st_size != 2048 + 64) -+ { -+ printf ("file size after 3rd posix_fallocate call is %llu, expected %u\n", -+ (unsigned long long int) st.st_size, 2048u + 64u); -+ return 1; -+ } -+#ifdef TST_POSIX_FALLOCATE64 -+ if (posix_fallocate64 (fd, 4097ULL, 4294967295ULL + 2ULL) != 0) -+ { -+ puts ("4th posix_fallocate call failed"); -+ return 1; -+ } -+ -+ if (fstat64 (fd, &st) != 0) -+ { -+ puts ("5th fstat failed"); -+ return 1; -+ } -+ -+ if (st.st_size != 4097ULL + 4294967295ULL + 2ULL) -+ { -+ printf ("file size after 4th posix_fallocate call is %llu, expected %llu\n", -+ (unsigned long long int) st.st_size, 4097ULL + 4294967295ULL + 2ULL); -+ return 1; -+ } -+#endif -+ close (fd); -+ -+ return 0; -+} -diff --git a/test/unistd/tst-posix_fallocate64.c b/test/unistd/tst-posix_fallocate64.c -new file mode 100644 -index 0000000..b1ee0ff ---- /dev/null -+++ b/test/unistd/tst-posix_fallocate64.c -@@ -0,0 +1,2 @@ -+#define TST_POSIX_FALLOCATE64 -+#include "tst-posix_fallocate.c" --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0042-nice-fix-overflow-checking-in-int_add_no_wrap.patch b/package/uclibc/0.9.33.2/0042-nice-fix-overflow-checking-in-int_add_no_wrap.patch deleted file mode 100644 index a6e6349cb8b..00000000000 --- a/package/uclibc/0.9.33.2/0042-nice-fix-overflow-checking-in-int_add_no_wrap.patch +++ /dev/null @@ -1,44 +0,0 @@ -From e6735556ed0a5e791ea81a015a90c130a0eea060 Mon Sep 17 00:00:00 2001 -From: Xi Wang -Date: Wed, 20 Feb 2013 12:45:45 -0500 -Subject: [PATCH] nice: fix overflow checking in int_add_no_wrap() - -In C, signed integer overflow is undefined behavior. Many compilers -optimize away checks like `a + b < a'. - -Use safe precondition testing instead. - -Signed-off-by: Xi Wang -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/sysdeps/linux/common/nice.c | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/libc/sysdeps/linux/common/nice.c b/libc/sysdeps/linux/common/nice.c -index 3694db8..ed39946 100644 ---- a/libc/sysdeps/linux/common/nice.c -+++ b/libc/sysdeps/linux/common/nice.c -@@ -25,15 +25,15 @@ static __inline__ _syscall1(int, __syscall_nice, int, incr) - - static __inline__ int int_add_no_wrap(int a, int b) - { -- int s = a + b; -- - if (b < 0) { -- if (s > a) s = INT_MIN; -+ if (a < INT_MIN - b) -+ return INT_MIN; - } else { -- if (s < a) s = INT_MAX; -+ if (a > INT_MAX - b) -+ return INT_MAX; - } - -- return s; -+ return a + b; - } - - static __inline__ int __syscall_nice(int incr) --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0043-buildsys-Add-missing-SYMBOL_PREFIX-to-symbol-names.patch b/package/uclibc/0.9.33.2/0043-buildsys-Add-missing-SYMBOL_PREFIX-to-symbol-names.patch deleted file mode 100644 index 06fe6626c61..00000000000 --- a/package/uclibc/0.9.33.2/0043-buildsys-Add-missing-SYMBOL_PREFIX-to-symbol-names.patch +++ /dev/null @@ -1,86 +0,0 @@ -From 0600966321c011c31edbb60945bbdca3fa34b7cb Mon Sep 17 00:00:00 2001 -From: Markos Chandras -Date: Mon, 25 Feb 2013 09:41:25 +0000 -Subject: [PATCH] buildsys: Add missing $(SYMBOL_PREFIX) to symbol names - -Signed-off-by: Markos Chandras -Signed-off-by: Bernhard Reutner-Fischer ---- - Makerules | 2 +- - ldso/ldso/Makefile.in | 2 +- - ldso/ldso/bfin/dl-startup.h | 5 +---- - ldso/libdl/Makefile.in | 2 +- - libpthread/nptl/Makefile.in | 2 +- - 5 files changed, 5 insertions(+), 8 deletions(-) - -diff --git a/Makerules b/Makerules -index 60acaa8..28bbdef 100644 ---- a/Makerules -+++ b/Makerules -@@ -300,7 +300,7 @@ define create-lds - -Wl,-z,relro -Wl,--hash-style=gnu -Wl,-z,defs \ - -Wl,--verbose 2>&1 | LC_ALL=C \ - sed -e '/^=========/,/^=========/!d;/^=========/d' \ -- -e 's/\. = .* + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' > $@.lds -+ -e 's/\. = .* + SIZEOF_HEADERS;/& $(SYMBOL_PREFIX)_begin = . - SIZEOF_HEADERS;/' > $@.lds - endef - - define link.so -diff --git a/ldso/ldso/Makefile.in b/ldso/ldso/Makefile.in -index eb1570a..91165c6 100644 ---- a/ldso/ldso/Makefile.in -+++ b/ldso/ldso/Makefile.in -@@ -36,7 +36,7 @@ LDFLAGS-$(UCLIBC_LDSO_NAME).so := $(LDFLAGS) - else - LDFLAGS-$(UCLIBC_LDSO_NAME).so := $(LDFLAGS_NOSTRIP) -Wl,-z,defs - endif --LDFLAGS-$(UCLIBC_LDSO_NAME).so += -Wl,-e,_start -Wl,-z,now -Wl,-Bsymbolic \ -+LDFLAGS-$(UCLIBC_LDSO_NAME).so += -Wl,-e,$(SYMBOL_PREFIX)_start -Wl,-z,now -Wl,-Bsymbolic \ - -Wl,--export-dynamic $(CFLAG_-Wl--sort-common) -Wl,--discard-locals \ - $(CFLAG_-Wl--discard-all) -Wl,--no-undefined - -diff --git a/ldso/ldso/bfin/dl-startup.h b/ldso/ldso/bfin/dl-startup.h -index 76ae150..860b7c6 100644 ---- a/ldso/ldso/bfin/dl-startup.h -+++ b/ldso/ldso/bfin/dl-startup.h -@@ -40,10 +40,7 @@ __asm__( - " .text\n" - " .global __start\n" - " .type __start,@function\n" -- /* Build system expects a "_start" for the entry point; -- provide it as it's free to do so with aliases. */ -- " .set _start, __start\n" -- " .global _start\n" -+ " .hidden __start\n" - "__start:\n" - " call .Lcall\n" - ".Lcall:\n" -diff --git a/ldso/libdl/Makefile.in b/ldso/libdl/Makefile.in -index be236c8..edf95a6 100644 ---- a/ldso/libdl/Makefile.in -+++ b/ldso/libdl/Makefile.in -@@ -23,7 +23,7 @@ LDFLAGS-$(UCLIBC_FORMAT_DSBT_ELF)-libdl.so := -Wl,--dsbt-index=3 - LDFLAGS-libdl.so := $(LDFLAGS) - - ifeq ($(LDSO_NO_CLEANUP),) --LDFLAGS-libdl.so += -Wl,-fini,dl_cleanup -+LDFLAGS-libdl.so += -Wl,-fini,$(SYMBOL_PREFIX)dl_cleanup - endif - - LIBS-libdl.so := $(LIBS) $(ldso) -diff --git a/libpthread/nptl/Makefile.in b/libpthread/nptl/Makefile.in -index 158bcae..0008822 100644 ---- a/libpthread/nptl/Makefile.in -+++ b/libpthread/nptl/Makefile.in -@@ -145,7 +145,7 @@ LDFLAGS-libpthread.so += $(LDFLAGS) - endif - - LDFLAGS-libpthread.so += $(top_builddir)lib/$(UCLIBC_LDSO_NAME)-$(VERSION).so $(top_builddir)lib/libdl-$(VERSION).so \ -- -Wl,-z,nodelete,-z,initfirst,-init=__pthread_initialize_minimal_internal -+ -Wl,-z,nodelete,-z,initfirst,-init=$(SYMBOL_PREFIX)__pthread_initialize_minimal_internal - - LIBS-libpthread.so := $(LIBS) - --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0044-inet-do-not-filter-responses-in-res_query.patch b/package/uclibc/0.9.33.2/0044-inet-do-not-filter-responses-in-res_query.patch deleted file mode 100644 index 0a8c94bb579..00000000000 --- a/package/uclibc/0.9.33.2/0044-inet-do-not-filter-responses-in-res_query.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 5e40582d549b4a186de2fea9efafadd06904424c Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Timo=20Ter=C3=A4s?= -Date: Thu, 18 Jun 2009 06:55:46 +0000 -Subject: [PATCH] inet: do not filter responses in res_query -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fixes bug #5342 - -res_query was silently rejecting responses against T_ANY DNS -questions. - -Remove the type-filtering from res_query altogether. -__dns_lookup is supposed to return the proper stuff that you asked -for (and only that). - -Signed-off-by: Timo Teräs -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/inet/resolv.c | 9 ++++----- - 1 file changed, 4 insertions(+), 5 deletions(-) - -diff --git a/libc/inet/resolv.c b/libc/inet/resolv.c -index e738098..7bd634c 100644 ---- a/libc/inet/resolv.c -+++ b/libc/inet/resolv.c -@@ -3740,11 +3740,10 @@ int res_query(const char *dname, int class, int type, - - free(a.dotted); - -- if (a.atype == type) { /* CNAME */ -- if (i > anslen) -- i = anslen; -- memcpy(answer, packet, i); -- } -+ if (i > anslen) -+ i = anslen; -+ memcpy(answer, packet, i); -+ - free(packet); - return i; - } --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0045-Remove-pragma-weak-for-undeclared-symbol.patch b/package/uclibc/0.9.33.2/0045-Remove-pragma-weak-for-undeclared-symbol.patch deleted file mode 100644 index 19a06473c69..00000000000 --- a/package/uclibc/0.9.33.2/0045-Remove-pragma-weak-for-undeclared-symbol.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 9a7b71facfcaee5f3a45429358c55fcd5377c509 Mon Sep 17 00:00:00 2001 -From: Bernd Schmidt -Date: Tue, 24 Jul 2012 15:39:48 +0200 -Subject: [PATCH] Remove pragma weak for undeclared symbol - -pthread_initialize is a static function and should not be mentioned in a -header. The #pragma weak for it appears to confuse gcc-4.7. - -see gcc PR middle-end/36282 - -Signed-off-by: Bernd Schmidt -Signed-off-by: Bernhard Reutner-Fischer ---- - libpthread/linuxthreads.old/sysdeps/pthread/bits/libc-lock.h | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/libpthread/linuxthreads.old/sysdeps/pthread/bits/libc-lock.h b/libpthread/linuxthreads.old/sysdeps/pthread/bits/libc-lock.h -index 78593ac..f41375b 100644 ---- a/libpthread/linuxthreads.old/sysdeps/pthread/bits/libc-lock.h -+++ b/libpthread/linuxthreads.old/sysdeps/pthread/bits/libc-lock.h -@@ -375,7 +375,6 @@ weak_extern (BP_SYM (__pthread_key_create)) - weak_extern (BP_SYM (__pthread_setspecific)) - weak_extern (BP_SYM (__pthread_getspecific)) - weak_extern (BP_SYM (__pthread_once)) --weak_extern (__pthread_initialize) - weak_extern (__pthread_atfork) - weak_extern (BP_SYM (_pthread_cleanup_push)) - weak_extern (BP_SYM (_pthread_cleanup_pop)) -@@ -400,7 +399,6 @@ weak_extern (BP_SYM (_pthread_cleanup_pop_restore)) - # pragma weak __pthread_setspecific - # pragma weak __pthread_getspecific - # pragma weak __pthread_once --# pragma weak __pthread_initialize - # pragma weak __pthread_atfork - # pragma weak _pthread_cleanup_push_defer - # pragma weak _pthread_cleanup_pop_restore --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0046-inet-fix-getting-the-nameserver-from-_res-state-afte.patch b/package/uclibc/0.9.33.2/0046-inet-fix-getting-the-nameserver-from-_res-state-afte.patch deleted file mode 100644 index c294a46fc75..00000000000 --- a/package/uclibc/0.9.33.2/0046-inet-fix-getting-the-nameserver-from-_res-state-afte.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 41063cebafa7b90427837757db00cdbfe2690f82 Mon Sep 17 00:00:00 2001 -From: Felix Fietkau -Date: Fri, 21 Sep 2012 17:29:12 +0200 -Subject: [PATCH] inet: fix getting the nameserver from _res state after - res_init. - -Fixes displaying the nameserver in busybox nslookup. - -Signed-off-by: Felix Fietkau -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/inet/resolv.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libc/inet/resolv.c b/libc/inet/resolv.c -index 7bd634c..6f58260 100644 ---- a/libc/inet/resolv.c -+++ b/libc/inet/resolv.c -@@ -3653,11 +3653,11 @@ res_init(void) - */ - if (!_res.id) - _res.id = res_randomid(); -- __res_sync = res_sync_func; - - __UCLIBC_MUTEX_UNLOCK(__resolv_lock); - - __res_vinit(&_res, 1); -+ __res_sync = res_sync_func; - - return 0; - } --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0047-_vfprintf.c-use-fputws_unlocked-S-F-instead-of-fputw.patch b/package/uclibc/0.9.33.2/0047-_vfprintf.c-use-fputws_unlocked-S-F-instead-of-fputw.patch deleted file mode 100644 index 426835021d8..00000000000 --- a/package/uclibc/0.9.33.2/0047-_vfprintf.c-use-fputws_unlocked-S-F-instead-of-fputw.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 543460903545b59903bc83221a6cea02afd0e04f Mon Sep 17 00:00:00 2001 -From: Mirko Vogt -Date: Fri, 21 Sep 2012 17:29:15 +0200 -Subject: [PATCH] _vfprintf.c: use 'fputws_unlocked(S, F)' instead of - 'fputws(S, F)' - -This eliminates a source of reproduceable freezes - -Signed-off-by: Mirko Vogt -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/stdio/_vfprintf.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libc/stdio/_vfprintf.c b/libc/stdio/_vfprintf.c -index 3db8cdf..069db16 100644 ---- a/libc/stdio/_vfprintf.c -+++ b/libc/stdio/_vfprintf.c -@@ -1229,7 +1229,7 @@ static size_t _fp_out_narrow(FILE *fp, intptr_t type, intptr_t len, intptr_t buf - #define STRLEN wcslen - #define _PPFS_init _ppwfs_init - /* Pulls in fseek: */ --#define OUTPUT(F,S) fputws(S,F) -+#define OUTPUT(F,S) fputws_unlocked(S,F) - /* TODO: #define OUTPUT(F,S) _wstdio_fwrite((S),wcslen(S),(F)) */ - #define _outnwcs(stream, wstring, len) _wstdio_fwrite((const wchar_t *)(wstring), len, stream) - #define FP_OUT _fp_out_wide --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0048-Fix-a-problem-with-scanning-wide-chars.patch b/package/uclibc/0.9.33.2/0048-Fix-a-problem-with-scanning-wide-chars.patch deleted file mode 100644 index 4baf8597a17..00000000000 --- a/package/uclibc/0.9.33.2/0048-Fix-a-problem-with-scanning-wide-chars.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 12846e741d925630a4079ac02290b28c6f00b887 Mon Sep 17 00:00:00 2001 -From: Nathan Sidwell -Date: Fri, 22 Mar 2013 17:46:52 +0100 -Subject: [PATCH] Fix a problem with scanning wide chars. - -We found that the testcase - -int -main (void) -{ - wchar_t s[10]; - memset (s, 0, sizeof (s)); - int r = sscanf ("s", "%ls", s); - printf ("%d\n", r); - printf ("%ls\n", s); - return 0; -} - -printed -0 - - -rather than the expected -1 -s - -The problem was the enum in _scanf.c, which has had a 'CONV_m' value -inserted. The attached patch fixes the problem in __psfs_parse_spec by -not presuming a particular displacement between the two sets of -char-like conversion values. With this patch the above program produces -the expected output. - -Signed-off-by: Nathan Sidwell -Signed-off-by: Bernd Schmidt -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/stdio/_scanf.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/libc/stdio/_scanf.c b/libc/stdio/_scanf.c -index 952853c..3848a09 100644 ---- a/libc/stdio/_scanf.c -+++ b/libc/stdio/_scanf.c -@@ -429,8 +429,8 @@ libc_hidden_def(vswscanf) - /* npxXoudif eEgG CS cs[ */ - /* NOTE: the 'm' flag must come before any convs that support it */ - --/* NOTE: Ordering is important! In particular, CONV_LEFTBRACKET -- * must immediately precede CONV_c. */ -+/* NOTE: Ordering is important! The CONV_{C,S,LEFTBRACKET} must map -+ simply to their lowercase equivalents. */ - - enum { - CONV_n = 0, -@@ -921,7 +921,7 @@ int attribute_hidden __psfs_parse_spec(register psfs_t *psfs) - psfs->dataargtype = PA_FLAG_LONG; - } else if ((p_m_spec_chars >= CONV_c) - && (psfs->dataargtype & PA_FLAG_LONG)) { -- p_m_spec_chars -= 3; /* lc -> C, ls -> S, l[ -> ?? */ -+ p_m_spec_chars -= CONV_c - CONV_C; /* lc -> C, ls -> S, l[ -> ?? */ - } - - psfs->conv_num = p_m_spec_chars; --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0049-Fix-some-fragileness-in-dlopen-do_dlopen-wrapper-wor.patch b/package/uclibc/0.9.33.2/0049-Fix-some-fragileness-in-dlopen-do_dlopen-wrapper-wor.patch deleted file mode 100644 index 1c220db4378..00000000000 --- a/package/uclibc/0.9.33.2/0049-Fix-some-fragileness-in-dlopen-do_dlopen-wrapper-wor.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 2f0580cece3ab2baaf9214f434c7146e389566a4 Mon Sep 17 00:00:00 2001 -From: Nathan Sidwell -Date: Fri, 22 Mar 2013 17:48:51 +0100 -Subject: [PATCH] Fix some fragileness in dlopen/do_dlopen wrapper & worker - pair. - -do_dlopen contains __builtin_return_address to determine from -whence it was called, and uses that to determine which dynamic -object's data it should use to start the search. (In the bug I was -tracking, this related to whether the application's RPATH was used or -not.) For that to work, it has to have been inlined into the wrapper -function. - -As it happens, it wasn't being inlined. That's an unfortunate compiler -behaviour, but it isn't wrong and shouldn't have caused dlopen to fail. - -This patch changes things so the wrapper function determines the -return address, and passes it to the worker. If the worker's inlined, -the generated code should be exactly the same as before. - -Signed-off-by: Nathan Sidwell -Signed-off-by: Bernd Schmidt -Signed-off-by: Bernhard Reutner-Fischer ---- - ldso/libdl/libdl.c | 8 +++----- - 1 file changed, 3 insertions(+), 5 deletions(-) - -diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c -index 71ade1f..018c720 100644 ---- a/ldso/libdl/libdl.c -+++ b/ldso/libdl/libdl.c -@@ -296,11 +296,10 @@ static ptrdiff_t _dl_build_local_scope (struct elf_resolve **list, - return p - list; - } - --static void *do_dlopen(const char *libname, int flag) -+static void *do_dlopen(const char *libname, int flag, ElfW(Addr) from) - { - struct elf_resolve *tpnt, *tfrom; - struct dyn_elf *dyn_chain, *rpnt = NULL, *dyn_ptr, *relro_ptr, *handle; -- ElfW(Addr) from; - struct elf_resolve *tpnt1; - void (*dl_brk) (void); - int now_flag; -@@ -320,8 +319,6 @@ static void *do_dlopen(const char *libname, int flag) - return NULL; - } - -- from = (ElfW(Addr)) __builtin_return_address(0); -- - if (!_dl_init) { - _dl_init = true; - _dl_malloc_function = malloc; -@@ -661,7 +658,8 @@ void *dlopen(const char *libname, int flag) - void *ret; - - __UCLIBC_MUTEX_CONDITIONAL_LOCK(_dl_mutex, 1); -- ret = do_dlopen(libname, flag); -+ ret = do_dlopen(libname, flag, -+ (ElfW(Addr)) __builtin_return_address(0)); - __UCLIBC_MUTEX_CONDITIONAL_UNLOCK(_dl_mutex, 1); - - return ret; --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0050-libdl-fix-dlopen-implementation-from-statically-link.patch b/package/uclibc/0.9.33.2/0050-libdl-fix-dlopen-implementation-from-statically-link.patch deleted file mode 100644 index 87a852b5e2d..00000000000 --- a/package/uclibc/0.9.33.2/0050-libdl-fix-dlopen-implementation-from-statically-link.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 7f82a682a730899d30d8640b6af5178919339837 Mon Sep 17 00:00:00 2001 -From: Filippo Arcidiacono -Date: Thu, 9 May 2013 09:04:20 +0200 -Subject: [PATCH] libdl: fix dlopen implementation from statically linked - application - -Calling dlopen from statically linked application is actually broken, -because _dl_find_hash enters into an infinite loop when trying to -resolve symbols. In this case it doesn't need to extend the global -scope, it is readyto be used as it is, because _dl_loaded_modules already points -to the dlopened library. - -The patch also fixesi a typo in __LDSO_LD_LIBRARY_PATH__ macro, that was -preventing to get the actual value of the LD_LIBRARY_PATH. - -Signed-off-by: Filippo Arcidiacono -Signed-off-by: Carmelo Amoroso -(cherry picked from commit 231e4a9b4b972662a6832f714a05525a3754892d) - -Signed-off-by: Carmelo Amoroso ---- - ldso/libdl/libdl.c | 11 +++++++++-- - 1 file changed, 9 insertions(+), 2 deletions(-) - -diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c -index 018c720..49711a8 100644 ---- a/ldso/libdl/libdl.c -+++ b/ldso/libdl/libdl.c -@@ -374,7 +374,7 @@ static void *do_dlopen(const char *libname, int flag, ElfW(Addr) from) - if (getenv("LD_BIND_NOW")) - now_flag = RTLD_NOW; - --#if !defined SHARED && defined __LDSO_LIBRARY_PATH__ -+#if !defined SHARED && defined __LDSO_LD_LIBRARY_PATH__ - /* When statically linked, the _dl_library_path is not yet initialized */ - _dl_library_path = getenv("LD_LIBRARY_PATH"); - #endif -@@ -541,11 +541,18 @@ static void *do_dlopen(const char *libname, int flag, ElfW(Addr) from) - * to the GOT tables. We need to do this in reverse order so that COPY - * directives work correctly */ - -- /* Get the tail of the list */ -+#ifdef SHARED -+ /* -+ * Get the tail of the list. -+ * In the static case doesn't need to extend the global scope, it is -+ * ready to be used as it is, because _dl_loaded_modules already points -+ * to the dlopened library. -+ */ - for (ls = &_dl_loaded_modules->symbol_scope; ls && ls->next; ls = ls->next); - - /* Extend the global scope by adding the local scope of the dlopened DSO. */ - ls->next = &dyn_chain->dyn->symbol_scope; -+#endif - #ifdef __mips__ - /* - * Relocation of the GOT entries for MIPS have to be done --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0051-libubacktrace-fix-backtrace-for-statically-linked-ap.patch b/package/uclibc/0.9.33.2/0051-libubacktrace-fix-backtrace-for-statically-linked-ap.patch deleted file mode 100644 index b2084848544..00000000000 --- a/package/uclibc/0.9.33.2/0051-libubacktrace-fix-backtrace-for-statically-linked-ap.patch +++ /dev/null @@ -1,168 +0,0 @@ -From 6b2250a1a39362abe53e78a45897caecf65ec73f Mon Sep 17 00:00:00 2001 -From: Filippo Arcidiacono -Date: Thu, 9 May 2013 11:42:23 +0200 -Subject: [PATCH] libubacktrace: fix backtrace for statically linked - application - -libgcc_s.so's unwinder could not access unwind tables of statically -linked binaries, so we really want to use _Unwind_* stuff from -libgcc_eh.a. -It required to build backtrace.c differentiating between shared and -static case. - -Signed-off-by: Filippo Arcidiacono -Signed-off-by: Carmelo Amoroso -(cherry picked from commit 71c10c484e7dc113396cccb7e503befb759c6346) - -Signed-off-by: Carmelo Amoroso ---- - libubacktrace/Makefile.in | 23 ++++++++++++++--------- - libubacktrace/arm/Makefile.arch | 2 +- - libubacktrace/arm/backtrace.c | 7 +++++++ - libubacktrace/backtrace.c | 7 +++++++ - 4 files changed, 29 insertions(+), 10 deletions(-) - -diff --git a/libubacktrace/Makefile.in b/libubacktrace/Makefile.in -index 8a4b081..612bf2d 100644 ---- a/libubacktrace/Makefile.in -+++ b/libubacktrace/Makefile.in -@@ -25,11 +25,13 @@ libubacktrace_ARCH_OUT:=$(libubacktrace_OUT)/$(TARGET_ARCH) - -include $(libubacktrace_ARCH_DIR)/Makefile.arch - - libubacktrace_SRC-y := --libubacktrace_SRC-$(UCLIBC_HAS_BACKTRACE) := backtrace.c backtracesyms.c backtracesymsfd.c -+libubacktrace_SRC-$(UCLIBC_HAS_BACKTRACE) := backtracesyms.c backtracesymsfd.c -+libubacktrace_SRC_SHARED-$(UCLIBC_HAS_BACKTRACE) := backtrace.c - - # remove generic sources, if arch specific version is present - ifneq ($(strip $(libubacktrace_ARCH_SRC-y)),) - libubacktrace_SRC-y := $(filter-out $(notdir $(libubacktrace_ARCH_SRC-y)),$(libubacktrace_SRC-y)) -+libubacktrace_SRC_SHARED-y := $(filter-out $(notdir $(libubacktrace_ARCH_SRC-y)),$(libubacktrace_SRC_SHARED-y)) - endif - - # -fasynchronous-unwind-tables is required for backtrace to work using dwarf2 -@@ -43,12 +45,19 @@ endif - libubacktrace_SRCS := $(patsubst %.c,$(libubacktrace_DIR)/%.c,$(libubacktrace_SRC-y)) - libubacktrace_OBJS := $(patsubst $(libubacktrace_DIR)/%.c,$(libubacktrace_OUT)/%.o,$(libubacktrace_SRCS)) - -+libubacktrace_SHARED_SRCS := $(patsubst %.c,$(libubacktrace_DIR)/%.c,$(libubacktrace_SHARED_SRC-y)) -+libubacktrace_SHARED_OBJS := $(patsubst $(libubacktrace_DIR)/%.c,$(libubacktrace_OUT)/%.s,$(libubacktrace_SHARED_SRCS)) -+ -+libubacktrace-shared-y := $(libubacktrace_SHARED_OBJS:.os=.oS) -+libubacktrace-static-y := $(libubacktrace_SHARED_OBJS) -+ - ifeq ($(DOPIC),y) --libubacktrace-a-y += $(libubacktrace_OBJS:.o=.os) -+libubacktrace-a-y += $(libubacktrace_OBJS:.o=.os) $(libubacktrace-static-y:.o=.os) - else --libubacktrace-a-y += $(libubacktrace_OBJS) -+libubacktrace-a-y += $(libubacktrace_OBJS) $(libubacktrace-static-y) - endif --libubacktrace-so-y += $(libubacktrace_OBJS:.o=.os) -+libubacktrace-so-y += $(libubacktrace_OBJS:.o=.os) $(libubacktrace-shared-y) -+ - - lib-a-$(UCLIBC_HAS_BACKTRACE) += $(top_builddir)lib/libubacktrace.a - lib-so-$(UCLIBC_HAS_BACKTRACE) += $(top_builddir)lib/libubacktrace.so -@@ -56,11 +65,7 @@ lib-so-$(UCLIBC_HAS_BACKTRACE) += $(top_builddir)lib/libubacktrace.so - objclean-y += CLEAN_libubacktrace - - ifeq ($(DOMULTI),n) --ifeq ($(DOPIC),y) --$(top_builddir)lib/libubacktrace.so: $(top_builddir)lib/libubacktrace.a $(libdl.depend) --else - $(top_builddir)lib/libubacktrace.so: $(libubacktrace_OUT)/libubacktrace_so.a $(libdl.depend) --endif - $(call link.so,$(libubacktrace_FULL_NAME),$(ABI_VERSION)) - else - $(top_builddir)lib/libubacktrace.so: $(libubacktrace_OUT)/libubacktrace.oS | $(libdl.depend) -@@ -71,7 +76,7 @@ $(libubacktrace_OUT)/libubacktrace_so.a: $(libubacktrace-so-y) - $(Q)$(RM) $@ - $(do_ar) - --$(libubacktrace_OUT)/libubacktrace.oS: $(libubacktrace_SRCS) $(libubacktrace_ARCH_SRCS) -+$(libubacktrace_OUT)/libubacktrace.oS: $(libubacktrace_SRCS) $(libubacktrace_ARCH_SRCS) $(libubacktrace_SHARED_SRCS) - $(Q)$(RM) $@ - $(compile-m) - -diff --git a/libubacktrace/arm/Makefile.arch b/libubacktrace/arm/Makefile.arch -index 53b8c0e..b3fb500 100644 ---- a/libubacktrace/arm/Makefile.arch -+++ b/libubacktrace/arm/Makefile.arch -@@ -14,4 +14,4 @@ libubacktrace-a-y+=$(libubacktrace_ARCH_OBJS:.o=.os) - else - libubacktrace-a-y+=$(libubacktrace_ARCH_OBJS) - endif --libubacktrace-so-y+=$(libubacktrace_ARCH_OBJS:.o=.os) -+libubacktrace-so-y+=$(libubacktrace_ARCH_OBJS:.o=.oS) -diff --git a/libubacktrace/arm/backtrace.c b/libubacktrace/arm/backtrace.c -index d4eca32..5955189 100644 ---- a/libubacktrace/arm/backtrace.c -+++ b/libubacktrace/arm/backtrace.c -@@ -25,6 +25,7 @@ struct trace_arg - int cnt, size; - }; - -+#ifdef SHARED - static _Unwind_Reason_Code (*unwind_backtrace) (_Unwind_Trace_Fn, void *); - static _Unwind_VRS_Result (*unwind_vrs_get) (_Unwind_Context *, - _Unwind_VRS_RegClass, -@@ -42,6 +43,10 @@ static void backtrace_init (void) - abort(); - } - } -+#else -+# define unwind_backtrace _Unwind_Backtrace -+# define unwind_vrs_get _Unwind_VRS_Get -+#endif - /* This function is identical to "_Unwind_GetGR", except that it uses - "unwind_vrs_get" instead of "_Unwind_VRS_Get". */ - static inline _Unwind_Word -@@ -80,8 +85,10 @@ int backtrace (void **array, int size) - { - struct trace_arg arg = { .array = array, .size = size, .cnt = -1 }; - -+#ifdef SHARED - if (unwind_backtrace == NULL) - backtrace_init(); -+#endif - - if (size >= 1) - unwind_backtrace (backtrace_helper, &arg); -diff --git a/libubacktrace/backtrace.c b/libubacktrace/backtrace.c -index fdd5981..1e0a0ec 100644 ---- a/libubacktrace/backtrace.c -+++ b/libubacktrace/backtrace.c -@@ -33,6 +33,7 @@ struct trace_arg - int cnt, size; - }; - -+#ifdef SHARED - static _Unwind_Reason_Code (*unwind_backtrace) (_Unwind_Trace_Fn, void *); - static _Unwind_Ptr (*unwind_getip) (struct _Unwind_Context *); - -@@ -47,6 +48,10 @@ static void backtrace_init (void) - abort(); - } - } -+#else -+# define unwind_backtrace _Unwind_Backtrace -+# define unwind_getip _Unwind_GetIP -+#endif - - static _Unwind_Reason_Code - backtrace_helper (struct _Unwind_Context *ctx, void *a) -@@ -71,8 +76,10 @@ int backtrace (void **array, int size) - { - struct trace_arg arg = { .array = array, .size = size, .cnt = -1 }; - -+#ifdef SHARED - if (unwind_backtrace == NULL) - backtrace_init(); -+#endif - - if (size >= 1) - unwind_backtrace (backtrace_helper, &arg); --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0052-libubacktrace-fix-build-due-to-some-typos.patch b/package/uclibc/0.9.33.2/0052-libubacktrace-fix-build-due-to-some-typos.patch deleted file mode 100644 index 42105cfd06e..00000000000 --- a/package/uclibc/0.9.33.2/0052-libubacktrace-fix-build-due-to-some-typos.patch +++ /dev/null @@ -1,39 +0,0 @@ -From bcfb096af20bac667381c1601e54c78bcbb09d42 Mon Sep 17 00:00:00 2001 -From: Filippo Arcidiacono -Date: Mon, 13 May 2013 14:06:11 +0200 -Subject: [PATCH] libubacktrace: fix build due to some typos - -Commit 71c10c484e7dc113396cccb7e503befb759c6346 broke libubactrace build -due to some typos, so that backtrace.o[sS] were not built. -This definetively fixes this problem. - -Signed-off-by: Filippo Arcidiacono -Signed-off-by: Carmelo Amoroso -(cherry picked from commit e19afed1bd3af6bf8976912517c0677d238309f8) - -Signed-off-by: Carmelo Amoroso ---- - libubacktrace/Makefile.in | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/libubacktrace/Makefile.in b/libubacktrace/Makefile.in -index 612bf2d..1cd5f83 100644 ---- a/libubacktrace/Makefile.in -+++ b/libubacktrace/Makefile.in -@@ -45,10 +45,10 @@ endif - libubacktrace_SRCS := $(patsubst %.c,$(libubacktrace_DIR)/%.c,$(libubacktrace_SRC-y)) - libubacktrace_OBJS := $(patsubst $(libubacktrace_DIR)/%.c,$(libubacktrace_OUT)/%.o,$(libubacktrace_SRCS)) - --libubacktrace_SHARED_SRCS := $(patsubst %.c,$(libubacktrace_DIR)/%.c,$(libubacktrace_SHARED_SRC-y)) --libubacktrace_SHARED_OBJS := $(patsubst $(libubacktrace_DIR)/%.c,$(libubacktrace_OUT)/%.s,$(libubacktrace_SHARED_SRCS)) -+libubacktrace_SHARED_SRCS := $(patsubst %.c,$(libubacktrace_DIR)/%.c,$(libubacktrace_SRC_SHARED-y)) -+libubacktrace_SHARED_OBJS := $(patsubst $(libubacktrace_DIR)/%.c,$(libubacktrace_OUT)/%.o,$(libubacktrace_SHARED_SRCS)) - --libubacktrace-shared-y := $(libubacktrace_SHARED_OBJS:.os=.oS) -+libubacktrace-shared-y := $(libubacktrace_SHARED_OBJS:.o=.oS) - libubacktrace-static-y := $(libubacktrace_SHARED_OBJS) - - ifeq ($(DOPIC),y) --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0053-libc-elf-explicitly-include-uClibc_page.h-to-make-PA.patch b/package/uclibc/0.9.33.2/0053-libc-elf-explicitly-include-uClibc_page.h-to-make-PA.patch deleted file mode 100644 index 3197a210025..00000000000 --- a/package/uclibc/0.9.33.2/0053-libc-elf-explicitly-include-uClibc_page.h-to-make-PA.patch +++ /dev/null @@ -1,30 +0,0 @@ -From b8fb56dcd9686d1bdaf02c2f4f395bb185c093d7 Mon Sep 17 00:00:00 2001 -From: Carmelo Amoroso -Date: Mon, 27 May 2013 16:30:36 +0200 -Subject: [PATCH] libc: elf: explicitly include uClibc_page.h to make - PAGE_SIZE visible - -Signed-off-by: Filippo Arcidiacono -Signed-off-by: Carmelo Amoroso -(cherry picked from commit 215c2868aca096364a4725a42c3ffb46dc4e8b39) - -Signed-off-by: Carmelo Amoroso ---- - libc/misc/elf/dl-support.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/libc/misc/elf/dl-support.c b/libc/misc/elf/dl-support.c -index f194692..908fb06 100644 ---- a/libc/misc/elf/dl-support.c -+++ b/libc/misc/elf/dl-support.c -@@ -19,6 +19,7 @@ - #include - #include - #endif -+#include - - #if defined(USE_TLS) && USE_TLS - --- -1.7.10.4 - diff --git a/package/uclibc/0.9.33.2/0055-Use-new-bits-scheme-for-arch-specific-flag.patch b/package/uclibc/0.9.33.2/0055-Use-new-bits-scheme-for-arch-specific-flag.patch deleted file mode 100644 index 3d966ff7523..00000000000 --- a/package/uclibc/0.9.33.2/0055-Use-new-bits-scheme-for-arch-specific-flag.patch +++ /dev/null @@ -1,284 +0,0 @@ -From c1a78badec59b1ebd303ace8257ca86fa1e14acb Mon Sep 17 00:00:00 2001 -From: Hiroaki KAWAI -Date: Fri, 19 Apr 2013 10:09:35 +0900 -Subject: [PATCH-0.9.33] eventfd.h: Use new "bits/" scheme for arch-specific flags - -As in timerfd.h, eventfd.h needs arch-specific definition files. -alpha, mips and sparc needs separate file, all the other arch -will use common definition. - -This problem is already fixed in glibc. - -Also sanitize and provide bits for hppa. -Make sure not to install the new bits/eventfd unless eventfd support is -enabled. - -Signed-off-by: Hiroaki KAWAI -Signed-off-by: Bernhard Reutner-Fischer ---- - Makefile.in | 1 + - libc/sysdeps/linux/alpha/bits/eventfd.h | 31 +++++++++++++++++++++++++++++++ - libc/sysdeps/linux/common/bits/eventfd.h | 31 +++++++++++++++++++++++++++++++ - libc/sysdeps/linux/common/sys/eventfd.h | 25 +++++++++++++------------ - libc/sysdeps/linux/hppa/bits/eventfd.h | 32 ++++++++++++++++++++++++++++++++ - libc/sysdeps/linux/mips/bits/eventfd.h | 31 +++++++++++++++++++++++++++++++ - libc/sysdeps/linux/sparc/bits/eventfd.h | 31 +++++++++++++++++++++++++++++++ - 7 files changed, 170 insertions(+), 12 deletions(-) - create mode 100644 libc/sysdeps/linux/alpha/bits/eventfd.h - create mode 100644 libc/sysdeps/linux/common/bits/eventfd.h - create mode 100644 libc/sysdeps/linux/hppa/bits/eventfd.h - create mode 100644 libc/sysdeps/linux/mips/bits/eventfd.h - create mode 100644 libc/sysdeps/linux/sparc/bits/eventfd.h - -diff --git a/Makefile.in b/Makefile.in -index 9ba590d..633358f 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -271,6 +271,7 @@ HEADERS_RM-$(UCLIBC_HAS_WORDEXP) += wordexp.h - HEADERS_RM-$(UCLIBC_HAS_XATTR) += sys/xattr.h - HEADERS_RM-$(UCLIBC_HAS_XLOCALE) += xlocale.h - HEADERS_RM-$(UCLIBC_LINUX_SPECIFIC) += sys/eventfd.h sys/fsuid.h \ -+ bits/eventfd.h \ - bits/inotify.h \ - sys/inotify.h \ - sys/kdaemon.h \ -diff --git a/libc/sysdeps/linux/alpha/bits/eventfd.h b/libc/sysdeps/linux/alpha/bits/eventfd.h -new file mode 100644 -index 0000000..b5a7e41 ---- /dev/null -+++ b/libc/sysdeps/linux/alpha/bits/eventfd.h -@@ -0,0 +1,31 @@ -+/* Copyright (C) 2007-2013 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _SYS_EVENTFD_H -+# error "Never use directly; include instead." -+#endif -+ -+/* Flags for eventfd. */ -+enum -+ { -+ EFD_SEMAPHORE = 000000001, -+#define EFD_SEMAPHORE EFD_SEMAPHORE -+ EFD_CLOEXEC = 010000000, -+#define EFD_CLOEXEC EFD_CLOEXEC -+ EFD_NONBLOCK = 000000004 -+#define EFD_NONBLOCK EFD_NONBLOCK -+ }; -diff --git a/libc/sysdeps/linux/common/bits/eventfd.h b/libc/sysdeps/linux/common/bits/eventfd.h -new file mode 100644 -index 0000000..ef49c61 ---- /dev/null -+++ b/libc/sysdeps/linux/common/bits/eventfd.h -@@ -0,0 +1,31 @@ -+/* Copyright (C) 2007-2013 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _SYS_EVENTFD_H -+# error "Never use directly; include instead." -+#endif -+ -+/* Flags for eventfd. */ -+enum -+ { -+ EFD_SEMAPHORE = 00000001, -+#define EFD_SEMAPHORE EFD_SEMAPHORE -+ EFD_CLOEXEC = 02000000, -+#define EFD_CLOEXEC EFD_CLOEXEC -+ EFD_NONBLOCK = 00004000 -+#define EFD_NONBLOCK EFD_NONBLOCK -+ }; -diff --git a/libc/sysdeps/linux/common/sys/eventfd.h b/libc/sysdeps/linux/common/sys/eventfd.h -index 311f803..8686355 100644 ---- a/libc/sysdeps/linux/common/sys/eventfd.h -+++ b/libc/sysdeps/linux/common/sys/eventfd.h -@@ -1,4 +1,4 @@ --/* Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc. -+/* Copyright (C) 2007-2013 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -21,21 +21,12 @@ - - #include - -+/* Get the platform-dependent flags. */ -+#include - - /* Type for event counter. */ - typedef uint64_t eventfd_t; - --/* Flags for signalfd. */ --enum -- { -- EFD_SEMAPHORE = 1, --#define EFD_SEMAPHORE EFD_SEMAPHORE -- EFD_CLOEXEC = 02000000, --#define EFD_CLOEXEC EFD_CLOEXEC -- EFD_NONBLOCK = 04000 --#define EFD_NONBLOCK EFD_NONBLOCK -- }; -- - - __BEGIN_DECLS - -@@ -43,6 +34,16 @@ __BEGIN_DECLS - value to COUNT. */ - extern int eventfd (int __count, int __flags) __THROW; - -+#if 0 /* not (yet) implemented in uClibc */ -+ -+/* Read event counter and possibly wait for events. */ -+extern int eventfd_read (int __fd, eventfd_t *__value); -+ -+/* Increment event counter. */ -+extern int eventfd_write (int __fd, eventfd_t __value); -+ -+#endif -+ - __END_DECLS - - #endif /* sys/eventfd.h */ -diff --git a/libc/sysdeps/linux/hppa/bits/eventfd.h b/libc/sysdeps/linux/hppa/bits/eventfd.h -new file mode 100644 -index 0000000..6182c07 ---- /dev/null -+++ b/libc/sysdeps/linux/hppa/bits/eventfd.h -@@ -0,0 +1,32 @@ -+/* Copyright (C) 2007-2013 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#ifndef _SYS_EVENTFD_H -+# error "Never use directly; include instead." -+#endif -+ -+/* Flags for signalfd. */ -+enum -+ { -+ EFD_SEMAPHORE = 000000001, -+#define EFD_SEMAPHORE EFD_SEMAPHORE -+ EFD_CLOEXEC = 010000000, -+#define EFD_CLOEXEC EFD_CLOEXEC -+/* the below value looks suspicious, should be 000200004 for consistency */ -+ EFD_NONBLOCK = 00200004 /* HPUX has separate NDELAY & NONBLOCK */ -+#define EFD_NONBLOCK EFD_NONBLOCK -+ }; -diff --git a/libc/sysdeps/linux/mips/bits/eventfd.h b/libc/sysdeps/linux/mips/bits/eventfd.h -new file mode 100644 -index 0000000..17b2f46 ---- /dev/null -+++ b/libc/sysdeps/linux/mips/bits/eventfd.h -@@ -0,0 +1,31 @@ -+/* Copyright (C) 2007-2013 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _SYS_EVENTFD_H -+# error "Never use directly; include instead." -+#endif -+ -+/* Flags for eventfd. */ -+enum -+ { -+ EFD_SEMAPHORE = 00000001, -+#define EFD_SEMAPHORE EFD_SEMAPHORE -+ EFD_CLOEXEC = 02000000, -+#define EFD_CLOEXEC EFD_CLOEXEC -+ EFD_NONBLOCK = 00000200 -+#define EFD_NONBLOCK EFD_NONBLOCK -+ }; -diff --git a/libc/sysdeps/linux/sparc/bits/eventfd.h b/libc/sysdeps/linux/sparc/bits/eventfd.h -new file mode 100644 -index 0000000..bed9f09 ---- /dev/null -+++ b/libc/sysdeps/linux/sparc/bits/eventfd.h -@@ -0,0 +1,31 @@ -+/* Copyright (C) 2007-2013 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _SYS_EVENTFD_H -+# error "Never use directly; include instead." -+#endif -+ -+/* Flags for eventfd. */ -+enum -+ { -+ EFD_SEMAPHORE = 1, -+#define EFD_SEMAPHORE EFD_SEMAPHORE -+ EFD_CLOEXEC = 0x400000, -+#define EFD_CLOEXEC EFD_CLOEXEC -+ EFD_NONBLOCK = 0x004000 -+#define EFD_NONBLOCK EFD_NONBLOCK -+ }; --- -1.8.1.2 - diff --git a/package/uclibc/0.9.33.2/0055-siginfo_h-add-a-missing-function-member.patch b/package/uclibc/0.9.33.2/0055-siginfo_h-add-a-missing-function-member.patch deleted file mode 100644 index 1a837bbd19e..00000000000 --- a/package/uclibc/0.9.33.2/0055-siginfo_h-add-a-missing-function-member.patch +++ /dev/null @@ -1,66 +0,0 @@ -siginfo.h: add a missing function member on ia64, mips and sparc arches -Signed-off-by: Vicente Olivert Riera - -From b4e6e61e2f7c6fb4bf59f66efaa74591a2112912 Mon Sep 17 00:00:00 2001 -From: Vicente Olivert Riera -Date: Thu, 02 Jan 2014 15:02:11 +0000 -Subject: siginfo.h: add a missing function member on ia64, mips and sparc arches - -Add "__pid_t _tid" member which is used for some packages, like rt-test -for instance, which fails with an error like this one: - -src/cyclictest/cyclictest.c:638:9: error: 'union ' has no -member named '_tid' - -Signed-off-by: Vicente Olivert Riera -Signed-off-by: Bernhard Reutner-Fischer ---- -(limited to 'libc/sysdeps/linux') - -diff --git a/libc/sysdeps/linux/ia64/bits/siginfo.h b/libc/sysdeps/linux/ia64/bits/siginfo.h -index f571f46..82cc73f 100644 ---- a/libc/sysdeps/linux/ia64/bits/siginfo.h -+++ b/libc/sysdeps/linux/ia64/bits/siginfo.h -@@ -309,6 +309,10 @@ typedef struct sigevent - { - int _pad[__SIGEV_PAD_SIZE]; - -+ /* When SIGEV_SIGNAL and SIGEV_THREAD_ID set, LWP ID of the -+ thread to receive the signal. */ -+ __pid_t _tid; -+ - struct - { - void (*_function) (sigval_t); /* Function to start. */ -diff --git a/libc/sysdeps/linux/mips/bits/siginfo.h b/libc/sysdeps/linux/mips/bits/siginfo.h -index 79fb15a..84b08ca 100644 ---- a/libc/sysdeps/linux/mips/bits/siginfo.h -+++ b/libc/sysdeps/linux/mips/bits/siginfo.h -@@ -281,6 +281,10 @@ typedef struct sigevent - { - int _pad[__SIGEV_PAD_SIZE]; - -+ /* When SIGEV_SIGNAL and SIGEV_THREAD_ID set, LWP ID of the -+ thread to receive the signal. */ -+ __pid_t _tid; -+ - struct - { - void (*_function) (sigval_t); /* Function to start. */ -diff --git a/libc/sysdeps/linux/sparc/bits/siginfo.h b/libc/sysdeps/linux/sparc/bits/siginfo.h -index 6f2d035..3ffeb6d 100644 ---- a/libc/sysdeps/linux/sparc/bits/siginfo.h -+++ b/libc/sysdeps/linux/sparc/bits/siginfo.h -@@ -288,6 +288,10 @@ typedef struct sigevent - { - int _pad[__SIGEV_PAD_SIZE]; - -+ /* When SIGEV_SIGNAL and SIGEV_THREAD_ID set, LWP ID of the -+ thread to receive the signal. */ -+ __pid_t _tid; -+ - struct - { - void (*_function) (sigval_t); /* Function to start. */ --- -cgit v0.9.1 diff --git a/package/uclibc/0.9.33.2/0056-MIPS-set-_NSIG-to-128-not-129.-This-matches-glibc.patch b/package/uclibc/0.9.33.2/0056-MIPS-set-_NSIG-to-128-not-129.-This-matches-glibc.patch deleted file mode 100644 index c6bd051557c..00000000000 --- a/package/uclibc/0.9.33.2/0056-MIPS-set-_NSIG-to-128-not-129.-This-matches-glibc.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 2da958760f798224065508431787e3a83b7fe2ae Mon Sep 17 00:00:00 2001 -From: Denys Vlasenko -Date: Fri, 28 Jun 2013 21:59:54 +0200 -Subject: [PATCH-0.9.33] MIPS: set _NSIG to 128, not 129. This matches glibc. - -Prompted by lkml discussion of a MIPS bug where sending -signal 128 was found to be able to crash the machine :/ - -Signed-off-by: Denys Vlasenko ---- - libc/sysdeps/linux/mips/bits/signum.h | 17 +++++++++++++++-- - 1 file changed, 15 insertions(+), 2 deletions(-) - -diff --git a/libc/sysdeps/linux/mips/bits/signum.h b/libc/sysdeps/linux/mips/bits/signum.h -index cf9b834..e83250e 100644 ---- a/libc/sysdeps/linux/mips/bits/signum.h -+++ b/libc/sysdeps/linux/mips/bits/signum.h -@@ -53,7 +53,20 @@ - #define SIGXCPU 30 /* CPU limit exceeded (4.2 BSD). */ - #define SIGXFSZ 31 /* File size limit exceeded (4.2 BSD). */ - --/* Biggest signal number + 1 (including real-time signals). */ --#define _NSIG 129 -+/* MIPS is special by having 128 signals. -+ * All (?) other architectures have at most 64 signals. -+ * Having 128 signals is problematic because signal nos are 1-based -+ * and last signal number is then 128. -+ * This plays havoc with WIFSIGNALED and WCOREDUMP in waitpid status word, -+ * when process dies from signal 128. -+ * Linux kernel 3.9 accepts signal 128, with awful results :/ -+ * It is being fixed. -+ * -+ * glibc (accidentally?) papers over this issue by declaring _NSIG to be 128, -+ * not 129 (despite claiming that _NSIG is "biggest signal number + 1" -+ * in the comment above that definition). We follow suit. -+ * Note that this results in __SIGRTMAX == 127. It is intended. -+ */ -+#define _NSIG 128 - - #endif /* included. */ --- -1.8.1.2 - diff --git a/package/uclibc/0.9.33.2/0056-siginfo_h-__SIGEV_PAD_SIZE-takes-__WORDSIZE-into-account.patch b/package/uclibc/0.9.33.2/0056-siginfo_h-__SIGEV_PAD_SIZE-takes-__WORDSIZE-into-account.patch deleted file mode 100644 index 1ad84c56d4b..00000000000 --- a/package/uclibc/0.9.33.2/0056-siginfo_h-__SIGEV_PAD_SIZE-takes-__WORDSIZE-into-account.patch +++ /dev/null @@ -1,70 +0,0 @@ -siginfo.h: __SIGEV_PAD_SIZE takes __WORDSIZE into account -Signed-off-by: Vicente Olivert Riera - -From b97b4b698b023f75b54f987859c856ab4861ea00 Mon Sep 17 00:00:00 2001 -From: Vicente Olivert Riera -Date: Thu, 02 Jan 2014 15:02:12 +0000 -Subject: siginfo.h: __SIGEV_PAD_SIZE takes __WORDSIZE into account - -Make __SIGEV_PAD_SIZE to take __WORDSIZE into account for alpha, mips -and ia64 arches. - -Signed-off-by: Vicente Olivert Riera -Signed-off-by: Bernhard Reutner-Fischer ---- -(limited to 'libc/sysdeps/linux') - -diff --git a/libc/sysdeps/linux/alpha/bits/siginfo.h b/libc/sysdeps/linux/alpha/bits/siginfo.h -index 9993f66..0a37ad0 100644 ---- a/libc/sysdeps/linux/alpha/bits/siginfo.h -+++ b/libc/sysdeps/linux/alpha/bits/siginfo.h -@@ -257,7 +257,11 @@ enum - - /* Structure to transport application-defined values with signals. */ - # define __SIGEV_MAX_SIZE 64 --# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 4) -+# if __WORDSIZE == 64 -+# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 4) -+# else -+# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 3) -+# endif - - typedef struct sigevent - { -diff --git a/libc/sysdeps/linux/ia64/bits/siginfo.h b/libc/sysdeps/linux/ia64/bits/siginfo.h -index 82cc73f..3ac988b 100644 ---- a/libc/sysdeps/linux/ia64/bits/siginfo.h -+++ b/libc/sysdeps/linux/ia64/bits/siginfo.h -@@ -297,7 +297,11 @@ enum - - /* Structure to transport application-defined values with signals. */ - # define __SIGEV_MAX_SIZE 64 --# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 4) -+# if __WORDSIZE == 64 -+# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 4) -+# else -+# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 3) -+# endif - - typedef struct sigevent - { -diff --git a/libc/sysdeps/linux/mips/bits/siginfo.h b/libc/sysdeps/linux/mips/bits/siginfo.h -index 84b08ca..a6e4135 100644 ---- a/libc/sysdeps/linux/mips/bits/siginfo.h -+++ b/libc/sysdeps/linux/mips/bits/siginfo.h -@@ -264,8 +264,11 @@ enum - - /* Structure to transport application-defined values with signals. */ - # define __SIGEV_MAX_SIZE 64 --# define __SIGEV_HEAD_SIZE (sizeof(long) + 2*sizeof(int)) --# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE - __SIGEV_HEAD_SIZE) / sizeof (int)) -+# if __WORDSIZE == 64 -+# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 4) -+# else -+# define __SIGEV_PAD_SIZE ((__SIGEV_MAX_SIZE / sizeof (int)) - 3) -+# endif - - /* Forward declaration of the `pthread_attr_t' type. */ - struct __pthread_attr_s; --- -cgit v0.9.1 diff --git a/package/uclibc/0.9.33.2/0057-bits-waitstatus.h-correctly-interpret-status-0x007f-.patch b/package/uclibc/0.9.33.2/0057-bits-waitstatus.h-correctly-interpret-status-0x007f-.patch deleted file mode 100644 index d5922f60f0a..00000000000 --- a/package/uclibc/0.9.33.2/0057-bits-waitstatus.h-correctly-interpret-status-0x007f-.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 4a96b948687166da26a6c327e6c6733ad2336c5c Mon Sep 17 00:00:00 2001 -From: Denys Vlasenko -Date: Thu, 18 Jul 2013 21:57:06 +0200 -Subject: [PATCH-0.9.33] bits/waitstatus.h: correctly interpret status 0x007f on - MIPS - -On other architectures exit status of 0x007f is not possible, -they don't have signal 127. - -Signed-off-by: Denys Vlasenko ---- - libc/sysdeps/linux/common/bits/waitstatus.h | 16 ++++++++++++---- - 1 file changed, 12 insertions(+), 4 deletions(-) - -diff --git a/libc/sysdeps/linux/common/bits/waitstatus.h b/libc/sysdeps/linux/common/bits/waitstatus.h -index 45d0fd3..33f39a8 100644 ---- a/libc/sysdeps/linux/common/bits/waitstatus.h -+++ b/libc/sysdeps/linux/common/bits/waitstatus.h -@@ -24,7 +24,7 @@ - /* Everything extant so far uses these same bits. */ - - --/* If WIFEXITED(STATUS), the low-order 8 bits of the status. */ -+/* If WIFEXITED(STATUS), the low-order 8 bits of exit(N). */ - #define __WEXITSTATUS(status) (((status) & 0xff00) >> 8) - - /* If WIFSIGNALED(STATUS), the terminating signal. */ -@@ -36,12 +36,20 @@ - /* Nonzero if STATUS indicates normal termination. */ - #define __WIFEXITED(status) (__WTERMSIG(status) == 0) - --/* Nonzero if STATUS indicates termination by a signal. */ --#define __WIFSIGNALED(status) \ -- (((signed char) (((status) & 0x7f) + 1) >> 1) > 0) -+/* Nonzero if STATUS indicates termination by a signal. -+ * Note that status 0x007f is "died from signal 127", not "stopped by signal 0". -+ * This does happen on MIPS. -+ * The comparison is "< 0xff", not "< 0x7f", because WCOREDUMP bit (0x80) -+ * can be set too. -+ */ -+#define __WIFSIGNALED(status) (((unsigned)((status) & 0xffff) - 1U) < 0xffU) - - /* Nonzero if STATUS indicates the child is stopped. */ -+#if !defined(__mips__) - #define __WIFSTOPPED(status) (((status) & 0xff) == 0x7f) -+#else -+#define __WIFSTOPPED(status) (((status) & 0xff) == 0x7f && ((status) & 0xff00)) -+#endif - - /* Nonzero if STATUS indicates the child continued after a stop. We only - define this if provides the WCONTINUED flag bit. */ --- -1.8.1.2 - diff --git a/package/uclibc/0.9.33.2/0058-test-tls-fix-build-with-newer-binutils.patch b/package/uclibc/0.9.33.2/0058-test-tls-fix-build-with-newer-binutils.patch deleted file mode 100644 index 04dfb1ef745..00000000000 --- a/package/uclibc/0.9.33.2/0058-test-tls-fix-build-with-newer-binutils.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 931e8391565323ed2e589c83b83a7345813a5514 Mon Sep 17 00:00:00 2001 -From: Baruch Siach -Date: Wed, 02 Oct 2013 07:08:29 +0000 -Subject: test: tls: fix build with newer binutils - -Fix the following build failures: - -ld: tst-tls10.o: undefined reference to symbol 'f2a' -ld: tst-tls12.o: undefined reference to symbol 'a1' - -binutils ld defaults to --no-copy-dt-needed-entries since version 2.22. Add -library dependencies explicitly. - -Signed-off-by: Baruch Siach -Signed-off-by: Bernhard Reutner-Fischer ---- -(limited to 'test') - -diff --git a/test/tls/Makefile.in b/test/tls/Makefile.in -index 875c607..7ab4e2a 100644 ---- a/test/tls/Makefile.in -+++ b/test/tls/Makefile.in -@@ -102,9 +102,9 @@ LDFLAGS_tst-tls6 := -ldl - LDFLAGS_tst-tls7 := -ldl - LDFLAGS_tst-tls8 := -ldl - LDFLAGS_tst-tls9 := -ldl --LDFLAGS_tst-tls10 := -Wl,-rpath-link=. tst-tlsmod8.so --LDFLAGS_tst-tls11 := -Wl,-rpath-link=. tst-tlsmod10.so --LDFLAGS_tst-tls12 := -Wl,-rpath-link=. tst-tlsmod12.so -+LDFLAGS_tst-tls10 := -Wl,-rpath-link=. tst-tlsmod8.so tst-tlsmod7.so -+LDFLAGS_tst-tls11 := -Wl,-rpath-link=. tst-tlsmod9.so tst-tlsmod10.so -+LDFLAGS_tst-tls12 := -Wl,-rpath-link=. tst-tlsmod11.so tst-tlsmod12.so - LDFLAGS_tst-tls13 := -ldl -Wl,-rpath-link=. - LDFLAGS_tst-tls14 := -ldl -Wl,-rpath-link=. tst-tlsmod14a.so - LDFLAGS_tst-tls15 := -ldl -Wl,-rpath-link=. --- -cgit v0.9.1 diff --git a/package/uclibc/0.9.33.2/0059-test-cater-for-config.patch b/package/uclibc/0.9.33.2/0059-test-cater-for-config.patch deleted file mode 100644 index f44c92c1a38..00000000000 --- a/package/uclibc/0.9.33.2/0059-test-cater-for-config.patch +++ /dev/null @@ -1,81 +0,0 @@ -From 7598eeaa1defa2884adaa890bb115c493d69cc35 Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Sat, 23 Feb 2013 06:39:41 +0000 -Subject: test: cater for config - -Signed-off-by: Bernhard Reutner-Fischer ---- -(limited to 'test') - -diff --git a/test/math/Makefile.in b/test/math/Makefile.in -index e76cbdb..beef650 100644 ---- a/test/math/Makefile.in -+++ b/test/math/Makefile.in -@@ -1,14 +1,16 @@ - # uClibc math tests - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - --TESTS := basic-test tst-definitions test-fpucw test-float test-ifloat test-double test-idouble \ -- rint signgam ilogb - # gamma (removed from TESTS, need to add "small errors are ok" machinery there) --ifeq ($(UCLIBC_HAS_LONG_DOUBLE_MATH),y) --TESTS += test-ldouble test-ildoubl compile_test c99_test -+TESTS_DISABLED := gamma -+ifeq ($(UCLIBC_HAS_LONG_DOUBLE_MATH),) -+TESTS_DISABLED += test-ldouble test-ildoubl compile_test c99_test - else - CFLAGS_basic-test := -DNO_LONG_DOUBLE - endif -+ifeq ($(DO_C99_MATH),) -+TESTS_DISABLED += test-float test-ifloat test-double test-idouble rint signgam ilogb -+endif - - DODIFF_rint := 1 - DODIFF_signgam := 1 -diff --git a/test/misc/Makefile.in b/test/misc/Makefile.in -index 9b74d22..52a3e71 100644 ---- a/test/misc/Makefile.in -+++ b/test/misc/Makefile.in -@@ -4,6 +4,7 @@ - TESTS_DISABLED := outb tst-fnmatch bug-glob1 tst-gnuglob - ifeq ($(UCLIBC_HAS_LFS),) - TESTS_DISABLED += dirent64 -+TESTS_DISABLED += tst-statfs # assuming host has LFS on - endif - CFLAGS_dirent64 := -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 - -diff --git a/test/misc/tst-statfs.c b/test/misc/tst-statfs.c -index 44ab3aa..b8b4229 100644 ---- a/test/misc/tst-statfs.c -+++ b/test/misc/tst-statfs.c -@@ -1,5 +1,3 @@ --#define _FILE_OFFSET_BITS 64 -- - #include - #include - #include -diff --git a/test/misc/tst-statvfs.c b/test/misc/tst-statvfs.c -index c1e8fde..4b67719 100644 ---- a/test/misc/tst-statvfs.c -+++ b/test/misc/tst-statvfs.c -@@ -1,5 +1,3 @@ --#define _FILE_OFFSET_BITS 64 -- - #include - #include - #include -diff --git a/test/unistd/Makefile.in b/test/unistd/Makefile.in -index 24b9a37..cfef22e 100644 ---- a/test/unistd/Makefile.in -+++ b/test/unistd/Makefile.in -@@ -5,7 +5,7 @@ ifeq ($(UCLIBC_HAS_LFS),) - TESTS_DISABLED := tst-preadwrite64 tst-posix_fallocate64 - endif - ifeq ($(UCLIBC_HAS_ADVANCED_REALTIME),) --TESTS_DISABLED := tst-posix_fallocate -+TESTS_DISABLED += tst-posix_fallocate - endif - OPTS_getopt := -abcXXX -9 - OPTS_getopt_long := --add XXX --delete YYY --verbose --- -cgit v0.9.1 diff --git a/package/uclibc/0.9.33.2/0060-test-Fix-math-c-dependency.patch b/package/uclibc/0.9.33.2/0060-test-Fix-math-c-dependency.patch deleted file mode 100644 index c6ee47d9b13..00000000000 --- a/package/uclibc/0.9.33.2/0060-test-Fix-math-c-dependency.patch +++ /dev/null @@ -1,30 +0,0 @@ -From a20a91ad7c042c46e4a2adee6d03315f857f9985 Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Tue, 18 Feb 2014 23:30:28 +0100 -Subject: [PATCH] test: Fix math .c dependency - -When explicitly running the compile target we were missing a dependency -to generate the libm-test.c. - -Signed-off-by: Bernhard Reutner-Fischer ---- - test/math/Makefile.in | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/test/math/Makefile.in b/test/math/Makefile.in -index beef650..0285b66 100644 ---- a/test/math/Makefile.in -+++ b/test/math/Makefile.in -@@ -25,7 +25,8 @@ EXTRA_LDFLAGS := -lm - - PERL := /usr/bin/perl - --$(TESTS): libm-test.c -+MDEPS := $(wildcard test-*.c) -+$(MDEPS): libm-test.c - - libm-test.c: libm-test-ulps-$(TARGET_ARCH) libm-test.inc gen-libm-test.pl - $(Q)$(PERL) ./gen-libm-test.pl -u libm-test-ulps-$(TARGET_ARCH) ./libm-test.inc -o "." 2>&1 > /dev/null --- -1.9.3 - diff --git a/package/uclibc/0.9.33.2/0061-fix-sparc-networking.patch b/package/uclibc/0.9.33.2/0061-fix-sparc-networking.patch deleted file mode 100644 index 12729507c84..00000000000 --- a/package/uclibc/0.9.33.2/0061-fix-sparc-networking.patch +++ /dev/null @@ -1,39 +0,0 @@ -Signed-off-by: Waldemar Brodkorb - -Bug introduced by uclibc-0035-socket.h-pull-socket_type.h-from-eglibc.patch -Sent upstream: http://lists.uclibc.org/pipermail/uclibc/2014-July/048438.html - -diff -Nur uClibc-0.9.33.2.orig/libc/inet/socketcalls.c uClibc-0.9.33.2/libc/inet/socketcalls.c ---- uClibc-0.9.33.2.orig/libc/inet/socketcalls.c 2012-05-15 09:20:09.000000000 +0200 -+++ uClibc-0.9.33.2/libc/inet/socketcalls.c 2014-07-28 14:50:52.477479493 +0200 -@@ -34,6 +34,30 @@ - #define SYS_ACCEPT4 18 - #endif - -+/* for sparc: __NR_socket and others are defined, but syscalls are not implemen -+/* see http://lists.busybox.net/pipermail/uclibc/2004-March/029424.html */ -+#ifdef __sparc__ -+#undef __NR_accept -+#undef __NR_accept4 -+#undef __NR_bind -+#undef __NR_connect -+#undef __NR_getpeername -+#undef __NR_getsockname -+#undef __NR_getsockopt -+#undef __NR_listen -+#undef __NR_recv -+#undef __NR_recvfrom -+#undef __NR_recvmsg -+#undef __NR_send -+#undef __NR_sendmsg -+#undef __NR_sendto -+#undef __NR_setsockopt -+#undef __NR_shutdown -+#undef __NR_socket -+#undef __NR_socketpair -+#endif -+ -+ - #ifdef __UCLIBC_HAS_THREADS_NATIVE__ - #include - #include diff --git a/package/uclibc/0.9.33.2/0062-ldso-libdl-Also-include-dl-tls.h-for-for-SHARED.patch b/package/uclibc/0.9.33.2/0062-ldso-libdl-Also-include-dl-tls.h-for-for-SHARED.patch deleted file mode 100644 index 30ac71a4f97..00000000000 --- a/package/uclibc/0.9.33.2/0062-ldso-libdl-Also-include-dl-tls.h-for-for-SHARED.patch +++ /dev/null @@ -1,58 +0,0 @@ -uClibc: ldso/libdl: Also include dl-tls.h for for !SHARED. - -Signed-off-by: Vicente Olivert Riera - -From b57e9640db53166c88cdac66b79a046e46b8d728 Mon Sep 17 00:00:00 2001 -From: Gregory Fong -Date: Mon, 3 Jun 2013 13:32:55 -0700 -Subject: [PATCH] ldso/libdl: Also include dl-tls.h for for !SHARED. - -On MIPS, several relocations that were original only resolved by the -dynamic linker were reused as static relocations. Consequently the -macros TLS_DTPREL_VALUE and TLS_TPREL_VALUE defined in -libpthread/nptl/sysdeps/mips/dl-tls.h need to be available even for -!SHARED. - -Relevant: http://www.linux-mips.org/wiki/NPTL#History - -Original patch by Vincent Wen : -http://lists.uclibc.org/pipermail/uclibc/2013-April/047707.html - -When build statically linked applications for MIPS platform, -sometimes the linker fails with following errors: -undefined reference to TLS_DTPREL_VALUE -undefined reference to TLS_TPREL_VALUE -The include of dl-tls.h is only in code guarded by SHARED, -Removing the SHARED compilation option to cover static link too. - -Signed-off-by: Vincent Wen - -Signed-off-by: Gregory Fong -Signed-off-by: Bernhard Reutner-Fischer ---- - ldso/libdl/libdl.c | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c -index 3a78696..ed4e735 100644 ---- a/ldso/libdl/libdl.c -+++ b/ldso/libdl/libdl.c -@@ -42,6 +42,7 @@ - - #if defined(USE_TLS) && USE_TLS - #include -+#include - extern void _dl_add_to_slotinfo(struct link_map *l); - #endif - -@@ -51,7 +52,6 @@ __UCLIBC_MUTEX_STATIC(_dl_mutex, PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP); - - #ifdef SHARED - # if defined(USE_TLS) && USE_TLS --# include - extern struct link_map *_dl_update_slotinfo(unsigned long int req_modid); - # endif - --- -1.7.1 - diff --git a/package/uclibc/0.9.33.2/0062-nptl-remove-duplicate-vfork-in-libpthread.patch b/package/uclibc/0.9.33.2/0062-nptl-remove-duplicate-vfork-in-libpthread.patch deleted file mode 100644 index 4ab737f1d85..00000000000 --- a/package/uclibc/0.9.33.2/0062-nptl-remove-duplicate-vfork-in-libpthread.patch +++ /dev/null @@ -1,691 +0,0 @@ -nptl: remove duplicate vfork() in libpthread - -Automatic patching via two oneliners by Bernhard Reutner-Fischer : -sed -i -e 's/[[:space:]]pt-vfork\.[csS]//' $(git grep -l pt-vfork libpthread/nptl/sysdeps) -find libpthread/nptl -name "*pt-vfork*" -exec git rm {} \; - -Reported-By: Thomas Petazzoni -Signed-off-by: Waldemar Brodkorb ---- - .../nptl/sysdeps/unix/sysv/linux/alpha/pt-vfork.S | 43 -------------- - .../nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/arm/pt-vfork.S | 38 ------------ - .../sysdeps/unix/sysv/linux/i386/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/i386/pt-vfork.S | 68 ---------------------- - .../sysdeps/unix/sysv/linux/mips/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/mips/pt-vfork.S | 38 ------------ - .../sysdeps/unix/sysv/linux/powerpc/Makefile.arch | 2 +- - .../unix/sysv/linux/powerpc/powerpc32/pt-vfork.S | 49 ---------------- - .../unix/sysv/linux/powerpc/powerpc64/pt-vfork.S | 49 ---------------- - .../sysdeps/unix/sysv/linux/powerpc/pt-vfork.S | 5 -- - .../nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/sh/pt-vfork.S | 65 --------------------- - .../sysdeps/unix/sysv/linux/sparc/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/sparc/pt-vfork.S | 5 -- - .../unix/sysv/linux/sparc/sparc32/pt-vfork.S | 45 -------------- - .../unix/sysv/linux/sparc/sparc64/pt-vfork.S | 45 -------------- - .../sysdeps/unix/sysv/linux/x86_64/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/x86_64/pt-vfork.S | 33 ----------- - 19 files changed, 7 insertions(+), 490 deletions(-) - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/alpha/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arm/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/i386/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/sh/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pt-vfork.S - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/pt-vfork.S -deleted file mode 100644 -index ec5d175..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/pt-vfork.S -+++ /dev/null -@@ -1,43 +0,0 @@ --/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include --#include -- --#undef PSEUDO_PREPARE_ARGS --#define PSEUDO_PREPARE_ARGS \ -- /* Load the current cached pid value across the vfork. */ \ -- rduniq; \ -- ldl a2, PID_OFFSET(v0); \ -- mov v0, a1; \ -- /* Write back its negation, to indicate that the pid value is \ -- uninitialized in the the child, and in the window between \ -- here and the point at which we restore the value. */ \ -- negl a2, t0; \ -- stl t0, PID_OFFSET(v0); -- --PSEUDO (__vfork, vfork, 0) -- -- /* If we're back in the parent, restore the saved pid. */ -- beq v0, 1f -- stl a2, PID_OFFSET(a1) --1: ret -- --PSEUDO_END (__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch -index 329d8a9..1b0282d 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S -+libpthread_linux_arch_SSRC = - libpthread_linux_arch_CSRC = pthread_once.c \ - pt-__syscall_rt_sigaction.c pt-__syscall_error.c \ - lowlevellock.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/pt-vfork.S -deleted file mode 100644 -index 9764e9e..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/pt-vfork.S -+++ /dev/null -@@ -1,38 +0,0 @@ --/* Copyright (C) 2005 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include -- --/* Save the PID value. */ --#define SAVE_PID \ -- str lr, [sp, #-4]!; /* Save LR. */ \ -- mov r0, #0xffff0fff; /* Point to the high page. */ \ -- mov lr, pc; /* Save our return address. */ \ -- sub pc, r0, #31; /* Jump to the TLS entry. */ \ -- ldr lr, [sp], #4; /* Restore LR. */ \ -- mov r2, r0; /* Save the TLS addr in r2. */ \ -- ldr r3, [r2, #PID_OFFSET]; /* Load the saved PID. */ \ -- rsb r0, r3, #0; /* Negate it. */ \ -- str r0, [r2, #PID_OFFSET] /* Store the temporary PID. */ -- --/* Restore the old PID value in the parent. */ --#define RESTORE_PID \ -- cmp r0, #0; /* If we are the parent... */ \ -- strne r3, [r2, #PID_OFFSET] /* ... restore the saved PID. */ -- --#INCLUDE <../../../../../../../LIBC/SYSDEPS/LINUX/ARM/VFORK.S> -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch -index 9a34595..98e2ae7 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S clone.S pthread_spin_unlock.S pthread_once.S -+libpthread_linux_arch_SSRC = clone.S pthread_spin_unlock.S pthread_once.S - libpthread_linux_arch_CSRC = pthread_spin_init.c pt-__syscall_error.c - - libc_linux_arch_CSRC = fork.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/pt-vfork.S -deleted file mode 100644 -index aff926a..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/pt-vfork.S -+++ /dev/null -@@ -1,68 +0,0 @@ --/* Copyright (C) 1999, 2002, 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- Contributed by Andreas Schwab . -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include --#define _ERRNO_H 1 --#include --#include --#include -- --/* Save the PID value. */ --#define SAVE_PID \ -- movl %gs:PID, %edx; \ -- movl %edx, %eax; \ -- negl %eax; \ -- movl %eax, %gs:PID -- --/* Restore the old PID value in the parent. */ --#define RESTORE_PID \ -- testl %eax, %eax; \ -- je 1f; \ -- movl %edx, %gs:PID; \ --1: -- --/* Clone the calling process, but without copying the whole address space. -- The calling process is suspended until the new process exits or is -- replaced by a call to `execve'. Return -1 for errors, 0 to the new process, -- and the process ID of the new process to the old process. */ -- --ENTRY (__vfork) -- /* Pop the return PC value into ECX. */ -- popl %ecx -- -- SAVE_PID -- -- /* Stuff the syscall number in EAX and enter into the kernel. */ -- movl $SYS_ify (vfork), %eax -- int $0x80 -- -- RESTORE_PID -- -- /* Jump to the return PC. Don't jump directly since this -- disturbs the branch target cache. Instead push the return -- address back on the stack. */ -- pushl %ecx -- -- cmpl $-4095, %eax -- jae SYSCALL_ERROR_LABEL /* Branch forward if it failed. */ --L(pseudo_end): -- ret --PSEUDO_END (__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch -index fc26a8e..cfe2861 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S clone.S -+libpthread_linux_arch_SSRC = clone.S - libpthread_linux_arch_CSRC = pthread_once.c pt-__syscall_rt_sigaction.c - - libc_linux_arch_CSRC = fork.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-vfork.S -deleted file mode 100644 -index c02ffca..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-vfork.S -+++ /dev/null -@@ -1,38 +0,0 @@ --/* Copyright (C) 2005 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include --#include -- --/* Save the PID value. */ --#define SAVE_PID \ -- READ_THREAD_POINTER(v1); /* Get the thread pointer. */ \ -- lw a2, PID_OFFSET(v1); /* Load the saved PID. */ \ -- subu a2, $0, a2; /* Negate it. */ \ -- sw a2, PID_OFFSET(v1); /* Store the temporary PID. */ -- --/* Restore the old PID value in the parent. */ --#define RESTORE_PID \ -- beqz v0, 1f; /* If we are the parent... */ \ -- READ_THREAD_POINTER(v1); /* Get the thread pointer. */ \ -- lw a2, PID_OFFSET(v1); /* Load the saved PID. */ \ -- subu a2, $0, a2; /* Re-negate it. */ \ -- sw a2, PID_OFFSET(v1); /* Restore the PID. */ \ --1: -- --#include <../../../../../../../libc/sysdeps/linux/mips/vfork.S> -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/Makefile.arch -index 8581aea..0aa285e 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S -+libpthread_linux_arch_SSRC = - libpthread_linux_arch_CSRC = pthread_once.c pt-__syscall_error.c - - libc_linux_arch_CSRC = fork.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/pt-vfork.S -deleted file mode 100644 -index 61651fd..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/pt-vfork.S -+++ /dev/null -@@ -1,49 +0,0 @@ --/* Copyright (C) 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- Contributed by Jakub Jelinek , 2004. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include --#define _ERRNO_H 1 --#include --#include --#include -- --/* Clone the calling process, but without copying the whole address space. -- The calling process is suspended until the new process exits or is -- replaced by a call to `execve'. Return -1 for errors, 0 to the new process, -- and the process ID of the new process to the old process. */ -- --ENTRY (__vfork) -- lwz 0,PID(2) -- neg 0,0 -- stw 0,PID(2) -- -- DO_CALL (SYS_ify (vfork)) -- -- cmpwi 1,3,0 -- beqlr- 1 -- -- lwz 0,PID(2) -- neg 0,0 -- stw 0,PID(2) -- -- PSEUDO_RET -- --PSEUDO_END (__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/pt-vfork.S -deleted file mode 100644 -index e5b7b53..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/pt-vfork.S -+++ /dev/null -@@ -1,49 +0,0 @@ --/* Copyright (C) 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- Contributed by Jakub Jelinek , 2004. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include --#define _ERRNO_H 1 --#include --#include --#include -- --/* Clone the calling process, but without copying the whole address space. -- The calling process is suspended until the new process exits or is -- replaced by a call to `execve'. Return -1 for errors, 0 to the new process, -- and the process ID of the new process to the old process. */ -- --ENTRY (__vfork) -- lwz 0,PID(13) -- neg 0,0 -- stw 0,PID(13) -- -- DO_CALL (SYS_ify (vfork)) -- -- cmpwi 1,3,0 -- beqlr- 1 -- -- lwz 0,PID(13) -- neg 0,0 -- stw 0,PID(13) -- -- PSEUDO_RET -- --PSEUDO_END (__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/pt-vfork.S -deleted file mode 100644 -index 0225219..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/pt-vfork.S -+++ /dev/null -@@ -1,5 +0,0 @@ --#if defined __powerpc64__ --# include "powerpc64/pt-vfork.S" --#else --# include "powerpc32/pt-vfork.S" --#endif -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch -index a8249e0..a0c008b 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S pthread_once.S pthread_rwlock_wrlock.S \ -+libpthread_linux_arch_SSRC = pthread_once.S pthread_rwlock_wrlock.S \ - pthread_rwlock_rdlock.S pthread_rwlock_unlock.S \ - lowlevellock.S lowlevelrobustlock.S pthread_barrier_wait.S \ - pthread_cond_broadcast.S pthread_cond_signal.S \ -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/pt-vfork.S -deleted file mode 100644 -index 54f2281..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/pt-vfork.S -+++ /dev/null -@@ -1,65 +0,0 @@ --/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include --#define _ERRNO_H 1 --#include --#include -- --/* Clone the calling process, but without copying the whole address space. -- The calling process is suspended until the new process exits or is -- replaced by a call to `execve'. Return -1 for errors, 0 to the new process, -- and the process ID of the new process to the old process. */ -- --ENTRY (__vfork) -- /* Save the PID value. */ -- stc gbr, r2 -- mov.w .L2, r0 -- mov.l @(r0,r2), r4 -- neg r4, r1 -- mov.l r1, @(r0,r2) -- -- mov.w .L1, r3 -- trapa #0x10 -- mov r0, r1 -- -- /* Restore the old PID value in the parent. */ -- tst r0, r0 -- bt/s 2f -- stc gbr, r2 -- mov.w .L2, r0 -- mov.l r4, @(r0,r2) -- mov r1, r0 --2: -- mov #-12, r2 -- shad r2, r1 -- not r1, r1 // r1=0 means r0 = -1 to -4095 -- tst r1, r1 // i.e. error in linux -- bf .Lpseudo_end -- SYSCALL_ERROR_HANDLER --.Lpseudo_end: -- rts -- nop --.L1: -- .word __NR_vfork --.L2: -- .word PID - TLS_PRE_TCB_SIZE -- --PSEUDO_END (__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch -index 102c0da..8329885 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S clone.S -+libpthread_linux_arch_SSRC = clone.S - libpthread_linux_arch_CSRC = pthread_once.c lowlevellock.c \ - pthread_barrier_init.c pthread_barrier_wait.c pthread_barrier_destroy.c \ - pt-__syscall_error.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-vfork.S -deleted file mode 100644 -index e8705c5..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-vfork.S -+++ /dev/null -@@ -1,5 +0,0 @@ --#if defined(__arch64__) --#include "sparc64/pt-vfork.S" --#else --#include "sparc32/pt-vfork.S" --#endif -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pt-vfork.S -deleted file mode 100644 -index fb01242..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sparc32/pt-vfork.S -+++ /dev/null -@@ -1,45 +0,0 @@ --/* Copyright (C) 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- Contributed by Jakub Jelinek , 2004. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include --#include -- -- .text -- .globl __syscall_error --ENTRY(__vfork) -- ld [%g7 + PID], %o5 -- sub %g0, %o5, %o4 -- st %o4, [%g7 + PID] -- -- LOADSYSCALL(vfork) -- ta 0x10 -- bcc 2f -- mov %o7, %g1 -- st %o5, [%g7 + PID] -- call __syscall_error -- mov %g1, %o7 --2: sub %o1, 1, %o1 -- andcc %o0, %o1, %o0 -- bne,a 1f -- st %o5, [%g7 + PID] --1: retl -- nop --END(__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/pt-vfork.S -deleted file mode 100644 -index 8941043..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/sparc64/pt-vfork.S -+++ /dev/null -@@ -1,45 +0,0 @@ --/* Copyright (C) 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- Contributed by Jakub Jelinek , 2004. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include --#include -- -- .text -- .globl __syscall_error --ENTRY(__vfork) -- ld [%g7 + PID], %o5 -- sub %g0, %o5, %o4 -- st %o4, [%g7 + PID] -- -- LOADSYSCALL(vfork) -- ta 0x6d -- bcc,pt %xcc, 2f -- mov %o7, %g1 -- st %o5, [%g7 + PID] -- call __syscall_error -- mov %g1, %o7 --2: sub %o1, 1, %o1 -- andcc %o0, %o1, %o0 -- bne,a,pt %icc, 1f -- st %o5, [%g7 + PID] --1: retl -- nop --END(__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/Makefile.arch -index 71df986..10fa3cf 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S clone.S pthread_once.S \ -+libpthread_linux_arch_SSRC = clone.S pthread_once.S \ - lowlevellock.S pthread_barrier_wait.S pthread_cond_signal.S pthread_cond_broadcast.S \ - sem_post.S sem_timedwait.S lowlevelrobustlock.S \ - sem_trywait.S sem_wait.S pthread_rwlock_rdlock.S pthread_rwlock_wrlock.S \ -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pt-vfork.S -deleted file mode 100644 -index df49496..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pt-vfork.S -+++ /dev/null -@@ -1,33 +0,0 @@ --/* Copyright (C) 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include -- --#define SAVE_PID \ -- movl %fs:PID, %esi; \ -- movl %esi, %edx; \ -- negl %edx; \ -- movl %edx, %fs:PID -- --#define RESTORE_PID \ -- testq %rax, %rax; \ -- je 1f; \ -- movl %esi, %fs:PID; \ --1: -- --#include <../../../../../../../libc/sysdeps/linux/x86_64/vfork.S> --- -1.8.5.2 (Apple Git-48) - diff --git a/package/uclibc/0.9.33.2/0063-powerpc-update-ptrace.h-to-latest-from-glibc.patch b/package/uclibc/0.9.33.2/0063-powerpc-update-ptrace.h-to-latest-from-glibc.patch deleted file mode 100644 index 58e4b9197e6..00000000000 --- a/package/uclibc/0.9.33.2/0063-powerpc-update-ptrace.h-to-latest-from-glibc.patch +++ /dev/null @@ -1,134 +0,0 @@ -From 56824024e4f3fa8b5c6f696934c51fbc86946a80 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Sun, 7 Sep 2014 12:01:33 -0300 -Subject: [PATCH] powerpc: update ptrace.h to latest from glibc - -Update sys/ptrace.h to latest glibc release for a lot of missing -definitions. - -Signed-off-by: Gustavo Zacarias -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/sysdeps/linux/powerpc/sys/ptrace.h | 93 ++++++++++++++++++++++++++++++++- - 1 file changed, 91 insertions(+), 2 deletions(-) - -diff --git a/libc/sysdeps/linux/powerpc/sys/ptrace.h b/libc/sysdeps/linux/powerpc/sys/ptrace.h -index 02c303c..dd81efc 100644 ---- a/libc/sysdeps/linux/powerpc/sys/ptrace.h -+++ b/libc/sysdeps/linux/powerpc/sys/ptrace.h -@@ -1,5 +1,5 @@ - /* `ptrace' debugger support interface. Linux version. -- Copyright (C) 2001 Free Software Foundation, Inc. -+ Copyright (C) 2001-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -20,6 +20,7 @@ - #define _SYS_PTRACE_H 1 - - #include -+#include - - __BEGIN_DECLS - -@@ -78,8 +79,96 @@ enum __ptrace_request - #define PT_DETACH PTRACE_DETACH - - /* Continue and stop at the next (return from) syscall. */ -- PTRACE_SYSCALL = 24 -+ PTRACE_SYSCALL = 24, - #define PT_SYSCALL PTRACE_SYSCALL -+ -+ /* Set ptrace filter options. */ -+ PTRACE_SETOPTIONS = 0x4200, -+#define PT_SETOPTIONS PTRACE_SETOPTIONS -+ -+ /* Get last ptrace message. */ -+ PTRACE_GETEVENTMSG = 0x4201, -+#define PT_GETEVENTMSG PTRACE_GETEVENTMSG -+ -+ /* Get siginfo for process. */ -+ PTRACE_GETSIGINFO = 0x4202, -+#define PT_GETSIGINFO PTRACE_GETSIGINFO -+ -+ /* Set new siginfo for process. */ -+ PTRACE_SETSIGINFO = 0x4203, -+#define PT_SETSIGINFO PTRACE_SETSIGINFO -+ -+ /* Get register content. */ -+ PTRACE_GETREGSET = 0x4204, -+#define PTRACE_GETREGSET PTRACE_GETREGSET -+ -+ /* Set register content. */ -+ PTRACE_SETREGSET = 0x4205, -+#define PTRACE_SETREGSET PTRACE_SETREGSET -+ -+ /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect -+ signal or group stop state. */ -+ PTRACE_SEIZE = 0x4206, -+#define PTRACE_SEIZE PTRACE_SEIZE -+ -+ /* Trap seized tracee. */ -+ PTRACE_INTERRUPT = 0x4207, -+#define PTRACE_INTERRUPT PTRACE_INTERRUPT -+ -+ /* Wait for next group event. */ -+ PTRACE_LISTEN = 0x4208, -+#define PTRACE_LISTEN PTRACE_LISTEN -+ -+ PTRACE_PEEKSIGINFO = 0x4209 -+#define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO -+}; -+ -+ -+/* Flag for PTRACE_LISTEN. */ -+enum __ptrace_flags -+{ -+ PTRACE_SEIZE_DEVEL = 0x80000000 -+}; -+ -+/* Options set using PTRACE_SETOPTIONS. */ -+enum __ptrace_setoptions -+{ -+ PTRACE_O_TRACESYSGOOD = 0x00000001, -+ PTRACE_O_TRACEFORK = 0x00000002, -+ PTRACE_O_TRACEVFORK = 0x00000004, -+ PTRACE_O_TRACECLONE = 0x00000008, -+ PTRACE_O_TRACEEXEC = 0x00000010, -+ PTRACE_O_TRACEVFORKDONE = 0x00000020, -+ PTRACE_O_TRACEEXIT = 0x00000040, -+ PTRACE_O_TRACESECCOMP = 0x00000080, -+ PTRACE_O_EXITKILL = 0x00100000, -+ PTRACE_O_MASK = 0x001000ff -+}; -+ -+/* Wait extended result codes for the above trace options. */ -+enum __ptrace_eventcodes -+{ -+ PTRACE_EVENT_FORK = 1, -+ PTRACE_EVENT_VFORK = 2, -+ PTRACE_EVENT_CLONE = 3, -+ PTRACE_EVENT_EXEC = 4, -+ PTRACE_EVENT_VFORK_DONE = 5, -+ PTRACE_EVENT_EXIT = 6, -+ PTRACE_EVENT_SECCOMP = 7 -+}; -+ -+/* Arguments for PTRACE_PEEKSIGINFO. */ -+struct __ptrace_peeksiginfo_args -+{ -+ __uint64_t off; /* From which siginfo to start. */ -+ __uint32_t flags; /* Flags for peeksiginfo. */ -+ __int32_t nr; /* How many siginfos to take. */ -+}; -+ -+enum __ptrace_peeksiginfo_flags -+{ -+ /* Read signals from a shared (process wide) queue. */ -+ PTRACE_PEEKSIGINFO_SHARED = (1 << 0) - }; - - /* Perform process tracing functions. REQUEST is one of the values --- -2.0.4 - diff --git a/package/uclibc/0.9.33.2/0064-sparc-update-ptrace.h-to-latest-from-glibc.patch b/package/uclibc/0.9.33.2/0064-sparc-update-ptrace.h-to-latest-from-glibc.patch deleted file mode 100644 index 77b2c2e9256..00000000000 --- a/package/uclibc/0.9.33.2/0064-sparc-update-ptrace.h-to-latest-from-glibc.patch +++ /dev/null @@ -1,151 +0,0 @@ -From 085465e5c507822b25daec6c0fc1a78da48bff9e Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Sun, 7 Sep 2014 12:01:34 -0300 -Subject: [PATCH] sparc: update ptrace.h to latest from glibc - -Update sys/ptrace.h to latest glibc release for a lot of missing -definitions. - -Signed-off-by: Gustavo Zacarias -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/sysdeps/linux/sparc/sys/ptrace.h | 97 +++++++++++++++++++++++++++++++++-- - 1 file changed, 92 insertions(+), 5 deletions(-) - -diff --git a/libc/sysdeps/linux/sparc/sys/ptrace.h b/libc/sysdeps/linux/sparc/sys/ptrace.h -index 26fa4b3..0f6c2cc 100644 ---- a/libc/sysdeps/linux/sparc/sys/ptrace.h -+++ b/libc/sysdeps/linux/sparc/sys/ptrace.h -@@ -1,5 +1,5 @@ - /* `ptrace' debugger support interface. Linux/SPARC version. -- Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc. -+ Copyright (C) 1996-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -20,7 +20,7 @@ - #define _SYS_PTRACE_H 1 - - #include -- -+#include - #include - - /* Linux/SPARC kernels up to 2.3.18 do not care much -@@ -147,12 +147,11 @@ enum __ptrace_request - #endif - - /* Continue and stop at the next (return from) syscall. */ -- PTRACE_SYSCALL = 24 -+ PTRACE_SYSCALL = 24, - #define PTRACE_SYSCALL PTRACE_SYSCALL - - #if __WORDSIZE == 64 - -- , - /* Get all floating point registers used by a processes. - This is not supported on all machines. */ - PTRACE_GETFPREGS = 25, -@@ -160,10 +159,98 @@ enum __ptrace_request - - /* Set all floating point registers used by a processes. - This is not supported on all machines. */ -- PTRACE_SETFPREGS = 26 -+ PTRACE_SETFPREGS = 26, - #define PT_SETFPREGS PTRACE_SETFPREGS - - #endif -+ -+ /* Set ptrace filter options. */ -+ PTRACE_SETOPTIONS = 0x4200, -+#define PT_SETOPTIONS PTRACE_SETOPTIONS -+ -+ /* Get last ptrace message. */ -+ PTRACE_GETEVENTMSG = 0x4201, -+#define PT_GETEVENTMSG PTRACE_GETEVENTMSG -+ -+ /* Get siginfo for process. */ -+ PTRACE_GETSIGINFO = 0x4202, -+#define PT_GETSIGINFO PTRACE_GETSIGINFO -+ -+ /* Set new siginfo for process. */ -+ PTRACE_SETSIGINFO = 0x4203, -+#define PT_SETSIGINFO PTRACE_SETSIGINFO -+ -+ /* Get register content. */ -+ PTRACE_GETREGSET = 0x4204, -+#define PTRACE_GETREGSET PTRACE_GETREGSET -+ -+ /* Set register content. */ -+ PTRACE_SETREGSET = 0x4205, -+#define PTRACE_SETREGSET PTRACE_SETREGSET -+ -+ /* Like PTRACE_ATTACH, but do not force tracee to trap and do not affect -+ signal or group stop state. */ -+ PTRACE_SEIZE = 0x4206, -+#define PTRACE_SEIZE PTRACE_SEIZE -+ -+ /* Trap seized tracee. */ -+ PTRACE_INTERRUPT = 0x4207, -+#define PTRACE_INTERRUPT PTRACE_INTERRUPT -+ -+ /* Wait for next group event. */ -+ PTRACE_LISTEN = 0x4208, -+#define PTRACE_LISTEN PTRACE_LISTEN -+ -+ PTRACE_PEEKSIGINFO = 0x4209 -+#define PTRACE_PEEKSIGINFO PTRACE_PEEKSIGINFO -+}; -+ -+ -+/* Flag for PTRACE_LISTEN. */ -+enum __ptrace_flags -+{ -+ PTRACE_SEIZE_DEVEL = 0x80000000 -+}; -+ -+/* Options set using PTRACE_SETOPTIONS. */ -+enum __ptrace_setoptions -+{ -+ PTRACE_O_TRACESYSGOOD = 0x00000001, -+ PTRACE_O_TRACEFORK = 0x00000002, -+ PTRACE_O_TRACEVFORK = 0x00000004, -+ PTRACE_O_TRACECLONE = 0x00000008, -+ PTRACE_O_TRACEEXEC = 0x00000010, -+ PTRACE_O_TRACEVFORKDONE = 0x00000020, -+ PTRACE_O_TRACEEXIT = 0x00000040, -+ PTRACE_O_TRACESECCOMP = 0x00000080, -+ PTRACE_O_EXITKILL = 0x00100000, -+ PTRACE_O_MASK = 0x001000ff -+}; -+ -+/* Wait extended result codes for the above trace options. */ -+enum __ptrace_eventcodes -+{ -+ PTRACE_EVENT_FORK = 1, -+ PTRACE_EVENT_VFORK = 2, -+ PTRACE_EVENT_CLONE = 3, -+ PTRACE_EVENT_EXEC = 4, -+ PTRACE_EVENT_VFORK_DONE = 5, -+ PTRACE_EVENT_EXIT = 6, -+ PTRACE_EVENT_SECCOMP = 7 -+}; -+ -+/* Arguments for PTRACE_PEEKSIGINFO. */ -+struct __ptrace_peeksiginfo_args -+{ -+ __uint64_t off; /* From which siginfo to start. */ -+ __uint32_t flags; /* Flags for peeksiginfo. */ -+ __int32_t nr; /* How many siginfos to take. */ -+}; -+ -+enum __ptrace_peeksiginfo_flags -+{ -+ /* Read signals from a shared (process wide) queue. */ -+ PTRACE_PEEKSIGINFO_SHARED = (1 << 0) - }; - - /* Perform process tracing functions. REQUEST is one of the values --- -2.0.4 - diff --git a/package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch b/package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch deleted file mode 100644 index a6b5b5e9da7..00000000000 --- a/package/uclibc/0.9.33.2/0065-Do-not-include-__iconv_codesets-into-iconv-utility.patch +++ /dev/null @@ -1,79 +0,0 @@ -uclibc: Do not include __iconv_codesets into iconv utility - -Backporting an upstream patch to fix a problem in the install step: - -make[1]: Entering directory `/br/output/build/uclibc-0.9.33.2' -make[2]: Nothing to be done for `locale_headers'. - CC utils/getconf - STRIP -x -R .note -R .comment ../utils/getconf - CC utils/iconv -../lib/libc.a(iconv.os):(.rodata+0x18): multiple definition of -`__iconv_codesets' -/tmp/ccVmV8Lq.o:(.rodata+0x18): first defined here -collect2: error: ld returned 1 exit status - -Upstream commit: - http://git.uclibc.org/uClibc/commit/?id=d46dc8bc88e38251bfa3712efe7abf62933f5419 - -Signed-off-by: Vicente Olivert Riera - -From d46dc8bc88e38251bfa3712efe7abf62933f5419 Mon Sep 17 00:00:00 2001 -From: Peter S. Mazinger -Date: Thu, 24 Mar 2011 00:15:25 +0000 -Subject: iconv: Do not include __iconv_codesets into iconv utility - -Host iconv needs only L_iconv_main defined and __iconv_codesets -has to included, as host system does not provide it. -Keep __iconv_codesets out of iconv linked against uClibc. - -Signed-off-by: Peter S. Mazinger -Signed-off-by: Bernhard Reutner-Fischer ---- -diff --git a/libc/misc/wchar/wchar.c b/libc/misc/wchar/wchar.c -index 412c557..0704096 100644 ---- a/libc/misc/wchar/wchar.c -+++ b/libc/misc/wchar/wchar.c -@@ -1196,6 +1196,9 @@ libc_hidden_proto(__iconv_codesets) - #endif - - #if defined L_iconv || defined L_iconv_main -+# ifdef L_iconv_main -+static -+# endif - const unsigned char __iconv_codesets[] = - "\x0a\xe0""WCHAR_T\x00" /* superset of UCS-4 but platform-endian */ - #if __BYTE_ORDER == __BIG_ENDIAN -diff --git a/utils/Makefile.in b/utils/Makefile.in -index bb85be3..1714d28 100644 ---- a/utils/Makefile.in -+++ b/utils/Makefile.in -@@ -36,8 +36,7 @@ CFLAGS-ldd := $(CFLAGS-utils-shared) -DBUILDING_LINKAGE - # Need CFLAGS-utils explicitly, because the source file is not located in utils - CFLAGS-iconv := $(CFLAGS-utils) \ - $(CFLAGS-utils-shared) \ -- -I$(top_srcdir)libc/misc/wchar \ -- -DL_iconv_main \ -+ -I$(top_srcdir)libc/misc/wchar - - CFLAGS-locale := $(CFLAGS-utils) - CFLAGS-getconf :=$(CFLAGS-utils) \ -diff --git a/utils/iconv.c b/utils/iconv.c -index 04e2c32..a0260df 100644 ---- a/utils/iconv.c -+++ b/utils/iconv.c -@@ -108,7 +108,12 @@ - #include - #include "wchar.c" /* for _UC_iconv_t and __iconv_codesets */ - --extern const unsigned char __iconv_codesets[]; -+#ifdef L_iconv_main -+static -+#else -+extern -+#endif -+const unsigned char __iconv_codesets[]; - - #define IBUF BUFSIZ - #define OBUF BUFSIZ --- -cgit v0.9.1 diff --git a/package/uclibc/0.9.33.2/0066-mips-rename-siginfo-_timer-members.patch b/package/uclibc/0.9.33.2/0066-mips-rename-siginfo-_timer-members.patch deleted file mode 100644 index 8ab76156ffa..00000000000 --- a/package/uclibc/0.9.33.2/0066-mips-rename-siginfo-_timer-members.patch +++ /dev/null @@ -1,157 +0,0 @@ -mips: rename siginfo _timer members - -Backport an upstream patch to fix a compilation problem of strace-4.9+ -on MIPS platforms with uClibc. - -Upstream commit: - http://git.uclibc.org/uClibc/commit/?id=a1b88fe87a9d2be5696247d266f5c4fd20f000bb - -Fixes: - http://autobuild.buildroot.net/results/e8f/e8f4965b27c9dcc58d6ec77cdc48b83c218c5bec/ - -Signed-off-by: Vicente Olivert Riera - -From a1b88fe87a9d2be5696247d266f5c4fd20f000bb Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Wed, 3 Dec 2014 17:43:25 +0100 -Subject: [PATCH] mips: rename siginfo _timer members - -Rename _timer[12] to si_tid and si_overrun to fix compilation of -strace-4.9+ - -Signed-off-by: Bernhard Reutner-Fischer ---- - libc/sysdeps/linux/mips/bits/siginfo.h | 51 ++++++++++++++++++++----------- - 1 files changed, 33 insertions(+), 18 deletions(-) - -diff --git a/libc/sysdeps/linux/mips/bits/siginfo.h b/libc/sysdeps/linux/mips/bits/siginfo.h -index a6e4135..5199d4d 100644 ---- a/libc/sysdeps/linux/mips/bits/siginfo.h -+++ b/libc/sysdeps/linux/mips/bits/siginfo.h -@@ -69,6 +69,22 @@ typedef struct siginfo - __uid_t si_uid; /* Real user ID of sending process. */ - } _kill; - -+ /* POSIX.1b timers. */ -+ struct -+ { -+ int si_tid; /* Timer ID. */ -+ int si_overrun; /* Overrun count. */ -+ sigval_t si_sigval; /* Signal value. */ -+ } _timer; -+ -+ /* POSIX.1b signals. */ -+ struct -+ { -+ __pid_t si_pid; /* Sending process ID. */ -+ __uid_t si_uid; /* Real user ID of sending process. */ -+ sigval_t si_sigval; /* Signal value. */ -+ } _rt; -+ - /* SIGCHLD. */ - struct - { -@@ -83,29 +99,15 @@ typedef struct siginfo - struct - { - void *si_addr; /* Faulting insn/memory ref. */ -+ short int si_addr_lsb; /* Valid LSB of the reported address. */ - } _sigfault; - - /* SIGPOLL. */ - struct - { -- int si_band; /* Band event for SIGPOLL. */ -+ long int si_band; /* Band event for SIGPOLL. */ - int si_fd; - } _sigpoll; -- -- /* POSIX.1b timers. */ -- struct -- { -- unsigned int _timer1; -- unsigned int _timer2; -- } _timer; -- -- /* POSIX.1b signals. */ -- struct -- { -- __pid_t si_pid; /* Sending process ID. */ -- __uid_t si_uid; /* Real user ID of sending process. */ -- sigval_t si_sigval; /* Signal value. */ -- } _rt; - } _sifields; - } siginfo_t; - -@@ -113,6 +115,8 @@ typedef struct siginfo - /* X/Open requires some more fields with fixed names. */ - # define si_pid _sifields._kill.si_pid - # define si_uid _sifields._kill.si_uid -+# define si_timerid _sifields._timer.si_tid -+# define si_overrun _sifields._timer.si_overrun - # define si_status _sifields._sigchld.si_status - # define si_utime _sifields._sigchld.si_utime - # define si_stime _sifields._sigchld.si_stime -@@ -120,6 +124,7 @@ typedef struct siginfo - # define si_int _sifields._rt.si_sigval.sival_int - # define si_ptr _sifields._rt.si_sigval.sival_ptr - # define si_addr _sifields._sigfault.si_addr -+# define si_addr_lsb _sifields._sigfault.si_addr_lsb - # define si_band _sifields._sigpoll.si_band - # define si_fd _sifields._sigpoll.si_fd - -@@ -142,13 +147,14 @@ enum - # define SI_ASYNCIO SI_ASYNCIO - SI_QUEUE, /* Sent by sigqueue. */ - # define SI_QUEUE SI_QUEUE -- SI_USER, /* Sent by kill, sigsend, raise. */ -+ SI_USER, /* Sent by kill, sigsend. */ - # define SI_USER SI_USER - SI_KERNEL = 0x80 /* Send by kernel. */ - #define SI_KERNEL SI_KERNEL - }; - - -+# if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 - /* `si_code' values for SIGILL signal. */ - enum - { -@@ -207,10 +213,16 @@ enum - # define BUS_ADRALN BUS_ADRALN - BUS_ADRERR, /* Non-existant physical address. */ - # define BUS_ADRERR BUS_ADRERR -- BUS_OBJERR /* Object specific hardware error. */ -+ BUS_OBJERR, /* Object specific hardware error. */ - # define BUS_OBJERR BUS_OBJERR -+ BUS_MCEERR_AR, /* Hardware memory error: action required. */ -+# define BUS_MCEERR_AR BUS_MCEERR_AR -+ BUS_MCEERR_AO /* Hardware memory error: action optional. */ -+# define BUS_MCEERR_AO BUS_MCEERR_AO - }; -+# endif - -+# ifdef __USE_XOPEN_EXTENDED - /* `si_code' values for SIGTRAP signal. */ - enum - { -@@ -219,7 +231,9 @@ enum - TRAP_TRACE /* Process trace trap. */ - # define TRAP_TRACE TRAP_TRACE - }; -+# endif - -+# if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8 - /* `si_code' values for SIGCHLD signal. */ - enum - { -@@ -253,6 +267,7 @@ enum - POLL_HUP /* Device disconnected. */ - # define POLL_HUP POLL_HUP - }; -+# endif - - # undef __need_siginfo_t - #endif /* !have siginfo_t && (have _SIGNAL_H || need siginfo_t). */ --- -1.7.1 - diff --git a/package/uclibc/0.9.33.2/0067-sparc-clone.S-guard-tcb-offsets.h-include-with-RESET_P.patch b/package/uclibc/0.9.33.2/0067-sparc-clone.S-guard-tcb-offsets.h-include-with-RESET_P.patch deleted file mode 100644 index a98ee688cc6..00000000000 --- a/package/uclibc/0.9.33.2/0067-sparc-clone.S-guard-tcb-offsets.h-include-with-RESET_P.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 857420a3271dc5bbddbe45a9e9878b9dc88fd143 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias -Date: Tue, 3 Mar 2015 14:56:17 -0300 -Subject: [PATCH] sparc/clone.S: guard tcb-offsets.h include with RESET_PID - -Status: upstream [uClibc] - -Otherwise we have a broken scenario with non-threading builds. - -Signed-off-by: Gustavo Zacarias ---- - libc/sysdeps/linux/sparc/clone.S | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/libc/sysdeps/linux/sparc/clone.S b/libc/sysdeps/linux/sparc/clone.S -index 8d9da5a..1d0e3e6 100644 ---- a/libc/sysdeps/linux/sparc/clone.S -+++ b/libc/sysdeps/linux/sparc/clone.S -@@ -22,7 +22,9 @@ - - #include - #include -+#ifdef RESET_PID - #include -+#endif - #include - - #define CLONE_VM 0x00000100 --- -2.0.5 - diff --git a/package/uclibc/0.9.33.2/0068-Fix-getopt-implementations-conditional-compilation.patch b/package/uclibc/0.9.33.2/0068-Fix-getopt-implementations-conditional-compilation.patch deleted file mode 100644 index 18f6a9fe664..00000000000 --- a/package/uclibc/0.9.33.2/0068-Fix-getopt-implementations-conditional-compilation.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 5184289b9f453b1e160fbfd2f0922e5ed586d910 Mon Sep 17 00:00:00 2001 -From: Max Filippov -Date: Tue, 17 Mar 2015 02:06:52 +0300 -Subject: [PATCH] Fix getopt implementations conditional compilation - -Currently there's no way to disable getsubopt: either GNU or SUSv3 -getsubopt is always built. - -Properly exclude SUSv3 getsubopt implementation when GNU getopt is -selected. -Exclude GNU getsubopt when SUSv3 getopt is selected. Honor getopt_long -configuration. - -This brings UCLIBC_HAS_GNU_GETOPT, UCLIBC_HAS_GNU_GETSUBOPT and -UCLIBC_HAS_GETOPT_LONG handling in sync with uClibc and uClibc-ng tips. - -Signed-off-by: Max Filippov ---- - libc/unistd/Makefile.in | 22 +++++++++++----------- - 1 file changed, 11 insertions(+), 11 deletions(-) - -diff --git a/libc/unistd/Makefile.in b/libc/unistd/Makefile.in -index 2704177..ec51631 100644 ---- a/libc/unistd/Makefile.in -+++ b/libc/unistd/Makefile.in -@@ -19,18 +19,18 @@ CSRC := $(filter-out __exec_alloc.c,$(CSRC)) - endif - - ifeq ($(UCLIBC_HAS_GNU_GETOPT),y) --CSRC := $(filter-out getopt-susv3.c getopt_long-simple.c,$(CSRC)) -+ CSRC := $(filter-out getopt-susv3.c getsubopt-susv3.c getopt_long-simple.c,$(CSRC)) -+ ifneq ($(UCLIBC_HAS_GNU_GETSUBOPT),y) -+ CSRC := $(filter-out getsubopt.c,$(CSRC)) -+ endif - else --CSRC := $(filter-out getopt.c,$(CSRC)) --ifneq ($(UCLIBC_HAS_GETOPT_LONG),y) --CSRC := $(filter-out getopt_long-simple.c,$(CSRC)) --endif --endif -- --ifeq ($(UCLIBC_HAS_GNU_GETSUBOPT),y) --CSRC := $(filter-out getsubopt-susv3.c,$(CSRC)) --else --CSRC := $(filter-out getsubopt.c,$(CSRC)) -+ CSRC := $(filter-out getopt.c getsubopt.c,$(CSRC)) -+ ifneq ($(UCLIBC_HAS_GETOPT_LONG),y) -+ CSRC := $(filter-out getopt_long-simple.c,$(CSRC)) -+ endif -+ ifneq ($(UCLIBC_HAS_GNU_GETSUBOPT),y) -+ CSRC := $(filter-out getsubopt-susv3.c,$(CSRC)) -+ endif - endif - - ifneq ($(UCLIBC_SUSV3_LEGACY),y) --- -1.8.1.4 - diff --git a/package/uclibc/0.9.33.2/0069-Add-missing-C99-float-ld-wrappers.patch b/package/uclibc/0.9.33.2/0069-Add-missing-C99-float-ld-wrappers.patch deleted file mode 100644 index c19d5d7170d..00000000000 --- a/package/uclibc/0.9.33.2/0069-Add-missing-C99-float-ld-wrappers.patch +++ /dev/null @@ -1,870 +0,0 @@ -From 6c4538905e65ceb203f59aaa9a61728e81c6bc0a Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Wed, 18 Mar 2015 21:32:22 +0000 -Subject: libm: Add missing C99 float/ld wrappers - -Signed-off-by: Bernhard Reutner-Fischer - -Status: upstream [uClibc] -http://git.uclibc.org/uClibc/commit/?id=6c4538905e65ceb203f59aaa9a61728e81c6bc0a - -Removed patch for ./TODO. -Needed to avoid run-time errors with mesa3d which depends on fminf - -Signed-off-by: Bernd Kuhls ---- -diff --git a/include/complex.h b/include/complex.h -index 91efc0d..ed7e502 100644 ---- a/include/complex.h -+++ b/include/complex.h -@@ -79,6 +79,7 @@ __BEGIN_DECLS - #endif - #include - #undef _Mdouble_ -+#undef _Mfloat_ - #undef __MATH_PRECNAME - - /* And the long double versions. It is non-critical to define them -@@ -97,6 +98,7 @@ __BEGIN_DECLS - # include - #endif - #undef _Mdouble_ -+#undef _Mlong_double_ - #undef __MATH_PRECNAME - #undef __MATHDECL_1 - #undef __MATHDECL -diff --git a/include/math.h b/include/math.h -index ecb9aa6..1b54c9e 100644 ---- a/include/math.h -+++ b/include/math.h -@@ -129,6 +129,7 @@ __BEGIN_DECLS - # undef _Mdouble_ - # undef _Mdouble_BEGIN_NAMESPACE - # undef _Mdouble_END_NAMESPACE -+# undef _Mfloat_ - # undef __MATH_PRECNAME - # undef __MATH_maybe_libm_hidden_proto - -@@ -176,6 +177,7 @@ extern long double __REDIRECT_NTH (nexttowardl, (long double __x, long double __ - # undef _Mdouble_ - # undef _Mdouble_BEGIN_NAMESPACE - # undef _Mdouble_END_NAMESPACE -+# undef _Mlong_double_ - # undef __MATH_PRECNAME - # undef __MATH_maybe_libm_hidden_proto - -diff --git a/libc/sysdeps/linux/common/bits/mathcalls.h b/libc/sysdeps/linux/common/bits/mathcalls.h -index 84b793c..9bebb51 100644 ---- a/libc/sysdeps/linux/common/bits/mathcalls.h -+++ b/libc/sysdeps/linux/common/bits/mathcalls.h -@@ -74,8 +74,22 @@ __MATHCALLI (atan2,, (_Mdouble_ __y, _Mdouble_ __x)) - - /* Cosine of X. */ - __MATHCALLI (cos,, (_Mdouble_ __x)) -+# if defined _LIBC && defined _Mlong_double_ -+libm_hidden_proto(cosl) -+# endif -+# if defined _LIBC && defined _Mfloat_ -+libm_hidden_proto(cosf) -+# endif -+ - /* Sine of X. */ - __MATHCALLI (sin,, (_Mdouble_ __x)) -+# if defined _LIBC && defined _Mlong_double_ -+libm_hidden_proto(sinl) -+# endif -+# if defined _LIBC && defined _Mfloat_ -+libm_hidden_proto(sinf) -+# endif -+ - /* Tangent of X. */ - __MATHCALLI (tan,, (_Mdouble_ __x)) - -@@ -111,6 +125,9 @@ __END_NAMESPACE_C99 - _Mdouble_BEGIN_NAMESPACE - /* Exponential function of X. */ - __MATHCALLI (exp,, (_Mdouble_ __x)) -+# if defined _LIBC && defined _Mlong_double_ -+libm_hidden_proto(expl) -+# endif - - /* Break VALUE into a normalized fraction and an integral power of 2. */ - __MATHCALLI (frexp,, (_Mdouble_ __x, int *__exponent)) -@@ -173,6 +190,9 @@ _Mdouble_END_NAMESPACE - __BEGIN_NAMESPACE_C99 - /* Return `sqrt(X*X + Y*Y)'. */ - __MATHCALLI (hypot,, (_Mdouble_ __x, _Mdouble_ __y)) -+# if defined _LIBC && defined _Mlong_double_ -+libm_hidden_proto(hypotl) -+# endif - __END_NAMESPACE_C99 - #endif - -@@ -298,6 +318,9 @@ __MATHCALLI (rint,, (_Mdouble_ __x)) - - /* Return X + epsilon if X < Y, X - epsilon if X > Y. */ - __MATHCALLX (nextafter,, (_Mdouble_ __x, _Mdouble_ __y), (__const__)) -+# if defined _LIBC && defined _Mlong_double_ -+libm_hidden_proto(nextafterl) -+# endif - # if defined __USE_ISOC99 && !defined __LDBL_COMPAT - __MATHCALLX (nexttoward,, (_Mdouble_ __x, long double __y), (__const__)) - # endif -diff --git a/libm/Makefile.in b/libm/Makefile.in -index 7511706..d886cdb 100644 ---- a/libm/Makefile.in -+++ b/libm/Makefile.in -@@ -75,9 +75,6 @@ libm_CSRC := \ - s_remquo.c w_exp2.c \ - cexp.c sincos.c - --# Not implemented [yet?], see comment in float_wrappers.c: --# fdimf.o fmaf.o fmaxf.o fminf.o --# nearbyintf.o remquof.o scalblnf.o tgammaf.o - FL_MOBJ := \ - acosf.o \ - acoshf.o \ -@@ -98,7 +95,11 @@ FL_MOBJ := \ - expf.o \ - expm1f.o \ - fabsf.o \ -+ fdimf.o \ - floorf.o \ -+ fmaf.o \ -+ fmaxf.o \ -+ fminf.o \ - fmodf.o \ - frexpf.o \ - gammaf.o \ -@@ -116,11 +117,14 @@ FL_MOBJ := \ - lrintf.o \ - lroundf.o \ - modff.o \ -+ nearbyintf.o \ -+ nexttowardf.o \ - powf.o \ - remainderf.o \ -+ remquof.o \ - rintf.o \ - roundf.o \ -- scalbf.o \ -+ scalblnf.o \ - scalbnf.o \ - significandf.o \ - sinf.o \ -@@ -128,9 +132,24 @@ FL_MOBJ := \ - sqrtf.o \ - tanf.o \ - tanhf.o \ -+ tgammaf.o \ - truncf.o \ - --# Not implemented [yet?]: nexttowardl.o -+ifeq ($(UCLIBC_SUSV3_LEGACY),y) -+FL_MOBJ += scalbf.o -+endif -+ -+# Do not (yet?) implement the float variants of bessel functions -+ifeq (not-yet-implemented-$(DO_XSI_MATH),y) -+FL_MOBJ += \ -+ j0f.o \ -+ j1f.o \ -+ jnf.o \ -+ y0f.o \ -+ y1f.o \ -+ ynf.o -+endif -+ - LD_MOBJ := \ - __finitel.o \ - __fpclassifyl.o \ -@@ -180,6 +199,7 @@ LD_MOBJ := \ - modfl.o \ - nearbyintl.o \ - nextafterl.o \ -+ nexttowardl.o \ - powl.o \ - remainderl.o \ - remquol.o \ -@@ -196,6 +216,17 @@ LD_MOBJ := \ - tgammal.o \ - truncl.o \ - -+# Do not (yet?) implement the long double variants of bessel functions -+ifeq (not-yet-implemented-$(DO_XSI_MATH),y) -+LD_MOBJ += \ -+ j0l.o \ -+ j1l.o \ -+ jnl.o \ -+ y0l.o \ -+ y1l.o \ -+ ynl.o -+endif -+ - else - - # This list of math functions was taken from POSIX/IEEE 1003.1b-1993 -diff --git a/libm/float_wrappers.c b/libm/float_wrappers.c -index 82b7963..105486e 100644 ---- a/libm/float_wrappers.c -+++ b/libm/float_wrappers.c -@@ -38,19 +38,14 @@ long long func##f (float x) \ - return func((double)x); \ - } - -- --/* For the time being, do _NOT_ implement these functions -- * that are defined by SuSv3 [because we don't need them -- * and nobody asked to include them] */ --#undef L_fdimf /*float fdimf(float, float);*/ --#undef L_fmaf /*float fmaf(float, float, float);*/ --#undef L_fmaxf /*float fmaxf(float, float);*/ --#undef L_fminf /*float fminf(float, float);*/ --#undef L_nearbyintf /*float nearbyintf(float);*/ --#undef L_nexttowardf /*float nexttowardf(float, long double);*/ --#undef L_remquof /*float remquof(float, float, int *);*/ --#undef L_scalblnf /*float scalblnf(float, long);*/ --#undef L_tgammaf /*float tgammaf(float);*/ -+#ifndef __DO_XSI_MATH__ -+# undef L_j0f /* float j0f(float x); */ -+# undef L_j1f /* float j1f(float x); */ -+# undef L_jnf /* float jnf(int n, float x); */ -+# undef L_y0f /* float y0f(float x); */ -+# undef L_y1f /* float y1f(float x); */ -+# undef L_ynf /* float ynf(int n, float x); */ -+#endif - - /* Implement the following, as defined by SuSv3 */ - #if 0 -@@ -155,6 +150,7 @@ float copysignf (float x, float y) - - #ifdef L_cosf - WRAPPER1(cos) -+libm_hidden_def(cosf) - #endif - - #ifdef L_coshf -@@ -242,6 +238,21 @@ float hypotf (float x, float y) - int_WRAPPER1(ilogb) - #endif - -+#ifdef L_j0f -+WRAPPER1(j0) -+#endif -+ -+#ifdef L_j1f -+WRAPPER1(j1) -+#endif -+ -+#ifdef L_jnf -+float jnf(int n, float x) -+{ -+ return (float) jn(n, (double)x); -+} -+#endif -+ - #ifdef L_ldexpf - float ldexpf (float x, int _exp) - { -@@ -306,7 +317,7 @@ WRAPPER1(nearbyint) - #ifdef L_nexttowardf - float nexttowardf (float x, long double y) - { -- return (float) nexttoward( (double)x, (double)y ); -+ return (float) nexttoward( (double)x, (long double)y ); - } - #endif - -@@ -355,6 +366,7 @@ float scalbnf (float x, int _exp) - - #ifdef L_sinf - WRAPPER1(sin) -+libm_hidden_def(sinf) - #endif - - #ifdef L_sinhf -@@ -381,13 +393,6 @@ WRAPPER1(tgamma) - WRAPPER1(trunc) - #endif - --#ifdef L_fmaf --float fmaf (float x, float y, float z) --{ -- return (float) fma( (double)x, (double)y, (double)z ); --} --#endif -- - #if defined L_scalbf && defined __UCLIBC_SUSV3_LEGACY__ - float scalbf (float x, float y) - { -@@ -402,3 +407,18 @@ WRAPPER1(gamma) - #ifdef L_significandf - WRAPPER1(significand) - #endif -+ -+#ifdef L_y0f -+WRAPPER1(y0) -+#endif -+ -+#ifdef L_y1f -+WRAPPER1(y1) -+#endif -+ -+#ifdef L_ynf -+float ynf(int n, float x) -+{ -+ return (float) yn(n, (double)x); -+} -+#endif -diff --git a/libm/ldouble_wrappers.c b/libm/ldouble_wrappers.c -index 118a78f..b4215cb 100644 ---- a/libm/ldouble_wrappers.c -+++ b/libm/ldouble_wrappers.c -@@ -42,6 +42,15 @@ long long func##l(long double x) \ - return func((double) x); \ - } - -+#ifndef __DO_XSI_MATH__ -+# undef L_j0l /* long double j0l(long double x); */ -+# undef L_j1l /* long double j1l(long double x); */ -+# undef L_jnl /* long double jnl(int n, long double x); */ -+# undef L_y0l /* long double y0l(long double x); */ -+# undef L_y1l /* long double y1l(long double x); */ -+# undef L_ynl /* long double ynl(int n, long double x); */ -+#endif -+ - /* Implement the following, as defined by SuSv3 */ - #if 0 - long double acoshl(long double); -@@ -156,6 +165,7 @@ WRAPPER1(cosh) - - #ifdef L_cosl - WRAPPER1(cos) -+libm_hidden_def(cosl) - #endif - - #ifdef L_erfcl -@@ -172,6 +182,7 @@ WRAPPER1(exp2) - - #ifdef L_expl - WRAPPER1(exp) -+libm_hidden_def(expl) - #endif - - #ifdef L_expm1l -@@ -222,12 +233,28 @@ WRAPPER1(gamma) - - #ifdef L_hypotl - WRAPPER2(hypot) -+libm_hidden_def(hypotl) - #endif - - #ifdef L_ilogbl - int_WRAPPER1(ilogb) - #endif - -+#ifdef L_j0l -+ WRAPPER1(j0) -+#endif -+ -+#ifdef L_j1l -+ WRAPPER1(j1) -+#endif -+ -+#ifdef L_jnl -+long double jnl(int n, long double x) -+{ -+ return (long double) jn(n, (double)x); -+} -+#endif -+ - #ifdef L_ldexpl - long double ldexpl (long double x, int ex) - { -@@ -291,12 +318,18 @@ WRAPPER1(nearbyint) - - #ifdef L_nextafterl - WRAPPER2(nextafter) -+libm_hidden_def(nextafterl) - #endif - --/* Disabled in Makefile.in */ --#if 0 /* def L_nexttowardl */ --WRAPPER2(nexttoward) --libm_hidden_def(nexttowardl) -+#ifdef L_nexttowardl -+# if 0 /* TODO */ -+strong_alias(nextafterl, nexttowardl) -+# else -+long double nexttowardl(long double x, long double y) -+{ -+ return nextafterl(x, y); -+} -+#endif - #endif - - #ifdef L_powl -@@ -344,6 +377,7 @@ WRAPPER1(sinh) - - #ifdef L_sinl - WRAPPER1(sin) -+libm_hidden_def(sinl) - #endif - - #ifdef L_sqrtl -@@ -370,6 +404,22 @@ WRAPPER1(trunc) - WRAPPER1(significand) - #endif - -+#ifdef L_y0l -+WRAPPER1(y0) -+#endif -+ -+#ifdef L_y1l -+WRAPPER1(y1) -+#endif -+ -+#ifdef L_ynl -+long double ynl(int n, long double x) -+{ -+ return (long double) yn(n, (double)x); -+} -+#endif -+ -+ - #if defined __DO_C99_MATH__ && !defined __NO_LONG_DOUBLE_MATH - - # ifdef L___fpclassifyl -diff --git a/libm/s_fdim.c b/libm/s_fdim.c -index 6249219..6ed695c 100644 ---- a/libm/s_fdim.c -+++ b/libm/s_fdim.c -@@ -6,13 +6,22 @@ - - #include "math.h" - #include "math_private.h" -+#include - - double fdim(double x, double y) - { -- int c = __fpclassify(x); -- if (c == FP_NAN || c == FP_INFINITE) -- return HUGE_VAL; -+ int cx = __fpclassify(x); /* need both NAN and INF */ -+ int cy = __fpclassify(y); /* need both NAN and INF */ -+ if (cx == FP_NAN || cy == NAN) -+ return x - y; - -- return x > y ? x - y : 0.0; -+ if (x <= y) -+ return .0; -+ -+ double z = x - y; -+ if (isinf(z) && cx != FP_INFINITE && cy != FP_INFINITE) -+ __set_errno(ERANGE); -+ -+ return z; - } - libm_hidden_def(fdim) -diff --git a/libm/s_fmax.c b/libm/s_fmax.c -index 21dfaa9..5f29ad8 100644 ---- a/libm/s_fmax.c -+++ b/libm/s_fmax.c -@@ -9,10 +9,10 @@ - - double fmax(double x, double y) - { -- if (__fpclassify(x) == FP_NAN) -- return x; -- if (__fpclassify(y) == FP_NAN) -+ if (isnan(x)) - return y; -+ if (isnan(y)) -+ return x; - - return x > y ? x : y; - } -diff --git a/libm/s_fmin.c b/libm/s_fmin.c -index 674d9a5..a549678 100644 ---- a/libm/s_fmin.c -+++ b/libm/s_fmin.c -@@ -9,10 +9,10 @@ - - double fmin(double x, double y) - { -- if (__fpclassify(x) == FP_NAN) -- return x; -- if (__fpclassify(y) == FP_NAN) -+ if (isnan(x)) - return y; -+ if (isnan(y)) -+ return x; - - return x < y ? x : y; - } -diff --git a/libm/s_nextafter.c b/libm/s_nextafter.c -index ee4621c..73a8ab2 100644 ---- a/libm/s_nextafter.c -+++ b/libm/s_nextafter.c -@@ -32,7 +32,7 @@ double nextafter(double x, double y) - if(((ix>=0x7ff00000)&&((ix-0x7ff00000)|lx)!=0) || /* x is nan */ - ((iy>=0x7ff00000)&&((iy-0x7ff00000)|ly)!=0)) /* y is nan */ - return x+y; -- if(x==y) return x; /* x=y, return x */ -+ if(x==y) return y; /* x=y, return y */ - if((ix|lx)==0) { /* x == 0 */ - INSERT_WORDS(x,hy&0x80000000,1); /* return +-minsubnormal */ - y = x*x; -@@ -68,3 +68,5 @@ double nextafter(double x, double y) - return x; - } - libm_hidden_def(nextafter) -+strong_alias_untyped(nextafter, nexttoward) -+libm_hidden_def(nexttoward) -diff --git a/test/math/compile_test.c b/test/math/compile_test.c -index ab8c40c..aedfde6 100644 ---- a/test/math/compile_test.c -+++ b/test/math/compile_test.c -@@ -22,11 +22,11 @@ r += exp2f(float_x); - r += expf(float_x); - r += expm1f(float_x); - r += fabsf(float_x); --/*r += fdimf(float_x, float_x); - uclibc does not have it (yet?) */ -+r += fdimf(float_x, float_x); - r += floorf(float_x); --/*r += fmaf(float_x, float_x, float_x); - uclibc does not have it (yet?) */ --/*r += fmaxf(float_x, float_x); - uclibc does not have it (yet?) */ --/*r += fminf(float_x, float_x); - uclibc does not have it (yet?) */ -+r += fmaf(float_x, float_x, float_x); -+r += fmaxf(float_x, float_x); -+r += fminf(float_x, float_x); - r += fmodf(float_x, float_x); - r += frexpf(float_x, &int_x); - r += gammaf(float_x); -@@ -44,17 +44,17 @@ r += logf(float_x); - r += lrintf(float_x); - r += lroundf(float_x); - r += modff(float_x, &float_x); --/*r += nearbyintf(float_x); - uclibc does not have it (yet?) */ --/*r += nexttowardf(float_x, long_double_x); - uclibc does not have it (yet?) */ -+r += nearbyintf(float_x); -+r += nexttowardf(float_x, long_double_x); - r += powf(float_x, float_x); - r += remainderf(float_x, float_x); --/*r += remquof(float_x, float_x, &int_x); - uclibc does not have it (yet?) */ -+r += remquof(float_x, float_x, &int_x); - r += rintf(float_x); - r += roundf(float_x); - #ifdef __UCLIBC_SUSV3_LEGACY__ - r += scalbf(float_x, float_x); - #endif --/*r += scalblnf(float_x, long_x); - uclibc does not have it (yet?) */ -+r += scalblnf(float_x, long_x); - r += scalbnf(float_x, int_x); - r += significandf(float_x); - r += sinf(float_x); -@@ -62,7 +62,7 @@ r += sinhf(float_x); - r += sqrtf(float_x); - r += tanf(float_x); - r += tanhf(float_x); --/*r += tgammaf(float_x); - uclibc does not have it (yet?) */ -+r += tgammaf(float_x); - r += truncf(float_x); - return r; - } -@@ -116,7 +116,7 @@ r += lroundl(long_double_x); - r += modfl(long_double_x, &long_double_x); - r += nearbyintl(long_double_x); - r += nextafterl(long_double_x, long_double_x); --/* r += nexttowardl(long_double_x, long_double_x); - uclibc doesn't provide this [yet?] */ -+r += nexttowardl(long_double_x, long_double_x); - r += powl(long_double_x, long_double_x); - r += remainderl(long_double_x, long_double_x); - r += remquol(long_double_x, long_double_x, &int_x); -diff --git a/test/math/libm-test.inc b/test/math/libm-test.inc -index d0f0a0c..8f0db3c 100644 ---- a/test/math/libm-test.inc -+++ b/test/math/libm-test.inc -@@ -115,6 +115,9 @@ - # define _GNU_SOURCE - #endif - -+#undef __CHK_COMPLEX_STUFF -+#define __CHK_COMPLEX_STUFF 0 -+ - #include "libm-test-ulps.h" - #include - #include -@@ -1120,8 +1123,10 @@ cacosh_test (void) - - END (cacosh, complex); - } -+#endif - - -+#if __CHK_COMPLEX_STUFF - static void - carg_test (void) - { -@@ -1188,7 +1193,9 @@ carg_test (void) - - END (carg); - } -+#endif /* __CHK_COMPLEX_STUFF */ - -+#if 0 - static void - casin_test (void) - { -@@ -1683,7 +1690,7 @@ ceil_test (void) - } - - --#if 0 -+#if __CHK_COMPLEX_STUFF - static void - cexp_test (void) - { -@@ -1746,8 +1753,9 @@ cexp_test (void) - - END (cexp, complex); - } -+#endif /* __CHK_COMPLEX_STUFF */ - -- -+#if 0 - static void - cimag_test (void) - { -@@ -2588,7 +2596,6 @@ fabs_test (void) - } - - --#if 0 - static void - fdim_test (void) - { -@@ -2624,7 +2631,6 @@ fdim_test (void) - - END (fdim); - } --#endif - - - static void -@@ -2694,7 +2700,6 @@ floor_test (void) - } - - --#if 0 - static void - fma_test (void) - { -@@ -2797,7 +2802,6 @@ fmin_test (void) - - END (fmin); - } --#endif - - - static void -@@ -3002,7 +3006,7 @@ isnormal_test (void) - END (isnormal); - } - --#if defined __DO_XSI_MATH__ -+#if defined __DO_XSI_MATH__ && !(defined TEST_LDOUBLE || defined TEST_FLOAT) - static void - j0_test (void) - { -@@ -3629,7 +3633,6 @@ modf_test (void) - } - - --#if 0 - static void - nearbyint_test (void) - { -@@ -3710,7 +3713,6 @@ nexttoward_test (void) - - END (nexttoward); - } --#endif - - - static void -@@ -3950,7 +3952,6 @@ remainder_test (void) - END (remainder); - } - --#if 0 - static void - remquo_test (void) - { -@@ -3981,7 +3982,6 @@ remquo_test (void) - - END (remquo); - } --#endif - - static void - rint_test (void) -@@ -4229,12 +4229,12 @@ round_test (void) - #endif - - -+#ifdef __UCLIBC_SUSV3_LEGACY__ - static void - scalb_test (void) - { - START (scalb); - #ifndef TEST_LDOUBLE /* uclibc doesn't have scalbl */ --#ifdef __UCLIBC_SUSV3_LEGACY__ /* scalbf is susv3 legacy */ - - TEST_ff_f (scalb, 2.0, 0.5, nan_value, INVALID_EXCEPTION); - TEST_ff_f (scalb, 3.0, -2.5, nan_value, INVALID_EXCEPTION); -@@ -4285,11 +4285,10 @@ scalb_test (void) - - TEST_ff_f (scalb, 0.8L, 4, 12.8L); - TEST_ff_f (scalb, -0.854375L, 5, -27.34L); --#endif /* __UCLIBC_SUSV3_LEGACY__ */ - #endif /* TEST_LDOUBLE */ - END (scalb); - } -- -+#endif - - static void - scalbn_test (void) -@@ -4313,7 +4312,6 @@ scalbn_test (void) - } - - --#if 0 - static void - scalbln_test (void) - { -@@ -4334,7 +4332,6 @@ scalbln_test (void) - - END (scalbn); - } --#endif - - - static void -@@ -4539,7 +4536,6 @@ tanh_test (void) - END (tanh); - } - --#if 0 - static void - tgamma_test (void) - { -@@ -4571,7 +4567,6 @@ tgamma_test (void) - - END (tgamma); - } --#endif - - - #if 0 -@@ -4651,7 +4646,7 @@ trunc_test (void) - } - #endif - --#if defined __DO_XSI_MATH__ -+#if defined __DO_XSI_MATH__ && !(defined TEST_LDOUBLE || defined TEST_FLOAT) - static void - y0_test (void) - { -@@ -4979,11 +4974,11 @@ main (int argc, char **argv) - logb_test (); - modf_test (); - ilogb_test (); -+#ifdef __UCLIBC_SUSV3_LEGACY__ - scalb_test (); -+#endif - scalbn_test (); --#if 0 - scalbln_test (); --#endif - significand_test (); - - /* Power and absolute value functions: */ -@@ -4998,16 +4993,12 @@ main (int argc, char **argv) - erfc_test (); - gamma_test (); - lgamma_test (); --#if 0 - tgamma_test (); --#endif - - /* Nearest integer functions: */ - ceil_test (); - floor_test (); --#if 0 - nearbyint_test (); --#endif - rint_test (); - #if 0 - rint_test_tonearest (); -@@ -5025,13 +5016,10 @@ main (int argc, char **argv) - /* Remainder functions: */ - fmod_test (); - remainder_test (); --#if 0 - remquo_test (); --#endif - - /* Manipulation functions: */ - copysign_test (); --#if 0 - nextafter_test (); - nexttoward_test (); - -@@ -5043,24 +5031,29 @@ main (int argc, char **argv) - /* Multiply and add: */ - fma_test (); - -+ - /* Complex functions: */ - cabs_test (); -+#if __CHK_COMPLEX_STUFF -+#if 0 - cacos_test (); - cacosh_test (); -+#endif - carg_test (); -+#if 0 - casin_test (); - casinh_test (); - catan_test (); - catanh_test (); - ccos_test (); - ccosh_test (); -+#endif - cexp_test (); -+#if 0 - cimag_test (); - clog10_test (); - clog_test (); --#if 0 - conj_test (); --#endif - cpow_test (); - cproj_test (); - creal_test (); -@@ -5070,9 +5063,10 @@ main (int argc, char **argv) - ctan_test (); - ctanh_test (); - #endif -+#endif /* __CHK_COMPLEX_STUFF */ - - /* Bessel functions: */ --#if defined __DO_XSI_MATH__ -+#if defined __DO_XSI_MATH__ && !(defined TEST_LDOUBLE || defined TEST_FLOAT) - j0_test (); - j1_test (); - jn_test (); --- -cgit v0.9.1 diff --git a/package/uclibc/0.9.33.2/0070-libm-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch b/package/uclibc/0.9.33.2/0070-libm-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch deleted file mode 100644 index 1b6ea6d7762..00000000000 --- a/package/uclibc/0.9.33.2/0070-libm-honor-NO_LONG_DOUBLE-in-ldouble_wrappers.patch +++ /dev/null @@ -1,89 +0,0 @@ -From 730db44f0824f505a31822e250b9f04b9f8e7a1b Mon Sep 17 00:00:00 2001 -From: Bernhard Reutner-Fischer -Date: Tue, 24 Mar 2015 00:11:47 +0100 -Subject: [PATCH] libm: honor NO_LONG_DOUBLE in ldouble_wrappers - -Fixes SH build breakage due to attempts to define hidden defs for -unavailable long double functions. - -Signed-off-by: Bernhard Reutner-Fischer -[Gustavo: adapt to 0.9.33.2] -Signed-off-by: Gustavo Zacarias ---- - extra/Configs/Config.in.arch | 2 +- - ldso/ldso/sh/dl-syscalls.h | 2 +- - libm/ldouble_wrappers.c | 15 +++++++++------ - 3 files changed, 11 insertions(+), 8 deletions(-) - -diff --git a/extra/Configs/Config.in.arch b/extra/Configs/Config.in.arch -index 68e03bf..0dae84b 100644 ---- a/extra/Configs/Config.in.arch -+++ b/extra/Configs/Config.in.arch -@@ -191,7 +191,7 @@ config UCLIBC_HAS_FENV - config UCLIBC_HAS_LONG_DOUBLE_MATH - bool "Enable long double support" - depends on DO_C99_MATH -- depends on TARGET_i386 || TARGET_m68k || TARGET_sparc || TARGET_x86_64 || TARGET_powerpc || TARGET_sh || TARGET_microblaze -+ depends on TARGET_aarch64 || TARGET_alpha || TARGET_i386 || TARGET_ia64 || TARGET_m68k || TARGET_powerpc || TARGET_s390 || TARGET_sparc || TARGET_tile || TARGET_x86_64 - default y - help - If you want the uClibc math library to contain the full set of C99 -diff --git a/ldso/ldso/sh/dl-syscalls.h b/ldso/ldso/sh/dl-syscalls.h -index f9f13c7..b99a9b5 100644 ---- a/ldso/ldso/sh/dl-syscalls.h -+++ b/ldso/ldso/sh/dl-syscalls.h -@@ -1,4 +1,4 @@ --#if __GNUC_PREREQ (4, 1) -+#if __GNUC_PREREQ (4, 1) && !__GNUC_PREREQ (4, 9) - #warning !!! gcc 4.1 and later have problems with __always_inline so redefined as inline - # ifdef __always_inline - # undef __always_inline -diff --git a/libm/ldouble_wrappers.c b/libm/ldouble_wrappers.c -index b4215cb..840293f 100644 ---- a/libm/ldouble_wrappers.c -+++ b/libm/ldouble_wrappers.c -@@ -16,27 +16,28 @@ - #include "math.h" - #include - --#define WRAPPER1(func) \ -+#if !defined __NO_LONG_DOUBLE_MATH -+# define WRAPPER1(func) \ - long double func##l(long double x) \ - { \ - return (long double) func((double) x); \ - } --#define WRAPPER2(func) \ -+# define WRAPPER2(func) \ - long double func##l(long double x, long double y) \ - { \ - return (long double) func((double) x, (double) y); \ - } --#define int_WRAPPER1(func) \ -+# define int_WRAPPER1(func) \ - int func##l(long double x) \ - { \ - return func((double) x); \ - } --#define long_WRAPPER1(func) \ -+# define long_WRAPPER1(func) \ - long func##l(long double x) \ - { \ - return func((double) x); \ - } --#define long_long_WRAPPER1(func) \ -+# define long_long_WRAPPER1(func) \ - long long func##l(long double x) \ - { \ - return func((double) x); \ -@@ -447,4 +448,6 @@ int_WRAPPER1(__isinf) - libm_hidden_def(__isinfl) - # endif - --#endif -+#endif /* __DO_C99_MATH__ */ -+ -+#endif /* __NO_LONG_DOUBLE_MATH */ --- -2.0.5 - diff --git a/package/uclibc/0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch b/package/uclibc/0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch deleted file mode 100644 index 287405dacf7..00000000000 --- a/package/uclibc/0.9.33.2/0071-Fix-libgcc_s_resume-issue.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 7ed8bacef45a2537646e7235092bd2e5408cd0b5 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Sun, 14 Jun 2015 15:14:22 +0200 -Subject: [PATCH] Fix libgcc_s_resume issue - -When built with gcc 5.1, uClibc fails to build with the following -issue: - - LD librt-0.9.33.2.so - librt/librt_so.a(rt-unwind-resume.oS): In function `_Unwind_Resume': - rt-unwind-resume.c:(.text+0x3c): undefined reference to `libgcc_s_resume' - collect2: error: ld returned 1 exit status - make[2]: *** [lib/librt.so] Error 1 - -This commit fixes the code in a way similar to what was done in glibc -in commit: - - https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=175cef4163dd60f95106cfd5f593b8a4e09d02c9 - -Signed-off-by: Thomas Petazzoni ---- - libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c | 3 ++- - libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-resume.c | 3 ++- - 2 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c -index f4d6f41..a6a0515 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-forcedunwind.c -@@ -27,7 +27,8 @@ - #define __libc_fatal(x) {/*write(STDERR_FILENO, x, strlen(x));*/ abort();} - - static void *libgcc_s_handle; --static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); -+static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) -+ __attribute_used__; - static _Unwind_Reason_Code (*libgcc_s_personality) - (_Unwind_State, struct _Unwind_Exception *, struct _Unwind_Context *); - static _Unwind_Reason_Code (*libgcc_s_forcedunwind) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-resume.c b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-resume.c -index f9a4ffb..e2e2e0b 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-resume.c -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/unwind-resume.c -@@ -25,7 +25,8 @@ - #define __libc_dlclose dlclose - #define __libc_fatal(x) {/*write(STDERR_FILENO, x, strlen(x));*/ abort();} - --static void (*libgcc_s_resume) (struct _Unwind_Exception *exc); -+static void (*libgcc_s_resume) (struct _Unwind_Exception *exc) -+ __attribute_used__; - static _Unwind_Reason_Code (*libgcc_s_personality) - (_Unwind_State, struct _Unwind_Exception *, struct _Unwind_Context *); - --- -2.1.0 - diff --git a/package/uclibc/0001-include-netdb.h-Do-not-define-IDN-related-flags.patch b/package/uclibc/0001-include-netdb.h-Do-not-define-IDN-related-flags.patch new file mode 100644 index 00000000000..c1985ef1c72 --- /dev/null +++ b/package/uclibc/0001-include-netdb.h-Do-not-define-IDN-related-flags.patch @@ -0,0 +1,54 @@ +From 5e9a78c8a839381add6faa61e196e6dad9143163 Mon Sep 17 00:00:00 2001 +From: Thomas Claveirole +Date: Tue, 2 Feb 2016 12:13:09 +0100 +Subject: [PATCH] include/netdb.h: Do not define IDN-related flags. + +getaddrinfo() does not implement IDN encoding, and always fail when +provided an IDN flag (e.g., AI_IDN) with EAI_BADFLAGS. Some packages +(such as the VLC media player) check for AI_IDN before they use it; +providing an unimplemented AI_IDN in the libc makes these package +fail. As a result they make calls to getaddrinfo() with AI_IDN that +always fail while they could have made successful calls without AI_IDN +instead. + +Thus, do not define IDN flags: it is better not to compile rather than +to compile a code that always fail. + +Signed-off-by: Thomas Claveirole +Signed-off-by: Waldemar Brodkorb +--- + include/netdb.h | 11 ----------- + 1 file changed, 11 deletions(-) + +diff --git a/include/netdb.h b/include/netdb.h +index a636b5f..95abe95 100644 +--- a/include/netdb.h ++++ b/include/netdb.h +@@ -627,16 +627,6 @@ struct addrinfo + # define AI_ALL 0x0010 /* Return IPv4 mapped and IPv6 addresses. */ + # define AI_ADDRCONFIG 0x0020 /* Use configuration of this host to choose + returned address type.. */ +-# ifdef __USE_GNU +-# define AI_IDN 0x0040 /* IDN encode input (assuming it is encoded +- in the current locale's character set) +- before looking it up. */ +-# define AI_CANONIDN 0x0080 /* Translate canonical name from IDN format. */ +-# define AI_IDN_ALLOW_UNASSIGNED 0x0100 /* Don't reject unassigned Unicode +- code points. */ +-# define AI_IDN_USE_STD3_ASCII_RULES 0x0200 /* Validate strings according to +- STD3 rules. */ +-# endif + # define AI_NUMERICSERV 0x0400 /* Don't use name resolution. */ + + /* Error values for `getaddrinfo' function. */ +@@ -658,7 +648,6 @@ struct addrinfo + # define EAI_NOTCANCELED -102 /* Request not canceled. */ + # define EAI_ALLDONE -103 /* All requests done. */ + # define EAI_INTR -104 /* Interrupted by a signal. */ +-# define EAI_IDN_ENCODE -105 /* IDN encoding failed. */ + # endif + + # ifdef __USE_MISC +-- +1.7.10.4 + diff --git a/package/uclibc/0002-mips-fix-build-if-threads-are-disabled.patch b/package/uclibc/0002-mips-fix-build-if-threads-are-disabled.patch new file mode 100644 index 00000000000..a74a5f9c933 --- /dev/null +++ b/package/uclibc/0002-mips-fix-build-if-threads-are-disabled.patch @@ -0,0 +1,59 @@ +From b499fe614ac5b492fc0fdc6e1fbbeeb904674159 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Wed, 3 Feb 2016 21:57:04 +0100 +Subject: [PATCH] mips: fix build if threads are disabled + +Reported-by: Gustavo Zacarias +Signed-off-by: Waldemar Brodkorb +--- + libc/string/mips/memcpy.S | 4 ++-- + libc/string/mips/memset.S | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/libc/string/mips/memcpy.S b/libc/string/mips/memcpy.S +index 3afdb2c..59f9f0a 100644 +--- a/libc/string/mips/memcpy.S ++++ b/libc/string/mips/memcpy.S +@@ -23,7 +23,7 @@ + # define PREFETCH_STORE_HINT PREFETCH_HINT_PREPAREFORSTORE + #elif _LIBC + # include +-# include ++# include + # include + # define PREFETCH_LOAD_HINT PREFETCH_HINT_LOAD_STREAMED + # define PREFETCH_STORE_HINT PREFETCH_HINT_PREPAREFORSTORE +@@ -33,7 +33,7 @@ + # define PREFETCH_LOAD_HINT PREFETCH_HINT_LOAD_STREAMED + # define PREFETCH_STORE_HINT PREFETCH_HINT_PREPAREFORSTORE + #else +-# include ++# include + # include + #endif + +diff --git a/libc/string/mips/memset.S b/libc/string/mips/memset.S +index ef8ab0b..43034ce 100644 +--- a/libc/string/mips/memset.S ++++ b/libc/string/mips/memset.S +@@ -21,7 +21,7 @@ + # define PREFETCH_STORE_HINT PREFETCH_HINT_PREPAREFORSTORE + #elif _LIBC + # include +-# include ++# include + # include + # define PREFETCH_STORE_HINT PREFETCH_HINT_PREPAREFORSTORE + #elif defined _COMPILING_NEWLIB +@@ -29,7 +29,7 @@ + # include "machine/regdef.h" + # define PREFETCH_STORE_HINT PREFETCH_HINT_PREPAREFORSTORE + #else +-# include ++# include + # include + #endif + +-- +1.7.10.4 + diff --git a/package/uclibc/Config.in b/package/uclibc/Config.in index bf40a13de39..16bf89c6274 100644 --- a/package/uclibc/Config.in +++ b/package/uclibc/Config.in @@ -1,79 +1,15 @@ if BR2_TOOLCHAIN_BUILDROOT_UCLIBC -# For legal-info config BR2_PACKAGE_UCLIBC bool default y + select BR2_PACKAGE_LINUX_HEADERS comment "uClibc Options" -config BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS - bool - -config BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - bool - -config BR2_UCLIBC_VERSION_SUPPORTS_NPTL - bool - -choice - prompt "uClibc C library Version" - default BR2_UCLIBC_VERSION_NG if !BR2_arc - help - Select the version of uClibc you wish to use. - - config BR2_UCLIBC_VERSION_0_9_33 - bool "uClibc 0.9.33.x" - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - select BR2_UCLIBC_VERSION_SUPPORTS_NPTL if !BR2_x86_i386 - depends on !(BR2_arc || BR2_xtensa) - - config BR2_UCLIBC_VERSION_ARC_GIT - bool "uClibc Git ARC" - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - select BR2_UCLIBC_VERSION_SUPPORTS_NPTL - depends on BR2_arc - - config BR2_UCLIBC_VERSION_NG - bool "uClibc-ng" - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS if BR2_m68k - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD \ - if BR2_m68k || BR2_arm || BR2_armeb - select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \ - if !BR2_m68k && !BR2_x86_i386 - - config BR2_UCLIBC_VERSION_SNAPSHOT - bool "daily snapshot" - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS if !BR2_xtensa - select BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - select BR2_UCLIBC_VERSION_SUPPORTS_NPTL \ - if !BR2_x86_i386 && !BR2_xtensa - depends on !(BR2_arc) - -endchoice - -config BR2_USE_UCLIBC_SNAPSHOT - string "Date (yyyymmdd) of snapshot or 'snapshot' for latest" - default "snapshot" - depends on BR2_UCLIBC_VERSION_SNAPSHOT - help - Use latest snapshot or one from a specific date? - -config BR2_UCLIBC_VERSION_STRING - string - default "0.9.33.2" if BR2_UCLIBC_VERSION_0_9_33 - default "arc-2015.06" if BR2_UCLIBC_VERSION_ARC_GIT - default "1.0.5" if BR2_UCLIBC_VERSION_NG - default BR2_USE_UCLIBC_SNAPSHOT if BR2_UCLIBC_VERSION_SNAPSHOT - config BR2_UCLIBC_CONFIG string "uClibc configuration file to use?" - default "package/uclibc/uClibc-0.9.33.config" if BR2_UCLIBC_VERSION_0_9_33 - default "package/uclibc/uClibc-ng.config" if BR2_UCLIBC_VERSION_NG - default "package/uclibc/uClibc-snapshot.config" if BR2_UCLIBC_VERSION_ARC_GIT - default "package/uclibc/uClibc-snapshot.config" if BR2_UCLIBC_VERSION_SNAPSHOT + default "package/uclibc/uClibc-ng.config" help Some people may wish to use their own modified uClibc configuration file and will specify their config file location with this option. @@ -111,9 +47,7 @@ config BR2_TOOLCHAIN_BUILDROOT_LOCALE choice prompt "Thread library implementation" - default BR2_PTHREADS_NATIVE if BR2_UCLIBC_VERSION_SUPPORTS_NPTL - default BR2_PTHREADS_OLD if BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD - default BR2_PTHREADS if BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS + default BR2_PTHREADS_NATIVE help Use this option to select the thread library implementation that should be used in your toolchain. @@ -124,18 +58,18 @@ choice config BR2_PTHREADS bool "linuxthreads" select BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS + depends on BR2_m68k config BR2_PTHREADS_OLD bool "linuxthreads (stable/old)" select BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_UCLIBC_VERSION_SUPPORTS_LINUXTHREADS_OLD + depends on BR2_m68k || BR2_arm || BR2_armeb config BR2_PTHREADS_NATIVE bool "Native POSIX Threading (NPTL)" select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_NPTL - depends on BR2_UCLIBC_VERSION_SUPPORTS_NPTL + depends on !BR2_m68k && !BR2_x86_i386 endchoice config BR2_PTHREAD_DEBUG diff --git a/package/uclibc/arc-2015.06/0001-nptl-remove-duplicate-vfork-in-libpthread.patch b/package/uclibc/arc-2015.06/0001-nptl-remove-duplicate-vfork-in-libpthread.patch deleted file mode 100644 index 6b609af7595..00000000000 --- a/package/uclibc/arc-2015.06/0001-nptl-remove-duplicate-vfork-in-libpthread.patch +++ /dev/null @@ -1,722 +0,0 @@ -From a22a0030f32b828c0f2e804d1ed1fe567ddab680 Mon Sep 17 00:00:00 2001 -From: Waldemar Brodkorb -Date: Sat, 20 Sep 2014 22:09:00 +0200 -Subject: [PATCH] nptl: remove duplicate vfork() in libpthread - -Automatic patching via two oneliners by Bernhard Reutner-Fischer : -sed -i -e 's/[[:space:]]pt-vfork\.[csS]//' -e '/^ASFLAGS-pt-vfork\./d' $(git grep -l pt-vfork libpthread/nptl/sysdeps) -find libpthread/nptl -name "*pt-vfork*" -exec git rm {} \; - -Reported-By: Thomas Petazzoni -Tested-by: Thomas Petazzoni -Signed-off-by: Waldemar Brodkorb ---- - .../nptl/sysdeps/unix/sysv/linux/alpha/pt-vfork.S | 42 -------------- - .../nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/arc/pt-vfork.S | 7 --- - .../nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/arm/pt-vfork.S | 37 ------------ - .../sysdeps/unix/sysv/linux/i386/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/i386/pt-vfork.S | 67 ---------------------- - .../sysdeps/unix/sysv/linux/metag/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/metag/pt-vfork.S | 51 ---------------- - .../sysdeps/unix/sysv/linux/mips/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/mips/pt-vfork.S | 37 ------------ - .../sysdeps/unix/sysv/linux/powerpc/Makefile.arch | 2 +- - .../unix/sysv/linux/powerpc/powerpc32/pt-vfork.S | 48 ---------------- - .../unix/sysv/linux/powerpc/powerpc64/pt-vfork.S | 48 ---------------- - .../sysdeps/unix/sysv/linux/powerpc/pt-vfork.S | 5 -- - .../nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/sh/pt-vfork.S | 64 --------------------- - .../sysdeps/unix/sysv/linux/sparc/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/sparc/pt-vfork.S | 44 -------------- - .../sysdeps/unix/sysv/linux/x86_64/Makefile.arch | 2 +- - .../nptl/sysdeps/unix/sysv/linux/x86_64/pt-vfork.S | 32 ----------- - 21 files changed, 9 insertions(+), 491 deletions(-) - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/alpha/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arc/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/arm/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/i386/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/metag/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/sh/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-vfork.S - delete mode 100644 libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pt-vfork.S - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/pt-vfork.S -deleted file mode 100644 -index a6005c1..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/alpha/pt-vfork.S -+++ /dev/null -@@ -1,42 +0,0 @@ --/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, see -- . */ -- --#include --#include -- --#undef PSEUDO_PREPARE_ARGS --#define PSEUDO_PREPARE_ARGS \ -- /* Load the current cached pid value across the vfork. */ \ -- rduniq; \ -- ldl a2, PID_OFFSET(v0); \ -- mov v0, a1; \ -- /* Write back its negation, to indicate that the pid value is \ -- uninitialized in the the child, and in the window between \ -- here and the point at which we restore the value. */ \ -- negl a2, t0; \ -- stl t0, PID_OFFSET(v0); -- --PSEUDO (__vfork, vfork, 0) -- -- /* If we're back in the parent, restore the saved pid. */ -- beq v0, 1f -- stl a2, PID_OFFSET(a1) --1: ret -- --PSEUDO_END (__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch -index 8e3c7b0..3b9db6a 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/arc/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S -+libpthread_linux_arch_SSRC = - libpthread_linux_arch_CSRC = pthread_once.c lowlevellock.c \ - pt-__syscall_rt_sigaction.c pt-__syscall_error.c - -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arc/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/arc/pt-vfork.S -deleted file mode 100644 -index f222dca..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/arc/pt-vfork.S -+++ /dev/null -@@ -1,7 +0,0 @@ --/* -- * Copyright (C) 2013 Synopsys, Inc. (www.synopsys.com) -- * -- * Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball. -- */ -- --#include "vfork.S" -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch -index c8d5d4a..e61072e 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S -+libpthread_linux_arch_SSRC = - libpthread_linux_arch_CSRC = pthread_once.c \ - pt-__syscall_rt_sigaction.c pt-__syscall_error.c \ - lowlevellock.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/pt-vfork.S -deleted file mode 100644 -index df18f03..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/pt-vfork.S -+++ /dev/null -@@ -1,37 +0,0 @@ --/* Copyright (C) 2005 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, see -- . */ -- --#include -- --/* Save the PID value. */ --#define SAVE_PID \ -- str lr, [sp, #-4]!; /* Save LR. */ \ -- mov r0, #0xffff0fff; /* Point to the high page. */ \ -- mov lr, pc; /* Save our return address. */ \ -- sub pc, r0, #31; /* Jump to the TLS entry. */ \ -- ldr lr, [sp], #4; /* Restore LR. */ \ -- mov r2, r0; /* Save the TLS addr in r2. */ \ -- ldr r3, [r2, #PID_OFFSET]; /* Load the saved PID. */ \ -- rsb r0, r3, #0; /* Negate it. */ \ -- str r0, [r2, #PID_OFFSET] /* Store the temporary PID. */ -- --/* Restore the old PID value in the parent. */ --#define RESTORE_PID \ -- cmp r0, #0; /* If we are the parent... */ \ -- strne r3, [r2, #PID_OFFSET] /* ... restore the saved PID. */ -- --#include "../../../../../../../libc/sysdeps/linux/arm/vfork.S" -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch -index fff0dae..9dc878c 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S clone.S pthread_spin_unlock.S pthread_once.S -+libpthread_linux_arch_SSRC = clone.S pthread_spin_unlock.S pthread_once.S - libpthread_linux_arch_CSRC = pthread_spin_init.c pt-__syscall_error.c - - libc_linux_arch_CSRC = fork.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/i386/pt-vfork.S -deleted file mode 100644 -index 5bba782..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/i386/pt-vfork.S -+++ /dev/null -@@ -1,67 +0,0 @@ --/* Copyright (C) 1999, 2002, 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- Contributed by Andreas Schwab . -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, see -- . */ -- --#include --#define _ERRNO_H 1 --#include --#include --#include -- --/* Save the PID value. */ --#define SAVE_PID \ -- movl %gs:PID, %edx; \ -- movl %edx, %eax; \ -- negl %eax; \ -- movl %eax, %gs:PID -- --/* Restore the old PID value in the parent. */ --#define RESTORE_PID \ -- testl %eax, %eax; \ -- je 1f; \ -- movl %edx, %gs:PID; \ --1: -- --/* Clone the calling process, but without copying the whole address space. -- The calling process is suspended until the new process exits or is -- replaced by a call to `execve'. Return -1 for errors, 0 to the new process, -- and the process ID of the new process to the old process. */ -- --ENTRY (__vfork) -- /* Pop the return PC value into ECX. */ -- popl %ecx -- -- SAVE_PID -- -- /* Stuff the syscall number in EAX and enter into the kernel. */ -- movl $SYS_ify (vfork), %eax -- int $0x80 -- -- RESTORE_PID -- -- /* Jump to the return PC. Don't jump directly since this -- disturbs the branch target cache. Instead push the return -- address back on the stack. */ -- pushl %ecx -- -- cmpl $-4095, %eax -- jae SYSCALL_ERROR_LABEL /* Branch forward if it failed. */ --L(pseudo_end): -- ret --PSEUDO_END (__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/metag/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/metag/Makefile.arch -index 4d02d0c..ddc7680 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/metag/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/metag/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1 or later, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S -+libpthread_linux_arch_SSRC = - libpthread_linux_arch_CSRC = pthread_once.c \ - pt-__syscall_rt_sigaction.c pt-__syscall_error.c \ - lowlevellock.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/metag/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/metag/pt-vfork.S -deleted file mode 100644 -index 489c749..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/metag/pt-vfork.S -+++ /dev/null -@@ -1,51 +0,0 @@ --/* Copyright (C) 2005 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, write to the Free -- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -- 02111-1307 USA. */ -- --#include --#include -- --#ifdef __PIC__ --#define __VFORK_METAG_LOAD_TP ___metag_load_tp@PLT --#else --#define __VFORK_METAG_LOAD_TP ___metag_load_tp --#endif -- --/* Save the PID value. */ --#define SAVE_PID \ -- SETL [A0StP++], D0FrT, D1RtP; \ -- CALLR D1RtP, __VFORK_METAG_LOAD_TP; \ -- SUB D0Re0, D0Re0, #TLS_PRE_TCB_SIZE; \ -- GETD D0FrT, [D0Re0 + #PID]; \ -- NEG D0FrT, D0FrT; \ -- SETD [D0Re0 + #PID], D0FrT; \ -- GETL D0FrT, D1RtP, [--A0StP]; -- --#define RESTORE_PID \ -- CMP D0Re0, #0; \ -- BEQ 1f; \ -- MSETL [A0StP++], D0Re0, D0FrT; \ -- CALLR D1RtP, __VFORK_METAG_LOAD_TP; \ -- SUB D0Re0, D0Re0, #TLS_PRE_TCB_SIZE; \ -- GETD D0FrT, [D0Re0 + #PID]; \ -- NEG D0FrT, D0FrT; \ -- SETD [D0Re0 + #PID], D0FrT; \ -- GETL D0FrT, D1RtP, [--A0StP]; \ -- GETL D0Re0, D1Re0, [--A0StP]; \ --1: -- --#include <../../../../../../../libc/sysdeps/linux/metag/vfork.S> -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch -index 4a3d0f2..f87dedc 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S clone.S -+libpthread_linux_arch_SSRC = clone.S - libpthread_linux_arch_CSRC = pthread_once.c pt-__syscall_rt_sigaction.c - - libc_linux_arch_CSRC = fork.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-vfork.S -deleted file mode 100644 -index 52fbde3..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/mips/pt-vfork.S -+++ /dev/null -@@ -1,37 +0,0 @@ --/* Copyright (C) 2005 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, see -- . */ -- --#include --#include -- --/* Save the PID value. */ --#define SAVE_PID \ -- READ_THREAD_POINTER(v1); /* Get the thread pointer. */ \ -- lw a2, PID_OFFSET(v1); /* Load the saved PID. */ \ -- subu a2, $0, a2; /* Negate it. */ \ -- sw a2, PID_OFFSET(v1); /* Store the temporary PID. */ -- --/* Restore the old PID value in the parent. */ --#define RESTORE_PID \ -- beqz v0, 1f; /* If we are the parent... */ \ -- READ_THREAD_POINTER(v1); /* Get the thread pointer. */ \ -- lw a2, PID_OFFSET(v1); /* Load the saved PID. */ \ -- subu a2, $0, a2; /* Re-negate it. */ \ -- sw a2, PID_OFFSET(v1); /* Restore the PID. */ \ --1: -- --#include <../../../../../../../libc/sysdeps/linux/mips/vfork.S> -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/Makefile.arch -index 21b9b72..df4bb69 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S -+libpthread_linux_arch_SSRC = - libpthread_linux_arch_CSRC = pthread_once.c pt-__syscall_error.c - - libc_linux_arch_CSRC = fork.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/pt-vfork.S -deleted file mode 100644 -index 2f82504..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32/pt-vfork.S -+++ /dev/null -@@ -1,48 +0,0 @@ --/* Copyright (C) 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- Contributed by Jakub Jelinek , 2004. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, see -- . */ -- --#include --#define _ERRNO_H 1 --#include --#include --#include -- --/* Clone the calling process, but without copying the whole address space. -- The calling process is suspended until the new process exits or is -- replaced by a call to `execve'. Return -1 for errors, 0 to the new process, -- and the process ID of the new process to the old process. */ -- --ENTRY (__vfork) -- lwz 0,PID(2) -- neg 0,0 -- stw 0,PID(2) -- -- DO_CALL (SYS_ify (vfork)) -- -- cmpwi 1,3,0 -- beqlr- 1 -- -- lwz 0,PID(2) -- neg 0,0 -- stw 0,PID(2) -- -- PSEUDO_RET -- --PSEUDO_END (__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/pt-vfork.S -deleted file mode 100644 -index 12e47b3..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/pt-vfork.S -+++ /dev/null -@@ -1,48 +0,0 @@ --/* Copyright (C) 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- Contributed by Jakub Jelinek , 2004. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, see -- . */ -- --#include --#define _ERRNO_H 1 --#include --#include --#include -- --/* Clone the calling process, but without copying the whole address space. -- The calling process is suspended until the new process exits or is -- replaced by a call to `execve'. Return -1 for errors, 0 to the new process, -- and the process ID of the new process to the old process. */ -- --ENTRY (__vfork) -- lwz 0,PID(13) -- neg 0,0 -- stw 0,PID(13) -- -- DO_CALL (SYS_ify (vfork)) -- -- cmpwi 1,3,0 -- beqlr- 1 -- -- lwz 0,PID(13) -- neg 0,0 -- stw 0,PID(13) -- -- PSEUDO_RET -- --PSEUDO_END (__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/pt-vfork.S -deleted file mode 100644 -index 0225219..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/powerpc/pt-vfork.S -+++ /dev/null -@@ -1,5 +0,0 @@ --#if defined __powerpc64__ --# include "powerpc64/pt-vfork.S" --#else --# include "powerpc32/pt-vfork.S" --#endif -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch -index 154dd6e..908d9e1 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S pthread_once.S pthread_rwlock_wrlock.S \ -+libpthread_linux_arch_SSRC = pthread_once.S pthread_rwlock_wrlock.S \ - pthread_rwlock_rdlock.S pthread_rwlock_unlock.S \ - lowlevellock.S lowlevelrobustlock.S pthread_barrier_wait.S \ - pthread_cond_broadcast.S pthread_cond_signal.S \ -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/sh/pt-vfork.S -deleted file mode 100644 -index 56aa6d0..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sh/pt-vfork.S -+++ /dev/null -@@ -1,64 +0,0 @@ --/* Copyright (C) 2003, 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, see -- . */ -- --#include --#define _ERRNO_H 1 --#include --#include -- --/* Clone the calling process, but without copying the whole address space. -- The calling process is suspended until the new process exits or is -- replaced by a call to `execve'. Return -1 for errors, 0 to the new process, -- and the process ID of the new process to the old process. */ -- --ENTRY (__vfork) -- /* Save the PID value. */ -- stc gbr, r2 -- mov.w .L2, r0 -- mov.l @(r0,r2), r4 -- neg r4, r1 -- mov.l r1, @(r0,r2) -- -- mov.w .L1, r3 -- trapa #0x10 -- mov r0, r1 -- -- /* Restore the old PID value in the parent. */ -- tst r0, r0 -- bt/s 2f -- stc gbr, r2 -- mov.w .L2, r0 -- mov.l r4, @(r0,r2) -- mov r1, r0 --2: -- mov #-12, r2 -- shad r2, r1 -- not r1, r1 // r1=0 means r0 = -1 to -4095 -- tst r1, r1 // i.e. error in linux -- bf .Lpseudo_end -- SYSCALL_ERROR_HANDLER --.Lpseudo_end: -- rts -- nop --.L1: -- .word __NR_vfork --.L2: -- .word PID - TLS_PRE_TCB_SIZE -- --PSEUDO_END (__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch -index 2b2b5f5..01a9e87 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S clone.S -+libpthread_linux_arch_SSRC = clone.S - libpthread_linux_arch_CSRC = pthread_once.c lowlevellock.c \ - pthread_barrier_init.c pthread_barrier_wait.c pthread_barrier_destroy.c \ - pt-__syscall_error.c -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-vfork.S -deleted file mode 100644 -index 37231a8..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/sparc/pt-vfork.S -+++ /dev/null -@@ -1,44 +0,0 @@ --/* Copyright (C) 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- Contributed by Jakub Jelinek , 2004. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, see -- . */ -- --#include --#include -- -- .text -- .globl __syscall_error --ENTRY(__vfork) -- ld [%g7 + PID], %o5 -- sub %g0, %o5, %o4 -- st %o4, [%g7 + PID] -- -- LOADSYSCALL(vfork) -- ta 0x10 -- bcc 2f -- mov %o7, %g1 -- st %o5, [%g7 + PID] -- call __syscall_error -- mov %g1, %o7 --2: sub %o1, 1, %o1 -- andcc %o0, %o1, %o0 -- bne,a 1f -- st %o5, [%g7 + PID] --1: retl -- nop --END(__vfork) -- --weak_alias (__vfork, vfork) -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/Makefile.arch -index ebd5060..af14164 100644 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/Makefile.arch -+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --libpthread_linux_arch_SSRC = pt-vfork.S clone.S pthread_once.S \ -+libpthread_linux_arch_SSRC = clone.S pthread_once.S \ - lowlevellock.S pthread_barrier_wait.S pthread_cond_signal.S pthread_cond_broadcast.S \ - sem_post.S sem_timedwait.S lowlevelrobustlock.S \ - sem_trywait.S sem_wait.S pthread_rwlock_rdlock.S pthread_rwlock_wrlock.S \ -diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pt-vfork.S b/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pt-vfork.S -deleted file mode 100644 -index 08a085c..0000000 ---- a/libpthread/nptl/sysdeps/unix/sysv/linux/x86_64/pt-vfork.S -+++ /dev/null -@@ -1,32 +0,0 @@ --/* Copyright (C) 2004 Free Software Foundation, Inc. -- This file is part of the GNU C Library. -- -- The GNU C Library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Lesser General Public -- License as published by the Free Software Foundation; either -- version 2.1 of the License, or (at your option) any later version. -- -- The GNU C Library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public -- License along with the GNU C Library; if not, see -- . */ -- --#include -- --#define SAVE_PID \ -- movl %fs:PID, %esi; \ -- movl %esi, %edx; \ -- negl %edx; \ -- movl %edx, %fs:PID -- --#define RESTORE_PID \ -- testq %rax, %rax; \ -- je 1f; \ -- movl %esi, %fs:PID; \ --1: -- --#include <../../../../../../../libc/sysdeps/linux/x86_64/vfork.S> --- -2.4.3 - diff --git a/package/uclibc/arc-2015.06/0002-ARCv2-update-memset-so-it-could-be-used-without-doub.patch b/package/uclibc/arc-2015.06/0002-ARCv2-update-memset-so-it-could-be-used-without-doub.patch deleted file mode 100644 index 647f97eb645..00000000000 --- a/package/uclibc/arc-2015.06/0002-ARCv2-update-memset-so-it-could-be-used-without-doub.patch +++ /dev/null @@ -1,81 +0,0 @@ -From 9b79d39b027f0a44215c4c13f7fd23b710727c37 Mon Sep 17 00:00:00 2001 -From: Alexey Brodkin -Date: Thu, 16 Jul 2015 11:38:29 +0300 -Subject: [PATCH] ARCv2: update memset() so it could be used without double - load/stores - -Existing version of memset() relies on existence of 64-bit load/stores. -While ARC HS38 may not have those instructions implemented in SoC. - -Proposed implementation checks if "-mno-ll64" option was passed to gcc -(for ARCv2 "-mll64" is set implicitly by default) by checking __LL64__ -definition and if it is not defined uses 32-bit load/stores. - -Signed-off-by: Claudiu Zissulescu -Signed-off-by: Alexey Brodkin -Cc: Vineet Gupta ---- - libc/string/arc/arcv2/memset.S | 30 ++++++++++++++++++++++++++++++ - 1 file changed, 30 insertions(+) - -diff --git a/libc/string/arc/arcv2/memset.S b/libc/string/arc/arcv2/memset.S -index d076ad1..0918d37 100644 ---- a/libc/string/arc/arcv2/memset.S -+++ b/libc/string/arc/arcv2/memset.S -@@ -52,6 +52,7 @@ ENTRY(memset) - lpnz @.Lset64bytes - ;; LOOP START - PREWRITE(r3, 64) ;Prefetch the next write location -+#ifdef __LL64__ - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] -@@ -60,16 +61,45 @@ ENTRY(memset) - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] -+#else -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+#endif - .Lset64bytes: - - lsr.f lp_count, r2, 5 ;Last remaining max 124 bytes - lpnz .Lset32bytes - ;; LOOP START - prefetchw [r3, 32] ;Prefetch the next write location -+#ifdef __LL64__ - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] - std.ab r4, [r3, 8] -+#else -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+ st.ab r4, [r3, 4] -+#endif - .Lset32bytes: - - and.f lp_count, r2, 0x1F ;Last remaining 31 bytes --- -2.4.3 - diff --git a/package/uclibc/uClibc-0.9.33.config b/package/uclibc/uClibc-0.9.33.config deleted file mode 100644 index afee4fd7d5c..00000000000 --- a/package/uclibc/uClibc-0.9.33.config +++ /dev/null @@ -1,277 +0,0 @@ -# -# Automatically generated make config: don't edit -# Version: 0.9.32-git -# Fri Jul 9 22:31:59 2010 -# -# TARGET_alpha is not set -# TARGET_arm is not set -# TARGET_avr32 is not set -# TARGET_bfin is not set -# TARGET_cris is not set -# TARGET_e1 is not set -# TARGET_frv is not set -# TARGET_h8300 is not set -# TARGET_hppa is not set -# TARGET_i386 is not set -# TARGET_i960 is not set -# TARGET_ia64 is not set -# TARGET_m68k is not set -# TARGET_microblaze is not set -# TARGET_mips is not set -# TARGET_nios is not set -# TARGET_nios2 is not set -# TARGET_powerpc is not set -# TARGET_sh is not set -# TARGET_sh64 is not set -# TARGET_sparc is not set -# TARGET_v850 is not set -# TARGET_vax is not set -# TARGET_x86_64 is not set -# TARGET_xtensa is not set -# TARGET_c6x is not set - -# CONFIG_GENERIC_ARM is not set -# CONFIG_ARM610 is not set -# CONFIG_ARM710 is not set -# CONFIG_ARM7TDMI is not set -# CONFIG_ARM720T is not set -# CONFIG_ARM920T is not set -# CONFIG_ARM922T is not set -# CONFIG_ARM926T is not set -# CONFIG_ARM10T is not set -# CONFIG_ARM1136JF_S is not set -# CONFIG_ARM1176JZ_S is not set -# CONFIG_ARM1176JZF_S is not set -# CONFIG_ARM_CORTEX_M3 is not set -# CONFIG_ARM_CORTEX_M1 is not set -# CONFIG_ARM_SA110 is not set -# CONFIG_ARM_SA1100 is not set -# CONFIG_ARM_XSCALE is not set -# CONFIG_ARM_IWMMXT is not set - -# COMPILE_IN_THUMB_MODE is not set -USE_BX=y - -TARGET_SUBARCH="" -# -# Target Architecture Features and Options -# -TARGET_ARCH="none" -FORCE_OPTIONS_FOR_ARCH=y -# -# Using ELF file format -# -# ARCH_LITTLE_ENDIAN is not set -# ARCH_BIG_ENDIAN is not set -# ARCH_WANTS_LITTLE_ENDIAN is not set -# ARCH_WANTS_BIG_ENDIAN is not set -ARCH_HAS_MMU=y -ARCH_USE_MMU=y -UCLIBC_HAS_FLOATS=y -UCLIBC_HAS_FPU=y -DO_C99_MATH=y -# DO_XSI_MATH is not set -# UCLIBC_HAS_FENV is not set -UCLIBC_HAS_LONG_DOUBLE_MATH=y -KERNEL_HEADERS="/usr/src/linux/include" -HAVE_DOT_CONFIG=y - -# -# General Library Settings -# -# HAVE_NO_PIC is not set -DOPIC=y -# ARCH_HAS_NO_SHARED is not set -# ARCH_HAS_NO_LDSO is not set -# FORCE_SHAREABLE_TEXT_SEGMENTS is not set -LDSO_LDD_SUPPORT=y -# LDSO_CACHE_SUPPORT is not set -LDSO_PRELOAD_ENV_SUPPORT=y -# LDSO_PRELOAD_FILE_SUPPORT is not set -# LDSO_STANDALONE_SUPPORT is not set -# LDSO_PRELINK_SUPPORT is not set -# UCLIBC_STATIC_LDCONFIG is not set -LDSO_RUNPATH=y -LDSO_SEARCH_INTERP_PATH=y -LDSO_LD_LIBRARY_PATH=y -# LDSO_NO_CLEANUP is not set -UCLIBC_CTOR_DTOR=y -# LDSO_GNU_HASH_SUPPORT is not set -# HAS_NO_THREADS is not set -LINUXTHREADS_OLD=y -# LINUXTHREADS_NEW is not set -# UCLIBC_HAS_THREADS_NATIVE is not set -UCLIBC_HAS_THREADS=y -# PTHREADS_DEBUG_SUPPORT is not set -UCLIBC_HAS_SYSLOG=y -UCLIBC_HAS_LFS=y -# MALLOC is not set -# MALLOC_SIMPLE is not set -MALLOC_STANDARD=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_DYNAMIC_ATEXIT=y -# COMPAT_ATEXIT is not set -UCLIBC_SUSV3_LEGACY=y -# UCLIBC_SUSV3_LEGACY_MACROS is not set -UCLIBC_SUSV4_LEGACY=y -# UCLIBC_STRICT_HEADERS is not set -# UCLIBC_HAS_STUBS is not set -UCLIBC_HAS_SHADOW=y -UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y -UCLIBC_HAS___PROGNAME=y -UCLIBC_HAS_PTY=y -ASSUME_DEVPTS=y -UNIX98PTY_ONLY=y -UCLIBC_HAS_GETPT=y -UCLIBC_HAS_LIBUTIL=y -UCLIBC_HAS_TM_EXTENSIONS=y -UCLIBC_HAS_TZ_CACHING=y -UCLIBC_HAS_TZ_FILE=y -UCLIBC_HAS_TZ_FILE_READ_MANY=y -UCLIBC_TZ_FILE_PATH="/etc/TZ" -UCLIBC_FALLBACK_TO_ETC_LOCALTIME=y - -# -# Advanced Library Settings -# -UCLIBC_PWD_BUFFER_SIZE=256 -UCLIBC_GRP_BUFFER_SIZE=256 - -# -# Support various families of functions -# -UCLIBC_LINUX_MODULE_26=y -# UCLIBC_LINUX_MODULE_24 is not set -UCLIBC_LINUX_SPECIFIC=y -UCLIBC_HAS_GNU_ERROR=y -UCLIBC_BSD_SPECIFIC=y -UCLIBC_HAS_BSD_ERR=y -# UCLIBC_HAS_OBSOLETE_BSD_SIGNAL is not set -# UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set -# UCLIBC_NTP_LEGACY is not set -# UCLIBC_SV4_DEPRECATED is not set -UCLIBC_HAS_REALTIME=y -UCLIBC_HAS_ADVANCED_REALTIME=y -UCLIBC_HAS_EPOLL=y -UCLIBC_HAS_XATTR=y -UCLIBC_HAS_PROFILING=y -UCLIBC_HAS_CRYPT_IMPL=y -# UCLIBC_HAS_SHA256_CRYPT_IMPL is not set -# UCLIBC_HAS_SHA512_CRYPT_IMPL is not set -UCLIBC_HAS_CRYPT=y -UCLIBC_HAS_NETWORK_SUPPORT=y -UCLIBC_HAS_SOCKET=y -UCLIBC_HAS_IPV4=y -# UCLIBC_HAS_IPV6 is not set -# UCLIBC_HAS_RPC is not set -# UCLIBC_HAS_FULL_RPC is not set -# UCLIBC_HAS_REENTRANT_RPC is not set -UCLIBC_USE_NETLINK=y -UCLIBC_SUPPORT_AI_ADDRCONFIG=y -# UCLIBC_HAS_BSD_RES_CLOSE is not set -UCLIBC_HAS_COMPAT_RES_STATE=y -# UCLIBC_HAS_EXTRA_COMPAT_RES_STATE is not set -UCLIBC_HAS_RESOLVER_SUPPORT=y -UCLIBC_HAS_LIBRESOLV_STUB=y -UCLIBC_HAS_LIBNSL_STUB=y - -# -# String and Stdio Support -# -UCLIBC_HAS_STRING_GENERIC_OPT=y -UCLIBC_HAS_STRING_ARCH_OPT=y -UCLIBC_HAS_CTYPE_TABLES=y -UCLIBC_HAS_CTYPE_SIGNED=y -# UCLIBC_HAS_CTYPE_UNSAFE is not set -UCLIBC_HAS_CTYPE_CHECKED=y -# UCLIBC_HAS_CTYPE_ENFORCED is not set -# UCLIBC_HAS_WCHAR is not set -# UCLIBC_HAS_LOCALE is not set -UCLIBC_HAS_HEXADECIMAL_FLOATS=y -# UCLIBC_HAS_GLIBC_DIGIT_GROUPING is not set -UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -# USE_OLD_VFPRINTF is not set -UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 -UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y -# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set -# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set -UCLIBC_HAS_STDIO_BUFSIZ_4096=y -# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set -UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set -# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set -# UCLIBC_HAS_STDIO_GETC_MACRO is not set -# UCLIBC_HAS_STDIO_PUTC_MACRO is not set -UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y -# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y -# UCLIBC_HAS_FOPEN_CLOSEEXEC_MODE is not set -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y -UCLIBC_HAS_PRINTF_M_SPEC=y -UCLIBC_HAS_ERRNO_MESSAGES=y -# UCLIBC_HAS_SYS_ERRLIST is not set -UCLIBC_HAS_SIGNUM_MESSAGES=y -# UCLIBC_HAS_SYS_SIGLIST is not set -UCLIBC_HAS_GNU_GETOPT=y -UCLIBC_HAS_GNU_GETSUBOPT=y - -# -# Big and Tall -# -UCLIBC_HAS_REGEX=y -# UCLIBC_HAS_REGEX_OLD is not set -UCLIBC_HAS_FNMATCH=y -# UCLIBC_HAS_FNMATCH_OLD is not set -# UCLIBC_HAS_WORDEXP is not set -UCLIBC_HAS_NFTW=y -UCLIBC_HAS_FTW=y -# UCLIBC_HAS_FTS is not set -UCLIBC_HAS_GLOB=y -UCLIBC_HAS_GNU_GLOB=y -UCLIBC_HAS_UTMPX=y - -# -# Library Installation Options -# -RUNTIME_PREFIX="/" -DEVEL_PREFIX="/usr/" -MULTILIB_DIR="lib" -HARDWIRED_ABSPATH=y - -# -# Security options -# -# UCLIBC_BUILD_PIE is not set -# UCLIBC_HAS_ARC4RANDOM is not set -# HAVE_NO_SSP is not set -UCLIBC_HAS_SSP=y -# UCLIBC_HAS_SSP_COMPAT is not set -# SSP_QUICK_CANARY is not set -PROPOLICE_BLOCK_ABRT=y -# PROPOLICE_BLOCK_SEGV is not set -# UCLIBC_BUILD_SSP is not set -UCLIBC_BUILD_RELRO=y -UCLIBC_BUILD_NOW=y -UCLIBC_BUILD_NOEXECSTACK=y - -# -# uClibc development/debugging options -# -CROSS_COMPILER_PREFIX="" -UCLIBC_EXTRA_CFLAGS="" -# DODEBUG is not set -# DODEBUG_PT is not set -# DOSTRIP is not set -# DOASSERTS is not set -# SUPPORT_LD_DEBUG is not set -# SUPPORT_LD_DEBUG_EARLY is not set -# UCLIBC_MALLOC_DEBUGGING is not set -# UCLIBC_HAS_BACKTRACE is not set -WARNINGS="-Wall" -# EXTRA_WARNINGS is not set -# DOMULTI is not set -# UCLIBC_MJN3_ONLY is not set diff --git a/package/uclibc/uClibc-ng.config b/package/uclibc/uClibc-ng.config index 65235855150..c17603db24a 100644 --- a/package/uclibc/uClibc-ng.config +++ b/package/uclibc/uClibc-ng.config @@ -24,8 +24,8 @@ UCLIBC_HAS_LIBNSL_STUB=y UCLIBC_HAS_CTYPE_CHECKED=y UCLIBC_HAS_HEXADECIMAL_FLOATS=y UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -# UCLIBC_HAS_STDIO_GETC_MACRO is not set -# UCLIBC_HAS_STDIO_PUTC_MACRO is not set +UCLIBC_HAS_STDIO_GETC_MACRO=y +UCLIBC_HAS_STDIO_PUTC_MACRO=y UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y UCLIBC_HAS_PRINTF_M_SPEC=y diff --git a/package/uclibc/uClibc-snapshot.config b/package/uclibc/uClibc-snapshot.config deleted file mode 100644 index f999a753102..00000000000 --- a/package/uclibc/uClibc-snapshot.config +++ /dev/null @@ -1,41 +0,0 @@ -DO_C99_MATH=y -KERNEL_HEADERS="/usr/src/linux/include" -# LDSO_CACHE_SUPPORT is not set -# UCLIBC_STATIC_LDCONFIG is not set -LDSO_RUNPATH=y -LINUXTHREADS_OLD=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_HAS_OBSTACK=y -UCLIBC_HAS_UTMPX=y -UCLIBC_HAS_UTMP=y -UCLIBC_SUSV2_LEGACY=y -UCLIBC_SUSV3_LEGACY=y -UCLIBC_HAS_CONTEXT_FUNCS=y -UCLIBC_SUSV4_LEGACY=y -UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y -UCLIBC_HAS_GETPT=y -UCLIBC_HAS_LIBUTIL=y -UCLIBC_HAS_OBSOLETE_BSD_SIGNAL=y -UCLIBC_USE_NETLINK=y -UCLIBC_SUPPORT_AI_ADDRCONFIG=y -UCLIBC_HAS_RESOLVER_SUPPORT=y -UCLIBC_HAS_LIBRESOLV_STUB=y -UCLIBC_HAS_LIBNSL_STUB=y -UCLIBC_HAS_CTYPE_CHECKED=y -UCLIBC_HAS_HEXADECIMAL_FLOATS=y -UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -# UCLIBC_HAS_STDIO_GETC_MACRO is not set -# UCLIBC_HAS_STDIO_PUTC_MACRO is not set -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y -UCLIBC_HAS_PRINTF_M_SPEC=y -# UCLIBC_HAS_REGEX_OLD is not set -# UCLIBC_HAS_FNMATCH_OLD is not set -UCLIBC_HAS_NFTW=y -UCLIBC_HAS_FTW=y -UCLIBC_HAS_GNU_GLOB=y -RUNTIME_PREFIX="/" -DEVEL_PREFIX="/usr/" -UCLIBC_HAS_SSP=y -UCLIBC_BUILD_NOW=y -# DOSTRIP is not set diff --git a/package/uclibc/uclibc.hash b/package/uclibc/uclibc.hash index 9ccf061b6b7..1290f920093 100644 --- a/package/uclibc/uclibc.hash +++ b/package/uclibc/uclibc.hash @@ -1,11 +1,2 @@ -# Locally calculated after checking pgp signature -sha256 62333167b79afb0b25a843513288c67b59547acf653e8fbe62ee64e71ebd1587 uClibc-0.9.33.2.tar.xz - # From http://www.uclibc-ng.org/ -sha256 7a16bc9ff03b8f74f1f0cf921412f08e48a15285d9d555560d5cca915a28df5f uClibc-ng-1.0.5.tar.xz - -# No hash for the ARC variant, comes from the github-helper -none xxx uClibc-arc-2015.06.tar.gz - -# No hash for this git snapshot -none xxx uClibc-7bf35c8b7d4a1f97174eb49f47f33946b282114c.tar.gz +sha256 c238b300356b2638432e023076293f29935094108a2714ad1762b76015fae729 uClibc-ng-1.0.12.tar.xz diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk index a2ba23017b4..200de043e4a 100644 --- a/package/uclibc/uclibc.mk +++ b/package/uclibc/uclibc.mk @@ -4,25 +4,11 @@ # ################################################################################ -UCLIBC_VERSION = $(call qstrip,$(BR2_UCLIBC_VERSION_STRING)) -UCLIBC_SOURCE ?= uClibc-$(UCLIBC_VERSION).tar.bz2 +UCLIBC_VERSION = 1.0.12 +UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz +UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) UCLIBC_LICENSE = LGPLv2.1+ UCLIBC_LICENSE_FILES = COPYING.LIB - -ifeq ($(BR2_UCLIBC_VERSION_SNAPSHOT),y) -UCLIBC_SITE = http://www.uclibc.org/downloads/snapshots -BR_NO_CHECK_HASH_FOR += $(UCLIBC_SOURCE) -else ifeq ($(BR2_UCLIBC_VERSION_NG),y) -UCLIBC_SITE = http://downloads.uclibc-ng.org/releases/$(UCLIBC_VERSION) -UCLIBC_SOURCE = uClibc-ng-$(UCLIBC_VERSION).tar.xz -else ifeq ($(BR2_UCLIBC_VERSION_ARC_GIT),y) -UCLIBC_SITE = $(call github,foss-for-synopsys-dwc-arc-processors,uClibc,$(UCLIBC_VERSION)) -UCLIBC_SOURCE = uClibc-$(UCLIBC_VERSION).tar.gz -else -UCLIBC_SITE = http://www.uclibc.org/downloads -UCLIBC_SOURCE = uClibc-$(UCLIBC_VERSION).tar.xz -endif - UCLIBC_INSTALL_STAGING = YES # uclibc is part of the toolchain so disable the toolchain dependency @@ -398,12 +384,11 @@ endef ifeq ($(BR2_UCLIBC_INSTALL_TEST_SUITE),y) define UCLIBC_BUILD_TEST_SUITE - $(MAKE1) -C $(@D)/test \ + $(MAKE1) -C $(@D) \ $(UCLIBC_MAKE_FLAGS) \ - ARCH_CFLAGS=-I$(STAGING_DIR)/usr/include \ - UCLIBC_ONLY=1 \ TEST_INSTALLED_UCLIBC=1 \ - compile + UCLIBC_ONLY=1 \ + test_compile endef endif @@ -434,21 +419,6 @@ define UCLIBC_INSTALL_UTILS_TARGET endef endif -# gcc produces binaries that use ld{64,}-uClibc.so.0 as the program -# interpreter, but since uClibc-ng version is 1.0.0, it generates -# ld{64,}-uClibc.so.1. In order to avoid changing gcc, we simply -# create the necessary symbolic links here. -ifeq ($(BR2_UCLIBC_VERSION_NG),y) -define UCLIBC_INSTALL_LDSO_SYMLINKS - if [ -e $(TARGET_DIR)/lib/ld64-uClibc.so.1 ]; then \ - (cd $(TARGET_DIR)/lib;ln -sf ld64-uClibc.so.1 ld64-uClibc.so.0) \ - fi - if [ -e $(TARGET_DIR)/lib/ld-uClibc.so.1 ]; then \ - (cd $(TARGET_DIR)/lib;ln -sf ld-uClibc.so.1 ld-uClibc.so.0) \ - fi -endef -endif - define UCLIBC_INSTALL_TARGET_CMDS $(MAKE1) -C $(@D) \ $(UCLIBC_MAKE_FLAGS) \ diff --git a/package/udisks/0001-fix-build-with-newer-glibc-versions.patch b/package/udisks/0001-fix-build-with-newer-glibc-versions.patch new file mode 100644 index 00000000000..336fc440a64 --- /dev/null +++ b/package/udisks/0001-fix-build-with-newer-glibc-versions.patch @@ -0,0 +1,29 @@ +Fix build with newer glibc versions + +This patch has been backported from upstream: + +http://cgit.freedesktop.org/udisks/commit/?h=udisks1&id=9829152b12a8924d2e091a00133ed1a3a7ba75c0 + +Signed-off-by: Vicente Olivert Riera + +From 9829152b12a8924d2e091a00133ed1a3a7ba75c0 Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev +Date: Fri, 29 May 2015 21:09:39 -0400 +Subject: fix build with newer glibc versions + +https://bugs.freedesktop.org/show_bug.cgi?id=90778 + +diff --git a/src/helpers/job-drive-detach.c b/src/helpers/job-drive-detach.c +index eeafcab..d122a1f 100644 +--- a/src/helpers/job-drive-detach.c ++++ b/src/helpers/job-drive-detach.c +@@ -18,6 +18,7 @@ + * + */ + ++#include + #include + #include + #include +-- +cgit v0.10.2 diff --git a/package/udisks/Config.in b/package/udisks/Config.in index a5da2bfba7b..8b8fd2880e8 100644 --- a/package/udisks/Config.in +++ b/package/udisks/Config.in @@ -12,6 +12,7 @@ config BR2_PACKAGE_UDISKS select BR2_PACKAGE_PARTED select BR2_PACKAGE_LVM2 select BR2_PACKAGE_LIBATASMART + select BR2_PACKAGE_LIBGUDEV help The udisks project provides diff --git a/package/udisks/udisks.hash b/package/udisks/udisks.hash index 5debfd53d2b..7ad4326b1c4 100644 --- a/package/udisks/udisks.hash +++ b/package/udisks/udisks.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 854b89368733b9c3a577101b761ad5397ae75a05110c8698ac5b29de9a8bf8f5 udisks-1.0.4.tar.gz +sha256 f2ec82eb0ea7e01dc299b5b29b3c18cdf861236ec43dcff66b3552b4b31c6f71 udisks-1.0.5.tar.gz diff --git a/package/udisks/udisks.mk b/package/udisks/udisks.mk index 7a241069c8c..eea79e5659e 100644 --- a/package/udisks/udisks.mk +++ b/package/udisks/udisks.mk @@ -4,7 +4,7 @@ # ################################################################################ -UDISKS_VERSION = 1.0.4 +UDISKS_VERSION = 1.0.5 UDISKS_SITE = http://hal.freedesktop.org/releases UDISKS_LICENSE = GPLv2+ UDISKS_LICENSE_FILES = COPYING @@ -18,7 +18,8 @@ UDISKS_DEPENDENCIES = \ polkit \ parted \ lvm2 \ - libatasmart + libatasmart \ + libgudev UDISKS_CONF_OPTS = --disable-remote-access --disable-man-pages diff --git a/package/udpcast/Config.in b/package/udpcast/Config.in index 2f9861004d0..0424db797ef 100644 --- a/package/udpcast/Config.in +++ b/package/udpcast/Config.in @@ -1,3 +1,7 @@ +comment "udpcast needs a toolchain w/ threads" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS + config BR2_PACKAGE_UDPCAST bool "udpcast" depends on BR2_TOOLCHAIN_HAS_THREADS @@ -8,10 +12,6 @@ config BR2_PACKAGE_UDPCAST http://www.udpcast.linux.lu/ -comment "udpcast needs a toolchain w/ threads" - depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS - if BR2_PACKAGE_UDPCAST menu "udpcast tools selection" diff --git a/package/uemacs/02-skip-xcase-termios-flag.patch b/package/uemacs/02-skip-xcase-termios-flag.patch new file mode 100644 index 00000000000..2cc53579c71 --- /dev/null +++ b/package/uemacs/02-skip-xcase-termios-flag.patch @@ -0,0 +1,16 @@ +From termios(3): "XCASE (not in POSIX; not supported under Linux)". +musl does not define it, and even if defined it's a no-op. + +Signed-off-by: Alex Suykov + +--- a/posix.c ++++ b/posix.c +@@ -65,7 +65,7 @@ + ~(OPOST | ONLCR | OLCUC | OCRNL | ONOCR | ONLRET); + + /* No signal handling, no echo etc */ +- ntermios.c_lflag &= ~(ISIG | ICANON | XCASE | ECHO | ECHOE | ECHOK ++ ntermios.c_lflag &= ~(ISIG | ICANON | ECHO | ECHOE | ECHOK + | ECHONL | NOFLSH | TOSTOP | ECHOCTL | + ECHOPRT | ECHOKE | FLUSHO | PENDIN | IEXTEN); + diff --git a/package/ulogd/ulogd.mk b/package/ulogd/ulogd.mk index 77301980473..4017edc7bf6 100644 --- a/package/ulogd/ulogd.mk +++ b/package/ulogd/ulogd.mk @@ -29,4 +29,18 @@ else ULOGD_CONF_OPTS += --with-mysql=no --without-sqlite endif +ifeq ($(BR2_PACKAGE_LIBPCAP),y) +ULOGD_CONF_OPTS += --with-pcap +ULOGD_DEPENDENCIES += libpcap +else +ULOGD_CONF_OPTS += --without-pcap +endif + +ifeq ($(BR2_PACKAGE_JANSSON),y) +ULOGD_CONF_OPTS += --with-jansson +ULOGD_DEPENDENCIES += jansson +else +ULOGD_CONF_OPTS += --without-jansson +endif + $(eval $(autotools-package)) diff --git a/package/unionfs/0001-Revert-to-old-pre-1.0-meta-directory.patch b/package/unionfs/0001-Revert-to-old-pre-1.0-meta-directory.patch new file mode 100644 index 00000000000..228441b38ab --- /dev/null +++ b/package/unionfs/0001-Revert-to-old-pre-1.0-meta-directory.patch @@ -0,0 +1,36 @@ +From 93c2f9bd8b058b28016e6db2421e5b38eac0606c Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Thu, 17 Dec 2015 15:06:38 +0100 +Subject: [PATCH] Revert to old pre-1.0 meta directory + +Unionfs changed its meta directory from .unionfs to .unionfs-fuse with the +unionfs -> unionfs-fuse rename. The rename later got reverted everywhere +but the meta directory, so now unionfs doesn't find the whiteout files from +older releases. + +Revert back to the pre-1.0 behaviour to fix this. + +Committed upstream: +https://github.com/rpodgorny/unionfs-fuse/commit/93c2f9bd8b058b28016e6db2421e5b38eac0606c + +Signed-off-by: Peter Korsgaard +--- + src/unionfs.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/unionfs.h b/src/unionfs.h +index c2b5ee3..74b824f 100644 +--- a/src/unionfs.h ++++ b/src/unionfs.h +@@ -10,7 +10,7 @@ + #define PATHLEN_MAX 1024 + #define HIDETAG "_HIDDEN~" + +-#define METANAME ".unionfs-fuse" ++#define METANAME ".unionfs" + #define METADIR (METANAME "/") // string concetanation! + + // fuse meta files, we might want to hide those +-- +2.1.4 + diff --git a/package/unionfs/0001-fuse-no-cxx-needed.patch b/package/unionfs/0001-fuse-no-cxx-needed.patch deleted file mode 100644 index 56f7e2455b1..00000000000 --- a/package/unionfs/0001-fuse-no-cxx-needed.patch +++ /dev/null @@ -1,19 +0,0 @@ -By default, CMake assumes a project uses the C and C++ languages, so -it checks for both the C and the C++ compiler to exist. - -However, unionfs-fuse is written purely in C, so checking for a C++ -compiler is useless, and even prevents unionfs-fuse from building -properly on targets for which no C++ compiler is available. - -Signed-off-by: Thomas Petazzoni - -Index: b/CMakeLists.txt -=================================================================== ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -1,4 +1,4 @@ --project(unionfs-fuse) -+project(unionfs-fuse C) - - cmake_minimum_required(VERSION 2.0) - INCLUDE (CheckIncludeFiles) diff --git a/package/unionfs/Config.in b/package/unionfs/Config.in index b62396068e5..ece83a5f79b 100644 --- a/package/unionfs/Config.in +++ b/package/unionfs/Config.in @@ -7,7 +7,7 @@ config BR2_PACKAGE_UNIONFS help A userspace unionfs implementation. - http://podgorny.cz/moin/UnionFsFuse + https://github.com/rpodgorny/unionfs-fuse comment "unionfs needs a toolchain w/ threads, dynamic library" depends on BR2_USE_MMU diff --git a/package/unionfs/unionfs.hash b/package/unionfs/unionfs.hash index 2cadf0fd940..c843a0e8c1b 100644 --- a/package/unionfs/unionfs.hash +++ b/package/unionfs/unionfs.hash @@ -1,2 +1,3 @@ -# locally computed hash -sha256 8d5c9dcb51ecb9a9b03890e16d17e37d602b0c1f23ed6a9ddec2b0f719c9f662 unionfs-fuse-0.26.tar.xz +# Locally computed +sha256 2ee80bd0634a61adb2159212e155d607a0a82ad659214ae6edb3530396cccc09 unionfs-1.0.tar.gz +sha256 c8526f80448f344fba0100e5510793b6de985b24a8b526d9a6803bcd713d9de2 0001-include-asm-ioctl.h-for-_IOC_SIZE.patch diff --git a/package/unionfs/unionfs.mk b/package/unionfs/unionfs.mk index e5c5993b3eb..0fa9c940f9e 100644 --- a/package/unionfs/unionfs.mk +++ b/package/unionfs/unionfs.mk @@ -4,9 +4,10 @@ # ################################################################################ -UNIONFS_VERSION = 0.26 -UNIONFS_SITE = http://podgorny.cz/unionfs-fuse/releases -UNIONFS_SOURCE = unionfs-fuse-$(UNIONFS_VERSION).tar.xz +UNIONFS_VERSION = 1.0 +UNIONFS_SITE = $(call github,rpodgorny,unionfs-fuse,v$(UNIONFS_VERSION)) +UNIONFS_PATCH = \ + http://git.alpinelinux.org/cgit/aports/plain/main/unionfs-fuse/0001-include-asm-ioctl.h-for-_IOC_SIZE.patch UNIONFS_DEPENDENCIES = libfuse host-pkgconf UNIONFS_LICENSE = BSD-3c UNIONFS_LICENSE_FILES = LICENSE diff --git a/package/unrar/Config.in b/package/unrar/Config.in new file mode 100644 index 00000000000..29696c35aa9 --- /dev/null +++ b/package/unrar/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_UNRAR + bool "unrar" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_USE_WCHAR + help + RAR file uncompressor. + + http://www.rarlab.com/rar_add.htm + +comment "unrar needs a toolchain w/ C++, wchar, threads" + depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP \ + || !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/unrar/unrar.hash b/package/unrar/unrar.hash new file mode 100644 index 00000000000..4490d70f384 --- /dev/null +++ b/package/unrar/unrar.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 ff593728aed0ac865908b8ea52cff449a4c298f095db2f3d27438ffbc3e35d5b unrarsrc-5.3.9.tar.gz diff --git a/package/unrar/unrar.mk b/package/unrar/unrar.mk new file mode 100644 index 00000000000..89dff9bbaf9 --- /dev/null +++ b/package/unrar/unrar.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# unrar +# +################################################################################ + +UNRAR_VERSION = 5.3.9 +UNRAR_SOURCE = unrarsrc-$(UNRAR_VERSION).tar.gz +UNRAR_SITE = http://www.rarlab.com/rar +UNRAR_LICENSE = unrar +UNRAR_LICENSE_FILES = license.txt + +define UNRAR_BUILD_CMDS + $(MAKE) CXX="$(TARGET_CXX)" STRIP="/bin/true" \ + CXXFLAGS="$(TARGET_CXXFLAGS) -pthread" \ + LDFLAGS="$(TARGET_LDFLAGS) -pthread" -C $(@D) +endef + +define UNRAR_INSTALL_TARGET_CMDS + $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR)/usr install +endef + +$(eval $(generic-package)) diff --git a/package/unscd/Config.in b/package/unscd/Config.in new file mode 100644 index 00000000000..e979c301351 --- /dev/null +++ b/package/unscd/Config.in @@ -0,0 +1,25 @@ +config BR2_PACKAGE_UNSCD + bool "unscd" + depends on BR2_TOOLCHAIN_USES_GLIBC + help + Micro Name Service Caching Daemon + + A daemon which handles passwd, group and host lookups for + running programs and caches the results for the next query. + You only need this package if you are using slow Name Services + like LDAP, NIS or NIS+. + + This particular NSCD is a complete rewrite of the GNU glibc + nscd which is a single threaded server process which offloads + all NSS lookups to worker children; cache hits are handled by + the parent, and only cache misses start worker children, + making the parent immune to resource leaks, hangs, and crashes + in NSS libraries. + + It should mostly be a drop-in replacement for existing + installs using nscd. + + http://busybox.net/~vda/unscd + +comment "unscd needs an (e)glibc toolchain" + depends on !BR2_TOOLCHAIN_USES_GLIBC diff --git a/package/unscd/S46unscd b/package/unscd/S46unscd new file mode 100644 index 00000000000..6a51eec1301 --- /dev/null +++ b/package/unscd/S46unscd @@ -0,0 +1,25 @@ +#!/bin/sh + +NAME="nscd" +DAEMON="/usr/sbin/${NAME}" +PID_F="/var/run/nscd/${NAME}.pid" + +case "$1" in +start) + printf "Starting ${NAME}: " + start-stop-daemon -S -p ${PID_F} -x ${DAEMON} + [ $? -eq 0 ] && echo "OK" || echo "FAIL" + ;; +stop) + printf "Stopping ${NAME}: " + start-stop-daemon -K -p ${PID_F} + [ $? -eq 0 ] && echo "OK" || echo "FAIL" + ;; +restart|reload) + $0 stop + $0 start + ;; +*) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/unscd/nscd.conf b/package/unscd/nscd.conf new file mode 100644 index 00000000000..3eb08ab68ad --- /dev/null +++ b/package/unscd/nscd.conf @@ -0,0 +1,33 @@ +# /etc/nscd.conf +# +# An example Name Service Cache config file. This file is needed by nscd. +# +server-user unscd +debug-level 0 + +enable-cache passwd yes +positive-time-to-live passwd 600 +negative-time-to-live passwd 20 +suggested-size passwd 1001 +check-files passwd yes + +enable-cache group yes +positive-time-to-live group 3600 +negative-time-to-live group 60 +suggested-size group 1001 +check-files group yes + +# hosts caching is broken with gethostby* calls, hence is now disabled +# by default. Specifically, the caching does not obey DNS TTLs, and +# thus could lead to problems if the positive-time-to-live is +# significantly larger than the actual TTL. +# +# You should really use a caching nameserver instead of nscd for this +# sort of request. However, you can easily re-enable this by default. +enable-cache hosts no +positive-time-to-live hosts 3600 +negative-time-to-live hosts 20 +suggested-size hosts 1001 +check-files hosts yes + +# unscd does not support services caching diff --git a/package/unscd/unscd.hash b/package/unscd/unscd.hash new file mode 100644 index 00000000000..ab8ffdc0cfe --- /dev/null +++ b/package/unscd/unscd.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 4c1f83dcd120469fceef749050cb29fa666fa4666bd308dfe92e933a4c200d55 nscd-0.52.c diff --git a/package/unscd/unscd.mk b/package/unscd/unscd.mk new file mode 100644 index 00000000000..54caeb1f95e --- /dev/null +++ b/package/unscd/unscd.mk @@ -0,0 +1,36 @@ +################################################################################ +# +# unscd +# +################################################################################ + +UNSCD_VERSION = 0.52 +UNSCD_SOURCE = nscd-$(UNSCD_VERSION).c +UNSCD_SITE = http://busybox.net/~vda/unscd +UNSCD_LICENSE = GPLv2 +UNSCD_LICENSE_FILES = $(UNSCD_SOURCE) + +define UNSCD_EXTRACT_CMDS + cp $(DL_DIR)/$($(PKG)_SOURCE) $(@D)/ +endef + +define UNSCD_BUILD_CMDS + cd $(@D); \ + $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) -o nscd $(UNSCD_SOURCE) +endef + +define UNSCD_INSTALL_TARGET_CMDS + $(INSTALL) -m 755 -D $(@D)/nscd $(TARGET_DIR)/usr/sbin/nscd + $(INSTALL) -m 600 -D package/unscd/nscd.conf $(TARGET_DIR)/etc/nscd.conf +endef + +define UNSCD_INSTALL_INIT_SYSV + $(INSTALL) -m 755 -D package/unscd/S46unscd \ + $(TARGET_DIR)/etc/init.d/S46unscd +endef + +define UNSCD_USERS + unscd -1 unscd -1 * - - - unscd user +endef + +$(eval $(generic-package)) diff --git a/package/unzip/0001-Add-a-CMakeFile.txt-to-ease-cross-compilation.patch b/package/unzip/0001-Add-a-CMakeFile.txt-to-ease-cross-compilation.patch new file mode 100644 index 00000000000..cbc58e484b9 --- /dev/null +++ b/package/unzip/0001-Add-a-CMakeFile.txt-to-ease-cross-compilation.patch @@ -0,0 +1,53 @@ +From 992a497e9c5c421d3931e02a01e9d7c159f27135 Mon Sep 17 00:00:00 2001 +From: Luca Ceresoli +Date: Thu, 26 Nov 2015 12:49:10 +0100 +Subject: [PATCH] Add a CMakeFile.txt to ease cross-compilation + +Info-ZIP's UnZip 6.0 has a complex, hand-crafted Makefile with a +companion configure script which try to support an extremely wide +range of UNIX-like operating systems. The result is an overly complex +mass of code that does not support cross-compilation in several ways. + +Zip 3.0 has a similar build system, and has as many as 6 patches in +Buildroot to cross-compile [0]. UnZip fails at building even with +these patches adapted and a few more on top of them. + +Instead of tweaking and fixing a huge and complex build system, skip +it entirely and add a pretty simple CMakeLists.txt that cross-compiles +smoothly using CMake. It also preserves all of the Buildroot-provided +build options and flags as the original Makefile does. + +[0] http://git.buildroot.net/buildroot/tree/package/infozip?id=2015.11-rc3 + +Signed-off-by: Luca Ceresoli +--- + CMakeLists.txt | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + create mode 100644 CMakeLists.txt + +diff --git a/CMakeLists.txt b/CMakeLists.txt +new file mode 100644 +index 0000000..27951b4 +--- /dev/null ++++ b/CMakeLists.txt +@@ -0,0 +1,17 @@ ++cmake_minimum_required(VERSION 2.8) ++INCLUDE(CheckFunctionExists) ++ ++project(unzip C) ++ ++CHECK_FUNCTION_EXISTS(lchmod HAVE_LCHMOD) ++if(NOT HAVE_LCHMOD) ++add_definitions("-DNO_LCHMOD") ++endif() ++ ++set(UNZIP_SOURCES unzip.c crc32.c crypt.c envargs.c explode.c ++ extract.c fileio.c globals.c inflate.c list.c match.c process.c ++ ttyio.c ubz2err.c unreduce.c unshrink.c zipinfo.c unix/unix.c) ++ ++include_directories(.) ++add_executable(unzip ${UNZIP_SOURCES}) ++install(TARGETS unzip DESTINATION bin) +-- +1.9.1 + diff --git a/package/unzip/Config.in b/package/unzip/Config.in new file mode 100644 index 00000000000..0d98d28776e --- /dev/null +++ b/package/unzip/Config.in @@ -0,0 +1,11 @@ +config BR2_PACKAGE_UNZIP + bool "unzip" + help + UnZip is an extraction utility for archives compressed in + .zip format (also called "zipfiles"). Although highly + compatible both with PKWARE's PKZIP and PKUNZIP utilities + for MS-DOS and with Info-ZIP's own Zip program, our primary + objectives have been portability and non-MSDOS + functionality. + + http://www.info-zip.org/UnZip.html diff --git a/package/unzip/unzip.hash b/package/unzip/unzip.hash new file mode 100644 index 00000000000..a138cc27c9d --- /dev/null +++ b/package/unzip/unzip.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 036d96991646d0449ed0aa952e4fbe21b476ce994abc276e49d30e686708bd37 unzip60.tgz diff --git a/package/unzip/unzip.mk b/package/unzip/unzip.mk new file mode 100644 index 00000000000..7d48d253093 --- /dev/null +++ b/package/unzip/unzip.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# unzip +# +################################################################################ + +UNZIP_VERSION = 60 +UNZIP_SOURCE = unzip$(UNZIP_VERSION).tgz +UNZIP_SITE = ftp://ftp.info-zip.org/pub/infozip/src +# take precedence over busybox implementation +UNZIP_DEPENDENCIES = $(if $(BR2_PACKAGE_BUSYBOX),busybox) +UNZIP_LICENSE = Info-ZIP +UNZIP_LICENSE_FILES = LICENSE + +$(eval $(cmake-package)) diff --git a/package/upmpdcli/0001-Add-conditional-check-for-__linux__.patch b/package/upmpdcli/0001-Add-conditional-check-for-__linux__.patch deleted file mode 100644 index 910ee3c7e51..00000000000 --- a/package/upmpdcli/0001-Add-conditional-check-for-__linux__.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 69740cf6fe35413edc4b6adc502ba70ce8de8557 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Krause?= -Date: Sun, 19 Jul 2015 08:48:13 +0200 -Subject: [PATCH 1/1] Add conditional check for __linux__ -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -When building upmpdcli with certain toolchains using the compiler flag --std=c++0x let gcc not define "linux" or "__linux", but "__linux__". - -Signed-off-by: Jörg Krause ---- - src/closefrom.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/closefrom.cpp b/src/closefrom.cpp -index 4429b20..0cd7957 100644 ---- a/src/closefrom.cpp -+++ b/src/closefrom.cpp -@@ -111,7 +111,7 @@ int libclf_closefrom(int fd0) - } - - /*************************************************************************/ --#elif (defined(linux) || defined(__linux)) -+#elif (defined(linux) || defined(__linux) || defined(__linux__)) - - /* Use /proc/self/fd directory */ - #include --- -2.4.6 - diff --git a/package/upmpdcli/Config.in b/package/upmpdcli/Config.in index 848c6af8495..15020953111 100644 --- a/package/upmpdcli/Config.in +++ b/package/upmpdcli/Config.in @@ -6,8 +6,7 @@ config BR2_PACKAGE_UPMPDCLI depends on BR2_TOOLCHAIN_HAS_THREADS # libupnpp -> libupnp depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 # libupnpp triggers the _gp link issue - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII help upmpdcli is a UPnP Media Renderer front-end for MPD, the Music Player Daemon. It supports UPnP gapless track transitions and @@ -16,6 +15,5 @@ config BR2_PACKAGE_UPMPDCLI http://www.lesbonscomptes.com/upmpdcli/ comment "upmpdcli needs a toolchain w/ C++, threads, gcc >= 4.6" - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 diff --git a/package/upmpdcli/S99upmpdcli b/package/upmpdcli/S99upmpdcli index 07b10a6b290..71d19a58e5d 100644 --- a/package/upmpdcli/S99upmpdcli +++ b/package/upmpdcli/S99upmpdcli @@ -10,14 +10,14 @@ DAEMON_ARGS="-D -c $CONFFILE" test -f $DAEMON || exit 0 start() { - echo -n "Starting $NAME: " + printf "Starting $NAME: " start-stop-daemon --start --quiet --background --exec $DAEMON \ -- $DAEMON_ARGS \ && echo "OK" || echo "FAIL" } stop() { - echo -n "Stopping $NAME: " + printf "Stopping $NAME: " start-stop-daemon --stop --quiet --pidfile $PIDFILE \ && echo "OK" || echo "FAIL" } diff --git a/package/upmpdcli/upmpdcli.hash b/package/upmpdcli/upmpdcli.hash index 549945ee17e..5a6c47ae9a5 100644 --- a/package/upmpdcli/upmpdcli.hash +++ b/package/upmpdcli/upmpdcli.hash @@ -1,2 +1,2 @@ -# Hashes from: http://www.lesbonscomptes.com/upmpdcli/downloads/upmpdcli-0.11.0.tar.gz.sha256 -sha256 0f064b7fe498ee56879e606f48b7bafa42381d25fda6b91ef2cb3677effc85b9 upmpdcli-0.11.0.tar.gz +# Hashes from: http://www.lesbonscomptes.com/upmpdcli/downloads/upmpdcli-0.13.1.tar.gz.sha256 +sha256 86f964e49b0288a4d660aa4ad83576d83aad7c354df67d3aa8e324e8912876e0 upmpdcli-0.13.1.tar.gz diff --git a/package/upmpdcli/upmpdcli.mk b/package/upmpdcli/upmpdcli.mk index 8dde87dc72f..ba5bbb2bd4e 100644 --- a/package/upmpdcli/upmpdcli.mk +++ b/package/upmpdcli/upmpdcli.mk @@ -4,7 +4,7 @@ # ################################################################################ -UPMPDCLI_VERSION = 0.11.0 +UPMPDCLI_VERSION = 0.13.1 UPMPDCLI_SITE = http://www.lesbonscomptes.com/upmpdcli/downloads UPMPDCLI_LICENSE = GPLv2+ UPMPDCLI_LICENSE_FILES = COPYING diff --git a/package/usb_modeswitch/0001-rename-abort.patch b/package/usb_modeswitch/0001-rename-abort.patch deleted file mode 100644 index 739e817c636..00000000000 --- a/package/usb_modeswitch/0001-rename-abort.patch +++ /dev/null @@ -1,105 +0,0 @@ -abort() is a C library function and used by Jim, so it results in -a duplicate definition and confusion when linking statically. - -Signed-off-by: Gustavo Zacarias - -diff -Nura usb-modeswitch-2.2.5.orig/usb_modeswitch.c usb-modeswitch-2.2.5/usb_modeswitch.c ---- usb-modeswitch-2.2.5.orig/usb_modeswitch.c 2015-07-28 08:24:41.043352748 -0300 -+++ usb-modeswitch-2.2.5/usb_modeswitch.c 2015-07-28 08:38:43.557315576 -0300 -@@ -544,7 +544,7 @@ - libusb_open(dev, &devh); - if (devh == NULL) { - SHOW_PROGRESS(output,"Error opening the device. Abort\n\n"); -- abort(); -+ abortOut(); - } - } - -@@ -574,18 +574,18 @@ - ResponseEndpoint = find_first_bulk_endpoint(LIBUSB_ENDPOINT_IN); - if (!MessageEndpoint) { - fprintf(stderr,"Error: message endpoint not given or found. Abort\n\n"); -- abort(); -+ abortOut(); - } - if (!ResponseEndpoint) { - fprintf(stderr,"Error: response endpoint not given or found. Abort\n\n"); -- abort(); -+ abortOut(); - } - SHOW_PROGRESS(output,"Use endpoints 0x%02x (out) and 0x%02x (in)\n", MessageEndpoint, ResponseEndpoint); - } - - if (interfaceClass == -1) { - fprintf(stderr, "Error: Could not get class of interface %d. Does it exist? Abort\n\n",Interface); -- abort(); -+ abortOut(); - } - - if (defaultClass == 0) -@@ -601,7 +601,7 @@ - if (defaultClass != 8) { - fprintf(stderr, "Error: can't use storage command in MessageContent with interface %d;\n" - " interface class is %d, expected 8. Abort\n\n", Interface, defaultClass); -- abort(); -+ abortOut(); - } - - if (InquireDevice && show_progress) { -@@ -629,7 +629,7 @@ - */ - if ( ModeMap & (ModeMap-1) ) { - fprintf(output,"Multiple special modes selected; check configuration. Abort\n\n"); -- abort(); -+ abortOut(); - } - - if ((strlen(MessageContent) || StandardEject) && ModeMap ) { -@@ -1339,7 +1339,7 @@ - ret = libusb_claim_interface(devh, Interface); - if (ret < 0) { - SHOW_PROGRESS(output," Could not claim interface (error %d). Abort\n", ret); -- abort(); -+ abortOut(); - } - // libusb_clear_halt(devh, MessageEndpoint); - if (show_progress) -@@ -1832,7 +1832,7 @@ - int ret = libusb_get_active_config_descriptor(dev, &active_config); - if (ret < 0) { - SHOW_PROGRESS(output," Determining the active configuration failed (error %d). Abort\n", ret); -- abort(); -+ abortOut(); - } - return active_config->bConfigurationValue; - } -@@ -1878,7 +1878,7 @@ - } - if (file==NULL) { - fprintf(stderr, "Error: Could not find file %s. Abort\n\n", FileName); -- abort(); -+ abortOut(); - } else { - token = fgets(Str, LINE_DIM-1, file); - } -@@ -2014,7 +2014,7 @@ - closelog(); - } - --void abort() -+void abortOut() - { - close_all(); - exit(1); -diff -Nura usb-modeswitch-2.2.5.orig/usb_modeswitch.h usb-modeswitch-2.2.5/usb_modeswitch.h ---- usb-modeswitch-2.2.5.orig/usb_modeswitch.h 2015-07-28 08:24:41.043352748 -0300 -+++ usb-modeswitch-2.2.5/usb_modeswitch.h 2015-07-28 08:38:54.986708480 -0300 -@@ -61,7 +61,7 @@ - void printVersion(); - void printHelp(); - void close_all(); --void abort(); -+void abortOut(); - int readArguments(int argc, char **argv); - void deviceDescription(); - int deviceInquire(); diff --git a/package/usb_modeswitch/usb_modeswitch.hash b/package/usb_modeswitch/usb_modeswitch.hash index 9552a24dab5..2033d311042 100644 --- a/package/usb_modeswitch/usb_modeswitch.hash +++ b/package/usb_modeswitch/usb_modeswitch.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 8b2340303732aabc8c8e1cdd7d4352f61dcb942839f58ce22ba0ecfa122426d5 usb-modeswitch-2.2.5.tar.bz2 +sha256 7ee42be2fe26dde20c58f54bf678fb136d2706250e4aa74f06fc97268a46e90f usb-modeswitch-2.2.6.tar.bz2 diff --git a/package/usb_modeswitch/usb_modeswitch.mk b/package/usb_modeswitch/usb_modeswitch.mk index c1b0a764283..aca13e4f902 100644 --- a/package/usb_modeswitch/usb_modeswitch.mk +++ b/package/usb_modeswitch/usb_modeswitch.mk @@ -4,7 +4,7 @@ # ################################################################################ -USB_MODESWITCH_VERSION = 2.2.5 +USB_MODESWITCH_VERSION = 2.2.6 USB_MODESWITCH_SOURCE = usb-modeswitch-$(USB_MODESWITCH_VERSION).tar.bz2 USB_MODESWITCH_SITE = http://www.draisberghof.de/usb_modeswitch USB_MODESWITCH_DEPENDENCIES = libusb diff --git a/package/usb_modeswitch_data/usb_modeswitch_data.hash b/package/usb_modeswitch_data/usb_modeswitch_data.hash index ea36839cddf..05a544528e5 100644 --- a/package/usb_modeswitch_data/usb_modeswitch_data.hash +++ b/package/usb_modeswitch_data/usb_modeswitch_data.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 826096cb35a487c6e924b1318074988457220b5e72812e5393597950dd9eefc2 usb-modeswitch-data-20150627.tar.bz2 +sha256 584d362bc0060c02016edaac7b05ebd6558d5dcbdf14f1ae6d0ec9630265a982 usb-modeswitch-data-20151101.tar.bz2 diff --git a/package/usb_modeswitch_data/usb_modeswitch_data.mk b/package/usb_modeswitch_data/usb_modeswitch_data.mk index 1b397cb5ecd..d8d5622395d 100644 --- a/package/usb_modeswitch_data/usb_modeswitch_data.mk +++ b/package/usb_modeswitch_data/usb_modeswitch_data.mk @@ -4,7 +4,7 @@ # ################################################################################ -USB_MODESWITCH_DATA_VERSION = 20150627 +USB_MODESWITCH_DATA_VERSION = 20151101 USB_MODESWITCH_DATA_SOURCE = usb-modeswitch-data-$(USB_MODESWITCH_DATA_VERSION).tar.bz2 USB_MODESWITCH_DATA_SITE = http://www.draisberghof.de/usb_modeswitch USB_MODESWITCH_DATA_DEPENDENCIES = usb_modeswitch diff --git a/package/usbmount/usbmount.mk b/package/usbmount/usbmount.mk index 9e893c8d8bb..066cbb828a3 100644 --- a/package/usbmount/usbmount.mk +++ b/package/usbmount/usbmount.mk @@ -15,9 +15,9 @@ define USBMOUNT_INSTALL_TARGET_CMDS $(INSTALL) -m 0755 -D $(@D)/usbmount $(TARGET_DIR)/usr/share/usbmount/usbmount $(INSTALL) -m 0755 -D $(@D)/00_create_model_symlink \ - $(TARGET_DIR)/etc/usbmount/usbmount.d/00_create_model_symlink + $(TARGET_DIR)/etc/usbmount/mount.d/00_create_model_symlink $(INSTALL) -m 0755 -D $(@D)/00_remove_model_symlink \ - $(TARGET_DIR)/etc/usbmount/usbmount.d/00_remove_model_symlink + $(TARGET_DIR)/etc/usbmount/umount.d/00_remove_model_symlink $(INSTALL) -m 0644 -D $(@D)/usbmount.rules $(TARGET_DIR)/lib/udev/rules.d/usbmount.rules $(INSTALL) -m 0644 -D $(@D)/usbmount.conf $(TARGET_DIR)/etc/usbmount/usbmount.conf diff --git a/package/ushare/0002-ushare-fix-building-with-gcc-5.x.patch b/package/ushare/0002-ushare-fix-building-with-gcc-5.x.patch new file mode 100644 index 00000000000..abef81fe4db --- /dev/null +++ b/package/ushare/0002-ushare-fix-building-with-gcc-5.x.patch @@ -0,0 +1,49 @@ +From 6abc52190accc8d8b17455420e234a1d7dc7ba55 Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Mon, 16 Nov 2015 23:15:27 +0100 +Subject: [PATCH] ushare: fix building with gcc 5.x + +GCC5 defaults to -std=gnu11, which has different semantics for inline than +previous versions: + +https://gcc.gnu.org/gcc-5/porting_to.html + +Which causes linker issues when display_headers() and start_log() are +referenced from other files. There's no real reason why these needs to be +inline, so just drop the keyword. + +Signed-off-by: Peter Korsgaard +--- + src/trace.c | 2 +- + src/ushare.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/trace.c b/src/trace.c +index 50729ef..4e314ef 100644 +--- a/src/trace.c ++++ b/src/trace.c +@@ -57,7 +57,7 @@ print_log (log_level level, const char *format, ...) + va_end (va); + } + +-inline void ++void + start_log (void) + { + openlog (PACKAGE_NAME, LOG_PID, LOG_DAEMON); +diff --git a/src/ushare.c b/src/ushare.c +index b64451e..af46e78 100644 +--- a/src/ushare.c ++++ b/src/ushare.c +@@ -496,7 +496,7 @@ reload_config (int s __attribute__ ((unused))) + } + } + +-inline void ++void + display_headers (void) + { + printf (_("%s (version %s), a lightweight UPnP A/V and DLNA Media Server.\n"), +-- +2.1.4 + diff --git a/package/ustr/0001-cross-compile-modifications.patch b/package/ustr/0001-cross-compile-modifications.patch deleted file mode 100644 index ab75b442838..00000000000 --- a/package/ustr/0001-cross-compile-modifications.patch +++ /dev/null @@ -1,144 +0,0 @@ -Changes are to allow ustr version 1.0.4 to cross compile in buildroot. - -Signed-off-by Clayton Shotwell - -diff -urN a/ustr-compiler.h b/ustr-compiler.h ---- a/ustr-compiler.h 2008-02-15 14:12:28.000000000 -0600 -+++ b/ustr-compiler.h 2012-06-15 11:04:55.000000000 -0500 -@@ -13,10 +13,10 @@ - - /* We assume this is enough, - * C99 specifies that va_copy() exists and is a macro */ --#ifdef va_copy -+#if defined va_copy - # define USTR_CONF_HAVE_VA_COPY 1 - # define USTR__VA_COPY(x, y) va_copy(x, y) --#elif __va_copy -+#elif defined __va_copy - # define USTR_CONF_HAVE_VA_COPY 1 - # define USTR__VA_COPY(x, y) __va_copy(x, y) - #else -diff -urN a/Makefile b/Makefile ---- a/Makefile 2008-03-05 21:38:00.000000000 -0600 -+++ b/Makefile 2013-09-10 16:54:45.916874387 -0500 -@@ -8,8 +8,8 @@ - VERS_ESONAME =1 - VERS_ESO =$(VERS_ESONAME).0.4 - --DESTDIR = --prefix=/usr -+DESTDIR ?= -+prefix ?= /usr - datadir=$(prefix)/share - libdir=$(prefix)/lib - libexecdir=$(prefix)/libexec -@@ -18,7 +18,7 @@ - SHRDIR=$(datadir)/ustr-$(VERS_FULL) - DOCSHRDIR=$(datadir)/doc/ustr-devel-$(VERS_FULL) - EXAMDIR=$(SHRDIR)/examples --mandir=$(datadir)/doc/man -+mandir=$(datadir)/man - MBINDIR=$(libexecdir)/ustr-$(VERS_FULL) - - ############################################################################### -@@ -28,12 +28,12 @@ - ############################################################################### - HIDE=@ - --CC = cc --AR = ar --RANLIB = ranlib --LDCONFIG = /sbin/ldconfig -+CC ?= cc -+AR ?= ar -+RANLIB ?= ranlib - --CFLAGS = -O2 -g -+CFLAGS ?= -O2 -g -+LDFLAGS ?= - - # Debug versions... - WARNS = -W -Wall -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wno-format-zero-length -Wformat-nonliteral -Wformat-security # -Wfloat-equal -- no floats -@@ -376,7 +376,7 @@ - all-shared: all $(LIB_SHARED) - $(HIDE)echo Done shared - --install: all-shared ustr.pc ustr-debug.pc -+install: all ustr.pc ustr-debug.pc - $(HIDE)echo Making directories - install -d $(DESTDIR)$(libdir) - install -d $(DESTDIR)$(includedir) -@@ -389,16 +389,6 @@ - install -d $(DESTDIR)$(libdir)/pkgconfig - $(HIDE)echo Installing files - install -m 644 -t $(DESTDIR)$(libdir) $(LIB_STATIC) -- install -m 755 -t $(DESTDIR)$(libdir) $(LIB_SHARED) -- -rm -f $(DESTDIR)$(libdir)/$(OPT_LIB_SHARED_NAME) -- ln -s $(OPT_LIB_SHARED) $(DESTDIR)$(libdir)/$(OPT_LIB_SHARED_NAME) -- -rm -f $(DESTDIR)$(libdir)/$(OPT_LIB_SHAREDEV) -- ln -s $(OPT_LIB_SHARED_NAME) $(DESTDIR)$(libdir)/$(OPT_LIB_SHAREDEV) -- -rm -f $(DESTDIR)$(libdir)/$(DBG_LIB_SHARED_NAME) -- ln -s $(DBG_LIB_SHARED) $(DESTDIR)$(libdir)/$(DBG_LIB_SHARED_NAME) -- -rm -f $(DESTDIR)$(libdir)/$(DBG_LIB_SHAREDEV) -- ln -s $(DBG_LIB_SHARED_NAME) $(DESTDIR)$(libdir)/$(DBG_LIB_SHAREDEV) -- $(LDCONFIG) -n $(DESTDIR)$(libdir) - install -pm 644 -t $(DESTDIR)$(includedir) $(SRC_HDRS) - install -pm 644 -t $(DESTDIR)$(SHRDIR) $(SRC_SRCS) - install -pm 644 -t $(DESTDIR)$(SHRDIR) $(XSRC_SRCS) -@@ -409,13 +399,24 @@ - install -m 755 -t $(DESTDIR)$(bindir) ustr-import - install -pm 644 -t $(DESTDIR)$(libdir)/pkgconfig ustr.pc ustr-debug.pc - -+install-shared: all-shared install -+ $(HIDE)echo Installing files -+ install -m 755 -t $(DESTDIR)$(libdir) $(LIB_SHARED) -+ -rm -f $(DESTDIR)$(libdir)/$(OPT_LIB_SHARED_NAME) -+ ln -s $(OPT_LIB_SHARED) $(DESTDIR)$(libdir)/$(OPT_LIB_SHARED_NAME) -+ -rm -f $(DESTDIR)$(libdir)/$(OPT_LIB_SHAREDEV) -+ ln -s $(OPT_LIB_SHARED_NAME) $(DESTDIR)$(libdir)/$(OPT_LIB_SHAREDEV) -+ -rm -f $(DESTDIR)$(libdir)/$(DBG_LIB_SHARED_NAME) -+ ln -s $(DBG_LIB_SHARED) $(DESTDIR)$(libdir)/$(DBG_LIB_SHARED_NAME) -+ -rm -f $(DESTDIR)$(libdir)/$(DBG_LIB_SHAREDEV) -+ ln -s $(DBG_LIB_SHARED_NAME) $(DESTDIR)$(libdir)/$(DBG_LIB_SHAREDEV) -+ - ustr-import-multilib: ustr-import-multilib.in - sed -e 's,@INCLUDEDIR@,$(includedir),g' -e 's,@MBINDIR@,$(MBINDIR),g' < $< > $@ - - install-multilib-linux: install autoconf_64b ustr-import-multilib - install -d $(DESTDIR)$(MBINDIR) -- $(HIDE)mlib=`./autoconf_64b`; \ -- if test "x$$mlib" = "x1"; then mlib=64; else mlib=32; fi; \ -+ $(HIDE))if test "`echo "__SIZEOF_SIZE_T__" | $(CC) -E -x c - | tail -n 1`" = 8; then mlib=64; else mlib=32; fi; \ - mv -f $(DESTDIR)$(includedir)/ustr-conf-debug.h \ - $(DESTDIR)$(includedir)/ustr-conf-debug-$$mlib.h; \ - mv -f $(DESTDIR)$(includedir)/ustr-conf.h \ -@@ -451,7 +452,8 @@ - - ustr-import: ustr-import.in autoconf_64b autoconf_vsnprintf - $(HIDE)echo Creating $@ -- $(HIDE)sz64=`./autoconf_64b`; vsnp=`./autoconf_vsnprintf`; \ -+ $(HIDE)if test "`echo "__SIZEOF_SIZE_T__" | $(CC) -E -x c - | tail -n 1`" = 8; then sz64=1; else sz64=0; fi; \ -+ if test "`./autoconf_vsnprintf`" = 0; then vsnp=0; else vsnp=1; fi; \ - sed -e 's,@INCLUDEDIR@,$(includedir),g' -e 's,@SHRDIR@,$(SHRDIR),g' -e 's,@VERS@,$(VERS),g' -e 's,@VERS_FULL@,$(VERS_FULL),g' -e "s,@HAVE_64bit_SIZE_MAX@,$$sz64,g" -e "s,@HAVE_RETARDED_VSNPRINTF@,$$vsnp,g" < $< > $@ - $(HIDE)chmod 755 $@ - -@@ -485,7 +487,8 @@ - ustr-conf.h: ustr-conf.h.in autoconf_64b autoconf_vsnprintf - $(HIDE)echo Creating $@ - $(HIDE)have_stdint_h=0; dbg1=0; dbg2=0; \ -- sz64=`./autoconf_64b`; vsnp=`./autoconf_vsnprintf`; \ -+ if test "`echo "__SIZEOF_SIZE_T__" | $(CC) -E -x c - | tail -n 1`" = 8; then sz64=1; else sz64=0; fi; \ -+ if test "`./autoconf_vsnprintf`" = 0; then vsnp=0; else vsnp=1; fi; \ - if test -f "/usr/include/stdint.h"; then have_stdint_h=1; fi; \ - if test -f "$(prefix)/include/stdint.h"; then have_stdint_h=1; fi; \ - if test -f "$(includedir)/stdint.h"; then have_stdint_h=1; fi; \ -@@ -494,7 +497,8 @@ - ustr-conf-debug.h: ustr-conf.h.in autoconf_64b autoconf_vsnprintf - $(HIDE)echo Creating $@ - $(HIDE)have_stdint_h=0; dbg1=1; dbg2=1; \ -- sz64=`./autoconf_64b`; vsnp=`./autoconf_vsnprintf`; \ -+ if test "`echo "__SIZEOF_SIZE_T__" | $(CC) -E -x c - | tail -n 1`" = 8; then sz64=1; else sz64=0; fi; \ -+ if test "`./autoconf_vsnprintf`" = 0; then vsnp=0; else vsnp=1; fi; \ - if test -f "/usr/include/stdint.h"; then have_stdint_h=1; fi; \ - if test -f "$(prefix)/include/stdint.h"; then have_stdint_h=1; fi; \ - if test -f "$(includedir)/stdint.h"; then have_stdint_h=1; fi; \ diff --git a/package/ustr/Config.in b/package/ustr/Config.in index a86b26d3d49..0d9c272b6b9 100644 --- a/package/ustr/Config.in +++ b/package/ustr/Config.in @@ -1,6 +1,11 @@ config BR2_PACKAGE_USTR bool "ustr" + # unconditionally builds a shared library + depends on !BR2_STATIC_LIBS help A small, safe string library. http://www.and.org/ustr/ + +comment "ustr needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/ustr/ustr.hash b/package/ustr/ustr.hash index 2288bcf8ffc..214d37a77a7 100644 --- a/package/ustr/ustr.hash +++ b/package/ustr/ustr.hash @@ -1,2 +1,4 @@ # Locally computed sha256 3daf6eae9f78de1e872c0b2b83cce35515b94d4bb8a074e48f331fd99e1fc2c4 ustr-1.0.4.tar.bz2 +# From http://debian.gtisc.gatech.edu/debian/pool/main/u/ustr/ustr_1.0.4-5.dsc +sha256 a21e78acf82dcccef2893932ef7b85852419bfd9b18382e63c34e7710c1d7762 ustr_1.0.4-5.debian.tar.xz diff --git a/package/ustr/ustr.mk b/package/ustr/ustr.mk index 3144c0b47c7..174f05565ae 100644 --- a/package/ustr/ustr.mk +++ b/package/ustr/ustr.mk @@ -7,48 +7,21 @@ USTR_VERSION = 1.0.4 USTR_SOURCE = ustr-$(USTR_VERSION).tar.bz2 USTR_SITE = http://www.and.org/ustr/$(USTR_VERSION) -USTR_LICENSE = BSD-2c MIT LGPLv2+ +USTR_LICENSE = BSD-2c, MIT, LGPLv2+ USTR_LICENSE_FILES = LICENSE LICENSE_BSD LICENSE_LGPL LICENSE_MIT +USTR_AUTORECONF = YES +USTR_PATCH = \ + http://http.debian.net/debian/pool/main/u/ustr/ustr_$(USTR_VERSION)-5.debian.tar.xz USTR_INSTALL_STAGING = YES -ifeq ($(BR2_STATIC_LIBS),y) -USTR_BUILD_TARGETS = all -USTR_INSTALL_TARGETS = install -else ifeq ($(BR2_SHARED_LIBS),y) -USTR_BUILD_TARGETS = all-shared -USTR_INSTALL_TARGETS = install-shared -else -USTR_BUILD_TARGETS = all all-shared -USTR_INSTALL_TARGETS = all install-shared -endif - -define USTR_BUILD_CMDS - $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) $(USTR_BUILD_TARGETS) -endef - -define USTR_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) DESTDIR=$(STAGING_DIR) \ - $(USTR_INSTALL_TARGETS) - $(RM) -f $(STAGING_DIR)/usr/lib/libustr-debug* - $(RM) -f $(STAGING_DIR)/usr/lib/pkgconfig/libustr-debug.pc -endef - -define USTR_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) DESTDIR=$(TARGET_DIR) \ - $(USTR_INSTALL_TARGETS) - $(RM) -f $(TARGET_DIR)/usr/lib/libustr-debug* - $(RM) -rf $(TARGET_DIR)/usr/share/ustr-$(USTR_VERSION) -endef - -define HOST_USTR_BUILD_CMDS - $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) all-shared -endef - -define HOST_USTR_INSTALL_CMDS - $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) DESTDIR=$(HOST_DIR) \ - install-shared -endef +# ustr only builds the static library by default, but the default +# install rule will install both the static and the shared libraries, +# which means the shared one is build during the install step. :-( +# +# We can however instruct ustr to build both at build time, by adding +# 'all-shared' to the default 'all' rule. +USTR_MAKE_OPTS = all all-shared -$(eval $(generic-package)) -$(eval $(host-generic-package)) +$(eval $(autotools-package)) +$(eval $(host-autotools-package)) diff --git a/package/util-linux/0002-program-invocation-short-name.patch b/package/util-linux/0002-program-invocation-short-name.patch deleted file mode 100644 index 95fea3f13d1..00000000000 --- a/package/util-linux/0002-program-invocation-short-name.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/configure.ac 2013-09-05 15:31:21.590981268 -0500 -+++ b/configure.ac 2013-09-05 15:31:29.160981049 -0500 -@@ -387,7 +387,7 @@ - - AC_MSG_CHECKING([whether program_invocation_short_name is defined]) - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ -- #include -+ #include - ]], [[ - program_invocation_short_name = "test"; - ]])], [ diff --git a/package/util-linux/0004-vipw-Remove-pre-ANSI-compiler-support.patch b/package/util-linux/0004-vipw-Remove-pre-ANSI-compiler-support.patch new file mode 100644 index 00000000000..3a0c42ab057 --- /dev/null +++ b/package/util-linux/0004-vipw-Remove-pre-ANSI-compiler-support.patch @@ -0,0 +1,35 @@ +From 9ce534491aea9b7975cfee5064423d0b850d8002 Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Sun, 9 Aug 2015 11:20:00 +0200 +Subject: [PATCH] vipw: Remove pre-ANSI compiler support + +__P() is used for compatibility with old K&R C compilers. With +ANSI C this macro has no effect. + +This fixes a compilation error with musl libc because of undeclared +__P. + +Ref: +https://lists.samba.org/archive/samba-technical/2015-June/108042.html + +Signed-off-by: Romain Naour +--- + login-utils/vipw.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/login-utils/vipw.c b/login-utils/vipw.c +index 668f4d8..e4c803b 100644 +--- a/login-utils/vipw.c ++++ b/login-utils/vipw.c +@@ -85,7 +85,7 @@ int program; + char orig_file[FILENAMELEN]; /* original file /etc/passwd or /etc/group */ + char *tmp_file; /* tmp file */ + +-void pw_error __P((char *, int, int)); ++void pw_error (char *, int, int); + + static void copyfile(int from, int to) + { +-- +2.4.3 + diff --git a/package/util-linux/0005-build-sys-use-REALTIME_LIBS.patch b/package/util-linux/0005-build-sys-use-REALTIME_LIBS.patch new file mode 100644 index 00000000000..6402ef5cf7e --- /dev/null +++ b/package/util-linux/0005-build-sys-use-REALTIME_LIBS.patch @@ -0,0 +1,41 @@ +From 9ed54668c15534a3b9d75e8a3e90b72ea426e596 Mon Sep 17 00:00:00 2001 +From: Karel Zak +Date: Fri, 9 Oct 2015 11:31:49 +0200 +Subject: [PATCH] build-sys: use REALTIME_LIBS + +Signed-off-by: Karel Zak +--- + misc-utils/Makemodule.am | 2 +- + sys-utils/Makemodule.am | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/misc-utils/Makemodule.am b/misc-utils/Makemodule.am +index e801611..b96d18b 100644 +--- a/misc-utils/Makemodule.am ++++ b/misc-utils/Makemodule.am +@@ -90,7 +90,7 @@ endif + if BUILD_UUIDD + usrsbin_exec_PROGRAMS += uuidd + dist_man_MANS += misc-utils/uuidd.8 +-uuidd_LDADD = $(LDADD) libuuid.la libcommon.la ++uuidd_LDADD = $(LDADD) libuuid.la libcommon.la $(REALTIME_LIBS) + uuidd_CFLAGS = $(DAEMON_CFLAGS) $(AM_CFLAGS) -I$(ul_libuuid_incdir) + uuidd_LDFLAGS = $(DAEMON_LDFLAGS) $(AM_LDFLAGS) + uuidd_SOURCES = misc-utils/uuidd.c + +diff --git a/sys-utils/Makemodule.am b/sys-utils/Makemodule.am +index f306e65..3d28ff1 100644 +--- a/sys-utils/Makemodule.am ++++ b/sys-utils/Makemodule.am +@@ -2,7 +2,7 @@ if BUILD_FLOCK + usrbin_exec_PROGRAMS += flock + dist_man_MANS += sys-utils/flock.1 + flock_SOURCES = sys-utils/flock.c lib/monotonic.c lib/timer.c +-flock_LDADD = $(LDADD) libcommon.la -lrt ++flock_LDADD = $(LDADD) libcommon.la $(REALTIME_LIBS) + endif + + if BUILD_IPCMK +-- +2.5.0 + diff --git a/package/util-linux/0006-buildsys-fix-static-configuration-and-building.patch b/package/util-linux/0006-buildsys-fix-static-configuration-and-building.patch new file mode 100644 index 00000000000..cd5654e70f5 --- /dev/null +++ b/package/util-linux/0006-buildsys-fix-static-configuration-and-building.patch @@ -0,0 +1,54 @@ +From f69e18629d1c91d83ab91314baf5e34088b57f6e Mon Sep 17 00:00:00 2001 +From: Lada Trimasova +Date: Wed, 27 Jan 2016 16:26:41 +0300 +Subject: [PATCH] buildsys: fix static configuration and building + +In case of uClibc librt depends on libpthread. In particular +timer_create() function uses pthread_XXX(). That means in case +of static builds it's required to link not librt alone but +together with libpthread. So if checking timer_create function +in librt fails, it is necessary to check if timer_create function +successfully links with "-lpthread". + +That issues was spotted in Buldroot autobuilder failures: +http://autobuild.buildroot.net/results/759/75960db671807091fe9155aee9e46a6245e32590/ +http://autobuild.buildroot.org/results/112/112e8b85783f5aaba42a937a6eb064317615a21b/ + +Signed-off-by: Lada Trimasova +--- + configure.ac | 13 +++++++++++-- + 1 file changed, 11 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 56512c0..9392bf2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -382,14 +382,23 @@ AC_CHECK_FUNCS([clock_gettime], [], + AC_SUBST([REALTIME_LIBS]) + + have_timer="no" +-AC_CHECK_FUNCS([timer_createx], ++AC_CHECK_FUNCS([timer_create], + [have_time="yes"], + [AC_CHECK_LIB([rt], [timer_create], [ + have_timer="yes" + REALTIME_LIBS="-lrt" +- ])] ++ ],[ ++ AC_SEARCH_LIBS([timer_create], [rt], [ ++ AC_MSG_RESULT(yes) ++ have_timer="yes" ++ REALTIME_LIBS="-lrt -lpthread" ++ ],[], [-lpthread] ++ ) ++ ])] + ) + ++AC_SUBST([REALTIME_LIBS]) ++ + + AC_CHECK_MEMBER([struct sockaddr.sa_len], + AC_DEFINE_UNQUOTED([HAVE_SA_LEN], [1], [Define if struct sockaddr contains sa_len]), [], +-- +2.5.0 + diff --git a/package/util-linux/0007-build-sys-fix-typo.patch b/package/util-linux/0007-build-sys-fix-typo.patch new file mode 100644 index 00000000000..204c3d8f096 --- /dev/null +++ b/package/util-linux/0007-build-sys-fix-typo.patch @@ -0,0 +1,34 @@ +From dea1bd2917ed9490ee96162288e0904e3de9da2d Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Tue, 16 Feb 2016 00:24:30 +0100 +Subject: [PATCH] build-sys: fix typo + +When timer_create is available have_timer must be +set to "yes". But instead have_time is used. + +Replace have_time by have_timer. + +Fixes: +http://autobuild.buildroot.net/results/993/9935cd0522d4f978ba2e788a690f66790686b76b + +Signed-off-by: Romain Naour +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 4559573..3950f0c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -390,7 +390,7 @@ AC_CHECK_FUNCS([clock_gettime], [], + + have_timer="no" + AC_CHECK_FUNCS([timer_create], +- [have_time="yes"], ++ [have_timer="yes"], + [AC_CHECK_LIB([rt], [timer_create], [ + have_timer="yes" + REALTIME_LIBS="-lrt" +-- +2.5.0 + diff --git a/package/util-linux/Config.in b/package/util-linux/Config.in index 39df11cb388..60abd67ad00 100644 --- a/package/util-linux/Config.in +++ b/package/util-linux/Config.in @@ -1,4 +1,4 @@ -config BR2_PACKAGE_UTIL_LINUX +menuconfig BR2_PACKAGE_UTIL_LINUX bool "util-linux" depends on BR2_USE_WCHAR select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE @@ -27,6 +27,7 @@ config BR2_PACKAGE_UTIL_LINUX_LIBMOUNT config BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS bool "libsmartcols" + depends on BR2_USE_MMU # fork help Install libsmartcols. @@ -52,11 +53,6 @@ config BR2_PACKAGE_UTIL_LINUX_AGETTY help Alternative linux getty -config BR2_PACKAGE_UTIL_LINUX_ARCH - bool "arch" - help - Print machine architecture - config BR2_PACKAGE_UTIL_LINUX_BFS bool "bfs" help @@ -66,13 +62,14 @@ config BR2_PACKAGE_UTIL_LINUX_CHFN_CHSH bool "chfn/chsh" depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam select BR2_PACKAGE_LINUX_PAM help Change login shell, real user name and information -comment "chfn/chsh needs a toolchain w/ wchar, locale, dynamic library" +comment "chfn/chsh needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ - || BR2_STATIC_LIBS + || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL config BR2_PACKAGE_UTIL_LINUX_CRAMFS bool "cramfs utilities" @@ -80,11 +77,6 @@ config BR2_PACKAGE_UTIL_LINUX_CRAMFS help Build fsck.cramfs and mkfs.cramfs -config BR2_PACKAGE_UTIL_LINUX_DDATE - bool "ddate" - help - Convert Gregorian dates to Discordian dates - config BR2_PACKAGE_UTIL_LINUX_EJECT bool "eject" help @@ -100,6 +92,11 @@ config BR2_PACKAGE_UTIL_LINUX_FDFORMAT help Low-level format a floppy disk +config BR2_PACKAGE_UTIL_LINUX_FINDFS + bool "findfs" + help + Find a filesystem by label or UUID + config BR2_PACKAGE_UTIL_LINUX_FSCK bool "fsck" help @@ -120,17 +117,23 @@ config BR2_PACKAGE_UTIL_LINUX_LAST help Show a listing of last logged in users +config BR2_PACKAGE_UTIL_LINUX_LINE + bool "line" + help + Read one line + config BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS bool "login utilities" depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam depends on !BR2_STATIC_LIBS + depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam select BR2_PACKAGE_LINUX_PAM help Build login utilities (last, login, su, sulogin) -comment "login utilities needs a toolchain w/ wchar, locale, dynamic library" +comment "login utilities needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library" depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \ - || BR2_STATIC_LIBS + || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL config BR2_PACKAGE_UTIL_LINUX_LOSETUP bool "losetup" @@ -147,15 +150,6 @@ config BR2_PACKAGE_UTIL_LINUX_MINIX help Minix filesystem support -config BR2_PACKAGE_UTIL_LINUX_NSENTER - bool "nsenter" - depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 - help - Enter the namespaces of another process. - -comment "nsenter needs a toolchain w/ headers >= 3.0" - depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 - config BR2_PACKAGE_UTIL_LINUX_MORE bool "more" select BR2_PACKAGE_NCURSES @@ -182,16 +176,25 @@ config BR2_PACKAGE_UTIL_LINUX_NOLOGIN help Politely refuse a login -config BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT - bool "pivot_root" +config BR2_PACKAGE_UTIL_LINUX_NSENTER + bool "nsenter" + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 help - Change the root filesystem + Enter the namespaces of another process. + +comment "nsenter needs a toolchain w/ headers >= 3.0" + depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 config BR2_PACKAGE_UTIL_LINUX_PARTX bool "partition utilities" help Partition tools (addpart, delpart, partx) +config BR2_PACKAGE_UTIL_LINUX_PIVOT_ROOT + bool "pivot_root" + help + Change the root filesystem + config BR2_PACKAGE_UTIL_LINUX_RAW bool "raw" help @@ -214,7 +217,7 @@ config BR2_PACKAGE_UTIL_LINUX_SCHEDUTILS config BR2_PACKAGE_UTIL_LINUX_SETPRIV bool "setpriv" - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 # libcap-ng + depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # libcap-ng select BR2_PACKAGE_LIBCAP_NG help Run a program with different Linux privilege settings @@ -230,6 +233,12 @@ config BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT help Switch to another filesystem as the root of the mount tree +config BR2_PACKAGE_UTIL_LINUX_TUNELP + bool "tunelp" + select BR2_PACKAGE_NCURSES + help + Set various parameters for the lp device + config BR2_PACKAGE_UTIL_LINUX_UL bool "ul" select BR2_PACKAGE_NCURSES diff --git a/package/util-linux/util-linux.hash b/package/util-linux/util-linux.hash index e04d78f2b97..de6082337b5 100644 --- a/package/util-linux/util-linux.hash +++ b/package/util-linux/util-linux.hash @@ -1,2 +1,2 @@ -# From https://www.kernel.org/pub/linux/utils/util-linux/v2.26/sha256sums.asc -sha256 0e29bda142528a48a0a953c39ff63093651a4809042e1790fbd6aa8663fd9666 util-linux-2.26.2.tar.xz +# From https://www.kernel.org/pub/linux/utils/util-linux/v2.27/sha256sums.asc +sha256 0a818fcdede99aec43ffe6ca5b5388bff80d162f2f7bd4541dca94fecb87a290 util-linux-2.27.1.tar.xz diff --git a/package/util-linux/util-linux.mk b/package/util-linux/util-linux.mk index a44a45e6e17..73421742891 100644 --- a/package/util-linux/util-linux.mk +++ b/package/util-linux/util-linux.mk @@ -4,8 +4,8 @@ # ################################################################################ -UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).2 -UTIL_LINUX_VERSION_MAJOR = 2.26 +UTIL_LINUX_VERSION = $(UTIL_LINUX_VERSION_MAJOR).1 +UTIL_LINUX_VERSION_MAJOR = 2.27 UTIL_LINUX_SOURCE = util-linux-$(UTIL_LINUX_VERSION).tar.xz UTIL_LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_VERSION_MAJOR) @@ -23,8 +23,13 @@ UTIL_LINUX_CONF_ENV = scanf_cv_type_modifier=no \ $(if $(BR2_TOOLCHAIN_USES_UCLIBC),ac_cv_header_sys_timex_h=no) UTIL_LINUX_CONF_OPTS += \ --disable-rpath \ - --disable-makeinstall-chown \ - --without-python + --disable-makeinstall-chown + +# system depends on util-linux so we enable systemd support +# (which needs systemd to be installed) +UTIL_LINUX_CONF_OPTS += \ + --without-systemd \ + --with-systemdsystemunitdir=no # We don't want the host-busybox dependency to be added automatically HOST_UTIL_LINUX_DEPENDENCIES = host-pkgconf @@ -62,14 +67,13 @@ UTIL_LINUX_DEPENDENCIES += $(if $(BR2_PACKAGE_LINUX_PAM),linux-pam) # Disable/Enable utilities UTIL_LINUX_CONF_OPTS += \ $(if $(BR2_PACKAGE_UTIL_LINUX_AGETTY),--enable-agetty,--disable-agetty) \ - $(if $(BR2_PACKAGE_UTIL_LINUX_ARCH),--enable-arch,--disable-arch) \ $(if $(BR2_PACKAGE_UTIL_LINUX_BFS),--enable-bfs,--disable-bfs) \ $(if $(BR2_PACKAGE_UTIL_LINUX_CHFN_CHSH),--enable-chfn-chsh,--disable-chfn-chsh) \ $(if $(BR2_PACKAGE_UTIL_LINUX_CRAMFS),--enable-cramfs,--disable-cramfs) \ - $(if $(BR2_PACKAGE_UTIL_LINUX_DDATE),--enable-ddate,--disable-ddate) \ $(if $(BR2_PACKAGE_UTIL_LINUX_EJECT),--enable-eject,--disable-eject) \ $(if $(BR2_PACKAGE_UTIL_LINUX_FALLOCATE),--enable-fallocate,--disable-fallocate) \ $(if $(BR2_PACKAGE_UTIL_LINUX_FDFORMAT),--enable-fdformat,--disable-fdformat) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_FINDFS),--enable-findfs,--disable-findfs) \ $(if $(BR2_PACKAGE_UTIL_LINUX_FSCK),--enable-fsck,--disable-fsck) \ $(if $(BR2_PACKAGE_UTIL_LINUX_HWCLOCK),--enable-hwclock,--disable-hwclock) \ $(if $(BR2_PACKAGE_UTIL_LINUX_KILL),--enable-kill,--disable-kill) \ @@ -78,6 +82,7 @@ UTIL_LINUX_CONF_OPTS += \ $(if $(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),--enable-libmount,--disable-libmount) \ $(if $(BR2_PACKAGE_UTIL_LINUX_LIBSMARTCOLS),--enable-libsmartcols,--disable-libsmartcols) \ $(if $(BR2_PACKAGE_UTIL_LINUX_LIBUUID),--enable-libuuid,--disable-libuuid) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_LINE),--enable-line,--disable-line) \ $(if $(BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS),--enable-last --enable-login --enable-runuser --enable-su --enable-sulogin,--disable-last --disable-login --disable-runuser --disable-su --disable-sulogin) \ $(if $(BR2_PACKAGE_UTIL_LINUX_LOSETUP),--enable-losetup,--disable-losetup) \ $(if $(BR2_PACKAGE_UTIL_LINUX_MESG),--enable-mesg,--disable-mesg) \ @@ -97,6 +102,7 @@ UTIL_LINUX_CONF_OPTS += \ $(if $(BR2_PACKAGE_UTIL_LINUX_SETPRIV),--enable-setpriv,--disable-setpriv) \ $(if $(BR2_PACKAGE_UTIL_LINUX_SETTERM),--enable-setterm,--disable-setterm) \ $(if $(BR2_PACKAGE_UTIL_LINUX_SWITCH_ROOT),--enable-switch_root,--disable-switch_root) \ + $(if $(BR2_PACKAGE_UTIL_LINUX_TUNELP),--enable-tunelp,--disable-tunelp) \ $(if $(BR2_PACKAGE_UTIL_LINUX_UL),--enable-ul,--disable-ul) \ $(if $(BR2_PACKAGE_UTIL_LINUX_UNSHARE),--enable-unshare,--disable-unshare) \ $(if $(BR2_PACKAGE_UTIL_LINUX_UTMPDUMP),--enable-utmpdump,--disable-utmpdump) \ @@ -130,6 +136,19 @@ ifeq ($(BR2_PACKAGE_UTIL_LINUX_BINARIES),) UTIL_LINUX_CONF_OPTS += --disable-all-programs endif +# Install libmount Python bindings +ifeq ($(BR2_PACKAGE_PYTHON)$(BR2_PACKAGE_PYTHON3),y) +UTIL_LINUX_CONF_OPTS += --with-python +UTIL_LINUX_DEPENDENCIES += $(if $(BR2_PACKAGE_PYTHON),python,python3) +ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),y) +UTIL_LINUX_CONF_OPTS += --enable-pylibmount +else +UTIL_LINUX_CONF_OPTS += --disable-pylibmount +endif +else +UTIL_LINUX_CONF_OPTS += --without-python +endif + # Install PAM configuration files ifeq ($(BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS),y) define UTIL_LINUX_INSTALL_PAMFILES diff --git a/package/v4l2grab/Config.in b/package/v4l2grab/Config.in new file mode 100644 index 00000000000..ec3a7a8c546 --- /dev/null +++ b/package/v4l2grab/Config.in @@ -0,0 +1,20 @@ +config BR2_PACKAGE_V4L2GRAB + bool "v4l2grab" + depends on BR2_TOOLCHAIN_HAS_THREADS # libv4l + depends on BR2_USE_MMU # libv4l + depends on !BR2_STATIC_LIBS # libv4l + depends on BR2_INSTALL_LIBSTDCPP # libv4l + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # libv4l + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBV4L + help + Utility for grabbing JPEGs form V4L2 devices. This tool is + similar to v4l2grab available from libv4l contrib directory, + but provides additional features such as JPEG output. + + http://www.twam.info/software/v4l2grab-grabbing-jpegs-from-v4l2-devices + +comment "v4l2grab needs a toolchain w/ threads, dynamic library, C++ and headers >= 3.0" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ + || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 diff --git a/package/v4l2grab/v4l2grab.hash b/package/v4l2grab/v4l2grab.hash new file mode 100644 index 00000000000..17beeec636f --- /dev/null +++ b/package/v4l2grab/v4l2grab.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 ed5b9ca16c3b82d283df69c46aabd6c976b166b4e77b660288d86a147b68caf9 v4l2grab-6a52a234e227a30e16591d1a0e7afc52a2c5d964.tar.gz diff --git a/package/v4l2grab/v4l2grab.mk b/package/v4l2grab/v4l2grab.mk new file mode 100644 index 00000000000..b6f26c6c6a6 --- /dev/null +++ b/package/v4l2grab/v4l2grab.mk @@ -0,0 +1,15 @@ +################################################################################ +# +# v4l2grab +# +################################################################################ + +V4L2GRAB_VERSION = 6a52a234e227a30e16591d1a0e7afc52a2c5d964 +V4L2GRAB_SITE = $(call github,twam,v4l2grab,$(V4L2GRAB_VERSION)) +V4L2GRAB_LICENSE = GPLv2+ +V4L2GRAB_LICENSE_FILES = LICENSE.md +# Fetched from github, no pre-generated configure script provided +V4L2GRAB_AUTORECONF = YES +V4L2GRAB_DEPENDENCIES = jpeg libv4l + +$(eval $(autotools-package)) diff --git a/package/vala/vala.hash b/package/vala/vala.hash index 063ec21bddb..8b16838d6a0 100644 --- a/package/vala/vala.hash +++ b/package/vala/vala.hash @@ -1,2 +1,2 @@ -# From https://download.gnome.org/sources/vala/0.28/vala-0.28.0.sha256sum -sha256 0d9e3bd3f82145664875f7c29b2f544ba92d2814f75412948f774c0727fc977f vala-0.28.0.tar.xz +# From https://download.gnome.org/sources/vala/0.30/vala-0.30.1.sha256sum +sha256 23add78e5c6a5e6df019d4a885c9c79814c9e0b957519ec8a4f4d826c4e5df2c vala-0.30.1.tar.xz diff --git a/package/vala/vala.mk b/package/vala/vala.mk index 9dedd8f9876..56d4db37807 100644 --- a/package/vala/vala.mk +++ b/package/vala/vala.mk @@ -4,8 +4,8 @@ # ################################################################################ -VALA_VERSION_MAJOR = 0.28 -VALA_VERSION = $(VALA_VERSION_MAJOR).0 +VALA_VERSION_MAJOR = 0.30 +VALA_VERSION = $(VALA_VERSION_MAJOR).1 VALA_SITE = http://download.gnome.org/sources/vala/$(VALA_VERSION_MAJOR) VALA_SOURCE = vala-$(VALA_VERSION).tar.xz VALA_LICENSE = LGPLv2.1+ diff --git a/package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch b/package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch index 1c5966befe4..8a6003cbae6 100644 --- a/package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch +++ b/package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch @@ -1,7 +1,7 @@ -From bd9d2af89e45081132c150e5e4bdf9a12dfca693 Mon Sep 17 00:00:00 2001 +From ff29b837f21a69c79289c3a87b03f8c23e05616e Mon Sep 17 00:00:00 2001 From: Pierre Habouzit Date: Tue, 10 May 2011 23:11:45 +0200 -Subject: [PATCH 1/2] workaround SIGSEGV on PPC. +Subject: [PATCH] workaround SIGSEGV on PPC. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -13,7 +13,7 @@ Signed-off-by: Jérôme Pouiller 1 file changed, 4 insertions(+) diff --git a/coregrind/m_machine.c b/coregrind/m_machine.c -index 42d8ce8..3c9900f 100644 +index 6110c93..298a00e 100644 --- a/coregrind/m_machine.c +++ b/coregrind/m_machine.c @@ -27,6 +27,10 @@ @@ -26,7 +26,7 @@ index 42d8ce8..3c9900f 100644 + #include "pub_core_basics.h" #include "pub_core_vki.h" - #include "pub_core_libcsetjmp.h" // setjmp facilities + #include "pub_core_threadstate.h" -- -1.9.1 +2.1.4 diff --git a/package/valgrind/0003-add-missing-ptrace-getsiginfo-on-powerpc.patch b/package/valgrind/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch similarity index 52% rename from package/valgrind/0003-add-missing-ptrace-getsiginfo-on-powerpc.patch rename to package/valgrind/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch index f663825aeb9..44adfc4190a 100644 --- a/package/valgrind/0003-add-missing-ptrace-getsiginfo-on-powerpc.patch +++ b/package/valgrind/0002-Define-PTRACE_GETSIGINFO-on-PowerPC-when-not-availab.patch @@ -1,4 +1,7 @@ -Define PTRACE_GETSIGINFO on PowerPC when not available +From 7311686d6286972ff97cc18b2416a4cdd7fc5c7e Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 31 Oct 2015 12:15:24 +0100 +Subject: [PATCH] Define PTRACE_GETSIGINFO on PowerPC when not available uClibc 0.9.33.2 does not define PTRACE_GETSIGINFO in PowerPC. Even though Buildroot has a uClibc patch doing that, it doesn't solve the @@ -8,12 +11,15 @@ PTRACE_GETSIGINFO on PowerPC to the right value, when such definition is not available from the C library. Signed-off-by: Thomas Petazzoni +--- + coregrind/vgdb-invoker-ptrace.c | 6 ++++++ + 1 file changed, 6 insertions(+) -Index: b/coregrind/vgdb-invoker-ptrace.c -=================================================================== +diff --git a/coregrind/vgdb-invoker-ptrace.c b/coregrind/vgdb-invoker-ptrace.c +index d65f59a..bdefac2 100644 --- a/coregrind/vgdb-invoker-ptrace.c +++ b/coregrind/vgdb-invoker-ptrace.c -@@ -71,6 +71,12 @@ +@@ -72,6 +72,12 @@ # endif #endif @@ -23,6 +29,9 @@ Index: b/coregrind/vgdb-invoker-ptrace.c +# endif +#endif + - #if VEX_HOST_WORDSIZE == 8 - typedef Addr64 CORE_ADDR; - #elif VEX_HOST_WORDSIZE == 4 + // 32-bit or 64-bit wide, depending on primary architecture. + typedef Addr CORE_ADDR; + typedef Addr PTRACE_XFER_TYPE; +-- +2.1.4 + diff --git a/package/valgrind/0002-Fix-configure-for-Linux-kernel-4.0-rc1.patch b/package/valgrind/0002-Fix-configure-for-Linux-kernel-4.0-rc1.patch deleted file mode 100644 index 1d0ba26b401..00000000000 --- a/package/valgrind/0002-Fix-configure-for-Linux-kernel-4.0-rc1.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 8e958577f01e2e877fb1dbdca09718ef6ea0c748 Mon Sep 17 00:00:00 2001 -From: cborntra -Date: Mon, 23 Feb 2015 20:19:03 +0000 -Subject: [PATCH] Fix configure for Linux kernel >= 4.0-rc1 In addition raise - the minimal Linux version to 2.6 as there is almost no test coverage for 2.4 - and 2.6 was released in 2003. - -Signed-off-by: Christian Artin - -git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14955 a5019735-40e9-0310-863c-91ae7b9d1cf9 ---- - configure.ac | 18 ++++++------------ - 1 file changed, 6 insertions(+), 12 deletions(-) - -diff --git a/configure.ac b/configure.ac -index bdf5f22..136f49a 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -325,20 +325,14 @@ case "${host_os}" in - kernel=`uname -r` - - case "${kernel}" in -- 2.6.*|3.*) -- AC_MSG_RESULT([2.6.x/3.x family (${kernel})]) -- AC_DEFINE([KERNEL_2_6], 1, [Define to 1 if you're using Linux 2.6.x or Linux 3.x]) -- ;; -- -- 2.4.*) -- AC_MSG_RESULT([2.4 family (${kernel})]) -- AC_DEFINE([KERNEL_2_4], 1, [Define to 1 if you're using Linux 2.4.x]) -- ;; -- -- *) -+ 0.*|1.*|2.0.*|2.1.*|2.2.*|2.3.*|2.4.*|2.5.*) - AC_MSG_RESULT([unsupported (${kernel})]) -- AC_MSG_ERROR([Valgrind works on kernels 2.4, 2.6]) -+ AC_MSG_ERROR([Valgrind needs a Linux kernel >= 2.6]) - ;; -+ -+ *) -+ AC_MSG_RESULT([2.6 or later (${kernel})]) -+ ;; - esac - - ;; --- -2.3.7 - diff --git a/package/valgrind/0003-mips-replace-addi-with-addiu.patch b/package/valgrind/0003-mips-replace-addi-with-addiu.patch new file mode 100644 index 00000000000..624f6fa39b7 --- /dev/null +++ b/package/valgrind/0003-mips-replace-addi-with-addiu.patch @@ -0,0 +1,137 @@ +mips: replace addi with addiu + +ADDI instruction has been removed in R6 so let's use ADDIU instead. + +This patch has been sent upstream: + + https://bugs.kde.org/show_bug.cgi?id=356112 + +Signed-off-by: Vicente Olivert Riera + +Index: valgrind/coregrind/m_dispatch/dispatch-mips32-linux.S +=================================================================== +--- valgrind/coregrind/m_dispatch/dispatch-mips32-linux.S (revision 15740) ++++ valgrind/coregrind/m_dispatch/dispatch-mips32-linux.S (working copy) +@@ -196,7 +196,7 @@ + addu $13, $13, $14 + + lw $12, 0($13) /* t3 = VG_(tt_fast)[hash] :: ULong* */ +- addi $13, $13, 4 ++ addiu $13, $13, 4 + lw $25, 0($13) /* little-endian, so comparing 1st 32bit word */ + nop + +Index: valgrind/coregrind/m_dispatch/dispatch-mips64-linux.S +=================================================================== +--- valgrind/coregrind/m_dispatch/dispatch-mips64-linux.S (revision 15740) ++++ valgrind/coregrind/m_dispatch/dispatch-mips64-linux.S (working copy) +@@ -196,7 +196,7 @@ + daddu $13, $13, $14 + + ld $12, 0($13) /* t3 = VG_(tt_fast)[hash] :: ULong* */ +- daddi $13, $13, 8 ++ daddiu $13, $13, 8 + ld $25, 0($13) /* little-endian, so comparing 1st 32bit word */ + nop + +Index: valgrind/coregrind/m_libcsetjmp.c +=================================================================== +--- valgrind/coregrind/m_libcsetjmp.c (revision 15740) ++++ valgrind/coregrind/m_libcsetjmp.c (working copy) +@@ -594,7 +594,7 @@ + /* Checking whether second argument is zero. */ + " bnez $a1, 1f \n\t" + " nop \n\t" +-" addi $a1, $a1, 1 \n\t" /* We must return 1 if val=0. */ ++" addiu $a1, $a1, 1 \n\t" /* We must return 1 if val=0. */ + "1: \n\t" + " move $v0, $a1 \n\t" /* Return value of second argument. */ + " j $ra \n\t" +Index: valgrind/coregrind/m_syswrap/syswrap-mips64-linux.c +=================================================================== +--- valgrind/coregrind/m_syswrap/syswrap-mips64-linux.c (revision 15740) ++++ valgrind/coregrind/m_syswrap/syswrap-mips64-linux.c (working copy) +@@ -173,7 +173,7 @@ + " ld $30, 8($29)\n" + " ld $28, 16($29)\n" + " jr $31\n" +-" daddi $29,$29, 32\n" ++" daddiu $29,$29, 32\n" + ".previous\n" + ); + +Index: valgrind/coregrind/m_trampoline.S +=================================================================== +--- valgrind/coregrind/m_trampoline.S (revision 15740) ++++ valgrind/coregrind/m_trampoline.S (working copy) +@@ -1254,8 +1254,8 @@ + //la $a0, string + j strlen_cond + strlen_loop: +- addi $v0, $v0, 1 +- addi $a0, $a0, 1 ++ addiu $v0, $v0, 1 ++ addiu $a0, $a0, 1 + strlen_cond: + lbu $t0, ($a0) + bne $t0, $zero, strlen_loop +Index: valgrind/helgrind/tests/tc08_hbl2.c +=================================================================== +--- valgrind/helgrind/tests/tc08_hbl2.c (revision 15740) ++++ valgrind/helgrind/tests/tc08_hbl2.c (working copy) +@@ -125,11 +125,11 @@ + # define INC(_lval,_lqual) \ + __asm__ __volatile__ ( \ + "L1xyzzy1" _lqual":\n" \ +- " move $t0, %0\n" \ +- " ll $t1, 0($t0)\n" \ +- " addi $t1, $t1, 1\n" \ +- " sc $t1, 0($t0)\n" \ +- " beqz $t1, L1xyzzy1" _lqual \ ++ " move $t0, %0\n" \ ++ " ll $t1, 0($t0)\n" \ ++ " addiu $t1, $t1, 1\n" \ ++ " sc $t1, 0($t0)\n" \ ++ " beqz $t1, L1xyzzy1" _lqual \ + : /*out*/ : /*in*/ "r"(&(_lval)) \ + : /*trash*/ "t0", "t1", "memory" \ + ) +Index: valgrind/VEX/priv/guest_mips_toIR.c +=================================================================== +--- valgrind/VEX/priv/guest_mips_toIR.c (revision 3206) ++++ valgrind/VEX/priv/guest_mips_toIR.c (working copy) +@@ -16794,6 +16794,7 @@ + mkU64(0x0) : mkU32(0x0)))), imm); + break; + ++#if defined(__mips__) && ((defined(__mips_isa_rev) && __mips_isa_rev < 6)) + case 0x08: { /* ADDI */ + DIP("addi r%u, r%u, %u", rt, rs, imm); + IRTemp tmpRs32 = newTemp(Ity_I32); +@@ -16831,6 +16832,8 @@ + putIReg(rt, mkWidenFrom32(ty, mkexpr(t0), True)); + break; + } ++#endif ++ + case 0x09: /* ADDIU */ + DIP("addiu r%u, r%u, %u", rt, rs, imm); + if (mode64) { +@@ -16888,7 +16891,8 @@ + mkU32(extend_s_16to32(imm))))); + break; + +- case 0x18: { /* Doubleword Add Immidiate - DADD; MIPS64 */ ++#if defined(__mips__) && ((defined(__mips_isa_rev) && __mips_isa_rev < 6)) ++ case 0x18: { /* Doubleword Add Immidiate - DADDI; MIPS64 */ + DIP("daddi r%u, r%u, %u", rt, rs, imm); + IRTemp tmpRs64 = newTemp(Ity_I64); + assign(tmpRs64, getIReg(rs)); +@@ -16926,6 +16930,7 @@ + putIReg(rt, mkexpr(t0)); + break; + } ++#endif + + case 0x19: /* Doubleword Add Immidiate Unsigned - DADDIU; MIPS64 */ + DIP("daddiu r%u, r%u, %u", rt, rs, imm); diff --git a/package/valgrind/0004-Fixes-for-musl-libc.patch b/package/valgrind/0004-Fixes-for-musl-libc.patch new file mode 100644 index 00000000000..d543728ac5b --- /dev/null +++ b/package/valgrind/0004-Fixes-for-musl-libc.patch @@ -0,0 +1,99 @@ +From 50859f3577418cc42f76e1319e699202a615bbe1 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Sat, 31 Oct 2015 19:45:04 +0100 +Subject: [PATCH] Fixes for musl libc. + +- add musl libc detection (prevents configure error) +- adjust preload and symbol names (based on the OpenWrt + patch, see [1]) + +[1] https://dev.openwrt.org/browser/trunk/package/devel/valgrind/patches/200-musl_fix.patch?rev=46302 + +Signed-off-by: Peter Seiderer +--- + configure.ac | 16 ++++++++++++++-- + coregrind/vg_preloaded.c | 2 +- + include/pub_tool_redir.h | 9 ++++++++- + 3 files changed, 23 insertions(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 8ab7f9b..e865bf5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1009,6 +1009,13 @@ if test x$VGCONF_PLATFORM_PRI_CAPS = xX86_SOLARIS \ + GLIBC_VERSION="solaris" + fi + ++# GLIBC_VERSION is empty if a musl libc is used, so use the toolchain tuple ++# in this case. ++if test x$GLIBC_VERSION = x; then ++ if $CC -dumpmachine | grep -q musl; then ++ GLIBC_VERSION=musl ++ fi ++fi + + AC_MSG_CHECKING([the glibc version]) + +@@ -1064,10 +1071,15 @@ case "${GLIBC_VERSION}" in + # DEFAULT_SUPP set in host_os switch-case above. + # No other suppression file is used. + ;; ++ musl) ++ AC_MSG_RESULT(Musl) ++ AC_DEFINE([MUSL_LIBC], 1, [Define to 1 if you're using Musl libc]) ++ # no DEFAULT_SUPP file yet for musl libc. ++ ;; + 2.0|2.1|*) + AC_MSG_RESULT([unsupported version ${GLIBC_VERSION}]) +- AC_MSG_ERROR([Valgrind requires glibc version 2.2 or later,]) +- AC_MSG_ERROR([Darwin libc, Bionic libc or Solaris libc]) ++ AC_MSG_ERROR([Valgrind requires glibc version 2.2 or later, uClibc,]) ++ AC_MSG_ERROR([musl libc, Darwin libc, Bionic libc or Solaris libc]) + ;; + esac + +diff --git a/coregrind/vg_preloaded.c b/coregrind/vg_preloaded.c +index 2ea7a7a..7b51aba 100644 +--- a/coregrind/vg_preloaded.c ++++ b/coregrind/vg_preloaded.c +@@ -56,7 +56,7 @@ + void VG_NOTIFY_ON_LOAD(freeres)( void ); + void VG_NOTIFY_ON_LOAD(freeres)( void ) + { +-# if !defined(__UCLIBC__) \ ++# if !defined(__UCLIBC__) && !defined(MUSL_LIBC) \ + && !defined(VGPV_arm_linux_android) \ + && !defined(VGPV_x86_linux_android) \ + && !defined(VGPV_mips32_linux_android) \ +diff --git a/include/pub_tool_redir.h b/include/pub_tool_redir.h +index bac00d7..babcf9a 100644 +--- a/include/pub_tool_redir.h ++++ b/include/pub_tool_redir.h +@@ -242,8 +242,11 @@ + /* --- Soname of the standard C library. --- */ + + #if defined(VGO_linux) || defined(VGO_solaris) ++# if defined(MUSL_LIBC) ++# define VG_Z_LIBC_SONAME libcZdZa // libc.* ++#else + # define VG_Z_LIBC_SONAME libcZdsoZa // libc.so* +- ++#endif + #elif defined(VGO_darwin) && (DARWIN_VERS <= DARWIN_10_6) + # define VG_Z_LIBC_SONAME libSystemZdZaZddylib // libSystem.*.dylib + +@@ -274,7 +277,11 @@ + /* --- Soname of the pthreads library. --- */ + + #if defined(VGO_linux) ++# if defined(MUSL_LIBC) ++# define VG_Z_LIBPTHREAD_SONAME libcZdZa // libc.* ++#else + # define VG_Z_LIBPTHREAD_SONAME libpthreadZdsoZd0 // libpthread.so.0 ++#endif + #elif defined(VGO_darwin) + # define VG_Z_LIBPTHREAD_SONAME libSystemZdZaZddylib // libSystem.*.dylib + #elif defined(VGO_solaris) +-- +2.1.4 + diff --git a/package/valgrind/0004-configure.ac-Generalize-glibc-version-check.patch b/package/valgrind/0004-configure.ac-Generalize-glibc-version-check.patch deleted file mode 100644 index 5b1d07bbe62..00000000000 --- a/package/valgrind/0004-configure.ac-Generalize-glibc-version-check.patch +++ /dev/null @@ -1,228 +0,0 @@ -From 4f3062b90b12f3e031a1c949c50a79e0d13de485 Mon Sep 17 00:00:00 2001 -From: bart -Date: Sat, 13 Sep 2014 10:53:00 +0000 -Subject: [PATCH] configure.ac: Generalize glibc version check - -git-svn-id: svn://svn.valgrind.org/valgrind/trunk@14530 a5019735-40e9-0310-863c-91ae7b9d1cf9 - -Signed-off-by: Peter Korsgaard ---- - configure.ac | 139 +++++++--------------------------------------------- - coregrind/m_redir.c | 11 ++--- - 2 files changed, 22 insertions(+), 128 deletions(-) - -diff --git a/configure.ac b/configure.ac -index ba11ec6..863cd7e 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -875,141 +875,41 @@ AC_EGREP_CPP([BIONIC_LIBC], [ - GLIBC_VERSION="bionic") - - --AC_MSG_CHECKING([the GLIBC_VERSION version]) -+AC_MSG_CHECKING([the glibc version]) - - case "${GLIBC_VERSION}" in - 2.2) -- AC_MSG_RESULT(2.2 family) -- AC_DEFINE([GLIBC_2_2], 1, [Define to 1 if you're using glibc 2.2.x]) -+ AC_MSG_RESULT(${GLIBC_VERSION} family) - DEFAULT_SUPP="glibc-2.2.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.2-LinuxThreads-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" - ;; -- -- 2.3) -- AC_MSG_RESULT(2.3 family) -- AC_DEFINE([GLIBC_2_3], 1, [Define to 1 if you're using glibc 2.3.x]) -- DEFAULT_SUPP="glibc-2.3.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- -- 2.4) -- AC_MSG_RESULT(2.4 family) -- AC_DEFINE([GLIBC_2_4], 1, [Define to 1 if you're using glibc 2.4.x]) -- DEFAULT_SUPP="glibc-2.4.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- -- 2.5) -- AC_MSG_RESULT(2.5 family) -- AC_DEFINE([GLIBC_2_5], 1, [Define to 1 if you're using glibc 2.5.x]) -- DEFAULT_SUPP="glibc-2.5.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.6) -- AC_MSG_RESULT(2.6 family) -- AC_DEFINE([GLIBC_2_6], 1, [Define to 1 if you're using glibc 2.6.x]) -- DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.7) -- AC_MSG_RESULT(2.7 family) -- AC_DEFINE([GLIBC_2_7], 1, [Define to 1 if you're using glibc 2.7.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.8) -- AC_MSG_RESULT(2.8 family) -- AC_DEFINE([GLIBC_2_8], 1, [Define to 1 if you're using glibc 2.8.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.9) -- AC_MSG_RESULT(2.9 family) -- AC_DEFINE([GLIBC_2_9], 1, [Define to 1 if you're using glibc 2.9.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.10) -- AC_MSG_RESULT(2.10 family) -- AC_DEFINE([GLIBC_2_10], 1, [Define to 1 if you're using glibc 2.10.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.11) -- AC_MSG_RESULT(2.11 family) -- AC_DEFINE([GLIBC_2_11], 1, [Define to 1 if you're using glibc 2.11.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.12) -- AC_MSG_RESULT(2.12 family) -- AC_DEFINE([GLIBC_2_12], 1, [Define to 1 if you're using glibc 2.12.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.13) -- AC_MSG_RESULT(2.13 family) -- AC_DEFINE([GLIBC_2_13], 1, [Define to 1 if you're using glibc 2.13.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.14) -- AC_MSG_RESULT(2.14 family) -- AC_DEFINE([GLIBC_2_14], 1, [Define to 1 if you're using glibc 2.14.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -+ 2.[[3-6]]) -+ AC_MSG_RESULT(${GLIBC_VERSION} family) -+ DEFAULT_SUPP="glibc-${GLIBC_VERSION}.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" - ;; -- 2.15) -- AC_MSG_RESULT(2.15 family) -- AC_DEFINE([GLIBC_2_15], 1, [Define to 1 if you're using glibc 2.15.x]) -+ 2.[[7-9]]) -+ AC_MSG_RESULT(${GLIBC_VERSION} family) - DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" - ;; -- 2.16) -- AC_MSG_RESULT(2.16 family) -- AC_DEFINE([GLIBC_2_16], 1, [Define to 1 if you're using glibc 2.16.x]) -+ 2.10|2.11) -+ AC_MSG_RESULT(${GLIBC_VERSION} family) -+ AC_DEFINE([GLIBC_MANDATORY_STRLEN_REDIRECT], 1, -+ [Define to 1 if strlen() has been optimized heavily (amd64 glibc >= 2.10)]) - DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" - ;; -- 2.17) -- AC_MSG_RESULT(2.17 family) -- AC_DEFINE([GLIBC_2_17], 1, [Define to 1 if you're using glibc 2.17.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.18) -- AC_MSG_RESULT(2.18 family) -- AC_DEFINE([GLIBC_2_18], 1, [Define to 1 if you're using glibc 2.18.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.19) -- AC_MSG_RESULT(2.19 family) -- AC_DEFINE([GLIBC_2_19], 1, [Define to 1 if you're using glibc 2.19.x]) -- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" -- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -- ;; -- 2.20) -- AC_MSG_RESULT(2.20 family) -- AC_DEFINE([GLIBC_2_20], 1, [Define to 1 if you're using glibc 2.20.x]) -+ 2.*) -+ AC_MSG_RESULT(${GLIBC_VERSION} family) -+ AC_DEFINE([GLIBC_MANDATORY_STRLEN_REDIRECT], 1, -+ [Define to 1 if strlen() has been optimized heavily (amd64 glibc >= 2.10)]) -+ AC_DEFINE([GLIBC_MANDATORY_INDEX_AND_STRLEN_REDIRECT], 1, -+ [Define to 1 if index() and strlen() have been optimized heavily (x86 glibc >= 2.12)]) - DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}" - DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}" -@@ -1024,10 +924,9 @@ case "${GLIBC_VERSION}" in - AC_DEFINE([BIONIC_LIBC], 1, [Define to 1 if you're using Bionic]) - DEFAULT_SUPP="bionic.supp ${DEFAULT_SUPP}" - ;; -- -- *) -+ 2.0|2.1|*) - AC_MSG_RESULT([unsupported version ${GLIBC_VERSION}]) -- AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.19]) -+ AC_MSG_ERROR([Valgrind requires glibc version 2.2 or later]) - AC_MSG_ERROR([or Darwin or Bionic libc]) - ;; - esac -diff --git a/coregrind/m_redir.c b/coregrind/m_redir.c -index 9d3c9b1..9aee707 100644 ---- a/coregrind/m_redir.c -+++ b/coregrind/m_redir.c -@@ -53,7 +53,7 @@ - #include "pub_core_demangle.h" // VG_(maybe_Z_demangle) - #include "pub_core_libcproc.h" // VG_(libdir) - --#include "config.h" /* GLIBC_2_* */ -+#include "config.h" /* GLIBC_MANDATORY_*_REDIRECT */ - - - /* This module is a critical part of the redirection/intercept system. -@@ -1242,10 +1242,7 @@ void VG_(redir_initialise) ( void ) - start, otherwise ld.so (glibc-2.3.5) makes a lot of noise. */ - if (0==VG_(strcmp)("Memcheck", VG_(details).name)) { - const HChar** mandatory; --# if defined(GLIBC_2_2) || defined(GLIBC_2_3) || defined(GLIBC_2_4) \ -- || defined(GLIBC_2_5) || defined(GLIBC_2_6) || defined(GLIBC_2_7) \ -- || defined(GLIBC_2_8) || defined(GLIBC_2_9) \ -- || defined(GLIBC_2_10) || defined(GLIBC_2_11) -+# ifndef GLIBC_MANDATORY_INDEX_AND_STRLEN_REDIRECT - mandatory = NULL; - # else - /* for glibc-2.12 and later, this is mandatory - can't sanely -@@ -1282,9 +1279,7 @@ void VG_(redir_initialise) ( void ) - add_hardwired_spec( - "ld-linux-x86-64.so.2", "strlen", - (Addr)&VG_(amd64_linux_REDIR_FOR_strlen), --# if defined(GLIBC_2_2) || defined(GLIBC_2_3) || defined(GLIBC_2_4) \ -- || defined(GLIBC_2_5) || defined(GLIBC_2_6) || defined(GLIBC_2_7) \ -- || defined(GLIBC_2_8) || defined(GLIBC_2_9) -+# ifndef GLIBC_MANDATORY_STRLEN_REDIRECT - NULL - # else - /* for glibc-2.10 and later, this is mandatory - can't sanely --- -2.1.4 - diff --git a/package/valgrind/Config.in b/package/valgrind/Config.in index 8da007b86e9..21b2608ffd6 100644 --- a/package/valgrind/Config.in +++ b/package/valgrind/Config.in @@ -1,9 +1,13 @@ +comment "valgrind needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + config BR2_PACKAGE_VALGRIND bool "valgrind" depends on BR2_ARM_CPU_ARMV7A || BR2_i386 || \ BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \ BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \ BR2_x86_64 + depends on !BR2_STATIC_LIBS help Tool for debugging and profiling Linux programs. diff --git a/package/valgrind/valgrind.hash b/package/valgrind/valgrind.hash index f311ea48cd7..f2cd6e84bcd 100644 --- a/package/valgrind/valgrind.hash +++ b/package/valgrind/valgrind.hash @@ -1,2 +1,2 @@ # From http://valgrind.org/downloads/current.html -md5 60ddae962bc79e7c95cfc4667245707f valgrind-3.10.1.tar.bz2 +md5 4ea62074da73ae82e0162d6550d3f129 valgrind-3.11.0.tar.bz2 diff --git a/package/valgrind/valgrind.mk b/package/valgrind/valgrind.mk index f8f205e9344..46ba13eb126 100644 --- a/package/valgrind/valgrind.mk +++ b/package/valgrind/valgrind.mk @@ -4,15 +4,36 @@ # ################################################################################ -VALGRIND_VERSION = 3.10.1 +VALGRIND_VERSION = 3.11.0 VALGRIND_SITE = http://valgrind.org/downloads VALGRIND_SOURCE = valgrind-$(VALGRIND_VERSION).tar.bz2 VALGRIND_LICENSE = GPLv2 GFDLv1.2 VALGRIND_LICENSE_FILES = COPYING COPYING.DOCS -VALGRIND_CONF_OPTS = --disable-tls -VALGRIND_AUTORECONF = YES +VALGRIND_CONF_OPTS = --disable-ubsan VALGRIND_INSTALL_STAGING = YES +# patch 0004-Fixes-for-musl-libc.patch touching configure.ac +VALGRIND_AUTORECONF = YES + +ifeq ($(BR2_GCC_ENABLE_TLS),y) +VALGRIND_CONF_OPTS += --enable-tls +else +VALGRIND_CONF_OPTS += --disable-tls +endif + +# When Valgrind detects a 32-bit MIPS architecture, it forcibly adds +# -march=mips32 to CFLAGS; when it detects a 64-bit MIPS architecture, +# it forcibly adds -march=mips64. This causes Valgrind to be built +# always for the first ISA revision level (R1), even when the user has +# configured Buildroot for the second ISA revision level (R2). +# +# Override the CFLAGS variable (which Valgrind appends to its CFLAGS) +# and pass the right -march option, so they take precedence over +# Valgrind's wrongfully detected value. +ifeq ($(BR2_mips)$(BR2_mipsel)$(BR2_mips64)$(BR2_mips64el),y) +VALGRIND_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -march=$(BR2_GCC_TARGET_ARCH)" +endif + # On ARM, Valgrind only supports ARMv7, and uses the arch part of the # host tuple to determine whether it's being built for ARMv7 or # not. Therefore, we adjust the host tuple to specify we're on diff --git a/package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch b/package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch new file mode 100644 index 00000000000..42410c8d13d --- /dev/null +++ b/package/vboot-utils/0001-Add-missing-definition-of-MTD_CHAR_MAJOR.patch @@ -0,0 +1,30 @@ +From 1438211660e700b2c9505863aae1cc957236b7c8 Mon Sep 17 00:00:00 2001 +From: Alex Suykov +Date: Thu, 21 Jan 2016 21:59:46 +0100 +Subject: [PATCH] Add missing definition of MTD_CHAR_MAJOR + +This definition missing from for kernels <= 3.13 + +Signed-off-by: Alex Suykov +--- + cgpt/cgpt_wrapper.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/cgpt/cgpt_wrapper.c b/cgpt/cgpt_wrapper.c +index dcfaab9..4d07aad 100644 +--- a/cgpt/cgpt_wrapper.c ++++ b/cgpt/cgpt_wrapper.c +@@ -25,6 +25,10 @@ + #include "cgpt_nor.h" + #include "cryptolib.h" + ++#ifndef MTD_CHAR_MAJOR ++#define MTD_CHAR_MAJOR 90 ++#endif ++ + // Check if cmdline |argv| has "-D". "-D" signifies that GPT structs are stored + // off device, and hence we should not wrap around cgpt. + static bool has_dash_D(int argc, const char *const argv[]) { +-- +2.6.4 + diff --git a/package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch b/package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch new file mode 100644 index 00000000000..4d559eabaf4 --- /dev/null +++ b/package/vboot-utils/0002-Add-missing-header-include-for-ssize_t.patch @@ -0,0 +1,27 @@ +From b6bed8d4e9453bc74ba021c8c17e20c3b5964c37 Mon Sep 17 00:00:00 2001 +From: Alex Suykov +Date: Thu, 21 Jan 2016 22:00:34 +0100 +Subject: [PATCH] Add missing header include for ssize_t + +The code uses ssize_t which is usually defined in . + +Signed-off-by: Alex Suykov +--- + host/lib/fmap.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/host/lib/fmap.c b/host/lib/fmap.c +index c95338d..e3db826 100644 +--- a/host/lib/fmap.c ++++ b/host/lib/fmap.c +@@ -6,6 +6,7 @@ + + #include + #include ++#include + + #include "fmap.h" + +-- +2.6.4 + diff --git a/package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch b/package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch new file mode 100644 index 00000000000..86374ca8541 --- /dev/null +++ b/package/vboot-utils/0003-Avoid-RSA-type-redefinition.patch @@ -0,0 +1,44 @@ +From 593407d2b3ea3b871d55ec399671e48c84b900a7 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Thu, 21 Jan 2016 22:01:37 +0100 +Subject: [PATCH] Avoid RSA type redefinition + +The host_key.h headers does: + + typedef struct rsa_st RSA; + +But this type definition is already done by the OpenSSL headers. + +While such a type redefinition is legal with recent gcc versions, it +doesn't build with older gcc versions such as gcc 4.4. + +To work around this problem, we instead use a forward declaration of +"struct rsa_st", and change the only place where the RSA type was used +by "struct rsa_st". + +Signed-off-by: Thomas Petazzoni +--- + host/lib/include/host_key.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/host/lib/include/host_key.h b/host/lib/include/host_key.h +index 9f98ccc..c2d01a5 100644 +--- a/host/lib/include/host_key.h ++++ b/host/lib/include/host_key.h +@@ -12,11 +12,11 @@ + #include "vboot_struct.h" + + +-typedef struct rsa_st RSA; ++struct rsa_st; + + /* Private key data */ + typedef struct VbPrivateKey { +- RSA* rsa_private_key; /* Private key data */ ++ struct rsa_rt* rsa_private_key; /* Private key data */ + uint64_t algorithm; /* Algorithm to use when signing */ + } VbPrivateKey; + +-- +2.6.4 + diff --git a/package/vboot-utils/Config.in.host b/package/vboot-utils/Config.in.host new file mode 100644 index 00000000000..aa0caef2e26 --- /dev/null +++ b/package/vboot-utils/Config.in.host @@ -0,0 +1,7 @@ +config BR2_PACKAGE_HOST_VBOOT_UTILS + bool "host vboot utils" + select BR2_PACKAGE_HOST_UTIL_LINUX + help + Chromium OS verified boot utilities: futility and cgpt. + + https://www.chromium.org/chromium-os/chromiumos-design-docs/verified-boot diff --git a/package/vboot-utils/vboot-utils.hash b/package/vboot-utils/vboot-utils.hash new file mode 100644 index 00000000000..e16142389bf --- /dev/null +++ b/package/vboot-utils/vboot-utils.hash @@ -0,0 +1,2 @@ +# Git shapshot +none xxx bbdd62f9b030db7ad8eef789aaf58a7ff9a25656.tar.gz diff --git a/package/vboot-utils/vboot-utils.mk b/package/vboot-utils/vboot-utils.mk new file mode 100644 index 00000000000..a7592d6a4e7 --- /dev/null +++ b/package/vboot-utils/vboot-utils.mk @@ -0,0 +1,38 @@ +################################################################################ +# +# vboot-utils +# +################################################################################ + +VBOOT_UTILS_VERSION = bbdd62f9b030db7ad8eef789aaf58a7ff9a25656 +VBOOT_UTILS_SITE = https://chromium.googlesource.com/chromiumos/platform/vboot_reference +VBOOT_UTILS_SITE_METHOD = git +VBOOT_UTILS_LICENSE = BSD-3c +VBOOT_UTILS_LICENSE_FILES = LICENSE + +HOST_VBOOT_UTILS_DEPENDENCIES = host-openssl host-util-linux host-pkgconf + +# vboot_reference contains code that goes into bootloaders, +# utilities intended for the target system, and a bunch of scripts +# for Chromium OS build system. Most of that does not make sense +# in a buildroot host-package. +# +# We only need futility for signing images, the keys, and cgpt for boot +# media partitioning. +# +# make target for futility is "futil". + +define HOST_VBOOT_UTILS_BUILD_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \ + CC="$(HOSTCC)" \ + CFLAGS="$(HOST_CFLAGS) -D_LARGEFILE64_SOURCE -D_GNU_SOURCE" \ + LDFLAGS="$(HOST_LDFLAGS)" \ + futil cgpt +endef + +define HOST_VBOOT_UTILS_INSTALL_CMDS + $(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)/usr \ + futil_install cgpt_install devkeys_install +endef + +$(eval $(host-generic-package)) diff --git a/package/vde2/vde2.mk b/package/vde2/vde2.mk index f4a8c846165..bad758d5ae6 100644 --- a/package/vde2/vde2.mk +++ b/package/vde2/vde2.mk @@ -7,7 +7,7 @@ VDE2_VERSION = 2.3.2 VDE2_SOURCE = vde2-$(VDE2_VERSION).tar.bz2 VDE2_SITE = http://downloads.sourceforge.net/project/vde/vde2/$(VDE2_VERSION) -VDE2_LICENSE = GPLv2+ LGPLv2.1+ BSD-3c +VDE2_LICENSE = GPLv2+, LGPLv2.1+, BSD-3c VDE2_LICENSE_FILES = COPYING COPYING.libvdeplug COPYING.slirpvde VDE2_INSTALL_STAGING = YES diff --git a/package/vim/vim.mk b/package/vim/vim.mk index 518afafdce9..6e05050f1e2 100644 --- a/package/vim/vim.mk +++ b/package/vim/vim.mk @@ -4,10 +4,9 @@ # ################################################################################ -VIM_SITE = https://vim.googlecode.com/hg -VIM_SITE_METHOD = hg -# 7.4 release patchlevel 333 -VIM_VERSION = 8ae50e3ef8bf +# 7.4 release patchlevel 889 +VIM_VERSION = 74b738d414b2895b3365e26ae3b7792eb82ccf47 +VIM_SITE = $(call github,vim,vim,$(VIM_VERSION)) # Win over busybox vi since vim is more feature-rich VIM_DEPENDENCIES = \ ncurses $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext) \ @@ -28,6 +27,20 @@ VIM_CONF_OPTS = --with-tlib=ncurses --enable-gui=no --without-x VIM_LICENSE = Charityware VIM_LICENSE_FILES = README.txt +ifeq ($(BR2_PACKAGE_ACL),y) +VIM_CONF_OPTS += --enable-acl +VIM_DEPENDENCIES += acl +else +VIM_CONF_OPTS += --disable-acl +endif + +ifeq ($(BR2_PACKAGE_GPM),y) +VIM_CONF_OPTS += --enable-gpm +VIM_DEPENDENCIES += gpm +else +VIM_CONF_OPTS += --disable-gpm +endif + ifeq ($(BR2_PACKAGE_LIBSELINUX),y) VIM_CONF_OPTS += --enable-selinux VIM_DEPENDENCIES += libselinux diff --git a/package/vlc/Config.in b/package/vlc/Config.in index 471f4a79da2..166e7d256a8 100644 --- a/package/vlc/Config.in +++ b/package/vlc/Config.in @@ -5,14 +5,16 @@ endif config BR2_PACKAGE_VLC bool "vlc" - depends on (BR2_UCLIBC_VERSION_SNAPSHOT || BR2_UCLIBC_VERSION_NG || BR2_TOOLCHAIN_USES_GLIBC) # spawn.h + depends on BR2_USE_MMU # fork() depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 select BR2_PACKAGE_LIBVORBIS if BR2_PACKAGE_OPUS - select BR2_PACKAGE_OPENCV_LIB_IMGPROC if BR2_PACKAGE_OPENCV - select BR2_PACKAGE_OPENCV_LIB_OBJDETECT if BR2_PACKAGE_OPENCV + select BR2_PACKAGE_VLC_OPENCV_BACKEND if BR2_PACKAGE_OPENCV + select BR2_PACKAGE_VLC_OPENCV3_BACKEND if BR2_PACKAGE_OPENCV3 + select BR2_PACKAGE_ZLIB if BR2_PACKAGE_TAGLIB help VLC is a free and open source cross-platform multimedia player and framework that plays most multimedia files as well as DVD, @@ -20,7 +22,17 @@ config BR2_PACKAGE_VLC http://www.videolan.org/vlc/ -comment "vlc needs a uclibc snapshot, uclibc-ng or (e)glibc toolchain w/ C++, wchar, threads, headers >= 3.7" - depends on !(BR2_UCLIBC_VERSION_SNAPSHOT || BR2_UCLIBC_VERSION_NG || BR2_TOOLCHAIN_USES_GLIBC) \ - || !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \ +config BR2_PACKAGE_VLC_OPENCV_BACKEND + bool + select BR2_PACKAGE_OPENCV_LIB_IMGPROC + select BR2_PACKAGE_OPENCV_LIB_OBJDETECT + +config BR2_PACKAGE_VLC_OPENCV3_BACKEND + bool + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC + select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT + +comment "vlc needs a toolchain w/ C++, dynamic library, wchar, threads, headers >= 3.7" + depends on BR2_USE_MMU + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || !BR2_USE_WCHAR \ || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 diff --git a/package/vlc/vlc.mk b/package/vlc/vlc.mk index e40863548c0..8acdc4e8df4 100644 --- a/package/vlc/vlc.mk +++ b/package/vlc/vlc.mk @@ -54,6 +54,7 @@ VLC_CONF_OPTS += \ --disable-mfx \ --disable-vdpau \ --disable-addonmanagermodules \ + --enable-run-as-root \ # Building static and shared doesn't work, so force static off. ifeq ($(BR2_STATIC_LIBS),) @@ -153,10 +154,14 @@ else VLC_CONF_OPTS += --disable-gles2 endif -ifeq ($(BR2_PACKAGE_OPENCV),y) +ifeq ($(BR2_PACKAGE_OPENCV)$(BR2_PACKAGE_OPENCV3),y) VLC_CONF_OPTS += --enable-opencv +ifeq ($(BR2_PACKAGE_OPENCV),y) VLC_DEPENDENCIES += opencv else +VLC_DEPENDENCIES += opencv3 +endif +else VLC_CONF_OPTS += --disable-opencv endif @@ -174,6 +179,20 @@ else VLC_CONF_OPTS += --disable-libass endif +ifeq ($(BR2_PACKAGE_LIBBLURAY),y) +VLC_CONF_OPTS += --enable-bluray +VLC_DEPENDENCIES += libbluray +else +VLC_CONF_OPTS += --disable-bluray +endif + +ifeq ($(BR2_PACKAGE_LIBDVBPSI),y) +VLC_CONF_OPTS += --enable-dvbpsi +VLC_DEPENDENCIES += libdvbpsi +else +VLC_CONF_OPTS += --disable-dvbpsi +endif + ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) VLC_CONF_OPTS += --enable-libgcrypt VLC_DEPENDENCIES += libgcrypt @@ -190,6 +209,13 @@ else VLC_CONF_OPTS += --disable-mad endif +ifeq ($(BR2_PACKAGE_LIBMATROSKA),y) +VLC_CONF_OPTS += --enable-mkv +VLC_DEPENDENCIES += libmatroska +else +VLC_CONF_OPTS += --disable-mkv +endif + ifeq ($(BR2_PACKAGE_LIBMODPLUG),y) VLC_CONF_OPTS += --enable-mod VLC_DEPENDENCIES += libmodplug @@ -321,6 +347,13 @@ else VLC_CONF_OPTS += --disable-speex endif +ifeq ($(BR2_PACKAGE_TAGLIB),y) +VLC_CONF_OPTS += --enable-taglib +VLC_DEPENDENCIES += taglib +else +VLC_CONF_OPTS += --disable-taglib +endif + ifeq ($(BR2_PACKAGE_TREMOR),y) VLC_CONF_OPTS += --enable-tremor VLC_DEPENDENCIES += tremor @@ -342,4 +375,8 @@ else VLC_CONF_OPTS += --without-x endif +ifeq ($(BR2_PACKAGE_ZLIB),y) +VLC_DEPENDENCIES += zlib +endif + $(eval $(autotools-package)) diff --git a/package/vnstat/0001-configure.ac-add-option-to-disable-image-output.patch b/package/vnstat/0001-configure.ac-add-option-to-disable-image-output.patch new file mode 100644 index 00000000000..e46ef078885 --- /dev/null +++ b/package/vnstat/0001-configure.ac-add-option-to-disable-image-output.patch @@ -0,0 +1,51 @@ +From 8a4a9b82d4f8fd39db8417fd06d969505fde9d0a Mon Sep 17 00:00:00 2001 +From: Rodrigo Rebello +Date: Tue, 22 Dec 2015 18:02:22 -0200 +Subject: [PATCH 1/1] configure.ac: add option to disable image output + +Even when the gd library is present, it may be desirable to not build +'vnstati' as image output is an optional feature. + +Also, when testing for the gd library, use gdImagePng() instead of +gdImageLine() since it's possible that the installed gd library doesn't +have PNG support. In such cases, the test in the configure script passed +(because gdImageLine() is always present), but the build failed with: + + src/vnstati.o: In function `writeoutput': + vnstati.c:(.text+0x3fc): undefined reference to `gdImagePng' + collect2: error: ld returned 1 exit status + +Upstream status: accepted, not yet released. +https://github.com/vergoh/vnstat/pull/35 + +Signed-off-by: Rodrigo Rebello +--- + configure.ac | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index be3d449..89f71ef 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -13,10 +13,16 @@ AM_PROG_CC_C_O + AC_PROG_MAKE_SET + AC_PROG_MKDIR_P + ++AC_ARG_ENABLE([image-output], [ ++AS_HELP_STRING([--disable-image-output], [disable PNG image output])]) ++ + # Checks for libraries. + AC_CHECK_LIB([m], [pow]) +-AC_CHECK_LIB([gd], [gdImageLine], [IMAGELIBS=-lgd]) +-AC_SUBST([IMAGELIBS]) ++ ++AS_IF([test "x$enable_image_output" != "xno"], [ ++AC_CHECK_LIB([gd], [gdImagePng], [IMAGELIBS=-lgd]) ++AC_SUBST([IMAGELIBS])]) ++ + AM_CONDITIONAL([HAVE_LIBGD], [test "$IMAGELIBS" = "-lgd"]) + PKG_CHECK_MODULES([CHECK], [check >= 0.9.6], [], [AC_MSG_NOTICE([testcases can not be execute without check installed])]) + AM_CONDITIONAL([HAVE_CHECK], [test "$CHECK_LIBS"]) +-- +2.1.4 + diff --git a/package/vnstat/Config.in b/package/vnstat/Config.in index 0df4982e21d..bb68c144625 100644 --- a/package/vnstat/Config.in +++ b/package/vnstat/Config.in @@ -1,11 +1,17 @@ config BR2_PACKAGE_VNSTAT bool "vnstat" depends on BR2_USE_MMU # fork() + depends on BR2_USE_WCHAR # mbstowcs() help - vnStat is a console-based network traffic monitor that keeps a log of - network traffic for the selected interface(s). It uses the network - interface statistics provided by the kernel as information source. - This means that vnStat won't actually be sniffing any traffic and also - ensures light use of system resources. + vnStat is a console-based network traffic monitor that keeps a + log of network traffic for the selected interface(s). It uses + the network interface statistics provided by the kernel as + information source. This means that vnStat won't actually be + sniffing any traffic and also ensures light use of system + resources. http://humdi.net/vnstat + +comment "vnstat needs a toolchain w/ wchar" + depends on BR2_USE_MMU + depends on !BR2_USE_WCHAR diff --git a/package/vnstat/vnstat.hash b/package/vnstat/vnstat.hash index a3334d66196..82ee8c02ba4 100644 --- a/package/vnstat/vnstat.hash +++ b/package/vnstat/vnstat.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 af1050d9c1b22d4b9742fe0d1818de9eb1037b8e7f9ba67b962e108d8527be69 vnstat-1.12.tar.gz +sha256 c3814b5baa8b627198a8debfe1dce4b4346a342523818cc8668a5497971dbc39 vnstat-1.15.tar.gz diff --git a/package/vnstat/vnstat.mk b/package/vnstat/vnstat.mk index e0a64d57084..ba2610abfc8 100644 --- a/package/vnstat/vnstat.mk +++ b/package/vnstat/vnstat.mk @@ -4,27 +4,24 @@ # ################################################################################ -VNSTAT_VERSION = 1.12 +VNSTAT_VERSION = 1.15 VNSTAT_SITE = http://humdi.net/vnstat VNSTAT_LICENSE = GPLv2 VNSTAT_LICENSE_FILES = COPYING +# We're patching configure.ac, so we need to autoreconf +VNSTAT_AUTORECONF = YES ifeq ($(BR2_PACKAGE_GD)$(BR2_PACKAGE_LIBPNG),yy) VNSTAT_DEPENDENCIES = gd -VNSTAT_GD_MAKE_OPT = all -define VNSTAT_INSTALL_VNSTATI_CMDS - $(INSTALL) -D -m 0755 $(@D)/src/vnstati $(TARGET_DIR)/usr/bin/vnstati -endef +VNSTAT_CONF_OPTS = --enable-image-output +else +VNSTAT_CONF_OPTS = --disable-image-output endif -define VNSTAT_BUILD_CMDS - $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) $(VNSTAT_GD_MAKE_OPT) -endef +# vnStat declares an 'install-data-hook' rule that tries to run +# 'vnstat --showconfig' on the host to generate a default config file. +# That obviously doesn't work when cross-compiling, so avoid it +# entirely. +VNSTAT_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) install-exec -define VNSTAT_INSTALL_TARGET_CMDS - $(INSTALL) -D -m 0755 $(@D)/src/vnstat $(TARGET_DIR)/usr/bin/vnstat - $(INSTALL) -D -m 0755 $(@D)/src/vnstatd $(TARGET_DIR)/usr/sbin/vnstatd - $(VNSTAT_INSTALL_VNSTATI_CMDS) -endef - -$(eval $(generic-package)) +$(eval $(autotools-package)) diff --git a/package/vorbis-tools/0001-oggenc-Fix-large-alloca-on-bad-AIFF-input.patch b/package/vorbis-tools/0001-oggenc-Fix-large-alloca-on-bad-AIFF-input.patch new file mode 100644 index 00000000000..6df67869e59 --- /dev/null +++ b/package/vorbis-tools/0001-oggenc-Fix-large-alloca-on-bad-AIFF-input.patch @@ -0,0 +1,37 @@ +Fix CVE-2015-6749 - invalid AIFF file causes alloca() buffer overflow. +See https://trac.xiph.org/ticket/2212 +Status: upstream + +Signed-off-by: Gustavo Zacarias + +diff --git a/oggenc/audio.c b/oggenc/audio.c +index 477da8c..4921fb9 100644 +--- a/oggenc/audio.c ++++ b/oggenc/audio.c +@@ -245,8 +245,8 @@ static int aiff_permute_matrix[6][6] = + int aiff_open(FILE *in, oe_enc_opt *opt, unsigned char *buf, int buflen) + { + int aifc; /* AIFC or AIFF? */ +- unsigned int len; +- unsigned char *buffer; ++ unsigned int len, readlen; ++ unsigned char buffer[22]; + unsigned char buf2[8]; + aiff_fmt format; + aifffile *aiff = malloc(sizeof(aifffile)); +@@ -269,9 +269,9 @@ int aiff_open(FILE *in, oe_enc_opt *opt, unsigned char *buf, int buflen) + return 0; /* Weird common chunk */ + } + +- buffer = alloca(len); +- +- if(fread(buffer,1,len,in) < len) ++ readlen = len < sizeof(buffer) ? len : sizeof(buffer); ++ if(fread(buffer,1,readlen,in) < readlen || ++ (len > readlen && !seek_forward(in, len-readlen))) + { + fprintf(stderr, _("Warning: Unexpected EOF in reading AIFF header\n")); + return 0; +-- +2.5.0 + diff --git a/package/vsftpd/S70vsftpd b/package/vsftpd/S70vsftpd index 6048907f600..38bcfd431fe 100755 --- a/package/vsftpd/S70vsftpd +++ b/package/vsftpd/S70vsftpd @@ -8,12 +8,12 @@ DAEMON=/usr/sbin/$NAME case "$1" in start) - echo -n "Starting $DESC: " + printf "Starting $DESC: " start-stop-daemon -S -b -x $NAME echo "OK" ;; stop) - echo -n "Stopping $DESC: " + printf "Stopping $DESC: " start-stop-daemon -K -x $NAME echo "OK" ;; diff --git a/package/vsftpd/vsftpd.mk b/package/vsftpd/vsftpd.mk index 1e482647adb..db969f43527 100644 --- a/package/vsftpd/vsftpd.mk +++ b/package/vsftpd/vsftpd.mk @@ -43,16 +43,25 @@ define VSFTPD_BUILD_CMDS LDFLAGS="$(TARGET_LDFLAGS)" LIBS="$(VSFTPD_LIBS)" -C $(@D) endef +define VSFTPD_USERS + ftp -1 ftp -1 * /home/ftp - - Anonymous FTP User +endef + define VSFTPD_INSTALL_INIT_SYSV $(INSTALL) -D -m 755 package/vsftpd/S70vsftpd $(TARGET_DIR)/etc/init.d/S70vsftpd endef +# vsftpd won't work if the jail directory is writable, it has to be +# readable only otherwise you get the following error: +# 500 OOPS: vsftpd: refusing to run with writable root inside chroot() +# That's why we have to adjust the permissions of /home/ftp define VSFTPD_INSTALL_TARGET_CMDS $(INSTALL) -D -m 755 $(@D)/vsftpd $(TARGET_DIR)/usr/sbin/vsftpd test -f $(TARGET_DIR)/etc/vsftpd.conf || \ $(INSTALL) -D -m 644 $(@D)/vsftpd.conf \ $(TARGET_DIR)/etc/vsftpd.conf $(INSTALL) -d -m 700 $(TARGET_DIR)/usr/share/empty + $(INSTALL) -d -m 555 $(TARGET_DIR)/home/ftp endef $(eval $(generic-package)) diff --git a/package/vtun/vtun.mk b/package/vtun/vtun.mk index 2b64ab9efc6..5e0e2666614 100644 --- a/package/vtun/vtun.mk +++ b/package/vtun/vtun.mk @@ -6,6 +6,8 @@ VTUN_VERSION = 3.0.3 VTUN_SITE = http://downloads.sourceforge.net/project/vtun/vtun/$(VTUN_VERSION) +VTUN_LICENSE = GPLv2+ with OpenSSL exception +VTUN_LICENSE_FILES = README.OpenSSL VTUN_DEPENDENCIES = host-bison host-flex zlib lzo openssl VTUN_AUTORECONF = YES @@ -14,4 +16,7 @@ VTUN_CONF_OPTS = \ --with-lzo-headers=$(STAGING_DIR)/usr/include/lzo \ --with-lzo-lib=$(STAGING_DIR)/usr/lib +# Assumes old-style gcc inline symbol visibility rules +VTUN_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -std=gnu89" + $(eval $(autotools-package)) diff --git a/package/w_scan/0001-musl.patch b/package/w_scan/0001-musl.patch new file mode 100644 index 00000000000..7633d551dd1 --- /dev/null +++ b/package/w_scan/0001-musl.patch @@ -0,0 +1,26 @@ +Fix musl build + +Signed-off-by: Bernd Kuhls + +diff -uNr w_scan-20141122.org/descriptors.h w_scan-20141122/descriptors.h +--- w_scan-20141122.org/descriptors.h 2014-11-22 09:49:26.000000000 +0100 ++++ w_scan-20141122/descriptors.h 2016-01-24 14:05:21.000000000 +0100 +@@ -28,6 +28,7 @@ + #ifndef __DESCRIPTORS_H__ + #define __DESCRIPTORS_H__ + ++#include + #include "extended_frontend.h" + + /****************************************************************************** +diff -uNr w_scan-20141122.org/version.h w_scan-20141122/version.h +--- w_scan-20141122.org/version.h 2014-11-22 11:59:56.000000000 +0100 ++++ w_scan-20141122/version.h 2016-01-24 14:06:33.000000000 +0100 +@@ -1,6 +1,6 @@ + /* AUTOMATICALLY GENERATED - DO NOT EDIT MANUALLY */ + #ifndef W_SCAN_VERSION_H + #define W_SCAN_VERSION_H +-uint version=20141122; ++unsigned int version=20141122; + #endif + diff --git a/package/wavpack/wavpack.hash b/package/wavpack/wavpack.hash index 18dcfbc827a..f15afc2524d 100644 --- a/package/wavpack/wavpack.hash +++ b/package/wavpack/wavpack.hash @@ -1,2 +1,2 @@ # locally computed hash -sha256 2cade379b0aba99fbc4e442ccc6dac6c609f6212e46516a083e24c8c364430a4 wavpack-4.70.0.tar.bz2 +sha256 7d31b34166c33c3109b45c6e4579b472fd05e3ee8ec6d728352961c5cdd1d6b0 wavpack-4.75.2.tar.bz2 diff --git a/package/wavpack/wavpack.mk b/package/wavpack/wavpack.mk index c9bae47a41c..ae164548061 100644 --- a/package/wavpack/wavpack.mk +++ b/package/wavpack/wavpack.mk @@ -4,14 +4,26 @@ # ################################################################################ -WAVPACK_VERSION = 4.70.0 +WAVPACK_VERSION = 4.75.2 WAVPACK_SITE = http://www.wavpack.com WAVPACK_SOURCE = wavpack-$(WAVPACK_VERSION).tar.bz2 WAVPACK_INSTALL_STAGING = YES -# configure not up to date -WAVPACK_AUTORECONF = YES WAVPACK_DEPENDENCIES = $(if $(BR2_ENABLE_LOCALE),,libiconv) WAVPACK_LICENSE = BSD-3c WAVPACK_LICENSE_FILES = COPYING +ifeq ($(BR2_PACKAGE_LIBICONV),y) +WAVPACK_CONF_OPTS += LIBS=-liconv +endif + +# WavPack "autodetects" CPU type to enable ASM code. However, the assembly code +# for ARM is written for ARMv7 only and building WavPack for an ARM-non-v7 +# architecture will fail. We explicitly enable ASM for the supported +# architectures x86, x64 and ARMv7 and disable it for all others. +ifeq ($(BR2_i386)$(BR2_x86_64)$(BR2_ARM_CPU_ARMV7A),y) +WAVPACK_CONF_OPTS += --enable-asm +else +WAVPACK_CONF_OPTS += --disable-asm +endif + $(eval $(autotools-package)) diff --git a/package/webkit/Config.in b/package/webkit/Config.in index 7f0d1e4edb8..c139f5212c8 100644 --- a/package/webkit/Config.in +++ b/package/webkit/Config.in @@ -18,7 +18,7 @@ config BR2_PACKAGE_WEBKIT depends on BR2_PACKAGE_LIBGTK2 depends on BR2_PACKAGE_WEBKIT_ARCH_SUPPORTS depends on !BR2_BINFMT_FLAT # icu - depends on BR2_ARCH_HAS_ATOMICS # cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # harfbuzz select BR2_PACKAGE_CAIRO select BR2_PACKAGE_CAIRO_PNG select BR2_PACKAGE_ENCHANT @@ -47,7 +47,7 @@ config BR2_PACKAGE_WEBKIT comment "webkit needs libgtk2 and a toolchain w/ C++, wchar, threads" depends on BR2_DEPRECATED_SINCE_2015_08 depends on BR2_PACKAGE_WEBKIT_ARCH_SUPPORTS - depends on BR2_ARCH_HAS_ATOMICS # cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_PACKAGE_LIBGTK2 || !BR2_INSTALL_LIBSTDCPP || \ !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU diff --git a/package/webkitgtk24/0002-WTF-Platform.h-use-_ABI64-instead-of-_MIPS_SIM_ABI64.patch b/package/webkitgtk24/0002-WTF-Platform.h-use-_ABI64-instead-of-_MIPS_SIM_ABI64.patch new file mode 100644 index 00000000000..d56dc581610 --- /dev/null +++ b/package/webkitgtk24/0002-WTF-Platform.h-use-_ABI64-instead-of-_MIPS_SIM_ABI64.patch @@ -0,0 +1,46 @@ +[WTF] Platform.h: use _ABI64 instead of _MIPS_SIM_ABI64 to determine MIPS N64 + +Patch backported from upstream: + +http://trac.webkit.org/changeset/185863 + +I tweaked this patch to remove the Changelog part in order to make it +apply in Buildroot. + +Signed-off-by: Vicente Olivert Riera + +From 2c84c8d1c294037141473c10e0374df63a3cdea9 Mon Sep 17 00:00:00 2001 +From: ossy@webkit.org +Date: Tue, 23 Jun 2015 06:33:16 +0000 +Subject: [PATCH] [WTF] Platform.h: use _ABI64 instead of _MIPS_SIM_ABI64 to determine MIPS N64 + https://bugs.webkit.org/show_bug.cgi?id=145113 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Patch by YunQiang Su on 2015-06-22 +Reviewed by Csaba Osztrogonác. + +* wtf/Platform.h: + +git-svn-id: http://svn.webkit.org/repository/webkit/trunk@185863 268f45cc-cd09-0410-ab3c-d52691b4dbfc +--- + Source/WTF/wtf/Platform.h | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h +index c234f50..b5e9859 100644 +--- a/Source/WTF/wtf/Platform.h ++++ b/Source/WTF/wtf/Platform.h +@@ -82,7 +82,7 @@ + + /* CPU(MIPS) - MIPS 32-bit and 64-bit */ + #if (defined(mips) || defined(__mips__) || defined(MIPS) || defined(_MIPS_) || defined(__mips64)) +-#if defined(_MIPS_SIM_ABI64) && (_MIPS_SIM == _MIPS_SIM_ABI64) ++#if defined(_ABI64) && (_MIPS_SIM == _ABI64) + #define WTF_CPU_MIPS64 1 + #define WTF_MIPS_ARCH __mips64 + #else +-- +1.7.1 + diff --git a/package/webkitgtk24/0003-Pretty-quotes-in-licence-break-Python-stdin.patch b/package/webkitgtk24/0003-Pretty-quotes-in-licence-break-Python-stdin.patch new file mode 100644 index 00000000000..df51078b06e --- /dev/null +++ b/package/webkitgtk24/0003-Pretty-quotes-in-licence-break-Python-stdin.patch @@ -0,0 +1,36 @@ +Pretty quotes in licence break Python stdin. + +This patch was submitted upstream in this bug report: + +https://bugs.webkit.org/show_bug.cgi?id=128971 + +[Vincent: tweak the patch to make it apply on Buildroot] + +Signed-off-by: Vicente Olivert Riera + +Pretty quotes in licence break Python stdin. + +https://bugs.webkit.org/show_bug.cgi?id=128971 + +--- a/Source/WebCore/xml/XMLViewer.css 2014-01-23 16:49:58.000000000 +0000 ++++ b/Source/WebCore/xml/XMLViewer.css +@@ -14,7 +14,7 @@ + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY GOOGLE INC. AND ITS CONTRIBUTORS +- * “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GOOGLE INC. + * OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +--- a/Source/WebCore/xml/XMLViewer.js 2014-01-23 16:49:58.000000000 +0000 ++++ b/Source/WebCore/xml/XMLViewer.js +@@ -15,7 +15,7 @@ + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY GOOGLE INC. AND ITS CONTRIBUTORS +- * “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GOOGLE INC. + * OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, diff --git a/package/webkitgtk24/Config.in b/package/webkitgtk24/Config.in index d8c5e93ded0..3c7c3300b9a 100644 --- a/package/webkitgtk24/Config.in +++ b/package/webkitgtk24/Config.in @@ -2,25 +2,19 @@ config BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS bool # ARM needs BLX, so v5t+, BE completely untested so disabled default y if BR2_arm && !BR2_ARM_CPU_ARMV4 - # i386 / x86_64 external toolchains have issues and old gcc versions - # https://bugs.webkit.org/show_bug.cgi?id=132231 - # https://stackoverflow.com/questions/9140019/yield-is-not-a-member-of-stdthis-thread default y if BR2_i386 || BR2_x86_64 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201209 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201203 - depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201109 # Disabled on MIPS big endian due to sigbus default y if BR2_mipsel || BR2_mips64el # Disabled on PowerPC pending runtime testing # Disabled on SuperH because of segfault depends on BR2_USE_MMU # libglib2 -comment "webkitgtk24 needs libgtk2 and a toolchain w/ C++, wchar, NPTL" +comment "webkitgtk24 needs libgtk2 and a toolchain w/ C++, wchar, NPTL, gcc >=4.8" depends on BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_PACKAGE_LIBGTK2 || !BR2_PACKAGE_XORG7 || \ !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_INSTALL_LIBSTDCPP \ - || !BR2_USE_WCHAR + || !BR2_USE_WCHAR || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 depends on BR2_USE_MMU config BR2_PACKAGE_WEBKITGTK24 @@ -28,9 +22,10 @@ config BR2_PACKAGE_WEBKITGTK24 depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 depends on (BR2_PACKAGE_LIBGTK2 && BR2_PACKAGE_XORG7) depends on BR2_PACKAGE_WEBKITGTK24_ARCH_SUPPORTS - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # harfbuzz select BR2_PACKAGE_CAIRO select BR2_PACKAGE_CAIRO_PNG select BR2_PACKAGE_ENCHANT diff --git a/package/webkitgtk24/webkitgtk24.mk b/package/webkitgtk24/webkitgtk24.mk index a58fed37bea..0dc47748d0a 100644 --- a/package/webkitgtk24/webkitgtk24.mk +++ b/package/webkitgtk24/webkitgtk24.mk @@ -8,13 +8,13 @@ WEBKITGTK24_VERSION = 2.4.9 WEBKITGTK24_SITE = http://www.webkitgtk.org/releases WEBKITGTK24_SOURCE = webkitgtk-$(WEBKITGTK24_VERSION).tar.xz WEBKITGTK24_INSTALL_STAGING = YES -WEBKITGTK24_LICENSE = LGPLv2+ BSD-2c +WEBKITGTK24_LICENSE = LGPLv2+, BSD-2c WEBKITGTK24_LICENSE_FILES = \ Source/WebCore/LICENSE-APPLE \ Source/WebCore/LICENSE-LGPL-2 WEBKITGTK24_DEPENDENCIES = host-ruby host-flex host-bison host-gperf \ - enchant harfbuzz icu jpeg libcurl libgtk2 libsecret libsoup \ - libxml2 libxslt sqlite webp + host-pkgconf enchant harfbuzz icu jpeg libcurl libgtk2 \ + libsecret libsoup libxml2 libxslt sqlite webp WEBKITGTK24_DEPENDENCIES += \ $(if $(BR_PACKAGE_XLIB_LIBXCOMPOSITE),xlib_libXcomposite) \ @@ -69,6 +69,10 @@ WEBKITGTK24_CONF_OPTS += \ --enable-webgl \ --disable-glx WEBKITGTK24_DEPENDENCIES += libegl libgles +# Some EGL/GLES implementations needs extra help (eg. rpi-userland) +WEBKITGTK24_CONF_ENV += CPPFLAGS="$(TARGET_CPPFLAGS) \ + `$(PKG_CONFIG_HOST_BINARY) --cflags egl` \ + `$(PKG_CONFIG_HOST_BINARY) --clfags glesv2`" # No GL else WEBKITGTK24_CONF_OPTS += \ @@ -88,7 +92,7 @@ endif # ARM needs NEON for JIT # i386 & x86_64 don't seem to have any special requirements -ifeq ($(BR2_ARM_ENABLE_NEON)$(BR2_i386)$(BR2_x86_64),y) +ifeq ($(BR2_ARM_CPU_HAS_NEON)$(BR2_i386)$(BR2_x86_64),y) WEBKITGTK24_CONF_OPTS += --enable-jit else WEBKITGTK24_CONF_OPTS += --disable-jit diff --git a/package/weston/Config.in b/package/weston/Config.in index 07773f0a7b7..4c820e96ffe 100644 --- a/package/weston/Config.in +++ b/package/weston/Config.in @@ -1,5 +1,4 @@ comment "weston needs udev and a toolchain w/ locale, threads, dynamic library, headers >= 3.0" - depends on BR2_ARCH_HAS_ATOMICS depends on !BR2_PACKAGE_HAS_UDEV || !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 || BR2_STATIC_LIBS || \ !BR2_ENABLE_LOCALE @@ -19,7 +18,6 @@ config BR2_PACKAGE_WESTON depends on !BR2_STATIC_LIBS # wayland depends on BR2_TOOLCHAIN_HAS_THREADS # wayland depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 - depends on BR2_ARCH_HAS_ATOMICS # cairo # Runtime dependency select BR2_PACKAGE_XKEYBOARD_CONFIG # Make sure at least one compositor is selected. @@ -41,9 +39,12 @@ config BR2_PACKAGE_WESTON_HAS_COMPOSITOR config BR2_PACKAGE_WESTON_FBDEV bool "fbdev compositor" +# FreeRDP needs threads and !static, already the case for weston config BR2_PACKAGE_WESTON_RDP bool "RDP compositor" depends on BR2_USE_WCHAR # freerdp + depends on BR2_USE_MMU # freerdp, libglib2 + depends on BR2_TOOLCHAIN_HAS_SYNC_4 select BR2_PACKAGE_FREERDP select BR2_PACKAGE_WESTON_HAS_COMPOSITOR help @@ -60,6 +61,8 @@ config BR2_PACKAGE_WESTON_RDP overlay. comment "RDP compositor needs a toolchain w/ wchar" + depends on BROKEN # needs FreeRDP master + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR # rpi-userland is an EGL/GLES provider, so we can't select it diff --git a/package/wget/wget.hash b/package/wget/wget.hash index faab8052589..159cd510f39 100644 --- a/package/wget/wget.hash +++ b/package/wget/wget.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 67f7b7b0f5c14db633e3b18f53172786c001e153d545cfc85d82759c5c2ffb37 wget-1.16.3.tar.xz +sha256 fe559b61eb9cc01635ac6206a14e02cb51591838c35fa83c7a4aacae0bdd97c9 wget-1.17.1.tar.xz diff --git a/package/wget/wget.mk b/package/wget/wget.mk index 960b92df534..2c6ccf26451 100644 --- a/package/wget/wget.mk +++ b/package/wget/wget.mk @@ -4,7 +4,7 @@ # ################################################################################ -WGET_VERSION = 1.16.3 +WGET_VERSION = 1.17.1 WGET_SOURCE = wget-$(WGET_VERSION).tar.xz WGET_SITE = $(BR2_GNU_MIRROR)/wget WGET_DEPENDENCIES = host-pkgconf diff --git a/package/whetstone/whetstone.hash b/package/whetstone/whetstone.hash new file mode 100644 index 00000000000..db9bbb45489 --- /dev/null +++ b/package/whetstone/whetstone.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 333e4ceca042c146f63eec605573d16ae8b07166cbc44a17bec1ea97c6f1efbf whetstone.c diff --git a/package/whois/whois.hash b/package/whois/whois.hash index 79c9aca6da4..a92e0d89835 100644 --- a/package/whois/whois.hash +++ b/package/whois/whois.hash @@ -1,2 +1,2 @@ -# From http://ftp.debian.org/debian/pool/main/w/whois/whois_5.2.9.dsc -sha256 eee5446bf76ca7d38052767d6e2c542297d3a54ce928cada0ff24d2f1749d359 whois_5.2.9.tar.xz +# From http://ftp.debian.org/debian/pool/main/w/whois/whois_5.2.11.dsc +sha256 32f7d6be853aa6a6a8ac6dd672bd60ae4f10bc0bedcaa944363ffbef6e57cef7 whois_5.2.11.tar.xz diff --git a/package/whois/whois.mk b/package/whois/whois.mk index 274349fe397..d32642c085e 100644 --- a/package/whois/whois.mk +++ b/package/whois/whois.mk @@ -4,8 +4,8 @@ # ################################################################################ -WHOIS_VERSION = 5.2.9 -WHOIS_SITE = http://snapshot.debian.org/archive/debian/20150608T042724Z/pool/main/w/whois +WHOIS_VERSION = 5.2.11 +WHOIS_SITE = http://snapshot.debian.org/archive/debian/20151208T102349Z/pool/main/w/whois WHOIS_SOURCE = whois_$(WHOIS_VERSION).tar.xz # take precedence over busybox implementation WHOIS_DEPENDENCIES = host-gettext $(if $(BR2_PACKAGE_BUSYBOX),busybox) diff --git a/package/wine/0001-Prevent-call-to-memset-with-a-null-pointer.patch b/package/wine/0001-Prevent-call-to-memset-with-a-null-pointer.patch deleted file mode 100644 index f6d5a9d3c26..00000000000 --- a/package/wine/0001-Prevent-call-to-memset-with-a-null-pointer.patch +++ /dev/null @@ -1,40 +0,0 @@ -commit deb274226783ab886bdb44876944e156757efe2b -Author: Daniel Beitler -Date: Sun May 18 13:27:42 2014 -0400 - - msi: Prevent call to memset with a null pointer - in get_tablecolumns function. - -Fix miscompilation with gcc >= 4.9 -See https://bugs.winehq.org/show_bug.cgi?id=36139 for the upstream -bug report. There won't be a Wine 1.6.3 so we need to address this -anyway. - -Backported from: deb274226783ab886bdb44876944e156757efe2b -Signed-off-by: André Hentschel ---- - dlls/msi/table.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/dlls/msi/table.c b/dlls/msi/table.c -index 8012369..9ed9421 100644 ---- a/dlls/msi/table.c -+++ b/dlls/msi/table.c -@@ -671,7 +671,7 @@ static UINT get_tablecolumns( MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINF - /* Note: _Columns table doesn't have non-persistent data */ - - /* if maxcount is non-zero, assume it's exactly right for this table */ -- memset( colinfo, 0, maxcount * sizeof(*colinfo) ); -+ if (colinfo) memset( colinfo, 0, maxcount * sizeof(*colinfo) ); - count = table->row_count; - for (i = 0; i < count; i++) - { -@@ -684,7 +684,7 @@ static UINT get_tablecolumns( MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINF - /* check the column number is in range */ - if (col < 1 || col > maxcount) - { -- ERR("column %d out of range\n", col); -+ ERR("column %d out of range (maxcount: %d)\n", col, maxcount); - continue; - } - /* check if this column was already set */ diff --git a/package/wine/0001-configure-allow-to-override-the-location-of-the-conf.patch b/package/wine/0001-configure-allow-to-override-the-location-of-the-conf.patch new file mode 100644 index 00000000000..9fc9f64aac5 --- /dev/null +++ b/package/wine/0001-configure-allow-to-override-the-location-of-the-conf.patch @@ -0,0 +1,109 @@ +From 18078feecc8da0ab2693d0bb5423489fa62920ef Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Tue, 22 Dec 2015 21:25:19 +0100 +Subject: [PATCH] configure: allow to override the location of the *-config + scripts + +Currently, the configure.ac calls a number of *-config scripts to get +details about installed libraries. It assumes that those *-config +scripts are readily available in the PATH. + +While this is true in most situations, it may not be true when +cross-compiling: you may have the *-config scripts matching the target +environment in a location that isn't in the PATH. For such situations, +it is very useful to be able to override the location of such *-config +scripts using environment variables. + +The proposed changes does not introduce any functional difference if +you don't pass those new environment variables: if they are not +passed, it falls back to the current value. + +However, if those *_CONFIG variables are passed, then they are used as +the path to the corresponding *-config script. + +The ${FOO_CONFIG:-foo-config} construct is POSIX compliant, so it is +available in all shells. + +(Patch submitted upstream.) + +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 20 ++++++++++---------- + 1 file changed, 10 insertions(+), 10 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 86f12c5..37ceab5 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1191,7 +1191,7 @@ dnl **** Check for libxml2 **** + if test "x$with_xml" != "xno" + then + WINE_PACKAGE_FLAGS(XML2,[libxml-2.0],[-lxml2], +- [`xml2-config --cflags 2>/dev/null`],[`xml2-config --libs 2>/dev/null`], ++ [`${XML2_CONFIG:-xml2-config} --cflags 2>/dev/null`],[`${XML2_CONFIG:-xml2-config} --libs 2>/dev/null`], + [AC_CHECK_HEADERS([libxml/parser.h libxml/xmlsave.h libxml/SAX2.h]) + if test "$ac_cv_header_libxml_parser_h" = "yes" -a "$ac_cv_header_libxml_xmlsave_h" = "yes" -a "$ac_cv_header_libxml_SAX2_h" = "yes" + then +@@ -1220,7 +1220,7 @@ WINE_WARNING_WITH(xml,[test "$ac_cv_lib_xml2_xmlParseMemory" != "yes"], + if test "x$with_xslt" != "xno" + then + WINE_PACKAGE_FLAGS(XSLT,[libxslt],[-lxml2], +- [`xslt-config --cflags 2>/dev/null`],[`xslt-config --libs 2>/dev/null`], ++ [`${XSLT_CONFIG:-xslt-config} --cflags 2>/dev/null`],[`${XSLT_CONFIG:-xslt-config} --libs 2>/dev/null`], + [AC_CHECK_HEADERS([libxslt/pattern.h libxslt/transform.h],,, + [#ifdef HAVE_LIBXSLT_PATTERN_H + # include +@@ -1291,7 +1291,7 @@ WINE_NOTICE_WITH(curses,[test "x$ac_cv_lib_soname_curses$ac_cv_lib_soname_ncurse + dnl **** Check for SANE **** + if test "x$with_sane" != "xno" + then +- WINE_PACKAGE_FLAGS(SANE,[libsane],,[`sane-config --cflags 2>/dev/null`],[`sane-config --ldflags 2>/dev/null`], ++ WINE_PACKAGE_FLAGS(SANE,[libsane],,[`${SANE_CONFIG:-sane-config} --cflags 2>/dev/null`],[`${SANE_CONFIG:-sane-config} --ldflags 2>/dev/null`], + [AC_CHECK_HEADER(sane/sane.h, + [WINE_CHECK_SONAME(sane,sane_init,,[SANE_CFLAGS=""],[$SANE_LIBS])], + [SANE_CFLAGS=""])]) +@@ -1311,7 +1311,7 @@ dnl **** Check for libgphoto2 **** + if test "x$with_gphoto" != "xno" + then + WINE_PACKAGE_FLAGS(GPHOTO2,[libgphoto2],[-lgphoto2], +- [`gphoto2-config --cflags 2>/dev/null`],[`gphoto2-config --libs 2>/dev/null`], ++ [`${GPHOTO2_CONFIG:-gphoto2-config} --cflags 2>/dev/null`],[`${GPHOTO2_CONFIG:-gphoto2-config} --libs 2>/dev/null`], + [AC_CHECK_HEADER(gphoto2-camera.h, + [AC_CHECK_LIB(gphoto2,gp_camera_new, + [AC_DEFINE(HAVE_GPHOTO2, 1, [Define if we have the libgphoto2 development environment])], +@@ -1319,8 +1319,8 @@ then + [$GPHOTO2_LIBS])], + [GPHOTO2_LIBS=""; GPHOTO2_CFLAGS=""])]) + WINE_PACKAGE_FLAGS(GPHOTO2_PORT,[libgphoto2_port],[-lgphoto2_port], +- [`gphoto2-port-config --cflags 2>/dev/null`], +- [`gphoto2-port-config --libs 2>/dev/null`], ++ [`${GPHOTO2_PORT_CONFIG:-gphoto2-port-config} --cflags 2>/dev/null`], ++ [`${GPHOTO2_PORT_CONFIG:-gphoto2-port-config} --libs 2>/dev/null`], + [AC_CHECK_HEADER(gphoto2-port.h, + [AC_CHECK_LIB(gphoto2_port,gp_port_info_list_new, + [AC_DEFINE(HAVE_GPHOTO2_PORT, 1, [Define if we have the libgphoto2_port development environment])], +@@ -1382,8 +1382,8 @@ dnl **** Check for FreeType 2 **** + if test "x$with_freetype" != "xno" + then + WINE_PACKAGE_FLAGS(FREETYPE,[freetype2],[-lfreetype], +- [`(freetype-config --cflags || freetype2-config --cflags) 2>/dev/null`], +- [`(freetype-config --libs || freetype2-config --libs) 2>/dev/null`], ++ [`(${FREETYPE_CONFIG:-freetype-config} --cflags || ${FREETYPE2_CONFIG:-freetype2-config} --cflags) 2>/dev/null`], ++ [`(${FREETYPE_CONFIG:-freetype-config} --libs || ${FREETYPE2_CONFIG:-freetype2-config} --libs) 2>/dev/null`], + [AC_CHECK_HEADERS([ft2build.h]) + if test "$ac_cv_header_ft2build_h" = "yes" + then +@@ -1538,8 +1538,8 @@ AC_SUBST(CUPS_CFLAGS,"") + if test "x$with_cups" != "xno" + then + ac_save_CPPFLAGS="$CPPFLAGS" +- ac_cups_cflags=`cups-config --cflags 2>/dev/null` +- ac_cups_libs=`cups-config --ldflags 2>/dev/null` ++ ac_cups_cflags=`${CUPS_CONFIG:-cups-config} --cflags 2>/dev/null` ++ ac_cups_libs=`${CUPS_CONFIG:-cups-config} --ldflags 2>/dev/null` + CPPFLAGS="$CPPFLAGS $ac_cups_cflags" + AC_CHECK_HEADERS(cups/cups.h, + [WINE_CHECK_SONAME(cups,cupsGetDefault, +-- +2.6.4 + diff --git a/package/wine/0002-detect-ncursesw.patch b/package/wine/0002-detect-ncursesw.patch deleted file mode 100644 index 7f153b1ee9b..00000000000 --- a/package/wine/0002-detect-ncursesw.patch +++ /dev/null @@ -1,17 +0,0 @@ -Detect libncursesw as well. -Backport from upstream 8d4e1fa7d77636a88651c9d48a48d39fab931c49 - -Signed-off-by: Gustavo Zacarias - -diff -Nura wine-1.6.2.orig/configure.ac wine-1.6.2/configure.ac ---- wine-1.6.2.orig/configure.ac 2015-05-01 09:24:24.741960685 -0300 -+++ wine-1.6.2/configure.ac 2015-05-01 09:25:26.860069750 -0300 -@@ -1359,7 +1359,7 @@ - CURSESLIBS="" - if test "$ac_cv_header_ncurses_h" = "yes" - then -- WINE_CHECK_SONAME(ncurses,waddch,[CURSESLIBS="-lncurses"]) -+ WINE_CHECK_SONAME(ncurses,waddch,[CURSESLIBS="-lncurses"],,,[[libncursesw\\{0,1\\}]]) - elif test "$ac_cv_header_curses_h" = "yes" - then - WINE_CHECK_SONAME(curses,waddch,[CURSESLIBS="-lcurses"]) diff --git a/package/wine/0003-sane-config-fix.patch b/package/wine/0003-sane-config-fix.patch deleted file mode 100644 index d53843a70d0..00000000000 --- a/package/wine/0003-sane-config-fix.patch +++ /dev/null @@ -1,21 +0,0 @@ -Add support for SANE_CONFIG variable - -Instead of using directly the sane-config command, allow to pass a -SANE_CONFIG environment variable to override where to find the -sane-config tool. - -Signed-off-by: Thomas Petazzoni - -Index: b/configure.ac -=================================================================== ---- a/configure.ac -+++ b/configure.ac -@@ -1375,7 +1375,7 @@ - if test "x$with_sane" != "xno" - then - ac_save_CPPFLAGS="$CPPFLAGS" -- WINE_PACKAGE_FLAGS(SANE,[libsane],,[`sane-config --cflags 2>/dev/null`],[`sane-config --ldflags 2>/dev/null`]) -+ WINE_PACKAGE_FLAGS(SANE,[libsane],,[`${SANE_CONFIG:-sane-config} --cflags 2>/dev/null`],[`${SANE_CONFIG:-sane-config} --ldflags 2>/dev/null`]) - AC_CHECK_HEADER(sane/sane.h, - [WINE_CHECK_SONAME(sane,sane_init,,[SANE_CFLAGS=""],[$SANE_LIBS])], - [SANE_CFLAGS=""]) diff --git a/package/wine/wine.hash b/package/wine/wine.hash index 71d633c1038..80c0f68bd92 100644 --- a/package/wine/wine.hash +++ b/package/wine/wine.hash @@ -1,3 +1,2 @@ -# From http://sourceforge.net/projects/wine/files/Source/ -md5 0f6c56f86befe38e219090915f81f48a wine-1.6.2.tar.bz2 -sha1 574b9ccedbf213622b7ee55f715764673fc27692 wine-1.6.2.tar.bz2 +# Locally calculated after checking pgp signature +sha256 f33b45c18112b2071fbf9edee0e8c575407f9e2a9855ca4ee918ed33efa7c6f4 wine-1.8.tar.bz2 diff --git a/package/wine/wine.mk b/package/wine/wine.mk index d6fb9c6d015..2cd5c302ce0 100644 --- a/package/wine/wine.mk +++ b/package/wine/wine.mk @@ -4,13 +4,13 @@ # ################################################################################ -WINE_VERSION = 1.6.2 +WINE_VERSION = 1.8 WINE_SOURCE = wine-$(WINE_VERSION).tar.bz2 -WINE_SITE = http://downloads.sourceforge.net/project/wine/Source +WINE_SITE = https://dl.winehq.org/wine/source/1.8 WINE_LICENSE = LGPLv2.1+ WINE_LICENSE_FILES = COPYING.LIB LICENSE WINE_DEPENDENCIES = host-bison host-flex host-wine -# For 0002-detect-ncursesw.patch +# For 0001-sane-config-fix.patch WINE_AUTORECONF = YES # Wine needs its own directory structure and tools for cross compiling @@ -25,9 +25,7 @@ WINE_CONF_OPTS = \ --without-gphoto \ --without-gsm \ --without-hal \ - --without-openal \ --without-opencl \ - --without-osmesa \ --without-oss # Wine uses a wrapper around gcc, and uses the value of --host to @@ -51,6 +49,7 @@ endif ifeq ($(BR2_PACKAGE_CUPS),y) WINE_CONF_OPTS += --with-cups WINE_DEPENDENCIES += cups +WINE_CONF_ENV += CUPS_CONFIG=$(STAGING_DIR)/usr/bin/cups-config else WINE_CONF_OPTS += --without-cups endif @@ -75,6 +74,7 @@ WINE_CONF_OPTS += --with-freetype HOST_WINE_CONF_OPTS += --with-freetype WINE_DEPENDENCIES += freetype HOST_WINE_DEPENDENCIES += host-freetype +WINE_CONF_ENV += FREETYPE_CONFIG=$(STAGING_DIR)/usr/bin/freetype-config else WINE_CONF_OPTS += --without-freetype HOST_WINE_CONF_OPTS += --without-freetype @@ -122,6 +122,13 @@ else WINE_CONF_OPTS += --without-glu endif +ifeq ($(BR2_PACKAGE_LIBPCAP),y) +WINE_CONF_OPTS += --with-pcap +WINE_DEPENDENCIES += libpcap +else +WINE_CONF_OPTS += --without-pcap +endif + ifeq ($(BR2_PACKAGE_LIBPNG),y) WINE_CONF_OPTS += --with-png WINE_DEPENDENCIES += libpng @@ -139,6 +146,7 @@ endif ifeq ($(BR2_PACKAGE_LIBXML2),y) WINE_CONF_OPTS += --with-xml WINE_DEPENDENCIES += libxml2 +WINE_CONF_ENV += XML2_CONFIG=$(STAGING_DIR)/usr/bin/xml2-config else WINE_CONF_OPTS += --without-xml endif @@ -146,6 +154,7 @@ endif ifeq ($(BR2_PACKAGE_LIBXSLT),y) WINE_CONF_OPTS += --with-xslt WINE_DEPENDENCIES += libxslt +WINE_CONF_ENV += XSLT_CONFIG=$(STAGING_DIR)/usr/bin/xslt-config else WINE_CONF_OPTS += --without-xslt endif @@ -164,6 +173,13 @@ else WINE_CONF_OPTS += --without-curses endif +ifeq ($(BR2_PACKAGE_OPENAL),y) +WINE_CONF_OPTS += --with-openal +WINE_DEPENDENCIES += openal +else +WINE_CONF_OPTS += --without-openal +endif + ifeq ($(BR2_PACKAGE_OPENLDAP),y) WINE_CONF_OPTS += --with-ldap WINE_DEPENDENCIES += openldap @@ -171,6 +187,27 @@ else WINE_CONF_OPTS += --without-ldap endif +ifeq ($(BR2_PACKAGE_MESA3D_OSMESA),y) +WINE_CONF_OPTS += --with-osmesa +WINE_DEPENDENCIES += mesa3d +else +WINE_CONF_OPTS += --without-osmesa +endif + +ifeq ($(BR2_PACKAGE_PULSEAUDIO),y) +WINE_CONF_OPTS += --with-pulse +WINE_DEPENDENCIES += pulseaudio +else +WINE_CONF_OPTS += --without-pulse +endif + +ifeq ($(BR2_PACKAGE_SAMBA4),y) +WINE_CONF_OPTS += --with-netapi +WINE_DEPENDENCIES += samba4 +else +WINE_CONF_OPTS += --without-netapi +endif + ifeq ($(BR2_PACKAGE_SANE_BACKENDS),y) WINE_CONF_OPTS += --with-sane WINE_DEPENDENCIES += sane-backends @@ -270,6 +307,7 @@ endif define HOST_WINE_BUILD_CMDS $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \ tools \ + tools/sfnt2fon \ tools/widl \ tools/winebuild \ tools/winegcc \ @@ -306,11 +344,14 @@ HOST_WINE_CONF_OPTS += \ --without-jpeg \ --without-ldap \ --without-mpg123 \ + --without-netapi \ --without-openal \ --without-opencl \ --without-opengl \ --without-osmesa \ --without-oss \ + --without-pcap \ + --without-pulse \ --without-png \ --without-sane \ --without-tiff \ diff --git a/package/wipe/0001-musl.patch b/package/wipe/0001-musl.patch new file mode 100644 index 00000000000..35b3af80fff --- /dev/null +++ b/package/wipe/0001-musl.patch @@ -0,0 +1,28 @@ +Fix musl build + +In file included from main.c:46:0: +rand.h:31:9: error: unknown type name ‘u_int32_t’ + typedef u_int32_t u_rand_t; + ^ +: recipe for target 'main.o' failed + +Patch sent upstream: https://sourceforge.net/p/wipe/patches/4/ + +Signed-off-by: Bernd Kuhls + +diff -uNr wipe-2.3.1.org/rand.h wipe-2.3.1/rand.h +--- wipe-2.3.1.org/rand.h 2003-12-03 04:01:02.000000000 +0100 ++++ wipe-2.3.1/rand.h 2016-01-31 21:39:54.000000000 +0100 +@@ -22,10 +22,9 @@ + + #ifdef HAVE_STDINT_H + # include "stdint.h" +-#else +-# ifndef LINUX ++#endif ++#if !defined(u_int32_t) + # define u_int32_t uint32_t +-# endif + #endif + + typedef u_int32_t u_rand_t; diff --git a/package/wireless-regdb/wireless-regdb.hash b/package/wireless-regdb/wireless-regdb.hash index f02c1c33c92..cafc6318c42 100644 --- a/package/wireless-regdb/wireless-regdb.hash +++ b/package/wireless-regdb/wireless-regdb.hash @@ -1,2 +1,2 @@ # From https://www.kernel.org/pub/software/network/wireless-regdb/sha256sums.asc -sha256 edac88b58f23f0a7d73aa2b21520d04019f30e3e604b0a60ca0a6af16044bdf2 wireless-regdb-2015.07.20.tar.xz +sha256 013e07d988f5cd7d24e4aa7a6cd406615d441ea6b882a02d2a46a78edeb2cfb6 wireless-regdb-2015.12.14.tar.xz diff --git a/package/wireless-regdb/wireless-regdb.mk b/package/wireless-regdb/wireless-regdb.mk index fe76882cd97..38d1c261f1f 100644 --- a/package/wireless-regdb/wireless-regdb.mk +++ b/package/wireless-regdb/wireless-regdb.mk @@ -4,7 +4,7 @@ # ################################################################################ -WIRELESS_REGDB_VERSION = 2015.07.20 +WIRELESS_REGDB_VERSION = 2015.12.14 WIRELESS_REGDB_SOURCE = wireless-regdb-$(WIRELESS_REGDB_VERSION).tar.xz WIRELESS_REGDB_SITE = http://kernel.org/pub/software/network/wireless-regdb WIRELESS_REGDB_LICENSE = ISC diff --git a/package/wireshark/0001-configure-do-not-assume-broken-inet_pton-in-case-of-.patch b/package/wireshark/0001-configure-do-not-assume-broken-inet_pton-in-case-of-.patch new file mode 100644 index 00000000000..4d1f680a51b --- /dev/null +++ b/package/wireshark/0001-configure-do-not-assume-broken-inet_pton-in-case-of-.patch @@ -0,0 +1,32 @@ +From a0657feeb2b349ffda895a53e36ea5c992d871cf Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Sat, 31 Oct 2015 22:38:48 +0100 +Subject: [PATCH] configure: do not assume broken inet_pton in case of cross + compiling + +Patch configure.ac to not assume broken inet_pton in case of cross +compiling. + +Signed-off-by: Peter Seiderer +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index aec0548..d640e0c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -2646,8 +2646,8 @@ int main() + #endif + }], [AC_MSG_RESULT(ok); + have_inet_pton=yes], [AC_MSG_RESULT(broken); +-have_inet_pton=no], [AC_MSG_RESULT(cross compiling, assume it is broken); +-have_inet_pton=no])], ++have_inet_pton=no], [AC_MSG_RESULT([cross compiling, assume it is broken... not here]); ++have_inet_pton=yes])], + have_inet_pton=no) + if test "$have_inet_pton" = no; then + INET_PTON_LO="inet_pton.lo" +-- +2.1.4 + diff --git a/package/wireshark/Config.in b/package/wireshark/Config.in index f559c220cd3..defeb4b3e47 100644 --- a/package/wireshark/Config.in +++ b/package/wireshark/Config.in @@ -1,14 +1,12 @@ config BR2_PACKAGE_WIRESHARK bool "wireshark" select BR2_PACKAGE_LIBPCAP - select BR2_PACKAGE_LIBGCRYPT select BR2_PACKAGE_LIBGLIB2 depends on BR2_USE_MMU # fork(), glib2 depends on BR2_USE_WCHAR # glib2 depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 help - Network traffic sniffer and protocol decoder. Currently only tshark, - the console interface, is enabled. + Network traffic sniffer and protocol decoder. http://www.wireshark.org diff --git a/package/wireshark/wireshark.hash b/package/wireshark/wireshark.hash index b8368b39a12..ed0d2effdeb 100644 --- a/package/wireshark/wireshark.hash +++ b/package/wireshark/wireshark.hash @@ -1,3 +1,2 @@ -# From https://www.wireshark.org/download/SIGNATURES-1.12.6.txt -md5 25ad2bc1c2a21396827c238fcff51bf3 wireshark-1.12.6.tar.bz2 -sha1 5b592bd0389b76d3bdee6a7336e9492f8162c94d wireshark-1.12.6.tar.bz2 +# From: https://www.wireshark.org/download/src/all-versions/SIGNATURES-2.0.2.txt +sha256 e921fb072085a5654d899949bb561d0687f4819f7b63ba35777bb949a9b6b9c1 wireshark-2.0.2.tar.bz2 diff --git a/package/wireshark/wireshark.mk b/package/wireshark/wireshark.mk index af3d67c5620..34a5a857e50 100644 --- a/package/wireshark/wireshark.mk +++ b/package/wireshark/wireshark.mk @@ -4,25 +4,99 @@ # ################################################################################ -WIRESHARK_VERSION = 1.12.6 +WIRESHARK_VERSION = 2.0.2 WIRESHARK_SOURCE = wireshark-$(WIRESHARK_VERSION).tar.bz2 WIRESHARK_SITE = http://www.wireshark.org/download/src/all-versions WIRESHARK_LICENSE = wireshark license WIRESHARK_LICENSE_FILES = COPYING -WIRESHARK_DEPENDENCIES = libpcap libgcrypt libglib2 +WIRESHARK_DEPENDENCIES = host-pkgconf libpcap libglib2 WIRESHARK_CONF_ENV = \ - LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config \ ac_cv_path_PCAP_CONFIG=$(STAGING_DIR)/usr/bin/pcap-config +# patch touching configure.ac +WIRESHARK_AUTORECONF = YES + # wireshark adds -I$includedir to CFLAGS, causing host/target headers mixup. # Work around it by pointing includedir at staging WIRESHARK_CONF_OPTS = \ - --disable-wireshark \ --without-krb5 \ --disable-usr-local \ --enable-static=no \ - --with-gnutls=no \ --with-libsmi=no \ + --with-lua=no \ + --with-pcap=$(STAGING_DIR)/usr \ --includedir=$(STAGING_DIR)/usr/include +# wireshark GUI options +ifeq ($(BR2_PACKAGE_LIBGTK3),y) +WIRESHARK_CONF_OPTS += --with-gtk3=yes +WIRESHARK_DEPENDENCIES += libgtk3 +else ifeq ($(BR2_PACKAGE_LIBGTK2),y) +WIRESHARK_CONF_OPTS += --with-gtk2=yes +WIRESHARK_DEPENDECIES += libgtk2 +else +WIRESHARK_CONF_OPTS += --with-gtk3=no --with-gtk2=no +endif + +# Qt4 needs accessibility, we don't support it +ifeq ($(BR2_PACKAGE_QT5BASE_WIDGETS),y) +WIRESHARK_CONF_OPTS += --with-qt=5 +WIRESHARK_DEPENDENCIES += qt5base +# Seems it expects wrappers and passes a -qt=X parameter for version +WIRESHARK_MAKE_OPTS += \ + MOC="$(HOST_DIR)/usr/bin/moc" \ + RCC="$(HOST_DIR)/usr/bin/rcc" \ + UIC="$(HOST_DIR)/usr/bin/uic" +else +WIRESHARK_CONF_OPTS += --with-qt=no +endif + +# No GUI at all +ifeq ($(BR2_PACKAGE_LIBGTK2)$(BR2_PACKAGE_LIBGTK3)$(BR2_PACKAGE_QT5BASE_WIDGETS),) +WIRESHARK_CONF_OPTS += --disable-wireshark +endif + +ifeq ($(BR2_PACKAGE_C_ARES),y) +WIRESHARK_CONF_OPTS += --with-c-ares=$(STAGING_DIR)/usr +WIRESHARK_DEPENDENCIES += c-ares +else +WIREHARK_CONF_OPTS += --without-c-ares +endif + +ifeq ($(BR2_PACKAGE_GEOIP),y) +WIRESHARK_CONF_OPTS += --with-geoip=$(STAGING_DIR)/usr +WIRESHARK_DEPENDENCIES += geoip +else +WIRESHARK_CONF_OPTS += --without-geoip +endif + +ifeq ($(BR2_PACKAGE_GNUTLS),y) +WIRESHARK_CONF_OPTS += --with-gnutls=yes +WIRESHARK_DEPENDENCIES += gnutls +else +WIRESHARK_CONF_OPTS += --with-gnutls=no +endif + +ifeq ($(BR2_PACKAGE_LIBGCRYPT),y) +WIRESHARK_CONF_ENV = LIBGCRYPT_CONFIG=$(STAGING_DIR)/usr/bin/libgcrypt-config +WIRESHARK_CONF_OPTS += --with-gcrypt=yes +WIRESHARK_DEPENDENCIES += libgcrypt +else +WIRESHARK_CONF_OPTS += --with-gcrypt=no +endif + +ifeq ($(BR2_PACKAGE_LIBNL),y) +WIRESHARK_CONF_OPTS += --with-libnl +WIRESHARK_DEPENDENCIES += libnl +else +WIRESHARK_CONF_OPTS += --without-libnl +endif + +ifeq ($(BR2_PACKAGE_SBC),y) +WIRESHARK_CONF_OPTS += --with-sbc=yes +WIRESHARK_DEPENDENCIES += sbc +else +WIRESHARK_CONF_OPTS += --with-sbc=no +endif + $(eval $(autotools-package)) diff --git a/package/wpa_supplicant/0001-P2P-Validate-SSID-element-length-before-copying-it-C.patch b/package/wpa_supplicant/0001-P2P-Validate-SSID-element-length-before-copying-it-C.patch deleted file mode 100644 index 989bc4f786a..00000000000 --- a/package/wpa_supplicant/0001-P2P-Validate-SSID-element-length-before-copying-it-C.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 9ed4eee345f85e3025c33c6e20aa25696e341ccd Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Tue, 7 Apr 2015 11:32:11 +0300 -Subject: [PATCH] P2P: Validate SSID element length before copying it - (CVE-2015-1863) - -Upstream commit 9ed4eee345f85e3025c33c6e20aa25696e341ccd. - -This fixes a possible memcpy overflow for P2P dev->oper_ssid in -p2p_add_device(). The length provided by the peer device (0..255 bytes) -was used without proper bounds checking and that could have resulted in -arbitrary data of up to 223 bytes being written beyond the end of the -dev->oper_ssid[] array (of which about 150 bytes would be beyond the -heap allocation) when processing a corrupted management frame for P2P -peer discovery purposes. - -This could result in corrupted state in heap, unexpected program -behavior due to corrupted P2P peer device information, denial of service -due to process crash, exposure of memory contents during GO Negotiation, -and potentially arbitrary code execution. - -Thanks to Google security team for reporting this issue and smart -hardware research group of Alibaba security team for discovering it. - -Signed-off-by: Jouni Malinen -Signed-off-by: Baruch Siach ---- - src/p2p/p2p.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/p2p/p2p.c b/src/p2p/p2p.c -index f584fae..a45fe73 100644 ---- a/src/p2p/p2p.c -+++ b/src/p2p/p2p.c -@@ -778,6 +778,7 @@ int p2p_add_device(struct p2p_data *p2p, const u8 *addr, int freq, - if (os_memcmp(addr, p2p_dev_addr, ETH_ALEN) != 0) - os_memcpy(dev->interface_addr, addr, ETH_ALEN); - if (msg.ssid && -+ msg.ssid[1] <= sizeof(dev->oper_ssid) && - (msg.ssid[1] != P2P_WILDCARD_SSID_LEN || - os_memcmp(msg.ssid + 2, P2P_WILDCARD_SSID, P2P_WILDCARD_SSID_LEN) - != 0)) { --- -1.9.1 - diff --git a/package/wpa_supplicant/0001-fix-readline-libs-ordering.patch b/package/wpa_supplicant/0001-fix-readline-libs-ordering.patch new file mode 100644 index 00000000000..2a9b8327972 --- /dev/null +++ b/package/wpa_supplicant/0001-fix-readline-libs-ordering.patch @@ -0,0 +1,26 @@ +commit 631f0893038743cebd2def39df61aceb48bd43a9 +Author: David du Colombier <0intro@gmail.com> +Date: Sun Sep 13 23:40:43 2015 +0200 + + wpa_supplicant: fix static link with readline + + The readline library depends on ncurses, so + it should be set before ncurses on the linker + command line to be able to be statically linked + successfully. + + Signed-off-by: David du Colombier <0intro@gmail.com> + +diff --git a/wpa_supplicant/Makefile b/wpa_supplicant/Makefile +index 1597412..581db02 100644 +--- a/wpa_supplicant/Makefile ++++ b/wpa_supplicant/Makefile +@@ -1408,7 +1408,7 @@ LIBS += $(DBUS_LIBS) + + ifdef CONFIG_READLINE + OBJS_c += ../src/utils/edit_readline.o +-LIBS_c += -lncurses -lreadline ++LIBS_c += -lreadline -lncurses + else + ifdef CONFIG_WPA_CLI_EDIT + OBJS_c += ../src/utils/edit.o diff --git a/package/wpa_supplicant/0002-WNM-Ignore-Key-Data-in-WNM-Sleep-Mode-Response-frame.patch b/package/wpa_supplicant/0002-WNM-Ignore-Key-Data-in-WNM-Sleep-Mode-Response-frame.patch new file mode 100644 index 00000000000..00e5b7c771d --- /dev/null +++ b/package/wpa_supplicant/0002-WNM-Ignore-Key-Data-in-WNM-Sleep-Mode-Response-frame.patch @@ -0,0 +1,32 @@ +From 6b12d93d2c7428a34bfd4b3813ba339ed57b698a Mon Sep 17 00:00:00 2001 +From: Jouni Malinen +Date: Sun, 25 Oct 2015 15:45:50 +0200 +Subject: [PATCH] WNM: Ignore Key Data in WNM Sleep Mode Response frame if no + PMF in use + +WNM Sleep Mode Response frame is used to update GTK/IGTK only if PMF is +enabled. Verify that PMF is in use before using this field on station +side to avoid accepting unauthenticated key updates. (CVE-2015-5310) + +Signed-off-by: Jouni Malinen +--- + wpa_supplicant/wnm_sta.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/wpa_supplicant/wnm_sta.c b/wpa_supplicant/wnm_sta.c +index 954de67..7d79499 100644 +--- a/wpa_supplicant/wnm_sta.c ++++ b/wpa_supplicant/wnm_sta.c +@@ -187,6 +187,12 @@ static void wnm_sleep_mode_exit_success(struct wpa_supplicant *wpa_s, + end = ptr + key_len_total; + wpa_hexdump_key(MSG_DEBUG, "WNM: Key Data", ptr, key_len_total); + ++ if (key_len_total && !wpa_sm_pmf_enabled(wpa_s->wpa)) { ++ wpa_msg(wpa_s, MSG_INFO, ++ "WNM: Ignore Key Data in WNM-Sleep Mode Response - PMF not enabled"); ++ return; ++ } ++ + while (ptr + 1 < end) { + if (ptr + 2 + ptr[1] > end) { + wpa_printf(MSG_DEBUG, "WNM: Invalid Key Data element " diff --git a/package/wpa_supplicant/0002-WPS-Fix-HTTP-chunked-transfer-encoding-parser.patch b/package/wpa_supplicant/0002-WPS-Fix-HTTP-chunked-transfer-encoding-parser.patch deleted file mode 100644 index d9dccf91166..00000000000 --- a/package/wpa_supplicant/0002-WPS-Fix-HTTP-chunked-transfer-encoding-parser.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 5acd23f4581da58683f3cf5e36cb71bbe4070bd7 Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Tue, 28 Apr 2015 17:08:33 +0300 -Subject: [PATCH] WPS: Fix HTTP chunked transfer encoding parser - -strtoul() return value may end up overflowing the int h->chunk_size and -resulting in a negative value to be stored as the chunk_size. This could -result in the following memcpy operation using a very large length -argument which would result in a buffer overflow and segmentation fault. - -This could have been used to cause a denial service by any device that -has been authorized for network access (either wireless or wired). This -would affect both the WPS UPnP functionality in a WPS AP (hostapd with -upnp_iface parameter set in the configuration) and WPS ER -(wpa_supplicant with WPS_ER_START control interface command used). - -Validate the parsed chunk length value to avoid this. In addition to -rejecting negative values, we can also reject chunk size that would be -larger than the maximum configured body length. - -Thanks to Kostya Kortchinsky of Google security team for discovering and -reporting this issue. - -Signed-off-by: Jouni Malinen -Signed-off-by: Baruch Siach ---- - src/wps/httpread.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/src/wps/httpread.c b/src/wps/httpread.c -index 2f08f37275c0..d2855e32fd0f 100644 ---- a/src/wps/httpread.c -+++ b/src/wps/httpread.c -@@ -533,6 +533,13 @@ static void httpread_read_handler(int sd, void *eloop_ctx, void *sock_ctx) - if (!isxdigit(*cbp)) - goto bad; - h->chunk_size = strtoul(cbp, NULL, 16); -+ if (h->chunk_size < 0 || -+ h->chunk_size > h->max_bytes) { -+ wpa_printf(MSG_DEBUG, -+ "httpread: Invalid chunk size %d", -+ h->chunk_size); -+ goto bad; -+ } - /* throw away chunk header - * so we have only real data - */ --- -2.1.4 - diff --git a/package/wpa_supplicant/0003-AP-WMM-Fix-integer-underflow-in-WMM-Action-frame-par.patch b/package/wpa_supplicant/0003-AP-WMM-Fix-integer-underflow-in-WMM-Action-frame-par.patch deleted file mode 100644 index 307297b9e3c..00000000000 --- a/package/wpa_supplicant/0003-AP-WMM-Fix-integer-underflow-in-WMM-Action-frame-par.patch +++ /dev/null @@ -1,42 +0,0 @@ -From ef566a4d4f74022e1fdb0a2addfe81e6de9f4aae Mon Sep 17 00:00:00 2001 -From: Jouni Malinen -Date: Wed, 29 Apr 2015 02:21:53 +0300 -Subject: [PATCH] AP WMM: Fix integer underflow in WMM Action frame parser - -The length of the WMM Action frame was not properly validated and the -length of the information elements (int left) could end up being -negative. This would result in reading significantly past the stack -buffer while parsing the IEs in ieee802_11_parse_elems() and while doing -so, resulting in segmentation fault. - -This can result in an invalid frame being used for a denial of service -attack (hostapd process killed) against an AP with a driver that uses -hostapd for management frame processing (e.g., all mac80211-based -drivers). - -Thanks to Kostya Kortchinsky of Google security team for discovering and -reporting this issue. - -Signed-off-by: Jouni Malinen -Signed-off-by: Baruch Siach ---- - src/ap/wmm.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/ap/wmm.c b/src/ap/wmm.c -index 6d4177c2a847..314e244bc956 100644 ---- a/src/ap/wmm.c -+++ b/src/ap/wmm.c -@@ -274,6 +274,9 @@ void hostapd_wmm_action(struct hostapd_data *hapd, - return; - } - -+ if (left < 0) -+ return; /* not a valid WMM Action frame */ -+ - /* extract the tspec info element */ - if (ieee802_11_parse_elems(pos, left, &elems, 1) == ParseFailed) { - hostapd_logger(hapd, mgmt->sa, HOSTAPD_MODULE_IEEE80211, --- -2.1.4 - diff --git a/package/wpa_supplicant/0003-EAP-pwd-peer-Fix-last-fragment-length-validation.patch b/package/wpa_supplicant/0003-EAP-pwd-peer-Fix-last-fragment-length-validation.patch new file mode 100644 index 00000000000..82c26398b69 --- /dev/null +++ b/package/wpa_supplicant/0003-EAP-pwd-peer-Fix-last-fragment-length-validation.patch @@ -0,0 +1,54 @@ +From 8057821706784608b828e769ccefbced95591e50 Mon Sep 17 00:00:00 2001 +From: Jouni Malinen +Date: Sun, 1 Nov 2015 18:18:17 +0200 +Subject: [PATCH] EAP-pwd peer: Fix last fragment length validation + +All but the last fragment had their length checked against the remaining +room in the reassembly buffer. This allowed a suitably constructed last +fragment frame to try to add extra data that would go beyond the buffer. +The length validation code in wpabuf_put_data() prevents an actual +buffer write overflow from occurring, but this results in process +termination. (CVE-2015-5315) + +Signed-off-by: Jouni Malinen +--- + src/eap_peer/eap_pwd.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/src/eap_peer/eap_pwd.c b/src/eap_peer/eap_pwd.c +index 1f78544..75ceef1 100644 +--- a/src/eap_peer/eap_pwd.c ++++ b/src/eap_peer/eap_pwd.c +@@ -903,7 +903,7 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, + /* + * buffer and ACK the fragment + */ +- if (EAP_PWD_GET_MORE_BIT(lm_exch)) { ++ if (EAP_PWD_GET_MORE_BIT(lm_exch) || data->in_frag_pos) { + data->in_frag_pos += len; + if (data->in_frag_pos > wpabuf_size(data->inbuf)) { + wpa_printf(MSG_INFO, "EAP-pwd: Buffer overflow attack " +@@ -916,7 +916,8 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, + return NULL; + } + wpabuf_put_data(data->inbuf, pos, len); +- ++ } ++ if (EAP_PWD_GET_MORE_BIT(lm_exch)) { + resp = eap_msg_alloc(EAP_VENDOR_IETF, EAP_TYPE_PWD, + EAP_PWD_HDR_SIZE, + EAP_CODE_RESPONSE, eap_get_id(reqData)); +@@ -930,10 +931,8 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, + * we're buffering and this is the last fragment + */ + if (data->in_frag_pos) { +- wpabuf_put_data(data->inbuf, pos, len); + wpa_printf(MSG_DEBUG, "EAP-pwd: Last fragment, %d bytes", + (int) len); +- data->in_frag_pos += len; + pos = wpabuf_head_u8(data->inbuf); + len = data->in_frag_pos; + } +-- +1.9.1 + diff --git a/package/wpa_supplicant/0004-EAP-pwd-fixes.patch b/package/wpa_supplicant/0004-EAP-pwd-fixes.patch deleted file mode 100644 index 16a1f539883..00000000000 --- a/package/wpa_supplicant/0004-EAP-pwd-fixes.patch +++ /dev/null @@ -1,154 +0,0 @@ -This patch combines the following upstream security fixes: - -28a069a545b0 EAP-pwd peer: Fix asymmetric fragmentation behavior -3035cc2894e0 EAP-pwd server: Fix Total-Length parsing for fragment reassembly -477c74395acd EAP-pwd peer: Fix Total-Length parsing for fragment reassembly -e28a58be2618 EAP-pwd server: Fix payload length validation for Commit and Confirm -dd2f043c9c43 EAP-pwd peer: Fix payload length validation for Commit and Confirm - -Details at -http://w1.fi/security/2015-4/eap-pwd-missing-payload-length-validation.txt - -Signed-off-by: Baruch Siach ---- -diff --git a/src/eap_peer/eap_pwd.c b/src/eap_peer/eap_pwd.c -index f2b092669a42..e58b13a42f73 100644 ---- a/src/eap_peer/eap_pwd.c -+++ b/src/eap_peer/eap_pwd.c -@@ -355,6 +355,23 @@ eap_pwd_perform_commit_exchange(struct eap_sm *sm, struct eap_pwd_data *data, - BIGNUM *mask = NULL, *x = NULL, *y = NULL, *cofactor = NULL; - u16 offset; - u8 *ptr, *scalar = NULL, *element = NULL; -+ size_t prime_len, order_len; -+ -+ if (data->state != PWD_Commit_Req) { -+ ret->ignore = TRUE; -+ goto fin; -+ } -+ -+ prime_len = BN_num_bytes(data->grp->prime); -+ order_len = BN_num_bytes(data->grp->order); -+ -+ if (payload_len != 2 * prime_len + order_len) { -+ wpa_printf(MSG_INFO, -+ "EAP-pwd: Unexpected Commit payload length %u (expected %u)", -+ (unsigned int) payload_len, -+ (unsigned int) (2 * prime_len + order_len)); -+ goto fin; -+ } - - if (((data->private_value = BN_new()) == NULL) || - ((data->my_element = EC_POINT_new(data->grp->group)) == NULL) || -@@ -554,6 +571,18 @@ eap_pwd_perform_confirm_exchange(struct eap_sm *sm, struct eap_pwd_data *data, - u8 conf[SHA256_MAC_LEN], *cruft = NULL, *ptr; - int offset; - -+ if (data->state != PWD_Confirm_Req) { -+ ret->ignore = TRUE; -+ goto fin; -+ } -+ -+ if (payload_len != SHA256_MAC_LEN) { -+ wpa_printf(MSG_INFO, -+ "EAP-pwd: Unexpected Confirm payload length %u (expected %u)", -+ (unsigned int) payload_len, SHA256_MAC_LEN); -+ goto fin; -+ } -+ - /* - * first build up the ciphersuite which is group | random_function | - * prf -@@ -837,11 +866,23 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, - * if it's the first fragment there'll be a length field - */ - if (EAP_PWD_GET_LENGTH_BIT(lm_exch)) { -+ if (len < 2) { -+ wpa_printf(MSG_DEBUG, -+ "EAP-pwd: Frame too short to contain Total-Length field"); -+ ret->ignore = TRUE; -+ return NULL; -+ } - tot_len = WPA_GET_BE16(pos); - wpa_printf(MSG_DEBUG, "EAP-pwd: Incoming fragments whose " - "total length = %d", tot_len); - if (tot_len > 15000) - return NULL; -+ if (data->inbuf) { -+ wpa_printf(MSG_DEBUG, -+ "EAP-pwd: Unexpected new fragment start when previous fragment is still in use"); -+ ret->ignore = TRUE; -+ return NULL; -+ } - data->inbuf = wpabuf_alloc(tot_len); - if (data->inbuf == NULL) { - wpa_printf(MSG_INFO, "Out of memory to buffer " -@@ -927,6 +968,7 @@ eap_pwd_process(struct eap_sm *sm, void *priv, struct eap_method_ret *ret, - /* - * we have output! Do we need to fragment it? - */ -+ lm_exch = EAP_PWD_GET_EXCHANGE(lm_exch); - len = wpabuf_len(data->outbuf); - if ((len + EAP_PWD_HDR_SIZE) > data->mtu) { - resp = eap_msg_alloc(EAP_VENDOR_IETF, EAP_TYPE_PWD, data->mtu, -diff --git a/src/eap_server/eap_server_pwd.c b/src/eap_server/eap_server_pwd.c -index 66bd5d2e9179..2bfc3c27647d 100644 ---- a/src/eap_server/eap_server_pwd.c -+++ b/src/eap_server/eap_server_pwd.c -@@ -656,9 +656,21 @@ eap_pwd_process_commit_resp(struct eap_sm *sm, struct eap_pwd_data *data, - BIGNUM *x = NULL, *y = NULL, *cofactor = NULL; - EC_POINT *K = NULL, *point = NULL; - int res = 0; -+ size_t prime_len, order_len; - - wpa_printf(MSG_DEBUG, "EAP-pwd: Received commit response"); - -+ prime_len = BN_num_bytes(data->grp->prime); -+ order_len = BN_num_bytes(data->grp->order); -+ -+ if (payload_len != 2 * prime_len + order_len) { -+ wpa_printf(MSG_INFO, -+ "EAP-pwd: Unexpected Commit payload length %u (expected %u)", -+ (unsigned int) payload_len, -+ (unsigned int) (2 * prime_len + order_len)); -+ goto fin; -+ } -+ - if (((data->peer_scalar = BN_new()) == NULL) || - ((data->k = BN_new()) == NULL) || - ((cofactor = BN_new()) == NULL) || -@@ -774,6 +786,13 @@ eap_pwd_process_confirm_resp(struct eap_sm *sm, struct eap_pwd_data *data, - u8 conf[SHA256_MAC_LEN], *cruft = NULL, *ptr; - int offset; - -+ if (payload_len != SHA256_MAC_LEN) { -+ wpa_printf(MSG_INFO, -+ "EAP-pwd: Unexpected Confirm payload length %u (expected %u)", -+ (unsigned int) payload_len, SHA256_MAC_LEN); -+ goto fin; -+ } -+ - /* build up the ciphersuite: group | random_function | prf */ - grp = htons(data->group_num); - ptr = (u8 *) &cs; -@@ -923,11 +942,21 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, - * the first fragment has a total length - */ - if (EAP_PWD_GET_LENGTH_BIT(lm_exch)) { -+ if (len < 2) { -+ wpa_printf(MSG_DEBUG, -+ "EAP-pwd: Frame too short to contain Total-Length field"); -+ return; -+ } - tot_len = WPA_GET_BE16(pos); - wpa_printf(MSG_DEBUG, "EAP-pwd: Incoming fragments, total " - "length = %d", tot_len); - if (tot_len > 15000) - return; -+ if (data->inbuf) { -+ wpa_printf(MSG_DEBUG, -+ "EAP-pwd: Unexpected new fragment start when previous fragment is still in use"); -+ return; -+ } - data->inbuf = wpabuf_alloc(tot_len); - if (data->inbuf == NULL) { - wpa_printf(MSG_INFO, "EAP-pwd: Out of memory to " diff --git a/package/wpa_supplicant/0004-EAP-pwd-server-Fix-last-fragment-length-validation.patch b/package/wpa_supplicant/0004-EAP-pwd-server-Fix-last-fragment-length-validation.patch new file mode 100644 index 00000000000..bfc4c74e95c --- /dev/null +++ b/package/wpa_supplicant/0004-EAP-pwd-server-Fix-last-fragment-length-validation.patch @@ -0,0 +1,51 @@ +From bef802ece03f9ae9d52a21f0cf4f1bc2c5a1f8aa Mon Sep 17 00:00:00 2001 +From: Jouni Malinen +Date: Sun, 1 Nov 2015 18:24:16 +0200 +Subject: [PATCH] EAP-pwd server: Fix last fragment length validation + +All but the last fragment had their length checked against the remaining +room in the reassembly buffer. This allowed a suitably constructed last +fragment frame to try to add extra data that would go beyond the buffer. +The length validation code in wpabuf_put_data() prevents an actual +buffer write overflow from occurring, but this results in process +termination. (CVE-2015-5314) + +Signed-off-by: Jouni Malinen +--- + src/eap_server/eap_server_pwd.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/src/eap_server/eap_server_pwd.c b/src/eap_server/eap_server_pwd.c +index cb83ff7..9f787ab 100644 +--- a/src/eap_server/eap_server_pwd.c ++++ b/src/eap_server/eap_server_pwd.c +@@ -970,7 +970,7 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, + /* + * the first and all intermediate fragments have the M bit set + */ +- if (EAP_PWD_GET_MORE_BIT(lm_exch)) { ++ if (EAP_PWD_GET_MORE_BIT(lm_exch) || data->in_frag_pos) { + if ((data->in_frag_pos + len) > wpabuf_size(data->inbuf)) { + wpa_printf(MSG_DEBUG, "EAP-pwd: Buffer overflow " + "attack detected! (%d+%d > %d)", +@@ -981,6 +981,8 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, + } + wpabuf_put_data(data->inbuf, pos, len); + data->in_frag_pos += len; ++ } ++ if (EAP_PWD_GET_MORE_BIT(lm_exch)) { + wpa_printf(MSG_DEBUG, "EAP-pwd: Got a %d byte fragment", + (int) len); + return; +@@ -990,8 +992,6 @@ static void eap_pwd_process(struct eap_sm *sm, void *priv, + * buffering fragments so that's how we know it's the last) + */ + if (data->in_frag_pos) { +- wpabuf_put_data(data->inbuf, pos, len); +- data->in_frag_pos += len; + pos = wpabuf_head_u8(data->inbuf); + len = data->in_frag_pos; + wpa_printf(MSG_DEBUG, "EAP-pwd: Last fragment, %d bytes", +-- +1.9.1 + diff --git a/package/wpa_supplicant/0005-EAP-pwd-peer-Fix-error-path-for-unexpected-Confirm-m.patch b/package/wpa_supplicant/0005-EAP-pwd-peer-Fix-error-path-for-unexpected-Confirm-m.patch new file mode 100644 index 00000000000..3088f6a6dcd --- /dev/null +++ b/package/wpa_supplicant/0005-EAP-pwd-peer-Fix-error-path-for-unexpected-Confirm-m.patch @@ -0,0 +1,34 @@ +From 95577884ca4fa76be91344ff7a8d5d1e6dc3da61 Mon Sep 17 00:00:00 2001 +From: Jouni Malinen +Date: Sun, 1 Nov 2015 19:35:44 +0200 +Subject: [PATCH] EAP-pwd peer: Fix error path for unexpected Confirm message + +If the Confirm message is received from the server before the Identity +exchange has been completed, the group has not yet been determined and +data->grp is NULL. The error path in eap_pwd_perform_confirm_exchange() +did not take this corner case into account and could end up +dereferencing a NULL pointer and terminating the process if invalid +message sequence is received. (CVE-2015-5316) + +Signed-off-by: Jouni Malinen +--- + src/eap_peer/eap_pwd.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/eap_peer/eap_pwd.c b/src/eap_peer/eap_pwd.c +index 75ceef1..892b590 100644 +--- a/src/eap_peer/eap_pwd.c ++++ b/src/eap_peer/eap_pwd.c +@@ -774,7 +774,8 @@ eap_pwd_perform_confirm_exchange(struct eap_sm *sm, struct eap_pwd_data *data, + wpabuf_put_data(data->outbuf, conf, SHA256_MAC_LEN); + + fin: +- bin_clear_free(cruft, BN_num_bytes(data->grp->prime)); ++ if (data->grp) ++ bin_clear_free(cruft, BN_num_bytes(data->grp->prime)); + BN_clear_free(x); + BN_clear_free(y); + if (data->outbuf == NULL) { +-- +1.9.1 + diff --git a/package/wpa_supplicant/0006-fix-libwpa_client.patch b/package/wpa_supplicant/0006-fix-libwpa_client.patch new file mode 100644 index 00000000000..11c54023744 --- /dev/null +++ b/package/wpa_supplicant/0006-fix-libwpa_client.patch @@ -0,0 +1,39 @@ +From 6f7e0354a9035ce33742a5f869f817a6b39b2f31 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Thu, 29 Oct 2015 11:39:03 +0100 +Subject: [PATCH 1/1] wpa_supplicant/Makefile: fix libwpa_client +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Building libwpa_client requires src/utils/common.c for bin_clear_free() else +loading the library fails with: + + Error relocating /usr/lib/libwpa_client.so: bin_clear_free: symbol not found + +Backported from: 736b7cb2daf877a0cb9ad42ff15a2efbbd65fa42 + +Signed-off-by: Jörg Krause +--- + wpa_supplicant/Makefile | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/wpa_supplicant/Makefile b/wpa_supplicant/Makefile +index 61f8f18..0c444b0 100644 +--- a/wpa_supplicant/Makefile ++++ b/wpa_supplicant/Makefile +@@ -1706,9 +1706,11 @@ wpa_cli: $(OBJS_c) + + LIBCTRL += ../src/common/wpa_ctrl.o + LIBCTRL += ../src/utils/os_$(CONFIG_OS).o ++LIBCTRL += ../src/utils/common.c + LIBCTRL += ../src/utils/wpa_debug.o + LIBCTRLSO += ../src/common/wpa_ctrl.c + LIBCTRLSO += ../src/utils/os_$(CONFIG_OS).c ++LIBCTRLSO += ../src/utils/common.c + LIBCTRLSO += ../src/utils/wpa_debug.c + + libwpa_client.a: $(LIBCTRL) +-- +2.6.2 + diff --git a/package/wpa_supplicant/Config.in b/package/wpa_supplicant/Config.in index f32a8674890..f4c4167be50 100644 --- a/package/wpa_supplicant/Config.in +++ b/package/wpa_supplicant/Config.in @@ -8,6 +8,27 @@ config BR2_PACKAGE_WPA_SUPPLICANT if BR2_PACKAGE_WPA_SUPPLICANT +config BR2_PACKAGE_WPA_SUPPLICANT_NL80211 + bool "Enable nl80211 support" + default y + select BR2_PACKAGE_LIBNL + depends on BR2_TOOLCHAIN_HAS_THREADS # libnl + help + Enable support for nl80211. This is the current wireless + API for Linux, supported by all wireless drivers in vanilla + Linux, but may not be supported by some out-of-tree Linux + wireless drivers. wpa_supplicant will still fall back to + using the Wireless Extensions (wext) API with these drivers. + + If this option is disabled, then only the deprecated wext + API will be supported, with far less features. Linux may + supports using wext with modern drivers using a + compatibility layer, but it must be enabled in the kernel + configuration. + +comment "nl80211 support needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS + config BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT bool "Enable AP mode" help @@ -42,6 +63,15 @@ config BR2_PACKAGE_WPA_SUPPLICANT_CLI help Install wpa_cli command line utility +config BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO + depends on !BR2_STATIC_LIBS + bool "Install wpa_client shared library" + help + Install libwpa_client.so. + +comment "wpa_client library needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + config BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE bool "Install wpa_passphrase binary" help diff --git a/package/wpa_supplicant/wpa_supplicant.hash b/package/wpa_supplicant/wpa_supplicant.hash index 1ec33672398..19e43598f2b 100644 --- a/package/wpa_supplicant/wpa_supplicant.hash +++ b/package/wpa_supplicant/wpa_supplicant.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 058dc832c096139a059e6df814080f50251a8d313c21b13364c54a1e70109122 wpa_supplicant-2.4.tar.gz +sha256 cce55bae483b364eae55c35ba567c279be442ed8bab5b80a3c7fb0d057b9b316 wpa_supplicant-2.5.tar.gz diff --git a/package/wpa_supplicant/wpa_supplicant.mk b/package/wpa_supplicant/wpa_supplicant.mk index eb4278a667d..ba1180d4b60 100644 --- a/package/wpa_supplicant/wpa_supplicant.mk +++ b/package/wpa_supplicant/wpa_supplicant.mk @@ -4,9 +4,9 @@ # ################################################################################ -WPA_SUPPLICANT_VERSION = 2.4 +WPA_SUPPLICANT_VERSION = 2.5 WPA_SUPPLICANT_SITE = http://hostap.epitest.fi/releases -WPA_SUPPLICANT_LICENSE = GPLv2/BSD-3c +WPA_SUPPLICANT_LICENSE = BSD-3c WPA_SUPPLICANT_LICENSE_FILES = README WPA_SUPPLICANT_CONFIG = $(WPA_SUPPLICANT_DIR)/wpa_supplicant/.config WPA_SUPPLICANT_SUBDIR = wpa_supplicant @@ -15,6 +15,9 @@ WPA_SUPPLICANT_DBUS_NEW_SERVICE = fi.w1.wpa_supplicant1 WPA_SUPPLICANT_CFLAGS = $(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include/libnl3/ WPA_SUPPLICANT_LDFLAGS = $(TARGET_LDFLAGS) +# install the wpa_client library +WPA_SUPPLICANT_INSTALL_STAGING = YES + WPA_SUPPLICANT_CONFIG_EDITS = WPA_SUPPLICANT_CONFIG_SET = @@ -32,7 +35,7 @@ WPA_SUPPLICANT_CONFIG_DISABLE = \ # libnl-3 needs -lm (for rint) and -lpthread if linking statically # And library order matters hence stick -lnl-3 first since it's appended # in the wpa_supplicant Makefiles as in LIBS+=-lnl-3 ... thus failing -ifeq ($(BR2_PACKAGE_LIBNL),y) +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_NL80211),y) ifeq ($(BR2_STATIC_LIBS),y) WPA_SUPPLICANT_LIBS += -lnl-3 -lm -lpthread endif @@ -45,6 +48,10 @@ endif # Trailing underscore on purpose to not enable CONFIG_EAPOL_TEST ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_EAP),y) WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_EAP_ +# uses dlopen() +ifeq ($(BR2_STATIC_LIBS),y) +WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_EAP_TNC +endif else WPA_SUPPLICANT_CONFIG_DISABLE += CONFIG_EAP endif @@ -113,6 +120,22 @@ WPA_SUPPLICANT_DEPENDENCIES += readline WPA_SUPPLICANT_CONFIG_ENABLE += CONFIG_READLINE endif +ifeq ($(BR2_PACKAGE_WPA_SUPPLICANT_WPA_CLIENT_SO),y) +WPA_SUPPLICANT_CONFIG_SET += CONFIG_BUILD_WPA_CLIENT_SO +define WPA_SUPPLICANT_INSTALL_WPA_CLIENT_SO + $(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/libwpa_client.so \ + $(TARGET_DIR)/usr/lib/libwpa_client.so + $(INSTALL) -m 0644 -D $(@D)/src/common/wpa_ctrl.h \ + $(TARGET_DIR)/usr/include/wpa_ctrl.h +endef +define WPA_SUPPLICANT_INSTALL_STAGING_WPA_CLIENT_SO + $(INSTALL) -m 0644 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/libwpa_client.so \ + $(STAGING_DIR)/usr/lib/libwpa_client.so + $(INSTALL) -m 0644 -D $(@D)/src/common/wpa_ctrl.h \ + $(STAGING_DIR)/usr/include/wpa_ctrl.h +endef +endif + define WPA_SUPPLICANT_CONFIGURE_CMDS cp $(@D)/wpa_supplicant/defconfig $(WPA_SUPPLICANT_CONFIG) sed -i $(patsubst %,-e 's/^#\(%\)/\1/',$(WPA_SUPPLICANT_CONFIG_ENABLE)) \ @@ -155,6 +178,10 @@ define WPA_SUPPLICANT_INSTALL_DBUS endef endif +define WPA_SUPPLICANT_INSTALL_STAGING_CMDS + $(WPA_SUPPLICANT_INSTALL_STAGING_WPA_CLIENT_SO) +endef + define WPA_SUPPLICANT_INSTALL_TARGET_CMDS $(INSTALL) -m 0755 -D $(@D)/$(WPA_SUPPLICANT_SUBDIR)/wpa_supplicant \ $(TARGET_DIR)/usr/sbin/wpa_supplicant @@ -163,6 +190,7 @@ define WPA_SUPPLICANT_INSTALL_TARGET_CMDS $(WPA_SUPPLICANT_INSTALL_CLI) $(WPA_SUPPLICANT_INSTALL_PASSPHRASE) $(WPA_SUPPLICANT_INSTALL_DBUS) + $(WPA_SUPPLICANT_INSTALL_WPA_CLIENT_SO) endef define WPA_SUPPLICANT_INSTALL_INIT_SYSTEMD diff --git a/package/wvdial/Config.in b/package/wvdial/Config.in index 5d415b1c798..d5458700f2c 100644 --- a/package/wvdial/Config.in +++ b/package/wvdial/Config.in @@ -3,12 +3,13 @@ config BR2_PACKAGE_WVDIAL depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_MMU # wvstreams depends on !BR2_STATIC_LIBS # wvstreams + depends on !BR2_TOOLCHAIN_USES_MUSL # wvstreams select BR2_PACKAGE_WVSTREAMS help wvdial is an intelligent Point-to-Point Protocol dialer http://wvdial.googlecode.com/ -comment "wvdial needs a toolchain w/ C++, dynamic library" +comment "wvdial needs a (e)glibc or uClibc toolchain w/ C++, dynamic library" depends on BR2_USE_MMU - depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/wvstreams/Config.in b/package/wvstreams/Config.in index 0cbe60aff6d..e2edd6d2578 100644 --- a/package/wvstreams/Config.in +++ b/package/wvstreams/Config.in @@ -3,6 +3,8 @@ config BR2_PACKAGE_WVSTREAMS depends on BR2_INSTALL_LIBSTDCPP depends on !BR2_STATIC_LIBS depends on BR2_USE_MMU # fork() + # musl not supported and no upstream activity since 2011. + depends on !BR2_TOOLCHAIN_USES_MUSL select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_ZLIB help @@ -10,6 +12,6 @@ config BR2_PACKAGE_WVSTREAMS http://wvstreams.googlecode.com/ -comment "wvstreams needs a toolchain w/ C++, dynamic library" +comment "wvstreams needs a (e)glibc or uClibc toolchain w/ C++, dynamic library" depends on BR2_USE_MMU - depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL diff --git a/package/x11r7/Config.in b/package/x11r7/Config.in index 859e8956c84..381157f91fc 100644 --- a/package/x11r7/Config.in +++ b/package/x11r7/Config.in @@ -162,6 +162,7 @@ if BR2_PACKAGE_XORG7 source package/x11r7/xdriver_xf86-video-cirrus/Config.in source package/x11r7/xdriver_xf86-video-dummy/Config.in source package/x11r7/xdriver_xf86-video-fbdev/Config.in + source package/x11r7/xdriver_xf86-video-fbturbo/Config.in source package/x11r7/xdriver_xf86-video-geode/Config.in source package/x11r7/xdriver_xf86-video-glide/Config.in source package/x11r7/xdriver_xf86-video-glint/Config.in @@ -172,6 +173,7 @@ if BR2_PACKAGE_XORG7 source package/x11r7/xdriver_xf86-video-mach64/Config.in source package/x11r7/xdriver_xf86-video-mga/Config.in source package/x11r7/xdriver_xf86-video-neomagic/Config.in + source package/x11r7/xdriver_xf86-video-nouveau/Config.in source package/x11r7/xdriver_xf86-video-nv/Config.in source package/x11r7/xdriver_xf86-video-openchrome/Config.in source package/x11r7/xdriver_xf86-video-qxl/Config.in @@ -263,7 +265,6 @@ if BR2_PACKAGE_XORG7 endmenu menu "X11R7 Utilities" source package/x11r7/xutil_makedepend/Config.in - source package/x11r7/xutil_util-macros/Config.in source package/x11r7/mcookie/Config.in endmenu menu "X11R7 Other data" diff --git a/package/x11r7/libepoxy/Config.in b/package/x11r7/libepoxy/Config.in index c4f5794d23d..5628bf79da5 100644 --- a/package/x11r7/libepoxy/Config.in +++ b/package/x11r7/libepoxy/Config.in @@ -1,7 +1,13 @@ config BR2_PACKAGE_LIBEPOXY bool "epoxy" - depends on BR2_PACKAGE_MESA3D + select BR2_PACKAGE_XLIB_LIBX11 + select BR2_PACKAGE_XUTIL_UTIL_MACROS + depends on BR2_PACKAGE_HAS_LIBEGL help - Epoxy is a library for handling OpenGL function pointer management for you. + Epoxy is a library for handling OpenGL function pointer + management for you. https://github.com/anholt/libepoxy + +comment "epoxy needs an OpenGL EGL backend" + depends on !BR2_PACKAGE_HAS_LIBEGL diff --git a/package/x11r7/libepoxy/libepoxy.mk b/package/x11r7/libepoxy/libepoxy.mk index d908893210f..12ddd030f07 100644 --- a/package/x11r7/libepoxy/libepoxy.mk +++ b/package/x11r7/libepoxy/libepoxy.mk @@ -4,11 +4,12 @@ # ################################################################################ -LIBEPOXY_VERSION = v1.2 +LIBEPOXY_VERSION = v1.3.1 LIBEPOXY_SITE = $(call github,anholt,libepoxy,$(LIBEPOXY_VERSION)) LIBEPOXY_INSTALL_STAGING = YES LIBEPOXY_AUTORECONF = YES -LIBEPOXY_DEPENDENCIES = mesa3d +LIBEPOXY_DEPENDENCIES = xlib_libX11 xutil_util-macros libegl \ + $(if $(BR2_PACKAGE_HAS_LIBGL),libgl) host-pkgconf LIBEPOXY_LICENSE = MIT LIBEPOXY_LICENSE_FILES = COPYING diff --git a/package/x11r7/libxcb/libxcb.hash b/package/x11r7/libxcb/libxcb.hash index e938a5aa207..62060ee0dca 100644 --- a/package/x11r7/libxcb/libxcb.hash +++ b/package/x11r7/libxcb/libxcb.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/pipermail/xorg/2014-August/056793.html -sha256 03635d70045b9ede90778e67516135828a57de87ac508f987024f43c03620ff7 libxcb-1.11.tar.bz2 +# From http://lists.x.org/archives/xorg-announce/2015-September/002633.html +sha256 b720fd6c7d200e5371affdb3f049cc8f88cff9aed942ff1b824d95eedbf69d30 libxcb-1.11.1.tar.bz2 diff --git a/package/x11r7/libxcb/libxcb.mk b/package/x11r7/libxcb/libxcb.mk index f4a3aa96ddd..c46ee26498b 100644 --- a/package/x11r7/libxcb/libxcb.mk +++ b/package/x11r7/libxcb/libxcb.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBXCB_VERSION = 1.11 +LIBXCB_VERSION = 1.11.1 LIBXCB_SOURCE = libxcb-$(LIBXCB_VERSION).tar.bz2 LIBXCB_SITE = http://xcb.freedesktop.org/dist LIBXCB_LICENSE = MIT diff --git a/package/x11r7/xapp_sessreg/0001-Pass-P-to-the-preprocessor-when-generating-filenames.patch b/package/x11r7/xapp_sessreg/0001-Pass-P-to-the-preprocessor-when-generating-filenames.patch new file mode 100644 index 00000000000..5c3e91a4916 --- /dev/null +++ b/package/x11r7/xapp_sessreg/0001-Pass-P-to-the-preprocessor-when-generating-filenames.patch @@ -0,0 +1,32 @@ +From 93f5d5abf6b214a4b36e00cd09174d24b2ed0a6d Mon Sep 17 00:00:00 2001 +From: Stefan Dirsch +Date: Wed, 9 Sep 2015 23:44:06 +0200 +Subject: [PATCH] Pass -P to the preprocessor when generating filenames for the + manpage. + +Fixes build with GCC 5. Patch by Richard Biener + +Tested-by: Matt Turner +Signed-off-by: Matt Turner +[Thomas: backport from upstream commit 93f5d5abf6b214a4b36e00cd09174d24b2ed0a6d] +Signed-off-by: Thomas Petazzoni +--- + man/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/man/Makefile.am b/man/Makefile.am +index 665ace5..2e5f146 100644 +--- a/man/Makefile.am ++++ b/man/Makefile.am +@@ -9,7 +9,7 @@ SUFFIXES = .$(APP_MAN_SUFFIX) .man + + AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) + filenames.sed: filenames.sed.c +- $(AM_V_GEN)$(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_V_GEN)$(CPP) -P $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(srcdir)/filenames.sed.c | \ + $(SED) -n -e '/s|__/ p' -e '/^\/__/ p' > $@ + +-- +2.6.3 + diff --git a/package/x11r7/xapp_xbacklight/Config.in b/package/x11r7/xapp_xbacklight/Config.in index 97562357354..5764056d340 100644 --- a/package/x11r7/xapp_xbacklight/Config.in +++ b/package/x11r7/xapp_xbacklight/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_XAPP_XBACKLIGHT bool "xbacklight" + select BR2_PACKAGE_XCB_UTIL select BR2_PACKAGE_XLIB_LIBX11 select BR2_PACKAGE_XLIB_LIBXRANDR select BR2_PACKAGE_XLIB_LIBXRENDER diff --git a/package/x11r7/xapp_xcompmgr/Config.in b/package/x11r7/xapp_xcompmgr/Config.in index a2e1db586ed..b46014db980 100644 --- a/package/x11r7/xapp_xcompmgr/Config.in +++ b/package/x11r7/xapp_xcompmgr/Config.in @@ -1,10 +1,10 @@ config BR2_PACKAGE_XAPP_XCOMPMGR bool "xcompmgr" select BR2_PACKAGE_XLIB_LIBXCOMPOSITE - select BR2_PACKAGE_XLIB_LIBXFIXES + select BR2_PACKAGE_XLIB_LIBXDAMAGE select BR2_PACKAGE_XLIB_LIBXEXT select BR2_PACKAGE_XLIB_LIBXFIXES - select BR2_PACKAGE_XLIB_LIBXDAMAGE + select BR2_PACKAGE_XLIB_LIBXRENDER help xcompmgr is a sample compositing manager that enables basic eye-candy effects. diff --git a/package/x11r7/xapp_xdm/S99xdm b/package/x11r7/xapp_xdm/S99xdm index 4dd1cd88826..a2c0a1de064 100644 --- a/package/x11r7/xapp_xdm/S99xdm +++ b/package/x11r7/xapp_xdm/S99xdm @@ -4,7 +4,7 @@ XDM_BIN=/usr/bin/xdm case "$1" in start) - echo -n "Starting XDM: " + printf "Starting XDM: " $XDM_BIN echo "done" ;; diff --git a/package/x11r7/xapp_xf86dga/xapp_xf86dga.mk b/package/x11r7/xapp_xf86dga/xapp_xf86dga.mk index a2e08dae3f1..fe8e4278563 100644 --- a/package/x11r7/xapp_xf86dga/xapp_xf86dga.mk +++ b/package/x11r7/xapp_xf86dga/xapp_xf86dga.mk @@ -12,9 +12,6 @@ XAPP_XF86DGA_LICENSE_FILES = COPYING XAPP_XF86DGA_DEPENDENCIES = \ host-pkgconf \ xlib_libX11 \ - xlib_libXxf86dga \ - xlib_libXt \ - xlib_libXaw \ - xlib_libXmu + xlib_libXxf86dga $(eval $(autotools-package)) diff --git a/package/x11r7/xapp_xinput/xapp_xinput.hash b/package/x11r7/xapp_xinput/xapp_xinput.hash index a8f6b702d8e..724b2e26374 100644 --- a/package/x11r7/xapp_xinput/xapp_xinput.hash +++ b/package/x11r7/xapp_xinput/xapp_xinput.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2013-September/002321.html -sha256 b7632d0f228a8a6be93b09857ea413940fcf44091e60f4a0fe9f5fd82efd871f xinput-1.6.1.tar.bz2 +# From http://lists.x.org/archives/xorg-announce/2015-October/002643.html +sha256 3694d29b4180952fbf13c6d4e59541310cbb11eef5bf888ff3d8b7f4e3aee5c4 xinput-1.6.2.tar.bz2 diff --git a/package/x11r7/xapp_xinput/xapp_xinput.mk b/package/x11r7/xapp_xinput/xapp_xinput.mk index 099408b2524..aaa7a80818e 100644 --- a/package/x11r7/xapp_xinput/xapp_xinput.mk +++ b/package/x11r7/xapp_xinput/xapp_xinput.mk @@ -4,7 +4,7 @@ # ################################################################################ -XAPP_XINPUT_VERSION = 1.6.1 +XAPP_XINPUT_VERSION = 1.6.2 XAPP_XINPUT_SOURCE = xinput-$(XAPP_XINPUT_VERSION).tar.bz2 XAPP_XINPUT_SITE = http://xorg.freedesktop.org/releases/individual/app XAPP_XINPUT_LICENSE = MIT diff --git a/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.hash b/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.hash index b49d5a214bc..bc85caa6edc 100644 --- a/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.hash +++ b/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2014-November/002497.html -sha256 cfac973778fabf5216121ad60b7af8ab74ce7513af0f9260cf8c5309e1622b2a xkbcomp-1.3.0.tar.bz2 +# From http://lists.x.org/archives/xorg-announce/2015-November/002653.html +sha256 0304dc9e0d4ac10831a9ef5d5419722375ddbc3eac3ff4413094d57bc1f1923d xkbcomp-1.3.1.tar.bz2 diff --git a/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk b/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk index 0a727426d3e..fea7fa8e8c4 100644 --- a/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk +++ b/package/x11r7/xapp_xkbcomp/xapp_xkbcomp.mk @@ -4,7 +4,7 @@ # ################################################################################ -XAPP_XKBCOMP_VERSION = 1.3.0 +XAPP_XKBCOMP_VERSION = 1.3.1 XAPP_XKBCOMP_SOURCE = xkbcomp-$(XAPP_XKBCOMP_VERSION).tar.bz2 XAPP_XKBCOMP_SITE = http://xorg.freedesktop.org/releases/individual/app XAPP_XKBCOMP_LICENSE = MIT diff --git a/package/x11r7/xdriver_xf86-input-evdev/Config.in b/package/x11r7/xdriver_xf86-input-evdev/Config.in index f44e79f8b5d..70e950dc748 100644 --- a/package/x11r7/xdriver_xf86-input-evdev/Config.in +++ b/package/x11r7/xdriver_xf86-input-evdev/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_XDRIVER_XF86_INPUT_EVDEV bool "xf86-input-evdev" depends on BR2_PACKAGE_HAS_UDEV # libudev is configure dependency select BR2_PACKAGE_LIBEVDEV + select BR2_PACKAGE_MTDEV select BR2_PACKAGE_XPROTO_INPUTPROTO select BR2_PACKAGE_XPROTO_RANDRPROTO select BR2_PACKAGE_XPROTO_XPROTO diff --git a/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash index 330ac30364c..33149348bfd 100644 --- a/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash +++ b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-March/002557.html -sha256 792329b531afc6928ccda94e4b51a5520d4ddf8ef9a00890a5d0d31898acefec xf86-input-evdev-2.9.2.tar.bz2 +# From http://lists.x.org/archives/xorg-announce/2016-January/002669.html +sha256 af9c2b47f5b272ae56b45da6bd84610fc9a3d80a4b32c8215842a39d862de017 xf86-input-evdev-2.10.1.tar.bz2 diff --git a/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.mk b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.mk index 6019412d6aa..4a2ed368f20 100644 --- a/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.mk +++ b/package/x11r7/xdriver_xf86-input-evdev/xdriver_xf86-input-evdev.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_INPUT_EVDEV_VERSION = 2.9.2 +XDRIVER_XF86_INPUT_EVDEV_VERSION = 2.10.1 XDRIVER_XF86_INPUT_EVDEV_SOURCE = xf86-input-evdev-$(XDRIVER_XF86_INPUT_EVDEV_VERSION).tar.bz2 XDRIVER_XF86_INPUT_EVDEV_SITE = http://xorg.freedesktop.org/releases/individual/driver XDRIVER_XF86_INPUT_EVDEV_LICENSE = MIT @@ -12,11 +12,11 @@ XDRIVER_XF86_INPUT_EVDEV_LICENSE_FILES = COPYING XDRIVER_XF86_INPUT_EVDEV_DEPENDENCIES = \ host-pkgconf \ libevdev \ + mtdev \ xproto_inputproto \ xserver_xorg-server \ xproto_randrproto \ xproto_xproto \ - udev \ - $(if $(BR2_PACKAGE_MTDEV),mtdev) + udev $(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash index 3936f014c35..b2925db2264 100644 --- a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash +++ b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-July/002619.html -sha256 db8f919c24a381cec1e7840f1f2117251501c0c7ae2a43941d84753154a826d6 xf86-input-libinput-0.12.0.tar.bz2 +# From http://lists.x.org/archives/xorg-announce/2015-December/002667.html +sha256 fdade531e91e79acf6dce8ac55fa4f65abe3f1358c5d3d777ae48dbc74b76f49 xf86-input-libinput-0.16.0.tar.bz2 diff --git a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk index 30973eab237..9e48886b9c9 100644 --- a/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk +++ b/package/x11r7/xdriver_xf86-input-libinput/xdriver_xf86-input-libinput.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_INPUT_LIBINPUT_VERSION = 0.12.0 +XDRIVER_XF86_INPUT_LIBINPUT_VERSION = 0.16.0 XDRIVER_XF86_INPUT_LIBINPUT_SOURCE = xf86-input-libinput-$(XDRIVER_XF86_INPUT_LIBINPUT_VERSION).tar.bz2 XDRIVER_XF86_INPUT_LIBINPUT_SITE = http://xorg.freedesktop.org/releases/individual/driver XDRIVER_XF86_INPUT_LIBINPUT_LICENSE = MIT diff --git a/package/x11r7/xdriver_xf86-input-synaptics/Config.in b/package/x11r7/xdriver_xf86-input-synaptics/Config.in index 6b5e5b6185f..ffe1a2a448f 100644 --- a/package/x11r7/xdriver_xf86-input-synaptics/Config.in +++ b/package/x11r7/xdriver_xf86-input-synaptics/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_XDRIVER_XF86_INPUT_SYNAPTICS bool "xf86-input-synaptics" + select BR2_PACKAGE_LIBEVDEV select BR2_PACKAGE_XPROTO_INPUTPROTO select BR2_PACKAGE_XPROTO_RANDRPROTO select BR2_PACKAGE_XPROTO_XPROTO diff --git a/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash index 7b7216d247e..3cb07580897 100644 --- a/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash +++ b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-March/002556.html -sha256 7b0e164ebd02a680e0c695955e783059f37edb0c2656398e0a972adc8e698c80 xf86-input-synaptics-1.8.2.tar.bz2 +# From http://lists.x.org/archives/xorg-announce/2015-November/002652.html +sha256 d39f100c74f3673778b53f17bab7690161925e25dd998a15dd8cc69b52e83f01 xf86-input-synaptics-1.8.3.tar.bz2 diff --git a/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk index f18040571f7..b6ade4c86e3 100644 --- a/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk +++ b/package/x11r7/xdriver_xf86-input-synaptics/xdriver_xf86-input-synaptics.mk @@ -4,11 +4,11 @@ # ################################################################################ -XDRIVER_XF86_INPUT_SYNAPTICS_VERSION = 1.8.2 +XDRIVER_XF86_INPUT_SYNAPTICS_VERSION = 1.8.3 XDRIVER_XF86_INPUT_SYNAPTICS_SOURCE = xf86-input-synaptics-$(XDRIVER_XF86_INPUT_SYNAPTICS_VERSION).tar.bz2 XDRIVER_XF86_INPUT_SYNAPTICS_SITE = http://xorg.freedesktop.org/releases/individual/driver XDRIVER_XF86_INPUT_SYNAPTICS_LICENSE = MIT XDRIVER_XF86_INPUT_SYNAPTICS_LICENSE_FILES = COPYING -XDRIVER_XF86_INPUT_SYNAPTICS_DEPENDENCIES = xserver_xorg-server xproto_inputproto xproto_randrproto xproto_xproto mtdev +XDRIVER_XF86_INPUT_SYNAPTICS_DEPENDENCIES = libevdev xserver_xorg-server xproto_inputproto xproto_randrproto xproto_xproto mtdev $(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.mk b/package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.mk index 53ceec8e8b2..6e9cf8b7858 100644 --- a/package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.mk +++ b/package/x11r7/xdriver_xf86-input-vmmouse/xdriver_xf86-input-vmmouse.mk @@ -11,4 +11,11 @@ XDRIVER_XF86_INPUT_VMMOUSE_LICENSE = MIT XDRIVER_XF86_INPUT_VMMOUSE_LICENSE_FILES = COPYING XDRIVER_XF86_INPUT_VMMOUSE_DEPENDENCIES = xserver_xorg-server xproto_inputproto xproto_randrproto xproto_xproto +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +XDRIVER_XF86_INPUT_VMMOUSE_CONF_OPTS += --with-libudev +XDRIVER_XF86_INPUT_VMMOUSE_DEPENDENCIES += udev +else +XDRIVER_XF86_INPUT_VMMOUSE_CONF_OPTS += --without-libudev +endif + $(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-ati/Config.in b/package/x11r7/xdriver_xf86-video-ati/Config.in index 191c20f3723..55be6034450 100644 --- a/package/x11r7/xdriver_xf86-video-ati/Config.in +++ b/package/x11r7/xdriver_xf86-video-ati/Config.in @@ -1,8 +1,10 @@ config BR2_PACKAGE_XDRIVER_XF86_VIDEO_ATI bool "xf86-video-ati" depends on BR2_PACKAGE_MESA3D - select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON - select BR2_PACKAGE_LIBDRM_RADEON if BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON + depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm -> libpthread-stubs + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_LIBDRM_RADEON + select BR2_PACKAGE_MESA3D_DRI_DRIVER_RADEON select BR2_PACKAGE_XLIB_LIBXCOMPOSITE select BR2_PACKAGE_XPROTO_FONTSPROTO select BR2_PACKAGE_XPROTO_GLPROTO diff --git a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash index ccb8665446f..57ebfe87333 100644 --- a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash +++ b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2014-October/002486.html -sha256 ec3e6f06b6cf9a40c72aafa3448aae8b034c80b37410ca9442d5cf6806e07936 xf86-video-ati-7.5.0.tar.bz2 +# From http://lists.x.org/archives/xorg-announce/2015-November/002658.html +sha256 2516d9eeb8da8bcd3a01365ed1314919777910fa904ab268af342b5693e1d34c xf86-video-ati-7.6.1.tar.bz2 diff --git a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk index cba9e76adfd..3dd3d07a249 100644 --- a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk +++ b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_ATI_VERSION = 7.5.0 +XDRIVER_XF86_VIDEO_ATI_VERSION = 7.6.1 XDRIVER_XF86_VIDEO_ATI_SOURCE = xf86-video-ati-$(XDRIVER_XF86_VIDEO_ATI_VERSION).tar.bz2 XDRIVER_XF86_VIDEO_ATI_SITE = http://xorg.freedesktop.org/releases/individual/driver XDRIVER_XF86_VIDEO_ATI_LICENSE = MIT @@ -28,4 +28,7 @@ else XDRIVER_XF86_VIDEO_ATI_CONF_OPTS = --disable-glamor endif +# xdriver_xf86-video-ati requires O_CLOEXEC +XDRIVER_XF86_VIDEO_ATI_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" + $(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-fbturbo/0001-sunxi_x_g2d-drop-unused-dri2-include.patch b/package/x11r7/xdriver_xf86-video-fbturbo/0001-sunxi_x_g2d-drop-unused-dri2-include.patch new file mode 100644 index 00000000000..8b4e817bf2e --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbturbo/0001-sunxi_x_g2d-drop-unused-dri2-include.patch @@ -0,0 +1,28 @@ +From 232c5b6924652f65ef5c047754e84b87b5fc6ac8 Mon Sep 17 00:00:00 2001 +From: Peter Korsgaard +Date: Sat, 3 Oct 2015 19:01:38 +0200 +Subject: [PATCH] sunxi_x_g2d: drop unused dri2 include + +The driver doesn't use DRI for anything. + +[Upstream-status: submitted (https://github.com/ssvb/xf86-video-fbturbo/pull/45)] +Signed-off-by: Peter Korsgaard +--- + src/sunxi_x_g2d.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/src/sunxi_x_g2d.c b/src/sunxi_x_g2d.c +index d826027..8888abe 100644 +--- a/src/sunxi_x_g2d.c ++++ b/src/sunxi_x_g2d.c +@@ -31,7 +31,6 @@ + #include "xf86_OSproc.h" + #include "xf86.h" + #include "xf86drm.h" +-#include "dri2.h" + #include "damage.h" + #include "fb.h" + #include "gcstruct.h" +-- +2.1.4 + diff --git a/package/x11r7/xdriver_xf86-video-fbturbo/Config.in b/package/x11r7/xdriver_xf86-video-fbturbo/Config.in new file mode 100644 index 00000000000..8fec5c2834c --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbturbo/Config.in @@ -0,0 +1,16 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_FBTURBO + bool "xf86-video-fbturbo" + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_PIXMAN + select BR2_PACKAGE_XPROTO_FONTSPROTO + select BR2_PACKAGE_XPROTO_RANDRPROTO + select BR2_PACKAGE_XPROTO_RENDERPROTO + select BR2_PACKAGE_XPROTO_VIDEOPROTO + select BR2_PACKAGE_XPROTO_XPROTO + select BR2_PACKAGE_XPROTO_XF86DRIPROTO + help + video driver, primarily optimized for the devices powered + by the Allwinner SoC (A10, A13, A20). It can use some of + the 2D/3D hardware acceleration features. + + https://github.com/ssvb/xf86-video-fbturbo diff --git a/package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.mk b/package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.mk new file mode 100644 index 00000000000..b2053d3e590 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-fbturbo/xdriver_xf86-video-fbturbo.mk @@ -0,0 +1,35 @@ +################################################################################ +# +# xdriver_xf86-video-fbturbo +# +################################################################################ + +XDRIVER_XF86_VIDEO_FBTURBO_VERSION = 0.4.0 +XDRIVER_XF86_VIDEO_FBTURBO_SITE = $(call github,ssvb,xf86-video-fbturbo,$(XDRIVER_XF86_VIDEO_FBTURBO_VERSION)) +XDRIVER_XF86_VIDEO_FBTURBO_LICENSE = MIT +XDRIVER_XF86_VIDEO_FBTURBO_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_FBTURBO_DEPENDENCIES = \ + xserver_xorg-server \ + libdrm \ + pixman \ + xproto_fontsproto \ + xproto_randrproto \ + xproto_renderproto \ + xproto_videoproto \ + xproto_xproto \ + xproto_xf86driproto + +ifeq ($(BR2_PACKAGE_LIBPCIACCESS),y) +XDRIVER_XF86_VIDEO_FBTURBO_DEPENDENCIES += libpciaccess +XDRIVER_XF86_VIDEO_FBTURBO_CONF_OPTS += --enable-pciaccess +else +XDRIVER_XF86_VIDEO_FBTURBO_CONF_OPTS += --disable-pciaccess +endif + +define XDRIVER_XF86_VIDEO_FBTURBO_INSTALL_CONF_FILE + $(INSTALL) -m 0644 -D $(@D)/xorg.conf $(TARGET_DIR)/etc/X11/xorg.conf +endef + +XDRIVER_XF86_VIDEO_FBTURBO_POST_INSTALL_TARGET_HOOKS += XDRIVER_XF86_VIDEO_FBTURBO_INSTALL_CONF_FILE + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.hash b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.hash new file mode 100644 index 00000000000..72608dd5755 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.hash @@ -0,0 +1,2 @@ +# locally computed +sha256 ab6a896cafba324105d26f52b7dad2c41d04d75cc9e48b66e8041a95660a04ee xserver-xorg-video-imx-viv-5.0.11.p7.1.tar.gz diff --git a/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk index f5cb94664d3..884b30ec39d 100644 --- a/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk +++ b/package/x11r7/xdriver_xf86-video-imx-viv/xdriver_xf86-video-imx-viv.mk @@ -4,12 +4,13 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_IMX_VIV_VERSION = $(FREESCALE_IMX_VERSION) +XDRIVER_XF86_VIDEO_IMX_VIV_VERSION = 5.0.11.p7.1 XDRIVER_XF86_VIDEO_IMX_VIV_SITE = $(FREESCALE_IMX_SITE) XDRIVER_XF86_VIDEO_IMX_VIV_SOURCE = xserver-xorg-video-imx-viv-$(XDRIVER_XF86_VIDEO_IMX_VIV_VERSION).tar.gz XDRIVER_XF86_VIDEO_IMX_VIV_DEPENDENCIES = imx-gpu-viv xserver_xorg-server \ xproto_xproto xproto_xf86driproto libdrm XDRIVER_XF86_VIDEO_IMX_VIV_LICENSE = GPLv2+ +XDRIVER_XF86_VIDEO_IMX_VIV_LICENSE_FILES = COPYING-GPL-2 XDRIVER_XF86_VIDEO_IMX_VIV_INSTALL_STAGING = YES XDRIVER_XF86_VIDEO_IMX_VIV_MAKE_CMD = $(TARGET_CONFIGURE_OPTS) $(MAKE1) -C $(@D)/EXA/src -f makefile.linux diff --git a/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.hash b/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.hash deleted file mode 100644 index 6c3c6ba3dc2..00000000000 --- a/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.hash +++ /dev/null @@ -1,2 +0,0 @@ -# From http://lists.x.org/archives/xorg-announce/2014-December/002508.html -sha256 00b781eea055582820a123c47b62411bdf6aabf4f03dc0568faec55faf9667c9 xf86-video-intel-2.99.917.tar.bz2 diff --git a/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk b/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk index 707cedd3d01..bf4f7a64ba2 100644 --- a/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk +++ b/package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.mk @@ -4,11 +4,11 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_INTEL_VERSION = 2.99.917 -XDRIVER_XF86_VIDEO_INTEL_SOURCE = xf86-video-intel-$(XDRIVER_XF86_VIDEO_INTEL_VERSION).tar.bz2 -XDRIVER_XF86_VIDEO_INTEL_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_INTEL_VERSION = 82293901da23d79fd074e5255fda5c95405d52de +XDRIVER_XF86_VIDEO_INTEL_SITE = git://anongit.freedesktop.org/xorg/driver/xf86-video-intel XDRIVER_XF86_VIDEO_INTEL_LICENSE = MIT XDRIVER_XF86_VIDEO_INTEL_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_INTEL_AUTORECONF = YES # this fixes a getline-related compilation error in src/sna/kgem.c XDRIVER_XF86_VIDEO_INTEL_CONF_ENV = \ diff --git a/package/x11r7/xdriver_xf86-video-nouveau/Config.in b/package/x11r7/xdriver_xf86-video-nouveau/Config.in new file mode 100644 index 00000000000..7e756e21078 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-nouveau/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_XDRIVER_XF86_VIDEO_NOUVEAU + bool "xf86-video-nouveau" + depends on BR2_PACKAGE_MESA3D + select BR2_PACKAGE_MESA3D_DRI_DRIVER_NOUVEAU + select BR2_PACKAGE_LIBDRM + select BR2_PACKAGE_LIBDRM_NOUVEAU + select BR2_PACKAGE_XPROTO_DRI2PROTO + select BR2_PACKAGE_XPROTO_RANDRPROTO + select BR2_PACKAGE_XPROTO_RENDERPROTO + select BR2_PACKAGE_XPROTO_VIDEOPROTO + select BR2_PACKAGE_XPROTO_XEXTPROTO + help + Nouveau video driver + + http://nouveau.freedesktop.org + +comment "xf86-video-nouveau needs mesa3d" + depends on !BR2_PACKAGE_MESA3D diff --git a/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash new file mode 100644 index 00000000000..9633641cd25 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.hash @@ -0,0 +1,2 @@ +# From http://lists.x.org/archives/xorg-announce/2015-December/002662.html +sha256 0ea057ad7fc31caba2d4e46c7e418fe2b3c762b04fb8d382f53383397fd8391e xf86-video-nouveau-1.0.12.tar.bz2 diff --git a/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.mk b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.mk new file mode 100644 index 00000000000..af84e796670 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-nouveau/xdriver_xf86-video-nouveau.mk @@ -0,0 +1,25 @@ +################################################################################ +# +# xdriver_xf86-video-nouveau +# +################################################################################ + +XDRIVER_XF86_VIDEO_NOUVEAU_VERSION = 1.0.12 +XDRIVER_XF86_VIDEO_NOUVEAU_SOURCE = xf86-video-nouveau-$(XDRIVER_XF86_VIDEO_NOUVEAU_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_NOUVEAU_SITE = http://xorg.freedesktop.org/releases/individual/driver +XDRIVER_XF86_VIDEO_NOUVEAU_LICENSE = MIT +XDRIVER_XF86_VIDEO_NOUVEAU_LICENSE_FILES = COPYING +XDRIVER_XF86_VIDEO_NOUVEAU_DEPENDENCIES = \ + host-pkgconf \ + libdrm \ + xproto_dri2proto \ + xproto_randrproto \ + xproto_renderproto \ + xproto_videoproto \ + xproto_xextproto \ + xserver_xorg-server + +# xdriver_xf86-video-nouveau requires O_CLOEXEC +XDRIVER_XF86_VIDEO_NOUVEAU_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -D_GNU_SOURCE" + +$(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.mk b/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.mk index 2aa22ae6c01..f8ea403c8ce 100644 --- a/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.mk +++ b/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion.mk @@ -11,4 +11,6 @@ XDRIVER_XF86_VIDEO_SILICONMOTION_LICENSE = MIT XDRIVER_XF86_VIDEO_SILICONMOTION_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_SILICONMOTION_DEPENDENCIES = xserver_xorg-server xproto_fontsproto xproto_randrproto xproto_renderproto xproto_videoproto xproto_xextproto xproto_xproto +XDRIVER_XF86_VIDEO_SILICONMOTION_CONF_OPTS = --disable-selective-werror + $(eval $(autotools-package)) diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.hash b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.hash new file mode 100644 index 00000000000..dfc78143ef3 --- /dev/null +++ b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.hash @@ -0,0 +1,2 @@ +# From http://lists.x.org/archives/xorg-announce/2015-August/002628.html +sha256 c8f3f2577f69334dfcc4bf96477dce45161170555f3abdfa105599e61bc7d3fe xf86-video-sis-0.10.8.tar.bz2 diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.mk b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.mk index ee93526100b..b1fce837e89 100644 --- a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.mk +++ b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis.mk @@ -4,8 +4,9 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_SIS_VERSION = 0f50f8c3db2b9f1c9d4ecab8ad278e9db6418a92 -XDRIVER_XF86_VIDEO_SIS_SITE = git://anongit.freedesktop.org/xorg/driver/xf86-video-sis +XDRIVER_XF86_VIDEO_SIS_VERSION = 0.10.8 +XDRIVER_XF86_VIDEO_SIS_SOURCE = xf86-video-sis-$(XDRIVER_XF86_VIDEO_SIS_VERSION).tar.bz2 +XDRIVER_XF86_VIDEO_SIS_SITE = http://xorg.freedesktop.org/releases/individual/driver XDRIVER_XF86_VIDEO_SIS_LICENSE = MIT XDRIVER_XF86_VIDEO_SIS_LICENSE_FILES = COPYING XDRIVER_XF86_VIDEO_SIS_AUTORECONF = YES diff --git a/package/x11r7/xfont_encodings/Config.in b/package/x11r7/xfont_encodings/Config.in index af40da1f65a..d771ffb9cb3 100644 --- a/package/x11r7/xfont_encodings/Config.in +++ b/package/x11r7/xfont_encodings/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_ENCODINGS bool "encodings" + select BR2_PACKAGE_XUTIL_UTIL_MACROS help No description available diff --git a/package/x11r7/xfont_font-adobe-100dpi/Config.in b/package/x11r7/xfont_font-adobe-100dpi/Config.in index aaac6393aa1..766c06e74c0 100644 --- a/package/x11r7/xfont_font-adobe-100dpi/Config.in +++ b/package/x11r7/xfont_font-adobe-100dpi/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_ADOBE_100DPI bool "font-adobe-100dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-adobe-75dpi/Config.in b/package/x11r7/xfont_font-adobe-75dpi/Config.in index f1c0a416a17..1d79f416ccf 100644 --- a/package/x11r7/xfont_font-adobe-75dpi/Config.in +++ b/package/x11r7/xfont_font-adobe-75dpi/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_ADOBE_75DPI bool "font-adobe-75dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-adobe-utopia-100dpi/Config.in b/package/x11r7/xfont_font-adobe-utopia-100dpi/Config.in index 02f2aeb41dd..a31ee5dab66 100644 --- a/package/x11r7/xfont_font-adobe-utopia-100dpi/Config.in +++ b/package/x11r7/xfont_font-adobe-utopia-100dpi/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_ADOBE_UTOPIA_100DPI bool "font-adobe-utopia-100dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-adobe-utopia-75dpi/Config.in b/package/x11r7/xfont_font-adobe-utopia-75dpi/Config.in index 4a6e29ca20c..22797230a6e 100644 --- a/package/x11r7/xfont_font-adobe-utopia-75dpi/Config.in +++ b/package/x11r7/xfont_font-adobe-utopia-75dpi/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_ADOBE_UTOPIA_75DPI bool "font-adobe-utopia-75dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-adobe-utopia-type1/Config.in b/package/x11r7/xfont_font-adobe-utopia-type1/Config.in index d1efb702d4c..60b631ede76 100644 --- a/package/x11r7/xfont_font-adobe-utopia-type1/Config.in +++ b/package/x11r7/xfont_font-adobe-utopia-type1/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_ADOBE_UTOPIA_TYPE1 bool "font-adobe-utopia-type1" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-alias/Config.in b/package/x11r7/xfont_font-alias/Config.in index b6551607f7e..b30e2221da2 100644 --- a/package/x11r7/xfont_font-alias/Config.in +++ b/package/x11r7/xfont_font-alias/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_ALIAS bool "font-alias" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-arabic-misc/Config.in b/package/x11r7/xfont_font-arabic-misc/Config.in index acbdf7c8b43..1ec50901a0d 100644 --- a/package/x11r7/xfont_font-arabic-misc/Config.in +++ b/package/x11r7/xfont_font-arabic-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_ARABIC_MISC bool "font-arabic-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-bh-100dpi/Config.in b/package/x11r7/xfont_font-bh-100dpi/Config.in index dc405a2d2b5..3bfb0b8fcd5 100644 --- a/package/x11r7/xfont_font-bh-100dpi/Config.in +++ b/package/x11r7/xfont_font-bh-100dpi/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_BH_100DPI bool "font-bh-100dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-bh-75dpi/Config.in b/package/x11r7/xfont_font-bh-75dpi/Config.in index 6cd334e482c..0fe93bb65eb 100644 --- a/package/x11r7/xfont_font-bh-75dpi/Config.in +++ b/package/x11r7/xfont_font-bh-75dpi/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_BH_75DPI bool "font-bh-75dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/Config.in b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/Config.in index 0e082d50296..0005cc11bdb 100644 --- a/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/Config.in +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-100dpi/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_BH_LUCIDATYPEWRITER_100DPI bool "font-bh-lucidatypewriter-100dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/Config.in b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/Config.in index 126fb857f46..60dfb952e80 100644 --- a/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/Config.in +++ b/package/x11r7/xfont_font-bh-lucidatypewriter-75dpi/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_BH_LUCIDATYPEWRITER_75DPI bool "font-bh-lucidatypewriter-75dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-bh-ttf/Config.in b/package/x11r7/xfont_font-bh-ttf/Config.in index 2590798c821..d747989bf0d 100644 --- a/package/x11r7/xfont_font-bh-ttf/Config.in +++ b/package/x11r7/xfont_font-bh-ttf/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_BH_TTF bool "font-bh-ttf" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-bh-type1/Config.in b/package/x11r7/xfont_font-bh-type1/Config.in index 047268c29f0..0a3ab18643e 100644 --- a/package/x11r7/xfont_font-bh-type1/Config.in +++ b/package/x11r7/xfont_font-bh-type1/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_BH_TYPE1 bool "font-bh-type1" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-bitstream-100dpi/Config.in b/package/x11r7/xfont_font-bitstream-100dpi/Config.in index 81393c5e9aa..5363fae3656 100644 --- a/package/x11r7/xfont_font-bitstream-100dpi/Config.in +++ b/package/x11r7/xfont_font-bitstream-100dpi/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_BITSTREAM_100DPI bool "font-bitstream-100dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-bitstream-75dpi/Config.in b/package/x11r7/xfont_font-bitstream-75dpi/Config.in index bada4756340..34a4a19ef6d 100644 --- a/package/x11r7/xfont_font-bitstream-75dpi/Config.in +++ b/package/x11r7/xfont_font-bitstream-75dpi/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_BITSTREAM_75DPI bool "font-bitstream-75dpi" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-bitstream-type1/Config.in b/package/x11r7/xfont_font-bitstream-type1/Config.in index d482a6d11eb..c8cbc90840d 100644 --- a/package/x11r7/xfont_font-bitstream-type1/Config.in +++ b/package/x11r7/xfont_font-bitstream-type1/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_BITSTREAM_TYPE1 bool "font-bitstream-type1" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-cronyx-cyrillic/Config.in b/package/x11r7/xfont_font-cronyx-cyrillic/Config.in index a0085f5ecb5..e92ab836c8a 100644 --- a/package/x11r7/xfont_font-cronyx-cyrillic/Config.in +++ b/package/x11r7/xfont_font-cronyx-cyrillic/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_CRONYX_CYRILLIC bool "font-cronyx-cyrillic" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-cursor-misc/Config.in b/package/x11r7/xfont_font-cursor-misc/Config.in index 03ed530cc28..0e10da6a537 100644 --- a/package/x11r7/xfont_font-cursor-misc/Config.in +++ b/package/x11r7/xfont_font-cursor-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_CURSOR_MISC bool "font-cursor-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-daewoo-misc/Config.in b/package/x11r7/xfont_font-daewoo-misc/Config.in index 9e45341405d..cffe81deb56 100644 --- a/package/x11r7/xfont_font-daewoo-misc/Config.in +++ b/package/x11r7/xfont_font-daewoo-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_DAEWOO_MISC bool "font-daewoo-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-dec-misc/Config.in b/package/x11r7/xfont_font-dec-misc/Config.in index 326ea9b8ff4..a926d9f9c76 100644 --- a/package/x11r7/xfont_font-dec-misc/Config.in +++ b/package/x11r7/xfont_font-dec-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_DEC_MISC bool "font-dec-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-ibm-type1/Config.in b/package/x11r7/xfont_font-ibm-type1/Config.in index 92783af57be..d4ac1ae4706 100644 --- a/package/x11r7/xfont_font-ibm-type1/Config.in +++ b/package/x11r7/xfont_font-ibm-type1/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_IBM_TYPE1 bool "font-ibm-type1" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-isas-misc/Config.in b/package/x11r7/xfont_font-isas-misc/Config.in index 2e77f66ec47..4dddaf7507f 100644 --- a/package/x11r7/xfont_font-isas-misc/Config.in +++ b/package/x11r7/xfont_font-isas-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_ISAS_MISC bool "font-isas-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-jis-misc/Config.in b/package/x11r7/xfont_font-jis-misc/Config.in index 6a59cce33f1..1874ad8204d 100644 --- a/package/x11r7/xfont_font-jis-misc/Config.in +++ b/package/x11r7/xfont_font-jis-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_JIS_MISC bool "font-jis-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-micro-misc/Config.in b/package/x11r7/xfont_font-micro-misc/Config.in index 1420cbda2a4..2062e16e590 100644 --- a/package/x11r7/xfont_font-micro-misc/Config.in +++ b/package/x11r7/xfont_font-micro-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_MICRO_MISC bool "font-micro-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-misc-cyrillic/Config.in b/package/x11r7/xfont_font-misc-cyrillic/Config.in index e793d708937..58702c14845 100644 --- a/package/x11r7/xfont_font-misc-cyrillic/Config.in +++ b/package/x11r7/xfont_font-misc-cyrillic/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_MISC_CYRILLIC bool "font-misc-cyrillic" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-misc-ethiopic/Config.in b/package/x11r7/xfont_font-misc-ethiopic/Config.in index aa3b8343369..af62ddc3852 100644 --- a/package/x11r7/xfont_font-misc-ethiopic/Config.in +++ b/package/x11r7/xfont_font-misc-ethiopic/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_MISC_ETHIOPIC bool "font-misc-ethiopic" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-misc-meltho/Config.in b/package/x11r7/xfont_font-misc-meltho/Config.in index dcc6c84933b..dd2d87d9ea0 100644 --- a/package/x11r7/xfont_font-misc-meltho/Config.in +++ b/package/x11r7/xfont_font-misc-meltho/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_MISC_MELTHO bool "font-misc-meltho" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-misc-misc/Config.in b/package/x11r7/xfont_font-misc-misc/Config.in index b3e4fc1bca4..fc379a6ed23 100644 --- a/package/x11r7/xfont_font-misc-misc/Config.in +++ b/package/x11r7/xfont_font-misc-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_MISC_MISC bool "font-misc-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-mutt-misc/Config.in b/package/x11r7/xfont_font-mutt-misc/Config.in index e27ea74794a..563dc9f2d45 100644 --- a/package/x11r7/xfont_font-mutt-misc/Config.in +++ b/package/x11r7/xfont_font-mutt-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_MUTT_MISC bool "font-mutt-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-schumacher-misc/Config.in b/package/x11r7/xfont_font-schumacher-misc/Config.in index d37babc9263..e30940a6d5f 100644 --- a/package/x11r7/xfont_font-schumacher-misc/Config.in +++ b/package/x11r7/xfont_font-schumacher-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_SCHUMACHER_MISC bool "font-schumacher-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-screen-cyrillic/Config.in b/package/x11r7/xfont_font-screen-cyrillic/Config.in index a1f02d07ba1..67f4ae6cbed 100644 --- a/package/x11r7/xfont_font-screen-cyrillic/Config.in +++ b/package/x11r7/xfont_font-screen-cyrillic/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_SCREEN_CYRILLIC bool "font-screen-cyrillic" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-sony-misc/Config.in b/package/x11r7/xfont_font-sony-misc/Config.in index a4ce4abc32c..df558c4311d 100644 --- a/package/x11r7/xfont_font-sony-misc/Config.in +++ b/package/x11r7/xfont_font-sony-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_SONY_MISC bool "font-sony-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-sun-misc/Config.in b/package/x11r7/xfont_font-sun-misc/Config.in index 07603a1a154..accc764a6b0 100644 --- a/package/x11r7/xfont_font-sun-misc/Config.in +++ b/package/x11r7/xfont_font-sun-misc/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_SUN_MISC bool "font-sun-misc" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-winitzki-cyrillic/Config.in b/package/x11r7/xfont_font-winitzki-cyrillic/Config.in index c804441b176..ccfb0802918 100644 --- a/package/x11r7/xfont_font-winitzki-cyrillic/Config.in +++ b/package/x11r7/xfont_font-winitzki-cyrillic/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_WINITZKI_CYRILLIC bool "font-winitzki-cyrillic" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xfont_font-xfree86-type1/Config.in b/package/x11r7/xfont_font-xfree86-type1/Config.in index b7d05875dfa..1a897b2443c 100644 --- a/package/x11r7/xfont_font-xfree86-type1/Config.in +++ b/package/x11r7/xfont_font-xfree86-type1/Config.in @@ -1,4 +1,5 @@ config BR2_PACKAGE_XFONT_FONT_XFREE86_TYPE1 bool "font-xfree86-type1" + select BR2_PACKAGE_XFONT_FONT_UTIL help No description available diff --git a/package/x11r7/xkeyboard-config/xkeyboard-config.hash b/package/x11r7/xkeyboard-config/xkeyboard-config.hash index c9bdca2987b..fad76ed52bf 100644 --- a/package/x11r7/xkeyboard-config/xkeyboard-config.hash +++ b/package/x11r7/xkeyboard-config/xkeyboard-config.hash @@ -1,2 +1,2 @@ -# From http://lists.x.org/archives/xorg-announce/2015-May/002609.html -sha256 0e443cf7ca2f0b40846472c029647a05933fc705d611e1478c4db8a48a6f38bf xkeyboard-config-2.15.tar.bz2 +# From http://lists.x.org/archives/xorg-announce/2016-January/002671.html +sha256 dec6be44bd31775cdc1ab95bfd75d5f2c0055613eeca8b4e9c6480b183430701 xkeyboard-config-2.17.tar.bz2 diff --git a/package/x11r7/xkeyboard-config/xkeyboard-config.mk b/package/x11r7/xkeyboard-config/xkeyboard-config.mk index f88686b5d07..352c55d974b 100644 --- a/package/x11r7/xkeyboard-config/xkeyboard-config.mk +++ b/package/x11r7/xkeyboard-config/xkeyboard-config.mk @@ -4,7 +4,7 @@ # ################################################################################ -XKEYBOARD_CONFIG_VERSION = 2.15 +XKEYBOARD_CONFIG_VERSION = 2.17 XKEYBOARD_CONFIG_SOURCE = xkeyboard-config-$(XKEYBOARD_CONFIG_VERSION).tar.bz2 XKEYBOARD_CONFIG_SITE = http://www.x.org/releases/individual/data/xkeyboard-config XKEYBOARD_CONFIG_LICENSE = MIT diff --git a/package/x11r7/xlib_libXi/xlib_libXi.hash b/package/x11r7/xlib_libXi/xlib_libXi.hash index 75497f7b810..28eb77e115d 100644 --- a/package/x11r7/xlib_libXi/xlib_libXi.hash +++ b/package/x11r7/xlib_libXi/xlib_libXi.hash @@ -1,2 +1,2 @@ -# From http://lists.freedesktop.org/pipermail/xorg/2014-July/056751.html -sha256 2cffc2686618dc1803725636cd92b36342c512dc60a7a35cba34bf7192a42244 libXi-1.7.4.tar.bz2 +# From http://lists.x.org/archives/xorg-announce/2015-December/002664.html +sha256 1f32a552cec0f056c0260bdb32e853cec0673d2f40646ce932ad5a9f0205b7ac libXi-1.7.6.tar.bz2 diff --git a/package/x11r7/xlib_libXi/xlib_libXi.mk b/package/x11r7/xlib_libXi/xlib_libXi.mk index faa791beac3..54c9af4576a 100644 --- a/package/x11r7/xlib_libXi/xlib_libXi.mk +++ b/package/x11r7/xlib_libXi/xlib_libXi.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBXI_VERSION = 1.7.4 +XLIB_LIBXI_VERSION = 1.7.6 XLIB_LIBXI_SOURCE = libXi-$(XLIB_LIBXI_VERSION).tar.bz2 XLIB_LIBXI_SITE = http://xorg.freedesktop.org/releases/individual/lib XLIB_LIBXI_LICENSE = MIT diff --git a/package/x11r7/xlib_libfontenc/Config.in b/package/x11r7/xlib_libfontenc/Config.in index d2a30234fc4..d25e96a5a51 100644 --- a/package/x11r7/xlib_libfontenc/Config.in +++ b/package/x11r7/xlib_libfontenc/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_XLIB_LIBFONTENC bool "libfontenc" select BR2_PACKAGE_XPROTO_XPROTO + select BR2_PACKAGE_ZLIB help X.Org fontenc library diff --git a/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch b/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch new file mode 100644 index 00000000000..4ef95efc3e3 --- /dev/null +++ b/package/x11r7/xserver_xorg-server/0001-modesettings-needs-dri2.patch @@ -0,0 +1,19 @@ +Kernel modesettings support also depends on dri2, see +http://cgit.freedesktop.org/xorg/xserver/tree/hw/xfree86/drivers/modesetting/Makefile.am#n46 + +Patch sent upstream: https://bugs.freedesktop.org/show_bug.cgi?id=91584 + +Signed-off-by: Bernd Kuhls + +diff -uNr xorg-server-1.17.2.org/configure.ac xorg-server-1.17.2/configure.ac +--- xorg-server-1.17.2.org/configure.ac 2015-06-16 17:42:40.000000000 +0200 ++++ xorg-server-1.17.2/configure.ac 2015-08-08 10:44:59.702382624 +0200 +@@ -2036,7 +2036,7 @@ + XORG_SYS_LIBS="$XORG_SYS_LIBS $XORG_MODULES_LIBS" + fi + +- if test "x$DRM" = xyes; then ++ if test "x$DRM" = xyes -a "x$DRI2" = xyes; then + dnl 2.4.46 is required for cursor hotspot support. + PKG_CHECK_EXISTS(libdrm >= 2.4.46) + XORG_DRIVER_MODESETTING=yes diff --git a/package/x11r7/xserver_xorg-server/Config.in b/package/x11r7/xserver_xorg-server/Config.in index f0ec598ff14..ac1369e0f41 100644 --- a/package/x11r7/xserver_xorg-server/Config.in +++ b/package/x11r7/xserver_xorg-server/Config.in @@ -1,10 +1,11 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER bool "xorg-server" - select BR2_PACKAGE_LIBPCIACCESS if BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR + depends on BR2_USE_MMU # fork() # We need a SHA1 implementation. If either openssl or # libgcrypt are already part of the build, we'll use one of # them, otherwise, use the small libsha1 library. select BR2_PACKAGE_LIBSHA1 if (!BR2_PACKAGE_OPENSSL && !BR2_PACKAGE_LIBGCRYPT) + select BR2_PACKAGE_MCOOKIE select BR2_PACKAGE_PIXMAN select BR2_PACKAGE_XFONT_FONT_ALIAS if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS select BR2_PACKAGE_XFONT_FONT_MISC_MISC if !BR2_PACKAGE_XSERVER_XORG_SERVER_BUILTIN_FONTS @@ -47,7 +48,6 @@ config BR2_PACKAGE_XSERVER_XORG_SERVER select BR2_PACKAGE_XPROTO_XPROTO select BR2_PACKAGE_XUTIL_UTIL_MACROS select BR2_PACKAGE_XKEYBOARD_CONFIG - depends on BR2_USE_MMU # fork() help X.Org X server @@ -58,20 +58,20 @@ if BR2_PACKAGE_XSERVER_XORG_SERVER config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14 bool -config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19 +config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_20 bool config BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI int default 14 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_14 - default 19 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19 + default 20 if BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_20 choice bool "X Window System server version" -config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17 - bool "1.17.2" - select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_19 +config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_18 + bool "1.18.0" + select BR2_PACKAGE_XSERVER_XORG_SERVER_VIDEODRV_ABI_20 select BR2_PACKAGE_XPROTO_PRESENTPROTO config BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14 @@ -82,7 +82,7 @@ endchoice config BR2_PACKAGE_XSERVER_XORG_SERVER_VERSION string - default "1.17.2" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_17 + default "1.18.0" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_18 default "1.14.7" if BR2_PACKAGE_XSERVER_XORG_SERVER_V_1_14 choice @@ -93,6 +93,10 @@ choice config BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR bool "Modular X.org" depends on BR2_INSTALL_LIBSTDCPP + select BR2_PACKAGE_LIBDRM if (BR2_PACKAGE_XPROTO_XF86DRIPROTO || \ + BR2_PACKAGE_XPROTO_DRI2PROTO) + select BR2_PACKAGE_LIBPCIACCESS + select BR2_PACKAGE_XLIB_LIBXSHMFENCE if BR2_PACKAGE_XPROTO_DRI3PROTO help This variant of the X.org server is the full-blown variant, as used by desktop GNU/Linux distributions. The drivers (for diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash b/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash index 4f577871d3c..72c00c402f3 100644 --- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash +++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.hash @@ -1,6 +1,6 @@ # From http://lists.x.org/archives/xorg-announce/2014-June/002440.html sha1 7a95765e56b124758fcd7b609589e65b8870880b xorg-server-1.14.7.tar.bz2 sha256 fcf66fa6ad86227613d2d3e8ae13ded297e2a1e947e9060a083eaf80d323451f xorg-server-1.14.7.tar.bz2 -# From http://lists.x.org/archives/xorg-announce/2015-June/002614.html -sha1 56ac29a82b99bcf4c7ba2fca41a44cfa18748262 xorg-server-1.17.2.tar.bz2 -sha256 f61120612728f2c5034671d0ca3e2273438c60aba93b3dda4a8aa40e6a257993 xorg-server-1.17.2.tar.bz2 +# From http://lists.x.org/archives/xorg-announce/2015-November/002655.html +sha1 f37f9ca17d211552c775c3ce78ff03385026bf3a xorg-server-1.18.0.tar.bz2 +sha256 195670819695d9cedd8dde95fbe069be0d0f488a77797a2d409f9f702daf312e xorg-server-1.18.0.tar.bz2 diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk index 79d663c6cca..3f6cda726d7 100644 --- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk +++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk @@ -10,7 +10,10 @@ XSERVER_XORG_SERVER_SITE = http://xorg.freedesktop.org/releases/individual/xserv XSERVER_XORG_SERVER_LICENSE = MIT XSERVER_XORG_SERVER_LICENSE_FILES = COPYING XSERVER_XORG_SERVER_INSTALL_STAGING = YES +# xfont_font-util is needed only for autoreconf +XSERVER_XORG_SERVER_AUTORECONF = YES XSERVER_XORG_SERVER_DEPENDENCIES = \ + xfont_font-util \ xutil_util-macros \ xlib_libXfont \ xlib_libX11 \ @@ -83,6 +86,12 @@ endif ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR),y) XSERVER_XORG_SERVER_CONF_OPTS += --enable-xorg XSERVER_XORG_SERVER_DEPENDENCIES += libpciaccess +ifeq ($(BR2_PACKAGE_LIBDRM),y) +XSERVER_XORG_SERVER_DEPENDENCIES += libdrm +XSERVER_XORG_SERVER_CONF_OPTS += --enable-libdrm +else +XSERVER_XORG_SERVER_CONF_OPTS += --disable-libdrm +endif else XSERVER_XORG_SERVER_CONF_OPTS += --disable-xorg endif @@ -121,11 +130,12 @@ else # modular XSERVER_XORG_SERVER_CONF_OPTS += --disable-kdrive --disable-xfbdev endif -ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y) -XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-libdrm --enable-glx -XSERVER_XORG_SERVER_DEPENDENCIES += libdrm mesa3d xproto_xf86driproto +# libdrm locking macros use armv6+ instructions on arm +ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER)n$(BR2_ARM_CPU_ARMV4)$(BR2_ARM_CPU_ARMV5),yn) +XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx +XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto else -XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-libdrm --disable-glx +XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-glx endif ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX),y) @@ -143,10 +153,9 @@ endif ifeq ($(BR2_PACKAGE_HAS_UDEV),y) XSERVER_XORG_SERVER_DEPENDENCIES += udev XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev -# udev kms support depends on libdrm -ifeq ($(BR2_PACKAGE_LIBDRM),y) -XSERVER_XORG_SERVER_DEPENDENCIES += libdrm -XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev-kms --enable-libdrm +# udev kms support depends on libdrm and dri2 +ifeq ($(BR2_PACKAGE_LIBDRM)$(BR2_PACKAGE_XPROTO_DRI2PROTO),yy) +XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev-kms else XSERVER_XORG_SERVER_CONF_OPTS += --disable-config-udev-kms endif @@ -195,7 +204,7 @@ endif ifeq ($(BR2_PACKAGE_XPROTO_DRI3PROTO),y) XSERVER_XORG_SERVER_DEPENDENCIES += xlib_libxshmfence xproto_dri3proto XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri3 -ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y) +ifeq ($(BR2_PACKAGE_LIBEPOXY),y) XSERVER_XORG_SERVER_DEPENDENCIES += libepoxy XSERVER_XORG_SERVER_CONF_OPTS += --enable-glamor endif diff --git a/package/x264/x264.mk b/package/x264/x264.mk index ace7f433b7b..7e7e5979653 100644 --- a/package/x264/x264.mk +++ b/package/x264/x264.mk @@ -4,7 +4,7 @@ # ################################################################################ -X264_VERSION = c8a773ebfca148ef04f5a60d42cbd7336af0baf6 +X264_VERSION = e86f3a1993234e8f26050c243aa253651200fa6b X264_SITE = git://git.videolan.org/x264.git X264_LICENSE = GPLv2+ X264_DEPENDENCIES = host-pkgconf @@ -13,8 +13,10 @@ X264_INSTALL_STAGING = YES X264_CONF_OPTS = --disable-avs ifeq ($(BR2_i386)$(BR2_x86_64),y) +# yasm needed for assembly files X264_DEPENDENCIES += host-yasm -else ifeq ($(BR2_ARM_CPU_ARMV7A),y) +X264_CONF_ENV += AS="$(HOST_DIR)/usr/bin/yasm" +else ifeq ($(BR2_ARM_CPU_ARMV7A)$(BR2_aarch64),y) # We need to pass gcc as AS, because the ARM assembly files have to be # preprocessed X264_CONF_ENV += AS="$(TARGET_CC)" diff --git a/package/x265/Config.in b/package/x265/Config.in new file mode 100644 index 00000000000..f268e658416 --- /dev/null +++ b/package/x265/Config.in @@ -0,0 +1,26 @@ +config BR2_PACKAGE_X265 + bool "x265" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS # dlfcn + help + x265 is an open source free software and library for encoding video + using the High Efficiency Video Coding (HEVC/H.265) standard. x265 is + offered under either the GNU General Public License (GPL) 2 license or + a commercial license, similar to the x264 project. + + http://x265.org + +if BR2_PACKAGE_X265 + +config BR2_PACKAGE_X265_CLI + bool "CLI" + help + Command-line tool to encode video streams into the + H.265/HEVC compression format. + +endif + +comment "x265 needs a toolchain w/ C++, threads, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/x265/x265.hash b/package/x265/x265.hash new file mode 100644 index 00000000000..714ec2a30c0 --- /dev/null +++ b/package/x265/x265.hash @@ -0,0 +1,2 @@ +# Locally generated +sha256 760e6280c688f1ea90c492d19fc6d4084ca1c4b0ea9b2e3c736d32565c30d857 x265_1.8.tar.gz diff --git a/package/x265/x265.mk b/package/x265/x265.mk new file mode 100644 index 00000000000..45c86f11a1e --- /dev/null +++ b/package/x265/x265.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# x265 +# +################################################################################ + +X265_VERSION = 1.8 +X265_SOURCE = x265_$(X265_VERSION).tar.gz +X265_SITE = https://bitbucket.org/multicoreware/x265/downloads +X265_LICENSE = GPLv2+ +X265_LICENSE_FILES = COPYING +X265_SUBDIR = source +X265_INSTALL_STAGING = YES + +ifeq ($(BR2_i386)$(BR2_x86_64),y) +X265_DEPENDENCIES += host-yasm +endif + +ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y) +X265_CONF_OPTS += -DENABLE_SHARED=ON -DENABLE_PIC=ON +else +X265_CONF_OPTS += -DENABLE_SHARED=OFF +endif + +ifeq ($(BR2_PACKAGE_X265_CLI),y) +X265_CONF_OPTS += -DENABLE_CLI=ON +else +X265_CONF_OPTS += -DENABLE_CLI=OFF +endif + +$(eval $(cmake-package)) diff --git a/package/xdotool/Config.in b/package/xdotool/Config.in new file mode 100644 index 00000000000..4fb8a495025 --- /dev/null +++ b/package/xdotool/Config.in @@ -0,0 +1,12 @@ +config BR2_PACKAGE_XDOTOOL + bool "xdotool" + depends on BR2_PACKAGE_XORG7 + depends on BR2_USE_MMU # fork() + select BR2_PACKAGE_XLIB_LIBXTST + select BR2_PACKAGE_XLIB_LIBXINERAMA + select BR2_PACKAGE_LIBXKBCOMMON + select BR2_PACKAGE_XLIB_LIBX11 + help + Command-line X11 automation tool + + http://www.semicomplete.com/projects/xdotool diff --git a/package/xdotool/xdotool.hash b/package/xdotool/xdotool.hash new file mode 100644 index 00000000000..f8adcd5953f --- /dev/null +++ b/package/xdotool/xdotool.hash @@ -0,0 +1,2 @@ +# locally computed hash +sha256 b097ef0e3897d1a24e3f45f0faed58329742d3d9434b9b46eb97eb1040f999bf xdotool-v3.20150503.1.tar.gz diff --git a/package/xdotool/xdotool.mk b/package/xdotool/xdotool.mk new file mode 100644 index 00000000000..a799ea470fc --- /dev/null +++ b/package/xdotool/xdotool.mk @@ -0,0 +1,24 @@ +################################################################################ +# +# xdotool +# +################################################################################ + +XDOTOOL_VERSION = v3.20150503.1 +XDOTOOL_SITE = $(call github,jordansissel,xdotool,$(XDOTOOL_VERSION)) +XDOTOOL_LICENSE = BSD-3c +XDOTOOL_LICENSE_FILES = COPYRIGHT +XDOTOOL_DEPENDENCIES = xlib_libXtst xlib_libXinerama libxkbcommon xlib_libX11 + +define XDOTOOL_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) +endef + +# Avoid 'install' target to skip 'post-install' which runs ldconfig on host +define XDOTOOL_INSTALL_TARGET_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) \ + pre-install installlib installprog installheader \ + PREFIX="$(TARGET_DIR)/usr" +endef + +$(eval $(generic-package)) diff --git a/package/xerces/xerces.hash b/package/xerces/xerces.hash index 6f4c26724c8..639e6685345 100644 --- a/package/xerces/xerces.hash +++ b/package/xerces/xerces.hash @@ -1,2 +1,2 @@ -# From http://www.apache.org/dist/xerces/c/3/sources/xerces-c-3.1.2.tar.xz.sha256 -sha256 a847529ab6125f36039f54fa61f3d5043791accf7da2f43917cd2b49deb768f1 xerces-c-3.1.2.tar.xz +# From http://www.apache.org/dist/xerces/c/3/sources/xerces-c-3.1.3.tar.xz.sha256 +sha256 d35ae442db333f73c7ef41b2ce2e33bc8aba8dbacf582af765eda26415d25c94 xerces-c-3.1.3.tar.xz diff --git a/package/xerces/xerces.mk b/package/xerces/xerces.mk index cf3618378a4..b69f47c0724 100644 --- a/package/xerces/xerces.mk +++ b/package/xerces/xerces.mk @@ -4,7 +4,7 @@ # ################################################################################ -XERCES_VERSION = 3.1.2 +XERCES_VERSION = 3.1.3 XERCES_SOURCE = xerces-c-$(XERCES_VERSION).tar.xz XERCES_SITE = http://archive.apache.org/dist/xerces/c/3/sources XERCES_LICENSE = Apache-2.0 @@ -21,6 +21,13 @@ endef XERCES_POST_PATCH_HOOKS += XERCES_DISABLE_SAMPLES +ifeq ($(BR2_PACKAGE_ICU),y) +XERCES_CONF_OPTS += --with-icu=$(STAGING_DIR)/usr +XERCES_DEPENDENCIES += icu +else +XERCES_CONF_OPTS += --without-icu +endif + ifeq ($(BR2_PACKAGE_LIBICONV),y) XERCES_CONF_ENV += LIBS=-liconv XERCES_DEPENDENCIES += libiconv diff --git a/package/xfsprogs/0001-mdrestore-do-not-do-dynamic-linking-of-libtool-libra.patch b/package/xfsprogs/0001-mdrestore-do-not-do-dynamic-linking-of-libtool-libra.patch new file mode 100644 index 00000000000..3f79dbbe99a --- /dev/null +++ b/package/xfsprogs/0001-mdrestore-do-not-do-dynamic-linking-of-libtool-libra.patch @@ -0,0 +1,40 @@ +mdrestore: do not do dynamic linking of libtool libraries + +This patch has been sent upstream: + + http://oss.sgi.com/pipermail/xfs/2015-November/045136.html + +Signed-off-by: Vicente Olivert Riera + +From a406326f724006d62085a0aeae1072b4145caa9d Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Wed, 25 Nov 2015 10:50:00 +0000 +Subject: [PATCH] mdrestore: do not do dynamic linking of libtool libraries + +As explained in commit ece49daeff1a3cad765e106d678c608925c9d768, use +-static-libtool-libs instead of -static to allow fallback to the dynamic +linking for libuuid only. Otherwise the build will fail like this: + +ld: attempted static link of dynamic object `/usr/lib/libuuid.so' + +Signed-off-by: Vicente Olivert Riera +--- + mdrestore/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/mdrestore/Makefile b/mdrestore/Makefile +index 5171306..1b34a0e 100644 +--- a/mdrestore/Makefile ++++ b/mdrestore/Makefile +@@ -10,7 +10,7 @@ CFILES = xfs_mdrestore.c + + LLDLIBS = $(LIBXFS) $(LIBRT) $(LIBPTHREAD) $(LIBUUID) + LTDEPENDENCIES = $(LIBXFS) +-LLDFLAGS = -static ++LLDFLAGS = -static-libtool-libs + + default: depend $(LTCOMMAND) + +-- +2.4.10 + diff --git a/package/xfsprogs/0001-xfsprogs-replaces-static-with-static-libtool-libs.patch b/package/xfsprogs/0001-xfsprogs-replaces-static-with-static-libtool-libs.patch deleted file mode 100644 index 53bd96c0b4f..00000000000 --- a/package/xfsprogs/0001-xfsprogs-replaces-static-with-static-libtool-libs.patch +++ /dev/null @@ -1,129 +0,0 @@ -From 837e0a3bfe4b414a48c77aaf930b5e04b4e2c5e5 Mon Sep 17 00:00:00 2001 -From: Romain Naour -Date: Tue, 16 Dec 2014 22:06:26 +0100 -Subject: [PATCH 1/1] xfsprogs: replaces -static with -static-libtool-libs - -xfsprogs relies on the original behaviour of -static which was -modified by [1]. But since commit [2] the build of xfsprogs tools is -broken because they try to link statically with the static libuuid -library (util-linux), which is not built for shared only builds. - -The use of -static-libtool-libs allows to fallback to the dynamic -linking for libuuid only: - -LD_TRACE_LOADED_OBJECTS=1 xfs_copy - linux-gate.so.1 => (0xf7793000) - libuuid.so.1 => /lib/libuuid.so.1 (0x465e1000) - libpthread.so.0 => /lib/libpthread.so.0 (0x46db1000) - librt.so.1 => /lib/librt.so.1 (0x46f21000) - libc.so.6 => /lib/libc.so.6 (0x46bf1000) - /lib/ld-linux.so.2 (0x46bce000) - -[1] http://git.buildroot.net/buildroot/commit/?id=97703978ac870ce2b14ad144f8e082de82aa2c64 -[2] http://git.buildroot.net/buildroot/commit/?id=f1d3e09895b245da9d54bbaef36e5de95269034e - -Signed-off-by: Romain Naour ---- - copy/Makefile | 2 +- - db/Makefile | 2 +- - growfs/Makefile | 2 +- - io/Makefile | 2 +- - logprint/Makefile | 2 +- - mkfs/Makefile | 2 +- - repair/Makefile | 2 +- - 7 files changed, 7 insertions(+), 7 deletions(-) - -diff --git a/copy/Makefile b/copy/Makefile -index 54f6dfb..beabbd4 100644 ---- a/copy/Makefile -+++ b/copy/Makefile -@@ -11,7 +11,7 @@ HFILES = xfs_copy.h - - LLDLIBS = $(LIBXFS) $(LIBUUID) $(LIBPTHREAD) $(LIBRT) - LTDEPENDENCIES = $(LIBXFS) --LLDFLAGS = -static -+LLDFLAGS = -static-libtool-libs - - default: depend $(LTCOMMAND) - -diff --git a/db/Makefile b/db/Makefile -index 5c7d054..b4c49c6 100644 ---- a/db/Makefile -+++ b/db/Makefile -@@ -18,7 +18,7 @@ LSRCFILES = xfs_admin.sh xfs_check.sh xfs_ncheck.sh xfs_metadump.sh - - LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) - LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) --LLDFLAGS += -static -+LLDFLAGS += -static-libtool-libs - - ifeq ($(ENABLE_READLINE),yes) - LLDLIBS += $(LIBREADLINE) $(LIBTERMCAP) -diff --git a/growfs/Makefile b/growfs/Makefile -index 88cbf4f..19616de 100644 ---- a/growfs/Makefile -+++ b/growfs/Makefile -@@ -19,7 +19,7 @@ LLDLIBS += $(LIBEDITLINE) $(LIBTERMCAP) - endif - - LTDEPENDENCIES = $(LIBXFS) $(LIBXCMD) --LLDFLAGS = -static -+LLDFLAGS = -static-libtool-libs - LSRCFILES = xfs_info.sh - - default: depend $(LTCOMMAND) -diff --git a/io/Makefile b/io/Makefile -index 50edf91..89b465b 100644 ---- a/io/Makefile -+++ b/io/Makefile -@@ -14,7 +14,7 @@ CFILES = init.c \ - - LLDLIBS = $(LIBXCMD) $(LIBHANDLE) - LTDEPENDENCIES = $(LIBXCMD) $(LIBHANDLE) --LLDFLAGS = -static -+LLDFLAGS = -static-libtool-libs - - ifeq ($(HAVE_FADVISE),yes) - CFILES += fadvise.c -diff --git a/logprint/Makefile b/logprint/Makefile -index 2d656a4..7bcf27f 100644 ---- a/logprint/Makefile -+++ b/logprint/Makefile -@@ -14,7 +14,7 @@ CFILES = logprint.c \ - - LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) - LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) --LLDFLAGS = -static -+LLDFLAGS = -static-libtool-libs - - default: depend $(LTCOMMAND) - -diff --git a/mkfs/Makefile b/mkfs/Makefile -index 75da633..fd1f615 100644 ---- a/mkfs/Makefile -+++ b/mkfs/Makefile -@@ -21,7 +21,7 @@ endif - - LLDLIBS += $(LIBXFS) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) - LTDEPENDENCIES += $(LIBXFS) --LLDFLAGS = -static -+LLDFLAGS = -static-libtool-libs - - LSRCFILES = $(FSTYP).c - LDIRT = $(FSTYP) -diff --git a/repair/Makefile b/repair/Makefile -index b0e03f8..e9db30f 100644 ---- a/repair/Makefile -+++ b/repair/Makefile -@@ -22,7 +22,7 @@ CFILES = agheader.c attr_repair.c avl.c avl64.c bmap.c btree.c \ - - LLDLIBS = $(LIBXFS) $(LIBXLOG) $(LIBUUID) $(LIBRT) $(LIBPTHREAD) - LTDEPENDENCIES = $(LIBXFS) $(LIBXLOG) --LLDFLAGS = -static -+LLDFLAGS = -static-libtool-libs - - default: depend $(LTCOMMAND) - --- -1.9.3 - diff --git a/package/xfsprogs/0002-no-crc32-checks.patch b/package/xfsprogs/0002-no-crc32-checks.patch new file mode 100644 index 00000000000..6f970924759 --- /dev/null +++ b/package/xfsprogs/0002-no-crc32-checks.patch @@ -0,0 +1,32 @@ +libxfs: do not try to run the crc32selftest + +Even though the crc32selftest is natively compiled (because it is to be +executed), it fails in cross-compilation as the host may lack the +required headers, like uuid/uuid.h (e.g. in a minimal environment). + +Moreover, running the crc32selftest natively is completely wrong, +because it passing on the host does not mean it would still pass n the +target (because endianness or bitness or alignment differences). + +So, just disable running the crc32selftest altogether. + +Note that there's a remaining bug-in-hiding, because the crc32 table +generator is natively built, but with the target CFLAGS. + +Signed-off-by: "Yann E. MORIN" + +diff -durN xfsprogs-4.3.0.orig/libxfs/Makefile xfsprogs-4.3.0/libxfs/Makefile +--- xfsprogs-4.3.0.orig/libxfs/Makefile 2015-09-22 03:42:41.000000000 +0200 ++++ xfsprogs-4.3.0/libxfs/Makefile 2015-12-07 18:45:27.190082913 +0100 +@@ -105,9 +105,9 @@ + # don't try linking xfs_repair with a debug libxfs. + DEBUG = -DNDEBUG + +-LDIRT = gen_crc32table crc32table.h crc32selftest ++LDIRT = gen_crc32table crc32table.h + +-default: crc32selftest ltdepend $(LTLIBRARY) ++default: ltdepend $(LTLIBRARY) + + crc32table.h: gen_crc32table.c + @echo " [CC] gen_crc32table" diff --git a/package/xfsprogs/0003-xfsprogs-don-t-use-CFLAGS-with-BUILD_CC.patch b/package/xfsprogs/0003-xfsprogs-don-t-use-CFLAGS-with-BUILD_CC.patch new file mode 100644 index 00000000000..6617935bf78 --- /dev/null +++ b/package/xfsprogs/0003-xfsprogs-don-t-use-CFLAGS-with-BUILD_CC.patch @@ -0,0 +1,40 @@ +From 5b3dd8eb1f7720c68dab032c3d89d4e3102d6347 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Tue, 15 Dec 2015 20:51:35 -0300 +Subject: [PATCH] xfsprogs: don't use CFLAGS with BUILD_CC + +When cross-compiling CFLAGS might not be suitable for the host +(BUILD_CC) compiler since it might contain arch-specific options. + +Signed-off-by: Gustavo Zacarias +--- +Status: reported http://oss.sgi.com/bugzilla/show_bug.cgi?id=1132 + + libxfs/Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libxfs/Makefile b/libxfs/Makefile +index ecf1921..3979077 100644 +--- a/libxfs/Makefile ++++ b/libxfs/Makefile +@@ -111,7 +111,7 @@ default: crc32selftest ltdepend $(LTLIBRARY) + + crc32table.h: gen_crc32table.c + @echo " [CC] gen_crc32table" +- $(Q) $(BUILD_CC) $(CFLAGS) -o gen_crc32table $< ++ $(Q) $(BUILD_CC) -o gen_crc32table $< + @echo " [GENERATE] $@" + $(Q) ./gen_crc32table > crc32table.h + +@@ -122,7 +122,7 @@ crc32table.h: gen_crc32table.c + # disk. + crc32selftest: gen_crc32table.c crc32table.h crc32.c + @echo " [TEST] CRC32" +- $(Q) $(BUILD_CC) $(CFLAGS) -D CRC32_SELFTEST=1 crc32.c -o $@ ++ $(Q) $(BUILD_CC) -D CRC32_SELFTEST=1 crc32.c -o $@ + $(Q) ./$@ + + # set up include/xfs header directory +-- +2.4.10 + diff --git a/package/xfsprogs/Config.in b/package/xfsprogs/Config.in index 099863795d0..2c24cbbc1c9 100644 --- a/package/xfsprogs/Config.in +++ b/package/xfsprogs/Config.in @@ -12,6 +12,7 @@ config BR2_PACKAGE_XFSPROGS depends on BR2_USE_WCHAR # util-linux select BR2_PACKAGE_UTIL_LINUX select BR2_PACKAGE_UTIL_LINUX_LIBUUID + select BR2_PACKAGE_UTIL_LINUX_LIBBLKID help The XFS file system utilities and libraries diff --git a/package/xfsprogs/xfsprogs.hash b/package/xfsprogs/xfsprogs.hash index 3fb02df4920..d0ff1f31458 100644 --- a/package/xfsprogs/xfsprogs.hash +++ b/package/xfsprogs/xfsprogs.hash @@ -1,3 +1,3 @@ # Locally calculated after checking pgp signature: -# ftp://oss.sgi.com/projects/xfs/cmd_tars/xfsprogs-3.1.11.tar.gz.sig -sha256 adf4980177b5c890c1ca86b9c0e3e4d69a3f95bfc01746844280c2393cf4d6be xfsprogs-3.1.11.tar.gz +# ftp://oss.sgi.com/projects/xfs/cmd_tars/xfsprogs-4.3.0.tar.gz.sig +sha256 3e570ad51153e4be3792f42b2c805ddbd46b55d166eba3102ec87d5006d4cb5c xfsprogs-4.3.0.tar.gz diff --git a/package/xfsprogs/xfsprogs.mk b/package/xfsprogs/xfsprogs.mk index 209a49b23b7..30c47775cbd 100644 --- a/package/xfsprogs/xfsprogs.mk +++ b/package/xfsprogs/xfsprogs.mk @@ -4,7 +4,7 @@ # ################################################################################ -XFSPROGS_VERSION = 3.1.11 +XFSPROGS_VERSION = 4.3.0 XFSPROGS_SITE = ftp://oss.sgi.com/projects/xfs/cmd_tars XFSPROGS_DEPENDENCIES = util-linux diff --git a/package/xl2tp/0002-musl.patch b/package/xl2tp/0002-musl.patch new file mode 100644 index 00000000000..44238e87d0e --- /dev/null +++ b/package/xl2tp/0002-musl.patch @@ -0,0 +1,19 @@ +Fix musl build + +Downloaded from +http://git.alpinelinux.org/cgit/aports/tree/main/xl2tpd/xl2tpd-compile.patch + +Signed-off-by: Bernd Kuhls + +diff -u --recursive src.orig/xl2tpd-1.3.6/xl2tpd.c src/xl2tpd-1.3.6/xl2tpd.c +--- xl2tpd-1.3.6.orig/xl2tpd.c 2014-01-15 21:58:37.000000000 -0100 ++++ xl2tpd-1.3.6/xl2tpd.c 2014-06-21 07:22:21.195278618 -0200 +@@ -33,8 +33,6 @@ + #if (__GLIBC__ < 2) + # if defined(FREEBSD) || defined(OPENBSD) + # include +-# elif defined(LINUX) +-# include + # elif defined(SOLARIS) + # include + # endif diff --git a/package/xmlstarlet/xmlstarlet.mk b/package/xmlstarlet/xmlstarlet.mk index 992bb8f3ba9..e0abf04502c 100644 --- a/package/xmlstarlet/xmlstarlet.mk +++ b/package/xmlstarlet/xmlstarlet.mk @@ -21,6 +21,7 @@ XMLSTARLET_CONF_OPTS += \ ifeq ($(BR2_STATIC_LIBS),y) XMLSTARLET_CONF_OPTS += --enable-static-libs +XMLSTARLET_CONF_ENV = LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libxml-2.0`" else XMLSTARLET_CONF_OPTS += --disable-static-libs endif diff --git a/package/xscreensaver/Config.in b/package/xscreensaver/Config.in index 59b19c5eb11..5213ce36956 100644 --- a/package/xscreensaver/Config.in +++ b/package/xscreensaver/Config.in @@ -5,7 +5,7 @@ config BR2_PACKAGE_XSCREENSAVER depends on BR2_TOOLCHAIN_HAS_THREADS # libgtk2 -> glib2 depends on BR2_USE_WCHAR # libgtk2 -> glib2 depends on BR2_USE_MMU # libgtk2 -> glib2 - depends on BR2_ARCH_HAS_ATOMICS # libgtk2 -> cairo + depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk2 -> pango -> harfbuzz select BR2_PACKAGE_LIBGTK2 select BR2_PACKAGE_LIBGLADE select BR2_PACKAGE_JPEG @@ -25,6 +25,6 @@ config BR2_PACKAGE_XSCREENSAVER comment "xscreensaver needs a toolchain w/ wchar, C++, threads" depends on BR2_PACKAGE_XORG7 depends on BR2_USE_MMU - depends on BR2_ARCH_HAS_ATOMICS + depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_USE_WCHAR diff --git a/package/xtables-addons/Config.in b/package/xtables-addons/Config.in index a68761810bd..45385196094 100644 --- a/package/xtables-addons/Config.in +++ b/package/xtables-addons/Config.in @@ -10,6 +10,7 @@ config BR2_PACKAGE_XTABLES_ADDONS depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS # extensions are .so select BR2_PACKAGE_IPTABLES + select BR2_LINUX_NEEDS_MODULES # not using kernel-module infra help Xtables-addons is the successor to patch-o-matic(-ng). Likewise, it contains extensions that were not, or are not yet, diff --git a/package/xtables-addons/xtables-addons.hash b/package/xtables-addons/xtables-addons.hash index 02e646f2fda..be8cb6e4cf3 100644 --- a/package/xtables-addons/xtables-addons.hash +++ b/package/xtables-addons/xtables-addons.hash @@ -1,3 +1,4 @@ -# From http://sourceforge.net/projects/xtables-addons/files/Xtables-addons/2.7/ -md5 81bd7ba82e5f7bfd1458fc97ddf72e1d xtables-addons-2.7.tar.xz -sha1 82c13237ef2a62e57832b160832f4b9c4fb8c7c5 xtables-addons-2.7.tar.xz +# From http://sourceforge.net/projects/xtables-addons/files/Xtables-addons/2.10/ +sha1 bc6dcb1eb1328931189f6e73a1a02ef4cc51bc44 xtables-addons-2.10.tar.xz +# Calculated based on the hash above +sha256 2a2d92ae924437d757f55514502c6ef3aeccc6106f729c702efe703ad30f4007 xtables-addons-2.10.tar.xz diff --git a/package/xtables-addons/xtables-addons.mk b/package/xtables-addons/xtables-addons.mk index 75e2a5af30f..b4e5992a7ae 100644 --- a/package/xtables-addons/xtables-addons.mk +++ b/package/xtables-addons/xtables-addons.mk @@ -4,7 +4,7 @@ # ################################################################################ -XTABLES_ADDONS_VERSION = 2.7 +XTABLES_ADDONS_VERSION = 2.10 XTABLES_ADDONS_SOURCE = xtables-addons-$(XTABLES_ADDONS_VERSION).tar.xz XTABLES_ADDONS_SITE = http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons XTABLES_ADDONS_DEPENDENCIES = iptables linux host-pkgconf diff --git a/package/xterm/xterm.hash b/package/xterm/xterm.hash index d36d1c436ff..a6e2c69128f 100644 --- a/package/xterm/xterm.hash +++ b/package/xterm/xterm.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 1dbf1e93796c1b71b22b84e82eb58bcf20a14a7f365158819f3b4dbb29fe93f0 xterm-314.tgz +sha256 a60dbb574334c081425fa30f011cd9f571e3be7a91e2a84e252461798bce24a7 xterm-320.tgz diff --git a/package/xterm/xterm.mk b/package/xterm/xterm.mk index e7afff210d4..7cad0cbeef3 100644 --- a/package/xterm/xterm.mk +++ b/package/xterm/xterm.mk @@ -4,9 +4,9 @@ # ################################################################################ -XTERM_VERSION = 314 +XTERM_VERSION = 320 XTERM_SOURCE = xterm-$(XTERM_VERSION).tgz -XTERM_SITE = ftp://invisible-island.net/xterm +XTERM_SITE = http://invisible-mirror.net/archives/xterm XTERM_DEPENDENCIES = ncurses xlib_libXaw host-pkgconf XTERM_LICENSE = MIT XTERM_LICENSE_FILES = version.c diff --git a/package/x11r7/xutil_util-macros/Config.in b/package/xutil_util-macros/Config.in similarity index 100% rename from package/x11r7/xutil_util-macros/Config.in rename to package/xutil_util-macros/Config.in diff --git a/package/x11r7/xutil_util-macros/xutil_util-macros.hash b/package/xutil_util-macros/xutil_util-macros.hash similarity index 100% rename from package/x11r7/xutil_util-macros/xutil_util-macros.hash rename to package/xutil_util-macros/xutil_util-macros.hash diff --git a/package/x11r7/xutil_util-macros/xutil_util-macros.mk b/package/xutil_util-macros/xutil_util-macros.mk similarity index 100% rename from package/x11r7/xutil_util-macros/xutil_util-macros.mk rename to package/xutil_util-macros/xutil_util-macros.mk diff --git a/package/xvkbd/Config.in b/package/xvkbd/Config.in index bd3f2aa8a0d..464a6ef723c 100644 --- a/package/xvkbd/Config.in +++ b/package/xvkbd/Config.in @@ -13,4 +13,4 @@ config BR2_PACKAGE_XVKBD help on-screen keyboard for X - http://homepage3.nifty.com/tsato/xvkbd + http://t-sato.in.coocan.jp/xvkbd diff --git a/package/xvkbd/xvkbd.hash b/package/xvkbd/xvkbd.hash index a9fa10dfbf1..18148e5e09c 100644 --- a/package/xvkbd/xvkbd.hash +++ b/package/xvkbd/xvkbd.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 93c4bdced9f13f22c367d990e98ffbc53f8210fa28a816fa9c610d86e78bf807 xvkbd-3.2.tar.gz +sha256 895f768269820e7c0379b0daac3687bda0c670d192ebb7e61e5613a5939ec90b xvkbd-3.7.tar.gz diff --git a/package/xvkbd/xvkbd.mk b/package/xvkbd/xvkbd.mk index 0411fa44fec..e03f7233aa2 100644 --- a/package/xvkbd/xvkbd.mk +++ b/package/xvkbd/xvkbd.mk @@ -4,8 +4,8 @@ # ################################################################################ -XVKBD_VERSION = 3.2 -XVKBD_SITE = http://homepage3.nifty.com/tsato/xvkbd +XVKBD_VERSION = 3.7 +XVKBD_SITE = http://t-sato.in.coocan.jp/xvkbd XVKBD_LICENSE = GPLv2+ XVKBD_LICENSE_FILES = README diff --git a/package/xxhash/Config.in b/package/xxhash/Config.in new file mode 100644 index 00000000000..f2cccda2c58 --- /dev/null +++ b/package/xxhash/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_XXHASH + bool "xxhash" + help + xxHash is an extremely fast hash algorithm, running at RAM + speed limits. + + https://github.com/Cyan4973/xxHash diff --git a/package/xxhash/xxhash.mk b/package/xxhash/xxhash.mk new file mode 100644 index 00000000000..47ead7507e7 --- /dev/null +++ b/package/xxhash/xxhash.mk @@ -0,0 +1,20 @@ +################################################################################ +# +# xxhash +# +################################################################################ + +XXHASH_VERSION = r40 +XXHASH_SITE = $(call github,Cyan4973,xxHash,$(XXHASH_VERSION)) +XXHASH_LICENSE = BSD-2c, GPLv2+ +XXHASH_LICENSE_FILES = LICENSE xxhsum.c + +define XXHASH_BUILD_CMDS + $(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) xxhsum +endef + +define XXHASH_INSTALL_TARGET_CMDS + $(INSTALL) -m 0755 -D $(@D)/xxhsum $(TARGET_DIR)/usr/bin/xxhsum +endef + +$(eval $(generic-package)) diff --git a/package/xz/xz.hash b/package/xz/xz.hash index da523d94985..f723f7e3056 100644 --- a/package/xz/xz.hash +++ b/package/xz/xz.hash @@ -1,2 +1,2 @@ # Locally calculated after checking pgp signature -sha256 679148f497e0bff2c1adce42dee5a23f746e71321c33ebb0f641a302e30c2a80 xz-5.2.1.tar.bz2 +sha256 6ff5f57a4b9167155e35e6da8b529de69270efb2b4cf3fbabf41a4ee793840b5 xz-5.2.2.tar.bz2 diff --git a/package/xz/xz.mk b/package/xz/xz.mk index 503275c8456..5e1d7c6f15a 100644 --- a/package/xz/xz.mk +++ b/package/xz/xz.mk @@ -4,12 +4,12 @@ # ################################################################################ -XZ_VERSION = 5.2.1 +XZ_VERSION = 5.2.2 XZ_SOURCE = xz-$(XZ_VERSION).tar.bz2 XZ_SITE = http://tukaani.org/xz XZ_INSTALL_STAGING = YES XZ_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99' -XZ_LICENSE = GPLv2+ GPLv3+ LGPLv2.1+ +XZ_LICENSE = GPLv2+, GPLv3+, LGPLv2.1+ XZ_LICENSE_FILES = COPYING.GPLv2 COPYING.GPLv3 COPYING.LGPLv2.1 ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) diff --git a/package/yad/Config.in b/package/yad/Config.in new file mode 100644 index 00000000000..50b97c59ab5 --- /dev/null +++ b/package/yad/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_YAD + bool "yad" + depends on BR2_PACKAGE_XORG7 + depends on BR2_PACKAGE_LIBGTK2 || BR2_PACKAGE_LIBGTK3_X11 + help + YAD (yet another dialog) is a tool for create graphical dialogs + from shell scripts. + + http://sourceforge.net/projects/yad-dialog/ + +comment "yad needs libgtk2 or libgtk3 w/ X11 backend" + depends on BR2_PACKAGE_XORG7 + depends on !BR2_PACKAGE_LIBGTK2 && !BR2_PACKAGE_LIBGTK3_X11 diff --git a/package/yad/yad.hash b/package/yad/yad.hash new file mode 100644 index 00000000000..18392829e88 --- /dev/null +++ b/package/yad/yad.hash @@ -0,0 +1,3 @@ +# From http://sourceforge.net/projects/yad-dialog/files/ +md5 4e24888712be1e95fd3cea815f19c6cb yad-0.33.1.tar.xz +sha1 b39977128678ca67bf4649929510f729c9cf1e67 yad-0.33.1.tar.xz diff --git a/package/yad/yad.mk b/package/yad/yad.mk new file mode 100644 index 00000000000..a7f5ba25897 --- /dev/null +++ b/package/yad/yad.mk @@ -0,0 +1,23 @@ +################################################################################ +# +# yad +# +################################################################################ + +YAD_VERSION = 0.33.1 +YAD_SOURCE = yad-$(YAD_VERSION).tar.xz +YAD_SITE = http://sourceforge.net/projects/yad-dialog/files +YAD_LICENSE = GPLv3 +YAD_LICENSE_FILES = COPYING +YAD_DEPENDENCIES = host-intltool host-pkgconf +YAD_CONF_OPTS = --enable-html=no + +ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) +YAD_DEPENDENCIES += libgtk3 +YAD_CONF_OPTS += --with-gtk=gtk3 +else +YAD_DEPENDENCIES += libgtk2 +YAD_CONF_OPTS += --with-gtk=gtk2 +endif + +$(eval $(autotools-package)) diff --git a/package/yajl/yajl.hash b/package/yajl/yajl.hash new file mode 100644 index 00000000000..315d847db23 --- /dev/null +++ b/package/yajl/yajl.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 0e78f516dc53ecce7dc073f9a9bb0343186b58ef29dcd1dad74e5e853b216dd5 yajl-2.0.4.tar.gz +sha256 0f075b5f9a38bc02077370d4d57d12e615cfaaf7f634e3f2fc746b6582854e53 6d09f11b8fd358cab0e31b965327e64a599f9ce9.patch diff --git a/package/yajl/yajl.mk b/package/yajl/yajl.mk index ff641239bca..81f29e72659 100644 --- a/package/yajl/yajl.mk +++ b/package/yajl/yajl.mk @@ -9,5 +9,6 @@ YAJL_SITE = $(call github,lloyd,yajl,$(YAJL_VERSION)) YAJL_INSTALL_STAGING = YES YAJL_LICENSE = ISC YAJL_LICENSE_FILES = COPYING +YAJL_PATCH = https://github.com/vriera/yajl/commit/6d09f11b8fd358cab0e31b965327e64a599f9ce9.patch $(eval $(cmake-package)) diff --git a/package/yasm/yasm.hash b/package/yasm/yasm.hash index d5cf267d449..016c15b90ab 100644 --- a/package/yasm/yasm.hash +++ b/package/yasm/yasm.hash @@ -1,2 +1,2 @@ # Locally computed: -sha256 768ffab457b90a20a6d895c39749adb547c1b7cb5c108e84b151a838a23ccf31 yasm-1.2.0.tar.gz +sha256 3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f yasm-1.3.0.tar.gz diff --git a/package/yasm/yasm.mk b/package/yasm/yasm.mk index 0bbd22d06b0..bf8a4815616 100644 --- a/package/yasm/yasm.mk +++ b/package/yasm/yasm.mk @@ -4,7 +4,7 @@ # ################################################################################ -YASM_VERSION = 1.2.0 +YASM_VERSION = 1.3.0 YASM_SITE = http://www.tortall.net/projects/yasm/releases define YASM_PRE_CONFIGURE_FIXUP diff --git a/package/ympd/Config.in b/package/ympd/Config.in index ba0e5e83c2c..d0901c71ef9 100644 --- a/package/ympd/Config.in +++ b/package/ympd/Config.in @@ -3,9 +3,11 @@ config BR2_PACKAGE_YMPD select BR2_PACKAGE_LIBMPDCLIENT depends on BR2_USE_MMU # fork() depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS help ympd, a standalone MPD Web GUI written in C, utilizing Websockets and Bootstrap/JS -comment "ympd needs a toolchain w/ threads" - depends on !BR2_TOOLCHAIN_HAS_THREADS +comment "ympd needs a toolchain w/ threads, dynamic library" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS diff --git a/package/zbar/0001-Fix-autoreconf-by-reducing-the-warning-error-checkin.patch b/package/zbar/0001-Fix-autoreconf-by-reducing-the-warning-error-checkin.patch new file mode 100644 index 00000000000..57fbeb1e775 --- /dev/null +++ b/package/zbar/0001-Fix-autoreconf-by-reducing-the-warning-error-checkin.patch @@ -0,0 +1,26 @@ +From e593d6529cff515d94d80a24b5f3a953fd46004c Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sat, 19 Dec 2015 18:56:36 +0100 +Subject: [PATCH] Fix autoreconf by reducing the warning/error checking + +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 256aedb..e0b6046 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -3,7 +3,7 @@ AC_PREREQ([2.61]) + AC_INIT([zbar], [0.10], [spadix@users.sourceforge.net]) + AC_CONFIG_AUX_DIR(config) + AC_CONFIG_MACRO_DIR(config) +-AM_INIT_AUTOMAKE([1.10 -Wall -Werror foreign subdir-objects std-options dist-bzip2]) ++AM_INIT_AUTOMAKE([1.10 foreign subdir-objects std-options dist-bzip2]) + AC_CONFIG_HEADERS([include/config.h]) + AC_CONFIG_SRCDIR(zbar/scanner.c) + LT_PREREQ([2.2]) +-- +2.6.4 + diff --git a/package/zbar/0002-Fix-function-protoype-to-be-compatible-with-recent-l.patch b/package/zbar/0002-Fix-function-protoype-to-be-compatible-with-recent-l.patch new file mode 100644 index 00000000000..82dd4e96ead --- /dev/null +++ b/package/zbar/0002-Fix-function-protoype-to-be-compatible-with-recent-l.patch @@ -0,0 +1,27 @@ +From 5dc8322b4f9a3de29b3da70b69e16356a2a1764c Mon Sep 17 00:00:00 2001 +From: Viacheslav Volkov +Date: Sat, 19 Dec 2015 19:07:09 +0100 +Subject: [PATCH] Fix function protoype to be compatible with recent libjpeg + +Signed-off-by: Viacheslav Volkov +Signed-off-by: Thomas Petazzoni +--- + zbar/jpeg.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/zbar/jpeg.c b/zbar/jpeg.c +index 972bfea..fdd1619 100644 +--- a/zbar/jpeg.c ++++ b/zbar/jpeg.c +@@ -68,7 +68,7 @@ void init_source (j_decompress_ptr cinfo) + cinfo->src->bytes_in_buffer = img->datalen; + } + +-int fill_input_buffer (j_decompress_ptr cinfo) ++boolean fill_input_buffer (j_decompress_ptr cinfo) + { + /* buffer underrun error case */ + cinfo->src->next_input_byte = fake_eoi; +-- +2.6.4 + diff --git a/package/zbar/0003-Disable-building-documentation.patch b/package/zbar/0003-Disable-building-documentation.patch new file mode 100644 index 00000000000..729f926cc8e --- /dev/null +++ b/package/zbar/0003-Disable-building-documentation.patch @@ -0,0 +1,27 @@ +From 58027d5bb0492142a5b72ded772d3a1be9fa8d87 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Sun, 20 Dec 2015 12:05:57 +0100 +Subject: [PATCH] Disable building documentation + +The documentation requires xmlto, and we don't need it in Buildroot. + +Signed-off-by: Thomas Petazzoni +--- + Makefile.am | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index e18499a..db4411f 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -45,7 +45,6 @@ if HAVE_NPAPI + include $(srcdir)/plugin/Makefile.am.inc + endif + include $(srcdir)/test/Makefile.am.inc +-include $(srcdir)/doc/Makefile.am.inc + + EXTRA_DIST += zbar.ico zbar.nsi + +-- +2.6.4 + diff --git a/package/zbar/0004-Wrap-logical-not-operations-into-parentheses.patch b/package/zbar/0004-Wrap-logical-not-operations-into-parentheses.patch new file mode 100644 index 00000000000..6d39b1bd96a --- /dev/null +++ b/package/zbar/0004-Wrap-logical-not-operations-into-parentheses.patch @@ -0,0 +1,80 @@ +From 7e69cdc8dfdf07701ba551985ee49d48e64d730f Mon Sep 17 00:00:00 2001 +From: Vicente Olivert Riera +Date: Mon, 25 Jan 2016 11:58:59 +0000 +Subject: [PATCH] Wrap logical not operations into parentheses + +Otherwise it fails like this: + +zbar/decoder/ean.c: In function 'ean_part_end4': +zbar/decoder/ean.c:297:13: error: logical not is only applied to the +left hand side of comparison [-Werror=logical-not-parentheses] + if(!par == fwd) { + +This patch has been sent upstream as a pull request: + + https://github.com/ZBar/ZBar/pull/9 + +Signed-off-by: Vicente Olivert Riera +--- + zbar/decoder/ean.c | 4 ++-- + zbar/qrcode/qrdec.c | 8 ++++---- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/zbar/decoder/ean.c b/zbar/decoder/ean.c +index c20f538..41d1493 100644 +--- a/zbar/decoder/ean.c ++++ b/zbar/decoder/ean.c +@@ -294,7 +294,7 @@ static inline zbar_symbol_type_t ean_part_end4 (ean_pass_t *pass, + /* invalid parity combination */ + return(ZBAR_NONE); + +- if(!par == fwd) { ++ if((!par) == fwd) { + /* reverse sampled digits */ + unsigned char tmp = pass->raw[1]; + pass->state |= STATE_REV; +@@ -380,7 +380,7 @@ static inline zbar_symbol_type_t ean_part_end7 (ean_decoder_t *ean, + /* invalid parity combination */ + return(ZBAR_NONE); + +- if(!par == fwd) { ++ if((!par) == fwd) { + unsigned char i; + pass->state |= STATE_REV; + /* reverse sampled digits */ +diff --git a/zbar/qrcode/qrdec.c b/zbar/qrcode/qrdec.c +index d8fa802..5d3d265 100644 +--- a/zbar/qrcode/qrdec.c ++++ b/zbar/qrcode/qrdec.c +@@ -1219,8 +1219,8 @@ static int qr_finder_quick_crossing_check(const unsigned char *_img, + _x1<0||_x1>=_width||_y1<0||_y1>=_height){ + return -1; + } +- if(!_img[_y0*_width+_x0]!=_v||!_img[_y1*_width+_x1]!=_v)return 1; +- if(!_img[(_y0+_y1>>1)*_width+(_x0+_x1>>1)]==_v)return -1; ++ if((!_img[_y0*_width+_x0])!=_v||(!_img[_y1*_width+_x1])!=_v)return 1; ++ if((!_img[(_y0+_y1>>1)*_width+(_x0+_x1>>1)])==_v)return -1; + return 0; + } + +@@ -1261,7 +1261,7 @@ static int qr_finder_locate_crossing(const unsigned char *_img, + x0[1-steep]+=step[1-steep]; + err-=dx[steep]; + } +- if(!_img[x0[1]*_width+x0[0]]!=_v)break; ++ if((!_img[x0[1]*_width+x0[0]])!=_v)break; + } + /*Find the last crossing from _v to !_v.*/ + err=0; +@@ -1273,7 +1273,7 @@ static int qr_finder_locate_crossing(const unsigned char *_img, + x1[1-steep]-=step[1-steep]; + err-=dx[steep]; + } +- if(!_img[x1[1]*_width+x1[0]]!=_v)break; ++ if((!_img[x1[1]*_width+x1[0]])!=_v)break; + } + /*Return the midpoint of the _v segment.*/ + _p[0]=(x0[0]+x1[0]+1<>1; +-- +2.4.10 + diff --git a/package/zbar/Config.in b/package/zbar/Config.in new file mode 100644 index 00000000000..5097f574391 --- /dev/null +++ b/package/zbar/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_ZBAR + bool "zbar" + depends on BR2_TOOLCHAIN_HAS_THREADS # libv4l + depends on BR2_USE_MMU # libv4l + depends on !BR2_STATIC_LIBS # libv4l + depends on BR2_INSTALL_LIBSTDCPP # libv4l + depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # libv4l + select BR2_PACKAGE_JPEG + select BR2_PACKAGE_LIBV4L + help + QR and barcode scanner + + http://zbar.sourceforge.net/ + +comment "zbar needs a toolchain w/ threads, dynamic library, C++ and headers >= 3.0" + depends on BR2_USE_MMU + depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ + || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 diff --git a/package/zbar/zbar.hash b/package/zbar/zbar.hash new file mode 100644 index 00000000000..54441a8f3e9 --- /dev/null +++ b/package/zbar/zbar.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 38f8535a3c4c526ecaa968a992efcbf7392623e68db45dc2f181d4c9d3002d69 zbar-854a5d97059e395807091ac4d80c53f7968abb8f.tar.gz diff --git a/package/zbar/zbar.mk b/package/zbar/zbar.mk new file mode 100644 index 00000000000..54e11e3eedd --- /dev/null +++ b/package/zbar/zbar.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# zbar +# +################################################################################ + +# github have some additional commits for compiling with recent kernel +ZBAR_VERSION = 854a5d97059e395807091ac4d80c53f7968abb8f +ZBAR_SITE = $(call github,ZBar,Zbar,$(ZBAR_VERSION)) +ZBAR_LICENSE = LGPLv2.1+ +ZBAR_LICENSE_FILES = LICENSE +ZBAR_INSTALL_STAGING = YES +ZBAR_AUTORECONF = YES +ZBAR_DEPENDENCIES = libv4l jpeg +ZBAR_CONF_OPTS = \ + --without-imagemagick \ + --without-qt \ + --without-gtk \ + --without-python \ + --without-x + +$(eval $(autotools-package)) diff --git a/package/zeromq/0003-Problem-return-code-of-sodium_init-is-not-checked.patch b/package/zeromq/0003-Problem-return-code-of-sodium_init-is-not-checked.patch new file mode 100644 index 00000000000..fcdbc9cde12 --- /dev/null +++ b/package/zeromq/0003-Problem-return-code-of-sodium_init-is-not-checked.patch @@ -0,0 +1,73 @@ +From 479db2113643e459c11db392e0fefd6400657c9e Mon Sep 17 00:00:00 2001 +From: Constantin Rack +Date: Sat, 8 Nov 2014 10:50:17 +0100 +Subject: [PATCH] Problem: return code of sodium_init() is not checked. + +There are two todo comments in curve_client.cpp and curve_server.cpp that suggest +checking the return code of sodium_init() call. sodium_init() returns -1 on error, +0 on success and 1 if it has been called before and is already initalized: +https://github.com/jedisct1/libsodium/blob/master/src/libsodium/sodium/core.c + +Signed-off-by: Gustavo Zacarias +--- +Status: Upstream + +diff --git a/src/curve_client.cpp b/src/curve_client.cpp +index 6019c54..77fc420 100644 +--- a/src/curve_client.cpp ++++ b/src/curve_client.cpp +@@ -38,6 +38,7 @@ zmq::curve_client_t::curve_client_t (const options_t &options_) : + cn_peer_nonce(1), + sync() + { ++ int rc; + memcpy (public_key, options_.curve_public_key, crypto_box_PUBLICKEYBYTES); + memcpy (secret_key, options_.curve_secret_key, crypto_box_SECRETKEYBYTES); + memcpy (server_key, options_.curve_server_key, crypto_box_PUBLICKEYBYTES); +@@ -47,12 +48,12 @@ zmq::curve_client_t::curve_client_t (const options_t &options_) : + unsigned char tmpbytes[4]; + randombytes(tmpbytes, 4); + #else +- // todo check return code +- sodium_init(); ++ rc = sodium_init (); ++ zmq_assert (rc != -1); + #endif + + // Generate short-term key pair +- const int rc = crypto_box_keypair (cn_public, cn_secret); ++ rc = crypto_box_keypair (cn_public, cn_secret); + zmq_assert (rc == 0); + } + +diff --git a/src/curve_server.cpp b/src/curve_server.cpp +index a3c4243..22c32d6 100644 +--- a/src/curve_server.cpp ++++ b/src/curve_server.cpp +@@ -42,6 +42,7 @@ zmq::curve_server_t::curve_server_t (session_base_t *session_, + cn_peer_nonce(1), + sync() + { ++ int rc; + // Fetch our secret key from socket options + memcpy (secret_key, options_.curve_secret_key, crypto_box_SECRETKEYBYTES); + scoped_lock_t lock (sync); +@@ -50,12 +51,12 @@ zmq::curve_server_t::curve_server_t (session_base_t *session_, + unsigned char tmpbytes[4]; + randombytes(tmpbytes, 4); + #else +- // todo check return code +- sodium_init(); ++ rc = sodium_init (); ++ zmq_assert (rc != -1); + #endif + + // Generate short-term key pair +- const int rc = crypto_box_keypair (cn_public, cn_secret); ++ rc = crypto_box_keypair (cn_public, cn_secret); + zmq_assert (rc == 0); + } + +-- +2.4.10 + diff --git a/package/zeromq/Config.in b/package/zeromq/Config.in index 927765303b0..b75ed3a818b 100644 --- a/package/zeromq/Config.in +++ b/package/zeromq/Config.in @@ -29,9 +29,7 @@ if BR2_PACKAGE_ZEROMQ config BR2_PACKAGE_ZEROMQ_PGM bool "PGM/EPGM support" - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1 # openpgm - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1 # openpgm - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 # openpgm + depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX # openpgm select BR2_PACKAGE_OPENPGM help Add support for Pragmatic General Multicast protocol (RFC 3208) diff --git a/package/zeromq/zeromq.hash b/package/zeromq/zeromq.hash index 6c7916e96cf..b7447407812 100644 --- a/package/zeromq/zeromq.hash +++ b/package/zeromq/zeromq.hash @@ -1,4 +1,4 @@ -# Locally calculated from download (no sig, hash) -sha256 f9162ead6d68521e5154d871bac304f88857308bb02366b81bb588497a345927 zeromq-4.1.2.tar.gz # From http://download.zeromq.org/SHA1SUMS: -sha1 86c17096f7f4bf46cbcd2ad242cf8fec8a7cfb7b zeromq-4.1.2.tar.gz +sha1 b7185724f2fd56d0face50047757ac2a04d26ca4 zeromq-4.1.3.tar.gz +# Calculated based on the hash above +sha256 61b31c830db377777e417235a24d3660a4bcc3f40d303ee58df082fcd68bf411 zeromq-4.1.3.tar.gz diff --git a/package/zeromq/zeromq.mk b/package/zeromq/zeromq.mk index a58a6fe1cf2..ab30b78c8c8 100644 --- a/package/zeromq/zeromq.mk +++ b/package/zeromq/zeromq.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZEROMQ_VERSION = 4.1.2 +ZEROMQ_VERSION = 4.1.3 ZEROMQ_SITE = http://download.zeromq.org ZEROMQ_INSTALL_STAGING = YES ZEROMQ_DEPENDENCIES = util-linux diff --git a/package/zic/0001-fix-dependencies.patch b/package/zic/0001-fix-dependencies.patch deleted file mode 100644 index e1cbc12f0d2..00000000000 --- a/package/zic/0001-fix-dependencies.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 4a2a55a640dd9316dac5f31832064f28f59ab0ae Mon Sep 17 00:00:00 2001 -From: Richard Braun -Date: Fri, 4 Jan 2013 10:57:24 +0100 -Subject: [PATCH] zic: fix dependencies - -The yearistype script is provided by the tzdata package, and is required -at runtime only. ---- - Makefile | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/Makefile b/Makefile -index d76a81e..30df7dc 100644 ---- a/Makefile -+++ b/Makefile -@@ -349,7 +349,7 @@ version.h: - zdump: $(TZDOBJS) - $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS) - --zic: $(TZCOBJS) yearistype -+zic: $(TZCOBJS) - $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS) - - yearistype: yearistype.sh --- -1.7.2.5 - diff --git a/package/zic/zic.hash b/package/zic/zic.hash index 3ddd6f823a5..290cfdbe207 100644 --- a/package/zic/zic.hash +++ b/package/zic/zic.hash @@ -1,2 +1,2 @@ -# From 2015e release anouncement. See http://mm.icann.org/pipermail/tz-announce/2015-June/000032.html -sha512 fdc568a68f4876b967b39e21fa53f063dc5756e886e2a273cc046d5a014eb517e9c91eb6e03d18c94a89ce48578868aed710790415c500188fce4e4add0ce7ca tzcode2015e.tar.gz +# From: http://mm.icann.org/pipermail/tz-announce/2016-January/000035.html +sha512 33a1078ba16aef19048aa97ce1816fc5368061bfe40eddc0e7e246ca57c4a535eaf2f03847128e971a6d959f34ea77224bf33fd53dc6a0c006450dde35222223 tzcode2016a.tar.gz diff --git a/package/zic/zic.mk b/package/zic/zic.mk index 03e023ae4ff..6f5d160154f 100644 --- a/package/zic/zic.mk +++ b/package/zic/zic.mk @@ -4,9 +4,9 @@ # ################################################################################ -ZIC_VERSION = 2015e +ZIC_VERSION = 2016a ZIC_SOURCE = tzcode$(ZIC_VERSION).tar.gz -ZIC_SITE = ftp://ftp.iana.org/tz/releases +ZIC_SITE = http://www.iana.org/time-zones/repository/releases ZIC_STRIP_COMPONENTS = 0 ZIC_LICENSE = Public domain diff --git a/package/infozip/0001-configure-Remove-Check-C-compiler-type-optimization-.patch b/package/zip/0001-configure-Remove-Check-C-compiler-type-optimization-.patch similarity index 100% rename from package/infozip/0001-configure-Remove-Check-C-compiler-type-optimization-.patch rename to package/zip/0001-configure-Remove-Check-C-compiler-type-optimization-.patch diff --git a/package/infozip/0002-configure-Don-t-use-host-CPP.patch b/package/zip/0002-configure-Don-t-use-host-CPP.patch similarity index 100% rename from package/infozip/0002-configure-Don-t-use-host-CPP.patch rename to package/zip/0002-configure-Don-t-use-host-CPP.patch diff --git a/package/infozip/0003-Makefile-Use-CFLAGS-from-command-line.patch b/package/zip/0003-Makefile-Use-CFLAGS-from-command-line.patch similarity index 100% rename from package/infozip/0003-Makefile-Use-CFLAGS-from-command-line.patch rename to package/zip/0003-Makefile-Use-CFLAGS-from-command-line.patch diff --git a/package/infozip/0004-configure-use-LDFLAGS-from-command-line.patch b/package/zip/0004-configure-use-LDFLAGS-from-command-line.patch similarity index 100% rename from package/infozip/0004-configure-use-LDFLAGS-from-command-line.patch rename to package/zip/0004-configure-use-LDFLAGS-from-command-line.patch diff --git a/package/infozip/0005-unix-configure-remove-GID-UID-size-check.patch b/package/zip/0005-unix-configure-remove-GID-UID-size-check.patch similarity index 100% rename from package/infozip/0005-unix-configure-remove-GID-UID-size-check.patch rename to package/zip/0005-unix-configure-remove-GID-UID-size-check.patch diff --git a/package/infozip/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch b/package/zip/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch similarity index 100% rename from package/infozip/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch rename to package/zip/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch diff --git a/package/infozip/Config.in b/package/zip/Config.in similarity index 88% rename from package/infozip/Config.in rename to package/zip/Config.in index cfd7533e60e..4b6360a4563 100644 --- a/package/infozip/Config.in +++ b/package/zip/Config.in @@ -1,5 +1,5 @@ -config BR2_PACKAGE_INFOZIP - bool "infozip" +config BR2_PACKAGE_ZIP + bool "zip" help Zip is a compression and file packaging/archive utility. Although highly compatible both with PKWARE's PKZIP and diff --git a/package/infozip/infozip.hash b/package/zip/zip.hash similarity index 100% rename from package/infozip/infozip.hash rename to package/zip/zip.hash diff --git a/package/infozip/infozip.mk b/package/zip/zip.mk similarity index 66% rename from package/infozip/infozip.mk rename to package/zip/zip.mk index e57f7e16d04..5338f881663 100644 --- a/package/infozip/infozip.mk +++ b/package/zip/zip.mk @@ -1,51 +1,51 @@ ################################################################################ # -# infozip +# zip # ################################################################################ -INFOZIP_VERSION = 30 -INFOZIP_SOURCE = zip$(INFOZIP_VERSION).tgz -INFOZIP_SITE = ftp://ftp.info-zip.org/pub/infozip/src -INFOZIP_LICENSE = Info-ZIP -INFOZIP_LICENSE_FILES = LICENSE +ZIP_VERSION = 30 +ZIP_SOURCE = zip$(ZIP_VERSION).tgz +ZIP_SITE = ftp://ftp.info-zip.org/pub/infozip/src +ZIP_LICENSE = Info-ZIP +ZIP_LICENSE_FILES = LICENSE ifeq ($(BR2_PACKAGE_BZIP2),y) -INFOZIP_DEPENDENCIES += bzip2 +ZIP_DEPENDENCIES += bzip2 endif # Infozip's default CFLAGS. -INFOZIP_CFLAGS = -I. -DUNIX +ZIP_CFLAGS = -I. -DUNIX # Disable the support of 16-bit UIDs/GIDs, the test in unix/configure was # removed since it can't work for cross-compilation. -INFOZIP_CFLAGS += -DUIDGID_NOT_16BIT +ZIP_CFLAGS += -DUIDGID_NOT_16BIT # infozip already defines _LARGEFILE_SOURCE and _LARGEFILE64_SOURCE when # necessary, redefining it on the command line causes some warnings. -INFOZIP_TARGET_CFLAGS = \ +ZIP_TARGET_CFLAGS = \ $(filter-out -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE,$(TARGET_CFLAGS)) -define INFOZIP_BUILD_CMDS +define ZIP_BUILD_CMDS $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \ - CFLAGS="$(INFOZIP_TARGET_CFLAGS) $(INFOZIP_CFLAGS)" \ + CFLAGS="$(ZIP_TARGET_CFLAGS) $(ZIP_CFLAGS)" \ AS="$(TARGET_CC) -c" \ -f unix/Makefile generic endef -define INFOZIP_INSTALL_TARGET_CMDS +define ZIP_INSTALL_TARGET_CMDS $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) -f unix/Makefile install \ prefix=$(TARGET_DIR)/usr endef -define HOST_INFOZIP_BUILD_CMDS +define HOST_ZIP_BUILD_CMDS $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) \ - CFLAGS="$(HOST_CFLAGS) $(INFOZIP_CFLAGS)" \ + CFLAGS="$(HOST_CFLAGS) $(ZIP_CFLAGS)" \ AS="$(HOSTCC) -c" \ -f unix/Makefile generic endef -define HOST_INFOZIP_INSTALL_CMDS +define HOST_ZIP_INSTALL_CMDS $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D) -f unix/Makefile install \ prefix=$(HOST_DIR)/usr endef diff --git a/package/zmqpp/0002-Allow-building-shared-or-static-library-only.patch b/package/zmqpp/0002-Allow-building-shared-or-static-library-only.patch new file mode 100644 index 00000000000..4eabf234b81 --- /dev/null +++ b/package/zmqpp/0002-Allow-building-shared-or-static-library-only.patch @@ -0,0 +1,81 @@ +From 4c83dd96d1f92627ecdb6b6ed80b8c278aea82f7 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Fri, 20 Nov 2015 19:51:50 +0100 +Subject: [PATCH] Allow building shared or static library only +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Jörg Krause +--- + Makefile | 19 ++++++++++++++++--- + 1 file changed, 16 insertions(+), 3 deletions(-) + +diff --git a/Makefile b/Makefile +index 7d63077..90c7059 100644 +--- a/Makefile ++++ b/Makefile +@@ -57,6 +57,9 @@ LIBRARY_ARCHIVE = lib$(LIBRARY_NAME).a + CLIENT_TARGET = $(LIBRARY_NAME) + TESTS_TARGET = $(LIBRARY_NAME)-tests + ++BUILD_SHARED ?= yes ++BUILD_SHARED ?= yes ++ + CONFIG_FLAGS = + ifeq ($(CONFIG),debug) + CONFIG_FLAGS = -g -fno-inline -ftemplate-depth-1000 +@@ -71,7 +74,7 @@ ifneq (,$(findstring $(CONFIG),release loadtest)) + CONFIG_FLAGS = -O3 -funroll-loops -ffast-math -finline-functions -fomit-frame-pointer -DNO_DEBUG_LOG -DNO_TRACE_LOG -DNDEBUG + endif + +-COMMON_FLAGS = -MMD -std=c++0x -pipe -Wall -fPIC \ ++COMMON_FLAGS = -MMD -std=c++0x -pipe -Wall \ + -DBUILD_ENV=$(CONFIG) \ + -DBUILD_VERSION='"$(APP_VERSION)"' \ + -DBUILD_VERSION_MAJOR=$(VERSION_MAJOR) \ +@@ -82,6 +85,15 @@ COMMON_FLAGS = -MMD -std=c++0x -pipe -Wall -fPIC \ + -DBUILD_CLIENT_NAME='"$(CLIENT_TARGET)"' \ + -I$(SRC_PATH) + ++ifeq ($(BUILD_SHARED),yes) ++COMMON_FLAGS += -fPIC ++LIBRARY_TARGETS += $(LIBRARY_SHARED) ++endif ++ ++ifeq ($(BUILD_STATIC),yes) ++LIBRARY_TARGETS += $(LIBRARY_ARCHIVE) ++endif ++ + COMMON_LIBS = -lzmq + + LIBRARY_LIBS = +@@ -125,9 +137,11 @@ check: $(LIBRARY_SHARED) $(LIBRARY_ARCHIVE) test + + install: + install -m 644 $(ALL_LIBRARY_INCLUDES) $(INCLUDEDIR)/$(LIBRARY_DIR) ++ifeq ($(BUILD_SHARED),yes) + install -m 755 $(BUILD_PATH)/$(LIBRARY_SHARED).$(VERSION_MAJOR) $(LIBDIR)/$(LIBRARY_SHARED).$(APP_VERSION) + ln -sf $(LIBRARY_SHARED).$(APP_VERSION) $(LIBDIR)/$(LIBRARY_SHARED).$(VERSION_MAJOR) + ln -sf $(LIBRARY_SHARED).$(APP_VERSION) $(LIBDIR)/$(LIBRARY_SHARED) ++endif + if [ -f $(BUILD_PATH)/$(CLIENT_TARGET) ]; then install -m 755 $(BUILD_PATH)/$(CLIENT_TARGET) $(BINDIR); fi + $(LDCONFIG) + @echo "use make installcheck to test the install" +@@ -148,7 +162,7 @@ clean: + + client: $(CLIENT_TARGET) + +-library: $(LIBRARY_SHARED) $(LIBRARY_ARCHIVE) ++library: $(LIBRARY_TARGETS) + + # + # BUILD Targets +@@ -187,4 +201,3 @@ test: $(TESTS_TARGET) + $(OBJECT_PATH)/%.o: $(SRC_PATH)/%.cpp + -mkdir -p $(dir $@) + $(CXX) $(CPPFLAGS) $(CXXFLAGS) $(COMMON_FLAGS) $(CONFIG_FLAGS) -c -o $@ $< +- +-- +2.6.2 + diff --git a/package/zmqpp/0003-Install-static-library-for-static-builds.patch b/package/zmqpp/0003-Install-static-library-for-static-builds.patch new file mode 100644 index 00000000000..c4ce2d219f9 --- /dev/null +++ b/package/zmqpp/0003-Install-static-library-for-static-builds.patch @@ -0,0 +1,30 @@ +From 1637443262cc861a161fd7c734bc0610a340335b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?J=C3=B6rg=20Krause?= +Date: Mon, 23 Nov 2015 22:53:09 +0100 +Subject: [PATCH] Install static library for static builds +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Jörg Krause +--- + Makefile | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/Makefile b/Makefile +index 90c7059..abed6fa 100644 +--- a/Makefile ++++ b/Makefile +@@ -142,6 +142,9 @@ ifeq ($(BUILD_SHARED),yes) + ln -sf $(LIBRARY_SHARED).$(APP_VERSION) $(LIBDIR)/$(LIBRARY_SHARED).$(VERSION_MAJOR) + ln -sf $(LIBRARY_SHARED).$(APP_VERSION) $(LIBDIR)/$(LIBRARY_SHARED) + endif ++ifeq ($(BUILD_STATIC),yes) ++ install -m 755 $(BUILD_PATH)/$(LIBRARY_ARCHIVE) $(LIBDIR)/$(LIBRARY_ARCHIVE) ++endif + if [ -f $(BUILD_PATH)/$(CLIENT_TARGET) ]; then install -m 755 $(BUILD_PATH)/$(CLIENT_TARGET) $(BINDIR); fi + $(LDCONFIG) + @echo "use make installcheck to test the install" +-- +2.6.2 + diff --git a/package/zmqpp/Config.in b/package/zmqpp/Config.in index a10602f283c..03792240d7f 100644 --- a/package/zmqpp/Config.in +++ b/package/zmqpp/Config.in @@ -22,6 +22,7 @@ if BR2_PACKAGE_ZMQPP config BR2_PACKAGE_ZMQPP_CLIENT bool "zmqpp client" + depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_THREADS # boost depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS select BR2_PACKAGE_BOOST @@ -30,8 +31,8 @@ config BR2_PACKAGE_ZMQPP_CLIENT Build and install the zmqpp client, a command line tool that can be used to listen or send to zeromq sockets. -comment "zmqpp client needs a toolchain w/ threads" +comment "zmqpp client needs a toolchain w/ dynamic library, threads" depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS - depends on !BR2_TOOLCHAIN_HAS_THREADS + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS endif diff --git a/package/zmqpp/zmqpp.hash b/package/zmqpp/zmqpp.hash new file mode 100644 index 00000000000..7bca39fa413 --- /dev/null +++ b/package/zmqpp/zmqpp.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 92cb5bf7e1df8b99792fe1eb530bf91fced9c2d14159007bec011bb1b8248269 zmqpp-3.2.0.tar.gz +sha256 0b76169a48a0ba9dd581b63787b4852f3922de0c22b7a325cab688c1bafb3dd7 260a9304f6c74272bd3c396f6cca685657b4aff1.patch diff --git a/package/zmqpp/zmqpp.mk b/package/zmqpp/zmqpp.mk index 03c64758a6d..0bb6bbedca4 100644 --- a/package/zmqpp/zmqpp.mk +++ b/package/zmqpp/zmqpp.mk @@ -10,6 +10,7 @@ ZMQPP_INSTALL_STAGING = YES ZMQPP_DEPENDENCIES = zeromq ZMQPP_LICENSE = MIT ZMQPP_LICENSE_FILES = LICENSE +ZMQPP_PATCH = https://github.com/zeromq/zmqpp/commit/260a9304f6c74272bd3c396f6cca685657b4aff1.patch ZMQPP_MAKE_OPTS = LD="$(TARGET_CXX)" BUILD_PATH=./build PREFIX=/usr ZMQPP_LDFLAGS = $(TARGET_LDFLAGS) -lpthread @@ -18,10 +19,18 @@ ifeq ($(BR2_PACKAGE_ZMQPP_CLIENT),y) ZMQPP_DEPENDENCIES += boost endif +ifeq ($(BR2_STATIC_LIBS),y) +ZMQPP_MAKE_OPTS += BUILD_STATIC=yes BUILD_SHARED=no +else ifeq ($(BR2_SHARED_STATIC_LIBS),y) +ZMQPP_MAKE_OPTS += BUILD_STATIC=yes BUILD_SHARED=yes +else ifeq ($(BR2_SHARED_LIBS),y) +ZMQPP_MAKE_OPTS += BUILD_STATIC=no BUILD_SHARED=yes +endif + define ZMQPP_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ LDFLAGS="$(ZMQPP_LDFLAGS)" \ - $(ZMQPP_MAKE_OPTS) $(if $(BR2_PACKAGE_ZMQPP_CLIENT),all) -C $(@D) + $(ZMQPP_MAKE_OPTS) $(if $(BR2_PACKAGE_ZMQPP_CLIENT),client,library) -C $(@D) endef define ZMQPP_INSTALL_TARGET_CMDS diff --git a/package/znc/0001-Add-time.h-includes-where-appropiate.patch b/package/znc/0001-Add-time.h-includes-where-appropiate.patch new file mode 100644 index 00000000000..c8ba6d450a9 --- /dev/null +++ b/package/znc/0001-Add-time.h-includes-where-appropiate.patch @@ -0,0 +1,194 @@ +From 9a51195e916f14a36c2a2a809f2393e5ed2424a3 Mon Sep 17 00:00:00 2001 +From: Gustavo Zacarias +Date: Thu, 6 Aug 2015 11:20:54 -0300 +Subject: [PATCH] Add includes where appropiate + +Signed-off-by: Gustavo Zacarias +--- + modules/adminlog.cpp | 1 + + modules/ctcpflood.cpp | 1 + + modules/flooddetach.cpp | 1 + + modules/lastseen.cpp | 1 + + modules/log.cpp | 1 + + modules/simple_away.cpp | 1 + + src/Buffer.cpp | 1 + + src/FileUtils.cpp | 1 + + src/IRCSock.cpp | 1 + + src/User.cpp | 1 + + src/WebModules.cpp | 1 + + src/ZNCDebug.cpp | 1 + + src/main.cpp | 1 + + src/znc.cpp | 1 + + 14 files changed, 14 insertions(+) + +diff --git a/modules/adminlog.cpp b/modules/adminlog.cpp +index d08369e..1636799 100644 +--- a/modules/adminlog.cpp ++++ b/modules/adminlog.cpp +@@ -20,6 +20,7 @@ + #include + + #include ++#include + + class CAdminLogMod : public CModule { + public: +diff --git a/modules/ctcpflood.cpp b/modules/ctcpflood.cpp +index 7697ef8..c105ef7 100644 +--- a/modules/ctcpflood.cpp ++++ b/modules/ctcpflood.cpp +@@ -16,6 +16,7 @@ + + #include + #include ++#include + + class CCtcpFloodMod : public CModule { + public: +diff --git a/modules/flooddetach.cpp b/modules/flooddetach.cpp +index 9c41734..cd88bd2 100644 +--- a/modules/flooddetach.cpp ++++ b/modules/flooddetach.cpp +@@ -16,6 +16,7 @@ + + #include + #include ++#include + + using std::map; + +diff --git a/modules/lastseen.cpp b/modules/lastseen.cpp +index 416a111..414310f 100644 +--- a/modules/lastseen.cpp ++++ b/modules/lastseen.cpp +@@ -16,6 +16,7 @@ + + #include + #include ++#include + + using std::map; + using std::pair; +diff --git a/modules/log.cpp b/modules/log.cpp +index 2f3124a..e238bb1 100644 +--- a/modules/log.cpp ++++ b/modules/log.cpp +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + #include + + using std::vector; +diff --git a/modules/simple_away.cpp b/modules/simple_away.cpp +index 57d6e7a..2f73b0a 100644 +--- a/modules/simple_away.cpp ++++ b/modules/simple_away.cpp +@@ -16,6 +16,7 @@ + + #include + #include ++#include + + #define SIMPLE_AWAY_DEFAULT_REASON "Auto away at %s" + #define SIMPLE_AWAY_DEFAULT_TIME 60 +diff --git a/src/Buffer.cpp b/src/Buffer.cpp +index 4715f76..dc14642 100644 +--- a/src/Buffer.cpp ++++ b/src/Buffer.cpp +@@ -17,6 +17,7 @@ + #include + #include + #include ++#include + + CBufLine::CBufLine(const CString& sFormat, const CString& sText, const timeval* ts) : m_sFormat(sFormat), m_sText(sText), m_time() { + if (ts == nullptr) +diff --git a/src/FileUtils.cpp b/src/FileUtils.cpp +index d358aa4..92218f3 100644 +--- a/src/FileUtils.cpp ++++ b/src/FileUtils.cpp +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + + #ifndef HAVE_LSTAT + # define lstat(a, b) stat(a, b) +diff --git a/src/IRCSock.cpp b/src/IRCSock.cpp +index 738b5bf..c97b8fe 100644 +--- a/src/IRCSock.cpp ++++ b/src/IRCSock.cpp +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + + using std::set; + using std::vector; +diff --git a/src/User.cpp b/src/User.cpp +index f3b5b91..580b52d 100644 +--- a/src/User.cpp ++++ b/src/User.cpp +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + #include + + using std::vector; +diff --git a/src/WebModules.cpp b/src/WebModules.cpp +index 832a2e1..74e56de 100644 +--- a/src/WebModules.cpp ++++ b/src/WebModules.cpp +@@ -19,6 +19,7 @@ + #include + #include + #include ++#include + #include + #include + +diff --git a/src/ZNCDebug.cpp b/src/ZNCDebug.cpp +index 6e36b57..be2f77f 100644 +--- a/src/ZNCDebug.cpp ++++ b/src/ZNCDebug.cpp +@@ -18,6 +18,7 @@ + #include + #include + #include ++#include + + bool CDebug::stdoutIsTTY = true; + bool CDebug::debug = +diff --git a/src/main.cpp b/src/main.cpp +index 465e1a0..cbe72bf 100644 +--- a/src/main.cpp ++++ b/src/main.cpp +@@ -16,6 +16,7 @@ + + #include + #include ++#include + + #if defined(HAVE_LIBSSL) && defined(HAVE_PTHREAD) + #include +diff --git a/src/znc.cpp b/src/znc.cpp +index 624b92c..4c1ffcd 100644 +--- a/src/znc.cpp ++++ b/src/znc.cpp +@@ -21,6 +21,7 @@ + #include + #include + #include ++#include + #include + #include + +-- +2.4.6 + diff --git a/package/znc/0001-time.patch b/package/znc/0001-time.patch deleted file mode 100644 index 38661398a12..00000000000 --- a/package/znc/0001-time.patch +++ /dev/null @@ -1,303 +0,0 @@ -From 18d6daf4793fb7e9750175bd46b17fe1965b78dd Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni -Date: Tue, 6 May 2014 22:00:11 +0200 -Subject: [PATCH] Add missing includes - -Submitted upstream at https://github.com/znc/znc/pull/569. - -Signed-off-by: Thomas Petazzoni ---- - modules/adminlog.cpp | 1 + - modules/awaystore.cpp | 2 ++ - modules/crypt.cpp | 2 ++ - modules/ctcpflood.cpp | 2 ++ - modules/flooddetach.cpp | 2 ++ - modules/lastseen.cpp | 2 ++ - modules/log.cpp | 2 ++ - modules/savebuff.cpp | 2 ++ - modules/schat.cpp | 2 ++ - modules/simple_away.cpp | 2 ++ - src/Buffer.cpp | 2 ++ - src/Csocket.cpp | 2 ++ - src/FileUtils.cpp | 2 ++ - src/HTTPSock.cpp | 1 + - src/IRCSock.cpp | 2 ++ - src/User.cpp | 1 + - src/Utils.cpp | 2 ++ - src/WebModules.cpp | 2 ++ - src/ZNCDebug.cpp | 1 + - src/main.cpp | 1 + - src/znc.cpp | 2 ++ - 21 files changed, 37 insertions(+) - -diff --git a/modules/adminlog.cpp b/modules/adminlog.cpp -index 77577b1..16dd665 100644 ---- a/modules/adminlog.cpp -+++ b/modules/adminlog.cpp -@@ -20,6 +20,7 @@ - #include - - #include -+#include - - class CAdminLogMod : public CModule { - public: -diff --git a/modules/awaystore.cpp b/modules/awaystore.cpp -index da75260..56349df 100644 ---- a/modules/awaystore.cpp -+++ b/modules/awaystore.cpp -@@ -30,6 +30,8 @@ - #include - #include - -+#include -+ - using std::vector; - using std::map; - -diff --git a/modules/crypt.cpp b/modules/crypt.cpp -index fcc664b..8f9018f 100644 ---- a/modules/crypt.cpp -+++ b/modules/crypt.cpp -@@ -34,6 +34,8 @@ - #include - #include - -+#include -+ - #define REQUIRESSL 1 - #define NICK_PREFIX_KEY "[nick-prefix]" - -diff --git a/modules/ctcpflood.cpp b/modules/ctcpflood.cpp -index ac154e2..f2ce27f 100644 ---- a/modules/ctcpflood.cpp -+++ b/modules/ctcpflood.cpp -@@ -17,6 +17,8 @@ - #include - #include - -+#include -+ - class CCtcpFloodMod : public CModule { - public: - MODCONSTRUCTOR(CCtcpFloodMod) { -diff --git a/modules/flooddetach.cpp b/modules/flooddetach.cpp -index f4ed892..0ffb651 100644 ---- a/modules/flooddetach.cpp -+++ b/modules/flooddetach.cpp -@@ -17,6 +17,8 @@ - #include - #include - -+#include -+ - using std::map; - - class CFloodDetachMod : public CModule { -diff --git a/modules/lastseen.cpp b/modules/lastseen.cpp -index bd6eb9b..b3b209f 100644 ---- a/modules/lastseen.cpp -+++ b/modules/lastseen.cpp -@@ -17,6 +17,8 @@ - #include - #include - -+#include -+ - using std::map; - using std::pair; - using std::multimap; -diff --git a/modules/log.cpp b/modules/log.cpp -index 260b577..e718d76 100644 ---- a/modules/log.cpp -+++ b/modules/log.cpp -@@ -21,6 +21,8 @@ - #include - #include - -+#include -+ - using std::vector; - - class CLogMod: public CModule { -diff --git a/modules/savebuff.cpp b/modules/savebuff.cpp -index 8a85153..2e0ed5c 100644 ---- a/modules/savebuff.cpp -+++ b/modules/savebuff.cpp -@@ -29,6 +29,8 @@ - #include - #include - -+#include -+ - using std::vector; - - #define CRYPT_VERIFICATION_TOKEN "::__:SAVEBUFF:__::" -diff --git a/modules/schat.cpp b/modules/schat.cpp -index 98d03b4..5a7f1a0 100644 ---- a/modules/schat.cpp -+++ b/modules/schat.cpp -@@ -25,6 +25,8 @@ - #include - #include - -+#include -+ - using std::pair; - using std::stringstream; - using std::map; -diff --git a/modules/simple_away.cpp b/modules/simple_away.cpp -index a1e5927..67faeea 100644 ---- a/modules/simple_away.cpp -+++ b/modules/simple_away.cpp -@@ -17,6 +17,8 @@ - #include - #include - -+#include -+ - #define SIMPLE_AWAY_DEFAULT_REASON "Auto away at %s" - #define SIMPLE_AWAY_DEFAULT_TIME 60 - -diff --git a/src/Buffer.cpp b/src/Buffer.cpp -index eefbb29..55ecd72 100644 ---- a/src/Buffer.cpp -+++ b/src/Buffer.cpp -@@ -17,6 +17,8 @@ - #include - #include - -+#include -+ - CBufLine::CBufLine(const CString& sFormat, const CString& sText, const timeval* ts) { - m_sFormat = sFormat; - m_sText = sText; -diff --git a/src/Csocket.cpp b/src/Csocket.cpp -index 2e4cb14..ca6ed38 100644 ---- a/src/Csocket.cpp -+++ b/src/Csocket.cpp -@@ -53,6 +53,8 @@ - #include - #endif /* HAVE_ICU */ - -+#include -+ - #include - - #define CS_SRANDBUFFER 128 -diff --git a/src/FileUtils.cpp b/src/FileUtils.cpp -index 7224a49..4c8f1d3 100644 ---- a/src/FileUtils.cpp -+++ b/src/FileUtils.cpp -@@ -23,6 +23,8 @@ - #include - #include - -+#include -+ - #ifndef HAVE_LSTAT - # define lstat(a, b) stat(a, b) - #endif -diff --git a/src/HTTPSock.cpp b/src/HTTPSock.cpp -index ab03130..36bf52b 100644 ---- a/src/HTTPSock.cpp -+++ b/src/HTTPSock.cpp -@@ -18,6 +18,7 @@ - #include - #include - -+#include - - #ifdef HAVE_ZLIB - #include -diff --git a/src/IRCSock.cpp b/src/IRCSock.cpp -index 2ef12f6..d0c56a7 100644 ---- a/src/IRCSock.cpp -+++ b/src/IRCSock.cpp -@@ -20,6 +20,8 @@ - #include - #include - -+#include -+ - using std::set; - using std::vector; - using std::map; -diff --git a/src/User.cpp b/src/User.cpp -index cf664f1..4a64f83 100644 ---- a/src/User.cpp -+++ b/src/User.cpp -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - - using std::vector; - using std::set; -diff --git a/src/Utils.cpp b/src/Utils.cpp -index 33c83de..e0862dd 100644 ---- a/src/Utils.cpp -+++ b/src/Utils.cpp -@@ -26,6 +26,8 @@ - #include - #include - -+#include -+ - using std::map; - using std::stringstream; - using std::vector; -diff --git a/src/WebModules.cpp b/src/WebModules.cpp -index d61ba23..ddd88e0 100644 ---- a/src/WebModules.cpp -+++ b/src/WebModules.cpp -@@ -22,6 +22,8 @@ - #include - #include - -+#include -+ - using std::pair; - using std::vector; - -diff --git a/src/ZNCDebug.cpp b/src/ZNCDebug.cpp -index 01d06b4..cc83298 100644 ---- a/src/ZNCDebug.cpp -+++ b/src/ZNCDebug.cpp -@@ -18,6 +18,7 @@ - #include - #include - #include -+#include - - bool CDebug::stdoutIsTTY = true; - bool CDebug::debug = -diff --git a/src/main.cpp b/src/main.cpp -index ac9d691..7d74f8e 100644 ---- a/src/main.cpp -+++ b/src/main.cpp -@@ -16,6 +16,7 @@ - - #include - #include -+#include - - using std::cout; - using std::endl; -diff --git a/src/znc.cpp b/src/znc.cpp -index 9e66f3d..dce1372 100644 ---- a/src/znc.cpp -+++ b/src/znc.cpp -@@ -21,6 +21,8 @@ - #include - #include - -+#include -+ - using std::endl; - using std::cout; - using std::map; --- -1.9.2 - diff --git a/package/znc/0002-csocket-timeh.patch b/package/znc/0002-csocket-timeh.patch new file mode 100644 index 00000000000..cbd435fc82b --- /dev/null +++ b/package/znc/0002-csocket-timeh.patch @@ -0,0 +1,19 @@ +Include time.h since time_t is used. + +Status: not upstream, seems to be fixed in newer CSocket versions in a +different way but it hasn't been updated/bundled in znc yet. + +Signed-off-by: Gustavo Zacarias + +diff -Nura znc-1.6.1.orig/src/Csocket.cpp znc-1.6.1.cs/src/Csocket.cpp +--- znc-1.6.1.orig/src/Csocket.cpp 2015-08-06 10:14:45.256246307 -0300 ++++ znc-1.6.1.cs/src/Csocket.cpp 2015-08-06 10:27:25.380446888 -0300 +@@ -54,6 +54,8 @@ + #include + #endif /* HAVE_ICU */ + ++#include ++ + #include + + #define CS_SRANDBUFFER 128 diff --git a/package/znc/Config.in b/package/znc/Config.in index 274e5370b25..154d4b0789c 100644 --- a/package/znc/Config.in +++ b/package/znc/Config.in @@ -2,11 +2,14 @@ config BR2_PACKAGE_ZNC bool "znc" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 help Advanced IRC bouncer http://www.znc.in -comment "znc needs a toolchain w/ C++" - depends on !BR2_INSTALL_LIBSTDCPP +comment "znc needs a toolchain w/ C++, dynamic library, gcc >= 4.7" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \ + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 depends on BR2_USE_MMU diff --git a/package/znc/znc.hash b/package/znc/znc.hash new file mode 100644 index 00000000000..a0b27aaff85 --- /dev/null +++ b/package/znc/znc.hash @@ -0,0 +1,2 @@ +# Locally calculated after checking pgp signature +sha256 eef17727c0c6433fed1affba0ea76ec7fd60198d2f3c234d8529bd5fb26f0593 znc-1.6.2.tar.gz diff --git a/package/znc/znc.mk b/package/znc/znc.mk index 779a7b128dd..0844b0f1def 100644 --- a/package/znc/znc.mk +++ b/package/znc/znc.mk @@ -4,25 +4,18 @@ # ################################################################################ -ZNC_VERSION = b396cafdb249544164ed02942a5babba59e519a3 -ZNC_SITE = $(call github,znc,znc,$(ZNC_VERSION)) +ZNC_VERSION = 1.6.2 +ZNC_SITE = http://znc.in/releases ZNC_LICENSE = Apache-2.0 ZNC_LICENSE_FILES = LICENSE -ZNC_DEPENDENCIES = host-pkgconf host-autoconf host-automake +ZNC_DEPENDENCIES = host-pkgconf ZNC_CONF_OPTS = --disable-perl -# The standard _AUTORECONF = YES invocation doesn't work for this -# package, because it does not use automake in a normal way. -define ZNC_RUN_AUTOGEN - cd $(@D) && PATH=$(BR_PATH) ./autogen.sh -endef -ZNC_PRE_CONFIGURE_HOOKS += ZNC_RUN_AUTOGEN - ifeq ($(BR2_PACKAGE_ICU),y) ZNC_DEPENDENCIES += icu -ZNC_CONF_OPTS += --enable-icu +ZNC_CONF_OPTS += --enable-charset else -ZNC_CONF_OPTS += --disable-icu +ZNC_CONF_OPTS += --disable-charset endif ifeq ($(BR2_PACKAGE_OPENSSL),y) diff --git a/package/zsh/zsh.hash b/package/zsh/zsh.hash index 358033f582f..67931626520 100644 --- a/package/zsh/zsh.hash +++ b/package/zsh/zsh.hash @@ -1,2 +1,4 @@ # From http://www.zsh.org/pub/MD5SUM -md5 76726ff50309e628de670476e0508b3a zsh-5.0.7.tar.gz +md5 afe96fde08b70e23c1cab1ca7a68fb34 zsh-5.2.tar.xz +# Calculated based on the hash above +sha256 f17916320ffaa844bbd7ce48ceeb5945fc5f3eff64b149b4229bbfbdf3795a9d zsh-5.2.tar.xz diff --git a/package/zsh/zsh.mk b/package/zsh/zsh.mk index ffc567dc642..84dbbde56f9 100644 --- a/package/zsh/zsh.mk +++ b/package/zsh/zsh.mk @@ -4,13 +4,36 @@ # ################################################################################ -ZSH_VERSION = 5.0.7 +ZSH_VERSION = 5.2 ZSH_SITE = http://www.zsh.org/pub +ZSH_SOURCE = zsh-$(ZSH_VERSION).tar.xz ZSH_DEPENDENCIES = ncurses ZSH_CONF_OPTS = --bindir=/bin ZSH_LICENSE = MIT-like ZSH_LICENSE_FILES = LICENCE +ifeq ($(BR2_PACKAGE_GDBM),y) +ZSH_CONF_OPTS += --enable-gdbm +ZSH_DEPENDENCIES += gdbm +else +ZSH_CONF_OPTS += --disable-gdbm +endif + +ifeq ($(BR2_PACKAGE_LIBCAP),y) +ZSH_CONF_OPTS += --enable-cap +ZSH_DEPENDENCIES += libcap +else +ZSH_CONF_OPTS += --disable-cap +endif + +ifeq ($(BR2_PACKAGE_PCRE),y) +ZSH_CONF_OPTS += --enable-pcre +ZSH_CONF_ENV += ac_cv_prog_PCRECONF=$(STAGING_DIR)/usr/bin/pcre-config +ZSH_DEPENDENCIES += pcre +else +ZSH_CONF_OPTS += --disable-pcre +endif + # Remove versioned zsh-x.y.z binary taking up space define ZSH_TARGET_INSTALL_FIXUPS rm -f $(TARGET_DIR)/bin/zsh-$(ZSH_VERSION) diff --git a/package/zxing-cpp/Config.in b/package/zxing-cpp/Config.in new file mode 100644 index 00000000000..c1109219a0c --- /dev/null +++ b/package/zxing-cpp/Config.in @@ -0,0 +1,14 @@ +comment "zxing-cpp needs a toolchain w/ C++, dynamic library" + depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS + +config BR2_PACKAGE_ZXING_CPP + bool "zxing-cpp" + depends on !BR2_STATIC_LIBS + depends on BR2_INSTALL_LIBSTDCPP + help + ZXing-cpp (pronounced "zebra crossing") is an open-source, + multi-format 1D/2D barcode image processing library + implemented in Java, with ports to other languages. This + compiles the C++ port. + + https://github.com/glassechidna/zxing-cpp diff --git a/package/zxing-cpp/zxing-cpp.hash b/package/zxing-cpp/zxing-cpp.hash new file mode 100644 index 00000000000..e38a61236ad --- /dev/null +++ b/package/zxing-cpp/zxing-cpp.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 164c0bc9f1ce2ff5659fddce6da71f8cdda091751f3b71140c090b58451a2b04 zxing-cpp-fa34227d26e0b388e65b81936a2681952928f5be.tar.gz diff --git a/package/zxing-cpp/zxing-cpp.mk b/package/zxing-cpp/zxing-cpp.mk new file mode 100644 index 00000000000..7344dc1c063 --- /dev/null +++ b/package/zxing-cpp/zxing-cpp.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# zxing-cpp +# +################################################################################ + +ZXING_CPP_VERSION = fa34227d26e0b388e65b81936a2681952928f5be +ZXING_CPP_SITE = $(call github,glassechidna,zxing-cpp,$(ZXING_CPP_VERSION)) +ZXING_CPP_LICENSE = Apache-2.0 +ZXING_CPP_LICENSE_FILES = COPYING +ZXING_CPP_INSTALL_STAGING = YES +ZXING_CPP_SUPPORTS_IN_SOURCE_BUILD = NO + +ifeq ($(BR2_PACKAGE_LIBICONV),y) +ZXING_CPP_DEPENDENCIES += libiconv +endif + +$(eval $(cmake-package)) diff --git a/package/zxing/0001-makefile.patch b/package/zxing/0001-makefile.patch deleted file mode 100644 index 66896bf3277..00000000000 --- a/package/zxing/0001-makefile.patch +++ /dev/null @@ -1,30 +0,0 @@ -[PATCH] add Makefile - -The scons based build system doesn't handle cross compilation, special -compiler flags or (un)installation, so add a simple makefile instead -which does. - -Signed-off-by: Peter Korsgaard ---- - cpp/core/src/Makefile | 14 ++++++++++++++ - 1 file changed, 14 insertions(+) - -Index: zxing-2.0/cpp/core/src/Makefile -=================================================================== ---- /dev/null -+++ zxing-2.0/cpp/core/src/Makefile -@@ -0,0 +1,14 @@ -+override CXXFLAGS += -I. -+SRCS := $(shell find -name '*.cpp') -+ -+libzxing.a: $(SRCS:.cpp=.o) -+ $(AR) $(ARFLAGS) $@ $^ -+ -+install: libzxing.a -+ install -D -m 0644 $^ $(DESTDIR)/usr/lib/$^ -+ find -name '*.h' -exec install -m 0644 -D "{}" \ -+ "$(DESTDIR)/usr/include/{}" ";" -+ -+uninstall: -+ rm -f $(DESTDIR)/usr/lib/libzxing.a -+ rm -rf $(DESTDIR)/usr/include/zxing diff --git a/package/zxing/Config.in b/package/zxing/Config.in deleted file mode 100644 index 1e04635fabf..00000000000 --- a/package/zxing/Config.in +++ /dev/null @@ -1,13 +0,0 @@ -comment "zxing needs a toolchain w/ C++" - depends on !BR2_INSTALL_LIBSTDCPP - -config BR2_PACKAGE_ZXING - bool "zxing" - depends on BR2_INSTALL_LIBSTDCPP - help - ZXing (pronounced "zebra crossing") is an open-source, - multi-format 1D/2D barcode image processing library - implemented in Java, with ports to other languages. This - compiles the C++ port. - - http://code.google.com/p/zxing/ diff --git a/package/zxing/zxing.mk b/package/zxing/zxing.mk deleted file mode 100644 index 94e8b1f724e..00000000000 --- a/package/zxing/zxing.mk +++ /dev/null @@ -1,40 +0,0 @@ -################################################################################ -# -# zxing -# -################################################################################ - -ZXING_VERSION = 2.3.0 -ZXING_SITE = http://zxing.googlecode.com/files -ZXING_SOURCE = ZXing-$(ZXING_VERSION).zip -ZXING_LICENSE = Apache-2.0 -ZXING_LICENSE_FILES = COPYING -ZXING_INSTALL_STAGING = YES - -ifneq ($(BR2_ENABLE_LOCALE),y) -ifeq ($(BR2_PACKAGE_LIBICONV),y) -ZXING_DEPENDENCIES += libiconv -else -# There is no locale support in the toolchain and libiconv -# is not available so disable iconv support in zxing -ZING_MAKE_OPTS = CXXFLAGS+="-DNO_ICONV" -endif -endif - -define ZXING_EXTRACT_CMDS - $(UNZIP) -d $(BUILD_DIR) $(DL_DIR)/$(ZXING_SOURCE) -endef - -define ZXING_BUILD_CMDS - $(MAKE) -C $(@D)/cpp/core/src $(TARGET_CONFIGURE_OPTS) $(ZING_MAKE_OPTS) -endef - -define ZXING_INSTALL_STAGING_CMDS - $(MAKE) -C $(@D)/cpp/core/src DESTDIR=$(STAGING_DIR) install -endef - -define ZXING_INSTALL_TARGET_CMDS - $(MAKE) -C $(@D)/cpp/core/src DESTDIR=$(TARGET_DIR) install -endef - -$(eval $(generic-package)) diff --git a/package/zyre/Config.in b/package/zyre/Config.in index 95cbf95bb47..a6aef607091 100644 --- a/package/zyre/Config.in +++ b/package/zyre/Config.in @@ -4,9 +4,6 @@ config BR2_PACKAGE_ZYRE depends on BR2_USE_WCHAR # zeromq depends on BR2_TOOLCHAIN_HAS_THREADS # zeromq depends on BR2_USE_MMU # czmq - # uClibc toolchains provided by ADI don't have AI_ADDRCONFIG - # support, needed by czmq - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 select BR2_PACKAGE_CZMQ select BR2_PACKAGE_ZEROMQ help @@ -17,6 +14,5 @@ config BR2_PACKAGE_ZYRE comment "zyre needs a toolchain w/ C++, wchar, threads" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 depends on !(BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR && \ BR2_TOOLCHAIN_HAS_THREADS) diff --git a/package/zyre/zyre.mk b/package/zyre/zyre.mk index 661dddc82c5..b17dfd022d3 100644 --- a/package/zyre/zyre.mk +++ b/package/zyre/zyre.mk @@ -4,12 +4,12 @@ # ################################################################################ -ZYRE_VERSION = v1.0.0 +ZYRE_VERSION = a351468b7d313fc90c446668122365851a9c60e4 ZYRE_SITE = $(call github,zeromq,zyre,$(ZYRE_VERSION)) ZYRE_LICENSE = LGPLv3+ ZYRE_LICENSE_FILES = COPYING COPYING.LESSER ZYRE_INSTALL_STAGING = YES -ZYRE_DEPENDENCIES = czmq zeromq +ZYRE_DEPENDENCIES = czmq zeromq host-pkgconf ZYRE_AUTORECONF = YES define ZYRE_CREATE_CONFIG_DIR diff --git a/support/dependencies/dependencies.sh b/support/dependencies/dependencies.sh index 01ad82887c7..3146401a9d0 100755 --- a/support/dependencies/dependencies.sh +++ b/support/dependencies/dependencies.sh @@ -236,10 +236,26 @@ if grep -q ^BR2_HOSTARCH_NEEDS_IA32_COMPILER=y $BR2_CONFIG ; then fi fi -# Check that the Perl installation is complete enough to build -# host-autoconf. -if ! perl -e "require Data::Dumper" > /dev/null 2>&1 ; then - echo "Your Perl installation is not complete enough, at least Data::Dumper is missing." - echo "On Debian/Ubuntu distributions, install the 'perl' package." +# Check that the Perl installation is complete enough for Buildroot. +required_perl_modules="Data::Dumper" # Needed to build host-autoconf +required_perl_modules="$required_perl_modules Thread::Queue" # Used by host-automake + +# This variable will keep the modules that are missing in your system. +missing_perl_modules="" + +for pm in $required_perl_modules ; do + if ! perl -e "require $pm" > /dev/null 2>&1 ; then + missing_perl_modules="$missing_perl_modules $pm" + fi +done + +if [ -n "$missing_perl_modules" ] ; then + echo "Your Perl installation is not complete enough; at least the following" + echo "modules are missing:" + echo + for pm in $missing_perl_modules ; do + printf "\t $pm\n" + done + echo exit 1 fi diff --git a/support/download/bzr b/support/download/bzr index c5674665310..e18b01f39c9 100755 --- a/support/download/bzr +++ b/support/download/bzr @@ -26,4 +26,28 @@ repo="${2}" rev="${3}" basename="${4}" -${BZR} export ${verbose} --root="${basename}/" --format=tgz "${output}" "${repo}" -r "${rev}" +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_bzr() { + eval ${BZR} "${@}" +} + +# --per-file-timestamps comes with bzr-2.2 (released August 2010), +# so only pass it if bzr is recent enough. We compute versions as: +# major*1000 + minor +bzr_min_version=2002 +bzr_version=$(($(bzr --version | + sed -r -n 's/^Bazaar \(bzr\) ([[:digit:]]+)\.([[:digit:]]+)\..*$/\1*1000+\2/p') + )) + +# If the version is recent enough, we can generate reproducible +# archives; otherwise, we just hope for the best (as it would +# be downloaded from the BR mirror if what we generate here does +# not match the hash we have for it). +if [ ${bzr_version} -ge ${bzr_min_version} ]; then + timestamp_opt="--per-file-timestamps" +fi + +_bzr export ${verbose} --root="'${basename}/'" --format=tgz \ + ${timestamp_opt} - "'${repo}'" -r "'${rev}'" \ + >"${output}" diff --git a/support/download/cp b/support/download/cp index 6e29eef1ecc..09ce3d1100f 100755 --- a/support/download/cp +++ b/support/download/cp @@ -28,4 +28,10 @@ shift $((OPTIND-1)) output="${1}" source="${2}" -${LOCALFILES} ${verbose} "${source}" "${output}" +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_localfiles() { + eval ${LOCALFILES} "${@}" +} + +_localfiles ${verbose} "'${source}'" "'${output}'" diff --git a/support/download/cvs b/support/download/cvs index bfac73b1f1a..7980389a4ee 100755 --- a/support/download/cvs +++ b/support/download/cvs @@ -26,6 +26,12 @@ rev="${3}" rawname="${4}" basename="${5}" +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_cvs() { + eval ${CVS} "${@}" +} + if [[ ${rev} =~ ^[0-9] ]]; then # Date, because a tag or a branch cannot begin with a number select="-D" @@ -34,8 +40,14 @@ else select="-r" fi +# The absence of an initial : on ${repo} means access method undefined +if [[ ! "${repo}" =~ ^: ]]; then + # defaults to anonymous pserver + repo=":pserver:anonymous@${repo}" +fi + export TZ=UTC -${CVS} ${verbose} -z3 -d":pserver:anonymous@${repo}" \ - co -d "${basename}" ${select} "${rev}" -P "${rawname}" +_cvs ${verbose} -z3 -d"'${repo}'" \ + co -d "'${basename}'" ${select} "'${rev}'" -P "'${rawname}'" tar czf "${output}" "${basename}" diff --git a/support/download/git b/support/download/git index 0e6103b648b..314b388fbc9 100755 --- a/support/download/git +++ b/support/download/git @@ -25,6 +25,12 @@ repo="${2}" cset="${3}" basename="${4}" +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_git() { + eval ${GIT} "${@}" +} + # Try a shallow clone, since it is faster than a full clone - but that only # works if the version is a ref (tag or branch). Before trying to do a shallow # clone we check if ${cset} is in the list provided by git ls-remote. If not @@ -33,9 +39,9 @@ basename="${4}" # Messages for the type of clone used are provided to ease debugging in case of # problems git_done=0 -if [ -n "$(${GIT} ls-remote "${repo}" "${cset}" 2>&1)" ]; then +if [ -n "$(_git ls-remote "'${repo}'" "'${cset}'" 2>&1)" ]; then printf "Doing shallow clone\n" - if ${GIT} clone ${verbose} --depth 1 -b "${cset}" --bare "${repo}" "${basename}"; then + if _git clone ${verbose} --depth 1 -b "'${cset}'" --bare "'${repo}'" "'${basename}'"; then git_done=1 else printf "Shallow clone failed, falling back to doing a full clone\n" @@ -43,10 +49,10 @@ if [ -n "$(${GIT} ls-remote "${repo}" "${cset}" 2>&1)" ]; then fi if [ ${git_done} -eq 0 ]; then printf "Doing full clone\n" - ${GIT} clone ${verbose} --bare "${repo}" "${basename}" + _git clone ${verbose} --mirror "'${repo}'" "'${basename}'" fi GIT_DIR="${basename}" \ -${GIT} archive --prefix="${basename}/" -o "${output}.tmp" --format=tar "${cset}" +_git archive --prefix="'${basename}/'" -o "'${output}.tmp'" --format=tar "'${cset}'" -gzip <"${output}.tmp" >"${output}" +gzip -n <"${output}.tmp" >"${output}" diff --git a/support/download/hg b/support/download/hg index d6654a1fb61..25cb4e9d351 100755 --- a/support/download/hg +++ b/support/download/hg @@ -25,8 +25,14 @@ repo="${2}" cset="${3}" basename="${4}" -${HG} clone ${verbose} --noupdate --rev "${cset}" "${repo}" "${basename}" +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_hg() { + eval ${HG} "${@}" +} -${HG} archive ${verbose} --repository "${basename}" --type tgz \ - --prefix "${basename}" --rev "${cset}" \ - "${output}" +_hg clone ${verbose} --noupdate "'${repo}'" "'${basename}'" + +_hg archive ${verbose} --repository "'${basename}'" --type tgz \ + --prefix "'${basename}'" --rev "'${cset}'" \ + - >"${output}" diff --git a/support/download/scp b/support/download/scp index 1a62f30a2fd..95cf502be2f 100755 --- a/support/download/scp +++ b/support/download/scp @@ -23,4 +23,10 @@ shift $((OPTIND-1)) output="${1}" url="${2}" -${SCP} ${verbose} "${url}" "${output}" +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_scp() { + eval ${SCP} "${@}" +} + +_scp ${verbose} "'${url}'" "'${output}'" diff --git a/support/download/svn b/support/download/svn index 558bca0fa39..4dcdd06239d 100755 --- a/support/download/svn +++ b/support/download/svn @@ -25,6 +25,12 @@ repo="${2}" rev="${3}" basename="${4}" -${SVN} export ${verbose} "${repo}@${rev}" "${basename}" +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_svn() { + eval ${SVN} "${@}" +} + +_svn export ${verbose} "'${repo}@${rev}'" "'${basename}'" tar czf "${output}" "${basename}" diff --git a/support/download/wget b/support/download/wget index 885bcf14ff6..0fc7ffa94e5 100755 --- a/support/download/wget +++ b/support/download/wget @@ -23,4 +23,10 @@ shift $((OPTIND-1)) output="${1}" url="${2}" -${WGET} ${verbose} -O "${output}" "${url}" +# Caller needs to single-quote its arguments to prevent them from +# being expanded a second time (in case there are spaces in them) +_wget() { + eval ${WGET} "${@}" +} + +_wget ${verbose} -O "'${output}'" "'${url}'" diff --git a/support/kconfig/merge_config.sh b/support/kconfig/merge_config.sh index 81b0c61bb9e..8a1708b50fb 100755 --- a/support/kconfig/merge_config.sh +++ b/support/kconfig/merge_config.sh @@ -82,7 +82,7 @@ shift; MERGE_LIST=$* SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(CONFIG_[a-zA-Z0-9_]*\)[= ].*/\2/p" -TMP_FILE=$(mktemp ./.tmp.config.XXXXXXXXXX) +TMP_FILE=$(mktemp -t .tmp.config.XXXXXXXXXX) echo "Using $INITFILE as base" cat $INITFILE > $TMP_FILE diff --git a/support/legal-info/README.header b/support/legal-info/README.header index 3321adb7ed2..d07c45d912a 100644 --- a/support/legal-info/README.header +++ b/support/legal-info/README.header @@ -12,12 +12,12 @@ This material is composed of the following items. * The Buildroot configuration file; this has been saved in buildroot.config. * The toolchain (cross-compiler and related tools) used to generate all the compiled programs. - Note: this has not been saved due to technical limitations, you must - collect it manually. + Note: this may have not been saved due to technical limitations, you may + need to collect it manually. * The source code for all packages; this has been saved in the sources/ - subdirectory (except for the proprietary packages, which have not been - saved); patches applied to some packages by Buildroot are included in the - Buildroot sources and were not duplicated in the sources/ subdirectory. + subdirectory (except for the non-redistributable packages, which have not + been saved); patches applied to some packages by Buildroot are included in + the Buildroot sources and were not duplicated in the sources/ subdirectory. * A manifest file listing the configured packages and related information. * The license text of the packages; they have been saved in the licenses/ subdirectory. diff --git a/support/misc/Vagrantfile b/support/misc/Vagrantfile new file mode 100644 index 00000000000..b8f02afc772 --- /dev/null +++ b/support/misc/Vagrantfile @@ -0,0 +1,56 @@ +################################################################################ +# +# Vagrantfile +# +################################################################################ + +# Buildroot version to use +RELEASE='2016.02' + +### Change here for more memory/cores ### +VM_MEMORY=2048 +VM_CORES=1 + +Vagrant.configure('2') do |config| + config.vm.box = 'ubuntu/trusty64' + + config.vm.provider :vmware_fusion do |v, override| + v.vmx['memsize'] = VM_MEMORY + v.vmx['numvcpus'] = VM_CORES + end + + config.vm.provider :virtualbox do |v, override| + v.memory = VM_MEMORY + v.cpus = VM_CORES + + required_plugins = %w( vagrant-vbguest ) + required_plugins.each do |plugin| + system "vagrant plugin install #{plugin}" unless Vagrant.has_plugin? plugin + end + end + + config.vm.provision 'shell' do |s| + s.inline = 'echo Setting up machine name' + + config.vm.provider :vmware_fusion do |v, override| + v.vmx['displayname'] = "Buildroot #{RELEASE}" + end + + config.vm.provider :virtualbox do |v, override| + v.name = "Buildroot #{RELEASE}" + end + end + + config.vm.provision 'shell', inline: + "sudo dpkg --add-architecture i386 + sudo apt-get -q update + sudo apt-get -q -y install build-essential libncurses5-dev \ + git bzr cvs mercurial subversion libc6:i386 unzip + sudo apt-get -q -y autoremove + sudo apt-get -q -y clean" + + config.vm.provision 'shell', privileged: false, inline: + "echo 'Downloading and extracting buildroot #{RELEASE}' + wget -q -c http://buildroot.org/downloads/buildroot-#{RELEASE}.tar.gz + tar axf buildroot-#{RELEASE}.tar.gz" +end diff --git a/support/misc/toolchainfile.cmake.in b/support/misc/toolchainfile.cmake.in index cd412542e5e..5cf381e96c6 100644 --- a/support/misc/toolchainfile.cmake.in +++ b/support/misc/toolchainfile.cmake.in @@ -27,33 +27,5 @@ set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) set(ENV{PKG_CONFIG_SYSROOT_DIR} "${RELOCATED_HOST_DIR}/@@STAGING_SUBDIR@@") # This toolchain file can be used both inside and outside Buildroot. -# * When used inside Buildroot, ccache support is explicitly driven using the -# USE_CCACHE variable. -# * When used outside Buildroot (i.e. when USE_CCACHE is not defined), ccache -# support is automatically enabled if the ccache program is available. -if(DEFINED USE_CCACHE) - if(USE_CCACHE) - set(CMAKE_ASM_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CC_NOCCACHE@@") - set(CMAKE_C_COMPILER "${RELOCATED_HOST_DIR}/usr/bin/ccache") - set(CMAKE_CXX_COMPILER "${RELOCATED_HOST_DIR}/usr/bin/ccache") - set(CMAKE_C_COMPILER_ARG1 "${RELOCATED_HOST_DIR}/@@TARGET_CC_NOCCACHE@@") - set(CMAKE_CXX_COMPILER_ARG1 "${RELOCATED_HOST_DIR}/@@TARGET_CXX_NOCCACHE@@") - else() - set(CMAKE_C_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CC_NOCCACHE@@") - set(CMAKE_CXX_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CXX_NOCCACHE@@") - endif() -else() - find_program(CCACHE ccache HINTS "${RELOCATED_HOST_DIR}/usr/bin") - if(CCACHE) - set(CMAKE_ASM_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CC_NOCCACHE@@") - set(CMAKE_C_COMPILER "${CCACHE}") - set(CMAKE_CXX_COMPILER "${CCACHE}") - set(CMAKE_C_COMPILER_ARG1 "${RELOCATED_HOST_DIR}/@@TARGET_CC_NOCCACHE@@") - set(CMAKE_CXX_COMPILER_ARG1 "${RELOCATED_HOST_DIR}/@@TARGET_CXX_NOCCACHE@@") - message(STATUS "ccache program has been found and will be used for the build.") - message(STATUS " To disable ccache, add -DUSE_CCACHE=OFF on the cmake command line.") - else() - set(CMAKE_C_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CC_NOCCACHE@@") - set(CMAKE_CXX_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CXX_NOCCACHE@@") - endif() -endif() +set(CMAKE_C_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CC@@") +set(CMAKE_CXX_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CXX@@") diff --git a/support/scripts/apply-patches.sh b/support/scripts/apply-patches.sh index af6df9ec72b..201278dde7e 100755 --- a/support/scripts/apply-patches.sh +++ b/support/scripts/apply-patches.sh @@ -16,8 +16,9 @@ # '*'. Pattern(s) describing the patch names you want to apply. # # The script will look recursively for patches from the patch directory. If a -# file is named 'series' then only patches mentionned into it will be applied. -# If not, the script will look for file names matching pattern(s). If the name +# file named 'series' exists then the patches mentioned in it will be applied +# as plain patches, regardless of their file name. If no 'series' file exists, +# the script will look for file names matching pattern(s). If the name # ends with '.tar.*', '.tbz2' or '.tgz', the file is considered as an archive # and will be uncompressed into a directory named # '.patches-name_of_the_archive-unpacked'. It's the turn of this directory to @@ -64,41 +65,45 @@ find ${builddir}/ '(' -name '*.rej' -o -name '.*.rej' ')' -print0 | \ function apply_patch { path=$1 patch=$2 - case "$patch" in - *.gz) - type="gzip"; uncomp="gunzip -dc"; ;; - *.bz) - type="bzip"; uncomp="bunzip -dc"; ;; - *.bz2) - type="bzip2"; uncomp="bunzip2 -dc"; ;; - *.xz) - type="xz"; uncomp="unxz -dc"; ;; - *.zip) - type="zip"; uncomp="unzip -d"; ;; - *.Z) - type="compress"; uncomp="uncompress -c"; ;; - *.diff*) - type="diff"; uncomp="cat"; ;; - *.patch*) - type="patch"; uncomp="cat"; ;; - *) - echo "Unsupported file type for ${path}/${patch}, skipping"; - return 0 - ;; - esac + if [ "$3" ]; then + type="series"; uncomp="cat" + else + case "$patch" in + *.gz) + type="gzip"; uncomp="gunzip -dc"; ;; + *.bz) + type="bzip"; uncomp="bunzip -dc"; ;; + *.bz2) + type="bzip2"; uncomp="bunzip2 -dc"; ;; + *.xz) + type="xz"; uncomp="unxz -dc"; ;; + *.zip) + type="zip"; uncomp="unzip -d"; ;; + *.Z) + type="compress"; uncomp="uncompress -c"; ;; + *.diff*) + type="diff"; uncomp="cat"; ;; + *.patch*) + type="patch"; uncomp="cat"; ;; + *) + echo "Unsupported file type for ${path}/${patch}, skipping"; + return 0 + ;; + esac + fi if [ -z "$silent" ] ; then - echo "" - echo "Applying $patch using ${type}: " + echo "" + echo "Applying $patch using ${type}: " fi if [ ! -e "${path}/$patch" ] ; then - echo "Error: missing patch file ${path}/$patch" - exit 1 + echo "Error: missing patch file ${path}/$patch" + exit 1 fi echo $patch >> ${builddir}/.applied_patches_list ${uncomp} "${path}/$patch" | patch -g0 -p1 -E -d "${builddir}" -t -N $silent if [ $? != 0 ] ; then echo "Patch failed! Please fix ${patch}!" - exit 1 + exit 1 fi } @@ -110,8 +115,14 @@ function scan_patchdir { # If there is a series file, use it instead of using ls sort order # to apply patches. Skip line starting with a dash. if [ -e "${path}/series" ] ; then - for i in `grep -Ev "^#" ${path}/series 2> /dev/null` ; do - apply_patch "$path" "$i" + # The format of a series file accepts a second field that is + # used to specify the number of directory components to strip + # when applying the patch, in the form -pN (N an integer >= 0) + # We assume this field to always be -p1 whether it is present + # or missing. + series_patches="`grep -Ev "^#" ${path}/series | cut -d ' ' -f1 2> /dev/null`" + for i in $series_patches; do + apply_patch "$path" "$i" series done else for i in `cd $path; ls -d $patches 2> /dev/null` ; do diff --git a/support/scripts/build-ext3-img b/support/scripts/build-ext3-img deleted file mode 100755 index 1cab710c255..00000000000 --- a/support/scripts/build-ext3-img +++ /dev/null @@ -1,152 +0,0 @@ -#!/bin/sh - -BLOCKSIZE=516096 -WORKING_DIR=`pwd` - -echo "This script will create a bootable ext3 image from buildroot." - -echo "Enter the path to the image (${WORKING_DIR})" -read IMG_PATH - -if [ "${IMAGE_PATH}" = "" ]; then - IMAGE_PATH=${WORKING_DIR} -fi - -echo "Enter the name of the image file (buildroot.img)" -read IMG_NAME - -if [ "${IMAGE_NAME}" = "" ]; then - IMAGE_NAME="buildroot.img" -fi - -IMAGE=${IMAGE_PATH}/${IMAGE_NAME} - -echo "Enter the path and filename for the root filesystem" -echo "tarball that you want to install into the image" -read ROOT_PATH - -if [ "${ROOT_PATH}" = "" ]; then - echo "Error: you must specify a path." - exit 1 -fi - -CYLINDERS=`du --summarize --block-size=${BLOCKSIZE} ${ROOT_PATH}` -BYTE_SIZE=`du --summarize --block-size=${BLOCKSIZE} --human-readable ${ROOT_PATH}` - -CYLINDERS=${CYLINDERS%${ROOT_PATH}} -BYTE_SIZE=${BYTE_SIZE%${ROOT_PATH}} - -CYLINDERS=`expr ${CYLINDERS} "*" 2` - -echo "Now I will create an ext3 image file" -echo "using ${CYLINDERS} cylinders, with ${BLOCKSIZE} bytes per block" -echo "in other words, ${BYTE_SIZE}bytes..." - - dd if=/dev/zero of=${IMAGE} bs=${BLOCKSIZE}c count=${CYLINDERS} - -# Create file partition and filesystem - - # STEP 1. create partition - /sbin/losetup /dev/loop3 ${IMAGE} - # probably should figure out how to use GNU parted to do this non-interactively - /sbin/fdisk -u -C${CYLINDERS} -S63 -H16 /dev/loop3 - /sbin/losetup -d /dev/loop3 - - # STEP 2. make file system (ext3) - /sbin/losetup -o 32256 /dev/loop3 ${IMAGE} - /sbin/mkfs.ext3 /dev/loop3 - /sbin/losetup -d /dev/loop3 - -# Install Software to the image - mkdir -p ${IMAGE_PATH}/temp - mount -o offset=32256,loop ${IMAGE} ${IMAGE_PATH}/temp - tar -xvf ${ROOT_PATH} --directory ${IMAGE_PATH}/temp - # make sure to unmount the image - umount ${IMAGE_PATH}/temp - rm -rf ${IMAGE_PATH}/temp - -# Create a VMware .vmx file -cat > ${IMAGE_PATH}/buildroot.vmx </dev/null \ + |sed -r -e '/^([^:]+):.*\.*\.*/!d' \ + -e 's//\1/' \ + ) + + return ${ret} +} + +elf_needs_rpath() { + local file="${1}" + local hostdir="${2}" + local lib + + while read lib; do + [ -e "${hostdir}/usr/lib/${lib}" ] && return 0 + done < <( readelf -d "${file}" \ + |sed -r -e '/^.* \(NEEDED\) .*Shared library: \[(.+)\]$/!d;' \ + -e 's//\1/;' \ + ) + + return 1 +} + +check_elf_has_rpath() { + local file="${1}" + local hostdir="${2}" + local rpath dir + + while read rpath; do + for dir in ${rpath//:/ }; do + # Remove duplicate and trailing '/' for proper match + dir="$( sed -r -e 's:/+:/:g; s:/$::;' <<<"${dir}" )" + [ "${dir}" = "${hostdir}/usr/lib" ] && return 0 + done + done < <( readelf -d "${file}" \ + |sed -r -e '/.* \(R(UN)?PATH\) +Library r(un)?path: \[(.+)\]$/!d' \ + -e 's//\3/;' \ + ) + + return 1 +} + +main "${@}" diff --git a/support/scripts/graph-depends b/support/scripts/graph-depends index 5f770382413..a00eb9d47bd 100755 --- a/support/scripts/graph-depends +++ b/support/scripts/graph-depends @@ -38,14 +38,19 @@ max_depth = 0 transitive = True parser = argparse.ArgumentParser(description="Graph packages dependencies") +parser.add_argument("--check-only", "-C", dest="check_only", action="store_true", default=False, + help="Only do the dependency checks (circular deps...)") +parser.add_argument("--outfile", "-o", metavar="OUT_FILE", dest="outfile", + help="File in which to generate the dot representation") parser.add_argument("--package", '-p', metavar="PACKAGE", help="Graph the dependencies of PACKAGE") parser.add_argument("--depth", '-d', metavar="DEPTH", dest="depth", type=int, default=0, help="Limit the dependency graph to DEPTH levels; 0 means no limit.") parser.add_argument("--stop-on", "-s", metavar="PACKAGE", dest="stop_list", action="append", help="Do not graph past this package (can be given multiple times)." \ - + " Can be a package name or a glob, or" \ - + " 'virtual' to stop on virtual packages.") + + " Can be a package name or a glob, " \ + + " 'virtual' to stop on virtual packages, or " \ + + "'host' to stop on host packages.") parser.add_argument("--exclude", "-x", metavar="PACKAGE", dest="exclude_list", action="append", help="Like --stop-on, but do not add PACKAGE to the graph.") parser.add_argument("--colours", "-c", metavar="COLOR_LIST", dest="colours", @@ -60,6 +65,16 @@ parser.add_argument("--no-transitive", dest="transitive", action='store_false', help="Draw (do not draw) transitive dependencies") args = parser.parse_args() +check_only = args.check_only + +if args.outfile is None: + outfile = sys.stdout +else: + if check_only: + sys.stderr.write("don't specify outfile and check-only at the same time\n") + sys.exit(1) + outfile = open(args.outfile, "wb") + if args.package is None: mode = MODE_FULL else: @@ -237,18 +252,48 @@ for dep in dependencies: dict_deps[dep[0]] = [] dict_deps[dep[0]].append(dep[1]) +# Basic cache for the results of the is_dep() function, in order to +# optimize the execution time. The cache is a dict of dict of boolean +# values. The key to the primary dict is "pkg", and the key of the +# sub-dicts is "pkg2". +is_dep_cache = {} + +def is_dep_cache_insert(pkg, pkg2, val): + try: + is_dep_cache[pkg].update({pkg2: val}) + except KeyError: + is_dep_cache[pkg] = {pkg2: val} + +# Retrieves from the cache whether pkg2 is a transitive dependency +# of pkg. +# Note: raises a KeyError exception if the dependency is not known. +def is_dep_cache_lookup(pkg, pkg2): + return is_dep_cache[pkg][pkg2] + # This function return True if pkg is a dependency (direct or # transitive) of pkg2, dependencies being listed in the deps # dictionary. Returns False otherwise. -def is_dep(pkg,pkg2,deps): - if pkg2 in deps: +# This is the un-cached version. +def is_dep_uncached(pkg,pkg2,deps): + try: for p in deps[pkg2]: if pkg == p: return True if is_dep(pkg,p,deps): return True + except KeyError: + pass return False +# See is_dep_uncached() above; this is the cached version. +def is_dep(pkg,pkg2,deps): + try: + return is_dep_cache_lookup(pkg, pkg2) + except KeyError: + val = is_dep_uncached(pkg, pkg2, deps) + is_dep_cache_insert(pkg, pkg2, val) + return val + # This function eliminates transitive dependencies; for example, given # these dependency chain: A->{B,C} and B->{C}, the A->{C} dependency is # already covered by B->{C}, so C is a transitive dependency of A, via B. @@ -276,6 +321,32 @@ def remove_transitive_deps(pkg,deps): def remove_mandatory_deps(pkg,deps): return [p for p in deps[pkg] if p not in ['toolchain', 'skeleton']] +# This function will check that there is no loop in the dependency chain +# As a side effect, it builds up the dependency cache. +def check_circular_deps(deps): + def recurse(pkg): + if not pkg in list(deps.keys()): + return + if pkg in not_loop: + return + not_loop.append(pkg) + chain.append(pkg) + for p in deps[pkg]: + if p in chain: + sys.stderr.write("\nRecursion detected for : %s\n" % (p)) + while True: + _p = chain.pop() + sys.stderr.write("which is a dependency of: %s\n" % (_p)) + if p == _p: + sys.exit(1) + recurse(p) + chain.pop() + + not_loop = [] + chain = [] + for pkg in list(deps.keys()): + recurse(pkg) + # This functions trims down the dependency list of all packages. # It applies in sequence all the dependency-elimination methods. def remove_extra_deps(deps): @@ -287,6 +358,10 @@ def remove_extra_deps(deps): deps[pkg] = remove_transitive_deps(pkg,deps) return deps +check_circular_deps(dict_deps) +if check_only: + sys.exit(0) + dict_deps = remove_extra_deps(dict_deps) dict_version = get_version([pkg for pkg in allpkgs if pkg != "all" and not pkg.startswith("root")]) @@ -309,10 +384,10 @@ def print_attrs(pkg): color = target_colour version = dict_version.get(pkg) if version == "virtual": - print("%s [label = <%s>]" % (name, label)) + outfile.write("%s [label = <%s>]\n" % (name, label)) else: - print("%s [label = \"%s\"]" % (name, label)) - print("%s [color=%s,style=filled]" % (name, color)) + outfile.write("%s [label = \"%s\"]\n" % (name, label)) + outfile.write("%s [color=%s,style=filled]\n" % (name, color)) # Print the dependency graph of a package def print_pkg_deps(depth, pkg): @@ -327,25 +402,29 @@ def print_pkg_deps(depth, pkg): return if dict_version.get(pkg) == "virtual" and "virtual" in stop_list: return + if pkg.startswith("host-") and "host" in stop_list: + return if max_depth == 0 or depth < max_depth: for d in dict_deps[pkg]: + if dict_version.get(d) == "virtual" \ + and "virtual" in exclude_list: + continue + if d.startswith("host-") \ + and "host" in exclude_list: + continue add = True for p in exclude_list: if fnmatch(d,p): add = False break - if dict_version.get(d) == "virtual" \ - and "virtual" in exclude_list: - add = False - break if add: - print("%s -> %s" % (pkg_node_name(pkg), pkg_node_name(d))) + outfile.write("%s -> %s\n" % (pkg_node_name(pkg), pkg_node_name(d))) print_pkg_deps(depth+1, d) # Start printing the graph data -print("digraph G {") +outfile.write("digraph G {\n") done_deps = [] print_pkg_deps(0, rootpkg) -print("}") +outfile.write("}\n") diff --git a/support/scripts/mkmakefile b/support/scripts/mkmakefile index 833be6a92cb..37162a3173a 100755 --- a/support/scripts/mkmakefile +++ b/support/scripts/mkmakefile @@ -15,9 +15,7 @@ if test -e $2/Makefile && ! grep -q Automatically $2/Makefile then exit 0 fi -if [ "${quiet}" != "silent_" ]; then - echo " GEN $2/Makefile" -fi +echo " GEN $2/Makefile" cat << EOF > $2/Makefile # Automatically generated by $0: don't edit diff --git a/support/scripts/mkusers b/support/scripts/mkusers index 9c5c4dcadb3..e2c24c72374 100755 --- a/support/scripts/mkusers +++ b/support/scripts/mkusers @@ -358,6 +358,8 @@ add_one_user() { #---------------------------------------------------------------------------- main() { local username uid group gid passwd home shell groups comment + local line + local -a LINES # Some sanity checks if [ ${MIN_UID} -le 0 ]; then @@ -367,36 +369,41 @@ main() { fail "MIN_GID must be >0 (currently %d)\n" ${MIN_GID} fi + # Read in all the file in memory, exclude empty lines and comments + while read line; do + LINES+=( "${line}" ) + done < <( sed -r -e 's/#.*//; /^[[:space:]]*$/d;' "${USERS_TABLE}" ) + # We first create groups whose gid is not -1, and then we create groups # whose gid is -1 (automatic), so that, if a group is defined both with # a specified gid and an automatic gid, we ensure the specified gid is # used, rather than a different automatic gid is computed. # First, create all the main groups which gid is *not* automatic - while read username uid group gid passwd home shell groups comment; do - [ -n "${username}" ] || continue # Package with no user - [ ${gid} -ge 0 ] || continue # Automatic gid + for line in "${LINES[@]}"; do + read username uid group gid passwd home shell groups comment <<<"${line}" + [ ${gid} -ge 0 ] || continue # Automatic gid add_one_group "${group}" "${gid}" - done <"${USERS_TABLE}" + done # Then, create all the main groups which gid *is* automatic - while read username uid group gid passwd home shell groups comment; do - [ -n "${username}" ] || continue # Package with no user - [ ${gid} -eq -1 ] || continue # Non-automatic gid + for line in "${LINES[@]}"; do + read username uid group gid passwd home shell groups comment <<<"${line}" + [ ${gid} -eq -1 ] || continue # Non-automatic gid add_one_group "${group}" "${gid}" - done <"${USERS_TABLE}" + done # Then, create all the additional groups # If any additional group is already a main group, we should use # the gid of that main group; otherwise, we can use any gid - while read username uid group gid passwd home shell groups comment; do - [ -n "${username}" ] || continue # Package with no user + for line in "${LINES[@]}"; do + read username uid group gid passwd home shell groups comment <<<"${line}" if [ "${groups}" != "-" ]; then for g in ${groups//,/ }; do add_one_group "${g}" -1 done fi - done <"${USERS_TABLE}" + done # When adding users, we do as for groups, in case two packages create # the same user, one with an automatic uid, the other with a specified @@ -404,22 +411,22 @@ main() { # uid be generated. # Now, add users whose uid is *not* automatic - while read username uid group gid passwd home shell groups comment; do - [ -n "${username}" ] || continue # Package with no user + for line in "${LINES[@]}"; do + read username uid group gid passwd home shell groups comment <<<"${line}" [ "${username}" != "-" ] || continue # Magic string to skip user creation - [ ${uid} -ge 0 ] || continue # Automatic uid + [ ${uid} -ge 0 ] || continue # Automatic uid add_one_user "${username}" "${uid}" "${group}" "${gid}" "${passwd}" \ "${home}" "${shell}" "${groups}" "${comment}" - done <"${USERS_TABLE}" + done # Finally, add users whose uid *is* automatic - while read username uid group gid passwd home shell groups comment; do - [ -n "${username}" ] || continue # Package with no user + for line in "${LINES[@]}"; do + read username uid group gid passwd home shell groups comment <<<"${line}" [ "${username}" != "-" ] || continue # Magic string to skip user creation - [ ${uid} -eq -1 ] || continue # Non-automatic uid + [ ${uid} -eq -1 ] || continue # Non-automatic uid add_one_user "${username}" "${uid}" "${group}" "${gid}" "${passwd}" \ "${home}" "${shell}" "${groups}" "${comment}" - done <"${USERS_TABLE}" + done } #---------------------------------------------------------------------------- diff --git a/support/scripts/scancpan b/support/scripts/scancpan index c7180c8b4df..0436d2a4b9f 100755 --- a/support/scripts/scancpan +++ b/support/scripts/scancpan @@ -471,7 +471,7 @@ unshift @INC, sub { } # END OF FATPACK CODE -use 5.020; # same major version as target perl +use 5.022; # same major version as target perl use strict; use warnings; use Fatal qw(open close); @@ -534,7 +534,7 @@ sub is_xs { # This heuristic determines if a module is a native extension, by searching # some file extension types in the MANIFEST of the distribution. # It was inspired by http://deps.cpantesters.org/static/purity.html - return $manifest =~ m/\.(swg|xs|c|h|i)\n/; + return $manifest =~ m/\.(swg|xs|c|h|i)[\n\s]/; } sub find_license_files { @@ -544,6 +544,9 @@ sub find_license_files { next if m|/|; push @license_files, $_ if m/(ARTISTIC|COPYING|COPYRIGHT|LICENSE)/i; } + if (scalar @license_files == 0 && $manifest =~ m/(README)[\n\s]/i) { + @license_files = ($1); + } return \@license_files; } @@ -560,12 +563,8 @@ sub fetch { $license_files{$name} = find_license_files( $manifest ); my %build = (); my %runtime = (); - my $mb; foreach my $dep (@{$result->{dependency}}) { my $modname = ${$dep}{module}; - $mb = 1 if $modname eq q{Module::Build}; - # Module::Build has a special treatment, because it is a core module, - # but some module require a very recent version of it next if $modname eq q{perl}; next if $modname =~ m|^Alien|; next if $modname =~ m|^Win32|; @@ -584,7 +583,6 @@ sub fetch { $build{$distname} = 1; } } - $build{q{Module-Build}} = 1 if $mb; $deps_build{$name} = [keys %build]; $deps_runtime{$name} = [keys %runtime]; foreach my $distname (@{$deps_build{$name}}) { @@ -655,11 +653,9 @@ while (my ($distname, $dist) = each %dist) { # the auth part is not used, because we use $(BR2_CPAN_MIRROR) my($filename, $directories, $suffix) = fileparse( $path, q{tar.gz}, q{tgz} ); $directories =~ s|/$||; - my $dependencies = join q{ }, qw( = perl ), - map( { q{host-} . fsname( $_ ); } sort @{$deps_build{$distname}} ), + my $dependencies = join q{ }, map( { q{host-} . fsname( $_ ); } sort @{$deps_build{$distname}} ), map( { fsname( $_ ); } sort @{$deps_runtime{$distname}} ); - my $host_dependencies = join q{ }, qw( = ), - map { q{host-} . fsname( $_ ); } sort( @{$deps_build{$distname}}, + my $host_dependencies = join q{ }, map { q{host-} . fsname( $_ ); } sort( @{$deps_build{$distname}}, @{$deps_runtime{$distname}} ); my $license = ref $dist->{license} eq 'ARRAY' ? join q{ or }, @{$dist->{license}} @@ -682,8 +678,8 @@ while (my ($distname, $dist) = each %dist) { say {$fh} qq{${brname}_VERSION = ${version}}; say {$fh} qq{${brname}_SOURCE = ${distname}-\$(${brname}_VERSION).${suffix}}; say {$fh} qq{${brname}_SITE = \$(BR2_CPAN_MIRROR)${directories}}; - say {$fh} qq{${brname}_DEPENDENCIES ${dependencies}} if $need_target{$distname}; - say {$fh} qq{HOST_${brname}_DEPENDENCIES ${host_dependencies}} if $need_host{$distname}; + say {$fh} qq{${brname}_DEPENDENCIES = ${dependencies}} if $need_target{$distname} && $dependencies; + say {$fh} qq{HOST_${brname}_DEPENDENCIES = ${host_dependencies}} if $need_host{$distname} && $host_dependencies; say {$fh} qq{${brname}_LICENSE = ${license}} if $license && $license ne q{unknown}; say {$fh} qq{${brname}_LICENSE_FILES = ${license_files}} if $license_files; say {$fh} qq{}; diff --git a/support/scripts/size-stats b/support/scripts/size-stats new file mode 100755 index 00000000000..81d96caa129 --- /dev/null +++ b/support/scripts/size-stats @@ -0,0 +1,217 @@ +#!/usr/bin/env python + +# Copyright (C) 2014 by Thomas Petazzoni + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +import sys +import os +import os.path +import argparse +import csv +import collections + +try: + import matplotlib + matplotlib.use('Agg') + import matplotlib.font_manager as fm + import matplotlib.pyplot as plt +except ImportError: + sys.stderr.write("You need python-matplotlib to generate the size graph\n") + exit(1) + +colors = ['#e60004', '#009836', '#2e1d86', '#ffed00', + '#0068b5', '#f28e00', '#940084', '#97c000'] + +# +# This function adds a new file to 'filesdict', after checking its +# size. The 'filesdict' contain the relative path of the file as the +# key, and as the value a tuple containing the name of the package to +# which the file belongs and the size of the file. +# +# filesdict: the dict to which the file is added +# relpath: relative path of the file +# fullpath: absolute path to the file +# pkg: package to which the file belongs +# +def add_file(filesdict, relpath, abspath, pkg): + if not os.path.exists(abspath): + return + if os.path.islink(abspath): + return + sz = os.stat(abspath).st_size + filesdict[relpath] = (pkg, sz) + +# +# This function returns a dict where each key is the path of a file in +# the root filesystem, and the value is a tuple containing two +# elements: the name of the package to which this file belongs and the +# size of the file. +# +# builddir: path to the Buildroot output directory +# +def build_package_dict(builddir): + filesdict = {} + with open(os.path.join(builddir, "build", "packages-file-list.txt")) as filelistf: + for l in filelistf.readlines(): + pkg, fpath = l.split(",") + # remove the initial './' in each file path + fpath = fpath.strip()[2:] + fullpath = os.path.join(builddir, "target", fpath) + add_file(filesdict, fpath, fullpath, pkg) + return filesdict + +# +# This function builds a dictionary that contains the name of a +# package as key, and the size of the files installed by this package +# as the value. +# +# filesdict: dictionary with the name of the files as key, and as +# value a tuple containing the name of the package to which the files +# belongs, and the size of the file. As returned by +# build_package_dict. +# +# builddir: path to the Buildroot output directory +# +def build_package_size(filesdict, builddir): + pkgsize = collections.defaultdict(int) + + for root, _, files in os.walk(os.path.join(builddir, "target")): + for f in files: + fpath = os.path.join(root, f) + if os.path.islink(fpath): + continue + frelpath = os.path.relpath(fpath, os.path.join(builddir, "target")) + if not frelpath in filesdict: + print("WARNING: %s is not part of any package" % frelpath) + pkg = "unknown" + else: + pkg = filesdict[frelpath][0] + + pkgsize[pkg] += os.path.getsize(fpath) + + return pkgsize + +# +# Given a dict returned by build_package_size(), this function +# generates a pie chart of the size installed by each package. +# +# pkgsize: dictionary with the name of the package as a key, and the +# size as the value, as returned by build_package_size. +# +# outputf: output file for the graph +# +def draw_graph(pkgsize, outputf): + total = sum(pkgsize.values()) + labels = [] + values = [] + other_value = 0 + for (p, sz) in pkgsize.items(): + if sz < (total * 0.01): + other_value += sz + else: + labels.append("%s (%d kB)" % (p, sz / 1000.)) + values.append(sz) + labels.append("Other (%d kB)" % (other_value / 1000.)) + values.append(other_value) + + plt.figure() + patches, texts, autotexts = plt.pie(values, labels=labels, + autopct='%1.1f%%', shadow=True, + colors=colors) + # Reduce text size + proptease = fm.FontProperties() + proptease.set_size('xx-small') + plt.setp(autotexts, fontproperties=proptease) + plt.setp(texts, fontproperties=proptease) + + plt.suptitle("Filesystem size per package", fontsize=18, y=.97) + plt.title("Total filesystem size: %d kB" % (total / 1000.), fontsize=10, y=.96) + plt.savefig(outputf) + +# +# Generate a CSV file with statistics about the size of each file, its +# size contribution to the package and to the overall system. +# +# filesdict: dictionary with the name of the files as key, and as +# value a tuple containing the name of the package to which the files +# belongs, and the size of the file. As returned by +# build_package_dict. +# +# pkgsize: dictionary with the name of the package as a key, and the +# size as the value, as returned by build_package_size. +# +# outputf: output CSV file +# +def gen_files_csv(filesdict, pkgsizes, outputf): + total = 0 + for (p, sz) in pkgsizes.items(): + total += sz + with open(outputf, 'w') as csvfile: + wr = csv.writer(csvfile, delimiter=',', quoting=csv.QUOTE_MINIMAL) + wr.writerow(["File name", + "Package name", + "File size", + "Package size", + "File size in package (%)", + "File size in system (%)"]) + for f, (pkgname, filesize) in filesdict.items(): + pkgsize = pkgsizes[pkgname] + wr.writerow([f, pkgname, filesize, pkgsize, + "%.1f" % (float(filesize) / pkgsize * 100), + "%.1f" % (float(filesize) / total * 100)]) + + +# +# Generate a CSV file with statistics about the size of each package, +# and their size contribution to the overall system. +# +# pkgsize: dictionary with the name of the package as a key, and the +# size as the value, as returned by build_package_size. +# +# outputf: output CSV file +# +def gen_packages_csv(pkgsizes, outputf): + total = sum(pkgsizes.values()) + with open(outputf, 'w') as csvfile: + wr = csv.writer(csvfile, delimiter=',', quoting=csv.QUOTE_MINIMAL) + wr.writerow(["Package name", "Package size", "Package size in system (%)"]) + for (pkg, size) in pkgsizes.items(): + wr.writerow([pkg, size, "%.1f" % (float(size) / total * 100)]) + +parser = argparse.ArgumentParser(description='Draw size statistics graphs') + +parser.add_argument("--builddir", '-i', metavar="BUILDDIR", required=True, + help="Buildroot output directory") +parser.add_argument("--graph", '-g', metavar="GRAPH", + help="Graph output file (.pdf or .png extension)") +parser.add_argument("--file-size-csv", '-f', metavar="FILE_SIZE_CSV", + help="CSV output file with file size statistics") +parser.add_argument("--package-size-csv", '-p', metavar="PKG_SIZE_CSV", + help="CSV output file with package size statistics") +args = parser.parse_args() + +# Find out which package installed what files +pkgdict = build_package_dict(args.builddir) + +# Collect the size installed by each package +pkgsize = build_package_size(pkgdict, args.builddir) + +if args.graph: + draw_graph(pkgsize, args.graph) +if args.file_size_csv: + gen_files_csv(pkgdict, pkgsize, args.file_size_csv) +if args.package_size_csv: + gen_packages_csv(pkgsize, args.package_size_csv) diff --git a/support/scripts/size-stats-compare b/support/scripts/size-stats-compare new file mode 100755 index 00000000000..e5a1ec3f940 --- /dev/null +++ b/support/scripts/size-stats-compare @@ -0,0 +1,127 @@ +#!/usr/bin/env python + +# Copyright (C) 2016 Thomas De Schampheleire + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +# TODO (improvements) +# - support K,M,G size suffixes for threshold +# - output CSV file in addition to stdout reporting + +import csv +import argparse +import sys + +def read_file_size_csv(inputf, detail=None): + """Extract package or file sizes from CSV file into size dictionary""" + sizes = {} + reader = csv.reader(inputf) + + header = next(reader) + if (header[0] != 'File name' or header[1] != 'Package name' or + header[2] != 'File size' or header[3] != 'Package size'): + print(("Input file %s does not contain the expected header. Are you " + "sure this file corresponds to the file-size-stats.csv " + "file created by 'make graph-size'?") % inputf.name) + sys.exit(1) + + for row in reader: + if detail: + sizes[row[0]] = int(row[2]) + else: + sizes[row[1]] = int(row[3]) + + return sizes + +def compare_sizes(old, new): + """Return delta/added/removed dictionaries based on two input size + dictionaries""" + delta = {} + oldkeys = set(old.keys()) + newkeys = set(new.keys()) + + # packages/files in both + for entry in newkeys.intersection(oldkeys): + delta[entry] = ('', new[entry] - old[entry]) + # packages/files only in new + for entry in newkeys.difference(oldkeys): + delta[entry] = ('added', new[entry]) + # packages/files only in old + for entry in oldkeys.difference(newkeys): + delta[entry] = ('removed', -old[entry]) + + return delta + +def print_results(result, threshold): + """Print the given result dictionary sorted by size, ignoring any entries + below or equal to threshold""" + + from six import iteritems + list_result = list(iteritems(result)) + # result is a dictionary: name -> (flag, size difference) + # list_result is a list of tuples: (name, (flag, size difference)) + + for entry in sorted(list_result, key=lambda entry: entry[1][1]): + if threshold is not None and abs(entry[1][1]) <= threshold: + continue + print('%12s %7s %s' % (entry[1][1], entry[1][0], entry[0])) + + +# main ######################################################################### + +description = """ +Compare rootfs size between Buildroot compilations, for example after changing +configuration options or after switching to another Buildroot release. + +This script compares the file-size-stats.csv file generated by 'make graph-size' +with the corresponding file from another Buildroot compilation. +The size differences can be reported per package or per file. +Size differences smaller or equal than a given threshold can be ignored. +""" + +parser = argparse.ArgumentParser(description=description, + formatter_class=argparse.RawDescriptionHelpFormatter) + +parser.add_argument('-d', '--detail', action='store_true', + help='''report differences for individual files rather than + packages''') +parser.add_argument('-t', '--threshold', type=int, + help='''ignore size differences smaller or equal than this + value (bytes)''') +parser.add_argument('old_file_size_csv', type=argparse.FileType('r'), + metavar='old-file-size-stats.csv', + help="""old CSV file with file and package size statistics, + generated by 'make graph-size'""") +parser.add_argument('new_file_size_csv', type=argparse.FileType('r'), + metavar='new-file-size-stats.csv', + help='new CSV file with file and package size statistics') +args = parser.parse_args() + +if args.detail: + keyword = 'file' +else: + keyword = 'package' + +old_sizes = read_file_size_csv(args.old_file_size_csv, args.detail) +new_sizes = read_file_size_csv(args.new_file_size_csv, args.detail) + +delta = compare_sizes(old_sizes, new_sizes) + +print('Size difference per %s (bytes), threshold = %s' % (keyword, args.threshold)) +print(80*'-') +print_results(delta, args.threshold) +print(80*'-') +print_results({'TOTAL': ('', sum(new_sizes.values()) - sum(old_sizes.values()))}, + threshold=None) diff --git a/system/Config.in b/system/Config.in index fad829dad36..2e14971ba79 100644 --- a/system/Config.in +++ b/system/Config.in @@ -78,6 +78,10 @@ config BR2_INIT_SYSV select BR2_PACKAGE_INITSCRIPTS select BR2_PACKAGE_SYSVINIT +# In Buildroot, we decided not to support a split-usr when systemd is +# used as an init system. This is a design decision, not a systemd +# issue. Thus the select is with BR2_INIT_SYSTEMD (below) rather than +# with BR2_PACKAGE_SYSTEMD. config BR2_INIT_SYSTEMD bool "systemd" depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS @@ -88,9 +92,10 @@ config BR2_INIT_SYSTEMD depends on BR2_USE_MMU depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 + select BR2_ROOTFS_MERGED_USR select BR2_PACKAGE_SYSTEMD -comment 'systemd needs an (e)glibc toolchain, headers >= 3.10' +comment "systemd needs (e)glibc toolchain, headers >= 3.10" depends on !(BR2_TOOLCHAIN_USES_GLIBC \ && BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10) @@ -110,11 +115,11 @@ config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_DEVTMPFS bool "Dynamic using devtmpfs only" config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV - bool "Dynamic using mdev" + bool "Dynamic using devtmpfs + mdev" select BR2_PACKAGE_BUSYBOX config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV - bool "Dynamic using eudev" + bool "Dynamic using devtmpfs + eudev" depends on BR2_USE_WCHAR depends on !BR2_STATIC_LIBS depends on BR2_USE_MMU # eudev @@ -174,10 +179,27 @@ config BR2_ROOTFS_SKELETON_CUSTOM_PATH default "system/skeleton" help Path to custom target skeleton. + +# dummy config so merged /usr workarounds can also be activated for +# custom rootfs skeleton +config BR2_ROOTFS_MERGED_USR + endif if BR2_ROOTFS_SKELETON_DEFAULT +config BR2_ROOTFS_MERGED_USR + bool "Use symlinks to /usr for /bin, /sbin and /lib" + help + If you say 'n' here, then /bin, /sbin and /lib and their + counterparts in /usr will be separate directories. This + is the historical UNIX way. In this case, /usr can be a + filesystem on a partition separate from / . + + If you say 'y' here, then /bin, /sbin and /lib will be symlinks + to their counterparts in /usr. In this case, /usr can not be a + separate filesystem. + config BR2_TARGET_ENABLE_ROOT_LOGIN bool "Enable root login with password" default y @@ -260,12 +282,11 @@ config BR2_SYSTEM_BIN_SH default "dash" if BR2_SYSTEM_BIN_SH_DASH default "zsh" if BR2_SYSTEM_BIN_SH_ZSH -config BR2_TARGET_GENERIC_GETTY +menuconfig BR2_TARGET_GENERIC_GETTY bool "Run a getty (login prompt) after boot" default y if BR2_TARGET_GENERIC_GETTY -menu "getty options" config BR2_TARGET_GENERIC_GETTY_PORT string "TTY port" default "console" @@ -313,7 +334,6 @@ config BR2_TARGET_GENERIC_GETTY_OPTIONS help Any other flags you want to pass to getty, Refer to getty --help for details. -endmenu endif config BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW diff --git a/system/skeleton/bin/.empty b/system/skeleton/dev/shm/.empty similarity index 100% rename from system/skeleton/bin/.empty rename to system/skeleton/dev/shm/.empty diff --git a/system/skeleton/etc/group b/system/skeleton/etc/group index c1dc11f8602..c813da20229 100644 --- a/system/skeleton/etc/group +++ b/system/skeleton/etc/group @@ -16,11 +16,11 @@ video:x:28: audio:x:29: tape:x:32: www-data:x:33: +operator:x:37: utmp:x:43: plugdev:x:46: staff:x:50: lock:x:54: netdev:x:82: -ftp:x:83: nogroup:x:99: users:x:100: diff --git a/system/skeleton/etc/issue b/system/skeleton/etc/issue deleted file mode 100644 index 90f177983ba..00000000000 --- a/system/skeleton/etc/issue +++ /dev/null @@ -1,3 +0,0 @@ - -Welcome to Buildroot - diff --git a/system/skeleton/etc/ld.so.conf.d/.empty b/system/skeleton/etc/ld.so.conf.d/.empty deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/system/skeleton/etc/network/if-pre-up.d/wait_iface b/system/skeleton/etc/network/if-pre-up.d/wait_iface new file mode 100755 index 00000000000..ebccff2aa58 --- /dev/null +++ b/system/skeleton/etc/network/if-pre-up.d/wait_iface @@ -0,0 +1,21 @@ +#!/bin/sh + +# In case we have a slow-to-appear interface (e.g. eth-over-USB), +# and we need to configure it, wait until it appears, but not too +# long either. IF_WAIT_DELAY is in seconds. + +if [ "${IF_WAIT_DELAY}" -a ! -e "/sys/class/net/${IFACE}" ]; then + printf "Waiting for interface %s to appear" "${IFACE}" + while [ ${IF_WAIT_DELAY} -gt 0 ]; do + if [ -e "/sys/class/net/${IFACE}" ]; then + printf "\n" + exit 0 + fi + sleep 1 + printf "." + : $((IF_WAIT_DELAY -= 1)) + done + printf " timeout!\n" + exit 1 +fi + diff --git a/system/skeleton/etc/passwd b/system/skeleton/etc/passwd index 3a803415c6b..883265ad6fc 100644 --- a/system/skeleton/etc/passwd +++ b/system/skeleton/etc/passwd @@ -6,5 +6,4 @@ sync:x:4:100:sync:/bin:/bin/sync mail:x:8:8:mail:/var/spool/mail:/bin/false www-data:x:33:33:www-data:/var/www:/bin/false operator:x:37:37:Operator:/var:/bin/false -ftp:x:83:83:ftp:/home/ftp:/bin/false nobody:x:99:99:nobody:/home:/bin/false diff --git a/system/skeleton/etc/profile b/system/skeleton/etc/profile index c7438fed83a..3a97427fdfa 100644 --- a/system/skeleton/etc/profile +++ b/system/skeleton/etc/profile @@ -1,66 +1,20 @@ -# ~/.bashrc: executed by bash(1) for non-login interactive shells. +export PATH=/bin:/sbin:/usr/bin:/usr/sbin -export PATH=\ -/bin:\ -/sbin:\ -/usr/bin:\ -/usr/sbin:\ -/usr/local/bin - -# If running interactively, then: if [ "$PS1" ]; then - - if [ "$BASH" ]; then - export PS1="[\u@\h \W]\\$ " - alias ll='/bin/ls --color=tty -laFh' - alias ls='/bin/ls --color=tty -F' - export LS_COLORS='no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.png=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:'; - else - if [ "`id -u`" -eq 0 ]; then - export PS1='# ' - else - export PS1='$ ' - fi - fi - - export USER=`id -un` - export LOGNAME=$USER - export HOSTNAME=`/bin/hostname` - export HISTSIZE=1000 - export HISTFILESIZE=1000 - export PAGER='/bin/more ' - export EDITOR='/bin/vi' - export INPUTRC=/etc/inputrc - export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile - -fi; - -if [ -z "$LANG" ]; then - if [ -n $HOME ] && [ -r $HOME/.config/locale.conf ]; then - . "$HOME/.config/locale.conf" - elif [ -r /etc/locale.conf ]; then - . /etc/locale.conf - fi + if [ "`id -u`" -eq 0 ]; then + export PS1='# ' + else + export PS1='$ ' + fi fi -LANG=${LANG:-C} -export LANG -[ -n "$LC_CTYPE" ] && export LC_CTYPE -[ -n "$LC_NUMERIC" ] && export LC_NUMERIC -[ -n "$LC_TIME" ] && export LC_TIME -[ -n "$LC_COLLATE" ] && export LC_COLLATE -[ -n "$LC_MONETARY" ] && export LC_MONETARY -[ -n "$LC_MESSAGES" ] && export LC_MESSAGES -[ -n "$LC_PAPER" ] && export LC_PAPER -[ -n "$LC_NAME" ] && export LC_NAME -[ -n "$LC_ADDRESS" ] && export LC_ADDRESS -[ -n "$LC_TELEPHONE" ] && export LC_TELEPHONE -[ -n "$LC_MEASUREMENT" ] && export LC_MEASUREMENT -[ -n "$LC_IDENTIFICATION" ] && export LC_IDENTIFICATION +export PAGER='/bin/more ' +export EDITOR='/bin/vi' # Source configuration files from /etc/profile.d for i in /etc/profile.d/*.sh ; do - if [ -r "$i" ]; then - . $i - fi + if [ -r "$i" ]; then + . $i + fi + unset i done diff --git a/system/skeleton/etc/profile.d/umask.sh b/system/skeleton/etc/profile.d/umask.sh new file mode 100644 index 00000000000..8e71ad5d2aa --- /dev/null +++ b/system/skeleton/etc/profile.d/umask.sh @@ -0,0 +1 @@ +umask 022 diff --git a/system/skeleton/etc/shadow b/system/skeleton/etc/shadow index 972dd596f52..06778f13f90 100644 --- a/system/skeleton/etc/shadow +++ b/system/skeleton/etc/shadow @@ -1,9 +1,9 @@ root::10933:0:99999:7::: -bin:*:10933:0:99999:7::: daemon:*:10933:0:99999:7::: +bin:*:10933:0:99999:7::: +sys:*:10933:0:99999:7::: sync:*:10933:0:99999:7::: -halt:*:10933:0:99999:7::: -uucp:*:10933:0:99999:7::: +mail:*:10933:0:99999:7::: +www-data:*:10933:0:99999:7::: operator:*:10933:0:99999:7::: -ftp:*:10933:0:99999:7::: nobody:*:10933:0:99999:7::: diff --git a/system/skeleton/home/ftp/.empty b/system/skeleton/home/ftp/.empty deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/system/skeleton/lib/.empty b/system/skeleton/lib/.empty deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/system/skeleton/root/.bash_history b/system/skeleton/root/.bash_history deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/system/skeleton/root/.bash_logout b/system/skeleton/root/.bash_logout deleted file mode 100644 index 77ef1f95089..00000000000 --- a/system/skeleton/root/.bash_logout +++ /dev/null @@ -1,7 +0,0 @@ -# ~/.bash_logout: executed by bash(1) when login shell exits. - -# when leaving the console clear the screen to increase privacy - -case "`tty`" in - /dev/tty[0-9]*) clear -esac diff --git a/system/skeleton/root/.bash_profile b/system/skeleton/root/.bash_profile deleted file mode 100644 index 0ee04a31081..00000000000 --- a/system/skeleton/root/.bash_profile +++ /dev/null @@ -1,7 +0,0 @@ -# .bash_profile - -umask 022 - -if [ -f ~/.bashrc ]; then - source ~/.bashrc -fi diff --git a/system/skeleton/sbin/.empty b/system/skeleton/sbin/.empty deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/system/system.mk b/system/system.mk deleted file mode 100644 index c95e436c6e0..00000000000 --- a/system/system.mk +++ /dev/null @@ -1,121 +0,0 @@ -TARGET_GENERIC_HOSTNAME = $(call qstrip,$(BR2_TARGET_GENERIC_HOSTNAME)) -TARGET_GENERIC_ISSUE = $(call qstrip,$(BR2_TARGET_GENERIC_ISSUE)) -TARGET_GENERIC_ROOT_PASSWD = $(call qstrip,$(BR2_TARGET_GENERIC_ROOT_PASSWD)) -TARGET_GENERIC_PASSWD_METHOD = $(call qstrip,$(BR2_TARGET_GENERIC_PASSWD_METHOD)) -TARGET_GENERIC_BIN_SH = $(call qstrip,$(BR2_SYSTEM_BIN_SH)) -TARGET_GENERIC_GETTY_PORT = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_PORT)) -TARGET_GENERIC_GETTY_BAUDRATE = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_BAUDRATE)) -TARGET_GENERIC_GETTY_TERM = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_TERM)) -TARGET_GENERIC_GETTY_OPTIONS = $(call qstrip,$(BR2_TARGET_GENERIC_GETTY_OPTIONS)) - -ifeq ($(BR2_TARGET_GENERIC_GETTY),y) -define SYSTEM_SECURETTY - grep -q '^$(TARGET_GENERIC_GETTY_PORT)$$' $(TARGET_DIR)/etc/securetty || \ - echo '$(TARGET_GENERIC_GETTY_PORT)' >> $(TARGET_DIR)/etc/securetty -endef -TARGET_FINALIZE_HOOKS += SYSTEM_SECURETTY -endif - -ifneq ($(TARGET_GENERIC_HOSTNAME),) -define SYSTEM_HOSTNAME - mkdir -p $(TARGET_DIR)/etc - echo "$(TARGET_GENERIC_HOSTNAME)" > $(TARGET_DIR)/etc/hostname - $(SED) '$$a \127.0.1.1\t$(TARGET_GENERIC_HOSTNAME)' \ - -e '/^127.0.1.1/d' $(TARGET_DIR)/etc/hosts -endef -TARGET_FINALIZE_HOOKS += SYSTEM_HOSTNAME -endif - -ifneq ($(TARGET_GENERIC_ISSUE),) -define SYSTEM_ISSUE - mkdir -p $(TARGET_DIR)/etc - echo "$(TARGET_GENERIC_ISSUE)" > $(TARGET_DIR)/etc/issue -endef -TARGET_FINALIZE_HOOKS += SYSTEM_ISSUE -endif - -ifneq ($(TARGET_GENERIC_ROOT_PASSWD),) -PACKAGES += host-mkpasswd -endif - -define SET_NETWORK_LOCALHOST - ( \ - echo "# interface file auto-generated by buildroot"; \ - echo ; \ - echo "auto lo"; \ - echo "iface lo inet loopback"; \ - ) > $(TARGET_DIR)/etc/network/interfaces -endef - -NETWORK_DHCP_IFACE = $(call qstrip,$(BR2_SYSTEM_DHCP)) - -ifneq ($(NETWORK_DHCP_IFACE),) -define SET_NETWORK_DHCP - ( \ - echo ; \ - echo "auto $(NETWORK_DHCP_IFACE)"; \ - echo "iface $(NETWORK_DHCP_IFACE) inet dhcp"; \ - ) >> $(TARGET_DIR)/etc/network/interfaces -endef -endif - -define SET_NETWORK - mkdir -p $(TARGET_DIR)/etc/network/ - $(SET_NETWORK_LOCALHOST) - $(SET_NETWORK_DHCP) -endef - -TARGET_FINALIZE_HOOKS += SET_NETWORK - -ifeq ($(BR2_ROOTFS_SKELETON_DEFAULT),y) - -define SYSTEM_ROOT_PASSWD - [ -n "$(TARGET_GENERIC_ROOT_PASSWD)" ] && \ - TARGET_GENERIC_ROOT_PASSWD_HASH=$$($(MKPASSWD) -m "$(TARGET_GENERIC_PASSWD_METHOD)" "$(TARGET_GENERIC_ROOT_PASSWD)"); \ - $(SED) "s,^root:[^:]*:,root:$$TARGET_GENERIC_ROOT_PASSWD_HASH:," $(TARGET_DIR)/etc/shadow -endef -TARGET_FINALIZE_HOOKS += SYSTEM_ROOT_PASSWD - -ifeq ($(BR2_SYSTEM_BIN_SH_NONE),y) -define SYSTEM_BIN_SH - rm -f $(TARGET_DIR)/bin/sh -endef -else -define SYSTEM_BIN_SH - ln -sf $(TARGET_GENERIC_BIN_SH) $(TARGET_DIR)/bin/sh -endef -endif -TARGET_FINALIZE_HOOKS += SYSTEM_BIN_SH - -ifeq ($(BR2_TARGET_GENERIC_GETTY),y) -ifeq ($(BR2_PACKAGE_SYSVINIT),y) -# In sysvinit inittab, the "id" must not be longer than 4 bytes, so we -# skip the "tty" part and keep only the remaining. -define SYSTEM_GETTY - $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(shell echo $(TARGET_GENERIC_GETTY_PORT) | tail -c+4)::respawn:/sbin/getty -L $(TARGET_GENERIC_GETTY_OPTIONS) $(TARGET_GENERIC_GETTY_PORT) $(TARGET_GENERIC_GETTY_BAUDRATE) $(TARGET_GENERIC_GETTY_TERM) #~' \ - $(TARGET_DIR)/etc/inittab -endef -else -# Add getty to busybox inittab -define SYSTEM_GETTY - $(SED) '/# GENERIC_SERIAL$$/s~^.*#~$(TARGET_GENERIC_GETTY_PORT)::respawn:/sbin/getty -L $(TARGET_GENERIC_GETTY_OPTIONS) $(TARGET_GENERIC_GETTY_PORT) $(TARGET_GENERIC_GETTY_BAUDRATE) $(TARGET_GENERIC_GETTY_TERM) #~' \ - $(TARGET_DIR)/etc/inittab -endef -endif -TARGET_FINALIZE_HOOKS += SYSTEM_GETTY -endif - -ifeq ($(BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW),y) -# Find commented line, if any, and remove leading '#'s -define SYSTEM_REMOUNT_RW - $(SED) '/^#.*-o remount,rw \/$$/s~^#\+~~' $(TARGET_DIR)/etc/inittab -endef -else -# Find uncommented line, if any, and add a leading '#' -define SYSTEM_REMOUNT_RW - $(SED) '/^[^#].*-o remount,rw \/$$/s~^~#~' $(TARGET_DIR)/etc/inittab -endef -endif -TARGET_FINALIZE_HOOKS += SYSTEM_REMOUNT_RW - -endif # BR2_ROOTFS_SKELETON_DEFAULT diff --git a/toolchain/Config.in b/toolchain/Config.in index a851ce4666f..fc30c6e52e7 100644 --- a/toolchain/Config.in +++ b/toolchain/Config.in @@ -27,6 +27,7 @@ config BR2_TOOLCHAIN_USES_MUSL select BR2_TOOLCHAIN_HAS_THREADS select BR2_TOOLCHAIN_HAS_THREADS_DEBUG select BR2_TOOLCHAIN_HAS_THREADS_NPTL + select BR2_TOOLCHAIN_HAS_SSP choice prompt "Toolchain type" diff --git a/toolchain/helpers.mk b/toolchain/helpers.mk index 018f3edb927..ee878e89a16 100644 --- a/toolchain/helpers.mk +++ b/toolchain/helpers.mk @@ -55,13 +55,13 @@ copy_toolchain_lib_root = \ $${ARCH_SYSROOT_DIR}/$${ARCH_LIB_DIR} \ $${ARCH_SYSROOT_DIR}/usr/$${ARCH_LIB_DIR} \ $${SUPPORT_LIB_DIR} ; do \ - LIBSPATH=`find $${dir} -maxdepth 1 -name "$${LIB}" 2>/dev/null` ; \ - if test -n "$${LIBSPATH}" ; then \ + LIBPATHS=`find $${dir} -maxdepth 1 -name "$${LIB}" 2>/dev/null` ; \ + if test -n "$${LIBPATHS}" ; then \ break ; \ fi \ done ; \ mkdir -p $(TARGET_DIR)/$${DESTDIR}; \ - for LIBPATH in $${LIBSPATH} ; do \ + for LIBPATH in $${LIBPATHS} ; do \ while true ; do \ LIBNAME=`basename $${LIBPATH}`; \ LIBDIR=`dirname $${LIBPATH}` ; \ @@ -79,9 +79,7 @@ copy_toolchain_lib_root = \ fi ; \ LIBPATH="`readlink -f $${LIBPATH}`"; \ done; \ - done; \ -\ - echo -n + done # # Copy the full external toolchain sysroot directory to the staging @@ -99,10 +97,22 @@ copy_toolchain_lib_root = \ # corresponding architecture variants), and we don't want to import # them. # -# Then, if the selected architecture variant is not the default one -# (i.e, if SYSROOT_DIR != ARCH_SYSROOT_DIR), then we : +# Then, we need to support two types of multilib toolchains: +# +# - The toolchains that have nested sysroots: a main sysroot, and +# then additional sysroots available as subdirectories of the main +# one. This is for example used by Sourcery CodeBench toolchains. +# +# - The toolchains that have side-by-side sysroots. Each sysroot is a +# complete one, they simply leave one next to each other. This is +# for example used by MIPS Codescape toolchains. +# +# So, we first detect if the selected architecture variant is not the +# default one (i.e, if SYSROOT_DIR != ARCH_SYSROOT_DIR). # -# * Import the header files from the default architecture +# If we are in the situation of a nested sysroot, we: +# +# * If needed, import the header files from the default architecture # variant. Header files are typically shared between the sysroots # for the different architecture variants. If we use the # non-default one, header files were not copied by the previous @@ -116,10 +126,14 @@ copy_toolchain_lib_root = \ # non-default architecture variant is used. Without this, the # compiler fails to find libraries and headers. # -# Some toolchains (i.e Linaro binary toolchains) store support -# libraries (libstdc++, libgcc_s) outside of the sysroot, so we simply -# copy all the libraries from the "support lib directory" into our -# sysroot. +# If we are in the situation of a side-by-side sysroot, we: +# +# * Create a symbolic link +# +# Finally, some toolchains (i.e Linaro binary toolchains) store +# support libraries (libstdc++, libgcc_s) outside of the sysroot, so +# we simply copy all the libraries from the "support lib directory" +# into our sysroot. # # Note that the 'locale' directories are not copied. They are huge # (400+MB) in CodeSourcery toolchains, and they are not really useful. @@ -140,22 +154,29 @@ copy_toolchain_sysroot = \ for i in etc $${ARCH_LIB_DIR} sbin usr usr/$${ARCH_LIB_DIR}; do \ if [ -d $${ARCH_SYSROOT_DIR}/$$i ] ; then \ rsync -au --chmod=u=rwX,go=rX --exclude 'usr/lib/locale' \ - --exclude lib --exclude lib32 --exclude lib64 \ + --include '/libexec*/' --exclude '/lib*/' \ $${ARCH_SYSROOT_DIR}/$$i/ $(STAGING_DIR)/$$i/ ; \ fi ; \ done ; \ - if [ `readlink -f $${SYSROOT_DIR}` != `readlink -f $${ARCH_SYSROOT_DIR}` ] ; then \ - if [ ! -d $${ARCH_SYSROOT_DIR}/usr/include ] ; then \ - cp -a $${SYSROOT_DIR}/usr/include $(STAGING_DIR)/usr ; \ - fi ; \ - mkdir -p `dirname $(STAGING_DIR)/$${ARCH_SUBDIR}` ; \ + SYSROOT_DIR_CANON=`readlink -f $${SYSROOT_DIR}` ; \ + ARCH_SYSROOT_DIR_CANON=`readlink -f $${ARCH_SYSROOT_DIR}` ; \ + if [ $${SYSROOT_DIR_CANON} != $${ARCH_SYSROOT_DIR_CANON} ] ; then \ relpath="./" ; \ - nbslashs=`echo -n $${ARCH_SUBDIR} | sed 's%[^/]%%g' | wc -c` ; \ - for slash in `seq 1 $${nbslashs}` ; do \ - relpath=$${relpath}"../" ; \ - done ; \ - ln -s $${relpath} $(STAGING_DIR)/$${ARCH_SUBDIR} ; \ - echo "Symlinking $(STAGING_DIR)/$${ARCH_SUBDIR} -> $${relpath}" ; \ + if [ $${ARCH_SYSROOT_DIR_CANON:0:$${\#SYSROOT_DIR_CANON}} == $${SYSROOT_DIR_CANON} ] ; then \ + if [ ! -d $${ARCH_SYSROOT_DIR}/usr/include ] ; then \ + cp -a $${SYSROOT_DIR}/usr/include $(STAGING_DIR)/usr ; \ + fi ; \ + mkdir -p `dirname $(STAGING_DIR)/$${ARCH_SUBDIR}` ; \ + nbslashs=`printf $${ARCH_SUBDIR} | sed 's%[^/]%%g' | wc -c` ; \ + for slash in `seq 1 $${nbslashs}` ; do \ + relpath=$${relpath}"../" ; \ + done ; \ + ln -s $${relpath} $(STAGING_DIR)/$${ARCH_SUBDIR} ; \ + echo "Symlinking $(STAGING_DIR)/$${ARCH_SUBDIR} -> $${relpath}" ; \ + elif [ `dirname $${ARCH_SYSROOT_DIR_CANON}` == `dirname $${SYSROOT_DIR_CANON}` ] ; then \ + ln -snf $${relpath} $(STAGING_DIR)/`basename $${ARCH_SYSROOT_DIR_CANON}` ; \ + echo "Symlinking $(STAGING_DIR)/`basename $${ARCH_SYSROOT_DIR_CANON}` -> $${relpath}" ; \ + fi ; \ fi ; \ if test -n "$${SUPPORT_LIB_DIR}" ; then \ cp -a $${SUPPORT_LIB_DIR}/* $(STAGING_DIR)/lib/ ; \ @@ -191,16 +212,16 @@ check_kernel_headers_version = \ # - eat all the remaining chars on the line # - replace by the matched expression # -# - s/\.[[:digit:]]+$// -# - eat a dot followed by as many digits as possible up to the end -# of line -# - replace with nothing -# check_gcc_version = \ expected_version="$(strip $2)" ; \ - real_version=`$(1) --version | sed -r -e '1!d; s/^[^)]+\) ([^[:space:]]+).*/\1/; s/\.[[:digit:]]+$$//;'` ; \ - if [ "$${real_version}" != "$${expected_version}" ] ; then \ - echo "Incorrect selection of gcc version: expected $${expected_version}, got $${real_version}" ; \ + if [ -z "$${expected_version}" ]; then \ + printf "Internal error, gcc version unknown (no GCC_AT_LEAST_X_Y selected)\n"; \ + exit 1 ; \ + fi; \ + real_version=`$(1) --version | sed -r -e '1!d; s/^[^)]+\) ([^[:space:]]+).*/\1/;'` ; \ + if [[ ! "$${real_version}" =~ ^$${expected_version}\. ]] ; then \ + printf "Incorrect selection of gcc version: expected %s.x, got %s\n" \ + "$${expected_version}" "$${real_version}" ; \ exit 1 ; \ fi diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in index 13e2b15748d..cbeb0305b2a 100644 --- a/toolchain/toolchain-buildroot/Config.in +++ b/toolchain/toolchain-buildroot/Config.in @@ -24,7 +24,7 @@ choice prompt "C library" default BR2_TOOLCHAIN_UCLIBC default BR2_TOOLCHAIN_BUILDROOT_GLIBC if BR2_aarch64 || BR2_aarch64_be \ - || BR2_microblaze || BR2_mips64 || BR2_mips64el || BR2_powerpc64 + || BR2_microblaze || BR2_powerpc64 config BR2_TOOLCHAIN_BUILDROOT_UCLIBC bool "uClibc" @@ -34,6 +34,8 @@ config BR2_TOOLCHAIN_BUILDROOT_UCLIBC BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el || \ BR2_powerpc || BR2_sh2a || BR2_sh4 || BR2_sh4eb || \ BR2_sparc || BR2_xtensa || BR2_x86_64 + # Unsupported for MIPS R6 + depends on !BR2_mips_32r6 && !BR2_mips_64r6 help This option selects uClibc as the C library for the cross-compilation toolchain. @@ -67,7 +69,8 @@ config BR2_TOOLCHAIN_BUILDROOT_GLIBC BR2_mipsel || BR2_mips64 || BR2_mips64el|| \ BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \ BR2_sh || BR2_sh64 || BR2_sparc || \ - BR2_x86_64 || BR2_microblaze || BR2_nios2 + BR2_sparc64 || BR2_x86_64 || BR2_microblaze || \ + BR2_nios2 depends on BR2_USE_MMU depends on !BR2_STATIC_LIBS depends on !BR2_powerpc_SPE @@ -89,6 +92,8 @@ config BR2_TOOLCHAIN_BUILDROOT_MUSL BR2_microblaze || BR2_mips || BR2_mipsel || BR2_powerpc || \ BR2_sh || BR2_x86_64 depends on !BR2_powerpc_SPE # not supported, build breaks + # Unsupported for MIPS R6 + depends on !BR2_mips_32r6 && !BR2_mips_64r6 select BR2_TOOLCHAIN_USES_MUSL help This option selects musl as the C library for the @@ -105,6 +110,7 @@ config BR2_TOOLCHAIN_BUILDROOT_LIBC default "glibc" if BR2_TOOLCHAIN_BUILDROOT_GLIBC default "musl" if BR2_TOOLCHAIN_BUILDROOT_MUSL +source "package/linux-headers/Config.in" source "package/uclibc/Config.in" source "package/glibc/Config.in" source "package/binutils/Config.in.host" diff --git a/toolchain/toolchain-common.in b/toolchain/toolchain-common.in index 4be55c3cdbe..1b7b41668cb 100644 --- a/toolchain/toolchain-common.in +++ b/toolchain/toolchain-common.in @@ -5,12 +5,6 @@ # so put it here instead source "package/gdb/Config.in.host" -config BR2_TOOLCHAIN_HAS_GCC_BUG_58595 - bool - -config BR2_TOOLCHAIN_HAS_GCC_BUG_58854 - bool - config BR2_TOOLCHAIN_HAS_NATIVE_RPC bool @@ -227,10 +221,25 @@ config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 bool select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + +config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + bool + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 + # This order guarantees that the highest version is set, as kconfig # stops affecting a value on the first matching default. config BR2_TOOLCHAIN_HEADERS_AT_LEAST string + default "4.4" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + default "4.3" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 + default "4.2" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 default "4.1" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 default "4.0" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 default "3.19" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19 @@ -298,3 +307,82 @@ config BR2_TOOLCHAIN_GCC_AT_LEAST default "4.5" if BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 default "4.4" if BR2_TOOLCHAIN_GCC_AT_LEAST_4_4 default "4.3" if BR2_TOOLCHAIN_GCC_AT_LEAST_4_3 + +config BR2_TOOLCHAIN_HAS_SYNC_1 + bool + default y + depends on !BR2_x86_i386 + depends on !BR2_bfin + depends on !BR2_microblaze + depends on !BR2_sparc + depends on !(BR2_arc && !BR2_ARC_ATOMIC_EXT) + +config BR2_TOOLCHAIN_HAS_SYNC_2 + bool + default y if BR2_TOOLCHAIN_HAS_SYNC_1 + +config BR2_TOOLCHAIN_HAS_SYNC_4 + bool + default y + depends on !BR2_sparc + depends on !BR2_x86_i386 + depends on !(BR2_arc && !BR2_ARC_ATOMIC_EXT) + +# The availability of __sync for 8-byte types on ARM is somewhat +# complicated: +# +# - It appeared in gcc starting with gcc 4.7. +# +# - On ARMv7, there is no problem, it can be directly implemented in +# userspace. +# +# - On < ARMv7, it requires help from the kernel. Unfortunately, the +# libgcc code implementing 8-byte __sync with the help from the +# kernel calls __write() when a failure occurs, which is a function +# internal to glibc, not available in uClibc and musl. This means +# that the 8-byte __sync operations are not available on < ARMv7 +# with uClibc and musl. This problem was fixed as part of gcc +# PR68059, which was backported to the gcc 5 branch, but isn't yet +# part of any gcc 5.x release. +# +config BR2_TOOLCHAIN_ARM_HAS_SYNC_8 + bool + default y + depends on BR2_arm || BR2_armeb + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_ARM_CPU_ARMV7A + +# 8-byte intrinsics available on most x86 CPUs, except a few old ones +config BR2_TOOLCHAIN_X86_HAS_SYNC_8 + bool + default y + depends on BR2_i386 + depends on !BR2_x86_i386 + depends on !BR2_x86_i486 + depends on !BR2_x86_c3 + depends on !BR2_x86_winchip_c6 + depends on !BR2_x86_winchip2 + +# 8-byte intrinsics available: +# - On all 64 bits architecture +# - On a certain combinations of ARM platforms +# - On certain x86 32 bits CPUs +config BR2_TOOLCHAIN_HAS_SYNC_8 + bool + default y if BR2_ARCH_IS_64 + default y if BR2_TOOLCHAIN_ARM_HAS_SYNC_8 + default y if BR2_TOOLCHAIN_X86_HAS_SYNC_8 + +# __atomic intrinsics are available: +# - with gcc 4.8, either through built-ins or libatomic, on all +# architectures +# - with gcc 4.7, libatomic did not exist, so only built-ins are +# available. This means that __atomic can only be used in a subset +# of the architectures +config BR2_TOOLCHAIN_HAS_ATOMIC + bool + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 && BR2_arm + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 && BR2_armeb + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 && BR2_xtensa + default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 && BR2_ARCH_IS_64 diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in index 0b45e12da1a..2ee4c0fdb75 100644 --- a/toolchain/toolchain-external/Config.in +++ b/toolchain/toolchain-external/Config.in @@ -6,17 +6,24 @@ choice comment "(e)glibc toolchains only available with shared lib support" depends on BR2_STATIC_LIBS +comment "Linaro toolchains available for Cortex-A + EABIhf" + depends on BR2_arm || BR2_armeb + depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF + depends on !BR2_STATIC_LIBS + +# Note: we use the same symbol for both Linaro toolchains. +# Since they have different dependencies (the host), we can +# give them different prompts and different help texts. config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM bool "Linaro ARM 2014.09" depends on BR2_arm depends on BR2_ARM_CPU_ARMV7A - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_HOSTARCH = "x86" depends on BR2_ARM_EABIHF depends on !BR2_STATIC_LIBS select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 help @@ -28,22 +35,39 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM with the hard floating point calling convention, and uses the VFPv3-D16 FPU instructions. -comment "Linaro toolchains available for Cortex-A + EABIhf" +# See the note above. +config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM + bool "Linaro ARM 2015.11" depends on BR2_arm - depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_HOSTARCH = "x86_64" + depends on BR2_ARM_EABIHF depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC + select BR2_TOOLCHAIN_HAS_NATIVE_RPC + select BR2_INSTALL_LIBSTDCPP + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 + select BR2_TOOLCHAIN_GCC_AT_LEAST_5 + help + Linaro toolchain for the ARM architecture. It uses Linaro + GCC 2015.08 (based on gcc 5.1), Linaro GDB 2015.08 (based on + GDB 7.10), glibc 2.21, Binutils 2015.10 (based on 2.25). It + generates code that runs on all Cortex-A profile devices, + but tuned for the Cortex-A9. The code generated is Thumb 2, + with the hard floating point calling convention, and uses + the VFPv3-D16 FPU instructions. +# See the note above. config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB bool "Linaro armeb 2014.09" depends on BR2_armeb depends on BR2_ARM_CPU_ARMV7A - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_HOSTARCH = "x86" depends on BR2_ARM_EABIHF depends on !BR2_STATIC_LIBS select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 help @@ -55,86 +79,44 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB generated is Thumb 2, with the hard floating point calling convention, and uses the VFPv3-D16 FPU instructions. -comment "Linaro toolchains available for Cortex-A + EABIhf" +# See the note above. +config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB + bool "Linaro armeb 2015.11" depends on BR2_armeb - depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF - depends on !BR2_STATIC_LIBS - -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201405 - bool "Sourcery CodeBench ARM 2014.05" - depends on BR2_arm - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - depends on BR2_ARM_EABI + depends on BR2_ARM_CPU_ARMV7A + depends on BR2_HOSTARCH = "x86_64" + depends on BR2_ARM_EABIHF depends on !BR2_STATIC_LIBS select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 + select BR2_TOOLCHAIN_GCC_AT_LEAST_5 help - Sourcery CodeBench toolchain for the ARM architecture, from - Mentor Graphics. It uses gcc 4.8.3, binutils 2.24.51, glibc - 2.18 and gdb 7.7.50, kernel headers 3.13. It has support - for the following variants: - - ARMv5TE, little endian, soft-float, glibc - Select ARM926T, ARM10T, XScale or another ARMv5 core - Select BR2_SOFT_FLOAT - - ARMv4T, little endian, soft-float, glibc - Select ARM720T, ARM920T, ARM922T or another ARMv4 core - Select BR2_SOFT_FLOAT - - ARMv7-A, Thumb 2, little endian, soft-float, glibc - Select Cortex-A8, Cortex-A9 or another ARMv7-A core - Select BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mthumb + Linaro toolchain for the ARM big endian architecture. It + uses Linaro GCC 2015.08 (based on gcc 5.1), Linaro GDB + 2015.08 (based on GDB 7.10), glibc 2.21, Binutils 2015.10 + (based on 2.25). It generates code that runs on all Cortex-A + profile devices, but tuned for the Cortex-A9. The code + generated is Thumb 2, with the hard floating point calling + convention, and uses the VFPv3-D16 FPU instructions. -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201311 - bool "Sourcery CodeBench ARM 2013.11" +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM + bool "Sourcery CodeBench ARM 2014.05" depends on BR2_arm depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_ARM_EABI depends on !BR2_STATIC_LIBS - select BR2_TOOLCHAIN_HAS_GCC_BUG_58595 # based-on gcc-4.8.1 - select BR2_TOOLCHAIN_HAS_GCC_BUG_58854 # based-on gcc-4.8.1 select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 help Sourcery CodeBench toolchain for the ARM architecture, from - Mentor Graphics. It uses gcc 4.8.1, binutils 2.23.52, glibc - 2.18 and gdb 7.6.50, kernel headers 3.11. It has support - for the following variants: - - ARMv5TE, little endian, soft-float, glibc - Select ARM926T, ARM10T, XScale or another ARMv5 core - Select BR2_SOFT_FLOAT - - ARMv4T, little endian, soft-float, glibc - Select ARM720T, ARM920T, ARM922T or another ARMv4 core - Select BR2_SOFT_FLOAT - - ARMv7-A, Thumb 2, little endian, soft-float, glibc - Select Cortex-A8, Cortex-A9 or another ARMv7-A core - Select BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mthumb - -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201305 - bool "Sourcery CodeBench ARM 2013.05" - depends on BR2_arm - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - depends on BR2_ARM_EABI - depends on !BR2_STATIC_LIBS - select BR2_TOOLCHAIN_HAS_GCC_BUG_58595 # based-on gcc-4.7.3 - select BR2_TOOLCHAIN_EXTERNAL_GLIBC - select BR2_TOOLCHAIN_HAS_NATIVE_RPC - select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 - help - Sourcery CodeBench toolchain for the ARM architecture, from - Mentor Graphics. It uses gcc 4.7.3, binutils 2.23.52, glibc - 2.17 and gdb 7.4.50, kernel headers 3.8.2. It has support + Mentor Graphics. It uses gcc 4.8.3, binutils 2.24.51, glibc + 2.18 and gdb 7.7.50, kernel headers 3.13. It has support for the following variants: - ARMv5TE, little endian, soft-float, glibc Select ARM926T, ARM10T, XScale or another ARMv5 core @@ -152,13 +134,13 @@ comment "Sourcery CodeBench toolchains available for the EABI ABI" depends on !BR2_ARM_EABI depends on !BR2_STATIC_LIBS -config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A_201109 +config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A bool "Arago ARMv7 2011.09" depends on BR2_arm depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on BR2_ARM_CPU_ARMV7A depends on BR2_ARM_EABI - depends on BR2_ARM_CPU_HAS_VFPV3 || BR2_ARM_CPU_MAYBE_HAS_VFPV3 + depends on BR2_ARM_CPU_HAS_VFPV3 depends on !BR2_STATIC_LIBS select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_TOOLCHAIN_HAS_NATIVE_RPC @@ -176,7 +158,7 @@ config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A_201109 unit to work properly. This unit is available on most Cortex-A ARM processors, but not all. -config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE_201109 +config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE bool "Arago ARMv5 2011.09" depends on BR2_arm depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" @@ -195,9 +177,10 @@ config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE_201109 This toolchain uses software-floating point. -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201505 - bool "Sourcery CodeBench MIPS 2015.05" +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS + bool "Sourcery CodeBench MIPS 2015.11" depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + depends on BR2_mips_32r2 || BR2_mips_64r2 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on !BR2_MIPS_NABI32 depends on !BR2_STATIC_LIBS @@ -205,12 +188,12 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201505 select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + select BR2_TOOLCHAIN_GCC_AT_LEAST_5 help Sourcery CodeBench toolchain for the MIPS architecture, from - Mentor Graphics. It uses gcc 4.9.2, binutils 2.24.51, glibc - 2.21, uClibc 0.9.30 and gdb 7.7.50, kernel headers 3.19. It + Mentor Graphics. It uses gcc 5.2, binutils 2.25.51, glibc + 2.22, uClibc 0.9.30 and gdb 7.10.50, kernel headers 4.2. It has support for the following variants: - MIPS32r2 - Big-Endian, 2008 NaN, O32 Select MIPS (big endian) core @@ -281,200 +264,107 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201505 Select the n64 ABI Select BR2_SOFT_FLOAT -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201411 - bool "Sourcery CodeBench MIPS 2014.11" - depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - depends on !BR2_MIPS_NABI32 +comment "Sourcery CodeBench toolchains are only available for MIPS/MIPS64 o32 and n64" + depends on BR2_MIPS_NABI32 depends on !BR2_STATIC_LIBS - select BR2_TOOLCHAIN_EXTERNAL_GLIBC - select BR2_TOOLCHAIN_HAS_NATIVE_RPC - select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 - help - Sourcery CodeBench toolchain for the MIPS architecture, from - Mentor Graphics. It uses gcc 4.9.1, binutils 2.24.51, glibc - 2.20, uClibc 0.9.30 and gdb 7.7.50, kernel headers 3.16.2. It - has support for the following variants: - - MIPS32r2 - Big-Endian, 2008 NaN, O32 - Select MIPS (big endian) core - Disable BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mnan=2008 - - MIPS32r2 - Big-Endian, O32 - Select MIPS (big endian) core - Disable BR2_SOFT_FLOAT - - MIPS32r2 - Big-Endian, O32, MIPS16 - Select MIPS (big endian) core - Disable BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mips16 - - MIPS32r2 - Big-Endian, Soft-Float, O32 - Select MIPS (big endian) core - Select BR2_SOFT_FLOAT - - MIPS32r2 - Big-Endian, Soft-Float, O32, MIPS16 - Select MIPS (big endian) core - Select BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mips16 - - MIPS32r2 - Little-Endian, 2008 NaN, O32 - Select MIPS (little endian) core - Disable BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mnan=2008 - - MIPS32r2 - Little-Endian, O32 - Select MIPS (little endian) core - Disable BR2_SOFT_FLOAT - - MIPS32r2 - Little-Endian, O32, MIPS16 - Select MIPS (little endian) core - Disable BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mips16 - - MIPS32r2 - Little-Endian, Soft-Float, O32 - Select MIPS (little endian) core - Select BR2_SOFT_FLOAT - - MIPS32r2 - Little-Endian, Soft-Float, O32, MIPS16 - Select MIPS (little endian) core - Select BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mips16 - - MIPS32r2 - Little-Endian, Soft-Float, O32, microMIPS - Select MIPS (little endian) core - Select BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mmicromips - - MIPS32r2 - uClibc, Big-Endian, 2008 NaN, O32 - Not usable in Buildroot yet. - - MIPS32r2 - uClibc, Big-Endian, O32 - Not usable in Buildroot yet. - - MIPS32r2 - uClibc, Big-Endian, Soft-Float, O32 - Not usable in Buildroot yet. - - MIPS32r2 - uClibc, Little-Endian, 2008 NaN, O32 - Not usable in Buildroot yet. - - MIPS32r2 - uClibc, Little-Endian, O32 - Not usable in Buildroot yet. - - MIPS32r2 - uClibc, Little-Endian, Soft-Float, O32 - Not usable in Buildroot yet. - - MIPS64r2 - Big-Endian, N64 - Select MIPS64 (big endian) core - Select the n64 ABI - Disable BR2_SOFT_FLOAT - - MIPS64r2 - Big-Endian, Soft-Float, N64 - Select MIPS64 (big endian) core - Select the n64 ABI - Select BR2_SOFT_FLOAT - - MIPS64r2 - Little-Endian, N64 - Select MIPS64 (little endian) core - Select the n64 ABI - Disable BR2_SOFT_FLOAT - - MIPS64r2 - Little-Endian, Soft-Float, N64 - Select MIPS64 (little endian) core - Select the n64 ABI - Select BR2_SOFT_FLOAT -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201405 - bool "Sourcery CodeBench MIPS 2014.05" +config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS + bool "Codescape IMG GNU Linux Toolchain 2015.06" depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - depends on !BR2_MIPS_NABI32 - depends on !BR2_STATIC_LIBS + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_mips_32r6 || BR2_mips_64r6 select BR2_TOOLCHAIN_EXTERNAL_GLIBC - select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 help - Sourcery CodeBench toolchain for the MIPS architecture, from - Mentor Graphics. It uses gcc 4.8.3, binutils 2.24.51, glibc - 2.18, uClibc 0.9.30 and gdb 7.7.50, kernel headers 3.13. It - has support for the following variants: - - MIPS32r2 - Big-Endian, 2008 NaN, O32 - Select MIPS (big endian) core - Disable BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mnan=2008 - - MIPS32r2 - Big-Endian, O32 - Select MIPS (big endian) core - Disable BR2_SOFT_FLOAT - - MIPS32r2 - Big-Endian, O32, MIPS16 - Select MIPS (big endian) core - Disable BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mips16 - - MIPS32r2 - Big-Endian, Soft-Float, O32 - Select MIPS (big endian) core - Select BR2_SOFT_FLOAT - - MIPS32r2 - Big-Endian, Soft-Float, O32, MIPS16 - Select MIPS (big endian) core - Select BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mips16 - - MIPS32r2 - Little-Endian, 2008 NaN, O32 - Select MIPS (little endian) core - Disable BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mnan=2008 - - MIPS32r2 - Little-Endian, O32 - Select MIPS (little endian) core - Disable BR2_SOFT_FLOAT - - MIPS32r2 - Little-Endian, O32, MIPS16 - Select MIPS (little endian) core - Disable BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mips16 - - MIPS32r2 - Little-Endian, Soft-Float, O32 - Select MIPS (little endian) core - Select BR2_SOFT_FLOAT - - MIPS32r2 - Little-Endian, Soft-Float, O32, MIPS16 - Select MIPS (little endian) core - Select BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mips16 - - MIPS32r2 - Little-Endian, Soft-Float, O32, microMIPS - Select MIPS (little endian) core - Select BR2_SOFT_FLOAT - Set BR2_TARGET_OPTIMIZATION to -mmicromips - - MIPS32r2 - uClibc, Big-Endian, 2008 NaN, O32 - Not usable in Buildroot yet. - - MIPS32r2 - uClibc, Big-Endian, O32 - Not usable in Buildroot yet. - - MIPS32r2 - uClibc, Big-Endian, Soft-Float, O32 - Not usable in Buildroot yet. - - MIPS32r2 - uClibc, Little-Endian, 2008 NaN, O32 - Not usable in Buildroot yet. - - MIPS32r2 - uClibc, Little-Endian, O32 - Not usable in Buildroot yet. - - MIPS32r2 - uClibc, Little-Endian, Soft-Float, O32 - Not usable in Buildroot yet. - - MIPS64r2 - Big-Endian, N64 - Select MIPS64 (big endian) core - Select the n64 ABI - Disable BR2_SOFT_FLOAT - - MIPS64r2 - Big-Endian, Soft-Float, N64 - Select MIPS64 (big endian) core - Select the n64 ABI - Select BR2_SOFT_FLOAT - - MIPS64r2 - Little-Endian, N64 - Select MIPS64 (little endian) core - Select the n64 ABI - Disable BR2_SOFT_FLOAT - - MIPS64r2 - Little-Endian, Soft-Float, N64 - Select MIPS64 (little endian) core - Select the n64 ABI - Select BR2_SOFT_FLOAT - -comment "Sourcery CodeBench toolchains are only available for MIPS/MIPS64 o32 and n64" - depends on BR2_MIPS_NABI32 - depends on !BR2_STATIC_LIBS - -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 - bool "Sourcery CodeBench Nios-II 2014.05" - depends on BR2_nios2 + Codescape IMG GNU Linux Toolchain 2015.06 for the MIPS + architecture, from Imagination Technologies. It uses gcc + 4.9.2, binutils 2.24.90, glibc 2.20, gdb 7.9.1 and kernel + headers 4.0. It has support for the following variants: + - MIPS32r6 - Big-Endian, o32 + Select 'MIPS (big endian)' Target Architecture + Select 'mips 32r6' Target Architecture Variant + - MIPS32r6 - Little-Endian, o32 + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r6' Target Architecture Variant + - MIPS32r6 - Little-Endian, o32, microMIPS + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r6' Target Architecture Variant + Set BR2_TARGET_OPTIMIZATION to '-mmicromips' + - MIPS64r6 - Big-Endian, n32 + Select 'MIPS64 (big endian)' Target Architecture + Select 'mips 64r6' Target Architecture Variant + Select 'n32' Target ABI + - MIPS64r6 - Little-Endian, n32 + Select 'MIPS64 (little endian)' Target Architecture + Select 'mips 64r6' Target Architecture Variant + Select 'n32' Target ABI + - MIPS64r6 - Big-Endian, n64 + Select 'MIPS64 (big endian)' Target Architecture + Select 'mips 64r6' Target Architecture Variant + Select 'n64' Target ABI + - MIPS64r6 - Little-Endian, n64 + Select 'MIPS64 (little endian)' Target Architecture + Select 'mips 64r6' Target Architecture Variant + Select 'n64' Target ABI + + +config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS + bool "Codescape MTI GNU Linux Toolchain 2015.06" + depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - depends on !BR2_STATIC_LIBS + depends on !BR2_MIPS_SOFT_FLOAT + depends on BR2_mips_32r2 || BR2_mips_64r2 select BR2_TOOLCHAIN_EXTERNAL_GLIBC - select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 help - Sourcery CodeBench toolchain for the Nios-II architecture, - from Mentor Graphics. It uses gcc 4.8.3, binutils 2.24.51, - glibc 2.19.90, gdb 7.7.50 and kernel headers 3.12. - -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - bool "Sourcery CodeBench Nios-II 2013.05" + Codescape MTI GNU Linux Toolchain 2015.06 for the MIPS + architecture, from Imagination Technologies. It uses gcc + 4.9.2, binutils 2.24.90, glibc 2.20, gdb 7.9.1 and kernel + headers 4.0. It has support for the following variants: + - MIPS32r2 - Big-Endian, o32 + Select 'MIPS (big endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + - MIPS32r2 - Little-Endian, o32 + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + - MIPS32r2 - Big-Endian, 2008 NaN, o32 + Select 'MIPS (big endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Set BR2_TARGET_OPTIMIZATION to '-mnan=2008' + - MIPS32r2 - Little-Endian, 2008 NaN, o32 + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Set BR2_TARGET_OPTIMIZATION to '-mnan=2008' + - MIPS32r2 - Little-Endian, o32, microMIPS + Select 'MIPS (little endian)' Target Architecture + Select 'mips 32r2' Target Architecture Variant + Set BR2_TARGET_OPTIMIZATION to '-mmicromips' + - MIPS64r2 - Big-Endian, n32 + Select 'MIPS64 (big endian)' Target Architecture + Select 'mips 64r2' Target Architecture Variant + Select 'n32' Target ABI + - MIPS64r2 - Little-Endian, n32 + Select 'MIPS64 (little endian)' Target Architecture + Select 'mips 64r2' Target Architecture Variant + Select 'n32' Target ABI + - MIPS64r2 - Big-Endian, n64 + Select 'MIPS64 (big endian)' Target Architecture + Select 'mips 64r2' Target Architecture Variant + Select 'n64' Target ABI + - MIPS64r2 - Little-Endian, n64 + Select 'MIPS64 (little endian)' Target Architecture + Select 'mips 64r2' Target Architecture Variant + Select 'n64' Target ABI + +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII + bool "Sourcery CodeBench Nios-II 2015.11" depends on BR2_nios2 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on !BR2_STATIC_LIBS @@ -482,17 +372,17 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + select BR2_TOOLCHAIN_GCC_AT_LEAST_5 help Sourcery CodeBench toolchain for the Nios-II architecture, - from Mentor Graphics. It uses gcc 4.7.3, binutils 2.23.52, - glibc 2.17, gdb 7.4.50 and kernel headers 3.7.0. + from Mentor Graphics. It uses gcc 5.2, binutils 2.25.51, + glibc 2.22, gdb 7.10.50 and kernel headers 4.2. -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201203 - bool "Sourcery CodeBench PowerPC 2012.03" +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC_E500V2 + bool "Sourcery CodeBench PowerPC 2012.03 (e500v2 only)" depends on BR2_powerpc - depends on BR2_powerpc_SPE + depends on BR2_powerpc_8548 # e500v2 support only depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on !BR2_STATIC_LIBS select BR2_TOOLCHAIN_EXTERNAL_GLIBC @@ -508,7 +398,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201203 support for the following variants: - e500v2 glibc, SPE, 32 bits -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201103 +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC bool "Sourcery CodeBench PowerPC 2011.03" depends on BR2_powerpc depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" @@ -541,40 +431,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201103 - 970 glibc hard-float, 64 bits Set BR2_TARGET_OPTIMIZATION to -m64 -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009 - bool "Sourcery CodeBench PowerPC 2010.09" - depends on BR2_powerpc - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - depends on !BR2_STATIC_LIBS - select BR2_TOOLCHAIN_EXTERNAL_GLIBC - select BR2_TOOLCHAIN_HAS_NATIVE_RPC - select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS - # kernel headers: 2.6.35 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 - help - Sourcery CodeBench toolchain for the PowerPC architecture, - from Mentor Graphics. It uses gcc 4.5.1, binutils 2.20, - glibc 2.11, gdb 7.2.50 and kernel headers 2.6.35.2. It has - support for the following variants: - - 603 glibc, 32 bits - Select a generic PowerPC core - Disable BR2_SOFT_FLOAT - - 603 soft float glibc, 32 bits - Select a generic PowerPC core - Enable BR2_SOFT_FLOAT - - e600 altivec glibc, 32 bits - Set BR2_TARGET_OPTIMIZATION to -te600 - - e500v1 glibc, 32 bits - Set BR2_TARGET_OPTIMIZATION to -te500v1 - - e500v2 glibc, 32 bits - Set BR2_TARGET_OPTIMIZATION to -te500v2 - - e500mc glibc, 32 bits - Set BR2_TARGET_OPTIMIZATION to -te500mc - - 970 glibc hard-float, 64 bits - Set BR2_TARGET_OPTIMIZATION to -m64 - -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201209 +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH bool "Sourcery CodeBench SH 2012.09" depends on BR2_sh4a || BR2_sh4aeb depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" @@ -599,57 +456,8 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201209 - SH4A, uClibc, big endian Not usable in Buildroot yet. -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201203 - bool "Sourcery CodeBench SH 2012.03" - depends on BR2_sh4a || BR2_sh4aeb - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - depends on !BR2_STATIC_LIBS - select BR2_TOOLCHAIN_EXTERNAL_GLIBC - select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 - help - Sourcery CodeBench toolchain for the SuperH architecture, - from Mentor Graphics. It uses gcc 4.6.3, binutils 2.21.53, - glibc 2.15, uClibc 0.9.30, gdb 7.2.50 and kernel headers - 3.2.10. It has support for the following variants: - - SH4A, glibc, little endian - Default. - - SH4A, glibc, big endian - Add -mb to BR2_TARGET_OPTIMIZATION - - SH4A, uClibc, little endian - Not usable in Buildroot yet. - - SH4A, uClibc, big endian - Not usable in Buildroot yet. - -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201103 - bool "Sourcery CodeBench SH 2011.03" - depends on BR2_sh4a || BR2_sh4aeb - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - depends on !BR2_STATIC_LIBS - select BR2_TOOLCHAIN_EXTERNAL_GLIBC - select BR2_TOOLCHAIN_HAS_NATIVE_RPC - select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS - # kernel headers: 2.6.38 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 - help - Sourcery CodeBench toolchain for the SuperH architecture, - from Mentor Graphics. It uses gcc 4.5.2, binutils 2.20, - glibc 2.13, uClibc 0.9.30, gdb 7.2.50 and kernel headers - 2.6.38. It has support for the following variants: - - SH4A, glibc, little endian - Default. - - SH4A, glibc, big endian - Add -mb to BR2_TARGET_OPTIMIZATION - - SH4A, uClibc, little endian - Not usable in Buildroot yet. - - SH4A, uClibc, big endian - Not usable in Buildroot yet. - -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64_201405 - bool "Sourcery CodeBench AMD64 2014.05" +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64 + bool "Sourcery CodeBench AMD64 2015.11" depends on BR2_x86_64 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" depends on !BR2_STATIC_LIBS @@ -658,13 +466,13 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64_201405 select BR2_TOOLCHAIN_HAS_NATIVE_RPC select BR2_INSTALL_LIBSTDCPP select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + select BR2_TOOLCHAIN_GCC_AT_LEAST_5 help Sourcery CodeBench toolchain for the amd64 (x86_64) - architectures, from Mentor Graphics. It uses gcc 4.8.3, - binutils 2.24.51, glibc 2.18, gdb 7.7.50 and kernel headers - 3.13.0. It has support for the following variants: + architectures, from Mentor Graphics. It uses gcc 5.2, + binutils 2.25.51, glibc 2.22, gdb 7.10.50 and kernel headers + 4.2. It has support for the following variants: - AMD Puma/Jaguar (family 16h), glibc Default for x86_64, nothing special to do. - AMD Steamroller (family 15h), glibc @@ -672,7 +480,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64_201405 No other architecture variants are supported since glibc is optimized for one of these two baselines. -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201209 +config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86 bool "Sourcery CodeBench x86/x86_64 2012.09" depends on BR2_i386 || BR2_x86_64 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" @@ -701,64 +509,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201209 Other architecture variants (beyond Pentium-4/Xeon) are supported as well, but glibc is not optimised for it. -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201203 - bool "Sourcery CodeBench x86/x86_64 2012.03" - depends on BR2_i386 || BR2_x86_64 - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - depends on !BR2_STATIC_LIBS - depends on !BR2_x86_jaguar - depends on !BR2_x86_steamroller - select BR2_TOOLCHAIN_EXTERNAL_GLIBC - select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 - help - Sourcery CodeBench toolchain for the x86/x86_64 - architectures, from Mentor Graphics. It uses gcc 4.6.3, - binutils 2.21.53, glibc 2.15, gdb 7.2.50 and kernel headers - 3.2.10. It has support for the following variants: - - Intel Pentium 4, glibc, 32 bits - Default for x86, nothing special to do. - - Intel Atom, glibc, 32 bits - Select an Atom core - - Intel Xeon, glibc, 64 bits - Default for x86_64, nothing special to do. - - Intel Core 2, glibc, 64 bits - Select a Core 2 core - Other architecture variants (beyond Pentium-4/Xeon) are - supported as well, but glibc is not optimised for it. - -config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201109 - bool "Sourcery CodeBench x86/x86_64 2011.09" - depends on BR2_i386 || BR2_x86_64 - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - depends on !BR2_STATIC_LIBS - depends on !BR2_x86_jaguar - depends on !BR2_x86_steamroller - select BR2_TOOLCHAIN_EXTERNAL_GLIBC - select BR2_TOOLCHAIN_HAS_NATIVE_RPC - select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 - help - Sourcery CodeBench toolchain for the x86/x86_64 - architectures, from Mentor Graphics. It uses gcc 4.6.1, - binutils 2.21.53, glibc 2.13, gdb 7.2.50 and kernel headers - 3.0.1. It has support for the following variants: - - Intel Pentium 4, glibc, 32 bits - Default for x86, nothing special to do. - - Intel Atom, glibc, 32 bits - Select an Atom core - - Intel Xeon, glibc, 64 bits - Default for x86_64, nothing special to do. - - Intel Core 2, glibc, 64 bits - Select a Core 2 core - Other architecture variants (beyond Pentium-4/Xeon) are - supported as well, but glibc is not optimised for it. - -config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1 +config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX bool "Blackfin.uclinux.org 2014R1" depends on BR2_bfin depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" @@ -775,51 +526,32 @@ config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1 Toolchain for the Blackfin architecture, from http://blackfin.uclinux.org. -config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1 - bool "Blackfin.uclinux.org 2013R1" - depends on BR2_bfin - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - select BR2_TOOLCHAIN_EXTERNAL_UCLIBC - select BR2_INSTALL_LIBSTDCPP - select BR2_TOOLCHAIN_HAS_NATIVE_RPC - select BR2_USE_WCHAR - select BR2_TOOLCHAIN_HAS_THREADS - select BR2_TOOLCHAIN_HAS_THREADS_DEBUG - select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3 - help - Toolchain for the Blackfin architecture, from - http://blackfin.uclinux.org. - -config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 - bool "Blackfin.uclinux.org 2012R2-RC2" - depends on BR2_bfin - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" - select BR2_TOOLCHAIN_EXTERNAL_UCLIBC +# See note about Linaro ARM/ARMEB toolchains, above. +config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64 + bool "Linaro AArch64 14.09" + depends on BR2_aarch64 + depends on BR2_HOSTARCH = "x86" + depends on !BR2_STATIC_LIBS + select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_INSTALL_LIBSTDCPP select BR2_TOOLCHAIN_HAS_NATIVE_RPC - select BR2_USE_WCHAR - select BR2_TOOLCHAIN_HAS_THREADS - select BR2_TOOLCHAIN_HAS_THREADS_DEBUG - select BR2_HOSTARCH_NEEDS_IA32_LIBS - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 + select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 help - Toolchain for the Blackfin architecture, from - http://blackfin.uclinux.org. + Toolchain for the AArch64 architecture, from + http://www.linaro.org/engineering/armv8/ +# See note about Linaro ARM/ARMEB toolchains, above. config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64 - bool "Linaro AArch64 14.09" + bool "Linaro AArch64 2015.11" depends on BR2_aarch64 - depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + depends on BR2_HOSTARCH = "x86_64" depends on !BR2_STATIC_LIBS select BR2_TOOLCHAIN_EXTERNAL_GLIBC select BR2_INSTALL_LIBSTDCPP - select BR2_HOSTARCH_NEEDS_IA32_LIBS select BR2_TOOLCHAIN_HAS_NATIVE_RPC - select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 - select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0 + select BR2_TOOLCHAIN_GCC_AT_LEAST_5 help Toolchain for the AArch64 architecture, from http://www.linaro.org/engineering/armv8/ @@ -842,10 +574,14 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64 config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS bool "Musl 1.1.6 toolchain (experimental)" - depends on (BR2_arm && BR2_ARM_EABI) || (BR2_armeb && BR2_ARM_EABI) || \ + depends on (BR2_arm && BR2_ARM_EABI) || \ + (BR2_arm && BR2_ARM_EABIHF && !BR2_ARM_CPU_ARMV4) || \ + (BR2_armeb && BR2_ARM_EABI) || \ (BR2_i386 && !BR2_x86_i386) || BR2_microblazebe || BR2_mips || \ BR2_mipsel || (BR2_powerpc && BR2_powerpc_CLASSIC) || BR2_x86_64 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86" + # Unsupported for MIPS R6 + depends on !BR2_mips_32r6 && !BR2_mips_64r6 select BR2_TOOLCHAIN_EXTERNAL_MUSL select BR2_INSTALL_LIBSTDCPP select BR2_HOSTARCH_NEEDS_IA32_LIBS @@ -856,12 +592,13 @@ config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS musl-cross project. It uses gcc 4.9.2, binutils 2.25 and musl 1.1.6. It does not have a cross debugger included. - The ARM toolchain is built for ARMv4t, soft-float. + The ARM soft-float toolchain is built for ARMv4t, while the + ARM hard-float toolchain is built for ARMv5t. The x86 toolchain is built for i486. http://musl.codu.org/ -config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_2014_12 +config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC bool "Synopsys ARC 2014.12 toolchain" depends on BR2_arc depends on BR2_HOSTARCH = "x86_64" @@ -932,41 +669,28 @@ config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX config BR2_TOOLCHAIN_EXTERNAL_PREFIX string - default "arc-linux" if BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_2014_12 && BR2_arcle - default "arceb-linux" if BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_2014_12 && BR2_arceb + default "arc-linux" if BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC && BR2_arcle + default "arceb-linux" if BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC && BR2_arceb default "arm-linux-gnueabihf" if BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM default "armeb-linux-gnueabihf" if BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB - default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201305 - default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201311 - default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201405 - default "arm-arago-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A_201109 - default "arm-arago-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE_201109 + default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM + default "arm-arago-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A + default "arm-arago-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE default "aarch64-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64 default "aarch64-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64 - default "mips-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201405 - default "mips-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201411 - default "mips-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201505 - default "nios2-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305 - default "nios2-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405 - default "powerpc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009 - default "powerpc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201103 - default "powerpc-mentor-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201203 - default "sh-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201103 - default "sh-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201203 - default "sh-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201209 - default "sh-uclinux" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201009 - default "sh-uclinux" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201103 - default "i686-pc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201109 - default "i686-pc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201203 - default "i686-pc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201209 - default "x86_64-amd-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64_201405 - default "bfin-uclinux" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 && BR2_BINFMT_FLAT - default "bfin-linux-uclibc" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 && BR2_BINFMT_FDPIC - default "bfin-uclinux" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1 && BR2_BINFMT_FLAT - default "bfin-linux-uclibc" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1 && BR2_BINFMT_FDPIC - default "bfin-uclinux" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1 && BR2_BINFMT_FLAT - default "bfin-linux-uclibc" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1 && BR2_BINFMT_FDPIC - default "arm-linux-musleabi" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm + default "mips-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS + default "nios2-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII + default "powerpc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC + default "powerpc-mentor-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC_E500V2 + default "sh-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH + default "i686-pc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86 + default "x86_64-amd-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64 + default "bfin-uclinux" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX && BR2_BINFMT_FLAT + default "bfin-linux-uclibc" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX && BR2_BINFMT_FDPIC + default "arm-linux-musleabi" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm && BR2_ARM_EABI + default "arm-linux-musleabihf" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm && BR2_ARM_EABIHF + default "mips-img-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS + default "mips-mti-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS default "armeb-linux-musleabi" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_armeb default "i486-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_i386 default "microblaze-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_microblazebe @@ -990,6 +714,7 @@ config BR2_TOOLCHAIN_EXTERNAL_UCLIBC config BR2_TOOLCHAIN_EXTERNAL_MUSL bool select BR2_TOOLCHAIN_USES_MUSL + select BR2_PACKAGE_NETBSD_QUEUE if BR2_TOOLCHAIN_EXTERNAL_CUSTOM @@ -1051,6 +776,18 @@ choice m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4 + bool "4.4.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_3 + bool "4.3.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3 + +config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_2 + bool "4.2.x" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2 + config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_1 bool "4.1.x" select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1 diff --git a/toolchain/toolchain-external/toolchain-external.hash b/toolchain/toolchain-external/toolchain-external.hash index 3980c626ea0..df6d7e91adf 100644 --- a/toolchain/toolchain-external/toolchain-external.hash +++ b/toolchain/toolchain-external/toolchain-external.hash @@ -1,48 +1,28 @@ # Sourcery CodeBench Lite for MIPS -# From: https://sourcery.mentor.com/GNUToolchain/release3068 -md5 0fcdc0fee260c7bed060c999bfe8440d mips-2015.05-18-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2 -# From: https://sourcery.mentor.com/GNUToolchain/release2935 -md5 ad4a66e4791606c5df70f48c4a97b0ec mips-2014.11-22-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2 -# From: https://sourcery.mentor.com/GNUToolchain/release2791 -md5 14facaac538a43533b89d969d7904d46 mips-2014.05-27-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2 - -# Sourcery CodeBench Lite for AMD64 -# From https://sourcery.mentor.com/GNUToolchain/release2777 -md5 a1f8650d1a5ff726cca0893522fd8745 amd-2014.05-25-x86_64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2 +# Locally computed +sha256 e653102803d0fadc0a83286400c03bc7932ab081d3f8fc8917c34e76468315a2 mips-2015.11-32-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2 ###################################### # Next hashes are all locally computed # Blackfin toolchains from Analog Devices -sha256 fba010929c7355a0286fc4b1817d6065ee21380d3c2993383d3778f0b998ca9d blackfin-toolchain-2012R2-RC2.i386.tar.bz2 -sha256 90284fe72125f381817da505b6f91f2b0c86a763ffe2c722c7d6b3ae60b25010 blackfin-toolchain-2013R1-RC1.i386.tar.bz2 sha256 e424e90d8481d942a40266d78d1488726561fed3ec38403094f98055e61889d0 blackfin-toolchain-2014R1-RC2.i386.tar.bz2 -sha256 436ca3d901b152094cd6be2b6e274c59643387f46bb0563db1adcab1202f1455 blackfin-toolchain-uclibc-full-2012R2-RC2.i386.tar.bz2 -sha256 4d66a3390ae9e1c4b9aad214757791a5e0c45ef2bb31977fa6d3a80d96290237 blackfin-toolchain-uclibc-full-2013R1-RC1.i386.tar.bz2 sha256 c65b1b4b918d5185349d62a3b7bf43b4b21e1175c52598ec047ca56b3f11d857 blackfin-toolchain-uclibc-full-2014R1-RC2.i386.tar.bz2 # Mentor's Sourcery CodeBench Lite toolchains # ARM -sha256 395f1c504a8fb6b7a10663143627b7eee2edc8fd884aa13c4b8505a3623960f5 arm-2013.05-24-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -sha256 8455854d3b3abbc2328e6c061c6b9625ef8f9c1f236db9f1771877715bd70b9b arm-2013.11-33-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 sha256 39ee0e789034334ecc89af94e838e3a4815400ac5ff980f808f466b04778532e arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 # NiosII -sha256 29567361910b020751ea8041ecb45b3cc74714e71c6deb4981b678772b746b33 sourceryg++-2013.05-43-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2 -sha256 fb02fe3d595bd80a6e0ebc9d59a64010d84ae8d13f47e241b3a335f42b0414dc sourceryg++-2014.05-47-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2 +sha256 cc47745dc1264fcb8fb98fb1315ab772ab98691396021c455229b58abaf887f5 sourceryg++-2015.11-27-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2 # PowerPC -sha256 d68d1a2a055ece3824a1a11fcc0a8e813ee1d215025247cce0d877caa12c4b54 freescale-2010.09-55-powerpc-linux-gnu-i686-pc-linux-gnu.tar.bz2 sha256 525e1f53abbf65c2974ae9af762c45bb38520fe5fc50e968a23fe6a18e9eec04 freescale-2011.03-38-powerpc-linux-gnu-i686-pc-linux-gnu.tar.bz2 sha256 d6c94587d546197836e7e1a6909f6aabfa5879e91f501ab03088a6887cc242fc mentor-2012.03-71-powerpc-mentor-linux-gnu-i686-pc-linux-gnu.tar.bz2 # SuperH -sha256 ce8115844619a8b02f85e801999fe4cc2e603788be784ae860a070f92ab8053d renesas-2011.03-37-sh-linux-gnu-i686-pc-linux-gnu.tar.bz2 -sha256 a545a9d412c47d85edcad09a86fe1d12a48e2b6e19d0ccf86b63d2cf0bffa687 renesas-2012.03-35-sh-linux-gnu-i686-pc-linux-gnu.tar.bz2 sha256 59d6766fde244931aa52db01433d5acd051998762a931121c5fc109536a1a802 renesas-2012.09-61-sh-linux-gnu-i686-pc-linux-gnu.tar.bz2 -sha256 deaae7338c51f526ef809857e0335080e22ddbc2355cad14ade0813b40cd2e22 renesas-2010.09-60-sh-uclinux-i686-pc-linux-gnu.tar.bz2 -sha256 e7d87fc62daecfb3989168bc5b84e099013fe9b796df3da5daebd2e0c0b1af6c renesas-2011.03-36-sh-uclinux-i686-pc-linux-gnu.tar.bz2 # x86 -sha256 5f308a3fe0752f181fd0d33a70a17efb8300d0e34a94ed18a1a0304dc18e150e ia32-2011.09-24-i686-pc-linux-gnu-i386-linux.tar.bz2 -sha256 6ac2f0d9ec56242ecbe4315533f3e00a675909850a41bdafc052fbfe27ece300 ia32-2012.03-27-i686-pc-linux-gnu-i386-linux.tar.bz2 sha256 ea804cf02014369da52abc4f64e91e96bde2dd2230aca96109459013d4545458 ia32-2012.09-62-i686-pc-linux-gnu-i386-linux.tar.bz2 +# AMD64 +sha256 cb4d071db8aefb8005fe72824b96568d93a50f5acd85bacf505a34fe2f265f70 amd-2015.11-36-x86_64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2 # Aarch64 sha256 8ea78c5988b2bb507534f1ad46aa46659f66b39d55f2fc40e163a90b4195e70f aarch64-2014.05-30-aarch64-linux-gnu-i686-pc-linux-gnu.tar.bz2 @@ -52,8 +32,16 @@ sha256 254af7d02eb3bcc8345c78e131700bc995d65b68232caaed21150a5fd1456070 arago-2 # ARM and Aarch64 toolchains from Linaro sha256 0cffac0caea0eb3c8bdddfa14be011ce366680f40aeddbefc7cf23cb6d4f1891 gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz +sha256 ff2d231749e59968cb5e7032b4f4e4ae82ff9f11c23967863e627a6c59cb3bc0 gcc-linaro-5.2-2015.11-2-x86_64_arm-linux-gnueabihf.tar.xz sha256 4bc9d86390f8fa67a693ba4768ba5b12faaf7dd37c706c05ccd9321e765226e4 gcc-linaro-armeb-linux-gnueabihf-4.9-2014.09_linux.tar.xz +sha256 e3df0c31d0bd8d1f6d45d585203c0f601e50b1ff7225da1423a8ca36e8caf58f gcc-linaro-5.2-2015.11-2-x86_64_armeb-linux-gnueabihf.tar.xz sha256 3954f496ab01de67241109e82abfaa9b7625fdab4f05e79e7902e9814a07b832 gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux.tar.xz +sha256 b318a1837a54146b0120a13852386576e38355513b4e2cd5e2125f9c26913777 gcc-linaro-5.2-2015.11-2-x86_64_aarch64-linux-gnu.tar.xz + +# Codescape toolchains from Imagination Technologies +# From: http://codescape-mips-sdk.imgtec.com/components/toolchain/2015.06-05/ +sha256 f2d12dde626b750987d37ba6c73c6e11839850add94b0d4e4cf77917c1b0944f Codescape.GNU.Tools.Package.2015.06-05.for.MIPS.MTI.Linux.CentOS-5.x86.tar.gz +sha256 545923cf40101b5de6b1e0fdf124aceba7ab27daf6c755aecf01d2c886715409 Codescape.GNU.Tools.Package.2015.06-05.for.MIPS.IMG.Linux.CentOS-5.x86.tar.gz # Synopsys DesignWare ARC toolchains sha256 1fa4ea2c8616623205f1c7beca02ea31b019099528a7433e5b020b0876b93bf3 arc_gnu_2014.12_prebuilt_uclibc_le_arc700_linux_install.tar.gz diff --git a/toolchain/toolchain-external/toolchain-external.mk b/toolchain/toolchain-external/toolchain-external.mk index 3cb59c64e21..6c3022ab787 100644 --- a/toolchain/toolchain-external/toolchain-external.mk +++ b/toolchain/toolchain-external/toolchain-external.mk @@ -142,26 +142,33 @@ ifneq ($(TOOLCHAIN_EXTERNAL_PREFIX),) TOOLCHAIN_EXTERNAL_BIN := $(shell dirname $(shell which $(TOOLCHAIN_EXTERNAL_PREFIX)-gcc)) endif else -ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1)$(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1)$(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2),y) +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX),y) TOOLCHAIN_EXTERNAL_BIN := $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/$(TOOLCHAIN_EXTERNAL_PREFIX)/bin else TOOLCHAIN_EXTERNAL_BIN := $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/bin endif endif +# If this is a buildroot toolchain, it already has a wrapper which we want to +# bypass. Since this is only evaluated after it has been extracted, we can use +# $(wildcard ...) here. +TOOLCHAIN_EXTERNAL_SUFFIX = \ + $(if $(wildcard $(TOOLCHAIN_EXTERNAL_BIN)/*.br_real),.br_real) +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += \ + -DBR_CROSS_PATH_SUFFIX='"$(TOOLCHAIN_EXTERNAL_SUFFIX)"' + TOOLCHAIN_EXTERNAL_CROSS = $(TOOLCHAIN_EXTERNAL_BIN)/$(TOOLCHAIN_EXTERNAL_PREFIX)- -TOOLCHAIN_EXTERNAL_CC = $(TOOLCHAIN_EXTERNAL_CROSS)gcc -TOOLCHAIN_EXTERNAL_CXX = $(TOOLCHAIN_EXTERNAL_CROSS)g++ -TOOLCHAIN_EXTERNAL_READELF = $(TOOLCHAIN_EXTERNAL_CROSS)readelf -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS = -DBR_SYSROOT='"$(STAGING_SUBDIR)"' +TOOLCHAIN_EXTERNAL_CC = $(TOOLCHAIN_EXTERNAL_CROSS)gcc$(TOOLCHAIN_EXTERNAL_SUFFIX) +TOOLCHAIN_EXTERNAL_CXX = $(TOOLCHAIN_EXTERNAL_CROSS)g++$(TOOLCHAIN_EXTERNAL_SUFFIX) +TOOLCHAIN_EXTERNAL_READELF = $(TOOLCHAIN_EXTERNAL_CROSS)readelf$(TOOLCHAIN_EXTERNAL_SUFFIX) ifeq ($(filter $(HOST_DIR)/%,$(TOOLCHAIN_EXTERNAL_BIN)),) # TOOLCHAIN_EXTERNAL_BIN points outside HOST_DIR => absolute path -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += \ +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += \ -DBR_CROSS_PATH_ABS='"$(TOOLCHAIN_EXTERNAL_BIN)"' else # TOOLCHAIN_EXTERNAL_BIN points inside HOST_DIR => relative path -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += \ +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += \ -DBR_CROSS_PATH_REL='"$(TOOLCHAIN_EXTERNAL_BIN:$(HOST_DIR)/%=%)"' endif @@ -180,59 +187,61 @@ CC_TARGET_MODE_ := $(call qstrip,$(BR2_GCC_TARGET_MODE)) # to select the right multilib variant ifeq ($(BR2_x86_64),y) TOOLCHAIN_EXTERNAL_CFLAGS += -m64 -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_64 +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_64 endif ifneq ($(CC_TARGET_ARCH_),) TOOLCHAIN_EXTERNAL_CFLAGS += -march=$(CC_TARGET_ARCH_) -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_ARCH='"$(CC_TARGET_ARCH_)"' +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_ARCH='"$(CC_TARGET_ARCH_)"' endif ifneq ($(CC_TARGET_CPU_),) TOOLCHAIN_EXTERNAL_CFLAGS += -mcpu=$(CC_TARGET_CPU_) -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_CPU='"$(CC_TARGET_CPU_)"' +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_CPU='"$(CC_TARGET_CPU_)"' endif ifneq ($(CC_TARGET_ABI_),) TOOLCHAIN_EXTERNAL_CFLAGS += -mabi=$(CC_TARGET_ABI_) -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_ABI='"$(CC_TARGET_ABI_)"' +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_ABI='"$(CC_TARGET_ABI_)"' endif ifneq ($(CC_TARGET_FPU_),) TOOLCHAIN_EXTERNAL_CFLAGS += -mfpu=$(CC_TARGET_FPU_) -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_FPU='"$(CC_TARGET_FPU_)"' +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_FPU='"$(CC_TARGET_FPU_)"' endif ifneq ($(CC_TARGET_FLOAT_ABI_),) TOOLCHAIN_EXTERNAL_CFLAGS += -mfloat-abi=$(CC_TARGET_FLOAT_ABI_) -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_FLOAT_ABI='"$(CC_TARGET_FLOAT_ABI_)"' +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_FLOAT_ABI='"$(CC_TARGET_FLOAT_ABI_)"' endif ifneq ($(CC_TARGET_MODE_),) TOOLCHAIN_EXTERNAL_CFLAGS += -m$(CC_TARGET_MODE_) -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_MODE='"$(CC_TARGET_MODE_)"' +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_MODE='"$(CC_TARGET_MODE_)"' endif ifeq ($(BR2_BINFMT_FLAT),y) TOOLCHAIN_EXTERNAL_CFLAGS += -Wl,-elf2flt -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_BINFMT_FLAT +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_BINFMT_FLAT endif ifeq ($(BR2_mipsel)$(BR2_mips64el),y) -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_MIPS_TARGET_LITTLE_ENDIAN +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_MIPS_TARGET_LITTLE_ENDIAN TOOLCHAIN_EXTERNAL_CFLAGS += -EL endif ifeq ($(BR2_mips)$(BR2_mips64),y) -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_MIPS_TARGET_BIG_ENDIAN +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_MIPS_TARGET_BIG_ENDIAN TOOLCHAIN_EXTERNAL_CFLAGS += -EB endif ifeq ($(BR2_arceb),y) -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_ARC_TARGET_BIG_ENDIAN +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_ARC_TARGET_BIG_ENDIAN TOOLCHAIN_EXTERNAL_CFLAGS += -EB endif -ifneq ($(BR2_TARGET_OPTIMIZATION),) + TOOLCHAIN_EXTERNAL_CFLAGS += $(call qstrip,$(BR2_TARGET_OPTIMIZATION)) -# We create a list like '"-mfoo", "-mbar", "-mbarfoo"' so that each -# flag is a separate argument when used in execv() by the external -# toolchain wrapper. -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_ADDITIONAL_CFLAGS='$(foreach f,$(call qstrip,$(BR2_TARGET_OPTIMIZATION)),"$(f)",)' -endif ifeq ($(BR2_SOFT_FLOAT),y) TOOLCHAIN_EXTERNAL_CFLAGS += -msoft-float -TOOLCHAIN_EXTERNAL_WRAPPER_ARGS += -DBR_SOFTFLOAT=1 +TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_SOFTFLOAT=1 +endif + +# musl does not provide a sys/queue.h implementation, so add the +# netbsd-queue package that will install a sys/queue.h file in the +# staging directory based on the NetBSD implementation. +ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) +TOOLCHAIN_EXTERNAL_DEPENDENCIES += netbsd-queue endif # The Linaro ARMhf toolchain expects the libraries in @@ -253,113 +262,112 @@ define TOOLCHAIN_EXTERNAL_LINARO_AARCH64_SYMLINK ln -snf . $(TARGET_DIR)/usr/lib/aarch64-linux-gnu endef -ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201305),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/arm-none-linux-gnueabi -TOOLCHAIN_EXTERNAL_SOURCE = arm-2013.05-24-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201311),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/arm-none-linux-gnueabi -TOOLCHAIN_EXTERNAL_SOURCE = arm-2013.11-33-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201405),y) +# Special handling for Blackfin toolchain, because of the split in two +# tarballs, and the organization of tarball contents. The tarballs +# contain ./opt/uClinux/{bfin-uclinux,bfin-linux-uclibc} directories, +# which themselves contain the toolchain. This is why we strip more +# components than usual. +define TOOLCHAIN_EXTERNAL_BLACKFIN_UCLIBC_EXTRA_EXTRACT + $(call suitable-extractor,$(TOOLCHAIN_EXTERNAL_EXTRA_DOWNLOADS)) $(DL_DIR)/$(TOOLCHAIN_EXTERNAL_EXTRA_DOWNLOADS) | \ + $(TAR) --strip-components=3 --hard-dereference -C $(@D) $(TAR_OPTIONS) - +endef + +ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM),y) TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/arm-none-linux-gnueabi TOOLCHAIN_EXTERNAL_SOURCE = arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A_201109),y) +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A),y) TOOLCHAIN_EXTERNAL_SITE = http://software-dl.ti.com/sdoemb/sdoemb_public_sw/arago_toolchain/2011_09/exports TOOLCHAIN_EXTERNAL_SOURCE = arago-2011.09-armv7a-linux-gnueabi-sdk.tar.bz2 +TOOLCHAIN_EXTERNAL_ACTUAL_SOURCE_TARBALL = arago-toolchain-2011.09-sources.tar.bz2 define TOOLCHAIN_EXTERNAL_FIXUP_CMDS - mv $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/arago-2011.09/armv7a/* $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/ - rm -rf $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/arago-2011.09/ + mv $(@D)/arago-2011.09/armv7a/* $(@D)/ + rm -rf $(@D)/arago-2011.09/ endef -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE_201109),y) +TOOLCHAIN_EXTERNAL_POST_EXTRACT_HOOKS += TOOLCHAIN_EXTERNAL_FIXUP_CMDS +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE),y) TOOLCHAIN_EXTERNAL_SITE = http://software-dl.ti.com/sdoemb/sdoemb_public_sw/arago_toolchain/2011_09/exports TOOLCHAIN_EXTERNAL_SOURCE = arago-2011.09-armv5te-linux-gnueabi-sdk.tar.bz2 +TOOLCHAIN_EXTERNAL_ACTUAL_SOURCE_TARBALL = arago-toolchain-2011.09-sources.tar.bz2 define TOOLCHAIN_EXTERNAL_FIXUP_CMDS - mv $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/arago-2011.09/armv5te/* $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/ - rm -rf $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/arago-2011.09/ + mv $(@D)/arago-2011.09/armv5te/* $(@D)/ + rm -rf $(@D)/arago-2011.09/ endef +TOOLCHAIN_EXTERNAL_POST_EXTRACT_HOOKS += TOOLCHAIN_EXTERNAL_FIXUP_CMDS else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM),y) +ifeq ($(HOSTARCH),x86) TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/14.09/components/toolchain/binaries TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz +TOOLCHAIN_EXTERNAL_ACTUAL_SOURCE_TARBALL = gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_src.tar.bz2 TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_LINARO_ARMHF_SYMLINK +else +TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/components/toolchain/binaries/5.2-2015.11-2/arm-linux-gnueabihf +TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-5.2-2015.11-2-x86_64_arm-linux-gnueabihf.tar.xz +endif else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB),y) +ifeq ($(HOSTARCH),x86) TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/14.09/components/toolchain/binaries TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-armeb-linux-gnueabihf-4.9-2014.09_linux.tar.xz +TOOLCHAIN_EXTERNAL_ACTUAL_SOURCE_TARBALL = gcc-linaro-armeb-linux-gnueabihf-4.9-2014.09_src.tar.bz2 TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_LINARO_ARMEBHF_SYMLINK -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201405),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/mips-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = mips-2014.05-27-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201411),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/mips-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = mips-2014.11-22-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201505),y) +else +TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/components/toolchain/binaries/5.2-2015.11-2/armeb-linux-gnueabihf +TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-5.2-2015.11-2-x86_64_armeb-linux-gnueabihf.tar.xz +endif +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS),y) TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/mips-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = mips-2015.05-18-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305),y) +TOOLCHAIN_EXTERNAL_SOURCE = mips-2015.11-32-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2 +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII),y) TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/nios2-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = sourceryg++-2013.05-43-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2 -TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_SANITIZE_KERNEL_HEADERS -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/nios2-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = sourceryg++-2014.05-47-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/powerpc-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = freescale-2010.09-55-powerpc-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201103),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/powerpc-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = freescale-2011.03-38-powerpc-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201203),y) +TOOLCHAIN_EXTERNAL_SOURCE = sourceryg++-2015.11-27-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2 +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC_E500V2),y) TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/powerpc-mentor-linux-gnu TOOLCHAIN_EXTERNAL_SOURCE = mentor-2012.03-71-powerpc-mentor-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201103),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/sh-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = renesas-2011.03-37-sh-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201203),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/sh-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = renesas-2012.03-35-sh-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201209),y) +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC),y) +TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/powerpc-linux-gnu +TOOLCHAIN_EXTERNAL_SOURCE = freescale-2011.03-38-powerpc-linux-gnu-i686-pc-linux-gnu.tar.bz2 +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH),y) TOOLCHAIN_EXTERNAL_SITE = https://sourcery.mentor.com/public/gnu_toolchain/sh-linux-gnu TOOLCHAIN_EXTERNAL_SOURCE = renesas-2012.09-61-sh-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201009),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/sh-uclinux -TOOLCHAIN_EXTERNAL_SOURCE = renesas-2010.09-60-sh-uclinux-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201103),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/sh-uclinux -TOOLCHAIN_EXTERNAL_SOURCE = renesas-2011.03-36-sh-uclinux-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201109),y) -TOOLCHAIN_EXTERNAL_SITE = https://sourcery.mentor.com/public/gnu_toolchain/i686-pc-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = ia32-2011.09-24-i686-pc-linux-gnu-i386-linux.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201203),y) -TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/i686-pc-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = ia32-2012.03-27-i686-pc-linux-gnu-i386-linux.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201209),y) +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86),y) TOOLCHAIN_EXTERNAL_SITE = https://sourcery.mentor.com/public/gnu_toolchain/i686-pc-linux-gnu TOOLCHAIN_EXTERNAL_SOURCE = ia32-2012.09-62-i686-pc-linux-gnu-i386-linux.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64_201405),y) +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64),y) TOOLCHAIN_EXTERNAL_SITE = https://sourcery.mentor.com/public/gnu_toolchain/x86_64-amd-linux-gnu -TOOLCHAIN_EXTERNAL_SOURCE = amd-2014.05-25-x86_64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2),y) -TOOLCHAIN_EXTERNAL_SITE = http://downloads.sourceforge.net/project/adi-toolchain/2012R2/2012R2-RC2/i386 -TOOLCHAIN_EXTERNAL_SOURCE = blackfin-toolchain-2012R2-RC2.i386.tar.bz2 -TOOLCHAIN_EXTERNAL_EXTRA_DOWNLOADS = blackfin-toolchain-uclibc-full-2012R2-RC2.i386.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1),y) -TOOLCHAIN_EXTERNAL_SITE = http://downloads.sourceforge.net/project/adi-toolchain/2013R1/2013R1-RC1/i386 -TOOLCHAIN_EXTERNAL_SOURCE = blackfin-toolchain-2013R1-RC1.i386.tar.bz2 -TOOLCHAIN_EXTERNAL_EXTRA_DOWNLOADS = blackfin-toolchain-uclibc-full-2013R1-RC1.i386.tar.bz2 -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1),y) +TOOLCHAIN_EXTERNAL_SOURCE = amd-2015.11-36-x86_64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2 +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS),y) +TOOLCHAIN_EXTERNAL_SITE = http://codescape-mips-sdk.imgtec.com/components/toolchain/2015.06-05 +TOOLCHAIN_EXTERNAL_SOURCE = Codescape.GNU.Tools.Package.2015.06-05.for.MIPS.IMG.Linux.CentOS-5.x86.tar.gz +TOOLCHAIN_EXTERNAL_STRIP_COMPONENTS = 2 +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS),y) +TOOLCHAIN_EXTERNAL_SITE = http://codescape-mips-sdk.imgtec.com/components/toolchain/2015.06-05 +TOOLCHAIN_EXTERNAL_SOURCE = Codescape.GNU.Tools.Package.2015.06-05.for.MIPS.MTI.Linux.CentOS-5.x86.tar.gz +TOOLCHAIN_EXTERNAL_STRIP_COMPONENTS = 2 +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX),y) TOOLCHAIN_EXTERNAL_SITE = http://downloads.sourceforge.net/project/adi-toolchain/2014R1/2014R1-RC2/i386 TOOLCHAIN_EXTERNAL_SOURCE = blackfin-toolchain-2014R1-RC2.i386.tar.bz2 TOOLCHAIN_EXTERNAL_EXTRA_DOWNLOADS = blackfin-toolchain-uclibc-full-2014R1-RC2.i386.tar.bz2 +TOOLCHAIN_EXTERNAL_STRIP_COMPONENTS = 3 +TOOLCHAIN_EXTERNAL_POST_EXTRACT_HOOKS += TOOLCHAIN_EXTERNAL_BLACKFIN_UCLIBC_EXTRA_EXTRACT else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64),y) +ifeq ($(HOSTARCH),x86) TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/14.09/components/toolchain/binaries TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux.tar.xz +TOOLCHAIN_EXTERNAL_ACTUAL_SOURCE_TARBALL = gcc-linaro-aarch64-linux-gnu-4.9-2014.09_src.tar.bz2 TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_LINARO_AARCH64_SYMLINK +else +TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/components/toolchain/binaries/5.2-2015.11-2/aarch64-linux-gnu +TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-5.2-2015.11-2-x86_64_aarch64-linux-gnu.tar.xz +endif else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64),y) TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/aarch64-linux-gnu TOOLCHAIN_EXTERNAL_SOURCE = aarch64-2014.05-30-aarch64-linux-gnu-i686-pc-linux-gnu.tar.bz2 else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS),y) TOOLCHAIN_EXTERNAL_VERSION = 1.1.6 TOOLCHAIN_EXTERNAL_SITE = https://googledrive.com/host/0BwnS5DMB0YQ6bDhPZkpOYVFhbk0/musl-$(TOOLCHAIN_EXTERNAL_VERSION) -ifeq ($(BR2_arm),y) +ifeq ($(BR2_arm)$(BR2_ARM_EABI),yy) TOOLCHAIN_EXTERNAL_SOURCE = crossx86-arm-linux-musleabi-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz +else ifeq ($(BR2_arm)$(BR2_ARM_EABIHF),yy) +TOOLCHAIN_EXTERNAL_SOURCE = crossx86-arm-linux-musleabihf-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz else ifeq ($(BR2_armeb),y) TOOLCHAIN_EXTERNAL_SOURCE = crossx86-armeb-linux-musleabi-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz else ifeq ($(BR2_i386),y) @@ -375,7 +383,7 @@ TOOLCHAIN_EXTERNAL_SOURCE = crossx86-powerpc-linux-musl-$(TOOLCHAIN_EXTERNAL_VER else ifeq ($(BR2_x86_64),y) TOOLCHAIN_EXTERNAL_SOURCE = crossx86-x86_64-linux-musl-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz endif -else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_2014_12),y) +else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC),y) TOOLCHAIN_EXTERNAL_SITE = https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases/download/arc-2014.12 ifeq ($(BR2_arc750d)$(BR2_arc770d),y) TOOLCHAIN_EXTERNAL_SYNOPSYS_CORE = arc700 @@ -390,12 +398,19 @@ endif TOOLCHAIN_EXTERNAL_SOURCE = arc_gnu_2014.12_prebuilt_uclibc_$(TOOLCHAIN_EXTERNAL_SYNOPSYS_ENDIANESS)_$(TOOLCHAIN_EXTERNAL_SYNOPSYS_CORE)_linux_install.tar.gz else # Custom toolchain -TOOLCHAIN_EXTERNAL_SITE = $(dir $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_URL))) +TOOLCHAIN_EXTERNAL_SITE = $(patsubst %/,%,$(dir $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_URL)))) TOOLCHAIN_EXTERNAL_SOURCE = $(notdir $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_URL))) # We can't check hashes for custom downloaded toolchains BR_NO_CHECK_HASH_FOR += $(TOOLCHAIN_EXTERNAL_SOURCE) endif +# Some toolchain vendors have a regular file naming pattern. +# For them, mass-define _ACTUAL_SOURCE_TARBALL based _SITE. +ifneq ($(findstring sourcery.mentor.com/public/gnu_toolchain,$(TOOLCHAIN_EXTERNAL_SITE)),) +TOOLCHAIN_EXTERNAL_ACTUAL_SOURCE_TARBALL ?= \ + $(subst -i686-pc-linux-gnu.tar.bz2,.src.tar.bz2,$(subst -i686-pc-linux-gnu-i386-linux.tar.bz2,-i686-pc-linux-gnu.src.tar.bz2,$(TOOLCHAIN_EXTERNAL_SOURCE))) +endif + # In fact, we don't need to download the toolchain, since it is already # available on the system, so force the site and source to be empty so # that nothing will be downloaded/extracted. @@ -408,27 +423,20 @@ TOOLCHAIN_EXTERNAL_ADD_TOOLCHAIN_DEPENDENCY = NO TOOLCHAIN_EXTERNAL_INSTALL_STAGING = YES -ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2)$(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1)$(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1),y) -# Special handling for Blackfin toolchain, because of the split in two -# tarballs, and the organization of tarball contents. The tarballs -# contain ./opt/uClinux/{bfin-uclinux,bfin-linux-uclibc} directories, -# which themselves contain the toolchain. This is why we strip more -# components than usual. -define TOOLCHAIN_EXTERNAL_EXTRACT_CMDS - mkdir -p $(TOOLCHAIN_EXTERNAL_INSTALL_DIR) - $(call suitable-extractor,$(TOOLCHAIN_EXTERNAL_SOURCE)) $(DL_DIR)/$(TOOLCHAIN_EXTERNAL_SOURCE) | \ - $(TAR) --strip-components=3 --hard-dereference -C $(TOOLCHAIN_EXTERNAL_INSTALL_DIR) $(TAR_OPTIONS) - - $(call suitable-extractor,$(TOOLCHAIN_EXTERNAL_EXTRA_DOWNLOADS)) $(DL_DIR)/$(TOOLCHAIN_EXTERNAL_EXTRA_DOWNLOADS) | \ - $(TAR) --strip-components=3 --hard-dereference -C $(TOOLCHAIN_EXTERNAL_INSTALL_DIR) $(TAR_OPTIONS) - -endef -else ifneq ($(TOOLCHAIN_EXTERNAL_SOURCE),) -# Normal handling of toolchain tarball extraction. -define TOOLCHAIN_EXTERNAL_EXTRACT_CMDS +# Normal handling of downloaded toolchain tarball extraction. +ifneq ($(TOOLCHAIN_EXTERNAL_SOURCE),) +TOOLCHAIN_EXTERNAL_EXCLUDES = usr/lib/locale/* + +# As a regular package, the toolchain gets extracted in $(@D), but +# since it's actually a fairly special package, we need it to be moved +# into TOOLCHAIN_EXTERNAL_INSTALL_DIR. +define TOOLCHAIN_EXTERNAL_MOVE + rm -rf $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/* mkdir -p $(TOOLCHAIN_EXTERNAL_INSTALL_DIR) - $(call suitable-extractor,$(TOOLCHAIN_EXTERNAL_SOURCE)) $(DL_DIR)/$(TOOLCHAIN_EXTERNAL_SOURCE) | \ - $(TAR) --strip-components=1 --exclude='usr/lib/locale/*' -C $(TOOLCHAIN_EXTERNAL_INSTALL_DIR) $(TAR_OPTIONS) - - $(TOOLCHAIN_EXTERNAL_FIXUP_CMDS) + mv $(@D)/* $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/ endef +TOOLCHAIN_EXTERNAL_POST_EXTRACT_HOOKS += \ + TOOLCHAIN_EXTERNAL_MOVE endif # Returns the location of the libc.a file for the given compiler + flags @@ -449,13 +457,13 @@ endef # # And variations on these. define toolchain_find_sysroot -$$(echo -n $(call toolchain_find_libc_a,$(1)) | sed -r -e 's:(usr/)?lib(32|64)?([^/]*)?/([^/]*/)?libc\.a::') +$$(printf $(call toolchain_find_libc_a,$(1)) | sed -r -e 's:(usr/)?lib(32|64)?([^/]*)?/([^/]*/)?libc\.a::') endef # Returns the lib subdirectory for the given compiler + flags (i.e # typically lib32 or lib64 for some toolchains) define toolchain_find_libdir -$$(echo -n $(call toolchain_find_libc_a,$(1)) | sed -r -e 's:.*/(usr/)?(lib(32|64)?([^/]*)?)/([^/]*/)?libc.a:\2:') +$$(printf $(call toolchain_find_libc_a,$(1)) | sed -r -e 's:.*/(usr/)?(lib(32|64)?([^/]*)?)/([^/]*/)?libc.a:\2:') endef # Checks for an already installed toolchain: check the toolchain @@ -498,6 +506,8 @@ endef ifeq ($(BR2_TOOLCHAIN_EXTERNAL_MUSL),y) ifeq ($(BR2_i386),y) MUSL_ARCH = i386 +else ifeq ($(BR2_ARM_EABIHF),y) +MUSL_ARCH = armhf else MUSL_ARCH = $(ARCH) endif @@ -507,6 +517,27 @@ endef TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_MUSL_LD_LINK endif +# Create a symlink from (usr/)$(ARCH_LIB_DIR) to lib. +# Note: the skeleton package additionally creates lib32->lib or lib64->lib +# (as appropriate) +# +# $1: destination directory (TARGET_DIR / STAGING_DIR) +create_lib_symlinks = \ + $(Q)DESTDIR="$(strip $1)" ; \ + ARCH_LIB_DIR="$(call toolchain_find_libdir,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \ + if [ ! -e "$${DESTDIR}/$${ARCH_LIB_DIR}" -a ! -e "$${DESTDIR}/usr/$${ARCH_LIB_DIR}" ]; then \ + ln -snf lib "$${DESTDIR}/$${ARCH_LIB_DIR}" ; \ + ln -snf lib "$${DESTDIR}/usr/$${ARCH_LIB_DIR}" ; \ + fi + +define TOOLCHAIN_EXTERNAL_CREATE_STAGING_LIB_SYMLINK + $(call create_lib_symlinks,$(STAGING_DIR)) +endef + +define TOOLCHAIN_EXTERNAL_CREATE_TARGET_LIB_SYMLINK + $(call create_lib_symlinks,$(TARGET_DIR)) +endef + # Integration of the toolchain into Buildroot: find the main sysroot # and the variant-specific sysroot, then copy the needed libraries to # the $(TARGET_DIR) and copy the whole sysroot (libraries and headers) @@ -583,7 +614,10 @@ define TOOLCHAIN_EXTERNAL_INSTALL_TARGET_LIBS if test "$(BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY)" = "y"; then \ $(call MESSAGE,"Copying gdbserver") ; \ gdbserver_found=0 ; \ - for d in $${ARCH_SYSROOT_DIR}/usr $${ARCH_SYSROOT_DIR}/../debug-root/usr $${ARCH_SYSROOT_DIR}/usr/$${ARCH_LIB_DIR} ; do \ + for d in $${ARCH_SYSROOT_DIR}/usr \ + $${ARCH_SYSROOT_DIR}/../debug-root/usr \ + $${ARCH_SYSROOT_DIR}/usr/$${ARCH_LIB_DIR} \ + $(TOOLCHAIN_EXTERNAL_INSTALL_DIR); do \ if test -f $${d}/bin/gdbserver ; then \ install -m 0755 -D $${d}/bin/gdbserver $(TARGET_DIR)/usr/bin/gdbserver ; \ gdbserver_found=1 ; \ @@ -660,26 +694,17 @@ define TOOLCHAIN_EXTERNAL_INSTALL_BFIN_FLAT endef endif -# We use --hash-style=both to increase the compatibility of -# the generated binary with older platforms, except for MIPS, -# where the only acceptable hash style is 'sysv' -ifeq ($(findstring mips,$(HOSTARCH)),mips) -TOOLCHAIN_EXTERNAL_WRAPPER_HASH_STYLE = sysv -else -TOOLCHAIN_EXTERNAL_WRAPPER_HASH_STYLE = both -endif - # Build toolchain wrapper for preprocessor, C and C++ compiler and setup # symlinks for everything else. Skip gdb symlink when we are building our # own gdb to prevent two gdb's in output/host/usr/bin. -# When the link-time-optimization flag '-flto' is used, then the compiler -# and binutils have to support lto. ar/ranlib need to be called with the -# lto plugin. The wrappers *-gcc-ar and *-gcc-ranlib provided by GCC could -# be used as drop-ins for ar/runlib when Makefiles are used which do not -# pass the lto arguments. +# The LTO support in gcc creates wrappers for ar, ranlib and nm which load +# the lto plugin. These wrappers are called *-gcc-ar, *-gcc-ranlib, and +# *-gcc-nm and should be used instead of the real programs when -flto is +# used. However, we should not add the toolchain wrapper for them, and they +# match the *cc-* pattern. Therefore, an additional case is added for *-ar, +# *-ranlib and *-nm. define TOOLCHAIN_EXTERNAL_INSTALL_WRAPPER - $(Q)$(call MESSAGE,"Building ext-toolchain wrapper") - mkdir -p $(HOST_DIR)/usr/bin; cd $(HOST_DIR)/usr/bin; \ + $(Q)cd $(HOST_DIR)/usr/bin; \ for i in $(TOOLCHAIN_EXTERNAL_CROSS)*; do \ base=$${i##*/}; \ case "$$base" in \ @@ -687,7 +712,7 @@ define TOOLCHAIN_EXTERNAL_INSTALL_WRAPPER ln -sf $$(echo $$i | sed 's%^$(HOST_DIR)%../..%') .; \ ;; \ *cc|*cc-*|*++|*++-*|*cpp) \ - ln -sf ext-toolchain-wrapper $$base; \ + ln -sf toolchain-wrapper $$base; \ ;; \ *gdb|*gdbtui) \ if test "$(BR2_PACKAGE_HOST_GDB)" != "y"; then \ @@ -698,28 +723,16 @@ define TOOLCHAIN_EXTERNAL_INSTALL_WRAPPER ln -sf $$(echo $$i | sed 's%^$(HOST_DIR)%../..%') .; \ ;; \ esac; \ - done ; - $(HOSTCC) $(HOST_CFLAGS) $(TOOLCHAIN_EXTERNAL_WRAPPER_ARGS) \ - -s -Wl,--hash-style=$(TOOLCHAIN_EXTERNAL_WRAPPER_HASH_STYLE) \ - toolchain/toolchain-external/ext-toolchain-wrapper.c \ - -o $(HOST_DIR)/usr/bin/ext-toolchain-wrapper -endef - -# This sed magic is taken from Linux headers_install.sh script. -define TOOLCHAIN_EXTERNAL_SANITIZE_KERNEL_HEADERS - $(Q)$(call MESSAGE,"Sanitizing kernel headers"); - find $(STAGING_DIR)/usr/include/linux/ -name "*.h" | xargs sed -r -i \ - -e 's/([ \t(])(__user|__force|__iomem)[ \t]/\1/g' \ - -e 's/__attribute_const__([ \t]|$$)/\1/g' \ - -e 's@^#include @@' \ - -e 's/(^|[^a-zA-Z0-9])__packed([^a-zA-Z0-9_]|$$)/\1__attribute__((packed))\2/g' \ - -e 's/(^|[ \t(])(inline|asm|volatile)([ \t(]|$$)/\1__\2__\3/g' \ - -e 's@#(ifndef|define|endif[ \t]*/[*])[ \t]*_UAPI@#\1 @' + done endef +# +# Generate gdbinit file for use with Buildroot +# define TOOLCHAIN_EXTERNAL_INSTALL_GDBINIT - if test -f $(TARGET_CROSS)gdb ; then \ - $(call gen_gdbinit_file) ; \ + $(Q)if test -f $(TARGET_CROSS)gdb ; then \ + $(call MESSAGE,"Installing gdbinit"); \ + $(gen_gdbinit_file); \ fi endef @@ -729,15 +742,18 @@ endef # like with the original uClibc. Therefore, we create an additional # symbolic link to make uClibc-ng systems work properly. define TOOLCHAIN_EXTERNAL_FIXUP_UCLIBCNG_LDSO - if test -e $(TARGET_DIR)/lib/ld-uClibc.so.1; then \ + $(Q)if test -e $(TARGET_DIR)/lib/ld-uClibc.so.1; then \ ln -sf ld-uClibc.so.1 $(TARGET_DIR)/lib/ld-uClibc.so.0 ; \ fi - if test -e $(TARGET_DIR)/lib/ld64-uClibc.so.1; then \ + $(Q)if test -e $(TARGET_DIR)/lib/ld64-uClibc.so.1; then \ ln -sf ld64-uClibc.so.1 $(TARGET_DIR)/lib/ld64-uClibc.so.0 ; \ fi endef +TOOLCHAIN_EXTERNAL_BUILD_CMDS = $(TOOLCHAIN_BUILD_WRAPPER) + define TOOLCHAIN_EXTERNAL_INSTALL_STAGING_CMDS + $(TOOLCHAIN_EXTERNAL_CREATE_STAGING_LIB_SYMLINK) $(TOOLCHAIN_EXTERNAL_INSTALL_SYSROOT_LIBS) $(TOOLCHAIN_EXTERNAL_INSTALL_WRAPPER) $(TOOLCHAIN_EXTERNAL_INSTALL_GDBINIT) @@ -747,6 +763,7 @@ endef # and the target directory, we do everything within the # install-staging step, arbitrarily. define TOOLCHAIN_EXTERNAL_INSTALL_TARGET_CMDS + $(TOOLCHAIN_EXTERNAL_CREATE_TARGET_LIB_SYMLINK) $(TOOLCHAIN_EXTERNAL_INSTALL_TARGET_LIBS) $(TOOLCHAIN_EXTERNAL_INSTALL_BFIN_FDPIC) $(TOOLCHAIN_EXTERNAL_INSTALL_BFIN_FLAT) diff --git a/toolchain/toolchain-external/ext-toolchain-wrapper.c b/toolchain/toolchain-wrapper.c similarity index 76% rename from toolchain/toolchain-external/ext-toolchain-wrapper.c rename to toolchain/toolchain-wrapper.c index b3b02d8e7c9..887058f699a 100644 --- a/toolchain/toolchain-external/ext-toolchain-wrapper.c +++ b/toolchain/toolchain-wrapper.c @@ -1,7 +1,7 @@ /** - * Buildroot wrapper for external toolchains. This simply executes the real - * toolchain with a number of arguments (sysroot/arch/..) hardcoded, - * to ensure the external toolchain uses the correct configuration. + * Buildroot wrapper for toolchains. This simply executes the real toolchain + * with a number of arguments (sysroot/arch/..) hardcoded, to ensure the + * toolchain uses the correct configuration. * The hardcoded path arguments are defined relative to the actual location * of the binary. * @@ -23,6 +23,9 @@ #include #include +#ifdef BR_CCACHE +static char ccache_path[PATH_MAX]; +#endif static char path[PATH_MAX]; static char sysroot[PATH_MAX]; @@ -40,6 +43,9 @@ static char sysroot[PATH_MAX]; #define EXCLUSIVE_ARGS 3 static char *predef_args[] = { +#ifdef BR_CCACHE + ccache_path, +#endif path, "--sysroot", sysroot, #ifdef BR_ABI @@ -57,6 +63,9 @@ static char *predef_args[] = { #ifdef BR_64 "-m64", #endif +#ifdef BR_OMIT_LOCK_PREFIX + "-Wa,-momit-lock-prefix=yes", +#endif #ifdef BR_BINFMT_FLAT "-Wl,-elf2flt", #endif @@ -92,7 +101,7 @@ static void check_unsafe_path(const char *path, int paranoid) int main(int argc, char **argv) { - char **args, **cur; + char **args, **cur, **exec_args; char *relbasedir, *absbasedir; char *progpath = argv[0]; char *basename; @@ -137,14 +146,23 @@ int main(int argc, char **argv) /* Fill in the relative paths */ #ifdef BR_CROSS_PATH_REL - ret = snprintf(path, sizeof(path), "%s/" BR_CROSS_PATH_REL "/%s", absbasedir, basename); -#else /* BR_CROSS_PATH_ABS */ - ret = snprintf(path, sizeof(path), BR_CROSS_PATH_ABS "/%s", basename); + ret = snprintf(path, sizeof(path), "%s/" BR_CROSS_PATH_REL "/%s" BR_CROSS_PATH_SUFFIX, absbasedir, basename); +#elif defined(BR_CROSS_PATH_ABS) + ret = snprintf(path, sizeof(path), BR_CROSS_PATH_ABS "/%s" BR_CROSS_PATH_SUFFIX, basename); +#else + ret = snprintf(path, sizeof(path), "%s/usr/bin/%s" BR_CROSS_PATH_SUFFIX, absbasedir, basename); #endif if (ret >= sizeof(path)) { perror(__FILE__ ": overflow"); return 3; } +#ifdef BR_CCACHE + ret = snprintf(ccache_path, sizeof(ccache_path), "%s/usr/bin/ccache", absbasedir); + if (ret >= sizeof(ccache_path)) { + perror(__FILE__ ": overflow"); + return 3; + } +#endif ret = snprintf(sysroot, sizeof(sysroot), "%s/" BR_SYSROOT, absbasedir); if (ret >= sizeof(sysroot)) { perror(__FILE__ ": overflow"); @@ -232,6 +250,13 @@ int main(int argc, char **argv) /* finish with NULL termination */ *cur = NULL; + exec_args = args; +#ifdef BR_CCACHE + if (getenv("BR_NO_CCACHE")) + /* Skip the ccache call */ + exec_args++; +#endif + /* Debug the wrapper to see actual arguments passed to * the compiler: * unset, empty, or 0: do not trace @@ -242,14 +267,37 @@ int main(int argc, char **argv) debug = atoi(env_debug); if (debug > 0) { fprintf(stderr, "Toolchain wrapper executing:"); - for (i = 0; args[i]; i++) +#ifdef BR_CCACHE_HASH + fprintf(stderr, "%sCCACHE_COMPILERCHECK='string:" BR_CCACHE_HASH "'", + (debug == 2) ? "\n " : " "); +#endif +#ifdef BR_CCACHE_BASEDIR + fprintf(stderr, "%sCCACHE_BASEDIR='" BR_CCACHE_BASEDIR "'", + (debug == 2) ? "\n " : " "); +#endif + for (i = 0; exec_args[i]; i++) fprintf(stderr, "%s'%s'", - (debug == 2) ? "\n " : " ", args[i]); + (debug == 2) ? "\n " : " ", exec_args[i]); fprintf(stderr, "\n"); } } - if (execv(path, args)) +#ifdef BR_CCACHE_HASH + /* Allow compilercheck to be overridden through the environment */ + if (setenv("CCACHE_COMPILERCHECK", "string:" BR_CCACHE_HASH, 0)) { + perror(__FILE__ ": Failed to set CCACHE_COMPILERCHECK"); + return 3; + } +#endif +#ifdef BR_CCACHE_BASEDIR + /* Allow compilercheck to be overridden through the environment */ + if (setenv("CCACHE_BASEDIR", BR_CCACHE_BASEDIR, 0)) { + perror(__FILE__ ": Failed to set CCACHE_BASEDIR"); + return 3; + } +#endif + + if (execv(exec_args[0], exec_args)) perror(path); free(args); diff --git a/toolchain/toolchain-wrapper.mk b/toolchain/toolchain-wrapper.mk new file mode 100644 index 00000000000..af39071cf3f --- /dev/null +++ b/toolchain/toolchain-wrapper.mk @@ -0,0 +1,40 @@ +# This file contains the definition of the toolchain wrapper build commands + +# We use --hash-style=both to increase the compatibility of the generated +# binary with older platforms, except for MIPS, where the only acceptable +# hash style is 'sysv' +ifeq ($(findstring mips,$(HOSTARCH)),mips) +TOOLCHAIN_WRAPPER_HASH_STYLE = sysv +else +TOOLCHAIN_WRAPPER_HASH_STYLE = both +endif + +TOOLCHAIN_WRAPPER_ARGS = $($(PKG)_TOOLCHAIN_WRAPPER_ARGS) +TOOLCHAIN_WRAPPER_ARGS += -DBR_SYSROOT='"$(STAGING_SUBDIR)"' + +# We create a list like '"-mfoo", "-mbar", "-mbarfoo"' so that each flag is a +# separate argument when used in execv() by the toolchain wrapper. +TOOLCHAIN_WRAPPER_OPTS = \ + $(foreach f,$(call qstrip,$(BR2_TARGET_OPTIMIZATION)),"$(f)"$(comma)) +TOOLCHAIN_WRAPPER_ARGS += -DBR_ADDITIONAL_CFLAGS='$(TOOLCHAIN_WRAPPER_OPTS)' + +ifeq ($(BR2_CCACHE),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR_CCACHE +endif + +ifeq ($(BR2_x86_x1000),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR_OMIT_LOCK_PREFIX +endif + +ifeq ($(BR2_CCACHE_USE_BASEDIR),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR_CCACHE_BASEDIR='"$(BASE_DIR)"' +endif + +# For simplicity, build directly into the install location +define TOOLCHAIN_BUILD_WRAPPER + $(Q)mkdir -p $(HOST_DIR)/usr/bin + $(HOSTCC) $(HOST_CFLAGS) $(TOOLCHAIN_WRAPPER_ARGS) \ + -s -Wl,--hash-style=$(TOOLCHAIN_WRAPPER_HASH_STYLE) \ + toolchain/toolchain-wrapper.c \ + -o $(HOST_DIR)/usr/bin/toolchain-wrapper +endef