From: Mingye Wang Date: Sun, 10 May 2020 08:36:08 +0000 (+0800) Subject: programs/Makefile: make it actually work with clang X-Git-Tag: v1.4.5^2~19^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c3398d2dda36eca49f7b45c97bbd3735201efdbf;p=thirdparty%2Fzstd.git programs/Makefile: make it actually work with clang Recent versions of clang seem to require a step of conversion from the profraw file to a "compiler-readable" profdata file to let PGO work. --- diff --git a/programs/Makefile b/programs/Makefile index 1a85f185e..8ef53a017 100644 --- a/programs/Makefile +++ b/programs/Makefile @@ -237,6 +237,7 @@ zstd-pgo : ./zstd -b7i2 $(PROFILE_WITH) ./zstd -b5 $(PROFILE_WITH) $(RM) zstd *.o $(ZSTDDECOMP_O) $(ZSTDDIR)/compress/*.o + case $(CC) in *clang*) if ! [ -e default.profdata ]; then llvm-profdata merge -output=default.profdata default*.profraw; fi ;; esac $(MAKE) zstd MOREFLAGS=-fprofile-use ## zstd-small: minimal target, supporting only zstd compression and decompression. no bench. no legacy. no other format. @@ -277,7 +278,7 @@ clean: @$(RM) core *.o tmp* result* *.gcda dictionary *.zst \ zstd$(EXT) zstd32$(EXT) zstd-compress$(EXT) zstd-decompress$(EXT) \ zstd-small$(EXT) zstd-frugal$(EXT) zstd-nolegacy$(EXT) zstd4$(EXT) \ - zstd-dictBuilder$(EXT) *.gcda default.profraw have_zlib$(EXT) + zstd-dictBuilder$(EXT) *.gcda default*.profraw default.profdata have_zlib$(EXT) @echo Cleaning completed MD2ROFF = ronn