optimized #27
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: build with vcpkg on macOS | |
on: | |
push: | |
branches: [ 0.15.4 ] | |
pull_request: | |
branches: [ 0.15.4 ] | |
jobs: | |
vcpkg: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: [macos-14, macos-13, macos-12] | |
runs-on: ${{ matrix.version }} | |
steps: | |
- run: brew update | |
- run: brew install cmake ninja pkg-config | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: microsoft/vcpkg | |
path: vcpkg | |
- run: cd vcpkg && ./bootstrap-vcpkg.sh | |
- run: cd vcpkg && ./vcpkg install curl openssl libgit2 libarchive libyaml jansson sqlite3 | |
- run: | | |
cmake \ | |
-S . \ | |
-B build.d \ | |
-G Ninja \ | |
-DCMAKE_TOOLCHAIN_FILE=$PWD/vcpkg/scripts/buildsystems/vcpkg.cmake \ | |
-DCMAKE_INSTALL_PREFIX=./output \ | |
-DCMAKE_VERBOSE_MAKEFILE=ON | |
- run: cmake --build build.d | |
- run: cmake --install build.d | |
- run: ./output/bin/uppm | |
- run: ./output/bin/uppm --help | |
- run: ./output/bin/uppm --version | |
- run: ./output/bin/uppm -h | |
- run: ./output/bin/uppm -V | |
- run: ./output/bin/uppm about | |
- run: ./output/bin/uppm about -v | |
- run: ./output/bin/uppm integrate zsh -v | |
- run: ./output/bin/uppm update | |
- run: ./output/bin/uppm search zip | |
- run: ./output/bin/uppm depends zip | |
- run: ./output/bin/uppm depends android-sdk | |
- run: ./output/bin/uppm depends android-sdk -t box | |
- run: ./output/bin/uppm depends android-sdk -t dot | |
- run: ./output/bin/uppm info-available gsed | |
- run: ./output/bin/uppm info-available gsed --json | |
- run: ./output/bin/uppm info-available gsed --yaml | |
- run: ./output/bin/uppm info-available gsed version | |
- run: ./output/bin/uppm info-available gsed license | |
- run: ./output/bin/uppm info-available gsed summary | |
- run: ./output/bin/uppm info-available gsed webpage | |
- run: ./output/bin/uppm info-available gsed bin-url | |
- run: ./output/bin/uppm info-available gsed bin-sha | |
- run: ./output/bin/uppm info-available gsed install | |
- run: ./output/bin/uppm info-available gsed formula | |
- run: ./output/bin/uppm fetch gzip | |
- run: ./output/bin/uppm fetch gtar -v | |
- run: ./output/bin/uppm install gsed | |
- run: ./output/bin/uppm info-installed gsed --files | |
- run: ./output/bin/uppm info-installed gsed --json | |
- run: ./output/bin/uppm info-installed gsed --yaml | |
- run: ./output/bin/uppm info-installed gsed timestamp-unix | |
- run: ./output/bin/uppm info-installed gsed timestamp-iso-8601 | |
- run: ./output/bin/uppm info-installed gsed timestamp-rfc-3339 | |
- run: ./output/bin/uppm info-installed gsed version | |
- run: ./output/bin/uppm tree gsed | |
- run: ./output/bin/uppm tree gsed -L 3 | |
- run: | | |
printf '%s\n' 'version: 1000' >> ~/.uppm/repos.d/official-core/formula/gsed.yml | |
- run: ./output/bin/uppm ls-available | |
- run: ./output/bin/uppm ls-installed | |
- run: ./output/bin/uppm ls-outdated | |
- run: ./output/bin/uppm is-available curl | |
- run: ./output/bin/uppm is-installed gsed | |
- run: ./output/bin/uppm is-outdated gsed || echo not outdated | |
- run: ./output/bin/uppm upgrade gsed | |
- run: ./output/bin/uppm reinstall gsed | |
- run: ./output/bin/uppm uninstall gsed | |
- run: ./output/bin/uppm formula-repo-list | |
- run: ./output/bin/uppm formula-repo-add my_repo https://github.com/leleliu008/uppm-formula-repository-linux-x86_64 | |
- run: ./output/bin/uppm formula-repo-del my_repo | |
- run: ./output/bin/uppm cleanup | |
- run: ./output/bin/uppm upgrade-self | |
vcpkg-sanitizer: | |
strategy: | |
fail-fast: false | |
matrix: | |
version: [macos-14, macos-13, macos-12] | |
runs-on: ${{ matrix.version }} | |
steps: | |
- run: brew update | |
- run: brew install --overwrite python@3.10 python@3.11 python@3.12 | |
- run: brew install cmake ninja llvm pkg-config | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: microsoft/vcpkg | |
path: vcpkg | |
- run: cd vcpkg && ./bootstrap-vcpkg.sh | |
- run: cd vcpkg && ./vcpkg install curl openssl libgit2 libarchive libyaml jansson sqlite3 | |
- run: | | |
cmake \ | |
-S . \ | |
-B build.d \ | |
-G Ninja \ | |
-DCMAKE_TOOLCHAIN_FILE=$PWD/vcpkg/scripts/buildsystems/vcpkg.cmake \ | |
-DCMAKE_INSTALL_PREFIX=./output \ | |
-DCMAKE_VERBOSE_MAKEFILE=ON \ | |
-DCMAKE_BUILD_TYPE=Debug \ | |
-DCMAKE_C_COMPILER="$(brew --prefix llvm)/bin/clang" \ | |
-DCMAKE_C_FLAGS="-fsanitize=undefined -fsanitize=address -fsanitize=leak" | |
- run: cmake --build build.d | |
- run: cmake --install build.d | |
- run: ./output/bin/uppm | |
- run: ./output/bin/uppm --help | |
- run: ./output/bin/uppm --version | |
- run: ./output/bin/uppm -h | |
- run: ./output/bin/uppm -V | |
- run: ./output/bin/uppm about | |
- run: ./output/bin/uppm about -v | |
- run: ./output/bin/uppm integrate zsh -v | |
- run: ./output/bin/uppm update | |
- run: ./output/bin/uppm search zip | |
- run: ./output/bin/uppm depends zip | |
- run: ./output/bin/uppm depends android-sdk | |
- run: ./output/bin/uppm depends android-sdk -t box | |
- run: ./output/bin/uppm depends android-sdk -t dot | |
- run: ./output/bin/uppm info-available gsed | |
- run: ./output/bin/uppm info-available gsed --json | |
- run: ./output/bin/uppm info-available gsed --yaml | |
- run: ./output/bin/uppm info-available gsed version | |
- run: ./output/bin/uppm info-available gsed license | |
- run: ./output/bin/uppm info-available gsed summary | |
- run: ./output/bin/uppm info-available gsed webpage | |
- run: ./output/bin/uppm info-available gsed bin-url | |
- run: ./output/bin/uppm info-available gsed bin-sha | |
- run: ./output/bin/uppm info-available gsed install | |
- run: ./output/bin/uppm info-available gsed formula | |
- run: ./output/bin/uppm fetch gzip | |
- run: ./output/bin/uppm fetch gtar -v | |
- run: ./output/bin/uppm install gsed | |
- run: ./output/bin/uppm info-installed gsed --files | |
- run: ./output/bin/uppm info-installed gsed --json | |
- run: ./output/bin/uppm info-installed gsed --yaml | |
- run: ./output/bin/uppm info-installed gsed timestamp-unix | |
- run: ./output/bin/uppm info-installed gsed timestamp-iso-8601 | |
- run: ./output/bin/uppm info-installed gsed timestamp-rfc-3339 | |
- run: ./output/bin/uppm info-installed gsed version | |
- run: ./output/bin/uppm tree gsed | |
- run: ./output/bin/uppm tree gsed -L 3 | |
- run: | | |
printf '%s\n' 'version: 1000' >> ~/.uppm/repos.d/official-core/formula/gsed.yml | |
- run: ./output/bin/uppm ls-available | |
- run: ./output/bin/uppm ls-installed | |
- run: ./output/bin/uppm ls-outdated | |
- run: ./output/bin/uppm is-available curl | |
- run: ./output/bin/uppm is-installed gsed | |
- run: ./output/bin/uppm is-outdated gsed || echo not outdated | |
- run: ./output/bin/uppm upgrade gsed | |
- run: ./output/bin/uppm reinstall gsed | |
- run: ./output/bin/uppm uninstall gsed | |
- run: ./output/bin/uppm formula-repo-list | |
- run: ./output/bin/uppm formula-repo-add my_repo https://github.com/leleliu008/uppm-formula-repository-linux-x86_64 | |
- run: ./output/bin/uppm formula-repo-del my_repo | |
- run: ./output/bin/uppm cleanup | |
- run: ./output/bin/uppm upgrade-self |