By default, both mldsa-native and mlkem-native come with their local implementation of FIPS202.
When combining mldsa-native and mlkem-native this results in a lot of code duplication as the vast majority of the code is the same (just some top-level FIPS202 APIs differ - though considerably).
One way to fix this is to not use the default FIPS202, but supply a custom FIPS202 implementation that has no code duplication (via MLK_CONFIG_FIPS202_CUSTOM_HEADER/MLK_CONFIG_FIPS202X4_CUSTOM_HEADER).
However, I think we should make it easier to combine mldsa-native and mlkem-native using the default FIPS202.
I don't know yet how this should best be done, but I think this should be addressed as we approach a stable release of mldsa-native.
By default, both mldsa-native and mlkem-native come with their local implementation of FIPS202.
When combining mldsa-native and mlkem-native this results in a lot of code duplication as the vast majority of the code is the same (just some top-level FIPS202 APIs differ - though considerably).
One way to fix this is to not use the default FIPS202, but supply a custom FIPS202 implementation that has no code duplication (via
MLK_CONFIG_FIPS202_CUSTOM_HEADER/MLK_CONFIG_FIPS202X4_CUSTOM_HEADER).However, I think we should make it easier to combine mldsa-native and mlkem-native using the default FIPS202.
I don't know yet how this should best be done, but I think this should be addressed as we approach a stable release of mldsa-native.