diff --git a/include/prereq-build.mk b/include/prereq-build.mk index 32edc6e437..323e3ba1e6 100644 --- a/include/prereq-build.mk +++ b/include/prereq-build.mk @@ -136,6 +136,10 @@ $(eval $(call SetupHostCommand,bzip2,Please install 'bzip2', \ $(eval $(call SetupHostCommand,wget,Please install GNU 'wget', \ wget --version | grep GNU)) +$(eval $(call SetupHostCommand,install,Please install GNU 'install', \ + install --version | grep GNU, \ + ginstall --version | grep GNU)) + $(eval $(call SetupHostCommand,perl,Please install Perl 5.x, \ perl --version | grep "perl.*v5")) diff --git a/package/kernel/mwlwifi/Makefile b/package/kernel/mwlwifi/Makefile index 61ce5f3743..a28a776fb2 100644 --- a/package/kernel/mwlwifi/Makefile +++ b/package/kernel/mwlwifi/Makefile @@ -21,6 +21,7 @@ PKG_MIRROR_HASH:=0eda0e774a87e58e611d6436350e1cf2be3de50fddde334909a07a15b0c9862 PKG_MAINTAINER:=Imre Kaloz PKG_BUILD_PARALLEL:=1 +PKG_FLAGS:=nonshared include $(INCLUDE_DIR)/kernel.mk include $(INCLUDE_DIR)/package.mk diff --git a/package/libs/elfutils/Makefile b/package/libs/elfutils/Makefile index dd0b8ecdde..3e36dc27b8 100644 --- a/package/libs/elfutils/Makefile +++ b/package/libs/elfutils/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=elfutils PKG_VERSION:=0.180 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://sourceware.org/$(PKG_NAME)/ftp/$(PKG_VERSION) @@ -21,7 +21,7 @@ PKG_CPE_ID:=cpe:/a:elfutils_project:elfutils PKG_FIXUP:=autoreconf PKG_INSTALL:=1 -PKG_USE_MIPS16:=0 +PKG_USE_MIPS16:=1 PKG_BUILD_DEPENDS:=!USE_GLIBC:argp-standalone include $(INCLUDE_DIR)/package.mk diff --git a/package/lienol/luci-app-passwall/luasrc/view/passwall/node_list/link_share_man.htm b/package/lienol/luci-app-passwall/luasrc/view/passwall/node_list/link_share_man.htm index ba900f8168..9017abd722 100644 --- a/package/lienol/luci-app-passwall/luasrc/view/passwall/node_list/link_share_man.htm +++ b/package/lienol/luci-app-passwall/luasrc/view/passwall/node_list/link_share_man.htm @@ -274,17 +274,21 @@ local api = require "luci.model.cbi.passwall.api.api" } url += params; } else if ((v_type === "Xray" && opt.get("protocol").value === "trojan") || v_type === "Trojan" || v_type === "Trojan-Plus" || v_type === "Trojan-Go") { + if (v_type === "Xray" && opt.get("protocol").value === "trojan") { + v_type = "trojan"; + } var v_password = opt.get(!opt.client && v_type === "Trojan-Go" ? "passwords" : "password"); var v_server = opt.get("address"); var v_port = opt.get("port"); url = encodeURIComponent(v_password.value) + "@" + v_server.value + ":" + v_port.value + "/?"; + var params = ""; if (opt.get("tls").checked) { - url += opt.query("sni", "tls_serverName"); + params += opt.query("sni", "tls_serverName"); if (v_type !== "Trojan-Go") { - url += "&tls=1" - url += opt.query("allowinsecure", "tls_allowInsecure"); + params += "&tls=1" + params += opt.query("allowinsecure", "tls_allowInsecure"); } } if (v_type === "Trojan-Go") { @@ -296,17 +300,17 @@ local api = require "luci.model.cbi.passwall.api.api" plugin.option = opt.get("plugin_option").value; plugin.arg = opt.getlist("plugin_arg"); } - url += "&plugin=" + encodeURIComponent(JSON.stringify(plugin)); + params += "&plugin=" + encodeURIComponent(JSON.stringify(plugin)); } - url += opt.query("type", "trojan_transport"); + params += opt.query("type", "trojan_transport"); var ws = (opt.get("trojan_transport").value.indexOf("ws") !== -1); var h2 = (opt.get("trojan_transport").value.indexOf("h2") !== -1); if (ws) { - url += opt.query("host", "ws_host"); - url += opt.query("path", "ws_path"); + params += opt.query("host", "ws_host"); + params += opt.query("path", "ws_path"); } else if (h2) { - url += opt.query("host", "h2_host"); - url += opt.query("path", "h2_path"); + params += opt.query("host", "h2_host"); + params += opt.query("path", "h2_path"); } var enc = "none"; if (opt.get("ss_aead").checked === true) { @@ -314,9 +318,13 @@ local api = require "luci.model.cbi.passwall.api.api" opt.get("ss_aead_method").value + ":" + opt.get("ss_aead_pwd").value; } - url += "&encryption=" + encodeURIComponent(enc); + params += "&encryption=" + encodeURIComponent(enc); } - url += "#" + encodeURI(v_alias.value); + params += "#" + encodeURI(v_alias.value); + if (params[0] == "&") { + params = params.substring(1); + } + url += params; } if (url) { url = v_type.toLowerCase() + "://" + url; @@ -327,9 +335,9 @@ local api = require "luci.model.cbi.passwall.api.api" textarea.select(); try { document.execCommand("copy"); // Security exception may be thrown by some browsers. - s.innerHTML = "<%:Share url to clipboard successfully.%>"; + s.innerHTML = "<%:Share URL to clipboard successfully.%>"; } catch (ex) { - s.innerHTML = "<%:Share url to clipboard unable.%>"; + s.innerHTML = "<%:Share URL to clipboard unable.%>"; } finally { document.body.removeChild(textarea); } diff --git a/package/lienol/luci-app-passwall/po/zh-cn/passwall.po b/package/lienol/luci-app-passwall/po/zh-cn/passwall.po index 9fa953c6da..e5e0c9298c 100644 --- a/package/lienol/luci-app-passwall/po/zh-cn/passwall.po +++ b/package/lienol/luci-app-passwall/po/zh-cn/passwall.po @@ -466,10 +466,10 @@ msgstr "无效的分享URL信息" msgid "Paste Share URL Here" msgstr "在此处粘贴分享信息" -msgid "Share url to clipboard unable." +msgid "Share URL to clipboard unable." msgstr "无法分享URL到剪贴板。" -msgid "Share url to clipboard successfully." +msgid "Share URL to clipboard successfully." msgstr "成功复制分享URL到剪贴板。" msgid "Faltal on get option, please help in debug:" diff --git a/package/lienol/luci-app-passwall/root/usr/share/passwall/iptables.sh b/package/lienol/luci-app-passwall/root/usr/share/passwall/iptables.sh index 5ae53147d9..078c37a8a0 100755 --- a/package/lienol/luci-app-passwall/root/usr/share/passwall/iptables.sh +++ b/package/lienol/luci-app-passwall/root/usr/share/passwall/iptables.sh @@ -48,7 +48,7 @@ comment() { destroy_ipset() { for i in "$@"; do - #ipset -q -F $i + ipset -q -F $i ipset -q -X $i done } diff --git a/package/lienol/luci-app-passwall/root/usr/share/passwall/monitor.sh b/package/lienol/luci-app-passwall/root/usr/share/passwall/monitor.sh index db0b07afb3..b9b89c0b71 100755 --- a/package/lienol/luci-app-passwall/root/usr/share/passwall/monitor.sh +++ b/package/lienol/luci-app-passwall/root/usr/share/passwall/monitor.sh @@ -17,7 +17,7 @@ config_t_get() { echo ${ret:=$3} } -if [ "$(top -bn1 | grep -v grep | grep $CONFIG/monitor.sh | wc -l)" -gt 2 ]; then +if [ "$(pgrep -f $CONFIG/monitor.sh | wc -l)" -gt 2 ]; then exit 1 fi @@ -35,13 +35,12 @@ do #kcptun use_kcp=$(config_n_get $TCP_NODE use_kcp 0) if [ $use_kcp -gt 0 ]; then - icount=$(top -bn1 | grep -v grep | grep "$TMP_BIN_PATH/kcptun" | grep -i "tcp" | wc -l) - if [ $icount = 0 ]; then + if ! pgrep -af "$TMP_BIN_PATH/kcptun.*(tcp|TCP)" > /dev/null 2>&1; then /etc/init.d/$CONFIG restart exit 0 fi fi - icount=$(top -bn1 | grep -v -E 'grep|kcptun' | grep "$TMP_BIN_PATH" | grep -i "TCP" | wc -l) + icount=$(pgrep -af "$TMP_BIN_PATH.*(tcp|TCP)" | grep -v kcptun | wc -l) if [ $icount = 0 ]; then /etc/init.d/$CONFIG restart exit 0 @@ -55,8 +54,7 @@ do if [ "$UDP_NODE" != "nil" ]; then [ "$UDP_NODE" == "tcp" ] && continue [ "$UDP_NODE" == "tcp_" ] && UDP_NODE=$TCP_NODE - icount=$(top -bn1 | grep -v grep | grep "$TMP_BIN_PATH" | grep -i "UDP" | wc -l) - if [ $icount = 0 ]; then + if ! pgrep -af "$TMP_BIN_PATH.*(udp|UDP)" > /dev/null 2>&1; then /etc/init.d/$CONFIG restart exit 0 fi @@ -74,8 +72,7 @@ do fi [ -f "$TMP_BIN_PATH/chinadns-ng" ] && { - icount=$(top -bn1 | grep -v grep | grep $TMP_BIN_PATH/chinadns-ng | wc -l) - if [ $icount = 0 ]; then + if ! pgrep -x "$TMP_BIN_PATH/chinadns-ng" > /dev/null 2>&1; then /etc/init.d/$CONFIG restart exit 0 fi @@ -84,8 +81,7 @@ do #haproxy use_haproxy=$(config_t_get global_haproxy balancing_enable 0) if [ $use_haproxy -gt 0 ]; then - icount=$(top -bn1 | grep -v grep | grep "$TMP_BIN_PATH/haproxy" | wc -l) - if [ $icount = 0 ]; then + if ! pgrep -x "$TMP_BIN_PATH/haproxy" > /dev/null 2>&1; then /etc/init.d/$CONFIG restart exit 0 fi diff --git a/package/ntlf9t/ndpi-netfilter/Makefile b/package/ntlf9t/ndpi-netfilter/Makefile deleted file mode 100644 index 853e746ec4..0000000000 --- a/package/ntlf9t/ndpi-netfilter/Makefile +++ /dev/null @@ -1,66 +0,0 @@ -# -# Copyright (C) 2017 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=ndpi-netfilter -PKG_VERSION:=3.0 -PKG_RELEASE:=1 - -PKG_SOURCE_PROTO:=git -PKG_SOURCE_URL:=https://github.com/betolj/ndpi-netfilter -PKG_MIRROR_HASH:=1a26ea73375a99831be6949faa9bc768e9f4f9e3594286729ec9e61dd6402b07 -PKG_SOURCE_VERSION:=4875069df027199698ba0b7c53541ae2a4e3ba00 - -PKG_LICENSE:=GPL-2.0 -PKG_LICENSE_FILES:=COPYING - -include $(INCLUDE_DIR)/package.mk -include $(INCLUDE_DIR)/kernel.mk - -define Package/iptables-mod-ndpi - SUBMENU:=Firewall - SECTION:=net - CATEGORY:=Network - TITLE:=nDPI successor of OpenDPI - URL:=https://github.com/ntop/nDPI - DEPENDS:=+iptables +iptables-mod-conntrack-extra +kmod-ipt-ndpi - MAINTAINER:=Thomas Heil -endef - -define Package/iptables-mod-ndpi/description - nDPI is a ntop-maintained superset of the popular OpenDPI library -endef - -define Build/Prepare - $(call Build/Prepare/Default) - $(TAR) -zxf $(PKG_BUILD_DIR)/nDPI.tar.gz -C $(PKG_BUILD_DIR) -endef - -MAKE_FLAGS +=\ - KERNEL_DIR="$(LINUX_DIR)" \ - ARCH="$(LINUX_KARCH)" \ - NDPI_PATH=$(PKG_BUILD_DIR)/nDPI \ - CROSS_COMPILE="$(TARGET_CROSS)" \ - all - -define Package/iptables-mod-ndpi/install - $(INSTALL_DIR) $(1)/usr/lib/iptables - $(INSTALL_BIN) $(PKG_BUILD_DIR)/ipt/libxt_ndpi.so $(1)/usr/lib/iptables -endef - -define KernelPackage/ipt-ndpi - SUBMENU:=Netfilter Extensions - TITLE:=nDPI netfilter module - DEPENDS:=+kmod-nf-conntrack +kmod-nf-conntrack-netlink +kmod-ipt-compat-xtables - FILES:= \ - $(PKG_BUILD_DIR)/src/xt_ndpi.ko - AUTOLOAD:=$(call AutoProbe,xt_ndpi) -endef - -$(eval $(call BuildPackage,iptables-mod-ndpi)) -$(eval $(call KernelPackage,ipt-ndpi)) diff --git a/package/ntlf9t/ndpi-netfilter/patches/001-main.patch b/package/ntlf9t/ndpi-netfilter/patches/001-main.patch deleted file mode 100644 index c099fe7dce..0000000000 --- a/package/ntlf9t/ndpi-netfilter/patches/001-main.patch +++ /dev/null @@ -1,126 +0,0 @@ ---- a/nDPI-patch/src/lib/protocols/netflow.c -+++ b/nDPI-patch/src/lib/protocols/netflow.c -@@ -21,6 +21,7 @@ - */ - - -+#include - #include "ndpi_api.h" - - #ifdef NDPI_PROTOCOL_NETFLOW -@@ -29,7 +30,11 @@ - #ifdef WIN32 - extern int gettimeofday(struct timeval * tp, struct timezone * tzp); - #endif -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) - #define do_gettimeofday(a) gettimeofday(a, NULL) -+#else -+#define ktime_get_real_ts64(a) gettimeofday(a, NULL) -+#endif - #endif - - struct flow_ver1_rec { -@@ -105,7 +110,11 @@ static void ndpi_check_netflow(struct ndpi_detection_module_struct *ndpi_struct, - // const u_int8_t *packet_payload = packet->payload; - u_int32_t payload_len = packet->payload_packet_len; - time_t now; -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) - struct timeval now_tv; -+#else -+ struct timespec64 now_tv; -+#endif - - if((packet->udp != NULL) && (payload_len >= 24)) { - u_int16_t version = (packet->payload[0] << 8) + packet->payload[1], uptime_offset; -@@ -158,7 +167,11 @@ static void ndpi_check_netflow(struct ndpi_detection_module_struct *ndpi_struct, - _when = (u_int32_t*)&packet->payload[uptime_offset]; /* Sysuptime */ - when = ntohl(*_when); - -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) - do_gettimeofday(&now_tv); -+#else -+ ktime_get_real_ts64(&now_tv); -+#endif - now = now_tv.tv_sec; - - if(((version == 1) && (when == 0)) ---- a/src/main.c -+++ b/src/main.c -@@ -383,9 +383,16 @@ static void ndpi_gc_flow(void) - union nf_inet_addr *ipdst; - - u64 t1; -+ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) - struct timeval tv; - - do_gettimeofday(&tv); -+#else -+ struct timespec64 tv; -+ -+ ktime_get_real_ts64(&tv); -+#endif - t1 = (uint64_t) tv.tv_sec; - - if (debug_dpi) pr_info ("xt_ndpi: call garbage collector.\n"); -@@ -418,7 +425,11 @@ ndpi_process_packet(struct nf_conn * ct, const uint64_t time, - - u8 exist_flow=0; - u64 t1; -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) - struct timeval tv; -+#else -+ struct timespec64 tv; -+#endif - - spin_lock_bh (&flow_lock); - ipsrc = &ct->tuplehash[IP_CT_DIR_ORIGINAL].tuple.src.u3; -@@ -449,7 +460,11 @@ ndpi_process_packet(struct nf_conn * ct, const uint64_t time, - } - } - -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) - do_gettimeofday(&tv); -+#else -+ ktime_get_real_ts64(&tv); -+#endif - t1 = (uint64_t) tv.tv_sec; - - if (flow == NULL) { -@@ -602,7 +617,11 @@ ndpi_mt(const struct sk_buff *skb, struct xt_action_param *par) - - enum ip_conntrack_info ctinfo; - struct nf_conn * ct; -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) - struct timeval tv; -+#else -+ struct timespec64 tv; -+#endif - struct sk_buff *linearized_skb = NULL; - const struct sk_buff *skb_use = NULL; - -@@ -630,7 +649,7 @@ ndpi_mt(const struct sk_buff *skb, struct xt_action_param *par) - #if LINUX_VERSION_CODE < KERNEL_VERSION(3,0,0) - } else if (nf_ct_is_untracked(skb)){ - #else -- } else if (nf_ct_is_untracked(ct)){ -+ } else if (nf_ct_is_expired(ct)){ - #endif - pr_info ("xt_ndpi: ignoring untracked sk_buff.\n"); - return false; -@@ -641,9 +660,15 @@ ndpi_mt(const struct sk_buff *skb, struct xt_action_param *par) - ip = ip_hdr(skb_use); - tcph = (const void *)ip + ip_hdrlen(skb_use); - -+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0) - do_gettimeofday(&tv); - time = ((uint64_t) tv.tv_sec) * detection_tick_resolution + - tv.tv_usec / (1000000 / detection_tick_resolution); -+#else -+ ktime_get_real_ts64(&tv); -+ time = ((uint64_t) tv.tv_sec) * detection_tick_resolution + -+ (tv.tv_nsec / 1000 )/ (1000000 / detection_tick_resolution); -+#endif - - /* reset for new packets and solve ct collisions */ - if (ctinfo == IP_CT_NEW) { diff --git a/package/ntlf9t/openvpn-easy-rsa-whisky/Makefile b/package/ntlf9t/openvpn-easy-rsa-whisky/Makefile deleted file mode 100644 index 06c99db439..0000000000 --- a/package/ntlf9t/openvpn-easy-rsa-whisky/Makefile +++ /dev/null @@ -1,47 +0,0 @@ -# -# Copyright (C) 2010-2013 OpenWrt.org -# -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. -# - -include $(TOPDIR)/rules.mk - -PKG_NAME:=openvpn-easy-rsa-whisky - -PKG_VERSION:=3.0.6 -PKG_RELEASE:=2 -PKG_SOURCE_URL:=https://github.com/OpenVPN/easy-rsa/releases/download/v$(PKG_VERSION)/ -PKG_SOURCE:=EasyRSA-unix-v$(PKG_VERSION).tgz -PKG_HASH:=cb29aed2d27824e59dbaad547f11dcab380a53c9fe05681249e804af436f1396 -PKG_LICENSE:=GPL-2.0 -PKG_BUILD_DIR:=$(BUILD_DIR)/EasyRSA-v$(PKG_VERSION) - -include $(INCLUDE_DIR)/package.mk - -define Package/openvpn-easy-rsa-whisky - TITLE:=CLI utility to build and manage a PKI CA. - SECTION:=net - CATEGORY:=Network - URL:=http://openvpn.net - SUBMENU:=VPN - DEPENDS:=+openssl-util - PKGARCH:=all -endef - -define Build/Configure -endef - -define Build/Compile -endef - -define Package/openvpn-easy-rsa-whisky/install - $(INSTALL_DIR) $(1)/usr/bin - $(INSTALL_BIN) $(PKG_BUILD_DIR)/easyrsa $(1)/usr/bin/ - $(INSTALL_DIR) $(1)/etc/easy-rsa - $(INSTALL_DATA) $(PKG_BUILD_DIR)/openssl-easyrsa.cnf $(1)/etc/easy-rsa/openssl-easyrsa.cnf - $(INSTALL_DIR) $(1)/etc/easy-rsa/x509-types - $(INSTALL_DATA) $(PKG_BUILD_DIR)/x509-types/* $(1)/etc/easy-rsa/x509-types/ -endef - -$(eval $(call BuildPackage,openvpn-easy-rsa-whisky)) diff --git a/package/ntlf9t/openvpn-easy-rsa-whisky/patches/100-fix_EASYRSA_REQ_CN.patch b/package/ntlf9t/openvpn-easy-rsa-whisky/patches/100-fix_EASYRSA_REQ_CN.patch deleted file mode 100644 index f1c4ee942c..0000000000 --- a/package/ntlf9t/openvpn-easy-rsa-whisky/patches/100-fix_EASYRSA_REQ_CN.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/easyrsa -+++ b/easyrsa -@@ -549,7 +549,7 @@ current CA keypair. If you intended to s - - # Default CN only when not in global EASYRSA_BATCH mode: - # shellcheck disable=SC2015 -- [ "$EASYRSA_BATCH" ] && opts="$opts -batch" || export EASYRSA_REQ_CN="Easy-RSA CA" -+ [ "$EASYRSA_BATCH" ] && opts="$opts -batch" || export EASYRSA_REQ_CN="${EASYRSA_REQ_CN:-Easy-RSA CA}" - - out_key_tmp="$(mktemp "$out_key.XXXXXXXXXX")"; EASYRSA_TEMP_FILE_2="$out_key_tmp" - out_file_tmp="$(mktemp "$out_file.XXXXXXXXXX")"; EASYRSA_TEMP_FILE_3="$out_file_tmp" diff --git a/package/ntlf9t/openvpn-easy-rsa-whisky/patches/101-static_EASYRSA.patch b/package/ntlf9t/openvpn-easy-rsa-whisky/patches/101-static_EASYRSA.patch deleted file mode 100644 index 9da4017801..0000000000 --- a/package/ntlf9t/openvpn-easy-rsa-whisky/patches/101-static_EASYRSA.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/easyrsa -+++ b/easyrsa -@@ -1033,7 +1033,7 @@ vars_setup() { - vars= - - # set up program path -- prog_vars="${0%/*}/vars" -+ prog_vars="/etc/easy-rsa/vars" - # set up PKI path - pki_vars="${EASYRSA_PKI:-$PWD/pki}/vars" - -@@ -1060,7 +1060,7 @@ Note: using Easy-RSA configuration from: - fi - - # Set defaults, preferring existing env-vars if present -- set_var EASYRSA "${0%/*}" -+ set_var EASYRSA "/etc/easy-rsa" - set_var EASYRSA_OPENSSL openssl - set_var EASYRSA_PKI "$PWD/pki" - set_var EASYRSA_DN cn_only diff --git a/package/utils/ucode/Makefile b/package/utils/ucode/Makefile index 64b6c7bcda..6fb9f73c3d 100644 --- a/package/utils/ucode/Makefile +++ b/package/utils/ucode/Makefile @@ -14,7 +14,7 @@ PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=https://github.com/jow-/ucode.git PKG_SOURCE_DATE:=2021-03-19 PKG_SOURCE_VERSION:=4a5b9010ccc56fdf288fe758023af445feb93fad -PKG_MIRROR_HASH:=145a2ce69e14cae9b448de85b94c7a817ba3aea04b1611399186ad36fb88958e +PKG_MIRROR_HASH:=2d15fe2f51ebdeae532a2e8130689400cf2364876e737cfbb1bf9c045719acf1 PKG_MAINTAINER:=Jo-Philipp Wich PKG_LICENSE:=ISC diff --git a/rules.mk b/rules.mk index 099d411c84..08f5d3ca5c 100644 --- a/rules.mk +++ b/rules.mk @@ -75,12 +75,12 @@ IS_PACKAGE_BUILD := $(if $(filter package/%,$(BUILD_SUBDIR)),1) OPTIMIZE_FOR_CPU=$(subst i386,i486,$(ARCH)) ifneq (,$(findstring $(ARCH) , aarch64 aarch64_be powerpc )) - FPIC:=-fPIC + FPIC:=-DPIC -fPIC else - FPIC:=-fpic + FPIC:=-DPIC -fpic endif -HOST_FPIC:=-fPIC +HOST_FPIC:=-DPIC -fPIC ARCH_SUFFIX:=$(call qstrip,$(CONFIG_CPU_TYPE)) GCC_ARCH:= diff --git a/scripts/download.pl b/scripts/download.pl index 3e4b7ba244..8d07b810f9 100755 --- a/scripts/download.pl +++ b/scripts/download.pl @@ -281,6 +281,7 @@ foreach my $mirror (@ARGV) { } unshift @mirrors, "http://182.140.223.146/dl"; +unshift @mirrors, "https://mirror01.download.immortalwrt.org/openwrt-18.06"; unshift @mirrors, "https://openwrt.cc/dl/immortalwrt/openwrt-18.06"; push @mirrors, 'https://sources.cdn.openwrt.org'; push @mirrors, 'https://sources.openwrt.org'; diff --git a/scripts/json_overview_image_info.py b/scripts/json_overview_image_info.py index 23d8dcb857..8dbd24af2d 100755 --- a/scripts/json_overview_image_info.py +++ b/scripts/json_overview_image_info.py @@ -38,10 +38,9 @@ if output: "make", "--no-print-directory", "-C", - "target/linux/{}".format(output["target"].split("/")[0]), + "target/linux/", "val.DEFAULT_PACKAGES", "val.ARCH_PACKAGES", - "DUMP=1", ], stdout=PIPE, stderr=PIPE, @@ -50,7 +49,8 @@ if output: universal_newlines=True, ).stdout.splitlines() - output["default_packages"] = default_packages.split() + output["default_packages"] = sorted(default_packages.split()) + output_path.write_text(json.dumps(output, sort_keys=True, separators=(",", ":"))) else: print("JSON info file script could not find any JSON files for target") diff --git a/target/linux/sunxi/image/cortexa53.mk b/target/linux/sunxi/image/cortexa53.mk index 03f927f4f7..bd7f48ba72 100644 --- a/target/linux/sunxi/image/cortexa53.mk +++ b/target/linux/sunxi/image/cortexa53.mk @@ -37,8 +37,8 @@ TARGET_DEVICES += friendlyarm_nanopi-neo2 define Device/friendlyarm_nanopi-r1s-h5 DEVICE_VENDOR := FriendlyARM - DEVICE_MODEL:=Nanopi R1S H5 - DEVICE_PACKAGES:= kmod-eeprom-at24 kmod-gpio-button-hotplug kmod-leds-gpio \ + DEVICE_MODEL := Nanopi R1S H5 + DEVICE_PACKAGES := kmod-eeprom-at24 kmod-gpio-button-hotplug kmod-leds-gpio \ kmod-rtl8189es kmod-usb2 kmod-usb-net-rtl8152 wpad-basic SUPPORTED_DEVICES:=nanopi-r1s-h5 $(Device/sun50i-h5) diff --git a/target/linux/sunxi/patches-5.4/018-arm64-dts-allwinner-h5-Add-CPU-Operating-Performance-Points-table.patch b/target/linux/sunxi/patches-5.4/018-arm64-dts-allwinner-h5-Add-CPU-OPP-table.patch similarity index 90% rename from target/linux/sunxi/patches-5.4/018-arm64-dts-allwinner-h5-Add-CPU-Operating-Performance-Points-table.patch rename to target/linux/sunxi/patches-5.4/018-arm64-dts-allwinner-h5-Add-CPU-OPP-table.patch index 25292f438d..3e7ef4b978 100644 --- a/target/linux/sunxi/patches-5.4/018-arm64-dts-allwinner-h5-Add-CPU-Operating-Performance-Points-table.patch +++ b/target/linux/sunxi/patches-5.4/018-arm64-dts-allwinner-h5-Add-CPU-OPP-table.patch @@ -31,7 +31,7 @@ new file mode 100644 index 0000000000000..b2657201957eb --- /dev/null +++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-cpu-opp.dtsi -@@ -0,0 +1,79 @@ +@@ -0,0 +1,91 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +// Copyright (C) 2020 Chen-Yu Tsai + @@ -93,6 +93,18 @@ index 0000000000000..b2657201957eb + opp-microvolt = <1300000 1300000 1310000>; + clock-latency-ns = <244144>; /* 8 32k periods */ + }; ++ ++ opp-1200000000 { ++ opp-hz = /bits/ 64 <1200000000>; ++ opp-microvolt = <1300000 1300000 1310000>; ++ clock-latency-ns = <244144>; /* 8 32k periods */ ++ }; ++ ++ opp-1248000000 { ++ opp-hz = /bits/ 64 <1248000000>; ++ opp-microvolt = <1300000 1300000 1310000>; ++ clock-latency-ns = <244144>; /* 8 32k periods */ ++ }; + }; +}; + diff --git a/target/linux/sunxi/patches-5.4/302-sun8i-h3-add-more-cpu-operating-points.patch b/target/linux/sunxi/patches-5.4/302-sun8i-h3-add-more-cpu-operating-points.patch new file mode 100644 index 0000000000..23943cee39 --- /dev/null +++ b/target/linux/sunxi/patches-5.4/302-sun8i-h3-add-more-cpu-operating-points.patch @@ -0,0 +1,50 @@ +--- a/arch/arm/boot/dts/sun8i-h3.dtsi ++++ b/arch/arm/boot/dts/sun8i-h3.dtsi +@@ -60,11 +60,47 @@ + clock-latency-ns = <244144>; /* 8 32k periods */ + }; + ++ opp@960000000 { ++ opp-hz = /bits/ 64 <960000000>; ++ opp-microvolt = <1200000 1200000 1300000>; ++ clock-latency-ns = <244144>; /* 8 32k periods */ ++ }; ++ + opp-1008000000 { + opp-hz = /bits/ 64 <1008000000>; + opp-microvolt = <1200000 1200000 1300000>; + clock-latency-ns = <244144>; /* 8 32k periods */ + }; ++ ++ opp-1056000000 { ++ opp-hz = /bits/ 64 <1056000000>; ++ opp-microvolt = <1300000 1300000 1300000>; ++ clock-latency-ns = <244144>; /* 8 32k periods */ ++ }; ++ ++ opp-1104000000 { ++ opp-hz = /bits/ 64 <1104000000>; ++ opp-microvolt = <1300000 1300000 1300000>; ++ clock-latency-ns = <244144>; /* 8 32k periods */ ++ }; ++ ++ opp-1152000000 { ++ opp-hz = /bits/ 64 <1152000000>; ++ opp-microvolt = <1300000 1300000 1300000>; ++ clock-latency-ns = <244144>; /* 8 32k periods */ ++ }; ++ ++ opp-1200000000 { ++ opp-hz = /bits/ 64 <1200000000>; ++ opp-microvolt = <1300000 1300000 1300000>; ++ clock-latency-ns = <244144>; /* 8 32k periods */ ++ }; ++ ++ opp-1248000000 { ++ opp-hz = /bits/ 64 <1248000000>; ++ opp-microvolt = <1300000 1300000 1300000>; ++ clock-latency-ns = <244144>; /* 8 32k periods */ ++ }; + }; + + cpus {