diff --git a/Config.in.legacy b/Config.in.legacy index fb7b0aadd0c1..e4276d77ad50 100644 --- a/Config.in.legacy +++ b/Config.in.legacy @@ -2529,13 +2529,6 @@ config BR2_KERNEL_HEADERS_4_8 Version 4.8.x of the Linux kernel headers are no longer maintained upstream and are now removed. -config BR2_KERNEL_HEADERS_3_18 - bool "kernel headers version 3.18.x are no longer supported" - select BR2_LEGACY - help - Version 3.18.x of the Linux kernel headers are no longer - maintained upstream and are now removed. - config BR2_GLIBC_VERSION_2_22 bool "glibc 2.22 removed" select BR2_LEGACY diff --git a/configs/frags/arc.config b/configs/frags/arc.config new file mode 100644 index 000000000000..faf4db20df46 --- /dev/null +++ b/configs/frags/arc.config @@ -0,0 +1,8 @@ +BR2_arcle=y +BR2_archs38=y + +# Buildroot glibc toolchain +BR2_TOOLCHAIN_BUILDROOT=y +BR2_TOOLCHAIN_USES_GLIBC=y +BR2_TOOLCHAIN_BUILDROOT_VENDOR="buildroot" +BR2_TOOLCHAIN_BUILDROOT_GLIBC=y diff --git a/configs/frags/arm.config b/configs/frags/arm.config new file mode 100644 index 000000000000..d3d5ddbfb6b2 --- /dev/null +++ b/configs/frags/arm.config @@ -0,0 +1,19 @@ +# EABI, soft-float +BR2_arm920t=y +BR2_ARM_EABI=y +BR2_ARM_SOFT_FLOAT=y +#BR2_ARM_EABIHF=y +#BR2_ARM_FPU_VFPV2=y + +# Buildroot glibc toolchain +BR2_TOOLCHAIN_BUILDROOT=y +BR2_TOOLCHAIN_USES_GLIBC=y +BR2_TOOLCHAIN_BUILDROOT_VENDOR="buildroot" +BR2_TOOLCHAIN_BUILDROOT_GLIBC=y + +# EABI, hard float, Linaro toolchain (requires >= Cortex-A) +#BR2_cortex_a5=y +#BR2_ARM_EABIHF=y +#BR2_ARM_FPU_VFPV3=y +#BR2_TOOLCHAIN_EXTERNAL=y +#BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM=y diff --git a/configs/frags/arm64.config b/configs/frags/arm64.config new file mode 100644 index 000000000000..1c7714729f79 --- /dev/null +++ b/configs/frags/arm64.config @@ -0,0 +1 @@ +BR2_aarch64=y diff --git a/configs/frags/arm64be.config b/configs/frags/arm64be.config new file mode 100644 index 000000000000..36449285aeeb --- /dev/null +++ b/configs/frags/arm64be.config @@ -0,0 +1 @@ +BR2_aarch64_be=y diff --git a/configs/frags/armeb.config b/configs/frags/armeb.config new file mode 100644 index 000000000000..b262db921aee --- /dev/null +++ b/configs/frags/armeb.config @@ -0,0 +1,10 @@ +BR2_armeb=y + +# NOTE: big-endian is different between ARMv4/v5 and ARMv7 +# this only works for ARMv7 +BR2_cortex_a5=y +BR2_ARM_ENABLE_VFP=y +BR2_ARM_EABIHF=y +BR2_ARM_FPU_VFPV2=y +BR2_TOOLCHAIN_EXTERNAL=y +BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB=y diff --git a/configs/frags/armel.config b/configs/frags/armel.config new file mode 100644 index 000000000000..5d689c0b43de --- /dev/null +++ b/configs/frags/armel.config @@ -0,0 +1 @@ +BR2_arm=y diff --git a/configs/frags/base.config b/configs/frags/base.config new file mode 100644 index 000000000000..bfa4240b6967 --- /dev/null +++ b/configs/frags/base.config @@ -0,0 +1,47 @@ +# auto-select j-level based on host CPUs +BR2_JLEVEL=0 + +# enable overlay support (used for custom init scripts) +BR2_ROOTFS_OVERLAY="overlay" + +# need cpio for initramfs +BR2_TARGET_ROOTFS_CPIO=y +BR2_TARGET_ROOTFS_CPIO_GZIP=y +# compress the tar image +BR2_TARGET_ROOTFS_TAR_XZ=y +# selinux enabled kernels can't use CPIO (no extended attributes, nead "real" filesystem) +BR2_TARGET_ROOTFS_EXT2=y +# ...compressed +BR2_TARGET_ROOTFS_EXT2_XZ=y + +# don't run a getty; etc/inittab configured for auto-root login +BR2_TARGET_GENERIC_GETTY=n + +# ssh needed for ARM workload-automation +BR2_PACKAGE_DROPBEAR=y + +# Testing utils +BR2_PACKAGE_STRESS=y +BR2_PACKAGE_TRACE_CMD=y + +# add eudev for automatic module loading support +BR2_INIT_BUSYBOX=y +BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y + +# misc. tools +BR2_PACKAGE_PCIUTILS=y + +# ensure older kernel support (v3.2 is oldest as of 2016.05) +# NOTE: arm64 only exists as of v3.10 +BR2_KERNEL_HEADERS_3_18=y + +# purge locales to reduce rootfs size +BR2_ENABLE_LOCALE_PURGE=y +BR2_ENABLE_LOCALE_WHITELIST="C en_US" + +# fs utils +BR2_PACKAGE_E2FSPROGS=y + +# udev needed for generating /dev/disk/by-uuid +BR2_TOOLCHAIN_BUILDROOT_WCHAR=y +BR2_PACKAGE_EUDEV=y diff --git a/configs/frags/baseline.config b/configs/frags/baseline.config new file mode 100644 index 000000000000..182e489722cd --- /dev/null +++ b/configs/frags/baseline.config @@ -0,0 +1,5 @@ +BR2_PACKAGE_BOOTRR=y +BR2_PACKAGE_TPM2_TOOLS=y +BR2_PACKAGE_UTIL_LINUX_DMESG=y +BR2_PACKAGE_BUSYBOX_CONFIG_FRAGMENT_FILES="package/busybox/busybox-no-dmesg.config" +BR2_ROOTFS_OVERLAY="overlay kernelci/baseline/rootfs_overlay/" diff --git a/configs/frags/build b/configs/frags/build new file mode 100755 index 000000000000..f679f89d89fd --- /dev/null +++ b/configs/frags/build @@ -0,0 +1,45 @@ +#!/bin/bash +D=$(dirname $0) + +rm .config +make defconfig + +FRAGMENTS=() +if [[ $1 =~ ^arm.* ]]; then + FRAGMENTS+=("arm") +fi + +FRAGMENTS+=("base") +FRAGMENTS+=("$*") # ensure passed-in frags override base + +echo ${FRAGMENTS[@]} +for frag in ${FRAGMENTS[@]}; do + if [ -e $D/$frag.config ]; then + echo "INFO: Including fragment: $frag" + cat $D/$frag.config >> .config + else + echo "WARNING: $D/$frag.config doesn't exist. Giving up." + exit 1 + fi +done + +# reconfigure with new fragments appended +make olddefconfig + +make + +RESULT=$? +if [ $RESULT != 0 ]; then + exit $RESULT +fi + +# remove uncompressed versions of rootfs +(cd output/images; rm -f rootfs.cpio rootfs.tar rootfs.ext2) + +if [ $? = 0 ]; then + echo "Packaging up output/host directory" + tar -C output/host -Jcf output/images/host.tar.xz . + (cd output/images; md5sum host.tar.xz > host.tar.xz.md5) +fi + +cp .config output/images/config diff --git a/configs/frags/debug.config b/configs/frags/debug.config new file mode 100644 index 000000000000..87f6aa85c0ca --- /dev/null +++ b/configs/frags/debug.config @@ -0,0 +1 @@ +#BR2_PACKAGE_FILE=y diff --git a/configs/frags/flash.config b/configs/frags/flash.config new file mode 100644 index 000000000000..4f0a664a9cbd --- /dev/null +++ b/configs/frags/flash.config @@ -0,0 +1,5 @@ +BR2_PACKAGE_MTD=y +BR2_PACKAGE_MTD_MKFSUBIFS=y + +# create UBI rootfs +BR2_TARGET_ROOTFS_UBIFS=y diff --git a/configs/frags/mipsel.config b/configs/frags/mipsel.config new file mode 100644 index 000000000000..b4e1934e6009 --- /dev/null +++ b/configs/frags/mipsel.config @@ -0,0 +1 @@ +BR2_mipsel=y diff --git a/configs/frags/riscv.config b/configs/frags/riscv.config new file mode 100644 index 000000000000..54fa6e4ab70f --- /dev/null +++ b/configs/frags/riscv.config @@ -0,0 +1,5 @@ +BR2_riscv=y +BR2_riscv_g=y + +# RISC-V needs recent kernel headers +BR2_KERNEL_HEADERS_4_19=y diff --git a/configs/frags/tests.config b/configs/frags/tests.config new file mode 100644 index 000000000000..c2b2a7537be9 --- /dev/null +++ b/configs/frags/tests.config @@ -0,0 +1,12 @@ +# ext2 might grow bigger than default (60M) +BR2_TARGET_ROOTFS_EXT2_SIZE="200M" + +# Testing utils +BR2_PACKAGE_LTP_TESTSUITE=y +BR2_PACKAGE_LMBENCH=y + +# Testing utils rt-tests to enable cyclictest and hackbench +BR2_PACKAGE_RT_TESTS=y + +# needed for in-kernel kselftests (compile-time and runtime) +BR2_PACKAGE_POPT=y diff --git a/configs/frags/x86.config b/configs/frags/x86.config new file mode 100644 index 000000000000..c4a962df3276 --- /dev/null +++ b/configs/frags/x86.config @@ -0,0 +1,2 @@ +BR2_TOOLCHAIN_BUILDROOT=y +BR2_TOOLCHAIN_BUILDROOT_GLIBC=y diff --git a/kernelci/baseline/rootfs_overlay/opt/kernelci/dmesg.sh b/kernelci/baseline/rootfs_overlay/opt/kernelci/dmesg.sh new file mode 100755 index 000000000000..3b096e107dae --- /dev/null +++ b/kernelci/baseline/rootfs_overlay/opt/kernelci/dmesg.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +set -e + +if [ "$KERNELCI_LAVA" = "y" ]; then + alias test-result='lava-test-case' +else + alias test-result='echo' +fi + +for level in crit alert emerg; do + dmesg --level=$level --notime -x -k > dmesg.$level + test -s dmesg.$level && res=fail || res=pass + count=$(cat dmesg.$level | wc -l) + cat dmesg.$level + test-result \ + $level \ + --result $res \ + --measurement $count \ + --units lines +done + +exit 0 diff --git a/linux/linux.hash b/linux/linux.hash index 629c355ad7ea..2ca84f89ad09 100644 --- a/linux/linux.hash +++ b/linux/linux.hash @@ -7,6 +7,7 @@ sha256 49474956a6149c16cbcba862d1f4db54835a32d336063c75094f669f1c34c65e linux- sha256 e547748c548b0f55f665bc78cfec322e7b96f41527b5e4b5d79430fdaa57c3e8 linux-4.9.225.tar.xz sha256 671d1f1d5ad0ae74fb21ee70a5544400e7d6270098d3f8b134484ded2c3e5b90 linux-4.14.182.tar.xz sha256 9843f40efb37491770688810d153d0779daed8eb097773a0de5abf2cb0d1bd7e linux-4.19.125.tar.xz +sha256 3ec7f47365a8a050e629a5016e90e38a800e840c844901c979e9e796f8dc6711 linux-3.18.133.tar.xz # Locally computed sha256 ea53913813cb5a9069608532b327de7a7ed0fdc8fed8c6f10cd55d1ac6a58ffb linux-cip-4.19.118-cip25.tar.gz sha256 7f0a0db0e1cfb14053523f4432f1ad1468b5bd42305b44905c4b103466c8d655 linux-cip-4.19.115-cip24-rt9.tar.gz diff --git a/overlay/etc/default/dropbear b/overlay/etc/default/dropbear new file mode 100644 index 000000000000..5c388395ec85 --- /dev/null +++ b/overlay/etc/default/dropbear @@ -0,0 +1 @@ +DROPBEAR_ARGS=-B diff --git a/overlay/etc/init.d/S50debugfs b/overlay/etc/init.d/S50debugfs new file mode 100755 index 000000000000..320d764beb44 --- /dev/null +++ b/overlay/etc/init.d/S50debugfs @@ -0,0 +1,8 @@ +#!/bin/sh + +case $1 in + start|"") + mount -t debugfs none /sys/kernel/debug + ln -s /sys/kernel/debug /debug + ;; +esac diff --git a/overlay/etc/init.d/S50pnp_networking b/overlay/etc/init.d/S50pnp_networking new file mode 100755 index 000000000000..12439145ed55 --- /dev/null +++ b/overlay/etc/init.d/S50pnp_networking @@ -0,0 +1,9 @@ +#!/bin/sh + +case $1 in + start|"") + if [ -e /proc/net/pnp ]; then + cat /proc/net/pnp >> /etc/resolv.conf + fi + ;; +esac diff --git a/package/Config.in b/package/Config.in index 85d73263614f..9d09f0fd0b5c 100644 --- a/package/Config.in +++ b/package/Config.in @@ -86,6 +86,7 @@ endmenu menu "Debugging, profiling and benchmark" source "package/blktrace/Config.in" source "package/bonnie/Config.in" + source "package/bootrr/Config.in" source "package/cache-calibrator/Config.in" source "package/clinfo/Config.in" source "package/dacapo/Config.in" @@ -2399,6 +2400,7 @@ menu "System tools" source "package/tpm2-totp/Config.in" source "package/unscd/Config.in" source "package/util-linux/Config.in" + source "package/util-linux-dmesg/Config.in" source "package/xdg-dbus-proxy/Config.in" source "package/xen/Config.in" source "package/xvisor/Config.in" diff --git a/package/bootrr/Config.in b/package/bootrr/Config.in new file mode 100644 index 000000000000..6baca4411865 --- /dev/null +++ b/package/bootrr/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_BOOTRR + bool "bootrr" + depends on BR2_PACKAGE_TPM2_TOOLS + help + The bootrr test scripts. diff --git a/package/bootrr/bootrr.hash b/package/bootrr/bootrr.hash new file mode 100644 index 000000000000..1800b6d2997f --- /dev/null +++ b/package/bootrr/bootrr.hash @@ -0,0 +1,2 @@ +# Locally calculated +sha256 03336f34a6434da109ec1cd438b3752b78009a2969c3b04c2c5f152351c1ef76 bootrr-f00862c8406f81ef62449b5c0267e010e3be3d3f.tar.gz diff --git a/package/bootrr/bootrr.mk b/package/bootrr/bootrr.mk new file mode 100644 index 000000000000..d4e8ad944773 --- /dev/null +++ b/package/bootrr/bootrr.mk @@ -0,0 +1,16 @@ +################################################################################ +# +# bootrr +# +################################################################################ + +BOOTRR_SITE = https://github.com/kernelci/bootrr.git +BOOTRR_VERSION = f00862c8406f81ef62449b5c0267e010e3be3d3f +BOOTRR_SITE_METHOD = git +BOOTRR_LICENSE = LGPL-2.1+ + +define BOOTRR_INSTALL_TARGET_CMDS + DESTDIR=$(TARGET_DIR)/opt/bootrr $(MAKE) -C $(@D) install +endef + +$(eval $(generic-package)) diff --git a/package/busybox/busybox-no-dmesg.config b/package/busybox/busybox-no-dmesg.config new file mode 100644 index 000000000000..a3d060e65525 --- /dev/null +++ b/package/busybox/busybox-no-dmesg.config @@ -0,0 +1 @@ +# CONFIG_DMESG is not set diff --git a/package/busybox/busybox.config b/package/busybox/busybox.config index 1ea810e5bef1..429e2c7ee01e 100644 --- a/package/busybox/busybox.config +++ b/package/busybox/busybox.config @@ -131,7 +131,7 @@ CONFIG_FEATURE_HWIB=y # CONFIG_FEATURE_SEAMLESS_XZ is not set # CONFIG_FEATURE_SEAMLESS_LZMA is not set # CONFIG_FEATURE_SEAMLESS_BZ2 is not set -# CONFIG_FEATURE_SEAMLESS_GZ is not set +CONFIG_FEATURE_SEAMLESS_GZ=y # CONFIG_FEATURE_SEAMLESS_Z is not set CONFIG_AR=y # CONFIG_FEATURE_AR_LONG_FILENAMES is not set @@ -606,6 +606,11 @@ CONFIG_FREERAMDISK=y # CONFIG_FSCK_MINIX is not set CONFIG_FSFREEZE=y CONFIG_FSTRIM=y +CONFIG_MKFS_EXT2=y +# CONFIG_MKFS_MINIX is not set +# CONFIG_FEATURE_MINIX2 is not set +# CONFIG_MKFS_REISER is not set +CONFIG_MKFS_VFAT=y CONFIG_GETOPT=y CONFIG_FEATURE_GETOPT_LONG=y CONFIG_HEXDUMP=y @@ -659,7 +664,7 @@ CONFIG_RDATE=y CONFIG_READPROFILE=y CONFIG_RENICE=y # CONFIG_REV is not set -# CONFIG_RTCWAKE is not set +CONFIG_RTCWAKE=y # CONFIG_SCRIPT is not set # CONFIG_SCRIPTREPLAY is not set CONFIG_SETARCH=y @@ -788,8 +793,8 @@ CONFIG_FEATURE_MAKEDEVS_TABLE=y # CONFIG_MAN is not set CONFIG_MICROCOM=y CONFIG_MT=y -# CONFIG_NANDWRITE is not set -# CONFIG_NANDDUMP is not set +CONFIG_NANDWRITE=y +CONFIG_NANDDUMP=y CONFIG_PARTPROBE=y # CONFIG_RAIDAUTORUN is not set # CONFIG_READAHEAD is not set @@ -1008,7 +1013,7 @@ CONFIG_PIDOF=y CONFIG_FEATURE_PIDOF_SINGLE=y CONFIG_FEATURE_PIDOF_OMIT=y # CONFIG_PMAP is not set -# CONFIG_POWERTOP is not set +CONFIG_POWERTOP=y # CONFIG_FEATURE_POWERTOP_INTERACTIVE is not set CONFIG_PS=y # CONFIG_FEATURE_PS_WIDE is not set @@ -1087,7 +1092,7 @@ CONFIG_ASH_TEST=y CONFIG_ASH_HELP=y CONFIG_ASH_GETOPTS=y CONFIG_ASH_CMDCMD=y -# CONFIG_CTTYHACK is not set +CONFIG_CTTYHACK=y # CONFIG_HUSH is not set # CONFIG_HUSH_BASH_COMPAT is not set # CONFIG_HUSH_BRACE_EXPANSION is not set @@ -1127,6 +1132,7 @@ CONFIG_ASH_CMDCMD=y # CONFIG_FEATURE_SH_MATH=y CONFIG_FEATURE_SH_MATH_64=y +CONFIG_FEATURE_BASH_IS_ASH=y CONFIG_FEATURE_SH_EXTRA_QUIET=y # CONFIG_FEATURE_SH_STANDALONE is not set # CONFIG_FEATURE_SH_NOFORK is not set diff --git a/package/busybox/inittab b/package/busybox/inittab index ff1725c775a1..fc4dfd67ce9d 100644 --- a/package/busybox/inittab +++ b/package/busybox/inittab @@ -27,6 +27,8 @@ null::sysinit:/bin/ln -sf /proc/self/fd/2 /dev/stderr # now run any rc scripts ::sysinit:/etc/init.d/rcS +console::respawn:/bin/cttyhack /bin/sh + # Put a getty on the serial port #ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100 # GENERIC_SERIAL diff --git a/package/linux-headers/Config.in.host b/package/linux-headers/Config.in.host index 53ea3984eb86..20ac6c2eead5 100644 --- a/package/linux-headers/Config.in.host +++ b/package/linux-headers/Config.in.host @@ -27,6 +27,10 @@ config BR2_KERNEL_HEADERS_AS_KERNEL depends on BR2_LINUX_KERNEL select BR2_KERNEL_HEADERS_LATEST if BR2_LINUX_KERNEL_LATEST_VERSION +config BR2_KERNEL_HEADERS_3_18 + bool "Linux 3.18.x kernel headers" + select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18 + config BR2_KERNEL_HEADERS_4_4 bool "Linux 4.4.x kernel headers" depends on !BR2_riscv @@ -334,6 +338,7 @@ endchoice config BR2_DEFAULT_KERNEL_HEADERS string + default "3.18.133" if BR2_KERNEL_HEADERS_3_18 default "4.4.225" if BR2_KERNEL_HEADERS_4_4 default "4.9.225" if BR2_KERNEL_HEADERS_4_9 default "4.14.182" if BR2_KERNEL_HEADERS_4_14 diff --git a/package/util-linux-dmesg/Config.in b/package/util-linux-dmesg/Config.in new file mode 100644 index 000000000000..59c05b9a5827 --- /dev/null +++ b/package/util-linux-dmesg/Config.in @@ -0,0 +1,5 @@ +config BR2_PACKAGE_UTIL_LINUX_DMESG + bool "util-linux-dmesg" + depends on !BR2_PACKAGE_UTIL_LINUX_BINARIES + help + The dmesg utility from util-linux. diff --git a/package/util-linux-dmesg/util-linux-dmesg.hash b/package/util-linux-dmesg/util-linux-dmesg.hash new file mode 100644 index 000000000000..ed503a12ed6b --- /dev/null +++ b/package/util-linux-dmesg/util-linux-dmesg.hash @@ -0,0 +1,9 @@ +# From https://www.kernel.org/pub/linux/utils/util-linux/v2.33/sha256sums.asc +sha256 f261b9d73c35bfeeea04d26941ac47ee1df937bd3b0583e748217c1ea423658a util-linux-2.33.tar.xz +# License files, locally calculated +sha256 4335620e8f478ee4dc4d26540448d39469091ef1d8e3fbbbb8bf753206ceac74 README.licensing +sha256 9b718a9460fed5952466421235bc79eb49d4e9eacc920d7a9dd6285ab8fd6c6d Documentation/licenses/COPYING.BSD-3-Clause +sha256 ba7640f00d93e72e92b94b9d71f25ec53bac2f1682f5c4adcccb0018359f60f8 Documentation/licenses/COPYING.BSD-4-Clause-UC +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 Documentation/licenses/COPYING.GPL-2.0-or-later +sha256 e53348ce276358e9997014071c5294b36a18c4b34f32f00ee57b9acce0aafd63 Documentation/licenses/COPYING.ISC +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 Documentation/licenses/COPYING.LGPL-2.1-or-later diff --git a/package/util-linux-dmesg/util-linux-dmesg.mk b/package/util-linux-dmesg/util-linux-dmesg.mk new file mode 100644 index 000000000000..53c0cb3d3e6d --- /dev/null +++ b/package/util-linux-dmesg/util-linux-dmesg.mk @@ -0,0 +1,42 @@ +################################################################################ +# +# util-linux +# +################################################################################ + +UTIL_LINUX_DMESG_VERSION_MAJOR = 2.33 +UTIL_LINUX_DMESG_VERSION = $(UTIL_LINUX_DMESG_VERSION_MAJOR) +UTIL_LINUX_DMESG_SOURCE = util-linux-$(UTIL_LINUX_DMESG_VERSION).tar.xz +UTIL_LINUX_DMESG_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/util-linux/v$(UTIL_LINUX_DMESG_VERSION_MAJOR) + +UTIL_LINUX_DMESG_CONF_OPTS += \ + --without-systemd \ + --disable-rpath \ + --disable-makeinstall-chown \ + +ifeq ($(BR2_PACKAGE_READLINE),y) +UTIL_LINUX_DMESG_CONF_OPTS += --with-readline +UTIL_LINUX_DMESG_LIBS += $(if $(BR2_STATIC_LIBS),-lcurses) +UTIL_LINUX_DMESG_DEPENDENCIES += readline +else +UTIL_LINUX_DMESG_CONF_OPTS += --without-readline +endif + +define UTIL_LINUX_DMESG_BUILD_CMDS + cd $(@D); \ + ./autogen.sh; \ + $(TARGET_CONFIGURE_OPTS) \ + $(TARGET_CONFIGURE_ARGS) \ + $(UTIL_LINUX_DMESG_CONF_ENV) \ + ./configure \ + --target=$(GNU_TARGET_NAME) \ + --host=$(GNU_TARGET_NAME) \ + --build=$(GNU_HOST_NAME); \ + $(TARGET_MAKE_ENV) $(MAKE) dmesg +endef + +define UTIL_LINUX_DMESG_INSTALL_TARGET_CMDS + install -m0755 $(@D)/dmesg $(TARGET_DIR)/bin/dmesg +endef + +$(eval $(generic-package)) diff --git a/package/util-linux/Config.in b/package/util-linux/Config.in index aa3c1a5f76b4..57aa2e8093c4 100644 --- a/package/util-linux/Config.in +++ b/package/util-linux/Config.in @@ -44,6 +44,7 @@ config BR2_PACKAGE_UTIL_LINUX_LIBUUID config BR2_PACKAGE_UTIL_LINUX_BINARIES bool "basic set" depends on BR2_USE_MMU # fork() + depends on !BR2_PACKAGE_UTIL_LINUX_DMESG select BR2_PACKAGE_UTIL_LINUX_LIBBLKID select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT select BR2_PACKAGE_UTIL_LINUX_LIBFDISK