summaryrefslogtreecommitdiff
path: root/software/avr.include.mk
diff options
context:
space:
mode:
Diffstat (limited to 'software/avr.include.mk')
-rw-r--r--software/avr.include.mk162
1 files changed, 0 insertions, 162 deletions
diff --git a/software/avr.include.mk b/software/avr.include.mk
deleted file mode 100644
index 648b71b..0000000
--- a/software/avr.include.mk
+++ /dev/null
@@ -1,162 +0,0 @@
-##
-## spreadspace avr utils
-##
-##
-## Copyright (C) 2013-2014 Christian Pointner <equinox@spreadspace.org>
-##
-## This file is part of spreadspace avr utils.
-##
-## spreadspace avr utils is free software: you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published by
-## the Free Software Foundation, either version 3 of the License, or
-## any later version.
-##
-## spreadspace avr utils is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-## GNU General Public License for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with spreadspace avr utils. If not, see <http://www.gnu.org/licenses/>.
-##
-
-include ../avr.defines.mk
-
-## project-specific objects
-SRC := $(OBJ:%.o=%.c)
-DEP := $(SRC:%.c=%.d)
-OBJ_LIB := $(LIBS:%=lib-%.o)
-SRC_LIB := $(LIBS:%=$(LIB_DIR)/%.c)
-DEP_LIB := $(LIBS:%=lib-%.d)
-
-.PHONY: prepare clean clean-external distclean clean-lufa program erase flash reset run
-
-ELFFILE := $(NAME).elf
-HEXFILE := $(NAME).hex
-
-all: prepare $(HEXFILE)
-
-
-## external Libs
-LDFLAGS += -L./
-
-ifdef LUFA_PATH
-CFLAGS += -I$(LUFA_PATH)
-CFLAGS += -DF_USB=$(F_USB)UL
-CFLAGS += -DBOARD=BOARD_$(LUFA_BOARD)
-CFLAGS += $(LUFA_OPTS)
-endif
-
-prepare: $(EXTERNAL_LIBS:%=build-%)
-clean-external: $(EXTERNAL_LIBS:%=clean-%)
-
-export
-build-lufa: liblufa.a
-
-liblufa.a: Makefile
- @echo "building external LUFA lib ($(LUFA_PATH))"
- make -f ../avr.lufa.mk liblufa.a
- make -f ../avr.lufa.mk clean
-
-clean-lufa:
- @echo "cleaning external LUFA lib ($(LUFA_PATH))"
- make -f ../avr.lufa.mk clean
- rm -f liblufa.a
-
-
-## project-specific objects
-lib-%.d: $(LIB_DIR)/%.c Makefile
- @set -e; rm -f $@; \
- $(CC) -MM $(CFLAGS) $< > $@.$$$$; \
- sed 's,\($*\)\.o[ :]*,lib-\1.o $@ : ,g' < $@.$$$$ > $@; \
- rm -f $@.$$$$; echo '(re)building $@'
-
-%.d: %.c Makefile
- @set -e; rm -f $@; \
- $(CC) -MM $(CFLAGS) $< > $@.$$$$; \
- sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
- rm -f $@.$$$$; echo '(re)building $@'
-
-ifneq ($(MAKECMDGOALS),distclean)
--include $(DEP)
--include $(DEP_LIB)
-endif
-
-lib-%.o: $(LIB_DIR)/%.c Makefile
- $(CC) $(CFLAGS) -c $< -o $@
-
-%.o: %.c Makefile
- $(CC) $(CFLAGS) -c $< -o $@
-
-$(ELFFILE): $(OBJ) $(OBJ_LIB) $(EXTERNAL_LIBS:%=lib%.a)
- $(CC) $(LDFLAGS) $(OBJ) $(OBJ_LIB) $(EXTERNAL_LIBS:%=-l%) -o $@
- $(SIZE) $@
- @echo ""
-
-$(HEXFILE): $(ELFFILE)
- $(OBJCOPY) -O ihex -R .eeprom -R .fuse -R .lock -R .signature $< $@
-
-clean: $(CLEAN_TARGETS)
- rm -f *.o
- rm -f *.d
- rm -f *.d.*
- rm -f $(ELFFILE)
- rm -f $(HEXFILE)
-
-distclean: clean-external clean
-
-### DFU-Programmer
-define DFU/erase
- $(DFU) $(MCU) erase || true
-endef
-
-define DFU/flash
- $(DFU) $(MCU) flash $1
-endef
-
-define DFU/run
- $(DFU) $(MCU) start
-endef
-
-### teensy-loader
-define teensy/erase
-endef
-
-define teensy/flash
- $(teensy) -mmcu=$(MCU) -w -v $1
-endef
-
-define teensy/run
-endef
-
-### avrdude
-define avrdude/erase
-endef
-
-define avrdude/flash
- $(avrdude) -V -F -p $(MCU) -P $(AVRDUDE_PORT) -c $(PROG_TYPE) -b $(UPLOAD_RATE) -U flash:w:$1
-endef
-
-define avrdude/run
-endef
-
-### Program Targets
-program: reset erase flash run
-
-erase:
- $(call $(PROG)/$@,)
-
-flash: $(HEXFILE)
- $(call $(PROG)/$@,$(HEXFILE))
-
-run:
- $(call $(PROG)/$@,)
-
-reset:
- @if [ -n "$(RESET_FUNC)" ]; then \
- if [ -x "$(RESET_FUNC)" ]; then \
- eval $(RESET_FUNC) $(RESET_PARAM); \
- else \
- echo "WARNING: ignoring non-existing or non-executable reset script"; \
- fi \
- fi