build: autotools: fix cache path
[openwrt/openwrt.git] / include / openssl-engine.mk
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Copyright (C) 2022 Enéas Ulir de Queiroz
4
5 ENGINES_DIR=engines-1.1
6
7 define Package/openssl/engine/Default
8 SECTION:=libs
9 CATEGORY:=Libraries
10 SUBMENU:=SSL
11 DEPENDS:=libopenssl @OPENSSL_ENGINE +libopenssl-conf
12 endef
13
14 # 1 = engine name
15 # 2 - package name, defaults to libopenssl-$(1)
16 define Package/openssl/add-engine
17 OSSL_ENG_PKG:=$(if $(2),$(2),libopenssl-$(1))
18 Package/$$(OSSL_ENG_PKG)/conffiles:=/etc/ssl/engines.cnf.d/$(1).cnf
19
20 define Package/$$(OSSL_ENG_PKG)/install
21 $$(INSTALL_DIR) $$(1)/usr/lib/$(ENGINES_DIR)
22 $$(INSTALL_BIN) $$(PKG_INSTALL_DIR)/usr/lib/$(ENGINES_DIR)/$(1).so \
23 $$(1)/usr/lib/$(ENGINES_DIR)
24 $$(INSTALL_DIR) $$(1)/etc/ssl/engines.cnf.d
25 $$(INSTALL_DATA) ./files/$(1).cnf $$(1)/etc/ssl/engines.cnf.d/
26 endef
27
28 define Package/$$(OSSL_ENG_PKG)/postinst :=
29 #!/bin/sh
30 OPENSSL_UCI="$$$${IPKG_INSTROOT}/etc/config/openssl"
31
32 [ -z "$$$${IPKG_INSTROOT}" ] && uci -q get openssl.$(1) >/dev/null && exit 0
33
34 cat << EOF >> "$$$${OPENSSL_UCI}"
35
36 config engine '$(1)'
37 option enabled '1'
38 EOF
39
40 [ -n "$$$${IPKG_INSTROOT}" ] || /etc/init.d/openssl reload
41 endef
42
43 define Package/$$(OSSL_ENG_PKG)/postrm :=
44 #!/bin/sh
45 [ -n "$$$${IPKG_INSTROOT}" ] && exit 0
46 uci delete openssl.$(1)
47 uci commit openssl
48 /etc/init.d/openssl reload
49 endef
50 endef