Unverified Commit f537f87a authored by Cosima Neidahl's avatar Cosima Neidahl Committed by GitHub
Browse files

pdisk: Modernise, fix build, 0.9 -> 0.10 (#388480)

parents a04f3fc2 1bffa075
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
--- a/cmdline.c	2021-10-05 22:29:41.000000000 -0700
+++ a/cmdline.c	2024-05-30 12:05:29.146787602 -0700
@@ -22,10 +22,8 @@
  * @APPLE_LICENSE_HEADER_END@
  */
 #include <stdio.h>
-#ifndef __linux__
 #include <stdlib.h>
 #include <unistd.h>
-#endif
 #include <string.h>
 #include <errno.h>
 #include <fcntl.h>
+23 −23
Original line number Diff line number Diff line
@@ -5,18 +5,16 @@
  fetchpatch,
  installShellFiles,
  libbsd,
  CoreFoundation,
  IOKit,
}:

stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
  pname = "pdisk";
  version = "0.9";
  version = "0.10";

  src = fetchFromGitHub {
    owner = "apple-oss-distributions";
    repo = pname;
    rev = "${pname}-${lib.versions.minor version}";
    repo = "pdisk";
    tag = "pdisk-${lib.versions.minor finalAttrs.version}";
    hash = "sha256-+gBgnk/1juEHE0nXaz7laUaH7sxrX5SzsLGr0PHsdHs=";
  };

@@ -41,29 +39,29 @@ stdenv.mkDerivation rec {
      url = "https://aur.archlinux.org/cgit/aur.git/plain/linux_strerror.patch?h=pdisk&id=d0c930ea8bcac008bbd0ade1811133a625caea54";
      sha256 = "sha256-HGJIS+vTn6456KtaETutIgTPPBm2C9OHf1anG8yaJPo=";
    })

    # Fix missing includes on Linux
    ./cmdline.patch
  ];

  postPatch =
    ''
      substituteInPlace makefile \
        --replace 'cc' '${stdenv.cc.targetPrefix}cc'
        --replace-fail 'cc' '${stdenv.cc.targetPrefix}cc'
    ''
    + lib.optionalString stdenv.hostPlatform.isDarwin ''
      substituteInPlace makefile \
        --replace '-lbsd' '-framework CoreFoundation -framework IOKit'
        --replace-fail '-lbsd' '-framework CoreFoundation -framework IOKit'
    '';

  strictDeps = true;

  nativeBuildInputs = [
    installShellFiles
  ];

  buildInputs =
    lib.optionals (!stdenv.hostPlatform.isDarwin) [
  buildInputs = lib.optionals (!stdenv.hostPlatform.isDarwin) [
    libbsd
    ]
    ++ lib.optionals (stdenv.hostPlatform.isDarwin) [
      CoreFoundation
      IOKit
  ];

  env.NIX_CFLAGS_COMPILE = "-D_GNU_SOURCE";
@@ -73,8 +71,9 @@ stdenv.mkDerivation rec {
  installPhase = ''
    runHook preInstall

    install -Dm755 cvt_pt $out/bin/cvt_pt
    install -Dm755 pdisk $out/bin/pdisk
    for exe in pdisk cvt_pt; do
      install -Dm755 -t $out/bin $exe
    done

    installManPage pdisk.8
    install -Dm644 pdisk.html $out/share/doc/pdisk/pdisk.html
@@ -82,14 +81,15 @@ stdenv.mkDerivation rec {
    runHook postInstall
  '';

  meta = with lib; {
  meta = {
    description = "Low-level Apple partition table editor for Linux, OSS Apple version";
    homepage = "https://github.com/apple-oss-distributions/pdisk";
    license = with licenses; [
    license = with lib.licenses; [
      hpnd # original license statements seems to match this (in files that are shared with mac-fdisk)
      apple-psl10 # new files
    ];
    maintainers = with maintainers; [ OPNA2608 ];
    platforms = platforms.unix;
    mainProgram = "pdisk";
    maintainers = with lib.maintainers; [ OPNA2608 ];
    platforms = lib.platforms.unix;
  };
}
})
+0 −4
Original line number Diff line number Diff line
@@ -3539,10 +3539,6 @@ with pkgs;
  gzip = callPackage ../tools/compression/gzip { };
  pdisk = callPackage ../tools/system/pdisk {
    inherit (darwin.apple_sdk.frameworks) CoreFoundation IOKit;
  };
  plplot = callPackage ../development/libraries/plplot {
    inherit (darwin.apple_sdk.frameworks) Cocoa;
  };