%global optflags %{optflags} -flto %global build_ldflags %{build_ldflags} -flto ### Git submodules ### * humanize %global commit1 4e00a03623966723f23ca3034c1ad944009cd7be %global shortcommit1 %(c=%{commit1}; echo ${c:0:7}) ### * libcommuni %global commit2 a31ffb037eadac65dba73ad2b2da6dafe31e3bf7 %global shortcommit2 %(c=%{commit2}; echo ${c:0:7}) ### * settings %global commit3 a5040463c01e6b0e562eab82e0decb29cab9b450 %global shortcommit3 %(c=%{commit3}; echo ${c:0:7}) ### * signals %global commit4 1c38746b05d9311e73c8c8acdfdc4d36c9c551be %global shortcommit4 %(c=%{commit4}; echo ${c:0:7}) ### * serialize %global commit5 130ffc3ec722284ca454a1e70c5478a75f380144 %global shortcommit5 %(c=%{commit5}; echo ${c:0:7}) ### * rapidjson %global commit6 d87b698d0fcc10a5f632ecbc80a9cb2a8fa094a5 %global shortcommit6 %(c=%{commit6}; echo ${c:0:7}) ### * websocketpp %global commit7 1e0138c7ccedc6be859d28270ccd6195f235a94e %global shortcommit7 %(c=%{commit7}; echo ${c:0:7}) Name: chatterino2 Version: 2.1.4 Release: 4%{?dist} Summary: Chat client for twitch.tv # Boost Software License (v1.0) Boost Software License 1.0 # ----------------------------------------------------------------------- # resources/licenses/boost_boost.txt # # BSD 2-clause "Simplified" License # --------------------------------- # lib/fmt/fmt/ # # BSD 3-clause "New" or "Revised" License # --------------------------------------- # lib/libcommuni/ # lib/rapidjson/ # lib/websocketpp/ # # Expat License # ------------- # lib/humanize/ # lib/rapidjson/ # lib/serialize/ # lib/signals/ # lib/websocketpp/ # resources/ # # Mozilla Public License (v1.1) GNU General Public License (v2 or later) or GNU Lesser General Public License (v2.1 or later) # --------------------------------------------------------------------------------------------------------------------------- # lib/libcommuni/ # # zlib/libpng license Aladdin Free Public License # ----------------------------------------------- # lib/websocketpp/ # License: MIT and Boost and BSD and zlib and GPLv2+ and LGPLv2+ and MPLv1.1 URL: https://github.com/Chatterino/chatterino2 Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz Source1: https://github.com/pajlada/humanize/archive/%{commit1}/humanize-%{shortcommit1}.tar.gz Source2: https://github.com/hemirt/libcommuni/archive/%{commit2}/libcommuni-%{shortcommit2}.tar.gz Source3: https://github.com/pajlada/settings/archive/%{commit3}/settings-%{shortcommit3}.tar.gz Source4: https://github.com/pajlada/signals/archive/%{commit4}/signals-%{shortcommit4}.tar.gz Source5: https://github.com/pajlada/serialize/archive/%{commit5}/serialize-%{shortcommit5}.tar.gz Source6: https://github.com/Tencent/rapidjson/archive/%{commit6}/rapidjson-%{shortcommit6}.tar.gz Source7: https://github.com/ziocleto/websocketpp/archive/%{commit7}/websocketpp-%{shortcommit7}.tar.gz # BuildRequires: ninja-build BuildRequires: boost-devel BuildRequires: cmake BuildRequires: desktop-file-utils BuildRequires: gcc-c++ BuildRequires: libsecret-devel BuildRequires: openssl-devel BuildRequires: cmake(Qt5Core) BuildRequires: cmake(Qt5Multimedia) BuildRequires: cmake(Qt5Svg) ### Modules ### * For future, maybe # BuildRequires: fmt-devel # BuildRequires: libcommuni-devel # BuildRequires: websocketpp-devel ### All submodules patched so not possible to build with system packages Provides: bundled(fmt) Provides: bundled(humanize) Provides: bundled(libcommuni) = 3.5.0 Provides: bundled(rapidjson) = 1.1.0 Provides: bundled(serialize) Provides: bundled(settings) Provides: bundled(signals) Provides: bundled(websocketpp) = 0.8.1 %description Chatterino 2 is the second installment of the Twitch chat client series "Chatterino". %prep %autosetup -p1 %autosetup -p1 -D -T -a1 %autosetup -p1 -D -T -a2 %autosetup -p1 -D -T -a3 %autosetup -p1 -D -T -a4 %autosetup -p1 -D -T -a5 %autosetup -p1 -D -T -a6 %autosetup -p1 -D -T -a7 mv humanize-%{commit1}/* lib/humanize mv libcommuni-%{commit2}/* lib/libcommuni mv settings-%{commit3}/* lib/settings mv signals-%{commit4}/* lib/signals mv serialize-%{commit5}/* lib/serialize mv rapidjson-%{commit6}/* lib/rapidjson mv websocketpp-%{commit7}/* lib/websocketpp ### Unbundling ### https://github.com/Chatterino/chatterino2/issues/1444 pushd lib/ rm -r qBreakpad/ \ WinToast/ # fmt/ # sed -e 's|INCLUDEPATH += $$PWD/fmt/|INCLUDEPATH += %{_includedir}/fmt/|g' \ # -i fmt.pri popd mkdir -p %{_target_platform} %build pushd %{_target_platform} %qmake_qt5 \ PREFIX=%{buildroot}%{_prefix} \ .. popd %make_build -C %{_target_platform} %install %make_install -C %{_target_platform} %check desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop %files %license LICENSE %doc README.md BUILDING_ON_LINUX.md docs/ %{_bindir}/chatterino %{_datadir}/applications/*.desktop %changelog * Fri Dec 13 2019 Artem Polishchuk - 2.1.4-4 - Initial package