On 29.07.20 22:48, Moritz Warning wrote:
On 7/30/20 10:26 AM, Paul Spooren wrote:
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))
You remove fakeroot, is there a reason for that?
I started to look into SELinux and renaming libyaml to yaml ontop of the
SELinux patches messed ob that line. Whoever merges this, please just
ignore the fakeroot, it doesn't exist (yet) in OpenWrt.
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel