Merge pull request #2181 from facebook/makejall

fixed double-compilation of lib with make -j all
This commit is contained in:
Yann Collet 2020-05-29 13:49:38 -07:00 committed by GitHub
commit e7948fdf84
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -8,6 +8,9 @@
# You may select, at your option, one of the above-listed licenses. # You may select, at your option, one of the above-listed licenses.
# ################################################################ # ################################################################
# verbose mode (print commands) on V=1 or VERBOSE=1
Q = $(if $(filter 1,$(V) $(VERBOSE)),,@)
PRGDIR = programs PRGDIR = programs
ZSTDDIR = lib ZSTDDIR = lib
BUILDIR = build BUILDIR = build
@ -46,8 +49,8 @@ allmost: allzstd zlibwrapper
# skip zwrapper, can't build that on alternate architectures without the proper zlib installed # skip zwrapper, can't build that on alternate architectures without the proper zlib installed
.PHONY: allzstd .PHONY: allzstd
allzstd: lib-all allzstd: lib-all
$(MAKE) -C $(PRGDIR) all $(Q)$(MAKE) -C $(PRGDIR) all
$(MAKE) -C $(TESTDIR) all $(Q)$(MAKE) -C $(TESTDIR) all
.PHONY: all32 .PHONY: all32
all32: all32:
@ -55,18 +58,19 @@ all32:
$(MAKE) -C $(TESTDIR) all32 $(MAKE) -C $(TESTDIR) all32
.PHONY: lib lib-release libzstd.a .PHONY: lib lib-release libzstd.a
lib-all : lib
lib lib-release lib-all : lib lib-release lib-all :
@$(MAKE) -C $(ZSTDDIR) $@ $(Q)$(MAKE) -C $(ZSTDDIR) $@
.PHONY: zstd zstd-release .PHONY: zstd zstd-release
zstd zstd-release: zstd zstd-release:
@$(MAKE) -C $(PRGDIR) $@ $(Q)$(MAKE) -C $(PRGDIR) $@
cp $(PRGDIR)/zstd$(EXT) . $(Q)cp $(PRGDIR)/zstd$(EXT) .
.PHONY: zstdmt .PHONY: zstdmt
zstdmt: zstdmt:
@$(MAKE) -C $(PRGDIR) $@ $(Q)$(MAKE) -C $(PRGDIR) $@
cp $(PRGDIR)/zstd$(EXT) ./zstdmt$(EXT) $(Q)cp $(PRGDIR)/zstd$(EXT) ./zstdmt$(EXT)
.PHONY: zlibwrapper .PHONY: zlibwrapper
zlibwrapper: lib zlibwrapper: lib
@ -79,12 +83,12 @@ test: MOREFLAGS += -g -DDEBUGLEVEL=$(DEBUGLEVEL) -Werror
test: test:
MOREFLAGS="$(MOREFLAGS)" $(MAKE) -j -C $(PRGDIR) allVariants MOREFLAGS="$(MOREFLAGS)" $(MAKE) -j -C $(PRGDIR) allVariants
$(MAKE) -C $(TESTDIR) $@ $(MAKE) -C $(TESTDIR) $@
ZSTD=../../programs/zstd $(MAKE) -C doc/educational_decoder test ZSTD=../../programs/zstd $(MAKE) -C doc/educational_decoder $@
## shortest: same as `make check` ## shortest: same as `make check`
.PHONY: shortest .PHONY: shortest
shortest: shortest:
$(MAKE) -C $(TESTDIR) $@ $(Q)$(MAKE) -C $(TESTDIR) $@
## check: run basic tests for `zstd` cli ## check: run basic tests for `zstd` cli
.PHONY: check .PHONY: check
@ -127,17 +131,17 @@ cleanTabs:
.PHONY: clean .PHONY: clean
clean: clean:
@$(MAKE) -C $(ZSTDDIR) $@ > $(VOID) $(Q)$(MAKE) -C $(ZSTDDIR) $@ > $(VOID)
@$(MAKE) -C $(PRGDIR) $@ > $(VOID) $(Q)$(MAKE) -C $(PRGDIR) $@ > $(VOID)
@$(MAKE) -C $(TESTDIR) $@ > $(VOID) $(Q)$(MAKE) -C $(TESTDIR) $@ > $(VOID)
@$(MAKE) -C $(ZWRAPDIR) $@ > $(VOID) $(Q)$(MAKE) -C $(ZWRAPDIR) $@ > $(VOID)
@$(MAKE) -C examples/ $@ > $(VOID) $(Q)$(MAKE) -C examples/ $@ > $(VOID)
@$(MAKE) -C contrib/gen_html $@ > $(VOID) $(Q)$(MAKE) -C contrib/gen_html $@ > $(VOID)
@$(MAKE) -C contrib/pzstd $@ > $(VOID) $(Q)$(MAKE) -C contrib/pzstd $@ > $(VOID)
@$(MAKE) -C contrib/seekable_format/examples $@ > $(VOID) $(Q)$(MAKE) -C contrib/seekable_format/examples $@ > $(VOID)
@$(MAKE) -C contrib/largeNbDicts $@ > $(VOID) $(Q)$(MAKE) -C contrib/largeNbDicts $@ > $(VOID)
@$(RM) zstd$(EXT) zstdmt$(EXT) tmp* $(Q)$(RM) zstd$(EXT) zstdmt$(EXT) tmp*
@$(RM) -r lz4 $(Q)$(RM) -r lz4
@echo Cleaning completed @echo Cleaning completed
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
@ -161,7 +165,7 @@ EGREP = egrep $(EGREP_OPTIONS)
## list: Print all targets and their descriptions (if provided) ## list: Print all targets and their descriptions (if provided)
.PHONY: list .PHONY: list
list: list:
@TARGETS=$$($(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null \ $(Q)TARGETS=$$($(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null \
| awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' \ | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' \
| $(EGREP) -v -e '^[^[:alnum:]]' | sort); \ | $(EGREP) -v -e '^[^[:alnum:]]' | sort); \
{ \ { \
@ -176,13 +180,13 @@ list:
.PHONY: install armtest usan asan uasan .PHONY: install armtest usan asan uasan
install: install:
@$(MAKE) -C $(ZSTDDIR) $@ $(Q)$(MAKE) -C $(ZSTDDIR) $@
@$(MAKE) -C $(PRGDIR) $@ $(Q)$(MAKE) -C $(PRGDIR) $@
.PHONY: uninstall .PHONY: uninstall
uninstall: uninstall:
@$(MAKE) -C $(ZSTDDIR) $@ $(Q)$(MAKE) -C $(ZSTDDIR) $@
@$(MAKE) -C $(PRGDIR) $@ $(Q)$(MAKE) -C $(PRGDIR) $@
.PHONY: travis-install .PHONY: travis-install
travis-install: travis-install: