Merge remote-tracking branch 'upstream/master' into mingw-mcfthreads

This commit is contained in:
John Ericson
2019-11-11 20:48:14 -05:00
4983 changed files with 152349 additions and 86073 deletions
+12 -7
View File
@@ -13,6 +13,16 @@
with stdenv.lib;
let
extraPropagatedBuildInputs = [ ]
++ optionals x11Support [ libXext libICE libXrandr ]
++ optionals openglSupport [ libGL libGLU ]
++ optional alsaSupport alsaLib
++ optional pulseaudioSupport libpulseaudio
++ optional stdenv.isDarwin Cocoa;
rpath = makeLibraryPath extraPropagatedBuildInputs;
in
stdenv.mkDerivation rec {
pname = "SDL";
version = "1.2.15";
@@ -31,12 +41,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig ]
++ optional stdenv.isLinux libcap;
propagatedBuildInputs = [ libiconv ]
++ optionals x11Support [ libXext libICE libXrandr ]
++ optionals openglSupport [ libGL libGLU ]
++ optional alsaSupport alsaLib
++ optional pulseaudioSupport libpulseaudio
++ optional stdenv.isDarwin Cocoa;
propagatedBuildInputs = [ libiconv ] ++ extraPropagatedBuildInputs;
buildInputs = [ ]
++ optional (!stdenv.hostPlatform.isMinGW && alsaSupport) audiofile
@@ -108,7 +113,7 @@ stdenv.mkDerivation rec {
postFixup = ''
for lib in $out/lib/*.so* ; do
if [[ -L "$lib" ]]; then
patchelf --set-rpath "$(patchelf --print-rpath $lib):${makeLibraryPath propagatedBuildInputs}" "$lib"
patchelf --set-rpath "$(patchelf --print-rpath $lib):${rpath}" "$lib"
fi
done
'';
@@ -1,7 +1,8 @@
diff -ru3 SDL-1.2.15/sdl-config.in SDL-1.2.15-new/sdl-config.in
--- SDL-1.2.15/sdl-config.in 2012-01-19 10:30:06.000000000 +0400
+++ SDL-1.2.15-new/sdl-config.in 2016-08-22 05:32:52.716397920 +0300
@@ -42,7 +42,11 @@
diff --git a/sdl-config.in b/sdl-config.in
index e0fcc0c..bf7928a 100644
--- a/sdl-config.in
+++ b/sdl-config.in
@@ -42,14 +42,18 @@ while test $# -gt 0; do
echo @SDL_VERSION@
;;
--cflags)
@@ -13,4 +14,13 @@ diff -ru3 SDL-1.2.15/sdl-config.in SDL-1.2.15-new/sdl-config.in
+ echo $SDL_CFLAGS @SDL_CFLAGS@
;;
@ENABLE_SHARED_TRUE@ --libs)
@ENABLE_SHARED_TRUE@ echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@
-@ENABLE_SHARED_TRUE@ echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@
+@ENABLE_SHARED_TRUE@ echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_LIBS@ $SDL_LIB_PATH
@ENABLE_SHARED_TRUE@ ;;
@ENABLE_STATIC_TRUE@@ENABLE_SHARED_TRUE@ --static-libs)
@ENABLE_STATIC_TRUE@@ENABLE_SHARED_FALSE@ --libs|--static-libs)
-@ENABLE_STATIC_TRUE@ echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_STATIC_LIBS@
+@ENABLE_STATIC_TRUE@ echo -L@libdir@ @SDL_RLD_FLAGS@ @SDL_STATIC_LIBS@ $SDL_LIB_PATH
@ENABLE_STATIC_TRUE@ ;;
*)
echo "${usage}" 1>&2
@@ -1,6 +1,7 @@
addSDLPath () {
if [ -e "$1/include/SDL" ]; then
export SDL_PATH="$SDL_PATH $1/include/SDL"
export SDL_LIB_PATH="$SDL_LIB_PATH -L$1/lib"
fi
}
@@ -36,6 +36,13 @@ stdenv.mkDerivation rec {
patches = [ ./find-headers.patch ];
# Fix with mesa 19.2: https://bugzilla.libsdl.org/show_bug.cgi?id=4797
postPatch = ''
substituteInPlace include/SDL_opengl_glext.h \
--replace "typedef ptrdiff_t GLsizeiptr;" "typedef signed long int khronos_ssize_t; typedef khronos_ssize_t GLsizeiptr;" \
--replace "typedef ptrdiff_t GLintptr;" "typedef signed long int khronos_intptr_t; typedef khronos_intptr_t GLintptr;"
'';
nativeBuildInputs = [ pkgconfig ];
propagatedBuildInputs = dlopenPropagatedBuildInputs;
@@ -0,0 +1,32 @@
{ stdenv, fetchpatch, fetchurl, SDL, autoreconfHook, pango, pkgconfig }:
stdenv.mkDerivation rec {
pname = "SDL_Pango";
version = "0.1.2";
src = fetchurl {
url = "mirror://sourceforge/sdlpango/${pname}-${version}.tar.gz";
sha256 = "197baw1dsg0p4pljs5k0fshbyki00r4l49m1drlpqw6ggawx6xbz";
};
patches = [
(fetchpatch {
url = https://sources.debian.org/data/main/s/sdlpango/0.1.2-6/debian/patches/api_additions.patch;
sha256 = "00p5ry5gd3ixm257p9i2c4jg0qj8ipk8nf56l7c9fma8id3zxyld";
})
./fixes.patch
];
preConfigure = "autoreconf -i -f";
nativeBuildInputs = [ pkgconfig autoreconfHook ];
buildInputs = [ SDL pango ];
meta = with stdenv.lib; {
description = "Connects the Pango rendering engine to SDL";
license = licenses.lgpl21Plus;
platforms = platforms.all;
homepage = http://sdlpango.sourceforge.net/;
maintainers = with maintainers; [ puckipedia ];
};
}
@@ -0,0 +1,148 @@
diff --git a/SDL_Pango.pc.in b/SDL_Pango.pc.in
index 750d091..3af38ff 100644
--- a/SDL_Pango.pc.in
+++ b/SDL_Pango.pc.in
@@ -6,6 +6,6 @@ includedir=@includedir@
Name: SDL_Pango
Description: SDL library for internationalized text rendering
Version: @VERSION@
-Requires: pango
+Requires: pango pangoft2
Libs: -L${libdir} -lSDL_Pango
Cflags: -I${includedir}
\ No newline at end of file
diff --git a/src/SDL_Pango.c b/src/SDL_Pango.c
index b969bc1..cc2c3f5 100644
--- a/src/SDL_Pango.c
+++ b/src/SDL_Pango.c
@@ -231,6 +231,41 @@
#include "SDL_Pango.h"
+const SDLPango_Matrix _MATRIX_WHITE_BACK
+ = {255, 0, 0, 0,
+ 255, 0, 0, 0,
+ 255, 0, 0, 0,
+ 255, 255, 0, 0,};
+const SDLPango_Matrix *MATRIX_WHITE_BACK = &_MATRIX_WHITE_BACK;
+
+const SDLPango_Matrix _MATRIX_BLACK_BACK
+ = {0, 255, 0, 0,
+ 0, 255, 0, 0,
+ 0, 255, 0, 0,
+ 255, 255, 0, 0,};
+const SDLPango_Matrix *MATRIX_BLACK_BACK = &_MATRIX_BLACK_BACK;
+
+const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_BLACK_LETTER
+ = {0, 0, 0, 0,
+ 0, 0, 0, 0,
+ 0, 0, 0, 0,
+ 0, 255, 0, 0,};
+const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_BLACK_LETTER = &_MATRIX_TRANSPARENT_BACK_BLACK_LETTER;
+
+const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_WHITE_LETTER
+ = {255, 255, 0, 0,
+ 255, 255, 0, 0,
+ 255, 255, 0, 0,
+ 0, 255, 0, 0,};
+const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_WHITE_LETTER = &_MATRIX_TRANSPARENT_BACK_WHITE_LETTER;
+
+const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER
+ = {255, 255, 0, 0,
+ 255, 255, 0, 0,
+ 255, 255, 0, 0,
+ 0, 0, 0, 0,};
+const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER = &_MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER;
+
//! non-zero if initialized
static int IS_INITIALIZED = 0;
diff --git a/src/SDL_Pango.h b/src/SDL_Pango.h
index 6ebdf78..b7e5e58 100644
--- a/src/SDL_Pango.h
+++ b/src/SDL_Pango.h
@@ -47,57 +47,32 @@ typedef struct _SDLPango_Matrix {
Uint8 m[4][4]; /*! Matrix variables */
} SDLPango_Matrix;
-const SDLPango_Matrix _MATRIX_WHITE_BACK
- = {255, 0, 0, 0,
- 255, 0, 0, 0,
- 255, 0, 0, 0,
- 255, 255, 0, 0,};
/*!
Specifies white back and black letter.
*/
-const SDLPango_Matrix *MATRIX_WHITE_BACK = &_MATRIX_WHITE_BACK;
+extern const SDLPango_Matrix *MATRIX_WHITE_BACK;
-const SDLPango_Matrix _MATRIX_BLACK_BACK
- = {0, 255, 0, 0,
- 0, 255, 0, 0,
- 0, 255, 0, 0,
- 255, 255, 0, 0,};
/*!
Specifies black back and white letter.
*/
-const SDLPango_Matrix *MATRIX_BLACK_BACK = &_MATRIX_BLACK_BACK;
+extern const SDLPango_Matrix *MATRIX_BLACK_BACK;
-const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_BLACK_LETTER
- = {0, 0, 0, 0,
- 0, 0, 0, 0,
- 0, 0, 0, 0,
- 0, 255, 0, 0,};
/*!
Specifies transparent back and black letter.
*/
-const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_BLACK_LETTER = &_MATRIX_TRANSPARENT_BACK_BLACK_LETTER;
+extern const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_BLACK_LETTER;
-const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_WHITE_LETTER
- = {255, 255, 0, 0,
- 255, 255, 0, 0,
- 255, 255, 0, 0,
- 0, 255, 0, 0,};
/*!
Specifies transparent back and white letter.
*/
-const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_WHITE_LETTER = &_MATRIX_TRANSPARENT_BACK_WHITE_LETTER;
+extern const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_WHITE_LETTER;
-const SDLPango_Matrix _MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER
- = {255, 255, 0, 0,
- 255, 255, 0, 0,
- 255, 255, 0, 0,
- 0, 0, 0, 0,};
/*!
Specifies transparent back and transparent letter.
This is useful for KARAOKE like rendering.
*/
-const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER = &_MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER;
+extern const SDLPango_Matrix *MATRIX_TRANSPARENT_BACK_TRANSPARENT_LETTER;
/*!
Specifies direction of text. See Pango reference for detail
@@ -186,7 +161,8 @@ extern DECLSPEC void SDLCALL SDLPango_SetBaseDirection(
SDLPango_Direction direction);
-#ifdef __FT2_BUILD_UNIX_H__
+
+#ifdef __PANGO_H__
extern DECLSPEC void SDLCALL SDLPango_CopyFTBitmapToSurface(
const FT_Bitmap *bitmap,
@@ -194,11 +170,8 @@ extern DECLSPEC void SDLCALL SDLPango_CopyFTBitmapToSurface(
const SDLPango_Matrix *matrix,
SDL_Rect *rect);
-#endif /* __FT2_BUILD_UNIX_H__ */
-#ifdef __PANGO_H__
-
extern DECLSPEC PangoFontMap* SDLCALL SDLPango_GetPangoFontMap(
SDLPango_Context *context);
@@ -2,10 +2,10 @@
stdenv.mkDerivation rec {
pname = "accounts-qt";
version = "1.15";
version = "1.16";
src = fetchFromGitLab {
sha256 = "0cnra7g2mcgzh8ykrj1dpb4khkx676pzdr4ia1bvsp0cli48691w";
sha256 = "1vmpjvysm0ld8dqnx8msa15hlhrkny02cqycsh4k2azrnijg0xjz";
rev = "VERSION_${version}";
repo = "libaccounts-qt";
owner = "accounts-sso";
@@ -60,6 +60,8 @@ stdenv.mkDerivation rec {
})
./no-create-dirs.patch
./Disable-methods-that-change-files-in-etc.patch
# Fixes https://github.com/NixOS/nixpkgs/issues/72396
./drop-prefix-check-extensions.patch
# Systemd unit improvements. Notably using StateDirectory eliminating the
# need of an ad-hoc script.
(fetchpatch {
@@ -70,6 +72,11 @@ stdenv.mkDerivation rec {
url = "https://gitlab.freedesktop.org/accountsservice/accountsservice/commit/0e712e935abd26499ff5995ab363e5bfd9ee7c4c.patch";
sha256 = "1y60a5fmgfqjzprwpizilrazqn3mggdlgc5sgcpsprsp62fv78rl";
})
# Don't use etc/dbus-1/system.d
(fetchpatch {
url = "https://gitlab.freedesktop.org/accountsservice/accountsservice/commit/ced73d0fcbd2a54085a660d260482fc70d79bd5c.patch";
sha256 = "0s7fknfgxl8hnf6givmhfg4586fjb2n64i9arh1w7xnq7x9x8d4c";
})
];
meta = with stdenv.lib; {
@@ -0,0 +1,22 @@
diff --git a/src/extensions.c b/src/extensions.c
index 038dcb2..830465d 100644
--- a/src/extensions.c
+++ b/src/extensions.c
@@ -121,16 +121,7 @@ daemon_read_extension_directory (GHashTable *ifaces,
continue;
}
- /* Ensure it looks like "../../dbus-1/interfaces/${name}" */
- const gchar * const prefix = "../../dbus-1/interfaces/";
- if (g_str_has_prefix (symlink, prefix) && g_str_equal (symlink + strlen (prefix), name)) {
- daemon_read_extension_file (ifaces, filename);
- }
- else {
- g_warning ("Found accounts service vendor extension symlink %s, but it must be exactly "
- "equal to '../../dbus-1/interfaces/%s' for forwards-compatibility reasons.",
- filename, name);
- }
+ daemon_read_extension_file (ifaces, filename);
}
g_dir_close (dir);
@@ -3,13 +3,13 @@
stdenv.mkDerivation rec
{
pname = "alembic";
version = "1.7.11";
version = "1.7.12";
src = fetchFromGitHub {
owner = "alembic";
repo = "alembic";
rev = version;
sha256 = "1lalbqn4cwf0vp4hiq72gwpd7kq501j21rnjb380mv26pk7r2ivz";
sha256 = "0a9icrv6pwh2b73lywq1aj7i19pmzpg59iy3ngal8vq4zdciylqc";
};
outputs = [ "bin" "dev" "out" "lib" ];
@@ -5,11 +5,11 @@
mkDerivation rec {
pname = "alkimia";
version = "8.0.1";
version = "8.0.2";
src = fetchurl {
url = "mirror://kde/stable/alkimia/${version}/${pname}-${version}.tar.xz";
sha256 = "059i6vn36sdq5zn2vqzh4asvvgdgs7n478nk9phvb5gdys01fq7m";
sha256 = "0al5k9irmg9gsjc234qxjsqfzgzsavl18pspqk78mkp8zlv7fvv1";
};
nativeBuildInputs = [ extra-cmake-modules doxygen graphviz ];
+2 -2
View File
@@ -1,14 +1,14 @@
{ stdenv, fetchurl, gtk3
, pkgconfig, gnome3, dbus, xvfb_run }:
let
version = "5.0.0";
version = "5.0.1";
pname = "amtk";
in stdenv.mkDerivation {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1zriix7bdwcg0868mfc7jy6zbwjwdmjwbh0ah6dbddrhiabrda8j";
sha256 = "09yy95w1s83c43mh9vha1jbb780yighf5pd2j0ygjmc68sjg871d";
};
nativeBuildInputs = [
+2 -2
View File
@@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "apr-1.6.5";
name = "apr-1.7.0";
src = fetchurl {
url = "mirror://apache/apr/${name}.tar.bz2";
sha256 = "01d1n1ql66bxsjx0wyzazmkqdqdmr0is6a7lwyy5kzy4z7yajz56";
sha256 = "1spp6r2a3xcl5yajm9safhzyilsdzgagc2dadif8x6z9nbq4iqg2";
};
patches = stdenv.lib.optionals stdenv.isDarwin [ ./is-this-a-compiler-bug.patch ];
@@ -33,13 +33,13 @@ in
stdenv.mkDerivation rec {
pname = "aravis";
version = "0.6.3";
version = "0.6.4";
src = fetchFromGitHub {
owner = "AravisProject";
repo = pname;
rev= "ARAVIS_${builtins.replaceStrings ["."] ["_"] version}";
sha256 = "0lmgx854z522dwcxsg37bxdyiai9fnycpx1nvgayksj38h39kfn2";
sha256 = "18fnliks661kzc3g8v08hcaj18hjid8b180d6s9gwn0zgv4g374w";
};
outputs = [ "bin" "dev" "out" "lib" ];
+1 -1
View File
@@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
description = ''A library for arbitrary-precision interval arithmetic'';
license = stdenv.lib.licenses.lgpl21Plus;
maintainers = with maintainers; [ raskin timokau ];
platforms = stdenv.lib.platforms.linux;
platforms = stdenv.lib.platforms.unix;
};
}
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "armadillo";
version = "9.600.6";
version = "9.800.1";
src = fetchurl {
url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
sha256 = "0wlk1yv9531vpvgja4cpy0sxykrn0p5w376kx86vl45b50yamx7g";
sha256 = "1vnshgkz4d992kk2fwqigqfx7gx3145ryb8d2794hn2667h5gkzb";
};
nativeBuildInputs = [ cmake ];
@@ -0,0 +1,70 @@
{ stdenv, fetchurl, fetchFromGitHub, cmake, pkgconfig
, cudatoolkit, opencl-clhpp, ocl-icd, fftw, fftwFloat, mkl
, blas, openblas, boost, mesa, libGLU_combined
, freeimage, python, clfft, clblas
, doxygen, buildDocs ? false
}:
let
strOnLinux = stdenv.lib.optionalString stdenv.isLinux;
in stdenv.mkDerivation rec {
pname = "arrayfire";
version = "3.6.4";
src = fetchurl {
url = "http://arrayfire.com/arrayfire_source/arrayfire-full-${version}.tar.bz2";
sha256 = "1fin7a9rliyqic3z83agkpb8zlq663q6gdxsnm156cs8s7f7rc9h";
};
cmakeFlags = [
"-DAF_BUILD_OPENCL=OFF"
"-DAF_BUILD_EXAMPLES=OFF"
"-DBUILD_TESTING=OFF"
(strOnLinux "-DCMAKE_LIBRARY_PATH=${cudatoolkit}/lib/stubs")
];
patches = [ ./no-download.patch ];
postPatch = ''
mkdir -p ./build/third_party/clFFT/src
cp -R --no-preserve=mode,ownership ${clfft.src}/ ./build/third_party/clFFT/src/clFFT-ext/
mkdir -p ./build/third_party/clBLAS/src
cp -R --no-preserve=mode,ownership ${clblas.src}/ ./build/third_party/clBLAS/src/clBLAS-ext/
mkdir -p ./build/include/CL
cp -R --no-preserve=mode,ownership ${opencl-clhpp}/include/CL/cl2.hpp ./build/include/CL/cl2.hpp
'';
preBuild = strOnLinux ''
export CUDA_PATH="${cudatoolkit}"
'';
enableParallelBuilding = true;
nativeBuildInputs = [
cmake
pkgconfig
python
];
buildInputs = [
opencl-clhpp fftw fftwFloat
mkl
openblas
libGLU_combined
mesa freeimage
boost.out boost.dev
] ++ (stdenv.lib.optional stdenv.isLinux [ cudatoolkit ocl-icd ])
++ (stdenv.lib.optional buildDocs [ doxygen ]);
meta = with stdenv.lib; {
description = "A general-purpose library for parallel and massively-parallel computations";
longDescription = ''
A general-purpose library that simplifies the process of developing software that targets parallel and massively-parallel architectures including CPUs, GPUs, and other hardware acceleration devices.";
'';
license = licenses.bsd3;
homepage = "https://arrayfire.com/";
platforms = platforms.linux ++ platforms.darwin;
maintainers = with maintainers; [ chessai ];
};
}
@@ -0,0 +1,28 @@
diff --git a/CMakeModules/build_clBLAS.cmake b/CMakeModules/build_clBLAS.cmake
index 8de529e8..6361b613 100644
--- a/CMakeModules/build_clBLAS.cmake
+++ b/CMakeModules/build_clBLAS.cmake
@@ -14,8 +14,7 @@ find_package(OpenCL)
ExternalProject_Add(
clBLAS-ext
- GIT_REPOSITORY https://github.com/arrayfire/clBLAS.git
- GIT_TAG arrayfire-release
+ DOWNLOAD_COMMAND true
BUILD_BYPRODUCTS ${clBLAS_location}
PREFIX "${prefix}"
INSTALL_DIR "${prefix}"
diff --git a/CMakeModules/build_clFFT.cmake b/CMakeModules/build_clFFT.cmake
index 28be38a3..85e3915e 100644
--- a/CMakeModules/build_clFFT.cmake
+++ b/CMakeModules/build_clFFT.cmake
@@ -20,8 +20,7 @@ ENDIF()
ExternalProject_Add(
clFFT-ext
- GIT_REPOSITORY https://github.com/arrayfire/clFFT.git
- GIT_TAG arrayfire-release
+ DOWNLOAD_COMMAND true
PREFIX "${prefix}"
INSTALL_DIR "${prefix}"
UPDATE_COMMAND ""
@@ -1,4 +1,6 @@
{ stdenv, fetchurl, fetchFromGitHub, fixDarwinDylibNames, autoconf, boost, brotli, cmake, double-conversion, flatbuffers, gflags, glog, gtest, lz4, perl, python, rapidjson, snappy, thrift, uriparser, which, zlib, zstd }:
{ stdenv, fetchurl, fetchFromGitHub, fixDarwinDylibNames, autoconf, boost
, brotli, cmake, double-conversion, flatbuffers, gflags, glog, gtest, lz4, perl
, python, rapidjson, snappy, thrift, uriparser, which, zlib, zstd }:
let
parquet-testing = fetchFromGitHub {
@@ -7,15 +9,15 @@ let
rev = "a277dc4e55ded3e3ea27dab1e4faf98c112442df";
sha256 = "1yh5a8l4ship36hwmgmp2kl72s5ac9r8ly1qcs650xv2g9q7yhnq";
};
in
stdenv.mkDerivation rec {
in stdenv.mkDerivation rec {
pname = "arrow-cpp";
version = "0.14.1";
version = "0.15.1";
src = fetchurl {
url = "mirror://apache/arrow/arrow-${version}/apache-arrow-${version}.tar.gz";
sha256 = "0a0xrsbr7dd1yp34yw82jw7psfkfvm935jhd5mam32vrsjvdsj4r";
url =
"mirror://apache/arrow/arrow-${version}/apache-arrow-${version}.tar.gz";
sha256 = "1jbghpppabsix2rkxbnh41inj9lcxfz4q94p96xzxshh4g3mhb4s";
};
sourceRoot = "apache-arrow-${version}/cpp";
@@ -24,57 +26,81 @@ stdenv.mkDerivation rec {
# From
# ./cpp/cmake_modules/ThirdpartyToolchain.cmake
# ./cpp/thirdparty/versions.txt
url = "https://github.com/jemalloc/jemalloc/releases/download/5.2.0/jemalloc-5.2.0.tar.bz2";
url =
"https://github.com/jemalloc/jemalloc/releases/download/5.2.0/jemalloc-5.2.0.tar.bz2";
sha256 = "1d73a5c5qdrwck0fa5pxz0myizaf3s9alsvhiqwrjahdlr29zgkl";
};
patches = [
# patch to fix python-test
./darwin.patch
];
];
nativeBuildInputs = [ cmake autoconf /* for vendored jemalloc */ ]
++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
nativeBuildInputs = [
cmake
autoconf # for vendored jemalloc
flatbuffers
] ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
buildInputs = [
boost brotli double-conversion flatbuffers gflags glog gtest lz4 rapidjson
snappy thrift uriparser zlib zstd python.pkgs.python python.pkgs.numpy
boost
brotli
double-conversion
flatbuffers
gflags
glog
gtest
lz4
rapidjson
snappy
thrift
uriparser
zlib
zstd
python.pkgs.python
python.pkgs.numpy
];
preConfigure = ''
substituteInPlace cmake_modules/FindLz4.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY
patchShebangs build-support/
# Fix build for ARROW_USE_SIMD=OFF
# https://jira.apache.org/jira/browse/ARROW-5007
sed -i src/arrow/util/sse-util.h -e '1i#include "arrow/util/logging.h"'
sed -i src/arrow/util/neon-util.h -e '1i#include "arrow/util/logging.h"'
'';
cmakeFlags = [
"-DARROW_BUILD_TESTS=ON"
"-DARROW_DEPENDENCY_SOURCE=SYSTEM"
"-DARROW_PARQUET=ON"
"-DARROW_PLASMA=ON"
"-DARROW_PYTHON=ON"
"-Duriparser_SOURCE=SYSTEM"
] ++ stdenv.lib.optional (!stdenv.isx86_64) "-DARROW_USE_SIMD=OFF";
doInstallCheck = true;
PARQUET_TEST_DATA = if doInstallCheck then "${parquet-testing}/data" else null;
PARQUET_TEST_DATA =
if doInstallCheck then "${parquet-testing}/data" else null;
installCheckInputs = [ perl which ];
installCheckPhase = (stdenv.lib.optionalString stdenv.isDarwin ''
for f in release/*test; do
for f in release/*test{,s}; do
install_name_tool -add_rpath "$out"/lib "$f"
done
'') + ''
ctest -L unittest -V
'';
'')
+ (let
excludedTests = stdenv.lib.optionals stdenv.isDarwin [
# Some plasma tests need to be patched to use a shorter AF_UNIX socket
# path on Darwin. See https://github.com/NixOS/nix/pull/1085
"plasma-external-store-tests"
"plasma-client-tests"
];
in ''
ctest -L unittest -V \
--exclude-regex '^(${builtins.concatStringsSep "|" excludedTests})$'
'');
meta = {
description = "A cross-language development platform for in-memory data";
homepage = https://arrow.apache.org/;
homepage = "https://arrow.apache.org/";
license = stdenv.lib.licenses.asl20;
platforms = stdenv.lib.platforms.unix;
maintainers = with stdenv.lib.maintainers; [ veprbl ];
maintainers = with stdenv.lib.maintainers; [ tobim veprbl ];
};
}
@@ -298,10 +298,10 @@ in rec {
en = buildOfficialDict {
language = "en";
version = "2018.04.16-0";
version = "2019.10.06-0";
fullName = "English";
filename = "aspell6";
sha256 = "0bxxdzkk9g27plg22y9qzsx9cfjw3aa29w5bmzs561qc9gkp247i";
sha256 = "1zai9wrqwgb9z9vfgb22qhrvxvg73jg0ix44j1khm2f6m96lncr4";
};
eo = buildOfficialDict {
@@ -919,12 +919,12 @@ in rec {
src1 = fetchurl {
url = http://jpetrie.net/wp-content/uploads/custom_scientific_US.txt;
sha256 = "1psqm094zl4prk2f8h18jv0d471hxykzd1zdnrlx7gzrzy6pz5r3";
sha256 = "1nf4py2mg0mlv9s5a7had2wn29z2v6bcca0fs6rbpdn4nqc4s7dm";
};
src2 = fetchurl {
url = http://jpetrie.net/wp-content/uploads/custom_scientific_UK.txt;
sha256 = "17ss1sdr3k70zbyx2z9xf74345slrp41gbkpih8axrmg4x92fgm1";
sha256 = "0f88il1ds6qazy1ghxviqcwsywrbf6pzl2lmzf4f3qvhdfb6f1y0";
};
langInputs = [ en ];
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "assimp";
version = "4.1.0";
version = "5.0.0";
src = fetchFromGitHub{
owner = "assimp";
repo = "assimp";
rev = "v${version}";
sha256 = "00g61g3ixmfszzjncpvm8x7gp2livaj4lmhbycjmrw4x3gfqlc4r";
sha256 = "17y5q5hbygmb0cgf96gd3v8sal5g69cp8hmh1cs3yz7v00kjysmz";
};
buildInputs = [ cmake boost zlib ];
@@ -10,23 +10,20 @@
, dbus
, glib
, libxml2
, fixDarwinDylibNames
, gnome3 # To pass updateScript
}:
stdenv.mkDerivation rec {
pname = "at-spi2-atk";
version = "2.32.0";
version = "2.34.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0p54wx6f6q7s8w0b1j0sgw87pikllp79q5g3lfiwqazs779ycl8b";
sha256 = "00250s72ii8w6lb6ww61v49y9k4cswfj0hhawqlram7bl6b7x6is";
};
nativeBuildInputs = [ meson ninja pkgconfig ]
# Fixup rpaths because of meson, remove with meson-0.47
++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
nativeBuildInputs = [ meson ninja pkgconfig ];
buildInputs = [ at-spi2-core atk dbus glib libxml2 ];
doCheck = false; # fails with "No test data file provided"
@@ -40,7 +37,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "D-Bus bridge for Assistive Technology Service Provider Interface (AT-SPI) and Accessibility Toolkit (ATK)";
homepage = https://gitlab.gnome.org/GNOME/at-spi2-atk;
license = licenses.lgpl2Plus; # NOTE: 2018-06-06: Please check the license when upstream sorts-out licensing: https://gitlab.gnome.org/GNOME/at-spi2-atk/issues/2
license = licenses.lgpl21Plus;
maintainers = gnome3.maintainers;
platforms = platforms.unix;
};
@@ -13,25 +13,22 @@
, libX11
, libXtst # at-spi2-core can be build without X support, but due it is a client-side library, GUI-less usage is a very rare case
, libXi
, fixDarwinDylibNames
, gnome3 # To pass updateScript
}:
stdenv.mkDerivation rec {
pname = "at-spi2-core";
version = "2.32.1";
version = "2.34.0";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0lqd7gsl471v6538iighkvb21gjglcb9pklvas32rjpsxcvsjaiw";
sha256 = "1ihixwhh3c16q6253qj9gf69741rb2pi51822a4rylsfcyywsafn";
};
outputs = [ "out" "dev" ];
nativeBuildInputs = [ meson ninja pkgconfig gobject-introspection makeWrapper ]
# Fixup rpaths because of meson, remove with meson-0.47
++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
nativeBuildInputs = [ meson ninja pkgconfig gobject-introspection makeWrapper ];
buildInputs = [ dbus glib libX11 libXtst libXi ];
doCheck = false; # fails with "AT-SPI: Couldn't connect to accessibility bus. Is at-spi-bus-launcher running?"
@@ -58,7 +55,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "Assistive Technology Service Provider Interface protocol definitions and daemon for D-Bus";
homepage = https://gitlab.gnome.org/GNOME/at-spi2-core;
license = licenses.lgpl2Plus; # NOTE: 2018-06-06: Please check the license when upstream sorts-out licensing: https://gitlab.gnome.org/GNOME/at-spi2-core/issues/2
license = licenses.lgpl21Plus;
maintainers = gnome3.maintainers;
platforms = platforms.unix;
};
+8 -2
View File
@@ -4,7 +4,7 @@
let
pname = "atk";
version = "2.32.0";
version = "2.34.1";
in
stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
sha256 = "1k4i817bd2w5b9z394f2yyx95591l2746wa40am0vvz4gzdgwhfb";
sha256 = "1jwp16r6p5z66k4b2v8zlzhyshhwlmyi27ippkrgqr8jsary7w6l";
};
outputs = [ "out" "dev" ];
@@ -26,6 +26,12 @@ stdenv.mkDerivation rec {
glib
];
patches = [
# meson builds an incorrect .pc file
# glib should be Requires not Requires.private
./fix_pc.patch
];
doCheck = true;
passthru = {
@@ -0,0 +1,9 @@
--- a/atk/meson.build
+++ b/atk/meson.build
@@ -162,5 +162,6 @@ pkgconfig.generate(libatk,
name: 'Atk',
description: 'Accessibility Toolkit',
subdirs: atk_api_name,
+ requires: glib_dep,
filebase: 'atk',
)
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "libmysofa";
version = "0.7";
version = "0.8";
src = fetchFromGitHub {
owner = "hoene";
repo = "libmysofa";
rev = "v${version}";
sha256 = "0si0z7cfw6xcs3dkrb4zini55xpxwfp27yl8lbx39gx2pf8v2jls";
sha256 = "1gas6fp0xy57wwdvsdfq1yq2hg4zl2c074b260y7hh92z96pj22j";
};
nativeBuildInputs = [ cmake ];
@@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, autoconf, automake, libtool, libjack2, alsaLib, rtmidi }:
{ stdenv, fetchFromGitHub, autoconf, automake, libtool, libjack2, alsaLib, pulseaudio, rtmidi }:
stdenv.mkDerivation rec {
version = "5.1.0";
@@ -13,18 +13,18 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
buildInputs = [ autoconf automake libtool libjack2 alsaLib rtmidi ];
buildInputs = [ autoconf automake libtool libjack2 alsaLib pulseaudio rtmidi ];
preConfigure = ''
./autogen.sh --no-configure
./configure
'';
meta = {
meta = with stdenv.lib; {
description = "A set of C++ classes that provide a cross platform API for realtime audio input/output";
homepage = http://www.music.mcgill.ca/~gary/rtaudio/;
license = stdenv.lib.licenses.mit;
maintainers = [ stdenv.lib.maintainers.magnetophon ];
platforms = with stdenv.lib.platforms; linux ++ darwin;
license = licenses.mit;
maintainers = [ maintainers.magnetophon ];
platforms = platforms.unix;
};
}
+1 -1
View File
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
configureFlags =
[ "--disable-qt3" "--disable-gdbm" "--disable-mono"
"--disable-gtk"
"--disable-gtk" "--with-dbus-sys=${placeholder "out"}/share/dbus-1/system.d"
(stdenv.lib.enableFeature gtk3Support "gtk3")
"--${if qt4Support then "enable" else "disable"}-qt4"
(stdenv.lib.enableFeature withPython "python")
@@ -1,14 +1,14 @@
{ stdenv, cmake, fetchurl, pkgconfig, jansson, zlib }:
let
version = "1.9.0";
version = "1.9.1";
in stdenv.mkDerivation {
pname = "avro-c";
inherit version;
src = fetchurl {
url = "mirror://apache/avro/avro-${version}/c/avro-c-${version}.tar.gz";
sha256 = "1ch8z9jpkjxjx2zh28z0946gz3vwj1jnkrzg4vwvfa287128cml0";
sha256 = "0hj6w1w5mqkhnhkvjc0zz5njnnrbcjv5ml4f8gq80wff2cgbrxvx";
};
postPatch = ''
@@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, cmake, curl, openssl, zlib
{ lib, stdenv, fetchFromGitHub, cmake, curl, openssl, zlib, fetchpatch
, aws-c-common, aws-c-event-stream, aws-checksums
, CoreAudio, AudioToolbox
, # Allow building a limited set of APIs, e.g. ["s3" "ec2"].
@@ -21,7 +21,6 @@ stdenv.mkDerivation rec {
# FIXME: might be nice to put different APIs in different outputs
# (e.g. libaws-cpp-sdk-s3.so in output "s3").
outputs = [ "out" "dev" ];
separateDebugInfo = stdenv.isLinux;
nativeBuildInputs = [ cmake curl ];
@@ -50,6 +49,13 @@ stdenv.mkDerivation rec {
__darwinAllowLocalNetworking = true;
patches = [
(fetchpatch {
url = "https://github.com/aws/aws-sdk-cpp/commit/42991ab549087c81cb630e5d3d2413e8a9cf8a97.patch";
sha256 = "0myq5cm3lvl5r56hg0sc0zyn1clbkd9ys0wr95ghw6bhwpvfv8gr";
})
];
meta = with lib; {
description = "A C++ interface for Amazon Web Services";
homepage = https://github.com/awslabs/aws-sdk-cpp;
+2 -2
View File
@@ -66,8 +66,8 @@ stdenv.mkDerivation rec {
# TODO: Requires /etc/machine-id
doCheck = false;
# ignore deprecation errors
NIX_CFLAGS_COMPILE = "-Wno-deprecated-declarations";
# glib-2.62 deprecations
NIX_CFLAGS_COMPILE = [ "-DGLIB_DISABLE_DEPRECATION_WARNINGS" ];
meta = with stdenv.lib; {
description = "Application matching framework";
@@ -16,22 +16,20 @@ stdenv.mkDerivation rec {
};
outputs = [ "out" "dev" "doc" ];
separateDebugInfo = stdenv.isLinux;
separateDebugInfo = stdenv.isLinux && stdenv.hostPlatform.libc != "musl";
preConfigure = stdenv.lib.optionalString (stdenv.hostPlatform.libc == "musl") ''
export NIX_CFLAGS_COMPILE+=" -D_GNU_SOURCE -DUSE_MMAP -DHAVE_DL_ITERATE_PHDR"
'';
patches =
# https://github.com/ivmai/bdwgc/pull/208
patches = # https://github.com/ivmai/bdwgc/pull/208
lib.optional stdenv.hostPlatform.isRiscV ./riscv.patch
# boehm-gc whitelists GCC threading models
++ lib.optional stdenv.hostPlatform.isMinGW ./mcfgthread.patch;
configureFlags =
[ "--enable-cplusplus" "--with-libatomic-ops=none" ]
++ lib.optional enableLargeConfig "--enable-large-config"
++ lib.optional (stdenv.hostPlatform.libc == "musl") "--disable-static";
++ lib.optional enableLargeConfig "--enable-large-config";
nativeBuildInputs =
lib.optional stdenv.hostPlatform.isMinGW autoreconfHook;
@@ -0,0 +1,47 @@
{ stdenv, fetchFromGitHub, cmake, pkg-config, gettext, libcsptr, dyncall
, nanomsg, python37Packages }:
stdenv.mkDerivation rec {
version = "unstable-2019-09-19";
pname = "boxfort";
src = fetchFromGitHub {
owner = "Snaipe";
repo = "BoxFort";
rev = "926bd4ce968592dbbba97ec1bb9aeca3edf29b0d";
sha256 = "0mzy4f8qij6ckn5578y3l4rni2470pdkjy5xww7ak99l1kh3p3v6";
};
enableParallelBuilding = true;
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [
dyncall
gettext
libcsptr
nanomsg
];
checkInputs = with python37Packages; [ cram ];
cmakeFlags = [ "-DBXF_FORK_RESILIENCE=OFF" ];
doCheck = true;
preCheck = ''
export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH
'';
outputs = [ "dev" "out" ];
meta = with stdenv.lib; {
description = "Convenient & cross-platform sandboxing C library";
homepage = "https://github.com/Snaipe/BoxFort";
license = licenses.mit;
maintainers = with maintainers; [
thesola10
Yumasi
];
platforms = platforms.unix;
};
}
@@ -40,7 +40,8 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang "-Wno-error=argument-outside-range";
NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang
"-Wno-error=argument-outside-range -Wno-error=c++11-narrowing";
meta = with stdenv.lib; {
description = "A professional free 3D Game Multiphysics Library";
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "c-blosc";
version = "1.16.3";
version = "1.17.0";
src = fetchFromGitHub {
owner = "Blosc";
repo = "c-blosc";
rev = "v${version}";
sha256 = "1c58wkf34rp5wh9qp09zdk7zcfn037sk56p4xq1g0vapbnglv603";
sha256 = "0c4vh7kyxm57jclk8jlcnc11w7nd2m81qk454gav58aji85w16hg";
};
buildInputs = [ cmake ];
+2 -2
View File
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "actor-framework";
version = "0.17.0";
version = "0.17.1";
src = fetchFromGitHub {
owner = "actor-framework";
repo = "actor-framework";
rev = version;
sha256 = "10dcpmdsfq6r7hpvg413pqi1q3rjvgn7f87c17ghyz30x6rjhaic";
sha256 = "1xbq591m3v6pkz4z3dg2lsxr6bxv1lpz4yhdci3vi55y6x9pwyfw";
};
nativeBuildInputs = [ cmake ];
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "catch2";
version = "2.8.0";
version = "2.10.2";
src = fetchFromGitHub {
owner = "catchorg";
repo = "Catch2";
rev = "v${version}";
sha256="1i7nz29gcsy9cnljb0sb1fw8fg9p1gdh2pdhrgj3kcrsnxgbyhrq";
sha256="01ldfv4337s3vdhsx415d49jchpvqy61c77dhnri30ip5af0ipjs";
};
nativeBuildInputs = [ cmake ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "A multi-paradigm automated test framework for C++ and Objective-C (and, maybe, C)";
homepage = http://catch-lib.net;
homepage = "http://catch-lib.net";
license = licenses.boost;
maintainers = with maintainers; [ edwtjo knedlsepp ];
platforms = with platforms; unix;
@@ -0,0 +1,23 @@
{ stdenv, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec {
pname = "cereal";
version = "1.2.2";
nativeBuildInputs = [ cmake ];
src = fetchFromGitHub {
owner = "USCiLab";
repo = "cereal";
rev = "v${version}";
sha256 = "1ckr8r03ggg5pyzg8yw40d5ssq40h5najvyqlnxc85fxxp8rnrx4";
};
cmakeFlagsArray = [ "-DJUST_INSTALL_CEREAL=yes" ];
meta = with stdenv.lib; {
description = "A header-only C++11 serialization library";
homepage = https://uscilab.github.io/cereal/;
platforms = platforms.all;
license = licenses.mit;
};
}
+10 -6
View File
@@ -1,17 +1,21 @@
{ stdenv, fetchurl }:
{ stdenv, fetchFromGitHub, autoreconfHook }:
stdenv.mkDerivation rec {
name = "chmlib-0.40";
name = "chmlib-0.40a";
src = fetchurl {
url = "${meta.homepage}/${name}.tar.bz2";
sha256 = "18zzb4x3z0d7fjh1x5439bs62dmgsi4c1pg3qyr7h5gp1i5xcj9l";
src = fetchFromGitHub {
owner = "jedwing";
repo = "CHMLib";
rev = "2bef8d063ec7d88a8de6fd9f0513ea42ac0fa21f";
sha256 = "1hah0nw0l05npva2r35ywwd0kzyiiz4vamghm6d71h8170iva6m9";
};
nativeBuildInputs = [ autoreconfHook ];
meta = {
homepage = http://www.jedrea.com/chmlib;
license = stdenv.lib.licenses.lgpl2;
description = "A library for dealing with Microsoft ITSS/CHM format files";
platforms = ["x86_64-linux" "i686-linux" "x86_64-darwin"];
platforms = ["x86_64-linux" "i686-linux" "x86_64-darwin" "aarch64-linux"];
};
}
@@ -2,18 +2,18 @@
stdenv.mkDerivation rec {
pname = "chromaprint";
version = "1.3.2";
version = "1.4.3";
src = fetchurl {
url = "https://bitbucket.org/acoustid/chromaprint/downloads/${pname}-${version}.tar.gz";
sha256 = "0lln8dh33gslb9cbmd1hcv33pr6jxdwipd8m8gbsyhksiq6r1by3";
url = "https://github.com/acoustid/chromaprint/releases/download/v${version}/${pname}-${version}.tar.gz";
sha256 = "10kz8lncal4s2rp2rqpgc6xyjp0jzcrihgkx7chf127vfs5n067a";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ boost ffmpeg ];
cmakeFlags = [ "-DBUILD_EXAMPLES=ON" ];
cmakeFlags = [ "-DBUILD_EXAMPLES=ON" "-DBUILD_TOOLS=ON" ];
meta = with stdenv.lib; {
homepage = https://acoustid.org/chromaprint;
+2 -2
View File
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "cimg";
version = "2.7.0";
version = "2.7.5";
src = fetchurl {
url = "http://cimg.eu/files/CImg_${version}.zip";
sha256 = "1la6332cppyciyn3pflbchxa3av72a70p0n1c9sm1hgfbjlydqnv";
sha256 = "1xhs0j7mfiln9apfcc9cd3cmjj1prm211vih2zn2qi87ialv36cg";
};
nativeBuildInputs = [ unzip ];
@@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, cmake, fftw, fftwFloat, boost166, opencl-clhpp, ocl-icd }:
let
version = "2.12.2";
in stdenv.mkDerivation {
pname = "clfft";
inherit version;
src = fetchFromGitHub {
owner = "clMathLibraries";
repo = "clFFT";
rev = "refs/tags/v${version}";
sha256 = "134vb6214hn00qy84m4djg4hqs6hw19gkp8d0wlq8gb9m3mfx7na";
};
sourceRoot = "source/src";
nativeBuildInputs = [ cmake ];
buildInputs = [ fftw fftwFloat boost166 opencl-clhpp ocl-icd ];
meta = with stdenv.lib; {
description = "Library containing FFT functions written in OpenCL";
longDescription = ''
clFFT is a software library containing FFT functions written in OpenCL.
In addition to GPU devices, the library also supports running on CPU devices to facilitate debugging and heterogeneous programming.
'';
license = licenses.asl20;
homepage = "http://clmathlibraries.github.io/clFFT/";
platforms = [ "i686-linux" "x86_64-linux" ];
maintainers = with maintainers; [ chessai ];
inherit version;
};
}
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "cpp-utilities";
version = "4.17.1";
version = "5.0.1";
src = fetchFromGitHub {
owner = "Martchus";
repo = pname;
rev = "v${version}";
sha256 = "12088cwg3jbqipmbn4843w1cgxi1q6vwx47gy042rkfvbk6azhxl";
sha256 = "11wm7z4ldsja2x2m2dkj3xhiammkwfqgbgkwq9gssnv14803fhnv";
};
nativeBuildInputs = [ cmake ];
+3 -3
View File
@@ -1,4 +1,4 @@
{ stdenv, fetchurl, cmake, sqlite, mysql, postgresql, unixODBC }:
{ stdenv, fetchurl, cmake, sqlite, libmysqlclient, postgresql, unixODBC }:
stdenv.mkDerivation rec {
pname = "cppdb";
@@ -11,10 +11,10 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
buildInputs = [ cmake sqlite mysql.connector-c postgresql unixODBC ];
buildInputs = [ cmake sqlite libmysqlclient postgresql unixODBC ];
cmakeFlags = [ "--no-warn-unused-cli" ];
NIX_CFLAGS_COMPILE = [ "-I${mysql.connector-c}/include/mysql" "-L${mysql.connector-c}/lib/mysql" ];
NIX_CFLAGS_COMPILE = [ "-I${libmysqlclient}/include/mysql" "-L${libmysqlclient}/lib/mysql" ];
meta = with stdenv.lib; {
homepage = http://cppcms.com/sql/cppdb/;
@@ -0,0 +1,49 @@
{ stdenv, fetchFromGitHub, boxfort, cmake, libcsptr, pkg-config, gettext
, dyncall , nanomsg, python37Packages }:
stdenv.mkDerivation rec {
version = "2.3.3";
pname = "criterion";
src = fetchFromGitHub {
owner = "Snaipe";
repo = "Criterion";
rev = "v${version}";
sha256 = "0y1ay8is54k3y82vagdy0jsa3nfkczpvnqfcjm5n9iarayaxaq8p";
fetchSubmodules = true;
};
enableParallelBuilding = true;
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [
boxfort.dev
dyncall
gettext
libcsptr
nanomsg
];
checkInputs = with python37Packages; [ cram ];
cmakeFlags = [ "-DCTESTS=ON" ];
doCheck = true;
preCheck = ''
export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH
'';
checkTarget = "criterion_tests test";
outputs = [ "dev" "out" ];
meta = with stdenv.lib; {
description = "A cross-platform C and C++ unit testing framework for the 21th century";
homepage = "https://github.com/Snaipe/Criterion";
license = licenses.mit;
maintainers = with maintainers; [
thesola10
Yumasi
];
platforms = platforms.unix;
};
}
@@ -1,15 +0,0 @@
diff --git a/GNUmakefile b/GNUmakefile
index 4de9d10..ff4789a 100755
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -271,8 +271,8 @@ endif # OpenMP
endif # IS_LINUX
ifneq ($(IS_DARWIN),0)
-AR = libtool
-ARFLAGS = -static -o
+AR = ar
+ARFLAGS = cru
CXX ?= c++
ifeq ($(IS_GCC_29),1)
CXXFLAGS += -fno-coalesce-templates -fno-coalesce-static-vtables
+26 -28
View File
@@ -1,49 +1,47 @@
{ fetchFromGitHub, stdenv }:
{ stdenv, fetchFromGitHub, nasm, which }:
with stdenv.lib;
stdenv.mkDerivation rec {
pname = "crypto++";
majorVersion = "5.6";
version = "${majorVersion}.5";
version = "8.2.0";
underscoredVersion = strings.replaceStrings ["."] ["_"] version;
src = fetchFromGitHub {
owner = "weidai11";
repo = "cryptopp";
rev = "CRYPTOPP_5_6_5";
sha256 = "1yk7jyf4va9425cg05llskpls2jm7n3jwy2hj5jm74zkr4mwpvl7";
rev = "CRYPTOPP_${underscoredVersion}";
sha256 = "01zrrzjn14yhkb9fzzl57vmh7ig9a6n6fka45f8za0gf7jpcq3mj";
};
patches = stdenv.lib.concatLists [
(stdenv.lib.optional (stdenv.hostPlatform.system != "i686-cygwin") ./dll.patch)
(stdenv.lib.optional stdenv.hostPlatform.isDarwin ./GNUmakefile-darwin.patch)
];
configurePhase = ''
sed -i GNUmakefile \
-e 's|-march=native|-fPIC|g' \
-e '/^CXXFLAGS =/s|-g ||'
postPatch = ''
substituteInPlace GNUmakefile \
--replace "AR = libtool" "AR = ar" \
--replace "ARFLAGS = -static -o" "ARFLAGS = -cru"
'';
nativeBuildInputs = optionals stdenv.hostPlatform.isx86 [ nasm which ];
preBuild = optionalString stdenv.hostPlatform.isx86 "${stdenv.shell} rdrand-nasm.sh";
makeFlags = [ "PREFIX=${placeholder "out"}" ];
buildFlags = [ "shared" "libcryptopp.pc" ];
enableParallelBuilding = true;
makeFlags = [ "PREFIX=$(out)" ];
buildFlags = [ "libcryptopp.so" ];
installFlags = [ "LDCONF=true" ];
doCheck = true;
checkPhase = "LD_LIBRARY_PATH=`pwd` make test";
# prefer -fPIC and .so to .a; cryptotest.exe seems superfluous
postInstall = ''
rm "$out"/lib/*.a -r "$out/bin"
ln -sf "$out"/lib/libcryptopp.so.${version} "$out"/lib/libcryptopp.so.${majorVersion}
preInstall = "rm libcryptopp.a"; # built for checks but we don't install static lib into the nix store
installTargets = "install-lib";
installFlags = [ "LDCONF=true" ];
postInstall = optionalString (!stdenv.hostPlatform.isDarwin) ''
ln -sr $out/lib/libcryptopp.so.${version} $out/lib/libcryptopp.so.${versions.majorMinor version}
ln -sr $out/lib/libcryptopp.so.${version} $out/lib/libcryptopp.so.${versions.major version}
'';
meta = with stdenv.lib; {
meta = {
description = "Crypto++, a free C++ class library of cryptographic schemes";
homepage = http://cryptopp.com/;
license = licenses.boost;
homepage = "https://cryptopp.com/";
changelog = "https://raw.githubusercontent.com/weidai11/cryptopp/CRYPTOPP_${underscoredVersion}/History.txt";
license = with licenses; [ boost publicDomain ];
platforms = platforms.all;
maintainers = [ ];
maintainers = with maintainers; [ c0bw3b ];
};
}
@@ -1,28 +0,0 @@
Get rid of Windows-specific stuff.
diff --git a/GNUmakefile b/GNUmakefile
index 4de9d10..ff4789a 100755
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -656,7 +656,7 @@ nolib: $(OBJS)
dll: cryptest.import.exe dlltest.exe
cryptopp.dll: $(DLLOBJS)
- $(CXX) -shared -o $@ $(CXXFLAGS) $(DLLOBJS) $(LDFLAGS) $(LDLIBS) -Wl,--out-implib=libcryptopp.dll.a
+ $(CXX) -shared -o $@ $(CXXFLAGS) $(DLLOBJS) $(LDFLAGS) $(LDLIBS)
libcryptopp.import.a: $(LIBIMPORTOBJS)
$(AR) $(ARFLAGS) $@ $(LIBIMPORTOBJS)
diff --git a/dll.cpp b/dll.cpp
index 72dade9..b5097ab 100644
--- a/dll.cpp
+++ b/dll.cpp
@@ -48,7 +48,7 @@ NAMESPACE_END
#endif
-#ifdef CRYPTOPP_EXPORTS
+#if defined CRYPTOPP_EXPORTS && defined _MSC_VER
USING_NAMESPACE(CryptoPP)
@@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
pname = "cutelyst";
version = "2.8.0";
version = "2.9.0";
src = fetchFromGitHub {
owner = "cutelyst";
repo = "cutelyst";
rev = "v${version}";
sha256 = "02jys32qkyksa2dmanyg4x0y5lh4ra0xbn2mfr2k84slrxbgjs1g";
sha256 = "13h2sj131s31qdzdwa3hx7ildmvlk8mv9s0j99kvx1ijaq49z79f";
};
nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ];
+7 -5
View File
@@ -1,30 +1,32 @@
{ stdenv, fetchFromGitLab
, meson, ninja, nasm, pkgconfig
, withTools ? false, SDL2
, withTools ? false # "dav1d" binary
, withExamples ? false, SDL2 # "dav1dplay" binary
, useVulkan ? false, libplacebo, vulkan-loader, vulkan-headers
}:
assert useVulkan -> withTools;
assert useVulkan -> withExamples;
stdenv.mkDerivation rec {
pname = "dav1d";
version = "0.4.0";
version = "0.5.1";
src = fetchFromGitLab {
domain = "code.videolan.org";
owner = "videolan";
repo = pname;
rev = version;
sha256 = "1fbalfzw8j00vwbrh9h8kjdx6h99dr10vmvbpg3rhsspmxq9h66h";
sha256 = "08cgccp7xvwn24w9iab4fzi18x3m6xyvvnz36qf7clcz0aqbfb9w";
};
nativeBuildInputs = [ meson ninja nasm pkgconfig ];
# TODO: doxygen (currently only HTML and not build by default).
buildInputs = stdenv.lib.optional withTools SDL2
buildInputs = stdenv.lib.optional withExamples SDL2
++ stdenv.lib.optionals useVulkan [ libplacebo vulkan-loader vulkan-headers ];
mesonFlags= [
"-Denable_tools=${stdenv.lib.boolToString withTools}"
"-Denable_examples=${stdenv.lib.boolToString withExamples}"
];
meta = with stdenv.lib; {
+11 -5
View File
@@ -3,6 +3,7 @@
, fetchurl
, pkgconfig
, expat
, enableSystemd ? stdenv.isLinux && !stdenv.hostPlatform.isMusl
, systemd
, libX11 ? null
, libICE ? null
@@ -15,6 +16,8 @@ assert
x11Support ->
libX11 != null && libICE != null && libSM != null;
assert enableSystemd -> systemd != null;
stdenv.mkDerivation rec {
pname = "dbus";
version = "1.12.16";
@@ -50,16 +53,18 @@ stdenv.mkDerivation rec {
expat
];
buildInputs = lib.optionals x11Support [
libX11
libICE
libSM
] ++ lib.optional stdenv.isLinux systemd;
buildInputs =
lib.optionals x11Support [
libX11
libICE
libSM
] ++ lib.optional enableSystemd systemd;
# ToDo: optional selinux?
configureFlags = [
"--enable-user-session"
"--libexecdir=${placeholder ''out''}/libexec"
"--datadir=/etc"
"--localstatedir=/var"
"--runstatedir=/run"
"--sysconfdir=/etc"
@@ -100,6 +105,7 @@ stdenv.mkDerivation rec {
description = "Simple interprocess messaging system";
homepage = http://www.freedesktop.org/wiki/Software/dbus/;
license = licenses.gpl2Plus; # most is also under AFL-2.1
maintainers = with maintainers; [ worldofpeace ];
platforms = platforms.unix;
};
}
+13 -6
View File
@@ -1,11 +1,12 @@
{ stdenv
, fetchgit
, fetchpatch
, pkgconfig
, glib
, icu
, gobject-introspection
, dbus-glib
, vala_0_40
, vala
, python3
, autoreconfHook
}:
@@ -18,20 +19,26 @@ stdenv.mkDerivation rec {
src = fetchgit {
url = "https://git.launchpad.net/ubuntu/+source/dee";
rev = "import/1.2.7+17.10.20170616-4ubuntu1";
sha256 = "0q3d9d6ahcyibp6x23g1wvjfcppjh9v614s328yjmx47216z7394";
rev = "import/1.2.7+17.10.20170616-4ubuntu3";
sha256 = "09blrdj7229vscp4mkg0fabmcvc6jdpamvblrq86rbky7j2nnwlk";
};
patches = [
"${src}/debian/patches/gtkdocize.patch"
"${src}/debian/patches/strict-prototype.patch"
"${src}/debian/patches/icu-pkg-config.patch"
"${src}/debian/patches/vapi-skip-properties.patch"
# Fixes glib 2.62 deprecations
(fetchpatch {
name = "dee-1.2.7-deprecated-g_type_class_add_private.patch";
url = "https://src.fedoraproject.org/rpms/dee/raw/1a9a4ce3377074fabfca653ffe0287cd73aef82f/f/dee-1.2.7-deprecated-g_type_class_add_private.patch";
sha256 = "13nyprq7bb7lnzkcb7frcpzidbl836ycn5bvmwa2k0nhmj6ycbx5";
})
];
nativeBuildInputs = [
pkgconfig
# https://gitlab.gnome.org/GNOME/vala/issues/803
vala_0_40
vala
autoreconfHook
gobject-introspection
python3
+2 -2
View File
@@ -7,13 +7,13 @@
stdenv.mkDerivation rec {
pname = "dlib";
version = "19.17";
version = "19.18";
src = fetchFromGitHub {
owner = "davisking";
repo = "dlib";
rev ="v${version}";
sha256 = "0g11ilma6cll3bd2ahm66j1sjb9v4rxz3xjbfkcg5pjsvb49n029";
sha256 = "1kbrcf35pn2ymyr8q48ls98n2zb7rrz5207kwpisfh6k22g802ic";
};
postPatch = ''
+19 -7
View File
@@ -1,24 +1,36 @@
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libuv, sqlite-replication }:
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, file, libco-canonical
, libuv, raft-canonical, sqlite-replication }:
with stdenv.lib;
stdenv.mkDerivation rec {
pname = "dqlite";
version = "0.2.6";
version = "1.0.0";
src = fetchFromGitHub {
owner = "CanonicalLtd";
owner = "canonical";
repo = pname;
rev = "v${version}";
sha256 = "13l7na5858v2ah1vim6lafmzajgkymfi5rd6bk14cm4vcnxc40wb";
sha256 = "0670c1c84lcf5vl3h6mlff00fz2fnm766bzlk526sjjzysx3zjya";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
nativeBuildInputs = [ autoreconfHook file pkgconfig ];
buildInputs = [ libco-canonical.dev libuv raft-canonical.dev
sqlite-replication ];
buildInputs = [ libuv sqlite-replication ];
preConfigure= ''
substituteInPlace configure --replace /usr/bin/ " "
'';
doCheck = true;
outputs = [ "dev" "out" ];
meta = {
description = "Expose a SQLite database over the network and replicate it across a cluster of peers";
description = ''
Expose a SQLite database over the network and replicate it across a
cluster of peers
'';
homepage = https://github.com/CanonicalLtd/dqlite/;
license = licenses.asl20;
maintainers = with maintainers; [ joko ];
@@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
pname = "drumstick";
version = "1.1.2";
version = "1.1.3";
src = fetchurl {
url = "mirror://sourceforge/drumstick/${version}/${pname}-${version}.tar.bz2";
sha256 = "0kljqyqj7s1i2z52i24x7ail1bywn6dcxxfbad5c59drm8wv94bp";
sha256 = "1n9wvg79yvkygrkc8xd8pgrd3d7hqmr7gh24dccf0px23lla9b3m";
};
outputs = [ "out" "dev" "man" ];
+2 -2
View File
@@ -14,7 +14,7 @@ assert withFlint -> flint != null;
stdenv.mkDerivation rec {
pname = "eclib";
version = "20190226"; # upgrade might break the sage interface
version = "20190909"; # upgrade might break the sage interface
# sage tests to run:
# src/sage/interfaces/mwrank.py
# src/sage/libs/eclib
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
owner = "JohnCremona";
repo = pname;
rev = "v${version}";
sha256 = "1910np1xzyjzszay24xn4b81qhpsvhp5aix9vdpknplni2mq8kwb";
sha256 = "0y1vdi4120gdw56gg2dn3wh625yr9wpyk3wpbsd25w4lv83qq5da";
};
buildInputs = [
pari
+3 -3
View File
@@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "expat-2.2.7";
name = "expat-2.2.8";
src = fetchurl {
url = "mirror://sourceforge/expat/${name}.tar.bz2";
sha256 = "067cfhqwiswm4zynw7xaxl59mrrimaiyjhnn8byxma1i98pi1jfb";
url = "https://github.com/libexpat/libexpat/releases/download/R_2_2_8/${name}.tar.xz";
sha256 = "16vpj5mk3lps3x7fr8cs03rffx3ir4jilyqw0frayn6q94daijk1";
};
outputs = [ "out" "dev" ]; # TODO: fix referrers
@@ -0,0 +1,27 @@
{ stdenv, fetchFromGitHub, cmake, SDL2}:
#TODO: tests
stdenv.mkDerivation rec {
pname = "faudio";
version = "19.11";
src = fetchFromGitHub {
owner = "FNA-XNA";
repo = "FAudio";
rev = version;
sha256 = "0ckpr6ffz8ssfh1y850dhip5s5jv0j6n90qz5yx1v9d6gpwf08rp";
};
nativeBuildInputs = [cmake];
buildInputs = [ SDL2 ];
meta = with stdenv.lib; {
description = "XAudio reimplementation focusing to develop a fully accurate DirectX audio library";
homepage = "https://github.com/FNA-XNA/FAudio";
license = licenses.zlib;
platforms = platforms.linux;
maintainers = [ maintainers.marius851000 ];
};
}
@@ -1,24 +0,0 @@
{stdenv, fetchurl, autoreconfHook, givaro_3_7, pkgconfig, openblas, gmpxx}:
stdenv.mkDerivation rec {
pname = "fflas-ffpack";
version = "1.6.0";
src = fetchurl {
url = "http://linalg.org/fflas-ffpack-${version}.tar.gz";
sha256 = "02fr675278c65hfiy1chb903j4ix9i8yni1xc2g5nmsjcaf9vra9";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
buildInputs = [ givaro_3_7 openblas gmpxx];
configureFlags = [
"--with-blas=-lopenblas"
"--with-gmp=${gmpxx.dev}"
"--with-givaro=${givaro_3_7}"
];
meta = {
inherit version;
description = ''Finite Field Linear Algebra Subroutines'';
license = stdenv.lib.licenses.lgpl21Plus;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
homepage = https://linbox-team.github.io/fflas-ffpack/;
};
}
@@ -30,24 +30,25 @@ stdenv.mkDerivation rec {
"--with-lapack-libs=-l${blas.linkName}"
] ++ stdenv.lib.optionals stdenv.isx86_64 {
# disable SIMD instructions (which are enabled *when available* by default)
default = [ "--disable-sse3" "--disable-ssse3" "--disable-sse41" "--disable-sse42" "--disable-avx" "--disable-avx2" "--disable-fma" "--disable-fma4" ];
westmere = [ "--disable-avx" "--disable-avx2" "--disable-fma" "--disable-fma4" ];
sandybridge = [ "--disable-avx2" "--disable-fma" "--disable-fma4" ];
ivybridge = [ "--disable-avx2" "--disable-fma" "--disable-fma4" ];
haswell = [ "--disable-fma4" ];
broadwell = [ "--disable-fma4" ];
skylake = [ "--disable-fma4" ];
skylake-avx512 = [ "--disable-fma4" ];
# for now we need to be careful to disable *all* relevant versions of an instruction set explicitly (https://github.com/linbox-team/fflas-ffpack/issues/284)
default = [ "--disable-sse3" "--disable-ssse3" "--disable-sse41" "--disable-sse42" "--disable-avx" "--disable-avx2" "--disable-avx512f" "--disable-avx512dq" "--disable-avx512vl" "--disable-fma" "--disable-fma4" ];
westmere = [ "--disable-avx" "--disable-avx2" "--disable-avx512f" "--disable-avx512dq" "--disable-avx512vl" "--disable-fma" "--disable-fma4" ];
sandybridge = [ "--disable-avx2" "--disable-avx512f" "--disable-avx512dq" "--disable-avx512vl" "--disable-fma" "--disable-fma4" ];
ivybridge = [ "--disable-avx2" "--disable-avx512f" "--disable-avx512dq" "--disable-avx512vl" "--disable-fma" "--disable-fma4" ];
haswell = [ "--disable-fma4" ];
broadwell = [ "--disable-fma4" ];
skylake = [ "--disable-fma4" ];
skylake-avx512 = [ "--disable-fma4" ];
}.${stdenv.hostPlatform.platform.gcc.arch or "default"};
doCheck = true;
meta = {
meta = with stdenv.lib; {
inherit version;
description = ''Finite Field Linear Algebra Subroutines'';
license = stdenv.lib.licenses.lgpl21Plus;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.unix;
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ raskin timokau ];
platforms = platforms.unix;
homepage = https://linbox-team.github.io/fflas-ffpack/;
};
}
@@ -3,7 +3,7 @@
* Licensing options (yes some are listed twice, filters and such are not listed)
*/
, gplLicensing ? true # GPL: fdkaac,openssl,frei0r,cdio,samba,utvideo,vidstab,x265,x265,xavs,avid,zvbi,x11grab
, version3Licensing ? true # (L)GPL3: opencore-amrnb,opencore-amrwb,samba,vo-aacenc,vo-amrwbenc
, version3Licensing ? true # (L)GPL3: libvmaf,opencore-amrnb,opencore-amrwb,samba,vo-aacenc,vo-amrwbenc
, nonfreeLicensing ? false # NONFREE: openssl,fdkaac,blackmagic-design-desktop-video
/*
* Build options
@@ -87,6 +87,7 @@
, libv4l ? null # Video 4 Linux support
, libva ? null # Vaapi hardware acceleration
, libvdpau ? null # Vdpau hardware acceleration
, libvmaf ? null # Netflix's VMAF (Video Multi-Method Assessment Fusion)
, libvorbis ? null # Vorbis de/encoding, native encoder exists
, libvpx ? null # VP8 & VP9 de/encoding
, libwebp ? null # WebP encoder
@@ -238,11 +239,11 @@ assert opensslExtlib -> gnutls == null && openssl != null && nonfreeLicensing;
stdenv.mkDerivation rec {
pname = "ffmpeg-full";
version = "4.2";
version = "4.2.1";
src = fetchurl {
url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.xz";
sha256 = "1mgcxm7sqkajx35px05szsmn9mawwm03cfpmk3br7bcp3a1i0gq2";
sha256 = "1m5nkc61ihgcf0b2wabm0zyqa8sj3c0w8fi6kr879lb0kdzciiyf";
};
patches = [ ./prefer-libdav1d-over-libaom.patch ];
@@ -364,6 +365,7 @@ stdenv.mkDerivation rec {
(enableFeature ((isLinux || isFreeBSD) && libva != null) "vaapi")
(enableFeature (libvdpau != null) "vdpau")
(enableFeature (libvorbis != null) "libvorbis")
(enableFeature (!isAarch64 && libvmaf != null && version3Licensing) "libvmaf")
(enableFeature (libvpx != null) "libvpx")
(enableFeature (libwebp != null) "libwebp")
(enableFeature (libX11 != null && libXv != null && libXext != null) "xlib")
@@ -425,6 +427,7 @@ stdenv.mkDerivation rec {
] ++ optional openglExtlib libGLU_combined
++ optionals nonfreeLicensing [ fdk_aac openssl ]
++ optional ((isLinux || isFreeBSD) && libva != null) libva
++ optional (!isAarch64 && libvmaf != null && version3Licensing) libvmaf
++ optionals isLinux [ alsaLib libraw1394 libv4l ]
++ optional (isLinux && !isAarch64 && libmfx != null) libmfx
++ optional nvenc nv-codec-headers
+2 -2
View File
@@ -5,8 +5,8 @@
}@args:
callPackage ./generic.nix (args // rec {
version = branch;
version = "4.2.1";
branch = "4.2";
sha256 = "1f3glany3p2j832a9wia5vj8ds9xpm0xxlyia91y17hy85gxwsrh";
sha256 = "090naa6rj46pzkgh03bf51hbqdz356qqckr2pw6pykc6ysiryak8";
darwinFrameworks = [ Cocoa CoreMedia VideoToolbox ];
})
@@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, perl, texinfo, yasm
{ stdenv, fetchurl, pkgconfig, addOpenGLRunpath, perl, texinfo, yasm
, alsaLib, bzip2, fontconfig, freetype, gnutls, libiconv, lame, libass, libogg
, libssh, libtheora, libva, libdrm, libvorbis, libvpx, lzma, libpulseaudio, soxr
, x264, x265, xvidcore, zlib, libopus, speex, nv-codec-headers, dav1d
@@ -42,7 +42,7 @@
let
inherit (stdenv) isDarwin isFreeBSD isLinux isAarch32;
inherit (stdenv.lib) optional optionals enableFeature;
inherit (stdenv.lib) optional optionals optionalString enableFeature;
cmpVer = builtins.compareVersions;
reqMin = requiredVersion: (cmpVer requiredVersion branch != 1);
@@ -157,7 +157,7 @@ stdenv.mkDerivation rec {
"--enable-cross-compile"
] ++ optional stdenv.cc.isClang "--cc=clang";
nativeBuildInputs = [ perl pkgconfig texinfo yasm ];
nativeBuildInputs = [ addOpenGLRunpath perl pkgconfig texinfo yasm ];
buildInputs = [
bzip2 fontconfig freetype gnutls libiconv lame libass libogg libssh libtheora
@@ -186,6 +186,10 @@ stdenv.mkDerivation rec {
substituteInPlace $pc \
--replace "includedir=$out" "includedir=''${!outputInclude}"
done
'' + optionalString stdenv.isLinux ''
# Set RUNPATH so that libnvcuvid in /run/opengl-driver(-32)/lib can be found.
# See the explanation in addOpenGLRunpath.
addOpenGLRunpath $out/lib/libavcodec.so*
'';
installFlags = [ "install-man" ];
@@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "ffmpegthumbnailer";
version = "2.2.0";
version = "2.2.2";
src = fetchFromGitHub {
owner = "dirkvdb";
repo = "ffmpegthumbnailer";
rev = version;
sha256 = "0kl8aa547icy9b05njps02a8sw4yn4f8fzs228kig247sn09s4cp";
sha256 = "1bakbr714j7yxdal1f5iq0gcl4cxggbbgj227ihdh5kvygqlwich";
};
nativeBuildInputs = [ cmake pkgconfig ];
@@ -5,13 +5,13 @@
stdenv.mkDerivation rec {
pname = "flatcc";
version = "0.5.3";
version = "0.6.0";
src = fetchFromGitHub {
owner = "dvidelabs";
repo = "flatcc";
rev = "v${version}";
sha256 = "06wnwvnkhw1rk0y3nncjmcyjy3bgpw8i9xqd5gpbhbrm38718cjk";
sha256 = "0cy79swgdbaf3zmsaqa6gz3b0fad2yqawwcnsipnpl9d8hn1linm";
};
nativeBuildInputs = [ cmake ];
@@ -1,6 +1,6 @@
{ stdenv, fetchurl, autoreconfHook, docbook_xml_dtd_412, docbook_xml_dtd_42, docbook_xml_dtd_43, docbook_xsl, which, libxml2
, gobject-introspection, gtk-doc, intltool, libxslt, pkgconfig, xmlto, appstream-glib, substituteAll, glibcLocales, yacc, xdg-dbus-proxy, p11-kit
, bubblewrap, bzip2, dbus, glib, gpgme, json-glib, libarchive, libcap, libseccomp, coreutils, gettext, hicolor-icon-theme, fuse
, bubblewrap, bzip2, dbus, glib, gpgme, json-glib, libarchive, libcap, libseccomp, coreutils, gettext, hicolor-icon-theme, fuse, nixosTests
, libsoup, lzma, ostree, polkit, python3, systemd, xorg, valgrind, glib-networking, wrapGAppsHook, gnome3, gsettings-desktop-schemas, librsvg }:
stdenv.mkDerivation rec {
@@ -61,6 +61,7 @@ stdenv.mkDerivation rec {
configureFlags = [
"--with-system-bubblewrap=${bubblewrap}/bin/bwrap"
"--with-system-dbus-proxy=${xdg-dbus-proxy}/bin/xdg-dbus-proxy"
"--with-dbus-config-dir=${placeholder "out"}/share/dbus-1/system.d"
"--localstatedir=/var"
"--enable-installed-tests"
];
@@ -75,6 +76,12 @@ stdenv.mkDerivation rec {
patchShebangs tests
'';
passthru = {
tests = {
installedTests = nixosTests.installed-tests.flatpak;
};
};
meta = with stdenv.lib; {
description = "Linux application sandboxing and distribution framework";
homepage = https://flatpak.org/;
+3 -3
View File
@@ -1,14 +1,14 @@
{ stdenv, fetchFromGitHub, cmake, enableShared ? true }:
stdenv.mkDerivation rec {
version = "5.3.0";
version = "6.0.0";
pname = "fmt";
src = fetchFromGitHub {
owner = "fmtlib";
repo = "fmt";
rev = version;
sha256 = "1hl9s69a5ql5nckc0ifh2fzlgsgv1wsn6yhqkpnrhasqkhj0hgv4";
sha256 = "0yfrw6by4h27k3psv9x1q7z2kdbz7pkwxidr494bpa6ppglij6ba";
};
outputs = [ "out" "dev" ];
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
doCheck = true;
# preCheckHook ensures the test binaries can find libfmt.so.5
# preCheckHook ensures the test binaries can find libfmt.so
preCheck = if enableShared
then "export LD_LIBRARY_PATH=\"$PWD\""
else "";
+2 -2
View File
@@ -30,13 +30,13 @@
stdenv.mkDerivation rec {
pname = "folks";
version = "0.12.1";
version = "0.13.1";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0xfl6rnzhdbmw1q26xiq34cdiy7a9karpi2r7wyplnnz1zaz5a9w";
sha256 = "0pda8sx4ap3lyri5fdrnakl29la1zkhwlc9bmnp13qigp1iwdw9x";
};
mesonFlags = [
+2 -2
View File
@@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "folly";
version = "2019.08.05.00";
version = "2019.10.21.00";
src = fetchFromGitHub {
owner = "facebook";
repo = "folly";
rev = "v${version}";
sha256 = "03arl9hg06rzbyaf3fzyk7q8d5mfbzfwmhqnfnvqcgzlqdj0gaa5";
sha256 = "1jy0yxqzcxxs6sq8161zbdzj4ngwjs0h2aca6n9qkaj1v5jd27c7";
};
nativeBuildInputs = [ cmake ];
@@ -1,49 +0,0 @@
{ stdenv, fetchFromGitHub }:
let version = "2016-04-23"; in
stdenv.mkDerivation {
pname = "fontconfig-ultimate";
inherit version;
src = fetchFromGitHub {
sha256 = "1rd2n60l8bamx84q3l91pd9a0wz9h7p6ajvx1dw22qn8rah4h498";
rev = version;
repo = "fontconfig-ultimate";
owner = "bohoomil";
};
installPhase = ''
mkdir -p $out/etc/fonts/conf.d
cp conf.d.infinality/*.conf $out/etc/fonts/conf.d
# Base rendering settings will be determined by NixOS module
rm $out/etc/fonts/conf.d/10-base-rendering.conf
# Options controlled by NixOS module
rm $out/etc/fonts/conf.d/35-repl-custom.conf
rm $out/etc/fonts/conf.d/38-repl-*.conf
rm $out/etc/fonts/conf.d/82-*.conf
rm $out/etc/fonts/conf.d/83-*.conf
# Inclusion of local and user configs handled by global configuration
rm $out/etc/fonts/conf.d/29-local.conf
rm $out/etc/fonts/conf.d/28-user.conf
cp fontconfig_patches/fonts-settings/*.conf $out/etc/fonts/conf.d
# fix font priority issue https://github.com/bohoomil/fontconfig-ultimate/issues/173
mv $out/etc/fonts/conf.d/{43,60}-wqy-zenhei-sharp.conf
mkdir -p $out/etc/fonts/presets/{combi,free,ms}
cp fontconfig_patches/combi/*.conf $out/etc/fonts/presets/combi
cp fontconfig_patches/free/*.conf $out/etc/fonts/presets/free
cp fontconfig_patches/ms/*.conf $out/etc/fonts/presets/ms
'';
meta = with stdenv.lib; {
description = "Font configuration files, patches, scripts and source packages (Infinality & friends)";
homepage = https://github.com/bohoomil/fontconfig-ultimate;
license = licenses.mit;
platforms = platforms.all;
};
}
@@ -0,0 +1,51 @@
{ stdenv, fetchFromGitHub, cmake, pkgconfig
, arrayfire, expat, fontconfig, freeimage, freetype, boost
, mesa, libGLU_combined, glfw3, SDL2, cudatoolkit
}:
stdenv.mkDerivation rec {
pname = "forge";
version = "1.0.4";
src = fetchFromGitHub {
owner = "arrayfire";
repo = "forge";
rev = "v${version}";
sha256 = "00pmky6kccd7pwi8sma79qpmzr2f9pbn6gym3gyqm64yckw6m484";
fetchSubmodules = true;
};
nativeBuildInputs = [
cmake
pkgconfig
];
buildInputs = [
expat
fontconfig
freetype
boost.out
boost.dev
freeimage
mesa
libGLU_combined
glfw3
SDL2
cudatoolkit
arrayfire
];
meta = with stdenv.lib; {
description = "An OpenGL interop library that can be used with ArrayFire or any other application using CUDA or OpenCL compute backend";
longDescription = ''
An OpenGL interop library that can be used with ArrayFire or any other application using CUDA or OpenCL compute backend.
The goal of Forge is to provide high performance OpenGL visualizations for C/C++ applications that use CUDA/OpenCL.
Forge uses OpenGL >=3.3 forward compatible contexts, so please make sure you have capable hardware before trying it out.
'';
license = licenses.bsd3;
homepage = "https://arrayfire.com/";
platforms = platforms.linux;
maintainers = with maintainers; [ chessai ];
};
}
+1 -1
View File
@@ -17,6 +17,6 @@ stdenv.mkDerivation rec {
description = ''Lattice algorithms using floating-point arithmetic'';
license = stdenv.lib.licenses.lgpl21Plus;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
platforms = stdenv.lib.platforms.unix;
};
}
+3 -10
View File
@@ -10,23 +10,16 @@
stdenv.mkDerivation rec {
pname = "fribidi";
version = "1.0.5";
version = "1.0.7";
outputs = [ "out" "devdoc" ];
# NOTE: 2018-06-06 v1.0.5: Only URL tarball has "Have pre-generated man pages: true", which works-around upstream usage of some rare ancient `c2man` fossil application.
# NOTE: Only URL tarball has "Have pre-generated man pages: true", which works-around upstream usage of some rare ancient `c2man` fossil application.
src = fetchurl {
url = "https://github.com/fribidi/fribidi/releases/download/v${version}/${pname}-${version}.tar.bz2";
sha256 = "1kp4b1hpx2ky20ixgy2xhj5iygfl7ps5k9kglh1z5i7mhykg4r3a";
sha256 = "0pckda4fcn0aw32lpycwdp25r2m7vca8zspq815ppi9gkwgg5das";
};
patches = [
(fetchpatch {
url = "https://github.com/fribidi/fribidi/pull/88.patch";
sha256 = "1n4l6333vhbxfckwg101flmvq6bbygg66fjp69ddcjqaqb6gh9k9";
})
];
postPatch = ''
patchShebangs test
'';
+2 -2
View File
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "fstrm";
version = "0.5.0";
version = "0.6.0";
src = fetchFromGitHub {
owner = "farsightsec";
repo = "fstrm";
rev = "v${version}";
sha256 = "1vm880h6vpnxqh7v0x17yfim6f2fbxwkm03ms58s2h9akmph9xm5";
sha256 = "0b6x9wgyn92vykkmd3ynhnpbdl77zb4wf4rm7p0h8p9pwq953hdm";
};
outputs = [ "bin" "out" "dev" ];
@@ -0,0 +1,85 @@
{ stdenv
, lib
, fetchFromGitHub
, libyaml
, swig
, pkgconfig
, wafHook
, makeWrapper
, qt4
, pythonPackages
, pythonSupport ? false
# Default to false since it breaks the build, see https://github.com/MTG/gaia/issues/11
, stlfacadeSupport ? false
, assertsSupport ? true
, cyclopsSupport ? true
}:
assert pythonSupport -> pythonPackages != null;
stdenv.mkDerivation rec {
pname = "gaia";
version = "2.4.5";
src = fetchFromGitHub {
owner = "MTG";
repo = "gaia";
rev = "v${version}";
sha256 = "12jxb354s2dblr2ghnl3w05m23jgzvrrgywfj8jaa32j3gw48fv2";
};
# Fix installation error when waf tries to put files in /etc/
prePatch = ''
'' + lib.optionalString cyclopsSupport ''
substituteInPlace src/wscript \
--replace "/etc/cyclops" "$out/etc/cyclops" \
--replace "/etc/init.d" "$out/etc/init.d"
'';
nativeBuildInputs = [
wafHook
pkgconfig
swig
]
# The gaiafusion binary inside $out/bin needs a shebangs patch, and
# wrapping with the appropriate $PYTHONPATH
++ lib.optionals (pythonSupport) [
pythonPackages.wrapPython
]
;
buildInputs = [
libyaml
qt4
];
propagatedBuildInputs = []
++ lib.optionals (pythonSupport) [
# This is not exactly specified in upstream's README but it's needed by the
# resulting $out/bin/gaiafusion script
pythonPackages.pyyaml
]
;
wafConfigureFlags = []
++ lib.optionals (pythonSupport) [ "--with-python-bindings" ]
++ lib.optionals (stlfacadeSupport) [ "--with-stlfacade" ]
++ lib.optionals (assertsSupport) [ "--with-asserts" ]
++ lib.optionals (cyclopsSupport) [ "--with-cyclops" ]
;
postFixup = ''
''
+ lib.optionalString pythonSupport ''
wrapPythonPrograms
''
;
meta = with lib; {
homepage = "https://github.com/MTG/gaia";
description = "General library to work with points in a semimetric space";
maintainers = with maintainers; [ doronbehar ];
platforms = platforms.all;
license = licenses.agpl3;
};
}
+57 -12
View File
@@ -1,38 +1,83 @@
{ stdenv, fetchurl, gettext, gobject-introspection, pkgconfig
, meson, ninja, glibcLocales, git, vala, glib, zlib, gnome3
{ stdenv
, fetchurl
, gettext
, gobject-introspection
, gtk-doc
, docbook_xsl
, docbook_xml_dtd_43
, pkgconfig
, meson
, ninja
, git
, vala
, glib
, zlib
, gnome3
, nixosTests
}:
stdenv.mkDerivation rec {
pname = "gcab";
version = "1.2";
version = "1.3";
LC_ALL = "en_US.UTF-8";
outputs = [ "bin" "out" "dev" "devdoc" "installedTests" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "038h5kk41si2hc9d9169rrlvp8xgsxq27kri7hv2vr39gvz9cbas";
sha256 = "1rv81b37d5ya7xpfdxrfk173jjcwabxyng7vafgwyl5myv44qc0h";
};
nativeBuildInputs = [ meson ninja glibcLocales git pkgconfig vala gettext gobject-introspection ];
patches = [
# allow installing installed tests to a separate output
./installed-tests-path.patch
];
buildInputs = [ glib zlib ];
nativeBuildInputs = [
meson
ninja
git
pkgconfig
vala
gettext
gobject-introspection
gtk-doc
docbook_xsl
docbook_xml_dtd_43
];
buildInputs = [
glib
zlib
];
# required by libgcab-1.0.pc
propagatedBuildInputs = [
glib
];
mesonFlags = [
"-Ddocs=false"
"-Dtests=false"
"-Dinstalled_tests=true"
"-Dinstalled_test_prefix=${placeholder ''installedTests''}"
];
doCheck = true;
passthru = {
updateScript = gnome3.updateScript {
packageName = pname;
versionPolicy = "none";
};
tests = {
installedTests = nixosTests.installed-tests.gcab;
};
};
meta = with stdenv.lib; {
description = "GObject library to create cabinet files";
homepage = "https://gitlab.gnome.org/GNOME/gcab";
license = licenses.lgpl21Plus;
maintainers = gnome3.maintainers;
platforms = platforms.linux;
license = licenses.lgpl21;
homepage = "https://wiki.gnome.org/msitools";
maintainers = [ maintainers.lethalman ];
};
}
@@ -0,0 +1,21 @@
diff --git a/meson_options.txt b/meson_options.txt
index c1b1da1..9b76022 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -4,3 +4,4 @@
option('vapi', type : 'boolean', value : true, description: 'generate Vala bindings (requires introspection)')
option('tests', type : 'boolean', value : true, description : 'enable tests')
option('installed_tests', type : 'boolean', value : false, description : 'install tests for "as-installed" testing')
+option('installed_test_prefix', type: 'string', value: '', description: 'Prefix for installed tests')
diff --git a/tests/meson.build b/tests/meson.build
index 1e46e2a..aa780d0 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -1,5 +1,5 @@
-installed_tests_metadir = join_paths(get_option('datadir'), 'installed-tests', 'libgcab-1.0')
-installed_tests_execdir = join_paths(get_option('libexecdir'), 'installed-tests', 'libgcab-1.0')
+installed_tests_metadir = join_paths(get_option('installed_test_prefix'), 'share', 'installed-tests', 'libgcab-1.0')
+installed_tests_execdir = join_paths(get_option('installed_test_prefix'), 'libexec', 'installed-tests', 'libgcab-1.0')
installed_tests_enabled = get_option('installed_tests')
installed_tests_template_tap = files('template-tap.test.in')
abs_installed_tests_execdir = join_paths(get_option('prefix'), installed_tests_execdir)
+7 -11
View File
@@ -1,15 +1,15 @@
{ stdenv, fetchurl, pkgconfig, intltool, gnupg, p11-kit, glib
{ stdenv, fetchurl, pkgconfig, gettext, gnupg, p11-kit, glib
, libgcrypt, libtasn1, dbus-glib, gtk3, pango, gdk-pixbuf, atk
, gobject-introspection, makeWrapper, libxslt, vala, gnome3
, python2 }:
, python3 }:
stdenv.mkDerivation rec {
pname = "gcr";
version = "3.28.1";
version = "3.33.4";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "12qn7mcmxb45lz1gq3s3b34rimiyrrshkrpvxdw1fc0w26i4l84m";
sha256 = "1hf06p4qfyywnb6334ysnr6aqxik3srb37glclvr4yhb3wzrjqnm";
};
passthru = {
@@ -22,17 +22,13 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" ];
nativeBuildInputs = [ pkgconfig intltool gobject-introspection libxslt makeWrapper vala ];
nativeBuildInputs = [ pkgconfig gettext gobject-introspection libxslt makeWrapper vala ];
buildInputs = let
gpg = gnupg.override { guiSupport = false; }; # prevent build cycle with pinentry_gnome
in [
gpg libgcrypt libtasn1 dbus-glib pango gdk-pixbuf atk
];
buildInputs = [ gnupg libgcrypt libtasn1 dbus-glib pango gdk-pixbuf atk ];
propagatedBuildInputs = [ glib gtk3 p11-kit ];
checkInputs = [ python2 ];
checkInputs = [ python3 ];
doCheck = false; # fails 21 out of 603 tests, needs dbus daemon
#enableParallelBuilding = true; issues on hydra
+11 -2
View File
@@ -1,5 +1,5 @@
{ stdenv, fetchurl, fetchpatch, unzip, libjpeg, libtiff, zlib
, postgresql, mysql, libgeotiff, pythonPackages, proj, geos, openssl
, postgresql, libmysqlclient, libgeotiff, pythonPackages, proj, geos, openssl
, libpng, sqlite, libspatialite, poppler, hdf4, qhull, giflib, expat
, libiconv, libxml2
, netcdfSupport ? true, netcdf, hdf5, curl
@@ -16,6 +16,15 @@ stdenv.mkDerivation rec {
sha256 = "09qgy36z0jc9w05373m4n0vm4j54almdzql6z9p9zr9pdp61syf3";
};
patches = [
(fetchpatch {
name = "CVE-2019-17545.patch";
url = "https://github.com/OSGeo/gdal/commit/8cd2d2eb6327cf782a74dae263ffa6f89f46c93d.patch";
stripLen = 1;
sha256 = "06h88a659jcqf6ps1m91qy78s6s9krbkwnz28f5qh7032vlp6qpw";
})
];
buildInputs = [ unzip libjpeg libtiff libgeotiff libpng proj openssl sqlite
libspatialite poppler hdf4 qhull giflib expat libxml2 proj ]
++ (with pythonPackages; [ python numpy wrapPython ])
@@ -30,7 +39,7 @@ stdenv.mkDerivation rec {
"--with-poppler=${poppler.dev}" # optional
"--with-libz=${zlib.dev}" # optional
"--with-pg=${postgresql}/bin/pg_config"
"--with-mysql=${mysql.connector-c or mysql}/bin/mysql_config"
"--with-mysql=${libmysqlclient}/bin/mysql_config"
"--with-geotiff=${libgeotiff.dev}"
"--with-sqlite3=${sqlite.dev}"
"--with-spatialite=${libspatialite}"
+11 -3
View File
@@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, fetchpatch, unzip, libjpeg, libtiff, zlib
, postgresql, mysql, libgeotiff, pythonPackages, proj, geos, openssl
, postgresql, libmysqlclient, libgeotiff, pythonPackages, proj, geos, openssl
, libpng, sqlite, libspatialite, poppler, hdf4, qhull, giflib, expat
, libiconv, libxml2, autoreconfHook
, netcdfSupport ? true, netcdf, hdf5, curl
@@ -20,7 +20,15 @@ stdenv.mkDerivation rec {
sourceRoot = "source/gdal";
patches = [ ./001.3_0_1.darwin.patch ];
patches = [
./001.3_0_1.darwin.patch
(fetchpatch {
name = "CVE-2019-17545.patch";
url = "https://github.com/OSGeo/gdal/commit/148115fcc40f1651a5d15fa34c9a8c528e7147bb.patch";
stripLen = 1;
sha256 = "0hai59hhvrci9xwjw4lp3wc1brn00imngmqrbbs8v9yr3b0fzbgs";
})
];
nativeBuildInputs = [ autoreconfHook ];
@@ -38,7 +46,7 @@ stdenv.mkDerivation rec {
"--with-poppler=${poppler.dev}" # optional
"--with-libz=${zlib.dev}" # optional
"--with-pg=${postgresql}/bin/pg_config"
"--with-mysql=${mysql.connector-c or mysql}/bin/mysql_config"
"--with-mysql=${libmysqlclient}/bin/mysql_config"
"--with-geotiff=${libgeotiff}"
"--with-sqlite3=${sqlite.dev}"
"--with-spatialite=${libspatialite}"
@@ -37,5 +37,6 @@ in stdenv.mkDerivation {
license = licenses.asl20;
platforms = platforms.linux;
broken = true;
};
}
+2 -2
View File
@@ -1,12 +1,12 @@
{ stdenv, fetchurl, cmake, vtk, darwin }:
stdenv.mkDerivation rec {
version = "3.0.1";
version = "3.0.4";
pname = "gdcm";
src = fetchurl {
url = "mirror://sourceforge/gdcm/${pname}-${version}.tar.bz2";
sha256 = "1n206rr28f9ysd5yns6hc6vxwhwj1ck59p2j1wqyclm60zr84isq";
sha256 = "0g46l7fjvn37sg29m0nb7wlnnpnxmlm9ryp7vam26ni02l73paid";
};
dontUseCmakeBuildDir = true;
@@ -1,16 +1,16 @@
{ stdenv, fetchurl, fixDarwinDylibNames, meson, ninja, pkgconfig, gettext, python3, libxml2, libxslt, docbook_xsl
{ stdenv, fetchurl, nixosTests, fixDarwinDylibNames, meson, ninja, pkgconfig, gettext, python3, libxml2, libxslt, docbook_xsl
, docbook_xml_dtd_43, gtk-doc, glib, libtiff, libjpeg, libpng, libX11, gnome3
, jasper, gobject-introspection, doCheck ? false, makeWrapper }:
let
pname = "gdk-pixbuf";
version = "2.38.1";
version = "2.40.0";
in stdenv.mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
sha256 = "0fmbjgjcyym3qg46f64qgl7icdm4ii77flyc1mhk244rp8vgi7zi";
sha256 = "1rnlx9yfw970maxi2x6niaxmih5la11q1ilr7gzshz2kk585k0hm";
};
patches = [
@@ -85,6 +85,10 @@ in stdenv.mkDerivation rec {
packageName = pname;
};
tests = {
installedTests = nixosTests.installed-tests.gdk-pixbuf;
};
# gdk_pixbuf_moduledir variable from gdk-pixbuf-2.0.pc
moduleDir = "lib/gdk-pixbuf-2.0/2.10.0/loaders";
};
+2 -2
View File
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "gdl";
version = "3.28.0";
version = "3.34.0";
src = fetchurl {
url = "mirror://gnome/sources/gdl/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1dipnzqpxl0yfwzl2lqdf6vb3174gb9f1d5jndkq8505q7n9ik2j";
sha256 = "00ldva6wg6s4wlxmisiqzyz8ihsprra7sninx2rlqk6frpq312w5";
};
nativeBuildInputs = [ pkgconfig intltool ];
+106 -14
View File
@@ -1,31 +1,123 @@
{ stdenv, fetchurl, pkgconfig, glib, babl, libpng, cairo, libjpeg, which
, librsvg, pango, gtk, bzip2, json-glib, gettext, autoreconfHook, libraw
, gexiv2, libwebp, libintl }:
{ stdenv
, fetchurl
, fetchpatch
, pkgconfig
, vala
, gobject-introspection
, gtk-doc
, docbook_xsl
, docbook_xml_dtd_43
, glib
, babl
, libpng
, cairo
, libjpeg
, librsvg
, lensfun
, libspiro
, netsurf
, pango
, poly2tri-c
, bzip2
, json-glib
, gettext
, meson
, ninja
, libraw
, gexiv2
, libwebp
, luajit
, openexr
, OpenCL
}:
stdenv.mkDerivation rec {
pname = "gegl";
version = "0.4.16";
version = "0.4.18";
outputs = [ "out" "dev" "devdoc" ];
outputBin = "dev";
src = fetchurl {
url = "https://download.gimp.org/pub/gegl/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
sha256 = "0njydcr6qdmfzh4fxx544681qxdpf7y6b2f47jcypn810dlxy4h1";
url = "https://download.gimp.org/pub/gegl/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0r6akqnrkvxizyhyi8sv40mxm7j4bcwjb6mqjpxy0zzbbfsdyin9";
};
enableParallelBuilding = true;
patches = [
# Fix arch detection.
# https://gitlab.gnome.org/GNOME/gegl/merge_requests/53
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gegl/commit/6bcf95fd0f32cf5e8b1ddbe17b14d9ad049bded8.patch";
sha256 = "0aqdr3y5mr47wq44jnhp97188bvpjlf56zrlmn8aazdf07r2apma";
})
doCheck = true;
buildInputs = [
libpng cairo libjpeg librsvg pango gtk bzip2
libraw libwebp gexiv2
# Fix Darwin build.
# https://gitlab.gnome.org/GNOME/gegl/merge_requests/54
(fetchpatch {
url = "https://gitlab.gnome.org/GNOME/gegl/commit/2bc06bfedee4fb25f6a966c8235b75292e24e55f.patch";
sha256 = "1psls61wsrdq5pzpvj22mrm46lpzrw3wkx6li7dv6fyb65wz2n4d";
})
];
propagatedBuildInputs = [ glib json-glib babl ]; # for gegl-4.0.pc
nativeBuildInputs = [
pkgconfig
gettext
meson
ninja
vala
gobject-introspection
gtk-doc
docbook_xsl
docbook_xml_dtd_43
];
nativeBuildInputs = [ pkgconfig gettext which autoreconfHook libintl ];
buildInputs = [
libpng
cairo
libjpeg
librsvg
lensfun
libspiro
netsurf.libnsgif
pango
poly2tri-c
bzip2
libraw
libwebp
gexiv2
luajit
openexr
] ++ stdenv.lib.optional stdenv.isDarwin OpenCL;
# for gegl-4.0.pc
propagatedBuildInputs = [
glib
json-glib
babl
];
mesonFlags = [
"-Ddocs=true"
"-Dmrg=disabled" # not sure what that is
"-Dsdl2=disabled"
"-Dpygobject=disabled"
"-Dlibav=disabled"
"-Dlibv4l=disabled"
"-Dlibv4l2=disabled"
"-Dumfpack=disabled"
];
# TODO: Fix missing math symbols in gegl seamless clone.
# It only appears when we use packaged poly2tri-c instead of vendored one.
NIX_CFLAGS_COMPILE = [ "-lm" ];
postPatch = ''
chmod +x tests/opencl/opencl_test.sh tests/buffer/buffer-tests-run.sh
patchShebangs tests/ff-load-save/tests_ff_load_save.sh tests/opencl/opencl_test.sh tests/buffer/buffer-tests-run.sh tools/xml_insert.sh
'';
# tests fail to connect to the com.apple.fonts daemon in sandboxed mode
doCheck = !stdenv.isDarwin;
meta = with stdenv.lib; {
description = "Graph-based image processing framework";
@@ -7,14 +7,14 @@ with stdenv.lib;
stdenv.mkDerivation rec {
pname = "geoclue";
version = "2.5.3";
version = "2.5.5";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = pname;
repo = pname;
rev = version;
sha256 = "1wbpi74dw3p7izxwd57irz2i1g55r7wzl5h2yf0ns0hgq2njdfsg";
sha256 = "0a8wmf5v3x4035ixz9jypj7c6qknvs6gjv2zawa3msq1j75rf2r5";
};
patches = [
@@ -43,6 +43,7 @@ stdenv.mkDerivation rec {
"--sysconfdir=/etc"
"-Dsysconfdir_install=${placeholder "out"}/etc"
"-Ddbus-srv-user=geoclue"
"-Ddbus-sys-dir=${placeholder "out"}/share/dbus-1/system.d"
] ++ optionals stdenv.isDarwin [
"-D3g-source=false"
"-Dcdma-source=false"
+25 -17
View File
@@ -1,37 +1,45 @@
# in geoipDatabase, you can insert a package defining ${geoipDatabase}/share/GeoIP
# e.g. geolite-legacy
{ stdenv, fetchFromGitHub, autoreconfHook
, drvName ? "geoip", geoipDatabase ? "/var/lib/geoip-databases" }:
, drvName ? "geoip"
let version = "1.6.12";
dataDir = if (stdenv.lib.isDerivation geoipDatabase) then "${toString geoipDatabase}/share/GeoIP" else geoipDatabase;
in stdenv.mkDerivation {
name = "${drvName}-${version}";
# in geoipDatabase, you can insert a package defining
# "${geoipDatabase}/share/GeoIP" e.g. geolite-legacy
, geoipDatabase ? "/var/lib/geoip-databases"
}:
let
dataDir = if stdenv.lib.isDerivation geoipDatabase
then "${toString geoipDatabase}/share/GeoIP"
else geoipDatabase;
in
stdenv.mkDerivation rec {
pname = drvName;
version = "1.6.12";
src = fetchFromGitHub {
owner = "maxmind";
repo = "geoip-api-c";
rev = "v${version}";
owner = "maxmind";
repo = "geoip-api-c";
rev = "v${version}";
sha256 = "0ixyp3h51alnncr17hqp1p0rlqz9w69nlhm60rbzjjz3vjx52ajv";
};
nativeBuildInputs = [ autoreconfHook ];
# Cross compilation shenanigans
configureFlags = stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
"ac_cv_func_malloc_0_nonnull=yes"
"ac_cv_func_realloc_0_nonnull=yes"
];
# Fix up the default data directory
postConfigure = ''
find . -name Makefile.in -exec sed -i -r 's#^pkgdatadir\s*=.+$#pkgdatadir = ${dataDir}#' {} \;
'';
meta = {
description = "Geolocation API";
maintainers = [ stdenv.lib.maintainers.raskin ];
license = stdenv.lib.licenses.lgpl21;
platforms = stdenv.lib.platforms.unix;
homepage = http://geolite.maxmind.com/;
downloadPage = "http://geolite.maxmind.com/download/";
meta = with stdenv.lib; {
description = "An API for GeoIP/Geolocation databases";
maintainers = with maintainers; [ thoughtpolice raskin ];
license = licenses.lgpl21;
platforms = platforms.unix;
homepage = "http://maxmind.com";
};
}
+2 -2
View File
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, python }:
stdenv.mkDerivation rec {
name = "geos-3.7.2";
name = "geos-3.7.3";
src = fetchurl {
url = "https://download.osgeo.org/geos/${name}.tar.bz2";
sha256 = "01vpkncvq1i1191agq03yg1h7d0igj10gv5z2mqk24nnwrdycri1";
sha256 = "0znaby3fs3fy7af5njrnmjnfsa80ac97fvamlnjiywddw3j5l0q2";
};
enableParallelBuilding = true;
@@ -3,11 +3,12 @@
stdenv.mkDerivation rec {
pname = "getdns";
version = "1.5.1";
version = "1.5.2";
versionRewrite = builtins.splitVersion version;
src = fetchurl {
url = "https://getdnsapi.net/releases/${pname}-1-5-1/${pname}-${version}.tar.gz";
sha256 = "5686e61100599c309ce03535f9899a5a3d94a82cc08d10718e2cd73ad3dc28af";
url = "https://getdnsapi.net/releases/${pname}-${builtins.concatStringsSep "-" versionRewrite}/${pname}-${version}.tar.gz";
sha256 = "1h4l0sbkpiahpx2pd5lby10yi22mdxgx5xf1y80r77pa46iac9hq";
};
nativeBuildInputs = [ libtool m4 autoreconfHook automake file ];
-18
View File
@@ -1,18 +0,0 @@
{stdenv, fetchurl, xmlto, docbook_xml_dtd_412, docbook_xsl, libxml2 }:
stdenv.mkDerivation {
name = "giflib-5.1.4";
src = fetchurl {
url = mirror://sourceforge/giflib/giflib-5.1.4.tar.bz2;
sha256 = "1md83dip8rf29y40cm5r7nn19705f54iraz6545zhwa6y8zyq9yz";
};
buildInputs = [ xmlto docbook_xml_dtd_412 docbook_xsl libxml2 ];
meta = {
description = "A library for reading and writing gif images";
platforms = stdenv.lib.platforms.unix;
license = stdenv.lib.licenses.mit;
maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
branch = "5.1";
};
}
@@ -0,0 +1,33 @@
{ stdenv, fetchurl, fetchpatch, xmlto, docbook_xml_dtd_412, docbook_xsl, libxml2 }:
stdenv.mkDerivation rec {
name = "giflib-5.2.1";
src = fetchurl {
url = "mirror://sourceforge/giflib/${name}.tar.gz";
sha256 = "1gbrg03z1b6rlrvjyc6d41bc8j1bsr7rm8206gb1apscyii5bnii";
};
patches = stdenv.lib.optional stdenv.hostPlatform.isDarwin
(fetchpatch {
# https://sourceforge.net/p/giflib/bugs/133/
name = "darwin-soname.patch";
url = "https://sourceforge.net/p/giflib/bugs/_discuss/thread/4e811ad29b/c323/attachment/Makefile.patch";
sha256 = "12afkqnlkl3n1hywwgx8sqnhp3bz0c5qrwcv8j9hifw1lmfhv67r";
extraPrefix = "./";
});
postPatch = ''
substituteInPlace Makefile \
--replace 'PREFIX = /usr/local' 'PREFIX = ${builtins.placeholder "out"}'
'';
buildInputs = [ xmlto docbook_xml_dtd_412 docbook_xsl libxml2 ];
meta = {
description = "A library for reading and writing gif images";
platforms = stdenv.lib.platforms.unix;
license = stdenv.lib.licenses.mit;
maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
branch = "5.2";
};
}
@@ -0,0 +1,82 @@
{ fetchurl
, stdenv
, pkgconfig
, gnome3
, gtk3
, atk
, gobject-introspection
, spidermonkey_60
, pango
, readline
, glib
, libxml2
, dbus
, gdk-pixbuf
, makeWrapper
}:
stdenv.mkDerivation rec {
pname = "gjs";
version = "1.58.1";
src = fetchurl {
url = "mirror://gnome/sources/gjs/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1xf68rbagkflb9yi3visfw8cbxqlzd717y8jakgw0y6whzm1dpxl";
};
outputs = [ "out" "installedTests" ];
nativeBuildInputs = [
pkgconfig
makeWrapper
];
buildInputs = [
libxml2
gobject-introspection
glib
pango
readline
dbus
];
propagatedBuildInputs = [
spidermonkey_60
];
configureFlags = [
"--enable-installed-tests"
];
postPatch = ''
for f in installed-tests/*.test.in; do
substituteInPlace "$f" --subst-var-by pkglibexecdir "$installedTests/libexec/gjs"
done
'';
postInstall = ''
sed 's|-lreadline|-L${readline.out}/lib -lreadline|g' -i $out/lib/libgjs.la
moveToOutput "share/installed-tests" "$installedTests"
moveToOutput "libexec/gjs/installed-tests" "$installedTests"
wrapProgram "$installedTests/libexec/gjs/installed-tests/minijasmine" \
--prefix GI_TYPELIB_PATH : "${stdenv.lib.makeSearchPath "lib/girepository-1.0" [ gtk3 atk pango.out gdk-pixbuf ]}:$installedTests/libexec/gjs/installed-tests"
'';
separateDebugInfo = stdenv.isLinux;
passthru = {
updateScript = gnome3.updateScript {
packageName = "gjs";
};
};
meta = with stdenv.lib; {
description = "JavaScript bindings for GNOME";
homepage = "https://gitlab.gnome.org/GNOME/gjs/blob/master/doc/Home.md";
license = licenses.lgpl2Plus;
maintainers = gnome3.maintainers;
platforms = platforms.linux;
};
}
+6 -5
View File
@@ -1,16 +1,17 @@
{ stdenv, lib, fetchFromGitHub, cmake, libGL, libXrandr, libXinerama, libXcursor, libX11
{ stdenv, lib, fetchFromGitHub, cmake
, libGL, libXrandr, libXinerama, libXcursor, libX11, libXi, libXext
, Cocoa, Kernel, fixDarwinDylibNames
}:
stdenv.mkDerivation rec {
version = "3.2.1";
version = "3.3";
pname = "glfw";
src = fetchFromGitHub {
owner = "glfw";
repo = "GLFW";
rev = version;
sha256 = "0gq6ad38b3azk0w2yy298yz2vmg2jmf9g0ydidqbmiswpk25ills";
sha256 = "1f1hqpqffzg46z33ybs2c3akmkly7b3qmgp5byk50nvad6g2pm4p";
};
enableParallelBuilding = true;
@@ -19,7 +20,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
buildInputs = [ libX11 libXrandr libXinerama libXcursor ]
buildInputs = [ libX11 libXrandr libXinerama libXcursor libXi libXext ]
++ lib.optionals stdenv.isDarwin [ Cocoa Kernel fixDarwinDylibNames ];
cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
@@ -32,7 +33,7 @@ stdenv.mkDerivation rec {
description = "Multi-platform library for creating OpenGL contexts and managing input, including keyboard, mouse, joystick and time";
homepage = https://www.glfw.org/;
license = licenses.zlib;
maintainers = with maintainers; [ marcweber ];
maintainers = with maintainers; [ marcweber twey ];
platforms = platforms.unix;
};
}
@@ -18,13 +18,13 @@
stdenv.mkDerivation rec {
pname = "glib-networking";
version = "2.60.3";
version = "2.62.1";
outputs = [ "out" "installedTests" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1mfw44qpmwvz6yzj8c6spx6z357wrmkk15byrkc5byagd82860fm";
sha256 = "043imcynl3rwdz79wvpdfhkmqmgdhr34z0vac3x7jymdf5kswm9w";
};
patches = [
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
};
tests = {
installedTests = nixosTests.glib-networking;
installedTests = nixosTests.installed-tests.glib-networking;
};
};
+50 -33
View File
@@ -1,4 +1,4 @@
{ config, stdenv, fetchurl, gettext, meson, ninja, pkgconfig, perl, python3, glibcLocales
{ config, stdenv, fetchurl, gettext, meson, ninja, pkgconfig, perl, python3
, libiconv, zlib, libffi, pcre, libelf, gnome3, libselinux, bash, gnum4, gtk-doc, docbook_xsl, docbook_xml_dtd_45
# use utillinuxMinimal to avoid circular dependency (utillinux, systemd, glib)
, utillinuxMinimal ? null
@@ -8,7 +8,7 @@
, doCheck ? config.doCheckByDefault or false
, coreutils, dbus, libxml2, tzdata
, desktop-file-utils, shared-mime-info
, darwin
, darwin, fetchpatch
}:
with stdenv.lib;
@@ -44,32 +44,53 @@ let
done
ln -sr -t "''${!outputInclude}/include/" "''${!outputInclude}"/lib/*/include/* 2>/dev/null || true
'';
binPrograms = optional (!stdenv.isDarwin) "gapplication" ++ [ "gdbus" "gio" "gsettings" ];
in
stdenv.mkDerivation rec {
pname = "glib";
version = "2.60.7";
version = "2.62.1";
src = fetchurl {
url = "mirror://gnome/sources/glib/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0433m0na8nc4cf0gidf4gfzz8k5d3dsssmh541qkpzcsaspw04lb";
sha256 = "1pzrw2x9r0kyghrvwdbx3nqn2wcrrxy962f5gbdacwh83m705n9x";
};
patches = optional stdenv.isDarwin ./darwin-compilation.patch
++ optional doCheck ./skip-timer-test.patch
++ optionals stdenv.hostPlatform.isMusl [
./quark_init_on_demand.patch
./gobject_init_on_demand.patch
] ++ [
./schema-override-variable.patch
# Require substituteInPlace in postPatch
./fix-gio-launch-desktop-path.patch
];
patches = optionals stdenv.isDarwin [
./darwin-compilation.patch
] ++ optionals stdenv.hostPlatform.isMusl [
./quark_init_on_demand.patch
./gobject_init_on_demand.patch
] ++ [
./schema-override-variable.patch
# Require substituteInPlace in postPatch
./fix-gio-launch-desktop-path.patch
# GLib contains many binaries used for different purposes;
# we will install them to different outputs:
# 1. Tools for desktop environment ($bin)
# * gapplication (non-darwin)
# * gdbus
# * gio
# * gio-launch-desktop (symlink to $out)
# * gsettings
# 2. Development/build tools ($dev)
# * gdbus-codegen
# * gio-querymodules
# * glib-compile-resources
# * glib-compile-schemas
# * glib-genmarshal
# * glib-gettextize
# * glib-mkenums
# * gobject-query
# * gresource
# * gtester
# * gtester-report
# 3. Tools for desktop environment that cannot go to $bin due to $out depending on them ($out)
# * gio-launch-desktop
./split-dev-programs.patch
] ++ optional doCheck ./skip-timer-test.patch;
outputs = [ "bin" "out" "dev" "devdoc" ];
outputBin = "dev";
setupHook = ./setup-hook.sh;
@@ -84,7 +105,7 @@ stdenv.mkDerivation rec {
]);
nativeBuildInputs = [
meson ninja pkgconfig perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45 glibcLocales
meson ninja pkgconfig perl python3 gettext gtk-doc docbook_xsl docbook_xml_dtd_45
];
propagatedBuildInputs = [ zlib libffi gettext libiconv ];
@@ -94,10 +115,9 @@ stdenv.mkDerivation rec {
# Instead we just copy them over from the native output.
"-Dgtk_doc=${if stdenv.hostPlatform == stdenv.buildPlatform then "true" else "false"}"
"-Dnls=enabled"
"-Ddevbindir=${placeholder ''dev''}/bin"
];
LC_ALL = "en_US.UTF-8";
NIX_CFLAGS_COMPILE = [
"-Wno-error=nonnull"
# Default for release buildtype but passed manually because
@@ -111,6 +131,8 @@ stdenv.mkDerivation rec {
chmod +x gio/tests/gengiotypefuncs.py
patchShebangs gio/tests/gengiotypefuncs.py
chmod +x docs/reference/gio/concat-files-helper.py
patchShebangs docs/reference/gio/concat-files-helper.py
patchShebangs glib/gen-unicode-tables.pl
patchShebangs tests/gen-casefold-txt.py
patchShebangs tests/gen-casemap-txt.py
@@ -122,18 +144,6 @@ stdenv.mkDerivation rec {
DETERMINISTIC_BUILD = 1;
postInstall = ''
mkdir -p $bin/bin
for app in ${concatStringsSep " " binPrograms}; do
mv "$dev/bin/$app" "$bin/bin"
done
'' + optionalString (!stdenv.isDarwin) ''
# Add gio-launch-desktop to $out so we can refer to it from $dev
mkdir $out/bin
mv "$dev/bin/gio-launch-desktop" "$out/bin/"
ln -s "$out/bin/gio-launch-desktop" "$bin/bin/"
'' + ''
moveToOutput "share/glib-2.0" "$dev"
substituteInPlace "$dev/bin/gdbus-codegen" --replace "$out" "$dev"
sed -i "$dev/bin/glib-gettextize" -e "s|^gettext_dir=.*|gettext_dir=$dev/share/glib-2.0/gettext|"
@@ -141,6 +151,11 @@ stdenv.mkDerivation rec {
# This file is *included* in gtk3 and would introduce runtime reference via __FILE__.
sed '1i#line 1 "${pname}-${version}/include/glib-2.0/gobject/gobjectnotifyqueue.c"' \
-i "$dev"/include/glib-2.0/gobject/gobjectnotifyqueue.c
'' + optionalString (!stdenv.isDarwin) ''
# Add gio-launch-desktop to $out so we can refer to it from $lib
mkdir $out/bin
mv "$bin/bin/gio-launch-desktop" "$out/bin/"
ln -s "$out/bin/gio-launch-desktop" "$bin/bin/"
'' + optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
cp -r ${buildPackages.glib.devdoc} $devdoc
'';
@@ -173,6 +188,8 @@ stdenv.mkDerivation rec {
inherit doCheck;
separateDebugInfo = stdenv.isLinux;
passthru = rec {
gioModuleDir = "lib/gio/modules";
makeSchemaPath = dir: name: "${dir}/share/gsettings-schemas/${name}/glib-2.0/schemas";
@@ -185,7 +202,7 @@ stdenv.mkDerivation rec {
description = "C library of programming buildings blocks";
homepage = https://www.gtk.org/;
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ lovek323 raskin ];
maintainers = with maintainers; [ lovek323 raskin worldofpeace ];
platforms = platforms.unix;
longDescription = ''
@@ -0,0 +1,154 @@
diff --git a/gio/gdbus-2.0/codegen/meson.build b/gio/gdbus-2.0/codegen/meson.build
index 121e9e6bb..b76fa0188 100644
--- a/gio/gdbus-2.0/codegen/meson.build
+++ b/gio/gdbus-2.0/codegen/meson.build
@@ -16,7 +16,7 @@ gdbus_codegen_conf.set('DATADIR', glib_datadir)
# Install gdbus-codegen executable
gdbus_codegen = configure_file(input : 'gdbus-codegen.in',
output : 'gdbus-codegen',
- install_dir : get_option('bindir'),
+ install_dir : get_option('devbindir'),
configuration : gdbus_codegen_conf
)
# Provide tools for others when we're a subproject and they use the Meson GNOME module
diff --git a/gio/meson.build b/gio/meson.build
index 9a9e621b3..12e1d146a 100644
--- a/gio/meson.build
+++ b/gio/meson.build
@@ -830,14 +830,15 @@ pkg.generate(libgio,
variables : ['datadir=' + join_paths('${prefix}', get_option('datadir')),
'schemasdir=' + join_paths('${datadir}', schemas_subdir),
'bindir=' + join_paths('${prefix}', get_option('bindir')),
+ 'devbindir=' + get_option('devbindir'),
'giomoduledir=' + giomodulesdir,
'gio=' + join_paths('${bindir}', 'gio'),
- 'gio_querymodules=' + join_paths('${bindir}', 'gio-querymodules'),
- 'glib_compile_schemas=' + join_paths('${bindir}', 'glib-compile-schemas'),
- 'glib_compile_resources=' + join_paths('${bindir}', 'glib-compile-resources'),
+ 'gio_querymodules=' + join_paths('${devbindir}', 'gio-querymodules'),
+ 'glib_compile_schemas=' + join_paths('${devbindir}', 'glib-compile-schemas'),
+ 'glib_compile_resources=' + join_paths('${devbindir}', 'glib-compile-resources'),
'gdbus=' + join_paths('${bindir}', 'gdbus'),
- 'gdbus_codegen=' + join_paths('${bindir}', 'gdbus-codegen'),
- 'gresource=' + join_paths('${bindir}', 'gresource'),
+ 'gdbus_codegen=' + join_paths('${devbindir}', 'gdbus-codegen'),
+ 'gresource=' + join_paths('${devbindir}', 'gresource'),
'gsettings=' + join_paths('${bindir}', 'gsettings')],
version : glib_version,
install_dir : glib_pkgconfigreldir,
@@ -938,12 +939,14 @@ executable('gio', gio_tool_sources,
executable('gresource', 'gresource-tool.c',
install : true,
+ install_dir : get_option('devbindir'),
# intl.lib is not compatible with SAFESEH
link_args : noseh_link_args,
dependencies : [libelf, libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodule-priv.c',
install : true,
+ install_dir : get_option('devbindir'),
c_args : gio_c_args,
# intl.lib is not compatible with SAFESEH
link_args : noseh_link_args,
@@ -952,6 +955,7 @@ gio_querymodules = executable('gio-querymodules', 'gio-querymodules.c', 'giomodu
glib_compile_schemas = executable('glib-compile-schemas',
[gconstructor_as_data_h, 'gvdb/gvdb-builder.c', 'glib-compile-schemas.c'],
install : true,
+ install_dir : get_option('devbindir'),
# intl.lib is not compatible with SAFESEH
link_args : noseh_link_args,
dependencies : [libgio_dep, libgobject_dep, libgmodule_dep, libglib_dep])
@@ -959,6 +963,7 @@ glib_compile_schemas = executable('glib-compile-schemas',
glib_compile_resources = executable('glib-compile-resources',
[gconstructor_as_data_h, 'gvdb/gvdb-builder.c', 'glib-compile-resources.c'],
install : true,
+ install_dir : get_option('devbindir'),
c_args : gio_c_args,
# intl.lib is not compatible with SAFESEH
link_args : noseh_link_args,
diff --git a/glib/meson.build b/glib/meson.build
index 91a48f194..80472a06b 100644
--- a/glib/meson.build
+++ b/glib/meson.build
@@ -375,9 +375,10 @@ pkg.generate(libglib,
subdirs : ['glib-2.0'],
extra_cflags : ['-I${libdir}/glib-2.0/include'] + win32_cflags,
variables : ['bindir=' + join_paths('${prefix}', get_option('bindir')),
- 'glib_genmarshal=' + join_paths('${bindir}', 'glib-genmarshal'),
- 'gobject_query=' + join_paths('${bindir}', 'gobject-query'),
- 'glib_mkenums=' + join_paths('${bindir}', 'glib-mkenums')],
+ 'devbindir=' + get_option('devbindir'),
+ 'glib_genmarshal=' + join_paths('${devbindir}', 'glib-genmarshal'),
+ 'gobject_query=' + join_paths('${devbindir}', 'gobject-query'),
+ 'glib_mkenums=' + join_paths('${devbindir}', 'glib-mkenums')],
version : glib_version,
install_dir : glib_pkgconfigreldir,
filebase : 'glib-2.0',
@@ -413,6 +414,7 @@ if host_system == 'windows'
else
gtester = executable('gtester', 'gtester.c',
install : true,
+ install_dir : get_option('devbindir'),
c_args : ['-UG_DISABLE_ASSERT'],
include_directories : configinc,
dependencies : [libglib_dep])
@@ -424,7 +426,7 @@ report_conf.set('PYTHON', python_name)
configure_file(
input: 'gtester-report.in',
output: 'gtester-report',
- install_dir: get_option('bindir'),
+ install_dir: get_option('devbindir'),
configuration: report_conf,
install_mode: 'rwxr-xr-x'
)
diff --git a/gobject/meson.build b/gobject/meson.build
index c7805c556..22ec629a4 100644
--- a/gobject/meson.build
+++ b/gobject/meson.build
@@ -75,7 +75,7 @@ foreach tool: python_tools
input : tool + '.in',
output : tool,
configuration : python_tools_conf,
- install_dir : glib_bindir,
+ install_dir : get_option('devbindir'),
)
# Set variables for later use
@@ -145,6 +145,7 @@ libgobject_dep = declare_dependency(link_with : libgobject,
executable('gobject-query', 'gobject-query.c',
install : true,
+ install_dir : get_option('devbindir'),
dependencies : [libglib_dep, libgobject_dep])
install_data('gobject_gdb.py', install_dir : join_paths(glib_pkgdatadir, 'gdb'))
diff --git a/meson.build b/meson.build
index 717d1bccb..fb0bee8a1 100644
--- a/meson.build
+++ b/meson.build
@@ -2118,7 +2118,7 @@ if have_sh
gettextize_conf.set('datarootdir', glib_datadir)
gettextize_conf.set('datadir', glib_datadir)
configure_file(input : 'glib-gettextize.in',
- install_dir : glib_bindir,
+ install_dir : get_option('devbindir'),
output : 'glib-gettextize',
configuration : gettextize_conf)
endif
diff --git a/meson_options.txt b/meson_options.txt
index 2c831e37e..5d8928577 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -3,6 +3,11 @@ option('runtime_libdir',
value : '',
description : 'install runtime libraries relative to libdir')
+option('devbindir',
+ type : 'string',
+ value : '',
+ description : 'bindir for development tools')
+
option('iconv',
type : 'combo',
choices : ['auto', 'libc', 'external'],
@@ -0,0 +1,146 @@
From 5460617d1567657621107d895ee2dd83bc1f88f2 Mon Sep 17 00:00:00 2001
From: Paul Pluzhnikov <ppluzhnikov@google.com>
Date: Tue, 8 May 2018 18:12:41 -0700
Subject: [PATCH] Fix BZ 22786: integer addition overflow may cause stack
buffer overflow when realpath() input length is close to SSIZE_MAX.
2018-05-09 Paul Pluzhnikov <ppluzhnikov@google.com>
[BZ #22786]
* stdlib/canonicalize.c (__realpath): Fix overflow in path length
computation.
* stdlib/Makefile (test-bz22786): New test.
* stdlib/test-bz22786.c: New test.
---
ChangeLog | 8 +++++
stdlib/Makefile | 2 +-
stdlib/canonicalize.c | 2 +-
stdlib/test-bz22786.c | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 100 insertions(+), 2 deletions(-)
create mode 100644 stdlib/test-bz22786.c
diff --git a/stdlib/Makefile b/stdlib/Makefile
index af1643c..1ddb1f9 100644
--- a/stdlib/Makefile
+++ b/stdlib/Makefile
@@ -84,7 +84,7 @@ tests := tst-strtol tst-strtod testmb testrand testsort testdiv \
tst-cxa_atexit tst-on_exit test-atexit-race \
test-at_quick_exit-race test-cxa_atexit-race \
test-on_exit-race test-dlclose-exit-race \
- tst-makecontext-align
+ tst-makecontext-align test-bz22786
tests-internal := tst-strtod1i tst-strtod3 tst-strtod4 tst-strtod5i \
tst-tls-atexit tst-tls-atexit-nodelete
diff --git a/stdlib/canonicalize.c b/stdlib/canonicalize.c
index 4135f3f..390fb43 100644
--- a/stdlib/canonicalize.c
+++ b/stdlib/canonicalize.c
@@ -181,7 +181,7 @@ __realpath (const char *name, char *resolved)
extra_buf = __alloca (path_max);
len = strlen (end);
- if ((long int) (n + len) >= path_max)
+ if (path_max - n <= len)
{
__set_errno (ENAMETOOLONG);
goto error;
diff --git a/stdlib/test-bz22786.c b/stdlib/test-bz22786.c
new file mode 100644
index 0000000..e7837f9
--- /dev/null
+++ b/stdlib/test-bz22786.c
@@ -0,0 +1,90 @@
+/* Bug 22786: test for buffer overflow in realpath.
+ Copyright (C) 2018 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* This file must be run from within a directory called "stdlib". */
+
+#include <errno.h>
+#include <limits.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <support/test-driver.h>
+#include <libc-diag.h>
+
+static int
+do_test (void)
+{
+ const char dir[] = "bz22786";
+ const char lnk[] = "bz22786/symlink";
+
+ rmdir (dir);
+ if (mkdir (dir, 0755) != 0 && errno != EEXIST)
+ {
+ printf ("mkdir %s: %m\n", dir);
+ return EXIT_FAILURE;
+ }
+ if (symlink (".", lnk) != 0 && errno != EEXIST)
+ {
+ printf ("symlink (%s, %s): %m\n", dir, lnk);
+ return EXIT_FAILURE;
+ }
+
+ const size_t path_len = (size_t) INT_MAX + 1;
+
+ DIAG_PUSH_NEEDS_COMMENT;
+#if __GNUC_PREREQ (7, 0)
+ /* GCC 7 warns about too-large allocations; here we need such
+ allocation to succeed for the test to work. */
+ DIAG_IGNORE_NEEDS_COMMENT (7, "-Walloc-size-larger-than=");
+#endif
+ char *path = malloc (path_len);
+ DIAG_POP_NEEDS_COMMENT;
+
+ if (path == NULL)
+ {
+ printf ("malloc (%zu): %m\n", path_len);
+ return EXIT_UNSUPPORTED;
+ }
+
+ /* Construct very long path = "bz22786/symlink/aaaa....." */
+ char *p = mempcpy (path, lnk, sizeof (lnk) - 1);
+ *(p++) = '/';
+ memset (p, 'a', path_len - (path - p) - 2);
+ p[path_len - (path - p) - 1] = '\0';
+
+ /* This call crashes before the fix for bz22786 on 32-bit platforms. */
+ p = realpath (path, NULL);
+
+ if (p != NULL || errno != ENAMETOOLONG)
+ {
+ printf ("realpath: %s (%m)", p);
+ return EXIT_FAILURE;
+ }
+
+ /* Cleanup. */
+ unlink (lnk);
+ rmdir (dir);
+
+ return 0;
+}
+
+#define TEST_FUNCTION do_test
+#include <support/test-driver.c>
--
2.9.3
@@ -0,0 +1,55 @@
From f51c8367685dc888a02f7304c729ed5277904aff Mon Sep 17 00:00:00 2001
From: Andreas Schwab <schwab@suse.de>
Date: Thu, 24 May 2018 14:39:18 +0200
Subject: [PATCH] Don't write beyond destination in
__mempcpy_avx512_no_vzeroupper (bug 23196)
When compiled as mempcpy, the return value is the end of the destination
buffer, thus it cannot be used to refer to the start of it.
(cherry picked from commit 9aaaab7c6e4176e61c59b0a63c6ba906d875dc0e)
---
ChangeLog | 9 +++++++++
NEWS | 7 +++++++
string/test-mempcpy.c | 1 +
sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S | 5 +++--
4 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/string/test-mempcpy.c b/string/test-mempcpy.c
index c08fba8..d98ecdd 100644
--- a/string/test-mempcpy.c
+++ b/string/test-mempcpy.c
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#define MEMCPY_RESULT(dst, len) (dst) + (len)
+#define MIN_PAGE_SIZE 131072
#define TEST_MAIN
#define TEST_NAME "mempcpy"
#include "test-string.h"
diff --git a/sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S b/sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S
index 23c0f7a..effc3ac 100644
--- a/sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S
+++ b/sysdeps/x86_64/multiarch/memmove-avx512-no-vzeroupper.S
@@ -336,6 +336,7 @@ L(preloop_large):
vmovups (%rsi), %zmm4
vmovups 0x40(%rsi), %zmm5
+ mov %rdi, %r11
/* Align destination for access with non-temporal stores in the loop. */
mov %rdi, %r8
and $-0x80, %rdi
@@ -366,8 +367,8 @@ L(gobble_256bytes_nt_loop):
cmp $256, %rdx
ja L(gobble_256bytes_nt_loop)
sfence
- vmovups %zmm4, (%rax)
- vmovups %zmm5, 0x40(%rax)
+ vmovups %zmm4, (%r11)
+ vmovups %zmm5, 0x40(%r11)
jmp L(check)
L(preloop_large_bkw):
--
2.9.3
+15 -2
View File
@@ -19,7 +19,7 @@
{ stdenv, lib
, buildPackages
, fetchurl ? null
, fetchurl, fetchpatch
, linuxHeaders ? null
, gd ? null, libpng ? null
, bison
@@ -92,10 +92,23 @@ stdenv.mkDerivation ({
url = "https://salsa.debian.org/glibc-team/glibc/raw/49767c9f7de4828220b691b29de0baf60d8a54ec/debian/patches/localedata/locale-C.diff";
sha256 = "0irj60hs2i91ilwg5w7sqrxb695c93xg0ik7yhhq9irprd7fidn4";
})
# https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5460617d1567657621107d895ee2dd83bc1f88f2
./CVE-2018-11236.patch
# https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f51c8367685dc888a02f7304c729ed5277904aff
./CVE-2018-11237.patch
]
++ lib.optional stdenv.isx86_64 ./fix-x64-abi.patch
++ lib.optional stdenv.hostPlatform.isMusl ./fix-rpc-types-musl-conflicts.patch
++ lib.optional stdenv.buildPlatform.isDarwin ./darwin-cross-build.patch;
++ lib.optional stdenv.buildPlatform.isDarwin ./darwin-cross-build.patch
# Remove after upgrading to glibc 2.28+
++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform || stdenv.hostPlatform.isMusl) (fetchpatch {
url = "https://sourceware.org/git/?p=glibc.git;a=patch;h=780684eb04298977bc411ebca1eadeeba4877833";
name = "correct-pwent-parsing-issue-and-resulting-build.patch";
sha256 = "08fja894vzaj8phwfhsfik6jj2pbji7kypy3q8pgxvsd508zdv1q";
excludes = [ "ChangeLog" ];
});
postPatch =
''
+15 -1
View File
@@ -40,7 +40,21 @@ callPackage ./common.nix { inherit stdenv; } {
# limit rebuilds by only disabling pie w/musl
++ stdenv.lib.optional stdenv.hostPlatform.isMusl "pie";
NIX_CFLAGS_COMPILE = if withGd then "-Wno-error=stringop-truncation" else null;
NIX_CFLAGS_COMPILE =
if !stdenv.hostPlatform.isMusl
# TODO: This (returning a string or `null`, instead of a list) is to
# not trigger a mass rebuild due to the introduction of the
# musl-specific flags below.
# At next change to non-musl glibc builds, remove this `then`
# and the above condition, instead keeping only the `else` below.
then (if withGd then "-Wno-error=stringop-truncation" else null)
else
builtins.concatLists [
(stdenv.lib.optional withGd "-Wno-error=stringop-truncation")
# Fix -Werror build failure when building glibc with musl with GCC >= 8, see:
# https://github.com/NixOS/nixpkgs/pull/68244#issuecomment-544307798
(stdenv.lib.optional stdenv.hostPlatform.isMusl "-Wno-error=attribute-alias")
];
# When building glibc from bootstrap-tools, we need libgcc_s at RPATH for
# any program we run, because the gcc will have been placed at a new

Some files were not shown because too many files have changed in this diff Show More