Page MenuHomeWildfire Games

build-osx-libs.sh: add --without-libidn2 flag to curl region
ClosedPublic

Authored by elexis on Aug 14 2018, 8:30 AM.

Details

Summary

This has been reported to fix the build on High Sierra.

Test Plan

I don't have access to osx High Sierra so can't personally verify this works, but it's been mentioned on the trac ticket that it does.

Diff Detail

Repository
rP 0 A.D. Public Repository
Lint
Lint Skipped
Unit
Unit Tests Skipped

Event Timeline

andy5995 created this revision.Aug 14 2018, 8:30 AM
andy5995 added a reviewer: vladislavbelov.
elexis added a subscriber: elexis.EditedOct 16 2018, 6:10 PM

So libCURL uses libidn2 instead of libidn since the discovery of https://curl.haxx.se/mail/lib-2015-06/0143.html but then the right decision would be to add the libidn2 source instead of dropping security for compatibility?

Edit: Well it doesn't use libidn nor libidn2, so it will not be able to parse internationalized domain names then I guess and apparently these 2 domain names we use with libCURL will still work.

elexis commandeered this revision.Oct 16 2018, 10:16 PM
elexis added a reviewer: andy5995.

I don't recollect that anyone ever tested the UserReporter or Mod.IO with that OSX build with libCURL.

Tobbi had uploaded all of his changes here https://pastebin.com/RAqmAiHt

--without-gnutls should be removed from gloox as well following the use of TLS. (gloox also doesnt have libidn2 support)

I can't update this revision without creating a new one apparently. So I'll paste it.

I applied the changes from the pastebin you quoted, and removed --without-gnutls from the gloox build.

diff --git a/build/workspaces/build-osx-bundle.sh b/build/workspaces/build-osx-bundle.sh
index 296c6c7f96..3f8b96e499 100755
--- a/build/workspaces/build-osx-bundle.sh
+++ b/build/workspaces/build-osx-bundle.sh
@@ -25,10 +25,10 @@ export ARCH=${ARCH:="x86_64"}
 OSX_VERSION=`sw_vers -productVersion | grep -Eo "^\d+.\d+"`
 # Set SDK and mimimum required OS X version
 export SYSROOT=${SYSROOT:="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX$OSX_VERSION.sdk"}
-export MIN_OSX_VERSION=${MIN_OSX_VERSION:="10.7"}
+export MIN_OSX_VERSION=${MIN_OSX_VERSION:="10.8"}
 
 # 0 A.D. release version, e.g. Alpha 21 is 0.0.21
-BUNDLE_VERSION=${BUNDLE_VERSION:="0.0.X"}
+BUNDLE_VERSION=${BUNDLE_VERSION:="0.0.23"}
 
 # Define compiler as "clang", this is all Mavericks supports.
 # gcc symlinks may still exist, but they are simply clang with
diff --git a/libraries/osx/build-osx-libs.sh b/libraries/osx/build-osx-libs.sh
index dd98ad5b94..458e9c2603 100755
--- a/libraries/osx/build-osx-libs.sh
+++ b/libraries/osx/build-osx-libs.sh
@@ -196,7 +196,7 @@ then
   tar -xf $LIB_ARCHIVE
   pushd $LIB_DIRECTORY
 
-  (./configure CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" --prefix="$INSTALL_DIR" --enable-ipv6 --with-darwinssl --without-gssapi --without-libmetalink --without-librtmp --without-libssh2 --without-nss --without-polarssl --without-spnego --disable-ares --disable-ldap --disable-ldaps --without-libidn --with-zlib="${ZLIB_DIR}" --enable-shared=no && make ${JOBS} && make install) || die "libcurl build failed"
+  (./configure CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" --prefix="$INSTALL_DIR" --enable-ipv6 --with-darwinssl --without-gssapi --without-libmetalink --without-librtmp --without-libssh2 --without-nss --without-polarssl --without-spnego --disable-ares --disable-ldap --disable-ldaps --without-libidn --without-libidn2 --with-zlib="${ZLIB_DIR}" --enable-shared=no && make ${JOBS} && make install) || die "libcurl build failed"
   popd
   touch .already-built
 else
@@ -486,7 +486,7 @@ then
 
   # TODO: pulls in libresolv dependency from /usr/lib
   # TODO: if we ever use SSL/TLS, that will add yet another dependency...
-  (./configure CFLAGS="$CFLAGS" CXXFLAGS="$CXXFLAGS" LDFLAGS="$LDFLAGS" --prefix="$INSTALL_DIR" --enable-shared=no --with-zlib="${ZLIB_DIR}" --without-libidn --without-gnutls --without-openssl --without-tests --without-examples && make ${JOBS} && make install) || die "gloox build failed"
+  (./configure CFLAGS="$CFLAGS" CXXFLAGS="$CXXFLAGS" LDFLAGS="$LDFLAGS" --prefix="$INSTALL_DIR" --enable-shared=no --with-zlib="${ZLIB_DIR}" --without-libidn --without-openssl --without-tests --without-examples && make ${JOBS} && make install) || die "gloox build failed"
   popd
   touch .already-built
 else
@@ -715,7 +715,7 @@ then
   cp dist/lib/*.a $INSTALL_DIR/lib
   popd
   mv moz.build.bak moz.build
-  
+
   popd
   touch .already-built
 else
This revision was not accepted when it landed; it landed in state Needs Review.Oct 19 2018, 6:16 PM
This revision was automatically updated to reflect the committed changes.
Owners added a subscriber: Restricted Owners Package.Oct 19 2018, 6:16 PM