<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <p>On 2024-05-16 11:34, Suchismith Roy wrote:</p>
    <blockquote type="cite" cite="mid:DS0PR15MB5525B5CEFA10E9B6BF14508C96ED2@DS0PR15MB5525.namprd15.prod.outlook.com">
      <meta name="Generator" content="Microsoft Word 15 (filtered medium)">
      <div class="WordSection1">
        <p class="MsoNormal"><span>Hi Magnus
            <br>
            Could you provide an existing PR/implementation I can refer
            from ? <br>
          </span></p>
      </div>
    </blockquote>
    <p>There is no such previous all-encompassing library to just
      "copy". In fact, the core problem here is that we are even missing
      such a place to put common code.</p>
    <p>This is not a suitable beginner's bug in the JDK. Solving this is
      as much about politics and policy as about a technical
      implementation. <br>
    </p>
    <p>/Magnus<br>
    </p>
    <blockquote type="cite" cite="mid:DS0PR15MB5525B5CEFA10E9B6BF14508C96ED2@DS0PR15MB5525.namprd15.prod.outlook.com">
      <div class="WordSection1">
        <p class="MsoNormal"><span>
            Thanks<br>
            Suchismith Roy</span></p>
        <p class="MsoNormal"><span> </span></p>
        <div id="mail-editor-reference-message-container">
          <div>
            <div>
              <p class="MsoNormal"><b><span>From:
                  </span></b><span>build-dev
                  <a class="moz-txt-link-rfc2396E" href="mailto:build-dev-retn@openjdk.org"><build-dev-retn@openjdk.org></a> on behalf of
                  Suchismith Roy <a class="moz-txt-link-rfc2396E" href="mailto:Suchismith.Roy@ibm.com"><Suchismith.Roy@ibm.com></a><br>
                  <b>Date: </b>Wednesday, 8 May 2024 at 11:47</span><span> </span><span>PM<br>
                  <b>To: </b>Magnus Ihse Bursie
                  <a class="moz-txt-link-rfc2396E" href="mailto:magnus.ihse.bursie@oracle.com"><magnus.ihse.bursie@oracle.com></a>, Thomas Stüfe
                  <a class="moz-txt-link-rfc2396E" href="mailto:thomas.stuefe@gmail.com"><thomas.stuefe@gmail.com></a><br>
                  <b>Cc: </b><a class="moz-txt-link-abbreviated" href="mailto:build-dev@openjdk.org">build-dev@openjdk.org</a>
                  <a class="moz-txt-link-rfc2396E" href="mailto:build-dev@openjdk.org"><build-dev@openjdk.org></a><br>
                  <b>Subject: </b>[EXTERNAL] RE: JDK-8170635 -- adding
                  a base library to java</span></p>
            </div>
            <div>
              <p class="MsoNormal"><span>Thanks for the reply @Magnus
                  Ihse Bursie Is there any example of PRs which create
                  such libraries that I can refer to ? Is OSAL similar
                  to how os.</span><span> </span><span>cpp is defined
                  and respective platforms implement them ? From: Magnus
                  Ihse Bursie <magnus.</span><span> </span><span>ihse.</span><span> </span><span>bursie@</span><span> </span><span>oracle.</span><span> </span><span>com>
                </span></p>
            </div>
            <div>
              <p class="MsoNormal"><span>ZjQcmQRYFpfptBannerStart</span></p>
            </div>
            <div id="pfptBannerrj3uuo9">
              <div id="pfptBannerrj3uuo9">
                <div id="pfptBannerrj3uuo9">
                  <p class="MsoNormal"><b><span lang="EN">This Message
                        Is From an External Sender
                      </span></b></p>
                </div>
                <div id="pfptBannerrj3uuo9">
                  <p class="MsoNormal"><span lang="EN">This message came
                      from outside your organization.
                    </span></p>
                </div>
              </div>
              <div id="pfptBannerrj3uuo9">
                <p class="MsoNormal"><span lang="EN"><a href="https://us-phishalarm-ewt.proofpoint.com/EWT/v1/AdhS1Rd-!-_FV_jY-Xk9bWls5LkTAMRolu--mVCfFT62NUiAr6uTAaHK_Uj80ADQPMZF5hepJJDlyrLYM6RePibMU4Y6qqCHB_FyMAOMT1-6w51TnhKgk5P1piB28UTKawX9Nsf0fQPvOcpq_0c90XA$" moz-do-not-send="true"><span lang="EN-GB"></span></a></span></p>
                <div>
                  <p class="MsoNormal"><span lang="EN"><a href="https://us-phishalarm-ewt.proofpoint.com/EWT/v1/AdhS1Rd-!-_FV_jY-Xk9bWls5LkTAMRolu--mVCfFT62NUiAr6uTAaHK_Uj80ADQPMZF5hepJJDlyrLYM6RePibMU4Y6qqCHB_FyMAOMT1-6w51TnhKgk5P1piB28UTKawX9Nsf0fQPvOcpq_0c90XA$" moz-do-not-send="true"><span>Report Suspicious</span><span lang="EN-GB"></span></a></span></p>
                </div>
                <p class="MsoNormal"><span lang="EN"> </span></p>
              </div>
              <div>
                <p class="MsoNormal"><span lang="EN"> </span><span lang="EN"></span></p>
              </div>
            </div>
            <div>
              <p class="MsoNormal"><span>ZjQcmQRYFpfptBannerEnd</span></p>
            </div>
            <div>
              <p class="MsoNormal"><span>Thanks for the reply
                  <a id="OWAAM00707701E6B7074FB8312958A31B630C" href="mailto:magnus.ihse.bursie@oracle.com" moz-do-not-send="true"><span>@Magnus Ihse Bursie</span></a><br>
                  Is there any example of PRs which create such
                  libraries that I can refer to ? <br>
                  Is OSAL similar to how os.cpp is defined and
                  respective platforms implement them ?
                </span></p>
              <p class="MsoNormal"><span> </span></p>
              <div id="mail-editor-reference-message-container">
                <div>
                  <div>
                    <p class="MsoNormal"><b><span>From:
                        </span></b><span>Magnus Ihse Bursie
                        <a class="moz-txt-link-rfc2396E" href="mailto:magnus.ihse.bursie@oracle.com"><magnus.ihse.bursie@oracle.com></a><br>
                        <b>Date: </b>Tuesday, 7 May 2024 at 6:18</span><span> </span><span>PM<br>
                        <b>To: </b>Thomas Stüfe
                        <a class="moz-txt-link-rfc2396E" href="mailto:thomas.stuefe@gmail.com"><thomas.stuefe@gmail.com></a>, Suchismith Roy
                        <a class="moz-txt-link-rfc2396E" href="mailto:Suchismith.Roy@ibm.com"><Suchismith.Roy@ibm.com></a><br>
                        <b>Cc: </b><a class="moz-txt-link-abbreviated" href="mailto:build-dev@openjdk.org">build-dev@openjdk.org</a>
                        <a class="moz-txt-link-rfc2396E" href="mailto:build-dev@openjdk.org"><build-dev@openjdk.org></a><br>
                        <b>Subject: </b>[EXTERNAL] Re: JDK-8170635 --
                        adding a base library to java</span></p>
                  </div>
                  <div>
                    <p class="MsoNormal"><span>On 2024-05-06 16:36,
                        Thomas Stüfe wrote:<br>
                        <br>
                        > Not sure if you meant to address this mail
                        to a specific person. I <br>
                        > assume with proposal you mean this: <br>
                        > <a href="https://mail.openjdk.org/pipermail/build-dev/2016-September/017746.html" moz-do-not-send="true" class="moz-txt-link-freetext">https://mail.openjdk.org/pipermail/build-dev/2016-September/017746.html</a> 
                        ?<br>
                        ><br>
                        > If yes, my proposal was to move dladdr out
                        of the OpenJDK code base <br>
                        > into an independent library that would be
                        maintained by IBM, <br>
                        > hopefully, and would be a prerequisite for
                        building the JDK.<br>
                        > If no, whose proposal did you mean?<br>
                        <br>
                        Oh, this is an old bug you're picking up
                        Suchismith!<br>
                        <br>
                        I read through the discussion from 2016. It
                        seems that the suggestion to <br>
                        make an external 3rd party library was only
                        supported by Thomas, and <br>
                        that the general agreement among the other
                        participants was that we <br>
                        should have a general, base-level "OSAL" (OS
                        abstraction library) in the <br>
                        JDK, that could be used by both Hotspot and
                        libjli, as well as other JDK <br>
                        libraries.<br>
                        <br>
                        Creating such a library would be a much larger
                        effort than just adding a <br>
                        AIX implementation of dladdr to it, if it
                        existed. The current structure <br>
                        of the JDK does not readily lend itself to such
                        a library, neither in <br>
                        terms of source code layout nor build system.<br>
                        <br>
                        With that said, I do think it would be good if
                        we had such a library. <br>
                        There are more cases than the AIX dladdr issue
                        that is duplicated, like <br>
                        jio_snprintf() and friends. This has actually
                        caused some headaches when <br>
                        doing static builds, since duplication of these
                        functions are not <br>
                        allowed when creating a single linked instance.
                        (The current duplication <br>
                        in dynamic libraries is just ugly and bad
                        programming, not a compilation <br>
                        error.)<br>
                        <br>
                        But it is a much larger question than just
                        fixing an AIX issue.<br>
                        <br>
                        /Magnus</span></p>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
  </body>
</html>