nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchurl,
5 fetchpatch2,
6 updateAutotoolsGnuConfigScriptsHook,
7}:
8
9stdenv.mkDerivation (finalAttrs: {
10 pname = "popt";
11 version = "1.19";
12
13 src = fetchurl {
14 url = "https://ftp.osuosl.org/pub/rpm/popt/releases/popt-1.x/popt-${finalAttrs.version}.tar.gz";
15 sha256 = "sha256-wlpIOPyOTByKrLi9Yg7bMISj1jv4mH/a08onWMYyQPk=";
16 };
17
18 nativeBuildInputs = [ updateAutotoolsGnuConfigScriptsHook ];
19
20 patches =
21 lib.optionals stdenv.hostPlatform.isCygwin [
22 ./1.16-cygwin.patch
23 ./1.16-vpath.patch
24 ]
25 ++ lib.optionals stdenv.hostPlatform.isMinGW [
26 # Do not require <sys/ioctl.h>
27 (fetchpatch2 {
28 url = "https://aur.archlinux.org/cgit/aur.git/plain/get-w32-console-maxcols.mingw32.patch?h=mingw-w64-popt&id=63f2cdb0de116362c49681cef20f7a8b4355e85a";
29 sha256 = "zv43l1RBqNzT/JG+jQaMVFaFv+ZYPuIiAtKUDzJJBbc=";
30 stripLen = 1;
31 extraPrefix = "src/";
32 })
33
34 # Do not try to detect setuid, it is not a thing.
35 (fetchpatch2 {
36 url = "https://github.com/rpm-software-management/popt/commit/905544c5d9767894edaf71a1e3ce5126944c5695.patch";
37 sha256 = "3PmcxeiEZ/Hof0zoVFSytEXvQ8gE8Sp5UdagExPVICU=";
38 stripLen = 1;
39 extraPrefix = "src/";
40 revert = true;
41 })
42 ];
43
44 doCheck = false; # fails
45
46 meta = {
47 homepage = "https://github.com/rpm-software-management/popt";
48 description = "Command line option parsing library";
49 maintainers = with lib.maintainers; [ qyliss ];
50 license = lib.licenses.mit;
51 platforms = lib.platforms.unix;
52 };
53})