From 8cc91fa04131e1b37339bd08c48b117f1c32aa29 Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Sat, 21 Feb 2015 19:24:54 +0100 Subject: gnu: Add weex. * gnu/packages/ftp.scm (weex): New variable. * gnu/packages/patches/weex-vacopy.patch: New file. * gnu-system.am (dist_patch_DATA): Register patch. --- gnu-system.am | 1 + gnu/packages/ftp.scm | 46 +++++++++++++++++++++++++++++++--- gnu/packages/patches/weex-vacopy.patch | 13 ++++++++++ 3 files changed, 57 insertions(+), 3 deletions(-) create mode 100644 gnu/packages/patches/weex-vacopy.patch diff --git a/gnu-system.am b/gnu-system.am index 71697be181..24c5dc1a91 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -504,6 +504,7 @@ dist_patch_DATA = \ gnu/packages/patches/vpnc-script.patch \ gnu/packages/patches/vtk-mesa-10.patch \ gnu/packages/patches/w3m-fix-compile.patch \ + gnu/packages/patches/weex-vacopy.patch \ gnu/packages/patches/wicd-urwid-1.3.patch \ gnu/packages/patches/wmctrl-64-fix.patch \ gnu/packages/patches/xf86-video-ark-remove-mibstore.patch \ diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm index c5649812c0..f002122bb6 100644 --- a/gnu/packages/ftp.scm +++ b/gnu/packages/ftp.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Ludovic Courtès +;;; Copyright © 2015 Andreas Enge ;;; ;;; This file is part of GNU Guix. ;;; @@ -17,10 +18,11 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages ftp) - #:use-module ((guix licenses) #:select (gpl3+ clarified-artistic)) - #:use-module (guix packages) - #:use-module (guix download) + #:use-module ((guix licenses) #:select (gpl2+ gpl3+ clarified-artistic)) #:use-module (guix build-system gnu) + #:use-module (guix download) + #:use-module (guix packages) + #:use-module (gnu packages) #:use-module (gnu packages ncurses) #:use-module (gnu packages readline) #:use-module (gnu packages pkg-config) @@ -103,3 +105,41 @@ (define-public ncftp FTP browser, as well as non-interactive commands such as 'ncftpput' and 'ncftpget'.") (license clarified-artistic))) + + +(define-public weex + (package + (name "weex") + (version "2.6.1.5") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://sourceforge/weex/weex/" version + "/weex-" version ".tar.gz")) + (sha256 + (base32 + "0f5cj5p852wkm24mzy2sxgxyahv2p9rk4wlq21j310pi7wlhgwyl")) + (patches (list (search-patch "weex-vacopy.patch"))))) + (build-system gnu-build-system) + (arguments + `(#:phases + (alist-replace 'configure + ;; configure does not work followed by both "SHELL=..." and + ;; "CONFIG_SHELL=..."; set environment variables instead + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bash (which "bash"))) + (setenv "SHELL" bash) + (setenv "CONFIG_SHELL" bash) + (zero? (system* bash "./configure" + (string-append "--prefix=" out))))) + %standard-phases))) + (home-page "http://weex.sourceforge.net/") + (synopsis "Non-interactive client for FTP synchronization") + (description + "Weex is a utility designed to automate the task of remotely +maintaining a web page or other FTP archive. It synchronizes a set of +local files to a remote server by performing uploads and remote deletes +as required.") + (license gpl2+))) diff --git a/gnu/packages/patches/weex-vacopy.patch b/gnu/packages/patches/weex-vacopy.patch new file mode 100644 index 0000000000..f593e86c08 --- /dev/null +++ b/gnu/packages/patches/weex-vacopy.patch @@ -0,0 +1,13 @@ +Taken from the Debian 2.8.0 package. + +--- weex-2.6.1.5/src/strlib.c 2003-08-18 11:52:38.000000000 +0200 ++++ weex-2.8.0/src/strlib.c 2007-12-04 14:22:02.000000000 +0100 +@@ -42,6 +42,8 @@ + # define G_VA_COPY(ap1, ap2) (*(ap1) = *(ap2)) + # elif defined (G_VA_COPY_AS_ARRAY) + # define G_VA_COPY(ap1, ap2) g_memmove ((ap1), (ap2), sizeof (va_list)) ++# elif defined (__x86_64__) ++# define G_VA_COPY(ap1, ap2) memmove ((ap1), (ap2), sizeof (va_list)) + # else /* va_list is a pointer */ + # define G_VA_COPY(ap1, ap2) ((ap1) = (ap2)) + # endif /* va_list is a pointer */ -- cgit v1.2.3