fixed FTBFS with gcc5, added cdrkit-1.1.11-werror_gcc5.patch
[cdrkit.git] / cdrkit.spec
blob77572a5bf435e4d105e9f4c49c435a6b2cb27962
1 Summary: A collection of CD/DVD utilities
2 Name: cdrkit
3 Version: 1.1.11
4 Release: 27%{?dist}
5 License: GPLv2
6 Group: Applications/System
7 URL: http://cdrkit.org/
8 Source: http://cdrkit.org/releases/cdrkit-%{version}.tar.gz
10 Patch1: cdrkit-1.1.8-werror.patch
11 Patch2: cdrkit-1.1.9-efi-boot.patch
12 Patch4: cdrkit-1.1.9-no_mp3.patch
13 Patch5: cdrkit-1.1.9-buffer_overflow.patch
14 Patch6: cdrkit-1.1.10-build-fix.patch
15 Patch7: cdrkit-1.1.11-manpagefix.patch
16 Patch8: cdrkit-1.1.11-rootstat.patch
17 Patch9: cdrkit-1.1.11-usalinst.patch
18 Patch10: cdrkit-1.1.11-readsegfault.patch
19 Patch11: cdrkit-1.1.11-format.patch
20 Patch12: cdrkit-1.1.11-handler.patch
21 Patch13: cdrkit-1.1.11-dvdman.patch
22 Patch14: cdrkit-1.1.11-paranoiacdda.patch
23 Patch15: cdrkit-1.1.11-utf8.patch
24 Patch16: cdrkit-1.1.11-cmakewarn.patch
25 Patch17: cdrkit-1.1.11-memset.patch
26 Patch19: cdrkit-1.1.11-ppc64le_elfheader.patch
27 Patch20: cdrkit-1.1.11-werror_gcc5.patch
29 BuildRequires: cmake libcap-devel zlib-devel perl file-devel bzip2-devel
31 %description
32 cdrkit is a collection of CD/DVD utilities.
34 %package -n wodim
35 Summary: A command line CD/DVD recording program
36 Group: Applications/Archiving
37 Obsoletes: dvdrecord <= 0:0.1.5
38 Provides: dvdrecord = 0:0.1.5.1
39 Obsoletes: cdrecord < 9:2.01-12
40 Provides: cdrecord = 9:2.01-12
41 Requires: libusal = %{version}-%{release}
42 Requires(preun): %{_sbindir}/alternatives coreutils
43 Requires(post): %{_sbindir}/alternatives coreutils
45 %description -n wodim
46 Wodim is an application for creating audio and data CDs. Wodim
47 works with many different brands of CD recorders, fully supports
48 multi-sessions and provides human-readable error messages.
50 %package -n genisoimage
51 Summary: Creates an image of an ISO9660 file-system
52 Group: Applications/System
53 Obsoletes: mkisofs < 9:2.01-12
54 Provides: mkisofs = 9:2.01-12
55 Requires: libusal = %{version}-%{release}
56 Requires(preun): %{_sbindir}/alternatives coreutils
57 Requires(post): %{_sbindir}/alternatives coreutils
59 %description -n genisoimage
60 The genisoimage program is used as a pre-mastering program; i.e., it
61 generates the ISO9660 file-system. Genisoimage takes a snapshot of
62 a given directory tree and generates a binary image of the tree
63 which will correspond to an ISO9660 file-system when written to
64 a block device. Genisoimage is used for writing CD-ROMs, and includes
65 support for creating boot-able El Torito CD-ROMs.
67 Install the genisoimage package if you need a program for writing
68 CD-ROMs.
70 %package -n dirsplit
71 Summary: Utility to split directories
72 Group: Applications/System
73 Requires: perl >= 4:5.8.1
74 Requires: genisoimage = %{version}-%{release}
76 %description -n dirsplit
77 This utility is used to split directories into chunks before burning.
78 Chunk size is usually set to fit to a CD/DVD.
80 %package -n icedax
81 Group: Applications/Multimedia
82 Summary: A utility for sampling/copying .wav files from digital audio CDs
83 Obsoletes: cdda2wav < 9:2.01-12
84 Provides: cdda2wav = 9:2.01-12
85 Requires: libusal = %{version}-%{release}
86 Requires(preun): %{_sbindir}/alternatives chkconfig coreutils
87 Requires(post): %{_sbindir}/alternatives chkconfig coreutils
88 Requires: vorbis-tools
89 Requires: cdparanoia
90 BuildRequires: cdparanoia-devel
92 %description -n icedax
93 Icedax is a sampling utility for CD-ROM drives that are capable of
94 providing a CD's audio data in digital form to your host. Audio data
95 read from the CD can be saved as .wav or .sun format sound files.
96 Recording formats include stereo/mono, 8/12/16 bits and different
97 rates. Icedax can also be used as a CD player.
99 %package -n libusal
100 Summary: Library to communicate with SCSI devices
101 Group: Development/Libraries
103 %description -n libusal
104 The libusal package contains C libraries that allows applications
105 to communicate with SCSI devices and is well suitable for writing
106 CD-R media.
108 %package -n libusal-devel
109 Summary: Development files for libusal
110 Group: Development/Libraries
111 Requires: libusal = %{version}-%{release}
113 %description -n libusal-devel
114 The libusal-devel package contains C libraries and header files
115 for developing applications that use libusal for communication with
116 SCSI devices.
118 %prep
119 %setup -q
120 %patch1 -p1 -b .werror
121 %patch2 -p1 -b .efi
122 %patch4 -p1 -b .no_mp3
123 %patch5 -p1 -b .buffer_overflow
124 %patch6 -p1 -b .build-fix
125 %patch7 -p1 -b .manpagefix
126 %patch8 -p1 -b .rootstat
127 %patch9 -p1 -b .usalinst
128 %patch10 -p1 -b .readsegfault
129 %patch11 -p1 -b .format
130 %patch12 -p1 -b .handler
131 %patch13 -p1 -b .dvdman
132 %patch14 -p1 -b .paranoiacdda
133 # not using -b since otherwise backup files would be included into rpm
134 %patch15 -p1
135 %patch16 -p1 -b .cmakewarn
136 %patch17 -p1 -b .edcspeed
137 %patch19 -p1 -b .elfheader
138 %patch20 -p1 -b .werror_gcc5
140 # we do not want bundled paranoia library
141 rm -rf libparanoia
143 find . -type f -print0 | xargs -0 perl -pi -e 's#/usr/local/bin/perl#/usr/bin/perl#g'
144 find doc -type f -print0 | xargs -0 chmod a-x
147 %build
148 mkdir fedora
149 cd fedora
150 export CFLAGS="$RPM_OPT_FLAGS -Wall -Werror -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -Wno-array-bounds -fno-strict-aliasing -Wno-logical-not-parentheses"
151 export CXXFLAGS="$CFLAGS"
152 export FFLAGS="$CFLAGS"
153 %cmake CMAKE_VERBOSE=1 \
154 -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \
155 -DBUILD_SHARED_LIBS:BOOL=ON \
158 make VERBOSE=1 %{?_smp_mflags}
160 %install
161 cd fedora
162 make install DESTDIR=$RPM_BUILD_ROOT
163 perl -pi -e 's#^require v5.8.1;##g' $RPM_BUILD_ROOT%{_bindir}/dirsplit
164 ln -s genisoimage $RPM_BUILD_ROOT%{_bindir}/mkisofs
165 ln -s genisoimage $RPM_BUILD_ROOT%{_bindir}/mkhybrid
166 ln -s icedax $RPM_BUILD_ROOT%{_bindir}/cdda2wav
167 ln -s wodim $RPM_BUILD_ROOT%{_bindir}/cdrecord
168 ln -s wodim $RPM_BUILD_ROOT%{_bindir}/dvdrecord
170 #do not include empty fedora/* directories in debuginfo package
171 cd ..
172 rm -rf fedora
174 # missing man page. Do symlink like in debian
175 ln -sf wodim.1.gz $RPM_BUILD_ROOT/%{_mandir}/man1/netscsid.1.gz
177 # we don't need cdda2mp3 since we don't have any mp3 {en,de}coder
178 rm $RPM_BUILD_ROOT%{_bindir}/cdda2mp3
180 %post -n wodim
181 link=`readlink %{_bindir}/cdrecord`
182 if [ "$link" == "%{_bindir}/wodim" ]; then
183 rm -f %{_bindir}/cdrecord
185 link=`readlink %{_bindir}/dvdrecord`
186 if [ "$link" == "wodim" ]; then
187 rm -f %{_bindir}/dvdrecord
190 %{_sbindir}/alternatives --install %{_bindir}/cdrecord cdrecord \
191 %{_bindir}/wodim 50 \
192 --slave %{_mandir}/man1/cdrecord.1.gz cdrecord-cdrecordman \
193 %{_mandir}/man1/wodim.1.gz \
194 --slave %{_bindir}/dvdrecord cdrecord-dvdrecord %{_bindir}/wodim \
195 --slave %{_mandir}/man1/dvdrecord.1.gz cdrecord-dvdrecordman \
196 %{_mandir}/man1/wodim.1.gz \
197 --slave %{_bindir}/readcd cdrecord-readcd %{_bindir}/readom \
198 --slave %{_mandir}/man1/readcd.1.gz cdrecord-readcdman \
199 %{_mandir}/man1/readom.1.gz
201 %preun -n wodim
202 if [ $1 = 0 ]; then
203 %{_sbindir}/alternatives --remove cdrecord %{_bindir}/wodim
206 %post -n genisoimage
207 link=`readlink %{_bindir}/mkisofs`
208 if [ "$link" == "genisoimage" ]; then
209 rm -f %{_bindir}/mkisofs
212 %{_sbindir}/alternatives --install %{_bindir}/mkisofs mkisofs \
213 %{_bindir}/genisoimage 50 \
214 --slave %{_mandir}/man1/mkisofs.1.gz mkisofs-mkisofsman \
215 %{_mandir}/man1/genisoimage.1.gz \
216 --slave %{_bindir}/mkhybrid mkisofs-mkhybrid %{_bindir}/genisoimage \
217 --slave %{_mandir}/man1/mkhybrid.1.gz mkisofs-mkhybridman \
218 %{_mandir}/man1/genisoimage.1.gz
220 %preun -n genisoimage
221 if [ $1 = 0 ]; then
222 %{_sbindir}/alternatives --remove mkisofs %{_bindir}/genisoimage
225 %post -n icedax
226 link=`readlink %{_bindir}/cdda2wav`
227 if [ "$link" == "icedax" ]; then
228 rm -f %{_bindir}/cdda2wav
230 %{_sbindir}/alternatives --install %{_bindir}/cdda2wav cdda2wav \
231 %{_bindir}/icedax 50 \
232 --slave %{_mandir}/man1/cdda2wav.1.gz cdda2wav-cdda2wavman \
233 %{_mandir}/man1/icedax.1.gz
235 %preun -n icedax
236 if [ $1 = 0 ]; then
237 %{_sbindir}/alternatives --remove cdda2wav %{_bindir}/icedax
240 %post -n libusal -p /sbin/ldconfig
242 %postun -n libusal -p /sbin/ldconfig
244 %files -n wodim
245 %doc Changelog COPYING FAQ FORK START
246 %doc doc/READMEs doc/wodim
247 %{_bindir}/devdump
248 %{_bindir}/wodim
249 %ghost %{_bindir}/cdrecord
250 %ghost %{_bindir}/dvdrecord
251 %{_bindir}/readom
252 %{_sbindir}/netscsid
253 %{_mandir}/man1/devdump.*
254 %{_mandir}/man1/wodim.*
255 %{_mandir}/man1/netscsid.*
256 %{_mandir}/man1/readom.*
258 %files -n icedax
259 %doc doc/icedax COPYING
260 %{_bindir}/icedax
261 %ghost %{_bindir}/cdda2wav
262 %{_bindir}/cdda2ogg
263 %{_mandir}/man1/icedax.*
264 %{_mandir}/man1/cdda2ogg.*
265 %{_mandir}/man1/list_audio_tracks.*
267 %files -n genisoimage
268 %doc doc/genisoimage COPYING
269 %{_bindir}/genisoimage
270 %ghost %{_bindir}/mkisofs
271 %ghost %{_bindir}/mkhybrid
272 %{_bindir}/isodebug
273 %{_bindir}/isodump
274 %{_bindir}/isoinfo
275 %{_bindir}/isovfy
276 %{_bindir}/pitchplay
277 %{_bindir}/readmult
278 %{_mandir}/man5/genisoimagerc.*
279 %{_mandir}/man1/genisoimage.*
280 %{_mandir}/man1/isodebug.*
281 %{_mandir}/man1/isodump.*
282 %{_mandir}/man1/isoinfo.*
283 %{_mandir}/man1/isovfy.*
284 %{_mandir}/man1/pitchplay.*
285 %{_mandir}/man1/readmult.*
287 %files -n dirsplit
288 %{_bindir}/dirsplit
289 %{_mandir}/man1/dirsplit.*
291 %files -n libusal
292 %doc doc/plattforms/README.linux Changelog COPYING FAQ FORK START
293 %{_libdir}/libusal.so.*
294 %{_libdir}/librols.so.*
296 %files -n libusal-devel
297 %doc COPYING
298 %{_libdir}/libusal.so
299 %{_libdir}/librols.so
300 %{_includedir}/usal
302 %changelog
303 * Wed Feb 25 2015 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-27
304 - fixed FTBFS with gcc5, added cdrkit-1.1.11-werror_gcc5.patch
306 * Fri Nov 07 2014 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-26
307 - reverted back to cdda-paranoia, cdio has now incompatible GPLv3+ license
309 * Wed Nov 05 2014 Dan HorĂ¡k <dan[at]danny.cz> - 1.1.11-25
310 - fix build on ppc* (#1144072)
312 * Fri Aug 15 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-24
313 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
315 * Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-23
316 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
318 * Sat Aug 03 2013 Petr Pisar <ppisar@redhat.com> - 1.1.11-22
319 - Perl 5.18 rebuild
321 * Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-21
322 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
324 * Tue Jul 23 2013 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-20
325 - do not include empty fedora/* directories in debuginfo package
327 * Wed Jul 17 2013 Petr Pisar <ppisar@redhat.com> - 1.1.11-19
328 - Perl 5.18 rebuild
330 * Wed Jul 17 2013 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-18
331 - ported from cdda-paranoia to libcdio-paranoia, modified paranoia-cdda.patch
332 - fixed bogus date in changelog
334 * Mon Feb 25 2013 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-17
335 - modified the memset patch, memsetting the whole array
337 * Fri Feb 22 2013 Frantisek Kluknavsky <fkluknav@redhat.com> - 1.1.11-16
338 - changed or deleted faulty and unneeded memset's that caused build failure with gcc-4.8 -Werror
340 * Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-15
341 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
343 * Wed Oct 03 2012 Honza Horak <hhorak@redhat.com> - 1.1.11-14
344 - Add coreutils as preun/post requirements for wodim and genisoimage
345 Resolves: #862554
347 * Mon Aug 27 2012 Honza Horak <hhorak@redhat.com> - 1.1.11-13
348 - Add mkhybrid(1) as a symlink to genisoimage(1)
349 - Spec file cleanup
351 * Mon Jul 30 2012 Honza Horak <hhorak@redhat.com> - 1.1.11-12
352 - Use system cdparanoia instead of old bundled version
353 - Build libusal as a shared library
354 - Messages from rpmlint clean-up
356 * Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-11
357 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
359 * Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-10
360 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
362 * Wed Dec 07 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-9
363 - Fix driver specification in man pages
364 (Resolves: #711623)
366 * Thu Jun 02 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-8
367 - Fix segmentation fault when icedax exits while sleeping after ctrl-c
368 (Resolves: #709902)
370 * Tue May 17 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-7
371 - Fix automatic formatting of DVD+RW if needed
372 (Resolves: #519465)
374 * Thu Mar 17 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-6
375 - Added Provides: libusal-static for libusal-devel subpackage
376 (Resolves: #688347)
378 * Mon Mar 07 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-5
379 - Fix segmentation fault in readom
380 (Resolves: #682591)
382 * Thu Feb 17 2011 Honza Horak <hhorak@redhat.com> - 1.1.11-4
383 - Library libusal is installed in order to be used by other apps
384 (Resolves: #588508)
385 https://bugzilla.redhat.com/show_bug.cgi?id=588508
387 * Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.11-3
388 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
390 * Mon Jan 31 2011 Honza Horak <hhorak@redhat.com> 1.1.11-2
391 - fixed man page missing arguments (Resolves: #647024)
392 https://bugzilla.redhat.com/show_bug.cgi?id=647024
393 - fixed erroneous "Unknown file type (unallocated)" warning
394 (Resolves: #174667)
395 https://bugzilla.redhat.com/show_bug.cgi?id=174667
397 * Mon Oct 18 2010 Nikola Pajkovsky <npajkovs@redhat.com> 1.1.11-1
398 - new upstream version 1.1.11
400 * Mon Jun 21 2010 Roman Rakus <rrakus@redhat.com> - 1.1.10-2
401 - Added missing manpage for netscsid (symlink to wodim manpage)
403 * Wed Jan 20 2010 Nikola Pajkovsky <npajkovs@redhat.com> - 1.1.10-1
404 - new upstream version 1.1.10
406 * Tue Aug 11 2009 Nikola Pajkovsky <npajkovs@redhat.com> 1.1.9-10
407 - fix #508449. fix string overflow breakage when using the -root
409 * Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.9-9
410 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
412 * Thu Jul 16 2009 Nikola Pajkovsky <npajkovs@redhat.com> 1.1.9-8
413 - fix buffer overflow
415 * Fri Jul 10 2009 Adam Jackson <ajax@redhat.com> 1.1.9-7
416 - Move dirsplit to a subpackage to isolate the perl dependency.
418 * Mon Jun 15 2009 Roman Rakus <rrakus@redhat.com> - 1.1.9-6
419 - rename functions as they conflict with glibc
420 - Don't push cdda2mp3 because we don't have any mp3 coder
421 Resolves: #505918
423 * Tue Jun 02 2009 Roman Rakus <rrakus@redhat.com> - 1.1.9-5
424 - Added Requires vorbis-tools in icedax (rhbz #503699)
426 * Wed Feb 25 2009 Peter Jones <pjones@redhat.com> - 1.1.9-4
427 - Add support for EFI boot images.
429 * Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.9-3
430 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
432 * Thu Feb 12 2009 Roman Rakus <rrakus@redhat.com> - 1.1.9-2
433 - Use -fno-strict-aliasing to prevent strict_aliasing warnings/errors
435 * Mon Oct 27 2008 Roman Rakus <rrakus@redhat.com> - 1.1.9-1
436 - Bump to version 1.1.9
438 * Tue May 27 2008 Roman Rakus <rrakus@redhat.com> - 1.1.8-1
439 - Version 1.1.8 - old patches included
440 - added bzip2-devel to build requirements
441 - fixed #171510 - preserve directory permissions
443 * Wed Feb 27 2008 Harald Hoyer <harald@redhat.com> 1.1.6-11
444 - refined -Werror patch
446 * Mon Feb 25 2008 Harald Hoyer <harald@redhat.com> 1.1.6-10
447 - patched to compile with -Werror (rhbz#429385)
449 * Thu Feb 21 2008 Harald Hoyer <harald@redhat.com> 1.1.6-9
450 - fixed loop on error message for old dev syntax (rhbz#429386)
452 * Thu Feb 21 2008 Harald Hoyer <harald@redhat.com> 1.1.6-8
453 - added file-devel to build requirements
455 * Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.1.6-7
456 - Autorebuild for GCC 4.3
458 * Tue Sep 25 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-6
459 - fixed readcd man page symlink
461 * Fri Sep 21 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-5
462 - fixed rhbz#255001 - icedax --devices segfaults
463 - fixed rhbz#249357 - Typo in wodim output
465 * Fri Sep 21 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-4
466 - play stupid tricks, to let alternatives make the links and
467 rpm not removing them afterwards
468 - removed bogus warning for "." and ".."
470 * Thu Sep 20 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-3
471 - fixed rhbz#248262
472 - switched to alternatives
474 * Fri Aug 17 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-2
475 - changed license to GPLv2
477 * Wed Jun 20 2007 Harald Hoyer <harald@redhat.com> - 1.1.6-1
478 - version 1.1.6
479 - added readcd symlink
481 * Mon Apr 23 2007 Harald Hoyer <harald@redhat.com> - 1.1.2-4
482 - bump obsoletes/provides
484 * Tue Feb 27 2007 Harald Hoyer <harald@redhat.com> - 1.1.2-3
485 - applied specfile changes as in bug #224365
487 * Wed Jan 24 2007 Harald Hoyer <harald@redhat.com> - 1.1.2-1
488 - version 1.1.2