There was eventually no VC13.
- In cmake/modules/CGAL_GeneratorSpecificSettings.cmake replace it by
MSVC14. Add a support for a futur MSVC15.
- Synchronize include/CGAL/auto_link/auto_link.h from the future
Boost-1.59 (not yet released), to add support for VC14/MSVC2015.
With CMake-2.8.11, CMP0024 does not yet exist, and the target aliasing
feature does not exist either. So the only solution is to include the
export file.
With -DWITH_demos:BOOL=TRUE, the CGALConfig.cmake is included multiple
times. This patch avoids that one tries to define multiple times the
same target aliases.
In CGALConfig.cmake, the former code was just checking if
WITH_${CGAL_LIB} was TRUE. Now, the new code also checks if the target
was actually defined. If the target is not defined by WITH_${CGAL_LIB}
is ON, if probably means that one dependency of the library was not
properly configured.
This rightfully triggers CMP0024, since the file created by export might
not exist at configure-time. We need to do some extra work to avoid
reading the LOCATION property from a non-imported target hence we
trigger policy CMP0026.
Add a CGALExports.cmake file
Conflicts:
GraphicsView/src/CGAL_Qt5/CMakeLists.txt
Installation/cmake/modules/CGALConfig_binary.cmake.in
Installation/cmake/modules/CGALConfig_install.cmake.in
There was also a conceptual conflict in:
Installation/src/CMakeLists.txt
We do not know the value of CGAL_AUTO_LINK_ENABLED yet because it is
defined by CGAL_GeneratorSpecificSettings.cmake but this is
equivalent. This is also not a problem, because CGAL_AUTO_LINK_ENABLED
is not user-editable and always enabled on MSVC.
- The Splatting has been deactivated
- The Scene_item class has a new member of type QOpenGLFunctions, allowing to use all shader functions without need for GLEW
- replaced the missing modified files by the originals
- added a reference to a vector of floats in traits so that it fills it instead of drawing the bboxes
With default CMake paths, the TBB installed in /usr/{include/,lib64/} is
found, whatever there is in TBB environment variables. If the search
with NO_DEFAULT_PATH does not find TBB, then the search is made again
with default paths.
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
This leads to false positives
(cherry picked from commit a5d9d001aa995c4a66d73a40cbc6a1a22b795d4d)
Message added by Laurent Rineau:
that commit was tested in CGAL-4.3-Ic-168
That is a late follow-up to the following commit:
| commit 12744ab7ff
| Author: Laurent Rineau <Laurent.Rineau__CGAL@normalesup.org>
| Date: Thu Apr 28 13:11:09 2011 +0000
|
| Track dependencies between libraries and examples/demos
|
| With this patch, when CGAL as been configured with WITH_examples and/or
| WITH_demos, then the executables of examples and demos depends on the CGAL
| libraries. That means if one change a file involved in a CGAL library, and
| ask the rebuild of an executable, then the CGAL library will be rebuilt
| first.
|
| Notes:
| r63187 branches/next
Or maybe the bug was re-introduced by recent modifications of our CMake
scripts.
If the debug versions are not found, the release versions will be used instead
for the debug mode.
If the tbb_malloc library is not found, doesn't link with it.
- Untabified
- Does not link with the TBB mallow proxy anymore, but set
TBB_MALLOCPROXY_DEBUG_LIBRARY and TBB_MALLOCPROXY_RELEASE_LIBRARY
so that a user can still link with it if necessary
Note: the malloc proxy is not available on MacOS.
- Calls include_directories ( ${TBB_INCLUDE_DIRS} ) and
link_directories( ${TBB_LIBRARY_DIRS} ) to set paths
The CMake module FindBoost.cmake searchs for Boost first in the "Config
mode" of 'find_package'. That allows to find installation of boost-cmake
(that is Boost configured using CMake). That configuration of Boost is
rather rare. But the search for it leaves a variable Boost_DIR=NOTFOUND in
the cache, even if Boost libraries are found using the regular way.
That patch removes from the cache the variable Boost_DIR, when Boost is
already found, to avoid more confusion for users.
The CMake script was only testing if the sub-directory auxiliary/taucs/
existed. That directory exists in Git for a while, because we ship a README
file in it. Now the CMake script checks for auxiliary/taucs/include/. That
is as naive as before but at least it will work.
1/ Check the version using 'find_package_handle_standard_args' internal
checking of version, instead of a home-made check.
2/ No need to add EIGEN3_INCLUDE_DIR in the cache, as find_path does it.
3/ Call 'find_package_handle_standard_args' even if EIGEN3_INCLUDE_DIR is
already and valid in the cache.
If the current working directory is a checkout of a commit that is not a
branch, for example, a commit in the ancestors of a branch, then CGAL CMake
scripts gave that CMake error:
== CMake setup ==
fatal: ref HEAD is not a symbolic ref
CMake Error at Installation/cmake/modules/CGAL_SCM.cmake:36 (string):
string sub-command REGEX, mode REPLACE needs at least 6 arguments total to
command.
Call Stack (most recent call first):
CMakeLists.txt:17 (include)
== CMake setup (DONE) ==
This patch fixes the error. If HEAD is not a branch, then CGAL_GIT_BRANCH
is equal to "HEAD".
- proper indentation
- merge double occurences
- standardize location at the end block, before DOC
tested with GMP(XX), MPFR, MPFI, LEDA, RS(3), NTL and a (small) number of ways to specify library
locations via environment and CMake variables, on Debian 64bit
removed almost all occurenced (missing UseFiles). While
doing so, some CMakeLists.txt could also be simplified. In fact
many more CMakeLists.txt can be simplified, in one of two ways:
1) add external libs to CGAL_3RD_PARTY_LIBRARIES and
2) call cgal_create_single_source_program
A FindFoobar module must not include a UseFoobar file. CGAL_UseRS3 now
includes CGAL_UseMPFI, and not FindRS and FindRS3.
+ Fix also a typo in a message of FindRS3.
gcc has an option -isystem, that can replace -I. The documentation is:
-isystem dir
Search dir for header files, after all directories specified by -I but
before the standard system directories. Mark it as a system directory,
so that it gets the same special treatment as is applied to the
standard system directories. If dir begins with "=", then the "=" will
be replaced by the sysroot prefix; see --sysroot and -isysroot.
The "special treatment" means that gcc will not warn about constructions in
headers in directories pointed by -isystem instead of -I.
In the CGAL testsuite, there are a lot of warnings that comes from
third-party libraries (mostly from Boost, but also from Eigen).
This patch tells cmake to use -isystem with gcc, for all CGAL 3rd-party
directories.
to the FindQt3 module shipped with CMake
CGAL FindQt3-patched module uses the prefix QT3_ for all cache variables,
instead of just QT_. That allows to use Qt3 and Qt4 in the same project
(but for different binaries of course).
As of Boost 1.50 it is required to link Boost.System with CGAL. System
has been a Thread dependency all along and we simply never linked to
it and apparently got lucky.
Add it to the dependencies, add it in the manual and INSTALL file.
instead of including the file I've just added the general cmake makro to
check whether an item is in the list. Why does it need a macro? There should
be a list-operation for that ...
Second fix for Windows
On Windows, with auto-linking, the variables ${CGAL_LIB}_LIBRARY are
empty.
What is more, that is a bad idea to check if the libraries does exist. If
for example CGAL has been configured with WITH_CGAL_Qt4, and the CGAL_Qt4
library is not correctly created, we want a compilation error, and not just
a CMake warning saying "Please configure CGAL using WITH_${CGAL_LIB}=ON."
On Windows, with auto-linking, the variables ${CGAL_LIB}_LIBRARY are
empty.
What is more, that is a bad idea to check if the libraries does exist. If
for example CGAL has been configured with WITH_CGAL_Qt4, and the CGAL_Qt4
library is not correctly created, we want a compilation error, and not just
a CMake warning saying "Please configure CGAL using WITH_${CGAL_LIB}=ON."
| ------------------------------------------------------------------------
| r65982 | lrineau | 2011-10-20 17:49:05 +0200 (Thu, 20 Oct 2011) | 8 lines
| Changed paths:
| M /branches/next/Scripts/scripts/cgal_create_cmake_script
|
| Improvement of cgal_create_cmake_script
|
| This allows to create a CMakeLists.txt in a directory whereas the sources
| are in another directory.
|
| This will allow out-of-sources creation of CMakeLists.txt files. And, in
| the end, that will improve the branch-build.
|
| ------------------------------------------------------------------------
Make create_single_source_cgal_program() compatible with absolute paths
I have grepped for auto_link/(GMP|MFR)|AUTO_?LINK_(GMP|MPFR) and I removed
completely any support for auto-linking of GMP and MPFR from CGAL.
That is no longer necessary, nor relevant, no that we provide precompiled
GMP and MPFR libraries under standard names libgmp-10.lib and
libmpfr-4.lib.
To test in candidates:
Core
Installation
Number_types
| ------------------------------------------------------------------------
| r65557 | lrineau | 2011-09-26 16:49:02 +0200 (Mon, 26 Sep 2011) | 9 lines
| Changed paths:
| M /branches/next/Installation/cmake/modules/CGAL_UseBLAS.cmake
| M /branches/next/Installation/cmake/modules/CGAL_UseLAPACK.cmake
| M /branches/next/Installation/cmake/modules/FindBLAS.cmake
| M /branches/next/Installation/cmake/modules/FindLAPACK.cmake
| M /branches/next/Installation/doc_tex/Installation/installation.tex
|
| BLAS and LAPACK do not have header files.
|
| One implementation of BLAS or LAPACK can have a header file, but that is
| not mandatory for an implementation, and (hopefully) nothing in CGAL tries
| to include a blas.h or a lapack.h.
|
| The current revision removes mentions of BLAS_INCLUDE_DIR and
| LAPACK_INCLUDE_DIR in CGAL cmake scripts about BLAS and LAPACK.
|
|
------------------------------------------------------------------------
Reason:
For the implementation cblas/clapack, our use of that implementation does
need a header <blaswrap.h> to work.
CGAL_Boost_USE_STATIC_LIBS is now an (advanced) CMake option on all
platforms, and is stored in the generated CGALConfig.cmake. That way, its
value is proposed as the default value for the same option when programs
using CGAL are configured using CMake.
The script UseCGAL includes the module CGAL_TweakFindBoost, to define
Boost_USE_STATIC_LIBS and Boost_ADDITIONAL_VERSIONS.
Previously there was a variable CGAL_SHARED_LIBS defined by
CGALConfig.cmake. This one is now unified with CGAL_BUILD_SHARED_LIBS.
And the option CGAL_BUILD_SHARED_LIBS is only defined as an option if one
are building CGAL libraries. If CGAL_Common.cmake is included from another
project, such as from UseCGAL.cmake, then this variable is set in
CGALConfig.cmake as a regular (non-cached) CMake variable.
One implementation of BLAS or LAPACK can have a header file, but that is
not mandatory for an implementation, and (hopefully) nothing in CGAL tries
to include a blas.h or a lapack.h.
The current revision removes mentions of BLAS_INCLUDE_DIR and
LAPACK_INCLUDE_DIR in CGAL cmake scripts about BLAS and LAPACK.
*Add non-sparse matrix class (thus renamimg of the existing one)
*specialisation of the matrix class in Eigen_solver_traits according
whether this is a symmetric or asymmetric matrix
*update use-files of lapack and Taucs to get definitions
If CGAL_INSTALLATION_PACKAGE_DIR is not set in CGALConfig.cmake, then when
one compile a demo/example on Windows, Installation/auxiliary (where
precompiled version of some third party libraries should be put) cannot be
found and used. That replaces the old CMake variable CGAL_SOURCE_DIRECTORY
(before branch-build).
With this patch, when CGAL as been configured with WITH_examples and/or
WITH_demos, then the executables of examples and demos depends on the CGAL
libraries. That means if one change a file involved in a CGAL library, and
ask the rebuild of an executable, then the CGAL library will be rebuilt
first.
We declare
cmake_minimum_required(VERSION 2.6.2)
but we also use
cmake_policy(VERSION 2.8.4)
to declare that our CMake scripts are OK with all the defaults of CMake policies
as of CMake-2.8.4. That shuts down the warnings of CMake-2.8.4.
That way, we no longer need any declaration of specific policies.
- clean up CGALConfig files (gmp/mpfr version)
- special role of LEDA
- gmp/mpfr need version
- removed SetupGMP ;-)
- clean up Dependencies
- NTL without USE_FILE
- added mandatory libs
- Intel the Runtime Library (RTL) can be in a different directory from the
MKL library. That is why a new variable INTEL_RTL_LIB_DIR can be used to
indicate its path.
- On Linux with g++, -lm must be used at link time to use MKL (otherwise it
is not found).
Patch to trunk/Installation/ to display the full version message of the
compiler, if RUNNING_CGAL_AUTO_TEST is set (in the testsuite). That will
help to know which compiler are run by tests platforms.
Display also the result of `uname -a`