mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-23 15:32:33 +00:00
00b86168bd
APK (Alpine Package Keeper) is the package manager of Alpine Linux and has multiple advantages over OPKG. While Alpine uses APK version 2, this commit adds version 3 with a heavily optimised database structure and additional feature making it suitable for OpenWrt. This commit will be followed by many more to add APK build capabilities to the OpenWrt build system, firstly enabling side by side builds of APK and OPKG packages, later replacing OPKG entirely. Signed-off-by: Paul Spooren <mail@aparcar.org>
88 lines
2.0 KiB
Makefile
88 lines
2.0 KiB
Makefile
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=apk
|
|
PKG_RELEASE:=1
|
|
|
|
PKG_SOURCE_URL=https://gitlab.alpinelinux.org/alpine/apk-tools.git
|
|
PKG_SOURCE_PROTO:=git
|
|
PKG_SOURCE_DATE:=2024-04-16
|
|
PKG_SOURCE_VERSION:=ba6c31a5469ef74fb85119508e55de9631ffef41
|
|
PKG_MIRROR_HASH:=3455d5799481add9ece3db685576d58be6303f3a13140133979b965cbd3c9966
|
|
|
|
PKG_VERSION=3.0.0_pre$(subst -,,$(PKG_SOURCE_DATE))
|
|
|
|
PKG_MAINTAINER:=Paul Spooren <mail@aparcar.org>
|
|
PKG_LICENSE:=GPL-2.0-only
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
PKG_INSTALL:=1
|
|
|
|
HOST_BUILD_PREFIX:=$(STAGING_DIR_HOST)
|
|
HOST_BUILD_DEPENDS:=lua/host
|
|
PKG_BUILD_DEPENDS:=$(HOST_BUILD_DEPENDS)
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
include $(INCLUDE_DIR)/host-build.mk
|
|
include $(INCLUDE_DIR)/meson.mk
|
|
|
|
define Package/apk/default
|
|
SECTION:=base
|
|
CATEGORY:=Base system
|
|
TITLE:=apk package manager
|
|
DEPENDS:=+zlib
|
|
URL:=$(PKG_SOURCE_URL)
|
|
endef
|
|
|
|
define Package/apk-mbedtls
|
|
$(Package/apk/default)
|
|
TITLE += (mbedtls)
|
|
DEPENDS +=+libmbedtls
|
|
VARIANT:=mbedtls
|
|
DEFAULT_VARIANT:=1
|
|
CONFLICTS:=apk-openssl
|
|
endef
|
|
|
|
define Package/apk-openssl
|
|
$(Package/apk/default)
|
|
TITLE += (openssl)
|
|
DEPENDS +=+libopenssl
|
|
VARIANT:=openssl
|
|
endef
|
|
|
|
MESON_HOST_VARS+=VERSION=$(PKG_VERSION)
|
|
MESON_VARS+=VERSION=$(PKG_VERSION)
|
|
|
|
MESON_HOST_ARGS += \
|
|
-Dlua_version=5.1 \
|
|
-Dcompressed-help=false \
|
|
-Ddocs=disabled \
|
|
-Dcrypto_backend=openssl \
|
|
-Dzstd=false
|
|
|
|
MESON_ARGS += \
|
|
-Dlua_version=5.1 \
|
|
-Dcompressed-help=false \
|
|
-Ddocs=disabled \
|
|
-Durl_backend=wget \
|
|
-Dcrypto_backend=$(BUILD_VARIANT) \
|
|
-Dzstd=false
|
|
|
|
HOST_LDFLAGS += \
|
|
-Wl,-rpath $(STAGING_DIR_HOST)/lib
|
|
|
|
define Package/apk/default/install
|
|
$(INSTALL_DIR) $(1)/lib/apk/db
|
|
|
|
$(INSTALL_DIR) $(1)/usr/bin
|
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/apk $(1)/usr/bin/apk
|
|
|
|
$(INSTALL_DIR) $(1)/usr/lib
|
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libapk.so.* $(1)/usr/lib/
|
|
endef
|
|
|
|
Package/apk-mbedtls/install = $(Package/apk/default/install)
|
|
Package/apk-openssl/install = $(Package/apk/default/install)
|
|
|
|
$(eval $(call BuildPackage,apk-mbedtls))
|
|
$(eval $(call BuildPackage,apk-openssl))
|
|
$(eval $(call HostBuild))
|