Error building devel/ninja

From: Janos Dohanics <web_at_3dresearch.com>
Date: Thu, 19 Jan 2023 10:23:25 UTC
Hello,

The system is FreeBSD 13.1-STABLE #0 3f908eed2:

# make
===>  License APACHE20 accepted by the user
===>   ninja-1.11.1,2 depends on file: /usr/local/sbin/pkg - found
=> ninja-build-ninja-v1.11.1_GH0.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
=> Attempting to fetch https://codeload.github.com/ninja-build/ninja/tar.gz/v1.11.1?dummy=/ninja-build-ninja-v1.11.1_GH0.tar.gz
fetch: https://codeload.github.com/ninja-build/ninja/tar.gz/v1.11.1?dummy=/ninja-build-ninja-v1.11.1_GH0.tar.gz: size unknown
fetch: https://codeload.github.com/ninja-build/ninja/tar.gz/v1.11.1?dummy=/ninja-build-ninja-v1.11.1_GH0.tar.gz: size of remote file is not known
ninja-build-ninja-v1.11.1_GH0.tar.gz                   224 kB 4376 kBps    00s
===> Fetching all distfiles required by ninja-1.11.1,2 for building
===>  Extracting for ninja-1.11.1,2
=> SHA256 Checksum OK for ninja-build-ninja-v1.11.1_GH0.tar.gz.
===>  Patching for ninja-1.11.1,2
===>   ninja-1.11.1,2 depends on file: /usr/local/bin/python3.9 - found
===>  Configuring for ninja-1.11.1,2
===>  Building for ninja-1.11.1,2
bootstrapping ninja...
Error in argument 4, char 1: no argument for option -
usage: re2c [-bcdDefFghirsuvVwx18] [-o of] [-t th] file

-? -h  --help           Display this info.

-b     --bit-vectors    Implies -s. Use bit vectors as well in the attempt to
                        coax better code out of the compiler. Most useful for
                        specifications with more than a few keywords (e.g. for
                        most programming languages).

-c     --conditions     Require start conditions.

-d     --debug-output   Creates a parser that dumps information during
                        about the current position and in which state the
                        parser is.

-D     --emit-dot       Emit a Graphviz dot view of the DFA graph

-e     --ecb            Generate a parser that supports EBCDIC. The generated code
                        can deal with any character up to 0xFF. In this mode re2c
                        assumes that input character size is 1 byte. This switch is
                        incompatible with -w, -u, -x and -8

-f     --storable-state Generate a scanner that supports storable states.

-F     --flex-syntax    Partial support for flex syntax.

-g     --computed-gotos Implies -b. Generate computed goto code (only useable
                        with gcc).

-i     --no-debug-info  Do not generate '#line' info (usefull for versioning).

-o of  --output=of      Specify the output file (of) instead of stdout

-r     --reusable       Allow reuse of scanner definitions.

-s     --nested-ifs     Generate nested ifs for some switches. Many compilers
                        need this assist to generate better code.

-t th  --type-header=th Generate a type header file (th) with type definitions.

-u     --unicode        Generate a parser that supports UTF-32. The generated code
                        can deal with any valid Unicode character up to 0x10FFFF.
                        In this mode re2c assumes that input character size is 4 bytes.
                        This switch is incompatible with -e, -w, -x and -8. It implies -s.

-v     --version        Show version information.

-V     --vernum         Show version as one number.

-w     --wide-chars     Generate a parser that supports UCS-2. The generated code can
                        deal with any valid Unicode character up to 0xFFFF. In this mode
                        re2c assumes that input character size is 2 bytes. This switch is
                        incompatible with -e, -x, -u and -8. It implies -s.
-x     --utf-16         Generate a parser that supports UTF-16. The generated code can
                        deal with any valid Unicode character up to 0x10FFFF. In this mode
                        re2c assumes that input character size is 2 bytes. This switch is
                        incompatible with -e, -w, -u and -8. It implies -s.
-8     --utf-8          Generate a parser that supports UTF-8. The generated code can
                        deal with any valid Unicode character up to 0x10FFFF. In this mode
                        re2c assumes that input character size is 1 byte. This switch is
                        incompatible with -e, -w, -x and -u.
-1     --single-pass    Force single pass generation, this cannot be combined
                        with -f and disables YYMAXFILL generation prior to last
                        re2c block.

--no-generation-date    Suppress date output in the generated output so that it
                        only shows the re2c version.

--case-insensitive      All strings are case insensitive, so all "-expressions
                        are treated in the same way '-expressions are.

--case-inverted         Invert the meaning of single and double quoted strings.
                        With this switch single quotes are case sensitive and
                        double quotes are case insensitive.

--encoding-policy ep    Specify what re2c should do when given bad code unit.
                        ep can be one of the following: fail, substitute, ignore.

--input i               Specify re2c input API.
                        i can be one of the following: default, custom.
when running:  re2c -b -i --no-generation-date --no-version -o ./src/depfile_parser.cc ./src/depfile_parser.in.cc
Traceback (most recent call last):
  File "/usr/ports/devel/ninja/work/ninja-1.11.1/configure.py", line 485, in <module>
    n.build(src('depfile_parser.cc'), 're2c', src('depfile_parser.in.cc'))
  File "/usr/ports/devel/ninja/work/ninja-1.11.1/configure.py", line 169, in build
    self._run_command(self._expand(cmd, local_vars))
  File "/usr/ports/devel/ninja/work/ninja-1.11.1/configure.py", line 194, in _run_command
    subprocess.check_call(cmdline, shell=True)
  File "/usr/local/lib/python3.9/subprocess.py", line 373, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command 're2c -b -i --no-generation-date --no-version -o ./src/depfile_parser.cc ./src/depfile_parser.in.cc' returned non-zero exit status 2.
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/devel/ninja
*** Error code 1

Stop.
make: stopped in /usr/ports/devel/ninja

Would you please advise?

-- 
Janos Dohanics