1
0
mirror of https://github.com/facebook/zstd.git synced 2025-03-07 01:10:04 +02:00

Refactor Makefile and .travis tests

This commit is contained in:
Yann Collet 2015-08-26 00:19:06 +01:00
parent f44b2b02b4
commit bf50409e05
4 changed files with 30 additions and 49 deletions

View File

@ -1,6 +1,6 @@
language: c language: c
compiler: gcc compiler: gcc
script: make test-travis script: make $ZSTD_TRAVIS_CI_ENV
before_install: before_install:
- sudo apt-get update -qq - sudo apt-get update -qq
- sudo apt-get install -qq gcc-arm-linux-gnueabi - sudo apt-get install -qq gcc-arm-linux-gnueabi
@ -11,11 +11,13 @@ before_install:
env: env:
- ZSTD_TRAVIS_CI_ENV=travis-install - ZSTD_TRAVIS_CI_ENV=travis-install
- ZSTD_TRAVIS_CI_ENV=test-all
- ZSTD_TRAVIS_CI_ENV=clangtest - ZSTD_TRAVIS_CI_ENV=clangtest
- ZSTD_TRAVIS_CI_ENV=gpptest - ZSTD_TRAVIS_CI_ENV=gpptest
- ZSTD_TRAVIS_CI_ENV=armtest - ZSTD_TRAVIS_CI_ENV=armtest
- ZSTD_TRAVIS_CI_ENV=test
- ZSTD_TRAVIS_CI_ENV="-C programs test32"
- ZSTD_TRAVIS_CI_ENV=sanitize - ZSTD_TRAVIS_CI_ENV=sanitize
- ZSTD_TRAVIS_CI_ENV="-C programs memtest"
matrix: matrix:
fast_finish: true fast_finish: true

View File

@ -34,37 +34,23 @@
# Version number # Version number
export VERSION=0.1.1 export VERSION=0.1.1
DESTDIR?=
PREFIX ?= /usr/local
LIBDIR ?= $(PREFIX)/lib
INCLUDEDIR=$(PREFIX)/include
PRGDIR = programs PRGDIR = programs
ZSTDDIR = lib ZSTDDIR = lib
# Select test target for Travis CI's Build Matrix
ifneq (,$(filter test-%,$(ZSTD_TRAVIS_CI_ENV)))
TRAVIS_TARGET=prg-travis
else
TRAVIS_TARGET=$(ZSTD_TRAVIS_CI_ENV)
endif
.PHONY: clean .PHONY: clean
default: zstdprograms default: zstdprogram
all: all:
@cd $(ZSTDDIR); $(MAKE) -e all $(MAKE) -C $(ZSTDDIR) $@
@cd $(PRGDIR); $(MAKE) -e all $(MAKE) -C $(PRGDIR) $@
zstdprograms: zstdprogram:
@cd $(PRGDIR); $(MAKE) -e $(MAKE) -C $(PRGDIR)
clean: clean:
@cd $(PRGDIR); $(MAKE) clean $(MAKE) -C $(ZSTDDIR) $@
@cd $(ZSTDDIR); $(MAKE) clean $(MAKE) -C $(PRGDIR) $@
# @cd examples; $(MAKE) clean
@echo Cleaning completed @echo Cleaning completed
@ -73,23 +59,18 @@ clean:
ifneq (,$(filter $(shell uname),Linux Darwin GNU/kFreeBSD GNU)) ifneq (,$(filter $(shell uname),Linux Darwin GNU/kFreeBSD GNU))
install: install:
@cd $(ZSTDDIR); $(MAKE) -e install $(MAKE) -C $(ZSTDDIR) $@
@cd $(PRGDIR); $(MAKE) -e install $(MAKE) -C $(PRGDIR) $@
uninstall: uninstall:
@cd $(ZSTDDIR); $(MAKE) uninstall $(MAKE) -C $(ZSTDDIR) $@
@cd $(PRGDIR); $(MAKE) uninstall $(MAKE) -C $(PRGDIR) $@
travis-install: travis-install:
sudo $(MAKE) install sudo $(MAKE) install
test: test:
@cd $(PRGDIR); $(MAKE) -e test $(MAKE) -C $(PRGDIR) $@
test-travis: $(TRAVIS_TARGET)
prg-travis:
@cd $(PRGDIR); $(MAKE) -e $(ZSTD_TRAVIS_CI_ENV)
clangtest: clean clangtest: clean
clang -v clang -v
@ -99,8 +80,8 @@ gpptest: clean
$(MAKE) all CC=g++ CFLAGS="-O3 -Wall -Wextra -Wundef -Wshadow -Wcast-align -Werror" $(MAKE) all CC=g++ CFLAGS="-O3 -Wall -Wextra -Wundef -Wshadow -Wcast-align -Werror"
armtest: clean armtest: clean
cd $(ZSTDDIR); $(MAKE) -e all CC=arm-linux-gnueabi-gcc MOREFLAGS="-Werror" $(MAKE) -C $(ZSTDDIR) -e all CC=arm-linux-gnueabi-gcc MOREFLAGS="-Werror"
cd $(PRGDIR); $(MAKE) -e CC=arm-linux-gnueabi-gcc MOREFLAGS="-Werror" $(MAKE) -C $(PRGDIR) -e CC=arm-linux-gnueabi-gcc MOREFLAGS="-Werror"
sanitize: clean sanitize: clean
$(MAKE) test CC=clang MOREFLAGS="-g -fsanitize=undefined" $(MAKE) test CC=clang MOREFLAGS="-g -fsanitize=undefined"

View File

@ -32,14 +32,14 @@
# ################################################################ # ################################################################
# Version numbers # Version numbers
VERSION?= 0 VERSION?= 0.1.1
LIBVER_MAJOR=`sed -n '/define ZSTD_VERSION_MAJOR/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < zstd.h` LIBVER_MAJOR=`sed -n '/define ZSTD_VERSION_MAJOR/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < zstd.h`
LIBVER_MINOR=`sed -n '/define ZSTD_VERSION_MINOR/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < zstd.h` LIBVER_MINOR=`sed -n '/define ZSTD_VERSION_MINOR/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < zstd.h`
LIBVER_PATCH=`sed -n '/define ZSTD_VERSION_RELEASE/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < zstd.h` LIBVER_PATCH=`sed -n '/define ZSTD_VERSION_RELEASE/s/.*[[:blank:]]\([0-9][0-9]*\).*/\1/p' < zstd.h`
LIBVER = $(LIBVER_MAJOR).$(LIBVER_MINOR).$(LIBVER_PATCH) LIBVER = $(LIBVER_MAJOR).$(LIBVER_MINOR).$(LIBVER_PATCH)
DESTDIR?= DESTDIR?=
PREFIX ?= /usr PREFIX ?= /usr/local
CFLAGS ?= -O3 CFLAGS ?= -O3
CFLAGS += -std=c99 -Wall -Wextra -Wundef -Wshadow -Wcast-align -Wstrict-prototypes CFLAGS += -std=c99 -Wall -Wextra -Wundef -Wshadow -Wcast-align -Wstrict-prototypes
LDFLAGS = -I. LDFLAGS = -I.

View File

@ -33,17 +33,15 @@
VERSION?= v0.1.1 VERSION?= v0.1.1
DESTDIR?= DESTDIR?=
PREFIX ?= /usr PREFIX ?= /usr/local
CFLAGS ?= -O3 CFLAGS ?= -O3
CFLAGS += -std=c99 -Wall -Wextra -Wundef -Wshadow -Wcast-qual -Wcast-align -Wstrict-prototypes -DZSTD_VERSION=\"$(VERSION)\" CFLAGS += -std=c99 -Wall -Wextra -Wundef -Wshadow -Wcast-qual -Wcast-align -Wstrict-prototypes -DZSTD_VERSION=\"$(VERSION)\"
LDFLAGS = -I../lib LDFLAGS = -I../lib
FLAGS = $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(MOREFLAGS) FLAGS = $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(MOREFLAGS)
BINDIR=$(PREFIX)/bin BINDIR = $(PREFIX)/bin
MANDIR=$(PREFIX)/share/man/man1 MANDIR = $(PREFIX)/share/man/man1
ZSTDDIR=../lib ZSTDDIR = ../lib
TEST_TARGETS=test-native
# Define *.exe as extension for Windows systems # Define *.exe as extension for Windows systems
@ -119,7 +117,7 @@ test: test-zstd test-fullbench test-fuzzer
test32: test-zstd32 test-fullbench32 test-fuzzer32 test32: test-zstd32 test-fullbench32 test-fuzzer32
test-all: test test32 test-mem test-all: test test32 memtest
test-zstd: zstd datagen test-zstd: zstd datagen
@echo "*** zstd cli write error test ***" @echo "*** zstd cli write error test ***"
@ -148,15 +146,15 @@ test-fuzzer: fuzzer
test-fuzzer32: fuzzer32 test-fuzzer32: fuzzer32
./fuzzer32 ./fuzzer32
test-mem: zstd datagen fuzzer fullbench memtest: zstd datagen fuzzer fullbench
@echo "\n ---- valgrind tests : memory analyzer ----" @echo "\n ---- valgrind tests : memory analyzer ----"
valgrind --leak-check=yes --error-exitcode=1 ./datagen -g50M > /dev/null valgrind --leak-check=yes --error-exitcode=1 ./datagen -g50M > $(VOID)
./datagen -g16KB > tmp ./datagen -g16KB > tmp
valgrind --leak-check=yes --error-exitcode=1 ./zstd -vf tmp /dev/null valgrind --leak-check=yes --error-exitcode=1 ./zstd -vf tmp $(VOID)
./datagen -g64MB > tmp ./datagen -g64MB > tmp
valgrind --leak-check=yes --error-exitcode=1 ./zstd -vf tmp /dev/null valgrind --leak-check=yes --error-exitcode=1 ./zstd -vf tmp $(VOID)
@rm tmp @rm tmp
valgrind --leak-check=yes --error-exitcode=1 ./fuzzer -i128 -t1 valgrind --leak-check=yes --error-exitcode=1 ./fuzzer -i1000 -t1
valgrind --leak-check=yes --error-exitcode=1 ./fullbench -i1 valgrind --leak-check=yes --error-exitcode=1 ./fullbench -i1
endif endif