Skip to content

Commit 96f3b4f

Browse files
authored
Merge branch 'master' into posdef
2 parents e46379f + 64ddd71 commit 96f3b4f

37 files changed

+543
-1140
lines changed

.github/workflows/ci.yml

Lines changed: 178 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,178 @@
1+
name: Build and test symengine
2+
on: [push, pull_request]
3+
4+
jobs:
5+
build:
6+
runs-on: ${{ matrix.OS }}
7+
strategy:
8+
fail-fast: false
9+
matrix:
10+
include:
11+
- BUILD_TYPE: Debug
12+
WITH_BFD: yes
13+
PYTHON_VERSION: 3.6
14+
TEST_SYMPY: yes
15+
OS: ubuntu-16.04
16+
CC: gcc
17+
18+
- BUILD_TYPE: Debug
19+
WITH_BFD: yes
20+
PYTHON_VERSION: 3.9
21+
TEST_SYMPY: yes
22+
OS: ubuntu-16.04
23+
CC: gcc
24+
25+
- BUILD_TYPE: Release
26+
PYTHON_VERSION: 3.7
27+
BUILD_SHARED_LIBS: yes
28+
OS: ubuntu-16.04
29+
CC: gcc
30+
31+
- BUILD_TYPE: Release
32+
PYTHON_VERSION: 3.7
33+
WITH_MPFR: yes
34+
INTEGER_CLASS: gmpxx
35+
WITH_NUMPY: no
36+
OS: ubuntu-16.04
37+
CC: gcc
38+
39+
- BUILD_TYPE: Release
40+
PYTHON_VERSION: 3.8
41+
WITH_MPC: yes
42+
OS: ubuntu-16.04
43+
CC: gcc
44+
45+
- BUILD_TYPE: Release
46+
WITH_MPFR: yes
47+
PYTHON_VERSION: 3.8
48+
OS: ubuntu-16.04
49+
CC: gcc
50+
51+
- BUILD_TYPE: Release
52+
PYTHON_VERSION: 3.9
53+
WITH_MPC: yes
54+
OS: ubuntu-16.04
55+
CC: gcc
56+
57+
- BUILD_TYPE: Release
58+
PYTHON_VERSION: 3.6
59+
WITH_MPC: yes
60+
INTEGER_CLASS: flint
61+
WITH_FLINT: yes
62+
OS: ubuntu-16.04
63+
CC: gcc
64+
65+
- BUILD_TYPE: Debug
66+
PYTHON_VERSION: 3.7
67+
WITH_BFD: yes
68+
WITH_PIRANHA: yes
69+
OS: ubuntu-16.04
70+
CC: gcc
71+
EXTRA_APT_PACKAGES: "g++-4.8"
72+
73+
- BUILD_TYPE: Debug
74+
PYTHON_VERSION: 3.8
75+
WITH_BFD: yes
76+
BUILD_SHARED_LIBS: yes
77+
OS: ubuntu-16.04
78+
CC: clang
79+
80+
- BUILD_TYPE: Release
81+
PYTHON_VERSION: 3.7
82+
WITH_NUMPY: yes
83+
OS: ubuntu-16.04
84+
CC: clang
85+
86+
- BUILD_TYPE: Debug
87+
PYTHON_VERSION: 3.6
88+
WITH_SYMPY: yes
89+
WITH_LLVM: 8.0
90+
WITH_SCIPY: yes
91+
OS: ubuntu-16.04
92+
CC: gcc-4.8
93+
CXX: g++-4.8
94+
EXTRA_APT_REPOSITORY: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main'
95+
EXTRA_APT_PACKAGES: 'g++-4.8 libstdc++-4.8-dev binutils-dev llvm-8-dev'
96+
97+
- BUILD_TYPE: Debug
98+
PYTHON_VERSION: 3.7
99+
WITH_SCIPY: yes
100+
WITH_LLVM: 5.0
101+
OS: macos-latest
102+
CC: clang
103+
104+
- BUILD_TYPE: Release
105+
PYTHON_VERSION: 3.9
106+
WITH_NUMPY: no
107+
OS: macos-latest
108+
CC: clang
109+
110+
- BUILD_TYPE: Debug
111+
PYTHON_VERSION: 3.7
112+
WITH_NUMPY: no
113+
OS: macos-latest
114+
CC: gcc
115+
116+
- BUILD_TYPE: Release
117+
PYTHON_VERSION: 3.6
118+
OS: macos-latest
119+
CC: gcc
120+
121+
- BUILD_TYPE: Release
122+
PYTHON_VERSION: 3.6
123+
OS: ubuntu-16.04
124+
WITH_MPC: yes
125+
WITH_MPFR: yes
126+
WITH_FLINT: yes
127+
WITH_SCIPY: yes
128+
WITH_DOCS: yes
129+
INTEGER_CLASS: flint
130+
TEST_SYMPY: yes
131+
CC: gcc
132+
133+
steps:
134+
- name: Checkout code
135+
uses: actions/checkout@v2
136+
137+
- name: Build and test symengine
138+
shell: bash
139+
run: |
140+
source bin/test_symengine_unix.sh
141+
env:
142+
USE_GLIBCXX_DEBUG: ${{ matrix.USE_GLIBCXX_DEBUG }}
143+
WITH_MPFR: ${{ matrix.WITH_MPFR }}
144+
BUILD_BENCHMARKS: ${{ matrix.BUILD_BENCHMARKS }}
145+
WITH_LLVM: ${{ matrix.WITH_LLVM }}
146+
WITH_BENCHMARKS_NONIUS: ${{ matrix.WITH_BENCHMARKS_NONIUS }}
147+
WITH_SYMENGINE_RCP: ${{ matrix.WITH_SYMENGINE_RCP }}
148+
TEST_IN_TREE: ${{ matrix.TEST_IN_TREE }}
149+
WITH_SYMENGINE_THREAD_SAFE: ${{ matrix.WITH_SYMENGINE_THREAD_SAFE }}
150+
WITH_PRIMESIEVE: ${{ matrix.WITH_PRIMESIEVE }}
151+
INTEGER_CLASS: ${{ matrix.INTEGER_CLASS }}
152+
WITH_ARB: ${{ matrix.WITH_ARB }}
153+
WITH_PIRANHA: ${{ matrix.WITH_PIRANHA }}
154+
WITH_GCC_6: ${{ matrix.WITH_GCC_6 }}
155+
CONDA_ENV_FILE: ${{ matrix.CONDA_ENV_FILE }}
156+
WITH_BFD: ${{ matrix.WITH_BFD }}
157+
WITH_FLINT: ${{ matrix.WITH_FLINT }}
158+
EXTRA_APT_REPOSITORY: ${{ matrix.EXTRA_APT_REPOSITORY }}
159+
EXTRA_APT_PACKAGES: ${{ matrix.EXTRA_APT_PACKAGES }}
160+
TEST_CLANG_FORMAT: ${{ matrix.TEST_CLANG_FORMAT }}
161+
WITH_ECM: ${{ matrix.WITH_ECM }}
162+
WITH_LATEST_GCC: ${{ matrix.WITH_LATEST_GCC }}
163+
OS: ${{ matrix.OS }}
164+
WITH_FLINT_DEV: ${{ matrix.WITH_FLINT_DEV }}
165+
CC: ${{ matrix.CC }}
166+
WITH_COVERAGE: ${{ matrix.WITH_COVERAGE }}
167+
BUILD_TYPE: ${{ matrix.BUILD_TYPE }}
168+
WITH_SANITIZE: ${{ matrix.WITH_SANITIZE }}
169+
WITH_MPC: ${{ matrix.WITH_MPC }}
170+
MAKEFLAGS: ${{ matrix.MAKEFLAGS }}
171+
BUILD_SHARED_LIBS: ${{ matrix.BUILD_SHARED_LIBS }}
172+
173+
- name: Deploy Documentation
174+
if: ${{ (github.ref == 'refs/heads/main' && github.repository == 'Symengine/symengine.py') || (github.ref == 'refs/heads/master' && github.repository == 'Symengine/symengine.py')}}
175+
uses: peaceiris/actions-gh-pages@v3
176+
with:
177+
github_token: ${{ secrets.GITHUB_TOKEN }}
178+
publish_dir: ./genDocs

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,3 +35,8 @@ symengine.egg-info/
3535
# Temp files
3636
*~
3737
.eggs/
38+
39+
# Docs
40+
genDocs/
41+
docs/_build/
42+
docs/source/

.mailmap

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
1212
1313
14+
1415
1516
1617
Shikhar Jaiswal <[email protected]>

.travis.yml

Lines changed: 0 additions & 128 deletions
This file was deleted.

AUTHORS

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,6 @@ Alan Hu <[email protected]>
2626
Richard Otis <[email protected]>
2727
Erik Jansson Agnvall <[email protected]>
2828
Simon Stelter <[email protected]>
29+
Jialin Ma <[email protected]>
30+
Rikard Nordgren <[email protected]>
31+
Rohit Goswami <[email protected]>

CMakeLists.txt

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
cmake_minimum_required(VERSION 2.8)
1+
cmake_minimum_required(VERSION 2.8.12)
22
project(python_wrapper)
33

44
set(CMAKE_PREFIX_PATH ${SymEngine_DIR} ${CMAKE_PREFIX_PATH})
5-
find_package(SymEngine 0.6.0 REQUIRED CONFIG
5+
find_package(SymEngine 0.7.0 REQUIRED CONFIG
66
PATH_SUFFIXES lib/cmake/symengine cmake/symengine CMake/)
77
message("SymEngine_DIR : " ${SymEngine_DIR})
88
message("SymEngine Version : " ${SymEngine_VERSION})
@@ -45,15 +45,18 @@ foreach (PKG MPC MPFR PIRANHA FLINT LLVM)
4545
endif()
4646
endforeach()
4747

48-
message("CMAKE_BUILD_TYPE : ${CMAKE_BUILD_TYPE}")
49-
message("CMAKE_CXX_FLAGS : ${CMAKE_CXX_FLAGS}")
50-
message("CMAKE_CXX_FLAGS_RELEASE : ${CMAKE_CXX_FLAGS_RELEASE}")
51-
message("CMAKE_CXX_FLAGS_DEBUG : ${CMAKE_CXX_FLAGS_DEBUG}")
52-
message("HAVE_SYMENGINE_MPFR : ${HAVE_SYMENGINE_MPFR}")
53-
message("HAVE_SYMENGINE_MPC : ${HAVE_SYMENGINE_MPC}")
54-
message("HAVE_SYMENGINE_PIRANHA : ${HAVE_SYMENGINE_PIRANHA}")
55-
message("HAVE_SYMENGINE_FLINT : ${HAVE_SYMENGINE_FLINT}")
56-
message("HAVE_SYMENGINE_LLVM : ${HAVE_SYMENGINE_LLVM}")
48+
message("CMAKE_SYSTEM_PROCESSOR : ${CMAKE_SYSTEM_PROCESSOR}")
49+
message("CMAKE_BUILD_TYPE : ${CMAKE_BUILD_TYPE}")
50+
message("CMAKE_CXX_FLAGS : ${CMAKE_CXX_FLAGS}")
51+
message("CMAKE_CXX_FLAGS_RELEASE : ${CMAKE_CXX_FLAGS_RELEASE}")
52+
message("CMAKE_CXX_FLAGS_DEBUG : ${CMAKE_CXX_FLAGS_DEBUG}")
53+
message("HAVE_SYMENGINE_MPFR : ${HAVE_SYMENGINE_MPFR}")
54+
message("HAVE_SYMENGINE_MPC : ${HAVE_SYMENGINE_MPC}")
55+
message("HAVE_SYMENGINE_PIRANHA : ${HAVE_SYMENGINE_PIRANHA}")
56+
message("HAVE_SYMENGINE_FLINT : ${HAVE_SYMENGINE_FLINT}")
57+
message("HAVE_SYMENGINE_LLVM : ${HAVE_SYMENGINE_LLVM}")
58+
message("HAVE_SYMENGINE_LLVM_LONG_DOUBLE : ${HAVE_SYMENGINE_LLVM_LONG_DOUBLE}")
59+
message("SYMENGINE_COPY_EXTENSION : ${SYMENGINE_COPY_EXTENSION}")
5760

5861
message("Copying source of python wrappers into: ${CMAKE_CURRENT_BINARY_DIR}")
5962
file(COPY symengine/ DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/symengine)

README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,10 @@ symengine.py is MIT licensed and uses several LGPL, BSD-3 and MIT licensed libra
7171

7272
Licenses for the dependencies of pip wheels are as follows,
7373

74-
pip wheels on Unix use GMP (LGPL v3), MPFR (LGPL v3), MPC (LGPL v3), LLVM (NCSA) and symengine (MIT + BSD-3).
75-
pip wheels on Windows use MPIR (LGPL v3) instead of GMP above.
76-
NumPy (BSD-3) and SymPy (BSD-3) are optional dependencies.
74+
pip wheels on Unix use GMP (LGPL-3.0-or-later), MPFR (LGPL-3.0-or-later),
75+
MPC (LGPL-3.0-or-later), LLVM (Apache-2.0), zlib (Zlib) and symengine (MIT AND BSD-3-Clause).
76+
pip wheels on Windows use MPIR (LGPL-3.0-or-later) instead of GMP above and
77+
pthreads-win32 (LGPL-3.0-or-later) additionally.
78+
NumPy (BSD-3-Clause) and SymPy (BSD-3-Clause) are optional dependencies.
7779
Sources for these binary dependencies can be found on https://github.com/symengine/symengine-wheels/releases
7880

0 commit comments

Comments
 (0)