Skip to content

Commit

Permalink
First changes for converting to FLINT 3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
albinahlback committed Jan 17, 2024
1 parent 34c280b commit 8d33505
Show file tree
Hide file tree
Showing 4 changed files with 5 additions and 33 deletions.
8 changes: 1 addition & 7 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,6 @@ version = "0.39.1"

[deps]
AbstractAlgebra = "c3fe647b-3220-5bb0-a1ea-a7954cac585d"
Antic_jll = "e21ec000-9f72-519e-ba6d-10061e575a27"
Arb_jll = "d9960996-1013-53c9-9ba4-74a4155039c3"
Calcium_jll = "fcfa6d1b-d8ce-59d5-8c0a-c0d7f69e4f40"
FLINT_jll = "e134572f-a0d5-539d-bddf-3cad8db41a82"
Libdl = "8f399da3-3557-5675-b5ff-fb832c97cbdb"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
Expand All @@ -17,10 +14,7 @@ SHA = "ea8e919c-243c-51af-8825-aaa63cd721ce"

[compat]
AbstractAlgebra = "0.35.0"
Antic_jll = "~0.201.500"
Arb_jll = "~200.2300.000"
Calcium_jll = "~0.401.100"
FLINT_jll = "^200.900.006"
FLINT_jll = "^300.0.0"
Libdl = "1.6"
LinearAlgebra = "1.6"
Pkg = "1.6"
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,6 @@ The official Nemo repository is at:

Nemo currently provides:

* Wrappers of MPIR, Flint, Arb and Antic
* Wrappers of [FLINT](https://flintlib.org/) (now also containing the previous projects Arb and Antic)
* Generic polynomial rings, matrix spaces, fraction fields, residue rings, power series
* finite fields, p-adics, integers, rationals, permutations and characters, number fields
12 changes: 3 additions & 9 deletions docs/src/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -145,19 +145,13 @@ julia> @time divexact((u*exp(x*u)), (exp(u)-1));

## Building dependencies from source

Nemo depends on various C libraries which are installed using binaries by default.
With julia version >= 1.3, the use of these binaries can be overridden by putting the following into the file `~/.julia/artifacts/Overrides.toml`:
Nemo depends on the FLINT C library which is installed using binaries by
default. With Julia version >= 1.3, the use of this binary can be overridden by
putting the following into the file `~/.julia/artifacts/Overrides.toml`:
```toml
[e134572f-a0d5-539d-bddf-3cad8db41a82]
FLINT = "/prefix/for/libflint"

[d9960996-1013-53c9-9ba4-74a4155039c3]
Arb = "/prefix/for/libarb"

[e21ec000-9f72-519e-ba6d-10061e575a27]
Antic = "/prefix/for/libantic"
```
(If only a specific library should be overridden, only the specific entry should be added.)

## Experimental threading support for flint

Expand Down
16 changes: 0 additions & 16 deletions src/Nemo.jl
Original file line number Diff line number Diff line change
Expand Up @@ -207,9 +207,6 @@ include("Exports.jl")
#
###############################################################################

using Arb_jll
using Antic_jll
using Calcium_jll
using FLINT_jll

const pkgdir = realpath(joinpath(dirname(@__DIR__)))
Expand All @@ -220,19 +217,6 @@ function flint_abort()
error("Problem in the Flint-Subsystem")
end

# check whether we are using flint version >= 3.0 (or some recent enough dev version),
# which changed the layout of some structs
_ptr = Libdl.dlopen(libflint)
if Libdl.dlsym(_ptr, :_fmpz_mod_vec_set_fmpz_vec_threaded; throw_error = false) !== nothing
const NEW_FLINT = true
libantic = libflint
libarb = libflint
libcalcium = libflint
else
const NEW_FLINT = false
end
Libdl.dlclose(_ptr)

################################################################################
#
# Debugging tools for allocation tracking
Expand Down

0 comments on commit 8d33505

Please sign in to comment.