~ubuntu-branches/ubuntu/trusty/scid/trusty

« back to all changes in this revision

Viewing changes to Makefile

  • Committer: Package Import Robot
  • Author(s): Oliver Korff
  • Date: 2012-03-11 22:53:54 UTC
  • mfrom: (18.1.4 sid)
  • Revision ID: package-import@ubuntu.com-20120311225354-0qdtceosm3263cal
Tags: 1:4.3.0.cvs20120311-1
* New Upstream Version.
* Updated to standards version 3.9.3
* scid now recommends tdom and tcllib, which is necessary for the built-in
  xfcc support. Thanks to Ian Zimmerman for giving this hint. 
  (Closes: #656699) 
* Scid filter mode: "AND" is now working again. Thanks to Ian Zimmerman for
  the Report, and to Fulvio solving the bug upstream. (Closes: #661836) 

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
##### Makefile for Scid for Unix operating systems.
2
 
 
3
 
### Compiler: Most Unix systems use g++ for compiling and linking.
4
 
#
5
 
COMPILE = g++
6
 
CC = gcc
7
 
LINK = g++
8
 
DESTDIR =
9
 
 
10
 
# BINDIR: where the Scid programs are copied for "make install".
11
 
#
12
 
BINDIR = /home/oliver/debian/scid/scid-4.3.0.cvs20110714/debian/scid/usr/games
13
 
 
14
 
# SHAREDIR: where scid.eco is copied for "make install".
15
 
#
16
 
SHAREDIR = /home/oliver/debian/scid/scid-4.3.0.cvs20110714/debian/scid/usr/share/scid
17
 
 
18
 
### TCL_VERSION: Set this according to the version of Tcl/Tk you have
19
 
#   installed that you want Scid to use: 8.0, 8.1, 8.2, 8.3, etc.
20
 
#
21
 
TCL_VERSION = 8.5
22
 
 
23
 
# TCL_INCLUDE, TCL_LIBRARY, TK_LIBRARY: these are the compiler options
24
 
#    needed for linking Scid with Tcl/Tk.  The program "./configure"
25
 
#    will try to determine them automatically, but if it cannot, you
26
 
#    can use the examples below for help in setting these variables.
27
 
#
28
 
# The settings determined by "./configure" are:
29
 
#
30
 
TCL_INCLUDE = -I/usr/include/tcl8.5
31
 
TCL_LIBRARY = -L/usr/lib -ltcl$(TCL_VERSION) -ldl
32
 
TK_LIBRARY  = $(TCL_LIBRARY) -ltk$(TCL_VERSION) -L/usr/lib/x86_64-linux-gnu -lX11
33
 
 
34
 
### Here are other commonly used settings for the Tcl/Tk compiler options:
35
 
 
36
 
### Linux (Red Hat and other distributions):
37
 
# TCL_INCLUDE = -I /usr/include
38
 
# TCL_LIBRARY = -L /usr/lib -ltcl$(TCL_VERSION) -ldl
39
 
# TK_LIBRARY  = $(TCL_LIBRARY) -ltk$(TCL_VERSION) -L /usr/X11R6/lib -lX11
40
 
 
41
 
### Solaris:
42
 
# TCL_INCLUDE = -I /usr/local/tcl/include
43
 
# TCL_LIBRARY = -L /usr/local/tcl/lib -ltcl$(TCL_VERSION) -ldl
44
 
# TK_LIBRARY  = $(TCL_LIBRARY) -ltk$(TCL_VERSION)
45
 
 
46
 
# Someone sent me these settings for SuSE Linux 6.1:
47
 
### Linux (SuSE distribution):
48
 
# TCL_INCLUDE = -I /usr/X11R6/include
49
 
# TCL_LIBRARY = -L /usr/lib -ltcl$(TCL_VERSION) -ldl
50
 
# TK_LIBRARY  = $(TCL_LIBRARY) -L /usr/X11R6/lib -ltk$(TCL_VERSION) -lX11
51
 
 
52
 
# Someone sent me these settings for FreeBSD with Tcl/Tk 8.0:
53
 
### FreeBSD:
54
 
# TCL_INCLUDE = -I /usr/local/include/tcl8.0 -I /usr/local/include/tk8.0
55
 
# TCL_LIBRARY = -L /usr/local/lib -ltcl80 -ldl
56
 
# TK_LIBRARY  = $(TCL_LIBRARY) -ltk80 -L /usr/X11/lib -lX11
57
 
 
58
 
 
59
 
########################################
60
 
### Compiler options:
61
 
 
62
 
### TB: Using Nalimov tablebases with Scid. Use "TB = -DSCID_USE_TB" for 
63
 
#      tablebase support, or just "TB = " for no tablebase capability.
64
 
#      Use "TB = -DSCID_USE_TB -DT41_INCLUDE" to include use of 4-1
65
 
#      (King + 3 pieces vs lone king) tablebases.
66
 
#
67
 
TB = 
68
 
 
69
 
### SCIDFLAGS: Scid customization flags.
70
 
#      Use -DZLIB if your system does not have zlib and you need
71
 
#      to include the code in the src/zlib directory.
72
 
#      The default is to use the system zlib library.
73
 
#
74
 
SCIDFLAGS = 
75
 
 
76
 
### OPTIMIZE: Optimization options for C++ compiler.
77
 
#      -O3 is the most optimization for g++. I have found -O2 to do
78
 
#      just as well, but someone reported a noticable difference in speed
79
 
#      between -O3 and -O2 so the default here is -O3.
80
 
#      On some systems, adding "-fno-rtti" and "-fno-exceptions" produces
81
 
#      smaller, faster programs since Scid does not use those C++ features.
82
 
#
83
 
OPTIMIZE = -O3 -fno-rtti -fno-exceptions
84
 
 
85
 
### DEBUG: Defining the macro ASSERTIONS will turn on assertions, which
86
 
#       helps to track bugs after modifications, but the programs will run 
87
 
#       a little faster with assertions turned off.
88
 
#
89
 
DEBUG = #-DASSERTIONS
90
 
 
91
 
### WARNINGS: I always compile with all warnings on (-Wall), and all the
92
 
#       files should compile warning-free using g++.
93
 
#
94
 
WARNINGS = -Wall
95
 
 
96
 
### PROFILE: Set this to "-pg" for profiling in g++ and gcc.
97
 
#
98
 
PROFILE = 
99
 
 
100
 
### CPP_FLAGS: Flags for C++ compilation.
101
 
#
102
 
CPP_FLAGS = $(PROFILE) $(OPTIMIZE) $(WARNINGS) $(DEBUG) $(SCIDFLAGS)
103
 
 
104
 
### CFLAGS: Flags for C compilation (only used for compiling zlib).
105
 
#
106
 
CFLAGS = -O2 -Wall $(PROFILE)
107
 
 
108
 
### LANGUAGES: List of additional Tcl files to include in Scid for
109
 
#       multi-language menu support.
110
 
#       By default, it is all the contributed languages, but you
111
 
#       can reduce the size of the Scid program by only specifying
112
 
#       the languages you want supported.
113
 
#
114
 
LANGUAGES = tcl/lang/catalan.tcl tcl/lang/czech.tcl tcl/lang/deutsch.tcl tcl/lang/francais.tcl tcl/lang/greek.tcl tcl/lang/hungary.tcl tcl/lang/italian.tcl tcl/lang/nederlan.tcl tcl/lang/norsk.tcl tcl/lang/polish.tcl tcl/lang/portbr.tcl tcl/lang/russian.tcl tcl/lang/serbian.tcl tcl/lang/spanish.tcl tcl/lang/suomi.tcl tcl/lang/swedish.tcl
115
 
 
116
 
 
117
 
############################################################
118
 
#
119
 
# You should not need to edit anything below this line.
120
 
#
121
 
############################################################
122
 
 
123
 
### EXECS: executable programs compiled from C++ files.
124
 
#     Note: scidt and eco2epd are obsolete and not compiled by default.
125
 
#                       PG : put back scidt has it appears to be useful in certain cases
126
 
#
127
 
EXECS= pgnscid tkscid tcscid scmerge scidlet scidt eco2epd
128
 
 
129
 
### SCIDOBJS: not all the .o files that make up Scid, just the standard ones 
130
 
#     that most of the programs include.
131
 
#
132
 
SCIDOBJS= src/misc.o src/index.o src/date.o src/namebase.o src/position.o \
133
 
      src/game.o src/gfile.o src/matsig.o src/bytebuf.o src/textbuf.o \
134
 
      src/myassert.o src/stralloc.o src/mfile.o src/dstring.o src/pgnparse.o \
135
 
      src/stored.o src/movelist.o src/sortcache.o \
136
 
                        src/polyglot/attack.o src/polyglot/board.o src/polyglot/book.o \
137
 
                        src/polyglot/book_make.o src/polyglot/book_merge.o src/polyglot/colour.o \
138
 
      src/polyglot/fen.o src/polyglot/game.o src/polyglot/hash.o \
139
 
      src/polyglot/io.o src/polyglot/line.o src/polyglot/list.o src/polyglot/main.o src/polyglot/move.o \
140
 
      src/polyglot/move_do.o src/polyglot/move_gen.o src/polyglot/move_legal.o src/polyglot/option.o \
141
 
      src/polyglot/parse.o src/polyglot/pgn.o src/polyglot/piece.o src/polyglot/random.o \
142
 
      src/polyglot/san.o src/polyglot/search.o src/polyglot/square.o src/polyglot/util.o
143
 
 
144
 
### ZLIBOBJS: object files in the zlib compression library.
145
 
#
146
 
ZLIBOBJS= src/zlib/adler32.o src/zlib/compress.o src/zlib/crc32.o \
147
 
      src/zlib/gzio.o src/zlib/uncompr.o src/zlib/deflate.o src/zlib/trees.o \
148
 
      src/zlib/zutil.o src/zlib/inflate.o src/zlib/infblock.o \
149
 
      src/zlib/inftrees.o src/zlib/infcodes.o src/zlib/infutil.o \
150
 
      src/zlib/inffast.o
151
 
 
152
 
       
153
 
### ZLIB: Should be "-lz" if your system has zlib, "" otherwise.
154
 
#
155
 
ZLIB = -lz
156
 
 
157
 
### OBJS: Will be "$(SCIDOBJS)", "$(POLYGLOTOBJS)", and also "$(ZLIBOBJS)" if they are
158
 
#      needed on your system.
159
 
OBJS= $(SCIDOBJS)
160
 
 
161
 
### TCLS: all the .tcl files that make up "scid".
162
 
#
163
 
TCLS= \
164
 
  tcl/start.tcl \
165
 
  tcl/config.tcl \
166
 
  tcl/bitmaps.tcl \
167
 
  tcl/language.tcl \
168
 
  tcl/utils.tcl \
169
 
  tcl/misc/flags.tcl \
170
 
    tcl/utils/date.tcl tcl/utils/font.tcl tcl/utils/graph.tcl tcl/utils/history.tcl \
171
 
    tcl/utils/pane.tcl tcl/utils/sound.tcl tcl/utils/string.tcl tcl/utils/tooltip.tcl \
172
 
    tcl/utils/validate.tcl tcl/utils/win.tcl \
173
 
  tcl/misc/misc.tcl tcl/htext.tcl \
174
 
  tcl/file.tcl \
175
 
    tcl/file/finder.tcl tcl/file/bookmark.tcl tcl/file/recent.tcl tcl/file/epd.tcl \
176
 
    tcl/file/spellchk.tcl tcl/file/maint.tcl \
177
 
  tcl/edit.tcl \
178
 
  tcl/game.tcl \
179
 
    tcl/game/browser.tcl \
180
 
  tcl/windows.tcl \
181
 
    tcl/windows/gamelist.tcl tcl/windows/pgn.tcl tcl/windows/book.tcl \
182
 
    tcl/windows/comment.tcl tcl/windows/eco.tcl \
183
 
    tcl/windows/stats.tcl tcl/windows/tree.tcl tcl/windows/crosstab.tcl \
184
 
    tcl/windows/pfinder.tcl tcl/windows/tourney.tcl tcl/windows/switcher.tcl \
185
 
  tcl/search/search.tcl \
186
 
    tcl/search/board.tcl tcl/search/header.tcl tcl/search/material.tcl \
187
 
  tcl/contrib/ezsmtp/ezsmtp.tcl \
188
 
    tcl/tools/email.tcl \
189
 
    tcl/tools/import.tcl \
190
 
    tcl/tools/optable.tcl tcl/tools/preport.tcl tcl/tools/pinfo.tcl \
191
 
    tcl/tools/analysis.tcl tcl/tools/wbdetect.tcl \
192
 
    tcl/tools/reper.tcl tcl/tools/graphs.tcl tcl/tools/tablebase.tcl tcl/tools/ptracker.tcl \
193
 
  tcl/help/help.tcl tcl/help/tips.tcl \
194
 
  tcl/menus.tcl tcl/board.tcl tcl/move.tcl tcl/main.tcl tcl/tools/correspondence.tcl \
195
 
    tcl/lang/english.tcl $(LANGUAGES) \
196
 
  tcl/tools/uci.tcl tcl/end.tcl tcl/tools/tacgame.tcl tcl/tools/sergame.tcl tcl/tools/calvar.tcl tcl/tools/fics.tcl tcl/tools/opening.tcl tcl/tools/tactics.tcl tcl/tools/reviewgame.tcl tcl/utils/metadata.tcl  tcl/tools/inputengine.tcl tcl/tools/novag.tcl tcl/utils/bibliography.tcl 
197
 
 
198
 
 
199
 
 
200
 
### SCRIPTS:
201
 
# Small extra programs. Most are written in Tcl using tcscid, but
202
 
# a few contributed ones may be in Python or other languages.
203
 
#
204
 
SCRIPTS= sc_addmove sc_epgn sc_spell sc_eco sc_import sc_remote sc_tree scidpgn pgnfix spliteco spf2spi eco2pgn
205
 
 
206
 
####################
207
 
 
208
 
### Type "make" or "make all" to make all programs:
209
 
#
210
 
all: all_scid all_engines
211
 
 
212
 
all_scid: scid $(SCRIPTS) $(EXECS)
213
 
 
214
 
all_engines: phalanx-scid toga
215
 
 
216
 
phalanx-scid:
217
 
        cd engines/phalanx-scid/ && $(MAKE) && cd ../../
218
 
 
219
 
toga:
220
 
        cd engines/togaII1.2.1a/src/ && $(MAKE) && cd ../../
221
 
 
222
 
### To copy all executables to $BINDIR, with read and execute permission 
223
 
#   for all users, and put extra files in $SHAREDIR, type "make install".
224
 
#
225
 
 
226
 
install: install_scid install_engines
227
 
 
228
 
install_scid: all_scid
229
 
        install -m 755 -d $(DESTDIR)$(SHAREDIR)
230
 
        install -m 755 -d $(DESTDIR)$(BINDIR)
231
 
        install -m 755 -d $(DESTDIR)$(SHAREDIR)/data/
232
 
        install -m 755 scid $(SCRIPTS) $(EXECS) $(DESTDIR)$(BINDIR)
233
 
        install -m 644 -p scid.eco scid_fr.eco scid_es.eco $(DESTDIR)$(SHAREDIR)/data/
234
 
        install -m 755 -d $(DESTDIR)$(SHAREDIR)/books
235
 
#       install -m 666 ./books/*.* $(DESTDIR)$(SHAREDIR)/books/
236
 
        install -m 755 -d $(DESTDIR)$(SHAREDIR)/bases
237
 
#       if test -d ./bases; then install -m 666 ./bases/*.* $(DESTDIR)$(SHAREDIR)/bases/ ; fi
238
 
        install -m 755 -d $(DESTDIR)$(SHAREDIR)/html
239
 
        cp -r ./html/* $(DESTDIR)$(SHAREDIR)/html/
240
 
 
241
 
install_engines: all_engines
242
 
        install -m 755 -d $(SHAREDIR)/engines
243
 
        install -m 755 -d $(SHAREDIR)/engines/phalanx-scid
244
 
        install ./engines/phalanx-scid/phalanx-scid $(SHAREDIR)/engines/phalanx-scid
245
 
        install -m 755 -d $(SHAREDIR)/engines/togaII1.2.1a
246
 
        install ./engines/togaII1.2.1a/src/togaII $(SHAREDIR)/engines/togaII1.2.1a/
247
 
 
248
 
uninstall:
249
 
        rm -rf $(SHAREDIR)/engines
250
 
        rm -rf $(SHAREDIR)/books
251
 
        rm -rf $(SHAREDIR)/bases
252
 
        rm -rf $(SHAREDIR)/data/
253
 
        rm -f $(SHAREDIR)/data/scid.eco $(SHAREDIR)/data/scid_fr.eco $(SHAREDIR)/data/scid_es.eco
254
 
        rm -f $(BINDIR)/scid $(BINDIR)/sc_addmove $(BINDIR)/sc_epgn
255
 
        rm -f $(BINDIR)/sc_spell $(BINDIR)/sc_eco $(BINDIR)/sc_import
256
 
        rm -f $(BINDIR)/sc_remote $(BINDIR)/sc_tree $(BINDIR)/scidpgn
257
 
        rm -f $(BINDIR)/pgnfix $(BINDIR)/spliteco
258
 
        rm -f $(BINDIR)/pgnscid $(BINDIR)/tkscid $(BINDIR)/tcscid
259
 
        rm -f $(BINDIR)/scmerge $(BINDIR)/scidlet
260
 
        rm -rf $(SHAREDIR)/html
261
 
        
262
 
### To remove Scid files placed in the BINDIR and SHAREDIR directories,
263
 
#   type "make distclean".
264
 
#
265
 
distclean:
266
 
        cd $(BINDIR) && rm -f $(EXECS) $(SCRIPTS)
267
 
        -rm -f $(SHAREDIR)/scid.eco
268
 
 
269
 
### To remove object and executable files: type "make clean".
270
 
#
271
 
clean:
272
 
        rm -f game.* learn* tkscid.so tkscid.dll position.* src/*.o src/zlib/*.o src/zlib/*.a src/polyglot/*.o $(EXECS) scid $(SCRIPTS)
273
 
#       cd engines/phalanx-scid/ && make clean && cd ../../
274
 
#       cd engines/togaII1.2.1a/src/ && make clean && cd ../../../
275
 
#       cd pocket/toga/src/ && make clean && cd ../../../
276
 
#       cd pocket/toga134/src/ && make clean && cd ../../../
277
 
#       cd pocket/toga141SE/src/ && make clean && cd ../../../
278
 
#       cd pocket/fruit_21/src/ && make clean && cd ../../../
279
 
#       cd pocket/gambitfruit/src/ && make clean && cd ../../../
280
 
#       cd pocket/glaurung/src/ && make clean && cd ../../../
281
 
#       cd pocket/phalanx/src/ && make clean && cd ../../../
282
 
#       cd pocket/scorpio/src/ && make clean && cd ../../../
283
 
#       cd pocket/viper01/src/ && make clean && cd ../../../
284
 
#       cd pocket/greko/src/ && make clean && cd ../../../
285
 
#       cd pocket/scidlet/src/ && make clean && cd ../../../
286
 
#       cd pocket/robbolito/src/ && make clean && cd ../../../
287
 
#       cd pocket/stockfish/src/ && make clean && cd ../../../
288
 
#       rm -f pocket/toga.exe pocket/glaurung.exe
289
 
#       rm -rf pocket/scid_pocket
290
 
 
291
 
### To make the executable files smaller: type "make strip".
292
 
#
293
 
strip:
294
 
        strip $(EXECS)
295
 
 
296
 
### To compress scid and executables with gzexe: type "make gzexe".
297
 
#
298
 
gzexe:
299
 
        gzexe $(EXECS) scid
300
 
 
301
 
 
302
 
scid: $(TCLS)
303
 
        rm -f ./scid
304
 
        cat $(TCLS) > ./scid
305
 
        chmod +x scid
306
 
 
307
 
sc_addmove: scripts/sc_addmove.tcl
308
 
        cp scripts/sc_addmove.tcl ./sc_addmove
309
 
        chmod +x sc_addmove
310
 
 
311
 
sc_epgn: scripts/sc_epgn.tcl
312
 
        cp scripts/sc_epgn.tcl ./sc_epgn
313
 
        chmod +x sc_epgn
314
 
 
315
 
sc_spell: scripts/sc_spell.tcl
316
 
        cp scripts/sc_spell.tcl ./sc_spell
317
 
        chmod +x sc_spell
318
 
 
319
 
sc_eco: scripts/sc_eco.tcl
320
 
        cp scripts/sc_eco.tcl ./sc_eco
321
 
        chmod +x sc_eco
322
 
 
323
 
sc_import: scripts/sc_import.tcl
324
 
        cp scripts/sc_import.tcl ./sc_import
325
 
        chmod +x sc_import
326
 
 
327
 
sc_remote: scripts/sc_remote.tk
328
 
        cp scripts/sc_remote.tk ./sc_remote
329
 
        chmod +x sc_remote
330
 
 
331
 
sc_tree: scripts/sc_tree.tcl
332
 
        cp scripts/sc_tree.tcl ./sc_tree
333
 
        chmod +x sc_tree
334
 
 
335
 
sc_maketree: scripts/sc_maketree.tcl
336
 
        cp scripts/sc_maketree.tcl ./sc_maketree
337
 
        chmod +x sc_maketree
338
 
 
339
 
scidpgn: scripts/scidpgn.tcl
340
 
        cp scripts/scidpgn.tcl ./scidpgn
341
 
        chmod +x scidpgn
342
 
 
343
 
spliteco: scripts/spliteco.tcl
344
 
        cp scripts/spliteco.tcl ./spliteco
345
 
        chmod +x spliteco
346
 
 
347
 
tbstats: scripts/tbstats.tcl
348
 
        cp scripts/tbstats.tcl ./tbstats
349
 
        chmod +x tbstats
350
 
 
351
 
wmtest: scripts/wmtest.tk
352
 
        cp scripts/wmtest.tk ./wmtest
353
 
        chmod +x wmtest
354
 
 
355
 
pgnfix: scripts/pgnfix.py
356
 
        cp scripts/pgnfix.py ./pgnfix
357
 
        chmod +x pgnfix
358
 
 
359
 
eco2pgn: scripts/eco2pgn.py
360
 
        cp scripts/eco2pgn.py ./eco2pgn
361
 
        chmod +x eco2pgn
362
 
 
363
 
twic2pgn: scripts/twic2pgn.py
364
 
        cp scripts/twic2pgn.py ./twic2pgn
365
 
        chmod +x twic2pgn
366
 
 
367
 
spf2spi: scripts/spf2spi.tcl
368
 
        cp scripts/spf2spi.tcl ./spf2spi
369
 
        chmod +x spf2spi
370
 
 
371
 
scmerge: src/scmerge.o src/misc.o src/index.o src/date.o src/namebase.o \
372
 
          src/gfile.o src/bytebuf.o src/textbuf.o src/myassert.o \
373
 
          src/stralloc.o src/position.o
374
 
        $(LINK) -o scmerge src/scmerge.o $(OBJS) $(ZLIB) $(TCL_LIBRARY)
375
 
 
376
 
pgnscid: src/pgnscid.o $(OBJS)
377
 
        $(LINK) $(PROFILE) -o pgnscid src/pgnscid.o $(OBJS) $(ZLIB) $(TCL_LIBRARY)
378
 
 
379
 
scidlet: src/scidlet.o src/engine.o src/recog.o src/misc.o src/position.o \
380
 
          src/dstring.o src/movelist.o
381
 
        $(LINK) -o scidlet src/scidlet.o src/engine.o src/recog.o src/misc.o src/position.o src/movelist.o src/dstring.o $(TCL_LIBRARY)
382
 
 
383
 
scidt: src/scidt.o $(OBJS)
384
 
        $(LINK) -o scidt src/scidt.o $(OBJS) $(ZLIB) $(TCL_LIBRARY)
385
 
 
386
 
tkscid: src/tkscid.o $(OBJS) src/tree.o src/filter.o src/pbook.o src/crosstab.o \
387
 
          src/spellchk.o src/probe.o src/optable.o src/engine.o src/recog.o
388
 
        $(LINK) $(PROFILE) -o tkscid src/tkscid.o $(OBJS) src/tree.o src/filter.o src/pbook.o src/crosstab.o src/spellchk.o src/probe.o src/optable.o src/engine.o src/recog.o $(ZLIB) $(TK_LIBRARY)
389
 
 
390
 
tcscid: src/tcscid.o $(OBJS) src/tree.o src/filter.o src/pbook.o src/crosstab.o \
391
 
          src/spellchk.o src/probe.o src/optable.o src/engine.o src/recog.o
392
 
        $(LINK) -o tcscid src/tcscid.o $(OBJS) src/tree.o src/filter.o src/pbook.o src/crosstab.o src/spellchk.o src/probe.o src/optable.o src/engine.o src/recog.o $(ZLIB) $(TCL_LIBRARY)
393
 
 
394
 
# eco2epd is now optional extra program NOT compiled by default, since
395
 
# scid now reads the .eco file format directly.
396
 
eco2epd: src/eco2epd.o $(OBJS) src/pbook.o
397
 
        $(LINK) -o eco2epd src/eco2epd.o $(OBJS) src/pbook.o $(ZLIB)
398
 
 
399
 
### Rules to create .o files from .cpp files:
400
 
#
401
 
src/tcscid.o: src/tkscid.cpp
402
 
        $(COMPILE) $(CPP_FLAGS) $(TCL_INCLUDE) -DTCL_ONLY -o src/tcscid.o -c src/tkscid.cpp
403
 
 
404
 
src/tkscid.o: src/tkscid.cpp
405
 
        $(COMPILE) $(CPP_FLAGS) $(TCL_INCLUDE) -o src/tkscid.o -c src/tkscid.cpp
406
 
 
407
 
### The endgame tablebase code in the egtb/ subdirectory (not written by me)
408
 
#   gives many warnings, so compile probe.cpp with warnings turned off:
409
 
#
410
 
src/probe.o: src/probe.cpp src/egtb/tbindex.cpp src/egtb/tbdecode.c
411
 
        $(COMPILE) $(PROFILE) $(OPTIMIZE) $(TCL_INCLUDE) $(DEBUG) $(SCIDFLAGS) $(TB) -o src/probe.o -c src/probe.cpp
412
 
 
413
 
### Generic rule for all other .cpp files:
414
 
#
415
 
%.o: %.cpp
416
 
        $(COMPILE) $(CPP_FLAGS) $(TCL_INCLUDE) -o $@ -c $<
417
 
 
418
 
### Rule for compiling zlib source files:
419
 
#
420
 
src/zlib/%.o: src/zlib/%.c
421
 
        $(CC) $(CFLAGS) -o $@ -c $<
422
 
 
423
 
#####
424
 
# Main Dependencies
425
 
# src/.depend:
426
 
#       $(COMPILE) $(CPP_FLAGS) $(TCL_INCLUDE) -MM $(SCIDOBJS:.o=.cpp) > $@
427
 
#####
428
 
src/misc.o: src/misc.cpp src/common.h src/tclmy.h src/myassert.h src/error.h \
429
 
  src/sqmove.h src/misc.h
430
 
src/index.o: src/index.cpp src/common.h src/tclmy.h src/myassert.h \
431
 
  src/error.h src/sqmove.h src/index.h src/matsig.h src/namebase.h \
432
 
  src/date.h src/misc.h src/stralloc.h src/strtree.h src/mfile.h \
433
 
  src/dstring.h src/game.h src/position.h src/movelist.h src/sqlist.h \
434
 
  src/sqset.h src/tokens.h src/textbuf.h src/bytebuf.h src/stored.h
435
 
src/date.o: src/date.cpp src/common.h src/tclmy.h src/myassert.h src/error.h \
436
 
  src/sqmove.h src/date.h src/misc.h
437
 
src/namebase.o: src/namebase.cpp src/common.h src/tclmy.h src/myassert.h \
438
 
  src/error.h src/sqmove.h src/namebase.h src/date.h src/misc.h \
439
 
  src/stralloc.h src/strtree.h
440
 
src/position.o: src/position.cpp src/common.h src/tclmy.h src/myassert.h \
441
 
  src/error.h src/sqmove.h src/position.h src/dstring.h src/misc.h \
442
 
  src/movelist.h src/sqlist.h src/sqset.h src/tokens.h src/attacks.h \
443
 
  src/hash.h
444
 
src/game.o: src/game.cpp src/common.h src/tclmy.h src/myassert.h src/error.h \
445
 
  src/sqmove.h src/game.h src/date.h src/index.h src/matsig.h \
446
 
  src/namebase.h src/misc.h src/stralloc.h src/strtree.h src/mfile.h \
447
 
  src/dstring.h src/position.h src/movelist.h src/sqlist.h src/sqset.h \
448
 
  src/tokens.h src/textbuf.h src/bytebuf.h src/gfile.h src/pgnparse.h \
449
 
  src/naglatex.h src/nagtext.h src/stored.h
450
 
src/gfile.o: src/gfile.cpp src/common.h src/tclmy.h src/myassert.h \
451
 
  src/error.h src/sqmove.h src/gfile.h src/bytebuf.h src/mfile.h \
452
 
  src/dstring.h src/misc.h
453
 
src/matsig.o: src/matsig.cpp src/matsig.h src/common.h src/tclmy.h \
454
 
  src/myassert.h src/error.h src/sqmove.h
455
 
src/bytebuf.o: src/bytebuf.cpp src/error.h src/bytebuf.h src/common.h \
456
 
  src/tclmy.h src/myassert.h src/sqmove.h
457
 
src/textbuf.o: src/textbuf.cpp src/error.h src/textbuf.h src/common.h \
458
 
  src/tclmy.h src/myassert.h src/sqmove.h src/misc.h
459
 
src/myassert.o: src/myassert.cpp src/myassert.h
460
 
src/stralloc.o: src/stralloc.cpp src/stralloc.h src/common.h src/tclmy.h \
461
 
  src/myassert.h src/error.h src/sqmove.h src/misc.h
462
 
src/mfile.o: src/mfile.cpp src/common.h src/tclmy.h src/myassert.h \
463
 
  src/error.h src/sqmove.h src/mfile.h src/dstring.h src/misc.h
464
 
src/dstring.o: src/dstring.cpp src/dstring.h src/common.h src/tclmy.h \
465
 
  src/myassert.h src/error.h src/sqmove.h src/misc.h src/mfile.h
466
 
src/pgnparse.o: src/pgnparse.cpp src/pgnparse.h src/common.h src/tclmy.h \
467
 
  src/myassert.h src/error.h src/sqmove.h src/tokens.h src/game.h \
468
 
  src/date.h src/index.h src/matsig.h src/namebase.h src/misc.h \
469
 
  src/stralloc.h src/strtree.h src/mfile.h src/dstring.h src/position.h \
470
 
  src/movelist.h src/sqlist.h src/sqset.h src/textbuf.h src/bytebuf.h
471
 
src/stored.o: src/stored.cpp src/stored.h src/game.h src/common.h src/tclmy.h \
472
 
  src/myassert.h src/error.h src/sqmove.h src/date.h src/index.h \
473
 
  src/matsig.h src/namebase.h src/misc.h src/stralloc.h src/strtree.h \
474
 
  src/mfile.h src/dstring.h src/position.h src/movelist.h src/sqlist.h \
475
 
  src/sqset.h src/tokens.h src/textbuf.h src/bytebuf.h src/pgnparse.h \
476
 
  src/timer.h src/tkscid.h src/engine.h src/gfile.h src/tree.h \
477
 
  src/filter.h src/pbook.h src/crosstab.h src/spellchk.h src/probe.h \
478
 
  src/optable.h src/polyglot.h
479
 
src/movelist.o: src/movelist.cpp src/movelist.h src/common.h src/tclmy.h \
480
 
  src/myassert.h src/error.h src/sqmove.h src/misc.h
481
 
src/sortcache.o: src/sortcache.cpp src/sortcache.h src/index.cpp src/index.h src/filter.cpp src/filter.h
482
 
 
483
 
### End of Makefile