]> git.pld-linux.org Git - packages/elinks.git/blob - elinks.spec
explicitly enable/disable fsp support
[packages/elinks.git] / elinks.spec
1 #
2 # Conditional build:
3 # - protocols
4 %bcond_without  bittorrent      # BitTorrent protocol support
5 %bcond_without  fsp             # FSP support
6 %bcond_without  idn             # Internation Domain Names support
7 %bcond_without  ipv6            # IPv6 support
8 %bcond_with     smb             # smb protocol support (non-distib: recent libsmbclient is GPL v3)
9 %bcond_with     gnutls          # GNUTLS-based SSL support (instead of openssl)
10 %bcond_without  openssl         # OpenSSL-based SSL support
11 # - content
12 %bcond_without  cgi             # Local CGI support
13 %bcond_without  brotli          # Brotli compression support
14 %bcond_without  js              # experimental (yet quite usable) JavaScript support (using quickjs)
15 %bcond_with     lzma            # LZMA support (old API, incompatible with xz-libs)
16 %bcond_without  zstd    # zstd compression support
17 # - scripting
18 %bcond_with     guile           # Guile scripting support (non-distrib: guile 2 is LGPL v3+)
19 %bcond_without  lua             # Lua scripting
20 %bcond_with     perl            # Perl scripting
21 %bcond_with     python          # Python scripting support
22 %bcond_with     ruby            # (experimental) Ruby scripting support
23 # - display and UI
24 %bcond_without  256             # 256 colors support
25 %bcond_without  led             # LEDs
26 %bcond_without  truecolor       # true color
27 %bcond_with     x               # Use the X Window System
28 # - misc
29 %bcond_without  verbose         # verbose build (V=1)
30
31 %if %{with gnutls}
32 %undefine       with_openssl
33 %endif
34
35 Summary:        Experimantal Links (text WWW browser)
36 Summary(es.UTF-8):      El links es un browser para modo texto, similar a lynx
37 Summary(pl.UTF-8):      Eksperymentalny Links (tekstowa przeglądarka WWW)
38 Summary(pt_BR.UTF-8):   O links é um browser para modo texto, similar ao lynx
39 Name:           elinks
40 Version:        0.15.0
41 Release:        1
42 Epoch:          1
43 License:        GPL v2
44 Group:          Applications/Networking
45 Source0:        https://github.com/rkd77/elinks/releases/download/v%{version}/%{name}-%{version}.tar.xz
46 # Source0-md5:  8fe2e81d2cea75f57cd3cf9bdda6821b
47 Source1:        %{name}.desktop
48 Source2:        links.png
49 URL:            http://www.elinks.cz/
50 BuildRequires:  autoconf >= 2.61
51 BuildRequires:  automake
52 BuildRequires:  bzip2-devel
53 BuildRequires:  expat-devel
54 %{?with_fsp:BuildRequires:      fsplib-devel}
55 BuildRequires:  gettext-tools
56 %{?with_gnutls:BuildRequires:   gnutls-devel >= 1.2.5}
57 BuildRequires:  gpm-devel
58 %{?with_guile:BuildRequires: guile-devel}
59 %{?with_js:BuildRequires:       libxml++5-devel >= 5.0.1-2}
60 BuildRequires:  ninja
61 %{?with_js:BuildRequires:       quickjs-devel >= 20210327-4}
62 BuildRequires:  rpmbuild(macros) >= 1.736
63 %{?with_js:BuildRequires:       sqlite3-devel}
64 %{?with_brotli:BuildRequires:   libbrotli-devel}
65 %{?with_idn:BuildRequires:      libidn-devel}
66 %{?with_smb:BuildRequires:      libsmbclient-devel}
67 %{?with_lua:BuildRequires:      lua53-devel}
68 %{?with_lzma:BuildRequires:     lzma-devel}
69 BuildRequires:  meson
70 BuildRequires:  ncurses-devel >= 5.1
71 %{?with_openssl:BuildRequires:  openssl-devel >= 0.9.7d}
72 %{?with_perl:BuildRequires:     perl-devel}
73 BuildRequires:  pkgconfig
74 %{?with_python:BuildRequires:   python3-devel}
75 %{?with_ruby:BuildRequires:     ruby-devel}
76 BuildRequires:  sed
77 BuildRequires:  tar >= 1:1.22
78 BuildRequires:  tre-devel
79 BuildRequires:  which
80 BuildRequires:  xz
81 BuildRequires:  zlib-devel
82 %{?with_zstd:BuildRequires:     zstd-devel}
83 Suggests:       mailcap
84 Provides:       webclient
85 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
86
87 %define         _sysconfdir     /etc/elinks
88 %define         specflags_ia32  -fomit-frame-pointer
89
90 %description
91 This is the elinks tree - intended to provide feature-rich version of
92 links, however not rock-stable and dedicated mainly for testing. Its
93 purpose is to make alternative to links, until Mikulas will have some
94 time to maintain it, and to test and tune various patches for Mikulas
95 to be able to include them in the official links releases.
96
97 %description -l es.UTF-8
98 Links es un browser WWW modo texto, similar al Lynx. El links muestra
99 tablas, hace baja archivos en segundo plano, y usa conexiones HTTP/1.1
100 keepalive.
101
102 %description -l pl.UTF-8
103 Bogata w opcje i możliwości wersja tekstowej przeglądarki WWW - links.
104 elinks jednak jest dedykowana głównie do testowania.
105
106 %description -l pt_BR.UTF-8
107 Links é um browser WWW modo texto, similar ao Lynx. O Links exibe
108 tabelas, baixa arquivos em segundo plano, e usa as conexões HTTP/1.1
109 keepalive.
110
111 %prep
112 %setup -q
113
114 %build
115 %meson build \
116         %{?with_bittorrent:-Dbittorrent=true} \
117         %{?with_cgi:-Dcgi=true} \
118         -D88-colors=true \
119         %{?with_256:-D256-colors=true} \
120         %{?with_truecolor:-Dtrue-color=true} \
121         -Dexmode=true \
122         %{?debug:-Ddebug=true} \
123         %{!?debug:-Dfastmem=true} \
124         -Dfinger=true \
125         -Dfsp=%{__true_false fsp} \
126         -Dgemini=true \
127         -Dgettext=true \
128         -Dgopher=true \
129         -Dhtml-highlight=true \
130         %{!?with_ipv6:-Dipv6=false} \
131         %{?with_leds:-Dleds=true} \
132         -Dmarks=true \
133         -Dnntp=true \
134         -Dno-root=false \
135         %{?with_smb:-Dsmb=true} \
136         %{?with_brotli:-Dbrotli=true} \
137         %{?with_zstd:-Dzstd=true} \
138         %{?with_gnutls:-Dgnutls=true} \
139         %{?with_guile:-Dguile=true} \
140         %{!?with_idn:-Didn=false} \
141         %{?with_lua:-Dluapkg=lua5.3} \
142         %{?with_lzma:-Dlzma=true} \
143         %{?with_openssl:-Dopenssl=true} \
144         %{?with_perl:-Dperl=true} \
145         %{?with_python:-Dpython=true} \
146         %{?with_ruby:-Druby=true} \
147         %{?with_js:-Dquickjs=true} \
148         %{?with_x:-Dx=true}
149
150 %ninja_build -C build
151
152 %install
153 rm -rf $RPM_BUILD_ROOT
154 %ninja_install -C build
155
156 install -d $RPM_BUILD_ROOT%{_desktopdir} \
157         $RPM_BUILD_ROOT%{_datadir}/%{name} \
158         $RPM_BUILD_ROOT{%{_sysconfdir},%{_pixmapsdir}}
159
160 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
161 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}/%{name}.png
162
163 %{?with_lua:install contrib/lua/*.lua $RPM_BUILD_ROOT%{_sysconfdir}}
164 sed -i -e 's|bin/lua|bin/lua5.3|g' $RPM_BUILD_ROOT%{_sysconfdir}/*lua
165
166 %find_lang %{name}
167
168 %clean
169 rm -rf $RPM_BUILD_ROOT
170
171 %files -f %{name}.lang
172 %defattr(644,root,root,755)
173 %doc AUTHORS BUGS ChangeLog NEWS README SITES TODO
174 %doc contrib/{keybind*,wipe-out-ssl*,lua/elinks-remote} contrib/conv/{*awk,*.pl,*.sh}
175 %attr(755,root,root) %{_bindir}/elinks
176 %{_mandir}/man1/elinks.1*
177 %{_mandir}/man5/elinks.conf.5*
178 %{_mandir}/man5/elinkskeys.5*
179 %{_desktopdir}/elinks.desktop
180 %{_pixmapsdir}/elinks.png
181 %if %{with lua}
182 %dir %{_sysconfdir}
183 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.lua
184 %endif
This page took 0.160562 seconds and 4 git commands to generate.