"CXX" => "mingw",
]
];
-const ENV = [
- "ubuntu-20.04" => [
- "gnu" => [
- "new" => [
- "INSTALL_CC" => "gcc-10",
- "INSTALL_CXX" => "g++-10",
- ]
- ]
- ],
- "ubuntu-18.04" => [
- "clang" => [
- "old" => [
- "CXXFLAGS" => "-stdlib=libc++"
- ]
- ]
- ]
-];
const MAP = [
'env.OS_VER' => [
"ubuntu-20.04" => [
],
]
];
+const ENV = [
+ "ubuntu-20.04" => [
+ "gnu" => [
+ "new" => [
+ "INSTALL_CC" => "gcc-10",
+ "INSTALL_CXX" => "g++-10",
+ ]
+ ],
+ "clang" => [
+ "new" => [
+ "CXXFLAGS" => "-stdlib=libc++"
+ ],
+ "cur" => [
+ "CXXFLAGS" => "-stdlib=libc++",
+ "INSTALL_CXX" => "libc++"
+ . MAP["env.OS_VER"]["ubuntu-20.04"]["env.CC_VND"]["clang"]["env.CC_VER"]["cur"] . "-dev"
+ ],
+ "old" => [
+ "CXXFLAGS" => "-stdlib=libc++",
+ "INSTALL_CXX" => "libc++"
+ . MAP["env.OS_VER"]["ubuntu-20.04"]["env.CC_VND"]["clang"]["env.CC_VER"]["old"] . "-dev"
+ ],
+ ]
+ ],
+ "ubuntu-18.04" => [
+ "clang" => [
+ "new" => [
+ "CXXFLAGS" => "-stdlib=libc++"
+ ],
+ "cur" => [
+ "CXXFLAGS" => "-stdlib=libc++"
+ ],
+ "old" => [
+ "CXXFLAGS" => "-stdlib=libc++"
+ ],
+ ]
+ ]
+];
/**
* @var bool $splat_map false = no splat map, null = default splat map, true = full splat map
- name: Prepare environment (MinGW)
if: env.CC_VND == 'mingw'
run: |
- echo "CMAKE_GENERATOR=\"MinGW Makefiles\"" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
+ echo 'CMAKE_GENERATOR=MinGW Makefiles' | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
<?php
} elseif ($splat_map !== false) {
foreach (MAP as $os_is => $os_vers) {
- name: Package
env:
PUSH_ARTIFACTS_ID: ${{ secrets.PUSH_ARTIFACTS_ID }}
- if: env.CC_VER == 'cur' && env.CMAKE_BUILD_TYPE == 'Release'
+ if: env.CMAKE_BUILD_TYPE == 'Release' && !(env.OS_VER == 'ubuntu-18.04' && env.CC_VND == 'gnu' && env.CC_VER == 'new ')
run: |
cmake --config ${{ env.CMAKE_BUILD_TYPE }} -S . -B build
cmake --build build --config ${{ env.CMAKE_BUILD_TYPE }} -j2 --target package
}
function steps_notify($os_vnd) {
- if ($os_vnd !== "Windows") :
?>
- - name: Notify Gitter (success)
- if: ${{ success() && runner.os != 'Windows'}}
- run: |
- REF=$(basename ${GITHUB_REF})
- curl -sS "${{ secrets.GITTER }}" \
- --data-urlencode "level=info" \
- --data-urlencode "message=Github [${GITHUB_REPOSITORY}](https://github.com/${GITHUB_REPOSITORY}/commits/${REF}) (${REF}) [success](https://github.com/m6w6/libmemcached/actions/runs/${GITHUB_RUN_ID}) (${ImageOS}/${CC:-${CC_VND}-${CC_VER}})"
- - name: Notify Gitter (failure)
- if: ${{ failure() && runner.os != 'Windows'}}
- run: |
- REF=$(basename ${GITHUB_REF})
- curl -sS "${{ secrets.GITTER }}" \
- --data-urlencode "level=error" \
- --data-urlencode "message=Github [${GITHUB_REPOSITORY}](https://github.com/${GITHUB_REPOSITORY}/commits/${REF}) (${REF}) [failure](https://github.com/m6w6/libmemcached/actions/runs/${GITHUB_RUN_ID}) (${ImageOS}/${CC:-${CC_VND}-${CC_VER}})"
+ - name: Notify Gitter
+ run: bash .github/notify-gitter.sh ${{ secrets.GITTER }} ${{ job.status }}
<?php
- endif;
}
function steps($os_vnd, $splat_map = null) {
- uses: actions/checkout@v2
with:
fetch-depth: 0
-<?php steps(false); ?>
+<?php steps("macOS", false); ?>
# windows release builds
windows: