Message ID | 1402928339-29785-1-git-send-email-mmarek@suse.cz (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Jun 16, 2014 at 7:18 AM, Michal Marek <mmarek@suse.cz> wrote: > When $srctree or $objtree are relative paths, we cannot change directory > and refer to them in the same subshell. Do the redirection outside of > the subshell to fix this. > > Reported-by: Ilya Dryomov <idryomov@gmail.com> > Signed-off-by: Michal Marek <mmarek@suse.cz> > --- > scripts/package/builddeb | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) this patch didn't help to fix the broken deb-pkg for me: ../scripts/Makefile.build:44: ../../scripts/package/Makefile: No such file or directory make[2]: *** No rule to make target `../../scripts/package/Makefile'. Stop. make[1]: *** [deb-pkg] Error 2 steps to reproduce: $ export KBUILD_OUTPUT=/make it out of src tree $ make deb-pkg > diff --git a/scripts/package/builddeb b/scripts/package/builddeb > index b5f08f7..9a38e85 100644 > --- a/scripts/package/builddeb > +++ b/scripts/package/builddeb > @@ -290,13 +290,13 @@ EOF > fi > > # Build header package > -(cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name \*.pl > "$objtree/debian/hdrsrcfiles") > -(cd $srctree; find arch/$SRCARCH/include include scripts -type f >> "$objtree/debian/hdrsrcfiles") > -(cd $objtree; find arch/$SRCARCH/include Module.symvers include scripts -type f >> "$objtree/debian/hdrobjfiles") > +(cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name \*.pl) > "$objtree/debian/hdrsrcfiles" > +(cd $srctree; find arch/$SRCARCH/include include scripts -type f) >> "$objtree/debian/hdrsrcfiles" > +(cd $objtree; find arch/$SRCARCH/include Module.symvers include scripts -type f) >> "$objtree/debian/hdrobjfiles" > destdir=$kernel_headers_dir/usr/src/linux-headers-$version > mkdir -p "$destdir" > -(cd $srctree; tar -c -f - -T "$objtree/debian/hdrsrcfiles") | (cd $destdir; tar -xf -) > -(cd $objtree; tar -c -f - -T "$objtree/debian/hdrobjfiles") | (cd $destdir; tar -xf -) > +(cd $srctree; tar -c -f - -T -) < "$objtree/debian/hdrsrcfiles" | (cd $destdir; tar -xf -) > +(cd $objtree; tar -c -f - -T -) < "$objtree/debian/hdrobjfiles" | (cd $destdir; tar -xf -) > (cd $objtree; cp $KCONFIG_CONFIG $destdir/.config) # copy .config manually to be where it's expected to be > ln -sf "/usr/src/linux-headers-$version" "$kernel_headers_dir/lib/modules/$version/build" > rm -f "$objtree/debian/hdrsrcfiles" "$objtree/debian/hdrobjfiles" > -- > 1.9.2 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Jun 17, 2014 at 6:47 AM, Alexei Starovoitov <alexei.starovoitov@gmail.com> wrote: > On Mon, Jun 16, 2014 at 7:18 AM, Michal Marek <mmarek@suse.cz> wrote: >> When $srctree or $objtree are relative paths, we cannot change directory >> and refer to them in the same subshell. Do the redirection outside of >> the subshell to fix this. >> >> Reported-by: Ilya Dryomov <idryomov@gmail.com> >> Signed-off-by: Michal Marek <mmarek@suse.cz> >> --- >> scripts/package/builddeb | 10 +++++----- >> 1 file changed, 5 insertions(+), 5 deletions(-) > > this patch didn't help to fix the broken deb-pkg for me: Alexei, you must have some other issue with your environment. This patch fixes it for me, and in fact I had almost the exact same patch committed internally in the interim. (I wanted to give Michal the opportunity to fix this perhaps in a more general way, since tar targets seems to misbehave too.) Thanks, Ilya -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Dne 18.6.2014 09:52, Ilya Dryomov napsal(a): > On Tue, Jun 17, 2014 at 6:47 AM, Alexei Starovoitov > <alexei.starovoitov@gmail.com> wrote: >> On Mon, Jun 16, 2014 at 7:18 AM, Michal Marek <mmarek@suse.cz> wrote: >>> When $srctree or $objtree are relative paths, we cannot change directory >>> and refer to them in the same subshell. Do the redirection outside of >>> the subshell to fix this. >>> >>> Reported-by: Ilya Dryomov <idryomov@gmail.com> >>> Signed-off-by: Michal Marek <mmarek@suse.cz> >>> --- >>> scripts/package/builddeb | 10 +++++----- >>> 1 file changed, 5 insertions(+), 5 deletions(-) >> >> this patch didn't help to fix the broken deb-pkg for me: > > Alexei, you must have some other issue with your environment. This > patch fixes it for me, and in fact I had almost the exact same patch > committed internally in the interim. (I wanted to give Michal the > opportunity to fix this perhaps in a more general way, since tar > targets seems to misbehave too.) So can I add your Tested-by: and send it to Linus? I haven't managed to set up a debian building environment yesterday and I'm a bit busy today. Thanks, Michal -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
> Dne 18.6.2014 09:52, Ilya Dryomov napsal(a): >> On Tue, Jun 17, 2014 at 6:47 AM, Alexei Starovoitov >> <alexei.starovoitov@gmail.com> wrote: >>> On Mon, Jun 16, 2014 at 7:18 AM, Michal Marek <mmarek@suse.cz> wrote: >>>> When $srctree or $objtree are relative paths, we cannot change directory >>>> and refer to them in the same subshell. Do the redirection outside of >>>> the subshell to fix this. >>>> >>>> Reported-by: Ilya Dryomov <idryomov@gmail.com> >>>> Signed-off-by: Michal Marek <mmarek@suse.cz> >>>> --- >>>> scripts/package/builddeb | 10 +++++----- >>>> 1 file changed, 5 insertions(+), 5 deletions(-) >>> >>> this patch didn't help to fix the broken deb-pkg for me: >> >> Alexei, you must have some other issue with your environment. This >> patch fixes it for me, and in fact I had almost the exact same patch >> committed internally in the interim. (I wanted to give Michal the >> opportunity to fix this perhaps in a more general way, since tar >> targets seems to misbehave too.) > > So can I add your Tested-by: and send it to Linus? I haven't managed to > set up a debian building environment yesterday and I'm a bit busy today. Yes, Tested-by: Ilya Dryomov <idryomov@gmail.com> Thanks, Ilya -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/scripts/package/builddeb b/scripts/package/builddeb index b5f08f7..9a38e85 100644 --- a/scripts/package/builddeb +++ b/scripts/package/builddeb @@ -290,13 +290,13 @@ EOF fi # Build header package -(cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name \*.pl > "$objtree/debian/hdrsrcfiles") -(cd $srctree; find arch/$SRCARCH/include include scripts -type f >> "$objtree/debian/hdrsrcfiles") -(cd $objtree; find arch/$SRCARCH/include Module.symvers include scripts -type f >> "$objtree/debian/hdrobjfiles") +(cd $srctree; find . -name Makefile\* -o -name Kconfig\* -o -name \*.pl) > "$objtree/debian/hdrsrcfiles" +(cd $srctree; find arch/$SRCARCH/include include scripts -type f) >> "$objtree/debian/hdrsrcfiles" +(cd $objtree; find arch/$SRCARCH/include Module.symvers include scripts -type f) >> "$objtree/debian/hdrobjfiles" destdir=$kernel_headers_dir/usr/src/linux-headers-$version mkdir -p "$destdir" -(cd $srctree; tar -c -f - -T "$objtree/debian/hdrsrcfiles") | (cd $destdir; tar -xf -) -(cd $objtree; tar -c -f - -T "$objtree/debian/hdrobjfiles") | (cd $destdir; tar -xf -) +(cd $srctree; tar -c -f - -T -) < "$objtree/debian/hdrsrcfiles" | (cd $destdir; tar -xf -) +(cd $objtree; tar -c -f - -T -) < "$objtree/debian/hdrobjfiles" | (cd $destdir; tar -xf -) (cd $objtree; cp $KCONFIG_CONFIG $destdir/.config) # copy .config manually to be where it's expected to be ln -sf "/usr/src/linux-headers-$version" "$kernel_headers_dir/lib/modules/$version/build" rm -f "$objtree/debian/hdrsrcfiles" "$objtree/debian/hdrobjfiles"
When $srctree or $objtree are relative paths, we cannot change directory and refer to them in the same subshell. Do the redirection outside of the subshell to fix this. Reported-by: Ilya Dryomov <idryomov@gmail.com> Signed-off-by: Michal Marek <mmarek@suse.cz> --- scripts/package/builddeb | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)