]> git.sesse.net Git - stockfish/blobdiff - src/Makefile
Set LMRPVMoves to 10 instead of 14
[stockfish] / src / Makefile
index d7de76c391d9b875cb33a46281266cb230136f0f..28fbb0d67187e855a1914dc2008598cfd7a3c02d 100644 (file)
@@ -26,8 +26,17 @@ EXE = stockfish
 ### Compiler speed switches for both GCC and ICC. These settings are generally
 ### fast on a broad range of systems, but may be changed experimentally
 ### ==========================================================================
-GCCFLAGS = -O3
-ICCFLAGS = -fast
+GCCFLAGS = -O3 -msse
+ICCFLAGS = -fast -msse
+ICCFLAGS-OSX = -fast -mdynamic-no-pic
+
+
+### ==========================================================================
+### Enable/disable debugging, disabled by default
+### ==========================================================================
+GCCFLAGS += -DNDEBUG
+ICCFLAGS += -DNDEBUG
+ICCFLAGS-OSX += -DNDEBUG
 
 
 ### ==========================================================================
@@ -38,8 +47,9 @@ PGOBENCH = ./$(EXE) bench 32 1 10 default depth
 
 
 ### General compiler settings. Do not change
-GCCFLAGS += -s -Wall -fno-exceptions -fno-rtti -fno-strict-aliasing
-ICCFLAGS += -s -Wall -fno-exceptions -fno-rtti -fno-strict-aliasing -wd383,869,981,10187,10188,11505,11503
+GCCFLAGS += -g -Wall -fno-exceptions -fno-rtti -fno-strict-aliasing
+ICCFLAGS += -g -Wall -fno-exceptions -fno-rtti -fno-strict-aliasing -wd383,869,981,10187,10188,11505,11503
+ICCFLAGS-OSX += -g -Wall -fno-exceptions -fno-rtti -fno-strict-aliasing -wd383,869,981,10187,10188,11505,11503
 
 
 ### General linker settings. Do not change
@@ -68,6 +78,11 @@ help:
        @echo "make osx-ppc64      >  PPC-Mac OS X 64 bit. Compiler = g++"
        @echo "make osx-x86        >  x86-Mac OS X 32 bit. Compiler = g++"
        @echo "make osx-x86_64     >  x86-Mac OS X 64 bit. Compiler = g++"
+       @echo "make osx-icc32      >  x86-Mac OS X 32 bit. Compiler = icpc"
+       @echo "make osx-icc64      >  x86-Mac OS X 64 bit. Compiler = icpc"
+       @echo "make osx-icc32-profile > OSX 32 bit. Compiler = icpc + automatic pgo-build"
+       @echo "make osx-icc64-profile > OSX 64 bit. Compiler = icpc + automatic pgo-build"
+       @echo "make strip          >  Strip executable"
        @echo "make clean          >  Clean up"
        @echo ""
 
@@ -149,6 +164,91 @@ osx-x86_64:
        CXXFLAGS+='-arch x86_64' \
        LDFLAGS+='-arch x86_64' \
        all
+       
+osx-icc32:
+       $(MAKE) \
+       CXX='icpc' \
+       CXXFLAGS="$(ICCFLAGS-OSX)" \
+       CXXFLAGS+='-arch i386' \
+       LDFLAGS+='-arch i386' \
+       all
+
+osx-icc64:
+       $(MAKE) \
+       CXX='icpc' \
+       CXXFLAGS="$(ICCFLAGS-OSX)" \
+       CXXFLAGS+='-arch x86_64' \
+       LDFLAGS+='-arch x86_64' \
+       all
+
+osx-icc32-profile-make:
+       $(MAKE) \
+       CXX='icpc' \
+       CXXFLAGS="$(ICCFLAGS-OSX)" \
+       CXXFLAGS+='-arch i386' \
+       CXXFLAGS+='-prof_gen -prof_dir ./profdir' \
+       LDFLAGS+='-arch i386' \
+       all
+
+osx-icc32-profile-use:
+       $(MAKE) \
+       CXX='icpc' \
+       CXXFLAGS="$(ICCFLAGS-OSX)" \
+       CXXFLAGS+='-arch i386' \
+       CXXFLAGS+='-prof_use -prof_dir ./profdir' \
+       LDFLAGS+='-arch i386' \
+       all
+
+osx-icc32-profile:
+       @rm -rf profdir
+       @mkdir profdir
+       @touch *.cpp *.h
+       $(MAKE) osx-icc32-profile-make
+       @echo ""
+       @echo "Running benchmark for pgo-build ..."
+       @$(PGOBENCH) > /dev/null
+       @echo "Benchmark finished. Build final executable now ..."
+       @echo ""
+       @touch *.cpp *.h
+       $(MAKE) osx-icc32-profile-use
+       @rm -rf profdir bench.txt
+
+osx-icc64-profile-make:
+       $(MAKE) \
+       CXX='icpc' \
+       CXXFLAGS="$(ICCFLAGS-OSX)" \
+       CXXFLAGS+='-arch x86_64' \
+       CXXFLAGS+='-prof_gen -prof_dir ./profdir' \
+       LDFLAGS+='-arch x86_64' \
+       all
+
+osx-icc64-profile-use:
+       $(MAKE) \
+       CXX='icpc' \
+       CXXFLAGS="$(ICCFLAGS-OSX)" \
+       CXXFLAGS+='-arch x86_64' \
+       CXXFLAGS+='-prof_use -prof_dir ./profdir' \
+       LDFLAGS+='-arch x86_64' \
+       all
+
+osx-icc64-profile:
+       @rm -rf profdir
+       @mkdir profdir
+       @touch *.cpp *.h
+       $(MAKE) osx-icc64-profile-make
+       @echo ""
+       @echo "Running benchmark for pgo-build ..."
+       @$(PGOBENCH) > /dev/null
+       @echo "Benchmark finished. Build final executable now ..."
+       @echo ""
+       @touch *.cpp *.h
+       $(MAKE) osx-icc64-profile-use
+       @rm -rf profdir bench.txt
+
+
+
+strip:
+       strip $(EXE)
 
 
 ### Compilation. Do not change
@@ -158,6 +258,6 @@ $(EXE): $(OBJS)
 
 ### Dependencies. Do not change
 .depend:
-       $(CXX) -MM $(OBJS:.o=.cpp) > $@
+       $(CXX) -msse -MM $(OBJS:.o=.cpp) > $@
 
 include .depend