From 01e4998f6d4e9604ab101a897acae7a52f20a991 Mon Sep 17 00:00:00 2001 From: coolsnowwolf Date: Wed, 30 Jun 2021 19:15:41 +0800 Subject: [PATCH] qBittorrent: add static build for lazy guys --- package/lean/luci-app-qbittorrent/Config.in | 13 ++++ package/lean/luci-app-qbittorrent/Makefile | 29 +++++++-- package/lean/qBittorrent-static/Makefile | 72 +++++++++++++++++++++ target/linux/ipq40xx/Makefile | 4 +- target/linux/ipq40xx/image/Makefile | 22 +++---- 5 files changed, 122 insertions(+), 18 deletions(-) create mode 100644 package/lean/luci-app-qbittorrent/Config.in create mode 100644 package/lean/qBittorrent-static/Makefile diff --git a/package/lean/luci-app-qbittorrent/Config.in b/package/lean/luci-app-qbittorrent/Config.in new file mode 100644 index 000000000..dc107fc9f --- /dev/null +++ b/package/lean/luci-app-qbittorrent/Config.in @@ -0,0 +1,13 @@ +choice + prompt "qBittorrent Version" + default CONFIG_qBittorrent_Static + +config qBittorrent_Static + bool "qBittorrent Static Version" + depends on HAS_FPU + default y if x86_64||arm||aarch64 + +config qBittorrent_Nox + bool "qBittorrent Nox Version" + default y if !(x86_64||arm||aarch64) +endchoice diff --git a/package/lean/luci-app-qbittorrent/Makefile b/package/lean/luci-app-qbittorrent/Makefile index fa5b088ca..07bbf6a08 100644 --- a/package/lean/luci-app-qbittorrent/Makefile +++ b/package/lean/luci-app-qbittorrent/Makefile @@ -5,11 +5,32 @@ include $(TOPDIR)/rules.mk -LUCI_TITLE:=LuCI support for qBittorrent -LUCI_DEPENDS:=+qBittorrent -LUCI_PKGARCH:=all + +PKG_NAME:=luci-app-qbittorrent PKG_VERSION=1.0 -PKG_RELEASE:=20 +PKG_RELEASE:=21 + +include $(INCLUDE_DIR)/package.mk + +define Package/$(PKG_NAME)/config + choice + prompt "Build Version Selection" + default PACKAGE_luci-app-qbittorrent_static if arm||aarch64||x86_64 + default PACKAGE_luci-app-qbittorrent_dynamic + + config PACKAGE_luci-app-qbittorrent_static + bool "Static Build" + depends on arm||aarch64||x86_64 + + config PACKAGE_luci-app-qbittorrent_dynamic + bool "Dynamic Build" + + endchoice +endef + +LUCI_TITLE:=LuCI support for qBittorrent +LUCI_DEPENDS:=+PACKAGE_luci-app-qbittorrent_static:qBittorrent-static +PACKAGE_luci-app-qbittorrent_dynamic:qBittorrent +LUCI_PKGARCH:=all include $(TOPDIR)/feeds/luci/luci.mk diff --git a/package/lean/qBittorrent-static/Makefile b/package/lean/qBittorrent-static/Makefile new file mode 100644 index 000000000..637412da3 --- /dev/null +++ b/package/lean/qBittorrent-static/Makefile @@ -0,0 +1,72 @@ +# +# Copyright (C) 2017-2020 +# +# This is free software, licensed under the GNU General Public License v2. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=qBittorrent-static +PKG_VERSION:=4.3.6_v1.2.14 +PKG_RELEASE=1 + +STRIP:=true + +ifeq ($(ARCH),x86_64) + PKG_ARCH:=x86_64 +endif + +ifeq ($(ARCH),arm64) + PKG_ARCH:=aarch64 +endif + +ifeq ($(ARCH),aarch64) + PKG_ARCH:=aarch64 +endif + +ifeq ($(ARCH),arm) +ifeq ($(BOARD),bcm53xx) + PKG_ARCH:=armv7 +else ifeq ($(BOARD),kirkwood) + PKG_ARCH:=armv7 +else + PKG_ARCH:=armhf +endif +endif + +include $(INCLUDE_DIR)/package.mk + +define Package/$(PKG_NAME) + SECTION:=net + CATEGORY:=Network + DEPENDS:=@(arm||aarch64||x86_64) + SUBMENU:=BitTorrent + TITLE:=bittorrent client programmed in C++ / Qt + URL:=https://www.qbittorrent.org/ +endef + +define Package/$(PKG_NAME)/description + qBittorrent is a bittorrent client programmed in C++ / Qt that uses + libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg. + It aims to be a good alternative to all other bittorrent clients out + there. qBittorrent is fast, stable and provides unicode support as + well as many features. +endef + +define Download/qbittorrent + URL:=https://github.com/userdocs/qbittorrent-nox-static/releases/download/release-$(PKG_VERSION) + URL_FILE:=$(PKG_ARCH)-qbittorrent-nox + FILE:=qbittorrent-nox + HASH:=skip +endef + +define Build/Compile +endef + +define Package/$(PKG_NAME)/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(DL_DIR)/qbittorrent-nox $(1)/usr/bin +endef + +$(eval $(call Download,qbittorrent)) +$(eval $(call BuildPackage,$(PKG_NAME))) diff --git a/target/linux/ipq40xx/Makefile b/target/linux/ipq40xx/Makefile index 2bdd14abb..f811f9602 100644 --- a/target/linux/ipq40xx/Makefile +++ b/target/linux/ipq40xx/Makefile @@ -16,8 +16,8 @@ include $(INCLUDE_DIR)/target.mk DEFAULT_PACKAGES += \ kmod-usb-dwc3-qcom \ kmod-leds-gpio kmod-gpio-button-hotplug swconfig \ - kmod-ath10k wpad-openssl \ - kmod-usb3 kmod-usb-dwc3 ath10k-firmware-qca4019 \ + kmod-ath10k-ct wpad-openssl \ + kmod-usb3 kmod-usb-dwc3 ath10k-firmware-qca4019-ct \ autocore-arm automount autosamba luci-app-adbyby-plus luci-app-ipsec-vpnd luci-app-unblockmusic luci-app-cpufreq luci-app-zerotier \ htop ethtool luci-app-cpufreq diff --git a/target/linux/ipq40xx/image/Makefile b/target/linux/ipq40xx/image/Makefile index 3b7b2d349..c84194603 100644 --- a/target/linux/ipq40xx/image/Makefile +++ b/target/linux/ipq40xx/image/Makefile @@ -177,7 +177,7 @@ define Device/asus_map-ac2200 DEVICE_VENDOR := ASUS DEVICE_MODEL := Lyra (MAP-AC2200) DEVICE_DTS := qcom-ipq4019-map-ac2200 - DEVICE_PACKAGES := ath10k-firmware-qca9888 kmod-ath3k + DEVICE_PACKAGES := ath10k-firmware-qca9888-ct kmod-ath3k endef TARGET_DEVICES += asus_map-ac2200 @@ -199,8 +199,7 @@ define Device/asus_rt-ac58u UIMAGE_NAME:=$(shell echo -e '\03\01\01\01RT-AC58U') KERNEL_INITRAMFS := $$(KERNEL) | uImage none KERNEL_INITRAMFS_SUFFIX := -factory.trx - DEVICE_PACKAGES := -kmod-ath10k -ath10k-firmware-qca4019 \ - kmod-ath10k-ct-smallbuffers ath10k-firmware-qca4019-ct kmod-usb-ledtrig-usbport + DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers ath10k-firmware-qca4019-ct kmod-usb-ledtrig-usbport endef TARGET_DEVICES += asus_rt-ac58u @@ -217,7 +216,7 @@ define Device/asus_rt-acrh17 UIMAGE_NAME:=$(shell echo -e '\03\01\01\01RT-AC82U') KERNEL_INITRAMFS := $$(KERNEL) | uImage none KERNEL_INITRAMFS_SUFFIX := -factory.trx - DEVICE_PACKAGES := ipq-wifi-asus_rt-acrh17 ath10k-firmware-qca9984 kmod-usb-ledtrig-usbport + DEVICE_PACKAGES := ipq-wifi-asus_rt-acrh17 ath10k-firmware-qca9984-ct kmod-usb-ledtrig-usbport endef TARGET_DEVICES += asus_rt-acrh17 @@ -260,7 +259,7 @@ define Device/avm_fritzrepeater-3000 DEVICE_VENDOR := AVM DEVICE_MODEL := FRITZ!Repeater 3000 DEVICE_DTS := qcom-ipq4019-fritzrepeater-3000 - DEVICE_PACKAGES := ath10k-firmware-qca9984 fritz-caldata fritz-tffs-nand + DEVICE_PACKAGES := ath10k-firmware-qca9984-ct fritz-caldata fritz-tffs-nand endef TARGET_DEVICES += avm_fritzrepeater-3000 @@ -270,7 +269,7 @@ define Device/buffalo_wtr-m2133hp DEVICE_VENDOR := Buffalo DEVICE_MODEL := WTR-M2133HP DEVICE_DTS := qcom-ipq4019-wtr-m2133hp - DEVICE_PACKAGES := ath10k-firmware-qca9984 ipq-wifi-buffalo_wtr-m2133hp + DEVICE_PACKAGES := ath10k-firmware-qca9984-ct ipq-wifi-buffalo_wtr-m2133hp BLOCKSIZE := 128k PAGESIZE := 2048 endef @@ -413,7 +412,7 @@ define Device/engenius_eap2200 DEVICE_DTS := qcom-ipq4019-eap2200 BLOCKSIZE := 128k PAGESIZE := 2048 - DEVICE_PACKAGES := ath10k-firmware-qca9888 ipq-wifi-engenius_eap2200 -kmod-ath10k-ct kmod-ath10k-ct-smallbuffers + DEVICE_PACKAGES := ath10k-firmware-qca9888-ct ipq-wifi-engenius_eap2200 endef TARGET_DEVICES += engenius_eap2200 @@ -583,7 +582,7 @@ define Device/linksys_ea8300 UBINIZE_OPTS := -E 5 # EOD marks to "hide" factory sig at EOF IMAGES += factory.bin IMAGE/factory.bin := append-kernel | pad-to $$$$(KERNEL_SIZE) | append-ubi | linksys-image type=EA8300 - DEVICE_PACKAGES := ath10k-firmware-qca9888 ipq-wifi-linksys_ea8300 kmod-usb-ledtrig-usbport + DEVICE_PACKAGES := ath10k-firmware-qca9888-ct ipq-wifi-linksys_ea8300 kmod-usb-ledtrig-usbport endef TARGET_DEVICES += linksys_ea8300 @@ -594,7 +593,7 @@ define Device/meraki_mr33 DEVICE_DTS := qcom-ipq4029-mr33 BLOCKSIZE := 128k PAGESIZE := 2048 - DEVICE_PACKAGES := -swconfig ath10k-firmware-qca9887 + DEVICE_PACKAGES := -swconfig ath10k-firmware-qca9887-ct endef TARGET_DEVICES += meraki_mr33 @@ -675,7 +674,7 @@ define Device/openmesh_a62 IMAGES += factory.bin IMAGE/factory.bin := append-rootfs | pad-rootfs | openmesh-image ce_type=A62 IMAGE/sysupgrade.bin/squashfs := append-rootfs | pad-rootfs | sysupgrade-tar rootfs=$$$$@ | append-metadata - DEVICE_PACKAGES := ath10k-firmware-qca9888 + DEVICE_PACKAGES := ath10k-firmware-qca9888-ct endef TARGET_DEVICES += openmesh_a62 @@ -805,8 +804,7 @@ define Device/zyxel_wre6606 DEVICE_DTS_CONFIG := config@4 IMAGE_SIZE := 13184k IMAGE/sysupgrade.bin := append-kernel | append-rootfs | pad-rootfs | append-metadata - DEVICE_PACKAGES := -kmod-ath10k -ath10k-firmware-qca4019 \ - kmod-ath10k-ct-smallbuffers ath10k-firmware-qca4019-ct + DEVICE_PACKAGES := kmod-ath10k-ct-smallbuffers ath10k-firmware-qca4019-ct endef TARGET_DEVICES += zyxel_wre6606