Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- TARGET = InternetRadio
- ETHERNUT_VERSION = ethernut-4.3.3
- WINAVR_VERSION = WinAVR-20070525
- MCU = atmega2561
- # Application source en include includes
- SRC_DIR = ./src
- INC_DIR = ./src
- # NutOS location (includes and libs)
- NUT_INC = c:/$(ETHERNUT_VERSION)/nut/include
- NUT_LIB_DIR = c:/$(ETHERNUT_VERSION)/nutbld/lib
- # WinAvr includes
- AVR_INC = c:/$(WINAVR_VERSION)/avr/include
- AVR_BIN = C:/$(WINAVR_VERSION)/bin
- AVR_UTIL_BIN = C:/$(WINAVR_VERSION)/utils/bin
- # Compiler, assembler & linker (flags)
- CC = $(AVR_BIN)/avr-gcc
- CFLAGS = -mmcu=$(MCU) -Os -Wall -Wstrict-prototypes -DNUT_CPU_FREQ=14745600 \
- -D__HARVARD_ARCH__ -DNUTOS_VERSION=433 \
- -Wa,-ahlms=$(SRC_DIR)/$*lst
- ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp -Wa,-ahlms=$(SRC_DIR)/$*lst,-gstabs
- LDFLAGS = -mmcu=$(MCU) -Wl,--defsym=main=0,-Map=TIStreamer.map,--cref
- # =================================================================================
- # Source files
- CFILES = main.c \
- hardware/hl_uart0driver.c \
- hardware/hl_log.c \
- hardware/hl_led.c \
- hardware/hl_keyboard.c \
- hardware/hl_display.c \
- hardware/hl_vs10xx.c \
- hardware/hl_remcon.c \
- hardware/hl_watchdog.c \
- hardware/hl_mmc.c \
- hardware/hl_spidrv.c \
- hardware/hl_mmcdrv.c \
- hardware/hl_fat.c \
- hardware/hl_flash.c \
- hardware/hl_rtc.c \
- driver/dl_keyboard_driver.c \
- driver/dl_display_driver.c \
- driver/dl_led_driver.c \
- driver/dl_rtc_driver.c \
- driver/dl_fat.c \
- driver/dl_inet_driver.c \
- driver/dl_audio_driver.c \
- driver/dl_storage_driver.c \
- driver/dl_log_driver.c \
- driver/dl_streamer_driver.c \
- logic/menu/ll_menu_time.c \
- logic/menu/ll_menu_alarm.c \
- logic/menu/ll_menu_settings.c \
- logic/menu/settings/Il_menu_settings_date.c \
- logic/menu/settings/Il_menu_settings_time.c \
- logic/menu/settings/ll_menu_settings_alarm.c \
- logic/menu/settings/ll_menu_settings_timezone.c \
- logic/menu/settings/ll_menu_settings_volume.c \
- logic/menu/settings/ll_menu_settings_snooze.c \
- logic/menu/settings/ll_menu_settings_summertime.c \
- logic/menu/settings/ll_menu_settings_mac.c \
- logic/menu/settings/editor/ll_menu_settings_alarm_editor.c \
- logic/menu/settings/editor/ll_menu_settings_time_editor.c \
- logic/menu/settings/editor/ll_menu_settings_date_editor.c \
- logic/menu/ll_menu_ipr.c \
- logic/menu/IPR/ll_menu_IPR_dino_game.c \
- logic/menu/IPR/ll_menu_IPR_dino_game_play.c \
- logic/menu/IPR/ll_menu_IPR_sleep_schedule.c \
- logic/menu/IPR/ll_menu_IPR_RSS_feed.c \
- logic/menu/IPR/ll_menu_IPR_openweather.c \
- logic/menu/IPR/ll_menu_IPR_celebration_day.c \
- logic/ll_menu_logic.c \
- logic/ll_clock_logic.c \
- logic/ll_inet_logic.c \
- # Header files.
- HFILES = {wildcard *.h}
- # Alle source files in de ./source dir
- SRCS = $(addprefix $(SRC_DIR)/,$(CFILES))
- OBJS = $(SRCS:.c=.o)
- NUT_LIBS = $(NUT_LIB_DIR)/nutinit.o -lnutpro -lnutnet -lnutpro -lnutfs -lnutos -lnutdev -lnutarch -lnutnet -lnutcrt -lnutdev
- # Alle includes (header files) in de ./header dir
- INCS = $(addprefix $(INC_DIR)/,$(HFILES))
- # Linking rule. All *.o to elf file. Then convert to *.hex
- $(TARGET): $(OBJS)
- $(CC) $(OBJS) $(LDFLAGS) -L$(NUT_LIB_DIR) $(NUT_LIBS) -o $@.elf
- avr-objcopy -O ihex $@.elf $@.hex
- # hex2bin -ebin $@.hex
- # Compiling the objs's. avr-gcc autocalls assembler
- $(SRC_DIR)/%o: $(SRC_DIR)/%c
- $(CC) -c $< $(CFLAGS) -I$(INC_DIR) -I$(NUT_INC) -I$(AVR_INC) -o $@
- all: $(TARGET)
- debug: CFLAGS += -DDEBUG -g3
- debug: $(TARGET)
- .PHONY: clean
- clean:
- rm -f $(OBJS)
- rm -f $(SRCS:.c=.lst)
- rm -f InternetRadio.elf InternetRadio.hex TIStreamer.map
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement