1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
|
### makefile.vc - Makefile for building CHICKEN via VC++ 5.0 - felix
CC = cl
CFLAGS = /nologo /O2 /DC_DEFAULT_TARGET_STACK_SIZE=300000
LFLAGS = /nologo /subsystem:console /incremental:no /machine:I386
# Targets:
all : chicken-runtime.lib chicken-gui-runtime.lib chicken-embedded-runtime.lib chicken-embedded-gui-runtime.lib \
chicken-utilities.lib chicken-dll-runtime.lib chicken-u-runtime.lib chicken-u-utilities.lib chicken.exe csi.exe \
formatprofile
# The runtime library:
chicken-runtime.lib : runtime.obj library.obj eval.obj syntax-case.obj modules.obj debugger.obj profiler.obj
lib /nologo /out:$@ $**
chicken-utilities.lib : extras.obj srfi-1.obj srfi-4.obj srfi-13.obj srfi-14.obj format.obj match.obj srfi-18.obj lolevel.obj \
tinyclos.obj
lib /nologo /out:$@ $**
chicken-u-runtime.lib : runtime.obj ulibrary.obj ueval.obj usyntax-case.obj umodules.obj debugger.obj profiler.obj
lib /nologo /out:$@ $**
chicken-u-utilities.lib : uextras.obj usrfi-1.obj usrfi-4.obj usrfi-13.obj usrfi-14.obj uformat.obj umatch.obj \
usrfi-18.obj ulolevel.obj utinyclos.obj
lib /nologo /out:$@ $**
chicken-gui-runtime.lib : gui-runtime.obj gui-library.obj eval.obj syntax-case.obj modules.obj debugger.obj profiler.obj
lib /nologo /out:$@ $**
chicken-embedded-runtime.lib : embedded-runtime.obj library.obj eval.obj syntax-case.obj modules.obj debugger.obj profiler.obj
lib /nologo /out:$@ $**
chicken-u-embedded-runtime.lib : embedded-runtime.obj ulibrary.obj ueval.obj usyntax-case.obj umodules.obj udebugger.obj uprofiler.obj
lib /nologo /out:$@ $**
chicken-embedded-gui-runtime.lib : embedded-gui-runtime.obj gui-library.obj eval.obj syntax-case.obj modules.obj debugger.obj \
profiler.obj
lib /nologo /out:$@ $**
chicken-dll-runtime.lib : dll-runtime.obj gui-library.obj eval.obj syntax-case.obj modules.obj debugger.obj profiler.obj
lib /nologo /out:$@ $**
runtime.obj : runtime.c chicken.h
$(CC) $(CFLAGS) /c runtime.c
gui-runtime.obj : runtime.c
$(CC) $(CFLAGS) /c /DWINDOWS_GUI runtime.c /Fogui-runtime.obj
embedded-runtime.obj : runtime.c
$(CC) $(CFLAGS) /c /DC_EMBEDDED runtime.c /Foembedded-runtime.obj
embedded-gui-runtime.obj : runtime.c
$(CC) $(CFLAGS) /c /DWINDOWS_GUI /DC_EMBEDDED runtime.c /Foembedded-gui-runtime.obj
dll-runtime.obj : runtime.c
$(CC) $(CFLAGS) /c /DWINDOWS_DLL runtime.c /Fodll-runtime.obj
eval.obj : eval.c chicken.h
library.obj : library.c chicken.h
debugger.obj : debugger.c chicken.h
profiler.obj : profiler.c chicken.h
extras.obj : extras.c chicken.h
srfi-1.obj : srfi-1.c chicken.h
srfi-4.obj : srfi-4.c chicken.h
match.obj : match.c chicken.h
syntax-case.obj : syntax-case.c chicken.h
format.obj : format.c chicken.h
tinyclos.obj : tinyclos.c chicken.h
srfi-13.obj : srfi-13.c chicken.h
srfi-14.obj : srfi-14.c chicken.h
lolevel.obj : lolevel.c chicken.h
ueval.obj : ueval.c chicken.h
ulibrary.obj : ulibrary.c chicken.h
uextras.obj : uextras.c chicken.h
usrfi-1.obj : usrfi-1.c chicken.h
usrfi-4.obj : usrfi-4.c chicken.h
umatch.obj : umatch.c chicken.h
umodules.obj : umodules.c chicken.h
usyntax-case.obj : usyntax-case.c chicken.h
uformat.obj : uformat.c chicken.h
utinyclos.obj : utinyclos.c chicken.h
usrfi-13.obj : usrfi-13.c chicken.h
usrfi-14.obj : usrfi-14.c chicken.h
ulolevel.obj : ulolevel.c chicken.h
gui-library.obj : library.c chicken.h
$(CC) $(CFLAGS) /c /DWINDOWS_GUI library.c /Fogui-library.obj
chicken.res : chicken.rc
rc /r chicken.rc
# The interpreter:
csi.exe : csi.scm build.scm chicken.exe chicken-runtime.lib chicken-utilities.lib chicken.h chicken.res
chicken csi.scm -optimize-level 1 -quiet -output-file csi.c -prologue build.scm -postlude "(##csi#run)"
$(CC) $(CFLAGS) /DC_NO_HOME /c csi.c
link $(LFLAGS) csi.obj chicken-runtime.lib chicken-utilities.lib chicken.res /out:csi.exe
# The compiler:
chicken.exe : chicken.obj support.obj compiler.obj batch-driver.obj c-platform.obj c-backend.obj chicken.res chicken-runtime.lib \
chicken-utilities.lib
link $(LFLAGS) $** /out:chicken.exe
chicken.obj : chicken.c chicken.h
support.obj : support.c chicken.h
c-platform.obj : c-platform.c chicken.h
c-backend.obj : c-backend.c chicken.h
batch-driver.obj : batch-driver.c chicken.h
compiler.obj : compiler.c chicken.h
formatprofile : formatprofile.in
copy $** $@
|