gnu: aria2: Unbundle wslay.

* gnu/packages/bittorrent.scm (aria2)[source]: Add snippet to delete
configure script and remove bundled dependency.  Add a patch.
[native-inputs]: Add autoconf, automake, gettext-minimal, libtool.
[inputs]: Add wslay.
* gnu/packages/patches/aria2-unbundle-wslay.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.

Change-Id: I92390a872454726ff9587518bb535d2105c44ef3
This commit is contained in:
Efraim Flashner 2023-11-21 09:05:03 +02:00
parent e5c3cf139d
commit 5e8e9bcd25
No known key found for this signature in database
GPG key ID: 41AAE7DCCA3D8351
3 changed files with 68 additions and 2 deletions

View file

@ -920,6 +920,7 @@ dist_patch_DATA = \
%D%/packages/patches/aoflagger-use-system-provided-pybind11.patch \
%D%/packages/patches/apr-fix-atomics.patch \
%D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/aria2-unbundle-wslay.patch \
%D%/packages/patches/ark-skip-xar-test.patch \
%D%/packages/patches/arpack-ng-propagate-rng-state.patch \
%D%/packages/patches/asli-use-system-libs.patch \

View file

@ -78,6 +78,7 @@ (define-module (gnu packages bittorrent)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages ssh)
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (gnu packages xml))
(define-public transmission
@ -293,7 +294,12 @@ (define-public aria2
"/aria2-" version ".tar.xz"))
(sha256
(base32
"0sxng4pynhj2qinranpv6wyzys3d42kz1gg2nrn63sw5f2nj1930"))))
"0sxng4pynhj2qinranpv6wyzys3d42kz1gg2nrn63sw5f2nj1930"))
(patches (search-patches "aria2-unbundle-wslay.patch"))
(snippet
#~(begin (use-modules (guix build utils))
(delete-file-recursively "deps")
(delete-file "configure")))))
(build-system gnu-build-system)
(arguments
(list
@ -312,7 +318,11 @@ (define-public aria2
(("CPPUNIT_TEST_SUITE_REGISTRATION\\(LpdMessageReceiverTest\\);" text)
(string-append "// " text))))))))
(native-inputs
(list cppunit ; for the tests
(list autoconf ; since we adjusted configure.ac
automake
gettext-minimal
libtool
cppunit ; for the tests
pkg-config))
(inputs
(list c-ares
@ -322,6 +332,7 @@ (define-public aria2
libxml2
nettle
sqlite
wslay
zlib))
(home-page "https://aria2.github.io/")
(synopsis "Utility for parallel downloading files")

View file

@ -0,0 +1,54 @@
This patch causes aria2 to depend on an external wslay.
The wslay version was copied from the configure.ac in deps/wslay
configure still needs to be deleted to update the script
deps/wslay is no longer necessary and can also be removed
diff --git a/Makefile.am b/Makefile.am
index afe70a2..8c4d058 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,4 +1,4 @@
-SUBDIRS = po lib deps src doc test
+SUBDIRS = po lib src doc test
ACLOCAL_AMFLAGS = -I m4 --install
RST2HTML = @RST2HTML@
diff --git a/configure.ac b/configure.ac
index 14b340f..74d5937 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1001,15 +1001,18 @@ if test "x$have_option_const_name" = "xyes"; then
fi
if test "x$enable_websocket" = "xyes"; then
- AC_CONFIG_SUBDIRS([deps/wslay])
+ PKG_CHECK_MODULES([WSLAY], [libwslay >= 1.1.1], [have_wslay=yes], [have_wslay=no])
enable_websocket=yes
AC_DEFINE([ENABLE_WEBSOCKET], [1],
[Define 1 if WebSocket support is enabled.])
- # $(top_srcdir) for `make distcheck`
- WSLAY_CFLAGS="-I\$(top_builddir)/deps/wslay/lib/includes -I\$(top_srcdir)/deps/wslay/lib/includes"
- WSLAY_LIBS="\$(top_builddir)/deps/wslay/lib/libwslay.la"
- AC_SUBST([WSLAY_CFLAGS])
- AC_SUBST([WSLAY_LIBS])
+ if test "x$have_wslay" = "xyes"; then
+ WSLAY_CFLAGS="$WSLAY_CFLAGS"
+ WSLAY_LIBS="$WSLAY_LIBS"
+ AC_SUBST([WSLAY_CFLAGS])
+ AC_SUBST([WSLAY_LIBS])
+ else
+ ARIA2_DEP_NOT_MET([wslay])
+ fi
fi
AM_CONDITIONAL([ENABLE_WEBSOCKET], [test "x$enable_websocket" = "xyes"])
@@ -1071,8 +1074,7 @@ AC_CONFIG_FILES([Makefile
doc/manual-src/ru/Makefile
doc/manual-src/ru/conf.py
doc/manual-src/pt/Makefile
- doc/manual-src/pt/conf.py
- deps/Makefile])
+ doc/manual-src/pt/conf.py])
AC_OUTPUT
AC_MSG_NOTICE([summary of build options: