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
Building perl 5.22.1 64bit, On Solaris 10, with GCC4... test t/op/threads-dirh.t fails test 1. #15197
Comments
From rj7252@att.comThis is a bug report for perl from rj7252@att.com, Building perl 5.22.1 64bit, On Solaris 10, with GCC4... during "make test", one test fails. $ ./perl harness -v op/threads-dirh.t Test Summary Report op/threads-dirh.t (Wstat: 7424 Tests: 1 Failed: 1) NOTE: Without ccflags using "-D__EXTENSIONS__ -D_POSIX_C_SOURCE=200112L", stuff either did not compile and/or there were lots of warnings. Flags: Site configuration information for perl 5.22.1: Configured by gfp-ip at Wed Feb 24 16:31:47 GMT 2016. Summary of my perl5 (revision 5 version 22 subversion 1) configuration: Platform: @INC for perl 5.22.1: Environment for perl 5.22.1: |
From @tonycozOn Wed Feb 24 15:01:53 2016, rj7252@att.com wrote:
I don't have access to Solaris 10, but I do know dirfd() is detected on Solaris 11: $ perl -V:d_dirfd If you do the above with your system perl, do you get the same result? I've never needed all those extra defines on Solaris 11, but I normally build with the workshop compiler. Tony |
The RT System itself - Status changed from 'new' to 'open' |
From rj7252@att.com$ perl -V:d_dirfd I am wondering what is the criteria that Perl is looking for to "define" this? If I know that I could see why it's failing. -----Original Message----- On Wed Feb 24 15:01:53 2016, rj7252@att.com wrote:
I don't have access to Solaris 10, but I do know dirfd() is detected on Solaris 11: $ perl -V:d_dirfd If you do the above with your system perl, do you get the same result? I've never needed all those extra defines on Solaris 11, but I normally build with the workshop compiler. Tony |
From @tonycozOn Wed Mar 02 11:23:04 2016, rj7252@att.com wrote:
On Solaris Configure appears to search libc with nm, and if not found, build a simple test program to check for the symbol. Simple things to check: - is there a man page for dirfd? 2.11 has one, if 2.10 has the manpage it should have the function - try forcing d_dirfd enabled: ./Configure ... -Dd_dirfd If that fails at link/runtime because it can't find the symbol, then you don't have it. Tony |
From rj7252@att.comFrom looking at other threads, Solaris 8, 9 and 10 and some other OS do not have dirfd...so shouldn't this be "skip" instead of "fail" or at least xfail or some other notice that this it's expected to not work on Solaris 10? -----Original Message----- On Wed Mar 02 11:23:04 2016, rj7252@att.com wrote:
On Solaris Configure appears to search libc with nm, and if not found, build a simple test program to check for the symbol. Simple things to check: - is there a man page for dirfd? 2.11 has one, if 2.10 has the manpage it should have the function - try forcing d_dirfd enabled: ./Configure ... -Dd_dirfd If that fails at link/runtime because it can't find the symbol, then you don't have it. Tony |
From @tonycozOn Fri Mar 04 05:58:24 2016, rj7252@att.com wrote:
Looking closer at the code, it should be falling back to using the dd_fd member of the DIR structure. From looking at the headers on OmniOS (which appears to have an older set of headers): #if !defined(__XOPEN_OR_POSIX) typedef struct { #else typedef struct { #endif /* !defined(__XOPEN_OR_POSIX) */ From sys/feature_tests.h: #if defined(_XOPEN_SOURCE) || defined(_POSIX_C_SOURCE) So your -D_POSIX_C_SOURCE=200112L on the Configure command-line appears to be preventing the detection of dd_fd. What do you see for d_dir_dd_fd from your system perl: perl -V:d_dir_dd_fd ? I suspect we need to add a Configure test for d_fd in the DIR structure. Tony |
Migrated from rt.perl.org#127611 (status was 'open')
Searchable as RT127611$
The text was updated successfully, but these errors were encountered: