blob: 8573e6405540da796bf1c435b0644de136fe845a [file] [log] [blame]
################################################################################
#
# dracut
#
################################################################################
DRACUT_VERSION = 059
DRACUT_SITE = $(call github,dracutdevs,dracut,$(DRACUT_VERSION))
DRACUT_LICENSE = GPL-2.0
DRACUT_LICENSE_FILES = COPYING
DRACUT_CPE_ID_VALID = YES
HOST_DRACUT_DEPENDENCIES = host-pkgconf host-kmod host-prelink-cross
define HOST_DRACUT_POST_INSTALL_WRAPPER_SCRIPT
mv $(HOST_DIR)/bin/dracut $(HOST_DIR)/bin/dracut.real
install -D -m 0755 $(HOST_DRACUT_PKGDIR)/dracut_wrapper \
$(HOST_DIR)/bin/dracut
endef
HOST_DRACUT_POST_INSTALL_HOOKS += HOST_DRACUT_POST_INSTALL_WRAPPER_SCRIPT
# When using uClibc or musl, there must be "ld-uClibc.so.1" or
# "ld-musl-x.so" symlinks, respectively - else the init process cannot
# start
define HOST_DRACUT_POST_INSTALL_LIBC_LINKS_MODULE
$(INSTALL) -D -m 0755 package/dracut/merged-usr-module-setup.sh \
$(HOST_DIR)/lib/dracut/modules.d/0000-merged-usr/module-setup.sh
$(INSTALL) -D -m 0755 package/dracut/libc-links-module-setup.sh \
$(HOST_DIR)/lib/dracut/modules.d/05libc-links/module-setup.sh
endef
HOST_DRACUT_POST_INSTALL_HOOKS += HOST_DRACUT_POST_INSTALL_LIBC_LINKS_MODULE
ifeq ($(BR2_INIT_BUSYBOX),y)
# Dracut does not support busybox init (systemd init is assumed to work
# out of the box, though). It provides a busybox module, that does not
# use the same paths as buildroot, and is not meant to be used as an init
# system.
# So it is simpler for users to disable the standard 'busybox' module in
# the configuration file, and enable the "busybox-init' module instead.
# Note that setting the script as executable (0755) is not mandatory,
# but this is what dracut does on all its modules, so lets just conform
# to it.
define HOST_DRACUT_POST_INSTALL_BUSYBOX_INIT_MODULE
$(INSTALL) -D -m 0755 package/dracut/busybox-init-module-setup.sh \
$(HOST_DIR)/lib/dracut/modules.d/05busybox-init/module-setup.sh
endef
HOST_DRACUT_POST_INSTALL_HOOKS += HOST_DRACUT_POST_INSTALL_BUSYBOX_INIT_MODULE
endif
$(eval $(host-autotools-package))