]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - armsrc/Makefile
Update README.md
[proxmark3-svn] / armsrc / Makefile
index 046ad1bc17da8df991c2e2ea960bf33e90389cdf..f4ad2ad67834678dbac3c5c793cdbdf54d4d39da 100644 (file)
@@ -21,16 +21,14 @@ else
         SRC_LCD = 
 endif
 SRC_LF = lfops.c hitag2.c hitagS.c lfsampling.c pcf7931.c lfdemod.c protocols.c
-SRC_ISO15693 = iso15693.c iso15693tools.c
+SRC_ISO15693 = iso15693.c
 SRC_ISO14443a = epa.c iso14443a.c mifareutil.c mifarecmd.c mifaresniff.c mifaresim.c
 SRC_ISO14443b = iso14443b.c
-SRC_CRAPTO1 = crypto1.c des.c
-SRC_CRC = iso14443crc.c crc.c crc16.c crc32.c parity.c
-ifneq (,$(findstring WITH_SMARTCARD,$(APP_CFLAGS)))
-       SRC_SMARTCARD = i2c.c
-else
-       SRC_SMARTCARD = 
-endif
+SRC_CRAPTO1 = crypto1.c 
+SRC_DES = platform_util_arm.c des.c
+SRC_CRC = iso14443crc.c crc.c crc16.c crc32.c parity.c iso15693tools.c
+SRC_SMARTCARD = i2c.c
+
 #the FPGA bitstream files. Note: order matters!
 FPGA_BITSTREAMS = fpga_lf.bit fpga_hf.bit
 
@@ -45,7 +43,6 @@ APP_CFLAGS += -I../zlib
 # Compile these in thumb mode (small size)
 THUMBSRC = start.c \
        $(SRC_LCD) \
-       $(SRC_ISO15693) \
        $(SRC_LF) \
        $(SRC_ZLIB) \
        $(SRC_SMARTCARD) \
@@ -53,8 +50,10 @@ THUMBSRC = start.c \
        printf.c \
        util.c \
        string.c \
-       usb_cdc.c \
-       cmd.c
+       usb_cdc.c
+
+# Compile these in thumb mode optimized for speed (still smaller than ARM mode)
+THUMBOPTSRC = $(SRC_ISO15693)
 
 # These are to be compiled in ARM mode
 ARMSRC = fpgaloader.c \
@@ -64,6 +63,7 @@ ARMSRC = fpgaloader.c \
        $(SRC_ISO14443a) \
        $(SRC_ISO14443b) \
        $(SRC_CRAPTO1) \
+       $(SRC_DES) \
        $(SRC_CRC) \
        iclass.c \
        BigBuf.c \
@@ -73,7 +73,7 @@ ARMSRC = fpgaloader.c \
 VERSIONSRC = version.c \
        fpga_version_info.c
 
-# Do not move this inclusion before the definition of {THUMB,ASM,ARM}SRC
+# Do not move this inclusion before the definition of {THUMB,THUMBOPT,ASM,ARM}SRC
 include ../common/Makefile.common
 
 OBJS = $(OBJDIR)/fullimage.s19
@@ -83,8 +83,9 @@ all: $(OBJS)
 
 .DELETE_ON_ERROR:
 
-# version.c should be remade on every compilation
-.PHONY: version.c
+# version.c and fpga_version_info.c to be remade on every compilation
+.PHONY: version.c fpga_version_info.c
+
 version.c: default_version.c
        perl ../tools/mkversion.pl .. > $@ || $(COPY) $^ $@ 
 
@@ -100,7 +101,7 @@ $(OBJDIR)/fpga_all.bit.z: $(FPGA_BITSTREAMS) $(FPGA_COMPRESSOR)
 $(FPGA_COMPRESSOR):
                make -C ../client $(notdir $(FPGA_COMPRESSOR))
 
-$(OBJDIR)/fullimage.stage1.elf: $(VERSIONOBJ) $(OBJDIR)/fpga_all.o $(THUMBOBJ) $(ARMOBJ)
+$(OBJDIR)/fullimage.stage1.elf: $(VERSIONOBJ) $(OBJDIR)/fpga_all.o $(THUMBOBJ) $(THUMBOPTOBJ) $(ARMOBJ)
        $(CC) $(LDFLAGS) -Wl,-T,ldscript,-Map,$(patsubst %.elf,%.map,$@) -o $@ $^ $(LIBS)
 
 $(OBJDIR)/fullimage.nodata.bin: $(OBJDIR)/fullimage.stage1.elf
@@ -132,7 +133,7 @@ clean:
        $(DELETE) $(OBJDIR)$(PATHSEP)*.d
        $(DELETE) $(OBJDIR)$(PATHSEP)*.z
        $(DELETE) $(OBJDIR)$(PATHSEP)*.bin
-       $(DELETE) version.c
+       $(DELETE) version.c fpga_version_info.c
 
 .PHONY: all clean help
 help:
Impressum, Datenschutz