]> cvs.zerfleddert.de Git - proxmark3-svn/commitdiff
fix OS detection, libgcc detection
authorbushing <bushing@ef4ab9da-24cd-11de-8aaa-f3a34680c41f>
Tue, 22 Dec 2009 12:50:34 +0000 (12:50 +0000)
committerbushing <bushing@ef4ab9da-24cd-11de-8aaa-f3a34680c41f>
Tue, 22 Dec 2009 12:50:34 +0000 (12:50 +0000)
Makefile
armsrc/Makefile
common/Makefile.common

index 287dc0418101e88f00fa87c0d9ada7d68b04ed1c..bb0d558948d62cef5e84b6c6f302cfca704aab52 100644 (file)
--- a/Makefile
+++ b/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)
 
 
index 2cfac4acb51cf2fef73acf91a2d3c075cf211f57..97805b7a1a9f1f1c16cce3b8e7a0c59f023e41a8 100644 (file)
@@ -36,7 +36,7 @@ all: $(OBJDIR)/osimage.s19 $(OBJDIR)/fpgaimage.s19
 $(OBJDIR)/fpga.o: fpga.bit\r
        $(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  $^ $@\r
 \r
-$(OBJDIR)/fullimage.elf: $(VERSIONOBJ) $(OBJDIR)/fpga.o $(THUMBOBJ) $(ARMOBJ) $(ARMLIB)/libgcc.a\r
+$(OBJDIR)/fullimage.elf: $(VERSIONOBJ) $(OBJDIR)/fpga.o $(THUMBOBJ) $(ARMOBJ) $(LIBGCC)\r
        $(LD) -g -Tldscript -Map=$(patsubst %.elf,%.map,$@) -o $@ $^\r
 \r
 $(OBJDIR)/fpgaimage.elf: $(OBJDIR)/fullimage.elf\r
index 6260eb05da4e5803f2f8d29b02be72ba0c3b46e4..c2903a8f1feebba91646826dbc5800d2672ff3d5 100644 (file)
@@ -9,6 +9,16 @@
 # (The including Makefile still needs to define what 'all' is)
 all:
 
+CROSS   = arm-elf-
+CC     = $(CROSS)gcc
+AS     = $(CROSS)as
+LD     = $(CROSS)ld
+OBJCOPY = $(CROSS)objcopy
+
+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
@@ -16,17 +26,14 @@ 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
+FLASH_TOOL=client/flasher
+DETECTED_OS=UNAME
 # You may/should set this in your environment
-ARMLIB ?= /usr/local/lib/gcc/arm-elf/4.3.3/interwork
-endif
+LIBGCC ?= $(shell $(CC) -print-libgcc-file-name)
 
 else
 
@@ -35,21 +42,12 @@ DELETE=del /q
 MOVE=ren
 COPY=copy
 PATHSEP=\\#
-ARMLIB ?= ../../devkitARM/lib/gcc/arm-elf/4.1.0/interwork
+LIBGCC ?= ../../devkitARM/lib/gcc/arm-elf/4.1.0/interwork/libgcc.a
 FLASH_TOOL=winsrc\\prox.exe
 DETECTED_OS=Windows
 
 endif
 
-CROSS   = arm-elf-
-CC     = $(CROSS)gcc
-AS     = $(CROSS)as
-LD     = $(CROSS)ld
-OBJCOPY = $(CROSS)objcopy
-
-OBJDIR = obj
-
-INCLUDE = -I../include
 
 # Also search prerequisites in the common directory (for usb.c), and the fpga directory (for fpga.bit)
 VPATH = . ../common/ ../fpga/
Impressum, Datenschutz