On Tue, 8 Oct 2002, Takashi Iwai wrote:
> At Fri, 4 Oct 2002 13:20:32 -0400 (EDT),
> Pavel Roskin wrote:
> >
> > Hello!
> >
> > There is another configuration problem that needs to be fixed. I had ALSA
> > already installed (CVS version as of a week ago or so). Today I compiled
> > alsa-driver, alsa-lib and alsa-util and then started installing them.
> >
> > I found that "make install" caused recompilation in alsa-lib. It used to
> > be like that, but this time I wanted to do it right.
> >
> > I found that the reason for recompilation is new files in
> > /usr/include/sound/, in particular asoundef.h. It turmed out that there
> > are two different files with this name - one is
> > alsa-lib/include/asoundef.h, the other is alsa-kernel/include/asoundef.h.
> >
> > Object files under alsa-lib were compiled against headers in
> > /usr/include/sound/, and "make install" in alsa-kernel installed new
> > headers there. The dependency was recorded by the compiler, so the
> > alsa-lib object files became out of date.
> >
> > It seems to me that there are at least two things wrong here. First is
> > that the kernel should not be installing its headers in places where they
> > can be accidentally used. Most software should not need those headers at
> > all.
> >
> > For example, Linux kernel includes are available under linux and asm in
> > /usr/include. When I'm using them, I'm well aware of the fact that it's
> > essentially a private kernel interface and that I should avoid it if
> > possible.
>
> well, not all people are aware of that inclusion of kernel headers
> will break portability ;)
>
> > If I include <sound/asoundef.h>, I would assume that it's something for
> > user-space software, not for kernel drivers. Maybe kernel headers should
> > be installed under /usr/include/sound/kernel if we install them at all?
>
> sound header files are not necessary except for alsa-lib and hardware
> specific applications like alsa-tools' ones.
> i think /usr/include/sound is confusing. it looks like normal header
> files...
>
>
> > The other problem is that alsa-lib should be using its own headers from
> > its own distribution rather than the preinstalled ones, otherwise we have
> > a whole new problem with compiling against an older library.
>
> right.
>
> actually i use the extracted alsa-kernel header files to build
> alsa-lib rpm package, too, so why not in the alsa-lib tree itself?
>
> we need only three files from alsa-kernel, namely, asound.h,
> asoundef.h and asequencer.h. they can be copied into alsa-lib tree,
> for example, under alsa-lib/include/alsa-kernel directory, which will
> be not copied to the public place.
>
> or, we can keep the alsa-kernel header files on
> /usr/include/alsa/kernel directory, so that we don't need two distinct
> directories which may confuse people. (even in this case, the three
> files above should be duplicated in alsa-lib, though.)
>
>
> Jaroslav, how about this?
The duplication of headers does not sound so bad.
The /usr/include/alsa/kernel is a good place.
Do not forget to include all headers files (or portions) which can be
used from user space (emu10k1.h, sscape_ioctl.h, sb16_csp.h, asound_fm.h,
probably all ainstr_* files etc.).
Jaroslav
-----
Jaroslav Kysela <[EMAIL PROTECTED]>
Linux Kernel Sound Maintainer
ALSA Project http://www.alsa-project.org
SuSE Linux http://www.suse.com
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel