[zynaddsubfx] 2.4.2

Orcan Ogetbil oget at fedoraproject.org
Fri Mar 9 05:31:03 UTC 2012


commit 3e6c4836248c183997387cd048e78bdc25cb1cb7
Author: Orcan Ogetbil <oget.fedora at gmail.com>
Date:   Fri Mar 9 00:30:57 2012 -0500

    2.4.2

 .gitignore                             |    2 +
 sources                                |    3 +-
 zynaddsubfx-0f236881.patch             |   51 ------------
 zynaddsubfx-buildflags.patch           |  108 ++++++++++++++++++++++++
 zynaddsubfx-fltk-config-broken-2.patch |   53 ------------
 zynaddsubfx-fltk-config-broken.patch   |   11 ---
 zynaddsubfx-gcc47.patch                |   11 +++
 zynaddsubfx-jack-support.patch         |   15 ----
 zynaddsubfx-linking.patch              |   32 -------
 zynaddsubfx.spec                       |  140 ++++++++++++--------------------
 10 files changed, 174 insertions(+), 252 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index f3b0052..81a187c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,3 @@
 ZynAddSubFX-2.4.1.tar.bz2
+/ZynAddSubFX-2.4.2.tar.bz2
+/zynaddsubfx.pdf
diff --git a/sources b/sources
index 81cdd8f..3462e01 100644
--- a/sources
+++ b/sources
@@ -1 +1,2 @@
-59eb69ce24d6f8c605f8ba43958d0526  ZynAddSubFX-2.4.1.tar.bz2
+3a0259ee431ae8be4a586a37c9dd9c1c  zynaddsubfx.pdf
+4e1f15fd872f5cc649fc2217676e248e  ZynAddSubFX-2.4.2.tar.bz2
diff --git a/zynaddsubfx-buildflags.patch b/zynaddsubfx-buildflags.patch
new file mode 100644
index 0000000..79a3e32
--- /dev/null
+++ b/zynaddsubfx-buildflags.patch
@@ -0,0 +1,108 @@
+diff -rupN ZynAddSubFX-2.4.2.old/ExternalPrograms/Controller/Makefile ZynAddSubFX-2.4.2/ExternalPrograms/Controller/Makefile
+--- ZynAddSubFX-2.4.2.old/ExternalPrograms/Controller/Makefile	2012-02-26 13:37:11.000000000 -0500
++++ ZynAddSubFX-2.4.2/ExternalPrograms/Controller/Makefile	2012-03-08 21:32:16.843988193 -0500
+@@ -1,17 +1,17 @@
+ controller: main.o Controller.o ControllerUI.o
+-	gcc -o controller *.o `fltk-config --ldflags` -lasound -lpthread -lm -lstdc++
++	gcc $(CFLAGS) -o controller *.o `fltk-config --ldflags` -lasound -lpthread -lm -lstdc++
+ 
+ ControllerUI.cxx ControllerUI.h: ControllerUI.fl
+ 	fluid -c ControllerUI.fl
+ 
+ ControllerUI.o: ControllerUI.cxx ControllerUI.h
+-	gcc `fltk-config --cflags` -c ControllerUI.cxx -o ControllerUI.o
++	gcc $(CFLAGS) `fltk-config --cflags` -c ControllerUI.cxx -o ControllerUI.o
+ 
+ Controller.o: Controller.C Controller.h
+-	gcc `fltk-config --cflags` -c Controller.C -o Controller.o
++	gcc $(CFLAGS) `fltk-config --cflags` -c Controller.C -o Controller.o
+ 
+ main.o: main.C Controller.h ControllerUI.h
+-	gcc `fltk-config --cflags` -c main.C -o main.o
++	gcc $(CFLAGS) `fltk-config --cflags` -c main.C -o main.o
+ 
+ clean:
+ 	rm -f *.o controller ControllerUI.cxx ControllerUI.h 
+diff -rupN ZynAddSubFX-2.4.2.old/ExternalPrograms/Spliter/Makefile ZynAddSubFX-2.4.2/ExternalPrograms/Spliter/Makefile
+--- ZynAddSubFX-2.4.2.old/ExternalPrograms/Spliter/Makefile	2012-02-26 13:37:11.000000000 -0500
++++ ZynAddSubFX-2.4.2/ExternalPrograms/Spliter/Makefile	2012-03-08 21:33:39.109571039 -0500
+@@ -1,17 +1,17 @@
+ spliter: main.o Spliter.o SpliterUI.o
+-	gcc -o spliter *.o `fltk-config --ldflags` -lasound -lstdc++
++	gcc $(CFLAGS) -o spliter *.o `fltk-config --ldflags` -lasound -lstdc++ -lpthread
+ 
+ SplitterUI.cxx SpliterUI.h: SpliterUI.fl
+ 	fluid -c SpliterUI.fl
+ 
+ SpliterUI.o: SplitterUI.cxx SpliterUI.h
+-	gcc -g `fltk-config --cflags` -c SpliterUI.cxx -o SpliterUI.o
++	gcc $(CFLAGS) -g `fltk-config --cflags` -c SpliterUI.cxx -o SpliterUI.o
+ 
+ Spliter.o: Spliter.C Spliter.h
+-	gcc -g `fltk-config --cflags` -c Spliter.C -o Spliter.o
++	gcc $(CFLAGS) -g `fltk-config --cflags` -c Spliter.C -o Spliter.o
+ 
+ main.o: main.C Spliter.h SpliterUI.h
+-	gcc -g `fltk-config --cflags` -c main.C -o main.o
++	gcc $(CFLAGS) -g `fltk-config --cflags` -c main.C -o main.o
+ 
+ clean:
+ 	rm -f *.o spliter SpliterUI.cxx SpliterUI.h 
+diff -rupN ZynAddSubFX-2.4.2.old/src/CMakeLists.txt ZynAddSubFX-2.4.2/src/CMakeLists.txt
+--- ZynAddSubFX-2.4.2.old/src/CMakeLists.txt	2012-02-26 13:37:11.000000000 -0500
++++ ZynAddSubFX-2.4.2/src/CMakeLists.txt	2012-03-08 21:23:26.111658165 -0500
+@@ -70,9 +70,14 @@ endif(NOT PKG_CONFIG_FOUND)
+ option (BuildForAMD_X86_64 "Build for AMD x86_64 system" OFF)
+ option (BuildForCore2_X86_64 "Build for Intel Core2 x86_64 system" OFF)
+ option (BuildForDebug "Include gdb debugging support" OFF)
++option (X86Build "Build for X86 family" OFF)
+ 
+ set(CMAKE_BUILD_TYPE "Release")
+ 
++if (X86Build)
++   set (AsmOption "-DASM_F2I_YES")
++endif ()
++
+ set (BuildOptions_x86_64AMD
+     "-O3 -march=athlon64 -m64 -Wall -ffast-math -fno-finite-math-only -fomit-frame-pointer"
+   CACHE STRING "X86_64 compiler options"
+@@ -84,7 +89,7 @@ set (BuildOptions_X86_64Core2
+ )
+ 
+ set (BuildOptionsBasic
+-    "-O3 -msse -msse2 -mfpmath=sse -ffast-math -fomit-frame-pointer"
++    "-ffast-math -fno-finite-math-only -fomit-frame-pointer ${AsmOption}"
+     CACHE STRING "basic X86 complier options"
+ )
+ 
+@@ -133,26 +138,19 @@ endif()
+ # other include directories
+ include_directories(${ZLIB_INCLUDE_DIRS} ${MXML_INCLUDE_DIRS})
+ 
+-add_definitions(
+-	 -DASM_F2I_YES
+-	 -g #TODO #todo put in a better location
+-	 -Wall
+-	 -Wextra
+-	 )
+-
+ if (BuildForDebug)
+ 	set (CMAKE_BUILD_TYPE "Debug")
+-	set (CMAKE_CXX_FLAGS_DEBUG ${BuildOptionsDebug})
++	set (CMAKE_CXX_FLAGS_DEBUG "${BuildOptionsDebug} ${CMAKE_CXX_FLAGS}")
+ 	message (STATUS "Building for ${CMAKE_BUILD_TYPE}, flags: ${CMAKE_CXX_FLAGS_DEBUG}")
+ else (BuildForDebug)
+ 	set (CMAKE_BUILD_TYPE "Release")
+ 	if (BuildForAMD_X86_64)
+-		set (CMAKE_CXX_FLAGS_RELEASE ${BuildOptions_x86_64AMD})
++		set (CMAKE_CXX_FLAGS_RELEASE "${BuildOptions_x86_64AMD} ${CMAKE_CXX_FLAGS}")
+ 	else (BuildForAMD_X86_64)
+ 		if (BuildForCore2_X86_64)
+-			set (CMAKE_CXX_FLAGS_RELEASE ${BuildOptions_X86_64Core2})
++			set (CMAKE_CXX_FLAGS_RELEASE "${BuildOptions_X86_64Core2} ${CMAKE_CXX_FLAGS}")
+ 		else (BuildForCore2_X86_64)
+-			set (CMAKE_CXX_FLAGS_RELEASE ${BuildOptionsBasic})
++			set (CMAKE_CXX_FLAGS_RELEASE "${BuildOptionsBasic} ${CMAKE_CXX_FLAGS}")
+ 		endif (BuildForCore2_X86_64)
+ 	endif (BuildForAMD_X86_64)
+ 	message (STATUS "Building for ${CMAKE_BUILD_TYPE}, flags: ${CMAKE_CXX_FLAGS_RELEASE}")
diff --git a/zynaddsubfx-gcc47.patch b/zynaddsubfx-gcc47.patch
new file mode 100644
index 0000000..fd13516
--- /dev/null
+++ b/zynaddsubfx-gcc47.patch
@@ -0,0 +1,11 @@
+diff -rupN ZynAddSubFX-2.4.2.old/src/Nio/NulEngine.cpp ZynAddSubFX-2.4.2/src/Nio/NulEngine.cpp
+--- ZynAddSubFX-2.4.2.old/src/Nio/NulEngine.cpp	2012-02-26 13:37:11.000000000 -0500
++++ ZynAddSubFX-2.4.2/src/Nio/NulEngine.cpp	2012-03-08 20:23:18.973778237 -0500
+@@ -24,6 +24,7 @@
+ #include "../globals.h"
+ 
+ #include <iostream>
++#include <unistd.h>
+ 
+ using namespace std;
+ 
diff --git a/zynaddsubfx.spec b/zynaddsubfx.spec
index ee3a073..e4d7a28 100644
--- a/zynaddsubfx.spec
+++ b/zynaddsubfx.spec
@@ -1,28 +1,23 @@
 Summary:        Real-time software synthesizer
 Name:           zynaddsubfx
-Version:        2.4.1
-Release:        5%{?dist}
+Version:        2.4.2
+Release:        1%{?dist}
 # Source is a collective work, distributed by
 License:        GPLv2 and GPLv2+
 Group:          Applications/Multimedia
 URL:            http://zynaddsubfx.sourceforge.net
 Source0:        http://download.sf.net/sourceforge/zynaddsubfx/ZynAddSubFX-%{version}.tar.bz2
 Source1:        zynaddsubfx.desktop
-Patch0:         zynaddsubfx-jack-support.patch
-Patch1:         zynaddsubfx-fltk-config-broken.patch
-Patch2:         zynaddsubfx-fltk-config-broken-2.patch
-# Build fix against fltk >= 1.3.0. From upstream trunk
-# http://sourceforge.net/tracker/?func=detail&aid=3175784&group_id=62934&atid=502312
-Patch3:         zynaddsubfx-0f236881.patch
-Patch6:         zynaddsubfx-linking.patch
-BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-
-Requires:       fltk >= 1.1.3
-Requires:       mxml >= 2.2
+# We cannot build this from source since Fedora's texlive is too old
+Source2:        zynaddsubfx.pdf
+Patch0:         zynaddsubfx-gcc47.patch
+Patch1:         zynaddsubfx-buildflags.patch
+
 Requires:       hicolor-icon-theme
 Requires:       %{name}-common = %{version}-%{release}
 
 BuildRequires:  alsa-lib-devel
+BuildRequires:  cmake
 BuildRequires:  desktop-file-utils
 BuildRequires:  dssi-devel
 BuildRequires:  fftw3-devel
@@ -31,9 +26,8 @@ BuildRequires:  fltk-fluid
 BuildRequires:  ImageMagick
 BuildRequires:  jack-audio-connection-kit-devel
 BuildRequires:  lash-devel
-BuildRequires:  libXext-devel
-BuildRequires:  libX11-devel
 BuildRequires:  mxml-devel
+BuildRequires:  portaudio-devel
 BuildRequires:  zlib-devel
 
 
@@ -75,12 +69,9 @@ This package includes the DSSI implementation of the synthesizer.
 
 %prep
 %setup -q -n ZynAddSubFX-%{version}
-%patch0 -p1 -b .jack
-%patch1 -p0 -b .fltk1
-%patch2 -p1 -b .fltk2
-%patch3 -p1 -b .fltk3
-%patch6 -p1 -b .linking
-
+%patch0 -p1 -b .gcc47
+%patch1 -p1 -b .flags
+cp -a %SOURCE2 .
 
 # Fix encoding
 for i in AUTHORS.txt ChangeLog; do
@@ -90,80 +81,52 @@ for i in AUTHORS.txt ChangeLog; do
 done
 
 
-# Fix flags
-sed -i -e "s|-ggdb|$RPM_OPT_FLAGS|" src/Makefile
-
-%ifarch %{ix86} x86_64 
-# We're ok.
-%else
-sed -i -e "s|ASM_F2I=YES|ASM_F2I=NO|g" src/Makefile.inc
-%endif
-
-# To build the DSSI plugin
-sed -i -e "s|LINUX_DSSI=NO|LINUX_DSSI=YES|" src/Makefile.inc
 %build
+mkdir -p %{_target_platform}
+pushd %{_target_platform}
+   %cmake \
+      -DDefaultOutput=jack \
+%ifarch %{ix86} x86_64
+      -DX86Build=ON \
+%endif
+      ..
+popd
 
-cd src
-# do not use smp flags, makefile is not smp safe
-# first build the dssi plugin
-make
-mv zynaddsubfx.so ../
-make clean
-# next build the rest
-sed -i -e "s|LINUX_DSSI=YES|LINUX_DSSI=NO|" Makefile.inc
-make
+make %{?_smp_mflags} -C %{_target_platform}
 
 # build external programs
-cd ../ExternalPrograms
-cd Controller
-make
-cd ../Spliter
-make
+make %{?_smp_mflags} -C ExternalPrograms/Controller
+make %{?_smp_mflags} -C ExternalPrograms/Spliter
+
 
 %install
-rm -rf $RPM_BUILD_ROOT
-mkdir -p $RPM_BUILD_ROOT%{_bindir}
-mkdir -p $RPM_BUILD_ROOT%{_libdir}/dssi
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}
-
-tar cf - examples banks presets | \
-(cd $RPM_BUILD_ROOT%{_datadir}/%{name}; tar xvpf -)
-cd src
-install -m 0755 zynaddsubfx $RPM_BUILD_ROOT%{_bindir}
-cd ..
-install -m 0755 zynaddsubfx.so $RPM_BUILD_ROOT%{_libdir}/dssi/
+make install DESTDIR=%{buildroot} -C %{_target_platform}
+
+mkdir -p %{buildroot}%{_datadir}/%{name}
+
+tar cf - examples banks | \
+(cd %{buildroot}%{_datadir}/%{name}; tar xvpf -)
 
 # install external programs
-cd ExternalPrograms
-cd Controller
-install -m 0755 zynaddsubfx-controller $RPM_BUILD_ROOT%{_bindir}/
-cd ../Spliter
-install -m 0755 zynaddsubfx-spliter $RPM_BUILD_ROOT%{_bindir}/
-cd ../..
+pushd ExternalPrograms
+   install -m 0755 Controller/controller %{buildroot}%{_bindir}/zynaddsubfx-controller
+   install -m 0755 Spliter/spliter %{buildroot}%{_bindir}/zynaddsubfx-spliter
+popd
 
 # .desktop file
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
+mkdir -p %{buildroot}%{_datadir}/applications
 desktop-file-install --vendor fedora \
-   --dir=$RPM_BUILD_ROOT%{_datadir}/applications %{SOURCE1}
-
-
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/pixmaps
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps
-mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps
-convert -resize 16x16 zynaddsubfx_icon.ico zynaddsubfx-16.png
-convert -resize 32x32 zynaddsubfx_icon.ico zynaddsubfx-32.png
-convert -resize 48x48 zynaddsubfx_icon.ico zynaddsubfx-48.png
-convert -resize 64x64 zynaddsubfx_icon.ico zynaddsubfx-64.png
-install -m 644 zynaddsubfx-32.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/zynaddsubfx.png
-install -m 644 zynaddsubfx-16.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/zynaddsubfx.png
-install -m 644 zynaddsubfx-32.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/zynaddsubfx.png
-install -m 644 zynaddsubfx-48.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/zynaddsubfx.png
-install -m 644 zynaddsubfx-64.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/64x64/apps/zynaddsubfx.png
-
-%clean
-rm -rf $RPM_BUILD_ROOT
+   --dir=%{buildroot}%{_datadir}/applications %{SOURCE1}
+
+
+for dim in 16 32 48 64; do
+   mkdir -p %{buildroot}%{_datadir}/icons/hicolor/${dim}x${dim}/apps
+   convert -resize ${dim}x${dim} zynaddsubfx_icon.ico zynaddsubfx-${dim}.png
+   install -m 644 zynaddsubfx-${dim}.png %{buildroot}%{_datadir}/icons/hicolor/${dim}x${dim}/apps/zynaddsubfx.png
+done
+
+# We are including these in the common package below
+rm -fr %{buildroot}%{_datadir}/doc/%{name}/
 
 %post
 touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
@@ -178,25 +141,24 @@ fi
 gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
 
 %files
-%defattr(-,root,root,-)
 %{_bindir}/*
 %{_datadir}/applications/*%{name}.desktop
-%{_datadir}/pixmaps/zynaddsubfx.png
 %{_datadir}/icons/hicolor/16x16/apps/zynaddsubfx.png
 %{_datadir}/icons/hicolor/32x32/apps/zynaddsubfx.png
 %{_datadir}/icons/hicolor/48x48/apps/zynaddsubfx.png
 %{_datadir}/icons/hicolor/64x64/apps/zynaddsubfx.png
 
 %files common
-%defattr(-,root,root,-)
-%doc AUTHORS.txt ChangeLog COPYING FAQ.txt HISTORY.txt README.txt bugs.txt
+%doc AUTHORS.txt ChangeLog COPYING FAQ.txt HISTORY.txt README.txt zynaddsubfx.pdf
 %{_datadir}/%{name}/
 
 %files dssi
-%defattr(-,root,root,-)
 %{_libdir}/dssi/*.so
 
 %changelog
+* Thu Mar 08 2012 Orcan Ogetbil <oget [DOT] fedora [AT] gmail [DOT] com> - 2.4.2-1
+- 2.4.2
+
 * Tue Feb 28 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.4.1-5
 - Rebuilt for c++ ABI breakage
 


More information about the scm-commits mailing list