Merge branch 'master' into staging
This commit is contained in:
@@ -6,24 +6,18 @@
|
||||
}:
|
||||
|
||||
composableDerivation.composableDerivation {} (fixed: rec {
|
||||
version = "2.0.2";
|
||||
version = "2.1.1";
|
||||
name = "gdal-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.osgeo.org/gdal/${version}/${name}.tar.gz";
|
||||
sha256 = "db7722caf8d9dd798ec18012b9cacf40a518918466126a88b9fd277bd7d40cc4";
|
||||
sha256 = "55fc6ffbe76e9d2e7e6cf637010e5d4bba6a966d065f40194ff798544198236b";
|
||||
};
|
||||
|
||||
buildInputs = [ unzip libjpeg libtiff libpng proj openssl ]
|
||||
++ (with pythonPackages; [ python numpy wrapPython ])
|
||||
++ (stdenv.lib.optionals netcdfSupport [ netcdf hdf5 curl ]);
|
||||
|
||||
patches = [
|
||||
# This ensures that the python package is installed into gdal's prefix,
|
||||
# rather than trying to install into python's prefix.
|
||||
./python.patch
|
||||
];
|
||||
|
||||
# Don't use optimization for gcc >= 4.3. That's said to be causing segfaults.
|
||||
# Unset CC and CXX as they confuse libtool.
|
||||
preConfigure = "export CFLAGS=-O0 CXXFLAGS=-O0; unset CC CXX";
|
||||
|
||||
@@ -5,6 +5,6 @@ kdeFramework {
|
||||
meta = { maintainers = [ lib.maintainers.ttuegel ]; };
|
||||
outputs = [ "out" ];
|
||||
nativeBuildInputs = [ ecm ];
|
||||
propagatedBuildInputs = [ qtsvg ];
|
||||
buildInputs = [ qtsvg ];
|
||||
propagatedUserEnvPkgs = [ qtsvg.out ];
|
||||
}
|
||||
|
||||
@@ -26,6 +26,9 @@ let
|
||||
|
||||
outputs = args.outputs or [ "dev" "out" ];
|
||||
|
||||
propagatedUserEnvPkgs =
|
||||
builtins.map lib.getBin (args.propagatedBuildInputs or []);
|
||||
|
||||
cmakeFlags =
|
||||
(args.cmakeFlags or [])
|
||||
++ [ "-DBUILD_TESTING=OFF" ]
|
||||
@@ -50,6 +53,16 @@ let
|
||||
} // (args.meta or {});
|
||||
});
|
||||
|
||||
kdeEnv = import ./kde-env.nix {
|
||||
inherit (pkgs) stdenv lib;
|
||||
inherit (pkgs.xorg) lndir;
|
||||
};
|
||||
|
||||
kdeWrapper = import ./kde-wrapper.nix {
|
||||
inherit (pkgs) stdenv lib makeWrapper;
|
||||
inherit kdeEnv;
|
||||
};
|
||||
|
||||
attica = callPackage ./attica.nix {};
|
||||
baloo = callPackage ./baloo.nix {};
|
||||
bluez-qt = callPackage ./bluez-qt.nix {};
|
||||
|
||||
31
pkgs/development/libraries/kde-frameworks/kde-env.nix
Normal file
31
pkgs/development/libraries/kde-frameworks/kde-env.nix
Normal file
@@ -0,0 +1,31 @@
|
||||
{ stdenv, lib, lndir }:
|
||||
|
||||
drv: pkgs:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "kde-env-${drv.name}";
|
||||
nativeBuildInputs = [ lndir ];
|
||||
propagatedUserEnvPkgs = builtins.map lib.getBin ([drv] ++ pkgs);
|
||||
unpackPhase = "true";
|
||||
configurePhase = "runHook preConfigure; runHook postConfigure";
|
||||
buildPhase = "true";
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
propagated=""
|
||||
for i in $propagatedUserEnvPkgs; do
|
||||
findInputs $i propagated propagated-user-env-packages
|
||||
done
|
||||
|
||||
for tgt in bin etc/xdg lib/libexec lib/qt5 share; do
|
||||
mkdir -p "$out/$tgt"
|
||||
for p in $propagated; do
|
||||
if [ -d "$p/$tgt" ]; then
|
||||
lndir -silent "$p/$tgt" "$out/$tgt" >/dev/null 2>&1
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
}
|
||||
47
pkgs/development/libraries/kde-frameworks/kde-wrapper.nix
Normal file
47
pkgs/development/libraries/kde-frameworks/kde-wrapper.nix
Normal file
@@ -0,0 +1,47 @@
|
||||
{ stdenv, lib, makeWrapper, kdeEnv }:
|
||||
|
||||
drv:
|
||||
|
||||
{ targets, paths ? [] }:
|
||||
|
||||
let
|
||||
env = kdeEnv drv paths;
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
inherit (drv) name;
|
||||
|
||||
drv = lib.getBin drv;
|
||||
inherit env targets;
|
||||
passthru = { unwrapped = drv; };
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
unpackPhase = "true";
|
||||
configurePhase = "runHook preConfigure; runHook postConfigure";
|
||||
buildPhase = "true";
|
||||
|
||||
installPhase = ''
|
||||
for t in $targets; do
|
||||
if [ -a "$drv/$t" ]; then
|
||||
makeWrapper "$drv/$t" "$out/$t" \
|
||||
--argv0 '"$0"' \
|
||||
--suffix PATH : "$out/bin:$env/bin" \
|
||||
--prefix XDG_CONFIG_DIRS : "$env/etc/xdg" \
|
||||
--prefix XDG_DATA_DIRS : "$env/share" \
|
||||
--set QML_IMPORT_PATH "$env/lib/qt5/imports" \
|
||||
--set QML2_IMPORT_PATH "$env/lib/qt5/qml" \
|
||||
--set QT_PLUGIN_PATH "$env/lib/qt5/plugins"
|
||||
else
|
||||
echo "no such file or directory: $drv/$t"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
for s in applications dbus-1 desktop-directories icons mime polkit-1; do
|
||||
if [ -d "$env/share/$s" ]; then
|
||||
mkdir -p "$out/share"
|
||||
ln -s "$env/share/$s" "$out/share/$s"
|
||||
fi
|
||||
done
|
||||
'';
|
||||
}
|
||||
@@ -1,57 +1,9 @@
|
||||
_ecmSetXdgDirs() {
|
||||
addToSearchPathOnce XDG_DATA_DIRS "$1/share"
|
||||
addToSearchPathOnce XDG_CONFIG_DIRS "$1/etc/xdg"
|
||||
addToSearchPathOnce RUNTIME_XDG_CONFIG_DIRS "$1/etc/xdg"
|
||||
}
|
||||
|
||||
_ecmSharePaths=( \
|
||||
"appdata" \
|
||||
"applications" \
|
||||
"config.cfg" \
|
||||
"dbus-1" \
|
||||
"desktop-directories" \
|
||||
"doc" \
|
||||
"icons" \
|
||||
"kconf_update" \
|
||||
"kservices5" \
|
||||
"kservicetypes5" \
|
||||
"knotifications5" \
|
||||
"kxmlgui5" \
|
||||
"locale" \
|
||||
"mime" \
|
||||
"polkit-1" \
|
||||
"sounds" \
|
||||
"templates" \
|
||||
"wallpapers" \
|
||||
)
|
||||
|
||||
_ecmPropagateNative() {
|
||||
for dir in ${_ecmSharePaths[@]}; do
|
||||
if [ -d "$1/share/$dir" ]; then
|
||||
propagateOnce propagatedNativeBuildInputs "$1"
|
||||
if [ -z "$crossConfig" ]; then
|
||||
propagateOnce propagatedUserEnvPkgs "$1"
|
||||
addToSearchPathOnce RUNTIME_XDG_DATA_DIRS "$1/share"
|
||||
fi
|
||||
break
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
envHooks+=(_ecmSetXdgDirs _ecmPropagate)
|
||||
|
||||
_ecmPropagate() {
|
||||
for dir in ${_ecmSharePaths[@]}; do
|
||||
if [ -d "$1/share/$dir" ]; then
|
||||
propagateOnce propagatedBuildInputs "$1"
|
||||
propagateOnce propagatedUserEnvPkgs "$1"
|
||||
addToSearchPathOnce RUNTIME_XDG_DATA_DIRS "$1/share"
|
||||
break
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
crossEnvHooks+=(_ecmPropagate)
|
||||
envHooks+=(_ecmSetXdgDirs)
|
||||
|
||||
_ecmConfig() {
|
||||
# Because we need to use absolute paths here, we must set *all* the paths.
|
||||
@@ -59,41 +11,41 @@ _ecmConfig() {
|
||||
cmakeFlags+=" -DKDE_INSTALL_BINDIR=${!outputBin}/bin"
|
||||
cmakeFlags+=" -DKDE_INSTALL_SBINDIR=${!outputBin}/sbin"
|
||||
cmakeFlags+=" -DKDE_INSTALL_LIBDIR=${!outputLib}/lib"
|
||||
cmakeFlags+=" -DKDE_INSTALL_LIBEXECDIR=${!outputLib}/lib/libexec"
|
||||
cmakeFlags+=" -DKDE_INSTALL_LIBEXECDIR=${!outputBin}/lib/libexec"
|
||||
cmakeFlags+=" -DKDE_INSTALL_CMAKEPACKAGEDIR=${!outputDev}/lib/cmake"
|
||||
cmakeFlags+=" -DKDE_INSTALL_QTPLUGINDIR=${!outputLib}/lib/qt5/plugins"
|
||||
cmakeFlags+=" -DKDE_INSTALL_PLUGINDIR=${!outputLib}/lib/qt5/plugins"
|
||||
cmakeFlags+=" -DKDE_INSTALL_QTQUICKIMPORTSDIR=${!outputLib}/lib/qt5/imports"
|
||||
cmakeFlags+=" -DKDE_INSTALL_QMLDIR=${!outputLib}/lib/qt5/qml"
|
||||
cmakeFlags+=" -DKDE_INSTALL_QTPLUGINDIR=${!outputBin}/lib/qt5/plugins"
|
||||
cmakeFlags+=" -DKDE_INSTALL_PLUGINDIR=${!outputBin}/lib/qt5/plugins"
|
||||
cmakeFlags+=" -DKDE_INSTALL_QTQUICKIMPORTSDIR=${!outputBin}/lib/qt5/imports"
|
||||
cmakeFlags+=" -DKDE_INSTALL_QMLDIR=${!outputBin}/lib/qt5/qml"
|
||||
cmakeFlags+=" -DKDE_INSTALL_INCLUDEDIR=${!outputInclude}/include"
|
||||
cmakeFlags+=" -DKDE_INSTALL_LOCALSTATEDIR=/var"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DATAROOTDIR=${!outputLib}/share"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DATADIR=${!outputLib}/share"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DOCBUNDLEDIR=${!outputLib}/share/doc/HTML"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KCFGDIR=${!outputLib}/share/config.kcfg"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KCONFUPDATEDIR=${!outputLib}/share/kconf_update"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KSERVICES5DIR=${!outputLib}/share/kservices5"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KSERVICETYPES5DIR=${!outputLib}/share/kservicetypes5"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KXMLGUI5DIR=${!outputLib}/share/kxmlgui5"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KNOTIFY5RCDIR=${!outputLib}/share/knotifications5"
|
||||
cmakeFlags+=" -DKDE_INSTALL_ICONDIR=${!outputLib}/share/icons"
|
||||
cmakeFlags+=" -DKDE_INSTALL_LOCALEDIR=${!outputLib}/share/locale"
|
||||
cmakeFlags+=" -DKDE_INSTALL_SOUNDDIR=${!outputLib}/share/sounds"
|
||||
cmakeFlags+=" -DKDE_INSTALL_TEMPLATEDIR=${!outputLib}/share/templates"
|
||||
cmakeFlags+=" -DKDE_INSTALL_WALLPAPERDIR=${!outputLib}/share/wallpapers"
|
||||
cmakeFlags+=" -DKDE_INSTALL_APPDIR=${!outputLib}/share/applications"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DESKTOPDIR=${!outputLib}/share/desktop-directories"
|
||||
cmakeFlags+=" -DKDE_INSTALL_MIMEDIR=${!outputLib}/share/mime/packages"
|
||||
cmakeFlags+=" -DKDE_INSTALL_METAINFODIR=${!outputLib}/share/appdata"
|
||||
cmakeFlags+=" -DKDE_INSTALL_MANDIR=${!outputLib}/share/man"
|
||||
cmakeFlags+=" -DKDE_INSTALL_INFODIR=${!outputLib}/share/info"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DBUSDIR=${!outputLib}/share/dbus-1"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DBUSINTERFACEDIR=${!outputLib}/share/dbus-1/interfaces"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DBUSSERVICEDIR=${!outputLib}/share/dbus-1/services"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DBUSSYSTEMSERVICEDIR=${!outputLib}/share/dbus-1/system-services"
|
||||
cmakeFlags+=" -DKDE_INSTALL_SYSCONFDIR=${!outputLib}/etc"
|
||||
cmakeFlags+=" -DKDE_INSTALL_CONFDIR=${!outputLib}/etc/xdg"
|
||||
cmakeFlags+=" -DKDE_INSTALL_AUTOSTARTDIR=${!outputLib}/etc/xdg/autostart"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DATAROOTDIR=${!outputBin}/share"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DATADIR=${!outputBin}/share"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DOCBUNDLEDIR=${!outputBin}/share/doc/HTML"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KCFGDIR=${!outputBin}/share/config.kcfg"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KCONFUPDATEDIR=${!outputBin}/share/kconf_update"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KSERVICES5DIR=${!outputBin}/share/kservices5"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KSERVICETYPES5DIR=${!outputBin}/share/kservicetypes5"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KXMLGUI5DIR=${!outputBin}/share/kxmlgui5"
|
||||
cmakeFlags+=" -DKDE_INSTALL_KNOTIFY5RCDIR=${!outputBin}/share/knotifications5"
|
||||
cmakeFlags+=" -DKDE_INSTALL_ICONDIR=${!outputBin}/share/icons"
|
||||
cmakeFlags+=" -DKDE_INSTALL_LOCALEDIR=${!outputBin}/share/locale"
|
||||
cmakeFlags+=" -DKDE_INSTALL_SOUNDDIR=${!outputBin}/share/sounds"
|
||||
cmakeFlags+=" -DKDE_INSTALL_TEMPLATEDIR=${!outputBin}/share/templates"
|
||||
cmakeFlags+=" -DKDE_INSTALL_WALLPAPERDIR=${!outputBin}/share/wallpapers"
|
||||
cmakeFlags+=" -DKDE_INSTALL_APPDIR=${!outputBin}/share/applications"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DESKTOPDIR=${!outputBin}/share/desktop-directories"
|
||||
cmakeFlags+=" -DKDE_INSTALL_MIMEDIR=${!outputBin}/share/mime/packages"
|
||||
cmakeFlags+=" -DKDE_INSTALL_METAINFODIR=${!outputBin}/share/appdata"
|
||||
cmakeFlags+=" -DKDE_INSTALL_MANDIR=${!outputBin}/share/man"
|
||||
cmakeFlags+=" -DKDE_INSTALL_INFODIR=${!outputBin}/share/info"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DBUSDIR=${!outputBin}/share/dbus-1"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DBUSINTERFACEDIR=${!outputBin}/share/dbus-1/interfaces"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DBUSSERVICEDIR=${!outputBin}/share/dbus-1/services"
|
||||
cmakeFlags+=" -DKDE_INSTALL_DBUSSYSTEMSERVICEDIR=${!outputBin}/share/dbus-1/system-services"
|
||||
cmakeFlags+=" -DKDE_INSTALL_SYSCONFDIR=${!outputBin}/etc"
|
||||
cmakeFlags+=" -DKDE_INSTALL_CONFDIR=${!outputBin}/etc/xdg"
|
||||
cmakeFlags+=" -DKDE_INSTALL_AUTOSTARTDIR=${!outputBin}/etc/xdg/autostart"
|
||||
}
|
||||
|
||||
preConfigureHooks+=(_ecmConfig)
|
||||
|
||||
@@ -13,6 +13,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [ boost cmake curl ];
|
||||
|
||||
# curl upgrade to 7.50.0 (#17152) broke the curl mock tests, disabling for now
|
||||
# upstream bug raised https://tickets.puppetlabs.com/browse/LTH-108
|
||||
cmakeFlags = [ "-DLEATHERMAN_MOCK_CURL=OFF" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/puppetlabs/leatherman/;
|
||||
description = "A collection of C++ and CMake utility libraries";
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
{ stdenv, lib, fetchurl, fetchpatch, pkgconfig, libiconv, libintlOrEmpty
|
||||
, zlib, curl, cairo, freetype, fontconfig, lcms, libjpeg, openjpeg
|
||||
, minimal ? false, qt4Support ? false, qt4 ? null, qt5Support ? false, qtbase ? null
|
||||
, minimal ? false
|
||||
, qt4Support ? false, qt4 ? null
|
||||
, qt5Support ? false, qtbase ? null
|
||||
, utils ? false, suffix ? "glib"
|
||||
}:
|
||||
|
||||
@@ -31,6 +33,9 @@ stdenv.mkDerivation rec {
|
||||
|
||||
NIX_CFLAGS_COMPILE = [ "-DQT_NO_DEBUG" ];
|
||||
|
||||
# Any package depending on Qt >= 5.7 must build using the C++11 standard.
|
||||
CXXFLAGS = lib.optional qt5Support "-std=c++11";
|
||||
|
||||
configureFlags = with lib;
|
||||
[
|
||||
"--enable-xpdf-headers"
|
||||
|
||||
Reference in New Issue
Block a user