From: Michael Olbrich <m.olbrich@pengutronix.de>
To: ptxdist@pengutronix.de
Subject: Re: [ptxdist] [PATCH] initramfs-tools: Restore package
Date: Tue, 19 Jun 2018 16:45:20 +0200 [thread overview]
Message-ID: <20180619144520.li6g6274osq3o6ds@pengutronix.de> (raw)
In-Reply-To: <1529323760-31395-1-git-send-email-jon@ringle.org>
On Mon, Jun 18, 2018 at 08:09:20AM -0400, jon@ringle.org wrote:
> 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 | 4 ++
> rules/initramfs-tools.in | 69 ++++++++++++++++++++++++++++
> rules/initramfs-tools.make | 110 +++++++++++++++++++++++++++++++++++++++++++++
> 3 files changed, 183 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..676cc0a 100644
> --- a/rules/initmethod.in
> +++ b/rules/initmethod.in
> @@ -26,6 +26,10 @@ 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..4201a2a
> --- /dev/null
> +++ b/rules/initramfs-tools.in
> @@ -0,0 +1,69 @@
> +## SECTION=initmethod
> +
> +if INITMETHOD_INITRAMFS
|| ALLYES
That makes build tests easier for me. If this does not work any more with
the select above, then maybe adding the condition to the propmt may work.
> +
> +menuconfig INITRAMFS_TOOLS
> + bool
> + prompt "initramfs-tools "
> + help
> + Install initramfs skeleton framework
> +
> +if INITRAMFS_TOOLS
> +
> +config INITRAMFS_SPEC
Is this spec stuff something you need? I actually missed this when I
removed all the other pieces, so I'd like to remove this as well.
This seems to be just a indirection to install files. I'd prefer normal
packages for this.
> + bool
> + prompt "parse project specific initramfs_spec"
> + help
> + parse the spec file which is expected to live in
> + ${PTXDIST_WORKSPACE}/initramfs_spec. The format is the same
> + as described in the kernelsource under
> +
> + Documentation/early-userspace/README.
> +
> + Files described in this file can either have an absolute or
> + a relative path (relative to ${PTXDIST_WORKSPACE}).
> +
> +if INITRAMFS_SPEC
> +
> +config INITRAMFS_SPEC_FILE
> + string "initramfs spec filename"
> + default "${PTXDIST_WORKSPACE}/initramfs_spec"
> + help
> + install using a spec file. Format is similar to what
> + is described in the kernel source in
> + Documentation/filesystems/ramfs-rootfs-initramfs.txt
> +
> + file <name> <location> <mode> <uid> <gid>
> + dir <name> <mode> <uid> <gid>
> + nod <name> <mode> <uid> <gid> <dev_type> <maj> <min>
> + slink <name> <target> <mode> <uid> <gid>
> +
> + file <location> can either have an absolute path or
> + a relative path relative to any of the following paths:
> + ${PTXDIST_WORKSPACE}/projectroot${PTXDIST_PLATFORMSUFFIX}/<location>
> + ${PTXDIST_WORKSPACE}/projectroot/<location>${PTXDIST_PLATFORMSUFFIX}
> + ${PTXDIST_WORKSPACE}/projectroot/<location>
> + ${PTXDIST_TOPDIR}/projectroot/<location>
> + ${pkg_pkg_dir}/<location>
> + ${pkg_dir}/<location>
> +
> +endif
> +
> +config INITRAMFS_TOOLS_SCRIPTS_INIT
> + bool "install /scripts/init "
> + help
> + FIXME
> +
> +config INITRAMFS_TOOLS_SCRIPTS_LOCAL
> + bool "install /scripts/local "
> + help
> + FIXME
> +
> +config INITRAMFS_TOOLS_SCRIPTS_NFS
> + bool "install /scripts/nfs "
> + help
> + FIXME
> +
> +endif
> +
> +endif
> diff --git a/rules/initramfs-tools.make b/rules/initramfs-tools.make
> new file mode 100644
> index 0000000..bf2fe7f
> --- /dev/null
> +++ b/rules/initramfs-tools.make
> @@ -0,0 +1,110 @@
> +# -*-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.93.4
Upstream version is 0.130, any reason against updating?
> +INITRAMFS_TOOLS_MD5 := 06415435a4ba85713ea50b34e212d73c
> +INITRAMFS_TOOLS_SUFFIX := tar.gz
> +INITRAMFS_TOOLS := initramfs-tools
> +INITRAMFS_TOOLS_TARBALL := $(INITRAMFS_TOOLS)_$(INITRAMFS_TOOLS_VERSION).$(INITRAMFS_TOOLS_SUFFIX)
> +INITRAMFS_TOOLS_URL := http://www.pengutronix.de/software/ptxdist/temporary-src/$(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=$(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_copy, initramfs-tools, 0, 0, 0755, /conf);
> + @$(call install_copy, initramfs-tools, 0, 0, 0755, /conf/conf.d);
This should not be needed. Any necessary directory is created
automatically.
> + @$(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_copy, initramfs-tools, 0, 0, 0755, /scripts);
> + @$(call install_copy, initramfs-tools, 0, 0, 0755, /scripts/init-top);
> + @$(call install_copy, initramfs-tools, 0, 0, 0755, /scripts/init-premount);
> + @$(call install_copy, initramfs-tools, 0, 0, 0755, /scripts/init-bottom);
> + @$(call install_alternative, initramfs-tools, 0, 0, 0755, /scripts/functions);
> +
> +ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_INIT
> + @cd $(INITRAMFS_TOOLS_DIR) && \
> + find scripts/init-* -type f | while read file; do \
> + $(call install_alternative, initramfs-tools, 0, 0, 0755, /$${file}); \
use $(ptx/nl), otherwise errors may get lost.
> + done
> +endif
> +
> +ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_LOCAL
> + @$(call install_copy, initramfs-tools, 0, 0, 0755, /scripts/local-top);
> + @$(call install_copy, initramfs-tools, 0, 0, 0755, /scripts/local-premount);
> + @$(call install_copy, initramfs-tools, 0, 0, 0755, /scripts/local-bottom);
> + @$(call install_alternative, initramfs-tools, 0, 0, 0755, /scripts/local);
> + @cd $(INITRAMFS_TOOLS_DIR) && \
> + find scripts/local-* -type f | while read file; do \
> + $(call install_alternative, initramfs-tools, 0, 0, 0755, /$${file}); \
here too.
Michael
> + done
> +endif
> +
> +ifdef PTXCONF_INITRAMFS_TOOLS_SCRIPTS_NFS
> + @$(call install_copy, initramfs-tools, 0, 0, 0755, /scripts/nfs-top);
> + @$(call install_copy, initramfs-tools, 0, 0, 0755, /scripts/nfs-premount);
> + @$(call install_copy, initramfs-tools, 0, 0, 0755, /scripts/nfs-bottom);
> + @$(call install_alternative, initramfs-tools, 0, 0, 0755, /scripts/nfs);
> +endif
> +
> +ifdef PTXCONF_INITRAMFS_SPEC
> + @$(call install_spec, initramfs-tools, $(PTXCONF_INITRAMFS_SPEC_FILE));
> +endif
> +
> + @$(call install_finish, initramfs-tools)
> + @$(call touch)
> +
> +# vim: syntax=make
> --
> 1.9.1
>
>
> _______________________________________________
> ptxdist mailing list
> ptxdist@pengutronix.de
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
next prev parent reply other threads:[~2018-06-19 14:45 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-18 12:09 jon
2018-06-19 14:45 ` Michael Olbrich [this message]
2018-07-07 2:27 ` Jon Ringle
2018-07-10 7:00 ` Michael Olbrich
2018-07-10 12:11 ` Jon Ringle
2018-07-10 12:45 ` Michael Olbrich
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=20180619144520.li6g6274osq3o6ds@pengutronix.de \
--to=m.olbrich@pengutronix.de \
--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