Bug 2218692

Summary: haxe is incompatible with OCaml 5.x
Product: [Fedora] Fedora Reporter: Jerry James <loganjerry>
Component: haxeAssignee: Andy Li <andy>
Status: NEW --- QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 39CC: andy, rjones
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Patch for partial OCaml 5.0 compatibility none

Description Jerry James 2023-06-29 21:05:52 UTC
Richard Jones and I have been preparing to update to OCaml 5.0 in Rawhide.  Test builds are available in a COPR: https://copr.fedorainfracloud.org/coprs/jjames/OCaml5/.  We now have almost all OCaml-using packages built in the COPR, with the exception of half a dozen packages we intend to retire.

Haxe is the sole remaining package, but it is not compatible with OCaml 5.0.  I have a patch that fixes many of the incompatibilities, which I will attach to this bug.  However, even with that patch, building fails:

/usr/bin/ld: libs/objsize/libobjsize_stubs.a(c_objsize.o): in function
`c_rec_objsize':
/builddir/build/BUILD/haxe-4.3.1/_build/default/libs/objsize/c_objsize.c:359:
undefined reference to `caml_page_table_lookup'
/usr/bin/ld: libs/objsize/libobjsize_stubs.a(c_objsize.o): in function
`restore_colors':
/builddir/build/BUILD/haxe-4.3.1/_build/default/libs/objsize/c_objsize.c:387:
undefined reference to `caml_page_table_lookup'
/usr/bin/ld: libs/objsize/libobjsize_stubs.a(c_objsize.o): in function
`c_objsize':
/builddir/build/BUILD/haxe-4.3.1/_build/default/libs/objsize/c_objsize.c:450:
undefined reference to `caml_page_table_lookup'
/usr/bin/ld: /builddir/build/BUILD/haxe-4.3.1/_build/default/libs/objsize/c_objsize.c:413:
undefined reference to `caml_page_table_lookup'
/usr/bin/ld: /builddir/build/BUILD/haxe-4.3.1/_build/default/libs/objsize/c_objsize.c:426:
undefined reference to `caml_page_table_lookup'
/usr/bin/ld: libs/objsize/libobjsize_stubs.a(c_objsize.o):/builddir/build/BUILD/haxe-4.3.1/_build/default/libs/objsize/c_objsize.c:441:
more undefined references to `caml_page_table_lookup' follow

See https://github.com/ocaml-multicore/ocaml-multicore/issues/637; caml_page_table_lookup is not and will not be available in OCaml 5.x.

Reproducible: Always

Comment 1 Jerry James 2023-06-29 21:07:05 UTC
Created attachment 1973257 [details]
Patch for partial OCaml 5.0 compatibility

Comment 2 Andy Li 2023-07-05 15:49:33 UTC
Forwarded to upstream: https://github.com/HaxeFoundation/haxe/issues/11271

Comment 3 Fedora Release Engineering 2023-08-16 08:11:36 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 39 development cycle.
Changing version to 39.