aboutsummaryrefslogtreecommitdiff
path: root/examples/usartecho
diff options
context:
space:
mode:
Diffstat (limited to 'examples/usartecho')
-rw-r--r--examples/usartecho/.config (renamed from examples/usartecho/config.orig)1
-rw-r--r--examples/usartecho/Makefile39
-rw-r--r--examples/usartecho/config41
3 files changed, 23 insertions, 58 deletions
diff --git a/examples/usartecho/config.orig b/examples/usartecho/.config
index 8bc1db9..48ae310 100644
--- a/examples/usartecho/config.orig
+++ b/examples/usartecho/.config
@@ -5,6 +5,7 @@
MMCU="atmega328p"
ATMEGA328P=y
# ATTINY85 is not set
+# ATTINY4313 is not set
F_CPU=16000
#
diff --git a/examples/usartecho/Makefile b/examples/usartecho/Makefile
index 900fe09..6e4e9d5 100644
--- a/examples/usartecho/Makefile
+++ b/examples/usartecho/Makefile
@@ -4,13 +4,14 @@ PROJNAME = usartecho
SRC = echo.c
OBJ = $(patsubst %.c,%.o,$(SRC)) # This creates list of *.o files from *.c
+Q ?= @ # This can be overwritten to show commands
.PHONY: all
-ifneq ("$(wildcard config)","") # Checking if configuration exists
+ifneq ("$(wildcard .config)","") # Checking if configuration exists
all: $(PROJNAME).hex
@echo Now you can flash $< to your chip.
else
-all: help
+all: .config
endif
# Edit here help like you ever want
@@ -26,39 +27,43 @@ help:
.PHONY: clean
clean:
@echo " CLEAN OBJ"
- @$(RM) $(OBJ)
+ $(Q)$(RM) $(OBJ)
@echo " CLEAN $(PROJNAME).elf $(PROJNAME).hex"
- @$(RM) $(PROJNAME).elf $(PROJNAME).hex
- @$(MAKE) -C ../.. clean
+ $(Q)$(RM) $(PROJNAME).elf $(PROJNAME).hex
+ $(Q)$(MAKE) -C ../.. clean O=examples/$(PROJNAME)
# Building targets are available only if configuration is generated
-ifneq ("$(wildcard config)","")
--include config
+ifneq ("$(wildcard .config)","")
+-include .config
# If you want change some standard CFLAGS, change them in configuration not here.
# Add here only options that should not be applied to avr-ioe also.
-CFLAGS = -I../../include -mmcu=$(MMCU) -imacros ../../.config.h \
+CFLAGS = -I../../include -mmcu=$(MMCU) -imacros build/config.h \
$(shell echo $(CONFCFLAGS)) $(shell echo -DF_CPU=$(F_CPU)000L)
-$(PROJNAME).elf: ../../libioe.a
+$(PROJNAME).elf: libioe.a
$(PROJNAME).elf: $(OBJ)
@echo " LD $@"
- @avr-gcc -Os -mmcu=$(MMCU) $^ -o $@ -L../.. -lioe
+ @avr-gcc -Os -mmcu=$(MMCU) $(filter %.o,$^) -o $@ -L. -lioe
$(PROJNAME).hex: $(PROJNAME).elf
@echo " OBJCOPY $@"
- @avr-objcopy -O ihex -R .eeprom $< $@
+ $(Q)avr-objcopy -O ihex -R .eeprom $< $@
-$(OBJ): %.o: %.c ../../libioe.a
+$(OBJ): %.o: %.c libioe.a
@echo " CC $@"
- @avr-gcc $(CFLAGS) -c -o $@ $<
+ $(Q)avr-gcc $(CFLAGS) -c -o $@ $<
-../../libioe.a: config
- @CONFIG=$$(readlink -f config) $(MAKE) -C ../.. libioe.a
+libioe.a: .config
+ $(Q)$(MAKE) -C ../.. examples/$(PROJNAME)/libioe.a O=examples/$(PROJNAME)
endif
+.config:
+ @echo Configuration for this example is missing. Probably deleted...
+ @exit 1
+
config:
- @CONFIG=$$(readlink -f config) $(MAKE) -C ../.. config
+ $(Q)$(MAKE) -C ../.. config O=examples/$(PROJNAME)
.PHONY: menuconfig
menuconfig:
- @CONFIG=$$(readlink -f config) $(MAKE) -C ../.. menuconfig
+ $(Q)$(MAKE) -C ../.. menuconfig O=examples/$(PROJNAME)
diff --git a/examples/usartecho/config b/examples/usartecho/config
deleted file mode 100644
index 052a5c4..0000000
--- a/examples/usartecho/config
+++ /dev/null
@@ -1,41 +0,0 @@
-#
-# Automatically generated file; DO NOT EDIT.
-# AVR-IOE configuration
-#
-MMCU=atmega328p
-ATMEGA328P=y
-# ATTINY85 is not set
-F_CPU=16000
-
-#
-# Compilation options
-#
-GNUTOOLCHAIN_PREFIX=avr-
-CONFCFLAGS=-Os -ffunction-sections -fdata-sections -fshort-enums -Wall
-MCUSUPPORT_IOPORTS=y
-# CONFIG_IOPORTS is not set
-MCUSUPPORT_PCINT0=y
-MCUSUPPORT_PCINT1=y
-MCUSUPPORT_PCINT2=y
-MCUSUPPORT_SPI=y
-# CONFIG_SPI is not set
-MCUSUPPORT_USART=y
-CONFIG_USART=y
-CONFIG_USART_BAUD=115200
-USART_PARITY_C_NONE=y
-# USART_PARITY_C_ODD is not set
-# USART_PARITY_C_EVEN is not set
-CONFIG_USART_PARITY=USART_PARITY_NONE
-CONFIG_USART_DATABITS=8
-USART_STOPBIT_C_SINGLE=y
-# USART_STOPBIT_C_DOUBLE is not set
-CONFIG_USART_STOPBIT=USART_STOPBIT_SINGLE
-CONFIG_USART_OUTPUT_BUFFER=y
-CONFIG_USART_OUTBUFFER_SIZE=64
-USART_OUTBUFFER_MODE_C_BLOCK=y
-# USART_OUTBUFFER_MODE_C_OVERWRITE is not set
-# USART_OUTBUFFER_MODE_C_DROP is not set
-CONFIG_USART_OUTBUFFER_MODE=0
-# CONFIG_USART_INPUT_BUFFER is not set
-CONFIG_USART_INBUFFER_SIZE=32
-CONFIG_USART_INBUFFER_MODE=0