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

Bug#265597: Bug#264403: rpvm: FTBFS m68k: /usr/lib/pvm3/conf/LINUXR68R.def: No such file or directory



On Tue, Aug 17, 2004 at 01:54:34AM -0600, Christian T. Steigies wrote:
> > I'm mystified too. Builds fine on i386, not sure anybody ever tried it
> > anywhere else ...
> 
> It seems to fail on most arches wit a similar problem:

Yes (see below).

> ** libs
> make[1]: Entering directory /build/buildd/rpvm-0.6.2/src'
> Makevars:3: /usr/lib/pvm3/conf/LINUXRRR.def: No such file or directory
> make[1]: *** No rule to make target /usr/lib/pvm3/conf/LINUXRRR.def'.  Stop.
> 
> http://buildd.debian.org/build.php?arch=&pkg=rpvm
>  
> > > BTW, for both this and the other rpvm-related bug: I'm quite new as PVM
> > > maintainer; I hijacked the package some time ago and fixed the worst bugs,
> > > but it rarely gives me problems so I'm not really into all the packaging
> > > details yet :-)
> > > 
> > > >> Try to guess if pvm is installed somewhere ...
> > > >> Found pvm: /usr/lib/pvm3 
> > > >> PVM_ROOT is /usr/lib/pvm3
> > > >> PVM_ARCH is LINUXR68R
> > > 
> > > This seems rather odd... 
> 
> I would say you have an overflow of "R"'s in your code... they kill
> everything but the numbers.

Yes (see below).

> > > What does "/usr/lib/pvm3/lib/pvmgetarch" return?
> > > How about "uname -m"?
> 
> On woody:
> Setting up libpvm3 (3.4.2-8) ...
> 
> Setting up pvm (3.4.2-8) ...
> 
> Setting up pvm-dev (3.4.2-8) ...
> 
> buildd@aahz:~>uname -m
> m68k
> buildd@aahz:~>/usr/lib/pvm3/lib/pvmgetarch
> LINUXM68K
> 
> On unstable:
> Setting up libpvm3 (3.4.2-11) ...
> 
> Setting up pvm (3.4.2-11) ...
> 
> Setting up pvm-dev (3.4.2-11) ...
> root@aahz:/# uname -m
> m68k
> root@aahz:/# /usr/lib/pvm3/lib/pvmgetarch
> LINUXM68K
> 
> Where R the RRRs???

That really is the problem. And I still think the two FTBFS, which I merged
and which Steinar unmerged, are the same and should be merged again.  

Witness the following:

1.  rpvm has a very simple and standard structure confirming to the layout 
    of the over 400 R packages. In particular, in rpvm-0.6.2/src/, the
    following -- and really simple -- Makevars.in is included:
    
       edd@chibud:~/src/debian/CRAN/rpvm-0.6.2/src> cat Makevars.in
       # -*- Makefile -*-  vim : ft = make
    
       include @PVM_ROOT@/conf/@PVM_ARCH@.def
    
       # PVM library and header files
       PKG_CPPFLAGS = @PKG_CPPFLAGS@ -I$(PVM_ROOT)/include
       PKK_CFLAGS   = $(ARCHCFLAGS)
       PKG_LIBS     = @PKG_LIBS@ $(ARCHLIB)
       edd@chibud:~/src/debian/CRAN/rpvm-0.6.2/src>

2.  Notice how it wants @PVM_ARCH@.def.  The pvm-dev package in testing 
    ships these:
    
       edd@chibud:~/src/debian/CRAN/rpvm-0.6.2/src> ls /usr/lib/pvm3/conf/*def 
       /usr/lib/pvm3/conf/LINUX.def	   /usr/lib/pvm3/conf/LINUXM68K.def
       /usr/lib/pvm3/conf/LINUXALPHA.def   /usr/lib/pvm3/conf/LINUXMIPS.def 
       /usr/lib/pvm3/conf/LINUXAMD64.def   /usr/lib/pvm3/conf/LINUXPPC.def 
       /usr/lib/pvm3/conf/LINUXARM.def     /usr/lib/pvm3/conf/LINUXS390.def 
       /usr/lib/pvm3/conf/LINUXHPPA.def    /usr/lib/pvm3/conf/LINUXSPARC.def 
       /usr/lib/pvm3/conf/LINUXIA64.def       
       edd@chibud:~/src/debian/CRAN/rpvm-0.6.2/src>
    
    Should be fine for all of us, you'd think.
    
3.  Now, configure.in and configure determine @PVM_ARCH@ in a very simple
    way:
    
       if test -z "${PVM_ARCH}"; then
           PVM_ARCH=${PVM_ROOT}/lib/pvmgetarch
fi
       fi	

    I.e., if unset, the output of pvmgetarch is used [ and PVM_ROOT is set
    to /usr/lib/pvm3 if that directory exists -- explicit Debian test ]
    
4.  This brings us back to Christian's comment above.  It looks like (cf. 
    http://buildd.debian.org/build.php?pkg=rpvm ) that 6 out of 7 autobuild
    attempt failed, and they all seem to have this problem (here using sparc):
    
       Try to guess if pvm is installed somewhere ...
       Found pvm: /usr/lib/pvm3 
       PVM_ROOT is /usr/lib/pvm3
       PVM_ARCH is LINUXRRRRR
       [...]
       make[1]: Entering directory /build/buildd/rpvm-0.6.2/src'
       Makevars:3: /usr/lib/pvm3/conf/LINUXRRRRR.def: No such file or directory
       make[1]: *** No rule to make target /usr/lib/pvm3/conf/LINUXRRRRR.def'.  Stop.
       
    Similarly on ia64
    
       Try to guess if pvm is installed somewhere ...
       Found pvm: /usr/lib/pvm3 
       PVM_ROOT is /usr/lib/pvm3
       PVM_ARCH is LINUXRR64
       [...]	    
       make[1]: Entering directory /build/buildd/rpvm-0.6.2/src'
       Makevars:3: /usr/lib/pvm3/conf/LINUXRR64.def: No such file or directory
       make[1]: *** No rule to make target /usr/lib/pvm3/conf/LINUXRR64.def'.        Stop.
 
5.  Now, R uses the _exact_ same debian/rules files for about 40 packages in
    the archive. I have used it on another 400 auto-generated packages I 
    have included in Quantian 0.5.9.3.
    
    I don't see why rpvm would need anything special. I also don't
    understand how the shell script pvmgetarch can get so confused.
    That said, for Linux it does the following:
    
            os="/bin/uname -s"
	    ht="/bin/uname -m"
	    ov="/bin/uname -v"
	    [...]					 
       
            case "$os,$ht" in
	    [...]
            Linux,i[3456]86 )       ARCH=LINUX ;;
            Linux,sparc64 )         ARCH=LINUXSPARC ;;
	    Linux,parisc* )         ARCH=LINUXHPPA ;;
	    Linux,arm* )            ARCH=LINUXARM ;;
	    Linux,x86_64* )         ARCH=LINUXAMD64 ;;
	    Linux,* )               ARCH=LINUX`uname -m | tr [a-z] [A-Z]` ;;
	    [...]
	    
6.  From this we note 

    a) that arm -- which built successfully -- is covered
       whereas none of the failed arches is (ia64, hppa, s390, powerpc,
       mipsel, sparc),  and
       
    b) that the little tr(1) call may not be the most robust thing on Earth.
    
7.  So the question is: how to we fix this?  The best place, I'd say, is 
    pvmgetarch.

8.  I am not seeing anything obvious.  Any takers?


Thanks for reading this far,  Dirk
    


-- 
Those are my principles, and if you don't like them... well, I have others.
                                                -- Groucho Marx



Reply to: