diff --git a/.github/workflows/Deployment.yml b/.github/workflows/Deployment.yml index 198c0a991..379745715 100644 --- a/.github/workflows/Deployment.yml +++ b/.github/workflows/Deployment.yml @@ -71,6 +71,7 @@ jobs: name: windowsbuild${{ matrix.python-version }} path: ${{ github.workspace }}/dist/*.whl overwrite: true + build-mac-silicon-wheels: runs-on: macos-latest-xlarge @@ -112,7 +113,7 @@ jobs: path: ${{ github.workspace }}/dist/*.whl overwrite: true - build-linux-wheels: + build-linux-x64-wheels: runs-on: ubuntu-22.04 env: @@ -157,9 +158,54 @@ jobs: path: ${{ github.workspace }}/dist/*.whl overwrite: true + build-linux-aarch64-wheels: + + runs-on: ubuntu-22.04-arm + env: + CXX: g++-10 + strategy: + matrix: + python-version: [ 3.8, 3.9, "3.10", "3.11", "3.12", "3.13", "3.14" ] + + steps: + + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Retrieve submodules/Dependencies + run: | + git submodule update --init --recursive ./thirdparty/imgui + git submodule update --init --recursive ./thirdparty/implot + git submodule update --init --recursive ./thirdparty/glfw + sudo apt-get update + sudo apt-get install libglu1-mesa-dev libgl1-mesa-dev xorg-dev libxrandr-dev -y + + - name: Mark Versions + run: | + cd $GITHUB_WORKSPACE + echo ${{ github.event.inputs.version }} > version_number.txt + + - name: Build Wheel + run: | + cd $GITHUB_WORKSPACE + python -m pip install --upgrade pip twine wheel setuptools + python -m setup bdist_wheel --plat-name manylinux2014_aarch64 --dist-dir dist + + - name: Upload Linux ${{ matrix.python-version }} Wheel + uses: actions/upload-artifact@v4 + with: + name: linuxaarchbuild${{ matrix.python-version }} + path: ${{ github.workspace }}/dist/*.whl + overwrite: true + deploy-packages: - needs: [build-windows-wheels, build-linux-wheels, build-mac-silicon-wheels] + needs: [build-windows-wheels, build-linux-x64-wheels, build-linux-aarch64-wheels, build-mac-silicon-wheels] runs-on: windows-2022 steps: @@ -186,6 +232,7 @@ jobs: python -m twine upload windowsbuild*/* -u __token__ -p ${{ secrets.PYPI_PASSWORD }} --skip-existing python -m twine upload apple10sbuild*/* -u __token__ -p ${{ secrets.PYPI_PASSWORD }} --skip-existing python -m twine upload linuxbuild*/* -u __token__ -p ${{ secrets.PYPI_PASSWORD }} --skip-existing + python -m twine upload linuxaarchbuild*/* -u __token__ -p ${{ secrets.PYPI_PASSWORD }} --skip-existing - name: Test PyPi Deployment shell: cmd @@ -195,3 +242,4 @@ jobs: python -m twine upload --repository testpypi windowsbuild*/* -u __token__ -p ${{ secrets.TEST_PYPI_PASSWORD }} --skip-existing python -m twine upload --repository testpypi apple10sbuild*/* -u __token__ -p ${{ secrets.TEST_PYPI_PASSWORD }} --skip-existing python -m twine upload --repository testpypi linuxbuild*/* -u __token__ -p ${{ secrets.TEST_PYPI_PASSWORD }} --skip-existing + python -m twine upload --repository testpypi linuxaarchbuild*/* -u __token__ -p ${{ secrets.TEST_PYPI_PASSWORD }} --skip-existing diff --git a/.github/workflows/EmbeddedBuild.yml b/.github/workflows/EmbeddedBuild.yml index 03f23e342..e21d690cc 100644 --- a/.github/workflows/EmbeddedBuild.yml +++ b/.github/workflows/EmbeddedBuild.yml @@ -63,7 +63,7 @@ jobs: # DearSandbox.exe build-MacOS: - + runs-on: MacOS-latest if: ${{! contains(github.event.head_commit.message, '[individual]') || contains(github.event.head_commit.message, '[apple]')}} @@ -74,7 +74,7 @@ jobs: - name: Retrieve submodules run: git submodule update --init --recursive - + - name: Build Python run: | cd $GITHUB_WORKSPACE @@ -95,8 +95,10 @@ jobs: cd .. cmake --build cmake-build-debug --config Debug - build-Ubuntu: - + build-x64-Linux: + + # Delete in the future + name: build-Ubuntu runs-on: ubuntu-22.04 env: CXX: g++-10 @@ -113,9 +115,49 @@ jobs: - name: Install Dependencies run: | cd $GITHUB_WORKSPACE - sudo apt-get update + sudo apt-get update sudo apt-get install libgl1-mesa-dev xorg-dev - + + - name: Build Python + run: | + cd $GITHUB_WORKSPACE + cd thirdparty/cpython + mkdir -p build/debug + chmod +x configure + cd build/debug + ../../configure --with-pydebug --enable-shared + make + + - name: Build DearPyGui + run: | + cd $GITHUB_WORKSPACE + mkdir cmake-build-debug + cd cmake-build-debug + cmake .. -DMV_TESTS_ONLY=True + cd .. + cmake --build cmake-build-debug --config Debug + + build-aarch64-Linux: + + runs-on: ubuntu-22.04-arm + env: + CXX: g++-10 + if: ${{! contains(github.event.head_commit.message, '[individual]') || contains(github.event.head_commit.message, '[linux]')}} + + steps: + + - name: Checkout + uses: actions/checkout@v4 + + - name: Retrieve submodules + run: git submodule update --init --recursive + + - name: Install Dependencies + run: | + cd $GITHUB_WORKSPACE + sudo apt-get update + sudo apt-get install libgl1-mesa-dev xorg-dev + - name: Build Python run: | cd $GITHUB_WORKSPACE @@ -133,4 +175,4 @@ jobs: cd cmake-build-debug cmake .. -DMV_TESTS_ONLY=True cd .. - cmake --build cmake-build-debug --config Debug \ No newline at end of file + cmake --build cmake-build-debug --config Debug