tools: build GNU date from coreutils on non-Linux systems
authorFelix Fietkau <nbd@nbd.name>
Tue, 23 Aug 2016 08:58:34 +0000 (10:58 +0200)
committerFelix Fietkau <nbd@nbd.name>
Tue, 23 Aug 2016 09:56:13 +0000 (11:56 +0200)
Required for reproducible builds in the kernel build system

Signed-off-by: Felix Fietkau <nbd@nbd.name>
tools/Makefile
tools/coreutils/Makefile [new file with mode: 0644]

index abf5b04..f7a7316 100644 (file)
@@ -84,6 +84,9 @@ tools-y += libressl
 $(curdir)/mkimage/compile += $(curdir)/libressl/install
 $(curdir)/firmware-utils/compile += $(curdir)/libressl/install
 endif
+ifneq ($(HOST_OS),Linux)
+  tools-y += coreutils
+endif
 
 ifneq ($(CONFIG_CCACHE)$(CONFIG_SDK),)
 $(foreach tool, $(filter-out patch,$(tools-y)), $(eval $(curdir)/$(tool)/compile += $(curdir)/ccache/install))
diff --git a/tools/coreutils/Makefile b/tools/coreutils/Makefile
new file mode 100644 (file)
index 0000000..8e05850
--- /dev/null
@@ -0,0 +1,36 @@
+#
+# Copyright (C) 2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=coreutils
+PKG_VERSION:=8.25
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
+PKG_SOURCE_URL:=@GNU/coreutils
+PKG_MD5SUM:=070e43ba7f618d747414ef56ab248a48
+
+HOST_BUILD_PARALLEL := 1
+
+BUILD_PROGRAMS = date
+
+include $(INCLUDE_DIR)/host-build.mk
+
+BUILD_BINS = $(patsubst %,src/%,$(BUILD_PROGRAMS))
+
+HOST_CONFIGURE_ARGS += \
+        --enable-install-program=date
+
+HOST_MAKE_FLAGS += \
+       PROGRAMS="$(BUILD_BINS)" \
+       LIBRARIES= MANS= SUBDIRS=.
+
+define Host/Install
+       $(INSTALL_DIR) $(1)/bin
+       $(CP) $(patsubst %,$(HOST_BUILD_DIR)/%,$(BUILD_BINS)) $(1)/bin/
+endef
+
+$(eval $(call HostBuild))