From 83c5b2f1bdfbe1831f1465bd6558a77dbb1005b8f844be694becfdc2830c0c68 Mon Sep 17 00:00:00 2001 From: Fridrich Strba Date: Fri, 25 Feb 2022 12:05:23 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/Java:Factory/java-1_8_0-openj9?expand=0&rev=66 --- java-1_8_0-openj9.spec | 5 +---- libdwarf-fix.patch | 51 +++++++++++++++++++++++++++++------------- 2 files changed, 36 insertions(+), 20 deletions(-) diff --git a/java-1_8_0-openj9.spec b/java-1_8_0-openj9.spec index 84358fd..9dfcf75 100644 --- a/java-1_8_0-openj9.spec +++ b/java-1_8_0-openj9.spec @@ -534,7 +534,7 @@ pushd %{imagesdir}/j2sdk-image done # Install demos and samples. - cp -a demo %{buildroot}%{_jvmdir}/%{sdkdir} + cp -a ../../jdk/demo %{buildroot}%{_jvmdir}/%{sdkdir} # enable short-circuit mkdir -p sample/rmi [ -f bin/java-rmi.cgi ] && mv bin/java-rmi.cgi sample/rmi @@ -777,8 +777,6 @@ update-alternatives \ %{_mandir}/man1/jconsole-%{sdklnk}.1$ext \ --slave %{_mandir}/man1/jdb.1$ext jdb.1$ext \ %{_mandir}/man1/jdb-%{sdklnk}.1$ext \ - --slave %{_mandir}/man1/jmap.1$ext jmap.1$ext \ - %{_mandir}/man1/jmap-%{sdklnk}.1$ext \ --slave %{_mandir}/man1/jrunscript.1$ext jrunscript.1$ext \ %{_mandir}/man1/jrunscript-%{sdklnk}.1$ext \ --slave %{_mandir}/man1/jsadebugd.1$ext jsadebugd.1$ext \ @@ -936,7 +934,6 @@ fi %{_mandir}/man1/jconsole-%{sdklnk}.1%{?ext_man} %{_mandir}/man1/jdb-%{sdklnk}.1%{?ext_man} %{_mandir}/man1/jdeps-%{sdklnk}.1%{?ext_man} -%{_mandir}/man1/jmap-%{sdklnk}.1%{?ext_man} %{_mandir}/man1/jrunscript-%{sdklnk}.1%{?ext_man} %{_mandir}/man1/jsadebugd-%{sdklnk}.1%{?ext_man} %{_mandir}/man1/native2ascii-%{sdklnk}.1%{?ext_man} diff --git a/libdwarf-fix.patch b/libdwarf-fix.patch index 0ff4b8d..1f23ba6 100644 --- a/libdwarf-fix.patch +++ b/libdwarf-fix.patch @@ -1,66 +1,85 @@ --- a/omr/ddr/lib/ddr-scanner/dwarf/DwarfScanner.cpp +++ b/omr/ddr/lib/ddr-scanner/dwarf/DwarfScanner.cpp -@@ -1495,7 +1495,12 @@ DwarfScanner::traverse_cu_in_debug_section(Symbol_IR *ir) - Dwarf_Half versionStamp = 0; - Dwarf_Unsigned abbrevOffset = 0; +@@ -1497,6 +1497,13 @@ DwarfScanner::traverse_cu_in_debug_section(Symbol_IR *ir) Dwarf_Half addressSize = 0; + Dwarf_Unsigned nextCUheader = 0; + Dwarf_Error error = NULL; ++#ifdef DW_LIBDWARF_VERSION_MAJOR + Dwarf_Half lengthSize = 0; + Dwarf_Half extensionSize = 0; + Dwarf_Sig8 typeSignature; + Dwarf_Unsigned typeOffset = 0; - Dwarf_Unsigned nextCUheader = 0; + Dwarf_Half nextCUheaderType = 0; - Dwarf_Error error = NULL; ++#endif /* Go over each cu header. */ -@@ -1504,7 +1509,7 @@ DwarfScanner::traverse_cu_in_debug_section(Symbol_IR *ir) + while (DDR_RC_OK == rc) { +@@ -1504,7 +1511,11 @@ DwarfScanner::traverse_cu_in_debug_section(Symbol_IR *ir) _typeOffsetMap.clear(); _ir = &newIR; -- int ret = dwarf_next_cu_header(_debug, &cuHeaderLength, &versionStamp, &abbrevOffset, &addressSize, &nextCUheader, &error); ++#ifdef DW_LIBDWARF_VERSION_MAJOR + int ret = dwarf_next_cu_header_d(_debug, true, &cuHeaderLength, &versionStamp, &abbrevOffset, &addressSize, &lengthSize, &extensionSize, &typeSignature, &typeOffset, &nextCUheader, &nextCUheaderType, &error); ++#else + int ret = dwarf_next_cu_header(_debug, &cuHeaderLength, &versionStamp, &abbrevOffset, &addressSize, &nextCUheader, &error); ++#endif if (DW_DLV_ERROR == ret) { ERRMSG("Failed to get next dwarf CU header."); rc = DDR_RC_ERROR; -@@ -1518,7 +1523,7 @@ DwarfScanner::traverse_cu_in_debug_section(Symbol_IR *ir) +@@ -1518,7 +1529,11 @@ DwarfScanner::traverse_cu_in_debug_section(Symbol_IR *ir) Dwarf_Die childDie = NULL; /* Expect the CU to have a single sibling - a DIE */ -- if (DW_DLV_ERROR == dwarf_siblingof(_debug, NULL, &cuDie, &error)) { ++#ifdef DW_LIBDWARF_VERSION_MAJOR + if (DW_DLV_ERROR == dwarf_siblingof_b(_debug, NULL, true, &cuDie, &error)) { ++#else + if (DW_DLV_ERROR == dwarf_siblingof(_debug, NULL, &cuDie, &error)) { ++#endif ERRMSG("Getting sibling of CU: %s\n", dwarf_errmsg(error)); rc = DDR_RC_ERROR; break; -@@ -1617,12 +1622,12 @@ DwarfScanner::scanFile(OMRPortLibrary *portLibrary, Symbol_IR *ir, const char *f +@@ -1617,12 +1632,20 @@ DwarfScanner::scanFile(OMRPortLibrary *portLibrary, Symbol_IR *ir, const char *f } if (DDR_RC_OK == rc) { -- Dwarf_Unsigned access = DW_DLC_READ; ++#ifdef DW_LIBDWARF_VERSION_MAJOR + unsigned int groupNumber = DW_GROUPNUMBER_ANY; ++#else + Dwarf_Unsigned access = DW_DLC_READ; ++#endif Dwarf_Handler errhand = 0; Dwarf_Ptr errarg = NULL; intptr_t native_fd = omrfile_convert_omrfile_fd_to_native_fd(fd); DwarfScanner::scanFileName = filepath; -- res = dwarf_init((int)native_fd, access, errhand, errarg, &_debug, &error); ++#ifdef DW_LIBDWARF_VERSION_MAJOR + res = dwarf_init_b((int)native_fd, groupNumber, errhand, errarg, &_debug, &error); ++#else + res = dwarf_init((int)native_fd, access, errhand, errarg, &_debug, &error); ++#endif if (DW_DLV_OK != res) { ERRMSG("Failed to initialize libDwarf scanning %s: %s\nExiting...\n", filepath, dwarf_errmsg(error)); if (NULL != error) { -@@ -1640,7 +1645,7 @@ DwarfScanner::scanFile(OMRPortLibrary *portLibrary, Symbol_IR *ir, const char *f +@@ -1640,7 +1663,11 @@ DwarfScanner::scanFile(OMRPortLibrary *portLibrary, Symbol_IR *ir, const char *f DEBUGPRINTF("Unloading libDwarf"); -- res = dwarf_finish(_debug, &error); ++#ifdef DW_LIBDWARF_VERSION_MAJOR + res = dwarf_finish(_debug); ++#else + res = dwarf_finish(_debug, &error); ++#endif if (DW_DLV_OK != res) { ERRMSG("Failed to Unload libDwarf: %s\nExiting...\n", dwarf_errmsg(error)); if (NULL != error) { -@@ -1681,7 +1686,7 @@ DwarfScanner::getNextSibling(Dwarf_Die *die) +@@ -1681,7 +1708,11 @@ DwarfScanner::getNextSibling(Dwarf_Die *die) Dwarf_Error err = NULL; /* Get the next sibling and free the previous one if successful. */ -- int ret = dwarf_siblingof(_debug, *die, &nextSibling, &err); ++#ifdef DW_LIBDWARF_VERSION_MAJOR + int ret = dwarf_siblingof_b(_debug, *die, true, &nextSibling, &err); ++#else + int ret = dwarf_siblingof(_debug, *die, &nextSibling, &err); ++#endif if (DW_DLV_ERROR == ret) { ERRMSG("Getting sibling of die:%s\n", dwarf_errmsg(err)); } else if (DW_DLV_OK == ret) {