home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / kaffe-0.5p4-src.tgz / tar.out / contrib / kaffe / win32 / lib / native / make.vc.in < prev    next >
Text File  |  1996-09-28  |  4KB  |  151 lines

  1. # Makefile.in for kaffevm - a Java(tm) compatible virtual machine.
  2. # for MSVC
  3. # Copyright (c) 1996 Systems Architecture Research Centre,
  4. #           City University, London, UK.
  5. #
  6. # See the file "license.terms" for information on usage and redistribution
  7. # of this file, and for a DISCLAIMER OF ALL WARRANTIES.
  8. #
  9. # Written by Tim Wilkinson <tim@sarc.city.ac.uk>, February 1996.
  10.  
  11. srcdir=        @srcdir@
  12. prefix=        @prefix@
  13. exec_prefix=    @exec_prefix@
  14. libdir=        @libdir@
  15. INSTALL=    @INSTALL@
  16. INSTALL_DATA=    @INSTALL_DATA@
  17. CC=        @CC@
  18. PIC=        @PIC@
  19. LDFLAGS=    @LIBSHARE@
  20. LDTAIL=        @LDTAIL@
  21. KVER=        @KVER@
  22. OBJEXT=@OBJEXT@
  23. LIBEXT=@LIBEXT@
  24.  
  25. LINK32=link.exe
  26.  
  27. CFLAGS=        @CFLAGS@ -I$(srcdir) -I../support -I$(srcdir)/../support \
  28.  -I../../config -I$(srcdir)/../../config -I../../kaffevm
  29.  
  30. LIBNAME=    libkaffe_native
  31. LIBX=        $(LIBNAME)$(LIBEXT).$(KVER)
  32. LLIB=        $(LIBNAME)$(LIBEXT)
  33.  
  34. OBJECT_IO=    FileDescriptorStub$(OBJEXT) \
  35.         FileDescriptor$(OBJEXT) \
  36.         FileInputStreamStub$(OBJEXT) \
  37.         FileInputStream$(OBJEXT) \
  38.         FileOutputStreamStub$(OBJEXT) \
  39.         FileOutputStream$(OBJEXT) \
  40.         FileStub$(OBJEXT) \
  41.         File$(OBJEXT) \
  42.         RandomAccessFileStub$(OBJEXT) \
  43.         RandomAccessFile$(OBJEXT)
  44.  
  45. OBJECT_LANG=    ClassLoaderStub$(OBJEXT) \
  46.         ClassLoader$(OBJEXT) \
  47.         ClassStub$(OBJEXT) \
  48.         Class$(OBJEXT) \
  49.         CompilerStub$(OBJEXT) \
  50.         Compiler$(OBJEXT) \
  51.         DoubleStub$(OBJEXT) \
  52.         Double$(OBJEXT) \
  53.         FloatStub$(OBJEXT) \
  54.         Float$(OBJEXT) \
  55.         MathStub$(OBJEXT) \
  56.         Math$(OBJEXT) \
  57.         ObjectStub$(OBJEXT) \
  58.         Object$(OBJEXT) \
  59.         ProcessReaperStub$(OBJEXT) \
  60.         ProcessReaper$(OBJEXT) \
  61.         RuntimeStub$(OBJEXT) \
  62.         Runtime$(OBJEXT) \
  63.         SecurityManagerStub$(OBJEXT) \
  64.         SecurityManager$(OBJEXT) \
  65.         SystemStub$(OBJEXT) \
  66.         System$(OBJEXT) \
  67.         ThreadStub$(OBJEXT) \
  68.         Thread$(OBJEXT) \
  69.         ThrowableStub$(OBJEXT) \
  70.         Throwable$(OBJEXT) \
  71.         UNIXProcessStub$(OBJEXT) \
  72.         UNIXProcess$(OBJEXT)
  73.  
  74. OBJECT_UTIL=    DateStub$(OBJEXT) \
  75.         Date$(OBJEXT)
  76.  
  77. OBJECT=    $(OBJECT_LANG) $(OBJECT_IO) $(OBJECT_UTIL)
  78.  
  79. all:    links $(LLIB)
  80.  
  81. {$(srcdir)/java.io}.c$(OBJEXT):
  82.         $(CC) $(CFLAGS) -c $(PIC) $<
  83.  
  84. {$(srcdir)/java.lang}.c$(OBJEXT):
  85.         $(CC) $(CFLAGS) -c $(PIC) $<
  86.  
  87. {$(srcdir)/java.util}.c$(OBJEXT):
  88.         $(CC) $(CFLAGS) -c $(PIC) $<
  89.  
  90. {$(srcdir)/java.io.stubs}.c$(OBJEXT):
  91.         $(CC) $(CFLAGS) -c $(PIC) $<
  92.  
  93. {$(srcdir)/java.lang.stubs}.c$(OBJEXT):
  94.         $(CC) $(CFLAGS) -c $(PIC) $<
  95.  
  96. {$(srcdir)/java.util.stubs}.c$(OBJEXT):
  97.         $(CC) $(CFLAGS) -c $(PIC) $<
  98.  
  99. {.}.c$(OBJEXT):
  100.         $(CC) $(CFLAGS) -c $(PIC) $<
  101.  
  102. LINK32_FLAGS=../../kaffevm/libkaffe_vm.lib kernel32.lib user32.lib gdi32.lib winspool.lib\
  103.  comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib\
  104.  odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /incremental:yes\
  105.  /pdb:$(LIBNAME).pdb /debug /machine:I386 /def:$(LIBNAME).def\
  106.  /out:$(LLIB) /implib:$(LIBNAME).lib 
  107. DEF_FILE= \
  108.     $(LIBNAME).def
  109.  
  110. $(LLIB) : $(DEF_FILE) $(OBJECT)
  111.     $(LINK32) @<<
  112.   $(LINK32_FLAGS) $(OBJECT)
  113. <<
  114.  
  115. links:        ..\support\jtypes.h $(LIBNAME).def ..\..\config\config.h
  116.  
  117. ..\support\jtypes.h:    ..\..\..\config\i386\win32\msvc\jtypes.h
  118.         copy ..\..\..\config\i386\win32\msvc\jtypes.h ..\support\jtypes.h
  119.  
  120. $(LIBNAME).def: ..\..\..\config\i386\win32\msvc\$(LIBNAME).def
  121.         copy ..\..\..\config\i386\win32\msvc\$(LIBNAME).def $(LIBNAME).def
  122.  
  123. ..\..\config\config.h:    ..\..\..\config\i386\win32\msvc\config.h
  124.         copy ..\..\..\config\i386\win32\msvc\config.h ..\..\config\config.h
  125.  
  126.  
  127.  
  128. clean:
  129.         del *.obj
  130.         del *.lib
  131.         del *.dll
  132.     -@erase $(LIBNAME).dll
  133.     -@erase $(LIBNAME).exp
  134.     -@erase $(LIBNAME).ilk
  135.     -@erase $(LIBNAME).lib
  136.     -@erase $(LIBNAME).pdb
  137.     -@erase vc40.idb
  138.     -@erase vc40.pdb
  139.     -@erase vc41.pch
  140.  
  141. distclean:    clean
  142.         del ..\support\jtypes.h
  143.         del $(LIBNAME).def
  144.         del ..\..\config\config.h
  145.         del Makefile
  146.  
  147. install:
  148.         if not exist "$(libdir)/$(NULL)" mkdir "$(libdir)"
  149.         $(INSTALL_DATA) $(LLIB) $(libdir)/$(LLIB)
  150.         del $(libdir)/$(LLIB)
  151.