Skip to content

MacOS #3

Open
Open

Description

@mattsva

testing the library on macos, same as #2 but for Macos

This is a subissue from #1

Activity

  1. mattsva commented on Oct 11, 2026

    @mattsva
    ContributorAuthor

    Status update — the library now builds and passes its full test suite on macOS in CI, which is more than before but not the real-hardware check this issue asks for.

    Since the last activity on this issue, the following macOS coverage landed on main (all via PRs #13–#17, merged):

    • test-platforms (macos-latest) in .github/workflows/make_test.yml runs the CMake build and the whole ctest suite on macOS — 11/11 tests.
    • A genuine macOS/Windows ABI bug was fixed on the way: mnet_jsonfv() used to mix manual va_arg() with vsnprintf(va_list) on the same va_list, which corrupts the list on those platforms and crashed the next conversion (issue Fix stack over-read in mnet_jsonf() integer conversions #15). Every argument is now consumed exactly once.
    • Hardening flags are applied correctly per platform: -fstack-protector-strong and -D_FORTIFY_SOURCE=2 (optimized builds) on Clang, while -Wl,-z,relro,-z,now is correctly restricted to ELF and skipped on Mach-O.
    • The macOS release workflow (release.yml) builds libmnet-macos.dylib.

    What is still NOT covered, and why this stays open: CI proves the code compiles and the self-tests pass under AppleClang on a GitHub runner. It does not cover a real Mac install — running the examples by hand, linking the dylib from an external consumer project (including code signing / Gatekeeper behaviour), or Apple silicon vs Intel differences beyond the runner's arch. Anyone with a Mac: git clone https://github.com/mnet-web/mnet && cd mnet && mkdir build && cd build && cmake .. && cmake --build . && ctest — then run example_http_server and browse to the port it prints. Please report what you find here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    accessibilityBarrier affecting people with disabilitiesgood first issueGood for newcomershelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions