Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Looks like the host compiler is being used for some tests #87

Open
rossburton opened this issue Feb 5, 2020 · 14 comments
Open

Looks like the host compiler is being used for some tests #87

rossburton opened this issue Feb 5, 2020 · 14 comments

Comments

@rossburton
Copy link

When comparing a supposedly identical cross build on two different build hosts the output is slightly different. A diffoscope analysis of the build has this fragment in:

│ │ ├── ./usr/lib/perl5/5.30.1/x86_64-linux/CORE/config.h
│ │ │ @@ -2317,15 +2317,15 @@
│ │ │  #define HAS_BUILTIN_ADD_OVERFLOW	/**/
│ │ │  #define HAS_BUILTIN_SUB_OVERFLOW	/**/
│ │ │  #define HAS_BUILTIN_MUL_OVERFLOW	/**/
│ │ │  
│ │ │  /* HAS_C99_VARIADIC_MACROS:
│ │ │   *	If defined, the compiler supports C99 variadic macros.
│ │ │   */
│ │ │ -#define	HAS_C99_VARIADIC_MACROS	/**/
│ │ │ +/*#define	HAS_C99_VARIADIC_MACROS	/ **/
│ │ │  
│ │ │  /* HAS_CLASS:
│ │ │   *	This symbol, if defined, indicates that the class routine is
│ │ │   *	available to classify doubles.  Available for example in AIX.
│ │ │   *	The returned values are defined in <float.h> and are:
│ │ │   *
│ │ │   *	FP_PLUS_NORM	Positive normalized, nonzero
│ │ ├── ./usr/lib/perl5/5.30.1/x86_64-linux/CORE/xconfig.h
│ │ │ @@ -2217,17 +2217,17 @@
│ │ │   *	Note that this variable is initialized from the sig_num_init,
│ │ │   *	not from sig_num (which is unused).
│ │ │   */
│ │ │  /* SIG_SIZE:
│ │ │   *	This variable contains the number of elements of the SIG_NAME
│ │ │   *	and SIG_NUM arrays, excluding the final NULL entry.
│ │ │   */
│ │ │ -#define SIG_NAME "ZERO", "HUP", "INT", "QUIT", "ILL", "TRAP", "ABRT", "BUS", "FPE", "KILL", "USR1", "SEGV", "USR2", "PIPE", "ALRM", "TERM", "STKFLT", "CHLD", "CONT", "STOP", "TSTP", "TTIN", "TTOU", "URG", "XCPU", "XFSZ", "VTALRM", "PROF", "WINCH", "IO", "PWR", "SYS", "IOT", "CLD", "POLL", "UNUSED", 0		/**/
│ │ │ -#define SIG_NUM  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 6, 17, 29, 31, 0		/**/
│ │ │ -#define SIG_SIZE 36			/**/
│ │ │ +#define SIG_NAME "ZERO", "HUP", "INT", "QUIT", "ILL", "TRAP", "ABRT", "BUS", "FPE", "KILL", "USR1", "SEGV", "USR2", "PIPE", "ALRM", "TERM", "STKFLT", "CHLD", "CONT", "STOP", "TSTP", "TTIN", "TTOU", "URG", "XCPU", "XFSZ", "VTALRM", "PROF", "WINCH", "IO", "PWR", "SYS", "IOT", "CLD", "POLL", 0	/**/
│ │ │ +#define SIG_NUM  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 6, 17, 29, 0		/**/
│ │ │ +#define SIG_SIZE 35			/**/
│ │ │  
│ │ │  /* USE_CROSS_COMPILE:
│ │ │   *	This symbol, if defined, indicates that Perl is being cross-compiled.
│ │ │   */
│ │ │  /* PERL_TARGETARCH:
│ │ │   *	This symbol, if defined, indicates the target architecture
│ │ │   *	Perl has been cross-compiled to.  Undefined if not a cross-compile.
│ │ │ @@ -2317,15 +2317,15 @@
│ │ │  #define HAS_BUILTIN_ADD_OVERFLOW	/**/
│ │ │  #define HAS_BUILTIN_SUB_OVERFLOW	/**/
│ │ │  #define HAS_BUILTIN_MUL_OVERFLOW	/**/
│ │ │  
│ │ │  /* HAS_C99_VARIADIC_MACROS:
│ │ │   *	If defined, the compiler supports C99 variadic macros.
│ │ │   */
│ │ │ -#define	HAS_C99_VARIADIC_MACROS	/**/
│ │ │ +/*#define	HAS_C99_VARIADIC_MACROS	/ **/
│ │ │  
│ │ │  /* HAS_CLASS:
│ │ │   *	This symbol, if defined, indicates that the class routine is
│ │ │   *	available to classify doubles.  Available for example in AIX.
│ │ │   *	The returned values are defined in <float.h> and are:
│ │ │   *
│ │ │   *	FP_PLUS_NORM	Positive normalized, nonzero
│ │ │ @@ -3079,15 +3079,15 @@
│ │ │   *	include <xlocale.h> to get uselocale() and its friends.
│ │ │   */
│ │ │  #define	HAS_NEWLOCALE	/**/
│ │ │  #define	HAS_FREELOCALE	/**/
│ │ │  #define	HAS_USELOCALE	/**/
│ │ │  #define	HAS_DUPLOCALE	/**/
│ │ │  /*#define	HAS_QUERYLOCALE	/ **/
│ │ │ -#define	I_XLOCALE               /**/
│ │ │ +/*#define	I_XLOCALE               / **/
│ │ │  
│ │ │  /* HAS_NEXTAFTER:
│ │ │   *	This symbol, if defined, indicates that the nextafter routine is
│ │ │   *	available to return the next machine representable double from
│ │ │   *	x in direction y.
│ │ │   */
│ │ │  #define HAS_NEXTAFTER		/**/
│ │ │ @@ -3692,15 +3692,15 @@
│ │ │   */
│ │ │  /*#define	I_PROT		/ **/
│ │ │  
│ │ │  /* I_QUADMATH:
│ │ │   *	This symbol, if defined, indicates that <quadmath.h> exists and
│ │ │   *	should be included.
│ │ │   */
│ │ │ -/*#define	I_QUADMATH		/ **/
│ │ │ +#define	I_QUADMATH		/**/
│ │ │  
│ │ │  /* I_SHADOW:

The hunch is that the host compiler is being used when probing, instead of the cross. Do you have any thoughts or ideas?

@arsv
Copy link
Owner

arsv commented Feb 5, 2020

Quick check to verify that: open config.log, and search for "variadic". There will be two check in case of a cross build, the first one for host-miniperl and the second one for the target perl executable.

Checking C99 variadic macros
| #include <stdio.h>
| #define foo(fmt, ...) printf(fmt, __VA_ARGS__)
| int main(void) { foo("%i\n", 1234); return 0; }
> aarch64-linux-gnu-gcc -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -c -o try.o try.c
Setting d_c99_variadic_macros=define
Result: supported

As far as I can tell, it uses the target compiler and otherwise works like it's supposed to. However, it's a good idea to check anyway, in case there are some unexpected issues there. Maybe even try diffing config.log-s from the two hosts, assuming the same configuration there should be very little difference there normally.

You can also copy the test code from the log and run the command manually.

@rpurdie
Copy link
Contributor

rpurdie commented Feb 5, 2020

I think this is a dash vs bash as /bin/sh issue. If I take the "\n" out the test, in config.log I see:
Checking C99 variadic macros
| #include <stdio.h>
| #define foo(fmt, ...) printf(fmt, VA_ARGS)
| int main(void) { foo("%i", 1234); return 0; }

gcc -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -c -o try.o try.c
Setting d_c99_variadic_macros=define
Result: supported

but with "\n" in, I see:
Checking C99 variadic macros
| #include <stdio.h>
| #define foo(fmt, ...) printf(fmt, VA_ARGS)
| int main(void) { foo("%i
| ", 1234); return 0; }

gcc -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -c -o try.o try.c
try.c: In function ‘main’:
try.c:3:22: warning: missing terminating " character
int main(void) { foo("%i
^
try.c:4:1: warning: missing terminating " character
--

try.c:3:18: error: ‘foo’ undeclared (first use in this function); did you mean ‘feof’?
int main(void) { foo("%i
^~~
feof
try.c:3:18: note: each undeclared identifier is reported only once for each function it appears in
try.c:3:1: error: expected ‘;’ at end of input
int main(void) { foo("%i
^~~
try.c:3:1: error: expected declaration or statement at end of input
Setting d_c99_variadic_macros=undef
Result: missing

If I then change /bin/sh to point at bash, it works again.

The question is therefore whether the scripts should require bash, whether the "\n" should be removed and/or whether there are other issues?

@arsv
Copy link
Owner

arsv commented Feb 6, 2020

Ah, I see. This one is easy to fix, there's no need to have \n there at all, it's completely irrelevant for the test. I'll try running the rest with dash, the other diff chunks probably have similar causes.

Current versions are supposed to work with non-bash shells. The project did originally use #!/bin/bash but got switched to #!/bin/sh later, with code changes to avoid relying on bash-specific functionality.

@rpurdie
Copy link
Contributor

rpurdie commented Feb 6, 2020

We've done a lot more tests and whilst the bash/dash issue is definitely the cause of the variadic test change, we cannot isolate the other changes or reproduce them in an environment we can debug. It doesn't seem to be related to the bash/dash issue. The only thought we have right now is some kind of leakage of host config into the target config but how/where this happening, we don't know. Could they race against each other due to parallelism somehow on a loaded system?

@kanavin
Copy link
Contributor

kanavin commented Feb 6, 2020

I think we package configuration files for miniperl (native helper executable that is used in building target perl), which are specific for the host compiler and vary from one host to the next (xconfig.h, xconfig.sh and maybe more). I'm looking into fixing it.

@rossburton
Copy link
Author

rossburton commented Feb 6, 2020

I think we package configuration files for miniperl (native helper executable that is used in building target perl), which are specific for the host compiler and vary from one host to the next (xconfig.h, xconfig.sh and maybe more). I'm looking into fixing it.

That would explain why the package changes, yes. If xconfig.sh is specific to the host then we can definitely just not ship that and the bulk of the changes disappear (apart from the variadic one, which is fixed), right? Surely nothing needs xconfig.sh when installed.

Alex, you deserve a medal for noticing the obvious.

@rpurdie
Copy link
Contributor

rpurdie commented Feb 6, 2020

These differences are in config.h, not xconfig.h though so whilst that could be a problem, I don't think its the issue we're seeing?

@rpurdie
Copy link
Contributor

rpurdie commented Feb 6, 2020

Sorry, I clearly misread that output, the other issues are clearly host based, thanks for pointing out what was staring me in the face! :)

@kanavin
Copy link
Contributor

kanavin commented Feb 6, 2020

@rpurdie
Copy link
Contributor

rpurdie commented Feb 7, 2020

There is one further piece of fallout from the bash vs. dash issue which is the setting of trml. With one it is "\n" with the other it becomes "".

halstead pushed a commit to openembedded/openembedded-core that referenced this issue Feb 7, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

Signed-off-by: Richard Purdie <[email protected]>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Feb 7, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

Signed-off-by: Richard Purdie <[email protected]>
armcc pushed a commit to lgirdk/poky that referenced this issue Feb 7, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: 08f4a2f0ffeb2e8cc68f4c5ed098ec26e37cb9f8)

Signed-off-by: Richard Purdie <[email protected]>
kraj pushed a commit to YoeDistro/openembedded-core that referenced this issue Feb 7, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

Signed-off-by: Richard Purdie <[email protected]>
@arsv
Copy link
Owner

arsv commented Feb 7, 2020

Removed all \n uses. That trnl value isn't even used anywhere.

And yeah xconfig.h is a host-specific file that should not be packaged.

@rossburton
Copy link
Author

And yeah xconfig.h is a host-specific file that should not be packaged.

Note that we're not installing it explicitly, make install is doing that.

@kanavin
Copy link
Contributor

kanavin commented Feb 7, 2020

make install is basically installing *.h, so maybe it's best to delete the file after the fact like my patch does. Also note that some headers, perl.h in particular actually include xconfig.h (subject to some define which I didn't investigate), so this may break builds on target that involve that header.

@arsv
Copy link
Owner

arsv commented Feb 7, 2020

Since it happens in make install, then yeah deleting it after the fact is probably the best option. The alternative is patching installperl.

perl.h includes xconfig.h in place of config.h when -DUSE_CROSS_COMPILE is passed to the compiler, which only normally happens when building miniperl. That's how they switch between perl and mini-perl configurations. Should not be a problem unless somebody explicitly defines that somewhere.

halstead pushed a commit to openembedded/openembedded-core that referenced this issue Feb 7, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

Signed-off-by: Richard Purdie <[email protected]>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Feb 7, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: b305acfbd36b03774135e3d24b66004886c3b66f)

Signed-off-by: Richard Purdie <[email protected]>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Feb 8, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: b305acfbd36b03774135e3d24b66004886c3b66f)

Signed-off-by: Richard Purdie <[email protected]>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Feb 8, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

Signed-off-by: Richard Purdie <[email protected]>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Feb 8, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: 515bd7b36d6819f1b76a9c408931cfd223d05f04)

Signed-off-by: Richard Purdie <[email protected]>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Feb 8, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

Signed-off-by: Richard Purdie <[email protected]>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Feb 8, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: 482fd0d99f989b5a72a25bdf402fb2f219420b5d)

Signed-off-by: Richard Purdie <[email protected]>
jpuhlman pushed a commit to MontaVista-OpenSourceTechnology/poky that referenced this issue Feb 8, 2020
Source: poky
MR: 00000
Type: Integration
Disposition: Merged from poky
ChangeID: 2ac1632
Description:

Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: 482fd0d99f989b5a72a25bdf402fb2f219420b5d)

Signed-off-by: Richard Purdie <[email protected]>
Signed-off-by: Jeremy Puhlman <[email protected]>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Feb 8, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: 482fd0d)

Signed-off-by: Richard Purdie <[email protected]>
kraj pushed a commit to YoeDistro/poky-old that referenced this issue Feb 8, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: 482fd0d99f989b5a72a25bdf402fb2f219420b5d)

(From OE-Core rev: def3a9d748564883d71c506726554df622701b00)

Signed-off-by: Richard Purdie <[email protected]>
halstead pushed a commit to openembedded/openembedded-core that referenced this issue Feb 11, 2020
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: 482fd0d)

(From OE-Core rev: def3a9d)

Signed-off-by: Richard Purdie <[email protected]>
Signed-off-by: Armin Kuster <[email protected]>
jpuhlman pushed a commit to MontaVista-OpenSourceTechnology/poky that referenced this issue Feb 12, 2020
Source: poky
MR: 00000
Type: Integration
Disposition: Merged from poky
ChangeID: 02cbb68
Description:

Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: 482fd0d99f989b5a72a25bdf402fb2f219420b5d)

(From OE-Core rev: def3a9d748564883d71c506726554df622701b00)

(From OE-Core rev: 1f630fe43ec3c3e78c25f93d6badc8a35ff782ad)

Signed-off-by: Richard Purdie <[email protected]>
Signed-off-by: Armin Kuster <[email protected]>
Signed-off-by: Richard Purdie <[email protected]>
Signed-off-by: Jeremy Puhlman <[email protected]>
daregit pushed a commit to daregit/yocto-combined that referenced this issue May 22, 2024
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: 482fd0d99f989b5a72a25bdf402fb2f219420b5d)

Signed-off-by: Richard Purdie <[email protected]>
daregit pushed a commit to daregit/yocto-combined that referenced this issue May 22, 2024
Add a patch which handles the following issues:

a) Remove the \n from configure_attr.sh since it gets quoted differently depending on
   whether the shell is bash or dash which can cause the test result to be incorrect.
   Reported upstream: arsv/perl-cross#87

b) Sort the order of the module lists from configure_mods.sh since otherwise
   the result isn't the same leading to makefile differences.
   Reported upstream: arsv/perl-cross#88

c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst
   there for good measure)
   This needs to go to upstream perl (not done)

d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash
   and "" with dash
   Reported upstream: arsv/perl-cross#87

(From OE-Core rev: 482fd0d99f989b5a72a25bdf402fb2f219420b5d)

Signed-off-by: Richard Purdie <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants