1 |
brianr |
1.1 |
%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}} |
2 |
|
|
%global pkgname phpMyAdmin |
3 |
|
|
%global pkgnameV phpMyAdmin47 |
4 |
|
|
|
5 |
|
|
# If php-mcrypt is available, it should be preferred. Otherwise the pure |
6 |
|
|
# phpseclib alternative alternative can be used externally or internally. |
7 |
|
|
%global mcrypt 1 |
8 |
|
|
%global seclib 0 |
9 |
|
|
|
10 |
|
|
# Having below mentioned separate projects externally or only internally? |
11 |
|
|
%global gettext 0 |
12 |
|
|
# getext included in php common since php55 |
13 |
|
|
%global tcpdf 0 |
14 |
|
|
%global optdatadir /opt |
15 |
|
|
|
16 |
|
|
Summary: Handle the administration of MySQL over the World Wide Web |
17 |
|
|
Name: phpMyAdmin47 |
18 |
|
|
Version: 4.7.6 |
19 |
|
|
Release: 1%{?dist} |
20 |
|
|
License: GPLv2+ |
21 |
|
|
Group: Applications/Internet |
22 |
|
|
URL: https://www.phpmyadmin.net/ |
23 |
|
|
Source0: https://files.phpmyadmin.net/%{pkgname}/%{version}/%{pkgname}-%{version}-all-languages.tar.xz |
24 |
|
|
Source1: https://files.phpmyadmin.net/%{pkgname}/%{version}/%{pkgname}-%{version}-all-languages.tar.xz.asc |
25 |
|
|
Source2: phpMyAdmin-config.inc.php |
26 |
|
|
Source3: phpMyAdmin.htaccess |
27 |
|
|
#Patch0: phpMyAdmin-4.0.10-remove-flash.patch |
28 |
|
|
#Patch1: phpMyAdmin-4.0.10.17-system-phpseclib.patch |
29 |
|
|
# Optional (and partially redundant) runtime requirements: php-bcmath, php-gmp, php-recode, php-soap |
30 |
|
|
Requires: php55-php >= 5.5, php55-php-filter, php55-php-xmlwriter |
31 |
|
|
Requires: webserver, php55-php-bz2, php55-php-ctype, php55-php-curl, php55-php-date, php55-php-gd, php55-php-hash, php55-php-iconv |
32 |
|
|
Requires: php55-php-json, php55-php-libxml, php55-php-mbstring, php55-php-mysqli, php55-php-pcre, php55-php-session, php55-php-simplexml |
33 |
|
|
Requires: php55-php-spl, php55-php-zip, php55-php-zlib |
34 |
|
|
|
35 |
|
|
Requires: php56-php >= 5.5, php56-php-filter, php56-php-xmlwriter |
36 |
|
|
Requires: webserver, php56-php-bz2, php56-php-ctype, php56-php-curl, php56-php-date, php56-php-gd, php56-php-hash, php56-php-iconv |
37 |
|
|
Requires: php56-php-json, php56-php-libxml, php56-php-mbstring, php56-php-mysqli, php56-php-pcre, php56-php-session, php56-php-simplexml |
38 |
|
|
Requires: php56-php-spl, php56-php-zip, php56-php-zlib |
39 |
|
|
|
40 |
|
|
Requires: php70-php >= 5.5, php70-php-filter, php70-php-xmlwriter |
41 |
|
|
Requires: webserver, php70-php-bz2, php70-php-ctype, php70-php-curl, php70-php-date, php70-php-gd, php70-php-hash, php70-php-iconv |
42 |
|
|
Requires: php70-php-json, php70-php-libxml, php70-php-mbstring, php70-php-mysqli, php70-php-pcre, php70-php-session, php70-php-simplexml |
43 |
|
|
Requires: php70-php-spl, php70-php-zip, php70-php-zlib |
44 |
|
|
|
45 |
|
|
Requires: php71-php >= 5.5, php71-php-filter, php71-php-xmlwriter |
46 |
|
|
Requires: webserver, php71-php-bz2, php71-php-ctype, php71-php-curl, php71-php-date, php71-php-gd, php71-php-hash, php71-php-iconv |
47 |
|
|
Requires: php71-php-json, php71-php-libxml, php71-php-mbstring, php71-php-mysqli, php71-php-pcre, php71-php-session, php71-php-simplexml |
48 |
|
|
Requires: php71-php-spl, php71-php-zip, php71-php-zlib |
49 |
|
|
|
50 |
|
|
|
51 |
|
|
%if 0%{?mcrypt} |
52 |
|
|
Requires: php55-php-mcrypt |
53 |
|
|
Requires: php56-php-mcrypt |
54 |
|
|
Requires: php70-php-mcrypt |
55 |
|
|
Requires: php71-php-mcrypt |
56 |
|
|
%else |
57 |
|
|
%if 0%{?seclib} |
58 |
|
|
Requires: php55-php-phpseclib-crypt-aes |
59 |
|
|
%endif |
60 |
|
|
%endif |
61 |
|
|
%if 0%{?gettext} |
62 |
|
|
Requires: php55-php-gettext |
63 |
|
|
%endif |
64 |
|
|
# Optional runtime requirements for tcpdf: php-openssl, php-tidy (usually not required in phpMyAdmin) |
65 |
|
|
%if 0%{?tcpdf} |
66 |
|
|
Requires: php55-php-tcpdf, php55-php-tcpdf-dejavu-sans-fonts |
67 |
|
|
%endif |
68 |
|
|
Provides: phpMyAdmin47 = %{version}-%{release} |
69 |
|
|
BuildArch: noarch |
70 |
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) |
71 |
|
|
|
72 |
|
|
%description |
73 |
|
|
phpMyAdmin is a tool written in PHP intended to handle the administration of |
74 |
|
|
MySQL over the World Wide Web. Most frequently used operations are supported |
75 |
|
|
by the user interface (managing databases, tables, fields, relations, indexes, |
76 |
|
|
users, permissions), while you still have the ability to directly execute any |
77 |
|
|
SQL statement. |
78 |
|
|
|
79 |
|
|
Features include an intuitive web interface, support for most MySQL features |
80 |
|
|
(browse and drop databases, tables, views, fields and indexes, create, copy, |
81 |
|
|
drop, rename and alter databases, tables, fields and indexes, maintenance |
82 |
|
|
server, databases and tables, with proposals on server configuration, execute, |
83 |
|
|
edit and bookmark any SQL-statement, even batch-queries, manage MySQL users |
84 |
|
|
and privileges, manage stored procedures and triggers), import data from CSV |
85 |
|
|
and SQL, export data to various formats: CSV, SQL, XML, PDF, OpenDocument Text |
86 |
|
|
and Spreadsheet, Word, Excel, LATEX and others, administering multiple servers, |
87 |
|
|
creating PDF graphics of your database layout, creating complex queries using |
88 |
|
|
Query-by-example (QBE), searching globally in a database or a subset of it, |
89 |
|
|
transforming stored data into any format using a set of predefined functions, |
90 |
|
|
like displaying BLOB-data as image or download-link and much more... |
91 |
|
|
|
92 |
|
|
%prep |
93 |
|
|
%setup -q -n %{pkgname}-%{version}-all-languages |
94 |
|
|
#%patch0 -p1 |
95 |
|
|
#%patch1 -p1 |
96 |
|
|
|
97 |
|
|
# Setup vendor config file |
98 |
|
|
sed -e "/'CHANGELOG_FILE'/s@./ChangeLog@%{_pkgdocdir}/ChangeLog@" \ |
99 |
|
|
-e "/'LICENSE_FILE'/s@./LICENSE@%{_pkgdocdir}/LICENSE@" \ |
100 |
|
|
-e "/'CONFIG_DIR'/s@''@'%{_sysconfdir}/%{pkgnameV}/'@" \ |
101 |
|
|
-e "/'SETUP_CONFIG_FILE'/s@./config/config.inc.php@%{_localstatedir}/lib/%{pkgnameV}/config/config.inc.php@" \ |
102 |
|
|
%if 0%{?gettext} |
103 |
|
|
-e "/'GETTEXT_INC'/s@./libraries/php-gettext/gettext.inc@%{_datadir}/php/gettext/gettext.inc@" \ |
104 |
|
|
%endif |
105 |
|
|
%if 0%{?tcpdf} |
106 |
|
|
-e "/'TCPDF_INC'/s@./libraries/tcpdf/tcpdf.php@%{_datadir}/php/tcpdf/tcpdf.php@" \ |
107 |
|
|
%endif |
108 |
|
|
%if 0%{?mcrypt}%{?seclib} |
109 |
|
|
-e "/'PHPSECLIB_INC_DIR'/s@./libraries/phpseclib@%{_datadir}/pear@" \ |
110 |
|
|
%endif |
111 |
|
|
-i libraries/vendor_config.php |
112 |
|
|
|
113 |
|
|
# Remove bundled libraries |
114 |
|
|
%if 0%{?gettext} |
115 |
|
|
rm -rf libraries/php-gettext/ |
116 |
|
|
%endif |
117 |
|
|
|
118 |
|
|
%if 0%{?tcpdf} |
119 |
|
|
rm -rf libraries/tcpdf/ |
120 |
|
|
%endif |
121 |
|
|
|
122 |
|
|
%if 0%{?mcrypt}%{?seclib} |
123 |
|
|
rm -rf libraries/phpseclib/ |
124 |
|
|
%endif |
125 |
|
|
|
126 |
|
|
# Remove sources of JavaScript library |
127 |
|
|
rm -rf js/jquery/src/ |
128 |
|
|
|
129 |
|
|
# Remove files related to Flash file (*.swf) |
130 |
|
|
rm -f js/canvg/flashcanvas.{js,swf} |
131 |
|
|
|
132 |
|
|
%build |
133 |
|
|
|
134 |
|
|
%install |
135 |
|
|
rm -rf $RPM_BUILD_ROOT |
136 |
|
|
mkdir -p $RPM_BUILD_ROOT{%{optdatadir}/%{pkgnameV},%{_sysconfdir}/{httpd/conf.d,%{pkgnameV}}}/ |
137 |
|
|
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/%{pkgnameV}/{upload,save,config}/ |
138 |
|
|
cp -ad * $RPM_BUILD_ROOT%{optdatadir}/%{pkgnameV}/ |
139 |
|
|
install -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/%{pkgnameV}.conf |
140 |
|
|
install -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/%{pkgnameV}/config.inc.php |
141 |
|
|
|
142 |
|
|
rm -f $RPM_BUILD_ROOT%{optdatadir}/%{pkgnameV}/{[CDLR]*,*.txt,config.sample.inc.php} |
143 |
|
|
rm -rf $RPM_BUILD_ROOT%{optdatadir}/%{pkgnameV}/{doc,examples}/ |
144 |
|
|
rm -f doc/html/.buildinfo |
145 |
|
|
|
146 |
|
|
mkdir -p $RPM_BUILD_ROOT%{optdatadir}/%{pkgnameV}/doc/ |
147 |
|
|
ln -s ../../..%{_pkgdocdir}/html/ $RPM_BUILD_ROOT%{optdatadir}/%{pkgnameV}/doc/html |
148 |
|
|
mv -f config.sample.inc.php examples/ |
149 |
|
|
|
150 |
|
|
%clean |
151 |
|
|
rm -rf $RPM_BUILD_ROOT |
152 |
|
|
|
153 |
|
|
%post |
154 |
|
|
# Generate a secret key for this installation |
155 |
|
|
sed -e "/'blowfish_secret'/s/MUSTBECHANGEDONINSTALL/$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)/" \ |
156 |
|
|
-i %{_sysconfdir}/%{pkgnameV}/config.inc.php |
157 |
|
|
|
158 |
|
|
%files |
159 |
|
|
%defattr(-,root,root,-) |
160 |
|
|
%doc ChangeLog README LICENSE doc/html/ examples/ |
161 |
|
|
%{optdatadir}/%{pkgnameV}/ |
162 |
|
|
%dir %attr(0750,root,apache) %{_sysconfdir}/%{pkgnameV}/ |
163 |
|
|
%config(noreplace) %attr(0640,root,apache) %{_sysconfdir}/%{pkgnameV}/config.inc.php |
164 |
|
|
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{pkgnameV}.conf |
165 |
|
|
%dir %{_localstatedir}/lib/%{pkgnameV}/ |
166 |
|
|
%dir %attr(0750,apache,apache) %{_localstatedir}/lib/%{pkgnameV}/upload/ |
167 |
|
|
%dir %attr(0750,apache,apache) %{_localstatedir}/lib/%{pkgnameV}/save/ |
168 |
|
|
%dir %attr(0750,apache,apache) %{_localstatedir}/lib/%{pkgnameV}/config/ |
169 |
|
|
|
170 |
|
|
%changelog |
171 |
|
|
* Wed Dec 06 2017 Jean-Philipe Pialasse <tests@pialasse.com> 4.7.6-1.sme |
172 |
|
|
- import newer version of phpmyadmin [SME: 10474] |
173 |
|
|
- using upstream epel spec file for this fork |
174 |
|
|
|