diff options
author | jaseg <git@jaseg.net> | 2018-07-17 15:43:26 +0200 |
---|---|---|
committer | jaseg <git@jaseg.net> | 2018-07-17 15:43:26 +0200 |
commit | 6df66b77ba5b27bce5630694742f2dac57b8d3eb (patch) | |
tree | fc14370fdea41b6d7a672758aa89886b9107f78c /rules.mk | |
parent | 90ce052d82daa86e1e86ab4dac7fbba0cdda8680 (diff) | |
download | olsndot-6df66b77ba5b27bce5630694742f2dac57b8d3eb.tar.gz olsndot-6df66b77ba5b27bce5630694742f2dac57b8d3eb.tar.bz2 olsndot-6df66b77ba5b27bce5630694742f2dac57b8d3eb.zip |
Isolate usb-serial-rs485 tree
Diffstat (limited to 'rules.mk')
-rw-r--r-- | rules.mk | 172 |
1 files changed, 0 insertions, 172 deletions
diff --git a/rules.mk b/rules.mk deleted file mode 100644 index 7f9b393..0000000 --- a/rules.mk +++ /dev/null @@ -1,172 +0,0 @@ -## -## This file is part of the libopencm3 project. -## -## This library is free software: you can redistribute it and/or modify -## it under the terms of the GNU Lesser General Public License as published by -## the Free Software Foundation, either version 3 of the License, or -## (at your option) any later version. -## -## This library 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 Lesser General Public License for more details. -## -## You should have received a copy of the GNU Lesser General Public License -## along with this library. If not, see <http://www.gnu.org/licenses/>. -## - -# This version of rules.mk expects the following to be defined before -# inclusion.. -### REQUIRED ### -# DEVICE=xxxx - this tree uses the genlink-config.mk and genlink-rules.mk! -# OPENCM3_DIR - duh -# PROJECT - will be the basename of the output elf, eg usb-gadget0-stm32f4disco -# CFILES - basenames only, eg main.c blah.c -# The follow vars are assumed to have been created via genlink.mk -# xOPENCM3_LIB - the basename, eg: opencm3_stm32f4 -# SOURCED VIA devices.data! -# xOPENCM3_DEFS - the target define eg: -DSTM32F4 -# SOURCED VIA devices.data! -# xARCH_FLAGS - eg, -mthumb -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -# (ie, the full set of cpu arch flags, _none_ are defined in this file) -# SOURCED VIA devices.data! -# xLDSCRIPT - full path, eg ../../examples/stm32/f4/stm32f4-discovery/stm32f4-discovery.ld -# SOURCED VIA devices.data! -# -### OPTIONAL ### -# INCLUDES - fully formed -I paths, if you want extra, eg -I../shared -# BUILD_DIR - defaults to bin, should set this if you are building multiarch -# OPT - full -O flag, defaults to -Os -# CSTD - defaults -std=c99 -# CXXSTD - no default. -# OOCD_INTERFACE - eg stlink-v2 -# OOCD_TARGET - eg stm32f4x -# both only used if you use the "make flash" target. -# OOCD_FILE - eg my.openocd.cfg -# This overrides interface/target above, and is used as just -f FILE -### TODO/FIXME/notes ### -# No support for stylecheck. -# No support for BMP/texane/random flash methods, no plans either -# No support for magically finding the library. -# C++ hasn't been actually tested with this..... sorry bout that. ;) -# Second expansion/secondary not set, add this if you need them. - -BUILD_DIR ?= bin -OPT ?= -Os -CSTD ?= -std=c99 - -# Be silent per default, but 'make V=1' will show all compiler calls. -# If you're insane, V=99 will print out all sorts of things. -V?=0 -ifeq ($(V),0) -Q := @ -NULL := 2>/dev/null -endif - -# Tool paths. -PREFIX ?= arm-none-eabi- -CC = $(PREFIX)gcc -LD = $(PREFIX)gcc -OBJCOPY = $(PREFIX)objcopy -OBJDUMP = $(PREFIX)objdump -OOCD ?= openocd - -# Inclusion of library header files -include $(OPENCM3_DIR)/mk/genlink-config.mk - -OBJS = $(CFILES:%.c=$(BUILD_DIR)/%.o) - -TGT_CPPFLAGS += -MD -TGT_CPPFLAGS += -Wall -Wundef -TGT_CPPFLAGS += $(INCLUDES) - -TGT_CFLAGS += $(OPT) $(CSTD) -ggdb3 -TGT_CFLAGS += $(ARCH_FLAGS) -TGT_CFLAGS += -fno-common -TGT_CFLAGS += -ffunction-sections -fdata-sections -TGT_CFLAGS += -Wextra -Wshadow -Wno-unused-variable -Wimplicit-function-declaration -TGT_CFLAGS += -Wredundant-decls -Wstrict-prototypes -Wmissing-prototypes - -TGT_CXXFLAGS += $(OPT) $(CXXSTD) -ggdb3 -TGT_CXXFLAGS += $(ARCH_FLAGS) -TGT_CXXFLAGS += -fno-common -TGT_CXXFLAGS += -ffunction-sections -fdata-sections -TGT_CXXFLAGS += -Wextra -Wshadow -Wredundant-decls -Weffc++ - -TGT_LDFLAGS += -T$(LDSCRIPT) -L$(OPENCM3_DIR)/lib -nostartfiles -TGT_LDFLAGS += $(ARCH_FLAGS) -TGT_LDFLAGS += -specs=nano.specs -TGT_LDFLAGS += -u _printf_float -TGT_LDFLAGS += -Wl,--gc-sections -# OPTIONAL -#TGT_LDFLAGS += -Wl,-Map=$(PROJECT).map -ifeq ($(V),99) -TGT_LDFLAGS += -Wl,--print-gc-sections -endif - -# nosys is only in newer gcc-arm-embedded... -LDLIBS += -specs=nosys.specs -#LDLIBS += -Wl,--start-group -lc -lgcc -lnosys -Wl,--end-group - -# Burn in legacy hell fortran modula pascal yacc idontevenwat -.SUFFIXES: -.SUFFIXES: .c .h .o .cxx .elf .bin .list .lss - -# Bad make, never *ever* try to get a file out of source control by yourself. -%: %,v -%: RCS/%,v -%: RCS/% -%: s.% -%: SCCS/s.% - -all: $(PROJECT).elf #$(PROJECT).bin -flash: $(PROJECT).flash - -# Need a special rule to have a bin dir -$(BUILD_DIR)/%.o: %.c - @printf " CC\t$<\n" - @mkdir -p $(dir $@) - $(Q)$(CC) $(TGT_CFLAGS) $(CFLAGS) $(TGT_CPPFLAGS) $(CPPFLAGS) -o $@ -c $< - -$(BUILD_DIR)/%.o: %.cxx - @printf " CXX\t$<\n" - @mkdir -p $(dir $@) - $(Q)$(CC) $(TGT_CXXFLAGS) $(CXXFLAGS) $(TGT_CPPFLAGS) $(CPPFLAGS) -o $@ -c $< - -$(PROJECT).elf: $(OBJS) $(LDSCRIPT) - @printf " LD\t$@\n" - $(Q)$(LD) $(TGT_LDFLAGS) $(LDFLAGS) $(OBJS) $(LDLIBS) -o $@ - -%.bin: %.elf - @printf " OBJCOPY\t$@\n" - $(Q)$(OBJCOPY) -O binary $< $@ - -%.lss: %.elf - $(OBJDUMP) -h -S $< > $@ - -%.list: %.elf - $(OBJDUMP) -S $< > $@ - -%.flash: %.elf - @printf " FLASH\t$<\n" -ifeq (,$(OOCD_FILE)) - $(Q)(echo "halt; program $(realpath $(*).elf) verify reset" | nc -4 localhost 4444 2>/dev/null) || \ - $(OOCD) -f interface/$(OOCD_INTERFACE).cfg \ - -f target/$(OOCD_TARGET).cfg \ - -c "program $(*).elf verify reset exit" \ - $(NULL) -else - $(Q)(echo "halt; program $(realpath $(*).elf) verify reset" | nc -4 localhost 4444 2>/dev/null) || \ - $(OOCD) -s ../../openocd/ -f $(OOCD_FILE) \ - -c "program $(*).elf verify reset exit" \ - $(NULL) -endif - -clean: - rm -rf $(BUILD_DIR) $(PROJECT).{elf,bin} $(PROJECT).{list,lss,map} $(LDSCRIPT) - -include $(OPENCM3_DIR)/mk/genlink-rules.mk - -.PHONY: all clean flash --include $(OBJS:.o=.d) - |