11# [ coupe]
22
3- A modular, multi-threaded partitioning library.
3+ A modular, multithreaded partitioning library.
44
55Coupe implements a variety of algorithms that can be used to partition meshes,
6- graphs and numbers. See [ the API docs] [ coupe ] for a list. These algorithms can
6+ graphs and numbers. See [ the API docs] [ coupe ] for a list. These algorithms can
77be composed together to build relevant partitions of your data.
88
9+ ## Getting Coupe
10+
11+ ### Released versions
12+
13+ The simplest way to use ` Coupe ` is from Rust, referencing ` coupe ` crate.
14+
15+ ### Building from source
16+
17+ ` Coupe ` is written in Rust, so you'll need to grab a Rust installation in order to compile it. In general, ` Coupe `
18+ tracks the latest stable release of the Rust compiler.
19+
20+ To build the whole ` Coupe ` platform:
21+
22+ ``` shell
23+ git clone https://github.com/LIHPC-Computational-Geometry/coupe/
24+ cd coupe
25+ cargo build --workspace --release
26+ ```
27+
28+ By default, ` Coupe ` tools need ` Scotch ` and ` Metis ` . It can be disabled using
29+
30+ ``` shell
31+ cargo build --workspace --release --no-default-features
32+ ```
33+
34+ Else, if you want ` Scotch ` or ` Metis ` support, you might need to pass some information about header location.
35+ On some systems, files like ` scotch.h ` are not in standard include directories. One can configure it
36+ using ` BINDGEN_EXTRA_CLANG_ARGS ` environment variable.
37+ It can be set from the shell or using ` .cargo/config.toml ` file like this (this example is for debian and ubuntu
38+ systems)
39+
40+ ``` toml
41+ [env ]
42+ BINDGEN_EXTRA_CLANG_ARGS = " -I/usr/include/scotch"
43+ ```
44+
45+ ` Coupe ` is relatively well-tested, including both unit tests and integration tests. To run the full test suite, use:
46+
47+ ``` shell
48+ cargo test --all --workspace
49+ ```
50+
51+ from the repository root.
52+
953## Usage
1054
1155### From the command-line
@@ -22,8 +66,8 @@ example usages of the library.
2266
2367Coupe offers a C interface which can be found in the ` ffi/ ` directory.
2468
25- Bindings for other languages have not been made yet. If you end up developing
26- such bindings, please send us a note so they can be shown here!
69+ Bindings for other languages have not been made yet. If you end up developing
70+ such bindings, please send us a note, so they can be shown here!
2771
2872## Contributing
2973
@@ -36,20 +80,21 @@ reports on the [issue tracker][issues].
3680
3781Licensed under either of
3882
39- * Apache License, Version 2.0
40- ([ LICENSE-APACHE] ( LICENSE-APACHE ) or http://www.apache.org/licenses/LICENSE-2.0 )
41- * MIT license
42- ([ LICENSE-MIT] ( LICENSE-MIT ) or http://opensource.org/licenses/MIT )
83+ * Apache License, Version 2.0
84+ ([ LICENSE-APACHE] ( LICENSE-APACHE ) or http://www.apache.org/licenses/LICENSE-2.0 )
85+ * MIT license
86+ ([ LICENSE-MIT] ( LICENSE-MIT ) or http://opensource.org/licenses/MIT )
4387
4488at your option.
4589
4690Unless you explicitly state otherwise, any contribution intentionally submitted
4791for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
4892dual licensed as above, without any additional terms or conditions.
4993
50-
51- [ 67 ] : https://github.com/LIHPC-Computational-Geometry/coupe/pull/67
5294[ coupe ] : https://docs.rs/coupe
95+
5396[ discussions ] : https://github.com/LIHPC-Computational-Geometry/coupe/discussions
97+
5498[ issues ] : https://github.com/LIHPC-Computational-Geometry/coupe/issues
99+
55100[ pulls ] : https://github.com/LIHPC-Computational-Geometry/coupe/pulls
0 commit comments