]> git.pld-linux.org Git - packages/elinks.git/blobdiff - elinks.spec
- updated to 0.15.0
[packages/elinks.git] / elinks.spec
index 4853458c44f72d73d367c7355d8744d1b1eed131..a65aa4c298a80af313ba932f3a3c43f30bffd3b4 100644 (file)
@@ -1,73 +1,87 @@
-# TODO: consider lua51
 #
 # Conditional build:
-%bcond_with    x               # Use the X Windows System
-%bcond_with    gnutls          # Enable GNUTLS SSL support (disables openssl)
-%bcond_with    python          # Enable Python scripting support
-%bcond_with    ruby            # Enable (experimental) Ruby scripting support
-%bcond_with    verbose         # verbose build (V=1)
-%bcond_without 256             # Disable 256 colors support
-%bcond_without bittorrent      # Disable BitTorrent support
-%bcond_without cgi             # Disable Local CGI support
-%bcond_without fsp             # Disable FSP support
-%bcond_without guile           # Disable Guile scripting
-%bcond_without idn             # Disable Internation Domain Names support
-%bcond_without ipv6            # Disable IPv6 support
-%bcond_without js              # Disable experimental (yet quite usable) JavaScript support (using SpiderMonkey)
-%bcond_without led             # Disable LEDs
-%bcond_without lua             # Disable Lua scripting
-%bcond_without openssl         # Disable OpenSSL support
-%bcond_without perl            # Disable Perl scripting
-# 
+# - protocols
+%bcond_without bittorrent      # BitTorrent protocol support
+%bcond_without fsp             # FSP support
+%bcond_without idn             # Internation Domain Names support
+%bcond_without ipv6            # IPv6 support
+%bcond_with    smb             # smb protocol support (non-distib: recent libsmbclient is GPL v3)
+%bcond_with    gnutls          # GNUTLS-based SSL support (instead of openssl)
+%bcond_without openssl         # OpenSSL-based SSL support
+# - content
+%bcond_without cgi             # Local CGI support
+%bcond_without brotli          # Brotli compression support
+%bcond_without js              # experimental (yet quite usable) JavaScript support (using quickjs)
+%bcond_with    lzma            # LZMA support (old API, incompatible with xz-libs)
+%bcond_without zstd    # zstd compression support
+# - scripting
+%bcond_with    guile           # Guile scripting support (non-distrib: guile 2 is LGPL v3+)
+%bcond_without lua             # Lua scripting
+%bcond_with    perl            # Perl scripting
+%bcond_with    python          # Python scripting support
+%bcond_with    ruby            # (experimental) Ruby scripting support
+# - display and UI
+%bcond_without 256             # 256 colors support
+%bcond_without led             # LEDs
+%bcond_without truecolor       # true color
+%bcond_with    x               # Use the X Window System
+# - misc
+%bcond_without verbose         # verbose build (V=1)
+
 %if %{with gnutls}
 %undefine      with_openssl
 %endif
-#
+
 Summary:       Experimantal Links (text WWW browser)
 Summary(es.UTF-8):     El links es un browser para modo texto, similar a lynx
 Summary(pl.UTF-8):     Eksperymentalny Links (tekstowa przeglądarka WWW)
 Summary(pt_BR.UTF-8):  O links é um browser para modo texto, similar ao lynx
 Name:          elinks
-Version:       0.11.4
-Release:       2
+Version:       0.15.0
+Release:       1
 Epoch:         1
-License:       GPL
+License:       GPL v2
 Group:         Applications/Networking
-Source0:       http://www.elinks.cz/download/%{name}-%{version}.tar.bz2
-# Source0-md5: 88036a518ebc4f1150a7e14b29f9d8db
+Source0:       https://github.com/rkd77/elinks/releases/download/v%{version}/%{name}-%{version}.tar.xz
+# Source0-md5: 8fe2e81d2cea75f57cd3cf9bdda6821b
 Source1:       %{name}.desktop
 Source2:       links.png
-Patch0:                %{name}-home_etc.patch
-Patch1:                %{name}-lua40.patch
-Patch2:                %{name}-bug517.patch
-Patch3:                %{name}-date-format.patch
-Patch4:                %{name}-chunked.patch
-Patch5:                %{name}-mailcap_DISPLAY.patch
 URL:           http://www.elinks.cz/
-BuildRequires: autoconf
+BuildRequires: autoconf >= 2.61
 BuildRequires: automake
 BuildRequires: bzip2-devel
 BuildRequires: expat-devel
 %{?with_fsp:BuildRequires:     fsplib-devel}
-BuildRequires: gettext-devel
+BuildRequires: gettext-tools
+%{?with_gnutls:BuildRequires:  gnutls-devel >= 1.2.5}
 BuildRequires: gpm-devel
 %{?with_guile:BuildRequires: guile-devel}
-%{?with_gnutls:BuildRequires: gnutls-devel >= 1.2.5}
-%{?with_js:BuildRequires:      js-devel >= 1.5-0.rc6a.1}
+%{?with_js:BuildRequires:      libxml++5-devel >= 5.0.1-2}
+%{?with_js:BuildRequires:      quickjs-devel >= 20210327-2}
+%{?with_js:BuildRequires:      sqlite3-devel}
+%{?with_brotli:BuildRequires:  libbrotli-devel}
 %{?with_idn:BuildRequires:     libidn-devel}
-%{?with_lua:BuildRequires:     lua50-devel}
+%{?with_smb:BuildRequires:     libsmbclient-devel}
+%{?with_lua:BuildRequires:     lua53-devel}
+%{?with_lzma:BuildRequires:    lzma-devel}
+BuildRequires: meson
 BuildRequires: ncurses-devel >= 5.1
 %{?with_openssl:BuildRequires: openssl-devel >= 0.9.7d}
 %{?with_perl:BuildRequires:    perl-devel}
-%{?with_python:BuildRequires:  python-devel}
+BuildRequires: pkgconfig
+%{?with_python:BuildRequires:  python3-devel}
 %{?with_ruby:BuildRequires:    ruby-devel}
+BuildRequires: sed
+BuildRequires: tre-devel
+BuildRequires: which
 BuildRequires: zlib-devel
+%{?with_zstd:BuildRequires:    zstd-devel}
 Suggests:      mailcap
 Provides:      webclient
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _sysconfdir     /etc/elinks
-%define                specflags_ia32  -fomit-frame-pointer 
+%define                specflags_ia32  -fomit-frame-pointer
 
 %description
 This is the elinks tree - intended to provide feature-rich version of
@@ -92,63 +106,58 @@ keepalive.
 
 %prep
 %setup -q
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
 
 %build
-%{__aclocal}
-%{__autoconf}
-%{__autoheader}
-%configure \
-       HAVE_SMBCLIENT=yes \
-       --disable-no-root \
-       %{!?debug:--enable-fastmem} \
-       %{?debug:--enable-debug} \
-       %{!?with_ipv6:--disable-ipv6} \
-       %{?with_bittorrent:--enable-bittorrent} \
-       %{?with_cgi:--enable-cgi} \
-       --enable-finger \
-       --enable-gopher \
-       --enable-nntp \
-       %{?with_256:--enable-256-colors} \
-       --enable-exmode \
-       %{?with_fsp:--enable-fsp} \
-       %{?with_leds:--enable-leds} \
-       --enable-marks \
-       --enable-html-highlight \
-       %{!?with_idn:--without-idn} \
-       %{?with_guile:--with-guile} \
-       %{?with_perl:--with-perl} \
-       %{!?with_lua:--without-lua} \
-       %{?with_python:--with-python} \
-       %{?with_ruby:--with-ruby} \
-       %{!?with_js:--without-spidermonkey} \
-       %{?with_gnutls:--with-gnutls} \
-       %{!?with_openssl:--without-openssl} \
-       --with%{!?with_x:out}-x
-# xterm -e is default, one might want to change it to
-# something else
-#      --with-xterm="xterm -e"
-
-%{__make} %{?with_verbose:V=1}
+%meson build \
+       %{?with_bittorrent:-Dbittorrent=true} \
+       %{?with_cgi:-Dcgi=true} \
+       -D88-colors=true \
+       %{?with_256:-D256-colors=true} \
+       %{?with_truecolor:-Dtrue-color=true} \
+       -Dexmode=true \
+       %{?debug:-Ddebug=true} \
+       %{!?debug:-Dfastmem=true} \
+       -Dfinger=true \
+       %{?with_fsp:-Dfsp=true} \
+       -Dgemini=true \
+       -Dgettext=true \
+       -Dgopher=true \
+       -Dhtml-highlight=true \
+       %{!?with_ipv6:-Dipv6=false} \
+       %{?with_leds:-Dleds=true} \
+       -Dmarks=true \
+       -Dnntp=true \
+       -Dno-root=false \
+       %{?with_smb:-Dsmb=true} \
+       %{?with_brotli:-Dbrotli=true} \
+       %{?with_zstd:-Dzstd=true} \
+       %{?with_gnutls:-Dgnutls=true} \
+       %{?with_guile:-Dguile=true} \
+       %{!?with_idn:-Didn=false} \
+       %{?with_lua:-Dluapkg=lua5.3} \
+       %{?with_lzma:-Dlzma=true} \
+       %{?with_openssl:-Dopenssl=true} \
+       %{?with_perl:-Dperl=true} \
+       %{?with_python:-Dpython=true} \
+       %{?with_ruby:-Druby=true} \
+       %{?with_js:-Dquickjs=true} \
+       %{?with_x:-Dx=true}
+
+%ninja_build -C build
 
 %install
 rm -rf $RPM_BUILD_ROOT
+%ninja_install -C build
+
 install -d $RPM_BUILD_ROOT%{_desktopdir} \
        $RPM_BUILD_ROOT%{_datadir}/%{name} \
        $RPM_BUILD_ROOT{%{_sysconfdir},%{_pixmapsdir}}
 
-%{__make} install %{?with_verbose:V=1} \
-       DESTDIR=$RPM_BUILD_ROOT
-
-install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
-install %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png
+cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
+cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png
 
 %{?with_lua:install contrib/lua/*.lua $RPM_BUILD_ROOT%{_sysconfdir}}
+sed -i -e 's|bin/lua|bin/lua5.3|g' $RPM_BUILD_ROOT%{_sysconfdir}/*lua
 
 %find_lang %{name}
 
@@ -158,11 +167,14 @@ rm -rf $RPM_BUILD_ROOT
 %files -f %{name}.lang
 %defattr(644,root,root,755)
 %doc AUTHORS BUGS ChangeLog NEWS README SITES TODO
-%doc contrib/{keybind*,wipe-out-ssl*,lua/elinks-remote}
-%doc contrib/conv/{*awk,*.pl,*.sh}
-%doc doc/html/*.html
-%attr(755,root,root) %{_bindir}/*
-%{_mandir}/man*/*
-%{_desktopdir}/*.desktop
-%{_pixmapsdir}/*
-%{?with_lua:%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}}
+%doc contrib/{keybind*,wipe-out-ssl*,lua/elinks-remote} contrib/conv/{*awk,*.pl,*.sh}
+%attr(755,root,root) %{_bindir}/elinks
+%{_mandir}/man1/elinks.1*
+%{_mandir}/man5/elinks.conf.5*
+%{_mandir}/man5/elinkskeys.5*
+%{_desktopdir}/elinks.desktop
+%{_pixmapsdir}/elinks.png
+%if %{with lua}
+%dir %{_sysconfdir}
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.lua
+%endif
This page took 0.132489 seconds and 4 git commands to generate.