RFR: JDK-8199682 Clean up building the saproc library
Sundararajan Athijegannathan
sundararajan.athijegannathan at oracle.com
Fri Mar 16 05:14:57 UTC 2018
Renaming sawindbg as saproc sounds odd. For Linux, Solaris/Unix, we
either use /proc & libproc, so calling saproc for those makes sense. But
Windows? We have a separate debugger class to load platform specific
native library. What is the reason for uniform naming?
-Sundar
On 16/03/18, 12:19 AM, Magnus Ihse Bursie wrote:
>
>
> On 2018-03-15 19:39, Erik Joelsson wrote:
>> Looks good to me.
>>
>> The removed source files, are those some kind of tests?
> I don't really know; they have been excluded from the build for all
> time. My guess is that the Bsd* stuff is, like in the case of the
> sound libraries, bsd-based stuff that arrived with the mac port (but
> disabled). The test.c is a trivial main() method which looks more like
> a left-over adhoc testing from the initial developer. Perhaps someone
> wants to turn it into a proper test, but it seems like it's not much
> even to start with. (And hopefully we have much better real test
> coverage of this now.)
>
> /Magnus
>>
>> /Erik
>>
>>
>> On 2018-03-15 11:22, Magnus Ihse Bursie wrote:
>>> The saproc library has historically been built in quite odd ways on
>>> almost all platforms. When the old build system was converted, this
>>> was not changed.
>>>
>>> However, now the time has come to streamline this and build this
>>> library just as any other.
>>>
>>> The most visible change, perhaps, is that the library is now named
>>> saproc on all platforms, even Windows. Other changes include:
>>> * Don't set flags that is already set by the default flags.
>>> * Don't set flags that do not have anny effect.
>>> * Don't subst away the WIN32_LEAN_AND_MEAN definition, it's
>>> perfectly okay to have it.
>>> * Don't set CXX linker on solaris -- this was not needed so no
>>> reason to do it.
>>> * Cleaned up some old hooks for closed code that is no longer needed.
>>>
>>> I have verified this using COMPARE_BUILD. This shows only the
>>> expected differences:
>>> * On all platforms: class file changes for WindbgDebuggerLocal.java.
>>> * On solaris: some minor symbol differences, since the linker now
>>> uses C framework functions instead of C++. (And with symbol changes
>>> always comes disasm changes.)
>>> * On linux: a binary difference for libsaproc.so, but no
>>> size/symbol/deps/disasm change.
>>> * On macosx: no changes at all.
>>> * On windows: sawindbg.dll is renamed to saproc.dll. When I made a
>>> manual comparison between the two files, I found no significant
>>> differences.
>>>
>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8199682
>>> WebRev:
>>> http://cr.openjdk.java.net/~ihse/JDK-8199682-clean-up-saproc/webrev.01
>>>
>>> /Magnus
>>>
>>
>
More information about the serviceability-dev
mailing list