BUILD_DIR = ./build BUILD_CLASSES_DIR = $(BUILD_DIR)/classes BUILD_JAVACARD_DIR = $(BUILD_DIR)/javacard JAVACARD_SDK_DIR ?= $(SIMTOOLS_DIR)/javacard JAVACARD_EXPORT_DIR ?= $(JAVACARD_SDK_DIR)/api21_export_files ifdef COMSPEC CLASSPATH = $(JAVACARD_SDK_DIR)/lib/api21.jar;$(JAVACARD_SDK_DIR)/lib/sim.jar else CLASSPATH = $(JAVACARD_SDK_DIR)/lib/api21.jar:$(JAVACARD_SDK_DIR)/lib/sim.jar endif JFLAGS = -target 1.1 -source 1.3 -g -d $(BUILD_CLASSES_DIR) -classpath "$(CLASSPATH)" JAVA ?= java JC ?= javac .SUFFIXES: .java .class .java.class: mkdir -p $(BUILD_CLASSES_DIR) mkdir -p $(BUILD_JAVACARD_DIR) $(JC) $(JFLAGS) $*.java $(JAVA) -jar $(JAVACARD_SDK_DIR)/bin/converter.jar \ -d $(BUILD_JAVACARD_DIR) \ -classdir $(BUILD_CLASSES_DIR) \ -exportpath $(JAVACARD_EXPORT_DIR) \ -applet $(APPLET_AID) $(APPLET_NAME) \ $(PACKAGE_NAME) $(PACKAGE_AID) $(PACKAGE_VERSION) default: classes classes: $(SOURCES:.java=.class) clean: $(RM) -rf $(BUILD_DIR) install: $(eval CAP_FILE := $(shell find $(BUILD_JAVACARD_DIR) -name *.cap)) $(eval MODULE_AID := $(shell echo $(APPLET_AID) | sed 's/0x//g' | sed 's/\://g')) $(eval INSTANCE_AID := $(shell echo $(APPLET_AID) | sed 's/0x//g' | sed 's/\://g')) $(SIMTOOLS_DIR)/bin/shadysim \ $(SHADYSIM_OPTIONS) \ -l $(CAP_FILE) \ -i $(CAP_FILE) \ --enable-sim-toolkit \ --module-aid $(MODULE_AID) \ --instance-aid $(INSTANCE_AID) \ --nonvolatile-memory-required 0100 \ --volatile-memory-for-install 0100 \ --max-menu-entry-text 10 \ --max-menu-entries 01