* [ptxdist] [PATCH v3 1/2] initramfs-tools: Restore package
@ 2018-07-11 13:17 jon
2018-07-11 13:17 ` [ptxdist] [PATCH v3 2/2] image-root-tgz: Add IMAGE_ROOT_TGZ_LABEL option jon
0 siblings, 1 reply; 2+ messages in thread
From: jon @ 2018-07-11 13:17 UTC (permalink / raw)
To: ptxdist; +Cc: Jon Ringle
From: Jon Ringle <jringle@gridpoint.com>
This was removed in 4e8ea1703cad595f3136f0d48ae93de73a180c40
However, initramfs-tools is still being used to install scripts provided by
this package.
Signed-off-by: Jon Ringle <jringle@gridpoint.com>
---
rules/initmethod.in | 5 +++
rules/initramfs-tools.in | 67 ++++++++++++++++++++++++++++
rules/initramfs-tools.make | 109 +++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 181 insertions(+)
create mode 100644 rules/initramfs-tools.in
create mode 100644 rules/initramfs-tools.make
diff --git a/rules/initmethod.in b/rules/initmethod.in
index c1ef054..b8c0b9f 100644
--- a/rules/initmethod.in
+++ b/rules/initmethod.in
@@ -26,6 +26,11 @@ choice
select SYSTEMD
prompt "systemd "
+ config INITMETHOD_INITRAMFS
+ bool
+ select INITRAMFS_TOOLS
+ prompt "initramfs init "
+
endchoice
source "generated/initmethod.in"
diff --git a/rules/initramfs-tools.in b/rules/initramfs-tools.in
new file mode 100644
index 0000000..03446f5
--- /dev/null
+++ b/rules/initramfs-tools.in
@@ -0,0 +1,67 @@
+## SECTION=initmethod
+
+if INITMETHOD_INITRAMFS || ALLYES
+
+menuconfig INITRAMFS_TOOLS
+ bool
+ prompt "initramfs-tools "
+ help
+ Install initramfs skeleton framework
+
+if INITRAMFS_TOOLS
+
+config INITRAMFS_TOOLS_SCRIPTS_INIT_TOP
+ bool "install /scripts/init-top/ "
+ default y
+ help
+ FIXME
+
+config INITRAMFS_TOOLS_SCRIPTS_INIT_PREMOUNT
+ bool "install /scripts/init-premount/ "
+ help
+ FIXME
+
+config INITRAMFS_TOOLS_SCRIPTS_INIT_BOTTOM
+ bool "install /scripts/init-bottom/ "
+ help
+ FIXME
+
+config INITRAMFS_TOOLS_SCRIPTS_LOCAL_TOP
+ bool "install /scripts/local-top/ "
+ help
+ FIXME
+
+config INITRAMFS_TOOLS_SCRIPTS_LOCAL_BLOCK
+ bool "install /scripts/local-block/ "
+ help
+ FIXME
+
+config INITRAMFS_TOOLS_SCRIPTS_LOCAL_PREMOUNT
+ bool "install /scripts/local-premount/"
+ default y
+ help
+ FIXME
+
+config INITRAMFS_TOOLS_SCRIPTS_LOCAL_BOTTOM
+ bool "install /scripts/local-bottom/ "
+ help
+ FIXME
+
+config INITRAMFS_TOOLS_SCRIPTS_NFS_TOP
+ bool "install /scripts/nfs-top/ "
+ help
+ FIXME
+
+config INITRAMFS_TOOLS_SCRIPTS_NFS_PREMOUNT
+ bool "install /scripts/nfs-premount/ "
+ help
+ FIXME
+
+config INITRAMFS_TOOLS_SCRIPTS_NFS_BOTTOM
+ bool "install /scripts/nfs-bottom/ "
+ help
+ FIXME
+
+endif
+
+endif
diff --git a/rules/initramfs-tools.make b/rules/initramfs-tools.make
new file mode 100644
index 0000000..3513ff5
--- /dev/null
+++ b/rules/initramfs-tools.make
@@ -0,0 +1,109 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2009 by Jon Ringle <jon@ringle.org>
+#
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_INITRAMFS_TOOLS) += initramfs-tools
+
+#
+# Paths and names
+#
+INITRAMFS_TOOLS_VERSION := 0.130
+INITRAMFS_TOOLS_MD5 := f219c0277766104005419ee35151c5d4
+INITRAMFS_TOOLS_SUFFIX := tar.gz
+INITRAMFS_TOOLS := initramfs-tools-v$(INITRAMFS_TOOLS_VERSION)
+INITRAMFS_TOOLS_TARBALL := $(INITRAMFS_TOOLS).$(INITRAMFS_TOOLS_SUFFIX)
+INITRAMFS_TOOLS_URL := https://salsa.debian.org/kernel-team/initramfs-tools/-/archive/v$(INITRAMFS_TOOLS_VERSION)/$(INITRAMFS_TOOLS_TARBALL)
+INITRAMFS_TOOLS_SOURCE := $(SRCDIR)/$(INITRAMFS_TOOLS_TARBALL)
+INITRAMFS_TOOLS_DIR := $(BUILDDIR)/$(INITRAMFS_TOOLS)
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/initramfs-tools.prepare:
+ @$(call targetinfo)
+ @echo "DPKG_ARCH=$(call remove_quotes, $(PTXCONF_ARCH_STRING))" > $(INITRAMFS_TOOLS_DIR)/conf/arch.conf
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/initramfs-tools.compile:
+ @$(call targetinfo)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/initramfs-tools.install:
+ @$(call targetinfo)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/initramfs-tools.targetinstall:
+ @$(call targetinfo)
+
+ @$(call install_init, initramfs-tools)
+ @$(call install_fixup, initramfs-tools,PRIORITY,optional)
+ @$(call install_fixup, initramfs-tools,SECTION,base)
+ @$(call install_fixup, initramfs-tools,AUTHOR,"Jon Ringle <jon@ringle.org>")
+ @$(call install_fixup, initramfs-tools,DESCRIPTION,missing)
+
+ @$(call install_alternative, initramfs-tools, 0, 0, 0755, /init)
+ @$(call install_alternative, initramfs-tools, 0, 0, 0755, /conf/initramfs.conf)
+ @$(call install_alternative, initramfs-tools, 0, 0, 0755, /conf/arch.conf)
+ @$(call install_alternative, initramfs-tools, 0, 0, 0755, /scripts/functions)
+ @$(call install_alternative, initramfs-tools, 0, 0, 0755, /scripts/local)
+ @$(call install_alternative, initramfs-tools, 0, 0, 0755, /scripts/nfs)
+
+ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_INIT_TOP
+ $(call install_alternative_tree, initramfs-tools, 0, 0, /scripts/init-top/);
+endif
+ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_INIT_PREMOUNT
+ $(call install_alternative_tree, initramfs-tools, 0, 0, /scripts/init-premount/);
+endif
+ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_INIT_BOTTOM
+ $(call install_alternative_tree, initramfs-tools, 0, 0, /scripts/init-bottom/);
+endif
+
+ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_LOCAL_TOP
+ $(call install_alternative_tree, initramfs-tools, 0, 0, /scripts/local-top/);
+endif
+ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_LOCAL_BLOCK
+ $(call install_alternative_tree, initramfs-tools, 0, 0, /scripts/local-block/);
+endif
+ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_LOCAL_PREMOUNT
+ $(call install_alternative_tree, initramfs-tools, 0, 0, /scripts/local-premount/);
+endif
+ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_LOCAL_BOTTOM
+ $(call install_alternative_tree, initramfs-tools, 0, 0, /scripts/local-bottom/);
+endif
+
+ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_NFS_TOP
+ $(call install_alternative_tree, initramfs-tools, 0, 0, /scripts/nfs-top/);
+endif
+ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_NFS_PREMOUNT
+ $(call install_alternative_tree, initramfs-tools, 0, 0, /scripts/nfs-premount/);
+endif
+ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_NFS_BOTTOM
+ $(call install_alternative_tree, initramfs-tools, 0, 0, /scripts/nfs-bottom/);
+endif
+
+ @$(call install_finish, initramfs-tools)
+ @$(call touch)
+
+# vim: syntax=make
--
1.9.1
_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
^ permalink raw reply [flat|nested] 2+ messages in thread
* [ptxdist] [PATCH v3 2/2] image-root-tgz: Add IMAGE_ROOT_TGZ_LABEL option
2018-07-11 13:17 [ptxdist] [PATCH v3 1/2] initramfs-tools: Restore package jon
@ 2018-07-11 13:17 ` jon
0 siblings, 0 replies; 2+ messages in thread
From: jon @ 2018-07-11 13:17 UTC (permalink / raw)
To: ptxdist; +Cc: Jon Ringle
From: Jon Ringle <jringle@gridpoint.com>
Signed-off-by: Jon Ringle <jringle@gridpoint.com>
---
doc/ref_manual.rst | 3 +++
platforms/image-root-tgz.in | 17 +++++++++++++++++
rules/image-root-tgz.make | 1 +
rules/post/ptxd_make_image_common.make | 3 ++-
scripts/lib/ptxd_make_image_archive.sh | 8 ++++++--
scripts/lib/ptxd_make_image_common.sh | 6 ++++++
6 files changed, 35 insertions(+), 3 deletions(-)
diff --git a/doc/ref_manual.rst b/doc/ref_manual.rst
index 63b0a9c..a26e63c 100644
--- a/doc/ref_manual.rst
+++ b/doc/ref_manual.rst
@@ -399,6 +399,9 @@ different.
conflicting files from multiple images. The created nfsroot directory is
``<platform-dir>/nfsroot/<image-name>``.
+``<PKG>_LABEL``
+ This is a tar label to put on an image. This is supported by image-root-tgz.
+
.. _reference_macros:
Rule File Macro Reference
diff --git a/platforms/image-root-tgz.in b/platforms/image-root-tgz.in
index fce1516..9d9916c 100644
--- a/platforms/image-root-tgz.in
+++ b/platforms/image-root-tgz.in
@@ -5,3 +5,20 @@ config IMAGE_ROOT_TGZ
prompt "Generate images/root.tgz"
help
FIXME
+
+if IMAGE_ROOT_TGZ
+
+config IMAGE_ROOT_TGZ_LABEL
+ string
+ prompt "label"
+ default ""
+
+ help
+ This string gets expanded to form the label. An empty string produces no label.
+ For example, this could be set to:
+ ${PTXCONF_PROJECT_VENDOR}-${PTXCONF_PROJECT}${PTXCONF_PROJECT_VERSION}
+
+ The label on the generate image can be checked with the command:
+ $ tar --test-label -f images/root.tgz
+endif
+
diff --git a/rules/image-root-tgz.make b/rules/image-root-tgz.make
index c93e8c9..07a8370 100644
--- a/rules/image-root-tgz.make
+++ b/rules/image-root-tgz.make
@@ -20,6 +20,7 @@ IMAGE_ROOT_TGZ := image-root-tgz
IMAGE_ROOT_TGZ_DIR := $(BUILDDIR)/$(IMAGE_ROOT_TGZ)
IMAGE_ROOT_TGZ_IMAGE := $(IMAGEDIR)/root.tgz
IMAGE_ROOT_TGZ_PKGS = $(PTX_PACKAGES_INSTALL)
+IMAGE_ROOT_TGZ_LABEL := $(call remove_quotes, $(PTXCONF_IMAGE_ROOT_TGZ_LABEL))
# ----------------------------------------------------------------------------
# Image
diff --git a/rules/post/ptxd_make_image_common.make b/rules/post/ptxd_make_image_common.make
index a1a5e78..8aa8c0a 100644
--- a/rules/post/ptxd_make_image_common.make
+++ b/rules/post/ptxd_make_image_common.make
@@ -21,7 +21,8 @@ world/image/env/impl = \
image_env="$(call ptx/escape,$($(1)_ENV))" \
image_pkgs="$(call ptx/escape,$($(1)_PKGS))" \
image_files="$(call ptx/escape,$($(1)_FILES))" \
- image_image="$(call ptx/escape,$($(1)_IMAGE))"
+ image_image="$(call ptx/escape,$($(1)_IMAGE))" \
+ image_label="$(call ptx/escape,$($(1)_LABEL))"
world/image/env = \
$(call world/image/env/impl,$(strip $(1)))
diff --git a/scripts/lib/ptxd_make_image_archive.sh b/scripts/lib/ptxd_make_image_archive.sh
index 650679a..e21da5c 100644
--- a/scripts/lib/ptxd_make_image_archive.sh
+++ b/scripts/lib/ptxd_make_image_archive.sh
@@ -16,8 +16,12 @@ ptxd_make_image_archive_impl() {
ptxd_get_ipkg_files ${image_pkgs} &&
ptxd_make_image_extract_xpkg_files "${pkg_dir}" &&
cd "${pkg_dir}" &&
- echo -e "\nCreating $(ptxd_print_path "${image_image}") ...\n" &&
- tar -zcf "${image_image}" . &&
+ echo -ne "\nCreating $(ptxd_print_path "${image_image}") "
+ if [ -n "${image_label}" ]; then
+ echo -n "with label \"${image_label}\" "
+ fi
+ echo -ne "...\n" &&
+ tar ${image_label_args} -zcf "${image_image}" . &&
rm -r "${pkg_dir}"
}
export -f ptxd_make_image_archive_impl
diff --git a/scripts/lib/ptxd_make_image_common.sh b/scripts/lib/ptxd_make_image_common.sh
index 402ff53..a925446 100644
--- a/scripts/lib/ptxd_make_image_common.sh
+++ b/scripts/lib/ptxd_make_image_common.sh
@@ -66,6 +66,12 @@ ptxd_make_image_init() {
image_ipkg_repo_dirs=( "${image_repo_dist_dir}" )
fi
+ if [ -n "${image_label}" ]; then
+ image_label_args="--label \"${image_label}\""
+ else
+ image_label_args=""
+ fi
+
exec 2>&${PTXDIST_FD_LOGERR}
}
export -f ptxd_make_image_init
--
1.9.1
_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2018-07-11 13:17 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-07-11 13:17 [ptxdist] [PATCH v3 1/2] initramfs-tools: Restore package jon
2018-07-11 13:17 ` [ptxdist] [PATCH v3 2/2] image-root-tgz: Add IMAGE_ROOT_TGZ_LABEL option jon
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox