X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=scribus.spec;h=93f0ce14e5fe423053dee03a65a28b590a59c939;hb=master;hp=52041df91094d57a7e787588fe18f8c6d9fb3c55;hpb=8451357c6d5a6da73cea03dfc19c370a9c2f3beb;p=packages%2Fscribus.git diff --git a/scribus.spec b/scribus.spec index 52041df..93f0ce1 100644 --- a/scribus.spec +++ b/scribus.spec @@ -1,54 +1,106 @@ +# TODO: +# - OpenSceneGraph support (WANT_NOOSG to disable) +# - system hyphen +# - more system libs, see scribus/third_party (e.g. libwpg) +# - qt6 bcond? (BR: Qt6{Core,Core5Compat,Gui,Widgets,Network} >= 6.2.0, cmake >= 3.16.0) # # Conditional build: -%bcond_with cairo # build with cairo support -%bcond_without cups # build without CUPS support +%bcond_without cups # CUPS support # +%define qt_ver 5.14.0 Summary: Scribus - Open Source Desktop Publishing -Summary(pl.UTF-8): Scribus - DTP dla Wolnego Oprogramowania +Summary(pl.UTF-8): Scribus - DTP dla Wolnego Oprogramowania Name: scribus -Version: 1.3.3.7 -Release: 2 -License: GPL v2 +Version: 1.5.8 +Release: 6 +License: GPL v2+ Group: X11/Applications/Publishing -Source0: http://dl.sourceforge.net/scribus/%{name}-%{version}.tar.bz2 -# Source0-md5: 9d20ef9010d94b504f6c8cd6acd215ca -Source1: %{name}.desktop -Patch1: %{name}-standard-font-paths.patch -Patch2: %{name}-version.patch -URL: http://www.scribus.net/ -%{?with_cairo:BuildRequires: cairo-devel >= 1.2.0} -BuildRequires: cmake >= 2.4.5 +Source0: https://downloads.sourceforge.net/scribus/%{name}-%{version}.tar.xz +# Source0-md5: ff9e966a2251a6c8800bb26fcb4b7c59 +Patch0: %{name}-docs.patch +Patch1: %{name}-poppler.patch +Patch2: %{name}-poppler-22.09.0.patch +Patch3: podofo-0.10.patch +URL: https://www.scribus.net/ +BuildRequires: GraphicsMagick-devel +BuildRequires: Qt5Core-devel >= %{qt_ver} +BuildRequires: Qt5Gui-devel >= %{qt_ver} +BuildRequires: Qt5Network-devel >= %{qt_ver} +BuildRequires: Qt5OpenGL-devel >= %{qt_ver} +BuildRequires: Qt5PrintSupport-devel >= %{qt_ver} +BuildRequires: Qt5Widgets-devel >= %{qt_ver} +BuildRequires: Qt5Xml-devel >= %{qt_ver} +BuildRequires: boost-devel +BuildRequires: cairo-devel >= 1.2.0 +BuildRequires: cmake >= 3.14.0 %if %{with cups} BuildRequires: cups-devel %else BuildConflicts: cups-devel %endif +BuildRequires: fontconfig-devel BuildRequires: freetype-devel >= 2.1.0 -BuildRequires: lcms-devel >= 1.09 -%{!?with_cairo:BuildRequires: libart_lgpl-devel >= 2.3.14} +BuildRequires: harfbuzz-devel >= 0.9.42 +BuildRequires: harfbuzz-icu-devel +BuildRequires: harfbuzz-subset-devel >= 2.4.0 +BuildRequires: hunspell-devel +# missing find_package(HYPHEN); bundled version is used +#BuildRequires: hyphen-devel +BuildRequires: lcms2-devel >= 2 +BuildRequires: libcdr-devel >= 0.1 +BuildRequires: libfreehand-devel >= 0.1 +BuildRequires: libicu-devel BuildRequires: libjpeg-devel -BuildRequires: libpng-devel +BuildRequires: libmspub-devel >= 0.1 +BuildRequires: libpagemaker-devel +BuildRequires: libpng-devel >= 2:1.6 +BuildRequires: libqxp-devel +BuildRequires: librevenge-devel +BuildRequires: libstdc++-devel >= 6:7 BuildRequires: libtiff-devel -BuildRequires: libxml2-devel +BuildRequires: libvisio-devel >= 0.1 +BuildRequires: libxml2-devel >= 2 +BuildRequires: libzmf-devel BuildRequires: openssl-devel -BuildRequires: perl-base -BuildRequires: python-devel -BuildRequires: python-modules -BuildRequires: qt-devel >= 6:3.0.5 +BuildRequires: pkgconfig +BuildRequires: podofo-devel +BuildRequires: poppler-cpp-devel >= 0.86.0 +BuildRequires: poppler-devel >= 0.86.0 +BuildRequires: python3-devel >= 1:3.2 +BuildRequires: python3-modules >= 1:3.2 +BuildRequires: qt5-build >= %{qt_ver} +BuildRequires: qt5-linguist >= %{qt_ver} +BuildRequires: qt5-qmake >= %{qt_ver} BuildRequires: rpm-pythonprov -BuildRequires: rpmbuild(macros) >= 1.293 +BuildRequires: rpmbuild(macros) >= 2.005 BuildRequires: sed >= 4.0 +BuildRequires: tar >= 1:1.22 +BuildRequires: xz BuildRequires: zlib-devel -Requires: desktop-file-utils -Requires: python-PIL -Requires: python-tkinter -Obsoletes: scribus-scripting -Obsoletes: scribus-short-words -Obsoletes: scribus-svg +Requires(post,postun): desktop-file-utils +Requires(post,postun): gtk-update-icon-cache +Requires: Qt5Core >= %{qt_ver} +Requires: Qt5Gui >= %{qt_ver} +Requires: Qt5Network >= %{qt_ver} +Requires: Qt5OpenGL >= %{qt_ver} +Requires: Qt5PrintSupport >= %{qt_ver} +Requires: Qt5Widgets >= %{qt_ver} +Requires: Qt5Xml >= %{qt_ver} +Requires: harfbuzz >= 0.9.42 +Requires: harfbuzz-subset >= 2.4.0 +Requires: hicolor-icon-theme +Requires: python3-pillow +Requires: python3-tkinter +Requires: shared-mime-info +Obsoletes: scribus-devel < 1.3.3.6 +Obsoletes: scribus-scripting < 0.6 +Obsoletes: scribus-short-words < 1.3 +Obsoletes: scribus-svg < 0.4 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define specflags_ia32 -fomit-frame-pointer -%define _ulibdir %{_prefix}/lib + +%define _debugsource_packages 0 %description Scribus is an open source desktop page layout program with the aim of @@ -60,23 +112,10 @@ Scribus jest to program do tworzenia publikacji z założenia generujący dokumenty PDF oraz Postscript nadające się do użytku komercyjnego, przeznaczony głównie, lecz nie tylko, dla systemu Linux(R). -%package devel -Summary: Header files for Scribus plugins development -Summary(pl.UTF-8): Pliki nagłówkowe do tworzenia wtyczek Scribusa -Group: Development/Libraries -# currently it doesn't require base -Requires: qt-devel - -%description devel -Header files for Scribus plugins development. - -%description devel -l pl.UTF-8 -Pliki nagłówkowe do tworzenia wtyczek Scribusa. - %package docs Summary: Documentation for Scribus -Summary(pl.UTF-8): Dokumentacja dla Scribusa -License: custom OPL (see License),FDL +Summary(pl.UTF-8): Dokumentacja dla Scribusa +License: custom OPL (see License), FDL Group: X11/Applications/Publishing %description docs @@ -87,7 +126,7 @@ Dokumentacja użytkownika dla Scribusa. %package icc Summary: ICC profiles for Scribus -Summary(pl.UTF-8): Profile ICC dla Scribusa +Summary(pl.UTF-8): Profile ICC dla Scribusa License: freely distributable Group: X11/Applications/Publishing Requires: %{name} = %{version}-%{release} @@ -102,7 +141,7 @@ Zalecane jest używanie własnych profili zamiast nich! %package templates-base Summary: Default document templates -Summary(pl.UTF-8): Domyślne szablony dokumentów +Summary(pl.UTF-8): Domyślne szablony dokumentów License: GPL v2 Group: X11/Applications/Publishing Requires: %{name} = %{version}-%{release} @@ -116,38 +155,49 @@ Domyślne szablony dokumentów dostarczane wraz ze Scribusem. %prep %setup -q +%patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 %build -export QTDIR=%{_prefix} -export KDEDIR=%{_prefix} - -%cmake . \ - -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \ -%if %{with cairo} - -DWANT_CAIRO=1 -%else - -DWANT_LIBART=1 -%endif +%cmake -B build \ + -DWANT_CPP17=ON \ + -DWANT_GRAPHICSMAGICK:BOOL=ON -%{__make} +%{__make} -C build %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}} -%{__make} install \ +%{__make} -C build install \ DESTDIR=$RPM_BUILD_ROOT -install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir} -install $RPM_BUILD_ROOT%{_datadir}/%{name}/icons/scribusicon.png $RPM_BUILD_ROOT%{_pixmapsdir} - -mv $RPM_BUILD_ROOT%{_ulibdir}/scribus/%{name}.lt_LT.qm $RPM_BUILD_ROOT%{_ulibdir}/scribus/%{name}.lt.qm - -rm -f $RPM_BUILD_ROOT%{_ulibdir}/scribus/*.no.qm - -rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/{AUTHORS,BUILDING,COPYING,ChangeLog,ChangeLogCVS,INSTALL,NEWS,PACKAGING,README,README.MacOSX,TODO} +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{cs_CZ,cs}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{da_DK,da}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{es_ES,es}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{fa_IR,fa}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{he_IL,he}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{hi_IN,hi}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{hr_HR,hr}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{kn_IN,kn}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{lt_LT,lt}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{mn_MN,mn}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{ms_MY,ms}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{nb_NO,nb}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{pl_PL,pl}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{pt_PT,pt}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{sk_SK,sk}.qm +%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.{th_TH,th}.qm + +echo '%%defattr(644,root,root,755)' >%{name}.lang +for f in $RPM_BUILD_ROOT%{_datadir}/%{name}/translations/%{name}.*.qm ; do + bn="$(basename $f .qm)" + lang="${bn#%{name}.}" + echo "%%lang(${lang}) ${f#${RPM_BUILD_ROOT}}" >>%{name}.lang +done + +%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/doc/{AUTHORS,COPYING,ChangeLog,README,LINKS,TRANSLATION} %clean rm -rf $RPM_BUILD_ROOT @@ -155,123 +205,59 @@ rm -rf $RPM_BUILD_ROOT %post %update_desktop_database_post %update_mime_database +%update_icon_cache hicolor %postun %update_desktop_database_postun %update_mime_database +%update_icon_cache hicolor -%files +%files -f %{name}.lang %defattr(644,root,root,755) -%doc AUTHORS BUILDING ChangeLog ChangeLogCVS INSTALL NEWS README TODO +# COPYING contains many additional notes +%doc AUTHORS COPYING ChangeLog NEWS README TODO %attr(755,root,root) %{_bindir}/scribus -%dir %{_ulibdir}/%{name} -%{_ulibdir}/%{name}/import.prolog -# don't mark dictionaries with lang() --misiek -%{_ulibdir}/%{name}/dicts -%{_ulibdir}/%{name}/keysets -%dir %{_ulibdir}/%{name}/plugins -%attr(755,root,root) %{_ulibdir}/%{name}/plugins/*.so* -%dir %{_ulibdir}/%{name}/plugins/gettext -%attr(755,root,root) %{_ulibdir}/%{name}/plugins/gettext/*.so* -%dir %{_ulibdir}/scribus/profiles -%lang(af) %{_ulibdir}/scribus/scribus.af.qm -%lang(bg) %{_ulibdir}/scribus/scribus.bg.qm -%lang(br) %{_ulibdir}/scribus/scribus.br.qm -%lang(ca) %{_ulibdir}/scribus/scribus.ca.qm -%lang(cs) %{_ulibdir}/scribus/scribus.cs.qm -%lang(cy) %{_ulibdir}/scribus/scribus.cy.qm -%lang(da) %{_ulibdir}/scribus/scribus.da.qm -%lang(de) %{_ulibdir}/scribus/scribus.de.qm -%lang(de_OL) %{_ulibdir}/scribus/scribus.de_ol.qm -%lang(dz) %{_ulibdir}/scribus/scribus.dz.qm -%lang(el) %{_ulibdir}/scribus/scribus.el.qm -#%lang(en_AU) %{_ulibdir}/scribus/scribus.en_AU.qm -%lang(en_GB) %{_ulibdir}/scribus/scribus.en_GB.qm -#%lang(en_US) %{_ulibdir}/scribus/scribus.en_US.qm -%lang(eo) %{_ulibdir}/scribus/scribus.eo.qm -%lang(es) %{_ulibdir}/scribus/scribus.es.qm -%lang(es_LA) %{_ulibdir}/scribus/scribus.es_LA.qm -%lang(et) %{_ulibdir}/scribus/scribus.et.qm -%lang(eu) %{_ulibdir}/scribus/scribus.eu.qm -%lang(fi) %{_ulibdir}/scribus/scribus.fi.qm -%lang(fr) %{_ulibdir}/scribus/scribus.fr.qm -%lang(gl) %{_ulibdir}/scribus/scribus.gl.qm -%lang(hu) %{_ulibdir}/scribus/scribus.hu.qm -%lang(id) %{_ulibdir}/scribus/scribus.id.qm -%lang(it) %{_ulibdir}/scribus/scribus.it.qm -%lang(ja) %{_ulibdir}/scribus/scribus.ja.qm -%lang(ko) %{_ulibdir}/scribus/scribus.ko.qm -%lang(lt) %{_ulibdir}/scribus/scribus.lt.qm -%lang(nl) %{_ulibdir}/scribus/scribus.nl.qm -%lang(nb) %{_ulibdir}/scribus/scribus.nb.qm -%lang(pl) %{_ulibdir}/scribus/scribus.pl.qm -%lang(pt_BR) %{_ulibdir}/scribus/scribus.pt_BR.qm -%lang(ru) %{_ulibdir}/scribus/scribus.ru.qm -%lang(se) %{_ulibdir}/scribus/scribus.se.qm -%lang(sk) %{_ulibdir}/scribus/scribus.sk.qm -%lang(sl) %{_ulibdir}/scribus/scribus.sl.qm -%lang(sq) %{_ulibdir}/scribus/scribus.sq.qm -%lang(sr) %{_ulibdir}/scribus/scribus.sr.qm -%lang(th) %{_ulibdir}/scribus/scribus.th_TH.qm -%lang(tr) %{_ulibdir}/scribus/scribus.tr.qm -%lang(uk) %{_ulibdir}/scribus/scribus.uk.qm -%lang(zh_CN) %{_ulibdir}/scribus/scribus.zh.qm -%dir %{_ulibdir}/%{name}/swatches -%{_ulibdir}/%{name}/swatches/* +%dir %{_libdir}/%{name} +%{_libdir}/%{name}/scribus.css +%dir %{_libdir}/%{name}/plugins +%attr(755,root,root) %{_libdir}/%{name}/plugins/*.so* +%dir %{_libdir}/%{name}/plugins/gettext +%attr(755,root,root) %{_libdir}/%{name}/plugins/gettext/*.so* %dir %{_datadir}/%{name} %{_datadir}/%{name}/dtd +%{_datadir}/%{name}/dicts +%{_datadir}/%{name}/editorconfig %{_datadir}/%{name}/icons +%{_datadir}/%{name}/keysets %{_datadir}/%{name}/loremipsum -%{_datadir}/mime/packages/scribus.xml -%dir %{_datadir}/%{name}/plugins -%{_datadir}/%{name}/plugins/* +%{_datadir}/%{name}/plugins +%dir %{_datadir}/%{name}/profiles %dir %{_datadir}/%{name}/samples %{_datadir}/%{name}/samples/*.py -%dir %{_datadir}/%{name}/scripts -%{_datadir}/%{name}/scripts/*.py +%{_datadir}/%{name}/scripts +%{_datadir}/%{name}/swatches +%dir %{_datadir}/%{name}/translations +%{_datadir}/%{name}/unicodenameslist.txt %{_desktopdir}/%{name}.desktop -%{_mandir}/man1/%{name}.* -%lang(pl) %{_mandir}/pl/man1/%{name}.* -%{_pixmapsdir}/%{name}icon.png - -#%files devel -#%defattr(644,root,root,755) -#%{_includedir}/scribus +%{_iconsdir}/hicolor/*x*/apps/scribus.png +%{_datadir}/mime/packages/scribus.xml +%{_datadir}/metainfo/scribus.appdata.xml +%{_mandir}/man1/scribus.1* +%lang(de) %{_mandir}/de/man1/scribus.1* +%lang(pl) %{_mandir}/pl/man1/scribus.1* %files docs %defattr(644,root,root,755) -%dir %{_docdir}/%{name} -%dir %{_docdir}/%{name}/en -%{_docdir}/%{name}/en/* -%lang(cs) %dir %{_docdir}/%{name}/cs -%lang(cs) %dir %{_docdir}/%{name}/cs/tutorials -%lang(cs) %dir %{_docdir}/%{name}/cs/tutorials/scribus-short-words -%lang(cs) %{_docdir}/%{name}/cs/tutorials/scribus-short-words/* -%lang(de) %dir %{_docdir}/%{name}/de -%lang(de) %{_docdir}/%{name}/de/* -%lang(fr) %dir %{_docdir}/%{name}/fr -%lang(fr) %{_docdir}/%{name}/fr/*.html -%lang(fr) %dir %{_docdir}/%{name}/fr/tutorials -%lang(fr) %dir %{_docdir}/%{name}/fr/tutorials/scribus-short-words -%lang(fr) %{_docdir}/%{name}/fr/tutorials/scribus-short-words/* -%lang(pl) %dir %{_docdir}/%{name}/pl -%lang(pl) %dir %{_docdir}/%{name}/pl/tutorials -%lang(pl) %dir %{_docdir}/%{name}/pl/tutorials/scribus-short-words -%lang(pl) %{_docdir}/%{name}/pl/tutorials/scribus-short-words/* +%dir %{_datadir}/%{name}/doc +%{_datadir}/%{name}/doc/en +%lang(de) %{_datadir}/%{name}/doc/de +%lang(it) %{_datadir}/%{name}/doc/it +%lang(ru) %{_datadir}/%{name}/doc/ru %files icc %defattr(644,root,root,755) -%{_ulibdir}/scribus/profiles/* +%{_datadir}/scribus/profiles/* %files templates-base %defattr(644,root,root,755) -%dir %{_datadir}/%{name}/templates -%{_datadir}/%{name}/templates/*.xml -%dir %{_datadir}/%{name}/templates/br1 -%{_datadir}/%{name}/templates/br1/* -%dir %{_datadir}/%{name}/templates/nl1 -%{_datadir}/%{name}/templates/nl1/* -%dir %{_datadir}/%{name}/templates/sc_presentation -%{_datadir}/%{name}/templates/sc_presentation/* -%dir %{_datadir}/%{name}/templates/textbased -%{_datadir}/%{name}/templates/textbased/* +%{_datadir}/%{name}/templates