diff --git a/.github/workflows/build-toolchain.yml b/.github/workflows/build-toolchain.yml new file mode 100644 index 000000000..3c74de925 --- /dev/null +++ b/.github/workflows/build-toolchain.yml @@ -0,0 +1,35 @@ +name: Build toolchain + +on: + workflow_dispatch: + +jobs: + build-macos: + name: build-macos-toolchain + runs-on: macos-12 + steps: + - name: Checkout the repository + uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Install denependecies + run: | + brew install bash coreutils autoconf automake genext2fs make wget gnu-sed + echo "$(brew --prefix make)/libexec/gnubin" >> $GITHUB_PATH + echo "$(brew --prefix gnu-sed)/libexec/gnubin" >> $GITHUB_PATH + + - name: Build toolchain + run: | + mkdir ~/toolchain + git rev-parse --short HEAD > ~/toolchain/git-version + cd phoenix-rtos-build/toolchain/ + ./build-toolchain.sh i386-pc-phoenix "$HOME"/toolchain/ + # upload/download-artifact action don't preserve permissions and compresses to zip. Pack to archive and don't compress. + tar -C ~/toolchain -cvf ~/i386-pc-phoenix-macos.tar i386-pc-phoenix git-version + + - name: Upload toolchain artifacts + uses: actions/upload-artifact@v3 + with: + name: i386-pc-phoenix-macos + path: ~/i386-pc-phoenix-macos.tar diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml new file mode 100644 index 000000000..3d1b91082 --- /dev/null +++ b/.github/workflows/nightly.yml @@ -0,0 +1,58 @@ +name: Nightly + +on: + schedule: + - cron: '0 1 * * *' # everyday at 02:00 UTC+1 + workflow_dispatch: + +jobs: + build-macos: + name: build-macos + runs-on: macos-12 + strategy: + matrix: + target: [ia32-generic-qemu] + include: + - toolchain: i386-pc-phoenix + + steps: + - name: Checkout the repository + uses: actions/checkout@v3 + with: + submodules: recursive + + - name: Install denependecies + run: | + brew install bash coreutils autoconf automake genext2fs make wget gnu-sed + echo "$(brew --prefix make)/libexec/gnubin" >> $GITHUB_PATH + echo "$(brew --prefix gnu-sed)/libexec/gnubin" >> $GITHUB_PATH + + - name: Download toolchain + # TODO: download from github packages/releases + uses: dawidd6/action-download-artifact@v2 + with: + workflow: build-toolchain.yml + + - name: Install toolchain + working-directory: ${{ matrix.toolchain }}-macos + run: | + tar -xvf ${{ matrix.toolchain }}-macos.tar + echo "$(pwd)"/${{ matrix.toolchain }}/bin >> $GITHUB_PATH + + - name: Build + run: ./phoenix-rtos-build/build.sh all tests + env: + TARGET: ${{ matrix.target }} + + - name: Tar rootfs + working-directory: _fs + run: tar -cvf ../rootfs-${{ matrix.target }}.tar ${{ matrix.target }}/root + + - name: Upload build artifacts + uses: actions/upload-artifact@v3 + with: + name: phoenix-rtos-${{ matrix.target }}-macos-host + path: | + _boot/${{ matrix.target }} + rootfs-${{ matrix.target }}.tar + diff --git a/_projects/ia32-generic-qemu/build.project b/_projects/ia32-generic-qemu/build.project index 0951ed66a..bcd9b09ce 100644 --- a/_projects/ia32-generic-qemu/build.project +++ b/_projects/ia32-generic-qemu/build.project @@ -13,7 +13,7 @@ # Ports configuration - additional to the one from _targets # export PORTS_MBEDTLS=y -export PORTS_AZURE_SDK=y +export PORTS_AZURE_SDK=n # FIXME compiling on mac doesn't work b_image_project () {