Moved -Werror flag to CI only

The most useful part of -Werror is preventing code from being
merged that has warnings. However it is annoying for users who may have
different compilers with different warnings. Limiting -Werror to CI only
covers the main concern about warnings without limiting users.
This commit is contained in:
Christopher Haster
2018-01-29 11:30:53 -06:00
parent 88f678f4c6
commit 6d8e0e21d0
3 changed files with 14 additions and 12 deletions

View File

@@ -1,20 +1,23 @@
env:
- CFLAGS=-Werror
script:
# make sure example can at least compile
- sed -n '/``` c/,/```/{/```/d; p;}' README.md > test.c &&
CFLAGS='
make all size CFLAGS+="
-Duser_provided_block_device_read=NULL
-Duser_provided_block_device_prog=NULL
-Duser_provided_block_device_erase=NULL
-Duser_provided_block_device_sync=NULL
-include stdio.h -Werror' make all size
-include stdio.h"
# run tests
- make test QUIET=1
# run tests with a few different configurations
- CFLAGS="-DLFS_READ_SIZE=1 -DLFS_PROG_SIZE=1" make test QUIET=1
- CFLAGS="-DLFS_READ_SIZE=512 -DLFS_PROG_SIZE=512" make test QUIET=1
- CFLAGS="-DLFS_BLOCK_COUNT=1023 -DLFS_LOOKAHEAD=2048" make test QUIET=1
- make test QUIET=1 CFLAGS+="-DLFS_READ_SIZE=1 -DLFS_PROG_SIZE=1"
- make test QUIET=1 CFLAGS+="-DLFS_READ_SIZE=512 -DLFS_PROG_SIZE=512"
- make test QUIET=1 CFLAGS+="-DLFS_BLOCK_COUNT=1023 -DLFS_LOOKAHEAD=2048"
# self-host with littlefs-fuse for fuzz test
- make -C littlefs-fuse

View File

@@ -14,15 +14,15 @@ TEST := $(patsubst tests/%.sh,%,$(wildcard tests/test_*))
SHELL = /bin/bash -o pipefail
ifdef DEBUG
CFLAGS += -O0 -g3
override CFLAGS += -O0 -g3
else
CFLAGS += -Os
override CFLAGS += -Os
endif
ifdef WORD
CFLAGS += -m$(WORD)
override CFLAGS += -m$(WORD)
endif
CFLAGS += -I.
CFLAGS += -std=c99 -Wall -pedantic
override CFLAGS += -I.
override CFLAGS += -std=c99 -Wall -pedantic
all: $(TARGET)

View File

@@ -33,8 +33,7 @@ def generate(test):
pass
def compile():
os.environ['CFLAGS'] = os.environ.get('CFLAGS', '') + ' -Werror'
subprocess.check_call(['make', '--no-print-directory', '-s'], env=os.environ)
subprocess.check_call(['make', '--no-print-directory', '-s'])
def execute():
subprocess.check_call(["./lfs"])