Skip to content

Conversation

@lucjaulmes
Copy link
Contributor

#614 fixing #611 rebased on devel, and without changing include paths. (Does not require foreach anymore).

Creates some quirky layout of files but all headers are under $prefix/include and quest.h can be included as #include "quest.h" (which required updating some of the deprecated test paths which were trying to include quest/include/quest.h).

Example with verbose installing to /tmp/cmake:

-- Install configuration: "Debug"
-- Installing: /tmp/quest/bin/min_example
-- Set non-toolchain portion of runtime path of "/tmp/quest/bin/min_example" to "$ORIGIN/../lib64"
-- Installing: /tmp/quest/lib64/libQuEST-fp1+mt.so.4.0.0
-- Installing: /tmp/quest/lib64/libQuEST-fp1+mt.so.4
-- Set non-toolchain portion of runtime path of "/tmp/quest/lib64/libQuEST-fp1+mt.so.4.0.0" to "$ORIGIN/../lib64"
-- Installing: /tmp/quest/lib64/libQuEST-fp1+mt.so
-- Installing: /tmp/quest/lib64/cmake/QuEST/QuEST-fp1+mtConfig.cmake
-- Installing: /tmp/quest/lib64/cmake/QuEST/QuEST-fp1+mtConfigVersion.cmake
-- Installing: /tmp/quest/include/quest.h
-- Up-to-date: /tmp/quest/include/quest/include
-- Up-to-date: /tmp/quest/include/quest/include/calculations.h
-- Up-to-date: /tmp/quest/include/quest/include/channels.h
-- Up-to-date: /tmp/quest/include/quest/include/decoherence.h
-- Up-to-date: /tmp/quest/include/quest/include/environment.h
-- Up-to-date: /tmp/quest/include/quest/include/initialisations.h
-- Up-to-date: /tmp/quest/include/quest/include/matrices.h
-- Up-to-date: /tmp/quest/include/quest/include/modes.h
-- Up-to-date: /tmp/quest/include/quest/include/operations.h
-- Up-to-date: /tmp/quest/include/quest/include/paulis.h
-- Up-to-date: /tmp/quest/include/quest/include/precision.h
-- Up-to-date: /tmp/quest/include/quest/include/qureg.h
-- Up-to-date: /tmp/quest/include/quest/include/types.h
-- Up-to-date: /tmp/quest/include/quest/include/version.h
-- Up-to-date: /tmp/quest/include/quest/include/wrappers.h
-- Installing: /tmp/quest/include/quest/include/debug.h
-- Installing: /tmp/quest/include/quest/include/deprecated.h
-- Installing: /tmp/quest/lib64/cmake/QuEST/QuEST-fp1+mtTargets.cmake
-- Installing: /tmp/quest/lib64/cmake/QuEST/QuEST-fp1+mtTargets-debug.cmake

And without verbose naming, defines aren’t set in cmake files anymore but in quest.h directly:

-- Install configuration: "Debug"
-- Installing: /tmp/quest/bin/min_example
-- Set non-toolchain portion of runtime path of "/tmp/quest/bin/min_example" to "$ORIGIN/../lib64"
-- Installing: /tmp/quest/lib64/libQuEST.so.4.0.0
-- Installing: /tmp/quest/lib64/libQuEST.so.4
-- Set non-toolchain portion of runtime path of "/tmp/quest/lib64/libQuEST.so.4.0.0" to "$ORIGIN/../lib64"
-- Installing: /tmp/quest/lib64/libQuEST.so
-- Installing: /tmp/quest/lib64/cmake/QuEST/QuESTConfig.cmake
-- Installing: /tmp/quest/lib64/cmake/QuEST/QuESTConfigVersion.cmake
-- Installing: /tmp/quest/include/quest.h
-- Up-to-date: /tmp/quest/include/quest/include
-- Up-to-date: /tmp/quest/include/quest/include/calculations.h
-- Up-to-date: /tmp/quest/include/quest/include/channels.h
-- Up-to-date: /tmp/quest/include/quest/include/decoherence.h
-- Up-to-date: /tmp/quest/include/quest/include/environment.h
-- Up-to-date: /tmp/quest/include/quest/include/initialisations.h
-- Up-to-date: /tmp/quest/include/quest/include/matrices.h
-- Up-to-date: /tmp/quest/include/quest/include/modes.h
-- Up-to-date: /tmp/quest/include/quest/include/operations.h
-- Up-to-date: /tmp/quest/include/quest/include/paulis.h
-- Up-to-date: /tmp/quest/include/quest/include/precision.h
-- Up-to-date: /tmp/quest/include/quest/include/qureg.h
-- Up-to-date: /tmp/quest/include/quest/include/types.h
-- Up-to-date: /tmp/quest/include/quest/include/version.h
-- Up-to-date: /tmp/quest/include/quest/include/wrappers.h
-- Up-to-date: /tmp/quest/include/quest/include/debug.h
-- Up-to-date: /tmp/quest/include/quest/include/deprecated.h
-- Installing: /tmp/quest/lib64/cmake/QuEST/QuESTTargets.cmake
-- Installing: /tmp/quest/lib64/cmake/QuEST/QuESTTargets-debug.cmake

@otbrown
Copy link
Contributor

otbrown commented May 7, 2025

Thanks Luc! @TysonRayJones this looks good to me :)

@TysonRayJones
Copy link
Member

Brilliant, thanks very much! You raised fair points in the other PR - I hope my preferences about the include paths haven't resulted in something horribly non-standard! I accept full blame 😌

@TysonRayJones TysonRayJones merged commit 9be1dfd into QuEST-Kit:devel May 8, 2025
130 checks passed
@TysonRayJones
Copy link
Member

Updated the authorlist here 🎉

@TysonRayJones TysonRayJones mentioned this pull request May 8, 2025
TysonRayJones added a commit that referenced this pull request May 28, 2025
and fixing doxygen parsing of CMake configured header broken in #616
TysonRayJones added a commit that referenced this pull request May 28, 2025
Updates version references and fixes doxygen parsing of CMake configured header broken in #616
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants