diff options
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8/default.nix | 39 | ||||
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8/module.nix | 21 |
2 files changed, 43 insertions, 17 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8/default.nix b/infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8/default.nix index 07f5560ff20a..c26f8d3a23c5 100644 --- a/infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8/default.nix +++ b/infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8/default.nix @@ -1,27 +1,30 @@ { stdenv, buildPackages, fetchurl, which, autoconf, automake, flex -, yacc , glibc, perl, kerberos, libxslt, docbook_xsl -, docbook_xml_dtd_43 , libtool_2, removeReferencesTo -, ncurses # Extra ncurses utilities. Only needed for debugging. +, yacc , glibc, perl, kerberos, libxslt, docbook_xsl, file +, docbook_xml_dtd_43, libtool_2 +, withDevdoc ? false, doxygen, dblatex # Extra developer documentation +, ncurses # Extra ncurses utilities. Needed for debugging and monitoring. , tsmbac ? null # Tivoli Storage Manager Backup Client from IBM }: with (import ./srcs.nix { inherit fetchurl; }); +let + inherit (stdenv.lib) optional optionalString optionals; -stdenv.mkDerivation { +in stdenv.mkDerivation { pname = "openafs"; inherit version srcs; depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ autoconf automake flex libxslt libtool_2 perl - removeReferencesTo which yacc ]; + which yacc ] ++ optionals withDevdoc [ doxygen dblatex ]; buildInputs = [ kerberos ncurses ]; - patches = [ ./bosserver.patch ./cross-build.patch ] ++ stdenv.lib.optional (tsmbac != null) ./tsmbac.patch; + patches = [ ./bosserver.patch ./cross-build.patch ] ++ optional (tsmbac != null) ./tsmbac.patch; - outputs = [ "out" "dev" "man" "doc" "server" ]; + outputs = [ "out" "dev" "man" "doc" ] ++ optional withDevdoc "devdoc"; - enableParallelBuilding = true; + enableParallelBuilding = false; setOutputFlags = false; @@ -44,19 +47,19 @@ stdenv.mkDerivation { ./regen.sh + configureFlagsArray=( "--with-gssapi" "--sysconfdir=/etc" "--localstatedir=/var" "--disable-kernel-module" "--disable-fuse-client" - "--with-html-xsl=${docbook_xsl}/share/xml/docbook-xsl/html/chunk.xsl" - ${stdenv.lib.optionalString (tsmbac != null) "--enable-tivoli-tsm"} - ${stdenv.lib.optionalString (ncurses == null) "--disable-gtx"} + "--with-docbook-stylesheets=${docbook_xsl}/share/xml/docbook-xsl" + ${optionalString (tsmbac != null) "--enable-tivoli-tsm"} + ${optionalString (ncurses == null) "--disable-gtx"} "--disable-linux-d_splice-alias-extra-iput" - "--libexecdir=$server/libexec" ) - '' + stdenv.lib.optionalString (tsmbac != null) '' + '' + optionalString (tsmbac != null) '' export XBSA_CFLAGS="-Dxbsa -DNEW_XBSA -I${tsmbac}/lib64/sample -DXBSA_TSMLIB=\\\"${tsmbac}/lib64/libApiTSM64.so\\\"" export XBSA_XLIBS="-ldl" ''; @@ -67,24 +70,28 @@ stdenv.mkDerivation { for d in doc/xml/{AdminGuide,QuickStartUnix,UserGuide}; do make -C "''${d}" index.html done + '' + optionalString withDevdoc '' + make dox ''; postInstall = '' mkdir -p $doc/share/doc/openafs/{AdminGuide,QuickStartUnix,UserGuide} - cp -r doc/{pdf,protocol,txt} README LICENSE $doc/share/doc/openafs + cp -r doc/txt README LICENSE $doc/share/doc/openafs for d in AdminGuide QuickStartUnix UserGuide ; do cp "doc/xml/''${d}"/*.html "$doc/share/doc/openafs/''${d}" done rm -r $out/lib/openafs + '' + optionalString withDevdoc '' + mkdir -p $devdoc/share/devhelp/openafs/doxygen + cp -r doc/{pdf,protocol} $devdoc/share/devhelp/openafs + cp -r doc/doxygen/output/html $devdoc/share/devhelp/openafs/doxygen ''; # Avoid references to $TMPDIR by removing it and let patchelf cleanup the # binaries. preFixup = '' rm -rf "$(pwd)" && mkdir "$(pwd)" - - find $out -type f -exec remove-references-to -t $server '{}' '+' ''; meta = with stdenv.lib; { diff --git a/infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8/module.nix b/infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8/module.nix index db44dbe2200d..722e514ea016 100644 --- a/infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8/module.nix +++ b/infra/libkookie/nixpkgs/pkgs/servers/openafs/1.8/module.nix @@ -18,6 +18,25 @@ in stdenv.mkDerivation { buildInputs = [ kerberos ]; + patches = [ + (fetchpatch { + url = "https://github.com/openafs/openafs/commit/d7fc5bf9bf031089d80703c48daf30d5b15a80ca.patch"; + sha256 = "0469ydzgvyvrl1b2s1qbl9cd8c5c1nb99c3z52z5i685da5z6pab"; + }) + (fetchpatch { + url = "https://github.com/openafs/openafs/commit/335f37be13d2ff954e4aeea617ee66502170805e.patch"; + sha256 = "0jr6cgplnip61cjlcd3fvgsc6n3jhfk93mm9m7ak04w1vc26dk9x"; + }) + (fetchpatch { + url = "https://github.com/openafs/openafs/commit/facff58b840a47853592510617ba7a1da2e3eaa9.patch"; + sha256 = "0izafg6bi5iaigq3jjx0zlg1cxwaddz3238hk0s08fcb6nyhkvx1"; + }) + (fetchpatch { + url = "https://github.com/openafs/openafs/commit/e7902252f15acfc28453c531f6fa3b29c9c91b92.patch"; + sha256 = "1jy4v8yx8p6mhma6b3h3g94mb38bw7hg7q6lnyc8bijkbnl0d1rl"; + }) + ]; + hardeningDisable = [ "pic" ]; configureFlags = [ @@ -56,7 +75,7 @@ in stdenv.mkDerivation { license = licenses.ipl10; platforms = platforms.linux; maintainers = [ maintainers.maggesi maintainers.spacefrogg ]; - broken = versionOlder kernel.version "3.18"; + broken = versionOlder kernel.version "3.18" || kernel.isHardened; }; } |