pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/devel/re2c
Module Name: pkgsrc
Committed By: wiz
Date: Thu Dec 26 11:47:46 UTC 2024
Modified Files:
pkgsrc/devel/re2c: Makefile PLIST distinfo
Log Message:
re2c: update to 4.0.2.
4.0.2 (2024-12-11)
~~~~~~~~~~~~~~~~~~
- CMake build system: fixed bug
`#515 <https://github.com/skvadrik/re2c/issues/515>`_ where language-specific
binaries erroneously defaulted to generating code for C.
- Playground: address bar now reflects navigation between examples, editors use
a more high-contrast CSS theme.
4.0.1 (2024-11-25)
~~~~~~~~~~~~~~~~~~
- Added missing doc sources to the distribution tarball
(`#503 <https://github.com/skvadrik/re2c/issues/503>`_)
- Reworked C/C++ examples to avoid using new configuration aliases until the
world has updated to re2c 4.0, made them compatible with C.
- A few build system changes: increased CMake minimum required version to 3.15,
added missing dependencies on doc sources in Makefile.am.
- Fixed typos in docs.
4.0 (2024-11-19)
~~~~~~~~~~~~~~~~
- Added a generic technique for describing language backends based on the idea
of syntax files (`#450 <https://github.com/skvadrik/re2c/issues/450>`_).
- Added support for new languages: D, Haskell, Java, JavaScript, OCaml, Python,
V, Zig.
- Added new record API for all languages (enabled with ``--api record``,
``re2c:api = record``) and made it the default API for Haskell and OCaml.
- Renamed former "default API" to "simple API", implemented it for all backends
except Haskell and OCaml, and enabled by default API for C, D, Java,
JavaScript, Python, V and Zig.
- Added new code generation model - recursive functions (enabled with
``--recursive-functions``), primarily to be used for functional languages.
- Added options:
+ ``--syntax <file>``
+ ``--api simple``
+ ``--api generic``
+ ``--api record``
+ ``--goto-label``
+ ``--recursive-functions``
+ ``--lang none``
+ ``--lang d``
+ ``--lang haskell``
+ ``--lang java``
+ ``--lang js``
+ ``--lang ocaml``
+ ``--lang python``
+ ``--lang v``
+ ``--lang zig``
+ ``--leftmost-captvars``
+ ``--posix-captvars``
+ ``--captvars`` (alias for ``--leftmost-captvars``)
+ ``--captures`` (alias for ``--leftmost-captures``)
- Added configurations:
+ ``re2c:api = simple`` (alias for ``re2c:api = default``)
+ ``re2c:api = generic`` (alias for ``re2c:api = custom``)
+ ``re2c:api = record``
+ ``re2c:computed-gotos`` (alias for ``re2c:cgoto``)
+ ``re2c:cond:abort``
+ ``re2c:tags:negative``
+ ``re2c:leftmost-captvars``
+ ``re2c:posix-captvars``
+ ``re2c:captvars`` (alias for ``re2c:leftmost-captvars``)
+ ``re2c:captures`` (alias for ``re2c:leftmost-captures``)
+ ``re2c:monadic``
+ ``re2c:fn:sep``
+ ``re2c:[define:]YYFN``
+ ``re2c:[define:]YYINPUT``
+ ``re2c:[define:]YYGETACCEPT``
+ ``re2c:[define:]YYSETACCEPT``
+ ``re2c:[define:]YYCOPYSTAG``
+ ``re2c:[define:]YYCOPYMTAG``
+ ``re2c:[define:]YYGETCOND`` (alias for ``re2c:[define:]YYGETCONDITION``)
+ ``re2c:[define:]YYSETCOND`` (alias for ``re2c:[define:]YYSETCONDITION``)
+ ``re2c:[variable:]yyfill``
+ ``re2c:[variable:]yynmatch``
+ ``re2c:[variable:]yypmatch``
+ ``re2c:[variable:]yych:literals``
- All configurations that have ``define:`` or ``variable:`` part in their name
now have an alias without this part.
- Added new block types:
+ ``/*!svars:re2c ... */``
+ ``/*!mvars:re2c ... */``
- Flex-style opening/closing braces ``%{`` and ``%}`` for block start/end
markers now work for all block types.
- Added syntax file feature lists:
+ ``supported_apis`` with values from the list:
``simple``, ``generic``, ``record``
+ ``supported_api_styles`` with values from the list:
``free-form``, ``functions``
+ ``supported_code_models`` with values from the list:
``goto-label``, ``loop-switch``, ``recursive-functions``
+ ``supported_targets`` with values from the list:
``code``, ``dot``, ``skeleton``
+ ``supported_features`` with values from the list:
``nested-ifs``, ``bitmaps``, ``computed-gotos``, ``case-ranges``,
``tags``, ``captures``, ``captvars``, ``monadic``, ``unsafe``
- Added syntax file language-specific options:
+ ``semicolons``
+ ``backtick_quoted_strings``
+ ``single_quoted_strings``
+ ``indentation_sensitive``
+ ``wrap_blocks_in_braces``
- Added syntax file code templates:
+ ``code:var_local``
+ ``code:var_global``
+ ``code:const_local``
+ ``code:const_global``
+ ``code:array_local``
+ ``code:array_global``
+ ``code:array_elem``
+ ``code:enum``
+ ``code:enum_elem``
+ ``code:assign``
+ ``code:type_int``
+ ``code:type_uint``
+ ``code:type_cond_enum``
+ ``code:type_yybm``
+ ``code:type_yytarget``
+ ``code:cmp_eq``
+ ``code:cmp_ne``
+ ``code:cmp_lt``
+ ``code:cmp_gt``
+ ``code:cmp_le``
+ ``code:cmp_ge``
+ ``code:if_then_else``
+ ``code:if_then_else_oneline``
+ ``code:switch``
+ ``code:switch_cases``
+ ``code:switch_cases_oneline``
+ ``code:switch_case_range``
+ ``code:switch_case_default``
+ ``code:loop``
+ ``code:continue``
+ ``code:goto``
+ ``code:fndecl``
+ ``code:fndef``
+ ``code:fncall``
+ ``code:tailcall``
+ ``code:recursive_functions``
+ ``code:fingerprint``
+ ``code:line_info``
+ ``code:abort``
+ ``code:yydebug``
+ ``code:yypeek``
+ ``code:yyskip``
+ ``code:yybackup``
+ ``code:yybackupctx``
+ ``code:yyskip_yypeek``
+ ``code:yypeek_yyskip``
+ ``code:yyskip_yybackup``
+ ``code:yybackup_yyskip``
+ ``code:yybackup_yypeek``
+ ``code:yyskip_yybackup_yypeek``
+ ``code:yybackup_yypeek_yyskip``
+ ``code:yyrestore``
+ ``code:yyrestorectx``
+ ``code:yyrestoretag``
+ ``code:yyshift``
+ ``code:yyshiftstag``
+ ``code:yyshiftmtag``
+ ``code:yystagp``
+ ``code:yymtagp``
+ ``code:yystagn``
+ ``code:yymtagn``
+ ``code:yycopystag``
+ ``code:yycopymtag``
+ ``code:yygetaccept``
+ ``code:yysetaccept``
+ ``code:yygetcond``
+ ``code:yysetcond``
+ ``code:yygetstate``
+ ``code:yysetstate``
+ ``code:yylessthan``
+ ``code:yybm_filter``
+ ``code:yybm_match``
- Added global variables in syntax files:
+ ``nl``
+ ``indent``
+ ``dedent``
+ ``topindent``
- Added global conditionals in syntax files:
+ ``.api.simple``
+ ``.api.generic``
+ ``.api.record``
+ ``.api_style.functions``
+ ``.api_style.freeform``
+ ``.case_ranges``
+ ``.code_model.goto_label``
+ ``.code_model.loop_switch``
+ ``.code_model.recursive_functions``
+ ``.date``
+ ``.loop_label``
+ ``.monadic``
+ ``.start_conditions``
+ ``.storable_state``
+ ``.unsafe``
+ ``.version``
- Added warning ``-Wundefined-syntax-config``.
- Warnings that indicate serious issues are now turned on by default
(and can be disabled with ``-Wno-<warning>`` options.
- Added configure options:
+ ``--enable-syntax`` (Autoconf)
+ ``RE2C_REBUILD_SYNTAX`` (CMake)
- Dropped support for function-like API style for Rust.
(it was hard to use, if at all possible)
- Added online playground that allows one to run re2c in a web browser:
https://re2c.org/playground.
- Infra work on Github Actions CI.
To generate a diff of this commit:
cvs rdiff -u -r1.29 -r1.30 pkgsrc/devel/re2c/Makefile
cvs rdiff -u -r1.3 -r1.4 pkgsrc/devel/re2c/PLIST
cvs rdiff -u -r1.25 -r1.26 pkgsrc/devel/re2c/distinfo
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/devel/re2c/Makefile
diff -u pkgsrc/devel/re2c/Makefile:1.29 pkgsrc/devel/re2c/Makefile:1.30
--- pkgsrc/devel/re2c/Makefile:1.29 Thu Aug 24 12:25:31 2023
+++ pkgsrc/devel/re2c/Makefile Thu Dec 26 11:47:46 2024
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.29 2023/08/24 12:25:31 wiz Exp $
+# $NetBSD: Makefile,v 1.30 2024/12/26 11:47:46 wiz Exp $
-DISTNAME= re2c-3.1
+DISTNAME= re2c-4.0.2
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_GITHUB:=skvadrik/}
GITHUB_RELEASE= ${PKGVERSION_NOREV}
@@ -14,8 +14,7 @@ LICENSE= public-domain
USE_LANGUAGES= c c++
USE_TOOLS+= bison gmake
GNU_CONFIGURE= yes
-# as of 3.0:
-# FAIL: run_tests.py
+# needs 'make install'
TEST_TARGET= check
PYTHON_FOR_BUILD_ONLY= tool
Index: pkgsrc/devel/re2c/PLIST
diff -u pkgsrc/devel/re2c/PLIST:1.3 pkgsrc/devel/re2c/PLIST:1.4
--- pkgsrc/devel/re2c/PLIST:1.3 Wed Apr 26 19:17:44 2023
+++ pkgsrc/devel/re2c/PLIST Thu Dec 26 11:47:46 2024
@@ -1,8 +1,33 @@
-@comment $NetBSD: PLIST,v 1.3 2023/04/26 19:17:44 wiz Exp $
+@comment $NetBSD: PLIST,v 1.4 2024/12/26 11:47:46 wiz Exp $
bin/re2c
+bin/re2d
bin/re2go
+bin/re2hs
+bin/re2js
+bin/re2ocaml
+bin/re2py
bin/re2rust
+bin/re2v
+bin/re2zig
man/man1/re2c.1
+man/man1/re2d.1
man/man1/re2go.1
+man/man1/re2hs.1
+man/man1/re2js.1
+man/man1/re2ocaml.1
+man/man1/re2py.1
man/man1/re2rust.1
+man/man1/re2v.1
+man/man1/re2zig.1
+share/re2c/stdlib/c
+share/re2c/stdlib/d
+share/re2c/stdlib/go
+share/re2c/stdlib/haskell
+share/re2c/stdlib/java
+share/re2c/stdlib/js
+share/re2c/stdlib/ocaml
+share/re2c/stdlib/python
+share/re2c/stdlib/rust
share/re2c/stdlib/unicode_categories.re
+share/re2c/stdlib/v
+share/re2c/stdlib/zig
Index: pkgsrc/devel/re2c/distinfo
diff -u pkgsrc/devel/re2c/distinfo:1.25 pkgsrc/devel/re2c/distinfo:1.26
--- pkgsrc/devel/re2c/distinfo:1.25 Thu Aug 24 12:25:31 2023
+++ pkgsrc/devel/re2c/distinfo Thu Dec 26 11:47:46 2024
@@ -1,5 +1,5 @@
-$NetBSD: distinfo,v 1.25 2023/08/24 12:25:31 wiz Exp $
+$NetBSD: distinfo,v 1.26 2024/12/26 11:47:46 wiz Exp $
-BLAKE2s (re2c-3.1.tar.xz) = d389b8069348ab96e6c61e6a837e0c58eaa4bf93a8594c32c109ee8044c8aeb9
-SHA512 (re2c-3.1.tar.xz) = 649c5e103f8012e2717a0c36af135601dfa0a090c3e400bbf466537e7038ad73bc9e0ed36c3717b7c3c785c24ad024d40c7c31998325a14caf4984c4f19cd998
-Size (re2c-3.1.tar.xz) = 1448624 bytes
+BLAKE2s (re2c-4.0.2.tar.xz) = 9f06ccf87213a0750ee6704c96c65ad445a57b1d67c26e8af78d751d09a5784c
+SHA512 (re2c-4.0.2.tar.xz) = e7342b1c41ea709cf348ac705f5c82ace1e43509212edae9f1ba458036842d68807cd6c07c175d10ed7b386dc9cd5cc7a4f2e104e1cbaa4c7a3a9ef82bc5f328
+Size (re2c-4.0.2.tar.xz) = 1802780 bytes
Home |
Main Index |
Thread Index |
Old Index