| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #
- # Copyright (C) 2001-2006 by egnite Software GmbH
- # Copyright (C) 2009 by egnite GmbH
- #
- # All rights reserved.
- #
- # Redistribution and use in source and binary forms, with or without
- # modification, are permitted provided that the following conditions
- # are met:
- #
- # 1. Redistributions of source code must retain the above copyright
- # notice, this list of conditions and the following disclaimer.
- # 2. Redistributions in binary form must reproduce the above copyright
- # notice, this list of conditions and the following disclaimer in the
- # documentation and/or other materials provided with the distribution.
- # 3. Neither the name of the copyright holders nor the names of
- # contributors may be used to endorse or promote products derived
- # from this software without specific prior written permission.
- #
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- # ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- # COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- # OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
- # THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- # SUCH DAMAGE.
- #
- # For additional information see http://www.ethernut.de/
- #
- # $Id$
- #
- # Inherit general gcc variables.
- include $(top_srcdir)/Makevars.gcc
- # Set target specific variables.
- ARCH = cm3
- TRGT = arm-none-eabi-
- MCFLAGS = -mcpu=$(MCU) -mthumb -D__CORTEX__ $(FPUFLAGS)
- # CXXFLAGS_OPT = -Os -g3 -fno-delete-null-pointer-checks -fno-exceptions -fno-rtti
- LDFLAGS = $(MCFLAGS) -g -nostartfiles -L$(LDPATH) -T$(LDSCRIPT) -Wl,-Map=$(PROJ).map,--cref,--no-warn-mismatch -L$(LIBDIR)
- CFLAGS_MCU = $(MCFLAGS) -ffunction-sections -fdata-sections -fomit-frame-pointer $(MFIX)
- CXXFLAGS_MCU = $(CFLAGS_MCU) -fno-delete-null-pointer-checks -fno-exceptions -fno-rtti
- # C compiler options.
- CFLAGS_ASM = -Wa,-a=$(@:.o=.lst)
- CFLAGS_WRN = -Wall -Wstrict-prototypes -Werror
- CFLAGS_OPT ?= -Os
- CFLAGS = $(CFLAGS_MCU) $(CFLAGS_OPT) $(CFLAGS_WRN) $(CFLAGS_ASM) $(UCPFLAGS) $(MDEBUG)
- # C++ compiler options.
- CXXFLAGS_WRN = -Wall
- CXXFLAGS_ASM = $(CFLAGS_ASM)
- CXXFLAGS_OPT = $(CFLAGS_OPT)
- CXXFLAGS = $(CXXFLAGS_MCU) $(CXXFLAGS_OPT) $(CXXFLAGS_WRN) $(CXXFLAGS_ASM) $(UCPFLAGS)
- ELFCOF = $(BIN) \
- --change-section-address .data-0x08000000 \
- --change-section-address .bss-0x08000000 \
- --change-section-address .noinit-0x08000000 \
- --change-section-address .rodata-0x08000000
|