queries c.h c.scm cpp.h cpp.scm cuda.h cuda.scm glsl.h glsl.scm go.h go.scm javascript.h javascript.scm kotlin.h kotlin.scm lua.h lua.scm odin.h odin.scm php.h php.scm python.h python.scm rust.h rust.scm tcl.h tcl.scm zig.h zig.scm
tests
depth_test
sub level1.c
level0.c
test.c test.cpp test.cu test.cuh test.glsl test.go test.js test.kt test.lua test.odin test.php test.py test.rs test.tcl test.zig
vendor
tree-sitter
lib
include
tree_sitter api.h parser.h
src
unicode ICU_SHA LICENSE README.md ptypes.h umachine.h urename.h utf.h utf16.h utf8.h
alloc.c alloc.h array.h atomic.h clock.h error_costs.h get_changed_ranges.c get_changed_ranges.h host.h language.c language.h length.h lexer.c lexer.h lib.c node.c parser.c point.h query.c reduce_action.h reusable_node.h stack.c stack.h subtree.c subtree.h tree.c tree.h tree_cursor.c tree_cursor.h unicode.h
LICENSE Makefile
tree-sitter-c
src
tree_sitter parser.h
grammar.json node-types.json parser.c
LICENSE Makefile
tree-sitter-cpp
src
tree_sitter alloc.h array.h parser.h
grammar.json node-types.json parser.c scanner.c
LICENSE Makefile
tree-sitter-cuda
src
tree_sitter alloc.h array.h parser.h runtime.h
grammar.json node-types.json parser.c scanner.c
LICENSE Makefile
tree-sitter-glsl
src
tree_sitter alloc.h array.h parser.h runtime.h
grammar.json node-types.json parser.c
LICENSE Makefile
tree-sitter-go
src
tree_sitter alloc.h array.h parser.h
grammar.json node-types.json parser.c
LICENSE Makefile
tree-sitter-javascript
src
tree_sitter alloc.h array.h parser.h
grammar.json node-types.json parser.c scanner.c
LICENSE Makefile
tree-sitter-kotlin
src
tree_sitter alloc.h array.h parser.h
grammar.json node-types.json parser.c scanner.c
LICENSE Makefile
tree-sitter-lua
src
tree_sitter alloc.h array.h parser.h
grammar.json node-types.json parser.c scanner.c
LICENSE.md Makefile
tree-sitter-odin
src
tree_sitter alloc.h array.h parser.h
grammar.json node-types.json parser.c scanner.c
LICENSE Makefile
tree-sitter-php
src
common common.mak define-grammar.js scanner.h
tree_sitter alloc.h array.h parser.h
grammar.json node-types.json parser.c scanner.c
LICENSE Makefile
tree-sitter-python
src
tree_sitter parser.h
grammar.json node-types.json parser.c scanner.c
LICENSE Makefile
tree-sitter-rust
src
tree_sitter alloc.h array.h parser.h
grammar.json node-types.json parser.c scanner.c
LICENSE Makefile
tree-sitter-tcl
src
tree_sitter parser.h
grammar.json node-types.json parser.c scanner.c
LICENSE Makefile
tree-sitter-template Makefile
tree-sitter-zig
src
tree_sitter alloc.h array.h parser.h
grammar.json node-types.json parser.c
LICENSE Makefile
.clang-format .gitattributes .gitignore LICENSE Makefile README.md abicheck.c compile_flags.txt file.c file.h list.c list.h main.c tests.sh tpool.c tpool.h
vendor/tree-sitter-php/src/common/common.mak raw
  1ifeq ($(OS),Windows_NT)
  2$(error Windows is not supported)
  3endif
  4
  5VERSION := 0.23.2
  6
  7LANGUAGE_NAME := tree-sitter-php
  8
  9# repository
 10SRC_DIR := src
 11
 12PARSER_REPO_URL := $(shell git -C $(SRC_DIR) remote get-url origin 2>/dev/null)
 13
 14ifeq ($(PARSER_URL),)
 15	PARSER_URL := $(subst .git,,$(PARSER_REPO_URL))
 16ifeq ($(shell echo $(PARSER_URL) | grep '^[a-z][-+.0-9a-z]*://'),)
 17	PARSER_URL := $(subst :,/,$(PARSER_URL))
 18	PARSER_URL := $(subst git@,https://,$(PARSER_URL))
 19endif
 20endif
 21
 22TS ?= tree-sitter
 23
 24# install directory layout
 25PREFIX ?= /usr/local
 26INCLUDEDIR ?= $(PREFIX)/include
 27LIBDIR ?= $(PREFIX)/lib
 28PCLIBDIR ?= $(LIBDIR)/pkgconfig
 29
 30# source/object files
 31PARSER := $(SRC_DIR)/parser.c
 32EXTRAS := $(filter-out $(PARSER),$(wildcard $(SRC_DIR)/*.c))
 33OBJS := $(patsubst %.c,%.o,$(PARSER) $(EXTRAS))
 34
 35# flags
 36ARFLAGS ?= rcs
 37override CFLAGS += -I$(SRC_DIR) -std=c11 -fPIC
 38
 39# ABI versioning
 40SONAME_MAJOR := $(word 1,$(subst ., ,$(VERSION)))
 41SONAME_MINOR := $(shell sed -n 's/#define LANGUAGE_VERSION //p' $(PARSER))
 42
 43# OS-specific bits
 44ifeq ($(shell uname),Darwin)
 45	SOEXT = dylib
 46	SOEXTVER_MAJOR = $(SONAME_MAJOR).$(SOEXT)
 47	SOEXTVER = $(SONAME_MAJOR).$(SONAME_MINOR).$(SOEXT)
 48	LINKSHARED := $(LINKSHARED)-dynamiclib -Wl,
 49	ifneq ($(ADDITIONAL_LIBS),)
 50	LINKSHARED := $(LINKSHARED)$(ADDITIONAL_LIBS),
 51	endif
 52	LINKSHARED := $(LINKSHARED)-install_name,$(LIBDIR)/lib$(LANGUAGE_NAME).$(SOEXTVER),-rpath,@executable_path/../Frameworks
 53else
 54	SOEXT = so
 55	SOEXTVER_MAJOR = $(SOEXT).$(SONAME_MAJOR)
 56	SOEXTVER = $(SOEXT).$(SONAME_MAJOR).$(SONAME_MINOR)
 57	LINKSHARED := $(LINKSHARED)-shared -Wl,
 58	ifneq ($(ADDITIONAL_LIBS),)
 59	LINKSHARED := $(LINKSHARED)$(ADDITIONAL_LIBS)
 60	endif
 61	LINKSHARED := $(LINKSHARED)-soname,lib$(LANGUAGE_NAME).$(SOEXTVER)
 62endif
 63ifneq ($(filter $(shell uname),FreeBSD NetBSD DragonFly),)
 64	PCLIBDIR := $(PREFIX)/libdata/pkgconfig
 65endif
 66
 67all: lib$(LANGUAGE_NAME).a lib$(LANGUAGE_NAME).$(SOEXT) $(LANGUAGE_NAME).pc
 68
 69lib$(LANGUAGE_NAME).a: $(OBJS)
 70	$(AR) $(ARFLAGS) $@ $^
 71
 72lib$(LANGUAGE_NAME).$(SOEXT): $(OBJS)
 73	$(CC) $(LDFLAGS) $(LINKSHARED) $^ $(LDLIBS) -o $@
 74ifneq ($(STRIP),)
 75	$(STRIP) $@
 76endif
 77
 78$(LANGUAGE_NAME).pc: bindings/c/$(LANGUAGE_NAME).pc.in
 79	sed  -e 's|@URL@|$(PARSER_URL)|' \
 80		-e 's|@VERSION@|$(VERSION)|' \
 81		-e 's|@LIBDIR@|$(LIBDIR)|' \
 82		-e 's|@INCLUDEDIR@|$(INCLUDEDIR)|' \
 83		-e 's|@REQUIRES@|$(REQUIRES)|' \
 84		-e 's|@ADDITIONAL_LIBS@|$(ADDITIONAL_LIBS)|' \
 85		-e 's|=$(PREFIX)|=$${prefix}|' \
 86		-e 's|@PREFIX@|$(PREFIX)|' $< > $@
 87
 88$(PARSER): $(SRC_DIR)/grammar.json
 89	$(TS) generate --no-bindings $^
 90
 91install: all
 92	install -d '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter '$(DESTDIR)$(PCLIBDIR)' '$(DESTDIR)$(LIBDIR)'
 93	install -m644 bindings/c/$(LANGUAGE_NAME).h '$(DESTDIR)$(INCLUDEDIR)'/tree_sitter/$(LANGUAGE_NAME).h
 94	install -m644 $(LANGUAGE_NAME).pc '$(DESTDIR)$(PCLIBDIR)'/$(LANGUAGE_NAME).pc
 95	install -m644 lib$(LANGUAGE_NAME).a '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).a
 96	install -m755 lib$(LANGUAGE_NAME).$(SOEXT) '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXTVER)
 97	ln -sf lib$(LANGUAGE_NAME).$(SOEXTVER) '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXTVER_MAJOR)
 98	ln -sf lib$(LANGUAGE_NAME).$(SOEXTVER_MAJOR) '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXT)
 99
100uninstall:
101	$(RM) '$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).a \
102		'$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXTVER) \
103		'$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXTVER_MAJOR) \
104		'$(DESTDIR)$(LIBDIR)'/lib$(LANGUAGE_NAME).$(SOEXT) \
105		'$(DESTDIR)$(INCLUDEDIR)'/tree_sitter/$(LANGUAGE_NAME).h \
106		'$(DESTDIR)$(PCLIBDIR)'/$(LANGUAGE_NAME).pc
107
108clean:
109	$(RM) $(OBJS) $(LANGUAGE_NAME).pc lib$(LANGUAGE_NAME).a lib$(LANGUAGE_NAME).$(SOEXT)
110
111.PHONY: all install uninstall clean