diff --git a/pkgs/applications/virtualization/libgovirt/auto-disable-incompatible-compiler-warnings.patch b/pkgs/applications/virtualization/libgovirt/auto-disable-incompatible-compiler-warnings.patch new file mode 100644 index 000000000000..85806bfcd892 --- /dev/null +++ b/pkgs/applications/virtualization/libgovirt/auto-disable-incompatible-compiler-warnings.patch @@ -0,0 +1,12 @@ +diff --git a/meson.build b/meson.build +index d5c3627..2bd692a 100644 +--- a/meson.build ++++ b/meson.build +@@ -86,7 +86,7 @@ govirt_global_cflags = ['-std=c99', + '-Woverride-init', + '-Wno-unused-parameter'] + +-foreach arg : govirt_global_cflags ++foreach arg : compiler.get_supported_arguments(govirt_global_cflags) + add_project_arguments(arg, language : 'c') + endforeach diff --git a/pkgs/applications/virtualization/libgovirt/default.nix b/pkgs/applications/virtualization/libgovirt/default.nix index 0815781c21f7..c93f8a689730 100644 --- a/pkgs/applications/virtualization/libgovirt/default.nix +++ b/pkgs/applications/virtualization/libgovirt/default.nix @@ -1,46 +1,48 @@ { lib , stdenv -, fetchurl -, glib +, fetchzip , gnome -, librest -, libsoup +, meson , pkg-config , gobject-introspection +, ninja +, glib +, librest_1_0 }: stdenv.mkDerivation rec { pname = "libgovirt"; - version = "0.3.8"; + version = "0.3.9"; outputs = [ "out" "dev" ]; - src = fetchurl { + src = fetchzip { url = "mirror://gnome/sources/libgovirt/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "HckYYikXa9+p8l/Y+oLAoFi2pgwcyAfHUH7IqTwPHfg="; + sha256 = "sha256-6RDuJTyaVYlO4Kq+niQyepom6xj1lqdBbyWL/VnZUdk="; }; - patches = lib.optionals stdenv.isDarwin [ - # The flag breaks the build on darwin and doesn't seem necessary - ./no-version-script-ld-flag.patch + patches = [ + # https://gitlab.gnome.org/GNOME/libgovirt/-/issues/9 + ./auto-disable-incompatible-compiler-warnings.patch ]; + NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang (lib.concatStringsSep " " [ + "-Wno-typedef-redefinition" + "-Wno-missing-field-initializers" + "-Wno-cast-align" + ]); nativeBuildInputs = [ + meson pkg-config gobject-introspection - ]; - - buildInputs = [ - libsoup + ninja ]; propagatedBuildInputs = [ glib - librest + librest_1_0 ]; - enableParallelBuilding = true; - passthru = { updateScript = gnome.updateScript { packageName = pname; diff --git a/pkgs/applications/virtualization/libgovirt/no-version-script-ld-flag.patch b/pkgs/applications/virtualization/libgovirt/no-version-script-ld-flag.patch deleted file mode 100644 index a837c3bf0642..000000000000 --- a/pkgs/applications/virtualization/libgovirt/no-version-script-ld-flag.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- a/govirt/Makefile.in -+++ b/govirt/Makefile.in -@@ -511,8 +511,7 @@ - libgovirt_la_LDFLAGS = \ - -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ - -export-dynamic \ -- -no-undefined \ -- -Wl,--version-script=$(srcdir)/govirt.sym -+ -no-undefined - - libgovirt_la_CFLAGS = \ - $(WARNINGFLAGS_C) - -Diff finished. Fri Oct 28 10:36:38 2022