| 1 | # $Id: makefile.gcc,v 1.3 2000-12-02 23:26:59 bird Exp $
|
|---|
| 2 |
|
|---|
| 3 | #
|
|---|
| 4 | # Common makefile for database utils - EMX/GCC version
|
|---|
| 5 | #
|
|---|
| 6 |
|
|---|
| 7 | # common include directory
|
|---|
| 8 | ODIN32_INCLUDE = ..\..\include
|
|---|
| 9 | ODIN32_TOOLS = ..\bin
|
|---|
| 10 | !include $(ODIN32_INCLUDE)\odin32.tools
|
|---|
| 11 |
|
|---|
| 12 | !ifndef OMF
|
|---|
| 13 | OMF=0
|
|---|
| 14 | !endif
|
|---|
| 15 |
|
|---|
| 16 | #
|
|---|
| 17 | # gcc defines
|
|---|
| 18 | #
|
|---|
| 19 | CC =gcc
|
|---|
| 20 | CXX =gcc
|
|---|
| 21 | LD =gcc
|
|---|
| 22 |
|
|---|
| 23 | !if $(OMF) == 0
|
|---|
| 24 | O = o
|
|---|
| 25 | A = a
|
|---|
| 26 | AR = ar
|
|---|
| 27 | CFZOMF =
|
|---|
| 28 | !else
|
|---|
| 29 | O = obj
|
|---|
| 30 | A = lib
|
|---|
| 31 | AR = emxomfar
|
|---|
| 32 | CFZOMF = -Zomf
|
|---|
| 33 | !endif
|
|---|
| 34 |
|
|---|
| 35 | CDEFINES = -D__WIN32OS2__ -D__WINE__ -DNOTDLL
|
|---|
| 36 | CINCLUDES = -I$(ODIN32_INCLUDE)\Win -I$(ODIN32_INCLUDE) -Imysql -Igd -I..\common
|
|---|
| 37 | # Note: Add -fhandle-exceptions if old gcc version.
|
|---|
| 38 | !ifndef DEBUG
|
|---|
| 39 | CFLAGS = $(CFLAGS) -Zmap -Zmt -mprobe -Wall -s -O
|
|---|
| 40 | !else
|
|---|
| 41 | CFLAGS = $(CFZOMF) -Zmap -Zmt -mprobe -Wall -g
|
|---|
| 42 | !endif
|
|---|
| 43 | CXXFLAGS = $(CFLAGS)
|
|---|
| 44 | LIBS = -L. -ldb -lmysql\libmysqlclient -lsocket -lstdcpp
|
|---|
| 45 | LINK = $(LD) $(CFLAGS) -o $@
|
|---|
| 46 |
|
|---|
| 47 |
|
|---|
| 48 | #
|
|---|
| 49 | # interference rules (the .c.obj/.cpp.obj rules are intended for Visual Slick only)
|
|---|
| 50 | #
|
|---|
| 51 | .c.o:
|
|---|
| 52 | $(CC) -c $(CFLAGS) $(CDEFINES) $(CINCLUDES) $<
|
|---|
| 53 |
|
|---|
| 54 | .cpp.o:
|
|---|
| 55 | $(CXX) -c $(CXXFLAGS) $(CDEFINES) $(CINCLUDES) $<
|
|---|
| 56 |
|
|---|
| 57 | .c.obj:
|
|---|
| 58 | $(CC) -c $(CFLAGS) $(CDEFINES) $(CINCLUDES) $<
|
|---|
| 59 |
|
|---|
| 60 | .cpp.obj:
|
|---|
| 61 | $(CXX) -c $(CXXFLAGS) $(CDEFINES) $(CINCLUDES) $<
|
|---|
| 62 |
|
|---|
| 63 |
|
|---|
| 64 |
|
|---|
| 65 | #
|
|---|
| 66 | # All roule
|
|---|
| 67 | #
|
|---|
| 68 | all: db.$(A) APIImport.exe StateUpd.exe kHTMLPC.exe \
|
|---|
| 69 | ..\bin\APIImport.exe ..\bin\StateUpd.exe ..\bin\kHTMLPC.exe
|
|---|
| 70 |
|
|---|
| 71 |
|
|---|
| 72 |
|
|---|
| 73 | #
|
|---|
| 74 | # Database library
|
|---|
| 75 | #
|
|---|
| 76 | db.$(A): db.$(O)
|
|---|
| 77 | -$(RM) $@
|
|---|
| 78 | $(AR) cr $@ $**
|
|---|
| 79 |
|
|---|
| 80 |
|
|---|
| 81 |
|
|---|
| 82 | #
|
|---|
| 83 | # APIImport
|
|---|
| 84 | #
|
|---|
| 85 | APIImport.exe: APIImport.$(O) db.$(A) ..\common\commongcc.$(A)
|
|---|
| 86 | $(LINK) APIImport.$(O) -l..\common\commongcc $(LIBS)
|
|---|
| 87 |
|
|---|
| 88 | ..\bin\APIImport.exe: APIImport.exe
|
|---|
| 89 | $(CP) $** $@
|
|---|
| 90 |
|
|---|
| 91 | ..\common\commongcc.$(A):
|
|---|
| 92 | @cd ..\common
|
|---|
| 93 | @nmake /nologo commongcc.$(A)
|
|---|
| 94 | @cd ..\database
|
|---|
| 95 |
|
|---|
| 96 |
|
|---|
| 97 | #
|
|---|
| 98 | # StateUpd
|
|---|
| 99 | #
|
|---|
| 100 | StateUpd.exe: StateUpd.$(O) db.$(A)
|
|---|
| 101 | $(LINK) StateUpd.$(O) $(LIBS)
|
|---|
| 102 |
|
|---|
| 103 | ..\bin\StateUpd.exe: StateUpd.exe
|
|---|
| 104 | $(CP) $** $@
|
|---|
| 105 |
|
|---|
| 106 |
|
|---|
| 107 |
|
|---|
| 108 | #
|
|---|
| 109 | # kHTMLPC - HTML/Sql PreCompiler.
|
|---|
| 110 | #
|
|---|
| 111 | kHTMLPC.exe: kHTMLPC.$(O) gd/gdgcc.$(A) db.$(A)
|
|---|
| 112 | $(LINK) kHTMLPC.$(O) -lgd/gdgcc $(LIBS)
|
|---|
| 113 |
|
|---|
| 114 | ..\bin\kHTMLPC.exe: kHTMLPC.exe
|
|---|
| 115 | $(CP) $** $@
|
|---|
| 116 |
|
|---|
| 117 |
|
|---|
| 118 | gd/gdgcc.$(A): force
|
|---|
| 119 | @cd gd
|
|---|
| 120 | @nmake /nologo gdgcc.$(A)
|
|---|
| 121 | @cd ..
|
|---|
| 122 |
|
|---|
| 123 |
|
|---|
| 124 |
|
|---|
| 125 | #
|
|---|
| 126 | # kHTHMLPC - interference roules for preprocessing of kSqlHtml files.
|
|---|
| 127 | #
|
|---|
| 128 | .SUFFIXES: .html .ksqlhtml .$(O)
|
|---|
| 129 | .kSqlHtml.html:
|
|---|
| 130 | kHTMLPC $<
|
|---|
| 131 | .kSqlHtml.obj: # Visual SlickEdit thinks everything complies to .obj files...
|
|---|
| 132 | kHTMLPC $<
|
|---|
| 133 |
|
|---|
| 134 |
|
|---|
| 135 |
|
|---|
| 136 | #
|
|---|
| 137 | # Odin32 - Creates the database. This will do a drop of any database named "Odin32"!
|
|---|
| 138 | #
|
|---|
| 139 | Odin32: CreateTables.sql States.sql Authors.sql
|
|---|
| 140 | -mysqladmin refresh
|
|---|
| 141 | -mysqladmin DROP Odin32
|
|---|
| 142 | mysql < CreateTables.sql
|
|---|
| 143 | mysql < States.sql
|
|---|
| 144 | mysql < Authors.sql
|
|---|
| 145 | -mysqladmin refresh
|
|---|
| 146 |
|
|---|
| 147 | Authors: Authors.sql
|
|---|
| 148 | mysql < Authors.sql
|
|---|
| 149 | -mysqladmin refresh
|
|---|
| 150 |
|
|---|
| 151 | States: States.sql
|
|---|
| 152 | mysql < States.sql
|
|---|
| 153 | -mysqladmin refresh
|
|---|
| 154 |
|
|---|
| 155 |
|
|---|
| 156 |
|
|---|
| 157 | #
|
|---|
| 158 | # Autogenerated depenencies.
|
|---|
| 159 | #
|
|---|
| 160 | dep:
|
|---|
| 161 | $(DEPEND) $(CINCLUDES) *.h *.asm *.inc $(ODIN32_INCLUDE)\*.h \
|
|---|
| 162 | *.c *.cpp -objo *.c *.cpp
|
|---|
| 163 | cd gd
|
|---|
| 164 | @nmake /nologo dep
|
|---|
| 165 | cd ..
|
|---|
| 166 |
|
|---|
| 167 | !ifndef NODEP
|
|---|
| 168 | !include .depend
|
|---|
| 169 | !endif
|
|---|
| 170 |
|
|---|
| 171 |
|
|---|
| 172 | #
|
|---|
| 173 | # clean
|
|---|
| 174 | #
|
|---|
| 175 | clean:
|
|---|
| 176 | $(RM) *.obj *.lib *.o *.a *.dll *.exe *.pch *.log *.map *.html
|
|---|
| 177 | cd gd
|
|---|
| 178 | $(MAKE) /nologo clean
|
|---|
| 179 | cd ..
|
|---|
| 180 |
|
|---|
| 181 | force:
|
|---|
| 182 | @$(ECHO) ...
|
|---|