-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[low priority] Integrate into Compiler Explorer #6
Comments
I wanna try this, but I haven't integrated to Compiler Explorer before. Any instructions that I can start with? |
Sure! Thanks for help! Note: We can do only 1st task from attach issue. OK?
PS: I will create PRs needed for optional26 after library renaming. |
Thanks! Will work on it soon. |
PR's created
@neatudarius can you review if I am missing something? Thanks! |
Sorry for late reply - can we push small patches to rename there to beman_iterator_interface? We should match the full name. Maybe we'll have multiple libraries for iterators in Beman. |
@changkhothuychung , left one comment on your PRs from compiler explorer repos. I have a WIP PR to make sure iterator_interfaces follows all Beman Standard rules: |
Left comments on PRs
@changkhothuychung , can you help updating and testing that PR? @camio may include a link to Compiler Explorer in his presenation from Meeting C++ Berlin (this week), if the deployment is table. Thanks! CC: @camio @RaduNichita |
I see that godbolt developers applied the fix on the PR and merged them. We'll way for the nightly sync. Thanks all! |
Couple of things going on:
The cmake --install package that we make only contains the following:
If I check the cmake logging, I do not see it creating config.hpp Now live -> https://godbolt.org/z/Yo4954GYW For the record, this is our (generated) script to build with cmake so you can reproduce:
Can send you the logging as well if needed |
We're mixing FILE_SET and target_include_directory, so we don't know to install the generated header file. Also, https://github.com/beman-project/iterator_interface/blob/d6efb25da89a628844bae590e3ceea7245a73bca/include/beman/iterator_interface/detail/stl_interfaces/config.hpp has feature checks, so the config won't describe a compiled artifact. This is, of course, why building everything consistently within a distro is a good idea, but it can be a subtle source of bugs for shipped binaries. |
I'm looking at a (slightly complicated) example https://github.com/kokkos/kokkos/blob/7ff4042fd2dc1d1fe6ae280179fc693ad6dac6ac/cmake/kokkos_install.cmake#L51 and they do it with the generated config header might be written to CMAKE_CURRENT_BINARY_DIR? |
Ok it's just this:
add to bottom of the root CMakeLists.txt |
Seems to work now https://godbolt.org/z/q4GWT51o6 Note that currently only the following compilers have headers and the lib file associated: https://conan.compiler-explorer.com/libraries_cpp.html?#beman_iterator_interface/main If you need a different specific compiler for this week let me know so I can manually build them, otherwise they will automatically build over the weekend. |
@partouf , thanks a lot for everything! It seems that gcc trunk and clang trunk work for x86_64 with Compiler Explorer! (https://godbolt.org/z/Kcq9bbeWW) It should be enough for this week. We'll revisit our build infrastructure / export type, and we'll come back if changes are required. Now we should be able to wait and test with CE deployments day by day. Entries are properly displayed right now. |
Thanks a lot everyone for your help! |
Integrate iterator_interface into Compiler Explorer
Check progress from bemanproject/optional#21
The text was updated successfully, but these errors were encountered: