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

MacPorts noreply at macports.org
Mon May 6 17:25:49 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
Resolution:                |   Keywords:  powerpc
      Port:  openjdk8      |
---------------------------+---------------------
Description changed by ryandesign:

Old description:

> 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.

New description:

 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 [674c6c47f1d12c3025ca2ddc231d06270f684222
 /macports-ports]
 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#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list