LogoopenSUSE Build Service > Projects
Sign Up | Log In

View File pose.spec of Package pose (Project home:p_conrad)

#
# spec file for package netqmail
# Based on SRPM available at http://sourceforge.net/projects/pose/
#
# Copyright (c) 2002 johnm@falch.net
# Copyright (c) 2012 Peter Conrad <obs@quisquis.de>
#
# 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/

Name: pose
Version: 3.5
Release: 3
Summary: Palm OS Emulator
License: GPL-2.0+
URL: http://sourceforge.net/projects/pose/
Group: Development/Palm OS
#Source0: http://www.palmos.com/dev/tools/emulator/emulator_src_%{version}.tar.gz
Source0: emulator_src_%{version}.tar.bz2
Patch0: detect-fluid.diff
Patch1: separate-builddir.diff
Patch2: choose-gl.diff
Patch3: init-clipwidget.diff
Patch4: pose-gcc412.patch
Patch5: pose-gcc421.patch
Patch6: pose-glibc29.patch
Patch7: pose-opensuse-12.2.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf automake fltk-devel xorg-x11-libXext-devel libXft-devel fontconfig-devel
BuildRequires: gcc-c++
%if 0%{?suse_version} > 1210
BuildRequires: libXinerama-devel
%endif
Prefix: %{_prefix}
%define palmdev_prefix /opt/palmdev
Prefix: %{palmdev_prefix}

%description
The Palm OS Emulator (also known as "pose" or "poser", and originally as
"copilot") emulates Palm OS-based handhelds at a hardware level.  It also
does more checking of invalid memory accesses and other bad behaviour than a
real device does, so is very useful while developing and debugging Palm OS
applications.

A Palm OS ROM file is also needed in order to emulate a Palm OS device.
"ROM Transfer", a utility included in this package, can be used to download
a ROM from a real Palm OS device, and various ROMs, including "debug ROMs"
which do extra validation, are available from the Emulator web pages and
from the various Palm OS licensees.

The Emulator uses FLTK (http://www.fltk.org/) as its user interface widget
set.

%package perl
Summary: Perl scripts for use with Palm OS devices
Group: Development/Palm OS
%description perl
Perl modules implementing the RPC parts of the Palm OS debugger protocol,
and Perl scripts which use them to interact with either the Palm OS Emulator
or real Palm OS devices.

%prep
%setup -q -n Emulator_Src_%{version}
chmod -R u+w *
%patch -P 0 -p1
%patch -P 1 -p1
%patch -P 2 -p1
%patch -P 3 -p0
%patch -P 4 -p0
%patch -P 5 -p0
%patch -P 6 -p0
%patch7 -p1
cd BuildUnix
touch NEWS README AUTHORS ChangeLog
%__rm -rf config.guess config.sub missing
aclocal
automake --add-missing
automake --foreign
autoconf

%build
static_dir=`pwd`/static-libs
%__mkdir_p $static_dir
ln -sf `${CXX:-g++} -print-file-name=libstdc++.a` $static_dir/libstdc++.a
if [ ! -f "%{_libdir}/libXinerama.so" ]; then
    ln -sf "%{_libdir}/libXinerama.so.1" "$static_dir/libXinerama.so"
fi

%__mkdir_p build-normal build-profile
(cd build-normal &&
 %__ln_s /usr/include/FL Fl &&
 %__ln_s . include &&
 LDFLAGS="-L$static_dir -lfontconfig -lXft -lXinerama" CXXFLAGS=-I/usr/X11R6/include ../BuildUnix/configure \
   --with-fltk=`pwd` &&
 %__make LOCAL_CFLAGS="-DFLTK_1_0_COMPAT %{optflags} -DNULL=0" FLUID=/usr/bin/fluid %{?smp_mflags})
(cd build-profile &&
 %__ln_s /usr/include/FL Fl &&
 %__ln_s . include &&
 LDFLAGS="-L$static_dir -lfontconfig -lXft -lXinerama" CXXFLAGS=-I/usr/X11R6/include ../BuildUnix/configure \
   --with-fltk=`pwd` --disable-gl --enable-palm-profile &&
 %__make LOCAL_CFLAGS="-DFLTK_1_0_COMPAT %{optflags} -DNULL=0" FLUID=/usr/bin/fluid %{?smp_mflags})

%install
%__mkdir_p %{buildroot}%{_bindir}
%__install -m 0755 build-normal/pose %{buildroot}%{_bindir}/pose
%__install -m 0755 build-profile/pose %{buildroot}%{_bindir}/pose-profile
for i in Scripting/Perl/*.pl; do
    j="${i##*/}"
    %__install -m 0755 "$i" "%{buildroot}%{_bindir}/${j%%.pl}"
    echo "%{_bindir}/${j%%.pl}" >>perl-files
done

%__mkdir_p %{buildroot}%{perl_sitelib}
for i in Scripting/Perl/*.pm; do
    j="${i##*/}"
    %__install -m 0644 "$i" %{buildroot}%{perl_sitelib}
    echo "%{perl_sitelib}/$j" >>perl-files
done

%__mkdir_p %{buildroot}%{palmdev_prefix}/include
%__install -m 0644 SrcShared/HostControl.h %{buildroot}%{palmdev_prefix}/include

%__mkdir_p %{buildroot}%{_datadir}/pose/downloads
%__install -m 0644 ROMTransfer/Source/ROM_Transfer.prc \
	%{buildroot}%{_datadir}/pose/downloads

%clean
[ "%{buildroot}" = "/" ] || rm -rf "%{buildroot}"

%files
%defattr(-, root, root,-)
%{_bindir}/pose
%{_bindir}/pose-profile
%{_datadir}/pose
%dir %{palmdev_prefix}
%dir %{palmdev_prefix}/include
%{palmdev_prefix}/include/HostControl.h
%doc Docs/*

%files perl -f perl-files
%defattr(-, root, root,-)

%changelog