This repository has two maintained implementation surfaces:
.NETlibraries and tools underlibs/ironconfig-dotnet/- native
C99code undernative/andlibs/ironcfg-c/
.NET SDK 8.0for the managed libraries and test projectsCMake 3.20+and a C compiler for the native treeOpenSSLdevelopment libraries when configuring builds that includelibs/ironcfg-c
dotnet restore libs/ironconfig-dotnet/IronConfig.sln
dotnet build libs/ironconfig-dotnet/IronConfig.sln -c Release --no-restore
dotnet test libs/ironconfig-dotnet/IronConfig.sln -c Release --no-buildThe native top-level build includes libs/ironcfg-c and therefore inherits its current OpenSSL dependency.
cmake -S native -B native/build
cmake --build native/build --config Release
ctest --test-dir native/build -C Release --output-on-failureOptional first-party hardening builds:
cmake -S native -B native/build-strict -DIRONFAMILY_STRICT_WARNINGS=ON
cmake --build native/build-strict --config Release
cmake -S native -B native/build-asan -DIRONFAMILY_ENABLE_SANITIZERS=ON
cmake --build native/build-asan --config Release
ctest --test-dir native/build-asan -C Release --output-on-failure- The canonical native direction is portable
C99. - The managed codebase currently remains the main host-tooling and reference surface.
.NETand native surfaces should be treated as separate contracts unless a specific parity gate proves equivalence.