-%define _kernel_ver %(grep UTS_RELEASE %{_kernelsrcdir}/include/linux/version.h 2>/dev/null| cut -d'"' -f2)
-#%define _kernel_ver_str %(echo %{_kernel_ver} | sed s/-/_/g)
+#
+# Conditional build:
+# _with_static - linked static
+#
+# TODO: look at commented out patches
+# documentation build is very very slow, I don't why
+
Summary: A DOS emulator
Summary(de): DOS-Emulator
+Summary(es): Emulador DOS
Summary(fr): Emulateur DOS
Summary(pl): Emulator DOSa
+Summary(pt_BR): Emulador DOS
Summary(tr): DOS öykünümcüsü
Name: dosemu
-Version: 1.0.2
-Release: 1
-License: distributable
+%define ver 1.1.4
+%define subver 13
+Version: %{ver}.%{subver}
+# Please don't bump to 1 until dosemu-1.2
+Release: 0.1
+License: GPL v2
Group: Applications/Emulators
-Group(de): Applikationen/Emulators
-Group(pl): Aplikacje/Emulatory
-Source0: ftp://ftp.dosemu.org/dosemu/%{name}-%{version}.tgz
-Source1: %{name}-pl-man-pages.tar.bz2
-Source2: dosemu-sys.tar.gz
-Source3: http://prdownloads.sourceforge.net/freedos/ke2025c16.zip
-Source4: autoexec2.bat
-Source5: config2.sys
-Source6: keybpl.exe
-Source7: egapl.exe
-Source8: shsucdx.exe
-Patch0: %{name}-dosemu_conf.patch
-Patch1: %{name}-1.0.2-man-pages.patch
+Source0: ftp://ftp.sourceforge.net/pub/sourceforge/dosemu/%{name}-%{ver}.tgz
+Source1: http://dosemu.sourceforge.net/testing/patchset-%{version}.tgz
+Source2: %{name}-sys.tar.gz
+Source3: %{name}-PRZECZYTAJ_TO
+Source4: %{name}-README.PLD
+Source5: %{name}.desktop
+Source6: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-pl-man-pages.tar.bz2
+#Source6: http://www.dosemu.org/~stas/patchset-%{version}.%{pver}.tgz
+Patch0: %{name}-man-pages.patch
+Patch1: %{name}-parser-buf.patch
+Patch2: %{name}-make-new.patch
+Patch3: %{name}-%{name}_conf.patch
+Patch4: %{name}-doSgmlTools.patch
+Patch5: %{name}-makehtml.patch
+Patch6: %{name}-nox.patch
URL: http://www.dosemu.org/
+BuildRequires: XFree86-devel
+BuildRequires: autoconf
BuildRequires: bin86
-BuildRequires: unzip
BuildRequires: bison
+BuildRequires: docbook-dtd30-sgml
BuildRequires: flex
-BuildRequires: glibc-static
-BuildRequires: XFree86-static
-BuildRequires: slang-static
-Conflicts: mtools < 3.6
-Exclusivearch: %{ix86}
+BuildRequires: lynx
+BuildRequires: openjade
+BuildRequires: perl
+BuildRequires: sgml-tools
+BuildRequires: slang-devel
+BuildRequires: util-linux
+BuildRequires: unzip
+%{?_with_static:BuildRequires: glibc-static}
+%{?_with_static:BuildRequires: XFree86-static}
+%{?_with_static:BuildRequires: slang-static}
+ExclusiveArch: %{ix86}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Conflicts: kernel < 2.0.28
+Conflicts: mtools < 3.6
+Obsoletes: xdosemu
+
+%define _xbindir /usr/X11R6/bin
+%define _dosemudir /var/lib/dosemu
%description
Dosemu is a DOS emulator. Once you've installed dosemu, start the DOS
You need to install dosemu if you use DOS programs and you want to be
able to run them on your GNU/Linux system. You may also need to
-install the dosemu-freedos-* package.
+install the dosemu-freedos-* packages.
%description -l es
Esta es una versión del emulador DOS que fue proyectada para
Dosemu to Emulator systemu DOS. Po zainstalowaniu mo¿esz go uruchomiæ
komend± "dos".
-Je¶li korzystasz z dosowych programów i chcia³by¶ je uruchamiaæ
-na twoim Linuksowym systemie zainstaluj dosemu. Mo¿esz te¿
-potrzebowaæ pakietów dosemu-freedos-*.
+Je¶li korzystasz z dosowych programów i chcia³by¶ je uruchamiaæ na
+twoim Linuksowym systemie zainstaluj dosemu. Mo¿esz te¿ potrzebowaæ
+pakietów dosemu-freedos-*.
%description -l pt_BR
Essa é uma versão do emulador DOS que foi projetada para rodar em
%package -n xdosemu
Summary: A DOS emulator for the X Window System
Summary(de): DOS-Emulator für X
+Summary(es): Emulador DOS que se ejecuta en X
Summary(fr): Émulateur DOS conçu pou être lancé sous X
+Summary(pl): Emulator DOSa dla Systemu X Window
+Summary(pt_BR): Emulador DOS que roda no X
Summary(tr): X altýnda çalýþan DOS öykünümcüsü
Group: Applications/Emulators
-Group(de): Applikationen/Emulators
-Group(pl): Aplikacje/Emulatory
-Requires: %{name} = %{version}
+Provides: dosemu
+Obsoletes: dosemu
%description -n xdosemu
Xdosemu is a version of the dosemu DOS emulator that runs with the X
Window System. Xdosemu provides VGA graphics and mouse support.
-Install xdosemu if you need to run DOS programs on your system, and
-you'd like to do so with the convenience of graphics support and mouse
-capabilities.
-
-%description -l de -n xdosemu
+%description -n xdosemu -l de
Dies ist eine Version des DOS-Emulators für X-Windows-Sitzungen. Er
unterstützt VGA-Grafiken und Maus.
-%description -l es -n xdosemu
+%description -n xdosemu -l es
Esta es la versión del emulador DOS dibujada para ejecutarse en una
ventana del X Window. Posee soporte para gráficos VGA y ratón.
-%description -l fr -n xdosemu
+%description -n xdosemu -l fr
Version de l'émulateur DOS conçue pour tourner dans une session X.
Offre une gestion des graphismes VGA et de la souris.
-%description -l pl -n xdosemu
+%description -n xdosemu -l pl
Xdosemu jest wersj± emulatora dosemu dzia³aj±c± w X Window System.
Xdosemu ma wsparcie dla grafiki VGA i obs³ugi myszki.
-%description -l pt_BR -n xdosemu
+%description -n xdosemu -l pt_BR
Esta é a versão do emulador DOS desenhada para rodar em uma janela do
X Window. Possui suporte a gráficos VGA e mouse.
-%description -l tr -n xdosemu
+%description -n xdosemu -l tr
Bu yazýlým, DOS öykünümcüsünün X altýnda çalýþan bir sürümüdür. VGA
grafikleri ve fare desteði vardýr.
-%package dosnet
-Summary: kernel module dosnet.o
-Summary(pl): Modu³ dosnet.o do kernela
+%package utils
+Summary: Utilities for dosemu
+Summary(pl): Programy pomocnicze do dosemu
Group: Applications/Emulators
-Group(de): Applikationen/Emulators
-Group(pl): Aplikacje/Emulatory
-Requires: %{name} = %{version}
-Prereq: /sbin/depmod
-
-%description dosnet
-Kernel module for dosnet (vnet). Dosnet lets you establish TCP/IP
-connection beetween dosemu session and Linux kernel. Read README
-for dosemu for more information.
-
-%description -l pl dosnet
-Modu³ dosnet.o dla kernela. Modu³ ten pozwala ³±czyæ siê programom
-DOSowym wykorzystuj±cym TCP/IP z Linuksem. Przydatny miêdzy innymi
-przy pisaniu programów sieciowych dla DOSa. Rzeteln± informacjê na
-temat dosnet mo¿esz znale¼æ w README do dosemu.
+Requires: dosemu
+
+%description utils
+Utilities for dosemu: dexeconfig, hdinfo, mkhdimage, mkfatimage16.
+
+%description utils -l pl
+Programy pomocnicze dla dosemu: dexeconfig, hdinfo, mkhdimage,
+mkfatimage16.
%prep
-%setup -q -a1 -a2
-%patch0 -p0
-%patch1 -p1
+%setup -q -n %{name}-%{ver} -a1 -a2 -a6
+sh tmp/do_patch
-rm -rf freedos
-mkdir freedos
-unzip -L -o %{SOURCE3} -d freedos
+#%patch0 -p1
+#%patch1 -p1
+#%patch2 -p1
+#%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p0
%build
-cp base-configure.in configure.in
-autoconf
-%configure \
- --without-x \
- --enable-linkstatic \
+OPTFLAGS="%{rpmcflags} %{!?debug:-fomit-frame-pointer}"; export OPTFLAGS
+
+
+./mkpluginhooks enable plugin_keyboard off plugin_kbd_unicode on \
+plugin_extra_charset on plugin_term on plugin_translate on plugin_demo off
+
+#cp -f base-configure.in configure.in
+%{__autoconf}
+
+# non-X version
+%configure2_13 \
+%{?_with_static:--enable-linkstatic} \
--enable-new-intcode \
- --enable-aspi
-echo | %{__make}
+ --enable-aspi \
+ --without-x
+
+%{__make} WAIT=no
mv -f bin/dosemu.bin bin/dos-nox
-%configure \
- --enable-linkstatic \
+
+# X version
+%configure2_13 \
+%{?_with_static:--enable-linkstatic} \
--enable-new-intcode \
--enable-aspi
-echo | %{__make}
-make -C src/dosext/net/v-net
-mv -f bin/dos-nox bin/dos
+%{__make} WAIT=no
+mv -f bin/dosemu.bin bin/dos-x
+mv -f bin/dos-nox bin/dosemu.bin
mv -f man/dosemu.bin.1 man/dos.1
-%define _dosemudir /var/lib/dosemu
+# documentation
+%{__make} -C src/doc/DANG html
+%{__make} -C src/doc/HOWTO html
+%{__make} -C src/doc/README html
+
+find src/doc -name "*.html" -exec cp -f '{}' doc/ ';'
+
+# midid daemon
+#%{__make} midid
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_sysconfdir},%{_mandir}/man1,%{_mandir}/pl/man1,%{_pixmapsdir}}
-install -d $RPM_BUILD_ROOT%{_dosemudir}/bootdir/{dosemu,freedos/doc/fdkernel}
-install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/net
-
-install bin/dosemu.bin $RPM_BUILD_ROOT%{_bindir}/xdos
-install bin/dos $RPM_BUILD_ROOT%{_bindir}/dos
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_xbindir},%{_sysconfdir},%{_pixmapsdir}} \
+ $RPM_BUILD_ROOT{%{_mandir}/man1,%{_mandir}/pl/man1} \
+ $RPM_BUILD_ROOT%{_dosemudir}/bootdir/{dosemu,freedos/doc/fdkernel} \
+ $RPM_BUILD_ROOT%{_applnkdir}/System
+
+install bin/dosemu.bin $RPM_BUILD_ROOT%{_bindir}/dos
+install bin/dos-x $RPM_BUILD_ROOT%{_xbindir}/dos
+install bin/midid $RPM_BUILD_ROOT%{_bindir}/midid
+ln -sf dos $RPM_BUILD_ROOT%{_xbindir}/xdos
+ln -sf dos $RPM_BUILD_ROOT%{_xbindir}/dosexec
install bin/dosdebug $RPM_BUILD_ROOT%{_bindir}/dosdebug
install src/tools/periph/{dexeconfig,hdinfo,mkhdimage,mkfatimage16} $RPM_BUILD_ROOT%{_bindir}
-install etc/dosemu.xpm $RPM_BUILD_ROOT%{_prefix}/X11R6/share/pixmaps
+ln -sf dos $RPM_BUILD_ROOT%{_bindir}/dosexec
+
+install etc/dosemu.xpm $RPM_BUILD_ROOT%{_pixmapsdir}
install etc/dosemu.users.secure $RPM_BUILD_ROOT%{_sysconfdir}/dosemu.users
install etc/global.conf $RPM_BUILD_ROOT%{_dosemudir}/global.conf
install etc/dosemu.conf $RPM_BUILD_ROOT%{_sysconfdir}/dosemu.conf
+
install man/{dos.1,dosdebug.1,xdos.1,mkfatimage16.1} $RPM_BUILD_ROOT%{_mandir}/man1
install pl/man1/{dos.1,dosdebug.1,xdos.1} $RPM_BUILD_ROOT%{_mandir}/pl/man1
-install %{SOURCE4} $RPM_BUILD_ROOT%{_dosemudir}/bootdir/autoexec.bat
-install %{SOURCE5} $RPM_BUILD_ROOT%{_dosemudir}/bootdir/config.sys
-install %{SOURCE6} $RPM_BUILD_ROOT%{_dosemudir}/bootdir/keybpl.exe
-install %{SOURCE7} $RPM_BUILD_ROOT%{_dosemudir}/bootdir/egapl.exe
-install %{SOURCE8} $RPM_BUILD_ROOT%{_dosemudir}/bootdir/shsucdx.exe
+
install src/plugin/commands/*.com $RPM_BUILD_ROOT%{_dosemudir}/bootdir/dosemu
install dosemu/*.sys $RPM_BUILD_ROOT%{_dosemudir}/bootdir/dosemu
-install src/dosext/net/v-net/dosnet.o $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/net
-install freedos/bin/kernel.sys $RPM_BUILD_ROOT%{_dosemudir}/bootdir
-install freedos/doc/fdkernel/* $RPM_BUILD_ROOT%{_dosemudir}/bootdir/freedos/doc/fdkernel
-ln -sf dosemu/comcom.com $RPM_BUILD_ROOT%{_dosemudir}/bootdir/command.com
+cp %{SOURCE3} PRZECZYTAJ_TO
+cp %{SOURCE4} README.PLD
+install %{SOURCE5} $RPM_BUILD_ROOT%{_applnkdir}/System
-# Take out irritating ^H's from the documentation
-for i in `ls --color=no doc/` ; do cat doc/$i > $i ; cat $i | perl -p -e 's/.\b//g' > doc/$i ; done
+#ln -sf dosemu/comcom.com $RPM_BUILD_ROOT%{_dosemudir}/bootdir/command.com
rm -f doc/{configuration,dosemu.lsm}
-#mv -f $RPM_BUILD_ROOT/usr/X11R6/lib/X11/fonts/misc \
-# $RPM_BUILD_ROOT%{_fontsdir}
-
-
-gzip -9nf QuickStart COPYING ChangeLog* doc/*
-
%clean
rm -rf $RPM_BUILD_ROOT
-
-%post dosnet
-depmod -a
-
-%postun dosnet
-depmod -a
-
-
%files
%defattr(644,root,root,755)
-%doc *.gz doc/*
+%doc QuickStart COPYING ChangeLog* doc/*.html PRZECZYTAJ_TO README.PLD
%dir %{_dosemudir}
-%config(noreplace) %{_sysconfdir}/dosemu.conf
-%config(noreplace) %{_sysconfdir}/dosemu.users
-#%config(noreplace) %{_dosemudir}/hdimage
-%config(noreplace) %{_dosemudir}/global.conf
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/dosemu.conf
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/dosemu.users
+%config(noreplace) %verify(not size mtime md5) %{_dosemudir}/global.conf
%attr(755,root,root) %{_bindir}/dos
%attr(755,root,root) %{_bindir}/dosdebug
-#%attr(755,root,root) %{_bindir}/dosexec
-#%attr(755,root,root) %{_bindir}/dexeconfig
-%attr(755,root,root) %{_bindir}/hdinfo
-#%attr(755,root,root) %{_bindir}/do_mtools
-#%attr(755,root,root) %{_bindir}/extract-dos
-#%attr(755,root,root) %{_bindir}/mkdexe
-#%attr(755,root,root) %{_bindir}/myxcopy
-%attr(755,root,root) %{_bindir}/mkhdimage
-%attr(755,root,root) %{_bindir}/mkfatimage16
-#%attr(755,root,root) %{_bindir}/rundos
+%attr(755,root,root) %{_bindir}/dosexec
+%attr(755,root,root) %{_bindir}/midid
%dir %{_dosemudir}/bootdir
%dir %{_dosemudir}/bootdir/dosemu
-%dir %{_dosemudir}/bootdir/freedos
%{_dosemudir}/bootdir/dosemu/*
-%{_dosemudir}/bootdir/kernel.sys
-%config(noreplace) %{_dosemudir}/bootdir/autoexec.bat
-%config(noreplace) %{_dosemudir}/bootdir/config.sys
-%{_dosemudir}/bootdir/command.com
-%{_dosemudir}/bootdir/*.exe
-%{_dosemudir}/bootdir/freedos/*
-%{_mandir}/man1/dos*
-%{_mandir}/man1/mkfatimage16.1*
-%lang(pl) %{_mandir}/pl/man1/dos*
+#%{_dosemudir}/bootdir/command.com
+%{_mandir}/man1/[dm]*
+%lang(pl) %{_mandir}/pl/man1/d*
%{_pixmapsdir}/dosemu.xpm
%files -n xdosemu
%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/xdos
-# %attr(755,root,root) %{_bindir}/xtermdos
+%doc QuickStart COPYING ChangeLog* doc/*.html PRZECZYTAJ_TO README.PLD
+%dir %{_dosemudir}
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/dosemu.conf
+%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/dosemu.users
+%config(noreplace) %verify(not size mtime md5) %{_dosemudir}/global.conf
+%attr(755,root,root) %{_bindir}/dosdebug
+%attr(755,root,root) %{_bindir}/midid
+%attr(755,root,root) %{_xbindir}/*
+%dir %{_dosemudir}/bootdir
+%dir %{_dosemudir}/bootdir/dosemu
+%{_dosemudir}/bootdir/dosemu/*
+#%{_dosemudir}/bootdir/command.com
+%{_mandir}/man1/[dm]*
%{_mandir}/man1/xdos.1*
+%lang(pl) %{_mandir}/pl/man1/d*
%lang(pl) %{_mandir}/pl/man1/xdos.1*
-# %{_mandir}/man1/xtermdos.1*
-# %{_datadir}/fonts/misc/*
+%{_applnkdir}/System/*
+%{_pixmapsdir}/dosemu.xpm
-%files dosnet
+%files utils
%defattr(644,root,root,755)
-/lib/modules/%{_kernel_ver}/net/dosnet.o
+%attr(755,root,root) %{_bindir}/dexeconfig
+%attr(755,root,root) %{_bindir}/hdinfo
+%attr(755,root,root) %{_bindir}/mkhdimage
+%attr(755,root,root) %{_bindir}/mkfatimage16