Browse Source

Merge branch 'master' of git+ssh://openadk.org/git/openadk

Conflicts:
	package/binutils/Makefile
Waldemar Brodkorb 13 years ago
parent
commit
b2e4bbd4e6
100 changed files with 705 additions and 423 deletions
  1. 71 15
      Config.in
  2. 2 12
      Makefile
  3. 0 1
      README
  4. 12 12
      config/Makefile
  5. 55 38
      mk/build.mk
  6. 3 3
      mk/buildhlp.mk
  7. 4 4
      mk/image.mk
  8. 7 1
      mk/kernel-build.mk
  9. 3 3
      mk/kernel.mk
  10. 3 3
      mk/modules.mk
  11. 9 4
      mk/package.mk
  12. 1 1
      mk/pkg-bottom.mk
  13. 0 9
      mk/split-cfg.mk
  14. 2 2
      mk/vars.mk
  15. 37 1
      package/.template/Makefile
  16. 1 1
      package/DirectFB/Makefile
  17. 9 2
      package/Makefile
  18. 11 10
      package/MesaLib/Makefile
  19. 1 0
      package/adkinstall/Makefile
  20. 1 1
      package/aiccu/Makefile
  21. 2 2
      package/aircrack-ng/Makefile
  22. 2 2
      package/alix-switch/Makefile
  23. 4 7
      package/alsa-utils/Makefile
  24. 6 6
      package/apr-util/Makefile
  25. 1 1
      package/apr/Makefile
  26. 1 1
      package/arpd/Makefile
  27. 2 2
      package/arpwatch/Makefile
  28. 19 20
      package/asterisk/Makefile
  29. 5 4
      package/atftp/Makefile
  30. 2 2
      package/atk/Makefile
  31. 1 0
      package/aufs2-util/Makefile
  32. 1 1
      package/autossh/Makefile
  33. 9 7
      package/avahi/Makefile
  34. 5 4
      package/axtls/Makefile
  35. 1 9
      package/base-files/Makefile
  36. 3 1
      package/bc/Makefile
  37. 1 0
      package/bigreqsproto/Makefile
  38. 18 16
      package/bind/Makefile
  39. 4 4
      package/binutils/Makefile
  40. 2 2
      package/bitlbee/Makefile
  41. 1 1
      package/bluez-firmware/Makefile
  42. 2 2
      package/bluez/Makefile
  43. 1 1
      package/bogofilter/Makefile
  44. 8 20
      package/busybox/Makefile
  45. 2 2
      package/busybox/config/Config.in
  46. 10 10
      package/busybox/config/coreutils/Config.in
  47. 1 1
      package/busybox/config/debianutils/Config.in
  48. 1 1
      package/busybox/config/editors/Config.in
  49. 214 0
      package/busybox/patches/006-od-bloat.patch
  50. 3 3
      package/bwm/Makefile
  51. 1 1
      package/bzip2/Makefile
  52. 1 1
      package/bzr/Makefile
  53. 1 1
      package/cairo/Makefile
  54. 1 1
      package/ccid/Makefile
  55. 9 4
      package/cfgfs/Makefile
  56. 1 1
      package/cgilib/Makefile
  57. 1 1
      package/chillispot/Makefile
  58. 1 1
      package/collectd/Makefile
  59. 1 0
      package/compositeproto/Makefile
  60. 3 2
      package/conntrack-tools/Makefile
  61. 4 3
      package/coreutils/Makefile
  62. 2 1
      package/cpufrequtils/Makefile
  63. 3 3
      package/cryptinit/Makefile
  64. 4 4
      package/cryptsetup/Makefile
  65. 1 1
      package/ctorrent/Makefile
  66. 2 3
      package/cups/Makefile
  67. 9 8
      package/curl/Makefile
  68. 0 8
      package/cvs/Makefile
  69. 2 2
      package/cxxtools/Makefile
  70. 4 3
      package/cyrus-sasl/Makefile
  71. 1 0
      package/damageproto/Makefile
  72. 3 3
      package/dansguardian/Makefile
  73. 4 14
      package/davfs2/Makefile
  74. 1 1
      package/dbus-glib/Makefile
  75. 2 2
      package/dbus/Makefile
  76. 1 1
      package/deco/Makefile
  77. 0 38
      package/depmaker
  78. 2 3
      package/dhcp-forwarder/Makefile
  79. 4 4
      package/dhcp/Makefile
  80. 1 1
      package/dialog/Makefile
  81. 2 2
      package/digitemp/Makefile
  82. 4 4
      package/dillo/Makefile
  83. 1 1
      package/dnsmasq/Makefile
  84. 1 1
      package/dosfstools/Makefile
  85. 1 1
      package/dovecot/Makefile
  86. 1 0
      package/dri2proto/Makefile
  87. 5 6
      package/dropbear/Makefile
  88. 2 2
      package/dsniff/Makefile
  89. 14 14
      package/e2fsprogs/Makefile
  90. 4 1
      package/eglibc/Makefile
  91. 1 1
      package/elinks/Makefile
  92. 1 1
      package/esound/Makefile
  93. 1 1
      package/ethtool/Makefile
  94. 1 0
      package/evieext/Makefile
  95. 1 1
      package/evilwm/Makefile
  96. 10 9
      package/exmap/Makefile
  97. 14 1
      package/expat/Makefile
  98. 4 3
      package/ez-ipupdate/Makefile
  99. 2 0
      package/faad2/Makefile
  100. 1 3
      package/fetchmail/Makefile

+ 71 - 15
Config.in

@@ -32,23 +32,9 @@ config ADK_HOST
 config ADK_DEVELSYSTEM
 	bool "Compile a ADK development system"
 	default n
-	select BUSYBOX_CMP
-	select BUSYBOX_COMM
-	select BUSYBOX_EXPR
-	select BUSYBOX_INSTALL
-	select BUSYBOX_MKTEMP
-	select BUSYBOX_UNZIP
-	select BUSYBOX_RMDIR
-	select BUSYBOX_SPLIT
-	select BUSYBOX_TAC
-	select BUSYBOX_TEE
-	select BUSYBOX_WGET
-	select BUSYBOX_YES
-	select BUSYBOX_TRUE
 	select ADK_PACKAGE_BASH
 	select ADK_PACKAGE_BINUTILS
 	select ADK_PACKAGE_BZIP2
-	select ADK_PACKAGE_CPIO
 	select ADK_PACKAGE_DIFFUTILS
 	select ADK_PACKAGE_FILE
 	select ADK_PACKAGE_GAWK
@@ -82,7 +68,7 @@ config ADK_DEBUG
 	default n
 	help
 	  All packages and libc will be compiled and packaged with debug information.
-	  Mostly useful for NFS root or big USB/CF disk setups.
+	  Mostly useful for NFS root or big USB/CF or hard disk setups.
 
 config ADK_STATIC
 	bool "Link applications statically by default"
@@ -153,6 +139,76 @@ config ADK_HOST_CYGWIN
 
 endchoice
 
+choice
+prompt "Hardware profile (autodetection on OpenADK systems)"
+config ADK_HARDWARE_NOPROFILE
+	bool "no profile"
+
+config ADK_HARDWARE_IBMX40
+	bool "IBM X40 laptop"
+	select ADK_TARGET_WITH_USB
+	select ADK_TARGET_WITH_VGA
+	select ADK_TARGET_WITH_INPUT
+	select ADK_TARGET_WITH_RTC
+	select ADK_TARGET_WITH_HDD
+	select ADK_KERNEL_NLS
+	select ADK_KERNEL_EXT2_FS
+	select ADK_KERNEL_SCSI
+	select ADK_KERNEL_ATA
+	select ADK_KERNEL_BLK_DEV_SD
+	select ADK_KERNEL_INPUT_KEYBOARD
+	select ADK_KERNEL_NETDEVICES
+	select ADK_KERNEL_NET_PCI
+	select ADK_KERNEL_NET_ETHERNET
+	select ADK_KERNEL_MII
+	select ADK_KERNEL_SWAP
+	select ADK_KPACKAGE_KMOD_MAC80211
+	select ADK_KPACKAGE_KMOD_ATH5K
+	select ADK_KERNEL_MAC80211_LEDS
+        select ADK_KERNEL_ATH_COMMON
+	select ADK_KPACKAGE_KMOD_SND
+	select ADK_KPACKAGE_KMOD_SND_OSSEMUL
+	select ADK_PACKAGE_KMOD_USB_CONTROLLER
+	select ADK_KPACKAGE_KMOD_USB
+	select ADK_KPACKAGE_KMOD_USB_EHCI_HCD
+	select ADK_KPACKAGE_KMOD_USB_OHCI_HCD
+	help
+         Hardware profile for IBM X40 laptop's.
+
+config ADK_HARDWARE_YEELONG
+	bool "Yeelong laptop"
+	select ADK_TARGET_WITH_USB
+	select ADK_TARGET_WITH_VGA
+	select ADK_TARGET_WITH_INPUT
+	select ADK_TARGET_WITH_RTC
+	select ADK_TARGET_WITH_HDD
+	select ADK_KERNEL_NLS
+	select ADK_KERNEL_EXT2_FS
+	select ADK_KERNEL_SCSI
+	select ADK_KERNEL_ATA
+	select ADK_KERNEL_BLK_DEV_SD
+	select ADK_KERNEL_INPUT_KEYBOARD
+	select ADK_KERNEL_NETDEVICES
+	select ADK_KERNEL_NET_PCI
+	select ADK_KERNEL_NET_ETHERNET
+	select ADK_KERNEL_MII
+	select ADK_KERNEL_SWAP
+	select ADK_KPACKAGE_KMOD_MAC80211
+	select ADK_KPACKAGE_KMOD_EEPROM_93CX6
+	select ADK_KPACKAGE_KMOD_RTL8187
+	select ADK_KPACKAGE_KMOD_SND
+	select ADK_KPACKAGE_KMOD_SND_CS5535AUDIO
+	select ADK_KPACKAGE_KMOD_SND_OSSEMUL
+	select ADK_PACKAGE_KMOD_USB_CONTROLLER
+	select ADK_KPACKAGE_KMOD_USB
+	select ADK_KPACKAGE_KMOD_USB_EHCI_HCD
+	select ADK_KPACKAGE_KMOD_USB_OHCI_HCD
+	help
+         Hardware profile for Lemotes Yeelong laptop.
+	 Selects drivers for wireless card, usb controller and sound card.
+
+endchoice
+
 endmenu
 
 source "target/Config.in"

+ 2 - 12
Makefile

@@ -61,9 +61,6 @@ pkg-help:
 	@echo 'This does not automatically resolve package dependencies!'
 
 dev-help:
-	@echo 'Regenerate menu information via "make menu"'
-	@echo 'Regenerate dependency information via "make dep"'
-	@echo
 	@echo 'Fast way of updating package patches:'
 	@echo '  run "make package=<pkgname> clean" to start with a good base'
 	@echo '  run "make package=<pkgname> patch" to fetch, unpack and patch the source'
@@ -180,15 +177,6 @@ NO_ERROR=0
 		echo "GNU bash needs to be installed."; \
 		exit 1; \
 	fi
-	@if ! mksh -c 'echo $$KSH_VERSION' 2>&1 | grep -F 'MIRBSD' >/dev/null 2>&1; then \
-		echo "MirBSD ksh (mksh) needs to be installed."; \
-		exit 1; \
-	else \
-		if [ $$(mksh -c 'echo $$KSH_VERSION' |cut -d ' ' -f 3|sed "s#R##") -le 34 ]; then \
-			echo "MirBSD ksh is too old. R35 or higher needed."; \
-			exit 1; \
-		fi \
-	fi
 	@if test x"$$(umask 2>/dev/null | sed 's/00*22/OK/')" != x"OK"; then \
 		echo >&2 Error: you must build with umask 022, sorry.; \
 		exit 1; \
@@ -221,6 +209,7 @@ NO_ERROR=0
 	@echo 'LC_ALL:=C' >>prereq.mk
 	@echo 'MAKE:=$${GMAKE}' >>prereq.mk
 	@echo "OStype:=$$(env uname)" >>prereq.mk
+	@echo "ADKtype:=$$(cat /etc/adktarget 2>/dev/null)" >>prereq.mk
 	@echo "_PATH:=$$PATH" >>prereq.mk
 	@echo "PATH:=\$${TOPDIR}/scripts:/usr/sbin:$$PATH" >>prereq.mk
 	@echo "SHELL:=$$(which bash)" >>prereq.mk
@@ -228,6 +217,7 @@ NO_ERROR=0
 		CC='${CC}' CPPFLAGS='${CPPFLAGS}' \
 	    	bash scripts/scan-tools.sh
 	@echo '===> Prerequisites checked successfully.'
+	@touch .adkinit
 	@touch $@
 
 .PHONY: prereq prereq-noerror

+ 0 - 1
README

@@ -5,7 +5,6 @@ This is a menu based buildsystem for your home made embedded Linux system.
 
 Before you can start you need to install some tools: 
 - bash
-- mksh
 - gcc 
 - binutils 
 - GNU make

+ 12 - 12
config/Makefile

@@ -53,25 +53,25 @@ GCONF_OBJS=$(patsubst %.c,%.o, $(GCONF_SRC))
 SHARED_OBJS=$(patsubst %.c,%.o, $(SHARED_SRC))
 
 conf: $(CONF_OBJS) $(SHARED_OBJS)
-	$(HOSTCC) $(HOSTCFLAGS) $(NATIVE_LDFLAGS) $^ -o $@
+	@$(HOSTCC) $(HOSTCFLAGS) $(NATIVE_LDFLAGS) $^ -o $@
 
 mconf: $(MCONF_OBJS) $(SHARED_OBJS)
-	$(HOSTCC) $(HOSTCFLAGS) $(NATIVE_LDFLAGS) $^ -o $@ $(LIBS)
+	@$(HOSTCC) $(HOSTCFLAGS) $(NATIVE_LDFLAGS) $^ -o $@ $(LIBS)
 
 gconf: $(GCONF_OBJS) $(SHARED_OBJS)
-	$(HOSTCC) $(HOSTCFLAGS) $(NATIVE_LDFLAGS) $^ -o $@ $(HOSTGTKLIBS)
+	@$(HOSTCC) $(HOSTCFLAGS) $(NATIVE_LDFLAGS) $^ -o $@ $(HOSTGTKLIBS)
 
 $(CONF_OBJS): %.o : %.c $(SHARED_DEPS)
-	$(HOSTCC) $(HOSTCFLAGS) -I. -c $< -o $@
+	@$(HOSTCC) $(HOSTCFLAGS) -I. -c $< -o $@
 
 $(MCONF_OBJS): %.o : %.c $(SHARED_DEPS)
-	$(HOSTCC) $(HOSTCFLAGS) $(HOSTNCURSES) -I. -c $< -o $@
+	@$(HOSTCC) $(HOSTCFLAGS) $(HOSTNCURSES) -I. -c $< -o $@
 
 $(GCONF_OBJS): %.o : %.c $(SHARED_DEPS)
-	$(HOSTCC) $(HOSTCFLAGS) $(HOSTGTKCFLAGS) -DLKC_DIRECT_LINK -I. -c $< -o $@
+	@$(HOSTCC) $(HOSTCFLAGS) $(HOSTGTKCFLAGS) -DLKC_DIRECT_LINK -I. -c $< -o $@
 
 glob.o: glob.c $(SHARED_DEPS)
-	$(HOSTCC) $(HOSTCFLAGS) -I. -c glob.c -o $@
+	@$(HOSTCC) $(HOSTCFLAGS) -I. -c glob.c -o $@
 
 lkc_defs.h: lkc_proto.h
 	@sed < $< > $@ 's/P(\([^,]*\),.*/#define \1 (\*\1_p)/'
@@ -105,19 +105,19 @@ lex.zconf.o: lex.zconf.c $(SHARED_DEPS)
 	$(HOSTCC) $(HOSTCFLAGS) -I. -c $< -o $@
 
 lex.zconf.c: lex.zconf.c_shipped
-	$(CP) lex.zconf.c_shipped lex.zconf.c
+	@$(CP) lex.zconf.c_shipped lex.zconf.c
 
 zconf.hash.c: zconf.hash.c_shipped
-	$(CP) zconf.hash.c_shipped zconf.hash.c
+	@$(CP) zconf.hash.c_shipped zconf.hash.c
 
 zconf.tab.o: zconf.tab.c zconf.hash.c lex.zconf.c confdata.c expr.c symbol.c menu.c $(SHARED_DEPS)
-	$(HOSTCC) $(HOSTCFLAGS) -I. -c $< -o $@
+	@$(HOSTCC) $(HOSTCFLAGS) -I. -c $< -o $@
 
 zconf.tab.c: zconf.tab.c_shipped
-	$(CP) zconf.tab.c_shipped zconf.tab.c
+	@$(CP) zconf.tab.c_shipped zconf.tab.c
 
 zconf.tab.h: zconf.tab.h_shipped
-	$(CP) zconf.tab.h_shipped zconf.tab.h
+	@$(CP) zconf.tab.h_shipped zconf.tab.h
 endif
 
 .PHONY: ncurses

+ 55 - 38
mk/build.mk

@@ -64,8 +64,11 @@ noconfig_targets:=	menuconfig \
 			defconfig \
 			tags
 
-POSTCONFIG=		-@ \
+POSTCONFIG=		-@\
+	if [ -f .adkinit ];then rm .adkinit;\
+	else \
 	if [ -f .config.old ];then \
+		$(TOPDIR)/bin/tools/pkgrebuild;\
 		rebuild=0; \
 		if [ "$$(grep ^BUSYBOX .config|md5sum)" != "$$(grep ^BUSYBOX .config.old|md5sum)" ];then \
 			touch .rebuild.busybox;\
@@ -76,8 +79,9 @@ POSTCONFIG=		-@ \
 			rebuild=1;\
 		fi; \
 		if [ $$rebuild -eq 1 ];then \
-			cp .config .config.old; \
+			cp .config .config.old;\
 		fi; \
+	fi; \
 	fi
 
 # Pull in the user's configuration file
@@ -87,17 +91,17 @@ endif
 
 ifeq ($(strip $(ADK_HAVE_DOT_CONFIG)),y)
 include $(TOPDIR)/rules.mk
-include ${TOPDIR}/mk/split-cfg.mk
 
 all: world
 
 ${TOPDIR}/package/Depends.mk: ${TOPDIR}/.config $(wildcard ${TOPDIR}/package/*/Makefile)
-	mksh ${TOPDIR}/package/depmaker
+	$(TOPDIR)/bin/tools/depmaker > ${TOPDIR}/package/Depends.mk
+
 
 .NOTPARALLEL:
 .PHONY: all world clean cleantarget cleandir distclean image_clean
 
-world: $(DISTDIR) $(BUILD_DIR) $(TARGET_DIR) $(PACKAGE_DIR) ${TOPDIR}/.ADK_HAVE_DOT_CONFIG
+world: $(DISTDIR) $(BUILD_DIR) $(TARGET_DIR) $(PACKAGE_DIR)
 	${BASH} ${TOPDIR}/scripts/scan-pkgs.sh
 ifeq ($(ADK_NATIVE),y)
 	$(MAKE) -f mk/build.mk toolchain/kernel-headers-prepare tools/install target/config-prepare target/compile package/compile root_clean package/install package_index target/install
@@ -137,10 +141,10 @@ ifeq ($(ADK_TARGET_PACKAGE_IPKG),y)
 	echo "option offline_root ${TARGET_DIR}" >>$(STAGING_DIR)/etc/ipkg.conf
 endif
 
-package/%: ${TOPDIR}/.ADK_HAVE_DOT_CONFIG ${STAGING_DIR}/etc/ipkg.conf ${TOPDIR}/package/Depends.mk
+package/%: ${STAGING_DIR}/etc/ipkg.conf ${TOPDIR}/package/Depends.mk
 	$(MAKE) -C package $(patsubst package/%,%,$@)
 
-target/%: ${TOPDIR}/.ADK_HAVE_DOT_CONFIG
+target/%:
 	$(MAKE) -C target $(patsubst target/%,%,$@)
 
 toolchain/%: ${STAGING_DIR}
@@ -164,9 +168,15 @@ switch:
 	else echo "No old target config found";mv .config .config.bak; make TARGET=${TARGET};fi
 
 kernelconfig:
+ifeq ($(ADKtype),)
 	cp $(TOPDIR)/target/$(ADK_TARGET)/kernel.config $(BUILD_DIR)/linux/.config
 	$(MAKE) -C $(BUILD_DIR)/linux/ ARCH=$(ARCH) menuconfig
 	cp $(BUILD_DIR)/linux/.config $(TOPDIR)/target/$(ADK_TARGET)/kernel.config
+else
+	cp $(TOPDIR)/target/$(ADKtype)/kernel.config $(BUILD_DIR)/linux/.config
+	$(MAKE) -C $(BUILD_DIR)/linux/ ARCH=$(ARCH) menuconfig
+	cp $(BUILD_DIR)/linux/.config $(TOPDIR)/target/$(ADKtype)/kernel.config
+endif
 
 # create a new package from package/.template
 newpackage:
@@ -177,13 +187,7 @@ newpackage:
 	$(SED) 's#@PKG@#$(PKG)#' $(TOPDIR)/package/$(PKG)/Makefile
 	$(SED) 's#@VER@#$(VER)#' $(TOPDIR)/package/$(PKG)/Makefile
 	@echo "Edit package/$(PKG)/Makefile to complete"
-	@echo "choose PKG_SECTION to add it to an existent submenu"  
 
-#############################################################
-#
-# Cleanup and misc junk
-#
-#############################################################
 root_clean:
 	@$(TRACE) root_clean
 	rm -rf $(TARGET_DIR)
@@ -206,9 +210,8 @@ clean:
 		done \
 	done
 	rm -rf $(BUILD_DIR) $(BIN_DIR) $(TARGET_DIR) \
-		${TOPDIR}/.cfg_${ADK_TARGET}_${ADK_LIBC} \
 	    	${TOPDIR}/package/pkglist.d
-	rm -f ${TOPDIR}/package/*/info.mk ${TOPDIR}/package/Depends.mk
+	rm -f ${TOPDIR}/package/Depends.mk
 
 cleankernel:
 	@$(TRACE) cleankernel
@@ -216,34 +219,28 @@ cleankernel:
 
 cleandir:
 	@$(TRACE) cleandir
-	@$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE)
+	@$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE) 
 	rm -rf $(BUILD_DIR_PFX) $(BIN_DIR_PFX) $(TARGET_DIR_PFX) \
-	    ${TOPDIR}/.cfg* ${TOPDIR}/package/pkglist.d
-	rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_PARENT_PFX) \
-	    $(TOOLS_BUILD_DIR)
-	rm -f .menu .tmpconfig.h ${TOPDIR}/package/*/info.mk \
+	    ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d
+	rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_PARENT_PFX) $(TOOLS_BUILD_DIR)
+	rm -f .menu .tmpconfig.h .rebuild* \
 	    ${TOPDIR}/package/Depends.mk ${TOPDIR}/prereq.mk \
-	    .busyboxcfg
 
 cleantarget:
 	@$(TRACE) cleantarget
 	@$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE)
-	rm -rf $(BUILD_DIR) $(BIN_DIR) $(TARGET_DIR) \
-		${TOPDIR}/.cfg_${ADK_TARGET}_${ADK_LIBC}
+	rm -rf $(BUILD_DIR) $(BIN_DIR) $(TARGET_DIR)
 	rm -rf $(TOOLCHAIN_BUILD_DIR) $(STAGING_PARENT)
-	rm -f .tmpconfig.h ${TOPDIR}/package/*/info.mk \
-		.busyboxcfg all.config .defconfig
+	rm -f .tmpconfig.h all.config .defconfig
 
 distclean:
 	@$(TRACE) distclean
 	@$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE)
 	@rm -rf $(BUILD_DIR_PFX) $(BIN_DIR_PFX) $(TARGET_DIR_PFX) $(DISTDIR) \
-	    ${TOPDIR}/.cfg* ${TOPDIR}/package/pkglist.d
-	@rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_PARENT_PFX) \
-		$(TOOLS_BUILD_DIR)
+	    ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d
+	@rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_PARENT_PFX) $(TOOLS_BUILD_DIR)
 	@rm -f .config* .defconfig .tmpconfig.h all.config ${TOPDIR}/prereq.mk \
-	    .menu ${TOPDIR}/package/*/info.mk ${TOPDIR}/package/Depends.mk \
-	    .busyboxcfg .ADK_HAVE_DOT_CONFIG
+	    .menu ${TOPDIR}/package/Depends.mk .ADK_HAVE_DOT_CONFIG .rebuild.*
 
 else # ! ifeq ($(strip $(ADK_HAVE_DOT_CONFIG)),y)
 
@@ -293,6 +290,12 @@ ifeq (${OStype},Darwin)
 endif
 ifneq (,$(filter CYGWIN%,${OStype}))
 	@echo ADK_HOST_CYGWIN=y > $(TOPDIR)/.defconfig
+endif
+ifeq ($(ADKtype),ibmx40)
+	@echo ADK_HARDWARE_IBMX40=y >> $(TOPDIR)/.defconfig
+endif
+ifeq ($(ADKtype),lemote)
+	@echo ADK_HARDWARE_YEELONG=y >> $(TOPDIR)/.defconfig
 endif
 	@if [ ! -z "$(TARGET)" ];then \
 		grep "^config" target/Config.in \
@@ -364,6 +367,12 @@ ifeq (${OStype},Darwin)
 endif
 ifneq (,$(filter CYGWIN%,${OStype}))
 	@echo ADK_HOST_CYGWIN=y > $(TOPDIR)/all.config
+endif
+ifeq ($(ADKtype),ibmx40)
+	@echo ADK_HARDWARE_IBMX40=y >> $(TOPDIR)/all.config
+endif
+ifeq ($(ADKtype),lemote)
+	@echo ADK_HARDWARE_YEELONG=y >> $(TOPDIR)/all.config
 endif
 	@if [ ! -z "$(TARGET)" ];then \
 		grep "^config" target/Config.in \
@@ -411,21 +420,21 @@ ifneq (,$(filter wrap%,${TARGET}))
 	@echo ADK_LINUX_ALIX=y >> $(TOPDIR)/all.config
 endif
 
-menuconfig: $(CONFIG)/mconf defconfig .menu
+menuconfig: $(CONFIG)/mconf defconfig .menu package/Config.in.auto
 	@if [ ! -f .config ];then \
 		$(CONFIG)/conf -D .defconfig $(CONFIG_CONFIG_IN); \
 	fi
 	@$(CONFIG)/mconf $(CONFIG_CONFIG_IN)
 	${POSTCONFIG}
 
-guiconfig: $(CONFIG)/gconf defconfig .menu
+guiconfig: $(CONFIG)/gconf defconfig .menu package/Config.in.auto
 	@if [ ! -f .config ];then \
 		$(CONFIG)/conf -D .defconfig $(CONFIG_CONFIG_IN); \
 	fi
 	@$(CONFIG)/gconf $(CONFIG_CONFIG_IN)
 	${POSTCONFIG}
 
-_config: $(CONFIG)/conf .menu
+_config: $(CONFIG)/conf .menu package/Config.in.auto
 	-@touch .config
 	@$(CONFIG)/conf ${W} $(CONFIG_CONFIG_IN)
 	${POSTCONFIG}
@@ -438,10 +447,10 @@ _mconfig2: ${CONFIG}/conf modconfig .menu
 distclean:
 	@$(MAKE) -C $(CONFIG) clean
 	@rm -rf $(BUILD_DIR_PFX) $(BIN_DIR_PFX) $(TARGET_DIR_PFX) $(DISTDIR) \
-	    ${TOPDIR}/.cfg* ${TOPDIR}/package/pkglist.d 
+	    ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d
 	@rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_PARENT_PFX) $(TOOLS_BUILD_DIR)
 	@rm -f .config* .defconfig .tmpconfig.h all.config ${TOPDIR}/prereq.mk \
-	    .menu ${TOPDIR}/package/*/info.mk ${TOPDIR}/package/Depends.mk .ADK_HAVE_DOT_CONFIG
+	    .menu .rebuild.* ${TOPDIR}/package/Depends.mk .ADK_HAVE_DOT_CONFIG
 
 
 endif # ! ifeq ($(strip $(ADK_HAVE_DOT_CONFIG)),y)
@@ -495,14 +504,22 @@ bulkallmod:
 	    ) 2>&1 | tee $(TOPDIR)/bin/$${target}_$$libc/$$target-$$libc-$$fs.log; \
 	done <${TOPDIR}/target/bulk.lst
 
-menu .menu: $(wildcard ${TOPDIR}/package/*/Makefile)
+${TOPDIR}/bin/tools/pkgmaker:
+	@mkdir -p $(TOPDIR)/bin/tools
+	@$(HOSTCC) -g -o $@ tools/adk/pkgmaker.c tools/adk/sortfile.c tools/adk/strmap.c
+
+${TOPDIR}/bin/tools/pkgrebuild:
+	@mkdir -p $(TOPDIR)/bin/tools
+	@$(HOSTCC) -g -o $@ tools/adk/pkgrebuild.c tools/adk/strmap.c
+
+package/Config.in.auto menu .menu: $(wildcard ${TOPDIR}/package/*/Makefile) ${TOPDIR}/bin/tools/pkgmaker ${TOPDIR}/bin/tools/pkgrebuild
 	@echo "Generating menu structure ..."
-	mksh $(TOPDIR)/package/pkgmaker
+	@$(TOPDIR)/bin/tools/pkgmaker
 	@:>.menu
 
 dep:
 	@echo "Generating dependencies ..."
-	mksh $(TOPDIR)/package/depmaker
+	$(TOPDIR)/bin/tools/depmaker > ${TOPDIR}/package/Depends.mk
 
 .PHONY: menu dep
 

+ 3 - 3
mk/buildhlp.mk

@@ -29,7 +29,7 @@ post-extract:
 ifeq ($(strip ${NO_DISTFILES}),1)
 ${WRKDIST}/.extract_done:
 	rm -rf ${WRKDIST} ${WRKSRC} ${WRKBUILD}
-	mkdir -p ${WRKDIR} ${WRKDIST}
+	@mkdir -p ${WRKDIR} ${WRKDIST}
 	${MAKE} do-extract
 	@${MAKE} post-extract
 	touch $@
@@ -57,9 +57,9 @@ ifeq ($(strip ${__use_generic_patch_target}),42)
 post-patch:
 ${WRKDIST}/.prepared: ${WRKDIST}/.extract_done
 	[ ! -d ./patches/${PKG_VERSION} ] || ${PREVENT_PATCH} ${PATCH} ${WRKDIST} ./patches \
-	    '{patch-!(*.orig),*.patch}'
+	    '{patch-!(*.orig),*.patch}' $(MAKE_TRACE)
 	[ ! -d ./patches ] || ${PREVENT_PATCH} ${PATCH} ${WRKDIST} ./patches \
-	    '{patch-!(*.orig),*.patch}'
+	    '{patch-!(*.orig),*.patch}' $(MAKE_TRACE)
 	[ ! -d ./src ] || (cd src; $(PREVENT_PATCH) cp -Rp . ${WRKDIST}/) \
 		$(MAKE_TRACE)
 	@${MAKE} post-patch $(MAKE_TRACE)

+ 4 - 4
mk/image.mk

@@ -22,7 +22,7 @@ image-prepare-post:
 	fi
 
 KERNEL_PKGDIR:=$(LINUX_BUILD_DIR)/kernel-pkg
-KERNEL_PKG:=$(PACKAGE_DIR)/kernel_$(ADK_TARGET)-$(KERNEL_VERSION)_$(CPU_ARCH).$(PKG_SUFFIX)
+KERNEL_PKG:=$(PACKAGE_DIR)/kernel_$(KERNEL_VERSION)_$(CPU_ARCH).$(PKG_SUFFIX)
 
 kernel-package: $(LINUX_DIR)/vmlinux
 	$(TRACE) target/$(ADK_TARGET)-create-kernel-package
@@ -30,7 +30,7 @@ kernel-package: $(LINUX_DIR)/vmlinux
 	@mkdir -p $(KERNEL_PKGDIR)/boot
 	cp $(KERNEL) $(KERNEL_PKGDIR)/boot/vmlinuz-adk
 	@${BASH} ${SCRIPT_DIR}/make-ipkg-dir.sh ${KERNEL_PKGDIR} \
-	    ../linux/kernel.control ${ADK_TARGET}-${KERNEL_VERSION} ${CPU_ARCH}
+	    ../linux/kernel.control ${KERNEL_VERSION} ${CPU_ARCH}
 	$(PKG_BUILD) $(KERNEL_PKGDIR) $(PACKAGE_DIR) $(MAKE_TRACE)
 	$(TRACE) target/$(ADK_TARGET)-install-kernel-package
 	$(PKG_INSTALL) $(KERNEL_PKG) $(MAKE_TRACE)
@@ -51,7 +51,7 @@ ${BIN_DIR}/${ROOTFSUSERTARBALL}: ${TARGET_DIR}
 ${BIN_DIR}/${INITRAMFS}: ${TARGET_DIR}
 	cd ${TARGET_DIR}; find . | sed -n '/^\.\//s///p' | \
 		sed "s#\(.*\)#:0:0::::::\1#" | sort | \
-	    ${STAGING_TOOLS}/bin/cpio -o -C512 -Hnewc -P | \
+	    ${TOPDIR}/bin/tools/cpio -o -C512 -Hnewc -P | \
 		${ADK_COMPRESSION_TOOL} >$@ 2>/dev/null
 
 ${BUILD_DIR}/${INITRAMFS_PIGGYBACK}: ${TARGET_DIR}
@@ -59,7 +59,7 @@ ${BUILD_DIR}/${INITRAMFS_PIGGYBACK}: ${TARGET_DIR}
 		$(LINUX_DIR)/.config
 	cd ${TARGET_DIR}; find . | sed -n '/^\.\//s///p' | \
 		sed "s#\(.*\)#:0:0::::::\1#" | sort | \
-	    ${STAGING_TOOLS}/bin/cpio -o -C512 -Hnewc -P >$@ 2>/dev/null
+	    ${TOPDIR}/bin/tools/cpio -o -C512 -Hnewc -P >$@ 2>/dev/null
 
 ${BIN_DIR}/${ROOTFSSQUASHFS}: ${TARGET_DIR}
 	${STAGING_TOOLS}/bin/mksquashfs ${TARGET_DIR} \

+ 7 - 1
mk/kernel-build.mk

@@ -9,6 +9,12 @@ $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/linux-$(KERNE
 	$(TRACE) target/$(ADK_TARGET)-kernel-patch
 	$(PATCH) $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/linux-$(KERNEL_VERSION) ../linux/patches/$(KERNEL_VERSION) *.patch $(MAKE_TRACE)
 	$(PATCH) $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/linux-$(KERNEL_VERSION) ../$(ADK_TARGET)/patches *.patch $(MAKE_TRACE)
+ifeq ($(ADK_NATIVE),y)
+	if [ -f /etc/adktarget ];then \
+		target=$$(cat /etc/adktarget); \
+		$(PATCH) $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/linux-$(KERNEL_VERSION) ../$$target/patches *.patch $(MAKE_TRACE); \
+	fi
+endif
 	touch $@
 
 $(LINUX_DIR)/.prepared: $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/linux-$(KERNEL_VERSION)/.patched
@@ -17,7 +23,7 @@ $(LINUX_DIR)/.prepared: $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PK
 	mkdir -p $(LINUX_BUILD_DIR)/kmod-control
 	touch $@
 
-$(LINUX_DIR)/.config: $(LINUX_DIR)/.prepared $(BUILD_DIR)/.kernelconfig
+$(LINUX_DIR)/.config: $(LINUX_DIR)/.prepared $(BUILD_DIR)/.kernelconfig $(TOPDIR)/mk/modules.mk
 	$(TRACE) target/$(ADK_TARGET)-kernel-configure
 	for f in $(TARGETS);do if [ -f $$f ];then rm $$f;fi;done $(MAKE_TRACE)
 	$(CP) $(BUILD_DIR)/.kernelconfig $(LINUX_DIR)/.config

+ 3 - 3
mk/kernel.mk

@@ -28,9 +28,9 @@ TARGETS:=
 #
 define KMOD_template
 
-IDEPENDK_$(1):=kernel ($(ADK_TARGET)-$(KERNEL_VERSION)) $(foreach pkg,$(5),", $(pkg)")
+IDEPENDK_$(1):=kernel ($(KERNEL_VERSION)) $(foreach pkg,$(5),", $(pkg)")
 
-PKG_$(1) := $(PACKAGE_DIR)/kmod-$(2)_$(ADK_TARGET)-$(KERNEL_VERSION)-$(KERNEL_RELEASE)_$(CPU_ARCH).$(PKG_SUFFIX)
+PKG_$(1) := $(PACKAGE_DIR)/kmod-$(2)_$(KERNEL_VERSION)-$(KERNEL_RELEASE)_$(CPU_ARCH).$(PKG_SUFFIX)
 I_$(1) := $(KMOD_BUILD_DIR)/ipkg/$(2)
 
 ifeq ($$(ADK_KPACKAGE_KMOD_$(1)),m)
@@ -50,7 +50,7 @@ $$(PKG_$(1)):
 	echo "Description: kernel module $(2)" >> $(LINUX_BUILD_DIR)/kmod-control/kmod-$(2).control
 	${BASH} ${SCRIPT_DIR}/make-ipkg-dir.sh $$(I_$(1)) \
 	    $(LINUX_BUILD_DIR)/kmod-control/kmod-$(2).control \
-	    $(ADK_TARGET)-$(KERNEL_VERSION)-$(KERNEL_RELEASE) $(CPU_ARCH)
+	    $(KERNEL_VERSION)-$(KERNEL_RELEASE) $(CPU_ARCH)
 	echo "Depends: $$(IDEPENDK_$(1))" >> $$(I_$(1))/CONTROL/control
 ifneq ($(strip $(3)),)
 	mkdir -p $$(I_$(1))/lib/modules/$(KERNEL_VERSION)

+ 3 - 3
mk/modules.mk

@@ -61,7 +61,7 @@ $(eval $(call KMOD_template,SKY2,sky2,\
 $(eval $(call KMOD_template,MAC80211,mac80211,\
 	$(MODULES_DIR)/kernel/net/wireless/cfg80211 \
 	$(MODULES_DIR)/kernel/net/mac80211/mac80211 \
-,15, kmod-crypto-aes kmod-crypto-arc4 kmod-crypto-ecb kmod-crc32))
+,15, kmod-crypto-aes kmod-crypto-arc4 kmod-crypto-ecb))
 
 $(eval $(call KMOD_template,ATH5K,ath5k,\
 	$(MODULES_DIR)/kernel/drivers/net/wireless/ath/ath \
@@ -72,8 +72,8 @@ $(eval $(call KMOD_template,P54_COMMON,p54-common,\
 	$(MODULES_DIR)/kernel/drivers/net/wireless/p54/p54common \
 ,68))
 
-$(eval $(call KMOD_template,RTL8187B,rtl8187b,\
-	$(MODULES_DIR)/kernel/drivers/net/wireless/rtl8187b/rtl8187b \
+$(eval $(call KMOD_template,RTL8187,rtl8187,\
+	$(MODULES_DIR)/kernel/drivers/net/wireless/rtl818x/rtl8187 \
 ,70))
 
 $(eval $(call KMOD_template,B43,b43,\

+ 9 - 4
mk/package.mk

@@ -77,10 +77,11 @@ MAKE_ENV+=		WRKDIR='${WRKDIR}' WRKDIST='${WRKDIST}' \
 			CXXFLAGS='$(strip ${TCXXFLAGS})' \
 			CPPFLAGS='$(strip ${TCPPFLAGS})' \
 			LDFLAGS='$(strip ${TLDFLAGS})'
+MAKE_ENV+=		PATH='${TARGET_PATH}'
 ifeq ($(ADK_NATIVE),)
 MAKE_ENV+=		PATH='${TARGET_PATH}' \
-			${HOST_CONFIGURE_OPTS} \
 			PKG_CONFIG_LIBDIR='${STAGING_DIR}/usr/lib/pkgconfig' \
+			${HOST_CONFIGURE_OPTS} \
 			CC='${TARGET_CC}' \
 			CXX='${TARGET_CXX}' \
 			AR='${TARGET_CROSS}ar' \
@@ -108,7 +109,6 @@ _IPKGS_COOKIE=		${PACKAGE_DIR}/.stamps/${PKG_NAME}${PKG_VERSION}-${PKG_RELEASE}
 
 _IN_PACKAGE:=		1
 include ${TOPDIR}/mk/buildhlp.mk
--include info.mk
 
 # defined in buildhlp.mk ('extract' can fail, use 'patch' then)
 extract: ${_EXTRACT_COOKIE}
@@ -118,6 +118,11 @@ patch: ${_PATCH_COOKIE}
 configure: ${_CONFIGURE_COOKIE}
 build: ${_BUILD_COOKIE}
 fake: ${_FAKE_COOKIE}
+rebuild:
+	@if [ -f ${TOPDIR}/.rebuild.${PKG_NAME} ];then \
+		$(MAKE) clean; \
+		rm -f ${TOPDIR}/.rebuild.${PKG_NAME}; \
+	fi
 
 # our recursive build entry point
 build-all-pkgs: ${_IPKGS_COOKIE}
@@ -208,7 +213,7 @@ ifeq (,$(filter noremove,$(7)))
 	fi
 endif
 	@rm -f '$${STAGING_PARENT}/pkg/$(1)'
-	@-cd $${IDIR_$(1)}; \
+	-cd $${IDIR_$(1)}; \
 	    x=$$$$(find tmp var -mindepth 1 2>/dev/null); if [[ -n $$$$x ]]; then \
 		echo 'WARNING: $${IPKG_$(1)} installs files into a' \
 		    'ramdisk location:' >&2; \
@@ -221,7 +226,7 @@ endif
 	    find usr ! -type d 2>/dev/null | \
 	    grep -v -e '^usr/share' -e '^usr/man' -e '^usr/info' -e '^usr/lib/libc.so' | \
 	    tee '$${STAGING_PARENT}/pkg/$(1)' | \
-	    cpio -padlmu '$${STAGING_DIR}'
+	    $(TOPDIR)/bin/tools/cpio -padlmu '$${STAGING_DIR}'
 	@cd '$${STAGING_DIR}'; grep 'usr/lib/.*\.la$$$$' \
 	    '$${STAGING_PARENT}/pkg/$(1)' | while read fn; do \
 		chmod u+w $$$$fn; \

+ 1 - 1
mk/pkg-bottom.mk

@@ -165,7 +165,7 @@ endif
 	    find usr ! -type d 2>/dev/null | \
 	    grep -v -e '^usr/share' -e '^usr/man' -e '^usr/info' -e '^usr/lib/libc.so' | \
 	    tee '${STAGING_PARENT}/pkg/${PKG_NAME}' | \
-	    cpio -padlmu '${STAGING_DIR}'
+	    $(TOPDIR)/bin/tools/cpio -padlmu '${STAGING_DIR}'
 	@cd '${STAGING_DIR}'; grep 'usr/lib/.*\.la$$' \
 	    '${STAGING_PARENT}/pkg/${PKG_NAME}' | while read fn; do \
 		chmod u+w $$fn; \

+ 0 - 9
mk/split-cfg.mk

@@ -1,9 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-# must work with both BSD and GNU make
-
-${TOPDIR}/.ADK_HAVE_DOT_CONFIG: \
-	${TOPDIR}/.config ${TOPDIR}/mk/split-cfg.mk \
-	${TOPDIR}/scripts/split-cfg.sh
-	mksh ${TOPDIR}/scripts/split-cfg.sh '${TOPDIR}' '${ADK_TARGET}' '${ADK_LIBC}'
-	touch ${TOPDIR}/.ADK_HAVE_DOT_CONFIG

+ 2 - 2
mk/vars.mk

@@ -102,7 +102,7 @@ EXTRACT_CMD=		mkdir -p ${WRKDIR}; \
 			cd ${WRKDIR} && \
 			for file in ${FULLDISTFILES}; do case $$file in \
 			*.cpio) \
-				cat $$file | $(STAGING_TOOLS)/bin/cpio -i -d ;; \
+				cat $$file | $(TOPDIR)/bin/tools/cpio -i -d ;; \
 			*.tar) \
 				tar -xf $$file ;; \
 			*.cpio.Z | *.cpio.gz | *.cgz | *.mcz) \
@@ -114,7 +114,7 @@ EXTRACT_CMD=		mkdir -p ${WRKDIR}; \
 			*.tar.bz2 | *.tbz | *.tbz2) \
 				bzip2 -dc $$file | tar -xf - ;; \
 			*.zip) \
-				cat $$file | $(STAGING_TOOLS)/bin/cpio -ivd -H zip ;; \
+				cat $$file | $(TOPDIR)/bin/tools/cpio -ivd -H zip ;; \
 			*.arm) \
 				cp $$file ${WRKDIR} ;; \
 			*) \

+ 37 - 1
package/.template/Makefile

@@ -3,6 +3,7 @@
 
 include $(TOPDIR)/rules.mk
 
+# always use tab spaces as separator, no spaces
 PKG_NAME:=		@PKG@
 PKG_VERSION:=		@VER@
 PKG_RELEASE:=		1
@@ -10,10 +11,45 @@ PKG_MD5SUM:=		add md5sum of package here
 PKG_DESCR:=		add short description
 PKG_SECTION:=		add section
 PKG_DEPENDS:=		add dependendant package names
-PKG_BUILDDEP+=		add packages which need to be compiled
+PKG_BUILDDEP:=		add packages which need to be compiled
 PKG_URL:=		add project url
 PKG_SITES:=		add download url without package name
 
+# if more than one binary package is created, add symbol names of all here
+# leave variable empty, when no binary package is created. You can set it
+# to override PKG_NAME for the main binary package 
+#PKG_SUBPKGS:=		PKG SUBPKG1 SUBPKG2
+# you can add separate, build depends, run depends, section and description
+# build time dependency for subpackage SUBPKG1, package dir
+#PKGSB_SUBPKG1:=
+# runtime dependency for subpackage SUBPKG1, package names
+#PKGSS_SUBPKG1:=
+# section for subpackage SUBPKG1
+#PKGSC_SUBPKG1:=
+# description for subpackage SUBPKG1
+#PKGSD_SUBPKG1:=
+
+# define your flavours for your package here, WITH_SSL f.e.
+#PKG_FLAVOURS:=		WITH_SSL
+# flavour description
+#PKGFD_WITH_SSL:=	enable SSL support
+# flavour runtime dependency, package name
+#PKGFS_WITH_SSL:=	libopenssl
+# flavour build time dependency, package dir
+#PKGFB_WITH_SSL:=	openssl
+
+# define your choices for your package here, f.e. different SSL implementations
+#PKG_CHOICES:=		WITH_OPENSSL WITH_GNUTLS
+# package description for each choice
+#PKGCD_WITH_OPENSSL:=	SSL support via OpenSSL library
+#PKGCD_WITH_GNUTLS:=	SSL support via GNUTLS library
+# package build time dependencies
+#PKGCB_WITH_OPENSSL:=	openssl
+#PKGCB_WITH_GNUTLS:=	gnutls
+# package runtime dependencies
+#PKGCS_WITH_OPENSSL:=	libopenssl
+#PKGCS_WITH_GNUTLS:=	libgnutls
+
 # if downloaded package is not ending with .tar.gz use following
 #DISTFILES:=             ${PKG_NAME}-${PKG_VERSION}.tar.bz2
 

+ 1 - 1
package/DirectFB/Makefile

@@ -9,8 +9,8 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		223e036da906ceb4bd44708026839ff1
 PKG_DESCR:=		Thin library on top of the Linux framebuffer devices
 PKG_SECTION:=		libs
-PKG_BUILDDEP:=		libpng libX11 libXext
 PKG_DEPENDS:=		libpng
+PKG_BUILDDEP:=		libpng libX11 libXext
 PKG_URL:=		http://www.directfb.org/
 PKG_SITES:=		http://directfb.org/downloads/Core/DirectFB-1.4/
 

+ 9 - 2
package/Makefile

@@ -28,6 +28,7 @@ endif
 include $(TOPDIR)/package/Depends.mk
 
 DOWNLOAD:=$(patsubst %,%-download,$(package-y) $(package-m))
+REBUILD_PACKAGES:=$(patsubst %,%-rebuild,$(package-y) $(package-m))
 COMPILE_PACKAGES:=$(patsubst %,%-compile,$(package-y) $(package-m))
 INSTALL_PACKAGES:=$(patsubst %,%-install,$(package-y))
 
@@ -35,10 +36,10 @@ all: compile
 download: $(DOWNLOAD)
 clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m) base-files)
 ifeq ($(ADK_TOOLCHAIN_ONLY),y)
-compile: $(COMPILE_PACKAGES)
+compile: $(REBUILD_PACKAGES) $(COMPILE_PACKAGES)
 install: $(INSTALL_PACKAGES)
 else
-compile: base-files-compile $(COMPILE_PACKAGES)
+compile: $(REBUILD_PACKAGES) base-files-compile $(COMPILE_PACKAGES)
 install: base-files-install $(INSTALL_PACKAGES)
 endif
 
@@ -57,6 +58,12 @@ $(TARGET_DIR):
 	$(CMD_TRACE) " done"
 	$(END_TRACE)
 
+%-rebuild:
+	$(START_TRACE) "package/$(patsubst %-rebuild,%,$@)-rebuild: "
+	$(MAKE) -C $(patsubst %-rebuild,%,$@) rebuild
+	$(CMD_TRACE) " done"
+	$(END_TRACE)
+
 %-install:
 	@$(START_TRACE) "package/$(patsubst %-install,%,$@)-install: "
 	@$(MAKE) -C $(patsubst %-install,%,$@) install

+ 11 - 10
package/MesaLib/Makefile

@@ -10,26 +10,27 @@ PKG_MD5SUM:=		62e8e47cbd63741b4bbe634dcdc8a56a
 PKG_DESCR:=		MESA library
 PKG_SECTION:=		libs
 PKG_DEPENDS:=		libxdamage libxfixes libdrm
-PKG_BUILDDEP+=		libXdamage libXfixes libXxf86vm libdrm
+PKG_BUILDDEP:=		libXdamage libXfixes libXxf86vm libdrm
 PKG_BUILDDEP+=		dri2proto glproto expat
 PKG_URL:=		http://www.mesa3d.org/
 PKG_SITES:=		ftp://ftp.freedesktop.org/pub/mesa/7.8.1/
 
-PKG_DESCR_GLXINFO:=	Display various GLX information
-PKG_SECT_GLXINFO:=	x11/apps
-PKG_DESCR_GLXGEARS:=	Nice little OpenGL demo application
-PKG_SECT_GLXGEARS:=	x11/apps
+PKG_SUBPKGS:=		MESALIB GLXINFO GLXGEARS
+PKGSD_GLXINFO:=		Display various GLX information
+PKGSC_GLXINFO:=		x11/apps
+PKGSD_GLXGEARS:=	Nice little OpenGL demo application
+PKGSC_GLXGEARS:=	x11/apps
 
-WRKDIST=		${WRKDIR}/Mesa-${PKG_VERSION}
-
-PKG_TARGET_DEPENDS:=  	ibmx40 lemote
 PKG_HOST_DEPENDS:=	!cygwin
+PKG_TARGET_DEPENDS:=	ibmx40 lemote
+
+WRKDIST=		${WRKDIR}/Mesa-${PKG_VERSION}
 
 include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,MESALIB,mesalib,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,GLXINFO,glxinfo,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_GLXINFO},${PKG_SECT_GLXINFO}))
-$(eval $(call PKG_template,GLXGEARS,glxgears,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_GLXGEARS},${PKG_SECT_GLXGEARS}))
+$(eval $(call PKG_template,GLXINFO,glxinfo,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_GLXINFO},${PKGSC_GLXINFO}))
+$(eval $(call PKG_template,GLXGEARS,glxgears,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_GLXGEARS},${PKGSC_GLXGEARS}))
 
 ifeq (${ADK_LINUX_X86_IBMX40},y)
 DRI_DRIVERS:=i810

+ 1 - 0
package/adkinstall/Makefile

@@ -9,6 +9,7 @@ PKG_RELEASE:=		5
 PKG_DESCR:=		openadk installer
 PKG_SECTION:=		base
 PKG_DEPENDS:=		parted sfdisk e2fsprogs
+PKG_URL:=		http://www.openadk.org/
 
 PKG_TARGET_DEPENDS:=	alix wrap routerboard foxg20
 

+ 1 - 1
package/aiccu/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		c9bcc83644ed788e22a7c3f3d4021350
 PKG_DESCR:=		SixXS Automatic IPv6 Connectivity Client Utility
 PKG_SECTION:=		ipv6
 PKG_DEPENDS:=		kmod-ipv6 libpthread
-PKG_URL:=		http://www.sixxs.net
+PKG_URL:=		http://www.sixxs.net/
 PKG_SITES:=		http://www.sixxs.net/archive/sixxs/aiccu/unix/
 
 DISTFILES:=		$(PKG_NAME)_$(PKG_VERSION).tar.gz

+ 2 - 2
package/aircrack-ng/Makefile

@@ -10,8 +10,8 @@ PKG_MD5SUM:=		f7a24ed8fad122c4187d06bfd6f998b4
 PKG_DESCR:=		set of tools for auditing wireless networks
 PKG_SECTION:=		wifi
 PKG_DEPENDS:=		libpthread libopenssl libpcap
-PKG_BUILDDEP+=		openssl libpcap
-PKG_URL:=		http://www.aircrack-ng.org
+PKG_BUILDDEP:=		openssl libpcap
+PKG_URL:=		http://www.aircrack-ng.org/
 PKG_SITES:=		http://download.aircrack-ng.org/
 
 include $(TOPDIR)/mk/package.mk

+ 2 - 2
package/alix-switch/Makefile

@@ -8,8 +8,10 @@ PKG_VERSION:=		1.0
 PKG_RELEASE:=		1
 PKG_DESCR:=		daemon listening on button events
 PKG_SECTION:=		base
+PKG_URL:=		http://www.openadk.org/
 
 PKG_TARGET_DEPENDS:=	alix
+PKG_DFLT_ALIX_SWITCH:=	y
 
 NO_DISTFILES:=		1
 
@@ -17,8 +19,6 @@ include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,ALIX_SWITCH,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
-PKGDFLT_ALIX_SWITCH=	y
-
 CONFIG_STYLE:=		manual
 BUILD_STYLE:=		manual
 INSTALL_STYLE:=		manual

+ 4 - 7
package/alsa-utils/Makefile

@@ -10,17 +10,14 @@ PKG_MD5SUM:=		f7180316188552ee1e6759a03f1fe98d
 PKG_DESCR:=		ALSA mixer utility
 PKG_SECTION:=		multimedia
 PKG_DEPENDS:=		alsa-lib libpthread
-PKG_BUILDDEP+=		alsa-lib
-ifeq (${ADK_PACKAGE_ALSA_UTILS_WITH_ALSAMIXER},y)
-PKG_BUILDDEP+=		ncurses
-endif
-PKG_URL:=		http://www.alsa-project.org
-PKG_SITES:=		ftp://ftp.task.gda.pl/pub/linux/misc/alsa/utils/ \
-			ftp://ftp.alsa-project.org/pub/utils/
+PKG_BUILDDEP:=		alsa-lib
+PKG_URL:=		http://www.alsa-project.org/
+PKG_SITES:=		ftp://ftp.alsa-project.org/pub/utils/
 
 PKG_FLAVOURS:=		WITH_ALSAMIXER
 PKGFS_WITH_ALSAMIXER:=	libncurses
 PKGFD_WITH_ALSAMIXER:=	include alsamixer ncurses applet
+PKGFB_WITH_ALSAMIXER:=	ncurses
 
 DISTFILES:=             ${PKG_NAME}-${PKG_VERSION}.tar.bz2
 

+ 6 - 6
package/apr-util/Makefile

@@ -3,15 +3,15 @@
 
 include ${TOPDIR}/rules.mk
 
-PKG_NAME:=              apr-util
-PKG_VERSION:=           1.3.9
-PKG_RELEASE:=           1
-PKG_MD5SUM:=            cc2ec0ba4f01d88375f1170f762518fa
+PKG_NAME:=		apr-util
+PKG_VERSION:=		1.3.9
+PKG_RELEASE:=		1
+PKG_MD5SUM:=		cc2ec0ba4f01d88375f1170f762518fa
 PKG_DESCR:=		Apache Portable Runtime utility library
 PKG_SECTION:=		libs
 PKG_DEPENDS:=		libexpat apr
-PKG_BUILDDEP+=		expat apr
-PKG_URL:=		http://apr.apache.org
+PKG_BUILDDEP:=		expat apr
+PKG_URL:=		http://apr.apache.org/
 PKG_SITES:=		http://apache.mirror.clusters.cc/apr/
 
 include ${TOPDIR}/mk/package.mk

+ 1 - 1
package/apr/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		fc80cb54f158c2674f9eeb47a1f672cd
 PKG_DESCR:=		Apache Portable Runtime library
 PKG_SECTION:=		libs
 PKG_DEPENDS:=		libpthread
-PKG_URL:=		http://apr.apache.org
+PKG_URL:=		http://apr.apache.org/
 PKG_SITES:=		http://gd.tuwien.ac.at/infosys/servers/http/apache/dist/${PKG_NAME}/
 
 PKG_FLAVOURS:=		WITH_IPV6

+ 1 - 1
package/arpd/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		e2911fa9de1b92ef50deda1489ae944d
 PKG_DESCR:=		Generates ARP responses for IP address ranges
 PKG_SECTION:=		route
 PKG_DEPENDS:=		libpcap libdnet libevent
-PKG_BUILDDEP+=		libpcap libdnet libevent
+PKG_BUILDDEP:=		libpcap libdnet libevent
 PKG_URL:=		http://niels.xtdnet.nl/honeyd/
 PKG_SITES:=		http://niels.xtdnet.nl/honeyd/
 

+ 2 - 2
package/arpwatch/Makefile

@@ -10,8 +10,8 @@ PKG_MD5SUM:=		cebfeb99c4a7c2a6cee2564770415fe7
 PKG_DESCR:=		Ethernet monitor program
 PKG_SECTION:=		net/security
 PKG_DEPENDS:=		libpcap
-PKG_BUILDDEP+=		libpcap
-PKG_URL:=		http://www-nrg.ee.lbl.gov
+PKG_BUILDDEP:=		libpcap
+PKG_URL:=		http://www-nrg.ee.lbl.gov/
 PKG_SITES:=		ftp://ftp.ee.lbl.gov/
 
 include $(TOPDIR)/mk/package.mk

+ 19 - 20
package/asterisk/Makefile

@@ -9,38 +9,37 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		50412a90942ae7306fb8dcc31a05c2ce
 PKG_DESCR:=		Open Source PBX
 PKG_SECTION:=		phone
-PKG_MULTI:=		1
-PKG_NOPARALLEL:=	1
 PKG_DEPENDS:=		libncurses libpthread libopenssl libcurl
-PKG_BUILDDEP+=		ncurses openssl zlib curl popt
-ifneq ($(ADK_PACKAGE_ASTERISK_CODEC_SPEEX),)
-PKG_BUILDDEP+=		speex
-endif
-ifneq ($(ADK_PACKAGE_ASTERISK_PGSQL),)
-PKG_BUILDDEP+=		postgresql
-endif
+PKG_BUILDDEP:=		ncurses openssl zlib curl popt
 PKG_URL:=		http://www.asterisk.org/
 PKG_SITES:=		http://downloads.asterisk.org/pub/telephony/asterisk/releases/
+PKG_MULTI:=		1
+PKG_NOPARALLEL:=	1
 
 PKG_TARGET_DEPENDS:=	!foxboard
 
-PKG_DESCR_CHAN_MGCP:=	Media Gateway Control Protocol implementation
-PKG_DESCR_CHAN_SKINNY:=	Skinny Client Control Protocol implementation
-PKG_DESCR_CHAN_IAX2:=	Support for the Inter Asterisk Protocol
-PKG_DESCR_CODEC_SPEEX:=	Speex/PCM16 Codec Translator
-PKG_DESCR_SOUNDS:=	Various soundfiles in GSM format
-PKG_DEPENDS_SOUNDS:=	${PKG_DEPENDS} asterisk-codec-gsm
+PKG_SUBPKGS:=		ASTERISK ASTERISK_PGSQL ASTERISK_VOICEMAIL ASTERISK_SOUNDS ASTERISK_CHAN_MGCP
+PKG_SUBPKGS+=		ASTERISK_CHAN_SKINNY ASTERISK_CHAN_IAX2 ASTERISK_CODEC_SPEEX ASTERISK_CODEC_GSM
+PKG_SUBPKGS+=		ASTERISK_PBX_DUNDI ASTERISK_RES_AGI
+PKGSB_ASTERISK_CODEC_SPEEX:=	speex
+PKGSB_ASTERISK_PQSQL:=		postgresql
+PKGSD_ASTERISK_CHAN_MGCP:=	Media Gateway Control Protocol implementation
+PKGSD_ASTERISK_CHAN_SKINNY:=	Skinny Client Control Protocol implementation
+PKGSD_ASTERISK_CHAN_IAX2:=	Support for the Inter Asterisk Protocol
+PKGSD_ASTERISK_CODEC_SPEEX:=	Speex/PCM16 Codec Translator
+PKGSD_ASTERISK_SOUNDS:=		Various soundfiles in GSM format
+PKGSS_ASTERISK_SOUNDS:=		asterisk-codec-gsm
 
 include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,ASTERISK,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 $(eval $(call PKG_template,ASTERISK_PGSQL,asterisk-pgsql,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 $(eval $(call PKG_template,ASTERISK_VOICEMAIL,asterisk-voicemail,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,ASTERISK_SOUNDS,asterisk-sounds,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS_SOUNDS},${PKG_DESCR_SOUNDS},${PKG_SECTION}))
-$(eval $(call PKG_template,ASTERISK_CHAN_MGCP,asterisk-chan-mgcp,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS_MAIN},${PKG_DESCR_CHAN_MGCP},${PKG_SECTION}))
-$(eval $(call PKG_template,ASTERISK_CHAN_SKINNY,asterisk-chan-skinny,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS_MAIN},${PKG_DESCR_CHAN_SKINNY},${PKG_SECTION}))
-$(eval $(call PKG_template,ASTERISK_CHAN_IAX2,asterisk-chan-iax2,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS_MAIN},${PKG_DESCR_CHAN_IAX2},${PKG_SECTION}))
-$(eval $(call PKG_template,ASTERISK_CODEC_SPEEX,asterisk-codec-speex,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS_MAIN},${PKG_DESCR_CODEC_SPEEX},${PKG_SECTION}))
+$(eval $(call PKG_template,ASTERISK_SOUNDS,asterisk-sounds,$(PKG_VERSION)-${PKG_RELEASE},${PKGSS_ASTERISK_SOUNDS},${PKGSD_ASTERISK_SOUNDS},${PKG_SECTION}))
+$(eval $(call PKG_template,ASTERISK_CHAN_MGCP,asterisk-chan-mgcp,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CHAN_MGCP},${PKG_SECTION}))
+$(eval $(call PKG_template,ASTERISK_CHAN_SKINNY,asterisk-chan-skinny,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CHAN_SKINNY},${PKG_SECTION}))
+$(eval $(call PKG_template,ASTERISK_CHAN_IAX2,asterisk-chan-iax2,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CHAN_IAX2},${PKG_SECTION}))
+$(eval $(call PKG_template,ASTERISK_CODEC_SPEEX,asterisk-codec-speex,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ASTERISK_CODEC_SPEEX},${PKG_SECTION}))
 $(eval $(call PKG_template,ASTERISK_CODEC_GSM,asterisk-codec-gsm,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 $(eval $(call PKG_template,ASTERISK_PBX_DUNDI,asterisk-pbx-dundi,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 $(eval $(call PKG_template,ASTERISK_RES_AGI,asterisk-res-agi,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))

+ 5 - 4
package/atftp/Makefile

@@ -10,16 +10,17 @@ PKG_MD5SUM:=		3b27365772d918050b2251d98a9c7c82
 PKG_DESCR:=		TFTP client
 PKG_SECTION:=		dhcp
 PKG_DEPENDS:=		libreadline libncurses
-PKG_BUILDDEP+=		readline ncurses
-PKG_URL:=		http://freshmeat.net/projects/atftp
+PKG_BUILDDEP:=		readline ncurses
+PKG_URL:=		http://freshmeat.net/projects/atftp/
 PKG_SITES:=		ftp://ftp.mamalinux.com/pub/atftp/
 
-PKG_DESCR_TFTP_SERVER:=	TFTP server
+PKG_SUBPKGS:=		ATFTP ATFTPD
+PKGSD_ATFTPD:=		TFTP server
 
 include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,ATFTP,atftp,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,ATFTPD,atftpd,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_TFTP_SERVER},${PKG_SECTION}))
+$(eval $(call PKG_template,ATFTPD,atftpd,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_ATFTPD},${PKG_SECTION}))
 
 MAKE_FLAGS+=		CFLAGS="${TCFLAGS} -Wall -D_REENTRANT -fno-inline"
 

+ 2 - 2
package/atk/Makefile

@@ -9,8 +9,8 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		f587d9285b2d0ac35ea95acef673517c
 PKG_DESCR:=		atk library
 PKG_SECTION:=		libs
-PKG_BUILDDEP+=		glib
-PKG_URL:=		http://www.gnome.org
+PKG_BUILDDEP:=		glib
+PKG_URL:=		http://www.gnome.org/
 PKG_SITES:=		${MASTER_SITE_GNOME:=/atk/1.29/}
 
 ifeq ($(ADK_STATIC),y)

+ 1 - 0
package/aufs2-util/Makefile

@@ -9,6 +9,7 @@ PKG_RELEASE:=		1
 PKG_DESCR:=		aufs2 utilities
 PKG_SECTION:=		fs
 PKG_URL:=		http://aufs.sf.net/
+
 PKG_HOST_DEPENDS:=	!cygwin !freebsd !openbsd !netbsd
 
 NO_DISTFILES:=		1

+ 1 - 1
package/autossh/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		8f9aa006f6f69e912d3c2f504622d6f7
 PKG_DESCR:=		Automatically restart SSH sessions and tunnels
 PKG_SECTION:=		net/security
 PKG_DEPENDS:=		openssh-client
-PKG_URL:=		http://www.harding.motd.ca/autossh
+PKG_URL:=		http://www.harding.motd.ca/autossh/
 PKG_SITES:=		http://www.harding.motd.ca/autossh/
 
 DISTFILES:=		$(PKG_NAME)-$(PKG_VERSION).tgz

+ 9 - 7
package/avahi/Makefile

@@ -10,19 +10,21 @@ PKG_MD5SUM:=		a83155a6e29e3988f07e5eea3287b21e
 PKG_DESCR:=		mDNS daemon
 PKG_SECTION:=		dhcp
 PKG_DEPENDS:=		libavahi libdaemon libexpat gettext
-PKG_BUILDDEP+=		libdaemon expat gdbm glib gettext
-PKG_URL:=		http://avahi.org
+PKG_BUILDDEP:=		libdaemon expat gdbm glib gettext
+PKG_URL:=		http://avahi.org/
 PKG_SITES:=		http://avahi.org/download/
 
-PKG_DEPENDS_DNSCONFD:=	libavahi libdaemon avahi-daemon
-PKG_DESCR_DNSCONFD:=	DNS server from mDNS configuration daemon
-PKG_DESCR_LIB:=		DNS-SD over mDNS library
+PKG_SUBPKGS:=		AVAHI_DAEMON AVAHI_DNSCONFD LIBAVAHI
+PKGSS_AVAHI_DNSCONFD:=	libavahi libdaemon avahi-daemon
+PKGSD_AVAHI_DNSCONFD:=	DNS server from mDNS configuration daemon
+PKGSD_LIBAVAHI:=	DNS-SD over mDNS library
+PKGSC_LIBAVAHI:=	libs
 
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,AVAHI_DAEMON,avahi-daemon,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,AVAHI_DNSCONFD,avahi-dnsconfd,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS_DNSCONFD},${PKG_DESCR_DNSCONFD},${PKG_SECTION}))
-$(eval $(call PKG_template,LIBAVAHI,libavahi,${PKG_VERSION}-${PKG_RELEASE},,${PKG_DESCR_LIB},libs))
+$(eval $(call PKG_template,AVAHI_DNSCONFD,avahi-dnsconfd,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_AVAHI_DNSCONFD},${PKGSD_AVAHI_DNSCONFD},${PKG_SECTION}))
+$(eval $(call PKG_template,LIBAVAHI,libavahi,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBAVAHI},${PKGSC_LIBAVAHI}))
 
 TLDFLAGS+=		-lintl
 CONFIGURE_ARGS+=	--enable-glib \

+ 5 - 4
package/axtls/Makefile

@@ -10,11 +10,12 @@ PKG_MD5SUM:=		03471b5a5874e2ce86025f24b3fa0958
 PKG_DESCR:=		small embedded webserver
 PKG_SECTION:=		net/security
 PKG_DEPENDS:=		libaxtls
-PKG_URL:=		http://axtls.sourceforge.net
+PKG_URL:=		http://axtls.sourceforge.net/
 PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=axtls/}
 
-PKG_DESCR_LIB:=		small tls library
-PKG_SECTION_LIB:=		libs
+PKG_SUBPKGS:=		AXHTTPD LIBAXTLS
+PKGSD_LIBAXTLS:=	small tls library
+PKGSC_LIBAXTLS:=	libs
 
 DISTFILES:=		axTLS-${PKG_VERSION}.tar.gz
 WRKDIST=		${WRKDIR}/axTLS
@@ -22,7 +23,7 @@ WRKDIST=		${WRKDIR}/axTLS
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,AXHTTPD,axhttpd,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,LIBAXTLS,libaxtls,${PKG_VERSION}-${PKG_RELEASE},,${PKG_DESCR_LIB},${PKG_SECTION_LIB}))
+$(eval $(call PKG_template,LIBAXTLS,libaxtls,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBAXTLS},${PKGSC_LIBAXTLS}))
 
 CONFIG_STYLE:=		manual
 INSTALL_STYLE:=		manual

+ 1 - 9
package/base-files/Makefile

@@ -66,7 +66,7 @@ endif
 	    echo $(ADK_RUNTIME_HOSTNAME) > \
 	    $(IDIR_BASE_FILES)/etc/hostname
 	test -z $(ADK_RUNTIME_PASSWORD) || \
-	    $(SED) 's,\*NP\*,'"$$(${STAGING_TOOLS}/bin/mkcrypt \
+	    $(SED) 's,\*NP\*,'"$$(${TOPDIR}/bin/tools/mkcrypt \
 	    ${ADK_RUNTIME_PASSWORD}),g" $(IDIR_BASE_FILES)/etc/shadow
 	git log -1|head -1|sed -e 's#commit ##' \
 		> $(IDIR_BASE_FILES)/etc/adkversion
@@ -77,12 +77,4 @@ ifneq (${ADK_PACKAGE_CONFIG_IN_ETC},)
 	chmod 600 $(IDIR_BASE_FILES)/etc/adkconfig.gz
 endif
 
-rebuild:
-	@if [ -f ${TOPDIR}/.rebuild.${PKG_NAME} ];then \
-		rm ${WRKBUILD}/.build_done; \
-		rm ${TOPDIR}/.rebuild.${PKG_NAME}; \
-	fi
-
-fake: rebuild
-
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 3 - 1
package/bc/Makefile

@@ -9,9 +9,11 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		d44b5dddebd8a7a7309aea6c36fda117
 PKG_DESCR:=		An arbitrary precision calculator language
 PKG_SECTION:=		utils
-PKG_URL:=		http://www.gnu.org/software/bc
+PKG_URL:=		http://www.gnu.org/software/bc/
 PKG_SITES:=		http://ftp.gnu.org/pub/gnu/bc/
 
+PKG_SUBPKGS:=		BC DC
+
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,BC,bc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))

+ 1 - 0
package/bigreqsproto/Makefile

@@ -8,6 +8,7 @@ PKG_VERSION:=		1.1.0
 PKG_RELEASE:=		1
 PKG_MD5SUM:=		882d49cc3bb591dbdccdf9e680bd2e4b
 PKG_SITES:=		${MASTER_SITE_XORG}
+PKG_SUBPKGS:=
 
 include $(TOPDIR)/mk/package.mk
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 18 - 16
package/bind/Makefile

@@ -10,17 +10,19 @@ PKG_MD5SUM:=		c245b5d1aa0a4f53d9538faa1efe2c3f
 PKG_DESCR:=		popular DNS server
 PKG_SECTION:=		dns
 PKG_DEPENDS:=		libopenssl libbind libxml2
-PKG_BUILDDEP+=		openssl libxml2
-PKG_URL:=		https://www.isc.org/software/bind
+PKG_BUILDDEP:=		openssl libxml2
+PKG_URL:=		https://www.isc.org/software/bind/
 PKG_SITES:=		ftp://ftp.isc.org/isc/bind9/${PKG_VERSION}/
 
-PKG_DESCR_1:=		dynamic dns client (nsupdate utility)
-PKG_DESCR_2:=		library for the bind software suite
-PKG_DESCR_3:=		rndc & rndc-confgen utilities
-PKG_DESCR_4:=		check utilities
-PKG_DESCR_5:=		dnssec utilities
-PKG_DESCR_6:=		host utility
-PKG_DESCR_7:=		dig utility
+PKG_SUBPKGS:=		BIND_SERVER BIND_CLIENT LIBBIND BIND_RNDC BIND_CHECK BIND_DNSSEC BIND_HOST BIND_DIG
+PKGSD_LIBBIND:=		library for the bind software suite
+PKGSC_LIBBIND:=		libs
+PKGSD_BIND_CLIENT:=	dynamic dns client (nsupdate utility)
+PKGSD_BIND_RNDC:=	rndc & rndc-confgen utilities
+PKGSD_BIND_CHECK:=	check utilities
+PKGSD_BIND_DNSSEC:=	dnssec utilities
+PKGSD_BIND_HOST:=	host utility
+PKGSD_BIND_DIG:=	dig utility
 
 PKG_FLAVOURS:=		WITH_IPV6
 PKGFD_WITH_IPV6:=	enable IPv6 support
@@ -28,13 +30,13 @@ PKGFD_WITH_IPV6:=	enable IPv6 support
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,BIND_SERVER,bind-server,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,BIND_CLIENT,bind-client,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_1},${PKG_SECTION}))
-$(eval $(call PKG_template,LIBBIND,libbind,${PKG_VERSION}-${PKG_RELEASE},,${PKG_DESCR_2},libs))
-$(eval $(call PKG_template,BIND_RNDC,bind-rndc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_3},${PKG_SECTION}))
-$(eval $(call PKG_template,BIND_CHECK,bind-check,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_4},${PKG_SECTION}))
-$(eval $(call PKG_template,BIND_DNSSEC,bind-dnssec,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_5},${PKG_SECTION}))
-$(eval $(call PKG_template,BIND_HOST,bind-host,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_6},${PKG_SECTION}))
-$(eval $(call PKG_template,BIND_DIG,bind-dig,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_7},${PKG_SECTION}))
+$(eval $(call PKG_template,BIND_CLIENT,bind-client,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_CLIENT},${PKG_SECTION}))
+$(eval $(call PKG_template,LIBBIND,libbind,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBBIND},${PKGSC_LIBBIND}))
+$(eval $(call PKG_template,BIND_RNDC,bind-rndc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_RNDC},${PKG_SECTION}))
+$(eval $(call PKG_template,BIND_CHECK,bind-check,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_CHECK},${PKG_SECTION}))
+$(eval $(call PKG_template,BIND_DNSSEC,bind-dnssec,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_DNSSEC},${PKG_SECTION}))
+$(eval $(call PKG_template,BIND_HOST,bind-host,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_HOST},${PKG_SECTION}))
+$(eval $(call PKG_template,BIND_DIG,bind-dig,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_BIND_DIG},${PKG_SECTION}))
 
 CONFIGURE_ARGS+=	--with-randomdev=/dev/urandom \
 			--disable-threads \

+ 4 - 4
package/binutils/Makefile

@@ -8,16 +8,16 @@ PKG_DESCR:=		binary utilities (nm, objdump, as, ..)
 PKG_SECTION:=		lang
 PKG_DEPENDS:=		libbfd
 
-PKG_NAME_LIBBFD:=	libbfd
-PKG_DESCR_LIBBFD:=	bfd library
-PKG_SECTION_LIBBFD:=	libs
+PKG_SUBPKGS:=		BINUTILS LIBBFD
+PKGSD_LIBBFD:=		Binary File Descriptor library
+PKGSC_LIBBFD:=		libs
 
 PKG_HOST_DEPENDS:=      !cygwin
 
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,BINUTILS,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,LIBBFD,${PKG_NAME_LIBBFD},${PKG_VERSION}-${PKG_RELEASE},,${PKG_DESCR_LIBBFD},${PKG_SECTION_LIBBFD}))
+$(eval $(call PKG_template,LIBBFD,libbfd,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBBFD},${PKGSC_LIBBFD}))
 
 TCFLAGS+=		-fPIC
 CONFIGURE_ARGS+=	--disable-werror \

+ 2 - 2
package/bitlbee/Makefile

@@ -10,8 +10,8 @@ PKG_MD5SUM:=		26b9bfc5446bdf0e932e8074d117be67
 PKG_DESCR:=		IRC gateway to IM chat networks
 PKG_SECTION:=		chat
 PKG_DEPENDS:=		glib libiconv libopenssl
-PKG_BUILDDEP+=		glib libiconv openssl
-PKG_URL:=		http://www.bitlbee.org
+PKG_BUILDDEP:=		glib libiconv openssl
+PKG_URL:=		http://www.bitlbee.org/
 PKG_SITES:=		http://get.bitlbee.org/src/
 
 include ${TOPDIR}/mk/package.mk

+ 1 - 1
package/bluez-firmware/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		1cc3cefad872e937e05de5a0a2b390dd
 PKG_DESCR:=		Bluez firmware for BCM2033
 PKG_SECTION:=		bluetooth
 PKG_DEPENDS:=		kmod-bt bluez
-PKG_URL:=		http://www.bluez.org
+PKG_URL:=		http://www.bluez.org/
 PKG_SITES:=		http://bluez.sourceforge.net/download/
 
 include ${TOPDIR}/mk/package.mk

+ 2 - 2
package/bluez/Makefile

@@ -10,8 +10,8 @@ PKG_MD5SUM:=		1c7cee215bc84656b1edee019cee78f5
 PKG_DESCR:=		bluetooth libraries and applications
 PKG_SECTION:=		bluetooth
 PKG_DEPENDS:=		kmod-bt libusb glib dbus
-PKG_BUILDDEP+=		libusb dbus glib
-PKG_URL:=		http://www.bluez.org
+PKG_BUILDDEP:=		libusb dbus glib
+PKG_URL:=		http://www.bluez.org/
 PKG_SITES:=		${MASTER_SITE_KERNEL:=bluetooth/}
 
 include ${TOPDIR}/mk/package.mk

+ 1 - 1
package/bogofilter/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		a12a16d88d6d565dacf2a5e6259a3337
 PKG_DESCR:=		mail filter
 PKG_SECTION:=		mail
 PKG_DEPENDS:=		libiconv libdb
-PKG_BUILDDEP+=		libiconv libdb
+PKG_BUILDDEP:=		libiconv libdb
 PKG_URL:=		http://bogofilter.sourceforge.net/
 PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=bogofilter/}
 

+ 8 - 20
package/busybox/Makefile

@@ -14,13 +14,14 @@ PKG_SITES:=		http://www.busybox.net/downloads/
 
 DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.bz2
 
-PKG_DESCR_UDHCPD:=	uDHCPD meta package
-PKG_SECTION_UDHCPD:=	net
+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,${PKG_DESCR_UDHCPD},${PKG_SECTION_UDHCPD}))
+$(eval $(call PKG_template,UDHCPD,udhcpd,${PKG_VERSION}-${PKG_RELEASE},busybox,${PKGSD_UDHCPD},${PKGSC_UDHCPD}))
 
 SUB_INSTALLS-y:=
 SUB_INSTALLS-m:=
@@ -30,15 +31,10 @@ CONFIG_STYLE:=		manual
 BUILD_STYLE:=		manual
 INSTALL_STYLE:=		manual
 
-${TOPDIR}/.busyboxcfg: ${TOPDIR}/.config
+do-configure:
 	grep BUSYBOX_ $(TOPDIR)/.config|sed -e 's/BUSYBOX_/CONFIG_/' > \
-		${TOPDIR}/.busyboxcfg
-
-${WRKBUILD}/.config: ${TOPDIR}/.busyboxcfg
-	cp $(TOPDIR)/.busyboxcfg ${WRKBUILD}/.config
+		${WRKBUILD}/.config
 	$(SED) 's;@IDIR@;${WRKINST};' ${WRKBUILD}/.config
-
-do-configure: ${WRKBUILD}/.config
 ifeq ($(ADK_NATIVE),y)
 	yes '' | \
 	$(MAKE) V=1 \
@@ -51,7 +47,7 @@ else
 	    ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) oldconfig $(MAKE_TRACE)
 endif
 
-do-build: do-configure
+do-build:
 ifeq ($(ADK_NATIVE),y)
 	$(MAKE) V=1 \
 	    IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) busybox
@@ -60,7 +56,7 @@ else
 	    IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) busybox
 endif
 
-do-install: ${WRKBUILD}/.config ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
+do-install: ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
 ifeq ($(ADK_NATIVE),y)
 	$(MAKE) V=1 \
 	    IPKG_ARCH="$(CPU_ARCH)" ARCH="$(ARCH)" HOSTCC="$(HOSTCC)" -C $(WRKBUILD) install $(MAKE_TRACE)
@@ -81,12 +77,4 @@ udhcpd-install:
 	${INSTALL_DIR} ${IDIR_UDHCPD}/etc/
 	${INSTALL_DATA} ./files/udhcpd.conf ${IDIR_UDHCPD}/etc/
 
-rebuild:
-	@if [ -f ${TOPDIR}/.rebuild.${PKG_NAME} ];then \
-		rm ${WRKBUILD}/.build_done; \
-		rm ${TOPDIR}/.rebuild.${PKG_NAME}; \
-	fi
-
-fake: rebuild
-
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 2 - 2
package/busybox/config/Config.in

@@ -369,7 +369,7 @@ config BUSYBOX_BUILD_LIBBUSYBOX
 
 config BUSYBOX_FEATURE_INDIVIDUAL
 	bool "Produce a binary for each applet, linked against libbusybox"
-	default y
+	default n
 	depends on BUSYBOX_BUILD_LIBBUSYBOX
 	help
 	  If your CPU architecture doesn't allow for sharing text/rodata
@@ -387,7 +387,7 @@ config BUSYBOX_FEATURE_INDIVIDUAL
 
 config BUSYBOX_FEATURE_SHARED_BUSYBOX
 	bool "Produce additional busybox binary linked against libbusybox"
-	default y
+	default n
 	depends on BUSYBOX_BUILD_LIBBUSYBOX
 	help
 	  Build busybox, dynamically linked against libbusybox.so.N.N.N.

+ 10 - 10
package/busybox/config/coreutils/Config.in

@@ -74,7 +74,7 @@ config BUSYBOX_CKSUM
 
 config BUSYBOX_COMM
 	bool "comm"
-	default n
+	default y
 	help
 	  comm is used to compare two files line by line and return
 	  a three-column output.
@@ -263,7 +263,7 @@ config BUSYBOX_FEATURE_EXPAND_LONG_OPTIONS
 
 config BUSYBOX_EXPR
 	bool "expr"
-	default n
+	default y
 	help
 	  expr is used to calculate numbers and print the result
 	  to standard output.
@@ -324,7 +324,7 @@ config BUSYBOX_ID
 
 config BUSYBOX_INSTALL
 	bool "install"
-	default n
+	default y
 	help
 	  Copy files and set attributes.
 
@@ -479,7 +479,7 @@ config BUSYBOX_NOHUP
 
 config BUSYBOX_OD
 	bool "od"
-	default n
+	default y
 	help
 	  od is used to dump binary files in octal and other formats.
 
@@ -531,7 +531,7 @@ config BUSYBOX_RM
 
 config BUSYBOX_RMDIR
 	bool "rmdir"
-	default n
+	default y
 	help
 	  rmdir is used to remove empty directories.
 
@@ -615,7 +615,7 @@ config BUSYBOX_FEATURE_SORT_BIG
 
 config BUSYBOX_SPLIT
 	bool "split"
-	default n
+	default y
 	help
 	  split a file into pieces.
 
@@ -663,7 +663,7 @@ config BUSYBOX_SYNC
 
 config BUSYBOX_TAC
 	bool "tac"
-	default n
+	default y
 	help
 	  tac is used to concatenate and print files in reverse.
 
@@ -684,7 +684,7 @@ config BUSYBOX_FEATURE_FANCY_TAIL
 
 config BUSYBOX_TEE
 	bool "tee"
-	default n
+	default y
 	help
 	  tee is used to read from standard input and write
 	  to standard output and files.
@@ -746,7 +746,7 @@ config BUSYBOX_FEATURE_TR_EQUIV
 
 config BUSYBOX_TRUE
 	bool "true"
-	default n
+	default y
 	help
 	  true returns an exit code of TRUE (0).
 
@@ -830,7 +830,7 @@ config BUSYBOX_WHOAMI
 
 config BUSYBOX_YES
 	bool "yes"
-	default n
+	default y
 	help
 	  yes is used to repeatedly output a specific string, or
 	  the default string `y'.

+ 1 - 1
package/busybox/config/debianutils/Config.in

@@ -7,7 +7,7 @@ menu "Debian Utilities"
 
 config BUSYBOX_MKTEMP
 	bool "mktemp"
-	default n
+	default y
 	help
 	  mktemp is used to create unique temporary files
 

+ 1 - 1
package/busybox/config/editors/Config.in

@@ -22,7 +22,7 @@ config BUSYBOX_FEATURE_AWK_LIBM
 
 config BUSYBOX_CMP
 	bool "cmp"
-	default n
+	default y
 	help
 	  cmp is used to compare two files and returns the result
 	  to standard output.

+ 214 - 0
package/busybox/patches/006-od-bloat.patch

@@ -0,0 +1,214 @@
+diff -Nur busybox-1.17.1.orig/coreutils/od.c busybox-1.17.1/coreutils/od.c
+--- busybox-1.17.1.orig/coreutils/od.c	2010-07-06 04:25:53.000000000 +0200
++++ busybox-1.17.1/coreutils/od.c	2010-08-15 12:50:31.000000000 +0200
+@@ -13,210 +13,5 @@
+ 
+ 
+ #include "libbb.h"
+-#if ENABLE_DESKTOP
+ /* This one provides -t (busybox's own build script needs it) */
+ #include "od_bloaty.c"
+-#else
+-
+-#include "dump.h"
+-
+-static void
+-odoffset(dumper_t *dumper, int argc, char ***argvp)
+-{
+-	char *num, *p;
+-	int base;
+-	char *end;
+-
+-	/*
+-	 * The offset syntax of od(1) was genuinely bizarre.  First, if
+-	 * it started with a plus it had to be an offset.  Otherwise, if
+-	 * there were at least two arguments, a number or lower-case 'x'
+-	 * followed by a number makes it an offset.  By default it was
+-	 * octal; if it started with 'x' or '0x' it was hex.  If it ended
+-	 * in a '.', it was decimal.  If a 'b' or 'B' was appended, it
+-	 * multiplied the number by 512 or 1024 byte units.  There was
+-	 * no way to assign a block count to a hex offset.
+-	 *
+-	 * We assumes it's a file if the offset is bad.
+-	 */
+-	p = **argvp;
+-
+-	if (!p) {
+-		/* hey someone is probably piping to us ... */
+-		return;
+-	}
+-
+-	if ((*p != '+')
+-		&& (argc < 2
+-			|| (!isdigit(p[0])
+-				&& ((p[0] != 'x') || !isxdigit(p[1])))))
+-		return;
+-
+-	base = 0;
+-	/*
+-	 * skip over leading '+', 'x[0-9a-fA-f]' or '0x', and
+-	 * set base.
+-	 */
+-	if (p[0] == '+')
+-		++p;
+-	if (p[0] == 'x' && isxdigit(p[1])) {
+-		++p;
+-		base = 16;
+-	} else if (p[0] == '0' && p[1] == 'x') {
+-		p += 2;
+-		base = 16;
+-	}
+-
+-	/* skip over the number */
+-	if (base == 16)
+-		for (num = p; isxdigit(*p); ++p)
+-			continue;
+-	else
+-		for (num = p; isdigit(*p); ++p)
+-			continue;
+-
+-	/* check for no number */
+-	if (num == p)
+-		return;
+-
+-	/* if terminates with a '.', base is decimal */
+-	if (*p == '.') {
+-		if (base)
+-			return;
+-		base = 10;
+-	}
+-
+-	dumper->dump_skip = strtol(num, &end, base ? base : 8);
+-
+-	/* if end isn't the same as p, we got a non-octal digit */
+-	if (end != p)
+-		dumper->dump_skip = 0;
+-	else {
+-		if (*p) {
+-			if (*p == 'b') {
+-				dumper->dump_skip *= 512;
+-				++p;
+-			} else if (*p == 'B') {
+-				dumper->dump_skip *= 1024;
+-				++p;
+-			}
+-		}
+-		if (*p)
+-			dumper->dump_skip = 0;
+-		else {
+-			++*argvp;
+-			/*
+-			 * If the offset uses a non-octal base, the base of
+-			 * the offset is changed as well.  This isn't pretty,
+-			 * but it's easy.
+-			 */
+-#define	TYPE_OFFSET	7
+-			{
+-				char x_or_d;
+-				if (base == 16) {
+-					x_or_d = 'x';
+-					goto DO_X_OR_D;
+-				}
+-				if (base == 10) {
+-					x_or_d = 'd';
+- DO_X_OR_D:
+-					dumper->fshead->nextfu->fmt[TYPE_OFFSET]
+-						= dumper->fshead->nextfs->nextfu->fmt[TYPE_OFFSET]
+-						= x_or_d;
+-				}
+-			}
+-		}
+-	}
+-}
+-
+-static const char *const add_strings[] = {
+-	"16/1 \"%3_u \" \"\\n\"",				/* a */
+-	"8/2 \" %06o \" \"\\n\"",				/* B, o */
+-	"16/1 \"%03o \" \"\\n\"",				/* b */
+-	"16/1 \"%3_c \" \"\\n\"",				/* c */
+-	"8/2 \"  %05u \" \"\\n\"",				/* d */
+-	"4/4 \"     %010u \" \"\\n\"",			/* D */
+-	"2/8 \"          %21.14e \" \"\\n\"",	/* e (undocumented in od), F */
+-	"4/4 \" %14.7e \" \"\\n\"",				/* f */
+-	"4/4 \"       %08x \" \"\\n\"",			/* H, X */
+-	"8/2 \"   %04x \" \"\\n\"",				/* h, x */
+-	"4/4 \"    %11d \" \"\\n\"",			/* I, L, l */
+-	"8/2 \" %6d \" \"\\n\"",				/* i */
+-	"4/4 \"    %011o \" \"\\n\"",			/* O */
+-};
+-
+-static const char od_opts[] ALIGN1 = "aBbcDdeFfHhIiLlOoXxv";
+-
+-static const char od_o2si[] ALIGN1 = {
+-	0, 1, 2, 3, 5,
+-	4, 6, 6, 7, 8,
+-	9, 0xa, 0xb, 0xa, 0xa,
+-	0xb, 1, 8, 9,
+-};
+-
+-int od_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
+-int od_main(int argc, char **argv)
+-{
+-	int ch;
+-	int first = 1;
+-	char *p;
+-	dumper_t *dumper = alloc_dumper();
+-
+-	while ((ch = getopt(argc, argv, od_opts)) > 0) {
+-		if (ch == 'v') {
+-			dumper->dump_vflag = ALL;
+-		} else if (((p = strchr(od_opts, ch)) != NULL) && (*p != '\0')) {
+-			if (first) {
+-				first = 0;
+-				bb_dump_add(dumper, "\"%07.7_Ao\n\"");
+-				bb_dump_add(dumper, "\"%07.7_ao  \"");
+-			} else {
+-				bb_dump_add(dumper, "\"         \"");
+-			}
+-			bb_dump_add(dumper, add_strings[(int)od_o2si[(p - od_opts)]]);
+-		} else {	/* P, p, s, w, or other unhandled */
+-			bb_show_usage();
+-		}
+-	}
+-	if (!dumper->fshead) {
+-		bb_dump_add(dumper, "\"%07.7_Ao\n\"");
+-		bb_dump_add(dumper, "\"%07.7_ao  \" 8/2 \"%06o \" \"\\n\"");
+-	}
+-
+-	argc -= optind;
+-	argv += optind;
+-
+-	odoffset(dumper, argc, &argv);
+-
+-	return bb_dump_dump(dumper, argv);
+-}
+-#endif /* ENABLE_DESKTOP */
+-
+-/*-
+- * Copyright (c) 1990 The Regents of the University of California.
+- * All rights reserved.
+- *
+- * Redistribution and use in source and binary forms, with or without
+- * modification, are permitted provided that the following conditions
+- * are met:
+- * 1. Redistributions of source code must retain the above copyright
+- *    notice, this list of conditions and the following disclaimer.
+- * 2. Redistributions in binary form must reproduce the above copyright
+- *    notice, this list of conditions and the following disclaimer in the
+- *    documentation and/or other materials provided with the distribution.
+- * 3. Neither the name of the University nor the names of its contributors
+- *    may be used to endorse or promote products derived from this software
+- *    without specific prior written permission.
+- *
+- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+- * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+- * SUCH DAMAGE.
+- */

+ 3 - 3
package/bwm/Makefile

@@ -18,9 +18,9 @@ include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,BWM,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
-CONFIG_STYLE:=	manual
-BUILD_STYLE:=	manual
-INSTALL_STYLE:=	manual
+CONFIG_STYLE:=		manual
+BUILD_STYLE:=		manual
+INSTALL_STYLE:=		manual
 
 do-build:
 	${TARGET_CC} ${TARGET_CFLAGS} ${WRKBUILD}/bwm.c -o ${WRKBUILD}/bwm

+ 1 - 1
package/bzip2/Makefile

@@ -9,7 +9,7 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		3c15a0c8d1d3ee1c46a1634d00617b1a
 PKG_DESCR:=		bzip2 compression utility
 PKG_SECTION:=		archive
-PKG_URL:=		http://www.bzip.org
+PKG_URL:=		http://www.bzip.org/
 PKG_SITES:=		http://www.bzip.org/1.0.5/
 
 include ${TOPDIR}/mk/package.mk

+ 1 - 1
package/bzr/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		0b253f59601ebc9ee5975c612fc65f43
 PKG_DESCR:=		bazaar
 PKG_SECTION:=		scm
 PKG_DEPENDS:=		python2
-PKG_BUILDDEP+=		python2
+PKG_BUILDDEP:=		python2
 PKG_URL:=		http://bazaar.canonical.com/en/
 PKG_SITES:=		http://launchpad.net/bzr/2.0/${PKG_VERSION}/+download/
 

+ 1 - 1
package/cairo/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		b60a82f405f9400bbfdcf850b1728d25
 PKG_DESCR:=		cairo graphics library
 PKG_SECTION:=		libs
 PKG_DEPENDS:=		fontconfig libfreetype libpng libx11 pixman
-PKG_BUILDDEP+=		libpng pixman freetype fontconfig libX11
+PKG_BUILDDEP:=		libpng pixman freetype fontconfig libX11
 PKG_URL:=		http://cairographics.org/
 PKG_SITES:=		http://cairographics.org/releases/
 

+ 1 - 1
package/ccid/Makefile

@@ -9,7 +9,7 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		7fcdbacacd955659286f988fa9b6e0be
 PKG_DESCR:=		a generic USB CCID and ICCD driver
 PKG_SECTION:=		crypto
-PKG_BUILDDEP+=		pcsc-lite
+PKG_BUILDDEP:=		pcsc-lite
 PKG_URL:=		http://pcsclite.alioth.debian.org/ccid.html
 PKG_SITES:=		https://alioth.debian.org/frs/download.php/3281/
 

+ 9 - 4
package/cfgfs/Makefile

@@ -8,20 +8,25 @@ PKG_VERSION:=		1.0.7
 PKG_RELEASE:=		3
 PKG_DESCR:=		compressed config filesystem
 PKG_SECTION:=		base
+PKG_URL:=		http://www.openadk.org/
 
 PKG_TARGET_DEPENDS:=	alix wrap foxboard ag241 foxg20 routerboard
 
+PKG_CFLINE_CFGFS:=	select BUSYBOX_COMM@
+PKG_CFLINE_CFGFS+=	select BUSYBOX_MD5SUM@
+PKG_CFLINE_CFGFS+=	select BUSYBOX_XARGS@
+PKG_CFLINE_CFGFS+=	select BUSYBOX_FEATURE_SORT_BIG@
+PKG_CFLINE_CFGFS+=	select BUSYBOX_DIFF@
+PKG_CFLINE_CFGFS+=	depends on !ADK_TARGET_ROOTFS_NFSROOT && !ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK && !ADK_TARGET_ROOTFS_INITRAMFS
+PKG_DFLT_CFGFS:=	y
+
 WRKDIST=		${WRKDIR}/${PKG_NAME}-${PKG_VERSION}
 NO_DISTFILES:=		1
 
-CFLINE_CFGFS:= 		select BUSYBOX_COMM\n\tselect BUSYBOX_MD5SUM\n\tselect BUSYBOX_XARGS\n\tselect BUSYBOX_FEATURE_SORT_BIG\n\tselect BUSYBOX_DIFF\n\tdepends on !ADK_TARGET_ROOTFS_NFSROOT && !ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK && !ADK_TARGET_ROOTFS_INITRAMFS
-
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,CFGFS,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
-PKGDFLT_CFGFS=		y
-
 CONFIG_STYLE:=		manual
 INSTALL_STYLE:=		manual
 

+ 1 - 1
package/cgilib/Makefile

@@ -9,7 +9,7 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		2c7053f58dfb06f7a80a112797ed7e86
 PKG_DESCR:=		Simple CGI Library
 PKG_SECTION:=		libs
-PKG_URL:=		http://www.infodrom.org/projects/cgilib
+PKG_URL:=		http://www.infodrom.org/projects/cgilib/
 PKG_SITES:=		http://www.infodrom.org/projects/cgilib/download/
 
 include ${TOPDIR}/mk/package.mk

+ 1 - 1
package/chillispot/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		9d2597756af3fa14d7331b4a3651fc9b
 PKG_DESCR:=		Wireless LAN Access Point Controller
 PKG_SECTION:=		wifi
 PKG_DEPENDS:=		kmod-tun
-PKG_URL:=		http://www.chillispot.info
+PKG_URL:=		http://www.chillispot.info/
 PKG_SITES=		http://www.chillispot.info/download/
 
 include ${TOPDIR}/mk/package.mk

+ 1 - 1
package/collectd/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		c473cf8e9f22f5a9f7ef4c5be1b0c436
 PKG_DESCR:=		System statistics collection daemon
 PKG_SECTION:=		misc
 PKG_DEPENDS:=		libpthread
-PKG_URL:=		http://collectd.org
+PKG_URL:=		http://collectd.org/
 PKG_SITES:=		http://collectd.org/files/
 
 PKG_FLAVOURS:=		CPU LOAD MEMORY PING

+ 1 - 0
package/compositeproto/Makefile

@@ -8,6 +8,7 @@ PKG_VERSION:=		0.4.1
 PKG_RELEASE:=		1
 PKG_MD5SUM:=		6994a209774fe7877fd8e0c9fafe2466
 PKG_SITES:=		${MASTER_SITE_XORG}
+PKG_SUBPKGS:=
 
 include $(TOPDIR)/mk/package.mk
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 3 - 2
package/conntrack-tools/Makefile

@@ -10,9 +10,10 @@ PKG_MD5SUM:=		35b0ab9cde069b4ec8a493daae82d67b
 PKG_DESCR:=		Connection tracking userspace tools
 PKG_SECTION:=		firewall
 PKG_DEPENDS:=		libnetfilter-conntrack
-PKG_BUILDDEP+=		libnetfilter_conntrack
-PKG_URL:=		http://conntrack-tools.netfilter.org
+PKG_BUILDDEP:=		libnetfilter_conntrack
+PKG_URL:=		http://conntrack-tools.netfilter.org/
 PKG_SITES:=		http://www.netfilter.org/projects/conntrack-tools/files/
+
 DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.bz2
 
 include $(TOPDIR)/mk/package.mk

+ 4 - 3
package/coreutils/Makefile

@@ -12,13 +12,14 @@ PKG_SECTION:=		base
 PKG_URL:=		http://www.gnu.org/software/coreutils/
 PKG_SITES:=		http://ftp.gnu.org/gnu/coreutils/
 
-PKG_DESCR_TSORT:=	topological sort utility
-PKG_SECTION_TSORT:=	misc
+PKG_SUBPKGS:=		TSORT
+PKGSD_TSORT:=		topological sort utility
+PKGSC_TSORT:=		misc
 
 include $(TOPDIR)/mk/package.mk
 
 #$(eval $(call PKG_template,COREUTILS,$(PKG_NAME),$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,TSORT,tsort,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_TSORT},${PKG_SECTION_TSORT}))
+$(eval $(call PKG_template,TSORT,tsort,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_TSORT},${PKGSC_TSORT}))
 
 post-install:
 	$(INSTALL_DIR) $(IDIR_TSORT)/usr/bin

+ 2 - 1
package/cpufrequtils/Makefile

@@ -11,7 +11,8 @@ PKG_DESCR:=		utilities for the Linux kernel cpufreq subsystem
 PKG_SECTION:=		utils
 PKG_URL:=		http://www.kernel.org/pub/linux/utils/kernel/cpufreq/cpufrequtils.html
 PKG_SITES:=		http://www.kernel.org/pub/linux/utils/kernel/cpufreq/
-PKG_TARGET_DEPENDS:=	!foxboard !foxg20 !ag241
+
+PKG_TARGET_DEPENDS:=	!ag241 !foxboard !foxg20
 
 include $(TOPDIR)/mk/package.mk
 

+ 3 - 3
package/cryptinit/Makefile

@@ -6,15 +6,15 @@ include ${TOPDIR}/rules.mk
 PKG_NAME:=		cryptinit
 PKG_VERSION:=		1.0.2
 PKG_RELEASE:=		1
-PKG_BUILDDEP+=		cryptsetup lvm
 PKG_DESCR:=		init for encrypted rootfilesystem
 PKG_SECTION:=		base
+PKG_BUILDDEP:=		cryptsetup lvm
+
+PKG_CFLINE_CRYPTINIT:=	depends on ADK_TARGET_ROOTFS_ENCRYPTED
 
 WRKDIST=		${WRKDIR}/${PKG_NAME}-${PKG_VERSION}
 NO_DISTFILES:=		1
 
-CFLINE_CRYPTINIT:=	depends on ADK_TARGET_ROOTFS_ENCRYPTED
-
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,CRYPTINIT,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))

+ 4 - 4
package/cryptsetup/Makefile

@@ -9,10 +9,10 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		318a64470861ea5b92a52f2014f1e7c1
 PKG_DESCR:=		LUKS cryptsetup tools
 PKG_SECTION:=		crypto
-PKG_DEPENDS:=		libgcrypt device-mapper libuuid libpopt \
-			kmod-dm-crypt kmod-crypto-aes kmod-crypto-cbc \
-			kmod-crypto-sha256 kmod-blk-dev-dm
-PKG_BUILDDEP+=		libgcrypt popt e2fsprogs lvm
+PKG_DEPENDS:=		libgcrypt device-mapper libuuid libpopt
+PKG_DEPENDS+=		kmod-dm-crypt kmod-crypto-aes kmod-crypto-cbc
+PKG_DEPENDS+=		kmod-crypto-sha256 kmod-blk-dev-dm
+PKG_BUILDDEP:=		libgcrypt popt e2fsprogs lvm
 PKG_URL:=		http://cryptsetup.googlecode.com/
 PKG_SITES:=		http://cryptsetup.googlecode.com/files/
 

+ 1 - 1
package/ctorrent/Makefile

@@ -6,10 +6,10 @@ include ${TOPDIR}/rules.mk
 PKG_NAME:=		ctorrent
 PKG_VERSION:=		dnh3.3.2
 PKG_RELEASE:=		1
-PKG_BUILDDEP+=		openssl
 PKG_MD5SUM:=		59b23dd05ff70791cd6449effa7fc3b6
 PKG_DESCR:=		console-based BitTorrent client
 PKG_SECTION:=		p2p
+PKG_BUILDDEP:=		openssl
 PKG_URL:=		http://www.rahul.net/dholmes/ctorrent
 PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=dtorrent/}
 

+ 2 - 3
package/cups/Makefile

@@ -6,13 +6,12 @@ include ${TOPDIR}/rules.mk
 PKG_NAME:=		cups
 PKG_VERSION:=		1.4.2
 PKG_RELEASE:=		1
-PKG_BUILDDEP+=		zlib
 PKG_MD5SUM:=		d95e2d588e3d36e563027a963b117b1b
 PKG_DESCR:=		Common Unix Printing System
 PKG_SECTION:=		net/misc
 PKG_DEPENDS:=		zlib libpthread
-PKG_BUILDDEP+=		zlib
-PKG_URL:=		http://www.cups.org
+PKG_BUILDDEP:=		zlib
+PKG_URL:=		http://www.cups.org/
 PKG_SITES:=		ftp://ftp.easysw.com/pub/cups/${PKG_VERSION}/
 
 DISTFILES:=		${PKG_NAME}-${PKG_VERSION}-source.tar.bz2

+ 9 - 8
package/curl/Makefile

@@ -10,15 +10,16 @@ PKG_MD5SUM:=		6dfb911a254a1b5ca8b534b98f2196aa
 PKG_DESCR:=		a client-side URL transfer tool
 PKG_SECTION:=		www
 PKG_DEPENDS:=		libcurl
-PKG_BUILDDEP+=		openssl zlib
+PKG_BUILDDEP:=		openssl zlib
 PKG_URL:=		http://curl.haxx.se/
 PKG_SITES:=		http://curl.haxx.se/download/
 
-PKG_DESCR_LIB:=		a client-side URL transfer library
-PKG_SECTION_LIB:=	libs
-PKG_DEPENDS_LIB:=	libopenssl zlib
-PKG_DESCR_LIB_DEV:=	development files for libcurl
-PKG_SECTION_LIB_DEV:=	devel
+PKG_SUBPKGS:=		CURL LIBCURL LIBCURL_DEV
+PKGSD_LIBCURL:=		a client-side URL transfer library
+PKGSC_LIBCURL:=		libs
+PKGSS_LIBCURL:=		libopenssl zlib
+PKGSD_LIBCURL_DEV:=	development files for libcurl
+PKGSC_LIBCURL_DEV:=	devel
 
 PKG_FLAVOURS:=		WITH_IPV6
 PKGFD_WITH_IPV6:=	enable IPv6 support
@@ -26,8 +27,8 @@ PKGFD_WITH_IPV6:=	enable IPv6 support
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,CURL,curl,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,LIBCURL,libcurl,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS_LIB},${PKG_DESCR_LIB},${PKG_SECTION_LIB}))
-$(eval $(call PKG_template,LIBCURL_DEV,libcurl-dev,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_LIB_DEV},${PKG_SECTION_LIB_DEV}))
+$(eval $(call PKG_template,LIBCURL,libcurl,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_LIBCURL},${PKGSD_LIBCURL},${PKGSC_LIBCURL}))
+$(eval $(call PKG_template,LIBCURL_DEV,libcurl-dev,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_LIBCURL_DEV},${PKGSC_LIBCURL_DEV}))
 
 SUB_INSTALLS-y:=
 SUB_INSTALLS-m:=

+ 0 - 8
package/cvs/Makefile

@@ -16,14 +16,6 @@ include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,CVS,$(PKG_NAME),$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
-#CONFIG_STYLE:=		manual
-# use following to add ./configure options
-#CONFIGURE_ARGS+=	--disable-foo
-# overwrite any configure variables
-#CONFIGURE_ENV+=	ac_cv_func_setpgrp_void=yes
-#BUILD_STYLE:=		manual
-#INSTALL_STYLE:=	manual
-
 post-install:
 	$(INSTALL_DIR) $(IDIR_CVS)/usr/bin
 	$(INSTALL_BIN) $(WRKINST)/usr/bin/cvs \

+ 2 - 2
package/cxxtools/Makefile

@@ -10,8 +10,8 @@ PKG_MD5SUM:=		16ce92a83beb925fa5138fc9a52d55af
 PKG_DESCR:=		a collection of general-purpose C++ classes
 PKG_SECTION:=		libs
 PKG_DEPENDS:=		libiconv
-PKG_BUILDDEP+=		libiconv
-PKG_URL:=		http://www.tntnet.org
+PKG_BUILDDEP:=		libiconv
+PKG_URL:=		http://www.tntnet.org/
 PKG_SITES:=		http://www.tntnet.org/download/
 
 include ${TOPDIR}/mk/package.mk

+ 4 - 3
package/cyrus-sasl/Makefile

@@ -10,12 +10,13 @@ PKG_MD5SUM:=		45dde9d19193ae9dd388eb68b2027bc9
 PKG_DESCR:=		a general purpose authentication library
 PKG_SECTION:=		libs
 PKG_DEPENDS:=		libopenssl
-PKG_BUILDDEP+=		openssl
-PKG_URL:=		http://asg.web.cmu.edu/sasl
+PKG_BUILDDEP:=		openssl
+PKG_URL:=		http://asg.web.cmu.edu/sasl/
 PKG_SITES:=		http://ftp.andrew.cmu.edu/pub/cyrus-mail/
-
 PKG_NOPARALLEL:=	1
 
+PKG_SUBPKGS:=		LIBSASL2
+
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,LIBSASL2,libsasl2,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))

+ 1 - 0
package/damageproto/Makefile

@@ -8,6 +8,7 @@ PKG_VERSION:=		1.2.0
 PKG_RELEASE:=		1
 PKG_MD5SUM:=		423516fd64e43e8671120056b0d9f597
 PKG_SITES:=		${MASTER_SITE_XORG}
+PKG_SUBPKGS:=
 
 include $(TOPDIR)/mk/package.mk
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 3 - 3
package/dansguardian/Makefile

@@ -9,11 +9,11 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		0987a1c9bfbdf398118386f10279611a
 PKG_DESCR:=		web content filter proxy
 PKG_SECTION:=		proxy
-PKG_CXX:=		DANSGUARDIAN
 PKG_DEPENDS:=		libpcre zlib
-PKG_BUILDDEP+=		pcre zlib
-PKG_URL:=		http://dansguardian.org
+PKG_BUILDDEP:=		pcre zlib
+PKG_URL:=		http://dansguardian.org/
 PKG_SITES:=		http://dansguardian.org/downloads/2/Stable/
+PKG_CXX:=		DANSGUARDIAN
 
 include ${TOPDIR}/mk/package.mk
 

+ 4 - 14
package/davfs2/Makefile

@@ -5,24 +5,14 @@ include ${TOPDIR}/rules.mk
 
 PKG_NAME:=		davfs2
 PKG_VERSION:=		1.4.6
-PKG_RELEASE:=		1
+PKG_RELEASE:=		2
 PKG_MD5SUM:=		c9e8aeb15daeba4b6283b40bb640e908
 PKG_DESCR:=		WebDAV filesystem
 PKG_SECTION:=		net/fs
-PKG_BUILDDEP+=		libiconv neon
-ifneq (${ADK_PACKAGE_DAVFS2_FUSE}${ADK_PACKAGE_DAVFS2_BOTH},)
-PKG_BUILDDEP+=		fuse
-endif
-PKG_URL:=		http://savannah.nongnu.org/projects/davfs2
-PKG_SITES:=		http://www.very-clever.com/download/nongnu/davfs2/
-
-ifeq (${ADK_PACKAGE_DAVFS2_FUSE},y)
 PKG_DEPENDS:=		fuse-utils kmod-fuse-fs libiconv neon
-else ifeq (${ADK_PACKAGE_DAVFS2_CODA},y)
-PKG_DEPENDS:=		kmod-coda-fs libiconv neon
-else
-PKG_DEPENDS:=		kmod-coda-fs fuse-utils kmod-fuse-fs libiconv neon
-endif
+PKG_BUILDDEP:=		libiconv neon fuse
+PKG_URL:=		http://savannah.nongnu.org/projects/davfs2/
+PKG_SITES:=		http://www.very-clever.com/download/nongnu/davfs2/
 
 include ${TOPDIR}/mk/package.mk
 

+ 1 - 1
package/dbus-glib/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		cd0ab148fb0c786fc88be49d19971f50
 PKG_DESCR:=		DBUS glib bindings
 PKG_SECTION:=		libs
 PKG_DEPENDS:=		dbus
-PKG_BUILDDEP+=		dbus
+PKG_BUILDDEP:=		dbus
 PKG_URL:=		http://www.freedesktop.org/wiki/Software/DBusBindings
 PKG_SITES:=		http://dbus.freedesktop.org/releases/dbus-glib/
 

+ 2 - 2
package/dbus/Makefile

@@ -10,8 +10,8 @@ PKG_MD5SUM:=		565346cecd9cfecf1463540c6086cc2c
 PKG_DESCR:=		DBUS library
 PKG_SECTION:=		libs
 PKG_DEPENDS:=		libexpat
-PKG_BUILDDEP+=		expat
-PKG_URL:=		http://dbus.freedesktop.org
+PKG_BUILDDEP:=		expat
+PKG_URL:=		http://dbus.freedesktop.org/
 PKG_SITES:=		http://dbus.freedesktop.org/releases/dbus/
 
 ifeq ($(ADK_STATIC),y)

+ 1 - 1
package/deco/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		f77f60e8be0cae1f814cba1ef61bf4d0
 PKG_DESCR:=		Text-based, full featured file manager
 PKG_SECTION:=		misc
 PKG_DEPENDS:=		libncurses
-PKG_BUILDDEP+=		ncurses
+PKG_BUILDDEP:=		ncurses
 PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=deco/}
 
 DISTFILES:=		${PKG_NAME}${PKG_VERSION}.tgz

+ 0 - 38
package/depmaker

@@ -1,38 +0,0 @@
-unset MAKEFLAGS
-export MAKEFLAGS=s
-cd "$(dirname "$0")"
-export TOPDIR=$(realpath ..)
-if gmake --help >/dev/null 2>&1; then
-	export GMAKE=gmake
-else
-	export GMAKE=make
-fi
-GMAKE="$GMAKE --no-print-directory"
-(( x_cols = (COLUMNS > 10) ? COLUMNS - 2 : 80 ))
-typeset -L$x_cols pbar
-
-for dn in */Makefile; do
-	dn=${dn%/*}
-	pbar="$dn ..."
-	print -nu2 "$pbar\r"
-	case $dn {
-	(@(?(e)g|uc|)libc|libpthread|uclibc++) ;;
-	(*)
-		# dnu: directory name, uppercase, y/-+/_X/
-		typeset -u dnu=${dn//-/_}
-		dnu=${dnu//+/X}
-		print "package-\$(ADK_COMPILE_${dnu}) += $dn"
-		;;
-	}
-	cd $dn
-	deps=$($GMAKE show=PKG_BUILDDEP)
-	cd ..
-	[[ -n $deps ]] || continue
-	x="${dn}-compile:"
-	for dep in $deps; do
-		x="$x ${dep}-compile"
-	done
-	print -r -- $x
-done >Depends.mk
-pbar=done
-print -u2 "$pbar"

+ 2 - 3
package/dhcp-forwarder/Makefile

@@ -9,9 +9,8 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		fb3670dee9f71af1e55ac5dcd64e213e
 PKG_DESCR:=		DHCP relay agent
 PKG_SECTION:=		dhcp
-PKG_URL:=		http://www.nongnu.org/dhcp-fwd
-PKG_SITES:=		http://savannah.nongnu.org/download/dhcp-fwd/ \
-			http://ftp.cc.uoc.gr/mirrors/nongnu.org/dhcp-fwd/
+PKG_URL:=		http://www.nongnu.org/dhcp-fwd/
+PKG_SITES:=		http://savannah.nongnu.org/download/dhcp-fwd/
 
 DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.bz2
 

+ 4 - 4
package/dhcp/Makefile

@@ -9,17 +9,17 @@ PKG_RELEASE:=		2
 PKG_MD5SUM:=		38a74c89d8913b9b5f33737047623c18
 PKG_DESCR:=		ISC DHCP server
 PKG_SECTION:=		dhcp
-PKG_URL:=		https://www.isc.org/software/dhcp
+PKG_URL:=		https://www.isc.org/software/dhcp/
 PKG_SITES:=		ftp://ftp.isc.org/isc/dhcp/
 
-PKG_DESCR_RELAY:=	ISC DHCP relay server
+PKG_SUBPKGS:=		DHCP_SERVER DHCP_RELAY
+PKGSD_DHCP_RELAY:=	ISC DHCP relay server
 
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,DHCP_SERVER,dhcp-server,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,DHCP_RELAY,dhcp-relay,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_RELAY},${PKG_SECTION}))
+$(eval $(call PKG_template,DHCP_RELAY,dhcp-relay,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_DHCP_RELAY},${PKG_SECTION}))
 
-#TCFLAGS+=		-D_GNU_SOURCE
 CONFIGURE_ENV+=		ac_cv_file__dev_random=yes
 
 post-install:

+ 1 - 1
package/dialog/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		3caebd641a9f337b980becb4444336c5
 PKG_DESCR:=		A text gui interface
 PKG_SECTION:=		misc
 PKG_DEPENDS:=		libncurses
-PKG_BUILDDEP+=		ncurses
+PKG_BUILDDEP:=		ncurses
 PKG_SITES:=		ftp://ftp.us.debian.org/debian/pool/main/d/dialog/
 
 DISTFILES:=             ${PKG_NAME}_${PKG_VERSION}.orig.tar.gz

+ 2 - 2
package/digitemp/Makefile

@@ -10,8 +10,8 @@ PKG_MD5SUM:=		9be2e48db37920f21925ae6e88f83b84
 PKG_DESCR:=		program for reading values from 1-wire devices
 PKG_SECTION:=		misc
 PKG_DEPENDS:=		libusb
-PKG_BUILDDEP+=		libusb libusb-compat
-PKG_URL:=		http://www.digitemp.com/software/linux
+PKG_BUILDDEP:=		libusb libusb-compat
+PKG_URL:=		http://www.digitemp.com/software/linux/
 PKG_SITES:=		http://www.digitemp.com/software/linux/
 
 include ${TOPDIR}/mk/package.mk

+ 4 - 4
package/dillo/Makefile

@@ -11,14 +11,14 @@ PKG_DESCR:=		small graphical web browser
 PKG_SECTION:=		x11/apps
 PKG_DEPENDS:=		libfltk libxi libiconv libpng zlib libjpeg
 PKG_DEPENDS+=		libstdcxx
-PKG_BUILDDEP+=		fltk libXi libiconv jpeg libpng zlib
+PKG_BUILDDEP:=		fltk libXi libiconv jpeg libpng zlib
 PKG_URL:=		http://www.dillo.org/
 PKG_SITES:=		http://www.dillo.org/download/
 
-DISTFILES:=             ${PKG_NAME}-${PKG_VERSION}.tar.bz2
-
-PKG_TARGET_DEPENDS:=    ibmx40 lemote
 PKG_HOST_DEPENDS:=	!cygwin
+PKG_TARGET_DEPENDS:=	ibmx40 lemote
+
+DISTFILES:=             ${PKG_NAME}-${PKG_VERSION}.tar.bz2
 
 include $(TOPDIR)/mk/package.mk
 

+ 1 - 1
package/dnsmasq/Makefile

@@ -9,7 +9,7 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		b093d7c6bc7f97ae6fd35d048529232a
 PKG_DESCR:=		A lightweight DNS and DHCP server
 PKG_SECTION:=		dns
-PKG_URL:=		http://thekelleys.org.uk/dnsmasq
+PKG_URL:=		http://thekelleys.org.uk/dnsmasq/
 PKG_SITES:=		http://thekelleys.org.uk/dnsmasq/
 
 include ${TOPDIR}/mk/package.mk

+ 1 - 1
package/dosfstools/Makefile

@@ -9,7 +9,7 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		bd273cf8aa6341c0b52cbac72050bcf4
 PKG_DESCR:=		Utilities to create and check MS-DOS FAT filesystems
 PKG_SECTION:=		fs
-PKG_URL:=		http://www.daniel-baumann.ch/software/dosfstools
+PKG_URL:=		http://www.daniel-baumann.ch/software/dosfstools/
 PKG_SITES:=		http://www.daniel-baumann.ch/software/dosfstools/
 
 include ${TOPDIR}/mk/package.mk

+ 1 - 1
package/dovecot/Makefile

@@ -9,7 +9,7 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		b7d0081b17ff6afae85e8dc14157fa57
 PKG_DESCR:=		A minimal and secure imap server
 PKG_SECTION:=		mail
-PKG_URL:=		http://www.dovecot.org
+PKG_URL:=		http://www.dovecot.org/
 PKG_SITES:=		http://www.dovecot.org/releases/1.2/
 
 include ${TOPDIR}/mk/package.mk

+ 1 - 0
package/dri2proto/Makefile

@@ -8,6 +8,7 @@ PKG_VERSION:=		2.3
 PKG_RELEASE:=		1
 PKG_MD5SUM:=		2087269416782cff56f9b22d1449c192
 PKG_SITES:=		http://xorg.freedesktop.org/releases/individual/proto/
+PKG_SUBPKGS:=
 
 include $(TOPDIR)/mk/package.mk
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 5 - 6
package/dropbear/Makefile

@@ -9,21 +9,20 @@ PKG_RELEASE:=		3
 PKG_MD5SUM:=		1c69ec674481d7745452f68f2ea5597e
 PKG_DESCR:=		SSH 2 server/client designed for embedded systems
 PKG_SECTION:=		net/security
-PKG_URL:=		http://matt.ucc.asn.au/dropbear
+PKG_URL:=		http://matt.ucc.asn.au/dropbear/
 PKG_SITES:=		http://matt.ucc.asn.au/dropbear/releases/
 
-PKG_DESCR_UTIL:=	Utility for converting SSH private keys
+PKG_DFLT_DROPBEAR:=	y if !ADK_TOOLCHAIN_ONLY
+PKG_SUBPKGS:=		DROPBEAR DBCONVERT
+PKGSD_DBCONVERT:=	Utility for converting SSH private keys
 
 include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,DROPBEAR,$(PKG_NAME),$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,DBCONVERT,dropbearconvert,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_UTIL},${PKG_SECTION}))
-
-PKGDFLT_DROPBEAR:=	y if !ADK_TOOLCHAIN_ONLY
+$(eval $(call PKG_template,DBCONVERT,dropbearconvert,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_DBCONVERT},${PKG_SECTION}))
 
 BUILD_STYLE:=		manual
 INSTALL_STYLE:=		manual
-
 CONFIGURE_ARGS+=	--disable-pam \
 			--enable-openpty \
 			--enable-syslog \

+ 2 - 2
package/dsniff/Makefile

@@ -10,8 +10,8 @@ PKG_MD5SUM:=		2f761fa3475682a7512b0b43568ee7d6
 PKG_DESCR:=		tools for network auditing and penetration testing
 PKG_SECTION:=		net
 PKG_DEPENDS:=		libnet libpcap libnids libopenssl libgdbm
-PKG_BUILDDEP+=		libnids openssl gdbm libpcap libnet
-PKG_URL:=		http://www.monkey.org/~dugsong/dsniff
+PKG_BUILDDEP:=		libnids openssl gdbm libpcap libnet
+PKG_URL:=		http://www.monkey.org/~dugsong/dsniff/
 PKG_SITES:=		http://www.monkey.org/~dugsong/dsniff/beta/
 
 WRKDIST=		${WRKDIR}/${PKG_NAME}-2.4

+ 14 - 14
package/e2fsprogs/Makefile

@@ -13,25 +13,25 @@ PKG_DEPENDS:=		libcom-err libuuid libblkid libpthread
 PKG_URL:=		http://e2fsprogs.sourceforge.net/
 PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=e2fsprogs/}
 
-PKG_DESCR_UUID:=	UUID library
-PKG_SECTION_UUID:=	libs
-PKG_DESCR_COM_ERR:=	Common error library
-PKG_SECTION_COM_ERR:=	libs
-PKG_DESCR_BLKID:=	Libblkid
-PKG_SECTION_BLKID:=	libs
-PKG_DESCR_SS:=		Subsystem command parsing library
-PKG_SECTION_SS:=	libs
+PKG_SUBPKGS:=		E2FSPROGS LIBUUID LIBCOM_ERR LIBSS LIBBLKID
+PKGSD_LIBUUID:=		UUID library
+PKGSC_LIBUUID:=		libs
+PKGSD_LIBCOM_ERR:=	Common error library
+PKGSC_LIBCOM_ERR:=	libs
+PKGSD_LIBSS:=		Subsystem command parsing library
+PKGSC_LIBSS:=		libs
+PKGSD_LIBBLKID:=	Libblkid
+PKGSC_LIBBLKID:=	libs
 
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,E2FSPROGS,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,LIBUUID,libuuid,${PKG_VERSION}-${PKG_RELEASE},,${PKG_DESCR_UUID},${PKG_SECTION_UUID}))
-$(eval $(call PKG_template,LIBCOM_ERR,libcom-err,${PKG_VERSION}-${PKG_RELEASE},,${PKG_DESCR_COM_ERR},${PKG_SECTION_COM_ERR}))
-$(eval $(call PKG_template,LIBSS,libss,${PKG_VERSION}-${PKG_RELEASE},,${PKG_DESCR_SS},${PKG_SECTION_SS}))
-$(eval $(call PKG_template,LIBBLKID,libblkid,${PKG_VERSION}-${PKG_RELEASE},,${PKG_DESCR_BLKID},${PKG_SECTION_BLKID}))
+$(eval $(call PKG_template,LIBUUID,libuuid,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBUUID},${PKGSC_LIBUUID}))
+$(eval $(call PKG_template,LIBCOM_ERR,libcom-err,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBCOM_ERR},${PKGSC_LIBCOM_ERR}))
+$(eval $(call PKG_template,LIBSS,libss,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBSS},${PKGSC_LIBSS}))
+$(eval $(call PKG_template,LIBBLKID,libblkid,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBBLKID},${PKGSC_LIBBLKID}))
 
-CONFIGURE_ARGS+=	--enable-elf-shlibs \
-			--disable-tls
+CONFIGURE_ARGS+=	--enable-elf-shlibs --disable-tls
 INSTALL_TARGET+=	install-libs
 
 pre-build:

+ 4 - 1
package/eglibc/Makefile

@@ -6,9 +6,12 @@ include $(TOPDIR)/toolchain/eglibc/Makefile.inc
 
 PKG_DESCR:=		embedded GNU C library
 PKG_SECTION:=		base
-NO_DISTFILES:=		1
 PKG_OPTS:=		noremove
 
+PKG_SUBPKGS:=		EGLIBC EGLIBC_DEV
+
+NO_DISTFILES:=		1
+
 include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,EGLIBC,$(PKG_NAME),$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))

+ 1 - 1
package/elinks/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		145c510cae41c204d0f23dce4bdd23ab
 PKG_DESCR:=		advanced text web browser
 PKG_SECTION:=		browser
 PKG_DEPENDS:=		libopenssl
-PKG_BUILDDEP+=		openssl
+PKG_BUILDDEP:=		openssl
 PKG_URL:=		http://elinks.or.cz/
 PKG_SITES:=		http://elinks.or.cz/download/
 

+ 1 - 1
package/esound/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		3d8973ed87053d7acc1f4d44af2c4688
 PKG_DESCR:=		Enlightened Sound Daemon
 PKG_SECTION:=		multimedia
 PKG_DEPENDS:=		libaudiofile
-PKG_BUILDDEP+=		libaudiofile
+PKG_BUILDDEP:=		libaudiofile
 PKG_URL:=		http://www.tux.org/~ricdude/EsounD.html
 PKG_SITES:=		ftp://ftp.gnome.org/pub/gnome/sources/esound/0.2/
 

+ 1 - 1
package/ethtool/Makefile

@@ -13,7 +13,7 @@ PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=gkernel/}
 
 include ${TOPDIR}/mk/package.mk
 
-$(eval $(call PKG_template,ETHTOOL,ethtool,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+$(eval $(call PKG_template,ETHTOOL,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
 post-install:
 	${INSTALL_DIR} ${IDIR_ETHTOOL}/usr/sbin

+ 1 - 0
package/evieext/Makefile

@@ -8,6 +8,7 @@ PKG_VERSION:=		1.1.0
 PKG_RELEASE:=		1
 PKG_MD5SUM:=		68e61ce53caa495a3ad4085f66010eb8
 PKG_SITES:=		ftp://ftp.x.org/pub/individual/proto/
+PKG_SUBPKGS:=
 
 include $(TOPDIR)/mk/package.mk
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 1 - 1
package/evilwm/Makefile

@@ -10,7 +10,7 @@ PKG_MD5SUM:=		8fd9256c635cce2289b648a01d54202c
 PKG_DESCR:=		A minimalist window manager for the X Window System
 PKG_SECTION:=		x11/apps
 PKG_DEPENDS:=		libx11 libxext
-PKG_BUILDDEP+=		libX11 libXext
+PKG_BUILDDEP:=		libX11 libXext
 PKG_URL:=		http://www.6809.org.uk/evilwm/
 PKG_SITES:=		http://www.6809.org.uk/evilwm/
 

+ 10 - 9
package/exmap/Makefile

@@ -10,23 +10,24 @@ PKG_MD5SUM:=		55aec784e214037e61400287a55b5426
 PKG_DESCR:=		memory analysing client tool
 PKG_SECTION:=		debug
 PKG_DEPENDS:=		exmap-kmod libreadline glib
-PKG_BUILDDEP+=		glib readline
+PKG_BUILDDEP:=		glib readline
 PKG_SITES:=		http://labs.o-hand.com/sources/exmap-console/
 
+PKG_SUBPKGS:=		EXMAP EXMAPD EXMAPSERVER EXMAP_KMOD
+PKGSD_EXMAPD:=		memory analysing daemon
+PKGSD_EXMAPSERVER:=	memory analysing server
+PKGSD_EXMAP_KMOD:=	memory analysing kernel module
+PKGSC_EXMAP_KMOD:=	kernel
+
 DISTFILES:=		${PKG_NAME}-console-${PKG_VERSION}.tgz
 WRKDIST=		${WRKDIR}/${PKG_NAME}-console-${PKG_VERSION}
 
-PKG_DESCR_EXMAPD:=	memory analysing daemon
-PKG_DESCR_EXMAPSERVER:=	memory analysing server
-PKG_DESCR_EXMAP_KMOD:=	memory analysing kernel module
-PKG_SECTION_EXMAP_KMOD:=kernel
-
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,EXMAP,exmap,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
-$(eval $(call PKG_template,EXMAPD,exmapd,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_EXMAPD},${PKG_SECTION}))
-$(eval $(call PKG_template,EXMAPSERVER,exmapserver,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR_EXMAPSERVER},${PKG_SECTION}))
-$(eval $(call PKG_template,EXMAP_KMOD,exmap-kmod,${KERNEL_VERSION}+${PKG_VERSION}-${ADK_TARGET}-${PKG_RELEASE},,${PKG_DESCR_EXMAP_KMOD},${PKG_SECTION_EXMAP_KMOD}))
+$(eval $(call PKG_template,EXMAPD,exmapd,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_EXMAPD},${PKG_SECTION}))
+$(eval $(call PKG_template,EXMAPSERVER,exmapserver,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_EXMAPSERVER},${PKG_SECTION}))
+$(eval $(call PKG_template,EXMAP_KMOD,exmap-kmod,${KERNEL_VERSION}+${PKG_VERSION}-${ADK_TARGET}-${PKG_RELEASE},,${PKGSD_EXMAP_KMOD},${PKGSC_EXMAP_KMOD}))
 
 CONFIGURE_ARGS+=	--disable-doc
 CONFIGURE_ENV+=		LIBS="-lncurses"

+ 14 - 1
package/expat/Makefile

@@ -12,6 +12,10 @@ PKG_SECTION:=		libs
 PKG_URL:=		http://expat.sourceforge.net
 PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=expat/}
 
+PKG_SUBPKGS:=		LIBEXPAT LIBEXPAT_DEV
+PKGSD_LIBEXPAT_DEV:=	development files for expat
+PKGSC_LIBEXPAT_DEV:=	devel
+
 ifeq ($(ADK_STATIC),y)
 PKG_OPTS:=		libonly
 endif
@@ -19,9 +23,18 @@ endif
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,LIBEXPAT,libexpat,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
+$(eval $(call PKG_template,LIBEXPAT_DEV,libexpat-dev,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_LIBEXPAT_DEV},${PKGSC_LIBEXPAT_DEV}))
+
+SUB_INSTALLS-y:=
+SUB_INSTALLS-m:=
+SUB_INSTALLS-${ADK_PACKAGE_LIBEXPAT_DEV}+=	libexpat-dev-install
 
-post-install:
+post-install: ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
 	${INSTALL_DIR} ${IDIR_LIBEXPAT}/usr/lib
 	${CP} ${WRKINST}/usr/lib/libexpat.so* ${IDIR_LIBEXPAT}/usr/lib/
 
+libexpat-dev-install:
+	${INSTALL_DIR} ${IDIR_LIBEXPAT_DEV}/usr/include
+	${CP} ${WRKINST}/usr/include/*.h ${IDIR_LIBEXPAT_DEV}/usr/include
+
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 4 - 3
package/ez-ipupdate/Makefile

@@ -9,9 +9,10 @@ PKG_RELEASE:=		10
 PKG_MD5SUM:=		000211add4c4845ffa4211841bff4fb0
 PKG_DESCR:=		a client for dynamic DNS services
 PKG_SECTION:=		dns
-PKG_URL:=		http://ez-ipupdate.com
-PKG_SITES:=		http://ftp.debian.org/debian/pool/main/e/ez-ipupdate/ \
-			http://ftp.de.debian.org/debian/pool/main/e/ez-ipupdate/
+PKG_URL:=		http://ez-ipupdate.com/
+PKG_SITES:=		http://ftp.debian.org/debian/pool/main/e/ez-ipupdate/
+
+PKG_SUBPKGS:=		EZIPUPDATE
 
 DISTFILES:=		${PKG_NAME}_${PKG_VERSION}.orig.tar.gz
 

+ 2 - 0
package/faad2/Makefile

@@ -12,6 +12,8 @@ PKG_SECTION:=		libs
 PKG_URL:=		http://sourceforge.net/projects/faac/
 PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=faac/}
 
+PKG_SUBPKGS:=		LIBFAAD2
+
 include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,LIBFAAD2,libfaad2,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))

+ 1 - 3
package/fetchmail/Makefile

@@ -9,9 +9,6 @@ PKG_RELEASE:=		1
 PKG_MD5SUM:=		72c20ad2b9629f1a109668b05a84d823
 PKG_DESCR:=		fetch mail from a POP or IMAP server
 PKG_SECTION:=		mail
-ifeq (${ADK_PACKAGE_FETCHMAIL_SSL},y)
-PKG_BUILDDEP+=		openssl
-endif
 PKG_URL:=		http://fetchmail.berlios.de/
 PKG_SITES:=		http://download.berlios.de/fetchmail/
 
@@ -20,6 +17,7 @@ DISTFILES:=             ${PKG_NAME}-${PKG_VERSION}.tar.bz2
 PKG_FLAVOURS:=		SSL
 PKGFD_SSL:=		enable SSL support
 PKGFS_SSL:=		libopenssl
+PKGFB_SSL:=		openssl
 
 include ${TOPDIR}/mk/package.mk
 

Some files were not shown because too many files changed in this diff