Skip to content

Commit

Permalink
Merge pull request #1259 from dgreatwood/windows
Browse files Browse the repository at this point in the history
Windows Support
  • Loading branch information
kiplingw authored Nov 22, 2024
2 parents fcf8a58 + 31134c2 commit f955e9e
Show file tree
Hide file tree
Showing 125 changed files with 10,185 additions and 1,668 deletions.
3 changes: 3 additions & 0 deletions .clang-format-ignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,6 @@ src/common/pist_check.cc
include/pistache/pist_check.h
src/common/pist_syslog.cc
include/pistache/pist_syslog.h
src/common/ps_strl.cc
include/pistache/ps_strl.h
include/pistache/winornix.h
7 changes: 4 additions & 3 deletions .github/workflows/linux.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ jobs:
run: |
if [ ${{ matrix.compiler }} = gcc ]; then compiler=g++; else compiler="clang lld ?exact-name(libclang-rt-dev)"; fi
apt -y update
apt -y install $compiler meson pkg-config cmake rapidjson-dev libssl-dev netbase '?exact-name(libhowardhinnant-date-dev)' '?exact-name(libgmock-dev) (?version([1-9]\.[1-9][1-9]) | ?version([1-9]\.[2-9][0-9]))' '?exact-name(libcpp-httplib-dev)' libcurl4-openssl-dev git ca-certificates curl gpg gpgv gpg-agent lcov llvm-dev --no-install-recommends
apt -y install $compiler meson pkg-config cmake brotli libbrotli-dev zstd libzstd-dev rapidjson-dev libssl-dev netbase '?exact-name(libhowardhinnant-date-dev)' '?exact-name(libgmock-dev) (?version([1-9]\.[1-9][1-9]) | ?version([1-9]\.[2-9][0-9]))' '?exact-name(libcpp-httplib-dev)' libcurl4-openssl-dev git ca-certificates curl gpg gpgv gpg-agent lcov llvm-dev --no-install-recommends
# Periodically, debian:testing fails with clang, saying that
# libstdc++ cannot be found. In debian:testing/clang, normally
Expand All @@ -79,7 +79,7 @@ jobs:
if: contains(matrix.os, 'redhat')
run: |
if [ ${{ matrix.compiler }} = gcc ]; then compiler=gcc-c++; else compiler=llvm-toolset; fi
microdnf -y install $compiler lld pkgconf cmake openssl-devel zlib-devel libcurl-devel git python3-pip unzip
microdnf -y install $compiler lld pkgconf cmake brotli brotli-devel openssl-devel zlib-devel libcurl-devel git python3-pip unzip
curl -LO https://github.com/ninja-build/ninja/releases/latest/download/ninja-linux.zip
unzip ninja-linux.zip
mv ninja /usr/local/bin
Expand All @@ -94,8 +94,9 @@ jobs:
run: |
if [ ${{ matrix.compiler }} = gcc ]; then CXX=g++; else CXX=clang++ CXX_LD=lld; fi
export CXX CXX_LD
if [[ ${{ matrix.os }} == *redhat* ]]; then PST_USE_ZSTD=false; else PST_USE_ZSTD=true; fi
meson setup build \
-DPISTACHE_BUILD_TESTS=true -DPISTACHE_USE_SSL=${{ matrix.tls }} -DPISTACHE_USE_CONTENT_ENCODING_DEFLATE=true \
-DPISTACHE_BUILD_TESTS=true -DPISTACHE_USE_SSL=${{ matrix.tls }} -DPISTACHE_USE_CONTENT_ENCODING_DEFLATE=true -DPISTACHE_USE_CONTENT_ENCODING_BROTLI=true -DPISTACHE_USE_CONTENT_ENCODING_ZSTD=$PST_USE_ZSTD \
--buildtype=debug -Db_coverage=true -Db_sanitize=${{ matrix.sanitizer }} -Db_lundef=false \
|| (cat build/meson-logs/meson-log.txt ; false)
env:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/linuxflibev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,13 +46,13 @@ jobs:
run: |
if [ ${{ matrix.compiler }} = gcc ]; then compiler=g++; else compiler="clang lld ?exact-name(libclang-rt-dev)"; fi
apt -y update
apt -y install $compiler meson pkg-config cmake rapidjson-dev libssl-dev libevent-dev netbase '?exact-name(libhowardhinnant-date-dev)' '?exact-name(libgmock-dev) (?version([1-9]\.[1-9][1-9]) | ?version([1-9]\.[2-9][0-9]))' '?exact-name(libcpp-httplib-dev)' libcurl4-openssl-dev git ca-certificates curl gpg gpgv gpg-agent lcov llvm-dev --no-install-recommends
apt -y install $compiler meson pkg-config cmake brotli libbrotli-dev zstd libzstd-dev rapidjson-dev libssl-dev libevent-dev netbase '?exact-name(libhowardhinnant-date-dev)' '?exact-name(libgmock-dev) (?version([1-9]\.[1-9][1-9]) | ?version([1-9]\.[2-9][0-9]))' '?exact-name(libcpp-httplib-dev)' libcurl4-openssl-dev git ca-certificates curl gpg gpgv gpg-agent lcov llvm-dev --no-install-recommends
- name: Install dependencies (Red Hat)
if: contains(matrix.os, 'redhat')
run: |
if [ ${{ matrix.compiler }} = gcc ]; then compiler=gcc-c++; else compiler=llvm-toolset; fi
microdnf -y install $compiler pkgconf cmake openssl-devel zlib-devel libcurl-devel git python3-pip unzip
microdnf -y install $compiler pkgconf cmake brotli libbrotli zstd libzstd openssl-devel zlib-devel libcurl-devel git python3-pip unzip
curl -LO https://github.com/ninja-build/ninja/releases/latest/download/ninja-linux.zip
unzip ninja-linux.zip
mv ninja /usr/local/bin
Expand All @@ -68,7 +68,7 @@ jobs:
if [ ${{ matrix.compiler }} = gcc ]; then CXX=g++; else CXX=clang++ CXX_LD=lld; fi
export CXX CXX_LD
meson setup build \
-DPISTACHE_BUILD_TESTS=true -DPISTACHE_DEBUG=${{ matrix.def_debug }} -DPISTACHE_USE_SSL=${{ matrix.tls }} -DPISTACHE_FORCE_LIBEVENT=${{ matrix.flibev }} -DPISTACHE_USE_CONTENT_ENCODING_DEFLATE=true \
-DPISTACHE_BUILD_TESTS=true -DPISTACHE_DEBUG=${{ matrix.def_debug }} -DPISTACHE_USE_SSL=${{ matrix.tls }} -DPISTACHE_FORCE_LIBEVENT=${{ matrix.flibev }} -DPISTACHE_USE_CONTENT_ENCODING_DEFLATE=true -DPISTACHE_USE_CONTENT_ENCODING_BROTLI=true -DPISTACHE_USE_CONTENT_ENCODING_ZSTD=true \
--buildtype=debug -Db_coverage=true -Db_sanitize=${{ matrix.sanitizer }} -Db_lundef=false \
|| (cat build/meson-logs/meson-log.txt ; false)
env:
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/macos.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,8 @@ jobs:
brew install rapidjson
# brew install libevent # Already installed in base image
brew install howard-hinnant-date
if ! brew list brotli &>/dev/null; then brew install brotli; fi
if ! brew list zstd &>/dev/null; then brew install zstd; fi
- uses: actions/checkout@v4
with:
Expand All @@ -91,7 +93,7 @@ jobs:
echo "Using CXX $CXX, and CC $CC"
meson setup build \
-DPISTACHE_BUILD_TESTS=true -DPISTACHE_DEBUG=${{ matrix.def_debug }} -DPISTACHE_USE_SSL=${{ matrix.tls }} -DPISTACHE_BUILD_EXAMPLES=true -DPISTACHE_BUILD_DOCS=false -DPISTACHE_USE_CONTENT_ENCODING_DEFLATE=true \
-DPISTACHE_BUILD_TESTS=true -DPISTACHE_DEBUG=${{ matrix.def_debug }} -DPISTACHE_USE_SSL=${{ matrix.tls }} -DPISTACHE_BUILD_EXAMPLES=true -DPISTACHE_BUILD_DOCS=false -DPISTACHE_USE_CONTENT_ENCODING_DEFLATE=true -DPISTACHE_USE_CONTENT_ENCODING_BROTLI=true -DPISTACHE_USE_CONTENT_ENCODING_ZSTD=true \
--buildtype=debug -Db_coverage=true -Db_sanitize=${{ matrix.sanitizer }} -Db_lundef=false \
|| (cat build/meson-logs/meson-log.txt ; false)
env:
Expand Down
Loading

0 comments on commit f955e9e

Please sign in to comment.