weechat/weechat.spec

265 lines
7.4 KiB
RPMSpec
Raw Normal View History

#
# spec file for package weechat
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: weechat
Accepting request 395594 from home:mimi_vx:branches:server:irc - update to 1.5 * New features: + core: add Portuguese translations + core: change default value of option weechat.look.nick_color_hash to "djb2" + core: move nick coloring from irc plugin to core, move options irc.look.nick_color_force, irc.look.nick_color_hash and irc.look.nick_color_stop_chars to core, add info "nick_color" and "nick_color_name", deprecate info "irc_nick_color" and "irc_color_name" + core: move irc bar item "away" to core, move options irc.look.item_away_message and irc.color.item_away to core + api: add support of functions in hook_process + api: add pointer in callbacks used in scripting API + irc: add option irc.network.sasl_fail_unavailable + irc: add multiple targets and support of "-server" in command /ctcp + ruby: add detection of Ruby 2.3 + trigger: add "recover" in default triggers cmd_pass/msg_auth, and "regain" in default trigger "msg_auth" * Bugs fixed: + core: fix nick coloring when stop chars and a forced color are used: first remove chars then look for forced color + core: check that pointers received in arguments are not NULL in buffers and windows functions + core: fix truncation of buffer names in hotlist + core: fix update of window title under Tmux + core: fix detection of Python shared libraries + api: fix number of arguments returned by function string_split() when keep_eol is 2 and the string ends with separators + irc: fix first message displayed in raw buffer when the message is modified by a modifier + irc: add missing completion "*" for target in command /msg OBS-URL: https://build.opensuse.org/request/show/395594 OBS-URL: https://build.opensuse.org/package/show/server:irc/weechat?expand=0&rev=72
2016-05-15 12:42:26 +02:00
Version: 1.5
Release: 0
Summary: Portable, Fast, Light and Extensible Chat Client
License: GPL-3.0+
Group: Productivity/Networking/IRC
Accepting request 323426 from home:mimi_vx:branches:server:irc - Version bump to 1.3: * core: add completion "colors" (issue #481) * core: start/stop search in buffer at current scroll position by default, add key Ctrl+q to stop search and reset scroll (issue #76, issue #393) * core: add option weechat.look.key_grab_delay to set the default delay when grabbing a key with Alt+k * core: add option weechat.look.confirm_upgrade (issue #463) * core: allow Ctrl+c to exit WeeChat when the passphrase is asked on startup (issue #452) * core: allow pointer as list name in evaluation of hdata (issue #450) * core: add signal "signal_sighup" * api: add support of evaluated sub-strings and current date/time in function string_eval_expression() and command /eval * api: add function string_eval_path_home() * alias: add options "add", "addcompletion" and "del" in command /alias, remove command /unalias (issue #458) * irc: add option irc.network.channel_encode (issue #218, issue #482) * irc: add option irc.color.topic_current (issue #475) * irc: evaluate content of server option "nicks" * logger: evaluate content of option logger.file.path (issue #388) * relay: display value of HTTP header "X-Real-IP" for websocket connections (issue #440) * script: rename option script.scripts.dir to script.scripts.path, evaluate content of option (issue #388) * xfer: evaluate content of options xfer.file.download_path and xfer.file.upload_path (issue #388) * many bug fixes OBS-URL: https://build.opensuse.org/request/show/323426 OBS-URL: https://build.opensuse.org/package/show/server:irc/weechat?expand=0&rev=67
2015-08-16 14:06:27 +02:00
Url: http://weechat.org
Source: http://weechat.org/files/src/%{name}-%{version}.tar.bz2
Source1: weechat.desktop
Source2: %{name}.keyring
Source3: %{name}-%{version}.tar.bz2.asc
Source4: %{name}.changes
BuildRequires: asciidoc
BuildRequires: ca-certificates
BuildRequires: cmake
BuildRequires: curl-devel
BuildRequires: docbook-xsl-stylesheets
BuildRequires: enchant-devel
BuildRequires: gcc-c++
BuildRequires: grep
BuildRequires: guile-devel
BuildRequires: hicolor-icon-theme
BuildRequires: libgcrypt-devel
BuildRequires: libgnutls-devel
BuildRequires: libgpg-error-devel
BuildRequires: libtool
BuildRequires: libxslt-tools
BuildRequires: lua51-devel
BuildRequires: lzo-devel
BuildRequires: ncurses-devel
BuildRequires: perl
BuildRequires: pkg-config
BuildRequires: python-devel
BuildRequires: ruby-devel
BuildRequires: tcl-devel
BuildRequires: update-desktop-files
Requires: ca-certificates
Requires: hicolor-icon-theme
Recommends: %{name}-lang = %{version}
# without scripts it is bit annoying
Recommends: %{name}-perl = %{version}
Recommends: %{name}-python = %{version}
Suggests: %{name}-doc
BuildRoot: %{_tmppath}/%{name}-%{version}-build
# Not on SLE12
%if 0%{?suse_version} != 1315 || 0%{?is_opensuse}
BuildRequires: source-highlight
%endif
%description
WeeChat (Wee Enhanced Environment for Chat) is a fast and light cross-platform
chat environment. It can be entirely controlled with the keyboard, has a
plugin-based architecture and is customizable and extensible with scripts in
several scripting languages.
%lang_package
# Not on SLE12
%if 0%{?suse_version} != 1315 || 0%{?is_opensuse}
%package doc
Summary: Documentation for %{name}
Group: Documentation/HTML
Requires: %{name} = %{version}
%description doc
Various documentation files for %{name}.
%endif
%package devel
Summary: Development Environment for %{name} Plugins
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
%description devel
Development environment for authoring %{name} plugins.
%package guile
Summary: Guile Scripting Support for %{name}
Group: Productivity/Networking/IRC
Requires: %{name} = %{version}
%description guile
Support for %{name} scripts written in the Guile language.
%package lua
Summary: Lua Scripting Support for %{name}
Group: Productivity/Networking/IRC
Requires: %{name} = %{version}
%description lua
Support for %{name} scripts written in the Lua language.
%package perl
Summary: Perl Scripting Support for %{name}
Group: Productivity/Networking/IRC
Requires: %{name} = %{version}
%{?libperl_requires}
%description perl
Support for %{name} scripts written in the Perl language.
%package python
Summary: Python Scripting Support for %{name}
Group: Productivity/Networking/IRC
Requires: %{name} = %{version}
%description python
Support for %{name} scripts written in the Python language.
%package tcl
Summary: Tcl Scripting Support for %{name}
Group: Productivity/Networking/IRC
Requires: %{name} = %{version}
%description tcl
Support for %{name} scripts written in the Tcl language.
%package ruby
Summary: Ruby Scripting Support for %{name}
Group: Productivity/Networking/IRC
Requires: %{name} = %{version}
%description ruby
Support for %{name} scripts written in the Ruby language.
%package aspell
Summary: Aspell Spell-Checking Support for %{name}
Group: Productivity/Networking/IRC
Requires: %{name} = %{version}
%description aspell
Spell-checking support for %{name}, using the aspell library.
%prep
%setup -q
modified="$(sed -n '/^----/n;s/ - .*$//;p;q' "%{SOURCE4}")"
DATE="\"$(date -d "${modified}" "+%%b %%e %%Y")\""
TIME="\"$(date -d "${modified}" "+%%R")\""
Accepting request 323426 from home:mimi_vx:branches:server:irc - Version bump to 1.3: * core: add completion "colors" (issue #481) * core: start/stop search in buffer at current scroll position by default, add key Ctrl+q to stop search and reset scroll (issue #76, issue #393) * core: add option weechat.look.key_grab_delay to set the default delay when grabbing a key with Alt+k * core: add option weechat.look.confirm_upgrade (issue #463) * core: allow Ctrl+c to exit WeeChat when the passphrase is asked on startup (issue #452) * core: allow pointer as list name in evaluation of hdata (issue #450) * core: add signal "signal_sighup" * api: add support of evaluated sub-strings and current date/time in function string_eval_expression() and command /eval * api: add function string_eval_path_home() * alias: add options "add", "addcompletion" and "del" in command /alias, remove command /unalias (issue #458) * irc: add option irc.network.channel_encode (issue #218, issue #482) * irc: add option irc.color.topic_current (issue #475) * irc: evaluate content of server option "nicks" * logger: evaluate content of option logger.file.path (issue #388) * relay: display value of HTTP header "X-Real-IP" for websocket connections (issue #440) * script: rename option script.scripts.dir to script.scripts.path, evaluate content of option (issue #388) * xfer: evaluate content of options xfer.file.download_path and xfer.file.upload_path (issue #388) * many bug fixes OBS-URL: https://build.opensuse.org/request/show/323426 OBS-URL: https://build.opensuse.org/package/show/server:irc/weechat?expand=0&rev=67
2015-08-16 14:06:27 +02:00
find . -name '*.[ch]' | xargs sed -i "s/__DATE__/${DATE}/g;s/__TIME__/${TIME}/g"
DATEF="\"$(date -d "${modified}" "+%%F")\""
sed -i "s/date=.*/date=$DATEF/" doc/asciidoc.conf
sed -i "s/A2X_EXECUTABLE.*/& -a revdate=$DATEF/" doc/*/CMakeLists.txt
YEAR=$(date -d "${modified}" +%%Y)
sed -i "s/{sys:date \"+%%Y\"}/${YEAR}/" doc/*/weechat.1.*.asciidoc
%build
export CFLAGS="%{optflags}"
# Tests require cpputest package
# no-undefined for perl seem not to work as desired
%cmake \
-DCMAKE_EXE_LINKER_FLAGS=-Wl,--as-needed -DCMAKE_MODULE_LINKER_FLAGS=-Wl,--as-needed -DCMAKE_SHARED_LINKER_FLAGS=-Wl,--as-needed \
-DLIBDIR="%{_libdir}" \
-DPYTHON_LIBRARY="%{_libdir}/libpython%{py_ver}.so" \
-DENABLE_ENCHANT=ON \
-DENABLE_DOC=ON \
-DENABLE_MAN=ON \
-DCA_FILE=%{_sysconfdir}/ssl/ca-bundle.pem
make %{?_smp_mflags}
%install
%cmake_install
install -D -m 0644 "%{SOURCE1}" "%{buildroot}%{_datadir}/applications/%{name}.desktop"
%suse_update_desktop_file -r "%{name}" Network IRCClient
# Not on SLE12
%if 0%{?suse_version} != 1315 || 0%{?is_opensuse}
mv "%{buildroot}%{_datadir}/doc/weechat" html
%endif
%find_lang "%{name}" --with-man
%post
%desktop_database_post
%icon_theme_cache_post
%postun
%desktop_database_postun
%icon_theme_cache_postun
# Not on SLE12
%if 0%{?suse_version} != 1315 || 0%{?is_opensuse}
%files doc
%defattr(-,root,root)
%doc html/
%endif
%files
%defattr(-,root,root)
%doc AUTHORS.asciidoc ChangeLog.asciidoc Contributing.asciidoc COPYING
%doc README.asciidoc ReleaseNotes.asciidoc
%{_bindir}/weechat-curses
%{_bindir}/weechat
%dir %{_libdir}/weechat
%dir %{_libdir}/weechat/plugins
%{_libdir}/weechat/plugins/alias.so
%{_libdir}/weechat/plugins/charset.so
%{_libdir}/weechat/plugins/exec.so
%{_libdir}/weechat/plugins/fifo.so
%{_libdir}/weechat/plugins/irc.so
%{_libdir}/weechat/plugins/logger.so
%{_libdir}/weechat/plugins/relay.so
%{_libdir}/weechat/plugins/script.so
%{_libdir}/weechat/plugins/trigger.so
%{_libdir}/weechat/plugins/xfer.so
%{_mandir}/man1/weechat.1*
%{_datadir}/applications/weechat.desktop
%{_datadir}/icons/hicolor/*/apps/weechat.png
%files -f "%{name}.lang" lang
%defattr(-,root,root)
%files devel
%defattr(-,root,root)
%{_includedir}/weechat
%{_libdir}/pkgconfig/weechat.pc
%files guile
%defattr(-,root,root)
%{_libdir}/weechat/plugins/guile.so
%files lua
%defattr(-,root,root)
%{_libdir}/weechat/plugins/lua.so
%files perl
%defattr(-,root,root)
%{_libdir}/weechat/plugins/perl.so
%files python
%defattr(-,root,root)
%{_libdir}/weechat/plugins/python.so
%files tcl
%defattr(-,root,root)
%{_libdir}/weechat/plugins/tcl.so
%files ruby
%defattr(-,root,root)
%{_libdir}/weechat/plugins/ruby.so
%files aspell
%defattr(-,root,root)
%{_libdir}/weechat/plugins/aspell.so
%changelog