]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Install quiche lib in proper location for macOS, and teach pkgconfig about it
authorOtto Moerbeek <otto.moerbeek@open-xchange.com>
Fri, 29 Sep 2023 13:16:54 +0000 (15:16 +0200)
committerRemi Gacogne <remi.gacogne@powerdns.com>
Mon, 9 Oct 2023 11:38:12 +0000 (13:38 +0200)
builder-support/helpers/install_quiche.sh
pdns/dnsdistdist/Makefile.am

index 1c0b55928380d25d31a889624a713ae5dd7e96ca..908e949f50ed9c512e2b37b8626a574829b97343 100755 (executable)
@@ -7,6 +7,17 @@ readonly QUICHE_TARBALL="${QUICHE_VERSION}.tar.gz"
 readonly QUICHE_TARBALL_URL="https://github.com/cloudflare/quiche/archive/${QUICHE_TARBALL}"
 readonly QUICHE_TARBALL_HASH='eb242a14c4d801a90b57b6021dd29f7a62099f3a4d7a7ba889e105f8328e6c1f'
 
+INSTALL_PREFIX=/usr
+SOEXT=so
+if [ $(uname) = Darwin ]; then
+  if [ $(id -u) = 0 ]; then
+    echo Do not run as root on macOS
+    exit 1
+  fi
+  INSTALL_PREFIX="${HOMEBREW_PREFIX}"
+  SOEXT=dylib
+fi
+
 cd /tmp
 echo $0: Downloading $QUICHE_TARBALL
 curl -L -o "${QUICHE_TARBALL}" "${QUICHE_TARBALL_URL}"
@@ -15,15 +26,20 @@ echo "${QUICHE_TARBALL_HASH}"  "${QUICHE_TARBALL}" | sha256sum -c -
 tar xf "${QUICHE_TARBALL}"
 cd "quiche-${QUICHE_VERSION}"
 RUST_BACKTRACE=1 cargo build --release --no-default-features --features ffi,boringssl-boring-crate --package quiche
-install -Dm644 quiche/include/quiche.h /usr/include
-install -Dm644 target/release/libquiche.so /usr/lib/libdnsdist-quiche.so
-install -Dm644 /dev/stdin /usr/lib/pkgconfig/quiche.pc <<PC
+
+install -m644 quiche/include/quiche.h "${INSTALL_PREFIX}"/include
+install -m644 target/release/libquiche.${SOEXT} "${INSTALL_PREFIX}"/lib/libdnsdist-quiche.${SOEXT}
+if [ ! -d "${INSTALL_PREFIX}"/lib/pkgconfig/ ]; then
+    mkdir "${INSTALL_PREFIX}"/lib/pkgconfig/
+fi
+install -m644 /dev/stdin "${INSTALL_PREFIX}"/lib/pkgconfig/quiche.pc <<PC
 # quiche
 Name: quiche
 Description: quiche library
 URL: https://github.com/cloudflare/quiche
 Version: ${QUICHE_VERSION}
-Libs: -ldnsdist-quiche
+Cflags: -I${INSTALL_PREFIX}/include
+Libs: -L${INSTALL_PREFIX}/lib -ldnsdist-quiche
 PC
 
 cd ..
index c59dd4df4c2bdc28c41c19f8631d0689fda22525..f9a7bc297bd10a5b96898f8f937fac995987cee2 100644 (file)
@@ -440,6 +440,7 @@ endif
 if HAVE_DNS_OVER_QUIC
 dnsdist_SOURCES += doq.cc
 if HAVE_QUICHE
+AM_CPPFLAGS += $(QUICHE_CFLAGS)
 dnsdist_LDADD += $(QUICHE_LDFLAGS) $(QUICHE_LIBS)
 endif
 endif