Commit Graph

38 Commits

Author SHA1 Message Date
Mateusz Łoskot
d86e4a4dec
Bump Sphinx version from 1.7.9 to 2.1 (#346)
Fixes #345
2019-07-22 01:49:47 +02:00
Mateusz Łoskot
24468697f5
[travis] Dump version of installed Sphinx 2019-07-22 00:20:11 +02:00
Mateusz Łoskot
3d6deaeff8
Restore running of legacy tests on Travis CI and AppVeyor (#308)
Remove .ci/build-and-test.sh as unused (commands moved to.travis.yml).
2019-06-05 22:50:36 +02:00
Mateusz Łoskot
e56761e670
[travis] Add explicit dist:xenial [skip appveyor]
As tests seem to confirm, Travis may build forks auto-selecting
Xenial or Trusty. For example, Xenial for boostorg/gil and
Trusty for mloskot/gil.

[skip azp]
2019-05-23 12:54:47 +02:00
Mateusz Łoskot
d0cb17adef
[travis] Remove llvm-toolchain-trusty-6.0 source [skip appveyor]
Packages clang-6.0 (and 4.0 and 5.0) are available from Xenial's
default Apt package sources.

[skip azp]
2019-05-23 12:15:10 +02:00
Mateusz Łoskot
99f813846a
[travis] Replace clang 5.0 with 6.0 for UBSAN builds [skip appveyor]
[skip azp]
2019-05-23 10:16:51 +02:00
Mateusz Łoskot
c11a19880c
[CI] Rationalize deployment of Boost dependencies (#279)
Introduce `get-boost.sh` as Boost downloader for all our CI services.
Closes #276

Credits for `get-boost.sh` idea go to @djarek and @boostorg/beast
2019-04-13 11:51:26 +02:00
Mateusz Łoskot
7e3825d362
[travis] Update libstdcxx for clang build jobs (#267)
[skip appveyor]
[skip azp]
2019-03-22 22:15:45 +01:00
Mateusz Łoskot
9207ffc52a
Use Boost.Build 'cxxstd' feature instead of '-std' compiler flag (#266)
The cxxstd=11,14,17,... is the recommended way, announced here
https://lists.boost.org/Archives/boost/2017/10/239485.php
2019-03-22 08:16:11 +01:00
Mateusz Łoskot
1541d5cf8a
Add test for pixels_are_compatible metafunction (#245) 2019-02-26 22:14:34 +01:00
Mateusz Łoskot
5f241af90d
[ci] Ensure CI builds clone pre-determined super-project branch
Rename custom variant with gil_ prefix.
Do not define project ID from Jamfile-s as unnecessary.
The project ID-s and build features are global resources, easy to clash.

Add recently added test/ subdirectories to build.
2019-02-19 18:21:28 +01:00
Samuel Debionne
2308a1a85a Use Boost.Variant instead of GIL's own variant implementation (#231)
Adds support C++11 decltype(auto)

Fixes #131
2019-02-05 00:47:08 +00:00
Mateusz Loskot
da6acc6cca
Remove uses of Boost.Function (#213)
Remove uses of boost::mem_fn (missing from Bind.Bind removal in #212).
2019-01-13 06:32:20 +01:00
Mateusz Loskot
78b7dcfeca
Remove uses of Boost.Bind and Boost.Lambda (#212)
Replace with std::bind and C++11 lambda functions.
The two Boost libraries should no longer be a direct
dependency of Boost.GIL.
2019-01-13 02:03:25 +01:00
Mateusz Loskot
f578a8be9c
Replace assert() macro with BOOST_ASSERT() macro (#208)
Add #include <boost/assert.hpp> where necessary.
Apply minor clean-up near the macro replacements.

Closes #96
2019-01-12 10:21:01 +01:00
Mateusz Loskot
6e3ccc00b1
Remove dependency on Boost.StaticAssert (#207)
Replaced BOOST_STATIC_ASSERT with C++11 binary static_assert,
with empty message.

In future, this should make it possible to automatically refactor
into C++17 unary static_assert using clang-tidy and
its modernize-unary-static-assert check.

Closes #106
2019-01-11 10:33:09 +01:00
Mateusz Łoskot
602d51d05a
Follow up feature/cmake-config merged to boostorg/boost develop
Details at https://lists.boost.org/Archives/boost/2018/12/244697.php
2018-12-18 22:47:26 +01:00
Mateusz Loskot
e3912d81c4
[travis] Switch Boost super-project to develop branch [skip appveyor] (#161)
Currently, we are experiencing UBSan builds failures due to issues in
Boost.Function version attached to Boost super-project.
Build UBSan with b2 visibility=global instead of default hidden.

Detailed discussions at:
- https://github.com/boostorg/function/pull/29
- https://lists.boost.org/boost-gil/2018/10/0100.php

Note, we are switching temporarily and we should switch back to
testing against Boost super-project master branch
- a stable Boost version closest to the next release state.
2018-10-23 21:51:51 +02:00
Mateusz Łoskot
9dc67eae1d
Add test to verify headers are self-contained
For each header, a translation unit is generated along with
corresponding compile target.
Currently, only boost/gil/*.hpp and boost/gil/io/* headres are included.

On CI services, compile self_contained_headers targets only if
TEST_HEADERS environment variable is set. This is to avoid build
timeouts due to CI services limits.
When running b2 locally, the tests are compiled by default.
2018-10-05 18:11:08 +02:00
Mateusz Łoskot
275b12ccff
[travis] Force installation of Sphinx 1.7.9 due to bug in 1.8.0
Fixes #136
2018-09-19 11:38:52 +02:00
Stefan Seefeld
51cf617c63 Fix 'raw' IO extension. 2018-07-15 20:37:06 -04:00
Mateusz Łoskot
e0ef163d2b [travis] Allow failures for variant=ubsan_integer
Currently, UBSan integer checks report several false positives due to
unsigned integer overflows (well-defined).
Instead of hiding them completely, keep them displayed on the matrix
until we decide how to handle. For example, there may be some issues
regarding size of unsigned type used, etc.

Sort variant=ubsan_* jobs.
2018-06-27 00:02:27 -04:00
Mateusz Łoskot
e4322aa094 Remove dependency on Boost.SmartPtr
Replace boost::shared_ptr with C++11 std::shared_ptr.
2018-06-27 00:02:27 -04:00
Mateusz Łoskot
a435900b34 Remove dependency on boost::lexical_cast
Replace lexical_cast with C++11 std::to_string function.
2018-06-27 00:02:27 -04:00
Mateusz Łoskot
8e1db33826 Remove dependency on boost::array
Replace boost::array with C++11 std::array.
2018-06-27 00:02:27 -04:00
Mateusz Łoskot
3d311c68e3 [appveyor] List required Boost libraries explicitly
Group list of deps for easy identification of direct ones.
Add --quiet option to git submodule commands on Travis CI.
2018-06-27 00:02:27 -04:00
Mateusz Łoskot
550be8fd32 [travis] Group list of deps for easy identification of direct ones [ci skip] 2018-06-27 00:02:27 -04:00
Mateusz Łoskot
2c5e0d227d [travis] List required Boost libraries explicitly [skip appveyor]
tools/boostdep/depinst/depinst.py helper automatically calculates
maximum set of required Boost libraries, based on #include-s.

Manual listing should help to control any new additions
and prevent introduction of unwanted dependencies.
2018-06-27 00:02:27 -04:00
Mateusz Łoskot
189889e39f Add Boost.Build variants for UBSan-enabled builds
The build variants enable group of checks offered by clang
UndefinedBehaviorSanitizer detector.

Add sanitizers suppression file in .ci/blacklist.supp based on
copy of the file from Boost.Beast.

Update Travis CI:
  - Add .ci/build-and-test.sh script as handy proxy for b2 command.
  - Add build jobs for each of the three new UBSan variants.
  - Display COMPILER and VARIANT first as these two are most important
    details while inspecting the build matrix
    (TOOLSET can be derived from COMPILER).
2018-06-27 00:02:27 -04:00
Stefan Seefeld
465a9ec635 Install a more recent sphinx. 2018-06-27 00:02:27 -04:00
Stefan Seefeld
22c82514dc Update documentation. 2018-06-27 00:02:27 -04:00
Mateusz Loskot
97efee04ee [travis] Remove allow_failures specification
All Travis CI builds succeed, no reason to allow any to fail.
2018-06-27 00:02:27 -04:00
Mateusz Loskot
774e5b15ab Add variant=release to Travis CI builds of tests
Add build jobs for GCC and clang versions.
2018-06-27 00:02:27 -04:00
Mateusz Loskot
01c2f5355a Add Gitter webhook notifications for Travis CI and AppVeyor 2018-06-27 00:02:27 -04:00
Stefan Seefeld
f6afce0f7c Add numeric tests. 2018-06-27 00:02:27 -04:00
Stefan Seefeld
8096158c92 Split off 'simple' IO test and use it in CI testing. 2018-06-27 00:02:27 -04:00
Stefan Seefeld
8c9908058e Enable extended testing in CI environment. 2018-06-27 00:02:27 -04:00
Peter Dimov
e298cfb715 Add .travis.yml 2017-06-27 21:36:01 -04:00