Browse Source

- target-tools: re-sort targets

master
vanhofen 4 years ago
parent
commit
408c9d4347
  1. 865
      make/target-tools.mk

865
make/target-tools.mk

@ -3,6 +3,11 @@
#
# -----------------------------------------------------------------------------
#
# $(base_prefix) tools
#
# -----------------------------------------------------------------------------
BUSYBOX_VER = 1.31.1
BUSYBOX_DIR = busybox-$(BUSYBOX_VER)
BUSYBOX_SOURCE = busybox-$(BUSYBOX_VER).tar.bz2
@ -73,58 +78,437 @@ ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd5x hd6x vusolo4k vuduo4k vuduo4
ifeq ($(BOXSERIES), $(filter $(BOXSERIES), vusolo4k vuduo4k vuduo4kse vuultimo4k vuzero4k vuuno4k vuuno4kse vuduo))
define BUSYBOX_SET_START_STOP_DAEMON
$(call KCONFIG_ENABLE_OPT,CONFIG_START_STOP_DAEMON,$(BUSYBOX_BUILD_CONFIG))
$(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS,$(BUSYBOX_BUILD_CONFIG))
$(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_START_STOP_DAEMON_FANCY,$(BUSYBOX_BUILD_CONFIG))
endef
define BUSYBOX_SET_START_STOP_DAEMON
$(call KCONFIG_ENABLE_OPT,CONFIG_START_STOP_DAEMON,$(BUSYBOX_BUILD_CONFIG))
$(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS,$(BUSYBOX_BUILD_CONFIG))
$(call KCONFIG_ENABLE_OPT,CONFIG_FEATURE_START_STOP_DAEMON_FANCY,$(BUSYBOX_BUILD_CONFIG))
endef
endif
endif
endif
define BUSYBOX_MODIFY_CONFIG
$(BUSYBOX_SET_BLKDISCARD)
$(BUSYBOX_SET_IPV6)
$(BUSYBOX_SET_SWAP)
$(BUSYBOX_SET_HEXDUMP)
$(BUSYBOX_SET_PKILL)
$(BUSYBOX_SET_START_STOP_DAEMON)
endef
define BUSYBOX_ADD_TO_SHELLS
if grep -q 'CONFIG_ASH=y' $(BUSYBOX_BUILD_CONFIG); then \
grep -qsE '^/bin/ash$$' $(TARGET_sysconfdir)/shells \
|| echo "/bin/ash" >> $(TARGET_sysconfdir)/shells; \
fi
if grep -q 'CONFIG_HUSH=y' $(BUSYBOX_BUILD_CONFIG); then \
grep -qsE '^/bin/hush$$' $(TARGET_sysconfdir)/shells \
|| echo "/bin/hush" >> $(TARGET_sysconfdir)/shells; \
fi
if grep -q 'CONFIG_SH_IS_ASH=y\|CONFIG_SH_IS_HUSH=y' $(BUSYBOX_BUILD_CONFIG); then \
grep -qsE '^/bin/sh$$' $(TARGET_sysconfdir)/shells \
|| echo "/bin/sh" >> $(TARGET_sysconfdir)/shells; \
fi
endef
busybox: $(BUSYBOX_DEPS) $(DL_DIR)/$(BUSYBOX_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(BUSYBOX_DIR)
$(UNTAR)/$(BUSYBOX_SOURCE)
$(CHDIR)/$(BUSYBOX_DIR); \
$(call apply_patches, $(BUSYBOX_PATCH))
$(BUSYBOX_INSTALL_CONFIG)
$(BUSYBOX_MODIFY_CONFIG)
$(CHDIR)/$(BUSYBOX_DIR); \
$(BUSYBOX_MAKE_ENV) $(MAKE) $(BUSYBOX_MAKE_OPTS) busybox; \
$(BUSYBOX_MAKE_ENV) $(MAKE) $(BUSYBOX_MAKE_OPTS) install-noclobber
$(BUSYBOX_ADD_TO_SHELLS)
$(REMOVE)/$(BUSYBOX_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
BASH_VER = 5.0
BASH_DIR = bash-$(BASH_VER)
BASH_SOURCE = bash-$(BASH_VER).tar.gz
BASH_SITE = $(GNU_MIRROR)/bash
$(DL_DIR)/$(BASH_SOURCE):
$(DOWNLOAD) $(BASH_SITE)/$(BASH_SOURCE)
BASH_PATCH = $(PATCHES)/bash
define BASH_ADD_TO_SHELLS
grep -qsE '^/bin/bash$$' $(TARGET_sysconfdir)/shells \
|| echo "/bin/bash" >> $(TARGET_sysconfdir)/shells
endef
bash: $(DL_DIR)/$(BASH_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(BASH_DIR)
$(UNTAR)/$(BASH_SOURCE)
$(CHDIR)/$(BASH_DIR); \
$(call apply_patches, $(BASH_PATCH), 0); \
$(CONFIGURE) \
--prefix=$(base_prefix) \
--includedir=$(includedir) \
--libdir=$(libdir) \
--datarootdir=$(REMOVE_datarootdir) \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
$(REWRITE_PKGCONF_PC)
-rm $(addprefix $(TARGET_libdir)/bash/, loadables.h Makefile.inc)
$(BASH_ADD_TO_SHELLS)
$(REMOVE)/$(BASH_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
SYSVINIT_VER = 2.98
SYSVINIT_DIR = sysvinit-$(SYSVINIT_VER)
SYSVINIT_SOURCE = sysvinit-$(SYSVINIT_VER).tar.xz
SYSVINIT_SITE = http://download.savannah.nongnu.org/releases/sysvinit
$(DL_DIR)/$(SYSVINIT_SOURCE):
$(DOWNLOAD) $(SYSVINIT_SITE)/$(SYSVINIT_SOURCE)
define SYSVINIT_INSTALL
for sbin in halt init shutdown killall5 runlevel; do \
$(INSTALL_EXEC) -D $(BUILD_DIR)/$(SYSVINIT_DIR)/src/$$sbin $(TARGET_base_sbindir)/$$sbin || exit 1; \
done
ln -sf /sbin/halt $(TARGET_base_sbindir)/reboot
ln -sf /sbin/halt $(TARGET_base_sbindir)/poweroff
ln -sf /sbin/killall5 $(TARGET_base_sbindir)/pidof
endef
sysvinit: $(DL_DIR)/$(SYSVINIT_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(SYSVINIT_DIR)
$(UNTAR)/$(SYSVINIT_SOURCE)
$(CHDIR)/$(SYSVINIT_DIR); \
$(APPLY_PATCHES); \
$(MAKE_ENV) \
$(MAKE) -C src SULOGINLIBS=-lcrypt
$(SYSVINIT_INSTALL)
$(REMOVE)/$(SYSVINIT_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
COREUTILS_VER = 8.30
COREUTILS_DIR = coreutils-$(COREUTILS_VER)
COREUTILS_SOURCE = coreutils-$(COREUTILS_VER).tar.xz
COREUTILS_SITE = $(GNU_MIRROR)/coreutils
$(DL_DIR)/$(COREUTILS_SOURCE):
$(DOWNLOAD) $(COREUTILS_SITE)/$(COREUTILS_SOURCE)
COREUTILS_PATCH = coreutils-fix-build.patch
COREUTILS_BIN = touch
coreutils: $(DL_DIR)/$(COREUTILS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(COREUTILS_DIR)
$(UNTAR)/$(COREUTILS_SOURCE)
$(CHDIR)/$(COREUTILS_DIR); \
$(call apply_patches, $(COREUTILS_PATCH)); \
autoreconf -fi; \
$(CONFIGURE) \
--target=$(TARGET) \
--prefix=$(base_prefix) \
--bindir=/bin.$(@F) \
--libexecdir=$(REMOVE_libexecdir) \
--datarootdir=$(REMOVE_datarootdir) \
--enable-silent-rules \
--disable-xattr \
--disable-libcap \
--disable-acl \
--without-gmp \
--without-selinux \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
for bin in $(COREUTILS_BIN); do \
rm -f $(TARGET_bindir)/$$bin; \
$(INSTALL_EXEC) -D $(TARGET_DIR)/bin.$(@F)/$$bin $(TARGET_bindir)/$$bin; \
done
$(REMOVE)/$(COREUTILS_DIR) \
$(TARGET_DIR)/bin.$(@F)
$(TOUCH)
# -----------------------------------------------------------------------------
PROCPS-NG_VER = 3.3.16
PROCPS-NG_DIR = procps-ng-$(PROCPS-NG_VER)
PROCPS-NG_SOURCE = procps-ng-$(PROCPS-NG_VER).tar.xz
PROCPS-NG_SITE = http://sourceforge.net/projects/procps-ng/files/Production
$(DL_DIR)/$(PROCPS-NG_SOURCE):
$(DOWNLOAD) $(PROCPS-NG_SITE)/$(PROCPS-NG_SOURCE)
PROCPS-NG_PATCH = procps-ng-no-tests-docs.patch
PROCPS-NG_DEPS = ncurses
PROCPS-NG_BIN = ps top
procps-ng: $(PROCPS-NG_DEPS) $(DL_DIR)/$(PROCPS-NG_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(PROCPS-NG_DIR)
$(UNTAR)/$(PROCPS-NG_SOURCE)
$(CHDIR)/$(PROCPS-NG_DIR); \
$(call apply_patches, $(PROCPS-NG_PATCH)); \
export ac_cv_func_malloc_0_nonnull=yes; \
export ac_cv_func_realloc_0_nonnull=yes; \
autoreconf -fi; \
$(CONFIGURE) \
--target=$(TARGET) \
--prefix=$(base_prefix) \
--bindir=/bin.$(@F) \
--sbindir=/sbin.$(@F) \
--includedir=$(includedir) \
--libdir=$(libdir) \
--datarootdir=$(REMOVE_datarootdir) \
--without-systemd \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
for bin in $(PROCPS-NG_BIN); do \
rm -f $(TARGET_bindir)/$$bin; \
$(INSTALL_EXEC) -D $(TARGET_DIR)/bin.$(@F)/$$bin $(TARGET_bindir)/$$bin; \
done
$(REWRITE_LIBTOOL_LA)
$(REWRITE_PKGCONF_PC)
$(REMOVE)/$(PROCPS-NG_DIR) \
$(TARGET_DIR)/bin.$(@F) \
$(TARGET_DIR)/sbin.$(@F)
$(TOUCH)
# -----------------------------------------------------------------------------
MTD-UTILS_VER = 2.0.2
MTD-UTILS_DIR = mtd-utils-$(MTD-UTILS_VER)
MTD-UTILS_SOURCE = mtd-utils-$(MTD-UTILS_VER).tar.bz2
MTD-UTILS_SITE = ftp://ftp.infradead.org/pub/mtd-utils
$(DL_DIR)/$(MTD-UTILS_SOURCE):
$(DOWNLOAD) $(MTD-UTILS_SITE)/$(MTD-UTILS_SOURCE)
MTD-UTILS_DEPS = zlib lzo e2fsprogs
MTD-UTILS_SBIN = flash_erase flash_eraseall
ifeq ($(BOXSERIES), hd2)
MTD-UTILS_SBIN+= nanddump nandtest nandwrite mkfs.jffs2
endif
mtd-utils: $(MTD-UTILS_DEPS) $(DL_DIR)/$(MTD-UTILS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(MTD-UTILS_DIR)
$(UNTAR)/$(MTD-UTILS_SOURCE)
$(CHDIR)/$(MTD-UTILS_DIR); \
$(CONFIGURE) \
--target=$(TARGET) \
--prefix=$(base_prefix) \
--sbindir=/sbin.$(@F) \
--mandir=$(REMOVE_mandir) \
--enable-silent-rules \
--disable-tests \
--without-xattr \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
for sbin in $(MTD-UTILS_SBIN); do \
rm -f $(TARGET_base_sbindir)/$$sbin; \
$(INSTALL_EXEC) -D $(TARGET_DIR)/sbin.$(@F)/$$sbin $(TARGET_base_sbindir); \
done
$(REMOVE)/$(MTD-UTILS_DIR) \
$(TARGET_DIR)/sbin.$(@F)
$(TOUCH)
# -----------------------------------------------------------------------------
DOSFSTOOLS_VER = 4.1
DOSFSTOOLS_DIR = dosfstools-$(DOSFSTOOLS_VER)
DOSFSTOOLS_SOURCE = dosfstools-$(DOSFSTOOLS_VER).tar.xz
DOSFSTOOLS_SITE = https://github.com/dosfstools/dosfstools/releases/download/v$(DOSFSTOOLS_VER)
$(DL_DIR)/$(DOSFSTOOLS_SOURCE):
$(DOWNLOAD) $(DOSFSTOOLS_SITE)/$(DOSFSTOOLS_SOURCE)
DOSFSTOOLS_PATCH = switch-to-AC_CHECK_LIB-for-iconv-library-linking.patch
DOSFSTOOLS_CFLAGS = $(TARGET_CFLAGS) -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fomit-frame-pointer
dosfstools: $(DL_DIR)/$(DOSFSTOOLS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(DOSFSTOOLS_DIR)
$(UNTAR)/$(DOSFSTOOLS_SOURCE)
$(CHDIR)/$(DOSFSTOOLS_DIR); \
$(call apply_patches, $(addprefix $(@F)/,$(DOSFSTOOLS_PATCH))); \
autoreconf -fi; \
$(CONFIGURE) \
--prefix=$(base_prefix) \
--mandir=$(REMOVE_mandir) \
--docdir=$(REMOVE_docdir) \
--without-udev \
--enable-compat-symlinks \
CFLAGS="$(DOSFSTOOLS_CFLAGS)" \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
$(REMOVE)/$(DOSFSTOOLS_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
NTFS-3G_VER = 2017.3.23
NTFS-3G_DIR = ntfs-3g_ntfsprogs-$(NTFS-3G_VER)
NTFS-3G_SOURCE = ntfs-3g_ntfsprogs-$(NTFS-3G_VER).tgz
NTFS-3G_SITE = https://tuxera.com/opensource
$(DL_DIR)/$(NTFS-3G_SOURCE):
$(DOWNLOAD) $(NTFS-3G_SITE)/$(NTFS-3G_SOURCE)
NTFS-3G_DEPS = libfuse
ntfs-3g: $(NTFS-3G_DEPS) $(DL_DIR)/$(NTFS-3G_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(NTFS-3G_DIR)
$(UNTAR)/$(NTFS-3G_SOURCE)
$(CHDIR)/$(NTFS-3G_DIR); \
$(CONFIGURE) \
--prefix=$(prefix) \
--bindir=$(base_bindir) \
--sbindir=$(base_sbindir) \
--mandir=$(REMOVE_mandir) \
--docdir=$(REMOVE_docdir) \
--disable-ntfsprogs \
--disable-ldconfig \
--disable-library \
--with-fuse=external \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
-rm $(addprefix $(TARGET_base_bindir)/,lowntfs-3g ntfs-3g.probe)
-rm $(addprefix $(TARGET_base_sbindir)/,mount.lowntfs-3g)
ln -sf ntfs-3g $(TARGET_base_sbindir)/mount.ntfs
$(REMOVE)/$(NTFS-3G_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
FUSE-EXFAT_VER = 1.3.0
FUSE-EXFAT_DIR = fuse-exfat-$(FUSE-EXFAT_VER)
FUSE-EXFAT_SOURCE = fuse-exfat-$(FUSE-EXFAT_VER).tar.gz
FUSE-EXFAT_SITE = https://github.com/relan/exfat/releases/download/v$(FUSE-EXFAT_VER)
$(DL_DIR)/$(FUSE-EXFAT_SOURCE):
$(DOWNLOAD) $(FUSE-EXFAT_SITE)/$(FUSE-EXFAT_SOURCE)
FUSE-EXFAT_DEPS = libfuse
fuse-exfat: $(FUSE-EXFAT_DEPS) $(DL_DIR)/$(FUSE-EXFAT_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(FUSE-EXFAT_DIR)
$(UNTAR)/$(FUSE-EXFAT_SOURCE)
$(CHDIR)/$(FUSE-EXFAT_DIR); \
autoreconf -fi; \
$(CONFIGURE) \
--prefix=$(base_prefix) \
--docdir=$(REMOVE_docdir) \
--mandir=$(REMOVE_mandir) \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
$(REMOVE)/$(FUSE-EXFAT_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
EXFAT-UTILS_VER = 1.3.0
EXFAT-UTILS_DIR = exfat-utils-$(EXFAT-UTILS_VER)
EXFAT-UTILS_SOURCE = exfat-utils-$(EXFAT-UTILS_VER).tar.gz
EXFAT-UTILS_SITE = https://github.com/relan/exfat/releases/download/v$(EXFAT-UTILS_VER)
$(DL_DIR)/$(EXFAT-UTILS_SOURCE):
$(DOWNLOAD) $(EXFAT-UTILS_SITE)/$(EXFAT-UTILS_SOURCE)
endif
EXFAT-UTILS_DEPS = fuse-exfat
endif
exfat-utils: $(EXFAT-UTILS_DEPS) $(DL_DIR)/$(EXFAT-UTILS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(EXFAT-UTILS_DIR)
$(UNTAR)/$(EXFAT-UTILS_SOURCE)
$(CHDIR)/$(EXFAT-UTILS_DIR); \
autoreconf -fi; \
$(CONFIGURE) \
--prefix=$(base_prefix) \
--docdir=$(REMOVE_docdir) \
--mandir=$(REMOVE_mandir) \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
$(REMOVE)/$(EXFAT-UTILS_DIR)
$(TOUCH)
endif
# -----------------------------------------------------------------------------
define BUSYBOX_MODIFY_CONFIG
$(BUSYBOX_SET_BLKDISCARD)
$(BUSYBOX_SET_IPV6)
$(BUSYBOX_SET_SWAP)
$(BUSYBOX_SET_HEXDUMP)
$(BUSYBOX_SET_PKILL)
$(BUSYBOX_SET_START_STOP_DAEMON)
endef
# for coolstream: formatting ext4 failes with newer versions then 1.43.8
E2FSPROGS_VER = $(if $(filter $(BOXTYPE), coolstream),1.43.8,1.45.6)
E2FSPROGS_DIR = e2fsprogs-$(E2FSPROGS_VER)
E2FSPROGS_SOURCE = e2fsprogs-$(E2FSPROGS_VER).tar.gz
E2FSPROGS_SITE = https://sourceforge.net/projects/e2fsprogs/files/e2fsprogs/v$(E2FSPROGS_VER)
define BUSYBOX_ADD_TO_SHELLS
if grep -q 'CONFIG_ASH=y' $(BUSYBOX_BUILD_CONFIG); then \
grep -qsE '^/bin/ash$$' $(TARGET_sysconfdir)/shells \
|| echo "/bin/ash" >> $(TARGET_sysconfdir)/shells; \
fi
if grep -q 'CONFIG_HUSH=y' $(BUSYBOX_BUILD_CONFIG); then \
grep -qsE '^/bin/hush$$' $(TARGET_sysconfdir)/shells \
|| echo "/bin/hush" >> $(TARGET_sysconfdir)/shells; \
fi
if grep -q 'CONFIG_SH_IS_ASH=y\|CONFIG_SH_IS_HUSH=y' $(BUSYBOX_BUILD_CONFIG); then \
grep -qsE '^/bin/sh$$' $(TARGET_sysconfdir)/shells \
|| echo "/bin/sh" >> $(TARGET_sysconfdir)/shells; \
fi
endef
$(DL_DIR)/$(E2FSPROGS_SOURCE):
$(DOWNLOAD) $(E2FSPROGS_SITE)/$(E2FSPROGS_SOURCE)
busybox: $(BUSYBOX_DEPS) $(DL_DIR)/$(BUSYBOX_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(BUSYBOX_DIR)
$(UNTAR)/$(BUSYBOX_SOURCE)
$(CHDIR)/$(BUSYBOX_DIR); \
$(call apply_patches, $(BUSYBOX_PATCH))
$(BUSYBOX_INSTALL_CONFIG)
$(BUSYBOX_MODIFY_CONFIG)
$(CHDIR)/$(BUSYBOX_DIR); \
$(BUSYBOX_MAKE_ENV) $(MAKE) $(BUSYBOX_MAKE_OPTS) busybox; \
$(BUSYBOX_MAKE_ENV) $(MAKE) $(BUSYBOX_MAKE_OPTS) install-noclobber
$(BUSYBOX_ADD_TO_SHELLS)
$(REMOVE)/$(BUSYBOX_DIR)
e2fsprogs: $(DL_DIR)/$(E2FSPROGS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(E2FSPROGS_DIR)
$(UNTAR)/$(E2FSPROGS_SOURCE)
$(CHDIR)/$(E2FSPROGS_DIR); \
autoreconf -fi; \
$(CONFIGURE) \
--target=$(TARGET) \
--prefix=$(prefix) \
--with-root-prefix=$(base_prefix)\ \
--libdir=$(libdir) \
--sysconfdir=$(sysconfdir) \
--datarootdir=$(REMOVE_datarootdir) \
--disable-nls \
--disable-profile \
--disable-e2initrd-helper \
--disable-backtrace \
--disable-bmap-stats \
--disable-debugfs \
--disable-fuse2fs \
--disable-imager \
--disable-mmp \
--disable-rpath \
--disable-tdb \
--disable-uuidd \
--disable-blkid-debug \
--disable-jbd-debug \
--disable-testio-debug \
--disable-defrag \
--enable-elf-shlibs \
--enable-fsck \
--enable-symlink-install \
--enable-verbose-makecmds \
--enable-symlink-build \
--with-gnu-ld \
--with-crond-dir=no \
; \
$(MAKE); \
$(MAKE) install install-libs DESTDIR=$(TARGET_DIR)
-rm $(addprefix $(TARGET_base_sbindir)/, dumpe2fs e2mmpstatus e2undo logsave)
-rm $(addprefix $(TARGET_bindir)/, chattr compile_et lsattr mk_cmds uuidgen)
-rm $(addprefix $(TARGET_sbindir)/, e2freefrag e4crypt filefrag)
$(REWRITE_PKGCONF_PC)
$(REMOVE)/$(E2FSPROGS_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
#
# $(prefix) tools
#
# -----------------------------------------------------------------------------
OPENVPN_VER = 2.5.0
OPENVPN_DIR = openvpn-$(OPENVPN_VER)
OPENVPN_SOURCE = openvpn-$(OPENVPN_VER).tar.xz
@ -247,46 +631,6 @@ tzdata: $(TZDATA_DEPS) $(DL_DIR)/$(TZDATA_SOURCE) | $(TARGET_DIR)
# -----------------------------------------------------------------------------
MTD-UTILS_VER = 2.0.2
MTD-UTILS_DIR = mtd-utils-$(MTD-UTILS_VER)
MTD-UTILS_SOURCE = mtd-utils-$(MTD-UTILS_VER).tar.bz2
MTD-UTILS_SITE = ftp://ftp.infradead.org/pub/mtd-utils
$(DL_DIR)/$(MTD-UTILS_SOURCE):
$(DOWNLOAD) $(MTD-UTILS_SITE)/$(MTD-UTILS_SOURCE)
MTD-UTILS_DEPS = zlib lzo e2fsprogs
MTD-UTILS_SBIN = flash_erase flash_eraseall
ifeq ($(BOXSERIES), hd2)
MTD-UTILS_SBIN+= nanddump nandtest nandwrite mkfs.jffs2
endif
mtd-utils: $(MTD-UTILS_DEPS) $(DL_DIR)/$(MTD-UTILS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(MTD-UTILS_DIR)
$(UNTAR)/$(MTD-UTILS_SOURCE)
$(CHDIR)/$(MTD-UTILS_DIR); \
$(CONFIGURE) \
--target=$(TARGET) \
--prefix=$(base_prefix) \
--sbindir=/sbin.$(@F) \
--mandir=$(REMOVE_mandir) \
--enable-silent-rules \
--disable-tests \
--without-xattr \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
for sbin in $(MTD-UTILS_SBIN); do \
rm -f $(TARGET_base_sbindir)/$$sbin; \
$(INSTALL_EXEC) -D $(TARGET_DIR)/sbin.$(@F)/$$sbin $(TARGET_base_sbindir); \
done
$(REMOVE)/$(MTD-UTILS_DIR) \
$(TARGET_DIR)/sbin.$(@F)
$(TOUCH)
# -----------------------------------------------------------------------------
IPERF_VER = 3.1.3
IPERF_DIR = iperf-$(IPERF_VER)
IPERF_SOURCE = iperf-$(IPERF_VER)-source.tar.gz
@ -397,49 +741,6 @@ hd-idle: $(DL_DIR)/$(HD-IDLE_SOURCE) | $(TARGET_DIR)
# -----------------------------------------------------------------------------
COREUTILS_VER = 8.30
COREUTILS_DIR = coreutils-$(COREUTILS_VER)
COREUTILS_SOURCE = coreutils-$(COREUTILS_VER).tar.xz
COREUTILS_SITE = $(GNU_MIRROR)/coreutils
$(DL_DIR)/$(COREUTILS_SOURCE):
$(DOWNLOAD) $(COREUTILS_SITE)/$(COREUTILS_SOURCE)
COREUTILS_PATCH = coreutils-fix-build.patch
COREUTILS_BIN = touch
coreutils: $(DL_DIR)/$(COREUTILS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(COREUTILS_DIR)
$(UNTAR)/$(COREUTILS_SOURCE)
$(CHDIR)/$(COREUTILS_DIR); \
$(call apply_patches, $(COREUTILS_PATCH)); \
autoreconf -fi; \
$(CONFIGURE) \
--target=$(TARGET) \
--prefix=$(base_prefix) \
--bindir=/bin.$(@F) \
--libexecdir=$(REMOVE_libexecdir) \
--datarootdir=$(REMOVE_datarootdir) \
--enable-silent-rules \
--disable-xattr \
--disable-libcap \
--disable-acl \
--without-gmp \
--without-selinux \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
for bin in $(COREUTILS_BIN); do \
rm -f $(TARGET_bindir)/$$bin; \
$(INSTALL_EXEC) -D $(TARGET_DIR)/bin.$(@F)/$$bin $(TARGET_bindir)/$$bin; \
done
$(REMOVE)/$(COREUTILS_DIR) \
$(TARGET_DIR)/bin.$(@F)
$(TOUCH)
# -----------------------------------------------------------------------------
LESS_VER = 563
LESS_DIR = less-$(LESS_VER)
LESS_SOURCE = less-$(LESS_VER).tar.gz
@ -654,64 +955,17 @@ vsftpd: $(VSFTPD_DEPS) $(DL_DIR)/$(VSFTPD_SOURCE) | $(TARGET_DIR)
$(UNTAR)/$(VSFTPD_SOURCE)
$(CHDIR)/$(VSFTPD_DIR); \
$(call apply_patches, $(VSFTPD_PATCH)); \
$(SED) 's/.*VSF_BUILD_PAM/#undef VSF_BUILD_PAM/' builddefs.h; \
$(SED) 's/.*VSF_BUILD_SSL/#define VSF_BUILD_SSL/' builddefs.h; \
$(MAKE) clean; \
$(MAKE) $(MAKE_ENV) LIBS="-lcrypt -lcrypto -lssl"; \
$(INSTALL_EXEC) -D vsftpd $(TARGET_sbindir)/vsftpd
mkdir -p $(TARGET_datadir)/empty
$(INSTALL_DATA) -D $(TARGET_FILES)/configs/vsftpd.conf $(TARGET_sysconfdir)/vsftpd.conf
$(INSTALL_DATA) -D $(TARGET_FILES)/configs/vsftpd.chroot_list $(TARGET_sysconfdir)/vsftpd.chroot_list
$(INSTALL_EXEC) -D $(TARGET_FILES)/scripts/vsftpd.init $(TARGET_sysconfdir)/init.d/vsftpd
$(UPDATE-RC.D) vsftpd defaults 75 25
$(REMOVE)/$(VSFTPD_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
PROCPS-NG_VER = 3.3.16
PROCPS-NG_DIR = procps-ng-$(PROCPS-NG_VER)
PROCPS-NG_SOURCE = procps-ng-$(PROCPS-NG_VER).tar.xz
PROCPS-NG_SITE = http://sourceforge.net/projects/procps-ng/files/Production
$(DL_DIR)/$(PROCPS-NG_SOURCE):
$(DOWNLOAD) $(PROCPS-NG_SITE)/$(PROCPS-NG_SOURCE)
PROCPS-NG_PATCH = procps-ng-no-tests-docs.patch
PROCPS-NG_DEPS = ncurses
PROCPS-NG_BIN = ps top
procps-ng: $(PROCPS-NG_DEPS) $(DL_DIR)/$(PROCPS-NG_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(PROCPS-NG_DIR)
$(UNTAR)/$(PROCPS-NG_SOURCE)
$(CHDIR)/$(PROCPS-NG_DIR); \
$(call apply_patches, $(PROCPS-NG_PATCH)); \
export ac_cv_func_malloc_0_nonnull=yes; \
export ac_cv_func_realloc_0_nonnull=yes; \
autoreconf -fi; \
$(CONFIGURE) \
--target=$(TARGET) \
--prefix=$(base_prefix) \
--bindir=/bin.$(@F) \
--sbindir=/sbin.$(@F) \
--includedir=$(includedir) \
--libdir=$(libdir) \
--datarootdir=$(REMOVE_datarootdir) \
--without-systemd \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
for bin in $(PROCPS-NG_BIN); do \
rm -f $(TARGET_bindir)/$$bin; \
$(INSTALL_EXEC) -D $(TARGET_DIR)/bin.$(@F)/$$bin $(TARGET_bindir)/$$bin; \
done
$(REWRITE_LIBTOOL_LA)
$(REWRITE_PKGCONF_PC)
$(REMOVE)/$(PROCPS-NG_DIR) \
$(TARGET_DIR)/bin.$(@F) \
$(TARGET_DIR)/sbin.$(@F)
$(SED) 's/.*VSF_BUILD_PAM/#undef VSF_BUILD_PAM/' builddefs.h; \
$(SED) 's/.*VSF_BUILD_SSL/#define VSF_BUILD_SSL/' builddefs.h; \
$(MAKE) clean; \
$(MAKE) $(MAKE_ENV) LIBS="-lcrypt -lcrypto -lssl"; \
$(INSTALL_EXEC) -D vsftpd $(TARGET_sbindir)/vsftpd
mkdir -p $(TARGET_datadir)/empty
$(INSTALL_DATA) -D $(TARGET_FILES)/configs/vsftpd.conf $(TARGET_sysconfdir)/vsftpd.conf
$(INSTALL_DATA) -D $(TARGET_FILES)/configs/vsftpd.chroot_list $(TARGET_sysconfdir)/vsftpd.chroot_list
$(INSTALL_EXEC) -D $(TARGET_FILES)/scripts/vsftpd.init $(TARGET_sysconfdir)/init.d/vsftpd
$(UPDATE-RC.D) vsftpd defaults 75 25
$(REMOVE)/$(VSFTPD_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
@ -777,134 +1031,6 @@ minicom: $(MINICOM_DEPS) $(DL_DIR)/$(MINICOM_SOURCE) | $(TARGET_DIR)
# -----------------------------------------------------------------------------
BASH_VER = 5.0
BASH_DIR = bash-$(BASH_VER)
BASH_SOURCE = bash-$(BASH_VER).tar.gz
BASH_SITE = $(GNU_MIRROR)/bash
$(DL_DIR)/$(BASH_SOURCE):
$(DOWNLOAD) $(BASH_SITE)/$(BASH_SOURCE)
BASH_PATCH = $(PATCHES)/bash
define BASH_ADD_TO_SHELLS
grep -qsE '^/bin/bash$$' $(TARGET_sysconfdir)/shells \
|| echo "/bin/bash" >> $(TARGET_sysconfdir)/shells
endef
bash: $(DL_DIR)/$(BASH_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(BASH_DIR)
$(UNTAR)/$(BASH_SOURCE)
$(CHDIR)/$(BASH_DIR); \
$(call apply_patches, $(BASH_PATCH), 0); \
$(CONFIGURE) \
--prefix=$(base_prefix) \
--includedir=$(includedir) \
--libdir=$(libdir) \
--datarootdir=$(REMOVE_datarootdir) \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
$(REWRITE_PKGCONF_PC)
-rm $(addprefix $(TARGET_libdir)/bash/, loadables.h Makefile.inc)
$(BASH_ADD_TO_SHELLS)
$(REMOVE)/$(BASH_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
# for coolstream: formatting ext4 failes with newer versions then 1.43.8
E2FSPROGS_VER = $(if $(filter $(BOXTYPE), coolstream),1.43.8,1.45.6)
E2FSPROGS_DIR = e2fsprogs-$(E2FSPROGS_VER)
E2FSPROGS_SOURCE = e2fsprogs-$(E2FSPROGS_VER).tar.gz
E2FSPROGS_SITE = https://sourceforge.net/projects/e2fsprogs/files/e2fsprogs/v$(E2FSPROGS_VER)
$(DL_DIR)/$(E2FSPROGS_SOURCE):
$(DOWNLOAD) $(E2FSPROGS_SITE)/$(E2FSPROGS_SOURCE)
e2fsprogs: $(DL_DIR)/$(E2FSPROGS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(E2FSPROGS_DIR)
$(UNTAR)/$(E2FSPROGS_SOURCE)
$(CHDIR)/$(E2FSPROGS_DIR); \
autoreconf -fi; \
$(CONFIGURE) \
--target=$(TARGET) \
--prefix=$(prefix) \
--with-root-prefix=$(base_prefix)\ \
--libdir=$(libdir) \
--sysconfdir=$(sysconfdir) \
--datarootdir=$(REMOVE_datarootdir) \
--disable-nls \
--disable-profile \
--disable-e2initrd-helper \
--disable-backtrace \
--disable-bmap-stats \
--disable-debugfs \
--disable-fuse2fs \
--disable-imager \
--disable-mmp \
--disable-rpath \
--disable-tdb \
--disable-uuidd \
--disable-blkid-debug \
--disable-jbd-debug \
--disable-testio-debug \
--disable-defrag \
--enable-elf-shlibs \
--enable-fsck \
--enable-symlink-install \
--enable-verbose-makecmds \
--enable-symlink-build \
--with-gnu-ld \
--with-crond-dir=no \
; \
$(MAKE); \
$(MAKE) install install-libs DESTDIR=$(TARGET_DIR)
-rm $(addprefix $(TARGET_base_sbindir)/, dumpe2fs e2mmpstatus e2undo logsave)
-rm $(addprefix $(TARGET_bindir)/, chattr compile_et lsattr mk_cmds uuidgen)
-rm $(addprefix $(TARGET_sbindir)/, e2freefrag e4crypt filefrag)
$(REWRITE_PKGCONF_PC)
$(REMOVE)/$(E2FSPROGS_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
NTFS-3G_VER = 2017.3.23
NTFS-3G_DIR = ntfs-3g_ntfsprogs-$(NTFS-3G_VER)
NTFS-3G_SOURCE = ntfs-3g_ntfsprogs-$(NTFS-3G_VER).tgz
NTFS-3G_SITE = https://tuxera.com/opensource
$(DL_DIR)/$(NTFS-3G_SOURCE):
$(DOWNLOAD) $(NTFS-3G_SITE)/$(NTFS-3G_SOURCE)
NTFS-3G_DEPS = libfuse
ntfs-3g: $(NTFS-3G_DEPS) $(DL_DIR)/$(NTFS-3G_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(NTFS-3G_DIR)
$(UNTAR)/$(NTFS-3G_SOURCE)
$(CHDIR)/$(NTFS-3G_DIR); \
$(CONFIGURE) \
--prefix=$(prefix) \
--bindir=$(base_bindir) \
--sbindir=$(base_sbindir) \
--mandir=$(REMOVE_mandir) \
--docdir=$(REMOVE_docdir) \
--disable-ntfsprogs \
--disable-ldconfig \
--disable-library \
--with-fuse=external \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
-rm $(addprefix $(TARGET_base_bindir)/,lowntfs-3g ntfs-3g.probe)
-rm $(addprefix $(TARGET_base_sbindir)/,mount.lowntfs-3g)
ln -sf ntfs-3g $(TARGET_base_sbindir)/mount.ntfs
$(REMOVE)/$(NTFS-3G_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
AUTOFS_VER = 5.1.6
AUTOFS_DIR = autofs-$(AUTOFS_VER)
AUTOFS_SOURCE = autofs-$(AUTOFS_VER).tar.xz
@ -1339,39 +1465,6 @@ xupnpd: $(XUPNPD_DEPS) | $(TARGET_DIR)
# -----------------------------------------------------------------------------
DOSFSTOOLS_VER = 4.1
DOSFSTOOLS_DIR = dosfstools-$(DOSFSTOOLS_VER)
DOSFSTOOLS_SOURCE = dosfstools-$(DOSFSTOOLS_VER).tar.xz
DOSFSTOOLS_SITE = https://github.com/dosfstools/dosfstools/releases/download/v$(DOSFSTOOLS_VER)
$(DL_DIR)/$(DOSFSTOOLS_SOURCE):
$(DOWNLOAD) $(DOSFSTOOLS_SITE)/$(DOSFSTOOLS_SOURCE)
DOSFSTOOLS_PATCH = switch-to-AC_CHECK_LIB-for-iconv-library-linking.patch
DOSFSTOOLS_CFLAGS = $(TARGET_CFLAGS) -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fomit-frame-pointer
dosfstools: $(DL_DIR)/$(DOSFSTOOLS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(DOSFSTOOLS_DIR)
$(UNTAR)/$(DOSFSTOOLS_SOURCE)
$(CHDIR)/$(DOSFSTOOLS_DIR); \
$(call apply_patches, $(addprefix $(@F)/,$(DOSFSTOOLS_PATCH))); \
autoreconf -fi; \
$(CONFIGURE) \
--prefix=$(base_prefix) \
--mandir=$(REMOVE_mandir) \
--docdir=$(REMOVE_docdir) \
--without-udev \
--enable-compat-symlinks \
CFLAGS="$(DOSFSTOOLS_CFLAGS)" \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
$(REMOVE)/$(DOSFSTOOLS_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
NFS-UTILS_VER = 2.2.1
NFS-UTILS_DIR = nfs-utils-$(NFS-UTILS_VER)
NFS-UTILS_SOURCE = nfs-utils-$(NFS-UTILS_VER).tar.xz
@ -1459,60 +1552,6 @@ rpcbind: $(RPCBIND_DEPS) $(DL_DIR)/$(RPCBIND_SOURCE) | $(TARGET_DIR)
# -----------------------------------------------------------------------------
FUSE-EXFAT_VER = 1.3.0
FUSE-EXFAT_DIR = fuse-exfat-$(FUSE-EXFAT_VER)
FUSE-EXFAT_SOURCE = fuse-exfat-$(FUSE-EXFAT_VER).tar.gz
FUSE-EXFAT_SITE = https://github.com/relan/exfat/releases/download/v$(FUSE-EXFAT_VER)
$(DL_DIR)/$(FUSE-EXFAT_SOURCE):
$(DOWNLOAD) $(FUSE-EXFAT_SITE)/$(FUSE-EXFAT_SOURCE)
FUSE-EXFAT_DEPS = libfuse
fuse-exfat: $(FUSE-EXFAT_DEPS) $(DL_DIR)/$(FUSE-EXFAT_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(FUSE-EXFAT_DIR)
$(UNTAR)/$(FUSE-EXFAT_SOURCE)
$(CHDIR)/$(FUSE-EXFAT_DIR); \
autoreconf -fi; \
$(CONFIGURE) \
--prefix=$(base_prefix) \
--docdir=$(REMOVE_docdir) \
--mandir=$(REMOVE_mandir) \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
$(REMOVE)/$(FUSE-EXFAT_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
EXFAT-UTILS_VER = 1.3.0
EXFAT-UTILS_DIR = exfat-utils-$(EXFAT-UTILS_VER)
EXFAT-UTILS_SOURCE = exfat-utils-$(EXFAT-UTILS_VER).tar.gz
EXFAT-UTILS_SITE = https://github.com/relan/exfat/releases/download/v$(EXFAT-UTILS_VER)
$(DL_DIR)/$(EXFAT-UTILS_SOURCE):
$(DOWNLOAD) $(EXFAT-UTILS_SITE)/$(EXFAT-UTILS_SOURCE)
EXFAT-UTILS_DEPS = fuse-exfat
exfat-utils: $(EXFAT-UTILS_DEPS) $(DL_DIR)/$(EXFAT-UTILS_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(EXFAT-UTILS_DIR)
$(UNTAR)/$(EXFAT-UTILS_SOURCE)
$(CHDIR)/$(EXFAT-UTILS_DIR); \
autoreconf -fi; \
$(CONFIGURE) \
--prefix=$(base_prefix) \
--docdir=$(REMOVE_docdir) \
--mandir=$(REMOVE_mandir) \
; \
$(MAKE); \
$(MAKE) install DESTDIR=$(TARGET_DIR)
$(REMOVE)/$(EXFAT-UTILS_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
STREAMRIPPER_DEPS = libvorbisidec libmad glib2
streamripper: $(STREAMRIPPER_DEPS) | $(TARGET_DIR)
@ -1796,36 +1835,6 @@ rsync: $(RSYNC_DEPS) $(DL_DIR)/$(RSYNC_SOURCE) | $(TARGET_DIR)
# -----------------------------------------------------------------------------
SYSVINIT_VER = 2.98
SYSVINIT_DIR = sysvinit-$(SYSVINIT_VER)
SYSVINIT_SOURCE = sysvinit-$(SYSVINIT_VER).tar.xz
SYSVINIT_SITE = http://download.savannah.nongnu.org/releases/sysvinit
$(DL_DIR)/$(SYSVINIT_SOURCE):
$(DOWNLOAD) $(SYSVINIT_SITE)/$(SYSVINIT_SOURCE)
define SYSVINIT_INSTALL
for sbin in halt init shutdown killall5 runlevel; do \
$(INSTALL_EXEC) -D $(BUILD_DIR)/$(SYSVINIT_DIR)/src/$$sbin $(TARGET_base_sbindir)/$$sbin || exit 1; \
done
ln -sf /sbin/halt $(TARGET_base_sbindir)/reboot
ln -sf /sbin/halt $(TARGET_base_sbindir)/poweroff
ln -sf /sbin/killall5 $(TARGET_base_sbindir)/pidof
endef
sysvinit: $(DL_DIR)/$(SYSVINIT_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(SYSVINIT_DIR)
$(UNTAR)/$(SYSVINIT_SOURCE)
$(CHDIR)/$(SYSVINIT_DIR); \
$(APPLY_PATCHES); \
$(MAKE_ENV) \
$(MAKE) -C src SULOGINLIBS=-lcrypt
$(SYSVINIT_INSTALL)
$(REMOVE)/$(SYSVINIT_DIR)
$(TOUCH)
# -----------------------------------------------------------------------------
CA-BUNDLE_SOURCE = cacert.pem
CA-BUNDLE_SITE = https://curl.haxx.se/ca

Loading…
Cancel
Save