Merge pull request #24133 from abbradar/gtk3-qt

Fix GTK dependencies in wrappers
This commit is contained in:
Nikolay Amiantov
2017-03-24 01:49:41 +03:00
committed by GitHub
7 changed files with 32 additions and 13 deletions

View File

@@ -18,7 +18,7 @@ top-level attribute to `top-level/all-packages.nix`.
newScope,
stdenv, fetchurl, makeSetupHook, makeWrapper,
bison, cups ? null, harfbuzz, mesa, perl,
gstreamer, gst-plugins-base,
gstreamer, gst-plugins-base, gtk3, dconf,
# options
developerBuild ? false,
@@ -107,7 +107,7 @@ let
makeQtWrapper =
makeSetupHook
{ deps = [ makeWrapper ]; }
{ deps = [ makeWrapper dconf.lib gtk ]; }
(if stdenv.isDarwin then ../make-qt-wrapper-darwin.sh else ../make-qt-wrapper.sh);
qmakeHook =

View File

@@ -18,7 +18,7 @@ top-level attribute to `top-level/all-packages.nix`.
newScope,
stdenv, fetchurl, makeSetupHook, makeWrapper,
bison, cups ? null, harfbuzz, mesa, perl,
gstreamer, gst-plugins-base,
gstreamer, gst-plugins-base, gtk3, dconf,
# options
developerBuild ? false,
@@ -106,7 +106,7 @@ let
makeQtWrapper =
makeSetupHook
{ deps = [ makeWrapper ]; }
{ deps = [ makeWrapper dconf.lib gtk3 ]; }
../make-qt-wrapper.sh;
qmakeHook =

View File

@@ -7,6 +7,7 @@ wrapQtProgram() {
--set QML2_IMPORT_PATH "$QML2_IMPORT_PATH" \
--prefix XDG_DATA_DIRS : "$RUNTIME_XDG_DATA_DIRS" \
--prefix XDG_CONFIG_DIRS : "$RUNTIME_XDG_CONFIG_DIRS" \
--prefix GIO_EXTRA_MODULES : "$GIO_EXTRA_MODULES" \
"$@"
}
@@ -21,6 +22,7 @@ makeQtWrapper() {
--set QML2_IMPORT_PATH "$QML2_IMPORT_PATH" \
--prefix XDG_DATA_DIRS : "$RUNTIME_XDG_DATA_DIRS" \
--prefix XDG_CONFIG_DIRS : "$RUNTIME_XDG_CONFIG_DIRS" \
--prefix GIO_EXTRA_MODULES : "$GIO_EXTRA_MODULES" \
"$@"
}
@@ -29,8 +31,16 @@ _makeQtWrapperSetup() {
export QT_PLUGIN_PATH="$QT_PLUGIN_PATH${QT_PLUGIN_PATH:+:}${!outputLib}/lib/qt5/plugins"
export QML_IMPORT_PATH="$QML_IMPORT_PATH${QML_IMPORT_PATH:+:}${!outputLib}/lib/qt5/imports"
export QML2_IMPORT_PATH="$QML2_IMPORT_PATH${QML2_IMPORT_PATH:+:}${!outputLib}/lib/qt5/qml"
export RUNTIME_XDG_DATA_DIRS="$RUNTIME_XDG_DATA_DIRS${RUNTIME_XDG_DATA_DIRS:+:}${!outputBin}/share"
export RUNTIME_XDG_DATA_DIRS="$RUNTIME_XDG_DATA_DIRS${RUNTIME_XDG_DATA_DIRS:+:}${!outputBin}/share${GSETTINGS_SCHEMAS_PATH:+:$GSETTINGS_SCHEMAS_PATH}"
export RUNTIME_XDG_CONFIG_DIRS="$RUNTIME_XDG_CONFIG_DIRS${RUNTIME_XDG_CONFIG_DIRS:+:}${!outputBin}/etc/xdg"
}
prePhases+=(_makeQtWrapperSetup)
_findGioModules() {
if [ -d "$1"/lib/gio/modules ] && [ -n "$(ls -A $1/lib/gio/modules)" ] ; then
export GIO_EXTRA_MODULES="$GIO_EXTRA_MODULES${GIO_EXTRA_MODULES:+:}$1/lib/gio/modules"
fi
}
envHooks+=(_findGioModules)