Subject: bug#60415: Emacs master doesn't build if !HAVE_TREE_SITTER

From: Yuan Fu <[email-masked]>
Date: Sat, 31 Dec 2022 18:18:39 -0800

> On Dec 31, 2022, at 5:09 PM, Po Lu <[email-masked]> wrote:
> 
> Paul Eggert <[email-masked]> writes:
> 
>> On my platform the current Emacs master (commit
>> 91ae9f3d12885373d38c3e8d693f7dc210f9d471) won't build, failing with:
>> 
>>   ELC      progmodes/typescript-ts-mode.elc
>> 
>> In toplevel form:
>> progmodes/typescript-ts-mode.el:31:2: Error: Symbol’s function
>> definition is vo\
>> id: treesit-query-compile
>> 
>> 
>> Full log (compressed) attached, built from Git on Fedora 37
>> x86-64. The best fix isn't immediately obvious to me; adding a
>> declare-function doesn't work.
>> 
>> This platform doesn't have the tree-sitter library, so
>> HAVE_TREE_SITTER is not defined which means C doesn't define
>> treesit-query-compile.
>> 
>> I will probably just install the tree-sitter library to work around
>> the bug, but thought I'd document it. Presumably you can simulate it
>> by configuring --without-tree-sitter.
> 
> Copying in Yuan Fu.
> 
> Would people please test their changes on an Emacs *WITHOUT* tree-sitter
> before installing them in the future?

Yeah I’ve setup a no-tree-sitter build so I could catch these in the future. Sorry for the inconvenience.

Yuan