Merge remote-tracking branch 'jkonecny/master-backport-fedora-spec'

This commit is contained in:
Maxime Coste 2019-12-19 13:45:27 +11:00
commit 1946b6b09c
2 changed files with 77 additions and 22 deletions

View File

@ -1,44 +1,97 @@
%bcond_without tests
### Enable LTO. Profit ~8%
%global optflags %{optflags} -flto
%global build_ldflags %{build_ldflags} -flto
Name: kakoune Name: kakoune
Version: 2019.01.20 Version: 2019.12.10
Release: 1%{?dist} Release: 1%{?dist}
Summary: Vim inspired editor Summary: Code editor heavily inspired by Vim
License: Unlicense License: Unlicense
URL: http://kakoune.org/ URL: https://kakoune.org/
Source0: %{name}-%{version}.tar.bz2 Source0: https://github.com/mawww/kakoune/archive/v%{version}/%{name}-%{version}.tar.gz
BuildRequires: ncurses-devel >= 5.3
BuildRequires: asciidoc BuildRequires: asciidoc
BuildRequires: gcc-c++ BuildRequires: gcc-c++ >= 7
BuildRequires: glibc-langpack-en BuildRequires: glibc-langpack-en
Requires: ncurses-libs >= 5.3 BuildRequires: pkgconfig(ncurses) >= 5.3
%description %description
Kakoune is a code editor heavily inspired by Vim - Modal editor
- Faster as in fewer keystrokes
- Multiple selections
- Orthogonal design
Kakoune is a code editor that implements Vis "keystrokes as a text editing
language" model. As its also a modal editor, it is somewhat similar to the Vim
editor (after which Kakoune was originally inspired).
Kakoune can operate in two modes, normal and insertion. In insertion mode, keys
are directly inserted into the current buffer. In normal mode, keys are used to
manipulate the current selection and to enter insertion mode.
Kakoune has a strong focus on interactivity, most commands provide immediate
and incremental results, while still being competitive (as in keystroke count)
with Vim.
Kakoune works on selections, which are oriented, inclusive range of characters,
selections have an anchor and a cursor character. Most commands move both of
them, except when extending selection where the anchor character stays fixed
and the cursor one moves around.
%prep %prep
%setup -qn %{name}-%{version} %autosetup -p1
### Use default Fedora build flags
sed -i '/CXXFLAGS += -O3/d' src/Makefile
### Install doc files in proper location
sed -i 's!$(PREFIX)/share/doc/kak!$(PREFIX)/share/doc/%{name}!' src/Makefile
%build %build
cd src %set_build_flags
make %{?_smp_mflags} pushd src
%make_build
popd
%check
cd src
LANG=en_US.utf8 make test
%install %install
cd src pushd src
%make_install PREFIX=/usr %make_install PREFIX=%{_prefix}
popd
%if %{with tests}
%check
%set_build_flags
pushd src
LANG=en_US.utf8 %make_build test
popd
%endif
%files %files
%doc %license UNLICENSE
%{_bindir}/* %doc README.asciidoc CONTRIBUTING VIMTOKAK
%{_mandir}/man1/kak* %{_bindir}/kak
%{_datadir}/doc/kak/* %{_datadir}/kak/
%{_datadir}/kak/* %{_mandir}/man1/*
%changelog %changelog
* Tue Dec 10 2019 Artem Polishchuk <ego.cordatus@gmail.com> - 2019.12.10-1
- Update to 2019.12.10
* Tue Nov 26 2019 Artem Polishchuk <ego.cordatus@gmail.com> - 2019.07.01-4
- Add patch to pass tests with default Fedora build flags
* Fri Nov 22 2019 Artem Polishchuk <ego.cordatus@gmail.com> - 2019.07.01-2
- Packaging fixes
* Wed Apr 24 2019 Jiri Konecny <jkonecny@redhat.com> - v2019.01.20-1 * Wed Apr 24 2019 Jiri Konecny <jkonecny@redhat.com> - v2019.01.20-1
- Add a new build dependency (glibc-langpack-en) required for Fedora 30 and later - Add a new build dependency (glibc-langpack-en) required for Fedora 30 and later
- Update version - Update version

View File

@ -1,6 +1,8 @@
debug ?= no debug ?= no
static ?= no static ?= no
gzip_man ?= yes gzip_man ?= yes
# to get format compatible with GitHub archive use "gzip -S .gz" here
compress_bin ?= bzip2
ifneq ($(gzip_man),yes) ifneq ($(gzip_man),yes)
ifneq ($(gzip_man),no) ifneq ($(gzip_man),no)
@ -148,7 +150,7 @@ dist:
echo "$(version)" > src/.version; \ echo "$(version)" > src/.version; \
tar --transform "s,^,$${basename}/," -rf $${basename}.tar src/.version; \ tar --transform "s,^,$${basename}/," -rf $${basename}.tar src/.version; \
rm src/.version; \ rm src/.version; \
bzip2 $${basename}.tar; $(compress_bin) $${basename}.tar;
distclean: clean distclean: clean
rm -f kak kak$(suffix) rm -f kak kak$(suffix)