Laurent Rineau
ec1dd745e0
Remove cpp11::(tuple|get)
...
And use `#ifdef CGAL_NO_DEPRECATED_CODE` around the backward
compatibility code in `<CGAL/config.h>`.
2020-06-09 20:11:45 +02:00
Laurent Rineau
9b8ecd720b
Merge pull request #4636 from sgiraudot/CMake-Third_party_imported_targets-GF
...
CMake: Use Imported Targets for 3rd Party Libs
2020-06-05 17:54:14 +02:00
Laurent Rineau
a828cb0d06
Merge pull request #4620 from janetournois/Tetrahedral_remeshing-new-jtournois
...
Tetrahedral remeshing - new package
2020-06-03 16:23:17 +02:00
Maxime Gimeno
4af1e73f69
Work around for moc bug
2020-06-02 10:12:10 +02:00
Jane Tournois
b6912d92ea
fix warnings
...
- move #define a better location
- conversion double/size_t
- unused parameters
- automatic conversion int/boolean
2020-05-15 13:54:19 +02:00
Jane Tournois
3d5fc5c1ca
silent warning "STL4009: std::allocator<void> is deprecated in C++17."
...
from boost-1_71\boost/bimap/detail/manage_additional_parameters.hpp(86):
warning C4996: 'std::allocator<void>': warning STL4009: std::allocator<void>
is deprecated in C++17.
You can define _SILENCE_CXX17_ALLOCATOR_VOID_DEPRECATION_WARNING or
_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS
to acknowledge that you have received this warning.
see https://github.com/boostorg/beast/issues/1272
it seems that this warning is an error in msvc
2020-05-14 13:51:41 +02:00
Mael Rouxel-Labbé
01d5e5f2b8
Add CGAL_NO_UNIQUE_ADDRESS
2020-05-12 12:53:59 +02:00
Sébastien Loriot
590612a563
run the script to remove tabs and trailing whitespaces
2020-03-26 13:25:16 +01:00
Laurent Rineau
0dfd416395
Use [[noreturn]] directly
2020-03-06 09:26:54 +01:00
Sébastien Loriot
52164b1fba
First pass on removing license notice in header for LGPL files
2019-10-19 15:40:30 +02:00
Sébastien Loriot
7356421d80
introduce Commercial license SPDX tag
2019-10-19 12:15:19 +02:00
Sébastien Loriot
9bd9c68b83
update LGPL[23]+ and GPL[23]+ SPDX tags
...
ack -l --no-svg "SPDX-License-Identifier: GPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-3.0+/SPDX-License-Identifier: GPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-3.0+/SPDX-License-Identifier: LGPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: GPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-2.0+/SPDX-License-Identifier: GPL-2.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-2.0+/SPDX-License-Identifier: LGPL-2.0-or-later/"
2019-10-18 21:57:54 +02:00
Laurent Rineau
47fcaf3d47
Merge pull request #4265 from lrineau/CGAL-really_header_only-GF
...
Do not require -DCGAL_HEADER_ONLY
2019-10-15 16:34:09 +02:00
Laurent Rineau
119055d688
Merge pull request #4281 from sloriot/CGAL-default_endian
...
Add a way to define a default endianness
2019-10-15 16:31:39 +02:00
Laurent Rineau
b6a935c3cf
Merge pull request #4292 from maxGimeno/CGAL_Config-Fix_typo-maxGimeno
...
Remove extra S in macro
2019-10-15 16:31:24 +02:00
Maxime Gimeno
856b7722f1
Remove extra S in macro
2019-10-15 09:03:13 +02:00
Laurent Rineau
9c67734dcc
Push the `#define CGAL_HEADER_ONLY` at the top
2019-10-11 12:02:25 +02:00
Laurent Rineau
e872e74654
Refactor the code
2019-10-10 17:59:46 +02:00
Sébastien Loriot
2f1ab3a86d
rename macro
2019-10-10 14:45:42 +02:00
Sébastien Loriot
66e3b216be
add a way to define a default endian
2019-10-10 13:00:33 +02:00
Laurent Rineau
779ef144fe
Do not require -DCGAL_HEADER_ONLY
...
Now, that macro is set unless `CGAL_NOT_HEADER_ONLY` is 1.
2019-10-01 18:10:30 +02:00
Sébastien Loriot
983645a51a
match @{ and @}
2019-07-05 21:49:46 +02:00
Laurent Rineau
2a5b558eb5
Merge branch 'master' into NewKernel_d-lazy_Epeck_d-glisse
2019-06-20 10:28:01 +02:00
Andreas Fabri
4581f1b7a8
Morte replacements
2019-06-05 08:39:55 +02:00
Andreas Fabri
5532b84b4f
nullptr_t -> std::nullptr_t
2019-06-05 07:28:56 +02:00
Maxime Gimeno
78db3f646d
Solve conflicts
2019-04-09 10:04:44 +02:00
Laurent Rineau
3a32f3f3ef
Restore CGAL::cpp11 temporarily
...
This reverts commit 04978d8aae .
2019-04-01 18:27:35 +02:00
Andreas Fabri
b84f54a9e3
Do not define the macro CGAL_CFG_NO_CPP0X_DELETED_AND_DEFAULT_FUNCTIONS for VC2013 as suggested in Issue #3436
2019-02-08 09:46:18 +01:00
Marc Glisse
34cbb9cd4b
Make Epeck_d work & C++14-only cleanups
...
Still some rough edges:
1) double tab[]={.1,.2,.3}; Point_d p(tab+0,tab+3); lazily stores
iterators to tab, so tab had better still be alive when we need
update_exact.
2) One functor (point on a sphere) cannot be done exactly exactly with
a representation center+squared radius.
3) Several hacks that make this not as generic as it should be.
2019-02-03 23:16:28 +01:00
Laurent Rineau
c68cf8fc4c
Merge pull request #3129 from sgiraudot/Point_set_processing-Callbacks-GF
...
Point Set Processing: Callbacks
2018-06-27 10:21:40 +02:00
Simon Giraudot
24ac59a01c
Avoid using std::unordered_set for MSVC2013 as performances can be very bad
...
See: https://medium.com/plaxis/embarrassingly-poor-performance-of-regular-point-sets-with-std-unordered-set-418cb413974b
2018-06-21 16:11:03 +02:00
Simon Giraudot
6480cf2205
Define a CGAL::cpp11::thread wrapper for TBB or STD
2018-05-29 11:42:04 +02:00
Laurent Rineau
01ab4856b0
Set BOOST_PARAMETER_MAX_ARITY very early
2018-05-15 14:56:21 +02:00
Laurent Rineau
5fea3c3eb1
Add CGAL_CXX14
...
and remove uses of `__cplusplus` that are not in `<CGAL/config.h>`.
2018-04-17 17:15:04 +02:00
Andreas Fabri
303b0ab46e
Fix detection of CGAL_CXX11 for VC++ and fixes of usage of std::allocator_traits
2018-04-16 11:00:03 +01:00
Sébastien Loriot
01af331c72
use https for all links to www.cgal.org and doc.cgal.org
2018-03-14 15:59:38 +01:00
Andreas Fabri
bcbbf35dad
Define CGAL_NORETURN also for VC++ and move the macro before the functions
2018-02-14 14:51:40 +00:00
Laurent Rineau
4b3244384f
Merge pull request #2695 from sgiraudot/Point_set_shape_detection-Introducing_callbacks-GF
...
Shape Detection: Add Callback Mechanism
2018-01-17 10:42:41 +01:00
Laurent Rineau
e8fca04385
Merge pull request #2691 from lrineau/Installation-fix_Boost_thread_required_or_not-GF
...
Installation: fix the detection of C++11 and the need for Boost Thread
2018-01-17 10:42:09 +01:00
Simon Giraudot
d1179b5b04
Add cpp11::function (using either std::function or boost::function)
2018-01-12 09:54:14 +01:00
Laurent Rineau
fa9f256781
Fix the use of __has_cpp_attribute
...
When =std=c++03 is used, `__has_cpp_attribute(something)` still returns
non-zero for valid C++11 attributes.
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81513
2018-01-04 11:47:13 +01:00
Laurent Rineau
e80136e750
Merge branch 'master' into Aos_2-surface_sweep-efif
2017-12-07 15:00:47 +01:00
Efi Fogel
f1483cfa25
Merge branch 'Aos_2-surface_sweep-efif-old' into Aos_2-surface_sweep-efif
...
Merging Sebastien's fix to the surface-sweep cod.
Also, replaced all occurrences of '_SL_' with '_SS_'.
2017-12-07 15:56:00 +02:00
Laurent Rineau
777717ba7e
Move config/ to cmake/modules/config/
...
That way, the directory will be installed along with CMake modules.
2017-12-06 12:53:05 +01:00
Laurent Rineau
3c6640bf59
Merge pull request #1436 from lrineau/CGAL-new_cmake-GF
...
Renewal of CMake scripts: header-only, ctest, CMake>=3.1
# Conflicts:
# Installation/config/testfiles/CGAL_CFG_NESTED_CLASS_FRIEND_DECLARATION_BUG.cpp
2017-12-05 18:20:05 +01:00
Laurent Rineau
28bd89af65
Fix a stupid typo
2017-11-28 10:24:13 +01:00
Laurent Rineau
9eb2e30745
Deal with the macro CGAL_TEST_SUITE in header-only
2017-11-23 17:06:46 +01:00
Laurent Rineau
a2a5ca91a1
Unify CGAL_HEADER_ONLY and CGAL_HEADER_ONLY_STEP_2
2017-11-23 17:06:46 +01:00
Efi Fogel
7936109c6c
Merge branch 'Aos_2-surface_sweep-efif-old' into Aos_2-surface_sweep-efif
...
Conflicts:
.travis.yml
.travis/packages.txt
Arrangement_on_surface_2/include/CGAL/Arr_batched_point_location.h
Arrangement_on_surface_2/include/CGAL/Arr_bounded_planar_topology_traits_2.h
Arrangement_on_surface_2/include/CGAL/Arr_default_overlay_traits.h
Arrangement_on_surface_2/include/CGAL/Arr_overlay_2.h
Arrangement_on_surface_2/include/CGAL/Arr_spherical_topology_traits_2.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_bounded_planar_batched_pl_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_bounded_planar_construction_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_bounded_planar_insertion_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_bounded_planar_overlay_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_bounded_planar_topology_traits_2_impl.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_bounded_planar_vert_decomp_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_planar_topology_traits_base_2.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_spherical_batched_pl_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_spherical_construction_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_spherical_insertion_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_spherical_overlay_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_spherical_vert_decomp_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_unb_planar_batched_pl_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_unb_planar_construction_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_unb_planar_insertion_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_unb_planar_overlay_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_unb_planar_topology_traits_2_impl.h
Arrangement_on_surface_2/include/CGAL/Arr_topology_traits/Arr_unb_planar_vert_decomp_helper.h
Arrangement_on_surface_2/include/CGAL/Arr_unb_planar_topology_traits_2.h
Arrangement_on_surface_2/include/CGAL/Arr_vertical_decomposition_2.h
Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arr_default_planar_topology.h
Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_on_surface_2_global.h
Arrangement_on_surface_2/include/CGAL/Arrangement_2/Arrangement_on_surface_2_impl.h
Arrangement_on_surface_2/include/CGAL/Surface_sweep_2/Arr_basic_insertion_traits_2.h
Arrangement_on_surface_2/include/CGAL/Surface_sweep_2/Arr_batched_pl_ss_visitor.h
Arrangement_on_surface_2/include/CGAL/Surface_sweep_2/Arr_construction_ss_visitor.h
Arrangement_on_surface_2/include/CGAL/Surface_sweep_2/Arr_default_overlay_traits_base.h
Arrangement_on_surface_2/include/CGAL/Surface_sweep_2/Arr_insertion_traits_2.h
Arrangement_on_surface_2/include/CGAL/Surface_sweep_2/Arr_no_intersection_insertion_ss_visitor.h
Arrangement_on_surface_2/include/CGAL/Surface_sweep_2/Arr_overlay_ss_visitor.h
Arrangement_on_surface_2/include/CGAL/Surface_sweep_2/Arr_overlay_subcurve.h
Arrangement_on_surface_2/include/CGAL/Surface_sweep_2/Arr_overlay_traits_2.h
Arrangement_on_surface_2/include/CGAL/Surface_sweep_2/Arr_vert_decomp_ss_visitor.h
Boolean_set_operations_2/include/CGAL/Boolean_set_operations_2/Gps_agg_meta_traits.h
Boolean_set_operations_2/include/CGAL/Boolean_set_operations_2/Gps_agg_op.h
Boolean_set_operations_2/include/CGAL/Boolean_set_operations_2/Gps_agg_op_sweep.h
Boolean_set_operations_2/include/CGAL/Boolean_set_operations_2/Gps_agg_op_visitor.h
Boolean_set_operations_2/include/CGAL/Boolean_set_operations_2/Gps_polygon_simplifier.h
Boolean_set_operations_2/include/CGAL/Boolean_set_operations_2/Gps_polygon_validation.h
CGAL_ipelets/demo/CGAL_ipelets/arrangement.cpp
Documentation/doc/Documentation/dependencies
Installation/include/CGAL/config.h
Snap_rounding_2/include/CGAL/Snap_rounding_2.h
Surface_sweep_2/examples/Surface_sweep_2/CMakeLists.txt
Surface_sweep_2/include/CGAL/Surface_sweep_2/No_intersection_surface_sweep_2_impl.h
Surface_sweep_2/include/CGAL/Surface_sweep_2/No_overlap_event_base.h
Surface_sweep_2/include/CGAL/Surface_sweep_2/Surface_sweep_2_utils.h
Surface_sweep_2/include/CGAL/Surface_sweep_2_algorithms.h
Sweep_line_2/include/CGAL/Sweep_line_2/Arr_construction_event.h
Sweep_line_2/include/CGAL/Sweep_line_2/Arr_construction_subcurve.h
Sweep_line_2/include/CGAL/Sweep_line_2/Arr_insertion_sl_visitor.h
Sweep_line_2/include/CGAL/Sweep_line_2/Sweep_line_2_visitors.h
Sweep_line_2/include/CGAL/Sweep_line_2/Sweep_line_curve_pair.h
Sweep_line_2/include/CGAL/Sweep_line_2/Sweep_line_functors.h
Sweep_line_2/include/CGAL/Sweep_line_2/Sweep_line_subcurve.h
Sweep_line_2/include/CGAL/Sweep_line_empty_visitor.h
2017-11-16 16:31:52 +02:00
Laurent Rineau
c6068691fa
Merge pull request #2547 from lrineau/CMake-parse_CTest_XML_output-lrineau
...
CGAL testsuite implemented with CTest plus Python (part.1)
2017-11-13 11:13:54 +01:00
Sébastien Loriot
0698f79aff
add SPDX identifier for files under the LGPL-3+ license
2017-11-12 10:17:50 +01:00
Laurent Rineau
05a3370ad3
Rename to <CGAL/functional.h>
2017-10-04 16:32:11 +02:00
Laurent Rineau
7e9f756935
Replace all std::unary_function by CGAL::unary_function
2017-10-04 15:57:09 +02:00
Andreas Fabri
2c2e26f07e
Include CGAL/unary_function.h
2017-10-04 13:36:00 +01:00
Laurent Rineau
931a0a2689
second fix for: Add hack in config.h for boost detection of CXX11 features with ICC
2017-07-11 11:59:40 +02:00
Laurent Rineau
33871eac4b
fix: "Add hack in config.h for boost detection of CXX11 features with ICC"
...
We have to check `__GXX_EXPERIMENTAL_CXX0X__`.
The issue in Boost-1.53 is that the other macro
`__GXX_EXPERIMENTAL_CPP0X__` is checked instead.
2017-07-11 11:59:39 +02:00
Simon Giraudot
6bc9fb5852
Add hack in config.h for boost detection of CXX11 features with ICC
2017-07-11 11:59:18 +02:00
Efi Fogel
d10ed5ad2c
Introduced CGAL_CFG_NO_CPP0X_TEMPLATE_ALIASES and used it
2017-07-10 12:29:17 +03:00
Laurent Rineau
b0336e6558
Workaround for https://svn.boost.org/trac10/ticket/12534
...
That is a workaround for the bug about the partial specialization of
boost::is_enum<std::pair<T, U> >
being too late.
The bug has been in Boost-1.62 only. For that version (currently the
default version in Debian-testing), we include a header from Boost
container as soon as possible: in `<CGAL/config.h>`.
2017-07-07 11:23:21 +02:00
Laurent Rineau
718512a7ba
Handle <CGAL/compiler_config.h> for MSVC
...
Actually, in our testsuite results, no other compiler has any bug
detected by the `CGAL_CFG*BUG` macros.
2017-03-27 18:04:53 +02:00
Laurent Rineau
1f3ba3c7ab
Improvements to CGAL_HEADER_ONLY
...
- Now `<CGAL/compiler_config.h>` is no longer used.
- GMP and MPFR are assumed.
- `<CGAL/version.h>` is in the distribution.
2017-03-27 18:04:52 +02:00
Andreas Fabri
8186bf41ae
Fix CGAL_pragma_warning for Visual C++
2017-03-22 14:50:47 +01:00
Simon Giraudot
1385d5fc9b
Add macros with old versions of boost
2017-02-27 14:21:20 +01:00
Simon Giraudot
6525d58fbf
Fix error (removed lines by mistake) in config.h
2017-02-27 10:03:51 +01:00
Simon Giraudot
588c8634b9
Add CGAL::cpp11::unordered_set/map using boost or std
2017-02-27 09:56:54 +01:00
Laurent Rineau
680210cab5
Improvements
...
- move `CGAL_WARNING` in `<CGAL/config.h>`,
- create the macro `CGAL_pragma_warning`,
- use `CGAL_pragma_warning` to simplify `<CGAL/license/lgpl.h>` and
`<CGAL/license/gpl.h.in>`.
- add messages in `include/CGAL/license/generate_files.cmake`
- add test files, that do nothing but can be modified to check errors
and warning.
2017-01-19 15:20:23 +01:00
Marc Glisse
c58d0c319a
Allow CGAL_EIGEN3_DISABLED to disable auto-detection of Eigen3.
2016-11-07 21:46:10 +01:00
Marc Glisse
933cb0f14a
If we detect that Eigen3 is present, enable it.
2016-11-04 16:22:52 +01:00
Laurent Rineau
08126075a7
Merge pull request #1582 from afabri/Circular_kernel_2-ICL_variant_bug-GF
...
Circular_kernel_2: Add a dummy field to the variant to work around an ICL bug
2016-10-20 09:47:35 +02:00
Andreas Fabri
eb64523536
Make the additional type a maco. Add operator(int) for a visitor
2016-10-18 16:03:40 +02:00
Laurent Rineau
78c8179ae6
Fix for clang
...
With clang, at least with older version like 3.5,
`__has_attribute(fallthrough)` is true but the syntax
__attribute__(fallthrough)
is not recognized.
2016-10-17 13:45:42 +02:00
Laurent Rineau
5df371c0c1
Oops!
2016-10-17 13:45:42 +02:00
Laurent Rineau
90aa157c7b
Conditional definition of CGAL_FALLTHROUGH
2016-10-17 13:45:42 +02:00
Andreas Fabri
0cf03af615
Preliminary support for adressing the -Wimplicit-fallthrough warning
2016-10-17 13:45:42 +02:00
Laurent Rineau
f2205ee9da
Merge pull request #1128 from maxGimeno/Fix_for_1127-GF
...
Add a macro to customize deprecation warnings
2016-10-17 10:01:40 +02:00
Laurent Rineau
451577719c
Merge pull request #1542 from lrineau/Installation-fix_CGAL_SetupBoostlrineau
...
try_run to detect the C++ version
2016-10-07 14:38:22 +02:00
Laurent Rineau
95f3b09de3
Use the same test as in <CGAL/config.h>
2016-10-05 10:14:53 +02:00
Marc Glisse
942f13c26b
Update list of boost headers that break Qt4 moc.
2016-09-30 11:12:19 +02:00
Laurent Rineau
1ec30bd830
Merge branch 'releases/CGAL-4.8-branch'
...
This merge imports:
> Merge pull request #1304 from sloriot/Installation-remove_config_test
2016-07-27 16:18:33 +02:00
Sébastien Loriot
98121af143
replace library compile time test
2016-07-26 11:58:03 +02:00
Maxime Gimeno
dc797391a3
Fix macro mithout argument.
2016-07-13 10:27:24 +02:00
Clement Jamin
280036e488
Fix CGAL_DEPRECATED_UNUSED definition
2016-07-01 16:54:58 +02:00
Guillaume Damiand
d544f4a5f7
Remove the unused variable warning for the deprecated variable default_random.
2016-06-03 18:11:34 +02:00
Maxime Gimeno
1a76a04931
Add a macro to customize deprecation warnings.
2016-06-02 15:45:20 +02:00
Clement Jamin
fd1b4889f0
Disable auto-link when using header-only CGAL
2016-03-09 10:20:05 +01:00
Sebastien Loriot
6c88ccaeab
Merge pull request #663 from afabri/CGAL-rename_cfg-GF
...
Fix macro name
2016-01-25 08:45:38 +01:00
Sébastien Loriot
551b3fa24d
Merge remote-tracking branch 'cgal/releases/CGAL-4.7-branch' into HEAD
2016-01-25 08:29:55 +01:00
Laurent Rineau
235b601b73
Fix a bug in Boost.Config<1.57 with gcc>=5.0
...
`BOOST_HAS_VARIADIC_TMPL` and `BOOST_NO_CXX11_VARIADIC_TEMPLATES` can be
wrong, with Boost-1.57 and gcc>=5.0.
Fixes the following warnings with gcc>=5.0 in C++98 mode:
> CGAL-4.8-Ic-106/include/CGAL/array.h:78:31: warning: variadic templates only available with -std=c++11 or -std=gnu++11
> template< typename T, typename... Args >
> ^
> CGAL-4.8-Ic-106/include/CGAL/array.h:80:28: warning: variadic templates only available with -std=c++11 or -std=gnu++11
> cpp11::array< T, 1 + sizeof...(Args) >
> ^
> CGAL-4.8-Ic-106/include/CGAL/array.h:81:42: warning: variadic templates only available with -std=c++11 or -std=gnu++11
> make_array(const T & t, const Args & ... args)
> ^
2016-01-25 08:28:06 +01:00
Andreas Fabri
567f027484
Fix macro name
2016-01-21 11:32:48 +01:00
Sebastien Loriot
155dba5e96
Merge pull request #641 from lrineau/Installation-do_not_use_deprecated_macros_from_Boost_Config-lrineau
...
Boost.Config: check both deprecated name and new names (Boost>=1.50)
2016-01-21 09:25:57 +01:00
Sebastien Loriot
a5ab3281d5
Merge pull request #642 from lrineau/Install-add_CGAL_CAN_USE_CXX11_ATOMIC-lrineau
...
Add <CGAL/atomic.h> and CGAL_CAN_USE_CXX11_ATOMIC
2016-01-21 09:25:39 +01:00
Laurent Rineau
a32ba4b0af
Boost.Config>=1.56 defines BOOST_NO_CXX11_HDR_ATOMIC
2016-01-15 18:46:46 +01:00
Laurent Rineau
68c6941cbb
Add <CGAL/atomic.h> and CGAL_CAN_USE_CXX11_ATOMIC
...
- Change the way the macros `CGAL_CAN_USE_CXX11_THREAD_LOCAL` and
`CGAL_CAN_USE_CXX11_MUTEX` are defined, so that other compilers are
also supported.
- Add the macro `CGAL_CAN_USE_CXX11_ATOMIC` and the header
`<CGAL/atomic.h>`.
2016-01-15 18:26:44 +01:00
Laurent Rineau
65cad196df
Check both deprecated name and new names (Boost>=1.50)
...
The deprecated names may be removed from future versions of Boost, and
we do not want our C++11 support be dropped for users using newest
versions of Boost.
2016-01-15 17:47:45 +01:00
Sebastien Loriot
4e9448cb9e
Merge pull request #451 from GilesBathgate/throwing-destructors
...
Introduces a CGAL_destructor_assertion macro.
2016-01-14 14:08:10 +01:00
Giles Bathgate
f0ac236713
Introduces a GCAL_NO_ASSERTIONS_BOOL macro
...
This macro is always defined. Its value will be true when assertions are defined
and false when assertions are not defined. This macro can then be used in place
of a true false constant, such as is needed for CGAL_NOEXCEPT.
2016-01-08 20:31:59 +00:00
Sebastien Loriot
2b49997c7e
Merge pull request #493 from afabri/CGLAL-thread_local_storage-GF
...
Remove boost thread dependency
2016-01-04 16:49:26 +01:00
Giles Bathgate
ab7b34846e
Use boost detection of CXX11 noexcept keyword.
...
BOOST_NO_NOEXCEPT and BOOST_NO_CXX11_NOEXCEPT provide a more
convenient way of determining whether the CXX11 noexcept keyword
is available.
See: http://www.boost.org/doc/libs/1_50_0/libs/config/doc/html/boost_config/boost_macro_reference.html
2015-12-10 10:54:36 +00:00
Andreas Fabri
dd17f1ad5d
Set BOOST_PARAMETER_MAX_ARITY to the needed value in the concerned packages
2015-12-01 17:05:53 +01:00
Sebastien Loriot
b5546cb802
Merge pull request #486 from lrineau/Installation-visual_leak_detector-lrineau
...
Enable the use of Visual Leak Detector in CGAL
2015-11-26 14:30:14 +01:00
Giles Bathgate
3a725499ad
Introduces CGAL_NOEXCEPT macro.
...
This macro is available for future compatibility with c++11, which
by default marks destructors noexcept(true). Some destructors
in CGAL do throw exceptions an so should be marked noexcept(false).
Since noexcept is not available in c++0x and below the macro is
disabled when CGAL_CXX11 is not defined since it is not required.
2015-11-23 16:47:59 +00:00
Andreas Fabri
2ce8b07ec0
Define BOOST_PARAMETER_MAX_ARITY in <CGAL/config.h>
...
This macro has to be larger than the default value
and it must be set before including <boost/parameter.hpp>
Instead of setting it to 12 in the packages that
need it, we do this in <CGAL/config.h> and produce
an error if a user has set it to a value < 12
2015-11-16 11:21:31 +01:00
Andreas Fabri
6b2c4dd7c6
Merge branch 'CGLAL-thread_local_storage-GF-old' into CGLAL-thread_local_storage-GF
2015-11-09 14:26:42 +01:00
Volodymyr Boichentsov
f06bea8d8d
fixed boost endianness check
2015-10-09 09:26:00 +01:00
Volodymyr Boichentsov
64cceb7bb4
revert back arch's define check
2015-10-08 07:26:09 +01:00
Volodymyr Boichentsov
ee8d3d7fa3
added endianness check with boost
...
added few more arch's
added include for `<OpenGLES/ES2/gl.h>` header for ios
2015-10-07 22:43:08 +01:00
Andreas Fabri
ca54af03c2
Use <mutex> starting with Visual 2012 and g++ 4.8 with std=c++11
2015-10-05 12:19:13 +02:00
Andreas Fabri
a14cf913e9
WIP: In Lazy.h we now have a single macro for boost and c++11 thread
2015-09-11 14:54:11 +02:00
Andreas Fabri
aa649eccc9
bug fix
2015-09-11 08:58:32 +02:00
Andreas Fabri
434e66a0f1
move detection of that the keyword threadlocal can be used from Mpzf.h to config.h
2015-09-10 12:44:52 +02:00
Andreas Fabri
bf975ead95
No longer forward declare struct std:hash
2015-08-23 14:30:54 +02:00
Andreas Fabri
5db9675db8
Add #defines to trick moc
2015-01-19 17:54:26 +01:00
Jane Tournois
6b6af12353
fix the BOOST_JOIN parse error in demos
...
somehow, boost/random.hpp includes boost/type_traits/has_binary_operator.hpp,
and the "parse error" happens in this file (as said in the bug report)
Also update the link to the official Qt bug report
2014-12-11 12:17:44 +01:00
Andreas Fabri
9b0a59972f
Support for LEDA_numbers on Windows
...
trivial fix for master (and approved by the Release Manager)
2014-08-07 14:16:38 +02:00
Laurent Rineau
865eee70f7
Support LEDA with thread-support
...
If one use a library of LEDA that support threads, without setting
LEDA_MULTI_THREAD, then one can get segfaults when creating new LEDA
objects.
2014-08-04 15:53:58 +02:00
Sébastien Loriot
2aadba50d7
Merge branch 'BGL-redesign_final-GF'
...
Introduces a redesign of the CGAL extension of the BGL API
Successfully tested in CGAL-4.5-Ic-90
Approved by the Release Manager
Conflicts:
Surface_mesh_segmentation/test/Surface_mesh_segmentation/test_compute_sdf_values_and_segment_exact_rational.cpp
2014-07-08 19:45:16 +02:00
Andreas Fabri
c726cedbbb
As BOOST_NO_CXX11_RANGE_BASED_FOR has been introduced with Boost 1.51
...
we need a CGAL macro
2014-07-03 09:24:20 +02:00
Marc Glisse
897f585f12
Merge branch 'Kernel_d-rewrite-glisse-old' into Kernel_d-rewrite-glisse
...
Need the Interval_nt/long interoperability for Eigen.
2014-05-07 18:41:17 +02:00
Laurent Rineau
cf5d6e041e
Use pragmas to fix warnings
2014-04-10 20:06:04 +02:00
Marc Glisse
1241b2f14f
Use boost::int128_type instead of __int128. This makes __extension__
...
useless, hence removed.
2014-03-13 17:06:43 +01:00
Marc Glisse
b257e85427
Rework test for __int128 availability.
2014-03-13 16:50:22 +01:00
Marc Glisse
09f3db2025
define CGAL_CXX11.
2014-03-12 14:07:47 +01:00
Laurent Rineau
d8c4aa09df
Merge branch 'Number_types-sse2fabs-GF'
...
Use SSE2 to implement CGAL::abs(double), with MSVC.
Tested in CGAL-4.4-Ic-119.
2014-02-17 16:21:13 +01:00
Sébastien Loriot
cae96035cb
work around a bug of MSVC2013 for initializer lists
...
http://connect.microsoft.com/VisualStudio/feedback/details/792161/constructor-initializer-list-does-not-support-braced-init-list-form
2014-02-13 17:45:53 +01:00
Andreas Fabri
fccd75b4c5
Use a more specific test for switching to SSE2 for fabs
2014-01-31 16:18:48 +01:00
Andreas Fabri
c1f46dc382
As std::fabs is slow on Windows, we switch to an implementation using sse2.
...
This version is already in CGAL, but it is protected with an #ifdef
So this commit consists of a #define for VC++
2014-01-15 16:35:14 +01:00
Andreas Fabri
2860662f77
Merge branch 'Installation-visual_leak_detector-lrineauTMP' into Installation-visual_leak_detector-lrineau
2013-11-19 14:46:39 +01:00
Marc Glisse
b53de35ff6
Work around Boost changing the name of their macros every other release.
...
Work around Microsoft defining min/max as macros.
2013-11-01 14:46:20 +01:00
Laurent Rineau
3ac5e524a2
Fix a trivial parsing bug in CGAL_assume
...
A warning of clang showed me my mistake:
In file included from /no-raid/home/lrineau/CGAL/CGAL-4.4-I-10/cmake/platforms/x86-64_Linux-Fedora18_llvm-clang-with-g++-4.7/test/Kinetic_data_structures/timings.cpp:14:
In file included from /no-raid/home/lrineau/CGAL/CGAL-4.4-I-10/include/CGAL/Kinetic/Delaunay_triangulation_3.h:32:
In file included from /no-raid/home/lrineau/CGAL/CGAL-4.4-I-10/include/CGAL/Delaunay_triangulation_3.h:31:
In file included from /no-raid/home/lrineau/CGAL/CGAL-4.4-I-10/include/CGAL/Triangulation_3.h:37:
/no-raid/home/lrineau/CGAL/CGAL-4.4-I-10/include/CGAL/Triangulation_data_structure_3.h:938:7: warning: logical not is only applied to the left hand side of this comparison [-Wlogical-not-parentheses]
CGAL_assume(index_v_in_n0 <= 1);
^ ~~
/no-raid/home/lrineau/CGAL/CGAL-4.4-I-10/include/CGAL/assertions.h:86:29: note: expanded from macro 'CGAL_assume'
# define CGAL_assume(EX) CGAL_ASSUME(EX)
^
/no-raid/home/lrineau/CGAL/CGAL-4.4-I-10/include/CGAL/config.h:334:30: note: expanded from macro 'CGAL_ASSUME'
# define CGAL_ASSUME(EX) if(!EX) { __builtin_unreachable(); }
^
Trivial bug-fix.
2013-10-29 15:49:19 +01:00
Laurent Rineau
ea6e24200c
Allow the use of Visual Leak Detector
...
See the small feature [[Small features/Visual_Leak_Detector]] in CGAL
developers wiki:
https://cgal.geometryfactory.com/CGAL/Members/wiki/Features/Small_Features/Visual_Leak_Detector
See also:
http://vld.codeplex.com/
2013-09-11 12:25:01 +02:00
Laurent Rineau
1da90b4b8c
Do not use __builtin_unreachable in strict-ansi mode
2013-03-19 17:18:12 +01:00
Laurent Rineau
220ddbf6b2
New macro CGAL_GCC_VERSION to help preprocessor conditionals on gcc version
...
And use it in <CGAL/refine_mesh_3.h>
2013-02-27 19:58:02 +01:00
Laurent Rineau
3f894697bc
New macros CGAL_assume(EX) and CGAL_assume_code(CODE)
...
CGAL_assume(EX) is like CGAL_assertion, but is not disabled in release
mode. In debug mode, it is similar to CGAL_assertion(). In release mode, it
uses builtins of the compilateur, like the MSVC __assume or the g++/clang
__builtin_unreachable to give an hint to the compiler that some situation
in the code cannot happen.
2013-02-20 18:34:15 +01:00
Philipp Möller
1720fd845c
No isfinite on MSVC
...
The advertisement is lying about what is implemented in cmath.
2013-02-15 10:48:23 +01:00
Laurent Rineau
29c05b900b
Mark BOOST_STATIC_ASSERT with 'CGAL_UNUSED'
...
In order to fix such a warning from g++-4.8:
warning: typedef ‘boost_static_assert_typedef_241’ locally defined but
not used [-Wunused-local-typedefs]
then:
- create one macro CGAL_UNUSED that is "__attribute__ ((__unused__))"
with g++ or empty otherwise,
- use it after BOOST_STATIC_ASSERT in the definition of
CGAL_static_assertion.
2013-02-07 18:15:23 +01:00
Laurent Rineau
4b38c0b73e
The Intel Compiler has the "bug" CGAL_CFG_NO_STATEMENT_EXPRESSIONS.
...
The Intel Compiler, even when it tries to emulate the GNU/C++ compiler,
does not implement the GNU extension "statement expressions". The macro
CGAL_CFG_NO_STATEMENT_EXPRESSIONS must be defined with __INTEL_COMPILER is
defined.
2013-01-07 13:01:21 +01:00
Philipp Möller
f16a152aec
Make the feature checks more resilient to old Boost.Versions
2012-12-19 16:24:14 +01:00
Philipp Möller
cd7c3e3592
Use the right BOOST_VERSION
...
When one is using the non-deprecated form of the macro, the version of
the deprecation has to be used - not the version where the original
macro appeared first.
2012-12-12 11:24:07 +01:00
Philipp Möller
feceb5a028
Add the macro CGAL_CFG_NO_CPP0X_UNIFIED_INITIALIZATION_SYNTAX
2012-12-11 17:41:54 +01:00
Philipp Möller
ab5c017c08
Unconditionally disable NO_TR1 defines.
...
Those cause trouble, because on MSVC the include paths for tr1
components are different from gcc. Instead of fixing up the include
paths depending on platform, just never use a tr1 component. Nothing
of value is lost compared to the boost equivalents and it removes
another code-path.
2012-09-28 13:15:14 +00:00
Philipp Möller
8720500433
Guard some macros with an additional check against BOOST_VERSION
...
This will not hinder usability. Compiling a three year old Boost
release with C++11 enabled is a bad idea anyway.
2012-06-13 12:33:33 +00:00
Marc Glisse
ad2e67797a
next, prev, copy_n in C++11.
2012-05-20 15:09:15 +00:00
Marc Glisse
c26419086e
CGAL_CFG_NO_STATEMENT_EXPRESSIONS only for gcc
2012-05-20 14:15:03 +00:00
Marc Glisse
9de2b137e3
move gcc macros
2012-05-20 13:14:34 +00:00
Philipp Möller
542f5d9c51
Merged ^/branches/next here
2012-04-16 08:53:21 +00:00
Laurent Rineau
3d01e09cb8
Workaround for a bug in Boost, that checks WIN64 instead of _WIN64
...
https://svn.boost.org/trac/boost/ticket/5519
2012-01-30 10:15:20 +00:00
Laurent Rineau
a8988af6a7
Typo in the macro Q_MOC_RUN
2012-01-26 13:22:08 +00:00
Laurent Rineau
76f6503a3f
Try to fix the bug between Qt moc and "namespace BOOST_JOIN(...)"
2012-01-26 12:00:16 +00:00
Laurent Rineau
7177fa5a63
Add a check that NDEBUG is not defined by test platforms
2012-01-25 11:14:17 +00:00
Philipp Möller
6415622971
Removed unused define.
2011-12-14 10:38:31 +00:00