mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-05-09 22:49:53 +08:00
45 lines
1.2 KiB
Makefile
45 lines
1.2 KiB
Makefile
# Hey Emacs, this is a -*- makefile -*-
|
|
#
|
|
# Copyright (C) 2012-2014 Felix Ruess <felix.ruess@gmail.com>
|
|
|
|
|
|
#
|
|
# This is the common Makefile for finding the arm compiler
|
|
# for bare metal systems like on the ARM7TDMI, cortex M3/4
|
|
|
|
PREFIX ?= arm-none-eabi
|
|
|
|
#
|
|
# if gcc can't be found in path, try the paparazzi toolchain in /opt
|
|
#
|
|
ifeq ($(shell which $(PREFIX)-gcc),)
|
|
ifdef ALLOW_OLD_ARM_MULTILIB_TOOLCHAIN
|
|
PPRZ_TOOLCHAIN=$(shell find -L /opt/paparazzi/arm-multilib -maxdepth 1 -type d -name arm-none-eabi 2>/dev/null | head -n 1)
|
|
ifneq ($(PPRZ_TOOLCHAIN),)
|
|
# set prefix with full path to /opt/paparazzi/arm-multilib toolchain
|
|
PREFIX=$(shell dirname $(PPRZ_TOOLCHAIN))/bin/arm-none-eabi
|
|
TOOLCHAIN_FOUND = 1
|
|
endif
|
|
endif
|
|
else
|
|
TOOLCHAIN_FOUND = 1
|
|
endif
|
|
ifneq ($(TOOLCHAIN_FOUND),1)
|
|
ifneq ($(MAKECMDGOALS),clean)
|
|
$(error Error: arm-none-eabi-gcc cross-compiler not found! Recommended toolchain is https://launchpad.net/gcc-arm-embedded)
|
|
endif
|
|
endif
|
|
|
|
CC = $(PREFIX)-gcc
|
|
CXX = $(PREFIX)-g++
|
|
LD = $(PREFIX)-g++
|
|
AR = $(PREFIX)-ar
|
|
CP = $(PREFIX)-objcopy
|
|
DMP = $(PREFIX)-objdump
|
|
NM = $(PREFIX)-nm
|
|
SIZE = $(PREFIX)-size
|
|
GDB = $(PREFIX)-gdb
|
|
|
|
# some general commands
|
|
RM = rm
|