On Wed, Jan 22, 2025 at 09:43:58AM +0100, Rouven Czerwinski wrote:
> Add libosdp for support of the osdp protocol. Add a patch to build the
> osdpctl program without the rest of the utilities, it is otherwise not
> possible to build osdpctl without the python bindings.
> 
> Signed-off-by: Rouven Czerwinski <[email protected]>
> ---
[…]
> diff --git a/rules/libosdp.make b/rules/libosdp.make
> new file mode 100644
> index 000000000..fe23bae49
> --- /dev/null
> +++ b/rules/libosdp.make
> @@ -0,0 +1,90 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2023 by Rouven Czerwinski <[email protected]>
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +PACKAGES-$(PTXCONF_LIBOSDP) += libosdp
> +
> +#
> +# Paths and names
> +#
> +LIBOSDP_VERSION              := 2.4.0
> +LIBOSDP_MD5          := 14484c746fa28a4a0005e893279bd8ec
> +LIBOSDP                      := libosdp-$(LIBOSDP_VERSION)
> +LIBOSDP_SUFFIX               := tar.gz
> +LIBOSDP_URL          := 
> https://github.com/goToMain/libosdp/archive/v$(LIBOSDP_VERSION).$(LIBOSDP_SUFFIX)
> +LIBOSDP_SOURCE               := $(SRCDIR)/$(LIBOSDP).$(LIBOSDP_SUFFIX)
> +LIBOSDP_DIR          := $(BUILDDIR)/$(LIBOSDP)
> +LIBOSDP_LICENSE              := Apache-2.0
> +LIBOSDP_LICENSE_FILES        := 
> file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327
> +
> +CUTILS_VERSION               := 7d5cb004258b8b8a195b63ad15177ff196cefd08
> +CUTILS_MD5           := 018ceb214d27bb9ad237274de8307112 
> +CUTILS_URL           := 
> https://github.com/goToMain/c-utils/archive/$(CUTILS_VERSION).zip
> +CUTILS_SOURCE                := $(SRCDIR)/c-utils-$(CUTILS_VERSION).zip
> +$(CUTILS_SOURCE)     := CUTILS
> +CUTILS_DIR           := $(LIBOSDP_DIR)/utils/
> +
> +LIBOSDP_SOURCES              := $(LIBOSDP_SOURCE) $(CUTILS_SOURCE)

Using LIBODSP_PARTS instead is cleaner now and doesn't need a separate 'get'
stage. Have a look at canfestival.make or open62541.make for examples.

 - Roland

> +
> +# 
> ----------------------------------------------------------------------------
> +# Get
> +# 
> ----------------------------------------------------------------------------
> +
> +#$(LIBOSDP_SOURCE):
> +#    @$(call targetinfo)
> +#    @$(call get, LIBOSDP)
> +
> +# 
> ----------------------------------------------------------------------------
> +# Extract
> +# 
> ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/libosdp.extract:
> +     @$(call targetinfo)
> +     @$(call clean, $(LIBOSDP_DIR))
> +     @$(call extract, LIBOSDP)
> +     @$(call extract, CUTILS)
> +     @$(call patchin, LIBOSDP)
> +     @$(call touch)
> +
> +# 
> ----------------------------------------------------------------------------
> +# Prepare
> +# 
> ----------------------------------------------------------------------------
> +
> +LIBOSDP_CONF_ENV     := $(CROSS_ENV)
> +
> +#
> +# cmake
> +#
> +LIBOSDP_CONF_TOOL    := cmake
> +LIBOSDP_CONF_OPT     := $(CROSS_CMAKE_USR) \
> +     -DCONFIG_OSDP_LIB_ONLY=y
> +
> +# 
> ----------------------------------------------------------------------------
> +# Target-Install
> +# 
> ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/libosdp.targetinstall:
> +     @$(call targetinfo)
> +
> +     @$(call install_init, libosdp)
> +     @$(call install_fixup, libosdp, PRIORITY, optional)
> +     @$(call install_fixup, libosdp, SECTION, base)
> +     @$(call install_fixup, libosdp, AUTHOR, "Rouven Czerwinski 
> <[email protected]>")
> +     @$(call install_fixup, libosdp, DESCRIPTION, missing)
> +
> +     @$(call install_lib, libosdp, 0, 0, 0644, libosdp)
> +
> +     @$(call install_copy, libosdp, 0, 0, 0644, -, /usr/bin/osdpctl)
> +
> +     @$(call install_finish, libosdp)
> +
> +     @$(call touch)
> +
> +# vim: syntax=make
> -- 
> 2.39.5
> 
> 
> 

-- 
Roland Hieber, Pengutronix e.K.          | [email protected]          |
Steuerwalder Str. 21                     | https://www.pengutronix.de/ |
31137 Hildesheim, Germany                | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686         | Fax:   +49-5121-206917-5555 |

Reply via email to