Control: tags -1 + patch

The following patch should get the package building again:

Description: Fix build problems with newer Xorg and compiler.
 Ensure correct method and variable declaration to avoid fatal
 compiler warnings.
Author: Petter Reinholdtsen <p...@debian.org>
Forwarded: no
Last-Update: 2025-03-01
---
Index: xserver-xorg-video-ivtvdev-salsa/src/ivtv.c
===================================================================
--- xserver-xorg-video-ivtvdev-salsa.orig/src/ivtv.c    2025-03-01 
08:38:08.000000000 +0000
+++ xserver-xorg-video-ivtvdev-salsa/src/ivtv.c 2025-03-01 08:39:21.550211876 
+0000
@@ -314,7 +314,7 @@
     int i;
     GDevPtr *devSections;
     int numDevSections;
-    char *dev;
+    const char *dev;
     Bool foundScreen = FALSE;
     int *usedChips;
     int numUsed;
Index: xserver-xorg-video-ivtvdev-salsa/src/ivtv_hw.c
===================================================================
--- xserver-xorg-video-ivtvdev-salsa.orig/src/ivtv_hw.c 2025-03-01 
08:38:08.000000000 +0000
+++ xserver-xorg-video-ivtvdev-salsa/src/ivtv_hw.c      2025-03-01 
08:39:14.554137292 +0000
@@ -168,12 +168,12 @@
 /* open correct framebuffer device                                      */
 
 static int
-ivtv_open(int scrnIndex, char *dev, char **namep, IVTVDevPtr devPtr)
+ivtv_open(int scrnIndex, const char *dev, char **namep, IVTVDevPtr devPtr)
 {
     struct fb_fix_screeninfo fix;
     int fbufId = 255;
     int yuvId;
-    char *devid;
+    const char *devid;
     int fd;
 
     /* try argument (from XF86Config) first */
@@ -211,7 +211,7 @@
     if (fd == -1 || devPtr == NULL)
        return fd;
 
-    devid = dev + 7;
+    devid = &dev[7];
 
     if (*devid == '/')
        devid++;
@@ -340,9 +340,9 @@
 
 Bool
 #if XSERVER_LIBPCIACCESS
-ivtvHWProbe(struct pci_device *PciInfo, char *device, char **namep)
+ivtvHWProbe(struct pci_device *PciInfo, const char *device, char **namep)
 #else
-ivtvHWProbe(pciVideoPtr pPci, char *device, char **namep)
+ivtvHWProbe(pciVideoPtr pPci, const char *device, char **namep)
 #endif
 {
     int fd;
@@ -372,9 +372,9 @@
 
 Bool
 #if XSERVER_LIBPCIACCESS
-ivtvHWInit(ScrnInfoPtr pScrn, struct pci_device *PciInfo, char *device)
+ivtvHWInit(ScrnInfoPtr pScrn, struct pci_device *PciInfo, const char *device)
 #else
-ivtvHWInit(ScrnInfoPtr pScrn, pciVideoPtr pPci, char *device)
+ivtvHWInit(ScrnInfoPtr pScrn, pciVideoPtr pPci, const char *device)
 #endif
 {
     TRACE_ENTER("Init");
@@ -464,7 +464,7 @@
     int virtX = pScrn->display->virtualX;
     int virtY = pScrn->display->virtualY;
     struct fb_var_screeninfo var;
-    char **modename;
+    const char **modename;
     DisplayModePtr mode, this, last = NULL;
 
     TRACE_ENTER("VerifyModes");
@@ -688,10 +688,9 @@
 /* -------------------------------------------------------------------- */
 /* these can be hooked directly into ScrnInfoRec                        */
 
-int
-ivtvHWValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int flags)
+ModeStatus
+ivtvHWValidMode(ScrnInfoPtr pScrn, DisplayModePtr mode, Bool verbose, int 
flags)
 {
-    ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
     IVTVDevPtr devPtr = IVTVDEVPTR(pScrn);
     struct fb_var_screeninfo var;
 
@@ -701,7 +700,7 @@
     xfree2ivtv_fblayout(pScrn, &devPtr->var);
     var.activate = FB_ACTIVATE_TEST;
     if (0 != ioctl(devPtr->fd, FBIOPUT_VSCREENINFO, (void *)(&devPtr->var))) {
-       xf86DrvMsg(scrnIndex, X_ERROR,
+       xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
            "ValidMode: FBIOPUT_VSCREENINFO failed (%s)\n", strerror(errno));
        return MODE_BAD;
     }
Index: xserver-xorg-video-ivtvdev-salsa/src/ivtv_hw.h
===================================================================
--- xserver-xorg-video-ivtvdev-salsa.orig/src/ivtv_hw.h 2025-03-01 
08:38:08.000000000 +0000
+++ xserver-xorg-video-ivtvdev-salsa/src/ivtv_hw.h      2025-03-01 
08:39:53.102548048 +0000
@@ -61,11 +61,11 @@
 #endif
 
 #if XSERVER_LIBPCIACCESS
-Bool ivtvHWProbe(struct pci_device *PciInfo, char *device, char **namep);
-Bool ivtvHWInit(ScrnInfoPtr pScrn, struct pci_device *PciInfo, char *device);
+Bool ivtvHWProbe(struct pci_device *PciInfo, const char *device, char **namep);
+Bool ivtvHWInit(ScrnInfoPtr pScrn, struct pci_device *PciInfo, const char 
*device);
 #else
 Bool ivtvHWProbe(pciVideoPtr pPci, char *device, char **namep);
-Bool ivtvHWInit(ScrnInfoPtr pScrn, pciVideoPtr pPci, char *device);
+Bool ivtvHWInit(ScrnInfoPtr pScrn, pciVideoPtr pPci, const char *device);
 #endif
 char *ivtvHWGetName(ScrnInfoPtr pScrn);
 int ivtvHWGetDepth(ScrnInfoPtr pScrn, int *fbbpp);
@@ -86,7 +86,7 @@
 void ivtvHWRestore(ScrnInfoPtr pScrn);
 void ivtvHWLoadPalette(ScrnInfoPtr pScrn, int numColors, int *indices,
     LOCO * colors, VisualPtr pVisual);
-int ivtvHWValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int 
flags);
+ModeStatus ivtvHWValidMode(ScrnInfoPtr pScrn, DisplayModePtr mode, Bool 
verbose, int flags);
 Bool ivtvHWSwitchMode(SWITCH_MODE_ARGS_DECL);
 void ivtvHWAdjustFrame(ADJUST_FRAME_ARGS_DECL);
 Bool ivtvHWEnterVT(VT_FUNC_ARGS_DECL);

--
Happy hacking
Petter Reinholdtsen

Reply via email to