1
0
mirror of https://github.com/open-simh/simh.git synced 2026-05-23 05:52:09 +00:00
Files
open-simh.simh/vcpkg.json
B. Scott Michel 59c55062f0 SCP: PCRE2 support.
Add PCRE2 support as an alternative to the original PCRE. PCRE2 is
actively maintained and has a cleaner API than its predecessor.

- Use a function interface around regular expressions to isolate and
  reduce the preprocessor #if/#endif forest. Abide by a single function
  declaration/implementation approach, vs. multiple function
  implentations within an #if/#endif forest.

- Clean up the code so that work isn't recreated or duplicated, such as
  compiling regexps.

Platform notes:

- cmake: PCRE2 is the default RegEx support. To revert to PCRE, add
  "-DPREFER_PCRE" to the cmake configuration command line.

- makefile: PCRE remains the default RegEx support out of respect for
  tradition (cue Chaim Topol singing "Tradition".) Enable PCRE2 by
  defining "USE_PCRE2=<some value>" from the make command line or shell
  environment.

- Visual Studio Projects: Untouched. Externally built libraries provide
  regular expression support residing in a specific place in the file
  system, which is outside the control of SIMH proper.

sim_defs.h:

- Change EXPECT::size from int32 to size_t for increased
  cross-platform/64-bit compatibility (i.e., array indices and offsets
  should be size_t, where practicable.)

- Add typedefs for EXPECT regex support independence: sim_regex_t,
  sim_re_capture_t.

- Add regular expression context to EXPTAB that maintains state when
  processing the captured matches, making the function interface clean.
  Tracks intermediate state while processing captured matches.
2026-05-03 14:28:36 -04:00

16 lines
303 B
JSON

{
"name": "simh",
"version-string": "4.1.0",
"description": [
"SIMH: The historical computer architecture simulation suite."
],
"dependencies": [
"pthreads",
"pcre",
"pcre2",
"libpng",
"sdl2",
"sdl2-ttf"
]
}