1 # Generated file; do not edit!
12 - ".github/workflows/cmake-build-ci*"
21 INSTALL_MEMCACHED: memcached
22 ENABLE_SASL: "OFF" # ^ almost no memcached distribution package has built in sasl support
23 ENABLE_HASH_HSIEH: "ON"
26 OS_VER: ubuntu-20.04 #
34 name: dbg-new (ubuntu-20.04, gnu, cur)
35 runs-on: ubuntu-20.04 #
37 CMAKE_BUILD_TYPE: "Debug"
40 CFLAGS: "-O0 --coverage"
41 CXXFLAGS: "-O0 --coverage"
43 MEMCACHED_PREFIX: "/tmp"
46 - uses: actions/checkout@v2
47 - uses: actions/checkout@v2
49 repository: memcached/memcached
52 - name: Prepare environment (for cur gnu on ubuntu-20.04)
53 if: (env.OS_VER=='ubuntu-20.04') && (env.CC_VND=='gnu') && (env.CC_VER=='cur')
55 echo CC="gcc-9" >> ${GITHUB_ENV}
56 echo CXX="g++-9" >> ${GITHUB_ENV}
57 - name: Install dependencies (Linux)
58 if: runner.os == 'Linux'
60 sudo apt-get install -my \
65 ${INSTALL_MEMCACHED} \
66 ${INSTALL_CC} ${INSTALL_CXX}
67 sudo systemctl stop memcached || true
68 - name: Install dependencies (Mac)
69 if: runner.os == 'macOS'
71 brew install bison flex sphinx-doc ${INSTALL_MEMCACHED}
72 brew services stop memcached || true
73 echo MEMCACHED_BINARY="/usr/local/bin/memcached" >> ${GITHUB_ENV}
74 - name: Build memcached
80 ./configure CFLAGS="-O2 -pipe" \
81 --prefix=${MEMCACHED_PREFIX} \
85 --disable-dependency-tracking \
88 --disable-option-checking \
93 echo MEMCACHED_BINARY="${MEMCACHED_PREFIX}/bin/memcached" >> ${GITHUB_ENV}
95 - name: Generate build tree (${{ env.CMAKE_BUILD_TYPE }})
96 run: cmake -S . -B build
97 - name: Build all with ${{ env.CXX }} ${{ env.CXXFLAGS }}
98 run: cmake --build build -j2
100 if: env.BUILD_TESTING == 'ON'
102 cmake --build build -j2 --target test
103 cmake --build build -j2 --target install -- DESTDIR=/tmp
104 - name: Failed tests log
106 run: cat build/Testing/Temporary/LastTest.log || true
109 PUSH_ARTIFACTS_ID: ${{ secrets.PUSH_ARTIFACTS_ID }}
110 if: env.OS_VND!='Windows' && env.CC_VER=='cur' && env.CMAKE_BUILD_TYPE=='Release'
112 cmake -DENABLE_SASL=ON -DBUILD_DOCS_MANGZ=ON -S . -B build
113 cmake --build build -j2 --target package -- VERBOSE=
114 cmake -DCPACK_COMPONENT_INSTALL=ON build
115 cmake --build build -j2 --target package -- VERBOSE=
116 cmake --build build -j2 --target push-artifacts -- VERBOSE=
117 - name: Notify Gitter (success)
120 REF=$(basename ${GITHUB_REF})
121 curl -sS "${{ secrets.GITTER }}" \
122 --data-urlencode "level=info" \
123 --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}})"
124 - name: Notify Gitter (failure)
127 REF=$(basename ${GITHUB_REF})
128 curl -sS "${{ secrets.GITTER }}" \
129 --data-urlencode "level=error" \
130 --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}})"
131 - uses: codecov/codecov-action@v1.0.13
135 name: dbg-san (ubuntu-20.04, gnu, cur)
136 runs-on: ubuntu-20.04 #
138 CMAKE_BUILD_TYPE: "Debug"
141 ENABLE_SANITIZERS: "address;undefined"
143 - uses: actions/checkout@v2
144 - name: Prepare environment (for cur gnu on ubuntu-20.04)
145 if: (env.OS_VER=='ubuntu-20.04') && (env.CC_VND=='gnu') && (env.CC_VER=='cur')
147 echo CC="gcc-9" >> ${GITHUB_ENV}
148 echo CXX="g++-9" >> ${GITHUB_ENV}
149 - name: Install dependencies (Linux)
150 if: runner.os == 'Linux'
152 sudo apt-get install -my \
157 ${INSTALL_MEMCACHED} \
158 ${INSTALL_CC} ${INSTALL_CXX}
159 sudo systemctl stop memcached || true
160 - name: Install dependencies (Mac)
161 if: runner.os == 'macOS'
163 brew install bison flex sphinx-doc ${INSTALL_MEMCACHED}
164 brew services stop memcached || true
165 echo MEMCACHED_BINARY="/usr/local/bin/memcached" >> ${GITHUB_ENV}
166 - name: Build memcached
172 ./configure CFLAGS="-O2 -pipe" \
173 --prefix=${MEMCACHED_PREFIX} \
177 --disable-dependency-tracking \
180 --disable-option-checking \
185 echo MEMCACHED_BINARY="${MEMCACHED_PREFIX}/bin/memcached" >> ${GITHUB_ENV}
187 - name: Generate build tree (${{ env.CMAKE_BUILD_TYPE }})
188 run: cmake -S . -B build
189 - name: Build all with ${{ env.CXX }} ${{ env.CXXFLAGS }}
190 run: cmake --build build -j2
192 if: env.BUILD_TESTING == 'ON'
194 cmake --build build -j2 --target test
195 cmake --build build -j2 --target install -- DESTDIR=/tmp
196 - name: Failed tests log
198 run: cat build/Testing/Temporary/LastTest.log || true
201 PUSH_ARTIFACTS_ID: ${{ secrets.PUSH_ARTIFACTS_ID }}
202 if: env.OS_VND!='Windows' && env.CC_VER=='cur' && env.CMAKE_BUILD_TYPE=='Release'
204 cmake -DENABLE_SASL=ON -DBUILD_DOCS_MANGZ=ON -S . -B build
205 cmake --build build -j2 --target package -- VERBOSE=
206 cmake -DCPACK_COMPONENT_INSTALL=ON build
207 cmake --build build -j2 --target package -- VERBOSE=
208 cmake --build build -j2 --target push-artifacts -- VERBOSE=
209 - name: Notify Gitter (success)
212 REF=$(basename ${GITHUB_REF})
213 curl -sS "${{ secrets.GITTER }}" \
214 --data-urlencode "level=info" \
215 --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}})"
216 - name: Notify Gitter (failure)
219 REF=$(basename ${GITHUB_REF})
220 curl -sS "${{ secrets.GITTER }}" \
221 --data-urlencode "level=error" \
222 --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}})"
224 # thread sanitizer build
226 name: dbg-tsan (ubuntu-20.04, gnu, cur)
227 runs-on: ubuntu-20.04 #
229 CMAKE_BUILD_TYPE: "Debug"
232 ENABLE_SANITIZERS: "thread"
234 - uses: actions/checkout@v2
235 - name: Prepare environment (for cur gnu on ubuntu-20.04)
236 if: (env.OS_VER=='ubuntu-20.04') && (env.CC_VND=='gnu') && (env.CC_VER=='cur')
238 echo CC="gcc-9" >> ${GITHUB_ENV}
239 echo CXX="g++-9" >> ${GITHUB_ENV}
240 - name: Install dependencies (Linux)
241 if: runner.os == 'Linux'
243 sudo apt-get install -my \
248 ${INSTALL_MEMCACHED} \
249 ${INSTALL_CC} ${INSTALL_CXX}
250 sudo systemctl stop memcached || true
251 - name: Install dependencies (Mac)
252 if: runner.os == 'macOS'
254 brew install bison flex sphinx-doc ${INSTALL_MEMCACHED}
255 brew services stop memcached || true
256 echo MEMCACHED_BINARY="/usr/local/bin/memcached" >> ${GITHUB_ENV}
257 - name: Build memcached
263 ./configure CFLAGS="-O2 -pipe" \
264 --prefix=${MEMCACHED_PREFIX} \
268 --disable-dependency-tracking \
271 --disable-option-checking \
276 echo MEMCACHED_BINARY="${MEMCACHED_PREFIX}/bin/memcached" >> ${GITHUB_ENV}
278 - name: Generate build tree (${{ env.CMAKE_BUILD_TYPE }})
279 run: cmake -S . -B build
280 - name: Build all with ${{ env.CXX }} ${{ env.CXXFLAGS }}
281 run: cmake --build build -j2
283 if: env.BUILD_TESTING == 'ON'
285 cmake --build build -j2 --target test
286 cmake --build build -j2 --target install -- DESTDIR=/tmp
287 - name: Failed tests log
289 run: cat build/Testing/Temporary/LastTest.log || true
292 PUSH_ARTIFACTS_ID: ${{ secrets.PUSH_ARTIFACTS_ID }}
293 if: env.OS_VND!='Windows' && env.CC_VER=='cur' && env.CMAKE_BUILD_TYPE=='Release'
295 cmake -DENABLE_SASL=ON -DBUILD_DOCS_MANGZ=ON -S . -B build
296 cmake --build build -j2 --target package -- VERBOSE=
297 cmake -DCPACK_COMPONENT_INSTALL=ON build
298 cmake --build build -j2 --target package -- VERBOSE=
299 cmake --build build -j2 --target push-artifacts -- VERBOSE=
300 - name: Notify Gitter (success)
303 REF=$(basename ${GITHUB_REF})
304 curl -sS "${{ secrets.GITTER }}" \
305 --data-urlencode "level=info" \
306 --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}})"
307 - name: Notify Gitter (failure)
310 REF=$(basename ${GITHUB_REF})
311 curl -sS "${{ secrets.GITTER }}" \
312 --data-urlencode "level=error" \
313 --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}})"
317 name: dbg-mac (macos-10.15, clang, cur)
318 runs-on: macos-10.15 #
320 CMAKE_BUILD_TYPE: "Debug"
323 CFLAGS: "-O0 --coverage"
324 CXXFLAGS: "-O0 --coverage"
326 OS_VER: macos-10.15 #
330 continue-on-error: true
332 - uses: actions/checkout@v2
333 - name: Install dependencies (Linux)
334 if: runner.os == 'Linux'
336 sudo apt-get install -my \
341 ${INSTALL_MEMCACHED} \
342 ${INSTALL_CC} ${INSTALL_CXX}
343 sudo systemctl stop memcached || true
344 - name: Install dependencies (Mac)
345 if: runner.os == 'macOS'
347 brew install bison flex sphinx-doc ${INSTALL_MEMCACHED}
348 brew services stop memcached || true
349 echo MEMCACHED_BINARY="/usr/local/bin/memcached" >> ${GITHUB_ENV}
350 - name: Build memcached
356 ./configure CFLAGS="-O2 -pipe" \
357 --prefix=${MEMCACHED_PREFIX} \
361 --disable-dependency-tracking \
364 --disable-option-checking \
369 echo MEMCACHED_BINARY="${MEMCACHED_PREFIX}/bin/memcached" >> ${GITHUB_ENV}
371 - name: Generate build tree (${{ env.CMAKE_BUILD_TYPE }})
372 run: cmake -S . -B build
373 - name: Build all with ${{ env.CXX }} ${{ env.CXXFLAGS }}
374 run: cmake --build build -j2
376 if: env.BUILD_TESTING == 'ON'
378 cmake --build build -j2 --target test
379 cmake --build build -j2 --target install -- DESTDIR=/tmp
380 - name: Failed tests log
382 run: cat build/Testing/Temporary/LastTest.log || true
385 PUSH_ARTIFACTS_ID: ${{ secrets.PUSH_ARTIFACTS_ID }}
386 if: env.OS_VND!='Windows' && env.CC_VER=='cur' && env.CMAKE_BUILD_TYPE=='Release'
388 cmake -DENABLE_SASL=ON -DBUILD_DOCS_MANGZ=ON -S . -B build
389 cmake --build build -j2 --target package -- VERBOSE=
390 cmake -DCPACK_COMPONENT_INSTALL=ON build
391 cmake --build build -j2 --target package -- VERBOSE=
392 cmake --build build -j2 --target push-artifacts -- VERBOSE=
393 - name: Notify Gitter (success)
396 REF=$(basename ${GITHUB_REF})
397 curl -sS "${{ secrets.GITTER }}" \
398 --data-urlencode "level=info" \
399 --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}})"
400 - name: Notify Gitter (failure)
403 REF=$(basename ${GITHUB_REF})
404 curl -sS "${{ secrets.GITTER }}" \
405 --data-urlencode "level=error" \
406 --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}})"
407 - uses: codecov/codecov-action@v1.0.13
411 name: rel-mac (macos-10.15, clang, cur)
412 runs-on: macos-10.15 #
414 CMAKE_BUILD_TYPE: "Release"
415 BUILD_DOCS_MANGZ: "ON"
417 OS_VER: macos-10.15 #
420 continue-on-error: true
422 - uses: actions/checkout@v2
424 run: git fetch --depth=1 origin +refs/tags/*:refs/tags/*
425 - name: Install dependencies (Linux)
426 if: runner.os == 'Linux'
428 sudo apt-get install -my \
433 ${INSTALL_MEMCACHED} \
434 ${INSTALL_CC} ${INSTALL_CXX}
435 sudo systemctl stop memcached || true
436 - name: Install dependencies (Mac)
437 if: runner.os == 'macOS'
439 brew install bison flex sphinx-doc ${INSTALL_MEMCACHED}
440 brew services stop memcached || true
441 echo MEMCACHED_BINARY="/usr/local/bin/memcached" >> ${GITHUB_ENV}
442 - name: Build memcached
448 ./configure CFLAGS="-O2 -pipe" \
449 --prefix=${MEMCACHED_PREFIX} \
453 --disable-dependency-tracking \
456 --disable-option-checking \
461 echo MEMCACHED_BINARY="${MEMCACHED_PREFIX}/bin/memcached" >> ${GITHUB_ENV}
463 - name: Generate build tree (${{ env.CMAKE_BUILD_TYPE }})
464 run: cmake -S . -B build
465 - name: Build all with ${{ env.CXX }} ${{ env.CXXFLAGS }}
466 run: cmake --build build -j2
468 if: env.BUILD_TESTING == 'ON'
470 cmake --build build -j2 --target test
471 cmake --build build -j2 --target install -- DESTDIR=/tmp
472 - name: Failed tests log
474 run: cat build/Testing/Temporary/LastTest.log || true
477 PUSH_ARTIFACTS_ID: ${{ secrets.PUSH_ARTIFACTS_ID }}
478 if: env.OS_VND!='Windows' && env.CC_VER=='cur' && env.CMAKE_BUILD_TYPE=='Release'
480 cmake -DENABLE_SASL=ON -DBUILD_DOCS_MANGZ=ON -S . -B build
481 cmake --build build -j2 --target package -- VERBOSE=
482 cmake -DCPACK_COMPONENT_INSTALL=ON build
483 cmake --build build -j2 --target package -- VERBOSE=
484 cmake --build build -j2 --target push-artifacts -- VERBOSE=
485 - name: Notify Gitter (success)
488 REF=$(basename ${GITHUB_REF})
489 curl -sS "${{ secrets.GITTER }}" \
490 --data-urlencode "level=info" \
491 --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}})"
492 - name: Notify Gitter (failure)
495 REF=$(basename ${GITHUB_REF})
496 curl -sS "${{ secrets.GITTER }}" \
497 --data-urlencode "level=error" \
498 --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}})"
502 name: win-msvc (windows-2019, msvc, cur)
503 runs-on: windows-2019 #
505 CMAKE_BUILD_TYPE: "Release"
506 BISON_ROOT: "C:/msys64/usr"
507 FLEX_ROOT: "C:/msys64/usr"
509 OS_VER: windows-2019 #
512 continue-on-error: true
514 - uses: actions/checkout@v2
516 run: git fetch --depth=1 origin +refs/tags/*:refs/tags/*
517 - uses: msys2/setup-msys2@v2
524 - name: Generate build tree (${{ env.CMAKE_BUILD_TYPE }})
525 run: cmake --config ${{ env.CMAKE_BUILD_TYPE }} -S . -B build
526 - name: Build all with ${{ env.CC_VND }}
527 run: cmake --build build --config ${{ env.CMAKE_BUILD_TYPE }}
529 run: cmake --install build --prefix installed --config ${{ env.CMAKE_BUILD_TYPE }}
532 PUSH_ARTIFACTS_ID: ${{ secrets.PUSH_ARTIFACTS_ID }}
534 cmake --build build --config ${{ env.CMAKE_BUILD_TYPE }} --target package
535 cmake --build build --config ${{ env.CMAKE_BUILD_TYPE }} --target push-artifacts
542 os_ver: [ubuntu-20.04, ubuntu-18.04]
544 cc_ver: [new, cur, old]
545 runs-on: ${{ matrix.os_ver }}
546 continue-on-error: ${{ matrix.cc_vnd == 'clang' }}
548 CMAKE_BUILD_TYPE: "Release"
549 BUILD_DOCS_MANGZ: "ON"
551 OS_VER: ${{ matrix.os_ver }}
552 CC_VND: ${{ matrix.cc_vnd }}
553 CC_VER: ${{ matrix.cc_ver }}
555 - uses: actions/checkout@v2
557 run: git fetch --depth=1 origin +refs/tags/*:refs/tags/*
558 - name: Prepare environment (for new gnu on ubuntu-20.04)
559 if: (env.OS_VER=='ubuntu-20.04') && (env.CC_VND=='gnu') && (env.CC_VER=='new')
561 echo CC="gcc-10" >> ${GITHUB_ENV}
562 echo CXX="g++-10" >> ${GITHUB_ENV}
563 echo INSTALL_CC="gcc-10" >> ${GITHUB_ENV}
564 echo INSTALL_CXX="g++-10" >> ${GITHUB_ENV}
565 - name: Prepare environment (for cur gnu on ubuntu-20.04)
566 if: (env.OS_VER=='ubuntu-20.04') && (env.CC_VND=='gnu') && (env.CC_VER=='cur')
568 echo CC="gcc-9" >> ${GITHUB_ENV}
569 echo CXX="g++-9" >> ${GITHUB_ENV}
570 - name: Prepare environment (for old gnu on ubuntu-20.04)
571 if: (env.OS_VER=='ubuntu-20.04') && (env.CC_VND=='gnu') && (env.CC_VER=='old')
573 echo CC="gcc-8" >> ${GITHUB_ENV}
574 echo CXX="g++-8" >> ${GITHUB_ENV}
575 - name: Prepare environment (for new clang on ubuntu-20.04)
576 if: (env.OS_VER=='ubuntu-20.04') && (env.CC_VND=='clang') && (env.CC_VER=='new')
578 echo CC="clang-10" >> ${GITHUB_ENV}
579 echo CXX="clang++-10" >> ${GITHUB_ENV}
580 - name: Prepare environment (for cur clang on ubuntu-20.04)
581 if: (env.OS_VER=='ubuntu-20.04') && (env.CC_VND=='clang') && (env.CC_VER=='cur')
583 echo CC="clang-9" >> ${GITHUB_ENV}
584 echo CXX="clang++-9" >> ${GITHUB_ENV}
585 - name: Prepare environment (for old clang on ubuntu-20.04)
586 if: (env.OS_VER=='ubuntu-20.04') && (env.CC_VND=='clang') && (env.CC_VER=='old')
588 echo CC="clang-8" >> ${GITHUB_ENV}
589 echo CXX="clang++-8" >> ${GITHUB_ENV}
590 - name: Prepare environment (for new gnu on ubuntu-18.04)
591 if: (env.OS_VER=='ubuntu-18.04') && (env.CC_VND=='gnu') && (env.CC_VER=='new')
593 echo CC="gcc-9" >> ${GITHUB_ENV}
594 echo CXX="g++-9" >> ${GITHUB_ENV}
595 - name: Prepare environment (for cur gnu on ubuntu-18.04)
596 if: (env.OS_VER=='ubuntu-18.04') && (env.CC_VND=='gnu') && (env.CC_VER=='cur')
598 echo CC="gcc-8" >> ${GITHUB_ENV}
599 echo CXX="g++-8" >> ${GITHUB_ENV}
600 - name: Prepare environment (for old gnu on ubuntu-18.04)
601 if: (env.OS_VER=='ubuntu-18.04') && (env.CC_VND=='gnu') && (env.CC_VER=='old')
603 echo CC="gcc-7" >> ${GITHUB_ENV}
604 echo CXX="g++-7" >> ${GITHUB_ENV}
605 - name: Prepare environment (for new clang on ubuntu-18.04)
606 if: (env.OS_VER=='ubuntu-18.04') && (env.CC_VND=='clang') && (env.CC_VER=='new')
608 echo CC="clang-9" >> ${GITHUB_ENV}
609 echo CXX="clang++-9" >> ${GITHUB_ENV}
610 - name: Prepare environment (for cur clang on ubuntu-18.04)
611 if: (env.OS_VER=='ubuntu-18.04') && (env.CC_VND=='clang') && (env.CC_VER=='cur')
613 echo CC="clang-8" >> ${GITHUB_ENV}
614 echo CXX="clang++-8" >> ${GITHUB_ENV}
615 - name: Prepare environment (for old clang on ubuntu-18.04)
616 if: (env.OS_VER=='ubuntu-18.04') && (env.CC_VND=='clang') && (env.CC_VER=='old')
618 echo CC="clang-6.0" >> ${GITHUB_ENV}
619 echo CXX="clang++-6.0" >> ${GITHUB_ENV}
620 echo CXXFLAGS="-stdlib=libc++" >> ${GITHUB_ENV}
621 - name: Prepare environment (for cur msvc on windows-2019)
622 if: (env.OS_VER=='windows-2019') && (env.CC_VND=='msvc') && (env.CC_VER=='cur')
624 echo CC="msvc2019" >> ${GITHUB_ENV}
625 echo CXX="msvc2019" >> ${GITHUB_ENV}
626 - name: Install dependencies (Linux)
627 if: runner.os == 'Linux'
629 sudo apt-get install -my \
634 ${INSTALL_MEMCACHED} \
635 ${INSTALL_CC} ${INSTALL_CXX}
636 sudo systemctl stop memcached || true
637 - name: Install dependencies (Mac)
638 if: runner.os == 'macOS'
640 brew install bison flex sphinx-doc ${INSTALL_MEMCACHED}
641 brew services stop memcached || true
642 echo MEMCACHED_BINARY="/usr/local/bin/memcached" >> ${GITHUB_ENV}
643 - name: Build memcached
649 ./configure CFLAGS="-O2 -pipe" \
650 --prefix=${MEMCACHED_PREFIX} \
654 --disable-dependency-tracking \
657 --disable-option-checking \
662 echo MEMCACHED_BINARY="${MEMCACHED_PREFIX}/bin/memcached" >> ${GITHUB_ENV}
664 - name: Generate build tree (${{ env.CMAKE_BUILD_TYPE }})
665 run: cmake -S . -B build
666 - name: Build all with ${{ env.CXX }} ${{ env.CXXFLAGS }}
667 run: cmake --build build -j2
669 if: env.BUILD_TESTING == 'ON'
671 cmake --build build -j2 --target test
672 cmake --build build -j2 --target install -- DESTDIR=/tmp
673 - name: Failed tests log
675 run: cat build/Testing/Temporary/LastTest.log || true
678 PUSH_ARTIFACTS_ID: ${{ secrets.PUSH_ARTIFACTS_ID }}
679 if: env.OS_VND!='Windows' && env.CC_VER=='cur' && env.CMAKE_BUILD_TYPE=='Release'
681 cmake -DENABLE_SASL=ON -DBUILD_DOCS_MANGZ=ON -S . -B build
682 cmake --build build -j2 --target package -- VERBOSE=
683 cmake -DCPACK_COMPONENT_INSTALL=ON build
684 cmake --build build -j2 --target package -- VERBOSE=
685 cmake --build build -j2 --target push-artifacts -- VERBOSE=
686 - name: Notify Gitter (success)
689 REF=$(basename ${GITHUB_REF})
690 curl -sS "${{ secrets.GITTER }}" \
691 --data-urlencode "level=info" \
692 --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}})"
693 - name: Notify Gitter (failure)
696 REF=$(basename ${GITHUB_REF})
697 curl -sS "${{ secrets.GITTER }}" \
698 --data-urlencode "level=error" \
699 --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}})"