aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Peter Korsgaard <peter@korsgaard.com>2016-06-01 17:55:16 +0200
committerGravatar Peter Korsgaard <peter@korsgaard.com>2016-06-01 17:55:16 +0200
commit577021e81b0bf894d26d8127822410267b2bb411 (patch)
tree8b93cd2342bc73294c9a7695cf8d558da7f16503
parent206ce569269a4b0b7d3ae60f9162d40b290726d8 (diff)
parent5386c61796feb30a02ec287ad769a6754aa525dd (diff)
downloadbuildroot-577021e81b0bf894d26d8127822410267b2bb411.tar.gz
buildroot-577021e81b0bf894d26d8127822410267b2bb411.tar.bz2
Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
-rw-r--r--Config.in322
-rw-r--r--Config.in.legacy31
l---------board/freescale/imx53loco/create-boot-sd.sh1
-rw-r--r--board/freescale/imx53loco/genimage.cfg42
-rw-r--r--board/freescale/imx53loco/patches/uboot/0001-video-ipu_common-fix-build-error.patch47
-rw-r--r--board/freescale/imx53loco/post-image.sh16
-rwxr-xr-xboard/freescale/imx6ulevk/post-image.sh3
-rw-r--r--board/freescale/imx7dsdb/genimage.cfg41
-rwxr-xr-xboard/freescale/imx7dsdb/post-image.sh16
-rw-r--r--board/freescale/imx7dsdb/readme.txt54
-rw-r--r--board/roseapplepi/genimage.cfg43
-rw-r--r--board/roseapplepi/patches/linux/0001-unbreak-xhci-trace.patch31
-rwxr-xr-xboard/roseapplepi/post-image.sh18
-rwxr-xr-xboard/roseapplepi/uEnv.txt3
-rwxr-xr-xboard/via/imx6_vab820/post-image.sh3
-rwxr-xr-xboard/wandboard/post-image.sh3
-rw-r--r--boot/Config.in1
-rw-r--r--boot/barebox/Config.in4
-rw-r--r--boot/barebox/barebox.hash6
-rw-r--r--boot/s500-bootloader/Config.in17
-rw-r--r--boot/s500-bootloader/s500-bootloader.hash2
-rw-r--r--boot/s500-bootloader/s500-bootloader.mk34
-rw-r--r--boot/uboot/Config.in12
-rw-r--r--boot/uboot/uboot.hash2
-rw-r--r--boot/uboot/uboot.mk7
-rw-r--r--configs/beaglebone_defconfig2
-rw-r--r--configs/calao_qil_a9260_defconfig2
-rw-r--r--configs/calao_tny_a9g20_lpw_defconfig2
-rw-r--r--configs/calao_usb_a9263_defconfig2
-rw-r--r--configs/calao_usb_a9g20_lpw_defconfig2
-rw-r--r--configs/cubieboard2_defconfig8
-rw-r--r--configs/freescale_imx7dsabresd_defconfig36
-rw-r--r--configs/mx53loco_defconfig27
-rw-r--r--configs/olimex_a20_olinuxino_lime_defconfig2
-rw-r--r--configs/orangepipc_defconfig6
-rw-r--r--configs/roseapplepi_defconfig40
-rw-r--r--configs/sheevaplug_defconfig8
-rw-r--r--configs/stm32f429_disco_defconfig2
-rw-r--r--configs/stm32f469_disco_defconfig2
-rw-r--r--configs/warpboard_defconfig2
-rw-r--r--linux/Config.in4
-rw-r--r--linux/linux.mk3
-rw-r--r--package/Config.in10
-rw-r--r--package/Makefile.in3
-rw-r--r--package/audit/audit.mk1
-rw-r--r--package/batctl/batctl.hash6
-rw-r--r--package/batctl/batctl.mk2
-rw-r--r--package/batman-adv/Config.in35
-rw-r--r--package/batman-adv/batman-adv.hash2
-rw-r--r--package/batman-adv/batman-adv.mk35
-rw-r--r--package/binutils/2.23.2/120-sh-conf.patch29
-rw-r--r--package/binutils/2.23.2/300-001_ld_makefile_patch.patch24
-rw-r--r--package/binutils/2.23.2/300-012_check_ldrunpath_length.patch21
-rw-r--r--package/binutils/2.23.2/900-xtensa-trampolines.patch846
-rw-r--r--package/binutils/2.23.2/901-xtensa-gas-first-frag-alignment.patch51
-rw-r--r--package/binutils/2.23.2/902-xtensa-gas-ld-diff-relocation-signed.patch133
-rw-r--r--package/binutils/2.23.2/903-xtensa-fix-ld-segfault-when-linking-linux-modules.patch47
-rw-r--r--package/binutils/2.23.2/904-Fix-call8-call-target-out-of-range-xtensa-ld-relaxation.patch79
-rw-r--r--package/binutils/2.23.2/905-Fix-trampolines-search-code-for-conditional-branches.patch90
-rw-r--r--package/binutils/2.23.2/911-xtensa-fix-localized-symbol-refcounting-with-gc-sect.patch57
-rw-r--r--package/binutils/2.23.2/912-xtensa-fix-gas-segfault-with-text-section-literals.patch56
-rw-r--r--package/binutils/2.23.2/914-xtensa-fix-signedness-of-gas-relocations.patch47
-rw-r--r--package/binutils/2.23.2/915-xtensa-fix-.init-.fini-literals-moving.patch70
-rw-r--r--package/binutils/Config.in.host12
-rw-r--r--package/binutils/arc-2015.12/0001-PR-other-56780.patch236
-rw-r--r--package/binutils/arc-2015.12/600-poison-system-directories.patch279
-rw-r--r--package/binutils/arc-2016.03/0300-ld-makefile.patch41
-rw-r--r--package/binutils/arc-2016.03/0301-check-ldrunpath-length.patch36
-rw-r--r--package/binutils/arc-2016.03/0500-add-sysroot-fix-from-bug-3049.patch (renamed from package/binutils/2.23.2/500-sysroot.patch)19
-rw-r--r--package/binutils/arc-2016.03/0600-poison-system-directories.patch (renamed from package/binutils/2.23.2/600-poison-system-directories.patch)215
-rw-r--r--package/binutils/arc-2016.03/0700-Fix-issue-with-dynamic-relocs-not-being-generated-wi.patch34
-rw-r--r--package/binutils/binutils.hash6
-rw-r--r--package/binutils/binutils.mk2
-rw-r--r--package/boost/Config.in5
-rw-r--r--package/cc-tool/Config.in2
-rw-r--r--package/dmidecode/0001-build-system-fixes.patch6
-rw-r--r--package/dmidecode/dmidecode.hash4
-rw-r--r--package/dmidecode/dmidecode.mk3
-rw-r--r--package/dnsmasq/dnsmasq.hash2
-rw-r--r--package/dnsmasq/dnsmasq.mk2
-rw-r--r--package/dos2unix/dos2unix.hash2
-rw-r--r--package/dos2unix/dos2unix.mk2
-rw-r--r--package/dosfstools/0001-mkfs-Default-to-64-32-heads-sectors-for-targets-smalle.patch42
-rw-r--r--package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch45
-rw-r--r--package/dosfstools/dosfstools.hash2
-rw-r--r--package/dosfstools/dosfstools.mk64
-rw-r--r--package/e2fsprogs/Config.in9
-rw-r--r--package/e2fsprogs/e2fsprogs.hash4
-rw-r--r--package/e2fsprogs/e2fsprogs.mk17
-rw-r--r--package/ficl/0001-fix-Makefile.patch47
-rw-r--r--package/ficl/Config.in9
-rw-r--r--package/ficl/ficl.hash2
-rw-r--r--package/ficl/ficl.mk59
-rw-r--r--package/file/file.hash2
-rw-r--r--package/file/file.mk2
-rw-r--r--package/fmc/fmc.mk2
-rw-r--r--package/fmlib/fmlib.mk2
-rw-r--r--package/gcc/4.8.5/130-fix_build_with_gcc-6.patch153
-rw-r--r--package/gcc/4.9.3/130-fix_build_with_gcc-6.patch153
-rw-r--r--package/gcc/5.3.0/130-fix_build_with_gcc-6.patch153
-rw-r--r--package/gcc/Config.in.host4
-rw-r--r--package/gcc/arc-2015.12/130-fix_build_with_gcc-6.patch153
-rw-r--r--package/gcc/arc-2015.12/900-UPDATE-Fix-handling-complex-PIC-moves.patch103
-rw-r--r--package/gcc/arc-2015.12/901-UPDATE1-Fix-handling-complex-PIC-moves.patch83
-rw-r--r--package/gcc/arc-2015.12/950-Don-t-allow-mcompact-casesi-for-ARCv2.patch100
-rw-r--r--package/gcc/arc-2016.03/130-pr43538.patch25
-rw-r--r--package/gcc/arc-2016.03/301-missing-execinfo_h.patch13
-rw-r--r--package/gcc/arc-2016.03/305-libmudflap-susv3-legacy.patch49
-rw-r--r--package/gcc/arc-2016.03/842-PR60155.patch111
-rw-r--r--package/gcc/arc-2016.03/850-libstdcxx-uclibc-c99.patch (renamed from package/gcc/arc-2015.12/100-libstdcxx-uclibc-c99.patch)4
-rw-r--r--package/gcc/arc-2016.03/851-PR-other-56780.patch (renamed from package/gcc/arc-2015.12/851-PR-other-56780.patch)0
-rw-r--r--package/gcc/arc-2016.03/930-libgcc-disable-split-stack-nothreads.patch14
-rw-r--r--package/gcc/gcc.hash5
-rw-r--r--package/gdb/7.8.2/0001-gdbserver-fix-uClibc-whithout-MMU.patch34
-rw-r--r--package/gdb/7.8.2/0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch47
-rw-r--r--package/gdb/7.8.2/0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch46
-rw-r--r--package/gdb/7.8.2/0004-Add-some-casts-for-building-on-musl.patch70
-rw-r--r--package/gdb/7.8.2/0005-musl-Move-W_STOPCODE-to-common-gdb_wait-h.patch63
-rw-r--r--package/gdb/7.8.2/0006-move-__SIGRTMIN.patch58
-rw-r--r--package/gdb/Config.in.host21
-rw-r--r--package/gdb/gdb.hash9
-rw-r--r--package/gdb/gdb.mk17
-rw-r--r--package/gdbm/gdbm.hash5
-rw-r--r--package/gdbm/gdbm.mk2
-rw-r--r--package/git/git.hash2
-rw-r--r--package/git/git.mk2
-rw-r--r--package/glibc/2.18-svnr23787/0001-CVE-2014-7817-eglibc.patch174
-rw-r--r--package/glibc/2.18-svnr23787/0002-accept-make4.patch33
-rw-r--r--package/glibc/2.18-svnr23787/0003-CVE-2014-6040.patch141
-rw-r--r--package/glibc/2.18-svnr23787/0004-CVE-2014-9402.patch20
-rw-r--r--package/glibc/2.18-svnr23787/0005-CVE-2015-1472.patch88
-rw-r--r--package/glibc/2.19-svnr25243/0001-CVE-2014-7817-eglibc.patch174
-rw-r--r--package/glibc/2.19-svnr25243/0002-CVE-2014-6040.patch141
-rw-r--r--package/glibc/2.19-svnr25243/0003-CVE-2014-9402.patch20
-rw-r--r--package/glibc/2.19-svnr25243/0004-CVE-2015-1472.patch88
-rw-r--r--package/glibc/Config.in27
-rw-r--r--package/glibc/glibc.mk7
-rw-r--r--package/gnuradio/Config.in2
-rw-r--r--package/gnutls/gnutls.hash2
-rw-r--r--package/gnutls/gnutls.mk2
-rw-r--r--package/gstreamer1/gst1-plugins-bad/Config.in88
-rw-r--r--package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk82
-rw-r--r--package/kodi/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch82
-rw-r--r--package/lft/0001-no-strip.patch19
-rw-r--r--package/lft/0002-no-incdir.patch27
-rw-r--r--package/lft/Config.in10
-rw-r--r--package/lft/lft.hash2
-rw-r--r--package/lft/lft.mk18
-rw-r--r--package/lftp/lftp.hash2
-rw-r--r--package/lftp/lftp.mk9
-rw-r--r--package/libbluray/libbluray.hash4
-rw-r--r--package/libbluray/libbluray.mk2
-rw-r--r--package/libbsd/0001-build-clock_gettime-might-need-librt.patch49
-rw-r--r--package/libbsd/libbsd.hash2
-rw-r--r--package/libbsd/libbsd.mk4
-rw-r--r--package/libevdev/libevdev.hash4
-rw-r--r--package/libevdev/libevdev.mk2
-rw-r--r--package/libftdi/Config.in2
-rw-r--r--package/libftdi1/Config.in2
-rw-r--r--package/libgtk3/libgtk3.hash4
-rw-r--r--package/libgtk3/libgtk3.mk2
-rw-r--r--package/libiio/0001-cmake-libxml2-detection-try-first-the-CMake-module-f.patch57
-rw-r--r--package/libiio/0002-cmake-fix-build-on-unix-systems-without-cpp.patch36
-rw-r--r--package/libiio/libiio.hash4
-rw-r--r--package/libiio/libiio.mk2
-rw-r--r--package/libinput/0001-rename-log_msg-to-libinput_log_msg.patch77
-rw-r--r--package/libinput/libinput.hash4
-rw-r--r--package/libinput/libinput.mk2
-rw-r--r--package/libpng/0001-Disable-pngfix-and-png-fix-itxt.patch44
-rw-r--r--package/libpng/0001-disable-tools.patch30
-rw-r--r--package/libpng/0002-Don-t-append-prefix-to-symbol-names-in-version-script.patch (renamed from package/libpng/0002-ignore-symbol-prefix.patch)29
-rw-r--r--package/libpng/libpng.hash6
-rw-r--r--package/libpng/libpng.mk2
-rw-r--r--package/libserial/Config.in2
-rw-r--r--package/linux-headers/Config.in.host11
-rw-r--r--package/lvm2/lvm2.hash2
-rw-r--r--package/lvm2/lvm2.mk2
-rw-r--r--package/make/make.hash4
-rw-r--r--package/make/make.mk2
-rw-r--r--package/mpd/Config.in2
-rw-r--r--package/mpg123/mpg123.hash2
-rw-r--r--package/mpg123/mpg123.mk2
-rw-r--r--package/mplayer/0004-configure-zlib.patch30
-rw-r--r--package/mplayer/mplayer.hash8
-rw-r--r--package/mplayer/mplayer.mk2
-rw-r--r--package/openzwave/0001-Fix-warning-on-wcsdup-implicit-declaration.patch29
-rw-r--r--package/openzwave/0002-Ensure-correct-git-repository-path.patch29
-rw-r--r--package/openzwave/Config.in17
-rw-r--r--package/openzwave/openzwave.hash2
-rw-r--r--package/openzwave/openzwave.mk51
-rw-r--r--package/pciutils/pciutils.hash2
-rw-r--r--package/pciutils/pciutils.mk2
-rw-r--r--package/php-gnupg/php-gnupg.hash2
-rw-r--r--package/php-gnupg/php-gnupg.mk5
-rw-r--r--package/php-memcached/php-memcached.hash2
-rw-r--r--package/php-memcached/php-memcached.mk6
-rw-r--r--package/php-ssh2/php-ssh2.hash2
-rw-r--r--package/php-ssh2/php-ssh2.mk6
-rw-r--r--package/php-yaml/php-yaml.hash2
-rw-r--r--package/php-yaml/php-yaml.mk5
-rw-r--r--package/php/Config.ext10
-rw-r--r--package/php/php.hash2
-rw-r--r--package/php/php.mk8
-rw-r--r--package/pkg-generic.mk12
-rw-r--r--package/pkg-python.mk2
-rw-r--r--package/postgresql/postgresql.hash4
-rw-r--r--package/postgresql/postgresql.mk2
-rw-r--r--package/pulseview/Config.in2
-rw-r--r--package/python-argh/Config.in6
-rw-r--r--package/python-argh/python-argh.hash4
-rw-r--r--package/python-argh/python-argh.mk14
-rw-r--r--package/python-backports-abc/Config.in1
-rw-r--r--package/python-crossbar/0001-Avoid-intentional-syntax-error.patch29
-rw-r--r--package/python-flask-jsonrpc/Config.in8
-rw-r--r--package/python-flask-jsonrpc/python-flask-jsonrpc.hash3
-rw-r--r--package/python-flask-jsonrpc/python-flask-jsonrpc.mk14
-rw-r--r--package/python-flask-login/Config.in8
-rw-r--r--package/python-flask-login/python-flask-login.hash3
-rw-r--r--package/python-flask-login/python-flask-login.mk14
-rw-r--r--package/python-libconfig/Config.in2
-rw-r--r--package/python-pathtools/Config.in6
-rw-r--r--package/python-pathtools/python-pathtools.hash4
-rw-r--r--package/python-pathtools/python-pathtools.mk14
-rw-r--r--package/python-pexpect/python-pexpect.mk10
-rw-r--r--package/python-pyftpdlib/python-pyftpdlib.hash6
-rw-r--r--package/python-pyftpdlib/python-pyftpdlib.mk4
-rw-r--r--package/python-pygame/python-pygame.mk7
-rw-r--r--package/python-setproctitle/python-setproctitle.hash6
-rw-r--r--package/python-setproctitle/python-setproctitle.mk4
-rw-r--r--package/python-tornado/Config.in2
-rw-r--r--package/python-ubjson/Config.in7
-rw-r--r--package/python-ubjson/python-ubjson.hash3
-rw-r--r--package/python-ubjson/python-ubjson.mk14
-rw-r--r--package/python-watchdog/Config.in9
-rw-r--r--package/python-watchdog/python-watchdog.hash4
-rw-r--r--package/python-watchdog/python-watchdog.mk14
-rw-r--r--package/python/python.mk37
-rw-r--r--package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch6
-rw-r--r--package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch18
-rw-r--r--package/python3/0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch78
-rw-r--r--package/python3/0003-Make-the-build-of-pyc-files-conditional.patch54
-rw-r--r--package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch6
-rw-r--r--package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch18
-rw-r--r--package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch6
-rw-r--r--package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch12
-rw-r--r--package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch6
-rw-r--r--package/python3/0009-Don-t-add-multiarch-paths.patch6
-rw-r--r--package/python3/0010-Abort-on-failed-module-build.patch10
-rw-r--r--package/python3/0011-Serial-ioctl-workaround.patch2
-rw-r--r--package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch2
-rw-r--r--package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch6
-rw-r--r--package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch6
-rw-r--r--package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch6
-rw-r--r--package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch69
-rw-r--r--package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch16
-rw-r--r--package/python3/0018-Add-an-option-to-disable-pydoc.patch20
-rw-r--r--package/python3/0019-Add-an-option-to-disable-lib2to3.patch22
-rw-r--r--package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch14
-rw-r--r--package/python3/0021-Add-an-option-to-disable-the-tk-module.patch18
-rw-r--r--package/python3/0022-Add-an-option-to-disable-the-curses-module.patch12
-rw-r--r--package/python3/0023-Add-an-option-to-disable-expat.patch16
-rw-r--r--package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch6
-rw-r--r--package/python3/0025-Add-an-option-to-disable-NIS.patch6
-rw-r--r--package/python3/0026-Add-an-option-to-disable-unicodedata.patch6
-rw-r--r--package/python3/0027-Add-an-option-to-disable-IDLE.patch18
-rw-r--r--package/python3/0028-Add-an-option-to-disable-decimal.patch10
-rw-r--r--package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch6
-rw-r--r--package/python3/0030-Support-PGEN_FOR_BUILD-and-FREEZE_IMPORTLIB_FOR_BUIL.patch62
-rw-r--r--package/python3/python3.hash6
-rw-r--r--package/python3/python3.mk81
-rw-r--r--package/samba4/samba4.mk10
-rw-r--r--package/sqlite/sqlite.hash4
-rw-r--r--package/sqlite/sqlite.mk2
-rw-r--r--package/sysstat/sysstat.hash2
-rw-r--r--package/sysstat/sysstat.mk2
-rw-r--r--package/systemd/systemd.hash2
-rw-r--r--package/systemd/systemd.mk3
-rw-r--r--package/sysvinit/inittab2
-rw-r--r--package/taglib/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch40
-rw-r--r--package/taglib/Config.in1
-rw-r--r--package/taglib/taglib.hash2
-rw-r--r--package/taglib/taglib.mk2
-rw-r--r--package/tar/0001-fix-build-failure.patch52
-rw-r--r--package/tar/tar.hash4
-rw-r--r--package/tar/tar.mk2
-rw-r--r--package/thrift/Config.in2
-rw-r--r--package/uboot-tools/0001-drop-configh-from-tools.patch14
-rw-r--r--package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch19
-rw-r--r--package/uboot-tools/0003-tools-env-bug-config-structs-must-be-defined-in-tool.patch58
-rw-r--r--package/uboot-tools/Config.in10
-rw-r--r--package/uboot-tools/uboot-tools.hash2
-rw-r--r--package/uboot-tools/uboot-tools.mk4
-rw-r--r--package/uclibc/uclibc.mk45
-rw-r--r--package/valijson/Config.in2
-rw-r--r--package/wayland-protocols/wayland-protocols.hash4
-rw-r--r--package/wayland-protocols/wayland-protocols.mk2
-rw-r--r--package/wayland/wayland.hash4
-rw-r--r--package/wayland/wayland.mk2
-rw-r--r--package/weston/0002-build-add-check-for-clock_gettime-in-librt.patch101
-rw-r--r--package/weston/Config.in22
-rw-r--r--package/weston/weston.hash4
-rw-r--r--package/weston/weston.mk21
-rw-r--r--package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk4
-rw-r--r--package/xtables-addons/xtables-addons.hash6
-rw-r--r--package/xtables-addons/xtables-addons.mk4
-rw-r--r--package/yaml-cpp/Config.in2
-rw-r--r--package/zmqpp/Config.in2
-rwxr-xr-xsupport/scripts/hardlink-or-copy35
-rw-r--r--support/scripts/pycompile.py24
-rw-r--r--toolchain/toolchain-buildroot/Config.in25
-rw-r--r--toolchain/toolchain-common.in5
-rw-r--r--toolchain/toolchain-external/Config.in16
-rw-r--r--toolchain/toolchain-external/toolchain-external.hash4
-rw-r--r--toolchain/toolchain-external/toolchain-external.mk2
314 files changed, 3531 insertions, 5100 deletions
diff --git a/Config.in b/Config.in
index 9bc8e5193b..1dd2bb36b3 100644
--- a/Config.in
+++ b/Config.in
@@ -120,9 +120,9 @@ config BR2_ZCAT
string "zcat command"
default "gzip -d -c"
help
- Command to be used to extract a gzip'ed file to stdout.
- zcat is identical to gunzip -c except that the former may
- not be available on your system.
+ Command to be used to extract a gzip'ed file to stdout. zcat
+ is identical to gunzip -c except that the former may not be
+ available on your system.
Default is "gzip -d -c"
Other possible values include "gunzip -c" or "zcat".
@@ -162,8 +162,8 @@ config BR2_DEFCONFIG
default BR2_DEFCONFIG_FROM_ENV if BR2_DEFCONFIG_FROM_ENV != ""
default "$(CONFIG_DIR)/defconfig"
help
- When running 'make savedefconfig', the defconfig file will be saved
- in this location.
+ When running 'make savedefconfig', the defconfig file will be
+ saved in this location.
config BR2_DL_DIR
string "Download dir"
@@ -171,7 +171,8 @@ config BR2_DL_DIR
help
Directory to store all the source files that we need to fetch.
If the Linux shell environment has defined the BR2_DL_DIR
- environment variable, then this overrides this configuration item.
+ environment variable, then this overrides this configuration
+ item.
The default is $(TOPDIR)/dl
@@ -179,9 +180,9 @@ config BR2_HOST_DIR
string "Host dir"
default "$(BASE_DIR)/host"
help
- Directory to store all the binary files that are built for the host.
- This includes the cross compilation toolchain when building the
- internal buildroot toolchain.
+ Directory to store all the binary files that are built for the
+ host. This includes the cross compilation toolchain when
+ building the internal buildroot toolchain.
The default is $(BASE_DIR)/host
@@ -191,9 +192,9 @@ config BR2_PRIMARY_SITE
string "Primary download site"
default ""
help
- Primary site to download from. If this option is set then buildroot
- will try to download package source first from this site and try the
- default if the file is not found.
+ Primary site to download from. If this option is set then
+ buildroot will try to download package source first from this
+ site and try the default if the file is not found.
Valid URIs are:
- URIs recognized by $(WGET)
- local URIs of the form file://absolutepath
@@ -206,11 +207,11 @@ config BR2_PRIMARY_SITE_ONLY
If this option is enabled, downloads will only be attempted
from the primary download site. Other locations, like the
package's official download location or the backup download
- site, will not be considered. Therefore, if the package is
- not present on the primary site, the download fails.
+ site, will not be considered. Therefore, if the package is not
+ present on the primary site, the download fails.
- This is useful for project developers who want to ensure
- that the project can be built even if the upstream tarball
+ This is useful for project developers who want to ensure that
+ the project can be built even if the upstream tarball
locations disappear.
if !BR2_PRIMARY_SITE_ONLY
@@ -219,32 +220,36 @@ config BR2_BACKUP_SITE
string "Backup download site"
default "http://sources.buildroot.net"
help
- Backup site to download from. If this option is set then buildroot
- will fall back to download package sources from here if the
- normal location fails.
+ Backup site to download from. If this option is set then
+ buildroot will fall back to download package sources from here
+ if the normal location fails.
config BR2_KERNEL_MIRROR
string "Kernel.org mirror"
- default "https://www.kernel.org/pub"
+ default "https://cdn.kernel.org/pub"
help
- kernel.org is mirrored on a number of servers around the world.
- The following allows you to select your preferred mirror.
+ kernel.org is mirrored on a number of servers around the
+ world. The following allows you to select your preferred
+ mirror. By default, a CDN is used, which automatically
+ redirects to a mirror geographically close to you.
- Have a look on the kernel.org site for a list of mirrors, then enter
- the URL to the base directory. Examples:
+ Have a look on the kernel.org site for a list of mirrors, then
+ enter the URL to the base directory. Examples:
http://www.XX.kernel.org/pub (XX = country code)
http://mirror.aarnet.edu.au/pub/ftp.kernel.org
config BR2_GNU_MIRROR
string "GNU Software mirror"
- default "http://ftp.gnu.org/pub/gnu"
+ default "http://ftpmirror.gnu.org"
help
- GNU has multiple software mirrors scattered around the world.
- The following allows you to select your preferred mirror.
+ GNU has multiple software mirrors scattered around the
+ world. The following allows you to select your preferred
+ mirror. By default, a generic address is used, which
+ automatically selects an up-to-date and local mirror.
- Have a look on the gnu.org site for a list of mirrors, then enter
- the URL to the base directory. Examples:
+ Have a look on the gnu.org site for a list of mirrors, then
+ enter the URL to the base directory. Examples:
http://ftp.gnu.org/pub/gnu
http://mirror.aarnet.edu.au/pub/gnu
@@ -261,8 +266,8 @@ config BR2_CPAN_MIRROR
string "CPAN mirror (Perl packages)"
default "http://cpan.metacpan.org"
help
- CPAN (Comprehensive Perl Archive Network) is a repository
- of Perl packages. It has multiple software mirrors scattered
+ CPAN (Comprehensive Perl Archive Network) is a repository of
+ Perl packages. It has multiple software mirrors scattered
around the world. This option allows you to select a mirror.
The list of mirrors is available at:
@@ -276,24 +281,22 @@ config BR2_JLEVEL
int "Number of jobs to run simultaneously (0 for auto)"
default "0"
help
- Number of jobs to run simultaneously. If 0, determine
- automatically according to number of CPUs on the host
- system.
+ Number of jobs to run simultaneously. If 0, determine
+ automatically according to number of CPUs on the host system.
config BR2_CCACHE
bool "Enable compiler cache"
help
- This option will enable the use of ccache, a compiler
- cache. It will cache the result of previous builds to speed
- up future builds. By default, the cache is stored in
+ This option will enable the use of ccache, a compiler cache.
+ It will cache the result of previous builds to speed up future
+ builds. By default, the cache is stored in
$HOME/.buildroot-ccache.
Note that Buildroot does not try to invalidate the cache
- contents when the compiler changes in an incompatible
- way. Therefore, if you make a change to the compiler version
- and/or configuration, you are responsible for purging the
- ccache cache by removing the $HOME/.buildroot-ccache
- directory.
+ contents when the compiler changes in an incompatible way.
+ Therefore, if you make a change to the compiler version and/or
+ configuration, you are responsible for purging the ccache
+ cache by removing the $HOME/.buildroot-ccache directory.
if BR2_CCACHE
@@ -306,16 +309,19 @@ config BR2_CCACHE_DIR
config BR2_CCACHE_INITIAL_SETUP
string "Compiler cache initial setup"
help
- Initial ccache settings to apply, such as --max-files or --max-size.
+ Initial ccache settings to apply, such as --max-files or
+ --max-size.
- For example, if your project is known to require more space than the
- default max cache size, then you might want to increase the cache size
- to a suitable amount using the -M (--max-size) option.
+ For example, if your project is known to require more space
+ than the default max cache size, then you might want to
+ increase the cache size to a suitable amount using the -M
+ (--max-size) option.
- The string you specify here is passed verbatim to ccache. Refer to
- ccache documentation for more details.
+ The string you specify here is passed verbatim to ccache.
+ Refer to ccache documentation for more details.
- These initial settings are applied after ccache has been compiled.
+ These initial settings are applied after ccache has been
+ compiled.
config BR2_CCACHE_USE_BASEDIR
bool "Use relative paths"
@@ -324,25 +330,25 @@ config BR2_CCACHE_USE_BASEDIR
Allow ccache to convert absolute paths within the output
directory into relative paths.
- During the build, many -I include directives are given with
- an absolute path. These absolute paths end up in the hashes
- that are computed by ccache. Therefore, when you build from a
- different directory, the hash will be different and the
- cached object will not be used.
+ During the build, many -I include directives are given with an
+ absolute path. These absolute paths end up in the hashes that
+ are computed by ccache. Therefore, when you build from a
+ different directory, the hash will be different and the cached
+ object will not be used.
To improve cache performance, set this option to y. This
allows ccache to rewrite absolute paths within the output
- directory into relative paths. Note that only paths within
- the output directory will be rewritten; therefore, if you
- change BR2_HOST_DIR to point outside the output directory and
+ directory into relative paths. Note that only paths within the
+ output directory will be rewritten; therefore, if you change
+ BR2_HOST_DIR to point outside the output directory and
subsequently move it to a different location, this will lead
to cache misses.
This option has as a result that the debug information in the
object files also has only relative paths. Therefore, make
sure you cd to the build directory before starting gdb. See
- the section "COMPILING IN DIFFERENT DIRECTORIES" in the
- ccache manual for more information.
+ the section "COMPILING IN DIFFERENT DIRECTORIES" in the ccache
+ manual for more information.
endif
@@ -396,11 +402,11 @@ choice
config BR2_DEBUG_1
bool "debug level 1"
help
- Debug level 1 produces minimal information, enough
- for making backtraces in parts of the program that
- you don't plan to debug. This includes descriptions
- of functions and external variables, but no information
- about local variables and no line numbers.
+ Debug level 1 produces minimal information, enough for making
+ backtraces in parts of the program that you don't plan to
+ debug. This includes descriptions of functions and external
+ variables, but no information about local variables and no
+ line numbers.
config BR2_DEBUG_2
bool "debug level 2"
@@ -410,9 +416,9 @@ config BR2_DEBUG_2
config BR2_DEBUG_3
bool "debug level 3"
help
- Level 3 includes extra information, such as all the
- macro definitions present in the program. Some debuggers
- support macro expansion when you use -g3.
+ Level 3 includes extra information, such as all the macro
+ definitions present in the program. Some debuggers support
+ macro expansion when you use -g3.
endchoice
endif
@@ -425,16 +431,15 @@ config BR2_STRIP_strip
depends on !BR2_PACKAGE_HOST_ELF2FLT
help
Binaries and libraries in the target filesystem will be
- stripped using the normal 'strip' command. This allows to
- save space, mainly by removing debugging symbols. Debugging
- symbols on the target are needed for native debugging, but
- not when remote debugging is used.
+ stripped using the normal 'strip' command. This allows to save
+ space, mainly by removing debugging symbols. Debugging symbols
+ on the target are needed for native debugging, but not when
+ remote debugging is used.
config BR2_STRIP_none
bool "none"
help
- Do not strip binaries and libraries in the target
- filesystem.
+ Do not strip binaries and libraries in the target filesystem.
endchoice
config BR2_STRIP_EXCLUDE_FILES
@@ -442,19 +447,19 @@ config BR2_STRIP_EXCLUDE_FILES
depends on !BR2_STRIP_none
default ""
help
- You may specify a space-separated list of binaries and libraries
- here that should not be stripped on the target.
+ You may specify a space-separated list of binaries and
+ libraries here that should not be stripped on the target.
config BR2_STRIP_EXCLUDE_DIRS
string "directories that should be skipped when stripping"
depends on !BR2_STRIP_none
default ""
help
- You may specify a space-separated list of directories that should
- be skipped when stripping. Binaries and libraries in these
- directories will not be touched.
- The directories should be specified relative to the target directory,
- without leading slash.
+ You may specify a space-separated list of directories that
+ should be skipped when stripping. Binaries and libraries in
+ these directories will not be touched. The directories should
+ be specified relative to the target directory, without leading
+ slash.
choice
prompt "gcc optimization level"
@@ -470,54 +475,67 @@ config BR2_OPTIMIZE_0
config BR2_OPTIMIZE_1
bool "optimization level 1"
help
- Optimize. Optimizing compilation takes somewhat more time,
- and a lot more memory for a large function. With -O, the
- compiler tries to reduce code size and execution time,
- without performing any optimizations that take a great deal
- of compilation time. -O turns on the following optimization
+ Optimize. Optimizing compilation takes somewhat more time, and
+ a lot more memory for a large function. With -O, the compiler
+ tries to reduce code size and execution time, without
+ performing any optimizations that take a great deal of
+ compilation time. -O turns on the following optimization
flags: -fdefer-pop -fdelayed-branch -fguess-branch-probability
-fcprop-registers -floop-optimize -fif-conversion
-fif-conversion2 -ftree-ccp -ftree-dce -ftree-dominator-opts
-ftree-dse -ftree-ter -ftree-lrs -ftree-sra -ftree-copyrename
- -ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants
- -O also turns on -fomit-frame-pointer on machines where doing
- so does not interfere with debugging.
+ -ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants. -O
+ also turns on -fomit-frame-pointer on machines where doing so
+ does not interfere with debugging.
config BR2_OPTIMIZE_2
bool "optimization level 2"
help
- Optimize even more. GCC performs nearly all supported optimizations
- that do not involve a space-speed tradeoff. The compiler does not
- perform loop unrolling or function inlining when you specify -O2.
- As compared to -O, this option increases both compilation time and
- the performance of the generated code. -O2 turns on all optimization
- flags specified by -O. It also turns on the following optimization
- flags: -fthread-jumps -fcrossjumping -foptimize-sibling-calls
+ Optimize even more. GCC performs nearly all supported
+ optimizations that do not involve a space-speed tradeoff. The
+ compiler does not perform loop unrolling or function inlining
+ when you specify -O2. As compared to -O, this option increases
+ both compilation time and the performance of the generated
+ code. -O2 turns on all optimization flags specified by -O. It
+ also turns on the following optimization flags:
+ -fthread-jumps -fcrossjumping -foptimize-sibling-calls
-fcse-follow-jumps -fcse-skip-blocks -fgcse -fgcse-lm
- -fexpensive-optimizations -fstrength-reduce -frerun-cse-after-loop
- -frerun-loop-opt -fcaller-saves -fpeephole2 -fschedule-insns
- -fschedule-insns2 -fsched-interblock -fsched-spec -fregmove
- -fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks
- -freorder-functions -falign-functions -falign-jumps -falign-loops
- -falign-labels -ftree-vrp -ftree-pre
- Please note the warning under -fgcse about invoking -O2 on programs
+ -fexpensive-optimizations -fstrength-reduce
+ -frerun-cse-after-loop -frerun-loop-opt -fcaller-saves
+ -fpeephole2 -fschedule-insns -fschedule-insns2
+ -fsched-interblock -fsched-spec -fregmove -fstrict-aliasing
+ -fdelete-null-pointer-checks -freorder-blocks
+ -freorder-functions -falign-functions -falign-jumps
+ -falign-loops -falign-labels -ftree-vrp -ftree-pre. Please
+ note the warning under -fgcse about invoking -O2 on programs
that use computed gotos.
config BR2_OPTIMIZE_3
bool "optimization level 3"
help
- Optimize yet more. -O3 turns on all optimizations specified by -O2
- and also turns on the -finline-functions, -funswitch-loops and
- -fgcse-after-reload options.
+ Optimize yet more. -O3 turns on all optimizations specified by
+ -O2 and also turns on the -finline-functions, -funswitch-loops
+ and -fgcse-after-reload options.
+
+config BR2_OPTIMIZE_G
+ bool "optimize for debugging"
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
+ help
+ Optimize for debugging. This enables optimizations that do not
+ interfere with debugging. It should be the optimization level
+ of choice for the standard edit-compile-debug cycle, offering
+ a reasonable level of optimization while maintaining fast
+ compilation and a good debugging experience.
config BR2_OPTIMIZE_S
bool "optimize for size"
help
- Optimize for size. -Os enables all -O2 optimizations that do not
- typically increase code size. It also performs further optimizations
- designed to reduce code size. -Os disables the following optimization
- flags: -falign-functions -falign-jumps -falign-loops -falign-labels
- -freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays
+ Optimize for size. -Os enables all -O2 optimizations that do
+ not typically increase code size. It also performs further
+ optimizations designed to reduce code size. -Os disables the
+ following optimization flags: -falign-functions -falign-jumps
+ -falign-loops -falign-labels -freorder-blocks
+ -freorder-blocks-and-partition -fprefetch-loop-arrays
-ftree-vect-loop-version
endchoice
@@ -529,13 +547,13 @@ config BR2_GOOGLE_BREAKPAD_ENABLE
depends on BR2_TOOLCHAIN_USES_GLIBC
depends on BR2_PACKAGE_GOOGLE_BREAKPAD_ARCH_SUPPORTS
help
- This option will enable the use of google breakpad, a
- library and tool suite that allows you to distribute an
- application to users with compiler-provided debugging
- information removed, record crashes in compact "minidump"
- files, send them back to your server and produce C and C++
- stack traces from these minidumps. Breakpad can also write
- minidumps on request for programs that have not crashed.
+ This option will enable the use of google breakpad, a library
+ and tool suite that allows you to distribute an application to
+ users with compiler-provided debugging information removed,
+ record crashes in compact "minidump" files, send them back to
+ your server and produce C and C++ stack traces from these
+ minidumps. Breakpad can also write minidumps on request for
+ programs that have not crashed.
if BR2_GOOGLE_BREAKPAD_ENABLE
@@ -563,12 +581,13 @@ choice
Enable stack smashing protection support using GCC's
-fstack-protector option family.
- See http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt
+ See
+ http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt
for details.
- Note that this requires the toolchain to have SSP
- support. This is always the case for glibc and eglibc
- toolchain, but is optional in uClibc toolchains.
+ Note that this requires the toolchain to have SSP support.
+ This is always the case for glibc and eglibc toolchain, but is
+ optional in uClibc toolchains.
config BR2_SSP_NONE
bool "None"
@@ -616,20 +635,19 @@ choice
help
Select the type of libraries you want to use on the target.
- The default is to build dynamic libraries and use those on
- the target filesystem, except when the architecture and/or
- the selected binary format does not support shared
- libraries.
+ The default is to build dynamic libraries and use those on the
+ target filesystem, except when the architecture and/or the
+ selected binary format does not support shared libraries.
config BR2_STATIC_LIBS
bool "static only"
help
- Build and use only static libraries. No shared libraries
- will be instaled on the target. This potentially increases
- your code size and should only be used if you know what you
- are doing. Note that some packages may not be available when
- this option is enabled, due to their need for dynamic
- library support.
+ Build and use only static libraries. No shared libraries will
+ be instaled on the target. This potentially increases your
+ code size and should only be used if you know what you are
+ doing. Note that some packages may not be available when this
+ option is enabled, due to their need for dynamic library
+ support.
config BR2_SHARED_LIBS
bool "shared only"
@@ -655,43 +673,45 @@ config BR2_PACKAGE_OVERRIDE_FILE
default "$(CONFIG_DIR)/local.mk"
help
A package override file is a short makefile that contains
- variable definitions of the form <pkg>_OVERRIDE_SRCDIR,
- which allows to tell Buildroot to use an existing directory
- as the source directory for a particular package. See the
- Buildroot documentation for more details on this feature.
+ variable definitions of the form <pkg>_OVERRIDE_SRCDIR, which
+ allows to tell Buildroot to use an existing directory as the
+ source directory for a particular package. See the Buildroot
+ documentation for more details on this feature.
config BR2_GLOBAL_PATCH_DIR
string "global patch directories"
help
- You may specify a space separated list of one or more directories
- containing global package patches. For a specific version
- <packageversion> of a specific package <packagename>, patches are
- applied as follows:
+ You may specify a space separated list of one or more
+ directories containing global package patches. For a specific
+ version <packageversion> of a specific package <packagename>,
+ patches are applied as follows:
- First, the default Buildroot patch set for the package is applied
- from the package's directory in Buildroot.
+ First, the default Buildroot patch set for the package is
+ applied from the package's directory in Buildroot.
Then for every directory - <global-patch-dir> - that exists in
BR2_GLOBAL_PATCH_DIR, if the directory
- <global-patch-dir>/<packagename>/<packageversion>/ exists, then all
- *.patch files in this directory will be applied.
+ <global-patch-dir>/<packagename>/<packageversion>/ exists,
+ then all *.patch files in this directory will be applied.
- Otherwise, if the directory <global-patch-dir>/<packagename> exists,
- then all *.patch files in the directory will be applied.
+ Otherwise, if the directory <global-patch-dir>/<packagename>
+ exists, then all *.patch files in the directory will be
+ applied.
menu "Advanced"
config BR2_COMPILER_PARANOID_UNSAFE_PATH
bool "paranoid check of library/header paths"
+ default y
help
By default, when this option is disabled, when the Buildroot
- cross-compiler will encounter an unsafe library or header
- path (such as /usr/include, or /usr/lib), the compiler will
- display a warning.
+ cross-compiler will encounter an unsafe library or header path
+ (such as /usr/include, or /usr/lib), the compiler will display
+ a warning.
- By enabling this option, this warning is turned into an
- error, which will completely abort the build when such
- unsafe paths are encountered.
+ By enabling this option, this warning is turned into an error,
+ which will completely abort the build when such unsafe paths
+ are encountered.
Note that this mechanism is available for both the internal
toolchain (through the toolchain wrapper and binutils patches)
diff --git a/Config.in.legacy b/Config.in.legacy
index b9c2f004f9..9bb9b623c2 100644
--- a/Config.in.legacy
+++ b/Config.in.legacy
@@ -143,6 +143,31 @@ comment "----------------------------------------------------"
endif
###############################################################################
+comment "Legacy options removed in 2016.08"
+
+config BR2_BINUTILS_VERSION_2_23_X
+ bool "binutils 2.23 removed"
+ select BR2_LEGACY
+ help
+ Binutils 2.23 has been removed, using a newer version is
+ recommended.
+
+config BR2_TOOLCHAIN_BUILDROOT_EGLIBC
+ bool "eglibc support has been removed"
+ select BR2_LEGACY
+ help
+ The eglibc project no longer exists, as it has been merged
+ back into the glibc project. Therefore, support for eglibc
+ has been removed, and glibc should be used instead.
+
+config BR2_GDB_VERSION_7_8
+ bool "gdb 7.8 has been removed"
+ select BR2_LEGACY
+ help
+ The 7.8 version of gdb has been removed. Use a newer version
+ instead.
+
+###############################################################################
comment "Legacy options removed in 2016.05"
config BR2_PACKAGE_OPENVPN_CRYPTO_POLARSSL
@@ -913,11 +938,9 @@ config BR2_PACKAGE_KODI_PVR_ADDONS
config BR2_BINUTILS_VERSION_2_23_2
bool "binutils 2.23 option renamed"
select BR2_LEGACY
- select BR2_BINUTILS_VERSION_2_23_X
help
- The binutils version option has been renamed to match the
- same patchlevel logic used by gcc. The new option is now
- BR2_BINUTILS_VERSION_2_23_X.
+ Binutils 2.23.2 has been removed, using a newer version is
+ recommended.
config BR2_BINUTILS_VERSION_2_24
bool "binutils 2.24 option renamed"
diff --git a/board/freescale/imx53loco/create-boot-sd.sh b/board/freescale/imx53loco/create-boot-sd.sh
deleted file mode 120000
index d45d639b3b..0000000000
--- a/board/freescale/imx53loco/create-boot-sd.sh
+++ /dev/null
@@ -1 +0,0 @@
-../create-boot-sd.sh \ No newline at end of file
diff --git a/board/freescale/imx53loco/genimage.cfg b/board/freescale/imx53loco/genimage.cfg
new file mode 100644
index 0000000000..b56c1687ed
--- /dev/null
+++ b/board/freescale/imx53loco/genimage.cfg
@@ -0,0 +1,42 @@
+# Minimal microSD card image for the Freescale's i.MX53 QSB board
+#
+# We mimic the .sdcard Freescale's image format for i.MX53:
+# * the microSD card must have 1 kB free space at the beginning,
+# * U-Boot is dumped as is,
+# * a FAT partition at offset 8 MB is containing zImage and dtbs,
+# * a single root filesystem partition is required (Ext4 in this case).
+#
+
+image boot.vfat {
+ vfat {
+ files = {
+ "imx53-qsb.dtb",
+ "imx53-qsrb.dtb",
+ "zImage"
+ }
+ }
+ size = 16M
+}
+
+image sdcard.img {
+ hdimage {
+ }
+
+ partition u-boot {
+ in-partition-table = "no"
+ image = "u-boot.imx"
+ offset = 1024
+ }
+
+ partition boot {
+ partition-type = 0xC
+ bootable = "true"
+ image = "boot.vfat"
+ offset = 8M
+ }
+
+ partition rootfs {
+ partition-type = 0x83
+ image = "rootfs.ext4"
+ }
+}
diff --git a/board/freescale/imx53loco/patches/uboot/0001-video-ipu_common-fix-build-error.patch b/board/freescale/imx53loco/patches/uboot/0001-video-ipu_common-fix-build-error.patch
new file mode 100644
index 0000000000..356d0b03af
--- /dev/null
+++ b/board/freescale/imx53loco/patches/uboot/0001-video-ipu_common-fix-build-error.patch
@@ -0,0 +1,47 @@
+From c510f2e436008e55a50b063f2180cb1e63984224 Mon Sep 17 00:00:00 2001
+From: Peng Fan <van.freenix@gmail.com>
+Date: Thu, 28 Apr 2016 10:07:53 +0800
+Subject: [PATCH] video: ipu_common: fix build error
+
+Some toolchains fail to build
+"clk->rate = (u64)(clk->parent->rate * 16) / div;"
+And the cast usage is wrong.
+
+Use the following code to fix the issue,
+"
+ do_div(parent_rate, div);
+ clk->rate = parent_rate;
+"
+
+Reported-by: Peter Robinson <pbrobinson@gmail.com>
+Signed-off-by: Peng Fan <van.freenix@gmail.com>
+Cc: Stefano Babic <sbabic@denx.de>
+Cc: Fabio Estevam <fabio.estevam@nxp.com>
+Cc: Tom Rini <trini@konsulko.com>
+Cc: Anatolij Gustschin <agust@denx.de>
+Cc: Peter Robinson <pbrobinson@gmail.com>
+Reviewed-by: Tom Rini <trini@konsulko.com>
+Tested-by: Peter Robinson <pbrobinson@gmail.com>
+Signed-off-by: Fabio Estevam <festevam@gmail.com>
+---
+ drivers/video/ipu_common.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/video/ipu_common.c b/drivers/video/ipu_common.c
+index 36d4b23..5676a0f 100644
+--- a/drivers/video/ipu_common.c
++++ b/drivers/video/ipu_common.c
+@@ -352,7 +352,9 @@ static int ipu_pixel_clk_set_rate(struct clk *clk, unsigned long rate)
+ */
+ __raw_writel((div / 16) << 16, DI_BS_CLKGEN1(clk->id));
+
+- clk->rate = (u64)(clk->parent->rate * 16) / div;
++ do_div(parent_rate, div);
++
++ clk->rate = parent_rate;
+
+ return 0;
+ }
+--
+1.9.1
+
diff --git a/board/freescale/imx53loco/post-image.sh b/board/freescale/imx53loco/post-image.sh
new file mode 100644
index 0000000000..87573557ca
--- /dev/null
+++ b/board/freescale/imx53loco/post-image.sh
@@ -0,0 +1,16 @@
+#!/usr/bin/env bash
+
+BOARD_DIR="$(dirname $0)"
+GENIMAGE_CFG="${BOARD_DIR}/genimage.cfg"
+GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
+
+rm -rf "${GENIMAGE_TMP}"
+
+genimage \
+ --rootpath "${TARGET_DIR}" \
+ --tmppath "${GENIMAGE_TMP}" \
+ --inputpath "${BINARIES_DIR}" \
+ --outputpath "${BINARIES_DIR}" \
+ --config "${GENIMAGE_CFG}"
+
+exit $?
diff --git a/board/freescale/imx6ulevk/post-image.sh b/board/freescale/imx6ulevk/post-image.sh
index cb75a47de6..87573557ca 100755
--- a/board/freescale/imx6ulevk/post-image.sh
+++ b/board/freescale/imx6ulevk/post-image.sh
@@ -1,6 +1,7 @@
#!/usr/bin/env bash
-GENIMAGE_CFG="board/freescale/imx6ulevk/genimage.cfg"
+BOARD_DIR="$(dirname $0)"
+GENIMAGE_CFG="${BOARD_DIR}/genimage.cfg"
GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
rm -rf "${GENIMAGE_TMP}"
diff --git a/board/freescale/imx7dsdb/genimage.cfg b/board/freescale/imx7dsdb/genimage.cfg
new file mode 100644
index 0000000000..aa6ae9e21e
--- /dev/null
+++ b/board/freescale/imx7dsdb/genimage.cfg
@@ -0,0 +1,41 @@
+# Minimal microSD card image for the Freescale's i.MX7D SDB board
+#
+# We mimic the .sdcard Freescale's image format for i.MX7D:
+# * the microSD card must have 1 kB free space at the beginning,
+# * U-Boot is dumped as is,
+# * a FAT partition at offset 8 MB is containing zImage and dtbs,
+# * a single root filesystem partition is required (Ext4 in this case).
+#
+
+image boot.vfat {
+ vfat {
+ files = {
+ "imx7d-sdb.dtb",
+ "zImage"
+ }
+ }
+ size = 16M
+}
+
+image sdcard.img {
+ hdimage {
+ }
+
+ partition u-boot {
+ in-partition-table = "no"
+ image = "u-boot.imx"
+ offset = 1024
+ }
+
+ partition boot {
+ partition-type = 0xC
+ bootable = "true"
+ image = "boot.vfat"
+ offset = 8M
+ }
+
+ partition rootfs {
+ partition-type = 0x83
+ image = "rootfs.ext4"
+ }
+}
diff --git a/board/freescale/imx7dsdb/post-image.sh b/board/freescale/imx7dsdb/post-image.sh
new file mode 100755
index 0000000000..87573557ca
--- /dev/null
+++ b/board/freescale/imx7dsdb/post-image.sh
@@ -0,0 +1,16 @@
+#!/usr/bin/env bash
+
+BOARD_DIR="$(dirname $0)"
+GENIMAGE_CFG="${BOARD_DIR}/genimage.cfg"
+GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
+
+rm -rf "${GENIMAGE_TMP}"
+
+genimage \
+ --rootpath "${TARGET_DIR}" \
+ --tmppath "${GENIMAGE_TMP}" \
+ --inputpath "${BINARIES_DIR}" \
+ --outputpath "${BINARIES_DIR}" \
+ --config "${GENIMAGE_CFG}"
+
+exit $?
diff --git a/board/freescale/imx7dsdb/readme.txt b/board/freescale/imx7dsdb/readme.txt
new file mode 100644
index 0000000000..c72e9a979d
--- /dev/null
+++ b/board/freescale/imx7dsdb/readme.txt
@@ -0,0 +1,54 @@
+***************************
+Freescale i.MX7D SDB board
+***************************
+
+This file documents the Buildroot support for the Freescale i.MX7D SDB board.
+
+Build
+=====
+
+First, configure Buildroot for your i.MX7D SDB board:
+
+ make freescale_imx7dsabresd_defconfig
+
+Build all components:
+
+ make
+
+You will find in output/images/ the following files:
+ - imx7d-sdb.dtb
+ - rootfs.ext4
+ - rootfs.tar
+ - sdcard.img
+ - u-boot.imx
+ - zImage
+
+Create a bootable SD card
+=========================
+
+To determine the device associated to the SD card have a look in the
+/proc/partitions file:
+
+ cat /proc/partitions
+
+Buildroot prepares a bootable "sdcard.img" image in the output/images/
+directory, ready to be dumped on a SD card. Launch the following
+command as root:
+
+ dd if=./output/images/sdcard.img of=/dev/<your-sd-device>
+
+*** WARNING! This will destroy all the card content. Use with care! ***
+
+For details about the medium image layout, see the definition in
+board/freescale/imx7dsdb/genimage.cfg.
+
+Boot the i.MX7D SDB board
+=========================
+
+To boot your newly created system:
+- insert the SD card in the SD slot of the board;
+- put a micro USB cable into the Debug USB Port and connect using a terminal
+ emulator at 115200 bps, 8n1;
+- power on the board.
+
+Enjoy!
diff --git a/board/roseapplepi/genimage.cfg b/board/roseapplepi/genimage.cfg
new file mode 100644
index 0000000000..4d40e65bba
--- /dev/null
+++ b/board/roseapplepi/genimage.cfg
@@ -0,0 +1,43 @@
+# Minimal SD card image for the Roseapple Pi
+#
+image boot.vfat {
+ vfat {
+ files = {
+ "uEnv.txt",
+ "uImage"
+ }
+ file kernel.dtb {
+ image = "actduino_bubble_gum_sdboot_linux.dtb"
+ }
+ }
+ size = 10M
+}
+
+image sdcard.img {
+ hdimage {
+ }
+
+ partition s500-bootloader {
+ in-partition-table = "no"
+ image = "s500-bootloader.bin"
+ offset = 0x200200
+ }
+
+ partition u-boot {
+ in-partition-table = "no"
+ image = "u-boot-dtb.img"
+ offset = 0x300000
+ }
+
+ partition boot {
+ partition-type = 0xC
+ bootable = "true"
+ image = "boot.vfat"
+ }
+
+ partition rootfs {
+ partition-type = 0x83
+ image = "rootfs.ext4"
+ size = 512M
+ }
+}
diff --git a/board/roseapplepi/patches/linux/0001-unbreak-xhci-trace.patch b/board/roseapplepi/patches/linux/0001-unbreak-xhci-trace.patch
new file mode 100644
index 0000000000..79e8c800d2
--- /dev/null
+++ b/board/roseapplepi/patches/linux/0001-unbreak-xhci-trace.patch
@@ -0,0 +1,31 @@
+[PATCH] unbreak xhci-trace compilation
+
+When commit 84a99f6fc5d4 (xhci: add traces for debug messages in
+xhci_address_device) was backported to the owl tree as part of commit
+5b2ea66f15396 (usb: add owl usb driver), the specific CFLAGS needed for
+xhci-trace.c were missed, causing build breakage:
+
+ CC drivers/usb/host/xhci-trace.o
+In file included from drivers/usb/host/xhci-trace.h:151:0,
+ from drivers/usb/host/xhci-trace.c:15:
+include/trace/define_trace.h:79:43: fatal error: ./xhci-trace.h: No such file or directory
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ drivers/usb/host/Makefile | 3 +++
+ 1 file changed, 3 insertions(+)
+
+Index: linux-59dbf6a4998e967eb9c6bdcc9b506c0d96acb26b/drivers/usb/host/Makefile
+===================================================================
+--- linux-59dbf6a4998e967eb9c6bdcc9b506c0d96acb26b.orig/drivers/usb/host/Makefile
++++ linux-59dbf6a4998e967eb9c6bdcc9b506c0d96acb26b/drivers/usb/host/Makefile
+@@ -4,6 +4,9 @@
+
+ ccflags-$(CONFIG_USB_DEBUG) := -DDEBUG
+
++# tell define_trace.h where to find the xhci trace header
++CFLAGS_xhci-trace.o := -I$(src)
++
+ isp1760-y := isp1760-hcd.o isp1760-if.o
+
+ fhci-y := fhci-hcd.o fhci-hub.o fhci-q.o
diff --git a/board/roseapplepi/post-image.sh b/board/roseapplepi/post-image.sh
new file mode 100755
index 0000000000..e8f2df23f3
--- /dev/null
+++ b/board/roseapplepi/post-image.sh
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+BOARD_DIR="$(dirname $0)"
+GENIMAGE_CFG="${BOARD_DIR}/genimage.cfg"
+GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
+
+rm -rf "${GENIMAGE_TMP}"
+
+cp "${BOARD_DIR}/uEnv.txt" "${BINARIES_DIR}"
+
+genimage \
+ --rootpath "${TARGET_DIR}" \
+ --tmppath "${GENIMAGE_TMP}" \
+ --inputpath "${BINARIES_DIR}" \
+ --outputpath "${BINARIES_DIR}" \
+ --config "${GENIMAGE_CFG}"
+
+exit $?
diff --git a/board/roseapplepi/uEnv.txt b/board/roseapplepi/uEnv.txt
new file mode 100755
index 0000000000..f9646e498e
--- /dev/null
+++ b/board/roseapplepi/uEnv.txt
@@ -0,0 +1,3 @@
+# no ramdisk
+ramdisk_addr_r=-
+bootargs=clk_ignore_unused root=/dev/mmcblk0p2
diff --git a/board/via/imx6_vab820/post-image.sh b/board/via/imx6_vab820/post-image.sh
index 8d502a550e..00de33b01d 100755
--- a/board/via/imx6_vab820/post-image.sh
+++ b/board/via/imx6_vab820/post-image.sh
@@ -1,6 +1,7 @@
#!/bin/bash
-GENIMAGE_CFG="board/via/imx6_vab820/genimage.cfg"
+BOARD_DIR="$(dirname $0)"
+GENIMAGE_CFG="${BOARD_DIR}/genimage.cfg"
GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
rm -rf "${GENIMAGE_TMP}"
diff --git a/board/wandboard/post-image.sh b/board/wandboard/post-image.sh
index 95cbfa4897..11f58dbd02 100755
--- a/board/wandboard/post-image.sh
+++ b/board/wandboard/post-image.sh
@@ -1,6 +1,7 @@
#!/usr/bin/env bash
-GENIMAGE_CFG="board/wandboard/genimage.cfg"
+BOARD_DIR="$(dirname $0)"
+GENIMAGE_CFG="${BOARD_DIR}/genimage.cfg"
GENIMAGE_TMP="${BUILD_DIR}/genimage.tmp"
rm -rf "${GENIMAGE_TMP}"
diff --git a/boot/Config.in b/boot/Config.in
index 4daf07952c..cd10cd865d 100644
--- a/boot/Config.in
+++ b/boot/Config.in
@@ -11,6 +11,7 @@ source "boot/grub2/Config.in"
source "boot/gummiboot/Config.in"
source "boot/lpc32xxcdl/Config.in"
source "boot/mxs-bootlets/Config.in"
+source "boot/s500-bootloader/Config.in"
source "boot/syslinux/Config.in"
source "boot/uboot/Config.in"
source "boot/xloader/Config.in"
diff --git a/boot/barebox/Config.in b/boot/barebox/Config.in
index 0bb19d36ad..52a83a9ef4 100644
--- a/boot/barebox/Config.in
+++ b/boot/barebox/Config.in
@@ -12,7 +12,7 @@ choice
Select the specific Barebox version you want to use
config BR2_TARGET_BAREBOX_LATEST_VERSION
- bool "2016.04.0"
+ bool "2016.05.0"
config BR2_TARGET_BAREBOX_CUSTOM_VERSION
bool "Custom version"
@@ -40,7 +40,7 @@ endif
config BR2_TARGET_BAREBOX_VERSION
string
- default "2016.04.0" if BR2_TARGET_BAREBOX_LATEST_VERSION
+ default "2016.05.0" if BR2_TARGET_BAREBOX_LATEST_VERSION
default BR2_TARGET_BAREBOX_CUSTOM_VERSION_VALUE if BR2_TARGET_BAREBOX_CUSTOM_VERSION
default "custom" if BR2_TARGET_BAREBOX_CUSTOM_TARBALL
default BR2_TARGET_BAREBOX_CUSTOM_GIT_VERSION if BR2_TARGET_BAREBOX_CUSTOM_GIT
diff --git a/boot/barebox/barebox.hash b/boot/barebox/barebox.hash
index 0e30dbdee9..fe3b8b2fc1 100644
--- a/boot/barebox/barebox.hash
+++ b/boot/barebox/barebox.hash
@@ -1,5 +1,5 @@
-# http://www.barebox.org/download/barebox-2016.04.0.tar.bz2.md5
-md5 178150b9d7fa9a27db513a629b9200c2 barebox-2016.04.0.tar.bz2
+# http://www.barebox.org/download/barebox-2016.05.0.tar.bz2.md5
+md5 4df21ad084faa54ea0310288c7b03049 barebox-2016.05.0.tar.bz2
# Locally calculated
-sha256 ad2618a7df5fe5e923d8fd4c8d99f95a8b44166ff7d016bba73e5cb677802027 barebox-2016.04.0.tar.bz2
+sha256 e3a85fd0d9b4c92421258ba38f5bee112ec9dcae87246c93a2353c62bf16d988 barebox-2016.05.0.tar.bz2
diff --git a/boot/s500-bootloader/Config.in b/boot/s500-bootloader/Config.in
new file mode 100644
index 0000000000..7bb689f305
--- /dev/null
+++ b/boot/s500-bootloader/Config.in
@@ -0,0 +1,17 @@
+config BR2_TARGET_S500_BOOTLOADER
+ bool "s500-bootloader"
+ depends on BR2_arm
+ depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+ select BR2_HOSTARCH_NEEDS_IA32_LIBS
+ help
+ 1st level bootloader for Actions Semiconductor S500 SoC.
+
+ https://github.com/xapp-le/owl
+
+config BR2_TARGET_S500_BOOTLOADER_BOARD
+ string "board to configure for"
+ depends on BR2_TARGET_S500_BOOTLOADER
+ help
+ Specify the board to configure the bootloader for.
+ This should be the name of a directory under s500/boards
+ containing a suitable bootloader.ini file.
diff --git a/boot/s500-bootloader/s500-bootloader.hash b/boot/s500-bootloader/s500-bootloader.hash
new file mode 100644
index 0000000000..d538f23b2a
--- /dev/null
+++ b/boot/s500-bootloader/s500-bootloader.hash
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 b183024ac69f51ea7befd28d03b2ec35a7280e270405600fb4f37aa91d9c9571 s500-bootloader-a8d7fa1d9a7f353ec4613febf30f4ca99a10a106.tar.gz
diff --git a/boot/s500-bootloader/s500-bootloader.mk b/boot/s500-bootloader/s500-bootloader.mk
new file mode 100644
index 0000000000..bc87b091c7
--- /dev/null
+++ b/boot/s500-bootloader/s500-bootloader.mk
@@ -0,0 +1,34 @@
+################################################################################
+#
+# s500-bootloader
+#
+################################################################################
+
+S500_BOOTLOADER_VERSION = a8d7fa1d9a7f353ec4613febf30f4ca99a10a106
+S500_BOOTLOADER_SITE = $(call github,xapp-le,owl,$(S500_BOOTLOADER_VERSION))
+S500_BOOTLOADER_LICENSE = PROPRIETARY
+S500_BOOTLOADER_INSTALL_TARGET = NO
+S500_BOOTLOADER_INSTALL_IMAGES = YES
+
+S500_BOOTLOADER_BOARD = $(call qstrip,$(BR2_TARGET_S500_BOOTLOADER_BOARD))
+
+define S500_BOOTLOADER_BUILD_CMDS
+ cd $(@D) && ./tools/utils/bootloader_pack \
+ s500/bootloader/bootloader.bin \
+ s500/boards/$(S500_BOOTLOADER_BOARD)/bootloader.ini \
+ s500-bootloader.bin
+endef
+
+define S500_BOOTLOADER_INSTALL_IMAGES_CMDS
+ $(INSTALL) -m 0644 -D $(@D)/s500-bootloader.bin \
+ $(BINARIES_DIR)/s500-bootloader.bin
+endef
+
+$(eval $(generic-package))
+
+ifeq ($(BR2_TARGET_S500_BOOTLOADER)$(BR_BUILDING),yy)
+# we NEED a board name
+ifeq ($(S500_BOOTLOADER_BOARD),)
+$(error No s500-bootloader board specified. Check your BR2_TARGET_S500_BOOTLOADER settings)
+endif
+endif
diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
index 4613dd3c95..9ffbb5145c 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 "2016.03"
+ bool "2016.05"
config BR2_TARGET_UBOOT_CUSTOM_VERSION
bool "Custom version"
@@ -86,7 +86,7 @@ endif
config BR2_TARGET_UBOOT_VERSION
string
- default "2016.03" if BR2_TARGET_UBOOT_LATEST_VERSION
+ default "2016.05" 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
@@ -348,9 +348,13 @@ menuconfig BR2_TARGET_UBOOT_ENVIMAGE
if BR2_TARGET_UBOOT_ENVIMAGE
config BR2_TARGET_UBOOT_ENVIMAGE_SOURCE
- string "Source file for environment"
+ string "Source files for environment"
help
- Text file describing the environment.
+ Text files describing the environment. Files should have
+ lines of the form var=value, one per line. Blank lines and
+ lines starting with a # are ignored.
+
+ Multiple source files are concatenated in the order listed.
config BR2_TARGET_UBOOT_ENVIMAGE_SIZE
string "Size of environment"
diff --git a/boot/uboot/uboot.hash b/boot/uboot/uboot.hash
index 747d133dfc..2076b3b80b 100644
--- a/boot/uboot/uboot.hash
+++ b/boot/uboot/uboot.hash
@@ -1,2 +1,2 @@
# Locally computed:
-sha256 e49337262ecac44dbdeac140f2c6ebd1eba345e0162b0464172e7f05583ed7bb u-boot-2016.03.tar.bz2
+sha256 87d02275615aaf0cd007b54cbe9fbadceef2bee7c79e6c323ea1ae8956dcb171 u-boot-2016.05.tar.bz2
diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
index e73963853c..bc5d952bbe 100644
--- a/boot/uboot/uboot.mk
+++ b/boot/uboot/uboot.mk
@@ -168,9 +168,10 @@ define UBOOT_INSTALL_IMAGES_CMDS
$(if $(BR2_TARGET_UBOOT_SPL),
cp -dpf $(@D)/$(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME)) $(BINARIES_DIR)/)
$(if $(BR2_TARGET_UBOOT_ENVIMAGE),
- $(HOST_DIR)/usr/bin/mkenvimage -s $(BR2_TARGET_UBOOT_ENVIMAGE_SIZE) \
- $(if $(BR2_TARGET_UBOOT_ENVIMAGE_REDUNDANT),-r) \
- -o $(BINARIES_DIR)/uboot-env.bin $(BR2_TARGET_UBOOT_ENVIMAGE_SOURCE))
+ cat $(call qstrip,$(BR2_TARGET_UBOOT_ENVIMAGE_SOURCE)) | \
+ $(HOST_DIR)/usr/bin/mkenvimage -s $(BR2_TARGET_UBOOT_ENVIMAGE_SIZE) \
+ $(if $(BR2_TARGET_UBOOT_ENVIMAGE_REDUNDANT),-r) \
+ -o $(BINARIES_DIR)/uboot-env.bin -)
endef
define UBOOT_INSTALL_OMAP_IFT_IMAGE
diff --git a/configs/beaglebone_defconfig b/configs/beaglebone_defconfig
index 3e3281e302..be803b9cce 100644
--- a/configs/beaglebone_defconfig
+++ b/configs/beaglebone_defconfig
@@ -31,7 +31,7 @@ BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git"
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="7f280334068b7c875ade51f8f3921ab311f0c824"
-BR2_LINUX_KERNEL_PATCH="board/beaglebone/patches/linux/"
+BR2_LINUX_KERNEL_PATCH="board/beaglebone/patches/linux"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/beaglebone/linux-3.12.config"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
diff --git a/configs/calao_qil_a9260_defconfig b/configs/calao_qil_a9260_defconfig
index e59363adec..8b76a87b15 100644
--- a/configs/calao_qil_a9260_defconfig
+++ b/configs/calao_qil_a9260_defconfig
@@ -1,6 +1,6 @@
BR2_arm=y
BR2_arm926t=y
-BR2_GLOBAL_PATCH_DIR="board/calao/qil-a9260/patches/"
+BR2_GLOBAL_PATCH_DIR="board/calao/qil-a9260/patches"
BR2_TARGET_GENERIC_GETTY_PORT="ttyS1"
# Linux headers same as kernel, a 3.4 series
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_4=y
diff --git a/configs/calao_tny_a9g20_lpw_defconfig b/configs/calao_tny_a9g20_lpw_defconfig
index d9c6ba6e64..5c66d06186 100644
--- a/configs/calao_tny_a9g20_lpw_defconfig
+++ b/configs/calao_tny_a9g20_lpw_defconfig
@@ -13,7 +13,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_9=y
# bootloaders
BR2_TARGET_AT91BOOTSTRAP=y
-BR2_TARGET_AT91BOOTSTRAP_CUSTOM_PATCH_DIR="board/calao/tny-a9g20-lpw/"
+BR2_TARGET_AT91BOOTSTRAP_CUSTOM_PATCH_DIR="board/calao/tny-a9g20-lpw"
BR2_TARGET_AT91BOOTSTRAP_BOARD="tny_a9g20_lpw"
BR2_TARGET_AT91BOOTSTRAP_NANDFLASH=y
BR2_TARGET_BAREBOX=y
diff --git a/configs/calao_usb_a9263_defconfig b/configs/calao_usb_a9263_defconfig
index c87e960131..ed6d3cbd88 100644
--- a/configs/calao_usb_a9263_defconfig
+++ b/configs/calao_usb_a9263_defconfig
@@ -5,7 +5,7 @@ BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_10=y
BR2_PACKAGE_HOST_SAM_BA=y
BR2_TARGET_ROOTFS_UBIFS=y
BR2_TARGET_AT91BOOTSTRAP=y
-BR2_TARGET_AT91BOOTSTRAP_CUSTOM_PATCH_DIR="board/calao/usb-a9263/"
+BR2_TARGET_AT91BOOTSTRAP_CUSTOM_PATCH_DIR="board/calao/usb-a9263"
BR2_TARGET_AT91BOOTSTRAP_BOARD="usb_a9263"
BR2_TARGET_AT91BOOTSTRAP_NANDFLASH=y
BR2_TARGET_BAREBOX=y
diff --git a/configs/calao_usb_a9g20_lpw_defconfig b/configs/calao_usb_a9g20_lpw_defconfig
index 956d007214..8a56d060a0 100644
--- a/configs/calao_usb_a9g20_lpw_defconfig
+++ b/configs/calao_usb_a9g20_lpw_defconfig
@@ -2,7 +2,7 @@ BR2_arm=y
BR2_arm926t=y
# Linux headers same as kernel, a 3.10 series
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_10=y
-BR2_GLOBAL_PATCH_DIR="board/calao/usb-a9g20-lpw/patches/"
+BR2_GLOBAL_PATCH_DIR="board/calao/usb-a9g20-lpw/patches"
BR2_PACKAGE_HOST_SAM_BA=y
BR2_TARGET_ROOTFS_UBIFS=y
BR2_TARGET_AT91BOOTSTRAP=y
diff --git a/configs/cubieboard2_defconfig b/configs/cubieboard2_defconfig
index a3b1b857ee..353aaa5ae0 100644
--- a/configs/cubieboard2_defconfig
+++ b/configs/cubieboard2_defconfig
@@ -1,8 +1,8 @@
BR2_arm=y
BR2_cortex_a7=y
BR2_ARM_FPU_NEON_VFPV4=y
-# Linux headers same as kernel, a 4.3 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_3=y
+# Linux headers same as kernel, a 4.6 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_6=y
BR2_TARGET_GENERIC_HOSTNAME="Cubieboard2"
BR2_TARGET_GENERIC_ISSUE="Welcome to Cubieboard2!"
BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
@@ -10,7 +10,7 @@ BR2_ROOTFS_POST_BUILD_SCRIPT="board/cubietech/cubieboard2/post-build.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/cubietech/cubieboard2/post-image.sh"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.3.3"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.6"
BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun7i-a20-cubieboard2"
@@ -19,7 +19,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2015.10"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.05"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="Cubieboard2"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_SPL=y
diff --git a/configs/freescale_imx7dsabresd_defconfig b/configs/freescale_imx7dsabresd_defconfig
new file mode 100644
index 0000000000..676804118f
--- /dev/null
+++ b/configs/freescale_imx7dsabresd_defconfig
@@ -0,0 +1,36 @@
+# architecture
+BR2_arm=y
+BR2_cortex_a7=y
+
+# Linux headers same as kernel, a 4.1 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y
+
+# system
+BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
+
+# Kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_GIT=y
+BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.freescale.com/imx/linux-2.6-imx.git"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_4.1.15_1.0.0_ga"
+BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx7d-sdb"
+
+# filesystem
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+
+# bootloader
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BOARDNAME="mx7dsabresd"
+BR2_TARGET_UBOOT_CUSTOM_GIT=y
+BR2_TARGET_UBOOT_CUSTOM_REPO_URL="git://git.freescale.com/imx/uboot-imx.git"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="rel_imx_4.1.15_1.0.0_ga"
+BR2_TARGET_UBOOT_FORMAT_IMX=y
+
+# required tools to create the microSD image
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/imx7dsdb/post-image.sh"
diff --git a/configs/mx53loco_defconfig b/configs/mx53loco_defconfig
index 3cb1b74228..b62172cbc7 100644
--- a/configs/mx53loco_defconfig
+++ b/configs/mx53loco_defconfig
@@ -2,25 +2,36 @@
BR2_arm=y
BR2_cortex_a8=y
-# Linux headers same as kernel, a 2.6 series (so, no option selected)
+# Linux headers same as kernel, a 4.6 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_6=y
# System
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
+# patches
+BR2_GLOBAL_PATCH_DIR="board/freescale/imx53loco/patches/"
+
+# required tools to create the SD card image
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
+
# Filesystem
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/imx53loco/post-image.sh"
BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
# Bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="mx53loco"
-BR2_TARGET_UBOOT_CUSTOM_GIT=y
-BR2_TARGET_UBOOT_CUSTOM_REPO_URL="git://github.com/Freescale/u-boot-fslc.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="e36968af0a033e9d66535928886103370620cb4d"
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.05"
BR2_TARGET_UBOOT_FORMAT_IMX=y
# Kernel
BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_GIT=y
-BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.freescale.com/imx/linux-2.6-imx.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="b3912bb8a4caf3ec50909135e88af959982c43ca"
-BR2_LINUX_KERNEL_DEFCONFIG="imx5"
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.6"
+BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx53-qsb imx53-qsrb"
diff --git a/configs/olimex_a20_olinuxino_lime_defconfig b/configs/olimex_a20_olinuxino_lime_defconfig
index bfa95c4e60..389fdd6003 100644
--- a/configs/olimex_a20_olinuxino_lime_defconfig
+++ b/configs/olimex_a20_olinuxino_lime_defconfig
@@ -34,7 +34,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BOARDNAME="A20-OLinuXino-Lime"
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.01"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.05"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_FORMAT_BIN=y
BR2_TARGET_UBOOT_SPL=y
diff --git a/configs/orangepipc_defconfig b/configs/orangepipc_defconfig
index cb04d74489..3683ad49bb 100644
--- a/configs/orangepipc_defconfig
+++ b/configs/orangepipc_defconfig
@@ -1,14 +1,14 @@
BR2_arm=y
BR2_cortex_a7=y
BR2_ARM_FPU_VFPV4=y
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_5=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_6=y
BR2_TARGET_GENERIC_HOSTNAME="OrangePi_PC"
BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the Orange Pi PC"
BR2_ROOTFS_POST_BUILD_SCRIPT="board/orangepi/orangepipc/post-build.sh"
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/orangepi/orangepipc/post-image.sh"
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.5"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.6"
BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
BR2_LINUX_KERNEL_DTS_SUPPORT=y
BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h3-orangepi-plus"
@@ -18,7 +18,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.03"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.05"
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="orangepi_pc"
BR2_TARGET_UBOOT_NEEDS_DTC=y
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
diff --git a/configs/roseapplepi_defconfig b/configs/roseapplepi_defconfig
new file mode 100644
index 0000000000..6627ff4711
--- /dev/null
+++ b/configs/roseapplepi_defconfig
@@ -0,0 +1,40 @@
+BR2_arm=y
+BR2_cortex_a9=y
+BR2_ARM_ENABLE_NEON=y
+BR2_ARM_ENABLE_VFP=y
+
+BR2_GLOBAL_PATCH_DIR="board/roseapplepi/patches"
+# Linux headers same as kernel, a 3.10 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_10=y
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/roseapplepi/post-image.sh"
+
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_GIT=y
+BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/xapp-le/kernel.git"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="59dbf6a4998e967eb9c6bdcc9b506c0d96acb26b"
+BR2_LINUX_KERNEL_DEFCONFIG="actduino_bubble_gum_linux"
+BR2_LINUX_KERNEL_UIMAGE=y
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="actduino_bubble_gum_sdboot_linux"
+
+# Filesystem / image
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+# BR2_TARGET_ROOTFS_TAR is not set
+
+# Bootloaders
+BR2_TARGET_S500_BOOTLOADER=y
+BR2_TARGET_S500_BOOTLOADER_BOARD="linux/bubble_gum_sd"
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_GIT=y
+BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/xapp-le/u-boot.git"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="a035d2673a90143a1a74557503b2e137b1447ae6"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="actduino_bubble_gum_v10"
+BR2_TARGET_UBOOT_NEEDS_DTC=y
+BR2_TARGET_UBOOT_FORMAT_DTB_IMG=y
+
+# Required tools to create the SD image
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
diff --git a/configs/sheevaplug_defconfig b/configs/sheevaplug_defconfig
index 3632ed0794..9d6244424e 100644
--- a/configs/sheevaplug_defconfig
+++ b/configs/sheevaplug_defconfig
@@ -11,22 +11,22 @@ BR2_SYSTEM_DHCP="eth0"
BR2_TARGET_ROOTFS_JFFS2=y
BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_128K=y
-# Linux headers same as kernel, a 4.5 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_5=y
+# Linux headers same as kernel, a 4.6 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_6=y
# bootloader
BR2_TARGET_UBOOT=y
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sheevaplug"
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.01"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.05"
BR2_TARGET_UBOOT_FORMAT_KWB=y
# BR2_TARGET_UBOOT_NETWORK is not set
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.5.2"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.6"
BR2_LINUX_KERNEL_DEFCONFIG="mvebu_v5"
BR2_LINUX_KERNEL_APPENDED_UIMAGE=y
BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000"
diff --git a/configs/stm32f429_disco_defconfig b/configs/stm32f429_disco_defconfig
index 987dcb8886..37997948de 100644
--- a/configs/stm32f429_disco_defconfig
+++ b/configs/stm32f429_disco_defconfig
@@ -1,6 +1,6 @@
BR2_arm=y
BR2_cortex_m4=y
-BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f429-disco/patches/"
+BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f429-disco/patches"
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_5=y
BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/stm32-post-build.sh"
BR2_LINUX_KERNEL=y
diff --git a/configs/stm32f469_disco_defconfig b/configs/stm32f469_disco_defconfig
index dd14f56252..327134d1ee 100644
--- a/configs/stm32f469_disco_defconfig
+++ b/configs/stm32f469_disco_defconfig
@@ -1,6 +1,6 @@
BR2_arm=y
BR2_cortex_m4=y
-BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches/"
+BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches"
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_5=y
BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/stm32-post-build.sh"
BR2_LINUX_KERNEL=y
diff --git a/configs/warpboard_defconfig b/configs/warpboard_defconfig
index 798afed593..d3cffb910e 100644
--- a/configs/warpboard_defconfig
+++ b/configs/warpboard_defconfig
@@ -3,7 +3,7 @@ BR2_arm=y
BR2_cortex_a9=y
# patches
-BR2_GLOBAL_PATCH_DIR="board/freescale/warpboard/patches/"
+BR2_GLOBAL_PATCH_DIR="board/freescale/warpboard/patches"
# Linux headers same as kernel, a 4.0 series
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_0=y
diff --git a/linux/Config.in b/linux/Config.in
index ff62bcf614..45c7d3bfa1 100644
--- a/linux/Config.in
+++ b/linux/Config.in
@@ -27,7 +27,7 @@ choice
prompt "Kernel version"
config BR2_LINUX_KERNEL_LATEST_VERSION
- bool "Latest version (4.5.4)"
+ bool "Latest version (4.6)"
config BR2_LINUX_KERNEL_CUSTOM_VERSION
bool "Custom version"
@@ -110,7 +110,7 @@ config BR2_LINUX_KERNEL_CUSTOM_LOCAL_PATH
config BR2_LINUX_KERNEL_VERSION
string
- default "4.5.4" if BR2_LINUX_KERNEL_LATEST_VERSION
+ default "4.6" 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
diff --git a/linux/linux.mk b/linux/linux.mk
index d88060e09c..4f4f80239e 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -351,6 +351,9 @@ 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/linux-dtc ; \
+ if [ ! -e $(HOST_DIR)/usr/bin/dtc ]; then \
+ ln -sf linux-dtc $(HOST_DIR)/usr/bin/dtc ; \
+ fi \
fi
endef
diff --git a/package/Config.in b/package/Config.in
index 9d668bf34f..ae74f17902 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -494,6 +494,7 @@ menu "Erlang libraries/modules"
source "package/erlang-p1-zlib/Config.in"
endmenu
endif
+ source "package/ficl/Config.in"
source "package/gauche/Config.in"
source "package/guile/Config.in"
source "package/haserl/Config.in"
@@ -630,6 +631,7 @@ endif
if BR2_PACKAGE_PYTHON || BR2_PACKAGE_PYTHON3
menu "External python modules"
source "package/python-alsaaudio/Config.in"
+ source "package/python-argh/Config.in"
source "package/python-autobahn/Config.in"
source "package/python-backports-abc/Config.in"
source "package/python-beautifulsoup4/Config.in"
@@ -658,6 +660,8 @@ menu "External python modules"
source "package/python-enum/Config.in"
source "package/python-enum34/Config.in"
source "package/python-flask/Config.in"
+ source "package/python-flask-jsonrpc/Config.in"
+ source "package/python-flask-login/Config.in"
source "package/python-flup/Config.in"
source "package/python-gobject/Config.in"
source "package/python-html5lib/Config.in"
@@ -692,6 +696,7 @@ menu "External python modules"
source "package/python-paho-mqtt/Config.in"
source "package/python-pam/Config.in"
source "package/python-paramiko/Config.in"
+ source "package/python-pathtools/Config.in"
source "package/python-pexpect/Config.in"
source "package/python-posix-ipc/Config.in"
source "package/python-protobuf/Config.in"
@@ -748,10 +753,12 @@ menu "External python modules"
source "package/python-treq/Config.in"
source "package/python-twisted/Config.in"
source "package/python-txaio/Config.in"
+ source "package/python-ubjson/Config.in"
source "package/python-ujson/Config.in"
source "package/python-urllib3/Config.in"
source "package/python-urwid/Config.in"
source "package/python-versiontools/Config.in"
+ source "package/python-watchdog/Config.in"
source "package/python-web2py/Config.in"
source "package/python-webpy/Config.in"
source "package/python-werkzeug/Config.in"
@@ -1104,6 +1111,7 @@ endmenu
menu "Networking"
source "package/agentpp/Config.in"
+ source "package/batman-adv/Config.in"
source "package/c-ares/Config.in"
source "package/canfestival/Config.in"
source "package/cgic/Config.in"
@@ -1177,6 +1185,7 @@ menu "Networking"
source "package/omniorb/Config.in"
source "package/openldap/Config.in"
source "package/openpgm/Config.in"
+ source "package/openzwave/Config.in"
source "package/ortp/Config.in"
source "package/qdecoder/Config.in"
source "package/qpid-proton/Config.in"
@@ -1425,6 +1434,7 @@ endif
source "package/kismet/Config.in"
source "package/knock/Config.in"
source "package/leafnode2/Config.in"
+ source "package/lft/Config.in"
source "package/lftp/Config.in"
source "package/lighttpd/Config.in"
source "package/linknx/Config.in"
diff --git a/package/Makefile.in b/package/Makefile.in
index 616bdd056b..2d454a6382 100644
--- a/package/Makefile.in
+++ b/package/Makefile.in
@@ -122,6 +122,9 @@ endif
ifeq ($(BR2_OPTIMIZE_3),y)
TARGET_OPTIMIZATION = -O3
endif
+ifeq ($(BR2_OPTIMIZE_G),y)
+TARGET_OPTIMIZATION = -Og
+endif
ifeq ($(BR2_OPTIMIZE_S),y)
TARGET_OPTIMIZATION = -Os
endif
diff --git a/package/audit/audit.mk b/package/audit/audit.mk
index 329f8c5aca..1fbc623e6a 100644
--- a/package/audit/audit.mk
+++ b/package/audit/audit.mk
@@ -46,7 +46,6 @@ define AUDIT_INSTALL_INIT_SYSTEMD
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
diff --git a/package/batctl/batctl.hash b/package/batctl/batctl.hash
index 1a045f43ed..5920ff09db 100644
--- a/package/batctl/batctl.hash
+++ b/package/batctl/batctl.hash
@@ -1,4 +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
+# http://downloads.open-mesh.org/batman/releases/batman-adv-2016.1/batctl-2016.1.tar.gz.sha1
+sha1 72b974bde707594e2cf0cc122d7d7da0f1f65160 batctl-2016.1.tar.gz
# Locally calculated
-sha256 ea67ee22785e6fcd5149472bdf2df4e9f21716968e025e7dd41556a010a8d14a batctl-2015.1.tar.gz
+sha256 c854397b2ddd2cb8d15d1e65839819380648ccb37507d0303e133011fe6f03c9 batctl-2016.1.tar.gz
diff --git a/package/batctl/batctl.mk b/package/batctl/batctl.mk
index e91dff99dc..ed1b06ca2e 100644
--- a/package/batctl/batctl.mk
+++ b/package/batctl/batctl.mk
@@ -4,7 +4,7 @@
#
################################################################################
-BATCTL_VERSION = 2015.1
+BATCTL_VERSION = 2016.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/batman-adv/Config.in b/package/batman-adv/Config.in
new file mode 100644
index 0000000000..fbef0d8d6b
--- /dev/null
+++ b/package/batman-adv/Config.in
@@ -0,0 +1,35 @@
+comment "batman-adv needs a Linux kernel to be built"
+ depends on !BR2_LINUX_KERNEL
+
+config BR2_PACKAGE_BATMAN_ADV
+ bool "batman-adv"
+ depends on BR2_LINUX_KERNEL
+ help
+ batman-adv mesh networking kernel module
+
+ https://www.open-mesh.org/projects/batman-adv/
+
+if BR2_PACKAGE_BATMAN_ADV
+
+config BR2_PACKAGE_BATMAN_ADV_DEBUG
+ bool "enable debugging"
+ help
+ Enables B.A.T.M.A.N. debugging.
+
+config BR2_PACKAGE_BATMAN_ADV_NC
+ bool "enable network coding"
+ help
+ Enables B.A.T.M.A.N. network coding.
+ Note: this requires promiscuous mode on ALL nodes!
+
+ https://www.open-mesh.org/projects/batman-adv/wiki/NetworkCoding
+
+config BR2_PACKAGE_BATMAN_ADV_BATMAN_V
+ bool "enable B.A.T.M.A.N. V protocol (experimental)"
+ help
+ Enables B.A.T.M.A.N. V network protocol.
+ This is the next-gen protocol and is experimental at this time.
+
+ https://www.open-mesh.org/projects/batman-adv/wiki/BATMAN_V
+
+endif
diff --git a/package/batman-adv/batman-adv.hash b/package/batman-adv/batman-adv.hash
new file mode 100644
index 0000000000..6c0e5cacf9
--- /dev/null
+++ b/package/batman-adv/batman-adv.hash
@@ -0,0 +1,2 @@
+# From https://downloads.open-mesh.org/batman/stable/sources/batman-adv/batman-adv-2016.1.tar.gz.sha1
+sha1 c9ca52c913fbf81aca266695a77359ecdbcc8bd8 batman-adv-2016.1.tar.gz
diff --git a/package/batman-adv/batman-adv.mk b/package/batman-adv/batman-adv.mk
new file mode 100644
index 0000000000..0691773e7a
--- /dev/null
+++ b/package/batman-adv/batman-adv.mk
@@ -0,0 +1,35 @@
+################################################################################
+#
+# batman-adv
+#
+################################################################################
+
+BATMAN_ADV_VERSION = 2016.1
+BATMAN_ADV_SITE = https://downloads.open-mesh.org/batman/stable/sources/batman-adv
+BATMAN_ADV_SOURCE = batman-adv-$(BATMAN_ADV_VERSION).tar.gz
+BATMAN_ADV_LICENSE = GPLv2
+
+# Bridge Loop Avoidance, Distributed Arp Table are always enabled
+BATMAN_ADV_CFLAGS = \
+ -I$(@D)/compat-include/ \
+ -include $(@D)/compat.h \
+ -DBATADV_SOURCE_VERSION=\"\\\"$(BATMAN_ADV_VERSION)\\\"\"
+BATMAN_ADV_MODULE_MAKE_OPTS = \
+ KVER=$(LINUX_VERSION_PROBED) \
+ INSTALL_MOD_DIR=updates/net/batman-adv \
+ NOSTDINC_FLAGS="$(BATMAN_ADV_CFLAGS)" \
+ CONFIG_BATMAN_ADV=m \
+ CONFIG_BATMAN_ADV_BATMAN_V=$(BR2_PACKAGE_BATMAN_ADV_BATMAN_V) \
+ CONFIG_BATMAN_ADV_BLA=y \
+ CONFIG_BATMAN_ADV_DAT=y \
+ CONFIG_BATMAN_ADV_DEBUG=$(BR2_PACKAGE_BATMAN_ADV_DEBUG) \
+ CONFIG_BATMAN_ADV_MCAST=y \
+ CONFIG_BATMAN_ADV_NC=$(BR2_PACKAGE_BATMAN_ADV_NC)
+BATMAN_ADV_MODULE_SUBDIRS = net/batman-adv
+
+define BATMAN_ADV_CONFIGURE_CMDS
+ $(BATMAN_ADV_MODULE_MAKE_OPTS) $(@D)/gen-compat-autoconf.sh $(@D)/compat-autoconf.h
+endef
+
+$(eval $(kernel-module))
+$(eval $(generic-package))
diff --git a/package/binutils/2.23.2/120-sh-conf.patch b/package/binutils/2.23.2/120-sh-conf.patch
deleted file mode 100644
index ea3d1b6068..0000000000
--- a/package/binutils/2.23.2/120-sh-conf.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-r10231 | lethal | 2005-05-02 09:58:00 -0400 (Mon, 02 May 2005) | 13 lines
-
-Likewise, binutils has no idea about any of these new targets either, so we
-fix that up too.. now we're able to actually build a real toolchain for
-sh2a_nofpu- and other more ineptly named toolchains (and yes, there are more
-inept targets than that one, really. Go look, I promise).
-
---- a/configure
-+++ b/configure
-@@ -1495,7 +1495,7 @@
- mips*-*-*)
- noconfigdirs="$noconfigdirs gprof"
- ;;
-- sh-*-* | sh64-*-*)
-+ sh*-*-* | sh64-*-*)
- case "${target}" in
- sh*-*-elf)
- ;;
---- a/configure.ac
-+++ b/configure.ac
-@@ -712,7 +712,7 @@
- mips*-*-*)
- noconfigdirs="$noconfigdirs gprof"
- ;;
-- sh-*-* | sh64-*-*)
-+ sh*-*-* | sh64-*-*)
- case "${target}" in
- sh*-*-elf)
- ;;
diff --git a/package/binutils/2.23.2/300-001_ld_makefile_patch.patch b/package/binutils/2.23.2/300-001_ld_makefile_patch.patch
deleted file mode 100644
index 5cb0f614d8..0000000000
--- a/package/binutils/2.23.2/300-001_ld_makefile_patch.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -u binutils-2.17.50.0.17.oorig/ld/Makefile.am binutils-2.17.50.0.17/ld/Makefile.am
---- binutils-2.17.50.0.17.oorig/ld/Makefile.am 2007-06-18 19:29:29.000000000 +0200
-+++ binutils-2.17.50.0.17/ld/Makefile.am 2007-06-25 10:00:36.000000000 +0200
-@@ -18,7 +18,7 @@
- # We put the scripts in the directory $(scriptdir)/ldscripts.
- # We can't put the scripts in $(datadir) because the SEARCH_DIR
- # directives need to be different for native and cross linkers.
--scriptdir = $(tooldir)/lib
-+scriptdir = $(libdir)
-
- EMUL = @EMUL@
- EMULATION_OFILES = @EMULATION_OFILES@
-diff -u binutils-2.17.50.0.17.oorig/ld/Makefile.in binutils-2.17.50.0.17/ld/Makefile.in
---- binutils-2.17.50.0.17.oorig/ld/Makefile.in 2007-06-18 19:29:29.000000000 +0200
-+++ binutils-2.17.50.0.17/ld/Makefile.in 2007-06-25 10:00:36.000000000 +0200
-@@ -287,7 +287,7 @@
- # We put the scripts in the directory $(scriptdir)/ldscripts.
- # We can't put the scripts in $(datadir) because the SEARCH_DIR
- # directives need to be different for native and cross linkers.
--scriptdir = $(tooldir)/lib
-+scriptdir = $(libdir)
- BASEDIR = $(srcdir)/..
- BFDDIR = $(BASEDIR)/bfd
- INCDIR = $(BASEDIR)/include
diff --git a/package/binutils/2.23.2/300-012_check_ldrunpath_length.patch b/package/binutils/2.23.2/300-012_check_ldrunpath_length.patch
deleted file mode 100644
index df783109bb..0000000000
--- a/package/binutils/2.23.2/300-012_check_ldrunpath_length.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -Nura binutils-2.21.orig/ld/emultempl/elf32.em binutils-2.21/ld/emultempl/elf32.em
---- binutils-2.21.orig/ld/emultempl/elf32.em 2010-10-29 09:10:36.000000000 -0300
-+++ binutils-2.21/ld/emultempl/elf32.em 2010-12-10 09:26:56.746102724 -0300
-@@ -1270,6 +1270,8 @@
- && command_line.rpath == NULL)
- {
- lib_path = (const char *) getenv ("LD_RUN_PATH");
-+ if ((lib_path) && (strlen (lib_path) == 0))
-+ lib_path = NULL;
- if (gld${EMULATION_NAME}_search_needed (lib_path, &n,
- force))
- break;
-@@ -1497,6 +1499,8 @@
- rpath = command_line.rpath;
- if (rpath == NULL)
- rpath = (const char *) getenv ("LD_RUN_PATH");
-+ if ((rpath) && (strlen (rpath) == 0))
-+ rpath = NULL;
-
- for (abfd = link_info.input_bfds; abfd; abfd = abfd->link_next)
- if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
diff --git a/package/binutils/2.23.2/900-xtensa-trampolines.patch b/package/binutils/2.23.2/900-xtensa-trampolines.patch
deleted file mode 100644
index b5b934fcab..0000000000
--- a/package/binutils/2.23.2/900-xtensa-trampolines.patch
+++ /dev/null
@@ -1,846 +0,0 @@
-From a82c7d9030b67a6a76a5403d0e1641f9e42141ac Mon Sep 17 00:00:00 2001
-From: David Weatherford <weath@cadence.com>
-Date: Fri, 21 Mar 2014 11:53:42 +0000
-Subject: [PATCH] Add support to the Xtensa target for creating trampolines for
- out-of-range branches.
-
- * tc-xtensa.c (xtensa_check_frag_count, xtensa_create_trampoline_frag)
- (xtensa_maybe_create_trampoline_frag, init_trampoline_frag)
- (find_trampoline_seg, search_trampolines, get_best_trampoline)
- (check_and_update_trampolines, add_jump_to_trampoline)
- (dump_trampolines): New function.
- (md_parse_option): Add cases for --[no-]trampolines options.
- (md_assemble, finish_vinsn, xtensa_end): Add call to
- xtensa_check_frag_count.
- (xg_assemble_vliw_tokens): Add call to
- xtensa_maybe_create_trampoline_frag.
- (xtensa_relax_frag): Relax fragments with RELAX_TRAMPOLINE state.
- (relax_frag_immed): Relax jump instructions that cannot reach its
- target.
- * tc-xtensa.h (xtensa_relax_statesE::RELAX_TRAMPOLINE): New relax
- state.
-
- * as.texinfo: Document --[no-]trampolines command-line options.
- * c-xtensa.texi: Document trampolines relaxation and command line
- options.
-
- * frags.c (get_frag_count, clear_frag_count): New function.
- (frag_alloc): Increment totalfrags counter.
- * frags.h (get_frag_count, clear_frag_count): New function.
-
- * all.exp: Add test for trampoline relaxation.
- * trampoline.d: Trampoline relaxation expected dump.
- * trampoline.s: Trampoline relaxation test source.
----
-Backported from: a82c7d9030b67a6a76a5403d0e1641f9e42141ac
-Changes to Changelog files are dropped.
-
- gas/config/tc-xtensa.c | 558 +++++++++++++++++++++++++++++++++-
- gas/config/tc-xtensa.h | 5 +
- gas/frags.c | 15 +
- gas/frags.h | 3 +
- gas/testsuite/gas/xtensa/all.exp | 1 +
- gas/testsuite/gas/xtensa/trampoline.d | 26 ++
- gas/testsuite/gas/xtensa/trampoline.s | 21 ++
- 11 files changed, 753 insertions(+), 2 deletions(-)
- create mode 100644 gas/testsuite/gas/xtensa/trampoline.d
- create mode 100644 gas/testsuite/gas/xtensa/trampoline.s
-
-diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c
-index fe8ec0f..ea23c96 100644
---- a/gas/config/tc-xtensa.c
-+++ b/gas/config/tc-xtensa.c
-@@ -468,6 +468,12 @@ static void xtensa_set_frag_assembly_state (fragS *);
- static void finish_vinsn (vliw_insn *);
- static bfd_boolean emit_single_op (TInsn *);
- static int total_frag_text_expansion (fragS *);
-+static bfd_boolean use_trampolines = TRUE;
-+static void xtensa_check_frag_count (void);
-+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 *);
-
- /* Alignment Functions. */
-
-@@ -520,6 +526,7 @@ static void tinsn_from_chars (TInsn *, char *, int);
- static void tinsn_immed_from_frag (TInsn *, fragS *, int);
- static int get_num_stack_text_bytes (IStack *);
- static int get_num_stack_literal_bytes (IStack *);
-+static bfd_boolean tinsn_to_slotbuf (xtensa_format, int, TInsn *, xtensa_insnbuf);
-
- /* vliw_insn functions. */
-
-@@ -687,7 +694,10 @@ enum
- option_prefer_l32r,
- option_prefer_const16,
-
-- option_target_hardware
-+ option_target_hardware,
-+
-+ option_trampolines,
-+ option_no_trampolines,
- };
-
- const char *md_shortopts = "";
-@@ -760,6 +770,9 @@ struct option md_longopts[] =
-
- { "target-hardware", required_argument, NULL, option_target_hardware },
-
-+ { "trampolines", no_argument, NULL, option_trampolines },
-+ { "no-trampolines", no_argument, NULL, option_no_trampolines },
-+
- { NULL, no_argument, NULL, 0 }
- };
-
-@@ -940,6 +953,14 @@ md_parse_option (int c, char *arg)
- directive_state[directive_transform] = FALSE;
- return 1;
-
-+ case option_trampolines:
-+ use_trampolines = TRUE;
-+ return 1;
-+
-+ case option_no_trampolines:
-+ use_trampolines = FALSE;
-+ return 1;
-+
- default:
- return 0;
- }
-@@ -963,7 +984,9 @@ Xtensa options:\n\
- flix bundles\n\
- --no-allow-flix neither allow hand-written nor generate\n\
- flix bundles\n\
-- --rename-section old=new Rename section 'old' to 'new'\n", stream);
-+ --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);
- }
-
-
-@@ -5568,6 +5591,8 @@ md_assemble (char *str)
-
- /* We've just emitted a new instruction so clear the list of labels. */
- xtensa_clear_insn_labels ();
-+
-+ xtensa_check_frag_count ();
- }
-
-
-@@ -6372,6 +6397,8 @@ finish_vinsn (vliw_insn *vinsn)
- xg_assemble_vliw_tokens (vinsn);
-
- xg_clear_vinsn (vinsn);
-+
-+ xtensa_check_frag_count ();
- }
-
-
-@@ -7140,6 +7167,7 @@ xg_assemble_vliw_tokens (vliw_insn *vinsn)
- RELAX_UNREACHABLE,
- frag_now->fr_symbol, frag_now->fr_offset, NULL);
- xtensa_set_frag_assembly_state (frag_now);
-+ xtensa_maybe_create_trampoline_frag ();
- }
- else if (is_branch && do_align_targets ())
- {
-@@ -7222,9 +7250,164 @@ xtensa_end (void)
- xtensa_sanity_check ();
-
- xtensa_add_config_info ();
-+
-+ xtensa_check_frag_count ();
-+}
-+
-+
-+struct trampoline_frag
-+{
-+ struct trampoline_frag *next;
-+ bfd_boolean needs_jump_around;
-+ fragS *fragP;
-+ fixS *fixP;
-+};
-+
-+struct trampoline_seg
-+{
-+ struct trampoline_seg *next;
-+ asection *seg;
-+ struct trampoline_frag trampoline_list;
-+};
-+
-+static struct trampoline_seg trampoline_seg_list;
-+#define J_RANGE (128 * 1024)
-+
-+static int unreachable_count = 0;
-+
-+
-+static void
-+xtensa_maybe_create_trampoline_frag (void)
-+{
-+ if (!use_trampolines)
-+ return;
-+
-+ /* We create an area for possible trampolines every 10 unreachable frags.
-+ These are preferred over the ones not preceded by an unreachable frag,
-+ because we don't have to jump around them. This function is called after
-+ each RELAX_UNREACHABLE frag is created. */
-+
-+ if (++unreachable_count > 10)
-+ {
-+ xtensa_create_trampoline_frag (FALSE);
-+ clear_frag_count ();
-+ unreachable_count = 0;
-+ }
-+}
-+
-+static void
-+xtensa_check_frag_count (void)
-+{
-+ if (!use_trampolines || frag_now->tc_frag_data.is_no_transform)
-+ return;
-+
-+ /* We create an area for possible trampolines every 8000 frags or so. This
-+ is an estimate based on the max range of a "j" insn (+/-128K) divided
-+ by a typical frag byte count (16), minus a few for safety. This function
-+ is called after each source line is processed. */
-+
-+ if (get_frag_count () > 8000)
-+ {
-+ xtensa_create_trampoline_frag (TRUE);
-+ clear_frag_count ();
-+ unreachable_count = 0;
-+ }
-+}
-+
-+static xtensa_insnbuf trampoline_buf = NULL;
-+static xtensa_insnbuf trampoline_slotbuf = NULL;
-+
-+#define TRAMPOLINE_FRAG_SIZE 3000
-+
-+static void
-+xtensa_create_trampoline_frag (bfd_boolean needs_jump_around)
-+{
-+ /* Emit a frag where we can place intermediate jump instructions,
-+ in case we need to jump farther than 128K bytes.
-+ Each jump instruction takes three bytes.
-+ We allocate enough for 1000 trampolines in each frag.
-+ If that's not enough, oh well. */
-+
-+ struct trampoline_seg *ts = trampoline_seg_list.next;
-+ struct trampoline_frag *tf;
-+ char *varP;
-+ fragS *fragP;
-+ int size = TRAMPOLINE_FRAG_SIZE;
-+
-+ for ( ; ts; ts = ts->next)
-+ {
-+ if (ts->seg == now_seg)
-+ break;
-+ }
-+
-+ if (ts == NULL)
-+ {
-+ ts = (struct trampoline_seg *)xcalloc(sizeof (struct trampoline_seg), 1);
-+ ts->next = trampoline_seg_list.next;
-+ trampoline_seg_list.next = ts;
-+ ts->seg = now_seg;
-+ }
-+
-+ frag_wane (frag_now);
-+ frag_new (0);
-+ xtensa_set_frag_assembly_state (frag_now);
-+ varP = frag_var (rs_machine_dependent, size, size, RELAX_TRAMPOLINE, NULL, 0, NULL);
-+ fragP = (fragS *)(varP - SIZEOF_STRUCT_FRAG);
-+ if (trampoline_buf == NULL)
-+ {
-+ trampoline_buf = xtensa_insnbuf_alloc (xtensa_default_isa);
-+ trampoline_slotbuf = xtensa_insnbuf_alloc (xtensa_default_isa);
-+ }
-+ tf = (struct trampoline_frag *)xmalloc(sizeof (struct trampoline_frag));
-+ tf->next = ts->trampoline_list.next;
-+ ts->trampoline_list.next = tf;
-+ tf->needs_jump_around = needs_jump_around;
-+ tf->fragP = fragP;
-+ tf->fixP = NULL;
-+}
-+
-+
-+static struct trampoline_seg *
-+find_trampoline_seg (asection *seg)
-+{
-+ struct trampoline_seg *ts = trampoline_seg_list.next;
-+
-+ for ( ; ts; ts = ts->next)
-+ {
-+ if (ts->seg == seg)
-+ return ts;
-+ }
-+
-+ return NULL;
- }
-
-
-+void dump_trampolines (void);
-+
-+void
-+dump_trampolines (void)
-+{
-+ struct trampoline_seg *ts = trampoline_seg_list.next;
-+
-+ for ( ; ts; ts = ts->next)
-+ {
-+ asection *seg = ts->seg;
-+
-+ if (seg == NULL)
-+ continue;
-+ fprintf(stderr, "SECTION %s\n", seg->name);
-+ struct trampoline_frag *tf = ts->trampoline_list.next;
-+ for ( ; tf; tf = tf->next)
-+ {
-+ if (tf->fragP == NULL)
-+ continue;
-+ fprintf(stderr, " 0x%08x: fix=%d, jump_around=%s\n",
-+ (int)tf->fragP->fr_address, (int)tf->fragP->fr_fix,
-+ tf->needs_jump_around ? "T" : "F");
-+ }
-+ }
-+}
-+
- static void
- xtensa_cleanup_align_frags (void)
- {
-@@ -8708,6 +8891,149 @@ xtensa_relax_frag (fragS *fragP, long stretch, int *stretched_p)
- new_stretch += relax_frag_for_align (fragP, stretch);
- break;
-
-+ case RELAX_TRAMPOLINE:
-+ if (fragP->tc_frag_data.relax_seen)
-+ {
-+ segment_info_type *seginfo = seg_info (now_seg);
-+ fragS *fP; /* The out-of-range jump. */
-+ fixS *fixP;
-+
-+ /* Scan for jumps that will not reach. */
-+ for (fixP = seginfo->fix_root; fixP ; fixP = fixP->fx_next)
-+ {
-+ symbolS *s = fixP->fx_addsy;
-+ xtensa_opcode opcode;
-+ int target;
-+ int addr;
-+ int delta;
-+
-+ if (fixP->fx_r_type < BFD_RELOC_XTENSA_SLOT0_OP ||
-+ fixP->fx_r_type > BFD_RELOC_XTENSA_SLOT14_OP)
-+ continue;
-+ xtensa_insnbuf_from_chars (isa, trampoline_buf,
-+ (unsigned char *) fixP->fx_frag->fr_literal + fixP->fx_where,
-+ 0);
-+ fmt = xtensa_format_decode (isa, trampoline_buf);
-+ gas_assert (fmt != XTENSA_UNDEFINED);
-+ slot = fixP->tc_fix_data.slot;
-+ xtensa_format_get_slot (isa, fmt, slot, trampoline_buf, trampoline_slotbuf);
-+ opcode = xtensa_opcode_decode (isa, fmt, slot, trampoline_slotbuf);
-+ if (opcode != xtensa_j_opcode)
-+ continue;
-+ target = S_GET_VALUE (s);
-+ addr = fixP->fx_frag->fr_address;
-+ delta = target - addr + stretch;
-+ if (delta > J_RANGE || delta < -1 * J_RANGE)
-+ { /* Found an out-of-range jump; scan the list of trampolines for the best match. */
-+ struct trampoline_seg *ts = find_trampoline_seg (now_seg);
-+ struct trampoline_frag *tf = ts->trampoline_list.next;
-+ struct trampoline_frag *prev = &ts->trampoline_list;
-+ int lower = (target < addr) ? target : addr;
-+ int upper = (target > addr) ? target : addr;
-+ int midpoint = lower + (upper - lower) / 2;
-+
-+ if ((upper - lower) > 2 * J_RANGE)
-+ {
-+ /* One trampoline won't suffice; we need multiple jumps.
-+ Jump to the trampoline that's farthest, but still in
-+ range relative to the original "j" instruction. */
-+ for ( ; tf; prev = tf, tf = tf->next )
-+ {
-+ int this_addr = tf->fragP->fr_address + tf->fragP->fr_fix;
-+ int next_addr = (tf->next) ? tf->next->fragP->fr_address + tf->next->fragP->fr_fix : 0 ;
-+
-+ if (addr == lower)
-+ {
-+ /* Forward jump. */
-+ if (this_addr - addr < J_RANGE)
-+ break;
-+ }
-+ else
-+ {
-+ /* Backward jump. */
-+ if (next_addr == 0 || addr - next_addr > J_RANGE)
-+ break;
-+ }
-+ }
-+ }
-+ else
-+ {
-+ struct trampoline_frag *best_tf = NULL;
-+ int best_delta = 0;
-+
-+ for ( ; tf; prev = tf, tf = tf->next )
-+ {
-+ int this_addr = tf->fragP->fr_address + tf->fragP->fr_fix;
-+ int this_delta = abs (this_addr - midpoint);
-+
-+ if (!best_tf || this_delta < best_delta)
-+ {
-+ best_tf = tf;
-+ best_delta = this_delta;
-+ }
-+ }
-+ tf = best_tf;
-+ }
-+ if (tf->fragP == fragP)
-+ {
-+ int trampaddr = fragP->fr_address + fragP->fr_fix;
-+
-+ if (abs (addr - trampaddr) < J_RANGE)
-+ { /* The trampoline is in range of original; fix it! */
-+ fixS *newfixP;
-+ int offset;
-+ TInsn insn;
-+ symbolS *lsym;
-+
-+ new_stretch += init_trampoline_frag (tf);
-+ offset = fragP->fr_fix; /* Where to assemble the j insn. */
-+ lsym = fragP->fr_symbol;
-+ fP = fixP->fx_frag;
-+ /* Assemble a jump to the target label here. */
-+ tinsn_init (&insn);
-+ insn.insn_type = ITYPE_INSN;
-+ insn.opcode = xtensa_j_opcode;
-+ insn.ntok = 1;
-+ set_expr_symbol_offset (&insn.tok[0], lsym, offset);
-+ fmt = xg_get_single_format (xtensa_j_opcode);
-+ tinsn_to_slotbuf (fmt, 0, &insn, trampoline_slotbuf);
-+ xtensa_format_set_slot (isa, fmt, 0, trampoline_buf, trampoline_slotbuf);
-+ xtensa_insnbuf_to_chars (isa, trampoline_buf, (unsigned char *)fragP->fr_literal + offset, 3);
-+ fragP->fr_fix += 3;
-+ fragP->fr_var -= 3;
-+ /* Add a fix-up for the original j insn. */
-+ newfixP = fix_new (fP, fixP->fx_where, fixP->fx_size, lsym, fragP->fr_fix - 3, TRUE, fixP->fx_r_type);
-+ newfixP->fx_no_overflow = 1;
-+ newfixP->tc_fix_data.X_add_symbol = lsym;
-+ newfixP->tc_fix_data.X_add_number = offset;
-+ newfixP->tc_fix_data.slot = slot;
-+ /* Move the fix-up from the original j insn to this one. */
-+ fixP->fx_frag = fragP;
-+ fixP->fx_where = fragP->fr_fix - 3;
-+ fixP->tc_fix_data.slot = 0;
-+ /* Adjust the jump around this trampoline (if present). */
-+ if (tf->fixP != NULL)
-+ {
-+ tf->fixP->fx_offset += 3;
-+ }
-+ new_stretch += 3;
-+ fragP->tc_frag_data.relax_seen = FALSE; /* Need another pass. */
-+ /* Do we have room for more? */
-+ if (fragP->fr_var < 3)
-+ { /* No, convert to fill. */
-+ frag_wane (fragP);
-+ fragP->fr_subtype = 0;
-+ /* Remove from the trampoline_list. */
-+ prev->next = tf->next;
-+ break;
-+ }
-+ }
-+ }
-+ }
-+ }
-+ }
-+ break;
-+
- default:
- as_bad (_("bad relaxation state"));
- }
-@@ -9146,6 +9472,200 @@ bytes_to_stretch (fragS *this_frag,
- }
-
-
-+static struct trampoline_frag *
-+search_trampolines (TInsn *tinsn, fragS *fragP, bfd_boolean unreachable_only)
-+{
-+ struct trampoline_seg *ts = find_trampoline_seg (now_seg);
-+ struct trampoline_frag *tf = (ts) ? ts->trampoline_list.next : NULL;
-+ struct trampoline_frag *best_tf = NULL;
-+ int best_delta = 0;
-+ int best_addr = 0;
-+ symbolS *sym = tinsn->tok[0].X_add_symbol;
-+ offsetT target = S_GET_VALUE (sym) + tinsn->tok[0].X_add_number;
-+ offsetT addr = fragP->fr_address;
-+ offsetT lower = (addr < target) ? addr : target;
-+ offsetT upper = (addr > target) ? addr : target;
-+ int delta = upper - lower;
-+ offsetT midpoint = lower + delta / 2;
-+ int this_delta = -1;
-+ int this_addr = -1;
-+
-+ if (delta > 2 * J_RANGE)
-+ {
-+ /* One trampoline won't do; we need multiple.
-+ Choose the farthest trampoline that's still in range of the original
-+ and let a later pass finish the job. */
-+ for ( ; tf; tf = tf->next)
-+ {
-+ int next_addr = (tf->next) ? tf->next->fragP->fr_address + tf->next->fragP->fr_fix : 0;
-+
-+ this_addr = tf->fragP->fr_address + tf->fragP->fr_fix;
-+ if (lower == addr)
-+ {
-+ /* Forward jump. */
-+ if (this_addr - addr < J_RANGE)
-+ break;
-+ }
-+ else
-+ {
-+ /* Backward jump. */
-+ if (next_addr == 0 || addr - next_addr > J_RANGE)
-+ break;
-+ }
-+ if (abs (addr - this_addr) < J_RANGE)
-+ return tf;
-+
-+ return NULL;
-+ }
-+ }
-+ for ( ; tf; tf = tf->next)
-+ {
-+ this_addr = tf->fragP->fr_address + tf->fragP->fr_fix;
-+ this_delta = abs (this_addr - midpoint);
-+ if (unreachable_only && tf->needs_jump_around)
-+ continue;
-+ if (!best_tf || this_delta < best_delta)
-+ {
-+ best_tf = tf;
-+ best_delta = this_delta;
-+ best_addr = this_addr;
-+ }
-+ }
-+
-+ if (best_tf &&
-+ best_delta < J_RANGE &&
-+ abs(best_addr - lower) < J_RANGE &&
-+ abs(best_addr - upper) < J_RANGE)
-+ return best_tf;
-+
-+ return NULL; /* No suitable trampoline found. */
-+}
-+
-+
-+static struct trampoline_frag *
-+get_best_trampoline (TInsn *tinsn, fragS *fragP)
-+{
-+ struct trampoline_frag *tf = NULL;
-+
-+ tf = search_trampolines (tinsn, fragP, TRUE); /* Try unreachable first. */
-+
-+ if (tf == NULL)
-+ tf = search_trampolines (tinsn, fragP, FALSE); /* Try ones needing a jump-around, too. */
-+
-+ return tf;
-+}
-+
-+
-+static void
-+check_and_update_trampolines (void)
-+{
-+ struct trampoline_seg *ts = find_trampoline_seg (now_seg);
-+ struct trampoline_frag *tf = ts->trampoline_list.next;
-+ struct trampoline_frag *prev = &ts->trampoline_list;
-+
-+ for ( ; tf; prev = tf, tf = tf->next)
-+ {
-+ if (tf->fragP->fr_var < 3)
-+ {
-+ frag_wane (tf->fragP);
-+ prev->next = tf->next;
-+ tf->fragP = NULL;
-+ }
-+ }
-+}
-+
-+
-+static int
-+init_trampoline_frag (struct trampoline_frag *trampP)
-+{
-+ fragS *fp = trampP->fragP;
-+ int growth = 0;
-+
-+ if (fp->fr_fix == 0)
-+ {
-+ symbolS *lsym;
-+ char label[10 + 2 * sizeof(fp)];
-+ sprintf (label, ".L0_TR_%p", fp);
-+
-+ lsym = (symbolS *)local_symbol_make (label, now_seg, 0, fp);
-+ fp->fr_symbol = lsym;
-+ if (trampP->needs_jump_around)
-+ {
-+ /* Add a jump around this block of jumps, in case
-+ control flows into this block. */
-+ fixS *fixP;
-+ TInsn insn;
-+ xtensa_format fmt;
-+ xtensa_isa isa = xtensa_default_isa;
-+
-+ fp->tc_frag_data.is_insn = 1;
-+ /* Assemble a jump insn. */
-+ tinsn_init (&insn);
-+ insn.insn_type = ITYPE_INSN;
-+ insn.opcode = xtensa_j_opcode;
-+ insn.ntok = 1;
-+ set_expr_symbol_offset (&insn.tok[0], lsym, 3);
-+ fmt = xg_get_single_format (xtensa_j_opcode);
-+ tinsn_to_slotbuf (fmt, 0, &insn, trampoline_slotbuf);
-+ xtensa_format_set_slot (isa, fmt, 0, trampoline_buf, trampoline_slotbuf);
-+ xtensa_insnbuf_to_chars (isa, trampoline_buf, (unsigned char *)fp->fr_literal, 3);
-+ fp->fr_fix += 3;
-+ fp->fr_var -= 3;
-+ growth = 3;
-+ fixP = fix_new (fp, 0, 3, lsym, 3, TRUE, BFD_RELOC_XTENSA_SLOT0_OP);
-+ trampP->fixP = fixP;
-+ }
-+ }
-+ return growth;
-+}
-+
-+
-+static int
-+add_jump_to_trampoline (struct trampoline_frag *trampP, fragS *origfrag)
-+{
-+ fragS *tramp = trampP->fragP;
-+ fixS *fixP;
-+ int offset = tramp->fr_fix; /* Where to assemble the j insn. */
-+ TInsn insn;
-+ symbolS *lsym;
-+ symbolS *tsym;
-+ int toffset;
-+ xtensa_format fmt;
-+ xtensa_isa isa = xtensa_default_isa;
-+ int growth = 0;
-+
-+ lsym = tramp->fr_symbol;
-+ /* Assemble a jump to the target label in the trampoline frag. */
-+ tsym = origfrag->tc_frag_data.slot_symbols[0];
-+ toffset = origfrag-> tc_frag_data.slot_offsets[0];
-+ tinsn_init (&insn);
-+ insn.insn_type = ITYPE_INSN;
-+ insn.opcode = xtensa_j_opcode;
-+ insn.ntok = 1;
-+ set_expr_symbol_offset (&insn.tok[0], tsym, toffset);
-+ fmt = xg_get_single_format (xtensa_j_opcode);
-+ tinsn_to_slotbuf (fmt, 0, &insn, trampoline_slotbuf);
-+ xtensa_format_set_slot (isa, fmt, 0, trampoline_buf, trampoline_slotbuf);
-+ xtensa_insnbuf_to_chars (isa, trampoline_buf, (unsigned char *)tramp->fr_literal + offset, 3);
-+ tramp->fr_fix += 3;
-+ tramp->fr_var -= 3;
-+ growth = 3;
-+ /* add a fix-up for the trampoline jump. */
-+ fixP = fix_new (tramp, tramp->fr_fix - 3, 3, tsym, toffset, TRUE, BFD_RELOC_XTENSA_SLOT0_OP);
-+ /* Modify the jump at the start of this trampoline to point past the newly-added jump. */
-+ fixP = trampP->fixP;
-+ if (fixP)
-+ fixP->fx_offset += 3;
-+ /* Modify the original j to point here. */
-+ origfrag->tc_frag_data.slot_symbols[0] = lsym;
-+ origfrag->tc_frag_data.slot_offsets[0] = tramp->fr_fix - 3;
-+ /* If trampoline is full, remove it from the list. */
-+ check_and_update_trampolines ();
-+
-+ return growth;
-+}
-+
-+
- static long
- relax_frag_immed (segT segP,
- fragS *fragP,
-@@ -9284,6 +9804,37 @@ relax_frag_immed (segT segP,
- if (negatable_branch && istack.ninsn > 1)
- update_next_frag_state (fragP);
-
-+ /* If last insn is a jump, and it cannot reach its target, try to find a trampoline. */
-+ if (istack.ninsn > 2 &&
-+ istack.insn[istack.ninsn - 1].insn_type == ITYPE_LABEL &&
-+ istack.insn[istack.ninsn - 2].insn_type == ITYPE_INSN &&
-+ istack.insn[istack.ninsn - 2].opcode == xtensa_j_opcode)
-+ {
-+ TInsn *jinsn = &istack.insn[istack.ninsn - 2];
-+
-+ if (!xg_symbolic_immeds_fit (jinsn, segP, fragP, fragP->fr_offset, total_text_diff))
-+ {
-+ struct trampoline_frag *tf = get_best_trampoline (jinsn, fragP);
-+
-+ if (tf)
-+ {
-+ this_text_diff += init_trampoline_frag (tf);
-+ this_text_diff += add_jump_to_trampoline (tf, fragP);
-+ }
-+ else
-+ {
-+ /* If target symbol is undefined, assume it will reach once linked. */
-+ expressionS *exp = &istack.insn[istack.ninsn - 2].tok[0];
-+
-+ if (exp->X_op == O_symbol && S_IS_DEFINED (exp->X_add_symbol))
-+ {
-+ as_bad_where (fragP->fr_file, fragP->fr_line,
-+ _("jump target out of range; no usable trampoline found"));
-+ }
-+ }
-+ }
-+ }
-+
- return this_text_diff;
- }
-
-@@ -9404,6 +9955,9 @@ md_convert_frag (bfd *abfd ATTRIBUTE_UNUSED, segT sec, fragS *fragp)
- else
- as_bad (_("invalid relaxation fragment result"));
- break;
-+
-+ case RELAX_TRAMPOLINE:
-+ break;
- }
-
- fragp->fr_var = 0;
-diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h
-index 0bf1240..4672bc6 100644
---- a/gas/config/tc-xtensa.h
-+++ b/gas/config/tc-xtensa.h
-@@ -180,6 +180,11 @@ enum xtensa_relax_statesE
- prevent the linker from changing the size of any frag between the
- section start and the org frag. */
-
-+ RELAX_TRAMPOLINE,
-+ /* Every few thousand frags, we insert one of these, just in case we may
-+ need some space for a trampoline (jump to a jump) because the function
-+ has gotten too big. If not needed, it disappears. */
-+
- RELAX_NONE
- };
-
-diff --git a/gas/frags.c b/gas/frags.c
-index 5f68480..e14099d 100644
---- a/gas/frags.c
-+++ b/gas/frags.c
-@@ -24,6 +24,20 @@
-
- extern fragS zero_address_frag;
- extern fragS predefined_address_frag;
-+
-+static int totalfrags;
-+
-+int
-+get_frag_count (void)
-+{
-+ return totalfrags;
-+}
-+
-+void
-+clear_frag_count (void)
-+{
-+ totalfrags = 0;
-+}
-
- /* Initialization for frag routines. */
-
-@@ -70,6 +84,7 @@ frag_alloc (struct obstack *ob)
- ptr = (fragS *) obstack_alloc (ob, SIZEOF_STRUCT_FRAG);
- obstack_alignment_mask (ob) = oalign;
- memset (ptr, 0, SIZEOF_STRUCT_FRAG);
-+ totalfrags++;
- return ptr;
- }
-
-diff --git a/gas/frags.h b/gas/frags.h
-index 319898f..2f9e1b5 100644
---- a/gas/frags.h
-+++ b/gas/frags.h
-@@ -155,4 +155,7 @@ char *frag_var (relax_stateT type,
-
- bfd_boolean frag_offset_fixed_p (const fragS *, const fragS *, offsetT *);
-
-+int get_frag_count (void);
-+void clear_frag_count (void);
-+
- #endif /* FRAGS_H */
-diff --git a/gas/testsuite/gas/xtensa/all.exp b/gas/testsuite/gas/xtensa/all.exp
-index 2b2c294..3683b78 100644
---- a/gas/testsuite/gas/xtensa/all.exp
-+++ b/gas/testsuite/gas/xtensa/all.exp
-@@ -98,6 +98,7 @@ if [istarget xtensa*-*-*] then {
- run_dump_test "pcrel"
- run_dump_test "weak-call"
- run_dump_test "jlong"
-+ run_dump_test "trampoline"
- }
-
- if [info exists errorInfo] then {
-diff --git a/gas/testsuite/gas/xtensa/trampoline.d b/gas/testsuite/gas/xtensa/trampoline.d
-new file mode 100644
-index 0000000..b4f65dc
---- /dev/null
-+++ b/gas/testsuite/gas/xtensa/trampoline.d
-@@ -0,0 +1,26 @@
-+#as:
-+#objdump: -d
-+#name: trampolines relaxation
-+
-+.*: +file format .*xtensa.*
-+#...
-+.*0:.*j.0x1194c
-+.*3:.*j.0x1194f
-+.*6:.*j.0x11952
-+.*9:.*j.0x1d4e4
-+#...
-+.*11949:.*j.0x11955
-+.*1194c:.*j.0x24a0e
-+.*1194f:.*j.0x24a0e
-+.*11952:.*j.0x24a11
-+#...
-+.*1d4e1:.*j.0x1d4e7
-+.*1d4e4:.*j.0x33462
-+#...
-+.*24a0e:.*j.0x24a0e
-+.*24a11:.*j.0x24a11
-+#...
-+.*3345f:.*ret
-+.*33462:.*j.0x49407
-+#...
-+.*49407:.*j.0x49407
-diff --git a/gas/testsuite/gas/xtensa/trampoline.s b/gas/testsuite/gas/xtensa/trampoline.s
-new file mode 100644
-index 0000000..259a3bb
---- /dev/null
-+++ b/gas/testsuite/gas/xtensa/trampoline.s
-@@ -0,0 +1,21 @@
-+ .text
-+ j 1f
-+ j 1f
-+ j 2f
-+ j 3f
-+ .rep 25000
-+99:
-+ and a2, a2, a3
-+ bne a2, a3, 99b
-+ .endr
-+1:
-+ j 1b
-+2:
-+ j 2b
-+
-+ .rep 25000
-+ and a2, a2, a3
-+ _ret
-+ .endr
-+3:
-+ j 3b
---
-1.8.1.4
-
diff --git a/package/binutils/2.23.2/901-xtensa-gas-first-frag-alignment.patch b/package/binutils/2.23.2/901-xtensa-gas-first-frag-alignment.patch
deleted file mode 100644
index e1c2d85aa8..0000000000
--- a/package/binutils/2.23.2/901-xtensa-gas-first-frag-alignment.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From a35d5e823fdfe8a6e7e05ca8e3fb8bb5697335b1 Mon Sep 17 00:00:00 2001
-From: Max Filippov <jcmvbkbc@gmail.com>
-Date: Tue, 15 Apr 2014 19:12:46 +0400
-Subject: [PATCH] Fix alignment for the first section frag on xtensa
-
-Linking object files produced by partial linking with link-time
-relaxation enabled sometimes fails with the following error message:
-
-dangerous relocation: call8: misaligned call target: (.text.unlikely+0x63)
-
-This happens because no basic block with an XTENSA_PROP_ALIGN flag in the
-property table is generated for the first basic block, even if the
-.align directive is present.
-It was believed that the first frag alignment could be derived from the
-section alignment, but this was not implemented for the partial linking
-case: after partial linking first frag of a section may become not
-first, but no additional alignment frag is inserted before it.
-Basic block for such frag may be merged with previous basic block into
-extended basic block during relaxation pass losing its alignment
-restrictions.
-
-Fix this by always recording alignment for the first section frag.
-
-2014-04-22 Max Filippov <jcmvbkbc@gmail.com>
-
-gas/
- * config/tc-xtensa.c (xtensa_handle_align): record alignment for the
- first section frag.
-
----
-Backported from: a35d5e823fdfe8a6e7e05ca8e3fb8bb5697335b1
-Changes to Changelog files and tests are dropped.
-
- gas/config/tc-xtensa.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c
-index ea23c96..58ace38 100644
---- a/gas/config/tc-xtensa.c
-+++ b/gas/config/tc-xtensa.c
-@@ -5609,7 +5609,6 @@ xtensa_handle_align (fragS *fragP)
- && ! fragP->tc_frag_data.is_literal
- && (fragP->fr_type == rs_align
- || fragP->fr_type == rs_align_code)
-- && fragP->fr_address + fragP->fr_fix > 0
- && fragP->fr_offset > 0
- && now_seg != bss_section)
- {
---
-1.8.1.4
-
diff --git a/package/binutils/2.23.2/902-xtensa-gas-ld-diff-relocation-signed.patch b/package/binutils/2.23.2/902-xtensa-gas-ld-diff-relocation-signed.patch
deleted file mode 100644
index ba24f4e4b0..0000000000
--- a/package/binutils/2.23.2/902-xtensa-gas-ld-diff-relocation-signed.patch
+++ /dev/null
@@ -1,133 +0,0 @@
-From 6a17eba5358549d0d6d195bb22b34cdbc068def2 Mon Sep 17 00:00:00 2001
-From: Volodymyr Arbatov <arbatov@cadence.com>
-Date: Mon, 6 May 2013 09:43:21 -0800
-Subject: [PATCH] Use signed data type for R_XTENSA_DIFF* relocation offsets.
-
-R_XTENSA_DIFF relocation offsets are in fact signed. Treat them as such.
-Add testcase that examines ld behaviour on R_XTENSA_DIFF relocation
-changing sign during relaxation.
-
-2014-05-02 Volodymyr Arbatov <arbatov@cadence.com>
- David Weatherford <weath@cadence.com>
- Max Filippov <jcmvbkbc@gmail.com>
-
-bfd/
- * elf32-xtensa.c (relax_section): treat R_XTENSA_DIFF* relocations as
- signed.
-
-gas/
- * config/tc-xtensa.c (md_apply_fix): mark BFD_RELOC_XTENSA_DIFF*
- fixups as signed.
----
-Backported from: 1058c7532d0b012ac329219264ddad59049fb6e6
-Changes to Changelog files and tests are dropped.
-
- bfd/elf32-xtensa.c | 32 ++++++++++++-----------
- gas/config/tc-xtensa.c | 3 +++
- 2 files changed, 20 insertions(+), 15 deletions(-)
-
-diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c
-index edb04b4..8818d67 100644
---- a/bfd/elf32-xtensa.c
-+++ b/bfd/elf32-xtensa.c
-@@ -222,11 +222,11 @@ static reloc_howto_type elf_howto_table[] =
- FALSE, 0, 0, FALSE),
-
- /* Relocations for supporting difference of symbols. */
-- HOWTO (R_XTENSA_DIFF8, 0, 0, 8, FALSE, 0, complain_overflow_bitfield,
-+ HOWTO (R_XTENSA_DIFF8, 0, 0, 8, FALSE, 0, complain_overflow_signed,
- bfd_elf_xtensa_reloc, "R_XTENSA_DIFF8", FALSE, 0, 0xff, FALSE),
-- HOWTO (R_XTENSA_DIFF16, 0, 1, 16, FALSE, 0, complain_overflow_bitfield,
-+ HOWTO (R_XTENSA_DIFF16, 0, 1, 16, FALSE, 0, complain_overflow_signed,
- bfd_elf_xtensa_reloc, "R_XTENSA_DIFF16", FALSE, 0, 0xffff, FALSE),
-- HOWTO (R_XTENSA_DIFF32, 0, 2, 32, FALSE, 0, complain_overflow_bitfield,
-+ HOWTO (R_XTENSA_DIFF32, 0, 2, 32, FALSE, 0, complain_overflow_signed,
- bfd_elf_xtensa_reloc, "R_XTENSA_DIFF32", FALSE, 0, 0xffffffff, FALSE),
-
- /* General immediate operand relocations. */
-@@ -9013,7 +9013,8 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info)
- || r_type == R_XTENSA_DIFF16
- || r_type == R_XTENSA_DIFF32)
- {
-- bfd_vma diff_value = 0, new_end_offset, diff_mask = 0;
-+ bfd_signed_vma diff_value = 0;
-+ bfd_vma new_end_offset, diff_mask = 0;
-
- if (bfd_get_section_limit (abfd, sec) < old_source_offset)
- {
-@@ -9027,15 +9028,15 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info)
- {
- case R_XTENSA_DIFF8:
- diff_value =
-- bfd_get_8 (abfd, &contents[old_source_offset]);
-+ bfd_get_signed_8 (abfd, &contents[old_source_offset]);
- break;
- case R_XTENSA_DIFF16:
- diff_value =
-- bfd_get_16 (abfd, &contents[old_source_offset]);
-+ bfd_get_signed_16 (abfd, &contents[old_source_offset]);
- break;
- case R_XTENSA_DIFF32:
- diff_value =
-- bfd_get_32 (abfd, &contents[old_source_offset]);
-+ bfd_get_signed_32 (abfd, &contents[old_source_offset]);
- break;
- }
-
-@@ -9047,24 +9048,25 @@ relax_section (bfd *abfd, asection *sec, struct bfd_link_info *link_info)
- switch (r_type)
- {
- case R_XTENSA_DIFF8:
-- diff_mask = 0xff;
-- bfd_put_8 (abfd, diff_value,
-+ diff_mask = 0x7f;
-+ bfd_put_signed_8 (abfd, diff_value,
- &contents[old_source_offset]);
- break;
- case R_XTENSA_DIFF16:
-- diff_mask = 0xffff;
-- bfd_put_16 (abfd, diff_value,
-+ diff_mask = 0x7fff;
-+ bfd_put_signed_16 (abfd, diff_value,
- &contents[old_source_offset]);
- break;
- case R_XTENSA_DIFF32:
-- diff_mask = 0xffffffff;
-- bfd_put_32 (abfd, diff_value,
-+ diff_mask = 0x7fffffff;
-+ bfd_put_signed_32 (abfd, diff_value,
- &contents[old_source_offset]);
- break;
- }
-
-- /* Check for overflow. */
-- if ((diff_value & ~diff_mask) != 0)
-+ /* Check for overflow. Sign bits must be all zeroes or all ones */
-+ if ((diff_value & ~diff_mask) != 0 &&
-+ (diff_value & ~diff_mask) != (-1 & ~diff_mask))
- {
- (*link_info->callbacks->reloc_dangerous)
- (link_info, _("overflow after relaxation"),
-diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c
-index 58ace38..7547c0a0 100644
---- a/gas/config/tc-xtensa.c
-+++ b/gas/config/tc-xtensa.c
-@@ -5867,12 +5867,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;
- break;
- case BFD_RELOC_16:
- fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF16;
-+ fixP->fx_signed = 1;
- break;
- case BFD_RELOC_32:
- fixP->fx_r_type = BFD_RELOC_XTENSA_DIFF32;
-+ fixP->fx_signed = 1;
- break;
- default:
- break;
---
-1.8.1.4
-
diff --git a/package/binutils/2.23.2/903-xtensa-fix-ld-segfault-when-linking-linux-modules.patch b/package/binutils/2.23.2/903-xtensa-fix-ld-segfault-when-linking-linux-modules.patch
deleted file mode 100644
index 6a0846ef8e..0000000000
--- a/package/binutils/2.23.2/903-xtensa-fix-ld-segfault-when-linking-linux-modules.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From e7d17e71cdc10a2e81e454ce3b9637f1b2a587f2 Mon Sep 17 00:00:00 2001
-From: Max Filippov <jcmvbkbc@gmail.com>
-Date: Thu, 10 Jul 2014 01:47:33 +0400
-Subject: [PATCH] Fix xtensa ld segfault when linking linux modules
-
-is_inconsistent_linkonce_section makes an assumption that section name
-that starts with ".gnu.linkonce.prop." has one more dot in its suffix.
-However gas generates such section name by insertion of "prop." right
-after ".gnu.linkonce." part of the name of the original section. So, for
-section named ".gnu.linkonce.this_module" corresponding property section
-name does not satisfy the assumption. Such section names are common in
-linux modules. This bug was exposed by the patch "a35d5e8 Fix alignment
-for the first section frag on xtensa", that makes gas produce property
-section for each section that has ".align" directive in it.
-
-Use suffix that immediately follows ".gnu.linkonce.prop." when there are
-no more dots following it.
-
-2014-07-10 Max Filippov <jcmvbkbc@gmail.com>
-
-ld/
- * emultempl/xtensaelf.em (is_inconsistent_linkonce_section):
- correctly handle missing dot in section name after
- ".gnu.linkonce.prop.".
----
-Backported from: e7d17e71cdc10a2e81e454ce3b9637f1b2a587f2
-Changes to ld/ChangeLog file are dropped.
-
- ld/emultempl/xtensaelf.em | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/ld/emultempl/xtensaelf.em b/ld/emultempl/xtensaelf.em
-index 151eea4..948d18d 100644
---- a/ld/emultempl/xtensaelf.em
-+++ b/ld/emultempl/xtensaelf.em
-@@ -1310,7 +1310,7 @@ is_inconsistent_linkonce_section (asection *sec)
- for Tensilica's XCC compiler. */
- name = sec_name + linkonce_len;
- if (CONST_STRNEQ (name, "prop."))
-- name = strchr (name + 5, '.') + 1;
-+ name = strchr (name + 5, '.') ? strchr (name + 5, '.') + 1 : name + 5;
- else if (name[1] == '.'
- && (name[0] == 'p' || name[0] == 'e' || name[0] == 'h'))
- name += 2;
---
-1.8.1.4
-
diff --git a/package/binutils/2.23.2/904-Fix-call8-call-target-out-of-range-xtensa-ld-relaxation.patch b/package/binutils/2.23.2/904-Fix-call8-call-target-out-of-range-xtensa-ld-relaxation.patch
deleted file mode 100644
index dba7620b7e..0000000000
--- a/package/binutils/2.23.2/904-Fix-call8-call-target-out-of-range-xtensa-ld-relaxation.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From 7fc39194f8fb48914c995f8ec3826d50086f1ec0 Mon Sep 17 00:00:00 2001
-From: Sterling Augustine <augustine.sterling@gmail.com>
-Date: Tue, 25 Jan 2011 13:59:13 -0800
-Subject: [PATCH] Fix 'call8: call target out of range' xtensa ld relaxation
- bug
-
-During link-time relaxation distance between cross-section call site and
-its target may grow, producing 'call target out of range' error for
-relaxed calls. Be more conservative when calculating whether or not a
-callx can be converted to a straight call.
-
-2014-09-23 Sterling Augustine <augustine.sterling@gmail.com>
-
-bfd/
- * elf32-xtensa.c (is_resolvable_asm_expansion): for cross-section
- call relaxation use furthermost addresses where call source and
- destination can be to check whether it's in the range of a direct
- call.
-
-Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
----
- bfd/elf32-xtensa.c | 41 +++++++++++++++++++++++++++++++++++++----
- 1 file changed, 37 insertions(+), 4 deletions(-)
-
-diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c
-index 09862e3..e32496a 100644
---- a/bfd/elf32-xtensa.c
-+++ b/bfd/elf32-xtensa.c
-@@ -7124,10 +7124,43 @@ is_resolvable_asm_expansion (bfd *abfd,
- || is_reloc_sym_weak (abfd, irel)))
- return FALSE;
-
-- self_address = (sec->output_section->vma
-- + sec->output_offset + irel->r_offset + 3);
-- dest_address = (target_sec->output_section->vma
-- + target_sec->output_offset + target_offset);
-+ if (target_sec->output_section != sec->output_section)
-+ {
-+ /* If the two sections are sufficiently far away that relaxation
-+ might take the call out of range, we can't simplify. For
-+ example, a positive displacement call into another memory
-+ could get moved to a lower address due to literal removal,
-+ but the destination won't move, and so the displacment might
-+ get larger.
-+
-+ If the displacement is negative, assume the destination could
-+ move as far back as the start of the output section. The
-+ self_address will be at least as far into the output section
-+ as it is prior to relaxation.
-+
-+ If the displacement is postive, assume the destination will be in
-+ it's pre-relaxed location (because relaxation only makes sections
-+ smaller). The self_address could go all the way to the beginning
-+ of the output section. */
-+
-+ dest_address = target_sec->output_section->vma;
-+ self_address = sec->output_section->vma;
-+
-+ if (sec->output_section->vma > target_sec->output_section->vma)
-+ self_address += sec->output_offset + irel->r_offset + 3;
-+ else
-+ dest_address += bfd_get_section_limit (abfd, target_sec->output_section);
-+ /* Call targets should be four-byte aligned. */
-+ dest_address = (dest_address + 3) & ~3;
-+ }
-+ else
-+ {
-+
-+ self_address = (sec->output_section->vma
-+ + sec->output_offset + irel->r_offset + 3);
-+ dest_address = (target_sec->output_section->vma
-+ + target_sec->output_offset + target_offset);
-+ }
-
- *is_reachable_p = pcrel_reloc_fits (direct_call_opcode, 0,
- self_address, dest_address);
---
-1.8.1.4
-
diff --git a/package/binutils/2.23.2/905-Fix-trampolines-search-code-for-conditional-branches.patch b/package/binutils/2.23.2/905-Fix-trampolines-search-code-for-conditional-branches.patch
deleted file mode 100644
index 8aeb06428a..0000000000
--- a/package/binutils/2.23.2/905-Fix-trampolines-search-code-for-conditional-branches.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-From 415480d6471e67aef97c0241d451ef2423a1da9d Mon Sep 17 00:00:00 2001
-From: Max Filippov <jcmvbkbc@gmail.com>
-Date: Tue, 25 Nov 2014 21:33:21 +0300
-Subject: [PATCH] Fix trampolines search code for conditional branches
-
-For conditional branches that need more than one trampoline to reach its
-target assembler couldn't always find suitable trampoline because
-post-loop condition check was placed inside the loop, resulting in
-premature loop termination. Move check outside the loop.
-
-This fixes the following build errors seen when assembling huge files
-produced by gcc:
- Error: jump target out of range; no usable trampoline found
- Error: operand 1 of 'j' has out of range value '307307'
-
-2014-11-25 Max Filippov <jcmvbkbc@gmail.com>
-
-gas/
- * config/tc-xtensa.c (search_trampolines): Move post-loop
- condition check outside the search loop.
-
-gas/testsuite/
- * gas/xtensa/trampoline.d: Add expected output for branches.
- * gas/xtensa/trampoline.s: Add test case for branches.
-
-Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
----
-Backported from: d92b6eece424f0ad35d96fdd85bf207295e8c4c3
-Changes to ChangeLogs are dropped.
-
- gas/config/tc-xtensa.c | 8 ++++----
- gas/testsuite/gas/xtensa/trampoline.d | 9 +++++++++
- gas/testsuite/gas/xtensa/trampoline.s | 7 +++++++
- 3 files changed, 20 insertions(+), 4 deletions(-)
-
-diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c
-index d11b0c7..f23ccf8 100644
---- a/gas/config/tc-xtensa.c
-+++ b/gas/config/tc-xtensa.c
-@@ -9514,11 +9514,11 @@ search_trampolines (TInsn *tinsn, fragS *fragP, bfd_boolean unreachable_only)
- if (next_addr == 0 || addr - next_addr > J_RANGE)
- break;
- }
-- if (abs (addr - this_addr) < J_RANGE)
-- return tf;
--
-- return NULL;
- }
-+ if (abs (addr - this_addr) < J_RANGE)
-+ return tf;
-+
-+ return NULL;
- }
- for ( ; tf; tf = tf->next)
- {
-diff --git a/gas/testsuite/gas/xtensa/trampoline.d b/gas/testsuite/gas/xtensa/trampoline.d
-index b4f65dc..5ae32a6 100644
---- a/gas/testsuite/gas/xtensa/trampoline.d
-+++ b/gas/testsuite/gas/xtensa/trampoline.d
-@@ -24,3 +24,12 @@
- .*33462:.*j.0x49407
- #...
- .*49407:.*j.0x49407
-+.*4940a:.*beqz.n.a2,.0x4940f
-+.*4940c:.*j.0x693d1
-+#...
-+.*693d1:.*j.0x7ddd4
-+#...
-+.*7ddd4:.*j.0x927f5
-+#...
-+.*927f5:.*j.0x927f5
-+#...
-diff --git a/gas/testsuite/gas/xtensa/trampoline.s b/gas/testsuite/gas/xtensa/trampoline.s
-index 259a3bb..4465786 100644
---- a/gas/testsuite/gas/xtensa/trampoline.s
-+++ b/gas/testsuite/gas/xtensa/trampoline.s
-@@ -19,3 +19,10 @@
- .endr
- 3:
- j 3b
-+ bnez a2, 4f
-+ .rep 50000
-+ and a2, a2, a3
-+ _ret
-+ .endr
-+4:
-+ j 4b
---
-1.8.1.4
-
diff --git a/package/binutils/2.23.2/911-xtensa-fix-localized-symbol-refcounting-with-gc-sect.patch b/package/binutils/2.23.2/911-xtensa-fix-localized-symbol-refcounting-with-gc-sect.patch
deleted file mode 100644
index 9ad6b3be05..0000000000
--- a/package/binutils/2.23.2/911-xtensa-fix-localized-symbol-refcounting-with-gc-sect.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 8ec76b16f62d1bf386fb2c39af5f66c3afddc5cb Mon Sep 17 00:00:00 2001
-From: Max Filippov <jcmvbkbc@gmail.com>
-Date: Thu, 14 May 2015 05:22:55 +0300
-Subject: [PATCH] xtensa: fix localized symbol refcounting with --gc-sections
-
-elf_xtensa_gc_sweep_hook doesn't correctly unreference symbols that were
-made local, that results in link failure with the following message:
-
- BFD (GNU Binutils) 2.24 internal error, aborting at elf32-xtensa.c line
- 3372 in elf_xtensa_finish_dynamic_sections
-
-elf_xtensa_gc_sweep_hook determines symbol reference type (PLT or GOT) by
-relocation type. Relocation types are not changed when symbol becomes
-local, but its PLT references are added to GOT references and
-plt.refcount is set to 0. Such symbol cannot be unreferences in the
-elf_xtensa_gc_sweep_hook and its extra references make calculated GOT
-relocations section size not match number of GOT relocations.
-
-Fix it by treating PLT reference as GOT reference when plt.refcount is
-not positive.
-
-2015-05-14 Max Filippov <jcmvbkbc@gmail.com>
-bfd/
- * elf32-xtensa.c (elf_xtensa_gc_sweep_hook): Treat PLT reference
- as GOT reference when plt.refcount is not positive.
-
-Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
----
-Backported from: e6c9a083ec5ae7a45bd71682b26aae1939849388
-Changes to ChangeLog are dropped.
-
- bfd/elf32-xtensa.c | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/bfd/elf32-xtensa.c b/bfd/elf32-xtensa.c
-index 53af1c6..2523670 100644
---- a/bfd/elf32-xtensa.c
-+++ b/bfd/elf32-xtensa.c
-@@ -1360,10 +1360,14 @@ elf_xtensa_gc_sweep_hook (bfd *abfd,
- {
- if (is_plt)
- {
-+ /* If the symbol has been localized its plt.refcount got moved
-+ to got.refcount. Handle it as GOT. */
- if (h->plt.refcount > 0)
- h->plt.refcount--;
-+ else
-+ is_got = TRUE;
- }
-- else if (is_got)
-+ if (is_got)
- {
- if (h->got.refcount > 0)
- h->got.refcount--;
---
-1.8.1.4
-
diff --git a/package/binutils/2.23.2/912-xtensa-fix-gas-segfault-with-text-section-literals.patch b/package/binutils/2.23.2/912-xtensa-fix-gas-segfault-with-text-section-literals.patch
deleted file mode 100644
index 4a3de2c839..0000000000
--- a/package/binutils/2.23.2/912-xtensa-fix-gas-segfault-with-text-section-literals.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 2d0522e76e4afeeb2e104e0a4332d94fa0d2fbf6 Mon Sep 17 00:00:00 2001
-From: Max Filippov <jcmvbkbc@gmail.com>
-Date: Sun, 17 May 2015 06:46:15 +0300
-Subject: [PATCH] xtensa: fix gas segfault with --text-section-literals
-
-When --text-section-literals is used and code in the .init or .fini
-emits literal in the absence of .literal_position, xtensa_move_literals
-segfaults.
-
-Check that search_frag is non-NULL in the xtensa_move_literals and
-report error otherwise.
-
-2015-05-26 Max Filippov <jcmvbkbc@gmail.com>
-gas/
- * config/tc-xtensa.c (xtensa_move_literals): Check that
- search_frag is non-NULL. Report error if literal frag is not
- found.
-
-Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
----
-Backported from: 4de0562a4c69fef4952aa7e19d7bda359f02e8b4
-Changes to ChangeLog are dropped.
-
- gas/config/tc-xtensa.c | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/gas/config/tc-xtensa.c b/gas/config/tc-xtensa.c
-index 31c0b6b..18307c1 100644
---- a/gas/config/tc-xtensa.c
-+++ b/gas/config/tc-xtensa.c
-@@ -10808,13 +10808,21 @@ xtensa_move_literals (void)
- frchain_to = NULL;
- frag_splice = &(frchain_from->frch_root);
-
-- while (!search_frag->tc_frag_data.literal_frag)
-+ while (search_frag && !search_frag->tc_frag_data.literal_frag)
- {
- gas_assert (search_frag->fr_fix == 0
- || search_frag->fr_type == rs_align);
- search_frag = search_frag->fr_next;
- }
-
-+ if (!search_frag)
-+ {
-+ search_frag = frchain_from->frch_root;
-+ as_bad_where (search_frag->fr_file, search_frag->fr_line,
-+ _("literal pool location required for text-section-literals; specify with .literal_position"));
-+ continue;
-+ }
-+
- gas_assert (search_frag->tc_frag_data.literal_frag->fr_subtype
- == RELAX_LITERAL_POOL_BEGIN);
- xtensa_switch_section_emit_state (&state, segment->seg, 0);
---
-1.8.1.4
-
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
deleted file mode 100644
index 2955e114e2..0000000000
--- a/package/binutils/2.23.2/914-xtensa-fix-signedness-of-gas-relocations.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 6c7c5c477ef9ccf2d2548cf2ac3cec9bd3c9c5b6 Mon Sep 17 00:00:00 2001
-From: Max Filippov <jcmvbkbc@gmail.com>
-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 <jcmvbkbc@gmail.com>
- * config/tc-xtensa.c (md_apply_fix): Mark BFD_RELOC_XTENSA_DIFF*
- substitutions for BFD_RELOC_* as unsigned.
-
-Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
----
- 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
deleted file mode 100644
index 4bdd8a0277..0000000000
--- a/package/binutils/2.23.2/915-xtensa-fix-.init-.fini-literals-moving.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From 7db2accc3fdea0aaa0c3a76a413d8e8030e022c3 Mon Sep 17 00:00:00 2001
-From: Max Filippov <jcmvbkbc@gmail.com>
-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 <jcmvbkbc@gmail.com>
-gas/
- * config/tc-xtensa.c (xtensa_move_literals): Fix check for
- .init.literal/.fini.literal section name.
-
-Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
----
-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/Config.in.host b/package/binutils/Config.in.host
index e42918e9fa..efdc840663 100644
--- a/package/binutils/Config.in.host
+++ b/package/binutils/Config.in.host
@@ -7,15 +7,6 @@ choice
help
Select the version of binutils you wish to use.
- 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
- # Unsupported ARM cores
- depends on !BR2_cortex_a17
- 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
@@ -35,8 +26,7 @@ endchoice
config BR2_BINUTILS_VERSION
string
- default "arc-2015.12" if BR2_arc
- default "2.23.2" if BR2_BINUTILS_VERSION_2_23_X
+ default "arc-2016.03" if BR2_arc
default "2.24" if BR2_BINUTILS_VERSION_2_24_X
default "2.25.1" if BR2_BINUTILS_VERSION_2_25_X
default "2.26" if BR2_BINUTILS_VERSION_2_26_X
diff --git a/package/binutils/arc-2015.12/0001-PR-other-56780.patch b/package/binutils/arc-2015.12/0001-PR-other-56780.patch
deleted file mode 100644
index b418a2f4a9..0000000000
--- a/package/binutils/arc-2015.12/0001-PR-other-56780.patch
+++ /dev/null
@@ -1,236 +0,0 @@
-From 7827cdf59a1894abe18aa20043a63c8c875c3fce Mon Sep 17 00:00:00 2001
-From: DJ Delorie <dj@redhat.com>
-Date: Sat, 1 Jun 2013 01:01:44 +0000
-Subject: [PATCH] PR other/56780 merge from gcc
-
-binutils-gdb upstream a4818a052efb4cea976a03a2f7cb0b38b23d12d0
-
-libiberty: fix --enable-install-libiberty flag [PR 56780]
-
-Commit 199570 fixed the --disable-install-libiberty behavior, but it also
-added a bug where the enable path never works because the initial clear
-of target_header_dir wasn't deleted. So we end up initializing properly
-at the top only to reset it at the end all the time.
-
-git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206367 138bc75d-0d04-0410-961f-82ee72b054a4
-
-[Romain
- rename patch name
- squash the two upstream commits
- Remove the ChangeLog]
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- libiberty/Makefile.in | 24 ++++++++++-----------
- libiberty/configure | 57 +++++++++++++++++++++++++++-----------------------
- libiberty/configure.ac | 47 ++++++++++++++++++++++-------------------
- 3 files changed, 68 insertions(+), 60 deletions(-)
-
-diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
-index 0a5da31..4f40c72 100644
---- a/libiberty/Makefile.in
-+++ b/libiberty/Makefile.in
-@@ -354,19 +354,19 @@ install-strip: install
- # since it will be passed the multilib flags.
- MULTIOSDIR = `$(CC) $(CFLAGS) -print-multi-os-directory`
- install_to_libdir: all
-- ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR)
-- $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n
-- ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n )
-- mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)
- if test -n "${target_header_dir}"; then \
-- case "${target_header_dir}" in \
-- /*) thd=${target_header_dir};; \
-- *) thd=${includedir}/${target_header_dir};; \
-- esac; \
-- ${mkinstalldirs} $(DESTDIR)$${thd}; \
-- for h in ${INSTALLED_HEADERS}; do \
-- ${INSTALL_DATA} $$h $(DESTDIR)$${thd}; \
-- done; \
-+ ${mkinstalldirs} $(DESTDIR)$(libdir)/$(MULTIOSDIR); \
-+ $(INSTALL_DATA) $(TARGETLIB) $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n; \
-+ ( cd $(DESTDIR)$(libdir)/$(MULTIOSDIR) ; chmod 644 $(TARGETLIB)n ;$(RANLIB) $(TARGETLIB)n ); \
-+ mv -f $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB)n $(DESTDIR)$(libdir)/$(MULTIOSDIR)/$(TARGETLIB); \
-+ case "${target_header_dir}" in \
-+ /*) thd=${target_header_dir};; \
-+ *) thd=${includedir}/${target_header_dir};; \
-+ esac; \
-+ ${mkinstalldirs} $(DESTDIR)$${thd}; \
-+ for h in ${INSTALLED_HEADERS}; do \
-+ ${INSTALL_DATA} $$h $(DESTDIR)$${thd}; \
-+ done; \
- fi
- @$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install
-
-diff --git a/libiberty/configure b/libiberty/configure
-index 6e98352..44d1f78 100755
---- a/libiberty/configure
-+++ b/libiberty/configure
-@@ -675,8 +675,8 @@ with_cross_host
- with_newlib
- enable_maintainer_mode
- enable_multilib
--enable_largefile
- enable_install_libiberty
-+enable_largefile
- '
- ac_precious_vars='build_alias
- host_alias
-@@ -1303,8 +1303,8 @@ Optional Features:
- enable make rules and dependencies not useful
- (and sometimes confusing) to the casual installer
- --enable-multilib build many library versions (default)
-+ --enable-install-libiberty Install headers and library for end users
- --disable-largefile omit support for large files
-- --enable-install-libiberty Install headers for end users
-
- Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
-@@ -2784,6 +2784,35 @@ if test $cross_compiling = no && test $multilib = yes \
- cross_compiling=maybe
- fi
-
-+# We may wish to install the target headers somewhere.
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to install libiberty headers and static library" >&5
-+$as_echo_n "checking whether to install libiberty headers and static library... " >&6; }
-+
-+# Check whether --enable-install-libiberty was given.
-+if test "${enable_install_libiberty+set}" = set; then :
-+ enableval=$enable_install_libiberty; enable_install_libiberty=$enableval
-+else
-+ enable_install_libiberty=no
-+fi
-+
-+# Option parsed, now set things appropriately.
-+case x"$enable_install_libiberty" in
-+ xyes|x)
-+ target_header_dir=libiberty
-+ ;;
-+ xno)
-+ target_header_dir=
-+ ;;
-+ *)
-+ # This could be sanity-checked in various ways...
-+ target_header_dir="${enable_install_libiberty}"
-+ ;;
-+esac
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_install_libiberty" >&5
-+$as_echo "$enable_install_libiberty" >&6; }
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: target_header_dir = $target_header_dir" >&5
-+$as_echo "$as_me: target_header_dir = $target_header_dir" >&6;}
-+
-
- ac_ext=c
- ac_cpp='$CPP $CPPFLAGS'
-@@ -5475,7 +5504,6 @@ fi
-
- setobjs=
- CHECK=
--target_header_dir=
- if test -n "${with_target_subdir}"; then
-
- # We are being configured as a target library. AC_REPLACE_FUNCS
-@@ -5752,29 +5780,6 @@ _ACEOF
-
- esac
-
-- # We may wish to install the target headers somewhere.
-- # Check whether --enable-install-libiberty was given.
--if test "${enable_install_libiberty+set}" = set; then :
-- enableval=$enable_install_libiberty; enable_install_libiberty=$enableval
--else
-- enable_install_libiberty=no
--fi
--
-- # Option parsed, now set things appropriately.
-- case x"$enable_install_libiberty" in
-- xyes|x)
-- target_header_dir=libiberty
-- ;;
-- xno)
-- target_header_dir=
-- ;;
-- *)
-- # This could be sanity-checked in various ways...
-- target_header_dir="${enable_install_libiberty}"
-- ;;
-- esac
--
--
- else
-
- # Not a target library, so we set things up to run the test suite.
-diff --git a/libiberty/configure.ac b/libiberty/configure.ac
-index 754b66a..04260ec 100644
---- a/libiberty/configure.ac
-+++ b/libiberty/configure.ac
-@@ -128,6 +128,31 @@ if test $cross_compiling = no && test $multilib = yes \
- cross_compiling=maybe
- fi
-
-+# We may wish to install the target headers somewhere.
-+AC_MSG_CHECKING([whether to install libiberty headers and static library])
-+dnl install-libiberty is disabled by default
-+
-+AC_ARG_ENABLE(install-libiberty,
-+[ --enable-install-libiberty Install headers and library for end users],
-+enable_install_libiberty=$enableval,
-+enable_install_libiberty=no)dnl
-+
-+# Option parsed, now set things appropriately.
-+case x"$enable_install_libiberty" in
-+ xyes|x)
-+ target_header_dir=libiberty
-+ ;;
-+ xno)
-+ target_header_dir=
-+ ;;
-+ *)
-+ # This could be sanity-checked in various ways...
-+ target_header_dir="${enable_install_libiberty}"
-+ ;;
-+esac
-+AC_MSG_RESULT($enable_install_libiberty)
-+AC_MSG_NOTICE([target_header_dir = $target_header_dir])
-+
- GCC_NO_EXECUTABLES
- AC_PROG_CC
- AC_SYS_LARGEFILE
-@@ -379,7 +404,6 @@ fi
-
- setobjs=
- CHECK=
--target_header_dir=
- if test -n "${with_target_subdir}"; then
-
- # We are being configured as a target library. AC_REPLACE_FUNCS
-@@ -490,27 +514,6 @@ if test -n "${with_target_subdir}"; then
-
- esac
-
-- # We may wish to install the target headers somewhere.
-- AC_ARG_ENABLE(install-libiberty,
-- [ --enable-install-libiberty Install headers for end users],
-- enable_install_libiberty=$enableval,
-- enable_install_libiberty=no)dnl
--
-- # Option parsed, now set things appropriately.
-- case x"$enable_install_libiberty" in
-- xyes|x)
-- target_header_dir=libiberty
-- ;;
-- xno)
-- target_header_dir=
-- ;;
-- *)
-- # This could be sanity-checked in various ways...
-- target_header_dir="${enable_install_libiberty}"
-- ;;
-- esac
--
--
- else
-
- # Not a target library, so we set things up to run the test suite.
---
-1.9.3
-
diff --git a/package/binutils/arc-2015.12/600-poison-system-directories.patch b/package/binutils/arc-2015.12/600-poison-system-directories.patch
deleted file mode 100644
index 8a3bdc647c..0000000000
--- a/package/binutils/arc-2015.12/600-poison-system-directories.patch
+++ /dev/null
@@ -1,279 +0,0 @@
-Patch adapted to binutils arc-4.8-R3 and extended to use
-BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Upstream-Status: Inappropriate [distribution: codesourcery]
-
-Patch originally created by Mark Hatle, forward-ported to
-binutils 2.21 by Scott Garman.
-
-purpose: warn for uses of system directories when cross linking
-
-Code Merged from Sourcery G++ binutils 2.19 - 4.4-277
-
-2008-07-02 Joseph Myers <joseph@codesourcery.com>
-
- ld/
- * ld.h (args_type): Add error_poison_system_directories.
- * ld.texinfo (--error-poison-system-directories): Document.
- * ldfile.c (ldfile_add_library_path): Check
- command_line.error_poison_system_directories.
- * ldmain.c (main): Initialize
- command_line.error_poison_system_directories.
- * lexsup.c (enum option_values): Add
- OPTION_ERROR_POISON_SYSTEM_DIRECTORIES.
- (ld_options): Add --error-poison-system-directories.
- (parse_args): Handle new option.
-
-2007-06-13 Joseph Myers <joseph@codesourcery.com>
-
- ld/
- * config.in: Regenerate.
- * ld.h (args_type): Add poison_system_directories.
- * ld.texinfo (--no-poison-system-directories): Document.
- * ldfile.c (ldfile_add_library_path): Check
- command_line.poison_system_directories.
- * ldmain.c (main): Initialize
- command_line.poison_system_directories.
- * lexsup.c (enum option_values): Add
- OPTION_NO_POISON_SYSTEM_DIRECTORIES.
- (ld_options): Add --no-poison-system-directories.
- (parse_args): Handle new option.
-
-2007-04-20 Joseph Myers <joseph@codesourcery.com>
-
- Merge from Sourcery G++ binutils 2.17:
-
- 2007-03-20 Joseph Myers <joseph@codesourcery.com>
- Based on patch by Mark Hatle <mark.hatle@windriver.com>.
- ld/
- * configure.in (--enable-poison-system-directories): New option.
- * configure, config.in: Regenerate.
- * ldfile.c (ldfile_add_library_path): If
- ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib,
- /usr/lib, /usr/local/lib or /usr/X11R6/lib.
-
-Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
-Signed-off-by: Scott Garman <scott.a.garman@intel.com>
-
-Index: b/ld/config.in
-===================================================================
---- a/ld/config.in
-+++ b/ld/config.in
-@@ -11,6 +11,9 @@
- language is requested. */
- #undef ENABLE_NLS
-
-+/* Define to warn for use of native system library directories */
-+#undef ENABLE_POISON_SYSTEM_DIRECTORIES
-+
- /* Additional extension a shared object might have. */
- #undef EXTRA_SHLIB_EXTENSION
-
-Index: b/ld/configure
-===================================================================
---- a/ld/configure
-+++ b/ld/configure
-@@ -773,6 +773,7 @@
- enable_targets
- enable_64_bit_bfd
- with_sysroot
-+enable_poison_system_directories
- enable_gold
- enable_got
- enable_werror
-@@ -1428,6 +1429,8 @@
- (and sometimes confusing) to the casual installer
- --enable-targets alternative target configurations
- --enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)
-+ --enable-poison-system-directories
-+ warn for use of native system library directories
- --enable-gold[=ARG] build gold [ARG={default,yes,no}]
- --enable-got=<type> GOT handling scheme (target, single, negative,
- multigot)
-@@ -4338,7 +4341,18 @@
- 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
-
- # Check whether --enable-got was given.
- if test "${enable_got+set}" = set; then :
-Index: b/ld/configure.in
-===================================================================
---- a/ld/configure.in
-+++ b/ld/configure.in
-@@ -70,6 +70,16 @@
- AC_SUBST(TARGET_SYSTEM_ROOT)
- AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE)
-
-+AC_ARG_ENABLE([poison-system-directories],
-+ AS_HELP_STRING([--enable-poison-system-directories],
-+ [warn for use of native system library 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 library directories])
-+fi
-+
- dnl Use --enable-gold to decide if this linker should be the default.
- dnl "install_as_default" is set to false if gold is the default linker.
- dnl "installed_linker" is the installed BFD linker name.
-Index: b/ld/ldfile.c
-===================================================================
---- a/ld/ldfile.c
-+++ b/ld/ldfile.c
-@@ -116,6 +116,23 @@
- new_dirs->name = concat (ld_sysroot, name + 1, (const char *) NULL);
- else
- new_dirs->name = xstrdup (name);
-+
-+#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES
-+ if (command_line.poison_system_directories
-+ && ((!strncmp (name, "/lib", 4))
-+ || (!strncmp (name, "/usr/lib", 8))
-+ || (!strncmp (name, "/usr/local/lib", 14))
-+ || (!strncmp (name, "/usr/X11R6/lib", 14))))
-+ {
-+ if (command_line.error_poison_system_directories)
-+ einfo (_("%X%P: error: library search path \"%s\" is unsafe for "
-+ "cross-compilation\n"), name);
-+ else
-+ einfo (_("%P: warning: library search path \"%s\" is unsafe for "
-+ "cross-compilation\n"), name);
-+ }
-+#endif
-+
- }
-
- /* Try to open a BFD for a lang_input_statement. */
-Index: b/ld/ld.h
-===================================================================
---- a/ld/ld.h
-+++ b/ld/ld.h
-@@ -203,6 +203,14 @@
- /* If TRUE we'll just print the default output on stdout. */
- bfd_boolean print_output_format;
-
-+ /* If TRUE (the default) warn for uses of system directories when
-+ cross linking. */
-+ bfd_boolean poison_system_directories;
-+
-+ /* If TRUE (default FALSE) give an error for uses of system
-+ directories when cross linking instead of a warning. */
-+ bfd_boolean error_poison_system_directories;
-+
- /* Big or little endian as set on command line. */
- enum endian_enum endian;
-
-Index: b/ld/ldmain.c
-===================================================================
---- a/ld/ldmain.c
-+++ b/ld/ldmain.c
-@@ -265,6 +265,8 @@
- command_line.warn_search_mismatch = TRUE;
- command_line.check_section_addresses = -1;
- command_line.disable_target_specific_optimizations = -1;
-+ command_line.poison_system_directories = TRUE;
-+ command_line.error_poison_system_directories = FALSE;
-
- /* We initialize DEMANGLING based on the environment variable
- COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the
-Index: b/ld/ld.texinfo
-===================================================================
---- a/ld/ld.texinfo
-+++ b/ld/ld.texinfo
-@@ -2156,6 +2156,18 @@
-
- Passing @code{none} for @var{style} disables the setting from any
- @code{--build-id} options earlier on the command line.
-+
-+@kindex --no-poison-system-directories
-+@item --no-poison-system-directories
-+Do not warn for @option{-L} options using system directories such as
-+@file{/usr/lib} when cross linking. This option is intended for use
-+in chroot environments when such directories contain the correct
-+libraries for the target system rather than the host.
-+
-+@kindex --error-poison-system-directories
-+@item --error-poison-system-directories
-+Give an error instead of a warning for @option{-L} options using
-+system directories when cross linking.
- @end table
-
- @c man end
-Index: b/ld/lexsup.c
-===================================================================
---- a/ld/lexsup.c
-+++ b/ld/lexsup.c
-@@ -498,6 +498,14 @@
- TWO_DASHES },
- { {"wrap", required_argument, NULL, OPTION_WRAP},
- '\0', N_("SYMBOL"), N_("Use wrapper functions for SYMBOL"), TWO_DASHES },
-+ { {"no-poison-system-directories", no_argument, NULL,
-+ OPTION_NO_POISON_SYSTEM_DIRECTORIES},
-+ '\0', NULL, N_("Do not warn for -L options using system directories"),
-+ TWO_DASHES },
-+ { {"error-poison-system-directories", no_argument, NULL,
-+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES},
-+ '\0', NULL, N_("Give an error for -L options using system directories"),
-+ TWO_DASHES },
- };
-
- #define OPTION_COUNT ARRAY_SIZE (ld_options)
-@@ -510,6 +518,7 @@
- int ingroup = 0;
- char *default_dirlist = NULL;
- char *shortopts;
-+ char *BR_paranoid_env;
- struct option *longopts;
- struct option *really_longopts;
- int last_optind;
-@@ -1427,9 +1436,21 @@
- einfo (_("%P%X: --hash-size needs a numeric argument\n"));
- }
- break;
-+
-+ case OPTION_NO_POISON_SYSTEM_DIRECTORIES:
-+ command_line.poison_system_directories = FALSE;
-+ break;
-+
-+ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES:
-+ command_line.error_poison_system_directories = TRUE;
-+ break;
- }
- }
-
-+ BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH");
-+ if (BR_paranoid_env && strlen(BR_paranoid_env) > 0)
-+ command_line.error_poison_system_directories = TRUE;
-+
- while (ingroup)
- {
- lang_leave_group ();
-Index: b/ld/ldlex.h
-===================================================================
---- a/ld/ldlex.h
-+++ b/ld/ldlex.h
-@@ -136,6 +136,8 @@
- #endif /* ENABLE_PLUGINS */
- OPTION_DEFAULT_SCRIPT,
- OPTION_PRINT_OUTPUT_FORMAT,
-+ OPTION_NO_POISON_SYSTEM_DIRECTORIES,
-+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES,
- };
-
- /* The initial parser states. */
diff --git a/package/binutils/arc-2016.03/0300-ld-makefile.patch b/package/binutils/arc-2016.03/0300-ld-makefile.patch
new file mode 100644
index 0000000000..73cc098024
--- /dev/null
+++ b/package/binutils/arc-2016.03/0300-ld-makefile.patch
@@ -0,0 +1,41 @@
+From d76a7549b43974fe8564971a3f40459bc495a8a7 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Fri, 25 Dec 2015 11:40:53 +0100
+Subject: [PATCH] ld-makefile
+
+[Romain: rebase on top of 2.26]
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ ld/Makefile.am | 2 +-
+ ld/Makefile.in | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/ld/Makefile.am b/ld/Makefile.am
+index 0b3b049..3871c74 100644
+--- a/ld/Makefile.am
++++ b/ld/Makefile.am
+@@ -57,7 +57,7 @@ endif
+ # We put the scripts in the directory $(scriptdir)/ldscripts.
+ # We can't put the scripts in $(datadir) because the SEARCH_DIR
+ # directives need to be different for native and cross linkers.
+-scriptdir = $(tooldir)/lib
++scriptdir = $(libdir)
+
+ EMUL = @EMUL@
+ EMULATION_OFILES = @EMULATION_OFILES@
+diff --git a/ld/Makefile.in b/ld/Makefile.in
+index ed98f87..530e4c9 100644
+--- a/ld/Makefile.in
++++ b/ld/Makefile.in
+@@ -413,7 +413,7 @@ AM_CFLAGS = $(WARN_CFLAGS) $(ELF_CLFAGS)
+ # We put the scripts in the directory $(scriptdir)/ldscripts.
+ # We can't put the scripts in $(datadir) because the SEARCH_DIR
+ # directives need to be different for native and cross linkers.
+-scriptdir = $(tooldir)/lib
++scriptdir = $(libdir)
+ BASEDIR = $(srcdir)/..
+ BFDDIR = $(BASEDIR)/bfd
+ INCDIR = $(BASEDIR)/include
+--
+2.4.3
+
diff --git a/package/binutils/arc-2016.03/0301-check-ldrunpath-length.patch b/package/binutils/arc-2016.03/0301-check-ldrunpath-length.patch
new file mode 100644
index 0000000000..3b4c204c7f
--- /dev/null
+++ b/package/binutils/arc-2016.03/0301-check-ldrunpath-length.patch
@@ -0,0 +1,36 @@
+From ebe1cba46df52d7bf86def3d681271fd05fb453b Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Fri, 25 Dec 2015 11:41:47 +0100
+Subject: [PATCH] check-ldrunpath-length
+
+[Romain: rebase on top of 2.26]
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ ld/emultempl/elf32.em | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
+index 0405d4f..efd3300 100644
+--- a/ld/emultempl/elf32.em
++++ b/ld/emultempl/elf32.em
+@@ -1242,6 +1242,8 @@ fragment <<EOF
+ && command_line.rpath == NULL)
+ {
+ lib_path = (const char *) getenv ("LD_RUN_PATH");
++ if ((lib_path) && (strlen (lib_path) == 0))
++ lib_path = NULL;
+ if (gld${EMULATION_NAME}_search_needed (lib_path, &n,
+ force))
+ break;
+@@ -1523,6 +1525,8 @@ gld${EMULATION_NAME}_before_allocation (void)
+ rpath = command_line.rpath;
+ if (rpath == NULL)
+ rpath = (const char *) getenv ("LD_RUN_PATH");
++ if ((rpath) && (strlen (rpath) == 0))
++ rpath = NULL;
+
+ for (abfd = link_info.input_bfds; abfd; abfd = abfd->link.next)
+ if (bfd_get_flavour (abfd) == bfd_target_elf_flavour)
+--
+2.4.3
+
diff --git a/package/binutils/2.23.2/500-sysroot.patch b/package/binutils/arc-2016.03/0500-add-sysroot-fix-from-bug-3049.patch
index e49c795332..f67a43efdf 100644
--- a/package/binutils/2.23.2/500-sysroot.patch
+++ b/package/binutils/arc-2016.03/0500-add-sysroot-fix-from-bug-3049.patch
@@ -1,13 +1,25 @@
-Signed-off-by: Sven Rebhan <odinshorse@googlemail.com>
+From 30628870e583375f8927c04398c7219c6e9f703c Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Fri, 25 Dec 2015 11:42:48 +0100
+Subject: [PATCH] add sysroot fix from bug #3049
Always try to prepend the sysroot prefix to absolute filenames first.
http://bugs.gentoo.org/275666
http://sourceware.org/bugzilla/show_bug.cgi?id=10340
+Signed-off-by: Sven Rebhan <odinshorse@googlemail.com>
+[Romain: rebase on top of 2.26]
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ ld/ldfile.c | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/ld/ldfile.c b/ld/ldfile.c
+index 96f9ecc..1439309 100644
--- a/ld/ldfile.c
+++ b/ld/ldfile.c
-@@ -308,18 +308,25 @@
+@@ -335,18 +335,25 @@ ldfile_open_file_search (const char *arch,
directory first. */
if (! entry->flags.maybe_archive)
{
@@ -35,3 +47,6 @@ http://sourceware.org/bugzilla/show_bug.cgi?id=10340
return TRUE;
if (IS_ABSOLUTE_PATH (entry->filename))
+--
+2.4.3
+
diff --git a/package/binutils/2.23.2/600-poison-system-directories.patch b/package/binutils/arc-2016.03/0600-poison-system-directories.patch
index 780e48e801..d16994ec0c 100644
--- a/package/binutils/2.23.2/600-poison-system-directories.patch
+++ b/package/binutils/arc-2016.03/0600-poison-system-directories.patch
@@ -1,7 +1,16 @@
+From be366461dd49e760440fb28eaee5164eb281adcc Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Fri, 25 Dec 2015 11:45:38 +0100
+Subject: [PATCH] poison-system-directories
+
Patch adapted to binutils 2.23.2 and extended to use
BR_COMPILER_PARANOID_UNSAFE_PATH by Thomas Petazzoni.
+[Romain: rebase on top of 2.26]
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+[Gustavo: adapt to binutils 2.25]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Upstream-Status: Inappropriate [distribution: codesourcery]
@@ -48,7 +57,7 @@ Code Merged from Sourcery G++ binutils 2.19 - 4.4-277
2007-03-20 Joseph Myers <joseph@codesourcery.com>
Based on patch by Mark Hatle <mark.hatle@windriver.com>.
ld/
- * configure.in (--enable-poison-system-directories): New option.
+ * configure.ac (--enable-poison-system-directories): New option.
* configure, config.in: Regenerate.
* ldfile.c (ldfile_add_library_path): If
ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of /lib,
@@ -56,12 +65,23 @@ Code Merged from Sourcery G++ binutils 2.19 - 4.4-277
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
+---
+ ld/config.in | 3 +++
+ ld/configure | 14 ++++++++++++++
+ ld/configure.ac | 10 ++++++++++
+ ld/ld.h | 8 ++++++++
+ ld/ld.texinfo | 12 ++++++++++++
+ ld/ldfile.c | 17 +++++++++++++++++
+ ld/ldlex.h | 2 ++
+ ld/ldmain.c | 2 ++
+ ld/lexsup.c | 21 +++++++++++++++++++++
+ 9 files changed, 89 insertions(+)
-Index: b/ld/config.in
-===================================================================
+diff --git a/ld/config.in b/ld/config.in
+index 276fb77..35c58eb 100644
--- a/ld/config.in
+++ b/ld/config.in
-@@ -11,6 +11,9 @@
+@@ -14,6 +14,9 @@
language is requested. */
#undef ENABLE_NLS
@@ -71,20 +91,20 @@ Index: b/ld/config.in
/* Additional extension a shared object might have. */
#undef EXTRA_SHLIB_EXTENSION
-Index: b/ld/configure
-===================================================================
+diff --git a/ld/configure b/ld/configure
+index a446283..d1f9504 100755
--- a/ld/configure
+++ b/ld/configure
-@@ -773,6 +773,7 @@
+@@ -786,6 +786,7 @@ with_lib_path
enable_targets
enable_64_bit_bfd
with_sysroot
+enable_poison_system_directories
enable_gold
enable_got
- enable_werror
-@@ -1428,6 +1429,8 @@
- (and sometimes confusing) to the casual installer
+ enable_compressed_debug_sections
+@@ -1442,6 +1443,8 @@ Optional Features:
+ --disable-largefile omit support for large files
--enable-targets alternative target configurations
--enable-64-bit-bfd 64-bit support (on hosts with narrower word sizes)
+ --enable-poison-system-directories
@@ -92,7 +112,7 @@ Index: b/ld/configure
--enable-gold[=ARG] build gold [ARG={default,yes,no}]
--enable-got=<type> GOT handling scheme (target, single, negative,
multigot)
-@@ -4338,7 +4341,18 @@
+@@ -15491,7 +15494,18 @@ else
fi
@@ -111,11 +131,11 @@ Index: b/ld/configure
# Check whether --enable-got was given.
if test "${enable_got+set}" = set; then :
-Index: b/ld/configure.in
-===================================================================
---- a/ld/configure.in
-+++ b/ld/configure.in
-@@ -70,6 +70,16 @@
+diff --git a/ld/configure.ac b/ld/configure.ac
+index 188172d..2cd8443 100644
+--- a/ld/configure.ac
++++ b/ld/configure.ac
+@@ -95,6 +95,16 @@ AC_SUBST(use_sysroot)
AC_SUBST(TARGET_SYSTEM_ROOT)
AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE)
@@ -132,11 +152,53 @@ Index: b/ld/configure.in
dnl Use --enable-gold to decide if this linker should be the default.
dnl "install_as_default" is set to false if gold is the default linker.
dnl "installed_linker" is the installed BFD linker name.
-Index: b/ld/ldfile.c
-===================================================================
+diff --git a/ld/ld.h b/ld/ld.h
+index d84ec4e..3476b26 100644
+--- a/ld/ld.h
++++ b/ld/ld.h
+@@ -164,6 +164,14 @@ typedef struct {
+ /* If set, display the target memory usage (per memory region). */
+ bfd_boolean print_memory_usage;
+
++ /* If TRUE (the default) warn for uses of system directories when
++ cross linking. */
++ bfd_boolean poison_system_directories;
++
++ /* If TRUE (default FALSE) give an error for uses of system
++ directories when cross linking instead of a warning. */
++ bfd_boolean error_poison_system_directories;
++
+ /* Big or little endian as set on command line. */
+ enum endian_enum endian;
+
+diff --git a/ld/ld.texinfo b/ld/ld.texinfo
+index 1dd7492..fb1438e 100644
+--- a/ld/ld.texinfo
++++ b/ld/ld.texinfo
+@@ -2332,6 +2332,18 @@ string identifying the original linked file does not change.
+
+ Passing @code{none} for @var{style} disables the setting from any
+ @code{--build-id} options earlier on the command line.
++
++@kindex --no-poison-system-directories
++@item --no-poison-system-directories
++Do not warn for @option{-L} options using system directories such as
++@file{/usr/lib} when cross linking. This option is intended for use
++in chroot environments when such directories contain the correct
++libraries for the target system rather than the host.
++
++@kindex --error-poison-system-directories
++@item --error-poison-system-directories
++Give an error instead of a warning for @option{-L} options using
++system directories when cross linking.
+ @end table
+
+ @c man end
+diff --git a/ld/ldfile.c b/ld/ldfile.c
+index 1439309..086b354 100644
--- a/ld/ldfile.c
+++ b/ld/ldfile.c
-@@ -116,6 +116,23 @@
+@@ -114,6 +114,23 @@ ldfile_add_library_path (const char *name, bfd_boolean cmdline)
new_dirs->name = concat (ld_sysroot, name + 1, (const char *) NULL);
else
new_dirs->name = xstrdup (name);
@@ -160,81 +222,52 @@ Index: b/ld/ldfile.c
}
/* Try to open a BFD for a lang_input_statement. */
-Index: b/ld/ld.h
-===================================================================
---- a/ld/ld.h
-+++ b/ld/ld.h
-@@ -203,6 +203,14 @@
- /* If TRUE we'll just print the default output on stdout. */
- bfd_boolean print_output_format;
-
-+ /* If TRUE (the default) warn for uses of system directories when
-+ cross linking. */
-+ bfd_boolean poison_system_directories;
-+
-+ /* If TRUE (default FALSE) give an error for uses of system
-+ directories when cross linking instead of a warning. */
-+ bfd_boolean error_poison_system_directories;
-+
- /* Big or little endian as set on command line. */
- enum endian_enum endian;
+diff --git a/ld/ldlex.h b/ld/ldlex.h
+index 6f11e7b..0ca3110 100644
+--- a/ld/ldlex.h
++++ b/ld/ldlex.h
+@@ -144,6 +144,8 @@ enum option_values
+ OPTION_PRINT_MEMORY_USAGE,
+ OPTION_REQUIRE_DEFINED_SYMBOL,
+ OPTION_ORPHAN_HANDLING,
++ OPTION_NO_POISON_SYSTEM_DIRECTORIES,
++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES,
+ };
-Index: b/ld/ldmain.c
-===================================================================
+ /* The initial parser states. */
+diff --git a/ld/ldmain.c b/ld/ldmain.c
+index bb0b9cc..a23c56c 100644
--- a/ld/ldmain.c
+++ b/ld/ldmain.c
-@@ -265,6 +265,8 @@
+@@ -257,6 +257,8 @@ main (int argc, char **argv)
+ command_line.warn_mismatch = TRUE;
command_line.warn_search_mismatch = TRUE;
command_line.check_section_addresses = -1;
- command_line.disable_target_specific_optimizations = -1;
+ command_line.poison_system_directories = TRUE;
+ command_line.error_poison_system_directories = FALSE;
/* We initialize DEMANGLING based on the environment variable
COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the
-Index: b/ld/ld.texinfo
-===================================================================
---- a/ld/ld.texinfo
-+++ b/ld/ld.texinfo
-@@ -2154,6 +2154,18 @@
-
- Passing @code{none} for @var{style} disables the setting from any
- @code{--build-id} options earlier on the command line.
-+
-+@kindex --no-poison-system-directories
-+@item --no-poison-system-directories
-+Do not warn for @option{-L} options using system directories such as
-+@file{/usr/lib} when cross linking. This option is intended for use
-+in chroot environments when such directories contain the correct
-+libraries for the target system rather than the host.
-+
-+@kindex --error-poison-system-directories
-+@item --error-poison-system-directories
-+Give an error instead of a warning for @option{-L} options using
-+system directories when cross linking.
- @end table
-
- @c man end
-Index: b/ld/lexsup.c
-===================================================================
+diff --git a/ld/lexsup.c b/ld/lexsup.c
+index 4cad209..be7d584 100644
--- a/ld/lexsup.c
+++ b/ld/lexsup.c
-@@ -498,6 +498,14 @@
+@@ -530,6 +530,14 @@ static const struct ld_option ld_options[] =
+ { {"orphan-handling", required_argument, NULL, OPTION_ORPHAN_HANDLING},
+ '\0', N_("=MODE"), N_("Control how orphan sections are handled."),
TWO_DASHES },
- { {"wrap", required_argument, NULL, OPTION_WRAP},
- '\0', N_("SYMBOL"), N_("Use wrapper functions for SYMBOL"), TWO_DASHES },
+ { {"no-poison-system-directories", no_argument, NULL,
-+ OPTION_NO_POISON_SYSTEM_DIRECTORIES},
++ OPTION_NO_POISON_SYSTEM_DIRECTORIES},
+ '\0', NULL, N_("Do not warn for -L options using system directories"),
+ TWO_DASHES },
+ { {"error-poison-system-directories", no_argument, NULL,
-+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES},
++ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES},
+ '\0', NULL, N_("Give an error for -L options using system directories"),
+ TWO_DASHES },
};
#define OPTION_COUNT ARRAY_SIZE (ld_options)
-@@ -510,6 +518,7 @@
+@@ -542,6 +550,7 @@ parse_args (unsigned argc, char **argv)
int ingroup = 0;
char *default_dirlist = NULL;
char *shortopts;
@@ -242,19 +275,23 @@ Index: b/ld/lexsup.c
struct option *longopts;
struct option *really_longopts;
int last_optind;
-@@ -1427,9 +1436,21 @@
- einfo (_("%P%X: --hash-size needs a numeric argument\n"));
+@@ -1516,6 +1525,14 @@ parse_args (unsigned argc, char **argv)
}
break;
+
++ case OPTION_NO_POISON_SYSTEM_DIRECTORIES:
++ command_line.poison_system_directories = FALSE;
++ break;
+
-+ case OPTION_NO_POISON_SYSTEM_DIRECTORIES:
-+ command_line.poison_system_directories = FALSE;
-+ break;
++ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES:
++ command_line.error_poison_system_directories = TRUE;
++ break;
+
-+ case OPTION_ERROR_POISON_SYSTEM_DIRECTORIES:
-+ command_line.error_poison_system_directories = TRUE;
-+ break;
- }
+ case OPTION_PUSH_STATE:
+ input_flags.pushed = xmemdup (&input_flags,
+ sizeof (input_flags),
+@@ -1559,6 +1576,10 @@ parse_args (unsigned argc, char **argv)
+ command_line.soname = NULL;
}
+ BR_paranoid_env = getenv("BR_COMPILER_PARANOID_UNSAFE_PATH");
@@ -264,16 +301,6 @@ Index: b/ld/lexsup.c
while (ingroup)
{
lang_leave_group ();
-Index: b/ld/ldlex.h
-===================================================================
---- a/ld/ldlex.h
-+++ b/ld/ldlex.h
-@@ -136,6 +136,8 @@
- #endif /* ENABLE_PLUGINS */
- OPTION_DEFAULT_SCRIPT,
- OPTION_PRINT_OUTPUT_FORMAT,
-+ OPTION_NO_POISON_SYSTEM_DIRECTORIES,
-+ OPTION_ERROR_POISON_SYSTEM_DIRECTORIES,
- };
-
- /* The initial parser states. */
+--
+2.4.3
+
diff --git a/package/binutils/arc-2016.03/0700-Fix-issue-with-dynamic-relocs-not-being-generated-wi.patch b/package/binutils/arc-2016.03/0700-Fix-issue-with-dynamic-relocs-not-being-generated-wi.patch
new file mode 100644
index 0000000000..c2967a3891
--- /dev/null
+++ b/package/binutils/arc-2016.03/0700-Fix-issue-with-dynamic-relocs-not-being-generated-wi.patch
@@ -0,0 +1,34 @@
+From e59d8728f2fd57938ff28bb48cb47ddc7dbf8271 Mon Sep 17 00:00:00 2001
+From: Cupertino Miranda <cmiranda@synopsys.com>
+Date: Tue, 24 May 2016 18:00:28 +0200
+Subject: [PATCH] Fix issue with dynamic relocs not being generated with -pie.
+
+---
+ bfd/elf32-arc.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/bfd/elf32-arc.c b/bfd/elf32-arc.c
+index c2d05e4..00af1a5 100644
+--- a/bfd/elf32-arc.c
++++ b/bfd/elf32-arc.c
+@@ -1492,7 +1492,7 @@ elf_arc_relocate_section (bfd * output_bfd,
+ case R_ARC_32_ME:
+ case R_ARC_PC32:
+ case R_ARC_32_PCREL:
+- if (bfd_link_pic (info) && !bfd_link_pie (info)
++ if ((bfd_link_pic (info) || bfd_link_pie (info))
+ && ((r_type != R_ARC_PC32 && r_type != R_ARC_32_PCREL)
+ || (h != NULL
+ && h->dynindx != -1
+@@ -1774,7 +1774,7 @@ elf_arc_check_relocs (bfd * abfd,
+ /* FALLTHROUGH */
+ case R_ARC_PC32:
+ case R_ARC_32_PCREL:
+- if (bfd_link_pic (info) && !bfd_link_pie (info)
++ if ((bfd_link_pic (info) || bfd_link_pie (info))
+ && ((r_type != R_ARC_PC32 && r_type != R_ARC_32_PCREL)
+ || (h != NULL
+ && h->dynindx != -1
+--
+2.5.5
+
diff --git a/package/binutils/binutils.hash b/package/binutils/binutils.hash
index 916b68c1c1..338bb8da77 100644
--- a/package/binutils/binutils.hash
+++ b/package/binutils/binutils.hash
@@ -1,7 +1,7 @@
# From ftp://gcc.gnu.org/pub/binutils/releases/sha512.sum
-sha512 dec753bbba008f1526b89cf1bd85feba78f362f5333ffdf93953fd131eb755976dec82a0a4ba38c43d2434da007137780cfe674de5414be5cf7ce7fbc6af6d16 binutils-2.23.2.tar.bz2
sha512 5ec95ad47d49b12c4558a8db0ca2109d3ee1955e3776057f3330c4506f8f4d1cf5e505fbf8a16b98403a0fcdeaaf986fe0a22be6456247dbdace63ce1f776b12 binutils-2.24.tar.bz2
sha512 0b36dda0e6d32cd25613c0e64b56b28312515c54d6a159efd3db9a86717f114ab0a0a1f69d08975084d55713ebaeab64e4085c9b3d1c3fa86712869f80eb954d binutils-2.25.1.tar.bz2
sha512 e77e1b8dbbcbaf9ac2fae95c4403615808af3be03b2e1d32448cd3a7d32c43273f8bcace3f2de84ec120a982879295673029da306e2885dbf5f990584932cfc7 binutils-2.26.tar.bz2
-# No hash for the ARC variant, comes from the github-helper:
-none xxx binutils-arc-2015.12.tar.gz
+
+# Locally calculated (fetched from Github)
+sha512 566312760ef564902fd85e281ef1370426c1451a16eb1d3e2faea7ec62100ae70ac9a5f33a7a5f87cdc744e82dd03203378fa4db1652c6b7856d865404dd19f8 binutils-arc-2016.03.tar.gz
diff --git a/package/binutils/binutils.mk b/package/binutils/binutils.mk
index ca39f0b146..9ed7262eb0 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.12
+BINUTILS_VERSION = arc-2016.03
else
BINUTILS_VERSION = 2.25.1
endif
diff --git a/package/boost/Config.in b/package/boost/Config.in
index ed67285a58..4cfd44eb94 100644
--- a/package/boost/Config.in
+++ b/package/boost/Config.in
@@ -1,14 +1,9 @@
comment "boost needs a toolchain w/ C++, threads, wchar"
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
-config BR2_PACKAGE_BOOST_ARCH_SUPPORTS
- bool
- default y if !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
-
config BR2_PACKAGE_BOOST
bool "boost"
depends on BR2_INSTALL_LIBSTDCPP
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
# Boost could theorically be built with threading=single, but
# that unfortunately doesn't work. Until someone fixes that,
# let's depend on threads.
diff --git a/package/cc-tool/Config.in b/package/cc-tool/Config.in
index f8e4531e26..b2cf97969b 100644
--- a/package/cc-tool/Config.in
+++ b/package/cc-tool/Config.in
@@ -2,7 +2,6 @@ config BR2_PACKAGE_CC_TOOL
bool "cc-tool"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
depends on BR2_USE_WCHAR # boost-filesystem
select BR2_PACKAGE_LIBUSB
select BR2_PACKAGE_BOOST
@@ -19,5 +18,4 @@ config BR2_PACKAGE_CC_TOOL
http://sourceforge.net/projects/cctool/
comment "cc-tool 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/dmidecode/0001-build-system-fixes.patch b/package/dmidecode/0001-build-system-fixes.patch
index 275f9df7f1..00897f82ad 100644
--- a/package/dmidecode/0001-build-system-fixes.patch
+++ b/package/dmidecode/0001-build-system-fixes.patch
@@ -21,10 +21,10 @@ Index: b/Makefile
+override CFLAGS += \
+ -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual \
+ -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef
- #CFLAGS += -DBIGENDIAN
- #CFLAGS += -DALIGNMENT_WORKAROUND
-@@ -23,7 +24,7 @@
+ # Let lseek and mmap support 64-bit wide offsets
+ CFLAGS += -D_FILE_OFFSET_BITS=64
+@@ -27,7 +28,7 @@ CFLAGS += -O2
#CFLAGS += -g
# Pass linker flags here
diff --git a/package/dmidecode/dmidecode.hash b/package/dmidecode/dmidecode.hash
index 7098ed0ace..307c306ad7 100644
--- a/package/dmidecode/dmidecode.hash
+++ b/package/dmidecode/dmidecode.hash
@@ -1,2 +1,2 @@
-# Locally calculated after checking pgp signature
-sha256 5a8214b99c1762f4510bd92baa279336e5fed6e5cd2e418d46d95a4ecc783922 dmidecode-2.12.tar.gz
+# http://http.debian.net/debian/pool/main/d/dmidecode/dmidecode_3.0-2.dsc
+sha256 7ec35bb193729c1d593a1460b59d82d24b89102ab23fd0416e6cf4325d077e45 dmidecode-3.0.tar.xz
diff --git a/package/dmidecode/dmidecode.mk b/package/dmidecode/dmidecode.mk
index 06ac19bda2..4298d88198 100644
--- a/package/dmidecode/dmidecode.mk
+++ b/package/dmidecode/dmidecode.mk
@@ -4,7 +4,8 @@
#
################################################################################
-DMIDECODE_VERSION = 2.12
+DMIDECODE_VERSION = 3.0
+DMIDECODE_SOURCE = dmidecode-$(DMIDECODE_VERSION).tar.xz
DMIDECODE_SITE = http://download.savannah.gnu.org/releases/dmidecode
DMIDECODE_LICENSE = GPLv2+
DMIDECODE_LICENSE_FILES = LICENSE
diff --git a/package/dnsmasq/dnsmasq.hash b/package/dnsmasq/dnsmasq.hash
index 57dc4b175c..a73e911a26 100644
--- a/package/dnsmasq/dnsmasq.hash
+++ b/package/dnsmasq/dnsmasq.hash
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
-sha256 640c4e1d4c298e42458419cd78cfc26acc549401b1a34d271cd3e0e4226941f1 dnsmasq-2.75.tar.xz
+sha256 4b92698dee19ca0cb2a8f2e48f1d2dffd01a21eb15d1fbed4cf085630c8c9f96 dnsmasq-2.76.tar.xz
diff --git a/package/dnsmasq/dnsmasq.mk b/package/dnsmasq/dnsmasq.mk
index 7fb120003c..e8240b9003 100644
--- a/package/dnsmasq/dnsmasq.mk
+++ b/package/dnsmasq/dnsmasq.mk
@@ -4,7 +4,7 @@
#
################################################################################
-DNSMASQ_VERSION = 2.75
+DNSMASQ_VERSION = 2.76
DNSMASQ_SOURCE = dnsmasq-$(DNSMASQ_VERSION).tar.xz
DNSMASQ_SITE = http://thekelleys.org.uk/dnsmasq
DNSMASQ_MAKE_ENV = $(TARGET_MAKE_ENV) CC="$(TARGET_CC)"
diff --git a/package/dos2unix/dos2unix.hash b/package/dos2unix/dos2unix.hash
index 7e1a120028..1169592fce 100644
--- a/package/dos2unix/dos2unix.hash
+++ b/package/dos2unix/dos2unix.hash
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
-sha256 f4d5df24d181c2efecf7631aab6e894489012396092cf206829f1f9a98556b94 dos2unix-7.3.1.tar.gz
+sha256 8ccda7bbc5a2f903dafd95900abb5bf5e77a769b572ef25150fde4056c5f30c5 dos2unix-7.3.4.tar.gz
diff --git a/package/dos2unix/dos2unix.mk b/package/dos2unix/dos2unix.mk
index 21e03aecb0..82fa26f013 100644
--- a/package/dos2unix/dos2unix.mk
+++ b/package/dos2unix/dos2unix.mk
@@ -4,7 +4,7 @@
#
################################################################################
-DOS2UNIX_VERSION = 7.3.1
+DOS2UNIX_VERSION = 7.3.4
DOS2UNIX_SITE = http://waterlan.home.xs4all.nl/dos2unix
DOS2UNIX_LICENSE = BSD-2c
DOS2UNIX_LICENSE_FILES = COPYING.txt
diff --git a/package/dosfstools/0001-mkfs-Default-to-64-32-heads-sectors-for-targets-smalle.patch b/package/dosfstools/0001-mkfs-Default-to-64-32-heads-sectors-for-targets-smalle.patch
new file mode 100644
index 0000000000..ff3c3ffa44
--- /dev/null
+++ b/package/dosfstools/0001-mkfs-Default-to-64-32-heads-sectors-for-targets-smalle.patch
@@ -0,0 +1,42 @@
+From 1e76e5778a1885452939a79d9145b80634a5b023 Mon Sep 17 00:00:00 2001
+From: Andreas Bombe <aeb@debian.org>
+Date: Wed, 11 May 2016 03:44:58 +0200
+Subject: [PATCH] mkfs: Default to 64/32 heads/sectors for targets smaller than
+ 512 MB
+
+This may put defaults in certain use cases a little bit more in line
+with the old defaults in versions up to 3.0.28. It has mostly aesthetic
+value in most cases.
+
+Signed-off-by: Andreas Bombe <aeb@debian.org>
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+Patch status: upstream
+
+ src/mkfs.fat.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/src/mkfs.fat.c b/src/mkfs.fat.c
+index 8a320fd..bad492b 100644
+--- a/src/mkfs.fat.c
++++ b/src/mkfs.fat.c
+@@ -519,6 +519,16 @@ static void establish_params(struct device_info *info)
+ unsigned int cluster_size = 4; /* starting point for FAT12 and FAT16 */
+ int def_root_dir_entries = 512;
+
++ if (info->size < 512 * 1024 * 1024) {
++ /*
++ * These values are more or less meaningless, but we can at least
++ * use less extreme values for smaller filesystems where the large
++ * dummy values signifying LBA only access are not needed.
++ */
++ sec_per_track = 32;
++ heads = 64;
++ }
++
+ if (info->type != TYPE_FIXED) {
+ /* enter default parameters for floppy disks if the size matches */
+ switch (info->size / 1024) {
+--
+2.7.3
+
diff --git a/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch b/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch
deleted file mode 100644
index 34ebc240b5..0000000000
--- a/package/dosfstools/0001-mkfs.fat-fix-incorrect-int-type.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 7a589ef6dab52ad32a296939f0ed2acb4d76b2a7 Mon Sep 17 00:00:00 2001
-From: "Yann E. MORIN" <yann.morin.1998@free.fr>
-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" <yann.morin.1998@free.fr>
----
-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/dosfstools/dosfstools.hash b/package/dosfstools/dosfstools.hash
index f852195868..777b8d9e3f 100644
--- a/package/dosfstools/dosfstools.hash
+++ b/package/dosfstools/dosfstools.hash
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
-sha256 ee95913044ecf2719b63ea11212917649709a6e53209a72d622135aaa8517ee2 dosfstools-3.0.28.tar.xz
+sha256 9037738953559d1efe04fc5408b6846216cc0138f7f9d32de80b6ec3c35e7daf dosfstools-4.0.tar.xz
diff --git a/package/dosfstools/dosfstools.mk b/package/dosfstools/dosfstools.mk
index b7f7d96b85..28a7b421c2 100644
--- a/package/dosfstools/dosfstools.mk
+++ b/package/dosfstools/dosfstools.mk
@@ -4,65 +4,49 @@
#
################################################################################
-DOSFSTOOLS_VERSION = 3.0.28
+DOSFSTOOLS_VERSION = 4.0
DOSFSTOOLS_SOURCE = dosfstools-$(DOSFSTOOLS_VERSION).tar.xz
DOSFSTOOLS_SITE = https://github.com/dosfstools/dosfstools/releases/download/v$(DOSFSTOOLS_VERSION)
DOSFSTOOLS_LICENSE = GPLv3+
DOSFSTOOLS_LICENSE_FILES = COPYING
+DOSFSTOOLS_CONF_OPTS = --enable-compat-symlinks --exec-prefix=/
+HOST_DOSFSTOOLS_CONF_OPTS = --enable-compat-symlinks
# Avoid target dosfstools dependencies, no host-libiconv
HOST_DOSFSTOOLS_DEPENDENCIES =
-DOSFSTOOLS_CFLAGS = $(TARGET_CFLAGS) -D_GNU_SOURCE
+ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
+DOSFSTOOLS_CONF_OPTS += --with-udev
+DOSFSTOOLS_DEPENDENCIES += udev
+else
+DOSFSTOOLS_CONF_OPTS += --without-udev
+endif
ifneq ($(BR2_ENABLE_LOCALE),y)
+DOSFSTOOLS_CONF_OPTS += LIBS="-liconv"
DOSFSTOOLS_DEPENDENCIES += libiconv
-DOSFSTOOLS_LDLIBS += -liconv
endif
-define DOSFSTOOLS_BUILD_CMDS
- $(MAKE) $(TARGET_CONFIGURE_OPTS) \
- CFLAGS="$(DOSFSTOOLS_CFLAGS)" LDLIBS="$(DOSFSTOOLS_LDLIBS)" -C $(@D)
-endef
-
-ifeq ($(BR2_PACKAGE_DOSFSTOOLS_FATLABEL),y)
-define DOSFSTOOLS_INSTALL_FATLABEL
- $(INSTALL) -D -m 755 $(@D)/fatlabel $(TARGET_DIR)/sbin/fatlabel
- ln -sf fatlabel $(TARGET_DIR)/sbin/dosfslabel
+ifeq ($(BR2_PACKAGE_DOSFSTOOLS_FATLABEL),)
+define DOSFSTOOLS_REMOVE_FATLABEL
+ rm -f $(addprefix $(TARGET_DIR)/sbin/,dosfslabel fatlabel)
endef
+DOSFSTOOLS_POST_INSTALL_TARGET_HOOKS += DOSFSTOOLS_REMOVE_FATLABEL
endif
-ifeq ($(BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT),y)
-define DOSFSTOOLS_INSTALL_FSCK_FAT
- $(INSTALL) -D -m 755 $(@D)/fsck.fat $(TARGET_DIR)/sbin/fsck.fat
- ln -fs fsck.fat $(TARGET_DIR)/sbin/dosfsck
- ln -fs fsck.fat $(TARGET_DIR)/sbin/fsck.msdos
- ln -fs fsck.fat $(TARGET_DIR)/sbin/fsck.vfat
+ifeq ($(BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT),)
+define DOSFSTOOLS_REMOVE_FSCK_FAT
+ rm -f $(addprefix $(TARGET_DIR)/sbin/,fsck.fat dosfsck fsck.msdos fsck.vfat)
endef
+DOSFSTOOLS_POST_INSTALL_TARGET_HOOKS += DOSFSTOOLS_REMOVE_FSCK_FAT
endif
-ifeq ($(BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT),y)
-define DOSFSTOOLS_INSTALL_MKFS_FAT
- $(INSTALL) -D -m 755 $(@D)/mkfs.fat $(TARGET_DIR)/sbin/mkfs.fat
- ln -fs mkfs.fat $(TARGET_DIR)/sbin/mkdosfs
- ln -fs mkfs.fat $(TARGET_DIR)/sbin/mkfs.msdos
- ln -fs mkfs.fat $(TARGET_DIR)/sbin/mkfs.vfat
+ifeq ($(BR2_PACKAGE_DOSFSTOOLS_MKFS_FAT),)
+define DOSFSTOOLS_REMOVE_MKFS_FAT
+ rm -f $(addprefix $(TARGET_DIR)/sbin/,mkfs.fat mkdosfs mkfs.msdos mkfs.vfat)
endef
+DOSFSTOOLS_POST_INSTALL_TARGET_HOOKS += DOSFSTOOLS_REMOVE_MKFS_FAT
endif
-define DOSFSTOOLS_INSTALL_TARGET_CMDS
- $(DOSFSTOOLS_INSTALL_FATLABEL)
- $(DOSFSTOOLS_INSTALL_FSCK_FAT)
- $(DOSFSTOOLS_INSTALL_MKFS_FAT)
-endef
-
-define HOST_DOSFSTOOLS_BUILD_CMDS
- $(MAKE) $(HOST_CONFIGURE_OPTS) -C $(@D)
-endef
-
-define HOST_DOSFSTOOLS_INSTALL_CMDS
- $(MAKE) -C $(@D) $(HOST_CONFIGURE_OPTS) PREFIX=$(HOST_DIR)/usr install
-endef
-
-$(eval $(generic-package))
-$(eval $(host-generic-package))
+$(eval $(autotools-package))
+$(eval $(host-autotools-package))
diff --git a/package/e2fsprogs/Config.in b/package/e2fsprogs/Config.in
index e540337d7f..cf43dbcc69 100644
--- a/package/e2fsprogs/Config.in
+++ b/package/e2fsprogs/Config.in
@@ -62,6 +62,15 @@ config BR2_PACKAGE_E2FSPROGS_FSCK
bool "fsck"
default y
+config BR2_PACKAGE_E2FSPROGS_FUSE2FS
+ bool "fuse2fs"
+ depends on !BR2_STATIC_LIBS # libfuse
+ depends on BR2_TOOLCHAIN_HAS_THREADS # libfuse
+ select BR2_PACKAGE_LIBFUSE
+
+comment "fuse2fs needs a toolchain w/ threads, dynamic library"
+ depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
+
config BR2_PACKAGE_E2FSPROGS_LOGSAVE
bool "logsave"
default y
diff --git a/package/e2fsprogs/e2fsprogs.hash b/package/e2fsprogs/e2fsprogs.hash
index 1585037750..3cc90fddf8 100644
--- a/package/e2fsprogs/e2fsprogs.hash
+++ b/package/e2fsprogs/e2fsprogs.hash
@@ -1,2 +1,2 @@
-# From https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.42.13/sha256sums.asc
-sha256 e16474b5a3a30f9197160c4b91bd48d5a463583049c0fcc405b6f0f7075aa0c7 e2fsprogs-1.42.13.tar.xz
+# From https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.43/sha256sums.asc
+sha256 d027eec0282e169eb55229beefca258c425c9d96f65292e2c004012d5353cd38 e2fsprogs-1.43.tar.xz
diff --git a/package/e2fsprogs/e2fsprogs.mk b/package/e2fsprogs/e2fsprogs.mk
index 3de4cd4872..c1cbf715a4 100644
--- a/package/e2fsprogs/e2fsprogs.mk
+++ b/package/e2fsprogs/e2fsprogs.mk
@@ -4,17 +4,19 @@
#
################################################################################
-E2FSPROGS_VERSION = 1.42.13
+E2FSPROGS_VERSION = 1.43
E2FSPROGS_SOURCE = e2fsprogs-$(E2FSPROGS_VERSION).tar.xz
E2FSPROGS_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/people/tytso/e2fsprogs/v$(E2FSPROGS_VERSION)
E2FSPROGS_LICENSE = GPLv2, libuuid BSD-3c, libss and libet MIT-like with advertising clause
-E2FSPROGS_LICENSE_FILES = COPYING lib/uuid/COPYING lib/ss/mit-sipb-copyright.h lib/et/internal.h
+E2FSPROGS_LICENSE_FILES = NOTICE lib/uuid/COPYING lib/ss/mit-sipb-copyright.h lib/et/internal.h
E2FSPROGS_INSTALL_STAGING = YES
E2FSPROGS_INSTALL_STAGING_OPTS = DESTDIR=$(STAGING_DIR) install-libs
+E2FSPROGS_DEPENDENCIES = host-pkgconf util-linux
# e4defrag doesn't build on older systems like RHEL5.x, and we don't
# need it on the host anyway.
-HOST_E2FSPROGS_CONF_OPTS += --disable-defrag
+# Disable fuse2fs as well to avoid carrying over deps, and it's unused
+HOST_E2FSPROGS_CONF_OPTS += --disable-defrag --disable-fuse2fs
E2FSPROGS_CONF_OPTS = \
$(if $(BR2_STATIC_LIBS),,--enable-elf-shlibs) \
@@ -30,6 +32,13 @@ E2FSPROGS_CONF_OPTS = \
--disable-testio-debug \
--disable-rpath
+ifeq ($(BR2_PACKAGE_E2FSPROGS_FUSE2FS),y)
+E2FSPROGS_CONF_OPTS += --enable-fuse2fs
+E2FSPROGS_DEPENDENCIES += libfuse
+else
+E2FSPROGS_CONF_OPTS += --disable-fuse2fs
+endif
+
ifeq ($(BR2_nios2),y)
E2FSPROGS_CONF_ENV += ac_cv_func_fallocate=no
endif
@@ -40,8 +49,6 @@ ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y)
E2FSPROGS_CONF_ENV += LIBS=-lintl
endif
-E2FSPROGS_DEPENDENCIES = host-pkgconf util-linux
-
E2FSPROGS_MAKE_OPTS = \
LDCONFIG=true
diff --git a/package/ficl/0001-fix-Makefile.patch b/package/ficl/0001-fix-Makefile.patch
new file mode 100644
index 0000000000..d5a25c43f0
--- /dev/null
+++ b/package/ficl/0001-fix-Makefile.patch
@@ -0,0 +1,47 @@
+fix dependency in Makefiles
+
+there is no longer a sysdep.h file.
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+diff --git a/Makefile b/Makefile
+index 976d00a..7f73c44 100644
+--- a/Makefile
++++ b/Makefile
+@@ -29,7 +29,7 @@ libficl.so.$(MAJOR).$(MINOR): $(OBJECTS)
+ -o libficl.so.$(MAJOR).$(MINOR) $(OBJECTS)
+ ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so
+
+-main: main.o ficl.h sysdep.h libficl.so.$(MAJOR).$(MINOR)
++main: main.o ficl.h libficl.so.$(MAJOR).$(MINOR)
+ $(CC) $(CFLAGS) $(LDFLAGS) main.o -o main -L. -lficl -lm
+ ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so.$(MAJOR)
+
+diff --git a/Makefile.ansi b/Makefile.ansi
+index e510fcd..170e6eb 100644
+--- a/Makefile.ansi
++++ b/Makefile.ansi
+@@ -29,7 +29,7 @@ libficl.so.$(MAJOR).$(MINOR): $(OBJECTS)
+ -o libficl.so.$(MAJOR).$(MINOR) $(OBJECTS)
+ ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so
+
+-main: main.o ficl.h sysdep.h libficl.so.$(MAJOR).$(MINOR)
++main: main.o ficl.h libficl.so.$(MAJOR).$(MINOR)
+ $(CC) main.o -o main -L. -lficl -lm
+ ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so.$(MAJOR)
+
+diff --git a/Makefile.linux b/Makefile.linux
+index d447e7e..7f2cdfe 100644
+--- a/Makefile.linux
++++ b/Makefile.linux
+@@ -29,7 +29,7 @@ libficl.so.$(MAJOR).$(MINOR): $(OBJECTS)
+ -o libficl.so.$(MAJOR).$(MINOR) $(OBJECTS)
+ ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so
+
+-main: main.o ficl.h sysdep.h libficl.so.$(MAJOR).$(MINOR)
++main: main.o ficl.h libficl.so.$(MAJOR).$(MINOR)
+ $(CC) main.o -o main -L. -lficl -lm
+ ln -sf libficl.so.$(MAJOR).$(MINOR) libficl.so.$(MAJOR)
+
+--
+
diff --git a/package/ficl/Config.in b/package/ficl/Config.in
new file mode 100644
index 0000000000..3445a6428f
--- /dev/null
+++ b/package/ficl/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_FICL
+ bool "ficl"
+ help
+ Ficl is a programming language interpreter designed to be embedded
+ into other systems as a command, macro, and development
+ prototyping language.
+ Ficl is an acronym for "Forth Inspired Command Language".
+
+ http://ficl.sourceforge.net
diff --git a/package/ficl/ficl.hash b/package/ficl/ficl.hash
new file mode 100644
index 0000000000..4bfbbd070a
--- /dev/null
+++ b/package/ficl/ficl.hash
@@ -0,0 +1,2 @@
+# Locally computed:
+sha256 4daf74f3d3d6f8b86ea7cb47bc24931d50b4809b50ba34ca32e0ca1e972bd3a3 ficl-4.1.0.tar.gz
diff --git a/package/ficl/ficl.mk b/package/ficl/ficl.mk
new file mode 100644
index 0000000000..6c212a6c43
--- /dev/null
+++ b/package/ficl/ficl.mk
@@ -0,0 +1,59 @@
+################################################################################
+#
+# ficl
+#
+################################################################################
+
+FICL_VERSION_MAJOR = 4.1
+FICL_VERSION = $(FICL_VERSION_MAJOR).0
+FICL_SITE = http://downloads.sourceforge.net/project/ficl/ficl-all/ficl$(FICL_VERSION_MAJOR)
+FICL_LICENSE = BSD-2c
+FICL_LICENSE_FILES = ReadMe.txt
+FICL_INSTALL_STAGING = YES
+
+ifeq ($(BR2_STATIC_LIBS),y)
+FICL_BUILD_TARGETS += ficl
+define FICL_INSTALL_STATIC_BIN
+ $(INSTALL) -D -m 0755 $(@D)/ficl $(TARGET_DIR)/usr/bin/ficl
+endef
+endif
+
+ifeq ($(BR2_STATIC_LIBS)$(BR2_SHARED_STATIC_LIBS),y)
+FICL_BUILD_TARGETS += libficl.a
+define FICL_INSTALL_STATIC_LIB
+ $(INSTALL) -D -m 0644 $(@D)/libficl.a $(STAGING_DIR)/usr/lib/libficl.a
+endef
+endif
+
+ifeq ($(BR2_SHARED_LIBS)$(BR2_SHARED_STATIC_LIBS),y)
+FICL_BUILD_TARGETS += main libficl.so.$(FICL_VERSION)
+define FICL_INSTALL_SHARED_BIN
+ $(INSTALL) -D -m 0755 $(@D)/main $(TARGET_DIR)/usr/bin/ficl
+endef
+define FICL_INSTALL_SHARED_LIB
+ $(INSTALL) -D -m 0755 $(@D)/libficl.so.$(FICL_VERSION) $(1)/usr/lib/libficl.so.$(FICL_VERSION)
+ ln -sf libficl.so.$(FICL_VERSION) $(1)/usr/lib/libficl.so.4
+ ln -sf libficl.so.$(FICL_VERSION) $(1)/usr/lib/libficl.so
+endef
+endif
+
+define FICL_BUILD_CMDS
+ $(MAKE) -C $(@D) -f Makefile.linux $(TARGET_CONFIGURE_OPTS) \
+ CPPFLAGS="$(TARGET_CPPFLAGS) -I. -Dlinux" $(FICL_BUILD_TARGETS)
+endef
+
+define FICL_INSTALL_STAGING_CMDS
+ $(FICL_INSTALL_STATIC_LIB)
+ $(call FICL_INSTALL_SHARED_LIB,$(STAGING_DIR))
+ $(INSTALL) -D -m 0644 $(@D)/ficl.h $(STAGING_DIR)/usr/include/ficl.h
+ $(INSTALL) -D -m 0644 $(@D)/ficllocal.h $(STAGING_DIR)/usr/include/ficllocal.h
+ $(INSTALL) -D -m 0644 $(@D)/ficlplatform/unix.h $(STAGING_DIR)/usr/include/ficlplatform/unix.h
+endef
+
+define FICL_INSTALL_TARGET_CMDS
+ $(FICL_INSTALL_STATIC_BIN)
+ $(FICL_INSTALL_SHARED_BIN)
+ $(call FICL_INSTALL_SHARED_LIB,$(TARGET_DIR))
+endef
+
+$(eval $(generic-package))
diff --git a/package/file/file.hash b/package/file/file.hash
index 2c53af1dce..d20fe46f1d 100644
--- a/package/file/file.hash
+++ b/package/file/file.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 2ef32b4ec936b0ff7b59a021dce56086a716663b6df1138c7ea597d396bf50cf file-5.26.tar.gz
+sha256 c2e7d509b1167c4915901ecd257ee924d229a348bf988df6d1934ef0fa34a1a7 file-5.27.tar.gz
diff --git a/package/file/file.mk b/package/file/file.mk
index 282b2da080..0154c10717 100644
--- a/package/file/file.mk
+++ b/package/file/file.mk
@@ -4,7 +4,7 @@
#
################################################################################
-FILE_VERSION = 5.26
+FILE_VERSION = 5.27
FILE_SITE = ftp://ftp.astron.com/pub/file
FILE_DEPENDENCIES = host-file zlib
FILE_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99'
diff --git a/package/fmc/fmc.mk b/package/fmc/fmc.mk
index 49c5fe86ad..2146bc2f27 100644
--- a/package/fmc/fmc.mk
+++ b/package/fmc/fmc.mk
@@ -4,7 +4,7 @@
#
################################################################################
-FMC_VERSION = fsl-sdk-v1.5-rc3
+FMC_VERSION = fsl-sdk-v1.8
FMC_SITE = git://git.freescale.com/ppc/sdk/fmc.git
FMC_LICENSE = MIT
FMC_LICENSE_FILES = COPYING
diff --git a/package/fmlib/fmlib.mk b/package/fmlib/fmlib.mk
index 978810bad9..6b154d0a38 100644
--- a/package/fmlib/fmlib.mk
+++ b/package/fmlib/fmlib.mk
@@ -4,7 +4,7 @@
#
################################################################################
-FMLIB_VERSION = fsl-sdk-v1.5-rc3
+FMLIB_VERSION = fsl-sdk-v1.8
FMLIB_SITE = git://git.freescale.com/ppc/sdk/fmlib.git
FMLIB_LICENSE = BSD-3c, GPLv2+
FMLIB_LICENSE_FILES = COPYING
diff --git a/package/gcc/4.8.5/130-fix_build_with_gcc-6.patch b/package/gcc/4.8.5/130-fix_build_with_gcc-6.patch
new file mode 100644
index 0000000000..62ac3cbd65
--- /dev/null
+++ b/package/gcc/4.8.5/130-fix_build_with_gcc-6.patch
@@ -0,0 +1,153 @@
+From 1e5f1089dec3af328fd03125d6778f666d0bd4e4 Mon Sep 17 00:00:00 2001
+From: edlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 25 Feb 2016 15:33:50 +0000
+Subject: [PATCH 1/1] 2016-02-25 Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ Backported from mainline
+ 2016-02-19 Jakub Jelinek <jakub@redhat.com>
+ Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ * Make-lang.in: Invoke gperf with -L C++.
+ * cfns.gperf: Remove prototypes for hash and libc_name_p
+ inlines.
+ * cfns.h: Regenerated.
+ * except.c (nothrow_libfn_p): Adjust.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@233720 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ gcc/cp/Make-lang.in | 2 +-
+ gcc/cp/cfns.gperf | 10 ++--------
+ gcc/cp/cfns.h | 41 ++++++++++++++---------------------------
+ gcc/cp/except.c | 3 ++-
+ 5 files changed, 31 insertions(+), 37 deletions(-)
+
+diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
+index e98beb1..b09fb02 100644
+--- a/gcc/cp/Make-lang.in
++++ b/gcc/cp/Make-lang.in
+@@ -111,7 +111,7 @@ else
+ # deleting the $(srcdir)/cp/cfns.h file.
+ $(srcdir)/cp/cfns.h:
+ endif
+- gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
++ gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L C++ \
+ $(srcdir)/cp/cfns.gperf --output-file $(srcdir)/cp/cfns.h
+
+ #
+diff --git a/gcc/cp/cfns.gperf b/gcc/cp/cfns.gperf
+index 68acd3d..214ecf6 100644
+--- a/gcc/cp/cfns.gperf
++++ b/gcc/cp/cfns.gperf
+@@ -1,3 +1,5 @@
++%language=C++
++%define class-name libc_name
+ %{
+ /* Copyright (C) 2000-2015 Free Software Foundation, Inc.
+
+@@ -16,14 +18,6 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ %}
+ %%
+ # The standard C library functions, for feeding to gperf; the result is used
+diff --git a/gcc/cp/cfns.h b/gcc/cp/cfns.h
+index 1c6665d..596f413 100644
+--- a/gcc/cp/cfns.h
++++ b/gcc/cp/cfns.h
+@@ -1,5 +1,5 @@
+-/* ANSI-C code produced by gperf version 3.0.3 */
+-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C cfns.gperf */
++/* C++ code produced by gperf version 3.0.4 */
++/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ --output-file cfns.h cfns.gperf */
+
+ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+ && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+@@ -28,7 +28,7 @@
+ #error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+ #endif
+
+-#line 1 "cfns.gperf"
++#line 3 "cfns.gperf"
+
+ /* Copyright (C) 2000-2015 Free Software Foundation, Inc.
+
+@@ -47,25 +47,18 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ /* maximum key range = 391, duplicates = 0 */
+
+-#ifdef __GNUC__
+-__inline
+-#else
+-#ifdef __cplusplus
+-inline
+-#endif
+-#endif
+-static unsigned int
+-hash (register const char *str, register unsigned int len)
++class libc_name
++{
++private:
++ static inline unsigned int hash (const char *str, unsigned int len);
++public:
++ static const char *libc_name_p (const char *str, unsigned int len);
++};
++
++inline unsigned int
++libc_name::hash (register const char *str, register unsigned int len)
+ {
+ static const unsigned short asso_values[] =
+ {
+@@ -122,14 +115,8 @@ hash (register const char *str, register unsigned int len)
+ return hval + asso_values[(unsigned char)str[len - 1]];
+ }
+
+-#ifdef __GNUC__
+-__inline
+-#ifdef __GNUC_STDC_INLINE__
+-__attribute__ ((__gnu_inline__))
+-#endif
+-#endif
+ const char *
+-libc_name_p (register const char *str, register unsigned int len)
++libc_name::libc_name_p (register const char *str, register unsigned int len)
+ {
+ enum
+ {
+diff --git a/gcc/cp/except.c b/gcc/cp/except.c
+index 3ff1ce6..2f2e396 100644
+--- a/gcc/cp/except.c
++++ b/gcc/cp/except.c
+@@ -1040,7 +1040,8 @@ nothrow_libfn_p (const_tree fn)
+ unless the system headers are playing rename tricks, and if
+ they are, we don't want to be confused by them. */
+ id = DECL_NAME (fn);
+- return !!libc_name_p (IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id));
++ return !!libc_name::libc_name_p (IDENTIFIER_POINTER (id),
++ IDENTIFIER_LENGTH (id));
+ }
+
+ /* Returns nonzero if an exception of type FROM will be caught by a
+--
+1.7.1
diff --git a/package/gcc/4.9.3/130-fix_build_with_gcc-6.patch b/package/gcc/4.9.3/130-fix_build_with_gcc-6.patch
new file mode 100644
index 0000000000..62ac3cbd65
--- /dev/null
+++ b/package/gcc/4.9.3/130-fix_build_with_gcc-6.patch
@@ -0,0 +1,153 @@
+From 1e5f1089dec3af328fd03125d6778f666d0bd4e4 Mon Sep 17 00:00:00 2001
+From: edlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 25 Feb 2016 15:33:50 +0000
+Subject: [PATCH 1/1] 2016-02-25 Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ Backported from mainline
+ 2016-02-19 Jakub Jelinek <jakub@redhat.com>
+ Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ * Make-lang.in: Invoke gperf with -L C++.
+ * cfns.gperf: Remove prototypes for hash and libc_name_p
+ inlines.
+ * cfns.h: Regenerated.
+ * except.c (nothrow_libfn_p): Adjust.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@233720 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ gcc/cp/Make-lang.in | 2 +-
+ gcc/cp/cfns.gperf | 10 ++--------
+ gcc/cp/cfns.h | 41 ++++++++++++++---------------------------
+ gcc/cp/except.c | 3 ++-
+ 5 files changed, 31 insertions(+), 37 deletions(-)
+
+diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
+index e98beb1..b09fb02 100644
+--- a/gcc/cp/Make-lang.in
++++ b/gcc/cp/Make-lang.in
+@@ -111,7 +111,7 @@ else
+ # deleting the $(srcdir)/cp/cfns.h file.
+ $(srcdir)/cp/cfns.h:
+ endif
+- gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
++ gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L C++ \
+ $(srcdir)/cp/cfns.gperf --output-file $(srcdir)/cp/cfns.h
+
+ #
+diff --git a/gcc/cp/cfns.gperf b/gcc/cp/cfns.gperf
+index 68acd3d..214ecf6 100644
+--- a/gcc/cp/cfns.gperf
++++ b/gcc/cp/cfns.gperf
+@@ -1,3 +1,5 @@
++%language=C++
++%define class-name libc_name
+ %{
+ /* Copyright (C) 2000-2015 Free Software Foundation, Inc.
+
+@@ -16,14 +18,6 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ %}
+ %%
+ # The standard C library functions, for feeding to gperf; the result is used
+diff --git a/gcc/cp/cfns.h b/gcc/cp/cfns.h
+index 1c6665d..596f413 100644
+--- a/gcc/cp/cfns.h
++++ b/gcc/cp/cfns.h
+@@ -1,5 +1,5 @@
+-/* ANSI-C code produced by gperf version 3.0.3 */
+-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C cfns.gperf */
++/* C++ code produced by gperf version 3.0.4 */
++/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ --output-file cfns.h cfns.gperf */
+
+ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+ && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+@@ -28,7 +28,7 @@
+ #error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+ #endif
+
+-#line 1 "cfns.gperf"
++#line 3 "cfns.gperf"
+
+ /* Copyright (C) 2000-2015 Free Software Foundation, Inc.
+
+@@ -47,25 +47,18 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ /* maximum key range = 391, duplicates = 0 */
+
+-#ifdef __GNUC__
+-__inline
+-#else
+-#ifdef __cplusplus
+-inline
+-#endif
+-#endif
+-static unsigned int
+-hash (register const char *str, register unsigned int len)
++class libc_name
++{
++private:
++ static inline unsigned int hash (const char *str, unsigned int len);
++public:
++ static const char *libc_name_p (const char *str, unsigned int len);
++};
++
++inline unsigned int
++libc_name::hash (register const char *str, register unsigned int len)
+ {
+ static const unsigned short asso_values[] =
+ {
+@@ -122,14 +115,8 @@ hash (register const char *str, register unsigned int len)
+ return hval + asso_values[(unsigned char)str[len - 1]];
+ }
+
+-#ifdef __GNUC__
+-__inline
+-#ifdef __GNUC_STDC_INLINE__
+-__attribute__ ((__gnu_inline__))
+-#endif
+-#endif
+ const char *
+-libc_name_p (register const char *str, register unsigned int len)
++libc_name::libc_name_p (register const char *str, register unsigned int len)
+ {
+ enum
+ {
+diff --git a/gcc/cp/except.c b/gcc/cp/except.c
+index 3ff1ce6..2f2e396 100644
+--- a/gcc/cp/except.c
++++ b/gcc/cp/except.c
+@@ -1040,7 +1040,8 @@ nothrow_libfn_p (const_tree fn)
+ unless the system headers are playing rename tricks, and if
+ they are, we don't want to be confused by them. */
+ id = DECL_NAME (fn);
+- return !!libc_name_p (IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id));
++ return !!libc_name::libc_name_p (IDENTIFIER_POINTER (id),
++ IDENTIFIER_LENGTH (id));
+ }
+
+ /* Returns nonzero if an exception of type FROM will be caught by a
+--
+1.7.1
diff --git a/package/gcc/5.3.0/130-fix_build_with_gcc-6.patch b/package/gcc/5.3.0/130-fix_build_with_gcc-6.patch
new file mode 100644
index 0000000000..62ac3cbd65
--- /dev/null
+++ b/package/gcc/5.3.0/130-fix_build_with_gcc-6.patch
@@ -0,0 +1,153 @@
+From 1e5f1089dec3af328fd03125d6778f666d0bd4e4 Mon Sep 17 00:00:00 2001
+From: edlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 25 Feb 2016 15:33:50 +0000
+Subject: [PATCH 1/1] 2016-02-25 Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ Backported from mainline
+ 2016-02-19 Jakub Jelinek <jakub@redhat.com>
+ Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ * Make-lang.in: Invoke gperf with -L C++.
+ * cfns.gperf: Remove prototypes for hash and libc_name_p
+ inlines.
+ * cfns.h: Regenerated.
+ * except.c (nothrow_libfn_p): Adjust.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@233720 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ gcc/cp/Make-lang.in | 2 +-
+ gcc/cp/cfns.gperf | 10 ++--------
+ gcc/cp/cfns.h | 41 ++++++++++++++---------------------------
+ gcc/cp/except.c | 3 ++-
+ 5 files changed, 31 insertions(+), 37 deletions(-)
+
+diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
+index e98beb1..b09fb02 100644
+--- a/gcc/cp/Make-lang.in
++++ b/gcc/cp/Make-lang.in
+@@ -111,7 +111,7 @@ else
+ # deleting the $(srcdir)/cp/cfns.h file.
+ $(srcdir)/cp/cfns.h:
+ endif
+- gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
++ gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L C++ \
+ $(srcdir)/cp/cfns.gperf --output-file $(srcdir)/cp/cfns.h
+
+ #
+diff --git a/gcc/cp/cfns.gperf b/gcc/cp/cfns.gperf
+index 68acd3d..214ecf6 100644
+--- a/gcc/cp/cfns.gperf
++++ b/gcc/cp/cfns.gperf
+@@ -1,3 +1,5 @@
++%language=C++
++%define class-name libc_name
+ %{
+ /* Copyright (C) 2000-2015 Free Software Foundation, Inc.
+
+@@ -16,14 +18,6 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ %}
+ %%
+ # The standard C library functions, for feeding to gperf; the result is used
+diff --git a/gcc/cp/cfns.h b/gcc/cp/cfns.h
+index 1c6665d..596f413 100644
+--- a/gcc/cp/cfns.h
++++ b/gcc/cp/cfns.h
+@@ -1,5 +1,5 @@
+-/* ANSI-C code produced by gperf version 3.0.3 */
+-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C cfns.gperf */
++/* C++ code produced by gperf version 3.0.4 */
++/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ --output-file cfns.h cfns.gperf */
+
+ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+ && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+@@ -28,7 +28,7 @@
+ #error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+ #endif
+
+-#line 1 "cfns.gperf"
++#line 3 "cfns.gperf"
+
+ /* Copyright (C) 2000-2015 Free Software Foundation, Inc.
+
+@@ -47,25 +47,18 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ /* maximum key range = 391, duplicates = 0 */
+
+-#ifdef __GNUC__
+-__inline
+-#else
+-#ifdef __cplusplus
+-inline
+-#endif
+-#endif
+-static unsigned int
+-hash (register const char *str, register unsigned int len)
++class libc_name
++{
++private:
++ static inline unsigned int hash (const char *str, unsigned int len);
++public:
++ static const char *libc_name_p (const char *str, unsigned int len);
++};
++
++inline unsigned int
++libc_name::hash (register const char *str, register unsigned int len)
+ {
+ static const unsigned short asso_values[] =
+ {
+@@ -122,14 +115,8 @@ hash (register const char *str, register unsigned int len)
+ return hval + asso_values[(unsigned char)str[len - 1]];
+ }
+
+-#ifdef __GNUC__
+-__inline
+-#ifdef __GNUC_STDC_INLINE__
+-__attribute__ ((__gnu_inline__))
+-#endif
+-#endif
+ const char *
+-libc_name_p (register const char *str, register unsigned int len)
++libc_name::libc_name_p (register const char *str, register unsigned int len)
+ {
+ enum
+ {
+diff --git a/gcc/cp/except.c b/gcc/cp/except.c
+index 3ff1ce6..2f2e396 100644
+--- a/gcc/cp/except.c
++++ b/gcc/cp/except.c
+@@ -1040,7 +1040,8 @@ nothrow_libfn_p (const_tree fn)
+ unless the system headers are playing rename tricks, and if
+ they are, we don't want to be confused by them. */
+ id = DECL_NAME (fn);
+- return !!libc_name_p (IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id));
++ return !!libc_name::libc_name_p (IDENTIFIER_POINTER (id),
++ IDENTIFIER_LENGTH (id));
+ }
+
+ /* Returns nonzero if an exception of type FROM will be caught by a
+--
+1.7.1
diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
index ee4d0eb9f4..cfb0958ff0 100644
--- a/package/gcc/Config.in.host
+++ b/package/gcc/Config.in.host
@@ -100,7 +100,7 @@ config BR2_GCC_VERSION
default "4.9.3" if BR2_GCC_VERSION_4_9_X
default "5.3.0" if BR2_GCC_VERSION_5_X
default "6.1.0" if BR2_GCC_VERSION_6_X
- default "arc-2015.12" if BR2_GCC_VERSION_4_8_ARC
+ default "arc-2016.03" if BR2_GCC_VERSION_4_8_ARC
config BR2_EXTRA_GCC_CONFIG_OPTIONS
string "Additional gcc options"
@@ -128,7 +128,7 @@ config BR2_TOOLCHAIN_BUILDROOT_FORTRAN
config BR2_GCC_ENABLE_TLS
bool "Enable compiler tls support" if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
default y
- depends on BR2_PTHREADS_NATIVE || BR2_TOOLCHAIN_BUILDROOT_EGLIBC || BR2_TOOLCHAIN_BUILDROOT_GLIBC
+ depends on BR2_PTHREADS_NATIVE || BR2_TOOLCHAIN_BUILDROOT_GLIBC
help
Enable the compiler to generate code for accessing
thread local storage variables
diff --git a/package/gcc/arc-2015.12/130-fix_build_with_gcc-6.patch b/package/gcc/arc-2015.12/130-fix_build_with_gcc-6.patch
new file mode 100644
index 0000000000..62ac3cbd65
--- /dev/null
+++ b/package/gcc/arc-2015.12/130-fix_build_with_gcc-6.patch
@@ -0,0 +1,153 @@
+From 1e5f1089dec3af328fd03125d6778f666d0bd4e4 Mon Sep 17 00:00:00 2001
+From: edlinger <edlinger@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Thu, 25 Feb 2016 15:33:50 +0000
+Subject: [PATCH 1/1] 2016-02-25 Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ Backported from mainline
+ 2016-02-19 Jakub Jelinek <jakub@redhat.com>
+ Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ * Make-lang.in: Invoke gperf with -L C++.
+ * cfns.gperf: Remove prototypes for hash and libc_name_p
+ inlines.
+ * cfns.h: Regenerated.
+ * except.c (nothrow_libfn_p): Adjust.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@233720 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ gcc/cp/Make-lang.in | 2 +-
+ gcc/cp/cfns.gperf | 10 ++--------
+ gcc/cp/cfns.h | 41 ++++++++++++++---------------------------
+ gcc/cp/except.c | 3 ++-
+ 5 files changed, 31 insertions(+), 37 deletions(-)
+
+diff --git a/gcc/cp/Make-lang.in b/gcc/cp/Make-lang.in
+index e98beb1..b09fb02 100644
+--- a/gcc/cp/Make-lang.in
++++ b/gcc/cp/Make-lang.in
+@@ -111,7 +111,7 @@ else
+ # deleting the $(srcdir)/cp/cfns.h file.
+ $(srcdir)/cp/cfns.h:
+ endif
+- gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
++ gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L C++ \
+ $(srcdir)/cp/cfns.gperf --output-file $(srcdir)/cp/cfns.h
+
+ #
+diff --git a/gcc/cp/cfns.gperf b/gcc/cp/cfns.gperf
+index 68acd3d..214ecf6 100644
+--- a/gcc/cp/cfns.gperf
++++ b/gcc/cp/cfns.gperf
+@@ -1,3 +1,5 @@
++%language=C++
++%define class-name libc_name
+ %{
+ /* Copyright (C) 2000-2015 Free Software Foundation, Inc.
+
+@@ -16,14 +18,6 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ %}
+ %%
+ # The standard C library functions, for feeding to gperf; the result is used
+diff --git a/gcc/cp/cfns.h b/gcc/cp/cfns.h
+index 1c6665d..596f413 100644
+--- a/gcc/cp/cfns.h
++++ b/gcc/cp/cfns.h
+@@ -1,5 +1,5 @@
+-/* ANSI-C code produced by gperf version 3.0.3 */
+-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C cfns.gperf */
++/* C++ code produced by gperf version 3.0.4 */
++/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ --output-file cfns.h cfns.gperf */
+
+ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+ && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+@@ -28,7 +28,7 @@
+ #error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+ #endif
+
+-#line 1 "cfns.gperf"
++#line 3 "cfns.gperf"
+
+ /* Copyright (C) 2000-2015 Free Software Foundation, Inc.
+
+@@ -47,25 +47,18 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ /* maximum key range = 391, duplicates = 0 */
+
+-#ifdef __GNUC__
+-__inline
+-#else
+-#ifdef __cplusplus
+-inline
+-#endif
+-#endif
+-static unsigned int
+-hash (register const char *str, register unsigned int len)
++class libc_name
++{
++private:
++ static inline unsigned int hash (const char *str, unsigned int len);
++public:
++ static const char *libc_name_p (const char *str, unsigned int len);
++};
++
++inline unsigned int
++libc_name::hash (register const char *str, register unsigned int len)
+ {
+ static const unsigned short asso_values[] =
+ {
+@@ -122,14 +115,8 @@ hash (register const char *str, register unsigned int len)
+ return hval + asso_values[(unsigned char)str[len - 1]];
+ }
+
+-#ifdef __GNUC__
+-__inline
+-#ifdef __GNUC_STDC_INLINE__
+-__attribute__ ((__gnu_inline__))
+-#endif
+-#endif
+ const char *
+-libc_name_p (register const char *str, register unsigned int len)
++libc_name::libc_name_p (register const char *str, register unsigned int len)
+ {
+ enum
+ {
+diff --git a/gcc/cp/except.c b/gcc/cp/except.c
+index 3ff1ce6..2f2e396 100644
+--- a/gcc/cp/except.c
++++ b/gcc/cp/except.c
+@@ -1040,7 +1040,8 @@ nothrow_libfn_p (const_tree fn)
+ unless the system headers are playing rename tricks, and if
+ they are, we don't want to be confused by them. */
+ id = DECL_NAME (fn);
+- return !!libc_name_p (IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id));
++ return !!libc_name::libc_name_p (IDENTIFIER_POINTER (id),
++ IDENTIFIER_LENGTH (id));
+ }
+
+ /* Returns nonzero if an exception of type FROM will be caught by a
+--
+1.7.1
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
deleted file mode 100644
index 48228dcb6f..0000000000
--- a/package/gcc/arc-2015.12/900-UPDATE-Fix-handling-complex-PIC-moves.patch
+++ /dev/null
@@ -1,103 +0,0 @@
-From b55922d45fd16f5e8fc7c3885da42b2b9b37754d Mon Sep 17 00:00:00 2001
-From: Claudiu Zissulescu <claziss@synopsys.com>
-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 <claziss@synopsys.com>
-
- * 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
deleted file mode 100644
index 28cb7c1913..0000000000
--- a/package/gcc/arc-2015.12/901-UPDATE1-Fix-handling-complex-PIC-moves.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From f00b0f17d6889d811468c2c77508fbea8bfc377d Mon Sep 17 00:00:00 2001
-From: Claudiu Zissulescu <claziss@synopsys.com>
-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 <claziss@synopsys.com>
-
- * 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
deleted file mode 100644
index dc03a028ed..0000000000
--- a/package/gcc/arc-2015.12/950-Don-t-allow-mcompact-casesi-for-ARCv2.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From 09463827001a7b8094f4b9460514370a1876d908 Mon Sep 17 00:00:00 2001
-From: Claudiu Zissulescu <claziss@synopsys.com>
-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 <claziss@synopsys.com>
-
- * 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/arc-2016.03/130-pr43538.patch b/package/gcc/arc-2016.03/130-pr43538.patch
new file mode 100644
index 0000000000..19e57bb059
--- /dev/null
+++ b/package/gcc/arc-2016.03/130-pr43538.patch
@@ -0,0 +1,25 @@
+From c037df1be41f8daf4d581d7ffa4ec8cfa640bccf Mon Sep 17 00:00:00 2001
+From: glisse <glisse@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Fri, 25 Apr 2014 08:03:08 +0000
+Subject: [PATCH] 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
+
+ PR target/43538
+ * mt-gnu: Don't reset CXXFLAGS_FOR_TARGET.
+
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209784 138bc75d-0d04-0410-961f-82ee72b054a4
+Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
+---
+ config/mt-gnu | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/config/mt-gnu b/config/mt-gnu
+index 15bf417..5c696f5 100644
+--- a/config/mt-gnu
++++ b/config/mt-gnu
+@@ -1 +1 @@
+-CXXFLAGS_FOR_TARGET = $(CXXFLAGS) -D_GNU_SOURCE
++CXXFLAGS_FOR_TARGET += -D_GNU_SOURCE
+--
+2.1.4
+
diff --git a/package/gcc/arc-2016.03/301-missing-execinfo_h.patch b/package/gcc/arc-2016.03/301-missing-execinfo_h.patch
new file mode 100644
index 0000000000..00efda24aa
--- /dev/null
+++ b/package/gcc/arc-2016.03/301-missing-execinfo_h.patch
@@ -0,0 +1,13 @@
+Index: gcc-4.8.0/boehm-gc/include/gc.h
+===================================================================
+--- gcc-4.8.0.orig/boehm-gc/include/gc.h 2007-04-23 23:10:09.000000000 +0200
++++ gcc-4.8.0/boehm-gc/include/gc.h 2013-03-23 17:39:20.000000000 +0100
+@@ -503,7 +503,7 @@
+ #if defined(__linux__) || defined(__GLIBC__)
+ # include <features.h>
+ # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
+- && !defined(__ia64__)
++ && !defined(__ia64__) && !defined(__UCLIBC__)
+ # ifndef GC_HAVE_BUILTIN_BACKTRACE
+ # define GC_HAVE_BUILTIN_BACKTRACE
+ # endif
diff --git a/package/gcc/arc-2016.03/305-libmudflap-susv3-legacy.patch b/package/gcc/arc-2016.03/305-libmudflap-susv3-legacy.patch
new file mode 100644
index 0000000000..35d5f50207
--- /dev/null
+++ b/package/gcc/arc-2016.03/305-libmudflap-susv3-legacy.patch
@@ -0,0 +1,49 @@
+Index: gcc-4.8.0/libmudflap/mf-hooks2.c
+===================================================================
+--- gcc-4.8.0.orig/libmudflap/mf-hooks2.c 2013-02-03 18:48:05.000000000 +0100
++++ gcc-4.8.0/libmudflap/mf-hooks2.c 2013-03-23 17:39:43.000000000 +0100
+@@ -424,7 +424,7 @@
+ {
+ TRACE ("%s\n", __PRETTY_FUNCTION__);
+ MF_VALIDATE_EXTENT(s, n, __MF_CHECK_WRITE, "bzero region");
+- bzero (s, n);
++ memset (s, 0, n);
+ }
+
+
+@@ -434,7 +434,7 @@
+ TRACE ("%s\n", __PRETTY_FUNCTION__);
+ MF_VALIDATE_EXTENT(src, n, __MF_CHECK_READ, "bcopy src");
+ MF_VALIDATE_EXTENT(dest, n, __MF_CHECK_WRITE, "bcopy dest");
+- bcopy (src, dest, n);
++ memmove (dest, src, n);
+ }
+
+
+@@ -444,7 +444,7 @@
+ TRACE ("%s\n", __PRETTY_FUNCTION__);
+ MF_VALIDATE_EXTENT(s1, n, __MF_CHECK_READ, "bcmp 1st arg");
+ MF_VALIDATE_EXTENT(s2, n, __MF_CHECK_READ, "bcmp 2nd arg");
+- return bcmp (s1, s2, n);
++ return n == 0 ? 0 : memcmp (s1, s2, n);
+ }
+
+
+@@ -453,7 +453,7 @@
+ size_t n = strlen (s);
+ TRACE ("%s\n", __PRETTY_FUNCTION__);
+ MF_VALIDATE_EXTENT(s, CLAMPADD(n, 1), __MF_CHECK_READ, "index region");
+- return index (s, c);
++ return strchr (s, c);
+ }
+
+
+@@ -462,7 +462,7 @@
+ size_t n = strlen (s);
+ TRACE ("%s\n", __PRETTY_FUNCTION__);
+ MF_VALIDATE_EXTENT(s, CLAMPADD(n, 1), __MF_CHECK_READ, "rindex region");
+- return rindex (s, c);
++ return strrchr (s, c);
+ }
+
+ /* XXX: stpcpy, memccpy */
diff --git a/package/gcc/arc-2016.03/842-PR60155.patch b/package/gcc/arc-2016.03/842-PR60155.patch
new file mode 100644
index 0000000000..7bc2122fd4
--- /dev/null
+++ b/package/gcc/arc-2016.03/842-PR60155.patch
@@ -0,0 +1,111 @@
+From gcc bugzilla https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60155
+Upstream status: in trunk.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+--- trunk/gcc/gcse.c 2014/02/12 14:50:06 207726
++++ trunk/gcc/gcse.c 2014/04/04 22:25:51 209134
+@@ -2502,6 +2502,65 @@
+ }
+ }
+
++struct set_data
++{
++ rtx insn;
++ const_rtx set;
++ int nsets;
++};
++
++/* Increment number of sets and record set in DATA. */
++
++static void
++record_set_data (rtx dest, const_rtx set, void *data)
++{
++ struct set_data *s = (struct set_data *)data;
++
++ if (GET_CODE (set) == SET)
++ {
++ /* We allow insns having multiple sets, where all but one are
++ dead as single set insns. In the common case only a single
++ set is present, so we want to avoid checking for REG_UNUSED
++ notes unless necessary. */
++ if (s->nsets == 1
++ && find_reg_note (s->insn, REG_UNUSED, SET_DEST (s->set))
++ && !side_effects_p (s->set))
++ s->nsets = 0;
++
++ if (!s->nsets)
++ {
++ /* Record this set. */
++ s->nsets += 1;
++ s->set = set;
++ }
++ else if (!find_reg_note (s->insn, REG_UNUSED, dest)
++ || side_effects_p (set))
++ s->nsets += 1;
++ }
++}
++
++static const_rtx
++single_set_gcse (rtx insn)
++{
++ struct set_data s;
++ rtx pattern;
++
++ gcc_assert (INSN_P (insn));
++
++ /* Optimize common case. */
++ pattern = PATTERN (insn);
++ if (GET_CODE (pattern) == SET)
++ return pattern;
++
++ s.insn = insn;
++ s.nsets = 0;
++ note_stores (pattern, record_set_data, &s);
++
++ /* Considered invariant insns have exactly one set. */
++ gcc_assert (s.nsets == 1);
++ return s.set;
++}
++
+ /* Emit move from SRC to DEST noting the equivalence with expression computed
+ in INSN. */
+
+@@ -2509,7 +2568,8 @@
+ gcse_emit_move_after (rtx dest, rtx src, rtx insn)
+ {
+ rtx new_rtx;
+- rtx set = single_set (insn), set2;
++ const_rtx set = single_set_gcse (insn);
++ rtx set2;
+ rtx note;
+ rtx eqv = NULL_RTX;
+
+@@ -3369,13 +3429,12 @@
+ FOR_EACH_VEC_ELT (occrs_to_hoist, j, occr)
+ {
+ rtx insn;
+- rtx set;
++ const_rtx set;
+
+ gcc_assert (!occr->deleted_p);
+
+ insn = occr->insn;
+- set = single_set (insn);
+- gcc_assert (set);
++ set = single_set_gcse (insn);
+
+ /* Create a pseudo-reg to store the result of reaching
+ expressions into. Get the mode for the new pseudo
+@@ -3456,10 +3515,8 @@
+ {
+ rtx reg;
+ enum reg_class pressure_class;
+- rtx set = single_set (insn);
++ const_rtx set = single_set_gcse (insn);
+
+- /* Considered invariant insns have only one set. */
+- gcc_assert (set != NULL_RTX);
+ reg = SET_DEST (set);
+ if (GET_CODE (reg) == SUBREG)
+ reg = SUBREG_REG (reg);
diff --git a/package/gcc/arc-2015.12/100-libstdcxx-uclibc-c99.patch b/package/gcc/arc-2016.03/850-libstdcxx-uclibc-c99.patch
index 0d02ef0fb6..792976fd51 100644
--- a/package/gcc/arc-2015.12/100-libstdcxx-uclibc-c99.patch
+++ b/package/gcc/arc-2016.03/850-libstdcxx-uclibc-c99.patch
@@ -45,7 +45,7 @@ Index: b/libstdc++-v3/include/bits/basic_string.h
===================================================================
--- a/libstdc++-v3/include/bits/basic_string.h
+++ b/libstdc++-v3/include/bits/basic_string.h
-@@ -2811,7 +2811,7 @@
+@@ -2809,7 +2809,7 @@
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
@@ -262,7 +262,7 @@ Index: b/libstdc++-v3/include/c_global/cstdio
===================================================================
--- a/libstdc++-v3/include/c_global/cstdio
+++ b/libstdc++-v3/include/c_global/cstdio
-@@ -138,7 +138,7 @@
+@@ -139,7 +139,7 @@
using ::vsprintf;
} // namespace
diff --git a/package/gcc/arc-2015.12/851-PR-other-56780.patch b/package/gcc/arc-2016.03/851-PR-other-56780.patch
index feb433920d..feb433920d 100644
--- a/package/gcc/arc-2015.12/851-PR-other-56780.patch
+++ b/package/gcc/arc-2016.03/851-PR-other-56780.patch
diff --git a/package/gcc/arc-2016.03/930-libgcc-disable-split-stack-nothreads.patch b/package/gcc/arc-2016.03/930-libgcc-disable-split-stack-nothreads.patch
new file mode 100644
index 0000000000..7799c1286e
--- /dev/null
+++ b/package/gcc/arc-2016.03/930-libgcc-disable-split-stack-nothreads.patch
@@ -0,0 +1,14 @@
+disable split-stack for non-thread builds
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+diff -Nur gcc-4.8.5.orig/libgcc/config/t-stack gcc-4.8.5/libgcc/config/t-stack
+--- gcc-4.8.5.orig/libgcc/config/t-stack 2010-10-01 21:31:49.000000000 +0200
++++ gcc-4.8.5/libgcc/config/t-stack 2016-03-07 05:28:12.000000000 +0100
+@@ -1,4 +1,6 @@
+ # Makefile fragment to provide generic support for -fsplit-stack.
+ # This should be used in config.host for any host which supports
+ # -fsplit-stack.
++ifeq ($(enable_threads),yes)
+ LIB2ADD_ST += $(srcdir)/generic-morestack.c $(srcdir)/generic-morestack-thread.c
++endif
diff --git a/package/gcc/gcc.hash b/package/gcc/gcc.hash
index 8d2feaf1a4..1bed7709e7 100644
--- a/package/gcc/gcc.hash
+++ b/package/gcc/gcc.hash
@@ -10,5 +10,6 @@ sha512 9ac57377a6975fc7adac704ec81355262b9f537def6955576753b87715470a20ee6a2a31
sha512 d619847383405fd389f5a2d7225f97fedb01f81478dbb8339047ccba7561a5c20045ab500a8744bffd19ea51892ce09fc37f862f2cfcb42de0f0f8cd8f8da37a gcc-5.3.0.tar.bz2
# From ftp://gcc.gnu.org/pub/gcc/releases/gcc-6.1.0/sha512.sum
sha512 eeed3e2018b8c012aabce419e8d718fde701e5c3c179b4486c61ba46e5736eecc8fccdd18b01fcd973a42c6ad3116dbbe2ee247fe3757d622d373f93ebaf8d2e gcc-6.1.0.tar.bz2
-# No hash for the ARC variant, comes from the github-helper:
-none xxx gcc-arc-2015.12.tar.gz
+
+# Locally calculated (fetched from Github)
+sha512 65b1eef5f8ca26941dd9b5e1bcaf4ce285cc95429eeb92b4088663577bcdb2392f9712925f38666d94207fecd244579336f753a13de1f90e5169b21d8a73bef3 gcc-arc-2016.03.tar.gz
diff --git a/package/gdb/7.8.2/0001-gdbserver-fix-uClibc-whithout-MMU.patch b/package/gdb/7.8.2/0001-gdbserver-fix-uClibc-whithout-MMU.patch
deleted file mode 100644
index 42168df570..0000000000
--- a/package/gdb/7.8.2/0001-gdbserver-fix-uClibc-whithout-MMU.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 59432cbfe267ad89b7cfc73dcd702b8282ef4e9d Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@openwide.fr>
-Date: Fri, 10 Apr 2015 22:58:07 +0200
-Subject: [PATCH] gdbserver: fix uClibc whithout MMU.
-
-Since commit d86d4aafd4fa22fa4cccb83253fb187b03f97f48, the pid
-must be retrieved from current_inferior.
-
-The change has not been made in the function linux_read_offsets().
-
-Fixes:
-http://autobuild.buildroot.net/results/9e4/9e4df085319e346803c26c65478accb27eb950ae/build-end.log
-
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- gdb/gdbserver/linux-low.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c
-index 1a40897..71d078a 100644
---- a/gdb/gdbserver/linux-low.c
-+++ b/gdb/gdbserver/linux-low.c
-@@ -4933,7 +4933,7 @@ static int
- linux_read_offsets (CORE_ADDR *text_p, CORE_ADDR *data_p)
- {
- unsigned long text, text_end, data;
-- int pid = lwpid_of (get_thread_lwp (current_inferior));
-+ int pid = lwpid_of (current_inferior);
-
- errno = 0;
-
---
-1.9.3
-
diff --git a/package/gdb/7.8.2/0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch b/package/gdb/7.8.2/0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch
deleted file mode 100644
index 93fe749ef0..0000000000
--- a/package/gdb/7.8.2/0002-gdbserver-xtensa-drop-xtensa_usrregs_info.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From deb44829ecc1dd38275af0fcf91acd319e227a89 Mon Sep 17 00:00:00 2001
-From: Max Filippov <jcmvbkbc@gmail.com>
-Date: Fri, 17 Apr 2015 03:07:41 +0300
-Subject: [PATCH 1/2] gdbserver/xtensa: drop xtensa_usrregs_info
-
-xtensa_usrregs_info refers to undefined variables xtensa_num_regs and
-xtensa_regmap. Drop xtensa_usrregs_info and replace pointer to usrregs
-in regs_info with NULL since all registers are read/set through regsets.
-
-2015-04-17 Max Filippov <jcmvbkbc@gmail.com>
-gdb/gdbserver/
- * linux-xtensa-low.c (xtensa_usrregs_info): Remove.
- (regs_info): Replace usrregs pointer with NULL.
-
-Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
----
-Backported from: deb44829ecc1dd38275af0fcf91acd319e227a89
-Changes to ChangeLog are dropped.
-
- gdb/gdbserver/linux-xtensa-low.c | 8 +-------
- 2 files changed, 6 insertions(+), 7 deletions(-)
-
-diff --git a/gdb/gdbserver/linux-xtensa-low.c b/gdb/gdbserver/linux-xtensa-low.c
-index f7fafaf..e786da5 100644
---- a/gdb/gdbserver/linux-xtensa-low.c
-+++ b/gdb/gdbserver/linux-xtensa-low.c
-@@ -186,16 +186,10 @@ static struct regsets_info xtensa_regsets_info =
- NULL, /* disabled_regsets */
- };
-
--static struct usrregs_info xtensa_usrregs_info =
-- {
-- xtensa_num_regs,
-- xtensa_regmap,
-- };
--
- static struct regs_info regs_info =
- {
- NULL, /* regset_bitmap */
-- &xtensa_usrregs_info,
-+ NULL, /* usrregs */
- &xtensa_regsets_info
- };
-
---
-1.8.1.4
-
diff --git a/package/gdb/7.8.2/0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch b/package/gdb/7.8.2/0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch
deleted file mode 100644
index 027f700b09..0000000000
--- a/package/gdb/7.8.2/0003-gdbserver-xtensa-fix-typo-in-XCHAL_HAVE_LOOPS.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From a2d5a9d76f2366ed93095fc5a63eafa06b22f808 Mon Sep 17 00:00:00 2001
-From: Max Filippov <jcmvbkbc@gmail.com>
-Date: Fri, 17 Apr 2015 02:52:50 +0300
-Subject: [PATCH 2/2] gdbserver/xtensa: fix typo in XCHAL_HAVE_LOOPS
-
-This fixes lbeg/lend/lcount registers handling through gdbserver.
-
-2015-04-17 Max Filippov <jcmvbkbc@gmail.com>
-gdb/gdbserver/
- * linux-xtensa-low.c (xtensa_fill_gregset)
- (xtensa_store_gregset): Check XCHAL_HAVE_LOOPS instead of
- XCHAL_HAVE_LOOP.
-
-Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
----
-Backported from: a2d5a9d76f2366ed93095fc5a63eafa06b22f808
-Changes to ChangeLog are dropped.
-
- gdb/gdbserver/linux-xtensa-low.c | 4 ++--
- 2 files changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/gdb/gdbserver/linux-xtensa-low.c b/gdb/gdbserver/linux-xtensa-low.c
-index e786da5..4daccee 100644
---- a/gdb/gdbserver/linux-xtensa-low.c
-+++ b/gdb/gdbserver/linux-xtensa-low.c
-@@ -59,7 +59,7 @@ xtensa_fill_gregset (struct regcache *regcache, void *buf)
-
- /* Loop registers, if hardware has it. */
-
--#if XCHAL_HAVE_LOOP
-+#if XCHAL_HAVE_LOOPS
- collect_register_by_name (regcache, "lbeg", (char*)&rset[R_LBEG]);
- collect_register_by_name (regcache, "lend", (char*)&rset[R_LEND]);
- collect_register_by_name (regcache, "lcount", (char*)&rset[R_LCOUNT]);
-@@ -94,7 +94,7 @@ xtensa_store_gregset (struct regcache *regcache, const void *buf)
-
- /* Loop registers, if hardware has it. */
-
--#if XCHAL_HAVE_LOOP
-+#if XCHAL_HAVE_LOOPS
- supply_register_by_name (regcache, "lbeg", (char*)&rset[R_LBEG]);
- supply_register_by_name (regcache, "lend", (char*)&rset[R_LEND]);
- supply_register_by_name (regcache, "lcount", (char*)&rset[R_LCOUNT]);
---
-1.8.1.4
-
diff --git a/package/gdb/7.8.2/0004-Add-some-casts-for-building-on-musl.patch b/package/gdb/7.8.2/0004-Add-some-casts-for-building-on-musl.patch
deleted file mode 100644
index bf20c03c23..0000000000
--- a/package/gdb/7.8.2/0004-Add-some-casts-for-building-on-musl.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From d41401ace01c234f42697e190a2ac95991780626 Mon Sep 17 00:00:00 2001
-From: Doug Evans <dje@google.com>
-Date: Mon, 26 Oct 2015 13:20:12 -0700
-Subject: [PATCH] Add some casts for building on musl.
-
-gdb/ChangeLog:
-
- * linux-thread-db.c (find_new_threads_callback): Cast ti.ti_tid to
- unsigned long for debug_printf.
- (thread_db_pid_to_str): Ditto.
-
-gdb/gdbserver/ChangeLog:
-
- * thread-db.c (find_one_thread): Cast ti.ti_tid to unsigned long
- for debug_printf.
- (attach_thread, find_new_threads_callback): Ditto.
-
-[Arnout: removed the parts that don't apply, including ChangeLog]
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
- gdb/ChangeLog | 5 +++++
- gdb/gdbserver/ChangeLog | 6 ++++++
- gdb/gdbserver/thread-db.c | 9 +++++----
- gdb/linux-thread-db.c | 5 +++--
- 4 files changed, 19 insertions(+), 6 deletions(-)
-
-diff --git a/gdb/gdbserver/thread-db.c b/gdb/gdbserver/thread-db.c
-index ffe722d..3df10ff 100644
---- a/gdb/gdbserver/thread-db.c
-+++ b/gdb/gdbserver/thread-db.c
-@@ -278,7 +278,7 @@ find_one_thread (ptid_t ptid)
-
- if (debug_threads)
- debug_printf ("Found thread %ld (LWP %d)\n",
-- ti.ti_tid, ti.ti_lid);
-+ (unsigned long) ti.ti_tid, ti.ti_lid);
-
- if (lwpid != ti.ti_lid)
- {
-@@ -319,12 +319,12 @@ attach_thread (const td_thrhandle_t *th_p, td_thrinfo_t *ti_p)
-
- if (debug_threads)
- debug_printf ("Attaching to thread %ld (LWP %d)\n",
-- ti_p->ti_tid, ti_p->ti_lid);
-+ (unsigned long) ti_p->ti_tid, ti_p->ti_lid);
- err = linux_attach_lwp (ptid);
- if (err != 0)
- {
- warning ("Could not attach to thread %ld (LWP %d): %s\n",
-- ti_p->ti_tid, ti_p->ti_lid,
-+ (unsigned long) ti_p->ti_tid, ti_p->ti_lid,
- linux_attach_fail_reason_string (ptid, err));
- return 0;
- }
-diff --git a/gdb/linux-thread-db.c b/gdb/linux-thread-db.c
-index 66e9595..41db29a 100644
---- a/gdb/linux-thread-db.c
-+++ b/gdb/linux-thread-db.c
-@@ -1816,7 +1817,7 @@ thread_db_pid_to_str (struct target_ops *ops, ptid_t ptid)
-
- tid = thread_info->priv->tid;
- snprintf (buf, sizeof (buf), "Thread 0x%lx (LWP %ld)",
-- tid, ptid_get_lwp (ptid));
-+ (unsigned long) tid, ptid_get_lwp (ptid));
-
- return buf;
- }
---
-1.9.4
-
diff --git a/package/gdb/7.8.2/0005-musl-Move-W_STOPCODE-to-common-gdb_wait-h.patch b/package/gdb/7.8.2/0005-musl-Move-W_STOPCODE-to-common-gdb_wait-h.patch
deleted file mode 100644
index 60c357cd80..0000000000
--- a/package/gdb/7.8.2/0005-musl-Move-W_STOPCODE-to-common-gdb_wait-h.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From 963843d4d07aef6caa296dacf191f8adc9518596 Mon Sep 17 00:00:00 2001
-From: Doug Evans <dje@google.com>
-Date: Mon, 26 Oct 2015 13:24:01 -0700
-Subject: [PATCH] musl: Move W_STOPCODE to common/gdb_wait.h.
-
-gdb/ChangeLog:
-
- * common/gdb_wait.h (W_STOPCODE): Define, moved here from
- gdbserver/linux-low.c.
- (WSETSTOP): Simplify.
-
-gdb/gdbserver/ChangeLog:
-
- * linux-low.c (W_STOPCODE): Moved to common/gdb_wait.h.
-
-[Arnout: removed the parts that don't apply, including ChangeLog]
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
- gdb/ChangeLog | 6 ++++++
- gdb/common/gdb_wait.h | 8 ++++----
- gdb/gdbserver/ChangeLog | 4 ++++
- gdb/gdbserver/linux-low.c | 4 ----
- 4 files changed, 14 insertions(+), 8 deletions(-)
-
-diff --git a/gdb/common/gdb_wait.h b/gdb/common/gdb_wait.h
-index 9b250d2..412f813 100644
---- a/gdb/common/gdb_wait.h
-+++ b/gdb/common/gdb_wait.h
-@@ -85,12 +85,12 @@
- # endif
- #endif
-
-+#ifndef W_STOPCODE
-+#define W_STOPCODE(sig) ((sig) << 8 | 0x7f)
-+#endif
-+
- #ifndef WSETSTOP
--# ifdef W_STOPCODE
- #define WSETSTOP(w,sig) ((w) = W_STOPCODE(sig))
--# else
--#define WSETSTOP(w,sig) ((w) = (0177 | ((sig) << 8)))
--# endif
- #endif
-
- /* For native GNU/Linux we may use waitpid and the __WCLONE option.
-diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c
-index 0c552b8..7ed67c7 100644
---- a/gdb/gdbserver/linux-low.c
-+++ b/gdb/gdbserver/linux-low.c
-@@ -70,10 +70,6 @@
- #define O_LARGEFILE 0
- #endif
-
--#ifndef W_STOPCODE
--#define W_STOPCODE(sig) ((sig) << 8 | 0x7f)
--#endif
--
- /* This is the kernel's hard limit. Not to be confused with
- SIGRTMIN. */
- #ifndef __SIGRTMIN
---
-1.9.4
-
diff --git a/package/gdb/7.8.2/0006-move-__SIGRTMIN.patch b/package/gdb/7.8.2/0006-move-__SIGRTMIN.patch
deleted file mode 100644
index 38ba1f028a..0000000000
--- a/package/gdb/7.8.2/0006-move-__SIGRTMIN.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 682b25469e66ea45b214e95962671373983c118f Mon Sep 17 00:00:00 2001
-From: Doug Evans <dje@google.com>
-Date: Mon, 26 Oct 2015 13:30:57 -0700
-Subject: [PATCH] Move __SIGRTMIN.
-
-gdb/ChangeLog:
-
- * nat/linux-nat.h (__SIGRTMIN): Move here from gdbserver/linux-low.c.
-
-gdb/gdbserver/ChangeLog:
-
- * linux-low.c (__SIGRTMIN): Move to nat/linux-nat.h.
-
-[Arnout: removed the parts that don't apply, including ChangeLog]
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
- gdb/ChangeLog | 4 ++++
- gdb/gdbserver/ChangeLog | 4 ++++
- gdb/gdbserver/linux-low.c | 6 ------
- gdb/nat/linux-nat.h | 5 +++++
- 4 files changed, 13 insertions(+), 6 deletions(-)
-
-diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c
-index 7ed67c7..e778c4c 100644
---- a/gdb/gdbserver/linux-low.c
-+++ b/gdb/gdbserver/linux-low.c
-@@ -70,12 +70,6 @@
- #define O_LARGEFILE 0
- #endif
-
--/* This is the kernel's hard limit. Not to be confused with
-- SIGRTMIN. */
--#ifndef __SIGRTMIN
--#define __SIGRTMIN 32
--#endif
--
- /* Some targets did not define these ptrace constants from the start,
- so gdbserver defines them locally here. In the future, these may
- be removed after they are added to asm/ptrace.h. */
-diff --git a/gdb/nat/linux-nat.h b/gdb/nat/linux-nat.h
-index 0633fa9..70e6274 100644
---- a/gdb/nat/linux-nat.h
-+++ b/gdb/nat/linux-nat.h
-@@ -25,6 +25,11 @@
- struct lwp_info;
- struct arch_lwp_info;
-
-+/* This is the kernel's hard limit. Not to be confused with SIGRTMIN. */
-+#ifndef __SIGRTMIN
-+#define __SIGRTMIN 32
-+#endif
-+
- /* Unlike other extended result codes, WSTOPSIG (status) on
- PTRACE_O_TRACESYSGOOD syscall events doesn't return SIGTRAP, but
- instead SIGTRAP with bit 7 set. */
---
-1.9.4
-
diff --git a/package/gdb/Config.in.host b/package/gdb/Config.in.host
index b213901dfb..dc149b636d 100644
--- a/package/gdb/Config.in.host
+++ b/package/gdb/Config.in.host
@@ -23,23 +23,28 @@ config BR2_PACKAGE_HOST_GDB_PYTHON
help
This option enables the Python support in the cross gdb.
+config BR2_PACKAGE_HOST_GDB_SIM
+ bool "Simulator support"
+ help
+ This option enables the simulator support in the cross gdb.
+
choice
prompt "GDB debugger Version"
depends on !BR2_arc
depends on !BR2_microblaze
- default BR2_GDB_VERSION_7_9
+ default BR2_GDB_VERSION_7_10
help
Select the version of gdb you wish to use.
- config BR2_GDB_VERSION_7_8
- bool "gdb 7.8.x"
-
config BR2_GDB_VERSION_7_9
bool "gdb 7.9.x"
config BR2_GDB_VERSION_7_10
bool "gdb 7.10.x"
+ config BR2_GDB_VERSION_7_11
+ bool "gdb 7.11.x"
+
endchoice
endif
@@ -48,8 +53,8 @@ endif
config BR2_GDB_VERSION
string
depends on BR2_PACKAGE_GDB || BR2_PACKAGE_HOST_GDB
- default "arc-2015.12-gdb" if BR2_arc
+ default "arc-2016.03-gdb" if BR2_arc
default "6be65fb56ea6694a9260733a536a023a1e2d4d57" if BR2_microblaze
- 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
+ default "7.9.1" if BR2_GDB_VERSION_7_9
+ default "7.10.1" if BR2_GDB_VERSION_7_10 || !BR2_PACKAGE_HOST_GDB
+ default "7.11" if BR2_GDB_VERSION_7_11
diff --git a/package/gdb/gdb.hash b/package/gdb/gdb.hash
index caf1ef1685..bf3f925ece 100644
--- a/package/gdb/gdb.hash
+++ b/package/gdb/gdb.hash
@@ -1,7 +1,8 @@
# From ftp://gcc.gnu.org/pub/gdb/releases/sha512.sum
-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.12-gdb.tar.gz
-none xxx gdb-6be65fb56ea6694a9260733a536a023a1e2d4d57.tar.gz
+sha512 eadd2a59a1e48b1484eb2bea85256d6b1912926bc8b690793d02babf2639608bd22a0f2de77d4f60092da3b1dafeaa6d75a7cff3e84bd4e22fc46364b68e5e9f gdb-7.11.tar.xz
+
+# Locally calculated (fetched from Github)
+sha512 0a467091d4b01fbecabb4b8da1cb743025c70e7f4874a0b5c8fa2ec623569a39bde6762b91806de0be6e63711aeb6909715cfbe43860de73d8aec6159a9f10a7 gdb-6be65fb56ea6694a9260733a536a023a1e2d4d57.tar.gz
+sha512 1abef1357896c2b57cfa7f7414eedc49d0de26b54321c680c2d027b1a27ec453d421e7f89a5281336047542379fd4820685802059efbd32b87c5ccffbaf2bd16 gdb-arc-2016.03-gdb.tar.gz
diff --git a/package/gdb/gdb.mk b/package/gdb/gdb.mk
index 0a7af1ef61..84f2029e97 100644
--- a/package/gdb/gdb.mk
+++ b/package/gdb/gdb.mk
@@ -163,8 +163,7 @@ HOST_GDB_CONF_OPTS = \
--enable-threads \
--disable-werror \
--without-included-gettext \
- $(GDB_DISABLE_BINUTILS_CONF_OPTS) \
- --disable-sim
+ $(GDB_DISABLE_BINUTILS_CONF_OPTS)
ifeq ($(BR2_PACKAGE_HOST_GDB_TUI),y)
HOST_GDB_CONF_OPTS += --enable-tui
@@ -179,6 +178,20 @@ else
HOST_GDB_CONF_OPTS += --without-python
endif
+# workaround a bug if in-tree build is used for bfin sim
+define HOST_GDB_BFIN_SIM_WORKAROUND
+ $(RM) $(@D)/sim/common/tconfig.h
+endef
+
+ifeq ($(BR2_PACKAGE_HOST_GDB_SIM),y)
+HOST_GDB_CONF_OPTS += --enable-sim
+ifeq ($(BR2_bfin),y)
+HOST_GDB_PRE_CONFIGURE_HOOKS += HOST_GDB_BFIN_SIM_WORKAROUND
+endif
+else
+HOST_GDB_CONF_OPTS += --disable-sim
+endif
+
# legacy $arch-linux-gdb symlink
define HOST_GDB_ADD_SYMLINK
cd $(HOST_DIR)/usr/bin && \
diff --git a/package/gdbm/gdbm.hash b/package/gdbm/gdbm.hash
index e7d3592314..9759d87072 100644
--- a/package/gdbm/gdbm.hash
+++ b/package/gdbm/gdbm.hash
@@ -1,2 +1,3 @@
-# From http://lists.gnu.org/archive/html/info-gnu/2013-12/msg00012.html
-sha1 ce433d0f192c21d41089458ca5c8294efe9806b4 gdbm-1.11.tar.gz
+# From http://lists.gnu.org/archive/html/info-gnu/2016-05/msg00009.html
+md5 9ce96ff4c99e74295ea19040931c8fb9 gdbm-1.12.tar.gz
+sha1 86513e8871bb376bc014e9e5a2d18a8e0a8ea2f5 gdbm-1.12.tar.gz
diff --git a/package/gdbm/gdbm.mk b/package/gdbm/gdbm.mk
index f7a437007c..55ece8802a 100644
--- a/package/gdbm/gdbm.mk
+++ b/package/gdbm/gdbm.mk
@@ -4,7 +4,7 @@
#
################################################################################
-GDBM_VERSION = 1.11
+GDBM_VERSION = 1.12
GDBM_SITE = $(BR2_GNU_MIRROR)/gdbm
GDBM_LICENSE = GPLv3+
GDBM_LICENSE_FILES = COPYING
diff --git a/package/git/git.hash b/package/git/git.hash
index dabe964849..9e047a3271 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 ec0283d78a0f1c8408c5fd43610697b953fbaafe4077bb1e41446a9ee3a2f83d git-2.8.2.tar.xz
+sha256 7d8e6c274a88b4a73b3c98c70d3438ec12871300ce8bb4ca179ea19fcf74aa91 git-2.8.3.tar.xz
diff --git a/package/git/git.mk b/package/git/git.mk
index db260360c2..1d6574d154 100644
--- a/package/git/git.mk
+++ b/package/git/git.mk
@@ -4,7 +4,7 @@
#
################################################################################
-GIT_VERSION = 2.8.2
+GIT_VERSION = 2.8.3
GIT_SOURCE = git-$(GIT_VERSION).tar.xz
GIT_SITE = https://www.kernel.org/pub/software/scm/git
GIT_LICENSE = GPLv2 LGPLv2.1+
diff --git a/package/glibc/2.18-svnr23787/0001-CVE-2014-7817-eglibc.patch b/package/glibc/2.18-svnr23787/0001-CVE-2014-7817-eglibc.patch
deleted file mode 100644
index da2f49de10..0000000000
--- a/package/glibc/2.18-svnr23787/0001-CVE-2014-7817-eglibc.patch
+++ /dev/null
@@ -1,174 +0,0 @@
-From https://bugzilla.redhat.com/show_bug.cgi?id=1157689
-Modified for eglibc.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-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 <carlos@redhat.com>
-
- * 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/libc/posix/wordexp-test.c
-+++ b/libc/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/libc/posix/wordexp.c
-+++ b/libc/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.18-svnr23787/0002-accept-make4.patch b/package/glibc/2.18-svnr23787/0002-accept-make4.patch
deleted file mode 100644
index 4f426f29e6..0000000000
--- a/package/glibc/2.18-svnr23787/0002-accept-make4.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-Backport upstream patch (28d708c44bc47b56f6551ff285f78edcf61c208a) to accept
-make-4.0 or newer.
-We patch both configure and configure.in files so if we ever have to run
-autoreconf in the glibc source, then the fix will be propagated properly.
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-Index: glibc-2.18-svnr23787/libc/configure
-===================================================================
---- glibc-2.18-svnr23787.orig/libc/configure
-+++ glibc-2.18-svnr23787/libc/configure
-@@ -4772,7 +4772,7 @@ $as_echo_n "checking version of $MAKE...
- ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'`
- case $ac_prog_version in
- '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-- 3.79* | 3.[89]*)
-+ 3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*)
- ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
- *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
-
-Index: glibc-2.18-svnr23787/libc/configure.in
-===================================================================
---- glibc-2.18-svnr23787.orig/libc/configure.in
-+++ glibc-2.18-svnr23787/libc/configure.in
-@@ -989,7 +989,7 @@ AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}g
- critic_missing="$critic_missing gcc")
- AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version,
- [GNU Make[^0-9]*\([0-9][0-9.]*\)],
-- [3.79* | 3.[89]*], critic_missing="$critic_missing make")
-+ [3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*], critic_missing="$critic_missing make")
-
- AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version,
- [GNU gettext.* \([0-9]*\.[0-9.]*\)],
diff --git a/package/glibc/2.18-svnr23787/0003-CVE-2014-6040.patch b/package/glibc/2.18-svnr23787/0003-CVE-2014-6040.patch
deleted file mode 100644
index f447dcd329..0000000000
--- a/package/glibc/2.18-svnr23787/0003-CVE-2014-6040.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-Backport from https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commit;h=41488498b6
-See https://bugzilla.redhat.com/show_bug.cgi?id=1135841
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm1364.c eglibc-2.19/libc/iconvdata/ibm1364.c
---- eglibc-2.19.orig/libc/iconvdata/ibm1364.c 2015-01-08 16:05:53.918823240 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm1364.c 2015-01-08 16:06:02.781555143 -0300
-@@ -220,7 +220,8 @@
- ++rp2; \
- \
- uint32_t res; \
-- if (__builtin_expect (ch < rp2->start, 0) \
-+ if (__builtin_expect (rp2->start == 0xffff, 0) \
-+ || __builtin_expect (ch < rp2->start, 0) \
- || (res = DB_TO_UCS4[ch + rp2->idx], \
- __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \
- { \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm932.c eglibc-2.19/libc/iconvdata/ibm932.c
---- eglibc-2.19.orig/libc/iconvdata/ibm932.c 2015-01-08 16:05:53.910818967 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm932.c 2015-01-08 16:06:02.781555143 -0300
-@@ -73,11 +73,12 @@
- } \
- \
- ch = (ch * 0x100) + inptr[1]; \
-+ /* ch was less than 0xfd. */ \
-+ assert (ch < 0xfd00); \
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-- || __builtin_expect (ch < rp2->start, 0) \
-+ if (__builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm932db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, '\1') == 0 && ch !=0)) \
- { \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm933.c eglibc-2.19/libc/iconvdata/ibm933.c
---- eglibc-2.19.orig/libc/iconvdata/ibm933.c 2015-01-08 16:05:53.917822706 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm933.c 2015-01-08 16:06:02.781555143 -0300
-@@ -161,7 +161,7 @@
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-+ if (__builtin_expect (rp2->start == 0xffff, 0) \
- || __builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm933db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm935.c eglibc-2.19/libc/iconvdata/ibm935.c
---- eglibc-2.19.orig/libc/iconvdata/ibm935.c 2015-01-08 16:05:53.921824843 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm935.c 2015-01-08 16:06:02.782555677 -0300
-@@ -161,7 +161,7 @@
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-+ if (__builtin_expect (rp2->start == 0xffff, 0) \
- || __builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm935db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm937.c eglibc-2.19/libc/iconvdata/ibm937.c
---- eglibc-2.19.orig/libc/iconvdata/ibm937.c 2015-01-08 16:05:53.915821638 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm937.c 2015-01-08 16:06:02.782555677 -0300
-@@ -161,7 +161,7 @@
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-+ if (__builtin_expect (rp2->start == 0xffff, 0) \
- || __builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm937db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm939.c eglibc-2.19/libc/iconvdata/ibm939.c
---- eglibc-2.19.orig/libc/iconvdata/ibm939.c 2015-01-08 16:05:53.917822706 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm939.c 2015-01-08 16:06:02.782555677 -0300
-@@ -161,7 +161,7 @@
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-+ if (__builtin_expect (rp2->start == 0xffff, 0) \
- || __builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm939db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm943.c eglibc-2.19/libc/iconvdata/ibm943.c
---- eglibc-2.19.orig/libc/iconvdata/ibm943.c 2015-01-08 16:05:53.918823240 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm943.c 2015-01-08 16:06:02.782555677 -0300
-@@ -74,11 +74,12 @@
- } \
- \
- ch = (ch * 0x100) + inptr[1]; \
-+ /* ch was less than 0xfd. */ \
-+ assert (ch < 0xfd00); \
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-- || __builtin_expect (ch < rp2->start, 0) \
-+ if (__builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm943db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, '\1') == 0 && ch !=0)) \
- { \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/Makefile eglibc-2.19/libc/iconvdata/Makefile
---- eglibc-2.19.orig/libc/iconvdata/Makefile 2015-01-08 16:05:53.903815227 -0300
-+++ eglibc-2.19/libc/iconvdata/Makefile 2015-01-08 16:06:02.782555677 -0300
-@@ -303,6 +303,7 @@
- $(objpfx)iconv-test.out: run-iconv-test.sh $(objpfx)gconv-modules \
- $(addprefix $(objpfx),$(modules.so)) \
- $(common-objdir)/iconv/iconv_prog TESTS
-+ iconv_modules="$(modules)" \
- $(SHELL) $< $(common-objdir) '$(test-wrapper)' > $@
-
- $(objpfx)tst-tables.out: tst-tables.sh $(objpfx)gconv-modules \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/run-iconv-test.sh eglibc-2.19/libc/iconvdata/run-iconv-test.sh
---- eglibc-2.19.orig/libc/iconvdata/run-iconv-test.sh 2015-01-08 16:05:53.894810420 -0300
-+++ eglibc-2.19/libc/iconvdata/run-iconv-test.sh 2015-01-08 16:06:02.782555677 -0300
-@@ -188,6 +188,24 @@
-
- done < TESTS2
-
-+# Check for crashes in decoders.
-+printf '\016\377\377\377\377\377\377\377' > $temp1
-+for from in $iconv_modules ; do
-+ echo $ac_n "test decoder $from $ac_c"
-+ PROG=`eval echo $ICONV`
-+ if $PROG < $temp1 >/dev/null 2>&1 ; then
-+ : # fall through
-+ else
-+ status=$?
-+ if test $status -gt 1 ; then
-+ echo "/FAILED"
-+ failed=1
-+ continue
-+ fi
-+ fi
-+ echo "OK"
-+done
-+
- exit $failed
- # Local Variables:
- # mode:shell-script
diff --git a/package/glibc/2.18-svnr23787/0004-CVE-2014-9402.patch b/package/glibc/2.18-svnr23787/0004-CVE-2014-9402.patch
deleted file mode 100644
index c7aa12c1b9..0000000000
--- a/package/glibc/2.18-svnr23787/0004-CVE-2014-9402.patch
+++ /dev/null
@@ -1,20 +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 <gustavo@zacarias.com.ar>
-
-diff -Nura eglibc-2.19.orig/libc/resolv/nss_dns/dns-network.c eglibc-2.19/libc/resolv/nss_dns/dns-network.c
---- eglibc-2.19.orig/libc/resolv/nss_dns/dns-network.c 2015-01-08 16:12:35.024977879 -0300
-+++ eglibc-2.19/libc/resolv/nss_dns/dns-network.c 2015-01-08 16:12:42.543992357 -0300
-@@ -398,8 +398,8 @@
-
- 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
diff --git a/package/glibc/2.18-svnr23787/0005-CVE-2015-1472.patch b/package/glibc/2.18-svnr23787/0005-CVE-2015-1472.patch
deleted file mode 100644
index a0da626cbf..0000000000
--- a/package/glibc/2.18-svnr23787/0005-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 <gustavo@zacarias.com.ar>
-
-diff --git a/stdio-common/tst-sscanf.c b/stdio-common/tst-sscanf.c
-index aece3f2..8a2eb9e 100644
---- a/libc/stdio-common/tst-sscanf.c
-+++ b/libc/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/libc/stdio-common/vfscanf.c
-+++ b/libc/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.19-svnr25243/0001-CVE-2014-7817-eglibc.patch b/package/glibc/2.19-svnr25243/0001-CVE-2014-7817-eglibc.patch
deleted file mode 100644
index da2f49de10..0000000000
--- a/package/glibc/2.19-svnr25243/0001-CVE-2014-7817-eglibc.patch
+++ /dev/null
@@ -1,174 +0,0 @@
-From https://bugzilla.redhat.com/show_bug.cgi?id=1157689
-Modified for eglibc.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-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 <carlos@redhat.com>
-
- * 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/libc/posix/wordexp-test.c
-+++ b/libc/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/libc/posix/wordexp.c
-+++ b/libc/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.19-svnr25243/0002-CVE-2014-6040.patch b/package/glibc/2.19-svnr25243/0002-CVE-2014-6040.patch
deleted file mode 100644
index f447dcd329..0000000000
--- a/package/glibc/2.19-svnr25243/0002-CVE-2014-6040.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-Backport from https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commit;h=41488498b6
-See https://bugzilla.redhat.com/show_bug.cgi?id=1135841
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm1364.c eglibc-2.19/libc/iconvdata/ibm1364.c
---- eglibc-2.19.orig/libc/iconvdata/ibm1364.c 2015-01-08 16:05:53.918823240 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm1364.c 2015-01-08 16:06:02.781555143 -0300
-@@ -220,7 +220,8 @@
- ++rp2; \
- \
- uint32_t res; \
-- if (__builtin_expect (ch < rp2->start, 0) \
-+ if (__builtin_expect (rp2->start == 0xffff, 0) \
-+ || __builtin_expect (ch < rp2->start, 0) \
- || (res = DB_TO_UCS4[ch + rp2->idx], \
- __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \
- { \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm932.c eglibc-2.19/libc/iconvdata/ibm932.c
---- eglibc-2.19.orig/libc/iconvdata/ibm932.c 2015-01-08 16:05:53.910818967 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm932.c 2015-01-08 16:06:02.781555143 -0300
-@@ -73,11 +73,12 @@
- } \
- \
- ch = (ch * 0x100) + inptr[1]; \
-+ /* ch was less than 0xfd. */ \
-+ assert (ch < 0xfd00); \
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-- || __builtin_expect (ch < rp2->start, 0) \
-+ if (__builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm932db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, '\1') == 0 && ch !=0)) \
- { \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm933.c eglibc-2.19/libc/iconvdata/ibm933.c
---- eglibc-2.19.orig/libc/iconvdata/ibm933.c 2015-01-08 16:05:53.917822706 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm933.c 2015-01-08 16:06:02.781555143 -0300
-@@ -161,7 +161,7 @@
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-+ if (__builtin_expect (rp2->start == 0xffff, 0) \
- || __builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm933db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm935.c eglibc-2.19/libc/iconvdata/ibm935.c
---- eglibc-2.19.orig/libc/iconvdata/ibm935.c 2015-01-08 16:05:53.921824843 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm935.c 2015-01-08 16:06:02.782555677 -0300
-@@ -161,7 +161,7 @@
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-+ if (__builtin_expect (rp2->start == 0xffff, 0) \
- || __builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm935db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm937.c eglibc-2.19/libc/iconvdata/ibm937.c
---- eglibc-2.19.orig/libc/iconvdata/ibm937.c 2015-01-08 16:05:53.915821638 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm937.c 2015-01-08 16:06:02.782555677 -0300
-@@ -161,7 +161,7 @@
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-+ if (__builtin_expect (rp2->start == 0xffff, 0) \
- || __builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm937db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm939.c eglibc-2.19/libc/iconvdata/ibm939.c
---- eglibc-2.19.orig/libc/iconvdata/ibm939.c 2015-01-08 16:05:53.917822706 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm939.c 2015-01-08 16:06:02.782555677 -0300
-@@ -161,7 +161,7 @@
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-+ if (__builtin_expect (rp2->start == 0xffff, 0) \
- || __builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm939db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, L'\1') == L'\0' && ch != '\0')) \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/ibm943.c eglibc-2.19/libc/iconvdata/ibm943.c
---- eglibc-2.19.orig/libc/iconvdata/ibm943.c 2015-01-08 16:05:53.918823240 -0300
-+++ eglibc-2.19/libc/iconvdata/ibm943.c 2015-01-08 16:06:02.782555677 -0300
-@@ -74,11 +74,12 @@
- } \
- \
- ch = (ch * 0x100) + inptr[1]; \
-+ /* ch was less than 0xfd. */ \
-+ assert (ch < 0xfd00); \
- while (ch > rp2->end) \
- ++rp2; \
- \
-- if (__builtin_expect (rp2 == NULL, 0) \
-- || __builtin_expect (ch < rp2->start, 0) \
-+ if (__builtin_expect (ch < rp2->start, 0) \
- || (res = __ibm943db_to_ucs4[ch + rp2->idx], \
- __builtin_expect (res, '\1') == 0 && ch !=0)) \
- { \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/Makefile eglibc-2.19/libc/iconvdata/Makefile
---- eglibc-2.19.orig/libc/iconvdata/Makefile 2015-01-08 16:05:53.903815227 -0300
-+++ eglibc-2.19/libc/iconvdata/Makefile 2015-01-08 16:06:02.782555677 -0300
-@@ -303,6 +303,7 @@
- $(objpfx)iconv-test.out: run-iconv-test.sh $(objpfx)gconv-modules \
- $(addprefix $(objpfx),$(modules.so)) \
- $(common-objdir)/iconv/iconv_prog TESTS
-+ iconv_modules="$(modules)" \
- $(SHELL) $< $(common-objdir) '$(test-wrapper)' > $@
-
- $(objpfx)tst-tables.out: tst-tables.sh $(objpfx)gconv-modules \
-diff -Nura eglibc-2.19.orig/libc/iconvdata/run-iconv-test.sh eglibc-2.19/libc/iconvdata/run-iconv-test.sh
---- eglibc-2.19.orig/libc/iconvdata/run-iconv-test.sh 2015-01-08 16:05:53.894810420 -0300
-+++ eglibc-2.19/libc/iconvdata/run-iconv-test.sh 2015-01-08 16:06:02.782555677 -0300
-@@ -188,6 +188,24 @@
-
- done < TESTS2
-
-+# Check for crashes in decoders.
-+printf '\016\377\377\377\377\377\377\377' > $temp1
-+for from in $iconv_modules ; do
-+ echo $ac_n "test decoder $from $ac_c"
-+ PROG=`eval echo $ICONV`
-+ if $PROG < $temp1 >/dev/null 2>&1 ; then
-+ : # fall through
-+ else
-+ status=$?
-+ if test $status -gt 1 ; then
-+ echo "/FAILED"
-+ failed=1
-+ continue
-+ fi
-+ fi
-+ echo "OK"
-+done
-+
- exit $failed
- # Local Variables:
- # mode:shell-script
diff --git a/package/glibc/2.19-svnr25243/0003-CVE-2014-9402.patch b/package/glibc/2.19-svnr25243/0003-CVE-2014-9402.patch
deleted file mode 100644
index c7aa12c1b9..0000000000
--- a/package/glibc/2.19-svnr25243/0003-CVE-2014-9402.patch
+++ /dev/null
@@ -1,20 +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 <gustavo@zacarias.com.ar>
-
-diff -Nura eglibc-2.19.orig/libc/resolv/nss_dns/dns-network.c eglibc-2.19/libc/resolv/nss_dns/dns-network.c
---- eglibc-2.19.orig/libc/resolv/nss_dns/dns-network.c 2015-01-08 16:12:35.024977879 -0300
-+++ eglibc-2.19/libc/resolv/nss_dns/dns-network.c 2015-01-08 16:12:42.543992357 -0300
-@@ -398,8 +398,8 @@
-
- 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
diff --git a/package/glibc/2.19-svnr25243/0004-CVE-2015-1472.patch b/package/glibc/2.19-svnr25243/0004-CVE-2015-1472.patch
deleted file mode 100644
index a0da626cbf..0000000000
--- a/package/glibc/2.19-svnr25243/0004-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 <gustavo@zacarias.com.ar>
-
-diff --git a/stdio-common/tst-sscanf.c b/stdio-common/tst-sscanf.c
-index aece3f2..8a2eb9e 100644
---- a/libc/stdio-common/tst-sscanf.c
-+++ b/libc/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/libc/stdio-common/vfscanf.c
-+++ b/libc/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/Config.in b/package/glibc/Config.in
index f719d5cd1b..02cae3523c 100644
--- a/package/glibc/Config.in
+++ b/package/glibc/Config.in
@@ -1,28 +1,3 @@
-if BR2_TOOLCHAIN_BUILDROOT_EGLIBC
-
-config BR2_PACKAGE_EGLIBC
- bool
- default y
- select BR2_PACKAGE_LINUX_HEADERS
-
-choice
- prompt "eglibc version"
- default BR2_EGLIBC_VERSION_2_18
-
-config BR2_EGLIBC_VERSION_2_18
- bool "2.18-svnr23787"
- # Build breakage
- depends on !BR2_sparc
-
-config BR2_EGLIBC_VERSION_2_19
- bool "2.19-svnr25243"
- # Build breakage
- depends on !BR2_powerpc_SPE
-
-endchoice
-
-endif
-
if BR2_TOOLCHAIN_BUILDROOT_GLIBC
config BR2_PACKAGE_GLIBC
@@ -53,7 +28,5 @@ endif
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.22" if BR2_GLIBC_VERSION_2_22
default "2.23" if BR2_GLIBC_VERSION_2_23
diff --git a/package/glibc/glibc.mk b/package/glibc/glibc.mk
index 2ae9cae861..db9b46b55c 100644
--- a/package/glibc/glibc.mk
+++ b/package/glibc/glibc.mk
@@ -5,16 +5,9 @@
################################################################################
GLIBC_VERSION = $(call qstrip,$(BR2_GLIBC_VERSION_STRING))
-
-ifeq ($(BR2_TOOLCHAIN_BUILDROOT_EGLIBC),y)
-GLIBC_SITE = http://downloads.yoctoproject.org/releases/eglibc
-GLIBC_SOURCE = eglibc-$(GLIBC_VERSION).tar.bz2
-GLIBC_SRC_SUBDIR = libc
-else
GLIBC_SITE = $(BR2_GNU_MIRROR)/libc
GLIBC_SOURCE = glibc-$(GLIBC_VERSION).tar.xz
GLIBC_SRC_SUBDIR = .
-endif
GLIBC_LICENSE = GPLv2+ (programs), LGPLv2.1+, BSD-3c, MIT (library)
GLIBC_LICENSE_FILES = $(addprefix $(GLIBC_SRC_SUBDIR)/,COPYING COPYING.LIB LICENSES)
diff --git a/package/gnuradio/Config.in b/package/gnuradio/Config.in
index 603532cf0c..b72ece50a8 100644
--- a/package/gnuradio/Config.in
+++ b/package/gnuradio/Config.in
@@ -1,6 +1,5 @@
comment "gnuradio needs a toolchain w/ C++, NPTL, wchar, dynamic library"
depends on BR2_USE_MMU
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || \
!BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
@@ -11,7 +10,6 @@ config BR2_PACKAGE_GNURADIO
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
depends on BR2_USE_MMU # use fork()
depends on BR2_USE_WCHAR # boost
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
select BR2_PACKAGE_BOOST
select BR2_PACKAGE_BOOST_DATE_TIME
select BR2_PACKAGE_BOOST_FILESYSTEM
diff --git a/package/gnutls/gnutls.hash b/package/gnutls/gnutls.hash
index 450b12bb46..41e0ccbdf9 100644
--- a/package/gnutls/gnutls.hash
+++ b/package/gnutls/gnutls.hash
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
-sha256 70ef9c9f95822d363036c6e6b5479750e5b7fc34f50e750c3464a98ec65a9ab8 gnutls-3.4.11.tar.xz
+sha256 e3370a3bf60f2ca4a6204461ea99e7d7047ee46f96bc2fb7c63f103312d3c9c7 gnutls-3.4.12.tar.xz
diff --git a/package/gnutls/gnutls.mk b/package/gnutls/gnutls.mk
index 676476de8d..d19f443c15 100644
--- a/package/gnutls/gnutls.mk
+++ b/package/gnutls/gnutls.mk
@@ -5,7 +5,7 @@
################################################################################
GNUTLS_VERSION_MAJOR = 3.4
-GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).11
+GNUTLS_VERSION = $(GNUTLS_VERSION_MAJOR).12
GNUTLS_SOURCE = gnutls-$(GNUTLS_VERSION).tar.xz
GNUTLS_SITE = ftp://ftp.gnutls.org/gcrypt/gnutls/v$(GNUTLS_VERSION_MAJOR)
GNUTLS_LICENSE = GPLv3+, LGPLv2.1+
diff --git a/package/gstreamer1/gst1-plugins-bad/Config.in b/package/gstreamer1/gst1-plugins-bad/Config.in
index facfe58dcc..046c2aabd2 100644
--- a/package/gstreamer1/gst1-plugins-bad/Config.in
+++ b/package/gstreamer1/gst1-plugins-bad/Config.in
@@ -463,14 +463,6 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_YADIF
comment "plugins with external dependencies"
-config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SHM
- bool "shm"
- help
- shared memory sink source
-
-config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VCD
- bool "vcd"
-
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_APEXSINK
bool "apexsink"
select BR2_PACKAGE_OPENSSL
@@ -479,10 +471,6 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_ASSRENDER
bool "assrender"
select BR2_PACKAGE_LIBASS
-config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VOAACENC
- bool "voaacenc"
- select BR2_PACKAGE_VO_AACENC
-
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_BZ2
bool "bz2"
select BR2_PACKAGE_BZIP2
@@ -515,18 +503,16 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DIRECTFB
depends on BR2_PACKAGE_DIRECTFB
default y
-config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WAYLAND
- bool "wayland"
- depends on BR2_PACKAGE_WAYLAND
- default y
+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
- Wayland Video Sink
+ DVB elements
-config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBP
- bool "webp"
- select BR2_PACKAGE_WEBP
- help
- Webp image format plugin
+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_FAAD
bool "faad"
@@ -539,6 +525,20 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FBDEV
help
Linux framebuffer video sink
+config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL
+ bool "gl"
+ default y
+ depends on BR2_PACKAGE_GST1_PLUGINS_BAD_HAS_LIB_OPENGL
+
+comment "gl needs the gst1-plugins-bad opengl library"
+ depends on !BR2_PACKAGE_GST1_PLUGINS_BAD_HAS_LIB_OPENGL
+
+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_LIBMMS
bool "libmms"
depends on BR2_USE_WCHAR # libmms -> libglib2
@@ -638,38 +638,42 @@ comment "rsvg plugin needs a toolchain w/ C++"
depends on !BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_SYNC_4
-config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL
- bool "gl"
- default y
- depends on BR2_PACKAGE_GST1_PLUGINS_BAD_HAS_LIB_OPENGL
-
-comment "gl needs the gst1-plugins-bad opengl library"
- depends on !BR2_PACKAGE_GST1_PLUGINS_BAD_HAS_LIB_OPENGL
+config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SBC
+ bool "sbc"
+ select BR2_PACKAGE_SBC
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SDL
bool "sdl"
select BR2_PACKAGE_SDL
+config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SHM
+ bool "shm"
+ help
+ shared memory sink source
+
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SNDFILE
bool "sndfile"
select BR2_PACKAGE_LIBSNDFILE
-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
+config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VCD
+ bool "vcd"
-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_VOAACENC
+ bool "voaacenc"
+ select BR2_PACKAGE_VO_AACENC
-config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_HLS
- bool "hls"
- select BR2_PACKAGE_GNUTLS
+config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WAYLAND
+ bool "wayland"
+ depends on BR2_PACKAGE_WAYLAND
+ default y
help
- Fragmented streaming plugins
+ Wayland Video Sink
+
+config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBP
+ bool "webp"
+ select BR2_PACKAGE_WEBP
+ help
+ Webp image format plugin
config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_X265
bool "x265"
diff --git a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk
index e2446a3c25..8ddf5d9232 100644
--- a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk
+++ b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad.mk
@@ -71,7 +71,6 @@ GST1_PLUGINS_BAD_CONF_OPTS += \
--disable-gme \
--disable-xvid \
--disable-vdpau \
- --disable-sbc \
--disable-schro \
--disable-zbar \
--disable-rtmp \
@@ -590,18 +589,6 @@ endif
# Plugins with dependencies
-ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SHM),y)
-GST1_PLUGINS_BAD_CONF_OPTS += --enable-shm
-else
-GST1_PLUGINS_BAD_CONF_OPTS += --disable-shm
-endif
-
-ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VCD),y)
-GST1_PLUGINS_BAD_CONF_OPTS += --enable-vcd
-else
-GST1_PLUGINS_BAD_CONF_OPTS += --disable-vcd
-endif
-
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_APEXSINK),y)
GST1_PLUGINS_BAD_CONF_OPTS += --enable-apexsink
GST1_PLUGINS_BAD_DEPENDENCIES += openssl
@@ -616,13 +603,6 @@ else
GST1_PLUGINS_BAD_CONF_OPTS += --disable-assrender
endif
-ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VOAACENC),y)
-GST1_PLUGINS_BAD_CONF_OPTS += --enable-voaacenc
-GST1_PLUGINS_BAD_DEPENDENCIES += vo-aacenc
-else
-GST1_PLUGINS_BAD_CONF_OPTS += --disable-voaacenc
-endif
-
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_BZ2),y)
GST1_PLUGINS_BAD_CONF_OPTS += --enable-bz2
GST1_PLUGINS_BAD_DEPENDENCIES += bzip2
@@ -650,13 +630,6 @@ else
GST1_PLUGINS_BAD_CONF_OPTS += --disable-decklink
endif
-ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBP),y)
-GST1_PLUGINS_BAD_CONF_OPTS += --enable-webp
-GST1_PLUGINS_BAD_DEPENDENCIES += webp
-else
-GST1_PLUGINS_BAD_CONF_OPTS += --disable-webp
-endif
-
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DIRECTFB),y)
GST1_PLUGINS_BAD_CONF_OPTS += --enable-directfb
GST1_PLUGINS_BAD_DEPENDENCIES += directfb
@@ -664,6 +637,13 @@ else
GST1_PLUGINS_BAD_CONF_OPTS += --disable-directfb
endif
+ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVB),y)
+GST1_PLUGINS_BAD_CONF_OPTS += --enable-dvb
+GST1_PLUGINS_BAD_DEPENDENCIES += dtv-scan-tables
+else
+GST1_PLUGINS_BAD_CONF_OPTS += --disable-dvb
+endif
+
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FAAD),y)
GST1_PLUGINS_BAD_CONF_OPTS += --enable-faad
GST1_PLUGINS_BAD_DEPENDENCIES += faad2
@@ -678,6 +658,19 @@ else
GST1_PLUGINS_BAD_CONF_OPTS += --disable-fbdev
endif
+ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL),y)
+GST1_PLUGINS_BAD_CONF_OPTS += --enable-gl
+else
+GST1_PLUGINS_BAD_CONF_OPTS += --disable-gl
+endif
+
+ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_HLS),y)
+GST1_PLUGINS_BAD_CONF_OPTS += --enable-hls
+GST1_PLUGINS_BAD_DEPENDENCIES += gnutls
+else
+GST1_PLUGINS_BAD_CONF_OPTS += --disable-hls
+endif
+
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_LIBMMS),y)
GST1_PLUGINS_BAD_CONF_OPTS += --enable-libmms
GST1_PLUGINS_BAD_DEPENDENCIES += libmms
@@ -749,10 +742,11 @@ else
GST1_PLUGINS_BAD_CONF_OPTS += --disable-rsvg
endif
-ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL),y)
-GST1_PLUGINS_BAD_CONF_OPTS += --enable-gl
+ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SBC),y)
+GST1_PLUGINS_BAD_CONF_OPTS += --enable-sbc
+GST1_PLUGINS_BAD_DEPENDENCIES += sbc
else
-GST1_PLUGINS_BAD_CONF_OPTS += --disable-gl
+GST1_PLUGINS_BAD_CONF_OPTS += --disable-sbc
endif
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SDL),y)
@@ -763,6 +757,12 @@ else
GST1_PLUGINS_BAD_CONF_OPTS += --disable-sdl
endif
+ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SHM),y)
+GST1_PLUGINS_BAD_CONF_OPTS += --enable-shm
+else
+GST1_PLUGINS_BAD_CONF_OPTS += --disable-shm
+endif
+
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_SNDFILE),y)
GST1_PLUGINS_BAD_CONF_OPTS += --enable-sndfile
GST1_PLUGINS_BAD_DEPENDENCIES += libsndfile
@@ -770,18 +770,24 @@ else
GST1_PLUGINS_BAD_CONF_OPTS += --disable-sndfile
endif
-ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_DVB),y)
-GST1_PLUGINS_BAD_CONF_OPTS += --enable-dvb
-GST1_PLUGINS_BAD_DEPENDENCIES += dtv-scan-tables
+ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VCD),y)
+GST1_PLUGINS_BAD_CONF_OPTS += --enable-vcd
else
-GST1_PLUGINS_BAD_CONF_OPTS += --disable-dvb
+GST1_PLUGINS_BAD_CONF_OPTS += --disable-vcd
endif
-ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_HLS),y)
-GST1_PLUGINS_BAD_CONF_OPTS += --enable-hls
-GST1_PLUGINS_BAD_DEPENDENCIES += gnutls
+ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_VOAACENC),y)
+GST1_PLUGINS_BAD_CONF_OPTS += --enable-voaacenc
+GST1_PLUGINS_BAD_DEPENDENCIES += vo-aacenc
else
-GST1_PLUGINS_BAD_CONF_OPTS += --disable-hls
+GST1_PLUGINS_BAD_CONF_OPTS += --disable-voaacenc
+endif
+
+ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_WEBP),y)
+GST1_PLUGINS_BAD_CONF_OPTS += --enable-webp
+GST1_PLUGINS_BAD_DEPENDENCIES += webp
+else
+GST1_PLUGINS_BAD_CONF_OPTS += --disable-webp
endif
ifeq ($(BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_X265),y)
diff --git a/package/kodi/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch b/package/kodi/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch
new file mode 100644
index 0000000000..dc428d6ced
--- /dev/null
+++ b/package/kodi/0008-Fix-nullpadding-issue-when-reading-certain-id3v1-tag.patch
@@ -0,0 +1,82 @@
+From 78571ed421e3fd3d5244cd76670e4e1bab69132f Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Fri, 27 May 2016 17:30:28 +0200
+Subject: [PATCH 1/1] Fix nullpadding issue when reading certain id3v1 tags
+
+backported from upstream commit to master branch:
+
+https://github.com/xbmc/xbmc/commit/cdabf9dd9e82f4b2d639fb769db08227a7c52046
+
+to fix problems with taglib-1.11:
+
+http://trac.kodi.tv/ticket/16454
+https://github.com/taglib/taglib/issues/741#issuecomment-218059031
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ xbmc/music/tags/TagLoaderTagLib.cpp | 21 ---------------------
+ xbmc/music/tags/TagLoaderTagLib.h | 3 +++
+ 2 files changed, 3 insertions(+), 21 deletions(-)
+
+diff --git a/xbmc/music/tags/TagLoaderTagLib.cpp b/xbmc/music/tags/TagLoaderTagLib.cpp
+index b78a591..0fc346a 100644
+--- a/xbmc/music/tags/TagLoaderTagLib.cpp
++++ b/xbmc/music/tags/TagLoaderTagLib.cpp
+@@ -46,31 +46,12 @@
+ #include "utils/URIUtils.h"
+ #include "utils/log.h"
+ #include "utils/StringUtils.h"
+-#include "utils/CharsetConverter.h"
+ #include "utils/Base64.h"
+ #include "settings/AdvancedSettings.h"
+
+ using namespace TagLib;
+ using namespace MUSIC_INFO;
+
+-template<class T>
+-class TagStringHandler : public T
+-{
+-public:
+- TagStringHandler() {}
+- virtual ~TagStringHandler() {}
+- virtual String parse(const ByteVector &data) const
+- {
+- std::string strSource(data.data(), data.size());
+- std::string strUTF8;
+- g_charsetConverter.unknownToUTF8(strSource, strUTF8);
+- return String(strUTF8, String::UTF8);
+- }
+-};
+-
+-static const TagStringHandler<ID3v1::StringHandler> ID3v1StringHandler;
+-static const TagStringHandler<ID3v2::Latin1StringHandler> ID3v2StringHandler;
+-
+ CTagLoaderTagLib::CTagLoaderTagLib()
+ {
+ }
+@@ -824,8 +805,6 @@ bool CTagLoaderTagLib::Load(const std::string& strFileName, CMusicInfoTag& tag,
+ return false;
+ }
+
+- ID3v1::Tag::setStringHandler(&ID3v1StringHandler);
+- ID3v2::Tag::setLatin1StringHandler(&ID3v2StringHandler);
+ TagLib::File* file = NULL;
+ TagLib::APE::File* apeFile = NULL;
+ TagLib::ASF::File* asfFile = NULL;
+diff --git a/xbmc/music/tags/TagLoaderTagLib.h b/xbmc/music/tags/TagLoaderTagLib.h
+index f83ea4f..0edb84f 100644
+--- a/xbmc/music/tags/TagLoaderTagLib.h
++++ b/xbmc/music/tags/TagLoaderTagLib.h
+@@ -44,6 +44,9 @@
+ #include <taglib/mp4tag.h>
+ #include "ImusicInfoTagLoader.h"
+
++#include <string>
++#include <vector>
++
+ namespace MUSIC_INFO
+ {
+ class CMusicInfoTag;
+--
+2.8.1
+
diff --git a/package/lft/0001-no-strip.patch b/package/lft/0001-no-strip.patch
new file mode 100644
index 0000000000..f1bd7003b2
--- /dev/null
+++ b/package/lft/0001-no-strip.patch
@@ -0,0 +1,19 @@
+Don't forcibly strip binaries, we do so on our own.
+Also using strip rather than $(STRIP) is bad when cross-compiling.
+
+Patch status: notified upstream.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura lft-3.74.orig/Makefile.in lft-3.74/Makefile.in
+--- lft-3.74.orig/Makefile.in 2016-05-03 14:11:30.965530923 -0300
++++ lft-3.74/Makefile.in 2016-05-03 14:11:42.120918849 -0300
+@@ -50,8 +50,6 @@
+
+ install: lft lft.8 whob whob.8
+ @echo "LFT and WhoB"
+- @echo " \_Stripping binaries"
+- @strip lft whob
+ @echo " \_Copying files to their intended destinations"
+ @test -d $(DESTDIR)$(bindir)/. || $(MKDIR) $(DESTDIR)$(bindir)
+ $(INSTALL) lft $(DESTDIR)$(bindir)/lft
diff --git a/package/lft/0002-no-incdir.patch b/package/lft/0002-no-incdir.patch
new file mode 100644
index 0000000000..dbfaad50d9
--- /dev/null
+++ b/package/lft/0002-no-incdir.patch
@@ -0,0 +1,27 @@
+Don't pollute incdir with absolute directories, it's bad when
+cross-compiling.
+Patch configure directly since autoreconf isn't clean.
+
+Patch status: notified upstream.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura lft-3.74.orig/configure lft-3.74/configure
+--- lft-3.74.orig/configure 2016-05-03 14:11:30.964530888 -0300
++++ lft-3.74/configure 2016-05-03 14:12:45.038106775 -0300
+@@ -5732,15 +5732,6 @@
+
+
+
+-for incdir in /usr/local/include /usr/include
+-do
+- if test -d $incdir/pcap
+- then
+- CFLAGS="$CFLAGS -I$incdir/pcap"
+- CPPFLAGS="$CFLAGS -I$incdir/pcap"
+- fi
+-done
+-
+ cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h. */
+ _ACEOF
diff --git a/package/lft/Config.in b/package/lft/Config.in
new file mode 100644
index 0000000000..9ed7b8bd69
--- /dev/null
+++ b/package/lft/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_LFT
+ bool "lft"
+ select BR2_PACKAGE_LIBPCAP
+ help
+ LFT, short for Layer Four Traceroute, is a sort of
+ 'traceroute' that often works much faster (than the
+ commonly-used Van Jacobson method) and goes through many
+ configurations of packet-filters (firewalls).
+
+ http://pwhois.org/lft/
diff --git a/package/lft/lft.hash b/package/lft/lft.hash
new file mode 100644
index 0000000000..dc3945ce84
--- /dev/null
+++ b/package/lft/lft.hash
@@ -0,0 +1,2 @@
+# Locally calculated, matches download from fossies.org and pwhois.org
+sha256 d7f142b9198162a48dd41261f5982e5189b951e7746e171d6b2c5b9581f26000 lft-3.74.tar.gz
diff --git a/package/lft/lft.mk b/package/lft/lft.mk
new file mode 100644
index 0000000000..24e6a10865
--- /dev/null
+++ b/package/lft/lft.mk
@@ -0,0 +1,18 @@
+################################################################################
+#
+# lft
+#
+################################################################################
+
+LFT_VERSION = 3.74
+LFT_SITE = http://pwhois.org/get
+LFT_DEPENDENCIES = libpcap
+LFT_LICENSE = VOSTROM Public License for Open Source
+LFT_LICENSE_FILES = COPYING
+LFT_CONF_OPTS = --with-pcap=$(STAGING_DIR)/usr
+
+ifeq ($(BR2_STATIC_LIBS),y)
+LFT_CONF_OPTS += LIBS="`$(STAGING_DIR)/usr/bin/pcap-config --static --additional-libs`"
+endif
+
+$(eval $(autotools-package))
diff --git a/package/lftp/lftp.hash b/package/lftp/lftp.hash
index 4c5d799591..3185fc531d 100644
--- a/package/lftp/lftp.hash
+++ b/package/lftp/lftp.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 1e7cb674c83ace48172263f86847ed04bb6ab2f24116b11a8505f70a15e8805c lftp-4.6.4.tar.xz
+sha256 475d7699b1390f951efee867ba1ad600f78329e13fd2a04d92f82bfffb70d872 lftp-4.7.2.tar.xz
diff --git a/package/lftp/lftp.mk b/package/lftp/lftp.mk
index 5051f707a9..c3c11c53b4 100644
--- a/package/lftp/lftp.mk
+++ b/package/lftp/lftp.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LFTP_VERSION = 4.6.4
+LFTP_VERSION = 4.7.2
LFTP_SOURCE = lftp-$(LFTP_VERSION).tar.xz
LFTP_SITE = http://lftp.yar.ru/ftp
LFTP_LICENSE = GPLv3+
@@ -13,6 +13,13 @@ LFTP_LICENSE_FILES = COPYING
LFTP_AUTORECONF = YES
LFTP_DEPENDENCIES = readline zlib host-pkgconf
+# Help lftp finding readline and zlib
+LFTP_CONF_OPTS = \
+ --with-readline=$(STAGING_DIR)/usr \
+ --with-readline-inc=$(STAGING_DIR)/usr/include/readline \
+ --with-readline-lib=$(STAGING_DIR)/usr/lib \
+ --with-zlib=$(STAGING_DIR)/usr
+
ifneq ($(BR2_STATIC_LIBS),y)
LFTP_CONF_OPTS += --with-modules
endif
diff --git a/package/libbluray/libbluray.hash b/package/libbluray/libbluray.hash
index 9acd89d2fd..ea0df505dd 100644
--- a/package/libbluray/libbluray.hash
+++ b/package/libbluray/libbluray.hash
@@ -1,2 +1,2 @@
-# From http://get.videolan.org/libbluray/0.9.2/libbluray-0.9.2.tar.bz2.sha512
-sha512 f7fda2ef4c0ec70eb9a38aed0e76d21d8784410cb13713e7ee66ecd23a1cc58325977b046d40c526554a4a4e4cf96706a233e15451bf34892aff201b47e25aef libbluray-0.9.2.tar.bz2
+# From http://get.videolan.org/libbluray/0.9.3/libbluray-0.9.3.tar.bz2.sha512
+sha512 1e308b85c51d43b23b186fdd2631f963d4c25de8aff29f335e131b32a175434ee21460a7aa470c508ad13662cf9052649bb4eb974dbd709eb9e6797fb84e0823 libbluray-0.9.3.tar.bz2
diff --git a/package/libbluray/libbluray.mk b/package/libbluray/libbluray.mk
index 2cc27f1084..dfe58f4e1c 100644
--- a/package/libbluray/libbluray.mk
+++ b/package/libbluray/libbluray.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBBLURAY_VERSION = 0.9.2
+LIBBLURAY_VERSION = 0.9.3
LIBBLURAY_SITE = http://get.videolan.org/libbluray/$(LIBBLURAY_VERSION)
LIBBLURAY_SOURCE = libbluray-$(LIBBLURAY_VERSION).tar.bz2
LIBBLURAY_INSTALL_STAGING = YES
diff --git a/package/libbsd/0001-build-clock_gettime-might-need-librt.patch b/package/libbsd/0001-build-clock_gettime-might-need-librt.patch
deleted file mode 100644
index ad6fcdbdf0..0000000000
--- a/package/libbsd/0001-build-clock_gettime-might-need-librt.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 188049ac7adcabfa66e5b6a674ac28a2f7da81f3 Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-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 <gustavo@zacarias.com.ar>
----
-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/libbsd.hash b/package/libbsd/libbsd.hash
index f77c0aa4d6..bc6c7cfb82 100644
--- a/package/libbsd/libbsd.hash
+++ b/package/libbsd/libbsd.hash
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
-sha256 b2f644cae94a6e2fe109449c20ad79a0f6ee4faec2205b07eefa0020565e250a libbsd-0.8.2.tar.xz
+sha256 934b634f4dfd865b6482650b8f522c70ae65c463529de8be907b53c89c3a34a8 libbsd-0.8.3.tar.xz
diff --git a/package/libbsd/libbsd.mk b/package/libbsd/libbsd.mk
index f750d752fe..a932f2b483 100644
--- a/package/libbsd/libbsd.mk
+++ b/package/libbsd/libbsd.mk
@@ -4,13 +4,11 @@
#
################################################################################
-LIBBSD_VERSION = 0.8.2
+LIBBSD_VERSION = 0.8.3
LIBBSD_SOURCE = libbsd-$(LIBBSD_VERSION).tar.xz
LIBBSD_SITE = http://libbsd.freedesktop.org/releases
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/libevdev/libevdev.hash b/package/libevdev/libevdev.hash
index 20ca4fbecb..a4fcd9b26a 100644
--- a/package/libevdev/libevdev.hash
+++ b/package/libevdev/libevdev.hash
@@ -1,2 +1,2 @@
-# Hash from http://lists.freedesktop.org/archives/input-tools/2016-January/001240.html
-sha256 7b2ae1a0c7f9f7a96198ddc8fd167f090f233d6cbd8168b847e4f968445132d3 libevdev-1.4.6.tar.xz
+# Hash from https://lists.freedesktop.org/archives/input-tools/2016-May/001301.html
+sha256 17630821a57e6e3f02e01ade836f24068df9bd530067091152b0d468c3a86f40 libevdev-1.5.1.tar.xz
diff --git a/package/libevdev/libevdev.mk b/package/libevdev/libevdev.mk
index 5513191a06..b0832d8409 100644
--- a/package/libevdev/libevdev.mk
+++ b/package/libevdev/libevdev.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBEVDEV_VERSION = 1.4.6
+LIBEVDEV_VERSION = 1.5.1
LIBEVDEV_SITE = http://www.freedesktop.org/software/libevdev
LIBEVDEV_SOURCE = libevdev-$(LIBEVDEV_VERSION).tar.xz
LIBEVDEV_LICENSE = X11
diff --git a/package/libftdi/Config.in b/package/libftdi/Config.in
index 8e02cb914c..beb42d34c5 100644
--- a/package/libftdi/Config.in
+++ b/package/libftdi/Config.in
@@ -13,14 +13,12 @@ if BR2_PACKAGE_LIBFTDI
config BR2_PACKAGE_LIBTFDI_CPP
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
diff --git a/package/libftdi1/Config.in b/package/libftdi1/Config.in
index 61d4c1cf20..aca797b62a 100644
--- a/package/libftdi1/Config.in
+++ b/package/libftdi1/Config.in
@@ -14,14 +14,12 @@ config BR2_PACKAGE_LIBFTDI1_LIBFTDIPP1
select BR2_PACKAGE_BOOST
depends on BR2_INSTALL_LIBSTDCPP # boost
depends on BR2_TOOLCHAIN_HAS_THREADS # boost
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
depends on BR2_USE_WCHAR # boost
help
C++ bindings for libftdi
comment "libftdipp1 needs a toolchain w/ C++, wchar"
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
config BR2_PACKAGE_LIBFTDI1_PYTHON_BINDINGS
bool "python bindings"
diff --git a/package/libgtk3/libgtk3.hash b/package/libgtk3/libgtk3.hash
index 78bfc868ba..b6998a4968 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.20/gtk+-3.20.4.sha256sum
-sha256 e7e3aaf54a54dd1c1ca0588939254abe31329e0bcd280a12290d5306b41ea03f gtk+-3.20.4.tar.xz
+# From http://ftp.gnome.org/pub/gnome/sources/gtk+/3.20/gtk+-3.20.6.sha256sum
+sha256 3f8016563a96b1cfef4ac9e795647f6316deb2978ff939b19e4e4f8f936fa4b2 gtk+-3.20.6.tar.xz
diff --git a/package/libgtk3/libgtk3.mk b/package/libgtk3/libgtk3.mk
index 0ba7928fa3..f447e7a190 100644
--- a/package/libgtk3/libgtk3.mk
+++ b/package/libgtk3/libgtk3.mk
@@ -5,7 +5,7 @@
################################################################################
LIBGTK3_VERSION_MAJOR = 3.20
-LIBGTK3_VERSION = $(LIBGTK3_VERSION_MAJOR).4
+LIBGTK3_VERSION = $(LIBGTK3_VERSION_MAJOR).6
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/libiio/0001-cmake-libxml2-detection-try-first-the-CMake-module-f.patch b/package/libiio/0001-cmake-libxml2-detection-try-first-the-CMake-module-f.patch
index 9f441698f8..17fbdab087 100644
--- a/package/libiio/0001-cmake-libxml2-detection-try-first-the-CMake-module-f.patch
+++ b/package/libiio/0001-cmake-libxml2-detection-try-first-the-CMake-module-f.patch
@@ -1,42 +1,43 @@
-From 4f849e1d2287206cfb7ff0fdeca96c22383b0d53 Mon Sep 17 00:00:00 2001
+From b613e0fe7999cfff9efb646eb388ea1e58952e30 Mon Sep 17 00:00:00 2001
From: Samuel Martin <s.martin49@gmail.com>
-Date: Mon, 29 Dec 2014 19:05:13 +0100
-Subject: [PATCH] cmake: libxml2 detection: try first the CMake module from
- libxml2
+Date: Thu, 14 Apr 2016 12:59:27 -0400
+Subject: [PATCH] cmake: libxml2 detection: try CMake module from libxml2
Libxml2 >=2.9.2 provides its own CMake module, so check for it before
falling back on the CMake's module FindLibXml2.cmake.
+Updated for v0.6 by: Matt Fornero <matt.fornero@mathworks.com>
+
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+Signed-off-by: Matt Fornero <matt.fornero@mathworks.com>
---
- CMakeLists.txt | 14 +++++++++++++-
- 1 file changed, 13 insertions(+), 1 deletion(-)
+ CMakeLists.txt | 13 ++++++++++++-
+ 1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 393fee3..b4f1d26 100644
+index 70f61f0..4a4209b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -38,7 +38,19 @@ endif()
- find_library(AVAHI_CLIENT_LIBRARIES avahi-client)
- find_library(AVAHI_COMMON_LIBRARIES avahi-common)
- find_library(PTHREAD_LIBRARIES pthread)
--include(FindLibXml2)
-+
-+# Since libxml2-2.9.2, libxml2 provides its own LibXml2-config.cmake, with all
-+# variables correctly set.
-+# So, try first to find the CMake module provided by libxml2 package, then fallback
-+# on the CMake's FindLibXml2.cmake module (which can lack some definition, especially
-+# in static build case).
-+find_package(LibXml2 QUIET NO_MODULE)
-+if(DEFINED LIBXML2_VERSION_STRING)
-+ set(LIBXML2_FOUND ON)
-+ set(LIBXML2_INCLUDE_DIR ${LIBXML2_INCLUDE_DIRS})
-+else()
-+ include(FindLibXml2)
-+endif()
+@@ -143,7 +143,18 @@ if(WITH_NETWORK_BACKEND)
+ endif()
+
+ if (NEED_LIBXML2)
+- include(FindLibXml2)
++ # Since libxml2-2.9.2, libxml2 provides its own LibXml2-config.cmake, with all
++ # variables correctly set.
++ # So, try first to find the CMake module provided by libxml2 package, then fallback
++ # on the CMake's FindLibXml2.cmake module (which can lack some definition, especially
++ # in static build case).
++ find_package(LibXml2 QUIET NO_MODULE)
++ if(DEFINED LIBXML2_VERSION_STRING)
++ set(LIBXML2_FOUND ON)
++ set(LIBXML2_INCLUDE_DIR ${LIBXML2_INCLUDE_DIRS})
++ else()
++ include(FindLibXml2)
++ endif()
- set(LIBIIO_CFILES channel.c device.c context.c buffer.c utilities.c)
- set(LIBIIO_HEADERS iio.h)
+ if (NOT LIBXML2_FOUND)
+ message(SEND_ERROR "The selected backends require libxml2 to be installed")
--
-2.2.1
+1.7.10.4
diff --git a/package/libiio/0002-cmake-fix-build-on-unix-systems-without-cpp.patch b/package/libiio/0002-cmake-fix-build-on-unix-systems-without-cpp.patch
deleted file mode 100644
index 4839a394cc..0000000000
--- a/package/libiio/0002-cmake-fix-build-on-unix-systems-without-cpp.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 2e6fa357ffbe755bfecaecad4fc82e3307fe2831 Mon Sep 17 00:00:00 2001
-From: Paul Cercueil <paul.cercueil@analog.com>
-Date: Wed, 22 Jul 2015 10:25:01 +0200
-Subject: [PATCH] CMake: Fix build on UNIX systems without a C++ compiler
-
-Signed-off-by: Paul Cercueil <paul.cercueil@analog.com>
----
- bindings/csharp/CMakeLists.txt | 2 +-
- bindings/python/CMakeLists.txt | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/bindings/csharp/CMakeLists.txt b/bindings/csharp/CMakeLists.txt
-index 8aafb8f..fceab88 100644
---- a/bindings/csharp/CMakeLists.txt
-+++ b/bindings/csharp/CMakeLists.txt
-@@ -1,5 +1,5 @@
- cmake_minimum_required(VERSION 2.8.7)
--project(libiio-sharp)
-+project(libiio-sharp LANGUAGES NONE)
-
- find_program(MCS_EXECUTABLE
- NAMES mcs csc
-diff --git a/bindings/python/CMakeLists.txt b/bindings/python/CMakeLists.txt
-index 22ffdb4..76ceae8 100644
---- a/bindings/python/CMakeLists.txt
-+++ b/bindings/python/CMakeLists.txt
-@@ -1,5 +1,5 @@
- cmake_minimum_required(VERSION 2.8.7)
--project(libiio-py)
-+project(libiio-py LANGUAGES NONE)
-
- include(FindPythonInterp)
-
---
-2.1.4
-
diff --git a/package/libiio/libiio.hash b/package/libiio/libiio.hash
index 28b9c63e62..da42c21f60 100644
--- a/package/libiio/libiio.hash
+++ b/package/libiio/libiio.hash
@@ -1,2 +1,2 @@
-# From https://github.com/analogdevicesinc/libiio/archive/v0.5/
-sha256 c41cdcfeae8717e72f1100b4dac9d7cc9d86f4e0731da3354149cb7e051666f3 libiio-0.5.tar.gz
+# From https://github.com/analogdevicesinc/libiio/archive/v0.6/
+sha256 efd3b4ebdba01dd2bfbdce8e222356b4fec2b96daab14f99691b5c1c9089e466 libiio-0.6.tar.gz
diff --git a/package/libiio/libiio.mk b/package/libiio/libiio.mk
index 0e92b738a8..e5edb5c39f 100644
--- a/package/libiio/libiio.mk
+++ b/package/libiio/libiio.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBIIO_VERSION = 0.5
+LIBIIO_VERSION = 0.6
LIBIIO_SITE = $(call github,analogdevicesinc,libiio,v$(LIBIIO_VERSION))
LIBIIO_INSTALL_STAGING = YES
LIBIIO_LICENSE = LGPLv2.1+
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
deleted file mode 100644
index e36862a12d..0000000000
--- a/package/libinput/0001-rename-log_msg-to-libinput_log_msg.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-From bf4a4a4e2b0479322fe16c9e1f15f146daa893ee Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@openwide.fr>
-Date: Thu, 21 Aug 2014 18:18:16 +0200
-Subject: [PATCH] rename log_msg to libinput_log_msg
-
-This fixes a conflict between libevdev and libinput on the definition
-of the log_msg() symbol.
-
-http://autobuild.buildroot.net/results/c13/c133b7c706ee31302125df8ca94f4d0f0152c6c6/build-end.log
-
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
-[yann.morin.1998@free.fr: rebase on-top of 0.6.0]
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-[ps.report@gmx.net: rebase on top of 0.7.0]
-Signed-off-by: Peter Seiderer <ps.report@gmx.net>
----
- src/libinput-private.h | 14 +++++++-------
- src/libinput.c | 2 +-
- 2 files changed, 8 insertions(+), 8 deletions(-)
-
-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
-@@ -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__)
--#define log_error(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, __VA_ARGS__)
--#define log_bug_kernel(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "kernel bug: " __VA_ARGS__)
--#define log_bug_libinput(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "libinput bug: " __VA_ARGS__)
--#define log_bug_client(li_, ...) log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "client bug: " __VA_ARGS__)
-+#define log_debug(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_DEBUG, __VA_ARGS__)
-+#define log_info(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_INFO, __VA_ARGS__)
-+#define log_error(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, __VA_ARGS__)
-+#define log_bug_kernel(li_, ...) libinput_log_msg((li_), LIBINPUT_LOG_PRIORITY_ERROR, "kernel bug: " __VA_ARGS__)
-+#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, ...)
- 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
-@@ -155,7 +155,7 @@
- }
-
- void
--log_msg(struct libinput *libinput,
-+libinput_log_msg(struct libinput *libinput,
- 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 43fcf5ddec..faf95c39fe 100644
--- a/package/libinput/libinput.hash
+++ b/package/libinput/libinput.hash
@@ -1,2 +1,2 @@
-# From https://lists.freedesktop.org/archives/wayland-devel/2016-April/028215.html
-sha256 aee3650ad2a864ab9a10e7e63df543cc2b475f6bf3974751037a2df325dabbb1 libinput-1.2.4.tar.xz
+# From https://lists.freedesktop.org/archives/wayland-devel/2016-May/029126.html
+sha256 cdff653d93395c718f367af61fee866914bc45de75ac94abe7dc1b720462aca9 libinput-1.3.1.tar.xz
diff --git a/package/libinput/libinput.mk b/package/libinput/libinput.mk
index bd8fe2cbcc..2ff0de3685 100644
--- a/package/libinput/libinput.mk
+++ b/package/libinput/libinput.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBINPUT_VERSION = 1.2.4
+LIBINPUT_VERSION = 1.3.1
LIBINPUT_SOURCE = libinput-$(LIBINPUT_VERSION).tar.xz
LIBINPUT_SITE = http://www.freedesktop.org/software/libinput
LIBINPUT_DEPENDENCIES = host-pkgconf libevdev mtdev udev
diff --git a/package/libpng/0001-Disable-pngfix-and-png-fix-itxt.patch b/package/libpng/0001-Disable-pngfix-and-png-fix-itxt.patch
new file mode 100644
index 0000000000..30c3623e43
--- /dev/null
+++ b/package/libpng/0001-Disable-pngfix-and-png-fix-itxt.patch
@@ -0,0 +1,44 @@
+From 60c3ee917c8e7a4760b1ef7c3dc2b44a615150d3 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Thu, 26 May 2016 16:26:18 -0300
+Subject: [PATCH] Disable pngfix and png-fix-itxt
+
+Disable the new pngfix and png-fix-itxt tools: they take up space, fail
+to build on some oddball toolchain configurations and aren't
+expected/needed in a non-interactive embedded system.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ Makefile.am | 2 +-
+ Makefile.in | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 7212951..3430dca 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -18,7 +18,7 @@ check_PROGRAMS += timepng
+ endif
+
+ # Utilities - installed
+-bin_PROGRAMS= pngfix png-fix-itxt
++bin_PROGRAMS=
+
+ # This ensures that pnglibconf.h gets built at the start of 'make all' or
+ # 'make check', but it does not add dependencies to the individual programs,
+diff --git a/Makefile.in b/Makefile.in
+index a66f6aa..4e67782 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -104,7 +104,7 @@ check_PROGRAMS = pngtest$(EXEEXT) pngunknown$(EXEEXT) \
+ pngstest$(EXEEXT) pngvalid$(EXEEXT) pngimage$(EXEEXT) \
+ $(am__EXEEXT_1)
+ @HAVE_CLOCK_GETTIME_TRUE@am__append_1 = timepng
+-bin_PROGRAMS = pngfix$(EXEEXT) png-fix-itxt$(EXEEXT)
++bin_PROGRAMS =
+ @PNG_ARM_NEON_TRUE@am__append_2 = arm/arm_init.c\
+ @PNG_ARM_NEON_TRUE@ arm/filter_neon.S arm/filter_neon_intrinsics.c
+
+--
+2.7.3
+
diff --git a/package/libpng/0001-disable-tools.patch b/package/libpng/0001-disable-tools.patch
deleted file mode 100644
index e30eca9ffc..0000000000
--- a/package/libpng/0001-disable-tools.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Disable the new pngfix and png-fix-itxt tools: they take up space, fail to
-build on some oddball toolchain configurations and aren't expected/needed
-in a non-interactive embedded system.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura libpng-1.6.10.orig/Makefile.am libpng-1.6.10/Makefile.am
---- libpng-1.6.10.orig/Makefile.am 2014-03-17 08:51:25.812005079 -0300
-+++ libpng-1.6.10/Makefile.am 2014-03-17 09:14:28.807586433 -0300
-@@ -10,7 +10,7 @@
- check_PROGRAMS= pngtest pngunknown pngstest pngvalid pngimage
-
- # Utilities - installed
--bin_PROGRAMS= pngfix png-fix-itxt
-+bin_PROGRAMS=
-
- # This ensures that pnglibconf.h gets built at the start of 'make all' or
- # 'make check', but it does not add dependencies to the individual programs,
-diff -Nura libpng-1.6.10.orig/Makefile.in libpng-1.6.10/Makefile.in
---- libpng-1.6.10.orig/Makefile.in 2014-03-17 08:51:25.807005070 -0300
-+++ libpng-1.6.10/Makefile.in 2014-03-17 09:14:44.846617623 -0300
-@@ -87,7 +87,7 @@
- host_triplet = @host@
- check_PROGRAMS = pngtest$(EXEEXT) pngunknown$(EXEEXT) \
- pngstest$(EXEEXT) pngvalid$(EXEEXT) pngimage$(EXEEXT)
--bin_PROGRAMS = pngfix$(EXEEXT) png-fix-itxt$(EXEEXT)
-+bin_PROGRAMS =
- @PNG_ARM_NEON_TRUE@am__append_1 = arm/arm_init.c\
- @PNG_ARM_NEON_TRUE@ arm/filter_neon.S arm/filter_neon_intrinsics.c
-
diff --git a/package/libpng/0002-ignore-symbol-prefix.patch b/package/libpng/0002-Don-t-append-prefix-to-symbol-names-in-version-script.patch
index 5a8ede58a9..0754e21381 100644
--- a/package/libpng/0002-ignore-symbol-prefix.patch
+++ b/package/libpng/0002-Don-t-append-prefix-to-symbol-names-in-version-script.patch
@@ -1,7 +1,7 @@
-From dbfea83a7436cbac34cc883ab2b7befacaf02c40 Mon Sep 17 00:00:00 2001
-From: Danomi Manchego <danomimanchego123@gmail.com>
-Date: Tue, 23 Jun 2015 13:54:42 -0400
-Subject: libpng: don't append prefix to symbol names in version script
+From 473fdecd9a580b45251480b8ccbbb1927c598310 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Thu, 26 May 2016 16:27:13 -0300
+Subject: [PATCH] Don't append prefix to symbol names in version script
Even if Blackfin GNU toolchain add prefix '_' to all symbols,
symbol prefix is not accepted in the link flag --version-script.
@@ -9,19 +9,20 @@ Don't append prefix in the symbols in the version script file.
Original patch by: Sonic Zhang <sonic.zhang@analog.com>
-Rebase to apply cleanly.
+[Gustavo: update for 1.6.22]
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
- Makefile.am | 2 +-
- Makefile.in | 2 +-
+ Makefile.am | 2 +-
+ Makefile.in | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/Makefile.am b/Makefile.am
-index dcc5439..e543c81 100644
+index 3430dca..db6a7a2 100644
--- a/Makefile.am
+++ b/Makefile.am
-@@ -231,7 +231,7 @@ contrib/tools/pngfix.o: pnglibconf.h
+@@ -236,7 +236,7 @@ contrib/tools/pngfix.o: pnglibconf.h
# interfering with the symbol file format.
SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0'\
-DPNGLIB_VERSION='@PNGLIB_VERSION@'\
@@ -31,18 +32,18 @@ index dcc5439..e543c81 100644
if DO_PNG_PREFIX
diff --git a/Makefile.in b/Makefile.in
-index 975f931..a3e0552 100644
+index 4e67782..5f468d9 100644
--- a/Makefile.in
+++ b/Makefile.in
-@@ -747,7 +747,7 @@ SUFFIXES = .chk .out
+@@ -754,7 +754,7 @@ SUFFIXES = .chk .out
# interfering with the symbol file format.
SYMBOL_CFLAGS = -DPNGLIB_LIBNAME='PNG@PNGLIB_MAJOR@@PNGLIB_MINOR@_0' \
-DPNGLIB_VERSION='@PNGLIB_VERSION@' \
- -DSYMBOL_PREFIX='$(SYMBOL_PREFIX)' -DPNG_NO_USE_READ_MACROS \
+ -DSYMBOL_PREFIX='' -DPNG_NO_USE_READ_MACROS \
- -DPNG_BUILDING_SYMBOL_TABLE $(am__append_5)
+ -DPNG_BUILDING_SYMBOL_TABLE $(am__append_6)
# EXT_LIST is a list of the possibly library directory extensions, this exists
--
-1.7.9.5
+2.7.3
diff --git a/package/libpng/libpng.hash b/package/libpng/libpng.hash
index 3b2db43ce5..e9d3674b7a 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.21/
-md5 3bacb4728f6694a64ad9052769d6a4ce libpng-1.6.21.tar.xz
-sha1 978b2f4e007eda56032001493ddb97d20f0ab291 libpng-1.6.21.tar.xz
+# From http://sourceforge.net/projects/libpng/files/libpng16/1.6.22/
+md5 f4ca54a3d945b8678fafed168c503f3b libpng-1.6.22.tar.xz
+sha1 e82ec5ba0e05698c221c78f70b4c5513eb40e199 libpng-1.6.22.tar.xz
diff --git a/package/libpng/libpng.mk b/package/libpng/libpng.mk
index 7ce4a3a693..df2cbcdc6d 100644
--- a/package/libpng/libpng.mk
+++ b/package/libpng/libpng.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBPNG_VERSION = 1.6.21
+LIBPNG_VERSION = 1.6.22
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/libserial/Config.in b/package/libserial/Config.in
index df5d1b5432..bd936b93b8 100644
--- a/package/libserial/Config.in
+++ b/package/libserial/Config.in
@@ -1,7 +1,6 @@
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
@@ -12,5 +11,4 @@ config BR2_PACKAGE_LIBSERIAL
http://libserial.sourceforge.net/
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/linux-headers/Config.in.host b/package/linux-headers/Config.in.host
index ac89a6b50c..c07455a97b 100644
--- a/package/linux-headers/Config.in.host
+++ b/package/linux-headers/Config.in.host
@@ -6,7 +6,7 @@ comment "Kernel Header Options"
choice
prompt "Kernel Headers"
default BR2_KERNEL_HEADERS_AS_KERNEL if BR2_LINUX_KERNEL
- default BR2_KERNEL_HEADERS_4_5
+ default BR2_KERNEL_HEADERS_4_6
help
Select the version of kernel header files you wish to use.
You must select the correct set of header files to match
@@ -78,6 +78,10 @@ choice
bool "Linux 4.5.x kernel headers"
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
+ config BR2_KERNEL_HEADERS_4_6
+ bool "Linux 4.6.x kernel headers"
+ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6
+
config BR2_KERNEL_HEADERS_VERSION
bool "Manually specified Linux version"
endchoice
@@ -99,6 +103,10 @@ 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_6
+ bool "4.6.x"
+ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6
+
config BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_5
bool "4.5.x"
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
@@ -223,4 +231,5 @@ config BR2_DEFAULT_KERNEL_HEADERS
default "4.3.6" if BR2_KERNEL_HEADERS_4_3
default "4.4.11" if BR2_KERNEL_HEADERS_4_4
default "4.5.5" if BR2_KERNEL_HEADERS_4_5
+ default "4.6" if BR2_KERNEL_HEADERS_4_6
default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
diff --git a/package/lvm2/lvm2.hash b/package/lvm2/lvm2.hash
index 2aa7d78ba2..97b1b58275 100644
--- a/package/lvm2/lvm2.hash
+++ b/package/lvm2/lvm2.hash
@@ -1,2 +1,2 @@
# From ftp://sources.redhat.com/pub/lvm2/releases/sha512.sum
-sha512 1c1c3f95ab76e23629ee54b87d36536f887d8a30976413206491a3a13101b717948b3ab4a7778cb1e74f258f429871076f0b9d098785835c4885eb61def793ca LVM2.2.02.153.tgz
+sha512 aa0599d9c77099f750237ad230c91a35890b248130b81bfd81fc72f510b2b21f28a87491532f4ab1d040338fa6945af6391d032a574538f8672072ac8c185eef LVM2.2.02.154.tgz
diff --git a/package/lvm2/lvm2.mk b/package/lvm2/lvm2.mk
index d45a108f37..1a3241da42 100644
--- a/package/lvm2/lvm2.mk
+++ b/package/lvm2/lvm2.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LVM2_VERSION = 2.02.153
+LVM2_VERSION = 2.02.154
LVM2_SOURCE = LVM2.$(LVM2_VERSION).tgz
LVM2_SITE = ftp://sources.redhat.com/pub/lvm2/releases
LVM2_INSTALL_STAGING = YES
diff --git a/package/make/make.hash b/package/make/make.hash
index db95c60191..528822f3a5 100644
--- a/package/make/make.hash
+++ b/package/make/make.hash
@@ -1,2 +1,4 @@
+# From http://lists.gnu.org/archive/html/info-gnu/2016-05/msg00013.html
+sha1 85ad14d08766201ffe71efa866f4fb91 make-4.2.tar.bz2
# Locally calculated after checking signature
-sha256 0bc7613389650ee6a24554b52572a272f7356164fd2c4132b0bcf13123e4fca5 make-4.1.tar.bz2
+sha256 4e5ce3b62fe5d75ff8db92b7f6df91e476d10c3aceebf1639796dc5bfece655f make-4.2.tar.bz2
diff --git a/package/make/make.mk b/package/make/make.mk
index 20702dc237..43f4f7788d 100644
--- a/package/make/make.mk
+++ b/package/make/make.mk
@@ -4,7 +4,7 @@
#
################################################################################
-MAKE_VERSION = 4.1
+MAKE_VERSION = 4.2
MAKE_SOURCE = make-$(MAKE_VERSION).tar.bz2
MAKE_SITE = $(BR2_GNU_MIRROR)/make
MAKE_DEPENDENCIES = $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext)
diff --git a/package/mpd/Config.in b/package/mpd/Config.in
index 31be8bb774..dfc1812fad 100644
--- a/package/mpd/Config.in
+++ b/package/mpd/Config.in
@@ -5,7 +5,6 @@ menuconfig BR2_PACKAGE_MPD
depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
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
@@ -312,7 +311,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/mpg123/mpg123.hash b/package/mpg123/mpg123.hash
index a6424d3604..673220681f 100644
--- a/package/mpg123/mpg123.hash
+++ b/package/mpg123/mpg123.hash
@@ -1,2 +1,2 @@
# Locally calculated after checking pgp signature
-sha256 5c431da7e7446fae586c9207772dc0038ce2bfe75f0274a7933d1b4a7d84e6c6 mpg123-1.23.3.tar.bz2
+sha256 3495e678dec9a60f29cbcd4fc698abc4c811ec60d1276e744f7a10ac35023b48 mpg123-1.23.4.tar.bz2
diff --git a/package/mpg123/mpg123.mk b/package/mpg123/mpg123.mk
index 19a0de11e9..d943b08b61 100644
--- a/package/mpg123/mpg123.mk
+++ b/package/mpg123/mpg123.mk
@@ -4,7 +4,7 @@
#
################################################################################
-MPG123_VERSION = 1.23.3
+MPG123_VERSION = 1.23.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
diff --git a/package/mplayer/0004-configure-zlib.patch b/package/mplayer/0004-configure-zlib.patch
new file mode 100644
index 0000000000..7c1b2c8ec0
--- /dev/null
+++ b/package/mplayer/0004-configure-zlib.patch
@@ -0,0 +1,30 @@
+configure: Fix compilation when zlib is missing.
+
+Downloaded from upstream commit:
+
+$ LC_ALL=C svn log -r 37816
+------------------------------------------------------------------------
+r37816 | reimar | 2016-02-28 14:39:42 +0100 (Sun, 28 Feb 2016) | 3 lines
+
+configure: Fix compilation when zlib is missing.
+
+APNG and a few other decoders also cannot be enabled without it.
+------------------------------------------------------------------------
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+Index: configure
+===================================================================
+--- a/configure (revision 37795)
++++ b/configure (revision 37816)
+@@ -6464,8 +6464,8 @@
+ mplayer_encoders="$mplayer_encoders PNG_ENCODER"
+ else
+ def_zlib='#define CONFIG_ZLIB 0'
+- libavdecoders=$(filter_out_component decoder 'FLASHSV FLASHSV2 PNG ZMBV ZLIB DXA EXR G2M TSCC ZEROCODEC')
+- libavencoders=$(filter_out_component encoder 'FLASHSV FLASHSV2 PNG ZMBV ZLIB')
++ libavdecoders=$(filter_out_component decoder 'APNG FLASHSV FLASHSV2 PNG ZMBV ZLIB DXA EXR G2M RSCC SCREENPRESSO TDSC TSCC ZEROCODEC')
++ libavencoders=$(filter_out_component encoder 'APNG FLASHSV FLASHSV2 PNG ZMBV ZLIB')
+ fi
+ echores "$_zlib"
+
diff --git a/package/mplayer/mplayer.hash b/package/mplayer/mplayer.hash
index 49c56316bf..e6b8842253 100644
--- a/package/mplayer/mplayer.hash
+++ b/package/mplayer/mplayer.hash
@@ -1,4 +1,4 @@
-# From http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.2.tar.xz.md5
-md5 58409fccb8ef33013fb780405405491f MPlayer-1.2.tar.xz
-# From http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.2.tar.xz.sha1
-sha1 64fad840dfae466ab5ef3be2b6c74058892cd981 MPlayer-1.2.tar.xz
+# From http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.3.0.tar.xz.md5
+md5 e8a4d77ad4f509e81dd5e13b51636c1d MPlayer-1.3.0.tar.xz
+# From http://www.mplayerhq.hu/MPlayer/releases/MPlayer-1.3.0.tar.xz.sha1
+sha1 11db20434a4e1aabb9c52f7712241dae1b3730e3 MPlayer-1.3.0.tar.xz
diff --git a/package/mplayer/mplayer.mk b/package/mplayer/mplayer.mk
index 33eba38037..347ed5e295 100644
--- a/package/mplayer/mplayer.mk
+++ b/package/mplayer/mplayer.mk
@@ -4,7 +4,7 @@
#
################################################################################
-MPLAYER_VERSION = 1.2
+MPLAYER_VERSION = 1.3.0
MPLAYER_SOURCE = MPlayer-$(MPLAYER_VERSION).tar.xz
MPLAYER_SITE = http://www.mplayerhq.hu/MPlayer/releases
MPLAYER_DEPENDENCIES = host-pkgconf
diff --git a/package/openzwave/0001-Fix-warning-on-wcsdup-implicit-declaration.patch b/package/openzwave/0001-Fix-warning-on-wcsdup-implicit-declaration.patch
new file mode 100644
index 0000000000..1fe30e41d8
--- /dev/null
+++ b/package/openzwave/0001-Fix-warning-on-wcsdup-implicit-declaration.patch
@@ -0,0 +1,29 @@
+From 0878d933223158343af3fe13e03bcd128e8b4cbc Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fabrice.fontaine@orange.com>
+Date: Fri, 22 Apr 2016 17:06:27 +0200
+Subject: [PATCH 1/1] Fix warning on wcsdup implicit declaration
+
+Define __GNU_SOURCE in cpp/hidapi/linux/hid.c (like already done in
+cpp/hidapi/libusb/hid.c) to fix implicit declaration of wcsdup function
+
+Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
+---
+ cpp/hidapi/linux/hid.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/cpp/hidapi/linux/hid.c b/cpp/hidapi/linux/hid.c
+index dbf9b9b..c3eb22b 100644
+--- a/cpp/hidapi/linux/hid.c
++++ b/cpp/hidapi/linux/hid.c
+@@ -21,6 +21,8 @@
+ http://github.com/signal11/hidapi .
+ ********************************************************/
+
++#define _GNU_SOURCE /* needed for wcsdup() before glibc 2.10 */
++
+ /* C */
+ #include <stdio.h>
+ #include <string.h>
+--
+1.9.1
+
diff --git a/package/openzwave/0002-Ensure-correct-git-repository-path.patch b/package/openzwave/0002-Ensure-correct-git-repository-path.patch
new file mode 100644
index 0000000000..6c40ec9d0f
--- /dev/null
+++ b/package/openzwave/0002-Ensure-correct-git-repository-path.patch
@@ -0,0 +1,29 @@
+From 89cdc83307f61422db21cc7965ea294862c128bf Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fabrice.fontaine@orange.com>
+Date: Mon, 30 May 2016 10:37:42 +0200
+Subject: [PATCH 2/2] Ensure correct git repository path
+
+Add "--git-dir ./.git" to ensure the correct git repository path is used (this
+fix a bug when trying to add openzwave to buildroot build system)
+
+Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
+---
+ cpp/build/support.mk | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cpp/build/support.mk b/cpp/build/support.mk
+index 3f74c7e..f529b25 100644
+--- a/cpp/build/support.mk
++++ b/cpp/build/support.mk
+@@ -29,7 +29,7 @@ GIT := $(shell which git)
+ ifeq ($(GIT),)
+ VERSION_REV ?= 0
+ else
+-GITVERSION := $(shell $(GIT) describe --long --tags --dirty 2>/dev/null | sed s/^v//)
++GITVERSION := $(shell $(GIT) --git-dir ./.git describe --long --tags --dirty 2>/dev/null | sed s/^v//)
+ ifeq ($(GITVERSION),)
+ GITVERSION := $(VERSION_MAJ).$(VERSION_MIN).-1
+ VERSION_REV := 0
+--
+2.7.4
+
diff --git a/package/openzwave/Config.in b/package/openzwave/Config.in
new file mode 100644
index 0000000000..190b88b656
--- /dev/null
+++ b/package/openzwave/Config.in
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_OPENZWAVE
+ bool "openzwave"
+ depends on BR2_TOOLCHAIN_HAS_THREADS
+ depends on BR2_INSTALL_LIBSTDCPP
+ depends on BR2_PACKAGE_HAS_UDEV
+ depends on BR2_USE_WCHAR
+ help
+ Free software library that interfaces with selected Z-Wave PC
+ controllers, allowing anyone to create applications that manipulate
+ and respond to devices on a Z-Wave network, without requiring
+ in-depth knowledge of the Z-Wave protocol
+
+ http://www.openzwave.net
+
+comment "openzwave needs udev and a toolchain w/ C++, threads, wchar"
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
+ !BR2_PACKAGE_HAS_UDEV || !BR2_USE_WCHAR
diff --git a/package/openzwave/openzwave.hash b/package/openzwave/openzwave.hash
new file mode 100644
index 0000000000..bab940ef1d
--- /dev/null
+++ b/package/openzwave/openzwave.hash
@@ -0,0 +1,2 @@
+# Locally computed:
+sha256 ca122365f6237dc245be0129eb460e78126976b9c7bd06487795d3acfc9f2a5f openzwave-v1.4.tar.gz
diff --git a/package/openzwave/openzwave.mk b/package/openzwave/openzwave.mk
new file mode 100644
index 0000000000..c8892a9033
--- /dev/null
+++ b/package/openzwave/openzwave.mk
@@ -0,0 +1,51 @@
+################################################################################
+#
+# openzwave
+#
+################################################################################
+
+OPENZWAVE_VERSION = v1.4
+OPENZWAVE_SITE = $(call github,OpenZWave,open-zwave,$(OPENZWAVE_VERSION))
+OPENZWAVE_LICENSE = LGPLv3+, GPLv3 (examples), Apache-2.0 (sh2ju.sh)
+OPENZWAVE_LICENSE_FILES = license/license.txt license/lgpl.txt \
+ license/gpl.txt license/Apache-License-2.0.txt
+
+OPENZWAVE_DEPENDENCIES = host-pkgconf udev
+OPENZWAVE_INSTALL_STAGING = YES
+
+# Set instlibdir to install libopenzwave.so* in the correct directory
+# otherwise openzwave will check that /lib64 exists (on the host) to
+# know if the library should be installed in $(PREFIX)/lib or $(PREFIX)/lib64.
+# Set pkgconfigdir to /lib/pkgconfig to install libopenzwave.pc in the
+# correct directory otherwise openzwave will call
+# "pkg-config --variable pc_path pkg-config" which returns an incorrect value.
+# Set sysconfdir to /etc/openzwave to install openzwave configuration files in
+# the correct directory otherwise openzwave will install configuration files in
+# $(PREFIX)/etc/openzwave.
+# Disable doxygen documentation.
+OPENZWAVE_MAKE_OPTS = \
+ CROSS_COMPILE="$(TARGET_CROSS)" \
+ PREFIX=/usr \
+ instlibdir=/usr/lib \
+ pkgconfigdir=/usr/lib/pkgconfig \
+ sysconfdir=/etc/openzwave \
+ DOXYGEN=
+
+define OPENZWAVE_BUILD_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) $(OPENZWAVE_MAKE_OPTS) -C $(@D)
+endef
+
+define OPENZWAVE_INSTALL_STAGING_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) $(OPENZWAVE_MAKE_OPTS) -C $(@D) \
+ DESTDIR=$(STAGING_DIR) install
+endef
+
+# Delete unneeded ozw_config binary from target directory as this is an utility
+# application used to get the openzwave build configuration.
+define OPENZWAVE_INSTALL_TARGET_CMDS
+ $(TARGET_MAKE_ENV) $(MAKE) $(OPENZWAVE_MAKE_OPTS) -C $(@D) \
+ DESTDIR=$(TARGET_DIR) install
+ rm -f $(TARGET_DIR)/usr/bin/ozw_config
+endef
+
+$(eval $(generic-package))
diff --git a/package/pciutils/pciutils.hash b/package/pciutils/pciutils.hash
index dd75e426fe..efdb108c61 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 865554cc5604d1644bd8da38d94845405e2a319a6d5acabc6a0296417684a82a pciutils-3.4.1.tar.xz
+sha256 2bf3a4605a562fb6b8b7673bff85a474a5cf383ed7e4bd8886b4f0939013d42f pciutils-3.5.1.tar.xz
diff --git a/package/pciutils/pciutils.mk b/package/pciutils/pciutils.mk
index d3a0e2072c..4714ceacae 100644
--- a/package/pciutils/pciutils.mk
+++ b/package/pciutils/pciutils.mk
@@ -4,7 +4,7 @@
#
################################################################################
-PCIUTILS_VERSION = 3.4.1
+PCIUTILS_VERSION = 3.5.1
PCIUTILS_SITE = $(BR2_KERNEL_MIRROR)/software/utils/pciutils
PCIUTILS_SOURCE = pciutils-$(PCIUTILS_VERSION).tar.xz
PCIUTILS_INSTALL_STAGING = YES
diff --git a/package/php-gnupg/php-gnupg.hash b/package/php-gnupg/php-gnupg.hash
index ef066a506b..f0654b5781 100644
--- a/package/php-gnupg/php-gnupg.hash
+++ b/package/php-gnupg/php-gnupg.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 50065cb81f1ac3ec5fcd796e58c8433071ff24cc14900e6077682717f5239307 gnupg-1.3.6.tgz
+sha256 6f1a4b5a95fe501519de76d66602e46290cc452fc48f3a5ec2eacaffe68d9a01 php-gnupg-30fab6eaf9eb61c65b3b46987442be058cbd7823.tar.gz
diff --git a/package/php-gnupg/php-gnupg.mk b/package/php-gnupg/php-gnupg.mk
index c5964c21c4..c1c6680bb7 100644
--- a/package/php-gnupg/php-gnupg.mk
+++ b/package/php-gnupg/php-gnupg.mk
@@ -4,9 +4,8 @@
#
################################################################################
-PHP_GNUPG_VERSION = 1.3.6
-PHP_GNUPG_SOURCE = gnupg-$(PHP_GNUPG_VERSION).tgz
-PHP_GNUPG_SITE = http://pecl.php.net/get
+PHP_GNUPG_VERSION = 30fab6eaf9eb61c65b3b46987442be058cbd7823
+PHP_GNUPG_SITE = $(call github,Sean-Der,pecl-encryption-gnupg,$(PHP_GNUPG_VERSION))
# phpize does the autoconf magic
PHP_GNUPG_DEPENDENCIES = php libgpgme host-autoconf host-pkgconf
PHP_GNUPG_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \
diff --git a/package/php-memcached/php-memcached.hash b/package/php-memcached/php-memcached.hash
index bc2e97acd3..f2a096f3dd 100644
--- a/package/php-memcached/php-memcached.hash
+++ b/package/php-memcached/php-memcached.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 17b9600f6d4c807f23a3f5c45fcd8775ca2e61d6eda70370af2bef4c6e159f58 memcached-2.2.0.tgz
+sha256 73266212e791a4817da06be1daddf9ff7dd5b5b0b650b3fbd0f5fc6ccc18491b php-memcached-6ee96cad7be5caa1f13a1f3e5a4d5f900b9c04ce.tar.gz
diff --git a/package/php-memcached/php-memcached.mk b/package/php-memcached/php-memcached.mk
index 599e22e615..ea241b2656 100644
--- a/package/php-memcached/php-memcached.mk
+++ b/package/php-memcached/php-memcached.mk
@@ -4,10 +4,8 @@
#
################################################################################
-PHP_MEMCACHED_VERSION = 2.2.0
-PHP_MEMCACHED_SOURCE = memcached-$(PHP_MEMCACHED_VERSION).tgz
-# pecl.php.net returns html with db connect failed
-PHP_MEMCACHED_SITE = http://sources.buildroot.net
+PHP_MEMCACHED_VERSION = 6ee96cad7be5caa1f13a1f3e5a4d5f900b9c04ce
+PHP_MEMCACHED_SITE = $(call github,php-memcached-dev,php-memcached,$(PHP_MEMCACHED_VERSION))
PHP_MEMCACHED_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \
--disable-memcached-sasl \
--with-libmemcached-dir=$(STAGING_DIR)/usr \
diff --git a/package/php-ssh2/php-ssh2.hash b/package/php-ssh2/php-ssh2.hash
index d599662fa4..1e046dfcde 100644
--- a/package/php-ssh2/php-ssh2.hash
+++ b/package/php-ssh2/php-ssh2.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 600c82d2393acf3642f19914f06a7afea57ee05cb8c10e8a5510b32188b97f99 ssh2-0.12.tgz
+sha256 877f2fa9a709aa2dd9567848fae7b45ecac359904296a0aedbf718e99d8568f5 php-ssh2-aa1739ac26c2177d33ab8d064021032bdc2c3a40.tar.gz
diff --git a/package/php-ssh2/php-ssh2.mk b/package/php-ssh2/php-ssh2.mk
index ace68e01fd..cfe60708cb 100644
--- a/package/php-ssh2/php-ssh2.mk
+++ b/package/php-ssh2/php-ssh2.mk
@@ -4,10 +4,8 @@
#
################################################################################
-PHP_SSH2_VERSION = 0.12
-PHP_SSH2_SOURCE = ssh2-$(PHP_SSH2_VERSION).tgz
-# pecl.php.net returns html with db connect failed
-PHP_SSH2_SITE = http://sources.buildroot.net
+PHP_SSH2_VERSION = aa1739ac26c2177d33ab8d064021032bdc2c3a40
+PHP_SSH2_SITE = $(call github,php,pecl-networking-ssh2,$(PHP_SSH2_VERSION))
PHP_SSH2_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \
--with-ssh2=$(STAGING_DIR)/usr
# phpize does the autoconf magic
diff --git a/package/php-yaml/php-yaml.hash b/package/php-yaml/php-yaml.hash
index e4f22a6a5e..a40677ef5f 100644
--- a/package/php-yaml/php-yaml.hash
+++ b/package/php-yaml/php-yaml.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 762ec3d9eb163ac0d063118df8c5e2ee6746dbe8566d32055e7e066e590937c3 yaml-1.1.1.tgz
+sha256 d49acf2b7843258957a16df0d7ced56c0e1fc3eaa54f54289e4012edc002814c yaml-2.0.0RC7.tgz
diff --git a/package/php-yaml/php-yaml.mk b/package/php-yaml/php-yaml.mk
index b6f259df7b..27118906d4 100644
--- a/package/php-yaml/php-yaml.mk
+++ b/package/php-yaml/php-yaml.mk
@@ -4,10 +4,9 @@
#
################################################################################
-PHP_YAML_VERSION = 1.1.1
+PHP_YAML_VERSION = 2.0.0RC7
PHP_YAML_SOURCE = yaml-$(PHP_YAML_VERSION).tgz
-# pecl.php.net returns html with db connect failed
-PHP_YAML_SITE = http://sources.buildroot.net
+PHP_YAML_SITE = https://pecl.php.net/get
PHP_YAML_CONF_OPTS = --with-php-config=$(STAGING_DIR)/usr/bin/php-config \
--with-yaml=$(STAGING_DIR)/usr
# phpize does the autoconf magic
diff --git a/package/php/Config.ext b/package/php/Config.ext
index ee51030ab7..82aaf41eb0 100644
--- a/package/php/Config.ext
+++ b/package/php/Config.ext
@@ -111,22 +111,12 @@ config BR2_PACKAGE_PHP_EXT_DBA_INI
endif
-config BR2_PACKAGE_PHP_EXT_MYSQL
- bool "Mysql"
- depends on BR2_INSTALL_LIBSTDCPP
- depends on BR2_USE_MMU # mysql
- depends on BR2_TOOLCHAIN_HAS_THREADS # mysql
- select BR2_PACKAGE_MYSQL
- help
- MySQL support
-
config BR2_PACKAGE_PHP_EXT_MYSQLI
bool "Mysqli"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_MMU # mysql
depends on BR2_TOOLCHAIN_HAS_THREADS # mysql
select BR2_PACKAGE_MYSQL
- select BR2_PACKAGE_PHP_EXT_MYSQL
help
MySQL Improved extension support
diff --git a/package/php/php.hash b/package/php/php.hash
index f97baea7bf..ace52813ad 100644
--- a/package/php/php.hash
+++ b/package/php/php.hash
@@ -1,2 +1,2 @@
# From http://php.net/downloads.php
-sha256 c96980d7de1d66c821a4ee5809df0076f925b2fe0b8c362d234d92f2f0a178e2 php-5.6.22.tar.xz
+sha256 9cc64a7459242c79c10e79d74feaf5bae3541f604966ceb600c3d2e8f5fe4794 php-7.0.7.tar.xz
diff --git a/package/php/php.mk b/package/php/php.mk
index 90633eff6a..2997b1b7d1 100644
--- a/package/php/php.mk
+++ b/package/php/php.mk
@@ -4,7 +4,7 @@
#
################################################################################
-PHP_VERSION = 5.6.22
+PHP_VERSION = 7.0.7
PHP_SITE = http://www.php.net/distributions
PHP_SOURCE = php-$(PHP_VERSION).tar.xz
PHP_INSTALL_STAGING = YES
@@ -178,11 +178,7 @@ PHP_CONF_OPTS += --with-readline=$(STAGING_DIR)/usr
PHP_DEPENDENCIES += readline
endif
-### Native MySQL extensions
-ifeq ($(BR2_PACKAGE_PHP_EXT_MYSQL),y)
-PHP_CONF_OPTS += --with-mysql=$(STAGING_DIR)/usr
-PHP_DEPENDENCIES += mysql
-endif
+### Native SQL extensions
ifeq ($(BR2_PACKAGE_PHP_EXT_MYSQLI),y)
PHP_CONF_OPTS += --with-mysqli=$(STAGING_DIR)/usr/bin/mysql_config
PHP_DEPENDENCIES += mysql
diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk
index 3904c09043..b03187956e 100644
--- a/package/pkg-generic.mk
+++ b/package/pkg-generic.mk
@@ -393,6 +393,7 @@ ifdef $(3)_OVERRIDE_SRCDIR
endif
$(2)_BASE_NAME = $(1)-$$($(2)_VERSION)
+$(2)_RAW_BASE_NAME = $$($(2)_RAWNAME)-$$($(2)_VERSION)
$(2)_DL_DIR = $$(DL_DIR)/$$($(2)_BASE_NAME)
$(2)_DIR = $$(BUILD_DIR)/$$($(2)_BASE_NAME)
@@ -423,7 +424,7 @@ ifndef $(2)_SOURCE
ifdef $(3)_SOURCE
$(2)_SOURCE = $$($(3)_SOURCE)
else
- $(2)_SOURCE ?= $$($(2)_RAWNAME)-$$($(2)_VERSION).tar.gz
+ $(2)_SOURCE ?= $$($(2)_RAW_BASE_NAME).tar.gz
endif
endif
@@ -481,6 +482,8 @@ endif
$(2)_REDISTRIBUTE ?= YES
+$(2)_REDIST_SOURCES_DIR = $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4)))/$$($(2)_RAW_BASE_NAME)
+
# When a target package is a toolchain dependency set this variable to
# 'NO' so the 'toolchain' dependency is not added to prevent a circular
# dependency
@@ -803,9 +806,10 @@ 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)_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)))
+# Save the source tarball
+ $$(Q)support/scripts/hardlink-or-copy \
+ $$(DL_DIR)/$$($(2)_ACTUAL_SOURCE_TARBALL) \
+ $$($(2)_REDIST_SOURCES_DIR)
endif # redistribute
endif # other packages
diff --git a/package/pkg-python.mk b/package/pkg-python.mk
index b7a702d0f7..9725d24f98 100644
--- a/package/pkg-python.mk
+++ b/package/pkg-python.mk
@@ -253,7 +253,7 @@ ifndef $(2)_INSTALL_TARGET_CMDS
define $(2)_INSTALL_TARGET_CMDS
(cd $$($$(PKG)_BUILDDIR)/; \
$$($$(PKG)_BASE_ENV) $$($$(PKG)_ENV) \
- $$($(2)_PYTHON_INTERPRETER) setup.py install \
+ $$($(2)_PYTHON_INTERPRETER) setup.py install --no-compile \
$$($$(PKG)_BASE_INSTALL_TARGET_OPTS) \
$$($$(PKG)_INSTALL_TARGET_OPTS))
endef
diff --git a/package/postgresql/postgresql.hash b/package/postgresql/postgresql.hash
index 4e4adcb333..4dde5895da 100644
--- a/package/postgresql/postgresql.hash
+++ b/package/postgresql/postgresql.hash
@@ -1,2 +1,2 @@
-# From https://ftp.postgresql.org/pub/source/v9.5.2/postgresql-9.5.2.tar.bz2.sha256
-sha256 f8d132e464506b551ef498719f18cfe9d777709c7a1589dc360afc0b20e47c41 postgresql-9.5.2.tar.bz2
+# From https://ftp.postgresql.org/pub/source/v9.5.3/postgresql-9.5.3.tar.bz2.sha256
+sha256 7385c01dc58acba8d7ac4e6ad42782bd7c0b59272862a3a3d5fe378d4503a0b4 postgresql-9.5.3.tar.bz2
diff --git a/package/postgresql/postgresql.mk b/package/postgresql/postgresql.mk
index 584ab47bf5..8edefb7543 100644
--- a/package/postgresql/postgresql.mk
+++ b/package/postgresql/postgresql.mk
@@ -4,7 +4,7 @@
#
################################################################################
-POSTGRESQL_VERSION = 9.5.2
+POSTGRESQL_VERSION = 9.5.3
POSTGRESQL_SOURCE = postgresql-$(POSTGRESQL_VERSION).tar.bz2
POSTGRESQL_SITE = http://ftp.postgresql.org/pub/source/v$(POSTGRESQL_VERSION)
POSTGRESQL_LICENSE = PostgreSQL
diff --git a/package/pulseview/Config.in b/package/pulseview/Config.in
index bbbfd7672e..46abe78f76 100644
--- a/package/pulseview/Config.in
+++ b/package/pulseview/Config.in
@@ -15,7 +15,6 @@ config BR2_PACKAGE_PULSEVIEW
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU
depends on BR2_INSTALL_LIBSTDCPP
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
# libsigrok
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
help
@@ -27,6 +26,5 @@ config BR2_PACKAGE_PULSEVIEW
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_TOOLCHAIN_GCC_AT_LEAST_4_8 || !BR2_USE_WCHAR \
|| !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP
diff --git a/package/python-argh/Config.in b/package/python-argh/Config.in
new file mode 100644
index 0000000000..5da6625ddd
--- /dev/null
+++ b/package/python-argh/Config.in
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_PYTHON_ARGH
+ bool "python-argh"
+ help
+ An unobtrusive argparse wrapper with natural syntax.
+
+ http://github.com/neithere/argh/
diff --git a/package/python-argh/python-argh.hash b/package/python-argh/python-argh.hash
new file mode 100644
index 0000000000..9e2e0684c9
--- /dev/null
+++ b/package/python-argh/python-argh.hash
@@ -0,0 +1,4 @@
+# md5 from https://pypi.python.org/pypi/argh/json
+md5 5a97ce2ae74bbe3b63194906213f1184 argh-0.26.1.tar.gz
+# sha256 calculated by scanpypi
+sha256 06a7442cb9130fb8806fe336000fcf20edf1f2f8ad205e7b62cec118505510db argh-0.26.1.tar.gz
diff --git a/package/python-argh/python-argh.mk b/package/python-argh/python-argh.mk
new file mode 100644
index 0000000000..4b09e68dd5
--- /dev/null
+++ b/package/python-argh/python-argh.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-argh
+#
+################################################################################
+
+PYTHON_ARGH_VERSION = 0.26.1
+PYTHON_ARGH_SOURCE = argh-$(PYTHON_ARGH_VERSION).tar.gz
+PYTHON_ARGH_SITE = https://pypi.python.org/packages/14/7f/794a7f4a48cba505a4b4c714f81fed844a3a5f7340b171f448711439b09e
+PYTHON_ARGH_SETUP_TYPE = setuptools
+PYTHON_ARGH_LICENSE = LGPLv3+
+PYTHON_ARGH_LICENSE_FILES = README.rst
+
+$(eval $(python-package))
diff --git a/package/python-backports-abc/Config.in b/package/python-backports-abc/Config.in
index 26d8cfd98b..43566279e8 100644
--- a/package/python-backports-abc/Config.in
+++ b/package/python-backports-abc/Config.in
@@ -1,5 +1,6 @@
config BR2_PACKAGE_PYTHON_BACKPORTS_ABC
bool "python-backports-abc"
+ depends on BR2_PACKAGE_PYTHON
help
A backport of recent additions to the 'collections.abc'
module.
diff --git a/package/python-crossbar/0001-Avoid-intentional-syntax-error.patch b/package/python-crossbar/0001-Avoid-intentional-syntax-error.patch
new file mode 100644
index 0000000000..fb8e4a2763
--- /dev/null
+++ b/package/python-crossbar/0001-Avoid-intentional-syntax-error.patch
@@ -0,0 +1,29 @@
+From 9ab2b96c2ee679c6dcb387174be211db5d70fa97 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sun, 1 May 2016 15:35:32 +0200
+Subject: [PATCH] Avoid intentional syntax error
+
+This file has an intentional syntax error, meant to validate QA, but
+it breaks byte compilation of this package.
+
+Issue reported upstream:
+https://github.com/crossbario/crossbar/issues/750.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ crossbar/worker/test/examples/syntaxerror.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/crossbar/worker/test/examples/syntaxerror.py b/crossbar/worker/test/examples/syntaxerror.py
+index a5947cc..585c995 100644
+--- a/crossbar/worker/test/examples/syntaxerror.py
++++ b/crossbar/worker/test/examples/syntaxerror.py
+@@ -29,5 +29,3 @@
+ #####################################################################################
+
+ from __future__ import absolute_import, division
+-
+-class # noqa
+--
+2.7.4
+
diff --git a/package/python-flask-jsonrpc/Config.in b/package/python-flask-jsonrpc/Config.in
new file mode 100644
index 0000000000..c8ecd854b3
--- /dev/null
+++ b/package/python-flask-jsonrpc/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_PYTHON_FLASK_JSONRPC
+ bool "python-flask-jsonrpc"
+ # runtime dependency
+ select BR2_PACKAGE_PYTHON_FLASK
+ help
+ A basic JSON-RPC implementation for your Flask-powered sites.
+
+ https://github.com/cenobites/flask-jsonrpc
diff --git a/package/python-flask-jsonrpc/python-flask-jsonrpc.hash b/package/python-flask-jsonrpc/python-flask-jsonrpc.hash
new file mode 100644
index 0000000000..8b91af7017
--- /dev/null
+++ b/package/python-flask-jsonrpc/python-flask-jsonrpc.hash
@@ -0,0 +1,3 @@
+# md5 from https://pypi.python.org/pypi/Flask-JSONRPC/0.3, sha256 locally computed:
+md5 a5beca4c3a882315f9b81acb57e83c68 Flask-JSONRPC-0.3.tar.gz
+sha256 5baf70bf9cf955e95c02316982026a122b89a5f4c78c5b26f9f476abdb3e13bc Flask-JSONRPC-0.3.tar.gz
diff --git a/package/python-flask-jsonrpc/python-flask-jsonrpc.mk b/package/python-flask-jsonrpc/python-flask-jsonrpc.mk
new file mode 100644
index 0000000000..624322ed79
--- /dev/null
+++ b/package/python-flask-jsonrpc/python-flask-jsonrpc.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-flask-jsonrpc
+#
+################################################################################
+
+PYTHON_FLASK_JSONRPC_VERSION = 0.3
+PYTHON_FLASK_JSONRPC_SOURCE = Flask-JSONRPC-$(PYTHON_FLASK_JSONRPC_VERSION).tar.gz
+PYTHON_FLASK_JSONRPC_SITE = http://pypi.python.org/packages/source/F/Flask-JSONRPC
+PYTHON_FLASK_JSONRPC_LICENSE = BSD-3c
+PYTHON_FLASK_JSONRPC_LICENSE_FILES = setup.py
+PYTHON_FLASK_JSONRPC_SETUP_TYPE = setuptools
+
+$(eval $(python-package))
diff --git a/package/python-flask-login/Config.in b/package/python-flask-login/Config.in
new file mode 100644
index 0000000000..88c413e2a2
--- /dev/null
+++ b/package/python-flask-login/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_PYTHON_FLASK_LOGIN
+ bool "python-flask-login"
+ # runtime dependency
+ select BR2_PACKAGE_PYTHON_FLASK
+ help
+ Flask-Login provides user session management for Flask.
+
+ https://github.com/maxcountryman/flask-login
diff --git a/package/python-flask-login/python-flask-login.hash b/package/python-flask-login/python-flask-login.hash
new file mode 100644
index 0000000000..c488a35e24
--- /dev/null
+++ b/package/python-flask-login/python-flask-login.hash
@@ -0,0 +1,3 @@
+# md5 from https://pypi.python.org/pypi/Flask-Login/0.3.2, sha256 locally computed:
+md5 d95c2275d3e1c755145910077366dc45 Flask-Login-0.3.2.tar.gz
+sha256 e72eff5c35e5a31db1aeca1db5d2501be702674ea88e8f223b5d2b11644beee6 Flask-Login-0.3.2.tar.gz
diff --git a/package/python-flask-login/python-flask-login.mk b/package/python-flask-login/python-flask-login.mk
new file mode 100644
index 0000000000..aa6d8e3de5
--- /dev/null
+++ b/package/python-flask-login/python-flask-login.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-flask-login
+#
+################################################################################
+
+PYTHON_FLASK_LOGIN_VERSION = 0.3.2
+PYTHON_FLASK_LOGIN_SOURCE = Flask-Login-$(PYTHON_FLASK_LOGIN_VERSION).tar.gz
+PYTHON_FLASK_LOGIN_SITE = http://pypi.python.org/packages/source/F/Flask-Login
+PYTHON_FLASK_LOGIN_LICENSE = MIT
+PYTHON_FLASK_LOGIN_LICENSE_FILES = LICENSE
+PYTHON_FLASK_LOGIN_SETUP_TYPE = setuptools
+
+$(eval $(python-package))
diff --git a/package/python-libconfig/Config.in b/package/python-libconfig/Config.in
index b49aa268a8..7cc5f8a3cd 100644
--- a/package/python-libconfig/Config.in
+++ b/package/python-libconfig/Config.in
@@ -1,5 +1,4 @@
comment "python-libconfig needs a toolchain w/ C++, threads"
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
config BR2_PACKAGE_PYTHON_LIBCONFIG
@@ -9,7 +8,6 @@ config BR2_PACKAGE_PYTHON_LIBCONFIG
select BR2_PACKAGE_LIBCONFIG
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
help
Python bindings to the C++ library libconfig
diff --git a/package/python-pathtools/Config.in b/package/python-pathtools/Config.in
new file mode 100644
index 0000000000..63777bd37f
--- /dev/null
+++ b/package/python-pathtools/Config.in
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_PYTHON_PATHTOOLS
+ bool "python-pathtools"
+ help
+ File system general utilities.
+
+ http://github.com/gorakhargosh/pathtools
diff --git a/package/python-pathtools/python-pathtools.hash b/package/python-pathtools/python-pathtools.hash
new file mode 100644
index 0000000000..1fa624df02
--- /dev/null
+++ b/package/python-pathtools/python-pathtools.hash
@@ -0,0 +1,4 @@
+# md5 from https://pypi.python.org/pypi/pathtools/json
+md5 9a1af5c605768ea5804b03b734ff0f82 pathtools-0.1.2.tar.gz
+# sha256 calculated by scanpypi
+sha256 7c35c5421a39bb82e58018febd90e3b6e5db34c5443aaaf742b3f33d4655f1c0 pathtools-0.1.2.tar.gz
diff --git a/package/python-pathtools/python-pathtools.mk b/package/python-pathtools/python-pathtools.mk
new file mode 100644
index 0000000000..2b4a271150
--- /dev/null
+++ b/package/python-pathtools/python-pathtools.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-pathtools
+#
+################################################################################
+
+PYTHON_PATHTOOLS_VERSION = 0.1.2
+PYTHON_PATHTOOLS_SOURCE = pathtools-$(PYTHON_PATHTOOLS_VERSION).tar.gz
+PYTHON_PATHTOOLS_SITE = https://pypi.python.org/packages/e7/7f/470d6fcdf23f9f3518f6b0b76be9df16dcc8630ad409947f8be2eb0ed13a
+PYTHON_PATHTOOLS_SETUP_TYPE = setuptools
+PYTHON_PATHTOOLS_LICENSE = MIT
+PYTHON_PATHTOOLS_LICENSE_FILES = LICENSE
+
+$(eval $(python-package))
diff --git a/package/python-pexpect/python-pexpect.mk b/package/python-pexpect/python-pexpect.mk
index b74bf83510..40a1741f3e 100644
--- a/package/python-pexpect/python-pexpect.mk
+++ b/package/python-pexpect/python-pexpect.mk
@@ -11,4 +11,14 @@ PYTHON_PEXPECT_LICENSE = ISC
PYTHON_PEXPECT_LICENSE_FILES = LICENSE
PYTHON_PEXPECT_SETUP_TYPE = distutils
+# async.py is not usable with Python 2, and removing is the solution
+# recommended by upstream:
+# https://github.com/pexpect/pexpect/issues/290
+ifeq ($(BR2_PACKAGE_PYTHON),y)
+define PYTHON_PEXPECT_REMOVE_ASYNC_PY
+ $(RM) $(@D)/pexpect/async.py
+endef
+PYTHON_PEXPECT_POST_PATCH_HOOKS += PYTHON_PEXPECT_REMOVE_ASYNC_PY
+endif
+
$(eval $(python-package))
diff --git a/package/python-pyftpdlib/python-pyftpdlib.hash b/package/python-pyftpdlib/python-pyftpdlib.hash
index b6d0cca416..9726f9f723 100644
--- a/package/python-pyftpdlib/python-pyftpdlib.hash
+++ b/package/python-pyftpdlib/python-pyftpdlib.hash
@@ -1,3 +1,3 @@
-# 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
+# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=61b23e2362df23d0dfa5fe76f6e2ab55, sha256 locally computed
+md5 61b23e2362df23d0dfa5fe76f6e2ab55 pyftpdlib-1.5.1.tar.gz
+sha256 7bcd7fc825123414a157718c6dcdcb0978208d3c865d4650564acef4acce3354 pyftpdlib-1.5.1.tar.gz
diff --git a/package/python-pyftpdlib/python-pyftpdlib.mk b/package/python-pyftpdlib/python-pyftpdlib.mk
index 11e24e21c9..85d0b56adf 100644
--- a/package/python-pyftpdlib/python-pyftpdlib.mk
+++ b/package/python-pyftpdlib/python-pyftpdlib.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_PYFTPDLIB_VERSION = 1.5.0
+PYTHON_PYFTPDLIB_VERSION = 1.5.1
PYTHON_PYFTPDLIB_SOURCE = pyftpdlib-$(PYTHON_PYFTPDLIB_VERSION).tar.gz
-PYTHON_PYFTPDLIB_SITE = https://pypi.python.org/packages/source/p/pyftpdlib
+PYTHON_PYFTPDLIB_SITE = https://pypi.python.org/packages/a8/f8/0f6db156898616dbcbd7bf865660295c81479071ab0fcd1898fe1b3a4fc4
PYTHON_PYFTPDLIB_SETUP_TYPE = setuptools
PYTHON_PYFTPDLIB_LICENSE = MIT
PYTHON_PYFTPDLIB_LICENSE_FILES = LICENSE
diff --git a/package/python-pygame/python-pygame.mk b/package/python-pygame/python-pygame.mk
index 995f80ad79..1ef2bdf62b 100644
--- a/package/python-pygame/python-pygame.mk
+++ b/package/python-pygame/python-pygame.mk
@@ -6,7 +6,7 @@
# stable 1.9.1 release requires V4L which has been wiped out of recent Linux
# kernels, so use latest mercurial revision until next stable release is out.
-PYTHON_PYGAME_VERSION = f0bb4a4b365d
+PYTHON_PYGAME_VERSION = d61ea8eabd56
PYTHON_PYGAME_SOURCE = pygame-$(PYTHON_PYGAME_VERSION).tar.gz
PYTHON_PYGAME_SITE = https://bitbucket.org/pygame/pygame
PYTHON_PYGAME_SITE_METHOD = hg
@@ -66,6 +66,10 @@ define PYTHON_PYGAME_UNCONFIGURE_SCRAP
endef
endif
+define PYTHON_PYGAME_UNCONFIGURE_FREETYPE
+ $(SED) 's/^_freetype/#_freetype/' $(@D)/Setup
+endef
+
PYTHON_PYGAME_SDL_FLAGS = `$(STAGING_DIR)/usr/bin/sdl-config --cflags`
PYTHON_PYGAME_SDL_FLAGS += `$(STAGING_DIR)/usr/bin/sdl-config --libs`
@@ -82,6 +86,7 @@ define PYTHON_PYGAME_CONFIGURE_CMDS
$(PYTHON_PYGAME_UNCONFIGURE_SURFARRAY)
$(PYTHON_PYGAME_UNCONFIGURE_MOVIE)
$(PYTHON_PYGAME_UNCONFIGURE_SCRAP)
+ $(PYTHON_PYGAME_UNCONFIGURE_FREETYPE)
endef
define PYTHON_PYGAME_REMOVE_DOC
diff --git a/package/python-setproctitle/python-setproctitle.hash b/package/python-setproctitle/python-setproctitle.hash
index 3b0fd71c3a..bf4d960358 100644
--- a/package/python-setproctitle/python-setproctitle.hash
+++ b/package/python-setproctitle/python-setproctitle.hash
@@ -1,3 +1,3 @@
-# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=95d9e56c69437246460a20804961d70d, sha256 locally computed.
-md5 95d9e56c69437246460a20804961d70d setproctitle-1.1.9.tar.gz
-sha256 1c3414d18f9cacdab78b0ffd8e886d56ad45f22e55001a72aaa0b2aeb56a0ad7 setproctitle-1.1.9.tar.gz
+# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=2dcdd1b761700a5a13252fea3dfd1977, sha256 locally computed.
+md5 2dcdd1b761700a5a13252fea3dfd1977 setproctitle-1.1.10.tar.gz
+sha256 6283b7a58477dd8478fbb9e76defb37968ee4ba47b05ec1c053cb39638bd7398 setproctitle-1.1.10.tar.gz
diff --git a/package/python-setproctitle/python-setproctitle.mk b/package/python-setproctitle/python-setproctitle.mk
index 63dfad0cf5..36cfec3223 100644
--- a/package/python-setproctitle/python-setproctitle.mk
+++ b/package/python-setproctitle/python-setproctitle.mk
@@ -4,9 +4,9 @@
#
################################################################################
-PYTHON_SETPROCTITLE_VERSION = 1.1.9
+PYTHON_SETPROCTITLE_VERSION = 1.1.10
PYTHON_SETPROCTITLE_SOURCE = setproctitle-$(PYTHON_SETPROCTITLE_VERSION).tar.gz
-PYTHON_SETPROCTITLE_SITE = http://pypi.python.org/packages/source/s/setproctitle
+PYTHON_SETPROCTITLE_SITE = https://pypi.python.org/packages/5a/0d/dc0d2234aacba6cf1a729964383e3452c52096dc695581248b548786f2b3
PYTHON_SETPROCTITLE_LICENSE = BSD-3c
PYTHON_SETPROCTITLE_LICENSE_FILES = COPYRIGHT
PYTHON_SETPROCTITLE_SETUP_TYPE = distutils
diff --git a/package/python-tornado/Config.in b/package/python-tornado/Config.in
index ac866824ec..3ead2afa6d 100644
--- a/package/python-tornado/Config.in
+++ b/package/python-tornado/Config.in
@@ -3,7 +3,7 @@ config BR2_PACKAGE_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
+ select BR2_PACKAGE_PYTHON_BACKPORTS_ABC if BR2_PACKAGE_PYTHON # runtime
help
Tornado is a Python web framework and asynchronous networking
library, originally developed at FriendFeed.
diff --git a/package/python-ubjson/Config.in b/package/python-ubjson/Config.in
new file mode 100644
index 0000000000..86ed3b2e1b
--- /dev/null
+++ b/package/python-ubjson/Config.in
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_PYTHON_UBJSON
+ bool "python-ubjson"
+ help
+ This is a Python v3.2+ (and 2.7+) Universal Binary JSON
+ encoder/decoder based on the draft-12 specification.
+
+ https://pypi.python.org/pypi/py-ubjson
diff --git a/package/python-ubjson/python-ubjson.hash b/package/python-ubjson/python-ubjson.hash
new file mode 100644
index 0000000000..1995da6324
--- /dev/null
+++ b/package/python-ubjson/python-ubjson.hash
@@ -0,0 +1,3 @@
+# md5 from https://pypi.python.org/pypi?:action=show_md5&digest=7d7e7b9b67acfb8c6b417dab78ac4639,sha256 locally computed.
+md5 7d7e7b9b67acfb8c6b417dab78ac4639 py-ubjson-0.8.4.tar.gz
+sha256 395c0cbbb097d88bb0db92fe1ac82d31b56f3be396946fe02d38f08e86a8efe9 py-ubjson-0.8.4.tar.gz
diff --git a/package/python-ubjson/python-ubjson.mk b/package/python-ubjson/python-ubjson.mk
new file mode 100644
index 0000000000..a69efab64a
--- /dev/null
+++ b/package/python-ubjson/python-ubjson.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-ubjson
+#
+################################################################################
+
+PYTHON_UBJSON_VERSION = 0.8.4
+PYTHON_UBJSON_SOURCE = py-ubjson-$(PYTHON_UBJSON_VERSION).tar.gz
+PYTHON_UBJSON_SITE = https://pypi.python.org/packages/bf/a3/990c47fa0d2d244a3d493ae917d5cbf2a0632c1ac6aa53445f4e53ce3675
+PYTHON_UBJSON_LICENSE = Apache-2.0
+PYTHON_UBJSON_LICENSE_FILES = LICENSE
+PYTHON_UBJSON_SETUP_TYPE = setuptools
+
+$(eval $(python-package))
diff --git a/package/python-watchdog/Config.in b/package/python-watchdog/Config.in
new file mode 100644
index 0000000000..e5290897e8
--- /dev/null
+++ b/package/python-watchdog/Config.in
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_PYTHON_WATCHDOG
+ bool "python-watchdog"
+ select BR2_PACKAGE_PYTHON_PYYAML
+ select BR2_PACKAGE_PYTHON_ARGH
+ select BR2_PACKAGE_PYTHON_PATHTOOLS
+ help
+ Python API and shell utilities to monitor file system events.
+
+ http://github.com/gorakhargosh/watchdog
diff --git a/package/python-watchdog/python-watchdog.hash b/package/python-watchdog/python-watchdog.hash
new file mode 100644
index 0000000000..9da2b37a7b
--- /dev/null
+++ b/package/python-watchdog/python-watchdog.hash
@@ -0,0 +1,4 @@
+# md5 from https://pypi.python.org/pypi/watchdog/json
+md5 bb16926bccc98eae2a04535e4512ddf1 watchdog-0.8.3.tar.gz
+# sha256 calculated by scanpypi
+sha256 7e65882adb7746039b6f3876ee174952f8eaaa34491ba34333ddf1fe35de4162 watchdog-0.8.3.tar.gz
diff --git a/package/python-watchdog/python-watchdog.mk b/package/python-watchdog/python-watchdog.mk
new file mode 100644
index 0000000000..3dd92e3a3d
--- /dev/null
+++ b/package/python-watchdog/python-watchdog.mk
@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-watchdog
+#
+################################################################################
+
+PYTHON_WATCHDOG_VERSION = 0.8.3
+PYTHON_WATCHDOG_SOURCE = watchdog-$(PYTHON_WATCHDOG_VERSION).tar.gz
+PYTHON_WATCHDOG_SITE = https://pypi.python.org/packages/54/7d/c7c0ad1e32b9f132075967fc353a244eb2b375a3d2f5b0ce612fd96e107e
+PYTHON_WATCHDOG_SETUP_TYPE = setuptools
+PYTHON_WATCHDOG_LICENSE = Apache-2.0
+PYTHON_WATCHDOG_LICENSE_FILES = LICENSE COPYING
+
+$(eval $(python-package))
diff --git a/package/python/python.mk b/package/python/python.mk
index 4ecd0d1d89..913dc2c55d 100644
--- a/package/python/python.mk
+++ b/package/python/python.mk
@@ -143,7 +143,8 @@ PYTHON_CONF_OPTS += \
--disable-tk \
--disable-nis \
--disable-dbm \
- --disable-pyo-build
+ --disable-pyo-build \
+ --disable-pyc-build
# This is needed to make sure the Python build process doesn't try to
# regenerate those files with the pgen program. Otherwise, it builds
@@ -217,16 +218,40 @@ PYTHON_PATH = $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/sysconfigdata/
$(eval $(autotools-package))
$(eval $(host-autotools-package))
+define PYTHON_CREATE_PYC_FILES
+ PYTHONPATH="$(PYTHON_PATH)" \
+ $(HOST_DIR)/usr/bin/python$(PYTHON_VERSION_MAJOR) \
+ support/scripts/pycompile.py \
+ $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)
+endef
+
+ifeq ($(BR2_PACKAGE_PYTHON_PYC_ONLY)$(BR2_PACKAGE_PYTHON_PY_PYC),y)
+TARGET_FINALIZE_HOOKS += PYTHON_CREATE_PYC_FILES
+endif
+
ifeq ($(BR2_PACKAGE_PYTHON_PYC_ONLY),y)
-define PYTHON_FINALIZE_TARGET
- find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.py' -print0 | xargs -0 rm -f
+define PYTHON_REMOVE_PY_FILES
+ find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.py' -print0 | \
+ xargs -0 --no-run-if-empty rm -f
endef
+TARGET_FINALIZE_HOOKS += PYTHON_REMOVE_PY_FILES
endif
+# Normally, *.pyc files should not have been compiled, but just in
+# case, we make sure we remove all of them.
ifeq ($(BR2_PACKAGE_PYTHON_PY_ONLY),y)
-define PYTHON_FINALIZE_TARGET
- find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.pyc' -print0 | xargs -0 rm -f
+define PYTHON_REMOVE_PYC_FILES
+ find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.pyc' -print0 | \
+ xargs -0 --no-run-if-empty rm -f
endef
+TARGET_FINALIZE_HOOKS += PYTHON_REMOVE_PYC_FILES
endif
-TARGET_FINALIZE_HOOKS += PYTHON_FINALIZE_TARGET
+# In all cases, we don't want to keep the optimized .pyo files
+ifeq ($(BR2_PACKAGE_PYTHON),y)
+define PYTHON_REMOVE_PYO_FILES
+ find $(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR) -name '*.pyo' -print0 | \
+ xargs -0 --no-run-if-empty rm -f
+endef
+TARGET_FINALIZE_HOOKS += PYTHON_REMOVE_PYO_FILES
+endif
diff --git a/package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch b/package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch
index 3fafd903a1..defaad9c45 100644
--- a/package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch
+++ b/package/python3/0001-setup.py-do-not-add-invalid-header-locations.patch
@@ -1,4 +1,4 @@
-From 03a4c313f42ea1bbdfc4c64a285b3930766c2b23 Mon Sep 17 00:00:00 2001
+From d6093bad6c700312ff7ff4a7bb15c815dda6f46b Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:28:34 +0100
Subject: [PATCH] setup.py: do not add invalid header locations
@@ -28,10 +28,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/setup.py b/setup.py
-index 2779658..d3bf8e5 100644
+index da67731..dbd2a3c 100644
--- a/setup.py
+++ b/setup.py
-@@ -493,7 +493,8 @@ class PyBuildExt(build_ext):
+@@ -511,7 +511,8 @@ class PyBuildExt(build_ext):
add_dir_to_list(dir_list, directory)
if os.path.normpath(sys.base_prefix) != '/usr' \
diff --git a/package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch b/package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch
index 57b55fb12c..8e930abf82 100644
--- a/package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch
+++ b/package/python3/0002-Change-the-install-location-of-_sysconfigdata.py.patch
@@ -1,4 +1,4 @@
-From 2f706a2ba92c88f1c8288e34d1937b6ba0e0214c Mon Sep 17 00:00:00 2001
+From 4ac038d30ec71b3f223ac7c91613856dd82b6347 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:29:04 +0100
Subject: [PATCH] Change the install location of _sysconfigdata.py
@@ -25,10 +25,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 76aef28..58dab28 100644
+index 823def3..4d2a061 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -559,6 +559,9 @@ pybuilddir.txt: $(BUILDPYTHON)
+@@ -585,6 +585,9 @@ pybuilddir.txt: $(BUILDPYTHON)
rm -f ./pybuilddir.txt ; \
exit 1 ; \
fi
@@ -38,7 +38,7 @@ index 76aef28..58dab28 100644
# Build the shared modules
# Under GNU make, MAKEFLAGS are sorted and normalized; the 's' for
-@@ -1197,7 +1200,7 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c
+@@ -1235,7 +1238,7 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c
else true; \
fi; \
done
@@ -47,7 +47,7 @@ index 76aef28..58dab28 100644
do \
if test -x $$i; then \
$(INSTALL_SCRIPT) $$i $(DESTDIR)$(LIBDEST); \
-@@ -1207,6 +1210,11 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c
+@@ -1245,6 +1248,11 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c
echo $(INSTALL_DATA) $$i $(LIBDEST); \
fi; \
done
@@ -59,17 +59,17 @@ index 76aef28..58dab28 100644
@for d in $(LIBSUBDIRS); \
do \
a=$(srcdir)/Lib/$$d; \
-@@ -1533,7 +1541,7 @@ clean: pycremoval
+@@ -1580,7 +1588,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
- -rm -f pybuilddir.txt
+ -rm -f pybuilddir.txt pysysconfigdatadir.txt
-rm -f Lib/lib2to3/*Grammar*.pickle
- -rm -f Modules/_testembed Modules/_freeze_importlib
-
+ -rm -f Programs/_testembed Programs/_freeze_importlib
+ -rm -rf build
diff --git a/configure.ac b/configure.ac
-index a0d0afa..7b491b4 100644
+index 694293e..76b70a0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -70,7 +70,7 @@ if test "$cross_compiling" = yes; then
diff --git a/package/python3/0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch b/package/python3/0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch
deleted file mode 100644
index 03684afec5..0000000000
--- a/package/python3/0003-Make-the-build-of-pyc-and-pyo-files-conditional.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From 7c5338161263c290f18b1ff90859084d314be98c Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-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 <thomas.petazzoni@free-electrons.com>
----
- 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
-@@ -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 \
- -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 \
- -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 \
- -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 \
- -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) \
-diff --git a/configure.ac b/configure.ac
-index 7b491b4..f2c4705 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -922,6 +922,18 @@ fi
-
- AC_MSG_CHECKING(LDLIBRARY)
-
-+AC_SUBST(PYC_BUILD)
-+
-+AC_ARG_ENABLE(pyc-build,
-+ AS_HELP_STRING([--disable-pyc-build], [disable build of pyc files]),
-+ [ PYC_BUILD="${enableval}" ], [ PYC_BUILD=yes ])
-+
-+AC_SUBST(PYO_BUILD)
-+
-+AC_ARG_ENABLE(pyo-build,
-+ AS_HELP_STRING([--disable-pyo-build], [disable build of pyo files]),
-+ [ PYO_BUILD="${enableval}" ], [ PYO_BUILD=yes ])
-+
- # 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/0003-Make-the-build-of-pyc-files-conditional.patch b/package/python3/0003-Make-the-build-of-pyc-files-conditional.patch
new file mode 100644
index 0000000000..3251da5f3e
--- /dev/null
+++ b/package/python3/0003-Make-the-build-of-pyc-files-conditional.patch
@@ -0,0 +1,54 @@
+From 28f81597314ea3ed03935b519453a55cf6c3c20d Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Wed, 23 Dec 2015 11:29:35 +0100
+Subject: [PATCH] Make the build of pyc files conditional
+
+This commit adds a new configure option --disable-pyc-build to disable
+the compilation of pyc.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ Makefile.pre.in | 2 ++
+ configure.ac | 6 ++++++
+ 2 files changed, 8 insertions(+)
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index 4d2a061..272f312 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -1283,6 +1283,7 @@ 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 \
+@@ -1310,6 +1311,7 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c
+ $(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \
+ -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) \
+diff --git a/configure.ac b/configure.ac
+index 76b70a0..66d4642 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1056,6 +1056,12 @@ fi
+
+ AC_MSG_CHECKING(LDLIBRARY)
+
++AC_SUBST(PYC_BUILD)
++
++AC_ARG_ENABLE(pyc-build,
++ AS_HELP_STRING([--disable-pyc-build], [disable build of pyc files]),
++ [ PYC_BUILD="${enableval}" ], [ PYC_BUILD=yes ])
++
+ # 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
index da2a65bc2f..183d6b300f 100644
--- a/package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch
+++ b/package/python3/0004-Disable-buggy_getaddrinfo-configure-test-when-cross-.patch
@@ -1,4 +1,4 @@
-From ef95d6a49f17522ed120def8093fa2fc0b86cbc8 Mon Sep 17 00:00:00 2001
+From 093caf46b7a742ee2f7bcf617a915ac1653aa8ac Mon Sep 17 00:00:00 2001
From: Vanya Sergeev <vsergeev@gmail.com>
Date: Wed, 23 Dec 2015 11:30:33 +0100
Subject: [PATCH] Disable buggy_getaddrinfo configure test when cross-compiling
@@ -10,10 +10,10 @@ Signed-off-by: Vanya Sergeev <vsergeev@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
-index f2c4705..6342b81 100644
+index 66d4642..c492594 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3415,7 +3415,7 @@ fi
+@@ -3662,7 +3662,7 @@ fi
AC_MSG_RESULT($ac_cv_buggy_getaddrinfo)
diff --git a/package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch b/package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch
index 4a32bb191b..76a553b505 100644
--- a/package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch
+++ b/package/python3/0005-Add-infrastructure-to-disable-the-build-of-certain-e.patch
@@ -1,4 +1,4 @@
-From 9eb1076b61e83647028a2f6b665b6f9afcb793b0 Mon Sep 17 00:00:00 2001
+From 3a9f4aa255909ed152883eee787313efd20dbc58 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:31:08 +0100
Subject: [PATCH] Add infrastructure to disable the build of certain extensions
@@ -42,10 +42,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
3 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
-index f1bdd99..e0f9e0f 100644
+index 272f312..9420860 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -177,6 +177,8 @@ FILEMODE= 644
+@@ -182,6 +182,8 @@ FILEMODE= 644
# configure script arguments
CONFIG_ARGS= @CONFIG_ARGS@
@@ -54,7 +54,7 @@ index f1bdd99..e0f9e0f 100644
# Subdirectories with code
SRCDIRS= @SRCDIRS@
-@@ -574,6 +576,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt
+@@ -600,6 +602,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt
esac; \
$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
_TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
@@ -62,7 +62,7 @@ index f1bdd99..e0f9e0f 100644
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
# Build static library
-@@ -1384,7 +1387,8 @@ libainstall: all python-config
+@@ -1425,7 +1428,8 @@ libainstall: all python-config
# Install the dynamically loadable modules
# This goes into $(exec_prefix)
sharedinstall: sharedmods
@@ -73,10 +73,10 @@ index f1bdd99..e0f9e0f 100644
--install-scripts=$(BINDIR) \
--install-platlib=$(DESTSHARED) \
diff --git a/configure.ac b/configure.ac
-index 6342b81..a3026b8 100644
+index c492594..bfb599e 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2352,6 +2352,8 @@ LIBS="$withval $LIBS"
+@@ -2588,6 +2588,8 @@ LIBS="$withval $LIBS"
PKG_PROG_PKG_CONFIG
@@ -86,10 +86,10 @@ index 6342b81..a3026b8 100644
AC_MSG_CHECKING(for --with-system-expat)
AC_ARG_WITH(system_expat,
diff --git a/setup.py b/setup.py
-index d3bf8e5..2a504d2 100644
+index dbd2a3c..1ebfa50 100644
--- a/setup.py
+++ b/setup.py
-@@ -39,7 +39,10 @@ host_platform = get_platform()
+@@ -44,7 +44,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.
diff --git a/package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch b/package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch
index dcf32d6fec..b3e41b10d5 100644
--- a/package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch
+++ b/package/python3/0006-distutils-sysconfig-use-sysconfigdata.patch
@@ -1,4 +1,4 @@
-From bdb9cccdc2993e43af1e57ad3b8b0055bab64ba0 Mon Sep 17 00:00:00 2001
+From 7c560d917ee0e536c76fac275d1cb0b6136269ab Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:32:23 +0100
Subject: [PATCH] distutils/sysconfig: use sysconfigdata
@@ -12,10 +12,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 4 insertions(+), 33 deletions(-)
diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
-index a1452fe..1df20ad 100644
+index 573724d..721edec 100644
--- a/Lib/distutils/sysconfig.py
+++ b/Lib/distutils/sysconfig.py
-@@ -423,40 +423,11 @@ def expand_makefile_vars(s, vars):
+@@ -414,40 +414,11 @@ def expand_makefile_vars(s, vars):
_config_vars = None
def _init_posix():
diff --git a/package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch b/package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch
index 59d4ccd6d2..9ac65ba93b 100644
--- a/package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch
+++ b/package/python3/0007-Adjust-library-header-paths-for-cross-compilation.patch
@@ -1,4 +1,4 @@
-From 678143ce6161379a3eebc20db6634f0c247f8605 Mon Sep 17 00:00:00 2001
+From e634929f76a45f5b683dc19bc01efed2ab83e19e Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:33:14 +0100
Subject: [PATCH] Adjust library/header paths for cross-compilation
@@ -21,10 +21,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2 files changed, 15 insertions(+), 5 deletions(-)
diff --git a/Lib/distutils/command/build_ext.py b/Lib/distutils/command/build_ext.py
-index acbe648..494a8c9 100644
+index d4cb11e..e7a0ba9 100644
--- a/Lib/distutils/command/build_ext.py
+++ b/Lib/distutils/command/build_ext.py
-@@ -239,7 +239,10 @@ class build_ext(Command):
+@@ -232,7 +232,10 @@ class build_ext(Command):
if (sysconfig.get_config_var('Py_ENABLE_SHARED')):
if not sysconfig.python_build:
# building third party extensions
@@ -37,10 +37,10 @@ index acbe648..494a8c9 100644
# building python standard extensions
self.library_dirs.append('.')
diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
-index 1df20ad..905d280 100644
+index 721edec..d20e2d8 100644
--- a/Lib/distutils/sysconfig.py
+++ b/Lib/distutils/sysconfig.py
-@@ -16,10 +16,17 @@ import sys
+@@ -17,10 +17,17 @@ import sys
from .errors import DistutilsPlatformError
# These are needed in a couple of spots, so just compute them once.
@@ -61,7 +61,7 @@ index 1df20ad..905d280 100644
+ BASE_EXEC_PREFIX = os.path.normpath(sys.base_exec_prefix)
# 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,
+ # live in project/PCBuild/win32 or project/PCBuild/amd64.
--
2.6.4
diff --git a/package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch b/package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch
index 19a76cfc85..47a0b83291 100644
--- a/package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch
+++ b/package/python3/0008-Don-t-look-in-usr-lib-termcap-for-libraries.patch
@@ -1,4 +1,4 @@
-From 3ef1e30b88c4166f22220812b68e14f39f7ed15b Mon Sep 17 00:00:00 2001
+From d7c568632f7cb83346096ea114a06f89a0b488d6 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:36:00 +0100
Subject: [PATCH] Don't look in /usr/lib/termcap for libraries
@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/setup.py b/setup.py
-index 2a504d2..acc4ad0 100644
+index 1ebfa50..24a7153 100644
--- a/setup.py
+++ b/setup.py
-@@ -733,12 +733,9 @@ class PyBuildExt(build_ext):
+@@ -753,12 +753,9 @@ class PyBuildExt(build_ext):
pass # Issue 7384: Already linked against curses or tinfo.
elif curses_library:
readline_libs.append(curses_library)
diff --git a/package/python3/0009-Don-t-add-multiarch-paths.patch b/package/python3/0009-Don-t-add-multiarch-paths.patch
index 693ab6a508..921e25ccbe 100644
--- a/package/python3/0009-Don-t-add-multiarch-paths.patch
+++ b/package/python3/0009-Don-t-add-multiarch-paths.patch
@@ -1,4 +1,4 @@
-From b910b3a6e61afcaa6f77b533a5cb4290c528f439 Mon Sep 17 00:00:00 2001
+From bac5ac529cc0902a340a5cd03308433c6e80d1f6 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:36:27 +0100
Subject: [PATCH] Don't add multiarch paths
@@ -17,10 +17,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup.py b/setup.py
-index acc4ad0..eab709e 100644
+index 24a7153..8380a64 100644
--- a/setup.py
+++ b/setup.py
-@@ -456,10 +456,10 @@ class PyBuildExt(build_ext):
+@@ -474,10 +474,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')
diff --git a/package/python3/0010-Abort-on-failed-module-build.patch b/package/python3/0010-Abort-on-failed-module-build.patch
index d2e98224cc..131354b3f5 100644
--- a/package/python3/0010-Abort-on-failed-module-build.patch
+++ b/package/python3/0010-Abort-on-failed-module-build.patch
@@ -1,4 +1,4 @@
-From 420e08fc9e77b650d11ce420f85257ce1710b70d Mon Sep 17 00:00:00 2001
+From 86ef08e36597e14cac06aef176f12375a27fdef5 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:43:24 +0100
Subject: [PATCH] Abort on failed module build
@@ -14,17 +14,17 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 1 insertion(+)
diff --git a/setup.py b/setup.py
-index eab709e..86758ce 100644
+index 8380a64..15b39f5 100644
--- a/setup.py
+++ b/setup.py
-@@ -284,6 +284,7 @@ class PyBuildExt(build_ext):
+@@ -296,6 +296,7 @@ class PyBuildExt(build_ext):
print("Failed to build these modules:")
print_three_column(failed)
print()
+ sys.exit(1)
- def build_extension(self, ext):
-
+ if self.failed_on_import:
+ failed = self.failed_on_import[:]
--
2.6.4
diff --git a/package/python3/0011-Serial-ioctl-workaround.patch b/package/python3/0011-Serial-ioctl-workaround.patch
index f1db62b6f2..9e7d79c49f 100644
--- a/package/python3/0011-Serial-ioctl-workaround.patch
+++ b/package/python3/0011-Serial-ioctl-workaround.patch
@@ -1,4 +1,4 @@
-From f67b0073a30eb83d42a2ead0a62020dfe5db8d1e Mon Sep 17 00:00:00 2001
+From ace3ebd517ea0ac42208b6a06c7e8f82da3b9c1b Mon Sep 17 00:00:00 2001
From: Baruch Siach <baruch@tkos.co.il>
Date: Wed, 23 Dec 2015 11:44:02 +0100
Subject: [PATCH] Serial ioctl() workaround
diff --git a/package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch b/package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch
index e4fbf4e4d6..2e50c1b1af 100644
--- a/package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch
+++ b/package/python3/0012-Do-not-adjust-the-shebang-of-Python-scripts-for-cros.patch
@@ -1,4 +1,4 @@
-From 2cac07af643d989b352cccc3b96d86ed269df9b1 Mon Sep 17 00:00:00 2001
+From 45f482813de828415906e6a416c9c35450c38da7 Mon Sep 17 00:00:00 2001
From: Christophe Vu-Brugier <cvubrugier@fastmail.fm>
Date: Wed, 23 Dec 2015 11:44:30 +0100
Subject: [PATCH] Do not adjust the shebang of Python scripts for
diff --git a/package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch b/package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch
index f9c7225726..872f04023f 100644
--- a/package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch
+++ b/package/python3/0013-Misc-python-config.sh.in-ensure-sed-invocations-only.patch
@@ -1,4 +1,4 @@
-From 4c0893221e2978854174806f7e14f7643eea32e7 Mon Sep 17 00:00:00 2001
+From 5858abdc25acd522869103d64b60a0c9687e2ec1 Mon Sep 17 00:00:00 2001
From: Peter Korsgaard <peter@korsgaard.com>
Date: Thu, 20 Nov 2014 13:24:59 +0100
Subject: [PATCH] Misc/python-config.sh.in: ensure sed invocations only match
@@ -25,7 +25,7 @@ Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/Misc/python-config.sh.in b/Misc/python-config.sh.in
-index 64c81e5..f75eec5 100644
+index 30c6927..f905a71 100644
--- a/Misc/python-config.sh.in
+++ b/Misc/python-config.sh.in
@@ -29,12 +29,12 @@ prefix_real=$(installed_prefix "$0")
@@ -52,7 +52,7 @@ index 64c81e5..f75eec5 100644
LIBDEST=${prefix}/lib/python${VERSION}
-LIBPL=$(echo "@LIBPL@" | sed "s#$prefix_build#$prefix_real#")
+LIBPL=$(echo "@LIBPL@" | sed "s#^$prefix_build#$prefix_real#")
- SO="@SO@"
+ SO="@EXT_SUFFIX@"
PYTHONFRAMEWORK="@PYTHONFRAMEWORK@"
INCDIR="-I$includedir/python${VERSION}${ABIFLAGS}"
--
diff --git a/package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch b/package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch
index 4a64427579..f11d946461 100644
--- a/package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch
+++ b/package/python3/0014-Do-not-harcode-invalid-path-to-ncursesw-headers.patch
@@ -1,4 +1,4 @@
-From a87f08318cf40a27d41957dcc7312c3b3083ba86 Mon Sep 17 00:00:00 2001
+From be44636b36086ca1b6de24265b7c3cc0c2bae913 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:45:13 +0100
Subject: [PATCH] Do not harcode invalid path to ncursesw headers
@@ -14,10 +14,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 1 deletion(-)
diff --git a/setup.py b/setup.py
-index 86758ce..565c304 100644
+index 15b39f5..9e08e7e 100644
--- a/setup.py
+++ b/setup.py
-@@ -1276,7 +1276,6 @@ class PyBuildExt(build_ext):
+@@ -1296,7 +1296,6 @@ class PyBuildExt(build_ext):
panel_library = 'panel'
if curses_library == 'ncursesw':
curses_defines.append(('HAVE_NCURSESW', '1'))
diff --git a/package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch b/package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch
index e358e44462..22af71d1db 100644
--- a/package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch
+++ b/package/python3/0015-Override-system-locale-and-set-to-default-when-addin.patch
@@ -1,4 +1,4 @@
-From 807357dc50a5a97016ce22646b5eb6a5b64a1a5d Mon Sep 17 00:00:00 2001
+From 46fda6fc83500bf5663397f9d28b618e6b6b20c1 Mon Sep 17 00:00:00 2001
From: Samuel Cabrero <samuelcabrero@gmail.com>
Date: Wed, 23 Dec 2015 11:45:48 +0100
Subject: [PATCH] Override system locale and set to default when adding gcc
@@ -20,10 +20,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup.py b/setup.py
-index 565c304..8966779 100644
+index 9e08e7e..3feca04 100644
--- a/setup.py
+++ b/setup.py
-@@ -423,7 +423,7 @@ class PyBuildExt(build_ext):
+@@ -441,7 +441,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)
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
index 02f1d164f7..54a0b87ada 100644
--- a/package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch
+++ b/package/python3/0016-Add-importlib-fix-for-PEP-3147-issue.patch
@@ -1,4 +1,4 @@
-From 1153f503a38daf6388021575f1ad6ce8b702911b Mon Sep 17 00:00:00 2001
+From d2b5be9a0627e38d2280ef865dab3e74b7d2bde4 Mon Sep 17 00:00:00 2001
From: Christophe Vu-Brugier <cvubrugier@fastmail.fm>
Date: Wed, 23 Dec 2015 11:46:14 +0100
Subject: [PATCH] Add importlib fix for PEP 3147 issue
@@ -19,44 +19,51 @@ This effectively disables PEP 3147 for:
Signed-off-by: Christophe Vu-Brugier <cvubrugier@fastmail.fm>
---
- Lib/importlib/_bootstrap.py | 26 +++++---------------------
- 1 file changed, 5 insertions(+), 21 deletions(-)
+ Lib/importlib/_bootstrap_external.py | 37 +++++-------------------------------
+ 1 file changed, 5 insertions(+), 32 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.
+diff --git a/Lib/importlib/_bootstrap_external.py b/Lib/importlib/_bootstrap_external.py
+index 616b17f..e30129c 100644
+--- a/Lib/importlib/_bootstrap_external.py
++++ b/Lib/importlib/_bootstrap_external.py
+@@ -255,8 +255,6 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
+ a True value is the same as setting 'optimization' to the empty string
+ while a False value is equivalent to setting 'optimization' to '1'.
- 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
+ if debug_override is not None:
+ _warnings.warn('the debug_override parameter is deprecated; use '
+@@ -267,10 +265,7 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
+ optimization = '' if debug_override else 1
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)
+- almost_filename = ''.join([(base if base else rest), sep, tag])
++ almost_filename = ''.join([(base if base else rest)])
+ if optimization is None:
+ if sys.flags.optimize == 0:
+ optimization = ''
+@@ -281,39 +276,17 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
+ if not optimization.isalnum():
+ raise ValueError('{!r} is not alphanumeric'.format(optimization))
+ almost_filename = '{}.{}{}'.format(almost_filename, _OPT, optimization)
+- return _path_join(head, _PYCACHE, almost_filename + BYTECODE_SUFFIXES[0])
++ return _path_join(head, almost_filename + BYTECODE_SUFFIXES[0])
def source_from_cache(path):
- """Given the path to a .pyc./.pyo file, return the path to its .py file.
+ """Given the path to a .pyc. 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
+ The .pyc file does not need to exist; this simply returns the path to
+- the .py file calculated to correspond to the .pyc file. If path does
+- not conform to PEP 3147/488 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.
-
+-
++ the .py file calculated to correspond to the .pyc file.
"""
- if sys.implementation.cache_tag is None:
- raise NotImplementedError('sys.implementation.cache_tag is None')
@@ -65,9 +72,19 @@ index 5b91c05..a1755ec 100644
- 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 '
+- dot_count = pycache_filename.count('.')
+- if dot_count not in {2, 3}:
+- raise ValueError('expected only 2 or 3 dots in '
- '{!r}'.format(pycache_filename))
+- elif dot_count == 3:
+- optimization = pycache_filename.rsplit('.', 2)[-2]
+- if not optimization.startswith(_OPT):
+- raise ValueError("optimization portion of filename does not start "
+- "with {!r}".format(_OPT))
+- opt_level = optimization[len(_OPT):]
+- if not opt_level.isalnum():
+- raise ValueError("optimization level {!r} is not an alphanumeric "
+- "value".format(optimization))
- base_filename = pycache_filename.partition('.')[0]
+ head, filename = _path_split(path)
+ base_filename = filename.partition('.')[0]
diff --git a/package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch b/package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch
index 6e0f07c87e..ee0134a5d6 100644
--- a/package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch
+++ b/package/python3/0017-Add-an-option-to-disable-installation-of-test-module.patch
@@ -1,4 +1,4 @@
-From 3cdd905ad1ff001713d20b768c001b5299a2e72c Mon Sep 17 00:00:00 2001
+From 1d2891204c6bf05d5e2eb0e5fa2ee78f6a2b755b Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:47:00 +0100
Subject: [PATCH] Add an option to disable installation of test modules
@@ -14,12 +14,12 @@ Signed-off-by: Samuel Martin <s.martin49@gmail.com>
2 files changed, 42 insertions(+), 20 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
-index e0f9e0f..12fae84 100644
+index 9420860..d4c771a 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1133,8 +1133,30 @@ PLATDIR= plat-$(MACHDEP)
- EXTRAPLATDIR= @EXTRAPLATDIR@
- MACHDEPS= $(PLATDIR) $(EXTRAPLATDIR)
+@@ -1166,8 +1166,30 @@ maninstall: altmaninstall
+ PLATDIR= @PLATDIR@
+ MACHDEPS= $(PLATDIR)
XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax
-LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \
- tkinter/test/test_ttk site-packages test \
@@ -50,7 +50,7 @@ index e0f9e0f..12fae84 100644
test/audiodata \
test/capath test/data \
test/cjkencodings test/decimaltestdata test/xmltestdata \
-@@ -1161,28 +1183,22 @@ LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \
+@@ -1199,28 +1221,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 \
@@ -92,10 +92,10 @@ index e0f9e0f..12fae84 100644
@for i in $(SCRIPTDIR) $(LIBDEST); \
do \
diff --git a/configure.ac b/configure.ac
-index a3026b8..b7a8836 100644
+index bfb599e..9f3d226 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2659,6 +2659,12 @@ if test "$posix_threads" = "yes"; then
+@@ -2895,6 +2895,12 @@ if test "$posix_threads" = "yes"; then
fi
diff --git a/package/python3/0018-Add-an-option-to-disable-pydoc.patch b/package/python3/0018-Add-an-option-to-disable-pydoc.patch
index 22f194a555..670ad40c5e 100644
--- a/package/python3/0018-Add-an-option-to-disable-pydoc.patch
+++ b/package/python3/0018-Add-an-option-to-disable-pydoc.patch
@@ -1,4 +1,4 @@
-From 99ef88cb47a396e2c7005e59e50d34e0a60dd3cb Mon Sep 17 00:00:00 2001
+From a83b79b964700604de386800f86e5a55f53a0e17 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:47:11 +0100
Subject: [PATCH] Add an option to disable pydoc
@@ -15,10 +15,10 @@ Signed-off-by: Samuel Martin <s.martin49@gmail.com>
3 files changed, 19 insertions(+), 3 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 12fae84..5e2333e 100644
+index d4c771a..a98ad65 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1100,7 +1100,9 @@ bininstall: altbininstall
+@@ -1134,7 +1134,9 @@ bininstall: altbininstall
-rm -f $(DESTDIR)$(BINDIR)/idle3
(cd $(DESTDIR)$(BINDIR); $(LN) -s idle$(VERSION) idle3)
-rm -f $(DESTDIR)$(BINDIR)/pydoc3
@@ -28,7 +28,7 @@ index 12fae84..5e2333e 100644
-rm -f $(DESTDIR)$(BINDIR)/2to3
(cd $(DESTDIR)$(BINDIR); $(LN) -s 2to3-$(VERSION) 2to3)
-rm -f $(DESTDIR)$(BINDIR)/pyvenv
-@@ -1151,7 +1153,7 @@ LIBSUBDIRS= tkinter \
+@@ -1184,7 +1186,7 @@ LIBSUBDIRS= tkinter \
multiprocessing multiprocessing/dummy \
unittest \
venv venv/scripts venv/scripts/posix \
@@ -37,7 +37,7 @@ index 12fae84..5e2333e 100644
TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \
test test/test_asyncio \
-@@ -1195,6 +1197,10 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \
+@@ -1233,6 +1235,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
@@ -49,10 +49,10 @@ index 12fae84..5e2333e 100644
LIBSUBDIRS += $(TESTSUBDIRS)
endif
diff --git a/configure.ac b/configure.ac
-index b7a8836..2e75345 100644
+index 9f3d226..e9b6d6f 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2658,6 +2658,11 @@ if test "$posix_threads" = "yes"; then
+@@ -2894,6 +2894,11 @@ if test "$posix_threads" = "yes"; then
AC_CHECK_FUNCS(pthread_atfork)
fi
@@ -65,10 +65,10 @@ index b7a8836..2e75345 100644
AC_SUBST(TEST_MODULES)
diff --git a/setup.py b/setup.py
-index 8966779..69198db 100644
+index 3feca04..137911d 100644
--- a/setup.py
+++ b/setup.py
-@@ -2200,6 +2200,12 @@ def main():
+@@ -2220,6 +2220,12 @@ def main():
# turn off warnings when deprecated modules are imported
import warnings
warnings.filterwarnings("ignore",category=DeprecationWarning)
@@ -81,7 +81,7 @@ index 8966779..69198db 100644
setup(# PyPI Metadata (PEP 301)
name = "Python",
version = sys.version.split()[0],
-@@ -2224,8 +2230,7 @@ def main():
+@@ -2244,8 +2250,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
diff --git a/package/python3/0019-Add-an-option-to-disable-lib2to3.patch b/package/python3/0019-Add-an-option-to-disable-lib2to3.patch
index 8a22c0f26e..f0d4770135 100644
--- a/package/python3/0019-Add-an-option-to-disable-lib2to3.patch
+++ b/package/python3/0019-Add-an-option-to-disable-lib2to3.patch
@@ -1,4 +1,4 @@
-From 4d6bc8497ab740ae23a7091ff91dba06a63ba877 Mon Sep 17 00:00:00 2001
+From 3c877ea9f09913586f87064b7a2b9d2b49cb05aa Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:48:44 +0100
Subject: [PATCH] Add an option to disable lib2to3
@@ -15,10 +15,10 @@ Signed-off-by: Samuel Martin <s.martin49@gmail.com>
3 files changed, 21 insertions(+), 6 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 5e2333e..6656f48 100644
+index a98ad65..3823940 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1104,7 +1104,9 @@ ifeq (@PYDOC@,yes)
+@@ -1138,7 +1138,9 @@ ifeq (@PYDOC@,yes)
(cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3)
endif
-rm -f $(DESTDIR)$(BINDIR)/2to3
@@ -28,7 +28,7 @@ index 5e2333e..6656f48 100644
-rm -f $(DESTDIR)$(BINDIR)/pyvenv
(cd $(DESTDIR)$(BINDIR); $(LN) -s pyvenv-$(VERSION) pyvenv)
if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \
-@@ -1144,7 +1146,6 @@ LIBSUBDIRS= tkinter \
+@@ -1177,7 +1179,6 @@ LIBSUBDIRS= tkinter \
html json http dbm xmlrpc \
sqlite3 \
logging csv wsgiref urllib \
@@ -36,7 +36,7 @@ index 5e2333e..6656f48 100644
ctypes ctypes/macholib \
idlelib idlelib/Icons \
distutils distutils/command $(XMLLIBSUBDIRS) \
-@@ -1186,9 +1187,6 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \
+@@ -1224,9 +1225,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 \
@@ -46,7 +46,7 @@ index 5e2333e..6656f48 100644
ctypes/test \
idlelib/idle_test \
distutils/tests \
-@@ -1201,6 +1199,14 @@ ifeq (@PYDOC@,yes)
+@@ -1239,6 +1237,14 @@ ifeq (@PYDOC@,yes)
LIBSUBDIRS += pydoc_data
endif
@@ -61,7 +61,7 @@ index 5e2333e..6656f48 100644
ifeq (@TEST_MODULES@,yes)
LIBSUBDIRS += $(TESTSUBDIRS)
endif
-@@ -1296,10 +1302,12 @@ ifeq (@PYO_BUILD@,yes)
+@@ -1337,10 +1343,12 @@ ifeq (@PYC_BUILD@,yes)
-d $(LIBDEST)/site-packages -f \
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
endif
@@ -75,10 +75,10 @@ index 5e2333e..6656f48 100644
# Create the PLATDIR source directory, if one wasn't distributed..
$(srcdir)/Lib/$(PLATDIR):
diff --git a/configure.ac b/configure.ac
-index 2e75345..0ed6b17 100644
+index e9b6d6f..652ad88 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2670,6 +2670,12 @@ AC_ARG_ENABLE(test-modules,
+@@ -2906,6 +2906,12 @@ AC_ARG_ENABLE(test-modules,
AS_HELP_STRING([--disable-test-modules], [disable test modules]),
[ TEST_MODULES="${enableval}" ], [ TEST_MODULES=yes ])
@@ -92,10 +92,10 @@ index 2e75345..0ed6b17 100644
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
+index 137911d..722308b 100644
--- a/setup.py
+++ b/setup.py
-@@ -2201,10 +2201,11 @@ def main():
+@@ -2221,10 +2221,11 @@ def main():
import warnings
warnings.filterwarnings("ignore",category=DeprecationWarning)
diff --git a/package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch b/package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch
index 26a7b34c3b..20936841c4 100644
--- a/package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch
+++ b/package/python3/0020-Add-option-to-disable-the-sqlite3-module.patch
@@ -1,4 +1,4 @@
-From f218ef22019d4c03427113982edc42beddd05683 Mon Sep 17 00:00:00 2001
+From 9ae1dce0a2fa01fc3dbc83d8b8c1b56e4b1b162b Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:49:01 +0100
Subject: [PATCH] Add option to disable the sqlite3 module
@@ -11,10 +11,10 @@ Signed-off-by: Samuel Martin <s.martin49@gmail.com>
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 6656f48..433cac1 100644
+index 3823940..c822dbd 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1144,7 +1144,6 @@ LIBSUBDIRS= tkinter \
+@@ -1177,7 +1177,6 @@ LIBSUBDIRS= tkinter \
email email/mime \
ensurepip ensurepip/_bundled \
html json http dbm xmlrpc \
@@ -22,7 +22,7 @@ index 6656f48..433cac1 100644
logging csv wsgiref urllib \
ctypes ctypes/macholib \
idlelib idlelib/Icons \
-@@ -1186,7 +1185,6 @@ TESTSUBDIRS = tkinter/test tkinter/test/test_tkinter tkinter/test/test_ttk \
+@@ -1224,7 +1223,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 \
@@ -30,7 +30,7 @@ index 6656f48..433cac1 100644
ctypes/test \
idlelib/idle_test \
distutils/tests \
-@@ -1207,6 +1205,11 @@ TESTSUBDIRS += lib2to3/tests \
+@@ -1245,6 +1243,11 @@ TESTSUBDIRS += lib2to3/tests \
lib2to3/tests/data/fixers/myfixes
endif
@@ -43,10 +43,10 @@ index 6656f48..433cac1 100644
LIBSUBDIRS += $(TESTSUBDIRS)
endif
diff --git a/configure.ac b/configure.ac
-index 0ed6b17..aaffbd6 100644
+index 652ad88..cae12ad 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2658,6 +2658,15 @@ if test "$posix_threads" = "yes"; then
+@@ -2894,6 +2894,15 @@ if test "$posix_threads" = "yes"; then
AC_CHECK_FUNCS(pthread_atfork)
fi
diff --git a/package/python3/0021-Add-an-option-to-disable-the-tk-module.patch b/package/python3/0021-Add-an-option-to-disable-the-tk-module.patch
index fc3c9b431c..7dfb339ea4 100644
--- a/package/python3/0021-Add-an-option-to-disable-the-tk-module.patch
+++ b/package/python3/0021-Add-an-option-to-disable-the-tk-module.patch
@@ -1,4 +1,4 @@
-From 006bf215734ad63007de044fe7803f66f83a4d19 Mon Sep 17 00:00:00 2001
+From d0d42570e5a23c3bf559e0413ec97729fd2f9e24 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:49:14 +0100
Subject: [PATCH] Add an option to disable the tk module
@@ -11,19 +11,19 @@ Signed-off-by: Samuel Martin <s.martin49@gmail.com>
2 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 433cac1..e492d7b 100644
+index c822dbd..0a93c27 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1137,7 +1137,7 @@ PLATDIR= plat-$(MACHDEP)
- EXTRAPLATDIR= @EXTRAPLATDIR@
- MACHDEPS= $(PLATDIR) $(EXTRAPLATDIR)
+@@ -1170,7 +1170,7 @@ maninstall: altmaninstall
+ PLATDIR= @PLATDIR@
+ MACHDEPS= $(PLATDIR)
XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax
-LIBSUBDIRS= tkinter \
+LIBSUBDIRS= \
site-packages \
asyncio \
collections concurrent concurrent/futures encodings \
-@@ -1155,8 +1155,7 @@ LIBSUBDIRS= tkinter \
+@@ -1188,8 +1188,7 @@ LIBSUBDIRS= tkinter \
venv venv/scripts venv/scripts/posix \
curses $(MACHDEPS)
@@ -33,7 +33,7 @@ index 433cac1..e492d7b 100644
test/test_email test/test_email/data \
test/test_json \
test/audiodata \
-@@ -1210,6 +1209,12 @@ LIBSUBDIRS += sqlite3
+@@ -1248,6 +1247,12 @@ LIBSUBDIRS += sqlite3
TESTSUBDIRS += sqlite3/test
endif
@@ -47,10 +47,10 @@ index 433cac1..e492d7b 100644
LIBSUBDIRS += $(TESTSUBDIRS)
endif
diff --git a/configure.ac b/configure.ac
-index aaffbd6..7efd54f 100644
+index cae12ad..787b185 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2667,6 +2667,15 @@ if test "$SQLITE3" = "no" ; then
+@@ -2903,6 +2903,15 @@ if test "$SQLITE3" = "no" ; then
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3"
fi
diff --git a/package/python3/0022-Add-an-option-to-disable-the-curses-module.patch b/package/python3/0022-Add-an-option-to-disable-the-curses-module.patch
index de78bb0608..22f7a24945 100644
--- a/package/python3/0022-Add-an-option-to-disable-the-curses-module.patch
+++ b/package/python3/0022-Add-an-option-to-disable-the-curses-module.patch
@@ -1,4 +1,4 @@
-From 42725aef353df06f760f0a47b80001187d04d8b4 Mon Sep 17 00:00:00 2001
+From d04ec780bf7c0825ab260bd1d6b7292141b2dcde Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:49:30 +0100
Subject: [PATCH] Add an option to disable the curses module
@@ -11,10 +11,10 @@ Signed-off-by: Samuel Martin <s.martin49@gmail.com>
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
-index e492d7b..66b2c45 100644
+index 0a93c27..b97c21e 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1153,7 +1153,7 @@ LIBSUBDIRS= \
+@@ -1186,7 +1186,7 @@ LIBSUBDIRS= \
multiprocessing multiprocessing/dummy \
unittest \
venv venv/scripts venv/scripts/posix \
@@ -23,7 +23,7 @@ index e492d7b..66b2c45 100644
TESTSUBDIRS = test test/test_asyncio \
test/test_email test/test_email/data \
-@@ -1215,6 +1215,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \
+@@ -1253,6 +1253,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \
tkinter/test/test_ttk
endif
@@ -35,10 +35,10 @@ index e492d7b..66b2c45 100644
LIBSUBDIRS += $(TESTSUBDIRS)
endif
diff --git a/configure.ac b/configure.ac
-index 7efd54f..e48f38e 100644
+index 787b185..0be47b2 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2676,6 +2676,15 @@ if test "$TK" = "no"; then
+@@ -2912,6 +2912,15 @@ if test "$TK" = "no"; then
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _tkinter"
fi
diff --git a/package/python3/0023-Add-an-option-to-disable-expat.patch b/package/python3/0023-Add-an-option-to-disable-expat.patch
index 9cb0799c5d..73f9b36bd0 100644
--- a/package/python3/0023-Add-an-option-to-disable-expat.patch
+++ b/package/python3/0023-Add-an-option-to-disable-expat.patch
@@ -1,4 +1,4 @@
-From f98b83bca09882d27bb04d7dbcd50f9979ad0569 Mon Sep 17 00:00:00 2001
+From 6281850ee8c3fb6d93b4997833af0cca4a48947b Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:49:42 +0100
Subject: [PATCH] Add an option to disable expat
@@ -18,10 +18,10 @@ Signed-off-by: Samuel Martin <s.martin49@gmail.com>
3 files changed, 19 insertions(+), 7 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 66b2c45..884d5aa 100644
+index b97c21e..bdfee19 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1147,7 +1147,7 @@ LIBSUBDIRS= \
+@@ -1180,7 +1180,7 @@ LIBSUBDIRS= \
logging csv wsgiref urllib \
ctypes ctypes/macholib \
idlelib idlelib/Icons \
@@ -30,7 +30,7 @@ index 66b2c45..884d5aa 100644
importlib \
turtledemo \
multiprocessing multiprocessing/dummy \
-@@ -1219,6 +1219,10 @@ ifeq (@CURSES@,yes)
+@@ -1257,6 +1257,10 @@ ifeq (@CURSES@,yes)
LIBSUBDIRS += curses
endif
@@ -42,10 +42,10 @@ index 66b2c45..884d5aa 100644
LIBSUBDIRS += $(TESTSUBDIRS)
endif
diff --git a/configure.ac b/configure.ac
-index e48f38e..4bbd597 100644
+index 0be47b2..e6bcacc 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2355,13 +2355,21 @@ PKG_PROG_PKG_CONFIG
+@@ -2591,13 +2591,21 @@ PKG_PROG_PKG_CONFIG
AC_SUBST(DISABLED_EXTENSIONS)
# Check for use of the system expat library
@@ -73,10 +73,10 @@ index e48f38e..4bbd597 100644
# Check for use of the system libffi library
AC_MSG_CHECKING(for --with-system-ffi)
diff --git a/setup.py b/setup.py
-index a2bf05a..fd3ac65 100644
+index 722308b..ecddb6a 100644
--- a/setup.py
+++ b/setup.py
-@@ -1414,7 +1414,7 @@ class PyBuildExt(build_ext):
+@@ -1434,7 +1434,7 @@ class PyBuildExt(build_ext):
#
# More information on Expat can be found at www.libexpat.org.
#
diff --git a/package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch b/package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch
index b4d77849e3..d3af94fb29 100644
--- a/package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch
+++ b/package/python3/0024-Add-an-option-to-disable-CJK-codecs.patch
@@ -1,4 +1,4 @@
-From cf731841e1209c6faa99e2db4cf4c890e7c28080 Mon Sep 17 00:00:00 2001
+From 18265d05ee97ad0c43995acdadce2458b57d7d64 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:49:55 +0100
Subject: [PATCH] Add an option to disable CJK codecs
@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 6 insertions(+)
diff --git a/configure.ac b/configure.ac
-index 4bbd597..05817f0 100644
+index e6bcacc..38b7515 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2675,6 +2675,12 @@ if test "$SQLITE3" = "no" ; then
+@@ -2911,6 +2911,12 @@ if test "$SQLITE3" = "no" ; then
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3"
fi
diff --git a/package/python3/0025-Add-an-option-to-disable-NIS.patch b/package/python3/0025-Add-an-option-to-disable-NIS.patch
index cd6b19d79a..ef9ff42715 100644
--- a/package/python3/0025-Add-an-option-to-disable-NIS.patch
+++ b/package/python3/0025-Add-an-option-to-disable-NIS.patch
@@ -1,4 +1,4 @@
-From f99823ef41d6f5c8e67b198b04b289d9b6ef8570 Mon Sep 17 00:00:00 2001
+From 733ee65f308ec48be427463c06f372ca116ccada Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:50:11 +0100
Subject: [PATCH] Add an option to disable NIS
@@ -12,10 +12,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 6 insertions(+)
diff --git a/configure.ac b/configure.ac
-index 05817f0..4fb35a8 100644
+index 38b7515..f25733a 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2681,6 +2681,12 @@ AC_ARG_ENABLE(codecs-cjk,
+@@ -2917,6 +2917,12 @@ AC_ARG_ENABLE(codecs-cjk,
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _codecs_kr _codecs_jp _codecs_cn _codecs_tw _codecs_hk _codecs_iso2022"
fi])
diff --git a/package/python3/0026-Add-an-option-to-disable-unicodedata.patch b/package/python3/0026-Add-an-option-to-disable-unicodedata.patch
index a5880f2603..56a5178952 100644
--- a/package/python3/0026-Add-an-option-to-disable-unicodedata.patch
+++ b/package/python3/0026-Add-an-option-to-disable-unicodedata.patch
@@ -1,4 +1,4 @@
-From 4a32e709d128886dab10e59fad60fde005933aff Mon Sep 17 00:00:00 2001
+From 64fa1fc3a9aea7ffba7b96d08a14df91051f2b6f Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:50:27 +0100
Subject: [PATCH] Add an option to disable unicodedata
@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 6 insertions(+)
diff --git a/configure.ac b/configure.ac
-index 4fb35a8..58f2dd9 100644
+index f25733a..a7ddb2b 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2687,6 +2687,12 @@ AC_ARG_ENABLE(nis,
+@@ -2923,6 +2923,12 @@ AC_ARG_ENABLE(nis,
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} nis"
fi])
diff --git a/package/python3/0027-Add-an-option-to-disable-IDLE.patch b/package/python3/0027-Add-an-option-to-disable-IDLE.patch
index c2b59e8258..73fc3959b3 100644
--- a/package/python3/0027-Add-an-option-to-disable-IDLE.patch
+++ b/package/python3/0027-Add-an-option-to-disable-IDLE.patch
@@ -1,4 +1,4 @@
-From 9336cf4eb4ded1eaa83da5549e4aba62b34ef888 Mon Sep 17 00:00:00 2001
+From 2766bcdd8f9b7395ce32a6d8480ef0a2186f2098 Mon Sep 17 00:00:00 2001
From: Maxime Ripard <maxime.ripard@free-electrons.com>
Date: Wed, 23 Dec 2015 11:50:42 +0100
Subject: [PATCH] Add an option to disable IDLE
@@ -14,10 +14,10 @@ Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
3 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 884d5aa..48b4812 100644
+index bdfee19..2466615 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1098,7 +1098,9 @@ bininstall: altbininstall
+@@ -1132,7 +1132,9 @@ bininstall: altbininstall
-rm -f $(DESTDIR)$(LIBPC)/python3.pc
(cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION).pc python3.pc)
-rm -f $(DESTDIR)$(BINDIR)/idle3
@@ -27,7 +27,7 @@ index 884d5aa..48b4812 100644
-rm -f $(DESTDIR)$(BINDIR)/pydoc3
ifeq (@PYDOC@,yes)
(cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3)
-@@ -1146,7 +1148,6 @@ LIBSUBDIRS= \
+@@ -1179,7 +1181,6 @@ LIBSUBDIRS= \
html json http dbm xmlrpc \
logging csv wsgiref urllib \
ctypes ctypes/macholib \
@@ -35,7 +35,7 @@ index 884d5aa..48b4812 100644
distutils distutils/command \
importlib \
turtledemo \
-@@ -1223,6 +1224,10 @@ ifeq (@EXPAT@,yes)
+@@ -1261,6 +1262,10 @@ ifeq (@EXPAT@,yes)
LIBSUBDIRS += $(XMLLIBSUBDIRS)
endif
@@ -47,10 +47,10 @@ index 884d5aa..48b4812 100644
LIBSUBDIRS += $(TESTSUBDIRS)
endif
diff --git a/configure.ac b/configure.ac
-index 58f2dd9..0ba25e4 100644
+index a7ddb2b..6b59792 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2729,6 +2729,12 @@ AC_ARG_ENABLE(lib2to3,
+@@ -2965,6 +2965,12 @@ AC_ARG_ENABLE(lib2to3,
AS_HELP_STRING([--disable-lib2to3], [disable lib2to3]),
[ LIB2TO3="${enableval}" ], [ LIB2TO3=yes ])
@@ -64,10 +64,10 @@ index 58f2dd9..0ba25e4 100644
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 fd3ac65..3655e57 100644
+index ecddb6a..7fe68e8 100644
--- a/setup.py
+++ b/setup.py
-@@ -2201,11 +2201,13 @@ def main():
+@@ -2221,11 +2221,13 @@ def main():
import warnings
warnings.filterwarnings("ignore",category=DeprecationWarning)
diff --git a/package/python3/0028-Add-an-option-to-disable-decimal.patch b/package/python3/0028-Add-an-option-to-disable-decimal.patch
index df85325998..1ac91dd611 100644
--- a/package/python3/0028-Add-an-option-to-disable-decimal.patch
+++ b/package/python3/0028-Add-an-option-to-disable-decimal.patch
@@ -1,4 +1,4 @@
-From 8fee92a85c170ac4ce24dda5a960f24b83d6f103 Mon Sep 17 00:00:00 2001
+From ff77defc777a57d4caee5183796fd44dd265e78b Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:51:31 +0100
Subject: [PATCH] Add an option to disable decimal
@@ -15,10 +15,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/configure.ac b/configure.ac
-index 0ba25e4..536b9b2 100644
+index 6b59792..51e1760 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2388,13 +2388,20 @@ AC_SUBST(LIBFFI_INCLUDEDIR)
+@@ -2624,13 +2624,20 @@ AC_SUBST(LIBFFI_INCLUDEDIR)
AC_MSG_RESULT($with_system_ffi)
# Check for use of the system libmpdec library
@@ -45,10 +45,10 @@ index 0ba25e4..536b9b2 100644
# Check for support for loadable sqlite extensions
AC_MSG_CHECKING(for --enable-loadable-sqlite-extensions)
diff --git a/setup.py b/setup.py
-index 3655e57..7f7627d 100644
+index 7fe68e8..364b350 100644
--- a/setup.py
+++ b/setup.py
-@@ -1968,7 +1968,7 @@ class PyBuildExt(build_ext):
+@@ -1988,7 +1988,7 @@ class PyBuildExt(build_ext):
def _decimal_ext(self):
extra_compile_args = []
undef_macros = []
diff --git a/package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch b/package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch
index 56b6ae1a79..9ac9173dcf 100644
--- a/package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch
+++ b/package/python3/0029-Add-an-option-to-disable-the-ossaudiodev-module.patch
@@ -1,4 +1,4 @@
-From 53639100c2f7836ce9a51b5e5b9b4ea08ba1dc4e Mon Sep 17 00:00:00 2001
+From 789b0f99d7c1d25bfa9c05fd12f4d55bb70f377b Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 23 Dec 2015 11:51:58 +0100
Subject: [PATCH] Add an option to disable the ossaudiodev module
@@ -9,10 +9,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1 file changed, 6 insertions(+)
diff --git a/configure.ac b/configure.ac
-index 536b9b2..c1ab3a1 100644
+index 51e1760..c4c2353 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2403,6 +2403,12 @@ else
+@@ -2639,6 +2639,12 @@ else
fi
AC_SUBST(MPDEC)
diff --git a/package/python3/0030-Support-PGEN_FOR_BUILD-and-FREEZE_IMPORTLIB_FOR_BUIL.patch b/package/python3/0030-Support-PGEN_FOR_BUILD-and-FREEZE_IMPORTLIB_FOR_BUIL.patch
new file mode 100644
index 0000000000..156eb2958d
--- /dev/null
+++ b/package/python3/0030-Support-PGEN_FOR_BUILD-and-FREEZE_IMPORTLIB_FOR_BUIL.patch
@@ -0,0 +1,62 @@
+From 4f851142b8f3149d23654117621285df34ec768b Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Wed, 23 Dec 2015 13:58:00 +0100
+Subject: [PATCH] Support PGEN_FOR_BUILD and FREEZE_IMPORTLIB_FOR_BUILD
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ Makefile.pre.in | 10 ++++++++++
+ configure.ac | 3 +++
+ 2 files changed, 13 insertions(+)
+
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+index 2466615..fdf622d 100644
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -712,10 +712,15 @@ Programs/_testembed: Programs/_testembed.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY)
+ ############################################################################
+ # Importlib
+
++ifeq (@FREEZE_IMPORTLIB_FOR_BUILD@,)
+ Programs/_freeze_importlib.o: Programs/_freeze_importlib.c Makefile
+
+ Programs/_freeze_importlib: Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN)
+ $(LINKCC) $(PY_LDFLAGS) -o $@ Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
++else
++Programs/_freeze_importlib: @FREEZE_IMPORTLIB_FOR_BUILD@
++ cp $^ $@
++endif
+
+ Python/importlib_external.h: $(srcdir)/Lib/importlib/_bootstrap_external.py Programs/_freeze_importlib
+ ./Programs/_freeze_importlib \
+@@ -789,8 +794,13 @@ $(GRAMMAR_H): $(GRAMMAR_INPUT) $(PGEN)
+ $(GRAMMAR_C): $(GRAMMAR_H)
+ touch $(GRAMMAR_C)
+
++ifeq (@PGEN_FOR_BUILD@,)
+ $(PGEN): $(PGENOBJS)
+ $(CC) $(OPT) $(PY_LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN)
++else
++$(PGEN): @PGEN_FOR_BUILD@
++ cp $^ $@
++endif
+
+ Parser/grammar.o: $(srcdir)/Parser/grammar.c \
+ $(srcdir)/Include/token.h \
+diff --git a/configure.ac b/configure.ac
+index c4c2353..750c232 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -79,6 +79,9 @@ else
+ fi
+ AC_SUBST(PYTHON_FOR_BUILD)
+
++AC_SUBST(PGEN_FOR_BUILD)
++AC_SUBST(FREEZE_IMPORTLIB_FOR_BUILD)
++
+ dnl Ensure that if prefix is specified, it does not end in a slash. If
+ dnl it does, we get path names containing '//' which is both ugly and
+ dnl can cause trouble.
+--
+2.6.4
+
diff --git a/package/python3/python3.hash b/package/python3/python3.hash
index 60ac23055f..28940032b0 100644
--- a/package/python3/python3.hash
+++ b/package/python3/python3.hash
@@ -1,4 +1,4 @@
-# From https://www.python.org/downloads/release/python-343/
-md5 7d092d1bba6e17f0d9bd21b49e441dd5 Python-3.4.3.tar.xz
+# From https://www.python.org/downloads/release/python-351/
+md5 e9ea6f2623fffcdd871b7b19113fde80 Python-3.5.1.tar.xz
# Locally computed
-sha256 b5b3963533768d5fc325a4d7a6bd6f666726002d696f1d399ec06b043ea996b8 Python-3.4.3.tar.xz
+sha256 c6d57c0c366d9060ab6c0cdf889ebf3d92711d466cc0119c441dbf2746f725c9 Python-3.5.1.tar.xz
diff --git a/package/python3/python3.mk b/package/python3/python3.mk
index a37b791a87..8459b113e3 100644
--- a/package/python3/python3.mk
+++ b/package/python3/python3.mk
@@ -4,8 +4,8 @@
#
################################################################################
-PYTHON3_VERSION_MAJOR = 3.4
-PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).3
+PYTHON3_VERSION_MAJOR = 3.5
+PYTHON3_VERSION = $(PYTHON3_VERSION_MAJOR).1
PYTHON3_SOURCE = Python-$(PYTHON3_VERSION).tar.xz
PYTHON3_SITE = http://python.org/ftp/python/$(PYTHON3_VERSION)
PYTHON3_LICENSE = Python software foundation license v2, others
@@ -36,8 +36,7 @@ HOST_PYTHON3_CONF_OPTS += \
--enable-unicodedata \
--disable-test-modules \
--disable-idle3 \
- --disable-ossaudiodev \
- --disable-pyo-build
+ --disable-ossaudiodev
# Make sure that LD_LIBRARY_PATH overrides -rpath.
# This is needed because libpython may be installed at the same time that
@@ -79,10 +78,6 @@ ifeq ($(BR2_PACKAGE_PYTHON3_PYC_ONLY),y)
PYTHON3_CONF_OPTS += --enable-old-stdlib-cache
endif
-ifeq ($(BR2_PACKAGE_PYTHON3_PY_ONLY),y)
-PYTHON3_CONF_OPTS += --disable-pyc-build
-endif
-
ifeq ($(BR2_PACKAGE_PYTHON3_SQLITE),y)
PYTHON3_DEPENDENCIES += sqlite
else
@@ -137,27 +132,23 @@ PYTHON3_CONF_OPTS += \
--disable-tk \
--disable-nis \
--disable-idle3 \
- --disable-pyo-build
-
-# This is needed to make sure the Python build process doesn't try to
-# regenerate those files with the pgen program. Otherwise, it builds
-# pgen for the target, and tries to run it on the host.
-
-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
+ --disable-pyc-build
+
+# Python builds two tools to generate code: 'pgen' and
+# '_freeze_importlib'. Unfortunately, for the target Python, they are
+# built for the target, while we need to run them at build time. So
+# when installing host-python, we copy them to
+# $(HOST_DIR)/usr/bin. And then, when building the target python
+# package, we tell the configure script where they are located.
+define HOST_PYTHON3_INSTALL_TOOLS
+ cp $(@D)/Parser/pgen $(HOST_DIR)/usr/bin/python-pgen
+ cp $(@D)/Programs/_freeze_importlib $(HOST_DIR)/usr/bin/python-freeze-importlib
endef
+HOST_PYTHON3_POST_INSTALL_HOOKS += HOST_PYTHON3_INSTALL_TOOLS
-PYTHON3_POST_PATCH_HOOKS += PYTHON3_TOUCH_GRAMMAR_FILES
-PYTHON3_POST_PATCH_HOOKS += PYTHON3_TOUCH_IMPORTLIB_H
+PYTHON3_CONF_ENV += \
+ PGEN_FOR_BUILD=$(HOST_DIR)/usr/bin/python-pgen \
+ FREEZE_IMPORTLIB_FOR_BUILD=$(HOST_DIR)/usr/bin/python-freeze-importlib
#
# Remove useless files. In the config/ directory, only the Makefile
@@ -218,16 +209,42 @@ PYTHON3_PATH = $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/sysconfigdat
$(eval $(autotools-package))
$(eval $(host-autotools-package))
+define PYTHON3_CREATE_PYC_FILES
+ PYTHONPATH="$(PYTHON3_PATH)" \
+ $(HOST_DIR)/usr/bin/python$(PYTHON3_VERSION_MAJOR) \
+ support/scripts/pycompile.py \
+ $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)
+endef
+
+ifeq ($(BR2_PACKAGE_PYTHON3_PYC_ONLY)$(BR2_PACKAGE_PYTHON3_PY_PYC),y)
+TARGET_FINALIZE_HOOKS += PYTHON3_CREATE_PYC_FILES
+endif
+
ifeq ($(BR2_PACKAGE_PYTHON3_PYC_ONLY),y)
-define PYTHON3_FINALIZE_TARGET
- find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.py' -print0 | xargs -0 rm -f
+define PYTHON3_REMOVE_PY_FILES
+ find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.py' -print0 | \
+ xargs -0 --no-run-if-empty rm -f
endef
+TARGET_FINALIZE_HOOKS += PYTHON3_REMOVE_PY_FILES
endif
+# Normally, *.pyc files should not have been compiled, but just in
+# case, we make sure we remove all of them.
ifeq ($(BR2_PACKAGE_PYTHON3_PY_ONLY),y)
-define PYTHON3_FINALIZE_TARGET
- find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.pyc' -print0 | xargs -0 rm -f
+define PYTHON3_REMOVE_PYC_FILES
+ find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.pyc' -print0 | \
+ xargs -0 --no-run-if-empty rm -f
endef
+TARGET_FINALIZE_HOOKS += PYTHON3_REMOVE_PYC_FILES
endif
-TARGET_FINALIZE_HOOKS += PYTHON3_FINALIZE_TARGET
+# In all cases, we don't want to keep the optimized .opt-1.pyc and
+# .opt-2.pyc files, since they can't work without their non-optimized
+# variant.
+ifeq ($(BR2_PACKAGE_PYTHON3),y)
+define PYTHON3_REMOVE_OPTIMIZED_PYC_FILES
+ find $(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR) -name '*.opt-1.pyc' -print0 -o -name '*.opt-2.pyc' -print0 | \
+ xargs -0 --no-run-if-empty rm -f
+endef
+TARGET_FINALIZE_HOOKS += PYTHON3_REMOVE_OPTIMIZED_PYC_FILES
+endif
diff --git a/package/samba4/samba4.mk b/package/samba4/samba4.mk
index c09706882a..e424861f67 100644
--- a/package/samba4/samba4.mk
+++ b/package/samba4/samba4.mk
@@ -118,16 +118,6 @@ define SAMBA4_INSTALL_TARGET_CMDS
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
endef
-# Samba just installs .py files so the purge causes problems with some tools
-ifeq ($(BR2_PACKAGE_PYTHON_PYC_ONLY),y)
-define SAMBA4_BUILD_PYC_FILES
- PYTHONPATH="$(PYTHON_PATH)" \
- $(HOST_DIR)/usr/bin/python -c "import compileall; \
- compileall.compile_dir('$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages/samba')"
-endef
-SAMBA4_POST_INSTALL_TARGET_HOOKS += SAMBA4_BUILD_PYC_FILES
-endif
-
ifeq ($(BR2_PACKAGE_SAMBA4_AD_DC),)
SAMBA4_CONF_OPTS += --without-ad-dc
endif
diff --git a/package/sqlite/sqlite.hash b/package/sqlite/sqlite.hash
index a005cb11a4..ce03e1ecd3 100644
--- a/package/sqlite/sqlite.hash
+++ b/package/sqlite/sqlite.hash
@@ -1,4 +1,4 @@
# From http://www.sqlite.org/download.html
-sha1 b43c2e7238e54c50b95fbbd85c48792f4f39af8c sqlite-autoconf-3120200.tar.gz
+sha1 f6f76e310389e3f510b23826f805850449ae8653 sqlite-autoconf-3130000.tar.gz
# Calculated based on the hash above
-sha256 fd00770c9afd39db555c78400e52f55e8bd6568c78be23561abb472a22d09abb sqlite-autoconf-3120200.tar.gz
+sha256 e2797026b3310c9d08bd472f6d430058c6dd139ff9d4e30289884ccd9744086b sqlite-autoconf-3130000.tar.gz
diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk
index 2f9b6ce760..0dadd76516 100644
--- a/package/sqlite/sqlite.mk
+++ b/package/sqlite/sqlite.mk
@@ -4,7 +4,7 @@
#
################################################################################
-SQLITE_VERSION = 3120200
+SQLITE_VERSION = 3130000
SQLITE_SOURCE = sqlite-autoconf-$(SQLITE_VERSION).tar.gz
SQLITE_SITE = http://www.sqlite.org/2016
SQLITE_LICENSE = Public domain
diff --git a/package/sysstat/sysstat.hash b/package/sysstat/sysstat.hash
index 655cafe2b8..95c39db58d 100644
--- a/package/sysstat/sysstat.hash
+++ b/package/sysstat/sysstat.hash
@@ -1,2 +1,2 @@
# From: http://sebastien.godard.pagesperso-orange.fr/download.html
-sha1 7e9422e985b65728d007bd38d4a8d090aa795826 sysstat-11.2.3.tar.xz
+sha1 ddf1ed67f1ce4b09081c49d0fa228600b8ed5660 sysstat-11.2.4.tar.xz
diff --git a/package/sysstat/sysstat.mk b/package/sysstat/sysstat.mk
index a16054f3dd..3b0eb2b93b 100644
--- a/package/sysstat/sysstat.mk
+++ b/package/sysstat/sysstat.mk
@@ -4,7 +4,7 @@
#
################################################################################
-SYSSTAT_VERSION = 11.2.3
+SYSSTAT_VERSION = 11.2.4
SYSSTAT_SOURCE = sysstat-$(SYSSTAT_VERSION).tar.xz
SYSSTAT_SITE = http://pagesperso-orange.fr/sebastien.godard
SYSSTAT_CONF_OPTS = --disable-man-group --disable-sensors
diff --git a/package/systemd/systemd.hash b/package/systemd/systemd.hash
index 729598608d..141eadfa34 100644
--- a/package/systemd/systemd.hash
+++ b/package/systemd/systemd.hash
@@ -1,2 +1,2 @@
# sha256 locally computed
-sha256 b51b0a48d1beb388d95bd6a98d62be05490335d4bb388aefecdcb576e91e0741 systemd-229.tar.gz
+sha256 46b07568142adcd017c62e6230d39eb10d219ed3b2f13ffc12d9a3a6b1c840cd systemd-230.tar.gz
diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk
index 8a6aa44315..b5253973c6 100644
--- a/package/systemd/systemd.mk
+++ b/package/systemd/systemd.mk
@@ -4,7 +4,7 @@
#
################################################################################
-SYSTEMD_VERSION = 229
+SYSTEMD_VERSION = 230
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
@@ -36,6 +36,7 @@ SYSTEMD_CONF_OPTS += \
--disable-gnuefi \
--disable-ldconfig \
--disable-tests \
+ --with-default-dnssec=no \
--without-python
SYSTEMD_CFLAGS = $(TARGET_CFLAGS) -fno-lto
diff --git a/package/sysvinit/inittab b/package/sysvinit/inittab
index 27eb4a6931..fad91eae8b 100644
--- a/package/sysvinit/inittab
+++ b/package/sysvinit/inittab
@@ -10,7 +10,7 @@ si2::sysinit:/bin/mkdir -p /dev/pts
si3::sysinit:/bin/mkdir -p /dev/shm
si4::sysinit:/bin/mount -a
si5::sysinit:/bin/hostname -F /etc/hostname
-si6::sysinit:/etc/init.d/rcS
+rcS:12345:wait:/etc/init.d/rcS
# S0:1:respawn:/sbin/getty -L ttyS0 115200 vt100 # GENERIC_SERIAL
diff --git a/package/taglib/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch b/package/taglib/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch
deleted file mode 100644
index 535ccb4d38..0000000000
--- a/package/taglib/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 4e6a75eed3602f10aff516f49c8088c6da8db9df Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sun, 31 Aug 2014 12:11:57 +0200
-Subject: [PATCH 1/1] cmake: use the standard CMake flag to drive the shared
- object build
-
-If BUILD_SHARED_LIBS is set and ENABLE_STATIC undefined, then drive
-ENABLE_STATIC with the BUILD_SHARED_LIBS value.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- CMakeLists.txt | 12 +++++++++++-
- 1 file changed, 11 insertions(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 317ffa1..9931957 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -2,7 +2,17 @@ project(taglib)
-
- cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR)
-
--option(ENABLE_STATIC "Make static version of libtag" OFF)
-+# Use the standard CMake flag to drive the shared object build.
-+if(DEFINED BUILD_SHARED_LIBS AND NOT DEFINED ENABLE_STATIC)
-+ if(BUILD_SHARED_LIBS)
-+ set(ENABLE_STATIC OFF)
-+ else()
-+ set(ENABLE_STATIC ON)
-+ endif()
-+else()
-+ option(ENABLE_STATIC "Make static version of libtag" OFF)
-+endif()
-+
- if(ENABLE_STATIC)
- add_definitions(-DTAGLIB_STATIC)
- set(BUILD_SHARED_LIBS OFF)
---
-2.1.0
-
diff --git a/package/taglib/Config.in b/package/taglib/Config.in
index 209837f46b..6521d48c60 100644
--- a/package/taglib/Config.in
+++ b/package/taglib/Config.in
@@ -1,4 +1,3 @@
-
config BR2_PACKAGE_TAGLIB
bool "taglib"
depends on BR2_INSTALL_LIBSTDCPP
diff --git a/package/taglib/taglib.hash b/package/taglib/taglib.hash
index 86ac6a4f58..a3cfc79f24 100644
--- a/package/taglib/taglib.hash
+++ b/package/taglib/taglib.hash
@@ -1,2 +1,2 @@
# Locally calculated
-sha256 72d371cd1419a87ae200447a53bff2be219283071e80fd12337928cc967dc71a taglib-1.9.1.tar.gz
+sha256 ed4cabb3d970ff9a30b2620071c2b054c4347f44fc63546dbe06f97980ece288 taglib-1.11.tar.gz
diff --git a/package/taglib/taglib.mk b/package/taglib/taglib.mk
index 2410650025..0a2ca4dcd4 100644
--- a/package/taglib/taglib.mk
+++ b/package/taglib/taglib.mk
@@ -4,7 +4,7 @@
#
################################################################################
-TAGLIB_VERSION = 1.9.1
+TAGLIB_VERSION = 1.11
TAGLIB_SITE = http://taglib.github.io/releases
TAGLIB_INSTALL_STAGING = YES
TAGLIB_LICENSE = LGPLv2.1, MPL
diff --git a/package/tar/0001-fix-build-failure.patch b/package/tar/0001-fix-build-failure.patch
deleted file mode 100644
index 8550a3ef5a..0000000000
--- a/package/tar/0001-fix-build-failure.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-Status: upstream
-http://git.savannah.gnu.org/cgit/tar.git/commit/?id=e9ddc08da0982f36581ae5a8c7763453ff41cfe8
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-From e9ddc08da0982f36581ae5a8c7763453ff41cfe8 Mon Sep 17 00:00:00 2001
-From: Sergey Poznyakoff <gray@gnu.org>
-Date: Wed, 24 Sep 2014 21:22:16 +0000
-Subject: Bugfixes.
-
-* doc/tar.1: Fix typo in font spec.
-* src/tar.c (sort_mode_arg, sort_mode_flag): Protect "inode"
-(SAVEDIR_SORT_INODE) with D_INO_IN_DIRENT
----
-diff --git a/doc/tar.1 b/doc/tar.1
-index 9000627..b91de63 100644
---- a/doc/tar.1
-+++ b/doc/tar.1
-@@ -879,7 +879,7 @@ Exclude files matching patterns listed in FILE.
- \fB\-\-strip\-components\fR=\fINUMBER\fR
- Strip \fINUMBER\fR leading components from file names on extraction.
- .TP
--\fB\-\-transform\fR=\fIEXPRESSION\dR, \fB\-\-xform\fR=\fIEXPRESSION\fR
-+\fB\-\-transform\fR=\fIEXPRESSION\fR, \fB\-\-xform\fR=\fIEXPRESSION\fR
- Use sed replace \fIEXPRESSION\fR to transform file names.
- .SS File name matching options
- These options affect both exclude and include patterns.
-diff --git a/src/tar.c b/src/tar.c
-index 225c624..f8102e0 100644
---- a/src/tar.c
-+++ b/src/tar.c
-@@ -1341,14 +1341,18 @@ static char filename_terminator;
- static char const *const sort_mode_arg[] = {
- "none",
- "name",
-+#if D_INO_IN_DIRENT
- "inode",
-+#endif
- NULL
- };
-
- static int sort_mode_flag[] = {
- SAVEDIR_SORT_NONE,
- SAVEDIR_SORT_NAME,
-+#if D_INO_IN_DIRENT
- SAVEDIR_SORT_INODE
-+#endif
- };
-
- ARGMATCH_VERIFY (sort_mode_arg, sort_mode_flag);
---
-cgit v0.9.0.2
diff --git a/package/tar/tar.hash b/package/tar/tar.hash
index 5d2f1db0d3..e5634566e0 100644
--- a/package/tar/tar.hash
+++ b/package/tar/tar.hash
@@ -1,3 +1,3 @@
# Locally calculated after checking signature
-sha256 64ee8d88ec1b47a0961033493f919d27218c41b580138fd6802327462aff22f2 tar-1.28.tar.xz
-sha256 a3906a862f83dac1dfaf0ed200c62bd21f6d00f184a7f42b91978593a8553104 tar-1.28.cpio.gz
+sha256 402dcfd0022fd7a1f2c5611f5c61af1cd84910a760a44a688e18ddbff4e9f024 tar-1.29.tar.xz
+sha256 9173f222464dd3676118408840da5990527062b5c7daf6487bed7c396c45bfb1 tar-1.29.cpio.gz
diff --git a/package/tar/tar.mk b/package/tar/tar.mk
index 2b47e334d5..767c02f9f9 100644
--- a/package/tar/tar.mk
+++ b/package/tar/tar.mk
@@ -4,7 +4,7 @@
#
################################################################################
-TAR_VERSION = 1.28
+TAR_VERSION = 1.29
TAR_SOURCE = tar-$(TAR_VERSION).tar.xz
TAR_SITE = $(BR2_GNU_MIRROR)/tar
# busybox installs in /bin, so we need tar to install as well in /bin
diff --git a/package/thrift/Config.in b/package/thrift/Config.in
index 54ca9b8538..0ee3f000d7 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_PACKAGE_BOOST_ARCH_SUPPORTS
select BR2_PACKAGE_BOOST
select BR2_PACKAGE_LIBEVENT
select BR2_PACKAGE_OPENSSL
@@ -19,6 +18,5 @@ config BR2_PACKAGE_THRIFT
http://thrift.apache.org/
comment "thrift needs a toolchain w/ C++, wchar, threads"
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
depends on !BR2_USE_WCHAR || \
!BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP
diff --git a/package/uboot-tools/0001-drop-configh-from-tools.patch b/package/uboot-tools/0001-drop-configh-from-tools.patch
index e77a301760..fbc96084db 100644
--- a/package/uboot-tools/0001-drop-configh-from-tools.patch
+++ b/package/uboot-tools/0001-drop-configh-from-tools.patch
@@ -1,7 +1,7 @@
-From 2e54434e4dd178773e8e11e48afc81299771f3e7 Mon Sep 17 00:00:00 2001
+From b742c7590ac6d9ac72dd227679ccff79433b3512 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
Date: Tue, 4 Aug 2015 22:13:20 +0200
-Subject: [PATCH 1/1] drop configh from tools
+Subject: [PATCH] drop configh from tools
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -18,12 +18,12 @@ Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
1 file changed, 11 deletions(-)
diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
-index 60c0517..1c5daaa 100644
+index 57149e7..50049fe 100644
--- a/tools/env/fw_env.h
+++ b/tools/env/fw_env.h
-@@ -5,17 +5,6 @@
- * SPDX-License-Identifier: GPL-2.0+
- */
+@@ -8,17 +8,6 @@
+ #include <aes.h>
+ #include <stdint.h>
-/* Pull in the current config to define the default environment */
-#include <linux/kconfig.h>
@@ -40,5 +40,5 @@ index 60c0517..1c5daaa 100644
* To build the utility with the static configuration
* comment out the next line.
--
-2.5.0
+2.7.4
diff --git a/package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch b/package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch
index fedf9beeb6..795466f49e 100644
--- a/package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch
+++ b/package/uboot-tools/0002-tools-only-in-no-dot-config-targets.patch
@@ -1,7 +1,7 @@
-From 7d9bac7bf8d9ef39ab6b6e8d436e3dbdee5cd120 Mon Sep 17 00:00:00 2001
+From b8110293d70c4f43035dfd6a0904d342be6a08e0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks>
Date: Sun, 1 Feb 2015 21:53:47 +0100
-Subject: [PATCH 1/1] tools only in no dot config targets
+Subject: [PATCH] tools only in no dot config targets
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -23,17 +23,18 @@ Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 36a9a28..f85c194 100644
+index 954a865..3ab5958 100644
--- a/Makefile
+++ b/Makefile
-@@ -417,7 +417,7 @@ timestamp_h := include/generated/timestamp_autogenerated.h
-
+@@ -424,7 +424,7 @@ timestamp_h := include/generated/timestamp_autogenerated.h
+
no-dot-config-targets := clean clobber mrproper distclean \
- help %docs check% coccicheck \
+ help %docs check% coccicheck \
- ubootversion backup
+ ubootversion backup tools-only
-
+
config-targets := 0
mixed-targets := 0
---
-2.3.0
+--
+2.7.4
+
diff --git a/package/uboot-tools/0003-tools-env-bug-config-structs-must-be-defined-in-tool.patch b/package/uboot-tools/0003-tools-env-bug-config-structs-must-be-defined-in-tool.patch
deleted file mode 100644
index 380e8cce3f..0000000000
--- a/package/uboot-tools/0003-tools-env-bug-config-structs-must-be-defined-in-tool.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 43cb65b7a00e4759427a6e4b8a02039e43dab5a5 Mon Sep 17 00:00:00 2001
-From: Andreas Fenkart <andreas.fenkart@digitalstrom.com>
-Date: Fri, 25 Mar 2016 14:52:19 +0100
-Subject: [PATCH] tools: env: bug: config structs must be defined in tools
- library
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-fw_senten/fw_printenv can be compiled as a tools library, excluding the
-fw_env_main object.
-
-Fixes build error when linking with libubootenv:
- fw_env.c:(.text+0x94): undefined reference to `common_args'
-
-Backported from: 43cb65b7a00e4759427a6e4b8a02039e43dab5a5
-
-Reported-by: Stefano Babic <sbabic@denx.de>
-Signed-off-by: Andreas Fenkart <andreas.fenkart@digitalstrom.com>
-Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
----
- tools/env/fw_env.c | 4 ++++
- tools/env/fw_env_main.c | 4 ----
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c
-index 5c7505c..1420ac5 100644
---- a/tools/env/fw_env.c
-+++ b/tools/env/fw_env.c
-@@ -35,6 +35,10 @@
-
- #include "fw_env.h"
-
-+struct common_args common_args;
-+struct printenv_args printenv_args;
-+struct setenv_args setenv_args;
-+
- #define DIV_ROUND_UP(n, d) (((n) + (d) - 1) / (d))
-
- #define min(x, y) ({ \
-diff --git a/tools/env/fw_env_main.c b/tools/env/fw_env_main.c
-index 3bec5b9..3706d8f 100644
---- a/tools/env/fw_env_main.c
-+++ b/tools/env/fw_env_main.c
-@@ -49,10 +49,6 @@ static struct option long_options[] = {
- {NULL, 0, NULL, 0}
- };
-
--struct common_args common_args;
--struct printenv_args printenv_args;
--struct setenv_args setenv_args;
--
- void usage_printenv(void)
- {
-
---
-2.8.2
-
diff --git a/package/uboot-tools/Config.in b/package/uboot-tools/Config.in
index aca310bfe3..76983f417d 100644
--- a/package/uboot-tools/Config.in
+++ b/package/uboot-tools/Config.in
@@ -10,6 +10,8 @@ if BR2_PACKAGE_UBOOT_TOOLS
config BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE
bool "mkimage"
help
+ Install the mkimage tool on the target system
+
The mkimage tool from Das U-Boot bootloader, which allows
generation of U-Boot images in various formats.
@@ -41,6 +43,8 @@ endif
config BR2_PACKAGE_UBOOT_TOOLS_MKENVIMAGE
bool "mkenvimage"
help
+ Install the mkenvimage tool on the target system
+
The mkenvimage tool from Das U-Boot bootloader, which allows
generation of a valid binary environment image from a text file
describing the key=value pairs of the environment.
@@ -49,13 +53,17 @@ config BR2_PACKAGE_UBOOT_TOOLS_FWPRINTENV
bool "fw_printenv"
default y
help
- The fw_printenv / fw_setenv tools from Das U-Boot
+ Install the fw_printenv / fw_setenv tools on the target system
+
+ The fw_printenv and fw_setenv tools from Das U-Boot
bootloader, which allows access to the U-Boot environment
from Linux.
config BR2_PACKAGE_UBOOT_TOOLS_DUMPIMAGE
bool "dumpimage"
help
+ Install the dumpimage tool on the target system
+
The dumpimage tool from Das U-Boot bootloader, which allows
extraction of data from U-Boot images.
diff --git a/package/uboot-tools/uboot-tools.hash b/package/uboot-tools/uboot-tools.hash
index 747d133dfc..2076b3b80b 100644
--- a/package/uboot-tools/uboot-tools.hash
+++ b/package/uboot-tools/uboot-tools.hash
@@ -1,2 +1,2 @@
# Locally computed:
-sha256 e49337262ecac44dbdeac140f2c6ebd1eba345e0162b0464172e7f05583ed7bb u-boot-2016.03.tar.bz2
+sha256 87d02275615aaf0cd007b54cbe9fbadceef2bee7c79e6c323ea1ae8956dcb171 u-boot-2016.05.tar.bz2
diff --git a/package/uboot-tools/uboot-tools.mk b/package/uboot-tools/uboot-tools.mk
index d1ebd6feee..a6aadeb15d 100644
--- a/package/uboot-tools/uboot-tools.mk
+++ b/package/uboot-tools/uboot-tools.mk
@@ -4,7 +4,7 @@
#
################################################################################
-UBOOT_TOOLS_VERSION = 2016.03
+UBOOT_TOOLS_VERSION = 2016.05
UBOOT_TOOLS_SOURCE = u-boot-$(UBOOT_TOOLS_VERSION).tar.bz2
UBOOT_TOOLS_SITE = ftp://ftp.denx.de/pub/u-boot
UBOOT_TOOLS_LICENSE = GPLv2+
@@ -21,6 +21,7 @@ define UBOOT_TOOLS_BUILD_CMDS
CROSS_COMPILE="$(TARGET_CROSS)" \
CFLAGS="$(TARGET_CFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
+ STRIP=$(TARGET_STRIP) \
CROSS_BUILD_TOOLS=y \
CONFIG_FIT_SIGNATURE=$(BR2_PACKAGE_UBOOT_TOOLS_MKIMAGE_FIT_SIGNATURE_SUPPORT) \
tools-only
@@ -28,6 +29,7 @@ define UBOOT_TOOLS_BUILD_CMDS
CROSS_COMPILE="$(TARGET_CROSS)" \
CFLAGS="$(TARGET_CFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
+ STRIP=$(TARGET_STRIP) \
env no-dot-config-targets=env
endef
diff --git a/package/uclibc/uclibc.mk b/package/uclibc/uclibc.mk
index b8ccee2cc8..1e12896884 100644
--- a/package/uclibc/uclibc.mk
+++ b/package/uclibc/uclibc.mk
@@ -47,6 +47,40 @@ UCLIBC_LOCALES = \
$(firstword $(subst .,$(space),$(locale))))
endif
+# noMMU binary formats
+ifeq ($(BR2_BINFMT_FDPIC),y)
+define UCLIBC_BINFMT_CONFIG
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config)
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config)
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config)
+ $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config)
+endef
+endif
+ifeq ($(BR2_BINFMT_FLAT_ONE),y)
+define UCLIBC_BINFMT_CONFIG
+ $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config)
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config)
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config)
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config)
+endef
+endif
+ifeq ($(BR2_BINFMT_FLAT_SEP_DATA),y)
+define UCLIBC_BINFMT_CONFIG
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config)
+ $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config)
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config)
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config)
+endef
+endif
+ifeq ($(BR2_BINFMT_FLAT_SHARED),y)
+define UCLIBC_BINFMT_CONFIG
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT,$(@D)/.config)
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FLAT_SEP_DATA,$(@D)/.config)
+ $(call KCONFIG_ENABLE_OPT,UCLIBC_FORMAT_SHARED_FLAT,$(@D)/.config)
+ $(call KCONFIG_DISABLE_OPT,UCLIBC_FORMAT_FDPIC_ELF,$(@D)/.config)
+endef
+endif
+
#
# ARC definitions
#
@@ -182,6 +216,15 @@ endef
endif
#
+# Debug
+#
+ifeq ($(BR2_ENABLE_DEBUG),y)
+define UCLIBC_DEBUG_CONFIG
+ $(call KCONFIG_ENABLE_OPT,DODEBUG,$(@D)/.config)
+endef
+endif
+
+#
# Endianness
#
@@ -382,6 +425,7 @@ define UCLIBC_KCONFIG_FIXUP_CMDS
$(call KCONFIG_SET_OPT,DEVEL_PREFIX,"/usr",$(@D)/.config)
$(call KCONFIG_SET_OPT,SHARED_LIB_LOADER_PREFIX,"/lib",$(@D)/.config)
$(UCLIBC_MMU_CONFIG)
+ $(UCLIBC_BINFMT_CONFIG)
$(UCLIBC_ARC_TYPE_CONFIG)
$(UCLIBC_ARC_PAGE_SIZE_CONFIG)
$(UCLIBC_ARM_ABI_CONFIG)
@@ -394,6 +438,7 @@ define UCLIBC_KCONFIG_FIXUP_CMDS
$(UCLIBC_SPARC_TYPE_CONFIG)
$(UCLIBC_POWERPC_TYPE_CONFIG)
$(UCLIBC_X86_TYPE_CONFIG)
+ $(UCLIBC_DEBUG_CONFIG)
$(UCLIBC_ENDIAN_CONFIG)
$(UCLIBC_LARGEFILE_CONFIG)
$(UCLIBC_IPV6_CONFIG)
diff --git a/package/valijson/Config.in b/package/valijson/Config.in
index 57dad66187..46993783a7 100644
--- a/package/valijson/Config.in
+++ b/package/valijson/Config.in
@@ -3,7 +3,6 @@ config BR2_PACKAGE_VALIJSON
depends on BR2_USE_WCHAR
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
select BR2_PACKAGE_BOOST
select BR2_PACKAGE_BOOST_REGEX
help
@@ -16,5 +15,4 @@ config BR2_PACKAGE_VALIJSON
https://github.com/tristanpenman/valijson
comment "valijson needs a toolchain w/ C++, threads, wchar support"
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
diff --git a/package/wayland-protocols/wayland-protocols.hash b/package/wayland-protocols/wayland-protocols.hash
index f2d5b7fe94..380581b1f5 100644
--- a/package/wayland-protocols/wayland-protocols.hash
+++ b/package/wayland-protocols/wayland-protocols.hash
@@ -1,2 +1,2 @@
-# From https://lists.freedesktop.org/archives/wayland-devel/2015-November/025759.html
-sha256 a538a8e3f999f2722897eb60aa2e2b53d879381b413b630957d58a9acd226def wayland-protocols-1.0.tar.xz
+# From https://lists.freedesktop.org/archives/wayland-devel/2016-May/029014.html
+sha256 014a9a23c21ed14f49b1005b3e8efa66d6337d4ceafc97f7b0d6707e7e3df572 wayland-protocols-1.4.tar.xz
diff --git a/package/wayland-protocols/wayland-protocols.mk b/package/wayland-protocols/wayland-protocols.mk
index bb6d52f895..51ee9ee393 100644
--- a/package/wayland-protocols/wayland-protocols.mk
+++ b/package/wayland-protocols/wayland-protocols.mk
@@ -4,7 +4,7 @@
#
################################################################################
-WAYLAND_PROTOCOLS_VERSION = 1.0
+WAYLAND_PROTOCOLS_VERSION = 1.4
WAYLAND_PROTOCOLS_SITE = http://wayland.freedesktop.org/releases
WAYLAND_PROTOCOLS_SOURCE = wayland-protocols-$(WAYLAND_PROTOCOLS_VERSION).tar.xz
WAYLAND_PROTOCOLS_LICENSE = MIT
diff --git a/package/wayland/wayland.hash b/package/wayland/wayland.hash
index c9d0721cb6..be1b6b5f4c 100644
--- a/package/wayland/wayland.hash
+++ b/package/wayland/wayland.hash
@@ -1,2 +1,2 @@
-# From https://lists.freedesktop.org/archives/wayland-devel/2016-February/027038.html
-sha256 4bf6e790aa6f50ab3825676282ecd75850ec9c4767af96ecb7127b1f3c3d60dc wayland-1.10.0.tar.xz
+# From https://lists.freedesktop.org/archives/wayland-devel/2016-June/029163.html
+sha256 9540925f7928becfdf5e3b84c70757f6589bf1ceef09bea78784d8e4772c0db0 wayland-1.11.0.tar.xz
diff --git a/package/wayland/wayland.mk b/package/wayland/wayland.mk
index 215e70ac78..e219624687 100644
--- a/package/wayland/wayland.mk
+++ b/package/wayland/wayland.mk
@@ -4,7 +4,7 @@
#
################################################################################
-WAYLAND_VERSION = 1.10.0
+WAYLAND_VERSION = 1.11.0
WAYLAND_SITE = http://wayland.freedesktop.org/releases
WAYLAND_SOURCE = wayland-$(WAYLAND_VERSION).tar.xz
WAYLAND_LICENSE = MIT
diff --git a/package/weston/0002-build-add-check-for-clock_gettime-in-librt.patch b/package/weston/0002-build-add-check-for-clock_gettime-in-librt.patch
deleted file mode 100644
index 2c8f54e505..0000000000
--- a/package/weston/0002-build-add-check-for-clock_gettime-in-librt.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From 4c0a6ed01fb1aab578dc6ac29f11524a3883e14f Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Wed, 20 Apr 2016 13:16:58 -0300
-Subject: [PATCH] build: add check for clock_gettime() in librt
-
-In older versions of glibc (< 2.17) clock_gettime() is in librt, hence
-linking against librt is required when using it.
-Add a configure check for this and replace all instances of -lrt in
-Makefile.am with $(CLOCK_GETTIME_LIBS).
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
-Status: submitted upstream
-
- Makefile.am | 15 ++++++++-------
- configure.ac | 5 +++++
- 2 files changed, 13 insertions(+), 7 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index d3c3f71..c042c68 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -65,7 +65,7 @@ weston_LDFLAGS = -export-dynamic
- weston_CPPFLAGS = $(AM_CPPFLAGS) -DIN_WESTON
- weston_CFLAGS = $(AM_CFLAGS) $(COMPOSITOR_CFLAGS) $(LIBUNWIND_CFLAGS)
- weston_LDADD = $(COMPOSITOR_LIBS) $(LIBUNWIND_LIBS) \
-- $(DLOPEN_LIBS) -lm -lrt libshared.la
-+ $(DLOPEN_LIBS) -lm $(CLOCK_GETTIME_LIBS) libshared.la
-
- weston_SOURCES = \
- src/git-version.h \
-@@ -270,7 +270,8 @@ drm_backend_la_LIBADD = \
- $(COMPOSITOR_LIBS) \
- $(DRM_COMPOSITOR_LIBS) \
- $(INPUT_BACKEND_LIBS) \
-- libshared.la -lrt \
-+ libshared.la \
-+ $(CLOCK_GETTIME_LIBS) \
- libsession-helper.la
- drm_backend_la_CFLAGS = \
- $(COMPOSITOR_CFLAGS) \
-@@ -508,11 +509,11 @@ nodist_weston_presentation_shm_SOURCES = \
- protocol/presentation-time-protocol.c \
- protocol/presentation-time-client-protocol.h
- weston_presentation_shm_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
--weston_presentation_shm_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la -lm -lrt
-+weston_presentation_shm_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la -lm $(CLOCK_GETTIME_LIBS)
-
- weston_multi_resource_SOURCES = clients/multi-resource.c
- weston_multi_resource_CFLAGS = $(AM_CFLAGS) $(SIMPLE_CLIENT_CFLAGS)
--weston_multi_resource_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la -lrt -lm
-+weston_multi_resource_LDADD = $(SIMPLE_CLIENT_LIBS) libshared.la $(CLOCK_GETTIME_LIBS) -lm
- endif
-
- if BUILD_SIMPLE_EGL_CLIENTS
-@@ -580,7 +581,7 @@ BUILT_SOURCES += $(nodist_libtoytoolkit_la_SOURCES)
- libtoytoolkit_la_LIBADD = \
- $(CLIENT_LIBS) \
- $(CAIRO_EGL_LIBS) \
-- libshared-cairo.la -lrt -lm
-+ libshared-cairo.la $(CLOCK_GETTIME_LIBS) -lm
- libtoytoolkit_la_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS) $(CAIRO_EGL_CFLAGS)
-
- weston_flower_SOURCES = clients/flower.c
-@@ -1181,7 +1182,7 @@ vertex_clip_test_SOURCES = \
- shared/helpers.h \
- src/vertex-clipping.c \
- src/vertex-clipping.h
--vertex_clip_test_LDADD = libtest-runner.la -lm -lrt
-+vertex_clip_test_LDADD = libtest-runner.la -lm $(CLOCK_GETTIME_LIBS)
-
- libtest_client_la_SOURCES = \
- tests/weston-test-client-helper.c \
-@@ -1269,7 +1270,7 @@ matrix_test_SOURCES = \
- shared/matrix.c \
- shared/matrix.h
- matrix_test_CPPFLAGS = -DUNIT_TEST
--matrix_test_LDADD = -lm -lrt
-+matrix_test_LDADD = -lm $(CLOCK_GETTIME_LIBS)
-
- if ENABLE_IVI_SHELL
- module_tests += \
-diff --git a/configure.ac b/configure.ac
-index 447cf6b..670200c 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -46,6 +46,11 @@ AC_CHECK_FUNC([dlopen], [],
- AC_CHECK_LIB([dl], [dlopen], DLOPEN_LIBS="-ldl"))
- AC_SUBST(DLOPEN_LIBS)
-
-+# In old glibc versions (< 2.17) clock_gettime() is in librt
-+AC_SEARCH_LIBS([clock_gettime], [rt],
-+ [CLOCK_GETTIME_LIBS="-lrt"])
-+AC_SUBST([CLOCK_GETTIME_LIBS])
-+
- AC_CHECK_DECL(SFD_CLOEXEC,[],
- [AC_MSG_ERROR("SFD_CLOEXEC is needed to compile weston")],
- [[#include <sys/signalfd.h>]])
---
-2.7.3
-
diff --git a/package/weston/Config.in b/package/weston/Config.in
index 8cefa411b4..0812279cf7 100644
--- a/package/weston/Config.in
+++ b/package/weston/Config.in
@@ -82,4 +82,26 @@ config BR2_PACKAGE_WESTON_RPI
depends on BR2_PACKAGE_RPI_USERLAND
select BR2_PACKAGE_WESTON_HAS_COMPOSITOR
+config BR2_PACKAGE_WESTON_X11
+ bool "X11 compositor"
+ depends on BR2_PACKAGE_XORG7
+ select BR2_PACKAGE_LIBXCB
+ select BR2_PACKAGE_XLIB_LIBX11
+ select BR2_PACKAGE_WESTON_HAS_COMPOSITOR
+
+comment "X11 compositor needs X.org enabled"
+ depends on !BR2_PACKAGE_XORG7
+
+config BR2_PACKAGE_WESTON_XWAYLAND
+ bool "XWayland support"
+ depends on BR2_PACKAGE_XORG7
+ depends on BR2_PACKAGE_LIBEPOXY
+ select BR2_PACKAGE_CAIRO
+ select BR2_PACKAGE_LIBXCB
+ select BR2_PACKAGE_XLIB_LIBX11
+ select BR2_PACKAGE_XLIB_LIBXCURSOR
+
+comment "XWayland support needs libepoxy and X.org enabled"
+ depends on !BR2_PACKAGE_XORG7 || !BR2_PACKAGE_LIBEPOXY
+
endif
diff --git a/package/weston/weston.hash b/package/weston/weston.hash
index ed174e6d56..4f23511d0b 100644
--- a/package/weston/weston.hash
+++ b/package/weston/weston.hash
@@ -1,2 +1,2 @@
-# From https://lists.freedesktop.org/archives/wayland-devel/2016-February/027039.html
-sha256 e0b2004d00d8293ddf7903ca283c1746afa9ccb5919ab50fd04397ff472aa5c1 weston-1.10.0.tar.xz
+# From https://lists.freedesktop.org/archives/wayland-devel/2016-June/029164.html
+sha256 05e086e9f186a06843b9f7a5e1abf19347b1a6e4be26d7e74927abc17b6b7125 weston-1.11.0.tar.xz
diff --git a/package/weston/weston.mk b/package/weston/weston.mk
index 63c43a3231..69026580fd 100644
--- a/package/weston/weston.mk
+++ b/package/weston/weston.mk
@@ -4,7 +4,7 @@
#
################################################################################
-WESTON_VERSION = 1.10.0
+WESTON_VERSION = 1.11.0
WESTON_SITE = http://wayland.freedesktop.org/releases
WESTON_SOURCE = weston-$(WESTON_VERSION).tar.xz
WESTON_LICENSE = MIT
@@ -18,9 +18,6 @@ WESTON_DEPENDENCIES = host-pkgconf wayland wayland-protocols \
WESTON_CONF_OPTS = \
--with-dtddir=$(STAGING_DIR)/usr/share/wayland \
- --disable-xwayland \
- --disable-x11-compositor \
- --disable-wayland-compositor \
--disable-headless-compositor \
--disable-colord \
--disable-setuid-install
@@ -103,6 +100,22 @@ else
WESTON_CONF_OPTS += --disable-rpi-compositor
endif # BR2_PACKAGE_WESTON_RPI
+ifeq ($(BR2_PACKAGE_WESTON_X11),y)
+WESTON_CONF_OPTS += \
+ --enable-x11-compositor \
+ WESTON_NATIVE_BACKEND=x11-backend.so
+WESTON_DEPENDENCIES += libxcb xlib_libX11
+else
+WESTON_CONF_OPTS += --disable-x11-compositor
+endif
+
+ifeq ($(BR2_PACKAGE_WESTON_XWAYLAND),y)
+WESTON_CONF_OPTS += --enable-xwayland
+WESTON_DEPENDENCIES += cairo libepoxy libxcb xlib_libX11 xlib_libXcursor
+else
+WESTON_CONF_OPTS += --disable-xwayland
+endif
+
ifeq ($(BR2_PACKAGE_LIBVA),y)
WESTON_CONF_OPTS += --enable-vaapi-recorder
WESTON_DEPENDENIES += libva
diff --git a/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk b/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk
index dcf751ccfd..771ec18ce5 100644
--- a/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk
+++ b/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga.mk
@@ -12,4 +12,8 @@ XDRIVER_XF86_VIDEO_MGA_LICENSE_FILES = COPYING
XDRIVER_XF86_VIDEO_MGA_AUTORECONF = YES
XDRIVER_XF86_VIDEO_MGA_DEPENDENCIES = xserver_xorg-server libdrm xproto_fontsproto xproto_glproto xproto_randrproto xproto_renderproto xproto_videoproto xproto_xextproto xproto_xf86driproto xproto_xproto
+ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),)
+XDRIVER_XF86_VIDEO_MGA_CONF_OPTS = --disable-dri
+endif
+
$(eval $(autotools-package))
diff --git a/package/xtables-addons/xtables-addons.hash b/package/xtables-addons/xtables-addons.hash
index be8cb6e4cf..323393d03f 100644
--- a/package/xtables-addons/xtables-addons.hash
+++ b/package/xtables-addons/xtables-addons.hash
@@ -1,4 +1,4 @@
-# From http://sourceforge.net/projects/xtables-addons/files/Xtables-addons/2.10/
-sha1 bc6dcb1eb1328931189f6e73a1a02ef4cc51bc44 xtables-addons-2.10.tar.xz
+# From https://sourceforge.net/projects/xtables-addons/files/Xtables-addons/2.11/
+sha1 356abeb8ae24da67178f1612bc0fcbfd83a5e7e7 xtables-addons-2.11.tar.xz
# Calculated based on the hash above
-sha256 2a2d92ae924437d757f55514502c6ef3aeccc6106f729c702efe703ad30f4007 xtables-addons-2.10.tar.xz
+sha256 f14f8953a9d3a70157a82883886ff6ec866c61dbea1585edb421478107279921 xtables-addons-2.11.tar.xz
diff --git a/package/xtables-addons/xtables-addons.mk b/package/xtables-addons/xtables-addons.mk
index b4e5992a7a..7fc7312a22 100644
--- a/package/xtables-addons/xtables-addons.mk
+++ b/package/xtables-addons/xtables-addons.mk
@@ -4,9 +4,9 @@
#
################################################################################
-XTABLES_ADDONS_VERSION = 2.10
+XTABLES_ADDONS_VERSION = 2.11
XTABLES_ADDONS_SOURCE = xtables-addons-$(XTABLES_ADDONS_VERSION).tar.xz
-XTABLES_ADDONS_SITE = http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons
+XTABLES_ADDONS_SITE = http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons/$(XTABLES_ADDONS_VERSION)
XTABLES_ADDONS_DEPENDENCIES = iptables linux host-pkgconf
XTABLES_ADDONS_LICENSE = GPLv2+
XTABLES_ADDONS_LICENSE_FILES = LICENSE
diff --git a/package/yaml-cpp/Config.in b/package/yaml-cpp/Config.in
index 3cfb955a5f..c1ba410a6b 100644
--- a/package/yaml-cpp/Config.in
+++ b/package/yaml-cpp/Config.in
@@ -2,7 +2,6 @@ config BR2_PACKAGE_YAML_CPP
bool "yaml-cpp"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS # boost
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
depends on BR2_USE_WCHAR # boost
select BR2_PACKAGE_BOOST
help
@@ -12,5 +11,4 @@ config BR2_PACKAGE_YAML_CPP
https://code.google.com/p/yaml-cpp/
comment "yaml-cpp 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/zmqpp/Config.in b/package/zmqpp/Config.in
index 602425fc88..67e89b379e 100644
--- a/package/zmqpp/Config.in
+++ b/package/zmqpp/Config.in
@@ -24,7 +24,6 @@ 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
select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS
help
@@ -32,7 +31,6 @@ config BR2_PACKAGE_ZMQPP_CLIENT
used to listen or send to zeromq sockets.
comment "zmqpp client needs a toolchain w/ dynamic library, threads"
- depends on BR2_PACKAGE_BOOST_ARCH_SUPPORTS
depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS
endif
diff --git a/support/scripts/hardlink-or-copy b/support/scripts/hardlink-or-copy
new file mode 100755
index 0000000000..b046bdf059
--- /dev/null
+++ b/support/scripts/hardlink-or-copy
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+# Try to hardlink a file into a directory, fallback to copy on failure.
+#
+# Hardlink-or-copy the source file in the first argument into the
+# destination directory in the second argument, using the basename in
+# the third argument as basename for the destination file. If the third
+# argument is missing, use the basename of the source file as basename
+# for the destination file.
+#
+# In either case, remove the destination prior to doing the
+# hardlink-or-copy.
+#
+# Note that this is NOT an atomic operation.
+
+set -e
+
+main() {
+ local src_file="${1}"
+ local dst_dir="${2}"
+ local dst_file="${3}"
+
+ if [ -n "${dst_file}" ]; then
+ dst_file="${dst_dir}/${dst_file}"
+ else
+ dst_file="${dst_dir}/${src_file##*/}"
+ fi
+
+ mkdir -p "${dst_dir}"
+ rm -f "${dst_file}"
+ ln -f "${src_file}" "${dst_file}" 2>/dev/null \
+ || cp -f "${src_file}" "${dst_file}"
+}
+
+main "${@}"
diff --git a/support/scripts/pycompile.py b/support/scripts/pycompile.py
new file mode 100644
index 0000000000..fde711a42a
--- /dev/null
+++ b/support/scripts/pycompile.py
@@ -0,0 +1,24 @@
+#!/usr/bin/env python
+
+# Wrapper for python2 and python3 around compileall to raise exception
+# when a python byte code generation failed.
+#
+# Inspired from:
+# http://stackoverflow.com/questions/615632/how-to-detect-errors-from-compileall-compile-dir
+
+from __future__ import print_function
+import sys
+import py_compile
+import compileall
+
+class ReportProblem:
+ def __nonzero__(self):
+ type, value, traceback = sys.exc_info()
+ if type is not None and issubclass(type, py_compile.PyCompileError):
+ print("Cannot compile %s" %value.file)
+ raise value
+ return 1
+
+report_problem = ReportProblem()
+
+compileall.compile_dir(sys.argv[1], quiet=report_problem)
diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in
index 0c4080111a..2b0ebc170b 100644
--- a/toolchain/toolchain-buildroot/Config.in
+++ b/toolchain/toolchain-buildroot/Config.in
@@ -42,26 +42,6 @@ config BR2_TOOLCHAIN_BUILDROOT_UCLIBC
http://uclibc.org
-config BR2_TOOLCHAIN_BUILDROOT_EGLIBC
- bool "eglibc"
- depends on BR2_arm || BR2_armeb || BR2_aarch64 || \
- BR2_aarch64_be || BR2_i386 || BR2_mips || \
- BR2_mipsel || BR2_mips64 || BR2_mips64el || \
- BR2_powerpc || BR2_sh || BR2_sh64 || \
- BR2_sparc || BR2_x86_64 || BR2_microblaze || \
- BR2_powerpc64
- depends on BR2_USE_MMU
- depends on !BR2_STATIC_LIBS
- depends on BR2_DEPRECATED_SINCE_2015_08
- select BR2_TOOLCHAIN_USES_GLIBC
- # our eglibc.mk enables RPC support
- select BR2_TOOLCHAIN_HAS_NATIVE_RPC
- help
- This option selects eglibc as the C library for the
- cross-compilation toolchain.
-
- http://eglibc.org
-
config BR2_TOOLCHAIN_BUILDROOT_GLIBC
bool "glibc"
depends on BR2_arm || BR2_armeb || BR2_aarch64 || \
@@ -87,7 +67,7 @@ comment "(e)glibc only available with shared lib support"
depends on BR2_STATIC_LIBS
config BR2_TOOLCHAIN_BUILDROOT_MUSL
- bool "musl (experimental)"
+ bool "musl"
depends on BR2_aarch64 || BR2_arm || BR2_armeb || BR2_i386 || \
BR2_microblaze || BR2_mips || BR2_mipsel || BR2_powerpc || \
BR2_sh || BR2_x86_64
@@ -107,9 +87,6 @@ endchoice
config BR2_TOOLCHAIN_BUILDROOT_LIBC
string
default "uclibc" if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
- # Both glibc and eglibc are handled by the package called
- # 'glibc'
- default "glibc" if BR2_TOOLCHAIN_BUILDROOT_EGLIBC
default "glibc" if BR2_TOOLCHAIN_BUILDROOT_GLIBC
default "musl" if BR2_TOOLCHAIN_BUILDROOT_MUSL
diff --git a/toolchain/toolchain-common.in b/toolchain/toolchain-common.in
index be02484a76..1fe28a9e55 100644
--- a/toolchain/toolchain-common.in
+++ b/toolchain/toolchain-common.in
@@ -241,10 +241,15 @@ config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
bool
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
+config BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6
+ bool
+ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
+
# 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.6" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6
default "4.5" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
default "4.4" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
default "4.3" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3
diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in
index 8a8195d57e..7aee57f8bc 100644
--- a/toolchain/toolchain-external/Config.in
+++ b/toolchain/toolchain-external/Config.in
@@ -411,7 +411,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS
Disable 'Use soft-float'
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
- bool "Sourcery CodeBench Nios-II 2015.11"
+ bool "Sourcery CodeBench Nios-II 2016.05"
depends on BR2_nios2
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
depends on !BR2_STATIC_LIBS
@@ -420,13 +420,13 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
select BR2_INSTALL_LIBSTDCPP
select BR2_HOSTARCH_NEEDS_IA32_LIBS
- select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2
+ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
select BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # based-on binutils-2.25.1
help
Sourcery CodeBench toolchain for the Nios-II architecture,
- from Mentor Graphics. It uses gcc 5.2, binutils 2.25.51,
- glibc 2.22, gdb 7.10.50 and kernel headers 4.2.
+ from Mentor Graphics. It uses gcc 5.3, binutils 2.25.51,
+ glibc 2.23, gdb 7.10.50 and kernel headers 4.4.
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH
bool "Sourcery CodeBench SH 2012.09"
@@ -577,7 +577,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64
3.16.2.
config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS
- bool "Musl 1.1.12 toolchain (experimental)"
+ bool "Musl 1.1.12 toolchain"
depends on (BR2_arm && BR2_ARM_EABI) || \
(BR2_arm && BR2_ARM_EABIHF && !BR2_ARM_CPU_ARMV4) || \
(BR2_armeb && BR2_ARM_EABI) || BR2_i386 || \
@@ -785,6 +785,10 @@ choice
m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF
p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_6
+ bool "4.6.x"
+ select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6
+
config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_5
bool "4.5.x"
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
@@ -926,7 +930,7 @@ comment "(e)glibc only available with shared lib support"
depends on BR2_STATIC_LIBS
config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL
- bool "musl (experimental)"
+ bool "musl"
select BR2_TOOLCHAIN_EXTERNAL_MUSL
help
Select this option if your external toolchain uses the
diff --git a/toolchain/toolchain-external/toolchain-external.hash b/toolchain/toolchain-external/toolchain-external.hash
index 9be3c7a071..fe45f19f75 100644
--- a/toolchain/toolchain-external/toolchain-external.hash
+++ b/toolchain/toolchain-external/toolchain-external.hash
@@ -10,8 +10,8 @@ sha256 c65b1b4b918d5185349d62a3b7bf43b4b21e1175c52598ec047ca56b3f11d857 blackfi
sha256 39ee0e789034334ecc89af94e838e3a4815400ac5ff980f808f466b04778532e arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
sha256 e16a5b1e41d7ff1e74161f9405182001bc8d1360d89564e73911032e6966cc0d arm-2014.05-29-arm-none-linux-gnueabi.src.tar.bz2
# NiosII
-sha256 e43899fd950e5d06e90c2eb01527c626240b6b4a603cbbeb532fad9fb8ea58c3 sourceryg++-2015.11-130-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2
-sha256 c412375ba3f93bafc9225de22366fa5b3f4d073ef856cf19595237ddb0815e6d sourceryg++-2015.11-130-nios2-linux-gnu.src.tar.bz2
+sha256 750639290744adda931c81fa2cd2ffc2bde972488047824dcfaa53c42562191d sourceryg++-2016.05-10-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2
+sha256 3dc1c2685c0472059547dd7becb5dc991541b8176af39fa7aa5f601d38b9879a sourceryg++-2016.05-10-nios2-linux-gnu.src.tar.bz2
# SuperH
sha256 59d6766fde244931aa52db01433d5acd051998762a931121c5fc109536a1a802 renesas-2012.09-61-sh-linux-gnu-i686-pc-linux-gnu.tar.bz2
sha256 e2e58c10e52395d5d35157e35f85233f713c6f9223a652dfc56194cfd2eed004 renesas-2012.09-61-sh-linux-gnu.src.tar.bz2
diff --git a/toolchain/toolchain-external/toolchain-external.mk b/toolchain/toolchain-external/toolchain-external.mk
index 47b951dfa7..f3443a2392 100644
--- a/toolchain/toolchain-external/toolchain-external.mk
+++ b/toolchain/toolchain-external/toolchain-external.mk
@@ -338,7 +338,7 @@ TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/mips-l
TOOLCHAIN_EXTERNAL_SOURCE = mips-2016.05-8-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++-2015.11-130-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2
+TOOLCHAIN_EXTERNAL_SOURCE = sourceryg++-2016.05-10-nios2-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