1
0
mirror of https://github.com/TREX-CoE/trexio.git synced 2024-07-22 10:47:43 +02:00

[pre-release] upgrade versions and produce wheels for CPython 3.10

This commit is contained in:
q-posev 2021-12-27 16:26:17 +01:00
parent 0a8aa638f6
commit 6ab5c67ebe
6 changed files with 28 additions and 22 deletions

View File

@ -3,9 +3,9 @@ cmake_minimum_required(VERSION 3.16)
# =========== SETUP THE PROJECT =============
# Initialize the CMake project.
project(Trexio
VERSION 2.0.0
DESCRIPTION "TREX I/O library"
project(Trexio
VERSION 2.1.0
DESCRIPTION "TREX I/O library"
LANGUAGES C Fortran
)
@ -43,4 +43,3 @@ add_subdirectory(src)
# Add subdirectory with unit tests.
enable_testing()
add_subdirectory(tests)

View File

@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
AC_INIT([trexio],[2.0.0],[https://github.com/TREX-CoE/trexio/issues])
AC_INIT([trexio],[2.1.0],[https://github.com/TREX-CoE/trexio/issues])
AC_CONFIG_SRCDIR([Makefile.in])
AC_CONFIG_HEADERS([include/config.h])
@ -222,4 +222,3 @@ where the optional <target> is:
check - run unit tests
install - install the library
--------------------------------------------------"

View File

@ -1,7 +1,7 @@
#!/bin/bash
set -x
set -e
set -e
export H5_LDFLAGS=-L/usr/local/lib
export H5_CFLAGS=-I/usr/local/include
@ -30,7 +30,7 @@ gzip -cd /tmp/trexio-${TR_VERSION}.tar.gz | tar xvf -
cd trexio-${TR_VERSION}
# the function below build manylinux wheels based on the provided version of python (e.g. build_wheel_for_py 36)
function build_wheel_for_py()
function build_wheel_for_py()
{
if [[ -z "$1" ]]; then
@ -52,19 +52,21 @@ function build_wheel_for_py()
# create and activate a virtual environment based on CPython version ${PYVERSION}
/opt/python/${CPYTHON}/bin/python3 -m venv --clear trexio-manylinux-py${PYVERSION}
source trexio-manylinux-py${PYVERSION}/bin/activate
source trexio-manylinux-py${PYVERSION}/bin/activate
python3 --version
# upgrade pip, otherwise it complains that manylinux wheel is "...not supported wheel on this platform"
pip install --upgrade pip
pip install --upgrade pip
# install dependencies needed to build manylinux wheel
pip install --upgrade setuptools wheel auditwheel
if [ ${PYVERSION} -eq 36 ] || [ ${PYVERSION} -eq 37 ]; then
pip install numpy==1.17.3
elif [ ${PYVERSION} -eq 38 ]; then
pip install numpy==1.18.3
else
elif [ ${PYVERSION} -eq 39 ]; then
pip install numpy==1.19.3
else
pip install numpy==1.21.4
fi
# set an environment variable needed to locate numpy header files
@ -94,9 +96,8 @@ function build_wheel_for_py()
}
# build wheels for all versions of CPython in this container
for CPYVERSION in 36 37 38 39
# build wheels for all versions of CPython in this container
for CPYVERSION in 36 37 38 39 310
do
build_wheel_for_py ${CPYVERSION}
done

View File

@ -5,16 +5,23 @@ requires = [
"pkgconfig",
# Numpy requirements for different OS/architectures
# Copied from https://github.com/scipy/scipy/blob/master/pyproject.toml (which is also licensed under BSD)
"numpy==1.17.3; python_version=='3.6' and (platform_machine!='arm64' or platform_system!='Darwin') and platform_machine!='aarch64'",
"numpy==1.17.3; python_version=='3.7' and (platform_machine!='arm64' or platform_system!='Darwin') and platform_machine!='aarch64'",
"numpy==1.18.3; python_version=='3.8' and (platform_machine!='arm64' or platform_system!='Darwin') and platform_machine!='aarch64'",
"numpy==1.19.3; python_version>='3.9' and (platform_machine!='arm64' or platform_system!='Darwin')",
"numpy==1.17.3; python_version=='3.6' and (platform_machine!='arm64' or platform_system!='Darwin') and platform_machine!='aarch64' and platform_python_implementation != 'PyPy'",
"numpy==1.17.3; python_version=='3.7' and (platform_machine!='arm64' or platform_system!='Darwin') and platform_machine!='aarch64' and platform_python_implementation != 'PyPy'",
"numpy==1.18.3; python_version=='3.8' and (platform_machine!='arm64' or platform_system!='Darwin') and platform_machine!='aarch64' and platform_python_implementation != 'PyPy'",
"numpy==1.19.3; python_version=='3.9' and (platform_machine!='arm64' or platform_system!='Darwin') and platform_python_implementation != 'PyPy'",
"numpy==1.21.4; python_version=='3.10' and platform_python_implementation != 'PyPy'",
# Aarch64(Python 3.9 requirements are the same as AMD64)
"numpy==1.19.2; python_version=='3.6' and platform_machine=='aarch64'",
"numpy==1.19.2; python_version=='3.7' and platform_machine=='aarch64'",
"numpy==1.19.2; python_version=='3.8' and platform_machine=='aarch64'",
# Darwin Arm64
"numpy>=1.20.0; python_version=='3.8' and platform_machine=='arm64' and platform_system=='Darwin'",
"numpy>=1.20.0; python_version=='3.9' and platform_machine=='arm64' and platform_system=='Darwin'"
"numpy>=1.20.0; python_version=='3.9' and platform_machine=='arm64' and platform_system=='Darwin'",
# For Python versions which aren't yet officially supported,
# we specify an unpinned NumPy which allows source distributions
# to be used and allows wheels to be used as soon as they
# become available.
"numpy; python_version>='3.11'",
"numpy; python_version>='3.8' and platform_python_implementation=='PyPy'",
]
build-backend = "setuptools.build_meta"

View File

@ -1 +1 @@
__version__ = "1.0.0"
__version__ = "1.1.0"

View File

@ -4,13 +4,14 @@
#+BEGIN_EXPORT html
<script async src="https://cse.google.com/cse.js?cx=a67f8ab65a66f97f2"></script>
<div class="gcse-search"></div>
<div class="gcse-search"></div>
#+END_EXPORT
------------------
- [[./tutorial_benzene.html][Tutorial]]
- [[./trex.html][Data stored with TREXIO]]
- [[./examples.html][How-to guide]]
- [[./templator_front.html][Front end API]]
- [[./templator_hdf5.html][HDF5 back end]]
- [[./templator_text.html][TEXT back end]]
@ -34,4 +35,3 @@
[[https://trex-coe.eu/sites/default/files/inline-images/euflag.jpg]] [[https://trex-coe.eu][TREX: Targeting Real Chemical Accuracy at the Exascale]] project has received funding from the European Unions Horizon 2020 - Research and Innovation program - under grant agreement no. 952165. The content of this document does not represent the opinion of the European Union, and the European Union is not responsible for any use that might be made of such content.
# -*- mode: org -*-