mirror of
https://github.com/Proxmark/proxmark3.git
synced 2025-07-16 02:03:00 -07:00
fix OS detection, libgcc detection
This commit is contained in:
parent
1dea88f976
commit
d5be6f7cd4
3 changed files with 34 additions and 44 deletions
14
Makefile
14
Makefile
|
@ -1,21 +1,13 @@
|
|||
include common/Makefile.common
|
||||
|
||||
ifeq ($(DETECTED_OS),Linux)
|
||||
HOST_BINARY=linux
|
||||
else
|
||||
HOST_BINARY=winsrc
|
||||
endif
|
||||
|
||||
all clean: %: bootrom/% armsrc/% $(HOST_BINARY)/%
|
||||
all clean: %: bootrom/% armsrc/% client/%
|
||||
|
||||
bootrom/%: FORCE
|
||||
$(MAKE) -C bootrom $(patsubst bootrom/%,%,$@)
|
||||
armsrc/%: FORCE
|
||||
$(MAKE) -C armsrc $(patsubst armsrc/%,%,$@)
|
||||
linux/%: FORCE
|
||||
$(MAKE) -C linux $(patsubst linux/%,%,$@)
|
||||
winsrc/%: FORCE
|
||||
$(MAKE) -C winsrc $(patsubst winsrc/%,%,$@)
|
||||
client/%: FORCE
|
||||
$(MAKE) -C client $(patsubst client/%,%,$@)
|
||||
FORCE: # Dummy target to force remake in the subdirectories, even if files exist (this Makefile doesn't know about the prerequisites)
|
||||
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ all: $(OBJDIR)/osimage.s19 $(OBJDIR)/fpgaimage.s19
|
|||
$(OBJDIR)/fpga.o: fpga.bit
|
||||
$(OBJCOPY) -O elf32-littlearm -I binary -B arm --redefine-sym _binary____fpga_fpga_bit_start=_binary_fpga_bit_start --redefine-sym _binary____fpga_fpga_bit_end=_binary_fpga_bit_end --prefix-sections=fpga_bit $^ $@
|
||||
|
||||
$(OBJDIR)/fullimage.elf: $(VERSIONOBJ) $(OBJDIR)/fpga.o $(THUMBOBJ) $(ARMOBJ) $(ARMLIB)/libgcc.a
|
||||
$(OBJDIR)/fullimage.elf: $(VERSIONOBJ) $(OBJDIR)/fpga.o $(THUMBOBJ) $(ARMOBJ) $(LIBGCC)
|
||||
$(LD) -g -Tldscript -Map=$(patsubst %.elf,%.map,$@) -o $@ $^
|
||||
|
||||
$(OBJDIR)/fpgaimage.elf: $(OBJDIR)/fullimage.elf
|
||||
|
|
|
@ -9,38 +9,6 @@
|
|||
# (The including Makefile still needs to define what 'all' is)
|
||||
all:
|
||||
|
||||
# Windows' echo echos its input verbatim, on Posix there is some
|
||||
# amount of shell command line parsing going on. echo "" on
|
||||
# Windows yields literal "", on Linux yields an empty line
|
||||
ifeq ($(shell echo ""),)
|
||||
|
||||
# This is probably a proper system, so we can use uname
|
||||
UNAME := $(shell uname)
|
||||
ifeq ($(UNAME), Linux)
|
||||
# Linux. (Todo: Add MacOS X if appropriate)
|
||||
DELETE=rm -rf
|
||||
MOVE=mv
|
||||
COPY=cp
|
||||
PATHSEP=/
|
||||
FLASH_TOOL=linux/flasher
|
||||
DETECTED_OS=Linux
|
||||
# You may/should set this in your environment
|
||||
ARMLIB ?= /usr/local/lib/gcc/arm-elf/4.3.3/interwork
|
||||
endif
|
||||
|
||||
else
|
||||
|
||||
# Assume that we are running on Windows.
|
||||
DELETE=del /q
|
||||
MOVE=ren
|
||||
COPY=copy
|
||||
PATHSEP=\\#
|
||||
ARMLIB ?= ../../devkitARM/lib/gcc/arm-elf/4.1.0/interwork
|
||||
FLASH_TOOL=winsrc\\prox.exe
|
||||
DETECTED_OS=Windows
|
||||
|
||||
endif
|
||||
|
||||
CROSS = arm-elf-
|
||||
CC = $(CROSS)gcc
|
||||
AS = $(CROSS)as
|
||||
|
@ -51,6 +19,36 @@ OBJDIR = obj
|
|||
|
||||
INCLUDE = -I../include
|
||||
|
||||
# Windows' echo echos its input verbatim, on Posix there is some
|
||||
# amount of shell command line parsing going on. echo "" on
|
||||
# Windows yields literal "", on Linux yields an empty line
|
||||
ifeq ($(shell echo ""),)
|
||||
|
||||
# This is probably a proper system, so we can use uname
|
||||
UNAME := $(shell uname)
|
||||
DELETE=rm -rf
|
||||
MOVE=mv
|
||||
COPY=cp
|
||||
PATHSEP=/
|
||||
FLASH_TOOL=client/flasher
|
||||
DETECTED_OS=UNAME
|
||||
# You may/should set this in your environment
|
||||
LIBGCC ?= $(shell $(CC) -print-libgcc-file-name)
|
||||
|
||||
else
|
||||
|
||||
# Assume that we are running on Windows.
|
||||
DELETE=del /q
|
||||
MOVE=ren
|
||||
COPY=copy
|
||||
PATHSEP=\\#
|
||||
LIBGCC ?= ../../devkitARM/lib/gcc/arm-elf/4.1.0/interwork/libgcc.a
|
||||
FLASH_TOOL=winsrc\\prox.exe
|
||||
DETECTED_OS=Windows
|
||||
|
||||
endif
|
||||
|
||||
|
||||
# Also search prerequisites in the common directory (for usb.c), and the fpga directory (for fpga.bit)
|
||||
VPATH = . ../common/ ../fpga/
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue