add custom build type and use it in Travis

Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
This commit is contained in:
Ivailo Monev 2017-08-09 05:34:19 +00:00
parent 2fe4f50c35
commit 7ae7ceb5eb
6 changed files with 24 additions and 4 deletions

1
.gitignore vendored
View file

@ -18,3 +18,4 @@
apidocs
build
minsize
fastdev

View file

@ -21,8 +21,8 @@ before_script:
- sleep 3
script:
- mkdir build && cd build
- if [ "$CXX" == "clang++" ];then cmake ../ -GNinja -DENABLE_TESTING=TRUE -DKATIE_UTILS=ON -Wno-dev ;fi
- if [ "$CXX" == "g++" ];then cmake ../ -GNinja -DENABLE_TESTING=TRUE -DKATIE_UTILS=ON -DKATIE_ALLINONE=ON -Wno-dev ;fi
- if [ "$CXX" == "clang++" ];then cmake ../ -GNinja -DCMAKE_BUILD_TYPE=FastDev -DENABLE_TESTING=TRUE -DKATIE_UTILS=ON -Wno-dev ;fi
- if [ "$CXX" == "g++" ];then cmake ../ -GNinja -DCMAKE_BUILD_TYPE=FastDev -DENABLE_TESTING=TRUE -DKATIE_UTILS=ON -DKATIE_ALLINONE=ON -Wno-dev ;fi
- ninja
# the tests/benchmarks take more then 1-hour and Travis times out,
# despite the documentaiton for the service claiming otherwise

View file

@ -21,6 +21,12 @@ if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE RelWithDebInfo)
endif()
# custom build type - speed up builds and show some additional warnings
if(CMAKE_BUILD_TYPE STREQUAL "FastDev")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0 -Wall")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -Wall")
endif()
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules")
set(CMAKE_AUTOMOC FALSE)
set(CMAKE_AUTOUIC FALSE)
@ -41,7 +47,7 @@ set(CPACK_PACKAGE_VERSION_MAJOR "4")
set(CPACK_PACKAGE_VERSION_MINOR "9")
set(CPACK_PACKAGE_VERSION_PATCH "0")
set(CPACK_SET_DESTDIR TRUE)
set(CPACK_SOURCE_IGNORE_FILES "/build/;/minsize/;/apidocs/;/.git;${CPACK_SOURCE_IGNORE_FILES}")
set(CPACK_SOURCE_IGNORE_FILES "/build/;/minsize/;/fastdev/;/apidocs/;/.git;${CPACK_SOURCE_IGNORE_FILES}")
set(CPACK_STRIP_FILES TRUE)
if(NOT CMAKE_VERSION VERSION_LESS "3.1.0")
set(CPACK_GENERATOR "TXZ")

View file

@ -74,7 +74,7 @@ endif()
# also affected, which KDE uses for visibility check for an example
if(KATIE_COMPILER STREQUAL "gcc")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11")
# TODO: set CMAKE_CXX_EXTENSIONS to OFF?
# TODO: set CMAKE_CXX_EXTENSIONS to OFF so it does not append the flag again?
elseif(KATIE_COMPILER STREQUAL "clang")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
endif()

12
scripts/fastdev.sh Executable file
View file

@ -0,0 +1,12 @@
#!/bin/sh
set -e
cwd="$(dirname $0)"
rm -rf "$cwd/../fastdev"
mkdir -p "$cwd/../fastdev"
cd "$cwd/../fastdev"
cmake ../ -DCMAKE_BUILD_TYPE=FastDev -DCMAKE_INSTALL_PREFIX=/usr $@
make -j$(nproc)

View file

@ -4,6 +4,7 @@ set -e
cwd="$(dirname $0)"
rm -rf "$cwd/../minsize"
mkdir -p "$cwd/../minsize"
cd "$cwd/../minsize"