Skip to content
Snippets Groups Projects
Commit 9af13d63 authored by Matthias Schiffer's avatar Matthias Schiffer
Browse files

Add support for hardware profiles with different module sets

parent 9e41e269
No related branches found
No related tags found
No related merge requests found
......@@ -6,14 +6,28 @@ all: images
include $(GLUONDIR)/builder/gluon.mk
BOARD:=ar71xx
PROFILES:=TLWR741
BOARD := ar71xx
PROFILES :=
PROFILE_PACKAGES :=
null :=
space := ${null} ${null}
${space} := ${space}
prepared_stamp:=$(GLUON_BUILDDIR)/prepared
prepared_stamp := $(GLUON_BUILDDIR)/prepared
define GluonProfile
image/$(1): $(prepared_stamp)
$(MAKE) -C $(GLUON_BUILDERDIR) image \
PROFILE="$(1)" \
PACKAGE_DIR="$(GLUON_OPENWRTDIR)/bin/$(BOARD)/packages" \
$(if $(2),PACKAGES="$(2)")
PROFILES += $(1)
PROFILE_PACKAGES += $(filter-out -%,$(2))
endef
include profiles.mk
prepare:
mkdir -p $(GLUON_IMAGEDIR) $(GLUON_BUILDDIR)
......@@ -24,7 +38,7 @@ prepare:
$(GLUON_OPENWRTDIR)/scripts/feeds update -a
$(GLUON_OPENWRTDIR)/scripts/feeds install -a
echo -e "CONFIG_TARGET_$(BOARD)=y\nCONFIG_TARGET_ROOTFS_JFFS2=n\n$(subst ${ },\n,$(patsubst %,CONFIG_PACKAGE_%=m,$(GLUON_PACKAGES)))" > $(GLUON_OPENWRTDIR)/.config
echo -e "CONFIG_TARGET_$(BOARD)=y\nCONFIG_TARGET_ROOTFS_JFFS2=n\n$(subst ${ },\n,$(patsubst %,CONFIG_PACKAGE_%=m,$(GLUON_PACKAGES) $(PROFILE_PACKAGES)))" > $(GLUON_OPENWRTDIR)/.config
$(MAKE) -C $(GLUON_OPENWRTDIR) defconfig prepare
$(MAKE) -C $(GLUON_BUILDERDIR) kernel
$(MAKE) -C $(GLUON_OPENWRTDIR) package/compile
......@@ -34,15 +48,10 @@ prepare:
$(prepared_stamp):
$(MAKE) prepare
image-%: $(prepared_stamp)
$(MAKE) -C $(GLUON_BUILDERDIR) image \
PACKAGE_DIR=$(GLUON_OPENWRTDIR)/bin/$(BOARD)/packages \
PROFILE=$(subst image-,,$@)
images: $(patsubst %,image-%,$(PROFILES))
images: $(patsubst %,image/%,$(PROFILES))
clean:
rm -rf $(GLUON_BUILDDIR) $(prepared_stamp)
rm -rf $(GLUON_BUILDDIR)
cleanall: clean
$(MAKE) -C $(GLUON_OPENWRTDIR) clean
......
......@@ -60,8 +60,6 @@ define Profile
endif
$(1)_NAME:=$(NAME)
$(1)_PACKAGES:=$(PACKAGES)
PROFILE_LIST += \
echo '$(1):'; [ -z '$(NAME)' ] || echo ' $(NAME)'; echo ' Packages: $(PACKAGES)';
endef
include $(INCLUDE_DIR)/target.mk
......@@ -144,7 +142,7 @@ package_postinst: FORCE
build_image: FORCE
@echo
@echo Building images...
$(NO_TRACE_MAKE) -C $(TOPDIR)/target/linux/$(BOARD)/image install TARGET_BUILD=1 \
$(NO_TRACE_MAKE) -C $(TOPDIR)/target/linux/$(BOARD)/image install TARGET_BUILD=1 IMG_PREFIX="gluon-$(BOARD)$(if $(SUBTARGET),-$(SUBTARGET))" \
$(if $(USER_PROFILE),PROFILE="$(USER_PROFILE)")
image:
......@@ -156,5 +154,5 @@ image:
BIN_DIR="$(GLUON_IMAGEDIR)" \
$(if $(PACKAGE_DIR),PACKAGE_DIR="$(PACKAGE_DIR)"))
.SILENT: image
.SILENT: kernel image
ifneq ($(__gluon_inc),1)
__gluon_inc=1
GLUON_SITEDIR:=$(GLUONDIR)/site
GLUON_IMAGEDIR:=$(GLUONDIR)/images
GLUON_OPENWRTDIR:=$(GLUONDIR)/openwrt
GLUON_BUILDERDIR:=$(GLUONDIR)/builder
GLUON_BUILDDIR:=$(GLUONDIR)/build
GLUON_SITEDIR := $(GLUONDIR)/site
GLUON_IMAGEDIR := $(GLUONDIR)/images
GLUON_OPENWRTDIR := $(GLUONDIR)/openwrt
GLUON_BUILDERDIR := $(GLUONDIR)/builder
GLUON_BUILDDIR := $(GLUONDIR)/build
$(GLUON_SITEDIR)/site.mk:
$(error There was no site configuration found. Please check out a site configuration to $(GLUON_SITEDIR))
-include $(GLUON_SITEDIR)/site.mk
GLUON_DEFAULT_PACKAGES:=gluon-core
GLUON_DEFAULT_PACKAGES := gluon-core
GLUON_PACKAGES:=$(GLUON_DEFAULT_PACKAGES) $(GLUON_SITE_PACKAGES)
DEFAULT_PACKAGES.gluon:=$(GLUON_PACKAGES)
DEVICE_TYPE:=gluon
GLUON_PACKAGES := $(GLUON_DEFAULT_PACKAGES) $(GLUON_SITE_PACKAGES)
DEFAULT_PACKAGES.gluon := $(GLUON_PACKAGES)
DEVICE_TYPE := gluon
endif #__gluon_inc
# List of hardware profiles
USB_PACKAGES := block-mount kmod-fs-ext4 kmod-fs-vfat kmod-usb-storage kmod-usb-storage-extras blkid swap-utils \
kmod-nls-cp1250 kmod-nls-cp1251 kmod-nls-cp437 kmod-nls-cp775 kmod-nls-cp850 kmod-nls-cp852 kmod-nls-cp866 \
kmod-nls-iso8859-1 kmod-nls-iso8859-13 kmod-nls-iso8859-15 kmod-nls-iso8859-2 kmod-nls-koi8r kmod-nls-utf8
$(eval $(call GluonProfile,TLWR741))
$(eval $(call GluonProfile,TLWR841))
$(eval $(call GluonProfile,TLWR842,$(USB_PACKAGES)))
$(eval $(call GluonProfile,TLWR1043,$(USB_PACKAGES)))
$(eval $(call GluonProfile,TLWDR4300,$(USB_PACKAGES)))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment