diff options
author | Joel Stanley <joel@jms.id.au> | 2019-04-01 10:42:49 +1030 |
---|---|---|
committer | Joel Stanley <joel@jms.id.au> | 2019-04-01 10:43:00 +1030 |
commit | b5542e1abd3d92012a384b3676eceea7248a4569 (patch) | |
tree | a496c29803d874fdb2ea3de1bea3188758e3f94c | |
parent | 4ffa9554af5462c2db90300c7597cb6fa51f2d8f (diff) | |
parent | 863761ff3c6233e6e2ef836c4600590dc0d38197 (diff) | |
download | buildroot-b5542e1abd3d92012a384b3676eceea7248a4569.tar.gz buildroot-b5542e1abd3d92012a384b3676eceea7248a4569.zip |
Merge tag '2019.02.1' into 2019.02-op-build
Signed-off-by: Joel Stanley <joel@jms.id.au>
133 files changed, 3582 insertions, 767 deletions
@@ -1,3 +1,29 @@ +2019.02.1, Released March 29th, 2019 + + Important / security related fixes. + + pkg-generic: Only tweak .la files needing it to ensure they + are not included in subsequent package file lists. + + test-pkg: Generate a basic package config if none is + specified. + + Updated/fixed packages: asterisk, avahi, bash, beecrypt, + binutils, busybox, clamav, cups, efl, eigen, fetchmail, file, + flashrom, fltk, gerbera, git, glibc, gnuradio, go, + gst-plugins-bad, intel-gmmlib, jq, kexec, kf5-modemmanager-qt, + leveldb, libcurl, libdrm, libftdi1, libglib2, libiio, libpcap, + libseccomp, libssh2, log4cplus, lvm2, mariadb, mender, + mongodb, mosquitto, musl, nodejs, ntp, openjpeg, owfs, php, + pure-ftpd, putty, python-aiojobs, qt5webkit, rdesktop, samba4, + sunxi-tools, supertux, swupdate, tpm2-abrmd, tpm2-tss, + wavemon, wireshark, vsftpd, xapp_xdm, xen, + xdriver_xf86-video-fbdev, xlib_libXdmcp + + Issues resolved (http://bugs.uclibc.org): + + #11716: Typo on website, saying latest release is 2018.2.11 + 2019.02, released March 4th, 2019 Minor fixes. diff --git a/Config.in.legacy b/Config.in.legacy index 25b48fba82..7e8b515088 100644 --- a/Config.in.legacy +++ b/Config.in.legacy @@ -146,6 +146,12 @@ endif comment "Legacy options removed in 2019.02" +config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_APEXSINK + bool "gst-plugins-bad apexsink option removed" + select BR2_LEGACY + help + The gst-plugins-bad apexsink option was removed. + config BR2_PACKAGE_QT bool "qt package removed" select BR2_LEGACY @@ -92,9 +92,9 @@ all: .PHONY: all # Set and export the version string -export BR2_VERSION := 2019.02 +export BR2_VERSION := 2019.02.1 # Actual time the release is cut (for reproducible builds) -BR2_VERSION_EPOCH = 1551735000 +BR2_VERSION_EPOCH = 1553900000 # Save running make version since it's clobbered by the make package RUNNING_MAKE_VERSION := $(MAKE_VERSION) @@ -1173,7 +1173,7 @@ release: OUT = buildroot-$(BR2_VERSION) release: git archive --format=tar --prefix=$(OUT)/ HEAD > $(OUT).tar $(MAKE) O=$(OUT) manual-html manual-text manual-pdf - $(MAKE) O=$(OUT) manual-clean + $(MAKE) O=$(OUT) clean tar rf $(OUT).tar $(OUT) gzip -9 -c < $(OUT).tar > $(OUT).tar.gz bzip2 -9 -c < $(OUT).tar > $(OUT).tar.bz2 diff --git a/docs/website/download.html b/docs/website/download.html index 3fc6c2897f..a3d69cdcd8 100644 --- a/docs/website/download.html +++ b/docs/website/download.html @@ -8,7 +8,7 @@ <div class="panel-heading">Download</div> <div class="panel-body"> - <h3 style="text-align: center;">Latest stable / long term support release: <b>2018.02.11</b></h3> + <h3 style="text-align: center;">Latest stable / long term support release: <b>2019.02</b></h3> <div class="row mt centered"> <div class="col-sm-6"> diff --git a/linux/Config.in b/linux/Config.in index 7ea56093c4..ae57f084fb 100644 --- a/linux/Config.in +++ b/linux/Config.in @@ -255,7 +255,7 @@ config BR2_LINUX_KERNEL_SIMPLEIMAGE config BR2_LINUX_KERNEL_IMAGE bool "Image" - depends on BR2_aarch64 + depends on BR2_aarch64 || BR2_riscv config BR2_LINUX_KERNEL_LINUX_BIN bool "linux.bin" diff --git a/linux/linux.hash b/linux/linux.hash index 5f71e377f4..0ec56a5689 100644 --- a/linux/linux.hash +++ b/linux/linux.hash @@ -1,8 +1,8 @@ # From https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc sha256 43bfea3a6b24b4e5f63190409a199bee8cb93dbea01c52ad7f017078ebdf7c9b linux-5.0.2.tar.xz # From https://www.kernel.org/pub/linux/kernel/v4.x/sha256sums.asc -sha256 1cf544308195250805e0731c716691bea4c1ed29e03e6f9ae5be6dc16785a504 linux-4.20.12.tar.xz -sha256 7ec71d90d6e96e6f741676d157ac06f30c75be4eaf1649143a3c8b7d4f919731 linux-4.19.25.tar.xz -sha256 7aa43e34e4c9e5965da29cef5ae196e06006f8c0d1d65fd755a2f197f0796a11 linux-4.14.103.tar.xz -sha256 c09af067af62d299f5e33c279968de58c88fb7c59bd05e8f3bb460f611f60515 linux-4.9.160.tar.xz -sha256 27da5401aa691762f3361c143f453877f499c02ea6c9c743b09538cb1af1c75d linux-4.4.176.tar.xz +sha256 d011245629b980d4c15febf080b54804aaf215167b514a3577feddb2495f8a3e linux-4.20.17.tar.xz +sha256 a326d1154324aee3dd9a25ac44bc4ce7242ded097d4ca2e4c131e6f32918e7d9 linux-4.19.32.tar.xz +sha256 3764f165f779568745f1468d8f7e1db65d94eae9cd8d1350f4fe003a0fd88ee0 linux-4.14.109.tar.xz +sha256 b8f87c087cbc35d35d55cae1c0c7e47c8d20226d241697bf5d4c0c524439baeb linux-4.9.166.tar.xz +sha256 521721c47f580f7adb4a66c9ee9f5e2fda4b9a0f86d4d7f3e888ba0b53edc0bf linux-4.4.177.tar.xz diff --git a/package/asterisk/asterisk.hash b/package/asterisk/asterisk.hash index e126372f57..d8cc56695c 100644 --- a/package/asterisk/asterisk.hash +++ b/package/asterisk/asterisk.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 d74ba84ad92cd710eb071940e6057ef644d71864431d91aaafe0717a8939afc3 asterisk-16.1.1.tar.gz +sha256 c022e9d5410ed94ab1aa51ba1e2a8b196f0dfa15bcd0bd545d06efee4c786578 asterisk-16.2.1.tar.gz # sha1 from: http://downloads.asterisk.org/pub/telephony/sounds/releases # sha256 locally computed diff --git a/package/asterisk/asterisk.mk b/package/asterisk/asterisk.mk index 3b4d97a258..65f8d3fdf9 100644 --- a/package/asterisk/asterisk.mk +++ b/package/asterisk/asterisk.mk @@ -4,7 +4,7 @@ # ################################################################################ -ASTERISK_VERSION = 16.1.1 +ASTERISK_VERSION = 16.2.1 # Use the github mirror: it's an official mirror maintained by Digium, and # provides tarballs, which the main Asterisk git tree (behind Gerrit) does not. ASTERISK_SITE = $(call github,asterisk,asterisk,$(ASTERISK_VERSION)) diff --git a/package/avahi/0001-Drop-legacy-unicast-queries-from-address-not-on-loca.patch b/package/avahi/0001-Drop-legacy-unicast-queries-from-address-not-on-loca.patch new file mode 100644 index 0000000000..0e8408c830 --- /dev/null +++ b/package/avahi/0001-Drop-legacy-unicast-queries-from-address-not-on-loca.patch @@ -0,0 +1,48 @@ +From e111def44a7df4624a4aa3f85fe98054bffb6b4f Mon Sep 17 00:00:00 2001 +From: Trent Lloyd <trent@lloyd.id.au> +Date: Sat, 22 Dec 2018 09:06:07 +0800 +Subject: [PATCH] Drop legacy unicast queries from address not on local link + +When handling legacy unicast queries, ensure that the source IP is +inside a subnet on the local link, otherwise drop the packet. + +Fixes #145 +Fixes #203 +CVE-2017-6519 +CVE-2018-100084 + +Backported from: e111def44a7df4624a4aa3f85fe98054bffb6b4f +Signed-off-by: Artem Panfilov <panfilov.artyom@gmail.com> +--- + avahi-core/server.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/avahi-core/server.c b/avahi-core/server.c +index a2cb19a8..a2580e38 100644 +--- a/avahi-core/server.c ++++ b/avahi-core/server.c +@@ -930,6 +930,7 @@ static void dispatch_packet(AvahiServer *s, AvahiDnsPacket *p, const AvahiAddres + + if (avahi_dns_packet_is_query(p)) { + int legacy_unicast = 0; ++ char t[AVAHI_ADDRESS_STR_MAX]; + + /* For queries EDNS0 might allow ARCOUNT != 0. We ignore the + * AR section completely here, so far. Until the day we add +@@ -947,6 +948,13 @@ static void dispatch_packet(AvahiServer *s, AvahiDnsPacket *p, const AvahiAddres + legacy_unicast = 1; + } + ++ if (!is_mdns_mcast_address(dst_address) && ++ !avahi_interface_address_on_link(i, src_address)) { ++ ++ avahi_log_debug("Received non-local unicast query from host %s on interface '%s.%i'.", avahi_address_snprint(t, sizeof(t), src_address), i->hardware->name, i->protocol); ++ return; ++ } ++ + if (legacy_unicast) + reflect_legacy_unicast_query_packet(s, p, i, src_address, port); + +-- +2.19.1 + diff --git a/package/bash/0001-bash44-019.patch b/package/bash/0001-bash44-019.patch new file mode 100644 index 0000000000..b3d2f331b6 --- /dev/null +++ b/package/bash/0001-bash44-019.patch @@ -0,0 +1,54 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-019 + +Signed-off-by: Peter Korsgaard <peter@korsgaard.com> + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-019 + +Bug-Reported-by: Kieran Grant <kieran.thehacker.grant@gmail.com> +Bug-Reference-ID: <ec9071ae-efb1-9e09-5d03-e905daf2835c@gmail.com> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2018-02/msg00002.html + +Bug-Description: + +With certain values for PS1, especially those that wrap onto three or more +lines, readline will miscalculate the number of invisible characters, +leading to crashes and core dumps. + +Patch (apply with `patch -p0'): + +*** bash-4.4.18/lib/readline/display.c 2016-07-28 14:49:33.000000000 -0400 +--- b/lib/readline/display.c 2018-02-03 19:19:35.000000000 -0500 +*************** +*** 772,776 **** + wadjust = (newlines == 0) + ? prompt_invis_chars_first_line +! : ((newlines == prompt_lines_estimate) ? wrap_offset : prompt_invis_chars_first_line); + + /* fix from Darin Johnson <darin@acuson.com> for prompt string with +--- b/788,794 ---- + wadjust = (newlines == 0) + ? prompt_invis_chars_first_line +! : ((newlines == prompt_lines_estimate) +! ? (wrap_offset - prompt_invis_chars_first_line) +! : 0); + + /* fix from Darin Johnson <darin@acuson.com> for prompt string with +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 18 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 19 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0002-bash44-020.patch b/package/bash/0002-bash44-020.patch new file mode 100644 index 0000000000..20f3abb586 --- /dev/null +++ b/package/bash/0002-bash44-020.patch @@ -0,0 +1,181 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-020 + +Signed-off-by: Peter Korsgaard <peter@korsgaard.com> + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-020 + +Bug-Reported-by: Graham Northup <northug@clarkson.edu> +Bug-Reference-ID: <537530c3-61f0-349b-9de6-fa4e2487f428@clarkson.edu> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2017-02/msg00025.html + +Bug-Description: + +In circumstances involving long-running scripts that create and reap many +processes, it is possible for the hash table bash uses to store exit +statuses from asynchronous processes to develop loops. This patch fixes +the loop causes and adds code to detect any future loops. + +Patch (apply with `patch -p0'): + +*** bash-4.4-patched/jobs.c 2016-11-11 13:42:55.000000000 -0500 +--- b/jobs.c 2017-02-22 15:16:28.000000000 -0500 +*************** +*** 813,818 **** + struct pidstat *ps; + +! bucket = pshash_getbucket (pid); +! psi = bgp_getindex (); + ps = &bgpids.storage[psi]; + +--- b/796,815 ---- + struct pidstat *ps; + +! /* bucket == existing chain of pids hashing to same value +! psi = where were going to put this pid/status */ +! +! bucket = pshash_getbucket (pid); /* index into pidstat_table */ +! psi = bgp_getindex (); /* bgpids.head, index into storage */ +! +! /* XXX - what if psi == *bucket? */ +! if (psi == *bucket) +! { +! #ifdef DEBUG +! internal_warning ("hashed pid %d (pid %d) collides with bgpids.head, skipping", psi, pid); +! #endif +! bgpids.storage[psi].pid = NO_PID; /* make sure */ +! psi = bgp_getindex (); /* skip to next one */ +! } +! + ps = &bgpids.storage[psi]; + +*************** +*** 842,845 **** +--- b/839,843 ---- + { + struct pidstat *ps; ++ ps_index_t *bucket; + + ps = &bgpids.storage[psi]; +*************** +*** 847,856 **** + return; + +! if (ps->bucket_next != NO_PID) + bgpids.storage[ps->bucket_next].bucket_prev = ps->bucket_prev; +! if (ps->bucket_prev != NO_PID) + bgpids.storage[ps->bucket_prev].bucket_next = ps->bucket_next; + else +! *(pshash_getbucket (ps->pid)) = ps->bucket_next; + } + +--- b/845,861 ---- + return; + +! if (ps->bucket_next != NO_PIDSTAT) + bgpids.storage[ps->bucket_next].bucket_prev = ps->bucket_prev; +! if (ps->bucket_prev != NO_PIDSTAT) + bgpids.storage[ps->bucket_prev].bucket_next = ps->bucket_next; + else +! { +! bucket = pshash_getbucket (ps->pid); +! *bucket = ps->bucket_next; /* deleting chain head in hash table */ +! } +! +! /* clear out this cell, just in case */ +! ps->pid = NO_PID; +! ps->bucket_next = ps->bucket_prev = NO_PIDSTAT; + } + +*************** +*** 859,863 **** + pid_t pid; + { +! ps_index_t psi; + + if (bgpids.storage == 0 || bgpids.nalloc == 0 || bgpids.npid == 0) +--- b/864,868 ---- + pid_t pid; + { +! ps_index_t psi, orig_psi; + + if (bgpids.storage == 0 || bgpids.nalloc == 0 || bgpids.npid == 0) +*************** +*** 865,871 **** + + /* Search chain using hash to find bucket in pidstat_table */ +! for (psi = *(pshash_getbucket (pid)); psi != NO_PIDSTAT; psi = bgpids.storage[psi].bucket_next) +! if (bgpids.storage[psi].pid == pid) +! break; + + if (psi == NO_PIDSTAT) +--- b/870,883 ---- + + /* Search chain using hash to find bucket in pidstat_table */ +! for (orig_psi = psi = *(pshash_getbucket (pid)); psi != NO_PIDSTAT; psi = bgpids.storage[psi].bucket_next) +! { +! if (bgpids.storage[psi].pid == pid) +! break; +! if (orig_psi == bgpids.storage[psi].bucket_next) /* catch reported bug */ +! { +! internal_warning ("bgp_delete: LOOP: psi (%d) == storage[psi].bucket_next", psi); +! return 0; +! } +! } + + if (psi == NO_PIDSTAT) +*************** +*** 905,909 **** + pid_t pid; + { +! ps_index_t psi; + + if (bgpids.storage == 0 || bgpids.nalloc == 0 || bgpids.npid == 0) +--- b/917,921 ---- + pid_t pid; + { +! ps_index_t psi, orig_psi; + + if (bgpids.storage == 0 || bgpids.nalloc == 0 || bgpids.npid == 0) +*************** +*** 911,917 **** + + /* Search chain using hash to find bucket in pidstat_table */ +! for (psi = *(pshash_getbucket (pid)); psi != NO_PIDSTAT; psi = bgpids.storage[psi].bucket_next) +! if (bgpids.storage[psi].pid == pid) +! return (bgpids.storage[psi].status); + + return -1; +--- b/923,936 ---- + + /* Search chain using hash to find bucket in pidstat_table */ +! for (orig_psi = psi = *(pshash_getbucket (pid)); psi != NO_PIDSTAT; psi = bgpids.storage[psi].bucket_next) +! { +! if (bgpids.storage[psi].pid == pid) +! return (bgpids.storage[psi].status); +! if (orig_psi == bgpids.storage[psi].bucket_next) /* catch reported bug */ +! { +! internal_warning ("bgp_search: LOOP: psi (%d) == storage[psi].bucket_next", psi); +! return -1; +! } +! } + + return -1; +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 19 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 20 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0003-bash44-021.patch b/package/bash/0003-bash44-021.patch new file mode 100644 index 0000000000..52f3b75eac --- /dev/null +++ b/package/bash/0003-bash44-021.patch @@ -0,0 +1,61 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-021 + +Signed-off-by: Peter Korsgaard <peter@korsgaard.com> + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-021 + +Bug-Reported-by: werner@suse.de +Bug-Reference-ID: <201803281402.w2SE2VOa000476@noether.suse.de> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2018-03/msg00196.html + +Bug-Description: + +A SIGINT received inside a SIGINT trap handler can possibly cause the +shell to loop. + +Patch (apply with `patch -p0'): + +*** bash-20180329/jobs.c 2018-02-11 18:07:22.000000000 -0500 +--- b/jobs.c 2018-04-02 14:24:21.000000000 -0400 +*************** +*** 2690,2694 **** + if (job_control == 0 || (subshell_environment&SUBSHELL_COMSUB)) + { +! old_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler); + waiting_for_child = 0; + if (old_sigint_handler == SIG_IGN) +--- b/2690,2704 ---- + if (job_control == 0 || (subshell_environment&SUBSHELL_COMSUB)) + { +! SigHandler *temp_sigint_handler; +! +! temp_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler); +! if (temp_sigint_handler == wait_sigint_handler) +! { +! #if defined (DEBUG) +! internal_warning ("wait_for: recursively setting old_sigint_handler to wait_sigint_handler: running_trap = %d", running_trap); +! #endif +! } +! else +! old_sigint_handler = temp_sigint_handler; + waiting_for_child = 0; + if (old_sigint_handler == SIG_IGN) +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 20 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 21 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0004-bash44-022.patch b/package/bash/0004-bash44-022.patch new file mode 100644 index 0000000000..0db270a17e --- /dev/null +++ b/package/bash/0004-bash44-022.patch @@ -0,0 +1,65 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-022 + +Signed-off-by: Peter Korsgaard <peter@korsgaard.com> + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-022 + +Bug-Reported-by: Nuzhna Pomoshch <nuzhna_pomoshch@yahoo.com> +Bug-Reference-ID: <1317167476.1492079.1495999776464@mail.yahoo.com> +Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-readline/2017-05/msg00005.html + +Bug-Description: + +There are cases where a failing readline command (e.g., delete-char at the end +of a line) can cause a multi-character key sequence to `back up' and attempt +to re-read some of the characters in the sequence. + +Patch (apply with `patch -p0'): + +*** bash-4.4-patched/lib/readline/readline.c 2016-04-20 15:53:52.000000000 -0400 +--- b/lib/readline/readline.c 2018-05-26 17:19:00.000000000 -0400 +*************** +*** 1058,1062 **** + r = _rl_dispatch (ANYOTHERKEY, m); + } +! else if (r && map[ANYOTHERKEY].function) + { + /* We didn't match (r is probably -1), so return something to +--- b/1056,1060 ---- + r = _rl_dispatch (ANYOTHERKEY, m); + } +! else if (r < 0 && map[ANYOTHERKEY].function) + { + /* We didn't match (r is probably -1), so return something to +*************** +*** 1070,1074 **** + return -2; + } +! else if (r && got_subseq) + { + /* OK, back up the chain. */ +--- b/1068,1072 ---- + return -2; + } +! else if (r < 0 && got_subseq) /* XXX */ + { + /* OK, back up the chain. */ +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 21 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 22 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/bash/0005-bash44-023.patch b/package/bash/0005-bash44-023.patch new file mode 100644 index 0000000000..05b18902a5 --- /dev/null +++ b/package/bash/0005-bash44-023.patch @@ -0,0 +1,56 @@ +From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-023 + +Signed-off-by: Peter Korsgaard <peter@korsgaard.com> + + BASH PATCH REPORT + ================= + +Bash-Release: 4.4 +Patch-ID: bash44-023 + +Bug-Reported-by: Martijn Dekker <martijn@inlv.org> +Bug-Reference-ID: <5326d6b9-2625-1d32-3e6e-ad1d15462c09@inlv.org> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-11/msg00041.html + +Bug-Description: + +When sourcing a file from an interactive shell, setting the SIGINT handler +to the default and typing ^C will cause the shell to exit. + +Patch (apply with `patch -p0'): + +*** bash-4.4-patched/builtins/trap.def 2016-01-25 13:32:38.000000000 -0500 +--- b/builtins/trap.def 2016-11-06 12:04:35.000000000 -0500 +*************** +*** 99,102 **** +--- b/99,103 ---- + + extern int posixly_correct, subshell_environment; ++ extern int sourcelevel, running_trap; + + int +*************** +*** 213,216 **** +--- b/214,220 ---- + if (interactive) + set_signal_handler (SIGINT, sigint_sighandler); ++ /* special cases for interactive == 0 */ ++ else if (interactive_shell && (sourcelevel||running_trap)) ++ set_signal_handler (SIGINT, sigint_sighandler); + else + set_signal_handler (SIGINT, termsig_sighandler); +*** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 +--- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 +*************** +*** 26,30 **** + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 22 + + #endif /* _PATCHLEVEL_H_ */ +--- b/26,30 ---- + looks for to find the patch level (for the sccs version string). */ + +! #define PATCHLEVEL 23 + + #endif /* _PATCHLEVEL_H_ */ diff --git a/package/beecrypt/0003-don-t-check-for-cplusplus-compiler.patch b/package/beecrypt/0003-don-t-check-for-cplusplus-compiler.patch new file mode 100644 index 0000000000..32f167996f --- /dev/null +++ b/package/beecrypt/0003-don-t-check-for-cplusplus-compiler.patch @@ -0,0 +1,27 @@ +configure.ac: don't check for C++ compiler + +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> + +diff -durN beecrypt-4.2.1-orig/configure.ac beecrypt-4.2.1/configure.ac +--- beecrypt-4.2.1-orig/configure.ac 2019-03-01 19:58:16.516117640 +0100 ++++ beecrypt-4.2.1/configure.ac 2019-03-01 21:10:17.707391803 +0100 +@@ -119,9 +119,6 @@ + + # Checks for C compiler and preprocessor + AC_PROG_CC +-AC_PROG_CPP +-AC_PROG_CXX +-AC_PROG_CXXCPP + AM_PROG_AS + AC_PROG_LD + AC_PROG_LN_S +@@ -133,9 +130,6 @@ + AC_LANG_PUSH(C) + AC_OPENMP + AC_LANG_POP(C) +-AC_LANG_PUSH(C++) +-AC_OPENMP +-AC_LANG_POP(C++) + + # Checks for compiler characteristics and flags + if test "$ac_enable_expert_mode" = no; then diff --git a/package/binutils/2.31.1/0012-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patch b/package/binutils/2.31.1/0012-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patch new file mode 100644 index 0000000000..8a05af4bb6 --- /dev/null +++ b/package/binutils/2.31.1/0012-x86-Add-a-GNU_PROPERTY_X86_ISA_1_USED-note-if-needed.patch @@ -0,0 +1,568 @@ +From 6737a6b34f4823deb7142f27b4074831a37ac1e1 Mon Sep 17 00:00:00 2001 +From: "H.J. Lu" <hjl.tools@gmail.com> +Date: Fri, 20 Jul 2018 09:18:47 -0700 +Subject: [PATCH] x86: Add a GNU_PROPERTY_X86_ISA_1_USED note if needed + +When -z separate-code, which is enabled by default for Linux/x86, is +used to create executable, ld won't place any data in the code-only +PT_LOAD segment. If there are no data sections placed before the +code-only PT_LOAD segment, the program headers won't be mapped into +any PT_LOAD segment. When the executable tries to access it (based +on the program header address passed in AT_PHDR), it will lead to +segfault. This patch inserts a GNU_PROPERTY_X86_ISA_1_USED note if +there may be no data sections before the text section so that the +first PT_LOAD segment won't be code-only and will contain the program +header. + +Testcases are adjusted to either pass "-z noseparate-code" to ld or +discard the .note.gnu.property section. A Linux/x86 run-time test is +added. + +bfd/ + + PR ld/23428 + * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): If the + separate code program header is needed, make sure that the first + read-only PT_LOAD segment has no code by adding a + GNU_PROPERTY_X86_ISA_1_USED note. + +ld/ + + PR ld/23428 + * testsuite/ld-elf/linux-x86.S: New file. + * testsuite/ld-elf/linux-x86.exp: Likewise. + * testsuite/ld-elf/pr23428.c: Likewise. + * testsuite/ld-elf/sec64k.exp: Pass "-z noseparate-code" to ld + for Linux/x86 targets. + * testsuite/ld-i386/abs-iamcu.d: Likewise. + * testsuite/ld-i386/abs.d: Likewise. + * testsuite/ld-i386/pr12718.d: Likewise. + * testsuite/ld-i386/pr12921.d: Likewise. + * testsuite/ld-x86-64/abs-k1om.d: Likewise. + * testsuite/ld-x86-64/abs-l1om.d: Likewise. + * testsuite/ld-x86-64/abs.d: Likewise. + * testsuite/ld-x86-64/pr12718.d: Likewise. + * testsuite/ld-x86-64/pr12921.d: Likewise. + * testsuite/ld-linkonce/zeroeh.ld: Discard .note.gnu.property + section. + * testsuite/ld-scripts/print-memory-usage.t: Likewise. + * testsuite/ld-scripts/size-2.t: Likewise. + * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Use ld + to create executable if language is "asm". + +(cherry picked from commit 241e64e3b42cd9eba514b8e0ad2ef39a337f10a5) +Signed-off-by: Norbert Lange <nolange79@gmail.com> +--- + bfd/ChangeLog | 8 ++++ + bfd/elfxx-x86.c | 60 +++++++++++++++++++------- + ld/ChangeLog | 24 +++++++++++ + ld/testsuite/ld-elf/linux-x86.S | 63 ++++++++++++++++++++++++++++ + ld/testsuite/ld-elf/linux-x86.exp | 46 ++++++++++++++++++++ + ld/testsuite/ld-elf/pr23428.c | 43 +++++++++++++++++++ + ld/testsuite/ld-elf/sec64k.exp | 2 + + ld/testsuite/ld-i386/abs-iamcu.d | 2 +- + ld/testsuite/ld-i386/abs.d | 2 +- + ld/testsuite/ld-i386/pr12718.d | 2 +- + ld/testsuite/ld-i386/pr12921.d | 2 +- + ld/testsuite/ld-linkonce/zeroeh.ld | 1 + + ld/testsuite/ld-scripts/print-memory-usage.t | 2 + + ld/testsuite/ld-scripts/size-2.t | 1 + + ld/testsuite/ld-x86-64/abs-k1om.d | 2 +- + ld/testsuite/ld-x86-64/abs-l1om.d | 2 +- + ld/testsuite/ld-x86-64/abs.d | 2 +- + ld/testsuite/ld-x86-64/pr12718.d | 2 +- + ld/testsuite/ld-x86-64/pr12921.d | 2 +- + ld/testsuite/lib/ld-lib.exp | 5 ++- + 20 files changed, 248 insertions(+), 25 deletions(-) + create mode 100644 ld/testsuite/ld-elf/linux-x86.S + create mode 100644 ld/testsuite/ld-elf/linux-x86.exp + create mode 100644 ld/testsuite/ld-elf/pr23428.c + +diff --git a/bfd/ChangeLog b/bfd/ChangeLog +index 1c1174a..d3831b7 100644 +--- a/bfd/ChangeLog ++++ b/bfd/ChangeLog +@@ -1,3 +1,11 @@ ++2018-07-23 H.J. Lu <hongjiu.lu@intel.com> ++ ++ PR ld/23428 ++ * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): If the ++ separate code program header is needed, make sure that the first ++ read-only PT_LOAD segment has no code by adding a ++ GNU_PROPERTY_X86_ISA_1_USED note. ++ + 2018-07-18 Nick Clifton <nickc@redhat.com> + + * development.sh: Set to true. +diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c +index a2497aa..2e4ff88 100644 +--- a/bfd/elfxx-x86.c ++++ b/bfd/elfxx-x86.c +@@ -2524,6 +2524,7 @@ _bfd_x86_elf_link_setup_gnu_properties + const struct elf_backend_data *bed; + unsigned int class_align = ABI_64_P (info->output_bfd) ? 3 : 2; + unsigned int got_align; ++ bfd_boolean has_text = FALSE; + + features = 0; + if (info->ibt) +@@ -2538,24 +2539,59 @@ _bfd_x86_elf_link_setup_gnu_properties + if (bfd_get_flavour (pbfd) == bfd_target_elf_flavour + && bfd_count_sections (pbfd) != 0) + { ++ if (!has_text) ++ { ++ /* Check if there is no non-empty text section. */ ++ sec = bfd_get_section_by_name (pbfd, ".text"); ++ if (sec != NULL && sec->size != 0) ++ has_text = TRUE; ++ } ++ + ebfd = pbfd; + + if (elf_properties (pbfd) != NULL) + break; + } + +- if (ebfd != NULL && features) ++ bed = get_elf_backend_data (info->output_bfd); ++ ++ htab = elf_x86_hash_table (info, bed->target_id); ++ if (htab == NULL) ++ return pbfd; ++ ++ if (ebfd != NULL) + { +- /* If features is set, add GNU_PROPERTY_X86_FEATURE_1_IBT and +- GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ +- prop = _bfd_elf_get_property (ebfd, +- GNU_PROPERTY_X86_FEATURE_1_AND, +- 4); +- prop->u.number |= features; +- prop->pr_kind = property_number; ++ prop = NULL; ++ if (features) ++ { ++ /* If features is set, add GNU_PROPERTY_X86_FEATURE_1_IBT and ++ GNU_PROPERTY_X86_FEATURE_1_SHSTK. */ ++ prop = _bfd_elf_get_property (ebfd, ++ GNU_PROPERTY_X86_FEATURE_1_AND, ++ 4); ++ prop->u.number |= features; ++ prop->pr_kind = property_number; ++ } ++ else if (has_text ++ && elf_properties (ebfd) == NULL ++ && elf_tdata (info->output_bfd)->o->build_id.sec == NULL ++ && !htab->elf.dynamic_sections_created ++ && !info->traditional_format ++ && (info->output_bfd->flags & D_PAGED) != 0 ++ && info->separate_code) ++ { ++ /* If the separate code program header is needed, make sure ++ that the first read-only PT_LOAD segment has no code by ++ adding a GNU_PROPERTY_X86_ISA_1_USED note. */ ++ prop = _bfd_elf_get_property (ebfd, ++ GNU_PROPERTY_X86_ISA_1_USED, ++ 4); ++ prop->u.number = GNU_PROPERTY_X86_ISA_1_486; ++ prop->pr_kind = property_number; ++ } + + /* Create the GNU property note section if needed. */ +- if (pbfd == NULL) ++ if (prop != NULL && pbfd == NULL) + { + sec = bfd_make_section_with_flags (ebfd, + NOTE_GNU_PROPERTY_SECTION_NAME, +@@ -2581,12 +2617,6 @@ error_alignment: + + pbfd = _bfd_elf_link_setup_gnu_properties (info); + +- bed = get_elf_backend_data (info->output_bfd); +- +- htab = elf_x86_hash_table (info, bed->target_id); +- if (htab == NULL) +- return pbfd; +- + htab->r_info = init_table->r_info; + htab->r_sym = init_table->r_sym; + +diff --git a/ld/ChangeLog b/ld/ChangeLog +index c07e442..cfadbd4 100644 +--- a/ld/ChangeLog ++++ b/ld/ChangeLog +@@ -1,3 +1,27 @@ ++2018-07-23 H.J. Lu <hongjiu.lu@intel.com> ++ ++ PR ld/23428 ++ * testsuite/ld-elf/linux-x86.S: New file. ++ * testsuite/ld-elf/linux-x86.exp: Likewise. ++ * testsuite/ld-elf/pr23428.c: Likewise. ++ * testsuite/ld-elf/sec64k.exp: Pass "-z noseparate-code" to ld ++ for Linux/x86 targets. ++ * testsuite/ld-i386/abs-iamcu.d: Likewise. ++ * testsuite/ld-i386/abs.d: Likewise. ++ * testsuite/ld-i386/pr12718.d: Likewise. ++ * testsuite/ld-i386/pr12921.d: Likewise. ++ * testsuite/ld-x86-64/abs-k1om.d: Likewise. ++ * testsuite/ld-x86-64/abs-l1om.d: Likewise. ++ * testsuite/ld-x86-64/abs.d: Likewise. ++ * testsuite/ld-x86-64/pr12718.d: Likewise. ++ * testsuite/ld-x86-64/pr12921.d: Likewise. ++ * testsuite/ld-linkonce/zeroeh.ld: Discard .note.gnu.property ++ section. ++ * testsuite/ld-scripts/print-memory-usage.t: Likewise. ++ * testsuite/ld-scripts/size-2.t: Likewise. ++ * testsuite/lib/ld-lib.exp (run_ld_link_exec_tests): Use ld to ++ create executable if language is "asm". ++ + 2018-07-18 Nick Clifton <nickc@redhat.com> + + 2.31.1 Release point. +diff --git a/ld/testsuite/ld-elf/linux-x86.S b/ld/testsuite/ld-elf/linux-x86.S +new file mode 100644 +index 0000000..bdf40c6 +--- /dev/null ++++ b/ld/testsuite/ld-elf/linux-x86.S +@@ -0,0 +1,63 @@ ++ .text ++ .globl _start ++ .type _start,@function ++ .p2align 4 ++_start: ++ xorl %ebp, %ebp ++#ifdef __LP64__ ++ popq %rdi ++ movq %rsp, %rsi ++ andq $~15, %rsp ++#elif defined __x86_64__ ++ mov (%rsp),%edi ++ addl $4,%esp ++ movl %esp, %esi ++ andl $~15, %esp ++#else ++ popl %esi ++ movl %esp, %ecx ++ andl $~15, %esp ++ ++ subl $8,%esp ++ pushl %ecx ++ pushl %esi ++#endif ++ ++ call main ++ ++ hlt ++ ++ .type syscall, @function ++ .globl syscall ++ .p2align 4 ++syscall: ++#ifdef __x86_64__ ++ movq %rdi, %rax /* Syscall number -> rax. */ ++ movq %rsi, %rdi /* shift arg1 - arg5. */ ++ movq %rdx, %rsi ++ movq %rcx, %rdx ++ movq %r8, %r10 ++ movq %r9, %r8 ++ movq 8(%rsp),%r9 /* arg6 is on the stack. */ ++ syscall /* Do the system call. */ ++#else ++ push %ebp ++ push %edi ++ push %esi ++ push %ebx ++ mov 0x2c(%esp),%ebp ++ mov 0x28(%esp),%edi ++ mov 0x24(%esp),%esi ++ mov 0x20(%esp),%edx ++ mov 0x1c(%esp),%ecx ++ mov 0x18(%esp),%ebx ++ mov 0x14(%esp),%eax ++ int $0x80 ++ pop %ebx ++ pop %esi ++ pop %edi ++ pop %ebp ++#endif ++ ret /* Return to caller. */ ++ .size syscall, .-syscall ++ .section .note.GNU-stack,"",@progbits +diff --git a/ld/testsuite/ld-elf/linux-x86.exp b/ld/testsuite/ld-elf/linux-x86.exp +new file mode 100644 +index 0000000..36217c6 +--- /dev/null ++++ b/ld/testsuite/ld-elf/linux-x86.exp +@@ -0,0 +1,46 @@ ++# Expect script for simple native Linux/x86 tests. ++# Copyright (C) 2018 Free Software Foundation, Inc. ++# ++# This file is part of the GNU Binutils. ++# ++# This program is free software; you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 3 of the License, or ++# (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++# GNU General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software ++# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, ++# MA 02110-1301, USA. ++# ++ ++# Test very simple native Linux/x86 programs with linux-x86.S. ++if { ![isnative] || [which $CC] == 0 \ ++ || (![istarget "i?86-*-linux*"] \ ++ && ![istarget "x86_64-*-linux*"] \ ++ && ![istarget "amd64-*-linux*"]) } { ++ return ++} ++ ++# Add $PLT_CFLAGS if PLT is expected. ++global PLT_CFLAGS ++# Add $NOPIE_CFLAGS and $NOPIE_LDFLAGS if non-PIE is required. ++global NOPIE_CFLAGS NOPIE_LDFLAGS ++ ++run_ld_link_exec_tests [list \ ++ [list \ ++ "Run PR ld/23428 test" \ ++ "--no-dynamic-linker -z separate-code" \ ++ "" \ ++ { linux-x86.S pr23428.c } \ ++ "pr23428" \ ++ "pass.out" \ ++ "$NOPIE_CFLAGS -fno-asynchronous-unwind-tables" \ ++ "asm" \ ++ ] \ ++] +diff --git a/ld/testsuite/ld-elf/pr23428.c b/ld/testsuite/ld-elf/pr23428.c +new file mode 100644 +index 0000000..3631ed7 +--- /dev/null ++++ b/ld/testsuite/ld-elf/pr23428.c +@@ -0,0 +1,43 @@ ++#include <unistd.h> ++#include <link.h> ++#include <syscall.h> ++ ++#define STRING_COMMA_LEN(STR) (STR), (sizeof (STR) - 1) ++ ++int ++main (int argc, char **argv) ++{ ++ char **ev = &argv[argc + 1]; ++ char **evp = ev; ++ ElfW(auxv_t) *av; ++ const ElfW(Phdr) *phdr = NULL; ++ size_t phnum = 0; ++ size_t loadnum = 0; ++ int fd = STDOUT_FILENO; ++ size_t i; ++ ++ while (*evp++ != NULL) ++ ; ++ ++ av = (ElfW(auxv_t) *) evp; ++ ++ for (; av->a_type != AT_NULL; ++av) ++ switch (av->a_type) ++ { ++ case AT_PHDR: ++ phdr = (const void *) av->a_un.a_val; ++ break; ++ case AT_PHNUM: ++ phnum = av->a_un.a_val; ++ break; ++ } ++ ++ for (i = 0; i < phnum; i++, phdr++) ++ if (phdr->p_type == PT_LOAD) ++ loadnum++; ++ ++ syscall (SYS_write, fd, STRING_COMMA_LEN ("PASS\n")); ++ ++ syscall (SYS_exit, !loadnum); ++ return 0; ++} +diff --git a/ld/testsuite/ld-elf/sec64k.exp b/ld/testsuite/ld-elf/sec64k.exp +index b58139e..3909c0e 100644 +--- a/ld/testsuite/ld-elf/sec64k.exp ++++ b/ld/testsuite/ld-elf/sec64k.exp +@@ -177,6 +177,8 @@ if { ![istarget "d10v-*-*"] + foreach sfile $sfiles { puts $ofd "#source: $sfile" } + if { [istarget spu*-*-*] } { + puts $ofd "#ld: --local-store 0:0" ++ } elseif { [istarget "i?86-*-linux*"] || [istarget "x86_64-*-linux*"] } { ++ puts $ofd "#ld: -z noseparate-code" + } else { + puts $ofd "#ld:" + } +diff --git a/ld/testsuite/ld-i386/abs-iamcu.d b/ld/testsuite/ld-i386/abs-iamcu.d +index ac9beff..aba7d6b 100644 +--- a/ld/testsuite/ld-i386/abs-iamcu.d ++++ b/ld/testsuite/ld-i386/abs-iamcu.d +@@ -2,7 +2,7 @@ + #source: abs.s + #source: zero.s + #as: --32 -march=iamcu +-#ld: -m elf_iamcu ++#ld: -m elf_iamcu -z noseparate-code + #objdump: -rs -j .text + + .*: file format .* +diff --git a/ld/testsuite/ld-i386/abs.d b/ld/testsuite/ld-i386/abs.d +index e660aca..191ee44 100644 +--- a/ld/testsuite/ld-i386/abs.d ++++ b/ld/testsuite/ld-i386/abs.d +@@ -2,7 +2,7 @@ + #as: --32 + #source: abs.s + #source: zero.s +-#ld: -melf_i386 ++#ld: -melf_i386 -z noseparate-code + #objdump: -rs + + .*: file format .* +diff --git a/ld/testsuite/ld-i386/pr12718.d b/ld/testsuite/ld-i386/pr12718.d +index ec51540..7eba52d 100644 +--- a/ld/testsuite/ld-i386/pr12718.d ++++ b/ld/testsuite/ld-i386/pr12718.d +@@ -1,6 +1,6 @@ + #name: PR ld/12718 + #as: --32 +-#ld: -melf_i386 ++#ld: -melf_i386 -z noseparate-code + #readelf: -S + + There are 5 section headers, starting at offset 0x[0-9a-f]+: +diff --git a/ld/testsuite/ld-i386/pr12921.d b/ld/testsuite/ld-i386/pr12921.d +index e49079b..ea2da3e 100644 +--- a/ld/testsuite/ld-i386/pr12921.d ++++ b/ld/testsuite/ld-i386/pr12921.d +@@ -1,6 +1,6 @@ + #name: PR ld/12921 + #as: --32 +-#ld: -melf_i386 ++#ld: -melf_i386 -z noseparate-code + #readelf: -S --wide + + There are 7 section headers, starting at offset 0x[0-9a-f]+: +diff --git a/ld/testsuite/ld-linkonce/zeroeh.ld b/ld/testsuite/ld-linkonce/zeroeh.ld +index b22eaa1..f89855a 100644 +--- a/ld/testsuite/ld-linkonce/zeroeh.ld ++++ b/ld/testsuite/ld-linkonce/zeroeh.ld +@@ -2,4 +2,5 @@ SECTIONS { + .text 0xa00 : { *(.text); *(.gnu.linkonce.t.*) } + .gcc_except_table 0x2000 : { *(.gcc_except_table) } + .eh_frame 0x4000 : { *(.eh_frame) } ++ /DISCARD/ : { *(.note.gnu.property) } + } +diff --git a/ld/testsuite/ld-scripts/print-memory-usage.t b/ld/testsuite/ld-scripts/print-memory-usage.t +index 5ff057a..6eda1d2 100644 +--- a/ld/testsuite/ld-scripts/print-memory-usage.t ++++ b/ld/testsuite/ld-scripts/print-memory-usage.t +@@ -11,4 +11,6 @@ SECTIONS + *(.data) + *(.rw) + } ++ ++ /DISCARD/ : { *(.note.gnu.property) } + } +diff --git a/ld/testsuite/ld-scripts/size-2.t b/ld/testsuite/ld-scripts/size-2.t +index 7238639..c3c4edd 100644 +--- a/ld/testsuite/ld-scripts/size-2.t ++++ b/ld/testsuite/ld-scripts/size-2.t +@@ -18,4 +18,5 @@ SECTIONS + LONG (SIZEOF (.tdata)) + LONG (SIZEOF (.tbss)) + } :image ++ /DISCARD/ : { *(.note.gnu.property) } + } +diff --git a/ld/testsuite/ld-x86-64/abs-k1om.d b/ld/testsuite/ld-x86-64/abs-k1om.d +index 2c26639..6b0fde0 100644 +--- a/ld/testsuite/ld-x86-64/abs-k1om.d ++++ b/ld/testsuite/ld-x86-64/abs-k1om.d +@@ -2,7 +2,7 @@ + #source: ../ld-i386/abs.s + #source: ../ld-i386/zero.s + #as: --64 -march=k1om +-#ld: -m elf_k1om ++#ld: -m elf_k1om -z noseparate-code + #objdump: -rs -j .text + + .*: file format .* +diff --git a/ld/testsuite/ld-x86-64/abs-l1om.d b/ld/testsuite/ld-x86-64/abs-l1om.d +index 1fb96d4..f87869f 100644 +--- a/ld/testsuite/ld-x86-64/abs-l1om.d ++++ b/ld/testsuite/ld-x86-64/abs-l1om.d +@@ -2,7 +2,7 @@ + #source: ../ld-i386/abs.s + #source: ../ld-i386/zero.s + #as: --64 -march=l1om +-#ld: -m elf_l1om ++#ld: -m elf_l1om -z noseparate-code + #objdump: -rs -j .text + #target: x86_64-*-linux* + +diff --git a/ld/testsuite/ld-x86-64/abs.d b/ld/testsuite/ld-x86-64/abs.d +index b24b018..d99ab46 100644 +--- a/ld/testsuite/ld-x86-64/abs.d ++++ b/ld/testsuite/ld-x86-64/abs.d +@@ -1,7 +1,7 @@ + #name: Absolute non-overflowing relocs + #source: ../ld-i386/abs.s + #source: ../ld-i386/zero.s +-#ld: ++#ld: -z noseparate-code + #objdump: -rs + + .*: file format .* +diff --git a/ld/testsuite/ld-x86-64/pr12718.d b/ld/testsuite/ld-x86-64/pr12718.d +index 07d1732..2c503ff 100644 +--- a/ld/testsuite/ld-x86-64/pr12718.d ++++ b/ld/testsuite/ld-x86-64/pr12718.d +@@ -1,6 +1,6 @@ + #name: PR ld/12718 + #as: --64 +-#ld: -melf_x86_64 ++#ld: -melf_x86_64 -z noseparate-code + #readelf: -S --wide + + There are 5 section headers, starting at offset 0x[0-9a-f]+: +diff --git a/ld/testsuite/ld-x86-64/pr12921.d b/ld/testsuite/ld-x86-64/pr12921.d +index 6fe6abe..1162d55 100644 +--- a/ld/testsuite/ld-x86-64/pr12921.d ++++ b/ld/testsuite/ld-x86-64/pr12921.d +@@ -1,6 +1,6 @@ + #name: PR ld/12921 + #as: --64 +-#ld: -melf_x86_64 ++#ld: -melf_x86_64 -z noseparate-code + #readelf: -S --wide + + There are 7 section headers, starting at offset 0x[0-9a-f]+: +diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp +index cfbefe9..1095091 100644 +--- a/ld/testsuite/lib/ld-lib.exp ++++ b/ld/testsuite/lib/ld-lib.exp +@@ -1482,7 +1482,10 @@ proc run_ld_link_exec_tests { ldtests args } { + continue + } + +- if { [ string match "c++" $lang ] } { ++ if { [ string match "asm" $lang ] } { ++ set link_proc ld_link ++ set link_cmd $ld ++ } elseif { [ string match "c++" $lang ] } { + set link_proc ld_link + set link_cmd $CXX + } else { +-- +2.9.3 + diff --git a/package/binutils/2.31.1/0013-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patch b/package/binutils/2.31.1/0013-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patch new file mode 100644 index 0000000000..a4c48985d9 --- /dev/null +++ b/package/binutils/2.31.1/0013-x86-Properly-merge-GNU_PROPERTY_X86_ISA_1_USED.patch @@ -0,0 +1,588 @@ +From d55c3e36094f06bb1fb02f5eac19fdccf1d91f7e Mon Sep 17 00:00:00 2001 +From: "H.J. Lu" <hjl.tools@gmail.com> +Date: Wed, 8 Aug 2018 06:09:15 -0700 +Subject: [PATCH] x86: Properly merge GNU_PROPERTY_X86_ISA_1_USED +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf8 +Content-Transfer-Encoding: 8bit + +Without the GNU_PROPERTY_X86_ISA_1_USED property, all ISAs may be used. +If a bit in the GNU_PROPERTY_X86_ISA_1_USED property is unset, the +corresponding x86 instruction set isn’t used. When merging properties +from 2 input files and one input file doesn't have the +GNU_PROPERTY_X86_ISA_1_USED property, the output file shouldn't have +it neither. This patch removes the GNU_PROPERTY_X86_ISA_1_USED +property if an input file doesn't have it. + +This patch replaces the GNU_PROPERTY_X86_ISA_1_USED property with the +GNU_PROPERTY_X86_ISA_1_NEEDED property which is the minimum ISA +requirement. + +bfd/ + + PR ld/23486 + * elfxx-x86.c (_bfd_x86_elf_merge_gnu_properties): Remove + GNU_PROPERTY_X86_ISA_1_USED if an input file doesn't have it. + (_bfd_x86_elf_link_setup_gnu_properties): Adding the + GNU_PROPERTY_X86_ISA_1_NEEDED, instead of + GNU_PROPERTY_X86_ISA_1_USED, property. + +ld/ + + PR ld/23486 + * testsuite/ld-i386/i386.exp: Run PR ld/23486 tests. + * testsuite/ld-x86-64/x86-64.exp: Likewise. + * testsuite/ld-i386/pr23486a.d: New file. + * testsuite/ld-i386/pr23486b.d: Likewise. + * testsuite/ld-x86-64/pr23486a-x32.d: Likewise. + * testsuite/ld-x86-64/pr23486a.d: Likewise. + * testsuite/ld-x86-64/pr23486a.s: Likewise. + * testsuite/ld-x86-64/pr23486b-x32.d: Likewise. + * testsuite/ld-x86-64/pr23486b.d: Likewise. + * testsuite/ld-x86-64/pr23486b.s: Likewise. + * testsuite/ld-i386/property-3.r: Remove "x86 ISA used". + * testsuite/ld-i386/property-4.r: Likewise. + * testsuite/ld-i386/property-5.r: Likewise. + * testsuite/ld-i386/property-x86-ibt3a.d: Likewise. + * testsuite/ld-i386/property-x86-ibt3b.d: Likewise. + * testsuite/ld-i386/property-x86-shstk3a.d: Likewise. + * testsuite/ld-i386/property-x86-shstk3b.d: Likewise. + * testsuite/ld-x86-64/property-3.r: Likewise. + * testsuite/ld-x86-64/property-4.r: Likewise. + * testsuite/ld-x86-64/property-5.r: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3a.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-ibt3b.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3a-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3a.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3b-x32.d: Likewise. + * testsuite/ld-x86-64/property-x86-shstk3b.d: Likewise. + +(cherry picked from commit f7309df20c4e787041cedc4a6aced89c15259e54) +Signed-off-by: Norbert Lange <nolange79@gmail.com> +--- + bfd/ChangeLog | 9 +++++++ + bfd/elfxx-x86.c | 25 ++++++++++++++---- + ld/ChangeLog | 32 +++++++++++++++++++++++ + ld/testsuite/ld-i386/i386.exp | 2 ++ + ld/testsuite/ld-i386/pr23486a.d | 10 +++++++ + ld/testsuite/ld-i386/pr23486b.d | 10 +++++++ + ld/testsuite/ld-i386/property-3.r | 1 - + ld/testsuite/ld-i386/property-4.r | 1 - + ld/testsuite/ld-i386/property-5.r | 1 - + ld/testsuite/ld-i386/property-x86-ibt3a.d | 5 ++-- + ld/testsuite/ld-i386/property-x86-ibt3b.d | 5 ++-- + ld/testsuite/ld-i386/property-x86-shstk3a.d | 5 ++-- + ld/testsuite/ld-i386/property-x86-shstk3b.d | 5 ++-- + ld/testsuite/ld-x86-64/pr23486a-x32.d | 10 +++++++ + ld/testsuite/ld-x86-64/pr23486a.d | 10 +++++++ + ld/testsuite/ld-x86-64/pr23486a.s | 30 +++++++++++++++++++++ + ld/testsuite/ld-x86-64/pr23486b-x32.d | 10 +++++++ + ld/testsuite/ld-x86-64/pr23486b.d | 10 +++++++ + ld/testsuite/ld-x86-64/pr23486b.s | 30 +++++++++++++++++++++ + ld/testsuite/ld-x86-64/property-3.r | 1 - + ld/testsuite/ld-x86-64/property-4.r | 1 - + ld/testsuite/ld-x86-64/property-5.r | 1 - + ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d | 5 ++-- + ld/testsuite/ld-x86-64/property-x86-ibt3a.d | 5 ++-- + ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d | 5 ++-- + ld/testsuite/ld-x86-64/property-x86-ibt3b.d | 5 ++-- + ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d | 5 ++-- + ld/testsuite/ld-x86-64/property-x86-shstk3a.d | 5 ++-- + ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d | 5 ++-- + ld/testsuite/ld-x86-64/property-x86-shstk3b.d | 5 ++-- + ld/testsuite/ld-x86-64/x86-64.exp | 4 +++ + 31 files changed, 211 insertions(+), 47 deletions(-) + create mode 100644 ld/testsuite/ld-i386/pr23486a.d + create mode 100644 ld/testsuite/ld-i386/pr23486b.d + create mode 100644 ld/testsuite/ld-x86-64/pr23486a-x32.d + create mode 100644 ld/testsuite/ld-x86-64/pr23486a.d + create mode 100644 ld/testsuite/ld-x86-64/pr23486a.s + create mode 100644 ld/testsuite/ld-x86-64/pr23486b-x32.d + create mode 100644 ld/testsuite/ld-x86-64/pr23486b.d + create mode 100644 ld/testsuite/ld-x86-64/pr23486b.s + +diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c +index 2e4ff88..7ccfd25 100644 +--- a/bfd/elfxx-x86.c ++++ b/bfd/elfxx-x86.c +@@ -2407,12 +2407,27 @@ _bfd_x86_elf_merge_gnu_properties (struct bfd_link_info *info, + switch (pr_type) + { + case GNU_PROPERTY_X86_ISA_1_USED: ++ if (aprop == NULL || bprop == NULL) ++ { ++ /* Only one of APROP and BPROP can be NULL. */ ++ if (aprop != NULL) ++ { ++ /* Remove this property since the other input file doesn't ++ have it. */ ++ aprop->pr_kind = property_remove; ++ updated = TRUE; ++ } ++ break; ++ } ++ goto or_property; ++ + case GNU_PROPERTY_X86_ISA_1_NEEDED: + if (aprop != NULL && bprop != NULL) + { ++or_property: + number = aprop->u.number; + aprop->u.number = number | bprop->u.number; +- /* Remove the property if ISA bits are empty. */ ++ /* Remove the property if all bits are empty. */ + if (aprop->u.number == 0) + { + aprop->pr_kind = property_remove; +@@ -2428,14 +2443,14 @@ _bfd_x86_elf_merge_gnu_properties (struct bfd_link_info *info, + { + if (aprop->u.number == 0) + { +- /* Remove APROP if ISA bits are empty. */ ++ /* Remove APROP if all bits are empty. */ + aprop->pr_kind = property_remove; + updated = TRUE; + } + } + else + { +- /* Return TRUE if APROP is NULL and ISA bits of BPROP ++ /* Return TRUE if APROP is NULL and all bits of BPROP + aren't empty to indicate that BPROP should be added + to ABFD. */ + updated = bprop->u.number != 0; +@@ -2582,9 +2597,9 @@ _bfd_x86_elf_link_setup_gnu_properties + { + /* If the separate code program header is needed, make sure + that the first read-only PT_LOAD segment has no code by +- adding a GNU_PROPERTY_X86_ISA_1_USED note. */ ++ adding a GNU_PROPERTY_X86_ISA_1_NEEDED note. */ + prop = _bfd_elf_get_property (ebfd, +- GNU_PROPERTY_X86_ISA_1_USED, ++ GNU_PROPERTY_X86_ISA_1_NEEDED, + 4); + prop->u.number = GNU_PROPERTY_X86_ISA_1_486; + prop->pr_kind = property_number; +diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp +index 6d794fe..78dad02 100644 +--- a/ld/testsuite/ld-i386/i386.exp ++++ b/ld/testsuite/ld-i386/i386.exp +@@ -462,6 +462,8 @@ run_dump_test "pr23189" + run_dump_test "pr23194" + run_dump_test "pr23372a" + run_dump_test "pr23372b" ++run_dump_test "pr23486a" ++run_dump_test "pr23486b" + + if { !([istarget "i?86-*-linux*"] + || [istarget "i?86-*-gnu*"] +diff --git a/ld/testsuite/ld-i386/pr23486a.d b/ld/testsuite/ld-i386/pr23486a.d +new file mode 100644 +index 0000000..41a6dcf +--- /dev/null ++++ b/ld/testsuite/ld-i386/pr23486a.d +@@ -0,0 +1,10 @@ ++#source: ../ld-x86-64/pr23486a.s ++#source: ../ld-x86-64/pr23486b.s ++#as: --32 ++#ld: -r -m elf_i386 ++#readelf: -n ++ ++Displaying notes found in: .note.gnu.property ++ Owner Data size Description ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586 +diff --git a/ld/testsuite/ld-i386/pr23486b.d b/ld/testsuite/ld-i386/pr23486b.d +new file mode 100644 +index 0000000..08019b7 +--- /dev/null ++++ b/ld/testsuite/ld-i386/pr23486b.d +@@ -0,0 +1,10 @@ ++#source: ../ld-x86-64/pr23486b.s ++#source: ../ld-x86-64/pr23486a.s ++#as: --32 ++#ld: -r -m elf_i386 ++#readelf: -n ++ ++Displaying notes found in: .note.gnu.property ++ Owner Data size Description ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586 +diff --git a/ld/testsuite/ld-i386/property-3.r b/ld/testsuite/ld-i386/property-3.r +index 0ed91f5..d03203c 100644 +--- a/ld/testsuite/ld-i386/property-3.r ++++ b/ld/testsuite/ld-i386/property-3.r +@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: stack size: 0x800000 +- x86 ISA used: 586, SSE + x86 ISA needed: i486, 586 + #pass +diff --git a/ld/testsuite/ld-i386/property-4.r b/ld/testsuite/ld-i386/property-4.r +index cb2bc15..da295eb 100644 +--- a/ld/testsuite/ld-i386/property-4.r ++++ b/ld/testsuite/ld-i386/property-4.r +@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: stack size: 0x800000 +- x86 ISA used: i486, 586, SSE + x86 ISA needed: i486, 586, SSE + #pass +diff --git a/ld/testsuite/ld-i386/property-5.r b/ld/testsuite/ld-i386/property-5.r +index 5529650..e414159 100644 +--- a/ld/testsuite/ld-i386/property-5.r ++++ b/ld/testsuite/ld-i386/property-5.r +@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: stack size: 0x900000 +- x86 ISA used: i486, 586, SSE + x86 ISA needed: i486, 586, SSE + #pass +diff --git a/ld/testsuite/ld-i386/property-x86-ibt3a.d b/ld/testsuite/ld-i386/property-x86-ibt3a.d +index 4bb35b0..0aedea1 100644 +--- a/ld/testsuite/ld-i386/property-x86-ibt3a.d ++++ b/ld/testsuite/ld-i386/property-x86-ibt3a.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: i486, 586, SSE2, SSE3 +- x86 ISA needed: 586, SSE, SSE3, SSE4_1 ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1 +diff --git a/ld/testsuite/ld-i386/property-x86-ibt3b.d b/ld/testsuite/ld-i386/property-x86-ibt3b.d +index 418d58a..bd69ac6 100644 +--- a/ld/testsuite/ld-i386/property-x86-ibt3b.d ++++ b/ld/testsuite/ld-i386/property-x86-ibt3b.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: i486, 586, SSE2, SSE3 +- x86 ISA needed: 586, SSE, SSE3, SSE4_1 ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1 +diff --git a/ld/testsuite/ld-i386/property-x86-shstk3a.d b/ld/testsuite/ld-i386/property-x86-shstk3a.d +index e261038..76d2a39 100644 +--- a/ld/testsuite/ld-i386/property-x86-shstk3a.d ++++ b/ld/testsuite/ld-i386/property-x86-shstk3a.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: i486, 586, SSE2, SSE3 +- x86 ISA needed: 586, SSE, SSE3, SSE4_1 ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1 +diff --git a/ld/testsuite/ld-i386/property-x86-shstk3b.d b/ld/testsuite/ld-i386/property-x86-shstk3b.d +index 25f3d23..e770ecf 100644 +--- a/ld/testsuite/ld-i386/property-x86-shstk3b.d ++++ b/ld/testsuite/ld-i386/property-x86-shstk3b.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: i486, 586, SSE2, SSE3 +- x86 ISA needed: 586, SSE, SSE3, SSE4_1 ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: 586, SSE, SSE3, SSE4_1 +diff --git a/ld/testsuite/ld-x86-64/pr23486a-x32.d b/ld/testsuite/ld-x86-64/pr23486a-x32.d +new file mode 100644 +index 0000000..6d9fa68 +--- /dev/null ++++ b/ld/testsuite/ld-x86-64/pr23486a-x32.d +@@ -0,0 +1,10 @@ ++#source: pr23486a.s ++#source: pr23486b.s ++#as: --x32 ++#ld: -r -m elf32_x86_64 ++#readelf: -n ++ ++Displaying notes found in: .note.gnu.property ++ Owner Data size Description ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586 +diff --git a/ld/testsuite/ld-x86-64/pr23486a.d b/ld/testsuite/ld-x86-64/pr23486a.d +new file mode 100644 +index 0000000..dc2b7bf +--- /dev/null ++++ b/ld/testsuite/ld-x86-64/pr23486a.d +@@ -0,0 +1,10 @@ ++#source: pr23486a.s ++#source: pr23486b.s ++#as: --64 -defsym __64_bit__=1 ++#ld: -r -m elf_x86_64 ++#readelf: -n ++ ++Displaying notes found in: .note.gnu.property ++ Owner Data size Description ++ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586 +diff --git a/ld/testsuite/ld-x86-64/pr23486a.s b/ld/testsuite/ld-x86-64/pr23486a.s +new file mode 100644 +index 0000000..a07d0c7 +--- /dev/null ++++ b/ld/testsuite/ld-x86-64/pr23486a.s +@@ -0,0 +1,30 @@ ++ .section ".note.gnu.property", "a" ++.ifdef __64_bit__ ++ .p2align 3 ++.else ++ .p2align 2 ++.endif ++ .long 1f - 0f /* name length. */ ++ .long 4f - 1f /* data length. */ ++ /* NT_GNU_PROPERTY_TYPE_0 */ ++ .long 5 /* note type. */ ++0: ++ .asciz "GNU" /* vendor name. */ ++1: ++.ifdef __64_bit__ ++ .p2align 3 ++.else ++ .p2align 2 ++.endif ++ /* GNU_PROPERTY_X86_ISA_1_USED */ ++ .long 0xc0000000 /* pr_type. */ ++ .long 3f - 2f /* pr_datasz. */ ++2: ++ .long 0xa ++3: ++.ifdef __64_bit__ ++ .p2align 3 ++.else ++ .p2align 2 ++.endif ++4: +diff --git a/ld/testsuite/ld-x86-64/pr23486b-x32.d b/ld/testsuite/ld-x86-64/pr23486b-x32.d +new file mode 100644 +index 0000000..0445e69 +--- /dev/null ++++ b/ld/testsuite/ld-x86-64/pr23486b-x32.d +@@ -0,0 +1,10 @@ ++#source: pr23486b.s ++#source: pr23486a.s ++#as: --x32 ++#ld: -r -m elf32_x86_64 ++#readelf: -n ++ ++Displaying notes found in: .note.gnu.property ++ Owner Data size Description ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586 +diff --git a/ld/testsuite/ld-x86-64/pr23486b.d b/ld/testsuite/ld-x86-64/pr23486b.d +new file mode 100644 +index 0000000..dc2b7bf +--- /dev/null ++++ b/ld/testsuite/ld-x86-64/pr23486b.d +@@ -0,0 +1,10 @@ ++#source: pr23486a.s ++#source: pr23486b.s ++#as: --64 -defsym __64_bit__=1 ++#ld: -r -m elf_x86_64 ++#readelf: -n ++ ++Displaying notes found in: .note.gnu.property ++ Owner Data size Description ++ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586 +diff --git a/ld/testsuite/ld-x86-64/pr23486b.s b/ld/testsuite/ld-x86-64/pr23486b.s +new file mode 100644 +index 0000000..c5167ee +--- /dev/null ++++ b/ld/testsuite/ld-x86-64/pr23486b.s +@@ -0,0 +1,30 @@ ++ .section ".note.gnu.property", "a" ++.ifdef __64_bit__ ++ .p2align 3 ++.else ++ .p2align 2 ++.endif ++ .long 1f - 0f /* name length. */ ++ .long 4f - 1f /* data length. */ ++ /* NT_GNU_PROPERTY_TYPE_0 */ ++ .long 5 /* note type. */ ++0: ++ .asciz "GNU" /* vendor name. */ ++1: ++.ifdef __64_bit__ ++ .p2align 3 ++.else ++ .p2align 2 ++.endif ++ /* GNU_PROPERTY_X86_ISA_1_NEEDED */ ++ .long 0xc0000001 /* pr_type. */ ++ .long 3f - 2f /* pr_datasz. */ ++2: ++ .long 0x3 ++3: ++.ifdef __64_bit__ ++ .p2align 3 ++.else ++ .p2align 2 ++.endif ++4: +diff --git a/ld/testsuite/ld-x86-64/property-3.r b/ld/testsuite/ld-x86-64/property-3.r +index 0ed91f5..d03203c 100644 +--- a/ld/testsuite/ld-x86-64/property-3.r ++++ b/ld/testsuite/ld-x86-64/property-3.r +@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: stack size: 0x800000 +- x86 ISA used: 586, SSE + x86 ISA needed: i486, 586 + #pass +diff --git a/ld/testsuite/ld-x86-64/property-4.r b/ld/testsuite/ld-x86-64/property-4.r +index cb2bc15..da295eb 100644 +--- a/ld/testsuite/ld-x86-64/property-4.r ++++ b/ld/testsuite/ld-x86-64/property-4.r +@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: stack size: 0x800000 +- x86 ISA used: i486, 586, SSE + x86 ISA needed: i486, 586, SSE + #pass +diff --git a/ld/testsuite/ld-x86-64/property-5.r b/ld/testsuite/ld-x86-64/property-5.r +index 5529650..e414159 100644 +--- a/ld/testsuite/ld-x86-64/property-5.r ++++ b/ld/testsuite/ld-x86-64/property-5.r +@@ -3,6 +3,5 @@ Displaying notes found in: .note.gnu.property + Owner Data size Description + GNU 0x[0-9a-f]+ NT_GNU_PROPERTY_TYPE_0 + Properties: stack size: 0x900000 +- x86 ISA used: i486, 586, SSE + x86 ISA needed: i486, 586, SSE + #pass +diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d b/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d +index 011426f..4cec728 100644 +--- a/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d ++++ b/ld/testsuite/ld-x86-64/property-x86-ibt3a-x32.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1 +- x86 ISA needed: i486, 586, SSE2, SSE3 ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586, SSE2, SSE3 +diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3a.d b/ld/testsuite/ld-x86-64/property-x86-ibt3a.d +index 1b4229a..a8df49a 100644 +--- a/ld/testsuite/ld-x86-64/property-x86-ibt3a.d ++++ b/ld/testsuite/ld-x86-64/property-x86-ibt3a.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1 +- x86 ISA needed: i486, 586, SSE2, SSE3 ++ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586, SSE2, SSE3 +diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d b/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d +index 290ed6a..c112626 100644 +--- a/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d ++++ b/ld/testsuite/ld-x86-64/property-x86-ibt3b-x32.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1 +- x86 ISA needed: i486, 586, SSE2, SSE3 ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586, SSE2, SSE3 +diff --git a/ld/testsuite/ld-x86-64/property-x86-ibt3b.d b/ld/testsuite/ld-x86-64/property-x86-ibt3b.d +index 1142e03..f10dffd 100644 +--- a/ld/testsuite/ld-x86-64/property-x86-ibt3b.d ++++ b/ld/testsuite/ld-x86-64/property-x86-ibt3b.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1 +- x86 ISA needed: i486, 586, SSE2, SSE3 ++ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586, SSE2, SSE3 +diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d b/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d +index 819542d..0147a3c 100644 +--- a/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d ++++ b/ld/testsuite/ld-x86-64/property-x86-shstk3a-x32.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1 +- x86 ISA needed: i486, 586, SSE2, SSE3 ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586, SSE2, SSE3 +diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3a.d b/ld/testsuite/ld-x86-64/property-x86-shstk3a.d +index 4c5d0e0..1f8c2dc 100644 +--- a/ld/testsuite/ld-x86-64/property-x86-shstk3a.d ++++ b/ld/testsuite/ld-x86-64/property-x86-shstk3a.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1 +- x86 ISA needed: i486, 586, SSE2, SSE3 ++ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586, SSE2, SSE3 +diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d b/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d +index ba181e0..7ca2539 100644 +--- a/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d ++++ b/ld/testsuite/ld-x86-64/property-x86-shstk3b-x32.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000018 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1 +- x86 ISA needed: i486, 586, SSE2, SSE3 ++ GNU 0x0000000c NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586, SSE2, SSE3 +diff --git a/ld/testsuite/ld-x86-64/property-x86-shstk3b.d b/ld/testsuite/ld-x86-64/property-x86-shstk3b.d +index 5216f38..f66a40e 100644 +--- a/ld/testsuite/ld-x86-64/property-x86-shstk3b.d ++++ b/ld/testsuite/ld-x86-64/property-x86-shstk3b.d +@@ -6,6 +6,5 @@ + + Displaying notes found in: .note.gnu.property + Owner Data size Description +- GNU 0x00000020 NT_GNU_PROPERTY_TYPE_0 +- Properties: x86 ISA used: 586, SSE, SSE3, SSE4_1 +- x86 ISA needed: i486, 586, SSE2, SSE3 ++ GNU 0x00000010 NT_GNU_PROPERTY_TYPE_0 ++ Properties: x86 ISA needed: i486, 586, SSE2, SSE3 +diff --git a/ld/testsuite/ld-x86-64/x86-64.exp b/ld/testsuite/ld-x86-64/x86-64.exp +index 6edb9e8..ae21e55 100644 +--- a/ld/testsuite/ld-x86-64/x86-64.exp ++++ b/ld/testsuite/ld-x86-64/x86-64.exp +@@ -403,6 +403,10 @@ run_dump_test "pr23372a" + run_dump_test "pr23372a-x32" + run_dump_test "pr23372b" + run_dump_test "pr23372b-x32" ++run_dump_test "pr23486a" ++run_dump_test "pr23486a-x32" ++run_dump_test "pr23486b" ++run_dump_test "pr23486b-x32" + + if { ![istarget "x86_64-*-linux*"] && ![istarget "x86_64-*-nacl*"]} { + return +-- +2.9.3 + diff --git a/package/binutils/2.31.1/0014-x86-Properly-add-X86_ISA_1_NEEDED-property.patch b/package/binutils/2.31.1/0014-x86-Properly-add-X86_ISA_1_NEEDED-property.patch new file mode 100644 index 0000000000..356914c999 --- /dev/null +++ b/package/binutils/2.31.1/0014-x86-Properly-add-X86_ISA_1_NEEDED-property.patch @@ -0,0 +1,140 @@ +From 28a27bdbb9500797e6767f80c8128b09112aeed5 Mon Sep 17 00:00:00 2001 +From: "H.J. Lu" <hjl.tools@gmail.com> +Date: Sat, 11 Aug 2018 06:41:33 -0700 +Subject: [PATCH] x86: Properly add X86_ISA_1_NEEDED property + +Existing properties may be removed during property merging. We avoid +adding X86_ISA_1_NEEDED property only if existing properties won't be +removed. + +bfd/ + + PR ld/23428 + * elfxx-x86.c (_bfd_x86_elf_link_setup_gnu_properties): Don't + add X86_ISA_1_NEEDED property only if existing properties won't + be removed. + +ld/ + + PR ld/23428 + * testsuite/ld-elf/dummy.s: New file. + * testsuite/ld-elf/linux-x86.S: Add X86_FEATURE_1_AND property. + * testsuite/ld-elf/linux-x86.exp: Add dummy.s to pr23428. + +(cherry picked from commit ab9e342807d132182892de1be1a92d6e91a5c1da) +Signed-off-by: Norbert Lange <nolange79@gmail.com> +--- + bfd/ChangeLog | 7 +++++++ + bfd/elfxx-x86.c | 28 ++++++++++++++++++++++------ + ld/ChangeLog | 7 +++++++ + ld/testsuite/ld-elf/dummy.s | 1 + + ld/testsuite/ld-elf/linux-x86.S | 28 ++++++++++++++++++++++++++++ + ld/testsuite/ld-elf/linux-x86.exp | 2 +- + 6 files changed, 66 insertions(+), 7 deletions(-) + create mode 100644 ld/testsuite/ld-elf/dummy.s + +diff --git a/bfd/elfxx-x86.c b/bfd/elfxx-x86.c +index 7ccfd25..2d8f7b6 100644 +--- a/bfd/elfxx-x86.c ++++ b/bfd/elfxx-x86.c +@@ -2588,7 +2588,6 @@ _bfd_x86_elf_link_setup_gnu_properties + prop->pr_kind = property_number; + } + else if (has_text +- && elf_properties (ebfd) == NULL + && elf_tdata (info->output_bfd)->o->build_id.sec == NULL + && !htab->elf.dynamic_sections_created + && !info->traditional_format +@@ -2598,11 +2597,28 @@ _bfd_x86_elf_link_setup_gnu_properties + /* If the separate code program header is needed, make sure + that the first read-only PT_LOAD segment has no code by + adding a GNU_PROPERTY_X86_ISA_1_NEEDED note. */ +- prop = _bfd_elf_get_property (ebfd, +- GNU_PROPERTY_X86_ISA_1_NEEDED, +- 4); +- prop->u.number = GNU_PROPERTY_X86_ISA_1_486; +- prop->pr_kind = property_number; ++ elf_property_list *list; ++ bfd_boolean need_property = TRUE; ++ ++ for (list = elf_properties (ebfd); list; list = list->next) ++ switch (list->property.pr_type) ++ { ++ case GNU_PROPERTY_STACK_SIZE: ++ case GNU_PROPERTY_NO_COPY_ON_PROTECTED: ++ case GNU_PROPERTY_X86_ISA_1_NEEDED: ++ /* These properties won't be removed during merging. */ ++ need_property = FALSE; ++ break; ++ } ++ ++ if (need_property) ++ { ++ prop = _bfd_elf_get_property (ebfd, ++ GNU_PROPERTY_X86_ISA_1_NEEDED, ++ 4); ++ prop->u.number = GNU_PROPERTY_X86_ISA_1_486; ++ prop->pr_kind = property_number; ++ } + } + + /* Create the GNU property note section if needed. */ +diff --git a/ld/testsuite/ld-elf/dummy.s b/ld/testsuite/ld-elf/dummy.s +new file mode 100644 +index 0000000..403f980 +--- /dev/null ++++ b/ld/testsuite/ld-elf/dummy.s +@@ -0,0 +1 @@ ++# Dummy +diff --git a/ld/testsuite/ld-elf/linux-x86.S b/ld/testsuite/ld-elf/linux-x86.S +index bdf40c6..d94abc1 100644 +--- a/ld/testsuite/ld-elf/linux-x86.S ++++ b/ld/testsuite/ld-elf/linux-x86.S +@@ -61,3 +61,31 @@ syscall: + ret /* Return to caller. */ + .size syscall, .-syscall + .section .note.GNU-stack,"",@progbits ++ ++ .section ".note.gnu.property", "a" ++#ifdef __LP64__ ++ .p2align 3 ++#else ++ .p2align 2 ++#endif ++ .long 1f - 0f /* name length */ ++ .long 5f - 2f /* data length */ ++ .long 5 /* note type */ ++0: .asciz "GNU" /* vendor name */ ++1: ++#ifdef __LP64__ ++ .p2align 3 ++#else ++ .p2align 2 ++#endif ++2: .long 0xc0000002 /* pr_type. */ ++ .long 4f - 3f /* pr_datasz. */ ++3: ++ .long 0x2 ++4: ++#ifdef __LP64__ ++ .p2align 3 ++#else ++ .p2align 2 ++#endif ++5: +diff --git a/ld/testsuite/ld-elf/linux-x86.exp b/ld/testsuite/ld-elf/linux-x86.exp +index 36217c6..f6f5a80 100644 +--- a/ld/testsuite/ld-elf/linux-x86.exp ++++ b/ld/testsuite/ld-elf/linux-x86.exp +@@ -37,7 +37,7 @@ run_ld_link_exec_tests [list \ + "Run PR ld/23428 test" \ + "--no-dynamic-linker -z separate-code" \ + "" \ +- { linux-x86.S pr23428.c } \ ++ { linux-x86.S pr23428.c dummy.s } \ + "pr23428" \ + "pass.out" \ + "$NOPIE_CFLAGS -fno-asynchronous-unwind-tables" \ +-- +2.9.3 + diff --git a/package/busybox/0004-udhcpc-check-that-4-byte-options-are-indeed-4-byte-closes-11506.patch b/package/busybox/0004-udhcpc-check-that-4-byte-options-are-indeed-4-byte-closes-11506.patch new file mode 100644 index 0000000000..b40979e359 --- /dev/null +++ b/package/busybox/0004-udhcpc-check-that-4-byte-options-are-indeed-4-byte-closes-11506.patch @@ -0,0 +1,137 @@ +From 6d3b4bb24da9a07c263f3c1acf8df85382ff562c Mon Sep 17 00:00:00 2001 +From: Denys Vlasenko <vda.linux@googlemail.com> +Date: Mon, 17 Dec 2018 18:07:18 +0100 +Subject: udhcpc: check that 4-byte options are indeed 4-byte, closes 11506 + +function old new delta +udhcp_get_option32 - 27 +27 +udhcp_get_option 231 248 +17 +------------------------------------------------------------------------------ +(add/remove: 1/0 grow/shrink: 1/0 up/down: 44/0) Total: 44 bytes + +Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com> +Signed-off-by: Jared Bents <jared.bents@rockwellcollins.com> +--- + networking/udhcp/common.c | 19 +++++++++++++++++++ + networking/udhcp/common.h | 4 ++++ + networking/udhcp/dhcpc.c | 6 +++--- + networking/udhcp/dhcpd.c | 6 +++--- + 4 files changed, 29 insertions(+), 6 deletions(-) + +diff --git a/networking/udhcp/common.c b/networking/udhcp/common.c +index e5fd74f91..41b05b855 100644 +--- a/networking/udhcp/common.c ++++ b/networking/udhcp/common.c +@@ -272,6 +272,15 @@ uint8_t* FAST_FUNC udhcp_get_option(struct dhcp_packet *packet, int code) + goto complain; /* complain and return NULL */ + + if (optionptr[OPT_CODE] == code) { ++ if (optionptr[OPT_LEN] == 0) { ++ /* So far no valid option with length 0 known. ++ * Having this check means that searching ++ * for DHCP_MESSAGE_TYPE need not worry ++ * that returned pointer might be unsafe ++ * to dereference. ++ */ ++ goto complain; /* complain and return NULL */ ++ } + log_option("option found", optionptr); + return optionptr + OPT_DATA; + } +@@ -289,6 +298,16 @@ uint8_t* FAST_FUNC udhcp_get_option(struct dhcp_packet *packet, int code) + return NULL; + } + ++uint8_t* FAST_FUNC udhcp_get_option32(struct dhcp_packet *packet, int code) ++{ ++ uint8_t *r = udhcp_get_option(packet, code); ++ if (r) { ++ if (r[-1] != 4) ++ r = NULL; ++ } ++ return r; ++} ++ + /* Return the position of the 'end' option (no bounds checking) */ + int FAST_FUNC udhcp_end_option(uint8_t *optionptr) + { +diff --git a/networking/udhcp/common.h b/networking/udhcp/common.h +index 7ad603d33..9511152ff 100644 +--- a/networking/udhcp/common.h ++++ b/networking/udhcp/common.h +@@ -205,6 +205,10 @@ extern const uint8_t dhcp_option_lengths[] ALIGN1; + unsigned FAST_FUNC udhcp_option_idx(const char *name, const char *option_strings); + + uint8_t *udhcp_get_option(struct dhcp_packet *packet, int code) FAST_FUNC; ++/* Same as above + ensures that option length is 4 bytes ++ * (returns NULL if size is different) ++ */ ++uint8_t *udhcp_get_option32(struct dhcp_packet *packet, int code) FAST_FUNC; + int udhcp_end_option(uint8_t *optionptr) FAST_FUNC; + void udhcp_add_binary_option(struct dhcp_packet *packet, uint8_t *addopt) FAST_FUNC; + #if ENABLE_UDHCPC || ENABLE_UDHCPD +diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c +index 4b23e4d39..5b3fd531c 100644 +--- a/networking/udhcp/dhcpc.c ++++ b/networking/udhcp/dhcpc.c +@@ -1691,7 +1691,7 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv) + * They say ISC DHCP client supports this case. + */ + server_addr = 0; +- temp = udhcp_get_option(&packet, DHCP_SERVER_ID); ++ temp = udhcp_get_option32(&packet, DHCP_SERVER_ID); + if (!temp) { + bb_error_msg("no server ID, using 0.0.0.0"); + } else { +@@ -1718,7 +1718,7 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv) + struct in_addr temp_addr; + uint8_t *temp; + +- temp = udhcp_get_option(&packet, DHCP_LEASE_TIME); ++ temp = udhcp_get_option32(&packet, DHCP_LEASE_TIME); + if (!temp) { + bb_error_msg("no lease time with ACK, using 1 hour lease"); + lease_seconds = 60 * 60; +@@ -1813,7 +1813,7 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv) + uint32_t svid; + uint8_t *temp; + +- temp = udhcp_get_option(&packet, DHCP_SERVER_ID); ++ temp = udhcp_get_option32(&packet, DHCP_SERVER_ID); + if (!temp) { + non_matching_svid: + log1("received DHCP NAK with wrong" +diff --git a/networking/udhcp/dhcpd.c b/networking/udhcp/dhcpd.c +index a8cd3f03b..477856d11 100644 +--- a/networking/udhcp/dhcpd.c ++++ b/networking/udhcp/dhcpd.c +@@ -640,7 +640,7 @@ static void add_server_options(struct dhcp_packet *packet) + static uint32_t select_lease_time(struct dhcp_packet *packet) + { + uint32_t lease_time_sec = server_config.max_lease_sec; +- uint8_t *lease_time_opt = udhcp_get_option(packet, DHCP_LEASE_TIME); ++ uint8_t *lease_time_opt = udhcp_get_option32(packet, DHCP_LEASE_TIME); + if (lease_time_opt) { + move_from_unaligned32(lease_time_sec, lease_time_opt); + lease_time_sec = ntohl(lease_time_sec); +@@ -987,7 +987,7 @@ int udhcpd_main(int argc UNUSED_PARAM, char **argv) + } + + /* Get SERVER_ID if present */ +- server_id_opt = udhcp_get_option(&packet, DHCP_SERVER_ID); ++ server_id_opt = udhcp_get_option32(&packet, DHCP_SERVER_ID); + if (server_id_opt) { + uint32_t server_id_network_order; + move_from_unaligned32(server_id_network_order, server_id_opt); +@@ -1011,7 +1011,7 @@ int udhcpd_main(int argc UNUSED_PARAM, char **argv) + } + + /* Get REQUESTED_IP if present */ +- requested_ip_opt = udhcp_get_option(&packet, DHCP_REQUESTED_IP); ++ requested_ip_opt = udhcp_get_option32(&packet, DHCP_REQUESTED_IP); + if (requested_ip_opt) { + move_from_unaligned32(requested_nip, requested_ip_opt); + } +-- +cgit v1.2.1 + diff --git a/package/busybox/0005-udhcpc-when-decoding-DHCP_SUBNET-ensure-it-is-4-bytes-long.patch b/package/busybox/0005-udhcpc-when-decoding-DHCP_SUBNET-ensure-it-is-4-bytes-long.patch new file mode 100644 index 0000000000..05939db4ab --- /dev/null +++ b/package/busybox/0005-udhcpc-when-decoding-DHCP_SUBNET-ensure-it-is-4-bytes-long.patch @@ -0,0 +1,58 @@ +From 74d9f1ba37010face4bd1449df4d60dd84450b06 Mon Sep 17 00:00:00 2001 +From: Denys Vlasenko <vda.linux@googlemail.com> +Date: Mon, 7 Jan 2019 15:33:42 +0100 +Subject: udhcpc: when decoding DHCP_SUBNET, ensure it is 4 bytes long + +function old new delta +udhcp_run_script 795 801 +6 + +Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com> +Signed-off-by: Jared Bents <jared.bents@rockwellcollins.com> +--- + networking/udhcp/common.c | 2 +- + networking/udhcp/common.h | 2 +- + networking/udhcp/dhcpc.c | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/networking/udhcp/common.c b/networking/udhcp/common.c +index 4c2221b77..fc4de5716 100644 +--- a/networking/udhcp/common.c ++++ b/networking/udhcp/common.c +@@ -302,7 +302,7 @@ uint8_t* FAST_FUNC udhcp_get_option32(struct dhcp_packet *packet, int code) + { + uint8_t *r = udhcp_get_option(packet, code); + if (r) { +- if (r[-1] != 4) ++ if (r[-OPT_DATA + OPT_LEN] != 4) + r = NULL; + } + return r; +diff --git a/networking/udhcp/common.h b/networking/udhcp/common.h +index 9511152ff..62f9a2a4a 100644 +--- a/networking/udhcp/common.h ++++ b/networking/udhcp/common.h +@@ -119,7 +119,7 @@ enum { + //#define DHCP_TIME_SERVER 0x04 /* RFC 868 time server (32-bit, 0 = 1.1.1900) */ + //#define DHCP_NAME_SERVER 0x05 /* IEN 116 _really_ ancient kind of NS */ + //#define DHCP_DNS_SERVER 0x06 +-//#define DHCP_LOG_SERVER 0x07 /* port 704 UDP log (not syslog) ++//#define DHCP_LOG_SERVER 0x07 /* port 704 UDP log (not syslog) */ + //#define DHCP_COOKIE_SERVER 0x08 /* "quote of the day" server */ + //#define DHCP_LPR_SERVER 0x09 + #define DHCP_HOST_NAME 0x0c /* 12: either client informs server or server gives name to client */ +diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c +index 5b3fd531c..dcec8cdfd 100644 +--- a/networking/udhcp/dhcpc.c ++++ b/networking/udhcp/dhcpc.c +@@ -531,7 +531,7 @@ static char **fill_envp(struct dhcp_packet *packet) + temp = udhcp_get_option(packet, code); + *curr = xmalloc_optname_optval(temp, &dhcp_optflags[i], opt_name); + putenv(*curr++); +- if (code == DHCP_SUBNET) { ++ if (code == DHCP_SUBNET && temp[-OPT_DATA + OPT_LEN] == 4) { + /* Subnet option: make things like "$ip/$mask" possible */ + uint32_t subnet; + move_from_unaligned32(subnet, temp); +-- +cgit v1.2.1 + diff --git a/package/busybox/busybox.config b/package/busybox/busybox.config index 38de13d4d9..1d9560d655 100644 --- a/package/busybox/busybox.config +++ b/package/busybox/busybox.config @@ -321,7 +321,7 @@ CONFIG_UNIQ=y CONFIG_UNLINK=y CONFIG_USLEEP=y CONFIG_UUDECODE=y -# CONFIG_BASE64 is not set +CONFIG_BASE64=y CONFIG_UUENCODE=y CONFIG_WC=y # CONFIG_FEATURE_WC_LARGE is not set diff --git a/package/clamav/clamav.hash b/package/clamav/clamav.hash index 9ac68e7607..4b61cd9654 100644 --- a/package/clamav/clamav.hash +++ b/package/clamav/clamav.hash @@ -1,5 +1,5 @@ # Locally calculated -sha256 fa368fa9b2f57638696150c7d108b06dec284e8d8e3b8e702c784947c01fb806 clamav-0.101.1.tar.gz +sha256 0a12ebdf6ff7a74c0bde2bdc2b55cae33449e6dd953ec90824a9e01291277634 clamav-0.101.2.tar.gz sha256 0c4fd2fa9733fc9122503797648710851e4ee6d9e4969dd33fcbd8c63cd2f584 COPYING sha256 d72a145c90918184a05ef65a04c9e6f7466faa59bc1b82c8f6a8ddc7ddcb9bed COPYING.bzip2 sha256 dfb818a0d41411c6fb1c193c68b73018ceadd1994bda41ad541cbff292894bc6 COPYING.file diff --git a/package/clamav/clamav.mk b/package/clamav/clamav.mk index 8900b4819a..5bb0aa09d9 100644 --- a/package/clamav/clamav.mk +++ b/package/clamav/clamav.mk @@ -4,7 +4,7 @@ # ################################################################################ -CLAMAV_VERSION = 0.101.1 +CLAMAV_VERSION = 0.101.2 CLAMAV_SITE = https://www.clamav.net/downloads/production CLAMAV_LICENSE = GPL-2.0 CLAMAV_LICENSE_FILES = COPYING COPYING.bzip2 COPYING.file COPYING.getopt \ diff --git a/package/cups/0005-Fix-builds-without-PAM-Issue-5283.patch b/package/cups/0005-Fix-builds-without-PAM-Issue-5283.patch deleted file mode 100644 index ff242f8276..0000000000 --- a/package/cups/0005-Fix-builds-without-PAM-Issue-5283.patch +++ /dev/null @@ -1,189 +0,0 @@ -From 570933a6a3597371bae1beeb754ee8711d6305ab Mon Sep 17 00:00:00 2001 -From: Michael R Sweet <michael.r.sweet@gmail.com> -Date: Mon, 2 Apr 2018 20:05:13 -0400 -Subject: [PATCH] Fix builds without PAM (Issue #5283) - -[baruch: drop CHANGES.md hunk] -Signed-off-by: Baruch Siach <baruch@tkos.co.il> ---- -Upstream status: commit 570933a6a3 - - CHANGES.md | 8 ++- - scheduler/auth.c | 134 ++--------------------------------------------- - 2 files changed, 11 insertions(+), 131 deletions(-) - -diff --git a/scheduler/auth.c b/scheduler/auth.c -index 8b134b5d7257..fa4e2715de34 100644 ---- a/scheduler/auth.c -+++ b/scheduler/auth.c -@@ -1,8 +1,8 @@ - /* - * Authorization routines for the CUPS scheduler. - * -- * Copyright 2007-2016 by Apple Inc. -- * Copyright 1997-2007 by Easy Software Products, all rights reserved. -+ * Copyright © 2007-2018 by Apple Inc. -+ * Copyright © 1997-2007 by Easy Software Products, all rights reserved. - * - * This file contains Kerberos support code, copyright 2006 by - * Jelmer Vernooij. -@@ -71,9 +71,6 @@ static int check_authref(cupsd_client_t *con, const char *right); - static int compare_locations(cupsd_location_t *a, - cupsd_location_t *b); - static cupsd_authmask_t *copy_authmask(cupsd_authmask_t *am, void *data); --#if !HAVE_LIBPAM --static char *cups_crypt(const char *pw, const char *salt); --#endif /* !HAVE_LIBPAM */ - static void free_authmask(cupsd_authmask_t *am, void *data); - #if HAVE_LIBPAM - static int pam_func(int, const struct pam_message **, -@@ -694,14 +691,14 @@ cupsdAuthorize(cupsd_client_t *con) /* I - Client connection */ - * client... - */ - -- pass = cups_crypt(password, pw->pw_passwd); -+ pass = crypt(password, pw->pw_passwd); - - if (!pass || strcmp(pw->pw_passwd, pass)) - { - # ifdef HAVE_SHADOW_H - if (spw) - { -- pass = cups_crypt(password, spw->sp_pwdp); -+ pass = crypt(password, spw->sp_pwdp); - - if (pass == NULL || strcmp(spw->sp_pwdp, pass)) - { -@@ -1995,129 +1992,6 @@ copy_authmask(cupsd_authmask_t *mask, /* I - Existing auth mask */ - } - - --#if !HAVE_LIBPAM --/* -- * 'cups_crypt()' - Encrypt the password using the DES or MD5 algorithms, -- * as needed. -- */ -- --static char * /* O - Encrypted password */ --cups_crypt(const char *pw, /* I - Password string */ -- const char *salt) /* I - Salt (key) string */ --{ -- if (!strncmp(salt, "$1$", 3)) -- { -- /* -- * Use MD5 passwords without the benefit of PAM; this is for -- * Slackware Linux, and the algorithm was taken from the -- * old shadow-19990827/lib/md5crypt.c source code... :( -- */ -- -- int i; /* Looping var */ -- unsigned long n; /* Output number */ -- int pwlen; /* Length of password string */ -- const char *salt_end; /* End of "salt" data for MD5 */ -- char *ptr; /* Pointer into result string */ -- _cups_md5_state_t state; /* Primary MD5 state info */ -- _cups_md5_state_t state2; /* Secondary MD5 state info */ -- unsigned char digest[16]; /* MD5 digest result */ -- static char result[120]; /* Final password string */ -- -- -- /* -- * Get the salt data between dollar signs, e.g. $1$saltdata$md5. -- * Get a maximum of 8 characters of salt data after $1$... -- */ -- -- for (salt_end = salt + 3; *salt_end && (salt_end - salt) < 11; salt_end ++) -- if (*salt_end == '$') -- break; -- -- /* -- * Compute the MD5 sum we need... -- */ -- -- pwlen = strlen(pw); -- -- _cupsMD5Init(&state); -- _cupsMD5Append(&state, (unsigned char *)pw, pwlen); -- _cupsMD5Append(&state, (unsigned char *)salt, salt_end - salt); -- -- _cupsMD5Init(&state2); -- _cupsMD5Append(&state2, (unsigned char *)pw, pwlen); -- _cupsMD5Append(&state2, (unsigned char *)salt + 3, salt_end - salt - 3); -- _cupsMD5Append(&state2, (unsigned char *)pw, pwlen); -- _cupsMD5Finish(&state2, digest); -- -- for (i = pwlen; i > 0; i -= 16) -- _cupsMD5Append(&state, digest, i > 16 ? 16 : i); -- -- for (i = pwlen; i > 0; i >>= 1) -- _cupsMD5Append(&state, (unsigned char *)((i & 1) ? "" : pw), 1); -- -- _cupsMD5Finish(&state, digest); -- -- for (i = 0; i < 1000; i ++) -- { -- _cupsMD5Init(&state); -- -- if (i & 1) -- _cupsMD5Append(&state, (unsigned char *)pw, pwlen); -- else -- _cupsMD5Append(&state, digest, 16); -- -- if (i % 3) -- _cupsMD5Append(&state, (unsigned char *)salt + 3, salt_end - salt - 3); -- -- if (i % 7) -- _cupsMD5Append(&state, (unsigned char *)pw, pwlen); -- -- if (i & 1) -- _cupsMD5Append(&state, digest, 16); -- else -- _cupsMD5Append(&state, (unsigned char *)pw, pwlen); -- -- _cupsMD5Finish(&state, digest); -- } -- -- /* -- * Copy the final sum to the result string and return... -- */ -- -- memcpy(result, salt, (size_t)(salt_end - salt)); -- ptr = result + (salt_end - salt); -- *ptr++ = '$'; -- -- for (i = 0; i < 5; i ++, ptr += 4) -- { -- n = ((((unsigned)digest[i] << 8) | (unsigned)digest[i + 6]) << 8); -- -- if (i < 4) -- n |= (unsigned)digest[i + 12]; -- else -- n |= (unsigned)digest[5]; -- -- to64(ptr, n, 4); -- } -- -- to64(ptr, (unsigned)digest[11], 2); -- ptr += 2; -- *ptr = '\0'; -- -- return (result); -- } -- else -- { -- /* -- * Use the standard crypt() function... -- */ -- -- return (crypt(pw, salt)); -- } --} --#endif /* !HAVE_LIBPAM */ -- -- - /* - * 'free_authmask()' - Free function for auth masks. - */ --- -2.17.0 - diff --git a/package/cups/cups.hash b/package/cups/cups.hash index a19b3b09a6..3d238d61e6 100644 --- a/package/cups/cups.hash +++ b/package/cups/cups.hash @@ -1,3 +1,3 @@ # Locally calculated: -sha256 3c4b637b737077565ccdfbd5f61785d03f49461ae736fcc2c0ffaf41d2c6ea6a cups-2.2.7-source.tar.gz +sha256 77c8b2b3bb7fe8b5fbfffc307f2c817b2d7ec67b657f261a1dd1c61ab81205bb cups-2.2.10-source.tar.gz sha256 6e0e0ffbde118aae709f7ef65590de9071e8b2cd322f84fd645c6b64f3cc452c LICENSE.txt diff --git a/package/cups/cups.mk b/package/cups/cups.mk index 8f33824879..b91fe7ac4c 100644 --- a/package/cups/cups.mk +++ b/package/cups/cups.mk @@ -4,7 +4,7 @@ # ################################################################################ -CUPS_VERSION = 2.2.7 +CUPS_VERSION = 2.2.10 CUPS_SOURCE = cups-$(CUPS_VERSION)-source.tar.gz CUPS_SITE = https://github.com/apple/cups/releases/download/v$(CUPS_VERSION) CUPS_LICENSE = GPL-2.0, LGPL-2.0 diff --git a/package/efl/0001-evas-gl-make-GLintptr-etc.-also-ndefed-for-GL_VERSIO.patch b/package/efl/0001-evas-gl-make-GLintptr-etc.-also-ndefed-for-GL_VERSIO.patch new file mode 100644 index 0000000000..b64a200ffb --- /dev/null +++ b/package/efl/0001-evas-gl-make-GLintptr-etc.-also-ndefed-for-GL_VERSIO.patch @@ -0,0 +1,34 @@ +From d045dd99acdd47be238642d4f9384dccacde2b42 Mon Sep 17 00:00:00 2001 +From: "Carsten Haitzler (Rasterman)" <raster@rasterman.com> +Date: Sat, 15 Dec 2018 16:19:01 +0000 +Subject: [PATCH] evas gl - make GLintptr etc. also ndefed for GL_VERSION_1_5 + fix typedef + +It seems that GL_VERSION_1_5 define == these provided by gl already. At +least reading the mesa headers I do, so this should fix T7502 + +Signed-off-by: Vadim Kochan <vadim4j@gmail.com> +--- + src/lib/evas/Evas_GL.h | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/lib/evas/Evas_GL.h b/src/lib/evas/Evas_GL.h +index fa3e6f4..5524d82 100644 +--- a/src/lib/evas/Evas_GL.h ++++ b/src/lib/evas/Evas_GL.h +@@ -4272,9 +4272,11 @@ typedef signed int GLfixed; // Changed khronos_int32_t + + #ifndef GL_ES_VERSION_2_0 + /* GL types for handling large vertex buffer objects */ +-#include <stddef.h> ++# ifndef GL_VERSION_1_5 ++# include <stddef.h> + typedef ptrdiff_t GLintptr; // Changed khronos_intptr_t + typedef ptrdiff_t GLsizeiptr; // Changed khronos_ssize_t ++# endif + #endif + + /* Some definitions from GLES 3.0. +-- +2.14.1 + diff --git a/package/eigen/eigen.hash b/package/eigen/eigen.hash index 4a1bcdf93d..e5c8404022 100644 --- a/package/eigen/eigen.hash +++ b/package/eigen/eigen.hash @@ -1,5 +1,5 @@ # Locally computed -sha256 dd254beb0bafc695d0f62ae1a222ff85b52dbaa3a16f76e781dce22d0d20a4a6 3.3.4.tar.bz2 +sha256 9f13cf90dedbe3e52a19f43000d71fdf72e986beb9a5436dddcd61ff9d77a3ce 3.3.7.tar.bz2 sha256 4f877e5ae4672568ef82cfd0023e2cef4a7cf55d867ab249efc9569a7eb9e5b1 COPYING.BSD sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING.GPL sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LGPL diff --git a/package/eigen/eigen.mk b/package/eigen/eigen.mk index 27c4e212a9..5c9e028442 100644 --- a/package/eigen/eigen.mk +++ b/package/eigen/eigen.mk @@ -4,7 +4,7 @@ # ################################################################################ -EIGEN_VERSION = 3.3.4 +EIGEN_VERSION = 3.3.7 EIGEN_SOURCE = $(EIGEN_VERSION).tar.bz2 EIGEN_SITE = https://bitbucket.org/eigen/eigen/get EIGEN_LICENSE = MPL2, BSD-3-Clause, LGPL-2.1 diff --git a/package/fetchmail/0002-enable-libressl.patch b/package/fetchmail/0001-enable-libressl.patch index a98e19dda4..a98e19dda4 100644 --- a/package/fetchmail/0002-enable-libressl.patch +++ b/package/fetchmail/0001-enable-libressl.patch diff --git a/package/fetchmail/0001-fix-openssl-static-link.patch b/package/fetchmail/0001-fix-openssl-static-link.patch deleted file mode 100644 index 1a5f4d6f71..0000000000 --- a/package/fetchmail/0001-fix-openssl-static-link.patch +++ /dev/null @@ -1,30 +0,0 @@ -Fix checking for statically build OpenSSL with libz dependency - -Fixes -http://autobuild.buildroot.net/results/48a/48ad6d3659cf1f04581b7e3d115bebf454ff17fd/ - -configure: Enabling OpenSSL support in /home/br/br/output/host/usr/i486-buildroot-linux-uclibc/sysroot/usr. -checking for additional library dependencies of SSL... error -configure: error: cannot link with SSL - check config.log - -In config.log multiple linking errors to libz can be found: - -configure:10099: /home/br/br/output/host/usr/bin/i486-ctng-linux-uclibc-gcc -o - conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64 - /home/br/br/output/host/usr/i486-buildroot-linux-uclibc/sysroot/usr/lib/libcrypto.a(c_zlib.o): - In function `zlib_stateful_c_zlib.c:(.text+0x56): undefined reference to `inflate' - -Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> - -diff -uNr fetchmail-6.3.26.org/configure.ac fetchmail-6.3.26/configure.ac ---- fetchmail-6.3.26.org/configure.ac 2013-04-23 22:51:10.000000000 +0200 -+++ fetchmail-6.3.26/configure.ac 2014-07-27 09:20:25.000000000 +0200 -@@ -778,7 +778,7 @@ - AC_MSG_ERROR([SSL support enabled, but OpenSSL not found]) - fi - LDFLAGS="$LDFLAGS -L$with_ssl/lib" -- LIBS="$LIBS -lssl -lcrypto" -+ LIBS="-lssl -lcrypto $LIBS" - dnl check if -ldl is needed - AC_MSG_CHECKING([for additional library dependencies of SSL]) - found=0 diff --git a/package/fetchmail/0002-configure.ac-use-pkg-config-to-find-openssl.patch b/package/fetchmail/0002-configure.ac-use-pkg-config-to-find-openssl.patch new file mode 100644 index 0000000000..aefed7f2e4 --- /dev/null +++ b/package/fetchmail/0002-configure.ac-use-pkg-config-to-find-openssl.patch @@ -0,0 +1,69 @@ +From 1ed0af7f1bbcaccbd7356bd90596f5c942b64720 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> +Date: Fri, 22 Mar 2019 20:24:54 +0100 +Subject: [PATCH 1/1] configure.ac: use pkg-config to find openssl + +openssl can have multiples dependencies such as libatomic on sparcv8 +32 bits + +Fixes: + - http://autobuild.buildroot.org/results/58e5aa7c6ba8fe7474071d7a3cba6ed3a1b4cff4 + +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Upstream status: +https://gitlab.com/fetchmail/fetchmail/merge_requests/14] +--- + configure.ac | 37 +++++++++++++++++++------------------ + 1 file changed, 19 insertions(+), 18 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 16b0fcba..3a75ec6e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -778,24 +778,25 @@ then + else + AC_MSG_ERROR([SSL support enabled, but OpenSSL not found]) + fi +- LDFLAGS="$LDFLAGS -L$with_ssl/lib" +- LIBS="$LIBS -lssl -lcrypto" +- dnl check if -ldl is needed +- AC_MSG_CHECKING([for additional library dependencies of SSL]) +- found=0 +- save_LIBS="$LIBS" +- for i in "" "-ldl" ; do +- LIBS="$LDFLAGS $save_LIBS $i" +- AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <openssl/ssl.h>],[SSL_library_init()])],[found=1; break]) +- done +- if test $found = 0 ; then +- AC_MSG_RESULT([error]) +- AC_MSG_ERROR([cannot link with SSL - check config.log]) +- fi +- LIBS="$save_LIBS $i" +- if test "$i" = "" ; then i="(none)" ; fi +- AC_MSG_RESULT($i) +- dnl XXX FIXME: use pkg-config if available! ++ PKG_CHECK_MODULES([SSL],[libssl libcrypto],[LIBS="$LIBS $SSL_LIBS"],[ ++ LDFLAGS="$LDFLAGS -L$with_ssl/lib" ++ LIBS="$LIBS -lssl -lcrypto" ++ dnl check if -ldl is needed ++ AC_MSG_CHECKING([for additional library dependencies of SSL]) ++ found=0 ++ save_LIBS="$LIBS" ++ for i in "" "-ldl" ; do ++ LIBS="$LDFLAGS $save_LIBS $i" ++ AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <openssl/ssl.h>],[SSL_library_init()])],[found=1; break]) ++ done ++ if test $found = 0 ; then ++ AC_MSG_RESULT([error]) ++ AC_MSG_ERROR([cannot link with SSL - check config.log]) ++ fi ++ LIBS="$save_LIBS $i" ++ if test "$i" = "" ; then i="(none)" ; fi ++ AC_MSG_RESULT($i) ++ ]) + AC_DEFINE(SSL_ENABLE) + else + AC_MSG_WARN(Disabling SSL support.) +-- +2.20.1 + diff --git a/package/fetchmail/fetchmail.mk b/package/fetchmail/fetchmail.mk index 37bbeabf62..41505e8637 100644 --- a/package/fetchmail/fetchmail.mk +++ b/package/fetchmail/fetchmail.mk @@ -13,17 +13,12 @@ FETCHMAIL_LICENSE_FILES = COPYING FETCHMAIL_AUTORECONF = YES FETCHMAIL_GETTEXTIZE = YES -# needed to help fetchmail detecting the availability of openssl, -# because it doesn't use pkg-config -ifeq ($(BR2_STATIC_LIBS),y) -FETCHMAIL_CONF_ENV += LIBS="-lz" -endif - FETCHMAIL_CONF_OPTS = \ --with-ssl=$(STAGING_DIR)/usr FETCHMAIL_DEPENDENCIES = \ ca-certificates \ + host-pkgconf \ openssl \ $(TARGET_NLS_DEPENDENCIES) diff --git a/package/file/file.hash b/package/file/file.hash index c279dff6e1..7948e856ee 100644 --- a/package/file/file.hash +++ b/package/file/file.hash @@ -1,5 +1,7 @@ -# Locally calculated -sha256 f15a50dbbfa83fec0bd1161e8e191b092ec832720e30cd14536e044ac623b20a file-5.34.tar.gz -sha256 3c0ad13c36f891a9b4f951e59eb2fc108065a46f849697cc6fd3cdb41cc23a3d COPYING -sha256 d98ee4d8d95e7d021a5dfc41f137ecc3b624a7b98e8bd793130202d12a21ed57 src/mygetopt.h -sha256 85e358d575ad4ac5b38b623a25b24246ccff3c7e680d930c0a9ff5228fe434b6 src/vasprintf.c +# Locally calculated after verifying signature +# ftp://ftp.astron.com/pub/file/file-5.36.tar.gz.asc +# using key BE04995BA8F90ED0C0C176C471112AB16CB33B3A +sha256 fb608290c0fd2405a8f63e5717abf6d03e22e183fb21884413d1edd918184379 file-5.36.tar.gz +sha256 0bfa856a9930bddadbef95d1be1cf4e163c0be618e76ea3275caaf255283e274 COPYING +sha256 4ccb60d623884ef637af4a5bc16b2cb350163e2135e967655837336019a64462 src/mygetopt.h +sha256 7ac061e1a1c840c4dfa0573aec6f3497676c9295b5ec4190d3576646eb1646bf src/vasprintf.c diff --git a/package/file/file.mk b/package/file/file.mk index b5b12978bc..1a835015a7 100644 --- a/package/file/file.mk +++ b/package/file/file.mk @@ -4,7 +4,7 @@ # ################################################################################ -FILE_VERSION = 5.34 +FILE_VERSION = 5.36 FILE_SITE = ftp://ftp.astron.com/pub/file FILE_DEPENDENCIES = host-file zlib HOST_FILE_DEPENDENCIES = host-zlib diff --git a/package/flashrom/0001-platform-Add-riscv-to-known-platforms.patch b/package/flashrom/0001-platform-Add-riscv-to-known-platforms.patch new file mode 100644 index 0000000000..06eb9256e4 --- /dev/null +++ b/package/flashrom/0001-platform-Add-riscv-to-known-platforms.patch @@ -0,0 +1,41 @@ +From a9a03cc6ba71825bfae0d64e1888f33c77345bc3 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 17 Mar 2018 23:08:29 -0700 +Subject: [PATCH] platform: Add riscv to known platforms + +Change-Id: I724a99e2493fcbf71c2fc2d9f6a1ad607c737087 +Signed-off-by: Khem Raj <raj.khem@gmail.com> +Reviewed-on: https://review.coreboot.org/25260 +Tested-by: build bot (Jenkins) <no-reply@coreboot.org> +Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> +Reviewed-by: David Hendricks <david.hendricks@gmail.com> +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Retrieved from: +https://github.com/flashrom/flashrom/commit/a9a03cc6ba71825bfae0d64e1888f33c77345bc3] +--- + platform.h | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/platform.h b/platform.h +index e3b7674ae..65fe85881 100644 +--- a/platform.h ++++ b/platform.h +@@ -69,6 +69,9 @@ + #elif defined (__m68k__) + #define __FLASHROM_ARCH__ "m68k" + #define IS_M68K 1 ++#elif defined (__riscv) ++ #define __FLASHROM_ARCH__ "riscv" ++ #define IS_RISCV 1 + #elif defined (__sh__) + #define __FLASHROM_ARCH__ "sh" + #define IS_SH 1 +@@ -77,7 +80,7 @@ + #define IS_S390 1 + #endif + +-#if !(IS_X86 || IS_MIPS || IS_PPC || IS_ARM || IS_SPARC || IS_ALPHA || IS_HPPA || IS_M68K || IS_SH || IS_S390) ++#if !(IS_X86 || IS_MIPS || IS_PPC || IS_ARM || IS_SPARC || IS_ALPHA || IS_HPPA || IS_M68K || IS_RISCV || IS_SH || IS_S390) + #error Unknown architecture + #endif + diff --git a/package/flashrom/Config.in b/package/flashrom/Config.in index e7844a0a62..c333c29730 100644 --- a/package/flashrom/Config.in +++ b/package/flashrom/Config.in @@ -1,13 +1,18 @@ +config BR2_PACKAGE_FLASHROM_ARCH_SUPPORTS + bool + default y if BR2_aarch64 || BR2_aarch64_be + default y if BR2_arm || BR2_armeb + default y if BR2_i386 || BR2_x86_64 + default y if BR2_m68k + default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el + default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le + default y if BR2_riscv + default y if BR2_sh + default y if BR2_sparc || BR2_sparc64 + config BR2_PACKAGE_FLASHROM bool "flashrom" - depends on BR2_i386 || BR2_x86_64 - depends on BR2_TOOLCHAIN_HAS_THREADS # libusb - select BR2_PACKAGE_PCIUTILS - select BR2_PACKAGE_LIBUSB - select BR2_PACKAGE_LIBUSB_COMPAT - select BR2_PACKAGE_LIBFTDI - # dmidecode is only a runtime dependency - select BR2_PACKAGE_DMIDECODE + depends on BR2_PACKAGE_FLASHROM_ARCH_SUPPORTS help flashrom is a utility for identifying, reading, writing, verifying and erasing flash chips. It is designed to flash @@ -16,7 +21,3 @@ config BR2_PACKAGE_FLASHROM programmer devices. http://flashrom.org/ - -comment "flashrom needs a toolchain w/ threads" - depends on BR2_i386 || BR2_x86_64 - depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/flashrom/flashrom.mk b/package/flashrom/flashrom.mk index 70f47b5a04..733ad7318d 100644 --- a/package/flashrom/flashrom.mk +++ b/package/flashrom/flashrom.mk @@ -7,13 +7,45 @@ FLASHROM_VERSION = 1.0 FLASHROM_SOURCE = flashrom-$(FLASHROM_VERSION).tar.bz2 FLASHROM_SITE = https://download.flashrom.org/releases -FLASHROM_DEPENDENCIES = pciutils libusb libusb-compat libftdi host-pkgconf FLASHROM_LICENSE = GPL-2.0+ FLASHROM_LICENSE_FILES = COPYING +ifeq ($(BR2_PACKAGE_LIBFTDI),y) +FLASHROM_DEPENDENCIES += host-pkgconf libftdi +FLASHROM_MAKE_OPTS += \ + CONFIG_FT2232_SPI=yes \ + CONFIG_USBBLASTER_SPI=yes +else +FLASHROM_MAKE_OPTS += \ + CONFIG_FT2232_SPI=no \ + CONFIG_USBBLASTER_SPI=no +endif + +ifeq ($(BR2_PACKAGE_LIBUSB),y) +FLASHROM_DEPENDENCIES += host-pkgconf libusb +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBUSB1_PROGRAMMERS=yes +else +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBUSB1_PROGRAMMERS=no +endif + +ifeq ($(BR2_PACKAGE_LIBUSB_COMPAT),y) +FLASHROM_DEPENDENCIES += host-pkgconf libusb-compat +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=yes +else +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no +endif + +ifeq ($(BR2_PACKAGE_PCIUTILS),y) +FLASHROM_DEPENDENCIES += pciutils +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBPCI_PROGRAMMERS=yes +else +FLASHROM_MAKE_OPTS += CONFIG_ENABLE_LIBPCI_PROGRAMMERS=no +endif + define FLASHROM_BUILD_CMDS $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="$(TARGET_CFLAGS) -DHAVE_STRNLEN" -C $(@D) + CFLAGS="$(TARGET_CFLAGS) -DHAVE_STRNLEN" \ + $(FLASHROM_MAKE_OPTS) -C $(@D) endef define FLASHROM_INSTALL_TARGET_CMDS diff --git a/package/fltk/fltk.mk b/package/fltk/fltk.mk index 611d79da50..c37a13176c 100644 --- a/package/fltk/fltk.mk +++ b/package/fltk/fltk.mk @@ -54,4 +54,11 @@ else FLTK_CONF_OPTS += --disable-xinerama endif +ifeq ($(BR2_PACKAGE_XLIB_LIBXRENDER),y) +FLTK_DEPENDENCIES += xlib_libXrender +FLTK_CONF_OPTS += --enable-xrender +else +FLTK_CONF_OPTS += --disable-xrender +endif + $(eval $(autotools-package)) diff --git a/package/gerbera/0001-CMakeLists.txt-fix-static-build-with-curl-and-libidn.patch b/package/gerbera/0001-CMakeLists.txt-fix-static-build-with-curl-and-libidn.patch new file mode 100644 index 0000000000..94f742c3f8 --- /dev/null +++ b/package/gerbera/0001-CMakeLists.txt-fix-static-build-with-curl-and-libidn.patch @@ -0,0 +1,41 @@ +From de0e7fe3b56cff79c11aedc89448814fab8d1877 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> +Date: Fri, 8 Mar 2019 19:11:11 +0100 +Subject: [PATCH] MakeLists.txt: fix static build with curl and libidn2 + +curl can be statically linked with libidn2, in this case, build fails: +/accts/mlweber1/rclinux/rc-buildroot-test/scripts/instance-0/output/host/m68k-buildroot-linux-uclibc/sysroot/usr/lib/libcurl.a(libcurl_la-url.o): In function `free_idnconverted_hostname.isra.1': +url.c:(.text+0xf4): undefined reference to `idn2_free' + +To fix this issue, add a call to pkg_check_modules to retrieve any +needed dependencies + +Fixes: + - http://autobuild.buildroot.org/results/be5893b507d22a23951efeea20c18642742cef5a + +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Upstream status: https://github.com/gerbera/gerbera/pull/429] +--- + CMakeLists.txt | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index d0eed230..e6b62c96 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -443,7 +443,11 @@ if(WITH_MYSQL) + endif() + + if(WITH_CURL) +- find_package (CURL REQUIRED) ++ find_package(PkgConfig QUIET) ++ pkg_check_modules (CURL QUIET libcurl) ++ if (NOT CURL_FOUND) ++ find_package (CURL REQUIRED) ++ endif() + if (CURL_FOUND) + include_directories(${CURL_INCLUDE_DIRS}) + target_link_libraries (gerbera ${CURL_LIBRARIES}) +-- +2.20.1 + diff --git a/package/gerbera/0002-cmake-FindFFMPEG-cmake-use-pkgconfig.patch b/package/gerbera/0002-cmake-FindFFMPEG-cmake-use-pkgconfig.patch new file mode 100644 index 0000000000..b5f79173b6 --- /dev/null +++ b/package/gerbera/0002-cmake-FindFFMPEG-cmake-use-pkgconfig.patch @@ -0,0 +1,175 @@ +From fbbc07ce53e884b1603461ee5642d5f02788678d Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> +Date: Thu, 21 Mar 2019 16:32:44 +0100 +Subject: [PATCH] cmake/FindFFMPEG.cmake: use pkgconfig + +ffmpeg has too many optional dependencies (opus, openssl, ...) instead +of trying to find them all one by one, use pkg-config to get them and +fallback on current mechanism + +Fixes: + - http://autobuild.buildroot.org/results/2b99fabd798db84a0fce26ad696c58e54c6ff626 + - http://autobuild.buildroot.org/results/95e410e5ab34c6d4626a58f97c0d2d5e6829a300 + +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Retrieved (and backported) from: +https://github.com/gerbera/gerbera/commit/fbbc07ce53e884b1603461ee5642d5f02788678d] +--- + cmake/FindFFMPEG.cmake | 147 +++++++++++++++++++++-------------------- + 1 file changed, 75 insertions(+), 72 deletions(-) + +diff --git a/cmake/FindFFMPEG.cmake b/cmake/FindFFMPEG.cmake +index 0a4a409f..9548b566 100644 +--- a/cmake/FindFFMPEG.cmake ++++ b/cmake/FindFFMPEG.cmake +@@ -82,70 +82,76 @@ ENDIF (NOT FFMPEG_INCLUDE_DIR) + # ffmpeg uses relative includes such as <ffmpeg/avformat.h> or <libavcodec/avformat.h> + get_filename_component(FFMPEG_INCLUDE_DIR ${FFMPEG_INCLUDE_DIR} ABSOLUTE) + +-FIND_LIBRARY(FFMPEG_avformat_LIBRARY avformat +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_avcodec_LIBRARY avcodec +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_avutil_LIBRARY avutil +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_swresample_LIBRARY swresample +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_vorbis_LIBRARY vorbis +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_dc1394_LIBRARY dc1394_control +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_vorbisenc_LIBRARY vorbisenc +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_theora_LIBRARY theora +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_dts_LIBRARY dts +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_gsm_LIBRARY gsm +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_swscale_LIBRARY swscale +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_z_LIBRARY z +- /usr/local/lib +- /usr/lib +- ) +- +-FIND_LIBRARY(FFMPEG_bz2_LIBRARY bz2 +- /usr/local/lib +- /usr/lib +- ) ++CHECK_STRUCT_HAS_MEMBER("struct AVStream" codecpar libavformat/avformat.h HAVE_AVSTREAM_CODECPAR LANGUAGE C) ++ ++FIND_PACKAGE(PkgConfig QUIET) ++PKG_CHECK_MODULES(FFMPEG QUIET libavformat libavutil) ++IF (NOT FFMPEG_FOUND) ++ FIND_LIBRARY(FFMPEG_avformat_LIBRARY avformat ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_avcodec_LIBRARY avcodec ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_avutil_LIBRARY avutil ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_swresample_LIBRARY swresample ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_vorbis_LIBRARY vorbis ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_dc1394_LIBRARY dc1394_control ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_vorbisenc_LIBRARY vorbisenc ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_theora_LIBRARY theora ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_dts_LIBRARY dts ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_gsm_LIBRARY gsm ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_swscale_LIBRARY swscale ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_z_LIBRARY z ++ /usr/local/lib ++ /usr/lib ++ ) ++ ++ FIND_LIBRARY(FFMPEG_bz2_LIBRARY bz2 ++ /usr/local/lib ++ /usr/lib ++ ) ++ENDIF(NOT FFMPEG_FOUND) + + SET(FFMPEG_LIBRARIES) + IF (FFMPEG_INCLUDE_DIR) +@@ -205,9 +211,6 @@ IF (FFMPEG_INCLUDE_DIR) + ENDIF (FFMPEG_bz2_LIBRARY) + + SET(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} CACHE INTERNAL "All presently found FFMPEG libraries.") +- +- CHECK_STRUCT_HAS_MEMBER("struct AVStream" codecpar libavformat/avformat.h HAVE_AVSTREAM_CODECPAR LANGUAGE C) +- + ENDIF (FFMPEG_avutil_LIBRARY) + ENDIF (FFMPEG_avcodec_LIBRARY) + ENDIF (FFMPEG_avformat_LIBRARY) diff --git a/package/git/git.mk b/package/git/git.mk index 9b176d3661..aec30e3eb3 100644 --- a/package/git/git.mk +++ b/package/git/git.mk @@ -12,9 +12,9 @@ GIT_LICENSE_FILES = COPYING LGPL-2.1 GIT_DEPENDENCIES = zlib $(TARGET_NLS_DEPENDENCIES) ifeq ($(BR2_PACKAGE_OPENSSL),y) -GIT_DEPENDENCIES += openssl +GIT_DEPENDENCIES += host-pkgconf openssl GIT_CONF_OPTS += --with-openssl -GIT_CONF_ENV_LIBS += $(if $(BR2_STATIC_LIBS),-lz) +GIT_MAKE_OPTS += LIB_4_CRYPTO="`$(PKG_CONFIG_HOST_BINARY) --libs libssl libcrypto`" else GIT_CONF_OPTS += --without-openssl endif diff --git a/package/glibc/glibc-2.28-69-g1e5c5303a522764d7e9d2302a60e4a32cdb902f1/glibc.hash b/package/glibc/glibc-2.28-94-g4aeff335ca19286ee2382d8eba794ae5fd49281a/glibc.hash index e83b1caf4c..442ef0d7aa 100644 --- a/package/glibc/glibc-2.28-69-g1e5c5303a522764d7e9d2302a60e4a32cdb902f1/glibc.hash +++ b/package/glibc/glibc-2.28-94-g4aeff335ca19286ee2382d8eba794ae5fd49281a/glibc.hash @@ -1,5 +1,5 @@ # Locally calculated (fetched from Github) -sha256 ebf04c7b00153d6df8beceec0666d4b13e1ac613b40d5774d1b8c6f61c1686e6 glibc-glibc-2.28-69-g1e5c5303a522764d7e9d2302a60e4a32cdb902f1.tar.gz +sha256 295d436aac4dc45afc3b440f85fc4556c03b1140ca0f625ee015c8156d2f52ae glibc-glibc-2.28-94-g4aeff335ca19286ee2382d8eba794ae5fd49281a.tar.gz # Hashes for license files sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/glibc/glibc.mk b/package/glibc/glibc.mk index ec5b3cedc9..cb6f8097dc 100644 --- a/package/glibc/glibc.mk +++ b/package/glibc/glibc.mk @@ -13,7 +13,7 @@ GLIBC_SITE = $(call github,riscv,riscv-glibc,$(GLIBC_VERSION)) else # Generate version string using: # git describe --match 'glibc-*' --abbrev=40 origin/release/MAJOR.MINOR/master -GLIBC_VERSION = glibc-2.28-69-g1e5c5303a522764d7e9d2302a60e4a32cdb902f1 +GLIBC_VERSION = glibc-2.28-94-g4aeff335ca19286ee2382d8eba794ae5fd49281a # Upstream doesn't officially provide an https download link. # There is one (https://sourceware.org/git/glibc.git) but it's not reliable, # sometimes the connection times out. So use an unofficial github mirror. diff --git a/package/gnuradio/Config.in b/package/gnuradio/Config.in index 3fdaea850e..6d0669779f 100644 --- a/package/gnuradio/Config.in +++ b/package/gnuradio/Config.in @@ -56,6 +56,12 @@ config BR2_PACKAGE_GNURADIO_FEC help FEC signal processing blocks +config BR2_PACKAGE_GNURADIO_LOG + bool "gr-log support" + select BR2_PACKAGE_LOG4CPP + help + Enable logger component + config BR2_PACKAGE_GNURADIO_PYTHON bool "python support" depends on BR2_PACKAGE_PYTHON diff --git a/package/gnuradio/gnuradio.mk b/package/gnuradio/gnuradio.mk index 202c2213a7..ef9723cb01 100644 --- a/package/gnuradio/gnuradio.mk +++ b/package/gnuradio/gnuradio.mk @@ -115,6 +115,13 @@ else GNURADIO_CONF_OPTS += -DENABLE_GR_FILTER=OFF endif +ifeq ($(BR2_PACKAGE_GNURADIO_LOG),y) +GNURADIO_DEPENDENCIES += log4cpp +GNURADIO_CONF_OPTS += -DENABLE_GR_LOG=ON +else +GNURADIO_CONF_OPTS += -DENABLE_GR_LOG=OFF +endif + ifeq ($(BR2_PACKAGE_GNURADIO_PYTHON),y) GNURADIO_DEPENDENCIES += python GNURADIO_CONF_OPTS += -DENABLE_PYTHON=ON diff --git a/package/go/go.mk b/package/go/go.mk index 1558b55e21..4daa2fe093 100644 --- a/package/go/go.mk +++ b/package/go/go.mk @@ -37,13 +37,16 @@ GO_GOARCH = mips64le endif HOST_GO_DEPENDENCIES = host-go-bootstrap +HOST_GO_HOST_CACHE = $(HOST_DIR)/usr/share/host-go-cache HOST_GO_ROOT = $(HOST_DIR)/lib/go +HOST_GO_TARGET_CACHE = $(HOST_DIR)/usr/share/go-cache # For the convienience of target packages. HOST_GO_TOOLDIR = $(HOST_GO_ROOT)/pkg/tool/linux_$(GO_GOARCH) HOST_GO_TARGET_ENV = \ GO111MODULE=off \ GOARCH=$(GO_GOARCH) \ + GOCACHE="$(HOST_GO_TARGET_CACHE)" \ GOROOT="$(HOST_GO_ROOT)" \ CC="$(TARGET_CC)" \ CXX="$(TARGET_CXX)" \ @@ -63,6 +66,7 @@ endif # HOSTCC_NOCCACHE. See https://github.com/golang/go/issues/11685. HOST_GO_MAKE_ENV = \ GO111MODULE=off \ + GOCACHE=$(HOST_GO_HOST_CACHE) \ GOROOT_BOOTSTRAP=$(HOST_GO_BOOTSTRAP_ROOT) \ GOROOT_FINAL=$(HOST_GO_ROOT) \ GOROOT="$(@D)" \ diff --git a/package/gstreamer/gst-plugins-bad/Config.in b/package/gstreamer/gst-plugins-bad/Config.in index f45981f6c8..411e4b6174 100644 --- a/package/gstreamer/gst-plugins-bad/Config.in +++ b/package/gstreamer/gst-plugins-bad/Config.in @@ -242,10 +242,6 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_Y4M comment "plugins with external dependencies (there may be more available)" -config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_APEXSINK - bool "apexsink" - select BR2_PACKAGE_OPENSSL - config BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_BZ2 bool "bz2" select BR2_PACKAGE_BZIP2 @@ -324,14 +320,13 @@ config BR2_PACKAGE_GST_PLUGINS_BAD_ZBAR bool "zbar" depends on BR2_TOOLCHAIN_HAS_THREADS # zbar-> libv4l depends on BR2_USE_MMU # zbar-> libv4l - depends on !BR2_STATIC_LIBS # zbar-> libv4l depends on BR2_INSTALL_LIBSTDCPP # zbar-> libv4l depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 # zbar select BR2_PACKAGE_ZBAR -comment "zbar plugin needs a toolchain w/ threads, dynamic library, C++ and headers >= 3.17" +comment "zbar plugin needs a toolchain w/ threads, C++ and headers >= 3.17" depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \ + depends on !BR2_TOOLCHAIN_HAS_THREADS \ || !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 endif diff --git a/package/gstreamer/gst-plugins-bad/gst-plugins-bad.mk b/package/gstreamer/gst-plugins-bad/gst-plugins-bad.mk index 856ff9665d..a98eac4235 100644 --- a/package/gstreamer/gst-plugins-bad/gst-plugins-bad.mk +++ b/package/gstreamer/gst-plugins-bad/gst-plugins-bad.mk @@ -12,6 +12,7 @@ GST_PLUGINS_BAD_LICENSE = LGPL-2.1+, GPL-2.0+ GST_PLUGINS_BAD_LICENSE_FILES = COPYING.LIB COPYING GST_PLUGINS_BAD_CONF_OPTS = \ + --disable-apexsink \ --disable-examples \ --disable-spandsp @@ -472,13 +473,6 @@ GST_PLUGINS_BAD_CONF_OPTS += --disable-y4m endif # plugins with deps -ifeq ($(BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_APEXSINK),y) -GST_PLUGINS_BAD_CONF_OPTS += --enable-apexsink -GST_PLUGINS_BAD_DEPENDENCIES += openssl -else -GST_PLUGINS_BAD_CONF_OPTS += --disable-apexsink -endif - ifeq ($(BR2_PACKAGE_GST_PLUGINS_BAD_PLUGIN_BZ2),y) GST_PLUGINS_BAD_CONF_OPTS += --enable-bz2 GST_PLUGINS_BAD_DEPENDENCIES += bzip2 diff --git a/package/intel-gmmlib/Config.in b/package/intel-gmmlib/Config.in index ef92a91128..9d5fbd9cae 100644 --- a/package/intel-gmmlib/Config.in +++ b/package/intel-gmmlib/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_INTEL_GMMLIB bool "intel-gmmlib" depends on BR2_x86_64 + depends on !BR2_STATIC_LIBS help The Intel(R) Graphics Memory Management Library provides device specific and buffer management for the Intel(R) @@ -8,3 +9,6 @@ config BR2_PACKAGE_INTEL_GMMLIB Media Driver for VAAPI. https://github.com/intel/gmmlib + +comment "intel-gmmlib needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/jq/jq.hash b/package/jq/jq.hash index 2cd640563a..449619b024 100644 --- a/package/jq/jq.hash +++ b/package/jq/jq.hash @@ -1,2 +1,3 @@ # Locally calculated -sha256 c4d2bfec6436341113419debf479d833692cc5cdab7eb0326b5a4d4fbe9f493c jq-1.5.tar.gz +sha256 5de8c8e29aaa3fb9cc6b47bb27299f271354ebb72514e3accadc7d38b5bbaa72 jq-1.6.tar.gz +sha256 111136aebcbfa68b6b0084e582b30e981da76adcff84eab6f9be32a1f38c5bf1 COPYING diff --git a/package/jq/jq.mk b/package/jq/jq.mk index 79629faa5e..aebe8c86e4 100644 --- a/package/jq/jq.mk +++ b/package/jq/jq.mk @@ -4,7 +4,7 @@ # ################################################################################ -JQ_VERSION = 1.5 +JQ_VERSION = 1.6 JQ_SITE = https://github.com/stedolan/jq/releases/download/jq-$(JQ_VERSION) JQ_LICENSE = MIT (code), CC-BY-3.0 (documentation) JQ_LICENSE_FILES = COPYING @@ -17,8 +17,8 @@ JQ_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -std=c99 -D_GNU_SOURCE" HOST_JQ_CONF_ENV += CFLAGS="$(HOST_CFLAGS) -std=c99 -D_GNU_SOURCE" # jq explicitly enables maintainer mode, which we don't need/want -JQ_CONF_OPTS += --disable-maintainer-mode -HOST_JQ_CONF_OPTS += --disable-maintainer-mode +JQ_CONF_OPTS += --disable-maintainer-mode --without-oniguruma +HOST_JQ_CONF_OPTS += --disable-maintainer-mode --without-oniguruma $(eval $(autotools-package)) $(eval $(host-autotools-package)) diff --git a/package/kexec/Config.in b/package/kexec/Config.in index c8cdea5663..410e503d9e 100644 --- a/package/kexec/Config.in +++ b/package/kexec/Config.in @@ -2,7 +2,8 @@ config BR2_PACKAGE_KEXEC bool "kexec" depends on BR2_i386 || BR2_x86_64 || BR2_arm || BR2_armeb || \ BR2_mips || BR2_mips64 || BR2_mipsel || BR2_mips64el || \ - BR2_powerpc || BR2_sh4 || BR2_sh4a || BR2_aarch64 + BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le || \ + BR2_sh4 || BR2_sh4a || BR2_aarch64 help Kexec is a user space utility for loading another kernel and asking the currently running kernel to do something with diff --git a/package/kexec/kexec.hash b/package/kexec/kexec.hash index 24294909ee..f87692b689 100644 --- a/package/kexec/kexec.hash +++ b/package/kexec/kexec.hash @@ -1,4 +1,4 @@ # From https://www.kernel.org/pub/linux/utils/kernel/kexec/sha256sums.asc -sha256 504c816b769da573167b63f3b6d4fce3740f231c98d8db0c4fda47a4b90482a9 kexec-tools-2.0.17.tar.xz +sha256 f020f07341977eb512663e301c2de60c6589e141467c16a8efd58243c0b2b238 kexec-tools-2.0.18.tar.xz # locally calculated sha256 fa5fc1d1eec39532ea517518eeefd7b6e3c14341a55e5880a0e2a49eee47a5b7 COPYING diff --git a/package/kexec/kexec.mk b/package/kexec/kexec.mk index b0f4367ddd..b011c0b4e5 100644 --- a/package/kexec/kexec.mk +++ b/package/kexec/kexec.mk @@ -4,7 +4,7 @@ # ################################################################################ -KEXEC_VERSION = 2.0.17 +KEXEC_VERSION = 2.0.18 KEXEC_SOURCE = kexec-tools-$(KEXEC_VERSION).tar.xz KEXEC_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/kernel/kexec KEXEC_LICENSE = GPL-2.0 diff --git a/package/kf5/kf5-modemmanager-qt/kf5-modemmanager-qt.mk b/package/kf5/kf5-modemmanager-qt/kf5-modemmanager-qt.mk index 9bbeeaa760..20fbc102c6 100644 --- a/package/kf5/kf5-modemmanager-qt/kf5-modemmanager-qt.mk +++ b/package/kf5/kf5-modemmanager-qt/kf5-modemmanager-qt.mk @@ -13,4 +13,9 @@ KF5_MODEMMANAGER_QT_LICENSE_FILE = COPYING.LIB KF5_MODEMMANAGER_QT_DEPENDENCIES = kf5-extra-cmake-modules modem-manager qt5base KF5_MODEMMANAGER_QT_INSTALL_STAGING = YES +# Uses __atomic_fetch_add_4 +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +KF5_MODEMMANAGER_QT_CONF_OPTS += -DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) -latomic" +endif + $(eval $(cmake-package)) diff --git a/package/leveldb/0003-Generate-position-independant-code-for-static-librar.patch b/package/leveldb/0003-Generate-position-independant-code-for-static-librar.patch new file mode 100644 index 0000000000..dce06ec725 --- /dev/null +++ b/package/leveldb/0003-Generate-position-independant-code-for-static-librar.patch @@ -0,0 +1,52 @@ +From 6ed1b57ef6bcee0d497c181730710b2b0fafbfb3 Mon Sep 17 00:00:00 2001 +From: =?utf-8?q?Ga=C3=ABl=20PORTAY?= <gael.portay@savoirfairelinux.com> +Date: Fri, 31 Aug 2018 12:23:46 -0400 +Subject: [PATCH] Generate position independant code for static library +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: 8bit + +Currently, only shared libraries are using the PIC flag. + +Generalize this flag for static libraries in order to let them linkable +by dynamic libraries. + +Fixes: + + /home/gportay/src/buildroot/output/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-amd-linux-gnu/6.2.0/../../../../x86_64-amd-linux-gnu/bin/ld: /home/gportay/src/buildroot/output/host/x86_64-buildroot-linux-gnu/sysroot/usr/lib/libmemenv.a(memenv.o): relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC + /home/gportay/src/buildroot/output/host/x86_64-buildroot-linux-gnu/sysroot/usr/lib/libmemenv.a: error adding symbols: Bad value + collect2: error: ld returned 1 exit status + +Upstream-Status: Inappropriate [upstream has migrated to cmake] +Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com> +--- + build_detect_platform | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/build_detect_platform b/build_detect_platform +index d2a20ce..4839444 100755 +--- a/build_detect_platform ++++ b/build_detect_platform +@@ -55,8 +55,8 @@ fi + + COMMON_FLAGS= + CROSS_COMPILE= +-PLATFORM_CCFLAGS= +-PLATFORM_CXXFLAGS= ++PLATFORM_CCFLAGS="-fPIC" ++PLATFORM_CXXFLAGS="-fPIC" + PLATFORM_LDFLAGS= + PLATFORM_LIBS= + PLATFORM_SHARED_EXT="so" +@@ -197,7 +197,7 @@ else + EOF + if [ "$?" = 0 ]; then + COMMON_FLAGS="$COMMON_FLAGS -DLEVELDB_PLATFORM_POSIX -DLEVELDB_ATOMIC_PRESENT" +- PLATFORM_CXXFLAGS="-std=c++0x" ++ PLATFORM_CXXFLAGS="$PLATFORM_CXXFLAGS -std=c++0x" + else + COMMON_FLAGS="$COMMON_FLAGS -DLEVELDB_PLATFORM_POSIX" + fi +-- +2.18.0 + diff --git a/package/leveldb/leveldb.mk b/package/leveldb/leveldb.mk index af9e879828..6078cd496c 100644 --- a/package/leveldb/leveldb.mk +++ b/package/leveldb/leveldb.mk @@ -25,6 +25,8 @@ define LEVELDB_INSTALL_STAGING_CMDS $(TARGET_MAKE_ENV) $(MAKE1) \ INSTALL_ROOT=$(STAGING_DIR) INSTALL_PREFIX=/usr \ $(LEVELDB_MAKE_ARGS) -C $(@D) install + $(INSTALL) -D -m 0644 $(@D)/out-static/libmemenv.a $(STAGING_DIR)/usr/lib/libmemenv.a + $(INSTALL) -D -m 0644 $(@D)/helpers/memenv/memenv.h $(STAGING_DIR)/usr/include/helpers/memenv/memenv.h endef define LEVELDB_INSTALL_TARGET_CMDS diff --git a/package/libcurl/libcurl.hash b/package/libcurl/libcurl.hash index b158600eca..d321adcd62 100644 --- a/package/libcurl/libcurl.hash +++ b/package/libcurl/libcurl.hash @@ -1,5 +1,5 @@ # Locally calculated after checking pgp signature -# https://curl.haxx.se/download/curl-7.64.0.tar.xz.asc +# https://curl.haxx.se/download/curl-7.64.1.tar.xz.asc # with key 27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2 -sha256 2f2f13fa34d44aa29cb444077ad7dc4dc6d189584ad552e0aaeb06e608af6001 curl-7.64.0.tar.xz +sha256 9252332a7f871ce37bfa7f78bdd0a0e3924d8187cc27cb57c76c9474a7168fb3 curl-7.64.1.tar.xz sha256 8c8824f50e73a021f5dde1fccbf69685939247399a33a32abab1fa448c9ddabb COPYING diff --git a/package/libcurl/libcurl.mk b/package/libcurl/libcurl.mk index 509dbdb54e..852054a4bd 100644 --- a/package/libcurl/libcurl.mk +++ b/package/libcurl/libcurl.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBCURL_VERSION = 7.64.0 +LIBCURL_VERSION = 7.64.1 LIBCURL_SOURCE = curl-$(LIBCURL_VERSION).tar.xz LIBCURL_SITE = https://curl.haxx.se/download LIBCURL_DEPENDENCIES = host-pkgconf \ diff --git a/package/libdrm/Config.in b/package/libdrm/Config.in index 581f921968..3cb0e02a41 100644 --- a/package/libdrm/Config.in +++ b/package/libdrm/Config.in @@ -36,6 +36,7 @@ config BR2_PACKAGE_LIBDRM_RADEON config BR2_PACKAGE_LIBDRM_AMDGPU bool "amdgpu" + depends on BR2_USE_MMU # fork() depends on BR2_PACKAGE_LIBDRM_HAS_ATOMIC select BR2_PACKAGE_LIBDRM_ENABLE_ATOMIC help diff --git a/package/libftdi1/libftdi1.mk b/package/libftdi1/libftdi1.mk index c45c83a711..014dd8401e 100644 --- a/package/libftdi1/libftdi1.mk +++ b/package/libftdi1/libftdi1.mk @@ -11,6 +11,7 @@ LIBFTDI1_INSTALL_STAGING = YES LIBFTDI1_DEPENDENCIES = libusb LIBFTDI1_LICENSE = LGPL-2.0 (libftdi1), GPL-2.0 with exception (ftdipp1) LIBFTDI1_LICENSE_FILES = LICENSE COPYING.GPL COPYING.LIB +LIBFTDI1_CONFIG_SCRIPTS = libftdi1-config LIBFTDI1_CONF_OPTS = -DDOCUMENTATION=OFF -DEXAMPLES=OFF ifeq ($(BR2_PACKAGE_LIBFTDI1_LIBFTDIPP1),y) diff --git a/package/libglib2/libglib2.mk b/package/libglib2/libglib2.mk index f602c371f5..44c0591109 100644 --- a/package/libglib2/libglib2.mk +++ b/package/libglib2/libglib2.mk @@ -137,6 +137,13 @@ LIBGLIB2_CONF_OPTS += --with-libiconv=gnu LIBGLIB2_DEPENDENCIES += libiconv endif +ifeq ($(BR2_PACKAGE_LIBSELINUX),y) +LIBGLIB2_CONF_OPTS += --enable-selinux +LIBGLIB2_DEPENDENCIES += libselinux +else +LIBGLIB2_CONF_OPTS += --disable-selinux +endif + # Purge gdb-related files ifneq ($(BR2_PACKAGE_GDB),y) define LIBGLIB2_REMOVE_GDB_FILES diff --git a/package/libiio/libiio.hash b/package/libiio/libiio.hash index fbb4bccb90..800b2ee8f4 100644 --- a/package/libiio/libiio.hash +++ b/package/libiio/libiio.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 12063db7a9366aa00bfd789db30afaddb29686bc29b3ce1e5d4adfe1c3b42527 libiio-0.14.tar.gz +sha256 a729f8ff48137ad271a3e2951f322b35c1bf2ec075b488d75c8bd071c693fd19 libiio-0.15.tar.gz sha256 102900208eef27b766380135906d431dba87edaa7ec6aa72e6ebd3dd67f3a97b COPYING.txt diff --git a/package/libiio/libiio.mk b/package/libiio/libiio.mk index d2376bca34..2371a71063 100644 --- a/package/libiio/libiio.mk +++ b/package/libiio/libiio.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBIIO_VERSION = 0.14 +LIBIIO_VERSION = 0.15 LIBIIO_SITE = $(call github,analogdevicesinc,libiio,v$(LIBIIO_VERSION)) LIBIIO_INSTALL_STAGING = YES LIBIIO_LICENSE = LGPL-2.1+ diff --git a/package/libpcap/Config.in b/package/libpcap/Config.in index 643acbef6e..74429f209a 100644 --- a/package/libpcap/Config.in +++ b/package/libpcap/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_LIBPCAP bool "libpcap" + select BR2_PACKAGE_BLUEZ5_UTILS_HEADERS if BR2_PACKAGE_BLUEZ5_UTILS select BR2_PACKAGE_ZLIB help A system-independent library for user-level network packet diff --git a/package/libpcap/libpcap.mk b/package/libpcap/libpcap.mk index 126087220b..ebceca5273 100644 --- a/package/libpcap/libpcap.mk +++ b/package/libpcap/libpcap.mk @@ -16,6 +16,8 @@ LIBPCAP_CONF_ENV = \ CFLAGS="$(LIBPCAP_CFLAGS)" LIBPCAP_CFLAGS = $(TARGET_CFLAGS) LIBPCAP_CONF_OPTS = --disable-yydebug --with-pcap=linux --without-dag +# Disable dbus to break recursive dependencies +LIBPCAP_CONF_OPTS += --disable-dbus LIBPCAP_CONFIG_SCRIPTS = pcap-config # Omit -rpath from pcap-config output @@ -24,21 +26,12 @@ define LIBPCAP_CONFIG_REMOVE_RPATH endef LIBPCAP_POST_BUILD_HOOKS = LIBPCAP_CONFIG_REMOVE_RPATH -ifeq ($(BR2_PACKAGE_BLUEZ_UTILS),y) -LIBPCAP_DEPENDENCIES += bluez_utils -else ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS),y) -LIBPCAP_DEPENDENCIES += bluez5_utils +ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS_HEADERS),y) +LIBPCAP_DEPENDENCIES += bluez5_utils-headers else LIBPCAP_CONF_OPTS += --disable-bluetooth endif -ifeq ($(BR2_PACKAGE_DBUS),y) -LIBPCAP_CONF_OPTS += --enable-dbus -LIBPCAP_DEPENDENCIES += dbus -else -LIBPCAP_CONF_OPTS += --disable-dbus -endif - ifeq ($(BR2_PACKAGE_LIBNL),y) LIBPCAP_DEPENDENCIES += libnl LIBPCAP_CFLAGS += "-I$(STAGING_DIR)/usr/include/libnl3" diff --git a/package/libseccomp/0001-remove-static.patch b/package/libseccomp/0001-remove-static.patch index 9f0ac210c7..60a1ff00b6 100644 --- a/package/libseccomp/0001-remove-static.patch +++ b/package/libseccomp/0001-remove-static.patch @@ -1,4 +1,4 @@ -From 8632287cf6863b580340f846ac14adf2609abdb0 Mon Sep 17 00:00:00 2001 +From 5d010fb06eae43b284e5ccc322f6de47eb42b751 Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine <fontaine.fabrice@gmail.com> Date: Sat, 2 Jun 2018 13:45:22 +0200 Subject: [PATCH] remove static @@ -14,16 +14,18 @@ and slighly updated to work with 2.3.3 Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Peter: updated for v2.4.0 which adds scmp_api_level] +Signed-off-by: Peter Korsgaard <peter@korsgaard.com> --- - tools/Makefile.am | 2 -- - 1 file changed, 2 deletions(-) + tools/Makefile.am | 3 --- + 1 file changed, 3 deletions(-) diff --git a/tools/Makefile.am b/tools/Makefile.am -index 70b4aed..ef74270 100644 +index f768365..5f9d571 100644 --- a/tools/Makefile.am +++ b/tools/Makefile.am -@@ -35,8 +35,6 @@ scmp_bpf_disasm_SOURCES = scmp_bpf_disasm.c bpf.h util.h - scmp_bpf_sim_SOURCES = scmp_bpf_sim.c bpf.h util.h +@@ -37,10 +37,7 @@ scmp_bpf_sim_SOURCES = scmp_bpf_sim.c bpf.h util.h + scmp_api_level_SOURCES = scmp_api_level.c scmp_sys_resolver_LDADD = ../src/libseccomp.la -scmp_sys_resolver_LDFLAGS = -static @@ -31,6 +33,8 @@ index 70b4aed..ef74270 100644 -scmp_arch_detect_LDFLAGS = -static scmp_bpf_disasm_LDADD = util.la scmp_bpf_sim_LDADD = util.la + scmp_api_level_LDADD = ../src/libseccomp.la +-scmp_api_level_LDFLAGS = -static -- -2.14.1 +2.11.0 diff --git a/package/libseccomp/libseccomp.hash b/package/libseccomp/libseccomp.hash index 0362ce9ba4..0823903c36 100644 --- a/package/libseccomp/libseccomp.hash +++ b/package/libseccomp/libseccomp.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 5a52495207f00d1254707f11226e17c16ec53f5038d65bbabf1892873fa2fe5b libseccomp-v2.3.3.tar.gz +sha256 b7ee0299157fb7a6a81c99f2e0d7e64429b7d7c0eae43c3a6ef91e87eeed2868 libseccomp-v2.4.0.tar.gz sha256 102900208eef27b766380135906d431dba87edaa7ec6aa72e6ebd3dd67f3a97b LICENSE diff --git a/package/libseccomp/libseccomp.mk b/package/libseccomp/libseccomp.mk index afa2d36122..90b981f042 100644 --- a/package/libseccomp/libseccomp.mk +++ b/package/libseccomp/libseccomp.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSECCOMP_VERSION = v2.3.3 +LIBSECCOMP_VERSION = v2.4.0 LIBSECCOMP_SITE = $(call github,seccomp,libseccomp,$(LIBSECCOMP_VERSION)) LIBSECCOMP_LICENSE = LGPL-2.1 LIBSECCOMP_LICENSE_FILES = LICENSE diff --git a/package/libssh2/0003-openssl-fix-dereferencing-ambiguity-potentially-caus.patch b/package/libssh2/0003-openssl-fix-dereferencing-ambiguity-potentially-caus.patch deleted file mode 100644 index 44eed2bac4..0000000000 --- a/package/libssh2/0003-openssl-fix-dereferencing-ambiguity-potentially-caus.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 28fe5e4de437f8fce6e428b7db9bc8640cda4c61 Mon Sep 17 00:00:00 2001 -From: Giulio Benetti <giulio.benetti@micronovasrl.com> -Date: Thu, 13 Sep 2018 09:51:35 +0200 -Subject: [PATCH] openssl: fix dereferencing ambiguity potentially causing - build failure -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -When dereferencing from *aes_ctr_cipher, being a pointer itself, -ambiguity can occur with compiler and build can fail reporting: -openssl.c:574:20: error: ‘*aes_ctr_cipher’ is a pointer; did you mean to use ‘->’? - *aes_ctr_cipher->nid = type; - -Sorround every *aes_ctr_cipher-> occurence with paranthesis like this -(*aes_ctr_cipher)-> - -Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com> -Upstream: https://github.com/libssh2/libssh2/commit/b5b6673c2823a18753a14571a6c01bde33fa3a8b ---- - src/openssl.c | 14 +++++++------- - 1 file changed, 7 insertions(+), 7 deletions(-) - -diff --git a/src/openssl.c b/src/openssl.c -index 678d5de..c26aaec 100644 ---- a/src/openssl.c -+++ b/src/openssl.c -@@ -571,13 +571,13 @@ make_ctr_evp (size_t keylen, EVP_CIPHER **aes_ctr_cipher, int type) - EVP_CIPHER_meth_set_cleanup(*aes_ctr_cipher, aes_ctr_cleanup); - } - #else -- *aes_ctr_cipher->nid = type; -- *aes_ctr_cipher->block_size = 16; -- *aes_ctr_cipher->key_len = keylen; -- *aes_ctr_cipher->iv_len = 16; -- *aes_ctr_cipher->init = aes_ctr_init; -- *aes_ctr_cipher->do_cipher = aes_ctr_do_cipher; -- *aes_ctr_cipher->cleanup = aes_ctr_cleanup; -+ (*aes_ctr_cipher)->nid = type; -+ (*aes_ctr_cipher)->block_size = 16; -+ (*aes_ctr_cipher)->key_len = keylen; -+ (*aes_ctr_cipher)->iv_len = 16; -+ (*aes_ctr_cipher)->init = aes_ctr_init; -+ (*aes_ctr_cipher)->do_cipher = aes_ctr_do_cipher; -+ (*aes_ctr_cipher)->cleanup = aes_ctr_cleanup; - #endif - - return *aes_ctr_cipher; --- -2.17.1 - diff --git a/package/libssh2/libssh2.hash b/package/libssh2/libssh2.hash index d57c8d7062..c4732a2c07 100644 --- a/package/libssh2/libssh2.hash +++ b/package/libssh2/libssh2.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 ec2b32b44ae5f8fe094f663f63953fb31314de838eb36e8c47e5a89137b5a1bc libssh2-8b870ad771cbd9cd29edbb3dbb0878e950f868ab.tar.gz +sha256 468e7a81a8121c06cb099eef2e17106b0b8c2e1d890b1c0e34e1951f182babb1 libssh2-1b3cbaff518f32e5b70650d4b7b52361b1410d37.tar.gz sha256 e15ed284a15e80115467d6d7f030f0d89d8fabbecd78fb6e0f861f0cfc128fd9 COPYING diff --git a/package/libssh2/libssh2.mk b/package/libssh2/libssh2.mk index 89cb733224..ed0dd40bec 100644 --- a/package/libssh2/libssh2.mk +++ b/package/libssh2/libssh2.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSSH2_VERSION = 8b870ad771cbd9cd29edbb3dbb0878e950f868ab +LIBSSH2_VERSION = 1b3cbaff518f32e5b70650d4b7b52361b1410d37 LIBSSH2_SITE = $(call github,libssh2,libssh2,$(LIBSSH2_VERSION)) LIBSSH2_LICENSE = BSD LIBSSH2_LICENSE_FILES = COPYING diff --git a/package/linux-headers/Config.in.host b/package/linux-headers/Config.in.host index d04ccff858..68ec531f92 100644 --- a/package/linux-headers/Config.in.host +++ b/package/linux-headers/Config.in.host @@ -293,11 +293,11 @@ endchoice config BR2_DEFAULT_KERNEL_HEADERS string - default "4.4.176" if BR2_KERNEL_HEADERS_4_4 - default "4.9.160" if BR2_KERNEL_HEADERS_4_9 - default "4.14.103" if BR2_KERNEL_HEADERS_4_14 - default "4.19.25" if BR2_KERNEL_HEADERS_4_19 - default "4.20.12" if BR2_KERNEL_HEADERS_4_20 + default "4.4.177" if BR2_KERNEL_HEADERS_4_4 + default "4.9.166" if BR2_KERNEL_HEADERS_4_9 + default "4.14.109" if BR2_KERNEL_HEADERS_4_14 + default "4.19.32" if BR2_KERNEL_HEADERS_4_19 + default "4.20.17" if BR2_KERNEL_HEADERS_4_20 default "5.0.2" if BR2_KERNEL_HEADERS_5_0 default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION default "custom" if BR2_KERNEL_HEADERS_CUSTOM_TARBALL diff --git a/package/log4cplus/log4cplus.mk b/package/log4cplus/log4cplus.mk index 0bc4fc9aa6..82fc7135f4 100644 --- a/package/log4cplus/log4cplus.mk +++ b/package/log4cplus/log4cplus.mk @@ -11,6 +11,13 @@ LOG4CPLUS_LICENSE = Apache-2.0, BSD-2-Clause, BSD-like (threadpool) LOG4CPLUS_LICENSE_FILES = LICENSE LOG4CPLUS_INSTALL_STAGING = YES +ifeq ($(BR2_PACKAGE_QT5BASE),y) +LOG4CPLUS_DEPENDENCIES += host-pkgconf qt5base +LOG4CPLUS_CONF_OPTS += --with-qt5 +else +LOG4CPLUS_CONF_OPTS += --without-qt5 +endif + ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) LOG4CPLUS_CONF_ENV += LIBS='-latomic' endif diff --git a/package/mariadb/mariadb.hash b/package/mariadb/mariadb.hash index f68eb40224..db24f7bb9b 100644 --- a/package/mariadb/mariadb.hash +++ b/package/mariadb/mariadb.hash @@ -1,9 +1,9 @@ -# From https://downloads.mariadb.org/mariadb/10.3.11 -md5 e13ab133060886cda814d68ebd1dc27b mariadb-10.3.11.tar.gz -sha1 7b75d7ec06642f26ce197e07f5ba16283061cc87 mariadb-10.3.11.tar.gz -sha256 211655b794c9d5397ba3be6c90737eac02e882f296268299239db47ba328f1b2 mariadb-10.3.11.tar.gz -sha512 1adc1f9bbabf848726c669a7a0ab01257ba31882758b53fbf3b1316f2295670dba1c3d1f3292d7c1a749c701504588694a55d020839e690595897b0e20435298 mariadb-10.3.11.tar.gz +# From https://downloads.mariadb.org/mariadb/10.3.13 +md5 603ce42e35b9a688f2cca05275acb5cb mariadb-10.3.13.tar.gz +sha1 08467885412184e99b835732913d445fd2c4b1b3 mariadb-10.3.13.tar.gz +sha256 b2aa857ef5b84f85a7ea60a1eac7b34c0ca5151c71a0d44ce2d7fb028d71459a mariadb-10.3.13.tar.gz +sha512 3cbd93291aa43b235e5b81d953ea69fb32df54fb518f922f69b5485952f01fae693c77b0efac37f414ed7ff132d3b58f899812bdb7be8a5b344c3640e2c3a0dd mariadb-10.3.13.tar.gz # Hash for license files -sha256 a298aaf95cb7e594d15b29ae6b5a9ee22a2be4344379fd29304df4e0f19f695a README.md +sha256 43f4b5b13cecbbdb04a180cbf6c2bd64237819d1a32165b7d475c1b392e6a8d1 README.md sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/mariadb/mariadb.mk b/package/mariadb/mariadb.mk index e17649209a..356dd29af3 100644 --- a/package/mariadb/mariadb.mk +++ b/package/mariadb/mariadb.mk @@ -4,7 +4,7 @@ # ################################################################################ -MARIADB_VERSION = 10.3.11 +MARIADB_VERSION = 10.3.13 MARIADB_SITE = https://downloads.mariadb.org/interstitial/mariadb-$(MARIADB_VERSION)/source MARIADB_LICENSE = GPL-2.0 (server), GPL-2.0 with FLOSS exception (GPL client library), LGPL-2.0 (LGPL client library) # Tarball no longer contains LGPL license text diff --git a/package/mender/mender.service b/package/mender/mender.service index 8b60a4f1aa..2a5f476ee5 100644 --- a/package/mender/mender.service +++ b/package/mender/mender.service @@ -12,7 +12,7 @@ if [ -L /var/lib/mender \ if rm -f /var/lib/mender >/dev/null 2>&1; then \ mkdir -p /var/lib/mender; \ else \ - echo "No persistent location to store mender data. Data will be lost\ + echo "No persistent location to store mender data. Data will be lost" \ echo "at reboot. Are you sure this is what you want to do?"; \ mkdir -p "$(readlink /var/lib/mender)"; \ fi; \ diff --git a/package/mesa3d/Config.in b/package/mesa3d/Config.in index 5019f2683b..fdd64b0337 100644 --- a/package/mesa3d/Config.in +++ b/package/mesa3d/Config.in @@ -125,6 +125,7 @@ comment "R600 driver needs a uClibc or glibc toolchain when llvm is enabled" config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI bool "Gallium Radeon SI driver" + depends on BR2_USE_MMU # libdrm depends on BR2_i386 || BR2_x86_64 depends on BR2_PACKAGE_MESA3D_LLVM depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils @@ -141,6 +142,7 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI # Radeon SI needs libelf # musl is not currently compatible with elfutils comment "Radeon SI driver needs a uClibc or glibc toolchain" + depends on BR2_USE_MMU depends on BR2_PACKAGE_MESA3D_LLVM depends on !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) diff --git a/package/mongodb/Config.in b/package/mongodb/Config.in index 969b8e062f..7df502add6 100644 --- a/package/mongodb/Config.in +++ b/package/mongodb/Config.in @@ -3,11 +3,12 @@ config BR2_PACKAGE_MONGODB_ARCH_SUPPORTS bool # ARM needs LDREX/STREX, so ARMv6+ default y if BR2_arm && !BR2_ARM_CPU_ARMV4 && !BR2_ARM_CPU_ARMV5 - default y if BR2_aarch64 || BR2_powerpc64 || BR2_x86_64 + default y if BR2_aarch64 || BR2_x86_64 config BR2_PACKAGE_MONGODB bool "mongodb" depends on BR2_PACKAGE_MONGODB_ARCH_SUPPORTS + depends on !BR2_PACKAGE_PYTHON3 depends on BR2_TOOLCHAIN_USES_GLIBC # needs glibc malloc_usable_size depends on BR2_USE_WCHAR depends on BR2_TOOLCHAIN_HAS_THREADS @@ -38,3 +39,4 @@ comment "mongodb needs a glibc toolchain w/ wchar, threads, C++, gcc >= 6" !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_6 depends on BR2_PACKAGE_MONGODB_ARCH_SUPPORTS + depends on !BR2_PACKAGE_PYTHON3 diff --git a/package/mosquitto/mosquitto.hash b/package/mosquitto/mosquitto.hash index 17a467a721..25b9910138 100644 --- a/package/mosquitto/mosquitto.hash +++ b/package/mosquitto/mosquitto.hash @@ -1,5 +1,5 @@ # Locally calculated after checking gpg signature -sha256 d4024c3388502d50be4192991e90d66dfb344376104df3f63846c9f201779955 mosquitto-1.5.7.tar.gz +sha256 78d7e70c3794dc3a1d484b4f2f8d3addebe9c2da3f5a1cebe557f7d13beb0da4 mosquitto-1.5.8.tar.gz # License files sha256 cc77e25bafd40637b7084f04086d606f0a200051b61806f97c93405926670bc1 LICENSE.txt diff --git a/package/mosquitto/mosquitto.mk b/package/mosquitto/mosquitto.mk index d17fae5df6..51c0abd0ba 100644 --- a/package/mosquitto/mosquitto.mk +++ b/package/mosquitto/mosquitto.mk @@ -4,7 +4,7 @@ # ################################################################################ -MOSQUITTO_VERSION = 1.5.7 +MOSQUITTO_VERSION = 1.5.8 MOSQUITTO_SITE = https://mosquitto.org/files/source MOSQUITTO_LICENSE = EPL-1.0 or EDLv1.0 MOSQUITTO_LICENSE_FILES = LICENSE.txt epl-v10 edl-v10 diff --git a/package/musl/musl.mk b/package/musl/musl.mk index 90c753926e..ff807c0cba 100644 --- a/package/musl/musl.mk +++ b/package/musl/musl.mk @@ -58,7 +58,7 @@ endef define MUSL_INSTALL_TARGET_CMDS $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ DESTDIR=$(TARGET_DIR) install-libs - $(RM) $(addprefix $(TARGET_DIR)/lib/,crt1.o crtn.o crti.o Scrt1.o) + $(RM) $(addprefix $(TARGET_DIR)/lib/,crt1.o crtn.o crti.o rcrt1.o Scrt1.o) endef $(eval $(generic-package)) diff --git a/package/nodejs/nodejs.hash b/package/nodejs/nodejs.hash index 5a06e5328c..ad8ad4ad99 100644 --- a/package/nodejs/nodejs.hash +++ b/package/nodejs/nodejs.hash @@ -1,5 +1,5 @@ -# From https://nodejs.org/dist/v8.15.0/SHASUMS256.txt -sha256 968523333947cc3f769d73dedc6c9c60580826d8714bc0e62ca4589de6a7c633 node-v8.15.0.tar.xz +# From https://nodejs.org/dist/v8.15.1/SHASUMS256.txt +sha256 6b6486a3f452624941f6e11dd5f878c298d43e9c21b5f43ca1721dc7ce25add1 node-v8.15.1.tar.xz # Hash for license file sha256 b87be6c1479ed977481115869c2dd8b6d59e5ea55aa09939d6c898242121b2f5 LICENSE diff --git a/package/nodejs/nodejs.mk b/package/nodejs/nodejs.mk index 446cb77dbf..06d2eaad99 100644 --- a/package/nodejs/nodejs.mk +++ b/package/nodejs/nodejs.mk @@ -4,7 +4,7 @@ # ################################################################################ -NODEJS_VERSION = 8.15.0 +NODEJS_VERSION = 8.15.1 NODEJS_SOURCE = node-v$(NODEJS_VERSION).tar.xz NODEJS_SITE = http://nodejs.org/dist/v$(NODEJS_VERSION) NODEJS_DEPENDENCIES = host-python host-nodejs c-ares \ diff --git a/package/ntp/0003-fix-nommu.patch b/package/ntp/0003-fix-nommu.patch deleted file mode 100644 index 0959fa0ba5..0000000000 --- a/package/ntp/0003-fix-nommu.patch +++ /dev/null @@ -1,29 +0,0 @@ -Fix no-MMU build - -The detach_from_terminal() is unused for no-MMU, but it depends on symbols -that are not defined for no-MMU. Don't define detach_from_terminal() when -HAVE_WORKING_FORK is not defined. - -Signed-off-by: Baruch Siach <baruch@tkos.co.il> ---- -Upstream status: http://bugs.ntp.org/show_bug.cgi?id=3538 - -diff -Nuar ntp-4.2.8p12.orig/ntpd/ntpd.c ntp-4.2.8p12/ntpd/ntpd.c ---- ntp-4.2.8p12.orig/ntpd/ntpd.c 2018-08-14 14:51:30.000000000 +0300 -+++ ntp-4.2.8p12/ntpd/ntpd.c 2018-10-13 21:25:25.858261249 +0300 -@@ -534,6 +534,7 @@ - * Detach from terminal (much like daemon()) - * Nothe that this function calls exit() - */ -+# ifdef HAVE_WORKING_FORK - static void - detach_from_terminal( - int pipe_fds[2], -@@ -617,6 +618,7 @@ - - return; - } -+# endif /* HAVE_WORKING_FORK */ - - #ifdef HAVE_DROPROOT - /* diff --git a/package/ntp/0004-fix-work-fork-without-droproot.patch b/package/ntp/0004-fix-work-fork-without-droproot.patch deleted file mode 100644 index cb6fec0125..0000000000 --- a/package/ntp/0004-fix-work-fork-without-droproot.patch +++ /dev/null @@ -1,26 +0,0 @@ -Fix work_fork build when droproot is disabled - -The set_user_group_ids() depends on HAVE_DROPROOT. When HAVE_DROPROOT is not -enabled, work_fork.c code causes a link failure: - -../libntp/libntp.a(work_fork.o): In function `send_blocking_req_internal': -work_fork.c:(.text+0x498): undefined reference to `set_user_group_ids' - -Make the set_user_group_ids() call depend on HAVE_DROPROOT. - -Signed-off-by: Baruch Siach <baruch@tkos.co.il> ---- -Upstream status: http://bugs.ntp.org/show_bug.cgi?id=3539 - ---- ntp-4.2.8p12.orig/libntp/work_fork.c 2018-08-14 14:51:06.000000000 +0300 -+++ ntp-4.2.8p12/libntp/work_fork.c 2018-10-15 21:10:54.580917962 +0300 -@@ -594,7 +594,9 @@ - init_logging("ntp_intres", 0, FALSE); - setup_logfile(NULL); - -+#if defined(HAVE_DROPROOT) - (void) set_user_group_ids(); -+#endif - - /* - * And now back to the portable code diff --git a/package/ntp/ntp.hash b/package/ntp/ntp.hash index 2fd8a8322b..4014936e61 100644 --- a/package/ntp/ntp.hash +++ b/package/ntp/ntp.hash @@ -1,5 +1,5 @@ -# From https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p12.tar.gz.md5 -md5 1522d66574bae14abb2622746dad2bdc ntp-4.2.8p12.tar.gz +# From https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p13.tar.gz.md5 +md5 ea040ab9b4ca656b5229b89d6b822f13 ntp-4.2.8p13.tar.gz # Calculated based on the hash above -sha256 709b222b5013d77d26bfff532b5ea470a8039497ef29d09363931c036cb30454 ntp-4.2.8p12.tar.gz -sha256 62c87b269365b38b55359b16dfde7ec28c683c722ef489db90afd0f2e478e4a1 COPYRIGHT +sha256 288772cecfcd9a53694ffab108d1825a31ba77f3a8466b0401baeca3bc232a38 ntp-4.2.8p13.tar.gz +sha256 3828da5fc8126889d6a64432288ace08526c490bf5427d799931689069968d91 COPYRIGHT diff --git a/package/ntp/ntp.mk b/package/ntp/ntp.mk index c62d59e81a..d53fcc5d0b 100644 --- a/package/ntp/ntp.mk +++ b/package/ntp/ntp.mk @@ -5,7 +5,7 @@ ################################################################################ NTP_VERSION_MAJOR = 4.2 -NTP_VERSION = $(NTP_VERSION_MAJOR).8p12 +NTP_VERSION = $(NTP_VERSION_MAJOR).8p13 NTP_SITE = https://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-$(NTP_VERSION_MAJOR) NTP_DEPENDENCIES = host-pkgconf libevent NTP_LICENSE = NTP diff --git a/package/openjpeg/0004-install-static-lib.patch b/package/openjpeg/0004-install-static-lib.patch deleted file mode 100644 index 4a3bbfa28a..0000000000 --- a/package/openjpeg/0004-install-static-lib.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 66297f07a43d2770a97c8456d20202f3d051d980 Mon Sep 17 00:00:00 2001 -From: Even Rouault <even.rouault@spatialys.com> -Date: Mon, 9 Oct 2017 11:40:43 +0200 -Subject: [PATCH] Unix build: fix regression of 2.3.0 where a shared-only or - static-only build lacks the installation target for the library (#1019, fixes - regression introduced by 3dfc6ca2bcf06fd1adb6b6b4cecc6c092f08ba0b) - -Downloaded from upstream commit -https://github.com/uclouvain/openjpeg/commit/66297f07a43d2770a97c8456d20202f3d051d980 - -Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> ---- - src/lib/openjp2/CMakeLists.txt | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/lib/openjp2/CMakeLists.txt b/src/lib/openjp2/CMakeLists.txt -index 0b4520384..f8990ccf0 100644 ---- a/src/lib/openjp2/CMakeLists.txt -+++ b/src/lib/openjp2/CMakeLists.txt -@@ -99,6 +99,7 @@ else() - set(INSTALL_LIBS ${OPENJPEG_LIBRARY_NAME} openjp2_static) - else() - add_library(${OPENJPEG_LIBRARY_NAME} ${OPENJPEG_SRCS}) -+ set(INSTALL_LIBS ${OPENJPEG_LIBRARY_NAME}) - endif() - endif() - diff --git a/package/openjpeg/openjpeg.hash b/package/openjpeg/openjpeg.hash index dd3cf26cf0..8a6fda48c4 100644 --- a/package/openjpeg/openjpeg.hash +++ b/package/openjpeg/openjpeg.hash @@ -1,2 +1,3 @@ # Locally computed: -sha256 3dc787c1bb6023ba846c2a0d9b1f6e179f1cd255172bde9eb75b01f1e6c7d71a openjpeg-2.3.0.tar.gz +sha256 3389a1aa908c2b577863da213db3a170df3edbb1432e99ae5fd3f2ac721d69d3 openjpeg-51f097e6d5754ddae93e716276fe8176b44ec548.tar.gz +sha256 a6af136f3e15038a666b61f376612a07d9a4e48cb7c01adbf3e33b3f14ab49b6 LICENSE diff --git a/package/openjpeg/openjpeg.mk b/package/openjpeg/openjpeg.mk index 9a8fdab7a4..6036ab95a3 100644 --- a/package/openjpeg/openjpeg.mk +++ b/package/openjpeg/openjpeg.mk @@ -4,8 +4,8 @@ # ################################################################################ -OPENJPEG_VERSION = 2.3.0 -OPENJPEG_SITE = $(call github,uclouvain,openjpeg,v$(OPENJPEG_VERSION)) +OPENJPEG_VERSION = 51f097e6d5754ddae93e716276fe8176b44ec548 +OPENJPEG_SITE = $(call github,uclouvain,openjpeg,$(OPENJPEG_VERSION)) OPENJPEG_LICENSE = BSD-2-Clause OPENJPEG_LICENSE_FILES = LICENSE OPENJPEG_INSTALL_STAGING = YES diff --git a/package/owfs/0001-configure.ac-check-for-localtime_r.patch b/package/owfs/0001-configure.ac-check-for-localtime_r.patch deleted file mode 100644 index b25aa59878..0000000000 --- a/package/owfs/0001-configure.ac-check-for-localtime_r.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 75e92438bcdb78a90912366b07bf503646806686 Mon Sep 17 00:00:00 2001 -From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be> -Date: Sun, 21 Feb 2016 17:02:06 +0100 -Subject: [PATCH] configure.ac: check for localtime_r - -HAVE_LOCALTIME_R is used in owftp.c, so it should be checked for. - -Without this, static build fails because localtime_r is defined twice. - -Upstream-Status: Submitted -https://sourceforge.net/p/owfs/mailman/message/34873667/ - -Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> -[Bernd: rebased against version 3.2p1] -Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index c22dde9..12fdd18 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1646,7 +1646,7 @@ - AC_FUNC_STRFTIME - AC_FUNC_STRTOD - AC_TYPE_SIGNAL --AC_CHECK_FUNCS([accept daemon getaddrinfo freeaddrinfo gethostbyname2_r gethostbyaddr_r gethostbyname_r getservbyname_r getopt getopt_long gmtime_r gettimeofday localtime_r inet_ntop inet_pton memchr memset select socket strcasecmp strchr strdup strncasecmp strtol strtoul twalk tsearch tfind tdelete tdestroy vasprintf strsep vsprintf vsnprintf writev getline]) -+AC_CHECK_FUNCS([accept daemon getaddrinfo freeaddrinfo gethostbyname2_r gethostbyaddr_r gethostbyname_r getservbyname_r getopt getopt_long gmtime_r gettimeofday localtime_r inet_ntop inet_pton memchr memset select socket strcasecmp strchr strdup strncasecmp strtol strtoul twalk tsearch tfind tdelete tdestroy vasprintf strsep vsprintf vsnprintf writev getline localtime_r]) - - save_LIBS="$LIBS" - LIBS="" --- -2.7.0 - diff --git a/package/owfs/0002-include-sys-sysmacros.h-for-major.patch b/package/owfs/0001-include-sys-sysmacros.h-for-major.patch index dadf0276cd..dadf0276cd 100644 --- a/package/owfs/0002-include-sys-sysmacros.h-for-major.patch +++ b/package/owfs/0001-include-sys-sysmacros.h-for-major.patch diff --git a/package/owfs/owfs.mk b/package/owfs/owfs.mk index e120147151..cd1c2dba6d 100644 --- a/package/owfs/owfs.mk +++ b/package/owfs/owfs.mk @@ -9,7 +9,7 @@ OWFS_SITE = http://downloads.sourceforge.net/project/owfs/owfs/$(OWFS_VERSION) OWFS_DEPENDENCIES = host-pkgconf OWFS_CONF_OPTS = --disable-owperl --without-perl5 --disable-owtcl --without-tcl -# 0001-configure.ac-check-for-localtime_r.patch touches configure.ac +# We're patching configure.ac OWFS_AUTORECONF = YES # owtcl license is declared in module/ownet/c/src/include/ow_functions.h @@ -42,6 +42,20 @@ else OWFS_CONF_OPTS += --disable-owfs endif +ifeq ($(BR2_PACKAGE_LIBFTDI1),y) +OWFS_CONF_OPTS += \ + --enable-ftdi \ + --with-libftdi-config=$(STAGING_DIR)/usr/bin/libftdi1-config +OWFS_DEPENDENCIES += libftdi1 +else ifeq ($(BR2_PACKAGE_LIBFTDI),y) +OWFS_CONF_OPTS += \ + --enable-ftdi \ + --with-libftdi-config=$(STAGING_DIR)/usr/bin/libftdi-config +OWFS_DEPENDENCIES += libftdi +else +OWFS_CONF_OPTS += --disable-ftdi +endif + ifeq ($(BR2_PACKAGE_LIBUSB),y) OWFS_CONF_OPTS += --enable-usb OWFS_DEPENDENCIES += libusb diff --git a/package/php/0005-Call-apxs-with-correct-prefix.patch b/package/php/0004-Call-apxs-with-correct-prefix.patch index 60589b54fe..60589b54fe 100644 --- a/package/php/0005-Call-apxs-with-correct-prefix.patch +++ b/package/php/0004-Call-apxs-with-correct-prefix.patch diff --git a/package/php/0004-OPcache-flock-mechanism-is-obviously-linux-so-force-.patch b/package/php/0004-OPcache-flock-mechanism-is-obviously-linux-so-force-.patch deleted file mode 100644 index 5c3814f619..0000000000 --- a/package/php/0004-OPcache-flock-mechanism-is-obviously-linux-so-force-.patch +++ /dev/null @@ -1,82 +0,0 @@ -From bedbd41ef0a5ce80b83a6f6eaebd7c90f0bc5615 Mon Sep 17 00:00:00 2001 -From: Gustavo Zacarias <gustavo@zacarias.com.ar> -Date: Tue, 9 Aug 2016 11:52:19 +0200 -Subject: [PATCH] OPcache: flock mechanism is obviously linux so force it. - -Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> -Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> -[Bernd: update for 7.2.12 & 7.3.2] -Signed-off-by: Adam Duskett <aduskett@gmail.com> -[aduskett@gmail.com: Update for 7.3.0] ---- - ext/opcache/config.m4 | 34 ++-------------------------------- - 1 file changed, 2 insertions(+), 32 deletions(-) - -diff --git a/ext/opcache/config.m4 b/ext/opcache/config.m4 -index fbb9b21..ffddc8e 100644 ---- a/ext/opcache/config.m4 -+++ b/ext/opcache/config.m4 -@@ -334,58 +334,8 @@ int main() { - msg=yes],[msg=no],[msg=no]) - AC_MSG_RESULT([$msg]) - --flock_type=unknown --AC_MSG_CHECKING(for struct flock layout) -- --if test "$flock_type" = "unknown"; then --AC_RUN_IFELSE([AC_LANG_SOURCE([[ -- #include <fcntl.h> -- struct flock lock = { 1, 2, 3, 4, 5, 6, 7 }; -- int main() { -- if(lock.l_type == 1 && lock.l_whence == 2 && lock.l_start == 6 && lock.l_len== 7) { -- return 0; -- } -- return 1; -- } --]])], [ -- flock_type=aix64 -- AC_DEFINE([HAVE_FLOCK_AIX64], [], [Struct flock is 64-bit AIX-type]) --], []) --fi -- --if test "$flock_type" = "unknown"; then --AC_RUN_IFELSE([AC_LANG_SOURCE([[ -- #include <fcntl.h> -- struct flock lock = { 1, 2, 3, 4, 5 }; -- int main() { -- if(lock.l_type == 1 && lock.l_whence == 2 && lock.l_start == 3 && lock.l_len == 4) { -- return 0; -- } -- return 1; -- } --]])], [ -- flock_type=linux -- AC_DEFINE([HAVE_FLOCK_LINUX], [], [Struct flock is Linux-type]) --], []) --fi -- --if test "$flock_type" = "unknown"; then --AC_RUN_IFELSE([AC_LANG_SOURCE([[ -- #include <fcntl.h> -- struct flock lock = { 1, 2, 3, 4, 5 }; -- int main() { -- if(lock.l_start == 1 && lock.l_len == 2 && lock.l_type == 4 && lock.l_whence == 5) { -- return 0; -- } -- return 1; -- } --]])], [ -- flock_type=bsd -- AC_DEFINE([HAVE_FLOCK_BSD], [], [Struct flock is BSD-type]) --], []) --fi -- --AC_MSG_RESULT([$flock_type]) -+flock_type=linux -+AC_DEFINE([HAVE_FLOCK_LINUX], [], [Struct flock is Linux-type]) - - if test "$flock_type" = "unknown"; then - AC_MSG_ERROR([Don't know how to define struct flock on this system[,] set --enable-opcache=no]) --- -2.7.4 - diff --git a/package/php/php.hash b/package/php/php.hash index 5d74a28bc7..8a9814d10e 100644 --- a/package/php/php.hash +++ b/package/php/php.hash @@ -1,5 +1,5 @@ # From http://php.net/downloads.php -sha256 010b868b4456644ae227d05ad236c8b0a1f57dc6320e7e5ad75e86c5baf0a9a8 php-7.3.2.tar.xz +sha256 6bb03e79a183d0cb059a6d117bbb2e0679cab667fb713a13c6a16f56bebab9b3 php-7.3.3.tar.xz # License file sha256 f689b8fa63bea7950ce6a21bf52ed88ea0d77673ee76e6de12f51191174d91b8 LICENSE diff --git a/package/php/php.mk b/package/php/php.mk index 061b2f2609..ea6deca7c1 100644 --- a/package/php/php.mk +++ b/package/php/php.mk @@ -4,7 +4,7 @@ # ################################################################################ -PHP_VERSION = 7.3.2 +PHP_VERSION = 7.3.3 PHP_SITE = http://www.php.net/distributions PHP_SOURCE = php-$(PHP_VERSION).tar.xz PHP_INSTALL_STAGING = YES diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index 3a99df13d4..85c0162c93 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -294,7 +294,8 @@ $(BUILD_DIR)/%/.stamp_staging_installed: $(addprefix $(STAGING_DIR)/usr/bin/,$($(PKG)_CONFIG_SCRIPTS)) ;\ fi @$(call MESSAGE,"Fixing libtool files") - $(Q)find $(STAGING_DIR)/usr/lib* -name "*.la" | xargs --no-run-if-empty \ + for la in $$(find $(STAGING_DIR)/usr/lib* -name "*.la"); do \ + cp -a "$${la}" "$${la}.fixed" && \ $(SED) "s:$(BASE_DIR):@BASE_DIR@:g" \ -e "s:$(STAGING_DIR):@STAGING_DIR@:g" \ $(if $(TOOLCHAIN_EXTERNAL_INSTALL_DIR),\ @@ -303,7 +304,14 @@ $(BUILD_DIR)/%/.stamp_staging_installed: $(if $(TOOLCHAIN_EXTERNAL_INSTALL_DIR),\ -e "s:@TOOLCHAIN_EXTERNAL_INSTALL_DIR@:$(TOOLCHAIN_EXTERNAL_INSTALL_DIR):g") \ -e "s:@STAGING_DIR@:$(STAGING_DIR):g" \ - -e "s:@BASE_DIR@:$(BASE_DIR):g" + -e "s:@BASE_DIR@:$(BASE_DIR):g" \ + "$${la}.fixed" && \ + if cmp -s "$${la}" "$${la}.fixed"; then \ + rm -f "$${la}.fixed"; \ + else \ + mv "$${la}.fixed" "$${la}"; \ + fi || exit 1; \ + done @$(call step_end,install-staging) $(Q)touch $@ diff --git a/package/pure-ftpd/pure-ftpd.mk b/package/pure-ftpd/pure-ftpd.mk index ae3ca9d1f0..7012268874 100644 --- a/package/pure-ftpd/pure-ftpd.mk +++ b/package/pure-ftpd/pure-ftpd.mk @@ -31,6 +31,13 @@ ifeq ($(BR2_PACKAGE_LIBSODIUM),y) PURE_FTPD_DEPENDENCIES += libsodium endif +ifeq ($(BR2_PACKAGE_OPENLDAP),y) +PURE_FTPD_CONF_OPTS += --with-ldap +PURE_FTPD_DEPENDENCIES += openldap +else +PURE_FTPD_CONF_OPTS += --without-ldap +endif + ifeq ($(BR2_PACKAGE_OPENSSL),y) PURE_FTPD_CONF_OPTS += --with-tls PURE_FTPD_DEPENDENCIES += openssl diff --git a/package/putty/0001-Fix-compilation-with-NO_GSSAPI.patch b/package/putty/0001-Fix-compilation-with-NO_GSSAPI.patch new file mode 100644 index 0000000000..56a29e19dc --- /dev/null +++ b/package/putty/0001-Fix-compilation-with-NO_GSSAPI.patch @@ -0,0 +1,266 @@ +From 7ad08649a223a4cd61e67d8334a147f55c79399d Mon Sep 17 00:00:00 2001 +From: Jacob Nevins <jacobn@chiark.greenend.org.uk> +Date: Mon, 25 Mar 2019 23:46:59 +0000 +Subject: [PATCH] Fix compilation with NO_GSSAPI. + +This is a fairly shallow patch, which removes the UI and interactions +with external libraries. Some other machinery (which is dead code in +this configuration) is left in place. + +Adapted by me from a patch by Jeroen Roovers. + +Signed-off-by: Baruch Siach <baruch@tkos.co.il> +--- +Upstream status: commit 7ad08649a22 + + config.c | 4 ++++ + settings.c | 12 ++++++++++-- + ssh.c | 16 +++++++++++++++- + ssh2transport.c | 3 +-- + ssh2userauth.c | 8 ++++++-- + sshserver.c | 13 ++++++++++++- + 6 files changed, 48 insertions(+), 8 deletions(-) + +diff --git a/config.c b/config.c +index 9c299feecc21..6528a9696584 100644 +--- a/config.c ++++ b/config.c +@@ -2442,10 +2442,12 @@ void setup_config_box(struct controlbox *b, bool midsession, + HELPCTX(ssh_kexlist), + kexlist_handler, P(NULL)); + c->listbox.height = KEX_MAX; ++#ifndef NO_GSSAPI + ctrl_checkbox(s, "Attempt GSSAPI key exchange", + 'k', HELPCTX(ssh_gssapi), + conf_checkbox_handler, + I(CONF_try_gssapi_kex)); ++#endif + + s = ctrl_getset(b, "Connection/SSH/Kex", "repeat", + "Options controlling key re-exchange"); +@@ -2455,11 +2457,13 @@ void setup_config_box(struct controlbox *b, bool midsession, + conf_editbox_handler, + I(CONF_ssh_rekey_time), + I(-1)); ++#ifndef NO_GSSAPI + ctrl_editbox(s, "Minutes between GSS checks (0 for never)", NO_SHORTCUT, 20, + HELPCTX(ssh_kex_repeat), + conf_editbox_handler, + I(CONF_gssapirekey), + I(-1)); ++#endif + ctrl_editbox(s, "Max data before rekey (0 for no limit)", 'x', 20, + HELPCTX(ssh_kex_repeat), + conf_editbox_handler, +diff --git a/settings.c b/settings.c +index 8d56302677d9..54f5ab7b2919 100644 +--- a/settings.c ++++ b/settings.c +@@ -592,21 +592,25 @@ void save_open_settings(settings_w *sesskey, Conf *conf) + write_setting_b(sesskey, "Compression", conf_get_bool(conf, CONF_compression)); + write_setting_b(sesskey, "TryAgent", conf_get_bool(conf, CONF_tryagent)); + write_setting_b(sesskey, "AgentFwd", conf_get_bool(conf, CONF_agentfwd)); ++#ifndef NO_GSSAPI + write_setting_b(sesskey, "GssapiFwd", conf_get_bool(conf, CONF_gssapifwd)); ++#endif + write_setting_b(sesskey, "ChangeUsername", conf_get_bool(conf, CONF_change_username)); + wprefs(sesskey, "Cipher", ciphernames, CIPHER_MAX, conf, CONF_ssh_cipherlist); + wprefs(sesskey, "KEX", kexnames, KEX_MAX, conf, CONF_ssh_kexlist); + wprefs(sesskey, "HostKey", hknames, HK_MAX, conf, CONF_ssh_hklist); + write_setting_i(sesskey, "RekeyTime", conf_get_int(conf, CONF_ssh_rekey_time)); ++#ifndef NO_GSSAPI + write_setting_i(sesskey, "GssapiRekey", conf_get_int(conf, CONF_gssapirekey)); ++#endif + write_setting_s(sesskey, "RekeyBytes", conf_get_str(conf, CONF_ssh_rekey_data)); + write_setting_b(sesskey, "SshNoAuth", conf_get_bool(conf, CONF_ssh_no_userauth)); + write_setting_b(sesskey, "SshBanner", conf_get_bool(conf, CONF_ssh_show_banner)); + write_setting_b(sesskey, "AuthTIS", conf_get_bool(conf, CONF_try_tis_auth)); + write_setting_b(sesskey, "AuthKI", conf_get_bool(conf, CONF_try_ki_auth)); ++#ifndef NO_GSSAPI + write_setting_b(sesskey, "AuthGSSAPI", conf_get_bool(conf, CONF_try_gssapi_auth)); + write_setting_b(sesskey, "AuthGSSAPIKEX", conf_get_bool(conf, CONF_try_gssapi_kex)); +-#ifndef NO_GSSAPI + wprefs(sesskey, "GSSLibs", gsslibkeywords, ngsslibs, conf, CONF_ssh_gsslist); + write_setting_filename(sesskey, "GSSCustom", conf_get_filename(conf, CONF_ssh_gss_custom)); + #endif +@@ -937,7 +941,9 @@ void load_open_settings(settings_r *sesskey, Conf *conf) + gppb(sesskey, "TryAgent", true, conf, CONF_tryagent); + gppb(sesskey, "AgentFwd", false, conf, CONF_agentfwd); + gppb(sesskey, "ChangeUsername", false, conf, CONF_change_username); ++#ifndef NO_GSSAPI + gppb(sesskey, "GssapiFwd", false, conf, CONF_gssapifwd); ++#endif + gprefs(sesskey, "Cipher", "\0", + ciphernames, CIPHER_MAX, conf, CONF_ssh_cipherlist); + { +@@ -990,7 +996,9 @@ void load_open_settings(settings_r *sesskey, Conf *conf) + gprefs(sesskey, "HostKey", "ed25519,ecdsa,rsa,dsa,WARN", + hknames, HK_MAX, conf, CONF_ssh_hklist); + gppi(sesskey, "RekeyTime", 60, conf, CONF_ssh_rekey_time); ++#ifndef NO_GSSAPI + gppi(sesskey, "GssapiRekey", GSS_DEF_REKEY_MINS, conf, CONF_gssapirekey); ++#endif + gpps(sesskey, "RekeyBytes", "1G", conf, CONF_ssh_rekey_data); + { + /* SSH-2 only by default */ +@@ -1007,9 +1015,9 @@ void load_open_settings(settings_r *sesskey, Conf *conf) + gppb(sesskey, "SshBanner", true, conf, CONF_ssh_show_banner); + gppb(sesskey, "AuthTIS", false, conf, CONF_try_tis_auth); + gppb(sesskey, "AuthKI", true, conf, CONF_try_ki_auth); ++#ifndef NO_GSSAPI + gppb(sesskey, "AuthGSSAPI", true, conf, CONF_try_gssapi_auth); + gppb(sesskey, "AuthGSSAPIKEX", true, conf, CONF_try_gssapi_kex); +-#ifndef NO_GSSAPI + gprefs(sesskey, "GSSLibs", "\0", + gsslibkeywords, ngsslibs, conf, CONF_ssh_gsslist); + gppfile(sesskey, "GSSCustom", conf, CONF_ssh_gss_custom); +diff --git a/ssh.c b/ssh.c +index e35ebc64e2b5..e8ad61b8085d 100644 +--- a/ssh.c ++++ b/ssh.c +@@ -50,7 +50,9 @@ struct Ssh { + ssh_sharing_state *connshare; + bool attempting_connshare; + ++#ifndef NO_GSSAPI + struct ssh_connection_shared_gss_state gss_state; ++#endif + + char *savedhost; + int savedport; +@@ -252,10 +254,18 @@ static void ssh_got_ssh_version(struct ssh_version_receiver *rcv, + conf_get_bool(ssh->conf, CONF_tryagent), username, + conf_get_bool(ssh->conf, CONF_change_username), + conf_get_bool(ssh->conf, CONF_try_ki_auth), ++#ifndef NO_GSSAPI + conf_get_bool(ssh->conf, CONF_try_gssapi_auth), + conf_get_bool(ssh->conf, CONF_try_gssapi_kex), + conf_get_bool(ssh->conf, CONF_gssapifwd), +- &ssh->gss_state); ++ &ssh->gss_state ++#else ++ false, ++ false, ++ false, ++ NULL ++#endif ++ ); + ssh_connect_ppl(ssh, userauth_layer); + transport_child_layer = userauth_layer; + +@@ -267,7 +277,11 @@ static void ssh_got_ssh_version(struct ssh_version_receiver *rcv, + ssh->fullhostname, + ssh_verstring_get_local(old_bpp), + ssh_verstring_get_remote(old_bpp), ++#ifndef NO_GSSAPI + &ssh->gss_state, ++#else ++ NULL, ++#endif + &ssh->stats, transport_child_layer, false); + ssh_connect_ppl(ssh, ssh->base_layer); + +diff --git a/ssh2transport.c b/ssh2transport.c +index 8640d89d4be4..5e8955a0275f 100644 +--- a/ssh2transport.c ++++ b/ssh2transport.c +@@ -1781,6 +1781,7 @@ static void ssh2_transport_gss_update(struct ssh2_transport_state *s, + if (mins > 0 && s->gss_ctxt_lifetime <= mins * 60) + s->gss_status |= GSS_CTXT_EXPIRES; + } ++#endif /* NO_GSSAPI */ + + ptrlen ssh2_transport_get_session_id(PacketProtocolLayer *ppl) + { +@@ -1805,8 +1806,6 @@ void ssh2_transport_notify_auth_done(PacketProtocolLayer *ppl) + queue_idempotent_callback(&s->ppl.ic_process_queue); + } + +-#endif /* NO_GSSAPI */ +- + static bool ssh2_transport_get_specials( + PacketProtocolLayer *ppl, add_special_fn_t add_special, void *ctx) + { +diff --git a/ssh2userauth.c b/ssh2userauth.c +index fc4139230557..7f5a129295ab 100644 +--- a/ssh2userauth.c ++++ b/ssh2userauth.c +@@ -613,8 +613,10 @@ static void ssh2_userauth_process_queue(PacketProtocolLayer *ppl) + * Scan it for method identifiers we know about. + */ + bool srv_pubkey = false, srv_passwd = false; +- bool srv_keyb_inter = false, srv_gssapi = false; +- bool srv_gssapi_keyex_auth = false; ++ bool srv_keyb_inter = false; ++#ifndef NO_GSSAPI ++ bool srv_gssapi = false, srv_gssapi_keyex_auth = false; ++#endif + + for (ptrlen method; get_commasep_word(&methods, &method) ;) { + if (ptrlen_eq_string(method, "publickey")) +@@ -623,10 +625,12 @@ static void ssh2_userauth_process_queue(PacketProtocolLayer *ppl) + srv_passwd = true; + else if (ptrlen_eq_string(method, "keyboard-interactive")) + srv_keyb_inter = true; ++#ifndef NO_GSSAPI + else if (ptrlen_eq_string(method, "gssapi-with-mic")) + srv_gssapi = true; + else if (ptrlen_eq_string(method, "gssapi-keyex")) + srv_gssapi_keyex_auth = true; ++#endif + } + + /* +diff --git a/sshserver.c b/sshserver.c +index 5f6e7ddeeaec..5c34bb356757 100644 +--- a/sshserver.c ++++ b/sshserver.c +@@ -50,7 +50,9 @@ struct server { + PacketProtocolLayer *base_layer; + ConnectionLayer *cl; + ++#ifndef NO_GSSAPI + struct ssh_connection_shared_gss_state gss_state; ++#endif + }; + + static void ssh_server_free_callback(void *vsrv); +@@ -245,9 +247,11 @@ Plug *ssh_server_plug( + bufchain_init(&srv->out_raw); + bufchain_init(&srv->dummy_user_input); + ++#ifndef NO_GSSAPI + /* FIXME: replace with sensible */ + srv->gss_state.libs = snew(struct ssh_gss_liblist); + srv->gss_state.libs->nlibraries = 0; ++#endif + + return &srv->plug; + } +@@ -297,7 +301,9 @@ static void ssh_server_free_callback(void *vsrv) + conf_free(srv->conf); + log_free(srv->logctx); + ++#ifndef NO_GSSAPI + sfree(srv->gss_state.libs); /* FIXME: replace with sensible */ ++#endif + + sfree(srv); + +@@ -442,7 +448,12 @@ static void server_got_ssh_version(struct ssh_version_receiver *rcv, + srv->conf, NULL, 0, NULL, + ssh_verstring_get_remote(old_bpp), + ssh_verstring_get_local(old_bpp), +- &srv->gss_state, &srv->stats, transport_child_layer, true); ++#ifndef NO_GSSAPI ++ &srv->gss_state, ++#else ++ NULL, ++#endif ++ &srv->stats, transport_child_layer, true); + ssh2_transport_provide_hostkeys( + srv->base_layer, srv->hostkeys, srv->nhostkeys); + if (userauth_layer) +-- +2.20.1 + diff --git a/package/putty/0002-unix-uxpoll-need-_XOPEN_SOURCE.patch b/package/putty/0002-unix-uxpoll-need-_XOPEN_SOURCE.patch new file mode 100644 index 0000000000..fb4b6c26e5 --- /dev/null +++ b/package/putty/0002-unix-uxpoll-need-_XOPEN_SOURCE.patch @@ -0,0 +1,39 @@ +From c1b9d07d39e33e40d2ad04be176367cf48271cfd Mon Sep 17 00:00:00 2001 +From: Baruch Siach <baruch@tkos.co.il> +Date: Tue, 26 Mar 2019 20:00:45 +0200 +Subject: [PATCH] unix/uxpoll: need _XOPEN_SOURCE +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The code needs _XOPEN_SOURCE for some poll() flags. + +Fix this build failure with uClibc: + +./../unix/uxpoll.c: In function ‘pollwrap_add_fd_rwx’: +./../unix/uxpoll.c:75:32: error: ‘POLLRDNORM’ undeclared (first use in this function); did you mean ‘POLLNVAL’? + #define SELECT_R_IN (POLLIN | POLLRDNORM | POLLRDBAND) + ^ +./../unix/uxpoll.c:87:19: note: in expansion of macro ‘SELECT_R_IN’ + events |= SELECT_R_IN; + ^~~~~~~~~~~ + +Signed-off-by: Baruch Siach <baruch@tkos.co.il> +--- +Upstream status: issue reported to upstream developers + + unix/uxpoll.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/unix/uxpoll.c b/unix/uxpoll.c +index bbc5490d125d..6fe6ac7ba0c1 100644 +--- a/unix/uxpoll.c ++++ b/unix/uxpoll.c +@@ -1,3 +1,4 @@ ++#define _XOPEN_SOURCE + #include <poll.h> + + #include "putty.h" +-- +2.20.1 + diff --git a/package/putty/0003-Fix-uClibc-build-issues.patch b/package/putty/0003-Fix-uClibc-build-issues.patch new file mode 100644 index 0000000000..ceefded976 --- /dev/null +++ b/package/putty/0003-Fix-uClibc-build-issues.patch @@ -0,0 +1,93 @@ +From 0554cfbb926a2ba26efda08865b270af8536e0bb Mon Sep 17 00:00:00 2001 +From: Simon Tatham <anakin@pobox.com> +Date: Tue, 26 Mar 2019 20:03:09 +0200 +Subject: [PATCH] Fix uClibc build issues +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fix two uClibc build failures. + +Missing sys/auxv.h header: + +./../unix/uxutils.c:5:10: fatal error: sys/auxv.h: No such file or directory + #include <sys/auxv.h> + ^~~~~~~~~~~~ + +Missing futimes() implementation: + +./../unix/uxsftpserver.c: In function ‘uss_fsetstat’: +./../unix/uxsftpserver.c:441:25: warning: implicit declaration of function ‘futimes’; did you mean ‘lutimes’? [-Wimplicit-function-declaration] + #define FD_PREFIX(func) f ## func + ^ +./../unix/uxsftpserver.c:435:17: note: in expansion of macro ‘FD_PREFIX’ + if (api_prefix(utimes)(api_arg, tv) < 0) \ + ^~~~~~~~~~ +./../unix/uxsftpserver.c:470:5: note: in expansion of macro ‘SETSTAT_GUTS’ + SETSTAT_GUTS(FD_PREFIX, fd, attrs, success); + ^~~~~~~~~~~~ + +unix/uxsftpserver.o: In function `uss_fsetstat': +uxsftpserver.c:(.text+0x1058): undefined reference to `futimes' + +Signed-off-by: Baruch Siach <baruch@tkos.co.il> +--- +Upstream status: patch suggested by upstream developer Simon Tatham + + configure.ac | 3 ++- + unix/uxsftpserver.c | 10 ++++++++++ + unix/uxutils.c | 3 ++- + 3 files changed, 14 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 35552ed24dbe..1949ef62f219 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -173,8 +173,9 @@ AC_CHECK_LIB(X11, XOpenDisplay, + [GTK_LIBS="-lX11 $GTK_LIBS" + AC_DEFINE([HAVE_LIBX11],[],[Define if libX11.a is available])]) + +-AC_CHECK_FUNCS([getaddrinfo posix_openpt ptsname setresuid strsignal updwtmpx fstatat dirfd]) ++AC_CHECK_FUNCS([getaddrinfo posix_openpt ptsname setresuid strsignal updwtmpx fstatat dirfd futimes]) + AC_CHECK_DECLS([CLOCK_MONOTONIC], [], [], [[#include <time.h>]]) ++AC_CHECK_HEADERS([sys/auxv.h asm/hwcap.h]) + AC_SEARCH_LIBS([clock_gettime], [rt], [AC_DEFINE([HAVE_CLOCK_GETTIME],[],[Define if clock_gettime() is available])]) + + AC_CACHE_CHECK([for SO_PEERCRED and dependencies], [x_cv_linux_so_peercred], [ +diff --git a/unix/uxsftpserver.c b/unix/uxsftpserver.c +index 6fab0ba090d6..a90344e04219 100644 +--- a/unix/uxsftpserver.c ++++ b/unix/uxsftpserver.c +@@ -412,6 +412,16 @@ static void uss_fstat(SftpServer *srv, SftpReplyBuilder *reply, + } + } + ++#if !HAVE_FUTIMES ++static inline int futimes(int fd, const struct timeval tv[2]) ++{ ++ /* If the OS doesn't support futimes(3) then we have to pretend it ++ * always returns failure */ ++ errno = EINVAL; ++ return -1; ++} ++#endif ++ + /* + * The guts of setstat and fsetstat, macroised so that they can call + * fchown(fd,...) or chown(path,...) depending on parameters. +diff --git a/unix/uxutils.c b/unix/uxutils.c +index fcbcc4d422c1..f01bc2c14a2d 100644 +--- a/unix/uxutils.c ++++ b/unix/uxutils.c +@@ -1,6 +1,7 @@ + #include "ssh.h" + +-#if defined __linux__ && (defined __arm__ || defined __aarch64__) ++#if defined __linux__ && (defined __arm__ || defined __aarch64__) && \ ++ HAVE_SYS_AUXV_H && HAVE_ASM_HWCAP_H + + #include <sys/auxv.h> + #include <asm/hwcap.h> +-- +2.20.1 + diff --git a/package/putty/putty.hash b/package/putty/putty.hash index e0527105c1..30f51848f8 100644 --- a/package/putty/putty.hash +++ b/package/putty/putty.hash @@ -1,3 +1,6 @@ -# Hashes from: http://the.earth.li/~sgtatham/putty/0.70/{sha256,sha512}sums -sha256 bb8aa49d6e96c5a8e18a057f3150a1695ed99a24eef699e783651d1f24e7b0be putty-0.70.tar.gz -sha512 2aaf4fa2b4ad2d82eb5cdc4419ade79e0c5d8bd3c093db92b3c048e6107f85a5f1647f9d8203cda0906ce2b926725a75319f981cb32e6f1ebf50b1f738564fed putty-0.70.tar.gz +# Hashes from: http://the.earth.li/~sgtatham/putty/0.71/{sha256,sha512}sums +sha256 2f931ce2f89780cc8ca7bbed90fcd22c44515d2773f5fa954069e209b48ec6b8 putty-0.71.tar.gz +sha512 f8791210bd5925b26d51b13f0558eea15dbac40808051165b236d6436226f5c2b0aa7d69288ed9e2bddc1066455678cfd0af73ef6b715a136c42f3b6f754ac07 putty-0.71.tar.gz + +# Locally calculated +sha256 b517b4a9504ba0f651d5e590245197b88d9a81d073905cc798cc9464c5ca7ba8 LICENCE diff --git a/package/putty/putty.mk b/package/putty/putty.mk index 52f2d4c3dd..68622a5743 100644 --- a/package/putty/putty.mk +++ b/package/putty/putty.mk @@ -4,13 +4,14 @@ # ################################################################################ -PUTTY_VERSION = 0.70 +PUTTY_VERSION = 0.71 PUTTY_SITE = http://the.earth.li/~sgtatham/putty/$(PUTTY_VERSION) -PUTTY_SUBDIR = unix PUTTY_LICENSE = MIT PUTTY_LICENSE_FILES = LICENCE PUTTY_CONF_OPTS = --disable-gtktest PUTTY_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -Wno-error" +# Patching configure.ac +PUTTY_AUTORECONF = YES ifeq ($(BR2_PACKAGE_LIBGTK2),y) PUTTY_CONF_OPTS += --with-gtk=2 diff --git a/package/python-aiojobs/Config.in b/package/python-aiojobs/Config.in index 54d6c02a8e..ab61985164 100644 --- a/package/python-aiojobs/Config.in +++ b/package/python-aiojobs/Config.in @@ -1,7 +1,6 @@ config BR2_PACKAGE_PYTHON_AIOJOBS bool "python-aiojobs" depends on BR2_PACKAGE_PYTHON3 - select BR2_PACKAGE_PYTHON_AIOHTTP # runtime help Jobs scheduler for managing background task (asyncio). diff --git a/package/qt5/qt5webkit/Config.in b/package/qt5/qt5webkit/Config.in index 72c641b9f7..e8008f7bab 100644 --- a/package/qt5/qt5webkit/Config.in +++ b/package/qt5/qt5webkit/Config.in @@ -3,10 +3,13 @@ config BR2_PACKAGE_QT5WEBKIT depends on !BR2_STATIC_LIBS depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE depends on BR2_HOST_GCC_AT_LEAST_4_8 # icu + depends on BR2_INSTALL_LIBSTDCPP # leveldb depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # icu + depends on BR2_TOOLCHAIN_HAS_THREADS # leveldb depends on !BR2_BINFMT_FLAT # icu # assumes a FPU is available on MIPS depends on !BR2_MIPS_SOFT_FLOAT + select BR2_PACKAGE_LEVELDB select BR2_PACKAGE_QT5BASE select BR2_PACKAGE_QT5BASE_ICU select BR2_PACKAGE_QT5BASE_GUI diff --git a/package/qt5/qt5webkit/qt5webkit.mk b/package/qt5/qt5webkit/qt5webkit.mk index e8d368fb01..a0a0998d12 100644 --- a/package/qt5/qt5webkit/qt5webkit.mk +++ b/package/qt5/qt5webkit/qt5webkit.mk @@ -16,7 +16,7 @@ endif QT5WEBKIT_SOURCE = qtwebkit-opensource-src-$(QT5WEBKIT_VERSION).tar.xz QT5WEBKIT_DEPENDENCIES = \ host-bison host-flex host-gperf host-python host-ruby \ - qt5base sqlite + leveldb qt5base sqlite QT5WEBKIT_INSTALL_STAGING = YES QT5WEBKIT_LICENSE_FILES = Source/WebCore/LICENSE-LGPL-2 Source/WebCore/LICENSE-LGPL-2.1 @@ -45,7 +45,7 @@ endef QT5WEBKIT_PRE_CONFIGURE_HOOKS += QT5WEBKIT_PYTHON2_SYMLINK define QT5WEBKIT_CONFIGURE_CMDS - (cd $(@D); $(TARGET_MAKE_ENV) $(QT5WEBKIT_ENV) $(HOST_DIR)/bin/qmake) + (cd $(@D); $(TARGET_MAKE_ENV) $(QT5WEBKIT_ENV) $(HOST_DIR)/bin/qmake WEBKIT_CONFIG+=use_system_leveldb) endef define QT5WEBKIT_BUILD_CMDS diff --git a/package/rdesktop/0002-openssl11.patch b/package/rdesktop/0002-openssl11.patch deleted file mode 100644 index 050d6f6903..0000000000 --- a/package/rdesktop/0002-openssl11.patch +++ /dev/null @@ -1,130 +0,0 @@ -From bd6aa6acddf0ba640a49834807872f4cc0d0a773 Mon Sep 17 00:00:00 2001 -From: Jani Hakala <jjhakala@gmail.com> -Date: Thu, 16 Jun 2016 14:28:15 +0300 -Subject: [PATCH] Fix OpenSSL 1.1 compability issues - -Some data types have been made opaque in OpenSSL version 1.1 so -stack allocation and accessing struct fields directly does not work. - -Downloaded from upstream commit -https://github.com/rdesktop/rdesktop/commit/bd6aa6acddf0ba640a49834807872f4cc0d0a773 - -Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> ---- - ssl.c | 65 ++++++++++++++++++++++++++++++++++++----------------------- - 1 file changed, 40 insertions(+), 25 deletions(-) - -diff --git a/ssl.c b/ssl.c -index 48751255..032e9b9e 100644 ---- a/ssl.c -+++ b/ssl.c -@@ -88,7 +88,7 @@ rdssl_rsa_encrypt(uint8 * out, uint8 * in, int len, uint32 modulus_size, uint8 * - uint8 * exponent) - { - BN_CTX *ctx; -- BIGNUM mod, exp, x, y; -+ BIGNUM *mod, *exp, *x, *y; - uint8 inr[SEC_MAX_MODULUS_SIZE]; - int outlen; - -@@ -98,24 +98,24 @@ rdssl_rsa_encrypt(uint8 * out, uint8 * in, int len, uint32 modulus_size, uint8 * - reverse(inr, len); - - ctx = BN_CTX_new(); -- BN_init(&mod); -- BN_init(&exp); -- BN_init(&x); -- BN_init(&y); -- -- BN_bin2bn(modulus, modulus_size, &mod); -- BN_bin2bn(exponent, SEC_EXPONENT_SIZE, &exp); -- BN_bin2bn(inr, len, &x); -- BN_mod_exp(&y, &x, &exp, &mod, ctx); -- outlen = BN_bn2bin(&y, out); -+ mod = BN_new(); -+ exp = BN_new(); -+ x = BN_new(); -+ y = BN_new(); -+ -+ BN_bin2bn(modulus, modulus_size, mod); -+ BN_bin2bn(exponent, SEC_EXPONENT_SIZE, exp); -+ BN_bin2bn(inr, len, x); -+ BN_mod_exp(y, x, exp, mod, ctx); -+ outlen = BN_bn2bin(y, out); - reverse(out, outlen); - if (outlen < (int) modulus_size) - memset(out + outlen, 0, modulus_size - outlen); - -- BN_free(&y); -- BN_clear_free(&x); -- BN_free(&exp); -- BN_free(&mod); -+ BN_free(y); -+ BN_clear_free(x); -+ BN_free(exp); -+ BN_free(mod); - BN_CTX_free(ctx); - } - -@@ -146,12 +146,20 @@ rdssl_cert_to_rkey(RDSSL_CERT * cert, uint32 * key_len) - - Kudos to Richard Levitte for the following (. intiutive .) - lines of code that resets the OID and let's us extract the key. */ -- nid = OBJ_obj2nid(cert->cert_info->key->algor->algorithm); -+ -+ X509_PUBKEY *key = NULL; -+ X509_ALGOR *algor = NULL; -+ -+ key = X509_get_X509_PUBKEY(cert); -+ algor = X509_PUBKEY_get0_param(NULL, NULL, 0, &algor, key); -+ -+ nid = OBJ_obj2nid(algor->algorithm); -+ - if ((nid == NID_md5WithRSAEncryption) || (nid == NID_shaWithRSAEncryption)) - { - DEBUG_RDP5(("Re-setting algorithm type to RSA in server certificate\n")); -- ASN1_OBJECT_free(cert->cert_info->key->algor->algorithm); -- cert->cert_info->key->algor->algorithm = OBJ_nid2obj(NID_rsaEncryption); -+ X509_PUBKEY_set0_param(key, OBJ_nid2obj(NID_rsaEncryption), -+ 0, NULL, NULL, 0); - } - epk = X509_get_pubkey(cert); - if (NULL == epk) -@@ -201,14 +209,24 @@ rdssl_rkey_get_exp_mod(RDSSL_RKEY * rkey, uint8 * exponent, uint32 max_exp_len, - { - int len; - -- if ((BN_num_bytes(rkey->e) > (int) max_exp_len) || -- (BN_num_bytes(rkey->n) > (int) max_mod_len)) -+ BIGNUM *e = NULL; -+ BIGNUM *n = NULL; -+ -+#if OPENSSL_VERSION_NUMBER < 0x10100000L -+ e = rkey->e; -+ n = rkey->n; -+#else -+ RSA_get0_key(rkey, &e, &n, NULL); -+#endif -+ -+ if ((BN_num_bytes(e) > (int) max_exp_len) || -+ (BN_num_bytes(n) > (int) max_mod_len)) - { - return 1; - } -- len = BN_bn2bin(rkey->e, exponent); -+ len = BN_bn2bin(e, exponent); - reverse(exponent, len); -- len = BN_bn2bin(rkey->n, modulus); -+ len = BN_bn2bin(n, modulus); - reverse(modulus, len); - return 0; - } -@@ -229,8 +247,5 @@ void - rdssl_hmac_md5(const void *key, int key_len, const unsigned char *msg, int msg_len, - unsigned char *md) - { -- HMAC_CTX ctx; -- HMAC_CTX_init(&ctx); - HMAC(EVP_md5(), key, key_len, msg, msg_len, md, NULL); -- HMAC_CTX_cleanup(&ctx); - } diff --git a/package/rdesktop/rdesktop.hash b/package/rdesktop/rdesktop.hash index cc1f55b771..a43fab76fa 100644 --- a/package/rdesktop/rdesktop.hash +++ b/package/rdesktop/rdesktop.hash @@ -1,3 +1,3 @@ -# From http://sourceforge.net/projects/rdesktop/files/rdesktop/1.8.3/ -md5 86e8b368a7c715e74ded92e0d7912dc5 rdesktop-1.8.3.tar.gz -sha1 aa1e56043782e04a0121357b24874e3ad6ae7b1d rdesktop-1.8.3.tar.gz +# Locally calculated +sha256 516f04df92f16eba04c96bbf9aeb05b9da686689c2bb5c107e0941583e09f933 rdesktop-1.8.4.tar.gz +sha256 fc82ca8b6fdb18d4e3e85cfd8ab58d1bcd3f1b29abe782895abd91d64763f8e7 COPYING diff --git a/package/rdesktop/rdesktop.mk b/package/rdesktop/rdesktop.mk index da8a80ef92..d97422cf13 100644 --- a/package/rdesktop/rdesktop.mk +++ b/package/rdesktop/rdesktop.mk @@ -4,8 +4,8 @@ # ################################################################################ -RDESKTOP_VERSION = 1.8.3 -RDESKTOP_SITE = http://downloads.sourceforge.net/project/rdesktop/rdesktop/$(RDESKTOP_VERSION) +RDESKTOP_VERSION = 1.8.4 +RDESKTOP_SITE = $(call github,rdesktop,rdesktop,v$(RDESKTOP_VERSION)) RDESKTOP_DEPENDENCIES = host-pkgconf openssl xlib_libX11 xlib_libXt \ $(if $(BR2_PACKAGE_ALSA_LIB_PCM),alsa-lib) \ $(if $(BR2_PACKAGE_LIBAO),libao) \ @@ -13,6 +13,8 @@ RDESKTOP_DEPENDENCIES = host-pkgconf openssl xlib_libX11 xlib_libXt \ RDESKTOP_CONF_OPTS = --with-openssl=$(STAGING_DIR)/usr --disable-credssp RDESKTOP_LICENSE = GPL-3.0+ RDESKTOP_LICENSE_FILES = COPYING +# From git +RDESKTOP_AUTORECONF = YES ifeq ($(BR2_PACKAGE_PCSC_LITE),y) RDESKTOP_DEPENDENCIES += pcsc-lite diff --git a/package/samba4/samba4.hash b/package/samba4/samba4.hash index de349c3049..70cea4809b 100644 --- a/package/samba4/samba4.hash +++ b/package/samba4/samba4.hash @@ -1,4 +1,4 @@ # Locally calculated after checking pgp signature -# https://download.samba.org/pub/samba/stable/samba-4.9.4.tar.asc -sha256 6d98a8d8bcccbe788e4bbb406362e6676311aca711a3f3cc9b3a404bb9ff0b4f samba-4.9.4.tar.gz +# https://download.samba.org/pub/samba/stable/samba-4.9.5.tar.asc +sha256 078956d2d98e22011265afd4b7221efe4861067dcba4a031583b01f34d423700 samba-4.9.5.tar.gz sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING diff --git a/package/samba4/samba4.mk b/package/samba4/samba4.mk index 9f771cf82f..9b226a0e05 100644 --- a/package/samba4/samba4.mk +++ b/package/samba4/samba4.mk @@ -4,7 +4,7 @@ # ################################################################################ -SAMBA4_VERSION = 4.9.4 +SAMBA4_VERSION = 4.9.5 SAMBA4_SITE = https://download.samba.org/pub/samba/stable SAMBA4_SOURCE = samba-$(SAMBA4_VERSION).tar.gz SAMBA4_INSTALL_STAGING = YES diff --git a/package/sunxi-tools/0001-meminfo-Access-to-io-memory-via-pointers.patch b/package/sunxi-tools/0001-meminfo-Access-to-io-memory-via-pointers.patch new file mode 100644 index 0000000000..997c413f23 --- /dev/null +++ b/package/sunxi-tools/0001-meminfo-Access-to-io-memory-via-pointers.patch @@ -0,0 +1,59 @@ +From 5c0a443ba336f10a8db6a99c769aa84ad37ed4d2 Mon Sep 17 00:00:00 2001 +From: Vadim Kochan <vadim4j@gmail.com> +Date: Wed, 20 Feb 2019 02:48:43 +0200 +Subject: [PATCH] meminfo: Access to io memory via pointers + +The main reason for this is to be able compile with musl library, +because there is no support of inx/outx functions for ARM platform. + +Signed-off-by: Vadim Kochan <vadim4j@gmail.com> +--- + meminfo.c | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/meminfo.c b/meminfo.c +index 0b0ff23..7d9f10f 100644 +--- a/meminfo.c ++++ b/meminfo.c +@@ -22,7 +22,6 @@ + #include <sys/mman.h> + #include <stdint.h> + #include <errno.h> +-#include <sys/io.h> + #include <stdbool.h> + + #include "common.h" +@@ -74,24 +73,26 @@ static enum sunxi_soc_version soc_version; + unsigned int + sunxi_io_read(void *base, int offset) + { +- return inl((unsigned long) (base + offset)); ++ unsigned long port = (unsigned long) (base + offset); ++ return *((volatile unsigned long *) port); + } + + void + sunxi_io_write(void *base, int offset, unsigned int value) + { +- outl(value, (unsigned long) (base + offset)); ++ unsigned long port = (unsigned long) (base + offset); ++ *((volatile unsigned long *) port) = value; + } + + void + sunxi_io_mask(void *base, int offset, unsigned int value, unsigned int mask) + { +- unsigned int tmp = inl((unsigned long) (base + offset)); ++ unsigned int tmp = sunxi_io_read(base, offset); + + tmp &= ~mask; + tmp |= value & mask; + +- outl(tmp, (unsigned long) (base + offset)); ++ sunxi_io_write(base, offset, tmp); + } + + +-- +2.14.1 + diff --git a/package/supertux/0001-Fix-build-on-PowerPC.patch b/package/supertux/0001-Fix-build-on-PowerPC.patch new file mode 100644 index 0000000000..e40abac6b0 --- /dev/null +++ b/package/supertux/0001-Fix-build-on-PowerPC.patch @@ -0,0 +1,81 @@ +From cfcd478fe69ca1b3923f388a349a4f67ac2c03aa Mon Sep 17 00:00:00 2001 +From: Shawn Anastasio <shawn@anastas.io> +Date: Sun, 3 Feb 2019 13:22:57 -0600 +Subject: [PATCH] Fix build on PowerPC + +On PowerPC-based architectures, SDL includes the altivec.h header +for SIMD intrinsics. Unfortunately, altivec.h defines some types which +conflict with C++ types like bool and std::vector. This commit adds +a wrapper for altivec.h which resolves these conflicts and allows +supertux to build and run. + +Tested on a ppc64le workstation. + +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Retrieved from: +https://github.com/SuperTux/supertux/pull/1056/commits/cfcd478fe69ca1b3923f388a349a4f67ac2c03aa] +--- + CMakeLists.txt | 15 ++++++++++++++- + src/ppc/altivec.h | 6 ++++++ + 2 files changed, 20 insertions(+), 1 deletion(-) + create mode 100644 src/ppc/altivec.h + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 70b9673b50..b9b6ea3ea6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -376,6 +376,11 @@ endif() + + include(ConfigureChecks) + ++# Include altivec wrapper on ppc ++if(CMAKE_SYSTEM_PROCESSOR MATCHES "^ppc.*") ++ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/ppc) ++endif() ++ + + ## Also build external/squirrel + +@@ -420,6 +425,13 @@ if(NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/external/tinygettext/CMakeLists.txt) + message(FATAL_ERROR "tinygettext submodule is not checked out or ${CMAKE_CURRENT_SOURCE_DIR}/external/tinygettext/CMakeLists.txt is missing") + endif() + ++# Include altivec wrapper on ppc ++if(CMAKE_SYSTEM_PROCESSOR MATCHES "^ppc.*") ++ set(TINYGETTEXT_CXX_FLAGS "-isystem ${CMAKE_CURRENT_SOURCE_DIR}/src/ppc ${CMAKE_CXX_FLAGS}") ++else() ++ set(TINYGETTEXT_CXX_FLAGS "${CMAKE_CXX_FLAGS}") ++endif() ++ + set(TINYGETTEXT_PREFIX ${CMAKE_BINARY_DIR}/tinygettext/) + ExternalProject_Add(tinygettext + SOURCE_DIR "${CMAKE_SOURCE_DIR}/external/tinygettext/" +@@ -428,7 +440,7 @@ ExternalProject_Add(tinygettext + -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER} + -DCMAKE_C_FLAGS=${CMAKE_C_FLAGS} + -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} +- -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} ++ -DCMAKE_CXX_FLAGS=${TINYGETTEXT_CXX_FLAGS} + -DBUILD_SHARED_LIBS=OFF + -DHAVE_SDL=ON + -DVCPKG_BUILD=${VCPKG_BUILD} +@@ -443,6 +455,7 @@ set_target_properties(tinygettext_lib PROPERTIES IMPORTED_LOCATION "${TINYGETTEX + + include_directories(SYSTEM ${TINYGETTEXT_PREFIX}/include) + ++ + ## external/SDL_ttf with patches + find_package(Freetype REQUIRED) + find_package(RAQM) +diff --git a/src/ppc/altivec.h b/src/ppc/altivec.h +new file mode 100644 +index 0000000000..7ede8246ed +--- /dev/null ++++ b/src/ppc/altivec.h +@@ -0,0 +1,6 @@ ++#include_next <altivec.h> ++ ++// The altivec headers redefine vector and bool which conflict ++// with C++'s bool type and std::vector. Undefine them here. ++#undef vector ++#undef bool diff --git a/package/swupdate/0001-Makefile-fix-static-build.patch b/package/swupdate/0001-Makefile-fix-static-build.patch new file mode 100644 index 0000000000..56901f9871 --- /dev/null +++ b/package/swupdate/0001-Makefile-fix-static-build.patch @@ -0,0 +1,62 @@ +From 15a324f8c67548f219256a5a75ba8123cc5bdac6 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> +Date: Mon, 4 Mar 2019 21:51:36 +0100 +Subject: [PATCH] Makefile: fix static build + +Don't build and install lua_swupdate.so if HAVE_LUA isn't set to y +otherwise build will fail if the toolchain only suports building static +libraries + +Fixes: + - http://autobuild.buildroot.org/results/c11c4d26983e0347d96f3dda62e6d72b031967bb + +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Upstream status: https://github.com/sbabic/swupdate/pull/49] +--- + Makefile | 12 +++++++++--- + 1 file changed, 9 insertions(+), 3 deletions(-) + +diff --git a/Makefile b/Makefile +index cfeb9a6..cac99b5 100644 +--- a/Makefile ++++ b/Makefile +@@ -369,11 +369,15 @@ tools-bins := $(patsubst $(tools-y)/%.c,$(tools-y)/%,$(wildcard $(tools-y)/*.c)) + tools-bins-unstr:= $(patsubst %,%_unstripped,$(tools-bins)) + tools-all := $(tools-objs) + ++ifeq ($(HAVE_LUA),y) ++lua_swupdate := lua_swupdate.so ++endif ++ + shared-dirs := $(shareds-y) + shared-libs := $(patsubst %,%/built-in.o, $(shareds-y)) + shared-all := $(shared-libs) + +-all: swupdate ${tools-bins} lua_swupdate.so ++all: swupdate ${tools-bins} ${lua_swupdate} + + # Do modpost on a prelinked vmlinux. The finally linked vmlinux has + # relevant sections renamed as per the linker script. +@@ -434,7 +438,6 @@ install: all + install -d ${DESTDIR}/usr/bin + install -d ${DESTDIR}/usr/include + install -d ${DESTDIR}/usr/lib +- install -d ${DESTDIR}/usr/lib/lua/$(LUAVER) + install -m 755 swupdate ${DESTDIR}/usr/bin + for i in ${tools-bins};do \ + install -m 755 $$i ${DESTDIR}/usr/bin; \ +@@ -443,7 +446,10 @@ install: all + install -m 0644 include/swupdate_status.h ${DESTDIR}/usr/include + install -m 0644 include/progress_ipc.h ${DESTDIR}/usr/include + install -m 0755 ipc/lib.a ${DESTDIR}/usr/lib/libswupdate.a +- install -m 0755 lua_swupdate.so $(DESTDIR)/usr/lib/lua/$(LUAVER) ++ if [ $(HAVE_LUA) = y ]; then \ ++ install -d ${DESTDIR}/usr/lib/lua/$(LUAVER); \ ++ install -m 0755 ${lua_swupdate} $(DESTDIR)/usr/lib/lua/$(LUAVER); \ ++ fi + + PHONY += run-tests + tests: \ +-- +2.14.1 + diff --git a/package/tpm2-abrmd/Config.in b/package/tpm2-abrmd/Config.in index d18f736182..db0ea66112 100644 --- a/package/tpm2-abrmd/Config.in +++ b/package/tpm2-abrmd/Config.in @@ -16,8 +16,8 @@ config BR2_PACKAGE_TPM2_ABRMD The package also provides a client library for interacting with the daemon via TPM Command Transmission Interface (TCTI). - It is intended for use with the SAPI library (libsapi) like - any other TCTI. + It is intended for use with the SAPI library (libtss2-sys) + like any other TCTI. https://github.com/tpm2-software/tpm2-abrmd diff --git a/package/tpm2-tss/Config.in b/package/tpm2-tss/Config.in index 2fb5b0f213..2d619750f8 100644 --- a/package/tpm2-tss/Config.in +++ b/package/tpm2-tss/Config.in @@ -17,7 +17,7 @@ config BR2_PACKAGE_TPM2_TSS variants may be useful for integration into event-driven programming environments. Both the synchronous and asynchronous API are exposed through a single library: - libsapi. + libtss2-sys. * TPM Command Transmission Interface (TCTI) that is described in the same specification. This API provides a standard @@ -26,10 +26,10 @@ config BR2_PACKAGE_TPM2_TSS implementing the TCTI API will be implemented as a way to abstract various platform specific IPC mechanisms. Currently this repository provides two TCTI implementations: - libtcti-device and libtcti-socket. The prior should be used - for direct access to the TPM through the Linux kernel - driver. The later implements the protocol exposed by the - Microsoft software TPM2 simulator. + libtss2-tcti-device and libtss2-tcti-mssim. The prior should + be used for direct access to the TPM through the Linux + kernel driver. The later implements the protocol exposed by + the Microsoft software TPM2 simulator. https://github.com/tpm2-software/tpm2-tss diff --git a/package/vsftpd/0004-Prevent-hang-in-SIGCHLD-handler.patch b/package/vsftpd/0004-Prevent-hang-in-SIGCHLD-handler.patch new file mode 100644 index 0000000000..0732c5f632 --- /dev/null +++ b/package/vsftpd/0004-Prevent-hang-in-SIGCHLD-handler.patch @@ -0,0 +1,87 @@ +From 1e65a0a15f819b8bf1b551bd84f71d0da1f5a00c Mon Sep 17 00:00:00 2001 +From: Martin Sehnoutka <msehnout@redhat.com> +Date: Thu, 17 Nov 2016 13:02:27 +0100 +Subject: [PATCH] Prevent hanging in SIGCHLD handler. + +vsftpd can now handle pam_exec.so in pam.d config without hanging +in SIGCHLD handler. + +[Abdelmalek: +Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1198259 +Fetched from: +https://src.fedoraproject.org/cgit/rpms/vsftpd.git/plain/0026-Prevent-hanging-in-SIGCHLD-handler.patch] +Signed-off-by: Abdelmalek Benelouezzane <abdelmalek.benelouezzane@savoirfairelinux.com> +--- + sysutil.c | 4 ++-- + sysutil.h | 2 +- + twoprocess.c | 13 +++++++++++-- + 3 files changed, 14 insertions(+), 5 deletions(-) + +diff --git a/sysutil.c b/sysutil.c +index 6d7cb3f..099748f 100644 +--- a/sysutil.c ++++ b/sysutil.c +@@ -608,13 +608,13 @@ vsf_sysutil_exit(int exit_code) + } + + struct vsf_sysutil_wait_retval +-vsf_sysutil_wait(void) ++vsf_sysutil_wait(int hang) + { + struct vsf_sysutil_wait_retval retval; + vsf_sysutil_memclr(&retval, sizeof(retval)); + while (1) + { +- int sys_ret = wait(&retval.exit_status); ++ int sys_ret = waitpid(-1, &retval.exit_status, hang ? 0 : WNOHANG); + if (sys_ret < 0 && errno == EINTR) + { + vsf_sysutil_check_pending_actions(kVSFSysUtilUnknown, 0, 0); +diff --git a/sysutil.h b/sysutil.h +index c145bdf..13153cd 100644 +--- a/sysutil.h ++++ b/sysutil.h +@@ -177,7 +177,7 @@ struct vsf_sysutil_wait_retval + int PRIVATE_HANDS_OFF_syscall_retval; + int PRIVATE_HANDS_OFF_exit_status; + }; +-struct vsf_sysutil_wait_retval vsf_sysutil_wait(void); ++struct vsf_sysutil_wait_retval vsf_sysutil_wait(int hang); + int vsf_sysutil_wait_reap_one(void); + int vsf_sysutil_wait_get_retval( + const struct vsf_sysutil_wait_retval* p_waitret); +diff --git a/twoprocess.c b/twoprocess.c +index 33d84dc..b1891e7 100644 +--- a/twoprocess.c ++++ b/twoprocess.c +@@ -47,8 +47,17 @@ static void + handle_sigchld(void* duff) + { + +- struct vsf_sysutil_wait_retval wait_retval = vsf_sysutil_wait(); ++ struct vsf_sysutil_wait_retval wait_retval = vsf_sysutil_wait(0); + (void) duff; ++ if (!vsf_sysutil_wait_get_exitcode(&wait_retval) && ++ !vsf_sysutil_wait_get_retval(&wait_retval)) ++ /* There was nobody to wait for, possibly caused by underlying library ++ * which created a new process through fork()/vfork() and already picked ++ * it up, e.g. by pam_exec.so or integrity check routines for libraries ++ * when FIPS mode is on (nss freebl), which can lead to calling prelink ++ * if the prelink package is installed. ++ */ ++ return; + /* Child died, so we'll do the same! Report it as an error unless the child + * exited normally with zero exit code + */ +@@ -390,7 +399,7 @@ common_do_login(struct vsf_session* p_sess, const struct mystr* p_user_str, + priv_sock_send_result(p_sess->parent_fd, PRIV_SOCK_RESULT_OK); + if (!p_sess->control_use_ssl) + { +- (void) vsf_sysutil_wait(); ++ (void) vsf_sysutil_wait(1); + } + else + { +-- +2.14.4 + diff --git a/package/wavemon/Config.in b/package/wavemon/Config.in index b72a617759..0cb4cb5c69 100644 --- a/package/wavemon/Config.in +++ b/package/wavemon/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_WAVEMON bool "wavemon" - depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_NCURSES select BR2_PACKAGE_LIBNL help @@ -15,5 +15,5 @@ config BR2_PACKAGE_WAVEMON https://github.com/uoaerg/wavemon -comment "wavemon needs a toolchain w/ NPTL" - depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL +comment "wavemon needs a toolchain w/ threads" + depends on !BR2_TOOLCHAIN_HAS_THREADS diff --git a/package/wireshark/0001-packet-gtp-c-remove-unneeded-named-structures.patch b/package/wireshark/0001-packet-gtp-c-remove-unneeded-named-structures.patch new file mode 100644 index 0000000000..0a894a282e --- /dev/null +++ b/package/wireshark/0001-packet-gtp-c-remove-unneeded-named-structures.patch @@ -0,0 +1,75 @@ +From 020e25b660250c97c8085e64cf85074ccfcdd06b Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> +Date: Tue, 5 Mar 2019 20:59:49 +0100 +Subject: [PATCH] packet-gtp.c: remove unneeded named structures + +In uclibc, _header is already in sigcontext.h: + +packet-gtp.c:2361:16: error: redefinition of 'struct _header' + typedef struct _header { + ^~~~~~~ +In file included from /home/dawncrow/buildroot-test/scripts/instance-0/output/host/i686-buildroot-linux-uclibc/sysroot/usr/include/bits/sigcontext.h:30:0, + from /home/dawncrow/buildroot-test/scripts/instance-0/output/host/i686-buildroot-linux-uclibc/sysroot/usr/include/signal.h:311, + from /home/dawncrow/buildroot-test/scripts/instance-0/output/host/i686-buildroot-linux-uclibc/sysroot/usr/include/glib-2.0/glib/gbacktrace.h:36, + from /home/dawncrow/buildroot-test/scripts/instance-0/output/host/i686-buildroot-linux-uclibc/sysroot/usr/include/glib-2.0/glib.h:34, + from ../../epan/proto.h:28, + from ../../epan/packet.h:14, + from packet-gtp.c:43: +/home/dawncrow/buildroot-test/scripts/instance-0/output/host/i686-buildroot-linux-uclibc/sysroot/usr/include/asm/sigcontext.h:173:8: note: originally defined here + struct _header { + +To fix this issue, transform _header and other named structures (with +the exception of gtp_conv_info_t) into unnamed structures + +Fixes: + - http://autobuild.buildroot.org/results/c41d42fe3489bc63c42e7ce7a9eccb1b4ca7b9b2 + +Change-Id: I78116233c2a8dd7c54723b7cb558254bd5143bd2 +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +Reviewed-on: https://code.wireshark.org/review/32335 +Petri-Dish: Guy Harris <guy@alum.mit.edu> +Tested-by: Petri Dish Buildbot +Reviewed-by: Guy Harris <guy@alum.mit.edu> +[Retrieved from: +https://github.com/wireshark/wireshark/commit/020e25b660250c97c8085e64cf85074ccfcdd06b] +--- + epan/dissectors/packet-gtp.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/epan/dissectors/packet-gtp.c b/epan/dissectors/packet-gtp.c +index 4c40e7aa54..971197e4ae 100644 +--- a/epan/dissectors/packet-gtp.c ++++ b/epan/dissectors/packet-gtp.c +@@ -2170,7 +2170,7 @@ GHashTable* session_table; + /* Relation between <teid,ip> -> frame */ + wmem_tree_t* frame_tree; + +-typedef struct gtp_info { ++typedef struct { + guint32 teid; + guint32 frame; + } gtp_info_t; +@@ -2482,7 +2482,7 @@ static int decode_gtp_node_addr(tvbuff_t * tvb, int offset, packet_info * pinfo, + static int decode_gtp_priv_ext(tvbuff_t * tvb, int offset, packet_info * pinfo, proto_tree * tree, session_args_t * args _U_); + static int decode_gtp_unknown(tvbuff_t * tvb, int offset, packet_info * pinfo, proto_tree * tree, session_args_t * args _U_); + +-typedef struct _gtp_opt { ++typedef struct { + int optcode; + int (*decode) (tvbuff_t *, int, packet_info *, proto_tree *, session_args_t *); + } gtp_opt_t; +@@ -2661,12 +2661,12 @@ id_to_str(tvbuff_t *tvb, gint offset) + /* Next definitions and function check_field_presence checks if given field + * in GTP packet is compliant with ETSI + */ +-typedef struct _header { ++typedef struct { + guint8 code; + guint8 presence; + } ext_header; + +-typedef struct _message { ++typedef struct { + guint8 code; + ext_header fields[32]; + } _gtp_mess_items; diff --git a/package/wireshark/wireshark.hash b/package/wireshark/wireshark.hash index bad0a0fd45..071940e1c1 100644 --- a/package/wireshark/wireshark.hash +++ b/package/wireshark/wireshark.hash @@ -1,4 +1,4 @@ -# From: https://www.wireshark.org/download/src/all-versions/SIGNATURES-2.6.6.txt -sha256 487933ea075bdbb25d8df06017d9c4f49fc20eb7f6ec80af086718ed5550e863 wireshark-2.6.6.tar.xz +# From: https://www.wireshark.org/download/src/all-versions/SIGNATURES-2.6.7.txt +sha256 747b3e7a37414942959f76f198be49dcbcca936bda538c4408942ce71bfd2b71 wireshark-2.6.7.tar.xz # Locally calculated sha256 7cdbed2b697efaa45576a033f1ac0e73cd045644a91c79bbf41d4a7d81dac7bf COPYING diff --git a/package/wireshark/wireshark.mk b/package/wireshark/wireshark.mk index c01238826b..a917efb5f6 100644 --- a/package/wireshark/wireshark.mk +++ b/package/wireshark/wireshark.mk @@ -4,7 +4,7 @@ # ################################################################################ -WIRESHARK_VERSION = 2.6.6 +WIRESHARK_VERSION = 2.6.7 WIRESHARK_SOURCE = wireshark-$(WIRESHARK_VERSION).tar.xz WIRESHARK_SITE = https://www.wireshark.org/download/src/all-versions WIRESHARK_LICENSE = wireshark license @@ -145,6 +145,13 @@ else WIRESHARK_CONF_OPTS += --without-snappy endif +ifeq ($(BR2_PACKAGE_SPANDSP),y) +WIRESHARK_CONF_OPTS += --with-spandsp +WIRESHARK_DEPENDENCIES += spandsp +else +WIRESHARK_CONF_OPTS += --without-spandsp +endif + define WIRESHARK_REMOVE_DOCS find $(TARGET_DIR)/usr/share/wireshark -name '*.txt' -print0 \ -o -name '*.html' -print0 | xargs -0 rm -f diff --git a/package/x11r7/xapp_xdm/xapp_xdm.hash b/package/x11r7/xapp_xdm/xapp_xdm.hash index 207d769fbf..605be9debc 100644 --- a/package/x11r7/xapp_xdm/xapp_xdm.hash +++ b/package/x11r7/xapp_xdm/xapp_xdm.hash @@ -1,2 +1,7 @@ -# From http://lists.x.org/archives/xorg-announce/2011-September/001737.html -sha256 d4da426ddea0124279a3f2e00a26db61944690628ee818a64df9d27352081c47 xdm-1.1.11.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2019-March/002959.html +md5 47c4c3bf8d59b64b64d134df8b5e5ec5 xdm-1.1.12.tar.bz2 +sha1 5cc5590e40837949b1a63cb030878f8ceebd4d85 xdm-1.1.12.tar.bz2 +sha256 0dd283f72dda098d09e2925b9278c95e21551e693a5802ab442d1b577d8327f4 xdm-1.1.12.tar.bz2 +sha512 1a4be0a070ced5db8fda6fc74794c9f9ed0cb37fa440fda6a3a7652aff62dfc3d7ba68b9facf054671ebf0f4db2a0eec29d0aa3716e3407ccd5529bac3553bdb xdm-1.1.12.tar.bz2 +# Locally computed +sha256 b33b4bebbd6511b3e15315e8e29d67f25334ee45da8b7da6e6e97c53a70c6923 COPYING diff --git a/package/x11r7/xapp_xdm/xapp_xdm.mk b/package/x11r7/xapp_xdm/xapp_xdm.mk index 422ee53b10..3c91e21579 100644 --- a/package/x11r7/xapp_xdm/xapp_xdm.mk +++ b/package/x11r7/xapp_xdm/xapp_xdm.mk @@ -4,7 +4,7 @@ # ################################################################################ -XAPP_XDM_VERSION = 1.1.11 +XAPP_XDM_VERSION = 1.1.12 XAPP_XDM_SOURCE = xdm-$(XAPP_XDM_VERSION).tar.bz2 XAPP_XDM_SITE = http://xorg.freedesktop.org/releases/individual/app XAPP_XDM_LICENSE = MIT diff --git a/package/x11r7/xdriver_xf86-video-amdgpu/Config.in b/package/x11r7/xdriver_xf86-video-amdgpu/Config.in index 43090c7559..c42255f55c 100644 --- a/package/x11r7/xdriver_xf86-video-amdgpu/Config.in +++ b/package/x11r7/xdriver_xf86-video-amdgpu/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_XDRIVER_XF86_VIDEO_AMDGPU bool "xf86-video-amdgpu" + depends on BR2_USE_MMU # libdrm depends on BR2_PACKAGE_MESA3D_DRI_DRIVER depends on BR2_PACKAGE_MESA3D_OPENGL_EGL # gbm select BR2_PACKAGE_LIBDRM @@ -11,5 +12,6 @@ config BR2_PACKAGE_XDRIVER_XF86_VIDEO_AMDGPU AMD GPU video driver comment "xf86-video-amdgpu needs egl/opengl support from mesa3d" + depends on BR2_USE_MMU depends on !BR2_PACKAGE_MESA3D_OPENGL_EGL || \ !BR2_PACKAGE_MESA3D_DRI_DRIVER diff --git a/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.hash b/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.hash index 0f34e5178e..d0cbc09038 100644 --- a/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.hash +++ b/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.hash @@ -1,2 +1,2 @@ # From http://lists.x.org/archives/xorg-announce/2013-September/002324.html -sha256 9dd4b326498223abbfdf786089a46ea3db4fa6bbd341308eb48a9e00bc3fd51b xf86-video-fbdev-0.4.4.tar.bz2 +sha256 dcc3d85f378022180e437a9ec00a59b6cb7680ff79c40394d695060af2374699 xf86-video-fbdev-0.5.0.tar.bz2 diff --git a/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.mk b/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.mk index f39311e611..a480befdd0 100644 --- a/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.mk +++ b/package/x11r7/xdriver_xf86-video-fbdev/xdriver_xf86-video-fbdev.mk @@ -4,7 +4,7 @@ # ################################################################################ -XDRIVER_XF86_VIDEO_FBDEV_VERSION = 0.4.4 +XDRIVER_XF86_VIDEO_FBDEV_VERSION = 0.5.0 XDRIVER_XF86_VIDEO_FBDEV_SOURCE = xf86-video-fbdev-$(XDRIVER_XF86_VIDEO_FBDEV_VERSION).tar.bz2 XDRIVER_XF86_VIDEO_FBDEV_SITE = http://xorg.freedesktop.org/releases/individual/driver XDRIVER_XF86_VIDEO_FBDEV_LICENSE = MIT diff --git a/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.hash b/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.hash index 6b50cb1c79..0dbea635f2 100644 --- a/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.hash +++ b/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.hash @@ -1,2 +1,7 @@ -# From http://lists.x.org/archives/xorg-announce/2015-March/002554.html -sha256 81fe09867918fff258296e1e1e159f0dc639cb30d201c53519f25ab73af4e4e2 libXdmcp-1.1.2.tar.bz2 +# From https://lists.x.org/archives/xorg-announce/2019-March/002974.html +md5 115c5c12ecce0e749cd91d999a5fd160 libXdmcp-1.1.3.tar.bz2 +sha1 0a8f8a274f829331efb1e8e2027c38631b204dd0 libXdmcp-1.1.3.tar.bz2 +sha256 20523b44aaa513e17c009e873ad7bbc301507a3224c232610ce2e099011c6529 libXdmcp-1.1.3.tar.bz2 +sha512 cb1d4650f97d66e73acd2465ec7d757b9b797cce2f85e301860a44997a461837eea845ec9bd5b639ec5ca34c804f8bdd870697a5ce3f4e270b687c9ef74f25ec libXdmcp-1.1.3.tar.bz2 +# Locally computed +sha256 8a3c3f35b0dbcb60a4e242b9e4394a352a65bb27deb2938ea1e2e62a626e16e9 COPYING diff --git a/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk b/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk index 44a6f00543..1182903e87 100644 --- a/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk +++ b/package/x11r7/xlib_libXdmcp/xlib_libXdmcp.mk @@ -4,7 +4,7 @@ # ################################################################################ -XLIB_LIBXDMCP_VERSION = 1.1.2 +XLIB_LIBXDMCP_VERSION = 1.1.3 XLIB_LIBXDMCP_SOURCE = libXdmcp-$(XLIB_LIBXDMCP_VERSION).tar.bz2 XLIB_LIBXDMCP_SITE = http://xorg.freedesktop.org/releases/individual/lib XLIB_LIBXDMCP_LICENSE = MIT diff --git a/package/xen/0004-xenpmd-make-32-bit-gcc-8-1-non-debug-build-work.patch b/package/xen/0004-xenpmd-make-32-bit-gcc-8-1-non-debug-build-work.patch new file mode 100644 index 0000000000..9c51c554cd --- /dev/null +++ b/package/xen/0004-xenpmd-make-32-bit-gcc-8-1-non-debug-build-work.patch @@ -0,0 +1,79 @@ +From e75c9dc85fdeeeda0b98d8cd8d784e0508c3ffb8 Mon Sep 17 00:00:00 2001 +From: Wei Liu <wei.liu2@citrix.com> +Date: Thu, 26 Jul 2018 15:58:54 +0100 +Subject: [PATCH] xenpmd: make 32 bit gcc 8.1 non-debug build work + +32 bit gcc 8.1 non-debug build yields: + +xenpmd.c:354:23: error: '%02x' directive output may be truncated writing between 2 and 8 bytes into a region of size 3 [-Werror=format-truncation=] + snprintf(val, 3, "%02x", + ^~~~ +xenpmd.c:354:22: note: directive argument in the range [40, 2147483778] + snprintf(val, 3, "%02x", + ^~~~~~ +xenpmd.c:354:5: note: 'snprintf' output between 3 and 9 bytes into a destination of size 3 + snprintf(val, 3, "%02x", + ^~~~~~~~~~~~~~~~~~~~~~~~ + (unsigned int)(9*4 + + ~~~~~~~~~~~~~~~~~~~~ + strlen(info->model_number) + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + strlen(info->serial_number) + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + strlen(info->battery_type) + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + strlen(info->oem_info) + 4)); + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +All info->* used in calculation are 32 bytes long, and the parsing +code makes sure they are null-terminated, so the end result of the +expression won't exceed 255, which should be able to be fit into 3 +bytes in hexadecimal format. + +Add an assertion to make gcc happy. + +Signed-off-by: Wei Liu <wei.liu2@citrix.com> +Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +[Retrieved from: +https://github.com/xen-project/xen/commit/e75c9dc85fdeeeda0b98d8cd8d784e0508c3ffb8] +--- + tools/xenpmd/xenpmd.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/tools/xenpmd/xenpmd.c b/tools/xenpmd/xenpmd.c +index 56412a9a81c..1c801caa712 100644 +--- a/tools/xenpmd/xenpmd.c ++++ b/tools/xenpmd/xenpmd.c +@@ -40,6 +40,7 @@ + #include <unistd.h> + #include <sys/stat.h> + #include <xenstore.h> ++#include <assert.h> + + /* #define RUN_STANDALONE */ + #define RUN_IN_SIMULATE_MODE +@@ -345,18 +346,17 @@ void write_ulong_lsb_first(char *temp_val, unsigned long val) + void write_battery_info_to_xenstore(struct battery_info *info) + { + char val[1024], string_info[256]; ++ unsigned int len; + + xs_mkdir(xs, XBT_NULL, "/pm"); + + memset(val, 0, 1024); + memset(string_info, 0, 256); + /* write 9 dwords (so 9*4) + length of 4 strings + 4 null terminators */ +- snprintf(val, 3, "%02x", +- (unsigned int)(9*4 + +- strlen(info->model_number) + +- strlen(info->serial_number) + +- strlen(info->battery_type) + +- strlen(info->oem_info) + 4)); ++ len = 9 * 4 + strlen(info->model_number) + strlen(info->serial_number) + ++ strlen(info->battery_type) + strlen(info->oem_info) + 4; ++ assert(len < 255); ++ snprintf(val, 3, "%02x", len); + write_ulong_lsb_first(val+2, info->present); + write_ulong_lsb_first(val+10, info->design_capacity); + write_ulong_lsb_first(val+18, info->last_full_capacity); diff --git a/utils/test-pkg b/utils/test-pkg index 1995fa8578..cce4679b04 100755 --- a/utils/test-pkg +++ b/utils/test-pkg @@ -2,12 +2,20 @@ set -e TOOLCHAINS_CSV='support/config-fragments/autobuild/toolchain-configs.csv' +TEMP_CONF="" + +do_clean() { + if [ ! -z "${TEMP_CONF}" ]; then + rm -f "${TEMP_CONF}" + fi +} main() { local o O opts local cfg dir pkg random toolchains_dir toolchain all number mode local ret nb nb_skip nb_fail nb_legal nb_tc build_dir local -a toolchains + local pkg_br_name o='hac:d:n:p:r:t:' O='help,config-snippet:build-dir:package:,random:,toolchains-dir:' @@ -50,8 +58,15 @@ main() { ;; esac done + + trap do_clean INT TERM HUP EXIT + if [ -z "${cfg}" ]; then - printf "error: no config snippet specified\n" >&2; exit 1 + pkg_br_name="${pkg//-/_}" + pkg_br_name="BR2_PACKAGE_${pkg_br_name^^}" + TEMP_CONF=$(mktemp /tmp/test-${pkg}-config.XXXXXX) + echo "${pkg_br_name}=y" > ${TEMP_CONF} + cfg="${TEMP_CONF}" fi if [ ! -e "${cfg}" ]; then printf "error: %s: no such file\n" "${cfg}" >&2; exit 1 |