Port of the atari800 emulator to the 3DS.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

atari800.spec 5.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  1. # generic defines used by all distributions.
  2. #
  3. %define ver 3.1.0
  4. # When adding a target, add an $options_<target_name> variable to the %build
  5. # section, and add %{_bindir}/%{name}-<target_name> to the files list in the
  6. # %files section.
  7. %define targets sdl
  8. %define maintarget sdl
  9. %define myrelease 1
  10. %define mybuild 1
  11. %define _rel %{myrelease}.%{mybuild}
  12. # define the package groups. If they all followed the same naming convention,
  13. # these would be the same. They don't, and so they aren't :(
  14. #
  15. %define suse_group System/Emulators/Other
  16. %define mandriva_group Console/Emulators
  17. %define fedora_group Console/Emulators
  18. # defaults
  19. #
  20. %define group Console/Emulators
  21. %define rel %{_rel}
  22. %define my_suse 0
  23. %define my_mandriva 0
  24. %define my_fedora 0
  25. %define my_centos 0
  26. %if 0%{?suse_version:1}%{?sles_version:1}
  27. %define my_suse 1
  28. %endif
  29. # if present, use %distversion to find out which Mandriva version is being built
  30. #
  31. %if 0%{?distversion:1}
  32. %if 0%{?!mandriva_version:1}
  33. %define mandriva_version %(echo $[%{distversion}/10])
  34. %endif
  35. %endif
  36. %if 0%{?mandriva_version:1}
  37. %define my_mandriva 1
  38. %define my_vendor mandriva
  39. %endif
  40. # if present, decode %dist to find out which OS package is being built on
  41. #
  42. %if 0%{?dist:1}
  43. # Centos or Fedora
  44. #
  45. %define my_which_os %(i=%{dist} ; if [ "${i::3}" == ".fc" ] ; then echo "1" ; else echo "0" ; fi )
  46. %if %{my_which_os}
  47. %if 0%{?!fedora_version:1}
  48. %define fedora_version %(i=%{dist} ; echo "${i:3}" )
  49. %endif
  50. %else
  51. %if 0%{?!centos_version:1}
  52. %define centos_version %(i=%{dist} ; echo "${i:3}00" )
  53. %endif
  54. %endif
  55. %endif
  56. %if 0%{?fedora_version:1}
  57. %define my_fedora 1
  58. %define my_vendor fedora
  59. %endif
  60. %if 0%{?centos_version:1}
  61. %define my_centos 1
  62. %define my_vendor centos
  63. %endif
  64. %if %{my_suse}
  65. %if %{suse_version}
  66. %define rel %{myrelease}.suse%(echo $[%suse_version/10]).%{mybuild}
  67. %else
  68. %define rel %{myrelease}.sles%{sles_version}.%{mybuild}
  69. %endif
  70. %define group %{suse_group}
  71. %endif
  72. # building on a Mandriva/Mandrake Linux system.
  73. #
  74. # this should create a release that conforms to the Mandriva naming conventions.
  75. #
  76. %if %{my_mandriva}
  77. %define rel %{myrelease}.mdv%{mandriva_version}.%{mybuild}
  78. %define group %{mandriva_group}
  79. %endif
  80. # building on a Fedora Core Linux system.
  81. #
  82. # this should create a release that conforms to the Fedora naming conventions.
  83. #
  84. %if %{my_fedora}
  85. %if 0%{?!fedora_version:1}
  86. %define fedora_version %(i="%dist" ; echo "${i:3}")
  87. %endif
  88. %if 0%{?!dist:1}
  89. %define dist .fc%{fedora_version}
  90. %endif
  91. %define rel %{myrelease}%{dist}.%{mybuild}
  92. %define group %{fedora_group}
  93. %endif
  94. # building on a Centos Linux system.
  95. #
  96. # this should create a release that conforms to the Centos naming conventions.
  97. #
  98. %if %{my_centos}
  99. %if 0%{?!centos_version:1}
  100. %define centos_version %(i="%dist" ; echo "${i:3}")
  101. %endif
  102. %if 0%{?!dist:1}
  103. %define dist .el%{centos_version}
  104. %endif
  105. %define rel %{myrelease}%{dist}.%{mybuild}
  106. %define group %{fedora_group}
  107. %endif
  108. %if %{my_suse}
  109. Requires: SDL >= 1.2.10
  110. BuildRequires: SDL-devel >= 1.2.10
  111. %endif
  112. %if %{my_mandriva}
  113. Requires: libSDL >= 1.2.10
  114. BuildRequires: libSDL-devel >= 1.2.10
  115. %endif
  116. %if %{my_fedora}
  117. Requires: SDL >= 1.2.10
  118. BuildRequires: SDL-devel >= 1.2.10
  119. %endif
  120. # Now for the meat of the spec file
  121. #
  122. Name: atari800
  123. Version: %{ver}
  124. Summary: An emulator of 8-bit Atari personal computers
  125. License: GPLv2
  126. URL: http://atari800.sourceforge.net/
  127. Source: http://prdownloads.sourceforge.net/atari800/%{name}-%{version}.tar.gz
  128. Group: %{group}
  129. Release: %{rel}
  130. BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
  131. BuildRequires: zlib-devel
  132. BuildRequires: libpng-devel
  133. BuildRequires: readline-devel
  134. %description
  135. Atari800 is an emulator for Atari 8-bit computer systems including the 400,
  136. 800, 1200XL, 600XL, 800XL, 65XE, 130XE, 800XE and the XE Game System, and also
  137. for the Atari 5200 SuperSystem console. It can be used on console, FrameBuffer
  138. or X11. It features excellent compatibility, HIFI sound support, artifacting
  139. emulation, precise cycle-exact ANTIC/GTIA emulation and more.
  140. Authors:
  141. David Firth
  142. and Atari800 Development Team (see CREDITS for a full list)
  143. %prep
  144. %setup -q -n %{name}-%{version}
  145. %build
  146. options_sdl="--with-video=sdl --with-sound=sdl"
  147. #options_ncurses="--with-video=ncurses --with-sound=oss"
  148. #options_x11="--target=x11 --with-sound=oss"
  149. cd src
  150. for target in %{targets}
  151. do
  152. %configure `eval echo \\\$options_${target}`
  153. %{__make} %{?jobs:-j%jobs}
  154. mv atari800 atari800-${target}
  155. %{__make} clean
  156. done
  157. touch atari800
  158. %install
  159. cd src
  160. mkdir -p %{buildroot}/%{_bindir}
  161. mkdir -p %{buildroot}/%{_mandir}/man1
  162. for target in %{targets}
  163. do
  164. install -m 755 atari800-$target %{buildroot}/%{_bindir}
  165. done
  166. (
  167. cd %{buildroot}/%{_bindir}
  168. ln -sf %{name}-%{maintarget} %{name}
  169. )
  170. mv %{name}.man %{name}.1
  171. install -m 644 %{name}.1 %{buildroot}/%{_mandir}/man1/
  172. %files
  173. %defattr(-,root,root)
  174. %{_bindir}/%{name}
  175. %{_bindir}/%{name}-%{maintarget}
  176. %{_mandir}/man1/%{name}.1.*
  177. %doc COPYING
  178. %doc README.1ST
  179. %doc DOC/BUGS
  180. %doc DOC/ChangeLog
  181. %doc DOC/CREDITS
  182. %doc DOC/FAQ
  183. %doc DOC/INSTALL
  184. %doc DOC/NEWS
  185. %doc DOC/PORTING
  186. %doc DOC/README
  187. %doc DOC/TODO
  188. %doc DOC/USAGE
  189. %clean
  190. %{__rm} -rf %{buildroot}
  191. %{__rm} -rf %{_builddir}/%{name}-%{version}-%{release}-buildroot