JAVAC = /cygdrive/c/ProgramFiles/Java/jdk1.5.0_04/bin/javac BUILD_DIR = isim_jar_build ISIM_SRC_DIR = ../src ISIM_JAVA_SRC = $(ISIM_SRC_DIR)/org/simtk/isimsu/*.java ISIM_WRAPPER_TARGET = org/simtk/isimsu/ISIMWrapper ISIM_WRAPPER_CLASS = $(BUILD_DIR)/$(ISIM_WRAPPER_TARGET).class ISIM_WRAPPER_SOURCE = $(ISIM_SRC_DIR)/$(ISIM_WRAPPER_TARGET).java MANIFEST_FILE = isim_manifest.tmp # TORNADO_JAR = ../../../tornado/webstart/s_Tornado.jar SIMTK_JAVA_JAR = ../../SimtkSharedJava/source/webstart/s_SimtkSharedJava.jar UNSIGNED_JARS = isim.jar jdom.jar isim_win32.jar isim_mac.jar isim_linux.jar apbs_win32.jar apbs_mac.jar apbs_linux.jar pdb2pqr_win32.jar pdb2pqr_with_python.jar psize_win32.jar psize_with_python.jar jslider_non_apple.jar jslider_apple.jar SIGNED_JARS = s_isim.jar s_jdom.jar s_isim_win32.jar s_isim_mac.jar s_isim_linux.jar s_apbs_win32.jar s_apbs_mac.jar s_apbs_linux.jar s_pdb2pqr_win32.jar s_pdb2pqr_with_python.jar s_psize_win32.jar s_psize_with_python.jar s_jslider_non_apple.jar s_jslider_apple.jar TEST_KEYSTORE = /cygwin/home/cmbruns/private/myKeystore # PROD_KEYSTORE = /mnt/cdrom/simtkjava_signing/simtkjava.store PROD_KEYSTORE = D:/simtkjava_signing/simtkjava.store default: signed_jars signed_jars: $(SIGNED_JARS) test:### Test the final signed jar using webstart into the code archive test: signed_jars svn commit -m "automated check in of signed jar files" javaws isim_test.jnlp ### Unsigned Jar file: compile from source code and add resources ### isim.jar: $(ISIM_WRAPPER_CLASS) $(MANIFEST_FILE) $(ISIM_SRC_DIR)/resources/images/* jar cf isim.jar -m $(MANIFEST_FILE) -C $(BUILD_DIR) . -C $(ISIM_SRC_DIR) resources clean: rm -rf $(BUILD_DIR) rm $(MANIFEST_FILE) rm isim.jar ### Compile classes from source code, especially the main class ### $(ISIM_WRAPPER_CLASS): $(ISIM_JAVA_SRC) s_jdom.jar s_jslider_non_apple.jar mkdir -p $(BUILD_DIR) $(JAVAC) -source 1.5 -deprecation -d $(BUILD_DIR) -classpath ".;s_jdom.jar;$(SIMTK_JAVA_JAR);s_jslider_non_apple.jar" -sourcepath "$(ISIM_SRC_DIR)" ../src/org/simtk/isimsu/ISIMWrapper.java ### To be executable, jar file must specify main class ### plus, it needs to say what other jars it depends upon $(MANIFEST_FILE): echo "Main-Class: org.simtk.isimsu.ISIMWrapper" > $(MANIFEST_FILE) echo "Class-Path: s_jdom.jar" >> $(MANIFEST_FILE) # Implicit rule to sign jar files for production s_%.jar: %.jar jarsigner -keystore $(PROD_KEYSTORE) -signedJar $@ $? simtkjava # Signed jar files for testing s_test_%.jar: %.jar jarsigner -keystore $(TEST_KEYSTORE) -signedJar $@ $? myself ### PDB2PQR for various platforms ### pdb2pqr_win32.jar: pdb2pqr/win32/pdb2pqr/pdb2pqr.exe jar cf pdb2pqr_win32.jar -C pdb2pqr/win32 pdb2pqr ../non_apple_specific/org/simtk/isimsu/NativeTickedSlider.class: ../non_apple_specific/org/simtk/isimsu/NativeTickedSlider.java $(JAVAC) -sourcepath "../non_apple_specific/;../src/" ../non_apple_specific/org/simtk/isimsu/NativeTickedSlider.java jslider_non_apple.jar: ../non_apple_specific/org/simtk/isimsu/NativeTickedSlider.class jar cf jslider_non_apple.jar -C ../non_apple_specific org/simtk/isimsu