Skip to content
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

[LinearAlgera, Core] Fix linking with LTO on MacOS/Clang #4293

Merged
merged 1 commit into from
Nov 22, 2023

Conversation

fredroy
Copy link
Contributor

@fredroy fredroy commented Nov 15, 2023

Apparently clang-mac is very picky about location of the symbols with LTO enabled, and this fact could expose some problem for explicit instanciations (typos, wrong location)


By submitting this pull request, I acknowledge that
I have read, understand, and agree SOFA Developer Certificate of Origin (DCO).


Reviewers will merge this pull-request only if

  • it builds with SUCCESS for all platforms on the CI.
  • it does not generate new warnings.
  • it does not generate new unit test failures.
  • it does not generate new scene test failures.
  • it does not break API compatibility.
  • it is more than 1 week old (or has fast-merge label).

@fredroy fredroy added pr: fix Fix a bug pr: fast merge Minor change that can be merged without waiting for the 7 review days pr: status to review To notify reviewers to review this pull-request labels Nov 15, 2023
@alxbilger
Copy link
Contributor

[ci-build][with-all-tests]

@hugtalbot hugtalbot added pr: status ready Approved a pull-request, ready to be squashed and removed pr: status to review To notify reviewers to review this pull-request labels Nov 16, 2023
@alxbilger alxbilger merged commit b422d39 into sofa-framework:master Nov 22, 2023
8 checks passed
@hugtalbot hugtalbot added this to the v23.12 milestone Nov 29, 2023
bakpaul pushed a commit to bakpaul/sofa that referenced this pull request Nov 29, 2023
VannesteFelix pushed a commit to VannesteFelix/sofa that referenced this pull request Dec 18, 2023
hugtalbot added a commit that referenced this pull request Dec 20, 2023
* Added projective and lagrangian suffix

* Reported changes to Cuda plugin

* Modify rest of the code to avoid warning from compatibility layer

* Add compatibility layer for deprecated header in CUDA

* add alias for compatibility layer in scene construction

* Report name modification to all scenes

* Revert Compat modification...

* [LinearAlgera, Core] Fix linking with LTO on MacOS/Clang (#4293)

Fix linking with LTO on macos

* [LinearSolver] Remove CSparse-based linear solvers (#4258)

* [LinearSolver.Direct] Remove CSparse based solvers

* Remove csparse extlib

* Fetchable CSparseSolvers plugin

* Remove references of SparseLUSolver

* Remove references to SparseCholeskySolver

* Remove csparse

* Try to fix on Linux

* Update the compat

* [LinearSolver.Direct] Remove CSparse based solvers

* Fix direct solver

* [GUI.Qt] Minor single-line cleaning (#4308)

Co-authored-by: erik pernod <erik.pernod@gmail.com>

* [Sofa.GUI.Qt] Add cmake module for QGLViewer (#4290)

* Add cmake module for QGLViewer

* Support library name for apt packages

* Fix qglviewer cmake finder module to first seach for a config cmake file.

* Update cmake/Modules/FindQGLViewer.cmake

Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>

---------

Co-authored-by: Frederick Roy <fredroy@users.noreply.github.com>
Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>

* [MultiThreading] Avoid Static Initialization Order Fiasco (#4307)

* [Core] Minor clean of DefaultAnimationLoop  (#4314)

* Remove unlogical use of visitor

* Delete unused methods

* [LinearSystem] Speedup computation of Jacobian matrices  (#4317)

* [LinearSystem] Speedup computation of Jacobian matrices in case both mstates are the same

* minor reformat to align calls to computeJacobiansFrom

* [SofaCUDA] FIX compilation SofaCUDA along with SparseGrid with Cuda12 (#4319)

* FIX compilation SofaCUDA along with SparseGrid with Cuda12

* Use a multiplication instead

* [Common] Add message to make the fetch mechanism less hidden (#4310)

* Add message to make it more clear

* slight modifications to be even more clear and add an error the dependency cannot be met

* [Collections] Remove reference to non-existing SofaSimulation (#4320)

remove ref to non-existent sofasimu

Co-authored-by: Paul Baksic <30337881+bakpaul@users.noreply.github.com>

* Remove repeating preffix from projective constraints

* Moved alias to original header

* Changed deprecation date

* add component change entry

* Change name following discussion with Hugo

* Change remaining scene with FixedConstraint

* remove last occurences in py files

* Changed the message display of sceneCheckUsingAlias when aliased component is in component change

* Fix factory

* Add alias creation when object in componentRenamed in factory

* Remove precedently added aliases

---------

Co-authored-by: Frederick Roy <fredroy@users.noreply.github.com>
Co-authored-by: Alex Bilger <alxbilger@users.noreply.github.com>
Co-authored-by: erik pernod <erik.pernod@gmail.com>
Co-authored-by: Olivier Roussel <olivier.roussel@inria.fr>
Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>
fredroy added a commit to fredroy/sofa that referenced this pull request Dec 21, 2023
)

* Added projective and lagrangian suffix

* Reported changes to Cuda plugin

* Modify rest of the code to avoid warning from compatibility layer

* Add compatibility layer for deprecated header in CUDA

* add alias for compatibility layer in scene construction

* Report name modification to all scenes

* Revert Compat modification...

* [LinearAlgera, Core] Fix linking with LTO on MacOS/Clang (sofa-framework#4293)

Fix linking with LTO on macos

* [LinearSolver] Remove CSparse-based linear solvers (sofa-framework#4258)

* [LinearSolver.Direct] Remove CSparse based solvers

* Remove csparse extlib

* Fetchable CSparseSolvers plugin

* Remove references of SparseLUSolver

* Remove references to SparseCholeskySolver

* Remove csparse

* Try to fix on Linux

* Update the compat

* [LinearSolver.Direct] Remove CSparse based solvers

* Fix direct solver

* [GUI.Qt] Minor single-line cleaning (sofa-framework#4308)

Co-authored-by: erik pernod <erik.pernod@gmail.com>

* [Sofa.GUI.Qt] Add cmake module for QGLViewer (sofa-framework#4290)

* Add cmake module for QGLViewer

* Support library name for apt packages

* Fix qglviewer cmake finder module to first seach for a config cmake file.

* Update cmake/Modules/FindQGLViewer.cmake

Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>

---------

Co-authored-by: Frederick Roy <fredroy@users.noreply.github.com>
Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>

* [MultiThreading] Avoid Static Initialization Order Fiasco (sofa-framework#4307)

* [Core] Minor clean of DefaultAnimationLoop  (sofa-framework#4314)

* Remove unlogical use of visitor

* Delete unused methods

* [LinearSystem] Speedup computation of Jacobian matrices  (sofa-framework#4317)

* [LinearSystem] Speedup computation of Jacobian matrices in case both mstates are the same

* minor reformat to align calls to computeJacobiansFrom

* [SofaCUDA] FIX compilation SofaCUDA along with SparseGrid with Cuda12 (sofa-framework#4319)

* FIX compilation SofaCUDA along with SparseGrid with Cuda12

* Use a multiplication instead

* [Common] Add message to make the fetch mechanism less hidden (sofa-framework#4310)

* Add message to make it more clear

* slight modifications to be even more clear and add an error the dependency cannot be met

* [Collections] Remove reference to non-existing SofaSimulation (sofa-framework#4320)

remove ref to non-existent sofasimu

Co-authored-by: Paul Baksic <30337881+bakpaul@users.noreply.github.com>

* Remove repeating preffix from projective constraints

* Moved alias to original header

* Changed deprecation date

* add component change entry

* Change name following discussion with Hugo

* Change remaining scene with FixedConstraint

* remove last occurences in py files

* Changed the message display of sceneCheckUsingAlias when aliased component is in component change

* Fix factory

* Add alias creation when object in componentRenamed in factory

* Remove precedently added aliases

---------

Co-authored-by: Frederick Roy <fredroy@users.noreply.github.com>
Co-authored-by: Alex Bilger <alxbilger@users.noreply.github.com>
Co-authored-by: erik pernod <erik.pernod@gmail.com>
Co-authored-by: Olivier Roussel <olivier.roussel@inria.fr>
Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>
hugtalbot added a commit to hugtalbot/sofa that referenced this pull request Jan 16, 2024
)

* Added projective and lagrangian suffix

* Reported changes to Cuda plugin

* Modify rest of the code to avoid warning from compatibility layer

* Add compatibility layer for deprecated header in CUDA

* add alias for compatibility layer in scene construction

* Report name modification to all scenes

* Revert Compat modification...

* [LinearAlgera, Core] Fix linking with LTO on MacOS/Clang (sofa-framework#4293)

Fix linking with LTO on macos

* [LinearSolver] Remove CSparse-based linear solvers (sofa-framework#4258)

* [LinearSolver.Direct] Remove CSparse based solvers

* Remove csparse extlib

* Fetchable CSparseSolvers plugin

* Remove references of SparseLUSolver

* Remove references to SparseCholeskySolver

* Remove csparse

* Try to fix on Linux

* Update the compat

* [LinearSolver.Direct] Remove CSparse based solvers

* Fix direct solver

* [GUI.Qt] Minor single-line cleaning (sofa-framework#4308)

Co-authored-by: erik pernod <erik.pernod@gmail.com>

* [Sofa.GUI.Qt] Add cmake module for QGLViewer (sofa-framework#4290)

* Add cmake module for QGLViewer

* Support library name for apt packages

* Fix qglviewer cmake finder module to first seach for a config cmake file.

* Update cmake/Modules/FindQGLViewer.cmake

Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>

---------

Co-authored-by: Frederick Roy <fredroy@users.noreply.github.com>
Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>

* [MultiThreading] Avoid Static Initialization Order Fiasco (sofa-framework#4307)

* [Core] Minor clean of DefaultAnimationLoop  (sofa-framework#4314)

* Remove unlogical use of visitor

* Delete unused methods

* [LinearSystem] Speedup computation of Jacobian matrices  (sofa-framework#4317)

* [LinearSystem] Speedup computation of Jacobian matrices in case both mstates are the same

* minor reformat to align calls to computeJacobiansFrom

* [SofaCUDA] FIX compilation SofaCUDA along with SparseGrid with Cuda12 (sofa-framework#4319)

* FIX compilation SofaCUDA along with SparseGrid with Cuda12

* Use a multiplication instead

* [Common] Add message to make the fetch mechanism less hidden (sofa-framework#4310)

* Add message to make it more clear

* slight modifications to be even more clear and add an error the dependency cannot be met

* [Collections] Remove reference to non-existing SofaSimulation (sofa-framework#4320)

remove ref to non-existent sofasimu

Co-authored-by: Paul Baksic <30337881+bakpaul@users.noreply.github.com>

* Remove repeating preffix from projective constraints

* Moved alias to original header

* Changed deprecation date

* add component change entry

* Change name following discussion with Hugo

* Change remaining scene with FixedConstraint

* remove last occurences in py files

* Changed the message display of sceneCheckUsingAlias when aliased component is in component change

* Fix factory

* Add alias creation when object in componentRenamed in factory

* Remove precedently added aliases

---------

Co-authored-by: Frederick Roy <fredroy@users.noreply.github.com>
Co-authored-by: Alex Bilger <alxbilger@users.noreply.github.com>
Co-authored-by: erik pernod <erik.pernod@gmail.com>
Co-authored-by: Olivier Roussel <olivier.roussel@inria.fr>
Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>
bakpaul added a commit to bakpaul/sofa that referenced this pull request Feb 23, 2024
)

* Added projective and lagrangian suffix

* Reported changes to Cuda plugin

* Modify rest of the code to avoid warning from compatibility layer

* Add compatibility layer for deprecated header in CUDA

* add alias for compatibility layer in scene construction

* Report name modification to all scenes

* Revert Compat modification...

* [LinearAlgera, Core] Fix linking with LTO on MacOS/Clang (sofa-framework#4293)

Fix linking with LTO on macos

* [LinearSolver] Remove CSparse-based linear solvers (sofa-framework#4258)

* [LinearSolver.Direct] Remove CSparse based solvers

* Remove csparse extlib

* Fetchable CSparseSolvers plugin

* Remove references of SparseLUSolver

* Remove references to SparseCholeskySolver

* Remove csparse

* Try to fix on Linux

* Update the compat

* [LinearSolver.Direct] Remove CSparse based solvers

* Fix direct solver

* [GUI.Qt] Minor single-line cleaning (sofa-framework#4308)

Co-authored-by: erik pernod <erik.pernod@gmail.com>

* [Sofa.GUI.Qt] Add cmake module for QGLViewer (sofa-framework#4290)

* Add cmake module for QGLViewer

* Support library name for apt packages

* Fix qglviewer cmake finder module to first seach for a config cmake file.

* Update cmake/Modules/FindQGLViewer.cmake

Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>

---------

Co-authored-by: Frederick Roy <fredroy@users.noreply.github.com>
Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>

* [MultiThreading] Avoid Static Initialization Order Fiasco (sofa-framework#4307)

* [Core] Minor clean of DefaultAnimationLoop  (sofa-framework#4314)

* Remove unlogical use of visitor

* Delete unused methods

* [LinearSystem] Speedup computation of Jacobian matrices  (sofa-framework#4317)

* [LinearSystem] Speedup computation of Jacobian matrices in case both mstates are the same

* minor reformat to align calls to computeJacobiansFrom

* [SofaCUDA] FIX compilation SofaCUDA along with SparseGrid with Cuda12 (sofa-framework#4319)

* FIX compilation SofaCUDA along with SparseGrid with Cuda12

* Use a multiplication instead

* [Common] Add message to make the fetch mechanism less hidden (sofa-framework#4310)

* Add message to make it more clear

* slight modifications to be even more clear and add an error the dependency cannot be met

* [Collections] Remove reference to non-existing SofaSimulation (sofa-framework#4320)

remove ref to non-existent sofasimu

Co-authored-by: Paul Baksic <30337881+bakpaul@users.noreply.github.com>

* Remove repeating preffix from projective constraints

* Moved alias to original header

* Changed deprecation date

* add component change entry

* Change name following discussion with Hugo

* Change remaining scene with FixedConstraint

* remove last occurences in py files

* Changed the message display of sceneCheckUsingAlias when aliased component is in component change

* Fix factory

* Add alias creation when object in componentRenamed in factory

* Remove precedently added aliases

---------

Co-authored-by: Frederick Roy <fredroy@users.noreply.github.com>
Co-authored-by: Alex Bilger <alxbilger@users.noreply.github.com>
Co-authored-by: erik pernod <erik.pernod@gmail.com>
Co-authored-by: Olivier Roussel <olivier.roussel@inria.fr>
Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr: fast merge Minor change that can be merged without waiting for the 7 review days pr: fix Fix a bug pr: status ready Approved a pull-request, ready to be squashed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants