1 # TODO: is qt optional? (either as bcond, or qt-less version)
2 %define fver %(echo %{version} | tr -d .)
3 Summary: MAME - Multiple Arcade Machine Emulator
4 Summary(pl.UTF-8): MAME (Multiple Arcade Machine Emulator) - emulator wielu automatów do gier
8 License: GPL v2+ (BSD for core part, LGPL v2.1+/GPL v2+ for some drivers)
9 Group: X11/Applications/Games
10 #Source0Download: http://www.mamedev.org/release.html
11 Source0: http://www.mamedev.org/downloader.php?file=mame0167/%{name}%{fver}.zip
12 # Source0-md5: cb2ab1cac87e6a5187d5c631d58ee3fa
13 Patch0: %{name}-system-jsoncpp.patch
14 URL: http://www.mamedev.org/
15 BuildRequires: OpenGL-GLU-devel
16 BuildRequires: SDL2-devel >= 2
17 BuildRequires: SDL2_ttf-devel >= 2
18 BuildRequires: expat-devel >= 1.95
19 BuildRequires: flac-devel
20 BuildRequires: libjpeg-devel
21 BuildRequires: lua53-devel >= 5.3
22 BuildRequires: pkgconfig
23 BuildRequires: portaudio-devel
24 BuildRequires: portmidi-devel
25 BuildRequires: sed >= 4.0
26 BuildRequires: sqlite3-devel >= 3
28 BuildRequires: xorg-lib-libX11-devel
29 BuildRequires: xorg-lib-libXinerama-devel
30 BuildRequires: zlib-devel
36 Obsoletes: xmame-qtmame
37 Obsoletes: xmame-svgalib
39 Obsoletes: xmame-xmess-SDL
40 Obsoletes: xmame-xmess-svgalib
41 Obsoletes: xmame-xmess-x11
42 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
45 MAME stands for Multiple Arcade Machine Emulator.
47 MAME's purpose is to preserve decades of video-game history. As gaming
48 technology continues to rush forward, MAME prevents these important
49 "vintage" games from being lost and forgotten. This is achieved by
50 documenting the hardware and how it functions. The source code to MAME
51 serves as this documentation. The fact that the games are playable
52 serves primarily to validate the accuracy of the documentation (how
53 else can you prove that you have recreated the hardware faithfully?).
55 %description -l pl.UTF-8
56 MAME to skrót od Multiple Arcade Machine Emulator - emulatora wielu
59 Celem MAME jest zachowanie dziesięcioleci historii gier wideo.
60 Jakkolwiek techonologia gier cały czas szybko się posuwa, MAME chroni
61 te ważne, "starodawne" gry od zapomnienia. Można to osiągnąć poprzez
62 dokumentowanie sprzętu i sposobu jego funkcjonowania. Kod źródłowy
63 MAME służy jako ta dokumentacja. Fakt, że w gry da się grać, służy
64 głównie sprawdzeniu dokładności dokumentacji (bo jak inaczej można
65 udowodnić wierne odtworzenie sprzętu?).
69 %{__unzip} -q mame.zip
72 %{__sed} -i -e 's/"lua"/"lua5.3"/' scripts/src/main.lua
75 for target in mame mess ; do
78 %ifarch arm ppc ppc64 s390 s390x sparc sparcv9 sparc64
81 %ifarch %{x8664} alpha ia64 ppc64 s390x sparc64
87 OPT_FLAGS="%{rpmcflags} $(pkg-config --cflags lua5.3)" \
88 LDFLAGS="%{rpmldflags}" \
90 USE_SYSTEM_LIB_EXPAT=1 \
91 USE_SYSTEM_LIB_FLAC=1 \
92 USE_SYSTEM_LIB_JPEG=1 \
93 USE_SYSTEM_LIB_LUA=1 \
94 USE_SYSTEM_LIB_PORTAUDIO=1 \
95 USE_SYSTEM_LIB_PORTMIDI=1 \
96 USE_SYSTEM_LIB_SQLITE3=1 \
97 USE_SYSTEM_LIB_ZLIB=1 \
102 rm -rf $RPM_BUILD_ROOT
103 install -d $RPM_BUILD_ROOT%{_bindir}
105 install mame mess $RPM_BUILD_ROOT%{_bindir}
108 rm -rf $RPM_BUILD_ROOT
111 %defattr(644,root,root,755)
112 %doc README.md docs/{SDL,config,floppy,hlsl,imgtool,m6502,mamelicense,newvideo,nscsi}.txt docs/luaengine.md
113 %attr(755,root,root) %{_bindir}/mame
114 %attr(755,root,root) %{_bindir}/mess