diff --git a/misc/quantum++/Makefile b/misc/quantum++/Makefile index dd1387565e01..a5551546227b 100644 --- a/misc/quantum++/Makefile +++ b/misc/quantum++/Makefile @@ -1,33 +1,38 @@ PORTNAME= quantum++ DISTVERSIONPREFIX= v -DISTVERSION= 6.0 +DISTVERSION= 7.0.0 CATEGORIES= misc devel MAINTAINER= yuri@FreeBSD.org COMMENT= C++ header-only general purpose quantum computing library WWW= https://github.com/softwareQinc/qpp LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE.txt TEST_DEPENDS= googletest>0:devel/googletest USES= cmake:testing compiler:c++17-lang eigen:3,build,run localbase:ldflags USE_GITHUB= yes GH_ACCOUNT= softwareQinc GH_PROJECT= qpp +CMAKE_TESTING_ON= QPP_ENABLE_TESTING CMAKE_TESTING_TARGET= unit_tests +CXXFLAGS= -I${LOCALBASE}/include/eigen3 + NO_BUILD= yes NO_ARCH= yes post-test: # run tests @${BUILD_WRKSRC}/unit_tests/unit_tests # tests as of 6.0: # [==========] 457 tests from 325 test suites ran. (1585 ms total) # [ PASSED ] 457 tests. +# tests as of 7.0: fail to compile, see https://github.com/softwareQinc/qpp/issues/196 + .include diff --git a/misc/quantum++/distinfo b/misc/quantum++/distinfo index 1d3b97aef1da..74fc8150312d 100644 --- a/misc/quantum++/distinfo +++ b/misc/quantum++/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1762708806 -SHA256 (softwareQinc-qpp-v6.0_GH0.tar.gz) = cdd6acf287b2f2dd124120ef2aba85660eee9482f5484dbd229c93b53a7d8a54 -SIZE (softwareQinc-qpp-v6.0_GH0.tar.gz) = 4717610 +TIMESTAMP = 1773560002 +SHA256 (softwareQinc-qpp-v7.0.0_GH0.tar.gz) = 2550dc30cdf38c9390a34da338f0be7b8fa3049049ec75df724dc78c83c08bb6 +SIZE (softwareQinc-qpp-v7.0.0_GH0.tar.gz) = 4762584 diff --git a/misc/quantum++/files/patch-unit__tests_CMakeLists.txt b/misc/quantum++/files/patch-unit__tests_CMakeLists.txt index 0b31beee6b20..8c9e956eed1a 100644 --- a/misc/quantum++/files/patch-unit__tests_CMakeLists.txt +++ b/misc/quantum++/files/patch-unit__tests_CMakeLists.txt @@ -1,11 +1,35 @@ -- workaround for https://github.com/softwareQinc/qpp/issues/171 ---- unit_tests/CMakeLists.txt.orig 2024-03-04 21:51:04 UTC +--- unit_tests/CMakeLists.txt.orig 2026-03-14 20:42:02 UTC +++ unit_tests/CMakeLists.txt -@@ -40,5 +40,5 @@ endforeach() - target_sources(${TARGET_NAME} PUBLIC ${file}) - endforeach() +@@ -1,13 +1,6 @@ set(TARGET_NAME "unit_tests") + set(TARGET_NAME "unit_tests") --target_link_libraries(${TARGET_NAME} PUBLIC ${QPP_LINK_DEPS} gmock libqpp) +-include(FetchContent) +-message(STATUS "Fetching GoogleTest...") +-FetchContent_Declare( +- googletest +- GIT_REPOSITORY https://github.com/google/googletest.git +- GIT_TAG main +- GIT_PROGRESS TRUE +- GIT_SHALLOW TRUE) ++find_package(GTest REQUIRED) + + if(MSVC) + # Ensure Google Test uses the Shared C Runtime (/MD or /MDd) to prevent linker +@@ -20,8 +13,6 @@ endif() + CACHE BOOL "Force Google Test to use shared C Runtime on MSVC" FORCE) + endif() + +-FetchContent_MakeAvailable(googletest) +- + file(GLOB_RECURSE TEST_SOURCES "tests/*.cpp" "tests/MATLAB/*.cpp" + "tests/classes/*.cpp" "tests/qasm/*.cpp") + +@@ -44,5 +35,5 @@ target_link_libraries(${TARGET_NAME} PRIVATE libqpp_in + RUNTIME_OUTPUT_DIRECTORY_RELEASE "${CMAKE_BINARY_DIR}/unit_tests") + target_link_libraries(${TARGET_NAME} PRIVATE libqpp_internal GTest::gmock) + +-include(GoogleTest) +target_link_libraries(${TARGET_NAME} PUBLIC ${QPP_LINK_DEPS} gtest gmock libqpp) gtest_discover_tests(${TARGET_NAME}) diff --git a/misc/quantum++/pkg-plist b/misc/quantum++/pkg-plist index aee276d602b3..25218f516f99 100644 --- a/misc/quantum++/pkg-plist +++ b/misc/quantum++/pkg-plist @@ -1,71 +1,84 @@ include/qpp/qasmtools/ast/ast.hpp include/qpp/qasmtools/ast/base.hpp include/qpp/qasmtools/ast/cloneable.hpp include/qpp/qasmtools/ast/decl.hpp include/qpp/qasmtools/ast/expr.hpp include/qpp/qasmtools/ast/program.hpp include/qpp/qasmtools/ast/replacer.hpp include/qpp/qasmtools/ast/semantic.hpp include/qpp/qasmtools/ast/stmt.hpp include/qpp/qasmtools/ast/traversal.hpp include/qpp/qasmtools/ast/var.hpp include/qpp/qasmtools/ast/visitor.hpp include/qpp/qasmtools/parser/lexer.hpp include/qpp/qasmtools/parser/parser.hpp include/qpp/qasmtools/parser/position.hpp include/qpp/qasmtools/parser/preprocessor.hpp include/qpp/qasmtools/parser/token.hpp include/qpp/qasmtools/tools/ast_printer.hpp include/qpp/qasmtools/utils/angle.hpp include/qpp/qasmtools/utils/templates.hpp include/qpp/qpp/MATLAB/matlab.hpp include/qpp/qpp/classes/codes.hpp include/qpp/qpp/classes/exception.hpp include/qpp/qpp/classes/gates.hpp include/qpp/qpp/classes/idisplay.hpp include/qpp/qpp/classes/ijson.hpp include/qpp/qpp/classes/init.hpp include/qpp/qpp/classes/layouts.hpp include/qpp/qpp/classes/noise.hpp include/qpp/qpp/classes/qbase_engine.hpp include/qpp/qpp/classes/qcircuit.hpp include/qpp/qpp/classes/qcircuit_traits.hpp include/qpp/qpp/classes/qdummy_engine.hpp include/qpp/qpp/classes/qengine.hpp include/qpp/qpp/classes/qengine_traits.hpp include/qpp/qpp/classes/qnoisy_engine.hpp include/qpp/qpp/classes/random_devices.hpp include/qpp/qpp/classes/reversible.hpp include/qpp/qpp/classes/states.hpp include/qpp/qpp/classes/timer.hpp include/qpp/qpp/constants.hpp include/qpp/qpp/entanglement.hpp include/qpp/qpp/entropies.hpp include/qpp/qpp/experimental/experimental.hpp include/qpp/qpp/functions.hpp include/qpp/qpp/input_output.hpp include/qpp/qpp/instruments.hpp include/qpp/qpp/internal/classes/iomanip.hpp -include/qpp/qpp/internal/classes/qcircuit_conditional_step.hpp +include/qpp/qpp/internal/classes/labelled_vector_proxy.hpp include/qpp/qpp/internal/classes/qcircuit_gate_step.hpp include/qpp/qpp/internal/classes/qcircuit_measurement_step.hpp include/qpp/qpp/internal/classes/qcircuit_nop_step.hpp include/qpp/qpp/internal/classes/qcircuit_resources.hpp +include/qpp/qpp/internal/classes/qcircuit_runtime_step.hpp include/qpp/qpp/internal/classes/qengine_state.hpp include/qpp/qpp/internal/classes/qengine_statistics.hpp include/qpp/qpp/internal/classes/singleton.hpp +include/qpp/qpp/internal/kernels/qubit/apply.hpp +include/qpp/qpp/internal/kernels/qubit/apply_ctrl.hpp +include/qpp/qpp/internal/kernels/qubit/apply_ctrl_fan.hpp +include/qpp/qpp/internal/kernels/qubit/ptrace.hpp +include/qpp/qpp/internal/kernels/qubit/ptranspose.hpp +include/qpp/qpp/internal/kernels/qubit/syspermute.hpp include/qpp/qpp/internal/util.hpp include/qpp/qpp/number_theory.hpp include/qpp/qpp/operations.hpp include/qpp/qpp/options.hpp include/qpp/qpp/qasm/qasm.hpp include/qpp/qpp/qpp.hpp include/qpp/qpp/random.hpp include/qpp/qpp/statistics.hpp include/qpp/qpp/traits.hpp include/qpp/qpp/types.hpp lib/cmake/qpp/qppConfig.cmake +lib/cmake/qpp/qppConfigVersion.cmake lib/cmake/qpp/qpp_MATLAB.cmake -lib/cmake/qpp/qpp_dependencies.cmake +lib/cmake/qpp/qpp_compiler_flags.cmake lib/cmake/qpp/qpp_eigen3.cmake +lib/cmake/qpp/qpp_openmp.cmake +lib/cmake/qpp/qpp_openqasm.cmake +lib/cmake/qpp/qpp_sanitize.cmake +lib/cmake/qpp/qpp_select_target.cmake lib/cmake/qpp/qpp_targets.cmake +lib/cmake/qpp/qpp_types.cmake