gjs: clean up

* Do not propagate spidermonkey, it is only needed gjs to link against.
* Split out dev output, any propagated dependencies should go there.
* Drop unnecessary sed, the readline thing is no longer there.
* Add passthru.tests to allow running installed tests easily.
* Drop pango from buildInputs, we only need it as a transitive dependency of gtk3 for installed tests; gjs actually depends on cairo.
* Move libxml2 to nativeBuildInputs, it is called by glib-compile-resources when xml-stripblanks preprocessing is used.
* Propagate glib, as it is in Requires in the pc file.

It is just 2.5 MB closure reduction but every megabyte counts.
This commit is contained in:
Jan Tojnar 2019-11-20 23:55:02 +01:00
parent e89b21504f
commit 201c1d35f6
No known key found for this signature in database
GPG Key ID: 7FAB2A15F7A607A4

View File

@ -7,12 +7,14 @@
, gobject-introspection , gobject-introspection
, spidermonkey_60 , spidermonkey_60
, pango , pango
, cairo
, readline , readline
, glib , glib
, libxml2 , libxml2
, dbus , dbus
, gdk-pixbuf , gdk-pixbuf
, makeWrapper , makeWrapper
, nixosTests
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -24,24 +26,24 @@ stdenv.mkDerivation rec {
sha256 = "1xf68rbagkflb9yi3visfw8cbxqlzd717y8jakgw0y6whzm1dpxl"; sha256 = "1xf68rbagkflb9yi3visfw8cbxqlzd717y8jakgw0y6whzm1dpxl";
}; };
outputs = [ "out" "installedTests" ]; outputs = [ "out" "dev" "installedTests" ];
nativeBuildInputs = [ nativeBuildInputs = [
pkgconfig pkgconfig
makeWrapper makeWrapper
libxml2 # for xml-stripblanks
]; ];
buildInputs = [ buildInputs = [
libxml2
gobject-introspection gobject-introspection
glib cairo
pango
readline readline
dbus spidermonkey_60
dbus # for dbus-run-session
]; ];
propagatedBuildInputs = [ propagatedBuildInputs = [
spidermonkey_60 glib
]; ];
configureFlags = [ configureFlags = [
@ -55,8 +57,6 @@ stdenv.mkDerivation rec {
''; '';
postInstall = '' postInstall = ''
sed 's|-lreadline|-L${readline.out}/lib -lreadline|g' -i $out/lib/libgjs.la
moveToOutput "share/installed-tests" "$installedTests" moveToOutput "share/installed-tests" "$installedTests"
moveToOutput "libexec/gjs/installed-tests" "$installedTests" moveToOutput "libexec/gjs/installed-tests" "$installedTests"
@ -67,6 +67,10 @@ stdenv.mkDerivation rec {
separateDebugInfo = stdenv.isLinux; separateDebugInfo = stdenv.isLinux;
passthru = { passthru = {
tests = {
installed-tests = nixosTests.installed-tests.gjs;
};
updateScript = gnome3.updateScript { updateScript = gnome3.updateScript {
packageName = "gjs"; packageName = "gjs";
}; };