+%define subver 2020-09-18
+%define ver %(echo %{subver} | tr -d -)
%define plugin data
+%define php_min_version 5.6.0
Summary: DokuWiki Structured Data Plugin
Name: dokuwiki-plugin-%{plugin}
-Version: 20100322
-Release: 0.6
+Version: %{ver}
+Release: 2
License: GPL v2
Group: Applications/WWW
-Source0: http://download.github.com/splitbrain-dokuwiki-plugin-data-3c96821.zip
-# Source0-md5: 65014382f5c12628561b674cdee129ee
-URL: http://wiki.splitbrain.org/plugin:data
-Patch0: interwiki.patch
-Patch1: helper-map.patch
+Source0: https://github.com/splitbrain/dokuwiki-plugin-%{plugin}/archive/%{subver}/%{plugin}-%{subver}.tar.gz
+# Source0-md5: c0add7d6b24f97f9f1ac18b4f82835bc
+URL: https://www.dokuwiki.org/plugin:data
Patch2: separator-style.patch
+Patch3: separate-rpmdb.patch
+Patch4: cache-enable.patch
+BuildRequires: rpm-php-pearprov
+BuildRequires: rpmbuild(find_lang) >= 1.41
BuildRequires: rpmbuild(macros) >= 1.520
-BuildRequires: unzip
-Requires(triggerun): sqlite
Requires: dokuwiki >= 20090214b-5
-Requires: dokuwiki-plugin-sqlite
+Requires: dokuwiki-plugin-sqlite >= 20130508
+Requires: php(core) >= %{php_min_version}
+Requires: php(pcre)
BuildArch: noarch
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define dokudir /usr/share/dokuwiki
%define metadir /var/lib/dokuwiki/meta
%define plugindir %{dokudir}/lib/plugins/%{plugin}
-%define find_lang %{_usrlibrpm}/dokuwiki-find-lang.sh %{buildroot}
+
+# no pear deps
+%define _noautopear pear
+
+# sqlite is dokuwiki-plugin-sqlite dep, not ours
+%define _noautophp php-sqlite
+
+# put it together for rpmbuild
+%define _noautoreq %{?_noautophp} %{?_noautopear}
%description
This plugin allows you to add structured data to any DokuWiki page.
%prep
%setup -qc
-mv *-%{plugin}-*/* .
-%patch0 -p1
-%patch1 -p1
+mv *-%{plugin}-*/{.??*,*} .
%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+
+# nothing to do with tests
+rm -rf _test
+rm .travis.yml
+
+# cleanup backups after patching
+find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
+%build
version=$(awk '/date/{print $2}' plugin.info.txt)
if [ $(echo "$version" | tr -d -) != %{version} ]; then
: %%{version} mismatch
- #exit 1
+ exit 1
fi
-# cleanup backups after patching
-find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
-
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{plugindir},%{metadir}}
cp -a . $RPM_BUILD_ROOT%{plugindir}
+%{__rm} $RPM_BUILD_ROOT%{plugindir}/README
+# sqlite2: php-sqlite
touch $RPM_BUILD_ROOT%{metadir}/data.sqlite
+# sqlite3: php-pdo-sqlite
+touch $RPM_BUILD_ROOT%{metadir}/data.sqlite3
# find locales
-%find_lang %{name}.lang
+%find_lang %{name}.lang --with-dokuwiki
%clean
rm -rf $RPM_BUILD_ROOT
touch %{dokuconf}/local.php
fi
-%triggerun -- %{name} < 20100322-0.5
-# move to new location
-mv /var/lib/dokuwiki/cache/dataplugin.sqlite %{metadir}/data.sqlite
-
-# perform new indexes add manually
-sqlite %{metadir}/data.sqlite <<'EOF'
-CREATE TABLE opts (opt,val);
-CREATE UNIQUE INDEX idx_opt ON opts(opt);
-INSERT INTO opts VALUES ('dbversion', 1);
-EOF
-chown root:http %{metadir}/data.sqlite
-chmod 660 %{metadir}/data.sqlite
-
%files -f %{name}.lang
%defattr(644,root,root,755)
+%doc README
%dir %{plugindir}
-%{plugindir}/syntax
-%{plugindir}/conf
-%{plugindir}/db
+%{plugindir}/*.css
%{plugindir}/*.js
%{plugindir}/*.php
+%{plugindir}/*.svg
%{plugindir}/*.txt
-%{plugindir}/*.css
+%{plugindir}/admin
+%{plugindir}/conf
+%{plugindir}/db
+%{plugindir}/helper
+%{plugindir}/syntax
%attr(660,http,http) %ghost %{metadir}/data.sqlite
+%attr(660,http,http) %ghost %{metadir}/data.sqlite3