Makefile 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. # This file contains the Makefile for CHESS.
  2. # Copyright (C) 1986 Free Software Foundation, Inc.
  3. #
  4. # This file is part of CHESS.
  5. #
  6. # CHESS is distributed in the hope that it will be useful,
  7. # but WITHOUT ANY WARRANTY. No author or distributor
  8. # accepts responsibility to anyone for the consequences of using it
  9. # or for whether it serves any particular purpose or works at all,
  10. # unless he says so in writing. Refer to the CHESS General Public
  11. # License for full details.
  12. #
  13. # Everyone is granted permission to copy, modify and redistribute
  14. # CHESS, but only under the conditions described in the
  15. # CHESS General Public License. A copy of this license is
  16. # supposed to have been given to you along with CHESS so you
  17. # can know your rights and responsibilities. It should be in a
  18. # file named COPYING. Among other things, the copyright notice
  19. # and this notice must be preserved on all copies.
  20. #
  21. #
  22. # Flags for compiling GNU Chess
  23. # QUIES - use quiescence search (MAXQUIES must be set)
  24. # MAXQUIES - maximum depth to which quiescence-search reaches
  25. # DEPTH - depth to which full-width search reaches
  26. # HASH - include code to do hashing in tree (currently disabled)
  27. # PARALLEL - include code for parallelism
  28. # RANDOM - randomize opening moves, otherwise first move in book
  29. # XWINDOW - allow use of X-window front-end
  30. # SUNWINDOW - allow use of SUN-window front-end
  31. # Default setting is full-width search to 3 ply, quiescence to
  32. # 6 ply. This setting works well on low-end VAX's, SUN's, etc.
  33. # For faster machines or if parallelism is being used, DEPTH and
  34. # MAXQUIES can be incremented slightly. (Although the parallelism
  35. # isn't thoroughly debugged and long move times may result
  36. # due to waiting for the last processor to finish. This will shortly be
  37. # fixed.) In general, for every 500% increase in processor power,
  38. # you can increase these values by 1. For example, when we
  39. # go from a one-SUN configuration to 7 SUN's, we increase DEPTH
  40. # to 4 and MAXQUIES to 7.
  41. CFLAGS = -DRANDOM -DQUIES -DMAXQUIES=6 -DDEPTH=3 -O
  42. # Source and object files in the distribution
  43. SRCS = alphabeta.c book.c gen.c hash.c main.c moves.c parallel.c pps.c util.c
  44. OBJS = alphabeta.o book.o gen.o hash.o main.o moves.o parallel.o pps.o util.o
  45. # General non-source files, including header files
  46. NSRCS = CHANGES COPYING MAN-PAGE README SAMPLE-GAME TODO Makefile gnuchess.h\
  47. Bitmapper/Makefile bookin bookin.bdg bookin.tal convert.el
  48. # Source but not part of the standard compilation, usually being
  49. # experimental additions that are either verified to be less than
  50. # optimal or have some theoretical interest.
  51. SRCS2 = tbl_gen.c tbl_genpc.c tbl_genpwn.c Bitmapper/*.c Bitmapper/*.h Xchess/*
  52. # The following files are what make up the general distribution
  53. DIST = $(NSRCS) $(SRCS) $(SRCS2)
  54. gnuchess: $(OBJS)
  55. $(CC) -o gnuchess $(CFLAGS) $(OBJS) -ldbm
  56. alphabeta.o: alphabeta.c gnuchess.h
  57. cc -c $(CFLAGS) alphabeta.c
  58. book.o: book.c gnuchess.h
  59. cc -c $(CFLAGS) book.c
  60. gen.o: gen.c gnuchess.h
  61. cc -c $(CFLAGS) gen.c
  62. hash.o: hash.c gnuchess.h
  63. cc -c $(CFLAGS) hash.c
  64. main.o: main.c gnuchess.h
  65. cc -c $(CFLAGS) main.c
  66. moves.o:moves.c gnuchess.h
  67. cc -c $(CFLAGS) moves.c
  68. parallel.o: parallel.c gnuchess.h
  69. cc -c $(CFLAGS) parallel.c
  70. pps.o: pps.c gnuchess.h
  71. cc -c $(CFLAGS) pps.c
  72. util.o: util.c gnuchess.h
  73. cc -c $(CFLAGS) util.c
  74. dist:
  75. tar cvf - $(DIST) > /tmp/gnuchess.tar
  76. tape:
  77. tar cv $(DIST)
  78. backup:
  79. rm -fr Backup
  80. mkdir Backup
  81. cp $(SRCS) Backup