pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/sysutils/k3b Rework how device locking/ejecting is don...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/4ea40b292ad8
branches:  trunk
changeset: 514496:4ea40b292ad8
user:      markd <markd%pkgsrc.org@localhost>
date:      Tue Jun 13 12:36:16 2006 +0000

description:
Rework how device locking/ejecting is done.  Bump PKGREVISION.

diffstat:

 sysutils/k3b/Makefile         |    3 +-
 sysutils/k3b/distinfo         |    9 +--
 sysutils/k3b/patches/patch-ab |  104 +++++++++++++++++++++++++++--------------
 sysutils/k3b/patches/patch-af |   57 ++---------------------
 sysutils/k3b/patches/patch-am |   14 -----
 sysutils/k3b/patches/patch-an |   40 ----------------
 sysutils/k3b/patches/patch-ao |   40 ----------------
 7 files changed, 79 insertions(+), 188 deletions(-)

diffs (truncated from 379 to 300 lines):

diff -r 5d9a3d1a71b5 -r 4ea40b292ad8 sysutils/k3b/Makefile
--- a/sysutils/k3b/Makefile     Tue Jun 13 12:28:09 2006 +0000
+++ b/sysutils/k3b/Makefile     Tue Jun 13 12:36:16 2006 +0000
@@ -1,7 +1,8 @@
-# $NetBSD: Makefile,v 1.7 2006/04/28 01:47:19 markd Exp $
+# $NetBSD: Makefile,v 1.8 2006/06/13 12:36:16 markd Exp $
 #
 
 DISTNAME=              k3b-0.12.15
+PKGREVISION=           1
 CATEGORIES=            sysutils
 MASTER_SITES=          ${MASTER_SITE_SOURCEFORGE:=k3b/}
 EXTRACT_SUFX=          .tar.bz2
diff -r 5d9a3d1a71b5 -r 4ea40b292ad8 sysutils/k3b/distinfo
--- a/sysutils/k3b/distinfo     Tue Jun 13 12:28:09 2006 +0000
+++ b/sysutils/k3b/distinfo     Tue Jun 13 12:36:16 2006 +0000
@@ -1,20 +1,17 @@
-$NetBSD: distinfo,v 1.4 2006/04/28 01:47:20 markd Exp $
+$NetBSD: distinfo,v 1.5 2006/06/13 12:36:16 markd Exp $
 
 SHA1 (k3b-0.12.15.tar.bz2) = 4f2768f6473032fbf6cde2d13b1c2729b7e91e3f
 RMD160 (k3b-0.12.15.tar.bz2) = 9d0ff14b394153d97ef61fcf7b46894ec5d3d511
 Size (k3b-0.12.15.tar.bz2) = 4000389 bytes
 SHA1 (patch-aa) = 700a7081dfb16fe47558b025519415d12aa2031d
-SHA1 (patch-ab) = acf80a5fb55fd236282754b6dda1743eb9790593
+SHA1 (patch-ab) = adf633c8ea5b2da95a6c69a2c5abedfd69b79109
 SHA1 (patch-ac) = 3b65ca0ea8e585ce68611c0332a3851a107b68f7
 SHA1 (patch-ad) = 8e111ef2a75595261f95eb533459560f01b6fae7
 SHA1 (patch-ae) = eb0ac8518ae813027aa09961344c0ab1966d4601
-SHA1 (patch-af) = 58c924ed24897d65f04839638cd96f6b4bf51aac
+SHA1 (patch-af) = 672150438329827bf89768bfdac9c5a613f02647
 SHA1 (patch-ag) = c89d4310c31ecd991f782cac2fe4927d25a75215
 SHA1 (patch-ah) = 7e8822880873b3f7149a73f0d119fb52098114ff
 SHA1 (patch-ai) = cecb17457caf5bd2039b83eaf6d3e4824f5a2055
 SHA1 (patch-aj) = ebb452a3790b0cf228e3b272490bd9d6cb4c6479
 SHA1 (patch-ak) = 572915dc31f09b6c8c917749524e2042822966c8
 SHA1 (patch-al) = bcc69d3b5b68fad1c46989344b1fb622e7ec6ad4
-SHA1 (patch-am) = de11dbcf76ca29b303dcbc8ac3f19fd4ce8ee661
-SHA1 (patch-an) = 8329615e98f2b08292de9a6f7e875f76fcb8f3a9
-SHA1 (patch-ao) = 3e641c7020937ed2da591cd94a89a39341fd5f91
diff -r 5d9a3d1a71b5 -r 4ea40b292ad8 sysutils/k3b/patches/patch-ab
--- a/sysutils/k3b/patches/patch-ab     Tue Jun 13 12:28:09 2006 +0000
+++ b/sysutils/k3b/patches/patch-ab     Tue Jun 13 12:36:16 2006 +0000
@@ -1,14 +1,14 @@
-$NetBSD: patch-ab,v 1.1.1.1 2006/02/01 00:53:00 markd Exp $
+$NetBSD: patch-ab,v 1.2 2006/06/13 12:36:16 markd Exp $
 
---- libk3bdevice/k3bdevice.cpp.orig    2005-12-16 02:08:38.000000000 +1300
+--- libk3bdevice/k3bdevice.cpp.orig    2006-04-12 05:26:45.000000000 +1200
 +++ libk3bdevice/k3bdevice.cpp
 @@ -63,6 +63,10 @@ typedef unsigned char u8;
  #define CD_FRAMESIZE_RAW 2352
  #endif
  
-+// #ifdef Q_OS_NETBSD
-+// #include <sys/scsiio.h>
-+// #endif
++#ifdef Q_OS_NETBSD
++#include <sys/cdio.h>
++#endif
 +
  #ifdef HAVE_RESMGR
  extern "C" {
@@ -42,52 +42,86 @@
  #ifdef Q_OS_FREEBSD
    struct cam_device *cam;
  #endif
-@@ -1466,15 +1482,7 @@ bool K3bDevice::Device::fixupToc( K3bDev
+@@ -1465,6 +1475,19 @@ bool K3bDevice::Device::fixupToc( K3bDev
+ 
  bool K3bDevice::Device::block( bool b ) const
  {
++#ifdef Q_OS_NETBSD
++  bool success = false;
++  bool needToClose = !isOpen();
++  int arg = b ? 1 : 0;
++
++  if( open() ) {
++    if ( ::ioctl( d->deviceFd, DIOCLOCK, &arg ) >= 0)
++      success = true;
++    if( needToClose )
++      close();
++  }
++  return success;
++#else
    ScsiCommand cmd( this );
--  cmd[0] = MMC_PREVENT_ALLOW_MEDIUM_REMOVAL;
--  if( b )
--    cmd[4] = 0x01;
--  int r = cmd.transport();
--
--  if( r )
--    kdDebug() << "(K3bDevice::Device) MMC ALLOW MEDIA REMOVAL failed." << endl;
--
--  return ( r == 0 );
-+  return cmd.traylock( b );
+   cmd[0] = MMC_PREVENT_ALLOW_MEDIUM_REMOVAL;
+   if( b )
+@@ -1475,6 +1498,7 @@ bool K3bDevice::Device::block( bool b ) 
+     kdDebug() << "(K3bDevice::Device) MMC ALLOW MEDIA REMOVAL failed." << endl;
+ 
+   return ( r == 0 );
++#endif
  }
  
  bool K3bDevice::Device::rewritable() const
-@@ -1497,25 +1505,14 @@ bool K3bDevice::Device::rewritable() con
+@@ -1496,6 +1520,19 @@ bool K3bDevice::Device::rewritable() con
+ 
  bool K3bDevice::Device::eject() const
  {
++#ifdef Q_OS_NETBSD
++  bool success = false;
++  bool needToClose = !isOpen();
++  int arg = 0;
++
++  if( open() ) {
++    if ( ::ioctl( d->deviceFd, DIOCEJECT, &arg ) >= 0)
++      success = true;
++    if( needToClose )
++      close();
++  }
++  return success;
++#else
    ScsiCommand cmd( this );
--  cmd[0] = MMC_START_STOP_UNIT;
--
--  // Since all other eject methods I saw also start the unit before ejecting
--  // we do it also although I don't know why...
--  cmd[4] = 0x1;      // Start unit
--  cmd.transport();
--
--  cmd[4] = 0x2;    // LoEj = 1, Start = 0
--
--  return !cmd.transport();
-+  return cmd.eject( true );
+   cmd[0] = MMC_START_STOP_UNIT;
+ 
+@@ -1507,15 +1544,30 @@ bool K3bDevice::Device::eject() const
+   cmd[4] = 0x2;    // LoEj = 1, Start = 0
+ 
+   return !cmd.transport();
++#endif
  }
  
  
  bool K3bDevice::Device::load() const
  {
++#ifdef Q_OS_NETBSD
++  bool success = false;
++  bool needToClose = !isOpen();
++  int arg = 0;
++
++  if( open() ) {
++    if ( ::ioctl( d->deviceFd, CDIOCCLOSE, &arg ) >= 0)
++      success = true;
++    if( needToClose )
++      close();
++  }
++  return success;
++#else
    ScsiCommand cmd( this );
--  cmd[0] = MMC_START_STOP_UNIT;
--  cmd[4] = 0x3;    // LoEj = 1, Start = 1
--  return !cmd.transport();
-+  return !cmd.eject( false );
+   cmd[0] = MMC_START_STOP_UNIT;
+   cmd[4] = 0x3;    // LoEj = 1, Start = 1
+   return !cmd.transport();
++#endif
  }
  
  
-@@ -1557,7 +1554,7 @@ bool K3bDevice::Device::open( bool write
+@@ -1557,7 +1609,7 @@ bool K3bDevice::Device::open( bool write
    }
    return (d->cam != 0);
  #endif
@@ -96,7 +130,7 @@
    if( d->deviceFd == -1 )
      d->deviceFd = openDevice( QFile::encodeName(devicename()), write );
  
-@@ -1574,7 +1571,7 @@ void K3bDevice::Device::close() const
+@@ -1574,7 +1626,7 @@ void K3bDevice::Device::close() const
      d->cam = 0;
    }
  #endif
@@ -105,7 +139,7 @@
    if( d->deviceFd != -1 ) {
      ::close( d->deviceFd );
      d->deviceFd = -1;
-@@ -1588,7 +1585,7 @@ bool K3bDevice::Device::isOpen() const
+@@ -1588,7 +1640,7 @@ bool K3bDevice::Device::isOpen() const
  #ifdef Q_OS_FREEBSD
    return d->cam;
  #endif
diff -r 5d9a3d1a71b5 -r 4ea40b292ad8 sysutils/k3b/patches/patch-af
--- a/sysutils/k3b/patches/patch-af     Tue Jun 13 12:28:09 2006 +0000
+++ b/sysutils/k3b/patches/patch-af     Tue Jun 13 12:36:16 2006 +0000
@@ -1,8 +1,8 @@
-$NetBSD: patch-af,v 1.1.1.1 2006/02/01 00:53:00 markd Exp $
+$NetBSD: patch-af,v 1.2 2006/06/13 12:36:16 markd Exp $
 
 --- /dev/null  2006-01-31 00:47:43.000000000 +1300
-+++ libk3bdevice/k3bscsicommand_netbsd.cpp     2006-01-31 00:08:25.000000000 +1300
-@@ -0,0 +1,136 @@
++++ libk3bdevice/k3bscsicommand_netbsd.cpp
+@@ -0,0 +1,89 @@
 +/*
 + *
 + */
@@ -14,8 +14,8 @@
 +
 +#include <sys/ioctl.h>
 +#include <sys/scsiio.h>
-+#include <sys/cdio.h>
-+#include <sys/dkio.h>
++// #include <sys/cdio.h>
++// #include <sys/dkio.h>
 +
 +#include <unistd.h>
 +#include <sys/types.h>
@@ -92,50 +92,3 @@
 +  else
 +    return 0;
 +}
-+
-+bool K3bDevice::ScsiCommand::eject ( bool open )
-+{
-+  unsigned long request = open ? DIOCEJECT : CDIOCCLOSE;
-+  int arg = 0;
-+  bool needToClose = false;
-+  if( m_device ) {
-+    if( !m_device->isOpen() ) {
-+      needToClose = true;
-+    }
-+    m_device->open( false );
-+    m_deviceHandle = m_device->handle();
-+  }
-+
-+  if( m_deviceHandle == -1 )
-+    return false;
-+
-+  int i = ::ioctl( m_deviceHandle, request, &arg );
-+
-+  if( needToClose )
-+    m_device->close();
-+
-+  return i >= 0;
-+}
-+
-+bool K3bDevice::ScsiCommand::traylock ( bool on )
-+{
-+  int arg = on ? 1 : 0;
-+  bool needToClose = false;
-+  if( m_device ) {
-+    if( !m_device->isOpen() ) {
-+      needToClose = true;
-+    }
-+    m_device->open( false );
-+    m_deviceHandle = m_device->handle();
-+  }
-+
-+  if( m_deviceHandle == -1 )
-+    return false;
-+
-+  int i = ::ioctl( m_deviceHandle, DIOCLOCK, &arg );
-+
-+  if( needToClose )
-+    m_device->close();
-+
-+  return i >= 0;
-+}
diff -r 5d9a3d1a71b5 -r 4ea40b292ad8 sysutils/k3b/patches/patch-am
--- a/sysutils/k3b/patches/patch-am     Tue Jun 13 12:28:09 2006 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-$NetBSD: patch-am,v 1.1.1.1 2006/02/01 00:53:00 markd Exp $
-
---- libk3bdevice/k3bscsicommand.h.orig 2005-12-16 02:08:38.000000000 +1300
-+++ libk3bdevice/k3bscsicommand.h
-@@ -108,6 +108,9 @@ namespace K3bDevice
-                    void* = 0,
-                    size_t len = 0 );
- 
-+      bool eject ( bool open );
-+      bool traylock ( bool on );
-+
-     private:
-       static QString senseKeyToString( int key );
-       void debugError( int command, int errorCode, int senseKey, int asc, int ascq );
diff -r 5d9a3d1a71b5 -r 4ea40b292ad8 sysutils/k3b/patches/patch-an
--- a/sysutils/k3b/patches/patch-an     Tue Jun 13 12:28:09 2006 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-$NetBSD: patch-an,v 1.1.1.1 2006/02/01 00:53:00 markd Exp $
-
---- libk3bdevice/k3bscsicommand_bsd.cpp.orig   2005-12-16 02:08:38.000000000 +1300
-+++ libk3bdevice/k3bscsicommand_bsd.cpp
-@@ -190,3 +190,35 @@ int K3bDevice::ScsiCommand::transport( T



Home | Main Index | Thread Index | Old Index