Menu

SVN-Code Commit Log


Commit Date  
[r12996] by mikeaubury

Build: fix clean-checkout build; add UI_JSON to default targets

A fresh checkout could not be built. Four independent gaps:

1. incl/a4gl_incl_config.h was never generated. The 2026 configure.ac
rewrite dropped the AM_CONFIG_HEADER(incl/a4gl_incl_config.h) that the
old configure.in had (and that BUILD_MODERNIZATION/PLAN.md specified);
working trees only built because they still held a stale copy from the
previous build system. Restored via AC_CONFIG_HEADERS. Since $(DEFS) is
not plumbed into incl/Makefile-common, this header is the ONLY route by
which AC_DEFINE results reach C code.

autoheader alone is not sufficient: it emits templates only for probed
symbols and leaves the rest undefined, whereas the historical header
defined every symbol (0 or 1) so '#ifdef HAVE_X' was always true. 89
#ifdef sites depend on that. configure.ac therefore carries an AH_BOTTOM
block supplying 0-defaults for the 137 legacy symbols, so real values are
used where configure probes and the old contract holds everywhere else.

Also restored two checks the rewrite lost: pdflib.h (without it
lib/liblogical/pdf/process/pdf_barcode fails to compile -- its header
declares PDF-typed prototypes unconditionally) and libintl.h. And the
Informix ESQL/C version probe behind HAVE_IFX_IUS, lifted from the old
configure.in (parse 'esql -V' -> 450, define when >= 290); unlike the
old script an unparsable version warns rather than aborting configure.

Verified: all 137 symbols of the previously-used header are present and
the 19 that differ are unreferenced by C code, appear only in string
literals, or sit in dead branches.

2. lib/libui/ui_json/readJsonForm.c was compiled into libUI_JSON.so but
never versioned (committed in r12995), and it includes form_json.xs.h,
generated from form_json.x by xgen -- neither the .x nor a rule for it
existed. form_json.x is now versioned, ui_json/Makefile generates the
header following the common/dataio pattern, and the five xgen outputs
are svn:ignore'd like every other .xs.h in the tree.

3. libUI_JSON.so was not part of the default build: ui_json hung off
core.ui.xml, reachable only via 'make bootstrap'. UI_JSON is now in
ALL_PLUGINS with a rule in lib/Makefile ordered after PACKER_FORMXML and
UI_XML (it links their formjson.o and borrows their headers), plus a
clean target. No new external dependencies -- libjson.c is bundled.

4. node/baseProgs/runProgram.sh lacked svn:executable, so a clean checkout
got it non-executable and setuid_runner's execv() failed with EPERM,
preventing the web pipeline from launching any program.

Verified end to end: fresh checkout + ./configure && make builds clean, 61
plugins, libUI_JSON.so produced by the default target. Rebuilt working tree
passes all 17 regression checks (12 browser e2e, 3 protocol, 2 iarr-probe).

2026-08-12 08:47:18 Tree
[r12995] by mikeaubury

Angular web UI: JSON pipeline server, Angular app, e2e test suite

- lib/libui/ui_json/readJsonForm.c: compiled into libUI_JSON.so but never
versioned; a clean checkout could not link the driver.
- node/server-angular.js + package.json/package-lock.json: the Angular-era
Node backend (socket.io bridge between libUI_JSON and the browser).
- node/Aubit4GLWebAngular: the Angular application source. node_modules,
dist, .angular and build.log are svn:ignore'd -- a fresh checkout needs
'npm install && npx ng build' before the server has anything to serve.
- node/tools: protocol/e2e test harness (protocol-test, browser-e2e and the
capture/construct/update/iarr/addorder probes).
- node/baseProgs: applications.json plus the .4gl/.per sources for the
jsontest1, iarrtest and fcalltest programs. Compiled .4ae/.c/.ao/.json
outputs are left unversioned (regenerated by 4glpc / fcompile -json).

2026-08-11 17:34:50 Tree
[r12994] by mikeaubury

Claude enhanced fixups - fingers crossed...

2026-08-11 17:22:06 Tree
[r12993] by mikeaubury

refactor configure scripts

2026-05-29 13:41:06 Tree
[r12992] by mikeaubury

Add small program to fix broken LRFs

2026-04-24 09:21:53 Tree
[r12991] by mikeaubury

Logical report fixups - migrate to GTK3

2026-04-24 09:21:15 Tree
[r12990] by mikeaubury

Add empty lib/liblex/lex_spl/common.h (referenced by compile_spl.c)

2026-04-22 12:30:38 Tree
[r12989] by mikeaubury

Modernize build system: rewrite configure.in as configure.ac

- Replace 11,514-line configure.in with 382-line configure.ac plus m4/aubit_*.m4
- Drop legacy platforms (AIX/HPUX/Solaris/cygwin); target Linux/macOS/MinGW/FreeBSD
- Rewrite incl/Makefile-common.in (1639 -> 1283 lines), dispatch on AUBIT_HOST_OS
- Fix tools/project/mkproject (was using install prefix instead of source tree)
- Fix lib/liblogical/processor/Makefile (missing -lz on Linux)

Linux x86_64 build verified green end-to-end.
See BUILD_MODERNIZATION/{PLAN,LOG}.md for design and change log.

2026-04-22 12:29:25 Tree
[r12988] by stansoft

updated rpm spec

2025-12-10 15:16:26 Tree
[r12987] by mikeaubury

try to fix my_yyinput error

2025-12-09 14:57:14 Tree
Older >