From aeec7393daaaee364a7bfebf01cd17c261426bcd Mon Sep 17 00:00:00 2001 From: qianlongxu Date: Fri, 28 Jun 2024 14:33:01 +0800 Subject: [PATCH] all workflows use onestep --- .github/workflows/ass.yml | 148 +----------------------------- .github/workflows/bluray.yml | 71 +-------------- .github/workflows/dav1d.yml | 146 +----------------------------- .github/workflows/dvdread.yml | 146 +----------------------------- .github/workflows/ffmpeg.yml | 147 +----------------------------- .github/workflows/freetype.yml | 146 +----------------------------- .github/workflows/fribidi.yml | 146 +----------------------------- .github/workflows/harfbuzz.yml | 147 +----------------------------- .github/workflows/libyuv.yml | 160 --------------------------------- .github/workflows/onestep.sh | 78 ++++++++++------ .github/workflows/openssl.yml | 146 +----------------------------- .github/workflows/opus.yml | 3 +- .github/workflows/test.yml | 18 ++++ .github/workflows/unibreak.yml | 146 +----------------------------- configs/libs/test.sh | 39 ++++++++ 15 files changed, 133 insertions(+), 1554 deletions(-) delete mode 100644 .github/workflows/libyuv.yml create mode 100644 .github/workflows/test.yml create mode 100644 configs/libs/test.sh diff --git a/.github/workflows/ass.yml b/.github/workflows/ass.yml index ee1ef4a..1614951 100644 --- a/.github/workflows/ass.yml +++ b/.github/workflows/ass.yml @@ -14,150 +14,10 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - - name: Read Tag Version + - name: Install denpendencies run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=ass - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: | - ./main.sh init -p ios -l ${{ env.LIB_NAME }} - ./main.sh init -p tvos -l ${{ env.LIB_NAME }} - ./main.sh init -p macos -l ${{ env.LIB_NAME }} ./main.sh install -p ios -l 'harfbuzz fribidi unibreak' ./main.sh install -p tvos -l 'harfbuzz fribidi unibreak' - ./main.sh install -p macos -l 'harfbuzz fribidi unibreak' - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - cd ../ios - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../ios-src-log.md - cd ../tvos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../tvos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: do compile ios libs - run: | - ./main.sh compile -p ios -c build -l ${{ env.LIB_NAME }} - cd build/product/ios/universal - zip -rq ios-universal.zip ./* - cd ../universal-simulator - zip -rq ios-universal-simulator.zip ./* - - name: do compile tvos libs - run: | - ./main.sh compile -p tvos -c build -l ${{ env.LIB_NAME }} - cd build/product/tvos/universal - zip -rq tvos-universal.zip ./* - cd ../universal-simulator - zip -rq tvos-universal-simulator.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal/ios-universal.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal-simulator/ios-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal/tvos-universal.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal-simulator/tvos-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload ios src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/ios-src-log.md - asset_name: "ios-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload tvos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/tvos-src-log.md - asset_name: "tvos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text + ./main.sh install -p macos -l 'harfbuzz fribidi unibreak' + - name: One Step + run: .github/workflows/onestep.sh ass all \ No newline at end of file diff --git a/.github/workflows/bluray.yml b/.github/workflows/bluray.yml index c039224..4317efc 100644 --- a/.github/workflows/bluray.yml +++ b/.github/workflows/bluray.yml @@ -14,72 +14,5 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - - name: Read Tag Version - run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=bluray - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: ./main.sh init -p macos -l ${{ env.LIB_NAME }} - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text \ No newline at end of file + - name: One Step + run: .github/workflows/onestep.sh bluray macos \ No newline at end of file diff --git a/.github/workflows/dav1d.yml b/.github/workflows/dav1d.yml index 439b048..e9a4180 100644 --- a/.github/workflows/dav1d.yml +++ b/.github/workflows/dav1d.yml @@ -14,147 +14,5 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - - name: Read Tag Version - run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=dav1d - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: | - ./main.sh init -p ios -l ${{ env.LIB_NAME }} - ./main.sh init -p tvos -l ${{ env.LIB_NAME }} - ./main.sh init -p macos -l ${{ env.LIB_NAME }} - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - cd ../ios - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../ios-src-log.md - cd ../tvos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../tvos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: do compile ios libs - run: | - ./main.sh compile -p ios -c build -l ${{ env.LIB_NAME }} - cd build/product/ios/universal - zip -rq ios-universal.zip ./* - cd ../universal-simulator - zip -rq ios-universal-simulator.zip ./* - - name: do compile tvos libs - run: | - ./main.sh compile -p tvos -c build -l ${{ env.LIB_NAME }} - cd build/product/tvos/universal - zip -rq tvos-universal.zip ./* - cd ../universal-simulator - zip -rq tvos-universal-simulator.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal/ios-universal.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal-simulator/ios-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal/tvos-universal.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal-simulator/tvos-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload ios src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/ios-src-log.md - asset_name: "ios-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload tvos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/tvos-src-log.md - asset_name: "tvos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text + - name: One Step + run: .github/workflows/onestep.sh dav1d all \ No newline at end of file diff --git a/.github/workflows/dvdread.yml b/.github/workflows/dvdread.yml index 9407d5c..22d4005 100644 --- a/.github/workflows/dvdread.yml +++ b/.github/workflows/dvdread.yml @@ -14,147 +14,5 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - - name: Read Tag Version - run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=dvdread - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: | - ./main.sh init -p ios -l ${{ env.LIB_NAME }} - ./main.sh init -p tvos -l ${{ env.LIB_NAME }} - ./main.sh init -p macos -l ${{ env.LIB_NAME }} - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - cd ../ios - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../ios-src-log.md - cd ../tvos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../tvos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: do compile ios libs - run: | - ./main.sh compile -p ios -c build -l ${{ env.LIB_NAME }} - cd build/product/ios/universal - zip -rq ios-universal.zip ./* - cd ../universal-simulator - zip -rq ios-universal-simulator.zip ./* - - name: do compile tvos libs - run: | - ./main.sh compile -p tvos -c build -l ${{ env.LIB_NAME }} - cd build/product/tvos/universal - zip -rq tvos-universal.zip ./* - cd ../universal-simulator - zip -rq tvos-universal-simulator.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal/ios-universal.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal-simulator/ios-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal/tvos-universal.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal-simulator/tvos-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload ios src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/ios-src-log.md - asset_name: "ios-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload tvos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/tvos-src-log.md - asset_name: "tvos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text + - name: One Step + run: .github/workflows/onestep.sh dvdread all \ No newline at end of file diff --git a/.github/workflows/ffmpeg.yml b/.github/workflows/ffmpeg.yml index 6fcb9d9..54faabe 100644 --- a/.github/workflows/ffmpeg.yml +++ b/.github/workflows/ffmpeg.yml @@ -14,151 +14,10 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - - name: Read Tag Version + - name: Install denpendencies run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=ffmpeg - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: | - | - ./main.sh init -p ios -l ${{ env.LIB_NAME }} - ./main.sh init -p tvos -l ${{ env.LIB_NAME }} - ./main.sh init -p macos -l ${{ env.LIB_NAME }} ./main.sh install -p ios -l 'openssl opus dav1d dvdread' ./main.sh install -p tvos -l 'openssl opus dav1d dvdread' ./main.sh install -p macos -l 'openssl opus bluray dav1d dvdread' - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - cd ../ios - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../ios-src-log.md - cd ../tvos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../tvos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: do compile ios libs - run: | - ./main.sh compile -p ios -c build -l ${{ env.LIB_NAME }} - cd build/product/ios/universal - zip -rq ios-universal.zip ./* - cd ../universal-simulator - zip -rq ios-universal-simulator.zip ./* - - name: do compile tvos libs - run: | - ./main.sh compile -p tvos -c build -l ${{ env.LIB_NAME }} - cd build/product/tvos/universal - zip -rq tvos-universal.zip ./* - cd ../universal-simulator - zip -rq tvos-universal-simulator.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal/ios-universal.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal-simulator/ios-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal/tvos-universal.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal-simulator/tvos-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload ios src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/ios-src-log.md - asset_name: "ios-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload tvos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/tvos-src-log.md - asset_name: "tvos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text + - name: One Step + run: .github/workflows/onestep.sh ffmpeg all \ No newline at end of file diff --git a/.github/workflows/freetype.yml b/.github/workflows/freetype.yml index f9af8e5..4a14d87 100644 --- a/.github/workflows/freetype.yml +++ b/.github/workflows/freetype.yml @@ -14,147 +14,5 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - - name: Read Tag Version - run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=freetype - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: | - ./main.sh init -p ios -l ${{ env.LIB_NAME }} - ./main.sh init -p tvos -l ${{ env.LIB_NAME }} - ./main.sh init -p macos -l ${{ env.LIB_NAME }} - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - cd ../ios - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../ios-src-log.md - cd ../tvos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../tvos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: do compile ios libs - run: | - ./main.sh compile -p ios -c build -l ${{ env.LIB_NAME }} - cd build/product/ios/universal - zip -rq ios-universal.zip ./* - cd ../universal-simulator - zip -rq ios-universal-simulator.zip ./* - - name: do compile tvos libs - run: | - ./main.sh compile -p tvos -c build -l ${{ env.LIB_NAME }} - cd build/product/tvos/universal - zip -rq tvos-universal.zip ./* - cd ../universal-simulator - zip -rq tvos-universal-simulator.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal/ios-universal.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal-simulator/ios-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal/tvos-universal.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal-simulator/tvos-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload ios src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/ios-src-log.md - asset_name: "ios-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload tvos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/tvos-src-log.md - asset_name: "tvos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text + - name: One Step + run: .github/workflows/onestep.sh freetype all \ No newline at end of file diff --git a/.github/workflows/fribidi.yml b/.github/workflows/fribidi.yml index a8ddb42..4c1acb4 100644 --- a/.github/workflows/fribidi.yml +++ b/.github/workflows/fribidi.yml @@ -14,147 +14,5 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - - name: Read Tag Version - run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=fribidi - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: | - ./main.sh init -p ios -l ${{ env.LIB_NAME }} - ./main.sh init -p tvos -l ${{ env.LIB_NAME }} - ./main.sh init -p macos -l ${{ env.LIB_NAME }} - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - cd ../ios - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../ios-src-log.md - cd ../tvos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../tvos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: do compile ios libs - run: | - ./main.sh compile -p ios -c build -l ${{ env.LIB_NAME }} - cd build/product/ios/universal - zip -rq ios-universal.zip ./* - cd ../universal-simulator - zip -rq ios-universal-simulator.zip ./* - - name: do compile tvos libs - run: | - ./main.sh compile -p tvos -c build -l ${{ env.LIB_NAME }} - cd build/product/tvos/universal - zip -rq tvos-universal.zip ./* - cd ../universal-simulator - zip -rq tvos-universal-simulator.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal/ios-universal.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal-simulator/ios-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal/tvos-universal.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal-simulator/tvos-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload ios src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/ios-src-log.md - asset_name: "ios-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload tvos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/tvos-src-log.md - asset_name: "tvos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text + - name: One Step + run: .github/workflows/onestep.sh fribidi all \ No newline at end of file diff --git a/.github/workflows/harfbuzz.yml b/.github/workflows/harfbuzz.yml index 8b76315..9e82d26 100644 --- a/.github/workflows/harfbuzz.yml +++ b/.github/workflows/harfbuzz.yml @@ -14,151 +14,10 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - - name: Read Tag Version + - name: Install denpendencies run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=harfbuzz - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: | - | - ./main.sh init -p ios -l ${{ env.LIB_NAME }} - ./main.sh init -p tvos -l ${{ env.LIB_NAME }} - ./main.sh init -p macos -l ${{ env.LIB_NAME }} ./main.sh install -p ios -l 'freetype' ./main.sh install -p tvos -l 'freetype' ./main.sh install -p macos -l 'freetype' - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - cd ../ios - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../ios-src-log.md - cd ../tvos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../tvos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: do compile ios libs - run: | - ./main.sh compile -p ios -c build -l ${{ env.LIB_NAME }} - cd build/product/ios/universal - zip -rq ios-universal.zip ./* - cd ../universal-simulator - zip -rq ios-universal-simulator.zip ./* - - name: do compile tvos libs - run: | - ./main.sh compile -p tvos -c build -l ${{ env.LIB_NAME }} - cd build/product/tvos/universal - zip -rq tvos-universal.zip ./* - cd ../universal-simulator - zip -rq tvos-universal-simulator.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal/ios-universal.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal-simulator/ios-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal/tvos-universal.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal-simulator/tvos-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload ios src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/ios-src-log.md - asset_name: "ios-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload tvos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/tvos-src-log.md - asset_name: "tvos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text + - name: One Step + run: .github/workflows/onestep.sh harfbuzz all \ No newline at end of file diff --git a/.github/workflows/libyuv.yml b/.github/workflows/libyuv.yml deleted file mode 100644 index a82cad8..0000000 --- a/.github/workflows/libyuv.yml +++ /dev/null @@ -1,160 +0,0 @@ -on: - # push: - # branches: [master] - workflow_dispatch: - pull_request: - branches: [master] - -name: Create libyuv Release - -jobs: - build: - name: compile libyuv then deploy - runs-on: macos-13 - steps: - - name: Checkout code - uses: actions/checkout@v3 - - name: Read Tag Version - run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=libyuv - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: | - ./main.sh init -p ios -l ${{ env.LIB_NAME }} - ./main.sh init -p tvos -l ${{ env.LIB_NAME }} - ./main.sh init -p macos -l ${{ env.LIB_NAME }} - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - cd ../ios - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../ios-src-log.md - cd ../tvos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../tvos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: do compile ios libs - run: | - ./main.sh compile -p ios -c build -l ${{ env.LIB_NAME }} - cd build/product/ios/universal - zip -rq ios-universal.zip ./* - cd ../universal-simulator - zip -rq ios-universal-simulator.zip ./* - - name: do compile tvos libs - run: | - ./main.sh compile -p tvos -c build -l ${{ env.LIB_NAME }} - cd build/product/tvos/universal - zip -rq tvos-universal.zip ./* - cd ../universal-simulator - zip -rq tvos-universal-simulator.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal/ios-universal.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal-simulator/ios-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal/tvos-universal.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal-simulator/tvos-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload ios src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/ios-src-log.md - asset_name: "ios-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload tvos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/tvos-src-log.md - asset_name: "tvos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text diff --git a/.github/workflows/onestep.sh b/.github/workflows/onestep.sh index 7723d42..c89e14c 100755 --- a/.github/workflows/onestep.sh +++ b/.github/workflows/onestep.sh @@ -74,34 +74,58 @@ function make_bundle() cd build/product/xcframework zip -rq apple-xcframework.zip ./* && mv apple-xcframework.zip $DIST_DIR/${LIB_NAME}-apple-xcframework-${RELEASE_VERSION}.zip && cd - >/dev/null cd $ROOT_DIR - +} + +function publish() +{ echo "---Create Release--------------------------------------" + gh release create $TAG -p -t $TITLE $DIST_DIR/*.* } -case $PLAT in - ios) - init_platform $PLAT - compile_ios_platform - make_bundle - ;; - macos) - init_platform $PLAT - compile_macos_platform - make_bundle - ;; - tvos) - init_platform $PLAT - compile_tvos_platform - make_bundle - ;; - all) - init_platform ios - init_platform macos - init_platform tvos - compile_ios_platform - compile_macos_platform - compile_tvos_platform - make_bundle - ;; -esac +function main() +{ + case $PLAT in + ios) + init_platform $PLAT + compile_ios_platform + make_bundle + publish + ;; + macos) + init_platform $PLAT + compile_macos_platform + make_bundle + publish + ;; + tvos) + init_platform $PLAT + compile_tvos_platform + make_bundle + publish + ;; + all) + init_platform ios + init_platform macos + init_platform tvos + compile_ios_platform + compile_macos_platform + compile_tvos_platform + make_bundle + publish + ;; + esac + +} + +if [[ $LIB_NAME == 'test' ]];then + echo "test" > $DIST_DIR/test.md + publish + file="configs/libs/${LIB_NAME}.sh" + sed -i "" "s/^export PRE_COMPILE_TAG=.*/export PRE_COMPILE_TAG=$TAG/" $file + git add $file + git commit -m "upgrade $LIB_NAME pre-compile version by cd" + git push origin +else + main +fi diff --git a/.github/workflows/openssl.yml b/.github/workflows/openssl.yml index 3c704d2..5274f6a 100644 --- a/.github/workflows/openssl.yml +++ b/.github/workflows/openssl.yml @@ -14,147 +14,5 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - - name: Read Tag Version - run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=openssl - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: | - ./main.sh init -p ios -l ${{ env.LIB_NAME }} - ./main.sh init -p tvos -l ${{ env.LIB_NAME }} - ./main.sh init -p macos -l ${{ env.LIB_NAME }} - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - cd ../ios - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../ios-src-log.md - cd ../tvos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../tvos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: do compile ios libs - run: | - ./main.sh compile -p ios -c build -l ${{ env.LIB_NAME }} - cd build/product/ios/universal - zip -rq ios-universal.zip ./* - cd ../universal-simulator - zip -rq ios-universal-simulator.zip ./* - - name: do compile tvos libs - run: | - ./main.sh compile -p tvos -c build -l ${{ env.LIB_NAME }} - cd build/product/tvos/universal - zip -rq tvos-universal.zip ./* - cd ../universal-simulator - zip -rq tvos-universal-simulator.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal/ios-universal.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal-simulator/ios-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal/tvos-universal.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal-simulator/tvos-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload ios src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/ios-src-log.md - asset_name: "ios-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload tvos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/tvos-src-log.md - asset_name: "tvos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text + - name: One Step + run: .github/workflows/onestep.sh openssl all \ No newline at end of file diff --git a/.github/workflows/opus.yml b/.github/workflows/opus.yml index 312b6f4..c7b7365 100644 --- a/.github/workflows/opus.yml +++ b/.github/workflows/opus.yml @@ -17,5 +17,4 @@ jobs: - name: Checkout code uses: actions/checkout@v3 - name: One Step - run: | - ./.github/workflows/onestep.sh opus all \ No newline at end of file + run: .github/workflows/onestep.sh opus all \ No newline at end of file diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..6b1452f --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,18 @@ +on: + # push: + # branches: [master] + workflow_dispatch: + pull_request: + branches: [master] + +name: Test Release + +jobs: + build: + name: compile unibreak then deploy + runs-on: macos-13 + steps: + - name: Checkout code + uses: actions/checkout@v3 + - name: One Step + run: .github/workflows/onestep.sh test all \ No newline at end of file diff --git a/.github/workflows/unibreak.yml b/.github/workflows/unibreak.yml index 642d47e..3cb203d 100644 --- a/.github/workflows/unibreak.yml +++ b/.github/workflows/unibreak.yml @@ -14,147 +14,5 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - - name: Read Tag Version - run: | - # https://stackoverflow.com/questions/4916492/git-describe-fails-with-fatal-no-names-found-cannot-describe-anything - # git describe --tags --always | awk -F . '{printf "RELEASE_VERSION=%s.%d",$1,$2+1}' | xargs > constants.env - # git describe --tags --always | awk -F - '{printf "RELEASE_VERSION=V1.0-%s",$NF}' | xargs > constants.env - d=$(TZ=UTC-8 date +'%y%m%d%H%M%S') - LIB_NAME=unibreak - grep GIT_REPO_VERSION= ./init-cfgs/$LIB_NAME | awk -F = '{printf "RELEASE_VERSION=%s",$2}' | xargs > constants.env - echo "LIB_NAME=$LIB_NAME" >> constants.env - echo "RELEASE_DATE=$d" >> constants.env - echo "HOMEBREW_NO_AUTO_UPDATE=1" >> constants.env - cat constants.env - - name: Export Env - uses: cardinalby/export-env-action@v2 - with: - envFile: 'constants.env' - - name: init src - run: | - ./main.sh init -p ios -l ${{ env.LIB_NAME }} - ./main.sh init -p tvos -l ${{ env.LIB_NAME }} - ./main.sh init -p macos -l ${{ env.LIB_NAME }} - - name: generate src log - run: | - cd build/src/macos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../macos-src-log.md - cd ../ios - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../ios-src-log.md - cd ../tvos - ls | awk -F ' ' '{printf "echo %s\n echo -------------\ngit -C %s log -n 1 | cat\n",$0,$0}' | bash > ../tvos-src-log.md - - name: do compile macos libs - run: | - ./main.sh compile -p macos -c build -l ${{ env.LIB_NAME }} - cd build/product/macos/universal - zip -rq macos-universal.zip ./* - - name: do compile ios libs - run: | - ./main.sh compile -p ios -c build -l ${{ env.LIB_NAME }} - cd build/product/ios/universal - zip -rq ios-universal.zip ./* - cd ../universal-simulator - zip -rq ios-universal-simulator.zip ./* - - name: do compile tvos libs - run: | - ./main.sh compile -p tvos -c build -l ${{ env.LIB_NAME }} - cd build/product/tvos/universal - zip -rq tvos-universal.zip ./* - cd ../universal-simulator - zip -rq tvos-universal-simulator.zip ./* - - name: Zip apple xcframework - run: | - cd build/product/xcframework - zip -rq apple-xcframework.zip ./* - mv apple-xcframework.zip ../ - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }}-${{ env.RELEASE_DATE }} - release_name: ${{ env.LIB_NAME }}-${{ env.RELEASE_VERSION }} - draft: false - prerelease: false - - name: Upload xcframework Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/apple-xcframework.zip - asset_name: "${{ env.LIB_NAME }}-apple-xcframework-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal/ios-universal.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload iOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/ios/universal-simulator/ios-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-ios-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/macos/universal/macos-universal.zip - asset_name: "${{ env.LIB_NAME }}-macos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal/tvos-universal.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload tvOS Simulator Plat Release Asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/product/tvos/universal-simulator/tvos-universal-simulator.zip - asset_name: "${{ env.LIB_NAME }}-tvos-universal-simulator-${{ env.RELEASE_VERSION }}.zip" - asset_content_type: application/zip - - name: Upload macos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/macos-src-log.md - asset_name: "macos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload ios src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/ios-src-log.md - asset_name: "ios-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text - - name: Upload tvos src md - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: build/src/tvos-src-log.md - asset_name: "tvos-src-log-${{ env.RELEASE_VERSION }}.md" - asset_content_type: application/text + - name: One Step + run: .github/workflows/onestep.sh unibreak all \ No newline at end of file diff --git a/configs/libs/test.sh b/configs/libs/test.sh new file mode 100644 index 0000000..2e4b3bf --- /dev/null +++ b/configs/libs/test.sh @@ -0,0 +1,39 @@ +#! /usr/bin/env bash +# +# Copyright (C) 2021 Matt Reach + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# +# +# brew install nasm +# If you really want to compile without asm, configure with --disable-asm. + +# LIB_DEPENDS_BIN using string because bash can't export array chttps://stackoverflow.com/questions/5564418/exporting-an-array-in-bash-script +# configure: error: Package requirements (openssl) were not met + +export LIB_NAME='test' +export LIPO_LIBS="libtest" +export LIB_DEPENDS_BIN="automake autoconf libtool" +export GIT_LOCAL_REPO=build/extra/test +export GIT_COMMIT=v1.4 +export REPO_DIR=test +export GIT_REPO_VERSION=1.4 +export PRE_COMPILE_TAG='test-1.4-240624161050' + +# you can export GIT_OPUS_UPSTREAM=git@xx:yy/opusfile.git use your mirror +if [[ "$GIT_OPUS_UPSTREAM" != "" ]] ;then + export GIT_UPSTREAM="$GIT_OPUS_UPSTREAM" +else + export GIT_UPSTREAM=https://xx/test.git +fi \ No newline at end of file