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 |
|