### Installation dir definitions
PREFIX = /usr/local
-# Haiku has a non-standard filesystem layout
-ifeq ($(UNAME),Haiku)
- PREFIX=/boot/common
-endif
BINDIR = $(PREFIX)/bin
### Built-in benchmark for pgo-builds
-PGOBENCH = ./$(EXE) bench 32 1 1 default time
+PGOBENCH = ./$(EXE) bench 16 1 1 default time
### Object files
OBJS = benchmark.o bitbase.o bitboard.o endgame.o evaluate.o main.o \
- material.o misc.o movegen.o movepick.o notation.o pawns.o \
- position.o search.o thread.o timeman.o tt.o uci.o ucioption.o
+ material.o misc.o movegen.o movepick.o pawns.o position.o \
+ search.o thread.o timeman.o tt.o uci.o ucioption.o syzygy/tbprobe.o
### ==========================================================================
### Section 2. High-level Configuration
### 3.9 popcnt
ifeq ($(popcnt),yes)
- CXXFLAGS += -msse3 -DUSE_POPCNT
+ ifeq ($(comp),icc)
+ CXXFLAGS += -msse3 -DUSE_POPCNT
+ else
+ CXXFLAGS += -msse3 -mpopcnt -DUSE_POPCNT
+ endif
endif
### 3.10 pext
@echo "clang > LLVM Clang compiler"
@echo "icc > Intel compiler"
@echo ""
- @echo "Non-standard targets:"
- @echo ""
- @echo "make hpux > Compile for HP-UX. Compiler = aCC"
- @echo ""
@echo "Examples. If you don't know what to do, you likely want to run: "
@echo ""
@echo "make build ARCH=x86-64 (This is for 64-bit systems)"
-strip $(BINDIR)/$(EXE)
clean:
- $(RM) $(EXE) $(EXE).exe *.o .depend *~ core bench.txt *.gcda
+ $(RM) $(EXE) $(EXE).exe *.o .depend *~ core bench.txt *.gcda ./syzygy/*.o ./syzygy/*.gcda
default:
help
all
gcc-profile-clean:
- @rm -rf *.gcda *.gcno bench.txt
+ @rm -rf *.gcda *.gcno syzygy/*.gcda syzygy/*.gcno bench.txt
icc-profile-prepare:
$(MAKE) ARCH=$(ARCH) COMP=$(COMP) icc-profile-clean
-include .depend
-
-### ==========================================================================
-### Section 6. Non-standard targets
-### ==========================================================================
-
-hpux:
- $(MAKE) \
- CXX='/opt/aCC/bin/aCC -AA +hpxstd98 -mt +O3 -DNDEBUG -DNO_PREFETCH' \
- CXXFLAGS="" \
- LDFLAGS="" \
- all
-