Skip to content

Commit

Permalink
Check for errors on Unix scripts (#139)
Browse files Browse the repository at this point in the history
* Check for errors on Unix scripts
* Remove unused CI scripts
  • Loading branch information
raulbocanegra committed Feb 18, 2020
1 parent 77acf50 commit a7d9f7d
Show file tree
Hide file tree
Showing 9 changed files with 61 additions and 55 deletions.
19 changes: 15 additions & 4 deletions .CI/travis/build_linux.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,26 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
function check-error() {
KHIVA_ERROR=$?
if [ $KHIVA_ERROR -ne 0 ]; then
echo "$1: $KHIVA_ERROR"
exit $KHIVA_ERROR
fi
}

cmake --version
mkdir -p build && cd build
conan profile new --detect --force default
conan profile update settings.compiler.libcxx=libstdc++11 default
conan install .. --build missing
if [[ -z "${TRAVIS_TAG}" ]]; then
../cmakebin/bin/cmake .. -DKHIVA_ENABLE_COVERAGE=ON -DKHIVA_BUILD_DOCUMENTATION=OFF -DKHIVA_BUILD_EXAMPLES=OFF -DKHIVA_BUILD_BENCHMARKS=OFF

cmake .. -DKHIVA_ENABLE_COVERAGE=ON -DKHIVA_BUILD_DOCUMENTATION=OFF -DKHIVA_BUILD_EXAMPLES=OFF -DKHIVA_BUILD_BENCHMARKS=OFF
else
../cmakebin/bin/cmake ..
cmake ..
fi
check-error "Error generating CMake configuration"
cmake --build . -- -j8
ctest --output-on-failure
check-error "Error building Khiva"
ctest --output-on-failure
check-error "Error executing tests"
16 changes: 13 additions & 3 deletions .CI/travis/build_osx.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,23 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# Build the project
function check-error() {
KHIVA_ERROR=$?
if [ $KHIVA_ERROR -ne 0 ]; then
echo "$1: $KHIVA_ERROR"
exit $KHIVA_ERROR
fi
}

mkdir -p build && cd build
conan install .. -s compiler=apple-clang -s compiler.version=9.1 -s compiler.libcxx=libc++ --build missing
if [[ -z "${TRAVIS_TAG}" ]]; then
cmake .. -DKHIVA_ENABLE_COVERAGE=ON -DKHIVA_ONLY_CPU_BACKEND=ON -DKHIVA_BUILD_DOCUMENTATION=OFF -DKHIVA_BUILD_EXAMPLES=OFF -DKHIVA_BUILD_BENCHMARKS=OFF
cmake --build . -- -j8
ctest -V
else
cmake ..
cmake --build . -- -j8
fi
check-error "Error generating CMake configuration"
cmake --build . -- -j8
check-error "Error building Khiva"
ctest --output-on-failure
check-error "Error executing tests"
15 changes: 0 additions & 15 deletions .CI/travis/install-cmake_linux.sh

This file was deleted.

2 changes: 2 additions & 0 deletions .CI/travis/install_osx.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ pyenv local 3.6.5
export PATH=$HOME/.pyenv/shims:$HOME/.pyenv/versions/${TRAVIS_PYTHON_VERSION}/bin:$PATH
export PYTHON_VERSION=$(echo $TRAVIS_PYTHON_VERSION | awk -F'.' '{print $1 "." $2}')

brew uninstall wget
brew install wget
brew install --force lcov
brew install --force freeimage fontconfig glfw glbinding

Expand Down
2 changes: 0 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ matrix:
- git submodule update --init
- source .CI/travis/install_linux.sh
- source .CI/travis/install-arrayfire_linux.sh
- source .CI/travis/install-cmake_linux.sh
script:
- source .CI/travis/build_linux.sh
- os: linux
Expand All @@ -33,7 +32,6 @@ matrix:
- git submodule update --init
- source .CI/travis/install_linux.sh
- source .CI/travis/install-arrayfire_linux.sh
- source .CI/travis/install-cmake_linux.sh
script:
- source .CI/travis/build_linux.sh
before_deploy:
Expand Down
26 changes: 13 additions & 13 deletions benchmarks/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,20 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

CMAKE_MINIMUM_REQUIRED(VERSION 3.9.6)
FIND_PACKAGE(Threads REQUIRED)
FIND_PACKAGE(benchmark CONFIG REQUIRED)
cmake_minimum_required(VERSION 3.9.6)
find_package(Threads REQUIRED)
find_package(benchmark CONFIG REQUIRED)

FILE(GLOB_RECURSE ALL_BENCH_CPP *.cpp)
file(GLOB_RECURSE ALL_BENCH_CPP *.cpp)

SET(INTERNAL_HEADERS_DIR "${KHIVALIB_SRC}/")
set(INTERNAL_HEADERS_DIR "${KHIVALIB_SRC}/")

FOREACH(ONE_BENCH_CPP ${ALL_BENCH_CPP})
GET_FILENAME_COMPONENT(ONE_BENCH_EXEC ${ONE_BENCH_CPP} NAME_WE)
SET(TARGET_NAME ${ONE_BENCH_EXEC})
ADD_EXECUTABLE(${TARGET_NAME} ${ONE_BENCH_CPP})
foreach(ONE_BENCH_CPP ${ALL_BENCH_CPP})
get_filename_component(ONE_BENCH_EXEC ${ONE_BENCH_CPP} NAME_WE)
set(TARGET_NAME ${ONE_BENCH_EXEC})
add_executable(${TARGET_NAME} ${ONE_BENCH_CPP})

SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES OUTPUT_NAME ${ONE_BENCH_EXEC} FOLDER benchmarks)
TARGET_LINK_LIBRARIES(${TARGET_NAME} benchmark::benchmark ${KHIVALIB} ${CMAKE_THREAD_LIBS_INIT})
TARGET_INCLUDE_DIRECTORIES(${TARGET_NAME} PRIVATE ${INTERNAL_HEADERS_DIR})
ENDFOREACH()
set_target_properties(${TARGET_NAME} PROPERTIES OUTPUT_NAME ${ONE_BENCH_EXEC} FOLDER benchmarks)
target_link_libraries(${TARGET_NAME} benchmark::benchmark ${KHIVALIB} ${CMAKE_THREAD_LIBS_INIT})
target_include_directories(${TARGET_NAME} PRIVATE ${INTERNAL_HEADERS_DIR})
endforeach()
2 changes: 1 addition & 1 deletion conanfile.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
gtest/1.10.0
benchmark/1.5.0
boost/1.70.0
eigen/3.3.7
eigen/3.3.4@conan/stable

[options]
gtest:shared=False
Expand Down
2 changes: 1 addition & 1 deletion src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,6 @@ target_include_directories(${KHIVALIB}
PRIVATE
${SCAMP_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
${EIGEN3_INCLUDE_DIRS}
PUBLIC
$<BUILD_INTERFACE:${KHIVALIB_INC}>
$<BUILD_INTERFACE:${KHIVALIB_INC}/internal>
Expand All @@ -67,6 +66,7 @@ target_include_directories(${KHIVALIB}
target_link_libraries(${KHIVALIB}
PRIVATE
scamp
Eigen3::Eigen
PUBLIC
$<IF:$<BOOL:${KHIVA_ONLY_CPU_BACKEND}>,ArrayFire::afcpu,ArrayFire::af>
${CMAKE_DL_LIBS}
Expand Down
32 changes: 16 additions & 16 deletions test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,27 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

CMAKE_MINIMUM_REQUIRED(VERSION 3.9.6)
PROJECT(KHIVALIB_TEST)
cmake_minimum_required(VERSION 3.9.6)
project(KHIVALIB_TEST)

FIND_PACKAGE(Threads REQUIRED)
FIND_PACKAGE(GTest REQUIRED)
INCLUDE(GoogleTest)
find_package(Threads REQUIRED)
find_package(GTest REQUIRED)
include(GoogleTest)

### Targets ###
# see https://cmake.org/cmake/help/v3.10/module/GoogleTest.html
FILE(GLOB_RECURSE ALL_TEST_CPP *.cpp)
file(GLOB_RECURSE ALL_TEST_CPP *.cpp)

SET(INTERNAL_HEADERS_DIR "${KHIVALIB_SRC}/")
set(INTERNAL_HEADERS_DIR "${KHIVALIB_SRC}/")

FOREACH(ONE_TEST_CPP ${ALL_TEST_CPP})
GET_FILENAME_COMPONENT(ONE_TEST_EXEC_TMP ${ONE_TEST_CPP} NAME_WE)
STRING(REPLACE "Test" "" ONE_TEST_EXEC ${ONE_TEST_EXEC_TMP})
SET(TARGET_NAME ${ONE_TEST_EXEC})
ADD_EXECUTABLE(${TARGET_NAME} ${ONE_TEST_CPP})
TARGET_LINK_LIBRARIES(${TARGET_NAME} PRIVATE ${KHIVALIB} GTest::GTest GTest::Main ${CMAKE_THREAD_LIBS_INIT})
TARGET_INCLUDE_DIRECTORIES(${TARGET_NAME} PRIVATE ${INTERNAL_HEADERS_DIR})
SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES FOLDER test)
foreach(ONE_TEST_CPP ${ALL_TEST_CPP})
get_filename_component(ONE_TEST_EXEC_TMP ${ONE_TEST_CPP} NAME_WE)
string(REPLACE "Test" "" ONE_TEST_EXEC ${ONE_TEST_EXEC_TMP})
set(TARGET_NAME ${ONE_TEST_EXEC})
add_executable(${TARGET_NAME} ${ONE_TEST_CPP})
target_link_libraries(${TARGET_NAME} PRIVATE ${KHIVALIB} GTest::GTest GTest::Main ${CMAKE_THREAD_LIBS_INIT})
target_include_directories(${TARGET_NAME} PRIVATE ${INTERNAL_HEADERS_DIR})
set_target_properties(${TARGET_NAME} PROPERTIES FOLDER test)
gtest_discover_tests(${TARGET_NAME} AUTO
DISCOVER_TIMEOUT 10)
ENDFOREACH()
endforeach()

0 comments on commit a7d9f7d

Please sign in to comment.