#
-# Copyright (C) 2007 OpenWrt.org
+# Copyright (C) 2007-2008 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
+ifneq ($(__target_inc),1)
+__target_inc=1
+
+# default device type
+DEVICE_TYPE?=router
+
+# Default packages - the really basic set
+DEFAULT_PACKAGES:=base-files libgcc uclibc busybox dropbear mtd uci
+# For router targets
+DEFAULT_PACKAGES.router:=dnsmasq iptables ppp ppp-mod-pppoe kmod-ipt-nathelper bridge
+
+# Additional packages for Linux 2.6
+ifneq ($(KERNEL),2.4)
+ DEFAULT_PACKAGES += udevtrigger hotplug2
+endif
+
+# Add device specific packages
+DEFAULT_PACKAGES += $(DEFAULT_PACKAGES.$(DEVICE_TYPE))
+
ifneq ($(DUMP),)
all: dumpinfo
endif
-ifneq ($(__target_inc),1)
-__target_inc=1
-
target_conf=$(subst .,_,$(subst -,_,$(subst /,_,$(1))))
ifeq ($(DUMP),)
PLATFORM_DIR:=$(TOPDIR)/target/linux/$(BOARD)
PACKAGES:=
endef
+ifndef Profile
define Profile
$(eval $(call Profile/Default))
$(eval $(call Profile/$(1)))
PROFILE=$(1)
endif
endef
+endif
ifneq ($(PLATFORM_DIR),$(PLATFORM_SUBDIR))
define IncludeProfiles
GENERIC_PLATFORM_DIR := $(TOPDIR)/target/linux/generic-$(KERNEL)
GENERIC_PATCH_DIR := $(GENERIC_PLATFORM_DIR)/patches$(shell [ -d "$(GENERIC_PLATFORM_DIR)/patches-$(KERNEL_PATCHVER)" ] && printf -- "-$(KERNEL_PATCHVER)" || true )
+GENERIC_FILES_DIR := $(GENERIC_PLATFORM_DIR)/files$(shell [ -d "$(GENERIC_PLATFORM_DIR)/files-$(KERNEL_PATCHVER)" ] && printf -- "-$(KERNEL_PATCHVER)" || true )
GENERIC_LINUX_CONFIG?=$(firstword $(wildcard $(GENERIC_PLATFORM_DIR)/config-$(KERNEL_PATCHVER) $(GENERIC_PLATFORM_DIR)/config-default))
LINUX_CONFIG?=$(firstword $(wildcard $(foreach subdir,$(PLATFORM_DIR) $(PLATFORM_SUBDIR),$(subdir)/config-$(KERNEL_PATCHVER) $(subdir)/config-default)))
.SILENT: $(TMP_CONFIG)
.PRECIOUS: $(TMP_CONFIG)
+ ifneq ($(CONFIG_GENERIC_GPIO),)
+ FEATURES += gpio
+ endif
ifneq ($(CONFIG_PCI),)
FEATURES += pci
endif