diff --git a/gammu-1.25.0.tar.bz2 b/gammu-1.25.0.tar.bz2 deleted file mode 100644 index abed838..0000000 --- a/gammu-1.25.0.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:be2c9600d781eb07e1e34975d59d09d8f8701cdb54f3d50a74707f4cdd2d63f5 -size 1838498 diff --git a/gammu-1.29.0.tar.bz2 b/gammu-1.29.0.tar.bz2 new file mode 100644 index 0000000..40f463a --- /dev/null +++ b/gammu-1.29.0.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f7c3122e5f5e246b3ce7fb128b42c1d679ebb3f11f805ea17f1ba86400e1bbf +size 5982258 diff --git a/gammu-smsd.lsb_unknown-lsb-keyword.patch b/gammu-smsd.lsb_unknown-lsb-keyword.patch new file mode 100644 index 0000000..aeb5795 --- /dev/null +++ b/gammu-smsd.lsb_unknown-lsb-keyword.patch @@ -0,0 +1,10 @@ +--- contrib/init/gammu-smsd.lsb.orig 2011-01-19 09:33:05.000000000 +0200 ++++ contrib/init/gammu-smsd.lsb 2011-03-07 00:26:06.528931642 +0200 +@@ -29,7 +29,6 @@ + # Default-Stop: 0 1 6 + # Short-Description: Gammu SMS daemon + # Description: Daemon for automatically sending and receiving messages using GSM phone. +-# Author: Michal Čihař + ### END INIT INFO + + # Uncommend and adjust following line if you need to set locales in init script: diff --git a/gammu.changes b/gammu.changes index 5ea8eae..a9cceb3 100644 --- a/gammu.changes +++ b/gammu.changes @@ -1,3 +1,32 @@ +------------------------------------------------------------------- +Fri Mar 18 20:03:02 UTC 2011 - asterios.dramis@gmail.com + +- Spec file updates: + * Use UTC time/date for "Remove build time references" fix. + * Don't clean buildroot in %install section. + * Change permissions of gammu-smsd in %install section. + * Add rc-symlink for gammu-smsd. + * Fix for empty %postun check on non-SUSE distros. + * Minor other updates. + +------------------------------------------------------------------- +Fri Mar 11 20:13:17 UTC 2011 - asterios.dramis@gmail.com + +- Updated to 1.29.0: + * Lots of changes (see ChangeLog). +- Spec file updates: + * Changes based on rpmdevtools templates and spec-cleaner run. + * Lots of updates based on spec file from the package. Most important are: + + Added gammu-smsd package. + + Added libGammu7 package. + + Added libgsmsd7 package. + * Updates in Url: and Group:. + * Updates in Buildrequires:, Requires:, %build and %install sections. + * Removed support for openSUSE < 1110. + * Fixed rpmlint warning "file-contains-date-and-time". +- Added a patch to fix an rpmlint warning "unknown-lsb-keyword" for the init + script "gammu-smsd". + ------------------------------------------------------------------- Mon Apr 12 06:24:03 UTC 2010 - prusnak@suse.cz diff --git a/gammu.spec b/gammu.spec index b05babf..1a53733 100644 --- a/gammu.spec +++ b/gammu.spec @@ -1,7 +1,7 @@ # -# spec file for package gammu (Version 1.25.0) +# spec file for package gammu # -# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,43 +15,36 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # - - Name: gammu -Version: 1.25.0 -Release: 3 -# Set to 0 to disable bluetooth support -%if 0%{?opensuse_bs} && 0%{?sles_version} == 9 -%define bluetooth 0 -%else -%define bluetooth 1 -%endif -# Set to 0 to disable PostgreSQL support -%define pqsql 1 -# Set to 0 to disable MySQL support -%define mysql 1 -# Set to 0 to disable DBI support -%define dbi 0 -# Set to 0 to disable USB support -%define usb 1 -# Change if using tar.gz sources -%define extension bz2 -# Python name -%{!?__python: %define __python python} -%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} -%if 0%{?fedora_version} || 0%{?centos_version} || 0%{?rhel_version} || 0%{?fedora} || 0%{?rhel} -%define gammu_docdir %_docdir/%{name}-%{version} -%else -%define gammu_docdir %_docdir/%{name} -%endif +Version: 1.29.0 +Release: 1 Summary: Mobile phone management utility + License: GPLv2 +Url: http://wammu.eu/gammu/ %if 0%{?suse_version} -Group: Applications/Communications +Group: Productivity/Telephony/Utilities %else Group: Applications/Communications %endif -# Detect build requires, I really hate this crap +Source0: http://sourceforge.net/projects/%{name}/files/%{name}/%{version}/%{name}-%{version}.tar.bz2 +# PATCH-FIX-OPENSUSE gammu-smsd.lsb.patch asterios.dramis@gmail.com -- Fix rpmlint warning "unknown-lsb-keyword" for init script +Patch0: gammu-smsd.lsb_unknown-lsb-keyword.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +# Python location +%{!?__python: %define __python python} +%define g_python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)") +%define g_python_major_version %(%{__python} -c 'import sys; print sys.version.split(" ")[0][:3]') + +# Docdir +%if 0%{?fedora_version} || 0%{?centos_version} || 0%{?rhel_version} || 0%{?fedora} || 0%{?rhel} +%define gammu_docdir %{_docdir}/%{name}-%{version} +%else +%define gammu_docdir %{_docdir}/%{name} +%endif + +# Detect build requires # SUSE %if 0%{?suse_version} %define dist_usb_libs libusb-1_0-devel @@ -66,7 +59,7 @@ Group: Applications/Communications %else # Mandriva %if 0%{?mandriva_version} -%define dist_usb_libs libusb-1_0-devel +%define dist_usb_libs libusb1.0-devel %define dist_dbi_libs libdbi-devel libdbi-drivers-dbd-sqlite3 sqlite3-tools # 64-bit Mandriva has 64 in package name %ifarch x86_64 @@ -74,12 +67,12 @@ Group: Applications/Communications %endif # Bluetooth things got renamed several times %if 0%{?mandriva_version} > 2007 -%define dist_bluez_libs lib%{?mandriva_hack}bluez2 lib%{?mandriva_hack}bluez-devel +%define dist_bluez_libs lib%{?mandriva_hack}bluez-devel %else %if 0%{?mandriva_version} > 2006 -%define dist_bluez_libs lib%{?mandriva_hack}bluez2 lib%{?mandriva_hack}bluez2-devel +%define dist_bluez_libs lib%{?mandriva_hack}bluez2-devel %else -%define dist_bluez_libs libbluez1 >= 2.0 libbluez1-devel >= 2.0 +%define dist_bluez_libs libbluez1-devel >= 2.0 %endif %endif # postgresql-devel does not work for whatever reason in buildservice @@ -93,38 +86,44 @@ Group: Applications/Communications %if 0%{?fedora_version} || 0%{?centos_version} || 0%{?rhel_version} || 0%{?fedora} || 0%{?rhel} %define dist_usb_libs libusb1-devel %define dist_dbi_libs libdbi-devel libdbi-dbd-sqlite sqlite -%define dist_bluez_libs bluez-libs >= 2.0 bluez-libs-devel >= 2.0 +%define dist_bluez_libs bluez-libs-devel >= 2.0 %define dist_postgres_libs postgresql-devel %else #Defaults for not know distributions %define dist_usb_libs libusb1-devel %define dist_dbi_libs libdbi-devel libdbi-dbd-sqlite sqlite -%define dist_bluez_libs bluez-libs >= 2.0 bluez-libs-devel >= 2.0 +%define dist_bluez_libs bluez-libs-devel >= 2.0 %define dist_postgres_libs postgresql-devel %endif %endif %endif -%if %bluetooth -BuildRequires: %{dist_bluez_libs} +BuildRequires: cmake +BuildRequires: doxygen +BuildRequires: gettext +BuildRequires: glib2-devel +%if 0%{?centos_version} || 0%{?rhel_version} || 0%{?rhel} +BuildRequires: curl-devel +%else +BuildRequires: libcurl-devel %endif -%if pqsql -BuildRequires: %{dist_postgres_libs} +%if 0%{?suse_version} > 1110 +BuildRequires: libgudev-1_0-devel %endif -%if %mysql BuildRequires: mysql-devel -%endif -%if %dbi -BuildRequires: %{dist_dbi_libs} +%if 0%{?suse_version} +BuildRequires: pkg-config +%else +BuildRequires: pkgconfig %endif BuildRequires: python-devel -BuildRequires: libcurl-devel -%if %usb -BuildRequires: %{dist_usb_libs} +BuildRequires: %{dist_bluez_libs} +%if 0%{?suse_version} > 1130 +BuildRequires: %{dist_dbi_libs} %endif -BuildRequires: cmake gettext pkgconfig -Source: http://dl.cihar.com/gammu/releases/gammu-%{version}.tar.%{extension} -Url: http://cihar.com/gammu/ -BuildRoot: %{_tmppath}/%{name}-%{version}-build +BuildRequires: %{dist_postgres_libs} +BuildRequires: %{dist_usb_libs} +Requires: bluez +Requires: dialog %description Gammu is command line utility and library to work with mobile phones @@ -142,15 +141,22 @@ Currently supported phones include: * OBEX and IrMC capable phones (Sony-Ericsson, Motorola). * Symbian phones through gnapplet. +This package contains Gammu binary as well as some examples. + %package devel -License: GPLv2 Summary: Development files for Gammu +License: GPLv2 %if 0%{?suse_version} -Group: Development/Libraries +Group: Development/Libraries/C and C++ %else Group: Development/Libraries %endif -Requires: %{name} = %{version}-%{release} pkgconfig +%if 0%{?suse_version} +Requires: pkg-config +%else +Requires: pkgconfig +%endif +Requires: %{name} = %{version} %description devel Gammu is command line utility and library to work with mobile phones @@ -170,18 +176,110 @@ Currently supported phones include: This package contain files needed for development. -%package -n python-gammu +%package smsd +Summary: SMS message daemon License: GPLv2 -Summary: Python module to communicate with mobile phones %if 0%{?suse_version} -Group: Development/Languages +Group: Hardware/Mobile +%else +Group: Applications/Communications +%endif +%if 0%{?suse_version} +Requires(post): %insserv_prereq %fillup_prereq +Requires(preun): %insserv_prereq %fillup_prereq +Requires(postun): %insserv_prereq %fillup_prereq +%endif +%if 0%{?fedora_version} || 0%{?centos_version} || 0%{?rhel_version} || 0%{?fedora} || 0%{?rhel} +Requires(post): chkconfig +Requires(preun): chkconfig +Requires(preun): initscripts +%endif + +%description smsd +Gammu is command line utility and library to work with mobile phones +from many vendors. Support for different models differs, but basic +functions should work with majority of them. Program can work with +contacts, messages (SMS, EMS and MMS), calendar, todos, filesystem, +integrated radio, camera, etc. It also supports daemon mode to send and +receive SMSes. + +Currently supported phones include: + +* Many Nokia models. +* Alcatel BE5 (501/701), BF5 (715), BH4 (535/735). +* AT capable phones (Siemens, Nokia, Alcatel, IPAQ). +* OBEX and IrMC capable phones (Sony-Ericsson, Motorola). +* Symbian phones through gnapplet. + +This package contains Gammu SMS Daemon and tool to inject messages +into the queue. + +%package -n libGammu7 +Summary: Mobile phone management library +License: GPLv2 +%if 0%{?suse_version} +Group: Development/Libraries/C and C++ +%else +Group: System/Libraries +%endif + +%description -n libGammu7 +Gammu is command line utility and library to work with mobile phones +from many vendors. Support for different models differs, but basic +functions should work with majority of them. Program can work with +contacts, messages (SMS, EMS and MMS), calendar, todos, filesystem, +integrated radio, camera, etc. It also supports daemon mode to send and +receive SMSes. + +Currently supported phones include: + +* Many Nokia models. +* Alcatel BE5 (501/701), BF5 (715), BH4 (535/735). +* AT capable phones (Siemens, Nokia, Alcatel, IPAQ). +* OBEX and IrMC capable phones (Sony-Ericsson, Motorola). +* Symbian phones through gnapplet. + +This package contains Gammu shared library. + +%package -n libgsmsd7 +Summary: SMS daemon helper library +License: GPLv2 +%if 0%{?suse_version} +Group: Development/Libraries/C and C++ +%else +Group: System/Libraries +%endif + +%description -n libgsmsd7 +Gammu is command line utility and library to work with mobile phones +from many vendors. Support for different models differs, but basic +functions should work with majority of them. Program can work with +contacts, messages (SMS, EMS and MMS), calendar, todos, filesystem, +integrated radio, camera, etc. It also supports daemon mode to send and +receive SMSes. + +Currently supported phones include: + +* Many Nokia models. +* Alcatel BE5 (501/701), BF5 (715), BH4 (535/735). +* AT capable phones (Siemens, Nokia, Alcatel, IPAQ). +* OBEX and IrMC capable phones (Sony-Ericsson, Motorola). +* Symbian phones through gnapplet. + +This package contains Gammu SMS daemon shared library. + +%package -n python-gammu +Summary: Python module to communicate with mobile phones +License: GPLv2 +%if 0%{?suse_version} +Group: Development/Languages/Python %else Group: Development/Languages %endif -Requires: python +Requires: python >= %{g_python_major_version} +Requires: python < %{g_python_major_version}.99 +%if 0%{?suse_version} < 1130 %{?py_requires} -%if %bluetooth -Requires: python-pybluez %endif %description -n python-gammu @@ -190,6 +288,12 @@ supports - many Nokias, Siemens, Alcatel, ... %prep %setup -q +%patch0 +# Remove build time references - Fix rpmlint warning "file-contains-date-and-time" +FAKE_BUILDTIME=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%H:%M') +FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{_sourcedir}/%{name}.changes '+%b %e %Y') +sed -i "s/__TIME__/\"$FAKE_BUILDTIME\"/" gammu/gammu.c gammu-detect/main.c libgammu/gsmstate.c smsd/inject.c smsd/monitor.c smsd/main.c +sed -i "s/__DATE__/\"$FAKE_BUILDDATE\"/" gammu/gammu.c gammu-detect/main.c libgammu/gsmstate.c libgammu/phone/dummy/dummy.c smsd/inject.c smsd/monitor.c smsd/main.c %build mkdir build-dir @@ -197,53 +301,145 @@ cd build-dir cmake ../ \ -DBUILD_SHARED_LIBS=ON \ -DBUILD_PYTHON=/usr/bin/python \ - -DCMAKE_INSTALL_PREFIX=%_prefix \ - -DINSTALL_DOC_DIR=%gammu_docdir \ - -DINSTALL_LIB_DIR=%_lib \ - -DINSTALL_LIBDATA_DIR=%_lib -make %{?_smp_mflags} %{!?_smp_mflags:%{?jobs:-j %jobs}} -# %check -# cd build-dir -# ctest -V + -DCMAKE_INSTALL_PREFIX=%{_prefix} \ + -DINSTALL_DOC_DIR=%{gammu_docdir} \ + -DINSTALL_LIB_DIR=%{_lib} \ + -DINSTALL_LIBDATA_DIR=%{_lib} \ + -DINSTALL_LSB_INIT=ON +make %{?_smp_mflags} +cd .. + +%check +#cd build-dir +#ctest -V +#cd .. %install -%if 0%{?suse_version} == 0 -rm -rf %buildroot -mkdir %buildroot +%if !0%{?suse_version} +make -C build-dir install DESTDIR=%{buildroot} +%else +cd build-dir +%makeinstall +cd .. %endif -make -C build-dir install DESTDIR=%buildroot + +# Change permissions +chmod 755 %{buildroot}%{_sysconfdir}/init.d/gammu-smsd + +# rc-symlink for gammu-smsd +mkdir -p %{buildroot}%{_sbindir} +ln -sf ../../etc/init.d/gammu-smsd %{buildroot}%{_sbindir}/rcgammu-smsd + +# Install config file +install -p -m 0644 docs/config/smsdrc %{buildroot}%{_sysconfdir}/gammu-smsdrc + +# Install additional doc files +install -p -m 0644 AUTHORS BUGS README.cs README.en_GB %{buildroot}%{gammu_docdir}/ + +# Remove unneeded locales +%if 0%{?suse_version} < 1140 +rm -rf %{buildroot}%{_datadir}/locale/sw/ +%endif + %find_lang %{name} %find_lang libgammu -cat libgammu.lang >> %{name}.lang - -%post -p /sbin/ldconfig - -%postun -p /sbin/ldconfig - -%files -f %name.lang -%defattr(-,root,root) -%_bindir/* -%_libdir/*.so.* -%_mandir/man1/* -%_mandir/man5/* -%_mandir/man7/* -%lang(cs) %_mandir/cs -%doc %gammu_docdir -%config /etc/bash_completion.d/gammu - -%files devel -%defattr(-,root,root) -%_includedir/%name -%_libdir/pkgconfig/%name.pc -%_libdir/pkgconfig/%name-smsd.pc -%_libdir/*.so - -%files -n python-gammu -%defattr(-,root,root) -%doc README.Python python/examples -%python_sitearch/* %clean -rm -rf %buildroot +rm -rf %{buildroot} + +%post smsd +%if 0%{?mandriva_version} +%_post_service gammu-smsd +%endif +%if 0%{?suse_version} +%fillup_and_insserv gammu-smsd +%endif +%if 0%{?fedora_version} || 0%{?centos_version} || 0%{?rhel_version} || 0%{?fedora} || 0%{?rhel} +/sbin/chkconfig --add gammu-smsd +%endif + +%preun smsd +%if 0%{?suse_version} +%stop_on_removal gammu-smsd +%endif +%if 0%{?mandriva_version} +%_preun_service gammu-smsd +%endif +%if 0%{?fedora_version} || 0%{?centos_version} || 0%{?rhel_version} || 0%{?fedora} || 0%{?rhel} +if [ $1 = 0 ] ; then + /sbin/service gammu-smsd stop >/dev/null 2>&1 + /sbin/chkconfig --del