diff --git a/.cirrus.yml b/.cirrus.yml index cf230c8..9af98d1 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -1,9 +1,36 @@ -#container: -# image: python:3.11 - # download at https://api.cirrus-ci.com/v1/artifact/github/electronstudio/raylib-python-cffi/main/binary.zip -task: +pi_task: + arm_container: + matrix: + - image: dtcooper/raspberrypi-os:python-bullseye + - image: dtcooper/raspberrypi-os:python3.11-bullseye + - image: dtcooper/raspberrypi-os:python3.10-bullseye + - image: dtcooper/raspberrypi-os:python3.9-bullseye + setup_script: + - apt update + - apt -y install cmake libasound2-dev mesa-common-dev libx11-dev libxrandr-dev libxi-dev xorg-dev libgl1-mesa-dev libglu1-mesa-dev + build_raylib_script: + - git submodule update --init --recursive + - cd raylib-c + - mkdir build + - cd build + - cmake -DPLATFORM="Desktop" -DOPENGL_VERSION=2.1 -DBUILD_EXAMPLES=OFF -DCUSTOMIZE_BUILD=ON -DSUPPORT_FILEFORMAT_JPG=ON -DSUPPORT_FILEFORMAT_FLAC=ON -DWITH_PIC=ON -DCMAKE_BUILD_TYPE=Release .. + - make -j2 + - make install + build_script: + - cp -r raylib-c/src/external/glfw/include/GLFW /usr/local/include/ + - cp physac/src/physac.h /usr/local/include/ + - cp raygui/src/raygui.h /usr/local/include/ + - python -m pip install --break-system-packages --upgrade pip + - python -m pip install --break-system-packages cffi + - python -m pip install --break-system-packages setuptools + - python -m pip install --break-system-packages wheel + - python setup.py bdist_wheel --plat-name manylinux2014_aarch64 + artifacts: + path: "dist/*" + +mac_task: macos_instance: matrix: - image: ghcr.io/cirruslabs/macos-ventura-xcode:latest diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 80030f2..2bff3d0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -17,7 +17,7 @@ jobs: runs-on: macos-11 strategy: matrix: - python-version: [ '3.7', '3.8', '3.9', '3.10', '3.11', '3.12', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13.0-beta - 3.13.0', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -51,7 +51,7 @@ jobs: - name: Build raylib-python-cffi run: | python -m pip install --upgrade pip - pip3 install cffi + pip3 install "cffi>=1.17.0rc1" pip3 install wheel pip3 install setuptools python setup.py bdist_wheel --plat-name macosx_10_15_x86_64 @@ -166,7 +166,7 @@ jobs: # You can use PyPy versions in python-version. # For example, pypy2 and pypy3 matrix: - python-version: [ '3.7', '3.8', '3.9', '3.10', '3.11', '3.12', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13.0-beta - 3.13.0', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -200,7 +200,7 @@ jobs: - name: Build raylib-python-cffi run: | python -m pip install --upgrade pip - pip3 install cffi + pip3 install "cffi>=1.17.0rc1" pip3 install wheel pip3 install setuptools python setup.py bdist_wheel --plat-name manylinux2014_x86_64 @@ -250,7 +250,7 @@ jobs: # You can use PyPy versions in python-version. # For example, pypy2 and pypy3 matrix: - python-version: [ '3.7', '3.8', '3.9', '3.10', '3.11', '3.12', 'pypy-3.7', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] + python-version: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13.0-beta - 3.13.0', 'pypy-3.8', 'pypy-3.9', 'pypy-3.10' ] steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 @@ -282,7 +282,7 @@ jobs: - name: Build raylib-python-cffi run: | python -m pip install --upgrade pip - pip3 install cffi + pip3 install "cffi>=1.17.0rc1" pip3 install wheel pip3 install setuptools del raylib\dynamic\*.so* >nul 2>&1 @@ -311,7 +311,7 @@ jobs: uses: actions/setup-python@v2.2.2 with: # Version range or exact version of a Python version to use, using SemVer's version range syntax. - python-version: '3.10' + python-version: '3.12' # The target architecture (x86, x64) of the Python interpreter. architecture: x64 @@ -334,7 +334,7 @@ jobs: - name: Build raylib-python-cffi run: | python -m pip install --upgrade pip - pip3 install cffi + pip3 install "cffi>=1.17.0rc1" pip3 install wheel pip3 install setuptools python setup.py sdist @@ -358,14 +358,14 @@ jobs: uses: actions/setup-python@v2.2.2 with: # Version range or exact version of a Python version to use, using SemVer's version range syntax. - python-version: '3.10' + python-version: '3.12' # The target architecture (x86, x64) of the Python interpreter. architecture: x64 - name: Build raylib-python-cffi-dynamic run: | python -m pip install --upgrade pip - pip3 install cffi + pip3 install "cffi>=1.17.0rc1" pip3 install wheel pip3 install setuptools cd dynamic diff --git a/setup.py b/setup.py index 5606ba2..db835ae 100644 --- a/setup.py +++ b/setup.py @@ -30,6 +30,8 @@ def has_ext_modules(foo): classifiers=[ "License :: OSI Approved :: Eclipse Public License 2.0 (EPL-2.0)", "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.9", @@ -38,7 +40,7 @@ def has_ext_modules(foo): ], packages=["raylib", "pyray"], include_package_data=True, - install_requires=["cffi>=1.14.6"], + install_requires=["cffi>=1.17.0rc1"], distclass=BinaryDistribution, cffi_modules=["raylib/build.py:ffibuilder"] )