summary refs log tree commit diff
diff options
context:
space:
mode:
authorSree Harsha Totakura <sreeharsha@totakura.in>2014-02-24 18:49:54 +0100
committerAndreas Enge <andreas@enge.fr>2014-02-24 22:06:58 +0100
commitc4dc4466d6012e8f7875beb3e68a7dff8bc13152 (patch)
tree7815b3b1a7dfa8b4eec839e45b49b3903f0d4e1e
parent2096ef47aad57a9988c8fdfaa46a70770a0e0b12 (diff)
downloadguix-c4dc4466d6012e8f7875beb3e68a7dff8bc13152.tar.gz
gnu: Add miniupnpc.
* gnu/packages/upnp.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.

Signed-off-by: Andreas Enge <andreas@enge.fr>
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/upnp.scm63
2 files changed, 64 insertions, 0 deletions
diff --git a/gnu-system.am b/gnu-system.am
index d63a80f62a..711687629e 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -206,6 +206,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/tor.scm				\
   gnu/packages/uucp.scm				\
   gnu/packages/unrtf.scm			\
+  gnu/packages/upnp.scm				\
   gnu/packages/valgrind.scm			\
   gnu/packages/version-control.scm		\
   gnu/packages/video.scm			\
diff --git a/gnu/packages/upnp.scm b/gnu/packages/upnp.scm
new file mode 100644
index 0000000000..a1a18d272c
--- /dev/null
+++ b/gnu/packages/upnp.scm
@@ -0,0 +1,63 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages upnp)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages python)
+  #:use-module (guix build-system gnu)
+  #:use-module (guix download)
+  #:use-module (guix licenses)
+  #:use-module (guix packages))
+
+(define-public miniupnpc
+  (package
+    (name "miniupnpc")
+    (version "1.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "http://miniupnp.tuxfamily.org/files/miniupnpc-"
+             version ".tar.gz"))
+       (sha256
+        (base32 "0r24jdqcyf839n30ppimdna0hvybscyziaad7ng99fw0x19y88r9"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("python" ,python-2)))
+    (arguments
+     ;; The build system does not use a configure script but depends on
+     ;; `make'.  Hence we should pass parameters to `make' instead and remove
+     ;; the configure phase.
+     '(#:make-flags
+       (list
+        (string-append
+         "SH=" (assoc-ref %build-inputs "bash") "/bin/sh")
+        (string-append "INSTALLPREFIX=" (assoc-ref %outputs "out"))
+        "CC=gcc")
+       #:phases
+       (alist-delete 'configure %standard-phases)))
+    (home-page "http://miniupnp.free.fr/")
+    (synopsis "Library implementing the client side UPnP protocol")
+    (description
+     "MiniUPnPc is a library is useful whenever an application needs to listen
+for incoming connections but is run behind a UPnP enabled router or firewall.
+Examples for such applications include: P2P applications, FTP clients for
+active mode, IRC (for DCC) or IM applications, network games, any server
+software.")
+    (license
+     (x11-style "file://LICENSE" "See 'LICENSE' file in the distribution"))))