From: Patrick Ohly <patrick.ohly@intel.com>
To: Khem Raj <raj.khem@gmail.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: potential bashism in guile_2.0.13.bb
Date: Thu, 02 Feb 2017 12:09:36 +0100 [thread overview]
Message-ID: <1486033776.14889.45.camel@intel.com> (raw)
In-Reply-To: <d4623190-c52c-36f5-a1d5-a5c4e3214b62@gmail.com>
On Wed, 2017-02-01 at 09:03 -0800, Khem Raj wrote:
>
> On 1/31/17 4:29 AM, Patrick Ohly wrote:
> > Hello!
> >
> > verify-bashisms (after some fixing of the script) reports:
> >
> > /work/iot-ref-kit/openembedded-core/meta/recipes-devtools/guile/guile_2.0.13.bb
> > possible bashism in guile_cross_config line 94 ($'...' should be "$(printf '...')"):
> > echo '#!'`which ${BUILD_SYS}-guile`$' \\\n--no-auto-compile -e main -s\n!#\n(define %guile-build-info '\'\( \
> > > ${B}/guile-config.cross
> >
> >
> > This is for:
> >
> > guile_cross_config() {
> > # this is only for target recipe
> > if [ "${PN}" = "guile" ]
> > then
> > # Create guile-config returning target values instead of native values
> > install -d ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS}
> > echo '#!'`which ${BUILD_SYS}-guile`$' \\\n--no-auto-compile -e main -s\n!#\n(define %guile-build-info '\'\( \
> > > ${B}/guile-config.cross
> >
> > And the resulting guile-config.cross has (when /bin/sh -> /bin/dash):
> >
> > #!/fast/build/refkit/intel-corei7-64/tmp-glibc/work/corei7-64-refkit-linux/guile/2.0.13-r0/recipe-sysroot-native/usr/bin/x86_64-linux-guile$ \
> > --no-auto-compile -e main -s
> > !#
> > (define %guile-build-info '(
> > ...
> >
> > This looks rather strange to me and I've no idea how the Linux kernel
> > will interpret that first shebang line, which literally ends in
> > ...guile$ \
> >
> > Is the content as intended?
>
> it should have come out as path to native guile with options, I think if
> this is not happening it might just be installing wrong wrapper when
> used it should complain.
Here's a test script:
vvvvvvvvvvvvvvvvvvvvvvvv
#!/bin/echo \
hello world
^^^^^^^^^^^^^^^^^^^^^^^^
That prints:
\ /tmp/test2
It doesn't look like line continuation in the shebang line works, so the
above guile-config.cross is just wrong. However, both dash and bash do
the same thing, so I guess the file is not used at all?
> In any case its better to make it shell
> independent.
So the correct content of guile-config.cross would be this?
#!/.../guile/2.0.13-r0/recipe-sysroot-native/usr/bin/x86_64-linux-guile --no-auto-compile -e main -s
!#
(define %guile-build-info '(
...
I have no idea what the script is supposed to do, so I'm a bit reluctant
to change anything.
--
Best Regards, Patrick Ohly
The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.
prev parent reply other threads:[~2017-02-02 11:09 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-31 12:29 potential bashism in guile_2.0.13.bb Patrick Ohly
2017-02-01 17:03 ` Khem Raj
2017-02-02 11:09 ` Patrick Ohly [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1486033776.14889.45.camel@intel.com \
--to=patrick.ohly@intel.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=raj.khem@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox