summaryrefslogtreecommitdiff
path: root/qscintilla.spec
diff options
context:
space:
mode:
Diffstat (limited to 'qscintilla.spec')
-rw-r--r--qscintilla.spec173
1 files changed, 173 insertions, 0 deletions
diff --git a/qscintilla.spec b/qscintilla.spec
new file mode 100644
index 0000000..d1c6a11
--- /dev/null
+++ b/qscintilla.spec
@@ -0,0 +1,173 @@
+%global scintilla_ver 3.10.1
+%global sip_ver 4.19.7
+%if ! 0%{?bootstrap}
+%global python3 1
+%endif
+%global qt5 1
+%global py3_sipdir %{_datadir}/sip
+%global py3_sip %{_bindir}/sip
+Name: qscintilla
+Version: 2.11.6
+Release: 1
+License: GPL-3.0-only
+Summary: A Scintilla port to Qt
+Url: https://github.com/opencor/qscintilla
+Source0: https://github.com/opencor/qscintilla/archive/refs/tags/v%{version}.tar.gz
+Patch100: QScintilla_gpl-2_10_7-sip_check.patch
+Patch101: QScintilla_gpl-2_11-QUrl.patch
+Patch102: fix-build-error.patch
+BuildRequires: gcc-c++
+BuildRequires: pkgconfig(QtDesigner) pkgconfig(QtGui) pkgconfig(QtScript) pkgconfig(QtXml)
+%if 0%{?qt5}
+BuildRequires: pkgconfig(Qt5Designer) pkgconfig(Qt5Gui) pkgconfig(Qt5Widgets)
+%endif
+Provides: bundled(scintilla) = %{scintilla_ver}
+
+%description
+QScintilla is a port of Scintilla to the Qt GUI toolkit.
+%{?scintilla_ver:This version of QScintilla is based on Scintilla v%{scintilla_ver}.}
+
+%if 0%{?python3}
+%package -n python3-qscintilla
+Summary: QScintilla python3 bindings
+BuildRequires: python3-devel python3-PyQt4-devel
+Provides: %{name}-python3 = %{version}-%{release}
+Provides: python3-PyQt5-Qsci = %{version}-%{release}
+Requires: %{name}%{?_isa} = %{version}-%{release} python3-PyQt4
+%{?_sip_api:Requires: python3-pyqt4-sip-api(%{_sip_api_major}) >= %{_sip_api}}
+
+%description -n python3-qscintilla
+%{summary}.
+
+%package -n python3-qscintilla-devel
+Summary: Development files for QScintilla python3 bindings
+Provides: %{name}-python3-devel = %{version}-%{release}
+Requires: python3-PyQt4-devel
+BuildArch: noarch
+
+%description -n python3-qscintilla-devel
+%{summary}.
+%endif
+
+%if 0%{?qt5}
+%package qt5
+Summary: A Scintilla port to Qt5
+Provides: bundled(scintilla) = %{scintilla_ver}
+
+%description qt5
+%{summary}.
+
+%package qt5-devel
+Summary: QScintilla Development Files
+Requires: %{name}-qt5%{?_isa} = %{version}-%{release} qt5-qtbase-devel
+
+%description qt5-devel
+%{summary}.
+
+%if 0%{?python3}
+%package -n python3-qscintilla-qt5
+Summary: QScintilla-qt5 python3 bindings
+BuildRequires: python3-qt5 python3-qt5-devel python3-sip-devel >= %{sip_ver}
+Provides: %{name}-qt5-python3 = %{version}-%{release}
+Requires: %{name}-qt5%{?_isa} = %{version}-%{release}
+Requires: python3-qt5%{?pyqt5_version: >= %{pyqt5_version}}
+%{?_sip_api:Requires: python3-pyqt5-sip-api(%{_sip_api_major}) >= %{_sip_api}}
+
+%description -n python3-qscintilla-qt5
+%{summary}.
+
+%package -n python3-qscintilla-qt5-devel
+Summary: Development files for QScintilla-qt5 python3 bindings
+Provides: %{name}-qt5-python3-devel = %{version}-%{release}
+Requires: python3-qt5-devel
+BuildArch: noarch
+
+%description -n python3-qscintilla-qt5-devel
+%{summary}.
+%endif
+%endif
+
+%prep
+%autosetup -p1 -n qscintilla-%{version}
+
+%build
+%if 0%{?qt5}
+PATH=%{_qt5_bindir}:$PATH; export PATH
+cp -a Qt4Qt5 Qt5/
+pushd Qt5
+%{qmake_qt5} qscintilla.pro
+%make_build
+popd
+QMAKEFEATURES=`pwd`/Qt5/features; export QMAKEFEATURES
+cp -a designer-Qt4Qt5 designer-Qt5/
+pushd designer-Qt5
+%{qmake_qt5} designer.pro INCLUDEPATH+=../Qt5 LIBS+=-L../Qt5
+%make_build
+popd
+%if 0%{?python3}
+cp -a Python Python3-qt5
+pushd Python3-qt5
+%{__python3} \
+ configure.py --verbose \
+ --pyqt=PyQt5 \
+ --sip=/usr/bin/sip-pyqt5 \
+ --qsci-incdir=../Qt5 --qsci-libdir=../Qt5
+%make_build
+popd
+%endif
+%endif
+
+%install
+%if 0%{?qt5}
+make -C Qt5 install INSTALL_ROOT=%{buildroot}
+ln -s libqscintilla2_qt5.so %{buildroot}%{_qt5_libdir}/libqscintilla2-qt5.so
+make -C designer-Qt5 install INSTALL_ROOT=%{buildroot}
+%if 0%{?python3}
+make -C Python3-qt5 install DESTDIR=%{buildroot} INSTALL_ROOT=%{buildroot}
+test -x %{buildroot}%{python3_sitearch}/PyQt5/Qsci.so || \
+chmod a+x %{buildroot}%{python3_sitearch}/PyQt5/Qsci.so
+%endif
+%endif
+%find_lang qscintilla --with-qt
+%if 0%{?qt5}
+grep "%{_qt5_translationdir}" qscintilla.lang > qscintilla-qt5.lang
+%endif
+%if ! ( 0%{?qt5} && 0%{?python3})
+rm -rfv %{buildroot}%{_qt5_datadir}/qsci/
+%endif
+
+%if 0%{?qt5}
+
+%files qt5 -f qscintilla-qt5.lang
+%doc NEWS README
+%license LICENSE
+%{_qt5_libdir}/libqscintilla2_qt5.so.15*
+%{_qt5_plugindir}/designer/libqscintillaplugin.so
+
+%files qt5-devel
+%doc doc/html-Qt4Qt5 doc/Scintilla example-Qt4Qt5
+%{_qt5_headerdir}/Qsci/
+%{_qt5_libdir}/libqscintilla2_qt5.so
+%{_qt5_archdatadir}/mkspecs/features/qscintilla2.prf
+%{_qt5_libdir}/libqscintilla2-qt5.so
+
+%if 0%{?python3}
+%files -n python3-qscintilla-qt5
+%{python3_sitearch}/PyQt5/Qsci.*
+%{_qt5_datadir}/qsci/
+%{python3_sitearch}/QScintilla-%{version}.dist-info/
+
+%files -n python3-qscintilla-qt5-devel
+%{py3_sipdir}/PyQt5/Qsci/
+%endif
+%endif
+
+%changelog
+* Sun Jan 05 2025 Funda Wang <fundawang@yeah.net> - 2.11.6-1
+- update to 2.11.6
+
+* Fri Feb 18 2022 liwu <liwu13@huawei.com> - 2.11.2-2
+- Fix build error of qscintilla
+
+* Mon Jan 11 2021 leiju <leiju4@huawei.com> - 2.11.2-1
+- package init