summaryrefslogtreecommitdiffstats
path: root/network/MEGAsync
diff options
context:
space:
mode:
Diffstat (limited to 'network/MEGAsync')
-rw-r--r--network/MEGAsync/MEGAsync.SlackBuild6
-rw-r--r--network/MEGAsync/MEGAsync.info10
-rw-r--r--network/MEGAsync/fix-double-declaration-of-tgkill.patch26
3 files changed, 35 insertions, 7 deletions
diff --git a/network/MEGAsync/MEGAsync.SlackBuild b/network/MEGAsync/MEGAsync.SlackBuild
index d15a188abf..abc655a6c3 100644
--- a/network/MEGAsync/MEGAsync.SlackBuild
+++ b/network/MEGAsync/MEGAsync.SlackBuild
@@ -24,8 +24,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=MEGAsync
-VERSION=${VERSION:-3.7.1.0}
-SDK=${SDK:-ce7b5f0b390a02ffd1fbfbac741deb5294f7a5df}
+VERSION=${VERSION:-4.2.5.0}
+SDK=${SDK:-3.6.2b}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -73,6 +73,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/fix-double-declaration-of-tgkill.patch
+
cd src/MEGASync/mega
./autogen.sh
CFLAGS="$SLKCFLAGS" \
diff --git a/network/MEGAsync/MEGAsync.info b/network/MEGAsync/MEGAsync.info
index dca63a1e20..cc4f6713ca 100644
--- a/network/MEGAsync/MEGAsync.info
+++ b/network/MEGAsync/MEGAsync.info
@@ -1,10 +1,10 @@
PRGNAM="MEGAsync"
-VERSION="3.7.1.0"
+VERSION="4.2.5.0"
HOMEPAGE="https://github.com/meganz/MEGAsync/"
-DOWNLOAD="https://github.com/meganz/MEGAsync/archive/v3.7.1.0_Linux/MEGAsync-3.7.1.0_Linux.tar.gz \
- https://github.com/meganz/sdk/archive/ce7b5f0/sdk-ce7b5f0b390a02ffd1fbfbac741deb5294f7a5df.tar.gz"
-MD5SUM="d44da5216693efc7f63ba85b477ea46c \
- e7716ddf00b1b3f0166cfb8f222d8550"
+DOWNLOAD="https://github.com/meganz/MEGAsync/archive/v4.2.5.0_Linux/MEGAsync-4.2.5.0_Linux.tar.gz \
+ https://github.com/meganz/sdk/archive/v3.6.2b/sdk-3.6.2b.tar.gz"
+MD5SUM="19fc192b091d94e171e130443ad3bede \
+ 205a78d8e98bb67ebfc7c840388ace73"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libuv libsodium cryptopp FreeImage c-ares libmediainfo"
diff --git a/network/MEGAsync/fix-double-declaration-of-tgkill.patch b/network/MEGAsync/fix-double-declaration-of-tgkill.patch
new file mode 100644
index 0000000000..beeea5d1b4
--- /dev/null
+++ b/network/MEGAsync/fix-double-declaration-of-tgkill.patch
@@ -0,0 +1,26 @@
+diff --git a/src/MEGASync/google_breakpad/client/linux/handler/exception_handler.cc b/src/MEGASync/google_breakpad/client/linux/handler/exception_handler.cc
+index 48f91682..1b7ed059 100644
+--- a/src/MEGASync/google_breakpad/client/linux/handler/exception_handler.cc
++++ b/src/MEGASync/google_breakpad/client/linux/handler/exception_handler.cc
+@@ -103,12 +103,6 @@
+ #define PR_SET_PTRACER 0x59616d61
+ #endif
+
+-// A wrapper for the tgkill syscall: send a signal to a specific thread.
+-static int tgkill(pid_t tgid, pid_t tid, int sig) {
+- return syscall(__NR_tgkill, tgid, tid, sig);
+- return 0;
+-}
+-
+ namespace google_breakpad {
+
+ namespace {
+@@ -347,7 +341,7 @@ void ExceptionHandler::SignalHandler(int sig, siginfo_t* info, void* uc) {
+ // In order to retrigger it, we have to queue a new signal by calling
+ // kill() ourselves. The special case (si_pid == 0 && sig == SIGABRT) is
+ // due to the kernel sending a SIGABRT from a user request via SysRQ.
+- if (tgkill(getpid(), syscall(__NR_gettid), sig) < 0) {
++ if (sys_tgkill(getpid(), syscall(__NR_gettid), sig) < 0) {
+ // If we failed to kill ourselves (e.g. because a sandbox disallows us
+ // to do so), we instead resort to terminating our process. This will
+ // result in an incorrect exit code.