Commit Graph

42 Commits

Author SHA1 Message Date
Laurent Rineau da2726e0e7 Merge branch 'releases/CGAL-4.13-branch' into releases/CGAL-4.14-branch
# Conflicts:
#	CGAL_ipelets/include/CGAL/CGAL_Ipelet_base_v7.h
#	Installation/lib/cmake/CGAL/CGALConfig.cmake
#	Intersections_2/test/Intersections_2/test_intersections_2.cpp
#	Segment_Delaunay_graph_2/test/Segment_Delaunay_graph_2/include/test_types.h
#	Snap_rounding_2/include/CGAL/Snap_rounding_kd_2.h
2019-07-26 18:33:55 +02:00
Laurent Rineau 4d5b4c950a Merge pull request #4085 from maxGimeno/Update_Find_TBB-GF
Update FindTBB.cmake
2019-07-26 18:27:00 +02:00
Laurent Rineau 5d47146cd6 Fix in header-only 2019-07-25 16:14:50 +02:00
Laurent Rineau a17c0d628d Fix our usage of TBB and <thread.h>
A lot of parts of CGAL use `<thread>` in conjunction with TBB. I have
added the `find_package(Threads)` in `CGAL_target_use_TBB.cmake` for
convenience.

I have also restored FindTBB.cmake as a pure copy of
  https://github.com/Kitware/VTK/blob/master/CMake/FindTBB.cmake
with that version:

> c7249fed2e73ce25fbbc53363d9caf4ab5cc9195
> Author: Cory Quammen <cory.quammen@kitware.com>
> Date:   Thu Feb 14 23:21:09 2019 -0500
>
>     FindTBB: handle basic linker scripts
>
>     TBB binaries may define libtbb.so as a linker script of the form
>
>     INPUT(libtbb.so.2)
>
>     Make FindTBB find the real .so file libtbb.so points to in such cases.
>
>     Approach borrowed from vtk-m/CMake/VTKmDeviceAdapters.cmake on
>     suggestion from Robert Maynard.
>
>
2019-07-24 10:35:36 +02:00
Laurent Rineau e4c82fa260 Merge branch 'releases/CGAL-4.13-branch' into releases/CGAL-4.14-branch 2019-05-21 16:35:24 +02:00
Laurent Rineau c2e8365303 Actually, it can only work with CMake>=3.11 2019-05-10 17:47:58 +02:00
Laurent Rineau a0bfaee9eb Consider CGAL as an imported target 2019-05-10 17:31:17 +02:00
Laurent Rineau 870ff45168 Merge pull request #3886 from lrineau/CGAL-Adapt_to_Boost_1.70-GF
Adapt to Boost 1.70
2019-05-07 15:48:03 +02:00
Laurent Rineau 43cc6b2b2d CGAL_TweakFindBoost must be included before any call to FindBoost 2019-05-06 16:40:50 +02:00
Laurent Rineau 4782ea1665 Fix the *installed* header-only CGALConfig.cmake
The previous installed version of `CGALConfig.cmake`, when
`CGAL_HEADER_ONLY` is true, was hard-coding a path `../../../`,
relative to the location of itself. It might be that the CMake modules
are not installed in a sub-directory with three components, relatively
to the prefix.

That way of doing it buggy. And that triggered issue with the cgal
port in vcpkg:

  https://github.com/Microsoft/vcpkg/pull/5734

This patch is just another hack: it hardcodes that the relative path
can be any of:

  - `../`,
  - `../../`, or
  - `../../../`.
2019-03-19 16:49:31 +01:00
Laurent Rineau 47cdc92064 Merge pull request #3463 from lrineau/CGAL-Fix_CTest-GF
Fix CTest after #3413
2018-12-19 16:12:29 +01:00
Laurent Rineau f6e83cd23e Move the definition of CGAL_USE_FILE in case of early return() 2018-12-13 10:59:00 +01:00
Laurent Rineau c14fda590d
Merge branch 'master' into CGAL-Fix_CTest-GF 2018-12-10 16:52:33 +01:00
Laurent Rineau 81cf49efb1 Fix the construction of CGAL_ROOT in header-only
In header-only, `CGALConfig.cmake` constructs the path to the root of
the CGAL installation. It used to use `../` a lot, to go back in
parent directories, but:
  - that was... ugly,
  - and Ninja saw a problem with that (a warning about the path to
  `print_GMP_version.cpp`).

`CGALConfig.cmake` Now uses the CMake command `get_filename_component`.
2018-11-28 09:46:53 +01:00
Laurent Rineau c28c0a4b2d Fix a bug with CTest in non-header-only
The pull-request https://github.com/CGAL/cgal/pull/3413 has introduced
a side-effect: CTest was broken when `CGAL_HEADER_ONLY=OFF`, for all
tests using a `.cin` or `.cmd` file. That is due to the variable
`CGAL_CURRENT_SOURCE_DIR` that was only filled by `UseCGAL.cmake`.

Now that we forbid CGAL directories without `CMakeLists.txt`, that
variable `CGAL_CURRENT_SOURCE_DIR` is now useless, and can be removed:
`CMAKE_CURRENT_SOURCE_DIR` is sufficient. That fixes the bug with
CTest, and also makes the CMake code a bit simpler.
2018-11-19 14:33:54 +01:00
Guillaume Damiand ee4f7c5cd9 Resolve conflict 2018-11-02 19:13:25 +01:00
Guillaume Damiand 9e3f264e2c Add an include CGAL_Common.cmake 2018-10-23 13:44:00 +02:00
Guillaume Damiand 7e022bacf6 Add a debug message, trying to understand where the problem comes from... 2018-10-23 09:09:45 +02:00
Guillaume Damiand d1a027bd2c Github lost my last push git status 2018-10-22 10:39:31 +02:00
Guillaume Damiand 152f34fd56 Change order of things, to be able to do include(CGAL_CreateSingleSourceCGALProgram.cmake) in all cases. 2018-10-22 10:31:06 +02:00
Guillaume Damiand 8f61243a13 Move one include after the definition of CGAL_MODULES_DIR 2018-10-19 10:18:37 +02:00
Laurent Rineau 980d254517 Re-add a missing line 2018-10-19 09:31:32 +02:00
Laurent Rineau 0dd59c1cfd Include CGAL_CreateSingleSourceCGALProgram.cmake in case of early return 2018-10-18 16:25:32 +02:00
Laurent Rineau 0e55a45155 Prefix our CMake function name with "cgal" 2018-04-13 15:02:22 +02:00
Laurent Rineau 17032feff4 Set the CGAL version variables in header-only
Fixes #2820.
2018-04-13 14:58:56 +02:00
Laurent Rineau 66b4ec4214 Add a warning about the use of Debug or "" in CMAKE_BUILD_TYPE 2018-03-20 17:08:52 +01:00
Laurent Rineau de1753566b Speed improvement with CGAL_HEADER_ONLY and WITH_{tests|examples}..
When `CGAL_HEADER_ONLY` and `WITH_{examples|tests|demos}`, then only
the first call to `find_package(CGAL)` does the job. The subsequent
calls return very fast, by caching the results in global properties.
2018-03-14 23:04:09 +01:00
Laurent Rineau c781841f6b Fix header-only with the tarball layout 2017-12-08 10:35:36 +01:00
Laurent Rineau 06266211e6 Fix the pure-header-only CGALConfig.cmake, when installed 2017-12-06 12:53:46 +01:00
Andreas Fabri ea95e2b2eb CGALConfig.cmake changes the CMAKE_MODULE_PATH
Maybe a temnporary "solution".

Laurent Rineau
2017-11-30 10:07:53 +00:00
Laurent Rineau a2a5ca91a1 Unify CGAL_HEADER_ONLY and CGAL_HEADER_ONLY_STEP_2 2017-11-23 17:06:46 +01:00
Laurent Rineau 4e78c4e10d header-only: do not define unwanted CGAL components 2017-11-22 13:02:04 +01:00
Laurent Rineau fe24a4db68 Explicit the dependencies of QGLViewer 2017-11-14 14:08:55 +01:00
Clement Jamin c89d551105 Add message saying that the header-only mode is activated 2017-03-27 18:13:20 +02:00
Laurent Rineau a27beba41c Check if the targets already exist
`CGALConfig.cmake` is guarded, but it might be that the targets are
already defined by a sub-directory.
2017-03-27 18:04:55 +02:00
Laurent Rineau 20dbf716ba Fill CGAL_USE_FILE for compatibility 2017-03-27 18:04:54 +02:00
Laurent Rineau 83482f5505 Fix CGALConfig.cmake for pure header-only 2017-03-27 18:04:53 +02:00
Laurent Rineau 7c18b22b4c Fix CGAL_TweakFindBoost
That module was using the useless macros `cache_set` and
`add_to_cached_list`.
2017-03-27 18:04:53 +02:00
Laurent Rineau fa0d681c23 Simplify and fix CGALConfig.cmake for header-only2 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
Laurent Rineau c68488969d Remove debug messages 2017-03-27 18:04:52 +02:00
Laurent Rineau 9c96205a38 First prototype of a pure CGAL_HEADER_ONLY
That is the step 2 of the header-only effort.

Still to do:

  - make it work with `make install`
  - ensure that `CGAL_Core` is correctly handled with `CGAL_DISABLE_GMP`
2017-03-27 18:04:41 +02:00