Is there a way to find out the compilation details of binary artifacts shipped with a package?

My particular use case concerns the FFTW library shipped with the FFTW.jl package, but my interest is general.

Investigating performance of a FFT-based signal processing pipeline implemented in c++, I’ve noticed a performance gain when linking against libfftw3f from FFTW.jl as opposed to linking against my custom-built library. Therefore, I’m curious how exactly the FFTW.jl’s version was compiled for a given platform.

I’ve searched the FFTW.jl repo for some clues, but to no avail. I assume it makes use of BinaryBuilder, but not sure how to proceed with the investigation.

Hence the question: is there a consistent way to get to this kind of details about shipped binaries?

The package providing the binary library is called FFTW_jll:

If you then go to the repository of FFTW_jll in the README you’ll find the link to the originating build_tarballs.jl which is the script used to compile the library and has the information you’re looking for.

Thanks a lot for help @giordano. The info was right in front of me.

Here is a brief summary for my own reference:

The right place to delve into Julia’s packages is https://github.com/JuliaPackaging. The recipes for BinaryBuilder-built binaries are found at https://github.com/JuliaPackaging/Yggdrasil.

Information relevant to my particular use case regarding FFTW.jl can be found at https://github.com/JuliaPackaging/Yggdrasil/tree/master/F/FFTW which is also referenced by the FFTW_jll binary wrapper - the actual package providing the libfftw3 binaries.