Merge pull request #69426 from ttuegel/closure-size/qt

Reduce closure size of Qt applications
This commit is contained in:
Thomas Tuegel
2019-09-26 05:23:26 -05:00
committed by GitHub
9 changed files with 33 additions and 21 deletions
+2 -2
View File
@@ -15,8 +15,8 @@ mkDerivation {
}; };
nativeBuildInputs = [ extra-cmake-modules kdoctools ]; nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ libgit2 ]; buildInputs = [
propagatedBuildInputs = [ libgit2
kactivities ki18n kio ktexteditor kwindowsystem plasma-framework kactivities ki18n kio ktexteditor kwindowsystem plasma-framework
qtscript kconfig kcrash kguiaddons kiconthemes kinit kjobwidgets kparts qtscript kconfig kcrash kguiaddons kiconthemes kinit kjobwidgets kparts
kxmlgui kdbusaddons kwallet kitemmodels knotifications threadweaver kxmlgui kdbusaddons kwallet kitemmodels knotifications threadweaver
+1 -6
View File
@@ -1,5 +1,5 @@
{ {
mkDerivation, lib, makeWrapper, mkDerivation, lib,
extra-cmake-modules, kdoctools, extra-cmake-modules, kdoctools,
kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kguiaddons, kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kguiaddons,
ki18n, kiconthemes, kinit, kdelibs4support, kio, knotifications, ki18n, kiconthemes, kinit, kdelibs4support, kio, knotifications,
@@ -18,12 +18,7 @@ mkDerivation {
kbookmarks kcompletion kconfig kconfigwidgets kcoreaddons kdelibs4support kbookmarks kcompletion kconfig kconfigwidgets kcoreaddons kdelibs4support
kguiaddons ki18n kiconthemes kinit kio knotifications knotifyconfig kparts kpty kguiaddons ki18n kiconthemes kinit kio knotifications knotifyconfig kparts kpty
kservice ktextwidgets kwidgetsaddons kwindowsystem kxmlgui qtscript knewstuff kservice ktextwidgets kwidgetsaddons kwindowsystem kxmlgui qtscript knewstuff
makeWrapper
]; ];
postInstall = ''
wrapProgram $out/bin/konsole --prefix XDG_DATA_DIRS ":" $out/share
'';
propagatedUserEnvPkgs = [ (lib.getBin kinit) ]; propagatedUserEnvPkgs = [ (lib.getBin kinit) ];
} }
+12 -7
View File
@@ -13,6 +13,16 @@
with stdenv.lib; with stdenv.lib;
let
extraPropagatedBuildInputs = [ ]
++ optionals x11Support [ libXext libICE libXrandr ]
++ optionals openglSupport [ libGL libGLU ]
++ optional alsaSupport alsaLib
++ optional pulseaudioSupport libpulseaudio
++ optional stdenv.isDarwin Cocoa;
rpath = makeLibraryPath extraPropagatedBuildInputs;
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "SDL"; pname = "SDL";
version = "1.2.15"; version = "1.2.15";
@@ -31,12 +41,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig ] nativeBuildInputs = [ pkgconfig ]
++ optional stdenv.isLinux libcap; ++ optional stdenv.isLinux libcap;
propagatedBuildInputs = [ libiconv ] propagatedBuildInputs = [ libiconv ] ++ extraPropagatedBuildInputs;
++ optionals x11Support [ libXext libICE libXrandr ]
++ optionals openglSupport [ libGL libGLU ]
++ optional alsaSupport alsaLib
++ optional pulseaudioSupport libpulseaudio
++ optional stdenv.isDarwin Cocoa;
buildInputs = [ ] buildInputs = [ ]
++ optional (!stdenv.hostPlatform.isMinGW && alsaSupport) audiofile ++ optional (!stdenv.hostPlatform.isMinGW && alsaSupport) audiofile
@@ -108,7 +113,7 @@ stdenv.mkDerivation rec {
postFixup = '' postFixup = ''
for lib in $out/lib/*.so* ; do for lib in $out/lib/*.so* ; do
if [[ -L "$lib" ]]; then if [[ -L "$lib" ]]; then
patchelf --set-rpath "$(patchelf --print-rpath $lib):${makeLibraryPath propagatedBuildInputs}" "$lib" patchelf --set-rpath "$(patchelf --print-rpath $lib):${rpath}" "$lib"
fi fi
done done
''; '';
@@ -53,13 +53,12 @@ ecmPostHook() {
} }
postHooks+=(ecmPostHook) postHooks+=(ecmPostHook)
xdgDataSubdirs=( xdgDataSubdirs=( \
"doc" "config.kcfg" "kconf_update" "kservices5" "kservicetypes5" \ "config.kcfg" "kconf_update" "kservices5" "kservicetypes5" \
"kxmlgui5" "knotifications5" "icons" "locale" "sounds" "templates" \ "kxmlgui5" "knotifications5" "icons" "locale" "sounds" "templates" \
"wallpapers" "applications" "desktop-directories" "mime" "appdata" "dbus-1" \ "wallpapers" "applications" "desktop-directories" "mime" "appdata" "dbus-1" \
) )
ecmHostPathSeen=( ) ecmHostPathSeen=( )
ecmUnseenHostPath() { ecmUnseenHostPath() {
@@ -104,5 +103,10 @@ ecmHostPathHook() {
then then
qtWrapperArgs+=(--prefix INFOPATH : "$infoDir") qtWrapperArgs+=(--prefix INFOPATH : "$infoDir")
fi fi
if [ -d "$1/dbus-1" ]
then
propagatedUserEnvPkgs+=" $1"
fi
} }
addEnvHooks "$hostOffset" ecmHostPathHook addEnvHooks "$targetOffset" ecmHostPathHook
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
url = "https://www.soft-switch.org/downloads/spandsp/spandsp-${version}.tar.gz"; url = "https://www.soft-switch.org/downloads/spandsp/spandsp-${version}.tar.gz";
sha256 = "0rclrkyspzk575v8fslzjpgp4y2s4x7xk3r55ycvpi4agv33l1fc"; sha256 = "0rclrkyspzk575v8fslzjpgp4y2s4x7xk3r55ycvpi4agv33l1fc";
}; };
buildInputs = []; outputs = [ "out" "dev" ];
propagatedBuildInputs = [audiofile libtiff]; propagatedBuildInputs = [audiofile libtiff];
meta = { meta = {
homepage = http://www.creytiv.com/baresip.html; homepage = http://www.creytiv.com/baresip.html;
@@ -18,4 +18,3 @@ stdenv.mkDerivation rec {
updateWalker = true; updateWalker = true;
}; };
} }
@@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
sha256 = "1ac7xs1djb03j131f1gmqyfmrplblid9qqyxahs0shdy707r5ll6"; sha256 = "1ac7xs1djb03j131f1gmqyfmrplblid9qqyxahs0shdy707r5ll6";
}; };
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
# libsrtp.pc references -lcrypto -lpcap without -L # libsrtp.pc references -lcrypto -lpcap without -L
@@ -9,6 +9,8 @@ stdenv.mkDerivation {
sha256 = "0m07gq4zfgigsiz8b518xyb19v7qqp76qmp7lb262825vkqzl3zq"; sha256 = "0m07gq4zfgigsiz8b518xyb19v7qqp76qmp7lb262825vkqzl3zq";
}; };
outputs = [ "out" "dev" ];
nativeBuildInputs = [ autoreconfHook pkgconfig ]; nativeBuildInputs = [ autoreconfHook pkgconfig ];
propagatedBuildInputs = [ libogg ]; propagatedBuildInputs = [ libogg ];
+2
View File
@@ -98,6 +98,8 @@ stdenv.mkDerivation rec {
}) })
]; ];
outputs = [ "out" "dev" ];
postPatch = '' postPatch = ''
echo \#!${runtimeShell} > data/dconf/make-dconf-override-db.sh echo \#!${runtimeShell} > data/dconf/make-dconf-override-db.sh
cp ${buildPackages.gtk-doc}/share/gtk-doc/data/gtk-doc.make . cp ${buildPackages.gtk-doc}/share/gtk-doc/data/gtk-doc.make .
+3
View File
@@ -28,6 +28,8 @@ stdenv.mkDerivation rec {
inherit mpi; inherit mpi;
}; };
outputs = [ "out" "dev" ];
nativeBuildInputs = [ removeReferencesTo ]; nativeBuildInputs = [ removeReferencesTo ];
buildInputs = [] buildInputs = []
@@ -51,6 +53,7 @@ stdenv.mkDerivation rec {
postInstall = '' postInstall = ''
find "$out" -type f -exec remove-references-to -t ${stdenv.cc} '{}' + find "$out" -type f -exec remove-references-to -t ${stdenv.cc} '{}' +
moveToOutput bin/h5cc "''${!outputDev}"
''; '';
meta = { meta = {