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

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

Merged
merged 4 commits into from
Nov 29, 2023

Conversation

olivier-roussel
Copy link
Contributor

This PR adds a CMake find module for the QGLViewer used in SOFA.GUI.Qt.
The behavior here (already in place) is to look for an external package of QGLViewer and if not found, use the embeded code of QGLViewer (which is linked dynamically).
I may have missed something but it seems that QGLViewer does not provide CMake config files (neither from source, or in package managers such as APT, Conda and vcpkg). And as SOFA was not including a CMake module for it, there was no chance for it to be found externally.
Then, this should not break current behavior but just fix the possibility to use an external GLViewer package.


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).

@olivier-roussel olivier-roussel changed the title Add cmake module for QGLViewer [Sofa.GUI.Qt] Add cmake module for QGLViewer Nov 9, 2023
@olivier-roussel olivier-roussel added pr: fix Fix a bug pr: status to review To notify reviewers to review this pull-request labels Nov 9, 2023
@fredroy fredroy added pr: status wip Development in the pull-request is still in progress and removed pr: status to review To notify reviewers to review this pull-request labels Nov 22, 2023
@hugtalbot hugtalbot added the pr: backport todo This PR will be backported into the release preceeding its milestone. label Nov 22, 2023
@hugtalbot hugtalbot added this to the v23.12 milestone Nov 22, 2023
@olivier-roussel olivier-roussel removed the pr: status wip Development in the pull-request is still in progress label Nov 24, 2023
@olivier-roussel
Copy link
Contributor Author

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

1 similar comment
@olivier-roussel
Copy link
Contributor Author

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

@olivier-roussel olivier-roussel added the pr: status to review To notify reviewers to review this pull-request label Nov 27, 2023
Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>
@fredroy fredroy 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 29, 2023
@bakpaul bakpaul merged commit 0602271 into sofa-framework:master Nov 29, 2023
4 checks passed
bakpaul pushed a commit to bakpaul/sofa that referenced this pull request Nov 29, 2023
* 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>
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 bakpaul added pr: backport done This PR has been backported into the release before its milestone. and removed pr: backport todo This PR will be backported into the release preceeding its milestone. labels Feb 20, 2024
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: backport done This PR has been backported into the release before its milestone. 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.

4 participants