xref: /OK3568_Linux_fs/buildroot/package/open62541/open62541.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1################################################################################
2#
3# open62541
4#
5################################################################################
6
7OPEN62541_VERSION = v1.2.2
8OPEN62541_SITE_METHOD = git
9OPEN62541_SITE = https://github.com/open62541/open62541.git
10OPEN62541_GIT_SUBMODULES = YES
11OPEN62541_INSTALL_STAGING = YES
12OPEN62541_LICENSE = MPL-2.0
13OPEN62541_LICENSE_FILES = LICENSE
14
15# Force Release build to remove -Werror.
16# Don't use git describe to get the version number.
17# Disable hardening options to let Buildroot handle it.
18OPEN62541_CONF_OPTS = \
19	-DCMAKE_BUILD_TYPE=Release \
20	-DGIT_EXECUTABLE=NO \
21	-DOPEN62541_VERSION=$(OPEN62541_VERSION) \
22	-DUA_ENABLE_HARDENING=OFF \
23	-DUA_FORCE_WERROR=OFF
24
25ifeq ($(BR2_PACKAGE_OPEN62541_UA_NAMESPACE_ZERO_MINIMAL),y)
26OPEN62541_CONF_OPTS += -DUA_NAMESPACE_ZERO=MINIMAL
27else ifeq ($(BR2_PACKAGE_OPEN62541_UA_NAMESPACE_ZERO_REDUCED),y)
28OPEN62541_CONF_OPTS += -DUA_NAMESPACE_ZERO=REDUCED
29else ifeq ($(BR2_PACKAGE_OPEN62541_UA_NAMESPACE_ZERO_FULL),y)
30OPEN62541_CONF_OPTS += -DUA_NAMESPACE_ZERO=FULL
31endif
32
33ifeq ($(BR2_PACKAGE_OPEN62541_JSON_ENCODING),y)
34OPEN62541_CONF_OPTS += -DUA_ENABLE_JSON_ENCODING=ON
35else
36OPEN62541_CONF_OPTS += -DUA_ENABLE_JSON_ENCODING=OFF
37endif
38
39ifeq ($(BR2_PACKAGE_OPEN62541_PUBSUB),y)
40OPEN62541_CONF_OPTS += -DUA_ENABLE_PUBSUB=ON
41else
42OPEN62541_CONF_OPTS += -DUA_ENABLE_PUBSUB=OFF
43endif
44
45ifeq ($(BR2_PACKAGE_OPEN62541_PUBSUB_DELTAFRAMES),y)
46OPEN62541_CONF_OPTS += -DUA_ENABLE_PUBSUB_DELTAFRAMES=ON
47else
48OPEN62541_CONF_OPTS += -DUA_ENABLE_PUBSUB_DELTAFRAMES=OFF
49endif
50
51ifeq ($(BR2_PACKAGE_OPEN62541_PUBSUB_INFORMATIONMODEL),y)
52OPEN62541_CONF_OPTS += -DUA_ENABLE_PUBSUB_INFORMATIONMODEL=ON
53else
54OPEN62541_CONF_OPTS += -DUA_ENABLE_PUBSUB_INFORMATIONMODEL=OFF
55endif
56
57# Remove unneeded files
58define OPEN62541_REMOVE_UNNEEDED_FILES
59	$(RM) -r $(TARGET_DIR)/usr/share/open62541
60endef
61
62OPEN62541_POST_INSTALL_TARGET_HOOKS += OPEN62541_REMOVE_UNNEEDED_FILES
63
64$(eval $(cmake-package))
65