-
Notifications
You must be signed in to change notification settings - Fork 29
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
Comments
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.
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. |
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:
but with "\n" in, I see:
try.c:3:18: error: ‘foo’ undeclared (first use in this function); did you mean ‘feof’? 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? |
Ah, I see. This one is easy to fix, there's no need to have Current versions are supposed to work with non-bash shells. The project did originally use |
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? |
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 Alex, you deserve a medal for noticing the obvious. |
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? |
Sorry, I clearly misread that output, the other issues are clearly host based, thanks for pointing out what was staring me in the face! :) |
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 "". |
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]>
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]>
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]>
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]>
Removed all 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 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. |
Since it happens in perl.h includes |
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]>
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]>
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]>
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]>
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]>
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]>
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]>
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]>
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]>
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]>
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]>
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]>
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]>
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]>
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:
The hunch is that the host compiler is being used when probing, instead of the cross. Do you have any thoughts or ideas?
The text was updated successfully, but these errors were encountered: