%define docbook_man %_datadir/xml/docbook/xsl-stylesheets/manpages/docbook.xsl
Name: dosbox
Epoch: 1
Version: 0.74.2
Release: alt1
Summary: i8086/DOS/VGA software emulator for running old games
Summary(ru_RU.UTF8): Программный эмулятор i8086/DOS/VGA для запуска старых игр
License: GPLv2+
Group: Emulators
Url: http://dosbox.com
Packager: Anton Chernyshov <ach@altlinux.org>
Source0: %name-%version.tar.gz
Source1: DOSBox-russian-lang.zip
# additional scripts and man
Source2: %name-wrapper
Source3: %name-install
Source4: %name-install.xml
# icons and desktop file
Source5: %name.xpm
Source6: %name.desktop
# fix #24306 bug
Source7: %name-0.74-2.conf
Source8: README_ru.ALT
Patch: fix_werror_return_type.patch
Requires: shadow-utils unarj unzip unrar
Conflicts: dosbox-russian
BuildPreReq: docbook-dtds
BuildPreReq: docbook-style-xsl
BuildPreReq: gcc-c++
BuildPreReq: libalsa-devel
BuildPreReq: libGL-devel
BuildPreReq: libGLU-devel
BuildPreReq: libpng-devel
BuildPreReq: libSDL-devel
BuildPreReq: libSDL_net-devel
BuildPreReq: libSDL_sound-devel
BuildPreReq: libX11-devel
BuildPreReq: xsltproc
BuildPreReq: unzip
# Automatically added by buildreq on Sat Jul 12 2014
# optimized out: gnu-config libGL-devel libGLU-devel libSDL-devel libX11-devel libcloog-isl4 libstdc++-devel libtinfo-devel xorg-kbproto-devel xorg-xproto-devel zlib-devel
BuildRequires: gcc-c++ libSDL_net-devel libSDL_sound-devel libalsa-devel libncurses-devel libpng-devel
%description
DOSBox is graphical application that provides rich programming emulation
of Intel 8086 real-mode, SVGA and DOS with XMS/EMS (but no DPMI!).
This is very useful for running old good DOS games written for PC/XT/AT
that's impossible directly on modern Pentiums, SUN's, PowerPC & etc.
At least PII 400MHz is required for comfortable running.
Full list of tested games successfully supported by DOSBox
is published on the http://dosbox.sourceforge.net site.
Run it as following:
* dosbox /path/to/game.exe
* dosbox /path/to/gamedir
Examples:
* dosbox /tmp/old-games/ugh.exe
...maps given directory to drive C: and start given EXE/COM/BAT-file
* dosbox /usr/local/games
...maps given directory to drive C: and start built-in COMMAND.COM
%description -l ru_RU.UTF8
DOSBox - это графическое приложение, программно эмулирующее
процессор Intel 8086, графический адаптер SVGA
и операционную систему DOS с поддержкой XMS и EMS, но без DPMI.
DOSBox позволяет запускать на современном компьютере старые игры,
созданные для XT и AT, и не работающие на более новых системах.
Для комфортной работы требуется PII 400MHz или сравнимый с ним
по скорости процессор любой архитектуры (SUN, PowerPC и т.д.).
Полный список протестированных игр (Tower, Wings of Fury, Dune, ...)
находится на официальном сайте программы: http://dosbox.sourceforge.net.
Запуск эмулятора производится следующим образом:
* dosbox /путь/к/игре/game.exe
* dosbox /путь/к/игре
Примеры:
* dosbox /tmp/old-games/ugh.exe
...отобразит каталог игры на диск C: и запустит указанный EXE/COM/BAT-файл
* dosbox /usr/local/games
...отобразит указанный каталог на диск C: и запустит встроенный COMMAND.COM
%prep
%setup
%patch -p2
# Create script dosbox-set-lang (#24306)
cat > %name-set-lang << EOF
#!/bin/bash
#
# This script is distributed under terms of GPLv2 or later
# Copyright (C) Anton Chernyshov <ach@altlinux.org>
#
# Encoding in this file is UTF-8
#
# This is a simple script that set default DOSBox language
# to English or Russian language.
# It requires setting one parameter: en or ru,
# which would set needed language.
#
# Это простой скрипт, переключающий используемый DOSBox
# язык на указанный пользователем.
# Скрипту необходимо указать один параметр: en или ru,
# который и установит нужный язык.
#
if [ -e ~/.%name/%name-%version.conf ]; then
echo "File exist. GOOD!";
else
echo "File doesn't exist. Creating!"
cp %_defaultdocdir/%name-%version/%name-%version.conf ~/.%name/
fi
case \$1 in
ru)
echo "Set DOSBox language to Russian"
sed -i -e 's/^language=$/language=\/usr\/share\/doc\/%name-%version\/DOSBox-russian-lang\/russian.txt/' \
-e 's/^keyboardlayout=auto/keyboardlayout=RU/' \
~/.%name/%name-%version.conf
;;
en)
echo "Set DOSBox language to English"
sed -i -e 's/language=\/usr\/share\/doc\/%name-%version\/DOSBox-russian-lang\/russian.txt/language=/' \
-e 's/^keyboardlayout=RU/keyboardlayout=auto/' \
~/.%name/%name-%version.conf
;;
*)
echo "Please set correct options: en or ru";
esac
EOF
%build
%configure \
--enable-debug=heavy \
--enable-core-inline \
--disable-fpu-x86
%make_build
cp -a src/dosbox src/dosbox-debug
make distclean
%configure \
--enable-core-inline \
--disable-fpu-x86
%make_build
xsltproc %docbook_man %{SOURCE4}
%install
%makeinstall_std
# install dosbox debugger
install src/%name-debug %buildroot%_bindir/%name-debug
# install additional scripts
install -D -p %{SOURCE2} %buildroot/%_bindir/%name-install
install -D -p %{SOURCE3} %buildroot/%_bindir/%name-wrapper
# install dosbox-install manual
install -D dosbox-install.1 %buildroot/%_man1dir/dosbox-install.1
# install DOSBox-russian-docs
mkdir -p %buildroot/%_defaultdocdir/%name-%version/
unzip %{SOURCE1} -d %buildroot/%_defaultdocdir/%name-%version/
# install upstream docs
cp AUTHORS ChangeLog NEWS README THANKS %buildroot/%_defaultdocdir/%name-%version
cp docs/{README.video,PORTING} %buildroot/%_defaultdocdir/%name-%version
# create directory for data files and for placing games
mkdir -p %buildroot{%_datadir/%name,%_gamesbindir/%name}
# install icons and desktop file
install -D -m 0644 %{SOURCE5} %buildroot/%_iconsdir/%name.xpm
install -D -m 0644 %{SOURCE6} %buildroot/%_desktopdir/%name.desktop
# fix #24306 bug
install -D -m755 %name-set-lang %buildroot%_bindir/%name-set-lang
cp %{SOURCE7} %{SOURCE8} %buildroot/%_defaultdocdir/%name-%version
%files
%_bindir/*
%dir %_datadir/%name
%_man1dir/%{name}*
%doc %_defaultdocdir/*
%_iconsdir/*
%_desktopdir/*
%changelog
* Wed May 15 2019 Grigory Ustinov <grenka@altlinux.org> 1:0.74.2-alt1
- Build new version (Closes: #36653).
* Wed May 04 2016 Anton V. Boyarshinov <boyarsh@altlinux.org> 0.74.r3852-alt1
- svn snapshot, fpu problems on x86_64 should be fixed
* Mon Apr 11 2016 Gleb F-Malinovskiy (qa) <qa_glebfm@altlinux.org> 0.74-alt4.qa1
- Rebuilt for gcc5 C++11 ABI.
* Thu Oct 09 2014 Mikhail Kolchin <mvk@altlinux.org> 0.74-alt4
- fix %install section
* Sat Jul 12 2014 Fr. Br. George <george@altlinux.ru> 0.74-alt3
- add debugger-enabled binary
* Fri Jul 11 2014 Mikhail Kolchin <mvk@altlinux.org> 0.74-alt2.4
- fixed script dosbox-set-lang (ALT#24306)
* Thu Apr 18 2013 Sergey V Turchin <zerg@altlinux.org> 0.74-alt2.3
- fix requires (ALT#28864)
* Wed Sep 26 2012 Eugeny A. Rostovtsev (REAL) <real at altlinux.org> 0.74-alt2.2
- Rebuilt with libpng15
* Tue Jul 10 2012 Eugeny A. Rostovtsev (REAL) <real at altlinux.org> 0.74-alt2.1
- Fixed build
* Mon Nov 8 2010 Anton Chernyshov <ach@altlinux.org> 0.74-alt2
- closes #24306 bug (completely):
+ add to package script dosbox-set-lang to help users set language
that he/she needed
- add new build dependency libGLU-devel
* Sat Nov 6 2010 Anton Chernyshov <ach@altlinux.org> 0.74-alt1.1
- fix #24306 bug:
+ add dosbox-0.74.conf with support russian language
+ add README_ru.ALT file with problem resolv method
* Sat Nov 6 2010 Anton Chernyshov <ach@altlinux.org> 0.74-alt1
- new upstream release 0.74
- slightly spec file modifications
- convert russian DOSBox docs to UTF-8
- add new ./configure options
* Tue Jul 21 2009 Andrey Rahmatullin <wrar@altlinux.ru> 0.73-alt2
- do not package %%_gamesbindir/%%name
* Thu May 28 2009 Andrey Rahmatullin <wrar@altlinux.ru> 0.73-alt1
- 0.73
- disable dosbox-0.65-loadfont-base.patch
* Sat May 09 2009 Andrey Rahmatullin <wrar@altlinux.ru> 0.72-alt9
- fix build with gcc 4.4 (RH)
* Tue Apr 07 2009 Andrey Rahmatullin <wrar@altlinux.ru> 0.72-alt8
- fix keyboard mappings when using evdev X11 driver (closes: #19488; RH)
* Sun Nov 23 2008 Andrey Rahmatullin <wrar@altlinux.ru> 0.72-alt7
- remove alternatives trigger
* Mon Nov 17 2008 Andrey Rahmatullin <wrar@altlinux.ru> 0.72-alt6
- remove update_*/clean_* invocations
* Sun Oct 26 2008 Andrey Rahmatullin <wrar@altlinux.ru> 0.72-alt5
- fix build
* Tue May 27 2008 Andrey Rahmatullin <wrar@altlinux.ru> 0.72-alt4
- desktop file improvements (closes: #15726; cas@)
* Thu Apr 17 2008 Andrey Rahmatullin <wrar@altlinux.ru> 0.72-alt3
- remove alternatives support, add Conflicts on dosbox-russian
- remove English lang file, sample config and tools for their generation
- fix desktop file
- move 32x32 icon from iconsdir to niconsdir
- add http://www.dosbox.com/tools/DOSBox-russian-lang-072-2.zip (Russian readme
and config)
* Fri Oct 19 2007 Andrey Rahmatullin <wrar@altlinux.ru> 0.72-alt2
- add requires on shadow-utils (#13136)
* Tue Aug 28 2007 Andrey Rahmatullin <wrar@altlinux.ru> 0.72-alt1
- 0.72
* Thu Aug 02 2007 Andrey Rahmatullin <wrar@altlinux.ru> 0.71-alt1
- 0.71
* Sat Mar 03 2007 Andrey Rahmatullin <wrar@altlinux.ru> 0.70-alt1
- 0.70
* Sun Sep 17 2006 Andrey Rahmatullin <wrar@altlinux.ru> 0.65-alt1
- 0.65
- massive spec cleanup
* Tue Jan 18 2005 ALT QA Team Robot <qa-robot@altlinux.org> 0.63-alt1.1
- Rebuilt with libstdc++.so.6.
* Tue Dec 21 2004 Ilya Evseev <evseev@altlinux.ru> 0.63-alt1
- updated to version 0.63 containing multiple bugfixes
- bugfix: /usr/share/dosbox was not owned by package
- new alternatives scheme used in ALTLinux 2.4
* Mon Oct 17 2004 Ilya Evseev <evseev@altlinux.ru> 0.62-alt5
- fixed spec bug with macro man1dir -> _man1dir
* Mon Oct 4 2004 Ilya Evseev <evseev@altlinux.ru> 0.62-alt4
- official 0.62 release
- added 'BuildPreReq: gcc-c++' for building in ALTLinux hasher environment
- added --no-main switch to wrapper for running it as subroutines container only
- /usr/bin/dosbox is managed by alternatives, by default is assigned to wrapper
- small spec cleanups
* Fri Jul 23 2004 Ilya Evseev <evseev@altlinux.ru> 0.62-alt3
- russian support is completely moved to separate spec-file
- conform to ALTLinux Specfile conventions
- simplify "%prep" and "%install" sections
- add support of /etc/dosbox/runargs directory to wrapper and spec
* Mon Jun 7 2004 Ilya Evseev <ilya_evseev@mail.ru> 0.62-1
- updated to version 0.62 from CVS
- added dosbox-install script
- added support of loadable fonts
- add dosbox-russian package with manuals, cyrillic fonts,
configuration and language file
- added dosbox-apps package
* Mon Apr 26 2004 Ilya Evseev <ilya_evseev@mail.ru> 0.61-2
- fixed bug with creating group on installation stage,
split installation: create group before, update menus after
- removed Packager record from spec-file
- added patch for loading user-defined fonts to Video-BIOS ROM on startup
- article removed from packaged stuff and will be managed separately
* Fri Feb 15 2004 Ilya Evseev <ilya_evseev@mail.ru> 0.61-1
- updated to version 0.61
- manpage and langfile are translated to Russian
- added script for running binary with global/localized settings
- added introduction article (in Russian)
- added menu item and icons for X, taken from DosEmu package
- added script for downloading/extracting/menu adding DOS executables
* Wed Oct 08 2003 Ilya Evseev <ilya_evseev@mail.ru> 0.58-1
- initial RPM build, rpmbuild -ba --target i586 dosbox.spec