e064fa0
%define _varlogdir      %{_localstatedir}/log/smsd
dddecf9
%define _varrundir      %{_localstatedir}/run/smsd
e064fa0
1c6dd9a
# enable PIE (RHBZ #955265)
1c6dd9a
%global _hardened_build 1
1c6dd9a
5f2f9a6
Name:           smstools
2a41a2d
Version:        3.1.15
Patrick C. F. Ernzer 3c601fb
Release:        6%{?dist}
5f2f9a6
Summary:        Tools to send and receive short messages through GSM modems or mobile phones
5f2f9a6
5f2f9a6
License:        GPLv2+
5f2f9a6
Group:          Applications/Communications
5f2f9a6
URL:            http://smstools3.kekekasvi.com
5f2f9a6
Source0:        http://smstools3.kekekasvi.com/packages/smstools3-%{version}.tar.gz
5f2f9a6
Source1 :       smsd.init
5f2f9a6
Source2:        smsd.logrotate
Patrick C. F. Ernzer 3c601fb
Source3:        smsd.tmpfiles
a68b598
Patch0:         smstools3-3.1.5-loglocation.patch
Patrick C. F. Ernzer 3c601fb
Patch1:         smstools3-3.1.15-rundirectory.patch
5f2f9a6
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
5f2f9a6
Requires(post): /sbin/chkconfig
5f2f9a6
Requires(preun): /sbin/chkconfig
5f2f9a6
Requires(preun): /sbin/service
5f2f9a6
Requires(postun): /sbin/service
fe349ca
Requires(pre): shadow-utils
5f2f9a6
5f2f9a6
%description
5f2f9a6
The SMS Server Tools are made to send and receive short messages through
5f2f9a6
GSM modems. It supports easy file interfaces and it can run external
5f2f9a6
programs for automatic actions. 
5f2f9a6
5f2f9a6
%prep
5f2f9a6
%setup -q -n smstools3
e064fa0
%patch0 -p1 -b .loglocation
Patrick C. F. Ernzer 3c601fb
%patch1 -p1 -b .rundirectory
5f2f9a6
mv doc manual
5f2f9a6
mv examples/.procmailrc examples/procmailrc
5f2f9a6
mv examples/.qmailrc examples/qmailrc
5f2f9a6
find scripts/ examples/ manual/ -type f -print0 |xargs -0 chmod 644
5f2f9a6
5f2f9a6
%build
Patrick C. F. Ernzer 3837b11
make -C src 'CFLAGS=%{optflags} -DNOSTATS -D NUMBER_OF_MODEMS=64' LFLAGS="%{__global_ldflags}" %{_smp_mflags}
5f2f9a6
5f2f9a6
%install
5f2f9a6
rm -rf $RPM_BUILD_ROOT
5f2f9a6
install -Dm 755 %{SOURCE1} $RPM_BUILD_ROOT%{_initrddir}/smsd
5f2f9a6
install -Dm 664 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/smstools
Patrick C. F. Ernzer 3c601fb
install -Dm 664 %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/tmpfiles.d/smstools.conf
5f2f9a6
install -Dm 600 examples/smsd.conf.easy $RPM_BUILD_ROOT%{_sysconfdir}/smsd.conf
5f2f9a6
install -Dm 755 src/smsd $RPM_BUILD_ROOT%{_sbindir}/smsd
5f2f9a6
install -Dm 755 scripts/sendsms $RPM_BUILD_ROOT%{_bindir}/smssend
5f2f9a6
install -Dm 755 scripts/sms2html $RPM_BUILD_ROOT%{_bindir}/sms2html
5f2f9a6
install -Dm 755 scripts/sms2unicode $RPM_BUILD_ROOT%{_bindir}/sms2unicode
5f2f9a6
install -Dm 755 scripts/sms2xml $RPM_BUILD_ROOT%{_bindir}/sms2xml
5f2f9a6
install -Dm 755 scripts/unicode2sms $RPM_BUILD_ROOT%{_bindir}/unicode2sms
5f2f9a6
install -dm 750 $RPM_BUILD_ROOT%{_localstatedir}/spool/sms/checked
5f2f9a6
install -dm 750 $RPM_BUILD_ROOT%{_localstatedir}/spool/sms/failed
5f2f9a6
install -dm 750 $RPM_BUILD_ROOT%{_localstatedir}/spool/sms/incoming
fe349ca
install -dm 770 $RPM_BUILD_ROOT%{_localstatedir}/spool/sms/outgoing
5f2f9a6
install -dm 750 $RPM_BUILD_ROOT%{_localstatedir}/spool/sms/sent
e064fa0
mkdir -p ${RPM_BUILD_ROOT}%{_varlogdir}
e064fa0
mkdir -p ${RPM_BUILD_ROOT}%{_varlogdir}/smsd_stats
dddecf9
mkdir -p ${RPM_BUILD_ROOT}%{_varrundir}
96be05a
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/smstools
96be05a
e064fa0
e064fa0
# Create ghost files
e064fa0
for n in smsd.log smsd_trouble.log; do
e064fa0
    touch ${RPM_BUILD_ROOT}%{_varlogdir}/$n
e064fa0
done
5f2f9a6
5f2f9a6
%clean
5f2f9a6
rm -rf $RPM_BUILD_ROOT
5f2f9a6
fe349ca
%pre
fe349ca
getent group smstools >/dev/null || groupadd -r smstools
90b3dce
90b3dce
# on older releases we need to use uucp (here it seems only the uucp group exists)
90b3dce
# on newer releases it's dialout (here it seems both groups exist)
90b3dce
# it would be more elegant to base my if clause on the udev rules instead of the group existence
90b3dce
if [ `getent group dialout` ]
90b3dce
  then
96be05a
    getent passwd smstools >/dev/null || useradd -r -d %{_localstatedir}/lib/smstools -m -g smstools -G dialout smstools
90b3dce
  else
96be05a
    getent passwd smstools >/dev/null || useradd -r -d %{_localstatedir}/lib/smstools -m -g smstools -G uucp smstools
90b3dce
fi
90b3dce
fe349ca
5f2f9a6
%post
5f2f9a6
if [ $1 -eq 0 ]; then
5f2f9a6
        /sbin/chkconfig --add smsd
5f2f9a6
fi
5f2f9a6
e064fa0
# Create initial log files so that logrotate doesn't complain
e064fa0
for n in smsd.log smsd_trouble.log; do
e064fa0
        [ -f %{_varlogdir}/$n ] || touch %{_varlogdir}/$n
e064fa0
        chown smstools:smstools %{_varlogdir}/$n
e064fa0
        chmod 640 %{_varlogdir}/$n
e064fa0
done
e064fa0
5f2f9a6
%preun
5f2f9a6
if [ $1 -eq 0 ]; then
5f2f9a6
        /sbin/service smsd stop >/dev/null 2>&1
5f2f9a6
        /sbin/chkconfig --del smsd
5f2f9a6
fi
5f2f9a6
5f2f9a6
%postun
5f2f9a6
if [ $1 -ge 1 ]; then
5f2f9a6
        /sbin/service smsd condrestart >/dev/null 2>&1
5f2f9a6
fi
5f2f9a6
5f2f9a6
%files
5f2f9a6
%defattr(-,root,root,-)
5f2f9a6
%doc LICENSE manual/ examples/ scripts/checkhandler-utf-8 scripts/email2sms scripts/eventhandler-utf-8
5f2f9a6
%doc scripts/mysmsd scripts/regular_run scripts/smsevent scripts/smsresend scripts/sql_demo
5f2f9a6
%{_sbindir}/*
5f2f9a6
%{_bindir}/*
5f2f9a6
%{_initrddir}/smsd
5f2f9a6
%config(noreplace) %{_sysconfdir}/logrotate.d/smstools
Patrick C. F. Ernzer 3c601fb
%config %{_sysconfdir}/tmpfiles.d/smstools.conf
5f2f9a6
%config(noreplace) %{_sysconfdir}/smsd.conf
e064fa0
%attr(-,smstools,smstools) %dir %{_localstatedir}/spool/sms/
e064fa0
%attr(-,smstools,smstools) %dir %{_localstatedir}/spool/sms/checked
e064fa0
%attr(-,smstools,smstools) %dir %{_localstatedir}/spool/sms/failed
e064fa0
%attr(-,smstools,smstools) %dir %{_localstatedir}/spool/sms/incoming
e064fa0
%attr(-,smstools,smstools) %dir %{_localstatedir}/spool/sms/outgoing
e064fa0
%attr(-,smstools,smstools) %dir %{_localstatedir}/spool/sms/sent
96be05a
%attr(-,smstools,smstools) %dir %{_localstatedir}/lib/smstools
e064fa0
%attr(0750,smstools,smstools) %dir %{_varlogdir}
e064fa0
%attr(0640,smstools,smstools) %ghost %{_varlogdir}/smsd.log
e064fa0
%attr(0640,smstools,smstools) %ghost %{_varlogdir}/smsd_trouble.log
e064fa0
%attr(0750,smstools,smstools) %dir %{_varlogdir}/smsd_stats
dddecf9
%attr(0700,smstools,smstools) %dir %{_varrundir}
5f2f9a6
5f2f9a6
%changelog
Patrick C. F. Ernzer 3c601fb
* Thu May 23 2013 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.15-6
Patrick C. F. Ernzer 3c601fb
- fix for pidfile and infofile in /run, thanks Kaarle (RHBZ #961503)
Patrick C. F. Ernzer 3837b11
- added LFLAGS="%{__global_ldflags}" to get PIE enabled correctly, thanks Dhiru (RHBZ #955265)
Patrick C. F. Ernzer 3c601fb
1c6dd9a
* Thu Apr 25 2013 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.15-5
1c6dd9a
- enabled PIE (RHBZ #955265)
1c6dd9a
9770307
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.15-4
9770307
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
9770307
96be05a
* Wed Nov 7 2012 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.15-3
96be05a
- create /var/lib/smstools in install section
96be05a
96be05a
* Tue Nov 6 2012 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.15-3
96be05a
- add /var/lib/smstools to files list (RHBZ #871437)
96be05a
a68b598
* Sat Oct 27 2012 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.15-2
a68b598
- fixing fedpkg lint warnings
a68b598
2a41a2d
* Sat Oct 27 2012 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.15-1
2a41a2d
- latest upstream (fixes RHBZ#863661, patch from 3.1.14-4 no longer needed)
2a41a2d
addc685
* Sat Oct 06 2012 Daniele Vigano <daniele@vigano.me> 3.1.14-4
addc685
- Fixed segfault of outgoing file checker (BZ#863661)
4951b70
6e882a1
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.14-3
6e882a1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
6e882a1
a8f3d4f
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.14-2
a8f3d4f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
a8f3d4f
7f9e270
* Fri Jan 21 2011 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.14-1
7f9e270
- New upstream release
7f9e270
dddecf9
* Fri Jan 21 2011 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.8-3
dddecf9
- corrected missing /var/run/smsd directory (BZ#605203)
dddecf9
90b3dce
* Thu Jan 20 2011 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.8-2
90b3dce
- added if clause for deciding between uucp and dialout group (BZ#605211)
90b3dce
9c9ce4e
* Mon May 31 2010 Marek Mahut <mmahut@fedoraproject.org> 3.1.8-1
9c9ce4e
- New upstream release
9c9ce4e
e064fa0
* Thu Oct 15 2009 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.5-4
e064fa0
- added flag -m to useradd
e064fa0
e064fa0
* Tue Oct 13 2009 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.5-3
e064fa0
- after deliberation, decided on having system user (mysql user also has shell, so this should be OK)
e064fa0
e064fa0
* Sun Oct 11 2009 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.5-2
e064fa0
- corrected typo in my name in previous changelog entry
e064fa0
- log files now go to /var/log/smsd (copied that bit from the uucp RPM)
e064fa0
- creating smstools user if it does not exist
e064fa0
- will run as user smstools now, did not manage to make it work as system user without login though
e064fa0
e064fa0
* Sun Sep 6 2009 Patrick C. F. Ernzer <smstools.spec@pcfe.net> 3.1.5-1
657763d
- bump to 3.1.5
657763d
- removed perm patch
657763d
- added -D NUMBER_OF_MODEMS=64 to make line
657763d
b381d05
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.3-7
b381d05
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
b381d05
c2c983c
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.1.3-6
c2c983c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
c2c983c
049c005
* Sat Dec 20 2008 Marek Mahut <mmahut@fedoraproject.org> - 3.1.3-5
fe349ca
- Upstream release
fe349ca
- RHBZ#437620 root privileges are mandatory for sending/receiving an sms
84c74c8
- RHBZ#443790 smstools logrotate does not work properly
49e1233
- RHBZ#461862 smssend creates rw------- files
fe349ca
0c796eb
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 3.0.10-2
0c796eb
- Autorebuild for GCC 4.3
0c796eb
5f2f9a6
* Sat Nov 10 2007 Marek Mahut <mmahut@fedoraproject.org> 3.0.10-1
5f2f9a6
- Rewrite of spec file.
5f2f9a6
- Updated to version 3.0.10
5f2f9a6
5f2f9a6
* Sat Apr 07 2007 Andreas Thienemann <andreas@bawue.net> 3.0.6-1
5f2f9a6
- Updated to version 3.0.6
5f2f9a6
- Reverted daemonize patch as it is not needed anymore
5f2f9a6
5f2f9a6
* Wed Nov 30 2005 Andreas Thienemann <andreas@bawue.net> 1.15.7-3
5f2f9a6
- Fixed logrotate script
5f2f9a6
5f2f9a6
* Sun Sep 13 2005 Andreas Thienemann <andreas@bawue.net> 1.15.7-2
5f2f9a6
- Now with statistics support
5f2f9a6
5f2f9a6
* Sat Sep 12 2005 Andreas Thienemann <andreas@bawue.net> 1.15.7-1
5f2f9a6
- Initial spec.
5f2f9a6