android / android/ndk

[FR] Bionic support for module maps

Open
#1,161 16 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
No language data
Stars
2.3k
Forks
310
PR merge metrics
No merged PRs in 30d

Description

I recently tried building the llbuild C++ project on Android in the Termux app with the Swift package manager, which adds `-fmodules` by default. While compiling llbuild like this works on linux with glibc and macOS, it doesn't work on Android (with errors like [the size_t one explained in the clang docs](https://releases.llvm.org/9.0.0/tools/clang/docs/Modules.html#modularizing-a-platform)) or Windows, so I submitted a pull to remove that flag on Android for now, apple/swift-package-manager@00c7768a.

Are there any plans to get the Bionic headers working with that flag? If so, maybe this can be the tracking issue till it's in.

Contributor guide

Open the contributing guide

Research direction

Start with the Bionic headers and the linked Clang module documentation, then reproduce the llbuild C++ build on Android with -fmodules enabled. Done means the Bionic headers work with that flag without the reported size_t and related errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, cpp
Domain
build-system, compilers, operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.