fabscript 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. # -*- python -*-
  2. #
  3. # Copyright (c) 2017 Stefan Seefeld
  4. # All rights reserved.
  5. #
  6. # Distributed under the Boost Software License, Version 1.0.
  7. # (See accompanying file LICENSE_1_0.txt or copy at
  8. # http://www.boost.org/LICENSE_1_0.txt)
  9. from faber import platform
  10. from faber.feature import set
  11. from faber.tools.compiler import define, libs, linkpath
  12. from faber.artefacts.binary import binary
  13. from faber.test import test, report, fail
  14. from os.path import join
  15. boost_suffix = options.get_with('boost-suffix')
  16. boost_suffix = '-' + boost_suffix if boost_suffix else ''
  17. boost_unit_test_framework = 'boost_unit_test_framework' + boost_suffix
  18. boost_filesystem = 'boost_filesystem' + boost_suffix
  19. boost_system = 'boost_system' + boost_suffix
  20. test_features = set(define('BOOST_TEST_DYN_LINK'),
  21. libs(boost_unit_test_framework,
  22. boost_system,
  23. boost_filesystem))
  24. def gil_test(name, sources, features, condition=True):
  25. return test(name, binary(name, sources, features=features, condition=condition))
  26. # TODO: Add `subchroma_image.cpp` after fixing run-time failure,
  27. # for details see https://github.com/boostorg/gil/pull/164
  28. tests = [gil_test('toolbox',
  29. ['test.cpp', 'channel_type.cpp', 'channel_view.cpp', 'cmyka.cpp',
  30. 'get_num_bits.cpp', 'get_pixel_type.cpp', 'gray_alpha.cpp', 'gray_to_rgba.cpp',
  31. 'hsl_hsv_test.cpp', 'indexed_image_test.cpp', 'is_bit_aligned.cpp',
  32. 'is_homogeneous.cpp', 'is_similar.cpp', 'lab_test.cpp', 'pixel_bit_size.cpp',
  33. 'rgb_to_luminance.cpp', 'xyz_test.cpp'],
  34. features=test_features),
  35. ]
  36. default = report('report', tests, fail_on_failures=True)