Skip to content

Commit

Permalink
Merge pull request #25 from SimonDanisch/master
Browse files Browse the repository at this point in the history
Build wrapper with BinaryBuilder
  • Loading branch information
fverdugo authored Sep 29, 2022
2 parents 750265b + c045286 commit 3067bba
Show file tree
Hide file tree
Showing 15 changed files with 83 additions and 614 deletions.
13 changes: 7 additions & 6 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,16 @@ jobs:
fail-fast: false
matrix:
version:
- '1'
- '1.0'
- '1.3'
- '1'
- '1.6'
os:
- [ubuntu-latest]
- ubuntu-latest
- macOS-latest
- windows-latest
arch:
- x64
steps:
# Cancel ongoing CI test runs if pushing to branch again before the previous tests
# Cancel ongoing CI test runs if pushing to branch again before the previous tests
# have finished
- name: Cancel ongoing test runs for previous commits
uses: styfle/[email protected]
Expand Down Expand Up @@ -51,4 +52,4 @@ jobs:
- uses: julia-actions/julia-processcoverage@v1
- uses: codecov/codecov-action@v1
with:
file: lcov.info
file: lcov.info
13 changes: 5 additions & 8 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,21 +1,18 @@
name = "MiniQhull"
uuid = "978d7f02-9e05-4691-894f-ae31a51d76ca"
authors = ["Francesc Verdugo <[email protected]>", "Victor Sande <[email protected]>"]
version = "0.3.1"
version = "0.4.0"

[deps]
CMake = "631607c0-34d2-5d66-819e-eb0f9aa2061a"
Libdl = "8f399da3-3557-5675-b5ff-fb832c97cbdb"
Qhull_jll = "784f63db-0788-585a-bace-daefebcd302b"
QhullMiniWrapper_jll = "460c41e3-6112-5d7f-b78c-b6823adb3f2d"

[compat]
CMake = "1.2.0"
Qhull_jll = "8"
julia = "1"
julia = "1.6"
QhullMiniWrapper_jll = "1"

[extras]
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

[targets]
test = ["Test", "StaticArrays"]
64 changes: 5 additions & 59 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ delaunay(points::AbstractVector) -> Matrix{Int32}
```

In this variant, the cloud of points is specified with a vector of `dim`-element vectors or
tuples. It is also possible to use a vector of other tuple-like types, like `SVector` from
tuples. It is also possible to use a vector of other tuple-like types, like `SVector` from
[StaticArrays.jl](https://github.com/JuliaArrays/StaticArrays.jl).

### Adjusting Qhull flags
Expand Down Expand Up @@ -80,67 +80,13 @@ connectivity = delaunay(pts, flags)

## Installation

`MiniQhull` is a registered Julia package. If your system fulfills all the requirements (see below), `MiniQhull` can be installed using the command:
`MiniQhull` is a registered Julia package. `MiniQhull` can be installed using the command:

```
pkg> add MiniQhull
```

If, for any reason, you need to manually build the project, write down the following commands in the Julia REPL:
```
pkg> add MiniQhull
pkg> build MiniQhull
```

### Requirements

The `MiniQhull` package requires the [Qhull](http://www.qhull.org/) reentrant library installed in your system.

- By default, if `julia >= 1.3`, it will use [`Qhull_jll` library](https://github.com/JuliaBinaryWrappers/Qhull_jll.jl) and you don't need to manually install anything.
- If you need to perform a custom `Qhull` installation. It can be installed in any path on your local machine as long as you export the environment variable `QHULL_ROOT_DIR` pointing to the installation directory.
- If none of the previous choices are used, `MiniQhull` will try to find the library in the usual linux user library directory (`/usr/lib`).

`MiniQhull` also requires any C compiler installed on the system.

#### Qhull installation

##### From Sources

Custom installation of `Qhull` can be performed as described in the official [Qhull installation instructions](http://www.qhull.org/README.txt).
You can find the latest source code in the oficial [Qhull download section](http://www.qhull.org/download/).

##### Debian-based installation from package manager

The reentrant `Qhull` library can be installed with `apt` in recent Debian-based linux distributions as follows:

```
$ sudo apt-get install update
$ sudo apt-get install libqhull-r7 libqhull-dev
```

If you need to install a C compiler, it can be also obtained by means of `apt` tool:
```
$ sudo apt-get update
$ sudo apt-get install gcc build-essential
```

## Continuous integration

In order to use `MiniQhull` in continuous integration jobs, you must ensure that its installation requirements are fullfilled in the CI environment.

For `julia < 1.3` jobs, if your CI process is based on `Travis-CI` you can add the following block at the beginning of your `.travis.yml` file:

```
os:
- linux
dist:
- bionic
addons:
apt:
update: true
packages:
- gcc
- libqhull-r7
- libqhull-dev
```
`MiniQhull` depends two binary dependencies which are build for all Platforms by [BinaryBuilder](https://binarybuilder.org/):

- [Qhull_jll](https://github.com/JuliaBinaryWrappers/Qhull_jll.jl)
- [QhullMiniWrapper_jll](https://github.com/JuliaBinaryWrappers/QhullMiniWrapper_jll.jl)
58 changes: 0 additions & 58 deletions deps/MiniQhullWrapper/CMake/Modules/FindQhull.cmake

This file was deleted.

76 changes: 0 additions & 76 deletions deps/MiniQhullWrapper/CMakeLists.txt

This file was deleted.

8 changes: 0 additions & 8 deletions deps/MiniQhullWrapper/src/include/qhullwrapper.h

This file was deleted.

17 changes: 0 additions & 17 deletions deps/MiniQhullWrapper/src/lib/CMakeLists.txt

This file was deleted.

Loading

3 comments on commit 3067bba

@SimonDanisch
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fverdugo, should we release a new version?

@fverdugo
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JuliaRegistrator register()

@JuliaRegistrator
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Registration pull request created: JuliaRegistries/General/69259

After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.

This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:

git tag -a v0.4.0 -m "<description of version>" 3067bbadd4f896c30042a8a7c7cb3b1079ced22e
git push origin v0.4.0

Please sign in to comment.