Accepting request 903860 from home:mcepl:neovim

Build dependency of neovim 0.5

OBS-URL: https://build.opensuse.org/request/show/903860
OBS-URL: https://build.opensuse.org/package/show/editors/tree-sitter?expand=0&rev=1
This commit is contained in:
Martin Pluskal 2021-07-04 05:47:11 +00:00 committed by Git OBS Bridge
commit d7f9538ea9
6 changed files with 174 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4a8070b9de17c3b8096181fe8530320ab3e8cca685d8bee6a3e8d164b5fb47da
size 2876764

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ba825c7e495542e9122a0e417be30e23856f8657027613544fd951b8bc2339d5
size 8023324

32
tree-sitter.changes Normal file
View File

@ -0,0 +1,32 @@
-------------------------------------------------------------------
Fri Jul 2 22:49:27 UTC 2021 - Matej Cepl <mcepl@suse.com>
- Update to 0.20.0.
-------------------------------------------------------------------
Tue Apr 27 06:22:19 UTC 2021 - Duncan Mac-Vicar <duncan@mac-vicar.eu>
- Update to 0.19.4.
-------------------------------------------------------------------
Thu Mar 18 13:35:15 UTC 2021 - Matej Cepl <mcepl@suse.com>
- Update to 0.19.3.
-------------------------------------------------------------------
Wed Feb 24 16:54:15 UTC 2021 - Matej Cepl <mcepl@suse.com>
- Update to 0.18.2:
There isnt good changelog, so the best I have is
https://github.com/tree-sitter/tree-sitter/compare/0.17.3...v0.18.2
-------------------------------------------------------------------
Sun Nov 15 17:58:56 UTC 2020 - Matej Cepl <mcepl@suse.com>
- Add fix_build_aarch64.patch (gh#tree-sitter/tree-sitter#804) to fix
build on aarch64.
-------------------------------------------------------------------
Sat Nov 7 19:13:04 UTC 2020 - Matej Cepl <mcepl@suse.com>
- The initial packaging of tree-sitter 0.17.3.

112
tree-sitter.spec Normal file
View File

@ -0,0 +1,112 @@
#
# spec file for package tree-sitter
#
# Copyright (c) 2020 SUSE LLC
#
# 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 https://bugs.opensuse.org/
#
%define somajor 0
%define libdirname tree_sitter
Name: tree-sitter
Version: 0.20.0
Release: 0
Summary: An incremental parsing system for programming tools
License: MIT
URL: https://tree-sitter.github.io/
Source0: https://github.com/tree-sitter/%{name}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: tree-sitter-vendor.tar.xz
BuildRequires: nodejs
BuildRequires: npm
# because of gh#meta-rust/cargo-bitbake#13
BuildRequires: cargo > 1.40
Requires: lib%{name}%{somajor} = %{version}
%description
Tree-sitter is a parser generator tool and an incremental parsing
library. It can build a concrete syntax tree for a source file
and efficiently update the syntax tree as the source file is
edited. Tree-sitter aims to be:
* General enough to parse any programming language
* Fast enough to parse on every keystroke in a text editor
* Robust enough to provide useful results even in the presence
of syntax errors
* Dependency-free so that the runtime library (which is written
in pure C) can be embedded in any application
%package -n lib%{name}%{somajor}
Summary: Asychronous I/O support library
%description -n lib%{name}%{somajor}
Tree-sitter is a parser generator tool and an incremental parsing
library. It can build a concrete syntax tree for a source file
and efficiently update the syntax tree as the source file is
edited. This is the package with the dynamically linked C library.
%package devel
Summary: Development files for %{name}
Requires: lib%{name}%{somajor} = %{version}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%prep
%autosetup -p1 -a1
rm -v docs/.gitignore
mkdir .cargo
cat >.cargo/config <<EOF
[source.crates-io]
replace-with = "vendored-sources"
[source.vendored-sources]
directory = "./vendor"
EOF
%build
cargo build --release
export CFLAGS='%{optflags}'
export PREFIX='%{_prefix}' LIBDIR='%{_libdir}'
%make_build
%install
export PREFIX='%{_prefix}' LIBDIR='%{_libdir}' INCLUDEDIR='%{_includedir}'
%make_install
install -p -m 0755 -D target/release/tree-sitter \
%{buildroot}%{_bindir}/tree-sitter
find %{buildroot} -type f \( -name "*.la" -o -name "*.a" \) -delete -print
%post -n lib%{name}%{somajor} -p /sbin/ldconfig
%postun -n lib%{name}%{somajor} -p /sbin/ldconfig
%files
%doc README.md CONTRIBUTING.md
%{_bindir}/tree-sitter
%files -n lib%{name}%{somajor}
%license LICENSE
%{_libdir}/*.so.*
%files devel
%doc docs/
%dir %{_includedir}/%{libdirname}/
%{_includedir}/%{libdirname}/*
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%changelog