]> git.pld-linux.org Git - packages/phpPgAdmin.git/blobdiff - phpPgAdmin.spec
- upgraded to 5.0.2
[packages/phpPgAdmin.git] / phpPgAdmin.spec
index f6c9c81c11f8e1e8f42abd01f834639d64a47bb9..d60c368a22356be13d4ab22d360af32f702ee13c 100644 (file)
+# TODO
+# - separate internal files (classes, libraries) and public files (.js, .css,
+#   index.php) to htdocs and above and point docroot to htdocs dir
 Summary:       phpPgAdmin - web-based PostgreSQL administration
-Summary(pl):   phpPgAdmin - administracja bazami PostgreSQL przez WWW
+Summary(pl.UTF-8):     phpPgAdmin - administracja bazami PostgreSQL przez WWW
 Name:          phpPgAdmin
-Version:       3.5.1
+Version:       5.0.2
 Release:       1
 License:       GPL v2+
 Group:         Applications/Databases/Interfaces
 Source0:       http://dl.sourceforge.net/phppgadmin/%{name}-%{version}.tar.bz2
-# Source0-md5: 002ce3f34b06472eb1b35c8423b5b0e5
-Source1:       %{name}.conf
-URL:           http://sourceforge.net/projects/phppgadmin/
-Requires:      php >= 4.1
-Requires:      php-pcre
-Requires:      php-pgsql >= 4.1
-Requires:      webserver
+# Source0-md5: 4e4d462100ed602d4f6c9b47b1586aba
+Source1:       %{name}-apache.conf
+Source2:       %{name}-lighttpd.conf
+Source3:       http://www.quarto.pl/~gotar/%{name}-jscalendar.tar.bz2
+# Source3-md5: 84115f772a723cc742352c589df9af29
+Patch0:                %{name}-config.patch
+#Patch1:       %{name}-adodb.patch
+Patch2:                %{name}-calendar.patch
+URL:           http://phppgadmin.sourceforge.net/
+BuildRequires: rpmbuild(macros) >= 1.268
+Requires(triggerpostun):       sed >= 4.0
+#Requires:     adodb >= 4.67-1.17
+Requires:      php(pcre)
+Requires:      php(pgsql)
+Requires:      php(session)
+Requires:      webapps
+Requires:      webserver(php) >= 5.0
 BuildArch:     noarch
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define                _pgadmindir     %{_datadir}/%{name}
-%define                _config_http    /etc/httpd
+%define                _appdir         %{_datadir}/%{name}
+%define                _webapps        /etc/webapps
+%define                _webapp         %{name}
+%define                _sysconfdir     %{_webapps}/%{_webapp}
 
 %description
 phpPgAdmin is a fully functional web-based administration utility for
 a PostgreSQL database server. It handles all the basic functionality
 as well as some advanced features such as triggers, views and
-functions (stored procs).
+functions (stored procedures).
 
-%description -l pl
-phpPgAdmin jest w pe³ni funkcjonalnym, bazowanym na WWW, narzêdziem
+%description -l pl.UTF-8
+phpPgAdmin jest w pełni funkcjonalnym, bazowanym na WWW, narzędziem
 administracyjnym dla serwera baz danych PostgreSQL. Posiada wszystkie
-podstawowe mo¿liwo¶ci, jak i czê¶æ bardziej zaawansowanych jak
-prze³±czniki, widoki i funkcje (procedury sk³adowane).
+podstawowe możliwości, jak i część bardziej zaawansowanych jak
+przełączniki, widoki i funkcje (procedury składowane).
 
 %prep
-%setup -q -n phpPgAdmin
+%setup -q -a3
+%patch0 -p1
+#%patch1 -p1
+%patch2 -p1
+mv conf/config.inc.php{-dist,}
+find . -name \*.orig -exec rm -f \{\} \;
+
+# remove language source files (or one wants to make -devel subpackage?)
+mv -f lang/translations.php .
+rm -f lang/*.php
+rm -f lang/{Makefile,synch,php2po,po2php,langcheck,convert.awk}
+mv -f translations.php lang/translations.php
+rm -f lang/recoded/README
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_pgadmindir}/{classes/{HTML_TreeMenu/images,database},help,images/themes/default,lang/recoded,libraries/adodb/{datadict,drivers},sql,themes/default},/etc/{%{name},httpd/httpd.conf}}
-
-install *.php *.js *.txt               $RPM_BUILD_ROOT%{_pgadmindir}
-install classes/*.php                  $RPM_BUILD_ROOT%{_pgadmindir}/classes
-install classes/HTML_TreeMenu/TreeMenu.* $RPM_BUILD_ROOT%{_pgadmindir}/classes/HTML_TreeMenu
-install classes/HTML_TreeMenu/images/* $RPM_BUILD_ROOT%{_pgadmindir}/classes/HTML_TreeMenu/images
-install classes/database/*.php         $RPM_BUILD_ROOT%{_pgadmindir}/classes/database
-install images/themes/default/*.png    $RPM_BUILD_ROOT%{_pgadmindir}/images/themes/default
-install lang/*.php                     $RPM_BUILD_ROOT%{_pgadmindir}/lang
-install lang/recoded/*.php             $RPM_BUILD_ROOT%{_pgadmindir}/lang/recoded
-install libraries/*.php                        $RPM_BUILD_ROOT%{_pgadmindir}/libraries
-install libraries/adodb/*.php          $RPM_BUILD_ROOT%{_pgadmindir}/libraries/adodb
-install libraries/adodb/datadict/*.php $RPM_BUILD_ROOT%{_pgadmindir}/libraries/adodb/datadict
-install libraries/adodb/drivers/*.php  $RPM_BUILD_ROOT%{_pgadmindir}/libraries/adodb/drivers
-install sql/*.sql                      $RPM_BUILD_ROOT%{_pgadmindir}/sql
-install themes/default/*.css           $RPM_BUILD_ROOT%{_pgadmindir}/themes/default
-# DONT MARK IT AS %DOC
-install        help/*.php                      $RPM_BUILD_ROOT%{_pgadmindir}/help
-install conf/*.php                     $RPM_BUILD_ROOT/etc/%{name}
-ln -s /etc/%{name}                     $RPM_BUILD_ROOT%{_pgadmindir}/conf
-
-install %{SOURCE1}                     $RPM_BUILD_ROOT%{_config_http}/%{name}.conf
+install -d $RPM_BUILD_ROOT{%{_appdir},%{_sysconfdir}}
 
-%clean
-rm -rf $RPM_BUILD_ROOT
+cp -a *.php *.txt *.js $RPM_BUILD_ROOT%{_appdir}
+cp -a classes help images js lang libraries themes xloadtree $RPM_BUILD_ROOT%{_appdir}
+cp -a conf/*.php $RPM_BUILD_ROOT%{_sysconfdir}
+
+install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
+install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
+install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
+
+%triggerin -- apache1 < 1.3.37-3, apache1-base
+%webapp_register apache %{_webapp}
+
+%triggerun -- apache1 < 1.3.37-3, apache1-base
+%webapp_unregister apache %{_webapp}
+
+%triggerin -- apache < 2.2.0, apache-base
+%webapp_register httpd %{_webapp}
 
-%post
-if [ -f /etc/httpd/httpd.conf ] && ! grep -q "^Include.*%{name}.conf" /etc/httpd/httpd.conf; then
-       echo "Include /etc/httpd/%{name}.conf" >> /etc/httpd/httpd.conf
-elif [ -d /etc/httpd/httpd.conf ]; then
-       ln -sf /etc/httpd/%{name}.conf /etc/httpd/httpd.conf/99_%{name}.conf
+%triggerun -- apache < 2.2.0, apache-base
+%webapp_unregister httpd %{_webapp}
+
+%triggerin -- lighttpd
+%webapp_register lighttpd %{_webapp}
+
+%triggerun -- lighttpd
+%webapp_unregister lighttpd %{_webapp}
+
+%triggerpostun -- %{name} < 4.0.1-1.2
+# rescue app config
+if [ -f /etc/phpPgAdmin/config.inc.php.rpmsave ]; then
+       mv -f %{_sysconfdir}/config.inc.php{,.rpmnew}
+       mv -f /etc/phpPgAdmin/config.inc.php.rpmsave %{_sysconfdir}/config.inc.php
 fi
-if [ -f /var/lock/subsys/httpd ]; then
-       /usr/sbin/apachectl restart 1>&2
+
+# nuke very-old config location (this mostly for Ra)
+if [ -f /etc/httpd/httpd.conf ]; then
+       sed -i -e "/^Include.*phpPgAdmin.conf/d" /etc/httpd/httpd.conf
+       httpd_reload=1
 fi
 
-%preun
-if [ "$1" = "0" ]; then
-       umask 027
-       if [ -d /etc/httpd/httpd.conf ]; then
-               rm -f /etc/httpd/httpd.conf/99_%{name}.conf
-       else
-               grep -v "^Include.*%{name}.conf" /etc/httpd/httpd.conf > \
-                       /etc/httpd/httpd.conf.tmp
-               mv -f /etc/httpd/httpd.conf.tmp /etc/httpd/httpd.conf
-               if [ -f /var/lock/subsys/httpd ]; then
-                       /usr/sbin/apachectl restart 1>&2
-               fi
+# change config version number for 4.1.2
+if [ -f /etc/webapps/phpPgAdmin/config.inc.php ]; then
+       echo "Adjusting configuration for phpPgAdmin 4.1.2"
+       sed -i -e '/conf.*version/s/[0-9][0-9][\t ]*;/17;/' /etc/webapps/phpPgAdmin/config.inc.php
+fi
+
+# migrate from httpd (apache2) config dir
+if [ -f /etc/httpd/phpPgAdmin.conf.rpmsave ]; then
+       cp -f %{_sysconfdir}/httpd.conf{,.rpmnew}
+       mv -f /etc/httpd/phpPgAdmin.conf.rpmsave %{_sysconfdir}/httpd.conf
+       httpd_reload=1
+fi
+
+# migrate from apache-config macros
+if [ -f /etc/phpPgAdmin/apache-phpPgAdmin.conf.rpmsave ]; then
+       if [ -d /etc/apache/webapps.d ]; then
+               cp -f %{_sysconfdir}/apache.conf{,.rpmnew}
+               cp -f /etc/phpPgAdmin/apache-phpPgAdmin.conf.rpmsave %{_sysconfdir}/apache.conf
+       fi
+
+       if [ -d /etc/httpd/webapps.d ]; then
+               cp -f %{_sysconfdir}/httpd.conf{,.rpmnew}
+               cp -f /etc/phpPgAdmin/apache-phpPgAdmin.conf.rpmsave %{_sysconfdir}/httpd.conf
        fi
+       rm -f /etc/phpPgAdmin/apache-phpPgAdmin.conf.rpmsave
 fi
 
+# place new config location, as trigger puts config only on first install, do it here.
+# apache1
+if [ -L /etc/apache/conf.d/99_phpPgAdmin.conf ]; then
+       rm -f /etc/apache/conf.d/99_phpPgAdmin.conf
+       /usr/sbin/webapp register apache %{_webapp}
+       apache_reload=1
+fi
+# apache2
+if [ -L /etc/httpd/httpd.conf/99_phpPgAdmin.conf ]; then
+       rm -f /etc/httpd/httpd.conf/99_phpPgAdmin.conf
+       /usr/sbin/webapp register httpd %{_webapp}
+       httpd_reload=1
+fi
+
+if [ "$httpd_reload" ]; then
+       %service httpd reload
+fi
+if [ "$apache_reload" ]; then
+       %service apache reload
+fi
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
 %files
 %defattr(644,root,root,755)
 %doc CREDITS DEVELOPERS FAQ HISTORY INSTALL TODO TRANSLATORS
-%dir /etc/%{name}
-%attr(640,root,http) %config(noreplace) %verify(not size mtime md5) /etc/%{name}/*
-%config(noreplace) %verify(not size mtime md5) %{_config_http}/%{name}.conf
-%{_pgadmindir}
+%doc sql
+%dir %attr(750,root,http) %{_sysconfdir}
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
+%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.php
+
+%{_appdir}
This page took 0.106825 seconds and 4 git commands to generate.