[alsa-devel] Building Takashi's sound-2.6.git?
I'd like to use/develop-against/patch the ALSA drivers from:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git
... since I think they're the most up-to-date with patches?
However, that's a complete kernel tree rather than the subset that's available in snapshots at:
ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/alsa/alsa-driver/
I figured I could just grab the above git, and also:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/alsa-driver-build.git
... to build just the ALSA driver modules. However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
http://git.alsa-project.org/?p=alsa-driver.git;a=summary
Can somebody give me a clue? Thanks very much.
(I guess I could just build the entire kernel, but that's a lot more time than just the audio modules)
On Thu, 19 Aug 2010, Stephen Warren wrote:
I'd like to use/develop-against/patch the ALSA drivers from:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git
... since I think they're the most up-to-date with patches?
However, that's a complete kernel tree rather than the subset that's available in snapshots at:
ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/alsa/alsa-driver/
I figured I could just grab the above git, and also:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/alsa-driver-build.git
... to build just the ALSA driver modules. However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
http://git.alsa-project.org/?p=alsa-driver.git;a=summary
Can somebody give me a clue? Thanks very much.
(I guess I could just build the entire kernel, but that's a lot more time than just the audio modules)
You may just create this tree from git repos (do not mix the sources):
alsa/alsa-driver (the alsa-driver.git tree from git.alsa-project.org or Takashi's tree from git.kernel.org) alsa/alsa-kernel (the alsa-kernel.git tree from git.alsa-project.org or Takashi's tree from git.kernel.org)
and do:
cd alsa/alsa-driver ./gitcompile
The script should automatically detect the linux-2.6 tree and do the out-of-kernel compilation.
Jaroslav
----- Jaroslav Kysela perex@perex.cz Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc.
2010/8/20 Jaroslav Kysela perex@perex.cz
On Thu, 19 Aug 2010, Stephen Warren wrote:
I'd like to use/develop-against/patch the ALSA drivers from:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git
... since I think they're the most up-to-date with patches?
However, that's a complete kernel tree rather than the subset that's available in snapshots at:
ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/alsa/alsa-driver/
I figured I could just grab the above git, and also:
git://
git.kernel.org/pub/scm/linux/kernel/git/tiwai/alsa-driver-build.git
... to build just the ALSA driver modules. However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
http://git.alsa-project.org/?p=alsa-driver.git;a=summary
Can somebody give me a clue? Thanks very much.
(I guess I could just build the entire kernel, but that's a lot more time than just the audio modules)
You may just create this tree from git repos (do not mix the sources):
alsa/alsa-driver (the alsa-driver.git tree from git.alsa-project.org or Takashi's tree from git.kernel.org) alsa/alsa-kernel (the alsa-kernel.git tree from git.alsa-project.org or Takashi's tree from git.kernel.org)
and do:
cd alsa/alsa-driver ./gitcompile
The script should automatically detect the linux-2.6 tree and do the out-of-kernel compilation.
Jaroslav
The alsa-driver-1.0.23 or latest daily snapshot cannot be build on Fedora 13 on 32 bits machine , but it can be build in Mandriva 2010.1 or Fedora 10
https://bugzilla.redhat.com/show_bug.cgi?id=588350
it does not warn user about need redhat-lsb in Fedora 13
Makefile:535: /usr/src/kernels/2.6.xx.fc13.i686/arch//Makefile: No such file or directory
is there any fix ?
At Thu, 19 Aug 2010 15:04:03 -0700, Stephen Warren wrote:
I'd like to use/develop-against/patch the ALSA drivers from:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git
... since I think they're the most up-to-date with patches?
However, that's a complete kernel tree rather than the subset that's available in snapshots at:
ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/alsa/alsa-driver/
I figured I could just grab the above git, and also:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/alsa-driver-build.git
... to build just the ALSA driver modules. However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
http://git.alsa-project.org/?p=alsa-driver.git;a=summary
Can somebody give me a clue? Thanks very much.
See alsa-driver/INSTALL, "Compilation from Linux kernel tree" section. In short, run utils/setup-alsa-kernel $YOUR_SOUND_GIT_TREE_APATH then gitcompile can be used.
Takashi
On Fri, 20 Aug 2010, Takashi Iwai wrote:
At Thu, 19 Aug 2010 15:04:03 -0700, Stephen Warren wrote:
I'd like to use/develop-against/patch the ALSA drivers from:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git
... since I think they're the most up-to-date with patches?
However, that's a complete kernel tree rather than the subset that's available in snapshots at:
ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/alsa/alsa-driver/
I figured I could just grab the above git, and also:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/alsa-driver-build.git
... to build just the ALSA driver modules. However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
http://git.alsa-project.org/?p=alsa-driver.git;a=summary
Can somebody give me a clue? Thanks very much.
See alsa-driver/INSTALL, "Compilation from Linux kernel tree" section. In short, run utils/setup-alsa-kernel $YOUR_SOUND_GIT_TREE_APATH then gitcompile can be used.
It's not required. The alsa-driver/Makefile handles both alsa-kmirror and alsa-kernel trees now.
Does anyone use the 'copy' mode of the setup-alsa-kernel script?
Jaroslav
----- Jaroslav Kysela perex@perex.cz Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc.
At Fri, 20 Aug 2010 17:33:58 +0200 (CEST), Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Takashi Iwai wrote:
At Thu, 19 Aug 2010 15:04:03 -0700, Stephen Warren wrote:
I'd like to use/develop-against/patch the ALSA drivers from:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git
... since I think they're the most up-to-date with patches?
However, that's a complete kernel tree rather than the subset that's available in snapshots at:
ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/alsa/alsa-driver/
I figured I could just grab the above git, and also:
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/alsa-driver-build.git
... to build just the ALSA driver modules. However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
http://git.alsa-project.org/?p=alsa-driver.git;a=summary
Can somebody give me a clue? Thanks very much.
See alsa-driver/INSTALL, "Compilation from Linux kernel tree" section. In short, run utils/setup-alsa-kernel $YOUR_SOUND_GIT_TREE_APATH then gitcompile can be used.
It's not required. The alsa-driver/Makefile handles both alsa-kmirror and alsa-kernel trees now.
Does anyone use the 'copy' mode of the setup-alsa-kernel script?
I do.
Takashi
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Takashi Iwai wrote:
At Thu, 19 Aug 2010 15:04:03 -0700, Stephen Warren wrote:
I'd like to use/develop-against/patch the ALSA drivers from: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git ... ... However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
See alsa-driver/INSTALL, "Compilation from Linux kernel tree" section. In short, run utils/setup-alsa-kernel $YOUR_SOUND_GIT_TREE_APATH then gitcompile can be used.
It's not required. The alsa-driver/Makefile handles both alsa-kmirror and alsa-kernel trees now.
When I check out Takashi's sound-2.6 tree, am I suppose to explicitly specify the checkout directory so that it's named alsa-kmirror now instead of sound-2.6; the git-compile script doesn't check for the name sound-2.6. Should the following be updated to search for more names:
test -z $ALSAKERNELDIR && ALSAKERNELDIR=../alsa-kmirror
... or is it assumed people will always set ALSAKERNELDIR?
Back to my original question: I did see the documentation regarding utils/setup-alsa-kernel that Takashi mentioned. However, I was put off trying that because it says:
If you have the linux kernel tree containing the corresponding ALSA kernel codes (the version must match)
and I assumed that meant the version of the kernel source tree that setup-alsa-kernel was to be used against must match the kernel version actually being run, whereas I wanted to keep my old distro kernel and build the ALSA drivers from a much later kernel.
However, that doesn't seem to be the case; I grabbed Takashi's latest sound-2.6 and build against Ubuntu Karmic's 2.6.31-22-generic just fine. In the text I quoted, does it instead mean that the kernel source tree and alsa-driver-build checkouts must match. If so, I can whip up a patch to make that a little clearer to me at least!
Thanks very much for the help.
At Fri, 20 Aug 2010 09:05:01 -0700, Stephen Warren wrote:
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Takashi Iwai wrote:
At Thu, 19 Aug 2010 15:04:03 -0700, Stephen Warren wrote:
I'd like to use/develop-against/patch the ALSA drivers from: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git ... ... However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
See alsa-driver/INSTALL, "Compilation from Linux kernel tree" section. In short, run utils/setup-alsa-kernel $YOUR_SOUND_GIT_TREE_APATH then gitcompile can be used.
It's not required. The alsa-driver/Makefile handles both alsa-kmirror and alsa-kernel trees now.
When I check out Takashi's sound-2.6 tree, am I suppose to explicitly specify the checkout directory so that it's named alsa-kmirror now instead of sound-2.6; the git-compile script doesn't check for the name sound-2.6. Should the following be updated to search for more names:
test -z $ALSAKERNELDIR && ALSAKERNELDIR=../alsa-kmirror
... or is it assumed people will always set ALSAKERNELDIR?
Back to my original question: I did see the documentation regarding utils/setup-alsa-kernel that Takashi mentioned. However, I was put off trying that because it says:
If you have the linux kernel tree containing the corresponding ALSA kernel codes (the version must match)
and I assumed that meant the version of the kernel source tree that setup-alsa-kernel was to be used against must match the kernel version actually being run, whereas I wanted to keep my old distro kernel and build the ALSA drivers from a much later kernel.
However, that doesn't seem to be the case; I grabbed Takashi's latest sound-2.6 and build against Ubuntu Karmic's 2.6.31-22-generic just fine. In the text I quoted, does it instead mean that the kernel source tree and alsa-driver-build checkouts must match. If so, I can whip up a patch to make that a little clearer to me at least!
Well, the term "version" seems confusing indeed. In this case, it means the ALSA versions between alsa-driver-build tree and the kernel (sound.git) tree, not about the kernel version. There is no synchronization mechanism between them, and alsa-driver patches fail sometime due to changes in the kernel side.
So, if you'll compile alsa-driver externally from sound git tree, just use the latest alsa-driver-build git tree, too.
Takashi
On Fri, 20 Aug 2010, Stephen Warren wrote:
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Takashi Iwai wrote:
At Thu, 19 Aug 2010 15:04:03 -0700, Stephen Warren wrote:
I'd like to use/develop-against/patch the ALSA drivers from: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git ... ... However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
See alsa-driver/INSTALL, "Compilation from Linux kernel tree" section. In short, run utils/setup-alsa-kernel $YOUR_SOUND_GIT_TREE_APATH then gitcompile can be used.
It's not required. The alsa-driver/Makefile handles both alsa-kmirror and alsa-kernel trees now.
When I check out Takashi's sound-2.6 tree, am I suppose to explicitly specify the checkout directory so that it's named alsa-kmirror now instead of sound-2.6; the git-compile script doesn't check for the name sound-2.6. Should the following be updated to search for more names:
test -z $ALSAKERNELDIR && ALSAKERNELDIR=../alsa-kmirror
If you like, send a patch to gitcompile to check for sound-2.6 directory as well. I'm using different naming (alsa-kernel), so the gitcompile script checks for alsa-kernel and alsa-kmirror trees.
Jaroslav
----- Jaroslav Kysela perex@perex.cz Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc.
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Stephen Warren wrote:
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Takashi Iwai wrote:
At Thu, 19 Aug 2010 15:04:03 -0700, Stephen Warren wrote:
I'd like to use/develop-against/patch the ALSA drivers from: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git ... ... However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
See alsa-driver/INSTALL, "Compilation from Linux kernel tree" section. In short, run utils/setup-alsa-kernel $YOUR_SOUND_GIT_TREE_APATH then gitcompile can be used.
It's not required. The alsa-driver/Makefile handles both alsa-kmirror and alsa-kernel trees now.
When I check out Takashi's sound-2.6 tree, am I suppose to explicitly specify the checkout directory so that it's named alsa-kmirror now instead of sound-2.6; the git-compile script doesn't check for the name sound-2.6. Should the following be updated to search for more names:
test -z $ALSAKERNELDIR && ALSAKERNELDIR=../alsa-kmirror
If you like, send a patch to gitcompile to check for sound-2.6 directory as well. I'm using different naming (alsa-kernel), so the gitcompile script checks for alsa-kernel and alsa-kmirror trees.
Unfortunately, it doesn't seem to work:
ALSAKERNELDIR=../sound-2.6/sound ./gitcompile
Yields:
make[3]: Entering directory `/home/swarren/shared/git_wa/ktest/alsa-driver-build/include/sound' cp ../../alsa-kernel/include/*.h . cp: cannot stat `../../alsa-kernel/include/*.h': No such file or directory make[3]: *** [*.h] Error 1
It looks like this path isn't tested?
Anyway, now that I know that utils/setup-alsa-kernel works, I guess I'll just use that.
On Fri, 20 Aug 2010, Stephen Warren wrote:
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Stephen Warren wrote:
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Takashi Iwai wrote:
At Thu, 19 Aug 2010 15:04:03 -0700, Stephen Warren wrote:
I'd like to use/develop-against/patch the ALSA drivers from: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git ... ... However, I can't see how to get gitcompile from there to build the sound subset of a complete kernel tree rather than e.g. something like:
See alsa-driver/INSTALL, "Compilation from Linux kernel tree" section. In short, run utils/setup-alsa-kernel $YOUR_SOUND_GIT_TREE_APATH then gitcompile can be used.
It's not required. The alsa-driver/Makefile handles both alsa-kmirror and alsa-kernel trees now.
When I check out Takashi's sound-2.6 tree, am I suppose to explicitly specify the checkout directory so that it's named alsa-kmirror now instead of sound-2.6; the git-compile script doesn't check for the name sound-2.6. Should the following be updated to search for more names:
test -z $ALSAKERNELDIR && ALSAKERNELDIR=../alsa-kmirror
If you like, send a patch to gitcompile to check for sound-2.6 directory as well. I'm using different naming (alsa-kernel), so the gitcompile script checks for alsa-kernel and alsa-kmirror trees.
Unfortunately, it doesn't seem to work:
ALSAKERNELDIR=../sound-2.6/sound ./gitcompile
It should be:
ALSAKERNELDIR=../sound-2.6 ./gitcompile
Jaroslav
----- Jaroslav Kysela perex@perex.cz Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc.
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Stephen Warren wrote:
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Stephen Warren wrote:
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Takashi Iwai wrote:
At Thu, 19 Aug 2010 15:04:03 -0700, Stephen Warren wrote: > > I'd like to use/develop-against/patch the ALSA drivers from: > git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git > ... > ... However, I can't see how to > get gitcompile from there to build the sound subset of a complete kernel > tree rather than e.g. something like:
See alsa-driver/INSTALL, "Compilation from Linux kernel tree" section. In short, run utils/setup-alsa-kernel $YOUR_SOUND_GIT_TREE_APATH then gitcompile can be used.
It's not required. The alsa-driver/Makefile handles both alsa-kmirror and alsa-kernel trees now.
When I check out Takashi's sound-2.6 tree, am I suppose to explicitly specify the checkout directory so that it's named alsa-kmirror now instead of sound-2.6; the git-compile script doesn't check for the name sound-2.6. Should the following be updated to search for more names:
test -z $ALSAKERNELDIR && ALSAKERNELDIR=../alsa-kmirror
If you like, send a patch to gitcompile to check for sound-2.6 directory as well. I'm using different naming (alsa-kernel), so the gitcompile script checks for alsa-kernel and alsa-kmirror trees.
Unfortunately, it doesn't seem to work:
ALSAKERNELDIR=../sound-2.6/sound ./gitcompile
It should be:
ALSAKERNELDIR=../sound-2.6 ./gitcompile
sound-2.6 is a complete Linux kernel tree, not just the ALSA drivers. Hence, the second part of the following test fails, because last.c is in ../sound-2.6/sound/last.c not ../sound-2.6/last.c
if [ ! -d $ALSAKERNELDIR -o ! -f $ALSAKERNELDIR/last.c ]; then echo "No alsa-kmirror is found."
----------------------------------------------------------------------------------- This email message is for the sole use of the intended recipient(s) and may contain confidential information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message. -----------------------------------------------------------------------------------
On Fri, 20 Aug 2010, Stephen Warren wrote:
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Stephen Warren wrote:
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Stephen Warren wrote:
Jaroslav Kysela wrote:
On Fri, 20 Aug 2010, Takashi Iwai wrote:
> At Thu, 19 Aug 2010 15:04:03 -0700, > Stephen Warren wrote: >> >> I'd like to use/develop-against/patch the ALSA drivers from: >> git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git >> ... >> ... However, I can't see how to >> get gitcompile from there to build the sound subset of a complete kernel >> tree rather than e.g. something like: > > See alsa-driver/INSTALL, "Compilation from Linux kernel tree" section. > In short, run utils/setup-alsa-kernel $YOUR_SOUND_GIT_TREE_APATH > then gitcompile can be used.
It's not required. The alsa-driver/Makefile handles both alsa-kmirror and alsa-kernel trees now.
When I check out Takashi's sound-2.6 tree, am I suppose to explicitly specify the checkout directory so that it's named alsa-kmirror now instead of sound-2.6; the git-compile script doesn't check for the name sound-2.6. Should the following be updated to search for more names:
test -z $ALSAKERNELDIR && ALSAKERNELDIR=../alsa-kmirror
If you like, send a patch to gitcompile to check for sound-2.6 directory as well. I'm using different naming (alsa-kernel), so the gitcompile script checks for alsa-kernel and alsa-kmirror trees.
Unfortunately, it doesn't seem to work:
ALSAKERNELDIR=../sound-2.6/sound ./gitcompile
It should be:
ALSAKERNELDIR=../sound-2.6 ./gitcompile
sound-2.6 is a complete Linux kernel tree, not just the ALSA drivers. Hence, the second part of the following test fails, because last.c is in ../sound-2.6/sound/last.c not ../sound-2.6/last.c
if [ ! -d $ALSAKERNELDIR -o ! -f $ALSAKERNELDIR/last.c ]; then echo "No alsa-kmirror is found."
You're right. But the Makefile accepts both trees. This patch should solve this issue:
diff --git a/gitcompile b/gitcompile index b845fd8..72f9781 100755 --- a/gitcompile +++ b/gitcompile @@ -28,16 +28,18 @@ fi #fi
# check for alsa-kmirror directory -if [ -d alsa-kernel -a -f alsa-kernel/last.c ]; then +if [ -d alsa-kernel -a -f alsa-kernel/sound/last.c ]; then ALSAKERNELDIR="alsa-kernel" elif [ -d alsa-kmirror -a -f alsa-kmirror/last.c ]; then ALSAKERNELDIR="alsa-kmirror" else test -z $ALSAKERNELDIR && ALSAKERNELDIR=../alsa-kmirror if [ ! -d $ALSAKERNELDIR -o ! -f $ALSAKERNELDIR/last.c ]; then - echo "No alsa-kmirror is found." - echo "Please specify the correct location via ALSAKERNELDIR environment variable." - exit 1 + if [ ! -f $ALSAKERNELDIR/sound/last.c ]; then + echo "No alsa-kmirror or alsa-kernel tree is found." + echo "Please specify the correct location via ALSAKERNELDIR environment variable." + exit 1 + fi fi fi make ALSAKERNELDIR="$ALSAKERNELDIR" all-deps || exit 1
Jaroslav
----- Jaroslav Kysela perex@perex.cz Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc.
Jaroslav Kysela wrote:
Stephen Warren wrote:
Jaroslav Kysela wrote:
Stephen Warren wrote:
Unfortunately, it doesn't seem to work:
ALSAKERNELDIR=../sound-2.6/sound ./gitcompile
It should be:
ALSAKERNELDIR=../sound-2.6 ./gitcompile
sound-2.6 is a complete Linux kernel tree, not just the ALSA drivers. Hence, the second part of the following test fails, because last.c is in ../sound-2.6/sound/last.c not ../sound-2.6/last.c
if [ ! -d $ALSAKERNELDIR -o ! -f $ALSAKERNELDIR/last.c ]; then echo "No alsa-kmirror is found."
You're right. But the Makefile accepts both trees. This patch should solve this issue:
OK, that patch works OK, but I actually ended up getting the exact same issue.
make[3]: Warning: File `.includes' has modification time 0.04 s in the future cp ../../alsa-kernel/include/*.h . cp: cannot stat `../../alsa-kernel/include/*.h': No such file or directory
I looked into that further this time, and I found it's because alsa-driver-build/alsa-kernel/include points at ../sound-2.6/include/sound, but should have an extra "../" on the front. Doing the following fixes this:
ALSAKERNELDIR=`cd ../sound-2.6 && pwd` ./gitcompile
Doesn't this affect the ../alsa-kmirror case too? Perhaps everyone who checks out alsa-kmirror places it inside the alsa-driver-build directory, or symlinks it themselves first?
Perhaps gitcompile can add the following right before the make:
ALSAKERNELDIR=`cd ${ALSAKERNELDIR} && pwd`
But I'm not familiar enough with all configurations people use this in to know whether that would break anything.
If that's OK, the final patch might be as below; it Works For Me.
diff --git a/gitcompile b/gitcompile index b845fd8..57e56e2 100755 --- a/gitcompile +++ b/gitcompile @@ -28,18 +28,22 @@ fi #fi
# check for alsa-kmirror directory -if [ -d alsa-kernel -a -f alsa-kernel/last.c ]; then +if [ -d alsa-kernel -a -f alsa-kernel/sound/last.c ]; then ALSAKERNELDIR="alsa-kernel" elif [ -d alsa-kmirror -a -f alsa-kmirror/last.c ]; then ALSAKERNELDIR="alsa-kmirror" else - test -z $ALSAKERNELDIR && ALSAKERNELDIR=../alsa-kmirror - if [ ! -d $ALSAKERNELDIR -o ! -f $ALSAKERNELDIR/last.c ]; then - echo "No alsa-kmirror is found." - echo "Please specify the correct location via ALSAKERNELDIR environment variable." - exit 1 + test -z $ALSAKERNELDIR && [ -d ../alsa-kmirror ] && ALSAKERNELDIR=../alsa-kmirror + test -z $ALSAKERNELDIR && [ -d ../sound-2.6 ] && ALSAKERNELDIR=../sound-2.6 + if [ ! -d "$ALSAKERNELDIR" -o ! -f "$ALSAKERNELDIR/last.c" ]; then + if [ ! -f "$ALSAKERNELDIR/sound/last.c" ]; then + echo "No alsa-kmirror or alsa-kernel tree is found." + echo "Please specify the correct location via ALSAKERNELDIR environment variable." + exit 1 + fi fi fi +ALSAKERNELDIR=`cd ${ALSAKERNELDIR} && pwd` make ALSAKERNELDIR="$ALSAKERNELDIR" all-deps || exit 1 aclocal $ACLOCAL_FLAGS || exit 1 autoconf || exit 1
On Fri, 20 Aug 2010, Stephen Warren wrote:
Jaroslav Kysela wrote:
Stephen Warren wrote:
Jaroslav Kysela wrote:
Stephen Warren wrote:
Unfortunately, it doesn't seem to work:
ALSAKERNELDIR=../sound-2.6/sound ./gitcompile
It should be:
ALSAKERNELDIR=../sound-2.6 ./gitcompile
sound-2.6 is a complete Linux kernel tree, not just the ALSA drivers. Hence, the second part of the following test fails, because last.c is in ../sound-2.6/sound/last.c not ../sound-2.6/last.c
if [ ! -d $ALSAKERNELDIR -o ! -f $ALSAKERNELDIR/last.c ]; then echo "No alsa-kmirror is found."
You're right. But the Makefile accepts both trees. This patch should solve this issue:
OK, that patch works OK, but I actually ended up getting the exact same issue.
make[3]: Warning: File `.includes' has modification time 0.04 s in the future cp ../../alsa-kernel/include/*.h . cp: cannot stat `../../alsa-kernel/include/*.h': No such file or directory
I looked into that further this time, and I found it's because alsa-driver-build/alsa-kernel/include points at ../sound-2.6/include/sound, but should have an extra "../" on the front. Doing the following fixes this:
ALSAKERNELDIR=`cd ../sound-2.6 && pwd` ./gitcompile
Doesn't this affect the ../alsa-kmirror case too? Perhaps everyone who checks out alsa-kmirror places it inside the alsa-driver-build directory, or symlinks it themselves first?
Perhaps gitcompile can add the following right before the make:
ALSAKERNELDIR=`cd ${ALSAKERNELDIR} && pwd`
Good catch. The fix is in my tree now:
http://git.alsa-project.org/?p=alsa-driver.git;a=commitdiff;h=59ca79b3253de1...
Jaroslav
----- Jaroslav Kysela perex@perex.cz Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc.
participants (4)
-
Jaroslav Kysela
-
Raymond Yau
-
Stephen Warren
-
Takashi Iwai