[gentoo-commits] proj/genkernel:master commit in: defaults/, gkbuilds/
commit: 45b3d3aa452103994e9349b29357944c8b39bad6 Author: Sam James gentoo org> AuthorDate: Thu Jul 27 10:42:28 2023 + Commit: Sam James gentoo org> CommitDate: Thu Jul 27 10:42:28 2023 + URL:https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=45b3d3aa Add userspace-rcu (new dep of xfsprogs) Signed-off-by: Sam James gentoo.org> defaults/software.sh | 9 - gkbuilds/userspace-rcu.gkbuild | 13 + 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/defaults/software.sh b/defaults/software.sh index 0dce9e1..5c75a4e 100644 --- a/defaults/software.sh +++ b/defaults/software.sh @@ -219,6 +219,13 @@ GKPKG_UNIONFS_FUSE_SRCTAR="${GKPKG_UNIONFS_FUSE_SRCTAR:-${DISTDIR}/unionfs-fuse- GKPKG_UNIONFS_FUSE_SRCDIR="${GKPKG_UNIONFS_FUSE_SRCDIR:-unionfs-fuse-${GKPKG_UNIONFS_FUSE_PV}}" GKPKG_UNIONFS_FUSE_BINPKG="${GKPKG_UNIONFS_FUSE_BINPKG:-%%CACHE%%/unionfs-fuse-${GKPKG_UNIONFS_FUSE_PV}-%%ARCH%%.tar.xz}" +GKPKG_USERSPACE_RCU_PN="userspace-rcu" +GKPKG_USERSPACE_RCU_PV="${GKPKG_USERSPACE_RCU_PV:-VERSION_USERSPACE_RCU}" +GKPKG_USERSPACE_RCU_DEPS="" +GKPKG_USERSPACE_RCU_SRCTAR="${GKPKG_UTIL_LINUX_SRCTAR:-${DISTDIR}/userspace-rcu-${GKPKG_USERSPACE_RCU_PV}.tar.bz2}" +GKPKG_USERSPACE_RCU_SRCDIR="${GKPKG_UTIL_LINUX_SRCDIR:-userspace-rcu-${GKPKG_USERSPACE_RCU_PV}}" +GKPKG_USERSPACE_RCU_BINPKG="${GKPKG_UTIL_LINUX_BINPKG:-%%CACHE%%/userspace-rcu-${GKPKG_USERSPACE_RCU_PV}-%%ARCH%%.tar.xz}" + GKPKG_UTIL_LINUX_PN="util-linux" GKPKG_UTIL_LINUX_PV="${GKPKG_UTIL_LINUX_PV:-VERSION_UTIL_LINUX}" GKPKG_UTIL_LINUX_DEPS="" @@ -228,7 +235,7 @@ GKPKG_UTIL_LINUX_BINPKG="${GKPKG_UTIL_LINUX_BINPKG:-%%CACHE%%/util-linux-${GKPKG GKPKG_XFSPROGS_PN="xfsprogs" GKPKG_XFSPROGS_PV="${GKPKG_XFSPROGS_PV:-VERSION_XFSPROGS}" -GKPKG_XFSPROGS_DEPS="util-linux" +GKPKG_XFSPROGS_DEPS="util-linux userspace-rcu" GKPKG_XFSPROGS_SRCTAR="${GKPKG_XFSPROGS_SRCTAR:-${DISTDIR}/xfsprogs-${GKPKG_XFSPROGS_PV}.tar.xz}" GKPKG_XFSPROGS_SRCDIR="${GKPKG_XFSPROGS_SRCDIR:-xfsprogs-${GKPKG_XFSPROGS_PV}}" GKPKG_XFSPROGS_BINPKG="${GKPKG_XFSPROGS_BINPKG:-%%CACHE%%/xfsprogs-${GKPKG_XFSPROGS_PV}-%%ARCH%%.tar.xz}" diff --git a/gkbuilds/userspace-rcu.gkbuild b/gkbuilds/userspace-rcu.gkbuild new file mode 100644 index 000..5b4b7bf --- /dev/null +++ b/gkbuilds/userspace-rcu.gkbuild @@ -0,0 +1,13 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +src_configure() { + gkconf --enable-static +} + +src_install() { + default + + rm -rf "${D}"/usr/share +} +
[gentoo-commits] proj/genkernel:master commit in: defaults/, gkbuilds/
commit: 8fa4d682493e704cfdea5c51aecc26af868e9d97 Author: Thomas Deutschmann gentoo org> AuthorDate: Mon Jul 5 22:36:00 2021 + Commit: Thomas Deutschmann gentoo org> CommitDate: Mon Jul 5 23:40:51 2021 + URL:https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=8fa4d682 defaults/software.sh: Add libxcrypt Needed for BusyBox when host system is using sys-libs/libxcrypt[-static-libs] which is usually enforced via package.use.force. Bug: https://bugs.gentoo.org/798468 Signed-off-by: Thomas Deutschmann gentoo.org> defaults/software.sh | 9 - gkbuilds/libxcrypt.gkbuild | 17 + 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/defaults/software.sh b/defaults/software.sh index 291bad4..54836ad 100644 --- a/defaults/software.sh +++ b/defaults/software.sh @@ -39,7 +39,7 @@ GKPKG_BTRFS_PROGS_BINPKG="${GKPKG_BTRFS_PROGS_BINPKG:-%%CACHE%%/btrfs-progs-${GK GKPKG_BUSYBOX_PN="busybox" GKPKG_BUSYBOX_PV="${GKPKG_BUSYBOX_PV:-VERSION_BUSYBOX}" -GKPKG_BUSYBOX_DEPS="" +GKPKG_BUSYBOX_DEPS="libxcrypt" GKPKG_BUSYBOX_SRCTAR="${GKPKG_BUSYBOX_SRCTAR:-${DISTDIR}/busybox-${GKPKG_BUSYBOX_PV}.tar.bz2}" GKPKG_BUSYBOX_SRCDIR="${GKPKG_BUSYBOX_SRCDIR:-busybox-${GKPKG_BUSYBOX_PV}}" GKPKG_BUSYBOX_BINPKG="${GKPKG_BUSYBOX_BINPKG:-%%CACHE%%/busybox-${GKPKG_BUSYBOX_PV}-%%ARCH%%.tar.xz}" @@ -156,6 +156,13 @@ GKPKG_LIBGPG_ERROR_SRCTAR="${GKPKG_LIBGPG_ERROR_SRCTAR:-${DISTDIR}/libgpg-error- GKPKG_LIBGPG_ERROR_SRCDIR="${GKPKG_LIBGPG_ERROR_SRCDIR:-libgpg-error-${GKPKG_LIBGPG_ERROR_PV}}" GKPKG_LIBGPG_ERROR_BINPKG="${GKPKG_LIBGPG_ERROR_BINPKG:-%%CACHE%%/libgpg-error-${GKPKG_LIBGPG_ERROR_PV}-%%ARCH%%.tar.xz}" +GKPKG_LIBXCRYPT_PN="libxcrypt" +GKPKG_LIBXCRYPT_PV="${GKPKG_LIBXCRYPT_PV:-VERSION_LIBXCRYPT}" +GKPKG_LIBXCRYPT_DEPS="" +GKPKG_LIBXCRYPT_SRCTAR="${GKPKG_LIBXCRYPT_SRCTAR:-${DISTDIR}/libxcrypt-${GKPKG_LIBXCRYPT_PV}.tar.gz}" +GKPKG_LIBXCRYPT_SRCDIR="${GKPKG_LIBXCRYPT_SRCDIR:-libxcrypt-${GKPKG_LIBXCRYPT_PV}}" +GKPKG_LIBXCRYPT_BINPKG="${GKPKG_LIBXCRYPT_BINPKG:-%%CACHE%%/libxcrypt-${GKPKG_LIBXCRYPT_PV}-%%ARCH%%.tar.xz}" + GKPKG_LVM_PN="lvm" GKPKG_LVM_PV="${GKPKG_LVM_PV:-VERSION_LVM}" GKPKG_LVM_DEPS="util-linux eudev libaio" diff --git a/gkbuilds/libxcrypt.gkbuild b/gkbuilds/libxcrypt.gkbuild new file mode 100644 index 000..1834e25 --- /dev/null +++ b/gkbuilds/libxcrypt.gkbuild @@ -0,0 +1,17 @@ +# Copyright 2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +src_prepare() { + default + + gkautoreconf +} + +src_configure() { + local myopts=( + --enable-shared + --enable-static + ) + + gkconf "${myopts[@]}" +}
[gentoo-commits] proj/genkernel:master commit in: defaults/, gkbuilds/
commit: 0b9f8e012a51eecd3df1a86b4ca639de85537e33 Author: Thomas Deutschmann gentoo org> AuthorDate: Sat Mar 13 15:40:49 2021 + Commit: Thomas Deutschmann gentoo org> CommitDate: Sat Mar 13 15:41:34 2021 + URL:https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=0b9f8e01 Bump strace to v5.11 Signed-off-by: Thomas Deutschmann gentoo.org> defaults/software.sh| 2 +- gkbuilds/strace.gkbuild | 9 + 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/defaults/software.sh b/defaults/software.sh index e938584..291bad4 100644 --- a/defaults/software.sh +++ b/defaults/software.sh @@ -186,7 +186,7 @@ GKPKG_POPT_BINPKG="${GKPKG_POPT_BINPKG:-%%CACHE%%/popt-${GKPKG_POPT_PV}-%%ARCH%% GKPKG_STRACE_PN="strace" GKPKG_STRACE_PV="${GKPKG_STRACE_PV:-VERSION_STRACE}" -GKPKG_STRACE_DEPS="" +GKPKG_STRACE_DEPS="libaio" GKPKG_STRACE_SRCTAR="${GKPKG_STRACE_SRCTAR:-${DISTDIR}/strace-${GKPKG_STRACE_PV}.tar.xz}" GKPKG_STRACE_SRCDIR="${GKPKG_STRACE_SRCDIR:-strace-${GKPKG_STRACE_PV}}" GKPKG_STRACE_BINPKG="${GKPKG_STRACE_BINPKG:-%%CACHE%%/strace-${GKPKG_STRACE_PV}-%%ARCH%%.tar.xz}" diff --git a/gkbuilds/strace.gkbuild b/gkbuilds/strace.gkbuild index 62399ce..d32a4b7 100644 --- a/gkbuilds/strace.gkbuild +++ b/gkbuilds/strace.gkbuild @@ -1,12 +1,13 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 src_configure() { append-ldflags -static -pthread - export ac_cv_header_libaio_h=yes local myconf=( + --disable-gcc-Werror --enable-mpers=check + --enable-static --without-libunwind --without-libdw ) @@ -19,8 +20,8 @@ src_configure() { src_install() { mkdir -p "${D}"/usr/bin || die "Failed to create '${D}/usr/bin'!" - cp -a strace "${D}"/usr/bin/ \ - || die "Failed to copy '${S}/strace' to '${D}/usr/bin/'!" + cp -a src/strace "${D}"/usr/bin/ \ + || die "Failed to copy '${S}/src/strace' to '${D}/usr/bin/'!" "${STRIP}" --strip-all "${D}"/usr/bin/strace \ || die "Failed to strip '${D}/usr/bin/strace'!"
[gentoo-commits] proj/genkernel:master commit in: defaults/, gkbuilds/
commit: f492c407747e2c266c71ea9f19193f8fecd3bd8f Author: Thomas Deutschmann gentoo org> AuthorDate: Wed Aug 26 21:33:28 2020 + Commit: Thomas Deutschmann gentoo org> CommitDate: Wed Aug 26 21:46:37 2020 + URL:https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=f492c407 eudev: Enable kmod support This will allow us to use (e)udev to load required kernel modules. Signed-off-by: Thomas Deutschmann gentoo.org> defaults/software.sh | 13 ++--- gkbuilds/eudev.gkbuild | 4 +--- gkbuilds/kmod.gkbuild | 24 +++- gkbuilds/xz.gkbuild| 19 +++ 4 files changed, 49 insertions(+), 11 deletions(-) diff --git a/defaults/software.sh b/defaults/software.sh index d8dbfc9..619b026 100644 --- a/defaults/software.sh +++ b/defaults/software.sh @@ -74,7 +74,7 @@ GKPKG_DROPBEAR_BINPKG="${GKPKG_DROPBEAR_BINPKG:-%%CACHE%%/dropbear-${GKPKG_DROPB GKPKG_EUDEV_PN="eudev" GKPKG_EUDEV_PV="${GKPKG_EUDEV_PV:-VERSION_EUDEV}" -GKPKG_EUDEV_DEPS="util-linux" +GKPKG_EUDEV_DEPS="util-linux zlib xz kmod" GKPKG_EUDEV_SRCTAR="${GKPKG_EUDEV_SRCTAR:-${DISTDIR}/eudev-${GKPKG_EUDEV_PV}.tar.gz}" GKPKG_EUDEV_SRCDIR="${GKPKG_EUDEV_SRCDIR:-eudev-${GKPKG_EUDEV_PV}}" GKPKG_EUDEV_BINPKG="${GKPKG_EUDEV_BINPKG:-%%CACHE%%/eudev-${GKPKG_EUDEV_PV}-%%ARCH%%.tar.xz}" @@ -116,7 +116,7 @@ GKPKG_HWIDS_BINPKG="${GKPKG_HWIDS_BINPKG:-%%CACHE%%/hwids-${GKPKG_HWIDS_PV}-%%AR GKPKG_ISCSI_PN="open-iscsi" GKPKG_ISCSI_PV="${GKPKG_ISCSI_PV:-VERSION_ISCSI}" -GKPKG_ISCSI_DEPS="kmod zlib util-linux" +GKPKG_ISCSI_DEPS="util-linux zlib xz kmod" GKPKG_ISCSI_SRCTAR="${GKPKG_ISCSI_SRCTAR:-${DISTDIR}/open-iscsi-${GKPKG_ISCSI_PV}.tar.gz}" GKPKG_ISCSI_SRCDIR="${GKPKG_ISCSI_SRCDIR:-open-iscsi-${GKPKG_ISCSI_PV}}" GKPKG_ISCSI_BINPKG="${GKPKG_ISCSI_BINPKG:-%%CACHE%%/iscsi-${GKPKG_ISCSI_PV}-%%ARCH%%.tar.xz}" @@ -130,7 +130,7 @@ GKPKG_JSON_C_BINPKG="${GKPKG_JSON_C_BINPKG:-%%CACHE%%/json-c-${GKPKG_JSON_C_PV}- GKPKG_KMOD_PN="kmod" GKPKG_KMOD_PV="${GKPKG_KMOD_PV:-VERSION_KMOD}" -GKPKG_KMOD_DEPS="zlib" +GKPKG_KMOD_DEPS="zlib xz" GKPKG_KMOD_SRCTAR="${GKPKG_KMOD_SRCTAR:-${DISTDIR}/kmod-${GKPKG_KMOD_PV}.tar.xz}" GKPKG_KMOD_SRCDIR="${GKPKG_KMOD_SRCDIR:-kmod-${GKPKG_KMOD_PV}}" GKPKG_KMOD_BINPKG="${GKPKG_KMOD_BINPKG:-%%CACHE%%/kmod-${GKPKG_KMOD_PV}-%%ARCH%%.tar.xz}" @@ -219,6 +219,13 @@ GKPKG_XFSPROGS_SRCTAR="${GKPKG_XFSPROGS_SRCTAR:-${DISTDIR}/xfsprogs-${GKPKG_XFSP GKPKG_XFSPROGS_SRCDIR="${GKPKG_XFSPROGS_SRCDIR:-xfsprogs-${GKPKG_XFSPROGS_PV}}" GKPKG_XFSPROGS_BINPKG="${GKPKG_XFSPROGS_BINPKG:-%%CACHE%%/xfsprogs-${GKPKG_XFSPROGS_PV}-%%ARCH%%.tar.xz}" +GKPKG_XZ_PN="xz" +GKPKG_XZ_PV="${GKPKG_XZ_PV:-VERSION_XZ}" +GKPKG_XZ_DEPS="" +GKPKG_XZ_SRCTAR="${GKPKG_XZ_SRCTAR:-${DISTDIR}/xz-${GKPKG_XZ_PV}.tar.gz}" +GKPKG_XZ_SRCDIR="${GKPKG_XZ_SRCDIR:-xz-${GKPKG_XZ_PV}}" +GKPKG_XZ_BINPKG="${GKPKG_XZ_BINPKG:-%%CACHE%%/xz-${GKPKG_XZ_PV}-%%ARCH%%.tar.xz}" + GKPKG_ZLIB_PN="zlib" GKPKG_ZLIB_PV="${GKPKG_ZLIB_PV:-VERSION_ZLIB}" GKPKG_ZLIB_DEPS="" diff --git a/gkbuilds/eudev.gkbuild b/gkbuilds/eudev.gkbuild index 54f2c0d..0677f0e 100644 --- a/gkbuilds/eudev.gkbuild +++ b/gkbuilds/eudev.gkbuild @@ -10,11 +10,9 @@ src_configure() { --disable-selinux --disable-rule-generator --disable-hwdb + --enable-kmod ) - # Cannot link against static kmod, https://lists.freedesktop.org/archives/systemd-devel/2013-June/011173.html - myconf+=( --disable-kmod ) - gkconf "${myconf[@]}" } diff --git a/gkbuilds/kmod.gkbuild b/gkbuilds/kmod.gkbuild index 44a2df3..bf0f355 100644 --- a/gkbuilds/kmod.gkbuild +++ b/gkbuilds/kmod.gkbuild @@ -7,16 +7,24 @@ src_prepare() { sed -i \ -e '/--enable-static is not supported by kmod/s:as_fn_error:echo:' \ configure || die "Failed to re-enable static support" + + # List of symbols which are clashing with (e)udev + cat <<-EOF >> kmod.syms + mkdir_p _kmod_mkdir_p + mkdir_parents _kmod_mkdir_parents + path_is_absolute_kmod_path_is_absolute + path_make_absolute_cwd _kmod_path_make_absolute_cwd + EOF } src_configure() { local myconf=( - --without-xz - --with-zlib - --without-openssl + --enable-static --disable-python --disable-tools - --enable-static + --with-xz + --with-zlib + --without-openssl ) gkconf "${myconf[@]}" @@ -27,10 +35,16 @@ src_install() { # remove hardcoded $BROOT sed -i \ - -e 's/-L\/[^ ]*/-L${libdir}/' \ + -e 's/-L\/[^ ]*/-L${libdir}/g' \ "${D}"/usr/lib*/pkgconfig/*.pc \ || die + # rename internal symbols to avoid clashing with (e)udev + $(tc-getOBJCOPY) \ + --redefine-syms=kmod.syms \ +
[gentoo-commits] proj/genkernel:master commit in: defaults/, gkbuilds/
commit: aa0e4e5d3db44547983d0a227f62afde7754f417 Author: Thomas Deutschmann gentoo org> AuthorDate: Thu Jul 23 20:46:09 2020 + Commit: Thomas Deutschmann gentoo org> CommitDate: Thu Jul 23 22:56:47 2020 + URL:https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=aa0e4e5d cryptsetup: Enable UDEV support Signed-off-by: Thomas Deutschmann gentoo.org> defaults/software.sh| 2 +- gkbuilds/cryptsetup.gkbuild | 10 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/defaults/software.sh b/defaults/software.sh index 3de9470..a4f15d6 100644 --- a/defaults/software.sh +++ b/defaults/software.sh @@ -46,7 +46,7 @@ GKPKG_COREUTILS_BINPKG="${GKPKG_COREUTILS_BINPKG:-%%CACHE%%/coreutils-${GKPKG_CO GKPKG_CRYPTSETUP_PN="cryptsetup" GKPKG_CRYPTSETUP_PV="${GKPKG_CRYPTSETUP_PV:-VERSION_CRYPTSETUP}" -GKPKG_CRYPTSETUP_DEPS="util-linux json-c popt libgpg-error libgcrypt lvm" +GKPKG_CRYPTSETUP_DEPS="util-linux eudev json-c popt libgpg-error libgcrypt lvm" GKPKG_CRYPTSETUP_SRCTAR="${GKPKG_CRYPTSETUP_SRCTAR:-${DISTDIR}/cryptsetup-${GKPKG_CRYPTSETUP_PV}.tar.xz}" GKPKG_CRYPTSETUP_SRCDIR="${GKPKG_CRYPTSETUP_SRCDIR:-cryptsetup-${GKPKG_CRYPTSETUP_PV}}" GKPKG_CRYPTSETUP_BINPKG="${GKPKG_CRYPTSETUP_BINPKG:-%%CACHE%%/cryptsetup-${GKPKG_CRYPTSETUP_PV}-%%ARCH%%.tar.xz}" diff --git a/gkbuilds/cryptsetup.gkbuild b/gkbuilds/cryptsetup.gkbuild index a99ce28..57fc537 100644 --- a/gkbuilds/cryptsetup.gkbuild +++ b/gkbuilds/cryptsetup.gkbuild @@ -1,17 +1,25 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 src_configure() { export ac_cv_header_security_pam_misc_h=no export ac_cv_header_security_pam_appl_h=no + # devicemapper needs to find udev + append-ldflags -Wl,-rpath-link,${BROOT}/usr/lib + local myconf=( --enable-internal-argon2 --sbindir=/sbin --disable-nls + --disable-selinux + --disable-veritysetup + --disable-cryptsetup-reencrypt + --disable-integritysetup --enable-static=yes --enable-shared=no --enable-static-cryptsetup + --enable-udev --with-crypto_backend=gcrypt )
[gentoo-commits] proj/genkernel:master commit in: defaults/, gkbuilds/, /
commit: fe4f505dab7c4c1420c54d493d638445d95dc742 Author: Thomas Deutschmann gentoo org> AuthorDate: Thu Jul 23 20:59:33 2020 + Commit: Thomas Deutschmann gentoo org> CommitDate: Thu Jul 23 22:56:48 2020 + URL:https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=fe4f505d multipath: Switch to UDEV usage Signed-off-by: Thomas Deutschmann gentoo.org> defaults/initrd.scripts | 46 ++ gen_initramfs.sh| 31 --- gkbuilds/lvm.gkbuild| 5 +++-- 3 files changed, 41 insertions(+), 41 deletions(-) diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts index 8e7d109..7d852ee 100644 --- a/defaults/initrd.scripts +++ b/defaults/initrd.scripts @@ -1527,48 +1527,22 @@ start_volumes() { if [ "${USE_MULTIPATH_NORMAL}" = '1' ] then - for multipath_path in /sbin/multipath /bin/multipath MISSING - do - [ -x "${multipath_path}" ] && break - done - - for dmsetup_path in /usr/sbin/dmsetup /sbin/dmsetup /bin/dmsetup MISSING - do - [ -x "${dmsetup_path}" ] && break - done - - for kpartx_path in /sbin/kpartx /bin/kpartx MISSING - do - [ -x "${kpartx_path}" ] && break - done - - fail=0 - [ "${multipath_path}" = "MISSING" ] && fail=1 && bad_msg "domultipath called, but multipath binary missing! Skipping multipath" - [ "${dmsetup_path}" = "MISSING" ] && fail=1 && bad_msg "domultipath called, but dmsetup binary missing! Skipping multipath" - [ "${kpartx_path}" = "MISSING" ] && fail=1 && bad_msg "domultipath called, but kpartx binary missing! Skipping multipath" - - if [ ${fail} -eq 0 ] + if ! hash multipath >/dev/null 2>&1 then + bad_msg "domultipath called, but multipath binary missing! Skipping multipath" + else good_msg "Scanning for multipath devices" - good_msg ":: Populating scsi_id info for libudev queries" - run mkdir -p /run/udev/data - local ech - for ech in /sys/block/* - do - local tgtfile=b$(cat ${ech}/dev) - run /lib/udev/scsi_id -g -x /dev/${ech##*/} | sed -e 's/^/E:/' >/run/udev/data/${tgtfile} - done - - local multipath_cmd="run ${multipath_path} -v 0 2>&1" + local multipath_cmd="run multipath -v 0 2>&1" is_log_enabled && multipath_cmd="${multipath_cmd} | tee -a '${GK_INIT_LOG}'" - eval "${multipath_cmd}" - sleep 2 - good_msg "Activating multipath devices ..." - multipath_cmd="run ${dmsetup_path} ls --target multipath --exec '${kpartx_path} -a -v' 2>&1" - is_log_enabled && multipath_cmd="${multipath_cmd} | tee -a '${GK_INIT_LOG}'" eval "${multipath_cmd}" + if [ $? -ne 0 ] + then + bad_msg "Scanning for multipath devices failed!" + else + udevsettle + fi fi fi diff --git a/gen_initramfs.sh b/gen_initramfs.sh index af0ff44..1b8c829 100755 --- a/gen_initramfs.sh +++ b/gen_initramfs.sh @@ -701,15 +701,40 @@ append_multipath() { mkdir -p "${TDIR}"/etc || gen_die "Failed to create '${TDIR}/etc'!" + mkdir -p "${TDIR}"/usr/lib/udev/rules.d || gen_die "Failed to create '${TDIR}/usr/lib/udev/rules.d'!" + local libdir=$(get_chost_libdir) + if [[ "${libdir}" =~ ^/usr ]] + then + libdir=${libdir/\/usr/} + fi copy_binaries \ - "${TDIR}"\ + "${TDIR}" \ /sbin/multipath \ /sbin/kpartx \ /sbin/mpathpersist \ - ${libdir}/multipath/lib*.so \ - /lib/udev/scsi_id + ${libdir}/multipath/lib*.so + + local udevdir=$(get_udevdir) + local udevdir_initramfs="/usr/lib/udev" + local udev_files=( $(qlist -e sys-fs/multipath-tools:0 \ + | xargs --no-run-if-empty realpath \ + | grep -E -- "^${udevdir}") + ) + + if [ ${#udev_files[@]} -eq 0 ] + then + gen_die "Something went wrong: Did not found any udev-related files for sys-fs/multipath-tools!" + fi + + local udev_files + for udev_file in "${udev_files[@]}" + do + local dest_file="${TDIR%/}${udev_file/${udevdir}/${udevdir_initramfs}}" +
[gentoo-commits] proj/genkernel:master commit in: defaults/, gkbuilds/
commit: f6f9384b423e9bb9b8cee294f4ddbeee7c518463 Author: Thomas Deutschmann gentoo org> AuthorDate: Thu Jul 23 20:36:13 2020 + Commit: Thomas Deutschmann gentoo org> CommitDate: Thu Jul 23 22:56:47 2020 + URL:https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=f6f9384b mdadm: Switch to UDEV usage Signed-off-by: Thomas Deutschmann gentoo.org> defaults/initrd.scripts | 38 -- defaults/linuxrc| 3 --- defaults/software.sh| 2 +- defaults/unlock-luks.sh | 1 - gkbuilds/mdadm.gkbuild | 3 +++ 5 files changed, 4 insertions(+), 43 deletions(-) diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts index 9b2b32c..5515f49 100644 --- a/defaults/initrd.scripts +++ b/defaults/initrd.scripts @@ -1525,24 +1525,6 @@ start_volumes() { run ln -sf /dev/device-mapper /dev/mapper/control fi - if [ "${USE_MDADM}" = '1' ] - then - if [ -x '/sbin/mdadm' ] - then - local mdadm_cmd="run /sbin/mdadm --assemble --scan 2>&1" - is_log_enabled && mdadm_cmd="${mdadm_cmd} | tee -a '${GK_INIT_LOG}'" - eval "${mdadm_cmd}" - - #Intel Matrix RAID (and possibly others) have a container layer above the actual volumes, - #So we have to look for volumes that haven't been activated. - mdadm_cmd="run /sbin/mdadm -IRs 2>&1" - is_log_enabled && mdadm_cmd="${mdadm_cmd} | tee -a '${GK_INIT_LOG}'" - eval "${mdadm_cmd}" - else - bad_msg "domdadm invoked but /sbin/mdadm not found; Skipping mdadm raid assembly ..." - fi - fi - if [ "${USE_MULTIPATH_NORMAL}" = '1' ] then for multipath_path in /sbin/multipath /bin/multipath MISSING @@ -1887,7 +1869,6 @@ openLUKS() { continue fi - setup_md_device ${LUKS_DEVICE} if ! run cryptsetup isLuks ${LUKS_DEVICE} then bad_msg "The LUKS device ${LUKS_DEVICE} does not contain a LUKS header" ${CRYPT_SILENT} @@ -2571,25 +2552,6 @@ setup_btrfsctl() { fi } -setup_md_device() { - local device - - [ -z "$1" ] && device="${REAL_ROOT}" || device="$1" - [ -z "${device}" ] && return # LiveCD - - if [ $(echo ${device}|sed -e 's#\(luks:\)\?\(/dev/md\)[[:digit:]]\+#\2#') = "/dev/md" ] - then - good_msg 'Detected real_root as a md device. Setting up the device node ...' - MD_NUMBER=$(echo ${device}|sed -e 's#\(luks:\)\?/dev/md\([[:digit:]]\+\)#\2#') - if [ ! -e /dev/md${MD_NUMBER} ] - then - run mknod /dev/md${MD_NUMBER} b 9 ${MD_NUMBER} >/dev/null 2>&1 - [ $? -ne 0 ] && bad_msg "Creation of /dev/md${MD_NUMBER} failed ..." - fi - run raidautorun /dev/md${MD_NUMBER} - fi -} - rundebugshell() { if is_debug then diff --git a/defaults/linuxrc b/defaults/linuxrc index 210085a..4c1b470 100644 --- a/defaults/linuxrc +++ b/defaults/linuxrc @@ -625,9 +625,6 @@ sdelay # Setup btrfs, see bug 303529 setup_btrfsctl -# Setup md device nodes if they dont exist -setup_md_device - # Scan volumes start_volumes diff --git a/defaults/software.sh b/defaults/software.sh index 463d8cf..3de9470 100644 --- a/defaults/software.sh +++ b/defaults/software.sh @@ -165,7 +165,7 @@ GKPKG_LZO_BINPKG="${GKPKG_LZO_BINPKG:-%%CACHE%%/lzo-${GKPKG_LZO_PV}-%%ARCH%%.tar GKPKG_MDADM_PN="mdadm" GKPKG_MDADM_PV="${GKPKG_MDADM_PV:-VERSION_MDADM}" -GKPKG_MDADM_DEPS="" +GKPKG_MDADM_DEPS="eudev" GKPKG_MDADM_SRCTAR="${GKPKG_MDADM_SRCTAR:-${DISTDIR}/mdadm-${GKPKG_MDADM_PV}.tar.xz}" GKPKG_MDADM_SRCDIR="${GKPKG_MDADM_SRCDIR:-mdadm-${GKPKG_MDADM_PV}}" GKPKG_MDADM_BINPKG="${GKPKG_MDADM_BINPKG:-%%CACHE%%/mdadm-${GKPKG_MDADM_PV}-%%ARCH%%.tar.xz}" diff --git a/defaults/unlock-luks.sh b/defaults/unlock-luks.sh index 87381ab..710d951 100644 --- a/defaults/unlock-luks.sh +++ b/defaults/unlock-luks.sh @@ -63,7 +63,6 @@ main() { exit 1 fi - setup_md_device "${LUKS_DEVICE}" if ! run cryptsetup isLuks "${LUKS_DEVICE}" then bad_msg "The LUKS device ${LUKS_DEVICE} does not contain a LUKS header" "${CRYPT_SILENT}" diff --git a/gkbuilds/mdadm.gkbuild b/gkbuilds/mdadm.gkbuild index 2307d0e..b43f753 100644 --- a/gkbuilds/mdadm.gkbuild +++ b/gkbuilds/mdadm.gkbuild @@ -10,6 +10,7 @@ src_prepare() { -e "/^CXFLAGS = /s:^CXFLAGS = \(.*\)$:CXFLAGS = ${CFLAGS} ${defs}:" \ -e "/^CWFLAGS = /s:^CWFLAGS = \(.*\)$:CWFLAGS
[gentoo-commits] proj/genkernel:master commit in: defaults/, gkbuilds/, /
commit: 8ef7e7ec94162d39dfdc71da20b9532db6cfab2b Author: Thomas Deutschmann gentoo org> AuthorDate: Sun Jul 14 10:43:27 2019 + Commit: Thomas Deutschmann gentoo org> CommitDate: Sun Jul 14 11:58:18 2019 + URL:https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=8ef7e7ec Add --strace support For debugging purpose. Signed-off-by: Thomas Deutschmann gentoo.org> defaults/software.sh| 7 +++ gen_cmdline.sh | 4 gen_determineargs.sh| 1 + gen_initramfs.sh| 21 + gkbuilds/strace.gkbuild | 25 + 5 files changed, 58 insertions(+) diff --git a/defaults/software.sh b/defaults/software.sh index 34b38dc..ec4dc78 100644 --- a/defaults/software.sh +++ b/defaults/software.sh @@ -142,6 +142,13 @@ GKPKG_POPT_SRCDIR="${GKPKG_POPT_SRCDIR:-popt-${GKPKG_POPT_PV}}" GKPKG_POPT_SRCTAR="${GKPKG_POPT_SRCTAR:-${DISTDIR}/popt-${GKPKG_POPT_PV}.tar.gz}" GKPKG_POPT_BINPKG="${GKPKG_POPT_BINPKG:-%%CACHE%%/popt-${GKPKG_POPT_PV}-%%ARCH%%.tar.xz}" +GKPKG_STRACE_PN="strace" +GKPKG_STRACE_PV="${GKPKG_STRACE_PV:-VERSION_STRACE}" +GKPKG_STRACE_DEPS="" +GKPKG_STRACE_SRCTAR="${GKPKG_STRACE_SRCTAR:-${DISTDIR}/strace-${GKPKG_STRACE_PV}.tar.xz}" +GKPKG_STRACE_SRCDIR="${GKPKG_STRACE_SRCDIR:-strace-${GKPKG_STRACE_PV}}" +GKPKG_STRACE_BINPKG="${GKPKG_STRACE_BINPKG:-%%CACHE%%/strace-${GKPKG_STRACE_PV}-%%ARCH%%.tar.xz}" + GKPKG_UNIONFS_FUSE_PN="unionfs-fuse" GKPKG_UNIONFS_FUSE_PV="${GKPKG_UNIONFS_FUSE_PV:-VERSION_UNIONFS_FUSE}" GKPKG_UNIONFS_FUSE_DEPS="fuse" diff --git a/gen_cmdline.sh b/gen_cmdline.sh index 2131f77..e740087 100755 --- a/gen_cmdline.sh +++ b/gen_cmdline.sh @@ -448,6 +448,10 @@ parse_cmdline() { fi print_info 2 "CMD_SSH_HOST_KEYS: ${CMD_SSH_HOST_KEYS}" ;; + --strace|--no-strace) + CMD_STRACE=$(parse_optbool "$*") + print_info 2 "CMD_STRACE: ${CMD_STRACE}" + ;; --loglevel=*) CMD_LOGLEVEL="${*#*=}" LOGLEVEL="${CMD_LOGLEVEL}" diff --git a/gen_determineargs.sh b/gen_determineargs.sh index 75b7b3b..b5052eb 100755 --- a/gen_determineargs.sh +++ b/gen_determineargs.sh @@ -146,6 +146,7 @@ determine_real_args() { set_config_with_override BOOL SSH CMD_SSH "no" set_config_with_override STRING SSH_AUTHORIZED_KEYS_FILE CMD_SSH_AUTHORIZED_KEYS_FILE "/etc/dropbear/authorized_keys" set_config_with_override STRING SSH_HOST_KEYS CMD_SSH_HOST_KEYS"create" + set_config_with_override BOOL STRACE CMD_STRACE "no" set_config_with_override BOOL LVM CMD_LVM "no" set_config_with_override BOOL DMRAID CMD_DMRAID "no" set_config_with_override BOOL ISCSICMD_ISCSI "no" diff --git a/gen_initramfs.sh b/gen_initramfs.sh index 45bf4fe..41f0269 100755 --- a/gen_initramfs.sh +++ b/gen_initramfs.sh @@ -828,6 +828,26 @@ append_splash() { || gen_die "Failed to append splash to cpio!" } +append_strace() { + local PN=strace + local TDIR="${TEMP}/initramfs-${PN}-temp" + if [ -d "${TDIR}" ] + then + rm -r "${TDIR}" || gen_die "Failed to clean out existing '${TDIR}'!" + fi + + populate_binpkg ${PN} + + mkdir -p "${TDIR}" || gen_die "Failed to create '${TDIR}'!" + + unpack "$(get_gkpkg_binpkg "${PN}")" "${TDIR}" + + cd "${TDIR}" || gen_die "Failed to chdir to '${TDIR}'!" + log_future_cpio_content + find . -print | cpio ${CPIO_ARGS} --append -F "${CPIO}" \ + || gen_die "Failed to append ${PN} to cpio!" +} + append_overlay() { cd "${INITRAMFS_OVERLAY}" || gen_die "Failed to chdir to '${INITRAMFS_OVERLAY}'!" @@ -1482,6 +1502,7 @@ create_initramfs() { append_data 'modprobed' append_data 'multipath' "${MULTIPATH}" append_data 'splash' "${SPLASH}" + append_data 'strace' "${STRACE}" append_data 'unionfs_fuse' "${UNIONFS}" append_data 'xfsprogs' "${XFSPROGS}" append_data 'zfs' "${ZFS}" diff --git a/gkbuilds/strace.gkbuild b/gkbuilds/strace.gkbuild new file mode 100644 index 000..540f6cb --- /dev/null +++ b/gkbuilds/strace.gkbuild @@ -0,0 +1,25 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +src_configure() { + append-ldflags -static -pthread + export ac_cv_header_libaio_h=yes + + local myconf=( + --enable-mpers=check + --without-libunwind + --without-libdw + ) + + gkconf "${myconf[@]}" +} + +src_install() { + mkdir -p "${D}"/usr/bin || die
[gentoo-commits] proj/genkernel:master commit in: /, defaults/, gkbuilds/, patches/multipath-tools/0.8.0/
commit: 7ce2716d901d834c375b5a24c928a7ce33ba0653 Author: Thomas Deutschmann gentoo org> AuthorDate: Sun Jul 14 09:49:51 2019 + Commit: Thomas Deutschmann gentoo org> CommitDate: Sun Jul 14 11:58:17 2019 + URL:https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=7ce2716d Rework --multipath support Signed-off-by: Thomas Deutschmann gentoo.org> defaults/initrd.scripts| 4 +- defaults/software.sh | 21 +++ gen_cmdline.sh | 12 -- gen_determineargs.sh | 5 + gen_initramfs.sh | 43 +++--- gkbuilds/eudev.gkbuild | 46 ++ gkbuilds/multipath-tools.gkbuild | 62 gkbuilds/userspace-rcu.gkbuild | 17 +++ .../multipath-tools-0.7.5-respect-flags.patch | 19 +++ .../multipath-tools-0.8.0-respect-sysroot.patch| 55 +++ .../0.8.0/multipath-tools-0.8.0-static-libs.patch | 159 + 11 files changed, 407 insertions(+), 36 deletions(-) diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts index be76a4d..fc9045d 100644 --- a/defaults/initrd.scripts +++ b/defaults/initrd.scripts @@ -1198,16 +1198,18 @@ start_volumes() { good_msg "Scanning for multipath devices" good_msg ":: Populating scsi_id info for libudev queries" mkdir -p /run/udev/data + + local ech for ech in /sys/block/* do local tgtfile=b$(cat ${ech}/dev) /lib/udev/scsi_id -g -x /dev/${ech##*/} |sed -e 's/^/E:/' >/run/udev/data/${tgtfile} done + ${multipath_path} -v 0 sleep 2 good_msg "Activating multipath devices" ${dmsetup_path} ls --target multipath --exec "${kpartx_path} -a -v" - #for MULTIPATH_VOLUMES in /dev/mapper/*; do ${kpartx_path} -a ${MULTIPATH_VOLUMES}; done fi fi diff --git a/defaults/software.sh b/defaults/software.sh index cecad69..acf5439 100644 --- a/defaults/software.sh +++ b/defaults/software.sh @@ -37,6 +37,13 @@ GKPKG_DROPBEAR_SRCTAR="${GKPKG_DROPBEAR_SRCTAR:-${DISTDIR}/dropbear-${GKPKG_DROP GKPKG_DROPBEAR_SRCDIR="${GKPKG_DROPBEAR_SRCDIR:-dropbear-${GKPKG_DROPBEAR_PV}}" GKPKG_DROPBEAR_BINPKG="${GKPKG_DROPBEAR_BINPKG:-%%CACHE%%/dropbear-${GKPKG_DROPBEAR_PV}-%%ARCH%%.tar.xz}" +GKPKG_EUDEV_PN="eudev" +GKPKG_EUDEV_PV="${GKPKG_EUDEV_PV:-VERSION_EUDEV}" +GKPKG_EUDEV_DEPS="" +GKPKG_EUDEV_SRCTAR="${GKPKG_EUDEV_SRCTAR:-${DISTDIR}/eudev-${GKPKG_EUDEV_PV}.tar.gz}" +GKPKG_EUDEV_SRCDIR="${GKPKG_EUDEV_SRCDIR:-eudev-${GKPKG_EUDEV_PV}}" +GKPKG_EUDEV_BINPKG="${GKPKG_EUDEV_BINPKG:-%%CACHE%%/eudev-${GKPKG_EUDEV_PV}-%%ARCH%%.tar.xz}" + GKPKG_E2FSPROGS_PN="e2fsprogs" GKPKG_E2FSPROGS_PV="${GKPKG_E2FSPROGS_PV:-VERSION_E2FSPROGS}" GKPKG_E2FSPROGS_DEPS="util-linux" @@ -107,6 +114,13 @@ GKPKG_MDADM_SRCDIR="${GKPKG_MDADM_SRCDIR:-mdadm-${GKPKG_MDADM_PV}}" GKPKG_MDADM_SRCTAR="${GKPKG_MDADM_SRCTAR:-${DISTDIR}/mdadm-${GKPKG_MDADM_PV}.tar.xz}" GKPKG_MDADM_BINPKG="${GKPKG_MDADM_BINPKG:-%%CACHE%%/mdadm-${GKPKG_MDADM_PV}-%%ARCH%%.tar.xz}" +GKPKG_MULTIPATH_TOOLS_PN="multipath-tools" +GKPKG_MULTIPATH_TOOLS_PV="${GKPKG_MULTIPATH_TOOLS_PV:-VERSION_MULTIPATH_TOOLS}" +GKPKG_MULTIPATH_TOOLS_DEPS="json-c libaio userspace-rcu eudev lvm" +GKPKG_MULTIPATH_TOOLS_SRCTAR="${GKPKG_MULTIPATH_TOOLS_SRCTAR:-${DISTDIR}/multipath-tools-${GKPKG_MULTIPATH_TOOLS_PV}.tar.gz}" +GKPKG_MULTIPATH_TOOLS_SRCDIR="${GKPKG_MULTIPATH_TOOLS_SRCDIR:-multipath-tools-${GKPKG_MULTIPATH_TOOLS_PV}-eb688e1}" +GKPKG_MULTIPATH_TOOLS_BINPKG="${GKPKG_MULTIPATH_TOOLS_BINPKG:-%%CACHE%%/multipath-tools-${GKPKG_MULTIPATH_TOOLS_PV}-%%ARCH%%.tar.xz}" + GKPKG_POPT_PN="popt" GKPKG_POPT_PV="${GKPKG_POPT_PV:-VERSION_POPT}" GKPKG_POPT_DEPS="" @@ -121,6 +135,13 @@ GKPKG_UNIONFS_FUSE_SRCDIR="${GKPKG_UNIONFS_FUSE_SRCDIR:-unionfs-fuse-${GKPKG_UNI GKPKG_UNIONFS_FUSE_SRCTAR="${GKPKG_UNIONFS_FUSE_SRCTAR:-${DISTDIR}/unionfs-fuse-${GKPKG_UNIONFS_FUSE_PV}.tar.gz}" GKPKG_UNIONFS_FUSE_BINPKG="${GKPKG_UNIONFS_FUSE_BINPKG:-%%CACHE%%/unionfs-fuse-${GKPKG_UNIONFS_FUSE_PV}-%%ARCH%%.tar.xz}" +GKPKG_USERSPACE_RCU_PN="userspace-rcu" +GKPKG_USERSPACE_RCU_PV="${GKPKG_USERSPACE_RCU_PV:-VERSION_USERSPACE_RCU}" +GKPKG_USERSPACE_RCU_DEPS="" +GKPKG_USERSPACE_RCU_SRCTAR="${GKPKG_USERSPACE_RCU_SRCTAR:-${DISTDIR}/userspace-rcu-${GKPKG_USERSPACE_RCU_PV}.tar.bz2}" +GKPKG_USERSPACE_RCU_SRCDIR="${GKPKG_USERSPACE_RCU_SRCDIR:-userspace-rcu-${GKPKG_USERSPACE_RCU_PV}}" +GKPKG_USERSPACE_RCU_BINPKG="${GKPKG_USERSPACE_RCU_BINPKG:-%%CACHE%%/userspace-rcu-${GKPKG_USERSPACE_RCU_PV}-%%ARCH%%.tar.xz}" + GKPKG_UTIL_LINUX_PN="util-linux"