libyaml is used to process YAML files, a popular human readable configuration format. If available during compilation, the device-tree-compiler (dtc) will enable YAML as export format.
The exported YAML files can be validated using dt-schema[0]. Once available this can be used within a CI to reduce human resources spent on reviewing DTS files. [0]: https://github.com/robherring/dt-schema Signed-off-by: Paul Spooren <[email protected]> --- v3: * rename to yaml (was libyaml) * follow Makefile style from packages.git tools/Makefile | 2 +- tools/yaml/Makefile | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 tools/yaml/Makefile diff --git a/tools/Makefile b/tools/Makefile index f038c90ba9..467640fac5 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -26,7 +26,7 @@ tools-y += m4 libtool autoconf autoconf-archive automake flex bison pkgconf mkli tools-y += sstrip make-ext4fs e2fsprogs mtd-utils mkimage tools-y += firmware-utils patch-image quilt padjffs2 tools-y += mm-macros missing-macros cmake bc findutils gengetopt patchelf -tools-y += mtools dosfstools libressl fakeroot +tools-y += mtools dosfstools libressl yaml tools-$(CONFIG_TARGET_orion_generic) += wrt350nv2-builder upslug2 tools-$(CONFIG_TARGET_x86) += qemu tools-$(CONFIG_TARGET_mxs) += elftosb sdimage diff --git a/tools/yaml/Makefile b/tools/yaml/Makefile new file mode 100644 index 0000000000..7ae7aa700f --- /dev/null +++ b/tools/yaml/Makefile @@ -0,0 +1,41 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# +# Copyright (C) 2020 Paul Spooren <[email protected]> +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=yaml +PKG_VERSION:=0.2.5 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://pyyaml.org/download/libyaml/ +PKG_HASH:=c642ae9b75fee120b2d96c712538bd2cf283228d2337df2cf2988e3c02678ef4 + +PKG_LICENSE:=MIT +PKG_LICENSE_FILES:=COPYING +PKG_CPE_ID:=cpe:/a:pyyaml_project:pyyaml + +HOST_BUILD_PARALLEL:=1 + +include $(INCLUDE_DIR)/host-build.mk + +define Host/Install + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(HOST_BUILD_DIR)/include/yaml.h $(STAGING_DIR_HOST)/include/ + $(CP) $(HOST_BUILD_DIR)/src/.libs/libyaml*.{a,so*} $(STAGING_DIR_HOST)/lib/ + $(CP) $(HOST_BUILD_DIR)/yaml*.pc $(STAGING_DIR_HOST)/lib/pkgconfig/ +endef + +define Host/Clean + rm -f $(STAGING_DIR_HOST)/include/yaml.h + rm -f $(STAGING_DIR_HOST)/lib/libyaml*.{a,so*} + rm -f $(STAGING_DIR_HOST)/lib/pkgconfig/yaml*.pc + $(call Host/Clean/Default) +endef + +$(eval $(call HostBuild)) -- 2.25.1 _______________________________________________ openwrt-devel mailing list [email protected] https://lists.openwrt.org/mailman/listinfo/openwrt-devel
