diff options
author | Pierre Neidhardt <mail@ambrevar.xyz> | 2019-01-11 19:44:51 +0100 |
---|---|---|
committer | Pierre Neidhardt <mail@ambrevar.xyz> | 2019-01-11 19:48:00 +0100 |
commit | 362fba83ddefd706641924f5e4c7b5681eb8e216 (patch) | |
tree | e379238c012d0b60fe7a7ce5dd652853ddf9891f | |
parent | 50e1843b3a01eb83e83e33f96b9e50dfb10a1935 (diff) | |
download | guix-362fba83ddefd706641924f5e4c7b5681eb8e216.tar guix-362fba83ddefd706641924f5e4c7b5681eb8e216.tar.gz |
gnu: Add restbed.
* gnu/packages/networking.scm (restbed): New variable.
-rw-r--r-- | gnu/packages/networking.scm | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 3b0714865d..4647f02878 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -2271,3 +2271,56 @@ allow all other machines, without direct access to that network, to be relayed through the machine the Dante server is running on. The external network will never see any machines other than the one Dante is running on.") (license (license:non-copyleft "file://LICENSE")))) + +(define-public restbed + (let ((commit "6eb385fa9051203f28bf96cc1844bbb5a9a6481f")) + (package + (name "restbed") + (version (git-version "4.6" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Corvusoft/restbed/") + (commit commit))) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 "0k60i5drklqqrb4khb25fzkgz9y0sncxf1sp6lh2bm1m0gh0661n")))) + (build-system cmake-build-system) + (inputs + `(("asio" ,asio) + ("catch" ,catch-framework) + ("openssl" ,openssl))) + (arguments + `(#:tests? #f + #:configure-flags + '("-DBUILD_TESTS=NO" + "-DBUILD_EXAMPLES=NO" + "-DBUILD_SSL=NO" + "-DBUILD_SHARED=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'apply-patches-and-fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((asio (assoc-ref inputs "asio")) + (catch (assoc-ref inputs "catch")) + (openssl (assoc-ref inputs "openssl"))) + (substitute* "cmake/Findasio.cmake" + (("(find_path\\( asio_INCLUDE asio\\.hpp HINTS ).*$" all begin) + (string-append begin " \"" asio "/include\" )"))) + (substitute* "cmake/Findcatch.cmake" + (("(find_path\\( catch_INCLUDE catch\\.hpp HINTS ).*$" all begin) + (string-append begin " \"" catch "/include\" )"))) + (substitute* "cmake/Findopenssl.cmake" + (("(find_library\\( ssl_LIBRARY ssl ssleay32 HINTS ).*$" all begin) + (string-append begin " \"" openssl "/lib\" )")) + (("(find_library\\( crypto_LIBRARY crypto libeay32 HINTS ).*$" all begin) + (string-append begin " \"" openssl "/lib\" )")) + (("(find_path\\( ssl_INCLUDE openssl/ssl\\.h HINTS ).*$" all begin) + (string-append begin " \"" openssl "/include\" )"))))))))) + (synopsis "Asynchronous RESTful functionality to C++11 applications") + (description "Restbed is a comprehensive and consistent programming +model for building applications that require seamless and secure +communication over HTTP.") + (home-page "https://github.com/Corvusoft/restbed") + (license license:agpl3+)))) |