| Submitter | Thilo Fromm |
|---|---|
| Date | Jan. 30, 2012, 9:10 a.m. |
| Message ID | <CADZ6=asn5Tq6adpuysW229BYXDu3ExUVNDWEZtzpjyAUv9PHgQ@mail.gmail.com> |
| Download | mbox | patch |
| Permalink | /patch/20293/ |
| State | Not Applicable |
| Headers | show |
Comments
Hello *.*, > This patch works around a max shebang length issue > in llvm's llvm-config. > Sorry guys, I garbled the patch in the first submission. I already changed the first submission's patch state to "not applicable" in patchwork and resent it. Just want to make sure no one tries to apply my first submission to this issue. Patchwork already has the sane diff. Some feedback on the patch would be great. Regards, Thilo
On Mon, Jan 30, 2012 at 02:09:40PM +0100, Thilo Fromm wrote: > Hello *.*, > > > This patch works around a max shebang length issue > > in llvm's llvm-config. > > > > Sorry guys, I garbled the patch in the first submission. I already > changed the first submission's patch state to "not applicable" in > patchwork and resent it. Just want to make sure no one tries to apply > my first submission to this issue. Patchwork already has the sane > diff. > > Some feedback on the patch would be great. > > Regards, > Thilo Hi Thilo, I am a bit short of time at the moment. So I can not test or apply your patch. For the longer term llvm should go to core. Bye Henning
Hello Henning, >> > This patch works around a max shebang length issue >> > in llvm's llvm-config. >> >> Some feedback on the patch would be great. >> > > I am a bit short of time at the moment. So I can not test or apply your patch. > For the longer term llvm should go to core. > Okay. We'll maintain this patch in our HidaV layer (which is https://github.com/DFE/HidaV) for the time being. Regards, Thilo
On Wed, Feb 01, 2012 at 09:26:23AM +0100, Thilo Fromm wrote: > Hello Henning, > > >> > This patch works around a max shebang length issue > >> > in llvm's llvm-config. > >> > >> Some feedback on the patch would be great. > >> > > > > I am a bit short of time at the moment. So I can not test or apply your patch. > > For the longer term llvm should go to core. > > > > Okay. We'll maintain this patch in our HidaV layer (which is > https://github.com/DFE/HidaV) for the time being. > > Regards, > Thilo btw. you can make a pull request. Bye Henning
Hallo Henning, >> >> > This patch works around a max shebang length issue >> >> > in llvm's llvm-config. >> >> >> >> Some feedback on the patch would be great. >> > >> > I am a bit short of time at the moment. So I can not test or apply your patch. >> > For the longer term llvm should go to core. >> >> Okay. We'll maintain this patch in our HidaV layer (which is >> https://github.com/DFE/HidaV) for the time being. > > btw. you can make a pull request. > Wouldn't work - we use a .bbappend to meta-java's original llvm-config recipe. It's not hard to re-integrate into the original recipe, but a pull alone would not do. Regards, Thilo
Patch
diff --git a/recipes-core/llvm/llvm-common.bb b/recipes-core/llvm/llvm-common.bb index 38ca1ee..3db4af0 100644 --- a/recipes-core/llvm/llvm-common.bb +++ b/recipes-core/llvm/llvm-common.bb @@ -4,8 +4,20 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3 file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420 \ " +# provide native perl binaries via PATH +inherit perlnative +DEPENDS += "perl-native" + SRC_URI = "file://llvm-config" +do_compile() { + cd .. + # This adds an explicit call to the interpreter in the wrapper script + # so we don't run into shebang max size issues in the llvm-configX.X perl script + # if the path to perl-native > 127 chars. + sed -i -e "s|@PATH_TO_PERL@|`which perl`|" llvm-config +} + do_install() { install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/ install -m 0755 ${WORKDIR}/llvm-config ${SYSROOT_DESTDIR}${bindir_crossscripts}/ diff --git a/recipes-core/llvm/llvm-common/llvm-config b/recipes-core/llvm/llvm-common/llvm-config index a9a416d..08463e5 100644 --- a/recipes-core/llvm/llvm-common/llvm-config +++ b/recipes-core/llvm/llvm-common/llvm-config @@ -2,7 +2,7 @@ # Wrapper script for real llvm-config. Simply calls if [ $WANT_LLVM_RELEASE ]; then - exec `dirname $0`/${TARGET_PREFIX}llvm-config$WANT_LLVM_RELEASE ${@} + exec "@PATH_TO_PERL@" `dirname $0`/${TARGET_PREFIX}llvm-config$WANT_LLVM_RELEASE ${@} else echo "The variable WANT_LLVM_RELEASE is not defined and exported"
This patch works around a max shebang length issue in llvm's llvm-config. llvm-config is a perl script. meta-java configures the llvm sources to use OE's perl which might reside in a path longer than 127 chars. llvm's perl script will then have a shebang line longer than 127 characters. This will break the script. In linux, shebang interpreter paths are cut off after 127 bytes. meta-java's llvm recipe already wraps the perl script llvm-config with a small shell script. This patch adds an explicit perl interpreter call to this wrapping shell script. Signed-off-by: Thilo Fromm <github@thilo-fromm.de> --- recipes-core/llvm/llvm-common.bb | 12 ++++++++++++ recipes-core/llvm/llvm-common/llvm-config | 2 +- 2 files changed, 13 insertions(+), 1 deletions(-) echo "by your build recipe. Go figure."