Message ID | 4FCF1BCC.1090208@codemonkey.ws |
---|---|
State | New |
Headers | show |
> From e0e6e5b689cbcb782bca8f158fad89b3389e9e11 Mon Sep 17 00:00:00 2001 > From: Anthony Liguori <aliguori@us.ibm.com> > Date: Wed, 6 Jun 2012 16:57:00 +0800 > Subject: [PATCH] configure: ensure directory exists when creating symlink > > Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> > --- > configure | 3 +-- > 1 files changed, 1 insertions(+), 2 deletions(-) > > diff --git a/configure b/configure > index 07e3ff1..4a7f027 100755 > --- a/configure > +++ b/configure > @@ -42,6 +42,7 @@ compile_prog() { > # symbolically link $1 to $2. Portable version of "ln -sf". > symlink() { > rm -rf "$2" > + mkdir -p `dirname $2` Please leave the argument quoted, like dir=`dirname "$2` mkdir -p "$dir" Otherwise looks good. Do we need a v3? This can just be committed before 25/25 or even before all my patches, and that would be just what I send. Paolo > ln -s "$1" "$2" > } > > @@ -3454,14 +3455,12 @@ if test -f ${config_host_ld}~ ; then > fi > > for d in libdis libdis-user; do > - mkdir -p $d > symlink "$source_path/Makefile.dis" "$d/Makefile" > echo > $d/config.mak > done > > # use included Linux headers > if test "$linux" = "yes" ; then > - mkdir -p linux-headers > case "$cpu" in > i386|x86_64) > symlink "$source_path/linux-headers/asm-x86" linux-headers/asm > -- 1.7.5.4
On 6 June 2012 12:54, Paolo Bonzini <pbonzini@redhat.com> wrote: >> From: Anthony Liguori <aliguori@us.ibm.com> >> + mkdir -p `dirname $2` > > Please leave the argument quoted, like > > dir=`dirname "$2` (missing ", obviously) > mkdir -p "$dir" Can we use mkdir -p "$(dirname "$2")" or are we still trying to be compatible with some non-POSIX shell from the dawn of time? -- PMM
Il 06/06/2012 14:03, Peter Maydell ha scritto: > Can we use > mkdir -p "$(dirname "$2")" > > or are we still trying to be compatible with some non-POSIX > shell from the dawn of time? Looks like we can, there are other occurrences of $() in configure. Paolo
On 06/06/2012 08:16 PM, Paolo Bonzini wrote: > Il 06/06/2012 14:03, Peter Maydell ha scritto: >> Can we use >> mkdir -p "$(dirname "$2")" >> >> or are we still trying to be compatible with some non-POSIX >> shell from the dawn of time? > > Looks like we can, there are other occurrences of $() in configure. I saw that too, but I thought $() was a bash-ism. Regards, Anthony Liguori > > Paolo > >
On 06/06/2012 07:54 PM, Paolo Bonzini wrote: >> From e0e6e5b689cbcb782bca8f158fad89b3389e9e11 Mon Sep 17 00:00:00 2001 >> From: Anthony Liguori<aliguori@us.ibm.com> >> Date: Wed, 6 Jun 2012 16:57:00 +0800 >> Subject: [PATCH] configure: ensure directory exists when creating symlink >> >> Signed-off-by: Anthony Liguori<aliguori@us.ibm.com> >> --- >> configure | 3 +-- >> 1 files changed, 1 insertions(+), 2 deletions(-) >> >> diff --git a/configure b/configure >> index 07e3ff1..4a7f027 100755 >> --- a/configure >> +++ b/configure >> @@ -42,6 +42,7 @@ compile_prog() { >> # symbolically link $1 to $2. Portable version of "ln -sf". >> symlink() { >> rm -rf "$2" >> + mkdir -p `dirname $2` > > Please leave the argument quoted, like > > dir=`dirname "$2` > mkdir -p "$dir" > > Otherwise looks good. Do we need a v3? This can just be committed > before 25/25 or even before all my patches, and that would be just what > I send. Unfortunately, this conflicts pretty badly with Andreas' QOM CPU series. Could you rebase and send out a v3? Regards, Anthony Liguori > > Paolo > >> ln -s "$1" "$2" >> } >> >> @@ -3454,14 +3455,12 @@ if test -f ${config_host_ld}~ ; then >> fi >> >> for d in libdis libdis-user; do >> - mkdir -p $d >> symlink "$source_path/Makefile.dis" "$d/Makefile" >> echo> $d/config.mak >> done >> >> # use included Linux headers >> if test "$linux" = "yes" ; then >> - mkdir -p linux-headers >> case "$cpu" in >> i386|x86_64) >> symlink "$source_path/linux-headers/asm-x86" linux-headers/asm >> -- 1.7.5.4 > >
On 06/06/2012 09:15 PM, Anthony Liguori wrote: > On 06/06/2012 08:16 PM, Paolo Bonzini wrote: >> Il 06/06/2012 14:03, Peter Maydell ha scritto: >>> Can we use >>> mkdir -p "$(dirname "$2")" >>> >>> or are we still trying to be compatible with some non-POSIX >>> shell from the dawn of time? >> >> Looks like we can, there are other occurrences of $() in configure. > > I saw that too, but I thought $() was a bash-ism. $() is required by POSIX. The problem is that Solaris' /bin/sh does not understand $(), since it is not a POSIX shell. If you take care to sanitize shell execution into a sane shell (yes, it is possible to write configure scripts that re-execute themselves under a better shell than /bin/sh), then using $() can be one of the decision points on whether a better shell has been found.
Il 07/06/2012 05:16, Anthony Liguori ha scritto: > On 06/06/2012 07:54 PM, Paolo Bonzini wrote: >>> From e0e6e5b689cbcb782bca8f158fad89b3389e9e11 Mon Sep 17 00:00:00 2001 >>> From: Anthony Liguori<aliguori@us.ibm.com> >>> Date: Wed, 6 Jun 2012 16:57:00 +0800 >>> Subject: [PATCH] configure: ensure directory exists when creating >>> symlink >>> >>> Signed-off-by: Anthony Liguori<aliguori@us.ibm.com> >>> --- >>> configure | 3 +-- >>> 1 files changed, 1 insertions(+), 2 deletions(-) >>> >>> diff --git a/configure b/configure >>> index 07e3ff1..4a7f027 100755 >>> --- a/configure >>> +++ b/configure >>> @@ -42,6 +42,7 @@ compile_prog() { >>> # symbolically link $1 to $2. Portable version of "ln -sf". >>> symlink() { >>> rm -rf "$2" >>> + mkdir -p `dirname $2` >> >> Please leave the argument quoted, like >> >> dir=`dirname "$2` >> mkdir -p "$dir" >> >> Otherwise looks good. Do we need a v3? This can just be committed >> before 25/25 or even before all my patches, and that would be just what >> I send. > > Unfortunately, this conflicts pretty badly with Andreas' QOM CPU > series. Could you rebase and send out a v3? No, it's the dumping series from Luiz. I'll send a v3 as a pull request. Paolo
On 06/07/2012 01:26 PM, Paolo Bonzini wrote: > Il 07/06/2012 05:16, Anthony Liguori ha scritto: >> On 06/06/2012 07:54 PM, Paolo Bonzini wrote: >>>> From e0e6e5b689cbcb782bca8f158fad89b3389e9e11 Mon Sep 17 00:00:00 2001 >>>> From: Anthony Liguori<aliguori@us.ibm.com> >>>> Date: Wed, 6 Jun 2012 16:57:00 +0800 >>>> Subject: [PATCH] configure: ensure directory exists when creating >>>> symlink >>>> >>>> Signed-off-by: Anthony Liguori<aliguori@us.ibm.com> >>>> --- >>>> configure | 3 +-- >>>> 1 files changed, 1 insertions(+), 2 deletions(-) >>>> >>>> diff --git a/configure b/configure >>>> index 07e3ff1..4a7f027 100755 >>>> --- a/configure >>>> +++ b/configure >>>> @@ -42,6 +42,7 @@ compile_prog() { >>>> # symbolically link $1 to $2. Portable version of "ln -sf". >>>> symlink() { >>>> rm -rf "$2" >>>> + mkdir -p `dirname $2` >>> >>> Please leave the argument quoted, like >>> >>> dir=`dirname "$2` >>> mkdir -p "$dir" >>> >>> Otherwise looks good. Do we need a v3? This can just be committed >>> before 25/25 or even before all my patches, and that would be just what >>> I send. >> >> Unfortunately, this conflicts pretty badly with Andreas' QOM CPU >> series. Could you rebase and send out a v3? > > No, it's the dumping series from Luiz. I'll send a v3 as a pull request. Okay, thanks. Regards, Anthony Liguori > > Paolo >
From e0e6e5b689cbcb782bca8f158fad89b3389e9e11 Mon Sep 17 00:00:00 2001 From: Anthony Liguori <aliguori@us.ibm.com> Date: Wed, 6 Jun 2012 16:57:00 +0800 Subject: [PATCH] configure: ensure directory exists when creating symlink Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> --- configure | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diff --git a/configure b/configure index 07e3ff1..4a7f027 100755 --- a/configure +++ b/configure @@ -42,6 +42,7 @@ compile_prog() { # symbolically link $1 to $2. Portable version of "ln -sf". symlink() { rm -rf "$2" + mkdir -p `dirname $2` ln -s "$1" "$2" } @@ -3454,14 +3455,12 @@ if test -f ${config_host_ld}~ ; then fi for d in libdis libdis-user; do - mkdir -p $d symlink "$source_path/Makefile.dis" "$d/Makefile" echo > $d/config.mak done # use included Linux headers if test "$linux" = "yes" ; then - mkdir -p linux-headers case "$cpu" in i386|x86_64) symlink "$source_path/linux-headers/asm-x86" linux-headers/asm -- 1.7.5.4