blob: 390d551f3d0125f5a308c96f2c71945d13a37567 [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001include $(TOPDIR)/rules.mk
2
3PKG_NAME:=uclient
4PKG_RELEASE=1
5
6PKG_SOURCE_PROTO:=git
7PKG_SOURCE_URL=$(PROJECT_GIT)/project/uclient.git
8PKG_MIRROR_HASH:=a4b000ad3a0803789d72f6a54b4fd51dd6709fb8fe4d7b6e201d752172e50b07
9PKG_SOURCE_DATE:=2024-10-22
10PKG_SOURCE_VERSION:=88ae8f208dd313f69e268234f7db55956aef1cb9
11CMAKE_INSTALL:=1
12
13PKG_BUILD_DEPENDS:=ustream-ssl
14
15PKG_LICENSE:=ISC
16PKG_LICENSE_FILES:=
17
18PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
19PKG_CONFIG_DEPENDS := CONFIG_PACKAGE_ucode-mod-uclient
20
21include $(INCLUDE_DIR)/package.mk
22include $(INCLUDE_DIR)/cmake.mk
23
24define Package/libuclient
25 SECTION:=libs
26 CATEGORY:=Libraries
27 TITLE:=HTTP/1.1 client library
28 ABI_VERSION:=20201210
29 DEPENDS:=+libubox
30endef
31
32define Package/uclient-fetch
33 SECTION:=net
34 CATEGORY:=Network
35 TITLE:=Tiny wget replacement using libuclient
36 ALTERNATIVES:=200:/usr/bin/wget:/bin/uclient-fetch
37 PROVIDES:=wget
38 DEPENDS:=+libuclient
39endef
40
41define Package/ucode-mod-uclient
42 SECTION:=utils
43 CATEGORY:=Utilities
44 TITLE:=ucode uclient module
45 DEPENDS:=+libucode +libuclient
46endef
47
48CMAKE_OPTIONS += \
49 -DBUILD_UCODE=$(if $(CONFIG_PACKAGE_ucode-mod-uclient),ON,OFF)
50
51define Package/libuclient/install
52 $(INSTALL_DIR) $(1)/usr/lib
53 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libuclient.so $(1)/usr/lib/
54endef
55
56define Package/uclient-fetch/install
57 $(INSTALL_DIR) $(1)/bin
58 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/uclient-fetch $(1)/bin/
59endef
60
61define Package/ucode-mod-uclient/install
62 $(INSTALL_DIR) $(1)/usr/lib/ucode
63 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/ucode/*.so $(1)/usr/lib/ucode
64endef
65
66$(eval $(call BuildPackage,libuclient))
67$(eval $(call BuildPackage,uclient-fetch))
68$(eval $(call BuildPackage,ucode-mod-uclient))