Merge pull request #226033 from wegank/qt6-qtbase-path
qt6: avoid building under /tmp on darwin
This commit is contained in:
commit
ffde63de3b
12
pkgs/build-support/setup-hooks/move-build-tree.sh
Normal file
12
pkgs/build-support/setup-hooks/move-build-tree.sh
Normal file
@ -0,0 +1,12 @@
|
||||
prePhases+=" moveBuildDir"
|
||||
|
||||
moveBuildDir() {
|
||||
mkdir -p $out/.build
|
||||
cd $out/.build
|
||||
}
|
||||
|
||||
postPhases+=" removeBuildDir"
|
||||
|
||||
removeBuildDir() {
|
||||
rm -rf $out/.build
|
||||
}
|
@ -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 { };
|
||||
|
@ -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 ];
|
||||
|
||||
|
@ -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;
|
||||
|
@ -1173,6 +1173,10 @@ with pkgs;
|
||||
name = "keep-build-tree-hook";
|
||||
} ../build-support/setup-hooks/keep-build-tree.sh;
|
||||
|
||||
moveBuildTree = makeSetupHook {
|
||||
name = "move-build-tree-hook";
|
||||
} ../build-support/setup-hooks/move-build-tree.sh;
|
||||
|
||||
enableGCOVInstrumentation = makeSetupHook {
|
||||
name = "enable-gcov-instrumentation-hook";
|
||||
} ../build-support/setup-hooks/enable-coverage-instrumentation.sh;
|
||||
|
Loading…
Reference in New Issue
Block a user