12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- # This file is part of the OpenADK project. OpenADK is copyrighted
- # material, please see the LICENCE file in the top-level directory.
- include $(TOPDIR)/rules.mk
- PKG_NAME:= busybox
- PKG_VERSION:= 1.18.4
- PKG_RELEASE:= 1
- PKG_MD5SUM:= b03c5b46ced732679e525a920a1a62f5
- PKG_DESCR:= Core utilities for embedded systems
- PKG_SECTION:= base
- PKG_URL:= http://www.busybox.net/
- PKG_SITES:= http://www.busybox.net/downloads/
- DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.bz2
- PKG_SUBPKGS:= BUSYBOX UDHCPD
- PKGSD_UDHCPD:= uDHCPD meta package
- PKGSC_UDHCPD:= net
- include $(TOPDIR)/mk/package.mk
- $(eval $(call PKG_template,BUSYBOX,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
- $(eval $(call PKG_template,UDHCPD,udhcpd,${PKG_VERSION}-${PKG_RELEASE},busybox,${PKGSD_UDHCPD},${PKGSC_UDHCPD}))
- # This is how to extract the Config.in files from a _built_ busybox source tree:
- #|for c in $(find build_viprinux_arm_glibc/w-busybox-1.18.1-4/busybox-1.18.1/ -name Config.in); do
- #| c=$(sed s,build_viprinux_arm_glibc/w-busybox-1.18.1-4/busybox-1.18.1/,, <<< $c)
- #| mkdir -p package/busybox/config_new/$(dirname $c)
- #| cp build_viprinux_arm_glibc/w-busybox-1.18.1-4/busybox-1.18.1/$c package/busybox/config_new/$c
- #|done
- CONFIG_STYLE:= manual
- BUILD_STYLE:= manual
- INSTALL_STYLE:= manual
- BB_MAKE_FLAGS:= V=1 IPKG_ARCH="${CPU_ARCH}" ARCH="${ARCH}" GCC_HONOUR_COPTS=s \
- HOSTCC="${CC_FOR_BUILD}" HOSTCFLAGS="$(CFLAGS_FOR_BUILD)" \
- -C ${WRKBUILD}
- ifneq (${ADK_NATIVE},y)
- BB_MAKE_FLAGS+= CROSS_COMPILE="$(TARGET_CROSS)"
- endif
- # XXX: Although this looks like all new symbols are enabled when 'make oldconfig' runs, they're not.
- # In fact, you can pipe "yes ''" as well as "yes n", each time leading to the default value being
- # chosen for each unknown symbol.
- # A real solution for that task (disabling everything that's unknown, as we know better) is to
- # upgrade ${TOPDIR}/config so it understands the oldnoconfig target, and using that to update
- # the busybox config before compiling.
- # The workaround for now is to patch all busybox symbols to default n inside the busybox source
- # which do depend on non-existance of other packages outside the busybox source.
- do-configure:
- grep BUSYBOX_ $(TOPDIR)/.config|sed -e 's/BUSYBOX_/CONFIG_/' > \
- ${WRKBUILD}/.config
- $(SED) 's;@IDIR@;${WRKINST};' ${WRKBUILD}/.config
- yes '' | $(MAKE) ${BB_MAKE_FLAGS} oldconfig $(MAKE_TRACE)
- do-build:
- $(MAKE) ${BB_MAKE_FLAGS} busybox
- do-install:
- $(MAKE) ${BB_MAKE_FLAGS} install $(MAKE_TRACE)
- $(CP) $(WRKINST)/* $(IDIR_BUSYBOX)/
- ifeq ($(ADK_DEBUG),y)
- ${INSTALL_BIN} $(WRKBUILD)/busybox_unstripped \
- $(IDIR_BUSYBOX)/bin/busybox
- endif
- ifneq ($(strip ${ADK_PACKAGE_CFGFS}),)
- cd ${IDIR_BUSYBOX}/sbin && rm -f halt poweroff reboot
- endif
- udhcpd-install:
- ${INSTALL_DIR} ${IDIR_UDHCPD}/etc/
- ${INSTALL_DATA} ./files/udhcpd.conf ${IDIR_UDHCPD}/etc/
- include ${TOPDIR}/mk/pkg-bottom.mk
|