1 BUILT_SOURCES = chess-auto.el
2 CLEANFILES = TAGS chess-auto.el auto-autoloads.el
3 EXTRA_DIST = autogen.sh chess-auto.el.in chess-eco.pos doc/chess.pdf
4 DISTCLEANFILES = chess-eco.fen doc/chess.info doc/chess.pdf $(TESTS)
5 info_TEXINFOS = doc/chess.texi
6 dist_lisp_DATA = _pkg.el chess-eco.fen
57 chess-auto.el: $(ELFILES)
58 echo ";;; DO NOT MODIFY THIS FILE" > $(top_builddir)/chess-auto.el
59 echo "(if (featurep 'chess-auto) (error \"Already loaded\"))" \
60 >> $(top_builddir)/chess-auto.el
61 $(EMACS) -batch -L $(srcdir) -l chess-maint.el \
62 -f chess-generate-autoloads \
63 $(top_builddir)/chess-auto.el $(srcdir)
64 echo "(provide 'chess-auto)" >> $(top_builddir)/chess-auto.el
65 ln -f $(top_builddir)/chess-auto.el $(top_builddir)/auto-autoloads.el
67 chess-eco.fen: chess-eco.pos chess-eco.el
68 $(EMACS) --no-init-file --no-site-file -batch \
69 -L $(srcdir) -l chess-eco -f chess-generate-fen-table \
70 chess-eco.pos chess-eco.fen
73 DATABASE = $(shell test -r test/largedb.sg3 && echo test/largedb || echo test/historic.pgn)
74 START = $(shell test -r test/largedb.sg3 && perl -e 'print int(rand(4000000)), "\n";' || echo 0)
77 # Note: There are 4,209,433 games in test/largedb, if you download the files
80 # ftp://ftp.newartisans.com/pub/chess/largedb.7z
82 # If you have a dual-core CPU (or more), you'll get the best performance by
83 # running a separate Emacs for each core. Here's how I run all the tests on
84 # my dual-core MacBook Pro: (Note, removing chess-test is just a precaution,
85 # since the Makefile will not regenerate it if you aborted a previous test
88 # chess1 $ rm -f chess-test; nice -n 20 make START=0 COUNT=2104715 check
89 # chess2 $ rm -f chess-test; nice -n 20 make START=2104715 COUNT=0 check
91 # I run both of these using `screen', with a vertical split so I can watch
92 # them both running. I type C-a H in each screen window before starting, so
93 # that all the output is logged to a file I can examine afterward.
95 # Note that these tests can take days to run. My MacBook Pro gets around
96 # 2,000 plies per second. If you're a Lisp hacker and want to improve the
97 # speed of that, the slowness is pretty much all in `chess-search-position',
98 # in the file chess-pos.el.
101 echo "$(EMACS) -batch -L $(srcdir) -l chess-test.el -f chess-test '$(DATABASE)' $(START) $(COUNT); rm -f $(top_builddir)/chess-test" > $@
104 TAGS: $(dist_lisp_LISP)
105 @etags $(dist_lisp_LISP)
108 # Makefile.am ends here