Makefile 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. # This file is part of the OpenADK project. OpenADK is copyrighted
  2. # material, please see the LICENCE file in the top-level directory.
  3. include $(TOPDIR)/rules.mk
  4. PKG_NAME:= busybox
  5. PKG_VERSION:= 1.17.1
  6. PKG_RELEASE:= 2
  7. PKG_MD5SUM:= c7fe7533b7fc4018b0b49a05ee0ee601
  8. PKG_DESCR:= Core utilities for embedded systems
  9. PKG_SECTION:= base
  10. PKG_URL:= http://www.busybox.net/
  11. PKG_SITES:= http://www.busybox.net/downloads/
  12. DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.bz2
  13. PKG_SUBPKGS:= BUSYBOX UDHCPD
  14. PKGSD_UDHCPD:= uDHCPD meta package
  15. PKGSC_UDHCPD:= net
  16. include $(TOPDIR)/mk/package.mk
  17. $(eval $(call PKG_template,BUSYBOX,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
  18. $(eval $(call PKG_template,UDHCPD,udhcpd,${PKG_VERSION}-${PKG_RELEASE},busybox,${PKGSD_UDHCPD},${PKGSC_UDHCPD}))
  19. SUB_INSTALLS-y:=
  20. SUB_INSTALLS-m:=
  21. SUB_INSTALLS-${ADK_PACKAGE_UDHCPD}+= udhcpd-install
  22. CONFIG_STYLE:= manual
  23. BUILD_STYLE:= manual
  24. INSTALL_STYLE:= manual
  25. ${TOPDIR}/.busyboxcfg: ${TOPDIR}/.config
  26. grep BUSYBOX_ $(TOPDIR)/.config|sed -e 's/BUSYBOX_/CONFIG_/' > \
  27. ${TOPDIR}/.busyboxcfg
  28. ${WRKBUILD}/.config: ${TOPDIR}/.busyboxcfg
  29. cp $(TOPDIR)/.busyboxcfg ${WRKBUILD}/.config
  30. $(SED) 's;@IDIR@;${WRKINST};' ${WRKBUILD}/.config
  31. do-configure: ${WRKBUILD}/.config
  32. ifeq ($(ADK_NATIVE),y)
  33. yes '' | \
  34. $(MAKE) V=1 \
  35. IPKG_ARCH="$(CPU_ARCH)" \
  36. ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) oldconfig $(MAKE_TRACE)
  37. else
  38. yes '' | \
  39. $(MAKE) V=1 CROSS_COMPILE="$(TARGET_CROSS)" \
  40. EXTRA_CFLAGS="$(TARGET_CFLAGS)" IPKG_ARCH="$(CPU_ARCH)" \
  41. ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) oldconfig $(MAKE_TRACE)
  42. endif
  43. do-build: do-configure
  44. ifeq ($(ADK_NATIVE),y)
  45. $(MAKE) V=1 \
  46. IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) busybox
  47. else
  48. $(MAKE) V=1 CROSS_COMPILE="$(TARGET_CROSS)" \
  49. IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) busybox
  50. endif
  51. do-install: ${WRKBUILD}/.config ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
  52. ifeq ($(ADK_NATIVE),y)
  53. $(MAKE) V=1 \
  54. IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) install $(MAKE_TRACE)
  55. else
  56. $(MAKE) V=1 CROSS_COMPILE="$(TARGET_CROSS)" \
  57. IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) install $(MAKE_TRACE)
  58. endif
  59. $(CP) $(WRKINST)/* $(IDIR_BUSYBOX)/
  60. ifeq ($(ADK_DEBUG),y)
  61. ${INSTALL_BIN} $(WRKBUILD)/busybox_unstripped \
  62. $(IDIR_BUSYBOX)/bin/busybox
  63. endif
  64. ifneq ($(strip ${ADK_PACKAGE_CFGFS}),)
  65. cd ${IDIR_BUSYBOX}/sbin && rm -f halt poweroff reboot
  66. endif
  67. udhcpd-install:
  68. ${INSTALL_DIR} ${IDIR_UDHCPD}/etc/
  69. ${INSTALL_DATA} ./files/udhcpd.conf ${IDIR_UDHCPD}/etc/
  70. rebuild:
  71. @if [ -f ${TOPDIR}/.rebuild.${PKG_NAME} ];then \
  72. rm ${WRKBUILD}/.build_done; \
  73. rm ${TOPDIR}/.rebuild.${PKG_NAME}; \
  74. fi
  75. fake: rebuild
  76. include ${TOPDIR}/mk/pkg-bottom.mk