Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: d3542aae76de
Choose a base ref
...
head repository: NixOS/nixpkgs
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: f91f50668007
Choose a head ref
  • 2 commits
  • 1 file changed
  • 2 contributors

Commits on Oct 3, 2019

  1. Copy the full SHA
    259556d View commit details
  2. Merge pull request #70304 from hedning/glib-fix-loading-dylibs

    glib: fix loading dylibs through gobject on darwin
    worldofpeace authored Oct 3, 2019

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    f91f506 View commit details
Showing with 41 additions and 35 deletions.
  1. +41 −35 pkgs/development/libraries/glib/default.nix
76 changes: 41 additions & 35 deletions pkgs/development/libraries/glib/default.nix
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@
, doCheck ? config.doCheckByDefault or false
, coreutils, dbus, libxml2, tzdata
, desktop-file-utils, shared-mime-info
, darwin
, darwin, fetchpatch
}:

with stdenv.lib;
@@ -55,40 +55,46 @@ stdenv.mkDerivation rec {
sha256 = "046sqfmr84blxh4vkipmh8ff7wd19fxmh6lnr5ibchx3l02p49bc";
};

patches = optional stdenv.isDarwin ./darwin-compilation.patch
++ optional doCheck ./skip-timer-test.patch
++ optionals stdenv.hostPlatform.isMusl [
./quark_init_on_demand.patch
./gobject_init_on_demand.patch
] ++ [
./schema-override-variable.patch
# Require substituteInPlace in postPatch
./fix-gio-launch-desktop-path.patch

# GLib contains many binaries used for different purposes;
# we will install them to different outputs:
# 1. Tools for desktop environment ($bin)
# * gapplication (non-darwin)
# * gdbus
# * gio
# * gio-launch-desktop (symlink to $out)
# * gsettings
# 2. Development/build tools ($dev)
# * gdbus-codegen
# * gio-querymodules
# * glib-compile-resources
# * glib-compile-schemas
# * glib-genmarshal
# * glib-gettextize
# * glib-mkenums
# * gobject-query
# * gresource
# * gtester
# * gtester-report
# 3. Tools for desktop environment that cannot go to $bin due to $out depending on them ($out)
# * gio-launch-desktop
./split-dev-programs.patch
];
patches = optionals stdenv.isDarwin [
./darwin-compilation.patch
# fix loading dylibs on darwin
# Remove on 2.62.1
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/glib/commit/e2409e5e180f1fa369d0e87e38e4d646d9f68791.patch";
sha256 = "1dhjwlsqdgnn8fr8pzfrnd63m7pdgf7mizdyn8lwg17ggvq6qsqf";
})
] ++ optionals stdenv.hostPlatform.isMusl [
./quark_init_on_demand.patch
./gobject_init_on_demand.patch
] ++ [
./schema-override-variable.patch
# Require substituteInPlace in postPatch
./fix-gio-launch-desktop-path.patch

# GLib contains many binaries used for different purposes;
# we will install them to different outputs:
# 1. Tools for desktop environment ($bin)
# * gapplication (non-darwin)
# * gdbus
# * gio
# * gio-launch-desktop (symlink to $out)
# * gsettings
# 2. Development/build tools ($dev)
# * gdbus-codegen
# * gio-querymodules
# * glib-compile-resources
# * glib-compile-schemas
# * glib-genmarshal
# * glib-gettextize
# * glib-mkenums
# * gobject-query
# * gresource
# * gtester
# * gtester-report
# 3. Tools for desktop environment that cannot go to $bin due to $out depending on them ($out)
# * gio-launch-desktop
./split-dev-programs.patch
] ++ optional doCheck ./skip-timer-test.patch;

outputs = [ "bin" "out" "dev" "devdoc" ];