Merge pull request #85653 from veprbl/pr/darwin_binutils_add_man

darwin.binutils: propagate man pages from darwin.cctools
This commit is contained in:
Frederik Rietdijk 2020-05-01 08:49:56 +02:00 committed by GitHub
commit 2da19f9483
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 17 additions and 12 deletions

View File

@ -85,7 +85,7 @@ stdenv.mkDerivation {
inherit targetPrefix infixSalt; inherit targetPrefix infixSalt;
outputs = [ "out" ] ++ optionals propagateDoc [ "man" "info" ]; outputs = [ "out" ] ++ optionals propagateDoc ([ "man" ] ++ optional (bintools ? info) "info");
passthru = { passthru = {
inherit bintools libc nativeTools nativeLibc nativePrefix; inherit bintools libc nativeTools nativeLibc nativePrefix;
@ -259,14 +259,15 @@ stdenv.mkDerivation {
printWords ${bintools_bin} ${if libc == null then "" else libc_bin} > $out/nix-support/propagated-user-env-packages printWords ${bintools_bin} ${if libc == null then "" else libc_bin} > $out/nix-support/propagated-user-env-packages
'' ''
+ optionalString propagateDoc '' + optionalString propagateDoc (''
## ##
## Man page and info support ## Man page and info support
## ##
ln -s ${bintools.man} $man ln -s ${bintools.man} $man
'' + optionalString (bintools ? info) ''
ln -s ${bintools.info} $info ln -s ${bintools.info} $info
'' '')
+ '' + ''
## ##

View File

@ -16,7 +16,7 @@ in
stdenv.mkDerivation { stdenv.mkDerivation {
pname = "${targetPrefix}cctools-binutils-darwin"; pname = "${targetPrefix}cctools-binutils-darwin";
inherit (cctools) version; inherit (cctools) version;
outputs = [ "out" "info" "man" ]; outputs = [ "out" "man" ];
buildCommand = '' buildCommand = ''
mkdir -p $out/bin $out/include mkdir -p $out/bin $out/include
@ -42,12 +42,13 @@ stdenv.mkDerivation {
ln -s ${cctools}/libexec $out/libexec ln -s ${cctools}/libexec $out/libexec
mkdir -p "$info/nix-support" "$man/nix-support" mkdir -p "$man"/share/man/man{1,5}
printWords ${binutils-unwrapped.info} \ for i in ${builtins.concatStringsSep " " cmds}; do
>> $info/nix-support/propagated-build-inputs for path in "${cctools.man}"/share/man/man?/$i.*; do
# FIXME: cctools missing man pages dest_path="$man''${path#${cctools.man}}"
printWords ${binutils-unwrapped.man} \ ln -sv "$path" "$dest_path"
>> $man/nix-support/propagated-build-inputs done
done
''; '';
passthru = { passthru = {

View File

@ -1,4 +1,5 @@
{ stdenv, fetchFromGitHub, autoconf, automake, libtool, autoreconfHook { stdenv, fetchFromGitHub, autoconf, automake, libtool, autoreconfHook
, installShellFiles
, libcxxabi, libuuid , libcxxabi, libuuid
, libobjc ? null, maloader ? null , libobjc ? null, maloader ? null
, enableTapiSupport ? true, libtapi , enableTapiSupport ? true, libtapi
@ -28,9 +29,9 @@ let
sha256 = "0h8b1my0wf1jyjq63wbiqkl2clgxsf87f6i4fjhqs431fzlq8sac"; sha256 = "0h8b1my0wf1jyjq63wbiqkl2clgxsf87f6i4fjhqs431fzlq8sac";
}; };
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" "man" ];
nativeBuildInputs = [ autoconf automake libtool autoreconfHook ]; nativeBuildInputs = [ autoconf automake libtool autoreconfHook installShellFiles ];
buildInputs = [ libuuid ] buildInputs = [ libuuid ]
++ stdenv.lib.optionals stdenv.isDarwin [ libcxxabi libobjc ] ++ stdenv.lib.optionals stdenv.isDarwin [ libcxxabi libobjc ]
++ stdenv.lib.optional enableTapiSupport libtapi; ++ stdenv.lib.optional enableTapiSupport libtapi;
@ -88,6 +89,8 @@ let
pushd include pushd include
make DSTROOT=$out/include RC_OS=common install make DSTROOT=$out/include RC_OS=common install
popd popd
installManPage ar/ar.{1,5}
''; '';
passthru = { passthru = {