Revert "qt5.qtbase: fix cross"

This commit is contained in:
Samuel Dionne-Riel 2023-08-26 19:08:53 -04:00 committed by GitHub
parent 39ab45da6e
commit 6e8985702c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 3 additions and 34 deletions

View file

@ -207,8 +207,7 @@ let
import ../qtModule.nix
{
inherit perl;
inherit lib stdenv;
inherit buildPackages;
inherit lib;
# Use a variant of mkDerivation that does not include wrapQtApplications
# to avoid cyclic dependencies between Qt modules.
mkDerivation =

View file

@ -1,5 +1,4 @@
if [[ -n "${__nix_qtbase-}" ]]; then
if [ -z "${dontWorryAboutQtMismatch-}" ]; then
# Throw an error if a different version of Qt was already set up.
if [[ "$__nix_qtbase" != "@dev@" ]]; then
echo >&2 "Error: detected mismatched Qt dependencies:"
@ -7,7 +6,6 @@ if [[ -n "${__nix_qtbase-}" ]]; then
echo >&2 " $__nix_qtbase"
exit 1
fi
fi
else # Only set up Qt once.
__nix_qtbase="@dev@"

View file

@ -28,15 +28,10 @@
, developerBuild ? false
, decryptSslTraffic ? false
, testers
, buildPackages
}:
let
debugSymbols = debug || developerBuild;
qtPlatformCross = plat: with plat;
if isLinux
then "linux-generic-g++"
else throw "Please add a qtPlatformCross entry for ${plat.config}";
in
stdenv.mkDerivation (finalAttrs: {
@ -87,11 +82,6 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ bison flex gperf lndir perl pkg-config which ]
++ lib.optionals stdenv.isDarwin [ xcbuild ];
# `qtbase` expects to find `cc` (with no prefix) in the
# `$PATH`, so the following is needed even if
# `stdenv.buildPlatform.canExecute stdenv.hostPlatform`
depsBuildBuild = [ buildPackages.stdenv.cc ];
propagatedNativeBuildInputs = [ lndir ];
# libQt5Core links calls CoreFoundation APIs that call into the system ICU. Binaries linked
@ -171,11 +161,6 @@ stdenv.mkDerivation (finalAttrs: {
export MAKEFLAGS+=" -j$NIX_BUILD_CORES"
./bin/syncqt.pl -version $version
'' + lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform) ''
# QT's configure script will refuse to use pkg-config unless these two environment variables are set
export PKG_CONFIG_SYSROOT_DIR=/
export PKG_CONFIG_LIBDIR=${lib.getLib pkg-config}/lib
echo 'QMAKE_PKG_CONFIG=''$''${CROSS_COMPILE}pkg-config' >> mkspecs/devices/${qtPlatformCross stdenv.hostPlatform}/qmake.conf
'';
postConfigure = ''
@ -223,8 +208,6 @@ stdenv.mkDerivation (finalAttrs: {
# To prevent these failures, we need to override PostgreSQL detection.
PSQL_LIBS = lib.optionalString (postgresql != null) "-L${postgresql.lib}/lib -lpq";
# do not pass --host and --build to configureFlags as QT's configure script doesn't understand them
configurePlatforms = [ ];
# TODO Remove obsolete and useless flags once the build will be totally mastered
configureFlags = [
"-plugindir $(out)/$(qtPluginPrefix)"
@ -251,9 +234,6 @@ stdenv.mkDerivation (finalAttrs: {
"-L" "${icu.out}/lib"
"-I" "${icu.dev}/include"
"-pch"
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
"-device ${qtPlatformCross stdenv.hostPlatform}"
"-device-option CROSS_COMPILE=${stdenv.cc.targetPrefix}"
]
++ lib.optional debugSymbols "-debug"
++ lib.optionals developerBuild [

View file

@ -1,8 +1,4 @@
{ lib
, stdenv
, mkDerivation, perl
, buildPackages
}:
{ lib, mkDerivation, perl }:
let inherit (lib) licenses maintainers platforms; in
@ -21,8 +17,7 @@ mkDerivation (args // {
patches = (args.patches or []) ++ (patches.${pname} or []);
nativeBuildInputs = (args.nativeBuildInputs or []) ++ [ perl self.qmake ];
propagatedBuildInputs = (args.qtInputs or []) ++ (args.propagatedBuildInputs or []);
depsBuildBuild = [ buildPackages.stdenv.cc ];
propagatedBuildInputs = args.qtInputs ++ (args.propagatedBuildInputs or []);
outputs = args.outputs or [ "out" "dev" ];
setOutputFlags = args.setOutputFlags or false;
@ -79,7 +74,4 @@ mkDerivation (args // {
maintainers = with maintainers; [ qknight ttuegel periklis bkchr ];
platforms = platforms.unix;
} // (args.meta or {});
} // lib.optionalAttrs (stdenv.hostPlatform != stdenv.buildPlatform) {
dontWorryAboutQtMismatch = true;
})