File pilot-link.spec of Package pilot-link

#
# spec file for package pilot-link (Version 0.12.3)
#
# Copyright (c) 2009 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
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild


Name:           pilot-link
BuildRequires:  bluez-devel gcc-c++ hal libpng-devel libusb-devel pkg-config popt-devel python-devel readline-devel
Url:            http://www.pilot-link.org/
License:        GPL v2 or later ; LGPL v2.1 or later
Group:          Hardware/Palm
Obsoletes:      plink
Provides:       plink
AutoReqProv:    on
Version:        0.12.3
Release:        4
Summary:        Pilot-Link Based Synchronization Development Header Files
Source:         %{name}-%{version}.tar.bz2
Source1:        10-usb-raw-pda.fdi
Patch0:         %{name}-gcc.patch
Patch1:         %{name}-0.12.1-appointment_buf.diff
Patch2:         %{name}-0.12.1-strncat.diff
Patch3:         %{name}-0.12.2-mode.diff
Patch4:         %{name}-0.12.3-man.patch
Patch5:         %{name}-0.12.3-free.patch
Patch6:         %{name}-0.12.3-fclose.patch
Patch7:         %{name}-0.12.3-usb-fixes.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
pilot-link is a suite of tools used to connect your Palm or PalmOS compatible
handheld with Unix, Linux, and any other POSIX-compatible machine. pilot-link
works with all PalmOS handhelds, including those made by Handspring, Sony,
and Palm, as well as others.

pilot-link includes userspace "conduits" that allow you to synchronize
information to and from your Palm device, as well as libraries of
Palm-compatible functions that allow other applications to take advantage of
the code included in pilot-link.

There are also several language "bindings" that allow you to use your favorite
development language with pilot-link, such as Java, Tcl, Perl, and Python.

Authors:
--------
    Kenneth Albanowski <kjahds@kjahds.com>

%package -n libpisock9
License:        GPL v2 or later ; LGPL v2.1 or later
Requires:       hal-palm
Summary:        Pilot-Link Library for Palm devices
Group:          Hardware/Palm

%description -n libpisock9
Pilot-Link Library for Palm Devices.

If you want to develop Palm synchronization applications, you will need
to install libpisock-devel.



Authors:
--------
    Kenneth Albanowski <kjahds@kjahds.com>

%package -n libpisock-devel
License:        GPL v2 or later ; LGPL v2.1 or later
Requires:       libpisock9 = %{version}
Provides:       pilot-link-devel = %{version}
Obsoletes:      pilot-link-devel <= %{version}
Summary:        PalmPilot Development Header Files
Group:          Hardware/Palm

%description -n libpisock-devel
This package contains the development headers of libpisock.



Authors:
--------
    Kenneth Albanowski <kjahds@kjahds.com>

%package -n libpisync1
License:        GPL v2 or later ; LGPL v2.1 or later
Summary:        Pilot-Link based Synchronization Library for Palm devices
Group:          Hardware/Palm

%description -n libpisync1
Pilot-Link Library for Palm Devices.

If you want to develop Palm synchronization applications, you will need
to install libpisock-devel.



Authors:
--------
    Kenneth Albanowski <kjahds@kjahds.com>

%package -n libpisync-devel
License:        GPL v2 or later ; LGPL v2.1 or later
Requires:       libpisync1 = %{version}
Summary:        Pilot-Link based Synchronization Library for Palm devices
Group:          Hardware/Palm

%description -n libpisync-devel
Pilot-Link Library for Palm Devices.

If you want to develop Palm synchronization applications, you will need
to install libpisock-devel.



Authors:
--------
    Kenneth Albanowski <kjahds@kjahds.com>

%package -n hal-palm
License:        GPL v2 or later ; LGPL v2.1 or later
Requires:       hal
Summary:        HAL FDI file to identify Palm devices
Group:          Hardware/Palm

%description -n hal-palm
HAL FDI file to identify Palm devices and set pda.platform to "pda" for
the USB Raw device. In combination with hal-resmgr the desktop user
will get permission to the USB Raw device and can use the libusb
transport of libpisock.



Authors:
--------
    Kenneth Albanowski <kjahds@kjahds.com>

%package -n python-pisock
License:        GPL v2 or later ; LGPL v2.1 or later
Requires:       python
Summary:        Pilot-Link Library for Palm devices - Python bindings
Group:          Development/Libraries/Python

%description -n python-pisock
Pilot-Link Library for Palm Devices.

This package contains the python bindings of libpisock.



Authors:
--------
    Kenneth Albanowski <kjahds@kjahds.com>

%prep
%setup -q
%patch0
%patch1
%patch2
%patch3
%patch4
%patch5
%patch6
%patch7

%build
%{?suse_update_config:%{suse_update_config -f scripts}}
autoreconf -sfi
CFLAGS="$RPM_OPT_FLAGS" \
CXXFLAGS="$RPM_OPT_FLAGS" \
	./configure \
	    --prefix=/usr \
	    --mandir=%{_mandir} \
	    --libdir=%{_libdir} \
	    --libexecdir=%{_libexecdir} \
	    --enable-threads \
	    --enable-conduits \
	    --enable-libusb
make
#
#python subpackage
cd bindings/Python
python setup.py build

%install
make DESTDIR=$RPM_BUILD_ROOT install
#chmod a+x $RPM_BUILD_ROOT/%{_libdir}/libpisock.so*
# drop udev rule somewhere else...
mkdir -p $RPM_BUILD_ROOT/etc/udev/rules.d
sed -i 's/modem/uucp/g' $RPM_BUILD_ROOT/usr/share/pilot-link/udev/60-libpisock.rules
mv $RPM_BUILD_ROOT/usr/share/pilot-link/udev/60-libpisock.rules $RPM_BUILD_ROOT/etc/udev/rules.d
rm -rf $RPM_BUILD_ROOT/usr/share/pilot-link/udev
rm $RPM_BUILD_ROOT/%{_libdir}/*.a
rm $RPM_BUILD_ROOT/%{_libdir}/*.la
# Install HAL FDI file for known palm devices to set pda.platform = "palm".
# This is needed so hal-resmgr can set permission to the USB raw device. The
# USB Raw device access is needed for applications which use the libusb
# transport of libpisock.
mkdir -p  $RPM_BUILD_ROOT/usr/share/hal/fdi/information/20thirdparty/
cp %{S:1} $RPM_BUILD_ROOT/usr/share/hal/fdi/information/20thirdparty/
#
#python subpackage
cd bindings/Python
mkdir -p "$RPM_BUILD_ROOT"
python setup.py install --prefix=%{_prefix} --optimize=2 --record-rpm=INSTALLED_FILES \
      --root="$RPM_BUILD_ROOT"

%clean
rm -rf $RPM_BUILD_ROOT

%post -n libpisock9 -p /sbin/ldconfig

%post -n libpisync1 -p /sbin/ldconfig

%postun -n libpisock9 -p /sbin/ldconfig

%postun -n libpisync1 -p /sbin/ldconfig

%files
%defattr(-,root,root)
%doc COPYING ChangeLog README doc/README.* doc/TODO doc/Coding*
%{_bindir}/*
%{_mandir}/man*/*
%dir %{_datadir}/%{name}/
%dir %{_datadir}/%{name}/pix/
%dir %{_datadir}/%{name}/prc/
%{_datadir}/%{name}/pix/*
%{_datadir}/%{name}/prc/*

%files -n libpisock9
%defattr(-,root,root)
%{_libdir}/libpisock*.so.9*
%dir /etc/udev
%dir /etc/udev/rules.d
/etc/udev/rules.d/*

%files -n libpisock-devel
%defattr(-,root,root)
%{_libdir}/libpisock*.so
%{_libdir}/pkgconfig/*
%{_datadir}/aclocal/pilot-link.m4
%{_includedir}/*
%exclude %{_includedir}/pi-sync.h

%files -n libpisync1
%defattr(-,root,root)
%{_libdir}/libpisync*.so.1*

%files -n libpisync-devel
%defattr(-,root,root)
%{_libdir}/libpisync*.so
%{_includedir}/pi-sync.h

%files -n hal-palm
%defattr(-,root,root)
%{_datadir}/hal/fdi/information/20thirdparty/10-usb-raw-pda.fdi

%files -n python-pisock -f bindings/Python/INSTALLED_FILES
%defattr(-,root,root)
%doc bindings/Python/TODO bindings/Python/README

%changelog
openSUSE Build Service is sponsored by