sagemath/sage

Add CGAL package

mkoeppe opened this issue · 14 comments

This ticket adds a preliminary Sage package for CGAL, the Computational Geometry Algorithms Library. http://www.cgal.org/index.html

It is a huge package. My main interest, right now, comes from a need for fast data structures for polyhedral complexes in low dimension / piecewise linear functions in several variables.

Installation goes through; I have not tested anything.

Upstream archive: https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-4.9/CGAL-4.9.zip

. . . . . .

Some history:

In 2009, there was intermittent interest in making such a Sage package. https://groups.google.com/forum/#!topic/sage-devel/35g7UicEKvo
One of the concerns at the time apparently was CGAL's licensing. However, CGAL has changed its licensing terms since then; it now appears to be released under some combination of GPL and LGPL, version 3 or later.
http://www.cgal.org/license.html

There also was some interest in this topic in 2013: http://www.cgal.org/gsoc/2013.html
I do not know if there were any outcomes.

. . . . . . . . .

Some random CGAL resources:

CC: @videlec @DRKWang

Component: packages: optional

Keywords: cgal, polyhedra

Author: Matthias Koeppe

Branch/Commit: u/mkoeppe/add_cgal_package @ 30bfc2e

Issue created by migration from https://trac.sagemath.org/ticket/18197

Author: Matthias Koeppe

New commits:

30bfc2eAdd spkg for CGAL 4.9

Description changed:

--- 
+++ 
@@ -1,10 +1,16 @@
-I apologize in advance that my very first Sage trac ticket is a huge wishlist item. 
-
-I would be interested in a Sage package for CGAL, the Computational Geometry Algorithms Library. http://www.cgal.org/index.html
+This ticket adds a preliminary Sage package for CGAL, the Computational Geometry Algorithms Library. http://www.cgal.org/index.html
 
 It is a huge package. My main interest, right now, comes from a need for fast data structures for polyhedral complexes in low dimension / piecewise linear functions in several variables.
 
-By a web search, I found that in 2009, there was intermittent interest in making such a Sage package. [https://groups.google.com/forum/#!topic/sage-devel/35g7UicEKvo](https://groups.google.com/forum/#!topic/sage-devel/35g7UicEKvo)
+Installation goes through; I have not tested anything.
+
+Upstream archive: https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-4.9/CGAL-4.9.zip
+
+. . . . . . 
+
+Some history:
+
+In 2009, there was intermittent interest in making such a Sage package. [https://groups.google.com/forum/#!topic/sage-devel/35g7UicEKvo](https://groups.google.com/forum/#!topic/sage-devel/35g7UicEKvo)
 One of the concerns at the time apparently was CGAL's licensing. However, CGAL has changed its licensing terms since then; it now appears to be released under some combination of GPL and LGPL, version 3 or later. 
 [http://www.cgal.org/license.html](http://www.cgal.org/license.html)
 

Commit: 30bfc2e

comment:3

Nice! Testing right now.

comment:4

There are also various boost libraries needed...

(EDIT: for which we have a package)

comment:5

The Sage cmake package is installed. Why don't we use the system one if it is there (as we do for gcc)?

comment:6

Concerning open source root isolation I know at least:

  • arb
  • re-antic
  • and Sage but which is not easy to use at C/C++ level
comment:7

At least I am able to compile simple CGAL projects within Sage. However, having some cython code using CGAL looks less trivial.

comment:8

There's https://pypi.python.org/pypi/cgal-bindings/0.0.7 (haven't tested)

Description changed:

--- 
+++ 
@@ -17,4 +17,14 @@
 There also was some interest in this topic in 2013: [http://www.cgal.org/gsoc/2013.html](http://www.cgal.org/gsoc/2013.html)
 I do not know if there were any outcomes.
 
+. . . . . . . . .
 
+Some random CGAL resources:
+- http://acg.cs.tau.ac.il/people/mhemmer/publications/Michael_Hemmer_PhD.pdf
+- https://www.inf.ethz.ch/personal/hoffmann/pub/hkn-tcgllc-16.pdf
+- http://doc.cgal.org/latest/Number_types/index.html#Chapter_Number_Types
+- http://doc.cgal.org/latest/Algebraic_foundations/classRealEmbeddableTraits.html#accb6b922ae1f36fa684f552dcd668271
+- http://doc.cgal.org/latest/Manual/packages.html#PkgKernel23Summary
+- https://github.com/CGAL/cgal-swig-bindings/wiki
+- http://link.springer.com/chapter/10.1007%2F978-3-7091-6444-0_3
+- http://stackoverflow.com/questions/35710426/cgal-bindings-compilation
comment:10

4.10 is now available

https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-4.10/CGAL-4.10.zip
slel commented
comment:13

This related ticket:

  • #31098: Package cgal-swig-bindings, script packages cgal, swig

is ready for review.