lmms.spec.in 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. # Configuration variables
  2. %define name lmms
  3. %define version ${LMMS_VERSION}
  4. %define rel 1
  5. %define release %{rel}%{?disttag}%{?repotag}
  6. # Define what you can/want to build:
  7. %define with_sdl 0%{nil}
  8. %define with_jack 1%{nil}
  9. %define with_vorbis 1%{nil}
  10. %define with_flac 1%{nil}
  11. %define with_sr 1%{nil}
  12. %define with_sf 1%{nil}
  13. # Build by setting these defines on the command line, for example:
  14. # rpmbuild --define 'disttag .EL' --define 'repotag .fc6'
  15. %{!?desktop_vendor: %{expand: %%define desktop_vendor rpmfarm}}
  16. # This can be changed at build time:
  17. # rpmbuild --define 'desktop_vendor RPMfarm'
  18. #--------------------------------------------------------------------
  19. Name: %{name}
  20. Version: %{version}
  21. Release: %{release}
  22. Summary: powerful sequencer-, synthesizer- and sample-studio for Linux
  23. Summary(de): Leistungsfaehiges Sequenzer-, Synthesizer- und Sample-Studio fuer Linux
  24. License: GPL
  25. URL: https://lmms.io/
  26. Group: Applications/Multimedia
  27. Provides: lmms = %{version}-%{release}
  28. BuildRequires: gcc gcc-c++ libstdc++-devel autoconf automake libtool make
  29. BuildRequires: alsa-lib-devel
  30. BuildRequires: qt-devel > 3.0
  31. # ------------- BuildRequires:
  32. %if %{with_vorbis}
  33. BuildRequires: libvorbis libvorbis-devel
  34. %endif
  35. %if %{with_sdl}
  36. BuildRequires: SDL SDL-devel SDL_sound
  37. %endif
  38. %if %{with_sr}
  39. BuildRequires: libsamplerate libsamplerate-devel
  40. %endif
  41. %if %{with_sf}
  42. BuildRequires: libsndfile libsndfile-devel
  43. %endif
  44. %if %{with_jack}
  45. BuildRequires: jack-audio-connection-kit-devel
  46. %endif
  47. %if %{with_flac}
  48. BuildRequires: flac-devel
  49. %endif
  50. # ------------- Requires:
  51. Requires: qt >= 3.0 alsa-lib
  52. %if %{with_sr}
  53. Requires: libsamplerate
  54. %endif
  55. %if %{with_sf}
  56. Requires: libsndfile
  57. %endif
  58. %if %{with_jack}
  59. Requires: jack-audio-connection-kit
  60. %endif
  61. %if %{with_vorbis}
  62. Requires: libvorbis
  63. %endif
  64. %if %{with_flac}
  65. Requires: flac
  66. %endif
  67. %if %{with_sdl}
  68. Requires: SDL_sound
  69. %endif
  70. Requires: lmms-data
  71. Source: %{name}-%{version}.tar.bz2
  72. Patch1: %{name}-%{version}-patch
  73. BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
  74. Prefix: %{_prefix}
  75. %description
  76. LMMS aims to be a free alternative to popular (but commercial and closed-
  77. source) programs like FruityLoops, Cubase and Logic giving you the ability of
  78. producing music with your computer by creating/synthesizing sounds, arranging
  79. samples, playing live with keyboard and much more...
  80. LMMS combines the features of a tracker-/sequencer-program (pattern-/channel-/
  81. sample-/song-/effect-management) and those of powerful synthesizers and
  82. samplers in a modern, user-friendly and easy to use graphical user-interface.
  83. LMMS is still in heavy development, so with this version please don't expect a
  84. complete, ready and bugfree program!!
  85. %description -l de
  86. LMMS ist eine freie Alternative zu bekannten (aber kommerziellen und
  87. Closed-Source-) Programmen wie FruityLoops, Cubase und Logic, die Ihnen die
  88. Moeglichkeit geben, mit Ihrem Computer Musik zu produzieren, indem Sie
  89. Klaenge kreieren/synthetisieren, Samples anordnen, mit dem Keyboard live
  90. spielen usw....
  91. LMMS kombiniert die Funktionen eines Tracker-/Sequenzer-Programms (Pattern-/
  92. Kanal-/Sample-/Song-/Effekt-Management) und die von leistungsfaehigen
  93. Synthesizern und Samplern in einer modernen, benutzerfreundlichen und einfach zu
  94. benutzenden grafischen Oberflaeche.
  95. Derzeit befindet sich LMMS komplett in Entwicklung. Also erwarten Sie bitte mit
  96. dieser Version nicht ein vollstaendiges, fertiges und fehlerfreies Programm!!
  97. %package data
  98. Summary: samples, presets, demo-projects and localization-files for LMMS
  99. Summary(de): Samples, Presets, Demo-Projekte und Lokalisierungsdateien fuer LMMS
  100. Group: Applications/Multimedia
  101. Provides: lmms-data = %{version}-%{release}
  102. %description data
  103. This package contains platform-independent data and resources for LMMS, e.g.
  104. samples, presets and demo-projects.
  105. %description data -l de
  106. Dieses Paket beinhaltet plattform-unabhaengige Daten und Resourcen fuer LMMS,
  107. wie z.B. Samples, Presets und Demo-Projekte.
  108. %prep
  109. %setup -n %{name}-%{version}
  110. %patch1 -p1 -b .EL
  111. %build
  112. %configure \
  113. %if !%{with_jack}
  114. --without-jack \
  115. %endif
  116. %if !%{with_sdl}
  117. --without-sdl \
  118. --without-sdlsound \
  119. %endif
  120. %if !%{with_vorbis}
  121. --without-vorbis \
  122. %endif
  123. %if !%{with_flac}
  124. --without-flac \
  125. %endif
  126. %if !%{with_sr}
  127. --without-libsrc \
  128. %endif
  129. %if !%{with_sf}
  130. --without-libsf \
  131. %endif
  132. %{__make} %{?_smp_mflags}
  133. # Create a desktop menu entry
  134. %{__cat} > %{name}.desktop << EOF
  135. [Desktop Entry]
  136. Name=LMMS
  137. Comment=Powerful sequencer-, synthesizer- and sample-studio for Linux
  138. Exec=lmms
  139. Icon=%{_datadir}/%{name}/themes/default/icon.png
  140. Terminal=false
  141. Type=Application
  142. Categories=Application;AudioVideo;X-Fedora;X-RPMfarm;
  143. Encoding=UTF-8
  144. EOF
  145. %install
  146. %{__rm} -rf %{buildroot}
  147. make DESTDIR=$RPM_BUILD_ROOT install
  148. # Install menu entry
  149. %{__mkdir_p} %{buildroot}%{_datadir}/applications
  150. desktop-file-install \
  151. --vendor %{desktop_vendor} \
  152. --dir %{buildroot}%{_datadir}/applications \
  153. %{name}.desktop || :
  154. %clean
  155. %{__rm} -rf %{buildroot}
  156. %files
  157. %defattr(-, root, root, 0755)
  158. %doc AUTHORS ChangeLog COPYING README TODO
  159. %{_bindir}/lmms
  160. %dir %{_libdir}/lmms
  161. %{_libdir}/lmms/*
  162. %{_mandir}/man*/lmms.*
  163. %{_datadir}/applications/%{desktop_vendor}-%{name}.desktop
  164. %files data
  165. %defattr(-,root,root)
  166. %dir %{_datadir}/lmms
  167. %{_datadir}/lmms/*
  168. -%changelog
  169. -* Please see release notes (viewable online):
  170. -- https://github.com/LMMS/lmms/releases/tag/v${LMMS_VERSION}
  171. -