diff options
author | Artemis Tosini <me@artem.ist> | 2019-03-06 12:42:37 -0500 |
---|---|---|
committer | Dmitry Kalinkin <dmitry.kalinkin@gmail.com> | 2019-03-06 12:42:37 -0500 |
commit | 8a8628f4dc001c8e3f7fdbc5ecd864ff4f2c36c9 (patch) | |
tree | 55ef2a9dfcea8351cf1498a5d0b67e4073f53924 /pkgs/servers/openafs | |
parent | f2a1d5b0c6c13d1d3f8244b01fb7554ddbe1cc3c (diff) |
openafs: fix OpenAFS 1.6 on Linux 4.20 (#56862)
openafs: fix OpenAFS 1.6 on Linux 4.20 This patch cherry-picks commits from the OpenAFS git repository to add support for Linux 4.20 to OpenAFS 1.6. There do not seem to be patches in the Git repository for full Linux 5.0 support, although I have added the ones which exist so far. This patch has been tested on Linux 4.4, 4.14, 4.20, and is confirmed to fail on Linux 5.0. It does not change the drv of the openafs package, only linuxPackages_*.openafs.
Diffstat (limited to 'pkgs/servers/openafs')
-rw-r--r-- | pkgs/servers/openafs/1.6/module.nix | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/pkgs/servers/openafs/1.6/module.nix b/pkgs/servers/openafs/1.6/module.nix index c133161cf5769..6f771e2bf33a5 100644 --- a/pkgs/servers/openafs/1.6/module.nix +++ b/pkgs/servers/openafs/1.6/module.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, which, autoconf, automake, flex, bison +{ stdenv, fetchurl, fetchpatch, which, autoconf, automake, flex, bison , kernel, glibc, perl }: with (import ./srcs.nix { inherit fetchurl; }); @@ -11,6 +11,25 @@ in stdenv.mkDerivation rec { name = "openafs-${version}-${kernel.modDirVersion}"; inherit version src; + patches = [ + # Linux 4.20 + (fetchpatch { + name = "openafs_1_6-current_kernel_time.patch"; + url = "http://git.openafs.org/?p=openafs.git;a=patch;h=b9936e944a2b4f5773d66864cbb297993b050e65"; + sha256 = "16fl9kp0l95dqm166jx3x4ijbzhf2bc9ilnipn3k1j00mfy4lnia"; + }) + (fetchpatch { + name = "openafs_1_6-do_settimeofday.patch"; + url = "http://git.openafs.org/?p=openafs.git;a=patch;h=fe6fb38b3d4095351955b9872d0fd6cba64f8784"; + sha256 = "0k6kgk1ybhm9xx2l0wbcyv7jimkr9mfs2ywvxy8hpyhcm7rbwjkp"; + }) + # Linux 5.0 + (fetchpatch { + name = "openafs_1_6-super_block.patch"; + url = "http://git.openafs.org/?p=openafs.git;a=patch;h=61db15f1badabd83e289efd622e274c47f0aefda"; + sha256 = "0cdd76s1h1bhxj0hl7r6mcha1jcy5vhlvc5dc8m2i83a6281yjsa"; + }) + ]; nativeBuildInputs = [ autoconf automake flex perl bison which ] ++ kernel.moduleBuildDependencies; hardeningDisable = [ "pic" ]; @@ -51,7 +70,7 @@ in stdenv.mkDerivation rec { license = licenses.ipl10; platforms = platforms.linux; maintainers = [ maintainers.z77z maintainers.spacefrogg ]; - broken = versionOlder kernel.version "3.18" + broken = versionOlder kernel.version "3.18" || builtins.compareVersions kernel.version "5.0" >= 0 || stdenv.targetPlatform.isAarch64; }; |