]> git.pld-linux.org Git - packages/lms.git/blobdiff - lms.spec
- release 11 (by relup.sh)
[packages/lms.git] / lms.spec
index 81fb71e43160c897bd1563fd0eac28a69c8d02f1..9454c02d38ff72339744adb917db59a5fced67d5 100644 (file)
--- a/lms.spec
+++ b/lms.spec
@@ -1,30 +1,31 @@
-# TODO
+# TODO:
+# - package documents/templates/default
 # - cosmetics (sort in %%files and %%install)
-# - contrib split
+# - consider contrib and samples (re)packaging
 #
 # Conditional build:
 %bcond_without lmsd            # without lmsd daemon
 %bcond_with    lmsd_debug      # with lmsd debugging
 
 %define                lmsver          1.11
-%define                lmssubver       12
+%define                lmssubver       13
 Summary:       LAN Managment System
 Summary(pl.UTF-8):     System Zarządzania Siecią Lokalną
 Name:          lms
 Version:       %{lmsver}.%{lmssubver}
-Release:       3
+Release:       11
 License:       GPL v2
 Group:         Networking/Utilities
 Source0:       http://www.lms.org.pl/download/%{lmsver}/%{name}-%{version}.tar.gz
-# Source0-md5: 484a02ea6e8d493b7906ea8246492b64
-Source1:       %{name}.conf
-Source2:       %{name}.init
-Source3:       %{name}.sysconfig
+# Source0-md5: 294899358ae2585a4030580d79a06ee8
+Source1:       %{name}.init
+Source2:       %{name}.sysconfig
+Source3:       %{name}-apache.conf
+Source4:       %{name}-httpd.conf
 Patch0:                %{name}-PLD.patch
 Patch1:                %{name}-amd64.patch
 Patch2:                %{name}-smarty.patch
-Patch3:                %{name}-quicksearch.php.patch
-Patch4:                %{name}-promotionlist.php.patch
+Patch3:                build.patch
 URL:           http://www.lms.org.pl/
 BuildRequires: bison
 BuildRequires: flex
@@ -47,28 +48,29 @@ Requires:   webapps
 Requires:      webserver(access)
 Requires:      webserver(alias)
 Requires:      webserver(php)
+Conflicts:     apache-base < 2.4.0-1
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _sysconfdir     /etc/%{name}
-%define                _lmsdir         %{_datadir}/%{name}
-%define                _lmsvar         /var/lib/%{name}
-%define                _smartyplugindir        %{php_data_dir}/Smarty/plugins
 %define                _webapps        /etc/webapps
 %define                _webapp         %{name}
+%define                _smartyplugindir        %{php_data_dir}/Smarty/plugins
+%define                _lmsdir         %{_datadir}/%{name}
+%define                _lmsvar         /var/lib/%{name}
 
 %description
 This is a package of applications in PHP and Perl for managing LANs.
 It's using MySQL or PostgreSQL. The main goal is to get the best
 service of users at provider's level. The main features in LMS are:
 - database of users (name, surname, address, telephone number,
-  commentary);
-- database of computers (IP, MAC);
-- easy-ridden financial system and funds of network;
-- different subscriptions;
-- sending warnings to users;
-- many levels of access for LMS administrators;
+  commentary),
+- database of computers (IP, MAC),
+- easy-ridden financial system and funds of network,
+- different subscriptions,
+- sending warnings to users,
+- many levels of access for LMS administrators,
 - autogenerating ipchains, iptables, dhcpd, ethers file, oidentd,
-  openbsd packet filter configuration files/scripts;
+  openbsd packet filter configuration files/scripts,
 - autogenerating almost any kind of config file using templates.
 
 %description -l pl.UTF-8
@@ -80,16 +82,16 @@ uzyskanie jakości usług oraz obsługi użytkowników na poziomie
 providera z prawdziwego zdarzenia. Najbardziej podstawowe cechy LMS
 to:
 - baza danych użytkowników (imię, nazwisko, adres, numer telefonu,
-  uwagi);
-- baza danych komputerów (adres IP, adres MAC);
+  uwagi),
+- baza danych komputerów (adres IP, adres MAC),
 - prowadzenie prostego rachunku operacji finansowych oraz stanu
-  funduszów sieci;
-- różne taryfy abonamentowe;
-- wysyłanie pocztą elektroniczną upomnień do użytkowników;
-- automatyczne naliczanie opłat miesięcznych;
-- różne poziomy dostępu do funkcji LMS dla administratorów;
+  funduszów sieci,
+- różne taryfy abonamentowe,
+- wysyłanie pocztą elektroniczną upomnień do użytkowników,
+- automatyczne naliczanie opłat miesięcznych,
+- różne poziomy dostępu do funkcji LMS dla administratorów,
 - generowanie reguł i plików konfiguracyjnych dla ipchains, iptables,
-  dhcpd, oidentd, packet filtra openbsd, wpisów /etc/ethers
+  dhcpd, oidentd, packet filtra openbsd, wpisów /etc/ethers,
 - generowanie praktycznie każdego pliku konfiguracyjnego na podstawie
   danych w bazie przy użyciu prostych szablonów.
 
@@ -187,22 +189,20 @@ formularza przelewu.
 %endif
 %patch2 -p1
 %patch3 -p1
-%patch4 -p0
 
 mkdir smarty-plugins
-mv \
-lib/Smarty/plugins/block.t.php \
-lib/Smarty/plugins/function.{bankaccount,gentime,handle,memory,number,size,sum,tip}.php \
-lib/Smarty/plugins/modifier.{money_format,striphtml,to_words}.php \
+%{__mv} \
+       lib/Smarty/plugins/block.t.php \
+       lib/Smarty/plugins/function.{bankaccount,gentime,handle,memory,number,size,sum,tip}.php \
+       lib/Smarty/plugins/modifier.{money_format,striphtml,to_words}.php \
        smarty-plugins
-rm -rf lib/Smarty
+%{__rm} -r lib/Smarty
 
 # cleanup backups after patching
-find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
+find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 %{__rm}
 
 %build
 %if %{with lmsd}
-
 cd daemon
 
 ./configure --with-mysql %{?with_lmsd_debug:--enable-debug0 --enable-debug1}
@@ -217,71 +217,60 @@ mv lmsd lmsd-mysql
        CFLAGS='%{rpmcflags} -fPIC -DUSE_PGSQL -DLMS_LIB_DIR=\"%{_libdir}/lms/\" -I../..'
 mv lmsd lmsd-pgsql
 
+CFLAGS="%{rpmcflags}" %{__make} -j1 -C modules/parser \
+       CC='%{__cc}'
+
 cd ..
 %endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_sbindir} \
-          $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig} \
-          $RPM_BUILD_ROOT/etc/lms/modules/{dns,ggnofity,nofity} \
-          $RPM_BUILD_ROOT{%{_lmsvar}/{backups,templates_c,documents},%{_libdir}/lms} \
-          $RPM_BUILD_ROOT%{_lmsdir}/www/{img,doc,user} \
-          $RPM_BUILD_ROOT%{_lmsdir}/www/img/core \
-          $RPM_BUILD_ROOT%{_smartyplugindir}
-
-install *.php $RPM_BUILD_ROOT%{_lmsdir}/www
-install img/core/* $RPM_BUILD_ROOT%{_lmsdir}/www/img/core/*
-install img/*.gif $RPM_BUILD_ROOT%{_lmsdir}/www/img
-install img/*.jpg $RPM_BUILD_ROOT%{_lmsdir}/www/img
-install img/*.png $RPM_BUILD_ROOT%{_lmsdir}/www/img
-install img/*.css $RPM_BUILD_ROOT%{_lmsdir}/www/img
-install img/*.js $RPM_BUILD_ROOT%{_lmsdir}/www/img
-install img/*.fdb $RPM_BUILD_ROOT%{_lmsdir}/www/img
+install -d $RPM_BUILD_ROOT{%{_sbindir},%{_libdir}/%{name},%{_webapps}/%{_webapp}} \
+       $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,lms/modules} \
+       $RPM_BUILD_ROOT%{_smartyplugindir} \
+       $RPM_BUILD_ROOT%{_lmsdir}/{lms,userpanel,www/{doc,user,userpanel/modules}} \
+       $RPM_BUILD_ROOT%{_lmsvar}/{backups,documents,templates_c,userpanel/templates_c}
+
+cp -a *.php img $RPM_BUILD_ROOT%{_lmsdir}/www
 cp -a doc/html $RPM_BUILD_ROOT%{_lmsdir}/www/doc
-cp -a lib contrib modules templates sample $RPM_BUILD_ROOT%{_lmsdir}
-install bin/* $RPM_BUILD_ROOT%{_sbindir}
+cp -a contrib lib modules sample templates $RPM_BUILD_ROOT%{_lmsdir}
 cp -a smarty-plugins/* $RPM_BUILD_ROOT%{_smartyplugindir}
+cp -a bin/* $RPM_BUILD_ROOT%{_sbindir}
 
-install sample/%{name}.ini $RPM_BUILD_ROOT%{_sysconfdir}
+%{__mv} $RPM_BUILD_ROOT{%{_lmsdir}/sample/%{name}.ini,%{_sysconfdir}}
 
-install -d $RPM_BUILD_ROOT%{_webapps}/%{_webapp}
-install %{SOURCE1} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/apache.conf
-install %{SOURCE1} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/httpd.conf
+install %{SOURCE3} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/apache.conf
+install %{SOURCE4} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/httpd.conf
 
 # sqlpanel
-install contrib/sqlpanel/sql.php $RPM_BUILD_ROOT%{_lmsdir}/modules
-install contrib/sqlpanel/*.html $RPM_BUILD_ROOT%{_lmsdir}/templates
+%{__mv} $RPM_BUILD_ROOT%{_lmsdir}/{contrib/sqlpanel/sql*.php,modules}
+%{__mv} $RPM_BUILD_ROOT%{_lmsdir}/{contrib/sqlpanel/*.html,templates}
 
 # user
-cp -r contrib/customer/* $RPM_BUILD_ROOT%{_lmsdir}/www/user
+%{__mv} $RPM_BUILD_ROOT%{_lmsdir}/{contrib/customer/*,www/user}
 
 # daemon
 %if %{with lmsd}
-install daemon/lmsd-* $RPM_BUILD_ROOT%{_sbindir}
-install daemon/modules/*/*.so $RPM_BUILD_ROOT%{_libdir}/lms
-cp -r daemon/modules/dns/sample $RPM_BUILD_ROOT%{_sysconfdir}/modules/dns
-cp -r daemon/modules/ggnotify/sample $RPM_BUILD_ROOT%{_sysconfdir}/modules/ggnotify
-cp -r daemon/modules/dns/sample $RPM_BUILD_ROOT%{_sysconfdir}/modules/nofity
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/lmsd
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
+install daemon/lmsd-*sql $RPM_BUILD_ROOT%{_sbindir}
+install daemon/modules/*/*.so $RPM_BUILD_ROOT%{_libdir}/%{name}
+for module in dns ggnotify notify; do
+       cp -a daemon/modules/$module/sample $RPM_BUILD_ROOT%{_sysconfdir}/modules/$module
+done
+install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/lmsd
+install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
 %endif
 
 #userpanel
-install -d $RPM_BUILD_ROOT%{_lmsdir}/userpanel
-install -d $RPM_BUILD_ROOT%{_lmsdir}/www/userpanel/modules
-install -d $RPM_BUILD_ROOT%{_lmsvar}/userpanel/templates_c
-
-cp -R {userpanel/lib,userpanel/modules,userpanel/templates}           $RPM_BUILD_ROOT%{_lmsdir}/userpanel
-cp -R {userpanel/index.php,userpanel/style}                 $RPM_BUILD_ROOT%{_lmsdir}/www/userpanel
-ln -s %{_lmsdir}/www/userpanel/style    $RPM_BUILD_ROOT%{_lmsdir}/userpanel
-ln -s %{_lmsvar}/userpanel/templates_c  $RPM_BUILD_ROOT%{_lmsdir}/userpanel
+cp -a userpanel/{lib,modules,templates} $RPM_BUILD_ROOT%{_lmsdir}/userpanel
+cp -a userpanel/{index.php,style} $RPM_BUILD_ROOT%{_lmsdir}/www/userpanel
+ln -s %{_lmsdir}/www/userpanel/style   $RPM_BUILD_ROOT%{_lmsdir}/userpanel
+ln -s %{_lmsvar}/userpanel/templates_c $RPM_BUILD_ROOT%{_lmsdir}/userpanel
 
 for MODULE in $RPM_BUILD_ROOT%{_lmsdir}/userpanel/modules/*; do
-    MODULE=$(basename $MODULE)
-    mkdir $RPM_BUILD_ROOT%{_lmsdir}/www/userpanel/modules/$MODULE
-    ln -s %{_lmsdir}/userpanel/modules/$MODULE/style    \
-        $RPM_BUILD_ROOT%{_lmsdir}/www/userpanel/modules/$MODULE
+       MODULE=$(basename $MODULE)
+       mkdir $RPM_BUILD_ROOT%{_lmsdir}/www/userpanel/modules/$MODULE
+       ln -s %{_lmsdir}/userpanel/modules/$MODULE/style \
+               $RPM_BUILD_ROOT%{_lmsdir}/www/userpanel/modules/$MODULE
 done
 
 %clean
@@ -303,10 +292,10 @@ fi
 %triggerun -- apache1 < 1.3.37-3, apache1-base
 %webapp_unregister apache %{_webapp}
 
-%triggerin -- apache < 2.2.0, apache-base
+%triggerin -- apache-base
 %webapp_register httpd %{_webapp}
 
-%triggerun -- apache < 2.2.0, apache-base
+%triggerun -- apache-base
 %webapp_unregister httpd %{_webapp}
 
 %files
@@ -317,48 +306,42 @@ fi
 %dir %attr(750,root,http) %{_webapps}/%{_webapp}
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/apache.conf
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/httpd.conf
-%{_smartyplugindir}/*
+%{_smartyplugindir}/*.php
 #
 %dir %{_lmsvar}
 %attr(770,root,http) %{_lmsvar}/backups
-%attr(770,root,http) %{_lmsvar}/templates_c
 %attr(770,root,http) %{_lmsvar}/documents
+%attr(770,root,http) %{_lmsvar}/templates_c
 #
 %dir %{_lmsdir}
-%{_lmsdir}/www
-%exclude %{_lmsdir}/www/user
-%exclude %{_lmsdir}/www/userpanel
 %{_lmsdir}/lib
 %{_lmsdir}/modules
 %exclude %{_lmsdir}/modules/sql.php
+%exclude %{_lmsdir}/modules/sqllang.php
+%{_lmsdir}/templates
+%exclude %{_lmsdir}/templates/sql.html
+%exclude %{_lmsdir}/templates/sqlprint.html
+%{_lmsdir}/www
+%exclude %{_lmsdir}/www/user
+%exclude %{_lmsdir}/www/userpanel
 %{_lmsdir}/contrib
 %dir %{_lmsdir}/sample
 %{_lmsdir}/sample/crontab-entry
-%{_lmsdir}/sample/lms-mgc-netx-sample.ini
-%{_lmsdir}/sample/lms-mgc.ini
-%{_lmsdir}/sample/lms.apache.conf
-%{_lmsdir}/sample/lms.ini
-%{_lmsdir}/sample/mailtemplate.txt
-%{_lmsdir}/sample/mailtemplate_en.txt
-%{_lmsdir}/sample/radius-sql.conf
+%{_lmsdir}/sample/lms-mgc*.ini
+%{_lmsdir}/sample/*.conf
+%{_lmsdir}/sample/*.txt
 %{_lmsdir}/sample/rc.lmsd
 %{_lmsdir}/sample/rc.reminder_1st
-%{_lmsdir}/sample/smstemplate.txt
-%{_lmsdir}/sample/tekst_1.txt
-%{_lmsdir}/sample/test.txt
 %attr(755,root,root) %{_lmsdir}/sample/traffic_ipt.pl
 
-%{_lmsdir}/templates
-%exclude %{_lmsdir}/templates/sql.html
-%exclude %{_lmsdir}/templates/sqlprint.html
-
 %files scripts
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_sbindir}/*
+%attr(755,root,root) %{_sbindir}/lms-*
 
 %files sqlpanel
 %defattr(644,root,root,755)
 %{_lmsdir}/modules/sql.php
+%{_lmsdir}/modules/sqllang.php
 %{_lmsdir}/templates/sql.html
 %{_lmsdir}/templates/sqlprint.html
 
@@ -369,7 +352,7 @@ fi
 %if %{with lmsd}
 %files lmsd
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_sbindir}/lmsd-*
+%attr(755,root,root) %{_sbindir}/lmsd-*sql
 %dir %{_libdir}/lms
 %attr(755,root,root) %{_libdir}/lms/*.so
 %attr(754,root,root) /etc/rc.d/init.d/lmsd
This page took 0.084741 seconds and 4 git commands to generate.