TiMidity++4ALSA-vl.spec 14 KB

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