summaryrefslogtreecommitdiffstats
path: root/main/freerdp
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2012-03-17 08:38:26 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2012-03-17 08:38:26 +0000
commit44c25115d3601a351623b2727728b40e81ab25e2 (patch)
tree8e59abd291224d1d6a7a5aa1a3438c6deea95916 /main/freerdp
parentab342677fb747569d71238461663d0bf0ae87b0c (diff)
downloadaports-44c25115d3601a351623b2727728b40e81ab25e2.tar.bz2
aports-44c25115d3601a351623b2727728b40e81ab25e2.tar.xz
main/freerdp: fix for disk plugin
Diffstat (limited to 'main/freerdp')
-rw-r--r--main/freerdp/APKBUILD9
-rw-r--r--main/freerdp/futimens.patch25
2 files changed, 31 insertions, 3 deletions
diff --git a/main/freerdp/APKBUILD b/main/freerdp/APKBUILD
index 8c6d169ee..f1739a7e1 100644
--- a/main/freerdp/APKBUILD
+++ b/main/freerdp/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=freerdp
pkgver=1.0.1
-pkgrel=0
+pkgrel=1
pkgdesc="Free RDP client"
url="http://freerdp.sourceforge.net"
arch="all"
@@ -12,7 +12,8 @@ makedepends="openssl-dev libxcursor-dev cups-dev alsa-lib-dev ffmpeg-dev
cups-dev libxkbfile-dev libxinerama-dev libxv-dev libxdamage-dev
wget cmake"
source="https://github.com/downloads/FreeRDP/FreeRDP/FreeRDP-$pkgver.tar.gz
- pluginpath.patch"
+ pluginpath.patch
+ futimens.patch"
prepare() {
cd "$srcdir"/FreeRDP-FreeRDP-*
@@ -25,6 +26,7 @@ prepare() {
build() {
cd "$srcdir"/FreeRDP-FreeRDP-*
+ export CFLAGS="$CFLAGS -D_BSD_SOURCE"
cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=/usr/lib \
@@ -52,4 +54,5 @@ plugins() {
}
md5sums="1282189a87893bf196da20382e45f6c1 FreeRDP-1.0.1.tar.gz
-f18b6a675341d8e9755941afd4fc8d82 pluginpath.patch"
+f18b6a675341d8e9755941afd4fc8d82 pluginpath.patch
+b9673acd41c4205cd32e5412dcb07515 futimens.patch"
diff --git a/main/freerdp/futimens.patch b/main/freerdp/futimens.patch
new file mode 100644
index 000000000..ee538201a
--- /dev/null
+++ b/main/freerdp/futimens.patch
@@ -0,0 +1,25 @@
+--- ./channels/rdpdr/disk/disk_file.c.orig
++++ ./channels/rdpdr/disk/disk_file.c
+@@ -414,7 +414,7 @@
+ char* fullpath;
+ struct stat st;
+ UNICONV* uniconv;
+- struct timeval tv[2];
++ struct timespec tv[2];
+ uint64 LastWriteTime;
+ uint32 FileAttributes;
+ uint32 FileNameLength;
+@@ -433,10 +433,10 @@
+ return false;
+
+ tv[0].tv_sec = st.st_atime;
+- tv[0].tv_usec = 0;
++ tv[0].tv_nsec = 0;
+ tv[1].tv_sec = (LastWriteTime > 0 ? FILE_TIME_RDP_TO_SYSTEM(LastWriteTime) : st.st_mtime);
+- tv[1].tv_usec = 0;
+- futimes(file->fd, tv);
++ tv[1].tv_nsec = 0;
++ futimens(file->fd, tv);
+
+ if (FileAttributes > 0)
+ {