%global optflags %{optflags} -Wno-register %bcond_without okular %define compile_apidox 0 %define _mobile 0 %define _disable_ld_no_undefined 1 %define _disable_lto 1 %define major 18 %define snapshot 20240306 %define stable %([ `echo %{version} |cut -d. -f3` -ge 70 ] && echo -n un; echo -n stable) Summary: Set of office applications for KDE Name: calligra #koffice has epoch 15. We need a higher epoch Epoch: 17 Version: 3.3.0 Release: %{?snapshot:0.%{snapshot}.}2 Group: Office License: GPLv2+ and LGPLv2+ and GFDL Url: http://www.calligra.org %if 0%{?snapshot:1} Source0: https://invent.kde.org/office/calligra/-/archive/master/calligra-master.tar.bz2#/calligra-%{snapshot}.tar.bz2 %else %if "%{stable}" == "stable" Source0: http://download.kde.org/%{stable}/%{name}/%{version}/%{name}-%{version}.tar.xz %else Source0: http://download.kde.org/%{stable}/%{name}/%{name}-%{version}.tar.xz %endif %endif Source1: %{name}.rpmlintrc Patch0: calligra-buildfix.patch Patch1: calligra-libgit-api-update.patch BuildRequires: pkgconfig(Qt5Core) BuildRequires: pkgconfig(Qt5Gui) BuildRequires: pkgconfig(Qt5Network) BuildRequires: pkgconfig(Qt5PrintSupport) BuildRequires: pkgconfig(Qt5Svg) BuildRequires: pkgconfig(Qt5Test) BuildRequires: pkgconfig(Qt5Widgets) BuildRequires: pkgconfig(Qt5Xml) BuildRequires: pkgconfig(Qt5DBus) BuildRequires: pkgconfig(Qt5OpenGL) BuildRequires: pkgconfig(Qt5Quick) BuildRequires: pkgconfig(Qt5Sql) BuildRequires: pkgconfig(Qt5WebKit) BuildRequires: pkgconfig(Qt5WebKitWidgets) BuildRequires: pkgconfig(Qt5X11Extras) BuildRequires: pkgconfig(Qt5QuickWidgets) BuildRequires: cmake(ECM) BuildRequires: ninja BuildRequires: pstoedit BuildRequires: boost-devel BuildRequires: freetds-devel BuildRequires: getfem-devel BuildRequires: glpk-devel BuildRequires: jbig-devel BuildRequires: marble-devel BuildRequires: mariadb-devel %if %{with okular} BuildRequires: okular-devel %endif BuildRequires: postgresql-devel BuildRequires: readline-devel # We could do this, but it's in contrib #BuildRequires: spnav-devel BuildRequires: tiff-devel BuildRequires: vc-devel BuildRequires: xbase-devel BuildRequires: pkgconfig(GraphicsMagick) BuildRequires: pkgconfig(OpenColorIO) BuildRequires: pkgconfig(OpenEXR) BuildRequires: pkgconfig(eigen3) BuildRequires: pkgconfig(exiv2) BuildRequires: pkgconfig(fftw3) BuildRequires: pkgconfig(glew) BuildRequires: pkgconfig(glut) BuildRequires: pkgconfig(gsl) BuildRequires: pkgconfig(lcms2) BuildRequires: pkgconfig(libctemplate) BuildRequires: pkgconfig(libetonyek-0.1) BuildRequires: pkgconfig(libexif) BuildRequires: pkgconfig(libodfgen-0.1) BuildRequires: pkgconfig(libpqxx) BuildRequires: pkgconfig(librevenge-0.0) BuildRequires: pkgconfig(libvisio-0.1) BuildRequires: pkgconfig(libwpd-0.10) BuildRequires: pkgconfig(libwpg-0.3) BuildRequires: pkgconfig(libwps-0.4) BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(poppler-qt5) BuildRequires: pkgconfig(python) BuildRequires: pkgconfig(qca2-qt5) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(shared-mime-info) BuildRequires: pkgconfig(libgit2) BuildRequires: cmake(Phonon4Qt5) BuildRequires: cmake(KF5Activities) BuildRequires: cmake(KF5Archive) BuildRequires: cmake(KF5Auth) BuildRequires: cmake(KF5Bookmarks) BuildRequires: cmake(KF5CalendarCore) BuildRequires: cmake(KF5Codecs) BuildRequires: cmake(KF5Completion) BuildRequires: cmake(KF5ConfigWidgets) BuildRequires: cmake(KF5Config) BuildRequires: cmake(KF5Contacts) BuildRequires: cmake(KF5CoreAddons) BuildRequires: cmake(KF5Crash) BuildRequires: cmake(KF5DBusAddons) BuildRequires: cmake(KF5DesignerPlugin) BuildRequires: cmake(KF5DocTools) BuildRequires: cmake(KF5Emoticons) BuildRequires: cmake(KF5GuiAddons) BuildRequires: cmake(KF5I18n) BuildRequires: cmake(KF5IconThemes) BuildRequires: cmake(KF5Init) BuildRequires: cmake(KF5ItemModels) BuildRequires: cmake(KF5ItemViews) BuildRequires: cmake(KF5JS) BuildRequires: cmake(KF5JobWidgets) BuildRequires: cmake(KF5KCMUtils) BuildRequires: cmake(KF5KDELibs4Support) BuildRequires: cmake(KF5KHtml) BuildRequires: cmake(KF5KIO) BuildRequires: cmake(KF5Kross) BuildRequires: cmake(KF5KrossUi) BuildRequires: cmake(KF5Notifications) BuildRequires: cmake(KF5NotifyConfig) BuildRequires: cmake(KF5Parts) BuildRequires: cmake(KF5Service) BuildRequires: cmake(KF5Solid) BuildRequires: cmake(KF5Sonnet) BuildRequires: cmake(KF5TextEditor) BuildRequires: cmake(KF5TextWidgets) BuildRequires: cmake(KF5ThreadWeaver) BuildRequires: cmake(KF5UnitConversion) BuildRequires: cmake(KF5Wallet) BuildRequires: cmake(KF5WidgetsAddons) BuildRequires: cmake(KF5WindowSystem) BuildRequires: cmake(KF5XmlGui) BuildRequires: cmake(KPim5AkonadiContact) BuildRequires: cmake(KPim5Akonadi) BuildRequires: cmake(KGantt) BuildRequires: cmake(KPropertyWidgets) BuildRequires: cmake(KReport) BuildRequires: cmake(KF5Holidays) %if %compile_apidox BuildRequires: doxygen BuildRequires: graphviz %endif # No longer included in 3.x, but might come back at some point Obsoletes: %{name}-semanticitem < %{EVRD} Obsoletes: %{name}-author < %{EVRD} Obsoletes: %{name}-braindump < %{EVRD} Obsoletes: %{name}-kchart < %{EVRD} Obsoletes: %{name}-kformula < %{EVRD} Obsoletes: %{name}-stateshape < %{EVRD} Obsoletes: %{name}-active < %{EVRD} Recommends: %{name}-flow Recommends: %{name}-karbon Recommends: %{name}-sheets Recommends: %{name}-stage Recommends: %{name}-words Recommends: %{name}-plan %if !%{with okular} Obsoletes: %{name}-okular-odp <= %{EVRD} Obsoletes: %{name}-okular-odt <= %{EVRD} %endif # Those were in KDE4 versions of calligra... %define obsoletelibs14 calligradb calligrakdchart calligrakdgantt flowprivate kformdesigner kformula kokross koproperty kordf koreport kplatokernel kplatomodels kplatoui planprivate planworkapp rcps_plan braindumpcore planworkfactory %{expand:%(for lib in %{obsoletelibs14}; do echo Obsoletes: %%mklibname $lib 14; echo; done)} # Those were in Calligra 3.2 %define obsoletelibs18 calligrasheetscommon calligrasheetsodf %{expand:%(for lib in %{obsoletelibs18}; do echo Obsoletes: %%mklibname $lib 18; echo; done)} %description Office applications for the K Desktop Environment. Calligra contains: * Words: word processor * Table: spreadsheet * Stage: presentations * Flow: diagram generator * Some filters (Excel 97, Winword 97/2000, etc.) * karbon: the scalable vector drawing application for KDE. * plan: a project management. %files %define libpackage()\ %{expand:%%define nib %(echo %{1} | sed 's,[0-9]$,&_,' )}\ %{expand:%%global lib%{1} %%mklibname %{nib}}\ %%package -n %{expand:%{lib%{1}}}\ Summary: The %{1} library, a part of %{name}\ Group: System/Libraries\ %%description -n %{expand:%{lib%{1}}}\ The %{1} library, a part of %{name}.\ %%files -n %{expand:%{lib%{1}}}\ %{_libdir}/lib%{1}.so.%{2}*\ %{nil} # libpackages %define calligralibs basicflakes calligrastageprivate flake karboncommon karbonui komain komsooxml koodf koodfreader kopageapp koplugin kotext kotextlayout kovectorimage koversion kowidgets kowidgetutils kundo2 pigmentcms wordsprivate koformula kookularGenerator_odp kookularGenerator_odt kostore autocorrection calligrasheetscore calligrasheetsengine calligrasheetspartlib calligrasheetsui %{expand:%(for lib in %{calligralibs}; do cat <