qt6: avoid building under /tmp on darwin

This commit is contained in:
Weijia Wang 2023-04-14 21:11:09 +03:00
parent ddd8604a3b
commit bd8c68fdec
3 changed files with 14 additions and 9 deletions

View File

@ -38,7 +38,8 @@ let
withGtk3 = true;
inherit (srcs.qtbase) src version;
inherit developerBuild;
inherit (darwin.apple_sdk_11_0.frameworks) AGL AVFoundation AppKit GSS MetalKit;
inherit (darwin.apple_sdk_11_0.frameworks)
AGL AVFoundation AppKit Contacts CoreBluetooth EventKit GSS MetalKit;
patches = [
./patches/0001-qtbase-qmake-always-use-libname-instead-of-absolute-.patch
./patches/0002-qtbase-qmake-fix-mkspecs-for-darwin.patch
@ -46,12 +47,6 @@ let
./patches/0004-qtbase-fix-locating-tzdir-on-NixOS.patch
./patches/0005-qtbase-deal-with-a-font-face-at-index-0-as-Regular-f.patch
./patches/0006-qtbase-qt-cmake-always-use-cmake-from-path.patch
# Remove symlink check causing build to bail out and fail.
# https://gitlab.kitware.com/cmake/cmake/-/issues/23251
(fetchpatch {
url = "https://github.com/Homebrew/formula-patches/raw/c363f0edf9e90598d54bc3f4f1bacf95abbda282/qt/qt_internal_check_if_path_has_symlinks.patch";
sha256 = "sha256-Gv2L8ymZSbJxcmUijKlT2NnkIB3bVH9D7YSsDX2noTU=";
})
];
};
env = callPackage ./qt-env.nix { };

View File

@ -71,10 +71,14 @@
, unixODBC
, unixODBCDrivers
# darwin
, moveBuildTree
, xcbuild
, AGL
, AVFoundation
, AppKit
, Contacts
, CoreBluetooth
, EventKit
, GSS
, MetalKit
# optional dependencies
@ -166,6 +170,9 @@ stdenv.mkDerivation rec {
AGL
AVFoundation
AppKit
Contacts
CoreBluetooth
EventKit
GSS
MetalKit
] ++ lib.optional libGLSupported libGL;
@ -184,7 +191,8 @@ stdenv.mkDerivation rec {
++ lib.optional (libmysqlclient != null) libmysqlclient
++ lib.optional (postgresql != null) postgresql;
nativeBuildInputs = [ bison flex gperf lndir perl pkg-config which cmake xmlstarlet ninja ];
nativeBuildInputs = [ bison flex gperf lndir perl pkg-config which cmake xmlstarlet ninja ]
++ lib.optionals stdenv.isDarwin [ moveBuildTree ];
propagatedNativeBuildInputs = [ lndir ];

View File

@ -3,6 +3,7 @@
, cmake
, ninja
, perl
, moveBuildTree
, srcs
, patches ? [ ]
}:
@ -19,7 +20,8 @@ stdenv.mkDerivation (args // {
patches = args.patches or patches.${pname} or [ ];
buildInputs = args.buildInputs or [ ];
nativeBuildInputs = (args.nativeBuildInputs or [ ]) ++ [ cmake ninja perl ];
nativeBuildInputs = (args.nativeBuildInputs or [ ]) ++ [ cmake ninja perl ]
++ lib.optionals stdenv.isDarwin [ moveBuildTree ];
propagatedBuildInputs = args.qtInputs ++ (args.propagatedBuildInputs or [ ]);
moveToDev = false;