diff -ruN k3b.orig/Makefile k3b/Makefile --- k3b.orig/Makefile Fri May 27 16:42:51 2005 +++ k3b/Makefile Tue Jul 12 08:56:49 2005 @@ -6,8 +6,7 @@ # PORTNAME= k3b -PORTVERSION= 0.11.24 -PORTREVISION= 1 +PORTVERSION= 0.12.2 CATEGORIES= sysutils multimedia kde MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= ${PORTNAME} @@ -17,27 +16,30 @@ RUN_DEPENDS= cdrecord:${PORTSDIR}/sysutils/cdrtools \ cdrdao:${PORTSDIR}/sysutils/cdrdao -LIB_DEPENDS= mad:${PORTSDIR}/audio/libmad \ - id3:${PORTSDIR}/audio/id3lib \ - vorbis:${PORTSDIR}/audio/libvorbis \ - FLAC:${PORTSDIR}/audio/flac +LIB_DEPENDS= tag:${PORTSDIR}/audio/taglib \ + dvdcss:${PORTSDIR}/multimedia/libdvdcss \ + samplerate:${PORTSDIR}/audio/libsamplerate USE_BZIP2= yes GNU_CONFIGURE= yes CONFIGURE_TARGET=--build=${MACHINE_ARCH}-portbld-freebsd${OSREL} -CONFIGURE_ARGS= --with-k3bsetup=no +CONFIGURE_ARGS= --with-k3bsetup=no --without-resmgr --without-hal USE_GMAKE= yes USE_INC_LIBTOOL_VER=15 INSTALLS_SHLIB= yes LDCONFIG_DIRS= %%PREFIX%%/lib %%PREFIX%%/lib/kde3 USE_KDELIBS_VER= 3 -USE_REINPLACE= yes + +OPTIONS= SNDFILE "Add audio/libsndfile decoder (for wav files)" On \ + FLAC "Add audio/flac decoder" On \ + LAME "Add audio/lame encoder (for mp3 files)" On \ + FFMPEG "Add multimedia/ffmpeg decoder (for wma files)" Off \ + MUSICBRAINZ "Use audio/libmusicbrainz music meta database" Off \ + MPC "Add audio/libmpcdec decoder (for musepack file)" Off pre-configure: - ${REINPLACE_CMD} "s,-O2 ,,g" ${WRKSRC}/configure -.for i in config.h.in Makefile.in - ${TOUCH} ${WRKSRC}/${i} -.endfor + ${RM} ${WRKSRC}/admin/cvs.sh + ${TOUCH} ${WRKSRC}/admin/cvs.sh post-install: @${CAT} ${PKGMESSAGE} @@ -50,6 +52,54 @@ .if ${OSVERSION} > 500000 PKGMESSAGE= ${PKGDIR}/pkg-message5 +.endif + +.if defined(WITH_SNDFILE) +PLIST_SUB+= SNDFILE="" +LIB_DEPENDS+= sndfile:${PORTSDIR}/audio/libsndfile +.else +PLIST_SUB+= SNDFILE="@comment " +CONFIGURE_ARGS+= --without-sndfile +.endif + +.if defined(WITH_FLAC) +PLIST_SUB+= FLAC="" +LIB_DEPENDS+= FLAC:${PORTSDIR}/audio/flac +.else +PLIST_SUB+= FLAC="@comment " +CONFIGURE_ARGS+= --without-flac +.endif + +.if defined(WITH_LAME) +PLIST_SUB+= LAME="" +LIB_DEPENDS+= mp3lame:${PORTSDIR}/audio/lame +.else +PLIST_SUB+= LAME="@comment " +CONFIGURE_ARGS+= --without-lame +.endif + +.if defined(WITH_FFMPEG) +PLIST_SUB+= FFMPEG="" +LIB_DEPENDS+= avcodec:${PORTSDIR}/multimedia/ffmpeg +.else +PLIST_SUB+= FFMPEG="@comment " +CONFIGURE_ARGS+= --without-ffmpeg +.endif + +.if defined(WITH_MUSICBRAINZ) +PLIST_SUB+= MUSICBRAINZ="" +LIB_DEPENDS+= musicbrainz:${PORTSDIR}/audio/libmusicbrainz +.else +PLIST_SUB+= MUSICBRAINZ="@comment " +CONFIGURE_ARGS+= --without-musicbrainz +.endif + +.if defined(WITH_MPC) +PLIST_SUB+= MPC="" +LIB_DEPENDS+= mpcdec:${PORTSDIR}/audio/libmpcdec +.else +PLIST_SUB+= MPC="@comment " +CONFIGURE_ARGS+= --without-musepack .endif .include diff -ruN k3b.orig/distinfo k3b/distinfo --- k3b.orig/distinfo Thu May 19 17:56:45 2005 +++ k3b/distinfo Tue Jul 12 08:54:23 2005 @@ -1,2 +1,2 @@ -MD5 (k3b-0.11.24.tar.bz2) = d30fe0bc321e1f8aeebda80c82ee3dfb -SIZE (k3b-0.11.24.tar.bz2) = 3198948 +MD5 (k3b-0.12.2.tar.bz2) = 52dac62c8f22330784f82703385482ee +SIZE (k3b-0.12.2.tar.bz2) = 3771371 diff -ruN k3b.orig/files/patch-libk3b-projects-datacd-k3bdatajob.cpp k3b/files/patch-libk3b-projects-datacd-k3bdatajob.cpp --- k3b.orig/files/patch-libk3b-projects-datacd-k3bdatajob.cpp Thu Jan 1 01:00:00 1970 +++ k3b/files/patch-libk3b-projects-datacd-k3bdatajob.cpp Tue Jul 12 15:17:49 2005 @@ -0,0 +1,12 @@ +--- libk3b/projects/datacd/k3bdatajob.cpp.orig Tue Jul 12 14:56:13 2005 ++++ libk3b/projects/datacd/k3bdatajob.cpp Tue Jul 12 14:56:35 2005 +@@ -98,8 +98,8 @@ + + K3bDataJob::~K3bDataJob() + { +- delete d; + delete d->tocFile; ++ delete d; + } + + diff -ruN k3b.orig/files/patch-src-Makefile.in k3b/files/patch-src-Makefile.in --- k3b.orig/files/patch-src-Makefile.in Wed Apr 6 17:08:46 2005 +++ k3b/files/patch-src-Makefile.in Thu Jan 1 01:00:00 1970 @@ -1,11 +0,0 @@ ---- src/Makefile.in.orig Wed Mar 16 10:43:55 2005 -+++ src/Makefile.in Wed Mar 23 19:44:55 2005 -@@ -299,7 +299,7 @@ - #>+ 1 - k3b_SOURCES=k3bwelcomewidget.cpp k3bapplication.cpp k3bdiroperator.cpp kdndfileview.cpp k3bfiletreeview.cpp k3bcddbmultientriesdialog.cpp k3baudioplayer.cpp k3bprojecttabbar.cpp k3bprojecttabwidget.cpp k3bsplash.cpp k3bblankingdialog.cpp k3bfileview.cpp k3bdirview.cpp k3btoolbox.cpp k3b.cpp main.cpp k3bstatusbarmanager.cpp k3bfiletreecombobox.cpp k3breadcdreader.cpp k3binterface.cpp k3bprojectinterface.cpp k3bsystemproblemdialog.cpp k3bcdcontentsview.cpp k3bwriterspeedverificationdialog.cpp k3bdatatrackreader.cpp k3binterface_skel.cpp k3bprojectinterface_skel.cpp - --k3b_LDADD = ./cdinfo/libcdinfo.la ./option/liboption.la ./rip/librip.la ./cdcopy/libcdcopy.la ./dvdcopy/libdvdcopy.la ./videoEncoding/libvideoEncoding.la ./plugin/libk3bplugin.la $(ARTS_LIBS) -lkio -lkparts ./device/libk3bdevice.la ./core/libk3bcore.la ./tools/libk3btools.la ./projects/libk3bproject.la ./images/libimagewriting.la -+k3b_LDADD = ./cdinfo/libcdinfo.la ./option/liboption.la ./rip/librip.la ./cdcopy/libcdcopy.la ./dvdcopy/libdvdcopy.la ./videoEncoding/libvideoEncoding.la ./plugin/libk3bplugin.la $(ARTS_LIBS) -lkio -lkparts -lcam ./device/libk3bdevice.la ./core/libk3bcore.la ./tools/libk3btools.la ./projects/libk3bproject.la ./images/libimagewriting.la - - SUBDIRS = device core tools plugin projects cddb cdinfo option rip cdcopy images dvdcopy videoEncoding pics icons konqi mimetypes tests audiodecoding audioencoding sounds $(K3BSETUP1_BUILD) - diff -ruN k3b.orig/files/patch-src-device-k3bdevice.cpp k3b/files/patch-src-device-k3bdevice.cpp --- k3b.orig/files/patch-src-device-k3bdevice.cpp Wed Apr 6 17:08:46 2005 +++ k3b/files/patch-src-device-k3bdevice.cpp Thu Jan 1 01:00:00 1970 @@ -1,90 +0,0 @@ ---- src/device/k3bdevice.cpp.orig Thu Feb 24 09:15:57 2005 -+++ src/device/k3bdevice.cpp Wed Mar 23 19:44:55 2005 -@@ -57,6 +57,13 @@ - - #endif // Q_OS_LINUX - -+#ifdef __FreeBSD__ -+#define __BYTE_ORDER BYTE_ORDER -+#define __BIG_ENDIAN BIG_ENDIAN -+#define CD_FRAMESIZE_RAW 2352 -+#define nearbyint(x) rint(x) -+#endif -+ - - #ifdef HAVE_RESMGR - extern "C" { -@@ -188,8 +195,10 @@ - - d->supportedProfiles = 0; - -+#ifndef __FreeBSD__ - if(open() < 0) - return false; -+#endif - - - // -@@ -228,6 +237,7 @@ - unsigned char header[2048]; - ::memset( header, 0, 2048 ); - -+ cmd.clear(); - cmd[0] = MMC::GET_CONFIGURATION; - cmd[8] = 8; - if( cmd.transport( TR_DIR_READ, header, 8 ) ) { -@@ -820,6 +830,24 @@ - m_bufferSize = 1024; - d->burnfree = false; - } -+ else if( vendor().startsWith("TEAC") ) { -+ if( description().startsWith("CD-R56S") ) { -+ m_writeModes |= TAO; -+ d->deviceType |= CDROM|CDR; -+ m_maxWriteSpeed = 6; -+ m_maxReadSpeed = 24; -+ m_bufferSize = 1302; -+ d->burnfree = false; -+ } -+ if( description().startsWith("CD-R58S") ) { -+ m_writeModes |= TAO; -+ d->deviceType |= CDROM|CDR; -+ m_maxWriteSpeed = 8; -+ m_maxReadSpeed = 24; -+ m_bufferSize = 4096; -+ d->burnfree = false; -+ } -+ } - else if( vendor().startsWith("MATSHITA") ) { - if( description().startsWith("CD-R CW-7501") ) { - m_writeModes = TAO|SAO; -@@ -2673,10 +2701,12 @@ - { - // if the device is already opened we do not close it - // to allow fast multible method calls in a row -+#ifndef __FreeBSD__ - bool needToClose = !isOpen(); - - if (open() < 0) - return; -+#endif - - // header size is 8 - unsigned char* buffer = 0; -@@ -2762,13 +2792,16 @@ - delete [] buffer; - } - -+#ifndef __FreeBSD__ - if( needToClose ) - close(); -+#endif - } - - - bool K3bCdDevice::CdDevice::readTocPmaAtip( unsigned char** data, int& dataLen, int format, bool time, int track ) const - { -+ kdDebug() << "(K3bCdDevice::CdDevice) readTocPmaAtip started, format:" << format << ", time: " << time << ", track: " << track << endl; - unsigned char header[2048]; - ::memset( header, 0, 2048 ); - diff -ruN k3b.orig/files/patch-src-device-k3bdevice.h k3b/files/patch-src-device-k3bdevice.h --- k3b.orig/files/patch-src-device-k3bdevice.h Mon Jan 10 16:06:00 2005 +++ k3b/files/patch-src-device-k3bdevice.h Thu Jan 1 01:00:00 1970 @@ -1,13 +0,0 @@ ---- src/device/k3bdevice.h.orig Sun Nov 28 13:27:24 2004 -+++ src/device/k3bdevice.h Sun Jan 2 09:30:08 2005 -@@ -690,6 +690,10 @@ - - class Private; - Private* d; -+#ifdef __FreeBSD__ -+ QString m_passDevice; -+ friend class ScsiCommand; -+#endif - friend class DeviceManager; - }; - diff -ruN k3b.orig/files/patch-src-device-k3bdevicemanager.cpp k3b/files/patch-src-device-k3bdevicemanager.cpp --- k3b.orig/files/patch-src-device-k3bdevicemanager.cpp Wed Apr 6 17:08:46 2005 +++ k3b/files/patch-src-device-k3bdevicemanager.cpp Thu Jan 1 01:00:00 1970 @@ -1,277 +0,0 @@ ---- src/device/k3bdevicemanager.cpp.orig Sun Nov 28 13:27:24 2004 -+++ src/device/k3bdevicemanager.cpp Wed Mar 23 19:45:36 2005 -@@ -49,6 +49,12 @@ - #include - #include - -+#ifdef __FreeBSD__ -+#include -+#include -+#include -+#endif -+ - - #ifdef Q_OS_LINUX - -@@ -196,6 +202,13 @@ - { - m_foundDevices = 0; - -+#ifdef __FreeBSD__ -+// What k3b does here is the following: it takes a list of device point, which are good candidates for cd drives -+// and asks their properties. If they are indeed cd drives, they are added to a device list. This does not work -+// on FreeBSD (no corresponding ioctls). Here cdrecord is asked for a list of scsi device, which work as cd -+// drives. The device points of those devices are added to the device list. -+ bsd_scan_devices(); -+#else - QFile info("/proc/sys/dev/cdrom/info"); - QString line,devstring; - info.open(IO_ReadOnly); -@@ -269,6 +282,7 @@ - // FIXME: also scan /dev/scsi/hostX.... for devfs without symlinks - #endif - -+#endif - scanFstab(); - - return m_foundDevices; -@@ -412,6 +426,7 @@ - bool K3bCdDevice::DeviceManager::testForCdrom(const QString& devicename) - { - bool ret = false; -+#ifndef __FreeBSD__ - int cdromfd = K3bCdDevice::openDevice( devicename.ascii() ); - if (cdromfd < 0) { - kdDebug() << "could not open device " << devicename << " (" << strerror(errno) << ")" << endl; -@@ -452,11 +467,36 @@ - } - - ::close( cdromfd ); -+#endif - return ret; - } - - K3bDevice* K3bCdDevice::DeviceManager::addDevice( const QString& devicename ) - { -+#ifdef __FreeBSD__ -+// this piece of code extracts some device parameter, like scsi or ide device. The whole process -+// fails on FreeBSD. Here the device name is simply looked up in a list of devices found by a -+// call of cdrecord --scanbus. -+ K3bDevice* device = findDevice(devicename); -+ if (device) -+ return 0; -+ // resolve all symlinks -+ QString resolved = resolveSymLink( devicename ); -+ kdDebug() << "(K3bDeviceManager) " << devicename << " resolved to " << resolved << endl; -+ if( K3bDevice* oldDev = findDevice( resolved ) ) -+ { -+ kdDebug() << "(K3bDeviceManager) dev already found" << endl; -+ oldDev->addDeviceNode( resolved ); -+ return 0; -+ } -+ device = new K3bDevice(resolved.latin1()); -+ return addDevice( device ); -+} -+ -+K3bDevice* K3bCdDevice::DeviceManager::addDevice( CdDevice* device ) -+{ -+ const QString devicename = device->devicename(); -+#else - K3bDevice* device = 0; - - // resolve all symlinks -@@ -488,6 +528,7 @@ - device->m_target = target; - device->m_lun = lun; - } -+#endif - - if( !device->init() ) { - kdDebug() << "Could not initialize device " << devicename << endl; -@@ -563,9 +604,20 @@ - - if( K3bDevice* dev = findDevice( resolveSymLink(md) ) ) - { -+#ifndef __FreeBSD__ - kdDebug() << "(K3bDeviceManager) found device for " << md << ": " << resolveSymLink(md) << endl; - if( dev->mountDevice().isEmpty() ) { - dev->setMountPoint( mountInfo->fs_file ); -+#else -+ kdDebug() << "(K3bDeviceManager) found device for " << md << " (" << resolveSymLink(md) << "): " << mountInfo->fs_file << endl; -+// Several mount points for one device might exist. If more than one are found, the one with -+// user permission should have a higher priority. -+ struct stat filestat; -+ if( dev->mountDevice().isEmpty() || (mountInfo->fs_file && !stat(mountInfo->fs_file, &filestat) && filestat.st_uid == geteuid())) -+ { -+ kdDebug() << "(K3bDeviceManager) setting mount point for device " << md << ": " << mountInfo->fs_file << endl; -+ dev->setMountPoint( mountInfo->fs_file ); -+#endif - dev->setMountDevice( md ); - dev->m_supermount = supermount; - } -@@ -574,6 +626,8 @@ - { - // compare bus, id, lun since the same device can for example be - // determined as /dev/srX or /dev/scdX -+#ifndef __FreeBSD__ -+// On FreeBSD scsi parameters can not be extracted from a file handle - int bus = -1, id = -1, lun = -1; - if( determineBusIdLun( mountInfo->fs_spec, bus, id, lun ) ) { - if( K3bDevice* dev = findDevice( bus, id, lun ) ) { -@@ -584,6 +638,17 @@ - } - } - } -+#else -+// Therefore they are looked up in the device list. -+ kdDebug() << "(K3bDeviceManager) device: " << mountInfo->fs_spec << endl; -+ if( K3bDevice* dev = findDevice( mountInfo->fs_spec ) ) { -+ kdDebug() << " found! " << endl; -+ if( dev->mountDevice().isEmpty() ) { -+ dev->setMountPoint( mountInfo->fs_file ); -+ dev->setMountDevice( md ); -+ } -+ } -+#endif - - - } -@@ -659,5 +724,138 @@ - return QString::fromLatin1( resolved ); - } - -+ -+#ifdef __FreeBSD__ -+#include -+#include -+#include -+void K3bCdDevice::DeviceManager::bsd_scan_devices() -+{ -+ union ccb ccb; -+ int fd, i; -+ int need_close = 0; -+ int skip_device = 0; -+ int bus, target, lun; -+ QString dev1 = "", dev2 = ""; -+ -+ if ((fd = open(XPT_DEVICE, O_RDWR)) == -1) -+ { -+ kdDebug() << "couldn't open %s " << XPT_DEVICE << endl; -+ return; -+ } -+ -+ memset(&ccb, 0, sizeof(ccb)); -+ -+ ccb.ccb_h.func_code = XPT_DEV_MATCH; -+ char buffer[100*sizeof(struct dev_match_result)]; -+ ccb.cdm.match_buf_len = 100*sizeof(struct dev_match_result); -+ ccb.cdm.matches = (struct dev_match_result *)buffer; -+ ccb.cdm.num_matches = 0; -+ ccb.cdm.num_patterns = 0; -+ ccb.cdm.pattern_buf_len = 0; -+ do { -+ if (ioctl(fd, CAMIOCOMMAND, &ccb) == -1) { -+ kdDebug() << "(bsd_scan_devices) error sending CAMIOCOMMAND ioctl: " << errno << endl; -+ break; -+ } -+ -+ if ((ccb.ccb_h.status != CAM_REQ_CMP) -+ || ((ccb.cdm.status != CAM_DEV_MATCH_LAST) && (ccb.cdm.status != CAM_DEV_MATCH_MORE))) { -+ kdDebug() << "(bsd_scan_devices) got CAM error " << ccb.ccb_h.status << ", CDM error %d" << ccb.cdm.status << endl; -+ break; -+ } -+ kdDebug() << "(bsd_scan_devices) number of matches " << (int)ccb.cdm.num_matches << endl; -+ for (int i = 0; i < (int)ccb.cdm.num_matches; i++) { -+ switch (ccb.cdm.matches[i].type) { -+ case DEV_MATCH_DEVICE: { -+ struct device_match_result *dev_result = &ccb.cdm.matches[i].result.device_result; -+ -+ if (dev_result->flags & DEV_RESULT_UNCONFIGURED) -+ { -+ skip_device = 1; -+ break; -+ } -+ else -+ skip_device = 0; -+ if (need_close) -+ { -+ QString pass = dev1; -+ QString dev = "/dev/" + dev2; -+ if (dev2.startsWith("pass")) -+ { -+ pass = dev2; -+ dev = "/dev/" + dev1; -+ } -+#if __FreeBSD_version < 500100 -+ dev += "c"; -+#endif -+ if (dev1 != "" && dev2 != "" && dev.startsWith("/dev/cd")) -+ { -+ K3bDevice* device = new K3bDevice(dev.latin1()); -+ device->m_bus = bus; -+ device->m_target = target; -+ device->m_lun = lun; -+ device->m_passDevice = "/dev/" + pass; -+ kdDebug() << "(bsd_scan_devices) add device " << dev << ":" << bus << ":" << target << ":" << lun << endl; -+ addDevice(device); -+ } -+ need_close = 0; -+ dev1=""; -+ dev2=""; -+ } -+ bus = dev_result->path_id; -+ target = dev_result->target_id; -+ lun = dev_result->target_lun; -+ -+ need_close = 1; -+ -+ break; -+ } -+ case DEV_MATCH_PERIPH: { -+ struct periph_match_result *periph_result = &ccb.cdm.matches[i].result.periph_result; -+ -+ if (skip_device != 0) -+ break; -+ -+ if (need_close > 1) -+ dev1 = periph_result->periph_name + QString::number(periph_result->unit_number); -+ else -+ dev2 = periph_result->periph_name + QString::number(periph_result->unit_number); -+ -+ need_close++; -+ break; -+ } -+ } -+ } -+ -+ } while ((ccb.ccb_h.status == CAM_REQ_CMP) -+ && (ccb.cdm.status == CAM_DEV_MATCH_MORE)); -+ -+ if (need_close) -+ { -+ QString pass = dev1; -+ QString dev = "/dev/" + dev2; -+ if (dev2.startsWith("pass")) -+ { -+ pass = dev2; -+ dev = "/dev/" + dev1; -+ } -+#if __FreeBSD_version < 500100 -+ dev += "c"; -+#endif -+ if (dev1 != "" && dev2 != "" && dev.startsWith("/dev/cd")) -+ { -+ K3bDevice* device = new K3bDevice(dev.latin1()); -+ device->m_bus = bus; -+ device->m_target = target; -+ device->m_lun = lun; -+ device->m_passDevice = "/dev/" + pass; -+ kdDebug() << "(bsd_scan_devices) add device " << dev << ":" << bus << ":" << target << ":" << lun << endl; -+ addDevice(device); -+ } -+ } -+ close(fd); -+} -+#endif - - #include "k3bdevicemanager.moc" diff -ruN k3b.orig/files/patch-src-device-k3bdevicemanager.h k3b/files/patch-src-device-k3bdevicemanager.h --- k3b.orig/files/patch-src-device-k3bdevicemanager.h Mon Jan 10 16:06:00 2005 +++ k3b/files/patch-src-device-k3bdevicemanager.h Thu Jan 1 01:00:00 1970 @@ -1,13 +0,0 @@ ---- src/device/k3bdevicemanager.h.orig Wed Jan 21 11:20:11 2004 -+++ src/device/k3bdevicemanager.h Sun Jan 2 09:30:08 2005 -@@ -112,6 +112,10 @@ - - class Private; - Private* d; -+#ifdef __FreeBSD__ -+ void bsd_scan_devices(); -+ CdDevice* addDevice( CdDevice* ); -+#endif - }; - } - diff -ruN k3b.orig/files/patch-src-device-k3bscsicommand.cpp k3b/files/patch-src-device-k3bscsicommand.cpp --- k3b.orig/files/patch-src-device-k3bscsicommand.cpp Mon Jan 10 16:06:00 2005 +++ k3b/files/patch-src-device-k3bscsicommand.cpp Thu Jan 1 01:00:00 1970 @@ -1,179 +0,0 @@ ---- src/device/k3bscsicommand.cpp.orig Sun Aug 15 11:58:23 2004 -+++ src/device/k3bscsicommand.cpp Sun Jan 2 09:30:08 2005 -@@ -58,13 +58,14 @@ - - - --K3bCdDevice::ScsiCommand::ScsiCommand( int fd ) -- : m_fd(fd), -- m_device(0) --{ -- clear(); --} -+//K3bCdDevice::ScsiCommand::ScsiCommand( int fd ) -+// : m_fd(fd), -+// m_device(0) -+//{ -+// clear(); -+//} - -+#ifndef __FreeBSD__ - - K3bCdDevice::ScsiCommand::ScsiCommand( const K3bCdDevice::CdDevice* dev ) - : m_device(dev) -@@ -141,6 +142,155 @@ - return 0; - } - -+#else -+ -+#include -+#include -+#include -+#include -+#define ERRCODE(s) ((((s)[2]&0x0F)<<16)|((s)[12]<<8)|((s)[13])) -+#define EMEDIUMTYPE EINVAL -+#define ENOMEDIUM ENODEV -+#define CREAM_ON_ERRNO(s) do { \ -+ switch ((s)[12]) \ -+ { case 0x04: errno=EAGAIN; break; \ -+ case 0x20: errno=ENODEV; break; \ -+ case 0x21: if ((s)[13]==0) errno=ENOSPC; \ -+ else errno=EINVAL; \ -+ break; \ -+ case 0x30: errno=EMEDIUMTYPE; break; \ -+ case 0x3A: errno=ENOMEDIUM; break; \ -+ } \ -+} while(0) -+#include -+#include -+ -+#include -+#include -+ -+K3bCdDevice::ScsiCommand::ScsiCommand( const K3bCdDevice::CdDevice* dev ) -+ : closecam(true), m_device(dev) -+{ -+ cam = cam_open_pass (m_device->m_passDevice.latin1(),O_RDWR,NULL); -+ kdDebug() << "(K3bCdDevice::ScsiCommand) open device " << m_device->m_passDevice << ((cam)?" succeeded.":" failed.") << endl; -+ clear(); -+} -+ -+K3bCdDevice::ScsiCommand::ScsiCommand( const K3bCdDevice::CdDevice* dev, struct cam_device * c) -+ : closecam(false), cam(c), m_device(dev) -+{ -+ clear(); -+} -+ -+K3bCdDevice::ScsiCommand::~ScsiCommand() -+{ -+ if(cam && closecam) -+ { -+ cam_close_device(cam); -+ kdDebug() << "(K3bCdDevice::ScsiCommand) device " << m_device->m_passDevice << " closed." << endl; -+ } -+} -+ -+ -+void K3bCdDevice::ScsiCommand::clear() -+{ -+ memset (&ccb,0,sizeof(ccb)); -+ if (!cam) -+ return; -+ ccb.ccb_h.path_id = cam->path_id; -+ ccb.ccb_h.target_id = cam->target_id; -+ ccb.ccb_h.target_lun = cam->target_lun; -+} -+ -+unsigned char& K3bCdDevice::ScsiCommand::operator[]( size_t i ) -+{ -+ ccb.csio.cdb_len = i+1; -+ return ccb.csio.cdb_io.cdb_bytes[i]; -+} -+ -+ -+int K3bCdDevice::ScsiCommand::transport( TransportDirection dir, -+ void* data, -+ size_t len ) -+{ -+ if (!cam) -+ return -1; -+ kdDebug() << "(K3bCdDevice::ScsiCommand) transport command " << QString::number((int)ccb.csio.cdb_io.cdb_bytes[0], 16) << ", length: " << (int)ccb.csio.cdb_len << endl; -+ int ret=0; -+ unsigned char command = ccb.csio.cdb_io.cdb_bytes[0]; -+ int direction = CAM_DEV_QFRZDIS; -+ if (!len) -+ direction |= CAM_DIR_NONE; -+ else -+ direction |= (dir & TR_DIR_READ)?CAM_DIR_IN : CAM_DIR_OUT; -+ cam_fill_csio (&(ccb.csio), 1, NULL, direction | CAM_DEV_QFRZDIS, MSG_SIMPLE_Q_TAG, (u_int8_t *)data, len, sizeof(ccb.csio.sense_data), ccb.csio.cdb_len, 30*1000); -+ unsigned char * sense = (unsigned char *)&ccb.csio.sense_data; -+ if ((ret = cam_send_ccb(cam, &ccb)) < 0) -+ { -+ kdDebug() << "(K3bCdDevice::ScsiCommand) transport failed: " << ret << endl; -+ goto dump_error; -+ } -+ if ((ccb.ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_CMP) -+ return 0; -+ -+ errno = EIO; -+ // FreeBSD 5-CURRENT since 2003-08-24, including 5.2 fails to -+ // pull sense data automatically, at least for ATAPI transport, -+ // so I reach for it myself... -+ if ((ccb.csio.scsi_status==SCSI_STATUS_CHECK_COND) && -+ !(ccb.ccb_h.status&CAM_AUTOSNS_VALID)) -+ { -+ u_int8_t _sense[18]; -+ u_int32_t resid=ccb.csio.resid; -+ -+ memset(_sense,0,sizeof(_sense)); -+ -+ operator[](0) = 0x03; // REQUEST SENSE -+ ccb.csio.cdb_io.cdb_bytes[4] = sizeof(_sense); -+ ccb.csio.cdb_len = 6; -+ ccb.csio.ccb_h.flags |= CAM_DIR_IN|CAM_DIS_AUTOSENSE; -+ ccb.csio.data_ptr = _sense; -+ ccb.csio.dxfer_len = sizeof(_sense); -+ ccb.csio.sense_len = 0; -+ ret = cam_send_ccb(cam, &ccb); -+ -+ ccb.csio.resid = resid; -+ if (ret<0) -+ { -+ kdDebug() << "(K3bCdDevice::ScsiCommand) transport failed (2): " << ret << endl; -+ ret = -1; -+ goto dump_error; -+ } -+ if ((ccb.ccb_h.status&CAM_STATUS_MASK) != CAM_REQ_CMP) -+ { -+ kdDebug() << "(K3bCdDevice::ScsiCommand) transport failed (3): " << ret << endl; -+ errno=EIO,-1; -+ ret = -1; -+ goto dump_error; -+ } -+ -+ memcpy(sense,_sense,sizeof(_sense)); -+ } -+ -+ ret = ERRCODE(sense); -+ kdDebug() << "(K3bCdDevice::ScsiCommand) transport failed (4): " << ret << endl; -+ if (ret == 0) -+ ret = -1; -+ else -+ CREAM_ON_ERRNO(((unsigned char *)&ccb.csio.sense_data)); -+dump_error: -+ kdDebug() << "(K3bCdDevice::ScsiCommand) failed: " << endl -+ << " command: " << QString("%1 (%2)") -+ .arg( MMC::commandString( ccb.csio.cdb_io.cdb_bytes[0] ) ) -+ .arg( QString::number(ccb.csio.cdb_io.cdb_bytes[0], 16) ) << endl -+ << " errorcode: " << QString::number(((struct scsi_sense_data *)sense)->error_code & SSD_ERRCODE, 16) << endl -+ << " sense key: " << senseKeyToString(((struct scsi_sense_data *)sense)->flags & SSD_KEY) << endl -+ << " asc: " << QString::number(((struct scsi_sense_data *)sense)->add_sense_code, 16) << endl -+ << " ascq: " << QString::number(((struct scsi_sense_data *)sense)->add_sense_code_qual, 16) << endl; -+ -+ return ret; -+} -+#endif - - QString K3bCdDevice::MMC::commandString( const unsigned char& command ) - { diff -ruN k3b.orig/files/patch-src-device-k3bscsicommand.h k3b/files/patch-src-device-k3bscsicommand.h --- k3b.orig/files/patch-src-device-k3bscsicommand.h Mon Jan 10 16:06:00 2005 +++ k3b/files/patch-src-device-k3bscsicommand.h Thu Jan 1 01:00:00 1970 @@ -1,57 +0,0 @@ ---- src/device/k3bscsicommand.h.orig Wed Jan 21 11:20:11 2004 -+++ src/device/k3bscsicommand.h Sun Jan 2 09:30:08 2005 -@@ -17,9 +17,27 @@ - #define _K3B_SCSI_COMMAND_H_ - - #include -+#ifndef __FreeBSD__ - #undef __STRICT_ANSI__ - #include - #define __STRICT_ANSI__ -+#else -+#include -+#include -+#include -+#undef INQUIRY -+#undef READ_10 -+#undef READ_12 -+#undef READ_BUFFER -+#undef READ_CAPACITY -+#undef REQUEST_SENSE -+#undef START_STOP_UNIT -+#undef SYNCHRONIZE_CACHE -+#undef TEST_UNIT_READY -+#undef WRITE_10 -+#undef WRITE_12 -+#undef WRITE_BUFFER -+#endif - - - #include -@@ -96,7 +114,7 @@ - class ScsiCommand - { - public: -- ScsiCommand( int fd ); -+// ScsiCommand( int fd ); - ScsiCommand( const CdDevice* ); - ~ScsiCommand(); - -@@ -109,10 +127,16 @@ - size_t len = 0 ); - - private: -+#ifndef __FreeBSD__ - struct cdrom_generic_command m_cmd; - struct request_sense m_sense; -- -+#else -+ ScsiCommand( const CdDevice* , struct cam_device *); -+ bool closecam; -+ struct cam_device *cam; -+ union ccb ccb; - int m_fd; -+#endif - const CdDevice* m_device; - bool m_needToCloseDevice; - }; diff -ruN k3b.orig/files/patch-src-rip-k3baudioprojectconvertingthread.cpp k3b/files/patch-src-rip-k3baudioprojectconvertingthread.cpp --- k3b.orig/files/patch-src-rip-k3baudioprojectconvertingthread.cpp Thu Jan 1 01:00:00 1970 +++ k3b/files/patch-src-rip-k3baudioprojectconvertingthread.cpp Sun Jul 10 01:00:26 2005 @@ -0,0 +1,11 @@ +--- src/rip/k3baudioprojectconvertingthread.cpp.orig Sun Jul 10 00:18:23 2005 ++++ src/rip/k3baudioprojectconvertingthread.cpp Sun Jul 10 00:18:50 2005 +@@ -373,7 +373,7 @@ + + // we always use a relative filename here + QString imageFile = m_tracks[0].second.section( '/', -1 ); +- cueWriter.setImage( imageFile, ( d->fileType.isEmpty() ? "WAVE" : d->fileType ) ); ++ cueWriter.setImage( imageFile, ( d->fileType.isEmpty() ? QString("WAVE") : d->fileType ) ); + + // use the same base name as the image file + QString cueFile = m_tracks[0].second; diff -ruN k3b.orig/files/patch-src-rip-k3baudioripthread.cpp k3b/files/patch-src-rip-k3baudioripthread.cpp --- k3b.orig/files/patch-src-rip-k3baudioripthread.cpp Thu Jan 1 01:00:00 1970 +++ k3b/files/patch-src-rip-k3baudioripthread.cpp Sun Jul 10 01:00:26 2005 @@ -0,0 +1,11 @@ +--- src/rip/k3baudioripthread.cpp.orig Sun Jul 10 00:14:21 2005 ++++ src/rip/k3baudioripthread.cpp Sun Jul 10 00:15:00 2005 +@@ -536,7 +536,7 @@ + + // we always use a relative filename here + QString imageFile = m_tracks[0].second.section( '/', -1 ); +- cueWriter.setImage( imageFile, ( d->fileType.isEmpty() ? "WAVE" : d->fileType ) ); ++ cueWriter.setImage( imageFile, ( d->fileType.isEmpty() ? QString("WAVE") : d->fileType ) ); + + // use the same base name as the image file + QString cueFile = m_tracks[0].second; diff -ruN k3b.orig/files/patch-src-rip-k3bdvdrippingprocess.cpp k3b/files/patch-src-rip-k3bdvdrippingprocess.cpp --- k3b.orig/files/patch-src-rip-k3bdvdrippingprocess.cpp Mon Jan 10 16:06:00 2005 +++ k3b/files/patch-src-rip-k3bdvdrippingprocess.cpp Thu Jan 1 01:00:00 1970 @@ -1,16 +0,0 @@ ---- src/rip/k3bdvdrippingprocess.cpp.orig Wed Jun 2 11:31:41 2004 -+++ src/rip/k3bdvdrippingprocess.cpp Sun Jan 2 09:30:08 2005 -@@ -285,10 +285,13 @@ - void K3bDvdRippingProcess::slotPreProcessingDvd() { - QString video; - QDir video_ts( m_mountPoint + "/VIDEO_TS"); -+#ifndef FreeBSD -+// on FreeBSD both /VIDEO_TS and /video_ts exist on dvd devices ?!? - if( video_ts.exists() ) { - m_udfMount = true; - kdDebug() << "(K3bDvdRippingProcess) <" << m_mountPoint << "> has UDF filesystem." << endl; - } -+#endif - video_ts.setPath( m_mountPoint + "/video_ts"); - if( !video_ts.exists() && !m_udfMount){ - m_preProcessingFailed = true; diff -ruN k3b.orig/files/patch-src-rip-k3bmovieview.cpp k3b/files/patch-src-rip-k3bmovieview.cpp --- k3b.orig/files/patch-src-rip-k3bmovieview.cpp Mon Jan 10 16:06:00 2005 +++ k3b/files/patch-src-rip-k3bmovieview.cpp Thu Jan 1 01:00:00 1970 @@ -1,14 +0,0 @@ ---- src/rip/k3bmovieview.cpp.orig Fri Feb 6 12:08:51 2004 -+++ src/rip/k3bmovieview.cpp Sun Jan 2 09:30:08 2005 -@@ -223,8 +223,11 @@ - } - - QWidget::show(); -+ if (longestTitle) -+ { - longestTitle->parent()->setOpen( true ); - m_listView->setSelected( longestTitle, true ); -+ } - } else { - // error during parsing - emit notSupportedDisc( m_device->devicename() ); diff -ruN k3b.orig/files/patch-src-rip-k3btcwrapper.cpp k3b/files/patch-src-rip-k3btcwrapper.cpp --- k3b.orig/files/patch-src-rip-k3btcwrapper.cpp Mon Jan 10 16:06:00 2005 +++ k3b/files/patch-src-rip-k3btcwrapper.cpp Thu Jan 1 01:00:00 1970 @@ -1,24 +0,0 @@ ---- src/rip/k3btcwrapper.cpp.orig Wed Jan 21 11:20:20 2004 -+++ src/rip/k3btcwrapper.cpp Sun Jan 2 09:30:08 2005 -@@ -65,7 +65,12 @@ - //K3bProcess *p = new K3bProcess(); - emit tcprobeTitleParsed( m_currentTitle ); - -+#ifndef __FreeBSD__ - *p << bin->path << "-i" << m_device->blockDeviceName() << "-T" << QString::number(m_currentTitle); -+#else -+ kdDebug() << "(K3bTcWrapper) executing: " << bin->path << " -i " << m_device->mountPoint() << " -T " << QString::number(m_currentTitle) << endl; -+ *p << bin->path << "-i" << m_device->mountPoint() << "-T" << QString::number(m_currentTitle); -+#endif - //p->setSplitStdout( true ); - connect( p, SIGNAL(receivedStderr(KProcess*, char*, int)), this, SLOT(slotParseTcprobeError(KProcess*, char*, int)) ); - connect( p, SIGNAL(receivedStdout(KProcess*, char*, int)), this, SLOT(slotParseTcprobeOutput(KProcess*, char*, int)) ); -@@ -77,7 +82,7 @@ - if( !p->start( KProcess::NotifyOnExit, KProcess::AllOutput ) ) { - // something went wrong when starting the program - // it "should" be the executable -- kdDebug() << "(K3bDirView) Error during checking drive for DVD." << endl; -+ kdDebug() << "(K3bTcWrapper) Error during checking drive for DVD." << endl; - } - } - diff -ruN k3b.orig/files/patch-src-rip-k3bvideocdrip.cpp k3b/files/patch-src-rip-k3bvideocdrip.cpp --- k3b.orig/files/patch-src-rip-k3bvideocdrip.cpp Mon Jan 10 16:06:00 2005 +++ k3b/files/patch-src-rip-k3bvideocdrip.cpp Thu Jan 1 01:00:00 1970 @@ -1,12 +0,0 @@ ---- src/rip/k3bvideocdrip.cpp.orig Wed Jan 21 11:20:20 2004 -+++ src/rip/k3bvideocdrip.cpp Sun Jan 2 09:30:08 2005 -@@ -41,7 +41,8 @@ - m_ripsourceType( 0 ), - m_videooptions( options ), - m_canceled( false ), -- m_process( 0 ) -+ m_process( 0 ), -+ m_subPosition( 0 ) - {} - - diff -ruN k3b.orig/pkg-plist k3b/pkg-plist --- k3b.orig/pkg-plist Fri May 27 16:42:51 2005 +++ k3b/pkg-plist Tue Jul 12 08:54:23 2005 @@ -1,21 +1,34 @@ bin/k3b +include/k3baudiocdtrackdrag.h +include/k3baudiocdtracksource.h +include/k3baudiocuefilewritingjob.h +include/k3baudiodatasource.h +include/k3baudiodatasourceiterator.h include/k3baudiodecoder.h include/k3baudiodoc.h include/k3baudioencoder.h +include/k3baudiofile.h include/k3baudiojob.h -include/k3baudioview.h +include/k3baudiooutputplugin.h +include/k3baudiotrack.h +include/k3baudiozerodata.h +include/k3bbinimagewritingjob.h include/k3bblankingjob.h include/k3bbootitem.h -include/k3bburnprogressdialog.h include/k3bbusywidget.h +include/k3bcdcopyjob.h include/k3bcdparanoialib.h +include/k3bcdrdaowriter.h +include/k3bcdrecordwriter.h include/k3bcdtext.h +include/k3bcdtextvalidator.h +include/k3bclonejob.h include/k3bcore.h +include/k3bcuefileparser.h include/k3bcutcombobox.h include/k3bdatadoc.h include/k3bdataitem.h include/k3bdatajob.h -include/k3bdataview.h include/k3bdefaultexternalprograms.h include/k3bdevice.h include/k3bdevicecombobox.h @@ -23,35 +36,36 @@ include/k3bdevicehandler.h include/k3bdevicemanager.h include/k3bdeviceselectiondialog.h +include/k3bdevicetypes.h include/k3bdiritem.h include/k3bdiskinfo.h include/k3bdoc.h +include/k3bdvdcopyjob.h include/k3bdvddoc.h include/k3bdvdformattingjob.h include/k3bdvdjob.h -include/k3bdvdview.h -include/k3bemptydiscwaiter.h +include/k3bexceptions.h include/k3bexternalbinmanager.h include/k3bfileitem.h include/k3bglobals.h -include/k3binteractiondialog.h +include/k3bglobalsettings.h +include/k3bgrowisofswriter.h +include/k3binffilewriter.h include/k3bintvalidator.h include/k3biso9660.h +include/k3biso9660imagewritingjob.h include/k3bisooptions.h include/k3bjob.h -include/k3bjobprogressdialog.h include/k3blistview.h +include/k3blistviewitemanimator.h include/k3bmd5job.h include/k3bmixeddoc.h include/k3bmixedjob.h -include/k3bmixedview.h include/k3bmovixdoc.h include/k3bmovixdvddoc.h include/k3bmovixdvdjob.h -include/k3bmovixdvdview.h include/k3bmovixfileitem.h include/k3bmovixjob.h -include/k3bmovixview.h include/k3bmsf.h include/k3bmsfedit.h include/k3bmultichoicedialog.h @@ -60,32 +74,47 @@ include/k3bpluginfactory.h include/k3bpluginmanager.h include/k3bprocess.h -include/k3bprojectmanager.h +include/k3bprogressdialog.h +include/k3bprojectplugin.h +include/k3bpushbutton.h +include/k3bradioaction.h +include/k3bsignalwaiter.h +include/k3bsimplejob.h include/k3bstdguiitems.h include/k3bstringutils.h include/k3bthread.h include/k3bthreadjob.h +include/k3bthreadwidget.h include/k3bthroughputestimator.h include/k3btoc.h +include/k3btocfilewriter.h +include/k3btoolbox.h include/k3btrack.h include/k3bvalidators.h include/k3bvcddoc.h include/k3bvcdjob.h include/k3bvcdoptions.h -include/k3bvcdview.h include/k3bversion.h include/k3bvideodvddoc.h include/k3bvideodvdjob.h -include/k3bview.h include/k3bwavefilewriter.h -include/k3bwriterselectionwidget.h include/kcutlabel.h +lib/kde3/libk3bartsoutputplugin.la +lib/kde3/libk3bartsoutputplugin.so lib/kde3/libk3bexternalencoder.la lib/kde3/libk3bexternalencoder.so -lib/kde3/libk3bflacdecoder.la -lib/kde3/libk3bflacdecoder.so +%%FFMPEG%%lib/kde3/libk3bffmpegdecoder.la +%%FFMPEG%%lib/kde3/libk3bffmpegdecoder.so +%%FLAC%%lib/kde3/libk3bflacdecoder.la +%%FLAC%%lib/kde3/libk3bflacdecoder.so +%%LAME%%lib/kde3/libk3blameencoder.la +%%LAME%%lib/kde3/libk3blameencoder.so +%%SNDFILE%%lib/kde3/libk3blibsndfiledecoder.la +%%SNDFILE%%lib/kde3/libk3blibsndfiledecoder.so lib/kde3/libk3bmaddecoder.la lib/kde3/libk3bmaddecoder.so +%%MPC%%lib/kde3/libk3bmpcdecoder.la +%%MPC%%lib/kde3/libk3bmpcdecoder.so lib/kde3/libk3boggvorbisdecoder.la lib/kde3/libk3boggvorbisdecoder.so lib/kde3/libk3boggvorbisencoder.la @@ -94,26 +123,19 @@ lib/kde3/libk3bsoxencoder.so lib/kde3/libk3bwavedecoder.la lib/kde3/libk3bwavedecoder.so +lib/libk3b.la +lib/libk3b.so +lib/libk3b.so.1 lib/libk3baudiometainforenamerplugin.la lib/libk3baudiometainforenamerplugin.so -lib/libk3bcore.la -lib/libk3bcore.so -lib/libk3bcore.so.2 +lib/libk3baudioprojectcddbplugin.la +lib/libk3baudioprojectcddbplugin.so lib/libk3bdevice.la lib/libk3bdevice.so lib/libk3bdevice.so.2 -lib/libk3bplugin.la -lib/libk3bplugin.so -lib/libk3bplugin.so.2 -lib/libk3bproject.la -lib/libk3bproject.so -lib/libk3bproject.so.2 -lib/libk3btools.la -lib/libk3btools.so -lib/libk3btools.so.2 +share/applications/kde/k3b.desktop share/applnk/.hidden/k3b-cue.desktop share/applnk/.hidden/k3b-iso.desktop -share/applnk/Multimedia/k3b.desktop share/apps/k3b/cdi/cdi_imag.rtf share/apps/k3b/cdi/cdi_text.fnt share/apps/k3b/cdi/cdi_vcd.app @@ -121,6 +143,8 @@ share/apps/k3b/cdi/icdia.htm share/apps/k3b/cdi/vcd_on_cdi_41.pdf share/apps/k3b/eventsrc +share/apps/k3b/extra/k3bphotosvcd.mpg +share/apps/k3b/extra/k3bphotovcd.mpg share/apps/k3b/icons/crystalsvg/16x16/actions/cdburn.png share/apps/k3b/icons/crystalsvg/16x16/actions/cdinfo.png share/apps/k3b/icons/crystalsvg/16x16/actions/cdrwblank.png @@ -133,47 +157,57 @@ share/apps/k3b/icons/crystalsvg/22x22/actions/cdrwblank.png share/apps/k3b/icons/crystalsvg/32x32/actions/cdburn.png share/apps/k3b/icons/crystalsvg/32x32/actions/cdcopy.png +share/apps/k3b/icons/hicolor/16x16/actions/musicbrainz.png +share/apps/k3b/icons/hicolor/64x64/actions/musicbrainz.png share/apps/k3b/k3bui.rc -share/apps/k3b/kpartplugins/k3baudiometainforenamerplugin.rc -share/apps/k3b/pics/73lab/diskinfo_audio.png -share/apps/k3b/pics/73lab/diskinfo_data.png -share/apps/k3b/pics/73lab/diskinfo_dvd.png -share/apps/k3b/pics/73lab/diskinfo_empty.png -share/apps/k3b/pics/73lab/diskinfo_left.png -share/apps/k3b/pics/73lab/diskinfo_mixed.png -share/apps/k3b/pics/73lab/diskinfo_right.png +share/apps/k3b/pics/73lab/dialog_left.png +share/apps/k3b/pics/73lab/dialog_right.png share/apps/k3b/pics/73lab/k3b.theme -share/apps/k3b/pics/73lab/k3b_3d_logo.png -share/apps/k3b/pics/73lab/k3b_cd_copy.png -share/apps/k3b/pics/73lab/k3b_probing_cd.png -share/apps/k3b/pics/73lab/k3b_progress_dialog_failed.png -share/apps/k3b/pics/73lab/k3b_progress_dialog_success.png -share/apps/k3b/pics/73lab/k3b_splash.png -share/apps/k3b/pics/73lab/k3bprojectview_left.png -share/apps/k3b/pics/73lab/k3bprojectview_left_short.png -share/apps/k3b/pics/73lab/k3bprojectview_right.png -share/apps/k3b/pics/73lab/k3bsetup2_guy.png -share/apps/k3b/pics/crystal/diskinfo_audio.png -share/apps/k3b/pics/crystal/diskinfo_data.png -share/apps/k3b/pics/crystal/diskinfo_dvd.png -share/apps/k3b/pics/crystal/diskinfo_empty.png -share/apps/k3b/pics/crystal/diskinfo_left.png -share/apps/k3b/pics/crystal/diskinfo_mixed.png -share/apps/k3b/pics/crystal/diskinfo_right.png +share/apps/k3b/pics/73lab/media_audio.png +share/apps/k3b/pics/73lab/media_data.png +share/apps/k3b/pics/73lab/media_empty.png +share/apps/k3b/pics/73lab/media_left.png +share/apps/k3b/pics/73lab/media_mixed.png +share/apps/k3b/pics/73lab/media_none.png +share/apps/k3b/pics/73lab/media_video.png +share/apps/k3b/pics/73lab/probing.png +share/apps/k3b/pics/73lab/progress_fail.png +share/apps/k3b/pics/73lab/progress_right.png +share/apps/k3b/pics/73lab/progress_success.png +share/apps/k3b/pics/73lab/progress_working.png +share/apps/k3b/pics/73lab/project_left.png +share/apps/k3b/pics/73lab/project_right.png +share/apps/k3b/pics/73lab/splash.png +share/apps/k3b/pics/73lab/welcome_bg.png +share/apps/k3b/pics/crystal/dialog_left.png +share/apps/k3b/pics/crystal/dialog_right.png share/apps/k3b/pics/crystal/k3b.theme -share/apps/k3b/pics/crystal/k3b_3d_logo.png -share/apps/k3b/pics/crystal/k3b_cd_copy.png -share/apps/k3b/pics/crystal/k3b_probing_cd.png -share/apps/k3b/pics/crystal/k3b_progress_dialog_failed.png -share/apps/k3b/pics/crystal/k3b_progress_dialog_success.png -share/apps/k3b/pics/crystal/k3b_splash.png -share/apps/k3b/pics/crystal/k3bprojectview_left.png -share/apps/k3b/pics/crystal/k3bprojectview_left_short.png -share/apps/k3b/pics/crystal/k3bprojectview_right.png -share/apps/k3b/pics/crystal/k3bsetup2_guy.png +share/apps/k3b/pics/crystal/media_audio.png +share/apps/k3b/pics/crystal/media_data.png +share/apps/k3b/pics/crystal/media_empty.png +share/apps/k3b/pics/crystal/media_left.png +share/apps/k3b/pics/crystal/media_mixed.png +share/apps/k3b/pics/crystal/media_none.png +share/apps/k3b/pics/crystal/media_video.png +share/apps/k3b/pics/crystal/probing.png +share/apps/k3b/pics/crystal/progress_fail.png +share/apps/k3b/pics/crystal/progress_right.png +share/apps/k3b/pics/crystal/progress_success.png +share/apps/k3b/pics/crystal/progress_working.png +share/apps/k3b/pics/crystal/project_left.png +share/apps/k3b/pics/crystal/project_right.png +share/apps/k3b/pics/crystal/splash.png +share/apps/k3b/pics/crystal/welcome_bg.png +share/apps/k3b/plugins/k3bartsoutputplugin.plugin +share/apps/k3b/plugins/k3baudiometainforenamerplugin.plugin +share/apps/k3b/plugins/k3baudioprojectcddbplugin.plugin share/apps/k3b/plugins/k3bexternalencoder.plugin -share/apps/k3b/plugins/k3bflacdecoder.plugin +%%FFMPEG%%share/apps/k3b/plugins/k3bffmpegdecoder.plugin +%%FLAC%%share/apps/k3b/plugins/k3bflacdecoder.plugin +%%LAME%%share/apps/k3b/plugins/k3blameencoder.plugin +%%SNDFILE%%share/apps/k3b/plugins/k3blibsndfiledecoder.plugin share/apps/k3b/plugins/k3bmaddecoder.plugin +%%MPC%%share/apps/k3b/plugins/k3bmpcdecoder.plugin share/apps/k3b/plugins/k3boggvorbisdecoder.plugin share/apps/k3b/plugins/k3boggvorbisencoder.plugin share/apps/k3b/plugins/k3bsoxencoder.plugin @@ -202,12 +236,9 @@ share/doc/HTML/en/k3b/select_audiofiles.png share/doc/HTML/en/k3b/select_project.png share/doc/HTML/en/k3b/video-encoding.docbook -share/icons/crystalsvg/128x128/apps/k3b.png -share/icons/crystalsvg/16x16/apps/k3b.png -share/icons/crystalsvg/32x32/apps/k3b.png -share/icons/crystalsvg/48x48/apps/k3b.png -share/icons/crystalsvg/64x64/apps/k3b.png +share/icons/hicolor/128x128/apps/k3b.png share/icons/hicolor/16x16/apps/k3b.png +share/icons/hicolor/22x22/apps/k3b.png share/icons/hicolor/32x32/apps/k3b.png share/icons/hicolor/48x48/apps/k3b.png share/icons/hicolor/64x64/apps/k3b.png @@ -215,12 +246,15 @@ share/sounds/k3b_error1.wav share/sounds/k3b_success1.wav share/sounds/k3b_wait_media1.wav -@dirrm share/doc/HTML/en/k3b @dirrm share/apps/k3b/plugins @dirrm share/apps/k3b/pics/crystal @dirrm share/apps/k3b/pics/73lab @dirrm share/apps/k3b/pics -@dirrm share/apps/k3b/kpartplugins +@dirrm share/apps/k3b/icons/hicolor/64x64/actions +@dirrm share/apps/k3b/icons/hicolor/64x64 +@dirrm share/apps/k3b/icons/hicolor/16x16/actions +@dirrm share/apps/k3b/icons/hicolor/16x16 +@dirrm share/apps/k3b/icons/hicolor @dirrm share/apps/k3b/icons/crystalsvg/32x32/actions @dirrm share/apps/k3b/icons/crystalsvg/32x32 @dirrm share/apps/k3b/icons/crystalsvg/22x22/actions @@ -229,5 +263,6 @@ @dirrm share/apps/k3b/icons/crystalsvg/16x16 @dirrm share/apps/k3b/icons/crystalsvg @dirrm share/apps/k3b/icons +@dirrm share/apps/k3b/extra @dirrm share/apps/k3b/cdi @dirrm share/apps/k3b