#-------------------------------------------------------------------------- # Makefile for the NeXus Java API. Builds both the required Java class # files and the shared library with the native methods. # # This version for Windows32 using the free Borland bcc55 compiler # # Mark Koennecke, October 2000 #-------------------------------------------------------------------------- .SUFFIXES: .SUFFIXES: .java .class .c .o ########################################################################### # C O N F I G U R A T I O N S E C T I O N # ########################################################################### # Where to find the HDF libraries: HDF4.1r3 is REQUIRED HDFROOT=c:\hdf4lib\HDF41r4 HDF5ROOT=C:\hdf5lib\5-144-winVS\c\release #Where to find the napi C stuff NAPIROOT=..\ # Where the Java binaries live JAVABIN=C:\jdk1.1.8\bin # The classpath for compiling java JCP=C:\jdk1.1.8\lib\classes.zip;.; # The path to the include files for the jni-headers JINCLUDE= -I"C:\jdk1.1.8\include" \ -I"C:\jdk1.1.8\include\win32" # The C-compiler to use CC=bcc32 # Compiler flags to use for compiling CFLAGS= -v -WD -w-8057 -w-8065 -w-8012 -w-8004 -w-8070 -w-8075 -w-8017 \ -w! -c $(JINCLUDE) -DHDF4 -DHDF5 -DJNEXUS -w-8066 -w-8008\ -I"$(HDFROOT)\include" -I"$(HDF5ROOT)\include" -I$(NAPIROOT) -Inative #Compiler flags used for linking LFLAGS= /v /Tpd /Lbin\win32 #Target location for the shared library SHLIB=bin\win32\jnexus.dll ########################################################################### # END OF C O N F I G U R A T I O N S E C T I O N # # DO NOT TOUCH ANYTHING BELOW! # ########################################################################### .java.class: $(JAVABIN)\javac -g -classpath $(JCP) $*.java .c.obj: $(CC) $(CFLAGS) -o$*.obj $*.c JOBJ=ncsa\hdf\hdflib\HDFException.class \ ncsa\hdf\hdflib\HDFJavaException.class \ ncsa\hdf\hdflib\HDFNotImplementedException.class \ ncsa\hdf\hdflib\HDFConstants.class \ ncsa\hdf\hdflib\HDFArray.class \ ncsa\hdf\hdflib\HDFNativeData.class \ neutron\nexus\NexusException.class \ neutron\nexus\NXlink.class \ neutron\nexus\NeXusFileInterface.class \ neutron\nexus\AttributeEntry.class \ neutron\nexus\NexusFile.class COBJ=native\hdfnativeImp.obj \ native\hdfexceptionImp.obj \ native\handle.obj \ native\NexusFile.obj \ ..\napi.obj all: jnexus.jar jnexus.dll test jnexus.jar: $(JOBJ) - del jnexus.jar $(JAVABIN)\jar cvf jnexus.jar $(JOBJ) \ ncsa/hdf/hdflib/ArrayDescriptor.class jnexus.dll: $(COBJ) ilink32 $(LFLAGS) c0d32.obj $(COBJ),bin\win32\jnexus.dll,,\ hm414m.lib hd414m.lib hdf5.lib cw32.lib import32.lib header: neutron/nexus/NexusFile.class $(JAVABIN)/javah -jni -d native neutron.nexus.NexusFile test: test/TestJapi.class clean: - rm neutron/nexus/*.class - rm ncsa/hdf/hdflib/*.class - rm native/*.o