From: Laurent Cheylus Subject: Re: [update] textproc/tree-sitter v0.22.6 To: Jeremie Courreges-Anglas Cc: Ports , edd@theunixzoo.co.uk Date: Sat, 25 May 2024 15:07:14 +0200 Hi Jérémie, ----- Mail original ----- > > an update for textproc/tree-sitter version 0.22.6, needed to update > > Neovim for version 0.10.0. > > This needs: > # C11 > COMPILER = base-clang ports-gcc > COMPILER_LANGS = c > > plus a shared lib major bump because of added and removed public > symbols. Makefile updated with your remarks. I bumped the shared lib major (3.0 -> 4.0) for this version. > NO_TEST isn't just about rust/cargo: make test (now?) needs bash. > make test also tries to connect to github to clone some repos, that > doesn't fly with PORTS_PRIVSEP=Yes. The NO_TEST comment could be > amended. Comment updated for NO_TEST to add deps on bash and Tree-sitter grammers downloaded from GH. > ok jca@ with those changes. Disclaimer: I haven't tested -current > neovim with updated tree-sitter. Port of neovim 0.10.0 tested with this new version of textproc/tree-sitter => no issue detected. Thanks for your comments/tests. Attached an updated version of my diff for textproc/tree-sitter port. Laurent Index: Makefile =================================================================== RCS file: /cvs/ports/textproc/tree-sitter/Makefile,v diff -u -p -r1.15 Makefile --- Makefile 3 Aug 2023 17:13:49 -0000 1.15 +++ Makefile 24 May 2024 17:21:10 -0000 @@ -5,18 +5,18 @@ COMMENT = parser generator tool and incr GH_ACCOUNT = tree-sitter GH_PROJECT = tree-sitter -GH_TAGNAME = v0.20.8 -REVISION = 1 +GH_TAGNAME = v0.22.6 -SHARED_LIBS += tree-sitter 3.0 +SHARED_LIBS += tree-sitter 4.0 # 0.22.6 CATEGORIES = textproc # Unlicense/MIT PERMIT_PACKAGE = Yes -# Uses -std=gnu99, prefer base compiler -COMPILER = base-clang base-gcc +# C11 +COMPILER = base-clang ports-gcc +COMPILER_LANGS = c MAKE_ENV = DESTDIR="" \ LIBDIR="${LOCALBASE}/lib" \ @@ -26,5 +26,9 @@ USE_GMAKE = Yes post-patch: ${SUBST_CMD} ${WRKSRC}/Makefile + +# Tests need rust/cargo and bash +# script/fetch-fixtures downloads tree-sitter grammars on GitHub +NO_TEST = Yes .include Index: distinfo =================================================================== RCS file: /cvs/ports/textproc/tree-sitter/distinfo,v diff -u -p -r1.7 distinfo --- distinfo 3 Aug 2023 16:50:47 -0000 1.7 +++ distinfo 24 May 2024 17:21:10 -0000 @@ -1,2 +1,2 @@ -SHA256 (tree-sitter-0.20.8.tar.gz) = YYHt4LdHC/yjfik+fV3B0WRpuUhdE/E6YFuuxKix95E= -SIZE (tree-sitter-0.20.8.tar.gz) = 2941223 +SHA256 (tree-sitter-0.22.6.tar.gz) = 4raH90NYq2QEcwt/saHO192zeAIC03WV7NeyCo9Bhh8= +SIZE (tree-sitter-0.22.6.tar.gz) = 3036954 Index: patches/patch-Makefile =================================================================== RCS file: /cvs/ports/textproc/tree-sitter/patches/patch-Makefile,v diff -u -p -r1.3 patch-Makefile --- patches/patch-Makefile 11 Mar 2022 20:03:33 -0000 1.3 +++ patches/patch-Makefile 24 May 2024 17:21:10 -0000 @@ -5,7 +5,7 @@ the pkg-config file Index: Makefile --- Makefile.orig +++ Makefile -@@ -34,8 +34,8 @@ ifeq ($(shell uname),Darwin) +@@ -38,8 +38,8 @@ else ifeq ($(shell uname),Darwin) else SOEXT = so SOEXTVER_MAJOR = so.$(SONAME_MAJOR) @@ -14,28 +14,24 @@ Index: Makefile + SOEXTVER = so.${LIBtree-sitter_VERSION} + LINKSHARED += -shared endif - ifneq (,$(filter $(shell uname),FreeBSD NetBSD DragonFly)) + ifneq ($(filter $(shell uname),FreeBSD NetBSD DragonFly),) PCLIBDIR := $(PREFIX)/libdata/pkgconfig -@@ -48,21 +48,16 @@ libtree-sitter.a: $(OBJ) - - libtree-sitter.$(SOEXTVER): $(OBJ) - $(CC) $(LDFLAGS) $(LINKSHARED) $^ $(LDLIBS) -o $@ -- ln -sf $@ libtree-sitter.$(SOEXT) -- ln -sf $@ libtree-sitter.$(SOEXTVER_MAJOR) - - install: all - install -d '$(DESTDIR)$(LIBDIR)' - install -m755 libtree-sitter.a '$(DESTDIR)$(LIBDIR)'/libtree-sitter.a - install -m755 libtree-sitter.$(SOEXTVER) '$(DESTDIR)$(LIBDIR)'/libtree-sitter.$(SOEXTVER) -- ln -sf libtree-sitter.$(SOEXTVER) '$(DESTDIR)$(LIBDIR)'/libtree-sitter.$(SOEXTVER_MAJOR) -- ln -sf libtree-sitter.$(SOEXTVER) '$(DESTDIR)$(LIBDIR)'/libtree-sitter.$(SOEXT) - install -d '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter - install -m644 lib/include/tree_sitter/*.h '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter/ - install -d '$(DESTDIR)$(PCLIBDIR)' - sed -e 's|@LIBDIR@|$(LIBDIR)|;s|@INCLUDEDIR@|$(INCLUDEDIR)|;s|@VERSION@|$(VERSION)|' \ -- -e 's|=$(PREFIX)|=$${prefix}|' \ -- -e 's|@PREFIX@|$(PREFIX)|' \ -+ -e 's|@PREFIX@|$(LOCALBASE)|' \ - tree-sitter.pc.in > '$(DESTDIR)$(PCLIBDIR)'/tree-sitter.pc - +@@ -60,8 +60,7 @@ tree-sitter.pc: tree-sitter.pc.in + sed -e 's|@VERSION@|$(VERSION)|' \ + -e 's|@LIBDIR@|$(LIBDIR)|' \ + -e 's|@INCLUDEDIR@|$(INCLUDEDIR)|' \ +- -e 's|=$(PREFIX)|=$${prefix}|' \ +- -e 's|@PREFIX@|$(PREFIX)|' $< > $@ ++ -e 's|@PREFIX@|$(LOCALBASE)|' $< > $@ + clean: + $(RM) $(OBJ) tree-sitter.pc libtree-sitter.a libtree-sitter.$(SOEXT) +@@ -72,8 +71,6 @@ install: all + install -m644 tree-sitter.pc '$(DESTDIR)$(PCLIBDIR)'/tree-sitter.pc + install -m644 libtree-sitter.a '$(DESTDIR)$(LIBDIR)'/libtree-sitter.a + install -m755 libtree-sitter.$(SOEXT) '$(DESTDIR)$(LIBDIR)'/libtree-sitter.$(SOEXTVER) +- ln -sf libtree-sitter.$(SOEXTVER) '$(DESTDIR)$(LIBDIR)'/libtree-sitter.$(SOEXTVER_MAJOR) +- ln -sf libtree-sitter.$(SOEXTVER_MAJOR) '$(DESTDIR)$(LIBDIR)'/libtree-sitter.$(SOEXT) + + uninstall: + $(RM) '$(DESTDIR)$(LIBDIR)'/libtree-sitter.a \ Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/textproc/tree-sitter/pkg/PLIST,v diff -u -p -r1.3 PLIST --- pkg/PLIST 3 Aug 2023 16:50:47 -0000 1.3 +++ pkg/PLIST 24 May 2024 17:21:10 -0000 @@ -1,6 +1,5 @@ include/tree_sitter/ include/tree_sitter/api.h -include/tree_sitter/parser.h @static-lib lib/libtree-sitter.a @lib lib/libtree-sitter.so.${LIBtree-sitter_VERSION} lib/pkgconfig/tree-sitter.pc