##################################################################### # # Author: Hans Oesterholt-Dijkema # # $Id$ # # Makefile for SQLITE for use with GNU Make (MinGW/MSYS) # and the MSVC2003 free toolkit. Expects the MSVC Free SDK # installed along with the MSVC2003 free toolkit. # # Expects $INCLUDE, $LIB, $PATH set right for use with CL.EXE in # MSYS. NEEDS MSYS for clean: and install:, for making only: # Works also in the Visual C++ Toolkit 2003 Command Prompt, # provided %INCLUDE%, %LIB%, %PATH% are set accordingly. # ##################################################################### CL=cl CLFLAGS=-O2 -Og -G7 LINK=link PREFIX=$$VCTOOLKITINSTALLDIR INCINST=$(PREFIX)/include LIBINST=$(PREFIX)/lib BININST=$(PREFIX)/bin SQLITE_OBJ = alter.o analyze.o attach.o auth.o btree.o build.o \ callback.o complete.o date.o \ delete.o expr.o func.o hash.o insert.o \ main.o opcodes.o os_unix.o os_win.o \ pager.o parse.o pragma.o prepare.o printf.o random.o \ select.o table.o tokenize.o trigger.o update.o \ util.o vacuum.o \ vdbe.o vdbeapi.o vdbeaux.o vdbefifo.o vdbemem.o \ where.o utf.o legacy.o SQLITE_PRG_OBJ=shell.o all: sqlite3.lib @echo "done" install: cp sqlite3.exe $(BININST) cp sqlite3.lib sqlite3.dll sqlite3.exp sqlite3.def $(LIBINST) cp sqlite3.h $(INCINST) clean: rm -f *.dll *.lib *.exp *.exe *.o sqlite3.exe: sqlite3.dll $(SQLITE_PRG_OBJ) $(LINK) -OUT:sqlite3.exe $(SQLITE_PRG_OBJ) sqlite3.lib sqlite3.lib: $(SQLITE_OBJ) $(LINK) -LIB -OUT:sqlite3.lib $(SQLITE_OBJ) sqlite3.dll: $(SQLITE_OBJ) $(LINK) -OUT:sqlite3.dll -dll -def:sqlite3.def $(SQLITE_OBJ) attach.o: attach.c $(CL) -c $(CLFLAGS) -Fo$@ $< auth.o: auth.c $(CL) -c $(CLFLAGS) -Fo$@ $< btree.o: btree.c $(CL) -c $(CLFLAGS) -Fo$@ $< build.o: build.c $(CL) -c $(CLFLAGS) -Fo$@ $< date.o: date.c $(CL) -c $(CLFLAGS) -Fo$@ $< delete.o: delete.c $(CL) -c $(CLFLAGS) -Fo$@ $< expr.o: expr.c $(CL) -c $(CLFLAGS) -Fo$@ $< func.o: func.c $(CL) -c $(CLFLAGS) -Fo$@ $< hash.o: hash.c $(CL) -c $(CLFLAGS) -Fo$@ $< insert.o: insert.c $(CL) -c $(CLFLAGS) -Fo$@ $< legacy.o: legacy.c $(CL) -c $(CLFLAGS) -Fo$@ $< main.o: main.c $(CL) -c $(CLFLAGS) -Fo$@ $< opcodes.o: opcodes.c $(CL) -c $(CLFLAGS) -Fo$@ $< os_mac.o: os_mac.c $(CL) -c $(CLFLAGS) -Fo$@ $< os_unix.o: os_unix.c $(CL) -c $(CLFLAGS) -Fo$@ $< os_win.o: os_win.c $(CL) -c $(CLFLAGS) -Fo$@ $< pager.o: pager.c $(CL) -c $(CLFLAGS) -Fo$@ $< parse.o: parse.c $(CL) -c $(CLFLAGS) -Fo$@ $< pragma.o: pragma.c $(CL) -c $(CLFLAGS) -Fo$@ $< printf.o: printf.c $(CL) -c $(CLFLAGS) -Fo$@ $< random.o: random.c $(CL) -c $(CLFLAGS) -Fo$@ $< select.o: select.c $(CL) -c $(CLFLAGS) -Fo$@ $< shell.o: shell.c $(CL) -c $(CLFLAGS) -Fo$@ $< table.o: table.c $(CL) -c $(CLFLAGS) -Fo$@ $< tclsqlite.o: tclsqlite.c $(CL) -c $(CLFLAGS) -Fo$@ $< tokenize.o: tokenize.c $(CL) -c $(CLFLAGS) -Fo$@ $< trigger.o: trigger.c $(CL) -c $(CLFLAGS) -Fo$@ $< update.o: update.c $(CL) -c $(CLFLAGS) -Fo$@ $< utf.o: utf.c $(CL) -c $(CLFLAGS) -Fo$@ $< util.o: util.c $(CL) -c $(CLFLAGS) -Fo$@ $< vacuum.o: vacuum.c $(CL) -c $(CLFLAGS) -Fo$@ $< vdbe.o: vdbe.c $(CL) -c $(CLFLAGS) -Fo$@ $< vdbeapi.o: vdbeapi.c $(CL) -c $(CLFLAGS) -Fo$@ $< vdbeaux.o: vdbeaux.c $(CL) -c $(CLFLAGS) -Fo$@ $< vdbemem.o: vdbemem.c $(CL) -c $(CLFLAGS) -Fo$@ $< where.o: where.c $(CL) -c $(CLFLAGS) -Fo$@ $<