mORMot Has Always Been Cross-Platform and Cross-Compiler
From its inception, mORMot 2 was designed as a truly cross-platform and cross-compiler framework. It has long delivered excellent native support for Linux, macOS, and BSD via the Free Pascal Compiler (FPC), alongside full Windows support in Delphi.
The recent work on Delphi Linux/macOS targets builds on this foundation. A key addition is the new mormot.core.os.delphi.pas unit, which helps isolate and adapt OS-specific code for the Delphi LLVM-based compilers, using all needed fallback and conditional compilation to maximize compatibility with existing codebases.
In practice, you could just recompile any mORMot 2 project using Delphi to these new targets, and you should expect a similar set of features.
Important Note on Performance
Compatibility with legacy Delphi codebases has been prioritized over raw performance.
Unfortunately, the Delphi LLVM compilers (used for Linux and macOS targets) generate significantly slower code than FPC in many performance-critical sections of mORMot. Low-level benchmarks (e.g., tight loops involving in-memory JSON or data processing) show Delphi producing much less efficient assembly, with unnecessary stack operations and poorer optimization compared to FPC. You can get some insight about this problem at gist.github.com.
For production workloads where speed matters most, we continue to strongly recommend FPC on Linux. Delphi Linux/macOS support serves teams that need to maintain a single Delphi codebase across platforms, even if it means accepting a performance trade-off.
Current Status – A First Compatibility Attempt
This is an initial compatibility pass. Many core features (HTTP/REST servers, ORM, SOA, JSON processing, cryptography, etc.) now compile and function, but it is not as mature or optimized as the FPC path. The lack of inlined asm in Delphi is clearly a PITA to port our most optimized code. But for a client application, or any light/internal server, you could expect the performance to be "good enough".
We warmly welcome feedback, bug reports, and contributions from the community to improve stability and compatibility further. Test results, performance observations, and pull requests are highly appreciated. Tests and patches for macOS aarch64 are especially welcome.
Thank you to everyone who tested and contributed!








