Skip to content

Conversation

@jvdp1
Copy link
Member

@jvdp1 jvdp1 commented Oct 24, 2025

Based on #1031, #1033

Here is a proposition to modularize stdlib_bitsets in cmake.
Furthermore, compiling stdlib_bitsets can be now set off with cmake

\cc: @eduardz1 @jalvesz @perazz

@jvdp1 jvdp1 requested review from jalvesz and perazz October 24, 2025 10:35
@jalvesz
Copy link
Contributor

jalvesz commented Oct 24, 2025

I would have say to better rely on C-preprocessing and passing a flag definition -DWITH_BITSET instead of fypp prepreprocessing. That way the same source files can be processed by different compilers generating downstream different binaries with the appropriate flags.

@jvdp1
Copy link
Member Author

jvdp1 commented Oct 24, 2025

I would have say to better rely on C-preprocessing and passing a flag definition -DWITH_BITSET instead of fypp prepreprocessing. That way the same source files can be processed by different compilers generating downstream different binaries with the appropriate flags.

I agree, but I could not find a backward-compatible approach with C-preprocessing.
To be backward-compatible, the user that does not provide a flag definition will compile the whole library.
With fypp, we can set the flag WITH_BITSET to true per default, and the user does not need to define the flag (except if the user does not want to compile the module bitsets).

However, with cpp, something like #ifdef _WITH_BITSETS will require that the user provides the flag to compile the module bitsets.
I though about the cpp directive #ifndef _WITHOUT_BITSETS, but I did not find it elegant and counter-intuitive.

Any other suggestions?

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.

2 participants