FIX: 'EMV compiling' - Makefiles are very picky about how things are done. its parser is a bit paranoid. So, to make things easier and more correct.

- armsrc/Makefile          when commenting out functionality,  move it below the comment otherwise APPS_CFLAG breaks to early.  See WITH_LCD
  - common/Makefile.common   enable / disable EMV,  uncomment two lines.  then make clean && make all.  flash,   MIGHT NOT work on 256kb devices

FIX: missing break in appmain.c made it go to iclass function..
This commit is contained in:
iceman1001 2017-02-13 15:32:48 +01:00
commit 573e8d72c7
4 changed files with 19 additions and 19 deletions

View file

@ -9,37 +9,33 @@
APP_INCLUDES = apps.h APP_INCLUDES = apps.h
#remove one of the following defines and comment out the relevant line #remove one of the following defines and comment out the relevant line
#in the next section to remove that particular feature from compilation #in the next section to remove that particular feature from compilation.
APP_CFLAGS = -DWITH_ISO14443a_StandAlone \ # NO space,TABs after the "\" sign.
APP_CFLAGS = -DWITH_CRC \
-DON_DEVICE \
-DWITH_LF \ -DWITH_LF \
-DWITH_ISO15693 -DWITH_ISO14443a -DWITH_ISO14443b -DWITH_ICLASS \ -DWITH_HITAG \
-DWITH_LEGICRF -DWITH_HITAG -DWITH_CRC -DON_DEVICE -DWITH_HFSNOOP \ -DWITH_ISO15693 \
# -DWITH_LCD \ -DWITH_LEGICRF \
-DWITH_ISO14443b \
-DWITH_ISO14443a \
-DWITH_ICLASS \
-DWITH_HFSNOOP \
-DWITH_ISO14443a_StandAlone \
-fno-strict-aliasing -ffunction-sections -fdata-sections -fno-strict-aliasing -ffunction-sections -fdata-sections
### IMPORTANT - move the commented variable below this line
# -DWITH_LCD \
#ifdef WITH_LCD
SRC_LCD = fonts.c LCD.c SRC_LCD = fonts.c LCD.c
#endif
#ifdef WITH_LF
SRC_LF = lfops.c hitag2.c hitagS.c lfsampling.c pcf7931.c lfdemod.c SRC_LF = lfops.c hitag2.c hitagS.c lfsampling.c pcf7931.c lfdemod.c
#endif
SRC_ISO15693 = iso15693.c iso15693tools.c SRC_ISO15693 = iso15693.c iso15693tools.c
SRC_ISO14443a = iso14443a.c mifareutil.c mifarecmd.c mifaresniff.c epa.c SRC_ISO14443a = iso14443a.c mifareutil.c mifarecmd.c mifaresniff.c epa.c
SRC_ISO14443b = iso14443b.c SRC_ISO14443b = iso14443b.c
SRC_CRAPTO1 = crapto1.c crypto1.c des.c aes.c desfire_key.c desfire_crypto.c mifaredesfire.c SRC_CRAPTO1 = crapto1.c crypto1.c des.c aes.c desfire_key.c desfire_crypto.c mifaredesfire.c
SRC_CRC = iso14443crc.c crc.c crc16.c crc32.c SRC_CRC = iso14443crc.c crc.c crc16.c crc32.c
#ifdef WITH_EMV
SRC_EMV = tlv.c emvdataels.c emvutil.c emvcmd.c SRC_EMV = tlv.c emvdataels.c emvutil.c emvcmd.c
#endif
#ifdef WITH_ICLASS
SRC_ICLASS = iclass.c optimized_cipher.c SRC_ICLASS = iclass.c optimized_cipher.c
#endif
#ifdef WITH_LEGIC
SRC_LEGIC = legicrf.c legic_prng.c SRC_LEGIC = legicrf.c legic_prng.c
#endif
#the FPGA bitstream files. Note: order matters! #the FPGA bitstream files. Note: order matters!
FPGA_BITSTREAMS = fpga_lf.bit fpga_hf.bit FPGA_BITSTREAMS = fpga_lf.bit fpga_hf.bit

View file

@ -1228,6 +1228,7 @@ void UsbPacketReceived(uint8_t *packet, int len)
break; break;
case CMD_EMV_DUMP_CARD: case CMD_EMV_DUMP_CARD:
EMVdumpcard(); EMVdumpcard();
break;
#endif #endif
#ifdef WITH_ICLASS #ifdef WITH_ICLASS
// Makes use of ISO14443a FPGA Firmware // Makes use of ISO14443a FPGA Firmware

View file

@ -7,7 +7,7 @@ include ../common/Makefile.common
CC = gcc CC = gcc
CXX = g++ CXX = g++
COMMON_FLAGS = -std=c99 -O3 -mpopcnt -march=native -g COMMON_FLAGS += -std=c99 -O3 -mpopcnt -march=native -g
#VPATH = ../common ../zlib #VPATH = ../common ../zlib
OBJDIR = obj OBJDIR = obj

View file

@ -61,8 +61,11 @@ endif
#uncomment to enable EMV #uncomment to enable EMV
#APP_CFLAGS += -DWITH_EMV #APP_CFLAGS += -DWITH_EMV
#COMMON_FLAGS += -DWITH_EMV
#uncomment to fix 256 vs 512kb Devices #uncomment to fix 256 vs 512kb Devices
APP_CFLAGS += -DHAS_512_FLASH APP_CFLAGS += -DHAS_512_FLASH
COMMON_FLAGS += -DHAS_512_FLASH
# Also search prerequisites in the common directory (for usb.c), the fpga directory (for fpga.bit), and the zlib directory # Also search prerequisites in the common directory (for usb.c), the fpga directory (for fpga.bit), and the zlib directory
VPATH = . ../common ../fpga ../zlib VPATH = . ../common ../fpga ../zlib