libxerces-c: fix CI build/test failures for apk + samples
authorAlexandru Ardelean <redacted>
Fri, 22 May 2026 04:41:30 +0000 (07:41 +0300)
committerAlexandru Ardelean <redacted>
Sun, 24 May 2026 12:57:48 +0000 (15:57 +0300)
commit68de1450cc5f97f8b73a81a760d4a8aebee4c18f
tree8b1ed2b445c1f14b25f0ee3abb8774fea557beab
parentded6d8cc676df950ef3f18e32be03133ab7a1d4b
libxerces-c: fix CI build/test failures for apk + samples

Two unrelated issues both fixed here so the package + its samples
sub-package land in CI green:

1. PKG_CPE_ID escaping.
   apk's ADB binary package format rejects both the backslash-escape
   and the percent-encoding variants of the previous CPE id:

     cpe:/a:apache:xerces-c\+\+     ERROR: info field 'tags' has invalid value
     cpe:/a:apache:xerces-c%2B%2B   ERROR: info field 'tags' has invalid value

   apk's tag value parser only accepts a restricted alphabet for ADB
   package format and neither '\' nor '%' make the cut. With xerces-c
   unable to build, downstream consumers (notably sumo) also fail at
   cmake configure time with "Failed to find XercesC".

   Drop the '++' suffix entirely and use cpe:/a:apache:xerces-c, which
   matches the higher-level Apache Xerces-C CPE entry. cve scanners
   that walked the more specific xerces-c++ entry will fall back to
   this one.

2. Generic version-check override for libxerces-c-samples.
   The samples sub-package ships upstream demo programs
   (CreateDOMDocument, DOMCount, DOMPrint, SAX2Count, ...) which do
   not accept --version / -v / -V and therefore fail the framework's
   "executable prints PKG_VERSION" probe, making the package overall
   report "Generic tests failed". Add a minimal test-version.sh that
   exits 0 so the version-probe is skipped and the remaining generic
   checks (executable, no hardcoded paths, stripped, linked libs)
   still run for every binary.

Signed-off-by: Alexandru Ardelean <redacted>
libs/libxerces-c/Makefile
libs/libxerces-c/test-version.sh [new file with mode: 0755]
git clone https://git.99rst.org/PROJECT