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

Bug#333217: discover1: ftbfs [sparc] error: too few arguments to function 'init_lst'



On Tue, Oct 11, 2005 at 11:42:09AM +0200, Gaudenz Steinlin wrote:
> On Tue, Oct 11, 2005 at 11:20:27AM +0200, Gaudenz Steinlin wrote:
> > Hi
> > 
> > On Mon, Oct 10, 2005 at 01:37:50PM -0700, Blars Blarson wrote:
> > > Package: discover1
> > > Version: 1.7.14
> > > Severity: serious
> > > Justification: no longer builds from source
> > > 
> > > 
> > > discover1 failed to build on a sparc buildd, duplicated on my sparc pbuilder.
> > 
> > Do you have a clue why this does not build on sparc while it builds on
> > every other arch? I just checked on my i386 box and it still builds
> > there.
> 
> Just after sending this mail I found the problem myself, ARGH.
> It's because only sparc has defined USE_SBUS and this changes the
> argument list of init_lst. I'm preparing a fix now. 

Please try the attached patch and see if the generated binary works. 

Gaudenz

-- 
Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better.
~ Samuel Beckett ~
Index: lib/paths.h.in
===================================================================
--- lib/paths.h.in	(Revision 974)
+++ lib/paths.h.in	(Arbeitskopie)
@@ -12,5 +12,6 @@
 char *path_usb_lst_arch[] = { "/etc/discover/usb", "@libdir@/discover/usb", "@datadir@/discover/usb", (char *)0 };
 char *path_sbus_lst[] = { "/etc/discover/sbus.lst", "@libdir@/discover/sbus.lst", "@datadir@/discover/sbus.lst", (char *)0 };
 char *path_sbus_lst_26[] = { "/etc/discover/sbus-26.lst", "@libdir@/discover/sbus-26.lst", "@datadir@/discover/sbus-26.lst", (char *)0 };
+char *path_sbus_lst_arch[] = { "/etc/discover/sbus", "@libdir@/discover/sbus", "@datadir@/discover/sbus", (char *)0 };
 
 #endif
Index: discover/discover.c
===================================================================
--- discover/discover.c	(Revision 974)
+++ discover/discover.c	(Arbeitskopie)
@@ -274,7 +274,13 @@
     add_arch_to_paths(path_pcmcia_lst_arch);
     add_arch_to_paths(path_usb_lst_arch);
 
+#ifdef USE_SBUS
+    /* TODO: break init_lst into init_lst_$bus, sbus arch specific 
+       lists do not really make sense. */
+    lst_arch = init_lst(path_pci_lst_arch, path_pcmcia_lst_arch, path_usb_lst_arch, path_sbus_lst_arch);
+#else
     lst_arch = init_lst(path_pci_lst_arch, path_pcmcia_lst_arch, path_usb_lst_arch);
+#endif
     lst = prepend_lst(lst_arch, lst);
 
     /* There's no way to limit the bus scan done by bus_detect(),

Reply to: