Browse Source

notes

Former-commit-id: 2a9315be07d1b2aeed8fee98485b405ebb573d23
Alec Jacobson 10 years ago
parent
commit
90efb6fb69
2 changed files with 22 additions and 1 deletions
  1. 9 1
      README.md
  2. 13 0
      RELEASE_HISTORY.md

+ 9 - 1
README.md

@@ -84,6 +84,14 @@ libigl depends only on the [Eigen](http://eigen.tuxfamily.org) library.
 
 
 For more information see our [tutorial](tutorial/tutorial.html).
 For more information see our [tutorial](tutorial/tutorial.html).
 
 
+### Optional dependencies ###
+
+Libigl compartmentalizes its **optional** dependences via its directory
+organization in the `include/` folder. All header files located _directly_ in
+the `include/igl/` folder have only stl and Eigen as dependencies. For example,
+all of the headers that depend on CGAL are located in `include/igl/cgal`. For a
+full list of _optional_ dependencies check `optional/CMakeLists.txt`.
+
 ### GCC and the optional CGAL dependency
 ### GCC and the optional CGAL dependency
 The `include/igl/cgal/*.h` headers depend on CGAL. It has come to our attention
 The `include/igl/cgal/*.h` headers depend on CGAL. It has come to our attention
 that CGAL does not work properly with GCC 4.8. To the best of our knowledge,
 that CGAL does not work properly with GCC 4.8. To the best of our knowledge,
@@ -100,7 +108,7 @@ You can keep up to date by cloning a read-only copy of our GitHub
 [repository](https://github.com/libigl).
 [repository](https://github.com/libigl).
 
 
 ## Known Issues
 ## Known Issues
-We really heavily on Eigen. Nearly all inputs and outputs are Eigen matrices of
+We rely heavily on Eigen. Nearly all inputs and outputs are Eigen matrices of
 some kind. However, we currently _only_ officially support Eigen's default
 some kind. However, we currently _only_ officially support Eigen's default
 column-major ordering. That means, we **do not** expect our code to work for
 column-major ordering. That means, we **do not** expect our code to work for
 matrices using the `Eigen::RowMajor` flag. If you can, change definitions like:
 matrices using the `Eigen::RowMajor` flag. If you can, change definitions like:

+ 13 - 0
RELEASE_HISTORY.md

@@ -49,6 +49,19 @@ deprecated/repeated functions. The 3x3 svd code and dependent functions
 (including ARAP) were absorbed into the main library. Similarly, the boost
 (including ARAP) were absorbed into the main library. Similarly, the boost
 dependency extra was absorbed.
 dependency extra was absorbed.
 
 
+
+### External libraries as git subrepos ###
+The core functionality of libigl (still) just depends on stl, c++11 and Eigen.
+There are additional _optional_ dependencies (e.g. CGAL, embree, glfw, tetgen,
+triangle). Libigl functions using these are located (still) in sub-folders of
+the include directory (e.g.  `include/igl/cgal/`, `include/igl/embree/`). Prior
+to version 1.2 we included copies of the code for some of these dependencies in the
+`external/` directory. As of
+version 1.2, these have been replaced with git sub-repos. If you have cloned
+libigl _before version 1.2_ then you should issue 
+
+    git submodule update --init --recursive
+
 ### Deprecated/repeated functions ###
 ### Deprecated/repeated functions ###
 
 
 Old                                     | New
 Old                                     | New