%define name openser %define ver 0.9.5 %define rel 0 %define EXCLUDED_MODULES mysql jabber cpl-c avp_radius auth_radius group_radius uri_radius postgress pa %define MYSQL_MODULES mysql %define JABBER_MODULES jabber %define CPL_MODULES cpl-c %define RADIUS_MODULES avp_radius auth_radius group_radius uri_radius %define RADIUS_MOD_PATH modules/avp_radius modules/auth_radius modules/group_radius modules/uri_radius Summary: Open SIP Express Router, very fast and flexible SIP Proxy Name: %name Version: %ver Release: %rel Packager: Daniel-Constantin Mierla Copyright: GPL Group: Networking/Daemons Source: http://openser.org/pub/openser/stable/%{name}-%{ver}_src.tar.gz Source2: openser.init.SuSE URL: http://www.openser.org/ Vendor: Voice-System.RO BuildRoot: /var/tmp/%{name}-%{ver}-root Conflicts: openser < %ver, openser-mysql < %ver, openser-jabber < %ver, openser-radius < %ver BuildPrereq: make flex bison %description OpenSER or Open SIP Express Router is a very fast and flexible SIP (RFC3621) proxy server. Written entirely in C, ser can handle thousands calls per second even on low-budget hardware. A C Shell like scripting language provides full control over the server's behaviour. It's modular architecture allows only required functionality to be loaded. Currently the following modules are available: digest authentication, CPL scripts, instant messaging, MySQL support, a presence agent, radius authentication, record routing, an SMS Gateway, a jabber gateway, a transaction module, registrar and user location. %package mysql Summary: MySQL connectivity for the Open SIP Express Router. Group: System Environment/Daemons Requires: openser = %ver BuildPrereq: mysql-devel zlib-devel %description mysql The openser-mysql package contains MySQL database connectivity that you need to use digest authentication module or persistent user location entries. %package jabber Summary: sip jabber message translation support for the Open SIP Express Router. Group: System Environment/Daemons Requires: openser = %ver BuildPrereq: expat %description jabber The openser-jabber package contains a sip to jabber message translator. %package cpl Summary: CPL interpreter engine for the Open SIP Express Router. Group: System Environment/Daemons Requires: openser = %ver BuildPrereq: libxml2-devel %description cpl The openser-cpl package contains a CPL interpreter engine. #%package radius #Summary: openser radius authentication, group and uri check modules. #Group: System Environment/Daemons #Requires: openser = %ver #BuildPrereq: radiusclient #%description radius #The openser-radius package contains modules for radius authentication, group # membership and uri checking. %prep %setup %build make all skip_modules="%EXCLUDED_MODULES" cfg-target=/%{_sysconfdir}/openser/ make modules modules="modules/%MYSQL_MODULES" cfg-target=/%{_sysconfdir}/openser/ make modules modules="modules/%JABBER_MODULES" cfg-target=/%{_sysconfdir}/openser/ make modules modules="modules/%CPL_MODULES" cfg-target=/%{_sysconfdir}/openser/ #make modules modules="%RADIUS_MOD_PATH" cfg-target=/%{_sysconfdir}/openser/ %install [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "$RPM_BUILD_ROOT" make install skip_modules="%EXCLUDED_MODULES" \ basedir=$RPM_BUILD_ROOT \ prefix=/usr \ cfg-prefix=$RPM_BUILD_ROOT \ cfg-target=/%{_sysconfdir}/openser/ \ doc-prefix=$RPM_BUILD_ROOT \ doc-dir=/%{_docdir}/openser/ make install-modules modules="modules/%MYSQL_MODULES" \ basedir=$RPM_BUILD_ROOT \ prefix=/usr \ cfg-prefix=$RPM_BUILD_ROOT \ cfg-target=/%{_sysconfdir}/openser/ \ doc-prefix=$RPM_BUILD_ROOT \ doc-dir=/%{_docdir}/openser/ make install-modules modules="modules/%JABBER_MODULES" \ basedir=$RPM_BUILD_ROOT \ prefix=/usr \ cfg-prefix=$RPM_BUILD_ROOT \ cfg-target=/%{_sysconfdir}/openser/ \ doc-prefix=$RPM_BUILD_ROOT \ doc-dir=/%{_docdir}/openser/ make install-modules modules="modules/%CPL_MODULES" \ basedir=$RPM_BUILD_ROOT \ prefix=/usr \ cfg-prefix=$RPM_BUILD_ROOT \ cfg-target=/%{_sysconfdir}/openser/ \ doc-prefix=$RPM_BUILD_ROOT \ doc-dir=/%{_docdir}/openser/ #make install-modules modules="%RADIUS_MOD_PATH" \ # basedir=$RPM_BUILD_ROOT \ # prefix=/usr \ # cfg-prefix=$RPM_BUILD_ROOT \ # cfg-target=/%{_sysconfdir}/openser/ \ # doc-prefix=$RPM_BUILD_ROOT \ # doc-dir=/%{_docdir}/openser/ make install-doc modules="modules/%JABBER_MODULES" \ basedir=$RPM_BUILD_ROOT \ prefix=/usr \ doc-prefix=$RPM_BUILD_ROOT \ doc-dir=/%{_docdir}/openser/ make install-doc modules="modules/%CPL_MODULES" \ basedir=$RPM_BUILD_ROOT \ prefix=/usr \ doc-prefix=$RPM_BUILD_ROOT \ doc-dir=/%{_docdir}/openser/ #make install-doc modules="%RADIUS_MOD_PATH" \ # basedir=$RPM_BUILD_ROOT \ # prefix=/usr \ # doc-prefix=$RPM_BUILD_ROOT \ # doc-dir=/%{_docdir}/openser/ mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/init.d install -m755 $RPM_SOURCE_DIR/openser.init.SuSE \ $RPM_BUILD_ROOT/%{_sysconfdir}/init.d/openser %clean rm -rf "$RPM_BUILD_ROOT" %post sbin/insserv etc/init.d/openser %preun if [ $1 = 0 ]; then etc/init.d/openser stop > /dev/null 2>&1 fi %postun sbin/insserv etc/init.d/ %files %defattr(-,root,root) %dir %{_docdir}/openser %doc %{_docdir}/openser/AUTHORS %doc %{_docdir}/openser/NEWS %doc %{_docdir}/openser/INSTALL %doc %{_docdir}/openser/README %doc %{_docdir}/openser/README-MODULES %doc %{_docdir}/openser/README.acc %doc %{_docdir}/openser/README.alias_db %doc %{_docdir}/openser/README.avpops %doc %{_docdir}/openser/README.auth %doc %{_docdir}/openser/README.auth_db %doc %{_docdir}/openser/README.auth_diameter %doc %{_docdir}/openser/README.dbtext %doc %{_docdir}/openser/README.dispatcher %doc %{_docdir}/openser/README.diversion %doc %{_docdir}/openser/README.domain %doc %{_docdir}/openser/README.enum %doc %{_docdir}/openser/README.exec %doc %{_docdir}/openser/README.gflags %doc %{_docdir}/openser/README.group %doc %{_docdir}/openser/README.lcr %doc %{_docdir}/openser/README.mangler %doc %{_docdir}/openser/README.maxfwd %doc %{_docdir}/openser/README.mediaproxy %doc %{_docdir}/openser/README.msilo %doc %{_docdir}/openser/README.nathelper %doc %{_docdir}/openser/README.options %doc %{_docdir}/openser/README.pdt %doc %{_docdir}/openser/README.permissions %doc %{_docdir}/openser/README.pike %doc %{_docdir}/openser/README.registrar %doc %{_docdir}/openser/README.rr %doc %{_docdir}/openser/README.sl %doc %{_docdir}/openser/README.sms %doc %{_docdir}/openser/README.speeddial %doc %{_docdir}/openser/README.textops %doc %{_docdir}/openser/README.tm %doc %{_docdir}/openser/README.uri %doc %{_docdir}/openser/README.uri_db %doc %{_docdir}/openser/README.usrloc %doc %{_docdir}/openser/README.xlog %dir %{_sysconfdir}/openser %config(noreplace) %{_sysconfdir}/openser/* %config %{_sysconfdir}/init.d/* %dir %{_libdir}/openser %dir %{_libdir}/openser/modules %{_libdir}/openser/modules/acc.so %{_libdir}/openser/modules/alias_db.so %{_libdir}/openser/modules/avpops.so %{_libdir}/openser/modules/auth.so %{_libdir}/openser/modules/auth_db.so %{_libdir}/openser/modules/auth_diameter.so %{_libdir}/openser/modules/dbtext.so %{_libdir}/openser/modules/dispatcher.so %{_libdir}/openser/modules/diversion.so %{_libdir}/openser/modules/domain.so %{_libdir}/openser/modules/enum.so %{_libdir}/openser/modules/exec.so %{_libdir}/openser/modules/flatstore.so %{_libdir}/openser/modules/gflags.so %{_libdir}/openser/modules/group.so %{_libdir}/openser/modules/lcr.so %{_libdir}/openser/modules/mangler.so %{_libdir}/openser/modules/maxfwd.so %{_libdir}/openser/modules/mediaproxy.so %{_libdir}/openser/modules/msilo.so %{_libdir}/openser/modules/nathelper.so %{_libdir}/openser/modules/options.so %{_libdir}/openser/modules/pdt.so %{_libdir}/openser/modules/permissions.so %{_libdir}/openser/modules/pike.so %{_libdir}/openser/modules/registrar.so %{_libdir}/openser/modules/rr.so %{_libdir}/openser/modules/sl.so %{_libdir}/openser/modules/sms.so %{_libdir}/openser/modules/speeddial.so %{_libdir}/openser/modules/textops.so %{_libdir}/openser/modules/tm.so %{_libdir}/openser/modules/uri.so %{_libdir}/openser/modules/uri_db.so %{_libdir}/openser/modules/usrloc.so %{_libdir}/openser/modules/xlog.so %{_sbindir}/openser %{_sbindir}/openserctl %{_sbindir}/openserunix %{_sbindir}/gen_ha1 %{_mandir}/man5/* %{_mandir}/man8/* %files mysql %defattr(-,root,root) %{_libdir}/openser/modules/mysql.so %{_sbindir}/openser_mysql.sh %files jabber %defattr(-,root,root) %{_libdir}/openser/modules/jabber.so %doc %{_docdir}/openser/README.jabber %files cpl %defattr(-,root,root) %{_libdir}/openser/modules/cpl-c.so %doc %{_docdir}/openser/README.cpl-c #%files radius #%defattr(-,root,root) #%{_libdir}/openser/modules/avp_radius.so #%{_libdir}/openser/modules/auth_radius.so #%{_libdir}/openser/modules/group_radius.so #%{_libdir}/openser/modules/uri_radius.so #%doc %{_docdir}/openser/README.avp_radius #%doc %{_docdir}/openser/README.auth_radius #%doc %{_docdir}/openser/README.group_radius #%doc %{_docdir}/openser/README.uri_radius %changelog * Wed Jun 08 2005 Daniel-Constantin Mierla - First version of the spec file.