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 / kaffevm / make.vc.in < prev   
Text File  |  1996-09-28  |  4KB  |  147 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. jit_CFLAGS=    -DTRANSLATOR 
  26. intrp_CFLAGS=    -DINTERPRETER 
  27.  
  28. CFLAGS=        @CFLAGS@ @KAFFEVMFLAGS@ -I. -I$(srcdir) -I$(srcdir)/../config -I../config \
  29.          -I$(srcdir)/@TYPE@ $(@TYPE@_CFLAGS)
  30.  
  31. LIBNAME=    libkaffe_vm
  32. LIBX=        $(LIBNAME)$(LIBEXT).$(KVER)
  33. LLIB=        $(LIBNAME)$(LIBEXT)
  34.  
  35. COMMON=\
  36.         code$(OBJEXT) \
  37.         lookup$(OBJEXT) \
  38.         external$(OBJEXT) \
  39.         constants$(OBJEXT) \
  40.         classMethod$(OBJEXT) \
  41.         readClass$(OBJEXT) \
  42.         findClass$(OBJEXT) \
  43.         baseClasses$(OBJEXT) \
  44.         object$(OBJEXT) \
  45.         itypes$(OBJEXT) \
  46.         gc$(OBJEXT) \
  47.         thread$(OBJEXT) \
  48.         locks$(OBJEXT) \
  49.         threadCalls$(OBJEXT) \
  50.         support$(OBJEXT) \
  51.         zextract$(OBJEXT) \
  52.         soft$(OBJEXT) \
  53.         flags$(OBJEXT) \
  54.         md$(OBJEXT)
  55.  
  56. intrp_OBJECTS=\
  57.         exception$(OBJEXT) \
  58.         machine$(OBJEXT)
  59.  
  60. jit_OBJECTS=\
  61.         basecode$(OBJEXT) \
  62.         funcs$(OBJEXT) \
  63.         icode$(OBJEXT) \
  64.         labels$(OBJEXT) \
  65.         registers$(OBJEXT) \
  66.         slots$(OBJEXT) \
  67.         machine$(OBJEXT) \
  68.         seq$(OBJEXT) \
  69.         exception$(OBJEXT)
  70.  
  71. OBJECT=        $(COMMON) $(@TYPE@_OBJECTS)
  72.  
  73. all:        links $(LLIB)
  74.  
  75. {$(srcdir)}.c$(OBJEXT):
  76.         $(CC) $(CFLAGS) -c $(PIC) $<
  77.  
  78. {$(srcdir)/@TYPE@}.c$(OBJEXT):
  79.         $(CC) $(CFLAGS) -c $(PIC) $<
  80.  
  81. {.}.c$(OBJEXT):
  82.         $(CC) $(CFLAGS) -c $(PIC) $<
  83.  
  84. LINK32_FLAGS=wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib\
  85.  comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib\
  86.  odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /incremental:yes\
  87.  /pdb:$(LIBNAME).pdb /debug /machine:I386 /def:$(LIBNAME).def\
  88.  /out:$(LLIB) /implib:$(LIBNAME).lib 
  89. DEF_FILE= \
  90.     $(LIBNAME).def
  91.  
  92. $(LLIB) : $(DEF_FILE) $(OBJECT)
  93.     link @<<
  94.   $(LINK32_FLAGS) $(OBJECT)
  95. <<
  96.  
  97.  
  98. links:        md.h md.c $(LIBNAME).def icode.h jit.def ..\config\config.h
  99.  
  100. md.h:        ..\..\config\i386\win32\msvc\md.h
  101.         copy ..\..\config\i386\win32\msvc\md.h md.h
  102.  
  103. md.c:        ..\..\config\i386\win32\msvc\md.c
  104.         copy ..\..\config\i386\win32\msvc\md.c md.c
  105.  
  106. $(LIBNAME).def: ..\..\config\i386\win32\msvc\$(LIBNAME).def
  107.         copy ..\..\config\i386\win32\msvc\$(LIBNAME).def $(LIBNAME).def
  108.  
  109. icode.h:    ..\..\config\i386\jit-icode.h
  110.         copy ..\..\config\i386\jit-icode.h icode.h
  111.  
  112. jit.def:    ..\..\config\i386\jit-i386.def
  113.         copy ..\..\config\i386\jit-i386.def jit.def
  114.  
  115. ..\config\config.h:    ..\..\config\i386\win32\msvc\config.h
  116.         copy ..\..\config\i386\win32\msvc\config.h ..\config\config.h
  117.  
  118.  
  119. clean:
  120.         del *.obj
  121.         del *.lib
  122.         del *.dll
  123.     -@erase $(LIBNAME).dll
  124.     -@erase $(LIBNAME).exp
  125.     -@erase $(LIBNAME).ilk
  126.     -@erase $(LIBNAME).lib
  127.     -@erase $(LIBNAME).pdb
  128.     -@erase vc40.idb
  129.     -@erase vc40.pdb
  130.     -@erase vc41.pch
  131.  
  132. distclean:    clean
  133.         del md.h
  134.         del md.c
  135.         del jit.def
  136.         del icode.h
  137.         del $(LIBNAME).def
  138.         del ..\config\config.h
  139.         del Makefile
  140.         del config.log
  141.         del config.status
  142.  
  143. install:
  144.         if not exist "$(libdir)/$(NULL)" mkdir "$(libdir)"
  145.         $(INSTALL_DATA) $(LLIB) $(libdir)/$(LLIB)
  146.         del $(libdir)/$(LLIB)
  147.