Skip to content

Build: portability fixes for non-Linux/non-MSVC builds#46

Open
matteius wants to merge 1 commit intoXilinx:masterfrom
opensensor:feature/portability-fixes
Open

Build: portability fixes for non-Linux/non-MSVC builds#46
matteius wants to merge 1 commit intoXilinx:masterfrom
opensensor:feature/portability-fixes

Conversation

@matteius
Copy link
Copy Markdown

Summary

Three small portability fixes that let bootgen compile on macOS and against modern OpenSSL on Windows:

  • cdo-alloc.c, cdo-npi.c: drop #include <malloc.h>. malloc / free are already available via <stdlib.h> on POSIX, and <malloc.h> is glibc-specific (absent on macOS / BSD).
  • main.cpp: drop the #include "openssl/ms/applink.c" that was guarded by _WIN32. applink.c is for legacy MSVC link compatibility and is not present in modern OpenSSL distributions; the include breaks Windows builds against OpenSSL 3.x without providing any value on MinGW or recent MSVC + vcpkg builds.

Net diff: 3 files, 3 insertions(+), 3 deletions(-).

Context

We hit these while consuming bootgen as a submodule via mlir-aie's pinned tree on a non-Linux developer machine. Happy to split into three commits if preferred.

Test plan

  • Builds on Linux (glibc) — unchanged behavior, <stdlib.h> already provides malloc/free.
  • Builds on macOS (Apple Clang) — the original motivation.
  • Builds on Windows + OpenSSL 3.x (MinGW or vcpkg) — applink.c no longer required.

- cdo-alloc.c, cdo-npi.c: drop <malloc.h> include.  malloc/free
  are already available through <stdlib.h> on POSIX, and
  <malloc.h> is glibc-specific (absent on macOS / BSD).
- main.cpp: drop the OpenSSL `applink.c` include that was guarded
  by _WIN32.  applink.c is for MSVC link compatibility and is
  not present in modern OpenSSL distributions; the include
  breaks Windows builds against OpenSSL 3.x without providing
  any value on MinGW or recent MSVC + vcpkg builds.

Surface: clean cross-platform compile of the bootgen sources
that mlir-aie consumes via its submodule pin.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant