uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
21
pkgs/development/libraries/gettext/absolute-paths.diff
Normal file
21
pkgs/development/libraries/gettext/absolute-paths.diff
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
diff --git a/gettext-runtime/src/gettext.sh.in b/gettext-runtime/src/gettext.sh.in
|
||||
index 1dfa3bb..d6ef8a8 100644
|
||||
--- a/gettext-runtime/src/gettext.sh.in
|
||||
+++ b/gettext-runtime/src/gettext.sh.in
|
||||
@@ -86,14 +86,14 @@ fi
|
||||
# looks up the translation of MSGID and substitutes shell variables in the
|
||||
# result.
|
||||
eval_gettext () {
|
||||
- gettext "$1" | (export PATH `envsubst --variables "$1"`; envsubst "$1")
|
||||
+ @out@/bin/gettext "$1" | (export PATH `@out@/bin/envsubst --variables "$1"`; @out@/bin/envsubst "$1")
|
||||
}
|
||||
|
||||
# eval_ngettext MSGID MSGID-PLURAL COUNT
|
||||
# looks up the translation of MSGID / MSGID-PLURAL for COUNT and substitutes
|
||||
# shell variables in the result.
|
||||
eval_ngettext () {
|
||||
- ngettext "$1" "$2" "$3" | (export PATH `envsubst --variables "$1 $2"`; envsubst "$1 $2")
|
||||
+ @out@/bin/ngettext "$1" "$2" "$3" | (export PATH `@out@/bin/envsubst --variables "$1 $2"`; @out@/bin/envsubst "$1 $2")
|
||||
}
|
||||
|
||||
# Note: This use of envsubst is much safer than using the shell built-in 'eval'
|
||||
100
pkgs/development/libraries/gettext/default.nix
Normal file
100
pkgs/development/libraries/gettext/default.nix
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
{ stdenv, lib, fetchurl, fetchpatch, libiconv, xz, bash }:
|
||||
|
||||
# Note: this package is used for bootstrapping fetchurl, and thus
|
||||
# cannot use fetchpatch! All mutable patches (generated by GitHub or
|
||||
# cgit) that are needed here should be included directly in Nixpkgs as
|
||||
# files.
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gettext";
|
||||
version = "0.21";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/gettext/${pname}-${version}.tar.gz";
|
||||
sha256 = "04kbg1sx0ncfrsbr85ggjslqkzzb243fcw9nyh3rrv1a22ihszf7";
|
||||
};
|
||||
patches = [
|
||||
./absolute-paths.diff
|
||||
] ++ lib.optional stdenv.hostPlatform.isWindows (fetchpatch {
|
||||
url = "https://aur.archlinux.org/cgit/aur.git/plain/gettext_formatstring-ruby.patch?h=mingw-w64-gettext&id=e8b577ee3d399518d005e33613f23363a7df07ee";
|
||||
name = "gettext_formatstring-ruby.patch";
|
||||
sha256 = "sha256-6SxZObOMkQDxuKJuJY+mQ/VuJJxSeGbf97J8ZZddCV0=";
|
||||
});
|
||||
|
||||
outputs = [ "out" "man" "doc" "info" ];
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
LDFLAGS = if stdenv.isSunOS then "-lm -lmd -lmp -luutil -lnvpair -lnsl -lidmap -lavl -lsec" else "";
|
||||
|
||||
configureFlags = [
|
||||
"--disable-csharp" "--with-xz"
|
||||
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
# On cross building, gettext supposes that the wchar.h from libc
|
||||
# does not fulfill gettext needs, so it tries to work with its
|
||||
# own wchar.h file, which does not cope well with the system's
|
||||
# wchar.h and stddef.h (gcc-4.3 - glibc-2.9)
|
||||
"gl_cv_func_wcwidth_works=yes"
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteAllInPlace gettext-runtime/src/gettext.sh.in
|
||||
substituteInPlace gettext-tools/projects/KDE/trigger --replace "/bin/pwd" pwd
|
||||
substituteInPlace gettext-tools/projects/GNOME/trigger --replace "/bin/pwd" pwd
|
||||
substituteInPlace gettext-tools/src/project-id --replace "/bin/pwd" pwd
|
||||
'' + lib.optionalString stdenv.hostPlatform.isCygwin ''
|
||||
sed -i -e "s/\(cldr_plurals_LDADD = \)/\\1..\/gnulib-lib\/libxml_rpl.la /" gettext-tools/src/Makefile.in
|
||||
sed -i -e "s/\(libgettextsrc_la_LDFLAGS = \)/\\1..\/gnulib-lib\/libxml_rpl.la /" gettext-tools/src/Makefile.in
|
||||
'';
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
xz
|
||||
xz.bin
|
||||
];
|
||||
buildInputs = [ bash ]
|
||||
# HACK, see #10874 (and 14664)
|
||||
++ lib.optionals (!stdenv.isLinux && !stdenv.hostPlatform.isCygwin) [ libiconv ];
|
||||
|
||||
setupHooks = [
|
||||
../../../build-support/setup-hooks/role.bash
|
||||
./gettext-setup-hook.sh
|
||||
];
|
||||
gettextNeedsLdflags = stdenv.hostPlatform.libc != "glibc" && !stdenv.hostPlatform.isMusl;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
enableParallelChecking = false; # fails sometimes
|
||||
|
||||
meta = with lib; {
|
||||
description = "Well integrated set of translation tools and documentation";
|
||||
|
||||
longDescription = ''
|
||||
Usually, programs are written and documented in English, and use
|
||||
English at execution time for interacting with users. Using a common
|
||||
language is quite handy for communication between developers,
|
||||
maintainers and users from all countries. On the other hand, most
|
||||
people are less comfortable with English than with their own native
|
||||
language, and would rather be using their mother tongue for day to
|
||||
day's work, as far as possible. Many would simply love seeing their
|
||||
computer screen showing a lot less of English, and far more of their
|
||||
own language.
|
||||
|
||||
GNU `gettext' is an important step for the GNU Translation Project, as
|
||||
it is an asset on which we may build many other steps. This package
|
||||
offers to programmers, translators, and even users, a well integrated
|
||||
set of tools and documentation. Specifically, the GNU `gettext'
|
||||
utilities are a set of tools that provides a framework to help other
|
||||
GNU packages produce multi-lingual messages.
|
||||
'';
|
||||
|
||||
homepage = "https://www.gnu.org/software/gettext/";
|
||||
|
||||
maintainers = with maintainers; [ zimbatm vrthra ];
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
||||
// lib.optionalAttrs stdenv.isDarwin {
|
||||
makeFlags = [ "CFLAGS=-D_FORTIFY_SOURCE=0" ];
|
||||
}
|
||||
17
pkgs/development/libraries/gettext/gettext-setup-hook.sh
Normal file
17
pkgs/development/libraries/gettext/gettext-setup-hook.sh
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
gettextDataDirsHook() {
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRoleEnvHook
|
||||
if [ -d "$1/share/gettext" ]; then
|
||||
addToSearchPath "GETTEXTDATADIRS${role_post}" "$1/share/gettext"
|
||||
fi
|
||||
}
|
||||
|
||||
addEnvHooks "$hostOffset" gettextDataDirsHook
|
||||
|
||||
# libintl must be listed in load flags on non-Glibc
|
||||
# it doesn't hurt to have it in Glibc either though
|
||||
if [ -n "@gettextNeedsLdflags@" -a -z "${dontAddExtraLibs-}" ]; then
|
||||
# See pkgs/build-support/setup-hooks/role.bash
|
||||
getHostRole
|
||||
export NIX_LDFLAGS${role_post}+=" -lintl"
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue