-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Add TinyAD #24655
base: master
Are you sure you want to change the base?
Add TinyAD #24655
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
The project relies on OpenMP and warns when it is unavailable. The package would really benefit from #22360. For now you will have to export the appropriate compiler and linker flags for each separate compiler to make sure it's enabled and linked against by the consuming projects. |
recipes/tinyad/all/conanfile.py
Outdated
|
||
def generate(self): | ||
deps = CMakeDeps(self) | ||
deps.generate() | ||
|
||
tc = CMakeToolchain(self) | ||
tc.generate() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
def generate(self): | |
deps = CMakeDeps(self) | |
deps.generate() | |
tc = CMakeToolchain(self) | |
tc.generate() |
The recipe is not building anything so these are not needed.
recipes/tinyad/all/conanfile.py
Outdated
self.cpp_info.set_property("cmake_target_name", "TinyAD") | ||
self.cpp_info.components["tinyad"].set_property("cmake_target_name", "TinyAD::TinyAD") | ||
|
||
self.cpp_info.components["tinyad"].bindirs = [] | ||
self.cpp_info.components["tinyad"].libdirs = [] | ||
self.cpp_info.components["tinyad"].includedirs = [os.path.join(self.package_folder, "include")] | ||
self.cpp_info.components["tinyad"].requires = ["eigen::eigen"] | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
self.cpp_info.set_property("cmake_target_name", "TinyAD") | |
self.cpp_info.components["tinyad"].set_property("cmake_target_name", "TinyAD::TinyAD") | |
self.cpp_info.components["tinyad"].bindirs = [] | |
self.cpp_info.components["tinyad"].libdirs = [] | |
self.cpp_info.components["tinyad"].includedirs = [os.path.join(self.package_folder, "include")] | |
self.cpp_info.components["tinyad"].requires = ["eigen::eigen"] | |
self.cpp_info.set_property("cmake_target_name", "TinyAD") | |
self.cpp_info.bindirs = [] | |
self.cpp_info.libdirs = [] | |
if is_msvc(self): | |
# https://github.com/patr-schm/TinyAD/blob/29417031c185b6dc27b6d4b684550d844459b735/CMakeLists.txt#L35 | |
self.cpp_info.cxxflags.append("/bigobj") |
Creating a component is not really beneficial in any way.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should also add /bigobj
to self.cpp_info.cxxflags
for MSVC to match the CMake config in the project.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The cmake_target_name should be TinyAD alone, as that is the one used in the upstream CMake.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Correct. I adjusted my adjusted change accordingly.
This comment has been minimized.
This comment has been minimized.
1 similar comment
This comment has been minimized.
This comment has been minimized.
Is the CI not working? |
@jjcasmar we're under maintenance, the service should be available again soon, thanks for your patience :) |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Conan v1 pipeline ❌Failure in build 10 (
Note: To save resources, CI tries to finish as soon as an error is found. For this reason you might find that not all the references have been launched or not all the configurations for a given reference. Also, take into account that we cannot guarantee the order of execution as it depends on CI workload and workers availability. Conan v2 pipeline ❌
The v2 pipeline failed. Please, review the errors and note this is required for pull requests to be merged. In case this recipe is still not ported to Conan 2.x, please, ping Failure in build 10 (
Note: To save resources, CI tries to finish as soon as an error is found. For this reason you might find that not all the references have been launched or not all the configurations for a given reference. Also, take into account that we cannot guarantee the order of execution as it depends on CI workload and workers availability. |
Any update on this? |
Summary
Changes to recipe: tinyad/cci.20240718
Motivation
TinyAD is a library for automatic differentiation, presented at Eurographics Symposium on Geometry Processing 2022
Details
Add the library