]> git.sesse.net Git - stockfish/blobdiff - src/Makefile
Add signature-profile-build make target
[stockfish] / src / Makefile
index 7ddb643c11710713b2b782d4a4dfc8203577c928..397c55b98fc01558b9517bf0b9ca8f4cf375393f 100644 (file)
@@ -34,8 +34,9 @@ ifeq ($(UNAME),Haiku)
 endif
 BINDIR = $(PREFIX)/bin
 
-### Built-in benchmark for pgo-builds
+### Built-in benchmark for pgo-builds and signature
 PGOBENCH = ./$(EXE) bench 32 1 10 default depth
+SIGNBENCH = ./$(EXE) bench
 
 ### Object files
 OBJS = benchmark.o bitbase.o bitboard.o book.o endgame.o evaluate.o main.o \
@@ -417,6 +418,7 @@ help:
        @echo "make profile-build ARCH=x86-32    (This is for 32-bit systems)"
        @echo ""
 
+.PHONY: build profile-build embed-signature
 build:
        $(MAKE) ARCH=$(ARCH) COMP=$(COMP) config-sanity
        $(MAKE) ARCH=$(ARCH) COMP=$(COMP) all
@@ -441,6 +443,18 @@ profile-build:
        @echo "Step 4/4. Deleting profile data ..."
        $(MAKE) ARCH=$(ARCH) COMP=$(COMP) $(profile_clean)
 
+embed-signature:
+       @echo "Running benchmark for getting the signature ..."
+       @$(SIGNBENCH) 2>&1 | grep 'Nodes searched' | grep -o ": .*" | tr -d ': ' > sign.txt
+       @sed -i -e 's,^,/static const string Version/s/"\\(.*\\)"/"sig-,1' -e 's,$$,"/1,1' sign.txt
+       @sed -i -f sign.txt misc.cpp
+       @rm sign.txt
+
+signature-build: build embed-signature       
+       $(MAKE) ARCH=$(ARCH) COMP=$(COMP) all
+
+signature-profile-build: build embed-signature profile-build
+
 strip:
        strip $(EXE)