OBJCOPY=$(CPREFIX)objcopy
SOURCE_FILES=exceptions.c startup_sam3n.c system_sam3n.c main.c util.c $(DRIVER_SRC)
-#OBJECT_FILES=$(add_prefix obj/ $(basename $(SOURCE_FILES:.c=.o)))
OBJECT_FILES=$(SOURCE_FILES:.c=.o)
+PP_FILES=$(SOURCE_FILES:.c=.p)
+
+.c.p:
+ $(CC) $(CFLAGS) -E $< -o $@
all: $(OBJECT_FILES) flash.ld
$(LD) $(LDFLAGS) -Tflash.ld $(OBJECT_FILES) -o output.elf
$(OBJCOPY) -O binary output.elf output.bin
+.PHONY: req
+req: $(PP_FILES)
+ @echo $(PP_FILES)
+
.PHONY: clean
clean:
- -rm -f $(OBJECT_FILES) output.elf
+ -rm -f $(OBJECT_FILES) $(PP_FILES) output.elf
--- /dev/null
+#!/bin/sh
+
+PATH_TO_ASF="asf_complete"
+
+rm -rf asf
+ln -s $PATH_TO_ASF asf
+PP_FILES=$(make req)
+FILES=$(grep '^#' $PP_FILES | awk '{print $3}' | sort | uniq | grep "^\"asf/" | sed -e 's/"//g')
+rm asf
+for file in $FILES; do
+ mkdir -p $(dirname $file);
+ cp $(echo $file | sed -e 's/^asf/'$PATH_TO_ASF'/') $file;
+done
+
+mkdir -p asf/thirdparty/CMSIS/Lib/GCC/
+cp $PATH_TO_ASF/thirdparty/CMSIS/Lib/GCC/libarm_cortexM3l_math.a asf/thirdparty/CMSIS/Lib/GCC/