diff options
Diffstat (limited to 'pkgs/development/libraries')
31 files changed, 385 insertions, 976 deletions
diff --git a/pkgs/development/libraries/agda/agda-iowa-stdlib/default.nix b/pkgs/development/libraries/agda/agda-iowa-stdlib/default.nix index ce25521ad2e5..3ab4ed3e9623 100644 --- a/pkgs/development/libraries/agda/agda-iowa-stdlib/default.nix +++ b/pkgs/development/libraries/agda/agda-iowa-stdlib/default.nix @@ -1,13 +1,14 @@ -{ stdenv, agda, fetchsvn }: +{ stdenv, agda, fetchFromGitHub }: agda.mkDerivation (self: rec { - version = "18734"; + version = "1.4.0"; name = "agda-iowa-stdlib-${version}"; - src = fetchsvn { - url = "https://svn.divms.uiowa.edu/repos/clc/projects/agda/lib"; - rev = version; - sha256 = "0aqib88m5n6aqb5lmns9nl62x40yqhg6zpj0zjxibbn4s4qjw9ky"; + src = fetchFromGitHub { + owner = "cedille"; + repo = "ial"; + rev = "v${version}"; + sha256 = "1gwxpybxwdj5ipbb3gapm7r5hfl3g6sj9kp13954pdmx8d5b0gma"; }; sourceDirectories = [ "./." ]; @@ -22,7 +23,5 @@ agda.mkDerivation (self: rec { license = stdenv.lib.licenses.free; platforms = stdenv.lib.platforms.unix; maintainers = with stdenv.lib.maintainers; [ fuuzetsu ]; - - broken = true; }; }) diff --git a/pkgs/development/libraries/arrow-cpp/default.nix b/pkgs/development/libraries/arrow-cpp/default.nix index 16fc7e0c960d..77ce77dee5ad 100644 --- a/pkgs/development/libraries/arrow-cpp/default.nix +++ b/pkgs/development/libraries/arrow-cpp/default.nix @@ -1,42 +1,75 @@ -{ stdenv, symlinkJoin, fetchurl, boost, brotli, cmake, flatbuffers, gtest, gflags, lz4, python, rapidjson, snappy, zlib, zstd }: +{ stdenv, symlinkJoin, fetchurl, fetchFromGitHub, boost, brotli, cmake, double-conversion, flatbuffers, gflags, glog, gtest, lz4, perl, python, rapidjson, snappy, thrift, which, zlib, zstd }: + +let + parquet-testing = fetchFromGitHub { + owner = "apache"; + repo = "parquet-testing"; + rev = "46ae2605c2de306f5740587107dcf333a527f2d1"; + sha256 = "07ps745gas2zcfmg56m3vwl63yyzmalnxwb5dc40vd004cx5hdik"; + }; +in stdenv.mkDerivation rec { name = "arrow-cpp-${version}"; - version = "0.10.0"; + version = "0.11.0"; src = fetchurl { url = "mirror://apache/arrow/arrow-${version}/apache-arrow-${version}.tar.gz"; - sha256 = "0bc4krapz1kzdm16npzmgdz7zvg9lip6rnqbwph8vfn7zji0fcll"; + sha256 = "0pc5pqr0dbnx8s1ji102dhw9bbrsq3ml4ac3mmi2022yfyizlf0q"; }; sourceRoot = "apache-arrow-${version}/cpp"; - # patch to fix python-test - patches = [ ./darwin.patch ]; + patches = [ + # fix ARROW-3467 + ./double-conversion_cmake.patch + + # patch to fix python-test + ./darwin.patch + ]; nativeBuildInputs = [ cmake ]; - buildInputs = [ boost python.pkgs.python python.pkgs.numpy ]; + buildInputs = [ boost double-conversion glog python.pkgs.python python.pkgs.numpy ]; preConfigure = '' + substituteInPlace cmake_modules/FindThrift.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY substituteInPlace cmake_modules/FindBrotli.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY + substituteInPlace cmake_modules/FindGLOG.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY substituteInPlace cmake_modules/FindLz4.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY substituteInPlace cmake_modules/FindSnappy.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY + + patchShebangs build-support/ ''; BROTLI_HOME = symlinkJoin { name="brotli-wrap"; paths = [ brotli.lib brotli.dev ]; }; + DOUBLE_CONVERSION_HOME = double-conversion; FLATBUFFERS_HOME = flatbuffers; - GTEST_HOME = gtest; GFLAGS_HOME = gflags; + GLOG_HOME = glog; + GTEST_HOME = gtest; LZ4_HOME = symlinkJoin { name="lz4-wrap"; paths = [ lz4 lz4.dev ]; }; RAPIDJSON_HOME = rapidjson; SNAPPY_HOME = symlinkJoin { name="snappy-wrap"; paths = [ snappy snappy.dev ]; }; - ZLIB_HOME = symlinkJoin { name="zlib-wrap"; paths = [ zlib.dev zlib.static ]; }; + THRIFT_HOME = thrift; + ZLIB_HOME = symlinkJoin { name="zlib-wrap"; paths = [ zlib zlib.dev ]; }; ZSTD_HOME = zstd; cmakeFlags = [ "-DARROW_PYTHON=ON" + "-DARROW_PARQUET=ON" ]; + doInstallCheck = true; + 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 + install_name_tool -add_rpath "$out"/lib "$f" + done + '') + '' + ctest -L unittest -V + ''; + meta = { description = "A cross-language development platform for in-memory data"; homepage = https://arrow.apache.org/; diff --git a/pkgs/development/libraries/arrow-cpp/double-conversion_cmake.patch b/pkgs/development/libraries/arrow-cpp/double-conversion_cmake.patch new file mode 100644 index 000000000000..336fdde9e8fb --- /dev/null +++ b/pkgs/development/libraries/arrow-cpp/double-conversion_cmake.patch @@ -0,0 +1,43 @@ +diff --git a/CMakeLists.txt b/cpp/CMakeLists.txt +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -615,7 +615,7 @@ endif(UNIX) + set(ARROW_LINK_LIBS) + + # Libraries to link statically with libarrow.so +-set(ARROW_STATIC_LINK_LIBS double-conversion) ++set(ARROW_STATIC_LINK_LIBS ${DOUBLE_CONVERSION_TARGET}) + + if (ARROW_WITH_BROTLI) + SET(ARROW_STATIC_LINK_LIBS +@@ -694,7 +694,7 @@ else () + set(ARROW_MIN_TEST_LIBS + arrow_shared + ${ARROW_LINK_LIBS} +- double-conversion ++ ${DOUBLE_CONVERSION_TARGET} + ${BOOST_SYSTEM_LIBRARY} + ${BOOST_FILESYSTEM_LIBRARY} + ${BOOST_REGEX_LIBRARY} +diff --git a/cmake_modules/ThirdpartyToolchain.cmake b/cpp/cmake_modules/ThirdpartyToolchain.cmake +--- a/cmake_modules/ThirdpartyToolchain.cmake ++++ b/cmake_modules/ThirdpartyToolchain.cmake +@@ -469,14 +469,16 @@ if("${DOUBLE_CONVERSION_HOME}" STREQUAL "") + set(DOUBLE_CONVERSION_VENDORED 1) + else() + find_package(double-conversion REQUIRED) ++ set(DOUBLE_CONVERSION_TARGET double-conversion::double-conversion) + set(DOUBLE_CONVERSION_VENDORED 0) + endif() + + include_directories(SYSTEM ${DOUBLE_CONVERSION_INCLUDE_DIR}) +-ADD_THIRDPARTY_LIB(double-conversion +- STATIC_LIB ${DOUBLE_CONVERSION_STATIC_LIB}) + + if (DOUBLE_CONVERSION_VENDORED) ++ ADD_THIRDPARTY_LIB(double-conversion ++ STATIC_LIB ${DOUBLE_CONVERSION_STATIC_LIB}) ++ set(DOUBLE_CONVERSION_TARGET double-conversion) + add_dependencies(arrow_dependencies double-conversion_ep) + endif() + diff --git a/pkgs/development/libraries/gpgme/default.nix b/pkgs/development/libraries/gpgme/default.nix index 416ecb5631ed..8e7d10782157 100644 --- a/pkgs/development/libraries/gpgme/default.nix +++ b/pkgs/development/libraries/gpgme/default.nix @@ -14,11 +14,11 @@ in stdenv.mkDerivation rec { name = "gpgme-${version}"; - version = "1.11.1"; + version = "1.12.0"; src = fetchurl { url = "mirror://gnupg/gpgme/${name}.tar.bz2"; - sha256 = "0vxx5xaag3rhp4g2arp5qm77gvz4kj0m3hnpvhkdvqyjfhbi26rd"; + sha256 = "1n4c1q2ls7sqx1vpr3p5n8vbjkw6kqp8jxqa28p0x9j36wf9bp5l"; }; outputs = [ "out" "dev" "info" ]; @@ -49,7 +49,7 @@ stdenv.mkDerivation rec { checkInputs = [ which ]; - doCheck = false; # fails 8 out of 26 tests with "GPGME: Decryption failed". Spooky! + doCheck = true; meta = with stdenv.lib; { homepage = https://gnupg.org/software/gpgme/index.html; diff --git a/pkgs/development/libraries/libbsd/cdefs.patch b/pkgs/development/libraries/libbsd/cdefs.patch deleted file mode 100644 index 81822654aeb4..000000000000 --- a/pkgs/development/libraries/libbsd/cdefs.patch +++ /dev/null @@ -1,222 +0,0 @@ -From 11ec8f1e5dfa1c10e0c9fb94879b6f5b96ba52dd Mon Sep 17 00:00:00 2001 -From: Guillem Jover <guillem@hadrons.org> -Date: Tue, 6 Mar 2018 01:41:35 +0100 -Subject: Handle systems missing <sys/cdefs.h> - -This is a non-portable header, and we cannot expect it to be provided by -the system libc (e.g. musl). We just need and rely on declaration that -we have defined ourselves in our own <bsd/sys/cdefs.h>. So we switch to -only ever assume that. - -Fixes: https://bugs.freedesktop.org/105281 ---- - include/bsd/libutil.h | 4 ++++ - include/bsd/md5.h | 4 ++++ - include/bsd/nlist.h | 4 ++++ - include/bsd/readpassphrase.h | 4 ++++ - include/bsd/stdlib.h | 4 ++++ - include/bsd/string.h | 4 ++++ - include/bsd/stringlist.h | 5 +++++ - include/bsd/sys/queue.h | 4 ++++ - include/bsd/sys/tree.h | 4 ++++ - include/bsd/timeconv.h | 4 ++++ - include/bsd/vis.h | 4 ++++ - include/bsd/wchar.h | 4 ++++ - 12 files changed, 49 insertions(+) - -diff --git a/include/bsd/libutil.h b/include/bsd/libutil.h -index 45b3b15..ccca29a 100644 ---- a/include/bsd/libutil.h -+++ b/include/bsd/libutil.h -@@ -40,7 +40,11 @@ - #define LIBBSD_LIBUTIL_H - - #include <features.h> -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - #include <sys/types.h> - #include <stdint.h> - #include <stdio.h> -diff --git a/include/bsd/md5.h b/include/bsd/md5.h -index 5f3ae46..bf36a30 100644 ---- a/include/bsd/md5.h -+++ b/include/bsd/md5.h -@@ -27,7 +27,11 @@ typedef struct MD5Context { - uint8_t buffer[MD5_BLOCK_LENGTH]; /* input buffer */ - } MD5_CTX; - -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - #include <sys/types.h> - - __BEGIN_DECLS -diff --git a/include/bsd/nlist.h b/include/bsd/nlist.h -index cb297e8..8767117 100644 ---- a/include/bsd/nlist.h -+++ b/include/bsd/nlist.h -@@ -27,7 +27,11 @@ - #ifndef LIBBSD_NLIST_H - #define LIBBSD_NLIST_H - -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - - struct nlist { - union { -diff --git a/include/bsd/readpassphrase.h b/include/bsd/readpassphrase.h -index 14744b8..5eb8021 100644 ---- a/include/bsd/readpassphrase.h -+++ b/include/bsd/readpassphrase.h -@@ -31,7 +31,11 @@ - #define RPP_SEVENBIT 0x10 /* Strip the high bit from input. */ - #define RPP_STDIN 0x20 /* Read from stdin, not /dev/tty */ - -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - #include <sys/types.h> - - __BEGIN_DECLS -diff --git a/include/bsd/stdlib.h b/include/bsd/stdlib.h -index ebc9638..8d33d1f 100644 ---- a/include/bsd/stdlib.h -+++ b/include/bsd/stdlib.h -@@ -42,7 +42,11 @@ - #ifndef LIBBSD_STDLIB_H - #define LIBBSD_STDLIB_H - -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - #include <sys/stat.h> - #include <stdint.h> - -diff --git a/include/bsd/string.h b/include/bsd/string.h -index 6798bf6..29097f6 100644 ---- a/include/bsd/string.h -+++ b/include/bsd/string.h -@@ -33,7 +33,11 @@ - #ifndef LIBBSD_STRING_H - #define LIBBSD_STRING_H - -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - #include <sys/types.h> - - __BEGIN_DECLS -diff --git a/include/bsd/stringlist.h b/include/bsd/stringlist.h -index ff30cac..dd71496 100644 ---- a/include/bsd/stringlist.h -+++ b/include/bsd/stringlist.h -@@ -31,7 +31,12 @@ - - #ifndef LIBBSD_STRINGLIST_H - #define LIBBSD_STRINGLIST_H -+ -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - #include <sys/types.h> - - /* -diff --git a/include/bsd/sys/queue.h b/include/bsd/sys/queue.h -index 4a94ea7..ac00026 100644 ---- a/include/bsd/sys/queue.h -+++ b/include/bsd/sys/queue.h -@@ -33,7 +33,11 @@ - #ifndef LIBBSD_SYS_QUEUE_H - #define LIBBSD_SYS_QUEUE_H - -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - - /* - * This file defines four types of data structures: singly-linked lists, -diff --git a/include/bsd/sys/tree.h b/include/bsd/sys/tree.h -index 628bec0..325b382 100644 ---- a/include/bsd/sys/tree.h -+++ b/include/bsd/sys/tree.h -@@ -30,7 +30,11 @@ - #ifndef LIBBSD_SYS_TREE_H - #define LIBBSD_SYS_TREE_H - -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - - /* - * This file defines data structures for different types of trees: -diff --git a/include/bsd/timeconv.h b/include/bsd/timeconv.h -index e2a2c55..a426bd3 100644 ---- a/include/bsd/timeconv.h -+++ b/include/bsd/timeconv.h -@@ -41,7 +41,11 @@ - #ifndef LIBBSD_TIMECONV_H - #define LIBBSD_TIMECONV_H - -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - #include <stdint.h> - #include <time.h> - -diff --git a/include/bsd/vis.h b/include/bsd/vis.h -index 970dfdd..ab5430c 100644 ---- a/include/bsd/vis.h -+++ b/include/bsd/vis.h -@@ -72,7 +72,11 @@ - */ - #define UNVIS_END 1 /* no more characters */ - -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - - __BEGIN_DECLS - char *vis(char *, int, int, int); -diff --git a/include/bsd/wchar.h b/include/bsd/wchar.h -index 33a500e..7216503 100644 ---- a/include/bsd/wchar.h -+++ b/include/bsd/wchar.h -@@ -40,7 +40,11 @@ - #define LIBBSD_WCHAR_H - - #include <stddef.h> -+#ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> -+#else -+#include <bsd/sys/cdefs.h> -+#endif - #include <sys/types.h> - - __BEGIN_DECLS --- -cgit v1.1 - diff --git a/pkgs/development/libraries/libbsd/darwin.patch b/pkgs/development/libraries/libbsd/darwin.patch index 4bddec6b0ffd..0f9cc9aaf964 100644 --- a/pkgs/development/libraries/libbsd/darwin.patch +++ b/pkgs/development/libraries/libbsd/darwin.patch @@ -1,497 +1,103 @@ diff --git a/configure.ac b/configure.ac -index 88ccd91..0857782 100644 +index 55fcfe6..1e26c93 100644 --- a/configure.ac +++ b/configure.ac -@@ -59,7 +59,7 @@ AS_CASE([$host_os], - ) +@@ -51,15 +51,19 @@ AS_CASE([$host_os], + AC_SEARCH_LIBS([clock_gettime], [rt], [CLOCK_GETTIME_LIBS="-lrt"]) + AC_SUBST([CLOCK_GETTIME_LIBS]) + LIBS="$saved_LIBS" ++ AM_CONDITIONAL([BUILD_LINK_VERSION_SCRIPT], [1]) + ], + [*-musl*], [ + # Upstream refuses to define this, we will do it ourselves then. + AC_DEFINE([__MUSL__], [1], [Define to 1 if we are building for musl]) ++ AM_CONDITIONAL([BUILD_LINK_VERSION_SCRIPT], [1]) + ], +-) ++ [ ++ AM_CONDITIONAL([BUILD_LINK_VERSION_SCRIPT], [1]) ++ ]) # Checks for header files. -AC_CHECK_HEADERS([sys/ndir.h sys/dir.h ndir.h dirent.h]) -+AC_CHECK_HEADERS([sys/ndir.h sys/dir.h ndir.h dirent.h stdio_ext.h]) ++AC_CHECK_HEADERS([sys/ndir.h sys/dir.h ndir.h dirent.h nlist.h]) # Checks for typedefs, structures, and compiler characteristics. AC_C_INLINE -@@ -146,6 +146,31 @@ AC_CHECK_FUNCS([clearenv dirfd fopencookie __fpurge \ - pstat_getproc sysconf]) +@@ -143,7 +147,8 @@ AC_LINK_IFELSE( + + AC_CHECK_FUNCS([clearenv dirfd fopencookie __fpurge \ + getauxval getentropy getexecname getline \ +- pstat_getproc sysconf]) ++ pstat_getproc sysconf \ ++ strlcpy strlcat strnstr strmode fpurge]) AM_CONDITIONAL([HAVE_GETENTROPY], [test "x$ac_cv_func_getentropy" = "xtrue"]) -+HostOS=`echo "$host" | sed 's/.*-//'` -+os_is_macosx=false -+nonLinuxOS=false -+AC_SUBST(HostOS) -+case ${HostOS} in -+ darwin* | powerpc*-*-darwin* | freebsd* | netbsd* | openbsd*) -+ os_is_macosx=true -+ nonLinuxOS=true -+ echo HostOS="$HostOS" -+ ;; -+ *) -+ echo host="$host" -+ echo HostOS="$HostOS" -+ os_is_macosx=false -+ nonLinuxOS=false -+ ;; -+esac -+AM_CONDITIONAL([IS_DARWIN], [test x$os_is_macosx = xtrue]) -+AM_COND_IF([IS_DARWIN], -+ [AC_DEFINE([IS_DARWIN], [1], [Get HostOS Type is Darwin])]) -+ -+AM_CONDITIONAL([NON_LINUX], [test x$userdefine_gethostbyname_r = xtrue]) -+AM_COND_IF([NON_LINUX], -+ [AC_DEFINE([NON_LINUX], [1], [Get HostOS Type])]) -+ AC_CONFIG_FILES([ - Makefile - include/Makefile -diff --git a/include/bsd/libutil.h b/include/bsd/libutil.h -index 45b3b15..d0d4043 100644 ---- a/include/bsd/libutil.h -+++ b/include/bsd/libutil.h -@@ -39,7 +39,9 @@ - #ifndef LIBBSD_LIBUTIL_H - #define LIBBSD_LIBUTIL_H - -+#ifdef HAVE_FEATURES_H - #include <features.h> -+#endif - #include <sys/cdefs.h> - #include <sys/types.h> - #include <stdint.h> -diff --git a/include/bsd/stdio.h b/include/bsd/stdio.h -index 4b69983..c75151b 100644 ---- a/include/bsd/stdio.h -+++ b/include/bsd/stdio.h -@@ -48,12 +48,16 @@ - __BEGIN_DECLS - const char *fmtcheck(const char *, const char *); - -+#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX) - /* XXX: The function requires cooperation from the system libc to store the - * line buffer in the FILE struct itself. */ - char *fgetln(FILE *fp, size_t *lenp) -- LIBBSD_DEPRECATED("This functions cannot be safely ported, " -- "use getline(3) instead, as it is supported " -- "by GNU and POSIX.1-2008."); -+ __attribute__((deprecated("This functions cannot be safely ported, " -+ "use getline(3) instead, as it is supported " -+ "by GNU and POSIX.1-2008."))); -+#else -+char *fgetln(FILE *fp, size_t *lenp); -+#endif - - /* - * Note: We diverge from the FreeBSD, OpenBSD and DragonFlyBSD declarations, -diff --git a/include/bsd/stdlib.h b/include/bsd/stdlib.h -index ebc9638..6cd7943 100644 ---- a/include/bsd/stdlib.h -+++ b/include/bsd/stdlib.h -@@ -67,9 +67,11 @@ int sradixsort(const unsigned char **base, int nmemb, - const unsigned char *table, unsigned endbyte); - - void *reallocf(void *ptr, size_t size); --#if defined(_GNU_SOURCE) && defined(__GLIBC__) && !__GLIBC_PREREQ(2, 26) -+#if defined(_GNU_SOURCE) && defined(__GLIBC__) && defined(__GLIBC_PREREQ) -+#if !__GLIBC_PREREQ(2, 26) - void *reallocarray(void *ptr, size_t nmemb, size_t size); - #endif -+#endif - - long long strtonum(const char *nptr, long long minval, long long maxval, - const char **errstr); diff --git a/include/bsd/string.h b/include/bsd/string.h -index 6798bf6..6baaa14 100644 +index f987fee..a1e17ed 100644 --- a/include/bsd/string.h +++ b/include/bsd/string.h -@@ -37,6 +37,12 @@ +@@ -41,10 +41,21 @@ #include <sys/types.h> __BEGIN_DECLS -+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX) -+size_t bsd_strlcpy(char *dst, const char *src, size_t siz); -+size_t bsd_strlcat(char *dst, const char *src, size_t siz); -+char *bsd_strnstr(const char *str, const char *find, size_t str_len); -+void bsd_strmode(mode_t mode, char *str); -+#else ++#if !HAVE_STRLCPY size_t strlcpy(char *dst, const char *src, size_t siz); ++#endif ++ ++#if !HAVE_STRLCAT size_t strlcat(char *dst, const char *src, size_t siz); ++#endif ++ ++#if !HAVE_STRNSTR char *strnstr(const char *str, const char *find, size_t str_len); -@@ -45,6 +51,7 @@ void strmode(mode_t mode, char *str); - #if defined(_GNU_SOURCE) && defined(__GLIBC__) && !__GLIBC_PREREQ(2, 25) - void explicit_bzero(void *buf, size_t len); - #endif +#endif - __END_DECLS ++ ++#if !HAVE_STRMODE + void strmode(mode_t mode, char *str); ++#endif - #endif + #if !defined(__GLIBC__) || \ + (defined(__GLIBC__) && (!__GLIBC_PREREQ(2, 25) || !defined(_GNU_SOURCE))) diff --git a/src/Makefile.am b/src/Makefile.am -index ad83dbf..0f2a7ee 100644 +index f3cc0fa..3aaecd4 100644 --- a/src/Makefile.am +++ b/src/Makefile.am -@@ -54,17 +54,21 @@ libbsd_la_DEPENDENCIES = \ - libbsd.map +@@ -56,8 +56,10 @@ libbsd_la_DEPENDENCIES = \ libbsd_la_LIBADD = \ $(CLOCK_GETTIME_LIBS) -+ -+if IS_DARWIN -+libbsd_la_LDFLAGS = \ -+ -Wl \ -+ -version-number $(LIBBSD_ABI) -+else libbsd_la_LDFLAGS = \ - -Wl,--version-script=$(srcdir)/libbsd.map \ +- -Wl,--version-script=$(srcdir)/libbsd.map \ -version-number $(LIBBSD_ABI) ++if BUILD_LINK_VERSION_SCRIPT ++libbsd_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libbsd.map +endif -+ libbsd_la_SOURCES = \ arc4random.c \ -- arc4random.h \ -- arc4random_unix.h \ -- arc4random_openbsd.h \ - arc4random_uniform.c \ - bsd_getopt.c \ -- chacha_private.h \ - closefrom.c \ - dehumanize_number.c \ - err.c \ -@@ -117,6 +121,15 @@ libbsd_la_SOURCES += \ - $(nil) - endif - -+noinst_HEADERS = \ -+ arc4random.h \ -+ arc4random_bsd.h \ -+ arc4random_linux.h \ -+ arc4random_unix.h \ -+ arc4random_osx.h \ -+ arc4random_openbsd.h \ -+ chacha_private.h -+ - libbsd_ctor_a_SOURCES = \ - setproctitle_ctor.c \ - $(nil) -diff --git a/src/arc4random_bsd.h b/src/arc4random_bsd.h -new file mode 100644 -index 0000000..ece2f85 ---- /dev/null -+++ b/src/arc4random_bsd.h -@@ -0,0 +1,86 @@ -+/* $OpenBSD: arc4random_freebsd.h,v 1.2 2015/01/15 06:57:18 deraadt Exp $ */ -+ -+/* -+ * Copyright (c) 1996, David Mazieres <dm@uun.org> -+ * Copyright (c) 2008, Damien Miller <djm@openbsd.org> -+ * Copyright (c) 2013, Markus Friedl <markus@openbsd.org> -+ * Copyright (c) 2014, Theo de Raadt <deraadt@openbsd.org> -+ * -+ * Permission to use, copy, modify, and distribute this software for any -+ * purpose with or without fee is hereby granted, provided that the above -+ * copyright notice and this permission notice appear in all copies. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -+ */ -+ -+/* -+ * Stub functions for portability. -+ */ -+ -+#include <sys/mman.h> -+ -+#include <pthread.h> -+#include <signal.h> -+ -+static pthread_mutex_t arc4random_mtx = PTHREAD_MUTEX_INITIALIZER; -+#define _ARC4_LOCK() pthread_mutex_lock(&arc4random_mtx) -+#define _ARC4_UNLOCK() pthread_mutex_unlock(&arc4random_mtx) -+ -+/* -+ * Unfortunately, pthread_atfork() is broken on FreeBSD (at least 9 and 10) if -+ * a program does not link to -lthr. Callbacks registered with pthread_atfork() -+ * appear to fail silently. So, it is not always possible to detect a PID -+ * wraparound. -+ */ -+#define _ARC4_ATFORK(f) pthread_atfork(NULL, NULL, (f)) -+ -+static inline void -+_getentropy_fail(void) -+{ -+ raise(SIGKILL); -+} -+ -+static volatile sig_atomic_t _rs_forked; -+ -+static inline void -+_rs_forkhandler(void) -+{ -+ _rs_forked = 1; -+} -+ -+static inline void -+_rs_forkdetect(void) -+{ -+ static pid_t _rs_pid = 0; -+ pid_t pid = getpid(); -+ -+ if (_rs_pid == 0 || _rs_pid != pid || _rs_forked) { -+ _rs_pid = pid; -+ _rs_forked = 0; -+ if (rs) -+ memset(rs, 0, sizeof(*rs)); -+ } -+} -+ -+static inline int -+_rs_allocate(struct _rs **rsp, struct _rsx **rsxp) -+{ -+ if ((*rsp = mmap(NULL, sizeof(**rsp), PROT_READ|PROT_WRITE, -+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) -+ return (-1); -+ -+ if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, -+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { -+ munmap(*rsp, sizeof(**rsp)); -+ return (-1); -+ } -+ -+ _ARC4_ATFORK(_rs_forkhandler); -+ return (0); -+} -diff --git a/src/arc4random_linux.h b/src/arc4random_linux.h -new file mode 100644 -index 0000000..d61a8db ---- /dev/null -+++ b/src/arc4random_linux.h -@@ -0,0 +1,86 @@ -+/* $OpenBSD: arc4random_linux.h,v 1.8 2014/08/13 06:04:10 deraadt Exp $ */ -+ -+/* -+ * Copyright (c) 1996, David Mazieres <dm@uun.org> -+ * Copyright (c) 2008, Damien Miller <djm@openbsd.org> -+ * Copyright (c) 2013, Markus Friedl <markus@openbsd.org> -+ * Copyright (c) 2014, Theo de Raadt <deraadt@openbsd.org> -+ * -+ * Permission to use, copy, modify, and distribute this software for any -+ * purpose with or without fee is hereby granted, provided that the above -+ * copyright notice and this permission notice appear in all copies. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -+ */ -+ -+/* -+ * Stub functions for portability. -+ */ -+ -+#include <sys/mman.h> -+ -+#include <pthread.h> -+#include <signal.h> -+ -+static pthread_mutex_t arc4random_mtx = PTHREAD_MUTEX_INITIALIZER; -+#define _ARC4_LOCK() pthread_mutex_lock(&arc4random_mtx) -+#define _ARC4_UNLOCK() pthread_mutex_unlock(&arc4random_mtx) -+ -+#ifdef __GLIBC__ -+extern void *__dso_handle; -+extern int __register_atfork(void (*)(void), void(*)(void), void (*)(void), void *); -+#define _ARC4_ATFORK(f) __register_atfork(NULL, NULL, (f), __dso_handle) -+#else -+#define _ARC4_ATFORK(f) pthread_atfork(NULL, NULL, (f)) -+#endif -+ -+static inline void -+_getentropy_fail(void) -+{ -+ raise(SIGKILL); -+} -+ -+static volatile sig_atomic_t _rs_forked; -+ -+static inline void -+_rs_forkhandler(void) -+{ -+ _rs_forked = 1; -+} -+ -+static inline void -+_rs_forkdetect(void) -+{ -+ static pid_t _rs_pid = 0; -+ pid_t pid = getpid(); -+ -+ if (_rs_pid == 0 || _rs_pid != pid || _rs_forked) { -+ _rs_pid = pid; -+ _rs_forked = 0; -+ if (rs) -+ memset(rs, 0, sizeof(*rs)); -+ } -+} -+ -+static inline int -+_rs_allocate(struct _rs **rsp, struct _rsx **rsxp) -+{ -+ if ((*rsp = mmap(NULL, sizeof(**rsp), PROT_READ|PROT_WRITE, -+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) -+ return (-1); -+ -+ if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, -+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { -+ munmap(*rsp, sizeof(**rsp)); -+ return (-1); -+ } -+ -+ _ARC4_ATFORK(_rs_forkhandler); -+ return (0); -+} -diff --git a/src/arc4random_osx.h b/src/arc4random_osx.h -new file mode 100644 -index 0000000..14771a6 ---- /dev/null -+++ b/src/arc4random_osx.h -@@ -0,0 +1,82 @@ -+/* $OpenBSD: arc4random_osx.h,v 1.10 2015/09/11 11:52:55 deraadt Exp $ */ -+ -+/* -+ * Copyright (c) 1996, David Mazieres <dm@uun.org> -+ * Copyright (c) 2008, Damien Miller <djm@openbsd.org> -+ * Copyright (c) 2013, Markus Friedl <markus@openbsd.org> -+ * Copyright (c) 2014, Theo de Raadt <deraadt@openbsd.org> -+ * -+ * Permission to use, copy, modify, and distribute this software for any -+ * purpose with or without fee is hereby granted, provided that the above -+ * copyright notice and this permission notice appear in all copies. -+ * -+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -+ */ -+ -+/* -+ * Stub functions for portability. -+ */ -+ -+#include <sys/mman.h> -+ -+#include <unistd.h> -+#include <pthread.h> -+#include <signal.h> -+ -+static pthread_mutex_t arc4random_mtx = PTHREAD_MUTEX_INITIALIZER; -+#define _ARC4_LOCK() pthread_mutex_lock(&arc4random_mtx) -+#define _ARC4_UNLOCK() pthread_mutex_unlock(&arc4random_mtx) -+ -+#define _ARC4_ATFORK(f) pthread_atfork(NULL, NULL, (f)) -+ -+static inline void -+_getentropy_fail(void) -+{ -+ raise(SIGKILL); -+} -+ -+static volatile sig_atomic_t _rs_forked; -+ -+static inline void -+_rs_forkhandler(void) -+{ -+ _rs_forked = 1; -+} -+ -+static inline void -+_rs_forkdetect(void) -+{ -+ static pid_t _rs_pid = 0; -+ pid_t pid = getpid(); -+ -+ if (_rs_pid == 0 || _rs_pid != pid || _rs_forked) { -+ _rs_pid = pid; -+ _rs_forked = 0; -+ if (rs) -+ memset(rs, 0, sizeof(*rs)); -+ } -+} -+ -+static inline int -+_rs_allocate(struct _rs **rsp, struct _rsx **rsxp) -+{ -+ if ((*rsp = mmap(NULL, sizeof(**rsp), PROT_READ|PROT_WRITE, -+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) -+ return (-1); -+ -+ if ((*rsxp = mmap(NULL, sizeof(**rsxp), PROT_READ|PROT_WRITE, -+ MAP_ANON|MAP_PRIVATE, -1, 0)) == MAP_FAILED) { -+ munmap(*rsp, sizeof(**rsp)); -+ *rsp = NULL; -+ return (-1); -+ } -+ -+ _ARC4_ATFORK(_rs_forkhandler); -+ return (0); -+} -diff --git a/src/fgetln.c b/src/fgetln.c -index 4d1726e..9c73788 100644 ---- a/src/fgetln.c -+++ b/src/fgetln.c -@@ -30,7 +30,9 @@ - #include <sys/types.h> - #include <string.h> - -+#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX) - #include "local-link.h" -+#endif - - #ifdef HAVE_GETLINE - struct filebuf { -@@ -75,9 +77,11 @@ fgetln(FILE *stream, size_t *len) - return fb->buf; - } - } -+#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX) - libbsd_link_warning(fgetln, - "This functions cannot be safely ported, use getline(3) " - "instead, as it is supported by GNU and POSIX.1-2008.") -+#endif - #else - #error "Function fgetln() needs to be ported." - #endif + arc4random.h \ diff --git a/src/fpurge.c b/src/fpurge.c -index 462535a..e7eb46f 100644 +index 462535a..a8941db 100644 --- a/src/fpurge.c +++ b/src/fpurge.c -@@ -26,9 +26,11 @@ +@@ -26,9 +26,10 @@ #include <errno.h> #include <stdio.h> -+#if HAVE___FPURGE - #include <stdio_ext.h> -+#endif +-#include <stdio_ext.h> --#ifdef HAVE___FPURGE -+#ifdef HAVE___FPURGE /* glibc >= 2.2, Haiku, Solaris >= 7 */ + #ifdef HAVE___FPURGE ++#include <stdio_ext.h> ++ int fpurge(FILE *fp) { -@@ -42,5 +44,55 @@ fpurge(FILE *fp) +@@ -41,6 +42,36 @@ fpurge(FILE *fp) + return 0; } - #else --#error "Function fpurge() needs to be ported." -+#define fp_ fp -+//#error "Function fpurge() needs to be ported." -+//#elif HAVE_FPURGE /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin 1.7 */ ++/* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin 1.7 */ ++#elif HAVE_FPURGE +int +fpurge(FILE *fp) +{ @@ -501,12 +107,13 @@ index 462535a..e7eb46f 100644 + } + + /* Call the system's fpurge function. */ -+# undef fpurge -+# if !HAVE_DECL_FPURGE ++#undef fpurge ++#if !HAVE_DECL_FPURGE + extern int fpurge (FILE *); -+# endif ++#endif + int result = fpurge (fp); -+# if defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */ ++/* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */ ++#if defined(__sferror) || defined(__DragonFly__) + if (result == 0) + /* Correct the invariants that fpurge broke. + <stdio.h> on BSD systems says: @@ -514,69 +121,35 @@ index 462535a..e7eb46f 100644 + If this invariant is not fulfilled and the stream is read-write but + currently reading, subsequent putc or fputc calls will write directly + into the buffer, although they shouldn't be allowed to. */ -+ if ((fp_->_flags & __SRD) != 0) -+ fp_->_w = 0; ++ if ((fp->_flags & __SRD) != 0) ++ fp->_w = 0; +#endif + return result; +} -+//#endif -+#endif -+ -+#ifdef TEST -+int -+main() -+{ -+ static FILE fp_bad; -+ FILE *fp; -+ -+ if (fpurge(&fp_bad) == 0) -+ return 1; -+ -+ fp = fopen("/dev/zero", "r"); -+ if (fpurge(fp) < 0) -+ return 1; -+ -+ fclose(fp); -+ -+ return 0; -+} + #else + #error "Function fpurge() needs to be ported." #endif diff --git a/src/funopen.c b/src/funopen.c -index 1e05c7e..75e61ea 100644 +index 1e05c7e..65ba5a8 100644 --- a/src/funopen.c +++ b/src/funopen.c @@ -143,6 +143,7 @@ funopen(const void *cookie, * they will not add the needed support to implement it. Just ignore this * interface there, as it has never been provided anyway. */ -+#elif defined(darwin) || defined(__APPLE__) || defined(MACOSX) ++#elif defined(__MACH__) #else #error "Function funopen() needs to be ported or disabled." #endif -diff --git a/src/getentropy.c b/src/getentropy.c -index 3f11a1e..8a23a07 100644 ---- a/src/getentropy.c -+++ b/src/getentropy.c -@@ -28,9 +28,7 @@ - #include "getentropy_linux.c" - #elif defined(__GNU__) - #include "getentropy_hurd.c" --#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) --#include "getentropy_bsd.c" --#elif defined(__NetBSD__) -+#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) - #include "getentropy_bsd.c" - #elif defined(__sun) - #include "getentropy_solaris.c" diff --git a/src/hash/sha512.h b/src/hash/sha512.h -index 4f368a1..ab22fc1 100644 +index 4f368a1..7632e25 100644 --- a/src/hash/sha512.h +++ b/src/hash/sha512.h @@ -29,7 +29,11 @@ #ifndef _SHA512_H_ #define _SHA512_H_ -+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX) ++#ifdef __MACH__ +#include <stdint.h> +#else #include <sys/types.h> @@ -585,16 +158,15 @@ index 4f368a1..ab22fc1 100644 #define SHA512_DIGEST_LENGTH 64 diff --git a/src/hash/sha512c.c b/src/hash/sha512c.c -index b3c8d5e..f69013d 100644 +index b3c8d5e..602f54e 100644 --- a/src/hash/sha512c.c +++ b/src/hash/sha512c.c -@@ -25,7 +25,13 @@ +@@ -25,7 +25,12 @@ */ #include <sys/cdefs.h> -+__FBSDID("$FreeBSD$"); + -+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX) ++#ifdef __MACH__ +#include <machine/endian.h> +#else #include <sys/endian.h> @@ -602,102 +174,188 @@ index b3c8d5e..f69013d 100644 #include <sys/types.h> #include <string.h> +diff --git a/src/local-link.h b/src/local-link.h +index d518dcf..84694a2 100644 +--- a/src/local-link.h ++++ b/src/local-link.h +@@ -27,7 +27,11 @@ + #ifndef LIBBSD_LOCAL_LINK_H + #define LIBBSD_LOCAL_LINK_H + ++#ifdef __MACH__ ++#define libbsd_link_warning(symbol, msg) ++#else + #define libbsd_link_warning(symbol, msg) \ + static const char libbsd_emit_link_warning_##symbol[] \ + __attribute__((used,section(".gnu.warning." #symbol))) = msg; + #endif ++#endif diff --git a/src/nlist.c b/src/nlist.c -index 0932f59..598a329 100644 +index 0932f59..4502048 100644 --- a/src/nlist.c +++ b/src/nlist.c -@@ -27,6 +27,10 @@ - * SUCH DAMAGE. - */ +@@ -41,6 +41,7 @@ + #include <unistd.h> + #include <nlist.h> -+#if !defined(darwin) && !defined(__APPLE__) && !defined(MACOSX) -+#if defined(LIBC_SCCS) && !defined(lint) -+static char sccsid[] = "@(#)nlist.c 8.1 (Berkeley) 6/4/93"; -+#endif /* LIBC_SCCS and not lint */ - #include <sys/cdefs.h> ++#if !HAVE_NLIST_H + #include "local-elf.h" - #include <sys/param.h> -@@ -265,3 +269,4 @@ nlist(const char *name, struct nlist *list) + #define SIZE_T_MAX 0xffffffffU +@@ -265,3 +266,4 @@ nlist(const char *name, struct nlist *list) (void)close(fd); return (n); } -+#endif /* _NLIST_DO_ELF */ ++#endif +diff --git a/src/readpassphrase.c b/src/readpassphrase.c +index f9f6195..2bc5fb4 100644 +--- a/src/readpassphrase.c ++++ b/src/readpassphrase.c +@@ -36,6 +36,14 @@ + #define TCSASOFT 0 + #endif + ++#ifndef _SIGMAX ++#define _SIGMAX 64 ++#endif ++ ++#ifndef _NSIG ++#define _NSIG (_SIGMAX + 1) ++#endif ++ + static volatile sig_atomic_t signo[_NSIG]; + + static void handler(int); diff --git a/src/setproctitle.c b/src/setproctitle.c -index 038ac7d..d0ef01b 100644 +index 038ac7d..e9ee09c 100644 --- a/src/setproctitle.c +++ b/src/setproctitle.c -@@ -32,6 +32,11 @@ +@@ -32,6 +32,10 @@ #include <unistd.h> #include <string.h> -+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX) -+#define __asm__(x) ++#ifdef __MACH__ +extern char **environ; +#endif + static struct { /* Original value. */ const char *arg0; -@@ -287,7 +292,14 @@ __asm__(".symver setproctitle_impl,setproctitle@@LIBBSD_0.5"); +@@ -280,16 +284,22 @@ setproctitle_impl(const char *fmt, ...) + *++nul = '\0'; + } + } ++#ifndef __MACH__ + __asm__(".symver setproctitle_impl,setproctitle@@LIBBSD_0.5"); ++#endif + + /* The original function introduced in 0.2 was a stub, it only got implemented + * in 0.5, make the implementation available in the old version as an alias * for code linking against that version, and change the default to use the * new version, so that new code depends on the implemented version. */ - #ifdef HAVE_TYPEOF -+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX) -+// -+// HACK: even weak aliasing breaks in clang so just comment this out for now -+// -+// extern typeof(setproctitle_impl) setproctitle_stub __attribute__((weak, alias("setproctitle_impl"))); -+#else +-#ifdef HAVE_TYPEOF ++#ifdef __MACH__ ++void setproctitle_stub(const char *fmt, ...); ++#elif HAVE_TYPEOF extern typeof(setproctitle_impl) setproctitle_stub __attribute__((alias("setproctitle_impl"))); -+#endif #else void setproctitle_stub(const char *fmt, ...) __attribute__((alias("setproctitle_impl"))); + #endif ++#ifndef __MACH__ + __asm__(".symver setproctitle_stub,setproctitle@LIBBSD_0.2"); ++#endif diff --git a/src/strlcat.c b/src/strlcat.c -index 14c53a1..e01cb60 100644 +index 14c53a1..5961c17 100644 --- a/src/strlcat.c +++ b/src/strlcat.c -@@ -27,7 +27,11 @@ +@@ -26,6 +26,7 @@ + * Returns strlen(src) + MIN(dsize, strlen(initial dst)). * If retval >= dsize, truncation occurred. */ ++#if !HAVE_STRLCAT size_t -+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX) -+bsd_strlcat(char *dst, const char *src, size_t dsize) -+#else strlcat(char *dst, const char *src, size_t dsize) -+#endif { - const char *odst = dst; - const char *osrc = src; +@@ -53,3 +54,4 @@ strlcat(char *dst, const char *src, size_t dsize) + + return(dlen + (src - osrc)); /* count does not include NUL */ + } ++#endif diff --git a/src/strlcpy.c b/src/strlcpy.c -index e9a7fe4..10a855f 100644 +index e9a7fe4..5137acb 100644 --- a/src/strlcpy.c +++ b/src/strlcpy.c -@@ -25,7 +25,11 @@ +@@ -24,6 +24,7 @@ + * chars will be copied. Always NUL terminates (unless dsize == 0). * Returns strlen(src); if retval >= dsize, truncation occurred. */ ++#if !HAVE_STRLCPY size_t -+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX) -+bsd_strlcpy(char *dst, const char *src, size_t dsize) -+#else strlcpy(char *dst, const char *src, size_t dsize) -+#endif { - const char *osrc = src; - size_t nleft = dsize; +@@ -48,3 +49,4 @@ strlcpy(char *dst, const char *src, size_t dsize) + + return(src - osrc - 1); /* count does not include NUL */ + } ++#endif diff --git a/src/strmode.c b/src/strmode.c -index e6afde5..c463243 100644 +index e6afde5..da680c9 100644 --- a/src/strmode.c +++ b/src/strmode.c -@@ -33,7 +33,11 @@ +@@ -32,6 +32,7 @@ + #include <sys/stat.h> #include <string.h> ++#if !HAVE_STRMODE void -+#if defined(darwin) || defined(__APPLE__) || defined(MACOSX) -+bsd_strmode(mode_t mode, char *p) -+#else strmode(mode_t mode, char *p) + { +@@ -141,3 +142,4 @@ strmode(mode_t mode, char *p) + *p++ = ' '; /* will be a '+' if ACL's implemented */ + *p = '\0'; + } ++#endif +diff --git a/src/unvis.c b/src/unvis.c +index 94e3e7a..fba4c66 100644 +--- a/src/unvis.c ++++ b/src/unvis.c +@@ -565,11 +565,15 @@ strnunvis_openbsd(char *dst, const char *src, size_t dlen) + { + return strnunvisx(dst, dlen, src, 0); + } ++#ifndef __MACH__ + __asm__(".symver strnunvis_openbsd,strnunvis@@LIBBSD_0.2"); ++#endif + + int + strnunvis_netbsd(char *dst, size_t dlen, const char *src) + { + return strnunvisx(dst, dlen, src, 0); + } ++#ifndef __MACH__ + __asm__(".symver strnunvis_netbsd,strnunvis@LIBBSD_0.9.1"); +#endif +diff --git a/src/vis.c b/src/vis.c +index c2cd2d8..2d84330 100644 +--- a/src/vis.c ++++ b/src/vis.c +@@ -723,14 +723,18 @@ strnvis_openbsd(char *mbdst, const char *mbsrc, size_t dlen, int flags) { - /* print type */ - switch (mode & S_IFMT) { + return istrsenvisxl(&mbdst, &dlen, mbsrc, flags, "", NULL); + } ++#ifndef __MACH__ + __asm__(".symver strnvis_openbsd,strnvis@@LIBBSD_0.2"); ++#endif + + int + strnvis_netbsd(char *mbdst, size_t dlen, const char *mbsrc, int flags) + { + return istrsenvisxl(&mbdst, &dlen, mbsrc, flags, "", NULL); + } ++#ifndef __MACH__ + __asm__(".symver strnvis_netbsd,strnvis@LIBBSD_0.9.1"); ++#endif + + int + stravis(char **mbdstp, const char *mbsrc, int flags) diff --git a/pkgs/development/libraries/libbsd/default.nix b/pkgs/development/libraries/libbsd/default.nix index 36410e842a5d..a8d1925e5c0d 100644 --- a/pkgs/development/libraries/libbsd/default.nix +++ b/pkgs/development/libraries/libbsd/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "libbsd-${version}"; - version = "0.8.7"; + version = "0.9.1"; src = fetchurl { url = "https://libbsd.freedesktop.org/releases/${name}.tar.xz"; - sha256 = "0c9bl49zs0xdddcwj5dh0lay9sxi2m1yi74848g8p87mb87g2j7m"; + sha256 = "1957w2wi7iqar978qlfsm220dwywnrh5m58nrnn9zmi74ds3bn2n"; }; # darwin changes configure.ac which means we need to regenerate @@ -14,15 +14,8 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook ]; patches = stdenv.lib.optional stdenv.isDarwin ./darwin.patch - # Suitable for all, but limited to musl to avoid rebuilds - ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [ - # https://cgit.freedesktop.org/libbsd/commit/?id=1f8a3f7bccfc84b195218ad0086ebd57049c3490 - ./non-glibc.patch - # https://cgit.freedesktop.org/libbsd/commit/?id=11ec8f1e5dfa1c10e0c9fb94879b6f5b96ba52dd - ./cdefs.patch - # https://cgit.freedesktop.org/libbsd/commit/?id=b20272f5a966333b49fdf2bda797e2a9f0227404 - ./features.patch - ]; + # Suitable for all but limited to musl to avoid rebuild + ++ stdenv.lib.optional stdenv.hostPlatform.isMusl ./musl.patch; meta = with stdenv.lib; { description = "Common functions found on BSD systems"; diff --git a/pkgs/development/libraries/libbsd/features.patch b/pkgs/development/libraries/libbsd/features.patch deleted file mode 100644 index 66bd1e9232ba..000000000000 --- a/pkgs/development/libraries/libbsd/features.patch +++ /dev/null @@ -1,26 +0,0 @@ -From b20272f5a966333b49fdf2bda797e2a9f0227404 Mon Sep 17 00:00:00 2001 -From: Guillem Jover <guillem@hadrons.org> -Date: Tue, 6 Mar 2018 01:42:52 +0100 -Subject: Remove <features.h> inclusion from <bsd/libutil.h> - -This is a non-portable header, and we should not assume it is present. -Let the first system header pull it in if needed. ---- - include/bsd/libutil.h | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/include/bsd/libutil.h b/include/bsd/libutil.h -index ccca29a..e5f148a 100644 ---- a/include/bsd/libutil.h -+++ b/include/bsd/libutil.h -@@ -39,7 +39,6 @@ - #ifndef LIBBSD_LIBUTIL_H - #define LIBBSD_LIBUTIL_H - --#include <features.h> - #ifdef LIBBSD_OVERLAY - #include <sys/cdefs.h> - #else --- -cgit v1.1 - diff --git a/pkgs/development/libraries/libbsd/musl.patch b/pkgs/development/libraries/libbsd/musl.patch new file mode 100644 index 000000000000..fc07cfb6e855 --- /dev/null +++ b/pkgs/development/libraries/libbsd/musl.patch @@ -0,0 +1,14 @@ +Source: maxice8 +Upstream: no +Reason: fixes compilation + +--- a/src/flopen.c ++++ b/src/flopen.c +@@ -34,6 +34,7 @@ + #include <errno.h> + #include <stdarg.h> + #include <unistd.h> ++#include <fcntl.h> + + #include <libutil.h> + diff --git a/pkgs/development/libraries/libbsd/non-glibc.patch b/pkgs/development/libraries/libbsd/non-glibc.patch deleted file mode 100644 index f61e0d242943..000000000000 --- a/pkgs/development/libraries/libbsd/non-glibc.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 1f8a3f7bccfc84b195218ad0086ebd57049c3490 Mon Sep 17 00:00:00 2001 -From: Guillem Jover <guillem@hadrons.org> -Date: Tue, 6 Mar 2018 01:39:45 +0100 -Subject: Fix function declaration protection for glibc already providing them -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -On non-glibc based systems we cannot unconditionally use the -__GLIBC_PREREQ macro as it gets expanded before evaluation. Instead, -if it is undefined, define it to 0. - -We should also always declare these functions on non-glibc based -systems. And on systems with a new enough glibc, which provides these -functions, we should still provide the declarations if _GNU_SOURCE -is *not* defined. - -Reported-by: Jörg Krause <joerg.krause@embedded.rocks> ---- - include/bsd/stdlib.h | 3 ++- - include/bsd/string.h | 3 ++- - include/bsd/sys/cdefs.h | 8 ++++++++ - 3 files changed, 12 insertions(+), 2 deletions(-) - -diff --git a/include/bsd/stdlib.h b/include/bsd/stdlib.h -index 8d33d1f..a5b063c 100644 ---- a/include/bsd/stdlib.h -+++ b/include/bsd/stdlib.h -@@ -71,7 +71,8 @@ int sradixsort(const unsigned char **base, int nmemb, - const unsigned char *table, unsigned endbyte); - - void *reallocf(void *ptr, size_t size); --#if defined(_GNU_SOURCE) && defined(__GLIBC__) && !__GLIBC_PREREQ(2, 26) -+#if !defined(__GLIBC__) || \ -+ (defined(__GLIBC__) && (!__GLIBC_PREREQ(2, 26) || !defined(_GNU_SOURCE))) - void *reallocarray(void *ptr, size_t nmemb, size_t size); - #endif - -diff --git a/include/bsd/string.h b/include/bsd/string.h -index 29097f6..f987fee 100644 ---- a/include/bsd/string.h -+++ b/include/bsd/string.h -@@ -46,7 +46,8 @@ size_t strlcat(char *dst, const char *src, size_t siz); - char *strnstr(const char *str, const char *find, size_t str_len); - void strmode(mode_t mode, char *str); - --#if defined(_GNU_SOURCE) && defined(__GLIBC__) && !__GLIBC_PREREQ(2, 25) -+#if !defined(__GLIBC__) || \ -+ (defined(__GLIBC__) && (!__GLIBC_PREREQ(2, 25) || !defined(_GNU_SOURCE))) - void explicit_bzero(void *buf, size_t len); - #endif - __END_DECLS -diff --git a/include/bsd/sys/cdefs.h b/include/bsd/sys/cdefs.h -index b4c8f30..d1cc419 100644 ---- a/include/bsd/sys/cdefs.h -+++ b/include/bsd/sys/cdefs.h -@@ -59,6 +59,14 @@ - #endif - - /* -+ * On non-glibc based systems, we cannot unconditionally use the -+ * __GLIBC_PREREQ macro as it gets expanded before evaluation. -+ */ -+#ifndef __GLIBC_PREREQ -+#define __GLIBC_PREREQ(maj, min) 0 -+#endif -+ -+/* - * Some kFreeBSD headers expect those macros to be set for sanity checks. - */ - #ifndef _SYS_CDEFS_H_ --- -cgit v1.1 - diff --git a/pkgs/development/libraries/libharu/default.nix b/pkgs/development/libraries/libharu/default.nix index 5d120f61e086..0830b45b308b 100644 --- a/pkgs/development/libraries/libharu/default.nix +++ b/pkgs/development/libraries/libharu/default.nix @@ -15,6 +15,6 @@ stdenv.mkDerivation { homepage = http://libharu.org/; license = stdenv.lib.licenses.zlib; maintainers = [ stdenv.lib.maintainers.marcweber ]; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; }; } diff --git a/pkgs/development/libraries/libiodbc/default.nix b/pkgs/development/libraries/libiodbc/default.nix index 738c11161955..45649f944f51 100644 --- a/pkgs/development/libraries/libiodbc/default.nix +++ b/pkgs/development/libraries/libiodbc/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, pkgconfig, gtk2, useGTK ? false }: +{ stdenv, fetchurl, pkgconfig, gtk2, Carbon, useGTK ? false }: stdenv.mkDerivation rec { name = "libiodbc-3.52.12"; @@ -9,7 +9,8 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkgconfig ]; - buildInputs = stdenv.lib.optionals useGTK [ gtk2 ]; + buildInputs = stdenv.lib.optionals useGTK [ gtk2 ] + ++ stdenv.lib.optional stdenv.isDarwin Carbon; preBuild = '' @@ -19,6 +20,6 @@ stdenv.mkDerivation rec { meta = { description = "iODBC driver manager"; homepage = http://www.iodbc.org; - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.unix; }; } diff --git a/pkgs/development/libraries/liblinear/default.nix b/pkgs/development/libraries/liblinear/default.nix index ea05df45169f..5f295009b994 100644 --- a/pkgs/development/libraries/liblinear/default.nix +++ b/pkgs/development/libraries/liblinear/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "liblinear-${version}"; - version = "2.20"; + version = "2.21"; src = fetchurl { url = "https://www.csie.ntu.edu.tw/~cjlin/liblinear/liblinear-${version}.tar.gz"; - sha256 = "13q48azqy9pd8jyhk0c2hzj5xav1snbdrj8pp38vwrv2wwhfz7rz"; + sha256 = "0jp0z3s32czf748i6dnlabs1psqx1dcn9w96c56m24xq5l789chs"; }; buildPhase = '' diff --git a/pkgs/development/libraries/libpqxx/default.nix b/pkgs/development/libraries/libpqxx/default.nix index 5afed2b2a2f5..fbee81ab677a 100644 --- a/pkgs/development/libraries/libpqxx/default.nix +++ b/pkgs/development/libraries/libpqxx/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "libpqxx-${version}"; - version = "6.2.4"; + version = "6.2.5"; src = fetchFromGitHub { owner = "jtv"; repo = "libpqxx"; rev = version; - sha256 = "18fkyfa3a917ljmarf3jy8ycdhqzpc47cj87542sjpxnpaj9hy59"; + sha256 = "15x9xlj2v66w81j90cb438qkrrcqaq4dqrvhllwyqfz4lprqnhh9"; }; nativeBuildInputs = [ gnused python2 ]; diff --git a/pkgs/development/libraries/libqalculate/default.nix b/pkgs/development/libraries/libqalculate/default.nix index 377d9fe50be7..2c25d4181196 100644 --- a/pkgs/development/libraries/libqalculate/default.nix +++ b/pkgs/development/libraries/libqalculate/default.nix @@ -42,6 +42,7 @@ stdenv.mkDerivation rec { description = "An advanced calculator library"; homepage = http://qalculate.github.io; maintainers = with maintainers; [ gebner ]; + license = licenses.gpl2Plus; platforms = platforms.all; }; } diff --git a/pkgs/development/libraries/libraw/default.nix b/pkgs/development/libraries/libraw/default.nix index 9803e09610e6..e009a9f920b1 100644 --- a/pkgs/development/libraries/libraw/default.nix +++ b/pkgs/development/libraries/libraw/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "libraw-${version}"; - version = "0.18.12"; + version = "0.19.0"; src = fetchurl { url = "https://www.libraw.org/data/LibRaw-${version}.tar.gz"; - sha256 = "1m2khr2cij8z6lawgbmdksjn14fpnjsy8ad4qahnpqapm1slsxap"; + sha256 = "0nfj7s7qmgfy1cl8s3ck7dxjvprfq5glfi6iidmvmy8r7gl52gz8"; }; outputs = [ "out" "lib" "dev" "doc" ]; diff --git a/pkgs/development/libraries/libssh2/default.nix b/pkgs/development/libraries/libssh2/default.nix index a6802a7f5183..b050dede8c61 100644 --- a/pkgs/development/libraries/libssh2/default.nix +++ b/pkgs/development/libraries/libssh2/default.nix @@ -13,10 +13,11 @@ stdenv.mkDerivation rec { buildInputs = [ openssl zlib ] ++ stdenv.lib.optional stdenv.hostPlatform.isMinGW windows.mingw_w64; - meta = { + meta = with stdenv.lib; { description = "A client-side C library implementing the SSH2 protocol"; homepage = https://www.libssh2.org; - platforms = stdenv.lib.platforms.all; + platforms = platforms.all; + license = licenses.bsd3; maintainers = [ ]; }; } diff --git a/pkgs/development/libraries/libtiger/default.nix b/pkgs/development/libraries/libtiger/default.nix index bd0084dbaaf7..7a72fa2b7a31 100644 --- a/pkgs/development/libraries/libtiger/default.nix +++ b/pkgs/development/libraries/libtiger/default.nix @@ -16,6 +16,7 @@ stdenv.mkDerivation rec { homepage = https://code.google.com/archive/p/libtiger/; description = "A rendering library for Kate streams using Pango and Cairo"; platforms = lib.platforms.unix; + license = lib.licenses.lgpl21Plus; maintainers = with lib.maintainers; [ matthewbauer ]; }; } diff --git a/pkgs/development/libraries/libtorrent-rasterbar/default.nix b/pkgs/development/libraries/libtorrent-rasterbar/default.nix index f19e9d274313..6b5182fa992f 100644 --- a/pkgs/development/libraries/libtorrent-rasterbar/default.nix +++ b/pkgs/development/libraries/libtorrent-rasterbar/default.nix @@ -3,7 +3,7 @@ }: let - version = "1.1.9"; + version = "1.1.10"; formattedVersion = lib.replaceChars ["."] ["_"] version; # Make sure we override python, so the correct version is chosen @@ -17,7 +17,7 @@ in stdenv.mkDerivation { owner = "arvidn"; repo = "libtorrent"; rev = "libtorrent-${formattedVersion}"; - sha256 = "04w3pjzd6q9wplj1dcphylxn1i2b2x0iw1l0ma58ymh14swdah7a"; + sha256 = "0qj1rz52jk95m43cr7l3fi9jmf4pwxncp5mq4hi2vzacfnf79yms"; }; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/libtoxcore/default.nix b/pkgs/development/libraries/libtoxcore/default.nix index b3636eef2621..4a8dfc40d4a1 100644 --- a/pkgs/development/libraries/libtoxcore/default.nix +++ b/pkgs/development/libraries/libtoxcore/default.nix @@ -49,7 +49,7 @@ in rec { }; libtoxcore_0_2 = generic { - version = "0.2.3"; - sha256 = "1z8638cmxssc4jvbf64x549m84pz28729xbxc4c4ss1k792x30ya"; + version = "0.2.8"; + sha256 = "0xgnraysz25fbws5zwjk92mwnl8k1yih701qam8kgm3rxh50kyhm"; }; } diff --git a/pkgs/development/libraries/libtxc_dxtn/default.nix b/pkgs/development/libraries/libtxc_dxtn/default.nix index 21e3a15449c2..b0be3cb3c12d 100644 --- a/pkgs/development/libraries/libtxc_dxtn/default.nix +++ b/pkgs/development/libraries/libtxc_dxtn/default.nix @@ -13,9 +13,10 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook ]; buildInputs = [ libGLU_combined ]; - meta = { + meta = with stdenv.lib; { homepage = http://dri.freedesktop.org/wiki/S3TC; repositories.git = git://people.freedesktop.org/~mareko/libtxc_dxtn; - platforms = stdenv.lib.platforms.unix; + license = licenses.mit; + platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/libui/default.nix b/pkgs/development/libraries/libui/default.nix index b1e6938a1494..9eb2fe04fe68 100644 --- a/pkgs/development/libraries/libui/default.nix +++ b/pkgs/development/libraries/libui/default.nix @@ -49,9 +49,10 @@ in install_name_tool -id $out/lib/${shortName}.A.dylib $out/lib/${shortName}.A.dylib ''; - meta = { + meta = with stdenv.lib; { homepage = https://github.com/andlabs/libui; description = "Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports."; - platforms = stdenv.lib.platforms.unix; + license = licenses.mit; + platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/libusb/default.nix b/pkgs/development/libraries/libusb/default.nix index 4704a1e5c331..adf354c45f2e 100644 --- a/pkgs/development/libraries/libusb/default.nix +++ b/pkgs/development/libraries/libusb/default.nix @@ -16,7 +16,15 @@ stdenv.mkDerivation { patches = stdenv.lib.optional stdenv.hostPlatform.isMusl ./fix-headers.patch; - meta = { - platforms = stdenv.lib.platforms.unix; + meta = with stdenv.lib; { + homepage = "https://libusb.info/"; + repositories.git = "https://github.com/libusb/libusb-compat-0.1"; + description = "cross-platform user-mode USB device library"; + longDescription = '' + libusb is a cross-platform user-mode library that provides access to USB devices. + The current API is of 1.0 version (libusb-1.0 API), this library is a wrapper exposing the legacy API. + ''; + license = licenses.lgpl2Plus; + platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix index 7ec714f02237..ac5c38a34f11 100644 --- a/pkgs/development/libraries/libusb1/default.nix +++ b/pkgs/development/libraries/libusb1/default.nix @@ -21,10 +21,15 @@ stdenv.mkDerivation rec { sed 's,-ludev,-L${systemd.lib}/lib -ludev,' -i $out/lib/libusb-1.0.la ''; - meta = { - homepage = http://www.libusb.info; - description = "User-space USB library"; - platforms = stdenv.lib.platforms.all; + meta = with stdenv.lib; { + homepage = "https://libusb.info/"; + repositories.git = "https://github.com/libusb/libusb"; + description = "cross-platform user-mode USB device library"; + longDescription = '' + libusb is a cross-platform user-mode library that provides access to USB devices. + ''; + platforms = platforms.all; + license = licenses.lgpl21Plus; maintainers = [ ]; }; } diff --git a/pkgs/development/libraries/libwacom/default.nix b/pkgs/development/libraries/libwacom/default.nix index cc3f19ab7d31..67563e41d01f 100644 --- a/pkgs/development/libraries/libwacom/default.nix +++ b/pkgs/development/libraries/libwacom/default.nix @@ -14,7 +14,8 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { platforms = platforms.linux; - homepage = https://sourceforge.net/projects/linuxwacom/; + homepage = https://linuxwacom.github.io/; description = "Libraries, configuration, and diagnostic tools for Wacom tablets running under Linux"; + license = licenses.mit; }; } diff --git a/pkgs/development/libraries/nanoflann/default.nix b/pkgs/development/libraries/nanoflann/default.nix index b5d4ea0f4ebf..f29fb9564f31 100644 --- a/pkgs/development/libraries/nanoflann/default.nix +++ b/pkgs/development/libraries/nanoflann/default.nix @@ -1,14 +1,14 @@ {stdenv, fetchFromGitHub, cmake}: stdenv.mkDerivation rec { - version = "1.2.3"; + version = "1.3.0"; name = "nanoflann-${version}"; src = fetchFromGitHub { owner = "jlblancoc"; repo = "nanoflann"; rev = "v${version}"; - sha256 = "1jrh73kjvdv7s7zc1sc3z254i17lpvn77b19wx32nvzsfxs4g44i"; + sha256 = "1bwdmrz1qygp9qy2nzrp1axa1i4nvm0ljkn6mnhlcvbfsyvhzigv"; }; buildInputs = [ cmake ]; diff --git a/pkgs/development/libraries/parquet-cpp/default.nix b/pkgs/development/libraries/parquet-cpp/default.nix deleted file mode 100644 index 804ddb136f03..000000000000 --- a/pkgs/development/libraries/parquet-cpp/default.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ stdenv, symlinkJoin, fetchurl, arrow-cpp, boost, cmake, gtest, snappy, thrift, zlib }: - -stdenv.mkDerivation rec { - name = "parquet-cpp-${version}"; - version = "1.5.0"; - - src = fetchurl { - url = "https://github.com/apache/parquet-cpp/archive/apache-${name}.tar.gz"; - sha256 = "19nwqahc0igr0jfprbf2m86rmzz6zicw4z7b8z832wbsyc904wli"; - }; - - patches = [ ./api.patch ]; - - nativeBuildInputs = [ cmake ]; - buildInputs = [ boost ]; - - preConfigure = '' - substituteInPlace cmake_modules/FindThrift.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY - substituteInPlace cmake_modules/FindSnappy.cmake --replace CMAKE_STATIC_LIBRARY CMAKE_SHARED_LIBRARY - ''; - - ARROW_HOME = arrow-cpp; - THRIFT_HOME = thrift; - GTEST_HOME = gtest; - SNAPPY_HOME = symlinkJoin { name="snappy-wrap"; paths = [ snappy snappy.dev ]; }; - ZLIB_HOME = symlinkJoin { name="zlib-wrap"; paths = [ zlib.dev zlib.static ]; }; - - cmakeFlags = [ - "-DPARQUET_BUILD_BENCHMARKS=OFF" - ]; - - meta = { - description = "A C++ library to read and write the Apache Parquet columnar data format"; - homepage = http://parquet.apache.org; - license = stdenv.lib.licenses.asl20; - platforms = stdenv.lib.platforms.unix; - maintainers = with stdenv.lib.maintainers; [ veprbl ]; - }; -} diff --git a/pkgs/development/libraries/vigra/default.nix b/pkgs/development/libraries/vigra/default.nix index 12c166beacbd..fb69d4bf63e7 100644 --- a/pkgs/development/libraries/vigra/default.nix +++ b/pkgs/development/libraries/vigra/default.nix @@ -15,6 +15,12 @@ in stdenv.mkDerivation rec { NIX_CFLAGS_COMPILE = "-I${ilmbase.dev}/include/OpenEXR"; + # Fixes compilation with clang (on darwin) see https://github.com/ukoethe/vigra/issues/414 + patches = + let clangPatch = fetchurl { url = "https://github.com/ukoethe/vigra/commit/81958d302494e137f98a8b1d7869841532f90388.patch"; + sha256 = "1i1w6smijgb5z8bg9jaq84ccy00k2sxm87s37lgjpyix901gjlgi"; }; + in [ clangPatch ]; + buildInputs = [ boost cmake fftw fftwSinglePrec hdf5 ilmbase libjpeg libpng libtiff numpy openexr python ]; @@ -34,6 +40,6 @@ in stdenv.mkDerivation rec { homepage = https://hci.iwr.uni-heidelberg.de/vigra; license = licenses.mit; maintainers = [ maintainers.viric ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } diff --git a/pkgs/development/libraries/vulkan-headers/default.nix b/pkgs/development/libraries/vulkan-headers/default.nix index dd3f14f91928..c93ba1b12909 100644 --- a/pkgs/development/libraries/vulkan-headers/default.nix +++ b/pkgs/development/libraries/vulkan-headers/default.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "KhronosGroup"; repo = "Vulkan-Headers"; - rev = "sdk-${version}"; + rev = "2fd5a24ec4a6df303b2155b3f85b6b8c1d56f6c0"; sha256 = "0cj4bd396qddh3nxvr7grnpfz89g3sbvm21cx4k3ga52sp1rslpb"; }; diff --git a/pkgs/development/libraries/vulkan-loader/default.nix b/pkgs/development/libraries/vulkan-loader/default.nix index 5ffdc4375373..6f720857f7cf 100644 --- a/pkgs/development/libraries/vulkan-loader/default.nix +++ b/pkgs/development/libraries/vulkan-loader/default.nix @@ -1,6 +1,10 @@ -{ stdenv, fetchFromGitHub, cmake, python3, vulkan-headers, pkgconfig, - xlibsWrapper, libxcb, libXrandr, libXext, wayland, libGL_driver }: -let version = "1.1.82.0"; in +{ stdenv, fetchFromGitHub, cmake, python3, vulkan-headers, pkgconfig +, xlibsWrapper, libxcb, libXrandr, libXext, wayland, libGL_driver }: + +let + version = "1.1.85"; +in + assert version == vulkan-headers.version; stdenv.mkDerivation rec { name = "vulkan-loader-${version}"; @@ -9,8 +13,8 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "KhronosGroup"; repo = "Vulkan-Loader"; - rev = "sdk-${version}"; - sha256 = "16i4s1adfh822ahj3ywp279lv6szwd2sn2q5pmvpg2kk6mbh410d"; + rev = "b02f64293680c484e1d7ff6ecb88f89277c0dc8c"; + sha256 = "1n4vjyxlmi2ygx34srwbvalc5gz95gcsrmdw0k10353xja755gmj"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/development/libraries/xdg-desktop-portal/default.nix b/pkgs/development/libraries/xdg-desktop-portal/default.nix index 171ef68cf569..9cdada9bf3b2 100644 --- a/pkgs/development/libraries/xdg-desktop-portal/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal/default.nix @@ -1,7 +1,7 @@ { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libxml2, glib, pipewire, fuse }: let - version = "1.0.2"; + version = "1.0.3"; in stdenv.mkDerivation rec { name = "xdg-desktop-portal-${version}"; @@ -11,7 +11,7 @@ in stdenv.mkDerivation rec { owner = "flatpak"; repo = "xdg-desktop-portal"; rev = version; - sha256 = "1vl0150gz20x106di9yfa6l3zjw0nd2lr44rkq2147n2a254p79p"; + sha256 = "113k5sr4l58rm8sgp4qbjrhyjg37c5ad54i58njsm98knb5r2ppv"; }; patches = [ |