git-lfs/t/Makefile
Chris Darroch 5f7bd242a9 t/Makefile: build test helpers with file extension
On Windows, it is convenient to have the .exe file extension
added to our compiled test helpers when running tests manually,
so we use the X variable to do so in the same manner as in the
primary Makefile.

Also, we add a test-commands Makefile target which is convenient
when re-building just the test helpers.
2022-04-19 13:17:45 -07:00

61 lines
1.4 KiB
Makefile

RM ?= rm -f
PROVE ?= prove
PROVE_EXTRA_ARGS =
DEFAULT_TEST_TARGET ?= test
GO ?= go
ifeq ($(OS),Windows_NT)
X ?= .exe
else
X ?=
endif
TEST_CMDS =
TEST_CMDS += ../bin/git-credential-lfsnoop$X
TEST_CMDS += ../bin/git-credential-lfstest$X
TEST_CMDS += ../bin/lfs-askpass$X
TEST_CMDS += ../bin/lfs-ssh-echo$X
TEST_CMDS += ../bin/lfs-ssh-proxy-test$X
TEST_CMDS += ../bin/lfstest-badpathcheck$X
TEST_CMDS += ../bin/lfstest-count-tests$X
TEST_CMDS += ../bin/lfstest-customadapter$X
TEST_CMDS += ../bin/lfstest-gitserver$X
TEST_CMDS += ../bin/lfstest-realpath$X
TEST_CMDS += ../bin/lfstest-standalonecustomadapter$X
TEST_CMDS += ../bin/lfstest-testutils$X
# Not used for the integration tests, but build it here anyway to ensure it
# continues to work.
TEST_CMDS += ../bin/git-lfs-test-server-api$X
TEST_SRCS = $(wildcard t-*.sh)
TEST_API_SRCS = $(wildcard git-lfs-test-server-api/*.go)
all : $(DEFAULT_TEST_TARGET)
test-commands : $(TEST_CMDS)
test : test-commands
$(RM) -r remote test_count{,.lock}
@GIT_LFS_NO_TEST_COUNT= bash -c '. ./testenv.sh && setup'
$(PROVE) $(PROVE_EXTRA_ARGS) ./t-*.sh
@GIT_LFS_NO_TEST_COUNT= bash -c '. ./testenv.sh && shutdown'
.PHONY : $(TEST_SRCS)
$(TEST_SRCS) : $(TEST_CMDS)
$(RM) -r remote test_count{,.lock}
$(PROVE) -v $(PROVE_EXTRA_ARGS) $@
.PHONY : clean
clean :
$(RM) -r remote
$(RM) $(TEST_CMDS)
../bin/%$X : cmd/%.go
go build -o $@ $^
../bin/git-lfs-test-server-api$X : $(TEST_API_SRCS)
go build -o $@ $^