Hi,

On Thu, 6 Jan 2022, at 20:12, Saul Wold wrote:
> From: Saul Wold <[email protected]>
>
> When the tranisiton to perl-cross occured, the threading define
> seems to have been missed.  The perl tests for threading where
> simply skipped, so there was no direct failures.  This was verified
> by running perl ptest before and after the change to see PASS vs SKIP
> results of threaded related tests.
>
> NOTE: Perl officially discourges the use of threads, so this
> functionality maybe depercated in the future [0][1]
>
> v2: adds the usethreads to native and nativesdk. This was tested by
> builing postresql and rrdtool which use perl and automake.
>
> [0] https://perldoc.perl.org/5.34.0-RC2/threads#WARNING
> [1] https://perldoc.perl.org/perlpolicy#discouraged
>
> Signed-off-by: Saul Wold <[email protected]>
> ---
>  meta/recipes-devtools/perl/perl_5.34.0.bb | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/meta/recipes-devtools/perl/perl_5.34.0.bb 
> b/meta/recipes-devtools/perl/perl_5.34.0.bb
> index a6ae80f07e1..e4bcfe3ce69 100644
> --- a/meta/recipes-devtools/perl/perl_5.34.0.bb
> +++ b/meta/recipes-devtools/perl/perl_5.34.0.bb
> @@ -53,6 +53,7 @@ do_configure:class-target() {
>      ./configure --prefix=${prefix} --libdir=${libdir} \
>      --target=${TARGET_SYS} \
>      -Duseshrplib \
> +    -Dusethreads \
>      -Dsoname=libperl.so.5 \
>      -Dvendorprefix=${prefix} \
>      -Darchlibexp=${STAGING_LIBDIR}/perl5/${PV}/${TARGET_ARCH}-linux \
> @@ -80,6 +81,7 @@ do_configure:class-nativesdk() {
>      ./configure --prefix=${prefix} \
>      --target=${TARGET_SYS} \
>      -Duseshrplib \
> +    -Dusethreads \
>      -Dsoname=libperl.so.5 \
>      -Dvendorprefix=${prefix} \
>      -Darchlibexp=${STAGING_LIBDIR}/perl5/${PV}/${TARGET_ARCH}-linux \
> @@ -94,6 +96,7 @@ do_configure:class-native() {
>      ./configure --prefix=${prefix} \
>      -Dbin=${bindir}/perl-native \
>      -Duseshrplib \
> +    -Dusethreads \
>      -Dsoname=libperl.so.5 \
>      -Dvendorprefix=${prefix} \
>      -Ui_xlocale \

This patch seems to break perl-native with musl:

| /[...]/tmp/hosttools/ld: perlmini.c:(.text+0x8298): undefined reference to 
`PL_perldb'
| /[...]/tmp/hosttools/ld: perlmini.c:(.text+0x82a4): undefined reference to 
`PL_DBsingle'
| /[...]/tmp/hosttools/ld: perlmini.c:(.text+0x82b1): undefined reference to 
`PL_DBcontrol'
| /[...]/tmp/hosttools/ld: perlmini.c:(.text+0x82bf): undefined reference to 
`PL_initav'
| /[...]/tmp/hosttools/ld: perlmini.c:(.text+0x82d2): undefined reference to 
`PL_phase'
| /[...]/tmp/hosttools/ld: perlmini.o: in function `Perl_my_failure_exit':
| perlmini.c:(.text+0x831d): undefined reference to `PL_statusvalue'
| /[...]/tmp/hosttools/ld: perlmini.c:(.text+0x8336): undefined reference to 
`PL_exit_flags'
| /[...]/tmp/hosttools/ld: perlmini.o: in function `Perl_xs_boot_epilog':
| perlmini.c:(.text+0x83a7): undefined reference to `PL_unitcheckav'
| /[...]/tmp/hosttools/ld: perlmini.c:(.text+0x83b9): undefined reference to 
`PL_scopestack_ix'
| /[...]/tmp/hosttools/ld: perlmini.c:(.text+0x83c7): undefined reference to 
`PL_stack_base'
| /[...]/tmp/hosttools/ld: perlmini.c:(.text+0x83ce): undefined reference to 
`PL_sv_immortals'
| /[...]/tmp/hosttools/ld: perlmini.c:(.text+0x83e6): undefined reference to 
`PL_stack_sp'
| collect2: error: ld returned 1 exit status
| make[1]: *** [Makefile:99: miniperl] Error 1
| make[1]: Leaving directory 
'/[...]/tmp/work/x86_64-linux/perl-native/5.34.0-r0/perl-5.34.0'
| make: *** [Makefile:79: all] Error 2
| ERROR: oe_runmake failed
| WARNING: 
/[...]/work/x86_64-linux/perl-native/5.34.0-r0/temp/run.do_compile.685819:191 
exit 1 from 'exit 1'
| WARNING: Backtrace (BB generated script):
|       #1: bbfatal_log, 
/[...]/tmp/work/x86_64-linux/perl-native/5.34.0-r0/temp/run.do_compile.685819, 
line 191
|       #2: die, 
/[...]/tmp/work/x86_64-linux/perl-native/5.34.0-r0/temp/run.do_compile.685819, 
line 175
|       #3: oe_runmake, 
/[...]/tmp/work/x86_64-linux/perl-native/5.34.0-r0/temp/run.do_compile.685819, 
line 170
|       #4: do_compile, 
/[...]/tmp/work/x86_64-linux/perl-native/5.34.0-r0/temp/run.do_compile.685819, 
line 148
|       #5: main, 
/[...]/work/x86_64-linux/perl-native/5.34.0-r0/temp/run.do_compile.685819, line 
195

Andrei
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#160346): 
https://lists.openembedded.org/g/openembedded-core/message/160346
Mute This Topic: https://lists.openembedded.org/mt/88246693/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to