[MacPorts] #69922: openjdk8: arm patch has broken ppc

MacPorts noreply at macports.org
Mon May 6 16:09:02 UTC 2024


#69922: openjdk8: arm patch has broken ppc
--------------------------+----------------------
 Reporter:  barracuda156  |      Owner:  (none)
     Type:  defect        |     Status:  new
 Priority:  Normal        |  Milestone:
Component:  ports         |    Version:  2.9.3
 Keywords:  powerpc       |       Port:  openjdk8
--------------------------+----------------------
 Earlier `openjdk8` has been building with minimal patches pretty far
 (though failing on AWT libs down the road), but current revision makes it
 fail in the very beginning of the build.
 It looks like arm patch should not be used unconditionally, since it
 introduces a conflict in definitions:

 {{{
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.hpp:38:44:
 note:   initializing argument 1 of 'static void os::atomic_copy64(volatile
 void*, volatile void*)'
    38 |   static void atomic_copy64(volatile void *src, volatile void
 *dst) {
       |                             ~~~~~~~~~~~~~~~^~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp:423:31:
 error: invalid conversion from 'const void*' to 'volatile void*'
 [-fpermissive]
   423 |         os::atomic_copy64(from--, to--);
       |                           ~~~~^~
       |                               |
       |                               const void*
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.hpp:38:44:
 note:   initializing argument 1 of 'static void os::atomic_copy64(volatile
 void*, volatile void*)'
    38 |   static void atomic_copy64(volatile void *src, volatile void
 *dst) {
       |                             ~~~~~~~~~~~~~~~^~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp: At
 global scope:
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp:427:8:
 error: conflicting declaration of C function 'void
 _Copy_arrayof_conjoint_bytes(const HeapWord*, HeapWord*, size_t)'
   427 |   void _Copy_arrayof_conjoint_bytes(const HeapWord* from,
       |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/share/vm/utilities/copy.hpp:49:8: note:
 previous declaration 'void _Copy_arrayof_conjoint_bytes(HeapWord*,
 HeapWord*, size_t)'
    49 |   void _Copy_arrayof_conjoint_bytes  (HeapWord* from, HeapWord*
 to, size_t count);
       |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp:432:8:
 error: conflicting declaration of C function 'void
 _Copy_arrayof_conjoint_jshorts(const HeapWord*, HeapWord*, size_t)'
   432 |   void _Copy_arrayof_conjoint_jshorts(const HeapWord* from,
       |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/share/vm/utilities/copy.hpp:50:8: note:
 previous declaration 'void _Copy_arrayof_conjoint_jshorts(HeapWord*,
 HeapWord*, size_t)'
    50 |   void _Copy_arrayof_conjoint_jshorts(HeapWord* from, HeapWord*
 to, size_t count);
       |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp:437:8:
 error: conflicting declaration of C function 'void
 _Copy_arrayof_conjoint_jints(const HeapWord*, HeapWord*, size_t)'
   437 |   void _Copy_arrayof_conjoint_jints(const HeapWord* from,
       |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/share/vm/utilities/copy.hpp:51:8: note:
 previous declaration 'void _Copy_arrayof_conjoint_jints(HeapWord*,
 HeapWord*, size_t)'
    51 |   void _Copy_arrayof_conjoint_jints  (HeapWord* from, HeapWord*
 to, size_t count);
       |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp:442:8:
 error: conflicting declaration of C function 'void
 _Copy_arrayof_conjoint_jlongs(const HeapWord*, HeapWord*, size_t)'
   442 |   void _Copy_arrayof_conjoint_jlongs(const HeapWord* from,
       |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_java_openjdk8/openjdk8/work
 /jdk8u-jdk8u372-ga/hotspot/src/share/vm/utilities/copy.hpp:52:8: note:
 previous declaration 'void _Copy_arrayof_conjoint_jlongs(HeapWord*,
 HeapWord*, size_t)'
    52 |   void _Copy_arrayof_conjoint_jlongs (HeapWord* from, HeapWord*
 to, size_t count);
       |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 }}}

 This fails with gcc-4.2 and gcc13 alike. I cannot recall seeing this error
 before.
 arm patches were introduced in https://github.com/macports/macports-
 ports/commit/674c6c47f1d12c3025ca2ddc231d06270f684222
 And yes, I did not touch this for a year, so just now bumped into the
 breakage.

-- 
Ticket URL: <https://trac.macports.org/ticket/69922>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list