Makefile 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #
  2. # Copyright (C) 2015 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=coreutils
  9. PKG_CPE_ID:=cpe:/a:gnu:coreutils
  10. PKG_VERSION:=9.6
  11. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
  12. PKG_SOURCE_URL:=@GNU/coreutils
  13. PKG_HASH:=2bec616375002c92c1ed5ead32a092b174fe44c14bc736d32e5961053b821d84
  14. HOST_BUILD_PARALLEL := 1
  15. PKG_PROGRAMS:=chown cp date ginstall ln readlink realpath rmdir seq stat touch
  16. include $(INCLUDE_DIR)/host-build.mk
  17. export GNULIB_SRCDIR:=$(HOST_GNULIB_SRCDIR)
  18. HOST_GNULIB_SKIP := \
  19. lib/iconv_open-aix.gperf \
  20. lib/iconv_open-hpux.gperf \
  21. lib/iconv_open-irix.gperf \
  22. lib/iconv_open-osf.gperf \
  23. lib/iconv_open-solaris.gperf \
  24. lib/iconv_open-zos.gperf
  25. HOST_CONFIGURE_ARGS += \
  26. --enable-install-program=$(subst $(space),$(comma),$(strip $(PKG_PROGRAMS)))
  27. HOST_MAKE_FLAGS += \
  28. $(AM_TOOL_PATHS) AUTOPOINT="$(TRUE)" GTKDOCIZE="$(TRUE)" \
  29. am__CONFIG_DISTCLEAN_FILES= \
  30. MAINTAINERCLEANFILES='$$$$(filter-out lib/iconv_open% %.texi,$$$$(BUILT_SOURCES))' \
  31. PROGRAMS="$(patsubst %,src/%,$(PKG_PROGRAMS))" \
  32. LIBRARIES= MANS= SUBDIRS=.
  33. define Host/Bootstrap
  34. ( \
  35. cd $(HOST_BUILD_DIR); \
  36. $(AM_TOOL_PATHS) AUTOPOINT="$(TRUE)" GTKDOCIZE="$(TRUE)" \
  37. ./bootstrap \
  38. --bootstrap-sync \
  39. --force \
  40. --no-git \
  41. --skip-po \
  42. --gnulib-srcdir=$(GNULIB_SRCDIR) \
  43. )
  44. endef
  45. define Host/Prepare
  46. $(call Host/Prepare/Default)
  47. $(if $(QUILT),,$(call Host/Bootstrap))
  48. endef
  49. define Host/Configure
  50. $(if $(QUILT),$(call Host/Bootstrap))
  51. $(foreach src,$(HOST_GNULIB_SKIP),mv -f $(HOST_BUILD_DIR)/$(src)~ $(HOST_BUILD_DIR)/$(src) || true; )
  52. $(call Host/Configure/Default)
  53. $(call Host/Uninstall)
  54. $(call Host/Compile/Default,lib/config.h)
  55. endef
  56. define Host/Install
  57. $(INSTALL_DIR) $(1)/bin
  58. $(foreach prog,$(filter-out g%,$(PKG_PROGRAMS)),$(INSTALL_BIN) $(patsubst %,$(HOST_BUILD_DIR)/src/%,$(prog)) $(1)/bin/g$(prog); )
  59. $(foreach prog,$(filter g%,$(PKG_PROGRAMS)),$(INSTALL_BIN) $(patsubst %,$(HOST_BUILD_DIR)/src/%,$(prog)) $(1)/bin/$(prog); )
  60. $(foreach prog,$(filter-out g%,$(PKG_PROGRAMS)),g$(LN) g$(prog) $(1)/bin/$(prog); )
  61. $(foreach prog,$(filter g%,$(PKG_PROGRAMS)),g$(LN) $(prog) $(1)/bin/$(patsubst g%,%,$(prog)); )
  62. endef
  63. define Host/Uninstall
  64. #$(call Host/Compile/Default,uninstall) # Removes necessary symlinks
  65. -$(call Host/Compile/Default,maintainer-clean) # Clean bootstrap files from the release
  66. endef
  67. $(eval $(call HostBuild))