Commit 36b4d9db authored by lukts30's avatar lukts30 Committed by Bjørn Forsman
Browse files

libguestfs: 1.50.1 -> 1.54.0

parent ba1bfda1
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
Subject: [PATCH] Revert "perl: Pass @CFLAGS@ through extra_linker_flags"

This reverts commit be06cb048b595200bf7d1cec9684ab7958188b97.
---
--- a/perl/Build.PL.in
+++ b/perl/Build.PL.in
@@ -65,8 +65,6 @@ my $build = Module::Build->new (
         '@top_srcdir@/include',
     ],
     extra_linker_flags => [
-        '-DGUESTFS_PRIVATE=1',
-        split (' ', '@CFLAGS@'),
         '-L@top_builddir@/lib/.libs',
         '-lguestfs',
     ],
-- 
2.44.1
+50 −64
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@
  jansson,
  getopt,
  perlPackages,
  ocaml-ng,
  ocamlPackages,
  libtirpc,
  appliance ? null,
  javaSupport ? false,
@@ -45,17 +45,14 @@

assert appliance == null || lib.isDerivation appliance;

let
  # GetoptLong not avaible with newer ocaml
  ocamlPackages' = ocaml-ng.ocamlPackages_4_14;
in
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
  pname = "libguestfs";
  version = "1.50.1";

  version = "1.54.0";

  src = fetchurl {
    url = "https://libguestfs.org/download/${lib.versions.majorMinor version}-stable/${pname}-${version}.tar.gz";
    sha256 = "sha256-Xmhx6I+C5SHjHUQt5qELZJcCN8t5VumdEXsSO1hWWm8=";
    url = "https://libguestfs.org/download/${lib.versions.majorMinor finalAttrs.version}-stable/${finalAttrs.pname}-${finalAttrs.version}.tar.gz";
    sha256 = "sha256-tK+g+P1YAgXqVUjUaLxuQ8O+y5leL2DmMmVSemMFQkY=";
  };

  strictDeps = true;
@@ -80,12 +77,11 @@ stdenv.mkDerivation rec {
      GetoptLong
      ModuleBuild
    ])
    ++ (with ocamlPackages'; [
    ++ (with ocamlPackages; [
      ocaml
      findlib
    ]);
  buildInputs =
    [
  buildInputs = [
    libxcrypt
    ncurses
    jansson
@@ -109,29 +105,15 @@ stdenv.mkDerivation rec {
    libapparmor
    perlPackages.ModuleBuild
    libtirpc
    ]
    ++ (with ocamlPackages'; [
      ocamlbuild
      ocaml_libvirt
      gettext-stub
      ounit
    ])
    ++ [
      ocamlPackages'.augeas
      (hivex.override { ocamlPackages = ocamlPackages'; })
    ]
    ++ lib.optional javaSupport jdk;
    zstd
    ocamlPackages.ocamlbuild
    ocamlPackages.ocaml_libvirt
    ocamlPackages.ounit
    ocamlPackages.augeas
    ocamlPackages.ocamlbuild
  ] ++ lib.optional javaSupport jdk;

  prePatch = ''
    # build-time scripts
    substituteInPlace run.in        --replace '#!/bin/bash' '#!${stdenv.shell}'
    substituteInPlace ocaml-link.sh.in --replace '#!/bin/bash' '#!${stdenv.shell}'

    # $(OCAMLLIB) is read-only "${ocamlPackages'.ocaml}/lib/ocaml"
    substituteInPlace ocaml/Makefile.am            --replace '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml'
    substituteInPlace ocaml/Makefile.in            --replace '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml'

    # some scripts hardcore /usr/bin/env which is not available in the build env
    patchShebangs .
  '';
  configureFlags = [
@@ -139,13 +121,17 @@ stdenv.mkDerivation rec {
    "--enable-install-daemon"
    "--disable-appliance"
    "--with-distro=NixOS"
    "--disable-perl" # build broken since 1.53.x
    "--with-readline"
    "CPPFLAGS=-I${lib.getDev libxml2}/include/libxml2"
    "INSTALL_OCAMLLIB=${placeholder "out"}/lib/ocaml"
    "--with-guestfs-path=${placeholder "out"}/lib/guestfs"
  ] ++ lib.optionals (!javaSupport) [ "--without-java" ];
  patches = [ ./libguestfs-syms.patch ];

  patches = [
    ./libguestfs-syms.patch
    # Fixes PERL Sys-Guestfs build failure
    ./Revert-perl-Pass-CFLAGS-through-extra_linker_flags.patch
  ];

  createFindlibDestdir = true;

@@ -197,19 +183,19 @@ stdenv.mkDerivation rec {
    runHook postInstallCheck
  '';

  meta = with lib; {
  meta = {
    description = "Tools for accessing and modifying virtual machine disk images";
    license = with licenses; [
    license = with lib.licenses; [
      gpl2Plus
      lgpl21Plus
    ];
    homepage = "https://libguestfs.org/";
    maintainers = with maintainers; [
    maintainers = with lib.maintainers; [
      offline
      lukts30
    ];
    platforms = platforms.linux;
    platforms = lib.platforms.linux;
    # this is to avoid "output size exceeded"
    hydraPlatforms = if appliance != null then appliance.meta.hydraPlatforms else platforms.linux;
    hydraPlatforms = if appliance != null then appliance.meta.hydraPlatforms else lib.platforms.linux;
  };
}
})