File aranym.spec of Package aranym

#
# spec file for package aranym (Version 0.9.7beta)
#
# Copyright (c) 2008 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/
#



Name:           aranym
BuildRequires:  Mesa-devel SDL-devel SDL_image-devel gcc-c++ unzip update-desktop-files
Url:            http://aranym.org/
Summary:        ARAnyM (Atari Running on Any Machine)
Version:        0.9.7beta
Release:        1
Group:          System/Emulators/Other
License:        GPL v2 or later; LGPL v2.1 or later
Source:         %{name}-%{version}.tar.gz
Source1:        afros-0.9.6-1.zip
Patch:          %{name}-%{version}.diff
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
ARAnyM is a multiplatform virtual machine (a software layer) for
running Atari ST/TT/Falcon TOS/GEM applications on any hardware with
many host operating systems. The reason for writing ARAnyM is to
provide Atari power users with faster and better machines. The ultimate
goal is to create a new platform where TOS/GEM applications could
continue to live forever.

Features:

* 68040 CPU (including MMU040)

* 68040 and 68881/2 FPU

* 14 MB ST-RAM and up to 3824 MB (configurable) of FastRAM

* VIDEL, Blitter, MFP, ACIA, IKBD for highest possible compatibility

* Sound (compatible with Atari XBIOS Sound subsystem, including
   TimerA DMA IRQ)

* Atari floppy DD/HD for connecting floppy image or real floppy
   drive

* Two IDE channels for connecting disk images, hard drives, or
   CD-ROMs

* Extended keyboard and mouse support (including mouse wheel)

* Direct access to host file system via BetaDOS and MiNT xfs drivers

* Networking using ethernet emulation with a driver for MiNT-Net

* TOS 4.04, EmuTOS, or Linux as the booting operating system

* Runs with FreeMiNT, MagiC, and any other operating system that
   runs also on real Atari computers

* Native CD-ROM access (under Linux, other OS: audio CD only) without
scsi, ide, or other emulation



Authors:
--------
    Ctirad Fertr <phanatic@volny.cz>
    Milan Jurik <M.Jurik@sh.cvut.cz>
    Stanislav Opichal <opichals@seznam.cz>
    Petr Stehlik <pstehlik@sophics.cz>
    Johan Klockars <rand@cd.chalmers.se>
    Didier MEQUIGNON <didier.mequignon@wanadoo.fr>
    Patrice Mandin <pmandin@caramail.com>
    Xavier Joubert
    Andreas Schwab <schwab@suse.de>

%prep
%setup -q -n %{name}-%{version} -a 1
%patch

%build
autoreconf -fi
%ifarch %ix86
./configure CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" \
	    --prefix=/usr --mandir=%{_mandir} --disable-nat-debug \
	    --enable-addressing=direct --enable-jit-compiler
make depend
make %{?jobs:-j%jobs}
mv aranym aranym-jit
make clean
%endif
./configure CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" \
	    --prefix=/usr --mandir=%{_mandir} --disable-nat-debug \
%ifarch ppc ppc64
	    --enable-fpe=uae \
%endif
	    --enable-addressing=direct \
	    --enable-lilo --enable-fullmmu
make depend
make %{?jobs:-j%jobs}
mv aranym aranym-mmu
make clean
./configure CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" \
	    --prefix=/usr --mandir=%{_mandir} --disable-nat-debug \
%ifarch ppc ppc64
	    --enable-fpe=uae \
%endif
	    --enable-addressing=direct
make depend
make %{?jobs:-j%jobs}

%install
make install DESTDIR=$RPM_BUILD_ROOT docdir=%{_docdir}
%ifarch %ix86
install -m 755 aranym-jit $RPM_BUILD_ROOT%{_bindir}
%endif
install -m 755 aranym-mmu $RPM_BUILD_ROOT%{_bindir}
install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps
install -m 644 contrib/icon-32.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/aranym.png
%suse_update_desktop_file -i aranym
cp -a afros-* $RPM_BUILD_ROOT%{_datadir}/aranym/afros
find $RPM_BUILD_ROOT%{_datadir}/aranym/afros -type d -name CVS -exec rm -rf {} +

%post
%run_permissions
%verifyscript
%verify_permissions -e %{_bindir}/aratapif

%clean
rm -fr $RPM_BUILD_ROOT

%files
%defattr(-, root, root)
%doc %{_docdir}/aranym
%verify(not mode) %attr(755,root,root) %{_bindir}/aratapif
%{_bindir}/aranym*
%{_mandir}/man1/*.gz
%{_datadir}/aranym
%{_datadir}/pixmaps/*
%{_datadir}/applications/*

%changelog
* Sat Nov 08 2008 schwab@suse.de
- Update to aranym 0.9.7beta.
  Mostly small fixes at various places plus a lot of work went into
  improving the DSP56001 emulation. Also the sound DMA emulation is
  improved to a point where GSXB driver should be unnecessary.
  o improved automatic network setup on Mac
  o reworked audio DMA emulation. Also added configurable host sound
  frequency
  o one MMU bug fixed (regarding TTR)
  o special support for halting ARAnyM on linux-m68k reboot (--halt)
  o SDL GUI fixed (missing events after alerts)
  o EMULOP is now privileged so if some old ARAnyM TSR starts crashing
  this is why
  o joypads are now emulated
  o joysticks and joypads can be configured in the config file
  o '<>' and 'End' keys' scancodes made Atari compatible
  Check the doc/config example file for the new [JOYSTICKS] and [AUDIO]
  sections.
* Wed Oct 22 2008 schwab@suse.de
- Fix keyboard mapping.
* Sun Sep 28 2008 schwab@suse.de
- Make EMULOP privileged.
* Tue Jul 15 2008 schwab@suse.de
- Fix endian test.
* Mon Jul 07 2008 schwab@suse.de
- Run autoreconf.
* Mon Feb 04 2008 schwab@suse.de
- Update to afros 0.9.6-1.
* Tue Jan 29 2008 schwab@suse.de
- Update to aranym 0.9.6beta2.
  Main change: major graphics output overhaul, two video backends - software
  and OpenGL renderer. Faster graphics output on all platforms. Try enabling
  the OpenGL output in the [OPENGL] section of the config file (beware, might
  not work on some platforms, tested on Linux only).
  Massive Mac OS X port improvements: MacIntel supported, fat binaries
  available, JIT working (on x86), networking working, and more.
  o IDE disks now up to 130 GB large (removed 32 GB barrier)
  o SCSI/partitions no longer limited to 2 GB, and made up to 4x faster
  o new ARAnyM logo at startup, new window manager, menu and desktop icons
  o networking fixes: now works after reboot, new Setup config dialog added
  o HostFS fixes: Dreadlabel() for MAGXDESK
  o SDL-GUI: 8x16 font, 80 columns, improved old dialogs and added new ones
  o MinGW compilable (native MS Windows binary, contrary to Cygwin one)
  o RTC timer on Linux host for more precise MFP timer interrupts
  (if it errors out try running "sudo sysctl -w dev.rtc.max-user-freq=1024")
  o new command line option "--locale CC" where CC is ISO country code
  (example: "--locale DE" will preset NVRAM to german keyboard layout)
  o one more FPU bug (visible in frexp()) fixed
* Fri Jan 11 2008 schwab@suse.de
- Update to head of trunk.
* Thu Nov 29 2007 schwab@suse.de
- Update to head of trunk.
* Sun Jul 22 2007 schwab@suse.de
- Update to afros 0.9.5-2.
* Tue Jul 10 2007 schwab@suse.de
- Update to aranym 0.9.5beta.
  This version brings major speed up of the MMU version thanks to contribution
  of Roman Zippel and also many improvements for Mac OS X as well as bunch of
  smaller fixes at many places by dedicated ARAnyM developers.
  o OpenGL fixes: mouse cursor, alpha channel on big-endian machines
  o OpenGL is loaded dynamically now (requires SDL 1.2.10 or newer)
  o new project file for Xcode 2.x used to build Universal binaries of MacAranym
  o JITc for Solaris x86
  o MMU translation cache for major speed up of the MMU mode (now almost
  comparable with non-MMU mode - 3 GHz host CPU outperforms 100 MHz 68060!)
  o HostFS symlink fix
  o new TOS patches and VIDEO SETUP dialogs. Most of the settings require
  reboot to take effect.
  o VIDEL refresh was wrong, now fixed and configurable on-the-fly in SETUP
  o TV/VGA switch was wrong, now fixed and configurable in the SETUP
  o small CPU bitfield insn fix, FPU sin/cos fix, VIDEL ST-Shifter fix,
  nfVDI mfdb.fd_stand fix, TOS bconout redir fix...
  o many other build system fixes
* Tue Jun 12 2007 schwab@suse.de
- Update to head of trunk.
* Thu Mar 29 2007 schwab@suse.de
- Add unzip to BuildRequires.
* Sat Dec 02 2006 schwab@suse.de
- Update to aranym 0.9.4beta2.
  I was so wrong when I wrote "last MMU bugs were fixed" in previous release
  notes. This second beta release fixes several newly found CPU/FPU bugs that
  appeared when ARAnyM became actually used by Debian-m68k people.
  So the linux-m68k kernel as well as other MMU/FPU software should run
  much better now.
  Other news and fixes:
  o optional MIDI output to /dev/sequencer (in [MIDI] try Type=sequencer)
  o ARAnyM shouldn't hang on quit anymore
  o protect2k enabled by default (better HW compatibility with Atari)
  o cxx-exceptions enabled by default (considerably faster in MMU mode)
  o in Cygwin ARAnyM ignores $HOME and follows Windows practice with
  $HOME under Document and Settings/
  o new config file option "GMTime" (set to No by default). When enabled,
  ARAnyM uses Greenwich Mean Time (useful when running an OS that knows
  timezones like something Linux based or maybe even properly configured
  SpareMiNT)
  o linux-m68k properly boots now (with HW initialized)
  o IKBD settings (mouse wheel, AltGr) stored in [IKBD] section of ARAnyM
  config file
  o sound: preliminary locking (XBIOS LockSnd/UnlockSnd) implemented
  o nfVDI: fixed vswr_mode alpha expansions (tested on newsgroup reader Troll)
  o new option in [ETHx]: MAC = aa:bb:cc:dd:ee:ff for configuring the MAC
  Address of the network interface. You can run several ARAnyMs in a LAN
  now :-)
  For the additions in the ARAnyM config file see the provided commented
  configuration file.
* Fri Nov 24 2006 schwab@suse.de
- Make UAE fpu emulator aliasing safe and use it on ppc.
- Fix some fpu emulation bugs.
* Sat Nov 11 2006 schwab@suse.de
- Fix another emulation bug.
* Fri Nov 10 2006 schwab@suse.de
- Add fix for LINK and RTD emulation.
* Thu Nov 09 2006 schwab@suse.de
- Add --enable-protect2k.
- Make IKBD setting configurable.
* Tue Sep 26 2006 schwab@suse.de
- Readd lost --enable-cxx-exceptions.
* Mon Sep 25 2006 schwab@suse.de
- Update to aranym 0.9.4beta.
  This release has one major highlight: two last MMU emulation bugs have
  been fixed and ARAnyM now runs Linux-m68k stable for days without any
  single issue. I can now fully recommend ARAnyM for Linux-m68k kernel
  development and also Debian-m68k development. Hoping that it will help
  the m68k linux platform to survive for a little longer.
  There is also a great new feature for those who are tired of setting up
  virtual disk drives for booting to TOS/GEM system: ARAnyM now supports
  bootstrapping directly from host filesystem! You need new versions of
  both EmuTOS and FreeMiNT kernel (with built-in HostFS driver) and
  the following configuration (in the [GLOBAL] section of ARAnyM config file):
    ------ aranym config --------
  Bootstrap = /path/to/mint.prg
  BootstrapArgs = DEBUG_LEVEL=1 BOOT_DELAY=0 MEM_PROT=NO
  BootDrive = C
    -----------------------------
  Of course you also need to define the BootDrive (C:) host path in the
  [HOSTFS] config section. FreeMiNT tries to locate the modules and other
  files in usual C:\MINT\ path that is redirected to your host filesystem.
  Other news and fixes:
  o new command line parameter -P (as in Position) will position the ARAnyM
  window to your desired location - enter the coordinates of upper left
  window corner ("-P 50,50") or try to center the window with "-P center".
  This should help especially on MS-Windows where the ARAnyM window often
  ended partially off screen.
  o Host desktop <-> AES clipboard interconnection. Currently for MS-Windows
  only. You need a special FreeMiNT driver that creates a new filesystem
  in FreeMiNT where you can point the AES to store the Clipboard. Find
  more information in documentation at http://wiki.aranym.org/
  o various improvements in graphics area - major speed up for bitplane modes,
  speed up of graphics on Mac OS X, OpenGL alpha mask fix and others.
  o Mac OS X: Swapped meaning of CTRL and META key for Mac OS X back to
  "the logical way": The Apple key(s) represent left and right meta key
  and CTRL key is mapped to Atari CTRL key.
  A new, more Mac like set of keyboard shortcuts defined:
  Left Apple + , = Open preferences dialog
  Left Apple + q = Quit
  Left Apple + r = Reboot
  Left Apple + escape = Grab/Ungrab mouse cursor
  Left Apple + d = Enable debugger (if built-in)
  Left Apple + s = Save screenshot
  Left Apple + f = Toggle fullscreen mode
  o MS-Windows: corrected/improved window/fullscreen toggle.
  o bug #1521310 fixed: Shifters are now released before the GUI thread
  is started.
  o MIDI now outputs raw data which could be used for mapping the MIDI port
  to host MIDI directly (untested)
  o new compile-time configuration (--enable-protect2k) improves compatibility
  with ST/TT/Falcon where hardware protects first 2 kB of RAM against
  user mode accesses. Enabled by default in MMU build only since it can
  cause some performance degradation.
* Sat Aug 26 2006 schwab@suse.de
- Compile with --enable-cxx-exceptions.
* Fri Aug 25 2006 schwab@suse.de
- Fix more typos.
* Fri Aug 25 2006 schwab@suse.de
- Fix a typo in the mmu emulation.
* Tue May 30 2006 schwab@suse.de
- Fix definition of fixed size integers.
* Mon May 15 2006 schwab@suse.de
- Update to aranym 0.9.3beta.
  ARAnyM can now output via OpenGL and features TrueType fonts
- Add aranym-jit.
* Mon Apr 10 2006 schwab@suse.de
- Force direct addressing mode.
* Sat Jan 28 2006 schwab@suse.de
- Add gcc-c++ to BuildRequires.
* Thu Jan 26 2006 schwab@suse.de
- Don't strip binaries.
- Add SDL_image-devel to BuildRequires.
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Mon Sep 19 2005 schwab@suse.de
- Update to aranym 0.9.1-alpha.
* Mon May 02 2005 schwab@suse.de
- Update to aranym 0.9.0 and afros 20050424.
* Mon Apr 11 2005 schwab@suse.de
- Fix compiling with gcc4.
* Sun Feb 27 2005 schwab@suse.de
- Update to afros 200502026.
* Wed Feb 23 2005 schwab@suse.de
- Update to aranym 0.9.0beta2.
* Tue Feb 22 2005 schwab@suse.de
- Update to aranym 0.9.0beta.
* Fri Feb 11 2005 schwab@suse.de
- Update from CVS.
- Use C++ exceptions.
* Wed Jan 26 2005 schwab@suse.de
- Update from CVS.
* Mon Jan 24 2005 schwab@suse.de
- Update from CVS.  Can boot Linux/m68k now.
* Wed Jan 12 2005 schwab@suse.de
- Update from CVS.
* Mon Jan 10 2005 schwab@suse.de
- Update from CVS.
* Tue Jan 04 2005 schwab@suse.de
- Fix emulation of moves insn.
- Fix loading of ramdisk in lilo.
* Sun Nov 28 2004 schwab@suse.de
- Update to aranym 0.8.11beta.
* Thu Aug 19 2004 schwab@suse.de
- Update to aranym 0.8.10beta.
* Mon Jul 19 2004 schwab@suse.de
- Update to aranym 0.8.9beta.
* Tue Jun 22 2004 schwab@suse.de
- Fix 64-bit compatibility.
- Reduce debug output.
* Sat May 22 2004 schwab@suse.de
- Build both with and without full mmu support.
* Fri May 21 2004 schwab@suse.de
- Enable lilo.
* Tue May 18 2004 schwab@suse.de
- Package created.