qt5: use xcbuild on darwin, cleanup

This commit is contained in:
Pavol Rusnak 2021-06-03 20:21:38 +02:00
parent afb3563bdc
commit ce14ca10a6
No known key found for this signature in database
GPG key ID: 91F3B339B9A02A3D

View file

@ -5,7 +5,7 @@
coreutils, bison, flex, gdb, gperf, lndir, perl, pkg-config, python3, coreutils, bison, flex, gdb, gperf, lndir, perl, pkg-config, python3,
which, which,
# darwin support # darwin support
darwin, libiconv, darwin, libiconv, xcbuild,
dbus, fontconfig, freetype, glib, harfbuzz, icu, libX11, libXcomposite, dbus, fontconfig, freetype, glib, harfbuzz, icu, libX11, libXcomposite,
libXcursor, libXext, libXi, libXrender, libinput, libjpeg, libpng, libXcursor, libXext, libXi, libXrender, libinput, libjpeg, libpng,
@ -90,7 +90,8 @@ stdenv.mkDerivation {
++ lib.optional (postgresql != null) postgresql; ++ lib.optional (postgresql != null) postgresql;
nativeBuildInputs = nativeBuildInputs =
[ bison flex gperf lndir perl pkg-config which ]; [ bison flex gperf lndir perl pkg-config which ]
++ lib.optionals stdenv.isDarwin [ xcbuild ];
propagatedNativeBuildInputs = [ lndir ]; propagatedNativeBuildInputs = [ lndir ];
@ -131,22 +132,16 @@ stdenv.mkDerivation {
then then
'' ''
sed -i \ sed -i \
-e 's|! /usr/bin/xcode-select --print-path >/dev/null 2>&1;|false;|' \ -e 's|/usr/bin/xcode-select|xcode-select|' \
-e 's|! /usr/bin/xcrun -find xcodebuild >/dev/null 2>&1;|false;|' \ -e 's|/usr/bin/xcrun|xcrun|' \
-e 's|sysroot=$(/usr/bin/xcodebuild -sdk $sdk -version Path 2>/dev/null)|sysroot=/nonsense|' \ -e 's|/usr/bin/xcodebuild|xcodebuild|' \
-e 's|sysroot=$(/usr/bin/xcrun --sdk $sdk --show-sdk-path 2>/dev/null)|sysroot=/nonsense|' \
-e 's|QMAKE_CONF_COMPILER=`getXQMakeConf QMAKE_CXX`|QMAKE_CXX="clang++"\nQMAKE_CONF_COMPILER="clang++"|' \ -e 's|QMAKE_CONF_COMPILER=`getXQMakeConf QMAKE_CXX`|QMAKE_CXX="clang++"\nQMAKE_CONF_COMPILER="clang++"|' \
-e 's|XCRUN=`/usr/bin/xcrun -sdk macosx clang -v 2>&1`|XCRUN="clang -v 2>&1"|' \
-e 's#sdk_val=$(/usr/bin/xcrun -sdk $sdk -find $(echo $val | cut -d \x27 \x27 -f 1))##' \
-e 's#val=$(echo $sdk_val $(echo $val | cut -s -d \x27 \x27 -f 2-))##' \
./configure ./configure
substituteInPlace ./mkspecs/common/mac.conf \ substituteInPlace ./mkspecs/common/mac.conf \
--replace "/System/Library/Frameworks/OpenGL.framework/" "${darwin.apple_sdk.frameworks.OpenGL}/Library/Frameworks/OpenGL.framework/" --replace "/System/Library/Frameworks/OpenGL.framework/" "${darwin.apple_sdk.frameworks.OpenGL}/Library/Frameworks/OpenGL.framework/"
substituteInPlace ./mkspecs/common/mac.conf \ substituteInPlace ./mkspecs/common/mac.conf \
--replace "/System/Library/Frameworks/AGL.framework/" "${darwin.apple_sdk.frameworks.AGL}/Library/Frameworks/AGL.framework/" --replace "/System/Library/Frameworks/AGL.framework/" "${darwin.apple_sdk.frameworks.AGL}/Library/Frameworks/AGL.framework/"
'' ''
# Note on the above: \x27 is a way if including a single-quote
# character in the sed string arguments.
else else
lib.optionalString libGLSupported lib.optionalString libGLSupported
'' ''