Merge pull request #42762 from jtojnar/libical-3
libical: 2.0.0 → 3.0.3
This commit is contained in:
commit
29bcc391e7
@ -23,6 +23,11 @@ in stdenv.mkDerivation rec {
|
|||||||
url = https://src.fedoraproject.org/rpms/california/raw/c00bf9924d8fa8cb0a9ec06564d1a1b00c9055af/f/0002-Build-with-evolution-data-server-3.13.90.patch;
|
url = https://src.fedoraproject.org/rpms/california/raw/c00bf9924d8fa8cb0a9ec06564d1a1b00c9055af/f/0002-Build-with-evolution-data-server-3.13.90.patch;
|
||||||
sha256 = "0g9923n329p32gzr1q52ad30f8vyz8vrri4rih0w8klmf02ga4pm";
|
sha256 = "0g9923n329p32gzr1q52ad30f8vyz8vrri4rih0w8klmf02ga4pm";
|
||||||
})
|
})
|
||||||
|
# Apply Fedora patch to build with libical > 3.0
|
||||||
|
(fetchurl {
|
||||||
|
url = https://src.fedoraproject.org/rpms/california/raw/2af9a6a1b67b53f3fca1472c5350dc11a1acf28f/f/california-0.4.0-libical-3.0.patch;
|
||||||
|
sha256 = "0cxycfaql0bsiz9hzanns33pwdqpb5n44znfcfa66i1bin34r4n6";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ stdenv, fetchurl, pkgconfig, bison, flex, intltool, gtk, libical, dbus-glib
|
{ stdenv, fetchurl, fetchpatch, pkgconfig, bison, flex, intltool, gtk, libical, dbus-glib
|
||||||
, libnotify, popt, xfce
|
, libnotify, popt, xfce
|
||||||
}:
|
}:
|
||||||
|
|
||||||
@ -13,6 +13,15 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "0qlhvnl2m33vfxqlbkic2nmfpwyd4mq230jzhs48cg78392amy9w";
|
sha256 = "0qlhvnl2m33vfxqlbkic2nmfpwyd4mq230jzhs48cg78392amy9w";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix build with libical 3.0
|
||||||
|
(fetchpatch {
|
||||||
|
name = "fix-libical3.patch";
|
||||||
|
url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/libical3.patch?h=packages/orage&id=7b1b06c42dda034d538977b9f3550b28e370057f;
|
||||||
|
sha256 = "1l8s106mcidmbx2p8c2pi8v9ngbv2x3fsgv36j8qk8wyd4qd1jbf";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgconfig intltool bison flex ];
|
nativeBuildInputs = [ pkgconfig intltool bison flex ];
|
||||||
|
|
||||||
buildInputs = [ gtk libical dbus-glib libnotify popt xfce.libxfce4util
|
buildInputs = [ gtk libical dbus-glib libnotify popt xfce.libxfce4util
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ lib, mkXfceDerivation, dbus_glib ? null, gtk2, libical, libnotify ? null
|
{ lib, fetchpatch, mkXfceDerivation, dbus_glib ? null, gtk2, libical, libnotify ? null
|
||||||
, popt ? null, libxfce4ui ? null, xfce4-panel ? null, withPanelPlugin ? true }:
|
, popt ? null, libxfce4ui ? null, xfce4-panel ? null, withPanelPlugin ? true }:
|
||||||
|
|
||||||
assert withPanelPlugin -> libxfce4ui != null && xfce4-panel != null;
|
assert withPanelPlugin -> libxfce4ui != null && xfce4-panel != null;
|
||||||
@ -15,4 +15,13 @@ mkXfceDerivation rec {
|
|||||||
sha256 = "04z6y1vfaz1im1zq1zr7cf8pjibjhj9zkyanbp7vn30q520yxa0m";
|
sha256 = "04z6y1vfaz1im1zq1zr7cf8pjibjhj9zkyanbp7vn30q520yxa0m";
|
||||||
buildInputs = [ dbus_glib gtk2 libical libnotify popt ]
|
buildInputs = [ dbus_glib gtk2 libical libnotify popt ]
|
||||||
++ optionals withPanelPlugin [ libxfce4ui xfce4-panel ];
|
++ optionals withPanelPlugin [ libxfce4ui xfce4-panel ];
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# Fix build with libical 3.0
|
||||||
|
(fetchpatch {
|
||||||
|
name = "fix-libical3.patch";
|
||||||
|
url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/libical3.patch?h=packages/orage&id=7b1b06c42dda034d538977b9f3550b28e370057f;
|
||||||
|
sha256 = "1l8s106mcidmbx2p8c2pi8v9ngbv2x3fsgv36j8qk8wyd4qd1jbf";
|
||||||
|
})
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
@ -1,29 +1,53 @@
|
|||||||
{ stdenv, fetchFromGitHub, perl, cmake }:
|
{ stdenv, fetchFromGitHub, perl, pkgconfig, cmake, ninja, vala, gobjectIntrospection
|
||||||
|
, python3, tzdata, gtk-doc, docbook_xsl, docbook_xml_dtd_43, glib, libxml2, icu }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "libical-${version}";
|
name = "libical-${version}";
|
||||||
version = "2.0.0";
|
version = "3.0.3";
|
||||||
|
|
||||||
|
outputs = [ "out" "dev" "devdoc" ];
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "libical";
|
owner = "libical";
|
||||||
repo = "libical";
|
repo = "libical";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "0xsvqy1hzmwxn783wrb2k8p751544pzv39v9ynr9pj4yzkwjzsvb";
|
sha256 = "0dhlfn6n136di4fbqd74gdaibyh5zz1vac5x8ii3bjc2d5h7hw8h";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ perl cmake ];
|
nativeBuildInputs = [
|
||||||
|
perl pkgconfig cmake ninja vala gobjectIntrospection
|
||||||
|
(python3.withPackages (pkgs: with pkgs; [ pygobject3 ])) # running libical-glib tests
|
||||||
|
gtk-doc docbook_xsl docbook_xml_dtd_43 # docs
|
||||||
|
];
|
||||||
|
buildInputs = [ glib libxml2 icu ];
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DGOBJECT_INTROSPECTION=True"
|
||||||
|
"-DICAL_GLIB_VAPI=True"
|
||||||
|
];
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
# TODO: upstream this patch
|
# TODO: upstream this patch
|
||||||
|
# https://github.com/libical/libical/issues/350
|
||||||
./respect-env-tzdir.patch
|
./respect-env-tzdir.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
doCheck = false; # fails all the tests (ctest)
|
# Using install check so we do not have to manually set
|
||||||
|
# LD_LIBRARY_PATH and GI_TYPELIB_PATH variables
|
||||||
|
doInstallCheck = true;
|
||||||
|
installCheckPhase = ''
|
||||||
|
runHook preInstallCheck
|
||||||
|
|
||||||
|
export TZDIR=${tzdata}/share/zoneinfo
|
||||||
|
ctest --output-on-failure
|
||||||
|
|
||||||
|
runHook postInstallCheck
|
||||||
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
homepage = https://github.com/libical/libical;
|
homepage = https://github.com/libical/libical;
|
||||||
description = "An Open Source implementation of the iCalendar protocols";
|
description = "An Open Source implementation of the iCalendar protocols";
|
||||||
license = licenses.mpl10;
|
license = licenses.mpl20;
|
||||||
platforms = platforms.unix;
|
platforms = platforms.unix;
|
||||||
maintainers = with maintainers; [ wkennington ];
|
maintainers = with maintainers; [ wkennington ];
|
||||||
};
|
};
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
--- a/src/libical/icaltz-util.c
|
--- a/src/libical/icaltz-util.c
|
||||||
+++ b/src/libical/icaltz-util.c
|
+++ b/src/libical/icaltz-util.c
|
||||||
@@ -96,9 +96,9 @@ typedef struct
|
@@ -94,9 +94,9 @@
|
||||||
static char *zdir = NULL;
|
static const char *zdir = NULL;
|
||||||
|
|
||||||
static char *search_paths[] = {
|
static const char *search_paths[] = {
|
||||||
+ "/etc/zoneinfo",
|
+ "/etc/zoneinfo",
|
||||||
"/usr/share/zoneinfo",
|
"/usr/share/zoneinfo",
|
||||||
"/usr/lib/zoneinfo",
|
"/usr/lib/zoneinfo",
|
||||||
@ -11,13 +11,13 @@
|
|||||||
"/usr/share/lib/zoneinfo"
|
"/usr/share/lib/zoneinfo"
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -179,6 +179,15 @@ static void set_zonedir(void)
|
@@ -178,6 +178,15 @@
|
||||||
const char *fname = ZONES_TAB_SYSTEM_FILENAME;
|
const char *fname = ZONES_TAB_SYSTEM_FILENAME;
|
||||||
size_t i, num_search_paths;
|
size_t i, num_search_paths;
|
||||||
|
|
||||||
+ const char *env_tzdir = getenv ("TZDIR");
|
+ const char *env_tzdir = getenv ("TZDIR");
|
||||||
+ if (env_tzdir) {
|
+ if (env_tzdir) {
|
||||||
+ snprintf(file_path, MAXPATHLEN, "%s/%s", env_tzdir, fname);
|
+ sprintf (file_path, "%s/%s", env_tzdir, fname);
|
||||||
+ if (!access (file_path, F_OK|R_OK)) {
|
+ if (!access (file_path, F_OK|R_OK)) {
|
||||||
+ zdir = env_tzdir;
|
+ zdir = env_tzdir;
|
||||||
+ return;
|
+ return;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user