aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/networking.scm44
1 files changed, 44 insertions, 0 deletions
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 3f23f178ba..5c1026e9ac 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -56,6 +56,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
+ #:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages code)
#:use-module (gnu packages compression)
@@ -1857,3 +1858,46 @@ eight bytes) tools
@end itemize")
;; Either BSD-3 or GPL-2 can be used.
(license (list license:bsd-3 license:gpl2))))
+
+(define-public asio
+ (package
+ (name "asio")
+ (version "1.12.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/chriskohlhoff/asio.git")
+ (commit (string-join (cons name (string-split version #\.))
+ "-"))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "04dg8kpgriay7q62mqcq2gl439k5y4mf761zghsd6wfl0farh3mx"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)))
+ (inputs
+ `(("boost" ,boost)
+ ("openssl" ,openssl)))
+ (arguments
+ `(#:configure-flags
+ (list
+ (string-append "--with-boost=" (assoc-ref %build-inputs "boost"))
+ (string-append "--with-openssl=" (assoc-ref %build-inputs "openssl")))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'chdir-to-asio
+ (lambda _
+ (chdir "asio")))
+ (add-before 'configure 'bootstrap
+ (lambda _
+ (invoke "sh" "autogen.sh"))))))
+ (home-page "https://think-async.com/Asio")
+ (synopsis "C++ library for ASynchronous network I/O")
+ (description "Asio is a cross-platform C++ library for network and
+low-level I/O programming that provides developers with a consistent
+asynchronous model using a modern C++ approach.")
+ (license license:boost1.0)))