Top Level Namespace

Defined Under Namespace

Modules: Makiri

Constant Summary collapse

EXT_DIR =

extconf for the Makiri C extension.

Build strategy (see design_doc §12):

1. Build vendored Lexbor (unpatched) via cmake into vendor/lexbor/build,
   install headers + a static archive into vendor/lexbor/dist.
2. Compile ext/makiri/**/*.c with rake-compiler, linking against the
   static Lexbor archive only — no system libxml2/libxslt.

Security note: the C extension is built with -D_FORTIFY_SOURCE=2, -fstack-protector-strong, and -Wformat -Wformat-security. -O2 is kept (not lowered) so fortify checks remain active.

__dir__
GEM_ROOT =
File.expand_path("../..", EXT_DIR)
LEXBOR_SRC =
File.join(GEM_ROOT, "vendor", "lexbor")
LEXBOR_BLD =
File.join(LEXBOR_SRC, "build")
LEXBOR_DST =
File.join(LEXBOR_SRC, "dist")