Repository navigation
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This draft introduces experimental OpenBSD support for the Firebird 5 GNU Make
build, targeting amd64 and i386. It uses a distinct OpenBSD platform configuration
instead of identifying the system as NetBSD.
Changes
companion-file mutexes backed by the existing SharedFileInfo abstraction.
symbol-ownership checks.
requests. Forced-write behavior is not disabled.
generic architecture identifiers from enabling native-layout wire encoding.
port documentation in
doc/README.openbsd.md.Existing OpenBSD installations
The author reports that Firebird 5 is running on two OpenBSD servers. Those
installations use an earlier, differently patched Firebird 5.0.3 build. They
provide operational experience, but do not establish that the implementation
in this PR has passed native build or runtime tests.
Validation
Local checks completed on Windows x64:
SockAddrTest.cpppassed in a standalone Boost.Testexecutable:
IPv6FamilyConversion,IPv4FamilyUnchanged,AuxiliaryPortLayouts, andTruncatedAuxiliaryPort.builds/posix/check-openbsd.shpassed.git diff --checkpassed.These checks do not constitute a full Firebird build. Native OpenBSD builds
and tests have not been completed for this patch. The new IPC implementation,
database operations, crash recovery and cross-platform networking still require
native validation. The Windows checks do not execute the OpenBSD-only tests.
Review notes
This is submitted as a draft for design review, not as a production-ready port.
Feedback is particularly welcome on:
diagnostic message number.
The current scope covers the GNU Make build. The top-level CMake build is not
covered. The native check script stages files under its disposable checkout;
it does not activate a service or replace an existing installation. This does
not provide CPU, memory or disk isolation from other workloads on the same host.
AI assistance
AI assistance was used to analyze the OpenBSD build failures and draft these
changes. The completed checks and remaining validation work are documented above.