opkg: update to 2022-02-24
[openwrt/staging/wigyori.git] / package / system / opkg / Makefile
1 # SPDX-License-Identifier: GPL-2.0-or-later
2 #
3 # Copyright (C) 2006-2021 OpenWrt.org
4 #
5
6 include $(TOPDIR)/rules.mk
7 include $(INCLUDE_DIR)/kernel.mk
8
9 PKG_NAME:=opkg
10 PKG_RELEASE:=$(AUTORELEASE)
11 PKG_FLAGS:=essential
12
13 PKG_SOURCE_PROTO:=git
14 PKG_SOURCE_URL=$(PROJECT_GIT)/project/opkg-lede.git
15 PKG_SOURCE_DATE:=2022-02-24
16 PKG_SOURCE_VERSION:=d038e5b6d155784575f62a66a8bb7e874173e92e
17 PKG_MIRROR_HASH:=e5ec4ae93f6529f7f0b9acc22a9a63c1b2f27d3b30b4a82041fcd58b9bc7cdf3
18
19 PKG_LICENSE:=GPL-2.0
20 PKG_LICENSE_FILES:=COPYING
21
22 PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
23
24 # Extend depends from version.mk
25 PKG_CONFIG_DEPENDS += \
26 CONFIG_SIGNATURE_CHECK \
27 CONFIG_TARGET_INIT_PATH
28
29 HOST_BUILD_DEPENDS:=libubox/host
30
31 include $(INCLUDE_DIR)/package.mk
32 include $(INCLUDE_DIR)/host-build.mk
33 include $(INCLUDE_DIR)/cmake.mk
34
35 define Package/opkg
36 SECTION:=base
37 CATEGORY:=Base system
38 TITLE:=opkg package manager
39 DEPENDS:=+uclient-fetch +libpthread +libubox
40 URL:=$(PKG_SOURCE_URL)
41 MENU:=1
42 endef
43
44 define Package/opkg/description
45 Lightweight package management system
46 opkg is the opkg Package Management System, for handling
47 installation and removal of packages on a system. It can
48 recursively follow dependencies and download all packages
49 necessary to install a particular package.
50
51 opkg knows how to install both .ipk and .deb packages.
52 endef
53
54 define Package/opkg/conffiles
55 /etc/opkg.conf
56 /etc/opkg/keys/
57 /etc/opkg/customfeeds.conf
58 endef
59
60 TARGET_CFLAGS += -ffunction-sections -fdata-sections
61 EXTRA_CFLAGS += $(TARGET_CPPFLAGS)
62
63 CMAKE_OPTIONS += \
64 -DBUILD_TESTS=OFF \
65 -DHOST_CPU=$(PKGARCH) \
66 -DPATH_SPEC="$(TARGET_INIT_PATH)" \
67 -DVERSION="$(PKG_SOURCE_VERSION) ($(PKG_SOURCE_DATE))"
68
69 CMAKE_HOST_OPTIONS += \
70 -DSTATIC_UBOX=ON \
71 -DBUILD_TESTS=OFF \
72 -DHOST_CPU=$(PKGARCH) \
73 -DLOCK_FILE=/tmp/opkg.lock \
74 -DVERSION="$(PKG_SOURCE_VERSION) ($(PKG_SOURCE_DATE))"
75
76 define Package/opkg/install
77 $(INSTALL_DIR) $(1)/usr/lib/opkg
78 $(INSTALL_DIR) $(1)/bin
79 $(INSTALL_DIR) $(1)/etc/opkg
80 $(INSTALL_DIR) $(1)/etc/uci-defaults
81 $(INSTALL_DATA) ./files/customfeeds.conf $(1)/etc/opkg/customfeeds.conf
82 $(INSTALL_DATA) ./files/opkg$(2).conf $(1)/etc/opkg.conf
83 $(INSTALL_BIN) ./files/20_migrate-feeds $(1)/etc/uci-defaults/
84 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/opkg-cl $(1)/bin/opkg
85 ifneq ($(CONFIG_SIGNATURE_CHECK),)
86 echo "option check_signature" >> $(1)/etc/opkg.conf
87 endif
88 $(INSTALL_DIR) $(1)/usr/sbin
89 $(INSTALL_BIN) ./files/opkg-key $(1)/usr/sbin/
90 endef
91
92 define Host/Install
93 $(INSTALL_BIN) $(HOST_BUILD_DIR)/src/opkg-cl $(STAGING_DIR_HOST)/bin/opkg
94 endef
95
96 $(eval $(call BuildPackage,opkg))
97 $(eval $(call HostBuild))