mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Ladislav Michl <oss-lists@triops.cz>
To: ptxdist@pengutronix.de
Subject: [ptxdist] [PATCH v2] dtc: new package
Date: Fri, 5 Jan 2024 11:36:32 +0100	[thread overview]
Message-ID: <ZZfbsLM6R4SqfQMb@lenoch> (raw)

From: Ladislav Michl <ladis@linux-mips.org>

Please note this package is not as symmetrical as the typical
host-* and normal variants. Here the latest version is usually
needed.

This work is prepping for qemu 8.2.0+, as it requires libfdt
as a separate library. It has stopped providing one internally.

Signed-off-by: Christian Melki <christian.melki@t2data.com>
Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
---
 CHANGES:
 -v2: select HOST_FLEX, drop 'v' from url version, update md5,
      use proper DTC_MAKE_ENV

 rules/dtc.in   | 37 +++++++++++++++++++++++
 rules/dtc.make | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 119 insertions(+)
 create mode 100644 rules/dtc.in
 create mode 100644 rules/dtc.make

diff --git a/rules/dtc.in b/rules/dtc.in
new file mode 100644
index 000000000..e6d0b84d5
--- /dev/null
+++ b/rules/dtc.in
@@ -0,0 +1,37 @@
+## SECTION=system_libraries
+menuconfig DTC
+	tristate
+	prompt "dtc                           "
+	select HOST_FLEX
+	help
+	  Device Tree Compiler (dtc) toolchain. While dtc itself is
+	  occasionally needed for device tree manipulaton on the
+	  target, libfdt may be required.
+
+if DTC
+
+config DTC_DTC
+	bool
+	prompt "dtc"
+
+config DTC_DTDIFF
+	bool
+	prompt "dtdiff"
+
+config DTC_FDTDUMP
+	bool
+	prompt "fdtdump"
+
+config DTC_FDTGET
+	bool
+	prompt "fdtget"
+
+config DTC_FDTOVERLAY
+	bool
+	prompt "fdtoverlay"
+
+config DTC_FDTPUT
+	bool
+	prompt "fdtput"
+
+endif
diff --git a/rules/dtc.make b/rules/dtc.make
new file mode 100644
index 000000000..8aa38c5e3
--- /dev/null
+++ b/rules/dtc.make
@@ -0,0 +1,82 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2022 Ladislav Michl <ladis@linux-mips.org>
+# Copyright (C) 2023 Christian Melki <christian.melki@t2data.com>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_DTC) += dtc
+
+#
+# Paths and names
+#
+DTC_VERSION	:= 1.7.0
+DTC_MD5		:= f8b4469ad89f4b882091895ec60dde6b
+DTC		:= dtc-$(DTC_VERSION)
+DTC_SUFFIX	:= tar.gz
+DTC_URL		:= https://git.kernel.org/pub/scm/utils/dtc/dtc.git/snapshot/$(DTC).$(DTC_SUFFIX)
+DTC_SOURCE	:= $(SRCDIR)/$(DTC).$(DTC_SUFFIX)
+DTC_DIR		:= $(BUILDDIR)/$(DTC)
+DTC_LICENSE	:= BSD-2-Clause OR GPL-2.0
+DTC_LICENSE_FILES := \
+	file://README.license;md5=a1eb22e37f09df5b5511b8a278992d0e \
+	file://GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+	file://BSD-2-Clause;md5=5d6306d1b08f8df623178dfd81880927
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+DTC_CONF_TOOL	:= NO
+
+DTC_MAKE_ENV	:= $(CROSS_ENV)
+
+DTC_MAKE_OPT	:= \
+	PREFIX=/usr \
+	NO_PYTHON=1 \
+	NO_VALGRIND=1 \
+	NO_YAML=1
+
+DTC_INSTALL_OPT	:= \
+	$(DTC_MAKE_OPT) \
+	install-bin \
+	install-includes \
+	install-lib
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+DTC_BIN-y				:=
+DTC_BIN-$(PTXCONF_DTC_DTC)		+= dtc
+DTC_BIN-$(PTXCONF_DTC_DTDIFF)		+= dtdiff
+DTC_BIN-$(PTXCONF_DTC_FDTDUMP)		+= fdtdump
+DTC_BIN-$(PTXCONF_DTC_FDTGET)		+= fdtget
+DTC_BIN-$(PTXCONF_DTC_FDTOVERLAY)	+= fdtoverlay
+DTC_BIN-$(PTXCONF_DTC_FDTPUT)		+= fdtput
+
+$(STATEDIR)/dtc.targetinstall:
+	@$(call targetinfo)
+
+	@$(call install_init, dtc)
+	@$(call install_fixup, dtc,PRIORITY,optional)
+	@$(call install_fixup, dtc,SECTION,base)
+	@$(call install_fixup, dtc,AUTHOR,"Ladislav Michl <ladis@linux-mips.org>")
+	@$(call install_fixup, dtc,DESCRIPTION,missing)
+
+	@$(call install_lib, dtc, 0, 0, 0644, libfdt-$(DTC_VERSION))
+
+	@$(foreach tool, $(DTC_BIN-y), \
+		$(call install_copy, dtc, 0, 0, 0755, -, \
+		/usr/bin/$(tool));)
+
+	@$(call install_finish, dtc)
+
+	@$(call touch)
+
+# vim: syntax=make
-- 
2.39.2




                 reply	other threads:[~2024-01-05 10:36 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZZfbsLM6R4SqfQMb@lenoch \
    --to=oss-lists@triops.cz \
    --cc=ptxdist@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox