Re: Re: [REBUILD] dssi-0.9.1-3mdk.src.rpm from cooker does not build correctly on x86_64

Pedro Lopez-Cabanillas <[email protected]> Sun, 7 May 2006 14:03:12 +0200
Newsgroups gmane.linux.mandrake.cooker.amd64
Message-ID <[email protected]>
On Sunday, 7 May 2006 10:14, Thomas Backlund wrote:
> A *-devel package should _never_ be a Requires, only BuildRequires...

Are you sure? I can't find this rule written anywere. It doesn't have any 
sense to me, either. The dssi-devel package provides a c-language header  
file, which in turn includes the ladspa header (provided by ladspa-devel). I 
have little experience as a packager, though. Perhaps I'm wrong.

Anybody wanting to use the dssi.h header to develop (or compile) a  plug-in 
needs to have installed the ladspa.h header in order to be able to do it. It 
seems sensible to reflect this dependency in the RPM package.

I can show you some other examples of Mandriva (main) packages, where a -devel 
package is required by another -devel package. I've even made a little script 
to find them:

[~]$ cat searchreq.sh
#!/bin/bash
CNT=0
for PKG in $(rpm -qa|grep "\-devel"); do
    DLIST=""
    for DP in $(rpm -q --requires $PKG); do
        echo $DP|grep -q "\-devel"
        if [ $? == 0 ]; then
           DLIST="$DLIST $DP"
        fi
    done
    if [ "x" != "x$DLIST" ]; then
        let CNT++
        echo "Package: $PKG"
        for DP in $DLIST; do
            echo -e "\trequires: $DP"
        done
    fi
done
echo "$CNT packages found"
[~]$                            

Running the script against a Mandriva 2006.0 RPM database, it shows many 
examples. Here are only a few ones:

Package: libpng3-devel-1.2.8-1mdk
        requires: zlib-devel
http://cvs.mandriva.com/cgi-bin/cvsweb.cgi/SPECS/libpng/

Package: libqt3-devel-3.3.4-23mdk
        requires: XFree86-devel
http://cvs.mandriva.com/cgi-bin/cvsweb.cgi/SPECS/qt3/

Package: libgtkmm2.4_1-devel-2.6.1-1mdk
        requires: gtk+2-devel
        requires: glibmm2.4-devel
http://cvs.mandriva.com/cgi-bin/cvsweb.cgi/SPECS/gtkmm2.4/

> Have you tried to build it this way?
> Does it work?

In my Mandriva 2006.0 systems (an amd64 and a 32-bits one) I have no problems 
to build the dssi package and the dssi plugins (hexter, fluidsynth-dssi, 
xsynth-dssi), because I have all the required software already installed. The 
problem comes from Iurt and the Cooker build system environment, which I 
don't know very well. Please, help!

Let me explain why I'm complicating my life with this matter, and perhaps I 
could awake your solidarity. I'm a musician and a developer, contributing to 
some Linux audio applications. Among others, my beloved Rosegarden. Sometimes 
I use to show a demo of Linux/Rosegarden/audio apps to other musician 
fellows, using Mandriva. I'm also a Mandriva user and supporter. That's the 
point why I'm here, at this list. It is a common question after the demo, 
that my friends ask me if I can recommend Mandriva as a platform for  
Rosegarden. I must answer *not*, because Mandriva doesn't include neither  
DSSI nor plugins, and provides a Rosegarden binary package compiled without  
DSSI support. I would like to help to fill the gap.

DSSI is a plug-in specification and architecture for soft-musical instruments, 
something like the VSTi specification from Steinberg in the proprietary 
world, but free as in freedom. It is complementary to the LADSPA  
specification, which is a plug-in architecture for audio effects, equivalent 
to VST. Some applications using DSSI now are Rosegarden and Om. Support is in  
development for MusE and others.

Regards,
Pedro