]> git.pld-linux.org Git - packages/framewave.git/blob - framewave.spec
9e833d063ecef941c8f4f6ad6000c133460a9538
[packages/framewave.git] / framewave.spec
1 #
2 # Conditional build:
3 %bcond_without  static_libs     # don't build static libraries
4 #
5 Summary:        Framewave - set of popular image and signal processing routines
6 Summary(pl.UTF-8):      Framewave - zestaw popularnych funkcji do przetwarzania obrazu i sygnału
7 Name:           framewave
8 Version:        1.3.1
9 Release:        16
10 License:        Apache v2.0
11 Group:          Libraries
12 Source0:        http://downloads.sourceforge.net/framewave/FRAMEWAVE_%{version}_SRC.tar.gz
13 # Source0-md5:  86a28ebfbfd70be06ab54d0d8b17ebd7
14 Patch0:         %{name}-system-boost.patch
15 Patch1:         %{name}-c++.patch
16 Patch2:         no-forced-arch-bits.patch
17 Patch3:         %{name}-templates.patch
18 Patch4:         %{name}-warnings.patch
19 Patch5:         %{name}-cpuid.patch
20 Patch6:         %{name}-scons.patch
21 Patch7:         %{name}-opt.patch
22 Patch8:         gcc11.patch
23 URL:            http://framewave.sourceforge.net/
24 BuildRequires:  boost-devel >= 1.34
25 BuildRequires:  libstdc++-devel
26 BuildRequires:  rpmbuild(macros) >= 1.385
27 BuildRequires:  scons >= 0.98
28 BuildRequires:  sed >= 4.0
29 ExclusiveArch:  %{ix86} %{x8664} x32
30 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31
32 %description
33 Framewave(TM) is a collection of low-level software routines for x86
34 processors. Framewave (FW) is designed to aid and accelerate
35 application development, debugging, and optimization. Framewave
36 function capabilities extend from simple arithmetic operations to
37 rich, complex domain specific tasks, such as image, video, and signal
38 processing.
39
40 %description -l pl.UTF-8
41 Framewave(TM) to zestaw niskopoziomowych procedur dla procesorów x86.
42 Biblioteki zostały zaprojektowane tak, aby wspomóc i przyspieszyć
43 tworzenie aplikacji, diagnostykę i optymalizację. Możliwości funkcji
44 Framewave obejmują obszar od prostych operacji arytmetycznych po
45 złożone zadania specyficzne dla dziedziny, takie jak przetwarzanie
46 obrazu statycznego i ruchomego oraz sygnału.
47
48 %package devel
49 Summary:        Header files for Framewave libraries
50 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek Framewave
51 Group:          Development/Libraries
52 Requires:       %{name} = %{version}-%{release}
53
54 %description devel
55 Header files for Framewave libraries.
56
57 %description devel -l pl.UTF-8
58 Pliki nagłówkowe bibliotek Framewave.
59
60 %package static
61 Summary:        Static Framewave libraries
62 Summary(pl.UTF-8):      Statyczne biblioteki Framewave
63 Group:          Development/Libraries
64 Requires:       %{name}-devel = %{version}-%{release}
65
66 %description static
67 Static Framewave libraries.
68
69 %description static -l pl.UTF-8
70 Statyczne biblioteki Framewave.
71
72 %prep
73 %setup -q -n FRAMEWAVE_%{version}_SRC
74 %patch0 -p1
75 %patch1 -p1
76 %patch2 -p1
77 %patch3 -p1
78 %patch4 -p1
79 %patch5 -p1
80 %patch6 -p1
81 %patch7 -p1
82 %patch8 -p1
83
84 # kill precompiled binaries
85 %{__rm} BuildTools/bin/FwHeaderConvert_*
86
87 %{__sed} -i -e "s/'-O2'/'%{rpmcxxflags} -std=c++11'/" BuildTools/buildscripts/fwflags_gcc.py
88
89 %build
90 cd Framewave
91 mkdir -p build/{include,tmp,bin}
92 for kind in shared %{?with_static_libs:static} ; do
93 %scons \
94 %ifarch %{x8664} x32
95         bitness=64 \
96 %else
97         bitness=32 \
98 %endif
99         libtype=$kind \
100         variant=release
101 done
102
103 %install
104 rm -rf $RPM_BUILD_ROOT
105 install -d $RPM_BUILD_ROOT{%{_libdir},%{_includedir}}
106
107 cp -p Framewave/build/include/*.h $RPM_BUILD_ROOT%{_includedir}
108 install Framewave/build/bin/release_shared_*/lib*.so.*.*.* $RPM_BUILD_ROOT%{_libdir}
109 /sbin/ldconfig -n $RPM_BUILD_ROOT%{_libdir}
110 for f in $RPM_BUILD_ROOT%{_libdir}/lib*.so.*.*.* ; do
111         ln -sf $(basename $f) $(echo $f | sed -e 's/[.0-9]*$//')
112 done
113 %if %{with static_libs}
114 install Framewave/build/bin/release_static_*/lib*.a $RPM_BUILD_ROOT%{_libdir}
115 %endif
116
117 %clean
118 rm -rf $RPM_BUILD_ROOT
119
120 %post   -p /sbin/ldconfig
121 %postun -p /sbin/ldconfig
122
123 %files
124 %defattr(644,root,root,755)
125 %doc License.txt README
126 %attr(755,root,root) %{_libdir}/libfwBase.so.*.*.*
127 %attr(755,root,root) %ghost %{_libdir}/libfwBase.so.1
128 %attr(755,root,root) %{_libdir}/libfwImage.so.*.*.*
129 %attr(755,root,root) %ghost %{_libdir}/libfwImage.so.1
130 %attr(755,root,root) %{_libdir}/libfwJPEG.so.*.*.*
131 %attr(755,root,root) %ghost %{_libdir}/libfwJPEG.so.1
132 %attr(755,root,root) %{_libdir}/libfwSignal.so.*.*.*
133 %attr(755,root,root) %ghost %{_libdir}/libfwSignal.so.1
134 %attr(755,root,root) %{_libdir}/libfwVideo.so.*.*.*
135 %attr(755,root,root) %ghost %{_libdir}/libfwVideo.so.1
136
137 %files devel
138 %defattr(644,root,root,755)
139 %doc Framewave/doc/*.h
140 %attr(755,root,root) %{_libdir}/libfwBase.so
141 %attr(755,root,root) %{_libdir}/libfwImage.so
142 %attr(755,root,root) %{_libdir}/libfwJPEG.so
143 %attr(755,root,root) %{_libdir}/libfwSignal.so
144 %attr(755,root,root) %{_libdir}/libfwVideo.so
145 %{_includedir}/fwBase.h
146 %{_includedir}/fwImage.h
147 %{_includedir}/fwImage_sol.h
148 %{_includedir}/fwJPEG.h
149 %{_includedir}/fwSignal.h
150 %{_includedir}/fwVideo.h
151
152 %if %{with static_libs}
153 %files static
154 %defattr(644,root,root,755)
155 %{_libdir}/libfwBase.a
156 %{_libdir}/libfwImage.a
157 %{_libdir}/libfwJPEG.a
158 %{_libdir}/libfwSignal.a
159 %{_libdir}/libfwVideo.a
160 %endif
This page took 0.034209 seconds and 2 git commands to generate.