2
0
mirror of https://github.com/boostorg/gil.git synced 2026-01-27 19:02:12 +00:00

17 Commits

Author SHA1 Message Date
René Ferdinand Rivera Morell
8fd5cc5b32 Add support for modular build structure. (#752)
* Make the library modular usable.

* Add missing modular build.jam. And fix gitignore that caused it to be originally deleted!

* Switch to library requirements instead of source. As source puts extra source in install targets.

* Add missing import-search for cconfig/predef checks.

* Add requires-b2 check to top-level build file.

* Bump B2 require to 5.2

* Update copyright dates.

* Move inter-lib dependencies to a project variable and into the build targets.

* Update build deps.
2024-08-20 15:03:19 +02:00
Mateusz Łoskot
f58f3a23a1 Disable warning: overlapping comparisons always evaluate to false [-Wtautological-overlap-compare] 2021-02-03 00:52:57 +01:00
Mateusz Łoskot
6007d74667 Fix some clang -Wunused-variable warnings 2021-01-28 22:43:31 +01:00
Samuel Debionne
601790f241 Replace Boost.Variant with Boost.Variant2 (#474)
* Update documentation
* Update example
* Update io and extensions
2020-04-17 19:25:19 +02:00
Mateusz Łoskot
b3f72cc1d6 Fix -Wsign-compare warning in uses of num_channels metafunction (#476) 2020-04-07 21:10:32 +02:00
Mateusz Łoskot
f6864ac6be Replace remain of boost::remove_reference with std::remove_reference [ci skip] 2020-04-07 01:55:09 +02:00
Mateusz Łoskot
dda885e5ff Replace Boost.Test with Boost.LightweightTest in test/ (#459)
Motivation is to:
- use on simpler and light test framework,
- eliminate dependency on libraries like Boost.MPL,
- achieve faster compilation times for CI builds (20% seems feasible)
- have test programs easy to run and debug
- avoid macros

Remove outdated FIXME-s for bugs that have been already fixed.
Fix off-by-one bug in test/core/test_fixture.hpp generators.
Minor corrections and tidying up.

Add missing test assertions to numeric extension tests.
Fixes #458
2020-03-21 22:53:09 +01:00
Mateusz Łoskot
331b9a8d6c Fix legacy test with workaround for MSVC++ 64-bit optimized build (#448)
Related to #447:
  It is not a fix but workaround based on #447 applied in order to
  avoid continuous failures of the checksum tests run by CI jobs.

Make related AppVeyor builds with MSVC++ no longer allowed to fail.
2020-03-19 23:01:43 +01:00
Thiago Henrique Hüpner
94cd5680c2 Prefixed macros with BOOST (#411)
Rename test suite of legacy tests to avoid confusing macro-like `GIL_` prefix.

This is source files only part of fix for #410
2019-12-17 11:43:16 +01:00
Mateusz Łoskot
4ed7701b47 Move tests of extensions inside test/ directory (#302)
Split header tests accordingly i.e. test core headers as part of
core tests, numeric extension headers as part of numeric tests, etc.

It extends the convention of sub-directories already established in
`include/boost/gil` directory. It is sensible to follow it in other
areas of the source tree (i.e. `test/`, `doc/` and `benchmark/`).

Another important reason to move the tests is to enable removal of
the top-level `Jamfile` with all its definitions of test-specific
requirements.
The top-level `Jamfile` is not advised, especially if it specifies
build requirements like C++ language version.
Those affect non-tests builds e.g. documentation, causing failures
during generation of HTML documentation (leads to missing docs).
2019-05-28 18:58:22 +02:00
Mateusz Łoskot
4dc3836449 [cmake] Rationalise names of tests vs targets 2019-05-23 01:15:44 +02:00
Mateusz Łoskot
10f1efff5b [cmake] Name targets of legacy tests with legacy_ prefix [ci skip] 2019-05-06 12:04:41 +02:00
Mateusz Łoskot
5611bd5807 Replace Boost.MPL with Boost.MP11 (#274)
Use type traits and features of C++11, then use Boost.MP11.
Remove unused and unnecessary metafunctions in `detail` namespace.
Remove explicit access to ::type as no longer necessary with MP11.
Clean up and reformat code according to the current guidelines.

Legacy tests have been updated where necessary to accommodate
switch to MP11.

Replace std::is_integral with gil::detail::is_channel_integral
Replacing boost::is_integral with std::is_integral is C++ UB:

    C++11 / 20.11.2 Header <type_traits> synopsis
    1 The behavior of a program that adds specializations for any
    of the class templates defined in this subclause is undefined
    unless otherwise specified.


Implements also proposal in #93
Closes #229
2019-04-14 22:13:45 +02:00
Mateusz Łoskot
a0c5eb3d35 [test] Fix CMake status message [ci skip] 2019-04-13 19:10:09 +02:00
Mateusz Łoskot
11e8fee5d4 Fix warning about unreferenced local variable 2019-03-21 09:43:28 +01:00
Nikita Kniazev
33d4ac05ae Use just ::value where is possible (#262)
The ::value member is common convention of all MPL and TypeTraits metafunctions.

Fixes VS2015 failures (#261)
2019-03-19 20:34:11 +01:00
Mateusz Łoskot
8e7bda62f5 Move GIL's original test suites to test/legacy/ (#239)
Document maintenance rules of `test/legacy/` content.

Motivation to move the `test/legacy/` is to:
* clarify status of those tests
* make it easier to run tests selectively
* separate new/upcoming feature-specific tests
  from those all-in-one tests.

Other changes:
Rename `gil_test_common.hpp` to `unit_test.hpp` to make
it clearer it acts as `boost/test/unit_test.hpp proxy`.
Remove `<include>$(BOOST_ROOT)` from `Jamfile`-s as unnecessary.
2019-02-20 19:03:28 +00:00