class QtsparkleQt6 < Formula desc "Qt wrapper library for in-app updates (Qt 6 build)" homepage "https://github.com/strawberrymusicplayer/qtsparkle" url "https://github.com/strawberrymusicplayer/qtsparkle/archive/95ca3b77a79540d632b29e9a4df9aed30af5f901.tar.gz" sha256 "945c9e96d2f6175b134a8ccfd6ec1acd268266d31969b5870d4037e8e5877834" license "GPL-3.0-or-later" depends_on "cmake" => :build depends_on "ninja" => :build depends_on "qt" def install args = std_cmake_args + %W[ -GNinja -DBUILD_WITH_QT6=ON -DBUILD_WITH_QT5=OFF -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=OFF ] system "cmake", "-S", ".", "-B", "build", *args system "cmake", "--build", "build" system "cmake", "--install", "build" end test do # Strawberry expects: find_package(qtsparkle-qt6) and target qtsparkle-qt6::qtsparkle (testpath/"CMakeLists.txt").write <<~CMAKE cmake_minimum_required(VERSION 3.16) project(qtsparkle_test LANGUAGES CXX) find_package(qtsparkle-qt6 CONFIG REQUIRED) add_library(dummy STATIC dummy.cpp) target_link_libraries(dummy PRIVATE qtsparkle-qt6::qtsparkle) CMAKE (testpath/"dummy.cpp").write <<~CPP int dummy() { return 0; } CPP system "cmake", "-S", ".", "-B", "build", "-DCMAKE_PREFIX_PATH=#{opt_prefix}" system "cmake", "--build", "build" end end