commit:     922ceb62776dfcef20a54fb39f190460527000a5
Author:     ingenarel (NeoJesus) <ingenarel_neojesus <AT> disroot <DOT> org>
AuthorDate: Thu Jan 29 21:26:25 2026 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Mar  1 00:51:16 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=922ceb62

dev-libs/tree-sitter: add 0.26.3

Closes: https://bugs.gentoo.org/969440
Signed-off-by: ingenarel (NeoJesus) <ingenarel_neojesus <AT> disroot.org>
Part-of: https://github.com/gentoo/gentoo/pull/45576
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/tree-sitter/Manifest                      |  1 +
 .../files/tree-sitter-0.26.3-no-static.patch       | 21 +++++++++
 dev-libs/tree-sitter/tree-sitter-0.26.3.ebuild     | 50 ++++++++++++++++++++++
 3 files changed, 72 insertions(+)

diff --git a/dev-libs/tree-sitter/Manifest b/dev-libs/tree-sitter/Manifest
index 0753b4a98819..5bbf15523dcc 100644
--- a/dev-libs/tree-sitter/Manifest
+++ b/dev-libs/tree-sitter/Manifest
@@ -2,3 +2,4 @@ DIST tree-sitter-0.24.3.tar.gz 3018668 BLAKE2B 
fa703b6250e11274d0c5ebccb741cc41f
 DIST tree-sitter-0.25.10.tar.gz 864648 BLAKE2B 
ae80d0e995cc5e3b40198caa3a7845f209f7df87948020d6b0a6669899bbeb113d852e2197cdaf1fe54944cdc8362cb73487af33960969fac087f45d33025c48
 SHA512 
f0465a2fabe303c1b62f1f55ed08aa57372ac11370d229adcccd99b5e8067be53e92da281cdfbcd034e2ecefb33ac90a119eeac9035670ac8fbaa4242cb87a11
 DIST tree-sitter-0.25.6.tar.gz 857070 BLAKE2B 
3bb6b6130e1a96c96b5af4608bf60f8bbd00cbf1fdc9905b7a6169db52351c2ae3a907eca444363ab2b3185a54d0080aa487cbe252e6e015c1cd7a735e420679
 SHA512 
47213b68233d376e145e3f42b4674d64e7ff27436f4a028e751d9ad8494469ff67b002ce184346d3f6848df2c91386c28127827c43a8bea34da5e84f2530f02f
 DIST tree-sitter-0.25.8.tar.gz 857462 BLAKE2B 
aa3f0d9056544bb6ef1127723563449c7672e06b5289e1596f2c1b5826905c578830c7e6c3bc58a91e388d647a5a5629e71f5f0af2a431e73c3be4f93ce5b6f4
 SHA512 
0d26d0699f61fa27b5adbc298ff53f8e0f5b9f2f1b216744200f6f50cff777c9c5a5a5b92304a4d1889fccd9d8a6dd6b7d4947bac907a91850322281f754ea53
+DIST tree-sitter-0.26.3.tar.gz 900789 BLAKE2B 
8532bd460f3fd4e1cec9daecc45fcc85638e5ebde474fc32ccbb9ba77611cf8aff41653295b9b1c267aac62f8e2cf23345193271cc64c975895dd04a3d988c11
 SHA512 
ae2b59938ce41f6936d98e454adfc05a3890b2b3d24485b0d992e6f1d2dd1e8d9124e6a3eddc3d594f0cdb831362ff2c9b44b72364b22d3526150d23a9d15781

diff --git a/dev-libs/tree-sitter/files/tree-sitter-0.26.3-no-static.patch 
b/dev-libs/tree-sitter/files/tree-sitter-0.26.3-no-static.patch
new file mode 100644
index 000000000000..544b9f0b53cb
--- /dev/null
+++ b/dev-libs/tree-sitter/files/tree-sitter-0.26.3-no-static.patch
@@ -0,0 +1,21 @@
+diff --git a/Makefile b/Makefile
+index 2098d27..0bbacaf 100644
+--- a/Makefile
++++ b/Makefile
+@@ -52,7 +52,7 @@ ifneq ($(filter $(shell uname),FreeBSD NetBSD DragonFly),)
+ endif
+ endif
+ 
+-all: libtree-sitter.a libtree-sitter.$(SOEXT) tree-sitter.pc
++all: libtree-sitter.$(SOEXT) tree-sitter.pc
+ 
+ libtree-sitter.a: $(OBJ)
+       $(AR) $(ARFLAGS) $@ $^
+@@ -86,7 +86,6 @@ install: all
+       install -d '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter 
'$(DESTDIR)$(PCLIBDIR)' '$(DESTDIR)$(LIBDIR)'
+       install -m644 lib/include/tree_sitter/api.h 
'$(DESTDIR)$(INCLUDEDIR)'/tree_sitter/api.h
+       install -m644 tree-sitter.pc '$(DESTDIR)$(PCLIBDIR)'/tree-sitter.pc
+-      install -m644 libtree-sitter.a '$(DESTDIR)$(LIBDIR)'/libtree-sitter.a
+ ifneq ($(findstring mingw32,$(MACHINE)),)
+       install -d '$(DESTDIR)$(BINDIR)'
+       install -m755 libtree-sitter.dll 
'$(DESTDIR)$(BINDIR)'/libtree-sitter.dll

diff --git a/dev-libs/tree-sitter/tree-sitter-0.26.3.ebuild 
b/dev-libs/tree-sitter/tree-sitter-0.26.3.ebuild
new file mode 100644
index 000000000000..424dd8528a1d
--- /dev/null
+++ b/dev-libs/tree-sitter/tree-sitter-0.26.3.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit optfeature toolchain-funcs
+
+DESCRIPTION="Tree-sitter is a parser generator tool and an incremental parsing 
library"
+HOMEPAGE="https://github.com/tree-sitter/tree-sitter";
+
+if [[ ${PV} == *9999* ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/${PN}/${PN}";
+else
+       SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz 
-> ${P}.tar.gz"
+       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv 
~s390 ~sparc ~x86 ~x64-macos"
+fi
+
+LICENSE="MIT"
+# ABI is not stable. Revisit after tree-sitter-1.0.
+# https://bugs.gentoo.org/930039
+# https://github.com/tree-sitter/tree-sitter/pull/3302
+SLOT="0/${PV}"
+RESTRICT="test" # tests are for CLI and not the lib
+
+PATCHES=(
+       "${FILESDIR}/${PN}-0.26.3-no-static.patch"
+)
+
+src_prepare() {
+       default
+       tc-export CC
+}
+
+src_compile() {
+       emake \
+               PREFIX="${EPREFIX}/usr" \
+               LIBDIR="${EPREFIX}/usr/$(get_libdir)" \
+               STRIP="" # bug 930020
+}
+
+src_install() {
+       emake DESTDIR="${D}" \
+                 PREFIX="${EPREFIX}/usr" \
+                 LIBDIR="${EPREFIX}/usr/$(get_libdir)" \
+                 install
+}
+
+pkg_postinst() {
+       optfeature "building and testing grammars" dev-util/tree-sitter-cli
+}

Reply via email to