meta-digi/meta-digi-dey/recipes-core/busybox/busybox_1.36.%.bbappend

104 lines
4.0 KiB
Plaintext

# Copyright (C) 2013-2024, Digi International Inc.
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
SRC_URI += "file://standby \
file://standby-actions \
file://standby-systemd \
file://busybox-ntpd \
file://busybox-httpd.service.in \
file://nm \
file://busybox-acpid \
file://acpid.map \
file://pswitch-standby \
file://pswitch-poweroff \
file://bridgeifupdown \
${@bb.utils.contains("MACHINE_FEATURES", "mca", "file://poweroff_safe \
file://reboot_safe \
", "", d)} \
file://0001-hwclock-add-get-set-parameters-option.patch \
"
HAS_SYSTEMD = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}"
HAS_MCA = "${@bb.utils.contains('MACHINE_FEATURES', 'mca', 'true', 'false', d)}"
# hwclock bootscript init parameters
INITSCRIPT_PARAMS:${PN}-hwclock = "start 20 S . stop 20 0 6 ."
FILES:${PN}:append = " ${systemd_unitdir}/system-sleep/"
# HTTPD package
FILES:${PN}-httpd:append = " ${systemd_unitdir}/system/busybox-httpd.service"
SYSTEMD_PACKAGES += "${PN}-httpd"
SYSTEMD_SERVICE:${PN}-httpd = "busybox-httpd.service"
# NTPD package
PACKAGES =+ "${PN}-ntpd"
FILES:${PN}-ntpd = "${sysconfdir}/init.d/busybox-ntpd"
INITSCRIPT_PACKAGES =+ "${PN}-ntpd"
INITSCRIPT_NAME:${PN}-ntpd = "busybox-ntpd"
# ACPID package
PACKAGES =+ "${PN}-acpid"
FILES:${PN}-acpid = " ${sysconfdir}/init.d/busybox-acpid \
${sysconfdir}/acpi/acpid.map \
${sysconfdir}/acpi/pswitch-standby \
${sysconfdir}/acpi/pswitch-poweroff \
"
INITSCRIPT_PACKAGES =+ "${PN}-acpid"
INITSCRIPT_NAME:${PN}-acpid = "busybox-acpid"
# Start busybox-syslog at a very early state
INITSCRIPT_PARAMS:${PN}-syslog = "defaults 02"
do_install:append() {
if grep "CONFIG_NTPD=y" ${WORKDIR}/defconfig; then
install -m 0755 ${WORKDIR}/busybox-ntpd ${D}${sysconfdir}/init.d/
fi
if grep "CONFIG_HTTPD=y" ${WORKDIR}/defconfig; then
install -d ${D}/srv/www/cgi-bin
install -m 0755 ${WORKDIR}/nm ${D}/srv/www/cgi-bin/
if ${HAS_SYSTEMD}; then
install -d ${D}${systemd_unitdir}/system
sed 's,@sbindir@,${sbindir},g' < ${WORKDIR}/busybox-httpd.service.in \
> ${D}${systemd_unitdir}/system/busybox-httpd.service
fi
fi
# Install one standby script or another depending on having systemd or not
if ${HAS_SYSTEMD}; then
# Install systemd version of 'standby' script
install -m 0755 ${WORKDIR}/standby-systemd ${D}${base_bindir}/standby
# Install systemd 'standby-actions' hook
install -d ${D}${systemd_unitdir}/system-sleep/
install -m 0755 ${WORKDIR}/standby-actions ${D}${systemd_unitdir}/system-sleep/
else
# Install 'standby' script
install -m 0755 ${WORKDIR}/standby ${D}${base_bindir}
fi
# Create a symlink called suspend to maintain backward compatibility
ln -s standby ${D}${base_bindir}/suspend
if grep "CONFIG_ACPID=y" ${WORKDIR}/defconfig; then
install -m 0755 ${WORKDIR}/busybox-acpid ${D}${sysconfdir}/init.d/
install -d ${D}${sysconfdir}/acpi/
install -m 0755 ${WORKDIR}/acpid.map ${D}${sysconfdir}/acpi/
install -m 0755 ${WORKDIR}/pswitch-standby ${D}${sysconfdir}/acpi/
install -m 0755 ${WORKDIR}/pswitch-poweroff ${D}${sysconfdir}/acpi/
fi
# Install bridgeifupdown script
if grep "CONFIG_BRCTL" ${WORKDIR}/defconfig; then
install -d ${D}${sysconfdir}/network/if-pre-up.d/
install -d ${D}${sysconfdir}/network/if-post-down.d/
install -m 0755 ${WORKDIR}/bridgeifupdown ${D}${sysconfdir}/network/if-pre-up.d/
ln -s ../if-pre-up.d/bridgeifupdown ${D}${sysconfdir}/network/if-post-down.d/bridgeifupdown
fi
# install MCA power safe and reboot safe scripts
if ${HAS_MCA}; then
install -m 0755 ${WORKDIR}/poweroff_safe ${D}${base_bindir}/poweroff_safe
install -m 0755 ${WORKDIR}/reboot_safe ${D}${base_bindir}/reboot_safe
fi
}
PACKAGE_ARCH = "${MACHINE_ARCH}"