Add full Markdown documentation set

This commit is contained in:
root
2026-02-26 07:49:08 +01:00
parent faf45eed1e
commit 984870f510
10 changed files with 618 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
# .NET 4.0 Amalgamation
Legacy .NET 4.0 consumers should use the amalgamated source model.
## Files
- `AmalgamationTool/DynamORM.Amalgamation.cs`: merged source file.
- `DynamORM.Net40.csproj`: net40 build project that compiles the amalgamation output.
## Regenerate Amalgamation
The amalgamation file must be regenerated after library source changes.
Current workflow in this repository:
1. Build or run `AmalgamationTool` (or use an equivalent merge script).
2. Merge all files from `DynamORM/` into `AmalgamationTool/DynamORM.Amalgamation.cs`.
3. Build `DynamORM.Net40.csproj`.
## Build in Mono Container
```bash
docker run --rm -v "$PWD":/src -w /src mono:latest \
bash -lc "msbuild /t:Build /p:Configuration=Release DynamORM.Net40.csproj"
```
Expected output artifact:
- `bin/Release/net40/DynamORM.Net40.dll`
## Build with .NET SDK Container
```bash
docker run --rm -v "$PWD":/src -w /src mcr.microsoft.com/dotnet/sdk:10.0-preview \
dotnet build DynamORM.Net40.csproj -c Release
```
## Important Constraint
Do not force net40 into the main multi-target `DynamORM/DynamORM.csproj` for modern workflows.
Keep net40 compatibility validated through the dedicated amalgamation project so legacy consumers can embed the single-file source without destabilizing primary targets.