# Override the default uClibc configuration ifeq ($(strip $(BR2_TARGET_SPIDCOM)),y) TARGET_SKELETON = target/device/Spidcom/target_skeleton ifeq ($(strip $(BR2_TARGET_SPIDCOM_ARIZONA)),y) include target/device/Spidcom/arizona/Makefile.in endif ifeq ($(strip $(BR2_TARGET_SPIDCOM_SPK300G)),y) include target/device/Spidcom/spk300g/Makefile.in endif ifeq ($(strip $(BR2_TARGET_SPIDCOM_SPK300)),y) include target/device/Spidcom/spk300/Makefile.in endif ifeq ($(strip $(BR2_TARGET_SPIDCOM_SPK310)),y) include target/device/Spidcom/spk310/Makefile.in endif ifeq ($(strip $(BR2_TARGET_SPIDCOM_SCR310)),y) include target/device/Spidcom/scr310/Makefile.in endif ifeq ($(strip $(BR2_TARGET_SPIDCOM_SPR300)),y) include target/device/Spidcom/spr300/Makefile.in endif ifeq ($(strip $(BR2_TARGET_SPIDCOM_SPR310)),y) include target/device/Spidcom/spr310/Makefile.in endif BUNDLE_VERSION = tag-$(shell git describe --always 2>/dev/null) LINUX_DOT_VERSION = $(shell cat $(LINUX_DIR)/.version 2>/dev/null || echo 0) IMG_VERSION = $(shell cat $(BASE_DIR)/.version 2>/dev/null | sed -e 's/\(.\{16\}\).*/\1/') LINUX26_MAKE_EXTRA_FLAGS+=KBUILD_BUILD_VERSION="$(LINUX_DOT_VERSION)($(BUNDLE_VERSION))" LINUX26_MAKE_EXTRA_FLAGS+=IMG_VERSION="$(IMG_VERSION)" LINUX26_MAKE_EXTRA_FLAGS+=PLC_MEM_SIZE_MB="$(BR2_TARGET_SPIDCOM_PLC_MEM_SIZE_MB)" # change the original BASE_TARGETS to create needed linux source links BASE_TARGETS = check_linux_link uclibc kernel-headers # now some funny trick to adapt buildroot to the modified linux sources # 1: create a fake linux-2.6.25.10.tar.bz2 archive in download dir # 2: create a link to linux spc300 sources inside project_build dir for image generation # 3: create a link to linux spc300 sources inside toolchain_buid_dir for kernel header usage check_linux_link: if [ ! -e $(DL_DIR)/$(LINUX_HEADERS_SOURCE) ]; then \ mkdir -p $(DL_DIR); \ touch $(DL_DIR)/$(LINUX_HEADERS_SOURCE); \ fi; \ if [ ! -e $(LINUX26_DIR) ]; then \ mkdir -p $(PROJECT_BUILD_DIR); \ ln -sf ../../../$(notdir $(LINUX26_DIR)-spc300) $(LINUX26_DIR); \ touch $(LINUX26_DIR)/.unpacked; \ touch $(LINUX26_DIR)/.patched; \ mkdir -p $(TOOL_BUILD_DIR); \ ln -sf ../../$(notdir $(LINUX26_DIR)-spc300) $(TOOL_BUILD_DIR)/linux-$(LINUX_HEADERS_VERSION); \ fi; endif linux26-clean: $(MAKE) -C $(LINUX26_DIR) clean # Add rule to customize target dir for each board. $(TARGET_DIR): $(PROJECT_BUILD_DIR)/.root-add $(PROJECT_BUILD_DIR)/.root-add: $(PROJECT_BUILD_DIR)/.root for dir in $(TARGET_SKELETON_ADD); do \ cp -fa $$dir/* $(TARGET_DIR)/; \ done -find $(TARGET_DIR) -type d -name CVS -o -name .svn | xargs rm -rf -find $(TARGET_DIR) -type f -name .empty | xargs rm -rf touch $@