TiMidity++4ALSA-vl.spec 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432
  1. %define debug off
  2. %define org_name TiMidity++
  3. Name: TiMidity++4ALSA
  4. Version: 2.14.0
  5. Release: 3%{?_dist_release}
  6. Summary: A software wavetable MIDI synthesizer (for ALSA)
  7. Summary(ja): ソフトウェアMIDI音源シンセサイザー (for ALSA)
  8. License: GPLv2
  9. Group: Applications/Multimedia
  10. URL: http://timidity.sourceforge.net/
  11. Source: http://downloads.sourceforge.net/timidity/%{org_name}-%{version}.tar.xz
  12. Source1: timidity.desktop
  13. Source2: timidity_add_text.txt
  14. Source3: alsa2midi
  15. Source4: timidity++.cfg
  16. Source5: timidity.Sample.cfg
  17. # VineLinux -- irokawa patches
  18. ## TiMidity++-iro.diff
  19. # replase and others (babasaki)
  20. ## Patch10: TiMidity++-2.13.2-doc.patch
  21. ## Patch30: TiMidity++-2.13.2-interface.patch
  22. ## package rebuild patches
  23. Patch1: TiMidity++_configure.patch
  24. Patch2: TiMidity++_manual_C_ja.patch
  25. Patch3: TiMidity++_interface.patch
  26. Patch4: TiMidity++_lib.patch
  27. Patch5: TiMidity++_timidity.patch
  28. Patch6: TiMidity++_utils.patch
  29. Patch10: TiMidity++_tcltk.patch
  30. #--------------------------------------------------------------------
  31. BuildRoot: %{_tmppath}/%{org_name}-%{version}-root
  32. BuildRequires: alsa-lib-devel, ncurses-devel, gtk2-devel
  33. BuildRequires: libao-devel, libvorbis-devel, flac-devel, speex-devel
  34. BuildRequires: jack-audio-connection-kit-devel
  35. BuildRequires: desktop-file-utils
  36. BuildRequires: tcl-devel tk-devel
  37. BuildRequires: libuuid-devel
  38. ## for ALSA
  39. #BuildRequires: glibc-kernheaders
  40. #BuildRequires: libogg-devel, libvorbis-devel
  41. #BuildRequires: Xaw3d-devel, gtk+-devel, tcl, tk
  42. #Requires: libvorbis, libogg, XOrg-libs, audiofile
  43. #Requires: Xaw3d, gtk+, glib, tcl, tk, slang, alsa-utils
  44. Requires: hicolor-icon-theme
  45. Requires(pre): soundfont2
  46. Requires(post): /sbin/chkconfig, /sbin/service, /sbin/update-alternatives
  47. Requires(preun): /sbin/chkconfig, /sbin/service, /sbin/update-alternatives
  48. ## _Conflicts_ : TiMidity++
  49. Obsoletes: TiMidity++ < %{version}-%{release}
  50. Provides: TiMidity++ = %{version}-%{release}
  51. ## =========================
  52. Vendor: Project Vine
  53. Distribution: Vine Linux
  54. ## Packager: Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  55. #--------------------------------------------------------------------
  56. %description
  57. TiMidity has originally been a converter that converts MIDI files to WAV
  58. audio file. But now TiMidity++ is not only a converter but also the
  59. real-time player that can play a MIDI file in real time. TiMidity does
  60. not requires external MIDI instrument module to play MIDI file, performs
  61. with software power.
  62. -Od8M -s11025 options will help you if bothered with noisy replay.
  63. TiMidity++ uses GUS/patch (Glavis Ultrasound) as the voice data to
  64. play. You must get GUS/patch files, and make the configuration file.
  65. You must make the configuration file (*.cfg). By default,
  66. timidity.cfg is /etc/timidity/timidity.cfg.
  67. Take care if you wanna upgrade from older version.
  68. %description -l ja
  69. TiMidity++ は、もともとは MIDI -> WAV コンバータでしたが、
  70. 今ではソフトウェア MIDI プレーヤとしての機能を持っています。
  71. MIDI 演奏用のハードウェアは必要ありません。
  72. CPU パワーの少ないマシンでは、-Od8M -s11025 オプションを
  73. 付けると音飛びが防げるでしょう。
  74. =======================================================================
  75. このパッケージは TiMidity++ を ALSA のためのMIDIポートにする機能を含みます。
  76. root権限で /etc/init.d/alsa2midi status を確認してください。
  77. (不要なら停止しても問題ありません。任意にはstart/stopで制御できます)
  78. 注:このパッケージはデスクトップ設定を含み、サウンドフォント(音色ファィル)
  79. 必須の構成になっています
  80. ※サウンドフォントについて
  81. 演奏するためには、サウンドフォント(*.pat または *.sf2)をインストール、
  82. または入手し、timidity.cfg 設定ファイルを作成します。
  83. 設定ファイルは、
  84. /etc/timidity/timidity++.cfg
  85. /etc/timidity/timidity.cfg@ --> /etc/update-alternatives/timidity.cfg
  86. ……の順序で認識されますが、timidity++.cfg が存在すると timidity.cfg は
  87. 読み込まれません。そこで、source 文を使って timidity.cfg をインクルード
  88. しています。
  89. このパッケージにはサンプルの timidity.Sample.cfg が含まれ、
  90. /etc/timidity/timidity.cfg にリンクされています。
  91. ※soundfonts2を提供するパッケージが必ず先にインストールされるはずなので、
  92. update-alternativesのリストには出ますが、使用されません。
  93. あくまで参考ですが、共通の起動時オプションを設定する場合は、
  94. timidity++.cfg に、サウンドフォントに固有の定義は timidity.cfg@ を
  95. 活用すると良いかと思います。( timidity++.cfg の文末に source文を忘れずに)
  96. VineLinuxに用意した freepatsパッケージなどのサウンドフォントを使用する
  97. 場合には、root権限で timidity.cfg のサウンドフォント定義を切替えられる
  98. ようにしています。
  99. rootコマンド
  100. update-alternatives --config timidity.cfg
  101. ※他は追加情報(timidity_add_text.txt)をご覧下さい
  102. #--------------------------------------------------------------------
  103. %prep
  104. %setup -q -n %{org_name}-%{version}
  105. #patch1 -p1
  106. #patch2 -p1
  107. #patch3 -p1
  108. #patch4 -p1
  109. #patch5 -p1
  110. #patch6 -p1
  111. #patch10 -p1
  112. cp -p %{SOURCE2} .
  113. iconv -f euc-jp -t utf8 README.ja > README.ja.utf8
  114. mv README.ja.utf8 README.ja
  115. %build
  116. export EXTRACFLAGS="$RPM_OPT_FLAGS -DCONFIG_FILE=\\\"/etc/timidity++.cfg\\\""
  117. # Note the first argument to --enable-audio is the default output, and
  118. # we use libao to get pulse output
  119. %configure \
  120. --disable-dependency-tracking \
  121. --with-module-dir=%{_libdir}/timidity++ \
  122. --enable-interface=ncurses,vt100,alsaseq,server,network,gtk,tcltk \
  123. --enable-dynamic=gtk,tcltk \
  124. --enable-audio=ao,alsa,oss,jack,vorbis,speex,flac
  125. make %{?_smp_mflags}
  126. # --enable-interface=ncurses,slang,tcltk,emacs,vt100,xskin,gtk,server,alsaseq,network,spectrogram \
  127. # --enable-audio=${ENABLE_AUDIO}
  128. ## --enable-audio=oss,alsa,arts,esd,ao,vorbis,speex,flac
  129. ## remove ,xaw
  130. #--------------------------------------------------------------------
  131. %install
  132. rm -rf $RPM_BUILD_ROOT
  133. make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
  134. # add Japanese stuffs
  135. cd doc/ja_JP.eucJP
  136. mkdir -p $RPM_BUILD_ROOT%{_mandir}/ja/{man1,man5}
  137. iconv -f euc-jp -t utf8 timidity.1 > timidity.1.utf8
  138. iconv -f euc-jp -t utf8 timidity.cfg.5 > timidity.cfg.5.utf8
  139. install -m644 timidity.1.utf8 $RPM_BUILD_ROOT%{_mandir}/ja/man1/timidity.1
  140. install -m644 timidity.cfg.5.utf8 $RPM_BUILD_ROOT%{_mandir}/ja/man5/timidity.cfg.5
  141. iconv -f euc-jp -t utf8 README.alsaseq > README.alsaseq.ja
  142. iconv -f euc-jp -t utf8 README.dl > README.dl.ja
  143. iconv -f euc-jp -t utf8 README.m2m > README.m2m.ja
  144. iconv -f euc-jp -t utf8 README.mts > README.mts.ja
  145. iconv -f euc-jp -t utf8 README.sf > README.sf.ja
  146. iconv -f euc-jp -t utf8 README.tk > README.tk.ja
  147. cd ../..
  148. # install .desktop
  149. mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
  150. desktop-file-install \
  151. --dir ${RPM_BUILD_ROOT}%{_datadir}/applications \
  152. %{SOURCE1}
  153. mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps
  154. install -p -m 644 interface/pixmaps/timidity.xpm \
  155. $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/timidity.xpm
  156. # make symlink for Window Maker
  157. #cd $RPM_BUILD_ROOT%{_sharedstatedir}/pixmaps/
  158. #ln -s timidity/timidity.xpm .
  159. # MIDI port init.d for ALSA
  160. mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/init.d/
  161. install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/init.d/
  162. mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/timidity/
  163. install %{SOURCE4} %{SOURCE5} $RPM_BUILD_ROOT/%{_sysconfdir}/timidity/
  164. %clean
  165. rm -rf $RPM_BUILD_ROOT
  166. #--------------------------------------------------------------------
  167. %post
  168. # update icon themes
  169. touch --no-create %{_datadir}/icons/hicolor || :
  170. if [ -x %{_bindir}/gtk-update-icon-cache ]; then
  171. %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
  172. fi
  173. if [ $1 -eq 1 ]; then
  174. /sbin/chkconfig --add alsa2midi
  175. fi
  176. if [ $1 -eq 2 ]; then
  177. /sbin/service alsa2midi condrestart >/dev/null 2>&1 || :
  178. fi
  179. # update-alternatives
  180. /sbin/update-alternatives --install \
  181. %{_sysconfdir}/timidity/timidity.cfg timidity.cfg \
  182. %{_sysconfdir}/timidity/timidity.Sample.cfg 1 \
  183. %preun
  184. # update-alternatives
  185. if [ $1 = 0 ]; then
  186. /sbin/service alsa2midi stop >/dev/null 2>&1 || :
  187. /sbin/chkconfig --del alsa2midi
  188. /sbin/update-alternatives --remove \
  189. timidity.cfg %{_sysconfdir}/timidity/timidity.Sample.cfg
  190. fi
  191. %postun
  192. # update icon themes
  193. touch --no-create %{_datadir}/icons/hicolor || :
  194. if [ -x %{_bindir}/gtk-update-icon-cache ]; then
  195. %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
  196. fi
  197. #--------------------------------------------------------------------
  198. %files
  199. %defattr(-,root,root)
  200. %doc AUTHORS COPYING README* NEWS ChangeLog* doc/C/FAQ
  201. %doc timidity_add_text.txt doc/ja_JP.eucJP/README*.ja
  202. %config(noreplace) %{_sysconfdir}/timidity/timidity*.cfg
  203. %{_sysconfdir}/init.d/*
  204. %{_bindir}/*
  205. %{_libdir}/timidity++
  206. %{_mandir}/*
  207. %{_datadir}/applications/timidity.desktop
  208. %{_datadir}/icons/hicolor/48x48/apps/timidity.xpm
  209. %changelog
  210. * Sun Sep 01 2019 Toshiaki Ara <ara_t@384.jp> 2.14-0-3
  211. - rebuild with ncurses-6.1
  212. * Mon Feb 2 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 2.14.0-2
  213. - added BR: libuuid-devel
  214. * Mon Feb 2 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 2.14.0-1
  215. - rebuilt on current VineSeed
  216. - updated SOURCE1
  217. - changed SOURCE2 encoding to UTF-8
  218. - fixed spec encoding to UTF-8 (BTS #2784)
  219. - rebuilt with tcl/tk 8.5
  220. * Wed Aug 29 2012 Yoji TOYODA 2.13.2-10
  221. - rebuild with VineSeed environment
  222. - add Patch10 (TiMidity++_tcltk.patch)
  223. * Thu Aug 18 2008 Seiichirou Babasaki 2.13.2-9
  224. - Updated specfile
  225. - included "Shu KONNO" x86_64 changes.
  226. * Sat Aug 09 2008 Shu KONNO <owa@bg.wakwak.com> 2.13.2-8 (x86_64)
  227. - changed %%{_libdir}/timidity to %%{_prefix}/lib/timidity
  228. * Thu Jul 1 2008 Seiichirou Babasaki 2.13.2-8
  229. - Updated specfile
  230. - "Obsoletes:" and "Provides:" option
  231. - Updated timidity_add_text.txt
  232. * Wed Jun 11 2008 Seiichirou Babasaki 2.13.2-7
  233. - Updated specfile
  234. - Remove "flac" optin (Seed)
  235. - Build Requires : Emacs
  236. * Fri May 23 2008 Seiichirou Babasaki 2.13.2-6
  237. - Updated specfile
  238. - Packgage rename (TiMidity++ to TiMidity++4ALSA)
  239. - remove wishx.sh
  240. * Fri May 9 2008 Seiichirou Babasaki 2.13.2-5
  241. - Updated specfile
  242. - add timidity++.cfg, dummy-cfg-file
  243. * Fri May 2 2008 Seiichirou Babasaki 2.13.2-4
  244. - Updated specfile
  245. - add alsa2midi /etc/init.d/ file
  246. - "update-alternatives" (Mandriva idea)
  247. * Fri Apr 18 2008 Seiichirou Babasaki 2.13.2-3
  248. - Updated specfile ( marge Seed-2.13.1)
  249. * Thu Apr 17 2008 Seiichirou Babasaki 2.13.2-2
  250. - Updated specfile ( soundable, gtk+ & tcltk interface )
  251. * Wed Apr 16 2008 Seiichirou Babasaki 2.13.2-1
  252. - Update source - Babasaki
  253. - Updated specfile (import FC9 )
  254. #--------------------------------------------------------------------
  255. * Thu Jul 27 2006 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 2.13.0-0vl2
  256. - rebuilt with Xaw3d-1.5-17vl3
  257. - s/Copyright/License/
  258. - changed Group to Applications/Multimedia
  259. - updated build dependancy
  260. * Fri Apr 30 2004 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  261. - update
  262. * Fri Aug 16 2002 Hiroaki Irokawa <irorin@terra.dti.ne.jp> 2.11.3-0vl4
  263. - fix typo (ncurces -> ncurses) thanks Mr. Mickey_U
  264. * Fri Jul 26 2002 MATSUBAYASHI Kohji <shaolin@vinelinux.org> 2.11.3-0vl3
  265. - rebuilt with libvorbis-1.0
  266. * Thu Feb 14 2002 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  267. - [TiMidity++-2.11.3-0vl2]
  268. - fix %defattr
  269. - Add Requires: XFree86-libs, audiofile, Xaw3d, gtk+, glib, tcl, tk, lesstif, slang
  270. * Fri Jan 18 2002 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  271. - [TiMidity++-2.11.3-0vl1]
  272. - update.
  273. * Mon Jan 14 2002 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  274. - [TiMidity++-2.11.2-0vl2]
  275. - Add Requires: libvorbis, libogg
  276. - Add BuildPreReq: libogg-devel, libvorbis-devel
  277. * Sat Jan 12 2002 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  278. - [TiMidity++-2.11.2-0vl1]
  279. - update.
  280. * Mon Dec 31 2001 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  281. - [TiMidity++-2.11.1-0vl1]
  282. - update.
  283. * Thu Dec 27 2001 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  284. - [TiMidity++-2.11.0-0vl1]
  285. - update.
  286. * Thu Nov 22 2001 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  287. - [TiMidity++-2.10.4-0vl2]
  288. - Rebuilt(About Tcl/Tk).
  289. * Mon Mar 19 2001 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  290. [TiMidity++-2.10.4-0vl1]
  291. - Updated to 2.10.4.
  292. * Sun Mar 11 2001 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  293. [TiMidity++-2.10.3-0vl1]
  294. - Updated to 2.10.3.
  295. * Sat Mar 03 2001 MATSUBAYASHI 'Shaolin' Kohji <shaolin@vinelinux.org>
  296. - 2.10.2-0vl3
  297. - always require esound
  298. - disable alsa in case alsa driver/library is not installed
  299. * Thu Jan 13 2001 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  300. [TiMidity++-2.10.2-0vl2]
  301. - Use some rpmmacros, Modified Compile Option & man5 data, tcl path.
  302. * Thu Nov 2 2000 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  303. [TiMidity++-2.10.2-0vl1]
  304. - Updated to 2.10.2.
  305. * Sat Oct 18 2000 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  306. [TiMidity++-2.10.1-0vl1]
  307. - Updated to 2.10.1.
  308. * Sat Sep 16 2000 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  309. [TiMidity++-2.10.0-0vl3]
  310. - Updated to 2.10.0.(rebuild without alsa-lib)
  311. * Sat Sep 9 2000 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  312. [TiMidity++-2.10.0-0vl2]
  313. - Updated to 2.10.0.(ja_JP.ujis -> ja)
  314. * Wed Sep 6 2000 Hiroaki Irokawa <irorin@terra.dti.ne.jp>
  315. [TiMidity++-2.10.0-0vl1]
  316. - Updated to 2.10.0.
  317. * Wed Oct 6 1999 Yasuhide OOMORI <dasen@typhoon.co.jp>
  318. [TiMidity++-2.6.1-1]
  319. - Updated to 2.6.1.
  320. * Fri Sep 23 1999 Yasuhide OOMORI <dasen@typhoon.co.jp>
  321. [TiMidity++-2.6.0-1]
  322. - Updated to the full release of version 2.6.0.
  323. - Include pixmaps.
  324. - Make symlink for Window Maker.
  325. * Fri Sep 11 1999 Yasuhide OOMORI <dasen@typhoon.co.jp>
  326. [TiMidity++-2.6.0-0.4.0]
  327. - Updated to the 4th (maybe last?) beta release of version 2.6.0.
  328. * Fri Sep 11 1999 Yasuhide OOMORI <dasen@typhoon.co.jp>
  329. [TiMidity++-2.6.0-0.3.1]
  330. - Enabled all the interfaces.
  331. * Fri Sep 11 1999 Yasuhide OOMORI <dasen@typhoon.co.jp>
  332. [TiMidity++-2.6.0-0.3.0]
  333. - Updated to the 3rd beta release of version 2.6.0.
  334. - Added TiMidity.ad, TiMidity-uj.ad to install documents.
  335. * Fri Sep 03 1999 Yasuhide OOMORI <dasen@typhoon.co.jp>
  336. [TiMidity++-2.6.0-0.2.2]
  337. - Updated to the 2nd beta release of version 2.6.0.
  338. * Mon Aug 23 1999 Yasuhide OOMORI <dasen@typhoon.co.jp>
  339. [TiMidity++-2.5.0-1]
  340. - Updated to full release of version 2.5.0.
  341. - Modified to install Japanese manuals.
  342. * Mon Aug 23 1999 Yasuhide OOMORI <dasen@typhoon.co.jp>
  343. [TiMidity++-2.4.1-1]
  344. - First attempt.