[packages/framewave] - new - system-boost patch to build with system boost libraries - c++ patch to fix C++ violations pr
qboosh
qboosh at pld-linux.org
Wed Feb 20 21:22:43 CET 2013
commit 7a3dd3afc52de2131208c74b94aa90f46f48c85b
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Wed Feb 20 21:22:47 2013 +0100
- new
- system-boost patch to build with system boost libraries
- c++ patch to fix C++ violations prohibited by gcc 4.6+
framewave-c++.patch | 22 +++++++
framewave-system-boost.patch | 31 +++++++++
framewave.spec | 146 +++++++++++++++++++++++++++++++++++++++++++
3 files changed, 199 insertions(+)
---
diff --git a/framewave.spec b/framewave.spec
new file mode 100644
index 0000000..73a361a
--- /dev/null
+++ b/framewave.spec
@@ -0,0 +1,146 @@
+#
+# Conditional build:
+%bcond_without static_libs # don't build static libraries
+#
+Summary: Framewave - set of popular image and signal processing routines
+Summary(pl.UTF-8): Framewave - zestaw popularnych funkcji do przetwarzania obrazu i sygnału
+Name: framewave
+Version: 1.3.1
+Release: 1
+License: Apache v2.0
+Group: Libraries
+Source0: http://downloads.sourceforge.net/framewave/FRAMEWAVE_%{version}_SRC.tar.gz
+# Source0-md5: 86a28ebfbfd70be06ab54d0d8b17ebd7
+Patch0: %{name}-system-boost.patch
+Patch1: %{name}-c++.patch
+URL: http://framewave.sourceforge.net/
+BuildRequires: boost-devel >= 1.34
+BuildRequires: libstdc++-devel
+BuildRequires: rpmbuild(macros) >= 1.385
+BuildRequires: scons
+BuildRequires: sed >= 4.0
+ExclusiveArch: %{ix86} %{x8664}
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+Framewave(TM) is a collection of low-level software routines for x86
+processors. Framewave (FW) is designed to aid and accelerate
+application development, debugging, and optimization. Framewave
+function capabilities extend from simple arithmetic operations to
+rich, complex domain specific tasks, such as image, video, and signal
+processing.
+
+%description -l pl.UTF-8
+Framewave(TM) to zestaw niskopoziomowych procedur dla procesorów x86.
+Biblioteki zostały zaprojektowane tak, aby wspomóc i przyspieszyć
+tworzenie aplikacji, diagnostykę i optymalizację. Możliwości funkcji
+Framewave obejmują obszar od prostych operacji arytmetycznych po
+złożone zadania specyficzne dla dziedziny, takie jak przetwarzanie
+obrazu statycznego i ruchomego oraz sygnału.
+
+%package devel
+Summary: Header files for Framewave libraries
+Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Framewave
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description devel
+Header files for Framewave libraries.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe bibliotek Framewave.
+
+%package static
+Summary: Static Framewave libraries
+Summary(pl.UTF-8): Statyczne biblioteki Framewave
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description static
+Static Framewave libraries.
+
+%description static -l pl.UTF-8
+Statyczne biblioteki Framewave.
+
+%prep
+%setup -q -n FRAMEWAVE_%{version}_SRC
+%patch0 -p1
+%patch1 -p1
+
+# kill precompiled binaries
+%{__rm} BuildTools/bin/FwHeaderConvert_*
+
+%{__sed} -i -e "s/'-O2'/'%{rpmcxxflags}'/" BuildTools/buildscripts/fwflags_gcc.py
+
+%build
+cd Framewave
+mkdir -p build/{include,tmp,bin}
+for kind in shared %{?with_static_libs:static} ; do
+%scons \
+%ifarch %{x8664}
+ bitness=64 \
+%else
+ bitness=32 \
+%endif
+ libtype=$kind \
+ variant=release
+done
+
+%install
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
+
+cp -p Framewave/build/include/*.h $RPM_BUILD_ROOT%{_includedir}
+install Framewave/build/bin/release_shared_*/lib*.so.*.*.* $RPM_BUILD_ROOT%{_libdir}
+/sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}
+for f in $RPM_BUILD_ROOT%{_libdir}/lib*.so.*.*.* ; do
+ ln -sf $(basename $f) $(echo $f | sed -e 's/[.0-9]*$//')
+done
+%if %{with static_libs}
+install Framewave/build/bin/release_static_*/lib*.a $RPM_BUILD_ROOT%{_libdir}
+%endif
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc License.txt README
+%attr(755,root,root) %{_libdir}/libfwBase.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libfwBase.so.1
+%attr(755,root,root) %{_libdir}/libfwImage.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libfwImage.so.1
+%attr(755,root,root) %{_libdir}/libfwJPEG.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libfwJPEG.so.1
+%attr(755,root,root) %{_libdir}/libfwSignal.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libfwSignal.so.1
+%attr(755,root,root) %{_libdir}/libfwVideo.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libfwVideo.so.1
+
+%files devel
+%defattr(644,root,root,755)
+%doc Framewave/doc/*.h
+%attr(755,root,root) %{_libdir}/libfwBase.so
+%attr(755,root,root) %{_libdir}/libfwImage.so
+%attr(755,root,root) %{_libdir}/libfwJPEG.so
+%attr(755,root,root) %{_libdir}/libfwSignal.so
+%attr(755,root,root) %{_libdir}/libfwVideo.so
+%{_includedir}/fwBase.h
+%{_includedir}/fwImage.h
+%{_includedir}/fwImage_sol.h
+%{_includedir}/fwJPEG.h
+%{_includedir}/fwSignal.h
+%{_includedir}/fwVideo.h
+
+%if %{with static_libs}
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libfwBase.a
+%{_libdir}/libfwImage.a
+%{_libdir}/libfwJPEG.a
+%{_libdir}/libfwSignal.a
+%{_libdir}/libfwVideo.a
+%endif
diff --git a/framewave-c++.patch b/framewave-c++.patch
new file mode 100644
index 0000000..7308442
--- /dev/null
+++ b/framewave-c++.patch
@@ -0,0 +1,22 @@
+--- FRAMEWAVE_1.3.1_SRC/Framewave/domain/common/include/fe.h.orig 2009-07-09 11:15:40.000000000 +0200
++++ FRAMEWAVE_1.3.1_SRC/Framewave/domain/common/include/fe.h 2013-02-20 17:25:54.537266158 +0100
+@@ -1302,7 +1302,7 @@
+ {
+ protected:
+ // Algorithm instance
+- mutable FE &fe;
++ FE &fe;
+ const U32 width;
+ const S32 s1Step, s2Step, s3Step,s4Step;
+ const S32 d1Step,d2Step,d3Step,d4Step;
+--- FRAMEWAVE_1.3.1_SRC/Framewave/domain/common/include/fex.h.orig 2009-07-09 11:15:40.000000000 +0200
++++ FRAMEWAVE_1.3.1_SRC/Framewave/domain/common/include/fex.h 2013-02-20 17:34:16.300578433 +0100
+@@ -119,7 +119,7 @@
+ class B0St
+ {
+ protected:
+- mutable FE &fe; // Algorithm instance
++ FE &fe; // Algorithm instance
+ const U32 width;
+ const S32 s1Step, s2Step, s3Step,s4Step;
+ U32 threads;
diff --git a/framewave-system-boost.patch b/framewave-system-boost.patch
new file mode 100644
index 0000000..5f210b2
--- /dev/null
+++ b/framewave-system-boost.patch
@@ -0,0 +1,31 @@
+--- FRAMEWAVE_1.3.1_SRC/Framewave/domain/fwBase/fwBase.sconscript.orig 2009-07-09 11:15:36.000000000 +0200
++++ FRAMEWAVE_1.3.1_SRC/Framewave/domain/fwBase/fwBase.sconscript 2013-02-20 16:19:45.120766072 +0100
+@@ -17,26 +17,11 @@
+ # Setup the path to the constatnts source file
+ pthConstCPP = join(oRoot.dctFwVars['pthProjectRoot'], 'common', 'src', 'Constants.cpp')
+
+-if oRoot.dctFwVars['thread'] == 'pthread' :
+- pthBoostBase = join(oRoot.dctFwVars['pthProjectRoot'], '..', 'sdk', 'boost_1_34_0', 'libs', 'thread', 'src')
+- lstExtraBaseCPPs = [ pthConstCPP ,
+- join(pthBoostBase,'barrier.cpp'), \
+- join(pthBoostBase,'condition.cpp'), \
+- join(pthBoostBase,'exceptions.cpp'), \
+- join(pthBoostBase,'mutex.cpp'), \
+- join(pthBoostBase,'once.cpp'), \
+- join(pthBoostBase,'thread.cpp'), \
+- join(pthBoostBase,'tss_dll.cpp'), \
+- join(pthBoostBase,'tss_hooks.cpp'), \
+- join(pthBoostBase,'tss_pe.cpp'), \
+- join(pthBoostBase,'xtime.cpp') ]
+-else:
+- lstExtraBaseCPPs = [ pthConstCPP ]
++lstExtraBaseCPPs = [ pthConstCPP ]
+
+ # Project script essentially starts here
+-fwBase = fwProject(oRoot, 'fwBase')
++fwBase = fwProject(oRoot, 'fwBase', LIBS=['boost_thread', 'boost_system'])
+
+-setupIncludePaths(fwBase.oEnv, join('sdk', 'boost_1_34_0'), dontRecurse=1)
+ oLib_fwBase = fwBase.initBuildObjects(lstExtraCPPs=lstExtraBaseCPPs)
+
+ Return("oLib_fwBase")
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/framewave.git/commitdiff/7a3dd3afc52de2131208c74b94aa90f46f48c85b
More information about the pld-cvs-commit
mailing list