mirror of
https://github.com/boostorg/static_assert.git
synced 2025-06-28 05:21:04 +02:00
Compare commits
22 Commits
boost-1.73
...
master
Author | SHA1 | Date | |
---|---|---|---|
ba72d3340f | |||
803b983da7 | |||
392199f6b1 | |||
482e81cddd | |||
66db74297a | |||
e9ab97859d | |||
073c482606 | |||
8ab850a342 | |||
9102d74933 | |||
317f01fc58 | |||
b57860c33f | |||
ca94dbbc1a | |||
0a775cf1c5 | |||
944702b862 | |||
1aaabeb02b | |||
9064caf95f | |||
ad48daf3b2 | |||
c6b558f1f2 | |||
00724b8429 | |||
00a741184c | |||
f000d27cb2 | |||
a8597c46d5 |
31
.travis.yml
31
.travis.yml
@ -271,6 +271,37 @@ matrix:
|
||||
packages:
|
||||
- libc++-dev
|
||||
|
||||
- os: linux
|
||||
env: CMAKE=1
|
||||
script:
|
||||
- mkdir __build__ && cd __build__
|
||||
- cmake -DBUILD_TESTING=ON -DBOOST_INCLUDE_LIBRARIES=static_assert ..
|
||||
- cmake --build . --target tests
|
||||
- ctest --output-on-failure
|
||||
|
||||
- os: linux
|
||||
env: CMAKE_SUBDIR=1
|
||||
install:
|
||||
- BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
|
||||
- git clone -b $BOOST_BRANCH https://github.com/boostorg/config.git ../config
|
||||
script:
|
||||
- cd test/cmake_subdir_test && mkdir __build__ && cd __build__
|
||||
- cmake ..
|
||||
- cmake --build .
|
||||
- cmake --build . --target check
|
||||
|
||||
- os: linux
|
||||
env: CMAKE_INSTALL=1
|
||||
script:
|
||||
- pip install --user cmake
|
||||
- mkdir __build__ && cd __build__
|
||||
- cmake -DBOOST_INCLUDE_LIBRARIES=static_assert -DCMAKE_INSTALL_PREFIX=~/.local ..
|
||||
- cmake --build . --target install
|
||||
- cd ../libs/static_assert/test/cmake_install_test && mkdir __build__ && cd __build__
|
||||
- cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
|
||||
- cmake --build .
|
||||
- cmake --build . --target check
|
||||
|
||||
- os: osx
|
||||
compiler: clang++
|
||||
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
|
||||
|
@ -14,16 +14,15 @@ add_library(Boost::static_assert ALIAS boost_static_assert)
|
||||
target_include_directories(boost_static_assert INTERFACE include)
|
||||
|
||||
target_link_libraries(boost_static_assert
|
||||
INTERFACE
|
||||
Boost::config
|
||||
INTERFACE
|
||||
Boost::config
|
||||
)
|
||||
|
||||
# boost_install requires PROJECT_VERSION
|
||||
# Without the superproject, we don't have any, so skip installation
|
||||
# BUILD_TESTING is the standard CTest variable that enables testing
|
||||
|
||||
if(BOOST_SUPERPROJECT_VERSION)
|
||||
if(BUILD_TESTING)
|
||||
|
||||
include(BoostInstall)
|
||||
boost_install(TARGETS boost_static_assert HEADER_DIRECTORY include/)
|
||||
add_subdirectory(test)
|
||||
add_subdirectory(example)
|
||||
|
||||
endif()
|
||||
|
11
example/CMakeLists.txt
Normal file
11
example/CMakeLists.txt
Normal file
@ -0,0 +1,11 @@
|
||||
# Copyright 2018, 2019 Peter Dimov
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
|
||||
|
||||
include(BoostTestJamfile OPTIONAL RESULT_VARIABLE HAVE_BOOST_TEST)
|
||||
|
||||
if(HAVE_BOOST_TEST)
|
||||
|
||||
boost_test_jamfile(FILE Jamfile.v2 LINK_LIBRARIES Boost::static_assert Boost::type_traits)
|
||||
|
||||
endif()
|
@ -6,15 +6,6 @@
|
||||
# bring in the rules for testing
|
||||
import testing ;
|
||||
|
||||
test-suite static_assert :
|
||||
# [ run static_assert_example_1.cpp ]
|
||||
[ run static_assert_example_2.cpp ]
|
||||
[ run static_assert_example_3.cpp ]
|
||||
;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#run static_assert_example_1.cpp ;
|
||||
run static_assert_example_2.cpp ;
|
||||
run static_assert_example_3.cpp ;
|
||||
|
@ -16,6 +16,7 @@
|
||||
|
||||
#include <boost/config.hpp>
|
||||
#include <boost/detail/workaround.hpp>
|
||||
#include <cstddef> //for std::size_t
|
||||
|
||||
#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__)
|
||||
//
|
||||
@ -36,7 +37,7 @@
|
||||
# define BOOST_STATIC_ASSERT_MSG( B, Msg ) BOOST_STATIC_ASSERT( B )
|
||||
#endif
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
#ifdef BOOST_BORLANDC
|
||||
//
|
||||
// workaround for buggy integral-constant expression support:
|
||||
#define BOOST_BUGGY_INTEGRAL_CONSTANT_EXPRESSIONS
|
||||
@ -81,7 +82,7 @@ template <bool x> struct STATIC_ASSERTION_FAILURE;
|
||||
template <> struct STATIC_ASSERTION_FAILURE<true> { enum { value = 1 }; };
|
||||
|
||||
// HP aCC cannot deal with missing names for template value parameters
|
||||
template<int x> struct static_assert_test{};
|
||||
template<std::size_t x> struct static_assert_test{};
|
||||
|
||||
}
|
||||
|
||||
|
@ -12,5 +12,6 @@
|
||||
],
|
||||
"maintainers": [
|
||||
"John Maddock <john -at- johnmaddock.co.uk>"
|
||||
]
|
||||
],
|
||||
"cxxstd": "03"
|
||||
}
|
||||
|
11
test/CMakeLists.txt
Normal file
11
test/CMakeLists.txt
Normal file
@ -0,0 +1,11 @@
|
||||
# Copyright 2018, 2019 Peter Dimov
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
|
||||
|
||||
include(BoostTestJamfile OPTIONAL RESULT_VARIABLE HAVE_BOOST_TEST)
|
||||
|
||||
if(HAVE_BOOST_TEST)
|
||||
|
||||
boost_test_jamfile(FILE Jamfile.v2 LINK_LIBRARIES Boost::static_assert)
|
||||
|
||||
endif()
|
@ -6,25 +6,16 @@
|
||||
# bring in the rules for testing
|
||||
import testing ;
|
||||
|
||||
test-suite static_assert :
|
||||
[ run static_assert_test.cpp ]
|
||||
[ compile-fail static_assert_test_fail_1.cpp ]
|
||||
[ compile-fail static_assert_test_fail_2.cpp ]
|
||||
[ compile-fail static_assert_test_fail_3.cpp ]
|
||||
[ compile-fail static_assert_test_fail_4.cpp ]
|
||||
[ compile-fail static_assert_test_fail_5.cpp ]
|
||||
[ compile-fail static_assert_test_fail_6.cpp ]
|
||||
[ compile-fail static_assert_test_fail_7.cpp ]
|
||||
[ compile-fail static_assert_test_fail_8.cpp ]
|
||||
[ compile-fail static_assert_test_fail_9.cpp ]
|
||||
[ compile-fail static_assert_test_fail_10.cpp ]
|
||||
;
|
||||
run static_assert_test.cpp ;
|
||||
compile-fail static_assert_test_fail_1.cpp ;
|
||||
compile-fail static_assert_test_fail_2.cpp ;
|
||||
compile-fail static_assert_test_fail_3.cpp ;
|
||||
compile-fail static_assert_test_fail_4.cpp ;
|
||||
compile-fail static_assert_test_fail_5.cpp ;
|
||||
compile-fail static_assert_test_fail_6.cpp ;
|
||||
compile-fail static_assert_test_fail_7.cpp ;
|
||||
compile-fail static_assert_test_fail_8.cpp ;
|
||||
compile-fail static_assert_test_fail_9.cpp ;
|
||||
compile-fail static_assert_test_fail_10.cpp ;
|
||||
|
||||
build-project ../example ;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
17
test/cmake_install_test/CMakeLists.txt
Normal file
17
test/cmake_install_test/CMakeLists.txt
Normal file
@ -0,0 +1,17 @@
|
||||
# Copyright 2018, 2019 Peter Dimov
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
|
||||
|
||||
cmake_minimum_required(VERSION 3.5...3.16)
|
||||
|
||||
project(cmake_install_test LANGUAGES CXX)
|
||||
|
||||
find_package(boost_static_assert REQUIRED)
|
||||
|
||||
add_executable(main main.cpp)
|
||||
target_link_libraries(main Boost::static_assert)
|
||||
|
||||
enable_testing()
|
||||
add_test(NAME main COMMAND main)
|
||||
|
||||
add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -C $<CONFIG>)
|
7
test/cmake_install_test/main.cpp
Normal file
7
test/cmake_install_test/main.cpp
Normal file
@ -0,0 +1,7 @@
|
||||
#include <boost/static_assert.hpp>
|
||||
|
||||
int main()
|
||||
{
|
||||
int const x = 5;
|
||||
BOOST_STATIC_ASSERT( x > 4 );
|
||||
}
|
18
test/cmake_subdir_test/CMakeLists.txt
Normal file
18
test/cmake_subdir_test/CMakeLists.txt
Normal file
@ -0,0 +1,18 @@
|
||||
# Copyright 2018, 2019 Peter Dimov
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
|
||||
|
||||
cmake_minimum_required(VERSION 3.5...3.16)
|
||||
|
||||
project(cmake_subdir_test LANGUAGES CXX)
|
||||
|
||||
add_subdirectory(../../../static_assert boostorg/static_assert)
|
||||
add_subdirectory(../../../config boostorg/config)
|
||||
|
||||
add_executable(main main.cpp)
|
||||
target_link_libraries(main Boost::static_assert)
|
||||
|
||||
enable_testing()
|
||||
add_test(NAME main COMMAND main)
|
||||
|
||||
add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -C $<CONFIG>)
|
7
test/cmake_subdir_test/main.cpp
Normal file
7
test/cmake_subdir_test/main.cpp
Normal file
@ -0,0 +1,7 @@
|
||||
#include <boost/static_assert.hpp>
|
||||
|
||||
int main()
|
||||
{
|
||||
int const x = 5;
|
||||
BOOST_STATIC_ASSERT( x > 4 );
|
||||
}
|
Reference in New Issue
Block a user