Merge branch 'master' into staging
This commit is contained in:
@@ -1,19 +1,23 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gettext, gtk3, intltool, glib
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, gettext, gtk3, intltool, glib
|
||||
, gtk_doc, autoconf, automake, libtool, libarchive, libyaml
|
||||
, gobjectIntrospection, sqlite, libsoup, gcab, attr, acl, docbook_xsl
|
||||
, libuuid, json_glib
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "appstream-glib-0.3.6";
|
||||
name = "appstream-glib-0.5.11";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/hughsie/appstream-glib/archive/appstream_glib_0_3_6.tar.gz";
|
||||
sha256 = "1zdxg9dk9vxw2cs04cswd138di3dysz0hxk4918750hh19s3859c";
|
||||
src = fetchFromGitHub {
|
||||
owner = "hughsie";
|
||||
repo = "appstream-glib";
|
||||
rev = stdenv.lib.replaceStrings ["." "-"] ["_" "_"] name;
|
||||
sha256 = "1rvfncm9z29h70pd718j73cd263g6yyxkxrg7zfzy0gj6wwzvhkh";
|
||||
};
|
||||
|
||||
buildInputs = [ glib libtool pkgconfig gtk_doc gettext intltool sqlite libsoup
|
||||
gcab attr acl docbook_xsl
|
||||
libarchive libyaml gtk3 autoconf automake gobjectIntrospection ];
|
||||
nativeBuildInputs = [ autoconf automake libtool pkgconfig intltool ];
|
||||
buildInputs = [ glib gtk_doc gettext sqlite libsoup
|
||||
gcab attr acl docbook_xsl libuuid json_glib
|
||||
libarchive libyaml gtk3 gobjectIntrospection ];
|
||||
|
||||
configureScript = "./autogen.sh";
|
||||
|
||||
@@ -22,7 +26,6 @@ stdenv.mkDerivation rec {
|
||||
homepage = https://github.com/hughsie/appstream-glib;
|
||||
license = licenses.lgpl21Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ lethalman ];
|
||||
maintainers = with maintainers; [ lethalman matthewbauer ];
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -1,23 +1,26 @@
|
||||
{stdenv, fetchurl, cmake, pkgconfig, atlas, blas, openblas}:
|
||||
{ stdenv, fetchurl, cmake, openblasCompat, superlu, hdf5 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "7.200.1b";
|
||||
version = "7.200.2";
|
||||
name = "armadillo-${version}";
|
||||
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://sourceforge.net/projects/arma/files/armadillo-${version}.tar.xz";
|
||||
sha256 = "00s8xrywc4aipipq1zpd6q9gzqmsiv8cwd25zvb1csrpninmidvc";
|
||||
url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
|
||||
sha256 = "1yvx75caks477jqwx5gspi6946jialddk00wdvg6dnh5wdi2xasm";
|
||||
};
|
||||
|
||||
unpackCmd = [ "tar -xf ${src}" ];
|
||||
|
||||
nativeBuildInputs = [ cmake atlas blas openblas ];
|
||||
buildInputs = [ cmake openblasCompat superlu hdf5 ];
|
||||
|
||||
cmakeFlags = [ "-DDETECT_HDF5=ON" ];
|
||||
|
||||
patches = [ ./use-unix-config-on-OS-X.patch
|
||||
./use-OpenBLAS-as-LAPACK.patch ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "C++ linear algebra library";
|
||||
homepage = "http://arma.sourceforge.net" ;
|
||||
homepage = http://arma.sourceforge.net;
|
||||
license = licenses.mpl20;
|
||||
platforms = stdenv.lib.platforms.linux ;
|
||||
maintainers = [ stdenv.lib.maintainers.juliendehos ];
|
||||
platforms = platforms.unix;
|
||||
maintainers = [ maintainers.juliendehos ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
diff --git a/cmake_aux/Modules/ARMA_FindLAPACK.cmake b/cmake_aux/Modules/ARMA_FindLAPACK.cmake
|
||||
index 5395afb..a203c93 100644
|
||||
--- a/cmake_aux/Modules/ARMA_FindLAPACK.cmake
|
||||
+++ b/cmake_aux/Modules/ARMA_FindLAPACK.cmake
|
||||
@@ -5,7 +5,7 @@
|
||||
# also defined, but not for general use are
|
||||
# LAPACK_LIBRARY, where to find the LAPACK library.
|
||||
|
||||
-SET(LAPACK_NAMES ${LAPACK_NAMES} lapack)
|
||||
+SET(LAPACK_NAMES ${LAPACK_NAMES} openblas)
|
||||
FIND_LIBRARY(LAPACK_LIBRARY
|
||||
NAMES ${LAPACK_NAMES}
|
||||
PATHS /usr/lib64/atlas /usr/lib/atlas /usr/lib64 /usr/lib /usr/local/lib64 /usr/local/lib
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -84,7 +84,7 @@ message(STATUS "DETECT_HDF5 = ${DETECT_HDF5}" )
|
||||
##
|
||||
## Find LAPACK and BLAS libraries, or their optimised versions
|
||||
##
|
||||
-
|
||||
+set(APPLE false)
|
||||
if(APPLE)
|
||||
|
||||
set(ARMA_OS macos)
|
||||
@@ -1,6 +1,7 @@
|
||||
{ stdenv, composableDerivation, fetchurl, pkgconfig, xlibsWrapper, inputproto, libXi
|
||||
, freeglut, mesa, libjpeg, zlib, libXinerama, libXft, libpng
|
||||
, cfg ? {}
|
||||
, darwin, libtiff, freetype
|
||||
}:
|
||||
|
||||
let inherit (composableDerivation) edf; in
|
||||
@@ -21,7 +22,10 @@ composableDerivation.composableDerivation {} {
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
propagatedBuildInputs = [ xlibsWrapper inputproto libXi freeglut ];
|
||||
propagatedBuildInputs = [ inputproto ]
|
||||
++ (if stdenv.isDarwin
|
||||
then (with darwin.apple_sdk.frameworks; [Cocoa AGL GLUT freetype libtiff])
|
||||
else [ xlibsWrapper libXi freeglut ]);
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -55,9 +59,8 @@ composableDerivation.composableDerivation {} {
|
||||
meta = {
|
||||
description = "A C++ cross-platform lightweight GUI library";
|
||||
homepage = http://www.fltk.org;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -12,13 +12,16 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gd-${version}";
|
||||
version = "2.2.2";
|
||||
version = "2.2.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/libgd/libgd/releases/download/${name}/libgd-${version}.tar.xz";
|
||||
sha256 = "1311g5mva2xlzqv3rjqjc4jjkn5lzls4skvr395h633zw1n7b7s8";
|
||||
sha256 = "0g3xz8jpz1pl2zzmssglrpa9nxiaa7rmcmvgpbrjz8k9cyynqsvl";
|
||||
};
|
||||
|
||||
# -pthread gets passed to clang, causing warnings
|
||||
configureFlags = stdenv.lib.optional stdenv.isDarwin "--enable-werror=no";
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ zlib fontconfig freetype ];
|
||||
propagatedBuildInputs = [ libpng libjpeg libwebp libtiff libXpm ];
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, cmake }:
|
||||
{ stdenv, fetchurl, cmake, vtk }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.4.6";
|
||||
@@ -19,10 +19,11 @@ stdenv.mkDerivation rec {
|
||||
cmakeFlags = ''
|
||||
-DGDCM_BUILD_APPLICATIONS=ON
|
||||
-DGDCM_BUILD_SHARED_LIBS=ON
|
||||
-DGDCM_USE_VTK=ON
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
buildInputs = [ cmake ];
|
||||
buildInputs = [ cmake vtk ];
|
||||
propagatedBuildInputs = [ ];
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -36,8 +36,9 @@ stdenv.mkDerivation {
|
||||
|
||||
# Build of the Guile bindings is not parallel-safe. See
|
||||
# <http://git.savannah.gnu.org/cgit/gnutls.git/commit/?id=330995a920037b6030ec0282b51dde3f8b493cad>
|
||||
# for the actual fix.
|
||||
enableParallelBuilding = !guileBindings;
|
||||
# for the actual fix. Also an apparent race in the generation of
|
||||
# systemkey-args.h.
|
||||
enableParallelBuilding = false;
|
||||
|
||||
buildInputs = [ lzo lzip nettle libtasn1 libidn p11_kit zlib gmp autogen ]
|
||||
++ lib.optional doCheck nettools
|
||||
|
||||
@@ -4,14 +4,14 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gst-python-1.8.1";
|
||||
name = "gst-python-1.8.2";
|
||||
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
"${meta.homepage}/src/gst-python/${name}.tar.xz"
|
||||
"mirror://gentoo/distfiles/${name}.tar.xz"
|
||||
];
|
||||
sha256 = "160ah5rpy4n8p1mhbf545rcv7rbq0i17xl7q5hmivf4w5yvvz8vn";
|
||||
sha256 = "15sdfa6lq5pswvi09vk51cs30yf8wr2rlm9myhb4q0c2jhiial2g";
|
||||
};
|
||||
|
||||
patches = [ ./different-path-with-pygobject.patch ];
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gtkspell-${version}";
|
||||
version = "3.0.7";
|
||||
version = "3.0.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/gtkspell/gtkspell3-${version}.tar.gz";
|
||||
sha256 = "1hiwzajf18v9ik4nai3s7frps4ccn9s20nggad1c4k2mwb9ydwhk";
|
||||
sha256 = "1zrz5pz4ryvcssk898liynmy2wyxgj95ak7mp2jv7x62yzihq6h1";
|
||||
};
|
||||
|
||||
buildInputs = [ aspell pkgconfig gtk3 enchant intltool ];
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "3.0.3";
|
||||
version = "3.0.4";
|
||||
|
||||
in
|
||||
|
||||
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/project/gtkspell/gtkspellmm/" +
|
||||
"${name}.tar.gz";
|
||||
sha256 = "f9dcc0991621c08e7a972f33487afd6b37491468f0b654f50c741a7e6d810624";
|
||||
sha256 = "0x6zx928dl62f0c0x6b2s32i06lvn18wx7crrgs1j9yjgkim4k4k";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||
propagatedBuildInputs = [ glib gssdp libsoup libxml2 libuuid ];
|
||||
|
||||
postInstall = ''
|
||||
ln -sv ${libsoup.dev}/include/*/libsoup $out/include
|
||||
ln -sv ${libsoup.dev}/include/libsoup-2*/libsoup $out/include
|
||||
ln -sv ${libxml2.dev}/include/*/libxml $out/include
|
||||
ln -sv ${gssdp}/include/*/libgssdp $out/include
|
||||
'';
|
||||
|
||||
@@ -38,6 +38,10 @@ stdenv.mkDerivation {
|
||||
rm "$out"/lib/libharfbuzz.* "$dev/lib/pkgconfig/harfbuzz.pc"
|
||||
ln -s {'${harfbuzz.out}',"$out"}/lib/libharfbuzz.la
|
||||
ln -s {'${harfbuzz.dev}',"$dev"}/lib/pkgconfig/harfbuzz.pc
|
||||
${optionalString stdenv.isDarwin ''
|
||||
ln -s {'${harfbuzz.out}',"$out"}/lib/libharfbuzz.dylib
|
||||
ln -s {'${harfbuzz.out}',"$out"}/lib/libharfbuzz.0.dylib
|
||||
''}
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
set -e
|
||||
source $stdenv/setup
|
||||
|
||||
tar zxvf $src
|
||||
|
||||
$jdk/bin/javac java_cup/*.java
|
||||
$jdk/bin/javac java_cup/runtime/*.java
|
||||
|
||||
mkdir -p $out/java_cup/runtime
|
||||
|
||||
cp java_cup/*.class $out/java_cup
|
||||
cp java_cup/runtime/*.class $out/java_cup/runtime/
|
||||
|
||||
@@ -1,13 +1,38 @@
|
||||
{stdenv, fetchurl, jdk} :
|
||||
{ stdenv, fetchurl, jdk, ant } :
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "java-cup-10k";
|
||||
builder = ./builder.sh;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "java-cup-${version}";
|
||||
version = "11b-20160615";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.cs.princeton.edu/~appel/modern/java/CUP/java_cup_v10k.tar.gz;
|
||||
md5 = "8b11edfec13c590ea443d0f0ae0da479";
|
||||
url = "http://www2.cs.tum.edu/projects/cup/releases/java-cup-src-${version}.tar.gz";
|
||||
sha256 = "1ymz3plngxclh7x3xr31537rvvak7lwyd0qkmnl1mkj5drh77rz0";
|
||||
};
|
||||
|
||||
inherit jdk;
|
||||
sourceRoot = ".";
|
||||
|
||||
nativeBuildInputs = [ jdk ant ];
|
||||
|
||||
patches = [ ./javacup-0.11b_beta20160615-build-xml-git.patch ];
|
||||
|
||||
buildPhase = "ant";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/{bin,share/{java,java-cup}}
|
||||
cp dist/java-cup-11b.jar $out/share/java-cup/
|
||||
cp dist/java-cup-11b-runtime.jar $out/share/java/
|
||||
cat > $out/bin/javacup <<EOF
|
||||
#! $shell
|
||||
exec ${jdk.jre}/bin/java -jar $out/share/java-cup/java-cup-11b.jar "\$@"
|
||||
EOF
|
||||
chmod a+x $out/bin/javacup
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://www2.cs.tum.edu/projects/cup/;
|
||||
description = "LALR parser generator for Java";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
maintainers = [ stdenv.lib.maintainers.romildo ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
--- javacup/build.xml.orig 2016-06-15 07:10:15.000000000 -0300
|
||||
+++ javacup/build.xml 2016-07-17 08:46:46.632722844 -0300
|
||||
@@ -21,26 +21,6 @@
|
||||
<mkdir dir="${dist}" />
|
||||
<loadfile property="cupversion" srcFile="version.txt" failonerror="false" />
|
||||
<property name="cupversion" value="custombuild" unless:set="cupversion"/>
|
||||
- <exec executable="git" outputproperty="gitversion">
|
||||
- <arg value="log"/>
|
||||
- <arg value="-1"/>
|
||||
- <arg value="--format=%h"/>
|
||||
- </exec>
|
||||
- <exec executable="git" outputproperty="changed">
|
||||
- <arg value="status"/>
|
||||
- <arg value="--porcelain"/>
|
||||
- <redirector>
|
||||
- <outputfilterchain>
|
||||
- <linecontainsregexp>
|
||||
- <regexp pattern='^M.*'/>
|
||||
- </linecontainsregexp>
|
||||
- <tokenfilter>
|
||||
- <replaceregex pattern=".*" replace="modifications based on "/>
|
||||
- </tokenfilter>
|
||||
- </outputfilterchain>
|
||||
- </redirector>
|
||||
- </exec>
|
||||
- <property name="svnversion">${changed}${gitversion}</property>
|
||||
</target>
|
||||
|
||||
<property environment="env" />
|
||||
@@ -79,7 +59,7 @@
|
||||
<copy todir="${java}"><fileset dir="${src}"></fileset></copy>
|
||||
<replace file="${java}/java_cup/version.java"
|
||||
token="+ version_str"
|
||||
- value='+ "v0.11b ${cupversion} (GIT ${svnversion})"'>
|
||||
+ value='+ "v0.11b ${cupversion}"'>
|
||||
</replace>
|
||||
<javac srcdir="${java}" destdir="${classes}" verbose="off" listfiles="off" debug="on" source="1.8" target="1.8">
|
||||
<classpath refid="libraries"/>
|
||||
48
pkgs/development/libraries/jsoncpp/1.6.5/default.nix
Normal file
48
pkgs/development/libraries/jsoncpp/1.6.5/default.nix
Normal file
@@ -0,0 +1,48 @@
|
||||
{ stdenv, fetchFromGitHub, cmake, python }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "jsoncpp-${version}";
|
||||
version = "1.6.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "open-source-parsers";
|
||||
repo = "jsoncpp";
|
||||
rev = version;
|
||||
sha256 = "08y54n4v3q18ik8iv8zyziava3x130ilzf1l3qli3vjwf6l42fm0";
|
||||
};
|
||||
|
||||
/* During darwin bootstrap, we have a cp that doesn't understand the
|
||||
* --reflink=auto flag, which is used in the default unpackPhase for dirs
|
||||
*/
|
||||
unpackPhase = ''
|
||||
cp -a ${src} ${src.name}
|
||||
chmod -R +w ${src.name}
|
||||
export sourceRoot=${src.name}
|
||||
'';
|
||||
|
||||
# Hack to be able to run the test, broken because we use
|
||||
# CMAKE_SKIP_BUILD_RPATH to avoid cmake resetting rpath on install
|
||||
preBuild = ''
|
||||
export LD_LIBRARY_PATH="`pwd`/src/lib_json:$LD_LIBRARY_PATH"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake python ];
|
||||
|
||||
CXXFLAGS = "-Wno-shift-negative-value";
|
||||
|
||||
cmakeFlags = [
|
||||
"-DJSONCPP_LIB_BUILD_SHARED=ON"
|
||||
"-DJSONCPP_LIB_BUILD_STATIC=OFF"
|
||||
"-DJSONCPP_WITH_CMAKE_PACKAGE=ON"
|
||||
];
|
||||
|
||||
meta = {
|
||||
inherit version;
|
||||
homepage = https://github.com/open-source-parsers/jsoncpp;
|
||||
description = "A simple API to manipulate JSON data in C++";
|
||||
maintainers = with stdenv.lib.maintainers; [ ttuegel page ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
license = stdenv.lib.licenses.mit;
|
||||
branch = "1.6";
|
||||
};
|
||||
}
|
||||
@@ -1,48 +1,34 @@
|
||||
{ stdenv, fetchFromGitHub, cmake, python }:
|
||||
|
||||
{ stdenv
|
||||
, fetchgit
|
||||
, cmake
|
||||
, python
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "jsoncpp-${version}";
|
||||
version = "1.6.5";
|
||||
version = "1.7.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "open-source-parsers";
|
||||
repo = "jsoncpp";
|
||||
rev = version;
|
||||
sha256 = "08y54n4v3q18ik8iv8zyziava3x130ilzf1l3qli3vjwf6l42fm0";
|
||||
src = fetchgit {
|
||||
url = https://github.com/open-source-parsers/jsoncpp.git;
|
||||
sha256 = "04w4cfmvyv52rpqhc370ln8rhlsrr515778bixhgafqbp3p4x34k";
|
||||
rev = "c8054483f82afc3b4db7efe4e5dc034721649ec8";
|
||||
};
|
||||
|
||||
/* During darwin bootstrap, we have a cp that doesn't understand the
|
||||
* --reflink=auto flag, which is used in the default unpackPhase for dirs
|
||||
*/
|
||||
unpackPhase = ''
|
||||
cp -a ${src} ${src.name}
|
||||
chmod -R +w ${src.name}
|
||||
export sourceRoot=${src.name}
|
||||
'';
|
||||
configurePhase = ''
|
||||
mkdir -p Build
|
||||
pushd Build
|
||||
|
||||
# Hack to be able to run the test, broken because we use
|
||||
# CMAKE_SKIP_BUILD_RPATH to avoid cmake resetting rpath on install
|
||||
preBuild = ''
|
||||
export LD_LIBRARY_PATH="`pwd`/src/lib_json:$LD_LIBRARY_PATH"
|
||||
'';
|
||||
mkdir -p $out
|
||||
cmake .. -DCMAKE_INSTALL_PREFIX=$out \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake python ];
|
||||
buildInputs = [ cmake python ];
|
||||
|
||||
CXXFLAGS = "-Wno-shift-negative-value";
|
||||
|
||||
cmakeFlags = [
|
||||
"-DJSONCPP_LIB_BUILD_SHARED=ON"
|
||||
"-DJSONCPP_LIB_BUILD_STATIC=OFF"
|
||||
"-DJSONCPP_WITH_CMAKE_PACKAGE=ON"
|
||||
];
|
||||
|
||||
meta = {
|
||||
inherit version;
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/open-source-parsers/jsoncpp;
|
||||
description = "A simple API to manipulate JSON data in C++";
|
||||
maintainers = with stdenv.lib.maintainers; [ ttuegel page ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
license = stdenv.lib.licenses.mit;
|
||||
branch = "1.6";
|
||||
description = "A C++ library for interacting with JSON.";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
, documentationSupport ? false, doxygen ? null, graphviz ? null # Documentation
|
||||
, eventGUISupport ? false, cairo ? null, glib ? null, gtk3 ? null # GUI event viewer support
|
||||
, testsSupport ? false, check ? null, valgrind ? null
|
||||
, autoconf, automake
|
||||
}:
|
||||
|
||||
assert documentationSupport -> doxygen != null && graphviz != null;
|
||||
@@ -32,13 +33,16 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
buildInputs = [ libevdev mtdev libwacom ]
|
||||
buildInputs = [ libevdev mtdev libwacom autoconf automake ]
|
||||
++ optionals eventGUISupport [ cairo glib gtk3 ]
|
||||
++ optionals documentationSupport [ doxygen graphviz ]
|
||||
++ optionals testsSupport [ check valgrind ];
|
||||
|
||||
propagatedBuildInputs = [ udev ];
|
||||
|
||||
patches = [ ./udev-absolute-path.patch ];
|
||||
patchFlags = [ "-p0" ];
|
||||
|
||||
meta = {
|
||||
description = "Handles input devices in Wayland compositors and provides a generic X.Org input driver";
|
||||
homepage = http://www.freedesktop.org/wiki/Software/libinput;
|
||||
|
||||
12
pkgs/development/libraries/libinput/udev-absolute-path.patch
Normal file
12
pkgs/development/libraries/libinput/udev-absolute-path.patch
Normal file
@@ -0,0 +1,12 @@
|
||||
--- configure.ac 2016-05-27 14:00:25.248388226 +0200
|
||||
+++ configure.ac 2016-05-27 14:01:28.228943416 +0200
|
||||
@@ -214,7 +214,8 @@ AM_CONDITIONAL(BUILD_DOCS, [test "x$buil
|
||||
# Used by the udev rules so we can use callouts during testing without
|
||||
# installing everything first. Default is the empty string so the installed
|
||||
# rule will use udev's default path. Override is in udev/Makefile.am
|
||||
-AC_SUBST(UDEV_TEST_PATH, "")
|
||||
+UDEV_TEST_PATH="${UDEV_DIR}/"
|
||||
+AC_SUBST(UDEV_TEST_PATH)
|
||||
AC_PATH_PROG(SED, [sed])
|
||||
|
||||
AC_CONFIG_FILES([Makefile
|
||||
@@ -1,24 +1,23 @@
|
||||
{ stdenv, fetchhg, txt2tags }:
|
||||
{ stdenv, fetchurl, unzip, txt2tags }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
rev = "148";
|
||||
version = "hg-2012-12-02";
|
||||
name = "libixp-${version}";
|
||||
|
||||
src = fetchhg {
|
||||
url = https://code.google.com/p/libixp/;
|
||||
sha256 = "1nbnh2ff18fsrs28mx4bfgncq1d1nw5dd6iwhwvv5x2g9w7q5vvj";
|
||||
inherit rev;
|
||||
src = fetchurl {
|
||||
url = https://storage.googleapis.com/google-code-archive-source/v2/code.google.com/libixp/source-archive.zip;
|
||||
sha256 = "0kcdvdcrkw6q39v563ncis6d7ini64xbgn5fd3b4aa95fp9sj3is";
|
||||
};
|
||||
|
||||
configurePhase = ''
|
||||
sed -i -e "s|^PREFIX.*=.*$|PREFIX = $out|" config.mk
|
||||
'';
|
||||
|
||||
buildInputs = [ txt2tags ];
|
||||
buildInputs = [ unzip txt2tags ];
|
||||
|
||||
meta = {
|
||||
homepage = https://code.google.com/p/libixp/;
|
||||
homepage = https://code.google.com/archive/p/libixp/;
|
||||
description = "Portable, simple C-language 9P client and server libary";
|
||||
maintainers = with stdenv.lib.maintainers; [ kovirobi ];
|
||||
license = stdenv.lib.licenses.mit;
|
||||
|
||||
36
pkgs/development/libraries/libjpeg-drop/default.nix
Normal file
36
pkgs/development/libraries/libjpeg-drop/default.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{ stdenv, fetchurl, static ? true }:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libjpeg-drop-9b";
|
||||
|
||||
srcs = [
|
||||
(fetchurl {
|
||||
url = http://www.ijg.org/files/jpegsrc.v9b.tar.gz;
|
||||
sha256 = "0lnhpahgdwlrkd41lx6cr90r199f8mc6ydlh7jznj5klvacd63r4";
|
||||
})
|
||||
(fetchurl {
|
||||
url = http://jpegclub.org/droppatch.v9b.tar.gz;
|
||||
sha256 = "022bnvpird7w5pwbfqpq7j7pwja5kp6x9k3sdypcy3g2nwwy2wwk";
|
||||
})
|
||||
];
|
||||
|
||||
postUnpack = ''
|
||||
rm jpegtran
|
||||
mv jpegtran.c jpeg-9b/jpegtran.c
|
||||
mv transupp.c jpeg-9b/transupp.c
|
||||
mv transupp.h jpeg-9b/transupp.h
|
||||
'';
|
||||
|
||||
configureFlags = []
|
||||
++ optional static [ "--enable-static" "--disable-shared" ];
|
||||
|
||||
outputs = [ "dev" "out" "man" "bin" ];
|
||||
|
||||
meta = {
|
||||
homepage = http://jpegclub.org/jpegtran/;
|
||||
description = "Experimental lossless crop 'n' drop (cut & paste) patches for libjpeg";
|
||||
license = stdenv.lib.licenses.free;
|
||||
};
|
||||
}
|
||||
30
pkgs/development/libraries/libjson-rpc-cpp/0.2.1/default.nix
Normal file
30
pkgs/development/libraries/libjson-rpc-cpp/0.2.1/default.nix
Normal file
@@ -0,0 +1,30 @@
|
||||
{ stdenv, fetchurl, cmake, curl }:
|
||||
|
||||
let
|
||||
basename = "libjson-rpc-cpp";
|
||||
version = "0.2.1";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "${basename}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/cinemast/${basename}/archive/${version}.tar.gz";
|
||||
sha256 = "1pc9nn4968qkda8vr4f9dijn2fcldm8i0ymwmql29h4cl5ghdnpw";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake curl ];
|
||||
|
||||
NIX_LDFLAGS = "-lpthread";
|
||||
enableParallelBuilding = true;
|
||||
doCheck = true;
|
||||
|
||||
checkPhase = "LD_LIBRARY_PATH=out/ ctest";
|
||||
|
||||
meta = {
|
||||
description = "C++ framework for json-rpc (json remote procedure call)";
|
||||
homepage = https://github.com/cinemast/libjson-rpc-cpp;
|
||||
license = stdenv.lib.licenses.mit;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -1,30 +1,69 @@
|
||||
{ stdenv, fetchurl, cmake, curl }:
|
||||
{ stdenv
|
||||
, fetchgit
|
||||
, cmake
|
||||
, jsoncpp
|
||||
, argtable
|
||||
, curl
|
||||
, libmicrohttpd
|
||||
, doxygen
|
||||
, catch
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libjson-rpc-cpp-${version}";
|
||||
version = "0.6.0";
|
||||
|
||||
let
|
||||
basename = "libjson-rpc-cpp";
|
||||
version = "0.2.1";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "${basename}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/cinemast/${basename}/archive/${version}.tar.gz";
|
||||
sha256 = "1pc9nn4968qkda8vr4f9dijn2fcldm8i0ymwmql29h4cl5ghdnpw";
|
||||
src = fetchgit {
|
||||
url = https://github.com/cinemast/libjson-rpc-cpp.git;
|
||||
sha256 = "00fxxisg89zgg1wq047n8r8ws48jx35x3s6bbym4kg7dkxv9vv9f";
|
||||
rev = "c6e3d7195060774bf95afc6df9c9588922076d3e";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake curl ];
|
||||
patchPhase = ''
|
||||
for f in cmake/FindArgtable.cmake \
|
||||
src/stubgenerator/stubgenerator.cpp \
|
||||
src/stubgenerator/stubgeneratorfactory.cpp
|
||||
do
|
||||
sed -i -re 's/argtable2/argtable3/g' $f
|
||||
done
|
||||
|
||||
NIX_LDFLAGS = "-lpthread";
|
||||
enableParallelBuilding = true;
|
||||
doCheck = true;
|
||||
sed -i -re 's#MATCHES "jsoncpp"#MATCHES ".*/jsoncpp/json$"#g' cmake/FindJsoncpp.cmake
|
||||
'';
|
||||
|
||||
checkPhase = "LD_LIBRARY_PATH=out/ ctest";
|
||||
configurePhase = ''
|
||||
mkdir -p Build/Install
|
||||
pushd Build
|
||||
|
||||
meta = {
|
||||
cmake .. -DCMAKE_INSTALL_PREFIX=$(pwd)/Install \
|
||||
-DCMAKE_BUILD_TYPE=Release
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
|
||||
function fixRunPath {
|
||||
p=$(patchelf --print-rpath $1)
|
||||
q="$p:${stdenv.lib.makeLibraryPath [ stdenv.cc.cc jsoncpp argtable libmicrohttpd curl ]}:$out/lib"
|
||||
patchelf --set-rpath $q $1
|
||||
}
|
||||
|
||||
make install
|
||||
|
||||
sed -i -re "s#-([LI]).*/Build/Install(.*)#-\1$out\2#g" Install/lib/pkgconfig/*.pc
|
||||
for f in Install/lib/*.so* $(find Install/bin -executable -type f); do
|
||||
fixRunPath $f
|
||||
done
|
||||
|
||||
cp -r Install/* $out
|
||||
'';
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
buildInputs = [ cmake jsoncpp argtable curl libmicrohttpd doxygen catch ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "C++ framework for json-rpc (json remote procedure call)";
|
||||
homepage = https://github.com/cinemast/libjson-rpc-cpp;
|
||||
license = stdenv.lib.licenses.mit;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
{ stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, zlib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.7.86";
|
||||
version = "0.7.87";
|
||||
name = "libmediainfo-${version}";
|
||||
src = fetchurl {
|
||||
url = "http://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.xz";
|
||||
sha256 = "14m7cgd93mglc9a4x28pb4yc6nfxhqk7vfryca83vpn80la1lxy0";
|
||||
sha256 = "1gvjvc809mrhpcqr62cihhc6jnwml197xjbgydnzvsghih8dq8s9";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
{ callPackage, fetchFromGitHub, ... } @ args:
|
||||
|
||||
callPackage ./generic.nix (args // rec {
|
||||
version = "1.1.0";
|
||||
version = "2.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "msgpack";
|
||||
repo = "msgpack-c";
|
||||
rev = "cpp-${version}";
|
||||
sha256 = "1hnpnin6gjiilbzfd75871kamfn9grrf53qpbs061sflvz56fddq";
|
||||
sha256 = "189m44pwpcpf7g4yhzfla4djqyp2kl54wxmwfaj94gwgj5s370i7";
|
||||
};
|
||||
})
|
||||
|
||||
@@ -1,33 +1,41 @@
|
||||
{ stdenv, fetchurl, glib, libxml2, pkgconfig
|
||||
, gnomeSupport ? false, libgnome_keyring, sqlite, glib_networking, gobjectIntrospection
|
||||
, gnomeSupport ? true, libgnome_keyring, sqlite, glib_networking, gobjectIntrospection
|
||||
, valaSupport ? true, vala
|
||||
, libintlOrEmpty
|
||||
, intltool, python }:
|
||||
let
|
||||
majorVersion = "2.52";
|
||||
version = "${majorVersion}.2";
|
||||
majorVersion = "2.54";
|
||||
version = "${majorVersion}.1";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "libsoup-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/libsoup/${majorVersion}/libsoup-${version}.tar.xz";
|
||||
sha256 = "1p4k40y2gikr6m8p3hm0vswdzj2pj133dckipd2jk5bxbj5n4mfv";
|
||||
sha256 = "0cyn5pq4xl1gb8413h2p4d5wrn558dc054zhwmk4swrl40ijrd27";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
prePatch = ''
|
||||
patchShebangs libsoup/
|
||||
'' + stdenv.lib.optionalString valaSupport
|
||||
''
|
||||
substituteInPlace libsoup/Makefile.in --replace "\$(DESTDIR)\$(vapidir)" "\$(DESTDIR)\$(girdir)/../vala/vapi"
|
||||
'';
|
||||
|
||||
outputs = [ "dev" "out" ];
|
||||
|
||||
buildInputs = libintlOrEmpty ++ [ intltool python sqlite ];
|
||||
buildInputs = libintlOrEmpty ++ [ intltool python sqlite ]
|
||||
++ stdenv.lib.optionals valaSupport [ vala ];
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
propagatedBuildInputs = [ glib libxml2 gobjectIntrospection ]
|
||||
++ stdenv.lib.optionals gnomeSupport [ libgnome_keyring ];
|
||||
passthru.propagatedUserEnvPackages = [ glib_networking.out ];
|
||||
|
||||
# glib_networking is a runtime dependency, not a compile-time dependency
|
||||
configureFlags = "--disable-tls-check --enable-vala=no" + stdenv.lib.optionalString (!gnomeSupport) " --without-gnome";
|
||||
configureFlags = "--disable-tls-check"
|
||||
+ stdenv.lib.optionalString (!valaSupport) " --enable-vala=no"
|
||||
+ stdenv.lib.optionalString (valaSupport) " --enable-vala=yes"
|
||||
+ stdenv.lib.optionalString (!gnomeSupport) " --without-gnome";
|
||||
|
||||
NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-lintl";
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
|
||||
name = "libtomcrypt-1.17";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://libtom.org/files/crypt-1.17.tar.bz2";
|
||||
url = "https://github.com/libtom/libtomcrypt/releases/download/1.17/crypt-1.17.tar.bz2";
|
||||
sha256 = "e33b47d77a495091c8703175a25c8228aff043140b2554c08a3c3cd71f79d116";
|
||||
};
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
{stdenv, fetchurl, libtool}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "libtommath-0.39";
|
||||
name = "libtommath-1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://math.libtomcrypt.com/files/ltm-0.39.tar.bz2;
|
||||
sha256 = "1kjx8rrw62nanzc5qp8fj6r3ybhw8ca60ahkyb70f10aiij49zs2";
|
||||
url = https://github.com/libtom/libtommath/releases/download/v1.0/ltm-1.0.tar.xz;
|
||||
sha256 = "0v5mpd8zqjfs2hr900w1mxifz23xylyjdqyx1i1wl7q9xvwpsflr";
|
||||
};
|
||||
|
||||
buildInputs = [libtool];
|
||||
|
||||
38
pkgs/development/libraries/libui/default.nix
Normal file
38
pkgs/development/libraries/libui/default.nix
Normal file
@@ -0,0 +1,38 @@
|
||||
{ stdenv, fetchgit, cmake, pkgconfig, gtk3 }:
|
||||
|
||||
let
|
||||
shortName = "libui";
|
||||
version = "3.1a";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${shortName}-${version}";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/andlabs/libui.git";
|
||||
rev = "6ebdc96b93273c3cedf81159e7843025caa83058";
|
||||
sha256 = "1lpbfa298c61aarlzgp7vghrmxg1274pzxh1j9isv8x758gk6mfn";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake pkgconfig gtk3 ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/{include,lib}
|
||||
mkdir -p $out/lib/pkgconfig
|
||||
|
||||
mv ./out/${shortName}.so.0 $out/lib/
|
||||
ln -s $out/lib/${shortName}.so.0 $out/lib/${shortName}.so
|
||||
|
||||
cp $src/ui.h $out/include
|
||||
cp $src/ui_unix.h $out/include
|
||||
|
||||
cp ${./libui.pc} $out/lib/pkgconfig/${shortName}.pc
|
||||
substituteInPlace $out/lib/pkgconfig/${shortName}.pc \
|
||||
--subst-var-by out $out \
|
||||
--subst-var-by version "${version}"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
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.linux;
|
||||
};
|
||||
}
|
||||
11
pkgs/development/libraries/libui/libui.pc
Normal file
11
pkgs/development/libraries/libui/libui.pc
Normal file
@@ -0,0 +1,11 @@
|
||||
prefix=@out@
|
||||
exec_prefix=${prefix}
|
||||
libdir=${exec_prefix}/lib
|
||||
includedir=${exec_prefix}/include
|
||||
|
||||
Name: libui
|
||||
Description: Simple and portable (but not inflexible) GUI library
|
||||
Version: @version@
|
||||
|
||||
Libs: -L${libdir} -lui
|
||||
Cflags: -I${includedir}
|
||||
@@ -1,15 +1,14 @@
|
||||
{ lib, stdenv, fetchurl, pkgconfig
|
||||
|
||||
, abiVersion
|
||||
, mouseSupport ? false
|
||||
, unicode ? true
|
||||
|
||||
, gpm
|
||||
}:
|
||||
let
|
||||
inherit (stdenv) isDarwin;
|
||||
abiVersion = if isDarwin then "5" else "6";
|
||||
version = if isDarwin then "5.9" else "6.0";
|
||||
sha256 = if isDarwin
|
||||
version = if abiVersion == "5" then "5.9" else "6.0";
|
||||
sha256 = if abiVersion == "5"
|
||||
then "0fsn7xis81za62afan0vvm38bvgzg5wfmv1m86flqcj0nj7jjilh"
|
||||
else "0q3jck7lna77z5r42f13c4xglc7azd19pxfrjrpgp2yf615w4lgm";
|
||||
in
|
||||
@@ -21,7 +20,7 @@ stdenv.mkDerivation rec {
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
patches = [ ./clang.patch ];
|
||||
patches = [ ./clang.patch ] ++ lib.optional (abiVersion == "5" && stdenv.cc.isGNU) ./gcc-5.patch;
|
||||
|
||||
outputs = [ "dev" "out" "man" ];
|
||||
setOutputFlags = false; # some aren't supported
|
||||
|
||||
46
pkgs/development/libraries/ncurses/gcc-5.patch
Normal file
46
pkgs/development/libraries/ncurses/gcc-5.patch
Normal file
@@ -0,0 +1,46 @@
|
||||
https://bugs.gentoo.org/545114
|
||||
|
||||
extracted from the upstream change (which had many unrelated commits in one)
|
||||
|
||||
From 97bb4678dc03e753290b39bbff30ba2825df9517 Mon Sep 17 00:00:00 2001
|
||||
From: "Thomas E. Dickey" <dickey@invisible-island.net>
|
||||
Date: Sun, 7 Dec 2014 03:10:09 +0000
|
||||
Subject: [PATCH] ncurses 5.9 - patch 20141206
|
||||
|
||||
+ modify MKlib_gen.sh to work around change in development version of
|
||||
gcc introduced here:
|
||||
https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
|
||||
https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00236.html
|
||||
(reports by Marcus Shawcroft, Maohui Lei).
|
||||
|
||||
diff --git a/ncurses/base/MKlib_gen.sh b/ncurses/base/MKlib_gen.sh
|
||||
index d8cc3c9..b91398c 100755
|
||||
--- a/ncurses/base/MKlib_gen.sh
|
||||
+++ b/ncurses/base/MKlib_gen.sh
|
||||
@@ -474,11 +474,22 @@ sed -n -f $ED1 \
|
||||
-e 's/gen_$//' \
|
||||
-e 's/ / /g' >>$TMP
|
||||
|
||||
+cat >$ED1 <<EOF
|
||||
+s/ / /g
|
||||
+s/^ //
|
||||
+s/ $//
|
||||
+s/P_NCURSES_BOOL/NCURSES_BOOL/g
|
||||
+EOF
|
||||
+
|
||||
+# A patch discussed here:
|
||||
+# https://gcc.gnu.org/ml/gcc-patches/2014-06/msg02185.html
|
||||
+# introduces spurious #line markers. Work around that by ignoring the system's
|
||||
+# attempt to define "bool" and using our own symbol here.
|
||||
+sed -e 's/bool/P_NCURSES_BOOL/g' $TMP > $ED2
|
||||
+cat $ED2 >$TMP
|
||||
+
|
||||
$preprocessor $TMP 2>/dev/null \
|
||||
-| sed \
|
||||
- -e 's/ / /g' \
|
||||
- -e 's/^ //' \
|
||||
- -e 's/_Bool/NCURSES_BOOL/g' \
|
||||
+| sed -f $ED1 \
|
||||
| $AWK -f $AW2 \
|
||||
| sed -f $ED3 \
|
||||
| sed \
|
||||
@@ -1,6 +1,5 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, zlib
|
||||
, hdf5
|
||||
, m4
|
||||
, curl # for DAP
|
||||
@@ -16,7 +15,7 @@ in stdenv.mkDerivation rec {
|
||||
sha256 = "06ds8zm4qvjlqvv4qb637cqr0xgvbhnghrddisad5vj81s5kvpmx";
|
||||
};
|
||||
|
||||
buildInputs = [ hdf5 zlib m4 curl mpi];
|
||||
buildInputs = [ hdf5 m4 curl mpi];
|
||||
|
||||
passthru = {
|
||||
mpiSupport = mpiSupport;
|
||||
|
||||
@@ -26,7 +26,8 @@ in stdenv.mkDerivation rec {
|
||||
# https://www.open-mpi.org/community/lists/users/2015/11/28030.php
|
||||
patches = [ ./nbc_copy.patch ];
|
||||
|
||||
buildInputs = [ gfortran libibverbs ];
|
||||
buildInputs = [ gfortran ]
|
||||
++ optional (stdenv.isLinux || stdenv.isFreeBSD) libibverbs;
|
||||
|
||||
nativeBuildInputs = [ perl ];
|
||||
|
||||
@@ -46,5 +47,6 @@ in stdenv.mkDerivation rec {
|
||||
description = "Open source MPI-2 implementation";
|
||||
longDescription = "The Open MPI Project is an open source MPI-2 implementation that is developed and maintained by a consortium of academic, research, and industry partners. Open MPI is therefore able to combine the expertise, technologies, and resources from all across the High Performance Computing community in order to build the best MPI library available. Open MPI offers advantages for system and software vendors, application developers and computer science researchers.";
|
||||
maintainers = [ stdenv.lib.maintainers.mornfall ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
||||
29
pkgs/development/libraries/osm-gps-map/default.nix
Normal file
29
pkgs/development/libraries/osm-gps-map/default.nix
Normal file
@@ -0,0 +1,29 @@
|
||||
{ cairo, fetchzip, glib, gnome3, gobjectIntrospection, pkgconfig, stdenv }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "osm-gps-map-${version}";
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/nzjrs/osm-gps-map/releases/download/${version}/osm-gps-map-${version}.tar.gz";
|
||||
sha256 = "0fal3mqcf3yypir4f7njz0dm5wr7lqwpimjx28wz9imh48cqx9n9";
|
||||
};
|
||||
|
||||
outputs = [ "dev" "out" "doc" ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
buildInputs = [
|
||||
cairo glib gobjectIntrospection
|
||||
] ++ (with gnome3; [
|
||||
gnome_common gtk libsoup
|
||||
]);
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Gtk+ widget for displaying OpenStreetMap tiles";
|
||||
homepage = https://nzjrs.github.io/osm-gps-map;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ hrdinka ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -28,7 +28,9 @@ stdenv.mkDerivation {
|
||||
|
||||
buildFlags = [ "lib" "solib" ];
|
||||
|
||||
installTargets = "install";
|
||||
installTargets = if stdenv.isDarwin
|
||||
then ["install-staticlib" "install-shlib"]
|
||||
else "install";
|
||||
|
||||
buildInputs = [ gfortran openblas ];
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
src = fetchurl {
|
||||
url = ftp://ftp.trolltech.com/qt/source/qt-x11-free-3.3.8.tar.bz2;
|
||||
url = http://download.qt.io/archive/qt/3/qt-x11-free-3.3.8.tar.bz2;
|
||||
sha256 = "0jd4g3bwkgk2s4flbmgisyihm7cam964gzb3pawjlkhas01zghz8";
|
||||
};
|
||||
|
||||
@@ -39,14 +39,14 @@ stdenv.mkDerivation {
|
||||
-I${xextproto}/include
|
||||
${if openglSupport then "-dlopen-opengl
|
||||
-L${mesa}/lib -I${mesa}/include
|
||||
-L${libXmu}/lib -I${libXmu}/include" else ""}
|
||||
-L${libXmu.out}/lib -I${libXmu.dev}/include" else ""}
|
||||
${if threadSupport then "-thread" else "-no-thread"}
|
||||
${if xrenderSupport then "-xrender -L${libXrender}/lib -I${libXrender}/include" else "-no-xrender"}
|
||||
${if xrenderSupport then "-xrender -L${libXrender.out}/lib -I${libXrender.dev}/include" else "-no-xrender"}
|
||||
${if xrandrSupport then "-xrandr
|
||||
-L${libXrandr}/lib -I${libXrandr}/include
|
||||
-L${libXrandr.out}/lib -I${libXrandr.dev}/include
|
||||
-I${randrproto}/include" else "-no-xrandr"}
|
||||
${if xineramaSupport then "-xinerama -L${libXinerama}/lib -I${libXinerama}/include" else "-no-xinerama"}
|
||||
${if cursorSupport then "-L${libXcursor}/lib -I${libXcursor}/include" else ""}
|
||||
${if xineramaSupport then "-xinerama -L${libXinerama.out}/lib -I${libXinerama.dev}/include" else "-no-xinerama"}
|
||||
${if cursorSupport then "-L${libXcursor.out}/lib -I${libXcursor.dev}/include" else ""}
|
||||
${if mysqlSupport then "-qt-sql-mysql -L${mysql.lib}/lib/mysql -I${mysql.lib}/include/mysql" else ""}
|
||||
${if xftSupport then "-xft
|
||||
-L${libXft.out}/lib -I${libXft.dev}/include
|
||||
|
||||
@@ -49,6 +49,8 @@ let
|
||||
outputs = args.outputs or [ "dev" "out" ];
|
||||
setOutputFlags = args.setOutputFlags or false;
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
enableParallelBuilding = args.enableParallelBuilding or true;
|
||||
|
||||
meta = self.qtbase.meta // (args.meta or {});
|
||||
|
||||
@@ -2,11 +2,11 @@ wrapQtProgram() {
|
||||
local prog="$1"
|
||||
shift
|
||||
wrapProgram "$prog" \
|
||||
--prefix QT_PLUGIN_PATH : "$QT_PLUGIN_PATH" \
|
||||
--prefix QML_IMPORT_PATH : "$QML_IMPORT_PATH" \
|
||||
--prefix QML2_IMPORT_PATH : "$QML2_IMPORT_PATH" \
|
||||
--prefix XDG_CONFIG_DIRS : "$NIX_WRAP_XDG_CONFIG_DIRS" \
|
||||
--prefix XDG_DATA_DIRS : "$NIX_WRAP_XDG_DATA_DIRS" \
|
||||
--set QT_PLUGIN_PATH "$QT_PLUGIN_PATH" \
|
||||
--set QML_IMPORT_PATH "$QML_IMPORT_PATH" \
|
||||
--set QML2_IMPORT_PATH "$QML2_IMPORT_PATH" \
|
||||
--prefix XDG_DATA_DIRS : "$RUNTIME_XDG_DATA_DIRS" \
|
||||
--prefix XDG_CONFIG_DIRS : "$RUNTIME_XDG_CONFIG_DIRS" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
@@ -16,11 +16,11 @@ makeQtWrapper() {
|
||||
shift
|
||||
shift
|
||||
makeWrapper "$old" "$new" \
|
||||
--prefix QT_PLUGIN_PATH : "$QT_PLUGIN_PATH" \
|
||||
--prefix QML_IMPORT_PATH : "$QML_IMPORT_PATH" \
|
||||
--prefix QML2_IMPORT_PATH : "$QML2_IMPORT_PATH" \
|
||||
--prefix XDG_CONFIG_DIRS : "$NIX_WRAP_XDG_CONFIG_DIRS" \
|
||||
--prefix XDG_DATA_DIRS : "$NIX_WRAP_XDG_DATA_DIRS" \
|
||||
--set QT_PLUGIN_PATH "$QT_PLUGIN_PATH" \
|
||||
--set QML_IMPORT_PATH "$QML_IMPORT_PATH" \
|
||||
--set QML2_IMPORT_PATH "$QML2_IMPORT_PATH" \
|
||||
--prefix XDG_DATA_DIRS : "$RUNTIME_XDG_DATA_DIRS" \
|
||||
--prefix XDG_CONFIG_DIRS : "$RUNTIME_XDG_CONFIG_DIRS" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
@@ -29,10 +29,8 @@ _makeQtWrapperSetup() {
|
||||
export QT_PLUGIN_PATH="$QT_PLUGIN_PATH${QT_PLUGIN_PATH:+:}${!outputLib}/lib/qt5/plugins"
|
||||
export QML_IMPORT_PATH="$QML_IMPORT_PATH${QML_IMPORT_PATH:+:}${!outputLib}/lib/qt5/imports"
|
||||
export QML2_IMPORT_PATH="$QML2_IMPORT_PATH${QML2_IMPORT_PATH:+:}${!outputLib}/lib/qt5/qml"
|
||||
export XDG_CONFIG_DIRS="$XDG_CONFIG_DIRS${XDG_CONFIG_DIRS:+:}${!outputLib}/etc/xdg"
|
||||
export XDG_DATA_DIRS="$XDG_DATA_DIRS${XDG_DATA_DIRS:+:}${!outputLib}/share"
|
||||
export NIX_WRAP_XDG_CONFIG_DIRS="$NIX_WRAP_XDG_CONFIG_DIRS${NIX_WRAP_XDG_CONFIG_DIRS:+:}${!outputLib}/etc/xdg"
|
||||
export NIX_WRAP_XDG_DATA_DIRS="$NIX_WRAP_XDG_DATA_DIRS${NIX_WRAP_XDG_DATA_DIRS:+:}${!outputLib}/share"
|
||||
export RUNTIME_XDG_DATA_DIRS="$XDG_DATA_DIRS${XDG_DATA_DIRS:+:}${!outputBin}/share"
|
||||
export RUNTIME_XDG_CONFIG_DIRS="$XDG_CONFIG_DIRS${XDG_CONFIG_DIRS:+:}${!outputBin}/etc/xdg"
|
||||
}
|
||||
|
||||
prePhases+=(_makeQtWrapperSetup)
|
||||
|
||||
@@ -1,50 +1,16 @@
|
||||
if [[ -z "$QMAKE" ]]; then
|
||||
qmakeConfigurePhase() {
|
||||
runHook preConfigure
|
||||
|
||||
_qtLinkDependencyDir() {
|
||||
@lndir@/bin/lndir -silent "$1/$2" "$qtOut/$2"
|
||||
if [ -n "$NIX_QT_SUBMODULE" ]; then
|
||||
find "$1/$2" -printf "$2/%P\n" >> "$out/nix-support/qt-inputs"
|
||||
fi
|
||||
qmake PREFIX=$out $qmakeFlags
|
||||
|
||||
runHook postConfigure
|
||||
}
|
||||
|
||||
_qtLinkModule() {
|
||||
if [ -d "$1/mkspecs" ]; then
|
||||
# $1 is a Qt module
|
||||
_qtLinkDependencyDir "$1" mkspecs
|
||||
if [ -z "$dontUseQmakeConfigure" -a -z "$configurePhase" ]; then
|
||||
configurePhase=qmakeConfigurePhase
|
||||
fi
|
||||
|
||||
for dir in bin include lib share; do
|
||||
if [ -d "$1/$dir" ]; then
|
||||
_qtLinkDependencyDir "$1" "$dir"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
_qtRmModules() {
|
||||
cat "$out/nix-support/qt-inputs" | while read file; do
|
||||
if [ -h "$out/$file" ]; then
|
||||
rm "$out/$file"
|
||||
fi
|
||||
done
|
||||
|
||||
cat "$out/nix-support/qt-inputs" | while read file; do
|
||||
if [ -d "$out/$file" ]; then
|
||||
rmdir --ignore-fail-on-non-empty -p "$out/$file"
|
||||
fi
|
||||
done
|
||||
|
||||
rm "$out/nix-support/qt-inputs"
|
||||
}
|
||||
|
||||
_qtRmQmake() {
|
||||
rm "$qtOut/bin/qmake" "$qtOut/bin/qt.conf"
|
||||
}
|
||||
|
||||
_qtSetQmakePath() {
|
||||
export PATH="$qtOut/bin${PATH:+:}$PATH"
|
||||
}
|
||||
|
||||
_qtMultioutModuleDevs() {
|
||||
_qtModuleMultioutDevsPre() {
|
||||
# We cannot simply set these paths in configureFlags because libQtCore retains
|
||||
# references to the paths it was built with.
|
||||
moveToOutput "bin" "${!outputDev}"
|
||||
@@ -53,12 +19,14 @@ _qtMultioutModuleDevs() {
|
||||
# The destination directory must exist or moveToOutput will do nothing
|
||||
mkdir -p "${!outputDev}/share"
|
||||
moveToOutput "share/doc" "${!outputDev}"
|
||||
}
|
||||
|
||||
_qtModuleMultioutDevsPost() {
|
||||
# Move libtool archives and qmake project files to $dev/lib
|
||||
if [ "z${!outputLib}" != "z${!outputDev}" ]; then
|
||||
pushd "${!outputLib}"
|
||||
if [ -d "lib" ]; then
|
||||
find lib \( -name '*.a' -o -name '*.la' -o -name '*.prl' -print0 \) | \
|
||||
find lib \( -name '*.a' -o -name '*.la' -o -name '*.prl' \) -print0 | \
|
||||
while read -r -d $'\0' file; do
|
||||
mkdir -p "${!outputDev}/$(dirname "$file")"
|
||||
mv "${!outputLib}/$file" "${!outputDev}/$file"
|
||||
@@ -68,53 +36,7 @@ _qtMultioutModuleDevs() {
|
||||
fi
|
||||
}
|
||||
|
||||
_qtRmQtOut() {
|
||||
rm -fr "$qtOut"
|
||||
}
|
||||
|
||||
qmakeConfigurePhase() {
|
||||
runHook preConfigure
|
||||
|
||||
qmake PREFIX=$out $qmakeFlags
|
||||
|
||||
runHook postConfigure
|
||||
}
|
||||
|
||||
qtOut=""
|
||||
if [[ -z "$NIX_QT_SUBMODULE" ]]; then
|
||||
qtOut=`mktemp -d`
|
||||
else
|
||||
qtOut=$out
|
||||
fi
|
||||
|
||||
mkdir -p "$qtOut/bin" "$qtOut/mkspecs" "$qtOut/include" "$qtOut/nix-support" "$qtOut/lib" "$qtOut/share"
|
||||
|
||||
cp "@qt_dev@/bin/qmake" "$qtOut/bin"
|
||||
cat >"$qtOut/bin/qt.conf" <<EOF
|
||||
[Paths]
|
||||
Prefix = $qtOut
|
||||
Plugins = lib/qt5/plugins
|
||||
Imports = lib/qt5/imports
|
||||
Qml2Imports = lib/qt5/qml
|
||||
Documentation = share/doc/qt5
|
||||
EOF
|
||||
|
||||
export QMAKE="$qtOut/bin/qmake"
|
||||
|
||||
envHooks+=(_qtLinkModule)
|
||||
# Set PATH to find qmake first in a preConfigure hook
|
||||
# It must run after all the envHooks!
|
||||
postHooks+=(_qtSetQmakePath)
|
||||
|
||||
if [ -z "$dontUseQmakeConfigure" -a -z "$configurePhase" ]; then
|
||||
configurePhase=qmakeConfigurePhase
|
||||
fi
|
||||
|
||||
if [ -n "$NIX_QT_SUBMODULE" ]; then
|
||||
postInstallHooks+=(_qtRmQmake _qtRmModules)
|
||||
preFixupHooks+=(_qtMultioutModuleDevs)
|
||||
else
|
||||
postInstallHooks+=(_qtRmQtOut)
|
||||
fi
|
||||
|
||||
preFixupHooks+=(_qtModuleMultioutDevsPre)
|
||||
postFixupHooks+=(_qtModuleMultioutDevsPost)
|
||||
fi
|
||||
|
||||
@@ -276,6 +276,7 @@ stdenv.mkDerivation {
|
||||
fixQtModuleCMakeConfig "Xml"
|
||||
'';
|
||||
|
||||
inherit lndir;
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
@@ -24,11 +24,10 @@ propagateOnce() {
|
||||
addToSearchPathOnceWithCustomDelimiter ' ' "$@"
|
||||
}
|
||||
|
||||
_qtPropagateRuntimeDependencies() {
|
||||
_qtPropagate() {
|
||||
for dir in "lib/qt5/plugins" "lib/qt5/qml" "lib/qt5/imports"; do
|
||||
if [ -d "$1/$dir" ]; then
|
||||
propagateOnce propagatedBuildInputs "$1"
|
||||
propagateOnce propagatedUserEnvPkgs "$1"
|
||||
break
|
||||
fi
|
||||
done
|
||||
@@ -37,7 +36,23 @@ _qtPropagateRuntimeDependencies() {
|
||||
addToSearchPathOnce QML2_IMPORT_PATH "$1/lib/qt5/qml"
|
||||
}
|
||||
|
||||
envHooks+=(_qtPropagateRuntimeDependencies)
|
||||
crossEnvHooks+=(_qtPropagate)
|
||||
|
||||
_qtPropagateNative() {
|
||||
for dir in "lib/qt5/plugins" "lib/qt5/qml" "lib/qt5/imports"; do
|
||||
if [ -d "$1/$dir" ]; then
|
||||
propagateOnce propagatedNativeBuildInputs "$1"
|
||||
break
|
||||
fi
|
||||
done
|
||||
if [ -z "$crossConfig" ]; then
|
||||
addToSearchPathOnce QT_PLUGIN_PATH "$1/lib/qt5/plugins"
|
||||
addToSearchPathOnce QML_IMPORT_PATH "$1/lib/qt5/imports"
|
||||
addToSearchPathOnce QML2_IMPORT_PATH "$1/lib/qt5/qml"
|
||||
fi
|
||||
}
|
||||
|
||||
envHooks+=(_qtPropagateNative)
|
||||
|
||||
_qtMultioutDevs() {
|
||||
# This is necessary whether the package is a Qt module or not
|
||||
@@ -50,3 +65,107 @@ if [[ -z "$NIX_QT_PIC" ]]; then
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE${NIX_CFLAGS_COMPILE:+ }-fPIC"
|
||||
export NIX_QT_PIC=1
|
||||
fi
|
||||
|
||||
_qtSetCMakePrefix() {
|
||||
export CMAKE_PREFIX_PATH="$NIX_QT5_TMP${CMAKE_PREFIX_PATH:+:}${CMAKE_PREFIX_PATH}"
|
||||
}
|
||||
|
||||
_qtRmTmp() {
|
||||
if [ -z "$NIX_QT_SUBMODULE" ]; then
|
||||
rm -fr "$NIX_QT5_TMP"
|
||||
else
|
||||
cat "$NIX_QT5_TMP/nix-support/qt-inputs" | while read file; do
|
||||
if [ ! -d "$NIX_QT5_TMP/$file" ]; then
|
||||
rm -f "$NIX_QT5_TMP/$file"
|
||||
fi
|
||||
done
|
||||
|
||||
cat "$NIX_QT5_TMP/nix-support/qt-inputs" | while read dir; do
|
||||
if [ -d "$NIX_QT5_TMP/$dir" ]; then
|
||||
rmdir --ignore-fail-on-non-empty -p "$NIX_QT5_TMP/$dir"
|
||||
fi
|
||||
done
|
||||
|
||||
rm "$NIX_QT5_TMP/nix-support/qt-inputs"
|
||||
fi
|
||||
}
|
||||
|
||||
_qtSetQmakePath() {
|
||||
export PATH="$NIX_QT5_TMP/bin${PATH:+:}$PATH"
|
||||
}
|
||||
|
||||
if [ -z "$NIX_QT5_TMP" ]; then
|
||||
if [ -z "$NIX_QT_SUBMODULE" ]; then
|
||||
NIX_QT5_TMP=$(mktemp -d)
|
||||
else
|
||||
NIX_QT5_TMP=$out
|
||||
fi
|
||||
postInstallHooks+=(_qtRmTmp)
|
||||
|
||||
mkdir -p "$NIX_QT5_TMP/nix-support"
|
||||
for subdir in bin include lib mkspecs share; do
|
||||
mkdir "$NIX_QT5_TMP/$subdir"
|
||||
echo "$subdir/" >> "$NIX_QT5_TMP/nix-support/qt-inputs"
|
||||
done
|
||||
|
||||
postHooks+=(_qtSetCMakePrefix)
|
||||
|
||||
cp "@dev@/bin/qmake" "$NIX_QT5_TMP/bin"
|
||||
echo "bin/qmake" >> "$NIX_QT5_TMP/nix-support/qt-inputs"
|
||||
|
||||
cat >"$NIX_QT5_TMP/bin/qt.conf" <<EOF
|
||||
[Paths]
|
||||
Prefix = $NIX_QT5_TMP
|
||||
Plugins = lib/qt5/plugins
|
||||
Imports = lib/qt5/imports
|
||||
Qml2Imports = lib/qt5/qml
|
||||
Documentation = share/doc/qt5
|
||||
EOF
|
||||
echo "bin/qt.conf" >> "$NIX_QT5_TMP/nix-support/qt-inputs"
|
||||
|
||||
export QMAKE="$NIX_QT5_TMP/bin/qmake"
|
||||
|
||||
# Set PATH to find qmake first in a preConfigure hook
|
||||
# It must run after all the envHooks!
|
||||
preConfigureHooks+=(_qtSetQmakePath)
|
||||
fi
|
||||
|
||||
qt5LinkModuleDir() {
|
||||
if [ -d "$1/$2" ]; then
|
||||
@lndir@/bin/lndir -silent "$1/$2" "$NIX_QT5_TMP/$2"
|
||||
find "$1/$2" -printf "$2/%P\n" >> "$NIX_QT5_TMP/nix-support/qt-inputs"
|
||||
fi
|
||||
}
|
||||
|
||||
NIX_QT5_MODULES="${NIX_QT5_MODULES}${NIX_QT5_MODULES:+:}@out@"
|
||||
NIX_QT5_MODULES_DEV="${NIX_QT5_MODULES_DEV}${NIX_QT5_MODULES_DEV:+:}@dev@"
|
||||
|
||||
_qtLinkAllModules() {
|
||||
IFS=: read -a modules <<< $NIX_QT5_MODULES
|
||||
for module in ${modules[@]}; do
|
||||
qt5LinkModuleDir "$module" "lib"
|
||||
done
|
||||
|
||||
IFS=: read -a modules <<< $NIX_QT5_MODULES_DEV
|
||||
for module in ${modules[@]}; do
|
||||
qt5LinkModuleDir "$module" "bin"
|
||||
qt5LinkModuleDir "$module" "include"
|
||||
qt5LinkModuleDir "$module" "lib"
|
||||
qt5LinkModuleDir "$module" "mkspecs"
|
||||
qt5LinkModuleDir "$module" "share"
|
||||
done
|
||||
}
|
||||
|
||||
preConfigureHooks+=(_qtLinkAllModules)
|
||||
|
||||
_qtFixCMakePaths() {
|
||||
find "${!outputLib}" -name "*.cmake" | while read file; do
|
||||
substituteInPlace "$file" \
|
||||
--subst-var-by NIX_OUT "${!outputLib}" \
|
||||
--subst-var-by NIX_DEV "${!outputDev}"
|
||||
done
|
||||
}
|
||||
|
||||
if [ -n "$NIX_QT_SUBMODULE" ]; then
|
||||
postInstallHooks+=(_qtFixCMakePaths)
|
||||
fi
|
||||
|
||||
@@ -4,7 +4,6 @@ qtSubmodule {
|
||||
name = "qtlocation";
|
||||
qtInputs = [ qtbase qtmultimedia ];
|
||||
postFixup = ''
|
||||
fixQtModuleCMakeConfig "Location"
|
||||
fixQtModuleCMakeConfig "Positioning"
|
||||
'';
|
||||
}
|
||||
|
||||
2
pkgs/development/libraries/qt-5/5.5/setup-hook.sh
Normal file
2
pkgs/development/libraries/qt-5/5.5/setup-hook.sh
Normal file
@@ -0,0 +1,2 @@
|
||||
NIX_QT5_MODULES="${NIX_QT5_MODULES}${NIX_QT5_MODULES:+:}@out@"
|
||||
NIX_QT5_MODULES_DEV="${NIX_QT5_MODULES_DEV}${NIX_QT5_MODULES_DEV:+:}@dev@"
|
||||
@@ -2,11 +2,11 @@ wrapQtProgram() {
|
||||
local prog="$1"
|
||||
shift
|
||||
wrapProgram "$prog" \
|
||||
--prefix QT_PLUGIN_PATH : "$QT_PLUGIN_PATH" \
|
||||
--prefix QML_IMPORT_PATH : "$QML_IMPORT_PATH" \
|
||||
--prefix QML2_IMPORT_PATH : "$QML2_IMPORT_PATH" \
|
||||
--prefix XDG_CONFIG_DIRS : "$NIX_WRAP_XDG_CONFIG_DIRS" \
|
||||
--prefix XDG_DATA_DIRS : "$NIX_WRAP_XDG_DATA_DIRS" \
|
||||
--set QT_PLUGIN_PATH "$QT_PLUGIN_PATH" \
|
||||
--set QML_IMPORT_PATH "$QML_IMPORT_PATH" \
|
||||
--set QML2_IMPORT_PATH "$QML2_IMPORT_PATH" \
|
||||
--prefix XDG_DATA_DIRS : "$RUNTIME_XDG_DATA_DIRS" \
|
||||
--prefix XDG_CONFIG_DIRS : "$RUNTIME_XDG_CONFIG_DIRS" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
@@ -16,11 +16,11 @@ makeQtWrapper() {
|
||||
shift
|
||||
shift
|
||||
makeWrapper "$old" "$new" \
|
||||
--prefix QT_PLUGIN_PATH : "$QT_PLUGIN_PATH" \
|
||||
--prefix QML_IMPORT_PATH : "$QML_IMPORT_PATH" \
|
||||
--prefix QML2_IMPORT_PATH : "$QML2_IMPORT_PATH" \
|
||||
--prefix XDG_CONFIG_DIRS : "$NIX_WRAP_XDG_CONFIG_DIRS" \
|
||||
--prefix XDG_DATA_DIRS : "$NIX_WRAP_XDG_DATA_DIRS" \
|
||||
--set QT_PLUGIN_PATH "$QT_PLUGIN_PATH" \
|
||||
--set QML_IMPORT_PATH "$QML_IMPORT_PATH" \
|
||||
--set QML2_IMPORT_PATH "$QML2_IMPORT_PATH" \
|
||||
--prefix XDG_DATA_DIRS : "$RUNTIME_XDG_DATA_DIRS" \
|
||||
--prefix XDG_CONFIG_DIRS : "$RUNTIME_XDG_CONFIG_DIRS" \
|
||||
"$@"
|
||||
}
|
||||
|
||||
@@ -29,10 +29,8 @@ _makeQtWrapperSetup() {
|
||||
export QT_PLUGIN_PATH="$QT_PLUGIN_PATH${QT_PLUGIN_PATH:+:}${!outputLib}/lib/qt5/plugins"
|
||||
export QML_IMPORT_PATH="$QML_IMPORT_PATH${QML_IMPORT_PATH:+:}${!outputLib}/lib/qt5/imports"
|
||||
export QML2_IMPORT_PATH="$QML2_IMPORT_PATH${QML2_IMPORT_PATH:+:}${!outputLib}/lib/qt5/qml"
|
||||
export XDG_CONFIG_DIRS="$XDG_CONFIG_DIRS${XDG_CONFIG_DIRS:+:}${!outputLib}/etc/xdg"
|
||||
export XDG_DATA_DIRS="$XDG_DATA_DIRS${XDG_DATA_DIRS:+:}${!outputLib}/share"
|
||||
export NIX_WRAP_XDG_CONFIG_DIRS="$NIX_WRAP_XDG_CONFIG_DIRS${NIX_WRAP_XDG_CONFIG_DIRS:+:}${!outputLib}/etc/xdg"
|
||||
export NIX_WRAP_XDG_DATA_DIRS="$NIX_WRAP_XDG_DATA_DIRS${NIX_WRAP_XDG_DATA_DIRS:+:}${!outputLib}/share"
|
||||
export RUNTIME_XDG_DATA_DIRS="$XDG_DATA_DIRS${XDG_DATA_DIRS:+:}${!outputBin}/share"
|
||||
export RUNTIME_XDG_CONFIG_DIRS="$XDG_CONFIG_DIRS${XDG_CONFIG_DIRS:+:}${!outputBin}/etc/xdg"
|
||||
}
|
||||
|
||||
prePhases+=(_makeQtWrapperSetup)
|
||||
|
||||
@@ -28,7 +28,6 @@ _qtPropagate() {
|
||||
for dir in "lib/qt5/plugins" "lib/qt5/qml" "lib/qt5/imports"; do
|
||||
if [ -d "$1/$dir" ]; then
|
||||
propagateOnce propagatedBuildInputs "$1"
|
||||
propagateOnce propagatedUserEnvPkgs "$1"
|
||||
break
|
||||
fi
|
||||
done
|
||||
@@ -43,9 +42,6 @@ _qtPropagateNative() {
|
||||
for dir in "lib/qt5/plugins" "lib/qt5/qml" "lib/qt5/imports"; do
|
||||
if [ -d "$1/$dir" ]; then
|
||||
propagateOnce propagatedNativeBuildInputs "$1"
|
||||
if [ -z "$crossConfig" ]; then
|
||||
propagateOnce propagatedUserEnvPkgs "$1"
|
||||
fi
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
--- a/TESTING/MATGEN/CMakeLists.txt
|
||||
+++ b/TESTING/MATGEN/CMakeLists.txt
|
||||
@@ -97,3 +97,4 @@ if(enable_complex16)
|
||||
endif()
|
||||
|
||||
add_library(matgen ${sources})
|
||||
+target_link_libraries(matgen superlu)
|
||||
36
pkgs/development/libraries/science/math/superlu/default.nix
Normal file
36
pkgs/development/libraries/science/math/superlu/default.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{ stdenv, fetchurl, cmake,
|
||||
gfortran, openblasCompat}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "5.2.1";
|
||||
name = "superlu-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://crd-legacy.lbl.gov/~xiaoye/SuperLU/superlu_${version}.tar.gz";
|
||||
sha256 = "0qzlb7cd608q62kyppd0a8c65l03vrwqql6gsm465rky23b6dyr8";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake gfortran ];
|
||||
|
||||
propagatedBuildInputs = [ openblasCompat ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DBUILD_SHARED_LIBS=true"
|
||||
"-DUSE_XSDK_DEFAULTS=true"
|
||||
];
|
||||
|
||||
patches = [
|
||||
./find-openblas-library.patch
|
||||
./add-superlu-lib-as-dependency-for-the-unit-tests.patch
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
checkTarget = "test";
|
||||
|
||||
meta = {
|
||||
homepage = http://crd-legacy.lbl.gov/~xiaoye/SuperLU/;
|
||||
license = http://crd-legacy.lbl.gov/~xiaoye/SuperLU/License.txt;
|
||||
description = "A library for the solution of large, sparse, nonsymmetric systems of linear equations";
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -75,6 +75,8 @@ set(CMAKE_C_FLAGS_RELEASE "-O3" CACHE STRING "")
|
||||
######################################################################
|
||||
#
|
||||
#--------------------- BLAS ---------------------
|
||||
+find_package(OpenBLAS)
|
||||
+set(TPL_BLAS_LIBRARIES ${OpenBLAS_LIBRARIES})
|
||||
if(NOT enable_blaslib)
|
||||
if (TPL_BLAS_LIBRARIES)
|
||||
set(BLAS_FOUND TRUE)
|
||||
@@ -1,14 +1,19 @@
|
||||
{ stdenv, fetchurl, cmake, libX11, freetype, libjpeg, openal, libsndfile
|
||||
, glew, libXrandr, libXrender, udev
|
||||
{ stdenv, fetchurl, cmake, libX11, freetype, libjpeg, openal, flac, libvorbis
|
||||
, glew, libXrandr, libXrender, udev, xcbutilimage
|
||||
}:
|
||||
|
||||
let
|
||||
version = "2.3";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "sfml-2.2";
|
||||
name = "sfml-${version}";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/LaurentGomila/SFML/archive/2.2.tar.gz";
|
||||
sha256 = "1xbpzkqwgbsjdda7n3c2z5m16bhppz1z9rbhmhb8r1im7s95hd2l";
|
||||
url = "https://github.com/LaurentGomila/SFML/archive/${version}.tar.gz";
|
||||
sha256 = "12588hfs0pfsv20x3zhq0gdmxv9m7g27i5lfz88303kpglp9yzn2";
|
||||
};
|
||||
buildInputs = [ cmake libX11 freetype libjpeg openal libsndfile glew
|
||||
libXrandr libXrender udev
|
||||
buildInputs = [ cmake libX11 freetype libjpeg openal flac libvorbis glew
|
||||
libXrandr libXrender udev xcbutilimage
|
||||
];
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.sfml-dev.org/;
|
||||
|
||||
27
pkgs/development/libraries/tclx/default.nix
Normal file
27
pkgs/development/libraries/tclx/default.nix
Normal file
@@ -0,0 +1,27 @@
|
||||
{ stdenv, fetchurl, tcl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "tclx-${version}.${patch}";
|
||||
version = "8.4";
|
||||
patch = "1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/tclx/tclx${version}.${patch}.tar.bz2";
|
||||
sha256 = "1v2qwzzidz0is58fd1p7wfdbscxm3ip2wlbqkj5jdhf6drh1zd59";
|
||||
};
|
||||
|
||||
passthru = {
|
||||
libPrefix = ""; # Using tclx${version} did not work
|
||||
};
|
||||
|
||||
buildInputs = [ tcl ];
|
||||
|
||||
configureFlags = [ "--with-tcl=${tcl}/lib" "--exec-prefix=\${prefix}" ];
|
||||
|
||||
meta = {
|
||||
homepage = http://tclx.sourceforge.net/;
|
||||
description = "Tcl extensions";
|
||||
license = stdenv.lib.licenses.tcltk;
|
||||
maintainers = with stdenv.lib.maintainers; [ kovirobi ];
|
||||
};
|
||||
}
|
||||
@@ -17,9 +17,11 @@ stdenv.mkDerivation {
|
||||
"--with-tcl=${tcl}/lib"
|
||||
];
|
||||
|
||||
buildInputs = [ pkgconfig tcl libXft ]
|
||||
buildInputs = [ pkgconfig ]
|
||||
++ stdenv.lib.optional stdenv.isDarwin fontconfig;
|
||||
|
||||
propagatedBuildInputs = [ tcl libXft ];
|
||||
|
||||
NIX_CFLAGS_LINK = if stdenv.isDarwin then "-lfontconfig" else null;
|
||||
|
||||
inherit tcl;
|
||||
|
||||
26
pkgs/development/libraries/unittest-cpp/default.nix
Normal file
26
pkgs/development/libraries/unittest-cpp/default.nix
Normal file
@@ -0,0 +1,26 @@
|
||||
{stdenv, fetchFromGitHub, cmake}:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "unittest-cpp-${version}";
|
||||
version = "1.6.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "unittest-cpp";
|
||||
repo = "unittest-cpp";
|
||||
rev = "v${version}";
|
||||
sha256 = "1sva2bm90z4vmwwvp0af82f7p4sdq5j2jjqzhs2ppihdkggn62d1";
|
||||
};
|
||||
|
||||
buildInputs = [cmake];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/unittest-cpp/unittest-cpp";
|
||||
description = "Lightweight unit testing framework for C++";
|
||||
license = licenses.mit;
|
||||
maintainers = [maintainers.tohl];
|
||||
};
|
||||
}
|
||||
6
pkgs/development/libraries/v8/3.30.33.nix
Normal file
6
pkgs/development/libraries/v8/3.30.33.nix
Normal file
@@ -0,0 +1,6 @@
|
||||
{ callPackage, ... } @ args:
|
||||
|
||||
callPackage ./generic.nix (args // {
|
||||
version = "3.30.33.16";
|
||||
sha256 = "1azf1b36gqj4z5x0k9wq2dkp99zfyhwb0d6i2cl5fjm3k6js7l45";
|
||||
})
|
||||
@@ -83,6 +83,7 @@ stdenv.mkDerivation rec {
|
||||
sed -i 's,#!/usr/bin/env python,#!${python}/bin/python,' build/gyp_v8
|
||||
sed -i 's,/bin/echo,${coreutils}/bin/echo,' build/standalone.gypi
|
||||
sed -i '/CR_CLANG_REVISION/ d' build/standalone.gypi
|
||||
sed -i 's/-Wno-format-pedantic//g' build/standalone.gypi
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
@@ -104,6 +105,8 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [ which ];
|
||||
buildInputs = [ readline python icu patchelf ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow";
|
||||
|
||||
buildFlags = [
|
||||
"LINK=g++"
|
||||
"-C out"
|
||||
@@ -135,7 +138,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = with lib; {
|
||||
description = "Google's open source JavaScript engine";
|
||||
maintainers = with maintainers; [ cstrahan ];
|
||||
maintainers = with maintainers; [ cstrahan proglodyte ];
|
||||
platforms = platforms.linux;
|
||||
license = licenses.bsd3;
|
||||
};
|
||||
|
||||
@@ -1,6 +1,192 @@
|
||||
{ callPackage, ... } @ args:
|
||||
{ stdenv, lib, fetchgit, fetchFromGitHub, gyp, readline, python, which, icu
|
||||
, patchelf, coreutils
|
||||
, doCheck ? false
|
||||
}:
|
||||
|
||||
callPackage ./generic.nix (args // {
|
||||
version = "3.30.33.16";
|
||||
sha256 = "1azf1b36gqj4z5x0k9wq2dkp99zfyhwb0d6i2cl5fjm3k6js7l45";
|
||||
})
|
||||
assert readline != null;
|
||||
|
||||
let
|
||||
arch = if stdenv.isArm
|
||||
then if stdenv.is64bit
|
||||
then"arm64"
|
||||
else "arm"
|
||||
else if stdenv.is64bit
|
||||
then"x64"
|
||||
else "ia32";
|
||||
git_url = "https://chromium.googlesource.com";
|
||||
clangFlag = if stdenv.isDarwin then "1" else "0";
|
||||
|
||||
deps = {
|
||||
"build" = fetchgit {
|
||||
url = "${git_url}/chromium/src/build.git";
|
||||
rev = "2c67d4d74b6b3673228fab191918500a582ef3b0";
|
||||
sha256 = "0jc7hci5yh792pw0ahjfxrk5xzllnlrv9llmwlgcgn2x8x6bn34q";
|
||||
};
|
||||
"tools/gyp" = fetchgit {
|
||||
url = "${git_url}/external/gyp.git";
|
||||
rev = "e7079f0e0e14108ab0dba58728ff219637458563";
|
||||
sha256 = "0yd1ds13z0r9d2sb67f9i1gjn1zgzwyfv96qqqp6pn5pcfbialg6";
|
||||
};
|
||||
"third_party/icu" = fetchgit {
|
||||
url = "${git_url}/chromium/deps/icu.git";
|
||||
rev = "b5ecbb29a26532f72ef482569b223d5a51fd50bf";
|
||||
sha256 = "0ld47wdnk8grcba221z67l3pnphv9zwifk4y44f5b946w3iwmpns";
|
||||
};
|
||||
"buildtools" = fetchgit {
|
||||
url = "${git_url}/chromium/buildtools.git";
|
||||
rev = "60f7f9a8b421ebf9a46041dfa2ff11c0fe59c582";
|
||||
sha256 = "0i10bw7yhslklqwcx5krs3k05sicb73cpwd0mkaz96yxsvmkvjq0";
|
||||
};
|
||||
"base/trace_event/common" = fetchgit {
|
||||
url = "${git_url}/chromium/src/base/trace_event/common.git";
|
||||
rev = "315bf1e2d45be7d53346c31cfcc37424a32c30c8";
|
||||
sha256 = "1pp2ygvp20j6g4868hrmiw0j704kdvsi9d9wx2gbk7w79rc36695";
|
||||
};
|
||||
"platform/inspector_protocol" = fetchgit {
|
||||
url = "${git_url}/chromium/src/third_party/WebKit/Source/platform/inspector_protocol.git";
|
||||
rev = "f49542089820a34a9a6e33264e09b73779407512";
|
||||
sha256 = "1lwpass3p4rpp2kjmxxxpkqyv4lznxhf4i0yy7mmrd7jkpc7kn8k";
|
||||
};
|
||||
"tools/mb" = fetchgit {
|
||||
url = "${git_url}/chromium/src/tools/mb.git";
|
||||
rev = "0c4dc43c454f26936ddf3074ab8e9a41e3dc03a3";
|
||||
sha256 = "0f96qphbmwn1pprv0a6xf68p01s1jzx2sz6pmadqbrs1dgh1xwnk";
|
||||
};
|
||||
"tools/swarming_client" = fetchgit {
|
||||
url = "${git_url}/external/swarming.client.git";
|
||||
rev = "7f63a272f7d9785ce41b6d10bb3106c49a968e57";
|
||||
sha256 = "1pmb8bq4qifjf2dzz8c4jdwhlvwgrl9ycjaalcyh1sbh4lx3yvv2";
|
||||
};
|
||||
"testing/gtest" = fetchgit {
|
||||
url = "${git_url}/external/github.com/google/googletest.git";
|
||||
rev = "6f8a66431cb592dad629028a50b3dd418a408c87";
|
||||
sha256 = "0bdba2lr6pg15bla9600zg0r0vm4lnrx0wqz84p376wfdxra24vw";
|
||||
};
|
||||
"testing/gmock" = fetchgit {
|
||||
url = "${git_url}/external/googlemock.git";
|
||||
rev = "0421b6f358139f02e102c9c332ce19a33faf75be";
|
||||
sha256 = "1xiky4v98maxs8fg1avcd56y0alv3hw8qyrlpd899zgzbq2k10pp";
|
||||
};
|
||||
"test/benchmarks/data" = fetchgit {
|
||||
url = "${git_url}/v8/deps/third_party/benchmarks.git";
|
||||
rev = "05d7188267b4560491ff9155c5ee13e207ecd65f";
|
||||
sha256 = "0ad2ay14bn67d61ks4dmzadfnhkj9bw28r4yjdjjyzck7qbnzchl";
|
||||
};
|
||||
"test/mozilla/data" = fetchgit {
|
||||
url = "${git_url}/v8/deps/third_party/mozilla-tests.git";
|
||||
rev = "f6c578a10ea707b1a8ab0b88943fe5115ce2b9be";
|
||||
sha256 = "0rfdan76yfawqxbwwb35aa57b723j3z9fx5a2w16nls02yk2kqyn";
|
||||
};
|
||||
"test/simdjs/data" = fetchgit {
|
||||
url = "${git_url}/external/github.com/tc39/ecmascript_simd.git";
|
||||
rev = "baf493985cb9ea7cdbd0d68704860a8156de9556";
|
||||
sha256 = "178r0k40a58c1187gfzqz2i6as34l8cliy1g1x870wyy0qcvlq2q";
|
||||
};
|
||||
"test/test262/data" = fetchgit {
|
||||
url = "${git_url}/external/github.com/tc39/test262.git";
|
||||
rev = "88bc7fe7586f161201c5f14f55c9c489f82b1b67";
|
||||
sha256 = "0gc7fmaqrgwb6rl02jnrm3synpwzzg0dfqy3zm386r1qcisl93xs";
|
||||
};
|
||||
"test/test262/harness" = fetchgit {
|
||||
url = "${git_url}/external/github.com/test262-utils/test262-harness-py.git";
|
||||
rev = "cbd968f54f7a95c6556d53ba852292a4c49d11d8";
|
||||
sha256 = "094c3600a4wh1m3fvvlivn290kik1pzzvwabq77lk8bh4jkkv7ki";
|
||||
};
|
||||
"tools/clang" = fetchgit {
|
||||
url = "${git_url}/chromium/src/tools/clang.git";
|
||||
rev = "496622ab4aaa5be7e5a9b80617013cb02f45dc87";
|
||||
sha256 = "1gkhk2bzpxwzkirzcqfixxpprbr8mn6rk00krm25daarm3smydmf";
|
||||
};
|
||||
};
|
||||
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "v8-${version}";
|
||||
version = "5.4.232";
|
||||
|
||||
inherit doCheck;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "v8";
|
||||
repo = "v8";
|
||||
rev = version;
|
||||
sha256 = "1nqxbkz75m8xrjih0sj3f3iqvif4192vxdaxzy8r787rihjwg9nx";
|
||||
};
|
||||
|
||||
postUnpack = ''
|
||||
${lib.concatStringsSep "\n" (
|
||||
lib.mapAttrsToList (n: v: ''
|
||||
mkdir -p $sourceRoot/${n}
|
||||
cp -r ${v}/* $sourceRoot/${n}
|
||||
'') deps)}
|
||||
'';
|
||||
|
||||
# Patch based off of:
|
||||
# https://github.com/cowboyd/libv8/tree/v5.1.281.67.0/patches
|
||||
patches = lib.optional (!doCheck) ./libv8-5.4.232.patch;
|
||||
|
||||
postPatch = ''
|
||||
sed -i 's,#!/usr/bin/env python,#!${python}/bin/python,' gypfiles/gyp_v8
|
||||
sed -i 's,/bin/echo,${coreutils}/bin/echo,' gypfiles/standalone.gypi
|
||||
sed -i '/CR_CLANG_REVISION/ d' gypfiles/standalone.gypi
|
||||
sed -i 's/-Wno-format-pedantic//g' gypfiles/standalone.gypi
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
PYTHONPATH="tools/generate_shim_headers:$PYTHONPATH" \
|
||||
PYTHONPATH="$(toPythonPath ${gyp}):$PYTHONPATH" \
|
||||
gypfiles/gyp_v8 \
|
||||
-f make \
|
||||
--generator-output="out" \
|
||||
-Dflock_index=0 \
|
||||
-Dclang=${clangFlag} \
|
||||
-Dv8_enable_i18n_support=1 \
|
||||
-Duse_system_icu=1 \
|
||||
-Dcomponent=shared_library \
|
||||
-Dconsole=readline \
|
||||
-Dv8_target_arch=${arch} \
|
||||
-Dv8_use_external_startup_data=0
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ which ];
|
||||
buildInputs = [ readline python icu patchelf ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow";
|
||||
|
||||
buildFlags = [
|
||||
"LINK=g++"
|
||||
"-C out"
|
||||
"builddir=$(CURDIR)/Release"
|
||||
"BUILDTYPE=Release"
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# the `libv8_libplatform` target is _only_ built as a static library,
|
||||
# and is expected to be statically linked in when needed.
|
||||
# see the following link for further commentary:
|
||||
# https://github.com/cowboyd/therubyracer/issues/391
|
||||
installPhase = ''
|
||||
install -vD out/Release/d8 "$out/bin/d8"
|
||||
install -vD out/Release/mksnapshot "$out/bin/mksnapshot"
|
||||
${if stdenv.isDarwin then ''
|
||||
install -vD out/Release/lib.target/libv8.dylib "$out/lib/libv8.dylib"
|
||||
install_name_tool -change /usr/local/lib/libv8.dylib $out/lib/libv8.dylib -change /usr/lib/libgcc_s.1.dylib ${stdenv.cc.cc.lib}/lib/libgcc_s.1.dylib $out/bin/d8
|
||||
install_name_tool -id $out/lib/libv8.dylib -change /usr/lib/libgcc_s.1.dylib ${stdenv.cc.cc.lib}/lib/libgcc_s.1.dylib $out/lib/libv8.dylib
|
||||
'' else ''
|
||||
install -vD out/Release/lib.target/libv8.so "$out/lib/libv8.so"
|
||||
''}
|
||||
mkdir -p "$out/include"
|
||||
cp -vr include/*.h "$out/include"
|
||||
cp -vr include/libplatform "$out/include"
|
||||
cp -v out/Release/*.a "$out/lib"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Google's open source JavaScript engine";
|
||||
maintainers = with maintainers; [ cstrahan proglodyte ];
|
||||
platforms = platforms.linux;
|
||||
license = licenses.bsd3;
|
||||
};
|
||||
}
|
||||
|
||||
97
pkgs/development/libraries/v8/libv8-5.4.232.patch
Normal file
97
pkgs/development/libraries/v8/libv8-5.4.232.patch
Normal file
@@ -0,0 +1,97 @@
|
||||
From c9f42d1314c6026efcfcc01824f4e2fdfd05ebcf Mon Sep 17 00:00:00 2001
|
||||
From: Ben Sklaroff <bsklaroff@gmail.com>
|
||||
Date: Sat, 23 Jul 2016 18:16:55 -0400
|
||||
Subject: [PATCH] libv8-5.4.232
|
||||
|
||||
---
|
||||
Makefile | 5 +----
|
||||
gypfiles/all.gyp | 32 --------------------------------
|
||||
gypfiles/standalone.gypi | 5 ++++-
|
||||
3 files changed, 5 insertions(+), 37 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 5ea5c58..d1b2d73 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -261,11 +261,8 @@ GYPFILES = third_party/icu/icu.gypi third_party/icu/icu.gyp \
|
||||
gypfiles/shim_headers.gypi gypfiles/features.gypi \
|
||||
gypfiles/standalone.gypi \
|
||||
gypfiles/toolchain.gypi gypfiles/all.gyp gypfiles/mac/asan.gyp \
|
||||
- test/cctest/cctest.gyp test/fuzzer/fuzzer.gyp \
|
||||
- test/unittests/unittests.gyp src/v8.gyp \
|
||||
- tools/parser-shell.gyp testing/gmock.gyp testing/gtest.gyp \
|
||||
buildtools/third_party/libc++abi/libc++abi.gyp \
|
||||
- buildtools/third_party/libc++/libc++.gyp samples/samples.gyp \
|
||||
+ buildtools/third_party/libc++/libc++.gyp \
|
||||
src/third_party/vtune/v8vtune.gyp src/d8.gyp
|
||||
|
||||
# If vtunejit=on, the v8vtune.gyp will be appended.
|
||||
diff --git a/gypfiles/all.gyp b/gypfiles/all.gyp
|
||||
index ff1bea4..96820a0 100644
|
||||
--- a/gypfiles/all.gyp
|
||||
+++ b/gypfiles/all.gyp
|
||||
@@ -16,38 +16,6 @@
|
||||
'../tools/parser-shell.gyp:parser-shell',
|
||||
],
|
||||
}],
|
||||
- # These items don't compile for Android on Mac.
|
||||
- ['host_os!="mac" or OS!="android"', {
|
||||
- 'dependencies': [
|
||||
- '../samples/samples.gyp:*',
|
||||
- '../test/cctest/cctest.gyp:*',
|
||||
- '../test/fuzzer/fuzzer.gyp:*',
|
||||
- '../test/unittests/unittests.gyp:*',
|
||||
- ],
|
||||
- }],
|
||||
- ['test_isolation_mode != "noop"', {
|
||||
- 'dependencies': [
|
||||
- '../test/bot_default.gyp:*',
|
||||
- '../test/benchmarks/benchmarks.gyp:*',
|
||||
- '../test/default.gyp:*',
|
||||
- '../test/ignition.gyp:*',
|
||||
- '../test/intl/intl.gyp:*',
|
||||
- '../test/message/message.gyp:*',
|
||||
- '../test/mjsunit/mjsunit.gyp:*',
|
||||
- '../test/mozilla/mozilla.gyp:*',
|
||||
- '../test/optimize_for_size.gyp:*',
|
||||
- '../test/perf.gyp:*',
|
||||
- '../test/preparser/preparser.gyp:*',
|
||||
- '../test/simdjs/simdjs.gyp:*',
|
||||
- '../test/test262/test262.gyp:*',
|
||||
- '../test/webkit/webkit.gyp:*',
|
||||
- '../tools/check-static-initializers.gyp:*',
|
||||
- '../tools/gcmole/run_gcmole.gyp:*',
|
||||
- '../tools/jsfunfuzz/jsfunfuzz.gyp:*',
|
||||
- '../tools/run-deopt-fuzzer.gyp:*',
|
||||
- '../tools/run-valgrind.gyp:*',
|
||||
- ],
|
||||
- }],
|
||||
]
|
||||
}
|
||||
]
|
||||
diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
|
||||
index 89f06a0..a43976d 100644
|
||||
--- a/gypfiles/standalone.gypi
|
||||
+++ b/gypfiles/standalone.gypi
|
||||
@@ -506,6 +506,9 @@
|
||||
}], # fastbuild!=0
|
||||
],
|
||||
'target_conditions': [
|
||||
+ ['_type=="static_library"', {
|
||||
+ 'standalone_static_library': 1,
|
||||
+ }],
|
||||
['v8_code == 0', {
|
||||
'defines!': [
|
||||
'DEBUG',
|
||||
@@ -770,7 +773,7 @@
|
||||
[ 'visibility=="hidden" and v8_enable_backtrace==0', {
|
||||
'cflags': [ '-fvisibility=hidden' ],
|
||||
}],
|
||||
- [ 'component=="shared_library"', {
|
||||
+ [ 'component=="shared_library" or component=="static_library" and (v8_target_arch=="x64" or v8_target_arch=="arm64" or v8_target_arch=="arm")', {
|
||||
'cflags': [ '-fPIC', ],
|
||||
}],
|
||||
[ 'clang==0 and coverage==1', {
|
||||
--
|
||||
2.9.0
|
||||
|
||||
@@ -15,7 +15,7 @@ assert stdenv.isDarwin -> !enableCredentialStorage;
|
||||
with stdenv.lib;
|
||||
stdenv.mkDerivation rec {
|
||||
name = "webkitgtk-${version}";
|
||||
version = "2.4.9";
|
||||
version = "2.4.11";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Web content rendering engine, GTK+ port";
|
||||
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://webkitgtk.org/releases/${name}.tar.xz";
|
||||
sha256 = "0r651ar3p0f8zwl7764kyimxk5hy88cwy116pv8cl5l8hbkjkpxg";
|
||||
sha256 = "1xsvnvyvlywwyf6m9ainpsg87jkxjmd37q6zgz9cxb7v3c2ym2jq";
|
||||
};
|
||||
|
||||
CC = "cc";
|
||||
@@ -46,6 +46,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
configureFlags = with stdenv.lib; [
|
||||
"--disable-geolocation"
|
||||
"--disable-jit"
|
||||
(optionalString enableIntrospection "--enable-introspection")
|
||||
] ++ optional withGtk2 [
|
||||
"--with-gtk=2.0"
|
||||
|
||||
Reference in New Issue
Block a user