forked from mirrors/nixpkgs
Merge commit '3b29468313bc8604fe8f85c8d9316fd276d3985c' into HEAD
This commit is contained in:
commit
6bbc3a0b24
|
@ -73,7 +73,7 @@
|
|||
|
||||
<varlistentry><term><varname>
|
||||
$outputMan</varname></term><listitem><para>
|
||||
is for man pages (except for section 3). They go to <varname>man</varname> or <varname>doc</varname> or <varname>$outputBin</varname> by default.
|
||||
is for man pages (except for section 3). They go to <varname>man</varname> or <varname>$outputBin</varname> by default.
|
||||
</para></listitem></varlistentry>
|
||||
|
||||
<varlistentry><term><varname>
|
||||
|
@ -83,7 +83,7 @@
|
|||
|
||||
<varlistentry><term><varname>
|
||||
$outputInfo</varname></term><listitem><para>
|
||||
is for info pages. They go to <varname>info</varname> or <varname>doc</varname> or <varname>$outputMan</varname> by default.
|
||||
is for info pages. They go to <varname>info</varname> or <varname>$outputBin</varname> by default.
|
||||
</para></listitem></varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
|
|
@ -6,7 +6,7 @@ let
|
|||
);
|
||||
|
||||
origKernel = pkgs.buildLinux {
|
||||
inherit (pkgs.linux) src version;
|
||||
inherit (pkgs.linux) src version stdenv;
|
||||
inherit configfile;
|
||||
allowImportFromDerivation = true;
|
||||
kernelPatches = [ pkgs.kernelPatches.cifs_timeout_2_6_38 ];
|
||||
|
|
|
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
#doCheck = true; # takes lots of time
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
outputs = [ "bin" "dev" "out" "man" "doc" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://xiph.org/flac/;
|
||||
|
|
|
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
|||
make PREFIX=$out install
|
||||
'';
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
buildInputs = [ libXext libX11 libjpeg libpng giflib ];
|
||||
|
||||
|
|
|
@ -5,12 +5,12 @@
|
|||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "3.3.0";
|
||||
version = "3.5.0";
|
||||
name = "calibre-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.calibre-ebook.com/${version}/${name}.tar.xz";
|
||||
sha256 = "1zq3aihnyxdczdz8b0w02xfw4b0l9i23f6ljpmsmm69jyh4j3m0c";
|
||||
sha256 = "1al0vy11zvlxlrf03i631p6b419hy47pbzmgydswrii4prndj4xv";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
# Remove unneeded files and libs
|
||||
rm -rf resources/calibre-portable.* \
|
||||
src/{chardet,cherrypy,html5lib,odf,routes}
|
||||
src/odf
|
||||
'';
|
||||
|
||||
dontUseQmakeConfigure = true;
|
||||
|
@ -49,12 +49,11 @@ stdenv.mkDerivation rec {
|
|||
poppler_utils libpng imagemagick libjpeg
|
||||
fontconfig podofo qtbase chmlib icu sqlite libusb1 libmtp xdg_utils wrapGAppsHook
|
||||
] ++ (with python2Packages; [
|
||||
html5lib_0_9999999 # needs to be before mechanize ?
|
||||
apsw cssselect cssutils dateutil lxml mechanize netifaces pillow
|
||||
apsw cssselect cssutils dateutil html5-parser lxml mechanize netifaces pillow
|
||||
python pyqt5 sip
|
||||
regex msgpack
|
||||
# the following are distributed with calibre, but we use upstream instead
|
||||
chardet cherrypy odfpy routes
|
||||
odfpy
|
||||
]);
|
||||
|
||||
installPhase = ''
|
||||
|
@ -91,6 +90,9 @@ stdenv.mkDerivation rec {
|
|||
substituteAllInPlace $entry
|
||||
done
|
||||
|
||||
mkdir -p $out/share
|
||||
cp -a man-pages $out/share/man
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0khdbwfclvpjgyk5ar1fs4j66zsjikaj422wlvrvqhyzi1v5arpr";
|
||||
};
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
nativeBuildInputs = [ cmake perl ];
|
||||
buildInputs = [
|
||||
|
|
|
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
|||
makeFlags = [ "prefix=$(out)" ];
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ zlib libX11 libXcursor libXext harfbuzz mesa libXrandr libXinerama freetype libjpeg jbig2dec openjpeg ];
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
outputs = [ "bin" "dev" "out" "man" "doc" ];
|
||||
|
||||
preConfigure = ''
|
||||
# Don't remove mujs because upstream version is incompatible
|
||||
|
|
|
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
|||
make PREFIX=$out install
|
||||
'';
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
buildInputs = [ libX11 ];
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0xfnhaxmvxdxs3ic0qs5lwq3yl4pi5ib99p0p5lv3v2vldqlm4lc";
|
||||
};
|
||||
|
||||
outputs = [ "out" ]; # "doc" was here but was not produced
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
cmakeFlags = with stdenv.lib; [
|
||||
|
|
|
@ -29,6 +29,8 @@ in stdenv.mkDerivation rec {
|
|||
sha512 = "10e6495d207328aae325a797be1de5e535b5d967df929b0af9d7554d0473b5a7931c8f9cb1793e843b1913f441f790169dd4ac1ad9e0e53e66bc8e1c1dd60e66";
|
||||
};
|
||||
|
||||
patches = [ ./gcc6.patch ];
|
||||
|
||||
# New sed no longer tolerates this mistake.
|
||||
postPatch = ''
|
||||
for f in mozilla/{js/src,}/configure; do
|
||||
|
|
|
@ -0,0 +1,75 @@
|
|||
|
||||
# HG changeset patch
|
||||
# User Mike Hommey <mh+mozilla@glandium.org>
|
||||
# Date 1457596445 -32400
|
||||
# Node ID 55212130f19da3079167a6b0a5a0ed6689c9a71d
|
||||
# Parent 27c94617d7064d566c24a42e11cd4c7ef725923d
|
||||
Bug 1245076 - Don't include mozalloc.h from the cstdlib wrapper. r=froydnj
|
||||
|
||||
Our STL wrappers do various different things, one of which is including
|
||||
mozalloc.h for infallible operator new. mozalloc.h includes stdlib.h,
|
||||
which, in libstdc++ >= 6 is now itself a wrapper around cstdlib, which
|
||||
circles back to our STL wrapper.
|
||||
|
||||
But of the things our STL wrappers do, including mozalloc.h is not one
|
||||
that is necessary for cstdlib. So skip including mozalloc.h in our
|
||||
cstdlib wrapper.
|
||||
|
||||
Additionally, some C++ sources (in media/mtransport) are including
|
||||
headers in an extern "C" block, which end up including stdlib.h, which
|
||||
ends up including cstdlib because really, this is all C++, and our
|
||||
wrapper pre-includes <new> for mozalloc.h, which fails because templates
|
||||
don't work inside extern "C". So, don't pre-include <new> when we're not
|
||||
including mozalloc.h.
|
||||
|
||||
|
||||
diff --git a/mozilla/config/gcc-stl-wrapper.template.h b/mozilla/config/gcc-stl-wrapper.template.h
|
||||
--- a/mozilla/config/gcc-stl-wrapper.template.h
|
||||
+++ b/mozilla/config/gcc-stl-wrapper.template.h
|
||||
@@ -12,33 +12,40 @@
|
||||
// compiling ObjC.
|
||||
#if defined(__EXCEPTIONS) && __EXCEPTIONS && !(__OBJC__ && __GNUC__ && XP_IOS)
|
||||
# error "STL code can only be used with -fno-exceptions"
|
||||
#endif
|
||||
|
||||
// Silence "warning: #include_next is a GCC extension"
|
||||
#pragma GCC system_header
|
||||
|
||||
+// Don't include mozalloc for cstdlib. See bug 1245076.
|
||||
+#ifndef moz_dont_include_mozalloc_for_cstdlib
|
||||
+# define moz_dont_include_mozalloc_for_cstdlib
|
||||
+#endif
|
||||
+#ifndef moz_dont_include_mozalloc_for_${HEADER}
|
||||
// mozalloc.h wants <new>; break the cycle by always explicitly
|
||||
// including <new> here. NB: this is a tad sneaky. Sez the gcc docs:
|
||||
//
|
||||
// `#include_next' does not distinguish between <file> and "file"
|
||||
// inclusion, nor does it check that the file you specify has the
|
||||
// same name as the current file. It simply looks for the file
|
||||
// named, starting with the directory in the search path after the
|
||||
// one where the current file was found.
|
||||
-#include_next <new>
|
||||
+# include_next <new>
|
||||
|
||||
// See if we're in code that can use mozalloc. NB: this duplicates
|
||||
// code in nscore.h because nscore.h pulls in prtypes.h, and chromium
|
||||
// can't build with that being included before base/basictypes.h.
|
||||
-#if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
|
||||
-# include "mozilla/mozalloc.h"
|
||||
-#else
|
||||
-# error "STL code can only be used with infallible ::operator new()"
|
||||
+# if !defined(XPCOM_GLUE) && !defined(NS_NO_XPCOM) && !defined(MOZ_NO_MOZALLOC)
|
||||
+# include "mozilla/mozalloc.h"
|
||||
+# else
|
||||
+# error "STL code can only be used with infallible ::operator new()"
|
||||
+# endif
|
||||
+
|
||||
#endif
|
||||
|
||||
#if defined(DEBUG) && !defined(_GLIBCXX_DEBUG)
|
||||
// Enable checked iterators and other goodies
|
||||
//
|
||||
// FIXME/bug 551254: gcc's debug STL implementation requires -frtti.
|
||||
// Figure out how to resolve this with -fno-rtti. Maybe build with
|
||||
// -frtti in DEBUG builds?
|
||||
|
|
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1wfir1gvh5h7izgvx2kd1pr2k7wlncd33zq7qi9s9k2y0aza93yr";
|
||||
};
|
||||
|
||||
outputs = [ "out" "contrib" "doc" "info" ];
|
||||
outputs = [ "out" "contrib" "man" "doc" "info" ];
|
||||
|
||||
configureFlags = [
|
||||
# >=1.4.9 requires this even with readline in inputs
|
||||
|
|
|
@ -34,7 +34,7 @@ cppInclude=1
|
|||
expandResponseParams "$@"
|
||||
declare -i n=0
|
||||
nParams=${#params[@]}
|
||||
while [ "$n" -lt "$nParams" ]; do
|
||||
while (( "$n" < "$nParams" )); do
|
||||
p=${params[n]}
|
||||
p2=${params[n+1]:-} # handle `p` being last one
|
||||
if [ "$p" = -c ]; then
|
||||
|
@ -83,7 +83,7 @@ if [[ "${NIX_ENFORCE_PURITY:-}" = 1 && -n "$NIX_STORE" ]]; then
|
|||
rest=()
|
||||
nParams=${#params[@]}
|
||||
declare -i n=0
|
||||
while [ "$n" -lt "$nParams" ]; do
|
||||
while (( "$n" < "$nParams" )); do
|
||||
p=${params[n]}
|
||||
p2=${params[n+1]:-} # handle `p` being last one
|
||||
if [ "${p:0:3}" = -L/ ] && badPath "${p:2}"; then
|
||||
|
@ -101,21 +101,24 @@ if [[ "${NIX_ENFORCE_PURITY:-}" = 1 && -n "$NIX_STORE" ]]; then
|
|||
fi
|
||||
n+=1
|
||||
done
|
||||
params=("${rest[@]}")
|
||||
# Old bash empty array hack
|
||||
params=(${rest+"${rest[@]}"})
|
||||
fi
|
||||
|
||||
|
||||
# Clear march/mtune=native -- they bring impurity.
|
||||
if [ "$NIX_@infixSalt@_ENFORCE_NO_NATIVE" = 1 ]; then
|
||||
rest=()
|
||||
for p in "${params[@]}"; do
|
||||
# Old bash empty array hack
|
||||
for p in ${params+"${params[@]}"}; do
|
||||
if [[ "$p" = -m*=native ]]; then
|
||||
skip "$p"
|
||||
else
|
||||
rest+=("$p")
|
||||
fi
|
||||
done
|
||||
params=("${rest[@]}")
|
||||
# Old bash empty array hack
|
||||
params=(${rest+"${rest[@]}"})
|
||||
fi
|
||||
|
||||
if [[ "$isCpp" = 1 ]]; then
|
||||
|
@ -163,14 +166,13 @@ fi
|
|||
|
||||
# Optionally print debug info.
|
||||
if [ -n "${NIX_DEBUG:-}" ]; then
|
||||
set +u # Old bash workaround, see ld-wrapper for explanation.
|
||||
# Old bash workaround, see ld-wrapper for explanation.
|
||||
echo "extra flags before to @prog@:" >&2
|
||||
printf " %q\n" "${extraBefore[@]}" >&2
|
||||
printf " %q\n" ${extraBefore+"${extraBefore[@]}"} >&2
|
||||
echo "original flags to @prog@:" >&2
|
||||
printf " %q\n" "${params[@]}" >&2
|
||||
printf " %q\n" ${params+"${params[@]}"} >&2
|
||||
echo "extra flags after to @prog@:" >&2
|
||||
printf " %q\n" "${extraAfter[@]}" >&2
|
||||
set -u
|
||||
printf " %q\n" ${extraAfter+"${extraAfter[@]}"} >&2
|
||||
fi
|
||||
|
||||
if [ -n "$NIX_CC_WRAPPER_@infixSalt@_EXEC_HOOK" ]; then
|
||||
|
@ -178,5 +180,8 @@ if [ -n "$NIX_CC_WRAPPER_@infixSalt@_EXEC_HOOK" ]; then
|
|||
fi
|
||||
|
||||
PATH="$path_backup"
|
||||
set +u # Old bash workaround, see above.
|
||||
exec @prog@ "${extraBefore[@]}" "${params[@]}" "${extraAfter[@]}"
|
||||
# Old bash workaround, see above.
|
||||
exec @prog@ \
|
||||
${extraBefore+"${extraBefore[@]}"} \
|
||||
${params+"${params[@]}"} \
|
||||
${extraAfter+"${extraAfter[@]}"}
|
||||
|
|
|
@ -84,6 +84,8 @@ let
|
|||
# Work around "stdenv-darwin-boot-2 is not allowed to refer to path /nix/store/...-expand-response-params.c"
|
||||
cp "$src" expand-response-params.c
|
||||
"$CC" -std=c99 -O3 -o "$out" expand-response-params.c
|
||||
strip -S $out
|
||||
${optionalString hostPlatform.isLinux "patchelf --shrink-rpath $out"}
|
||||
'';
|
||||
} else "";
|
||||
|
||||
|
@ -102,6 +104,8 @@ stdenv.mkDerivation {
|
|||
binPrefix = prefix;
|
||||
inherit infixSalt;
|
||||
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
passthru = {
|
||||
inherit libc nativeTools nativeLibc nativePrefix isGNU isClang default_cxx_stdlib_compile
|
||||
prefix;
|
||||
|
@ -120,7 +124,7 @@ stdenv.mkDerivation {
|
|||
|
||||
buildCommand =
|
||||
''
|
||||
mkdir -p $out/bin $out/nix-support
|
||||
mkdir -p $out/bin $out/nix-support $man/nix-support
|
||||
|
||||
wrap() {
|
||||
local dst="$1"
|
||||
|
@ -231,7 +235,8 @@ stdenv.mkDerivation {
|
|||
# Propagate the wrapped cc so that if you install the wrapper,
|
||||
# you get tools like gcov, the manpages, etc. as well (including
|
||||
# for binutils and Glibc).
|
||||
printWords ${cc} ${cc.man or ""} ${binutils_bin} ${if libc == null then "" else libc_bin} > $out/nix-support/propagated-user-env-packages
|
||||
printWords ${cc} ${binutils_bin} ${if libc == null then "" else libc_bin} > $out/nix-support/propagated-user-env-packages
|
||||
printWords ${cc.man or ""} > $man/nix-support/propagated-user-env-packages
|
||||
|
||||
printWords ${toString extraPackages} > $out/nix-support/propagated-native-build-inputs
|
||||
''
|
||||
|
|
|
@ -28,7 +28,7 @@ if [[ "${NIX_ENFORCE_PURITY:-}" = 1 && -n "${NIX_STORE:-}"
|
|||
rest=()
|
||||
nParams=${#params[@]}
|
||||
declare -i n=0
|
||||
while [ "$n" -lt "$nParams" ]; do
|
||||
while (( "$n" < "$nParams" )); do
|
||||
p=${params[n]}
|
||||
p2=${params[n+1]:-} # handle `p` being last one
|
||||
if [ "${p:0:3}" = -L/ ] && badPath "${p:2}"; then
|
||||
|
@ -51,7 +51,8 @@ if [[ "${NIX_ENFORCE_PURITY:-}" = 1 && -n "${NIX_STORE:-}"
|
|||
fi
|
||||
n+=1
|
||||
done
|
||||
params=("${rest[@]}")
|
||||
# Old bash empty array hack
|
||||
params=(${rest+"${rest[@]}"})
|
||||
fi
|
||||
|
||||
source @out@/nix-support/add-hardening.sh
|
||||
|
@ -73,11 +74,12 @@ relocatable=
|
|||
# Find all -L... switches for rpath, and relocatable flags for build id.
|
||||
if [ "$NIX_@infixSalt@_DONT_SET_RPATH" != 1 ] || [ "$NIX_@infixSalt@_SET_BUILD_ID" = 1 ]; then
|
||||
prev=
|
||||
# Old bash thinks empty arrays are undefined, ugh, so temporarily disable
|
||||
# `set -u`.
|
||||
set +u
|
||||
for p in "${extraBefore[@]}" "${params[@]}" "${extraAfter[@]}"; do
|
||||
set -u
|
||||
# Old bash thinks empty arrays are undefined, ugh.
|
||||
for p in \
|
||||
${extraBefore+"${extraBefore[@]}"} \
|
||||
${params+"${params[@]}"} \
|
||||
${extraAfter+"${extraAfter[@]}"}
|
||||
do
|
||||
case "$prev" in
|
||||
-L)
|
||||
libDirs+=("$p")
|
||||
|
@ -155,14 +157,13 @@ fi
|
|||
|
||||
# Optionally print debug info.
|
||||
if [ -n "${NIX_DEBUG:-}" ]; then
|
||||
set +u # Old bash workaround, see above.
|
||||
# Old bash workaround, see above.
|
||||
echo "extra flags before to @prog@:" >&2
|
||||
printf " %q\n" "${extraBefore[@]}" >&2
|
||||
printf " %q\n" ${extraBefore+"${extraBefore[@]}"} >&2
|
||||
echo "original flags to @prog@:" >&2
|
||||
printf " %q\n" "${params[@]}" >&2
|
||||
printf " %q\n" ${params+"${params[@]}"} >&2
|
||||
echo "extra flags after to @prog@:" >&2
|
||||
printf " %q\n" "${extraAfter[@]}" >&2
|
||||
set -u
|
||||
printf " %q\n" ${extraAfter+"${extraAfter[@]}"} >&2
|
||||
fi
|
||||
|
||||
if [ -n "$NIX_LD_WRAPPER_@infixSalt@_EXEC_HOOK" ]; then
|
||||
|
@ -170,5 +171,8 @@ if [ -n "$NIX_LD_WRAPPER_@infixSalt@_EXEC_HOOK" ]; then
|
|||
fi
|
||||
|
||||
PATH="$path_backup"
|
||||
set +u # Old bash workaround, see above.
|
||||
exec @prog@ "${extraBefore[@]}" "${params[@]}" "${extraAfter[@]}"
|
||||
# Old bash workaround, see above.
|
||||
exec @prog@ \
|
||||
${extraBefore+"${extraBefore[@]}"} \
|
||||
${params+"${params[@]}"} \
|
||||
${extraAfter+"${extraAfter[@]}"}
|
||||
|
|
|
@ -139,7 +139,6 @@ export ${role}CC=@named_cc@
|
|||
export ${role}CXX=@named_cxx@
|
||||
|
||||
for CMD in \
|
||||
cpp \
|
||||
ar as nm objcopy ranlib strip strings size ld windres
|
||||
do
|
||||
if
|
||||
|
|
|
@ -24,7 +24,7 @@ badPath() {
|
|||
}
|
||||
|
||||
expandResponseParams() {
|
||||
declare -g params=("$@")
|
||||
declare -ga params=("$@")
|
||||
local arg
|
||||
for arg in "$@"; do
|
||||
if [[ "$arg" == @* ]]; then
|
||||
|
|
|
@ -3,8 +3,8 @@
|
|||
# assertExecutable FILE
|
||||
assertExecutable() {
|
||||
local file="$1"
|
||||
[[ -f "${file}" && -x "${file}" ]] || \
|
||||
die "Cannot wrap ${file} because it is not an executable file"
|
||||
[[ -f "$file" && -x "$file" ]] || \
|
||||
die "Cannot wrap '$file' because it is not an executable file"
|
||||
}
|
||||
|
||||
# construct an executable file that wraps the actual executable
|
||||
|
@ -33,7 +33,7 @@ makeWrapper() {
|
|||
local params varName value command separator n fileNames
|
||||
local argv0 flagsBefore flags
|
||||
|
||||
assertExecutable "${original}"
|
||||
assertExecutable "$original"
|
||||
|
||||
mkdir -p "$(dirname "$wrapper")"
|
||||
|
||||
|
@ -131,7 +131,7 @@ wrapProgram() {
|
|||
local prog="$1"
|
||||
local hidden
|
||||
|
||||
assertExecutable "${prog}"
|
||||
assertExecutable "$prog"
|
||||
|
||||
hidden="$(dirname "$prog")/.$(basename "$prog")"-wrapped
|
||||
while [ -e "$hidden" ]; do
|
||||
|
|
|
@ -40,9 +40,9 @@ _overrideFirst outputLib "lib" "out"
|
|||
_overrideFirst outputDoc "doc" "out"
|
||||
_overrideFirst outputDevdoc "devdoc" REMOVE # documentation for developers
|
||||
# man and info pages are small and often useful to distribute with binaries
|
||||
_overrideFirst outputMan "man" "doc" "$outputBin"
|
||||
_overrideFirst outputMan "man" "$outputBin"
|
||||
_overrideFirst outputDevman "devman" "devdoc" "$outputMan"
|
||||
_overrideFirst outputInfo "info" "doc" "$outputMan"
|
||||
_overrideFirst outputInfo "info" "$outputBin"
|
||||
|
||||
|
||||
# Add standard flags to put files into the desired outputs.
|
||||
|
|
|
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
|
|||
"TZDIR=$(out)/share/zoneinfo"
|
||||
"ETCDIR=$(TMPDIR)/etc"
|
||||
"LIBDIR=$(dev)/lib"
|
||||
"MANDIR=$(man)/man"
|
||||
"MANDIR=$(man)/share/man"
|
||||
"AWK=awk"
|
||||
"CFLAGS=-DHAVE_LINK=0"
|
||||
];
|
||||
|
|
|
@ -11,7 +11,7 @@ stdenv.mkDerivation {
|
|||
sha256 = "09ch709cb9fniwc4221xgkq0jf0x0lxs814sqig8p2dcll0llvzk";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" ];
|
||||
|
||||
buildInputs = [ ORBit2 dbus_libs dbus_glib libxml2 ]
|
||||
# polkit requires pam, which requires shadow.h, which is not available on
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
{ fetchurl, stdenv, pkgconfig, gnome3, gtk3, gobjectIntrospection
|
||||
, spidermonkey_24, pango, readline, glib, libxml2, dbus }:
|
||||
, spidermonkey_31, pango, readline, glib, libxml2, dbus }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
inherit (import ./src.nix fetchurl) name src;
|
||||
|
||||
buildInputs = [ libxml2 gobjectIntrospection pkgconfig gtk3 glib pango readline dbus ];
|
||||
|
||||
propagatedBuildInputs = [ spidermonkey_24 ];
|
||||
propagatedBuildInputs = [ spidermonkey_31 ];
|
||||
|
||||
postInstall = ''
|
||||
sed 's|-lreadline|-L${readline.out}/lib -lreadline|g' -i $out/lib/libgjs.la
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
# Autogenerated by maintainers/scripts/gnome.sh update
|
||||
|
||||
fetchurl: rec {
|
||||
name = "gjs-${major}.0";
|
||||
major = "1.46";
|
||||
name = "gjs-${major}.4";
|
||||
major = "1.47";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gjs/${major}/${name}.tar.xz";
|
||||
sha256 = "2283591fa70785443793e1d7db66071b36052d707075f229baeb468d8dd25ad4";
|
||||
sha256 = "05x9yk3h53wn9fpwbcxl8yz71znhwhzwy7412di77x88ghkxi2c1";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -344,8 +344,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null &&
|
||||
hasAttr "propagatedBuildInputs" libcCross)
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
|
|
@ -467,7 +467,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" )
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
|
|
@ -473,7 +473,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" )
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
|
|
@ -325,13 +325,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
NIX_LDFLAGS = stdenv.lib.optionalString hostPlatform.isSunOS "-lm -ldl";
|
||||
|
||||
preConfigure =
|
||||
# Not sure why this is causing problems, now that the stdenv
|
||||
# exports CPP=cpp the build fails with strange errors on darwin.
|
||||
# https://github.com/NixOS/nixpkgs/issues/27889
|
||||
stdenv.lib.optionalString stdenv.cc.isClang ''
|
||||
unset CPP
|
||||
'' + stdenv.lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
|
||||
preConfigure = stdenv.lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
|
||||
export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g`
|
||||
export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET"
|
||||
export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET"
|
||||
|
@ -497,7 +491,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" )
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
|
|
@ -226,6 +226,19 @@ stdenv.mkDerivation ({
|
|||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
# This should kill all the stdinc frameworks that gcc and friends like to
|
||||
# insert into default search paths.
|
||||
prePatch = stdenv.lib.optionalString hostPlatform.isDarwin ''
|
||||
substituteInPlace gcc/config/darwin-c.c \
|
||||
--replace 'if (stdinc)' 'if (0)'
|
||||
|
||||
substituteInPlace libgcc/config/t-slibgcc-darwin \
|
||||
--replace "-install_name @shlib_slibdir@/\$(SHLIB_INSTALL_NAME)" "-install_name $lib/lib/\$(SHLIB_INSTALL_NAME)"
|
||||
|
||||
substituteInPlace libgfortran/configure \
|
||||
--replace "-install_name \\\$rpath/\\\$soname" "-install_name $lib/lib/\\\$soname"
|
||||
'';
|
||||
|
||||
postPatch =
|
||||
if (hostPlatform.isHurd
|
||||
|| (libcCross != null # e.g., building `gcc.crossDrv'
|
||||
|
@ -468,7 +481,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs")
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
|
|
@ -228,6 +228,19 @@ stdenv.mkDerivation ({
|
|||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
# This should kill all the stdinc frameworks that gcc and friends like to
|
||||
# insert into default search paths.
|
||||
prePatch = stdenv.lib.optionalString hostPlatform.isDarwin ''
|
||||
substituteInPlace gcc/config/darwin-c.c \
|
||||
--replace 'if (stdinc)' 'if (0)'
|
||||
|
||||
substituteInPlace libgcc/config/t-slibgcc-darwin \
|
||||
--replace "-install_name @shlib_slibdir@/\$(SHLIB_INSTALL_NAME)" "-install_name $lib/lib/\$(SHLIB_INSTALL_NAME)"
|
||||
|
||||
substituteInPlace libgfortran/configure \
|
||||
--replace "-install_name \\\$rpath/\\\$soname" "-install_name $lib/lib/\\\$soname"
|
||||
'';
|
||||
|
||||
postPatch =
|
||||
if (hostPlatform.isHurd
|
||||
|| (libcCross != null # e.g., building `gcc.crossDrv'
|
||||
|
@ -470,7 +483,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs")
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
|
|
@ -470,7 +470,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs")
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
|
|
@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" "doc" ];
|
||||
|
||||
preConfigure = ''
|
||||
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
|
||||
|
|
|
@ -21,42 +21,42 @@ let
|
|||
else
|
||||
throw "openjdk requires i686-linux or x86_64 linux";
|
||||
|
||||
update = "141";
|
||||
build = "15";
|
||||
update = "152";
|
||||
build = "04";
|
||||
baseurl = "http://hg.openjdk.java.net/jdk8u/jdk8u";
|
||||
repover = "jdk8u${update}-b${build}";
|
||||
paxflags = if stdenv.isi686 then "msp" else "m";
|
||||
jdk8 = fetchurl {
|
||||
url = "${baseurl}/archive/${repover}.tar.gz";
|
||||
sha256 = "0b2nf1x2wcjn0ijyxhnrhcap4vq43sbblh5kf0qcqmx83cs3z6yh";
|
||||
sha256 = "1hnpbx0v89jmbg58ym4zm255da11zf5jq8y5s58zj4x2z6b1fpxi";
|
||||
};
|
||||
langtools = fetchurl {
|
||||
url = "${baseurl}/langtools/archive/${repover}.tar.gz";
|
||||
sha256 = "1mirjjywv7mnirrxj5sx3zg6j2864vjvphkn9mxx1pad49by7157";
|
||||
sha256 = "060q01msfyspn14c9mkf9x0l8sprki9n8zb3cwlgglhnr2d4gfbr";
|
||||
};
|
||||
hotspot = fetchurl {
|
||||
url = "${baseurl}/hotspot/archive/${repover}.tar.gz";
|
||||
sha256 = "0hhvsrclx58i7ns2v7la2wncnndblppwjncniwcvhnhgl5zhpp31";
|
||||
sha256 = "0705667y6llsmszvdcbhbxzbn1csv1f2rlyghwggx5xnaq46dhx6";
|
||||
};
|
||||
corba = fetchurl {
|
||||
url = "${baseurl}/corba/archive/${repover}.tar.gz";
|
||||
sha256 = "1brr72rlpaz70ihymdyp808vw433cr8b11l5qdc76aic2ywbwjyp";
|
||||
sha256 = "13f4h43lw9q1292fymn2d7whwvccpkcqraasdhvzf904101xcpsl";
|
||||
};
|
||||
jdk = fetchurl {
|
||||
url = "${baseurl}/jdk/archive/${repover}.tar.gz";
|
||||
sha256 = "1d4q531jswzk00kdskzfkgr0f4qmxpc7pg9w8p1gq84yz93wz11k";
|
||||
sha256 = "16wqinqv0aqyf6jg3nsn6rj5s7ggq82wvx86zm584g56011vkgf6";
|
||||
};
|
||||
jaxws = fetchurl {
|
||||
url = "${baseurl}/jaxws/archive/${repover}.tar.gz";
|
||||
sha256 = "0haw5095p45w33m8pafnp5r5j2lif8c1271chad5sp4gbbk40ai4";
|
||||
sha256 = "0japl4nyb8y3w1mpfpkxn5vkf8fap1rg340vjnb6qm6fpqvl964f";
|
||||
};
|
||||
jaxp = fetchurl {
|
||||
url = "${baseurl}/jaxp/archive/${repover}.tar.gz";
|
||||
sha256 = "0pm2cccy31d9rnkgc2hcxbpjjhf4wbayx18qn736nncvwcwa76bj";
|
||||
sha256 = "024zphx9r92ws9xjihvhyrbbbamfl7js0s24ff577v5z5gdb1lly";
|
||||
};
|
||||
nashorn = fetchurl {
|
||||
url = "${baseurl}/nashorn/archive/${repover}.tar.gz";
|
||||
sha256 = "1g05vfggjjg51dki28zby27pnd4z1b23fv9kyc3hdmc4bcj306x0";
|
||||
sha256 = "1crnbjjv1s6ndqpllcrggcpsxvqcnpr58zp51y0hjz3m3gpsxwcq";
|
||||
};
|
||||
openjdk8 = stdenv.mkDerivation {
|
||||
name = "openjdk-8u${update}b${build}";
|
||||
|
@ -98,6 +98,10 @@ let
|
|||
substituteInPlace configure --replace /bin/bash "$shell"
|
||||
substituteInPlace hotspot/make/linux/adlc_updater --replace /bin/sh "$shell"
|
||||
substituteInPlace hotspot/make/linux/makefiles/dtrace.make --replace /usr/include/sys/sdt.h "/no-such-path"
|
||||
''
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1306558
|
||||
+ stdenv.lib.optionalString stdenv.cc.isGNU ''
|
||||
NIX_CFLAGS_COMPILE+=" -fno-lifetime-dse -fno-delete-null-pointer-checks"
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
|
|
|
@ -124,7 +124,7 @@ stdenv.mkDerivation {
|
|||
buildInputs = [ ncurses ] ++ targetToolchains
|
||||
++ optional (!forceBundledLLVM) llvmShared;
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" "doc" ];
|
||||
setOutputFlags = false;
|
||||
|
||||
# Disable codegen units for the tests.
|
||||
|
|
|
@ -22,8 +22,8 @@
|
|||
|
||||
nativeBuildInputs = [ makeWrapper gawk pkgconfig ];
|
||||
buildInputs = [ readline libtool libunistring libffi ];
|
||||
propagatedBuildInputs = [ gmp boehmgc ]
|
||||
|
||||
propagatedBuildInputs = [ gmp boehmgc ]
|
||||
# XXX: These ones aren't normally needed here, but since
|
||||
# `libguile-2.0.la' reads `-lltdl -lunistring', adding them here will add
|
||||
# the needed `-L' flags. As for why the `.la' file lacks the `-L' flags,
|
||||
|
|
|
@ -127,7 +127,6 @@ in stdenv.mkDerivation {
|
|||
|
||||
# Use Python3 as default python
|
||||
ln -s "$out/bin/idle3" "$out/bin/idle"
|
||||
ln -s "$out/bin/pip3" "$out/bin/pip"
|
||||
ln -s "$out/bin/pydoc3" "$out/bin/pydoc"
|
||||
ln -s "$out/bin/python3" "$out/bin/python"
|
||||
ln -s "$out/bin/python3-config" "$out/bin/python-config"
|
||||
|
|
|
@ -125,7 +125,6 @@ in stdenv.mkDerivation {
|
|||
|
||||
# Use Python3 as default python
|
||||
ln -s "$out/bin/idle3" "$out/bin/idle"
|
||||
ln -s "$out/bin/pip3" "$out/bin/pip"
|
||||
ln -s "$out/bin/pydoc3" "$out/bin/pydoc"
|
||||
ln -s "$out/bin/python3" "$out/bin/python"
|
||||
ln -s "$out/bin/python3-config" "$out/bin/python-config"
|
||||
|
|
|
@ -125,7 +125,6 @@ in stdenv.mkDerivation {
|
|||
|
||||
# Use Python3 as default python
|
||||
ln -s "$out/bin/idle3" "$out/bin/idle"
|
||||
ln -s "$out/bin/pip3" "$out/bin/pip"
|
||||
ln -s "$out/bin/pydoc3" "$out/bin/pydoc"
|
||||
ln -s "$out/bin/python3" "$out/bin/python"
|
||||
ln -s "$out/bin/python3-config" "$out/bin/python-config"
|
||||
|
|
|
@ -1,62 +0,0 @@
|
|||
{ stdenv, fetchurl, pkgconfig, nspr, perl, python2, zip, libffi, readline, icu }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "24.2.0";
|
||||
name = "spidermonkey-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/js/mozjs-${version}.tar.bz2";
|
||||
sha256 = "1n1phk8r3l8icqrrap4czplnylawa0ddc2cc4cgdz46x3lrkybz6";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "lib" ];
|
||||
|
||||
propagatedBuildInputs = [ nspr ];
|
||||
|
||||
buildInputs = [ pkgconfig perl python2 zip libffi readline icu ];
|
||||
|
||||
postPatch = ''
|
||||
# Fixes an issue with version detection under perl 5.22.x
|
||||
sed -i 's/(defined\((@TEMPLATE_FILE)\))/\1/' config/milestone.pl
|
||||
'';
|
||||
|
||||
postUnpack = "sourceRoot=\${sourceRoot}/js/src";
|
||||
|
||||
preConfigure = ''
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${nspr.dev}/include/nspr"
|
||||
export LIBXUL_DIST=$out
|
||||
'';
|
||||
|
||||
setOutputFlags = false;
|
||||
configureFlags = [
|
||||
"--libdir=$(lib)/lib"
|
||||
"--includedir=$(dev)/include"
|
||||
"--enable-threadsafe"
|
||||
"--with-system-icu"
|
||||
"--with-system-nspr"
|
||||
"--with-system-ffi"
|
||||
"--enable-readline"
|
||||
];
|
||||
|
||||
# hack around a make problem, see https://github.com/NixOS/nixpkgs/issues/1279#issuecomment-29547393
|
||||
preBuild = "touch -- {.,shell,jsapi-tests}/{-lpthread,-ldl}";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = true;
|
||||
preCheck = "rm jit-test/tests/sunspider/check-date-format-tofte.js"; # https://bugzil.la/600522
|
||||
|
||||
postInstall = ''
|
||||
rm "$lib"/lib/*.a # halve the output size
|
||||
moveToOutput "bin/js*-config" "$dev" # break the cycle
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Mozilla's JavaScript engine written in C/C++";
|
||||
homepage = https://developer.mozilla.org/en/SpiderMonkey;
|
||||
# TODO: MPL/GPL/LGPL tri-license.
|
||||
maintainers = [ maintainers.goibhniu ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation {
|
|||
sha256 = "1vkh19gb76agvh4h87ysbrgy82hrw88lnsvhynjf4vng629dmpgv";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
outputs = [ "bin" "dev" "out" "man" "info" ];
|
||||
setOutputFlags = false; # Doesn't support all the flags
|
||||
|
||||
patches = stdenv.lib.optionals stdenv.isDarwin [ ./darwin.patch ];
|
||||
|
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "08qd9s3wfhv0ajswsylnfwr5h0d7j9d4rgip855nrh400nxp940p";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
outputs = [ "bin" "dev" "out" "man" "doc" ];
|
||||
|
||||
nativeBuildInputs = [ gettext ];
|
||||
buildInputs = [ attr ];
|
||||
|
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0nd8y0m6awc9ahv0ciiwf8gy54c8d3j51pw9xg7f7cn579jjyxr5";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
outputs = [ "bin" "dev" "out" "man" "doc" ];
|
||||
|
||||
nativeBuildInputs = [ gettext ];
|
||||
|
||||
|
|
|
@ -7,7 +7,9 @@ stdenv.mkDerivation rec {
|
|||
url = "mirror://sourceforge/clucene/${name}.tar.bz2";
|
||||
sha256 = "202ee45af747f18642ae0a088d7c4553521714a511a1a9ec99b8144cf9928317";
|
||||
};
|
||||
|
||||
|
||||
patches = [ ./gcc6.patch ];
|
||||
|
||||
meta = {
|
||||
description = "Core library for full-featured text search engine";
|
||||
longDescription = ''
|
||||
|
|
146
pkgs/development/libraries/clucene-core/gcc6.patch
Normal file
146
pkgs/development/libraries/clucene-core/gcc6.patch
Normal file
|
@ -0,0 +1,146 @@
|
|||
https://bugzilla.redhat.com/show_bug.cgi?id=998477
|
||||
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/debug/lucenebase.h.gcc48 clucene-core-0.9.21b/src/CLucene/debug/lucenebase.h
|
||||
--- clucene-core-0.9.21b/src/CLucene/debug/lucenebase.h.gcc48 2008-10-23 12:44:35.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/debug/lucenebase.h 2013-08-27 13:17:35.754234297 -0500
|
||||
@@ -58,7 +58,7 @@ public:
|
||||
__cl_refcount--;
|
||||
return __cl_refcount;
|
||||
}
|
||||
- virtual ~LuceneBase(){};
|
||||
+ virtual ~LuceneBase() throw(CLuceneError&) {};
|
||||
};
|
||||
|
||||
class LuceneVoidBase{
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/index/CompoundFile.cpp.gcc48 clucene-core-0.9.21b/src/CLucene/index/CompoundFile.cpp
|
||||
--- clucene-core-0.9.21b/src/CLucene/index/CompoundFile.cpp.gcc48 2013-08-27 13:17:35.754234297 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/index/CompoundFile.cpp 2013-08-27 13:18:02.844949386 -0500
|
||||
@@ -94,7 +94,7 @@ CompoundFileReader::CompoundFileReader(D
|
||||
)
|
||||
}
|
||||
|
||||
-CompoundFileReader::~CompoundFileReader(){
|
||||
+CompoundFileReader::~CompoundFileReader() throw(CLuceneError&) {
|
||||
close();
|
||||
}
|
||||
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/index/CompoundFile.h.gcc48 clucene-core-0.9.21b/src/CLucene/index/CompoundFile.h
|
||||
--- clucene-core-0.9.21b/src/CLucene/index/CompoundFile.h.gcc48 2008-10-23 12:44:37.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/index/CompoundFile.h 2013-08-27 13:17:35.755234286 -0500
|
||||
@@ -95,7 +95,7 @@ protected:
|
||||
|
||||
public:
|
||||
CompoundFileReader(CL_NS(store)::Directory* dir, char* name);
|
||||
- ~CompoundFileReader();
|
||||
+ ~CompoundFileReader() throw(CLuceneError&);
|
||||
CL_NS(store)::Directory* getDirectory();
|
||||
const char* getName() const;
|
||||
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/index/Term.cpp.gcc48 clucene-core-0.9.21b/src/CLucene/index/Term.cpp
|
||||
--- clucene-core-0.9.21b/src/CLucene/index/Term.cpp.gcc48 2008-10-23 12:44:37.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/index/Term.cpp 2013-08-27 13:17:35.755234286 -0500
|
||||
@@ -81,7 +81,7 @@ Term::Term(const TCHAR* fld, const TCHAR
|
||||
set(fld,txt);
|
||||
}
|
||||
|
||||
-Term::~Term(){
|
||||
+Term::~Term() throw (CLuceneError&) {
|
||||
//Func - Destructor.
|
||||
//Pre - true
|
||||
//Post - The instance has been destroyed. field and text have been deleted if pre(intrn) is false
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/index/Term.h.gcc48 clucene-core-0.9.21b/src/CLucene/index/Term.h
|
||||
--- clucene-core-0.9.21b/src/CLucene/index/Term.h.gcc48 2008-10-23 12:44:37.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/index/Term.h 2013-08-27 13:17:35.755234286 -0500
|
||||
@@ -68,7 +68,7 @@ class Term:LUCENE_REFBASE {
|
||||
Term(const TCHAR* fld, const TCHAR* txt);
|
||||
|
||||
///Destructor.
|
||||
- ~Term();
|
||||
+ ~Term() throw(CLuceneError&);
|
||||
|
||||
///Returns the field of this term, an interned string. The field indicates
|
||||
///the part of a document which this term came from.
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/store/Directory.h.gcc48 clucene-core-0.9.21b/src/CLucene/store/Directory.h
|
||||
--- clucene-core-0.9.21b/src/CLucene/store/Directory.h.gcc48 2008-10-23 12:44:36.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/store/Directory.h 2013-08-27 13:17:35.756234276 -0500
|
||||
@@ -41,7 +41,7 @@ CL_NS_DEF(store)
|
||||
public:
|
||||
DEFINE_MUTEX(THIS_LOCK)
|
||||
|
||||
- virtual ~Directory(){ };
|
||||
+ virtual ~Directory() throw(CLuceneError&) { };
|
||||
|
||||
// Returns an null terminated array of strings, one for each file in the directory.
|
||||
char** list() const{
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/store/FSDirectory.cpp.gcc48 clucene-core-0.9.21b/src/CLucene/store/FSDirectory.cpp
|
||||
--- clucene-core-0.9.21b/src/CLucene/store/FSDirectory.cpp.gcc48 2008-10-23 13:01:52.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/store/FSDirectory.cpp 2013-08-27 13:17:35.756234276 -0500
|
||||
@@ -368,7 +368,7 @@ void FSDirectory::FSIndexInput::readInte
|
||||
strcat(buffer,name);
|
||||
}
|
||||
|
||||
- FSDirectory::~FSDirectory(){
|
||||
+ FSDirectory::~FSDirectory() throw(CLuceneError&) {
|
||||
}
|
||||
|
||||
void FSDirectory::list(vector<string>* names) const{ //todo: fix this, ugly!!!
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/store/FSDirectory.h.gcc48 clucene-core-0.9.21b/src/CLucene/store/FSDirectory.h
|
||||
--- clucene-core-0.9.21b/src/CLucene/store/FSDirectory.h.gcc48 2008-10-23 13:00:43.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/store/FSDirectory.h 2013-08-27 13:17:35.756234276 -0500
|
||||
@@ -155,7 +155,7 @@
|
||||
///Destructor - only call this if you are sure the directory
|
||||
///is not being used anymore. Otherwise use the ref-counting
|
||||
///facilities of _CLDECDELETE
|
||||
- ~FSDirectory();
|
||||
+ ~FSDirectory() throw(CLuceneError&);
|
||||
|
||||
/// Get a list of strings, one for each file in the directory.
|
||||
void list(vector<string>* names) const;
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/store/RAMDirectory.cpp.gcc48 clucene-core-0.9.21b/src/CLucene/store/RAMDirectory.cpp
|
||||
--- clucene-core-0.9.21b/src/CLucene/store/RAMDirectory.cpp.gcc48 2008-10-23 12:44:36.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/store/RAMDirectory.cpp 2013-08-27 13:17:35.757234265 -0500
|
||||
@@ -219,7 +219,7 @@ CL_NS_DEF(store)
|
||||
{
|
||||
}
|
||||
|
||||
- RAMDirectory::~RAMDirectory(){
|
||||
+ RAMDirectory::~RAMDirectory() throw(CLuceneError&) {
|
||||
//todo: should call close directory?
|
||||
}
|
||||
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/store/RAMDirectory.h.gcc48 clucene-core-0.9.21b/src/CLucene/store/RAMDirectory.h
|
||||
--- clucene-core-0.9.21b/src/CLucene/store/RAMDirectory.h.gcc48 2008-10-23 12:44:36.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/store/RAMDirectory.h 2013-08-27 13:17:35.757234265 -0500
|
||||
@@ -131,7 +131,7 @@ CL_NS_DEF(store)
|
||||
///Destructor - only call this if you are sure the directory
|
||||
///is not being used anymore. Otherwise use the ref-counting
|
||||
///facilities of dir->close
|
||||
- virtual ~RAMDirectory();
|
||||
+ virtual ~RAMDirectory() throw(CLuceneError&);
|
||||
RAMDirectory(Directory* dir);
|
||||
|
||||
/**
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/store/TransactionalRAMDirectory.cpp.gcc48 clucene-core-0.9.21b/src/CLucene/store/TransactionalRAMDirectory.cpp
|
||||
--- clucene-core-0.9.21b/src/CLucene/store/TransactionalRAMDirectory.cpp.gcc48 2008-10-23 12:44:36.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/store/TransactionalRAMDirectory.cpp 2013-08-27 13:17:35.757234265 -0500
|
||||
@@ -16,7 +16,7 @@ CL_NS_USE(util)
|
||||
{
|
||||
transOpen = false;
|
||||
}
|
||||
- TransactionalRAMDirectory::~TransactionalRAMDirectory(){
|
||||
+ TransactionalRAMDirectory::~TransactionalRAMDirectory() throw(CLuceneError&) {
|
||||
}
|
||||
|
||||
bool TransactionalRAMDirectory::archiveOrigFileIfNecessary(const char* name) {
|
||||
diff -up clucene-core-0.9.21b/src/CLucene/store/TransactionalRAMDirectory.h.gcc48 clucene-core-0.9.21b/src/CLucene/store/TransactionalRAMDirectory.h
|
||||
--- clucene-core-0.9.21b/src/CLucene/store/TransactionalRAMDirectory.h.gcc48 2008-10-23 12:44:36.000000000 -0500
|
||||
+++ clucene-core-0.9.21b/src/CLucene/store/TransactionalRAMDirectory.h 2013-08-27 13:17:35.757234265 -0500
|
||||
@@ -44,7 +44,7 @@ CL_NS_DEF(store)
|
||||
|
||||
public:
|
||||
TransactionalRAMDirectory();
|
||||
- virtual ~TransactionalRAMDirectory();
|
||||
+ virtual ~TransactionalRAMDirectory() throw(CLuceneError&);
|
||||
|
||||
bool transIsOpen() const;
|
||||
void transStart();
|
|
@ -6,8 +6,8 @@ assert x11Support -> libX11 != null
|
|||
&& libSM != null;
|
||||
|
||||
let
|
||||
version = "1.10.20";
|
||||
sha256 = "0j0b8rn9fvh1m4nndp9fzq09xw50grp5kfvkv7jgs9al1dwbjx75";
|
||||
version = "1.10.22";
|
||||
sha256 = "15vv9gz5i4f5l7h0d045qz5iyvl89hjk2k83lb4vbizd7qg41cg2";
|
||||
|
||||
self = stdenv.mkDerivation {
|
||||
name = "dbus-${version}";
|
||||
|
|
|
@ -75,7 +75,7 @@ stdenv.mkDerivation rec {
|
|||
postPatch = ''patchShebangs .'';
|
||||
inherit patches;
|
||||
|
||||
outputs = [ "bin" "dev" "out" ]
|
||||
outputs = [ "bin" "dev" "out" "man" ]
|
||||
++ optional (reqMin "1.0") "doc" ; # just dev-doc
|
||||
setOutputFlags = false; # doesn't accept all and stores configureFlags in libs!
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0g8qk98lgq770ixdf7n36yd5xjsgm2v3wzvnphwmhy6r4y2amx0y";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ]; # it's dev-doc only
|
||||
outputs = [ "out" "dev" "man" "info" ]; # it's dev-doc only
|
||||
outputBin = "dev"; # fftw-wisdom
|
||||
|
||||
configureFlags =
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{stdenv, fetchFromGitHub, unzip, cmake, python}:
|
||||
{ stdenv, fetchFromGitHub, unzip, cmake, python }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "flann-1.9.1";
|
||||
|
|
|
@ -3,14 +3,16 @@
|
|||
|
||||
let
|
||||
ver_maj = "2.36";
|
||||
ver_min = "6";
|
||||
ver_min = "7";
|
||||
# TODO: since 2.36.8 gdk-pixbuf gets configured to use mime-type sniffing,
|
||||
# which apparently requires access to shared_mime_info files during runtime.
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gdk-pixbuf-${ver_maj}.${ver_min}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gdk-pixbuf/${ver_maj}/${name}.tar.xz";
|
||||
sha256 = "455eb90c09ed1b71f95f3ebfe1c904c206727e0eeb34fc94e5aaf944663a820c";
|
||||
sha256 = "1b6e5eef09d98f05f383014ecd3503e25dfb03d7e5b5f5904e5a65b049a6a4d8";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" ];
|
||||
|
|
|
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
|||
};
|
||||
patches = [ ./absolute-paths.diff ];
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" "doc" "info" ];
|
||||
|
||||
# FIXME stackprotector needs gcc 4.9 in bootstrap tools
|
||||
hardeningDisable = [ "format" "stackprotector" ];
|
||||
|
|
|
@ -1,65 +0,0 @@
|
|||
From 0edeadc0d396aa713b808ae50a0058aca5d3837e Mon Sep 17 00:00:00 2001
|
||||
From: "H.J. Lu" <hjl.tools@gmail.com>
|
||||
Date: Wed, 26 Jul 2017 10:08:46 -0700
|
||||
Subject: [PATCH] Avoid .symver on common symbols [BZ #21666]
|
||||
|
||||
The .symver directive on common symbol just creates a new common symbol,
|
||||
not an alias and the newer assembler with the bug fix for
|
||||
|
||||
https://sourceware.org/bugzilla/show_bug.cgi?id=21661
|
||||
|
||||
will issue an error. Before the fix, we got
|
||||
|
||||
$ readelf -sW libc.so | grep "loc[12s]"
|
||||
5109: 00000000003a0608 8 OBJECT LOCAL DEFAULT 36 loc1
|
||||
5188: 00000000003a0610 8 OBJECT LOCAL DEFAULT 36 loc2
|
||||
5455: 00000000003a0618 8 OBJECT LOCAL DEFAULT 36 locs
|
||||
6575: 00000000003a05f0 8 OBJECT GLOBAL DEFAULT 36 locs@GLIBC_2.2.5
|
||||
7156: 00000000003a05f8 8 OBJECT GLOBAL DEFAULT 36 loc1@GLIBC_2.2.5
|
||||
7312: 00000000003a0600 8 OBJECT GLOBAL DEFAULT 36 loc2@GLIBC_2.2.5
|
||||
|
||||
in libc.so. The versioned loc1, loc2 and locs have the wrong addresses.
|
||||
After the fix, we got
|
||||
|
||||
$ readelf -sW libc.so | grep "loc[12s]"
|
||||
6570: 000000000039e3b8 8 OBJECT GLOBAL DEFAULT 34 locs@GLIBC_2.2.5
|
||||
7151: 000000000039e3c8 8 OBJECT GLOBAL DEFAULT 34 loc1@GLIBC_2.2.5
|
||||
7307: 000000000039e3c0 8 OBJECT GLOBAL DEFAULT 34 loc2@GLIBC_2.2.5
|
||||
|
||||
[BZ #21666]
|
||||
* misc/regexp.c (loc1): Add __attribute__ ((nocommon));
|
||||
(loc2): Likewise.
|
||||
(locs): Likewise.
|
||||
|
||||
(cherry picked from commit 388b4f1a02f3a801965028bbfcd48d905638b797)
|
||||
---
|
||||
ChangeLog | 7 +++++++
|
||||
misc/regexp.c | 9 +++++----
|
||||
2 files changed, 12 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/misc/regexp.c b/misc/regexp.c
|
||||
index 19d76c0..eaea7c3 100644
|
||||
--- a/misc/regexp.c
|
||||
+++ b/misc/regexp.c
|
||||
@@ -29,14 +29,15 @@
|
||||
|
||||
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_23)
|
||||
|
||||
-/* Define the variables used for the interface. */
|
||||
-char *loc1;
|
||||
-char *loc2;
|
||||
+/* Define the variables used for the interface. Avoid .symver on common
|
||||
+ symbol, which just creates a new common symbol, not an alias. */
|
||||
+char *loc1 __attribute__ ((nocommon));
|
||||
+char *loc2 __attribute__ ((nocommon));
|
||||
compat_symbol (libc, loc1, loc1, GLIBC_2_0);
|
||||
compat_symbol (libc, loc2, loc2, GLIBC_2_0);
|
||||
|
||||
/* Although we do not support the use we define this variable as well. */
|
||||
-char *locs;
|
||||
+char *locs __attribute__ ((nocommon));
|
||||
compat_symbol (libc, locs, locs, GLIBC_2_0);
|
||||
|
||||
|
||||
--
|
||||
2.9.3
|
|
@ -64,9 +64,6 @@ stdenv.mkDerivation ({
|
|||
./CVE-2017-1000366-rtld-LD_LIBRARY_PATH.patch
|
||||
./CVE-2017-1000366-rtld-LD_PRELOAD.patch
|
||||
./CVE-2017-1000366-rtld-LD_AUDIT.patch
|
||||
|
||||
/* https://sourceware.org/bugzilla/show_bug.cgi?id=21666 */
|
||||
./avoid-semver-on-common.patch
|
||||
]
|
||||
++ lib.optionals stdenv.isi686 [
|
||||
./fix-i686-memchr.patch
|
||||
|
|
|
@ -13,7 +13,7 @@ with stdenv.lib;
|
|||
|
||||
let
|
||||
ver_maj = "3.22";
|
||||
ver_min = "16";
|
||||
ver_min = "18";
|
||||
version = "${ver_maj}.${ver_min}";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gtk+/${ver_maj}/gtk+-${version}.tar.xz";
|
||||
sha256 = "3e0c3ad01f3c8c5c9b1cc1ae00852bd55164c8e5a9c1f90ba5e07f14f175fe2c";
|
||||
sha256 = "b64b1c2ec20adf128ac08ee704d1f4e7b0a8d3df097d51f62edb271c7bb1bf69";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
}:
|
||||
|
||||
let
|
||||
version = "1.4.6";
|
||||
version = "1.4.8";
|
||||
inherit (stdenv.lib) optional optionals optionalString;
|
||||
in
|
||||
|
||||
|
@ -14,7 +14,7 @@ stdenv.mkDerivation {
|
|||
|
||||
src = fetchurl {
|
||||
url = "http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-${version}.tar.bz2";
|
||||
sha256 = "21a78b81cd20cbffdb04b59ac7edfb410e42141869f637ae1d6778e74928d293";
|
||||
sha256 = "ccec4930ff0bb2d0c40aee203075447954b64a8c2695202413cc5e428c907131";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
|
|
@ -20,6 +20,12 @@ stdenv.mkDerivation rec {
|
|||
substituteInPlace configure --replace stdc++ c++
|
||||
'';
|
||||
|
||||
patches = [(fetchurl {
|
||||
name = "gcc6.patch";
|
||||
url = "http://pkgs.fedoraproject.org/rpms/kyotocabinet/raw/master/f/kyotocabinet-1.2.76-gcc6.patch";
|
||||
sha256 = "1h5k38mkiq7lz8nd2gbn7yvimcz49g3z7phn1cr560bzjih8rz23";
|
||||
})];
|
||||
|
||||
buildInputs = [ zlib ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1bwwv1g9lchaq6qmhvj1pp3hnyqr64ydd4j38x94pmprs4d27b83";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" "doc" ];
|
||||
|
||||
buildInputs =
|
||||
[ pkgconfig ] ++
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{ stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, valgrind-light }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libdrm-2.4.81";
|
||||
name = "libdrm-2.4.82";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2";
|
||||
sha256 = "8cc05c195ac8708199979a94c4e4d1a928c14ec338ecbcb38ead09f54dae11ae";
|
||||
sha256 = "43fa2dbd422d6d41ac141272cc9855360ce4d08c7cf7f2c7bb55dfe449c4ce1c";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
|
|
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
patches = stdenv.lib.optional stdenv.isCygwin ./3.2.1-cygwin.patch;
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" "info" ];
|
||||
|
||||
buildInputs = stdenv.lib.optional doCheck dejagnu;
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
stdenv.lib.optional (hostPlatform.libc or null == "msvcrt")
|
||||
./mingw-boolean.patch;
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
outputs = [ "bin" "dev" "out" "man" "doc" ];
|
||||
|
||||
nativeBuildInputs = [ nasm ];
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0h53q4sns1jz1pkmhcz5wp9qrfn9f5g9i3vjv6dafwzzlvblyi21";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "info" ];
|
||||
|
||||
propagatedBuildInputs = [ libgpgerror ];
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0nxb4x8l092xckk4dy84cn5qhviif8akzy0miypapjqqbalm53fa";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" ];
|
||||
|
||||
preConfigure = ''
|
||||
patchShebangs .
|
||||
|
|
|
@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
outputs = [ "bin" "dev" "out" "man" "doc" ];
|
||||
|
||||
# need headers from the Carbon.framework in /System/Library/Frameworks to
|
||||
# compile this on darwin -- not sure how to handle
|
||||
|
|
|
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
|
|||
patches="$patches $(cat debian/patches/series | sed 's|^|debian/patches/|')"
|
||||
'';
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
outputs = [ "bin" "dev" "out" "man" "doc" ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@ in stdenv.mkDerivation rec {
|
|||
})
|
||||
];
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ]
|
||||
outputs = [ "bin" "dev" "out" "man" "doc" ]
|
||||
++ lib.optional pythonSupport "py";
|
||||
propagatedBuildOutputs = "out bin" + lib.optionalString pythonSupport " py";
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
|
|||
--replace 'la_LDFLAGS =' 'la_LDFLAGS = $(WIN32_EXTRA_LDFLAGS)'
|
||||
'';
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ] ++ stdenv.lib.optional pythonSupport "py";
|
||||
outputs = [ "bin" "dev" "out" "man" "doc" ] ++ stdenv.lib.optional pythonSupport "py";
|
||||
|
||||
buildInputs = [ libxml2.dev ] ++ stdenv.lib.optionals pythonSupport [ libxml2.py python2 ];
|
||||
|
||||
|
|
|
@ -67,7 +67,7 @@ let
|
|||
in
|
||||
|
||||
let
|
||||
version = "17.1.5";
|
||||
version = "17.1.6";
|
||||
branch = head (splitString "." version);
|
||||
driverLink = "/run/opengl-driver" + optionalString stdenv.isi686 "-32";
|
||||
in
|
||||
|
@ -82,7 +82,7 @@ stdenv.mkDerivation {
|
|||
"ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz"
|
||||
"https://launchpad.net/mesa/trunk/${version}/+download/mesa-${version}.tar.xz"
|
||||
];
|
||||
sha256 = "378516b171712687aace4c7ea8b37c85895231d7a6d61e1e27362cf6034fded9";
|
||||
sha256 = "0686deadde1f126b20aa67e47e8c50502043eee4ecdf60d5009ffda3cebfee50";
|
||||
};
|
||||
|
||||
prePatch = "patchShebangs .";
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -27,7 +27,6 @@ SUBDIRS = bindings bitmaps \
|
||||
include \
|
||||
tools \
|
||||
clients \
|
||||
- doc \
|
||||
- demos
|
||||
+ doc
|
||||
AUTOMAKE_OPTIONS = 1.4
|
||||
ACLOCAL_AMFLAGS = -I .
|
|
@ -3,7 +3,7 @@
|
|||
, expat, libjpeg, libpng, libiconv
|
||||
, flex
|
||||
, libXp, libXau
|
||||
, demoSupport ? false, autoconf, automake
|
||||
, demoSupport ? false
|
||||
}:
|
||||
# refer to the gentoo package
|
||||
|
||||
|
@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
|
|||
expat libjpeg libpng libiconv
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig flex ] ++ stdenv.lib.optionals (!demoSupport) [ autoconf automake ];
|
||||
nativeBuildInputs = [ pkgconfig flex ];
|
||||
|
||||
propagatedBuildInputs = [ libXp libXau ];
|
||||
|
||||
|
@ -30,13 +30,16 @@ stdenv.mkDerivation rec {
|
|||
|
||||
makeFlags = [ "CFLAGS=-fno-strict-aliasing" ];
|
||||
|
||||
prePatch = ''rm lib/Xm/Xm.h'';
|
||||
prePatch = ''
|
||||
rm lib/Xm/Xm.h
|
||||
'' + stdenv.lib.optionalString (!demoSupport) ''
|
||||
sed '/^SUBDIRS =,^$/s/\<demos\>//' -i Makefile.{am,in}
|
||||
'';
|
||||
|
||||
patches = [ ./Remove-unsupported-weak-refs-on-darwin.patch
|
||||
./Use-correct-header-for-malloc.patch
|
||||
./Add-X.Org-to-bindings-file.patch
|
||||
]
|
||||
++ stdenv.lib.optional (!demoSupport) ./Do-not-compile-demos.patch;
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://motif.ics.com;
|
||||
|
|
|
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
patches = [ ./upstream.patch ];
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "doc" "info" ];
|
||||
|
||||
# mpfr.h requires gmp.h
|
||||
propagatedBuildInputs = [ gmp ];
|
||||
|
|
|
@ -6,14 +6,14 @@ with stdenv.lib;
|
|||
|
||||
let
|
||||
ver_maj = "1.40";
|
||||
ver_min = "6";
|
||||
ver_min = "9";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pango-${ver_maj}.${ver_min}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/pango/${ver_maj}/${name}.tar.xz";
|
||||
sha256 = "ca152b7383a1e9f7fd74ae96023dc6770dc5043414793bfe768ff06b6759e573";
|
||||
sha256 = "9faea6535312fe4436b93047cf7a04af544eb52a079179bd3a33821aacce7e16";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "dev" "out" "devdoc" ];
|
||||
|
|
|
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0hzxr9jxqqx5sxsv9vmlxdnvlr9vi4ih1avjb869hbs6p5qn1fjn";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" "doc" "info" ];
|
||||
|
||||
propagatedBuildInputs = [ncurses];
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0d13sg9ksf982rrrmv5mb6a2p4ys9rvg9r71d6il0vr8hmql63bm";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" "doc" "info" ];
|
||||
|
||||
propagatedBuildInputs = [ncurses];
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0dlcy0hn0j6cj9qj5x6hpb0axifnvzzmv5jqq0wq14fygw0c7w2l";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" "doc" ];
|
||||
|
||||
# Fix some wrong hardcoded paths
|
||||
preConfigure = ''
|
||||
|
|
|
@ -3,11 +3,11 @@
|
|||
assert interactive -> readline != null && ncurses != null;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "sqlite-3.19.3";
|
||||
name = "sqlite-3.20.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://sqlite.org/2017/sqlite-autoconf-3190300.tar.gz";
|
||||
sha256 = "00b3l2qglpl1inx21fckiwxnfq5xf6441flc79rqg7zdvh1rq4h6";
|
||||
url = "http://sqlite.org/2017/sqlite-autoconf-3200000.tar.gz";
|
||||
sha256 = "1876dapm1xx5aqd2d8l7ymmkd2z9rybh99rp5f5rd4zz57vcc51q";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "dev" "out" ];
|
||||
|
|
|
@ -16,11 +16,11 @@ stdenv.mkDerivation rec {
|
|||
CLUCENE_HOME = clucene_core;
|
||||
|
||||
buildInputs =
|
||||
[ zlib bzip2 stdenv.cc.libc libxml2 qt4 exiv2 clucene_core fam dbus_tools ];
|
||||
[ zlib bzip2 libxml2 qt4 exiv2 clucene_core fam dbus_tools ];
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig perl ];
|
||||
|
||||
patches = [ ./export_bufferedstream.patch ];
|
||||
patches = [ ./export_bufferedstream.patch ./gcc6.patch ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
|
|
45
pkgs/development/libraries/strigi/gcc6.patch
Normal file
45
pkgs/development/libraries/strigi/gcc6.patch
Normal file
|
@ -0,0 +1,45 @@
|
|||
https://sourceforge.net/p/strigi/patches/4/
|
||||
|
||||
and a fix for
|
||||
|
||||
/tmp/nix-build-strigi-0.7.8.drv-0/strigi-0.7.8/libstreamanalyzer/plugins/indexers/clucenengindexer/cluceneindexreader.cpp:325:37: error: no matching function for call to 'make_pair(std::__cxx11::string, std::__cxx11::string&)'
|
||||
wchartoutf8(name), value));
|
||||
|
||||
diff -Naur strigi-0.7.8.old/libstreamanalyzer/cmake/MacroCheckGccVisibility.cmake strigi-0.7.8/libstreamanalyzer/cmake/MacroCheckGccVisibility.cmake
|
||||
--- strigi-0.7.8.old/libstreamanalyzer/cmake/MacroCheckGccVisibility.cmake 2013-02-05 16:34:52.000000000 -0500
|
||||
+++ strigi-0.7.8/libstreamanalyzer/cmake/MacroCheckGccVisibility.cmake 2016-05-14 11:39:54.586260564 -0400
|
||||
@@ -15,7 +15,7 @@
|
||||
# get the gcc version
|
||||
exec_program(${CMAKE_C_COMPILER} ARGS ${CMAKE_C_COMPILER_ARG1} --version OUTPUT_VARIABLE _gcc_version_info)
|
||||
|
||||
- string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
|
||||
+ string (REGEX MATCH "[3456789]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
|
||||
# gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here:
|
||||
if (NOT _gcc_version)
|
||||
string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}")
|
||||
diff -Naur strigi-0.7.8.old/libstreams/cmake/MacroCheckGccVisibility.cmake strigi-0.7.8/libstreams/cmake/MacroCheckGccVisibility.cmake
|
||||
--- strigi-0.7.8.old/libstreams/cmake/MacroCheckGccVisibility.cmake 2013-02-05 16:34:57.000000000 -0500
|
||||
+++ strigi-0.7.8/libstreams/cmake/MacroCheckGccVisibility.cmake 2016-05-14 11:40:11.340134414 -0400
|
||||
@@ -15,7 +15,7 @@
|
||||
# get the gcc version
|
||||
exec_program(${CMAKE_C_COMPILER} ARGS ${CMAKE_C_COMPILER_ARG1} --version OUTPUT_VARIABLE _gcc_version_info)
|
||||
|
||||
- string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
|
||||
+ string (REGEX MATCH "[3456789]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
|
||||
# gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the patch level, handle this here:
|
||||
if (NOT _gcc_version)
|
||||
string (REGEX REPLACE ".*\\(GCC\\).* ([34]\\.[0-9]) .*" "\\1.0" _gcc_version "${_gcc_version_info}")
|
||||
|
||||
diff -ru strigi-0.7.8-orig/libstreamanalyzer/plugins/indexers/clucenengindexer/cluceneindexreader.cpp strigi-0.7.8/libstreamanalyzer/plugins/indexers/clucenengindexer/cluceneindexreader.cpp
|
||||
--- strigi-0.7.8-orig/libstreamanalyzer/plugins/indexers/clucenengindexer/cluceneindexreader.cpp 2013-02-05 22:34:52.000000000 +0100
|
||||
+++ strigi-0.7.8/libstreamanalyzer/plugins/indexers/clucenengindexer/cluceneindexreader.cpp 2017-07-31 10:56:27.067902643 +0200
|
||||
@@ -321,8 +321,7 @@
|
||||
string size = value;
|
||||
doc.size = atoi(size.c_str());
|
||||
} else {
|
||||
- doc.properties.insert(make_pair<const string, string>(
|
||||
- wchartoutf8(name), value));
|
||||
+ doc.properties.emplace(wchartoutf8(name), value);
|
||||
}
|
||||
}
|
||||
Variant
|
|
@ -7,6 +7,9 @@ stdenv.mkDerivation {
|
|||
sha256 = "b865299ffd45d73412293369c9754b07637680e5c826915f097577cd27350348";
|
||||
};
|
||||
|
||||
# needed to successfully compile with gcc 6
|
||||
NIX_CFLAGS_COMPILE = "-std=c90 -fPIC";
|
||||
|
||||
meta = {
|
||||
homepage = http://www.oberhumer.com/opensource/ucl/;
|
||||
description = "Portable lossless data compression library";
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "wayland-protocols-${version}";
|
||||
version = "1.7";
|
||||
version = "1.10";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://wayland.freedesktop.org/releases/${name}.tar.xz";
|
||||
sha256 = "07qw166s6bm81zfnhf4lmww6wj0il960fm3vp7n1z3rign9jlpv3";
|
||||
sha256 = "5719c51d7354864983171c5083e93a72ac99229e2b460c4bb10513de08839c0a";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
|
|
@ -11,7 +11,7 @@ let
|
|||
inherit sha256;
|
||||
};
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" "doc" ];
|
||||
|
||||
buildInputs = [ libuuid zlib ];
|
||||
nativeBuildInputs = [ autoreconfHook ];
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "zziplib-${version}";
|
||||
version = "0.13.66";
|
||||
version = "0.13.67";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/zziplib/zziplib13/${version}/${name}.tar.gz";
|
||||
sha256 = "0zdx0s19slzv79xplnr6jx0xjb01dd71jzpscf6vlj6k9ry8rcar";
|
||||
url = "https://github.com/gdraheim/zziplib/archive/v${version}.tar.gz";
|
||||
sha256 = "0802kdxwxx9zanpwb4w4wfi3blwhv0ri05mzdgd35j5sva5ify0j";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
|
|
23
pkgs/development/python-modules/html5-parser/default.nix
Normal file
23
pkgs/development/python-modules/html5-parser/default.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ stdenv, buildPythonPackage, fetchPypi, pkgs, pkgconfig, chardet, lxml }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "html5-parser";
|
||||
version = "0.4.3";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "173vzg214x7qfq201m4b09wg5nszdgwjw5q02v23k54iqm3kcpnx";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig ];
|
||||
propagatedBuildInputs = [ chardet lxml pkgs.libxml2 ];
|
||||
|
||||
doCheck = false; # No such file or directory: 'run_tests.py'
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Fast C based HTML 5 parsing for python";
|
||||
homepage = https://html5-parser.readthedocs.io;
|
||||
license = licenses.asl20;
|
||||
};
|
||||
}
|
|
@ -25,7 +25,7 @@ stdenv.mkDerivation {
|
|||
|
||||
configureFlags = stdenv.lib.optional guileSupport "--with-guile";
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" "info" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.gnu.org/software/make/;
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{ stdenv, fetchurl, perl, autoconf, makeWrapper, doCheck ? false }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "automake-1.15";
|
||||
name = "automake-1.15.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/automake/${name}.tar.xz";
|
||||
sha256 = "0dl6vfi2lzz8alnklwxzfz624b95hb1ipjvd3mk177flmddcf24r";
|
||||
sha256 = "1bzd9g32dfm4rsbw93ld9x7b5nc1y6i4m6zp032qf1i28a8s6sxg";
|
||||
};
|
||||
|
||||
buildInputs = [ perl autoconf ];
|
||||
|
|
|
@ -5,7 +5,10 @@
|
|||
}:
|
||||
|
||||
let
|
||||
version = "2.29";
|
||||
# Note to whoever is upgrading this: 2.29 is broken.
|
||||
# ('nix-build pkgs/stdenv/linux/make-bootstrap-tools.nix -A test' segfaults on aarch64)
|
||||
# Also glibc might need patching, see commit 733e20fee4a6700510f71fbe1a58ac23ea202f6a.
|
||||
version = "2.28.1";
|
||||
basename = "binutils-${version}";
|
||||
inherit (stdenv.lib) optional optionals optionalString;
|
||||
# The prefix prepended to binary names to allow multiple binuntils on the
|
||||
|
@ -18,7 +21,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/binutils/${basename}.tar.bz2";
|
||||
sha256 = "1gqfyksdnj3iir5gzyvlp785mnk60g1pll6zbzbslfchhr4rb8i9";
|
||||
sha256 = "1sj234nd05cdgga1r36zalvvdkvpfbr12g5mir2n8i1dwsdrj939";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -45,18 +48,8 @@ stdenv.mkDerivation rec {
|
|||
# there) and causes a cycle between the lib and bin outputs, so
|
||||
# get rid of it.
|
||||
./no-plugins.patch
|
||||
|
||||
# remove after 2.29.1/2.30
|
||||
(fetchurl {
|
||||
url = "https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=patch;h=c6b78c965a96fb152fbd58926edccb5dee2707a5";
|
||||
sha256 = "0rkbq5pf7ffgcggfk4czkxin1091bqjj92an9wxnqkgqwq6cx5yr";
|
||||
name = "readelf-empty-sections.patch";
|
||||
})
|
||||
./elf-check-orphan-input.patch
|
||||
./elf-check-orphan-placement.patch
|
||||
];
|
||||
|
||||
# TODO: all outputs on all platform
|
||||
outputs = [ "out" ]
|
||||
++ optional (targetPlatform == hostPlatform && !hostPlatform.isDarwin) "lib" # problems in Darwin stdenv
|
||||
++ [ "info" ]
|
||||
|
@ -91,7 +84,7 @@ stdenv.mkDerivation rec {
|
|||
else "-static-libgcc";
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configurePlatforms = stdenv.lib.optionals (targetPlatform != hostPlatform) [ "build" "host" "target" ];
|
||||
configureFlags =
|
||||
[ "--enable-shared" "--enable-deterministic-archives" "--disable-werror" ]
|
||||
++ optional (stdenv.system == "mips64el-linux") "--enable-fix-loongson2f-nop"
|
||||
|
|
|
@ -1,99 +0,0 @@
|
|||
From a388b7afeffad6411686d39dc1c62294da48a814 Mon Sep 17 00:00:00 2001
|
||||
From: "H.J. Lu" <hjl.tools@gmail.com>
|
||||
Date: Wed, 2 Aug 2017 05:10:29 -0700
|
||||
Subject: [PATCH] Check ELF section header only for ELF output
|
||||
|
||||
When placing an orphan input section, check ELF section header only for
|
||||
ELF output.
|
||||
|
||||
PR ld/21884
|
||||
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Check
|
||||
ELF section header only for ELF output.
|
||||
* testsuite/ld-elf/pr21884.d: New test.
|
||||
* testsuite/ld-elf/pr21884.t: Likewise.
|
||||
* testsuite/ld-elf/pr21884a.s: Likewise.
|
||||
* testsuite/ld-elf/pr21884b.s: Likewise.
|
||||
|
||||
(cherry picked from commit db99ecc08f5b66fbe9cb72e90352c7f77ec71a6e)
|
||||
---
|
||||
ld/ChangeLog | 10 ++++++++++
|
||||
ld/emultempl/elf32.em | 3 ++-
|
||||
ld/testsuite/ld-elf/pr21884.d | 11 +++++++++++
|
||||
ld/testsuite/ld-elf/pr21884.t | 7 +++++++
|
||||
ld/testsuite/ld-elf/pr21884a.s | 5 +++++
|
||||
ld/testsuite/ld-elf/pr21884b.s | 5 +++++
|
||||
6 files changed, 40 insertions(+), 1 deletion(-)
|
||||
create mode 100644 ld/testsuite/ld-elf/pr21884.d
|
||||
create mode 100644 ld/testsuite/ld-elf/pr21884.t
|
||||
create mode 100644 ld/testsuite/ld-elf/pr21884a.s
|
||||
create mode 100644 ld/testsuite/ld-elf/pr21884b.s
|
||||
|
||||
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
|
||||
index d2551b6..75ded12 100644
|
||||
--- a/ld/emultempl/elf32.em
|
||||
+++ b/ld/emultempl/elf32.em
|
||||
@@ -2136,7 +2136,8 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
|
||||
}
|
||||
|
||||
/* Look through the script to see where to place this section. */
|
||||
- if (constraint == 0)
|
||||
+ if (constraint == 0
|
||||
+ && link_info.output_bfd->xvec->flavour == bfd_target_elf_flavour)
|
||||
for (os = lang_output_section_find (secname);
|
||||
os != NULL;
|
||||
os = next_matching_output_section_statement (os, 0))
|
||||
diff --git a/ld/testsuite/ld-elf/pr21884.d b/ld/testsuite/ld-elf/pr21884.d
|
||||
new file mode 100644
|
||||
index 0000000..52cd2c1
|
||||
--- /dev/null
|
||||
+++ b/ld/testsuite/ld-elf/pr21884.d
|
||||
@@ -0,0 +1,11 @@
|
||||
+#source: pr21884a.s
|
||||
+#source: pr21884b.s
|
||||
+#ld: -T pr21884.t
|
||||
+#objdump: -b binary -s
|
||||
+#notarget: aarch64*-*-* arm*-*-* nds32*-*-*
|
||||
+# Skip targets which can't change output format to binary.
|
||||
+
|
||||
+.*: file format binary
|
||||
+
|
||||
+Contents of section .data:
|
||||
+#pass
|
||||
diff --git a/ld/testsuite/ld-elf/pr21884.t b/ld/testsuite/ld-elf/pr21884.t
|
||||
new file mode 100644
|
||||
index 0000000..d483911
|
||||
--- /dev/null
|
||||
+++ b/ld/testsuite/ld-elf/pr21884.t
|
||||
@@ -0,0 +1,7 @@
|
||||
+OUTPUT_FORMAT("binary")
|
||||
+
|
||||
+ENTRY(_main);
|
||||
+SECTIONS {
|
||||
+ . = 0;
|
||||
+ .setup : { *(.setup) }
|
||||
+}
|
||||
diff --git a/ld/testsuite/ld-elf/pr21884a.s b/ld/testsuite/ld-elf/pr21884a.s
|
||||
new file mode 100644
|
||||
index 0000000..a3361b2
|
||||
--- /dev/null
|
||||
+++ b/ld/testsuite/ld-elf/pr21884a.s
|
||||
@@ -0,0 +1,5 @@
|
||||
+ .text
|
||||
+ .globl _main
|
||||
+ .type _main,%function
|
||||
+_main:
|
||||
+ .dc.a bar
|
||||
diff --git a/ld/testsuite/ld-elf/pr21884b.s b/ld/testsuite/ld-elf/pr21884b.s
|
||||
new file mode 100644
|
||||
index 0000000..e533837
|
||||
--- /dev/null
|
||||
+++ b/ld/testsuite/ld-elf/pr21884b.s
|
||||
@@ -0,0 +1,5 @@
|
||||
+ .text
|
||||
+ .globl bar
|
||||
+ .type bar,%function
|
||||
+bar:
|
||||
+ .byte 0
|
||||
--
|
||||
2.9.3
|
||||
|
|
@ -1,161 +0,0 @@
|
|||
From 36088682f447540fd8666a2c437fa232064044a7 Mon Sep 17 00:00:00 2001
|
||||
From: Alan Modra <amodra@gmail.com>
|
||||
Date: Thu, 3 Aug 2017 14:01:34 +0930
|
||||
Subject: [PATCH] ELF checks for orphan placement
|
||||
|
||||
The loop checking for previous orphan placement should run even when
|
||||
the output is non-ELF.
|
||||
|
||||
PR ld/21884
|
||||
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Revert
|
||||
last change. Rename iself to elfinput. Expand comments. Condition
|
||||
ELF checks on having both input and output ELF files. Extract..
|
||||
(elf_orphan_compatible): ..this new function.
|
||||
---
|
||||
ld/ChangeLog | 8 ++++++
|
||||
ld/emultempl/elf32.em | 76 +++++++++++++++++++++++++++++++--------------------
|
||||
2 files changed, 55 insertions(+), 29 deletions(-)
|
||||
|
||||
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
|
||||
index 75ded12..9ac1840 100644
|
||||
--- a/ld/emultempl/elf32.em
|
||||
+++ b/ld/emultempl/elf32.em
|
||||
@@ -2008,6 +2008,29 @@ output_rel_find (asection *sec, int isdyn)
|
||||
return last;
|
||||
}
|
||||
|
||||
+/* Return whether IN is suitable to be part of OUT. */
|
||||
+
|
||||
+static bfd_boolean
|
||||
+elf_orphan_compatible (asection *in, asection *out)
|
||||
+{
|
||||
+ /* Non-zero sh_info implies a section with SHF_INFO_LINK with
|
||||
+ unknown semantics for the generic linker, or a SHT_REL/SHT_RELA
|
||||
+ section where sh_info specifies a symbol table. (We won't see
|
||||
+ SHT_GROUP, SHT_SYMTAB or SHT_DYNSYM sections here.) We clearly
|
||||
+ can't merge SHT_REL/SHT_RELA using differing symbol tables, and
|
||||
+ shouldn't merge sections with differing unknown semantics. */
|
||||
+ if (elf_section_data (out)->this_hdr.sh_info
|
||||
+ != elf_section_data (in)->this_hdr.sh_info)
|
||||
+ return FALSE;
|
||||
+ /* We can't merge two sections with differing SHF_EXCLUDE when doing
|
||||
+ a relocatable link. */
|
||||
+ if (bfd_link_relocatable (&link_info)
|
||||
+ && ((elf_section_flags (out) ^ elf_section_flags (in)) & SHF_EXCLUDE) != 0)
|
||||
+ return FALSE;
|
||||
+ return _bfd_elf_match_sections_by_type (link_info.output_bfd, out,
|
||||
+ in->owner, in);
|
||||
+}
|
||||
+
|
||||
/* Place an orphan section. We use this to put random SHF_ALLOC
|
||||
sections in the right segment. */
|
||||
|
||||
@@ -2064,8 +2087,9 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
|
||||
lang_output_section_statement_type *os;
|
||||
lang_output_section_statement_type *match_by_name = NULL;
|
||||
int isdyn = 0;
|
||||
- int iself = s->owner->xvec->flavour == bfd_target_elf_flavour;
|
||||
- unsigned int sh_type = iself ? elf_section_type (s) : SHT_NULL;
|
||||
+ int elfinput = s->owner->xvec->flavour == bfd_target_elf_flavour;
|
||||
+ int elfoutput = link_info.output_bfd->xvec->flavour == bfd_target_elf_flavour;
|
||||
+ unsigned int sh_type = elfinput ? elf_section_type (s) : SHT_NULL;
|
||||
flagword flags;
|
||||
asection *nexts;
|
||||
|
||||
@@ -2073,7 +2097,7 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
|
||||
&& link_info.combreloc
|
||||
&& (s->flags & SEC_ALLOC))
|
||||
{
|
||||
- if (iself)
|
||||
+ if (elfinput)
|
||||
switch (sh_type)
|
||||
{
|
||||
case SHT_RELA:
|
||||
@@ -2095,6 +2119,8 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
|
||||
}
|
||||
|
||||
if (!bfd_link_relocatable (&link_info)
|
||||
+ && elfinput
|
||||
+ && elfoutput
|
||||
&& (s->flags & SEC_ALLOC) != 0
|
||||
&& (elf_section_flags (s) & SHF_GNU_MBIND) != 0)
|
||||
{
|
||||
@@ -2135,9 +2161,11 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
|
||||
secname = ".mbind.text";
|
||||
}
|
||||
|
||||
- /* Look through the script to see where to place this section. */
|
||||
- if (constraint == 0
|
||||
- && link_info.output_bfd->xvec->flavour == bfd_target_elf_flavour)
|
||||
+ /* Look through the script to see where to place this section. The
|
||||
+ script includes entries added by previous lang_insert_orphan
|
||||
+ calls, so this loop puts multiple compatible orphans of the same
|
||||
+ name into a single output section. */
|
||||
+ if (constraint == 0)
|
||||
for (os = lang_output_section_find (secname);
|
||||
os != NULL;
|
||||
os = next_matching_output_section_statement (os, 0))
|
||||
@@ -2146,29 +2174,19 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
|
||||
lang_insert_orphan to create a new output section. */
|
||||
constraint = SPECIAL;
|
||||
|
||||
- /* SEC_EXCLUDE is cleared when doing a relocatable link. But
|
||||
- we can't merge 2 input sections with the same name when only
|
||||
- one of them has SHF_EXCLUDE. Don't merge 2 sections with
|
||||
- different sh_info. */
|
||||
+ /* Check to see if we already have an output section statement
|
||||
+ with this name, and its bfd section has compatible flags.
|
||||
+ If the section already exists but does not have any flags
|
||||
+ set, then it has been created by the linker, possibly as a
|
||||
+ result of a --section-start command line switch. */
|
||||
if (os->bfd_section != NULL
|
||||
- && (elf_section_data (os->bfd_section)->this_hdr.sh_info
|
||||
- == elf_section_data (s)->this_hdr.sh_info)
|
||||
&& (os->bfd_section->flags == 0
|
||||
- || ((!bfd_link_relocatable (&link_info)
|
||||
- || (iself && (((elf_section_flags (s)
|
||||
- ^ elf_section_flags (os->bfd_section))
|
||||
- & SHF_EXCLUDE) == 0)))
|
||||
- && ((s->flags ^ os->bfd_section->flags)
|
||||
+ || (((s->flags ^ os->bfd_section->flags)
|
||||
& (SEC_LOAD | SEC_ALLOC)) == 0
|
||||
- && _bfd_elf_match_sections_by_type (link_info.output_bfd,
|
||||
- os->bfd_section,
|
||||
- s->owner, s))))
|
||||
+ && (!elfinput
|
||||
+ || !elfoutput
|
||||
+ || elf_orphan_compatible (s, os->bfd_section)))))
|
||||
{
|
||||
- /* We already have an output section statement with this
|
||||
- name, and its bfd section has compatible flags.
|
||||
- If the section already exists but does not have any flags
|
||||
- set, then it has been created by the linker, probably as a
|
||||
- result of a --section-start command line switch. */
|
||||
lang_add_section (&os->children, s, NULL, os);
|
||||
return os;
|
||||
}
|
||||
@@ -2244,8 +2262,8 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
|
||||
else if ((flags & SEC_ALLOC) == 0)
|
||||
;
|
||||
else if ((flags & SEC_LOAD) != 0
|
||||
- && ((iself && sh_type == SHT_NOTE)
|
||||
- || (!iself && CONST_STRNEQ (secname, ".note"))))
|
||||
+ && ((elfinput && sh_type == SHT_NOTE)
|
||||
+ || (!elfinput && CONST_STRNEQ (secname, ".note"))))
|
||||
place = &hold[orphan_interp];
|
||||
else if ((flags & (SEC_LOAD | SEC_HAS_CONTENTS | SEC_THREAD_LOCAL)) == 0)
|
||||
place = &hold[orphan_bss];
|
||||
@@ -2255,8 +2273,8 @@ gld${EMULATION_NAME}_place_orphan (asection *s,
|
||||
place = &hold[orphan_tdata];
|
||||
else if ((flags & SEC_READONLY) == 0)
|
||||
place = &hold[orphan_data];
|
||||
- else if (((iself && (sh_type == SHT_RELA || sh_type == SHT_REL))
|
||||
- || (!iself && CONST_STRNEQ (secname, ".rel")))
|
||||
+ else if (((elfinput && (sh_type == SHT_RELA || sh_type == SHT_REL))
|
||||
+ || (!elfinput && CONST_STRNEQ (secname, ".rel")))
|
||||
&& (flags & SEC_LOAD) != 0)
|
||||
place = &hold[orphan_rel];
|
||||
else if ((flags & SEC_CODE) == 0)
|
||||
--
|
||||
2.9.3
|
||||
|
|
@ -66,13 +66,6 @@ stdenv.mkDerivation rec {
|
|||
++ stdenv.lib.optional (!pythonSupport) "--without-python"
|
||||
++ stdenv.lib.optional multitarget "--enable-targets=all";
|
||||
|
||||
preConfigure =
|
||||
# Not sure why this is causing problems, now that the stdenv
|
||||
# exports CPP=cpp the build fails with strange errors on darwin.
|
||||
stdenv.lib.optionalString stdenv.cc.isClang ''
|
||||
unset CPP
|
||||
'';
|
||||
|
||||
postInstall =
|
||||
'' # Remove Info files already provided by Binutils and other packages.
|
||||
rm -v $out/share/info/bfd.info
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ stdenv, fetchurl, pkgconfig, libdrm, libpciaccess, cairo, dri2proto, udev
|
||||
, libX11, libXext, libXv, libXrandr, glib, bison, libunwind, python3, kmod
|
||||
, procps, autoconf, automake }:
|
||||
, procps, autoreconfHook, utilmacros }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "intel-gpu-tools-1.19";
|
||||
|
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1wdhwf3im6ids95qw5r9hjj9hvp0qhzgi4llrlriy723q3kqm754";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig autoconf automake ];
|
||||
nativeBuildInputs = [ pkgconfig autoreconfHook utilmacros ];
|
||||
buildInputs = [ libdrm libpciaccess cairo dri2proto udev libX11 kmod
|
||||
libXext libXv libXrandr glib bison libunwind python3 procps ];
|
||||
|
||||
|
|
|
@ -45,7 +45,7 @@ Author: Robin Gloster <mail@glob.in>
|
|||
{
|
||||
if (!show)
|
||||
- return false;
|
||||
+ return NULL;
|
||||
+ return nullptr;
|
||||
const std::vector<PolygonItem *>& items = poly->GetItem();
|
||||
WeaponMenuItem * tmp;
|
||||
Interface::GetInstance()->SetCurrentOverflyWeapon(NULL);
|
||||
|
|
|
@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
|
|||
inherit sha256;
|
||||
};
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" "doc" ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
|
|
|
@ -5,11 +5,11 @@
|
|||
assert enablePython -> python != null;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "audit-2.7.6";
|
||||
name = "audit-2.7.7";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://people.redhat.com/sgrubb/audit/${name}.tar.gz";
|
||||
sha256 = "1rqlj15kbyfw4z88z8whf1q2rcg17vs439fvzdds55fwzyf2hrgs";
|
||||
sha256 = "1vvqw5xgirap0jdmajw7l3pq563aycvy3hlqvj3k2cac8i4jbqlq";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "dev" "out" "man" "plugins" ];
|
||||
|
|
|
@ -103,7 +103,7 @@ let
|
|||
};
|
||||
|
||||
kernel = buildLinux {
|
||||
inherit version modDirVersion src kernelPatches;
|
||||
inherit version modDirVersion src kernelPatches stdenv;
|
||||
|
||||
configfile = configfile.nativeDrv or configfile;
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, runCommand, nettools, bc, perl, gmp, libmpc, mpfr, kmod, openssl
|
||||
{ runCommand, nettools, bc, perl, gmp, libmpc, mpfr, kmod, openssl
|
||||
, writeTextFile, ubootChooser
|
||||
, hostPlatform
|
||||
}:
|
||||
|
@ -14,6 +14,8 @@ let
|
|||
echo "}" >> $out
|
||||
'').outPath;
|
||||
in {
|
||||
# Allow overriding stdenv on each buildLinux call
|
||||
stdenv,
|
||||
# The kernel version
|
||||
version,
|
||||
# The version of the kernel module directory
|
||||
|
|
|
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0qjiqc5pknaal57453nxcbz3mn1r4hkyywam41wfcglq3v2qlg39";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "lib" "doc" ]
|
||||
outputs = [ "out" "dev" "lib" "man" "doc" ]
|
||||
++ stdenv.lib.optional (pam != null) "pam";
|
||||
|
||||
nativeBuildInputs = [ perl ];
|
||||
|
|
|
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0spl155k0g2l2hvqf8xyjv08i68gfyhzpjva6cwlzxx0bz4gbify";
|
||||
};
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
patches = [ ./force-path.patch ];
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
|
|||
};
|
||||
|
||||
# FIXME: -dev depends on -doc
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" "doc" ];
|
||||
setOutputFlags = false; # it would move $out/modules, etc.
|
||||
|
||||
buildInputs = [perl] ++
|
||||
|
|
|
@ -11,16 +11,16 @@ stdenv.mkDerivation rec {
|
|||
|
||||
buildInputs = [ openssl ];
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
patchPhase = ''
|
||||
substituteInPlace makefile --replace gcc cc
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin $doc/share/man/man1
|
||||
mkdir -p $out/bin $man/share/man/man1
|
||||
cp {uftp,uftpd,uftp_keymgt,uftpproxyd} $out/bin/
|
||||
cp {uftp.1,uftpd.1,uftp_keymgt.1,uftpproxyd.1} $doc/share/man/man1
|
||||
cp {uftp.1,uftpd.1,uftp_keymgt.1,uftpproxyd.1} $man/share/man/man1
|
||||
'';
|
||||
|
||||
meta = {
|
||||
|
|
|
@ -73,7 +73,7 @@ in
|
|||
libxcb = attrs : attrs // {
|
||||
nativeBuildInputs = [ args.python ];
|
||||
configureFlags = "--enable-xkb --enable-xinput";
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" "doc" ];
|
||||
};
|
||||
|
||||
xcbproto = attrs : attrs // {
|
||||
|
@ -177,7 +177,7 @@ in
|
|||
};
|
||||
|
||||
libXext = attrs: attrs // {
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" "doc" ];
|
||||
propagatedBuildInputs = [ xorg.xproto xorg.libXau ];
|
||||
preConfigure = setMalloc0ReturnsNullCrossCompiling;
|
||||
};
|
||||
|
@ -187,7 +187,7 @@ in
|
|||
};
|
||||
|
||||
libXi = attrs: attrs // {
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" "man" "doc" ];
|
||||
propagatedBuildInputs = [ xorg.libXfixes ];
|
||||
};
|
||||
|
||||
|
|
|
@ -36,10 +36,9 @@ stdenv.mkDerivation rec {
|
|||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
outputs = [ "out" "dev" "doc" "info" ];
|
||||
|
||||
# the man pages are small and useful enough
|
||||
outputMan = if interactive then "out" else null;
|
||||
outputs = [ "out" "dev" "doc" "info" ]
|
||||
# the man pages are small and useful enough, so include them in $out in interactive builds
|
||||
++ stdenv.lib.optional (!interactive) "man";
|
||||
|
||||
NIX_CFLAGS_COMPILE = ''
|
||||
-DSYS_BASHRC="/etc/bashrc"
|
||||
|
|
|
@ -40,6 +40,8 @@ let
|
|||
|
||||
allowBroken = config.allowBroken or false || builtins.getEnv "NIXPKGS_ALLOW_BROKEN" == "1";
|
||||
|
||||
allowUnsupportedSystem = config.allowUnsupportedSystem or false;
|
||||
|
||||
isUnfree = licenses: lib.lists.any (l:
|
||||
!l.free or true || l == "unfree" || l == "unfree-redistributable") licenses;
|
||||
|
||||
|
@ -177,7 +179,7 @@ let
|
|||
{ valid = false; reason = "blacklisted"; errormsg = "has a blacklisted license (‘${showLicense attrs.meta.license}’)"; }
|
||||
else if !allowBroken && attrs.meta.broken or false then
|
||||
{ valid = false; reason = "broken"; errormsg = "is marked as broken"; }
|
||||
else if !allowBroken && attrs.meta.platforms or null != null && !lib.lists.elem system attrs.meta.platforms then
|
||||
else if !allowUnsupportedSystem && !allowBroken && attrs.meta.platforms or null != null && !lib.lists.elem system attrs.meta.platforms then
|
||||
{ valid = false; reason = "broken"; errormsg = "is not supported on ‘${system}’"; }
|
||||
else if !(hasAllowedInsecure attrs) then
|
||||
{ valid = false; reason = "insecure"; errormsg = "is marked as insecure"; }
|
||||
|
|
|
@ -43,29 +43,21 @@ rec {
|
|||
, propagatedSandboxProfile ? ""
|
||||
, ... } @ attrs:
|
||||
let
|
||||
dependencies = [
|
||||
(map (drv: drv.nativeDrv or drv) nativeBuildInputs)
|
||||
dependencies = map lib.chooseDevOutputs [
|
||||
(map (drv: drv.nativeDrv or drv) nativeBuildInputs
|
||||
++ lib.optional separateDebugInfo ../../build-support/setup-hooks/separate-debug-info.sh
|
||||
++ lib.optional stdenv.hostPlatform.isWindows ../../build-support/setup-hooks/win-dll-link.sh)
|
||||
(map (drv: drv.crossDrv or drv) buildInputs)
|
||||
];
|
||||
propagatedDependencies = [
|
||||
propagatedDependencies = map lib.chooseDevOutputs [
|
||||
(map (drv: drv.nativeDrv or drv) propagatedNativeBuildInputs)
|
||||
(map (drv: drv.crossDrv or drv) propagatedBuildInputs)
|
||||
];
|
||||
in let
|
||||
|
||||
outputs' =
|
||||
outputs ++
|
||||
(if separateDebugInfo then assert stdenv.hostPlatform.isLinux; [ "debug" ] else []);
|
||||
|
||||
dependencies' = let
|
||||
justMap = map lib.chooseDevOutputs dependencies;
|
||||
nativeBuildInputs = lib.head justMap
|
||||
++ lib.optional separateDebugInfo ../../build-support/setup-hooks/separate-debug-info.sh
|
||||
++ lib.optional stdenv.hostPlatform.isWindows ../../build-support/setup-hooks/win-dll-link.sh;
|
||||
in [ nativeBuildInputs ] ++ lib.tail justMap;
|
||||
|
||||
propagatedDependencies' = map lib.chooseDevOutputs propagatedDependencies;
|
||||
|
||||
derivationArg =
|
||||
(removeAttrs attrs
|
||||
["meta" "passthru" "crossAttrs" "pos"
|
||||
|
@ -73,13 +65,13 @@ rec {
|
|||
"sandboxProfile" "propagatedSandboxProfile"])
|
||||
// (let
|
||||
computedSandboxProfile =
|
||||
lib.concatMap (input: input.__propagatedSandboxProfile or []) (stdenv.extraBuildInputs ++ lib.concatLists dependencies');
|
||||
lib.concatMap (input: input.__propagatedSandboxProfile or []) (stdenv.extraBuildInputs ++ lib.concatLists dependencies);
|
||||
computedPropagatedSandboxProfile =
|
||||
lib.concatMap (input: input.__propagatedSandboxProfile or []) (lib.concatLists propagatedDependencies');
|
||||
lib.concatMap (input: input.__propagatedSandboxProfile or []) (lib.concatLists propagatedDependencies);
|
||||
computedImpureHostDeps =
|
||||
lib.unique (lib.concatMap (input: input.__propagatedImpureHostDeps or []) (stdenv.extraBuildInputs ++ lib.concatLists dependencies'));
|
||||
lib.unique (lib.concatMap (input: input.__propagatedImpureHostDeps or []) (stdenv.extraBuildInputs ++ lib.concatLists dependencies));
|
||||
computedPropagatedImpureHostDeps =
|
||||
lib.unique (lib.concatMap (input: input.__propagatedImpureHostDeps or []) (lib.concatLists propagatedDependencies'));
|
||||
lib.unique (lib.concatMap (input: input.__propagatedImpureHostDeps or []) (lib.concatLists propagatedDependencies));
|
||||
in
|
||||
{
|
||||
name = name + lib.optionalString
|
||||
|
@ -92,11 +84,11 @@ rec {
|
|||
userHook = config.stdenv.userHook or null;
|
||||
__ignoreNulls = true;
|
||||
|
||||
nativeBuildInputs = lib.elemAt dependencies' 0;
|
||||
buildInputs = lib.elemAt dependencies' 1;
|
||||
nativeBuildInputs = lib.elemAt dependencies 0;
|
||||
buildInputs = lib.elemAt dependencies 1;
|
||||
|
||||
propagatedNativeBuildInputs = lib.elemAt propagatedDependencies' 0;
|
||||
propagatedBuildInputs = lib.elemAt propagatedDependencies' 1;
|
||||
propagatedNativeBuildInputs = lib.elemAt propagatedDependencies 0;
|
||||
propagatedBuildInputs = lib.elemAt propagatedDependencies 1;
|
||||
|
||||
# This parameter is sometimes a string, sometimes null, and sometimes a list, yuck
|
||||
configureFlags = let inherit (lib) optional elem; in
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue