X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2FMakefile;h=56d058f92bd6d252a68522b6f5828588dbd5c010;hp=9650c7f615d39fbca602894ba32075306650f93a;hb=f4dadee5e2fd27a32e64179f737c1c3825098ea5;hpb=9b6b510ca80fcc3c623dad9a34839b1235f628f2 diff --git a/src/Makefile b/src/Makefile index 9650c7f6..56d058f9 100644 --- a/src/Makefile +++ b/src/Makefile @@ -1,6 +1,6 @@ # Stockfish, a UCI chess playing engine derived from Glaurung 2.1 # Copyright (C) 2004-2008 Tord Romstad (Glaurung author) -# Copyright (C) 2008-2010 Marco Costalba, Joona Kiiski, Tord Romstad +# Copyright (C) 2008-2012 Marco Costalba, Joona Kiiski, Tord Romstad # # Stockfish is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -308,15 +308,19 @@ endif ### 3.10 popcnt ifeq ($(popcnt),yes) - CXXFLAGS += -DUSE_POPCNT - - ### For gcc we add also msse3 support and Link Time Optimization, note that - ### this is a mix of compile and link time options because the lto link phase - ### needs access to the optimization flags. - ifeq ($(comp),gcc) - CXXFLAGS += -msse3 -flto - LDFLAGS += $(CXXFLAGS) - endif + CXXFLAGS += -msse3 -DUSE_POPCNT +endif + +### 3.11 Link Time Optimization, it works since gcc 4.5 but not on mingw. +### This is a mix of compile and link time options because the lto link phase +### needs access to the optimization flags. +ifeq ($(comp),gcc) + GCC_MAJOR := `gcc -dumpversion | cut -f1 -d.` + GCC_MINOR := `gcc -dumpversion | cut -f2 -d.` + ifeq (1,$(shell expr \( $(GCC_MAJOR) \> 4 \) \| \( $(GCC_MAJOR) \= 4 \& $(GCC_MINOR) \>= 5 \))) + CXXFLAGS += -flto + LDFLAGS += $(CXXFLAGS) + endif endif ### ========================================================================== @@ -385,7 +389,7 @@ profile-build: $(MAKE) ARCH=$(ARCH) COMP=$(COMP) $(profile_make) @echo "" @echo "Step 2/4. Running benchmark for pgo-build ..." - @sleep 10 | $(PGOBENCH) > /dev/null + @$(PGOBENCH) > /dev/null @echo "" @echo "Step 3/4. Building final executable ..." @touch *.cpp @@ -405,14 +409,14 @@ double-profile-build: $(MAKE) ARCH=x86-64 COMP=$(COMP) $(profile_make) @echo "" @echo "Step 2/6. Running benchmark for pgo-build (popcnt disabled)..." - @sleep 10 | $(PGOBENCH) > /dev/null + @$(PGOBENCH) > /dev/null @echo "" @echo "Step 3/6. Building executable for benchmark (popcnt enabled)..." @touch *.cpp *.h $(MAKE) ARCH=x86-64-modern COMP=$(COMP) $(profile_make) @echo "" @echo "Step 4/6. Running benchmark for pgo-build (popcnt enabled)..." - @sleep 10 | $(PGOBENCH) > /dev/null + @$(PGOBENCH) > /dev/null @echo "" @echo "Step 5/6. Building final executable ..." @touch *.cpp *.h