diff --git a/README.md b/README.md index 96a19c3..84584c9 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,5 @@ # lmms +LMMS aims to be a free alternative to popular (but commercial and closed-source) programs like FruityLoops, Cubase and Logic giving you the ability of producing music with your computer by creating/synthesizing sounds,arranging samples, playing live with keyboard and much more... +LMMS combines the features of a tracker-/sequencer-program (pattern-/channel-/sample-/song-/effect-management) and those of powerful synthesizers and samplers in a modern, user-friendly and easy to use graphical user-interface. + diff --git a/libfltk-1.1.9-gcc44.patch b/libfltk-1.1.9-gcc44.patch new file mode 100644 index 0000000..dd64048 --- /dev/null +++ b/libfltk-1.1.9-gcc44.patch @@ -0,0 +1,32 @@ +diff -Nru fltk-1.1.9.orig/src/filename_list.cxx fltk-1.1.9/src/filename_list.cxx +--- fltk-1.1.9.orig/src/filename_list.cxx 2006-06-09 18:16:34.000000000 +0200 ++++ fltk-1.1.9/src/filename_list.cxx 2009-07-01 14:25:03.841445929 +0200 +@@ -67,7 +67,7 @@ + // The vast majority of UNIX systems want the sort function to have this + // prototype, most likely so that it can be passed to qsort without any + // changes: +- int n = scandir(d, list, 0, (int(*)(const void*,const void*))sort); ++ int n = scandir(d, list, 0, (int(*)(const dirent **,const dirent **))sort); + #else + // This version is when we define our own scandir (WIN32 and perhaps + // some Unix systems) and apparently on IRIX: +diff -ru fltk-1.1.9.orig/src/fl_set_fonts_xft.cxx fltk-1.1.9/src/fl_set_fonts_xft.cxx +--- fltk-1.1.9.orig/src/fl_set_fonts_xft.cxx 2006-10-03 04:35:12.000000000 +0200 ++++ fltk-1.1.9/src/fl_set_fonts_xft.cxx 2009-07-01 14:28:28.268210527 +0200 +@@ -253,13 +253,13 @@ + // So the bit we want is up to the first comma - BUT some strings have + // more than one name, separated by, guess what?, a comma... + stop = start = first = 0; +- stop = strchr((const char *)font, ','); +- start = strchr((const char *)font, ':'); ++ stop = strchr((char *)font, ','); ++ start = strchr((char *)font, ':'); + if ((stop) && (start) && (stop < start)) + { + first = stop + 1; // discard first version of name + // find first comma *after* the end of the name +- stop = strchr((const char *)start, ','); ++ stop = strchr((char *)start, ','); + } + else + { diff --git a/lmms-0.4.13-gcc-4.7.patch b/lmms-0.4.13-gcc-4.7.patch new file mode 100644 index 0000000..69c58ed --- /dev/null +++ b/lmms-0.4.13-gcc-4.7.patch @@ -0,0 +1,11 @@ +--- lmms-0.4.10.orig/plugins/zynaddsubfx/LocalZynAddSubFx.cpp 2011-01-26 13:54:21.000000000 +0000 ++++ lmms-0.4.10/plugins/zynaddsubfx/LocalZynAddSubFx.cpp 2012-04-17 12:08:49.451405933 +0000 +@@ -22,6 +22,8 @@ + * + */ + ++#include ++ + #include + + #include "LocalZynAddSubFx.h" diff --git a/lmms-0.4.2-plugin_dir.patch b/lmms-0.4.2-plugin_dir.patch new file mode 100644 index 0000000..522f973 --- /dev/null +++ b/lmms-0.4.2-plugin_dir.patch @@ -0,0 +1,12 @@ +diff -Nru lmms-0.4.2.orig/CMakeLists.txt lmms-0.4.2/CMakeLists.txt +--- lmms-0.4.2.orig/CMakeLists.txt 2008-12-19 17:44:15.000000000 +0100 ++++ lmms-0.4.2/CMakeLists.txt 2009-02-04 17:11:07.000000000 +0100 +@@ -415,7 +415,7 @@ + # + # build LMMS-binary + # +-ADD_DEFINITIONS(-D'LIB_DIR="${CMAKE_INSTALL_PREFIX}/${LIB_DIR}/"' -D'PLUGIN_DIR="${CMAKE_INSTALL_PREFIX}/${LIB_DIR}/lmms/"' ${PULSEAUDIO_DEFINITIONS} ${PORTAUDIO_DEFINITIONS}) ++ADD_DEFINITIONS(-D'LIB_DIR="${CMAKE_INSTALL_PREFIX}/${LIB_DIR}/"' -D'PLUGIN_DIR="${CMAKE_INSTALL_LIBDIR}/lmms/"' ${PULSEAUDIO_DEFINITIONS} ${PORTAUDIO_DEFINITIONS}) + + INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/include ${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/include ${SDL_INCLUDE_DIR} ${PORTAUDIO_INCLUDE_DIR} ${PULSEAUDIO_INCLUDE_DIR} ${JACK_INCLUDE_DIRS} ${OGGVORBIS_INCLUDE_DIR} ${SAMPLERATE_INCLUDE_DIRS} ${SNDFILE_INCLUDE_DIRS}) + LINK_DIRECTORIES(${CMAKE_INSTALL_PREFIX}/lib ${ASOUND_LIBRARY_DIR} ${JACK_LIBRARY_DIRS} ${SAMPLERATE_LIBRARY_DIRS} ${SNDFILE_LIBRARY_DIRS}) diff --git a/lmms.spec b/lmms.spec new file mode 100644 index 0000000..eda7d09 --- /dev/null +++ b/lmms.spec @@ -0,0 +1,194 @@ +Name: lmms +Version: 0.4.15 +Release: 1mamba +Summary: LMMS - Linux MultiMedia Studio +Group: Graphical Desktop/Applications/Multimedia +Vendor: openmamba +Distribution: openmamba +Packager: Tiziana Ferro +URL: http://lmms.sourceforge.net/ +Source: http://downloads.sourceforge.net/sourceforge/lmms/lmms-%{version}.tar.bz2 +Patch0: %{name}-0.4.2-plugin_dir.patch +Patch1: libfltk-1.1.9-gcc44.patch +Patch2: lmms-0.4.13-gcc-4.7.patch +License: GPL +BuildRoot: %{_tmppath}/%{name}-%{version}-root +## AUTOBUILDREQ-BEGIN +BuildRequires: fluidsynth-devel +BuildRequires: glibc-devel +BuildRequires: libalsa-devel +BuildRequires: libfftw-devel +BuildRequires: libfontconfig-devel +BuildRequires: libfreetype-devel +BuildRequires: libgcc +BuildRequires: libICE-devel +BuildRequires: libjack-devel +BuildRequires: libogg-devel +BuildRequires: libportaudio-devel +BuildRequires: libpulseaudio-devel +BuildRequires: libqt4-devel +BuildRequires: libsamplerate-devel +BuildRequires: libSDL-devel +BuildRequires: libSDL_sound-devel +BuildRequires: libSM-devel +BuildRequires: libsndfile-devel +BuildRequires: libstdc++6-devel +BuildRequires: libvorbis-devel +BuildRequires: libX11-devel +BuildRequires: libXext-devel +BuildRequires: libXft-devel +BuildRequires: libXinerama-devel +BuildRequires: libz-devel +BuildRequires: swh-plugins +%ifarch %{ix86} x86_64 +BuildRequires: wine-devel +%endif +## AUTOBUILDREQ-END +%ifarch %{ix86} x86_64 +BuildRequires: wine-devel >= 1.5.2-3mamba +%endif +Requires: libSDL +Requires: libSDL_sound +Requires: libalsa +Requires: libogg +Requires: libsamplerate +Requires: libvorbis +Requires: libsndfile +Requires: swh-plugins + +%description +LMMS aims to be a free alternative to popular (but commercial and closed-source) programs like FruityLoops, Cubase and Logic giving you the ability of producing music with your computer by creating/synthesizing sounds,arranging samples, playing live with keyboard and much more... +LMMS combines the features of a tracker-/sequencer-program (pattern-/channel-/sample-/song-/effect-management) and those of powerful synthesizers and samplers in a modern, user-friendly and easy to use graphical user-interface. + +%package devel +Summary: Devel package for %{name} +Group: Development/Libraries +Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} + +%description devel +LMMS aims to be a free alternative to popular (but commercial and closed-source) programs like FruityLoops, Cubase and Logic giving you the ability of producing music with your computer by creating/synthesizing sounds,arranging samples, playing live with keyboard and much more... +LMMS combines the features of a tracker-/sequencer-program (pattern-/channel-/sample-/song-/effect-management) and those of powerful synthesizers and samplers in a modern, user-friendly and easy to use graphical user-interface. + +This package contains header files needed for development. + +%debug_package + +%prep +%setup -q +#%patch0 -p1 +#cd plugins/zynaddsubfx/fltk +#%patch1 -p1 +%patch2 -p1 + +%build +# FIXME: +# * Stk Mallets: not found, please install libstk0-dev (or similiar) ;if you require the Vibed Instrument +%cmake \ + -DCMAKE_INSTALL_LIBDIR=%{_lib} + +%make + +%install +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" +%makeinstall + +#mkdir -p %{buildroot}%{_datadir}/applications +#cat > %{buildroot}%{_datadir}/applications/%{name}.desktop << EOF +#[Desktop Entry] +#Encoding=UTF-8 +#Name=LMMS +#GenericName=Linux MultiMedia Studio +#Comment=Linux MultiMedia Studio +#Exec=lmms +#Icon=/usr/share/lmms/themes/default/icon.png +#StartupNotify=true +#Terminal=false +#Type=Application +#Categories=Applications;AudioVideo; +#MimeType=application/x-lmms-project +#EOF + +%clean +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +%post -p /sbin/ldconfig + +%postun -p /sbin/ldconfig + +%files +%defattr(-,root,root) +%{_bindir}/lmms +%{_libdir}/lmms/*.so +%{_libdir}/lmms/ladspa/*.so +%ifarch %{ix86} +%{_libdir}/lmms/RemoteVstPlugin +%endif +%{_libdir}/lmms/RemoteZynAddSubFx +%{_datadir}/lmms/* +%{_datadir}/menu/lmms +%{_datadir}/mime/packages/lmms.xml +%{_datadir}/applications/lmms.desktop +%{_datadir}/pixmaps/lmms.png +%{_mandir}/man1/lmms.1.gz +%doc AUTHORS COPYING + +%files devel +%defattr(-,root,root) +%dir %{_includedir}/lmms +%{_includedir}/lmms/*.h +%{_includedir}/lmms/embed.cpp +%doc README TODO + +%changelog +* Thu Jun 13 2013 Automatic Build System 0.4.15-1mamba +- automatic version update by autodist + +* Thu May 02 2013 Automatic Build System 0.4.14-1mamba +- automatic version update by autodist + +* Thu Sep 13 2012 Silvan Calarco 0.4.13-3mamba +- added gcc 4.7 build patch + +* Wed Jun 20 2012 Silvan Calarco 0.4.13-2mamba +- rebuilt with wine 1.5.2-3mamba to re-enable VST support + +* Tue Jun 19 2012 Silvan Calarco 0.4.13-1mamba +- update to 0.4.13 +- added devel and debug packages +- fixed group + +* Mon Jul 25 2011 Automatic Build System 0.4.12-1mamba +- automatic version update by autodist + +* Wed Mar 23 2011 Silvan Calarco 0.4.10-2mamba +- fix LIB_DIR to remove startup error on libtripleoscillator.so path + +* Thu Mar 10 2011 Automatic Build System 0.4.10-1mamba +- automatic update by autodist + +* Fri Jan 28 2011 Automatic Build System 0.4.9-1mamba +- automatic update by autodist + +* Fri Oct 01 2010 Automatic Build System 0.4.8-1mamba +- automatic update by autodist + +* Mon Aug 09 2010 Automatic Build System 0.4.7-1mamba +- automatic update by autodist + +* Thu Jan 28 2010 Automatic Build System 0.4.6-1mamba +- automatic update to 0.4.6 by autodist + +* Wed Aug 19 2009 Automatic Build System 0.4.5-1mamba +- automatic update by autodist + +* Wed Jul 01 2009 Silvan Calarco 0.4.4-1mamba +- update to 0.4.4 + +* Tue Mar 31 2009 Silvan Calarco 0.4.3-1mamba +- automatic update by autodist + +* Tue Feb 03 2009 Silvan Calarco 0.4.2-1mamba +- automatic update by autodist + +* Fri Jun 06 2008 Tiziana Ferro 0.3.2-1mamba +- package created by autospec