diff --git a/benchmarks/hpl/Makefile b/benchmarks/hpl/Makefile index ef523440f87..8a9217b8338 100644 --- a/benchmarks/hpl/Makefile +++ b/benchmarks/hpl/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= hpl -DISTVERSION= 2.2 -PORTREVISION= 1 +DISTVERSION= 2.3 CATEGORIES= benchmarks MASTER_SITES= NETLIB/benchmark/hpl @@ -28,6 +27,7 @@ post-patch: s|^CC[ ]*=.*$$|CC = ${CC}| ; \ s|^CCFLAGS[ ]*=.*$$|CCFLAGS = $$\(HPL_DEFS\) ${CFLAGS} -fomit-frame-pointer -funroll-loops| ; \ s|^LINKER[ ]*=.*$$|LINKER = ${FC}| ; \ + s|^LINKFLAGS[ ]*=\(.*\)$$|LINKFLAGS =\1 ${LDFLAGS}| ; \ s|^ARCHIVER[ ]*=.*$$|ARCHIVER = ${AR}| ; \ s|ARCH[ )]|_&|g ; \ s|^HPL_OPTS[ ]*=.*$$|HPL_OPTS =| ; \ diff --git a/benchmarks/hpl/distinfo b/benchmarks/hpl/distinfo index 8325a602293..3f1bcb4bf3f 100644 --- a/benchmarks/hpl/distinfo +++ b/benchmarks/hpl/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1539479109 -SHA256 (hpl-2.2.tar.gz) = ac7534163a09e21a5fa763e4e16dfc119bc84043f6e6a807aba666518f8df440 -SIZE (hpl-2.2.tar.gz) = 539979 +TIMESTAMP = 1555691838 +SHA256 (hpl-2.3.tar.gz) = 32c5c17d22330e6f2337b681aded51637fb6008d3f0eb7c277b163fadd612830 +SIZE (hpl-2.3.tar.gz) = 660871 diff --git a/cad/calculix/Makefile b/cad/calculix/Makefile index a36b41b8115..88b017c8b01 100644 --- a/cad/calculix/Makefile +++ b/cad/calculix/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= calculix -PORTVERSION= 2.14 -PORTREVISION= 2 +PORTVERSION= 2.15 CATEGORIES= cad MASTER_SITES= http://www.dhondt.de/ DISTFILES= ${DIST_SOURCES} @@ -15,13 +14,16 @@ COMMENT= Three-Dimensional Structural Finite Element Program LICENSE= GPLv2 -BROKEN= checksum and size mismatch -DEPRECATED= Broken for more than 6 months -EXPIRATION_DATE= 2019-03-05 BROKEN_aarch64= fails to link: shapeFunctions.c:(function attach_new): relocation R_AARCH64_CALL26 out of range RUN_DEPENDS= ccx:cad/calculix-ccx +USE_HARDENING= pie:off relro:off + +USES= gmake tar:bzip2 compiler:c++11-lib +USE_XORG= ice sm x11 xext xi xmu xt +USE_GL= gl glu # uses its own glut + DIST_SOURCES= cgx_${PORTVERSION}.all${EXTRACT_SUFX} DIST_HTM= cgx_${PORTVERSION}.htm${EXTRACT_SUFX} DIST_PDF= cgx_${PORTVERSION}.pdf @@ -30,17 +32,11 @@ DIST_EXAMPLES= cgx_${PORTVERSION}.exa${EXTRACT_SUFX} WRKSRC= ${WRKDIR}/CalculiX CGX_VER= cgx_${PORTVERSION} -USE_HARDENING= pie:off relro:off - -USES= gmake tar:bzip2 compiler:c++11-lib -USE_XORG= ice sm x11 xext xi xmu xt -USE_GL= gl glu # uses its own glut +CXXFLAGS+= -std=c++98 BROWSER?= firefox PSVIEWER?= gv -CXXFLAGS+= -std=c++98 - OPTIONS_DEFINE= DOCS EXAMPLES .include diff --git a/cad/calculix/distinfo b/cad/calculix/distinfo index ee7f47105c7..209cb5fe062 100644 --- a/cad/calculix/distinfo +++ b/cad/calculix/distinfo @@ -1,9 +1,9 @@ -TIMESTAMP = 1526334631 -SHA256 (calculix/cgx_2.14.all.tar.bz2) = 7ed16261749a2a62c77ad0631e5a1f001566aad62cd3e71fcbe2c9ce507f3712 -SIZE (calculix/cgx_2.14.all.tar.bz2) = 4546855 -SHA256 (calculix/cgx_2.14.exa.tar.bz2) = b922ba2bbd5662d05e1e9d6da1189a80fc341dfb1c46bcc19d89de56e6e67fc3 -SIZE (calculix/cgx_2.14.exa.tar.bz2) = 3030018 -SHA256 (calculix/cgx_2.14.htm.tar.bz2) = 20952ebb3d733a135c089a42473e15c119bd14b04e4fe73d858505d453267c0b -SIZE (calculix/cgx_2.14.htm.tar.bz2) = 336313 -SHA256 (calculix/cgx_2.14.pdf) = dc9c30470e678953d1c4efcdff10a55122bd29f88fe520a43c548f178d9082f1 -SIZE (calculix/cgx_2.14.pdf) = 1304642 +TIMESTAMP = 1555653315 +SHA256 (calculix/cgx_2.15.all.tar.bz2) = 86f65e111811939e0dff9cdc2b17d0d1720e34100ae099845f0deaf4761fcb98 +SIZE (calculix/cgx_2.15.all.tar.bz2) = 5467670 +SHA256 (calculix/cgx_2.15.exa.tar.bz2) = 10dbb18b1a52730d4a55d94eb1e9b10ccd3f3ce0a688814710d31c05cc798997 +SIZE (calculix/cgx_2.15.exa.tar.bz2) = 3928308 +SHA256 (calculix/cgx_2.15.htm.tar.bz2) = fd9bbb71175016e8e8c4b4e39479697cdcb9cf521c6fe518860f3cdb9fa33bc7 +SIZE (calculix/cgx_2.15.htm.tar.bz2) = 338838 +SHA256 (calculix/cgx_2.15.pdf) = 6640a20bfe4e1fff8e422ae9f1228f386a7eb15aeca8d49cb63cf2c8148245a9 +SIZE (calculix/cgx_2.15.pdf) = 1320172 diff --git a/cad/calculix/files/patch-cgx__VER_src_Makefile b/cad/calculix/files/patch-cgx__VER_src_Makefile index 0c5cc008c0f..4fbcc97f35b 100644 --- a/cad/calculix/files/patch-cgx__VER_src_Makefile +++ b/cad/calculix/files/patch-cgx__VER_src_Makefile @@ -1,5 +1,5 @@ ---- cgx_2.14/src/Makefile.orig 2017-03-11 16:25:39 UTC -+++ cgx_2.14/src/Makefile +--- cgx_2.15/src/Makefile.orig 2017-03-11 16:25:39 UTC ++++ cgx_2.15/src/Makefile @@ -4,11 +4,11 @@ CFLAGS = -O2 -Wall \ -I/usr/include/GL \ -I../../libSNL/src \ diff --git a/cad/calculix/files/patch-cgx__VER_src_cgx.h b/cad/calculix/files/patch-cgx__VER_src_cgx.h index ee24b69c18c..58804cc748d 100644 --- a/cad/calculix/files/patch-cgx__VER_src_cgx.h +++ b/cad/calculix/files/patch-cgx__VER_src_cgx.h @@ -1,11 +1,11 @@ ---- cgx_2.14/src/cgx.h.orig 2017-04-28 10:12:50 UTC -+++ cgx_2.14/src/cgx.h +--- cgx_2.15/src/cgx.h.orig 2017-04-28 10:12:50 UTC ++++ cgx_2.15/src/cgx.h @@ -89,8 +89,8 @@ rendering is done in the index-mode. - "/usr/local/CalculiX/ccx_2.14/doc/ccx/ccx.html",\ - "/usr/local/CalculiX/cgx_2.14/doc/aflib/aflib.pdf"} + "/usr/local/CalculiX/ccx_2.15/doc/ccx/ccx.html",\ + "/usr/local/CalculiX/cgx_2.15/doc/aflib/aflib.pdf"} #else -- #define HELPFILE {"/usr/local/CalculiX/cgx_2.14/doc/cgx/cgx.html",\ -- "/usr/local/CalculiX/ccx_2.14/doc/ccx/ccx.html"} +- #define HELPFILE {"/usr/local/CalculiX/cgx_2.15/doc/cgx/cgx.html",\ +- "/usr/local/CalculiX/ccx_2.15/doc/ccx/ccx.html"} + #define HELPFILE {"/usr/local/share/doc/CalculiX/cgx/cgx.html",\ + "/usr/local/share/doc/CalculiX/ccx/ccx.html"} #endif diff --git a/cad/calculix/files/patch-cgx__VER_src_extUtil.h b/cad/calculix/files/patch-cgx__VER_src_extUtil.h deleted file mode 100644 index d6202512764..00000000000 --- a/cad/calculix/files/patch-cgx__VER_src_extUtil.h +++ /dev/null @@ -1,27 +0,0 @@ ---- cgx_2.14/src/extUtil.h.orig 2017-04-28 10:12:50 UTC -+++ cgx_2.14/src/extUtil.h -@@ -9,6 +9,7 @@ - #else - #define DEV_NULL " >/dev/null" - #define DEV_NULL2 " 2>/dev/null" -+ #include - #include - #endif - -@@ -52,12 +53,10 @@ void printf_fflush(const char *fmt,...); - /* from #include "f2c.h" */ - #define abs(x) ((x) >= 0 ? (x) : -(x)) - #define dabs(x) (double)abs(x) --#define min(a,b) ((a) <= (b) ? (a) : (b)) --#define max(a,b) ((a) >= (b) ? (a) : (b)) --#define smin(a,b) (float)min(a,b) --#define smax(a,b) (float)max(a,b) --#define dmin(a,b) (double)min(a,b) --#define dmax(a,b) (double)max(a,b) -+#define smin(a,b) (float)MIN(a,b) -+#define smax(a,b) (float)MAX(a,b) -+#define dmin(a,b) (double)MIN(a,b) -+#define dmax(a,b) (double)MAX(a,b) - - - typedef struct { diff --git a/cad/calculix/files/patch-cgx__VER_src_uselibSNL.cpp b/cad/calculix/files/patch-cgx__VER_src_uselibSNL.cpp index 54077050e7c..81ab0567c5f 100644 --- a/cad/calculix/files/patch-cgx__VER_src_uselibSNL.cpp +++ b/cad/calculix/files/patch-cgx__VER_src_uselibSNL.cpp @@ -1,5 +1,5 @@ ---- cgx_2.14/src/uselibSNL.cpp.orig 2017-10-07 09:58:00 UTC -+++ cgx_2.14/src/uselibSNL.cpp +--- cgx_2.15/src/uselibSNL.cpp.orig 2017-10-07 09:58:00 UTC ++++ cgx_2.15/src/uselibSNL.cpp @@ -934,7 +934,7 @@ int createBlendedNurbs(int nr, Points ** // (5) create the cgx nurbs // printf(" create blended nurbs\n"); diff --git a/cad/calculix/pkg-plist b/cad/calculix/pkg-plist index 89c2b5a7498..25a6cd55fab 100644 --- a/cad/calculix/pkg-plist +++ b/cad/calculix/pkg-plist @@ -219,6 +219,9 @@ bin/cgx %%PORTDOCS%%%%DOCSDIR%%/cgx/node250.html %%PORTDOCS%%%%DOCSDIR%%/cgx/node251.html %%PORTDOCS%%%%DOCSDIR%%/cgx/node252.html +%%PORTDOCS%%%%DOCSDIR%%/cgx/node253.html +%%PORTDOCS%%%%DOCSDIR%%/cgx/node254.html +%%PORTDOCS%%%%DOCSDIR%%/cgx/node255.html %%PORTDOCS%%%%DOCSDIR%%/cgx/node26.html %%PORTDOCS%%%%DOCSDIR%%/cgx/node27.html %%PORTDOCS%%%%DOCSDIR%%/cgx/node28.html @@ -300,7 +303,7 @@ bin/cgx %%PORTDOCS%%%%DOCSDIR%%/cgx/node97.html %%PORTDOCS%%%%DOCSDIR%%/cgx/node98.html %%PORTDOCS%%%%DOCSDIR%%/cgx/node99.html -%%PORTDOCS%%%%DOCSDIR%%/cgx_2.14.pdf +%%PORTDOCS%%%%DOCSDIR%%/cgx_2.15.pdf %%PORTEXAMPLES%%%%EXAMPLESDIR%%/OpenFOAM/README %%PORTEXAMPLES%%%%EXAMPLESDIR%%/OpenFOAM/couette/0.00100001/T %%PORTEXAMPLES%%%%EXAMPLESDIR%%/OpenFOAM/couette/0.00100001/U @@ -346,8 +349,10 @@ bin/cgx %%PORTEXAMPLES%%%%EXAMPLESDIR%%/airfoil/ISAAC/isaac.fbl %%PORTEXAMPLES%%%%EXAMPLESDIR%%/airfoil/ccx/README %%PORTEXAMPLES%%%%EXAMPLESDIR%%/airfoil/ccx/clean +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/airfoil/ccx/rae2822.cvg %%PORTEXAMPLES%%%%EXAMPLESDIR%%/airfoil/ccx/rae2822.inp %%PORTEXAMPLES%%%%EXAMPLESDIR%%/airfoil/ccx/rae2822_penta.fbd +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/airfoil/ccx/rae2822f.cvg %%PORTEXAMPLES%%%%EXAMPLESDIR%%/airfoil/ccx/send.fbl %%PORTEXAMPLES%%%%EXAMPLESDIR%%/airfoil/ccx/send_penta.fbl %%PORTEXAMPLES%%%%EXAMPLESDIR%%/airfoil/ccx/send_tr3u.fbl @@ -380,9 +385,9 @@ bin/cgx %%PORTEXAMPLES%%%%EXAMPLESDIR%%/glue/latjm.fbd %%PORTEXAMPLES%%%%EXAMPLESDIR%%/glue/latjm.inp %%PORTEXAMPLES%%%%EXAMPLESDIR%%/glue/send.fbl +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/ifwhiledemo/README %%PORTEXAMPLES%%%%EXAMPLESDIR%%/ifwhiledemo/all.fbd %%PORTEXAMPLES%%%%EXAMPLESDIR%%/ifwhiledemo/ifwhiledemo.fbl -%%PORTEXAMPLES%%%%EXAMPLESDIR%%/ifwhiledemo/ifwhiledemo2.fbl %%PORTEXAMPLES%%%%EXAMPLESDIR%%/ifwhiledemo/writedemo.txt %%PORTEXAMPLES%%%%EXAMPLESDIR%%/map/README %%PORTEXAMPLES%%%%EXAMPLESDIR%%/map/map2D.fbl @@ -400,10 +405,13 @@ bin/cgx %%PORTEXAMPLES%%%%EXAMPLESDIR%%/swepElements/ring1.fbl %%PORTEXAMPLES%%%%EXAMPLESDIR%%/swepElements/ring1.inp %%PORTEXAMPLES%%%%EXAMPLESDIR%%/therm/README +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/therm/latimtrans.12d %%PORTEXAMPLES%%%%EXAMPLESDIR%%/therm/latimtrans.inp %%PORTEXAMPLES%%%%EXAMPLESDIR%%/therm/post.fbl %%PORTEXAMPLES%%%%EXAMPLESDIR%%/therm/send.fbl %%PORTEXAMPLES%%%%EXAMPLESDIR%%/turbine/README +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/turbine/latim.12d +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/turbine/latim.fbb %%PORTEXAMPLES%%%%EXAMPLESDIR%%/turbine/latim.fbd %%PORTEXAMPLES%%%%EXAMPLESDIR%%/turbine/latim.inp %%PORTEXAMPLES%%%%EXAMPLESDIR%%/turbine/mesh.fbl diff --git a/comms/quisk/Makefile b/comms/quisk/Makefile index 9957ceb9953..806c2e8d7f8 100644 --- a/comms/quisk/Makefile +++ b/comms/quisk/Makefile @@ -2,11 +2,9 @@ # $FreeBSD$ PORTNAME= quisk -PORTVERSION= 4.1.3 -PORTREVISION= 4 +PORTVERSION= 4.1.26 CATEGORIES= comms hamradio -MASTER_SITES= http://james.ahlstrom.name/quisk/ \ - LOCAL/db +MASTER_SITES= CHEESESHOP MAINTAINER= hamradio@FreeBSD.org COMMENT= Software Defined Radio (SDR) @@ -21,10 +19,13 @@ LIB_DEPENDS= libfftw3.so:math/fftw3 \ USES= python:2.7 USE_PYTHON= distutils autoplist USE_WX= 3.0+ + WX_COMPS= python post-extract: - ${RM} ${WRKSRC}/_quisk.so ${WRKSRC}/sdriqpkg/sdriq.so + ${RM} ${WRKSRC}/_quisk.so ${WRKSRC}/sdriqpkg/sdriq.so \ + ${WRKSRC}/freedvpkg/libcodec2_32.so \ + ${WRKSRC}/freedvpkg/libcodec2_64.so post-patch: ${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' ${WRKSRC}/setup.py diff --git a/comms/quisk/distinfo b/comms/quisk/distinfo index dbad59cbf53..ef6d2183c43 100644 --- a/comms/quisk/distinfo +++ b/comms/quisk/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1482446629 -SHA256 (quisk-4.1.3.tar.gz) = 3bb41e3d5dd7feb4c949a6086fe4d2adad12048d5eccb6499ced85b2b46f5999 -SIZE (quisk-4.1.3.tar.gz) = 2093660 +TIMESTAMP = 1555665888 +SHA256 (quisk-4.1.26.tar.gz) = 6df5ac3adb43fa4daeafec4cef2a19ade33f6d561053302b761f944d98fc1890 +SIZE (quisk-4.1.26.tar.gz) = 3236756 diff --git a/comms/quisk/files/patch-microphone.c b/comms/quisk/files/patch-microphone.c index 789227287fb..364329a6be2 100644 --- a/comms/quisk/files/patch-microphone.c +++ b/comms/quisk/files/patch-microphone.c @@ -1,6 +1,6 @@ ---- microphone.c.orig 2016-10-25 20:57:54 UTC +--- microphone.c.orig 2018-11-21 19:08:22 UTC +++ microphone.c -@@ -56,7 +56,7 @@ static int timeVOX = 2000; // VOX han +@@ -58,7 +58,7 @@ static int timeVOX = 2000; // VOX han static int doTxCorrect = 0; // Corrections for UDP sample transmit static double TxCorrectLevel; diff --git a/comms/quisk/files/patch-quisk.c b/comms/quisk/files/patch-quisk.c new file mode 100644 index 00000000000..af9c1504896 --- /dev/null +++ b/comms/quisk/files/patch-quisk.c @@ -0,0 +1,11 @@ +--- quisk.c.orig 2019-04-19 15:39:19 UTC ++++ quisk.c +@@ -4065,7 +4065,7 @@ static PyObject * get_bandscope(void) // + j2 = floor(d2); + sample = (j1 + 1 - d1) * bandscopeAverage[j1]; + for (j = j1 + 1; j < j2; j++) +- sample += cabs(bandscopeAverage[j]); ++ sample += fabs(bandscopeAverage[j]); + sample += (d2 - j2) * bandscopeAverage[j2]; + sample = sample / frac; + // Normalize to max == 1 diff --git a/comms/quisk/files/patch-quisk.py b/comms/quisk/files/patch-quisk.py index 12d707e88a1..027e099fbc1 100644 --- a/comms/quisk/files/patch-quisk.py +++ b/comms/quisk/files/patch-quisk.py @@ -1,6 +1,6 @@ ---- quisk.py.orig 2016-11-30 13:26:59.000000000 -0500 -+++ quisk.py 2018-06-17 10:30:03.031192000 -0400 -@@ -21,6 +21,13 @@ +--- quisk.py.orig 2019-04-19 15:47:26 UTC ++++ quisk.py +@@ -21,6 +21,13 @@ os.chdir(os.path.normpath(os.path.dirnam if sys.path[0] != "'.'": # Make sure the current working directory is on path sys.path.insert(0, '.') @@ -9,8 +9,8 @@ +locale.setlocale(locale.LC_ALL, '') +cloc = locale.getdefaultlocale() +if locale.nl_langinfo(locale.CODESET) != 'UTF-8': -+ locale.setlocale(locale.LC_ALL, (cloc[0], 'UTF-8')) ++ locale.setlocale(locale.LC_ALL, (cloc[0], 'UTF-8')) + - import wxversion # Thanks to Mario, DH5YM - wxversion.ensureMinimal('2.8') - + import wx, wx.html, wx.lib.buttons, wx.lib.stattext, wx.lib.colourdb, wx.grid, wx.richtext + import math, cmath, time, traceback, string, select, subprocess + import threading, pickle, webbrowser diff --git a/comms/quisk/files/patch-setup.py b/comms/quisk/files/patch-setup.py index 635a8cec93c..22d8769c456 100644 --- a/comms/quisk/files/patch-setup.py +++ b/comms/quisk/files/patch-setup.py @@ -1,22 +1,51 @@ ---- setup.py.orig 2016-12-08 22:14:02 UTC +--- setup.py.orig 2018-11-22 14:56:57 UTC +++ setup.py -@@ -12,8 +12,8 @@ fp.write("#Quisk version %s\n" % Version - fp.close() +@@ -18,18 +18,18 @@ if sys.platform != "win32": + except ImportError: + print ("Please install the package python-wxgtk3.0 or later") + missing = True +- if not os.path.isfile("/usr/include/fftw3.h"): +- print ("Please install the package libfftw3-dev") +- missing = True +- if not os.path.isdir("/usr/include/alsa"): +- print ("Please install the package libasound2-dev") +- missing = True +- if not os.path.isfile("/usr/include/portaudio.h"): +- print ("Please install the package portaudio19-dev") +- missing = True +- if not os.path.isdir("/usr/include/pulse"): +- print ("please install the package libpulse-dev") +- missing = True ++# if not os.path.isfile("/usr/include/fftw3.h"): ++# print ("Please install the package libfftw3-dev") ++# missing = True ++# if not os.path.isdir("/usr/include/alsa"): ++# print ("Please install the package libasound2-dev") ++# missing = True ++# if not os.path.isfile("/usr/include/portaudio.h"): ++# print ("Please install the package portaudio19-dev") ++# missing = True ++# if not os.path.isdir("/usr/include/pulse"): ++# print ("please install the package libpulse-dev") ++# missing = True + if missing: + ans = raw_input("Do you want to continue (y, N): ") + ans = ans.strip() +@@ -37,6 +37,8 @@ if sys.platform != "win32": + sys.exit(1) module1 = Extension ('quisk._quisk', -- #include_dirs = ['.'], -- #library_dirs = ['.'], + include_dirs = ['%%LOCALBASE%%/include'], + library_dirs = ['%%LOCALBASE%%/lib'], libraries = ['asound', 'portaudio', 'pulse', 'fftw3', 'm'], sources = ['quisk.c', 'sound.c', 'sound_alsa.c', 'sound_portaudio.c', 'sound_pulseaudio.c', 'is_key_down.c', 'microphone.c', 'utility.c', -@@ -116,7 +116,7 @@ control the N8LP LP-PAN panadapter and t - author_email = 'jahlstr@gmail.com', - url = 'http://james.ahlstrom.name/quisk/', - download_url = 'http://james.ahlstrom.name/quisk/', -- packages = ['quisk', 'quisk.sdriqpkg', 'quisk.n2adr', 'quisk.softrock', 'quisk.usb'], -+ packages = ['quisk', 'quisk.sdriqpkg', 'quisk.n2adr', 'quisk.softrock', 'quisk.usb', 'quisk.hermes'], - package_dir = {'quisk' : '.'}, - package_data = {'quisk' : ['*.txt', '*.html']}, - ext_modules = Modules, +@@ -69,8 +71,6 @@ modulew2 = Extension ('quisk.sdriqpkg.sd + + # Changes for MacOS support thanks to Mario, DL3LSM. + modulem1 = Extension ('quisk._quisk', +- #include_dirs = ['.'], +- #library_dirs = ['.'], + libraries = ['portaudio', 'fftw3', 'm', 'pulse'], + sources = ['quisk.c', 'sound.c', 'sound_portaudio.c', + 'is_key_down.c', 'microphone.c', 'utility.c', diff --git a/comms/tlf/Makefile b/comms/tlf/Makefile index a911a56e97d..738b9b772fd 100644 --- a/comms/tlf/Makefile +++ b/comms/tlf/Makefile @@ -3,6 +3,7 @@ PORTNAME= tlf PORTVERSION= 1.3.2 +DISTVERSIONPREFIX= ${PORTNAME}- CATEGORIES= comms hamradio MAINTAINER= hamradio@FreeBSD.org @@ -15,7 +16,6 @@ RUN_DEPENDS= rec:audio/sox \ USES= autoreconf gnome ncurses pkgconfig USE_GITHUB= yes -GH_TAGNAME= ${PORTNAME}-${PORTVERSION} GNU_CONFIGURE= yes CONFIGURE_ENV= PANEL_LIB=-lpanel USE_GNOME= glib20 diff --git a/comms/tlf/distinfo b/comms/tlf/distinfo index d36ecfcdcc0..39913b97a64 100644 --- a/comms/tlf/distinfo +++ b/comms/tlf/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555665452 -SHA256 (tlf-tlf-1.3.2-tlf-1.3.2_GH0.tar.gz) = 5a444e4f55c7bf0209d6d12ed3387dabca9db457115068d4f79fb89b3d6f6a02 -SIZE (tlf-tlf-1.3.2-tlf-1.3.2_GH0.tar.gz) = 552308 +TIMESTAMP = 1555701649 +SHA256 (tlf-tlf-tlf-1.3.2_GH0.tar.gz) = 5a444e4f55c7bf0209d6d12ed3387dabca9db457115068d4f79fb89b3d6f6a02 +SIZE (tlf-tlf-tlf-1.3.2_GH0.tar.gz) = 552308 diff --git a/databases/datamodeler/Makefile b/databases/datamodeler/Makefile index d3281e0759b..aa655e85723 100644 --- a/databases/datamodeler/Makefile +++ b/databases/datamodeler/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= datamodeler -PORTVERSION= 18.1.0.082.1035 +PORTVERSION= 18.4.0.339.1532 DISTVERSIONSUFFIX=-1 CATEGORIES= databases java MASTER_SITES= #http://www.oracle.com/technetwork/developer-tools/datamodeler/downloads/index.html @@ -14,7 +14,9 @@ MAINTAINER= jjuanino@gmail.com COMMENT= Database modeling tool EXTRACT_DEPENDS=rpm2cpio.pl:archivers/rpm2cpio -RUN_DEPENDS= bash:shells/bash +RUN_DEPENDS= bash:shells/bash ${JAVA_HOME}/bin/javafxpackager:java/openjfx8-devel + +USES= gnome #http://www.oracle.com/technetwork/licenses/sqldev-license-152021.html LICENSE_NAME= OTN @@ -69,10 +71,10 @@ do-install: cd ${WRKSRC} && ${FIND} ${d} -type d \ -exec ${MKDIR} ${STAGEDIR}/${DATADIR}/\{} \; cd ${WRKSRC} && ${FIND} ${d} -type f \ - -not -name "*.orig" \ -not -name "*.exe" \ -not -name "*.bak" \ -not -name "*.dll" \ + -not -name "*.so" \ -exec ${INSTALL_DATA} \{} ${STAGEDIR}/${DATADIR}/\{} \; ${ECHO_MSG} " [ DONE ]" .endfor diff --git a/databases/datamodeler/distinfo b/databases/datamodeler/distinfo index 1f7d65d9ada..d146adb3322 100644 --- a/databases/datamodeler/distinfo +++ b/databases/datamodeler/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1526077954 -SHA256 (oracle/datamodeler-18.1.0.082.1035-1.noarch.rpm) = 18d59aa7235992798056ad0c7b3c78c76e82ca0d0f4d14b1a5c956545a70bda4 -SIZE (oracle/datamodeler-18.1.0.082.1035-1.noarch.rpm) = 193962744 +TIMESTAMP = 1548508179 +SHA256 (oracle/datamodeler-18.4.0.339.1532-1.noarch.rpm) = f4a83424a84d80286d46570db04956198dd7e5fd8fd8f4327fd9445faba4d0b0 +SIZE (oracle/datamodeler-18.4.0.339.1532-1.noarch.rpm) = 205003276 diff --git a/databases/datamodeler/pkg-plist b/databases/datamodeler/pkg-plist index 16dccbc5941..c8dbadd94fc 100644 --- a/databases/datamodeler/pkg-plist +++ b/databases/datamodeler/pkg-plist @@ -63,11 +63,10 @@ share/icons/hicolor/128x128/apps/datamodeler.png %%DATADIR%%/datamodeler/lib/fop.jar %%DATADIR%%/datamodeler/lib/jlfgr.jar %%DATADIR%%/datamodeler/lib/js.jar -%%DATADIR%%/datamodeler/lib/log4j.jar %%DATADIR%%/datamodeler/lib/olap_api.jar %%DATADIR%%/datamodeler/lib/oracle.sqldeveloper.homesupport.jar %%DATADIR%%/datamodeler/lib/pdfbox-app-2.0.2.jar -%%DATADIR%%/datamodeler/lib/rsyntaxtextarea-3.0.0-SNAPSHOT.jar +%%DATADIR%%/datamodeler/lib/rsyntaxtextarea-%%GTK3_VERSION%%-SNAPSHOT.jar %%DATADIR%%/datamodeler/lib/saxon-9.1.0.8.jar %%DATADIR%%/datamodeler/lib/serializer-2.7.0.jar %%DATADIR%%/datamodeler/lib/xalan-2.7.0.jar @@ -323,6 +322,7 @@ share/icons/hicolor/128x128/apps/datamodeler.png %%DATADIR%%/datamodeler/xmlmetadata/ColumnProxyUDB.xml %%DATADIR%%/datamodeler/xmlmetadata/ColumnProxyUDBv71.xml %%DATADIR%%/datamodeler/xmlmetadata/ColumnProxyUDBv81.xml +%%DATADIR%%/datamodeler/xmlmetadata/ColumnUsage.xml %%DATADIR%%/datamodeler/xmlmetadata/ColumnView.xml %%DATADIR%%/datamodeler/xmlmetadata/ContainedObject.xml %%DATADIR%%/datamodeler/xmlmetadata/ContainedObjectWithDomain.xml @@ -472,6 +472,7 @@ share/icons/hicolor/128x128/apps/datamodeler.png %%DATADIR%%/datamodeler/xmlmetadata/InstanceUDB.xml %%DATADIR%%/datamodeler/xmlmetadata/InstanceUDBv71.xml %%DATADIR%%/datamodeler/xmlmetadata/InstanceUDBv81.xml +%%DATADIR%%/datamodeler/xmlmetadata/Join.xml %%DATADIR%%/datamodeler/xmlmetadata/KeyObject.xml %%DATADIR%%/datamodeler/xmlmetadata/Label.xml %%DATADIR%%/datamodeler/xmlmetadata/Level.OraAWAttributes.xml @@ -498,6 +499,8 @@ share/icons/hicolor/128x128/apps/datamodeler.png %%DATADIR%%/datamodeler/xmlmetadata/LoginSqlServerv2k5.xml %%DATADIR%%/datamodeler/xmlmetadata/MaskTemplate.xml %%DATADIR%%/datamodeler/xmlmetadata/MaskTemplateFileWrapper.xml +%%DATADIR%%/datamodeler/xmlmetadata/MaterializedViewLogOracle.xml +%%DATADIR%%/datamodeler/xmlmetadata/MaterializedViewLogOraclev9i.xml %%DATADIR%%/datamodeler/xmlmetadata/Measure.AggregateFunction.xml %%DATADIR%%/datamodeler/xmlmetadata/Measure.xml %%DATADIR%%/datamodeler/xmlmetadata/MeasureFolder.xml @@ -886,6 +889,7 @@ share/icons/hicolor/128x128/apps/datamodeler.png %%DATADIR%%/ide/doc/extension/bundle10.xsd %%DATADIR%%/ide/doc/extension/center.xsd %%DATADIR%%/ide/doc/extension/update.xsd +%%DATADIR%%/ide/extensions/oracle.ide.bookmarks.jar %%DATADIR%%/ide/extensions/oracle.ide.ceditor-find.jar %%DATADIR%%/ide/extensions/oracle.ide.ceditor-saveactions.jar %%DATADIR%%/ide/extensions/oracle.ide.ceditor-tint.jar @@ -1016,7 +1020,6 @@ share/icons/hicolor/128x128/apps/datamodeler.png %%DATADIR%%/modules/oracle.adf.model/db-ca.jar %%DATADIR%%/modules/oracle.adf.model/jdev-cm.jar %%DATADIR%%/modules/oracle.adf.share.ca/adf-share-base.jar -%%DATADIR%%/modules/oracle.adf.share.ca/adf-share-ca.jar %%DATADIR%%/modules/oracle.adf.share/adflogginghandler.jar %%DATADIR%%/modules/oracle.adf.share/commons-el.jar %%DATADIR%%/modules/oracle.adf.share/oracle-el.jar @@ -1277,8 +1280,6 @@ share/icons/hicolor/128x128/apps/datamodeler.png %%DATADIR%%/netbeans/platform/modules/ext/org.eclipse.osgi_3.9.1.v20140110-1610.jar %%DATADIR%%/netbeans/platform/modules/ext/osgi.cmpn-4.2.jar %%DATADIR%%/netbeans/platform/modules/ext/osgi.core-5.0.0.jar -%%DATADIR%%/netbeans/platform/modules/lib/amd64/linux/libjnidispatch-422.so -%%DATADIR%%/netbeans/platform/modules/lib/i386/linux/libjnidispatch-422.so %%DATADIR%%/netbeans/platform/modules/lib/libjnidispatch-422.jnilib %%DATADIR%%/netbeans/platform/modules/locale/org-netbeans-api-annotations-common_de.jar %%DATADIR%%/netbeans/platform/modules/locale/org-netbeans-api-annotations-common_es.jar @@ -1667,6 +1668,7 @@ share/icons/hicolor/128x128/apps/datamodeler.png %%DATADIR%%/rdbms/jlib/xdb6.jar %%DATADIR%%/sleepycat/je-3.3.98/lib/je-3.3.98.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.cloud.jar +%%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.extras.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.filenavigator.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.jdbcproxy.jar @@ -1674,10 +1676,11 @@ share/icons/hicolor/128x128/apps/datamodeler.png %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/LICENSE.txt %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/antlr4-runtime.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/avro.jar +%%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/guava.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/jackson-core-asl.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/jackson-mapper-asl.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/kvclient.jar -%%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/threetenbp.jar +%%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/reactive-streams.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.ssh.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.utils.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.worksheet.jar @@ -1752,3 +1755,5 @@ share/icons/hicolor/128x128/apps/datamodeler.png @dir %%DATADIR%%/datamodeler/log @dir %%DATADIR%%/datamodeler/reports/xslt/10/css @dir %%DATADIR%%/netbeans/platform/modules/lib/x86 +@dir %%DATADIR%%/netbeans/platform/modules/lib/amd64/linux +@dir %%DATADIR%%/netbeans/platform/modules/lib/i386/linux diff --git a/databases/freetds-devel/Makefile b/databases/freetds-devel/Makefile index 7a8804d7661..52bbf92270b 100644 --- a/databases/freetds-devel/Makefile +++ b/databases/freetds-devel/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= freetds -PORTVERSION= 1.1.21 +PORTVERSION= 1.1.22 PORTEPOCH= 1 CATEGORIES= databases MASTER_SITES= ftp://ftp.freetds.org/pub/freetds/current/ diff --git a/databases/freetds-devel/distinfo b/databases/freetds-devel/distinfo index 728c14ca6b3..7c0a70b1bf6 100644 --- a/databases/freetds-devel/distinfo +++ b/databases/freetds-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1554378370 -SHA256 (freetds-dev.1.1.21.tar.bz2) = 68bde9875ec3308d790a47addae5eaf5253fd5e7b570318d3e107d61f3da931b -SIZE (freetds-dev.1.1.21.tar.bz2) = 2261731 +TIMESTAMP = 1555714873 +SHA256 (freetds-dev.1.1.22.tar.bz2) = 6f8e33a737a308fc51011c86ebf465403c64b7f2244e5247642980085420695b +SIZE (freetds-dev.1.1.22.tar.bz2) = 2263071 diff --git a/databases/galera/Makefile b/databases/galera/Makefile index bb6af1ce7c5..8bb747b288a 100644 --- a/databases/galera/Makefile +++ b/databases/galera/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= galera -PORTVERSION?= 25.3.25 -PORTREVISION= 2 +PORTVERSION?= 25.3.26 DISTVERSIONPREFIX?= release_ CATEGORIES= databases diff --git a/databases/galera/distinfo b/databases/galera/distinfo index 81916a27bb3..aaf6d625d3d 100644 --- a/databases/galera/distinfo +++ b/databases/galera/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1543852208 -SHA256 (codership-galera-release_25.3.25_GH0.tar.gz) = f8b508e4a2ca5d36042c2b260375e3f4ecc189029e73356bf435261aa6186107 -SIZE (codership-galera-release_25.3.25_GH0.tar.gz) = 3282519 +TIMESTAMP = 1555422252 +SHA256 (codership-galera-release_25.3.26_GH0.tar.gz) = 62c27634198a447ab8c060a33775cb4accaa3c25b730461e5b7c5a0af6507411 +SIZE (codership-galera-release_25.3.26_GH0.tar.gz) = 3286931 SHA256 (codership-wsrep-API-eab2d5d5a31672c0b7d116ef1629ff18392fd7d0_GH0.tar.gz) = 3c235868ed330d8d702e7b7541c24c1926b1fd9e6b8aa673b032a2318896e8a0 SIZE (codership-wsrep-API-eab2d5d5a31672c0b7d116ef1629ff18392fd7d0_GH0.tar.gz) = 47032 diff --git a/databases/leveldb/Makefile b/databases/leveldb/Makefile index e9696266ee2..38389f83a90 100644 --- a/databases/leveldb/Makefile +++ b/databases/leveldb/Makefile @@ -2,9 +2,7 @@ # $FreeBSD$ PORTNAME= leveldb -PORTVERSION= 1.20 -DISTVERSIONPREFIX= v -PORTREVISION= 4 +PORTVERSION= 1.21 CATEGORIES= databases MAINTAINER= sunpoet@FreeBSD.org @@ -15,13 +13,12 @@ LICENSE= BSD3CLAUSE OPTIONS_DEFINE= GPERFTOOLS SNAPPY OPTIONS_DEFAULT=SNAPPY -CONFIGURE_ARGS= build_config.mk ${WRKSRC}/ -CONFIGURE_SCRIPT= build_detect_platform -HAS_CONFIGURE= yes -MAKE_JOBS_UNSAFE= yes -TEST_TARGET= check +USES= cmake compiler:c++11-lang localbase + +CMAKE_OFF= LEVELDB_BUILD_TESTS +CMAKE_ON= BUILD_SHARED_LIBS LEVELDB_BUILD_BENCHMARKS LEVELDB_INSTALL +USE_CXXSTD= c++11 USE_LDCONFIG= yes -USES= compiler:c++0x gmake localbase PLIST_SUB= SHLIB_MAJOR=${SHLIB_MAJOR} \ SHLIB_MINOR=${SHLIB_MINOR} @@ -34,38 +31,18 @@ USE_GITHUB= yes GPERFTOOLS_LIB_DEPENDS= libtcmalloc.so:devel/google-perftools SNAPPY_LIB_DEPENDS= libsnappy.so:archivers/snappy +SNAPPY_VARS= SNAPPY=1 SNAPPY_CFLAGS=-DSNAPPY +SNAPPY_VARS_OFF= SNAPPY=0 SNAPPY_CFLAGS= post-patch: - @${REINPLACE_CMD} -e '/PLATFORM_IS_LITTLE_ENDIAN/ s|__|_|g' ${WRKSRC}/port/port_posix.h - -post-patch-GPERFTOOLS-off: - @${REINPLACE_CMD} -e 's| -ltcmalloc||' ${WRKSRC}/build_detect_platform - -post-patch-SNAPPY-off: - @${REINPLACE_CMD} -e 's| -DSNAPPY||; s| -lsnappy||' ${WRKSRC}/build_detect_platform + @${REINPLACE_CMD} -e 's|%%SHLIB_MAJOR%%|${SHLIB_MAJOR}|; s|%%SHLIB_MINOR%%|${SHLIB_MINOR}|' ${WRKSRC}/CMakeLists.txt +post-install: + ${AR} cq ${STAGEDIR}${PREFIX}/lib/libleveldb.a ${BUILD_WRKSRC}/CMakeFiles/leveldb.dir/*/*.o # backward compatibility (for databases/p5-Tie-LevelDB) -pre-install-SNAPPY-off: - ${ECHO_CMD} "SNAPPY=0" >> ${WRKSRC}/build_config.mk - -pre-install-SNAPPY-on: - ${ECHO_CMD} "SNAPPY=1" >> ${WRKSRC}/build_config.mk - -do-install: - ${MKDIR} ${STAGEDIR}${PREFIX}/include/leveldb/ ${STAGEDIR}${PREFIX}/include/memenv/ ${STAGEDIR}${DATADIR}/ - ${INSTALL_DATA} ${WRKSRC}/include/leveldb/* ${STAGEDIR}${PREFIX}/include/leveldb/ - ${INSTALL_DATA} ${WRKSRC}/helpers/memenv/memenv.h ${STAGEDIR}${PREFIX}/include/memenv/ - ${INSTALL_LIB} ${WRKSRC}/out-shared/libleveldb.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${STAGEDIR}${PREFIX}/lib/ - ${INSTALL_LIB} ${WRKSRC}/out-shared/libmemenv.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${STAGEDIR}${PREFIX}/lib/ - ${INSTALL_DATA} ${WRKSRC}/out-static/libleveldb.a ${STAGEDIR}${PREFIX}/lib/ - ${INSTALL_DATA} ${WRKSRC}/out-static/libmemenv.a ${STAGEDIR}${PREFIX}/lib/ - ${LN} -fs libleveldb.so.${SHLIB_MAJOR} ${STAGEDIR}${PREFIX}/lib/libleveldb.so - ${LN} -fs libleveldb.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${STAGEDIR}${PREFIX}/lib/libleveldb.so.${SHLIB_MAJOR} - ${LN} -fs libmemenv.so.${SHLIB_MAJOR} ${STAGEDIR}${PREFIX}/lib/libmemenv.so - ${LN} -fs libmemenv.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${STAGEDIR}${PREFIX}/lib/libmemenv.so.${SHLIB_MAJOR} -# backward compatibility (for databases/p5-Tie-LevelDB) - ${GREP} '^PLATFORM_CXXFLAGS=' ${WRKSRC}/build_config.mk | ${SED} 's|PLATFORM_CXXFLAGS|PORT_CFLAGS|' >> ${WRKSRC}/build_config.mk - ${GREP} '^PLATFORM_CXXFLAGS=' ${WRKSRC}/build_config.mk | ${SED} 's|PLATFORM_CXXFLAGS|PLATFORM_CFLAGS|' >> ${WRKSRC}/build_config.mk - ${INSTALL_DATA} ${WRKSRC}/build_config.mk ${STAGEDIR}${DATADIR}/ + ${MKDIR} ${STAGEDIR}${DATADIR}/ + ${ECHO_CMD} "PLATFORM_CFLAGS=-std=c++11 -D_REENTRANT -DOS_FREEBSD -DLEVELDB_PLATFORM_POSIX ${SNAPPY_CFLAGS}" > ${STAGEDIR}${DATADIR}/build_config.mk + ${ECHO_CMD} "PORT_CFLAGS=-std=c++11 -D_REENTRANT -DOS_FREEBSD -DLEVELDB_PLATFORM_POSIX ${SNAPPY_CFLAGS}" >> ${STAGEDIR}${DATADIR}/build_config.mk + ${ECHO_CMD} "SNAPPY=${SNAPPY}" >> ${STAGEDIR}${DATADIR}/build_config.mk .include diff --git a/databases/leveldb/distinfo b/databases/leveldb/distinfo index e263624e3ee..903e27ba6ca 100644 --- a/databases/leveldb/distinfo +++ b/databases/leveldb/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1488462981 -SHA256 (google-leveldb-v1.20_GH0.tar.gz) = f5abe8b5b209c2f36560b75f32ce61412f39a2922f7045ae764a2c23335b6664 -SIZE (google-leveldb-v1.20_GH0.tar.gz) = 223141 +TIMESTAMP = 1553965140 +SHA256 (google-leveldb-1.21_GH0.tar.gz) = e0fbd238047b9e82ec26a2b808f826b60e12b4fcb5d1a18c7b3d6edf357b4026 +SIZE (google-leveldb-1.21_GH0.tar.gz) = 236979 diff --git a/databases/leveldb/files/patch-CMakeLists.txt b/databases/leveldb/files/patch-CMakeLists.txt new file mode 100644 index 00000000000..f4c15a9c4f2 --- /dev/null +++ b/databases/leveldb/files/patch-CMakeLists.txt @@ -0,0 +1,14 @@ +--- CMakeLists.txt.orig 2019-03-29 21:37:39 UTC ++++ CMakeLists.txt +@@ -228,6 +228,11 @@ if (NOT HAVE_CXX17_HAS_INCLUDE) + endif(NOT HAVE_CXX17_HAS_INCLUDE) + + if(BUILD_SHARED_LIBS) ++ set_target_properties(leveldb ++ PROPERTIES ++ VERSION %%SHLIB_MAJOR%%.%%SHLIB_MINOR%% ++ SOVERSION %%SHLIB_MAJOR%% ++ ) + target_compile_definitions(leveldb + PUBLIC + # Used by include/export.h. diff --git a/databases/leveldb/files/patch-Makefile b/databases/leveldb/files/patch-Makefile deleted file mode 100644 index c889385a343..00000000000 --- a/databases/leveldb/files/patch-Makefile +++ /dev/null @@ -1,36 +0,0 @@ ---- Makefile.orig 2017-03-02 00:08:02 UTC -+++ Makefile -@@ -15,8 +15,7 @@ OPT ?= -O2 -DNDEBUG - #----------------------------------------------- - - # detect what platform we're building on --$(shell CC="$(CC)" CXX="$(CXX)" TARGET_OS="$(TARGET_OS)" \ -- ./build_detect_platform build_config.mk ./) -+# $(shell CC="$(CC)" CXX="$(CXX)" TARGET_OS="$(TARGET_OS)" ./build_detect_platform build_config.mk ./) - # this file is generated by the previous line to set build flags and sources - include build_config.mk - -@@ -126,12 +125,12 @@ SHARED_VERSION_MINOR = 20 - SHARED_LIB1 = libleveldb.$(PLATFORM_SHARED_EXT) - SHARED_LIB2 = $(SHARED_LIB1).$(SHARED_VERSION_MAJOR) - SHARED_LIB3 = $(SHARED_LIB1).$(SHARED_VERSION_MAJOR).$(SHARED_VERSION_MINOR) --SHARED_LIBS = $(SHARED_OUTDIR)/$(SHARED_LIB1) $(SHARED_OUTDIR)/$(SHARED_LIB2) $(SHARED_OUTDIR)/$(SHARED_LIB3) -+SHARED_LIBS = $(SHARED_OUTDIR)/$(SHARED_LIB1) $(SHARED_OUTDIR)/$(SHARED_LIB2) $(SHARED_OUTDIR)/$(SHARED_LIB3) $(SHARED_MEMENVLIB) - $(SHARED_OUTDIR)/$(SHARED_LIB1): $(SHARED_OUTDIR)/$(SHARED_LIB3) - ln -fs $(SHARED_LIB3) $(SHARED_OUTDIR)/$(SHARED_LIB1) - $(SHARED_OUTDIR)/$(SHARED_LIB2): $(SHARED_OUTDIR)/$(SHARED_LIB3) - ln -fs $(SHARED_LIB3) $(SHARED_OUTDIR)/$(SHARED_LIB2) --SHARED_MEMENVLIB = $(SHARED_OUTDIR)/libmemenv.a -+SHARED_MEMENVLIB = $(SHARED_OUTDIR)/libmemenv.$(PLATFORM_SHARED_EXT).$(SHARED_VERSION_MAJOR).$(SHARED_VERSION_MINOR) - endif - - $(SHARED_OUTDIR)/$(SHARED_LIB3): $(SHARED_LIBOBJECTS) -@@ -294,7 +293,7 @@ endif - - $(SHARED_MEMENVLIB):$(SHARED_MEMENVOBJECTS) - rm -f $@ -- $(AR) -rs $@ $(SHARED_MEMENVOBJECTS) -+ $(CXX) $(LDFLAGS) $(PLATFORM_SHARED_LDFLAGS)$(basename $(notdir $(SHARED_MEMENVLIB))) $(SHARED_MEMENVOBJECTS) -o $(SHARED_MEMENVLIB) $(LIBS) - - $(STATIC_OUTDIR)/db_bench:db/db_bench.cc $(STATIC_LIBOBJECTS) $(TESTUTIL) - $(CXX) $(LDFLAGS) $(CXXFLAGS) db/db_bench.cc $(STATIC_LIBOBJECTS) $(TESTUTIL) -o $@ $(LIBS) diff --git a/databases/leveldb/files/patch-build_detect_platform b/databases/leveldb/files/patch-build_detect_platform deleted file mode 100644 index 9bc34af6ef0..00000000000 --- a/databases/leveldb/files/patch-build_detect_platform +++ /dev/null @@ -1,11 +0,0 @@ ---- build_detect_platform.orig 2017-03-02 00:08:02 UTC -+++ build_detect_platform -@@ -224,7 +224,7 @@ EOF - rm -f $CXXOUTPUT 2>/dev/null - - # Test if gcc SSE 4.2 is supported -- $CXX $CXXFLAGS -x c++ - -o $CXXOUTPUT -msse4.2 2>/dev/null </dev/null < Preferences menu, select Database -> Third Party JDBC Drivers and add the proper jar. Do not install 5.1 version of mysql jdbc connector; see - https://docs.oracle.com/database/sql-developer-4.2/RPTIG/installing-sql-developer.htm#GUID-3F68CF20-D03D-431C-A9A2-0EB971F06448__CIHIHDIF + https://docs.oracle.com/en/database/oracle/sql-developer/18.4/rptig/installing-sql-developer.html#GUID-3F68CF20-D03D-431C-A9A2-0EB971F06448 ************************************************************************ diff --git a/databases/sqldeveloper/pkg-plist b/databases/sqldeveloper/pkg-plist index 1995a7484a4..7be03e96179 100644 --- a/databases/sqldeveloper/pkg-plist +++ b/databases/sqldeveloper/pkg-plist @@ -153,6 +153,9 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/dataminer/scripts/upgradeRepo12_2_0_0_0To12_2_0_0_1.sql %%DATADIR%%/dataminer/scripts/upgradeRepo12_2_0_0_1To12_2_0_0_2.sql %%DATADIR%%/dataminer/scripts/upgradeRepo12_2_0_0_2To12_2_0_0_3.sql +%%DATADIR%%/dataminer/scripts/upgradeRepo12_2_0_0_3To12_2_0_0_4.sql +%%DATADIR%%/dataminer/scripts/upgradeRepo12_2_0_0_4To12_2_0_0_5.sql +%%DATADIR%%/dataminer/scripts/upgradeRepo12_2_0_0_5To12_2_0_0_6.sql %%DATADIR%%/dataminer/scripts/upgradeRepoFromORToBinary.sql %%DATADIR%%/dataminer/scripts/upgradeRepoWithNewTableSpace.sql %%DATADIR%%/dataminer/scripts/upgradeRepository.sql @@ -169,7 +172,6 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/equinox/org.eclipse.equinox.common_3.6.0.v20100503.jar %%DATADIR%%/external/oracle.adf-logging-handler.jar %%DATADIR%%/external/oracle.adf-share-base.jar -%%DATADIR%%/external/oracle.adf-share-ca.jar %%DATADIR%%/external/oracle.db-ca.jar %%DATADIR%%/external/oracle.dbtools.http.jar %%DATADIR%%/external/oracle.dbtools.net.jar @@ -179,7 +181,10 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/external/oracle.external.antlr.jar %%DATADIR%%/external/oracle.external.apache.commons-codec.jar %%DATADIR%%/external/oracle.external.apache.commons-collections4.jar +%%DATADIR%%/external/oracle.external.apache.commons-compress.jar %%DATADIR%%/external/oracle.external.apache.commons-logging.jar +%%DATADIR%%/external/oracle.external.apache.commons-math3.jar +%%DATADIR%%/external/oracle.external.apache.xmlbeans.jar %%DATADIR%%/external/oracle.external.apache_httpclient.jar %%DATADIR%%/external/oracle.external.apexlistener.jar %%DATADIR%%/external/oracle.external.aqb.jar @@ -193,6 +198,7 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/external/oracle.external.cloudstorage.jar %%DATADIR%%/external/oracle.external.commons-httpclient.jar %%DATADIR%%/external/oracle.external.commons-io.jar +%%DATADIR%%/external/oracle.external.curvesapi.jar %%DATADIR%%/external/oracle.external.el-for-uix2.jar %%DATADIR%%/external/oracle.external.el.jar %%DATADIR%%/external/oracle.external.emapi.jar @@ -421,7 +427,6 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/modules/oracle.adf.model/db-ca.jar %%DATADIR%%/modules/oracle.adf.model/jdev-cm.jar %%DATADIR%%/modules/oracle.adf.share.ca/adf-share-base.jar -%%DATADIR%%/modules/oracle.adf.share.ca/adf-share-ca.jar %%DATADIR%%/modules/oracle.adf.share/adflogginghandler.jar %%DATADIR%%/modules/oracle.adf.share/commons-el.jar %%DATADIR%%/modules/oracle.adf.share/oracle-el.jar @@ -1063,7 +1068,6 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/netbeans/platform/update_tracking/org-openide-util-ui.xml %%DATADIR%%/netbeans/platform/update_tracking/org-openide-util.xml %%DATADIR%%/netbeans/platform/update_tracking/org-openide-windows.xml -%%DATADIR%%/ords/docs/javadoc/plugin-api-18.1.1-javadoc.jar %%DATADIR%%/ords/docs/javadoc/plugin-api/META-INF/MANIFEST.MF %%DATADIR%%/ords/docs/javadoc/plugin-api/allclasses-frame.html %%DATADIR%%/ords/docs/javadoc/plugin-api/allclasses-noframe.html @@ -1197,6 +1201,16 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/io/package-summary.html %%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/io/package-tree.html %%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/io/package-use.html +%%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/jdbc/JDBCDataSource.html +%%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/jdbc/JDBCDataSources.html +%%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/jdbc/SchemaNotAvailableException.html +%%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/jdbc/class-use/JDBCDataSource.html +%%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/jdbc/class-use/JDBCDataSources.html +%%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/jdbc/class-use/SchemaNotAvailableException.html +%%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/jdbc/package-frame.html +%%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/jdbc/package-summary.html +%%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/jdbc/package-tree.html +%%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/jdbc/package-use.html %%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/json/JSONIOException.html %%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/json/JSONReader.html %%DATADIR%%/ords/docs/javadoc/plugin-api/oracle/dbtools/plugin/api/json/JSONStreams.html @@ -1352,9 +1366,6 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/ords/examples/db_auth/sql/install.sql %%DATADIR%%/ords/examples/db_auth/sql/uninstall.sql %%DATADIR%%/ords/examples/plugins/lib/javax.inject-1.jar -%%DATADIR%%/ords/examples/plugins/lib/ojdbc8-12.2.0.1.jar -%%DATADIR%%/ords/examples/plugins/lib/plugin-api-18.1.1-javadoc.jar -%%DATADIR%%/ords/examples/plugins/lib/plugin-api-18.1.1.jar %%DATADIR%%/ords/examples/plugins/plugin-demo/.classpath %%DATADIR%%/ords/examples/plugins/plugin-demo/.project %%DATADIR%%/ords/examples/plugins/plugin-demo/build.xml @@ -1363,13 +1374,23 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/ords/examples/plugins/plugin-echo-cmd/src/EchoCommand.java %%DATADIR%%/ords/examples/plugins/plugin-echo-cmd/src/EchoMessages.java %%DATADIR%%/ords/examples/plugins/plugin-echo-cmd/src/EchoMessages.properties +%%DATADIR%%/ords/examples/pre_hook/README.md +%%DATADIR%%/ords/examples/pre_hook/index.html +%%DATADIR%%/ords/examples/pre_hook/sql/custom_auth_api.plb +%%DATADIR%%/ords/examples/pre_hook/sql/custom_auth_api.pls +%%DATADIR%%/ords/examples/pre_hook/sql/install.sql +%%DATADIR%%/ords/examples/pre_hook/sql/uninstall.sql %%DATADIR%%/ords/examples/soda/getting-started/POList.json %%DATADIR%%/ords/examples/soda/getting-started/QBE.1.json %%DATADIR%%/ords/examples/soda/getting-started/QBE.2.json %%DATADIR%%/ords/examples/soda/getting-started/QBE.3.json %%DATADIR%%/ords/examples/soda/getting-started/QBE.4.json +%%DATADIR%%/ords/examples/soda/getting-started/QBE.5.json +%%DATADIR%%/ords/examples/soda/getting-started/indexSpec1.json %%DATADIR%%/ords/examples/soda/getting-started/po.json +%%DATADIR%%/ords/examples/soda/getting-started/poPatchSpec.json %%DATADIR%%/ords/examples/soda/getting-started/poUpdated.json +%%DATADIR%%/ords/examples/soda/getting-started/qbePatch.json %%DATADIR%%/ords/index.html %%DATADIR%%/ords/ords.war %%DATADIR%%/ords/params/ords_params.properties @@ -1513,7 +1534,6 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/lib/fop.jar %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/lib/jlfgr.jar %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/lib/js.jar -%%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/lib/log4j.jar %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/lib/olap_api.jar %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/lib/pdfbox-app-2.0.2.jar %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/lib/rsyntaxtextarea-%%GTK3_VERSION%%-SNAPSHOT.jar @@ -1772,6 +1792,7 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/ColumnProxyUDB.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/ColumnProxyUDBv71.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/ColumnProxyUDBv81.xml +%%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/ColumnUsage.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/ColumnView.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/ContainedObject.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/ContainedObjectWithDomain.xml @@ -1921,6 +1942,7 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/InstanceUDB.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/InstanceUDBv71.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/InstanceUDBv81.xml +%%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/Join.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/KeyObject.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/Label.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/Level.OraAWAttributes.xml @@ -1947,6 +1969,8 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/LoginSqlServerv2k5.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/MaskTemplate.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/MaskTemplateFileWrapper.xml +%%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/MaterializedViewLogOracle.xml +%%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/MaterializedViewLogOraclev9i.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/Measure.AggregateFunction.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/Measure.xml %%DATADIR%%/sqldeveloper/extensions/oracle.datamodeler/xmlmetadata/MeasureFolder.xml @@ -2249,6 +2273,7 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/sqldeveloper/extensions/oracle.olap/lib/olaplang.jar %%DATADIR%%/sqldeveloper/extensions/oracle.olapdv.jar %%DATADIR%%/sqldeveloper/extensions/oracle.olapdv/lib/olapdvhelp.jar +%%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.cloud.deployment.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.cloud.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.cloud.migrations.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.datamodeler_reports.jar @@ -2281,10 +2306,11 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/LICENSE.txt %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/antlr4-runtime.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/avro.jar +%%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/guava.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/jackson-core-asl.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/jackson-mapper-asl.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/kvclient.jar -%%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/threetenbp.jar +%%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.onsd/lib/reactive-streams.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.rdfgraph.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.rdfgraph/lib/sdordf.jar %%DATADIR%%/sqldeveloper/extensions/oracle.sqldeveloper.report.jar @@ -2316,7 +2342,9 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/sqldeveloper/lib/common.jar %%DATADIR%%/sqldeveloper/lib/commons-codec.jar %%DATADIR%%/sqldeveloper/lib/commons-collections4.jar +%%DATADIR%%/sqldeveloper/lib/commons-compress.jar %%DATADIR%%/sqldeveloper/lib/commons-logging.jar +%%DATADIR%%/sqldeveloper/lib/commons-math3.jar %%DATADIR%%/sqldeveloper/lib/curvesapi.jar %%DATADIR%%/sqldeveloper/lib/dbtools-common.jar %%DATADIR%%/sqldeveloper/lib/dbtools-http.jar @@ -2358,6 +2386,7 @@ share/icons/hicolor/32x32/apps/sqldeveloper.png %%DATADIR%%/sqldeveloper/lib/oracle.sqldeveloper.homesupport.jar %%DATADIR%%/sqldeveloper/lib/oracle.sqldeveloper.jfx-nodeps.jar %%DATADIR%%/sqldeveloper/lib/oraclepki.jar +%%DATADIR%%/sqldeveloper/lib/orajsoda.jar %%DATADIR%%/sqldeveloper/lib/osdt_cert.jar %%DATADIR%%/sqldeveloper/lib/osdt_core.jar %%DATADIR%%/sqldeveloper/lib/osgi-resource-locator.jar diff --git a/databases/xapian-bindings12/Makefile b/databases/xapian-bindings12/Makefile index 2a2038ba6c9..c07ce651b46 100644 --- a/databases/xapian-bindings12/Makefile +++ b/databases/xapian-bindings12/Makefile @@ -15,6 +15,8 @@ COMMENT= Bindings allowing Xapian to be used from various programming languages LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING +BROKEN_RUBY25= yes + LIB_DEPENDS= libxapian.so:databases/xapian-core12 CONFLICTS= xapian-bindings diff --git a/devel/atlas-devel/Makefile b/devel/atlas-devel/Makefile index 7885bec9f65..5650b348e2c 100644 --- a/devel/atlas-devel/Makefile +++ b/devel/atlas-devel/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= Atlas -PORTVERSION= 0.6.3 -PORTREVISION= 8 +PORTVERSION= 0.6.4 CATEGORIES= devel MASTER_SITES= SF/worldforge/${PORTNAME}-C%2B%2B%20%28protocol%20lib%29/${PORTVERSION} PKGNAMESUFFIX= -devel diff --git a/devel/atlas-devel/distinfo b/devel/atlas-devel/distinfo index c97bca77a82..4fda220bf1f 100644 --- a/devel/atlas-devel/distinfo +++ b/devel/atlas-devel/distinfo @@ -1,2 +1,3 @@ -SHA256 (Atlas-C++-0.6.3.tar.bz2) = 5b8401a3b1182eb413b7fe4e6791c14343e7d7b7af6426d5279c6b9cf681f6a3 -SIZE (Atlas-C++-0.6.3.tar.bz2) = 527537 +TIMESTAMP = 1555683985 +SHA256 (Atlas-C++-0.6.4.tar.bz2) = 9a0927dffbb62612f810cb94043deb72dbfce6cb0c878c635a71c09f9c7978d7 +SIZE (Atlas-C++-0.6.4.tar.bz2) = 514534 diff --git a/devel/atlas-devel/pkg-plist b/devel/atlas-devel/pkg-plist index 6a0b330d4e0..d7f1fb89b0f 100644 --- a/devel/atlas-devel/pkg-plist +++ b/devel/atlas-devel/pkg-plist @@ -36,27 +36,28 @@ include/Atlas-C++-0.6/Atlas/Objects/loadDefaults.h include/Atlas-C++-0.6/Atlas/Objects/objectFactory.h include/Atlas-C++-0.6/Atlas/Task.h include/Atlas-C++-0.6/Atlas/Version.h +include/Atlas-C++-0.6/Atlas/float.h lib/libAtlas-0.6.so -lib/libAtlas-0.6.so.2 -lib/libAtlas-0.6.so.2.0.0 +lib/libAtlas-0.6.so.3 +lib/libAtlas-0.6.so.3.0.0 lib/libAtlasCodecs-0.6.so -lib/libAtlasCodecs-0.6.so.2 -lib/libAtlasCodecs-0.6.so.2.0.0 +lib/libAtlasCodecs-0.6.so.3 +lib/libAtlasCodecs-0.6.so.3.0.0 lib/libAtlasFilters-0.6.so -lib/libAtlasFilters-0.6.so.2 -lib/libAtlasFilters-0.6.so.2.0.0 +lib/libAtlasFilters-0.6.so.3 +lib/libAtlasFilters-0.6.so.3.0.0 lib/libAtlasFunky-0.6.so -lib/libAtlasFunky-0.6.so.2 -lib/libAtlasFunky-0.6.so.2.0.0 +lib/libAtlasFunky-0.6.so.3 +lib/libAtlasFunky-0.6.so.3.0.0 lib/libAtlasMessage-0.6.so -lib/libAtlasMessage-0.6.so.2 -lib/libAtlasMessage-0.6.so.2.0.0 +lib/libAtlasMessage-0.6.so.3 +lib/libAtlasMessage-0.6.so.3.0.0 lib/libAtlasNet-0.6.so -lib/libAtlasNet-0.6.so.2 -lib/libAtlasNet-0.6.so.2.0.0 +lib/libAtlasNet-0.6.so.3 +lib/libAtlasNet-0.6.so.3.0.0 lib/libAtlasObjects-0.6.so -lib/libAtlasObjects-0.6.so.2 -lib/libAtlasObjects-0.6.so.2.0.0 +lib/libAtlasObjects-0.6.so.3 +lib/libAtlasObjects-0.6.so.3.0.0 libdata/pkgconfig/atlascpp-0.6.pc %%PORTDOCS%%%%DOCSDIR%%/README %%PORTDOCS%%%%DOCSDIR%%/COPYING diff --git a/devel/autogen/Makefile b/devel/autogen/Makefile index f05b712692c..2e5d3c3fb92 100644 --- a/devel/autogen/Makefile +++ b/devel/autogen/Makefile @@ -2,34 +2,43 @@ # $FreeBSD$ PORTNAME= autogen -PORTVERSION= 5.18.12 -PORTREVISION= 3 +PORTVERSION= 5.18.16 CATEGORIES= devel MASTER_SITES= GNU/${PORTNAME}/rel${PORTVERSION} MAINTAINER= sunpoet@FreeBSD.org COMMENT= Tool designed to simplify the creation and maintenance of programs -LICENSE= GPLv2 +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/COPYING -BUILD_DEPENDS= ${RUN_DEPENDS} +BUILD_DEPENDS= ${RUN_DEPENDS} \ + gmktemp:sysutils/coreutils LIB_DEPENDS= libguile-2.0.so:lang/guile2 RUN_DEPENDS= bash:shells/bash # bin/columns CONFLICTS_INSTALL= columns -CONFIGURE_ARGS= --datadir=${PREFIX}/share --with-libguile=yes --with-libxml2=yes +USES= gmake gnome libtool pathfix perl5 pkgconfig shebangfix tar:xz +USE_GNOME= libxml2 +USE_PERL5= build + +CONFIGURE_ARGS= --datadir=${PREFIX}/share \ + --disable-dependency-tracking \ + --with-libguile=yes --with-libxml2=yes CONFIGURE_ENV= CONFIG_SHELL=${LOCALBASE}/bin/bash GNU_CONFIGURE= yes INSTALL_TARGET= install-strip -USE_GNOME= libxml2 +TEST_TARGET= check USE_LDCONFIG= yes -USE_PERL5= build -USES= gmake gnome libtool pathfix perl5 pkgconfig shebangfix tar:xz INFO= autogen SHEBANG_FILES= autoopts/tpl/*.pl +post-patch: + @${REINPLACE_CMD} -e '/CFLAGS=/ s| -Wno-format-contains-nul||; /WARN_CFLAGS=/ s| -Werror||' ${WRKSRC}/configure + @${REINPLACE_CMD} -e 's|mktemp --suffix=|g&|' ${WRKSRC}/agen5/mk-stamps.sh ${WRKSRC}/build-aux/run-ag.sh ${WRKSRC}/config/mk-shdefs.in + .include diff --git a/devel/autogen/distinfo b/devel/autogen/distinfo index bdd2a24e873..de53c2d803f 100644 --- a/devel/autogen/distinfo +++ b/devel/autogen/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1503166017 -SHA256 (autogen-5.18.12.tar.xz) = be3ba62e883185b6ee8475edae97d7197d701d6b9ad9c3d2df53697110c1bfd8 -SIZE (autogen-5.18.12.tar.xz) = 1018412 +TIMESTAMP = 1555690352 +SHA256 (autogen-5.18.16.tar.xz) = f8a13466b48faa3ba99fe17a069e71c9ab006d9b1cfabe699f8c60a47d5bb49a +SIZE (autogen-5.18.16.tar.xz) = 1046276 diff --git a/devel/autogen/pkg-plist b/devel/autogen/pkg-plist index 68f58289d1d..b6fcaca9618 100644 --- a/devel/autogen/pkg-plist +++ b/devel/autogen/pkg-plist @@ -9,7 +9,7 @@ lib/autogen/tpl-config.tlib lib/libopts.a lib/libopts.so lib/libopts.so.25 -lib/libopts.so.25.16.1 +lib/libopts.so.25.17.1 libdata/pkgconfig/autoopts.pc man/man1/autogen.1.gz man/man1/autoopts-config.1.gz @@ -57,8 +57,6 @@ share/aclocal/autoopts.m4 %%DATADIR%%/autoopts.m4 %%DATADIR%%/bits.tpl %%DATADIR%%/cmd-doc.tlib -%%DATADIR%%/confmacs.tlib -%%DATADIR%%/conftest.tpl %%DATADIR%%/def2pot.tpl %%DATADIR%%/fsm-macro.tlib %%DATADIR%%/fsm-trans.tlib @@ -68,7 +66,7 @@ share/aclocal/autoopts.m4 %%DATADIR%%/gplv2.lic %%DATADIR%%/lgpl.lic %%DATADIR%%/lgplv2.lic -%%DATADIR%%/libopts-41.1.16.tar.gz +%%DATADIR%%/libopts-42.1.17.tar.gz %%DATADIR%%/liboptschk.m4 %%DATADIR%%/man2mdoc %%DATADIR%%/man2texi diff --git a/devel/git-cinnabar/Makefile b/devel/git-cinnabar/Makefile index e8b9a57e46a..0838244715f 100644 --- a/devel/git-cinnabar/Makefile +++ b/devel/git-cinnabar/Makefile @@ -1,8 +1,8 @@ # $FreeBSD$ PORTNAME= git-cinnabar -DISTVERSION= 0.5.0-153 -DISTVERSIONSUFFIX= -ga3e664d +DISTVERSION= 0.5.0-156 +DISTVERSIONSUFFIX= -g86ed66e CATEGORIES= devel MAINTAINER= jbeich@FreeBSD.org diff --git a/devel/git-cinnabar/distinfo b/devel/git-cinnabar/distinfo index cd7d422b543..611395cc7f6 100644 --- a/devel/git-cinnabar/distinfo +++ b/devel/git-cinnabar/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555129290 -SHA256 (glandium-git-cinnabar-0.5.0-153-ga3e664d_GH0.tar.gz) = 01535a92b60f3b31fec820c6f18729ccd10c0d9bcee2864985fdd81e097a8891 -SIZE (glandium-git-cinnabar-0.5.0-153-ga3e664d_GH0.tar.gz) = 156887 +TIMESTAMP = 1555717651 +SHA256 (glandium-git-cinnabar-0.5.0-156-g86ed66e_GH0.tar.gz) = 9997454956ee6a8ff3fa259fca6c1944eeb7a3d234887099a7640917ad5be37f +SIZE (glandium-git-cinnabar-0.5.0-156-g86ed66e_GH0.tar.gz) = 157313 diff --git a/devel/gsoap/Makefile b/devel/gsoap/Makefile index 9415b02e852..b008e789601 100644 --- a/devel/gsoap/Makefile +++ b/devel/gsoap/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= gsoap -PORTVERSION= 2.8.82 +PORTVERSION= 2.8.83 CATEGORIES= devel MASTER_SITES= SF/${PORTNAME}2/gsoap-2.8 DISTNAME= ${PORTNAME}_${PORTVERSION} diff --git a/devel/gsoap/distinfo b/devel/gsoap/distinfo index 7dd2b5dd5cc..2847b69d3c3 100644 --- a/devel/gsoap/distinfo +++ b/devel/gsoap/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552675412 -SHA256 (gsoap_2.8.82.zip) = a2a6d37c94aaf8bf72ae9192848f21d99a9efa939f0d0d4ddad5a9e6be5ad72a -SIZE (gsoap_2.8.82.zip) = 32514214 +TIMESTAMP = 1555714974 +SHA256 (gsoap_2.8.83.zip) = 879ab40d40e379add9d3526c0592f891eaea16f7487be160157dbc40216e1633 +SIZE (gsoap_2.8.83.zip) = 32703770 diff --git a/devel/hpx/Makefile b/devel/hpx/Makefile index 9a33d163e59..55c9c1a9951 100644 --- a/devel/hpx/Makefile +++ b/devel/hpx/Makefile @@ -22,5 +22,7 @@ USE_LDCONFIG= yes CMAKE_ON= HPX_WITH_GENERIC_CONTEXT_COROUTINES CMAKE_OFF= HPX_WITH_EXAMPLES HPX_WITH_TESTS +LDFLAGS+= ${LDFLAGS_${CHOSEN_COMPILER_TYPE}} +LDFLAGS_gcc= -latomic .include diff --git a/devel/linux-c6-devtools/Makefile b/devel/linux-c6-devtools/Makefile index 3fd35e515d0..8db7d7389fc 100644 --- a/devel/linux-c6-devtools/Makefile +++ b/devel/linux-c6-devtools/Makefile @@ -3,23 +3,23 @@ PORTNAME= devtools PORTVERSION= ${LINUX_DIST_VER} -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= devel -BIN_DISTNAMES= binutils-2.20.51.0.2-5.48.el6 \ - glibc-headers-2.12-1.212.el6 \ - kernel-headers-2.6.32-754.9.1.el6 \ +BIN_DISTNAMES= binutils-2.20.51.0.2-5.48.el6_10.1 \ + glibc-headers-2.12-1.212.el6_10.3 \ + kernel-headers-2.6.32-754.12.1.el6 \ mpfr-2.4.1-6.el6 \ cpp-4.4.7-23.el6 \ gcc-4.4.7-23.el6 \ gcc-c++-4.4.7-23.el6 \ gcc-gfortran-4.4.7-23.el6 -LIB_DISTNAMES= binutils-devel-2.20.51.0.2-5.48.el6 \ - glibc-devel-2.12-1.212.el6 \ +LIB_DISTNAMES= binutils-devel-2.20.51.0.2-5.48.el6_10.1 \ + glibc-devel-2.12-1.212.el6_10.3 \ libstdc++-devel-4.4.7-23.el6 \ libgomp-4.4.7-23.el6 -SRC_DISTFILES= binutils-2.20.51.0.2-5.48.el6${SRC_SUFX}:SOURCE \ - glibc-2.12-1.212.el6${SRC_SUFX}:SOURCE \ - kernel-2.6.32-754.9.1.el6${SRC_SUFX}:SOURCE \ +SRC_DISTFILES= binutils-2.20.51.0.2-5.48.el6_10.1${SRC_SUFX}:SOURCE \ + glibc-2.12-1.212.el6_10.3${SRC_SUFX}:SOURCE \ + kernel-2.6.32-754.12.1.el6${SRC_SUFX}:SOURCE \ mpfr-2.4.1-6.el6${SRC_SUFX}:SOURCE \ gcc-4.4.7-23.el6${SRC_SUFX}:SOURCE diff --git a/devel/linux-c6-devtools/distinfo b/devel/linux-c6-devtools/distinfo index 02c601dc9ca..d644a7708c0 100644 --- a/devel/linux-c6-devtools/distinfo +++ b/devel/linux-c6-devtools/distinfo @@ -1,12 +1,12 @@ -TIMESTAMP = 1544970164 -SHA256 (centos/binutils-2.20.51.0.2-5.48.el6.i686.rpm) = 41e4ed0a5db0fcd8c0af8feb5c2f24d576678905e038abf4cdae7fa306b440da -SIZE (centos/binutils-2.20.51.0.2-5.48.el6.i686.rpm) = 2916548 -SHA256 (centos/binutils-2.20.51.0.2-5.48.el6.x86_64.rpm) = 1cc15a61efdec7fa45f40bfaa636c627917263803becbeb705eb7560de9e3d74 -SIZE (centos/binutils-2.20.51.0.2-5.48.el6.x86_64.rpm) = 2901572 -SHA256 (centos/binutils-devel-2.20.51.0.2-5.48.el6.i686.rpm) = b71663fd26eea2c2bc0dfa9873eafa945e8ae2044589a3a0e71faf9519a564ec -SIZE (centos/binutils-devel-2.20.51.0.2-5.48.el6.i686.rpm) = 746692 -SHA256 (centos/binutils-devel-2.20.51.0.2-5.48.el6.x86_64.rpm) = 9039c40c639f4e87129df2a56535b221fd7e35a5e2686176606f58a999bbb3ce -SIZE (centos/binutils-devel-2.20.51.0.2-5.48.el6.x86_64.rpm) = 704276 +TIMESTAMP = 1555676694 +SHA256 (centos/binutils-2.20.51.0.2-5.48.el6_10.1.i686.rpm) = afa661d760a4ac97a7959ca7949a626b96f4a406b3bbfedc60eba4d767c635cf +SIZE (centos/binutils-2.20.51.0.2-5.48.el6_10.1.i686.rpm) = 2916716 +SHA256 (centos/binutils-2.20.51.0.2-5.48.el6_10.1.x86_64.rpm) = fcffe62534bf900ab84700da19b51f98ab5bc0227f5f3b862df16d4d8d8d1b2d +SIZE (centos/binutils-2.20.51.0.2-5.48.el6_10.1.x86_64.rpm) = 2901724 +SHA256 (centos/binutils-devel-2.20.51.0.2-5.48.el6_10.1.i686.rpm) = f8d8d58e471267f6247ee3bd3a54fd742a78af3dba468fa131c13b2f0e4a7ada +SIZE (centos/binutils-devel-2.20.51.0.2-5.48.el6_10.1.i686.rpm) = 746772 +SHA256 (centos/binutils-devel-2.20.51.0.2-5.48.el6_10.1.x86_64.rpm) = 1e6aad2dbc7a54ee34792b13980842ad833cd92000129334bf462b3593b3e1ad +SIZE (centos/binutils-devel-2.20.51.0.2-5.48.el6_10.1.x86_64.rpm) = 704460 SHA256 (centos/cpp-4.4.7-23.el6.i686.rpm) = ec2ec4d36952c24e19313d466ae95414391a2ebede10d11a5e62b35407666ac4 SIZE (centos/cpp-4.4.7-23.el6.i686.rpm) = 3534708 SHA256 (centos/cpp-4.4.7-23.el6.x86_64.rpm) = 71982f49079cf1d9c0496b2ed6bc0c52a5626901dccba535769fcb68850a50b0 @@ -23,18 +23,18 @@ SHA256 (centos/gcc-gfortran-4.4.7-23.el6.i686.rpm) = e40eeb60639e6bfcabb91291323 SIZE (centos/gcc-gfortran-4.4.7-23.el6.i686.rpm) = 4331608 SHA256 (centos/gcc-gfortran-4.4.7-23.el6.x86_64.rpm) = 0a48dcb464fa0d67491b40ad2d1cdcd250bebc89f7366cbdf46a412651b7ef66 SIZE (centos/gcc-gfortran-4.4.7-23.el6.x86_64.rpm) = 4960920 -SHA256 (centos/glibc-devel-2.12-1.212.el6.i686.rpm) = 9c2daa59d7291120f2a10f2e0d4871d8a92b0ae7b6134a334f1f41b406b53968 -SIZE (centos/glibc-devel-2.12-1.212.el6.i686.rpm) = 1015068 -SHA256 (centos/glibc-devel-2.12-1.212.el6.x86_64.rpm) = 65b97f1f868afc090b1beec846490d1e6974751f188fd42b1ebc59d1c2866549 -SIZE (centos/glibc-devel-2.12-1.212.el6.x86_64.rpm) = 1014636 -SHA256 (centos/glibc-headers-2.12-1.212.el6.i686.rpm) = b577f84dfafca8e466a1fd2e956dbb0ed17fbcdbbf9e9a47b8653ada56180674 -SIZE (centos/glibc-headers-2.12-1.212.el6.i686.rpm) = 642844 -SHA256 (centos/glibc-headers-2.12-1.212.el6.x86_64.rpm) = 7f1f3a2cf562465f2c18031e4e76734987ea8489c1202301e019dfb722ff5031 -SIZE (centos/glibc-headers-2.12-1.212.el6.x86_64.rpm) = 634640 -SHA256 (centos/kernel-headers-2.6.32-754.9.1.el6.i686.rpm) = 2db28e20b49c3b9d19794ceec524c9f1f183864892a2f21a6ce8296d760b1659 -SIZE (centos/kernel-headers-2.6.32-754.9.1.el6.i686.rpm) = 4769248 -SHA256 (centos/kernel-headers-2.6.32-754.9.1.el6.x86_64.rpm) = 96d4ad2072af82715af88222e624ae23b497a5bd1faf403e5d23da20cf2d1402 -SIZE (centos/kernel-headers-2.6.32-754.9.1.el6.x86_64.rpm) = 4769192 +SHA256 (centos/glibc-devel-2.12-1.212.el6_10.3.i686.rpm) = 03634dfff8f00d04043209deab8dde2a30e5092bd702e4ba9816b3876766f33d +SIZE (centos/glibc-devel-2.12-1.212.el6_10.3.i686.rpm) = 1015288 +SHA256 (centos/glibc-devel-2.12-1.212.el6_10.3.x86_64.rpm) = 29c18d7523c08746cb053c6682eedefb3029b6da97125b698208981d090dc168 +SIZE (centos/glibc-devel-2.12-1.212.el6_10.3.x86_64.rpm) = 1014852 +SHA256 (centos/glibc-headers-2.12-1.212.el6_10.3.i686.rpm) = f84d11134f3771db1fed3e4b3d1ee3b6051e7ebe39af44d2e9411f844ab2b233 +SIZE (centos/glibc-headers-2.12-1.212.el6_10.3.i686.rpm) = 643188 +SHA256 (centos/glibc-headers-2.12-1.212.el6_10.3.x86_64.rpm) = 363274964801ba43b67ba265b303da4e5c26206b816bcc72ef7ac92f1b24f93d +SIZE (centos/glibc-headers-2.12-1.212.el6_10.3.x86_64.rpm) = 635028 +SHA256 (centos/kernel-headers-2.6.32-754.12.1.el6.i686.rpm) = 68b433532fca9e4a6ee4a2b01e73060fdfe60d8d749890a3f6742816acd62c09 +SIZE (centos/kernel-headers-2.6.32-754.12.1.el6.i686.rpm) = 4773240 +SHA256 (centos/kernel-headers-2.6.32-754.12.1.el6.x86_64.rpm) = 8218f7ebda403674698cbc59a53e7071e954c3e7ea01d4680055015ffa2fc97c +SIZE (centos/kernel-headers-2.6.32-754.12.1.el6.x86_64.rpm) = 4773208 SHA256 (centos/libgomp-4.4.7-23.el6.i686.rpm) = 6a634e98d74c220db175200db019422af811b521ea0aabfe2fa2f62c8d9dc0d8 SIZE (centos/libgomp-4.4.7-23.el6.i686.rpm) = 140056 SHA256 (centos/libgomp-4.4.7-23.el6.x86_64.rpm) = e3faf3d3339f825ea25b900f8c67bd5e46f5e5494d85ee9608d4bf51b7fe1466 @@ -47,12 +47,12 @@ SHA256 (centos/mpfr-2.4.1-6.el6.i686.rpm) = e732d3292785d1590841b569af10536fa5d9 SIZE (centos/mpfr-2.4.1-6.el6.i686.rpm) = 157100 SHA256 (centos/mpfr-2.4.1-6.el6.x86_64.rpm) = 20d2ce3bc1ea03844a0beb1726b01ef50d8555b3c9facb65264055a634709cf4 SIZE (centos/mpfr-2.4.1-6.el6.x86_64.rpm) = 160772 -SHA256 (centos/binutils-2.20.51.0.2-5.48.el6.src.rpm) = 375d7d1e6444be986851621c40344be98bf9309f1f85c87817380c47818443cf -SIZE (centos/binutils-2.20.51.0.2-5.48.el6.src.rpm) = 16331556 -SHA256 (centos/glibc-2.12-1.212.el6.src.rpm) = 5b49ed4c71e495ebfcb0157675bc17d22604a101f2810f220b2c0f6ba4a01550 -SIZE (centos/glibc-2.12-1.212.el6.src.rpm) = 16765786 -SHA256 (centos/kernel-2.6.32-754.9.1.el6.src.rpm) = 818f3b8454a9d5d2a8b8f84ccbf8c8cef1e5025017e9307665aa43adb98fffe9 -SIZE (centos/kernel-2.6.32-754.9.1.el6.src.rpm) = 133702354 +SHA256 (centos/binutils-2.20.51.0.2-5.48.el6_10.1.src.rpm) = e0ad428636abc38068b7fc3d8f2dc82e4b6fbabd1933d258e27b1da4f2ac5085 +SIZE (centos/binutils-2.20.51.0.2-5.48.el6_10.1.src.rpm) = 16333246 +SHA256 (centos/glibc-2.12-1.212.el6_10.3.src.rpm) = 343720baf52d494b96022005cace30033af4e71031b755df0c3c1dfca9f8824f +SIZE (centos/glibc-2.12-1.212.el6_10.3.src.rpm) = 16769925 +SHA256 (centos/kernel-2.6.32-754.12.1.el6.src.rpm) = 2ea407f3f6366c4ee809ff41d1ac6aff6bdecba6a53149bbd0acf85047b4a090 +SIZE (centos/kernel-2.6.32-754.12.1.el6.src.rpm) = 133728434 SHA256 (centos/mpfr-2.4.1-6.el6.src.rpm) = 4b5fcd2cf40deb6a791f4fa4e39315e2345001e528c45ed52042e3c4ba467f6c SIZE (centos/mpfr-2.4.1-6.el6.src.rpm) = 911271 SHA256 (centos/gcc-4.4.7-23.el6.src.rpm) = 7492c85cc0f146f6d81653f51a9fda02cf164747cbfa7527166205108d6a6ae0 diff --git a/devel/linux-c6-devtools/pkg-plist.amd64 b/devel/linux-c6-devtools/pkg-plist.amd64 index 279d6239570..aad750f9a9c 100644 --- a/devel/linux-c6-devtools/pkg-plist.amd64 +++ b/devel/linux-c6-devtools/pkg-plist.amd64 @@ -1897,7 +1897,7 @@ usr/lib64/crtn.o usr/lib64/gcrt1.o usr/lib64/libBrokenLocale.so usr/lib64/libanl.so -usr/lib64/libbfd-2.20.51.0.2-5.48.el6.so +usr/lib64/libbfd-2.20.51.0.2-5.48.el6_10.1.so usr/lib64/libbfd.a usr/lib64/libbfd.so usr/lib64/libbsd-compat.a @@ -1923,7 +1923,7 @@ usr/lib64/libnss_files.so usr/lib64/libnss_hesiod.so usr/lib64/libnss_nis.so usr/lib64/libnss_nisplus.so -usr/lib64/libopcodes-2.20.51.0.2-5.48.el6.so +usr/lib64/libopcodes-2.20.51.0.2-5.48.el6_10.1.so usr/lib64/libopcodes.a usr/lib64/libopcodes.so usr/lib64/libpthread.so diff --git a/devel/linux-c6-devtools/pkg-plist.i386 b/devel/linux-c6-devtools/pkg-plist.i386 index 84207a1faf5..69e53310898 100644 --- a/devel/linux-c6-devtools/pkg-plist.i386 +++ b/devel/linux-c6-devtools/pkg-plist.i386 @@ -1783,7 +1783,7 @@ usr/lib/gcc/i686-redhat-linux/4.4.7 usr/lib/gcrt1.o usr/lib/libBrokenLocale.so usr/lib/libanl.so -usr/lib/libbfd-2.20.51.0.2-5.48.el6.so +usr/lib/libbfd-2.20.51.0.2-5.48.el6_10.1.so usr/lib/libbfd.a usr/lib/libbfd.so usr/lib/libbsd-compat.a @@ -1809,7 +1809,7 @@ usr/lib/libnss_files.so usr/lib/libnss_hesiod.so usr/lib/libnss_nis.so usr/lib/libnss_nisplus.so -usr/lib/libopcodes-2.20.51.0.2-5.48.el6.so +usr/lib/libopcodes-2.20.51.0.2-5.48.el6_10.1.so usr/lib/libopcodes.a usr/lib/libopcodes.so usr/lib/libpthread.so diff --git a/devel/p5-Inline-CPP/Makefile b/devel/p5-Inline-CPP/Makefile index fb8c54eef87..bea352ce9f0 100644 --- a/devel/p5-Inline-CPP/Makefile +++ b/devel/p5-Inline-CPP/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= Inline-CPP -PORTVERSION= 0.79 +PORTVERSION= 0.80 CATEGORIES= devel perl5 MASTER_SITES= CPAN PKGNAMEPREFIX= p5- @@ -15,8 +15,8 @@ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= p5-ExtUtils-CppGuess>=0.15:devel/p5-ExtUtils-CppGuess \ ${RUN_DEPENDS} -RUN_DEPENDS= p5-Inline>=0.78:devel/p5-Inline \ - p5-Inline-C>=0.78:devel/p5-Inline-C \ +RUN_DEPENDS= p5-Inline>=0.82:devel/p5-Inline \ + p5-Inline-C>=0.80:devel/p5-Inline-C \ p5-Parse-RecDescent>=0:devel/p5-Parse-RecDescent USES= perl5 diff --git a/devel/p5-Inline-CPP/distinfo b/devel/p5-Inline-CPP/distinfo index befc37e19ab..48529cfd74a 100644 --- a/devel/p5-Inline-CPP/distinfo +++ b/devel/p5-Inline-CPP/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1554399640 -SHA256 (Inline-CPP-0.79.tar.gz) = bef6d1254c83fce452606b86ce60e37d5d462762f13ca79728c3112f76ddba03 -SIZE (Inline-CPP-0.79.tar.gz) = 63633 +TIMESTAMP = 1555702410 +SHA256 (Inline-CPP-0.80.tar.gz) = 664b220e733c300fb7232738f767ddbfb30332589687eae0f09292a6ba088f06 +SIZE (Inline-CPP-0.80.tar.gz) = 63649 diff --git a/devel/p5-Inline-CPP/files/patch-Makefile.PL b/devel/p5-Inline-CPP/files/patch-Makefile.PL index 4507d5f308b..d8904278d72 100644 --- a/devel/p5-Inline-CPP/files/patch-Makefile.PL +++ b/devel/p5-Inline-CPP/files/patch-Makefile.PL @@ -1,14 +1,5 @@ --- Makefile.PL.orig 2019-04-02 14:50:25 UTC +++ Makefile.PL -@@ -10,7 +10,7 @@ my $CPP_Config_path = 'lib/Inline/CPP/Co - - my %PREREQ_PM = ( - 'Inline' => '0.78', -- 'Inline::C' => '0.78_003', # supports 5.8.1 -+ 'Inline::C' => '0.78', # supports 5.8.1 - 'Parse::RecDescent' => '0', - 'Carp' => '0', - 'Config' => '0', @@ -22,11 +22,6 @@ my $guess = ExtUtils::CppGuess->new; my @info = map $guess->$_, qw(compiler_command linker_flags iostream_fname cpp_flavor_defs); diff --git a/devel/physfs/Makefile b/devel/physfs/Makefile index 6b799f4187d..688ae1b67b9 100644 --- a/devel/physfs/Makefile +++ b/devel/physfs/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= physfs -PORTVERSION= 3.0.1 -PORTREVISION= 1 +PORTVERSION= 3.0.2 CATEGORIES= devel MASTER_SITES= http://icculus.org/${PORTNAME}/downloads/ diff --git a/devel/physfs/distinfo b/devel/physfs/distinfo index d6308d04f54..0e8521ab3f3 100644 --- a/devel/physfs/distinfo +++ b/devel/physfs/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1535226407 -SHA256 (physfs-3.0.1.tar.bz2) = b77b9f853168d9636a44f75fca372b363106f52d789d18a2f776397bf117f2f1 -SIZE (physfs-3.0.1.tar.bz2) = 194638 +TIMESTAMP = 1555690993 +SHA256 (physfs-3.0.2.tar.bz2) = 304df76206d633df5360e738b138c94e82ccf086e50ba84f456d3f8432f9f863 +SIZE (physfs-3.0.2.tar.bz2) = 194888 diff --git a/devel/physfs/pkg-plist b/devel/physfs/pkg-plist index e49a72ebb7e..0f208b47f0d 100644 --- a/devel/physfs/pkg-plist +++ b/devel/physfs/pkg-plist @@ -1,7 +1,7 @@ bin/test_physfs include/physfs.h lib/libphysfs.so.1 -lib/libphysfs.so.3.0.1 +lib/libphysfs.so.3.0.2 lib/libphysfs.a lib/libphysfs.so libdata/pkgconfig/physfs.pc diff --git a/devel/py-jsonschema2/Makefile b/devel/py-jsonschema2/Makefile index 6e5b4cb0c24..27f2e309d51 100644 --- a/devel/py-jsonschema2/Makefile +++ b/devel/py-jsonschema2/Makefile @@ -14,6 +14,9 @@ COMMENT= JSON Schema validation for Python LICENSE= MIT LICENSE_FILE= ${WRKSRC}/COPYING +DEPRECATED= Use devel/py-jsonschema instead +EXPIRATION_DATE=2019-04-30 + BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}vcversioner>=2.16.0.0:devel/py-vcversioner@${PY_FLAVOR} USES= python diff --git a/devel/py-libtaxii/Makefile b/devel/py-libtaxii/Makefile index 06b0b201cea..b8381cb037c 100644 --- a/devel/py-libtaxii/Makefile +++ b/devel/py-libtaxii/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= libtaxii -PORTVERSION= 1.1.112 +PORTVERSION= 1.1.113 CATEGORIES= devel python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/devel/py-libtaxii/distinfo b/devel/py-libtaxii/distinfo index 3941e45f1e0..93b7e0cac4b 100644 --- a/devel/py-libtaxii/distinfo +++ b/devel/py-libtaxii/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555592579 -SHA256 (TAXIIProject-libtaxii-1.1.112_GH0.tar.gz) = d4b0ccb26bde707d2ae22b653656eb9a567a65f7105b90c33c5b431cc8ff20d1 -SIZE (TAXIIProject-libtaxii-1.1.112_GH0.tar.gz) = 119803 +TIMESTAMP = 1555702415 +SHA256 (TAXIIProject-libtaxii-1.1.113_GH0.tar.gz) = cf315c3713cec0f23e8356f5a89f73f09384fecb14d82ce743d34b87f580ebf5 +SIZE (TAXIIProject-libtaxii-1.1.113_GH0.tar.gz) = 120741 diff --git a/devel/py-tempora/Makefile b/devel/py-tempora/Makefile index 12e59a20a7a..f81c5b9e8e9 100644 --- a/devel/py-tempora/Makefile +++ b/devel/py-tempora/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= tempora -PORTVERSION= 1.14 -PORTREVISION= 1 +PORTVERSION= 1.14.1 CATEGORIES= devel python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -18,8 +17,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools_scm>=1.15.0:devel/py-setuptools RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}jaraco.functools>=1.20:devel/py-jaraco.functools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytz>=0:devel/py-pytz@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>=0:devel/py-six@${PY_FLAVOR} -TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>=3.5:devel/py-pytest@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pytest-sugar>=0.9.1:devel/py-pytest-sugar@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>=3.5:devel/py-pytest@${PY_FLAVOR} USES= python USE_PYTHON= autoplist concurrent distutils diff --git a/devel/py-tempora/distinfo b/devel/py-tempora/distinfo index 5d4425ed3d4..228a55ed537 100644 --- a/devel/py-tempora/distinfo +++ b/devel/py-tempora/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1541184161 -SHA256 (tempora-1.14.tar.gz) = 4951da790bd369f718dbe2287adbdc289dc2575a09278e77fad6131bcfe93097 -SIZE (tempora-1.14.tar.gz) = 16009 +TIMESTAMP = 1555702419 +SHA256 (tempora-1.14.1.tar.gz) = cb60b1d2b1664104e307f8e5269d7f4acdb077c82e35cd57246ae14a3427d2d6 +SIZE (tempora-1.14.1.tar.gz) = 19383 diff --git a/devel/rubygem-aws-sdk-core/Makefile b/devel/rubygem-aws-sdk-core/Makefile index 4480e0f39ac..fc59f68faff 100644 --- a/devel/rubygem-aws-sdk-core/Makefile +++ b/devel/rubygem-aws-sdk-core/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= aws-sdk-core -DISTVERSION= 2.11.258 +DISTVERSION= 2.11.259 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-aws-sdk-core/distinfo b/devel/rubygem-aws-sdk-core/distinfo index 36d488494a4..da8aa4f8f9a 100644 --- a/devel/rubygem-aws-sdk-core/distinfo +++ b/devel/rubygem-aws-sdk-core/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555592240 -SHA256 (rubygem/aws-sdk-core-2.11.258.gem) = ac0c489fbd0dd3abc31d7e59fb20f2958151a091ccbe15504774c382b5c32061 -SIZE (rubygem/aws-sdk-core-2.11.258.gem) = 1547264 +TIMESTAMP = 1555702431 +SHA256 (rubygem/aws-sdk-core-2.11.259.gem) = 385f2ebc74c31a2743ee9c152a526473cb3e8b286f1fda49d32d1199a4ec9853 +SIZE (rubygem/aws-sdk-core-2.11.259.gem) = 1548288 diff --git a/devel/rubygem-aws-sdk-resources/Makefile b/devel/rubygem-aws-sdk-resources/Makefile index 1bf0572b0ab..c18847a835a 100644 --- a/devel/rubygem-aws-sdk-resources/Makefile +++ b/devel/rubygem-aws-sdk-resources/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= aws-sdk-resources -DISTVERSION= 2.11.258 +DISTVERSION= 2.11.259 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-aws-sdk-resources/distinfo b/devel/rubygem-aws-sdk-resources/distinfo index 284388a4d9e..0fbea9170f9 100644 --- a/devel/rubygem-aws-sdk-resources/distinfo +++ b/devel/rubygem-aws-sdk-resources/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555592241 -SHA256 (rubygem/aws-sdk-resources-2.11.258.gem) = 8513f08483e9b25983bf3f48f977106d14823f06f92e6906c52b3ed4563e2eee -SIZE (rubygem/aws-sdk-resources-2.11.258.gem) = 48640 +TIMESTAMP = 1555702432 +SHA256 (rubygem/aws-sdk-resources-2.11.259.gem) = 518b1f3c6d77cb8b02b91210da1be297f70142b181d0afacd0a0e4653c061838 +SIZE (rubygem/aws-sdk-resources-2.11.259.gem) = 48640 diff --git a/devel/rubygem-aws-sdk/Makefile b/devel/rubygem-aws-sdk/Makefile index 5c73d888bad..8c07ef8c02f 100644 --- a/devel/rubygem-aws-sdk/Makefile +++ b/devel/rubygem-aws-sdk/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= aws-sdk -DISTVERSION= 2.11.258 +DISTVERSION= 2.11.259 CATEGORIES= devel rubygems MASTER_SITES= RG diff --git a/devel/rubygem-aws-sdk/distinfo b/devel/rubygem-aws-sdk/distinfo index 72f80f7bb0b..ecade2cf911 100644 --- a/devel/rubygem-aws-sdk/distinfo +++ b/devel/rubygem-aws-sdk/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555592238 -SHA256 (rubygem/aws-sdk-2.11.258.gem) = 30cb54a3866e8148ec8d8aee4f57ec593d4f47c0a2be0f857d4dbf3c8ad048f7 -SIZE (rubygem/aws-sdk-2.11.258.gem) = 4608 +TIMESTAMP = 1555702429 +SHA256 (rubygem/aws-sdk-2.11.259.gem) = e5bd6d30f73f203a565bdcbd560b62d4137102c14d56ef44c716fd99b911fdf6 +SIZE (rubygem/aws-sdk-2.11.259.gem) = 4608 diff --git a/dns/py-dns-lexicon/Makefile b/dns/py-dns-lexicon/Makefile index a60254f53d0..f5a1a785377 100644 --- a/dns/py-dns-lexicon/Makefile +++ b/dns/py-dns-lexicon/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= dns-lexicon -DISTVERSION= 3.2.1 -PORTREVISION= 1 +DISTVERSION= 3.2.2 CATEGORIES= dns python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/dns/py-dns-lexicon/distinfo b/dns/py-dns-lexicon/distinfo index 4554d17bbc0..7f9409f0734 100644 --- a/dns/py-dns-lexicon/distinfo +++ b/dns/py-dns-lexicon/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1554643592 -SHA256 (dns-lexicon-3.2.1.tar.gz) = 974e728c9be8c2c8fe28ecd1e1b8dda233e24dc90409cef90f9821eb6e5eb3b2 -SIZE (dns-lexicon-3.2.1.tar.gz) = 126069 +TIMESTAMP = 1555702423 +SHA256 (dns-lexicon-3.2.2.tar.gz) = 1e4b97b4b758c632fe21ff0af78890e7cfb987adc39973d0deff47e113d03d6e +SIZE (dns-lexicon-3.2.2.tar.gz) = 123912 diff --git a/editors/dte/Makefile b/editors/dte/Makefile index 3ae9e700105..e7a55d474d0 100644 --- a/editors/dte/Makefile +++ b/editors/dte/Makefile @@ -2,7 +2,7 @@ PORTNAME= dte DISTVERSIONPREFIX= v -DISTVERSION= 1.7 +DISTVERSION= 1.8 CATEGORIES= editors MAINTAINER= dg@syrec.org @@ -12,10 +12,13 @@ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE USES= iconv gmake ncurses + MAKEFILE= ${WRKSRC}/GNUmakefile MAKE_ARGS= V=1 prefix=${PREFIX} mandir=${PREFIX}/man + USE_GITHUB= yes GH_ACCOUNT= craigbarnes + TEST_TARGET= check PLIST_FILES= bin/dte \ diff --git a/editors/dte/distinfo b/editors/dte/distinfo index 2734363c2a4..3be7586e317 100644 --- a/editors/dte/distinfo +++ b/editors/dte/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1526056656 -SHA256 (craigbarnes-dte-v1.7_GH0.tar.gz) = 6cd070037d9c6f4b4f3b5bedd78183dde5f8e79811ccdf04b0e7abafe5fdc33d -SIZE (craigbarnes-dte-v1.7_GH0.tar.gz) = 228936 +TIMESTAMP = 1555676844 +SHA256 (craigbarnes-dte-v1.8_GH0.tar.gz) = 49316028e91428d7ee699cc289650dacf12854513544d884fae568a8da957981 +SIZE (craigbarnes-dte-v1.8_GH0.tar.gz) = 260814 diff --git a/emulators/linux_base-c6/Makefile b/emulators/linux_base-c6/Makefile index 3a7778d7605..d16e9268efa 100644 --- a/emulators/linux_base-c6/Makefile +++ b/emulators/linux_base-c6/Makefile @@ -3,6 +3,7 @@ PORTNAME= c6 PORTVERSION= ${LINUX_DIST_VER} +PORTREVISION= 1 CATEGORIES= emulators linux PKGNAMEPREFIX= linux_base- BIN_DISTNAMES= bash-4.1.2-48.el6 \ @@ -12,7 +13,7 @@ BIN_DISTNAMES= bash-4.1.2-48.el6 \ e2fsprogs-1.41.12-24.el6 \ elfutils-0.164-2.el6 \ findutils-4.4.2-9.el6 \ - glibc-common-2.12-1.212.el6 \ + glibc-common-2.12-1.212.el6_10.3 \ grep-2.20-6.el6 \ info-4.13a-8.el6 \ keyutils-1.4-5.el6 \ @@ -32,7 +33,7 @@ LIB_DISTNAMES= bzip2-libs-1.0.5-7.el6_0 \ gamin-0.1.10-9.el6 \ gdbm-1.8.0-39.el6 \ glib2-2.28.8-10.el6 \ - glibc-2.12-1.212.el6 \ + glibc-2.12-1.212.el6_10.3 \ gmp-4.3.1-13.el6 \ keyutils-libs-1.4-5.el6 \ krb5-libs-1.10.3-65.el6 \ @@ -78,7 +79,7 @@ SRC_DISTFILES= acl-2.2.49-7.el6_9.1${SRC_SUFX}:SOURCE \ gcc-4.4.7-23.el6${SRC_SUFX}:SOURCE \ gdbm-1.8.0-39.el6${SRC_SUFX}:SOURCE \ glib2-2.28.8-10.el6${SRC_SUFX}:SOURCE \ - glibc-2.12-1.212.el6${SRC_SUFX}:SOURCE \ + glibc-2.12-1.212.el6_10.3${SRC_SUFX}:SOURCE \ gmp-4.3.1-13.el6${SRC_SUFX}:SOURCE \ grep-2.20-6.el6${SRC_SUFX}:SOURCE \ keyutils-1.4-5.el6${SRC_SUFX}:SOURCE \ diff --git a/emulators/linux_base-c6/distinfo b/emulators/linux_base-c6/distinfo index f8f29952acf..5f4410fa989 100644 --- a/emulators/linux_base-c6/distinfo +++ b/emulators/linux_base-c6/distinfo @@ -1,4 +1,4 @@ -TIMESTAMP = 1532346533 +TIMESTAMP = 1555677123 SHA256 (centos/basesystem-10.0-4.el6.noarch.rpm) = 18860007697438e375733bb4a36a599daac2e2ae95d98a74c436a10d0974710e SIZE (centos/basesystem-10.0-4.el6.noarch.rpm) = 4784 SHA256 (centos/bash-4.1.2-48.el6.i686.rpm) = 0300a6935602bb86a6e44dc526993069e79b80a32a02cfaeec7def94e3a2973e @@ -69,14 +69,14 @@ SHA256 (centos/glib2-2.28.8-10.el6.i686.rpm) = 5c5047aa038108beaa9fa683d8e6e7b8c SIZE (centos/glib2-2.28.8-10.el6.i686.rpm) = 1739356 SHA256 (centos/glib2-2.28.8-10.el6.x86_64.rpm) = a3945f3e6ee7c6fc8dd11a4f39641a8df6af818198e0a45a1f73f4753f6bd34c SIZE (centos/glib2-2.28.8-10.el6.x86_64.rpm) = 1757180 -SHA256 (centos/glibc-2.12-1.212.el6.i686.rpm) = 6f2146875ca4d93bd48c3c5c148eea2dd75d1d3f17a3c9a7136a06cf97d3cdaa -SIZE (centos/glibc-2.12-1.212.el6.i686.rpm) = 4570452 -SHA256 (centos/glibc-2.12-1.212.el6.x86_64.rpm) = b893707c0dc87a556274feb53c544515a1d3b0fe2743c454dece682f5b7d5719 -SIZE (centos/glibc-2.12-1.212.el6.x86_64.rpm) = 4009628 -SHA256 (centos/glibc-common-2.12-1.212.el6.i686.rpm) = e9e486b3e2fd625cb8fb821ce2d810108ce7ac33b1d4f6357f6aeb51b19cdb16 -SIZE (centos/glibc-common-2.12-1.212.el6.i686.rpm) = 14913320 -SHA256 (centos/glibc-common-2.12-1.212.el6.x86_64.rpm) = 721dfba71f7402d94070fe155f468666f2b785d56a638eec3d6ba3dc97fbef75 -SIZE (centos/glibc-common-2.12-1.212.el6.x86_64.rpm) = 14924656 +SHA256 (centos/glibc-2.12-1.212.el6_10.3.i686.rpm) = 18a17790ec698ecce8da2d3bc72797341287d1693ff7280d825aa9a4b2bb3713 +SIZE (centos/glibc-2.12-1.212.el6_10.3.i686.rpm) = 4570740 +SHA256 (centos/glibc-2.12-1.212.el6_10.3.x86_64.rpm) = 0383c8ba8d870938a5a2ae252a2168e5a291a9b880e9c05537e4874acb8efc50 +SIZE (centos/glibc-2.12-1.212.el6_10.3.x86_64.rpm) = 4010028 +SHA256 (centos/glibc-common-2.12-1.212.el6_10.3.i686.rpm) = 6bf91eda70d82e03f7ce027b12fbb30aa67123d24c31ede804d888ba8ddd585f +SIZE (centos/glibc-common-2.12-1.212.el6_10.3.i686.rpm) = 14913752 +SHA256 (centos/glibc-common-2.12-1.212.el6_10.3.x86_64.rpm) = 5eb095c1ed264f0459c81d13e741cd130d5b5ca37e5277371c5429d621f68434 +SIZE (centos/glibc-common-2.12-1.212.el6_10.3.x86_64.rpm) = 14925088 SHA256 (centos/gmp-4.3.1-13.el6.i686.rpm) = acfe1ea07cd3a1d4a6189ccace58656d2141c999a7b047ab5fc2b280a7b8152e SIZE (centos/gmp-4.3.1-13.el6.i686.rpm) = 229492 SHA256 (centos/gmp-4.3.1-13.el6.x86_64.rpm) = 01df5bd8ea911e79b38feebc9dcc3a3fed43ae24a5174806745c1d4adfc28a3e @@ -247,8 +247,8 @@ SHA256 (centos/gdbm-1.8.0-39.el6.src.rpm) = 13bedebe3edf71d6d66a9e6631630cd5d77b SIZE (centos/gdbm-1.8.0-39.el6.src.rpm) = 153252 SHA256 (centos/glib2-2.28.8-10.el6.src.rpm) = 138f11f112f8e35840249c73d06e7dcd13c58ba671124a5130fd6559c7b3cf15 SIZE (centos/glib2-2.28.8-10.el6.src.rpm) = 7260320 -SHA256 (centos/glibc-2.12-1.212.el6.src.rpm) = 5b49ed4c71e495ebfcb0157675bc17d22604a101f2810f220b2c0f6ba4a01550 -SIZE (centos/glibc-2.12-1.212.el6.src.rpm) = 16765786 +SHA256 (centos/glibc-2.12-1.212.el6_10.3.src.rpm) = 343720baf52d494b96022005cace30033af4e71031b755df0c3c1dfca9f8824f +SIZE (centos/glibc-2.12-1.212.el6_10.3.src.rpm) = 16769925 SHA256 (centos/gmp-4.3.1-13.el6.src.rpm) = 5af062b73a58672978dff7844b35af97589417d30f49bc60c22f67c28c470480 SIZE (centos/gmp-4.3.1-13.el6.src.rpm) = 1921742 SHA256 (centos/grep-2.20-6.el6.src.rpm) = 51abe4885435923e74f15f2c11994430d2e3510f004f4e4c2ab3a0b5a0469657 diff --git a/emulators/rpcs3/Makefile b/emulators/rpcs3/Makefile index 070bda09617..d9d9c819c5a 100644 --- a/emulators/rpcs3/Makefile +++ b/emulators/rpcs3/Makefile @@ -2,8 +2,8 @@ PORTNAME= rpcs3 DISTVERSIONPREFIX= v -DISTVERSION= 0.0.6-7989 # git rev-list --count HEAD -DISTVERSIONSUFFIX= -g786598220 +DISTVERSION= 0.0.6-8000 # git rev-list --count HEAD +DISTVERSIONSUFFIX= -gae5a4b697 CATEGORIES= emulators PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ diff --git a/emulators/rpcs3/distinfo b/emulators/rpcs3/distinfo index 148bdf0c03e..1b99862f2d2 100644 --- a/emulators/rpcs3/distinfo +++ b/emulators/rpcs3/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1555447758 -SHA256 (RPCS3-rpcs3-v0.0.6-7989-g786598220_GH0.tar.gz) = b8da6f8c5d74e3fae34de8354f108c4a9056260ef2b63820e702ad27014c47c6 -SIZE (RPCS3-rpcs3-v0.0.6-7989-g786598220_GH0.tar.gz) = 5285158 +TIMESTAMP = 1555711481 +SHA256 (RPCS3-rpcs3-v0.0.6-8000-gae5a4b697_GH0.tar.gz) = eee13e6b4f85f782a85f7cc08aae9b5750baf8476efa1cf2171ba961df82ca91 +SIZE (RPCS3-rpcs3-v0.0.6-8000-gae5a4b697_GH0.tar.gz) = 5285758 SHA256 (RPCS3-hidapi-hidapi-0.8.0-rc1-27-g9220f5e_GH0.tar.gz) = 3120e0b701943f452760e45f9fc1ac50bab356ad4c807b4cac4598041c5ca1a5 SIZE (RPCS3-hidapi-hidapi-0.8.0-rc1-27-g9220f5e_GH0.tar.gz) = 105400 SHA256 (RPCS3-llvm-b860b5e8f4ee_GH0.tar.gz) = c151972a0c8ceac568c24b61e63d2ecbdac0f125185e23fc2238e0a14048256e diff --git a/games/renpy/Makefile b/games/renpy/Makefile index b4dd254c30c..5008330b069 100644 --- a/games/renpy/Makefile +++ b/games/renpy/Makefile @@ -7,6 +7,11 @@ PORTREVISION?= 0 CATEGORIES= games devel MASTER_SITES= https://www.renpy.org/dl/${PORTVERSION}/ +.ifndef PKGNAMESUFFIX +PATCH_SITES= https://github.com/${PORTNAME}/${PORTNAME}/commit/ +PATCHFILES+= 15738d1dfb41.patch:-p1 +.endif + MAINTAINER= jbeich@FreeBSD.org COMMENT= Framework for developing visual-novel type games diff --git a/games/renpy/distinfo b/games/renpy/distinfo index 4167859ec72..55eccbba4da 100644 --- a/games/renpy/distinfo +++ b/games/renpy/distinfo @@ -1,3 +1,5 @@ TIMESTAMP = 1554044105 SHA256 (renpy-7.2.2-sdk.tar.bz2) = 2647403f6be49fa979a1a00b7e5200824a58a80837c3e53ef782dbfcc727236e SIZE (renpy-7.2.2-sdk.tar.bz2) = 93597674 +SHA256 (15738d1dfb41.patch) = 8fef24bba678be4b23a19cb2c75e06f70ac15f2407cd7a64086c872dbfd27e55 +SIZE (15738d1dfb41.patch) = 1079 diff --git a/graphics/partio/Makefile b/graphics/partio/Makefile index 03a411f1a7f..168584c5ba8 100644 --- a/graphics/partio/Makefile +++ b/graphics/partio/Makefile @@ -1,8 +1,7 @@ # $FreeBSD$ PORTNAME= partio -PORTVERSION= 1.5.5 -PORTREVISION= 1 +PORTVERSION= 1.7.4 DISTVERSIONPREFIX= v CATEGORIES= graphics math @@ -14,7 +13,8 @@ LICENSE= BSD3CLAUSE BUILD_DEPENDS= swig3.0:devel/swig30 USES= cmake compiler:c++11-lang gl python shebangfix -SHEBANG_FILES= src/tools/partedit.py src/tools/partjson.py +SHEBANG_FILES= src/tools/partedit.py src/tools/partinspect.py \ + src/tools/partjson.py USE_GL= gl glu glut USE_LDCONFIG= yes USE_XORG= xi xmu @@ -22,7 +22,7 @@ USE_XORG= xi xmu USE_GITHUB= yes GH_ACCOUNT= wdas -OPTIONS_DEFINE= DOCS DOXYGEN +OPTIONS_DEFINE= DOCS DOXYGEN EXAMPLES OPTIONS_DEFAULT= DOCS # DOCS must be selected for PORTDOCS to work @@ -35,6 +35,7 @@ DOCS_BUILD_DEPENDS= doxygen:devel/doxygen BINARY_ALIAS= swig=swig3.0 PORTDOCS= * +PORTEXAMPLES= * post-patch: @${REINPLACE_CMD} -e 's|python -c|${PYTHON_CMD} -c|' \ @@ -51,4 +52,8 @@ post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} cd ${WRKSRC}/src/doc && ${INSTALL_DATA} tutorial.txt partio.tex ${STAGEDIR}${DOCSDIR} +post-install-EXAMPLES-on: + @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} + cd ${WRKSRC}/src/data && ${INSTALL_DATA} * ${STAGEDIR}${EXAMPLESDIR} + .include diff --git a/graphics/partio/distinfo b/graphics/partio/distinfo index e7fb0d108c2..689f3ed4b86 100644 --- a/graphics/partio/distinfo +++ b/graphics/partio/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1534366535 -SHA256 (wdas-partio-v1.5.5_GH0.tar.gz) = 25352a6af0ccc20794a8c85715d5a6645c3f8ddcb6bbaaf20136670b5abd4727 -SIZE (wdas-partio-v1.5.5_GH0.tar.gz) = 291801 +TIMESTAMP = 1555667035 +SHA256 (wdas-partio-v1.7.4_GH0.tar.gz) = 2d1e53ae3447061b370e0efaf2fd6b2d541de462ff312d1398a05bcaafb107ec +SIZE (wdas-partio-v1.7.4_GH0.tar.gz) = 336205 diff --git a/graphics/partio/pkg-plist b/graphics/partio/pkg-plist index 90e4c383f0a..fc05c2be5b5 100644 --- a/graphics/partio/pkg-plist +++ b/graphics/partio/pkg-plist @@ -2,6 +2,7 @@ bin/partattr bin/partconvert bin/partedit bin/partinfo +bin/partinspect bin/partjson bin/partview include/Partio.h @@ -12,6 +13,7 @@ include/PartioVec3.h lib/libpartio.so %%PYTHON_SITELIBDIR%%/_partio.so %%PYTHON_SITELIBDIR%%/partedit.py +%%PYTHON_SITELIBDIR%%/partinspect.py %%PYTHON_SITELIBDIR%%/partio.py %%PYTHON_SITELIBDIR%%/partjson.py share/swig/partio.i diff --git a/java/openjdk8/Makefile b/java/openjdk8/Makefile index 6afbeb6e2c0..a7d58643b31 100644 --- a/java/openjdk8/Makefile +++ b/java/openjdk8/Makefile @@ -1,41 +1,13 @@ # $FreeBSD$ PORTNAME= openjdk -PORTVERSION= ${JDK_MAJOR_VERSION}.${JDK_UPDATE_VERSION}.${JDK_BUILD_NUMBER:S/^0//} +PORTVERSION= ${JDK_MAJOR_VERSION}.${JDK_UPDATE_VERSION}.${JDK_BUILD_NUMBER:S/^0//}.${BSD_JDK_VERSION} CATEGORIES= java devel -MASTER_SITES= http://download.java.net/openjdk/jdk${JDK_MAJOR_VERSION}/promoted/b${DIST_BUILD_NUMBER}/:jdk \ - https://adopt-openjdk.ci.cloudbees.com/job/jtreg/${JTREG_JENKINS_BUILD}/artifact/:jtreg \ - LOCAL/jkim:jdk,jtreg +MASTER_SITES= https://github.com/battleblow/openjdk-jdk8u/archive/:jdk \ + LOCAL/jkim:jtreg PKGNAMESUFFIX?= ${JDK_MAJOR_VERSION} -DISTNAME= ${PORTNAME}-${JDK_MAJOR_VERSION}-src-b${DIST_BUILD_NUMBER}-03_mar_2014 -DISTFILES= ${DISTNAME}.zip:jdk - -PATCH_SITES= LOCAL/glewis/openjdk8 -PATCHFILES= patch-8u05-b13.xz \ - patch-8u11-b13.xz \ - patch-8u20-b26.xz \ - patch-8u25-b17.xz \ - patch-8u31-b13.xz \ - patch-8u40-b25.xz \ - patch-8u45-b14.xz \ - patch-8u51-b16.xz \ - patch-8u60-b23.xz \ - patch-8u66-b17-1.xz \ - patch-8u72-b15.xz \ - patch-8u74-b02.xz \ - patch-8u77-b03.xz \ - patch-8u92-b14.xz \ - patch-8u102-b14.xz \ - patch-8u112-b16.xz \ - patch-8u121-b13.xz \ - patch-8u131-b11.xz \ - patch-8u144-b01.xz \ - patch-8u152-b16.xz \ - patch-8u162-b12.xz \ - patch-8u172-b11.xz \ - patch-8u181-b13.xz \ - patch-8u192-b26.xz \ - patch-8u202-b08.xz +DISTNAME= jdk${JDK_MAJOR_VERSION}u${JDK_UPDATE_VERSION}-b${JDK_BUILD_NUMBER}.${BSD_JDK_VERSION} +DISTFILES= ${DISTNAME}.tar.gz:jdk MAINTAINER= java@FreeBSD.org COMMENT?= Java Development Kit ${JDK_MAJOR_VERSION} @@ -53,140 +25,11 @@ LIB_DEPENDS= libfreetype.so:print/freetype2 \ RUN_DEPENDS= javavm:java/javavmwrapper \ dejavu>0:x11-fonts/dejavu -USES= compiler:features dos2unix gmake iconv pkgconfig \ - shebangfix - -.if !exists(/usr/bin/unzip) -BUILD_DEPENDS+= ${UNZIP_CMD}:archivers/unzip -.endif +USES= compiler:features gmake iconv pkgconfig shebangfix ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc powerpc64 -WRKSRC= ${WRKDIR}/${PORTNAME} +WRKSRC= ${WRKDIR}/${PORTNAME}-jdk${JDK_MAJOR_VERSION}u-${DISTNAME} -DOS2UNIX_FILES= jdk/src/bsd/doc/man/appletviewer.1 \ - jdk/src/bsd/doc/man/extcheck.1 \ - jdk/src/bsd/doc/man/idlj.1 \ - jdk/src/bsd/doc/man/jar.1 \ - jdk/src/bsd/doc/man/jarsigner.1 \ - jdk/src/bsd/doc/man/java.1 \ - jdk/src/bsd/doc/man/javac.1 \ - jdk/src/bsd/doc/man/javadoc.1 \ - jdk/src/bsd/doc/man/javah.1 \ - jdk/src/bsd/doc/man/javap.1 \ - jdk/src/bsd/doc/man/jcmd.1 \ - jdk/src/bsd/doc/man/jconsole.1 \ - jdk/src/bsd/doc/man/jdb.1 \ - jdk/src/bsd/doc/man/jdeps.1 \ - jdk/src/bsd/doc/man/jhat.1 \ - jdk/src/bsd/doc/man/jinfo.1 \ - jdk/src/bsd/doc/man/jjs.1 \ - jdk/src/bsd/doc/man/jmap.1 \ - jdk/src/bsd/doc/man/jps.1 \ - jdk/src/bsd/doc/man/jrunscript.1 \ - jdk/src/bsd/doc/man/jsadebugd.1 \ - jdk/src/bsd/doc/man/jstack.1 \ - jdk/src/bsd/doc/man/jstat.1 \ - jdk/src/bsd/doc/man/jstatd.1 \ - jdk/src/bsd/doc/man/keytool.1 \ - jdk/src/bsd/doc/man/native2ascii.1 \ - jdk/src/bsd/doc/man/orbd.1 \ - jdk/src/bsd/doc/man/pack200.1 \ - jdk/src/bsd/doc/man/policytool.1 \ - jdk/src/bsd/doc/man/rmic.1 \ - jdk/src/bsd/doc/man/rmid.1 \ - jdk/src/bsd/doc/man/rmiregistry.1 \ - jdk/src/bsd/doc/man/schemagen.1 \ - jdk/src/bsd/doc/man/serialver.1 \ - jdk/src/bsd/doc/man/servertool.1 \ - jdk/src/bsd/doc/man/tnameserv.1 \ - jdk/src/bsd/doc/man/unpack200.1 \ - jdk/src/bsd/doc/man/wsgen.1 \ - jdk/src/bsd/doc/man/wsimport.1 \ - jdk/src/bsd/doc/man/xjc.1 \ - jdk/src/linux/doc/man/appletviewer.1 \ - jdk/src/linux/doc/man/extcheck.1 \ - jdk/src/linux/doc/man/idlj.1 \ - jdk/src/linux/doc/man/jar.1 \ - jdk/src/linux/doc/man/jarsigner.1 \ - jdk/src/linux/doc/man/java.1 \ - jdk/src/linux/doc/man/javac.1 \ - jdk/src/linux/doc/man/javadoc.1 \ - jdk/src/linux/doc/man/javah.1 \ - jdk/src/linux/doc/man/javap.1 \ - jdk/src/linux/doc/man/jcmd.1 \ - jdk/src/linux/doc/man/jconsole.1 \ - jdk/src/linux/doc/man/jdb.1 \ - jdk/src/linux/doc/man/jdeps.1 \ - jdk/src/linux/doc/man/jhat.1 \ - jdk/src/linux/doc/man/jinfo.1 \ - jdk/src/linux/doc/man/jjs.1 \ - jdk/src/linux/doc/man/jmap.1 \ - jdk/src/linux/doc/man/jps.1 \ - jdk/src/linux/doc/man/jrunscript.1 \ - jdk/src/linux/doc/man/jsadebugd.1 \ - jdk/src/linux/doc/man/jstack.1 \ - jdk/src/linux/doc/man/jstat.1 \ - jdk/src/linux/doc/man/jstatd.1 \ - jdk/src/linux/doc/man/keytool.1 \ - jdk/src/linux/doc/man/native2ascii.1 \ - jdk/src/linux/doc/man/orbd.1 \ - jdk/src/linux/doc/man/pack200.1 \ - jdk/src/linux/doc/man/policytool.1 \ - jdk/src/linux/doc/man/rmic.1 \ - jdk/src/linux/doc/man/rmid.1 \ - jdk/src/linux/doc/man/rmiregistry.1 \ - jdk/src/linux/doc/man/schemagen.1 \ - jdk/src/linux/doc/man/serialver.1 \ - jdk/src/linux/doc/man/servertool.1 \ - jdk/src/linux/doc/man/tnameserv.1 \ - jdk/src/linux/doc/man/unpack200.1 \ - jdk/src/linux/doc/man/wsgen.1 \ - jdk/src/linux/doc/man/wsimport.1 \ - jdk/src/linux/doc/man/xjc.1 \ - jdk/src/share/classes/com/sun/org/apache/xml/internal/security/resource/xmlsecurity_en.properties \ - jdk/src/solaris/doc/sun/man/man1/appletviewer.1 \ - jdk/src/solaris/doc/sun/man/man1/extcheck.1 \ - jdk/src/solaris/doc/sun/man/man1/idlj.1 \ - jdk/src/solaris/doc/sun/man/man1/jar.1 \ - jdk/src/solaris/doc/sun/man/man1/jarsigner.1 \ - jdk/src/solaris/doc/sun/man/man1/java.1 \ - jdk/src/solaris/doc/sun/man/man1/javac.1 \ - jdk/src/solaris/doc/sun/man/man1/javadoc.1 \ - jdk/src/solaris/doc/sun/man/man1/javah.1 \ - jdk/src/solaris/doc/sun/man/man1/javap.1 \ - jdk/src/solaris/doc/sun/man/man1/jcmd.1 \ - jdk/src/solaris/doc/sun/man/man1/jconsole.1 \ - jdk/src/solaris/doc/sun/man/man1/jdb.1 \ - jdk/src/solaris/doc/sun/man/man1/jdeps.1 \ - jdk/src/solaris/doc/sun/man/man1/jhat.1 \ - jdk/src/solaris/doc/sun/man/man1/jinfo.1 \ - jdk/src/solaris/doc/sun/man/man1/jjs.1 \ - jdk/src/solaris/doc/sun/man/man1/jmap.1 \ - jdk/src/solaris/doc/sun/man/man1/jps.1 \ - jdk/src/solaris/doc/sun/man/man1/jrunscript.1 \ - jdk/src/solaris/doc/sun/man/man1/jsadebugd.1 \ - jdk/src/solaris/doc/sun/man/man1/jstack.1 \ - jdk/src/solaris/doc/sun/man/man1/jstat.1 \ - jdk/src/solaris/doc/sun/man/man1/jstatd.1 \ - jdk/src/solaris/doc/sun/man/man1/keytool.1 \ - jdk/src/solaris/doc/sun/man/man1/native2ascii.1 \ - jdk/src/solaris/doc/sun/man/man1/orbd.1 \ - jdk/src/solaris/doc/sun/man/man1/pack200.1 \ - jdk/src/solaris/doc/sun/man/man1/policytool.1 \ - jdk/src/solaris/doc/sun/man/man1/rmic.1 \ - jdk/src/solaris/doc/sun/man/man1/rmid.1 \ - jdk/src/solaris/doc/sun/man/man1/rmiregistry.1 \ - jdk/src/solaris/doc/sun/man/man1/schemagen.1 \ - jdk/src/solaris/doc/sun/man/man1/serialver.1 \ - jdk/src/solaris/doc/sun/man/man1/servertool.1 \ - jdk/src/solaris/doc/sun/man/man1/tnameserv.1 \ - jdk/src/solaris/doc/sun/man/man1/unpack200.1 \ - jdk/src/solaris/doc/sun/man/man1/wsgen.1 \ - jdk/src/solaris/doc/sun/man/man1/wsimport.1 \ - jdk/src/solaris/doc/sun/man/man1/xjc.1 \ - nashorn/test/script/jfx.js \ - nashorn/test/script/jfx/kaleidoscope.js \ - nashorn/test/script/jfx/spread.js SHEBANG_FILES= configure _MAKE_JOBS= # @@ -210,12 +53,11 @@ INSTALLDIR= ${PREFIX}/${PKGBASE} NOPRECIOUSMAKEVARS= yes JDK_MAJOR_VERSION= 8 -JDK_UPDATE_VERSION= 202 -JDK_BUILD_NUMBER= 08 -DIST_BUILD_NUMBER= 132 +JDK_UPDATE_VERSION= 212 +JDK_BUILD_NUMBER= 04 +BSD_JDK_VERSION= 1 JTREG_VERSION= 4.1 JTREG_BUILD_NUMBER= b08 -JTREG_JENKINS_BUILD= 77 GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-boot-jdk=${BOOTSTRAPJDKDIR} @@ -380,16 +222,6 @@ ICONV_CPPFLAGS= -I${LOCALBASE}/include ICONV_LDFLAGS= -L${LOCALBASE}/lib ${ICONV_LIB} .endif -post-extract: - @${CP} ${FILESDIR}/jdk-test-javax-imageio-plugins-jpeg-truncated.jpg \ - ${WRKSRC}/jdk/test/javax/imageio/plugins/jpeg/truncated.jpg - @${CP} ${FILESDIR}/nashorn-test-script-jfx-flyingimage-golden-bsd.png \ - ${WRKSRC}/nashorn/test/script/jfx/flyingimage/golden/bsd.png - @${CP} ${FILESDIR}/nashorn-test-script-jfx-kaleidoscope-golden-bsd.png \ - ${WRKSRC}/nashorn/test/script/jfx/kaleidoscope/golden/bsd.png - @${CP} ${FILESDIR}/nashorn-test-script-jfx-spread-golden-bsd.png \ - ${WRKSRC}/nashorn/test/script/jfx/spread/golden/bsd.png - post-extract-TEST-on: @${LN} -sf ${WRKDIR}/jtreg/linux/bin ${WRKDIR}/jtreg/ @@ -398,9 +230,6 @@ do-patch-FONTCONFIG-on: post-patch: @${FIND} ${WRKSRC} -name '*.orig' -delete - @${RMDIR} ${WRKSRC}/jdk/src/macosx/classes/java/net \ - ${WRKSRC}/jdk/src/macosx/native/sun/nio/ch \ - ${WRKSRC}/jdk/src/macosx/native/sun/nio @${SED} -e 's|%%LOCALBASE%%|${LOCALBASE}|' \ ${FILESDIR}/bsd.fontconfig.properties.in > \ ${WRKSRC}/jdk/src/solaris/classes/sun/awt/fontconfigs/bsd.fontconfig.properties diff --git a/java/openjdk8/distinfo b/java/openjdk8/distinfo index 6c7be77046c..6b6032bd40a 100644 --- a/java/openjdk8/distinfo +++ b/java/openjdk8/distinfo @@ -1,55 +1,5 @@ -TIMESTAMP = 1549756797 -SHA256 (openjdk-8-src-b132-03_mar_2014.zip) = ba651f9aa68fdc823b2ef55510710a013ab9f78fff291d5dc1c4d166f3e1e589 -SIZE (openjdk-8-src-b132-03_mar_2014.zip) = 124099402 +TIMESTAMP = 1555604894 +SHA256 (jdk8u212-b04.1.tar.gz) = b69b2601bd1ddb68700df801b0ad5c8351ca8c937573130603910614e7d478d6 +SIZE (jdk8u212-b04.1.tar.gz) = 85191465 SHA256 (jtreg4.1-b08.tar.gz) = a9fbfac903313c12687e60978c4688c20189cdf873560125917d6ad53d55b30c SIZE (jtreg4.1-b08.tar.gz) = 6834252 -SHA256 (patch-8u05-b13.xz) = 0fd6dfa17769a92d94a710e330d411fcbd49a8142d4cb8826b96b42d3c007a63 -SIZE (patch-8u05-b13.xz) = 88636 -SHA256 (patch-8u11-b13.xz) = 68ead09e1841fc43a4fec2c386acc70e3edab99e116923befa0d83960c4a1f85 -SIZE (patch-8u11-b13.xz) = 48852 -SHA256 (patch-8u20-b26.xz) = 23c704ed10f0e081e956755e22049b3ef7897b3bc5a7a6450a4d1856351f55a8 -SIZE (patch-8u20-b26.xz) = 1898392 -SHA256 (patch-8u25-b17.xz) = beb9ef5ca12660da57f5a8409de4576aef4a55dd9de7bdc14a3d64f706cee6e8 -SIZE (patch-8u25-b17.xz) = 45968 -SHA256 (patch-8u31-b13.xz) = c77ca4137a95e45a377c31f2c7a2d0280b64f5d411089cda7380c04c7a70685a -SIZE (patch-8u31-b13.xz) = 204032 -SHA256 (patch-8u40-b25.xz) = 178fd0737235ebef61e39cc06e6d1fdd5079b727b0d23f9326cd39b97036c0d1 -SIZE (patch-8u40-b25.xz) = 1662812 -SHA256 (patch-8u45-b14.xz) = 4a2e7c5e3275db6a7aebe15c7dcc9abe9125b25e490c015367ca8ebcf8c65bac -SIZE (patch-8u45-b14.xz) = 285564 -SHA256 (patch-8u51-b16.xz) = 146e8ffa75911a2bc53099ea07625db259f88cbac2e678f965f55c483a01050f -SIZE (patch-8u51-b16.xz) = 71144 -SHA256 (patch-8u60-b23.xz) = 8ebe80e8add9e61dcb43e9be756ccc6d566a39748e7726f265df73af2d082798 -SIZE (patch-8u60-b23.xz) = 1043720 -SHA256 (patch-8u66-b17-1.xz) = 8d11cf62d9b70857d1008dea0cdcf9d5b4ba30320696cb2568a8bc13f202bb2e -SIZE (patch-8u66-b17-1.xz) = 351328 -SHA256 (patch-8u72-b15.xz) = 42f774b72f3dbdbfadc63d0b8fb7d94c51c3062d80aedec86f59d295823136d1 -SIZE (patch-8u72-b15.xz) = 282984 -SHA256 (patch-8u74-b02.xz) = c21a08d00d8417369837fe82d68bb4f30bcf8c1c93aef85581761e328c58fccd -SIZE (patch-8u74-b02.xz) = 2056 -SHA256 (patch-8u77-b03.xz) = d6469852d556ff9e379852e5a64cc104faf0545804c7f18f65b9840a8cb3a1c1 -SIZE (patch-8u77-b03.xz) = 4404 -SHA256 (patch-8u92-b14.xz) = c3c8e607048c61c8b425849c6bb73add59ba9887e4a9d4f6147ab51ad11c8d17 -SIZE (patch-8u92-b14.xz) = 172836 -SHA256 (patch-8u102-b14.xz) = 02ae897c1bfbb137339fe00f0672af268b94beee88f44c818a6060dc207d72c3 -SIZE (patch-8u102-b14.xz) = 411024 -SHA256 (patch-8u112-b16.xz) = adbca9b317d599a3ee2e8ac6efb47b0576bdb1ebf0a8b9a0d0d7742db499b921 -SIZE (patch-8u112-b16.xz) = 217492 -SHA256 (patch-8u121-b13.xz) = ef48cad21bb0ccadb3968147ab4d4d0b9ae024bf42a0fccf5714584f43df9ed4 -SIZE (patch-8u121-b13.xz) = 135520 -SHA256 (patch-8u131-b11.xz) = c0953d79f7e1b02ed75e6757ff170a144527af9b44f44cb36f2ddb484437d4d6 -SIZE (patch-8u131-b11.xz) = 88068 -SHA256 (patch-8u144-b01.xz) = 4b4b73a345bc69085b712213ff55831e739cf43c9d0b87e77da91283e7c3520f -SIZE (patch-8u144-b01.xz) = 239460 -SHA256 (patch-8u152-b16.xz) = 51c57b8d60b8f71758fe03c45c70ab60d0423bf4699e71b21ba4148f80497852 -SIZE (patch-8u152-b16.xz) = 454236 -SHA256 (patch-8u162-b12.xz) = 9f083cde406ead14e38f5423a6dcc0f0b0a3f7ef69fdc4c83a32b8fea4c3ddcb -SIZE (patch-8u162-b12.xz) = 337248 -SHA256 (patch-8u172-b11.xz) = e338a1dc63cc08f9227d685e350e60609e43612f18773213b882d78c7c559934 -SIZE (patch-8u172-b11.xz) = 146716 -SHA256 (patch-8u181-b13.xz) = 4cd0f5a04b72ad6c4ef73807d6a42e141394f5c38cee8ce11c0159a080073839 -SIZE (patch-8u181-b13.xz) = 69096 -SHA256 (patch-8u192-b26.xz) = 5bfa782ec2af8ddc6aed3e8de81cc37c7f375ebad650341d1ce74956c82a411e -SIZE (patch-8u192-b26.xz) = 284164 -SHA256 (patch-8u202-b08.xz) = 16195793d00b1fbe18e4d3a4cab2db1e5a28722e43d3466d03283ab01d9524d0 -SIZE (patch-8u202-b08.xz) = 202660 diff --git a/java/openjdk8/files/cacerts b/java/openjdk8/files/cacerts index 9691005ff8b..d7a1a532634 100644 Binary files a/java/openjdk8/files/cacerts and b/java/openjdk8/files/cacerts differ diff --git a/java/openjdk8/files/jdk-test-javax-imageio-plugins-jpeg-truncated.jpg b/java/openjdk8/files/jdk-test-javax-imageio-plugins-jpeg-truncated.jpg deleted file mode 100644 index db3fca890c8..00000000000 Binary files a/java/openjdk8/files/jdk-test-javax-imageio-plugins-jpeg-truncated.jpg and /dev/null differ diff --git a/java/openjdk8/files/nashorn-test-script-jfx-flyingimage-golden-bsd.png b/java/openjdk8/files/nashorn-test-script-jfx-flyingimage-golden-bsd.png deleted file mode 100644 index ba72fe68406..00000000000 Binary files a/java/openjdk8/files/nashorn-test-script-jfx-flyingimage-golden-bsd.png and /dev/null differ diff --git a/java/openjdk8/files/nashorn-test-script-jfx-kaleidoscope-golden-bsd.png b/java/openjdk8/files/nashorn-test-script-jfx-kaleidoscope-golden-bsd.png deleted file mode 100644 index 64d9499b0ff..00000000000 Binary files a/java/openjdk8/files/nashorn-test-script-jfx-kaleidoscope-golden-bsd.png and /dev/null differ diff --git a/java/openjdk8/files/nashorn-test-script-jfx-spread-golden-bsd.png b/java/openjdk8/files/nashorn-test-script-jfx-spread-golden-bsd.png deleted file mode 100644 index c288162329a..00000000000 Binary files a/java/openjdk8/files/nashorn-test-script-jfx-spread-golden-bsd.png and /dev/null differ diff --git a/java/openjdk8/files/patch-bsd b/java/openjdk8/files/patch-bsd deleted file mode 100644 index 77fa9b6f44b..00000000000 --- a/java/openjdk8/files/patch-bsd +++ /dev/null @@ -1,20572 +0,0 @@ ---- ./common/autoconf/build-performance.m4 Sat Dec 08 11:48:10 2018 +0000 -+++ ./common/autoconf/build-performance.m4 Sat Feb 09 10:03:01 2019 -0800 -@@ -41,6 +41,10 @@ - # Looks like a MacOSX system - NUM_CORES=`/usr/sbin/system_profiler -detailLevel full SPHardwareDataType | grep 'Cores' | awk '{print [$]5}'` - FOUND_CORES=yes -+ elif test "x$OPENJDK_BUILD_OS" = xbsd && test "x$(uname -s | grep -o BSD)" = xBSD; then -+ # Looks like a BSD system -+ NUM_CORES=`/sbin/sysctl -n hw.ncpu` -+ FOUND_CORES=yes - elif test "x$OPENJDK_BUILD_OS" = xaix ; then - NUM_CORES=`/usr/sbin/prtconf | grep "^Number Of Processors" | awk '{ print [$]4 }'` - FOUND_CORES=yes -@@ -79,6 +83,15 @@ - MEMORY_SIZE=`/usr/sbin/system_profiler -detailLevel full SPHardwareDataType | grep 'Memory' | awk '{print [$]2}'` - MEMORY_SIZE=`expr $MEMORY_SIZE \* 1024` - FOUND_MEM=yes -+ elif test "x$OPENJDK_BUILD_OS" = xbsd && test "x$(uname -s | grep -o OpenBSD)" = xOpenBSD; then -+ # Looks like an OpenBSD system -+ MEMORY_SIZE=`/sbin/sysctl -n hw.physmem | awk '{print int($NF / 1048576); }'` -+ FOUND_MEM=yes -+ elif test "x$OPENJDK_BUILD_OS" = xbsd && test "x$(uname -s | grep -o BSD)" = xBSD; then -+ # Looks like a BSD system -+ MEMORY_SIZE=`/sbin/sysctl -n hw.physmem` -+ MEMORY_SIZE=`expr $MEMORY_SIZE / 1024 / 1024` -+ FOUND_MEM=yes - elif test "x$OPENJDK_BUILD_OS" = xwindows; then - # Windows, but without cygwin - MEMORY_SIZE=`wmic computersystem get totalphysicalmemory -value | grep = | cut -d "=" -f 2-` -@@ -209,8 +222,8 @@ - # Only use ccache if it is 3.1.4 or later, which supports - # precompiled headers. - AC_MSG_CHECKING([if ccache supports precompiled headers]) -- HAS_GOOD_CCACHE=`($CCACHE --version | head -n 1 | grep -E 3.1.@<:@456789@:>@) 2> /dev/null` -- if test "x$HAS_GOOD_CCACHE" = x; then -+ HAS_GOOD_CCACHE=`($CCACHE --version | head -n 1 | awk '{ split(@S|@3, a, "."); if (a@<:@1@:>@ >= 3 && (a@<:@2@:>@ > 1 || (a@<:@2@:>@ == 1 && a@<:@3@:>@ >= 4))) print "yes"; else print "no"; }') 2> /dev/null` -+ if test "x$HAS_GOOD_CCACHE" = xyes; then - AC_MSG_RESULT([no, disabling ccache]) - CCACHE= - CCACHE_STATUS="disabled" ---- ./common/autoconf/flags.m4 Sat Dec 08 11:48:10 2018 +0000 -+++ ./common/autoconf/flags.m4 Sat Feb 09 10:03:01 2019 -0800 -@@ -154,7 +154,7 @@ - # How to compile shared libraries. - # - -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - PICFLAG="-fPIC" - C_FLAG_REORDER='' - CXX_FLAG_REORDER='' -@@ -266,7 +266,7 @@ - # fi - - # Generate make dependency files -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - C_FLAG_DEPS="-MMD -MF" - elif test "x$TOOLCHAIN_TYPE" = xsolstudio; then - C_FLAG_DEPS="-xMMD -xMF" -@@ -283,7 +283,7 @@ - # info flags for toolchains unless we know they work. - # See JDK-8207057. - ASFLAGS_DEBUG_SYMBOLS="" -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - if test "x$OPENJDK_TARGET_CPU_BITS" = "x64" && test "x$DEBUG_LEVEL" = "xfastdebug"; then - CFLAGS_DEBUG_SYMBOLS="-g1" - CXXFLAGS_DEBUG_SYMBOLS="-g1" -@@ -334,7 +334,7 @@ - else - # The remaining toolchains share opt flags between CC and CXX; - # setup for C and duplicate afterwards. -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - if test "x$OPENJDK_TARGET_OS" = xmacosx; then - # On MacOSX we optimize for size, something - # we should do for all platforms? -@@ -452,7 +452,7 @@ - - # Setup compiler/platform specific flags to CFLAGS_JDK, - # CXXFLAGS_JDK and CCXXFLAGS_JDK (common to C and CXX?) -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - # these options are used for both C and C++ compiles - CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK -Wall -Wno-parentheses -Wextra -Wno-unused -Wno-unused-parameter -Wformat=2 \ - -pipe -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE" -@@ -548,6 +548,9 @@ - else - CCXXFLAGS_JDK="$CCXXFLAGS_JDK -D_LITTLE_ENDIAN" - fi -+ if test "x$OPENJDK_TARGET_OS" = xbsd; then -+ CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DVM_LITTLE_ENDIAN" -+ fi - else - # Same goes for _BIG_ENDIAN. Do we really need to set *ENDIAN on Solaris if they - # are defined in the system? -@@ -556,6 +559,9 @@ - else - CCXXFLAGS_JDK="$CCXXFLAGS_JDK -D_BIG_ENDIAN" - fi -+ if test "x$OPENJDK_TARGET_OS" = xbsd; then -+ CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DVM_BIG_ENDIAN" -+ fi - fi - if test "x$OPENJDK_TARGET_CPU" = xppc64le; then - CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DABI_ELFv2" -@@ -661,7 +667,7 @@ - fi - LDFLAGS_JDKEXE="${LDFLAGS_JDK} /STACK:$LDFLAGS_STACK_SIZE" - else -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - # If this is a --hash-style=gnu system, use --hash-style=both, why? - # We have previously set HAS_GNU_HASH if this is the case - if test -n "$HAS_GNU_HASH"; then ---- ./common/autoconf/generated-configure.sh Sat Dec 08 11:48:10 2018 +0000 -+++ ./common/autoconf/generated-configure.sh Sat Feb 09 10:03:01 2019 -0800 -@@ -655,6 +655,8 @@ - LIBM - LIBZIP_CAN_USE_MMAP - USE_EXTERNAL_LIBZ -+GIFLIB_LDFLAGS -+GIFLIB_CFLAGS - USE_EXTERNAL_LIBGIF - USE_EXTERNAL_LIBJPEG - ALSA_LIBS -@@ -839,6 +841,7 @@ - JDK_MAJOR_VERSION - USER_RELEASE_SUFFIX - COMPRESS_JARS -+BSD_STATIC_LIBJLI - UNLIMITED_CRYPTO - CACERTS_FILE - TEST_IN_BUILD -@@ -916,6 +919,7 @@ - OPENJDK_TARGET_CPU - OPENJDK_TARGET_OS_ENV - OPENJDK_TARGET_OS_API -+OPENJDK_TARGET_OS_VENDOR - OPENJDK_TARGET_OS - OPENJDK_BUILD_CPU_ENDIAN - OPENJDK_BUILD_CPU_BITS -@@ -1052,6 +1056,7 @@ - enable_hotspot_test_in_build - with_cacerts_file - enable_unlimited_crypto -+enable_static_libjli - with_milestone - with_update_version - with_user_release_suffix -@@ -1072,6 +1077,7 @@ - with_import_hotspot - with_toolchain_type - with_toolchain_version -+with_package_path - with_jtreg - with_extra_cflags - with_extra_cxxflags -@@ -1830,6 +1836,7 @@ - run the Queens test after Hotspot build [disabled] - --enable-unlimited-crypto - Enable unlimited crypto policy [disabled] -+ --enable-static-libjli Enable staticly linking libjli on bsd [disabled] - --disable-debug-symbols disable generation of debug symbols [enabled] - --disable-zip-debug-info - disable zipping of debug-info files [enabled] -@@ -1922,6 +1929,8 @@ - the version of the toolchain to look for, use - '--help' to show possible values [platform - dependent] -+ --with-package-path package path to be used for location of third party -+ packages - --with-jtreg Regression Test Harness [probed] - --with-extra-cflags extra flags to be used when compiling jdk c-files - --with-extra-cxxflags extra flags to be used when compiling jdk c++-files -@@ -2342,6 +2351,52 @@ - - } # ac_fn_objc_try_compile - -+# ac_fn_cxx_try_link LINENO -+# ------------------------- -+# Try to link conftest.$ac_ext, and return whether this succeeded. -+ac_fn_cxx_try_link () -+{ -+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -+ rm -f conftest.$ac_objext conftest$ac_exeext -+ if { { ac_try="$ac_link" -+case "(($ac_try" in -+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -+ *) ac_try_echo=$ac_try;; -+esac -+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -+$as_echo "$ac_try_echo"; } >&5 -+ (eval "$ac_link") 2>conftest.err -+ ac_status=$? -+ if test -s conftest.err; then -+ grep -v '^ *+' conftest.err >conftest.er1 -+ cat conftest.er1 >&5 -+ mv -f conftest.er1 conftest.err -+ fi -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; } && { -+ test -z "$ac_cxx_werror_flag" || -+ test ! -s conftest.err -+ } && test -s conftest$ac_exeext && { -+ test "$cross_compiling" = yes || -+ test -x conftest$ac_exeext -+ }; then : -+ ac_retval=0 -+else -+ $as_echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_retval=1 -+fi -+ # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information -+ # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would -+ # interfere with the next link command; also delete a directory that is -+ # left behind by Apple's compiler. We do this before executing the actions. -+ rm -rf conftest.dSYM conftest_ipa8_conftest.oo -+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno -+ as_fn_set_status $ac_retval -+ -+} # ac_fn_cxx_try_link -+ - # ac_fn_cxx_check_header_mongrel LINENO HEADER VAR INCLUDES - # --------------------------------------------------------- - # Tests whether HEADER exists, giving a warning if it cannot be compiled using -@@ -2689,52 +2744,6 @@ - - } # ac_fn_cxx_compute_int - --# ac_fn_cxx_try_link LINENO --# ------------------------- --# Try to link conftest.$ac_ext, and return whether this succeeded. --ac_fn_cxx_try_link () --{ -- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack -- rm -f conftest.$ac_objext conftest$ac_exeext -- if { { ac_try="$ac_link" --case "(($ac_try" in -- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -- *) ac_try_echo=$ac_try;; --esac --eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" --$as_echo "$ac_try_echo"; } >&5 -- (eval "$ac_link") 2>conftest.err -- ac_status=$? -- if test -s conftest.err; then -- grep -v '^ *+' conftest.err >conftest.er1 -- cat conftest.er1 >&5 -- mv -f conftest.er1 conftest.err -- fi -- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; } && { -- test -z "$ac_cxx_werror_flag" || -- test ! -s conftest.err -- } && test -s conftest$ac_exeext && { -- test "$cross_compiling" = yes || -- test -x conftest$ac_exeext -- }; then : -- ac_retval=0 --else -- $as_echo "$as_me: failed program was:" >&5 --sed 's/^/| /' conftest.$ac_ext >&5 -- -- ac_retval=1 --fi -- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information -- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would -- # interfere with the next link command; also delete a directory that is -- # left behind by Apple's compiler. We do this before executing the actions. -- rm -rf conftest.dSYM conftest_ipa8_conftest.oo -- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno -- as_fn_set_status $ac_retval -- --} # ac_fn_cxx_try_link -- - # ac_fn_cxx_check_func LINENO FUNC VAR - # ------------------------------------ - # Tests whether FUNC exists, setting the cache variable VAR accordingly -@@ -4126,6 +4135,7 @@ - VALID_TOOLCHAINS_all="gcc clang solstudio xlc microsoft" - - # These toolchains are valid on different platforms -+VALID_TOOLCHAINS_bsd="clang gcc" - VALID_TOOLCHAINS_linux="gcc clang" - VALID_TOOLCHAINS_solaris="solstudio" - VALID_TOOLCHAINS_macosx="gcc clang" -@@ -4342,7 +4352,7 @@ - #CUSTOM_AUTOCONF_INCLUDE - - # Do not change or remove the following line, it is needed for consistency checks: --DATE_WHEN_GENERATED=1544009140 -+DATE_WHEN_GENERATED=1549694164 - - ############################################################################### - # -@@ -13576,11 +13586,27 @@ - as_fn_error $? "unsupported operating system $build_os" "$LINENO" 5 - ;; - esac -+ # The BSD's have slight differences so determine which one we are building on. -+ # For the rest set VAR_OS_VENDOR to VAR_OS -+ case "$build_os" in -+ *openbsd*) -+ VAR_OS_VENDOR=openbsd -+ ;; -+ *netbsd*) -+ VAR_OS_VENDOR=netbsd -+ ;; -+ *freebsd*) -+ VAR_OS_VENDOR=freebsd -+ ;; -+ *) -+ VAR_OS_VENDOR="$VAR_OS" -+ ;; -+ esac - - - # First argument is the cpu name from the trip/quad - case "$build_cpu" in -- x86_64) -+ amd64|x86_64) - VAR_CPU=x86_64 - VAR_CPU_ARCH=x86 - VAR_CPU_BITS=64 -@@ -13714,11 +13740,27 @@ - as_fn_error $? "unsupported operating system $host_os" "$LINENO" 5 - ;; - esac -+ # The BSD's have slight differences so determine which one we are building on. -+ # For the rest set VAR_OS_VENDOR to VAR_OS -+ case "$host_os" in -+ *openbsd*) -+ VAR_OS_VENDOR=openbsd -+ ;; -+ *netbsd*) -+ VAR_OS_VENDOR=netbsd -+ ;; -+ *freebsd*) -+ VAR_OS_VENDOR=freebsd -+ ;; -+ *) -+ VAR_OS_VENDOR="$VAR_OS" -+ ;; -+ esac - - - # First argument is the cpu name from the trip/quad - case "$host_cpu" in -- x86_64) -+ amd64|x86_64) - VAR_CPU=x86_64 - VAR_CPU_ARCH=x86 - VAR_CPU_BITS=64 -@@ -13791,6 +13833,7 @@ - - # ... and setup our own variables. (Do this explicitely to facilitate searching) - OPENJDK_TARGET_OS="$VAR_OS" -+ OPENJDK_TARGET_OS_VENDOR="$VAR_OS_VENDOR" - OPENJDK_TARGET_OS_API="$VAR_OS_API" - OPENJDK_TARGET_OS_ENV="$VAR_OS_ENV" - OPENJDK_TARGET_CPU="$VAR_CPU" -@@ -13805,6 +13848,7 @@ - - - -+ - { $as_echo "$as_me:${as_lineno-$LINENO}: checking openjdk-target os-cpu" >&5 - $as_echo_n "checking openjdk-target os-cpu... " >&6; } - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU" >&5 -@@ -13933,8 +13977,8 @@ - - # Setup OPENJDK_TARGET_CPU_OSARCH, which is used to set the os.arch Java system property - OPENJDK_TARGET_CPU_OSARCH="$OPENJDK_TARGET_CPU" -- if test "x$OPENJDK_TARGET_OS" = xlinux && test "x$OPENJDK_TARGET_CPU" = xx86; then -- # On linux only, we replace x86 with i386. -+ if test "x$OPENJDK_TARGET_OS" = xbsd -o "x$OPENJDK_TARGET_OS" = xlinux && test "x$OPENJDK_TARGET_CPU" = xx86; then -+ # On Linux and BSD, we replace x86 with i386. - OPENJDK_TARGET_CPU_OSARCH="i386" - elif test "x$OPENJDK_TARGET_OS" != xmacosx && test "x$OPENJDK_TARGET_CPU" = xx86_64; then - # On all platforms except macosx, we replace x86_64 with amd64. -@@ -14576,7 +14620,7 @@ - INCLUDE_SA=false - fi - if test "x$VAR_CPU" = xppc64 -o "x$VAR_CPU" = xppc64le ; then -- INCLUDE_SA=false -+ INCLUDE_SA=true - fi - if test "x$OPENJDK_TARGET_CPU" = xaarch64; then - INCLUDE_SA=false -@@ -19756,6 +19800,24 @@ - - ############################################################################### - # -+ # Enable or disable static linking of libjli on bsd only -+ # -+ # Check whether --enable-static-libjli was given. -+if test "${enable_static_libjli+set}" = set; then : -+ enableval=$enable_static_libjli; -+else -+ enable_static_libjli=no -+fi -+ -+ if test "x$OPENJDK_TARGET_OS" = "xbsd" && test "x$enable_static_libjli" = "xyes"; then -+ BSD_STATIC_LIBJLI=bsd -+ else -+ BSD_STATIC_LIBJLI= -+ fi -+ -+ -+ ############################################################################### -+ # - # Enable or disable the elliptic curve crypto implementation - # - -@@ -37349,7 +37411,7 @@ - - # objcopy is used for moving debug symbols to separate files when - # full debug symbols are enabled. -- if test "x$OPENJDK_TARGET_OS" = xsolaris || test "x$OPENJDK_TARGET_OS" = xlinux; then -+ if test "x$OPENJDK_TARGET_OS" = xsolaris || test "x$OPENJDK_TARGET_OS" = xlinux || test "x$OPENJDK_TARGET_OS" = xbsd ; then - - - # Publish this variable in the help. -@@ -40025,10 +40087,66 @@ - - - -+ - # The package path is used only on macosx? -- # FIXME: clean this up, and/or move it elsewhere. -- PACKAGE_PATH=/opt/local -- -+ -+# Check whether --with-package-path was given. -+if test "${with_package_path+set}" = set; then : -+ withval=$with_package_path; -+fi -+ -+ PACKAGE_PATH="$with_package_path" -+ if test "x$PACKAGE_PATH" = x; then -+ if test "`uname -s`" = "Darwin"; then -+ PACKAGE_PATH=/opt/local -+ fi -+ -+ if test "`uname -s`" = "FreeBSD"; then -+ PACKAGE_PATH=/usr/local -+ fi -+ -+ if test "`uname -s`" = "NetBSD"; then -+ PACKAGE_PATH=/usr/pkg -+ fi -+ -+ if test "`uname -s`" = "OpenBSD"; then -+ PACKAGE_PATH=/usr/local -+ fi -+ fi -+ -+ -+ -+ # On OpenBSD check to see if ld requires -z wxneeded -+ if test "`uname -s`" = "OpenBSD"; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ld requires -z wxneeded" >&5 -+$as_echo_n "checking if ld requires -z wxneeded... " >&6; } -+ PUSHED_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS -Wl,-z,wxneeded" -+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext -+/* end confdefs.h. */ -+int main() { } -+_ACEOF -+if ac_fn_cxx_try_link "$LINENO"; then : -+ -+ if $READELF -l conftest$ac_exeext | $GREP OPENBSD_WXNEED > /dev/null; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -+$as_echo "yes" >&6; } -+ LDFLAGS_JDK="${LDFLAGS_JDK} -Wl,-z,wxneeded" -+ else -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -+$as_echo "yes" >&6; } -+ fi -+ -+else -+ -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+ -+fi -+rm -f core conftest.err conftest.$ac_objext \ -+ conftest$ac_exeext conftest.$ac_ext -+ LDFLAGS="$PUSHED_LDFLAGS" -+ fi - - # Check for extra potential brokenness. - if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then -@@ -40564,7 +40682,6 @@ - - # Now we can test some aspects on the target using configure macros. - -- - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 - $as_echo_n "checking for ANSI C header files... " >&6; } - if ${ac_cv_header_stdc+:} false; then : -@@ -41134,7 +41251,7 @@ - # How to compile shared libraries. - # - -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - PICFLAG="-fPIC" - C_FLAG_REORDER='' - CXX_FLAG_REORDER='' -@@ -41213,7 +41330,7 @@ - # fi - - # Generate make dependency files -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - C_FLAG_DEPS="-MMD -MF" - elif test "x$TOOLCHAIN_TYPE" = xsolstudio; then - C_FLAG_DEPS="-xMMD -xMF" -@@ -41230,7 +41347,7 @@ - # info flags for toolchains unless we know they work. - # See JDK-8207057. - ASFLAGS_DEBUG_SYMBOLS="" -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - if test "x$OPENJDK_TARGET_CPU_BITS" = "x64" && test "x$DEBUG_LEVEL" = "xfastdebug"; then - CFLAGS_DEBUG_SYMBOLS="-g1" - CXXFLAGS_DEBUG_SYMBOLS="-g1" -@@ -41281,7 +41398,7 @@ - else - # The remaining toolchains share opt flags between CC and CXX; - # setup for C and duplicate afterwards. -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - if test "x$OPENJDK_TARGET_OS" = xmacosx; then - # On MacOSX we optimize for size, something - # we should do for all platforms? -@@ -41449,7 +41566,7 @@ - - # Setup compiler/platform specific flags to CFLAGS_JDK, - # CXXFLAGS_JDK and CCXXFLAGS_JDK (common to C and CXX?) -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - # these options are used for both C and C++ compiles - CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK -Wall -Wno-parentheses -Wextra -Wno-unused -Wno-unused-parameter -Wformat=2 \ - -pipe -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE" -@@ -41762,6 +41879,9 @@ - else - CCXXFLAGS_JDK="$CCXXFLAGS_JDK -D_LITTLE_ENDIAN" - fi -+ if test "x$OPENJDK_TARGET_OS" = xbsd; then -+ CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DVM_LITTLE_ENDIAN" -+ fi - else - # Same goes for _BIG_ENDIAN. Do we really need to set *ENDIAN on Solaris if they - # are defined in the system? -@@ -41770,6 +41890,9 @@ - else - CCXXFLAGS_JDK="$CCXXFLAGS_JDK -D_BIG_ENDIAN" - fi -+ if test "x$OPENJDK_TARGET_OS" = xbsd; then -+ CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DVM_BIG_ENDIAN" -+ fi - fi - if test "x$OPENJDK_TARGET_CPU" = xppc64le; then - CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DABI_ELFv2" -@@ -41875,7 +41998,7 @@ - fi - LDFLAGS_JDKEXE="${LDFLAGS_JDK} /STACK:$LDFLAGS_STACK_SIZE" - else -- if test "x$TOOLCHAIN_TYPE" = xgcc; then -+ if test "x$TOOLCHAIN_TYPE" = xgcc || test "x$TOOLCHAIN_TYPE" = xclang; then - # If this is a --hash-style=gnu system, use --hash-style=both, why? - # We have previously set HAS_GNU_HASH if this is the case - if test -n "$HAS_GNU_HASH"; then -@@ -42411,11 +42534,18 @@ - fi - - if test "x$OPENJDK_TARGET_OS" = xbsd; then -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking what is not needed on bsd?" >&5 --$as_echo_n "checking what is not needed on bsd?... " >&6; } -- ALSA_NOT_NEEDED=yes -- { $as_echo "$as_me:${as_lineno-$LINENO}: result: alsa" >&5 --$as_echo "alsa" >&6; } -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking what is not needed on BSD?" >&5 -+$as_echo_n "checking what is not needed on BSD?... " >&6; } -+ if test "x$OPENJDK_TARGET_OS_VENDOR" = xopenbsd; then -+ ALSA_NOT_NEEDED=yes -+ PULSE_NOT_NEEDED=yes -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: alsa pulse" >&5 -+$as_echo "alsa pulse" >&6; } -+ else -+ PULSE_NOT_NEEDED=yes -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: pulse" >&5 -+$as_echo "pulse" >&6; } -+ fi - fi - - if test "x$OPENJDK" = "xfalse"; then -@@ -42450,21 +42580,25 @@ - # Make a simple check for the libraries at the sysroot, and setup --x-includes and - # --x-libraries for the sysroot, if that seems to be correct. - if test "x$OPENJDK_TARGET_OS" = "xlinux"; then -- if test "x$SYSROOT" != "x"; then -+ if test "x$SYS_ROOT" != "x/"; then - if test "x$x_includes" = xNONE; then -- if test -f "$SYSROOT/usr/X11R6/include/X11/Xlib.h"; then -- x_includes="$SYSROOT/usr/X11R6/include" -- elif test -f "$SYSROOT/usr/include/X11/Xlib.h"; then -- x_includes="$SYSROOT/usr/include" -+ if test -f "$SYS_ROOT/usr/X11R7/include/X11/Xlib.h"; then -+ x_includes="$SYS_ROOT/usr/X11R7/include" -+ elif test -f "$SYS_ROOT/usr/X11R6/include/X11/Xlib.h"; then -+ x_includes="$SYS_ROOT/usr/X11R6/include" -+ elif test -f "$SYS_ROOT/usr/include/X11/Xlib.h"; then -+ x_includes="$SYS_ROOT/usr/include" - fi - fi - if test "x$x_libraries" = xNONE; then -- if test -f "$SYSROOT/usr/X11R6/lib/libX11.so"; then -- x_libraries="$SYSROOT/usr/X11R6/lib" -- elif test "$SYSROOT/usr/lib64/libX11.so" && test "x$OPENJDK_TARGET_CPU_BITS" = x64; then -- x_libraries="$SYSROOT/usr/lib64" -- elif test -f "$SYSROOT/usr/lib/libX11.so"; then -- x_libraries="$SYSROOT/usr/lib" -+ if test -f "$SYS_ROOT/usr/X11R7/lib/libX11.so"; then -+ x_libraries="$SYS_ROOT/usr/X11R7/lib" -+ elif test -f "$SYS_ROOT/usr/X11R6/lib/libX11.so"; then -+ x_libraries="$SYS_ROOT/usr/X11R6/lib" -+ elif test "$SYS_ROOT/usr/lib64/libX11.so" && test "x$OPENJDK_TARGET_CPU_BITS" = x64; then -+ x_libraries="$SYS_ROOT/usr/lib64" -+ elif test -f "$SYS_ROOT/usr/lib/libX11.so"; then -+ x_libraries="$SYS_ROOT/usr/lib" - fi - fi - fi -@@ -43511,6 +43645,10 @@ - # A CSW package seems to be installed! - CUPS_FOUND=yes - CUPS_CFLAGS="-I$SYSROOT/opt/csw/include" -+ elif test -s ${PACKAGE_PATH}/include/cups/cups.h; then -+ # Standard package location for BSD -+ CUPS_FOUND=yes -+ CUPS_CFLAGS="-I${PACKAGE_PATH}/include" - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CUPS_FOUND" >&5 - $as_echo "$CUPS_FOUND" >&6; } -@@ -47396,7 +47534,7 @@ - - ############################################################################### - # -- # Check for alsa headers and libraries. Used on Linux/GNU systems. -+ # Check for alsa headers and libraries. Used on Linux/GNU and BSD systems. - # - - # Check whether --with-alsa was given. -@@ -47807,15 +47945,66 @@ - - if test "x${with_giflib}" = "xbundled"; then - USE_EXTERNAL_LIBGIF=false -+ GIFLIB_CFLAGS= -+ GIFLIB_LDFLAGS= - elif test "x${with_giflib}" = "xsystem"; then -+ GIFLIB_H_FOUND=no - ac_fn_cxx_check_header_mongrel "$LINENO" "gif_lib.h" "ac_cv_header_gif_lib_h" "$ac_includes_default" - if test "x$ac_cv_header_gif_lib_h" = xyes; then : - --else -- as_fn_error $? "--with-giflib=system specified, but gif_lib.h not found!" "$LINENO" 5 --fi -- -- -+ GIFLIB_H_FOUND=yes -+ GIFLIB_CFLAGS= -+ -+ -+fi -+ -+ -+ if test "x$GIFLIB_H_FOUND" = xno; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for giflib headers" >&5 -+$as_echo_n "checking for giflib headers... " >&6; } -+ if test -s ${PACKAGE_PATH}/include/gif_lib.h; then -+ # Standard package location for BSD -+ GIFLIB_H_FOUND=yes -+ GIFLIB_CFLAGS="-I${PACKAGE_PATH}/include" -+ fi -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GIFLIB_H_FOUND" >&5 -+$as_echo "$GIFLIB_H_FOUND" >&6; } -+ fi -+ if test "x$GIFLIB_H_FOUND" = xno; then -+ -+ # Print a helpful message on how to acquire the necessary build dependency. -+ # giflib is the help tag: freetype, cups, pulse, alsa etc -+ MISSING_DEPENDENCY=giflib -+ -+ if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then -+ cygwin_help $MISSING_DEPENDENCY -+ elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then -+ msys_help $MISSING_DEPENDENCY -+ else -+ PKGHANDLER_COMMAND= -+ -+ case $PKGHANDLER in -+ apt-get) -+ apt_help $MISSING_DEPENDENCY ;; -+ yum) -+ yum_help $MISSING_DEPENDENCY ;; -+ port) -+ port_help $MISSING_DEPENDENCY ;; -+ pkgutil) -+ pkgutil_help $MISSING_DEPENDENCY ;; -+ pkgadd) -+ pkgadd_help $MISSING_DEPENDENCY ;; -+ esac -+ -+ if test "x$PKGHANDLER_COMMAND" != x; then -+ HELP_MSG="You might be able to fix this by running '$PKGHANDLER_COMMAND'." -+ fi -+ fi -+ -+ as_fn_error $? "Could not find giflib headers! $HELP_MSG " "$LINENO" 5 -+ fi -+ -+ GIFLIB_LIB_FOUND=no - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DGifGetCode in -lgif" >&5 - $as_echo_n "checking for DGifGetCode in -lgif... " >&6; } - if ${ac_cv_lib_gif_DGifGetCode+:} false; then : -@@ -47853,16 +48042,96 @@ - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gif_DGifGetCode" >&5 - $as_echo "$ac_cv_lib_gif_DGifGetCode" >&6; } - if test "x$ac_cv_lib_gif_DGifGetCode" = xyes; then : -- cat >>confdefs.h <<_ACEOF --#define HAVE_LIBGIF 1 --_ACEOF -- -- LIBS="-lgif $LIBS" -- --else -- as_fn_error $? "--with-giflib=system specified, but no giflib found!" "$LINENO" 5 --fi -- -+ -+ GIFLIB_LIB_FOUND=yes -+ GIFLIB_LDFLAGS= -+ -+ -+fi -+ -+ if test "x$GIFLIB_LIB_FOUND" = xno; then -+ save_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS -L${PACKAGE_PATH}/lib" -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DGifOpen in -lgif" >&5 -+$as_echo_n "checking for DGifOpen in -lgif... " >&6; } -+if ${ac_cv_lib_gif_DGifOpen+:} false; then : -+ $as_echo_n "(cached) " >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lgif $LIBS" -+cat confdefs.h - <<_ACEOF >conftest.$ac_ext -+/* end confdefs.h. */ -+ -+/* Override any GCC internal prototype to avoid an error. -+ Use char because int might match the return type of a GCC -+ builtin and then its argument prototype would still apply. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+char DGifOpen (); -+int -+main () -+{ -+return DGifOpen (); -+ ; -+ return 0; -+} -+_ACEOF -+if ac_fn_cxx_try_link "$LINENO"; then : -+ ac_cv_lib_gif_DGifOpen=yes -+else -+ ac_cv_lib_gif_DGifOpen=no -+fi -+rm -f core conftest.err conftest.$ac_objext \ -+ conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gif_DGifOpen" >&5 -+$as_echo "$ac_cv_lib_gif_DGifOpen" >&6; } -+if test "x$ac_cv_lib_gif_DGifOpen" = xyes; then : -+ -+ GIFLIB_LIB_FOUND=yes -+ GIFLIB_LDFLAGS="-L${PACKAGE_PATH}/lib" -+ -+ -+fi -+ -+ LDFLAGS="$save_LDFLAGS" -+ fi -+ -+ if test "x$GIFLIB_LIB_FOUND" = xno; then -+ -+ # Print a helpful message on how to acquire the necessary build dependency. -+ # giflib is the help tag: freetype, cups, pulse, alsa etc -+ MISSING_DEPENDENCY=giflib -+ -+ if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then -+ cygwin_help $MISSING_DEPENDENCY -+ elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then -+ msys_help $MISSING_DEPENDENCY -+ else -+ PKGHANDLER_COMMAND= -+ -+ case $PKGHANDLER in -+ apt-get) -+ apt_help $MISSING_DEPENDENCY ;; -+ yum) -+ yum_help $MISSING_DEPENDENCY ;; -+ port) -+ port_help $MISSING_DEPENDENCY ;; -+ pkgutil) -+ pkgutil_help $MISSING_DEPENDENCY ;; -+ pkgadd) -+ pkgadd_help $MISSING_DEPENDENCY ;; -+ esac -+ -+ if test "x$PKGHANDLER_COMMAND" != x; then -+ HELP_MSG="You might be able to fix this by running '$PKGHANDLER_COMMAND'." -+ fi -+ fi -+ -+ as_fn_error $? "Could not find giflib library! $HELP_MSG " "$LINENO" 5 -+ fi - - USE_EXTERNAL_LIBGIF=true - else -@@ -47870,6 +48139,8 @@ - fi - - -+ -+ - ############################################################################### - # - # Check for the zlib library -@@ -48437,6 +48708,11 @@ - LIBCXX="-lstdc++" - fi - -+ # TODO better (platform agnostic) test -+ if test "x$OPENJDK_TARGET_OS" = xbsd && test "x$LIBCXX" = x && test "x$GCC" = xyes; then -+ LIBCXX="-lstdc++" -+ fi -+ - - - -@@ -51636,6 +51912,10 @@ - # Looks like a MacOSX system - NUM_CORES=`/usr/sbin/system_profiler -detailLevel full SPHardwareDataType | grep 'Cores' | awk '{print $5}'` - FOUND_CORES=yes -+ elif test "x$OPENJDK_BUILD_OS" = xbsd && test "x$(uname -s | grep -o BSD)" = xBSD; then -+ # Looks like a BSD system -+ NUM_CORES=`/sbin/sysctl -n hw.ncpu` -+ FOUND_CORES=yes - elif test "x$OPENJDK_BUILD_OS" = xaix ; then - NUM_CORES=`/usr/sbin/prtconf | grep "^Number Of Processors" | awk '{ print $4 }'` - FOUND_CORES=yes -@@ -51691,6 +51971,15 @@ - MEMORY_SIZE=`/usr/sbin/system_profiler -detailLevel full SPHardwareDataType | grep 'Memory' | awk '{print $2}'` - MEMORY_SIZE=`expr $MEMORY_SIZE \* 1024` - FOUND_MEM=yes -+ elif test "x$OPENJDK_BUILD_OS" = xbsd && test "x$(uname -s | grep -o OpenBSD)" = xOpenBSD; then -+ # Looks like an OpenBSD system -+ MEMORY_SIZE=`/sbin/sysctl -n hw.physmem | awk '{print int($NF / 1048576); }'` -+ FOUND_MEM=yes -+ elif test "x$OPENJDK_BUILD_OS" = xbsd && test "x$(uname -s | grep -o BSD)" = xBSD; then -+ # Looks like a BSD system -+ MEMORY_SIZE=`/sbin/sysctl -n hw.physmem` -+ MEMORY_SIZE=`expr $MEMORY_SIZE / 1024 / 1024` -+ FOUND_MEM=yes - elif test "x$OPENJDK_BUILD_OS" = xwindows; then - # Windows, but without cygwin - MEMORY_SIZE=`wmic computersystem get totalphysicalmemory -value | grep = | cut -d "=" -f 2-` -@@ -52264,8 +52553,8 @@ - # precompiled headers. - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ccache supports precompiled headers" >&5 - $as_echo_n "checking if ccache supports precompiled headers... " >&6; } -- HAS_GOOD_CCACHE=`($CCACHE --version | head -n 1 | grep -E 3.1.[456789]) 2> /dev/null` -- if test "x$HAS_GOOD_CCACHE" = x; then -+ HAS_GOOD_CCACHE=`($CCACHE --version | head -n 1 | awk '{ split($3, a, "."); if (a[1] >= 3 && (a[2] > 1 || (a[2] == 1 && a[3] >= 4))) print "yes"; else print "no"; }') 2> /dev/null` -+ if test "x$HAS_GOOD_CCACHE" = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, disabling ccache" >&5 - $as_echo "no, disabling ccache" >&6; } - CCACHE= ---- ./common/autoconf/jdk-options.m4 Sat Dec 08 11:48:10 2018 +0000 -+++ ./common/autoconf/jdk-options.m4 Sat Feb 09 10:03:01 2019 -0800 -@@ -159,7 +159,7 @@ - INCLUDE_SA=false - fi - if test "x$VAR_CPU" = xppc64 -o "x$VAR_CPU" = xppc64le ; then -- INCLUDE_SA=false -+ INCLUDE_SA=true - fi - if test "x$OPENJDK_TARGET_CPU" = xaarch64; then - INCLUDE_SA=false -@@ -410,6 +410,20 @@ - - ############################################################################### - # -+ # Enable or disable static linking of libjli on bsd only -+ # -+ AC_ARG_ENABLE(static-libjli, [AS_HELP_STRING([--enable-static-libjli], -+ [Enable staticly linking libjli on bsd @<:@disabled@:>@])],, -+ [enable_static_libjli=no]) -+ if test "x$OPENJDK_TARGET_OS" = "xbsd" && test "x$enable_static_libjli" = "xyes"; then -+ BSD_STATIC_LIBJLI=bsd -+ else -+ BSD_STATIC_LIBJLI= -+ fi -+ AC_SUBST(BSD_STATIC_LIBJLI) -+ -+ ############################################################################### -+ # - # Enable or disable the elliptic curve crypto implementation - # - AC_DEFUN_ONCE([JDKOPT_DETECT_INTREE_EC], ---- ./common/autoconf/libraries.m4 Sat Dec 08 11:48:10 2018 +0000 -+++ ./common/autoconf/libraries.m4 Sat Feb 09 10:03:01 2019 -0800 -@@ -69,9 +69,15 @@ - fi - - if test "x$OPENJDK_TARGET_OS" = xbsd; then -- AC_MSG_CHECKING([what is not needed on bsd?]) -- ALSA_NOT_NEEDED=yes -- AC_MSG_RESULT([alsa]) -+ AC_MSG_CHECKING([what is not needed on BSD?]) -+ if test "x$OPENJDK_TARGET_OS_VENDOR" = xopenbsd; then -+ ALSA_NOT_NEEDED=yes -+ PULSE_NOT_NEEDED=yes -+ AC_MSG_RESULT([alsa pulse]) -+ else -+ PULSE_NOT_NEEDED=yes -+ AC_MSG_RESULT([pulse]) -+ fi - fi - - if test "x$OPENJDK" = "xfalse"; then -@@ -98,21 +104,25 @@ - # Make a simple check for the libraries at the sysroot, and setup --x-includes and - # --x-libraries for the sysroot, if that seems to be correct. - if test "x$OPENJDK_TARGET_OS" = "xlinux"; then -- if test "x$SYSROOT" != "x"; then -+ if test "x$SYS_ROOT" != "x/"; then - if test "x$x_includes" = xNONE; then -- if test -f "$SYSROOT/usr/X11R6/include/X11/Xlib.h"; then -- x_includes="$SYSROOT/usr/X11R6/include" -- elif test -f "$SYSROOT/usr/include/X11/Xlib.h"; then -- x_includes="$SYSROOT/usr/include" -+ if test -f "$SYS_ROOT/usr/X11R7/include/X11/Xlib.h"; then -+ x_includes="$SYS_ROOT/usr/X11R7/include" -+ elif test -f "$SYS_ROOT/usr/X11R6/include/X11/Xlib.h"; then -+ x_includes="$SYS_ROOT/usr/X11R6/include" -+ elif test -f "$SYS_ROOT/usr/include/X11/Xlib.h"; then -+ x_includes="$SYS_ROOT/usr/include" - fi - fi - if test "x$x_libraries" = xNONE; then -- if test -f "$SYSROOT/usr/X11R6/lib/libX11.so"; then -- x_libraries="$SYSROOT/usr/X11R6/lib" -- elif test "$SYSROOT/usr/lib64/libX11.so" && test "x$OPENJDK_TARGET_CPU_BITS" = x64; then -- x_libraries="$SYSROOT/usr/lib64" -- elif test -f "$SYSROOT/usr/lib/libX11.so"; then -- x_libraries="$SYSROOT/usr/lib" -+ if test -f "$SYS_ROOT/usr/X11R7/lib/libX11.so"; then -+ x_libraries="$SYS_ROOT/usr/X11R7/lib" -+ elif test -f "$SYS_ROOT/usr/X11R6/lib/libX11.so"; then -+ x_libraries="$SYS_ROOT/usr/X11R6/lib" -+ elif test "$SYS_ROOT/usr/lib64/libX11.so" && test "x$OPENJDK_TARGET_CPU_BITS" = x64; then -+ x_libraries="$SYS_ROOT/usr/lib64" -+ elif test -f "$SYS_ROOT/usr/lib/libX11.so"; then -+ x_libraries="$SYS_ROOT/usr/lib" - fi - fi - fi -@@ -238,6 +248,10 @@ - # A CSW package seems to be installed! - CUPS_FOUND=yes - CUPS_CFLAGS="-I$SYSROOT/opt/csw/include" -+ elif test -s ${PACKAGE_PATH}/include/cups/cups.h; then -+ # Standard package location for BSD -+ CUPS_FOUND=yes -+ CUPS_CFLAGS="-I${PACKAGE_PATH}/include" - fi - AC_MSG_RESULT([$CUPS_FOUND]) - fi -@@ -638,7 +652,7 @@ - - ############################################################################### - # -- # Check for alsa headers and libraries. Used on Linux/GNU systems. -+ # Check for alsa headers and libraries. Used on Linux/GNU and BSD systems. - # - AC_ARG_WITH(alsa, [AS_HELP_STRING([--with-alsa], - [specify prefix directory for the alsa package -@@ -743,17 +757,61 @@ - - if test "x${with_giflib}" = "xbundled"; then - USE_EXTERNAL_LIBGIF=false -+ GIFLIB_CFLAGS= -+ GIFLIB_LDFLAGS= - elif test "x${with_giflib}" = "xsystem"; then -- AC_CHECK_HEADER(gif_lib.h, [], -- [ AC_MSG_ERROR([--with-giflib=system specified, but gif_lib.h not found!])]) -- AC_CHECK_LIB(gif, DGifGetCode, [], -- [ AC_MSG_ERROR([--with-giflib=system specified, but no giflib found!])]) -+ GIFLIB_H_FOUND=no -+ AC_CHECK_HEADER(gif_lib.h, -+ [ -+ GIFLIB_H_FOUND=yes -+ GIFLIB_CFLAGS= -+ ] -+ ) -+ if test "x$GIFLIB_H_FOUND" = xno; then -+ AC_MSG_CHECKING([for giflib headers]) -+ if test -s ${PACKAGE_PATH}/include/gif_lib.h; then -+ # Standard package location for BSD -+ GIFLIB_H_FOUND=yes -+ GIFLIB_CFLAGS="-I${PACKAGE_PATH}/include" -+ fi -+ AC_MSG_RESULT([$GIFLIB_H_FOUND]) -+ fi -+ if test "x$GIFLIB_H_FOUND" = xno; then -+ HELP_MSG_MISSING_DEPENDENCY([giflib]) -+ AC_MSG_ERROR([Could not find giflib headers! $HELP_MSG ]) -+ fi -+ -+ GIFLIB_LIB_FOUND=no -+ AC_CHECK_LIB(gif, DGifGetCode, -+ [ -+ GIFLIB_LIB_FOUND=yes -+ GIFLIB_LDFLAGS= -+ ] -+ ) -+ if test "x$GIFLIB_LIB_FOUND" = xno; then -+ save_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS -L${PACKAGE_PATH}/lib" -+ AC_CHECK_LIB(gif, DGifOpen, -+ [ -+ GIFLIB_LIB_FOUND=yes -+ GIFLIB_LDFLAGS="-L${PACKAGE_PATH}/lib" -+ ] -+ ) -+ LDFLAGS="$save_LDFLAGS" -+ fi -+ -+ if test "x$GIFLIB_LIB_FOUND" = xno; then -+ HELP_MSG_MISSING_DEPENDENCY([giflib]) -+ AC_MSG_ERROR([Could not find giflib library! $HELP_MSG ]) -+ fi - - USE_EXTERNAL_LIBGIF=true - else - AC_MSG_ERROR([Invalid value of --with-giflib: ${with_giflib}, use 'system' or 'bundled']) - fi - AC_SUBST(USE_EXTERNAL_LIBGIF) -+ AC_SUBST(GIFLIB_CFLAGS) -+ AC_SUBST(GIFLIB_LDFLAGS) - - ############################################################################### - # -@@ -988,6 +1046,11 @@ - LIBCXX="-lstdc++" - fi - -+ # TODO better (platform agnostic) test -+ if test "x$OPENJDK_TARGET_OS" = xbsd && test "x$LIBCXX" = x && test "x$GCC" = xyes; then -+ LIBCXX="-lstdc++" -+ fi -+ - AC_SUBST(LIBCXX) - ]) - ---- ./common/autoconf/platform.m4 Sat Dec 08 11:48:10 2018 +0000 -+++ ./common/autoconf/platform.m4 Sat Feb 09 10:03:01 2019 -0800 -@@ -30,7 +30,7 @@ - [ - # First argument is the cpu name from the trip/quad - case "$1" in -- x86_64) -+ amd64|x86_64) - VAR_CPU=x86_64 - VAR_CPU_ARCH=x86 - VAR_CPU_BITS=64 -@@ -147,6 +147,22 @@ - AC_MSG_ERROR([unsupported operating system $1]) - ;; - esac -+ # The BSD's have slight differences so determine which one we are building on. -+ # For the rest set VAR_OS_VENDOR to VAR_OS -+ case "$1" in -+ *openbsd*) -+ VAR_OS_VENDOR=openbsd -+ ;; -+ *netbsd*) -+ VAR_OS_VENDOR=netbsd -+ ;; -+ *freebsd*) -+ VAR_OS_VENDOR=freebsd -+ ;; -+ *) -+ VAR_OS_VENDOR="$VAR_OS" -+ ;; -+ esac - ]) - - # Expects $host_os $host_cpu $build_os and $build_cpu -@@ -193,6 +209,7 @@ - PLATFORM_EXTRACT_VARS_FROM_CPU($host_cpu) - # ... and setup our own variables. (Do this explicitely to facilitate searching) - OPENJDK_TARGET_OS="$VAR_OS" -+ OPENJDK_TARGET_OS_VENDOR="$VAR_OS_VENDOR" - OPENJDK_TARGET_OS_API="$VAR_OS_API" - OPENJDK_TARGET_OS_ENV="$VAR_OS_ENV" - OPENJDK_TARGET_CPU="$VAR_CPU" -@@ -200,6 +217,7 @@ - OPENJDK_TARGET_CPU_BITS="$VAR_CPU_BITS" - OPENJDK_TARGET_CPU_ENDIAN="$VAR_CPU_ENDIAN" - AC_SUBST(OPENJDK_TARGET_OS) -+ AC_SUBST(OPENJDK_TARGET_OS_VENDOR) - AC_SUBST(OPENJDK_TARGET_OS_API) - AC_SUBST(OPENJDK_TARGET_OS_ENV) - AC_SUBST(OPENJDK_TARGET_CPU) -@@ -310,8 +328,8 @@ - - # Setup OPENJDK_TARGET_CPU_OSARCH, which is used to set the os.arch Java system property - OPENJDK_TARGET_CPU_OSARCH="$OPENJDK_TARGET_CPU" -- if test "x$OPENJDK_TARGET_OS" = xlinux && test "x$OPENJDK_TARGET_CPU" = xx86; then -- # On linux only, we replace x86 with i386. -+ if test "x$OPENJDK_TARGET_OS" = xbsd -o "x$OPENJDK_TARGET_OS" = xlinux && test "x$OPENJDK_TARGET_CPU" = xx86; then -+ # On Linux and BSD, we replace x86 with i386. - OPENJDK_TARGET_CPU_OSARCH="i386" - elif test "x$OPENJDK_TARGET_OS" != xmacosx && test "x$OPENJDK_TARGET_CPU" = xx86_64; then - # On all platforms except macosx, we replace x86_64 with amd64. ---- ./common/autoconf/spec.gmk.in Sat Dec 08 11:48:10 2018 +0000 -+++ ./common/autoconf/spec.gmk.in Sat Feb 09 10:03:01 2019 -0800 -@@ -79,6 +79,7 @@ - OPENJDK_TARGET_OS:=@OPENJDK_TARGET_OS@ - OPENJDK_TARGET_OS_API:=@OPENJDK_TARGET_OS_API@ - OPENJDK_TARGET_OS_ENV:=@OPENJDK_TARGET_OS_ENV@ -+OPENJDK_TARGET_OS_VENDOR:=@OPENJDK_TARGET_OS_VENDOR@ - - OPENJDK_TARGET_CPU:=@OPENJDK_TARGET_CPU@ - OPENJDK_TARGET_CPU_ARCH:=@OPENJDK_TARGET_CPU_ARCH@ -@@ -281,7 +282,7 @@ - ALSA_LIBS:=@ALSA_LIBS@ - ALSA_CFLAGS:=@ALSA_CFLAGS@ - --PACKAGE_PATH=@PACKAGE_PATH@ -+PACKAGE_PATH:=@PACKAGE_PATH@ - - # Source file for cacerts - CACERTS_FILE=@CACERTS_FILE@ -@@ -289,6 +290,9 @@ - # Enable unlimited crypto policy - UNLIMITED_CRYPTO=@UNLIMITED_CRYPTO@ - -+# Build static libjli on bsd -+BSD_STATIC_LIBJLI=@BSD_STATIC_LIBJLI@ -+ - # Necessary additional compiler flags to compile X11 - X_CFLAGS:=@X_CFLAGS@ - X_LIBS:=@X_LIBS@ -@@ -572,6 +576,8 @@ - ENABLE_INTREE_EC=@ENABLE_INTREE_EC@ - USE_EXTERNAL_LIBJPEG:=@USE_EXTERNAL_LIBJPEG@ - USE_EXTERNAL_LIBGIF:=@USE_EXTERNAL_LIBGIF@ -+GIFLIB_CFLAGS:=@GIFLIB_CFLAGS@ -+GIFLIB_LDFLAGS:=@GIFLIB_LDFLAGS@ - USE_EXTERNAL_LIBZ:=@USE_EXTERNAL_LIBZ@ - LIBZIP_CAN_USE_MMAP:=@LIBZIP_CAN_USE_MMAP@ - MSVCR_DLL:=@MSVCR_DLL@ ---- ./common/autoconf/toolchain.m4 Sat Dec 08 11:48:10 2018 +0000 -+++ ./common/autoconf/toolchain.m4 Sat Feb 09 10:03:01 2019 -0800 -@@ -37,6 +37,7 @@ - VALID_TOOLCHAINS_all="gcc clang solstudio xlc microsoft" - - # These toolchains are valid on different platforms -+VALID_TOOLCHAINS_bsd="clang gcc" - VALID_TOOLCHAINS_linux="gcc clang" - VALID_TOOLCHAINS_solaris="solstudio" - VALID_TOOLCHAINS_macosx="gcc clang" -@@ -713,7 +714,7 @@ - - # objcopy is used for moving debug symbols to separate files when - # full debug symbols are enabled. -- if test "x$OPENJDK_TARGET_OS" = xsolaris || test "x$OPENJDK_TARGET_OS" = xlinux; then -+ if test "x$OPENJDK_TARGET_OS" = xsolaris || test "x$OPENJDK_TARGET_OS" = xlinux || test "x$OPENJDK_TARGET_OS" = xbsd ; then - BASIC_CHECK_TOOLS(OBJCOPY, [gobjcopy objcopy]) - # Only call fixup if objcopy was found. - if test -n "$OBJCOPY"; then -@@ -801,10 +802,53 @@ - AC_DEFUN_ONCE([TOOLCHAIN_MISC_CHECKS], - [ - # The package path is used only on macosx? -- # FIXME: clean this up, and/or move it elsewhere. -- PACKAGE_PATH=/opt/local -+ AC_ARG_WITH(package-path, [AS_HELP_STRING([--with-package-path], -+ [package path to be used for location of third party packages])]) -+ PACKAGE_PATH="$with_package_path" -+ if test "x$PACKAGE_PATH" = x; then -+ if test "`uname -s`" = "Darwin"; then -+ PACKAGE_PATH=/opt/local -+ fi -+ -+ if test "`uname -s`" = "FreeBSD"; then -+ PACKAGE_PATH=/usr/local -+ fi -+ -+ if test "`uname -s`" = "NetBSD"; then -+ PACKAGE_PATH=/usr/pkg -+ fi -+ -+ if test "`uname -s`" = "OpenBSD"; then -+ PACKAGE_PATH=/usr/local -+ fi -+ fi -+ - AC_SUBST(PACKAGE_PATH) - -+ # On OpenBSD check to see if ld requires -z wxneeded -+ if test "`uname -s`" = "OpenBSD"; then -+ AC_MSG_CHECKING([if ld requires -z wxneeded]) -+ PUSHED_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS -Wl,-z,wxneeded" -+ AC_LINK_IFELSE([AC_LANG_SOURCE([[int main() { }]])], -+ [ -+ if $READELF -l conftest$ac_exeext | $GREP OPENBSD_WXNEED > /dev/null; then -+ AC_MSG_RESULT([yes]) -+ LDFLAGS_JDK="${LDFLAGS_JDK} -Wl,-z,wxneeded" -+ else -+ AC_MSG_RESULT([yes]) -+ fi -+ ], -+ [ -+ AC_MSG_RESULT([no]) -+ ], -+ [ -+ AC_MSG_RESULT([no]) -+ ] -+ ) -+ LDFLAGS="$PUSHED_LDFLAGS" -+ fi -+ - # Check for extra potential brokenness. - if test "x$TOOLCHAIN_TYPE" = xmicrosoft; then - # On Windows, double-check that we got the right compiler. ---- ./configure Sat Dec 08 11:48:10 2018 +0000 -+++ ./configure Sat Feb 09 10:03:01 2019 -0800 -@@ -1,4 +1,4 @@ --#!/bin/bash -+#!/bin/sh - # - # Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. - # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ---- ./make/Javadoc.gmk Sat Dec 08 11:48:10 2018 +0000 -+++ ./make/Javadoc.gmk Sat Feb 09 10:03:01 2019 -0800 -@@ -46,8 +46,18 @@ - - BUILD_NUMBER=$(JDK_BUILD_NUMBER) - -+ifeq ($(OPENJDK_TARGET_OS_VENDOR), openbsd) -+ ifeq ($(OPENJDK_TARGET_CPU_BITS), 32) -+ JAVADOC_CMD_MEM = "-Xmx768m" -+ else -+ JAVADOC_CMD_MEM = "-Xmx1024m" -+ endif -+else -+ JAVADOC_CMD_MEM = "-Xmx1024m" -+endif -+ - JAVADOC_CMD = $(JAVA) \ -- -Xmx1024m \ -+ $(JAVADOC_CMD_MEM) \ - -Djava.awt.headless=true \ - $(NEW_JAVADOC) \ - -bootclasspath $(JDK_OUTPUTDIR)/classes ---- ./make/Main.gmk Sat Dec 08 11:48:10 2018 +0000 -+++ ./make/Main.gmk Sat Feb 09 10:03:01 2019 -0800 -@@ -58,7 +58,11 @@ - - # Setup number of jobs to use. -jN is unfortunately not available for us to parse from the command line, - # hence this workaround. -+ifdef JOBS -+ifneq ($(JOBS),0) - MAKE_ARGS:=$(MAKE_ARGS) -j$(JOBS) -+endif -+endif - - ### Main targets - ---- ./make/common/MakeBase.gmk Sat Dec 08 11:48:10 2018 +0000 -+++ ./make/common/MakeBase.gmk Sat Feb 09 10:03:01 2019 -0800 -@@ -338,7 +338,7 @@ - # (and causing a crash on Cygwin). - # Default shell seems to always be /bin/sh. Must override with bash to get this to work on Solaris. - # Only use time if it's GNU time which supports format and output file. -- WRAPPER_SHELL:=/bin/bash $$(SRC_ROOT)/common/bin/shell-tracer.sh $$(if $$(findstring yes,$$(IS_GNU_TIME)),$$(TIME),-) $$(OUTPUT_ROOT)/build-trace-time.log /bin/bash -+ WRAPPER_SHELL:=bash $$(SRC_ROOT)/common/bin/shell-tracer.sh $$(if $$(findstring yes,$$(IS_GNU_TIME)),$$(TIME),-) $$(OUTPUT_ROOT)/build-trace-time.log bash - SHELL=$$(warning $$(if $$@,Building $$@,Running shell command) $$(if $$<, (from $$<))$$(if $$?, ($$(wordlist 1, 20, $$?) $$(if $$(wordlist 21, 22, $$?), ... [in total $$(words $$?) files]) newer)))$$(WRAPPER_SHELL) - endif - # Never remove warning messages; this is just for completeness -@@ -365,8 +365,8 @@ - - # This is to be called by all SetupFoo macros - define LogSetupMacroEntry -- $(if $(27),$(error Internal makefile error: Too many arguments to LogSetupMacroEntry, please update MakeBase.gmk)) -- $(if $(findstring $(LOG_LEVEL),debug trace), $(info $1 $(foreach i,2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26,$(if $($i),$(NEWLINE) $(strip [$i] $($i)))))) -+ $(if $(30),$(error Internal makefile error: Too many arguments to LogSetupMacroEntry, please update MakeBase.gmk)) -+ $(if $(findstring $(LOG_LEVEL),debug trace), $(info $1 $(foreach i,2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29,$(if $($i),$(NEWLINE) $(strip [$i] $($i)))))) - endef - - # Make directory without forking mkdir if not needed ---- ./make/common/NativeCompilation.gmk Sat Dec 08 11:48:10 2018 +0000 -+++ ./make/common/NativeCompilation.gmk Sat Feb 09 10:03:01 2019 -0800 -@@ -158,9 +158,9 @@ - # CC the compiler to use, default is $(CC) - # LDEXE the linker to use for linking executables, default is $(LDEXE) - # OPTIMIZATION sets optimization level to NONE, LOW, HIGH, HIGHEST -- $(foreach i,2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26, $(if $($i),$1_$(strip $($i)))$(NEWLINE)) -- $(call LogSetupMacroEntry,SetupNativeCompilation($1),$2,$3,$4,$5,$6,$7,$8,$9,$(10),$(11),$(12),$(13),$(14),$(15),$(16),$(17),$(18),$(19),$(20),$(21),$(22),$(23),$(24),$(25),$(26)) -- $(if $(27),$(error Internal makefile error: Too many arguments to SetupNativeCompilation, please update NativeCompilation.gmk)) -+ $(foreach i,2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29, $(if $($i),$1_$(strip $($i)))$(NEWLINE)) -+ $(call LogSetupMacroEntry,SetupNativeCompilation($1),$2,$3,$4,$5,$6,$7,$8,$9,$(10),$(11),$(12),$(13),$(14),$(15),$(16),$(17),$(18),$(19),$(20),$(21),$(22),$(23),$(24),$(25),$(26),$(27),$(28),$(29)) -+ $(if $(30),$(error Internal makefile error: Too many arguments to SetupNativeCompilation, please update NativeCompilation.gmk)) - - ifneq (,$$($1_BIN)) - $$(error BIN has been replaced with OBJECT_DIR) ---- ./hotspot/agent/make/Makefile Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/make/Makefile Sun Feb 10 09:26:05 2019 -0800 -@@ -50,6 +50,7 @@ - sun.jvm.hotspot.debugger.amd64 \ - sun.jvm.hotspot.debugger.bsd \ - sun.jvm.hotspot.debugger.bsd.amd64 \ -+sun.jvm.hotspot.debugger.bsd.ppc64 \ - sun.jvm.hotspot.debugger.bsd.x86 \ - sun.jvm.hotspot.debugger.cdbg \ - sun.jvm.hotspot.debugger.cdbg.basic \ -@@ -61,12 +62,15 @@ - sun.jvm.hotspot.debugger.linux.x86 \ - sun.jvm.hotspot.debugger.posix \ - sun.jvm.hotspot.debugger.posix.elf \ -+sun.jvm.hotspot.debugger.ppc64 \ - sun.jvm.hotspot.debugger.proc \ - sun.jvm.hotspot.debugger.proc.amd64 \ -+sun.jvm.hotspot.debugger.proc.ppc64 \ - sun.jvm.hotspot.debugger.proc.sparc \ - sun.jvm.hotspot.debugger.proc.x86 \ - sun.jvm.hotspot.debugger.remote \ - sun.jvm.hotspot.debugger.remote.amd64 \ -+sun.jvm.hotspot.debugger.remote.ppc64 \ - sun.jvm.hotspot.debugger.remote.sparc \ - sun.jvm.hotspot.debugger.remote.x86 \ - sun.jvm.hotspot.debugger.sparc \ -@@ -90,12 +94,14 @@ - sun.jvm.hotspot.runtime.amd64 \ - sun.jvm.hotspot.runtime.bsd \ - sun.jvm.hotspot.runtime.bsd_amd64 \ -+sun.jvm.hotspot.runtime.bsd_ppc64 \ - sun.jvm.hotspot.runtime.bsd_x86 \ - sun.jvm.hotspot.runtime.linux \ - sun.jvm.hotspot.runtime.linux_amd64 \ - sun.jvm.hotspot.runtime.linux_sparc \ - sun.jvm.hotspot.runtime.linux_x86 \ - sun.jvm.hotspot.runtime.posix \ -+sun.jvm.hotspot.runtime.ppc64 \ - sun.jvm.hotspot.runtime.solaris_amd64 \ - sun.jvm.hotspot.runtime.solaris_sparc \ - sun.jvm.hotspot.runtime.solaris_x86 \ -@@ -135,6 +141,7 @@ - sun/jvm/hotspot/debugger/amd64/*.java \ - sun/jvm/hotspot/debugger/bsd/*.java \ - sun/jvm/hotspot/debugger/bsd/amd64/*.java \ -+sun/jvm/hotspot/debugger/bsd/ppc64/*.java \ - sun/jvm/hotspot/debugger/bsd/x86/*.java \ - sun/jvm/hotspot/debugger/cdbg/*.java \ - sun/jvm/hotspot/debugger/cdbg/basic/*.java \ -@@ -145,12 +152,15 @@ - sun/jvm/hotspot/debugger/linux/x86/*.java \ - sun/jvm/hotspot/debugger/posix/*.java \ - sun/jvm/hotspot/debugger/posix/elf/*.java \ -+sun/jvm/hotspot/debugger/ppc64/*.java \ - sun/jvm/hotspot/debugger/proc/*.java \ - sun/jvm/hotspot/debugger/proc/amd64/*.java \ -+sun/jvm/hotspot/debugger/proc/ppc64/*.java \ - sun/jvm/hotspot/debugger/proc/sparc/*.java \ - sun/jvm/hotspot/debugger/proc/x86/*.java \ - sun/jvm/hotspot/debugger/remote/*.java \ - sun/jvm/hotspot/debugger/remote/amd64/*.java \ -+sun/jvm/hotspot/debugger/remote/ppc64/*.java \ - sun/jvm/hotspot/debugger/remote/sparc/*.java \ - sun/jvm/hotspot/debugger/remote/x86/*.java \ - sun/jvm/hotspot/debugger/sparc/*.java \ -@@ -171,12 +181,14 @@ - sun/jvm/hotspot/runtime/amd64/*.java \ - sun/jvm/hotspot/runtime/bsd/*.java \ - sun/jvm/hotspot/runtime/bsd_amd64/*.java \ -+sun/jvm/hotspot/runtime/bsd_ppc64/*.java \ - sun/jvm/hotspot/runtime/bsd_x86/*.java \ - sun/jvm/hotspot/runtime/linux/*.java \ - sun/jvm/hotspot/runtime/linux_amd64/*.java \ - sun/jvm/hotspot/runtime/linux_sparc/*.java \ - sun/jvm/hotspot/runtime/linux_x86/*.java \ - sun/jvm/hotspot/runtime/posix/*.java \ -+sun/jvm/hotspot/runtime/ppc64/*.java \ - sun/jvm/hotspot/runtime/solaris_amd64/*.java \ - sun/jvm/hotspot/runtime/solaris_sparc/*.java \ - sun/jvm/hotspot/runtime/solaris_x86/*.java \ ---- ./hotspot/agent/src/os/bsd/BsdDebuggerLocal.c Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/os/bsd/BsdDebuggerLocal.c Sun Feb 10 09:26:05 2019 -0800 -@@ -42,6 +42,10 @@ - #include "sun_jvm_hotspot_debugger_sparc_SPARCThreadContext.h" - #endif - -+#ifdef ppc64 -+#include "sun_jvm_hotspot_debugger_ppc64_PPC64ThreadContext.h" -+#endif -+ - static jfieldID p_ps_prochandle_ID = 0; - static jfieldID threadList_ID = 0; - static jfieldID loadObjectList_ID = 0; -@@ -307,6 +311,9 @@ - #if defined(sparc) || defined(sparcv9) - #define NPRGREG sun_jvm_hotspot_debugger_sparc_SPARCThreadContext_NPRGREG - #endif -+#ifdef ppc64 -+#define NPRGREG sun_jvm_hotspot_debugger_ppc64_PPC64ThreadContext_NPRGREG -+#endif - - array = (*env)->NewLongArray(env, NPRGREG); - CHECK_EXCEPTION_(0); -@@ -407,6 +414,46 @@ - regs[REG_INDEX(R_O7)] = gregs.u_regs[14]; - #endif /* sparc */ - -+#if defined(ppc64) || defined(ppc64le) -+#define REG_INDEX(reg) sun_jvm_hotspot_debugger_ppc64_PPC64ThreadContext_##reg -+ -+ regs[REG_INDEX(LR)] = gregs.lr; -+ regs[REG_INDEX(PC)] = gregs.pc; -+ regs[REG_INDEX(R0)] = gregs.fixreg[0]; -+ regs[REG_INDEX(R1)] = gregs.fixreg[1]; -+ regs[REG_INDEX(R2)] = gregs.fixreg[2]; -+ regs[REG_INDEX(R3)] = gregs.fixreg[3]; -+ regs[REG_INDEX(R4)] = gregs.fixreg[4]; -+ regs[REG_INDEX(R5)] = gregs.fixreg[5]; -+ regs[REG_INDEX(R6)] = gregs.fixreg[6]; -+ regs[REG_INDEX(R7)] = gregs.fixreg[7]; -+ regs[REG_INDEX(R8)] = gregs.fixreg[8]; -+ regs[REG_INDEX(R9)] = gregs.fixreg[9]; -+ regs[REG_INDEX(R10)] = gregs.fixreg[10]; -+ regs[REG_INDEX(R11)] = gregs.fixreg[11]; -+ regs[REG_INDEX(R12)] = gregs.fixreg[12]; -+ regs[REG_INDEX(R13)] = gregs.fixreg[13]; -+ regs[REG_INDEX(R14)] = gregs.fixreg[14]; -+ regs[REG_INDEX(R15)] = gregs.fixreg[15]; -+ regs[REG_INDEX(R16)] = gregs.fixreg[16]; -+ regs[REG_INDEX(R17)] = gregs.fixreg[17]; -+ regs[REG_INDEX(R18)] = gregs.fixreg[18]; -+ regs[REG_INDEX(R19)] = gregs.fixreg[19]; -+ regs[REG_INDEX(R20)] = gregs.fixreg[20]; -+ regs[REG_INDEX(R21)] = gregs.fixreg[21]; -+ regs[REG_INDEX(R22)] = gregs.fixreg[22]; -+ regs[REG_INDEX(R23)] = gregs.fixreg[23]; -+ regs[REG_INDEX(R24)] = gregs.fixreg[24]; -+ regs[REG_INDEX(R25)] = gregs.fixreg[25]; -+ regs[REG_INDEX(R26)] = gregs.fixreg[26]; -+ regs[REG_INDEX(R27)] = gregs.fixreg[27]; -+ regs[REG_INDEX(R28)] = gregs.fixreg[28]; -+ regs[REG_INDEX(R29)] = gregs.fixreg[29]; -+ regs[REG_INDEX(R30)] = gregs.fixreg[30]; -+ regs[REG_INDEX(R31)] = gregs.fixreg[31]; -+ -+#endif -+ - - (*env)->ReleaseLongArrayElements(env, array, regs, JNI_COMMIT); - return array; ---- ./hotspot/agent/src/os/bsd/Makefile Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/os/bsd/Makefile Sun Feb 10 09:26:05 2019 -0800 -@@ -85,6 +85,9 @@ - LFLAGS_LIBSA = -Xlinker --version-script=mapfile - endif - -+LDFLAGS_NO_EXEC_STACK="-Wl,-z,noexecstack" -+LFLAGS_LIBSA += $(LDFLAGS_NO_EXEC_STACK) -+ - $(LIBSA): $(OBJSPLUS) mapfile - if [ ! -d $(ARCH) ] ; then mkdir $(ARCH) ; fi - $(GCC) -shared $(LFLAGS_LIBSA) -o $(LIBSA) $(FOUNDATIONFLAGS) $(OBJSPLUS) $(LIBS) $(SALIBS) ---- ./hotspot/agent/src/os/bsd/elfmacros.h Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/os/bsd/elfmacros.h Sun Feb 10 09:26:05 2019 -0800 -@@ -34,6 +34,7 @@ - #define ELF_SYM Elf64_Sym - #define ELF_DYN Elf64_Dyn - #define ELF_ADDR Elf64_Addr -+#define ELF_AUXV Elf64_Auxinfo - - #ifndef ELF_ST_TYPE - #define ELF_ST_TYPE ELF64_ST_TYPE -@@ -47,6 +48,7 @@ - #define ELF_SYM Elf32_Sym - #define ELF_DYN Elf32_Dyn - #define ELF_ADDR Elf32_Addr -+#define ELF_AUXV Elf32_Auxinfo - - #ifndef ELF_ST_TYPE - #define ELF_ST_TYPE ELF32_ST_TYPE ---- ./hotspot/agent/src/os/bsd/ps_core.c Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/os/bsd/ps_core.c Sun Feb 10 09:26:05 2019 -0800 -@@ -1091,6 +1091,18 @@ - if (core_handle_prstatus(ph, descdata, notep->n_descsz) != true) { - return false; - } -+ } else if (notep->n_type == NT_PROCSTAT_AUXV) { -+ // Get first segment from entry point -+ ELF_AUXV *auxv = (ELF_AUXV *)descdata; -+ while (auxv->a_type != AT_NULL) { -+ if (auxv->a_type == AT_ENTRY) { -+ // Set entry point address to address of dynamic section. -+ // We will adjust it in read_exec_segments(). -+ ph->core->dynamic_addr = auxv->a_un.a_val; -+ break; -+ } -+ auxv++; -+ } - } - p = descdata + ROUNDUP(notep->n_descsz, 4); - } -@@ -1272,7 +1284,13 @@ - - // from PT_DYNAMIC we want to read address of first link_map addr - case PT_DYNAMIC: { -- ph->core->dynamic_addr = exec_php->p_vaddr; -+ if (exec_ehdr->e_type == ET_EXEC) { -+ ph->core->dynamic_addr = exec_php->p_vaddr; -+ } else { // ET_DYN -+ // dynamic_addr has entry point of executable. -+ // Thus we should substract it. -+ ph->core->dynamic_addr += exec_php->p_vaddr - exec_ehdr->e_entry; -+ } - print_debug("address of _DYNAMIC is 0x%lx\n", ph->core->dynamic_addr); - break; - } -@@ -1472,8 +1490,9 @@ - goto err; - } - -- if (read_elf_header(ph->core->exec_fd, &exec_ehdr) != true || exec_ehdr.e_type != ET_EXEC) { -- print_debug("executable file is not a valid ELF ET_EXEC file\n"); -+ if (read_elf_header(ph->core->exec_fd, &exec_ehdr) != true || -+ ((exec_ehdr.e_type != ET_EXEC) && (exec_ehdr.e_type != ET_DYN))) { -+ print_debug("executable file is not a valid ELF file\n"); - goto err; - } - ---- ./hotspot/agent/src/os/bsd/symtab.c Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/os/bsd/symtab.c Sun Feb 10 09:26:05 2019 -0800 -@@ -211,6 +211,10 @@ - - // Reading of elf header - struct elf_section *scn_cache = NULL; -+#if defined(ppc64) -+ struct elf_section *opd_sect = NULL; -+ ELF_SHDR *opd = NULL; -+#endif - int cnt = 0; - ELF_SHDR* shbuf = NULL; - ELF_SHDR* cursct = NULL; -@@ -258,6 +262,14 @@ - cursct++; - } - -+#if defined(ppc64) -+ opd_sect = find_section_by_name(".opd", fd, &ehdr, scn_cache); -+ if (opd_sect != NULL && opd_sect->c_data != NULL && opd_sect->c_shdr != NULL) { -+ // plausibility check -+ opd = opd_sect->c_shdr; -+ } -+#endif -+ - if (!symtab_found && dynsym_found) - symsection = SHT_DYNSYM; - -@@ -322,6 +334,13 @@ - symtab->symbols[j].name = sym_name; - symtab->symbols[j].offset = syms->st_value - baseaddr; - symtab->symbols[j].size = syms->st_size; -+#if defined(ppc64) -+ if (opd != NULL && *sym_name != '.' && -+ (opd->sh_addr <= syms->st_value && syms->st_value <= opd->sh_addr + opd->sh_size)) -+ symtab->symbols[j].offset = -+ ((ELF_ADDR*)opd_sect->c_data)[(syms->st_value - opd->sh_addr) / sizeof(ELF_ADDR*)] - baseaddr; -+ else -+#endif - - key.data = sym_name; - key.size = strlen(sym_name) + 1; ---- ./hotspot/agent/src/share/classes/sun/jvm/hotspot/HotSpotAgent.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/HotSpotAgent.java Sun Feb 10 09:26:05 2019 -0800 -@@ -33,6 +33,7 @@ - import sun.jvm.hotspot.debugger.JVMDebugger; - import sun.jvm.hotspot.debugger.MachineDescription; - import sun.jvm.hotspot.debugger.MachineDescriptionAMD64; -+import sun.jvm.hotspot.debugger.MachineDescriptionPPC64; - import sun.jvm.hotspot.debugger.MachineDescriptionIA64; - import sun.jvm.hotspot.debugger.MachineDescriptionIntelX86; - import sun.jvm.hotspot.debugger.MachineDescriptionSPARC32Bit; -@@ -588,6 +589,8 @@ - machDesc = new MachineDescriptionIA64(); - } else if (cpu.equals("amd64")) { - machDesc = new MachineDescriptionAMD64(); -+ } else if (cpu.equals("ppc64")) { -+ machDesc = new MachineDescriptionPPC64(); - } else if (cpu.equals("sparc")) { - if (LinuxDebuggerLocal.getAddressSize()==8) { - machDesc = new MachineDescriptionSPARC64Bit(); ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/MachineDescriptionPPC64.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,43 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.debugger; -+ -+public class MachineDescriptionPPC64 extends MachineDescriptionTwosComplement implements MachineDescription { -+ public long getAddressSize() { -+ return 8; -+ } -+ -+ public boolean isLP64() { -+ return true; -+ } -+ -+ public boolean isBigEndian() { -+ String endian = System.getProperty("sun.cpu.endian"); -+ if (endian.equals("big")) -+ return true; -+ else -+ return false; -+ } -+} ---- ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdCDebugger.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdCDebugger.java Sun Feb 10 09:26:05 2019 -0800 -@@ -30,8 +30,10 @@ - import sun.jvm.hotspot.debugger.cdbg.*; - import sun.jvm.hotspot.debugger.x86.*; - import sun.jvm.hotspot.debugger.amd64.*; -+import sun.jvm.hotspot.debugger.ppc64.*; - import sun.jvm.hotspot.debugger.bsd.x86.*; - import sun.jvm.hotspot.debugger.bsd.amd64.*; -+import sun.jvm.hotspot.debugger.bsd.ppc64.*; - import sun.jvm.hotspot.utilities.*; - - class BsdCDebugger implements CDebugger { -@@ -97,6 +99,13 @@ - Address pc = context.getRegisterAsAddress(AMD64ThreadContext.RIP); - if (pc == null) return null; - return new BsdAMD64CFrame(dbg, rbp, pc); -+ } else if (cpu.equals("ppc64")) { -+ PPC64ThreadContext context = (PPC64ThreadContext) thread.getContext(); -+ Address sp = context.getRegisterAsAddress(PPC64ThreadContext.SP); -+ if (sp == null) return null; -+ Address pc = context.getRegisterAsAddress(PPC64ThreadContext.PC); -+ if (pc == null) return null; -+ return new BsdPPC64CFrame(dbg, sp, pc, BsdDebuggerLocal.getAddressSize()); - } else { - throw new DebuggerException(cpu + " is not yet supported"); - } ---- ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThreadContextFactory.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThreadContextFactory.java Sun Feb 10 09:26:05 2019 -0800 -@@ -27,6 +27,7 @@ - import sun.jvm.hotspot.debugger.*; - import sun.jvm.hotspot.debugger.bsd.amd64.*; - import sun.jvm.hotspot.debugger.bsd.x86.*; -+import sun.jvm.hotspot.debugger.bsd.ppc64.*; - - class BsdThreadContextFactory { - static ThreadContext createThreadContext(BsdDebugger dbg) { -@@ -35,6 +36,8 @@ - return new BsdX86ThreadContext(dbg); - } else if (cpu.equals("amd64") || cpu.equals("x86_64")) { - return new BsdAMD64ThreadContext(dbg); -+ } else if (cpu.equals("ppc64")) { -+ return new BsdPPC64ThreadContext(dbg); - } else { - throw new RuntimeException("cpu " + cpu + " is not yet supported"); - } ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/ppc64/BsdPPC64CFrame.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,79 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.debugger.bsd.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.ppc64.*; -+import sun.jvm.hotspot.debugger.bsd.*; -+import sun.jvm.hotspot.debugger.cdbg.*; -+import sun.jvm.hotspot.debugger.cdbg.basic.*; -+ -+final public class BsdPPC64CFrame extends BasicCFrame { -+ // package/class internals only -+ -+ public BsdPPC64CFrame(BsdDebugger dbg, Address sp, Address pc, int address_size) { -+ super(dbg.getCDebugger()); -+ this.sp = sp; -+ this.pc = pc; -+ this.dbg = dbg; -+ this.address_size=address_size; -+ } -+ -+ // override base class impl to avoid ELF parsing -+ public ClosestSymbol closestSymbolToPC() { -+ // try native lookup in debugger. -+ return dbg.lookup(dbg.getAddressValue(pc())); -+ } -+ -+ public Address pc() { -+ return pc; -+ } -+ -+ public Address localVariableBase() { -+ return sp; -+ } -+ -+ public CFrame sender(ThreadProxy thread) { -+ if (sp == null) { -+ return null; -+ } -+ -+ Address nextSP = sp.getAddressAt(0); -+ if (nextSP == null) { -+ return null; -+ } -+ Address nextPC = sp.getAddressAt(2 * address_size); -+ if (nextPC == null) { -+ return null; -+ } -+ return new BsdPPC64CFrame(dbg, nextSP, nextPC, address_size); -+ } -+ -+ public static int PPC64_STACK_BIAS = 0; -+ private static int address_size; -+ private Address pc; -+ private Address sp; -+ private BsdDebugger dbg; -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/ppc64/BsdPPC64ThreadContext.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,46 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.debugger.bsd.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.ppc64.*; -+import sun.jvm.hotspot.debugger.bsd.*; -+ -+public class BsdPPC64ThreadContext extends PPC64ThreadContext { -+ private BsdDebugger debugger; -+ -+ public BsdPPC64ThreadContext(BsdDebugger debugger) { -+ super(); -+ this.debugger = debugger; -+ } -+ -+ public void setRegisterAsAddress(int index, Address value) { -+ setRegister(index, debugger.getAddressValue(value)); -+ } -+ -+ public Address getRegisterAsAddress(int index) { -+ return debugger.newAddress(getRegister(index)); -+ } -+} ---- ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/x86/BsdX86CFrame.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/x86/BsdX86CFrame.java Sun Feb 10 09:26:05 2019 -0800 -@@ -55,7 +55,15 @@ - - public CFrame sender(ThreadProxy thread) { - X86ThreadContext context = (X86ThreadContext) thread.getContext(); -- Address esp = context.getRegisterAsAddress(X86ThreadContext.ESP); -+ /* -+ * Native code fills in the stack pointer register value using index -+ * X86ThreadContext.SP. -+ * See file BsdDebuggerLocal.c macro REG_INDEX(reg). -+ * -+ * Be sure to use SP, or UESP which is aliased to SP in Java code, -+ * for the frame pointer validity check. -+ */ -+ Address esp = context.getRegisterAsAddress(X86ThreadContext.SP); - - if ( (ebp == null) || ebp.lessThan(esp) ) { - return null; ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/ppc64/PPC64ThreadContext.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,123 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.debugger.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.cdbg.*; -+ -+/** Specifies the thread context on ppc64 platforms; only a sub-portion -+ * of the context is guaranteed to be present on all operating -+ * systems. */ -+ -+public abstract class PPC64ThreadContext implements ThreadContext { -+ -+ // NOTE: The indices for the various registers must be maintained as -+ // listed across various operating systems. However, only a small -+ // subset of the registers' values are guaranteed to be present (and -+ // must be present for the SA's stack walking to work). -+ -+ public static final int R31 = 0; -+ public static final int R30 = 1; -+ public static final int R29 = 2; -+ public static final int R28 = 3; -+ public static final int R27 = 4; -+ public static final int R26 = 5; -+ public static final int R25 = 6; -+ public static final int R24 = 7; -+ public static final int R23 = 8; -+ public static final int R22 = 9; -+ public static final int R21 = 10; -+ public static final int R20 = 11; -+ public static final int R19 = 12; -+ public static final int R18 = 13; -+ public static final int R17 = 14; -+ public static final int R16 = 15; -+ public static final int R15 = 16; -+ public static final int R14 = 17; -+ public static final int R13 = 18; -+ public static final int R12 = 19; -+ public static final int R11 = 20; -+ public static final int R10 = 21; -+ public static final int R9 = 22; -+ public static final int R8 = 23; -+ public static final int R7 = 24; -+ public static final int R6 = 25; -+ public static final int R5 = 26; -+ public static final int R4 = 27; -+ public static final int R3 = 28; -+ public static final int R2 = 29; -+ public static final int R1 = 30; -+ public static final int R0 = 31; -+ public static final int NIP = 32; -+ public static final int LR = 33; -+ -+ public static final int NPRGREG = 34; -+ -+ private static final String[] regNames = { -+ "r31", "r30", "r29", "r28", "r27", "r26", "r25", "r24", -+ "r23", "r22", "r21", "r20", "r19", "r18", "r17", "r16", -+ "r15", "r14", "r13", "r12", "r11", "r10", "r9", "r8", -+ "r7", "r6", "r5", "r4", "r3", "r2", "r1", "r0", -+ "nip", "link" -+ }; -+ -+ public static final int PC = NIP; -+ public static final int SP = R1; -+ -+ private long[] data; -+ -+ public PPC64ThreadContext() { -+ data = new long[NPRGREG]; -+ } -+ -+ public int getNumRegisters() { -+ return NPRGREG; -+ } -+ -+ public String getRegisterName(int index) { -+ return regNames[index]; -+ } -+ -+ public void setRegister(int index, long value) { -+ data[index] = value; -+ } -+ -+ public long getRegister(int index) { -+ return data[index]; -+ } -+ -+ public CFrame getTopFrame(Debugger dbg) { -+ return null; -+ } -+ -+ /** This can't be implemented in this class since we would have to -+ * tie the implementation to, for example, the debugging system */ -+ public abstract void setRegisterAsAddress(int index, Address value); -+ -+ /** This can't be implemented in this class since we would have to -+ * tie the implementation to, for example, the debugging system */ -+ public abstract Address getRegisterAsAddress(int index); -+ -+} ---- ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/proc/ProcDebuggerLocal.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/proc/ProcDebuggerLocal.java Sun Feb 10 09:26:05 2019 -0800 -@@ -32,7 +32,9 @@ - import sun.jvm.hotspot.debugger.cdbg.*; - import sun.jvm.hotspot.debugger.proc.amd64.*; - import sun.jvm.hotspot.debugger.proc.sparc.*; -+import sun.jvm.hotspot.debugger.proc.ppc64.*; - import sun.jvm.hotspot.debugger.proc.x86.*; -+import sun.jvm.hotspot.debugger.ppc64.*; - import sun.jvm.hotspot.debugger.amd64.*; - import sun.jvm.hotspot.debugger.sparc.*; - import sun.jvm.hotspot.debugger.x86.*; -@@ -86,6 +88,10 @@ - threadFactory = new ProcAMD64ThreadFactory(this); - pcRegIndex = AMD64ThreadContext.RIP; - fpRegIndex = AMD64ThreadContext.RBP; -+ } else if (cpu.equals("ppc64")) { -+ threadFactory = new ProcPPC64ThreadFactory(this); -+ pcRegIndex = PPC64ThreadContext.PC; -+ fpRegIndex = PPC64ThreadContext.SP; - } else { - try { - Class tfc = Class.forName("sun.jvm.hotspot.debugger.proc." + ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/proc/ppc64/ProcPPC64Thread.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,86 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.debugger.proc.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.ppc64.*; -+import sun.jvm.hotspot.debugger.proc.*; -+import sun.jvm.hotspot.utilities.*; -+ -+public class ProcPPC64Thread implements ThreadProxy { -+ private ProcDebugger debugger; -+ private int id; -+ -+ public ProcPPC64Thread(ProcDebugger debugger, Address addr) { -+ this.debugger = debugger; -+ -+ // FIXME: the size here should be configurable. However, making it -+ // so would produce a dependency on the "types" package from the -+ // debugger package, which is not desired. -+ this.id = (int) addr.getCIntegerAt(0, 4, true); -+ } -+ -+ public ProcPPC64Thread(ProcDebugger debugger, long id) { -+ this.debugger = debugger; -+ this.id = (int) id; -+ } -+ -+ public ThreadContext getContext() throws IllegalThreadStateException { -+ ProcPPC64ThreadContext context = new ProcPPC64ThreadContext(debugger); -+ long[] regs = debugger.getThreadIntegerRegisterSet(id); -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(regs.length <= PPC64ThreadContext.NPRGREG, "size of register set is greater than " + PPC64ThreadContext.NPRGREG); -+ } -+ for (int i = 0; i < regs.length; i++) { -+ context.setRegister(i, regs[i]); -+ } -+ return context; -+ } -+ -+ public boolean canSetContext() throws DebuggerException { -+ return false; -+ } -+ -+ public void setContext(ThreadContext context) -+ throws IllegalThreadStateException, DebuggerException { -+ throw new DebuggerException("Unimplemented"); -+ } -+ -+ public String toString() { -+ return "t@" + id; -+ } -+ -+ public boolean equals(Object obj) { -+ if ((obj == null) || !(obj instanceof ProcPPC64Thread)) { -+ return false; -+ } -+ -+ return (((ProcPPC64Thread) obj).id == id); -+ } -+ -+ public int hashCode() { -+ return id; -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/proc/ppc64/ProcPPC64ThreadContext.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,46 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.debugger.proc.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.ppc64.*; -+import sun.jvm.hotspot.debugger.proc.*; -+ -+public class ProcPPC64ThreadContext extends PPC64ThreadContext { -+ private ProcDebugger debugger; -+ -+ public ProcPPC64ThreadContext(ProcDebugger debugger) { -+ super(); -+ this.debugger = debugger; -+ } -+ -+ public void setRegisterAsAddress(int index, Address value) { -+ setRegister(index, debugger.getAddressValue(value)); -+ } -+ -+ public Address getRegisterAsAddress(int index) { -+ return debugger.newAddress(getRegister(index)); -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/proc/ppc64/ProcPPC64ThreadFactory.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,44 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.debugger.proc.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.proc.*; -+ -+public class ProcPPC64ThreadFactory implements ProcThreadFactory { -+ private ProcDebugger debugger; -+ -+ public ProcPPC64ThreadFactory(ProcDebugger debugger) { -+ this.debugger = debugger; -+ } -+ -+ public ThreadProxy createThreadWrapper(Address threadIdentifierAddr) { -+ return new ProcPPC64Thread(debugger, threadIdentifierAddr); -+ } -+ -+ public ThreadProxy createThreadWrapper(long id) { -+ return new ProcPPC64Thread(debugger, id); -+ } -+} ---- ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/remote/RemoteDebuggerClient.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/remote/RemoteDebuggerClient.java Sun Feb 10 09:26:05 2019 -0800 -@@ -33,6 +33,7 @@ - import sun.jvm.hotspot.debugger.remote.sparc.*; - import sun.jvm.hotspot.debugger.remote.x86.*; - import sun.jvm.hotspot.debugger.remote.amd64.*; -+import sun.jvm.hotspot.debugger.remote.ppc64.*; - - /** An implementation of Debugger which wraps a - RemoteDebugger, providing remote debugging via RMI. -@@ -70,6 +71,11 @@ - cachePageSize = 4096; - cacheNumPages = parseCacheNumPagesProperty(cacheSize / cachePageSize); - unalignedAccessesOkay = true; -+ } else if (cpu.equals("ppc64")) { -+ threadFactory = new RemotePPC64ThreadFactory(this); -+ cachePageSize = 4096; -+ cacheNumPages = parseCacheNumPagesProperty(cacheSize / cachePageSize); -+ unalignedAccessesOkay = true; - } else { - try { - Class tf = Class.forName("sun.jvm.hotspot.debugger.remote." + ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/remote/ppc64/RemotePPC64Thread.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,53 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.debugger.remote.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.ppc64.*; -+import sun.jvm.hotspot.debugger.remote.*; -+import sun.jvm.hotspot.utilities.*; -+ -+public class RemotePPC64Thread extends RemoteThread { -+ public RemotePPC64Thread(RemoteDebuggerClient debugger, Address addr) { -+ super(debugger, addr); -+ } -+ -+ public RemotePPC64Thread(RemoteDebuggerClient debugger, long id) { -+ super(debugger, id); -+ } -+ -+ public ThreadContext getContext() throws IllegalThreadStateException { -+ RemotePPC64ThreadContext context = new RemotePPC64ThreadContext(debugger); -+ long[] regs = (addr != null)? debugger.getThreadIntegerRegisterSet(addr) : -+ debugger.getThreadIntegerRegisterSet(id); -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(regs.length == PPC64ThreadContext.NPRGREG, "size of register set must match"); -+ } -+ for (int i = 0; i < regs.length; i++) { -+ context.setRegister(i, regs[i]); -+ } -+ return context; -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/remote/ppc64/RemotePPC64ThreadContext.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,50 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.debugger.remote.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.ppc64.*; -+import sun.jvm.hotspot.debugger.remote.*; -+ -+public class RemotePPC64ThreadContext extends PPC64ThreadContext { -+ private RemoteDebuggerClient debugger; -+ -+ public RemotePPC64ThreadContext(RemoteDebuggerClient debugger) { -+ super(); -+ this.debugger = debugger; -+ } -+ -+ /** This can't be implemented in this class since we would have to -+ tie the implementation to, for example, the debugging system */ -+ public void setRegisterAsAddress(int index, Address value) { -+ setRegister(index, debugger.getAddressValue(value)); -+ } -+ -+ /** This can't be implemented in this class since we would have to -+ tie the implementation to, for example, the debugging system */ -+ public Address getRegisterAsAddress(int index) { -+ return debugger.newAddress(getRegister(index)); -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/remote/ppc64/RemotePPC64ThreadFactory.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,44 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.debugger.remote.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.remote.*; -+ -+public class RemotePPC64ThreadFactory implements RemoteThreadFactory { -+ private RemoteDebuggerClient debugger; -+ -+ public RemotePPC64ThreadFactory(RemoteDebuggerClient debugger) { -+ this.debugger = debugger; -+ } -+ -+ public ThreadProxy createThreadWrapper(Address threadIdentifierAddr) { -+ return new RemotePPC64Thread(debugger, threadIdentifierAddr); -+ } -+ -+ public ThreadProxy createThreadWrapper(long id) { -+ return new RemotePPC64Thread(debugger, id); -+ } -+} ---- ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/Threads.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/Threads.java Sun Feb 10 09:26:05 2019 -0800 -@@ -37,6 +37,7 @@ - import sun.jvm.hotspot.runtime.linux_sparc.LinuxSPARCJavaThreadPDAccess; - import sun.jvm.hotspot.runtime.bsd_x86.BsdX86JavaThreadPDAccess; - import sun.jvm.hotspot.runtime.bsd_amd64.BsdAMD64JavaThreadPDAccess; -+import sun.jvm.hotspot.runtime.bsd_ppc64.BsdPPC64JavaThreadPDAccess; - import sun.jvm.hotspot.utilities.*; - - public class Threads { -@@ -103,6 +104,8 @@ - access = new BsdX86JavaThreadPDAccess(); - } else if (cpu.equals("amd64") || cpu.equals("x86_64")) { - access = new BsdAMD64JavaThreadPDAccess(); -+ } else if (cpu.equals("ppc64")) { -+ access = new BsdPPC64JavaThreadPDAccess(); - } - } else if (os.equals("darwin")) { - if (cpu.equals("amd64") || cpu.equals("x86_64")) { ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/bsd_ppc64/BsdPPC64JavaThreadPDAccess.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,132 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.runtime.bsd_ppc64; -+ -+import java.io.*; -+import java.util.*; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.ppc64.*; -+import sun.jvm.hotspot.runtime.*; -+import sun.jvm.hotspot.runtime.ppc64.*; -+import sun.jvm.hotspot.types.*; -+import sun.jvm.hotspot.utilities.*; -+ -+public class BsdPPC64JavaThreadPDAccess implements JavaThreadPDAccess { -+ private static AddressField osThreadField; -+ -+ // Field from OSThread -+ private static CIntegerField osThreadThreadIDField; -+ -+ // This is currently unneeded but is being kept in case we change -+ // the currentFrameGuess algorithm -+ private static final long GUESS_SCAN_RANGE = 128 * 1024; -+ -+ static { -+ VM.registerVMInitializedObserver(new Observer() { -+ public void update(Observable o, Object data) { -+ initialize(VM.getVM().getTypeDataBase()); -+ } -+ }); -+ } -+ -+ private static synchronized void initialize(TypeDataBase db) { -+ Type type = db.lookupType("JavaThread"); -+ osThreadField = type.getAddressField("_osthread"); -+ -+ Type osThreadType = db.lookupType("OSThread"); -+ osThreadThreadIDField = osThreadType.getCIntegerField("_thread_id"); -+ } -+ -+ public Address getLastJavaFP(Address addr) { -+ return null; -+ } -+ -+ public Address getLastJavaPC(Address addr) { -+ return null; -+ } -+ -+ public Address getBaseOfStackPointer(Address addr) { -+ return null; -+ } -+ -+ public Frame getLastFramePD(JavaThread thread, Address addr) { -+ Address fp = thread.getLastJavaFP(); -+ if (fp == null) { -+ return null; // no information -+ } -+ return new PPC64Frame(thread.getLastJavaSP(), fp); -+ } -+ -+ public RegisterMap newRegisterMap(JavaThread thread, boolean updateMap) { -+ return new PPC64RegisterMap(thread, updateMap); -+ } -+ -+ public Frame getCurrentFrameGuess(JavaThread thread, Address addr) { -+ ThreadProxy t = getThreadProxy(addr); -+ PPC64ThreadContext context = (PPC64ThreadContext) t.getContext(); -+ PPC64CurrentFrameGuess guesser = new PPC64CurrentFrameGuess(context, thread); -+ if (!guesser.run(GUESS_SCAN_RANGE)) { -+ return null; -+ } -+ if (guesser.getPC() == null) { -+ return new PPC64Frame(guesser.getSP(), guesser.getFP()); -+ } else { -+ return new PPC64Frame(guesser.getSP(), guesser.getFP(), guesser.getPC()); -+ } -+ } -+ -+ public void printThreadIDOn(Address addr, PrintStream tty) { -+ tty.print(getThreadProxy(addr)); -+ } -+ -+ public void printInfoOn(Address threadAddr, PrintStream tty) { -+ tty.print("Thread id: "); -+ printThreadIDOn(threadAddr, tty); -+// tty.println("\nPostJavaState: " + getPostJavaState(threadAddr)); -+ } -+ -+ public Address getLastSP(Address addr) { -+ ThreadProxy t = getThreadProxy(addr); -+ PPC64ThreadContext context = (PPC64ThreadContext) t.getContext(); -+ return context.getRegisterAsAddress(PPC64ThreadContext.SP); -+ } -+ -+ public Address getLastFP(Address addr) { -+ return getLastSP(addr).getAddressAt(0); -+ } -+ -+ public ThreadProxy getThreadProxy(Address addr) { -+ // Addr is the address of the JavaThread. -+ // Fetch the OSThread (for now and for simplicity, not making a -+ // separate "OSThread" class in this package) -+ Address osThreadAddr = osThreadField.getValue(addr); -+ // Get the address of the _thread_id from the OSThread -+ Address threadIdAddr = osThreadAddr.addOffsetTo(osThreadThreadIDField.getOffset()); -+ -+ JVMDebugger debugger = VM.getVM().getDebugger(); -+ return debugger.getThreadForIdentifierAddress(threadIdAddr); -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/ppc64/PPC64CurrentFrameGuess.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,176 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.runtime.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.debugger.ppc64.*; -+import sun.jvm.hotspot.code.*; -+import sun.jvm.hotspot.interpreter.*; -+import sun.jvm.hotspot.runtime.*; -+import sun.jvm.hotspot.runtime.ppc64.*; -+ -+/**

Should be able to be used on all ppc64 platforms we support -+ (Linux/ppc64) to implement JavaThread's "currentFrameGuess()" -+ functionality. Input is a PPC64ThreadContext; output is SP, FP, -+ and PC for an PPC64Frame. Instantiation of the PPC64Frame is left -+ to the caller, since we may need to subclass PPC64Frame to support -+ signal handler frames on Unix platforms.

-+ */ -+ -+public class PPC64CurrentFrameGuess { -+ private PPC64ThreadContext context; -+ private JavaThread thread; -+ private Address spFound; -+ private Address fpFound; -+ private Address pcFound; -+ -+ private static final boolean DEBUG = System.getProperty("sun.jvm.hotspot.runtime.ppc64.PPC64Frame.DEBUG") -+ != null; -+ -+ public PPC64CurrentFrameGuess(PPC64ThreadContext context, -+ JavaThread thread) { -+ this.context = context; -+ this.thread = thread; -+ } -+ -+ /** Returns false if not able to find a frame within a reasonable range. */ -+ public boolean run(long regionInBytesToSearch) { -+ Address sp = context.getRegisterAsAddress(PPC64ThreadContext.SP); -+ Address pc = context.getRegisterAsAddress(PPC64ThreadContext.PC); -+ if (sp == null) { -+ // Bail out if no last java frame either -+ if (thread.getLastJavaSP() != null) { -+ Address javaSP = thread.getLastJavaSP(); -+ Address javaFP = javaSP.getAddressAt(0); -+ setValues(javaSP, javaFP, null); -+ return true; -+ } -+ return false; -+ } -+ /* There is no frame pointer per se for the ppc64 architecture. To mirror -+ * the behavior of the VM frame manager, we set fp to be the caller's (i.e., "sender's") -+ * stack pointer, which is the back chain value contained in our sp. -+ */ -+ Address fp = sp.getAddressAt(0); -+ setValues(null, null, null); // Assume we're not going to find anything -+ -+ VM vm = VM.getVM(); -+ if (vm.isJavaPCDbg(pc)) { -+ if (vm.isClientCompiler()) { -+ // Topmost frame is a Java frame. -+ if (DEBUG) { -+ System.out.println("CurrentFrameGuess: choosing compiler frame: sp = " + -+ sp + ", fp = " + fp + ", pc = " + pc); -+ } -+ setValues(sp, fp, pc); -+ return true; -+ } else { -+ if (vm.getInterpreter().contains(pc)) { -+ if (DEBUG) { -+ System.out.println("CurrentFrameGuess: choosing interpreter frame: sp = " + -+ sp + ", fp = " + fp + ", pc = " + pc); -+ } -+ setValues(sp, fp, pc); -+ return true; -+ } -+ -+ // This algorithm takes the current PC as a given and tries to -+ // find the correct corresponding SP by walking up the stack -+ // and repeatedly performing stackwalks (very inefficient). -+ for (long offset = 0; -+ offset < regionInBytesToSearch; -+ offset += vm.getAddressSize()) { -+ try { -+ Address curSP = sp.addOffsetTo(offset); -+ fp = curSP.getAddressAt(0); -+ Frame frame = new PPC64Frame(curSP, fp, pc); -+ RegisterMap map = thread.newRegisterMap(false); -+ while (frame != null) { -+ if (frame.isEntryFrame() && frame.entryFrameIsFirst()) { -+ // We were able to traverse all the way to the -+ // bottommost Java frame. -+ // This sp looks good. Keep it. -+ if (DEBUG) { -+ System.out.println("CurrentFrameGuess: Choosing sp = " + curSP + ", pc = " + pc); -+ } -+ setValues(curSP, fp, pc); -+ return true; -+ } -+ frame = frame.sender(map); -+ } -+ } catch (Exception e) { -+ if (DEBUG) { -+ System.out.println("CurrentFrameGuess: Exception " + e + " at offset " + offset); -+ } -+ // Bad SP. Try another. -+ } -+ } -+ -+ // Were not able to find a plausible SP to go with this PC. -+ // Bail out. -+ return false; -+ -+ } -+ } else { -+ // If the current program counter was not known to us as a Java -+ // PC, we currently assume that we are in the run-time system -+ // and attempt to look to thread-local storage for saved java SP. -+ // Note that if this is null (because we were, in fact, -+ // in Java code, i.e., vtable stubs or similar, and the SA -+ // didn't have enough insight into the target VM to understand -+ // that) then we are going to lose the entire stack trace for -+ // the thread, which is sub-optimal. FIXME. -+ -+ if (thread.getLastJavaSP() == null) { -+ if (DEBUG) -+ System.out.println("CurrentFrameGuess: last java sp is null"); -+ return false; // No known Java frames on stack -+ } -+ -+ Address javaSP = thread.getLastJavaSP(); -+ Address javaFP = javaSP.getAddressAt(0); -+ Address javaPC = thread.getLastJavaPC(); -+ if (DEBUG) { -+ System.out.println("CurrentFrameGuess: choosing last Java frame: sp = " + -+ javaSP + ", fp = " + javaFP + ", pc = " + javaPC); -+ } -+ setValues(javaSP, javaFP, javaPC); -+ return true; -+ } -+ } -+ -+ public Address getSP() { return spFound; } -+ public Address getFP() { return fpFound; } -+ /** May be null if getting values from thread-local storage; take -+ care to call the correct PPC64Frame constructor to recover this if -+ necessary */ -+ public Address getPC() { return pcFound; } -+ -+ private void setValues(Address sp, Address fp, Address pc) { -+ spFound = sp; -+ fpFound = fp; -+ pcFound = pc; -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/ppc64/PPC64Frame.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,508 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.runtime.ppc64; -+ -+import java.util.*; -+import sun.jvm.hotspot.code.*; -+import sun.jvm.hotspot.compiler.*; -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.oops.*; -+import sun.jvm.hotspot.runtime.*; -+import sun.jvm.hotspot.types.*; -+import sun.jvm.hotspot.utilities.*; -+ -+/** Specialization of and implementation of abstract methods of the -+ Frame class for the ppc64 family of CPUs. */ -+ -+public class PPC64Frame extends Frame { -+ private static final boolean DEBUG; -+ static { -+ DEBUG = System.getProperty("sun.jvm.hotspot.runtime.ppc64.PPC64Frame.DEBUG") != null; -+ } -+ -+ // All frames -+ private static final int SENDER_SP_OFFSET = 0; -+ -+ // Interpreter frames -+ private static final int INTERPRETER_FRAME_MIRROR_OFFSET = -3; // for native calls only -+ private static final int INTERPRETER_FRAME_SENDER_SP_OFFSET = -4; -+ private static final int INTERPRETER_FRAME_LAST_SP_OFFSET = INTERPRETER_FRAME_SENDER_SP_OFFSET - 1; -+ private static final int INTERPRETER_FRAME_MDX_OFFSET = INTERPRETER_FRAME_LAST_SP_OFFSET -1; -+ private static final int INTERPRETER_FRAME_ESP_OFFSET = INTERPRETER_FRAME_MDX_OFFSET - 1; -+ private static final int INTERPRETER_FRAME_BCX_OFFSET = INTERPRETER_FRAME_ESP_OFFSET - 1; -+ private static final int INTERPRETER_FRAME_CACHE_OFFSET =INTERPRETER_FRAME_BCX_OFFSET - 1; -+ private static final int INTERPRETER_FRAME_MONITORS_OFFSET = INTERPRETER_FRAME_CACHE_OFFSET - 1; -+ private static final int INTERPRETER_FRAME_LOCALS_OFFSET = INTERPRETER_FRAME_MONITORS_OFFSET - 1; -+ private static final int INTERPRETER_FRAME_METHOD_OFFSET = INTERPRETER_FRAME_LOCALS_OFFSET - 1; -+ private static final int INTERPRETER_FRAME_INITIAL_SP_OFFSET = INTERPRETER_FRAME_BCX_OFFSET - 1; // FIXME: probably wrong, but unused anyway -+ private static final int INTERPRETER_FRAME_MONITOR_BLOCK_TOP_OFFSET = INTERPRETER_FRAME_INITIAL_SP_OFFSET; -+ private static final int INTERPRETER_FRAME_MONITOR_BLOCK_BOTTOM_OFFSET = INTERPRETER_FRAME_INITIAL_SP_OFFSET; -+ -+ // Entry frames -+ private static int ENTRY_FRAME_CALL_WRAPPER_OFFSET; -+ -+ // Native frames -+ private static int NATIVE_FRAME_INITIAL_PARAM_OFFSET; -+ -+ -+ static { -+ VM.registerVMInitializedObserver(new Observer() { -+ public void update(Observable o, Object data) { -+ initialize(VM.getVM().getTypeDataBase()); -+ } -+ }); -+ } -+ -+ private static synchronized void initialize(TypeDataBase db) { -+ int abi_minframe_size = db.lookupIntConstant("frame::abi_minframe_size").intValue(); -+ int entry_frame_locals_size = db.lookupIntConstant("frame::entry_frame_locals_size").intValue(); -+ int wordLength = (int)VM.getVM().getAddressSize(); -+ NATIVE_FRAME_INITIAL_PARAM_OFFSET = -abi_minframe_size/wordLength; -+ ENTRY_FRAME_CALL_WRAPPER_OFFSET = -entry_frame_locals_size/wordLength; -+ } -+ -+ -+ // an additional field beyond sp and pc: -+ Address raw_fp; // frame pointer -+ private Address raw_unextendedSP; -+ -+ private PPC64Frame() { -+ } -+ -+ private void adjustForDeopt() { -+ if ( pc != null) { -+ // Look for a deopt pc and if it is deopted convert to original pc -+ CodeBlob cb = VM.getVM().getCodeCache().findBlob(pc); -+ if (cb != null && cb.isJavaMethod()) { -+ NMethod nm = (NMethod) cb; -+ if (pc.equals(nm.deoptHandlerBegin())) { -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(this.getUnextendedSP() != null, "null SP in Java frame"); -+ } -+ // adjust pc if frame is deoptimized. -+ pc = this.getUnextendedSP().getAddressAt(nm.origPCOffset()); -+ deoptimized = true; -+ } -+ } -+ } -+ } -+ -+ public PPC64Frame(Address raw_sp, Address raw_fp, Address pc) { -+ this.raw_sp = raw_sp; -+ this.raw_unextendedSP = raw_sp; -+ if (raw_fp == null) -+ this.raw_fp = raw_sp.getAddressAt(0); -+ else -+ this.raw_fp = raw_fp; -+ if (pc == null) -+ this.pc = raw_sp.getAddressAt(2 * VM.getVM().getAddressSize()); -+ else -+ this.pc = pc; -+ adjustUnextendedSP(); -+ -+ // Frame must be fully constructed before this call -+ adjustForDeopt(); -+ -+ if (DEBUG) { -+ System.out.println("PPC64Frame(sp, fp, pc): " + this); -+ dumpStack(); -+ } -+ } -+ -+ public PPC64Frame(Address raw_sp, Address raw_fp) { -+ this.raw_sp = raw_sp; -+ this.raw_unextendedSP = raw_sp; -+ if (raw_fp == null) -+ this.raw_fp = raw_sp.getAddressAt(0); -+ else -+ this.raw_fp = raw_fp; -+ this.pc = raw_sp.getAddressAt(2 * VM.getVM().getAddressSize()); -+ adjustUnextendedSP(); -+ -+ // Frame must be fully constructed before this call -+ adjustForDeopt(); -+ -+ if (DEBUG) { -+ System.out.println("PPC64Frame(sp, fp): " + this); -+ dumpStack(); -+ } -+ } -+ -+ public PPC64Frame(Address raw_sp, Address raw_unextendedSp, Address raw_fp, Address pc) { -+ this.raw_sp = raw_sp; -+ this.raw_unextendedSP = raw_unextendedSp; -+ if (raw_fp == null) -+ this.raw_fp = raw_sp.getAddressAt(0); -+ else -+ this.raw_fp = raw_fp; -+ if (pc == null) -+ this.pc = raw_sp.getAddressAt(2 * VM.getVM().getAddressSize()); -+ else -+ this.pc = pc; -+ adjustUnextendedSP(); -+ -+ // Frame must be fully constructed before this call -+ adjustForDeopt(); -+ -+ if (DEBUG) { -+ System.out.println("PPC64Frame(sp, unextendedSP, fp, pc): " + this); -+ dumpStack(); -+ } -+ -+ } -+ -+ public Object clone() { -+ PPC64Frame frame = new PPC64Frame(); -+ frame.raw_sp = raw_sp; -+ frame.raw_unextendedSP = raw_unextendedSP; -+ frame.raw_fp = raw_fp; -+ frame.pc = pc; -+ frame.deoptimized = deoptimized; -+ return frame; -+ } -+ -+ public boolean equals(Object arg) { -+ if (arg == null) { -+ return false; -+ } -+ -+ if (!(arg instanceof PPC64Frame)) { -+ return false; -+ } -+ -+ PPC64Frame other = (PPC64Frame) arg; -+ -+ return (AddressOps.equal(getSP(), other.getSP()) && -+ AddressOps.equal(getUnextendedSP(), other.getUnextendedSP()) && -+ AddressOps.equal(getFP(), other.getFP()) && -+ AddressOps.equal(getPC(), other.getPC())); -+ } -+ -+ public int hashCode() { -+ if (raw_sp == null) { -+ return 0; -+ } -+ -+ return raw_sp.hashCode(); -+ } -+ -+ public String toString() { -+ return "sp: " + (getSP() == null? "null" : getSP().toString()) + -+ ", unextendedSP: " + (getUnextendedSP() == null? "null" : getUnextendedSP().toString()) + -+ ", fp: " + (getFP() == null? "null" : getFP().toString()) + -+ ", pc: " + (pc == null? "null" : pc.toString()); -+ } -+ -+ // accessors for the instance variables -+ public Address getFP() { return raw_fp; } -+ public Address getSP() { return raw_sp; } -+ public Address getID() { return raw_sp; } -+ -+ // FIXME: not implemented yet (should be done for Solaris/PPC64) -+ public boolean isSignalHandlerFrameDbg() { return false; } -+ public int getSignalNumberDbg() { return 0; } -+ public String getSignalNameDbg() { return null; } -+ -+ public boolean isInterpretedFrameValid() { -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(isInterpretedFrame(), "Not an interpreted frame"); -+ } -+ -+ // These are reasonable sanity checks -+ if (getFP() == null || getFP().andWithMask(0x3) != null) { -+ return false; -+ } -+ -+ if (getSP() == null || getSP().andWithMask(0x3) != null) { -+ return false; -+ } -+ -+ // These are hacks to keep us out of trouble. -+ // The problem with these is that they mask other problems -+ if (getFP().lessThanOrEqual(getSP())) { -+ // this attempts to deal with unsigned comparison above -+ return false; -+ } -+ -+ if (getFP().minus(getSP()) > 4096 * VM.getVM().getAddressSize()) { -+ // stack frames shouldn't be large. -+ return false; -+ } -+ -+ return true; -+ } -+ -+ // FIXME: not applicable in current system -+ // void patch_pc(Thread* thread, address pc); -+ -+ public Frame sender(RegisterMap regMap, CodeBlob cb) { -+ PPC64RegisterMap map = (PPC64RegisterMap) regMap; -+ -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(map != null, "map must be set"); -+ } -+ -+ // Default is we done have to follow them. The sender_for_xxx will -+ // update it accordingly -+ map.setIncludeArgumentOops(false); -+ -+ if (isEntryFrame()) return senderForEntryFrame(map); -+ if (isInterpretedFrame()) return senderForInterpreterFrame(map); -+ -+ if(cb == null) { -+ cb = VM.getVM().getCodeCache().findBlob(getPC()); -+ } else { -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(cb.equals(VM.getVM().getCodeCache().findBlob(getPC())), "Must be the same"); -+ } -+ } -+ -+ if (cb != null) { -+ return senderForCompiledFrame(map, cb); -+ } -+ -+ // Must be native-compiled frame, i.e. the marshaling code for native -+ // methods that exists in the core system. -+ return new PPC64Frame(getSenderSP(), getLink(), getSenderPC()); -+ } -+ -+ private Frame senderForEntryFrame(PPC64RegisterMap map) { -+ if (DEBUG) { -+ System.out.println("senderForEntryFrame"); -+ } -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(map != null, "map must be set"); -+ } -+ // Java frame called from C; skip all C frames and return top C -+ // frame of that chunk as the sender -+ PPC64JavaCallWrapper jcw = (PPC64JavaCallWrapper) getEntryFrameCallWrapper(); -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(!entryFrameIsFirst(), "next Java fp must be non zero"); -+ Assert.that(jcw.getLastJavaSP().greaterThan(getSP()), "must be above this frame on stack"); -+ } -+ PPC64Frame fr; -+ if (jcw.getLastJavaPC() != null) { -+ fr = new PPC64Frame(jcw.getLastJavaSP(), jcw.getLastJavaFP(), jcw.getLastJavaPC()); -+ } else { -+ fr = new PPC64Frame(jcw.getLastJavaSP(), jcw.getLastJavaFP()); -+ } -+ map.clear(); -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(map.getIncludeArgumentOops(), "should be set by clear"); -+ } -+ return fr; -+ } -+ -+ //------------------------------------------------------------------------------ -+ // frame::adjust_unextended_sp -+ private void adjustUnextendedSP() { -+ raw_unextendedSP = getFP(); -+ } -+ private Frame senderForInterpreterFrame(PPC64RegisterMap map) { -+ if (DEBUG) { -+ System.out.println("senderForInterpreterFrame"); -+ } -+ Address unextendedSP = addressOfStackSlot(INTERPRETER_FRAME_SENDER_SP_OFFSET).getAddressAt(0); -+ Address sp = getSenderSP(); -+ -+ return new PPC64Frame(sp, unextendedSP, getLink(), getSenderPC()); -+ } -+ -+ -+ private Frame senderForCompiledFrame(PPC64RegisterMap map, CodeBlob cb) { -+ if (DEBUG) { -+ System.out.println("senderForCompiledFrame"); -+ } -+ -+ // -+ // NOTE: some of this code is (unfortunately) duplicated in PPC64CurrentFrameGuess -+ // -+ -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(map != null, "map must be set"); -+ } -+ -+ // frame owned by optimizing compiler -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(cb.getFrameSize() >= 0, "must have non-zero frame size"); -+ } -+ Address senderSP = getSenderSP(); -+ -+ Address senderPC = getSenderPC(); -+ -+ if (map.getUpdateMap()) { -+ // Tell GC to use argument oopmaps for some runtime stubs that need it. -+ // For C1, the runtime stub might not have oop maps, so set this flag -+ // outside of update_register_map. -+ map.setIncludeArgumentOops(cb.callerMustGCArguments()); -+ -+ if (cb.getOopMaps() != null) { -+ OopMapSet.updateRegisterMap(this, cb, map, true); -+ } -+ } -+ -+ return new PPC64Frame(senderSP, getLink(), senderPC); -+ } -+ -+ protected boolean hasSenderPD() { -+ // FIXME -+ return true; -+ } -+ -+ public long frameSize() { -+ return (getSenderSP().minus(getSP()) / VM.getVM().getAddressSize()); -+ } -+ -+ public Address getLink() { -+ return getSenderSP().getAddressAt(0); -+ } -+ -+ public Address getUnextendedSP() { return raw_unextendedSP; } -+ -+ // Return address: -+ public Address getSenderPC() { return getSenderSP().getAddressAt(2 * VM.getVM().getAddressSize()); } -+ -+ // return address of param, zero origin index. -+ // MPJ note: Appears to be unused. -+ public Address getNativeParamAddr(int idx) { -+ return null; -+ // return addressOfStackSlot(NATIVE_FRAME_INITIAL_PARAM_OFFSET + idx); -+ } -+ -+ public Address getSenderSP() { return getFP(); } -+ public Address addressOfInterpreterFrameLocals() { -+ return addressOfStackSlot(INTERPRETER_FRAME_LOCALS_OFFSET); -+ } -+ -+ private Address addressOfInterpreterFrameBCX() { -+ return addressOfStackSlot(INTERPRETER_FRAME_BCX_OFFSET); -+ } -+ -+ public int getInterpreterFrameBCI() { -+ // FIXME: this is not atomic with respect to GC and is unsuitable -+ // for use in a non-debugging, or reflective, system. Need to -+ // figure out how to express this. -+ Address bcp = addressOfInterpreterFrameBCX().getAddressAt(0); -+ Address methodHandle = addressOfInterpreterFrameMethod().getAddressAt(0); -+ Method method = (Method)Metadata.instantiateWrapperFor(methodHandle); -+ return bcpToBci(bcp, method); -+ } -+ -+ public Address addressOfInterpreterFrameMDX() { -+ return addressOfStackSlot(INTERPRETER_FRAME_MDX_OFFSET); -+ } -+ -+ // FIXME -+ //inline int frame::interpreter_frame_monitor_size() { -+ // return BasicObjectLock::size(); -+ //} -+ -+ // expression stack -+ // (the max_stack arguments are used by the GC; see class FrameClosure) -+ -+ public Address addressOfInterpreterFrameExpressionStack() { -+ Address monitorEnd = interpreterFrameMonitorEnd().address(); -+ return monitorEnd.addOffsetTo(-1 * VM.getVM().getAddressSize()); -+ } -+ -+ public int getInterpreterFrameExpressionStackDirection() { return -1; } -+ -+ // top of expression stack -+ public Address addressOfInterpreterFrameTOS() { -+ return getSP(); -+ } -+ -+ /** Expression stack from top down */ -+ public Address addressOfInterpreterFrameTOSAt(int slot) { -+ return addressOfInterpreterFrameTOS().addOffsetTo(slot * VM.getVM().getAddressSize()); -+ } -+ -+ public Address getInterpreterFrameSenderSP() { -+ if (Assert.ASSERTS_ENABLED) { -+ Assert.that(isInterpretedFrame(), "interpreted frame expected"); -+ } -+ return addressOfStackSlot(INTERPRETER_FRAME_SENDER_SP_OFFSET).getAddressAt(0); -+ } -+ -+ // Monitors -+ public BasicObjectLock interpreterFrameMonitorBegin() { -+ return new BasicObjectLock(addressOfStackSlot(INTERPRETER_FRAME_MONITOR_BLOCK_BOTTOM_OFFSET)); -+ } -+ -+ public BasicObjectLock interpreterFrameMonitorEnd() { -+ Address result = addressOfStackSlot(INTERPRETER_FRAME_MONITOR_BLOCK_TOP_OFFSET).getAddressAt(0); -+ if (Assert.ASSERTS_ENABLED) { -+ // make sure the pointer points inside the frame -+ Assert.that(AddressOps.gt(getFP(), result), "result must < than frame pointer"); -+ Assert.that(AddressOps.lte(getSP(), result), "result must >= than stack pointer"); -+ } -+ return new BasicObjectLock(result); -+ } -+ -+ public int interpreterFrameMonitorSize() { -+ return BasicObjectLock.size(); -+ } -+ -+ // Method -+ public Address addressOfInterpreterFrameMethod() { -+ return addressOfStackSlot(INTERPRETER_FRAME_METHOD_OFFSET); -+ } -+ -+ // Constant pool cache -+ public Address addressOfInterpreterFrameCPCache() { -+ return addressOfStackSlot(INTERPRETER_FRAME_CACHE_OFFSET); -+ } -+ -+ // Entry frames -+ public JavaCallWrapper getEntryFrameCallWrapper() { -+ return new PPC64JavaCallWrapper(addressOfStackSlot(ENTRY_FRAME_CALL_WRAPPER_OFFSET).getAddressAt(0)); -+ } -+ -+ protected Address addressOfSavedOopResult() { -+ // offset is 2 for compiler2 and 3 for compiler1 -+ return getSP().addOffsetTo((VM.getVM().isClientCompiler() ? 2 : 3) * -+ VM.getVM().getAddressSize()); -+ } -+ -+ protected Address addressOfSavedReceiver() { -+ return getSP().addOffsetTo(-4 * VM.getVM().getAddressSize()); -+ } -+ -+ private void dumpStack() { -+ if (getFP() != null) { -+ for (Address addr = getSP().addOffsetTo(-5 * VM.getVM().getAddressSize()); -+ AddressOps.lte(addr, getFP().addOffsetTo(5 * VM.getVM().getAddressSize())); -+ addr = addr.addOffsetTo(VM.getVM().getAddressSize())) { -+ System.out.println(addr + ": " + addr.getAddressAt(0)); -+ } -+ } else { -+ for (Address addr = getSP().addOffsetTo(-5 * VM.getVM().getAddressSize()); -+ AddressOps.lte(addr, getSP().addOffsetTo(20 * VM.getVM().getAddressSize())); -+ addr = addr.addOffsetTo(VM.getVM().getAddressSize())) { -+ System.out.println(addr + ": " + addr.getAddressAt(0)); -+ } -+ } -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/ppc64/PPC64JavaCallWrapper.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,43 @@ -+/* -+ * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.runtime.ppc64; -+ -+import java.util.*; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.types.*; -+import sun.jvm.hotspot.runtime.*; -+ -+public class PPC64JavaCallWrapper extends JavaCallWrapper { -+ -+ public PPC64JavaCallWrapper(Address addr) { -+ super(addr); -+ } -+ -+ public Address getLastJavaFP() { -+ return null; -+ } -+ -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/runtime/ppc64/PPC64RegisterMap.java Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,51 @@ -+/* -+ * Copyright (c) 20014, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+package sun.jvm.hotspot.runtime.ppc64; -+ -+import sun.jvm.hotspot.debugger.*; -+import sun.jvm.hotspot.runtime.*; -+ -+public class PPC64RegisterMap extends RegisterMap { -+ -+ /** This is the only public constructor */ -+ public PPC64RegisterMap(JavaThread thread, boolean updateMap) { -+ super(thread, updateMap); -+ } -+ -+ protected PPC64RegisterMap(RegisterMap map) { -+ super(map); -+ } -+ -+ public Object clone() { -+ PPC64RegisterMap retval = new PPC64RegisterMap(this); -+ return retval; -+ } -+ -+ // no PD state to clear or copy: -+ protected void clearPD() {} -+ protected void initializePD() {} -+ protected void initializeFromPD(RegisterMap map) {} -+ protected Address getLocationPD(VMReg reg) { return null; } -+} ---- ./hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/PlatformInfo.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/utilities/PlatformInfo.java Sun Feb 10 09:26:05 2019 -0800 -@@ -61,7 +61,7 @@ - return "x86"; - } else if (cpu.equals("sparc") || cpu.equals("sparcv9")) { - return "sparc"; -- } else if (cpu.equals("ia64") || cpu.equals("amd64") || cpu.equals("x86_64")) { -+ } else if (cpu.equals("ia64") || cpu.equals("amd64") || cpu.equals("x86_64") || cpu.equals("ppc64")) { - return cpu; - } else { - try { ---- ./hotspot/make/bsd/Makefile Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/Makefile Sun Feb 10 09:26:05 2019 -0800 -@@ -66,6 +66,10 @@ - FORCE_TIERED=1 - endif - endif -+# C1 is not ported on ppc64, so we cannot build a tiered VM: -+ifneq (,$(findstring $(ARCH), ppc ppc64)) -+ FORCE_TIERED=0 -+endif - - ifdef LP64 - ifeq ("$(filter $(LP64_ARCH),$(BUILDARCH))","") ---- ./hotspot/make/bsd/makefiles/adlc.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/adlc.make Sun Feb 10 09:26:05 2019 -0800 -@@ -107,6 +107,11 @@ - - all: $(EXEC) - -+ADLC_LD_FLAGS= -+ifeq ($(STATIC_CXX), true) -+ ADLC_LD_FLAGS = $(STATIC_LIBGCC) $(ADLC_STATIC_STDCXX) -+endif -+ - $(EXEC) : $(OBJECTS) - @echo Making adlc - $(QUIETLY) $(HOST.LINK_NOPROF.CXX) -o $(EXEC) $(OBJECTS) ---- ./hotspot/make/bsd/makefiles/build_vm_def.sh Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/build_vm_def.sh Sun Feb 10 09:26:05 2019 -0800 -@@ -1,12 +1,28 @@ - #!/bin/sh - - # If we're cross compiling use that path for nm --if [ "$CROSS_COMPILE_ARCH" != "" ]; then --NM=$ALT_COMPILER_PATH/nm -+if [ "$CROSS_COMPILE_ARCH" != "" ]; then -+ NM=$ALT_COMPILER_PATH/nm - else --NM=nm -+ NM=nm - fi - --$NM -Uj $* | awk ' -- { if ($3 ~ /^_ZTV/ || $3 ~ /^gHotSpotVM/) print "\t" $3 } -- ' -+case "$(uname -s)" in -+Darwin ) -+ $NM -Uj $@ | awk '{ -+ if ($3 ~ /^_ZTV/ || $3 ~ /^gHotSpotVM/) print "\t" $3 -+ }' ;; -+OpenBSD ) -+ $NM $@ | awk '{ -+ if ($2 == "U") next -+ if ($3 ~ /^_ZTV/ || $3 ~ /^gHotSpotVM/) print "\t" $3 ";" -+ if ($3 ~ /^UseSharedSpaces$/) print "\t" $3 ";" -+ if ($3 ~ /^_ZN9Arguments17SharedArchivePathE$/) print "\t" $3 ";" -+ }' | sort -u ;; -+* ) -+ $NM --defined-only $@ | awk '{ -+ if ($3 ~ /^_ZTV/ || $3 ~ /^gHotSpotVM/) print "\t" $3 ";" -+ if ($3 ~ /^UseSharedSpaces$/) print "\t" $3 ";" -+ if ($3 ~ /^_ZN9Arguments17SharedArchivePathE$/) print "\t" $3 ";" -+ }' | sort -u ;; -+esac ---- ./hotspot/make/bsd/makefiles/debug.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/debug.make Sun Feb 10 09:26:05 2019 -0800 -@@ -35,7 +35,10 @@ - # to inhibit the effect of the previous line on CFLAGS. - - # Linker mapfile --MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-debug -+ifeq ($(OS_VENDOR), Darwin) -+MAPSUFX = .macosx -+endif -+MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-debug$(MAPSUFX) - - VERSION = debug - SYSDEFS += -DASSERT ---- ./hotspot/make/bsd/makefiles/defs.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/defs.make Sun Feb 10 09:26:05 2019 -0800 -@@ -29,7 +29,15 @@ - SLASH_JAVA ?= /java - - # Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name --ARCH:=$(shell uname -m) -+# ARCH can be set explicitly in spec.gmk -+ifndef ARCH -+ ARCH := $(shell uname -m) -+ # Fold little endian PowerPC64 into big-endian (if ARCH is set in -+ # hotspot-spec.gmk, this will be done by the configure script). -+ ifeq ($(ARCH),ppc64le) -+ ARCH := ppc64 -+ endif -+endif - PATH_SEP = : - ifeq ($(LP64), 1) - ARCH_DATA_MODEL ?= 64 -@@ -117,11 +125,19 @@ - endif - - # PPC --ifeq ($(ARCH), ppc) -- ARCH_DATA_MODEL = 32 -- PLATFORM = bsd-ppc -- VM_PLATFORM = bsd_ppc -- HS_ARCH = ppc -+# Notice: after 8046471 ARCH will be 'ppc' for top-level ppc64 builds but -+# 'ppc64' for HotSpot-only ppc64 builds. Need to detect both variants here! -+ifneq (,$(findstring $(ARCH), ppc ppc64)) -+ ifeq ($(ARCH_DATA_MODEL), 64) -+ MAKE_ARGS += LP64=1 -+ PLATFORM = bsd-ppc64 -+ VM_PLATFORM = bsd_ppc64 -+ else -+ ARCH_DATA_MODEL = 32 -+ PLATFORM = bsd-ppc -+ VM_PLATFORM = bsd_ppc -+ endif -+ HS_ARCH = ppc - endif - - # On 32 bit bsd we build server and client, on 64 bit just server. -@@ -321,10 +337,22 @@ - ifeq ($(JVM_VARIANT_MINIMAL1),true) - EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/Xusage.txt - EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.$(LIBRARY_SUFFIX) -+ -+ ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) -+ ifeq ($(ZIP_DEBUGINFO_FILES),1) -+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz -+ else -+ ifeq ($(OS_VENDOR), Darwin) -+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX).dSYM -+ else -+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo -+ endif -+ endif -+ endif - endif - - # Serviceability Binaries --# No SA Support for PPC, IA64, ARM or zero -+# No SA Support for IA64, ARM or zero - ADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ - $(EXPORT_LIB_DIR)/sa-jdi.jar - -@@ -340,6 +368,23 @@ - endif - endif - -+ADD_SA_BINARIES/ppc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ -+ $(EXPORT_LIB_DIR)/sa-jdi.jar -+ADD_SA_BINARIES/universal = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ -+ $(EXPORT_LIB_DIR)/sa-jdi.jar -+ -+ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) -+ ifeq ($(ZIP_DEBUGINFO_FILES),1) -+ ADD_SA_BINARIES/ppc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz -+ else -+ ifeq ($(OS_VENDOR), Darwin) -+ ADD_SA_BINARIES/ppc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX).dSYM -+ else -+ ADD_SA_BINARIES/ppc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo -+ endif -+ endif -+endif -+ - ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ - $(EXPORT_LIB_DIR)/sa-jdi.jar - ADD_SA_BINARIES/universal = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ -@@ -357,7 +402,6 @@ - endif - endif - --ADD_SA_BINARIES/ppc = - ADD_SA_BINARIES/ia64 = - ADD_SA_BINARIES/arm = - ADD_SA_BINARIES/zero = ---- ./hotspot/make/bsd/makefiles/fastdebug.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/fastdebug.make Sun Feb 10 09:26:05 2019 -0800 -@@ -56,7 +56,10 @@ - # to inhibit the effect of the previous line on CFLAGS. - - # Linker mapfile --MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-debug -+ifeq ($(OS_VENDOR), Darwin) -+MAPSUFX = .macosx -+endif -+MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-debug$(MAPSUFX) - - VERSION = fastdebug - SYSDEFS += -DASSERT -DCHECK_UNHANDLED_OOPS ---- ./hotspot/make/bsd/makefiles/gcc.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/gcc.make Sun Feb 10 09:26:05 2019 -0800 -@@ -168,6 +168,9 @@ - CFLAGS += -DDONT_USE_PRECOMPILED_HEADER - endif - -+# Allow for where third party packages are located -+CFLAGS+= -DPACKAGE_PATH=\"$(PACKAGE_PATH)\" -+ - #------------------------------------------------------------------------ - # Compiler flags - -@@ -201,12 +204,15 @@ - endif - - ifeq ($(USE_CLANG), true) -- # Before Clang 3.1, we had to pass the stack alignment specification directly to llvm with the help of '-mllvm' -- # Starting with version 3.1, Clang understands the '-mstack-alignment' (and rejects '-mllvm -stack-alignment') -- ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 1 \) \))" "0" -- STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -mstack-alignment=16 -- else -- STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -mllvm -stack-alignment=16 -+ STACK_ALIGNMENT_OPT = -mno-omit-leaf-frame-pointer -+ ifeq ($(OS_VENDOR), Darwin) -+ # Before Clang 3.1, we had to pass the stack alignment specification directly to llvm with the help of '-mllvm' -+ # Starting with version 3.1, Clang understands the '-mstack-alignment' (and rejects '-mllvm -stack-alignment') -+ ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 1 \) \))" "0" -+ STACK_ALIGNMENT_OPT += -mstack-alignment=16 -+ else -+ STACK_ALIGNMENT_OPT += -mllvm -stack-alignment=16 -+ endif - endif - endif - -@@ -229,6 +235,10 @@ - LFLAGS += $(ARCHFLAG) - ASFLAGS += $(ARCHFLAG) - -+ifeq ($(DEBUG_BINARIES), true) -+ ASFLAGS += $(ASFLAGS_DEBUG_SYMBOLS) -+endif -+ - ifdef E500V2 - CFLAGS += -DE500V2 - endif -@@ -258,6 +268,10 @@ - # WARNINGS_ARE_ERRORS += -Wno-tautological-constant-out-of-range-compare - WARNINGS_ARE_ERRORS += -Wno-delete-non-virtual-dtor -Wno-deprecated -Wno-format -Wno-dynamic-class-memaccess - WARNINGS_ARE_ERRORS += -Wno-empty-body -+ ifneq "$(shell expr \( $(CC_VER_MAJOR) \>= 6 \))" "0" -+ WARNINGS_ARE_ERRORS += -Wno-undefined-bool-conversion -Wno-expansion-to-defined -+ WARNINGS_ARE_ERRORS += -Wno-undefined-var-template -+ endif - endif - - WARNING_FLAGS = -Wpointer-arith -Wsign-compare -Wundef -@@ -265,7 +279,7 @@ - ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 3 \) \))" "0" - # Since GCC 4.3, -Wconversion has changed its meanings to warn these implicit - # conversions which might affect the values. Only enable it in earlier versions. -- WARNING_FLAGS = -Wunused-function -+# WARNING_FLAGS = -Wunused-function - ifeq ($(USE_CLANG),) - WARNING_FLAGS += -Wconversion - endif -@@ -318,6 +332,9 @@ - OPT_CFLAGS/loopTransform.o += $(OPT_CFLAGS/NOOPT) - OPT_CFLAGS/unsafe.o += -O1 - endif -+ ifeq ($(shell expr $(CC_VER_MAJOR) = 6 \& $(CC_VER_MINOR) = 0), 1) -+ OPT_CFLAGS/unsafe.o += -O1 -+ endif - else - # 6835796. Problem in GCC 4.3.0 with mulnode.o optimized compilation. - ifeq ($(shell expr $(CC_VER_MAJOR) = 4 \& $(CC_VER_MINOR) = 3), 1) -@@ -379,6 +396,8 @@ - # Use $(MAPFLAG:FILENAME=real_file_name) to specify a map file. - MAPFLAG = -Xlinker --version-script=FILENAME - -+LDFLAGS_NO_EXEC_STACK="-Wl,-z,noexecstack" -+ - # - # Shared Library - # -@@ -421,53 +440,44 @@ - CFLAGS += -flimit-debug-info - endif - -+# Use the stabs format for debugging information (this is the default -+# on gcc-2.91). It's good enough, has all the information about line -+# numbers and local variables, and libjvm.so is only about 16M. -+# Change this back to "-g" if you want the most expressive format. -+# (warning: that could easily inflate libjvm.so to 150M!) -+# Note: The Itanium gcc compiler crashes when using -gstabs. -+# Don't use stabs on gcc>=4.8 because it is incompatible with -+# pre-compiled-headers -+ifeq ($(USE_CLANG), true) -+ # Clang doesn't understand -gstabs -+ STABS_CFLAGS += -g -+else -+ ifeq "$(shell expr \( $(CC_VER_MAJOR) \> 4 \) \| \( \( $(CC_VER_MAJOR) = 4 \) \& \( $(CC_VER_MINOR) \>= 8 \) \))" "1" -+ # GCC >= 4.8 -+ STABS_CFLAGS += -g -+ else -+ STABS_CFLAGS/ia64 = -g -+ STABS_CFLAGS/arm = -g -+ STABS_CFLAGS/ppc = -g -+ STABS_CFLAGS/amd64 = -g -+ ifeq ($(STABS_CFLAGS/$(BUILDARCH)),) -+ STABS_CFLAGS += -gstabs -+ else -+ STABS_CFLAGS += $(STABS_CFLAGS/$(BUILDARCH)) -+ endif -+ endif -+endif -+ - # DEBUG_BINARIES uses full -g debug information for all configs - ifeq ($(DEBUG_BINARIES), true) - CFLAGS += -g - else -- # Use the stabs format for debugging information (this is the default -- # on gcc-2.91). It's good enough, has all the information about line -- # numbers and local variables, and libjvm.so is only about 16M. -- # Change this back to "-g" if you want the most expressive format. -- # (warning: that could easily inflate libjvm.so to 150M!) -- # Note: The Itanium gcc compiler crashes when using -gstabs. -- DEBUG_CFLAGS/ia64 = -g -- DEBUG_CFLAGS/amd64 = -g -- DEBUG_CFLAGS/arm = -g -- DEBUG_CFLAGS/ppc = -g -- DEBUG_CFLAGS += $(DEBUG_CFLAGS/$(BUILDARCH)) -- ifeq ($(DEBUG_CFLAGS/$(BUILDARCH)),) -- DEBUG_CFLAGS += -gstabs -- endif -+ DEBUG_CFLAGS += ${STABS_CFLAGS} - - ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) -- FASTDEBUG_CFLAGS/ia64 = -g -- FASTDEBUG_CFLAGS/amd64 = -g -- FASTDEBUG_CFLAGS/arm = -g -- FASTDEBUG_CFLAGS/ppc = -g -- FASTDEBUG_CFLAGS += $(FASTDEBUG_CFLAGS/$(BUILDARCH)) -- ifeq ($(FASTDEBUG_CFLAGS/$(BUILDARCH)),) -- ifeq ($(USE_CLANG), true) -- # Clang doesn't understand -gstabs -- FASTDEBUG_CFLAGS += -g -- else -- FASTDEBUG_CFLAGS += -gstabs -- endif -- endif -+ FASTDEBUG_CFLAGS += ${STABS_CFLAGS} - -- OPT_CFLAGS/ia64 = -g -- OPT_CFLAGS/amd64 = -g -- OPT_CFLAGS/arm = -g -- OPT_CFLAGS/ppc = -g -- OPT_CFLAGS += $(OPT_CFLAGS/$(BUILDARCH)) -- ifeq ($(OPT_CFLAGS/$(BUILDARCH)),) -- ifeq ($(USE_CLANG), true) -- # Clang doesn't understand -gstabs -- OPT_CFLAGS += -g -- else -- OPT_CFLAGS += -gstabs -- endif -- endif -+ OPT_CFLAGS += ${STABS_CFLAGS} - endif - endif - ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/make/bsd/makefiles/launcher.make Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,117 @@ -+# -+# Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. -+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+# -+# This code is free software; you can redistribute it and/or modify it -+# under the terms of the GNU General Public License version 2 only, as -+# published by the Free Software Foundation. -+# -+# This code is distributed in the hope that it will be useful, but WITHOUT -+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+# version 2 for more details (a copy is included in the LICENSE file that -+# accompanied this code). -+# -+# You should have received a copy of the GNU General Public License version -+# 2 along with this work; if not, write to the Free Software Foundation, -+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+# -+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+# or visit www.oracle.com if you need additional information or have any -+# questions. -+# -+# -+ -+# Rules to build gamma launcher, used by vm.make -+ -+ -+LAUNCHER_SCRIPT = hotspot -+LAUNCHER = gamma -+ -+LAUNCHERDIR := $(GAMMADIR)/src/os/posix/launcher -+LAUNCHERDIR_SHARE := $(GAMMADIR)/src/share/tools/launcher -+LAUNCHERFLAGS := $(ARCHFLAG) \ -+ -I$(LAUNCHERDIR) -I$(GAMMADIR)/src/share/vm/prims \ -+ -I$(LAUNCHERDIR_SHARE) \ -+ -DFULL_VERSION=\"$(HOTSPOT_RELEASE_VERSION)\" \ -+ -DJDK_MAJOR_VERSION=\"$(JDK_MAJOR_VERSION)\" \ -+ -DJDK_MINOR_VERSION=\"$(JDK_MINOR_VERSION)\" \ -+ -DARCH=\"$(LIBARCH)\" \ -+ -DGAMMA \ -+ -DLAUNCHER_TYPE=\"gamma\" \ -+ -DLINK_INTO_$(LINK_INTO) \ -+ $(TARGET_DEFINES) -+# Give the launcher task_for_pid() privileges so that it can be used to run JStack, JInfo, et al. -+ifeq ($(OS_VENDOR), Darwin) -+LFLAGS_LAUNCHER += -sectcreate __TEXT __info_plist $(GAMMADIR)/src/os/bsd/launcher/Info-privileged.plist -+endif -+ -+ifeq ($(LINK_INTO),AOUT) -+ LAUNCHER.o = launcher.o $(JVM_OBJ_FILES) -+ LAUNCHER_MAPFILE = mapfile_reorder -+ LFLAGS_LAUNCHER$(LDNOMAP) += $(MAPFLAG:FILENAME=$(LAUNCHER_MAPFILE)) -+ LFLAGS_LAUNCHER += $(SONAMEFLAG:SONAME=$(LIBJVM)) $(STATIC_LIBGCC) -+ LIBS_LAUNCHER += $(STATIC_STDCXX) $(LIBS) -+else -+ LAUNCHER.o = launcher.o -+ LFLAGS_LAUNCHER += -L`pwd` -+ -+ # The gamma launcher runs the JDK from $JAVA_HOME, overriding the JVM with a -+ # freshly built JVM at ./libjvm.{so|dylib}. This is accomplished by setting -+ # the library searchpath using ({DY}LD_LIBRARY_PATH) to find the local JVM -+ # first. Gamma dlopen()s libjava from $JAVA_HOME/jre/lib{/$arch}, which is -+ # statically linked with CoreFoundation framework libs. Unfortunately, gamma's -+ # unique searchpath results in some unresolved symbols in the framework -+ # libraries, because JDK libraries are inadvertently discovered first on the -+ # searchpath, e.g. libjpeg. On Mac OS X, filenames are case *insensitive*. -+ # So, the actual filename collision is libjpeg.dylib and libJPEG.dylib. -+ # To resolve this, gamma needs to also statically link with the CoreFoundation -+ # framework libraries. -+ -+ ifeq ($(OS_VENDOR),Darwin) -+ LFLAGS_LAUNCHER += -framework CoreFoundation -+ endif -+ -+ LIBS_LAUNCHER += -l$(JVM) $(LIBS) -+endif -+ -+LINK_LAUNCHER = $(LINK.CC) -+ -+LINK_LAUNCHER/PRE_HOOK = $(LINK_LIB.CXX/PRE_HOOK) -+LINK_LAUNCHER/POST_HOOK = $(LINK_LIB.CXX/POST_HOOK) -+ -+LAUNCHER_OUT = launcher -+ -+SUFFIXES += .d -+ -+SOURCES := $(shell find $(LAUNCHERDIR) -name "*.c") -+SOURCES_SHARE := $(shell find $(LAUNCHERDIR_SHARE) -name "*.c") -+ -+OBJS := $(patsubst $(LAUNCHERDIR)/%.c,$(LAUNCHER_OUT)/%.o,$(SOURCES)) $(patsubst $(LAUNCHERDIR_SHARE)/%.c,$(LAUNCHER_OUT)/%.o,$(SOURCES_SHARE)) -+ -+DEPFILES := $(patsubst %.o,%.d,$(OBJS)) -+-include $(DEPFILES) -+ -+$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR_SHARE)/%.c -+ $(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); } -+ $(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CXXFLAGS) -+ -+$(LAUNCHER_OUT)/%.o: $(LAUNCHERDIR)/%.c -+ $(QUIETLY) [ -d $(LAUNCHER_OUT) ] || { mkdir -p $(LAUNCHER_OUT); } -+ $(QUIETLY) $(CC) -g -o $@ -c $< -MMD $(LAUNCHERFLAGS) $(CXXFLAGS) -+ -+$(LAUNCHER): $(OBJS) $(LIBJVM) $(LAUNCHER_MAPFILE) -+ $(QUIETLY) echo Linking launcher... -+ $(QUIETLY) $(LINK_LAUNCHER/PRE_HOOK) -+ $(QUIETLY) $(LINK_LAUNCHER) $(LFLAGS_LAUNCHER) -o $@ $(sort $(OBJS)) $(LIBS_LAUNCHER) -+ $(QUIETLY) $(LINK_LAUNCHER/POST_HOOK) -+ # Sign the launcher with the development certificate (if present) so that it can be used -+ # to run JStack, JInfo, et al. -+ $(QUIETLY) -codesign -s openjdk_codesign $@ -+ -+$(LAUNCHER): $(LAUNCHER_SCRIPT) -+ -+$(LAUNCHER_SCRIPT): $(LAUNCHERDIR)/launcher.script -+ $(QUIETLY) sed -e 's/@@LIBARCH@@/$(LIBARCH)/g' $< > $@ -+ $(QUIETLY) chmod +x $@ -+ ---- ./hotspot/make/bsd/makefiles/mapfile-vers-debug Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/mapfile-vers-debug Sun Feb 10 09:26:05 2019 -0800 -@@ -21,247 +21,255 @@ - # questions. - # - # --# Only used for OSX/Darwin builds - - # Define public interface. -+ -+SUNWprivate_1.1 { -+ global: - # _JNI -- _JNI_CreateJavaVM -- _JNI_GetCreatedJavaVMs -- _JNI_GetDefaultJavaVMInitArgs -+ JNI_CreateJavaVM; -+ JNI_GetCreatedJavaVMs; -+ JNI_GetDefaultJavaVMInitArgs; - - # _JVM -- _JVM_Accept -- _JVM_ActiveProcessorCount -- _JVM_AllocateNewArray -- _JVM_AllocateNewObject -- _JVM_ArrayCopy -- _JVM_AssertionStatusDirectives -- _JVM_Available -- _JVM_Bind -- _JVM_ClassDepth -- _JVM_ClassLoaderDepth -- _JVM_Clone -- _JVM_Close -- _JVM_CX8Field -- _JVM_CompileClass -- _JVM_CompileClasses -- _JVM_CompilerCommand -- _JVM_Connect -- _JVM_ConstantPoolGetClassAt -- _JVM_ConstantPoolGetClassAtIfLoaded -- _JVM_ConstantPoolGetDoubleAt -- _JVM_ConstantPoolGetFieldAt -- _JVM_ConstantPoolGetFieldAtIfLoaded -- _JVM_ConstantPoolGetFloatAt -- _JVM_ConstantPoolGetIntAt -- _JVM_ConstantPoolGetLongAt -- _JVM_ConstantPoolGetMethodAt -- _JVM_ConstantPoolGetMethodAtIfLoaded -- _JVM_ConstantPoolGetMemberRefInfoAt -- _JVM_ConstantPoolGetSize -- _JVM_ConstantPoolGetStringAt -- _JVM_ConstantPoolGetUTF8At -- _JVM_CopySwapMemory -- _JVM_CountStackFrames -- _JVM_CurrentClassLoader -- _JVM_CurrentLoadedClass -- _JVM_CurrentThread -- _JVM_CurrentTimeMillis -- _JVM_DefineClass -- _JVM_DefineClassWithSource -- _JVM_DefineClassWithSourceCond -- _JVM_DesiredAssertionStatus -- _JVM_DisableCompiler -- _JVM_DoPrivileged -- _JVM_DTraceGetVersion -- _JVM_DTraceActivate -- _JVM_DTraceIsProbeEnabled -- _JVM_DTraceIsSupported -- _JVM_DTraceDispose -- _JVM_DumpAllStacks -- _JVM_DumpThreads -- _JVM_EnableCompiler -- _JVM_Exit -- _JVM_FillInStackTrace -- _JVM_FindClassFromCaller -- _JVM_FindClassFromClass -- _JVM_FindClassFromClassLoader -- _JVM_FindClassFromBootLoader -- _JVM_FindLibraryEntry -- _JVM_FindLoadedClass -- _JVM_FindPrimitiveClass -- _JVM_FindSignal -- _JVM_FreeMemory -- _JVM_GC -- _JVM_GetAllThreads -- _JVM_GetArrayElement -- _JVM_GetArrayLength -- _JVM_GetCPClassNameUTF -- _JVM_GetCPFieldClassNameUTF -- _JVM_GetCPFieldModifiers -- _JVM_GetCPFieldNameUTF -- _JVM_GetCPFieldSignatureUTF -- _JVM_GetCPMethodClassNameUTF -- _JVM_GetCPMethodModifiers -- _JVM_GetCPMethodNameUTF -- _JVM_GetCPMethodSignatureUTF -- _JVM_GetCallerClass -- _JVM_GetClassAccessFlags -- _JVM_GetClassAnnotations -- _JVM_GetClassCPEntriesCount -- _JVM_GetClassCPTypes -- _JVM_GetClassConstantPool -- _JVM_GetClassContext -- _JVM_GetClassDeclaredConstructors -- _JVM_GetClassDeclaredFields -- _JVM_GetClassDeclaredMethods -- _JVM_GetClassFieldsCount -- _JVM_GetClassInterfaces -- _JVM_GetClassLoader -- _JVM_GetClassMethodsCount -- _JVM_GetClassModifiers -- _JVM_GetClassName -- _JVM_GetClassNameUTF -- _JVM_GetClassSignature -- _JVM_GetClassSigners -- _JVM_GetClassTypeAnnotations -- _JVM_GetComponentType -- _JVM_GetDeclaredClasses -- _JVM_GetDeclaringClass -- _JVM_GetEnclosingMethodInfo -- _JVM_GetFieldAnnotations -- _JVM_GetFieldIxModifiers -- _JVM_GetFieldTypeAnnotations -- _JVM_GetHostName -- _JVM_GetInheritedAccessControlContext -- _JVM_GetInterfaceVersion -- _JVM_GetLastErrorString -- _JVM_GetManagement -- _JVM_GetMethodAnnotations -- _JVM_GetMethodDefaultAnnotationValue -- _JVM_GetMethodIxArgsSize -- _JVM_GetMethodIxByteCode -- _JVM_GetMethodIxByteCodeLength -- _JVM_GetMethodIxExceptionIndexes -- _JVM_GetMethodIxExceptionTableEntry -- _JVM_GetMethodIxExceptionTableLength -- _JVM_GetMethodIxExceptionsCount -- _JVM_GetMethodIxLocalsCount -- _JVM_GetMethodIxMaxStack -- _JVM_GetMethodIxModifiers -- _JVM_GetMethodIxNameUTF -- _JVM_GetMethodIxSignatureUTF -- _JVM_GetMethodParameterAnnotations -- _JVM_GetMethodParameters -- _JVM_GetMethodTypeAnnotations -- _JVM_GetPrimitiveArrayElement -- _JVM_GetProtectionDomain -- _JVM_GetSockName -- _JVM_GetSockOpt -- _JVM_GetStackAccessControlContext -- _JVM_GetStackTraceDepth -- _JVM_GetStackTraceElement -- _JVM_GetSystemPackage -- _JVM_GetSystemPackages -- _JVM_GetTemporaryDirectory -- _JVM_GetThreadStateNames -- _JVM_GetThreadStateValues -- _JVM_GetVersionInfo -- _JVM_Halt -- _JVM_HoldsLock -- _JVM_IHashCode -- _JVM_InitAgentProperties -- _JVM_InitProperties -- _JVM_InitializeCompiler -- _JVM_InitializeSocketLibrary -- _JVM_InternString -- _JVM_Interrupt -- _JVM_InvokeMethod -- _JVM_IsArrayClass -- _JVM_IsConstructorIx -- _JVM_IsInterface -- _JVM_IsInterrupted -- _JVM_IsNaN -- _JVM_IsPrimitiveClass -- _JVM_IsSameClassPackage -- _JVM_IsSilentCompiler -- _JVM_IsSupportedJNIVersion -- _JVM_IsThreadAlive -- _JVM_IsVMGeneratedMethodIx -- _JVM_KnownToNotExist -- _JVM_GetResourceLookupCacheURLs -- _JVM_GetResourceLookupCache -- _JVM_LatestUserDefinedLoader -- _JVM_Listen -- _JVM_LoadClass0 -- _JVM_LoadLibrary -- _JVM_Lseek -- _JVM_MaxObjectInspectionAge -- _JVM_MaxMemory -- _JVM_MonitorNotify -- _JVM_MonitorNotifyAll -- _JVM_MonitorWait -- _JVM_NanoTime -- _JVM_NativePath -- _JVM_NewArray -- _JVM_NewInstanceFromConstructor -- _JVM_NewMultiArray -- _JVM_OnExit -- _JVM_Open -- _JVM_RaiseSignal -- _JVM_RawMonitorCreate -- _JVM_RawMonitorDestroy -- _JVM_RawMonitorEnter -- _JVM_RawMonitorExit -- _JVM_Read -- _JVM_Recv -- _JVM_RecvFrom -- _JVM_RegisterSignal -- _JVM_ReleaseUTF -- _JVM_ResolveClass -- _JVM_ResumeThread -- _JVM_Send -- _JVM_SendTo -- _JVM_SetArrayElement -- _JVM_SetClassSigners -- _JVM_SetLength -- _JVM_SetNativeThreadName -- _JVM_SetPrimitiveArrayElement -- _JVM_SetSockOpt -- _JVM_SetThreadPriority -- _JVM_Sleep -- _JVM_Socket -- _JVM_SocketAvailable -- _JVM_SocketClose -- _JVM_SocketShutdown -- _JVM_StartThread -- _JVM_StopThread -- _JVM_SuspendThread -- _JVM_SupportsCX8 -- _JVM_Sync -- _JVM_Timeout -- _JVM_TotalMemory -- _JVM_TraceInstructions -- _JVM_TraceMethodCalls -- _JVM_UnloadLibrary -- _JVM_Write -- _JVM_Yield -- _JVM_handle_bsd_signal -+ JVM_Accept; -+ JVM_ActiveProcessorCount; -+ JVM_AllocateNewArray; -+ JVM_AllocateNewObject; -+ JVM_ArrayCopy; -+ JVM_AssertionStatusDirectives; -+ JVM_Available; -+ JVM_Bind; -+ JVM_CX8Field; -+ JVM_ClassDepth; -+ JVM_ClassLoaderDepth; -+ JVM_Clone; -+ JVM_Close; -+ JVM_CompileClass; -+ JVM_CompileClasses; -+ JVM_CompilerCommand; -+ JVM_Connect; -+ JVM_ConstantPoolGetClassAt; -+ JVM_ConstantPoolGetClassAtIfLoaded; -+ JVM_ConstantPoolGetDoubleAt; -+ JVM_ConstantPoolGetFieldAt; -+ JVM_ConstantPoolGetFieldAtIfLoaded; -+ JVM_ConstantPoolGetFloatAt; -+ JVM_ConstantPoolGetIntAt; -+ JVM_ConstantPoolGetLongAt; -+ JVM_ConstantPoolGetMemberRefInfoAt; -+ JVM_ConstantPoolGetMethodAt; -+ JVM_ConstantPoolGetMethodAtIfLoaded; -+ JVM_ConstantPoolGetSize; -+ JVM_ConstantPoolGetStringAt; -+ JVM_ConstantPoolGetUTF8At; -+ JVM_CopySwapMemory; -+ JVM_CountStackFrames; -+ JVM_CurrentClassLoader; -+ JVM_CurrentLoadedClass; -+ JVM_CurrentThread; -+ JVM_CurrentTimeMillis; -+ JVM_DTraceActivate; -+ JVM_DTraceDispose; -+ JVM_DTraceGetVersion; -+ JVM_DTraceIsProbeEnabled; -+ JVM_DTraceIsSupported; -+ JVM_DefineClass; -+ JVM_DefineClassWithSource; -+ JVM_DefineClassWithSourceCond; -+ JVM_DesiredAssertionStatus; -+ JVM_DisableCompiler; -+ JVM_DoPrivileged; -+ JVM_DumpAllStacks; -+ JVM_DumpThreads; -+ JVM_EnableCompiler; -+ JVM_Exit; -+ JVM_FillInStackTrace; -+ JVM_FindClassFromBootLoader; -+ JVM_FindClassFromCaller; -+ JVM_FindClassFromClass; -+ JVM_FindClassFromClassLoader; -+ JVM_FindLibraryEntry; -+ JVM_FindLoadedClass; -+ JVM_FindPrimitiveClass; -+ JVM_FindSignal; -+ JVM_FreeMemory; -+ JVM_GC; -+ JVM_GetAllThreads; -+ JVM_GetArrayElement; -+ JVM_GetArrayLength; -+ JVM_GetCPClassNameUTF; -+ JVM_GetCPFieldClassNameUTF; -+ JVM_GetCPFieldModifiers; -+ JVM_GetCPFieldNameUTF; -+ JVM_GetCPFieldSignatureUTF; -+ JVM_GetCPMethodClassNameUTF; -+ JVM_GetCPMethodModifiers; -+ JVM_GetCPMethodNameUTF; -+ JVM_GetCPMethodSignatureUTF; -+ JVM_GetCallerClass; -+ JVM_GetClassAccessFlags; -+ JVM_GetClassAnnotations; -+ JVM_GetClassCPEntriesCount; -+ JVM_GetClassCPTypes; -+ JVM_GetClassConstantPool; -+ JVM_GetClassContext; -+ JVM_GetClassDeclaredConstructors; -+ JVM_GetClassDeclaredFields; -+ JVM_GetClassDeclaredMethods; -+ JVM_GetClassFieldsCount; -+ JVM_GetClassInterfaces; -+ JVM_GetClassLoader; -+ JVM_GetClassMethodsCount; -+ JVM_GetClassModifiers; -+ JVM_GetClassName; -+ JVM_GetClassNameUTF; -+ JVM_GetClassSignature; -+ JVM_GetClassSigners; -+ JVM_GetClassTypeAnnotations; -+ JVM_GetComponentType; -+ JVM_GetDeclaredClasses; -+ JVM_GetDeclaringClass; -+ JVM_GetEnclosingMethodInfo; -+ JVM_GetFieldAnnotations; -+ JVM_GetFieldIxModifiers; -+ JVM_GetFieldTypeAnnotations; -+ JVM_GetHostName; -+ JVM_GetInheritedAccessControlContext; -+ JVM_GetInterfaceVersion; -+ JVM_GetLastErrorString; -+ JVM_GetManagement; -+ JVM_GetMethodAnnotations; -+ JVM_GetMethodDefaultAnnotationValue; -+ JVM_GetMethodIxArgsSize; -+ JVM_GetMethodIxByteCode; -+ JVM_GetMethodIxByteCodeLength; -+ JVM_GetMethodIxExceptionIndexes; -+ JVM_GetMethodIxExceptionTableEntry; -+ JVM_GetMethodIxExceptionTableLength; -+ JVM_GetMethodIxExceptionsCount; -+ JVM_GetMethodIxLocalsCount; -+ JVM_GetMethodIxMaxStack; -+ JVM_GetMethodIxModifiers; -+ JVM_GetMethodIxNameUTF; -+ JVM_GetMethodIxSignatureUTF; -+ JVM_GetMethodParameterAnnotations; -+ JVM_GetMethodParameters; -+ JVM_GetMethodTypeAnnotations; -+ JVM_GetPrimitiveArrayElement; -+ JVM_GetProtectionDomain; -+ JVM_GetResourceLookupCache; -+ JVM_GetResourceLookupCacheURLs; -+ JVM_GetSockName; -+ JVM_GetSockOpt; -+ JVM_GetStackAccessControlContext; -+ JVM_GetStackTraceDepth; -+ JVM_GetStackTraceElement; -+ JVM_GetSystemPackage; -+ JVM_GetSystemPackages; -+ JVM_GetTemporaryDirectory; -+ JVM_GetThreadStateNames; -+ JVM_GetThreadStateValues; -+ JVM_GetVersionInfo; -+ JVM_Halt; -+ JVM_HoldsLock; -+ JVM_IHashCode; -+ JVM_InitAgentProperties; -+ JVM_InitProperties; -+ JVM_InitializeCompiler; -+ JVM_InitializeSocketLibrary; -+ JVM_InternString; -+ JVM_Interrupt; -+ JVM_InvokeMethod; -+ JVM_IsArrayClass; -+ JVM_IsConstructorIx; -+ JVM_IsInterface; -+ JVM_IsInterrupted; -+ JVM_IsNaN; -+ JVM_IsPrimitiveClass; -+ JVM_IsSameClassPackage; -+ JVM_IsSilentCompiler; -+ JVM_IsSupportedJNIVersion; -+ JVM_IsThreadAlive; -+ JVM_IsVMGeneratedMethodIx; -+ JVM_KnownToNotExist; -+ JVM_LatestUserDefinedLoader; -+ JVM_Listen; -+ JVM_LoadClass0; -+ JVM_LoadLibrary; -+ JVM_Lseek; -+ JVM_MaxMemory; -+ JVM_MaxObjectInspectionAge; -+ JVM_MonitorNotify; -+ JVM_MonitorNotifyAll; -+ JVM_MonitorWait; -+ JVM_NanoTime; -+ JVM_NativePath; -+ JVM_NewArray; -+ JVM_NewInstanceFromConstructor; -+ JVM_NewMultiArray; -+ JVM_OnExit; -+ JVM_Open; -+ JVM_RaiseSignal; -+ JVM_RawMonitorCreate; -+ JVM_RawMonitorDestroy; -+ JVM_RawMonitorEnter; -+ JVM_RawMonitorExit; -+ JVM_Read; -+ JVM_Recv; -+ JVM_RecvFrom; -+ JVM_RegisterSignal; -+ JVM_ReleaseUTF; -+ JVM_ResolveClass; -+ JVM_ResumeThread; -+ JVM_Send; -+ JVM_SendTo; -+ JVM_SetArrayElement; -+ JVM_SetClassSigners; -+ JVM_SetLength; -+ JVM_SetNativeThreadName; -+ JVM_SetPrimitiveArrayElement; -+ JVM_SetSockOpt; -+ JVM_SetThreadPriority; -+ JVM_Sleep; -+ JVM_Socket; -+ JVM_SocketAvailable; -+ JVM_SocketClose; -+ JVM_SocketShutdown; -+ JVM_StartThread; -+ JVM_StopThread; -+ JVM_SupportsCX8; -+ JVM_SuspendThread; -+ JVM_Sync; -+ JVM_Timeout; -+ JVM_TotalMemory; -+ JVM_TraceInstructions; -+ JVM_TraceMethodCalls; -+ JVM_UnloadLibrary; -+ JVM_Write; -+ JVM_Yield; -+ JVM_handle_bsd_signal; - -- # debug _JVM -- _JVM_AccessVMBooleanFlag -- _JVM_AccessVMIntFlag -- _JVM_VMBreakPoint -+ # debug JVM -+ JVM_AccessVMBooleanFlag; -+ JVM_AccessVMIntFlag; -+ JVM_VMBreakPoint; - - # miscellaneous functions -- _jio_fprintf -- _jio_printf -- _jio_snprintf -- _jio_vfprintf -- _jio_vsnprintf -+ jio_fprintf; -+ jio_printf; -+ jio_snprintf; -+ jio_vfprintf; -+ jio_vsnprintf; -+ fork1; -+ numa_warn; -+ numa_error; - - # This is for Forte Analyzer profiling support. -- _AsyncGetCallTrace -+ AsyncGetCallTrace; - - # INSERT VTABLE SYMBOLS HERE - -+ local: -+ *; -+}; ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/make/bsd/makefiles/mapfile-vers-debug.macosx Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,266 @@ -+# -+# Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved. -+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+# -+# This code is free software; you can redistribute it and/or modify it -+# under the terms of the GNU General Public License version 2 only, as -+# published by the Free Software Foundation. -+# -+# This code is distributed in the hope that it will be useful, but WITHOUT -+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+# version 2 for more details (a copy is included in the LICENSE file that -+# accompanied this code). -+# -+# You should have received a copy of the GNU General Public License version -+# 2 along with this work; if not, write to the Free Software Foundation, -+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+# -+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+# or visit www.oracle.com if you need additional information or have any -+# questions. -+# -+# -+# Only used for OSX/Darwin builds -+ -+# Define public interface. -+ # _JNI -+ _JNI_CreateJavaVM -+ _JNI_GetCreatedJavaVMs -+ _JNI_GetDefaultJavaVMInitArgs -+ -+ # _JVM -+ _JVM_Accept -+ _JVM_ActiveProcessorCount -+ _JVM_AllocateNewArray -+ _JVM_AllocateNewObject -+ _JVM_ArrayCopy -+ _JVM_AssertionStatusDirectives -+ _JVM_Available -+ _JVM_Bind -+ _JVM_ClassDepth -+ _JVM_ClassLoaderDepth -+ _JVM_Clone -+ _JVM_Close -+ _JVM_CX8Field -+ _JVM_CompileClass -+ _JVM_CompileClasses -+ _JVM_CompilerCommand -+ _JVM_Connect -+ _JVM_ConstantPoolGetClassAt -+ _JVM_ConstantPoolGetClassAtIfLoaded -+ _JVM_ConstantPoolGetDoubleAt -+ _JVM_ConstantPoolGetFieldAt -+ _JVM_ConstantPoolGetFieldAtIfLoaded -+ _JVM_ConstantPoolGetFloatAt -+ _JVM_ConstantPoolGetIntAt -+ _JVM_ConstantPoolGetLongAt -+ _JVM_ConstantPoolGetMethodAt -+ _JVM_ConstantPoolGetMethodAtIfLoaded -+ _JVM_ConstantPoolGetMemberRefInfoAt -+ _JVM_ConstantPoolGetSize -+ _JVM_ConstantPoolGetStringAt -+ _JVM_ConstantPoolGetUTF8At -+ _JVM_CountStackFrames -+ _JVM_CurrentClassLoader -+ _JVM_CurrentLoadedClass -+ _JVM_CurrentThread -+ _JVM_CurrentTimeMillis -+ _JVM_DefineClass -+ _JVM_DefineClassWithSource -+ _JVM_DefineClassWithSourceCond -+ _JVM_DesiredAssertionStatus -+ _JVM_DisableCompiler -+ _JVM_DoPrivileged -+ _JVM_DTraceGetVersion -+ _JVM_DTraceActivate -+ _JVM_DTraceIsProbeEnabled -+ _JVM_DTraceIsSupported -+ _JVM_DTraceDispose -+ _JVM_DumpAllStacks -+ _JVM_DumpThreads -+ _JVM_EnableCompiler -+ _JVM_Exit -+ _JVM_FillInStackTrace -+ _JVM_FindClassFromCaller -+ _JVM_FindClassFromClass -+ _JVM_FindClassFromClassLoader -+ _JVM_FindClassFromBootLoader -+ _JVM_FindLibraryEntry -+ _JVM_FindLoadedClass -+ _JVM_FindPrimitiveClass -+ _JVM_FindSignal -+ _JVM_FreeMemory -+ _JVM_GC -+ _JVM_GetAllThreads -+ _JVM_GetArrayElement -+ _JVM_GetArrayLength -+ _JVM_GetCPClassNameUTF -+ _JVM_GetCPFieldClassNameUTF -+ _JVM_GetCPFieldModifiers -+ _JVM_GetCPFieldNameUTF -+ _JVM_GetCPFieldSignatureUTF -+ _JVM_GetCPMethodClassNameUTF -+ _JVM_GetCPMethodModifiers -+ _JVM_GetCPMethodNameUTF -+ _JVM_GetCPMethodSignatureUTF -+ _JVM_GetCallerClass -+ _JVM_GetClassAccessFlags -+ _JVM_GetClassAnnotations -+ _JVM_GetClassCPEntriesCount -+ _JVM_GetClassCPTypes -+ _JVM_GetClassConstantPool -+ _JVM_GetClassContext -+ _JVM_GetClassDeclaredConstructors -+ _JVM_GetClassDeclaredFields -+ _JVM_GetClassDeclaredMethods -+ _JVM_GetClassFieldsCount -+ _JVM_GetClassInterfaces -+ _JVM_GetClassLoader -+ _JVM_GetClassMethodsCount -+ _JVM_GetClassModifiers -+ _JVM_GetClassName -+ _JVM_GetClassNameUTF -+ _JVM_GetClassSignature -+ _JVM_GetClassSigners -+ _JVM_GetClassTypeAnnotations -+ _JVM_GetComponentType -+ _JVM_GetDeclaredClasses -+ _JVM_GetDeclaringClass -+ _JVM_GetEnclosingMethodInfo -+ _JVM_GetFieldAnnotations -+ _JVM_GetFieldIxModifiers -+ _JVM_GetFieldTypeAnnotations -+ _JVM_GetHostName -+ _JVM_GetInheritedAccessControlContext -+ _JVM_GetInterfaceVersion -+ _JVM_GetLastErrorString -+ _JVM_GetManagement -+ _JVM_GetMethodAnnotations -+ _JVM_GetMethodDefaultAnnotationValue -+ _JVM_GetMethodIxArgsSize -+ _JVM_GetMethodIxByteCode -+ _JVM_GetMethodIxByteCodeLength -+ _JVM_GetMethodIxExceptionIndexes -+ _JVM_GetMethodIxExceptionTableEntry -+ _JVM_GetMethodIxExceptionTableLength -+ _JVM_GetMethodIxExceptionsCount -+ _JVM_GetMethodIxLocalsCount -+ _JVM_GetMethodIxMaxStack -+ _JVM_GetMethodIxModifiers -+ _JVM_GetMethodIxNameUTF -+ _JVM_GetMethodIxSignatureUTF -+ _JVM_GetMethodParameterAnnotations -+ _JVM_GetMethodParameters -+ _JVM_GetMethodTypeAnnotations -+ _JVM_GetPrimitiveArrayElement -+ _JVM_GetProtectionDomain -+ _JVM_GetSockName -+ _JVM_GetSockOpt -+ _JVM_GetStackAccessControlContext -+ _JVM_GetStackTraceDepth -+ _JVM_GetStackTraceElement -+ _JVM_GetSystemPackage -+ _JVM_GetSystemPackages -+ _JVM_GetTemporaryDirectory -+ _JVM_GetThreadStateNames -+ _JVM_GetThreadStateValues -+ _JVM_GetVersionInfo -+ _JVM_Halt -+ _JVM_HoldsLock -+ _JVM_IHashCode -+ _JVM_InitAgentProperties -+ _JVM_InitProperties -+ _JVM_InitializeCompiler -+ _JVM_InitializeSocketLibrary -+ _JVM_InternString -+ _JVM_Interrupt -+ _JVM_InvokeMethod -+ _JVM_IsArrayClass -+ _JVM_IsConstructorIx -+ _JVM_IsInterface -+ _JVM_IsInterrupted -+ _JVM_IsNaN -+ _JVM_IsPrimitiveClass -+ _JVM_IsSameClassPackage -+ _JVM_IsSilentCompiler -+ _JVM_IsSupportedJNIVersion -+ _JVM_IsThreadAlive -+ _JVM_IsVMGeneratedMethodIx -+ _JVM_KnownToNotExist -+ _JVM_GetResourceLookupCacheURLs -+ _JVM_GetResourceLookupCache -+ _JVM_LatestUserDefinedLoader -+ _JVM_Listen -+ _JVM_LoadClass0 -+ _JVM_LoadLibrary -+ _JVM_Lseek -+ _JVM_MaxObjectInspectionAge -+ _JVM_MaxMemory -+ _JVM_MonitorNotify -+ _JVM_MonitorNotifyAll -+ _JVM_MonitorWait -+ _JVM_NanoTime -+ _JVM_NativePath -+ _JVM_NewArray -+ _JVM_NewInstanceFromConstructor -+ _JVM_NewMultiArray -+ _JVM_OnExit -+ _JVM_Open -+ _JVM_RaiseSignal -+ _JVM_RawMonitorCreate -+ _JVM_RawMonitorDestroy -+ _JVM_RawMonitorEnter -+ _JVM_RawMonitorExit -+ _JVM_Read -+ _JVM_Recv -+ _JVM_RecvFrom -+ _JVM_RegisterSignal -+ _JVM_ReleaseUTF -+ _JVM_ResolveClass -+ _JVM_ResumeThread -+ _JVM_Send -+ _JVM_SendTo -+ _JVM_SetArrayElement -+ _JVM_SetClassSigners -+ _JVM_SetLength -+ _JVM_SetNativeThreadName -+ _JVM_SetPrimitiveArrayElement -+ _JVM_SetSockOpt -+ _JVM_SetThreadPriority -+ _JVM_Sleep -+ _JVM_Socket -+ _JVM_SocketAvailable -+ _JVM_SocketClose -+ _JVM_SocketShutdown -+ _JVM_StartThread -+ _JVM_StopThread -+ _JVM_SuspendThread -+ _JVM_SupportsCX8 -+ _JVM_Sync -+ _JVM_Timeout -+ _JVM_TotalMemory -+ _JVM_TraceInstructions -+ _JVM_TraceMethodCalls -+ _JVM_UnloadLibrary -+ _JVM_Write -+ _JVM_Yield -+ _JVM_handle_bsd_signal -+ -+ # debug _JVM -+ _JVM_AccessVMBooleanFlag -+ _JVM_AccessVMIntFlag -+ _JVM_VMBreakPoint -+ -+ # miscellaneous functions -+ _jio_fprintf -+ _jio_printf -+ _jio_snprintf -+ _jio_vfprintf -+ _jio_vsnprintf -+ -+ # This is for Forte Analyzer profiling support. -+ _AsyncGetCallTrace -+ -+ # INSERT VTABLE SYMBOLS HERE -+ ---- ./hotspot/make/bsd/makefiles/mapfile-vers-product Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/mapfile-vers-product Sun Feb 10 09:26:05 2019 -0800 -@@ -21,242 +21,250 @@ - # questions. - # - # --# Only used for OSX/Darwin builds - - # Define public interface. -+ -+SUNWprivate_1.1 { -+ global: - # _JNI -- _JNI_CreateJavaVM -- _JNI_GetCreatedJavaVMs -- _JNI_GetDefaultJavaVMInitArgs -+ JNI_CreateJavaVM; -+ JNI_GetCreatedJavaVMs; -+ JNI_GetDefaultJavaVMInitArgs; - - # _JVM -- _JVM_Accept -- _JVM_ActiveProcessorCount -- _JVM_AllocateNewArray -- _JVM_AllocateNewObject -- _JVM_ArrayCopy -- _JVM_AssertionStatusDirectives -- _JVM_Available -- _JVM_Bind -- _JVM_ClassDepth -- _JVM_ClassLoaderDepth -- _JVM_Clone -- _JVM_Close -- _JVM_CX8Field -- _JVM_CompileClass -- _JVM_CompileClasses -- _JVM_CompilerCommand -- _JVM_Connect -- _JVM_ConstantPoolGetClassAt -- _JVM_ConstantPoolGetClassAtIfLoaded -- _JVM_ConstantPoolGetDoubleAt -- _JVM_ConstantPoolGetFieldAt -- _JVM_ConstantPoolGetFieldAtIfLoaded -- _JVM_ConstantPoolGetFloatAt -- _JVM_ConstantPoolGetIntAt -- _JVM_ConstantPoolGetLongAt -- _JVM_ConstantPoolGetMethodAt -- _JVM_ConstantPoolGetMethodAtIfLoaded -- _JVM_ConstantPoolGetMemberRefInfoAt -- _JVM_ConstantPoolGetSize -- _JVM_ConstantPoolGetStringAt -- _JVM_ConstantPoolGetUTF8At -- _JVM_CopySwapMemory -- _JVM_CountStackFrames -- _JVM_CurrentClassLoader -- _JVM_CurrentLoadedClass -- _JVM_CurrentThread -- _JVM_CurrentTimeMillis -- _JVM_DefineClass -- _JVM_DefineClassWithSource -- _JVM_DefineClassWithSourceCond -- _JVM_DesiredAssertionStatus -- _JVM_DisableCompiler -- _JVM_DoPrivileged -- _JVM_DTraceGetVersion -- _JVM_DTraceActivate -- _JVM_DTraceIsProbeEnabled -- _JVM_DTraceIsSupported -- _JVM_DTraceDispose -- _JVM_DumpAllStacks -- _JVM_DumpThreads -- _JVM_EnableCompiler -- _JVM_Exit -- _JVM_FillInStackTrace -- _JVM_FindClassFromCaller -- _JVM_FindClassFromClass -- _JVM_FindClassFromClassLoader -- _JVM_FindClassFromBootLoader -- _JVM_FindLibraryEntry -- _JVM_FindLoadedClass -- _JVM_FindPrimitiveClass -- _JVM_FindSignal -- _JVM_FreeMemory -- _JVM_GC -- _JVM_GetAllThreads -- _JVM_GetArrayElement -- _JVM_GetArrayLength -- _JVM_GetCPClassNameUTF -- _JVM_GetCPFieldClassNameUTF -- _JVM_GetCPFieldModifiers -- _JVM_GetCPFieldNameUTF -- _JVM_GetCPFieldSignatureUTF -- _JVM_GetCPMethodClassNameUTF -- _JVM_GetCPMethodModifiers -- _JVM_GetCPMethodNameUTF -- _JVM_GetCPMethodSignatureUTF -- _JVM_GetCallerClass -- _JVM_GetClassAccessFlags -- _JVM_GetClassAnnotations -- _JVM_GetClassCPEntriesCount -- _JVM_GetClassCPTypes -- _JVM_GetClassConstantPool -- _JVM_GetClassContext -- _JVM_GetClassDeclaredConstructors -- _JVM_GetClassDeclaredFields -- _JVM_GetClassDeclaredMethods -- _JVM_GetClassFieldsCount -- _JVM_GetClassInterfaces -- _JVM_GetClassLoader -- _JVM_GetClassMethodsCount -- _JVM_GetClassModifiers -- _JVM_GetClassName -- _JVM_GetClassNameUTF -- _JVM_GetClassSignature -- _JVM_GetClassSigners -- _JVM_GetClassTypeAnnotations -- _JVM_GetComponentType -- _JVM_GetDeclaredClasses -- _JVM_GetDeclaringClass -- _JVM_GetEnclosingMethodInfo -- _JVM_GetFieldAnnotations -- _JVM_GetFieldIxModifiers -- _JVM_GetFieldTypeAnnotations -- _JVM_GetHostName -- _JVM_GetInheritedAccessControlContext -- _JVM_GetInterfaceVersion -- _JVM_GetLastErrorString -- _JVM_GetManagement -- _JVM_GetMethodAnnotations -- _JVM_GetMethodDefaultAnnotationValue -- _JVM_GetMethodIxArgsSize -- _JVM_GetMethodIxByteCode -- _JVM_GetMethodIxByteCodeLength -- _JVM_GetMethodIxExceptionIndexes -- _JVM_GetMethodIxExceptionTableEntry -- _JVM_GetMethodIxExceptionTableLength -- _JVM_GetMethodIxExceptionsCount -- _JVM_GetMethodIxLocalsCount -- _JVM_GetMethodIxMaxStack -- _JVM_GetMethodIxModifiers -- _JVM_GetMethodIxNameUTF -- _JVM_GetMethodIxSignatureUTF -- _JVM_GetMethodParameterAnnotations -- _JVM_GetMethodParameters -- _JVM_GetMethodTypeAnnotations -- _JVM_GetPrimitiveArrayElement -- _JVM_GetProtectionDomain -- _JVM_GetSockName -- _JVM_GetSockOpt -- _JVM_GetStackAccessControlContext -- _JVM_GetStackTraceDepth -- _JVM_GetStackTraceElement -- _JVM_GetSystemPackage -- _JVM_GetSystemPackages -- _JVM_GetTemporaryDirectory -- _JVM_GetThreadStateNames -- _JVM_GetThreadStateValues -- _JVM_GetVersionInfo -- _JVM_Halt -- _JVM_HoldsLock -- _JVM_IHashCode -- _JVM_InitAgentProperties -- _JVM_InitProperties -- _JVM_InitializeCompiler -- _JVM_InitializeSocketLibrary -- _JVM_InternString -- _JVM_Interrupt -- _JVM_InvokeMethod -- _JVM_IsArrayClass -- _JVM_IsConstructorIx -- _JVM_IsInterface -- _JVM_IsInterrupted -- _JVM_IsNaN -- _JVM_IsPrimitiveClass -- _JVM_IsSameClassPackage -- _JVM_IsSilentCompiler -- _JVM_IsSupportedJNIVersion -- _JVM_IsThreadAlive -- _JVM_IsVMGeneratedMethodIx -- _JVM_KnownToNotExist -- _JVM_GetResourceLookupCacheURLs -- _JVM_GetResourceLookupCache -- _JVM_LatestUserDefinedLoader -- _JVM_Listen -- _JVM_LoadClass0 -- _JVM_LoadLibrary -- _JVM_Lseek -- _JVM_MaxObjectInspectionAge -- _JVM_MaxMemory -- _JVM_MonitorNotify -- _JVM_MonitorNotifyAll -- _JVM_MonitorWait -- _JVM_NanoTime -- _JVM_NativePath -- _JVM_NewArray -- _JVM_NewInstanceFromConstructor -- _JVM_NewMultiArray -- _JVM_OnExit -- _JVM_Open -- _JVM_RaiseSignal -- _JVM_RawMonitorCreate -- _JVM_RawMonitorDestroy -- _JVM_RawMonitorEnter -- _JVM_RawMonitorExit -- _JVM_Read -- _JVM_Recv -- _JVM_RecvFrom -- _JVM_RegisterSignal -- _JVM_ReleaseUTF -- _JVM_ResolveClass -- _JVM_ResumeThread -- _JVM_Send -- _JVM_SendTo -- _JVM_SetArrayElement -- _JVM_SetClassSigners -- _JVM_SetLength -- _JVM_SetNativeThreadName -- _JVM_SetPrimitiveArrayElement -- _JVM_SetSockOpt -- _JVM_SetThreadPriority -- _JVM_Sleep -- _JVM_Socket -- _JVM_SocketAvailable -- _JVM_SocketClose -- _JVM_SocketShutdown -- _JVM_StartThread -- _JVM_StopThread -- _JVM_SuspendThread -- _JVM_SupportsCX8 -- _JVM_Sync -- _JVM_Timeout -- _JVM_TotalMemory -- _JVM_TraceInstructions -- _JVM_TraceMethodCalls -- _JVM_UnloadLibrary -- _JVM_Write -- _JVM_Yield -- _JVM_handle_bsd_signal -+ JVM_Accept; -+ JVM_ActiveProcessorCount; -+ JVM_AllocateNewArray; -+ JVM_AllocateNewObject; -+ JVM_ArrayCopy; -+ JVM_AssertionStatusDirectives; -+ JVM_Available; -+ JVM_Bind; -+ JVM_CX8Field; -+ JVM_ClassDepth; -+ JVM_ClassLoaderDepth; -+ JVM_Clone; -+ JVM_Close; -+ JVM_CompileClass; -+ JVM_CompileClasses; -+ JVM_CompilerCommand; -+ JVM_Connect; -+ JVM_ConstantPoolGetClassAt; -+ JVM_ConstantPoolGetClassAtIfLoaded; -+ JVM_ConstantPoolGetDoubleAt; -+ JVM_ConstantPoolGetFieldAt; -+ JVM_ConstantPoolGetFieldAtIfLoaded; -+ JVM_ConstantPoolGetFloatAt; -+ JVM_ConstantPoolGetIntAt; -+ JVM_ConstantPoolGetLongAt; -+ JVM_ConstantPoolGetMemberRefInfoAt; -+ JVM_ConstantPoolGetMethodAt; -+ JVM_ConstantPoolGetMethodAtIfLoaded; -+ JVM_ConstantPoolGetSize; -+ JVM_ConstantPoolGetStringAt; -+ JVM_ConstantPoolGetUTF8At; -+ JVM_CopySwapMemory; -+ JVM_CountStackFrames; -+ JVM_CurrentClassLoader; -+ JVM_CurrentLoadedClass; -+ JVM_CurrentThread; -+ JVM_CurrentTimeMillis; -+ JVM_DTraceActivate; -+ JVM_DTraceDispose; -+ JVM_DTraceGetVersion; -+ JVM_DTraceIsProbeEnabled; -+ JVM_DTraceIsSupported; -+ JVM_DefineClass; -+ JVM_DefineClassWithSource; -+ JVM_DefineClassWithSourceCond; -+ JVM_DesiredAssertionStatus; -+ JVM_DisableCompiler; -+ JVM_DoPrivileged; -+ JVM_DumpAllStacks; -+ JVM_DumpThreads; -+ JVM_EnableCompiler; -+ JVM_Exit; -+ JVM_FillInStackTrace; -+ JVM_FindClassFromBootLoader; -+ JVM_FindClassFromCaller; -+ JVM_FindClassFromClass; -+ JVM_FindClassFromClassLoader; -+ JVM_FindLibraryEntry; -+ JVM_FindLoadedClass; -+ JVM_FindPrimitiveClass; -+ JVM_FindSignal; -+ JVM_FreeMemory; -+ JVM_GC; -+ JVM_GetAllThreads; -+ JVM_GetArrayElement; -+ JVM_GetArrayLength; -+ JVM_GetCPClassNameUTF; -+ JVM_GetCPFieldClassNameUTF; -+ JVM_GetCPFieldModifiers; -+ JVM_GetCPFieldNameUTF; -+ JVM_GetCPFieldSignatureUTF; -+ JVM_GetCPMethodClassNameUTF; -+ JVM_GetCPMethodModifiers; -+ JVM_GetCPMethodNameUTF; -+ JVM_GetCPMethodSignatureUTF; -+ JVM_GetCallerClass; -+ JVM_GetClassAccessFlags; -+ JVM_GetClassAnnotations; -+ JVM_GetClassCPEntriesCount; -+ JVM_GetClassCPTypes; -+ JVM_GetClassConstantPool; -+ JVM_GetClassContext; -+ JVM_GetClassDeclaredConstructors; -+ JVM_GetClassDeclaredFields; -+ JVM_GetClassDeclaredMethods; -+ JVM_GetClassFieldsCount; -+ JVM_GetClassInterfaces; -+ JVM_GetClassLoader; -+ JVM_GetClassMethodsCount; -+ JVM_GetClassModifiers; -+ JVM_GetClassName; -+ JVM_GetClassNameUTF; -+ JVM_GetClassSignature; -+ JVM_GetClassSigners; -+ JVM_GetClassTypeAnnotations; -+ JVM_GetComponentType; -+ JVM_GetDeclaredClasses; -+ JVM_GetDeclaringClass; -+ JVM_GetEnclosingMethodInfo; -+ JVM_GetFieldAnnotations; -+ JVM_GetFieldIxModifiers; -+ JVM_GetFieldTypeAnnotations; -+ JVM_GetHostName; -+ JVM_GetInheritedAccessControlContext; -+ JVM_GetInterfaceVersion; -+ JVM_GetLastErrorString; -+ JVM_GetManagement; -+ JVM_GetMethodAnnotations; -+ JVM_GetMethodDefaultAnnotationValue; -+ JVM_GetMethodIxArgsSize; -+ JVM_GetMethodIxByteCode; -+ JVM_GetMethodIxByteCodeLength; -+ JVM_GetMethodIxExceptionIndexes; -+ JVM_GetMethodIxExceptionTableEntry; -+ JVM_GetMethodIxExceptionTableLength; -+ JVM_GetMethodIxExceptionsCount; -+ JVM_GetMethodIxLocalsCount; -+ JVM_GetMethodIxMaxStack; -+ JVM_GetMethodIxModifiers; -+ JVM_GetMethodIxNameUTF; -+ JVM_GetMethodIxSignatureUTF; -+ JVM_GetMethodParameterAnnotations; -+ JVM_GetMethodParameters; -+ JVM_GetMethodTypeAnnotations; -+ JVM_GetPrimitiveArrayElement; -+ JVM_GetProtectionDomain; -+ JVM_GetResourceLookupCache; -+ JVM_GetResourceLookupCacheURLs; -+ JVM_GetSockName; -+ JVM_GetSockOpt; -+ JVM_GetStackAccessControlContext; -+ JVM_GetStackTraceDepth; -+ JVM_GetStackTraceElement; -+ JVM_GetSystemPackage; -+ JVM_GetSystemPackages; -+ JVM_GetTemporaryDirectory; -+ JVM_GetThreadStateNames; -+ JVM_GetThreadStateValues; -+ JVM_GetVersionInfo; -+ JVM_Halt; -+ JVM_HoldsLock; -+ JVM_IHashCode; -+ JVM_InitAgentProperties; -+ JVM_InitProperties; -+ JVM_InitializeCompiler; -+ JVM_InitializeSocketLibrary; -+ JVM_InternString; -+ JVM_Interrupt; -+ JVM_InvokeMethod; -+ JVM_IsArrayClass; -+ JVM_IsConstructorIx; -+ JVM_IsInterface; -+ JVM_IsInterrupted; -+ JVM_IsNaN; -+ JVM_IsPrimitiveClass; -+ JVM_IsSameClassPackage; -+ JVM_IsSilentCompiler; -+ JVM_IsSupportedJNIVersion; -+ JVM_IsThreadAlive; -+ JVM_IsVMGeneratedMethodIx; -+ JVM_KnownToNotExist; -+ JVM_LatestUserDefinedLoader; -+ JVM_Listen; -+ JVM_LoadClass0; -+ JVM_LoadLibrary; -+ JVM_Lseek; -+ JVM_MaxMemory; -+ JVM_MaxObjectInspectionAge; -+ JVM_MonitorNotify; -+ JVM_MonitorNotifyAll; -+ JVM_MonitorWait; -+ JVM_NanoTime; -+ JVM_NativePath; -+ JVM_NewArray; -+ JVM_NewInstanceFromConstructor; -+ JVM_NewMultiArray; -+ JVM_OnExit; -+ JVM_Open; -+ JVM_RaiseSignal; -+ JVM_RawMonitorCreate; -+ JVM_RawMonitorDestroy; -+ JVM_RawMonitorEnter; -+ JVM_RawMonitorExit; -+ JVM_Read; -+ JVM_Recv; -+ JVM_RecvFrom; -+ JVM_RegisterSignal; -+ JVM_ReleaseUTF; -+ JVM_ResolveClass; -+ JVM_ResumeThread; -+ JVM_Send; -+ JVM_SendTo; -+ JVM_SetArrayElement; -+ JVM_SetClassSigners; -+ JVM_SetLength; -+ JVM_SetNativeThreadName; -+ JVM_SetPrimitiveArrayElement; -+ JVM_SetSockOpt; -+ JVM_SetThreadPriority; -+ JVM_Sleep; -+ JVM_Socket; -+ JVM_SocketAvailable; -+ JVM_SocketClose; -+ JVM_SocketShutdown; -+ JVM_StartThread; -+ JVM_StopThread; -+ JVM_SupportsCX8; -+ JVM_SuspendThread; -+ JVM_Sync; -+ JVM_Timeout; -+ JVM_TotalMemory; -+ JVM_TraceInstructions; -+ JVM_TraceMethodCalls; -+ JVM_UnloadLibrary; -+ JVM_Write; -+ JVM_Yield; -+ JVM_handle_bsd_signal; - - # miscellaneous functions -- _jio_fprintf -- _jio_printf -- _jio_snprintf -- _jio_vfprintf -- _jio_vsnprintf -+ jio_fprintf; -+ jio_printf; -+ jio_snprintf; -+ jio_vfprintf; -+ jio_vsnprintf; -+ fork1; -+ numa_warn; -+ numa_error; - - # This is for Forte Analyzer profiling support. -- _AsyncGetCallTrace -+ AsyncGetCallTrace; - - # INSERT VTABLE SYMBOLS HERE - -+ local: -+ *; -+}; ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/make/bsd/makefiles/mapfile-vers-product.macosx Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,261 @@ -+# -+# Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved. -+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+# -+# This code is free software; you can redistribute it and/or modify it -+# under the terms of the GNU General Public License version 2 only, as -+# published by the Free Software Foundation. -+# -+# This code is distributed in the hope that it will be useful, but WITHOUT -+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+# version 2 for more details (a copy is included in the LICENSE file that -+# accompanied this code). -+# -+# You should have received a copy of the GNU General Public License version -+# 2 along with this work; if not, write to the Free Software Foundation, -+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+# -+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+# or visit www.oracle.com if you need additional information or have any -+# questions. -+# -+# -+# Only used for OSX/Darwin builds -+ -+# Define public interface. -+ # _JNI -+ _JNI_CreateJavaVM -+ _JNI_GetCreatedJavaVMs -+ _JNI_GetDefaultJavaVMInitArgs -+ -+ # _JVM -+ _JVM_Accept -+ _JVM_ActiveProcessorCount -+ _JVM_AllocateNewArray -+ _JVM_AllocateNewObject -+ _JVM_ArrayCopy -+ _JVM_AssertionStatusDirectives -+ _JVM_Available -+ _JVM_Bind -+ _JVM_ClassDepth -+ _JVM_ClassLoaderDepth -+ _JVM_Clone -+ _JVM_Close -+ _JVM_CX8Field -+ _JVM_CompileClass -+ _JVM_CompileClasses -+ _JVM_CompilerCommand -+ _JVM_Connect -+ _JVM_ConstantPoolGetClassAt -+ _JVM_ConstantPoolGetClassAtIfLoaded -+ _JVM_ConstantPoolGetDoubleAt -+ _JVM_ConstantPoolGetFieldAt -+ _JVM_ConstantPoolGetFieldAtIfLoaded -+ _JVM_ConstantPoolGetFloatAt -+ _JVM_ConstantPoolGetIntAt -+ _JVM_ConstantPoolGetLongAt -+ _JVM_ConstantPoolGetMethodAt -+ _JVM_ConstantPoolGetMethodAtIfLoaded -+ _JVM_ConstantPoolGetMemberRefInfoAt -+ _JVM_ConstantPoolGetSize -+ _JVM_ConstantPoolGetStringAt -+ _JVM_ConstantPoolGetUTF8At -+ _JVM_CountStackFrames -+ _JVM_CurrentClassLoader -+ _JVM_CurrentLoadedClass -+ _JVM_CurrentThread -+ _JVM_CurrentTimeMillis -+ _JVM_DefineClass -+ _JVM_DefineClassWithSource -+ _JVM_DefineClassWithSourceCond -+ _JVM_DesiredAssertionStatus -+ _JVM_DisableCompiler -+ _JVM_DoPrivileged -+ _JVM_DTraceGetVersion -+ _JVM_DTraceActivate -+ _JVM_DTraceIsProbeEnabled -+ _JVM_DTraceIsSupported -+ _JVM_DTraceDispose -+ _JVM_DumpAllStacks -+ _JVM_DumpThreads -+ _JVM_EnableCompiler -+ _JVM_Exit -+ _JVM_FillInStackTrace -+ _JVM_FindClassFromCaller -+ _JVM_FindClassFromClass -+ _JVM_FindClassFromClassLoader -+ _JVM_FindClassFromBootLoader -+ _JVM_FindLibraryEntry -+ _JVM_FindLoadedClass -+ _JVM_FindPrimitiveClass -+ _JVM_FindSignal -+ _JVM_FreeMemory -+ _JVM_GC -+ _JVM_GetAllThreads -+ _JVM_GetArrayElement -+ _JVM_GetArrayLength -+ _JVM_GetCPClassNameUTF -+ _JVM_GetCPFieldClassNameUTF -+ _JVM_GetCPFieldModifiers -+ _JVM_GetCPFieldNameUTF -+ _JVM_GetCPFieldSignatureUTF -+ _JVM_GetCPMethodClassNameUTF -+ _JVM_GetCPMethodModifiers -+ _JVM_GetCPMethodNameUTF -+ _JVM_GetCPMethodSignatureUTF -+ _JVM_GetCallerClass -+ _JVM_GetClassAccessFlags -+ _JVM_GetClassAnnotations -+ _JVM_GetClassCPEntriesCount -+ _JVM_GetClassCPTypes -+ _JVM_GetClassConstantPool -+ _JVM_GetClassContext -+ _JVM_GetClassDeclaredConstructors -+ _JVM_GetClassDeclaredFields -+ _JVM_GetClassDeclaredMethods -+ _JVM_GetClassFieldsCount -+ _JVM_GetClassInterfaces -+ _JVM_GetClassLoader -+ _JVM_GetClassMethodsCount -+ _JVM_GetClassModifiers -+ _JVM_GetClassName -+ _JVM_GetClassNameUTF -+ _JVM_GetClassSignature -+ _JVM_GetClassSigners -+ _JVM_GetClassTypeAnnotations -+ _JVM_GetComponentType -+ _JVM_GetDeclaredClasses -+ _JVM_GetDeclaringClass -+ _JVM_GetEnclosingMethodInfo -+ _JVM_GetFieldAnnotations -+ _JVM_GetFieldIxModifiers -+ _JVM_GetFieldTypeAnnotations -+ _JVM_GetHostName -+ _JVM_GetInheritedAccessControlContext -+ _JVM_GetInterfaceVersion -+ _JVM_GetLastErrorString -+ _JVM_GetManagement -+ _JVM_GetMethodAnnotations -+ _JVM_GetMethodDefaultAnnotationValue -+ _JVM_GetMethodIxArgsSize -+ _JVM_GetMethodIxByteCode -+ _JVM_GetMethodIxByteCodeLength -+ _JVM_GetMethodIxExceptionIndexes -+ _JVM_GetMethodIxExceptionTableEntry -+ _JVM_GetMethodIxExceptionTableLength -+ _JVM_GetMethodIxExceptionsCount -+ _JVM_GetMethodIxLocalsCount -+ _JVM_GetMethodIxMaxStack -+ _JVM_GetMethodIxModifiers -+ _JVM_GetMethodIxNameUTF -+ _JVM_GetMethodIxSignatureUTF -+ _JVM_GetMethodParameterAnnotations -+ _JVM_GetMethodParameters -+ _JVM_GetMethodTypeAnnotations -+ _JVM_GetPrimitiveArrayElement -+ _JVM_GetProtectionDomain -+ _JVM_GetSockName -+ _JVM_GetSockOpt -+ _JVM_GetStackAccessControlContext -+ _JVM_GetStackTraceDepth -+ _JVM_GetStackTraceElement -+ _JVM_GetSystemPackage -+ _JVM_GetSystemPackages -+ _JVM_GetTemporaryDirectory -+ _JVM_GetThreadStateNames -+ _JVM_GetThreadStateValues -+ _JVM_GetVersionInfo -+ _JVM_Halt -+ _JVM_HoldsLock -+ _JVM_IHashCode -+ _JVM_InitAgentProperties -+ _JVM_InitProperties -+ _JVM_InitializeCompiler -+ _JVM_InitializeSocketLibrary -+ _JVM_InternString -+ _JVM_Interrupt -+ _JVM_InvokeMethod -+ _JVM_IsArrayClass -+ _JVM_IsConstructorIx -+ _JVM_IsInterface -+ _JVM_IsInterrupted -+ _JVM_IsNaN -+ _JVM_IsPrimitiveClass -+ _JVM_IsSameClassPackage -+ _JVM_IsSilentCompiler -+ _JVM_IsSupportedJNIVersion -+ _JVM_IsThreadAlive -+ _JVM_IsVMGeneratedMethodIx -+ _JVM_KnownToNotExist -+ _JVM_GetResourceLookupCacheURLs -+ _JVM_GetResourceLookupCache -+ _JVM_LatestUserDefinedLoader -+ _JVM_Listen -+ _JVM_LoadClass0 -+ _JVM_LoadLibrary -+ _JVM_Lseek -+ _JVM_MaxObjectInspectionAge -+ _JVM_MaxMemory -+ _JVM_MonitorNotify -+ _JVM_MonitorNotifyAll -+ _JVM_MonitorWait -+ _JVM_NanoTime -+ _JVM_NativePath -+ _JVM_NewArray -+ _JVM_NewInstanceFromConstructor -+ _JVM_NewMultiArray -+ _JVM_OnExit -+ _JVM_Open -+ _JVM_RaiseSignal -+ _JVM_RawMonitorCreate -+ _JVM_RawMonitorDestroy -+ _JVM_RawMonitorEnter -+ _JVM_RawMonitorExit -+ _JVM_Read -+ _JVM_Recv -+ _JVM_RecvFrom -+ _JVM_RegisterSignal -+ _JVM_ReleaseUTF -+ _JVM_ResolveClass -+ _JVM_ResumeThread -+ _JVM_Send -+ _JVM_SendTo -+ _JVM_SetArrayElement -+ _JVM_SetClassSigners -+ _JVM_SetLength -+ _JVM_SetNativeThreadName -+ _JVM_SetPrimitiveArrayElement -+ _JVM_SetSockOpt -+ _JVM_SetThreadPriority -+ _JVM_Sleep -+ _JVM_Socket -+ _JVM_SocketAvailable -+ _JVM_SocketClose -+ _JVM_SocketShutdown -+ _JVM_StartThread -+ _JVM_StopThread -+ _JVM_SuspendThread -+ _JVM_SupportsCX8 -+ _JVM_Sync -+ _JVM_Timeout -+ _JVM_TotalMemory -+ _JVM_TraceInstructions -+ _JVM_TraceMethodCalls -+ _JVM_UnloadLibrary -+ _JVM_Write -+ _JVM_Yield -+ _JVM_handle_bsd_signal -+ -+ # miscellaneous functions -+ _jio_fprintf -+ _jio_printf -+ _jio_snprintf -+ _jio_vfprintf -+ _jio_vsnprintf -+ -+ # This is for Forte Analyzer profiling support. -+ _AsyncGetCallTrace -+ -+ # INSERT VTABLE SYMBOLS HERE -+ ---- ./hotspot/make/bsd/makefiles/optimized.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/optimized.make Sun Feb 10 09:26:05 2019 -0800 -@@ -38,6 +38,9 @@ - # to inhibit the effect of the previous line on CFLAGS. - - # Linker mapfile --MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-debug -+ifeq ($(OS_VENDOR), Darwin) -+MAPSUFX = .macosx -+endif -+MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-debug$(MAPSUFX) - - VERSION = optimized ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/make/bsd/makefiles/ppc64.make Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,51 @@ -+# -+# Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved. -+# Copyright 2012, 2013 SAP AG. All rights reserved. -+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+# -+# This code is free software; you can redistribute it and/or modify it -+# under the terms of the GNU General Public License version 2 only, as -+# published by the Free Software Foundation. -+# -+# This code is distributed in the hope that it will be useful, but WITHOUT -+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+# version 2 for more details (a copy is included in the LICENSE file that -+# accompanied this code). -+# -+# You should have received a copy of the GNU General Public License version -+# 2 along with this work; if not, write to the Free Software Foundation, -+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+# -+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+# or visit www.oracle.com if you need additional information or have any -+# questions. -+# -+# -+ -+# make c code know it is on a 64 bit platform. -+CFLAGS += -D_LP64=1 -+ -+ifeq ($(origin OPENJDK_TARGET_CPU_ENDIAN),undefined) -+ # This can happen during hotspot standalone build. Set endianness from -+ # uname. We assume build and target machines are the same. -+ OPENJDK_TARGET_CPU_ENDIAN:=$(if $(filter ppc64le,$(shell uname -m)),little,big) -+endif -+ -+ifeq ($(filter $(OPENJDK_TARGET_CPU_ENDIAN),big little),) -+ $(error OPENJDK_TARGET_CPU_ENDIAN value should be 'big' or 'little') -+endif -+ -+ifeq ($(OPENJDK_TARGET_CPU_ENDIAN),big) -+ # fixes `relocation truncated to fit' error for gcc 4.1. -+ CFLAGS += -mminimal-toc -+ -+ # finds use ppc64 instructions, but schedule for power5 -+ CFLAGS += -mcpu=powerpc64 -mtune=power5 -minsert-sched-nops=regroup_exact -mno-multiple -mno-string -+else -+ # Little endian machine uses ELFv2 ABI. -+ CFLAGS += -DVM_LITTLE_ENDIAN -DABI_ELFv2 -+ -+ # Use Power8, this is the first CPU to support PPC64 LE with ELFv2 ABI. -+ CFLAGS += -mcpu=power7 -mtune=power8 -minsert-sched-nops=regroup_exact -mno-multiple -mno-string -+endif ---- ./hotspot/make/bsd/makefiles/product.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/product.make Sun Feb 10 09:26:05 2019 -0800 -@@ -38,7 +38,10 @@ - # to inhibit the effect of the previous line on CFLAGS. - - # Linker mapfile --MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-product -+ifeq ($(OS_VENDOR), Darwin) -+ MAPSUFX = .macosx -+endif -+MAPFILE = $(GAMMADIR)/make/bsd/makefiles/mapfile-vers-product$(MAPSUFX) - - SYSDEFS += -DPRODUCT - VERSION = optimized ---- ./hotspot/make/bsd/makefiles/rules.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/rules.make Sun Feb 10 09:26:05 2019 -0800 -@@ -34,7 +34,7 @@ - CC_COMPILE = $(CC) $(CXXFLAGS) $(CFLAGS) - CXX_COMPILE = $(CXX) $(CXXFLAGS) $(CFLAGS) - --AS.S = $(AS) $(ASFLAGS) -+AS.S = $(AS) -x assembler-with-cpp $(ASFLAGS) - - COMPILE.CC = $(CC_COMPILE) -c - GENASM.CC = $(CC_COMPILE) -S ---- ./hotspot/make/bsd/makefiles/sa.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/sa.make Sun Feb 10 09:26:05 2019 -0800 -@@ -1,5 +1,5 @@ - # --# Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved. -+# Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved. - # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - # - # This code is free software; you can redistribute it and/or modify it -@@ -19,7 +19,7 @@ - # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - # or visit www.oracle.com if you need additional information or have any - # questions. --# -+# - # - - # This makefile (sa.make) is included from the sa.make in the -@@ -30,34 +30,21 @@ - - include $(GAMMADIR)/make/bsd/makefiles/rules.make - -+include $(GAMMADIR)/make/defs.make -+include $(GAMMADIR)/make/altsrc.make -+ - AGENT_DIR = $(GAMMADIR)/agent - - include $(GAMMADIR)/make/sa.files - - -include $(HS_ALT_MAKE)/bsd/makefiles/sa.make - -+ - TOPDIR = $(shell echo `pwd`) - GENERATED = $(TOPDIR)/../generated - --# SA-JDI depends on the standard JDI classes. --# Default SA_CLASSPATH location: --DEF_SA_CLASSPATH=$(BOOT_JAVA_HOME)/lib/tools.jar --ifeq ($(ALT_SA_CLASSPATH),) -- # no alternate specified; see if default exists -- SA_CLASSPATH=$(shell test -f $(DEF_SA_CLASSPATH) && echo $(DEF_SA_CLASSPATH)) -- ifeq ($(SA_CLASSPATH),) -- # the default doesn't exist -- ifeq ($(OS_VENDOR), Darwin) -- # A JDK from Apple doesn't have tools.jar; the JDI classes are -- # are in the regular classes.jar file. -- APPLE_JAR=$(BOOT_JAVA_HOME)/bundle/Classes/classes.jar -- SA_CLASSPATH=$(shell test -f $(APPLE_JAR) && echo $(APPLE_JAR)) -- endif -- endif --else -- _JUNK_ := $(shell echo >&2 "INFO: ALT_SA_CLASSPATH=$(ALT_SA_CLASSPATH)") -- SA_CLASSPATH=$(shell test -f $(ALT_SA_CLASSPATH) && echo $(ALT_SA_CLASSPATH)) --endif -+# tools.jar is needed by the JDI - SA binding -+SA_CLASSPATH = $(BOOT_JAVA_HOME)/lib/tools.jar - - # TODO: if it's a modules image, check if SA module is installed. - MODULELIB_PATH= $(BOOT_JAVA_HOME)/lib/modules -@@ -71,24 +58,22 @@ - SA_PROPERTIES = $(SA_CLASSDIR)/sa.properties - - # if $(AGENT_DIR) does not exist, we don't build SA --# also, we don't build SA on Itanium, PowerPC, ARM or zero. -+# also, we don't build SA on Itanium or zero. - --all: -+all: - if [ -d $(AGENT_DIR) -a "$(SRCARCH)" != "ia64" \ -- -a "$(SRCARCH)" != "arm" \ -- -a "$(SRCARCH)" != "ppc" \ - -a "$(SRCARCH)" != "zero" ] ; then \ - $(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \ - fi - --$(GENERATED)/sa-jdi.jar: $(AGENT_FILES) -- $(QUIETLY) echo "Making $@" -+$(GENERATED)/sa-jdi.jar:: $(AGENT_FILES) -+ $(QUIETLY) echo $(LOG_INFO) "Making $@" - $(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \ - echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \ - exit 1; \ - fi -- $(QUIETLY) if [ ! -f "$(SA_CLASSPATH)" -a ! -d $(MODULELIB_PATH) ] ; then \ -- echo "Cannot find JDI classes. Use 1.6.0 or later version of JDK."; \ -+ $(QUIETLY) if [ ! -f $(SA_CLASSPATH) -a ! -d $(MODULELIB_PATH) ] ; then \ -+ echo "Missing $(SA_CLASSPATH) file. Use 1.6.0 or later version of JDK";\ - echo ""; \ - exit 1; \ - fi -@@ -114,19 +99,22 @@ - $(QUIETLY) $(REMOTE) $(COMPILE.RMIC) -classpath $(SA_CLASSDIR) -d $(SA_CLASSDIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer - $(QUIETLY) echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES) - $(QUIETLY) rm -f $(SA_CLASSDIR)/sun/jvm/hotspot/utilities/soql/sa.js -- $(QUIETLY) cp $(AGENT_SRC_DIR)/sun/jvm/hotspot/utilities/soql/sa.js $(SA_CLASSDIR)/sun/jvm/hotspot/utilities/soql -+ $(QUIETLY) $(CP) $(AGENT_SRC_DIR)/sun/jvm/hotspot/utilities/soql/sa.js $(SA_CLASSDIR)/sun/jvm/hotspot/utilities/soql - $(QUIETLY) mkdir -p $(SA_CLASSDIR)/sun/jvm/hotspot/ui/resources - $(QUIETLY) rm -f $(SA_CLASSDIR)/sun/jvm/hotspot/ui/resources/* -- $(QUIETLY) cp $(AGENT_SRC_DIR)/sun/jvm/hotspot/ui/resources/*.png $(SA_CLASSDIR)/sun/jvm/hotspot/ui/resources/ -- $(QUIETLY) cp -r $(AGENT_SRC_DIR)/images/* $(SA_CLASSDIR)/ -+ $(QUIETLY) $(CP) $(AGENT_SRC_DIR)/sun/jvm/hotspot/ui/resources/*.png $(SA_CLASSDIR)/sun/jvm/hotspot/ui/resources/ -+ $(QUIETLY) $(CP) -r $(AGENT_SRC_DIR)/images/* $(SA_CLASSDIR)/ - $(QUIETLY) $(REMOTE) $(RUN.JAR) cf $@ -C $(SA_CLASSDIR)/ . - $(QUIETLY) $(REMOTE) $(RUN.JAR) uf $@ -C $(AGENT_SRC_DIR) META-INF/services/com.sun.jdi.connect.Connector - $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.x86.X86ThreadContext - $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext - $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.sparc.SPARCThreadContext -+ $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.ppc64.PPC64ThreadContext - $(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.asm.Disassembler - - clean: - rm -rf $(SA_CLASSDIR) - rm -rf $(GENERATED)/sa-jdi.jar - rm -rf $(AGENT_FILES_LIST) -+ -+-include $(HS_ALT_MAKE)/bsd/makefiles/sa-rules.make ---- ./hotspot/make/bsd/makefiles/saproc.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/saproc.make Sun Feb 10 09:26:05 2019 -0800 -@@ -99,10 +99,10 @@ - endif - - # if $(AGENT_DIR) does not exist, we don't build SA --# also, we don't build SA on Itanium, PPC, ARM or zero. -+# also, we don't build SA on Itanium, ARM or zero. - - ifneq ($(wildcard $(AGENT_DIR)),) --ifneq ($(filter-out ia64 arm ppc zero,$(SRCARCH)),) -+ifneq ($(filter-out ia64 arm zero,$(SRCARCH)),) - BUILDLIBSAPROC = $(LIBSAPROC) - endif - endif -@@ -162,16 +162,17 @@ - endif - - install_saproc: $(BUILDLIBSAPROC) -- @echo "Copying $(LIBSAPROC) to $(DEST_SAPROC)" -+ $(QUIETLY) if [ -e $(LIBSAPROC) ] ; then \ -+ echo "Copying $(LIBSAPROC) to $(DEST_SAPROC)"; \ - ifeq ($(OS_VENDOR), Darwin) -- $(QUIETLY) test -d $(LIBSAPROC_DEBUGINFO) && \ -- cp -f -r $(LIBSAPROC_DEBUGINFO) $(DEST_SAPROC_DEBUGINFO) -+ $test -d $(LIBSAPROC_DEBUGINFO) && \ -+ cp -f -r $(LIBSAPROC_DEBUGINFO) $(DEST_SAPROC_DEBUGINFO); \ - else -- $(QUIETLY) test -f $(LIBSAPROC_DEBUGINFO) && \ -- cp -f $(LIBSAPROC_DEBUGINFO) $(DEST_SAPROC_DEBUGINFO) -+ test -f $(LIBSAPROC_DEBUGINFO) && \ -+ cp -f $(LIBSAPROC_DEBUGINFO) $(DEST_SAPROC_DEBUGINFO); \ - endif -- $(QUIETLY) test -f $(LIBSAPROC_DIZ) && \ -- cp -f $(LIBSAPROC_DIZ) $(DEST_SAPROC_DIZ) -- $(QUIETLY) cp -f $(LIBSAPROC) $(DEST_SAPROC) && echo "Done" -+ test -f $(LIBSAPROC_DIZ) && \ -+ cp -f $(LIBSAPROC_DIZ) $(DEST_SAPROC_DIZ); \ -+ cp -f $(LIBSAPROC) $(DEST_SAPROC) && echo "Done" - - .PHONY: install_saproc ---- ./hotspot/make/bsd/makefiles/vm.make Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/bsd/makefiles/vm.make Sun Feb 10 09:26:05 2019 -0800 -@@ -107,7 +107,7 @@ - # File specific flags - CXXFLAGS += $(CXXFLAGS/BYFILE) - --ifdef DEFAULT_LIBPATH -+ifneq ($(DEFAULT_LIBPATH),) - CXXFLAGS += -DDEFAULT_LIBPATH="\"$(DEFAULT_LIBPATH)\"" - endif - -@@ -130,9 +130,7 @@ - - LIBS += -lm - --ifeq ($(USE_CLANG),) -- LIBS += -pthread --endif -+LIBS += -pthread - - # By default, link the *.o into the library, not the executable. - LINK_INTO$(LINK_INTO) = LIBJVM ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/make/bsd/platform_ppc64 Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,17 @@ -+os_family = bsd -+ -+arch = ppc -+ -+arch_model = ppc_64 -+ -+os_arch = bsd_ppc -+ -+os_arch_model = bsd_ppc_64 -+ -+lib_arch = ppc64 -+ -+compiler = gcc -+ -+gnu_dis_arch = ppc64 -+ -+sysdefs = -DBSD -D_ALLBSD_SOURCE -D_GNU_SOURCE -DPPC64 ---- ./hotspot/make/sa.files Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/make/sa.files Sun Feb 10 09:26:05 2019 -0800 -@@ -45,6 +45,7 @@ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/amd64/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/bsd/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/bsd/amd64/*.java \ -+$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/bsd/ppc64/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/bsd/x86/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/cdbg/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/cdbg/basic/*.java \ -@@ -55,12 +56,15 @@ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/linux/sparc/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/posix/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/posix/elf/*.java \ -+$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/ppc64/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/proc/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/proc/amd64/*.java \ -+$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/proc/ppc64/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/proc/sparc/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/proc/x86/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/remote/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/remote/amd64/*.java \ -+$(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/remote/ppc64/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/remote/sparc/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/remote/x86/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/debugger/sparc/*.java \ -@@ -85,6 +89,7 @@ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/amd64/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/bsd/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/bsd_amd64/*.java \ -+$(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/bsd_ppc64/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/bsd_x86/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/linux/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/linux_amd64/*.java \ -@@ -96,6 +101,7 @@ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/solaris_x86/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/sparc/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/x86/*.java \ -+$(AGENT_SRC_DIR)/sun/jvm/hotspot/runtime/ppc64/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/tools/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/tools/jcore/*.java \ - $(AGENT_SRC_DIR)/sun/jvm/hotspot/tools/soql/*.java \ ---- ./hotspot/src/cpu/ppc/vm/bytes_ppc.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/ppc/vm/bytes_ppc.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -277,5 +277,9 @@ - #if defined(TARGET_OS_ARCH_linux_ppc) - #include "bytes_linux_ppc.inline.hpp" - #endif -+#if defined(TARGET_OS_ARCH_bsd_ppc) -+#include "bytes_bsd_ppc.inline.hpp" -+#endif -+ - - #endif // CPU_PPC_VM_BYTES_PPC_HPP ---- ./hotspot/src/cpu/ppc/vm/interpreter_ppc.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/ppc/vm/interpreter_ppc.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -307,6 +307,8 @@ - // Although AIX runs on big endian CPU, float is in most significant - // word of an argument slot. - __ stfs(floatSlot, 0, arg_c); -+#elif defined(BSD) -+ __ stfs(floatSlot, 4, arg_c); - #else - #error "unknown OS" - #endif ---- ./hotspot/src/cpu/ppc/vm/sharedRuntime_ppc.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/ppc/vm/sharedRuntime_ppc.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -780,6 +780,8 @@ - // Although AIX runs on big endian CPU, float is in the most - // significant word of an argument slot. - #define FLOAT_WORD_OFFSET_IN_SLOT 0 -+#elif defined(BSD) -+#define FLOAT_WORD_OFFSET_IN_SLOT 1 - #else - #error "unknown OS" - #endif ---- ./hotspot/src/cpu/x86/vm/interp_masm_x86_64.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/x86/vm/interp_masm_x86_64.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -650,7 +650,7 @@ - - bind(loop); - // check if current entry is used -- cmpptr(Address(c_rarg1, BasicObjectLock::obj_offset_in_bytes()), (int32_t) NULL); -+ cmpptr(Address(c_rarg1, BasicObjectLock::obj_offset_in_bytes()), 0); - jcc(Assembler::notEqual, exception); - - addptr(c_rarg1, entry_size); // otherwise advance to next entry ---- ./hotspot/src/cpu/x86/vm/interpreterRT_x86_64.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/x86/vm/interpreterRT_x86_64.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -428,10 +428,10 @@ - _from -= Interpreter::stackElementSize; - - if (_num_int_args < Argument::n_int_register_parameters_c-1) { -- *_int_args++ = (*from_addr == 0) ? NULL : (intptr_t)from_addr; -+ *_int_args++ = (*from_addr == 0) ? 0L : (intptr_t) from_addr; - _num_int_args++; - } else { -- *_to++ = (*from_addr == 0) ? NULL : (intptr_t) from_addr; -+ *_to++ = (*from_addr == 0) ? 0L : (intptr_t) from_addr; - } - } - ---- ./hotspot/src/cpu/x86/vm/jni_x86.h Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/x86/vm/jni_x86.h Sun Feb 10 09:26:05 2019 -0800 -@@ -34,7 +34,7 @@ - #ifndef __has_attribute - #define __has_attribute(x) 0 - #endif --#if (defined(__GNUC__) && ((__GNUC__ > 4) || (__GNUC__ == 4) && (__GNUC_MINOR__ > 2))) || __has_attribute(visibility) -+#if (defined(__clang__) || (defined(__GNUC__) && ((__GNUC__ > 4) || (__GNUC__ == 4) && (__GNUC_MINOR__ > 2)))) || __has_attribute(visibility) - #define JNIEXPORT __attribute__((visibility("default"))) - #define JNIIMPORT __attribute__((visibility("default"))) - #else ---- ./hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/x86/vm/sharedRuntime_x86_32.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -2266,7 +2266,7 @@ - if (!is_critical_native) { - // reset handle block - __ movptr(rcx, Address(thread, JavaThread::active_handles_offset())); -- __ movl(Address(rcx, JNIHandleBlock::top_offset_in_bytes()), NULL_WORD); -+ __ movl(Address(rcx, JNIHandleBlock::top_offset_in_bytes()), (int32_t)NULL_WORD); - - // Any exception pending? - __ cmpptr(Address(thread, in_bytes(Thread::pending_exception_offset())), (int32_t)NULL_WORD); ---- ./hotspot/src/cpu/x86/vm/sharedRuntime_x86_64.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/x86/vm/sharedRuntime_x86_64.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -23,9 +23,12 @@ - */ - - #include "precompiled.hpp" --#ifndef _WINDOWS -+#if !defined(_WINDOWS) && !defined(_ALLBSD_SOURCE) - #include "alloca.h" - #endif -+#ifdef _ALLBSD_SOURCE -+#include -+#endif - #include "asm/macroAssembler.hpp" - #include "asm/macroAssembler.inline.hpp" - #include "code/debugInfoRec.hpp" ---- ./hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/x86/vm/stubGenerator_x86_64.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -489,7 +489,7 @@ - // make sure this code is only executed if there is a pending exception - { - Label L; -- __ cmpptr(Address(r15_thread, Thread::pending_exception_offset()), (int32_t) NULL); -+ __ cmpptr(Address(r15_thread, Thread::pending_exception_offset()), 0); - __ jcc(Assembler::notEqual, L); - __ stop("StubRoutines::forward exception: no pending exception (1)"); - __ bind(L); ---- ./hotspot/src/cpu/x86/vm/templateInterpreter_x86_32.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/x86/vm/templateInterpreter_x86_32.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -1293,7 +1293,7 @@ - - // reset handle block - __ movptr(t, Address(thread, JavaThread::active_handles_offset())); -- __ movl(Address(t, JNIHandleBlock::top_offset_in_bytes()), NULL_WORD); -+ __ movl(Address(t, JNIHandleBlock::top_offset_in_bytes()), (int32_t)NULL_WORD); - - // If result was an oop then unbox and save it in the frame - { Label L; ---- ./hotspot/src/cpu/x86/vm/x86_32.ad Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/cpu/x86/vm/x86_32.ad Sun Feb 10 09:26:05 2019 -0800 -@@ -1250,6 +1250,7 @@ - - - Unimplemented(); -+ return 0; - } - - #ifndef PRODUCT ---- ./hotspot/src/os/aix/vm/os_aix.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/aix/vm/os_aix.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -5246,6 +5246,10 @@ - return 0; - } - -+ const int n = strlen(buffer); -+ -+ jio_snprintf(buffer + n, bufferSize - n, "/core or core.%d", current_process_id()); -+ - return strlen(buffer); - } - ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os/bsd/vm/decoder_bsd.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,53 @@ -+/* -+ * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#ifndef __APPLE__ -+#include "prims/jvm.h" -+#include "utilities/decoder_elf.hpp" -+ -+#include -+ -+bool ElfDecoder::demangle(const char* symbol, char *buf, int buflen) { -+ int status; -+ char* result; -+ size_t size = (size_t)buflen; -+ -+#ifdef PPC64 -+ // On PPC64 ElfDecoder::decode() may return a dot (.) prefixed name -+ // (see elfFuncDescTable.hpp for details) -+ if (symbol && *symbol == '.') symbol += 1; -+#endif -+ -+ // Don't pass buf to __cxa_demangle. In case of the 'buf' is too small, -+ // __cxa_demangle will call system "realloc" for additional memory, which -+ // may use different malloc/realloc mechanism that allocates 'buf'. -+ if ((result = abi::__cxa_demangle(symbol, NULL, NULL, &status)) != NULL) { -+ jio_snprintf(buf, buflen, "%s", result); -+ // call c library's free -+ ::free(result); -+ return true; -+ } -+ return false; -+} -+#endif ---- ./hotspot/src/os/bsd/vm/jsig.c Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/bsd/vm/jsig.c Sun Feb 10 09:26:05 2019 -0800 -@@ -165,9 +165,8 @@ - } - - sa_handler_t sigset(int sig, sa_handler_t disp) { -- printf("sigset() is not supported by BSD"); -- exit(0); -- } -+ return set_signal(sig, disp, true); -+} - - static int call_os_sigaction(int sig, const struct sigaction *act, - struct sigaction *oact) { ---- ./hotspot/src/os/bsd/vm/jvm_bsd.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/bsd/vm/jvm_bsd.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -50,6 +50,7 @@ - case INTERRUPT_SIGNAL: - case SIGFPE: - case SIGILL: -+ case SIGBUS: - case SIGSEGV: - - /* The following signal is used by the VM to dump thread stacks unless -@@ -110,71 +111,29 @@ - JVM_END - - /* -- All the defined signal names for Bsd. -+ All the defined signal names for BSD are defined by sys_signame[]. - - NOTE that not all of these names are accepted by our Java implementation - - Via an existing claim by the VM, sigaction restrictions, or - the "rules of Unix" some of these names will be rejected at runtime. - For example the VM sets up to handle USR1, sigaction returns EINVAL for -- STOP, and Bsd simply doesn't allow catching of KILL. -+ STOP, and BSD simply doesn't allow catching of KILL. - - Here are the names currently accepted by a user of sun.misc.Signal with - 1.4.1 (ignoring potential interaction with use of chaining, etc): - -- HUP, INT, TRAP, ABRT, IOT, BUS, USR2, PIPE, ALRM, TERM, STKFLT, -- CLD, CHLD, CONT, TSTP, TTIN, TTOU, URG, XCPU, XFSZ, VTALRM, PROF, -- WINCH, POLL, IO, PWR, SYS -- -+ HUP, INT, TRAP, ABRT, EMT, SYS, PIPE, ALRM, TERM, URG, TSTP, CONT, -+ CHLD, TTIN, TTOU, IO, XCPU, XFSZ, VTALRM, PROF, WINCH, INFO, USR2 - */ - --struct siglabel { -- const char *name; -- int number; --}; -- --struct siglabel siglabels[] = { -- /* derived from /usr/include/bits/signum.h on RH7.2 */ -- "HUP", SIGHUP, /* Hangup (POSIX). */ -- "INT", SIGINT, /* Interrupt (ANSI). */ -- "QUIT", SIGQUIT, /* Quit (POSIX). */ -- "ILL", SIGILL, /* Illegal instruction (ANSI). */ -- "TRAP", SIGTRAP, /* Trace trap (POSIX). */ -- "ABRT", SIGABRT, /* Abort (ANSI). */ -- "EMT", SIGEMT, /* EMT trap */ -- "FPE", SIGFPE, /* Floating-point exception (ANSI). */ -- "KILL", SIGKILL, /* Kill, unblockable (POSIX). */ -- "BUS", SIGBUS, /* BUS error (4.2 BSD). */ -- "SEGV", SIGSEGV, /* Segmentation violation (ANSI). */ -- "SYS", SIGSYS, /* Bad system call. Only on some Bsden! */ -- "PIPE", SIGPIPE, /* Broken pipe (POSIX). */ -- "ALRM", SIGALRM, /* Alarm clock (POSIX). */ -- "TERM", SIGTERM, /* Termination (ANSI). */ -- "URG", SIGURG, /* Urgent condition on socket (4.2 BSD). */ -- "STOP", SIGSTOP, /* Stop, unblockable (POSIX). */ -- "TSTP", SIGTSTP, /* Keyboard stop (POSIX). */ -- "CONT", SIGCONT, /* Continue (POSIX). */ -- "CHLD", SIGCHLD, /* Child status has changed (POSIX). */ -- "TTIN", SIGTTIN, /* Background read from tty (POSIX). */ -- "TTOU", SIGTTOU, /* Background write to tty (POSIX). */ -- "IO", SIGIO, /* I/O now possible (4.2 BSD). */ -- "XCPU", SIGXCPU, /* CPU limit exceeded (4.2 BSD). */ -- "XFSZ", SIGXFSZ, /* File size limit exceeded (4.2 BSD). */ -- "VTALRM", SIGVTALRM, /* Virtual alarm clock (4.2 BSD). */ -- "PROF", SIGPROF, /* Profiling alarm clock (4.2 BSD). */ -- "WINCH", SIGWINCH, /* Window size change (4.3 BSD, Sun). */ -- "INFO", SIGINFO, /* Information request. */ -- "USR1", SIGUSR1, /* User-defined signal 1 (POSIX). */ -- "USR2", SIGUSR2 /* User-defined signal 2 (POSIX). */ -- }; -- - JVM_ENTRY_NO_ENV(jint, JVM_FindSignal(const char *name)) - - /* find and return the named signal's number */ - -- for(uint i=0; i= NSIG) -+ return false; -+ char signame[8]; -+ const char *s = sys_signame[signo]; -+ uint i; -+ for (i = 0; i < sizeof(signame) - 1 && s[i] != '\0'; i++) -+ signame[i] = toupper(s[i]); -+ signame[i] = '\0'; -+ jio_snprintf(buf, len, "SIG%s", signame); -+ return true; - } ---- ./hotspot/src/os/bsd/vm/jvm_bsd.h Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/bsd/vm/jvm_bsd.h Sun Feb 10 09:26:05 2019 -0800 -@@ -112,20 +112,6 @@ - #define SHUTDOWN2_SIGNAL SIGINT - #define SHUTDOWN3_SIGNAL SIGTERM - --#ifndef SIGRTMIN --#ifdef __OpenBSD__ --#define SIGRTMIN 1 --#else --#define SIGRTMIN 33 --#endif --#endif --#ifndef SIGRTMAX --#ifdef __OpenBSD__ --#define SIGRTMAX 31 --#else --#define SIGRTMAX 63 --#endif --#endif - #endif /* JVM_MD_H */ - - #endif // OS_BSD_VM_JVM_BSD_H ---- ./hotspot/src/os/bsd/vm/osThread_bsd.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/bsd/vm/osThread_bsd.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -30,7 +30,7 @@ - - void OSThread::pd_initialize() { - assert(this != NULL, "check"); --#ifdef __APPLE__ -+#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) - _thread_id = 0; - #else - _thread_id = NULL; ---- ./hotspot/src/os/bsd/vm/os_bsd.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/bsd/vm/os_bsd.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -97,16 +97,31 @@ - # include - #ifndef __APPLE__ - # include -+# include - #endif - # include - # include - # include - # include - -+#ifdef __FreeBSD__ -+# if __FreeBSD_version > 900030 -+# include -+# else -+# include -+# endif -+# include -+# include -+#endif -+ - #if defined(__FreeBSD__) || defined(__NetBSD__) - # include - #endif - -+#ifdef __NetBSD__ -+#include -+#endif -+ - #ifdef __APPLE__ - # include // semaphore_* API - # include -@@ -136,9 +151,11 @@ - volatile uint64_t os::Bsd::_max_abstime = 0; - #else - int (*os::Bsd::_clock_gettime)(clockid_t, struct timespec *) = NULL; -+int (*os::Bsd::_getcpuclockid)(pthread_t, clockid_t *) = NULL; - #endif - pthread_t os::Bsd::_main_thread; - int os::Bsd::_page_size = -1; -+pthread_condattr_t os::Bsd::_condattr[1]; - - static jlong initial_time_count=0; - -@@ -169,6 +186,27 @@ - - // available here means free - julong os::Bsd::available_memory() { -+#ifdef __FreeBSD__ -+ static const char *vm_stats[] = { -+ "vm.stats.vm.v_free_count", -+ "vm.stats.vm.v_cache_count", -+ "vm.stats.vm.v_inactive_count" -+ }; -+ size_t size; -+ julong free_pages; -+ u_int i, npages; -+ -+ for (i = 0, free_pages = 0; i < sizeof(vm_stats) / sizeof(vm_stats[0]); i++) { -+ size = sizeof(npages); -+ if (sysctlbyname(vm_stats[i], &npages, &size, NULL, 0) == -1) { -+ free_pages = 0; -+ break; -+ } -+ free_pages += npages; -+ } -+ if (free_pages > 0) -+ return free_pages * os::vm_page_size(); -+#endif - uint64_t available = physical_memory() >> 2; - #ifdef __APPLE__ - mach_msg_type_number_t count = HOST_VM_INFO64_COUNT; -@@ -208,7 +246,7 @@ - static bool init = false; - static bool privileges = false; - if (!init) { -- privileges = (getuid() != geteuid()) || (getgid() != getegid()); -+ privileges = issetugid(); - init = true; - } - return privileges; -@@ -229,6 +267,8 @@ - static char cpu_arch[] = "arm"; - #elif defined(PPC32) - static char cpu_arch[] = "ppc"; -+#elif defined(PPC64) -+static char cpu_arch[] = "ppc64"; - #elif defined(SPARC) - # ifdef _LP64 - static char cpu_arch[] = "sparcv9"; -@@ -272,6 +312,8 @@ - - #if defined (HW_MEMSIZE) // Apple - mib[1] = HW_MEMSIZE; -+#elif defined(HW_PHYSMEM64) // OpenBSD & NetBSD -+ mib[1] = HW_PHYSMEM64; - #elif defined(HW_PHYSMEM) // Most of BSD - mib[1] = HW_PHYSMEM; - #elif defined(HW_REALMEM) // Old FreeBSD -@@ -411,12 +453,21 @@ - const char *v = ::getenv("LD_LIBRARY_PATH"); - const char *v_colon = ":"; - if (v == NULL) { v = ""; v_colon = ""; } -+#ifdef __APPLE__ - // That's +1 for the colon and +1 for the trailing '\0'. - char *ld_library_path = (char *)NEW_C_HEAP_ARRAY(char, - strlen(v) + 1 + - sizeof(SYS_EXT_DIR) + sizeof("/lib/") + strlen(cpu_arch) + sizeof(DEFAULT_LIBPATH) + 1, - mtInternal); - sprintf(ld_library_path, "%s%s" SYS_EXT_DIR "/lib/%s:" DEFAULT_LIBPATH, v, v_colon, cpu_arch); -+#else -+ // That's +1 for the colon and +1 for the trailing '\0'. -+ char *ld_library_path = (char *)NEW_C_HEAP_ARRAY(char, -+ strlen(v) + 1 + -+ sizeof(PACKAGE_PATH) + sizeof("/lib") + 1, -+ mtInternal); -+ sprintf(ld_library_path, "%s%s" PACKAGE_PATH "/lib", v, v_colon); -+#endif - Arguments::set_library_path(ld_library_path); - FREE_C_HEAP_ARRAY(char, ld_library_path, mtInternal); - } -@@ -591,6 +642,9 @@ - sigaddset(&unblocked_sigs, SIGSEGV); - sigaddset(&unblocked_sigs, SIGBUS); - sigaddset(&unblocked_sigs, SIGFPE); -+#if defined(PPC64) -+ sigaddset(&unblocked_sigs, SIGTRAP); -+#endif - sigaddset(&unblocked_sigs, SR_signum); - - if (!ReduceSignalUsage) { -@@ -983,6 +1037,13 @@ - bool os::vtime_enabled() { return false; } - - double os::elapsedVTime() { -+#ifdef RUSAGE_THREAD -+ struct rusage usage; -+ int retval = getrusage(RUSAGE_THREAD, &usage); -+ if (retval == 0) { -+ return (double) (usage.ru_utime.tv_sec + usage.ru_stime.tv_sec) + (double) (usage.ru_utime.tv_usec + usage.ru_stime.tv_usec) / (1000 * 1000); -+ } -+#endif - // better than nothing, but not much - return elapsedTime(); - } -@@ -1008,11 +1069,15 @@ - void os::Bsd::clock_init() { - struct timespec res; - struct timespec tp; -+ _getcpuclockid = (int (*)(pthread_t, clockid_t *))dlsym(RTLD_DEFAULT, "pthread_getcpuclockid"); - if (::clock_getres(CLOCK_MONOTONIC, &res) == 0 && - ::clock_gettime(CLOCK_MONOTONIC, &tp) == 0) { - // yes, monotonic clock is supported - _clock_gettime = ::clock_gettime; -+ return; - } -+ warning("No monotonic clock was available - timed services may " \ -+ "be adversely affected if the time-of-day clock changes"); - } - #endif - -@@ -1048,7 +1113,7 @@ - jlong os::javaTimeNanos() { - if (Bsd::supports_monotonic_clock()) { - struct timespec tp; -- int status = Bsd::_clock_gettime(CLOCK_MONOTONIC, &tp); -+ int status = ::clock_gettime(CLOCK_MONOTONIC, &tp); - assert(status == 0, "gettime error"); - jlong result = jlong(tp.tv_sec) * (1000 * 1000 * 1000) + jlong(tp.tv_nsec); - return result; -@@ -1190,35 +1255,38 @@ - pid_t os::Bsd::gettid() { - int retval = -1; - --#ifdef __APPLE__ //XNU kernel -+#if defined(__APPLE__) //XNU kernel - // despite the fact mach port is actually not a thread id use it - // instead of syscall(SYS_thread_selfid) as it certainly fits to u4 - retval = ::pthread_mach_thread_np(::pthread_self()); - guarantee(retval != 0, "just checking"); - return retval; - -+#elif defined(__FreeBSD__) -+#if __FreeBSD_version > 900030 -+ return ::pthread_getthreadid_np(); - #else -- #ifdef __FreeBSD__ -- retval = syscall(SYS_thr_self); -- #else -- #ifdef __OpenBSD__ -+ long tid; -+ thr_self(&tid); -+ return (pid_t)tid; -+#endif -+#elif defined(__OpenBSD__) - retval = syscall(SYS_getthrid); -- #else -- #ifdef __NetBSD__ -- retval = (pid_t) syscall(SYS__lwp_self); -- #endif -- #endif -- #endif -+#elif defined(__NetBSD__) -+ retval = (pid_t) _lwp_self(); - #endif - - if (retval == -1) { - return getpid(); - } -+ return retval; - } - - intx os::current_thread_id() { --#ifdef __APPLE__ -+#if defined(__APPLE__) - return (intx)::pthread_mach_thread_np(::pthread_self()); -+#elif defined(__FreeBSD__) -+ return os::Bsd::gettid(); - #else - return (intx)::pthread_self(); - #endif -@@ -1563,7 +1631,7 @@ - // Identify compatability class for VM's architecture and library's architecture - // Obtain string descriptions for architectures - -- arch_t lib_arch={elf_head.e_machine,0,elf_head.e_ident[EI_CLASS], elf_head.e_ident[EI_DATA], NULL}; -+ arch_t lib_arch={ elf_head.e_machine, 0, (char) elf_head.e_ident[EI_CLASS], (char) elf_head.e_ident[EI_DATA], NULL}; - int running_arch_index=-1; - - for (unsigned int i=0 ; i < ARRAY_SIZE(arch_array) ; i++ ) { -@@ -1691,14 +1759,14 @@ - } - - void os::print_os_info_brief(outputStream* st) { -- st->print("Bsd"); -+ st->print_cr("BSD"); - - os::Posix::print_uname_info(st); - } - - void os::print_os_info(outputStream* st) { - st->print("OS:"); -- st->print("Bsd"); -+ st->print_cr("BSD"); - - os::Posix::print_uname_info(st); - -@@ -1711,6 +1779,29 @@ - // Nothing to do for now. - } - -+#ifdef __FreeBSD__ -+static void get_swap_info(int *total_pages, int *used_pages) { -+ struct xswdev xsw; -+ size_t mibsize, size; -+ int mib[16]; -+ int n, total = 0, used = 0; -+ -+ mibsize = sizeof(mib) / sizeof(mib[0]); -+ if (sysctlnametomib("vm.swap_info", mib, &mibsize) != -1) { -+ for (n = 0; ; n++) { -+ mib[mibsize] = n; -+ size = sizeof(xsw); -+ if (sysctl(mib, mibsize + 1, &xsw, &size, NULL, 0) == -1) -+ break; -+ total += xsw.xsw_nblks; -+ used += xsw.xsw_used; -+ } -+ } -+ *total_pages = total; -+ *used_pages = used; -+} -+#endif -+ - void os::print_memory_info(outputStream* st) { - - st->print("Memory:"); -@@ -1720,11 +1811,14 @@ - os::physical_memory() >> 10); - st->print("(" UINT64_FORMAT "k free)", - os::available_memory() >> 10); -- st->cr(); -- -- // meminfo -- st->print("\n/proc/meminfo:\n"); -- _print_ascii_file("/proc/meminfo", st); -+#ifdef __FreeBSD__ -+ int total, used; -+ get_swap_info(&total, &used); -+ st->print(", swap " UINT64_FORMAT "k", -+ (total * os::vm_page_size()) >> 10); -+ st->print("(" UINT64_FORMAT "k free)", -+ ((total - used) * os::vm_page_size()) >> 10); -+#endif - st->cr(); - } - -@@ -1763,6 +1857,9 @@ - print_signal_handler(st, SHUTDOWN2_SIGNAL , buf, buflen); - print_signal_handler(st, SHUTDOWN3_SIGNAL , buf, buflen); - print_signal_handler(st, BREAK_SIGNAL, buf, buflen); -+#if defined(PPC64) -+ print_signal_handler(st, SIGTRAP, buf, buflen); -+#endif - } - - static char saved_jvm_path[MAXPATHLEN] = {0}; -@@ -1960,7 +2057,7 @@ - os_semaphore_t _semaphore; - }; - --Semaphore::Semaphore() : _semaphore(0) { -+Semaphore::Semaphore() { - SEM_INIT(_semaphore, 0); - } - -@@ -2148,7 +2245,7 @@ - if (::write(fd, "", 1) == 1) { - mmap(base, size, - PROT_READ|PROT_WRITE|PROT_EXEC, -- MAP_PRIVATE|MAP_FIXED|MAP_NORESERVE, fd, 0); -+ MAP_PRIVATE|MAP_FIXED, fd, 0); - } - } - ::close(fd); -@@ -2258,7 +2355,7 @@ - return ::mprotect(addr, size, PROT_NONE) == 0; - #else - uintptr_t res = (uintptr_t) ::mmap(addr, size, PROT_NONE, -- MAP_PRIVATE|MAP_FIXED|MAP_NORESERVE|MAP_ANONYMOUS, -1, 0); -+ MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0); - return res != (uintptr_t) MAP_FAILED; - #endif - } -@@ -2285,7 +2382,7 @@ - char * addr; - int flags; - -- flags = MAP_PRIVATE | MAP_NORESERVE | MAP_ANONYMOUS; -+ flags = MAP_PRIVATE | MAP_ANONYMOUS; - if (fixed) { - assert((uintptr_t)requested_addr % os::Bsd::page_size() == 0, "unaligned address"); - flags |= MAP_FIXED; -@@ -2774,6 +2871,7 @@ - return OS_OK; - #elif defined(__FreeBSD__) - int ret = pthread_setprio(thread->osthread()->pthread_id(), newpri); -+ return (ret == 0) ? OS_OK : OS_ERR; - #elif defined(__APPLE__) || defined(__NetBSD__) - struct sched_param sp; - int policy; -@@ -3320,6 +3418,9 @@ - set_signal_handler(SIGBUS, true); - set_signal_handler(SIGILL, true); - set_signal_handler(SIGFPE, true); -+#if defined(PPC64) -+ set_signal_handler(SIGTRAP, true); -+#endif - set_signal_handler(SIGXFSZ, true); - - #if defined(__APPLE__) -@@ -3368,18 +3469,6 @@ - } - } - -- --///// --// glibc on Bsd platform uses non-documented flag --// to indicate, that some special sort of signal --// trampoline is used. --// We will never set this flag, and we should --// ignore this flag in our diagnostic --#ifdef SIGNIFICANT_SIGNAL_MASK --#undef SIGNIFICANT_SIGNAL_MASK --#endif --#define SIGNIFICANT_SIGNAL_MASK (~0x04000000) -- - static const char* get_signal_handler_name(address handler, - char* buf, int buflen) { - int offset; -@@ -3403,9 +3492,6 @@ - - sigaction(sig, NULL, &sa); - -- // See comment for SIGNIFICANT_SIGNAL_MASK define -- sa.sa_flags &= SIGNIFICANT_SIGNAL_MASK; -- - st->print("%s: ", os::exception_name(sig, buf, buflen)); - - address handler = (sa.sa_flags & SA_SIGINFO) -@@ -3427,7 +3513,7 @@ - // May be, handler was resetted by VMError? - if(rh != NULL) { - handler = rh; -- sa.sa_flags = VMError::get_resetted_sigflags(sig) & SIGNIFICANT_SIGNAL_MASK; -+ sa.sa_flags = VMError::get_resetted_sigflags(sig); - } - - st->print(", sa_flags="); -@@ -3469,6 +3555,9 @@ - DO_SIGNAL_CHECK(SIGBUS); - DO_SIGNAL_CHECK(SIGPIPE); - DO_SIGNAL_CHECK(SIGXFSZ); -+#if defined(PPC64) -+ DO_SIGNAL_CHECK(SIGTRAP); -+#endif - - - // ReduceSignalUsage allows the user to override these handlers -@@ -3503,8 +3592,6 @@ - os_sigaction(sig, (struct sigaction*)NULL, &act); - - -- act.sa_flags &= SIGNIFICANT_SIGNAL_MASK; -- - address thisHandler = (act.sa_flags & SA_SIGINFO) - ? CAST_FROM_FN_PTR(address, act.sa_sigaction) - : CAST_FROM_FN_PTR(address, act.sa_handler) ; -@@ -3569,6 +3656,14 @@ - - extern bool signal_name(int signo, char* buf, size_t len); - -+#ifndef SIGRTMAX -+#ifdef __OpenBSD__ -+#define SIGRTMAX 31 -+#else -+#define SIGRTMAX 63 -+#endif -+#endif -+ - const char* os::exception_name(int exception_code, char* buf, size_t size) { - if (0 < exception_code && exception_code <= SIGRTMAX) { - // signal -@@ -3617,6 +3712,25 @@ - Bsd::clock_init(); - initial_time_count = javaTimeNanos(); - -+ // pthread_condattr initialization for monotonic clock -+ int status; -+ pthread_condattr_t* _condattr = os::Bsd::condAttr(); -+ if ((status = pthread_condattr_init(_condattr)) != 0) { -+ fatal(err_msg("pthread_condattr_init: %s", strerror(status))); -+ } -+ // Only set the clock if CLOCK_MONOTONIC is available -+ if (Bsd::supports_monotonic_clock()) { -+ if ((status = pthread_condattr_setclock(_condattr, CLOCK_MONOTONIC)) != 0) { -+ if (status == EINVAL) { -+ warning("Unable to use monotonic clock with relative timed-waits" \ -+ " - changes to the time-of-day clock may have adverse affects"); -+ } else { -+ fatal(err_msg("pthread_condattr_setclock: %s", strerror(status))); -+ } -+ } -+ } -+ // else it defaults to CLOCK_REALTIME -+ - #ifdef __APPLE__ - // XXXDARWIN - // Work around the unaligned VM callbacks in hotspot's -@@ -3775,6 +3889,20 @@ - return ActiveProcessorCount; - } - -+#ifdef __FreeBSD__ -+ int online_cpus = 0; -+ cpuset_t mask; -+ if (cpuset_getaffinity(CPU_LEVEL_WHICH, CPU_WHICH_PID, -1, sizeof(mask), -+ &mask) == 0) -+ for (u_int i = 0; i < sizeof(mask) / sizeof(long); i++) -+ online_cpus += __builtin_popcountl(((long *)&mask)[i]); -+ if (online_cpus > 0 && online_cpus <= _processor_count) -+ return online_cpus; -+ online_cpus = sysconf(_SC_NPROCESSORS_ONLN); -+ if (online_cpus >= 1) -+ return online_cpus; -+#endif -+ - return _processor_count; - } - -@@ -3986,7 +4114,10 @@ - } - int fd; - int o_delete = (oflag & O_DELETE); -- oflag = oflag & ~O_DELETE; -+ oflag &= ~O_DELETE; -+#ifdef O_CLOEXEC -+ oflag |= O_CLOEXEC; -+#endif - - fd = ::open(path, oflag, mode); - if (fd == -1) return -1; -@@ -4031,7 +4162,7 @@ - * 4843136: (process) pipe file descriptor from Runtime.exec not being closed - * 6339493: (process) Runtime.exec does not close all file descriptors on Solaris 9 - */ --#ifdef FD_CLOEXEC -+#if !defined(O_CLOEXEC) && defined(FD_CLOEXEC) - { - int flags = ::fcntl(fd, F_GETFD); - if (flags != -1) -@@ -4171,8 +4302,9 @@ - #ifdef __APPLE__ - return os::thread_cpu_time(Thread::current(), true /* user + sys */); - #else -- Unimplemented(); -- return 0; -+ if (Bsd::_getcpuclockid != NULL) -+ return os::thread_cpu_time(Thread::current(), true /* user + sys */); -+ return -1; - #endif - } - -@@ -4180,8 +4312,9 @@ - #ifdef __APPLE__ - return os::thread_cpu_time(thread, true /* user + sys */); - #else -- Unimplemented(); -- return 0; -+ if (Bsd::_getcpuclockid != NULL) -+ return os::thread_cpu_time(thread, true /* user + sys */); -+ return -1; - #endif - } - -@@ -4189,8 +4322,9 @@ - #ifdef __APPLE__ - return os::thread_cpu_time(Thread::current(), user_sys_cpu_time); - #else -- Unimplemented(); -- return 0; -+ if (Bsd::_getcpuclockid != NULL) -+ return os::thread_cpu_time(Thread::current(), user_sys_cpu_time); -+ return -1; - #endif - } - -@@ -4215,8 +4349,41 @@ - return ((jlong)tinfo.user_time.seconds * 1000000000) + ((jlong)tinfo.user_time.microseconds * (jlong)1000); - } - #else -- Unimplemented(); -- return 0; -+ if (user_sys_cpu_time && Bsd::_getcpuclockid != NULL) { -+ struct timespec tp; -+ clockid_t clockid; -+ int ret; -+ -+ /* -+ * XXX This is essentially a copy of the Linux implementation, -+ * but with fewer indirections. -+ */ -+ ret = Bsd::_getcpuclockid(thread->osthread()->pthread_id(), &clockid); -+ if (ret != 0) -+ return -1; -+ /* NB: _clock_gettime only needs to be valid for CLOCK_MONOTONIC. */ -+ ret = ::clock_gettime(clockid, &tp); -+ if (ret != 0) -+ return -1; -+ return (tp.tv_sec * NANOSECS_PER_SEC) + tp.tv_nsec; -+ } -+#ifdef RUSAGE_THREAD -+ if (thread == Thread::current()) { -+ struct rusage usage; -+ jlong nanos; -+ -+ if (getrusage(RUSAGE_THREAD, &usage) != 0) -+ return -1; -+ nanos = (jlong)usage.ru_utime.tv_sec * NANOSECS_PER_SEC; -+ nanos += (jlong)usage.ru_utime.tv_usec * 1000; -+ if (user_sys_cpu_time) { -+ nanos += (jlong)usage.ru_stime.tv_sec * NANOSECS_PER_SEC; -+ nanos += (jlong)usage.ru_stime.tv_usec * 1000; -+ } -+ return nanos; -+ } -+#endif -+ return -1; - #endif - } - -@@ -4239,7 +4406,7 @@ - #ifdef __APPLE__ - return true; - #else -- return false; -+ return (Bsd::_getcpuclockid != NULL); - #endif - } - -@@ -4337,21 +4504,36 @@ - - static struct timespec* compute_abstime(struct timespec* abstime, jlong millis) { - if (millis < 0) millis = 0; -- struct timeval now; -- int status = gettimeofday(&now, NULL); -- assert(status == 0, "gettimeofday"); -+ - jlong seconds = millis / 1000; - millis %= 1000; - if (seconds > 50000000) { // see man cond_timedwait(3T) - seconds = 50000000; - } -- abstime->tv_sec = now.tv_sec + seconds; -- long usec = now.tv_usec + millis * 1000; -- if (usec >= 1000000) { -- abstime->tv_sec += 1; -- usec -= 1000000; -+ -+ if (os::Bsd::supports_monotonic_clock()) { -+ struct timespec now; -+ int status = ::clock_gettime(CLOCK_MONOTONIC, &now); -+ assert_status(status == 0, status, "clock_gettime"); -+ abstime->tv_sec = now.tv_sec + seconds; -+ long nanos = now.tv_nsec + millis * NANOSECS_PER_MILLISEC; -+ if (nanos >= NANOSECS_PER_SEC) { -+ abstime->tv_sec += 1; -+ nanos -= NANOSECS_PER_SEC; -+ } -+ abstime->tv_nsec = nanos; -+ } else { -+ struct timeval now; -+ int status = gettimeofday(&now, NULL); -+ assert(status == 0, "gettimeofday"); -+ abstime->tv_sec = now.tv_sec + seconds; -+ long usec = now.tv_usec + millis * 1000; -+ if (usec >= 1000000) { -+ abstime->tv_sec += 1; -+ usec -= 1000000; -+ } -+ abstime->tv_nsec = usec * 1000; - } -- abstime->tv_nsec = usec * 1000; - return abstime; - } - -@@ -4443,7 +4625,7 @@ - status = os::Bsd::safe_cond_timedwait(_cond, _mutex, &abst); - if (status != 0 && WorkAroundNPTLTimedWaitHang) { - pthread_cond_destroy (_cond); -- pthread_cond_init (_cond, NULL) ; -+ pthread_cond_init (_cond, os::Bsd::condAttr()) ; - } - assert_status(status == 0 || status == EINTR || - status == ETIMEDOUT, -@@ -4544,32 +4726,50 @@ - - static void unpackTime(struct timespec* absTime, bool isAbsolute, jlong time) { - assert (time > 0, "convertTime"); -- -- struct timeval now; -- int status = gettimeofday(&now, NULL); -- assert(status == 0, "gettimeofday"); -- -- time_t max_secs = now.tv_sec + MAX_SECS; -- -- if (isAbsolute) { -- jlong secs = time / 1000; -- if (secs > max_secs) { -- absTime->tv_sec = max_secs; -+ time_t max_secs = 0; -+ -+ if (!os::Bsd::supports_monotonic_clock() || isAbsolute) { -+ struct timeval now; -+ int status = gettimeofday(&now, NULL); -+ assert(status == 0, "gettimeofday"); -+ -+ max_secs = now.tv_sec + MAX_SECS; -+ -+ if (isAbsolute) { -+ jlong secs = time / 1000; -+ if (secs > max_secs) { -+ absTime->tv_sec = max_secs; -+ } else { -+ absTime->tv_sec = secs; -+ } -+ absTime->tv_nsec = (time % 1000) * NANOSECS_PER_MILLISEC; -+ } else { -+ jlong secs = time / NANOSECS_PER_SEC; -+ if (secs >= MAX_SECS) { -+ absTime->tv_sec = max_secs; -+ absTime->tv_nsec = 0; -+ } else { -+ absTime->tv_sec = now.tv_sec + secs; -+ absTime->tv_nsec = (time % NANOSECS_PER_SEC) + now.tv_usec*1000; -+ if (absTime->tv_nsec >= NANOSECS_PER_SEC) { -+ absTime->tv_nsec -= NANOSECS_PER_SEC; -+ ++absTime->tv_sec; // note: this must be <= max_secs -+ } -+ } - } -- else { -- absTime->tv_sec = secs; -- } -- absTime->tv_nsec = (time % 1000) * NANOSECS_PER_MILLISEC; -- } -- else { -+ } else { -+ // must be relative using monotonic clock -+ struct timespec now; -+ int status = ::clock_gettime(CLOCK_MONOTONIC, &now); -+ assert_status(status == 0, status, "clock_gettime"); -+ max_secs = now.tv_sec + MAX_SECS; - jlong secs = time / NANOSECS_PER_SEC; - if (secs >= MAX_SECS) { - absTime->tv_sec = max_secs; - absTime->tv_nsec = 0; -- } -- else { -+ } else { - absTime->tv_sec = now.tv_sec + secs; -- absTime->tv_nsec = (time % NANOSECS_PER_SEC) + now.tv_usec*1000; -+ absTime->tv_nsec = (time % NANOSECS_PER_SEC) + now.tv_nsec; - if (absTime->tv_nsec >= NANOSECS_PER_SEC) { - absTime->tv_nsec -= NANOSECS_PER_SEC; - ++absTime->tv_sec; // note: this must be <= max_secs -@@ -4649,15 +4849,19 @@ - jt->set_suspend_equivalent(); - // cleared by handle_special_suspend_equivalent_condition() or java_suspend_self() - -+ assert(_cur_index == -1, "invariant"); - if (time == 0) { -- status = pthread_cond_wait (_cond, _mutex) ; -+ _cur_index = REL_INDEX; // arbitrary choice when not timed -+ status = pthread_cond_wait (&_cond[_cur_index], _mutex) ; - } else { -- status = os::Bsd::safe_cond_timedwait (_cond, _mutex, &absTime) ; -+ _cur_index = isAbsolute ? ABS_INDEX : REL_INDEX; -+ status = os::Bsd::safe_cond_timedwait (&_cond[_cur_index], _mutex, &absTime) ; - if (status != 0 && WorkAroundNPTLTimedWaitHang) { -- pthread_cond_destroy (_cond) ; -- pthread_cond_init (_cond, NULL); -+ pthread_cond_destroy (&_cond[_cur_index]) ; -+ pthread_cond_init (&_cond[_cur_index], isAbsolute ? NULL : os::Bsd::condAttr()); - } - } -+ _cur_index = -1; - assert_status(status == 0 || status == EINTR || - status == ETIMEDOUT, - status, "cond_timedwait"); -@@ -4686,17 +4890,26 @@ - s = _counter; - _counter = 1; - if (s < 1) { -- if (WorkAroundNPTLTimedWaitHang) { -- status = pthread_cond_signal (_cond) ; -- assert (status == 0, "invariant") ; -+ // thread might be parked -+ if (_cur_index != -1) { -+ // thread is definitely parked -+ if (WorkAroundNPTLTimedWaitHang) { -+ status = pthread_cond_signal (&_cond[_cur_index]); -+ assert (status == 0, "invariant"); - status = pthread_mutex_unlock(_mutex); -- assert (status == 0, "invariant") ; -- } else { -+ assert (status == 0, "invariant"); -+ } else { -+ // must capture correct index before unlocking -+ int index = _cur_index; - status = pthread_mutex_unlock(_mutex); -- assert (status == 0, "invariant") ; -- status = pthread_cond_signal (_cond) ; -- assert (status == 0, "invariant") ; -- } -+ assert (status == 0, "invariant"); -+ status = pthread_cond_signal (&_cond[index]); -+ assert (status == 0, "invariant"); -+ } -+ } else { -+ pthread_mutex_unlock(_mutex); -+ assert (status == 0, "invariant") ; -+ } - } else { - pthread_mutex_unlock(_mutex); - assert (status == 0, "invariant") ; -@@ -4827,13 +5040,29 @@ - - // Get the default path to the core file - // Returns the length of the string --int os::get_core_path(char* buffer, size_t bufferSize) { -- int n = jio_snprintf(buffer, bufferSize, "/cores"); -- -- // Truncate if theoretical string was longer than bufferSize -- n = MIN2(n, (int)bufferSize); -- -- return n; -+int os::get_core_path(char *buffer, size_t bufferSize) { -+#ifdef __APPLE__ -+ jio_snprintf(buffer, bufferSize, "/cores/core.%d", current_process_id()); -+#else -+ const char *p = get_current_directory(buffer, bufferSize); -+ -+ if (p == NULL) { -+ assert(p != NULL, "failed to get current directory"); -+ return 0; -+ } -+ -+ const char *q = getprogname(); -+ -+ if (q == NULL) { -+ assert(q != NULL, "failed to get progname"); -+ return 0; -+ } -+ -+ const int n = strlen(buffer); -+ -+ jio_snprintf(buffer + n, bufferSize - n, "/%s.core", q); -+#endif -+ return strlen(buffer); - } - - #ifndef PRODUCT ---- ./hotspot/src/os/bsd/vm/os_bsd.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/bsd/vm/os_bsd.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -58,12 +58,16 @@ - // For signal flags diagnostics - static int sigflags[MAXSIGNUM]; - -+ static address _initial_thread_stack_bottom; -+ static uintptr_t _initial_thread_stack_size; -+ - #ifdef __APPLE__ - // mach_absolute_time - static mach_timebase_info_data_t _timebase_info; - static volatile uint64_t _max_abstime; - #else - static int (*_clock_gettime)(clockid_t, struct timespec *); -+ static int (*_getcpuclockid)(pthread_t, clockid_t *); - #endif - - static GrowableArray* _cpu_to_node; -@@ -94,6 +98,9 @@ - - static pid_t gettid(); - -+ static address initial_thread_stack_bottom(void) { return _initial_thread_stack_bottom; } -+ static uintptr_t initial_thread_stack_size(void) { return _initial_thread_stack_size; } -+ - static int page_size(void) { return _page_size; } - static void set_page_size(int val) { _page_size = val; } - -@@ -147,6 +154,13 @@ - #endif - } - -+ // pthread_cond clock suppport -+ private: -+ static pthread_condattr_t _condattr[1]; -+ -+ public: -+ static pthread_condattr_t* condAttr() { return _condattr; } -+ - // Stack repair handling - - // none present -@@ -212,7 +226,7 @@ - public: - PlatformEvent() { - int status; -- status = pthread_cond_init (_cond, NULL); -+ status = pthread_cond_init (_cond, os::Bsd::condAttr()); - assert_status(status == 0, status, "cond_init"); - status = pthread_mutex_init (_mutex, NULL); - assert_status(status == 0, status, "mutex_init"); -@@ -227,14 +241,19 @@ - void park () ; - void unpark () ; - int TryPark () ; -- int park (jlong millis) ; -+ int park (jlong millis) ; // relative timed-wait only - void SetAssociation (Thread * a) { _Assoc = a ; } - }; - - class PlatformParker : public CHeapObj { - protected: -+ enum { -+ REL_INDEX = 0, -+ ABS_INDEX = 1 -+ }; -+ int _cur_index; // which cond is in use: -1, 0, 1 - pthread_mutex_t _mutex [1] ; -- pthread_cond_t _cond [1] ; -+ pthread_cond_t _cond [2] ; // one for relative times and one for abs. - - public: // TODO-FIXME: make dtor private - ~PlatformParker() { guarantee (0, "invariant") ; } -@@ -242,10 +261,13 @@ - public: - PlatformParker() { - int status; -- status = pthread_cond_init (_cond, NULL); -- assert_status(status == 0, status, "cond_init"); -+ status = pthread_cond_init (&_cond[REL_INDEX], os::Bsd::condAttr()); -+ assert_status(status == 0, status, "cond_init rel"); -+ status = pthread_cond_init (&_cond[ABS_INDEX], NULL); -+ assert_status(status == 0, status, "cond_init abs"); - status = pthread_mutex_init (_mutex, NULL); - assert_status(status == 0, status, "mutex_init"); -+ _cur_index = -1; // mark as unused - } - }; - ---- ./hotspot/src/os/bsd/vm/vmError_bsd.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/bsd/vm/vmError_bsd.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -33,30 +33,50 @@ - #include - #include - #include -+#ifdef __FreeBSD__ -+#include -+#include -+#endif -+ -+#define GDB_CMD "gdb" -+ -+static void set_debugger(char *buf, int buflen) { -+ int pid = os::current_process_id(); -+#ifdef __FreeBSD__ -+ char cmd[PATH_MAX+1]; -+ int name[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, pid }; -+ size_t len = sizeof(cmd); -+ if (sysctl(name, 4, cmd, &len, NULL, 0) == 0 && len > 0) { -+ cmd[len] = '\0'; -+ jio_snprintf(buf, buflen, "%s %s %d", GDB_CMD, cmd, pid); -+ } else -+#endif -+ jio_snprintf(buf, buflen, "%s /proc/%d/file %d", GDB_CMD, pid, pid); -+} - - void VMError::show_message_box(char *buf, int buflen) { - bool yes; - do { -- error_string(buf, buflen); -- int len = (int)strlen(buf); -+ intx tid = os::current_thread_id(); -+ set_debugger(buf, buflen); -+ int len = (int)strlen(buf) + 1; -+ char *msg = &buf[len]; -+ error_string(msg, buflen - len); -+ len += (int)strlen(msg); - char *p = &buf[len]; - - jio_snprintf(p, buflen - len, - "\n\n" - "Do you want to debug the problem?\n\n" -- "To debug, run 'gdb /proc/%d/exe %d'; then switch to thread " INTX_FORMAT " (" INTPTR_FORMAT ")\n" -- "Enter 'yes' to launch gdb automatically (PATH must include gdb)\n" -+ "To debug, run '%s'; then switch to thread " INTX_FORMAT " (" INTPTR_FORMAT ")\n" -+ "Enter 'yes' to launch " GDB_CMD " automatically (PATH must include " GDB_CMD ")\n" - "Otherwise, press RETURN to abort...", -- os::current_process_id(), os::current_process_id(), -- os::current_thread_id(), os::current_thread_id()); -+ buf, tid, tid); - -- yes = os::message_box("Unexpected Error", buf); -+ yes = os::message_box("Unexpected Error", msg); - - if (yes) { - // yes, user asked VM to launch debugger -- jio_snprintf(buf, buflen, "gdb /proc/%d/exe %d", -- os::current_process_id(), os::current_process_id()); -- - os::fork_and_exec(buf); - yes = false; - } ---- ./hotspot/src/os/linux/vm/os_linux.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/linux/vm/os_linux.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -6435,6 +6435,10 @@ - return 0; - } - -+ const int n = strlen(buffer); -+ -+ jio_snprintf(buffer + n, bufferSize - n, "/core or core.%d", current_process_id()); -+ - return strlen(buffer); - } - ---- ./hotspot/src/os/posix/vm/os_posix.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/posix/vm/os_posix.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -53,12 +53,11 @@ - n = get_core_path(buffer, bufferSize); - - if (getrlimit(RLIMIT_CORE, &rlim) != 0) { -- jio_snprintf(buffer + n, bufferSize - n, "/core or core.%d (may not exist)", current_process_id()); -+ jio_snprintf(buffer + n, bufferSize - n, " (may not exist)"); - success = true; - } else { - switch(rlim.rlim_cur) { - case RLIM_INFINITY: -- jio_snprintf(buffer + n, bufferSize - n, "/core or core.%d", current_process_id()); - success = true; - break; - case 0: -@@ -66,7 +65,7 @@ - success = false; - break; - default: -- jio_snprintf(buffer + n, bufferSize - n, "/core or core.%d (max size %lu kB). To ensure a full core dump, try \"ulimit -c unlimited\" before starting Java again", current_process_id(), (unsigned long)(rlim.rlim_cur >> 10)); -+ jio_snprintf(buffer + n, bufferSize - n, " (max size %lu kB). To ensure a full core dump, try \"ulimit -c unlimited\" before starting Java again", (unsigned long)(rlim.rlim_cur >> 10)); - success = true; - break; - } -@@ -211,8 +210,13 @@ - if (rlim.rlim_cur == RLIM_INFINITY) st->print("infinity"); - else st->print("%d", rlim.rlim_cur); - -+#ifdef __OpenBSD__ -+ st->print(", DATA "); -+ getrlimit(RLIMIT_DATA, &rlim); -+#else - st->print(", AS "); - getrlimit(RLIMIT_AS, &rlim); -+#endif - if (rlim.rlim_cur == RLIM_INFINITY) st->print("infinity"); - else st->print("%uk", rlim.rlim_cur >> 10); - st->cr(); -@@ -232,7 +236,11 @@ - - bool os::has_allocatable_memory_limit(julong* limit) { - struct rlimit rlim; -+#ifdef __OpenBSD__ -+ int getrlimit_res = getrlimit(RLIMIT_DATA, &rlim); -+#else - int getrlimit_res = getrlimit(RLIMIT_AS, &rlim); -+#endif - // if there was an error when calling getrlimit, assume that there is no limitation - // on virtual memory. - bool result; -@@ -731,8 +739,12 @@ - { SI_USER, "SI_USER", "Signal sent by kill()." }, - { SI_QUEUE, "SI_QUEUE", "Signal sent by the sigqueue()." }, - { SI_TIMER, "SI_TIMER", "Signal generated by expiration of a timer set by timer_settime()." }, -+#ifdef SI_ASYNCIO - { SI_ASYNCIO, "SI_ASYNCIO", "Signal generated by completion of an asynchronous I/O request." }, -+#endif -+#ifdef SI_MESGQ - { SI_MESGQ, "SI_MESGQ", "Signal generated by arrival of a message on an empty message queue." }, -+#endif - // Linux specific - #ifdef SI_TKILL - { SI_TKILL, "SI_TKILL", "Signal sent by tkill (pthread_kill)" }, ---- ./hotspot/src/os/solaris/vm/os_solaris.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os/solaris/vm/os_solaris.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -6386,6 +6386,10 @@ - return 0; - } - -+ const int n = strlen(buffer); -+ -+ jio_snprintf(buffer + n, bufferSize - n, "/core or core.%d", current_process_id()); -+ - return strlen(buffer); - } - ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/atomic_bsd_ppc.inline.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,400 @@ -+/* -+ * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2013 SAP AG. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#ifndef OS_CPU_BSD_PPC_VM_ATOMIC_BSD_PPC_INLINE_HPP -+#define OS_CPU_BSD_PPC_VM_ATOMIC_BSD_PPC_INLINE_HPP -+ -+#include "runtime/atomic.hpp" -+#include "runtime/os.hpp" -+#include "vm_version_ppc.hpp" -+ -+#ifndef PPC64 -+#error "Atomic currently only implemented for PPC64" -+#endif -+ -+// Implementation of class atomic -+ -+inline void Atomic::store (jbyte store_value, jbyte* dest) { *dest = store_value; } -+inline void Atomic::store (jshort store_value, jshort* dest) { *dest = store_value; } -+inline void Atomic::store (jint store_value, jint* dest) { *dest = store_value; } -+inline void Atomic::store (jlong store_value, jlong* dest) { *dest = store_value; } -+inline void Atomic::store_ptr(intptr_t store_value, intptr_t* dest) { *dest = store_value; } -+inline void Atomic::store_ptr(void* store_value, void* dest) { *(void**)dest = store_value; } -+ -+inline void Atomic::store (jbyte store_value, volatile jbyte* dest) { *dest = store_value; } -+inline void Atomic::store (jshort store_value, volatile jshort* dest) { *dest = store_value; } -+inline void Atomic::store (jint store_value, volatile jint* dest) { *dest = store_value; } -+inline void Atomic::store (jlong store_value, volatile jlong* dest) { *dest = store_value; } -+inline void Atomic::store_ptr(intptr_t store_value, volatile intptr_t* dest) { *dest = store_value; } -+inline void Atomic::store_ptr(void* store_value, volatile void* dest) { *(void* volatile *)dest = store_value; } -+ -+inline jlong Atomic::load(volatile jlong* src) { return *src; } -+ -+// -+// machine barrier instructions: -+// -+// - sync two-way memory barrier, aka fence -+// - lwsync orders Store|Store, -+// Load|Store, -+// Load|Load, -+// but not Store|Load -+// - eieio orders memory accesses for device memory (only) -+// - isync invalidates speculatively executed instructions -+// From the POWER ISA 2.06 documentation: -+// "[...] an isync instruction prevents the execution of -+// instructions following the isync until instructions -+// preceding the isync have completed, [...]" -+// From IBM's AIX assembler reference: -+// "The isync [...] instructions causes the processor to -+// refetch any instructions that might have been fetched -+// prior to the isync instruction. The instruction isync -+// causes the processor to wait for all previous instructions -+// to complete. Then any instructions already fetched are -+// discarded and instruction processing continues in the -+// environment established by the previous instructions." -+// -+// semantic barrier instructions: -+// (as defined in orderAccess.hpp) -+// -+// - release orders Store|Store, (maps to lwsync) -+// Load|Store -+// - acquire orders Load|Store, (maps to lwsync) -+// Load|Load -+// - fence orders Store|Store, (maps to sync) -+// Load|Store, -+// Load|Load, -+// Store|Load -+// -+ -+#define strasm_sync "\n sync \n" -+#define strasm_lwsync "\n lwsync \n" -+#define strasm_isync "\n isync \n" -+#define strasm_release strasm_lwsync -+#define strasm_acquire strasm_lwsync -+#define strasm_fence strasm_sync -+#define strasm_nobarrier "" -+#define strasm_nobarrier_clobber_memory "" -+ -+inline jint Atomic::add (jint add_value, volatile jint* dest) { -+ -+ unsigned int result; -+ -+ __asm__ __volatile__ ( -+ strasm_lwsync -+ "1: lwarx %0, 0, %2 \n" -+ " add %0, %0, %1 \n" -+ " stwcx. %0, 0, %2 \n" -+ " bne- 1b \n" -+ strasm_isync -+ : /*%0*/"=&r" (result) -+ : /*%1*/"r" (add_value), /*%2*/"r" (dest) -+ : "cc", "memory" ); -+ -+ return (jint) result; -+} -+ -+ -+inline intptr_t Atomic::add_ptr(intptr_t add_value, volatile intptr_t* dest) { -+ -+ long result; -+ -+ __asm__ __volatile__ ( -+ strasm_lwsync -+ "1: ldarx %0, 0, %2 \n" -+ " add %0, %0, %1 \n" -+ " stdcx. %0, 0, %2 \n" -+ " bne- 1b \n" -+ strasm_isync -+ : /*%0*/"=&r" (result) -+ : /*%1*/"r" (add_value), /*%2*/"r" (dest) -+ : "cc", "memory" ); -+ -+ return (intptr_t) result; -+} -+ -+inline void* Atomic::add_ptr(intptr_t add_value, volatile void* dest) { -+ return (void*)add_ptr(add_value, (volatile intptr_t*)dest); -+} -+ -+ -+inline void Atomic::inc (volatile jint* dest) { -+ -+ unsigned int temp; -+ -+ __asm__ __volatile__ ( -+ strasm_nobarrier -+ "1: lwarx %0, 0, %2 \n" -+ " addic %0, %0, 1 \n" -+ " stwcx. %0, 0, %2 \n" -+ " bne- 1b \n" -+ strasm_nobarrier -+ : /*%0*/"=&r" (temp), "=m" (*dest) -+ : /*%2*/"r" (dest), "m" (*dest) -+ : "cc" strasm_nobarrier_clobber_memory); -+ -+} -+ -+inline void Atomic::inc_ptr(volatile intptr_t* dest) { -+ -+ long temp; -+ -+ __asm__ __volatile__ ( -+ strasm_nobarrier -+ "1: ldarx %0, 0, %2 \n" -+ " addic %0, %0, 1 \n" -+ " stdcx. %0, 0, %2 \n" -+ " bne- 1b \n" -+ strasm_nobarrier -+ : /*%0*/"=&r" (temp), "=m" (*dest) -+ : /*%2*/"r" (dest), "m" (*dest) -+ : "cc" strasm_nobarrier_clobber_memory); -+ -+} -+ -+inline void Atomic::inc_ptr(volatile void* dest) { -+ inc_ptr((volatile intptr_t*)dest); -+} -+ -+ -+inline void Atomic::dec (volatile jint* dest) { -+ -+ unsigned int temp; -+ -+ __asm__ __volatile__ ( -+ strasm_nobarrier -+ "1: lwarx %0, 0, %2 \n" -+ " addic %0, %0, -1 \n" -+ " stwcx. %0, 0, %2 \n" -+ " bne- 1b \n" -+ strasm_nobarrier -+ : /*%0*/"=&r" (temp), "=m" (*dest) -+ : /*%2*/"r" (dest), "m" (*dest) -+ : "cc" strasm_nobarrier_clobber_memory); -+ -+} -+ -+inline void Atomic::dec_ptr(volatile intptr_t* dest) { -+ -+ long temp; -+ -+ __asm__ __volatile__ ( -+ strasm_nobarrier -+ "1: ldarx %0, 0, %2 \n" -+ " addic %0, %0, -1 \n" -+ " stdcx. %0, 0, %2 \n" -+ " bne- 1b \n" -+ strasm_nobarrier -+ : /*%0*/"=&r" (temp), "=m" (*dest) -+ : /*%2*/"r" (dest), "m" (*dest) -+ : "cc" strasm_nobarrier_clobber_memory); -+ -+} -+ -+inline void Atomic::dec_ptr(volatile void* dest) { -+ dec_ptr((volatile intptr_t*)dest); -+} -+ -+inline jint Atomic::xchg(jint exchange_value, volatile jint* dest) { -+ -+ // Note that xchg_ptr doesn't necessarily do an acquire -+ // (see synchronizer.cpp). -+ -+ unsigned int old_value; -+ const uint64_t zero = 0; -+ -+ __asm__ __volatile__ ( -+ /* lwsync */ -+ strasm_lwsync -+ /* atomic loop */ -+ "1: \n" -+ " lwarx %[old_value], %[dest], %[zero] \n" -+ " stwcx. %[exchange_value], %[dest], %[zero] \n" -+ " bne- 1b \n" -+ /* isync */ -+ strasm_sync -+ /* exit */ -+ "2: \n" -+ /* out */ -+ : [old_value] "=&r" (old_value), -+ "=m" (*dest) -+ /* in */ -+ : [dest] "b" (dest), -+ [zero] "r" (zero), -+ [exchange_value] "r" (exchange_value), -+ "m" (*dest) -+ /* clobber */ -+ : "cc", -+ "memory" -+ ); -+ -+ return (jint) old_value; -+} -+ -+inline intptr_t Atomic::xchg_ptr(intptr_t exchange_value, volatile intptr_t* dest) { -+ -+ // Note that xchg_ptr doesn't necessarily do an acquire -+ // (see synchronizer.cpp). -+ -+ long old_value; -+ const uint64_t zero = 0; -+ -+ __asm__ __volatile__ ( -+ /* lwsync */ -+ strasm_lwsync -+ /* atomic loop */ -+ "1: \n" -+ " ldarx %[old_value], %[dest], %[zero] \n" -+ " stdcx. %[exchange_value], %[dest], %[zero] \n" -+ " bne- 1b \n" -+ /* isync */ -+ strasm_sync -+ /* exit */ -+ "2: \n" -+ /* out */ -+ : [old_value] "=&r" (old_value), -+ "=m" (*dest) -+ /* in */ -+ : [dest] "b" (dest), -+ [zero] "r" (zero), -+ [exchange_value] "r" (exchange_value), -+ "m" (*dest) -+ /* clobber */ -+ : "cc", -+ "memory" -+ ); -+ -+ return (intptr_t) old_value; -+} -+ -+inline void* Atomic::xchg_ptr(void* exchange_value, volatile void* dest) { -+ return (void*)xchg_ptr((intptr_t)exchange_value, (volatile intptr_t*)dest); -+} -+ -+inline jint Atomic::cmpxchg(jint exchange_value, volatile jint* dest, jint compare_value) { -+ -+ // Note that cmpxchg guarantees a two-way memory barrier across -+ // the cmpxchg, so it's really a a 'fence_cmpxchg_acquire' -+ // (see atomic.hpp). -+ -+ unsigned int old_value; -+ const uint64_t zero = 0; -+ -+ __asm__ __volatile__ ( -+ /* fence */ -+ strasm_sync -+ /* simple guard */ -+ " lwz %[old_value], 0(%[dest]) \n" -+ " cmpw %[compare_value], %[old_value] \n" -+ " bne- 2f \n" -+ /* atomic loop */ -+ "1: \n" -+ " lwarx %[old_value], %[dest], %[zero] \n" -+ " cmpw %[compare_value], %[old_value] \n" -+ " bne- 2f \n" -+ " stwcx. %[exchange_value], %[dest], %[zero] \n" -+ " bne- 1b \n" -+ /* acquire */ -+ strasm_sync -+ /* exit */ -+ "2: \n" -+ /* out */ -+ : [old_value] "=&r" (old_value), -+ "=m" (*dest) -+ /* in */ -+ : [dest] "b" (dest), -+ [zero] "r" (zero), -+ [compare_value] "r" (compare_value), -+ [exchange_value] "r" (exchange_value), -+ "m" (*dest) -+ /* clobber */ -+ : "cc", -+ "memory" -+ ); -+ -+ return (jint) old_value; -+} -+ -+inline jlong Atomic::cmpxchg(jlong exchange_value, volatile jlong* dest, jlong compare_value) { -+ -+ // Note that cmpxchg guarantees a two-way memory barrier across -+ // the cmpxchg, so it's really a a 'fence_cmpxchg_acquire' -+ // (see atomic.hpp). -+ -+ long old_value; -+ const uint64_t zero = 0; -+ -+ __asm__ __volatile__ ( -+ /* fence */ -+ strasm_sync -+ /* simple guard */ -+ " ld %[old_value], 0(%[dest]) \n" -+ " cmpd %[compare_value], %[old_value] \n" -+ " bne- 2f \n" -+ /* atomic loop */ -+ "1: \n" -+ " ldarx %[old_value], %[dest], %[zero] \n" -+ " cmpd %[compare_value], %[old_value] \n" -+ " bne- 2f \n" -+ " stdcx. %[exchange_value], %[dest], %[zero] \n" -+ " bne- 1b \n" -+ /* acquire */ -+ strasm_sync -+ /* exit */ -+ "2: \n" -+ /* out */ -+ : [old_value] "=&r" (old_value), -+ "=m" (*dest) -+ /* in */ -+ : [dest] "b" (dest), -+ [zero] "r" (zero), -+ [compare_value] "r" (compare_value), -+ [exchange_value] "r" (exchange_value), -+ "m" (*dest) -+ /* clobber */ -+ : "cc", -+ "memory" -+ ); -+ -+ return (jlong) old_value; -+} -+ -+inline intptr_t Atomic::cmpxchg_ptr(intptr_t exchange_value, volatile intptr_t* dest, intptr_t compare_value) { -+ return (intptr_t)cmpxchg((jlong)exchange_value, (volatile jlong*)dest, (jlong)compare_value); -+} -+ -+inline void* Atomic::cmpxchg_ptr(void* exchange_value, volatile void* dest, void* compare_value) { -+ return (void*)cmpxchg((jlong)exchange_value, (volatile jlong*)dest, (jlong)compare_value); -+} -+ -+#undef strasm_sync -+#undef strasm_lwsync -+#undef strasm_isync -+#undef strasm_release -+#undef strasm_acquire -+#undef strasm_fence -+#undef strasm_nobarrier -+#undef strasm_nobarrier_clobber_memory -+ -+#endif // OS_CPU_BSD_PPC_VM_ATOMIC_BSD_PPC_INLINE_HPP ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/bytes_bsd_ppc.inline.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,39 @@ -+/* -+ * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2014 Google Inc. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#ifndef OS_CPU_BSD_PPC_VM_BYTES_BSD_PPC_INLINE_HPP -+#define OS_CPU_BSD_PPC_VM_BYTES_BSD_PPC_INLINE_HPP -+ -+#if defined(VM_LITTLE_ENDIAN) -+#include -+ -+// Efficient swapping of data bytes from Java byte -+// ordering to native byte ordering and vice versa. -+inline u2 Bytes::swap_u2(u2 x) { return bswap_16(x); } -+inline u4 Bytes::swap_u4(u4 x) { return bswap_32(x); } -+inline u8 Bytes::swap_u8(u8 x) { return bswap_64(x); } -+#endif // VM_LITTLE_ENDIAN -+ -+#endif // OS_CPU_BSD_PPC_VM_BYTES_BSD_PPC_INLINE_HPP ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/globals_bsd_ppc.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,54 @@ -+/* -+ * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2013 SAP AG. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#ifndef OS_CPU_BSD_PPC_VM_GLOBALS_BSD_PPC_HPP -+#define OS_CPU_BSD_PPC_VM_GLOBALS_BSD_PPC_HPP -+ -+// Sets the default values for platform dependent flags used by the runtime system. -+// (see globals.hpp) -+ -+define_pd_global(bool, DontYieldALot, false); -+define_pd_global(intx, ThreadStackSize, 2048); // 0 => use system default -+define_pd_global(intx, VMThreadStackSize, 2048); -+ -+// if we set CompilerThreadStackSize to a value different than 0, it will -+// be used in os::create_thread(). Otherwise, due the strange logic in os::create_thread(), -+// the stack size for compiler threads will default to VMThreadStackSize, although it -+// is defined to 4M in os::Bsd::default_stack_size()! -+define_pd_global(intx, CompilerThreadStackSize, 4096); -+ -+// Allow extra space in DEBUG builds for asserts. -+define_pd_global(uintx,JVMInvokeMethodSlack, 8192); -+ -+define_pd_global(intx, StackYellowPages, 6); -+define_pd_global(intx, StackRedPages, 1); -+define_pd_global(intx, StackShadowPages, 6 DEBUG_ONLY(+2)); -+ -+// Only used on 64 bit platforms -+define_pd_global(uintx,HeapBaseMinAddress, 2*G); -+// Only used on 64 bit Windows platforms -+define_pd_global(bool, UseVectoredExceptions, false); -+ -+#endif // OS_CPU_BSD_PPC_VM_GLOBALS_BSD_PPC_HPP ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/orderAccess_bsd_ppc.inline.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,149 @@ -+/* -+ * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2013 SAP AG. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#ifndef OS_CPU_BSD_PPC_VM_ORDERACCESS_BSD_PPC_INLINE_HPP -+#define OS_CPU_BSD_PPC_VM_ORDERACCESS_BSD_PPC_INLINE_HPP -+ -+#include "runtime/orderAccess.hpp" -+#include "vm_version_ppc.hpp" -+ -+#ifndef PPC64 -+#error "OrderAccess currently only implemented for PPC64" -+#endif -+ -+// Implementation of class OrderAccess. -+ -+// -+// Machine barrier instructions: -+// -+// - sync Two-way memory barrier, aka fence. -+// - lwsync orders Store|Store, -+// Load|Store, -+// Load|Load, -+// but not Store|Load -+// - eieio orders Store|Store -+// - isync Invalidates speculatively executed instructions, -+// but isync may complete before storage accesses -+// associated with instructions preceding isync have -+// been performed. -+// -+// Semantic barrier instructions: -+// (as defined in orderAccess.hpp) -+// -+// - release orders Store|Store, (maps to lwsync) -+// Load|Store -+// - acquire orders Load|Store, (maps to lwsync) -+// Load|Load -+// - fence orders Store|Store, (maps to sync) -+// Load|Store, -+// Load|Load, -+// Store|Load -+// -+ -+#define inlasm_sync() __asm__ __volatile__ ("sync" : : : "memory"); -+#define inlasm_lwsync() __asm__ __volatile__ ("lwsync" : : : "memory"); -+#define inlasm_eieio() __asm__ __volatile__ ("eieio" : : : "memory"); -+#define inlasm_isync() __asm__ __volatile__ ("isync" : : : "memory"); -+#define inlasm_release() inlasm_lwsync(); -+#define inlasm_acquire() inlasm_lwsync(); -+// Use twi-isync for load_acquire (faster than lwsync). -+#define inlasm_acquire_reg(X) __asm__ __volatile__ ("twi 0,%0,0\n isync\n" : : "r" (X) : "memory"); -+#define inlasm_fence() inlasm_sync(); -+ -+inline void OrderAccess::loadload() { inlasm_lwsync(); } -+inline void OrderAccess::storestore() { inlasm_lwsync(); } -+inline void OrderAccess::loadstore() { inlasm_lwsync(); } -+inline void OrderAccess::storeload() { inlasm_fence(); } -+ -+inline void OrderAccess::acquire() { inlasm_acquire(); } -+inline void OrderAccess::release() { inlasm_release(); } -+inline void OrderAccess::fence() { inlasm_fence(); } -+ -+inline jbyte OrderAccess::load_acquire(volatile jbyte* p) { register jbyte t = *p; inlasm_acquire_reg(t); return t; } -+inline jshort OrderAccess::load_acquire(volatile jshort* p) { register jshort t = *p; inlasm_acquire_reg(t); return t; } -+inline jint OrderAccess::load_acquire(volatile jint* p) { register jint t = *p; inlasm_acquire_reg(t); return t; } -+inline jlong OrderAccess::load_acquire(volatile jlong* p) { register jlong t = *p; inlasm_acquire_reg(t); return t; } -+inline jubyte OrderAccess::load_acquire(volatile jubyte* p) { register jubyte t = *p; inlasm_acquire_reg(t); return t; } -+inline jushort OrderAccess::load_acquire(volatile jushort* p) { register jushort t = *p; inlasm_acquire_reg(t); return t; } -+inline juint OrderAccess::load_acquire(volatile juint* p) { register juint t = *p; inlasm_acquire_reg(t); return t; } -+inline julong OrderAccess::load_acquire(volatile julong* p) { return (julong)load_acquire((volatile jlong*)p); } -+inline jfloat OrderAccess::load_acquire(volatile jfloat* p) { register jfloat t = *p; inlasm_acquire(); return t; } -+inline jdouble OrderAccess::load_acquire(volatile jdouble* p) { register jdouble t = *p; inlasm_acquire(); return t; } -+ -+inline intptr_t OrderAccess::load_ptr_acquire(volatile intptr_t* p) { return (intptr_t)load_acquire((volatile jlong*)p); } -+inline void* OrderAccess::load_ptr_acquire(volatile void* p) { return (void*) load_acquire((volatile jlong*)p); } -+inline void* OrderAccess::load_ptr_acquire(const volatile void* p) { return (void*) load_acquire((volatile jlong*)p); } -+ -+inline void OrderAccess::release_store(volatile jbyte* p, jbyte v) { inlasm_release(); *p = v; } -+inline void OrderAccess::release_store(volatile jshort* p, jshort v) { inlasm_release(); *p = v; } -+inline void OrderAccess::release_store(volatile jint* p, jint v) { inlasm_release(); *p = v; } -+inline void OrderAccess::release_store(volatile jlong* p, jlong v) { inlasm_release(); *p = v; } -+inline void OrderAccess::release_store(volatile jubyte* p, jubyte v) { inlasm_release(); *p = v; } -+inline void OrderAccess::release_store(volatile jushort* p, jushort v) { inlasm_release(); *p = v; } -+inline void OrderAccess::release_store(volatile juint* p, juint v) { inlasm_release(); *p = v; } -+inline void OrderAccess::release_store(volatile julong* p, julong v) { inlasm_release(); *p = v; } -+inline void OrderAccess::release_store(volatile jfloat* p, jfloat v) { inlasm_release(); *p = v; } -+inline void OrderAccess::release_store(volatile jdouble* p, jdouble v) { inlasm_release(); *p = v; } -+ -+inline void OrderAccess::release_store_ptr(volatile intptr_t* p, intptr_t v) { inlasm_release(); *p = v; } -+inline void OrderAccess::release_store_ptr(volatile void* p, void* v) { inlasm_release(); *(void* volatile *)p = v; } -+ -+inline void OrderAccess::store_fence(jbyte* p, jbyte v) { *p = v; inlasm_fence(); } -+inline void OrderAccess::store_fence(jshort* p, jshort v) { *p = v; inlasm_fence(); } -+inline void OrderAccess::store_fence(jint* p, jint v) { *p = v; inlasm_fence(); } -+inline void OrderAccess::store_fence(jlong* p, jlong v) { *p = v; inlasm_fence(); } -+inline void OrderAccess::store_fence(jubyte* p, jubyte v) { *p = v; inlasm_fence(); } -+inline void OrderAccess::store_fence(jushort* p, jushort v) { *p = v; inlasm_fence(); } -+inline void OrderAccess::store_fence(juint* p, juint v) { *p = v; inlasm_fence(); } -+inline void OrderAccess::store_fence(julong* p, julong v) { *p = v; inlasm_fence(); } -+inline void OrderAccess::store_fence(jfloat* p, jfloat v) { *p = v; inlasm_fence(); } -+inline void OrderAccess::store_fence(jdouble* p, jdouble v) { *p = v; inlasm_fence(); } -+ -+inline void OrderAccess::store_ptr_fence(intptr_t* p, intptr_t v) { *p = v; inlasm_fence(); } -+inline void OrderAccess::store_ptr_fence(void** p, void* v) { *p = v; inlasm_fence(); } -+ -+inline void OrderAccess::release_store_fence(volatile jbyte* p, jbyte v) { inlasm_release(); *p = v; inlasm_fence(); } -+inline void OrderAccess::release_store_fence(volatile jshort* p, jshort v) { inlasm_release(); *p = v; inlasm_fence(); } -+inline void OrderAccess::release_store_fence(volatile jint* p, jint v) { inlasm_release(); *p = v; inlasm_fence(); } -+inline void OrderAccess::release_store_fence(volatile jlong* p, jlong v) { inlasm_release(); *p = v; inlasm_fence(); } -+inline void OrderAccess::release_store_fence(volatile jubyte* p, jubyte v) { inlasm_release(); *p = v; inlasm_fence(); } -+inline void OrderAccess::release_store_fence(volatile jushort* p, jushort v) { inlasm_release(); *p = v; inlasm_fence(); } -+inline void OrderAccess::release_store_fence(volatile juint* p, juint v) { inlasm_release(); *p = v; inlasm_fence(); } -+inline void OrderAccess::release_store_fence(volatile julong* p, julong v) { inlasm_release(); *p = v; inlasm_fence(); } -+inline void OrderAccess::release_store_fence(volatile jfloat* p, jfloat v) { inlasm_release(); *p = v; inlasm_fence(); } -+inline void OrderAccess::release_store_fence(volatile jdouble* p, jdouble v) { inlasm_release(); *p = v; inlasm_fence(); } -+ -+inline void OrderAccess::release_store_ptr_fence(volatile intptr_t* p, intptr_t v) { inlasm_release(); *p = v; inlasm_fence(); } -+inline void OrderAccess::release_store_ptr_fence(volatile void* p, void* v) { inlasm_release(); *(void* volatile *)p = v; inlasm_fence(); } -+ -+#undef inlasm_sync -+#undef inlasm_lwsync -+#undef inlasm_eieio -+#undef inlasm_isync -+#undef inlasm_release -+#undef inlasm_acquire -+#undef inlasm_fence -+ -+#endif // OS_CPU_BSD_PPC_VM_ORDERACCESS_BSD_PPC_INLINE_HPP ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/os_bsd_ppc.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,666 @@ -+/* -+ * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2007, 2008, 2009, 2010 Red Hat, Inc. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+// no precompiled headers -+#include "assembler_ppc.inline.hpp" -+#include "classfile/classLoader.hpp" -+#include "classfile/systemDictionary.hpp" -+#include "classfile/vmSymbols.hpp" -+#include "code/icBuffer.hpp" -+#include "code/vtableStubs.hpp" -+#include "interpreter/interpreter.hpp" -+#include "jvm_bsd.h" -+#include "memory/allocation.inline.hpp" -+#include "mutex_bsd.inline.hpp" -+#include "nativeInst_ppc.hpp" -+#include "os_share_bsd.hpp" -+#include "prims/jniFastGetField.hpp" -+#include "prims/jvm.h" -+#include "prims/jvm_misc.hpp" -+#include "runtime/arguments.hpp" -+#include "runtime/extendedPC.hpp" -+#include "runtime/frame.inline.hpp" -+#include "runtime/interfaceSupport.hpp" -+#include "runtime/java.hpp" -+#include "runtime/javaCalls.hpp" -+#include "runtime/mutexLocker.hpp" -+#include "runtime/osThread.hpp" -+#include "runtime/sharedRuntime.hpp" -+#include "runtime/stubRoutines.hpp" -+#include "runtime/thread.inline.hpp" -+#include "runtime/timer.hpp" -+#include "utilities/events.hpp" -+#include "utilities/vmError.hpp" -+#ifdef COMPILER1 -+#include "c1/c1_Runtime1.hpp" -+#endif -+#ifdef COMPILER2 -+#include "opto/runtime.hpp" -+#endif -+ -+// put OS-includes here -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+# include -+ -+ -+address os::current_stack_pointer() { -+ intptr_t* csp; -+ -+ // inline assembly `mr regno(csp), R1_SP': -+ __asm__ __volatile__ ("mr %0, 1":"=r"(csp):); -+ -+ return (address) csp; -+} -+ -+char* os::non_memory_address_word() { -+ // Must never look like an address returned by reserve_memory, -+ // even in its subfields (as defined by the CPU immediate fields, -+ // if the CPU splits constants across multiple instructions). -+ -+ return (char*) -1; -+} -+ -+void os::initialize_thread(Thread *thread) { } -+ -+address os::Bsd::ucontext_get_pc(ucontext_t * uc) { -+ guarantee(uc->uc_mcontext.mc_gpr != NULL, "only use ucontext_get_pc in sigaction context"); -+ return (address)uc->uc_mcontext.mc_srr0; -+} -+ -+intptr_t* os::Bsd::ucontext_get_sp(ucontext_t * uc) { -+ return (intptr_t*)uc->uc_mcontext.mc_gpr[1/*REG_SP*/]; -+} -+ -+intptr_t* os::Bsd::ucontext_get_fp(ucontext_t * uc) { -+ return NULL; -+} -+ -+ExtendedPC os::fetch_frame_from_context(void* ucVoid, -+ intptr_t** ret_sp, intptr_t** ret_fp) { -+ -+ ExtendedPC epc; -+ ucontext_t* uc = (ucontext_t*)ucVoid; -+ -+ if (uc != NULL) { -+ epc = ExtendedPC(os::Bsd::ucontext_get_pc(uc)); -+ if (ret_sp) *ret_sp = os::Bsd::ucontext_get_sp(uc); -+ if (ret_fp) *ret_fp = os::Bsd::ucontext_get_fp(uc); -+ } else { -+ // construct empty ExtendedPC for return value checking -+ epc = ExtendedPC(NULL); -+ if (ret_sp) *ret_sp = (intptr_t *)NULL; -+ if (ret_fp) *ret_fp = (intptr_t *)NULL; -+ } -+ -+ return epc; -+} -+ -+frame os::fetch_frame_from_context(void* ucVoid) { -+ intptr_t* sp; -+ intptr_t* fp; -+ ExtendedPC epc = fetch_frame_from_context(ucVoid, &sp, &fp); -+ return frame(sp, epc.pc()); -+} -+ -+frame os::get_sender_for_C_frame(frame* fr) { -+ if (*fr->sp() == 0) { -+ // fr is the last C frame -+ return frame(NULL, NULL); -+ } -+ return frame(fr->sender_sp(), fr->sender_pc()); -+} -+ -+ -+frame os::current_frame() { -+ intptr_t* csp = (intptr_t*) *((intptr_t*) os::current_stack_pointer()); -+ // hack. -+ frame topframe(csp, (address)0x8); -+ // return sender of current topframe which hopefully has pc != NULL. -+ return os::get_sender_for_C_frame(&topframe); -+} -+ -+// Utility functions -+ -+extern "C" JNIEXPORT int -+JVM_handle_bsd_signal(int sig, siginfo_t* info, void* ucVoid, int abort_if_unrecognized) { -+ -+ ucontext_t* uc = (ucontext_t*) ucVoid; -+ -+ Thread* t = ThreadLocalStorage::get_thread_slow(); // slow & steady -+ -+ SignalHandlerMark shm(t); -+ -+ // Note: it's not uncommon that JNI code uses signal/sigset to install -+ // then restore certain signal handler (e.g. to temporarily block SIGPIPE, -+ // or have a SIGILL handler when detecting CPU type). When that happens, -+ // JVM_handle_bsd_signal() might be invoked with junk info/ucVoid. To -+ // avoid unnecessary crash when libjsig is not preloaded, try handle signals -+ // that do not require siginfo/ucontext first. -+ -+ if (sig == SIGPIPE) { -+ if (os::Bsd::chained_handler(sig, info, ucVoid)) { -+ return 1; -+ } else { -+ if (PrintMiscellaneous && (WizardMode || Verbose)) { -+ warning("Ignoring SIGPIPE - see bug 4229104"); -+ } -+ return 1; -+ } -+ } -+ -+ JavaThread* thread = NULL; -+ VMThread* vmthread = NULL; -+ if (os::Bsd::signal_handlers_are_installed) { -+ if (t != NULL) { -+ if(t->is_Java_thread()) { -+ thread = (JavaThread*)t; -+ } -+ else if(t->is_VM_thread()) { -+ vmthread = (VMThread *)t; -+ } -+ } -+ } -+ -+ // Decide if this trap can be handled by a stub. -+ address stub = NULL; -+ -+ // retrieve program counter -+ address const pc = uc ? os::Bsd::ucontext_get_pc(uc) : NULL; -+ -+ // retrieve crash address -+ address const addr = info ? (const address) info->si_addr : NULL; -+ -+ // SafeFetch 32 handling: -+ // - make it work if _thread is null -+ // - make it use the standard os::...::ucontext_get/set_pc APIs -+ if (uc) { -+ address const pc = os::Bsd::ucontext_get_pc(uc); -+ if (pc && StubRoutines::is_safefetch_fault(pc)) { -+ uc->uc_mcontext.mc_srr0 = (unsigned long)StubRoutines::continuation_for_safefetch_fault(pc); -+ return true; -+ } -+ } -+ -+ // Handle SIGDANGER right away. AIX would raise SIGDANGER whenever available swap -+ // space falls below 30%. This is only a chance for the process to gracefully abort. -+ // We can't hope to proceed after SIGDANGER since SIGKILL tailgates. -+ // if (sig == SIGDANGER) { -+ // goto report_and_die; -+ // } -+ -+ if (info == NULL || uc == NULL || thread == NULL && vmthread == NULL) { -+ goto run_chained_handler; -+ } -+ -+ // If we are a java thread... -+ if (thread != NULL) { -+ -+ // Handle ALL stack overflow variations here -+ if (sig == SIGSEGV && (addr < thread->stack_base() && -+ addr >= thread->stack_base() - thread->stack_size())) { -+ // stack overflow -+ // -+ // If we are in a yellow zone and we are inside java, we disable the yellow zone and -+ // throw a stack overflow exception. -+ // If we are in native code or VM C code, we report-and-die. The original coding tried -+ // to continue with yellow zone disabled, but that doesn't buy us much and prevents -+ // hs_err_pid files. -+ if (thread->in_stack_yellow_zone(addr)) { -+ thread->disable_stack_yellow_zone(); -+ if (thread->thread_state() == _thread_in_Java) { -+ // Throw a stack overflow exception. -+ // Guard pages will be reenabled while unwinding the stack. -+ stub = SharedRuntime::continuation_for_implicit_exception(thread, pc, SharedRuntime::STACK_OVERFLOW); -+ goto run_stub; -+ } else { -+ // Thread was in the vm or native code. Return and try to finish. -+ return 1; -+ } -+ } else if (thread->in_stack_red_zone(addr)) { -+ // Fatal red zone violation. Disable the guard pages and fall through -+ // to handle_unexpected_exception way down below. -+ thread->disable_stack_red_zone(); -+ tty->print_raw_cr("An irrecoverable stack overflow has occurred."); -+ goto report_and_die; -+ } else { -+ // This means a segv happened inside our stack, but not in -+ // the guarded zone. I'd like to know when this happens, -+ tty->print_raw_cr("SIGSEGV happened inside stack but outside yellow and red zone."); -+ goto report_and_die; -+ } -+ -+ } // end handle SIGSEGV inside stack boundaries -+ -+ if (thread->thread_state() == _thread_in_Java) { -+ // Java thread running in Java code -+ -+ // The following signals are used for communicating VM events: -+ // -+ // SIGILL: the compiler generates illegal opcodes -+ // at places where it wishes to interrupt the VM: -+ // Safepoints, Unreachable Code, Entry points of Zombie methods, -+ // This results in a SIGILL with (*pc) == inserted illegal instruction. -+ // -+ // (so, SIGILLs with a pc inside the zero page are real errors) -+ // -+ // SIGTRAP: -+ // The ppc trap instruction raises a SIGTRAP and is very efficient if it -+ // does not trap. It is used for conditional branches that are expected -+ // to be never taken. These are: -+ // - zombie methods -+ // - IC (inline cache) misses. -+ // - null checks leading to UncommonTraps. -+ // - range checks leading to Uncommon Traps. -+ // On Bsd, these are especially null checks, as the ImplicitNullCheck -+ // optimization works only in rare cases, as the page at address 0 is only -+ // write protected. // -+ // Note: !UseSIGTRAP is used to prevent SIGTRAPS altogether, to facilitate debugging. -+ // -+ // SIGSEGV: -+ // used for safe point polling: -+ // To notify all threads that they have to reach a safe point, safe point polling is used: -+ // All threads poll a certain mapped memory page. Normally, this page has read access. -+ // If the VM wants to inform the threads about impending safe points, it puts this -+ // page to read only ("poisens" the page), and the threads then reach a safe point. -+ // used for null checks: -+ // If the compiler finds a store it uses it for a null check. Unfortunately this -+ // happens rarely. In heap based and disjoint base compressd oop modes also loads -+ // are used for null checks. -+ -+ // A VM-related SIGILL may only occur if we are not in the zero page. -+ // On AIX, we get a SIGILL if we jump to 0x0 or to somewhere else -+ // in the zero page, because it is filled with 0x0. We ignore -+ // explicit SIGILLs in the zero page. -+ if (sig == SIGILL && (pc < (address) 0x200)) { -+ if (TraceTraps) { -+ tty->print_raw_cr("SIGILL happened inside zero page."); -+ } -+ goto report_and_die; -+ } -+ -+ // Handle signal from NativeJump::patch_verified_entry(). -+ if (( TrapBasedNotEntrantChecks && sig == SIGTRAP && nativeInstruction_at(pc)->is_sigtrap_zombie_not_entrant()) || -+ (!TrapBasedNotEntrantChecks && sig == SIGILL && nativeInstruction_at(pc)->is_sigill_zombie_not_entrant())) { -+ if (TraceTraps) { -+ tty->print_cr("trap: zombie_not_entrant (%s)", (sig == SIGTRAP) ? "SIGTRAP" : "SIGILL"); -+ } -+ stub = SharedRuntime::get_handle_wrong_method_stub(); -+ goto run_stub; -+ } -+ -+ else if (sig == SIGSEGV && os::is_poll_address(addr)) { -+ if (TraceTraps) { -+ tty->print_cr("trap: safepoint_poll at " INTPTR_FORMAT " (SIGSEGV)", pc); -+ } -+ stub = SharedRuntime::get_poll_stub(pc); -+ goto run_stub; -+ } -+ -+ // SIGTRAP-based ic miss check in compiled code. -+ else if (sig == SIGTRAP && TrapBasedICMissChecks && -+ nativeInstruction_at(pc)->is_sigtrap_ic_miss_check()) { -+ if (TraceTraps) { -+ tty->print_cr("trap: ic_miss_check at " INTPTR_FORMAT " (SIGTRAP)", pc); -+ } -+ stub = SharedRuntime::get_ic_miss_stub(); -+ goto run_stub; -+ } -+ -+ // SIGTRAP-based implicit null check in compiled code. -+ else if (sig == SIGTRAP && TrapBasedNullChecks && -+ nativeInstruction_at(pc)->is_sigtrap_null_check()) { -+ if (TraceTraps) { -+ tty->print_cr("trap: null_check at " INTPTR_FORMAT " (SIGTRAP)", pc); -+ } -+ stub = SharedRuntime::continuation_for_implicit_exception(thread, pc, SharedRuntime::IMPLICIT_NULL); -+ goto run_stub; -+ } -+ -+ // SIGSEGV-based implicit null check in compiled code. -+ else if (sig == SIGSEGV && ImplicitNullChecks && -+ CodeCache::contains((void*) pc) && -+ !MacroAssembler::needs_explicit_null_check((intptr_t) info->si_addr)) { -+ if (TraceTraps) { -+ tty->print_cr("trap: null_check at " INTPTR_FORMAT " (SIGSEGV)", pc); -+ } -+ stub = SharedRuntime::continuation_for_implicit_exception(thread, pc, SharedRuntime::IMPLICIT_NULL); -+ } -+ -+#ifdef COMPILER2 -+ // SIGTRAP-based implicit range check in compiled code. -+ else if (sig == SIGTRAP && TrapBasedRangeChecks && -+ nativeInstruction_at(pc)->is_sigtrap_range_check()) { -+ if (TraceTraps) { -+ tty->print_cr("trap: range_check at " INTPTR_FORMAT " (SIGTRAP)", pc); -+ } -+ stub = SharedRuntime::continuation_for_implicit_exception(thread, pc, SharedRuntime::IMPLICIT_NULL); -+ goto run_stub; -+ } -+#endif -+ -+ else if (sig == SIGFPE /* && info->si_code == FPE_INTDIV */) { -+ if (TraceTraps) { -+ tty->print_raw_cr("Fix SIGFPE handler, trying divide by zero handler."); -+ } -+ stub = SharedRuntime::continuation_for_implicit_exception(thread, pc, SharedRuntime::IMPLICIT_DIVIDE_BY_ZERO); -+ goto run_stub; -+ } -+ -+ else if (sig == SIGBUS) { -+ // BugId 4454115: A read from a MappedByteBuffer can fault here if the -+ // underlying file has been truncated. Do not crash the VM in such a case. -+ CodeBlob* cb = CodeCache::find_blob_unsafe(pc); -+ nmethod* nm = cb->is_nmethod() ? (nmethod*)cb : NULL; -+ if (nm != NULL && nm->has_unsafe_access()) { -+ // We don't really need a stub here! Just set the pending exeption and -+ // continue at the next instruction after the faulting read. Returning -+ // garbage from this read is ok. -+ thread->set_pending_unsafe_access_error(); -+ uc->uc_mcontext.mc_srr0 = ((unsigned long)pc) + 4; -+ return 1; -+ } -+ } -+ } -+ -+ else { // thread->thread_state() != _thread_in_Java -+ // Detect CPU features. This is only done at the very start of the VM. Later, the -+ // VM_Version::is_determine_features_test_running() flag should be false. -+ -+ if (sig == SIGILL && VM_Version::is_determine_features_test_running()) { -+ // SIGILL must be caused by VM_Version::determine_features(). -+ *(int *)pc = 0; // patch instruction to 0 to indicate that it causes a SIGILL, -+ // flushing of icache is not necessary. -+ stub = pc + 4; // continue with next instruction. -+ goto run_stub; -+ } -+ else if (thread->thread_state() == _thread_in_vm && -+ sig == SIGBUS && thread->doing_unsafe_access()) { -+ // We don't really need a stub here! Just set the pending exeption and -+ // continue at the next instruction after the faulting read. Returning -+ // garbage from this read is ok. -+ thread->set_pending_unsafe_access_error(); -+ uc->uc_mcontext.mc_srr0 = ((unsigned long)pc) + 4; -+ return 1; -+ } -+ } -+ -+ // Check to see if we caught the safepoint code in the -+ // process of write protecting the memory serialization page. -+ // It write enables the page immediately after protecting it -+ // so we can just return to retry the write. -+ if ((sig == SIGSEGV) && -+ os::is_memory_serialize_page(thread, addr)) { -+ // Synchronization problem in the pseudo memory barrier code (bug id 6546278) -+ // Block current thread until the memory serialize page permission restored. -+ os::block_on_serialize_page_trap(); -+ return true; -+ } -+ } -+ -+run_stub: -+ -+ // One of the above code blocks ininitalized the stub, so we want to -+ // delegate control to that stub. -+ if (stub != NULL) { -+ // Save all thread context in case we need to restore it. -+ if (thread != NULL) thread->set_saved_exception_pc(pc); -+ uc->uc_mcontext.mc_srr0 = (unsigned long)stub; -+ return 1; -+ } -+ -+run_chained_handler: -+ -+ // signal-chaining -+ if (os::Bsd::chained_handler(sig, info, ucVoid)) { -+ return 1; -+ } -+ if (!abort_if_unrecognized) { -+ // caller wants another chance, so give it to him -+ return 0; -+ } -+ -+report_and_die: -+ -+ // Use sigthreadmask instead of sigprocmask on AIX and unmask current signal. -+ sigset_t newset; -+ sigemptyset(&newset); -+ sigaddset(&newset, sig); -+ sigprocmask(SIG_UNBLOCK, &newset, NULL); -+ -+ VMError err(t, sig, pc, info, ucVoid); -+ err.report_and_die(); -+ -+ ShouldNotReachHere(); -+ return 0; -+} -+ -+void os::Bsd::init_thread_fpu_state(void) { -+ // Disable FP exceptions. -+ __asm__ __volatile__ ("mtfsfi 6,0"); -+} -+ -+/////////////////////////////////////////////////////////////////////////////// -+// thread stack -+ -+size_t os::Bsd::min_stack_allowed = 128*K; -+ -+bool os::Bsd::supports_variable_stack_size() { return true; } -+ -+// return default stack size for thr_type -+size_t os::Bsd::default_stack_size(os::ThreadType thr_type) { -+ // default stack size (compiler thread needs larger stack) -+ // Notice that the setting for compiler threads here have no impact -+ // because of the strange 'fallback logic' in os::create_thread(). -+ // Better set CompilerThreadStackSize in globals_.hpp if you want to -+ // specify a different stack size for compiler threads! -+ size_t s = (thr_type == os::compiler_thread ? 4 * M : 1024 * K); -+ return s; -+} -+ -+size_t os::Bsd::default_guard_size(os::ThreadType thr_type) { -+ return 2 * page_size(); -+} -+ -+// Java thread: -+// -+// Low memory addresses -+// +------------------------+ -+// | |\ JavaThread created by VM does not have glibc -+// | glibc guard page | - guard, attached Java thread usually has -+// | |/ 1 page glibc guard. -+// P1 +------------------------+ Thread::stack_base() - Thread::stack_size() -+// | |\ -+// | HotSpot Guard Pages | - red and yellow pages -+// | |/ -+// +------------------------+ JavaThread::stack_yellow_zone_base() -+// | |\ -+// | Normal Stack | - -+// | |/ -+// P2 +------------------------+ Thread::stack_base() -+// -+// Non-Java thread: -+// -+// Low memory addresses -+// +------------------------+ -+// | |\ -+// | glibc guard page | - usually 1 page -+// | |/ -+// P1 +------------------------+ Thread::stack_base() - Thread::stack_size() -+// | |\ -+// | Normal Stack | - -+// | |/ -+// P2 +------------------------+ Thread::stack_base() -+// -+// ** P1 (aka bottom) and size ( P2 = P1 - size) are the address and stack size returned from -+// pthread_attr_getstack() -+ -+static void current_stack_region(address * bottom, size_t * size) { -+#ifdef __APPLE__ -+ pthread_t self = pthread_self(); -+ void *stacktop = pthread_get_stackaddr_np(self); -+ *size = pthread_get_stacksize_np(self); -+ // workaround for OS X 10.9.0 (Mavericks) -+ // pthread_get_stacksize_np returns 128 pages even though the actual size is 2048 pages -+ if (pthread_main_np() == 1) { -+ if ((*size) < (DEFAULT_MAIN_THREAD_STACK_PAGES * (size_t)getpagesize())) { -+ char kern_osrelease[256]; -+ size_t kern_osrelease_size = sizeof(kern_osrelease); -+ int ret = sysctlbyname("kern.osrelease", kern_osrelease, &kern_osrelease_size, NULL, 0); -+ if (ret == 0) { -+ // get the major number, atoi will ignore the minor amd micro portions of the version string -+ if (atoi(kern_osrelease) >= OS_X_10_9_0_KERNEL_MAJOR_VERSION) { -+ *size = (DEFAULT_MAIN_THREAD_STACK_PAGES*getpagesize()); -+ } -+ } -+ } -+ } -+ *bottom = (address) stacktop - *size; -+#elif defined(__OpenBSD__) -+ stack_t ss; -+ int rslt = pthread_stackseg_np(pthread_self(), &ss); -+ -+ if (rslt != 0) -+ fatal(err_msg("pthread_stackseg_np failed with err = %d", rslt)); -+ -+ *bottom = (address)((char *)ss.ss_sp - ss.ss_size); -+ *size = ss.ss_size; -+#else -+ pthread_attr_t attr; -+ -+ int rslt = pthread_attr_init(&attr); -+ -+ // JVM needs to know exact stack location, abort if it fails -+ if (rslt != 0) -+ fatal(err_msg("pthread_attr_init failed with err = %d", rslt)); -+ -+ rslt = pthread_attr_get_np(pthread_self(), &attr); -+ -+ if (rslt != 0) -+ fatal(err_msg("pthread_attr_get_np failed with err = %d", rslt)); -+ -+ if (pthread_attr_getstackaddr(&attr, (void **)bottom) != 0 || -+ pthread_attr_getstacksize(&attr, size) != 0) { -+ fatal("Can not locate current stack attributes!"); -+ } -+ -+ pthread_attr_destroy(&attr); -+#endif -+ assert(os::current_stack_pointer() >= *bottom && -+ os::current_stack_pointer() < *bottom + *size, "just checking"); -+} -+ -+address os::current_stack_base() { -+ address bottom; -+ size_t size; -+ current_stack_region(&bottom, &size); -+ return (bottom + size); -+} -+ -+size_t os::current_stack_size() { -+ // stack size includes normal stack and HotSpot guard pages -+ address bottom; -+ size_t size; -+ current_stack_region(&bottom, &size); -+ return size; -+} -+ -+///////////////////////////////////////////////////////////////////////////// -+// helper functions for fatal error handler -+ -+void os::print_context(outputStream *st, void *context) { -+ if (context == NULL) return; -+ -+ ucontext_t* uc = (ucontext_t*)context; -+ -+ st->print_cr("Registers:"); -+ st->print("pc =" INTPTR_FORMAT " ", uc->uc_mcontext.mc_srr0); -+ st->print("lr =" INTPTR_FORMAT " ", uc->uc_mcontext.mc_lr); -+ st->print("ctr=" INTPTR_FORMAT " ", uc->uc_mcontext.mc_ctr); -+ st->cr(); -+ for (int i = 0; i < 32; i++) { -+ st->print("r%-2d=" INTPTR_FORMAT " ", i, uc->uc_mcontext.mc_gpr[i]); -+ if (i % 3 == 2) st->cr(); -+ } -+ st->cr(); -+ st->cr(); -+ -+ intptr_t *sp = (intptr_t *)os::Bsd::ucontext_get_sp(uc); -+ st->print_cr("Top of Stack: (sp=" PTR_FORMAT ")", p2i(sp)); -+ print_hex_dump(st, (address)sp, (address)(sp + 128), sizeof(intptr_t)); -+ st->cr(); -+ -+ // Note: it may be unsafe to inspect memory near pc. For example, pc may -+ // point to garbage if entry point in an nmethod is corrupted. Leave -+ // this at the end, and hope for the best. -+ address pc = os::Bsd::ucontext_get_pc(uc); -+ st->print_cr("Instructions: (pc=" PTR_FORMAT ")", p2i(pc)); -+ print_hex_dump(st, pc - 64, pc + 64, /*instrsize=*/4); -+ st->cr(); -+} -+ -+void os::print_register_info(outputStream *st, void *context) { -+ if (context == NULL) return; -+ -+ ucontext_t *uc = (ucontext_t*)context; -+ -+ st->print_cr("Register to memory mapping:"); -+ st->cr(); -+ -+ // this is only for the "general purpose" registers -+ for (int i = 0; i < 32; i++) { -+ st->print("r%-2d=", i); -+ print_location(st, uc->uc_mcontext.mc_gpr[i]); -+ } -+ st->cr(); -+} -+ -+extern "C" { -+ int SpinPause() { -+ return 0; -+ } -+} -+ -+#ifndef PRODUCT -+void os::verify_stack_alignment() { -+ assert(((intptr_t)os::current_stack_pointer() & (StackAlignmentInBytes-1)) == 0, "incorrect stack alignment"); -+} -+#endif ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/os_bsd_ppc.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,35 @@ -+/* -+ * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2013 SAP AG. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#ifndef OS_CPU_BSD_PPC_VM_OS_BSD_PPC_HPP -+#define OS_CPU_BSD_PPC_VM_OS_BSD_PPC_HPP -+ -+ static void setup_fpu() {} -+ -+ // Used to register dynamic code cache area with the OS -+ // Note: Currently only used in 64 bit Windows implementations -+ static bool register_code_area(char *low, char *high) { return true; } -+ -+#endif // OS_CPU_BSD_PPC_VM_OS_BSD_PPC_HPP ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/prefetch_bsd_ppc.inline.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,50 @@ -+/* -+ * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2013 SAP AG. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#ifndef OS_CPU_BSD_PPC_VM_PREFETCH_BSD_PPC_INLINE_HPP -+#define OS_CPU_BSD_PPC_VM_PREFETCH_BSD_PPC_INLINE_HPP -+ -+#include "runtime/prefetch.hpp" -+ -+ -+inline void Prefetch::read(void *loc, intx interval) { -+ __asm__ __volatile__ ( -+ " dcbt 0, %0 \n" -+ : -+ : /*%0*/"r" ( ((address)loc) +((long)interval) ) -+ //: -+ ); -+} -+ -+inline void Prefetch::write(void *loc, intx interval) { -+ __asm__ __volatile__ ( -+ " dcbtst 0, %0 \n" -+ : -+ : /*%0*/"r" ( ((address)loc) +((long)interval) ) -+ //: -+ ); -+} -+ -+#endif // OS_CPU_BSD_PPC_VM_PREFETCH_BSD_PPC_INLINE_HPP ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/threadLS_bsd_ppc.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,39 @@ -+/* -+ * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2013 SAP AG. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#include "precompiled.hpp" -+#include "runtime/threadLocalStorage.hpp" -+ -+void ThreadLocalStorage::generate_code_for_get_thread() { -+ // nothing we can do here for user-level thread -+} -+ -+void ThreadLocalStorage::pd_init() { -+ // Nothing to do -+} -+ -+void ThreadLocalStorage::pd_set_thread(Thread* thread) { -+ os::thread_local_storage_at_put(ThreadLocalStorage::thread_index(), thread); -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/threadLS_bsd_ppc.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,36 @@ -+/* -+ * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2013 SAP AG. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#ifndef OS_CPU_BSD_PPC_VM_THREADLS_BSD_PPC_HPP -+#define OS_CPU_BSD_PPC_VM_THREADLS_BSD_PPC_HPP -+ -+ // Processor dependent parts of ThreadLocalStorage -+ -+public: -+ static Thread* thread() { -+ return (Thread *) os::thread_local_storage_at(thread_index()); -+ } -+ -+#endif // OS_CPU_BSD_PPC_VM_THREADLS_BSD_PPC_HPP ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/thread_bsd_ppc.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,36 @@ -+/* -+ * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2014 SAP AG. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#include "precompiled.hpp" -+#include "runtime/frame.hpp" -+#include "runtime/thread.hpp" -+ -+// Forte Analyzer AsyncGetCallTrace profiling support is not implemented on Bsd/PPC. -+bool JavaThread::pd_get_top_frame_for_signal_handler(frame* fr_addr, void* ucontext, bool isInJava) { -+ Unimplemented(); -+ return false; -+} -+ -+void JavaThread::cache_global_variables() { } ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/thread_bsd_ppc.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,83 @@ -+/* -+ * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2013 SAP AG. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#ifndef OS_CPU_BSD_PPC_VM_THREAD_BSD_PPC_HPP -+#define OS_CPU_BSD_PPC_VM_THREAD_BSD_PPC_HPP -+ -+ private: -+ -+ void pd_initialize() { -+ _anchor.clear(); -+ _last_interpreter_fp = NULL; -+ } -+ -+ // The `last' frame is the youngest Java frame on the thread's stack. -+ frame pd_last_frame() { -+ assert(has_last_Java_frame(), "must have last_Java_sp() when suspended"); -+ -+ intptr_t* sp = last_Java_sp(); -+ address pc = _anchor.last_Java_pc(); -+ -+ // Last_Java_pc ist not set, if we come here from compiled code. -+ if (pc == NULL) { -+ pc = (address) *(sp + 2); -+ } -+ -+ return frame(sp, pc); -+ } -+ -+ public: -+ -+ void set_base_of_stack_pointer(intptr_t* base_sp) {} -+ intptr_t* base_of_stack_pointer() { return NULL; } -+ void record_base_of_stack_pointer() {} -+ -+ // These routines are only used on cpu architectures that -+ // have separate register stacks (Itanium). -+ static bool register_stack_overflow() { return false; } -+ static void enable_register_stack_guard() {} -+ static void disable_register_stack_guard() {} -+ -+ bool pd_get_top_frame_for_signal_handler(frame* fr_addr, void* ucontext, bool isInJava); -+ -+ protected: -+ -+ // -Xprof support -+ // -+ // In order to find the last Java fp from an async profile -+ // tick, we store the current interpreter fp in the thread. -+ // This value is only valid while we are in the C++ interpreter -+ // and profiling. -+ intptr_t *_last_interpreter_fp; -+ -+ public: -+ -+ static ByteSize last_interpreter_fp_offset() { -+ return byte_offset_of(JavaThread, _last_interpreter_fp); -+ } -+ -+ intptr_t* last_interpreter_fp() { return _last_interpreter_fp; } -+ -+#endif // OS_CPU_BSD_PPC_VM_THREAD_BSD_PPC_HPP ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./hotspot/src/os_cpu/bsd_ppc/vm/vmStructs_bsd_ppc.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -0,0 +1,55 @@ -+/* -+ * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright 2012, 2013 SAP AG. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ * -+ */ -+ -+#ifndef OS_CPU_BSD_PPC_VM_VMSTRUCTS_BSD_PPC_HPP -+#define OS_CPU_BSD_PPC_VM_VMSTRUCTS_BSD_PPC_HPP -+ -+// These are the OS and CPU-specific fields, types and integer -+// constants required by the Serviceability Agent. This file is -+// referenced by vmStructs.cpp. -+ -+#define VM_STRUCTS_OS_CPU(nonstatic_field, static_field, unchecked_nonstatic_field, volatile_nonstatic_field, nonproduct_nonstatic_field, c2_nonstatic_field, unchecked_c1_static_field, unchecked_c2_static_field) \ -+ \ -+ /******************************/ \ -+ /* Threads (NOTE: incomplete) */ \ -+ /******************************/ \ -+ nonstatic_field(OSThread, _thread_id, pid_t) \ -+ nonstatic_field(OSThread, _pthread_id, pthread_t) -+ -+ -+#define VM_TYPES_OS_CPU(declare_type, declare_toplevel_type, declare_oop_type, declare_integer_type, declare_unsigned_integer_type, declare_c1_toplevel_type, declare_c2_type, declare_c2_toplevel_type) \ -+ \ -+ /**********************/ \ -+ /* Posix Thread IDs */ \ -+ /**********************/ \ -+ \ -+ declare_integer_type(pid_t) \ -+ declare_unsigned_integer_type(pthread_t) -+ -+#define VM_INT_CONSTANTS_OS_CPU(declare_constant, declare_preprocessor_constant, declare_c1_constant, declare_c2_constant, declare_c2_preprocessor_constant) -+ -+#define VM_LONG_CONSTANTS_OS_CPU(declare_constant, declare_preprocessor_constant, declare_c1_constant, declare_c2_constant, declare_c2_preprocessor_constant) -+ -+#endif // OS_CPU_BSD_PPC_VM_VMSTRUCTS_BSD_PPC_HPP ---- ./hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -281,11 +281,11 @@ - address os::current_stack_pointer() { - #if defined(__clang__) || defined(__llvm__) - register void *esp; -- __asm__("mov %%"SPELL_REG_SP", %0":"=r"(esp)); -+ __asm__("mov %%" SPELL_REG_SP ", %0" : "=r" (esp)); - return (address) esp; - #elif defined(SPARC_WORKS) - register void *esp; -- __asm__("mov %%"SPELL_REG_SP", %0":"=r"(esp)); -+ __asm__("mov %%" SPELL_REG_SP ", %0" : "=r" (esp)); - return (address) ((char*)esp + sizeof(long)*2); - #else - register void *esp __asm__ (SPELL_REG_SP); -@@ -368,7 +368,7 @@ - intptr_t* _get_previous_fp() { - #if defined(SPARC_WORKS) || defined(__clang__) || defined(__llvm__) - register intptr_t **ebp; -- __asm__("mov %%"SPELL_REG_FP", %0":"=r"(ebp)); -+ __asm__("mov %%" SPELL_REG_FP ", %0" : "=r" (ebp)); - #else - register intptr_t **ebp __asm__ (SPELL_REG_FP); - #endif -@@ -594,7 +594,11 @@ - stub = SharedRuntime::continuation_for_implicit_exception(thread, pc, SharedRuntime::IMPLICIT_NULL); - } - } else if (thread->thread_state() == _thread_in_vm && -+#ifdef __FreeBSD__ -+ (sig == SIGBUS || sig == SIGSEGV) && -+#else - sig == SIGBUS && /* info->si_code == BUS_OBJERR && */ -+#endif - thread->doing_unsafe_access()) { - stub = StubRoutines::handler_for_unsafe_access(); - } ---- ./hotspot/src/share/vm/code/compiledIC.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/code/compiledIC.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -222,7 +222,7 @@ - assert(bytecode == Bytecodes::_invokeinterface, ""); - int itable_index = call_info->itable_index(); - entry = VtableStubs::find_itable_stub(itable_index); -- if (entry == false) { -+ if (entry == NULL) { - return false; - } - #ifdef ASSERT ---- ./hotspot/src/share/vm/gc_implementation/g1/g1BlockOffsetTable.inline.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/gc_implementation/g1/g1BlockOffsetTable.inline.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -49,10 +49,11 @@ - - #define check_index(index, msg) \ - assert((index) < (_reserved.word_size() >> LogN_words), \ -- err_msg("%s - index: "SIZE_FORMAT", _vs.committed_size: "SIZE_FORMAT, \ -+ err_msg("%s - index: " SIZE_FORMAT \ -+ ", _vs.committed_size: " SIZE_FORMAT, \ - msg, (index), (_reserved.word_size() >> LogN_words))); \ - assert(G1CollectedHeap::heap()->is_in_exact(address_for_index_raw(index)), \ -- err_msg("Index "SIZE_FORMAT" corresponding to "PTR_FORMAT \ -+ err_msg("Index " SIZE_FORMAT " corresponding to " PTR_FORMAT \ - " (%u) is not in committed area.", \ - (index), \ - p2i(address_for_index_raw(index)), \ ---- ./hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -668,7 +668,7 @@ - jlong ret_val = now - _time_of_last_gc; - // XXX See note in genCollectedHeap::millis_since_last_gc(). - if (ret_val < 0) { -- NOT_PRODUCT(warning("time warp: "INT64_FORMAT, ret_val);) -+ NOT_PRODUCT(warning("time warp: " INT64_FORMAT, ret_val);) - return 0; - } - return ret_val; ---- ./hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -3291,7 +3291,7 @@ - jlong ret_val = now - _time_of_last_gc; - // XXX See note in genCollectedHeap::millis_since_last_gc(). - if (ret_val < 0) { -- NOT_PRODUCT(warning("time warp: "INT64_FORMAT, ret_val);) -+ NOT_PRODUCT(warning("time warp: " INT64_FORMAT, ret_val);) - return 0; - } - return ret_val; ---- ./hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/gc_implementation/shared/parGCAllocBuffer.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -98,10 +98,10 @@ - if (_allocated == 0) { - assert(_unused == 0, - err_msg("Inconsistency in PLAB stats: " -- "_allocated: "SIZE_FORMAT", " -- "_wasted: "SIZE_FORMAT", " -- "_unused: "SIZE_FORMAT", " -- "_used : "SIZE_FORMAT, -+ "_allocated: " SIZE_FORMAT ", " -+ "_wasted: " SIZE_FORMAT ", " -+ "_unused: " SIZE_FORMAT ", " -+ "_used : " SIZE_FORMAT, - _allocated, _wasted, _unused, _used)); - - _allocated = 1; ---- ./hotspot/src/share/vm/memory/genCollectedHeap.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/memory/genCollectedHeap.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -1403,7 +1403,7 @@ - // back a time later than 'now'. - jlong retVal = now - tolgc_cl.time(); - if (retVal < 0) { -- NOT_PRODUCT(warning("time warp: "INT64_FORMAT, (int64_t) retVal);) -+ NOT_PRODUCT(warning("time warp: " INT64_FORMAT, (int64_t) retVal);) - return 0; - } - return retVal; ---- ./hotspot/src/share/vm/memory/generation.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/memory/generation.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -422,7 +422,7 @@ - // have to guard against non-monotonicity. - NOT_PRODUCT( - if (now < _time_of_last_gc) { -- warning("time warp: "INT64_FORMAT" to "INT64_FORMAT, (int64_t)_time_of_last_gc, (int64_t)now); -+ warning("time warp: " INT64_FORMAT " to " INT64_FORMAT, (int64_t)_time_of_last_gc, (int64_t)now); - } - ) - return _time_of_last_gc; ---- ./hotspot/src/share/vm/memory/referenceProcessor.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/memory/referenceProcessor.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -161,7 +161,7 @@ - - NOT_PRODUCT( - if (now < _soft_ref_timestamp_clock) { -- warning("time warp: "INT64_FORMAT" to "INT64_FORMAT, -+ warning("time warp: " INT64_FORMAT " to " INT64_FORMAT, - _soft_ref_timestamp_clock, now); - } - ) ---- ./hotspot/src/share/vm/opto/node.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/opto/node.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -286,6 +286,10 @@ - #ifdef _MSC_VER // the IDX_INIT hack falls foul of warning C4355 - #pragma warning( disable:4355 ) // 'this' : used in base member initializer list - #endif -+#ifdef __clang__ -+#pragma clang diagnostic push -+#pragma GCC diagnostic ignored "-Wuninitialized" -+#endif - - // Out-of-line code from node constructors. - // Executed only when extra debug info. is being passed around. -@@ -493,6 +497,10 @@ - _in[6] = n6; if (n6 != NULL) n6->add_out((Node *)this); - } - -+#ifdef __clang__ -+#pragma clang diagnostic pop -+#endif -+ - - //------------------------------clone------------------------------------------ - // Clone a Node. ---- ./hotspot/src/share/vm/prims/unsafe.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/prims/unsafe.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -985,7 +985,7 @@ - UNSAFE_END - - --#define DAC_Args CLS"[B["OBJ -+#define DAC_Args CLS "[B[" OBJ - // define a class but do not make it known to the class loader or system dictionary - // - host_class: supplies context for linkage, access control, protection domain, and class loader - // - data: bytes of a class file, a raw memory address (length gives the number of bytes) ---- ./hotspot/src/share/vm/prims/whitebox.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/prims/whitebox.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -158,8 +158,10 @@ - } - WB_END - --#ifdef LINUX -+#if defined(LINUX) || defined(_ALLBSD_SOURCE) - #include "utilities/elfFile.hpp" -+#endif -+#if defined(LINUX) - #include "osContainer_linux.hpp" - #endif - -@@ -1017,7 +1019,7 @@ - // Checks that the library libfile has the noexecstack bit set. - WB_ENTRY(jboolean, WB_CheckLibSpecifiesNoexecstack(JNIEnv* env, jobject o, jstring libfile)) - jboolean ret = false; --#ifdef LINUX -+#if defined(LINUX) || defined(_ALLBSD_SOURCE) - // Can't be in VM when we call JNI. - ThreadToNativeFromVM ttnfv(thread); - const char* lf = env->GetStringUTFChars(libfile, NULL); ---- ./hotspot/src/share/vm/runtime/atomic.inline.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/runtime/atomic.inline.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -63,6 +63,9 @@ - #endif - - // BSD -+#ifdef TARGET_OS_ARCH_bsd_ppc -+# include "atomic_bsd_ppc.inline.hpp" -+#endif - #ifdef TARGET_OS_ARCH_bsd_x86 - # include "atomic_bsd_x86.inline.hpp" - #endif ---- ./hotspot/src/share/vm/runtime/globals.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/runtime/globals.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -94,6 +94,9 @@ - #ifdef TARGET_OS_ARCH_aix_ppc - # include "globals_aix_ppc.hpp" - #endif -+#ifdef TARGET_OS_ARCH_bsd_ppc -+# include "globals_bsd_ppc.hpp" -+#endif - #ifdef TARGET_OS_ARCH_bsd_x86 - # include "globals_bsd_x86.hpp" - #endif ---- ./hotspot/src/share/vm/runtime/orderAccess.inline.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/runtime/orderAccess.inline.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -64,6 +64,9 @@ - #endif - - // BSD -+#ifdef TARGET_OS_ARCH_bsd_ppc -+# include "orderAccess_bsd_ppc.inline.hpp" -+#endif - #ifdef TARGET_OS_ARCH_bsd_x86 - # include "orderAccess_bsd_x86.inline.hpp" - #endif ---- ./hotspot/src/share/vm/runtime/os.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/runtime/os.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -442,15 +442,6 @@ - if (_native_java_library == NULL) { - vm_exit_during_initialization("Unable to load native library", ebuf); - } -- --#if defined(__OpenBSD__) -- // Work-around OpenBSD's lack of $ORIGIN support by pre-loading libnet.so -- // ignore errors -- if (dll_build_name(buffer, sizeof(buffer), Arguments::get_dll_dir(), -- "net")) { -- dll_load(buffer, ebuf, sizeof(ebuf)); -- } --#endif - } - static jboolean onLoaded = JNI_FALSE; - if (onLoaded) { ---- ./hotspot/src/share/vm/runtime/os.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/runtime/os.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -871,6 +871,9 @@ - #ifdef TARGET_OS_ARCH_aix_ppc - # include "os_aix_ppc.hpp" - #endif -+#ifdef TARGET_OS_ARCH_bsd_ppc -+# include "os_bsd_ppc.hpp" -+#endif - #ifdef TARGET_OS_ARCH_bsd_x86 - # include "os_bsd_x86.hpp" - #endif ---- ./hotspot/src/share/vm/runtime/prefetch.inline.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/runtime/prefetch.inline.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -63,6 +63,9 @@ - #endif - - // BSD -+#ifdef TARGET_OS_ARCH_bsd_ppc -+# include "prefetch_bsd_ppc.inline.hpp" -+#endif - #ifdef TARGET_OS_ARCH_bsd_x86 - # include "prefetch_bsd_x86.inline.hpp" - #endif ---- ./hotspot/src/share/vm/runtime/thread.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/runtime/thread.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -1730,6 +1730,9 @@ - #ifdef TARGET_OS_ARCH_aix_ppc - # include "thread_aix_ppc.hpp" - #endif -+#ifdef TARGET_OS_ARCH_bsd_ppc -+# include "thread_bsd_ppc.hpp" -+#endif - #ifdef TARGET_OS_ARCH_bsd_x86 - # include "thread_bsd_x86.hpp" - #endif ---- ./hotspot/src/share/vm/runtime/threadLocalStorage.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/runtime/threadLocalStorage.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -75,6 +75,9 @@ - #ifdef TARGET_OS_ARCH_aix_ppc - # include "threadLS_aix_ppc.hpp" - #endif -+#ifdef TARGET_OS_ARCH_bsd_ppc -+# include "threadLS_bsd_ppc.hpp" -+#endif - #ifdef TARGET_OS_ARCH_bsd_x86 - # include "threadLS_bsd_x86.hpp" - #endif ---- ./hotspot/src/share/vm/runtime/vmStructs.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/runtime/vmStructs.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -146,6 +146,9 @@ - #ifdef TARGET_OS_ARCH_aix_ppc - # include "vmStructs_aix_ppc.hpp" - #endif -+#ifdef TARGET_OS_ARCH_bsd_ppc -+# include "vmStructs_bsd_ppc.hpp" -+#endif - #ifdef TARGET_OS_ARCH_bsd_x86 - # include "vmStructs_bsd_x86.hpp" - #endif -@@ -2556,6 +2559,8 @@ - /**********************/ \ - /* frame */ \ - /**********************/ \ -+ NOT_ZERO(PPC64_ONLY(declare_constant(frame::abi_minframe_size))) \ -+ NOT_ZERO(PPC64_ONLY(declare_constant(frame::entry_frame_locals_size))) \ - \ - NOT_ZERO(X86_ONLY(declare_constant(frame::entry_frame_call_wrapper_offset))) \ - declare_constant(frame::pc_return_offset) \ ---- ./hotspot/src/share/vm/services/memTracker.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/services/memTracker.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -67,10 +67,6 @@ - os::unsetenv(buf); - } - -- // Construct NativeCallStack::EMPTY_STACK. It may get constructed twice, -- // but it is benign, the results are the same. -- ::new ((void*)&NativeCallStack::EMPTY_STACK) NativeCallStack(0, false); -- - if (!MallocTracker::initialize(level) || - !VirtualMemoryTracker::initialize(level)) { - level = NMT_off; ---- ./hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/utilities/globalDefinitions_gcc.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -30,6 +30,11 @@ - // This file holds compiler-dependent includes, - // globally used constants & types, class (forward) - // declarations and a few frequently used utility functions. -+#if defined(LINUX) || defined(_ALLBSD_SOURCE) -+#ifndef __STDC_LIMIT_MACROS -+#define __STDC_LIMIT_MACROS -+#endif // __STDC_LIMIT_MACROS -+#endif - - #include - #include -@@ -69,9 +74,6 @@ - # endif - - #if defined(LINUX) || defined(_ALLBSD_SOURCE) --#ifndef __STDC_LIMIT_MACROS --#define __STDC_LIMIT_MACROS --#endif // __STDC_LIMIT_MACROS - #include - #include - #ifndef __OpenBSD__ -@@ -242,7 +244,7 @@ - #endif - - // GCC 4.3 does not allow 0.0/0.0 to produce a NAN value --#if (__GNUC__ == 4) && (__GNUC_MINOR__ > 2) -+#if defined(__clang__) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 2)) - #define CAN_USE_NAN_DEFINE 1 - #endif - ---- ./hotspot/src/share/vm/utilities/vmError.cpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/utilities/vmError.cpp Sun Feb 10 09:26:05 2019 -0800 -@@ -22,7 +22,6 @@ - * - */ - --#include - #include "precompiled.hpp" - #include "compiler/compileBroker.hpp" - #include "gc_interface/collectedHeap.hpp" -@@ -399,7 +398,7 @@ - case OOM_MMAP_ERROR: - if (_size) { - st->print("# Native memory allocation "); -- st->print((_id == (int)OOM_MALLOC_ERROR) ? "(malloc) failed to allocate " : -+ st->print((_id == (unsigned int)OOM_MALLOC_ERROR) ? "(malloc) failed to allocate " : - "(mmap) failed to map "); - jio_snprintf(buf, sizeof(buf), SIZE_FORMAT, _size); - st->print("%s", buf); ---- ./hotspot/src/share/vm/utilities/vmError.hpp Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/src/share/vm/utilities/vmError.hpp Sun Feb 10 09:26:05 2019 -0800 -@@ -34,7 +34,7 @@ - friend class VM_ReportJavaOutOfMemory; - friend class Decoder; - -- int _id; // Solaris/Linux signals: 0 - SIGRTMAX -+ unsigned int _id; // Solaris/Linux signals: 0 - SIGRTMAX - // Windows exceptions: 0xCxxxxxxx system errors - // 0x8xxxxxxx system warnings - ---- ./jdk/make/CompileDemos.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/CompileDemos.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -323,7 +323,7 @@ - $(eval $(call SetupJVMTIDemo,hprof, java_crw_demo, \ - -I$(JDK_TOPDIR)/src/share/npt -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt \ - $(BUILD_LIBHPROF_AIX_EXTRA_CFLAGS), C, \ -- -ldl, ws2_32.lib winmm.lib, -lsocket -lnsl, -lpthread, $(BUILD_LIBHPROF_AIX_EXTRA_SRC))) -+ $(LIBDL), ws2_32.lib winmm.lib, -lsocket -lnsl, -lpthread, $(BUILD_LIBHPROF_AIX_EXTRA_SRC))) - - $(eval $(call SetupJVMTIDemo,minst, agent_util java_crw_demo)) - $(eval $(call SetupJVMTIDemo,mtrace, agent_util java_crw_demo)) ---- ./jdk/make/CompileJavaClasses.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/CompileJavaClasses.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -128,23 +128,32 @@ - sun/nio/fs/LinuxFileStore.java \ - sun/nio/fs/LinuxFileSystem.java \ - sun/nio/fs/LinuxFileSystemProvider.java \ -- sun/nio/fs/MagicFileTypeDetector.java \ - sun/nio/fs/LinuxNativeDispatcher.java \ - sun/nio/fs/LinuxUserDefinedFileAttributeView.java \ - sun/nio/fs/LinuxWatchService.java - endif - -+ifeq (, $(filter $(OPENJDK_TARGET_OS), linux bsd)) -+ EXFILES += sun/nio/fs/MagicFileTypeDetector.java -+endif -+ - ifneq ($(OPENJDK_TARGET_OS), macosx) -+ EXFILES += sun/nio/fs/MacOSXFileSystemProvider.java \ -+ sun/nio/fs/MacOSXFileSystem.java \ -+ sun/nio/fs/MacOSXNativeDispatcher.java -+endif -+ -+ifeq (, $(filter $(OPENJDK_TARGET_OS), bsd macosx)) - EXFILES += sun/nio/ch/BsdAsynchronousChannelProvider.java \ - sun/nio/ch/KQueue.java \ -+ sun/nio/ch/KQueueArrayWrapper.java \ - sun/nio/ch/KQueuePort.java \ -+ sun/nio/ch/KQueueSelectorImpl.java \ -+ sun/nio/ch/KQueueSelectorProvider.java \ - sun/nio/fs/BsdFileStore.java \ - sun/nio/fs/BsdFileSystem.java \ - sun/nio/fs/BsdFileSystemProvider.java \ - sun/nio/fs/BsdNativeDispatcher.java \ -- sun/nio/fs/MacOSXFileSystemProvider.java \ -- sun/nio/fs/MacOSXFileSystem.java \ -- sun/nio/fs/MacOSXNativeDispatcher.java \ - sun/tools/attach/BsdAttachProvider.java \ - sun/tools/attach/BsdVirtualMachine.java - endif -@@ -227,9 +236,9 @@ - # Exclude another implicitly not included file. - EXFILES += sun/util/locale/AsciiUtil.java - --ifeq (, $(filter $(OPENJDK_TARGET_OS), solaris macosx aix)) -+ifeq (, $(filter $(OPENJDK_TARGET_OS), solaris bsd macosx aix)) - # -- # only solaris, macosx and aix -+ # only solaris, BSD, macosx and aix - # - EXFILES += sun/nio/fs/PollingWatchService.java - endif -@@ -264,21 +273,26 @@ - $(wildcard $(JDK_TOPDIR)/src/closed/$(OPENJDK_TARGET_OS_API_DIR)/classes) - endif - --MACOSX_SRC_DIRS := --ifeq ($(OPENJDK_TARGET_OS), macosx) -- MACOSX_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/classes -+BSD_SRC_DIRS := -+ifneq (, $(filter $(OPENJDK_TARGET_OS), bsd macosx)) -+ BSD_SRC_DIRS += $(JDK_TOPDIR)/src/bsd/classes - -- # this files are duplicated in MACOSX_SRC_DIRS -- EXFILES += $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/DefaultSelectorProvider.java \ -- $(JDK_TOPDIR)/src/solaris/classes/sun/java2d/BackBufferCapsProvider.java \ -- $(JDK_TOPDIR)/src/solaris/classes/java/net/DefaultInterface.java \ -+ # these files are duplicated in BSD_SRC_DIRS -+ EXFILES += $(JDK_TOPDIR)/src/solaris/classes/java/net/DefaultInterface.java \ -+ $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/DefaultSelectorProvider.java -+endif -+ -+ifeq ($(OPENJDK_TARGET_OS), macosx) -+ BSD_SRC_DIRS += $(JDK_TOPDIR)/src/macosx/classes -+ -+ # these files are duplicated in BSD_SRC_DIRS -+ EXFILES += $(JDK_TOPDIR)/src/solaris/classes/sun/java2d/BackBufferCapsProvider.java \ - $(JDK_TOPDIR)/src/solaris/classes/java/lang/ClassLoaderHelper.java \ - $(JDK_TOPDIR)/src/solaris/classes/sun/util/locale/provider/HostLocaleProviderAdapterImpl.java \ - $(JDK_TOPDIR)/src/solaris/classes/sun/nio/fs/GnomeFileTypeDetector.java \ - $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/sctp/SctpChannelImpl.java \ - $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/sctp/SctpMultiChannelImpl.java \ - $(JDK_TOPDIR)/src/solaris/classes/sun/nio/ch/sctp/SctpServerChannelImpl.java -- - endif - - # The security classes should not end up in the classes directory as that will prevent them -@@ -328,6 +342,7 @@ - SRC:=$(JDK_TOPDIR)/src/share/classes \ - $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/classes \ - $(MACOSX_SRC_DIRS) \ -+ $(BSD_SRC_DIRS) \ - $(AIX_SRC_DIRS) \ - $(JDK_OUTPUTDIR)/gensrc \ - $(JDK_OUTPUTDIR)/gensrc_no_srczip \ -@@ -347,7 +362,7 @@ - SETUP := GENERATE_JDKBYTECODE, \ - SRC := $(JDK_TOPDIR)/src/share/classes \ - $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/classes \ -- $(MACOSX_SRC_DIRS) \ -+ $(BSD_SRC_DIRS) \ - $(CLOSED_SRC_DIRS), \ - INCLUDES := $(SECURITY_PKGS), \ - EXCLUDES := $(EXCLUDES), \ ---- ./jdk/make/CompileLaunchers.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/CompileLaunchers.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -49,7 +49,7 @@ - ORIGIN_ROOT := /.. - endif - --ifeq ($(OPENJDK_TARGET_OS), macosx) -+ifneq ($(findstring $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx), ) - ORIGIN_ARG := $(call SET_EXECUTABLE_ORIGIN) - else - ORIGIN_ARG := $(call SET_EXECUTABLE_ORIGIN,$(ORIGIN_ROOT)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/jli) -@@ -60,7 +60,7 @@ - # System.loadLibrary("jawt") first. This was the behaviour described in the - # devloper documentation of JAWT and what worked with OpenJDK6. - # --ifneq ($(findstring $(OPENJDK_TARGET_OS), linux solaris), ) -+ifneq ($(findstring $(OPENJDK_TARGET_OS), linux solaris bsd), ) - ORIGIN_ARG += $(call SET_EXECUTABLE_ORIGIN,$(ORIGIN_ROOT)/lib$(OPENJDK_TARGET_CPU_LIBDIR)) - endif - -@@ -89,6 +89,18 @@ - - $1_LDFLAGS := $3 - $1_LDFLAGS_SUFFIX := -+ ifeq ($(OPENJDK_TARGET_OS), bsd) -+ ifeq ($(BSD_STATIC_LIBJLI), bsd) -+ $1_LDFLAGS += -Wl,--whole-archive $(JDK_OUTPUTDIR)/objs/libjli_static.a \ -+ -Wl,--no-whole-archive -+ $1_LDFLAGS_SUFFIX += -pthread -+ else -+ $1_LDFLAGS += \ -+ $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)$(SHARED_LIBRARY_SUFFIX)) -+ $1_LDFLAGS_SUFFIX += -L$(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/jli -ljli -pthread -+ endif -+ endif -+ - ifeq ($(OPENJDK_TARGET_OS), macosx) - $1_PLIST_FILE := Info-cmdline.plist - ifneq ($(11), ) -@@ -162,9 +174,11 @@ - -DLIBARCHNAME='"$(OPENJDK_TARGET_CPU_LEGACY)"' \ - -DLAUNCHER_NAME='"$(LAUNCHER_NAME)"' \ - -DPROGNAME='"$1"' $(DPACKAGEPATH) \ -+ -DPACKAGE_PATH='"$(PACKAGE_PATH)"' \ - $2, \ - CFLAGS_linux := -fPIC, \ - CFLAGS_solaris := -KPIC -DHAVE_GETHRTIME, \ -+ CFLAGS_bsd := -fPIC, \ - LDFLAGS := $(LDFLAGS_JDKEXE) \ - $(ORIGIN_ARG) \ - $$($1_LDFLAGS), \ -@@ -195,7 +209,7 @@ - - BUILD_LAUNCHERS += $$(BUILD_LAUNCHER_$1) - -- ifneq (,$(filter $(OPENJDK_TARGET_OS), macosx aix)) -+ ifneq (,$(filter $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx aix)) - $$(BUILD_LAUNCHER_$1): $(JDK_OUTPUTDIR)/objs/libjli_static.a - endif - -@@ -476,6 +490,7 @@ - CFLAGS_release := -DPRODUCT, \ - CFLAGS_linux := -fPIC, \ - CFLAGS_solaris := -KPIC, \ -+ CFLAGS_bsd := -fPIC, \ - CFLAGS_macosx := -fPIC, \ - MAPFILE := $(UNPACK_MAPFILE),\ - LDFLAGS := $(UNPACKEXE_ZIPOBJS), \ -@@ -538,7 +553,7 @@ - endif - endif - --ifeq ($(OPENJDK_TARGET_OS), linux) -+ifneq ($(findstring $(OPENJDK_TARGET_OS), linux bsd), ) - BUILD_JEXEC := 1 - endif # OPENJDK_TARGET_OS - -@@ -574,6 +589,7 @@ - $(BUILD_JEXEC_INC), \ - CFLAGS_linux := -fPIC, \ - CFLAGS_solaris := -KPIC, \ -+ CFLAGS_bsd := -fPIC, \ - LDFLAGS := $(LDFLAGS_JDKEXE) \ - $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)$(SHARED_LIBRARY_SUFFIX)), \ - OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/jexec_obj, \ -@@ -590,10 +606,7 @@ - # The java-rmi.cgi script in bin/ only gets delivered in certain situations - # - JAVA_RMI_CGI := $(JDK_OUTPUTDIR)/bin$(OUTPUT_SUBDIR)/java-rmi.cgi --ifeq ($(OPENJDK_TARGET_OS), linux) -- BUILD_LAUNCHERS += $(JAVA_RMI_CGI) --endif --ifeq ($(OPENJDK_TARGET_OS), solaris) -+ifneq ($(findstring $(OPENJDK_TARGET_OS), linux solaris bsd), ) - BUILD_LAUNCHERS += $(JAVA_RMI_CGI) - endif - -@@ -621,7 +634,7 @@ - LINK_JSPAWNHELPER_OBJECTS := $(JDK_OUTPUTDIR)/objs/libjava/childproc.o - LINK_JSPAWNHELPER_FLAGS := - --ifneq ($(findstring $(OPENJDK_TARGET_OS), macosx solaris aix), ) -+ifneq ($(findstring $(OPENJDK_TARGET_OS), bsd macosx solaris aix), ) - BUILD_JSPAWNHELPER := 1 - endif - ---- ./jdk/make/CopyFiles.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/CopyFiles.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -29,6 +29,8 @@ - - ifeq ($(OPENJDK_TARGET_OS), windows) - OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/win32 -+else ifeq ($(OPENJDK_TARGET_OS), bsd) -+ OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/$(shell uname -s | ${TR} "[:upper:]" "[:lower:]") - else ifeq ($(OPENJDK_TARGET_OS), macosx) - OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/darwin - endif -@@ -344,23 +346,23 @@ - $(RM) $(@) - # Now check for other permutations - ifeq ($(JVM_VARIANT_SERVER), true) -- $(PRINTF) "-server KNOWN\n">>$(@) -- $(PRINTF) "-client ALIASED_TO -server\n">>$(@) -+ $(PRINTF) -- "-server KNOWN\n">>$(@) -+ $(PRINTF) -- "-client ALIASED_TO -server\n">>$(@) - ifeq ($(JVM_VARIANT_MINIMAL1), true) -- $(PRINTF) "-minimal KNOWN\n">>$(@) -+ $(PRINTF) -- "-minimal KNOWN\n">>$(@) - endif - else - ifeq ($(JVM_VARIANT_CLIENT), true) -- $(PRINTF) "-client KNOWN\n">>$(@) -- $(PRINTF) "-server ALIASED_TO -client\n">>$(@) -+ $(PRINTF) -- "-client KNOWN\n">>$(@) -+ $(PRINTF) -- "-server ALIASED_TO -client\n">>$(@) - ifeq ($(JVM_VARIANT_MINIMAL1), true) -- $(PRINTF) "-minimal KNOWN\n">>$(@) -+ $(PRINTF) -- "-minimal KNOWN\n">>$(@) - endif - else - ifeq ($(JVM_VARIANT_MINIMAL1), true) -- $(PRINTF) "-minimal KNOWN\n">>$(@) -- $(PRINTF) "-server ALIASED_TO -minimal\n">>$(@) -- $(PRINTF) "-client ALIASED_TO -minimal\n">>$(@) -+ $(PRINTF) -- "-minimal KNOWN\n">>$(@) -+ $(PRINTF) -- "-server ALIASED_TO -minimal\n">>$(@) -+ $(PRINTF) -- "-client ALIASED_TO -minimal\n">>$(@) - endif - endif - endif ---- ./jdk/make/Images.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/Images.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -236,11 +236,11 @@ - endif - - JDK_LIB_FILES := $(NOT_JRE_LIB_FILES) --ifeq ($(OPENJDK_TARGET_OS), linux) -+ifneq ($(findstring $(OPENJDK_TARGET_OS), linux bsd),) - JDK_LIB_FILES += jexec - endif - --ifneq ($(findstring $(OPENJDK_TARGET_OS), linux solaris),) # If Linux or Solaris -+ifneq ($(findstring $(OPENJDK_TARGET_OS), linux solaris bsd),) # If Linux, Solaris, or BSD - JDK_LIB_FILES += $(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX) \ - $(LIBRARY_PREFIX)jawt$(SHARED_LIBRARY_SUFFIX) - endif -@@ -391,7 +391,7 @@ - MAN_SRC_DIR = $(MAN_SRC_BASEDIR)/solaris/doc - MAN1_SUBDIR = sun/man/man1 - endif -- ifeq ($(OPENJDK_TARGET_OS), macosx) -+ ifneq ($(findstring $(OPENJDK_TARGET_OS), bsd macosx),) - MAN_SRC_DIR = $(MAN_SRC_BASEDIR)/bsd/doc - MAN1_SUBDIR = man - endif -@@ -447,7 +447,7 @@ - $(install-file) - endif - -- ifeq ($(OPENJDK_TARGET_OS), linux) -+ ifneq ($(findstring $(OPENJDK_TARGET_OS), linux bsd macosx),) - $(JRE_IMAGE_DIR)/man/ja: - $(ECHO) $(LOG_INFO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@) - $(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja -@@ -455,19 +455,7 @@ - $(JDK_IMAGE_DIR)/man/ja: - $(ECHO) $(LOG_INFO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@) - $(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja -- endif - -- ifeq ($(OPENJDK_TARGET_OS), macosx) -- $(JRE_IMAGE_DIR)/man/ja: -- $(ECHO) $(LOG_INFO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@) -- $(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja -- -- $(JDK_IMAGE_DIR)/man/ja: -- $(ECHO) $(LOG_INFO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@) -- $(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja -- endif -- -- ifeq ($(OPENJDK_TARGET_OS), linux) - JRE_MAN_PAGE_LIST = $(addprefix $(JRE_IMAGE_DIR)/man/man1/, $(JRE_MAN_PAGES)) \ - $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/, $(JRE_MAN_PAGES)) \ - $(JRE_IMAGE_DIR)/man/ja -@@ -489,16 +477,6 @@ - $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/, $(JDK_MAN_PAGES)) - endif - -- ifeq ($(OPENJDK_TARGET_OS), macosx) -- JRE_MAN_PAGE_LIST = $(addprefix $(JRE_IMAGE_DIR)/man/man1/, $(JRE_MAN_PAGES)) \ -- $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/, $(JRE_MAN_PAGES)) \ -- $(JRE_IMAGE_DIR)/man/ja -- -- JDK_MAN_PAGE_LIST = $(addprefix $(JDK_IMAGE_DIR)/man/man1/, $(JDK_MAN_PAGES)) \ -- $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/, $(JDK_MAN_PAGES)) \ -- $(JDK_IMAGE_DIR)/man/ja -- endif -- - endif # Windows - - ################################################################################ ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/make/data/classlist/classlist.bsd Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,2559 @@ -+java/lang/Object -+java/lang/String -+java/io/Serializable -+java/lang/Comparable -+java/lang/CharSequence -+java/lang/Class -+java/lang/reflect/GenericDeclaration -+java/lang/reflect/AnnotatedElement -+java/lang/reflect/Type -+java/lang/Cloneable -+java/lang/ClassLoader -+java/lang/System -+java/lang/Throwable -+java/lang/Error -+java/lang/ThreadDeath -+java/lang/Exception -+java/lang/RuntimeException -+java/lang/SecurityManager -+java/security/ProtectionDomain -+java/security/AccessControlContext -+java/security/SecureClassLoader -+java/lang/ClassNotFoundException -+java/lang/ReflectiveOperationException -+java/lang/NoClassDefFoundError -+java/lang/LinkageError -+java/lang/ClassCastException -+java/lang/ArrayStoreException -+java/lang/VirtualMachineError -+java/lang/OutOfMemoryError -+java/lang/StackOverflowError -+java/lang/IllegalMonitorStateException -+java/lang/ref/Reference -+java/lang/ref/SoftReference -+java/lang/ref/WeakReference -+java/lang/ref/FinalReference -+java/lang/ref/PhantomReference -+sun/misc/Cleaner -+java/lang/ref/Finalizer -+java/lang/Thread -+java/lang/Runnable -+java/lang/ThreadGroup -+java/lang/Thread$UncaughtExceptionHandler -+java/util/Properties -+java/util/Hashtable -+java/util/Map -+java/util/Dictionary -+java/lang/reflect/AccessibleObject -+java/lang/reflect/Field -+java/lang/reflect/Member -+java/lang/reflect/Parameter -+java/lang/reflect/Method -+java/lang/reflect/Executable -+java/lang/reflect/Constructor -+sun/reflect/MagicAccessorImpl -+sun/reflect/MethodAccessorImpl -+sun/reflect/MethodAccessor -+sun/reflect/ConstructorAccessorImpl -+sun/reflect/ConstructorAccessor -+sun/reflect/DelegatingClassLoader -+sun/reflect/ConstantPool -+sun/reflect/UnsafeStaticFieldAccessorImpl -+sun/reflect/UnsafeFieldAccessorImpl -+sun/reflect/FieldAccessorImpl -+sun/reflect/FieldAccessor -+sun/reflect/CallerSensitive -+java/lang/annotation/Annotation -+java/lang/invoke/DirectMethodHandle -+java/lang/invoke/MethodHandle -+java/lang/invoke/MemberName -+java/lang/invoke/MethodHandleNatives -+java/lang/invoke/LambdaForm -+java/lang/invoke/MethodType -+java/lang/BootstrapMethodError -+java/lang/invoke/CallSite -+java/lang/invoke/ConstantCallSite -+java/lang/invoke/MutableCallSite -+java/lang/invoke/VolatileCallSite -+java/lang/StringBuffer -+java/lang/AbstractStringBuilder -+java/lang/Appendable -+java/lang/StringBuilder -+sun/misc/Unsafe -+java/io/ByteArrayInputStream -+java/io/InputStream -+java/io/Closeable -+java/lang/AutoCloseable -+java/io/File -+java/net/URLClassLoader -+java/net/URL -+java/util/jar/Manifest -+sun/misc/Launcher -+sun/misc/Launcher$AppClassLoader -+sun/misc/Launcher$ExtClassLoader -+java/security/CodeSource -+java/lang/StackTraceElement -+java/nio/Buffer -+java/lang/Boolean -+java/lang/Character -+java/lang/Float -+java/lang/Number -+java/lang/Double -+java/lang/Byte -+java/lang/Short -+java/lang/Integer -+java/lang/Long -+java/lang/NullPointerException -+java/lang/ArithmeticException -+java/io/ObjectStreamField -+java/lang/String$CaseInsensitiveComparator -+java/util/Comparator -+java/lang/RuntimePermission -+java/security/BasicPermission -+java/security/Permission -+java/security/Guard -+java/security/AccessController -+java/lang/reflect/ReflectPermission -+sun/reflect/ReflectionFactory$GetReflectionFactoryAction -+java/security/PrivilegedAction -+java/security/cert/Certificate -+java/util/Vector -+java/util/List -+java/util/Collection -+java/lang/Iterable -+java/util/RandomAccess -+java/util/AbstractList -+java/util/AbstractCollection -+java/util/Stack -+sun/reflect/ReflectionFactory -+java/lang/ref/Reference$Lock -+java/lang/ref/Reference$ReferenceHandler -+java/lang/ref/ReferenceQueue -+java/lang/ref/ReferenceQueue$Null -+java/lang/ref/ReferenceQueue$Lock -+java/lang/ref/Finalizer$FinalizerThread -+sun/misc/VM -+java/util/Hashtable$Entry -+java/util/Map$Entry -+java/lang/Math -+java/nio/charset/Charset -+sun/nio/cs/StandardCharsets -+sun/nio/cs/FastCharsetProvider -+java/nio/charset/spi/CharsetProvider -+sun/nio/cs/StandardCharsets$Aliases -+sun/util/PreHashedMap -+java/util/AbstractMap -+sun/nio/cs/StandardCharsets$Classes -+sun/nio/cs/StandardCharsets$Cache -+java/lang/ThreadLocal -+java/util/concurrent/atomic/AtomicInteger -+java/lang/NoSuchMethodError -+java/lang/IncompatibleClassChangeError -+java/util/ArrayList -+java/util/Collections -+java/util/Collections$EmptySet -+java/util/AbstractSet -+java/util/Set -+java/util/Collections$EmptyList -+java/util/Collections$EmptyMap -+java/util/Collections$UnmodifiableRandomAccessList -+java/util/Collections$UnmodifiableList -+java/util/Collections$UnmodifiableCollection -+sun/reflect/Reflection -+java/util/HashMap -+java/util/HashMap$Node -+java/lang/Class$3 -+java/lang/Class$ReflectionData -+java/lang/Class$Atomic -+sun/reflect/generics/repository/ClassRepository -+sun/reflect/generics/repository/GenericDeclRepository -+sun/reflect/generics/repository/AbstractRepository -+java/lang/Class$AnnotationData -+sun/reflect/annotation/AnnotationType -+java/lang/ClassValue$ClassValueMap -+java/util/WeakHashMap -+java/lang/reflect/Modifier -+java/lang/reflect/ReflectAccess -+sun/reflect/LangReflectAccess -+java/util/Arrays -+sun/nio/cs/UTF_8 -+sun/nio/cs/Unicode -+sun/nio/cs/HistoricallyNamedCharset -+java/lang/Class$1 -+sun/reflect/ReflectionFactory$1 -+sun/reflect/NativeConstructorAccessorImpl -+sun/reflect/DelegatingConstructorAccessorImpl -+java/lang/StringCoding -+java/lang/ThreadLocal$ThreadLocalMap -+java/lang/ThreadLocal$ThreadLocalMap$Entry -+java/lang/StringCoding$StringDecoder -+sun/nio/cs/UTF_8$Decoder -+sun/nio/cs/ArrayDecoder -+java/nio/charset/CharsetDecoder -+java/nio/charset/CodingErrorAction -+java/util/Hashtable$EntrySet -+java/util/Collections$SynchronizedSet -+java/util/Collections$SynchronizedCollection -+java/util/Objects -+java/util/Hashtable$Enumerator -+java/util/Enumeration -+java/util/Iterator -+java/lang/Runtime -+sun/misc/Version -+java/io/FileInputStream -+java/io/FileDescriptor -+java/io/FileDescriptor$1 -+sun/misc/JavaIOFileDescriptorAccess -+sun/misc/SharedSecrets -+java/io/FileOutputStream -+java/io/OutputStream -+java/io/Flushable -+java/io/BufferedInputStream -+java/io/FilterInputStream -+java/util/concurrent/atomic/AtomicReferenceFieldUpdater -+java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl -+java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl$1 -+java/security/PrivilegedExceptionAction -+sun/reflect/misc/ReflectUtil -+java/io/PrintStream -+java/io/FilterOutputStream -+java/io/BufferedOutputStream -+java/io/OutputStreamWriter -+java/io/Writer -+sun/nio/cs/StreamEncoder -+sun/security/action/GetPropertyAction -+sun/nio/cs/UTF_8$Encoder -+sun/nio/cs/ArrayEncoder -+java/nio/charset/CharsetEncoder -+java/nio/ByteBuffer -+java/nio/HeapByteBuffer -+java/nio/Bits -+java/nio/ByteOrder -+java/nio/Bits$1 -+sun/misc/JavaNioAccess -+java/io/BufferedWriter -+java/io/DefaultFileSystem -+java/io/UnixFileSystem -+java/io/FileSystem -+java/io/ExpiringCache -+java/io/ExpiringCache$1 -+java/util/LinkedHashMap -+java/io/File$PathStatus -+java/lang/Enum -+java/nio/file/Path -+java/nio/file/Watchable -+java/lang/StringCoding$StringEncoder -+java/lang/ClassLoader$3 -+java/io/ExpiringCache$Entry -+java/util/LinkedHashMap$Entry -+java/lang/ClassLoader$NativeLibrary -+java/lang/Terminator -+java/lang/Terminator$1 -+sun/misc/SignalHandler -+sun/misc/Signal -+sun/misc/NativeSignalHandler -+java/lang/Integer$IntegerCache -+sun/misc/OSEnvironment -+java/lang/System$2 -+sun/misc/JavaLangAccess -+java/lang/IllegalArgumentException -+java/lang/Compiler -+java/lang/Compiler$1 -+sun/misc/Launcher$Factory -+java/net/URLStreamHandlerFactory -+sun/security/util/Debug -+java/lang/ClassLoader$ParallelLoaders -+java/util/WeakHashMap$Entry -+java/util/Collections$SetFromMap -+java/util/WeakHashMap$KeySet -+java/net/URLClassLoader$7 -+sun/misc/JavaNetAccess -+java/util/StringTokenizer -+sun/misc/Launcher$ExtClassLoader$1 -+sun/misc/MetaIndex -+java/io/BufferedReader -+java/io/Reader -+java/lang/Readable -+java/io/FileReader -+java/io/InputStreamReader -+sun/nio/cs/StreamDecoder -+java/nio/CharBuffer -+java/nio/HeapCharBuffer -+java/nio/charset/CoderResult -+java/nio/charset/CoderResult$1 -+java/nio/charset/CoderResult$Cache -+java/nio/charset/CoderResult$2 -+java/lang/reflect/Array -+java/io/FileInputStream$1 -+sun/net/www/ParseUtil -+java/util/BitSet -+java/util/Locale -+java/util/Locale$Cache -+sun/util/locale/LocaleObjectCache -+java/util/concurrent/ConcurrentHashMap -+java/util/concurrent/ConcurrentMap -+java/util/concurrent/ConcurrentHashMap$Segment -+java/util/concurrent/locks/ReentrantLock -+java/util/concurrent/locks/Lock -+java/util/concurrent/ConcurrentHashMap$Node -+java/util/concurrent/ConcurrentHashMap$CounterCell -+java/util/concurrent/ConcurrentHashMap$KeySetView -+java/util/concurrent/ConcurrentHashMap$CollectionView -+java/util/concurrent/ConcurrentHashMap$ValuesView -+java/util/concurrent/ConcurrentHashMap$EntrySetView -+sun/util/locale/BaseLocale -+sun/util/locale/BaseLocale$Cache -+sun/util/locale/BaseLocale$Key -+sun/util/locale/LocaleObjectCache$CacheEntry -+java/util/Locale$LocaleKey -+sun/util/locale/LocaleUtils -+java/lang/CharacterData -+java/lang/CharacterDataLatin1 -+java/net/Parts -+sun/net/www/protocol/file/Handler -+java/net/URLStreamHandler -+java/util/HashMap$TreeNode -+java/security/ProtectionDomain$JavaSecurityAccessImpl -+sun/misc/JavaSecurityAccess -+java/security/ProtectionDomain$2 -+sun/misc/JavaSecurityProtectionDomainAccess -+java/security/ProtectionDomain$Key -+java/security/Principal -+java/util/HashSet -+sun/misc/URLClassPath -+sun/net/www/protocol/jar/Handler -+sun/misc/Launcher$AppClassLoader$1 -+java/lang/SystemClassLoaderAction -+java/lang/invoke/MethodHandleImpl -+java/lang/invoke/MethodHandleImpl$1 -+java/lang/invoke/MethodHandleImpl$2 -+java/util/function/Function -+java/lang/invoke/MethodHandleImpl$3 -+java/lang/invoke/MethodHandleImpl$4 -+java/lang/ClassValue -+java/lang/ClassValue$Entry -+java/lang/ClassValue$Identity -+java/lang/ClassValue$Version -+java/lang/invoke/MemberName$Factory -+java/lang/invoke/MethodHandleStatics -+java/lang/invoke/MethodHandleStatics$1 -+sun/misc/PostVMInitHook -+sun/usagetracker/UsageTrackerClient -+java/util/concurrent/atomic/AtomicBoolean -+sun/usagetracker/UsageTrackerClient$1 -+sun/usagetracker/UsageTrackerClient$4 -+sun/usagetracker/UsageTrackerClient$3 -+java/io/FileOutputStream$1 -+sun/launcher/LauncherHelper -+java/net/URLClassLoader$1 -+sun/net/util/URLUtil -+sun/misc/URLClassPath$3 -+sun/misc/URLClassPath$JarLoader -+sun/misc/URLClassPath$Loader -+java/util/zip/ZipFile -+java/util/zip/ZipConstants -+java/util/zip/ZipFile$1 -+sun/misc/JavaUtilZipFileAccess -+sun/misc/URLClassPath$JarLoader$1 -+sun/misc/FileURLMapper -+java/util/jar/JarFile -+java/util/jar/JavaUtilJarAccessImpl -+sun/misc/JavaUtilJarAccess -+java/nio/charset/StandardCharsets -+sun/nio/cs/US_ASCII -+sun/nio/cs/ISO_8859_1 -+sun/nio/cs/UTF_16BE -+sun/nio/cs/UTF_16LE -+sun/nio/cs/UTF_16 -+java/util/ArrayDeque -+java/util/Deque -+java/util/Queue -+java/util/zip/ZipCoder -+sun/misc/PerfCounter -+sun/misc/Perf$GetPerfAction -+sun/misc/Perf -+sun/misc/PerfCounter$CoreCounters -+sun/nio/ch/DirectBuffer -+java/nio/DirectByteBuffer -+java/nio/MappedByteBuffer -+java/nio/DirectLongBufferU -+java/nio/LongBuffer -+sun/misc/JarIndex -+sun/misc/ExtensionDependency -+java/util/zip/ZipEntry -+java/util/jar/JarFile$JarFileEntry -+java/util/jar/JarEntry -+java/util/zip/ZipFile$ZipFileInputStream -+java/util/zip/Inflater -+java/util/zip/ZStreamRef -+java/util/zip/ZipFile$ZipFileInflaterInputStream -+java/util/zip/InflaterInputStream -+sun/misc/IOUtils -+sun/misc/URLClassPath$JarLoader$2 -+sun/misc/Resource -+sun/nio/ByteBuffered -+java/security/Permissions -+java/security/PermissionCollection -+sun/net/www/protocol/file/FileURLConnection -+sun/net/www/URLConnection -+java/net/URLConnection -+sun/net/www/MessageHeader -+java/io/FilePermission -+java/io/FilePermission$1 -+java/io/FilePermissionCollection -+java/security/AllPermission -+java/security/UnresolvedPermission -+java/security/BasicPermissionCollection -+javax/swing/JLabel -+javax/swing/SwingConstants -+javax/accessibility/Accessible -+javax/swing/JComponent -+javax/swing/TransferHandler$HasGetTransferHandler -+java/awt/Container -+java/awt/Component -+java/awt/image/ImageObserver -+java/awt/MenuContainer -+sun/launcher/LauncherHelper$FXHelper -+java/lang/Class$MethodArray -+java/lang/InterruptedException -+javax/swing/JFrame -+javax/swing/WindowConstants -+javax/swing/RootPaneContainer -+java/awt/Frame -+java/awt/Window -+java/util/concurrent/ConcurrentHashMap$ForwardingNode -+java/awt/Graphics -+java/lang/Void -+sun/util/logging/PlatformLogger -+sun/util/logging/PlatformLogger$Level -+sun/util/logging/PlatformLogger$1 -+sun/util/logging/PlatformLogger$DefaultLoggerProxy -+sun/util/logging/PlatformLogger$LoggerProxy -+sun/util/logging/PlatformLogger$JavaLoggerProxy -+sun/util/logging/LoggingSupport -+sun/util/logging/LoggingSupport$1 -+java/util/logging/LoggingProxyImpl -+sun/util/logging/LoggingProxy -+sun/reflect/UnsafeFieldAccessorFactory -+sun/reflect/UnsafeQualifiedStaticObjectFieldAccessorImpl -+sun/reflect/UnsafeQualifiedStaticFieldAccessorImpl -+java/util/HashMap$EntrySet -+java/util/HashMap$EntryIterator -+java/util/HashMap$HashIterator -+sun/util/logging/LoggingSupport$2 -+java/util/Date -+sun/util/calendar/CalendarSystem -+sun/util/calendar/Gregorian -+sun/util/calendar/BaseCalendar -+sun/util/calendar/AbstractCalendar -+java/awt/Component$AWTTreeLock -+java/awt/Toolkit -+java/awt/Toolkit$4 -+sun/awt/AWTAccessor$ToolkitAccessor -+sun/awt/AWTAccessor -+java/awt/Toolkit$5 -+sun/util/CoreResourceBundleControl -+java/util/ResourceBundle$Control -+java/util/Arrays$ArrayList -+java/util/ResourceBundle$Control$CandidateListCache -+java/util/ResourceBundle -+java/util/ResourceBundle$1 -+java/util/spi/ResourceBundleControlProvider -+java/util/ServiceLoader -+java/util/ServiceLoader$LazyIterator -+java/util/ServiceLoader$1 -+java/util/LinkedHashMap$LinkedEntrySet -+java/util/LinkedHashMap$LinkedEntryIterator -+java/util/LinkedHashMap$LinkedHashIterator -+sun/misc/Launcher$BootClassPathHolder -+sun/misc/Launcher$BootClassPathHolder$1 -+sun/misc/URLClassPath$2 -+java/lang/ClassLoader$2 -+sun/misc/URLClassPath$1 -+java/net/URLClassLoader$3 -+sun/misc/CompoundEnumeration -+java/io/FileNotFoundException -+java/io/IOException -+java/security/PrivilegedActionException -+java/net/URLClassLoader$3$1 -+java/util/ResourceBundle$RBClassLoader -+java/util/ResourceBundle$RBClassLoader$1 -+java/util/ResourceBundle$CacheKey -+java/util/ResourceBundle$LoaderReference -+java/util/ResourceBundle$CacheKeyReference -+java/util/ResourceBundle$SingleFormatControl -+java/util/LinkedList -+java/util/AbstractSequentialList -+java/util/LinkedList$Node -+sun/awt/resources/awt -+java/util/ListResourceBundle -+java/awt/Toolkit$3 -+java/awt/GraphicsEnvironment -+java/lang/invoke/LambdaMetafactory -+java/lang/invoke/MethodHandles$Lookup -+java/lang/invoke/MethodType$ConcurrentWeakInternSet -+java/lang/invoke/MethodTypeForm -+java/lang/invoke/Invokers -+java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry -+java/lang/invoke/MethodHandles -+sun/invoke/util/Wrapper -+sun/invoke/util/Wrapper$Format -+java/lang/Byte$ByteCache -+java/lang/Short$ShortCache -+java/lang/Character$CharacterCache -+java/lang/Long$LongCache -+sun/invoke/util/VerifyAccess -+sun/invoke/util/ValueConversions -+java/lang/NoSuchMethodException -+java/lang/invoke/LambdaForm$BasicType -+java/lang/invoke/LambdaForm$Name -+java/lang/invoke/LambdaForm$NamedFunction -+java/lang/invoke/SimpleMethodHandle -+java/lang/invoke/BoundMethodHandle -+java/lang/invoke/BoundMethodHandle$SpeciesData -+java/lang/invoke/BoundMethodHandle$Factory -+java/lang/invoke/BoundMethodHandle$Species_L -+java/util/HashMap$Values -+java/util/HashMap$ValueIterator -+sun/invoke/util/BytecodeDescriptor -+java/lang/invoke/DirectMethodHandle$Lazy -+java/lang/InstantiationException -+java/util/Collections$UnmodifiableCollection$1 -+java/util/AbstractList$Itr -+java/lang/invoke/InvokerBytecodeGenerator -+jdk/internal/org/objectweb/asm/ClassWriter -+jdk/internal/org/objectweb/asm/ClassVisitor -+jdk/internal/org/objectweb/asm/ByteVector -+jdk/internal/org/objectweb/asm/Item -+jdk/internal/org/objectweb/asm/MethodWriter -+jdk/internal/org/objectweb/asm/MethodVisitor -+jdk/internal/org/objectweb/asm/Type -+jdk/internal/org/objectweb/asm/Label -+jdk/internal/org/objectweb/asm/Frame -+jdk/internal/org/objectweb/asm/AnnotationWriter -+jdk/internal/org/objectweb/asm/AnnotationVisitor -+java/lang/invoke/MethodHandleImpl$Intrinsic -+java/lang/invoke/InvokerBytecodeGenerator$2 -+sun/invoke/util/VerifyType -+sun/invoke/empty/Empty -+java/lang/NoSuchFieldException -+java/lang/invoke/InvokerBytecodeGenerator$CpPatch -+java/lang/invoke/DirectMethodHandle$Accessor -+java/util/ArrayList$Itr -+java/util/RandomAccessSubList -+java/util/SubList -+java/util/SubList$1 -+java/util/ListIterator -+java/util/AbstractList$ListItr -+java/lang/invoke/MethodHandleImpl$AsVarargsCollector -+java/lang/invoke/DelegatingMethodHandle -+java/lang/invoke/WrongMethodTypeException -+java/lang/invoke/MethodHandleImpl$Lazy -+java/lang/invoke/MethodHandleImpl$IntrinsicMethodHandle -+java/lang/NoSuchFieldError -+java/lang/IllegalAccessException -+java/lang/invoke/LambdaFormEditor -+java/lang/invoke/LambdaFormEditor$Transform$Kind -+java/lang/invoke/LambdaFormEditor$Transform -+java/lang/invoke/LambdaFormBuffer -+jdk/internal/org/objectweb/asm/FieldWriter -+jdk/internal/org/objectweb/asm/FieldVisitor -+java/lang/invoke/InnerClassLambdaMetafactory -+java/lang/invoke/AbstractValidatingLambdaMetafactory -+java/util/PropertyPermission -+java/security/AccessController$1 -+sun/security/util/SecurityConstants -+java/net/NetPermission -+java/security/SecurityPermission -+java/net/SocketPermission -+sun/security/action/GetBooleanAction -+java/security/AllPermissionCollection -+java/lang/invoke/InfoFromMemberName -+java/lang/invoke/MethodHandleInfo -+java/lang/invoke/InnerClassLambdaMetafactory$ForwardingMethodGenerator -+java/lang/invoke/TypeConvertingMethodAdapter -+java/lang/invoke/InnerClassLambdaMetafactory$1 -+java/lang/ProcessEnvironment -+java/lang/ProcessEnvironment$Variable -+java/lang/ProcessEnvironment$ExternalData -+java/lang/ProcessEnvironment$Value -+java/lang/ProcessEnvironment$StringEnvironment -+java/util/Collections$UnmodifiableMap -+java/awt/Toolkit$1 -+java/awt/event/KeyEvent -+java/awt/event/InputEvent -+java/awt/event/ComponentEvent -+java/awt/AWTEvent -+java/util/EventObject -+java/awt/AWTEvent$1 -+sun/awt/AWTAccessor$AWTEventAccessor -+java/awt/event/NativeLibLoader -+java/awt/event/NativeLibLoader$1 -+java/awt/event/InputEvent$1 -+sun/awt/AWTAccessor$InputEventAccessor -+java/awt/event/KeyEvent$1 -+sun/awt/AWTAccessor$KeyEventAccessor -+java/awt/Component$1 -+sun/awt/AWTAccessor$ComponentAccessor -+java/awt/Component$DummyRequestFocusController -+sun/awt/RequestFocusController -+java/awt/LayoutManager -+java/awt/LightweightDispatcher -+java/awt/event/AWTEventListener -+java/util/EventListener -+java/awt/Dimension -+java/awt/geom/Dimension2D -+java/awt/Container$1 -+sun/awt/AWTAccessor$ContainerAccessor -+javax/swing/JComponent$1 -+java/awt/ComponentOrientation -+java/awt/Component$3 -+sun/awt/AppContext -+java/util/IdentityHashMap -+java/util/Collections$SynchronizedMap -+sun/awt/AppContext$GetAppContextLock -+sun/awt/AppContext$6 -+sun/misc/JavaAWTAccess -+sun/awt/AppContext$3 -+sun/awt/AppContext$2 -+sun/awt/SunToolkit -+sun/awt/WindowClosingSupport -+sun/awt/WindowClosingListener -+sun/awt/ComponentFactory -+sun/awt/InputMethodSupport -+sun/awt/KeyboardFocusManagerPeerProvider -+java/util/concurrent/locks/ReentrantLock$NonfairSync -+java/util/concurrent/locks/ReentrantLock$Sync -+java/util/concurrent/locks/AbstractQueuedSynchronizer -+java/util/concurrent/locks/AbstractOwnableSynchronizer -+java/util/concurrent/locks/AbstractQueuedSynchronizer$Node -+java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject -+java/util/concurrent/locks/Condition -+sun/misc/SoftCache -+sun/awt/AppContext$State -+sun/awt/AppContext$1 -+java/awt/EventQueue -+java/awt/EventQueue$1 -+java/awt/EventQueue$2 -+sun/awt/AWTAccessor$EventQueueAccessor -+java/awt/Queue -+sun/awt/MostRecentKeyValue -+sun/awt/PostEventQueue -+javax/swing/event/EventListenerList -+javax/swing/SwingUtilities -+javax/swing/RepaintManager -+javax/swing/RepaintManager$DisplayChangedHandler -+sun/awt/DisplayChangedListener -+javax/swing/RepaintManager$1 -+sun/swing/SwingAccessor$RepaintManagerAccessor -+sun/swing/SwingAccessor -+sun/awt/X11GraphicsEnvironment -+sun/java2d/SunGraphicsEnvironment -+sun/awt/X11GraphicsEnvironment$1 -+sun/awt/X11/XErrorHandlerUtil -+sun/awt/X11/XlibWrapper -+sun/java2d/UnixSurfaceManagerFactory -+sun/java2d/SurfaceManagerFactory -+sun/awt/SunDisplayChanger -+sun/java2d/SunGraphicsEnvironment$1 -+sun/misc/FloatingDecimal -+sun/misc/FloatingDecimal$ExceptionalBinaryToASCIIBuffer -+sun/misc/FloatingDecimal$BinaryToASCIIConverter -+sun/misc/FloatingDecimal$BinaryToASCIIBuffer -+sun/misc/FloatingDecimal$1 -+sun/misc/FloatingDecimal$PreparedASCIIToBinaryBuffer -+sun/misc/FloatingDecimal$ASCIIToBinaryConverter -+java/lang/NumberFormatException -+java/lang/StringIndexOutOfBoundsException -+java/lang/IndexOutOfBoundsException -+java/awt/Font -+java/awt/Font$FontAccessImpl -+sun/font/FontAccess -+java/awt/geom/AffineTransform -+sun/font/AttributeValues -+sun/font/EAttribute -+java/text/AttributedCharacterIterator$Attribute -+java/lang/Class$4 -+sun/reflect/NativeMethodAccessorImpl -+sun/reflect/DelegatingMethodAccessorImpl -+java/awt/font/TextAttribute -+java/awt/Toolkit$2 -+sun/awt/X11/XToolkit -+sun/awt/UNIXToolkit -+java/util/TreeMap -+java/util/NavigableMap -+java/util/SortedMap -+java/awt/GraphicsDevice -+sun/awt/X11GraphicsDevice -+sun/awt/X11GraphicsConfig -+sun/awt/image/SurfaceManager$ProxiedGraphicsConfig -+java/awt/GraphicsConfiguration -+java/awt/ImageCapabilities -+sun/java2d/x11/X11SurfaceData -+sun/java2d/x11/XSurfaceData -+sun/java2d/SurfaceData -+java/awt/Transparency -+sun/java2d/DisposerTarget -+sun/java2d/StateTrackable -+sun/java2d/Surface -+sun/java2d/InvalidPipeException -+java/lang/IllegalStateException -+sun/java2d/NullSurfaceData -+sun/java2d/StateTrackable$State -+sun/java2d/loops/SurfaceType -+sun/awt/image/PixelConverter -+sun/awt/image/PixelConverter$Xrgb -+sun/awt/image/PixelConverter$Argb -+sun/awt/image/PixelConverter$ArgbPre -+sun/awt/image/PixelConverter$Xbgr -+sun/awt/image/PixelConverter$Rgba -+sun/awt/image/PixelConverter$RgbaPre -+sun/awt/image/PixelConverter$Ushort565Rgb -+sun/awt/image/PixelConverter$Ushort555Rgb -+sun/awt/image/PixelConverter$Ushort555Rgbx -+sun/awt/image/PixelConverter$Ushort4444Argb -+sun/awt/image/PixelConverter$ByteGray -+sun/awt/image/PixelConverter$UshortGray -+sun/awt/image/PixelConverter$Rgbx -+sun/awt/image/PixelConverter$Bgrx -+sun/awt/image/PixelConverter$ArgbBm -+java/awt/image/ColorModel -+java/awt/image/ColorModel$1 -+java/awt/image/DirectColorModel -+java/awt/image/PackedColorModel -+java/awt/color/ColorSpace -+java/awt/color/ICC_Profile -+sun/java2d/cmm/ProfileDeferralInfo -+sun/java2d/cmm/ProfileDeferralMgr -+java/awt/color/ICC_ProfileRGB -+java/awt/color/ICC_Profile$1 -+sun/java2d/cmm/ProfileActivator -+java/awt/color/ICC_ColorSpace -+sun/java2d/StateTrackableDelegate -+sun/java2d/StateTrackableDelegate$2 -+sun/java2d/pipe/NullPipe -+sun/java2d/pipe/PixelDrawPipe -+sun/java2d/pipe/PixelFillPipe -+sun/java2d/pipe/ShapeDrawPipe -+sun/java2d/pipe/TextPipe -+sun/java2d/pipe/DrawImagePipe -+java/awt/image/IndexColorModel -+sun/java2d/pipe/LoopPipe -+sun/java2d/pipe/ParallelogramPipe -+sun/java2d/pipe/LoopBasedPipe -+sun/java2d/pipe/RenderingEngine -+sun/java2d/pipe/RenderingEngine$1 -+sun/dc/DuctusRenderingEngine -+sun/java2d/pipe/OutlineTextRenderer -+sun/java2d/pipe/SolidTextRenderer -+sun/java2d/pipe/GlyphListLoopPipe -+sun/java2d/pipe/GlyphListPipe -+sun/java2d/pipe/AATextRenderer -+sun/java2d/pipe/LCDTextRenderer -+sun/java2d/pipe/AlphaColorPipe -+sun/java2d/pipe/CompositePipe -+sun/java2d/SurfaceData$PixelToShapeLoopConverter -+sun/java2d/pipe/PixelToShapeConverter -+sun/java2d/SurfaceData$PixelToPgramLoopConverter -+sun/java2d/pipe/PixelToParallelogramConverter -+sun/java2d/pipe/TextRenderer -+sun/java2d/pipe/SpanClipRenderer -+sun/java2d/pipe/Region -+sun/java2d/pipe/RegionIterator -+sun/java2d/pipe/Region$ImmutableRegion -+sun/java2d/pipe/AAShapePipe -+sun/java2d/pipe/AlphaPaintPipe -+sun/java2d/pipe/SpanShapeRenderer$Composite -+sun/java2d/pipe/SpanShapeRenderer -+sun/java2d/pipe/GeneralCompositePipe -+sun/java2d/pipe/DrawImage -+sun/java2d/loops/RenderCache -+sun/java2d/loops/RenderCache$Entry -+sun/java2d/loops/XORComposite -+java/awt/Composite -+sun/font/X11TextRenderer -+sun/java2d/loops/GraphicsPrimitive -+sun/java2d/x11/X11PMBlitLoops -+sun/java2d/loops/Blit -+sun/java2d/loops/GraphicsPrimitiveMgr -+sun/java2d/loops/CompositeType -+sun/java2d/SunGraphics2D -+sun/awt/ConstrainableGraphics -+sun/java2d/DestSurfaceProvider -+java/awt/Graphics2D -+java/awt/Color -+java/awt/Paint -+java/awt/AlphaComposite -+java/awt/geom/Path2D -+java/awt/Shape -+java/awt/geom/Path2D$Float -+sun/awt/SunHints -+sun/java2d/loops/BlitBg -+sun/java2d/loops/ScaledBlit -+sun/java2d/loops/FillRect -+sun/java2d/loops/FillSpans -+sun/java2d/loops/FillParallelogram -+sun/java2d/loops/DrawParallelogram -+sun/java2d/loops/DrawLine -+sun/java2d/loops/DrawRect -+sun/java2d/loops/DrawPolygons -+sun/java2d/loops/DrawPath -+sun/java2d/loops/FillPath -+sun/java2d/loops/MaskBlit -+sun/java2d/loops/MaskFill -+sun/java2d/loops/DrawGlyphList -+sun/java2d/loops/DrawGlyphListAA -+sun/java2d/loops/DrawGlyphListLCD -+sun/java2d/loops/TransformHelper -+java/awt/BasicStroke -+java/awt/Stroke -+sun/misc/PerformanceLogger -+sun/misc/PerformanceLogger$TimeData -+sun/java2d/pipe/ValidatePipe -+sun/awt/SunHints$Key -+java/awt/RenderingHints$Key -+sun/awt/SunHints$Value -+sun/awt/SunHints$LCDContrastKey -+sun/java2d/loops/CustomComponent -+sun/java2d/loops/GraphicsPrimitiveProxy -+sun/java2d/loops/GeneralRenderer -+sun/java2d/loops/GraphicsPrimitiveMgr$1 -+sun/java2d/loops/GraphicsPrimitiveMgr$2 -+sun/java2d/x11/X11PMBlitLoops$DelegateBlitLoop -+sun/java2d/x11/X11PMBlitBgLoops -+sun/java2d/x11/X11SurfaceData$LazyPipe -+sun/awt/X11GraphicsConfig$X11GCDisposerRecord -+sun/java2d/DisposerRecord -+sun/java2d/Disposer -+sun/java2d/Disposer$1 -+sun/misc/ThreadGroupUtils -+sun/awt/X11/XModifierKeymap -+sun/awt/X11/XWrapperBase -+sun/awt/X11/Native -+sun/awt/X11/Native$1 -+sun/awt/X11/XToolkit$3 -+sun/awt/X11/XToolkit$4 -+sun/awt/X11/XEventDispatcher -+java/awt/Toolkit$DesktopPropertyChangeSupport -+java/beans/PropertyChangeSupport -+java/beans/PropertyChangeSupport$PropertyChangeListenerMap -+java/beans/ChangeListenerMap -+java/beans/PropertyChangeListener -+sun/awt/SunToolkit$ModalityListenerList -+sun/awt/ModalityListener -+sun/font/FontConfigManager -+sun/font/FontConfigManager$FontConfigInfo -+sun/awt/X11/AwtScreenData -+sun/awt/X11/XToolkit$1 -+java/lang/invoke/DirectMethodHandle$Special -+sun/awt/X11/XToolkit$2 -+java/lang/ApplicationShutdownHooks -+java/lang/ApplicationShutdownHooks$1 -+java/lang/Shutdown -+java/lang/Shutdown$Lock -+sun/awt/X11/XWM -+sun/awt/X11/XAtom -+java/awt/Insets -+sun/awt/X11/XWM$1 -+sun/awt/X11/XErrorHandler$XBaseErrorHandler -+sun/awt/X11/XErrorHandler -+sun/awt/X11/XSetWindowAttributes -+sun/awt/X11/XNETProtocol -+sun/awt/X11/XStateProtocol -+sun/awt/X11/XLayerProtocol -+sun/awt/X11/XProtocol -+sun/awt/X11/WindowPropertyGetter -+sun/awt/X11/UnsafeXDisposerRecord -+sun/awt/X11/XPropertyCache -+sun/awt/X11/XWINProtocol -+sun/awt/X11/XAtomList -+java/awt/Rectangle -+java/awt/geom/Rectangle2D -+sun/awt/X11/XEvent -+java/awt/geom/RectangularShape -+javax/swing/RepaintManager$ProcessingRunnable -+com/sun/java/swing/SwingUtilities3 -+javax/swing/UIManager -+javax/swing/UIManager$LookAndFeelInfo -+sun/awt/OSInfo -+sun/awt/OSInfo$WindowsVersion -+sun/awt/OSInfo$1 -+sun/awt/OSInfo$OSType -+sun/swing/SwingUtilities2 -+java/awt/font/FontRenderContext -+java/awt/RenderingHints -+sun/swing/StringUIClientPropertyKey -+sun/swing/UIClientPropertyKey -+sun/swing/SwingUtilities2$LSBCacheEntry -+javax/swing/UIManager$LAFState -+javax/swing/UIDefaults -+javax/swing/MultiUIDefaults -+javax/swing/UIManager$1 -+javax/swing/plaf/metal/MetalLookAndFeel -+javax/swing/plaf/basic/BasicLookAndFeel -+javax/swing/LookAndFeel -+sun/swing/DefaultLookup -+javax/swing/plaf/metal/OceanTheme -+javax/swing/plaf/metal/DefaultMetalTheme -+javax/swing/plaf/metal/MetalTheme -+javax/swing/plaf/ColorUIResource -+javax/swing/plaf/UIResource -+sun/swing/PrintColorUIResource -+javax/swing/plaf/metal/DefaultMetalTheme$FontDelegate -+javax/swing/plaf/FontUIResource -+sun/swing/SwingLazyValue -+javax/swing/UIDefaults$LazyValue -+javax/swing/UIDefaults$ActiveValue -+javax/swing/plaf/InsetsUIResource -+javax/swing/plaf/BorderUIResource$EmptyBorderUIResource -+javax/swing/border/EmptyBorder -+javax/swing/border/AbstractBorder -+javax/swing/border/Border -+sun/swing/SwingUtilities2$2 -+javax/swing/plaf/basic/BasicLookAndFeel$2 -+javax/swing/plaf/DimensionUIResource -+javax/swing/UIDefaults$LazyInputMap -+javax/swing/plaf/metal/MetalLookAndFeel$FontActiveValue -+sun/swing/SwingUtilities2$AATextInfo -+sun/awt/HeadlessToolkit -+sun/awt/X11/XAWTXSettings -+sun/awt/X11/XMSelectionListener -+sun/awt/XSettings -+sun/awt/X11/XMSelection -+sun/awt/X11/XMSelection$1 -+sun/awt/X11/XMSelection$3 -+sun/awt/X11/XErrorHandler$IgnoreBadWindowHandler -+sun/awt/XSettings$Update -+java/beans/PropertyChangeEvent -+java/awt/Toolkit$DesktopPropertyChangeSupport$1 -+java/util/IdentityHashMap$Values -+java/util/IdentityHashMap$ValueIterator -+java/util/IdentityHashMap$IdentityHashMapIterator -+java/util/HashMap$KeySet -+java/util/HashMap$KeyIterator -+javax/swing/plaf/metal/MetalLookAndFeel$AATextListener -+java/beans/PropertyChangeListenerProxy -+java/util/EventListenerProxy -+javax/swing/plaf/metal/OceanTheme$1 -+javax/swing/plaf/metal/OceanTheme$2 -+javax/swing/plaf/metal/OceanTheme$3 -+javax/swing/plaf/metal/OceanTheme$4 -+javax/swing/plaf/metal/OceanTheme$5 -+javax/swing/plaf/metal/OceanTheme$6 -+javax/swing/SwingPaintEventDispatcher -+sun/awt/PaintEventDispatcher -+java/awt/KeyboardFocusManager -+java/awt/KeyEventDispatcher -+java/awt/KeyEventPostProcessor -+java/awt/KeyboardFocusManager$1 -+sun/awt/AWTAccessor$KeyboardFocusManagerAccessor -+java/awt/AWTKeyStroke -+java/awt/AWTKeyStroke$1 -+java/awt/DefaultKeyboardFocusManager -+java/awt/DefaultKeyboardFocusManager$1 -+sun/awt/AWTAccessor$DefaultKeyboardFocusManagerAccessor -+java/awt/DefaultFocusTraversalPolicy -+java/awt/ContainerOrderFocusTraversalPolicy -+java/awt/FocusTraversalPolicy -+java/util/Collections$UnmodifiableSet -+sun/awt/X11/XKeyboardFocusManagerPeer -+sun/awt/KeyboardFocusManagerPeerImpl -+java/awt/peer/KeyboardFocusManagerPeer -+javax/swing/UIManager$2 -+javax/swing/JRootPane -+javax/swing/UIDefaults$TextAndMnemonicHashMap -+com/sun/swing/internal/plaf/metal/resources/metal -+sun/util/ResourceBundleEnumeration -+com/sun/swing/internal/plaf/basic/resources/basic -+javax/swing/plaf/metal/MetalLabelUI -+javax/swing/plaf/basic/BasicLabelUI -+javax/swing/plaf/LabelUI -+javax/swing/plaf/ComponentUI -+sun/reflect/misc/MethodUtil -+sun/reflect/misc/MethodUtil$1 -+sun/net/www/protocol/jar/JarURLConnection -+java/net/JarURLConnection -+sun/net/www/protocol/jar/JarFileFactory -+sun/net/www/protocol/jar/URLJarFile$URLJarFileCloseController -+java/net/HttpURLConnection -+sun/net/www/protocol/jar/URLJarFile -+sun/net/www/protocol/jar/URLJarFile$URLJarFileEntry -+sun/net/www/protocol/jar/JarURLConnection$JarURLInputStream -+java/lang/UnsupportedOperationException -+java/lang/reflect/InvocationTargetException -+javax/swing/plaf/metal/DefaultMetalTheme$FontDelegate$1 -+javax/swing/plaf/basic/BasicHTML -+sun/awt/util/IdentityArrayList -+java/awt/Window$1 -+sun/awt/AWTAccessor$WindowAccessor -+java/awt/Frame$1 -+sun/awt/AWTAccessor$FrameAccessor -+java/awt/Window$Type -+java/awt/Cursor -+java/awt/Cursor$1 -+sun/awt/AWTAccessor$CursorAccessor -+java/awt/BorderLayout -+java/awt/LayoutManager2 -+sun/awt/X11/XlibUtil -+java/util/concurrent/locks/LockSupport -+sun/nio/ch/Interruptible -+java/awt/Dialog$ModalExclusionType -+java/awt/Window$WindowDisposerRecord -+javax/swing/JPanel -+java/awt/FlowLayout -+javax/swing/plaf/basic/BasicPanelUI -+javax/swing/plaf/PanelUI -+java/awt/Component$BaselineResizeBehavior -+sun/swing/SwingLazyValue$1 -+javax/swing/JLayeredPane -+javax/swing/JRootPane$1 -+javax/swing/ArrayTable -+javax/swing/JRootPane$RootLayout -+javax/swing/BufferStrategyPaintManager -+javax/swing/RepaintManager$PaintManager -+javax/swing/FocusManager -+javax/swing/LayoutFocusTraversalPolicy -+javax/swing/SortingFocusTraversalPolicy -+javax/swing/InternalFrameFocusTraversalPolicy -+javax/swing/SwingContainerOrderFocusTraversalPolicy -+javax/swing/SortingFocusTraversalPolicy$1 -+java/util/Spliterator$OfLong -+java/util/Spliterator$OfPrimitive -+java/util/Spliterator -+java/util/Spliterator$OfInt -+java/util/Spliterator$OfDouble -+java/util/stream/IntStream -+java/util/stream/BaseStream -+java/util/stream/Stream -+java/util/stream/DoubleStream -+java/util/stream/LongStream -+java/util/function/DoubleBinaryOperator -+java/util/function/IntBinaryOperator -+java/util/function/LongBinaryOperator -+java/util/function/BinaryOperator -+java/util/function/BiFunction -+java/util/function/IntToDoubleFunction -+java/util/function/IntFunction -+java/util/function/IntToLongFunction -+java/util/function/IntUnaryOperator -+javax/swing/SwingDefaultFocusTraversalPolicy -+javax/swing/LayoutComparator -+javax/swing/plaf/metal/MetalRootPaneUI -+javax/swing/plaf/basic/BasicRootPaneUI -+javax/swing/plaf/RootPaneUI -+javax/swing/plaf/basic/BasicRootPaneUI$RootPaneInputMap -+javax/swing/plaf/ComponentInputMapUIResource -+javax/swing/ComponentInputMap -+javax/swing/InputMap -+javax/swing/plaf/InputMapUIResource -+javax/swing/KeyStroke -+java/awt/VKCollection -+sun/reflect/UnsafeQualifiedStaticIntegerFieldAccessorImpl -+javax/swing/plaf/basic/LazyActionMap -+javax/swing/plaf/ActionMapUIResource -+javax/swing/ActionMap -+sun/awt/X11/XFramePeer -+java/awt/peer/FramePeer -+java/awt/peer/WindowPeer -+java/awt/peer/ContainerPeer -+java/awt/peer/ComponentPeer -+sun/awt/X11/XDecoratedPeer -+sun/awt/X11/XWindowPeer -+sun/awt/X11/XPanelPeer -+java/awt/peer/PanelPeer -+sun/awt/X11/XCanvasPeer -+java/awt/peer/CanvasPeer -+sun/awt/X11/XComponentPeer -+java/awt/dnd/peer/DropTargetPeer -+sun/java2d/BackBufferCapsProvider -+sun/awt/X11/XWindow -+sun/awt/X11ComponentPeer -+sun/awt/X11/XBaseWindow -+sun/awt/X11/XCreateWindowParams -+sun/awt/X11/XBaseWindow$InitialiseState -+sun/awt/X11/XBaseWindow$StateLock -+sun/awt/X11/AwtGraphicsConfigData -+sun/awt/X11/XVisualInfo -+java/awt/SystemColor -+sun/awt/AWTAccessor$SystemColorAccessor -+sun/awt/X11/MotifColorUtilities -+sun/awt/X11/XRepaintArea -+sun/awt/RepaintArea -+sun/awt/X11/XWindowAttributesData -+sun/awt/X11/WindowDimensions -+java/awt/Point -+java/awt/geom/Point2D -+java/util/TreeMap$Entry -+sun/awt/X11/XSizeHints -+sun/awt/X11/XRootWindow -+sun/awt/X11/XRootWindow$LazyHolder -+sun/nio/cs/ISO_8859_1$Encoder -+sun/nio/cs/Surrogate$Parser -+sun/nio/cs/Surrogate -+sun/java2d/x11/X11SurfaceData$X11WindowSurfaceData -+sun/awt/X11/XDropTargetEventProcessor -+sun/java2d/loops/RenderLoops -+sun/awt/X11/XDragSourceContextPeer -+sun/java2d/loops/GraphicsPrimitiveMgr$PrimitiveSpec -+sun/awt/X11/XDragSourceProtocolListener -+java/util/Arrays$LegacyMergeSort -+sun/awt/dnd/SunDragSourceContextPeer -+java/awt/dnd/peer/DragSourceContextPeer -+java/util/TimSort -+sun/awt/X11/XAnyEvent -+sun/awt/X11/XAwtState -+sun/awt/X11/XBaseWindow$1 -+sun/awt/X11/XPropertyEvent -+sun/java2d/DefaultDisposerRecord -+sun/java2d/SurfaceDataProxy -+sun/awt/image/SurfaceManager$FlushableCacheData -+sun/java2d/SurfaceDataProxy$1 -+sun/java2d/StateTracker -+sun/java2d/StateTracker$1 -+sun/java2d/StateTracker$2 -+sun/java2d/x11/X11Renderer -+sun/awt/X11/XGlobalCursorManager -+sun/awt/GlobalCursorManager -+sun/awt/IconInfo -+sun/awt/AWTIcon32_java_icon16_png -+sun/awt/AWTIcon32_java_icon24_png -+sun/awt/AWTIcon32_java_icon32_png -+sun/awt/AWTIcon32_java_icon48_png -+sun/awt/X11/XClientMessageEvent -+sun/awt/X11/XContentWindow -+sun/awt/X11/XFocusProxyWindow -+sun/awt/X11/XWMHints -+java/util/LinkedList$ListItr -+sun/awt/AWTAutoShutdown -+java/awt/peer/LightweightPeer -+sun/awt/NullComponentPeer -+java/awt/SplashScreen -+java/awt/Dialog -+java/awt/Dialog$ModalityType -+sun/awt/X11/PropMwmHints -+sun/awt/X11/XWindowPeer$4 -+sun/awt/GlobalCursorManager$NativeUpdater -+java/awt/event/WindowEvent -+java/awt/EventQueue$5 -+java/awt/EventDispatchThread -+sun/awt/PeerEvent -+java/awt/EventDispatchThread$1 -+java/awt/Conditional -+java/awt/event/InvocationEvent -+java/awt/ActiveEvent -+java/awt/EventDispatchThread$HierarchyEventFilter -+java/awt/EventFilter -+java/awt/event/PaintEvent -+sun/awt/X11/XReparentEvent -+java/awt/event/MouseEvent -+java/awt/ModalEventFilter -+sun/awt/EventQueueItem -+sun/awt/EventQueueDelegate -+java/awt/EventFilter$FilterAction -+java/awt/EventQueue$3 -+java/awt/EventQueue$4 -+sun/awt/dnd/SunDropTargetEvent -+sun/awt/X11/XConfigureEvent -+java/awt/event/InputMethodEvent -+java/awt/event/ActionEvent -+java/awt/event/FocusEvent -+java/util/Vector$Itr -+java/awt/event/InvocationEvent$1 -+sun/awt/X11/XWindowPeer$2 -+sun/awt/AWTAccessor$InvocationEventAccessor -+java/applet/Applet -+java/awt/Panel -+sun/awt/X11/XVisibilityEvent -+sun/awt/X11/XExposeEvent -+sun/awt/event/IgnorePaintEvent -+sun/awt/X11/XTranslateCoordinates -+sun/awt/X11/XFocusChangeEvent -+java/awt/SequencedEvent -+java/awt/SequencedEvent$1 -+sun/awt/AWTAccessor$SequencedEventAccessor -+sun/awt/X11/XComponentPeer$1 -+java/awt/MenuComponent -+java/awt/TrayIcon -+java/util/IdentityHashMap$KeySet -+java/util/IdentityHashMap$KeyIterator -+javax/swing/RepaintManager$4 -+java/awt/GraphicsCallback$PaintCallback -+java/awt/GraphicsCallback -+sun/awt/SunGraphicsCallback -+javax/swing/BufferStrategyPaintManager$BufferInfo -+java/awt/event/WindowListener -+java/awt/event/ComponentAdapter -+java/awt/event/ComponentListener -+java/awt/AWTEventMulticaster -+java/awt/event/ContainerListener -+java/awt/event/FocusListener -+java/awt/event/KeyListener -+java/awt/event/MouseListener -+java/awt/event/MouseMotionListener -+java/awt/event/WindowFocusListener -+java/awt/event/WindowStateListener -+java/awt/event/ActionListener -+java/awt/event/ItemListener -+java/awt/event/AdjustmentListener -+java/awt/event/TextListener -+java/awt/event/InputMethodListener -+java/awt/event/HierarchyListener -+java/awt/event/HierarchyBoundsListener -+java/awt/event/MouseWheelListener -+java/awt/BufferCapabilities -+java/awt/Component$BltSubRegionBufferStrategy -+sun/awt/SubRegionShowable -+java/awt/Component$BltBufferStrategy -+java/awt/image/BufferStrategy -+java/awt/image/VolatileImage -+java/awt/Image -+sun/awt/image/SunVolatileImage -+java/awt/Image$1 -+sun/awt/image/SurfaceManager$ImageAccessor -+sun/awt/image/SurfaceManager -+sun/awt/image/BufferedImageGraphicsConfig -+sun/print/PrinterGraphicsConfig -+sun/java2d/opengl/GLXGraphicsConfig -+sun/java2d/opengl/OGLGraphicsConfig -+sun/java2d/pipe/hw/AccelGraphicsConfig -+sun/java2d/pipe/hw/BufferedContextProvider -+sun/java2d/xr/XRGraphicsConfig -+sun/java2d/x11/X11VolatileSurfaceManager -+sun/awt/image/VolatileSurfaceManager -+sun/java2d/x11/X11SurfaceData$X11PixmapSurfaceData -+sun/font/FontDesignMetrics -+java/awt/FontMetrics -+sun/font/SunFontManager -+sun/java2d/FontSupport -+sun/font/FontManagerForSGE -+sun/font/FontManager -+sun/font/SunFontManager$TTFilter -+java/io/FilenameFilter -+sun/font/SunFontManager$T1Filter -+sun/font/SunFontManager$1 -+sun/font/FontManagerNativeLibrary -+sun/font/FontManagerNativeLibrary$1 -+sun/font/FontUtilities -+sun/font/FontUtilities$1 -+sun/font/TrueTypeFont -+sun/font/FileFont -+sun/font/PhysicalFont -+sun/font/Font2D -+sun/font/Type1Font -+java/awt/geom/Point2D$Float -+sun/font/StrikeMetrics -+java/awt/geom/Rectangle2D$Float -+java/awt/geom/GeneralPath -+sun/font/CharToGlyphMapper -+sun/font/PhysicalStrike -+sun/font/FontStrike -+sun/font/StrikeCache -+sun/font/StrikeCache$1 -+sun/font/GlyphList -+sun/font/FontManagerFactory -+sun/font/FontManagerFactory$1 -+sun/awt/X11FontManager -+sun/font/CompositeFont -+sun/font/SunFontManager$2 -+java/io/StreamTokenizer -+sun/font/SunFontManager$FontRegistrationInfo -+sun/awt/motif/MFontConfiguration -+sun/awt/FontConfiguration -+sun/awt/FontDescriptor -+java/util/Properties$LineReader -+sun/font/FcFontConfiguration -+java/net/InetAddress -+java/net/InetAddress$1 -+java/net/InetAddress$InetAddressHolder -+java/net/InetAddress$Cache -+java/net/InetAddress$Cache$Type -+java/net/InetAddressImplFactory -+java/net/Inet4AddressImpl -+java/net/InetAddressImpl -+java/net/InetAddress$2 -+sun/net/spi/nameservice/NameService -+java/net/Inet4Address -+java/net/Inet6Address -+java/net/Inet6Address$Inet6AddressHolder -+sun/net/InetAddressCachePolicy -+sun/net/InetAddressCachePolicy$1 -+java/security/Security -+java/security/Security$1 -+sun/net/InetAddressCachePolicy$2 -+java/util/LinkedHashMap$LinkedKeySet -+java/util/LinkedHashMap$LinkedKeyIterator -+java/net/InetAddress$CacheEntry -+sun/font/FontConfigManager$FcCompFont -+sun/font/FontConfigManager$FontConfigFont -+sun/font/CompositeFontDescriptor -+sun/font/Font2DHandle -+sun/font/FontFamily -+sun/font/SunFontManager$3 -+sun/font/FontDesignMetrics$MetricsKey -+sun/font/FontStrikeDesc -+sun/font/CompositeStrike -+sun/font/FontStrikeDisposer -+sun/java2d/Disposer$PollDisposable -+sun/font/StrikeCache$SoftDisposerRef -+sun/font/StrikeCache$DisposableStrike -+sun/font/TrueTypeFont$TTDisposerRecord -+sun/font/TrueTypeFont$1 -+java/io/RandomAccessFile -+java/io/DataOutput -+java/io/DataInput -+sun/nio/ch/FileChannelImpl -+java/nio/channels/FileChannel -+java/nio/channels/SeekableByteChannel -+java/nio/channels/ByteChannel -+java/nio/channels/ReadableByteChannel -+java/nio/channels/Channel -+java/nio/channels/WritableByteChannel -+java/nio/channels/GatheringByteChannel -+java/nio/channels/ScatteringByteChannel -+java/nio/channels/spi/AbstractInterruptibleChannel -+java/nio/channels/InterruptibleChannel -+java/nio/file/attribute/FileAttribute -+sun/nio/ch/IOUtil -+sun/nio/ch/IOUtil$1 -+sun/nio/ch/NativeThreadSet -+sun/nio/ch/FileDispatcherImpl -+sun/nio/ch/FileDispatcher -+sun/nio/ch/NativeDispatcher -+java/nio/channels/spi/AbstractInterruptibleChannel$1 -+sun/nio/ch/NativeThread -+sun/nio/ch/IOStatus -+sun/nio/ch/Util -+sun/nio/ch/Util$1 -+sun/nio/ch/Util$BufferCache -+java/nio/DirectByteBuffer$Deallocator -+java/nio/ByteBufferAsIntBufferB -+java/nio/IntBuffer -+sun/font/TrueTypeFont$DirectoryEntry -+java/nio/ByteBufferAsShortBufferB -+java/nio/ShortBuffer -+sun/nio/cs/UTF_16$Decoder -+sun/nio/cs/UnicodeDecoder -+sun/font/FileFontStrike -+sun/font/FontScaler -+sun/font/T2KFontScaler -+sun/font/T2KFontScaler$1 -+sun/font/TrueTypeGlyphMapper -+sun/font/CMap -+sun/font/CMap$NullCMapClass -+sun/font/CMap$CMapFormat12 -+sun/font/FontDesignMetrics$KeyReference -+sun/font/CompositeGlyphMapper -+java/awt/print/PrinterGraphics -+java/awt/PrintGraphics -+sun/java2d/loops/FontInfo -+sun/awt/X11/XSystemTrayPeer -+java/awt/peer/SystemTrayPeer -+java/util/jar/Attributes -+java/util/jar/Manifest$FastInputStream -+java/util/jar/Attributes$Name -+sun/misc/ASCIICaseInsensitiveComparator -+java/util/jar/JarVerifier -+java/security/CodeSigner -+java/util/jar/JarVerifier$3 -+java/io/ByteArrayOutputStream -+java/lang/Package -+sun/security/util/SignatureFileVerifier -+sun/security/util/ManifestEntryVerifier -+java/util/MissingResourceException -+javax/swing/JDialog -+javax/swing/text/JTextComponent -+javax/swing/Scrollable -+javax/swing/JTextArea -+javax/swing/JScrollPane -+javax/swing/ScrollPaneConstants -+javax/swing/AbstractButton -+java/awt/ItemSelectable -+javax/swing/JButton -+java/io/StringWriter -+java/lang/SecurityException -+javax/swing/JWindow -+java/io/UnsupportedEncodingException -+sun/misc/URLClassPath$FileLoader -+java/lang/CloneNotSupportedException -+java/lang/InternalError -+java/net/UnknownHostException -+java/net/Socket -+java/net/SocketAddress -+java/nio/channels/SocketChannel -+java/nio/channels/NetworkChannel -+java/nio/channels/spi/AbstractSelectableChannel -+java/nio/channels/SelectableChannel -+java/net/SocketException -+java/net/SocketImplFactory -+java/net/InetSocketAddress -+java/net/InetSocketAddress$InetSocketAddressHolder -+java/net/Proxy -+java/net/SocketImpl -+java/net/SocketOptions -+java/net/SocksSocketImpl -+java/net/SocksConsts -+java/net/PlainSocketImpl -+java/net/AbstractPlainSocketImpl -+java/net/AbstractPlainSocketImpl$1 -+sun/net/util/IPAddressUtil -+java/net/SocksSocketImpl$3 -+java/net/ProxySelector -+sun/net/spi/DefaultProxySelector -+sun/net/spi/DefaultProxySelector$1 -+sun/net/NetProperties -+sun/net/NetProperties$1 -+java/net/URI -+java/net/URI$Parser -+sun/net/spi/DefaultProxySelector$NonProxyInfo -+sun/net/spi/DefaultProxySelector$3 -+java/net/Proxy$Type -+sun/net/NetHooks -+sun/net/sdp/SdpProvider -+sun/net/NetHooks$Provider -+java/net/ConnectException -+java/net/MalformedURLException -+java/lang/UnsatisfiedLinkError -+javax/swing/UnsupportedLookAndFeelException -+sun/misc/FloatingDecimal$ASCIIToBinaryBuffer -+sun/misc/FDBigInteger -+java/util/ResourceBundle$Control$1 -+java/net/URLClassLoader$2 -+java/util/PropertyResourceBundle -+java/util/ResourceBundle$BundleReference -+java/util/logging/Level -+java/util/logging/Level$KnownLevel -+java/util/logging/Logger -+java/util/logging/Handler -+java/util/logging/Logger$LoggerBundle -+java/util/concurrent/CopyOnWriteArrayList -+java/util/logging/LogManager -+java/util/logging/LogManager$1 -+java/util/logging/LogManager$SystemLoggerContext -+java/util/logging/LogManager$LoggerContext -+java/util/logging/LogManager$LogNode -+java/util/logging/LoggingPermission -+java/util/logging/LogManager$Cleaner -+java/util/logging/LogManager$2 -+java/util/logging/LogManager$3 -+java/util/logging/LogManager$LoggerWeakRef -+java/util/logging/LogManager$LoggerContext$1 -+java/util/logging/LogManager$RootLogger -+java/util/logging/LogManager$5 -+java/util/logging/Logger$1 -+sun/util/logging/resources/logging -+javax/swing/Box -+javax/swing/Box$Filler -+javax/swing/Icon -+javax/swing/BoxLayout -+javax/swing/plaf/basic/BasicPopupMenuUI -+javax/swing/plaf/PopupMenuUI -+javax/swing/ImageIcon -+javax/swing/ImageIcon$1 -+javax/swing/ImageIcon$2 -+javax/swing/ImageIcon$2$1 -+java/awt/dnd/DropTarget -+java/awt/dnd/DropTargetListener -+javax/accessibility/AccessibleContext -+sun/reflect/UnsafeObjectFieldAccessorImpl -+java/awt/MediaTracker -+sun/misc/SoftCache$ValueCell -+sun/awt/image/URLImageSource -+sun/awt/image/InputStreamImageSource -+java/awt/image/ImageProducer -+sun/awt/image/ImageFetchable -+sun/awt/image/ToolkitImage -+sun/awt/image/NativeLibLoader -+sun/awt/image/NativeLibLoader$1 -+javax/swing/ImageIcon$3 -+java/awt/ImageMediaEntry -+java/awt/MediaEntry -+sun/awt/image/MultiResolutionToolkitImage -+sun/awt/image/MultiResolutionImage -+sun/awt/image/ImageRepresentation -+java/awt/image/ImageConsumer -+sun/awt/image/ImageWatched -+sun/awt/image/ImageWatched$Link -+sun/awt/image/ImageWatched$WeakLink -+sun/awt/image/ImageConsumerQueue -+sun/awt/image/ImageFetcher -+sun/awt/image/FetcherInfo -+sun/awt/image/ImageFetcher$1 -+sun/net/ProgressMonitor -+sun/net/DefaultProgressMeteringPolicy -+sun/net/ProgressMeteringPolicy -+sun/net/www/MimeTable -+java/net/FileNameMap -+sun/net/www/MimeTable$1 -+sun/net/www/MimeTable$DefaultInstanceHolder -+sun/net/www/MimeTable$DefaultInstanceHolder$1 -+sun/net/www/MimeEntry -+java/net/URLConnection$1 -+java/text/SimpleDateFormat -+java/text/DateFormat -+java/text/Format -+java/text/DateFormat$Field -+java/text/Format$Field -+java/util/TimeZone -+sun/util/calendar/ZoneInfo -+sun/util/calendar/ZoneInfoFile -+sun/util/calendar/ZoneInfoFile$1 -+java/io/DataInputStream -+sun/util/calendar/ZoneInfoFile$ZoneOffsetTransitionRule -+sun/util/calendar/ZoneInfoFile$Checksum -+java/util/zip/CRC32 -+java/util/zip/Checksum -+java/util/TimeZone$1 -+java/util/Calendar -+sun/util/spi/CalendarProvider -+java/util/spi/LocaleServiceProvider -+sun/util/locale/provider/LocaleProviderAdapter -+sun/util/locale/provider/JRELocaleProviderAdapter -+sun/util/locale/provider/ResourceBundleBasedAdapter -+sun/util/locale/provider/SPILocaleProviderAdapter -+sun/util/locale/provider/AuxLocaleProviderAdapter -+sun/util/locale/provider/AuxLocaleProviderAdapter$NullProvider -+sun/util/locale/provider/LocaleProviderAdapter$Type -+sun/util/locale/provider/LocaleProviderAdapter$1 -+sun/util/locale/provider/CalendarProviderImpl -+sun/util/locale/provider/AvailableLanguageTags -+sun/util/locale/provider/LocaleDataMetaInfo -+sun/util/locale/provider/JRELocaleProviderAdapter$1 -+java/util/Calendar$Builder -+java/util/GregorianCalendar -+sun/util/locale/provider/CalendarDataUtility -+java/util/spi/CalendarDataProvider -+sun/util/locale/provider/LocaleServiceProviderPool -+java/text/spi/BreakIteratorProvider -+java/text/spi/CollatorProvider -+java/text/spi/DateFormatProvider -+java/text/spi/DateFormatSymbolsProvider -+java/text/spi/DecimalFormatSymbolsProvider -+java/text/spi/NumberFormatProvider -+java/util/spi/CurrencyNameProvider -+java/util/spi/LocaleNameProvider -+java/util/spi/TimeZoneNameProvider -+sun/util/locale/provider/CalendarDataProviderImpl -+sun/util/locale/provider/SPILocaleProviderAdapter$1 -+sun/util/locale/provider/CalendarDataUtility$CalendarWeekParameterGetter -+sun/util/locale/provider/LocaleServiceProviderPool$LocalizedObjectGetter -+sun/util/locale/provider/LocaleResources -+sun/util/resources/LocaleData -+sun/util/resources/LocaleData$1 -+sun/util/resources/LocaleData$LocaleDataResourceBundleControl -+sun/util/locale/LanguageTag -+java/util/Collections$EmptyIterator -+sun/util/resources/CalendarData -+sun/util/resources/LocaleNamesBundle -+sun/util/resources/OpenListResourceBundle -+sun/util/resources/en/CalendarData_en -+sun/util/locale/provider/LocaleResources$ResourceReference -+sun/util/calendar/Gregorian$Date -+sun/util/calendar/BaseCalendar$Date -+sun/util/calendar/CalendarDate -+sun/util/calendar/CalendarUtils -+java/text/DateFormatSymbols -+sun/util/locale/provider/DateFormatSymbolsProviderImpl -+sun/text/resources/FormatData -+sun/util/resources/ParallelListResourceBundle -+java/util/concurrent/atomic/AtomicMarkableReference -+java/util/concurrent/atomic/AtomicMarkableReference$Pair -+sun/text/resources/en/FormatData_en -+sun/text/resources/en/FormatData_en_US -+sun/util/resources/ParallelListResourceBundle$KeySet -+java/text/NumberFormat -+sun/util/locale/provider/NumberFormatProviderImpl -+java/text/DecimalFormatSymbols -+sun/util/locale/provider/DecimalFormatSymbolsProviderImpl -+java/util/Currency -+java/util/Currency$1 -+sun/util/locale/provider/CurrencyNameProviderImpl -+java/util/Currency$CurrencyNameGetter -+sun/util/resources/CurrencyNames -+sun/util/resources/en/CurrencyNames_en_US -+java/text/DecimalFormat -+java/text/FieldPosition -+java/text/DigitList -+java/math/RoundingMode -+java/text/DontCareFieldPosition -+java/text/DontCareFieldPosition$1 -+java/text/Format$FieldDelegate -+sun/awt/image/GifImageDecoder -+sun/awt/image/ImageDecoder -+sun/awt/image/GifFrame -+java/awt/image/Raster -+java/awt/image/DataBufferByte -+java/awt/image/DataBuffer -+java/awt/image/DataBuffer$1 -+sun/awt/image/SunWritableRaster$DataStealer -+sun/awt/image/SunWritableRaster -+java/awt/image/WritableRaster -+java/awt/image/PixelInterleavedSampleModel -+java/awt/image/ComponentSampleModel -+java/awt/image/SampleModel -+sun/awt/image/ByteInterleavedRaster -+sun/awt/image/ByteComponentRaster -+java/awt/image/BufferedImage -+java/awt/image/WritableRenderedImage -+java/awt/image/RenderedImage -+java/awt/image/BufferedImage$1 -+sun/awt/image/IntegerComponentRaster -+sun/awt/image/BytePackedRaster -+javax/swing/plaf/BorderUIResource -+javax/swing/BorderFactory -+javax/swing/border/BevelBorder -+javax/swing/border/EtchedBorder -+javax/swing/plaf/metal/MetalIconFactory -+javax/swing/plaf/metal/MetalIconFactory$TreeFolderIcon -+javax/swing/plaf/metal/MetalIconFactory$FolderIcon16 -+java/util/zip/ZipInputStream -+java/io/PushbackInputStream -+java/util/zip/ZipUtils -+java/io/RandomAccessFile$1 -+java/lang/Thread$State -+javax/swing/SwingUtilities$SharedOwnerFrame -+sun/awt/X11/XWindowAttributes -+javax/swing/border/LineBorder -+javax/swing/SizeRequirements -+java/util/ArrayList$ListItr -+javax/swing/CellRendererPane -+javax/swing/RepaintManager$3 -+javax/swing/JRadioButton -+javax/swing/JToggleButton -+java/lang/ClassFormatError -+java/io/ObjectInputStream -+java/io/ObjectInput -+java/io/ObjectStreamConstants -+sun/awt/image/BufImgSurfaceManager -+sun/awt/image/BufImgSurfaceData -+sun/awt/image/BufImgSurfaceData$ICMColorData -+sun/java2d/x11/X11SurfaceDataProxy -+sun/java2d/x11/X11SurfaceDataProxy$Bitmask -+sun/java2d/StateTrackableDelegate$1 -+javax/swing/JTabbedPane -+java/awt/geom/RectIterator -+java/awt/geom/PathIterator -+javax/swing/event/ChangeListener -+java/awt/Polygon -+javax/swing/event/MenuListener -+javax/swing/DefaultSingleSelectionModel -+javax/swing/SingleSelectionModel -+javax/swing/JTabbedPane$ModelListener -+javax/swing/plaf/metal/MetalTabbedPaneUI -+javax/swing/plaf/basic/BasicTabbedPaneUI -+javax/swing/plaf/TabbedPaneUI -+javax/swing/plaf/metal/MetalTabbedPaneUI$TabbedPaneLayout -+javax/swing/plaf/basic/BasicTabbedPaneUI$TabbedPaneLayout -+javax/swing/plaf/basic/BasicTabbedPaneUI$TabbedPaneScrollLayout -+javax/swing/plaf/basic/BasicTabbedPaneUI$Handler -+sun/reflect/MethodAccessorGenerator -+sun/reflect/AccessorGenerator -+sun/reflect/ClassFileConstants -+sun/reflect/ByteVectorFactory -+sun/reflect/ByteVectorImpl -+sun/reflect/ByteVector -+sun/reflect/ClassFileAssembler -+sun/reflect/UTF8 -+sun/reflect/Label -+sun/reflect/Label$PatchInfo -+sun/reflect/MethodAccessorGenerator$1 -+sun/reflect/ClassDefiner -+sun/reflect/ClassDefiner$1 -+sun/reflect/BootstrapConstructorAccessorImpl -+javax/swing/JTextField -+javax/swing/JViewport -+java/awt/CardLayout -+javax/swing/text/Document -+javax/swing/text/JTextComponent$1 -+sun/swing/SwingAccessor$JTextComponentAccessor -+javax/swing/text/JTextComponent$4 -+com/sun/beans/util/Cache -+com/sun/beans/util/Cache$Kind -+com/sun/beans/util/Cache$Kind$1 -+com/sun/beans/util/Cache$Kind$2 -+com/sun/beans/util/Cache$Kind$3 -+com/sun/beans/util/Cache$CacheEntry -+javax/swing/Action -+javax/swing/JTextField$NotifyAction -+javax/swing/text/TextAction -+javax/swing/AbstractAction -+java/lang/ArrayIndexOutOfBoundsException -+javax/swing/DropMode -+javax/swing/text/JTextComponent$MutableCaretEvent -+javax/swing/event/CaretEvent -+javax/swing/plaf/metal/MetalTextFieldUI -+javax/swing/plaf/basic/BasicTextFieldUI -+javax/swing/plaf/basic/BasicTextUI -+javax/swing/text/ViewFactory -+javax/swing/plaf/TextUI -+javax/swing/plaf/basic/BasicTextUI$BasicCursor -+javax/swing/text/DefaultEditorKit -+javax/swing/text/EditorKit -+javax/swing/text/DefaultEditorKit$InsertContentAction -+javax/swing/text/DefaultEditorKit$DeletePrevCharAction -+javax/swing/text/DefaultEditorKit$DeleteNextCharAction -+javax/swing/text/DefaultEditorKit$ReadOnlyAction -+javax/swing/text/DefaultEditorKit$DeleteWordAction -+javax/swing/text/DefaultEditorKit$WritableAction -+javax/swing/text/DefaultEditorKit$CutAction -+javax/swing/text/DefaultEditorKit$CopyAction -+javax/swing/text/DefaultEditorKit$PasteAction -+javax/swing/text/DefaultEditorKit$VerticalPageAction -+javax/swing/text/DefaultEditorKit$PageAction -+javax/swing/text/DefaultEditorKit$InsertBreakAction -+javax/swing/text/DefaultEditorKit$BeepAction -+javax/swing/text/DefaultEditorKit$NextVisualPositionAction -+javax/swing/text/DefaultEditorKit$BeginWordAction -+javax/swing/text/DefaultEditorKit$EndWordAction -+javax/swing/text/DefaultEditorKit$PreviousWordAction -+javax/swing/text/DefaultEditorKit$NextWordAction -+javax/swing/text/DefaultEditorKit$BeginLineAction -+javax/swing/text/DefaultEditorKit$EndLineAction -+javax/swing/text/DefaultEditorKit$BeginParagraphAction -+javax/swing/text/DefaultEditorKit$EndParagraphAction -+javax/swing/text/DefaultEditorKit$BeginAction -+javax/swing/text/DefaultEditorKit$EndAction -+javax/swing/text/DefaultEditorKit$DefaultKeyTypedAction -+javax/swing/text/DefaultEditorKit$InsertTabAction -+javax/swing/text/DefaultEditorKit$SelectWordAction -+javax/swing/text/DefaultEditorKit$SelectLineAction -+javax/swing/text/DefaultEditorKit$SelectParagraphAction -+javax/swing/text/DefaultEditorKit$SelectAllAction -+javax/swing/text/DefaultEditorKit$UnselectAction -+javax/swing/text/DefaultEditorKit$ToggleComponentOrientationAction -+javax/swing/text/DefaultEditorKit$DumpModelAction -+javax/swing/plaf/basic/BasicTextUI$TextTransferHandler -+javax/swing/TransferHandler -+javax/swing/TransferHandler$TransferAction -+sun/swing/UIAction -+javax/swing/text/Position$Bias -+javax/swing/plaf/basic/BasicTextUI$RootView -+javax/swing/text/View -+javax/swing/plaf/basic/BasicTextUI$UpdateHandler -+javax/swing/event/DocumentListener -+javax/swing/plaf/basic/BasicTextUI$DragListener -+javax/swing/plaf/basic/DragRecognitionSupport$BeforeDrag -+javax/swing/event/MouseInputAdapter -+javax/swing/event/MouseInputListener -+java/awt/event/MouseAdapter -+javax/swing/plaf/metal/MetalBorders -+javax/swing/plaf/BorderUIResource$CompoundBorderUIResource -+javax/swing/border/CompoundBorder -+javax/swing/plaf/metal/MetalBorders$TextFieldBorder -+javax/swing/plaf/metal/MetalBorders$Flush3DBorder -+javax/swing/plaf/basic/BasicBorders$MarginBorder -+javax/swing/plaf/basic/BasicTextUI$BasicCaret -+javax/swing/text/DefaultCaret -+javax/swing/text/Caret -+javax/swing/text/DefaultCaret$Handler -+java/awt/datatransfer/ClipboardOwner -+javax/swing/Timer -+javax/swing/Timer$DoPostEvent -+javax/swing/plaf/basic/BasicTextUI$BasicHighlighter -+javax/swing/text/DefaultHighlighter -+javax/swing/text/LayeredHighlighter -+javax/swing/text/Highlighter -+javax/swing/text/Highlighter$Highlight -+javax/swing/text/DefaultHighlighter$DefaultHighlightPainter -+javax/swing/text/LayeredHighlighter$LayerPainter -+javax/swing/text/Highlighter$HighlightPainter -+javax/swing/text/DefaultHighlighter$SafeDamager -+javax/swing/ClientPropertyKey -+javax/swing/ClientPropertyKey$1 -+sun/awt/AWTAccessor$ClientPropertyKeyAccessor -+javax/swing/TransferHandler$SwingDropTarget -+java/awt/dnd/DropTargetContext -+java/awt/datatransfer/SystemFlavorMap -+java/awt/datatransfer/FlavorMap -+java/awt/datatransfer/FlavorTable -+java/awt/datatransfer/SystemFlavorMap$SoftCache -+javax/swing/TransferHandler$DropHandler -+javax/swing/TransferHandler$TransferSupport -+javax/swing/text/PlainDocument -+javax/swing/text/AbstractDocument -+javax/swing/text/GapContent -+javax/swing/text/AbstractDocument$Content -+javax/swing/text/GapVector -+javax/swing/text/GapContent$MarkVector -+javax/swing/text/GapContent$MarkData -+javax/swing/text/StyleContext -+javax/swing/text/AbstractDocument$AttributeContext -+javax/swing/text/StyleConstants -+javax/swing/text/StyleConstants$CharacterConstants -+javax/swing/text/AttributeSet$CharacterAttribute -+javax/swing/text/StyleConstants$FontConstants -+javax/swing/text/AttributeSet$FontAttribute -+javax/swing/text/StyleConstants$ColorConstants -+javax/swing/text/AttributeSet$ColorAttribute -+javax/swing/text/StyleConstants$ParagraphConstants -+javax/swing/text/AttributeSet$ParagraphAttribute -+javax/swing/text/StyleContext$FontKey -+javax/swing/text/SimpleAttributeSet -+javax/swing/text/MutableAttributeSet -+javax/swing/text/AttributeSet -+javax/swing/text/SimpleAttributeSet$EmptyAttributeSet -+javax/swing/text/StyleContext$NamedStyle -+javax/swing/text/Style -+java/util/Collections$EmptyEnumeration -+javax/swing/text/StyleContext$SmallAttributeSet -+java/util/Collections$3 -+javax/swing/text/AbstractDocument$BidiRootElement -+javax/swing/text/AbstractDocument$BranchElement -+javax/swing/text/AbstractDocument$AbstractElement -+javax/swing/text/Element -+javax/swing/tree/TreeNode -+javax/swing/text/AbstractDocument$1 -+javax/swing/text/AbstractDocument$BidiElement -+javax/swing/text/AbstractDocument$LeafElement -+javax/swing/text/GapContent$StickyPosition -+javax/swing/text/Position -+javax/swing/text/StyleContext$KeyEnumeration -+javax/swing/text/FieldView -+javax/swing/text/PlainView -+javax/swing/text/TabExpander -+javax/swing/text/JTextComponent$DefaultKeymap -+javax/swing/text/Keymap -+javax/swing/text/JTextComponent$KeymapWrapper -+javax/swing/text/JTextComponent$KeymapActionMap -+javax/swing/plaf/basic/BasicTextUI$FocusAction -+javax/swing/plaf/basic/BasicTextUI$TextActionWrapper -+javax/swing/plaf/synth/SynthUI -+javax/swing/plaf/synth/SynthConstants -+javax/swing/JEditorPane -+javax/swing/DefaultBoundedRangeModel -+javax/swing/BoundedRangeModel -+javax/swing/JTextField$ScrollRepainter -+javax/swing/DefaultButtonModel -+javax/swing/ButtonModel -+javax/swing/AbstractButton$Handler -+javax/swing/plaf/basic/BasicButtonUI -+javax/swing/plaf/ButtonUI -+javax/swing/plaf/metal/MetalBorders$ButtonBorder -+javax/swing/plaf/basic/BasicButtonListener -+javax/swing/event/AncestorListener -+java/beans/VetoableChangeListener -+javax/swing/plaf/metal/MetalComboBoxButton -+javax/swing/plaf/basic/BasicArrowButton -+javax/swing/plaf/metal/MetalScrollButton -+sun/swing/ImageIconUIResource -+javax/swing/GrayFilter -+java/awt/image/RGBImageFilter -+java/awt/image/ImageFilter -+java/awt/image/FilteredImageSource -+javax/swing/plaf/basic/BasicGraphicsUtils -+javax/swing/ButtonGroup -+org/w3c/dom/Node -+org/xml/sax/SAXException -+javax/xml/parsers/ParserConfigurationException -+org/xml/sax/EntityResolver -+java/security/NoSuchAlgorithmException -+java/security/GeneralSecurityException -+java/util/zip/GZIPInputStream -+java/util/zip/DeflaterOutputStream -+java/io/StringReader -+org/xml/sax/InputSource -+javax/xml/parsers/DocumentBuilderFactory -+javax/xml/parsers/FactoryFinder -+javax/xml/parsers/SecuritySupport -+javax/xml/parsers/SecuritySupport$2 -+javax/xml/parsers/SecuritySupport$5 -+javax/xml/parsers/FactoryFinder$1 -+javax/xml/parsers/DocumentBuilder -+org/xml/sax/ErrorHandler -+org/w3c/dom/Document -+org/xml/sax/helpers/DefaultHandler -+org/xml/sax/DTDHandler -+org/xml/sax/ContentHandler -+org/xml/sax/SAXNotRecognizedException -+org/xml/sax/SAXNotSupportedException -+org/xml/sax/Locator -+org/xml/sax/SAXParseException -+org/w3c/dom/NodeList -+org/w3c/dom/events/EventTarget -+org/w3c/dom/traversal/DocumentTraversal -+org/w3c/dom/events/DocumentEvent -+org/w3c/dom/ranges/DocumentRange -+org/w3c/dom/Element -+org/w3c/dom/CharacterData -+org/w3c/dom/CDATASection -+org/w3c/dom/Text -+org/w3c/dom/Entity -+org/xml/sax/AttributeList -+org/w3c/dom/DOMException -+org/w3c/dom/DocumentType -+org/w3c/dom/Attr -+org/w3c/dom/EntityReference -+org/w3c/dom/DocumentFragment -+org/w3c/dom/ProcessingInstruction -+org/w3c/dom/Notation -+org/w3c/dom/Comment -+org/w3c/dom/events/EventException -+org/w3c/dom/events/Event -+org/w3c/dom/events/MutationEvent -+org/w3c/dom/traversal/TreeWalker -+org/w3c/dom/ranges/Range -+org/w3c/dom/traversal/NodeIterator -+org/w3c/dom/NamedNodeMap -+java/awt/GridLayout -+javax/swing/JToggleButton$ToggleButtonModel -+javax/swing/plaf/metal/MetalRadioButtonUI -+javax/swing/plaf/basic/BasicRadioButtonUI -+javax/swing/plaf/basic/BasicToggleButtonUI -+javax/swing/plaf/basic/BasicBorders -+javax/swing/plaf/basic/BasicBorders$RadioButtonBorder -+javax/swing/plaf/basic/BasicBorders$ButtonBorder -+javax/swing/plaf/metal/MetalIconFactory$RadioButtonIcon -+javax/swing/plaf/basic/BasicRadioButtonUI$KeyHandler -+javax/swing/plaf/basic/BasicRadioButtonUI$SelectPreviousBtn -+javax/swing/plaf/basic/BasicRadioButtonUI$SelectNextBtn -+javax/swing/event/ChangeEvent -+java/awt/event/ItemEvent -+javax/swing/ToolTipManager -+javax/swing/ToolTipManager$insideTimerAction -+javax/swing/ToolTipManager$outsideTimerAction -+javax/swing/ToolTipManager$stillInsideTimerAction -+javax/swing/ToolTipManager$MoveBeforeEnterListener -+java/awt/event/MouseMotionAdapter -+javax/swing/ToolTipManager$AccessibilityKeyListener -+java/awt/event/KeyAdapter -+java/awt/CardLayout$Card -+javax/swing/JComboBox -+javax/swing/event/ListDataListener -+javax/swing/JCheckBox -+javax/swing/JPopupMenu -+javax/swing/MenuElement -+javax/swing/DefaultComboBoxModel -+javax/swing/MutableComboBoxModel -+javax/swing/ComboBoxModel -+javax/swing/ListModel -+javax/swing/AbstractListModel -+javax/swing/JComboBox$1 -+javax/swing/AncestorNotifier -+javax/swing/plaf/metal/MetalComboBoxUI -+javax/swing/plaf/basic/BasicComboBoxUI -+javax/swing/plaf/ComboBoxUI -+javax/swing/plaf/metal/MetalComboBoxUI$MetalComboBoxLayoutManager -+javax/swing/plaf/basic/BasicComboBoxUI$ComboBoxLayoutManager -+javax/swing/plaf/basic/BasicComboPopup -+javax/swing/plaf/basic/ComboPopup -+javax/swing/plaf/basic/BasicComboPopup$EmptyListModelClass -+javax/swing/plaf/basic/BasicLookAndFeel$AWTEventHelper -+java/awt/event/AWTEventListenerProxy -+java/awt/Toolkit$SelectiveAWTEventListener -+java/awt/Toolkit$ToolkitEventMulticaster -+javax/swing/plaf/basic/BasicLookAndFeel$1 -+javax/swing/plaf/basic/DefaultMenuLayout -+javax/swing/plaf/metal/MetalBorders$PopupMenuBorder -+javax/swing/plaf/basic/BasicPopupMenuUI$BasicPopupMenuListener -+javax/swing/event/PopupMenuListener -+javax/swing/plaf/basic/BasicPopupMenuUI$BasicMenuKeyListener -+javax/swing/event/MenuKeyListener -+javax/swing/plaf/basic/BasicPopupMenuUI$MouseGrabber -+javax/swing/MenuSelectionManager -+javax/swing/plaf/basic/BasicPopupMenuUI$MenuKeyboardHelper -+javax/swing/plaf/basic/BasicPopupMenuUI$MenuKeyboardHelper$1 -+java/awt/event/FocusAdapter -+javax/swing/plaf/basic/BasicComboPopup$1 -+javax/swing/JList -+javax/swing/DefaultListSelectionModel -+javax/swing/ListSelectionModel -+javax/swing/plaf/basic/BasicListUI -+javax/swing/plaf/ListUI -+javax/swing/plaf/basic/BasicListUI$ListTransferHandler -+javax/swing/DefaultListCellRenderer$UIResource -+javax/swing/DefaultListCellRenderer -+javax/swing/ListCellRenderer -+javax/swing/plaf/basic/BasicListUI$Handler -+javax/swing/event/ListSelectionListener -+javax/swing/JMenu -+javax/swing/JMenuItem -+javax/swing/event/ListSelectionEvent -+javax/swing/plaf/basic/BasicComboPopup$Handler -+javax/swing/ScrollPaneLayout$UIResource -+javax/swing/ScrollPaneLayout -+javax/swing/ViewportLayout -+javax/swing/plaf/basic/BasicViewportUI -+javax/swing/plaf/ViewportUI -+javax/swing/JScrollPane$ScrollBar -+javax/swing/JScrollBar -+java/awt/Adjustable -+javax/swing/JScrollBar$ModelListener -+javax/swing/plaf/metal/MetalScrollBarUI -+javax/swing/plaf/basic/BasicScrollBarUI -+javax/swing/plaf/ScrollBarUI -+javax/swing/plaf/metal/MetalBumps -+javax/swing/plaf/basic/BasicScrollBarUI$TrackListener -+javax/swing/plaf/basic/BasicScrollBarUI$ArrowButtonListener -+javax/swing/plaf/basic/BasicScrollBarUI$ModelListener -+javax/swing/plaf/metal/MetalScrollBarUI$ScrollBarListener -+javax/swing/plaf/basic/BasicScrollBarUI$PropertyChangeHandler -+javax/swing/plaf/basic/BasicScrollBarUI$Handler -+javax/swing/plaf/basic/BasicScrollBarUI$ScrollListener -+javax/swing/JViewport$ViewListener -+javax/swing/plaf/metal/MetalScrollPaneUI -+javax/swing/plaf/basic/BasicScrollPaneUI -+javax/swing/plaf/ScrollPaneUI -+javax/swing/plaf/metal/MetalBorders$ScrollPaneBorder -+javax/swing/plaf/basic/BasicScrollPaneUI$Handler -+javax/swing/plaf/metal/MetalScrollPaneUI$1 -+javax/swing/plaf/basic/BasicComboBoxRenderer$UIResource -+javax/swing/plaf/basic/BasicComboBoxRenderer -+javax/swing/plaf/metal/MetalComboBoxEditor$UIResource -+javax/swing/plaf/metal/MetalComboBoxEditor -+javax/swing/plaf/basic/BasicComboBoxEditor -+javax/swing/ComboBoxEditor -+javax/swing/plaf/basic/BasicComboBoxEditor$BorderlessTextField -+javax/swing/plaf/basic/BasicComboBoxEditor$UIResource -+javax/swing/text/Segment -+java/text/CharacterIterator -+javax/swing/plaf/metal/MetalComboBoxEditor$1 -+javax/swing/plaf/metal/MetalComboBoxEditor$EditorBorder -+javax/swing/JToolBar -+javax/swing/plaf/metal/MetalComboBoxUI$MetalPropertyChangeListener -+javax/swing/plaf/basic/BasicComboBoxUI$PropertyChangeHandler -+javax/swing/plaf/basic/BasicComboBoxUI$Handler -+javax/swing/plaf/metal/MetalComboBoxIcon -+javax/swing/plaf/metal/MetalComboBoxButton$1 -+javax/swing/plaf/basic/BasicComboBoxUI$DefaultKeySelectionManager -+javax/swing/JComboBox$KeySelectionManager -+javax/swing/plaf/metal/MetalCheckBoxUI -+javax/swing/plaf/metal/MetalIconFactory$CheckBoxIcon -+java/lang/ExceptionInInitializerError -+com/sun/java/swing/plaf/windows/WindowsTabbedPaneUI -+javax/swing/JProgressBar -+javax/swing/JProgressBar$ModelListener -+javax/swing/plaf/metal/MetalProgressBarUI -+javax/swing/plaf/basic/BasicProgressBarUI -+javax/swing/plaf/ProgressBarUI -+javax/swing/plaf/BorderUIResource$LineBorderUIResource -+javax/swing/plaf/basic/BasicProgressBarUI$Handler -+javax/swing/JTable -+javax/swing/event/TableModelListener -+javax/swing/event/TableColumnModelListener -+javax/swing/event/CellEditorListener -+javax/swing/event/RowSorterListener -+javax/swing/tree/TreeModel -+javax/swing/table/JTableHeader -+javax/swing/table/AbstractTableModel -+javax/swing/table/TableModel -+javax/swing/table/TableCellRenderer -+javax/swing/event/TreeExpansionListener -+javax/swing/table/DefaultTableCellRenderer -+javax/swing/JCheckBoxMenuItem -+javax/swing/JTree -+javax/swing/tree/TreeSelectionModel -+javax/swing/tree/DefaultTreeCellRenderer -+javax/swing/tree/TreeCellRenderer -+javax/swing/table/TableCellEditor -+javax/swing/CellEditor -+javax/swing/JToolTip -+javax/swing/table/TableColumn -+javax/swing/table/DefaultTableColumnModel -+javax/swing/table/TableColumnModel -+javax/swing/table/DefaultTableModel -+javax/swing/event/TableModelEvent -+sun/swing/table/DefaultTableCellHeaderRenderer -+sun/swing/table/DefaultTableCellHeaderRenderer$EmptyIcon -+javax/swing/plaf/basic/BasicTableHeaderUI -+javax/swing/plaf/TableHeaderUI -+javax/swing/plaf/basic/BasicTableHeaderUI$1 -+javax/swing/plaf/basic/BasicTableHeaderUI$MouseInputHandler -+javax/swing/DefaultCellEditor -+javax/swing/tree/TreeCellEditor -+javax/swing/AbstractCellEditor -+javax/swing/plaf/basic/BasicTableUI -+javax/swing/plaf/TableUI -+javax/swing/plaf/basic/BasicTableUI$TableTransferHandler -+javax/swing/plaf/basic/BasicTableUI$Handler -+javax/swing/tree/DefaultTreeSelectionModel -+javax/swing/tree/TreePath -+javax/swing/plaf/metal/MetalTreeUI -+javax/swing/plaf/basic/BasicTreeUI -+javax/swing/plaf/TreeUI -+javax/swing/plaf/basic/BasicTreeUI$Actions -+javax/swing/plaf/basic/BasicTreeUI$TreeTransferHandler -+javax/swing/plaf/metal/MetalTreeUI$LineListener -+javax/swing/plaf/basic/BasicTreeUI$Handler -+javax/swing/event/TreeModelListener -+javax/swing/event/TreeSelectionListener -+javax/swing/event/SwingPropertyChangeSupport -+javax/swing/tree/VariableHeightLayoutCache -+javax/swing/tree/AbstractLayoutCache -+javax/swing/tree/RowMapper -+javax/swing/plaf/basic/BasicTreeUI$NodeDimensionsHandler -+javax/swing/tree/AbstractLayoutCache$NodeDimensions -+javax/swing/JTree$TreeModelHandler -+javax/swing/tree/VariableHeightLayoutCache$TreeStateNode -+javax/swing/tree/DefaultMutableTreeNode -+javax/swing/tree/MutableTreeNode -+javax/swing/tree/DefaultMutableTreeNode$PreorderEnumeration -+java/util/Vector$1 -+javax/swing/event/TableColumnModelEvent -+javax/swing/JPopupMenu$Separator -+javax/swing/JSeparator -+java/text/ParseException -+java/text/NumberFormat$Field -+javax/swing/text/GapContent$InsertUndo -+javax/swing/undo/AbstractUndoableEdit -+javax/swing/undo/UndoableEdit -+javax/swing/text/AbstractDocument$DefaultDocumentEvent -+javax/swing/event/DocumentEvent -+javax/swing/undo/CompoundEdit -+javax/swing/event/DocumentEvent$EventType -+javax/swing/text/Utilities -+javax/swing/text/SegmentCache -+javax/swing/text/SegmentCache$CachedSegment -+javax/swing/event/DocumentEvent$ElementChange -+javax/swing/event/UndoableEditEvent -+javax/swing/event/UndoableEditListener -+java/awt/Canvas -+java/util/Locale$Category -+java/util/Locale$1 -+javax/swing/filechooser/FileFilter -+java/io/FileWriter -+javax/swing/tree/DefaultTreeModel -+javax/swing/tree/DefaultTreeCellEditor -+javax/swing/tree/DefaultTreeCellEditor$1 -+javax/swing/tree/DefaultTreeCellEditor$DefaultTextField -+javax/swing/DefaultCellEditor$1 -+javax/swing/DefaultCellEditor$EditorDelegate -+javax/swing/tree/DefaultTreeCellEditor$EditorContainer -+javax/swing/JTree$TreeSelectionRedirector -+javax/swing/JMenuItem$MenuItemFocusListener -+javax/swing/plaf/basic/BasicMenuItemUI -+javax/swing/plaf/MenuItemUI -+javax/swing/plaf/metal/MetalBorders$MenuItemBorder -+javax/swing/plaf/metal/MetalIconFactory$MenuItemArrowIcon -+sun/swing/MenuItemLayoutHelper -+javax/swing/plaf/basic/BasicMenuItemUI$Handler -+javax/swing/event/MenuDragMouseListener -+javax/swing/event/TreeModelEvent -+javax/swing/JSplitPane -+javax/swing/plaf/metal/MetalSplitPaneUI -+javax/swing/plaf/basic/BasicSplitPaneUI -+javax/swing/plaf/SplitPaneUI -+javax/swing/plaf/basic/BasicSplitPaneDivider -+javax/swing/plaf/basic/BasicBorders$SplitPaneBorder -+javax/swing/plaf/metal/MetalSplitPaneDivider -+javax/swing/plaf/basic/BasicSplitPaneDivider$DividerLayout -+javax/swing/plaf/basic/BasicSplitPaneDivider$MouseHandler -+javax/swing/plaf/basic/BasicBorders$SplitPaneDividerBorder -+javax/swing/plaf/basic/BasicSplitPaneUI$BasicHorizontalLayoutManager -+javax/swing/plaf/basic/BasicSplitPaneUI$1 -+javax/swing/plaf/basic/BasicSplitPaneUI$Handler -+javax/swing/plaf/metal/MetalSplitPaneDivider$1 -+javax/swing/plaf/basic/BasicSplitPaneDivider$OneTouchActionHandler -+javax/swing/plaf/metal/MetalSplitPaneDivider$2 -+javax/swing/border/TitledBorder -+javax/swing/plaf/basic/BasicTextAreaUI -+javax/swing/text/AbstractDocument$ElementEdit -+java/util/Random -+java/util/concurrent/atomic/AtomicLong -+java/io/InterruptedIOException -+java/net/NoRouteToHostException -+java/net/BindException -+javax/swing/tree/PathPlaceHolder -+javax/swing/event/TreeSelectionEvent -+javax/swing/JList$3 -+javax/swing/JList$ListSelectionHandler -+javax/swing/JSlider -+javax/swing/JSlider$ModelListener -+javax/swing/plaf/metal/MetalSliderUI -+javax/swing/plaf/basic/BasicSliderUI -+javax/swing/plaf/SliderUI -+javax/swing/plaf/basic/BasicSliderUI$Actions -+javax/swing/plaf/metal/MetalIconFactory$HorizontalSliderThumbIcon -+javax/swing/plaf/metal/MetalIconFactory$VerticalSliderThumbIcon -+javax/swing/plaf/basic/BasicSliderUI$TrackListener -+javax/swing/plaf/basic/BasicSliderUI$Handler -+javax/swing/plaf/basic/BasicSliderUI$ScrollListener -+javax/swing/plaf/metal/MetalSliderUI$MetalPropertyListener -+javax/swing/plaf/basic/BasicSliderUI$PropertyChangeHandler -+java/util/concurrent/ConcurrentHashMap$KeyIterator -+java/util/concurrent/ConcurrentHashMap$BaseIterator -+java/util/concurrent/ConcurrentHashMap$Traverser -+sun/font/Type1Font$1 -+java/nio/channels/FileChannel$MapMode -+sun/nio/ch/FileChannelImpl$Unmapper -+sun/nio/ch/Util$4 -+java/nio/DirectByteBufferR -+sun/nio/cs/US_ASCII$Decoder -+sun/font/SunFontManager$10 -+java/util/concurrent/ConcurrentHashMap$ValueIterator -+javax/swing/DefaultListModel -+javax/swing/event/ListDataEvent -+javax/sound/sampled/DataLine -+javax/sound/sampled/Line -+javax/sound/sampled/LineUnavailableException -+javax/sound/sampled/UnsupportedAudioFileException -+javax/sound/sampled/Line$Info -+javax/sound/sampled/DataLine$Info -+javax/sound/sampled/Control$Type -+javax/sound/sampled/FloatControl$Type -+javax/swing/JMenuBar -+javax/swing/plaf/basic/BasicMenuBarUI -+javax/swing/plaf/MenuBarUI -+javax/swing/plaf/metal/MetalBorders$MenuBarBorder -+javax/swing/plaf/basic/BasicMenuBarUI$Handler -+javax/swing/KeyboardManager -+javax/swing/JRadioButtonMenuItem -+javax/swing/JMenu$MenuChangeListener -+javax/swing/plaf/basic/BasicMenuUI -+javax/swing/plaf/metal/MetalIconFactory$MenuArrowIcon -+javax/swing/plaf/basic/BasicMenuUI$Handler -+javax/swing/JMenuItem$AccessibleJMenuItem -+javax/swing/AbstractButton$AccessibleAbstractButton -+javax/accessibility/AccessibleAction -+javax/accessibility/AccessibleValue -+javax/accessibility/AccessibleText -+javax/accessibility/AccessibleExtendedComponent -+javax/accessibility/AccessibleComponent -+javax/swing/JComponent$AccessibleJComponent -+java/awt/Container$AccessibleAWTContainer -+java/awt/Component$AccessibleAWTComponent -+javax/accessibility/AccessibleContext$1 -+sun/awt/AWTAccessor$AccessibleContextAccessor -+javax/accessibility/AccessibleRelationSet -+javax/swing/JMenu$WinListener -+java/awt/event/WindowAdapter -+javax/swing/plaf/metal/MetalPopupMenuSeparatorUI -+javax/swing/plaf/metal/MetalSeparatorUI -+javax/swing/plaf/basic/BasicSeparatorUI -+javax/swing/plaf/SeparatorUI -+javax/accessibility/AccessibleState -+javax/accessibility/AccessibleBundle -+javax/swing/plaf/basic/BasicCheckBoxMenuItemUI -+javax/swing/plaf/metal/MetalIconFactory$CheckBoxMenuItemIcon -+javax/swing/JCheckBoxMenuItem$AccessibleJCheckBoxMenuItem -+javax/swing/plaf/basic/BasicRadioButtonMenuItemUI -+javax/swing/plaf/metal/MetalIconFactory$RadioButtonMenuItemIcon -+java/awt/event/ContainerEvent -+sun/awt/image/ImageDecoder$1 -+java/awt/im/InputContext -+sun/awt/im/InputMethodContext -+java/awt/im/spi/InputMethodContext -+java/awt/im/InputMethodRequests -+sun/awt/im/InputContext -+sun/awt/im/InputMethodManager -+sun/awt/im/ExecutableInputMethodManager -+sun/awt/X11/XInputMethodDescriptor -+sun/awt/X11InputMethodDescriptor -+java/awt/im/spi/InputMethodDescriptor -+sun/awt/im/InputMethodLocator -+sun/awt/im/ExecutableInputMethodManager$3 -+javax/swing/JTabbedPane$Page -+java/net/DatagramSocket -+java/net/MulticastSocket -+java/net/DatagramPacket -+java/net/DatagramPacket$1 -+java/net/DefaultDatagramSocketImplFactory -+java/net/PlainDatagramSocketImpl -+java/net/AbstractPlainDatagramSocketImpl -+java/net/DatagramSocketImpl -+java/net/AbstractPlainDatagramSocketImpl$1 -+java/net/NetworkInterface -+java/net/NetworkInterface$1 -+java/net/InterfaceAddress -+java/net/DefaultInterface -+java/net/DatagramSocket$1 -+java/net/SocketOption -+sun/net/ResourceManager -+java/text/Collator -+sun/util/locale/provider/CollatorProviderImpl -+java/util/Collections$UnmodifiableList$1 -+sun/text/resources/CollationData -+java/text/RuleBasedCollator -+java/text/RBCollationTables -+java/net/ServerSocket -+java/text/RBTableBuilder -+java/text/RBCollationTables$BuildAPI -+sun/text/IntHashtable -+sun/text/UCompactIntArray -+sun/text/normalizer/NormalizerImpl -+sun/text/normalizer/ICUData -+sun/text/normalizer/NormalizerDataReader -+sun/text/normalizer/ICUBinary$Authenticate -+sun/text/normalizer/ICUBinary -+sun/text/normalizer/NormalizerImpl$FCDTrieImpl -+sun/text/normalizer/Trie$DataManipulate -+sun/text/normalizer/NormalizerImpl$NormTrieImpl -+sun/text/normalizer/NormalizerImpl$AuxTrieImpl -+sun/text/normalizer/IntTrie -+sun/text/normalizer/Trie -+sun/text/normalizer/CharTrie -+sun/text/normalizer/CharTrie$FriendAgent -+sun/text/normalizer/UnicodeSet -+sun/text/normalizer/UnicodeMatcher -+sun/text/normalizer/NormalizerImpl$DecomposeArgs -+java/text/MergeCollation -+java/text/PatternEntry$Parser -+java/text/PatternEntry -+java/text/EntryPair -+sun/text/ComposedCharIter -+sun/text/normalizer/UTF16 -+sun/net/www/protocol/http/Handler -+java/security/SignatureException -+java/security/InvalidKeyException -+java/security/KeyException -+java/security/Signature -+java/security/SignatureSpi -+java/io/ObjectInputStream$BlockDataInputStream -+java/io/ObjectInputStream$PeekInputStream -+java/io/ObjectInputStream$HandleTable -+java/io/ObjectInputStream$HandleTable$HandleList -+java/io/ObjectInputStream$ValidationList -+java/io/Bits -+java/io/ObjectStreamClass -+java/io/ObjectOutputStream -+java/io/ObjectOutput -+sun/security/provider/DSAPublicKey -+java/security/interfaces/DSAPublicKey -+java/security/interfaces/DSAKey -+java/security/PublicKey -+java/security/Key -+sun/security/x509/X509Key -+java/io/ObjectStreamClass$Caches -+java/io/ObjectStreamClass$WeakClassKey -+java/io/ObjectStreamClass$EntryFuture -+java/lang/reflect/Proxy -+java/lang/reflect/InvocationHandler -+java/lang/reflect/WeakCache -+java/lang/reflect/Proxy$KeyFactory -+java/lang/reflect/Proxy$ProxyClassFactory -+java/io/Externalizable -+java/io/ObjectStreamClass$2 -+java/util/ComparableTimSort -+sun/security/x509/AlgorithmId -+sun/security/util/DerEncoder -+sun/reflect/SerializationConstructorAccessorImpl -+sun/security/util/BitArray -+sun/reflect/UnsafeQualifiedStaticLongFieldAccessorImpl -+java/io/ObjectStreamClass$FieldReflectorKey -+java/io/ObjectStreamClass$FieldReflector -+java/io/ObjectStreamClass$1 -+java/io/DataOutputStream -+java/io/ObjectStreamClass$MemberSignature -+java/io/ObjectStreamClass$3 -+sun/security/util/DerOutputStream -+java/io/ObjectStreamClass$4 -+java/io/ObjectStreamClass$5 -+sun/security/util/DerValue -+java/security/MessageDigest -+java/security/MessageDigestSpi -+sun/security/jca/GetInstance -+sun/security/jca/Providers -+java/lang/InheritableThreadLocal -+sun/security/jca/ProviderList -+sun/security/jca/ProviderConfig -+java/math/BigInteger -+java/security/Provider -+sun/security/jca/ProviderList$3 -+sun/security/jca/ProviderList$1 -+java/security/Provider$ServiceKey -+java/security/Provider$EngineDescription -+java/security/interfaces/DSAParams -+sun/security/jca/ProviderList$2 -+sun/security/jca/ProviderConfig$2 -+java/io/ObjectStreamClass$ClassDataSlot -+sun/security/provider/Sun -+java/io/SerialCallbackContext -+sun/security/provider/SunEntries -+sun/security/provider/SunEntries$1 -+sun/security/provider/NativePRNG -+java/security/SecureRandomSpi -+sun/security/provider/NativePRNG$Variant -+sun/security/util/DerInputStream -+sun/security/provider/NativePRNG$1 -+sun/security/provider/NativePRNG$2 -+sun/security/provider/NativePRNG$RandomIO -+sun/security/util/DerInputBuffer -+sun/security/provider/NativePRNG$Blocking -+sun/security/provider/NativePRNG$NonBlocking -+sun/security/util/ObjectIdentifier -+java/security/Provider$Service -+java/security/Provider$UString -+sun/security/provider/SHA -+sun/security/provider/DigestBase -+sun/security/jca/GetInstance$Instance -+java/security/MessageDigest$Delegate -+sun/security/provider/ByteArrayAccess -+java/io/ObjectOutputStream$BlockDataOutputStream -+java/security/AlgorithmParameters -+java/io/ObjectOutputStream$HandleTable -+java/io/ObjectOutputStream$ReplaceTable -+java/security/AlgorithmParametersSpi -+sun/security/provider/DSAParameters -+sun/security/util/ByteArrayLexOrder -+sun/security/util/ByteArrayTagOrder -+sun/security/util/DerIndefLenConverter -+java/io/ObjectStreamClass$ExceptionInfo -+java/io/ObjectInputStream$GetFieldImpl -+java/io/ObjectInputStream$GetField -+java/math/BigInteger$UnsafeHolder -+sun/security/jca/ServiceId -+sun/security/jca/ProviderList$ServiceList -+sun/security/jca/ProviderList$ServiceList$1 -+java/security/Signature$Delegate -+java/util/ArrayList$SubList -+java/util/ArrayList$SubList$1 -+java/security/interfaces/DSAPrivateKey -+java/security/PrivateKey -+javax/security/auth/Destroyable -+sun/security/provider/DSA$SHA1withDSA -+sun/security/provider/DSA$LegacyDSA -+sun/security/provider/DSA -+java/security/spec/DSAParameterSpec -+java/security/spec/AlgorithmParameterSpec -+java/math/MutableBigInteger -+java/math/SignedMutableBigInteger -+javax/swing/TimerQueue -+java/util/concurrent/DelayQueue -+java/util/concurrent/BlockingQueue -+java/util/AbstractQueue -+java/util/PriorityQueue -+javax/swing/TimerQueue$1 -+javax/swing/TimerQueue$DelayedTimer -+java/util/concurrent/Delayed -+java/util/concurrent/TimeUnit -+java/util/concurrent/TimeUnit$1 -+java/util/concurrent/TimeUnit$2 -+java/util/concurrent/TimeUnit$3 -+java/util/concurrent/TimeUnit$4 -+java/util/concurrent/TimeUnit$5 -+java/util/concurrent/TimeUnit$6 -+java/util/concurrent/TimeUnit$7 -+java/awt/Window$1DisposeAction -+java/awt/EventQueue$1AWTInvocationLock -+sun/awt/X11/XUnmapEvent -+java/awt/LightweightDispatcher$2 -+java/awt/Component$FlipBufferStrategy -+java/awt/SentEvent -+sun/java2d/cmm/CMSManager -+java/awt/image/DataBufferInt -+java/awt/image/SinglePixelPackedSampleModel -+sun/awt/image/IntegerInterleavedRaster -+sun/awt/X11/XDropTargetRegistry -+sun/awt/X11/XEmbeddedFramePeer -+sun/awt/X11/XDragAndDropProtocols -+sun/awt/X11/XDropTargetContextPeer -+sun/awt/dnd/SunDropTargetContextPeer -+java/awt/dnd/peer/DropTargetContextPeer -+java/awt/datatransfer/Transferable -+sun/awt/X11/XDropTargetContextPeer$XDropTargetProtocolListenerImpl -+sun/awt/X11/XDropTargetProtocolListener -+sun/awt/X11/XDnDDragSourceProtocol -+sun/awt/X11/XDragSourceProtocol -+sun/awt/X11/MotifDnDDragSourceProtocol -+sun/awt/X11/XDnDDropTargetProtocol -+sun/awt/X11/XDropTargetProtocol -+sun/awt/X11/MotifDnDDropTargetProtocol -+sun/awt/X11/XErrorHandler$VerifyChangePropertyHandler -+sun/awt/X11/XDnDConstants -+sun/awt/X11/XSelection -+sun/awt/X11/XSelection$IncrementalTransferHandler -+sun/awt/X11/XSelection$SelectionEventHandler -+sun/awt/X11/MotifDnDConstants -+javax/swing/JLayer -+javax/swing/JInternalFrame -+javax/swing/KeyboardManager$ComponentKeyStrokePair -+sun/awt/EmbeddedFrame -+sun/swing/MenuItemLayoutHelper$RectSize -+javax/swing/JTable$2 -+javax/swing/JTable$Resizable3 -+javax/swing/JTable$Resizable2 -+javax/swing/JTable$5 -+javax/swing/event/AncestorEvent -+java/awt/Label -+sun/awt/X11/XLabelPeer -+java/awt/peer/LabelPeer -+sun/awt/TimedWindowEvent -+java/awt/DefaultKeyboardFocusManager$DefaultKeyboardFocusManagerSentEvent -+sun/awt/CausedFocusEvent$Cause -+java/awt/KeyboardFocusManager$HeavyweightFocusRequest -+java/awt/DefaultKeyboardFocusManager$TypeAheadMarker -+java/awt/KeyboardFocusManager$LightweightFocusRequest -+sun/awt/CausedFocusEvent -+java/awt/KeyboardFocusManager$3 -+sun/awt/X11/XInputMethod -+sun/awt/X11InputMethod -+sun/awt/im/InputMethodAdapter -+java/awt/im/spi/InputMethod -+java/awt/Event -+java/net/Authenticator -+java/lang/Throwable$WrappedPrintStream -+java/lang/Throwable$PrintStreamOrWriter -+sun/awt/image/PNGImageDecoder -+sun/awt/image/PNGFilterInputStream -+sun/util/locale/provider/TimeZoneNameUtility -+sun/util/locale/provider/TimeZoneNameProviderImpl -+sun/util/locale/provider/TimeZoneNameUtility$TimeZoneNameGetter -+sun/util/resources/TimeZoneNames -+sun/util/resources/TimeZoneNamesBundle -+sun/util/resources/en/TimeZoneNames_en -+sun/awt/image/OffScreenImage -+java/lang/ProcessBuilder -+java/lang/ProcessImpl -+java/lang/UNIXProcess -+java/lang/Process -+java/lang/UNIXProcess$Platform -+java/lang/UNIXProcess$LaunchMechanism -+java/util/EnumSet -+java/util/RegularEnumSet -+sun/java2d/x11/X11SurfaceDataProxy$Opaque -+java/lang/UNIXProcess$1 -+java/util/concurrent/Executor -+java/util/concurrent/ThreadFactory -+java/util/concurrent/Executors -+java/util/concurrent/ThreadPoolExecutor -+java/util/concurrent/AbstractExecutorService -+java/util/concurrent/ExecutorService -+java/util/concurrent/ThreadPoolExecutor$AbortPolicy -+java/util/concurrent/RejectedExecutionHandler -+java/util/concurrent/SynchronousQueue -+java/util/concurrent/SynchronousQueue$TransferStack -+java/util/concurrent/SynchronousQueue$Transferer -+java/util/concurrent/SynchronousQueue$TransferStack$SNode -+java/lang/UNIXProcess$ProcessPipeOutputStream -+java/lang/UNIXProcess$ProcessPipeInputStream -+java/util/concurrent/ThreadPoolExecutor$Worker -+java/lang/ProcessBuilder$NullOutputStream -+java/io/FilterReader -+sun/awt/X11/XClipboard -+sun/awt/X11/OwnershipListener -+sun/awt/datatransfer/SunClipboard -+java/awt/datatransfer/Clipboard -+java/io/EOFException -+java/util/jar/JarFile$JarEntryIterator -+java/util/zip/ZipFile$ZipEntryIterator -+java/lang/IllegalAccessError -+java/text/MessageFormat -+java/text/MessageFormat$Field -+java/util/Hashtable$ValueCollection -+javax/swing/event/CaretListener -+javax/swing/plaf/metal/MetalButtonUI -+javax/swing/plaf/metal/MetalToggleButtonUI -+javax/swing/plaf/metal/MetalBorders$ToggleButtonBorder -+javax/swing/event/MenuEvent -+javax/swing/border/MatteBorder -+sun/font/StandardGlyphVector -+java/awt/font/GlyphVector -+sun/font/StandardGlyphVector$GlyphStrike -+sun/font/CoreMetrics -+sun/font/FontLineMetrics -+java/awt/font/LineMetrics -+javax/swing/JToolBar$DefaultToolBarLayout -+javax/swing/plaf/metal/MetalToolBarUI -+javax/swing/plaf/basic/BasicToolBarUI -+javax/swing/plaf/ToolBarUI -+javax/swing/plaf/metal/MetalBorders$ToolBarBorder -+javax/swing/plaf/metal/MetalBorders$RolloverButtonBorder -+javax/swing/plaf/metal/MetalBorders$RolloverMarginBorder -+javax/swing/plaf/basic/BasicBorders$RolloverMarginBorder -+javax/swing/plaf/metal/MetalToolBarUI$MetalDockingListener -+javax/swing/plaf/basic/BasicToolBarUI$DockingListener -+javax/swing/plaf/basic/BasicToolBarUI$Handler -+javax/swing/JToolBar$Separator -+javax/swing/plaf/basic/BasicToolBarSeparatorUI -+java/awt/event/AdjustmentEvent -+java/awt/MenuBar -+sun/awt/X11/XErrorEvent -+# eea35d9d56e0006e ---- ./jdk/make/gendata/GendataFontConfig.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/gendata/GendataFontConfig.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -73,6 +73,13 @@ - GENDATA_FONT_CONFIG_SRC_PREFIX := aix. - endif - -+ifeq ($(OPENJDK_TARGET_OS), bsd) -+ GENDATA_FONT_CONFIG_SRC_DIR := \ -+ $(JDK_TOPDIR)/src/solaris/classes/sun/awt/fontconfigs -+ GENDATA_FONT_CONFIG_SRC_FILES := fontconfig.properties -+ GENDATA_FONT_CONFIG_SRC_PREFIX := bsd. -+endif -+ - ### - - $(GENDATA_FONT_CONFIG_DST)/%.src: \ ---- ./jdk/make/lib/Awt2dLibraries.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/lib/Awt2dLibraries.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -306,7 +306,7 @@ - debug_trace.c \ - debug_util.c - --ifneq (, $(filter $(OPENJDK_TARGET_OS), solaris linux aix)) -+ifneq (, $(filter $(OPENJDK_TARGET_OS), bsd solaris linux aix)) - LIBAWT_FILES += awt_LoadLibrary.c initIDs.c img_colors.c - endif - -@@ -477,6 +477,7 @@ - LDFLAGS_SUFFIX_linux := -ljvm $(LIBM) $(LIBDL) -ljava, \ - LDFLAGS_SUFFIX_solaris := -ljvm $(LIBM) $(LIBDL) -ljava -lc, \ - LDFLAGS_SUFFIX_aix :=-ljvm $(LIBM) $(LIBDL) -ljava -lm,\ -+ LDFLAGS_SUFFIX_bsd := -ljvm $(LIBM) -ljava, \ - LDFLAGS_SUFFIX_macosx := -lmlib_image -ljvm $(LIBM) \ - -framework Cocoa \ - -framework OpenGL \ -@@ -553,6 +554,16 @@ - endif - endif - -+ ifeq ($(OPENJDK_TARGET_OS), bsd) -+ ifndef OPENJDK -+ include $(JDK_TOPDIR)/make/closed/xawt.gmk -+ endif -+ -+ ifeq ($(DISABLE_XRENDER), true) -+ LIBAWT_XAWT_CFLAGS += -DDISABLE_XRENDER_BY_DEFAULT=true -+ endif -+ endif -+ - ifeq ($(MILESTONE), internal) - LIBAWT_XAWT_CFLAGS += -DINTERNAL_BUILD - endif -@@ -623,6 +634,11 @@ - LIBAWT_XAWT_LDFLAGS += -lpthread - endif - -+ ifeq ($(OPENJDK_TARGET_OS), bsd) -+ # To match old build, add this to LDFLAGS instead of suffix. -+ LIBAWT_XAWT_LDFLAGS += -pthread -+ endif -+ - $(eval $(call SetupNativeCompilation,BUILD_LIBAWT_XAWT, \ - LIBRARY := awt_xawt, \ - OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ -@@ -637,6 +653,7 @@ - $(X_LIBS) $(LIBAWT_XAWT_LDFLAGS) \ - $(call SET_SHARED_LIBRARY_ORIGIN) \ - $(call SET_SHARED_LIBRARY_ORIGIN,/..), \ -+ LDFLAGS_bsd := $(call SET_SHARED_LIBRARY_ORIGIN), \ - LDFLAGS_SUFFIX := $(LIBAWT_XAWT_LDFLAGS_SUFFIX), \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ -@@ -680,6 +697,7 @@ - LDFLAGS_SUFFIX_macosx := $(LIBM) -lawt -ljava -ljvm, \ - LDFLAGS_SUFFIX_linux := -lm -lawt -ljava -ljvm, \ - LDFLAGS_SUFFIX_aix := -lm -lawt -ljava -ljvm,\ -+ LDFLAGS_SUFFIX_bsd := -lm -lawt -ljava -ljvm, \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ - -D "JDK_FNAME=lcms.dll" \ -@@ -836,6 +854,7 @@ - LDFLAGS_SUFFIX_linux := -ljvm -lawt -lm $(LIBDL) -ljava, \ - LDFLAGS_SUFFIX_aix := -ljvm -lawt -ljava,\ - LDFLAGS_SUFFIX_solaris := $(LIBDL) -ljvm -lawt -lm -ljava $(LIBCXX) -lc, \ -+ LDFLAGS_SUFFIX_bsd := -ljvm -lawt -lm -ljava, \ - OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libawt_headless, \ - DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) - -@@ -918,6 +937,7 @@ - LDFLAGS_SUFFIX_linux := -lawt $(LIBM) $(LIBCXX) -ljava -ljvm -lc, \ - LDFLAGS_SUFFIX_solaris := -lawt -lawt_headless -lc $(LIBM) $(LIBCXX) -ljava -ljvm, \ - LDFLAGS_SUFFIX_aix := -lawt -lawt_headless $(LIBM) $(LIBCXX) -ljava -ljvm,\ -+ LDFLAGS_SUFFIX_bsd := -lawt $(LIBM) $(LIBCXX) -ljava -ljvm -lc, \ - LDFLAGS_SUFFIX_macosx := -lawt $(LIBM) $(LIBCXX) -undefined dynamic_lookup \ - -ljava -ljvm, \ - LDFLAGS_SUFFIX_windows := $(WIN_JAVA_LIB) advapi32.lib user32.lib gdi32.lib \ -@@ -1061,6 +1081,7 @@ - OPTIMIZATION := LOW, \ - CFLAGS := $(CFLAGS_JDKLIB), \ - CFLAGS_linux := $(HEADLESS_CFLAG), \ -+ CFLAGS_bsd := $(HEADLESS_CFLAG), \ - CFLAGS_macosx := -I$(JDK_TOPDIR)/src/solaris/native/sun/awt, \ - MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjawt/mapfile-vers, \ - LDFLAGS := $(LDFLAGS_JDKLIB) \ -@@ -1069,6 +1090,7 @@ - LDFLAGS_SUFFIX_linux := $(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX), \ - LDFLAGS_SUFFIX_aix := $(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX),\ - LDFLAGS_SUFFIX_solaris := $(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX) -lXrender, \ -+ LDFLAGS_SUFFIX_bsd := $(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX), \ - LDFLAGS_SUFFIX_macosx := -Xlinker -rpath -Xlinker @loader_path $(JAWT_LIBS) \ - -framework Cocoa $(LDFLAGS_JDKLIB_SUFFIX), \ - OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjawt, \ -@@ -1134,7 +1156,7 @@ - $(JDK_TOPDIR)/src/share/native/sun/awt/splashscreen - - ifeq ($(USE_EXTERNAL_LIBGIF), true) -- GIFLIB_LDFLAGS := -lgif -+ GIFLIB_LDFLAGS += -lgif - else - LIBSPLASHSCREEN_DIRS += $(JDK_TOPDIR)/src/share/native/sun/awt/giflib - GIFLIB_CFLAGS := -I$(JDK_TOPDIR)/src/share/native/sun/awt/giflib -@@ -1184,7 +1206,7 @@ - -framework JavaNativeFoundation - else ifeq ($(OPENJDK_TARGET_OS), windows) - LIBSPLASHSCREEN_LDFLAGS_SUFFIX += kernel32.lib user32.lib gdi32.lib delayimp.lib -DELAYLOAD:user32.dll -- else -+ else # .. all other Unixes can use X_LIBS - LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread - endif - ---- ./jdk/make/lib/CoreLibraries.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/lib/CoreLibraries.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -100,7 +100,7 @@ - endif - - LIBVERIFY_OPTIMIZATION := HIGH --ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), ) -+ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux bsd), ) - ifeq ($(ENABLE_DEBUG_SYMBOLS), true) - LIBVERIFY_OPTIMIZATION := LOW - endif -@@ -222,6 +222,7 @@ - LDFLAGS_SUFFIX_solaris := -lsocket -lnsl -lscf $(LIBDL) $(BUILD_LIBFDLIBM) -lc, \ - LDFLAGS_SUFFIX_linux := $(LIBDL) $(BUILD_LIBFDLIBM), \ - LDFLAGS_SUFFIX_aix := $(LIBDL) $(BUILD_LIBFDLIBM) -lm,\ -+ LDFLAGS_SUFFIX_bsd := $(BUILD_LIBFDLIBM), \ - LDFLAGS_SUFFIX_macosx := -L$(JDK_OUTPUTDIR)/objs/ -lfdlibm \ - -framework CoreFoundation \ - -framework Foundation \ -@@ -292,6 +293,7 @@ - LDFLAGS_SUFFIX_linux := -ljvm -ljava $(LIBZ), \ - LDFLAGS_SUFFIX_solaris := -ljvm -ljava $(LIBZ) -lc, \ - LDFLAGS_SUFFIX_aix := -ljvm -ljava $(LIBZ),\ -+ LDFLAGS_SUFFIX_bsd := -ljvm -ljava $(LIBZ), \ - LDFLAGS_SUFFIX_macosx := $(LIBZ) -ljava -ljvm, \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ -@@ -407,7 +409,7 @@ - # Append defines depending on target platform - LIBJLI_CFLAGS += $(OPENJDK_TARGET_CPU_JLI_CFLAGS) - --ifeq ($(OPENJDK_TARGET_OS), macosx) -+ifneq ($(findstring $(OPENJDK_TARGET_OS), bsd macosx), ) - LIBJLI_CFLAGS += -DPACKAGE_PATH=\"$(PACKAGE_PATH)\" - endif - -@@ -442,11 +444,13 @@ - $(call SET_SHARED_LIBRARY_ORIGIN), \ - LDFLAGS_linux := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \ - LDFLAGS_solaris := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \ -+ LDFLAGS_bsd := $(call SET_SHARED_LIBRARY_ORIGIN,/..), \ - LDFLAGS_macosx := -framework Cocoa -framework Security -framework ApplicationServices, \ - LDFLAGS_SUFFIX_solaris := $(LIBZ) $(LIBDL) -lc, \ - LDFLAGS_SUFFIX_linux := $(LIBZ) $(LIBDL) -lc -lpthread, \ - LDFLAGS_SUFFIX_aix := $(LIBZ) $(LIBDL),\ - LDFLAGS_SUFFIX_macosx := $(LIBZ), \ -+ LDFLAGS_SUFFIX_bsd := $(LIBZ) -pthread, \ - LDFLAGS_SUFFIX_windows := \ - -export:JLI_Launch \ - -export:JLI_ManifestIterate \ -@@ -490,9 +494,9 @@ - - BUILD_LIBRARIES += $(BUILD_LIBJLI_STATIC) - --else ifeq ($(OPENJDK_TARGET_OS), macosx) -+else ifneq ($(findstring $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx), ) - # -- # On macosx they do partial (incremental) linking of libjli_static.a -+ # On BSD they do partial (incremental) linking of libjli_static.a - # code it here...rather than add support to NativeCompilation - # as this is first time I see it - $(eval $(call SetupNativeCompilation,BUILD_LIBJLI_STATIC, \ -@@ -531,6 +535,13 @@ - - ########################################################################################## - -+ifeq ($(OPENJDK_TARGET_OS), bsd) -+ BSD_ICONV_CFLAGS:= -I$(PACKAGE_PATH)/include -+ ifneq ($(OPENJDK_TARGET_OS_VENDOR), openbsd) -+ BSD_ICONV_CFLAGS += -DLIBICONV_PLUG -+ endif -+endif -+ - $(eval $(call SetupNativeCompilation,BUILD_LIBNPT, \ - LIBRARY := npt, \ - OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ -@@ -540,9 +551,11 @@ - CFLAGS := $(CFLAGS_JDKLIB) \ - -I$(JDK_TOPDIR)/src/share/npt \ - -I$(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/npt, \ -+ CFLAGS_bsd := $(BSD_ICONV_CFLAGS), \ - MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libnpt/mapfile-vers, \ - LDFLAGS := $(LDFLAGS_JDKLIB) \ - $(call SET_SHARED_LIBRARY_ORIGIN), \ -+ LDFLAGS_bsd := -L$(PACKAGE_PATH)/lib -liconv, \ - LDFLAGS_macosx := -liconv, \ - LDFLAGS_SUFFIX_windows := -export:nptInitialize -export:nptTerminate, \ - LDFLAGS_SUFFIX_solaris := -lc, \ ---- ./jdk/make/lib/NetworkingLibraries.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/lib/NetworkingLibraries.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -42,7 +42,7 @@ - LIBNET_EXCLUDE_FILES += linux_close.c - endif - --ifneq ($(OPENJDK_TARGET_OS), macosx) -+ifeq (,$(findstring $(OPENJDK_TARGET_OS), bsd macosx)) - LIBNET_EXCLUDE_FILES += bsd_close.c - endif - -@@ -58,6 +58,10 @@ - NTLMAuthSequence.c NetworkInterface_winXP.c - endif - -+ifneq ($(DONT_ENABLE_IPV6),) -+ LIBNET_CFLAGS += -DDONT_ENABLE_IPV6 -+endif -+ - $(eval $(call SetupNativeCompilation,BUILD_LIBNET, \ - LIBRARY := net, \ - OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ -@@ -74,6 +78,7 @@ - LDFLAGS_SUFFIX_solaris := -ljvm -ljava -lnsl -lsocket $(LIBDL) -lc, \ - LDFLAGS_SUFFIX_linux := $(LIBDL) -ljvm -lpthread -ljava, \ - LDFLAGS_SUFFIX_aix := $(LIBDL) -ljvm -ljava,\ -+ LDFLAGS_SUFFIX_bsd := -ljvm -pthread -ljava, \ - LDFLAGS_SUFFIX_windows := ws2_32.lib jvm.lib secur32.lib iphlpapi.lib \ - delayimp.lib urlmon.lib $(WIN_JAVA_LIB) advapi32.lib \ - -DELAYLOAD:secur32.dll -DELAYLOAD:iphlpapi.dll, \ ---- ./jdk/make/lib/NioLibraries.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/lib/NioLibraries.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -77,9 +77,28 @@ - UnixNativeDispatcher.c - endif - -+ifeq ($(OPENJDK_TARGET_OS), bsd) -+ BUILD_LIBNIO_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libnio/mapfile-$(OPENJDK_TARGET_OS) -+ BUILD_LIBNIO_SRC += $(JDK_TOPDIR)/src/bsd/native/sun/nio/ch -+ BUILD_LIBNIO_FILES += \ -+ BsdNativeDispatcher.c \ -+ GnomeFileTypeDetector.c \ -+ InheritedChannel.c \ -+ KQueue.c \ -+ KQueueArrayWrapper.c \ -+ KQueuePort.c \ -+ MagicFileTypeDetector.c \ -+ NativeThread.c \ -+ PollArrayWrapper.c \ -+ UnixAsynchronousServerSocketChannelImpl.c \ -+ UnixAsynchronousSocketChannelImpl.c \ -+ UnixCopyFile.c \ -+ UnixNativeDispatcher.c -+endif -+ - ifeq ($(OPENJDK_TARGET_OS), macosx) - BUILD_LIBNIO_MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libnio/mapfile-$(OPENJDK_TARGET_OS) -- BUILD_LIBNIO_SRC += $(JDK_TOPDIR)/src/macosx/native/sun/nio/ch -+ BUILD_LIBNIO_SRC += $(JDK_TOPDIR)/src/bsd/native/sun/nio/ch - BUILD_LIBNIO_FILES += \ - InheritedChannel.c \ - NativeThread.c \ -@@ -149,6 +168,7 @@ - LDFLAGS_SUFFIX_windows := jvm.lib ws2_32.lib $(WIN_JAVA_LIB) \ - $(JDK_OUTPUTDIR)/objs/libnet/net.lib \ - advapi32.lib, \ -+ LDFLAGS_SUFFIX_bsd := -ljava -lnet -pthread, \ - LDFLAGS_SUFFIX_macosx := -ljava -lnet -pthread -framework CoreFoundation, \ - LDFLAGS_SUFFIX :=, \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ -@@ -168,6 +188,7 @@ - ifeq ($(OPENJDK_TARGET_OS_API), posix) - - ifeq (, $(filter $(OPENJDK_TARGET_OS), macosx aix)) -+ ifeq (, $(filter $(OPENJDK_TARGET_OS_VENDOR), netbsd openbsd)) - - # Suppress unused parameters required by exported JNI functions. - SCTP_WERROR := -Werror -Wno-error=unused-parameter -@@ -194,6 +215,7 @@ - LDFLAGS_SUFFIX_linux := -lpthread $(LIBDL) -ljava -ljvm, \ - LDFLAGS_SUFFIX_posix := -lnio -lnet, \ - LDFLAGS_SUFFIX_solaris := -lsocket -ljava -ljvm -lc, \ -+ LDFLAGS_SUFFIX_bsd := -pthread -ljava -ljvm, \ - LDFLAGS_SUFFIX_macosx := -ljava -ljvm, \ - OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libsctp, \ - DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) -@@ -202,4 +224,5 @@ - - $(BUILD_LIBSCTP): $(BUILD_LIBNIO) - endif -+ endif - endif ---- ./jdk/make/lib/ServiceabilityLibraries.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/lib/ServiceabilityLibraries.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -34,7 +34,7 @@ - ifneq ($(OPENJDK_TARGET_OS), linux) - LIBATTACH_EXCLUDE_FILES += LinuxVirtualMachine.c - endif --ifneq ($(OPENJDK_TARGET_OS), macosx) -+ifeq (,$(findstring $(OPENJDK_TARGET_OS), bsd macosx)) - LIBATTACH_EXCLUDE_FILES += BsdVirtualMachine.c - endif - ifneq ($(OPENJDK_TARGET_OS),aix) -@@ -94,6 +94,7 @@ - $(call SET_SHARED_LIBRARY_ORIGIN), \ - LDFLAGS_SUFFIX_linux := -lpthread, \ - LDFLAGS_SUFFIX_solaris := -lnsl -lsocket -lc, \ -+ LDFLAGS_SUFFIX_bsd := -pthread, \ - LDFLAGS_SUFFIX_windows := $(LDFLAGS_JDKLIB_SUFFIX) -export:jdwpTransport_OnLoad ws2_32.lib, \ - VERSIONINFO_RESOURCE := $(JDK_TOPDIR)/src/windows/resource/version.rc, \ - RC_FLAGS := $(RC_FLAGS) \ -@@ -245,6 +246,21 @@ - LIBINSTRUMENT_CFLAGS += -Dstrcasecmp=stricmp - endif - -+ifeq ($(OPENJDK_TARGET_OS), bsd) -+ LIBINSTRUMENT_LDFLAGS_SUFFIX += -L$(PACKAGE_PATH)/lib -liconv $(LIBZ) -+ ifeq ($(BSD_STATIC_LIBJLI), bsd) -+ LIBINSTRUMENT_LDFLAGS += -Xlinker --whole-archive $(JDK_OUTPUTDIR)/objs/libjli_static.a \ -+ -Xlinker --no-whole-archive -+ else -+ LIBINSTRUMENT_LDFLAGS += $(call SET_SHARED_LIBRARY_ORIGIN,/jli) -+ LIBINSTRUMENT_LDFLAGS_SUFFIX += -L$(INSTALL_LIBRARIES_HERE)/jli -ljli -+ endif -+ BSD_ICONV_CFLAGS:= -I$(PACKAGE_PATH)/include -+ ifneq ($(OPENJDK_TARGET_OS_VENDOR), openbsd) -+ BSD_ICONV_CFLAGS += -DLIBICONV_PLUG -+ endif -+endif -+ - $(eval $(call SetupNativeCompilation,BUILD_LIBINSTRUMENT, \ - LIBRARY := instrument, \ - OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \ -@@ -255,6 +271,7 @@ - CFLAGS := $(LIBINSTRUMENT_CFLAGS), \ - CFLAGS_debug := -DJPLIS_LOGGING, \ - CFLAGS_release := -DNO_JPLIS_LOGGING, \ -+ CFLAGS_bsd := $(BSD_ICONV_CFLAGS), \ - MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libinstrument/mapfile-vers, \ - LDFLAGS := $(LDFLAGS_JDKLIB) \ - $(call SET_SHARED_LIBRARY_ORIGIN) \ -@@ -276,7 +293,7 @@ - OBJECT_DIR := $(LIBINSTRUMENT_DIR), \ - DEBUG_SYMBOLS := true)) - --ifneq (, $(findstring $(OPENJDK_TARGET_OS), macosx windows aix)) -+ifneq (, $(findstring $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx windows aix)) - $(BUILD_LIBINSTRUMENT): $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX) - else - $(BUILD_LIBINSTRUMENT): $(INSTALL_LIBRARIES_HERE)/jli/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX) -@@ -306,12 +323,16 @@ - BUILD_LIBMANAGEMENT_EXCLUDES += LinuxOperatingSystem.c - endif - -+ifneq ($(OPENJDK_TARGET_OS), bsd) -+ BUILD_LIBMANAGEMENT_EXCLUDES += BsdOperatingSystem.c -+endif -+ - ifneq ($(OPENJDK_TARGET_OS), macosx) - BUILD_LIBMANAGEMENT_EXCLUDES += MacosxOperatingSystem.c - endif - - LIBMANAGEMENT_OPTIMIZATION := HIGH --ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), ) -+ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux bsd), ) - ifeq ($(ENABLE_DEBUG_SYMBOLS), true) - LIBMANAGEMENT_OPTIMIZATION := LOW - endif -@@ -363,7 +384,7 @@ - BUILD_LIBHPROF_LDFLAGS := - - LIBHPROF_OPTIMIZATION := HIGHEST --ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), ) -+ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux bsd), ) - ifeq ($(ENABLE_DEBUG_SYMBOLS), true) - LIBHPROF_OPTIMIZATION := LOW - endif ---- ./jdk/make/lib/SoundLibraries.gmk Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/lib/SoundLibraries.gmk Sun Feb 10 09:27:00 2019 -0800 -@@ -75,6 +75,13 @@ - LIBJSOUND_CFLAGS += -DX_PLATFORM=X_AIX - endif # OPENJDK_TARGET_OS aix - -+ifeq ($(OPENJDK_TARGET_OS), bsd) -+ ifneq ($(OPENJDK_TARGET_OS_VENDOR), openbsd) -+ EXTRA_SOUND_JNI_LIBS += jsoundalsa -+ endif # OPENJDK_TARGET_OS_VENDOR openbsd -+ LIBJSOUND_CFLAGS += -DX_PLATFORM=X_BSD -+endif # OPENJDK_TARGET_OS bsd -+ - ifeq ($(OPENJDK_TARGET_OS), macosx) - LIBJSOUND_LANG := C++ - LIBJSOUND_CFLAGS += -DX_PLATFORM=X_MACOSX \ -@@ -200,12 +207,14 @@ - CFLAGS := $(CFLAGS_JDKLIB) $(ALSA_CFLAGS) \ - $(LIBJSOUND_CFLAGS) \ - -DUSE_DAUDIO=TRUE \ -- -DUSE_PORTS=TRUE \ -- -DUSE_PLATFORM_MIDI_OUT=TRUE \ -+ -DUSE_PORTS=TRUE, \ -+ CFLAGS_linux := -DUSE_PLATFORM_MIDI_OUT=TRUE \ - -DUSE_PLATFORM_MIDI_IN=TRUE, \ -+ CFLAGS_bsd := -I$(PACKAGE_PATH)/include, \ - MAPFILE := $(JDK_TOPDIR)/make/mapfiles/libjsoundalsa/mapfile-vers, \ - LDFLAGS := $(LDFLAGS_JDKLIB) \ - $(call SET_SHARED_LIBRARY_ORIGIN), \ -+ LDFLAGS_bsd := -L$(PACKAGE_PATH)/lib, \ - LDFLAGS_SUFFIX := $(ALSA_LIBS) -ljava -ljvm, \ - OBJECT_DIR := $(JDK_OUTPUTDIR)/objs/libjsoundalsa, \ - DEBUG_SYMBOLS := $(DEBUG_ALL_BINARIES))) ---- ./jdk/make/mapfiles/launchers/mapfile-ppc64 Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/mapfiles/launchers/mapfile-ppc64 Sun Feb 10 09:27:00 2019 -0800 -@@ -33,6 +33,7 @@ - environ; # Public symbols and required by Java run time - _environ; - __environ_lock; -+ __progname; - - local: - *; ---- ./jdk/make/mapfiles/launchers/mapfile-x86 Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/mapfiles/launchers/mapfile-x86 Sun Feb 10 09:27:00 2019 -0800 -@@ -33,6 +33,7 @@ - environ; # Public symbols and required by Java run time - _environ; - __environ_lock; -+ __progname; - ___Argv; # The following are private, but as they are - _start; # exported from ctr1/crtn, the clever hacker - _init; # might know about them. However note, that ---- ./jdk/make/mapfiles/launchers/mapfile-x86_64 Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/mapfiles/launchers/mapfile-x86_64 Sun Feb 10 09:27:00 2019 -0800 -@@ -33,6 +33,7 @@ - environ; # Public symbols and required by Java run time - _environ; - __environ_lock; -+ __progname; - - local: - *; ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/make/mapfiles/libattach/mapfile-bsd Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,42 @@ -+# -+# Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. -+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+# -+# This code is free software; you can redistribute it and/or modify it -+# under the terms of the GNU General Public License version 2 only, as -+# published by the Free Software Foundation. Oracle designates this -+# particular file as subject to the "Classpath" exception as provided -+# by Oracle in the LICENSE file that accompanied this code. -+# -+# This code is distributed in the hope that it will be useful, but WITHOUT -+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+# version 2 for more details (a copy is included in the LICENSE file that -+# accompanied this code). -+# -+# You should have received a copy of the GNU General Public License version -+# 2 along with this work; if not, write to the Free Software Foundation, -+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+# -+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+# or visit www.oracle.com if you need additional information or have any -+# questions. -+# -+ -+# Define public interface. -+ -+SUNWprivate_1.1 { -+ global: -+ Java_sun_tools_attach_BsdVirtualMachine_checkPermissions; -+ Java_sun_tools_attach_BsdVirtualMachine_close; -+ Java_sun_tools_attach_BsdVirtualMachine_connect; -+ Java_sun_tools_attach_BsdVirtualMachine_getTempDir; -+ Java_sun_tools_attach_BsdVirtualMachine_open; -+ Java_sun_tools_attach_BsdVirtualMachine_sendQuitTo; -+ Java_sun_tools_attach_BsdVirtualMachine_socket; -+ Java_sun_tools_attach_BsdVirtualMachine_read; -+ Java_sun_tools_attach_BsdVirtualMachine_write; -+ Java_sun_tools_attach_BsdVirtualMachine_createAttachFile; -+ local: -+ *; -+}; ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/make/mapfiles/libnio/mapfile-bsd Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,195 @@ -+# -+# Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved. -+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+# -+# This code is free software; you can redistribute it and/or modify it -+# under the terms of the GNU General Public License version 2 only, as -+# published by the Free Software Foundation. Oracle designates this -+# particular file as subject to the "Classpath" exception as provided -+# by Oracle in the LICENSE file that accompanied this code. -+# -+# This code is distributed in the hope that it will be useful, but WITHOUT -+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+# version 2 for more details (a copy is included in the LICENSE file that -+# accompanied this code). -+# -+# You should have received a copy of the GNU General Public License version -+# 2 along with this work; if not, write to the Free Software Foundation, -+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+# -+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+# or visit www.oracle.com if you need additional information or have any -+# questions. -+# -+ -+SUNWprivate_1.1 { -+ global: -+ Java_java_nio_MappedByteBuffer_force0; -+ Java_java_nio_MappedByteBuffer_isLoaded0; -+ Java_java_nio_MappedByteBuffer_load0; -+ Java_sun_nio_ch_DatagramChannelImpl_disconnect0; -+ Java_sun_nio_ch_DatagramChannelImpl_initIDs; -+ Java_sun_nio_ch_DatagramChannelImpl_receive0; -+ Java_sun_nio_ch_DatagramChannelImpl_send0; -+ Java_sun_nio_ch_DatagramDispatcher_read0; -+ Java_sun_nio_ch_DatagramDispatcher_readv0; -+ Java_sun_nio_ch_DatagramDispatcher_write0; -+ Java_sun_nio_ch_DatagramDispatcher_writev0; -+ Java_sun_nio_ch_FileChannelImpl_close0; -+ Java_sun_nio_ch_FileChannelImpl_initIDs; -+ Java_sun_nio_ch_FileChannelImpl_map0; -+ Java_sun_nio_ch_FileChannelImpl_transferTo0; -+ Java_sun_nio_ch_FileChannelImpl_unmap0; -+ Java_sun_nio_ch_FileDispatcherImpl_close0; -+ Java_sun_nio_ch_FileDispatcherImpl_closeIntFD; -+ Java_sun_nio_ch_FileDispatcherImpl_seek0; -+ Java_sun_nio_ch_FileDispatcherImpl_force0; -+ Java_sun_nio_ch_FileDispatcherImpl_init; -+ Java_sun_nio_ch_FileDispatcherImpl_lock0; -+ Java_sun_nio_ch_FileDispatcherImpl_preClose0; -+ Java_sun_nio_ch_FileDispatcherImpl_pread0; -+ Java_sun_nio_ch_FileDispatcherImpl_pwrite0; -+ Java_sun_nio_ch_FileDispatcherImpl_read0; -+ Java_sun_nio_ch_FileDispatcherImpl_readv0; -+ Java_sun_nio_ch_FileDispatcherImpl_release0; -+ Java_sun_nio_ch_FileDispatcherImpl_size0; -+ Java_sun_nio_ch_FileDispatcherImpl_truncate0; -+ Java_sun_nio_ch_FileDispatcherImpl_write0; -+ Java_sun_nio_ch_FileDispatcherImpl_writev0; -+ Java_sun_nio_ch_FileKey_init; -+ Java_sun_nio_ch_FileKey_initIDs; -+ Java_sun_nio_ch_IOUtil_configureBlocking; -+ Java_sun_nio_ch_IOUtil_drain; -+ Java_sun_nio_ch_IOUtil_fdLimit; -+ Java_sun_nio_ch_IOUtil_fdVal; -+ Java_sun_nio_ch_IOUtil_initIDs; -+ Java_sun_nio_ch_IOUtil_iovMax; -+ Java_sun_nio_ch_IOUtil_makePipe; -+ Java_sun_nio_ch_IOUtil_randomBytes; -+ Java_sun_nio_ch_IOUtil_setfdVal; -+ Java_sun_nio_ch_InheritedChannel_close0; -+ Java_sun_nio_ch_InheritedChannel_dup2; -+ Java_sun_nio_ch_InheritedChannel_dup; -+ Java_sun_nio_ch_InheritedChannel_open0; -+ Java_sun_nio_ch_InheritedChannel_peerAddress0; -+ Java_sun_nio_ch_InheritedChannel_peerPort0; -+ Java_sun_nio_ch_InheritedChannel_soType0; -+ Java_sun_nio_ch_KQueueArrayWrapper_init; -+ Java_sun_nio_ch_KQueueArrayWrapper_initStructSizes; -+ Java_sun_nio_ch_KQueueArrayWrapper_interrupt; -+ Java_sun_nio_ch_KQueueArrayWrapper_kevent0; -+ Java_sun_nio_ch_KQueueArrayWrapper_register0; -+ Java_sun_nio_ch_KQueuePort_close0; -+ Java_sun_nio_ch_KQueuePort_drain1; -+ Java_sun_nio_ch_KQueuePort_interrupt; -+ Java_sun_nio_ch_KQueuePort_socketpair; -+ Java_sun_nio_ch_KQueue_filterOffset; -+ Java_sun_nio_ch_KQueue_flagsOffset; -+ Java_sun_nio_ch_KQueue_identOffset; -+ Java_sun_nio_ch_KQueue_keventPoll; -+ Java_sun_nio_ch_KQueue_keventRegister; -+ Java_sun_nio_ch_KQueue_keventSize; -+ Java_sun_nio_ch_KQueue_kqueue; -+ Java_sun_nio_ch_NativeThread_current; -+ Java_sun_nio_ch_NativeThread_init; -+ Java_sun_nio_ch_NativeThread_signal; -+ Java_sun_nio_ch_Net_bind0; -+ Java_sun_nio_ch_Net_blockOrUnblock4; -+ Java_sun_nio_ch_Net_blockOrUnblock6; -+ Java_sun_nio_ch_Net_canIPv6SocketJoinIPv4Group0; -+ Java_sun_nio_ch_Net_canJoin6WithIPv4Group0; -+ Java_sun_nio_ch_Net_connect0; -+ Java_sun_nio_ch_Net_getIntOption0; -+ Java_sun_nio_ch_Net_getInterface4; -+ Java_sun_nio_ch_Net_getInterface6; -+ Java_sun_nio_ch_Net_initIDs; -+ Java_sun_nio_ch_Net_isExclusiveBindAvailable; -+ Java_sun_nio_ch_Net_isIPv6Available0; -+ Java_sun_nio_ch_Net_joinOrDrop4; -+ Java_sun_nio_ch_Net_joinOrDrop6; -+ Java_sun_nio_ch_Net_listen; -+ Java_sun_nio_ch_Net_localInetAddress; -+ Java_sun_nio_ch_Net_localPort; -+ Java_sun_nio_ch_Net_poll; -+ Java_sun_nio_ch_Net_pollconnValue; -+ Java_sun_nio_ch_Net_pollerrValue; -+ Java_sun_nio_ch_Net_pollhupValue; -+ Java_sun_nio_ch_Net_pollinValue; -+ Java_sun_nio_ch_Net_pollnvalValue; -+ Java_sun_nio_ch_Net_polloutValue; -+ Java_sun_nio_ch_Net_setIntOption0; -+ Java_sun_nio_ch_Net_setInterface4; -+ Java_sun_nio_ch_Net_setInterface6; -+ Java_sun_nio_ch_Net_shutdown; -+ Java_sun_nio_ch_Net_socket0; -+ Java_sun_nio_ch_PollArrayWrapper_interrupt; -+ Java_sun_nio_ch_PollArrayWrapper_poll0; -+ Java_sun_nio_ch_ServerSocketChannelImpl_accept0; -+ Java_sun_nio_ch_ServerSocketChannelImpl_initIDs; -+ Java_sun_nio_ch_SocketChannelImpl_checkConnect; -+ Java_sun_nio_ch_SocketChannelImpl_sendOutOfBandData; -+ Java_sun_nio_ch_UnixAsynchronousServerSocketChannelImpl_accept0; -+ Java_sun_nio_ch_UnixAsynchronousServerSocketChannelImpl_initIDs; -+ Java_sun_nio_ch_UnixAsynchronousSocketChannelImpl_checkConnect; -+ Java_sun_nio_fs_BsdNativeDispatcher_endfsstat; -+ Java_sun_nio_fs_BsdNativeDispatcher_fsstatEntry; -+ Java_sun_nio_fs_BsdNativeDispatcher_getfsstat; -+ Java_sun_nio_fs_BsdNativeDispatcher_initIDs; -+ Java_sun_nio_fs_GnomeFileTypeDetector_initializeGio; -+ Java_sun_nio_fs_GnomeFileTypeDetector_initializeGnomeVfs; -+ Java_sun_nio_fs_GnomeFileTypeDetector_probeUsingGio; -+ Java_sun_nio_fs_GnomeFileTypeDetector_probeUsingGnomeVfs; -+ Java_sun_nio_fs_MagicFileTypeDetector_initialize0; -+ Java_sun_nio_fs_MagicFileTypeDetector_probe0; -+ Java_sun_nio_fs_UnixCopyFile_transfer; -+ Java_sun_nio_fs_UnixNativeDispatcher_access0; -+ Java_sun_nio_fs_UnixNativeDispatcher_chmod0; -+ Java_sun_nio_fs_UnixNativeDispatcher_chown0; -+ Java_sun_nio_fs_UnixNativeDispatcher_close; -+ Java_sun_nio_fs_UnixNativeDispatcher_closedir; -+ Java_sun_nio_fs_UnixNativeDispatcher_dup; -+ Java_sun_nio_fs_UnixNativeDispatcher_fchmod; -+ Java_sun_nio_fs_UnixNativeDispatcher_fchown; -+ Java_sun_nio_fs_UnixNativeDispatcher_fclose; -+ Java_sun_nio_fs_UnixNativeDispatcher_fdopendir; -+ Java_sun_nio_fs_UnixNativeDispatcher_fopen0; -+ Java_sun_nio_fs_UnixNativeDispatcher_fpathconf; -+ Java_sun_nio_fs_UnixNativeDispatcher_fstat; -+ Java_sun_nio_fs_UnixNativeDispatcher_fstatat0; -+ Java_sun_nio_fs_UnixNativeDispatcher_futimes; -+ Java_sun_nio_fs_UnixNativeDispatcher_getcwd; -+ Java_sun_nio_fs_UnixNativeDispatcher_getgrgid; -+ Java_sun_nio_fs_UnixNativeDispatcher_getgrnam0; -+ Java_sun_nio_fs_UnixNativeDispatcher_getpwnam0; -+ Java_sun_nio_fs_UnixNativeDispatcher_getpwuid; -+ Java_sun_nio_fs_UnixNativeDispatcher_init; -+ Java_sun_nio_fs_UnixNativeDispatcher_lchown0; -+ Java_sun_nio_fs_UnixNativeDispatcher_link0; -+ Java_sun_nio_fs_UnixNativeDispatcher_lstat0; -+ Java_sun_nio_fs_UnixNativeDispatcher_mkdir0; -+ Java_sun_nio_fs_UnixNativeDispatcher_mknod0; -+ Java_sun_nio_fs_UnixNativeDispatcher_open0; -+ Java_sun_nio_fs_UnixNativeDispatcher_openat0; -+ Java_sun_nio_fs_UnixNativeDispatcher_opendir0; -+ Java_sun_nio_fs_UnixNativeDispatcher_pathconf0; -+ Java_sun_nio_fs_UnixNativeDispatcher_read; -+ Java_sun_nio_fs_UnixNativeDispatcher_readdir; -+ Java_sun_nio_fs_UnixNativeDispatcher_readlink0; -+ Java_sun_nio_fs_UnixNativeDispatcher_realpath0; -+ Java_sun_nio_fs_UnixNativeDispatcher_rename0; -+ Java_sun_nio_fs_UnixNativeDispatcher_renameat0; -+ Java_sun_nio_fs_UnixNativeDispatcher_rmdir0; -+ Java_sun_nio_fs_UnixNativeDispatcher_stat0; -+ Java_sun_nio_fs_UnixNativeDispatcher_statvfs0; -+ Java_sun_nio_fs_UnixNativeDispatcher_strerror; -+ Java_sun_nio_fs_UnixNativeDispatcher_symlink0; -+ Java_sun_nio_fs_UnixNativeDispatcher_unlink0; -+ Java_sun_nio_fs_UnixNativeDispatcher_unlinkat0; -+ Java_sun_nio_fs_UnixNativeDispatcher_utimes0; -+ Java_sun_nio_fs_UnixNativeDispatcher_write; -+ handleSocketError; -+ -+ local: -+ *; -+}; ---- ./jdk/make/mapfiles/libunpack/mapfile-vers-unpack200 Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/mapfiles/libunpack/mapfile-vers-unpack200 Sun Feb 10 09:27:00 2019 -0800 -@@ -26,6 +26,9 @@ - # Define library interface. - - SUNWprivate_1.1 { -+ global: -+ environ; -+ __progname; - local: - *; - }; ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/make/netbeans/common/bsd-sources.ent Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,45 @@ -+ -+ -+ -+ -+ -+ -+ java -+ ${root}/src/bsd/classes -+ ${includes} -+ ${excludes} -+ US-ASCII -+ -+ -+ -+ ${root}/src/bsd/classes -+ ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/make/netbeans/common/bsd-view.ent Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,39 @@ -+ -+ -+ -+ -+ -+ -+ ${root}/src/bsd/classes -+ ${includes} -+ ${excludes} -+ ---- ./jdk/make/netbeans/common/java-data-native.ent Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/netbeans/common/java-data-native.ent Sun Feb 10 09:27:00 2019 -0800 -@@ -34,6 +34,7 @@ - - - ${root}/src/share/classes -+ ${root}/src/bsd/classes - ${root}/src/macosx/classes - ${root}/src/solaris/classes - ${root}/src/windows/classes ---- ./jdk/make/netbeans/common/make.xml Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/netbeans/common/make.xml Sun Feb 10 09:27:00 2019 -0800 -@@ -32,16 +32,21 @@ - --> - - -- -- -+ -+ - - -- -+ - - - - - -+ -+ -+ -+ -+ - - - -@@ -56,7 +61,7 @@ - - - -- -+ - - - ---- ./jdk/make/netbeans/j2se/nbproject/project.xml Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/netbeans/j2se/nbproject/project.xml Sun Feb 10 09:27:00 2019 -0800 -@@ -34,6 +34,7 @@ - - -+ - - - -@@ -41,6 +42,7 @@ - - - -+ - - - -@@ -60,6 +62,7 @@ - - - &share-sources; -+ &bsd-sources; - &macosx-sources; - &unix-sources; - &windows-sources; -@@ -86,6 +89,7 @@ - - - &share-view; -+ &bsd-view; - &macosx-view; - &unix-view; - &windows-view; ---- ./jdk/make/netbeans/world/nbproject/project.xml Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/make/netbeans/world/nbproject/project.xml Sun Feb 10 09:27:00 2019 -0800 -@@ -34,12 +34,14 @@ - - -+ - - - - - - -+ - - - -@@ -58,6 +60,7 @@ - - - &share-sources; -+ &bsd-sources; - &macosx-sources; - &unix-sources; - &windows-sources; -@@ -69,6 +72,7 @@ - - - &share-view; -+ &bsd-view; - &macosx-view; - &unix-view; - &windows-view; ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/src/bsd/classes/java/net/DefaultInterface.java Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,97 @@ -+/* -+ * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+package java.net; -+ -+/** -+ * Choose a network interface to be the default for -+ * outgoing IPv6 traffic that does not specify a scope_id (and which needs one). -+ * We choose the first interface that is up and is (in order of preference): -+ * 1. neither loopback nor point to point -+ * 2. point to point -+ * 3. loopback -+ * 4. none. -+ * Platforms that do not require a default interface implement a dummy -+ * that returns null. -+ */ -+ -+import java.util.Enumeration; -+import java.io.IOException; -+ -+class DefaultInterface { -+ -+ private final static NetworkInterface defaultInterface = -+ chooseDefaultInterface(); -+ -+ static NetworkInterface getDefault() { -+ return defaultInterface; -+ } -+ -+ /** -+ * Choose a default interface. This method returns an interface that is -+ * both "up" and supports multicast. This method choses an interface in -+ * order of preference: -+ * 1. neither loopback nor point to point -+ * 2. point to point -+ * 3. loopback -+ * -+ * @return the chosen interface or {@code null} if there isn't a suitable -+ * default -+ */ -+ private static NetworkInterface chooseDefaultInterface() { -+ Enumeration nifs; -+ -+ try { -+ nifs = NetworkInterface.getNetworkInterfaces(); -+ } catch (IOException ignore) { -+ // unable to enumate network interfaces -+ return null; -+ } -+ -+ NetworkInterface ppp = null; -+ NetworkInterface loopback = null; -+ -+ while (nifs.hasMoreElements()) { -+ NetworkInterface ni = nifs.nextElement(); -+ try { -+ if (ni.isUp() && ni.supportsMulticast()) { -+ boolean isLoopback = ni.isLoopback(); -+ boolean isPPP = ni.isPointToPoint(); -+ if (!isLoopback && !isPPP) { -+ // found an interface that is not the loopback or a -+ // point-to-point interface -+ return ni; -+ } -+ if (ppp == null && isPPP) -+ ppp = ni; -+ if (loopback == null && isLoopback) -+ loopback = ni; -+ } -+ } catch (IOException skip) { } -+ } -+ -+ return (ppp != null) ? ppp : loopback; -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/src/bsd/classes/sun/nio/ch/DefaultSelectorProvider.java Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,48 @@ -+/* -+ * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+package sun.nio.ch; -+ -+import java.nio.channels.spi.SelectorProvider; -+ -+/** -+ * Creates this platform's default SelectorProvider -+ */ -+ -+public class DefaultSelectorProvider { -+ -+ /** -+ * Prevent instantiation. -+ */ -+ private DefaultSelectorProvider() { } -+ -+ /** -+ * Returns the default SelectorProvider. -+ */ -+ public static SelectorProvider create() { -+ return new sun.nio.ch.KQueueSelectorProvider(); -+ } -+ -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/src/bsd/classes/sun/nio/ch/KQueueArrayWrapper.java Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,213 @@ -+/* -+ * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+/* -+ * KQueueArrayWrapper.java -+ * Implementation of Selector using FreeBSD / Mac OS X kqueues -+ * Derived from Sun's DevPollArrayWrapper -+ */ -+ -+package sun.nio.ch; -+ -+import sun.misc.*; -+import java.io.IOException; -+import java.io.FileDescriptor; -+import java.util.Iterator; -+import java.util.LinkedList; -+ -+/* -+ * struct kevent { // 32-bit 64-bit -+ * uintptr_t ident; // 4 8 -+ * short filter; // 2 2 -+ * u_short flags; // 2 2 -+ * u_int fflags; // 4 4 -+ * intptr_t data; // 4 8 -+ * void *udata; // 4 8 -+ * } // Total: 20 32 -+ * -+ * The implementation works in 32-bit and 64-bit world. We do this by calling a -+ * native function that actually sets the sizes and offsets of the fields based -+ * on which mode we're in. -+ */ -+ -+class KQueueArrayWrapper { -+ // kevent filters -+ static short EVFILT_READ; -+ static short EVFILT_WRITE; -+ -+ // kevent struct -+ // These fields are now set by initStructSizes in the static initializer. -+ static short SIZEOF_KEVENT; -+ static short FD_OFFSET; -+ static short FILTER_OFFSET; -+ -+ // kevent array size -+ static final int NUM_KEVENTS = 128; -+ -+ // Are we in a 64-bit VM? -+ static boolean is64bit = false; -+ -+ // The kevent array (used for outcoming events only) -+ private AllocatedNativeObject keventArray = null; -+ private long keventArrayAddress; -+ -+ // The kqueue fd -+ private int kq = -1; -+ -+ // The fd of the interrupt line going out -+ private int outgoingInterruptFD; -+ -+ // The fd of the interrupt line coming in -+ private int incomingInterruptFD; -+ -+ static { -+ IOUtil.load(); -+ initStructSizes(); -+ String datamodel = java.security.AccessController.doPrivileged( -+ new sun.security.action.GetPropertyAction("sun.arch.data.model") -+ ); -+ is64bit = datamodel.equals("64"); -+ } -+ -+ KQueueArrayWrapper() { -+ int allocationSize = SIZEOF_KEVENT * NUM_KEVENTS; -+ keventArray = new AllocatedNativeObject(allocationSize, true); -+ keventArrayAddress = keventArray.address(); -+ kq = init(); -+ } -+ -+ // Used to update file description registrations -+ private static class Update { -+ SelChImpl channel; -+ int events; -+ Update(SelChImpl channel, int events) { -+ this.channel = channel; -+ this.events = events; -+ } -+ } -+ -+ private LinkedList updateList = new LinkedList(); -+ -+ void initInterrupt(int fd0, int fd1) { -+ outgoingInterruptFD = fd1; -+ incomingInterruptFD = fd0; -+ register0(kq, fd0, 1, 0); -+ } -+ -+ int getReventOps(int index) { -+ int result = 0; -+ int offset = SIZEOF_KEVENT*index + FILTER_OFFSET; -+ short filter = keventArray.getShort(offset); -+ -+ // This is all that's necessary based on inspection of usage: -+ // SinkChannelImpl, SourceChannelImpl, DatagramChannelImpl, -+ // ServerSocketChannelImpl, SocketChannelImpl -+ if (filter == EVFILT_READ) { -+ result |= Net.POLLIN; -+ } else if (filter == EVFILT_WRITE) { -+ result |= Net.POLLOUT; -+ } -+ -+ return result; -+ } -+ -+ int getDescriptor(int index) { -+ int offset = SIZEOF_KEVENT*index + FD_OFFSET; -+ /* The ident field is 8 bytes in 64-bit world, however the API wants us -+ * to return an int. Hence read the 8 bytes but return as an int. -+ */ -+ if (is64bit) { -+ long fd = keventArray.getLong(offset); -+ assert fd <= Integer.MAX_VALUE; -+ return (int) fd; -+ } else { -+ return keventArray.getInt(offset); -+ } -+ } -+ -+ void setInterest(SelChImpl channel, int events) { -+ synchronized (updateList) { -+ // update existing registration -+ updateList.add(new Update(channel, events)); -+ } -+ } -+ -+ void release(SelChImpl channel) { -+ synchronized (updateList) { -+ // flush any pending updates -+ for (Iterator it = updateList.iterator(); it.hasNext();) { -+ if (it.next().channel == channel) { -+ it.remove(); -+ } -+ } -+ -+ // remove -+ register0(kq, channel.getFDVal(), 0, 0); -+ } -+ } -+ -+ void updateRegistrations() { -+ synchronized (updateList) { -+ Update u = null; -+ while ((u = updateList.poll()) != null) { -+ SelChImpl ch = u.channel; -+ if (!ch.isOpen()) -+ continue; -+ -+ register0(kq, ch.getFDVal(), u.events & Net.POLLIN, u.events & Net.POLLOUT); -+ } -+ } -+ } -+ -+ -+ void close() throws IOException { -+ if (keventArray != null) { -+ keventArray.free(); -+ keventArray = null; -+ } -+ if (kq >= 0) { -+ FileDispatcherImpl.closeIntFD(kq); -+ kq = -1; -+ } -+ } -+ -+ int poll(long timeout) { -+ updateRegistrations(); -+ int updated = kevent0(kq, keventArrayAddress, NUM_KEVENTS, timeout); -+ return updated; -+ } -+ -+ void interrupt() { -+ interrupt(outgoingInterruptFD); -+ } -+ -+ private native int init(); -+ private static native void initStructSizes(); -+ -+ private native void register0(int kq, int fd, int read, int write); -+ private native int kevent0(int kq, long keventAddress, int keventCount, -+ long timeout); -+ private static native void interrupt(int fd); -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/src/bsd/classes/sun/nio/ch/KQueueSelectorImpl.java Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,263 @@ -+/* -+ * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+/* -+ * KQueueSelectorImpl.java -+ * Implementation of Selector using FreeBSD / Mac OS X kqueues -+ * Derived from Sun's DevPollSelectorImpl -+ */ -+ -+package sun.nio.ch; -+ -+import java.io.IOException; -+import java.io.FileDescriptor; -+import java.nio.channels.*; -+import java.nio.channels.spi.*; -+import java.util.*; -+import sun.misc.*; -+ -+class KQueueSelectorImpl -+ extends SelectorImpl -+{ -+ // File descriptors used for interrupt -+ protected int fd0; -+ protected int fd1; -+ -+ // The kqueue manipulator -+ KQueueArrayWrapper kqueueWrapper; -+ -+ // Count of registered descriptors (including interrupt) -+ private int totalChannels; -+ -+ // Map from a file descriptor to an entry containing the selection key -+ private HashMap fdMap; -+ -+ // True if this Selector has been closed -+ private boolean closed = false; -+ -+ // Lock for interrupt triggering and clearing -+ private Object interruptLock = new Object(); -+ private boolean interruptTriggered = false; -+ -+ // used by updateSelectedKeys to handle cases where the same file -+ // descriptor is polled by more than one filter -+ private long updateCount; -+ -+ // Used to map file descriptors to a selection key and "update count" -+ // (see updateSelectedKeys for usage). -+ private static class MapEntry { -+ SelectionKeyImpl ski; -+ long updateCount; -+ MapEntry(SelectionKeyImpl ski) { -+ this.ski = ski; -+ } -+ } -+ -+ /** -+ * Package private constructor called by factory method in -+ * the abstract superclass Selector. -+ */ -+ KQueueSelectorImpl(SelectorProvider sp) { -+ super(sp); -+ long fds = IOUtil.makePipe(false); -+ fd0 = (int)(fds >>> 32); -+ fd1 = (int)fds; -+ try { -+ kqueueWrapper = new KQueueArrayWrapper(); -+ kqueueWrapper.initInterrupt(fd0, fd1); -+ fdMap = new HashMap<>(); -+ totalChannels = 1; -+ } catch (Throwable t) { -+ try { -+ FileDispatcherImpl.closeIntFD(fd0); -+ } catch (IOException ioe0) { -+ t.addSuppressed(ioe0); -+ } -+ try { -+ FileDispatcherImpl.closeIntFD(fd1); -+ } catch (IOException ioe1) { -+ t.addSuppressed(ioe1); -+ } -+ throw t; -+ } -+ } -+ -+ -+ protected int doSelect(long timeout) -+ throws IOException -+ { -+ int entries = 0; -+ if (closed) -+ throw new ClosedSelectorException(); -+ processDeregisterQueue(); -+ try { -+ begin(); -+ entries = kqueueWrapper.poll(timeout); -+ } finally { -+ end(); -+ } -+ processDeregisterQueue(); -+ return updateSelectedKeys(entries); -+ } -+ -+ /** -+ * Update the keys whose fd's have been selected by kqueue. -+ * Add the ready keys to the selected key set. -+ * If the interrupt fd has been selected, drain it and clear the interrupt. -+ */ -+ private int updateSelectedKeys(int entries) -+ throws IOException -+ { -+ int numKeysUpdated = 0; -+ boolean interrupted = false; -+ -+ // A file descriptor may be registered with kqueue with more than one -+ // filter and so there may be more than one event for a fd. The update -+ // count in the MapEntry tracks when the fd was last updated and this -+ // ensures that the ready ops are updated rather than replaced by a -+ // second or subsequent event. -+ updateCount++; -+ -+ for (int i = 0; i < entries; i++) { -+ int nextFD = kqueueWrapper.getDescriptor(i); -+ if (nextFD == fd0) { -+ interrupted = true; -+ } else { -+ MapEntry me = fdMap.get(Integer.valueOf(nextFD)); -+ -+ // entry is null in the case of an interrupt -+ if (me != null) { -+ int rOps = kqueueWrapper.getReventOps(i); -+ SelectionKeyImpl ski = me.ski; -+ if (selectedKeys.contains(ski)) { -+ // first time this file descriptor has been encountered on this -+ // update? -+ if (me.updateCount != updateCount) { -+ if (ski.channel.translateAndSetReadyOps(rOps, ski)) { -+ numKeysUpdated++; -+ me.updateCount = updateCount; -+ } -+ } else { -+ // ready ops have already been set on this update -+ ski.channel.translateAndUpdateReadyOps(rOps, ski); -+ } -+ } else { -+ ski.channel.translateAndSetReadyOps(rOps, ski); -+ if ((ski.nioReadyOps() & ski.nioInterestOps()) != 0) { -+ selectedKeys.add(ski); -+ numKeysUpdated++; -+ me.updateCount = updateCount; -+ } -+ } -+ } -+ } -+ } -+ -+ if (interrupted) { -+ // Clear the wakeup pipe -+ synchronized (interruptLock) { -+ IOUtil.drain(fd0); -+ interruptTriggered = false; -+ } -+ } -+ return numKeysUpdated; -+ } -+ -+ -+ protected void implClose() throws IOException { -+ if (!closed) { -+ closed = true; -+ -+ // prevent further wakeup -+ synchronized (interruptLock) { -+ interruptTriggered = true; -+ } -+ -+ FileDispatcherImpl.closeIntFD(fd0); -+ FileDispatcherImpl.closeIntFD(fd1); -+ if (kqueueWrapper != null) { -+ kqueueWrapper.close(); -+ kqueueWrapper = null; -+ selectedKeys = null; -+ -+ // Deregister channels -+ Iterator i = keys.iterator(); -+ while (i.hasNext()) { -+ SelectionKeyImpl ski = (SelectionKeyImpl)i.next(); -+ deregister(ski); -+ SelectableChannel selch = ski.channel(); -+ if (!selch.isOpen() && !selch.isRegistered()) -+ ((SelChImpl)selch).kill(); -+ i.remove(); -+ } -+ totalChannels = 0; -+ } -+ fd0 = -1; -+ fd1 = -1; -+ } -+ } -+ -+ -+ protected void implRegister(SelectionKeyImpl ski) { -+ if (closed) -+ throw new ClosedSelectorException(); -+ int fd = IOUtil.fdVal(ski.channel.getFD()); -+ fdMap.put(Integer.valueOf(fd), new MapEntry(ski)); -+ totalChannels++; -+ keys.add(ski); -+ } -+ -+ -+ protected void implDereg(SelectionKeyImpl ski) throws IOException { -+ int fd = ski.channel.getFDVal(); -+ fdMap.remove(Integer.valueOf(fd)); -+ kqueueWrapper.release(ski.channel); -+ totalChannels--; -+ keys.remove(ski); -+ selectedKeys.remove(ski); -+ deregister((AbstractSelectionKey)ski); -+ SelectableChannel selch = ski.channel(); -+ if (!selch.isOpen() && !selch.isRegistered()) -+ ((SelChImpl)selch).kill(); -+ } -+ -+ -+ public void putEventOps(SelectionKeyImpl ski, int ops) { -+ if (closed) -+ throw new ClosedSelectorException(); -+ kqueueWrapper.setInterest(ski.channel, ops); -+ } -+ -+ -+ public Selector wakeup() { -+ synchronized (interruptLock) { -+ if (!interruptTriggered) { -+ kqueueWrapper.interrupt(); -+ interruptTriggered = true; -+ } -+ } -+ return this; -+ } -+} ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/src/bsd/classes/sun/nio/ch/KQueueSelectorProvider.java Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,44 @@ -+/* -+ * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+/* -+ * KQueueSelectorProvider.java -+ * Implementation of Selector using FreeBSD / Mac OS X kqueues -+ * Derived from Sun's DevPollSelectorProvider -+ */ -+ -+package sun.nio.ch; -+ -+import java.io.IOException; -+import java.nio.channels.*; -+import java.nio.channels.spi.*; -+ -+public class KQueueSelectorProvider -+extends SelectorProviderImpl -+{ -+ public AbstractSelector openSelector() throws IOException { -+ return new KQueueSelectorImpl(this); -+ } -+} ---- ./jdk/src/bsd/doc/man/javah.1 Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/bsd/doc/man/javah.1 Sun Feb 10 09:27:00 2019 -0800 -@@ -8,7 +8,7 @@ - .\" - .\" This code is distributed in the hope that it will be useful, but WITHOUT - .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or --.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - .\" version 2 for more details (a copy is included in the LICENSE file that - .\" accompanied this code). - .\" -@@ -109,7 +109,7 @@ - - \&.:\fIyour-path\fR - --Example: \f3\&.:/home/avh/classes:/usr/local/java/classes\fR -+Example: \f3\&.:/home/avh/classes:/usr/local/share/java/classes\fR - - \fIWindows\fR: - ---- ./jdk/src/bsd/doc/man/rmic.1 Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/bsd/doc/man/rmic.1 Sun Feb 10 09:27:00 2019 -0800 -@@ -8,7 +8,7 @@ - .\" - .\" This code is distributed in the hope that it will be useful, but WITHOUT - .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or --.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - .\" version 2 for more details (a copy is included in the LICENSE file that - .\" accompanied this code). - .\" -@@ -92,7 +92,7 @@ - .TP - -classpath path - .br --Specifies the path the \f3rmic\fR command uses to look up classes\&. This option overrides the default or the \f3CLASSPATH\fR environment variable when it is set\&. Directories are separated by colons\&. The general format for path is: \f3\&.:\fR, for example: \f3\&.:/usr/local/java/classes\fR\&. -+Specifies the path the \f3rmic\fR command uses to look up classes\&. This option overrides the default or the \f3CLASSPATH\fR environment variable when it is set\&. Directories are separated by colons\&. The general format for path is: \f3\&.:\fR, for example: \f3\&.:/usr/local/share/java/classes\fR\&. - .TP - -d \fIdirectory\fR - .br -@@ -206,7 +206,7 @@ - .SH ENVIRONMENT\ VARIABLES - .TP - CLASSPATH --Used to provide the system a path to user-defined classes\&. Directories are separated by colons, for example: \f3\&.:/usr/local/java/classes\fR\&. -+Used to provide the system a path to user-defined classes\&. Directories are separated by colons, for example: \f3\&.:/usr/local/share/java/classes\fR\&. - .SH SEE\ ALSO - .TP 0.2i - \(bu ---- ./jdk/src/bsd/doc/man/rmid.1 Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/bsd/doc/man/rmid.1 Sun Feb 10 09:27:00 2019 -0800 -@@ -8,7 +8,7 @@ - .\" - .\" This code is distributed in the hope that it will be useful, but WITHOUT - .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or --.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - .\" version 2 for more details (a copy is included in the LICENSE file that - .\" accompanied this code). - .\" -@@ -300,7 +300,7 @@ - .SH ENVIRONMENT\ VARIABLES - .TP - CLASSPATH --Used to provide the system a path to user-defined classes\&. Directories are separated by colons, for example: \f3\&.:/usr/local/java/classes\fR\&. -+Used to provide the system a path to user-defined classes\&. Directories are separated by colons, for example: \f3\&.:/usr/local/share/java/classes\fR\&. - .SH SEE\ ALSO - .TP 0.2i - \(bu ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/src/bsd/native/sun/nio/ch/KQueueArrayWrapper.c Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,171 @@ -+/* -+ * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+/* -+ * KQueueArrayWrapper.c -+ * Implementation of Selector using FreeBSD / Mac OS X kqueues -+ * Derived from Sun's DevPollArrayWrapper -+ */ -+ -+ -+#include "jni.h" -+#include "jni_util.h" -+#include "jvm.h" -+#include "jlong.h" -+ -+#include -+#include -+#include -+ -+JNIEXPORT void JNICALL -+Java_sun_nio_ch_KQueueArrayWrapper_initStructSizes(JNIEnv *env, jclass clazz) -+{ -+#define CHECK_EXCEPTION() { \ -+ if ((*env)->ExceptionCheck(env)) { \ -+ goto exceptionOccurred; \ -+ } \ -+} -+ -+#define CHECK_ERROR_AND_EXCEPTION(_field) { \ -+ if (_field == NULL) { \ -+ goto badField; \ -+ } \ -+ CHECK_EXCEPTION(); \ -+} -+ -+ -+ jfieldID field; -+ -+ field = (*env)->GetStaticFieldID(env, clazz, "EVFILT_READ", "S"); -+ CHECK_ERROR_AND_EXCEPTION(field); -+ (*env)->SetStaticShortField(env, clazz, field, EVFILT_READ); -+ CHECK_EXCEPTION(); -+ -+ field = (*env)->GetStaticFieldID(env, clazz, "EVFILT_WRITE", "S"); -+ CHECK_ERROR_AND_EXCEPTION(field); -+ (*env)->SetStaticShortField(env, clazz, field, EVFILT_WRITE); -+ CHECK_EXCEPTION(); -+ -+ field = (*env)->GetStaticFieldID(env, clazz, "SIZEOF_KEVENT", "S"); -+ CHECK_ERROR_AND_EXCEPTION(field); -+ (*env)->SetStaticShortField(env, clazz, field, (short) sizeof(struct kevent)); -+ CHECK_EXCEPTION(); -+ -+ field = (*env)->GetStaticFieldID(env, clazz, "FD_OFFSET", "S"); -+ CHECK_ERROR_AND_EXCEPTION(field); -+ (*env)->SetStaticShortField(env, clazz, field, (short) offsetof(struct kevent, ident)); -+ CHECK_EXCEPTION(); -+ -+ field = (*env)->GetStaticFieldID(env, clazz, "FILTER_OFFSET", "S"); -+ CHECK_ERROR_AND_EXCEPTION(field); -+ (*env)->SetStaticShortField(env, clazz, field, (short) offsetof(struct kevent, filter)); -+ CHECK_EXCEPTION(); -+ return; -+ -+badField: -+ return; -+ -+exceptionOccurred: -+ return; -+ -+#undef CHECK_EXCEPTION -+#undef CHECK_ERROR_AND_EXCEPTION -+} -+ -+JNIEXPORT jint JNICALL -+Java_sun_nio_ch_KQueueArrayWrapper_init(JNIEnv *env, jobject this) -+{ -+ int kq = kqueue(); -+ if (kq < 0) { -+ JNU_ThrowIOExceptionWithLastError(env, "KQueueArrayWrapper: kqueue() failed"); -+ } -+ return kq; -+} -+ -+ -+JNIEXPORT void JNICALL -+Java_sun_nio_ch_KQueueArrayWrapper_register0(JNIEnv *env, jobject this, -+ jint kq, jint fd, jint r, jint w) -+{ -+ struct kevent changes[2]; -+ struct kevent errors[2]; -+ struct timespec dontBlock = {0, 0}; -+ -+ // if (r) then { register for read } else { unregister for read } -+ // if (w) then { register for write } else { unregister for write } -+ // Ignore errors - they're probably complaints about deleting non- -+ // added filters - but provide an error array anyway because -+ // kqueue behaves erratically if some of its registrations fail. -+ EV_SET(&changes[0], fd, EVFILT_READ, r ? EV_ADD : EV_DELETE, 0, 0, 0); -+ EV_SET(&changes[1], fd, EVFILT_WRITE, w ? EV_ADD : EV_DELETE, 0, 0, 0); -+ kevent(kq, changes, 2, errors, 2, &dontBlock); -+} -+ -+ -+JNIEXPORT jint JNICALL -+Java_sun_nio_ch_KQueueArrayWrapper_kevent0(JNIEnv *env, jobject this, jint kq, -+ jlong kevAddr, jint kevCount, -+ jlong timeout) -+{ -+ struct kevent *kevs = (struct kevent *)jlong_to_ptr(kevAddr); -+ struct timespec ts; -+ struct timespec *tsp; -+ int result; -+ -+ // Java timeout is in milliseconds. Convert to struct timespec. -+ // Java timeout == -1 : wait forever : timespec timeout of NULL -+ // Java timeout == 0 : return immediately : timespec timeout of zero -+ if (timeout >= 0) { -+ ts.tv_sec = timeout / 1000; -+ ts.tv_nsec = (timeout % 1000) * 1000000; //nanosec = 1 million millisec -+ tsp = &ts; -+ } else { -+ tsp = NULL; -+ } -+ -+ result = kevent(kq, NULL, 0, kevs, kevCount, tsp); -+ -+ if (result < 0) { -+ if (errno == EINTR) { -+ // ignore EINTR, pretend nothing was selected -+ result = 0; -+ } else { -+ JNU_ThrowIOExceptionWithLastError(env, "KQueueArrayWrapper: kqueue failed"); -+ } -+ } -+ -+ return result; -+} -+ -+ -+JNIEXPORT void JNICALL -+Java_sun_nio_ch_KQueueArrayWrapper_interrupt(JNIEnv *env, jclass cls, jint fd) -+{ -+ char c = 1; -+ if (1 != write(fd, &c, 1)) { -+ JNU_ThrowIOExceptionWithLastError(env, "KQueueArrayWrapper: interrupt failed"); -+ } -+} -+ ---- ./jdk/src/macosx/classes/java/net/DefaultInterface.java Sat Dec 08 11:51:25 2018 +0000 -+++ /dev/null Thu Jan 01 00:00:00 1970 +0000 -@@ -1,97 +0,0 @@ --/* -- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved. -- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -- * -- * This code is free software; you can redistribute it and/or modify it -- * under the terms of the GNU General Public License version 2 only, as -- * published by the Free Software Foundation. Oracle designates this -- * particular file as subject to the "Classpath" exception as provided -- * by Oracle in the LICENSE file that accompanied this code. -- * -- * This code is distributed in the hope that it will be useful, but WITHOUT -- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- * version 2 for more details (a copy is included in the LICENSE file that -- * accompanied this code). -- * -- * You should have received a copy of the GNU General Public License version -- * 2 along with this work; if not, write to the Free Software Foundation, -- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -- * -- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -- * or visit www.oracle.com if you need additional information or have any -- * questions. -- */ -- --package java.net; -- --/** -- * Choose a network interface to be the default for -- * outgoing IPv6 traffic that does not specify a scope_id (and which needs one). -- * We choose the first interface that is up and is (in order of preference): -- * 1. neither loopback nor point to point -- * 2. point to point -- * 3. loopback -- * 4. none. -- * Platforms that do not require a default interface implement a dummy -- * that returns null. -- */ -- --import java.util.Enumeration; --import java.io.IOException; -- --class DefaultInterface { -- -- private final static NetworkInterface defaultInterface = -- chooseDefaultInterface(); -- -- static NetworkInterface getDefault() { -- return defaultInterface; -- } -- -- /** -- * Choose a default interface. This method returns an interface that is -- * both "up" and supports multicast. This method choses an interface in -- * order of preference: -- * 1. neither loopback nor point to point -- * 2. point to point -- * 3. loopback -- * -- * @return the chosen interface or {@code null} if there isn't a suitable -- * default -- */ -- private static NetworkInterface chooseDefaultInterface() { -- Enumeration nifs; -- -- try { -- nifs = NetworkInterface.getNetworkInterfaces(); -- } catch (IOException ignore) { -- // unable to enumate network interfaces -- return null; -- } -- -- NetworkInterface ppp = null; -- NetworkInterface loopback = null; -- -- while (nifs.hasMoreElements()) { -- NetworkInterface ni = nifs.nextElement(); -- try { -- if (ni.isUp() && ni.supportsMulticast()) { -- boolean isLoopback = ni.isLoopback(); -- boolean isPPP = ni.isPointToPoint(); -- if (!isLoopback && !isPPP) { -- // found an interface that is not the loopback or a -- // point-to-point interface -- return ni; -- } -- if (ppp == null && isPPP) -- ppp = ni; -- if (loopback == null && isLoopback) -- loopback = ni; -- } -- } catch (IOException skip) { } -- } -- -- return (ppp != null) ? ppp : loopback; -- } --} ---- ./jdk/src/macosx/classes/sun/nio/ch/DefaultSelectorProvider.java Sat Dec 08 11:51:25 2018 +0000 -+++ /dev/null Thu Jan 01 00:00:00 1970 +0000 -@@ -1,48 +0,0 @@ --/* -- * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved. -- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -- * -- * This code is free software; you can redistribute it and/or modify it -- * under the terms of the GNU General Public License version 2 only, as -- * published by the Free Software Foundation. Oracle designates this -- * particular file as subject to the "Classpath" exception as provided -- * by Oracle in the LICENSE file that accompanied this code. -- * -- * This code is distributed in the hope that it will be useful, but WITHOUT -- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- * version 2 for more details (a copy is included in the LICENSE file that -- * accompanied this code). -- * -- * You should have received a copy of the GNU General Public License version -- * 2 along with this work; if not, write to the Free Software Foundation, -- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -- * -- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -- * or visit www.oracle.com if you need additional information or have any -- * questions. -- */ -- --package sun.nio.ch; -- --import java.nio.channels.spi.SelectorProvider; -- --/** -- * Creates this platform's default SelectorProvider -- */ -- --public class DefaultSelectorProvider { -- -- /** -- * Prevent instantiation. -- */ -- private DefaultSelectorProvider() { } -- -- /** -- * Returns the default SelectorProvider. -- */ -- public static SelectorProvider create() { -- return new sun.nio.ch.KQueueSelectorProvider(); -- } -- --} ---- ./jdk/src/macosx/classes/sun/nio/ch/KQueueArrayWrapper.java Sat Dec 08 11:51:25 2018 +0000 -+++ /dev/null Thu Jan 01 00:00:00 1970 +0000 -@@ -1,213 +0,0 @@ --/* -- * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved. -- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -- * -- * This code is free software; you can redistribute it and/or modify it -- * under the terms of the GNU General Public License version 2 only, as -- * published by the Free Software Foundation. Oracle designates this -- * particular file as subject to the "Classpath" exception as provided -- * by Oracle in the LICENSE file that accompanied this code. -- * -- * This code is distributed in the hope that it will be useful, but WITHOUT -- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- * version 2 for more details (a copy is included in the LICENSE file that -- * accompanied this code). -- * -- * You should have received a copy of the GNU General Public License version -- * 2 along with this work; if not, write to the Free Software Foundation, -- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -- * -- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -- * or visit www.oracle.com if you need additional information or have any -- * questions. -- */ -- --/* -- * KQueueArrayWrapper.java -- * Implementation of Selector using FreeBSD / Mac OS X kqueues -- * Derived from Sun's DevPollArrayWrapper -- */ -- --package sun.nio.ch; -- --import sun.misc.*; --import java.io.IOException; --import java.io.FileDescriptor; --import java.util.Iterator; --import java.util.LinkedList; -- --/* -- * struct kevent { // 32-bit 64-bit -- * uintptr_t ident; // 4 8 -- * short filter; // 2 2 -- * u_short flags; // 2 2 -- * u_int fflags; // 4 4 -- * intptr_t data; // 4 8 -- * void *udata; // 4 8 -- * } // Total: 20 32 -- * -- * The implementation works in 32-bit and 64-bit world. We do this by calling a -- * native function that actually sets the sizes and offsets of the fields based -- * on which mode we're in. -- */ -- --class KQueueArrayWrapper { -- // kevent filters -- static short EVFILT_READ; -- static short EVFILT_WRITE; -- -- // kevent struct -- // These fields are now set by initStructSizes in the static initializer. -- static short SIZEOF_KEVENT; -- static short FD_OFFSET; -- static short FILTER_OFFSET; -- -- // kevent array size -- static final int NUM_KEVENTS = 128; -- -- // Are we in a 64-bit VM? -- static boolean is64bit = false; -- -- // The kevent array (used for outcoming events only) -- private AllocatedNativeObject keventArray = null; -- private long keventArrayAddress; -- -- // The kqueue fd -- private int kq = -1; -- -- // The fd of the interrupt line going out -- private int outgoingInterruptFD; -- -- // The fd of the interrupt line coming in -- private int incomingInterruptFD; -- -- static { -- IOUtil.load(); -- initStructSizes(); -- String datamodel = java.security.AccessController.doPrivileged( -- new sun.security.action.GetPropertyAction("sun.arch.data.model") -- ); -- is64bit = datamodel.equals("64"); -- } -- -- KQueueArrayWrapper() { -- int allocationSize = SIZEOF_KEVENT * NUM_KEVENTS; -- keventArray = new AllocatedNativeObject(allocationSize, true); -- keventArrayAddress = keventArray.address(); -- kq = init(); -- } -- -- // Used to update file description registrations -- private static class Update { -- SelChImpl channel; -- int events; -- Update(SelChImpl channel, int events) { -- this.channel = channel; -- this.events = events; -- } -- } -- -- private LinkedList updateList = new LinkedList(); -- -- void initInterrupt(int fd0, int fd1) { -- outgoingInterruptFD = fd1; -- incomingInterruptFD = fd0; -- register0(kq, fd0, 1, 0); -- } -- -- int getReventOps(int index) { -- int result = 0; -- int offset = SIZEOF_KEVENT*index + FILTER_OFFSET; -- short filter = keventArray.getShort(offset); -- -- // This is all that's necessary based on inspection of usage: -- // SinkChannelImpl, SourceChannelImpl, DatagramChannelImpl, -- // ServerSocketChannelImpl, SocketChannelImpl -- if (filter == EVFILT_READ) { -- result |= Net.POLLIN; -- } else if (filter == EVFILT_WRITE) { -- result |= Net.POLLOUT; -- } -- -- return result; -- } -- -- int getDescriptor(int index) { -- int offset = SIZEOF_KEVENT*index + FD_OFFSET; -- /* The ident field is 8 bytes in 64-bit world, however the API wants us -- * to return an int. Hence read the 8 bytes but return as an int. -- */ -- if (is64bit) { -- long fd = keventArray.getLong(offset); -- assert fd <= Integer.MAX_VALUE; -- return (int) fd; -- } else { -- return keventArray.getInt(offset); -- } -- } -- -- void setInterest(SelChImpl channel, int events) { -- synchronized (updateList) { -- // update existing registration -- updateList.add(new Update(channel, events)); -- } -- } -- -- void release(SelChImpl channel) { -- synchronized (updateList) { -- // flush any pending updates -- for (Iterator it = updateList.iterator(); it.hasNext();) { -- if (it.next().channel == channel) { -- it.remove(); -- } -- } -- -- // remove -- register0(kq, channel.getFDVal(), 0, 0); -- } -- } -- -- void updateRegistrations() { -- synchronized (updateList) { -- Update u = null; -- while ((u = updateList.poll()) != null) { -- SelChImpl ch = u.channel; -- if (!ch.isOpen()) -- continue; -- -- register0(kq, ch.getFDVal(), u.events & Net.POLLIN, u.events & Net.POLLOUT); -- } -- } -- } -- -- -- void close() throws IOException { -- if (keventArray != null) { -- keventArray.free(); -- keventArray = null; -- } -- if (kq >= 0) { -- FileDispatcherImpl.closeIntFD(kq); -- kq = -1; -- } -- } -- -- int poll(long timeout) { -- updateRegistrations(); -- int updated = kevent0(kq, keventArrayAddress, NUM_KEVENTS, timeout); -- return updated; -- } -- -- void interrupt() { -- interrupt(outgoingInterruptFD); -- } -- -- private native int init(); -- private static native void initStructSizes(); -- -- private native void register0(int kq, int fd, int read, int write); -- private native int kevent0(int kq, long keventAddress, int keventCount, -- long timeout); -- private static native void interrupt(int fd); --} ---- ./jdk/src/macosx/classes/sun/nio/ch/KQueueSelectorImpl.java Sat Dec 08 11:51:25 2018 +0000 -+++ /dev/null Thu Jan 01 00:00:00 1970 +0000 -@@ -1,263 +0,0 @@ --/* -- * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. -- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -- * -- * This code is free software; you can redistribute it and/or modify it -- * under the terms of the GNU General Public License version 2 only, as -- * published by the Free Software Foundation. Oracle designates this -- * particular file as subject to the "Classpath" exception as provided -- * by Oracle in the LICENSE file that accompanied this code. -- * -- * This code is distributed in the hope that it will be useful, but WITHOUT -- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- * version 2 for more details (a copy is included in the LICENSE file that -- * accompanied this code). -- * -- * You should have received a copy of the GNU General Public License version -- * 2 along with this work; if not, write to the Free Software Foundation, -- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -- * -- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -- * or visit www.oracle.com if you need additional information or have any -- * questions. -- */ -- --/* -- * KQueueSelectorImpl.java -- * Implementation of Selector using FreeBSD / Mac OS X kqueues -- * Derived from Sun's DevPollSelectorImpl -- */ -- --package sun.nio.ch; -- --import java.io.IOException; --import java.io.FileDescriptor; --import java.nio.channels.*; --import java.nio.channels.spi.*; --import java.util.*; --import sun.misc.*; -- --class KQueueSelectorImpl -- extends SelectorImpl --{ -- // File descriptors used for interrupt -- protected int fd0; -- protected int fd1; -- -- // The kqueue manipulator -- KQueueArrayWrapper kqueueWrapper; -- -- // Count of registered descriptors (including interrupt) -- private int totalChannels; -- -- // Map from a file descriptor to an entry containing the selection key -- private HashMap fdMap; -- -- // True if this Selector has been closed -- private boolean closed = false; -- -- // Lock for interrupt triggering and clearing -- private Object interruptLock = new Object(); -- private boolean interruptTriggered = false; -- -- // used by updateSelectedKeys to handle cases where the same file -- // descriptor is polled by more than one filter -- private long updateCount; -- -- // Used to map file descriptors to a selection key and "update count" -- // (see updateSelectedKeys for usage). -- private static class MapEntry { -- SelectionKeyImpl ski; -- long updateCount; -- MapEntry(SelectionKeyImpl ski) { -- this.ski = ski; -- } -- } -- -- /** -- * Package private constructor called by factory method in -- * the abstract superclass Selector. -- */ -- KQueueSelectorImpl(SelectorProvider sp) { -- super(sp); -- long fds = IOUtil.makePipe(false); -- fd0 = (int)(fds >>> 32); -- fd1 = (int)fds; -- try { -- kqueueWrapper = new KQueueArrayWrapper(); -- kqueueWrapper.initInterrupt(fd0, fd1); -- fdMap = new HashMap<>(); -- totalChannels = 1; -- } catch (Throwable t) { -- try { -- FileDispatcherImpl.closeIntFD(fd0); -- } catch (IOException ioe0) { -- t.addSuppressed(ioe0); -- } -- try { -- FileDispatcherImpl.closeIntFD(fd1); -- } catch (IOException ioe1) { -- t.addSuppressed(ioe1); -- } -- throw t; -- } -- } -- -- -- protected int doSelect(long timeout) -- throws IOException -- { -- int entries = 0; -- if (closed) -- throw new ClosedSelectorException(); -- processDeregisterQueue(); -- try { -- begin(); -- entries = kqueueWrapper.poll(timeout); -- } finally { -- end(); -- } -- processDeregisterQueue(); -- return updateSelectedKeys(entries); -- } -- -- /** -- * Update the keys whose fd's have been selected by kqueue. -- * Add the ready keys to the selected key set. -- * If the interrupt fd has been selected, drain it and clear the interrupt. -- */ -- private int updateSelectedKeys(int entries) -- throws IOException -- { -- int numKeysUpdated = 0; -- boolean interrupted = false; -- -- // A file descriptor may be registered with kqueue with more than one -- // filter and so there may be more than one event for a fd. The update -- // count in the MapEntry tracks when the fd was last updated and this -- // ensures that the ready ops are updated rather than replaced by a -- // second or subsequent event. -- updateCount++; -- -- for (int i = 0; i < entries; i++) { -- int nextFD = kqueueWrapper.getDescriptor(i); -- if (nextFD == fd0) { -- interrupted = true; -- } else { -- MapEntry me = fdMap.get(Integer.valueOf(nextFD)); -- -- // entry is null in the case of an interrupt -- if (me != null) { -- int rOps = kqueueWrapper.getReventOps(i); -- SelectionKeyImpl ski = me.ski; -- if (selectedKeys.contains(ski)) { -- // first time this file descriptor has been encountered on this -- // update? -- if (me.updateCount != updateCount) { -- if (ski.channel.translateAndSetReadyOps(rOps, ski)) { -- numKeysUpdated++; -- me.updateCount = updateCount; -- } -- } else { -- // ready ops have already been set on this update -- ski.channel.translateAndUpdateReadyOps(rOps, ski); -- } -- } else { -- ski.channel.translateAndSetReadyOps(rOps, ski); -- if ((ski.nioReadyOps() & ski.nioInterestOps()) != 0) { -- selectedKeys.add(ski); -- numKeysUpdated++; -- me.updateCount = updateCount; -- } -- } -- } -- } -- } -- -- if (interrupted) { -- // Clear the wakeup pipe -- synchronized (interruptLock) { -- IOUtil.drain(fd0); -- interruptTriggered = false; -- } -- } -- return numKeysUpdated; -- } -- -- -- protected void implClose() throws IOException { -- if (!closed) { -- closed = true; -- -- // prevent further wakeup -- synchronized (interruptLock) { -- interruptTriggered = true; -- } -- -- FileDispatcherImpl.closeIntFD(fd0); -- FileDispatcherImpl.closeIntFD(fd1); -- if (kqueueWrapper != null) { -- kqueueWrapper.close(); -- kqueueWrapper = null; -- selectedKeys = null; -- -- // Deregister channels -- Iterator i = keys.iterator(); -- while (i.hasNext()) { -- SelectionKeyImpl ski = (SelectionKeyImpl)i.next(); -- deregister(ski); -- SelectableChannel selch = ski.channel(); -- if (!selch.isOpen() && !selch.isRegistered()) -- ((SelChImpl)selch).kill(); -- i.remove(); -- } -- totalChannels = 0; -- } -- fd0 = -1; -- fd1 = -1; -- } -- } -- -- -- protected void implRegister(SelectionKeyImpl ski) { -- if (closed) -- throw new ClosedSelectorException(); -- int fd = IOUtil.fdVal(ski.channel.getFD()); -- fdMap.put(Integer.valueOf(fd), new MapEntry(ski)); -- totalChannels++; -- keys.add(ski); -- } -- -- -- protected void implDereg(SelectionKeyImpl ski) throws IOException { -- int fd = ski.channel.getFDVal(); -- fdMap.remove(Integer.valueOf(fd)); -- kqueueWrapper.release(ski.channel); -- totalChannels--; -- keys.remove(ski); -- selectedKeys.remove(ski); -- deregister((AbstractSelectionKey)ski); -- SelectableChannel selch = ski.channel(); -- if (!selch.isOpen() && !selch.isRegistered()) -- ((SelChImpl)selch).kill(); -- } -- -- -- public void putEventOps(SelectionKeyImpl ski, int ops) { -- if (closed) -- throw new ClosedSelectorException(); -- kqueueWrapper.setInterest(ski.channel, ops); -- } -- -- -- public Selector wakeup() { -- synchronized (interruptLock) { -- if (!interruptTriggered) { -- kqueueWrapper.interrupt(); -- interruptTriggered = true; -- } -- } -- return this; -- } --} ---- ./jdk/src/macosx/classes/sun/nio/ch/KQueueSelectorProvider.java Sat Dec 08 11:51:25 2018 +0000 -+++ /dev/null Thu Jan 01 00:00:00 1970 +0000 -@@ -1,44 +0,0 @@ --/* -- * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved. -- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -- * -- * This code is free software; you can redistribute it and/or modify it -- * under the terms of the GNU General Public License version 2 only, as -- * published by the Free Software Foundation. Oracle designates this -- * particular file as subject to the "Classpath" exception as provided -- * by Oracle in the LICENSE file that accompanied this code. -- * -- * This code is distributed in the hope that it will be useful, but WITHOUT -- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- * version 2 for more details (a copy is included in the LICENSE file that -- * accompanied this code). -- * -- * You should have received a copy of the GNU General Public License version -- * 2 along with this work; if not, write to the Free Software Foundation, -- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -- * -- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -- * or visit www.oracle.com if you need additional information or have any -- * questions. -- */ -- --/* -- * KQueueSelectorProvider.java -- * Implementation of Selector using FreeBSD / Mac OS X kqueues -- * Derived from Sun's DevPollSelectorProvider -- */ -- --package sun.nio.ch; -- --import java.io.IOException; --import java.nio.channels.*; --import java.nio.channels.spi.*; -- --public class KQueueSelectorProvider --extends SelectorProviderImpl --{ -- public AbstractSelector openSelector() throws IOException { -- return new KQueueSelectorImpl(this); -- } --} ---- ./jdk/src/macosx/native/sun/nio/ch/KQueueArrayWrapper.c Sat Dec 08 11:51:25 2018 +0000 -+++ /dev/null Thu Jan 01 00:00:00 1970 +0000 -@@ -1,171 +0,0 @@ --/* -- * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved. -- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -- * -- * This code is free software; you can redistribute it and/or modify it -- * under the terms of the GNU General Public License version 2 only, as -- * published by the Free Software Foundation. Oracle designates this -- * particular file as subject to the "Classpath" exception as provided -- * by Oracle in the LICENSE file that accompanied this code. -- * -- * This code is distributed in the hope that it will be useful, but WITHOUT -- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- * version 2 for more details (a copy is included in the LICENSE file that -- * accompanied this code). -- * -- * You should have received a copy of the GNU General Public License version -- * 2 along with this work; if not, write to the Free Software Foundation, -- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -- * -- * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -- * or visit www.oracle.com if you need additional information or have any -- * questions. -- */ -- --/* -- * KQueueArrayWrapper.c -- * Implementation of Selector using FreeBSD / Mac OS X kqueues -- * Derived from Sun's DevPollArrayWrapper -- */ -- -- --#include "jni.h" --#include "jni_util.h" --#include "jvm.h" --#include "jlong.h" -- --#include --#include --#include -- --JNIEXPORT void JNICALL --Java_sun_nio_ch_KQueueArrayWrapper_initStructSizes(JNIEnv *env, jclass clazz) --{ --#define CHECK_EXCEPTION() { \ -- if ((*env)->ExceptionCheck(env)) { \ -- goto exceptionOccurred; \ -- } \ --} -- --#define CHECK_ERROR_AND_EXCEPTION(_field) { \ -- if (_field == NULL) { \ -- goto badField; \ -- } \ -- CHECK_EXCEPTION(); \ --} -- -- -- jfieldID field; -- -- field = (*env)->GetStaticFieldID(env, clazz, "EVFILT_READ", "S"); -- CHECK_ERROR_AND_EXCEPTION(field); -- (*env)->SetStaticShortField(env, clazz, field, EVFILT_READ); -- CHECK_EXCEPTION(); -- -- field = (*env)->GetStaticFieldID(env, clazz, "EVFILT_WRITE", "S"); -- CHECK_ERROR_AND_EXCEPTION(field); -- (*env)->SetStaticShortField(env, clazz, field, EVFILT_WRITE); -- CHECK_EXCEPTION(); -- -- field = (*env)->GetStaticFieldID(env, clazz, "SIZEOF_KEVENT", "S"); -- CHECK_ERROR_AND_EXCEPTION(field); -- (*env)->SetStaticShortField(env, clazz, field, (short) sizeof(struct kevent)); -- CHECK_EXCEPTION(); -- -- field = (*env)->GetStaticFieldID(env, clazz, "FD_OFFSET", "S"); -- CHECK_ERROR_AND_EXCEPTION(field); -- (*env)->SetStaticShortField(env, clazz, field, (short) offsetof(struct kevent, ident)); -- CHECK_EXCEPTION(); -- -- field = (*env)->GetStaticFieldID(env, clazz, "FILTER_OFFSET", "S"); -- CHECK_ERROR_AND_EXCEPTION(field); -- (*env)->SetStaticShortField(env, clazz, field, (short) offsetof(struct kevent, filter)); -- CHECK_EXCEPTION(); -- return; -- --badField: -- return; -- --exceptionOccurred: -- return; -- --#undef CHECK_EXCEPTION --#undef CHECK_ERROR_AND_EXCEPTION --} -- --JNIEXPORT jint JNICALL --Java_sun_nio_ch_KQueueArrayWrapper_init(JNIEnv *env, jobject this) --{ -- int kq = kqueue(); -- if (kq < 0) { -- JNU_ThrowIOExceptionWithLastError(env, "KQueueArrayWrapper: kqueue() failed"); -- } -- return kq; --} -- -- --JNIEXPORT void JNICALL --Java_sun_nio_ch_KQueueArrayWrapper_register0(JNIEnv *env, jobject this, -- jint kq, jint fd, jint r, jint w) --{ -- struct kevent changes[2]; -- struct kevent errors[2]; -- struct timespec dontBlock = {0, 0}; -- -- // if (r) then { register for read } else { unregister for read } -- // if (w) then { register for write } else { unregister for write } -- // Ignore errors - they're probably complaints about deleting non- -- // added filters - but provide an error array anyway because -- // kqueue behaves erratically if some of its registrations fail. -- EV_SET(&changes[0], fd, EVFILT_READ, r ? EV_ADD : EV_DELETE, 0, 0, 0); -- EV_SET(&changes[1], fd, EVFILT_WRITE, w ? EV_ADD : EV_DELETE, 0, 0, 0); -- kevent(kq, changes, 2, errors, 2, &dontBlock); --} -- -- --JNIEXPORT jint JNICALL --Java_sun_nio_ch_KQueueArrayWrapper_kevent0(JNIEnv *env, jobject this, jint kq, -- jlong kevAddr, jint kevCount, -- jlong timeout) --{ -- struct kevent *kevs = (struct kevent *)jlong_to_ptr(kevAddr); -- struct timespec ts; -- struct timespec *tsp; -- int result; -- -- // Java timeout is in milliseconds. Convert to struct timespec. -- // Java timeout == -1 : wait forever : timespec timeout of NULL -- // Java timeout == 0 : return immediately : timespec timeout of zero -- if (timeout >= 0) { -- ts.tv_sec = timeout / 1000; -- ts.tv_nsec = (timeout % 1000) * 1000000; //nanosec = 1 million millisec -- tsp = &ts; -- } else { -- tsp = NULL; -- } -- -- result = kevent(kq, NULL, 0, kevs, kevCount, tsp); -- -- if (result < 0) { -- if (errno == EINTR) { -- // ignore EINTR, pretend nothing was selected -- result = 0; -- } else { -- JNU_ThrowIOExceptionWithLastError(env, "KQueueArrayWrapper: kqueue failed"); -- } -- } -- -- return result; --} -- -- --JNIEXPORT void JNICALL --Java_sun_nio_ch_KQueueArrayWrapper_interrupt(JNIEnv *env, jclass cls, jint fd) --{ -- char c = 1; -- if (1 != write(fd, &c, 1)) { -- JNU_ThrowIOExceptionWithLastError(env, "KQueueArrayWrapper: interrupt failed"); -- } --} -- ---- ./jdk/src/share/bin/jli_util.h Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/bin/jli_util.h Sun Feb 10 09:27:00 2019 -0800 -@@ -87,7 +87,7 @@ - #define _LARGFILE64_SOURCE - #define JLI_Lseek lseek64 - #endif --#ifdef MACOSX -+#ifdef _ALLBSD_SOURCE - #define JLI_Lseek lseek - #endif - #ifdef _AIX ---- ./jdk/src/share/classes/sun/awt/FontConfiguration.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/classes/sun/awt/FontConfiguration.java Sun Feb 10 09:27:00 2019 -0800 -@@ -1146,7 +1146,7 @@ - */ - HashMap existsMap; - public boolean needToSearchForFile(String fileName) { -- if (!FontUtilities.isLinux) { -+ if (!FontUtilities.isLinux && !FontUtilities.isBSD) { - return false; - } else if (existsMap == null) { - existsMap = new HashMap(); ---- ./jdk/src/share/classes/sun/awt/OSInfo.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/classes/sun/awt/OSInfo.java Sun Feb 10 09:27:00 2019 -0800 -@@ -39,6 +39,7 @@ - WINDOWS, - LINUX, - SOLARIS, -+ BSD, - MACOSX, - UNKNOWN - } -@@ -101,6 +102,10 @@ - return SOLARIS; - } - -+ if (osName.endsWith("BSD")) { -+ return BSD; -+ } -+ - if (osName.contains("OS X")) { - return MACOSX; - } ---- ./jdk/src/share/classes/sun/font/FontUtilities.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/classes/sun/font/FontUtilities.java Sun Feb 10 09:27:00 2019 -0800 -@@ -48,6 +48,8 @@ - - public static boolean isLinux; - -+ public static boolean isBSD; -+ - public static boolean isMacOSX; - - public static boolean isSolaris8; -@@ -78,6 +80,8 @@ - - isLinux = osName.startsWith("Linux"); - -+ isBSD = osName.endsWith("BSD"); -+ - isMacOSX = osName.contains("OS X"); // TODO: MacOSX - - String t2kStr = System.getProperty("sun.java2d.font.scaler"); ---- ./jdk/src/share/classes/sun/font/SunFontManager.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/classes/sun/font/SunFontManager.java Sun Feb 10 09:27:00 2019 -0800 -@@ -418,7 +418,7 @@ - * registerFonts method as on-screen these JRE fonts - * always go through the T2K rasteriser. - */ -- if (FontUtilities.isLinux) { -+ if (FontUtilities.isLinux || FontUtilities.isBSD) { - /* Linux font configuration uses these fonts */ - registerFontDir(jreFontDirName); - } ---- ./jdk/src/share/classes/sun/nio/cs/ext/ExtendedCharsets.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/classes/sun/nio/cs/ext/ExtendedCharsets.java Sun Feb 10 09:27:00 2019 -0800 -@@ -1306,7 +1306,7 @@ - String osName = AccessController.doPrivileged( - new GetPropertyAction("os.name")); - if ("SunOS".equals(osName) || "Linux".equals(osName) || "AIX".equals(osName) -- || osName.contains("OS X")) { -+ || osName.endsWith("BSD") || osName.contains("OS X")) { - charset("x-COMPOUND_TEXT", "COMPOUND_TEXT", - new String[] { - "COMPOUND_TEXT", // JDK historical ---- ./jdk/src/share/classes/sun/print/PSPrinterJob.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/classes/sun/print/PSPrinterJob.java Sun Feb 10 09:27:00 2019 -0800 -@@ -1587,9 +1587,31 @@ - } - - String osname = System.getProperty("os.name"); -- if (osname.equals("Linux") || osname.contains("OS X")) { -+ if (osname.equals("Linux") || osname.endsWith("BSD") || osname.contains("OS X")) { -+ String lprPath = "/usr/bin/lpr"; -+ if (osname.equals("FreeBSD")) { -+ final PrintService pservice = getPrintService(); -+ Boolean isIPPPrinter = -+ (Boolean)java.security.AccessController.doPrivileged( -+ new java.security.PrivilegedAction() { -+ public Object run() { -+ try { -+ Class psClass = -+ Class.forName("sun.print.IPPPrintService"); -+ if (psClass.isInstance(pservice)) { -+ return Boolean.TRUE; -+ } -+ } catch (Throwable t) { -+ } -+ return Boolean.FALSE; -+ } -+ }); -+ if (isIPPPrinter) { -+ lprPath = "/usr/local/bin/lpr"; -+ } -+ } - execCmd = new String[ncomps]; -- execCmd[n++] = "/usr/bin/lpr"; -+ execCmd[n++] = lprPath; - if ((pFlags & PRINTER) != 0) { - execCmd[n++] = "-P" + printer; - } ---- ./jdk/src/share/classes/sun/security/jgss/GSSManagerImpl.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/classes/sun/security/jgss/GSSManagerImpl.java Sun Feb 10 09:27:00 2019 -0800 -@@ -48,6 +48,7 @@ - public Boolean run() { - String osname = System.getProperty("os.name"); - if (osname.startsWith("SunOS") || -+ osname.endsWith("BSD") || - osname.contains("OS X") || - osname.startsWith("Linux")) { - return new Boolean(System.getProperty ---- ./jdk/src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java Sun Feb 10 09:27:00 2019 -0800 -@@ -90,6 +90,12 @@ - "libgssapi_krb5.so", - "libgssapi_krb5.so.2", - }; -+ } else if (osname.endsWith("BSD")) { -+ gssLibs = new String[]{ -+ "libgssapi.so", -+ "libgssapi_krb5.so", -+ "libgssapi_krb5.so.10", -+ }; - } else if (osname.contains("OS X")) { - gssLibs = new String[]{ - "libgssapi_krb5.dylib", ---- ./jdk/src/share/classes/sun/tools/attach/META-INF/services/com.sun.tools.attach.spi.AttachProvider Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/classes/sun/tools/attach/META-INF/services/com.sun.tools.attach.spi.AttachProvider Sun Feb 10 09:27:00 2019 -0800 -@@ -31,4 +31,5 @@ - #[windows]sun.tools.attach.WindowsAttachProvider - #[linux]sun.tools.attach.LinuxAttachProvider - #[macosx]sun.tools.attach.BsdAttachProvider -+#[bsd]sun.tools.attach.BsdAttachProvider - #[aix]sun.tools.attach.AixAttachProvider ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/src/share/lib/security/java.security-bsd Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,983 @@ -+# -+# This is the "master security properties file". -+# -+# An alternate java.security properties file may be specified -+# from the command line via the system property -+# -+# -Djava.security.properties= -+# -+# This properties file appends to the master security properties file. -+# If both properties files specify values for the same key, the value -+# from the command-line properties file is selected, as it is the last -+# one loaded. -+# -+# Also, if you specify -+# -+# -Djava.security.properties== (2 equals), -+# -+# then that properties file completely overrides the master security -+# properties file. -+# -+# To disable the ability to specify an additional properties file from -+# the command line, set the key security.overridePropertiesFile -+# to false in the master security properties file. It is set to true -+# by default. -+ -+# In this file, various security properties are set for use by -+# java.security classes. This is where users can statically register -+# Cryptography Package Providers ("providers" for short). The term -+# "provider" refers to a package or set of packages that supply a -+# concrete implementation of a subset of the cryptography aspects of -+# the Java Security API. A provider may, for example, implement one or -+# more digital signature algorithms or message digest algorithms. -+# -+# Each provider must implement a subclass of the Provider class. -+# To register a provider in this master security properties file, -+# specify the Provider subclass name and priority in the format -+# -+# security.provider.= -+# -+# This declares a provider, and specifies its preference -+# order n. The preference order is the order in which providers are -+# searched for requested algorithms (when no specific provider is -+# requested). The order is 1-based; 1 is the most preferred, followed -+# by 2, and so on. -+# -+# must specify the subclass of the Provider class whose -+# constructor sets the values of various properties that are required -+# for the Java Security API to look up the algorithms or other -+# facilities implemented by the provider. -+# -+# There must be at least one provider specification in java.security. -+# There is a default provider that comes standard with the JDK. It -+# is called the "SUN" provider, and its Provider subclass -+# named Sun appears in the sun.security.provider package. Thus, the -+# "SUN" provider is registered via the following: -+# -+# security.provider.1=sun.security.provider.Sun -+# -+# (The number 1 is used for the default provider.) -+# -+# Note: Providers can be dynamically registered instead by calls to -+# either the addProvider or insertProviderAt method in the Security -+# class. -+ -+# -+# List of providers and their preference orders (see above): -+# -+security.provider.1=sun.security.provider.Sun -+security.provider.2=sun.security.rsa.SunRsaSign -+security.provider.3=sun.security.ec.SunEC -+security.provider.4=com.sun.net.ssl.internal.ssl.Provider -+security.provider.5=com.sun.crypto.provider.SunJCE -+security.provider.6=sun.security.jgss.SunProvider -+security.provider.7=com.sun.security.sasl.Provider -+security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI -+security.provider.9=sun.security.smartcardio.SunPCSC -+ -+# -+# Sun Provider SecureRandom seed source. -+# -+# Select the primary source of seed data for the "SHA1PRNG" and -+# "NativePRNG" SecureRandom implementations in the "Sun" provider. -+# (Other SecureRandom implementations might also use this property.) -+# -+# On Unix-like systems (for example, Solaris/Linux/MacOS), the -+# "NativePRNG" and "SHA1PRNG" implementations obtains seed data from -+# special device files such as file:/dev/random. -+# -+# On Windows systems, specifying the URLs "file:/dev/random" or -+# "file:/dev/urandom" will enable the native Microsoft CryptoAPI seeding -+# mechanism for SHA1PRNG. -+# -+# By default, an attempt is made to use the entropy gathering device -+# specified by the "securerandom.source" Security property. If an -+# exception occurs while accessing the specified URL: -+# -+# SHA1PRNG: -+# the traditional system/thread activity algorithm will be used. -+# -+# NativePRNG: -+# a default value of /dev/random will be used. If neither -+# are available, the implementation will be disabled. -+# "file" is the only currently supported protocol type. -+# -+# The entropy gathering device can also be specified with the System -+# property "java.security.egd". For example: -+# -+# % java -Djava.security.egd=file:/dev/random MainClass -+# -+# Specifying this System property will override the -+# "securerandom.source" Security property. -+# -+# In addition, if "file:/dev/random" or "file:/dev/urandom" is -+# specified, the "NativePRNG" implementation will be more preferred than -+# SHA1PRNG in the Sun provider. -+# -+securerandom.source=file:/dev/random -+ -+# -+# A list of known strong SecureRandom implementations. -+# -+# To help guide applications in selecting a suitable strong -+# java.security.SecureRandom implementation, Java distributions should -+# indicate a list of known strong implementations using the property. -+# -+# This is a comma-separated list of algorithm and/or algorithm:provider -+# entries. -+# -+securerandom.strongAlgorithms=NativePRNGBlocking:SUN -+ -+# -+# Class to instantiate as the javax.security.auth.login.Configuration -+# provider. -+# -+login.configuration.provider=sun.security.provider.ConfigFile -+ -+# -+# Default login configuration file -+# -+#login.config.url.1=file:${user.home}/.java.login.config -+ -+# -+# Class to instantiate as the system Policy. This is the name of the class -+# that will be used as the Policy object. -+# -+policy.provider=sun.security.provider.PolicyFile -+ -+# The default is to have a single system-wide policy file, -+# and a policy file in the user's home directory. -+policy.url.1=file:${java.home}/lib/security/java.policy -+policy.url.2=file:${user.home}/.java.policy -+ -+# whether or not we expand properties in the policy file -+# if this is set to false, properties (${...}) will not be expanded in policy -+# files. -+policy.expandProperties=true -+ -+# whether or not we allow an extra policy to be passed on the command line -+# with -Djava.security.policy=somefile. Comment out this line to disable -+# this feature. -+policy.allowSystemProperty=true -+ -+# whether or not we look into the IdentityScope for trusted Identities -+# when encountering a 1.1 signed JAR file. If the identity is found -+# and is trusted, we grant it AllPermission. -+policy.ignoreIdentityScope=false -+ -+# -+# Default keystore type. -+# -+keystore.type=jks -+ -+# -+# Controls compatibility mode for the JKS keystore type. -+# -+# When set to 'true', the JKS keystore type supports loading -+# keystore files in either JKS or PKCS12 format. When set to 'false' -+# it supports loading only JKS keystore files. -+# -+keystore.type.compat=true -+ -+# -+# List of comma-separated packages that start with or equal this string -+# will cause a security exception to be thrown when -+# passed to checkPackageAccess unless the -+# corresponding RuntimePermission ("accessClassInPackage."+package) has -+# been granted. -+package.access=sun.,\ -+ com.sun.xml.internal.,\ -+ com.sun.imageio.,\ -+ com.sun.istack.internal.,\ -+ com.sun.jmx.,\ -+ com.sun.media.sound.,\ -+ com.sun.naming.internal.,\ -+ com.sun.proxy.,\ -+ com.sun.corba.se.,\ -+ com.sun.org.apache.bcel.internal.,\ -+ com.sun.org.apache.regexp.internal.,\ -+ com.sun.org.apache.xerces.internal.,\ -+ com.sun.org.apache.xpath.internal.,\ -+ com.sun.org.apache.xalan.internal.extensions.,\ -+ com.sun.org.apache.xalan.internal.lib.,\ -+ com.sun.org.apache.xalan.internal.res.,\ -+ com.sun.org.apache.xalan.internal.templates.,\ -+ com.sun.org.apache.xalan.internal.utils.,\ -+ com.sun.org.apache.xalan.internal.xslt.,\ -+ com.sun.org.apache.xalan.internal.xsltc.cmdline.,\ -+ com.sun.org.apache.xalan.internal.xsltc.compiler.,\ -+ com.sun.org.apache.xalan.internal.xsltc.trax.,\ -+ com.sun.org.apache.xalan.internal.xsltc.util.,\ -+ com.sun.org.apache.xml.internal.res.,\ -+ com.sun.org.apache.xml.internal.resolver.helpers.,\ -+ com.sun.org.apache.xml.internal.resolver.readers.,\ -+ com.sun.org.apache.xml.internal.security.,\ -+ com.sun.org.apache.xml.internal.serializer.utils.,\ -+ com.sun.org.apache.xml.internal.utils.,\ -+ com.sun.org.glassfish.,\ -+ com.oracle.xmlns.internal.,\ -+ com.oracle.webservices.internal.,\ -+ oracle.jrockit.jfr.,\ -+ org.jcp.xml.dsig.internal.,\ -+ jdk.internal.,\ -+ jdk.nashorn.internal.,\ -+ jdk.nashorn.tools.,\ -+ jdk.xml.internal.,\ -+ com.sun.activation.registries. -+ -+# -+# List of comma-separated packages that start with or equal this string -+# will cause a security exception to be thrown when -+# passed to checkPackageDefinition unless the -+# corresponding RuntimePermission ("defineClassInPackage."+package) has -+# been granted. -+# -+# by default, none of the class loaders supplied with the JDK call -+# checkPackageDefinition. -+# -+package.definition=sun.,\ -+ com.sun.xml.internal.,\ -+ com.sun.imageio.,\ -+ com.sun.istack.internal.,\ -+ com.sun.jmx.,\ -+ com.sun.media.sound.,\ -+ com.sun.naming.internal.,\ -+ com.sun.proxy.,\ -+ com.sun.corba.se.,\ -+ com.sun.org.apache.bcel.internal.,\ -+ com.sun.org.apache.regexp.internal.,\ -+ com.sun.org.apache.xerces.internal.,\ -+ com.sun.org.apache.xpath.internal.,\ -+ com.sun.org.apache.xalan.internal.extensions.,\ -+ com.sun.org.apache.xalan.internal.lib.,\ -+ com.sun.org.apache.xalan.internal.res.,\ -+ com.sun.org.apache.xalan.internal.templates.,\ -+ com.sun.org.apache.xalan.internal.utils.,\ -+ com.sun.org.apache.xalan.internal.xslt.,\ -+ com.sun.org.apache.xalan.internal.xsltc.cmdline.,\ -+ com.sun.org.apache.xalan.internal.xsltc.compiler.,\ -+ com.sun.org.apache.xalan.internal.xsltc.trax.,\ -+ com.sun.org.apache.xalan.internal.xsltc.util.,\ -+ com.sun.org.apache.xml.internal.res.,\ -+ com.sun.org.apache.xml.internal.resolver.helpers.,\ -+ com.sun.org.apache.xml.internal.resolver.readers.,\ -+ com.sun.org.apache.xml.internal.security.,\ -+ com.sun.org.apache.xml.internal.serializer.utils.,\ -+ com.sun.org.apache.xml.internal.utils.,\ -+ com.sun.org.glassfish.,\ -+ com.oracle.xmlns.internal.,\ -+ com.oracle.webservices.internal.,\ -+ oracle.jrockit.jfr.,\ -+ org.jcp.xml.dsig.internal.,\ -+ jdk.internal.,\ -+ jdk.nashorn.internal.,\ -+ jdk.nashorn.tools.,\ -+ jdk.xml.internal.,\ -+ com.sun.activation.registries. -+ -+# -+# Determines whether this properties file can be appended to -+# or overridden on the command line via -Djava.security.properties -+# -+security.overridePropertiesFile=true -+ -+# -+# Determines the default key and trust manager factory algorithms for -+# the javax.net.ssl package. -+# -+ssl.KeyManagerFactory.algorithm=SunX509 -+ssl.TrustManagerFactory.algorithm=PKIX -+ -+# -+# The Java-level namelookup cache policy for successful lookups: -+# -+# any negative value: caching forever -+# any positive value: the number of seconds to cache an address for -+# zero: do not cache -+# -+# default value is forever (FOREVER). For security reasons, this -+# caching is made forever when a security manager is set. When a security -+# manager is not set, the default behavior in this implementation -+# is to cache for 30 seconds. -+# -+# NOTE: setting this to anything other than the default value can have -+# serious security implications. Do not set it unless -+# you are sure you are not exposed to DNS spoofing attack. -+# -+#networkaddress.cache.ttl=-1 -+ -+# The Java-level namelookup cache policy for failed lookups: -+# -+# any negative value: cache forever -+# any positive value: the number of seconds to cache negative lookup results -+# zero: do not cache -+# -+# In some Microsoft Windows networking environments that employ -+# the WINS name service in addition to DNS, name service lookups -+# that fail may take a noticeably long time to return (approx. 5 seconds). -+# For this reason the default caching policy is to maintain these -+# results for 10 seconds. -+# -+# -+networkaddress.cache.negative.ttl=10 -+ -+# -+# Properties to configure OCSP for certificate revocation checking -+# -+ -+# Enable OCSP -+# -+# By default, OCSP is not used for certificate revocation checking. -+# This property enables the use of OCSP when set to the value "true". -+# -+# NOTE: SocketPermission is required to connect to an OCSP responder. -+# -+# Example, -+# ocsp.enable=true -+ -+# -+# Location of the OCSP responder -+# -+# By default, the location of the OCSP responder is determined implicitly -+# from the certificate being validated. This property explicitly specifies -+# the location of the OCSP responder. The property is used when the -+# Authority Information Access extension (defined in RFC 3280) is absent -+# from the certificate or when it requires overriding. -+# -+# Example, -+# ocsp.responderURL=http://ocsp.example.net:80 -+ -+# -+# Subject name of the OCSP responder's certificate -+# -+# By default, the certificate of the OCSP responder is that of the issuer -+# of the certificate being validated. This property identifies the certificate -+# of the OCSP responder when the default does not apply. Its value is a string -+# distinguished name (defined in RFC 2253) which identifies a certificate in -+# the set of certificates supplied during cert path validation. In cases where -+# the subject name alone is not sufficient to uniquely identify the certificate -+# then both the "ocsp.responderCertIssuerName" and -+# "ocsp.responderCertSerialNumber" properties must be used instead. When this -+# property is set then those two properties are ignored. -+# -+# Example, -+# ocsp.responderCertSubjectName="CN=OCSP Responder, O=XYZ Corp" -+ -+# -+# Issuer name of the OCSP responder's certificate -+# -+# By default, the certificate of the OCSP responder is that of the issuer -+# of the certificate being validated. This property identifies the certificate -+# of the OCSP responder when the default does not apply. Its value is a string -+# distinguished name (defined in RFC 2253) which identifies a certificate in -+# the set of certificates supplied during cert path validation. When this -+# property is set then the "ocsp.responderCertSerialNumber" property must also -+# be set. When the "ocsp.responderCertSubjectName" property is set then this -+# property is ignored. -+# -+# Example, -+# ocsp.responderCertIssuerName="CN=Enterprise CA, O=XYZ Corp" -+ -+# -+# Serial number of the OCSP responder's certificate -+# -+# By default, the certificate of the OCSP responder is that of the issuer -+# of the certificate being validated. This property identifies the certificate -+# of the OCSP responder when the default does not apply. Its value is a string -+# of hexadecimal digits (colon or space separators may be present) which -+# identifies a certificate in the set of certificates supplied during cert path -+# validation. When this property is set then the "ocsp.responderCertIssuerName" -+# property must also be set. When the "ocsp.responderCertSubjectName" property -+# is set then this property is ignored. -+# -+# Example, -+# ocsp.responderCertSerialNumber=2A:FF:00 -+ -+# -+# Policy for failed Kerberos KDC lookups: -+# -+# When a KDC is unavailable (network error, service failure, etc), it is -+# put inside a blacklist and accessed less often for future requests. The -+# value (case-insensitive) for this policy can be: -+# -+# tryLast -+# KDCs in the blacklist are always tried after those not on the list. -+# -+# tryLess[:max_retries,timeout] -+# KDCs in the blacklist are still tried by their order in the configuration, -+# but with smaller max_retries and timeout values. max_retries and timeout -+# are optional numerical parameters (default 1 and 5000, which means once -+# and 5 seconds). Please notes that if any of the values defined here is -+# more than what is defined in krb5.conf, it will be ignored. -+# -+# Whenever a KDC is detected as available, it is removed from the blacklist. -+# The blacklist is reset when krb5.conf is reloaded. You can add -+# refreshKrb5Config=true to a JAAS configuration file so that krb5.conf is -+# reloaded whenever a JAAS authentication is attempted. -+# -+# Example, -+# krb5.kdc.bad.policy = tryLast -+# krb5.kdc.bad.policy = tryLess:2,2000 -+krb5.kdc.bad.policy = tryLast -+ -+# Algorithm restrictions for certification path (CertPath) processing -+# -+# In some environments, certain algorithms or key lengths may be undesirable -+# for certification path building and validation. For example, "MD2" is -+# generally no longer considered to be a secure hash algorithm. This section -+# describes the mechanism for disabling algorithms based on algorithm name -+# and/or key length. This includes algorithms used in certificates, as well -+# as revocation information such as CRLs and signed OCSP Responses. -+# The syntax of the disabled algorithm string is described as follows: -+# DisabledAlgorithms: -+# " DisabledAlgorithm { , DisabledAlgorithm } " -+# -+# DisabledAlgorithm: -+# AlgorithmName [Constraint] { '&' Constraint } -+# -+# AlgorithmName: -+# (see below) -+# -+# Constraint: -+# KeySizeConstraint | CAConstraint | DenyAfterConstraint | -+# UsageConstraint -+# -+# KeySizeConstraint: -+# keySize Operator KeyLength -+# -+# Operator: -+# <= | < | == | != | >= | > -+# -+# KeyLength: -+# Integer value of the algorithm's key length in bits -+# -+# CAConstraint: -+# jdkCA -+# -+# DenyAfterConstraint: -+# denyAfter YYYY-MM-DD -+# -+# UsageConstraint: -+# usage [TLSServer] [TLSClient] [SignedJAR] -+# -+# The "AlgorithmName" is the standard algorithm name of the disabled -+# algorithm. See "Java Cryptography Architecture Standard Algorithm Name -+# Documentation" for information about Standard Algorithm Names. Matching -+# is performed using a case-insensitive sub-element matching rule. (For -+# example, in "SHA1withECDSA" the sub-elements are "SHA1" for hashing and -+# "ECDSA" for signatures.) If the assertion "AlgorithmName" is a -+# sub-element of the certificate algorithm name, the algorithm will be -+# rejected during certification path building and validation. For example, -+# the assertion algorithm name "DSA" will disable all certificate algorithms -+# that rely on DSA, such as NONEwithDSA, SHA1withDSA. However, the assertion -+# will not disable algorithms related to "ECDSA". -+# -+# A "Constraint" defines restrictions on the keys and/or certificates for -+# a specified AlgorithmName: -+# -+# KeySizeConstraint: -+# keySize Operator KeyLength -+# The constraint requires a key of a valid size range if the -+# "AlgorithmName" is of a key algorithm. The "KeyLength" indicates -+# the key size specified in number of bits. For example, -+# "RSA keySize <= 1024" indicates that any RSA key with key size less -+# than or equal to 1024 bits should be disabled, and -+# "RSA keySize < 1024, RSA keySize > 2048" indicates that any RSA key -+# with key size less than 1024 or greater than 2048 should be disabled. -+# This constraint is only used on algorithms that have a key size. -+# -+# CAConstraint: -+# jdkCA -+# This constraint prohibits the specified algorithm only if the -+# algorithm is used in a certificate chain that terminates at a marked -+# trust anchor in the lib/security/cacerts keystore. If the jdkCA -+# constraint is not set, then all chains using the specified algorithm -+# are restricted. jdkCA may only be used once in a DisabledAlgorithm -+# expression. -+# Example: To apply this constraint to SHA-1 certificates, include -+# the following: "SHA1 jdkCA" -+# -+# DenyAfterConstraint: -+# denyAfter YYYY-MM-DD -+# This constraint prohibits a certificate with the specified algorithm -+# from being used after the date regardless of the certificate's -+# validity. JAR files that are signed and timestamped before the -+# constraint date with certificates containing the disabled algorithm -+# will not be restricted. The date is processed in the UTC timezone. -+# This constraint can only be used once in a DisabledAlgorithm -+# expression. -+# Example: To deny usage of RSA 2048 bit certificates after Feb 3 2020, -+# use the following: "RSA keySize == 2048 & denyAfter 2020-02-03" -+# -+# UsageConstraint: -+# usage [TLSServer] [TLSClient] [SignedJAR] -+# This constraint prohibits the specified algorithm for -+# a specified usage. This should be used when disabling an algorithm -+# for all usages is not practical. 'TLSServer' restricts the algorithm -+# in TLS server certificate chains when server authentication is -+# performed. 'TLSClient' restricts the algorithm in TLS client -+# certificate chains when client authentication is performed. -+# 'SignedJAR' constrains use of certificates in signed jar files. -+# The usage type follows the keyword and more than one usage type can -+# be specified with a whitespace delimiter. -+# Example: "SHA1 usage TLSServer TLSClient" -+# -+# When an algorithm must satisfy more than one constraint, it must be -+# delimited by an ampersand '&'. For example, to restrict certificates in a -+# chain that terminate at a distribution provided trust anchor and contain -+# RSA keys that are less than or equal to 1024 bits, add the following -+# constraint: "RSA keySize <= 1024 & jdkCA". -+# -+# All DisabledAlgorithms expressions are processed in the order defined in the -+# property. This requires lower keysize constraints to be specified -+# before larger keysize constraints of the same algorithm. For example: -+# "RSA keySize < 1024 & jdkCA, RSA keySize < 2048". -+# -+# Note: The algorithm restrictions do not apply to trust anchors or -+# self-signed certificates. -+# -+# Note: This property is currently used by Oracle's PKIX implementation. It -+# is not guaranteed to be examined and used by other implementations. -+# -+# Example: -+# jdk.certpath.disabledAlgorithms=MD2, DSA, RSA keySize < 2048 -+# -+# -+jdk.certpath.disabledAlgorithms=MD2, MD5, SHA1 jdkCA & usage TLSServer, \ -+ RSA keySize < 1024, DSA keySize < 1024, EC keySize < 224 -+ -+# -+# Algorithm restrictions for signed JAR files -+# -+# In some environments, certain algorithms or key lengths may be undesirable -+# for signed JAR validation. For example, "MD2" is generally no longer -+# considered to be a secure hash algorithm. This section describes the -+# mechanism for disabling algorithms based on algorithm name and/or key length. -+# JARs signed with any of the disabled algorithms or key sizes will be treated -+# as unsigned. -+# -+# The syntax of the disabled algorithm string is described as follows: -+# DisabledAlgorithms: -+# " DisabledAlgorithm { , DisabledAlgorithm } " -+# -+# DisabledAlgorithm: -+# AlgorithmName [Constraint] { '&' Constraint } -+# -+# AlgorithmName: -+# (see below) -+# -+# Constraint: -+# KeySizeConstraint | DenyAfterConstraint -+# -+# KeySizeConstraint: -+# keySize Operator KeyLength -+# -+# DenyAfterConstraint: -+# denyAfter YYYY-MM-DD -+# -+# Operator: -+# <= | < | == | != | >= | > -+# -+# KeyLength: -+# Integer value of the algorithm's key length in bits -+# -+# Note: This property is currently used by the JDK Reference -+# implementation. It is not guaranteed to be examined and used by other -+# implementations. -+# -+# See "jdk.certpath.disabledAlgorithms" for syntax descriptions. -+# -+jdk.jar.disabledAlgorithms=MD2, MD5, RSA keySize < 1024, DSA keySize < 1024 -+ -+# -+# Algorithm restrictions for Secure Socket Layer/Transport Layer Security -+# (SSL/TLS) processing -+# -+# In some environments, certain algorithms or key lengths may be undesirable -+# when using SSL/TLS. This section describes the mechanism for disabling -+# algorithms during SSL/TLS security parameters negotiation, including -+# protocol version negotiation, cipher suites selection, peer authentication -+# and key exchange mechanisms. -+# -+# Disabled algorithms will not be negotiated for SSL/TLS connections, even -+# if they are enabled explicitly in an application. -+# -+# For PKI-based peer authentication and key exchange mechanisms, this list -+# of disabled algorithms will also be checked during certification path -+# building and validation, including algorithms used in certificates, as -+# well as revocation information such as CRLs and signed OCSP Responses. -+# This is in addition to the jdk.certpath.disabledAlgorithms property above. -+# -+# See the specification of "jdk.certpath.disabledAlgorithms" for the -+# syntax of the disabled algorithm string. -+# -+# Note: The algorithm restrictions do not apply to trust anchors or -+# self-signed certificates. -+# -+# Note: This property is currently used by the JDK Reference implementation. -+# It is not guaranteed to be examined and used by other implementations. -+# -+# Example: -+# jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048 -+jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, DH keySize < 1024, \ -+ EC keySize < 224, 3DES_EDE_CBC, anon, NULL -+ -+# Legacy algorithms for Secure Socket Layer/Transport Layer Security (SSL/TLS) -+# processing in JSSE implementation. -+# -+# In some environments, a certain algorithm may be undesirable but it -+# cannot be disabled because of its use in legacy applications. Legacy -+# algorithms may still be supported, but applications should not use them -+# as the security strength of legacy algorithms are usually not strong enough -+# in practice. -+# -+# During SSL/TLS security parameters negotiation, legacy algorithms will -+# not be negotiated unless there are no other candidates. -+# -+# The syntax of the legacy algorithms string is described as this Java -+# BNF-style: -+# LegacyAlgorithms: -+# " LegacyAlgorithm { , LegacyAlgorithm } " -+# -+# LegacyAlgorithm: -+# AlgorithmName (standard JSSE algorithm name) -+# -+# See the specification of security property "jdk.certpath.disabledAlgorithms" -+# for the syntax and description of the "AlgorithmName" notation. -+# -+# Per SSL/TLS specifications, cipher suites have the form: -+# SSL_KeyExchangeAlg_WITH_CipherAlg_MacAlg -+# or -+# TLS_KeyExchangeAlg_WITH_CipherAlg_MacAlg -+# -+# For example, the cipher suite TLS_RSA_WITH_AES_128_CBC_SHA uses RSA as the -+# key exchange algorithm, AES_128_CBC (128 bits AES cipher algorithm in CBC -+# mode) as the cipher (encryption) algorithm, and SHA-1 as the message digest -+# algorithm for HMAC. -+# -+# The LegacyAlgorithm can be one of the following standard algorithm names: -+# 1. JSSE cipher suite name, e.g., TLS_RSA_WITH_AES_128_CBC_SHA -+# 2. JSSE key exchange algorithm name, e.g., RSA -+# 3. JSSE cipher (encryption) algorithm name, e.g., AES_128_CBC -+# 4. JSSE message digest algorithm name, e.g., SHA -+# -+# See SSL/TLS specifications and "Java Cryptography Architecture Standard -+# Algorithm Name Documentation" for information about the algorithm names. -+# -+# Note: This property is currently used by the JDK Reference implementation. -+# It is not guaranteed to be examined and used by other implementations. -+# There is no guarantee the property will continue to exist or be of the -+# same syntax in future releases. -+# -+# Example: -+# jdk.tls.legacyAlgorithms=DH_anon, DES_CBC, SSL_RSA_WITH_RC4_128_MD5 -+# -+jdk.tls.legacyAlgorithms= \ -+ K_NULL, C_NULL, M_NULL, \ -+ DH_anon, ECDH_anon, \ -+ RC4_128, RC4_40, DES_CBC, DES40_CBC, \ -+ 3DES_EDE_CBC -+ -+# The pre-defined default finite field Diffie-Hellman ephemeral (DHE) -+# parameters for Transport Layer Security (SSL/TLS/DTLS) processing. -+# -+# In traditional SSL/TLS/DTLS connections where finite field DHE parameters -+# negotiation mechanism is not used, the server offers the client group -+# parameters, base generator g and prime modulus p, for DHE key exchange. -+# It is recommended to use dynamic group parameters. This property defines -+# a mechanism that allows you to specify custom group parameters. -+# -+# The syntax of this property string is described as this Java BNF-style: -+# DefaultDHEParameters: -+# DefinedDHEParameters { , DefinedDHEParameters } -+# -+# DefinedDHEParameters: -+# "{" DHEPrimeModulus , DHEBaseGenerator "}" -+# -+# DHEPrimeModulus: -+# HexadecimalDigits -+# -+# DHEBaseGenerator: -+# HexadecimalDigits -+# -+# HexadecimalDigits: -+# HexadecimalDigit { HexadecimalDigit } -+# -+# HexadecimalDigit: one of -+# 0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f -+# -+# Whitespace characters are ignored. -+# -+# The "DefinedDHEParameters" defines the custom group parameters, prime -+# modulus p and base generator g, for a particular size of prime modulus p. -+# The "DHEPrimeModulus" defines the hexadecimal prime modulus p, and the -+# "DHEBaseGenerator" defines the hexadecimal base generator g of a group -+# parameter. It is recommended to use safe primes for the custom group -+# parameters. -+# -+# If this property is not defined or the value is empty, the underlying JSSE -+# provider's default group parameter is used for each connection. -+# -+# If the property value does not follow the grammar, or a particular group -+# parameter is not valid, the connection will fall back and use the -+# underlying JSSE provider's default group parameter. -+# -+# Note: This property is currently used by OpenJDK's JSSE implementation. It -+# is not guaranteed to be examined and used by other implementations. -+# -+# Example: -+# jdk.tls.server.defaultDHEParameters= -+# { \ -+# FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 \ -+# 29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD \ -+# EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 \ -+# E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED \ -+# EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE65381 \ -+# FFFFFFFF FFFFFFFF, 2} -+ -+# Cryptographic Jurisdiction Policy defaults -+# -+# Import and export control rules on cryptographic software vary from -+# country to country. By default, the JDK provides two different sets of -+# cryptographic policy files: -+# -+# unlimited: These policy files contain no restrictions on cryptographic -+# strengths or algorithms. -+# -+# limited: These policy files contain more restricted cryptographic -+# strengths, and are still available if your country or -+# usage requires the traditional restrictive policy. -+# -+# The JDK JCE framework uses the unlimited policy files by default. -+# However the user may explicitly choose a set either by defining the -+# "crypto.policy" Security property or by installing valid JCE policy -+# jar files into the traditional JDK installation location. To better -+# support older JDK Update releases, the "crypto.policy" property is not -+# defined by default. See below for more information. -+# -+# The following logic determines which policy files are used: -+# -+# refers to the directory where the JRE was -+# installed and may be determined using the "java.home" -+# System property. -+# -+# 1. If the Security property "crypto.policy" has been defined, -+# then the following mechanism is used: -+# -+# The policy files are stored as jar files in subdirectories of -+# /lib/security/policy. Each directory contains a complete -+# set of policy files. -+# -+# The "crypto.policy" Security property controls the directory -+# selection, and thus the effective cryptographic policy. -+# -+# The default set of directories is: -+# -+# limited | unlimited -+# -+# 2. If the "crypto.policy" property is not set and the traditional -+# US_export_policy.jar and local_policy.jar files -+# (e.g. limited/unlimited) are found in the legacy -+# /lib/security directory, then the rules embedded within -+# those jar files will be used. This helps preserve compatibility -+# for users upgrading from an older installation. -+# -+# 3. If the jar files are not present in the legacy location -+# and the "crypto.policy" Security property is not defined, -+# then the JDK will use the unlimited settings (equivalent to -+# crypto.policy=unlimited) -+# -+# Please see the JCA documentation for additional information on these -+# files and formats. -+# -+# YOU ARE ADVISED TO CONSULT YOUR EXPORT/IMPORT CONTROL COUNSEL OR ATTORNEY -+# TO DETERMINE THE EXACT REQUIREMENTS. -+# -+# Please note that the JCE for Java SE, including the JCE framework, -+# cryptographic policy files, and standard JCE providers provided with -+# the Java SE, have been reviewed and approved for export as mass market -+# encryption item by the US Bureau of Industry and Security. -+# -+# Note: This property is currently used by the JDK Reference implementation. -+# It is not guaranteed to be examined and used by other implementations. -+# -+#crypto.policy=unlimited -+ -+# -+# The policy for the XML Signature secure validation mode. The mode is -+# enabled by setting the property "org.jcp.xml.dsig.secureValidation" to -+# true with the javax.xml.crypto.XMLCryptoContext.setProperty() method, -+# or by running the code with a SecurityManager. -+# -+# Policy: -+# Constraint {"," Constraint } -+# Constraint: -+# AlgConstraint | MaxTransformsConstraint | MaxReferencesConstraint | -+# ReferenceUriSchemeConstraint | KeySizeConstraint | OtherConstraint -+# AlgConstraint -+# "disallowAlg" Uri -+# MaxTransformsConstraint: -+# "maxTransforms" Integer -+# MaxReferencesConstraint: -+# "maxReferences" Integer -+# ReferenceUriSchemeConstraint: -+# "disallowReferenceUriSchemes" String { String } -+# KeySizeConstraint: -+# "minKeySize" KeyAlg Integer -+# OtherConstraint: -+# "noDuplicateIds" | "noRetrievalMethodLoops" -+# -+# For AlgConstraint, Uri is the algorithm URI String that is not allowed. -+# See the XML Signature Recommendation for more information on algorithm -+# URI Identifiers. For KeySizeConstraint, KeyAlg is the standard algorithm -+# name of the key type (ex: "RSA"). If the MaxTransformsConstraint, -+# MaxReferencesConstraint or KeySizeConstraint (for the same key type) is -+# specified more than once, only the last entry is enforced. -+# -+# Note: This property is currently used by the JDK Reference implementation. It -+# is not guaranteed to be examined and used by other implementations. -+# -+jdk.xml.dsig.secureValidationPolicy=\ -+ disallowAlg http://www.w3.org/TR/1999/REC-xslt-19991116,\ -+ disallowAlg http://www.w3.org/2001/04/xmldsig-more#rsa-md5,\ -+ disallowAlg http://www.w3.org/2001/04/xmldsig-more#hmac-md5,\ -+ disallowAlg http://www.w3.org/2001/04/xmldsig-more#md5,\ -+ maxTransforms 5,\ -+ maxReferences 30,\ -+ disallowReferenceUriSchemes file http https,\ -+ minKeySize RSA 1024,\ -+ minKeySize DSA 1024,\ -+ minKeySize EC 224,\ -+ noDuplicateIds,\ -+ noRetrievalMethodLoops -+ -+# -+# Serialization process-wide filter -+# -+# A filter, if configured, is used by java.io.ObjectInputStream during -+# deserialization to check the contents of the stream. -+# A filter is configured as a sequence of patterns, each pattern is either -+# matched against the name of a class in the stream or defines a limit. -+# Patterns are separated by ";" (semicolon). -+# Whitespace is significant and is considered part of the pattern. -+# -+# If the system property jdk.serialFilter is also specified, it supersedes -+# the security property value defined here. -+# -+# If a pattern includes a "=", it sets a limit. -+# If a limit appears more than once the last value is used. -+# Limits are checked before classes regardless of the order in the sequence of patterns. -+# If any of the limits are exceeded, the filter status is REJECTED. -+# -+# maxdepth=value - the maximum depth of a graph -+# maxrefs=value - the maximum number of internal references -+# maxbytes=value - the maximum number of bytes in the input stream -+# maxarray=value - the maximum array length allowed -+# -+# Other patterns, from left to right, match the class or package name as -+# returned from Class.getName. -+# If the class is an array type, the class or package to be matched is the element type. -+# Arrays of any number of dimensions are treated the same as the element type. -+# For example, a pattern of "!example.Foo", rejects creation of any instance or -+# array of example.Foo. -+# -+# If the pattern starts with "!", the status is REJECTED if the remaining pattern -+# is matched; otherwise the status is ALLOWED if the pattern matches. -+# If the pattern ends with ".**" it matches any class in the package and all subpackages. -+# If the pattern ends with ".*" it matches any class in the package. -+# If the pattern ends with "*", it matches any class with the pattern as a prefix. -+# If the pattern is equal to the class name, it matches. -+# Otherwise, the status is UNDECIDED. -+# -+# Primitive types are not configurable with this filter. -+# -+#jdk.serialFilter=pattern;pattern -+ -+# -+# RMI Registry Serial Filter -+# -+# The filter pattern uses the same format as jdk.serialFilter. -+# This filter can override the builtin filter if additional types need to be -+# allowed or rejected from the RMI Registry or to decrease limits but not -+# to increase limits. -+# If the limits (maxdepth, maxrefs, or maxbytes) are exceeded, the object is rejected. -+# -+# The maxdepth of any array passed to the RMI Registry is set to -+# 10000. The maximum depth of the graph is set to 20. -+# These limits can be reduced via the maxarray, maxdepth limits. -+# -+#sun.rmi.registry.registryFilter=pattern;pattern -+ -+# -+# Array construction of any component type, including subarrays and arrays of -+# primitives, are allowed unless the length is greater than the maxarray limit. -+# The filter is applied to each array element. -+# -+# The built-in filter allows subclasses of allowed classes and -+# can approximately be represented as the pattern: -+# -+#sun.rmi.registry.registryFilter=\ -+# maxarray=1000000;\ -+# maxdepth=20;\ -+# java.lang.String;\ -+# java.lang.Number;\ -+# java.lang.reflect.Proxy;\ -+# java.rmi.Remote;\ -+# sun.rmi.server.UnicastRef;\ -+# sun.rmi.server.RMIClientSocketFactory;\ -+# sun.rmi.server.RMIServerSocketFactory;\ -+# java.rmi.activation.ActivationID;\ -+# java.rmi.server.UID -+# -+# RMI Distributed Garbage Collector (DGC) Serial Filter -+# -+# The filter pattern uses the same format as jdk.serialFilter. -+# This filter can override the builtin filter if additional types need to be -+# allowed or rejected from the RMI DGC. -+# -+# The builtin DGC filter can approximately be represented as the filter pattern: -+# -+#sun.rmi.transport.dgcFilter=\ -+# java.rmi.server.ObjID;\ -+# java.rmi.server.UID;\ -+# java.rmi.dgc.VMID;\ -+# java.rmi.dgc.Lease;\ -+# maxdepth=5;maxarray=10000 -+ -+# CORBA ORBIorTypeCheckRegistryFilter -+# Type check enhancement for ORB::string_to_object processing -+# -+# An IOR type check filter, if configured, is used by an ORB during -+# an ORB::string_to_object invocation to check the veracity of the type encoded -+# in the ior string. -+# -+# The filter pattern consists of a semi-colon separated list of class names. -+# The configured list contains the binary class names of the IDL interface types -+# corresponding to the IDL stub class to be instantiated. -+# As such, a filter specifies a list of IDL stub classes that will be -+# allowed by an ORB when an ORB::string_to_object is invoked. -+# It is used to specify a white list configuration of acceptable -+# IDL stub types which may be contained in a stringified IOR -+# parameter passed as input to an ORB::string_to_object method. -+# -+# Note: This property is currently used by the JDK Reference implementation. -+# It is not guaranteed to be examined and used by other implementations. -+# -+#com.sun.CORBA.ORBIorTypeCheckRegistryFilter=binary_class_name;binary_class_name -+ -+# -+# JCEKS Encrypted Key Serial Filter -+# -+# This filter, if configured, is used by the JCEKS KeyStore during the -+# deserialization of the encrypted Key object stored inside a key entry. -+# If not configured or the filter result is UNDECIDED (i.e. none of the patterns -+# matches), the filter configured by jdk.serialFilter will be consulted. -+# -+# If the system property jceks.key.serialFilter is also specified, it supersedes -+# the security property value defined here. -+# -+# The filter pattern uses the same format as jdk.serialFilter. The default -+# pattern allows java.lang.Enum, java.security.KeyRep, java.security.KeyRep$Type, -+# and javax.crypto.spec.SecretKeySpec and rejects all the others. -+jceks.key.serialFilter = java.lang.Enum;java.security.KeyRep;\ -+ java.security.KeyRep$Type;javax.crypto.spec.SecretKeySpec;!* ---- ./jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/com/sun/java/util/jar/pack/jni.cpp Sun Feb 10 09:27:00 2019 -0800 -@@ -292,7 +292,7 @@ - - if (uPtr->aborting()) { - THROW_IOE(uPtr->get_abort_message()); -- return false; -+ return null; - } - - // We have fetched all the files. -@@ -310,7 +310,7 @@ - JNIEXPORT jlong JNICALL - Java_com_sun_java_util_jar_pack_NativeUnpack_finish(JNIEnv *env, jobject pObj) { - unpacker* uPtr = get_unpacker(env, pObj, false); -- CHECK_EXCEPTION_RETURN_VALUE(uPtr, NULL); -+ CHECK_EXCEPTION_RETURN_VALUE(uPtr, 0L); - size_t consumed = uPtr->input_consumed(); - free_unpacker(env, pObj, uPtr); - return consumed; ---- ./jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/com/sun/java/util/jar/pack/zip.cpp Sun Feb 10 09:27:00 2019 -0800 -@@ -62,7 +62,7 @@ - - #endif // End of ZLIB - --#ifdef _BIG_ENDIAN -+#ifdef VM_BIG_ENDIAN - #define SWAP_BYTES(a) \ - ((((a) << 8) & 0xff00) | 0x00ff) & (((a) >> 8) | 0xff00) - #else ---- ./jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/com/sun/media/sound/DirectAudioDevice.c Sun Feb 10 09:27:00 2019 -0800 -@@ -121,7 +121,7 @@ - } - - /* conversion from/to 16 bit signed little endian to native endian samples */ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - #define MAP_LE_SHORT2SAMPLE(sh) ((MAP_Sample) (sh)) - #define MAP_SAMPLE2LE_SHORT(sample) (sample) - #define MAP_SAMPLE2LE_SHORT_CLIP(sample) MAP_ClipAndConvertToShort(sample) -@@ -132,7 +132,7 @@ - #endif - - /* conversion from/to 16 bit signed big endian to native endian samples */ --#ifndef _LITTLE_ENDIAN -+#ifndef VM_LITTLE_ENDIAN - #define MAP_BE_SHORT2SAMPLE(sh) ((MAP_Sample) (sh)) - #define MAP_SAMPLE2BE_SHORT(sample) (sample) - #define MAP_SAMPLE2BE_SHORT_CLIP(sample) MAP_ClipAndConvertToShort(sample) -@@ -151,7 +151,7 @@ - #define MAP_SAMPLE2INT8_CLIP(sample) MAP_ClipAndConvertToByte(sample) - - /* macros for endian conversion */ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - #define MAP_NATIVE2LE16(a) (a) - #define MAP_NATIVE2BE16(a) MAP_SWAP16_impl(a) - #define MAP_NATIVE2LE32(a) (a) ---- ./jdk/src/share/native/com/sun/media/sound/Utilities.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/com/sun/media/sound/Utilities.c Sun Feb 10 09:27:00 2019 -0800 -@@ -28,7 +28,7 @@ - - - int UTIL_IsBigEndianPlatform() { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - return 0; - #else - return 1; ---- ./jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h Sun Feb 10 09:27:00 2019 -0800 -@@ -40,7 +40,7 @@ - #endif - #endif - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - #define __HI(x) *(1+(int*)&x) - #define __LO(x) *(int*)&x - #define __HIp(x) *(1+(int*)x) ---- ./jdk/src/share/native/sun/awt/image/awt_parseImage.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/image/awt_parseImage.c Sun Feb 10 09:27:00 2019 -0800 -@@ -624,7 +624,7 @@ - switch(type) { - case java_awt_image_BufferedImage_TYPE_INT_ARGB: - case java_awt_image_BufferedImage_TYPE_INT_ARGB_PRE: --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - colorOrder[0] = 2; - colorOrder[1] = 1; - colorOrder[2] = 0; -@@ -637,7 +637,7 @@ - #endif - break; - case java_awt_image_BufferedImage_TYPE_INT_BGR: --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - colorOrder[0] = 0; - colorOrder[1] = 1; - colorOrder[2] = 2; -@@ -648,7 +648,7 @@ - #endif - break; - case java_awt_image_BufferedImage_TYPE_INT_RGB: --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - colorOrder[0] = 2; - colorOrder[1] = 1; - colorOrder[2] = 0; ---- ./jdk/src/share/native/sun/awt/medialib/awt_ImagingLib.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/awt_ImagingLib.c Sun Feb 10 09:27:00 2019 -0800 -@@ -1198,7 +1198,7 @@ - - #define NLUT 8 - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - #define INDEXES { 3, 2, 1, 0, 7, 6, 5, 4 } - #else - #define INDEXES { 0, 1, 2, 3, 4, 5, 6, 7 } ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv2x2_f.c Sun Feb 10 09:27:00 2019 -0800 -@@ -86,7 +86,7 @@ - #endif /* MLIB_USE_FTOI_CLAMPING */ - - /***************************************************************/ --#if defined(_LITTLE_ENDIAN) && !defined(_NO_LONGLONG) -+#if defined(VM_LITTLE_ENDIAN) && !defined(_NO_LONGLONG) - - /* NB: Explicit cast to DTYPE is necessary to avoid warning from Microsoft VC compiler. - And we need to explicitly define cast behavior if source exceeds destination range. -@@ -103,7 +103,7 @@ - dp[0 ] = (DTYPE) ((res0) & DTYPE_MASK); \ - dp[chan1] = (DTYPE) ((res1) & DTYPE_MASK) - --#endif /* defined(_LITTLE_ENDIAN) && !defined(_NO_LONGLONG) */ -+#endif /* defined(VM_LITTLE_ENDIAN) && !defined(_NO_LONGLONG) */ - - /***************************************************************/ - #ifdef _NO_LONGLONG -@@ -114,17 +114,17 @@ - - #else /* _NO_LONGLONG */ - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[chan1]) << 32) | ((mlib_s64)sp[0] & 0xffffffff) - --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[0]) << 32) | ((mlib_s64)sp[chan1] & 0xffffffff) - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - #endif /* _NO_LONGLONG */ - ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16ext.c Sun Feb 10 09:27:00 2019 -0800 -@@ -126,7 +126,7 @@ - #define D2I(x) CLAMP_S32((x) SAT_OFF) - - /***************************************************************/ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define STORE2(res0, res1) \ - dp[0 ] = res1; \ -@@ -138,7 +138,7 @@ - dp[0 ] = res0; \ - dp[chan1] = res1 - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /***************************************************************/ - #ifdef _NO_LONGLONG -@@ -149,17 +149,17 @@ - - #else /* _NO_LONGLONG */ - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[chan1]) << 32) | S64TOS32((mlib_s64)sp[0]) - --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[0]) << 32) | S64TOS32((mlib_s64)sp[chan1]) - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - #endif /* _NO_LONGLONG */ - - /***************************************************************/ ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_16nw.c Sun Feb 10 09:27:00 2019 -0800 -@@ -94,7 +94,7 @@ - #define D2I(x) CLAMP_S32((x) SAT_OFF) - - /***************************************************************/ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define STORE2(res0, res1) \ - dp[0 ] = res1; \ -@@ -106,7 +106,7 @@ - dp[0 ] = res0; \ - dp[chan1] = res1 - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /***************************************************************/ - #ifdef _NO_LONGLONG -@@ -117,17 +117,17 @@ - - #else /* _NO_LONGLONG */ - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[chan1]) << 32) | S64TOS32((mlib_s64)sp[0]) - --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[0]) << 32) | S64TOS32((mlib_s64)sp[chan1]) - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - #endif /* _NO_LONGLONG */ - - /***************************************************************/ ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8ext.c Sun Feb 10 09:27:00 2019 -0800 -@@ -126,7 +126,7 @@ - #define D2I(x) CLAMP_S32((x) SAT_OFF) - - /***************************************************************/ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define STORE2(res0, res1) \ - dp[0 ] = res1; \ -@@ -138,7 +138,7 @@ - dp[0 ] = res0; \ - dp[chan1] = res1 - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /***************************************************************/ - #ifdef _NO_LONGLONG -@@ -149,17 +149,17 @@ - - #else /* _NO_LONGLONG */ - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[chan1]) << 32) | S64TOS32((mlib_s64)sp[0]) - --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[0]) << 32) | S64TOS32((mlib_s64)sp[chan1]) - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - #endif /* _NO_LONGLONG */ - - /***************************************************************/ ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_8nw.c Sun Feb 10 09:27:00 2019 -0800 -@@ -95,7 +95,7 @@ - #define D2I(x) CLAMP_S32((x) SAT_OFF) - - /***************************************************************/ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define STORE2(res0, res1) \ - dp[0 ] = res1; \ -@@ -107,7 +107,7 @@ - dp[0 ] = res0; \ - dp[chan1] = res1 - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /***************************************************************/ - #ifdef _NO_LONGLONG -@@ -118,17 +118,17 @@ - - #else /* _NO_LONGLONG */ - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[chan1]) << 32) | S64TOS32((mlib_s64)sp[0]) - --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[0]) << 32) | S64TOS32((mlib_s64)sp[chan1]) - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - #endif /* _NO_LONGLONG */ - - /***************************************************************/ ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16ext.c Sun Feb 10 09:27:00 2019 -0800 -@@ -126,7 +126,7 @@ - #define D2I(x) CLAMP_S32((x) SAT_OFF) - - /***************************************************************/ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define STORE2(res0, res1) \ - dp[0 ] = res1; \ -@@ -138,7 +138,7 @@ - dp[0 ] = res0; \ - dp[chan1] = res1 - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /***************************************************************/ - #ifdef _NO_LONGLONG -@@ -149,17 +149,17 @@ - - #else /* _NO_LONGLONG */ - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[chan1]) << 32) | S64TOS32((mlib_s64)sp[0]) - --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[0]) << 32) | S64TOS32((mlib_s64)sp[chan1]) - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - #endif /* _NO_LONGLONG */ - - /***************************************************************/ ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageConv_u16nw.c Sun Feb 10 09:27:00 2019 -0800 -@@ -94,7 +94,7 @@ - #define D2I(x) CLAMP_S32((x) SAT_OFF) - - /***************************************************************/ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define STORE2(res0, res1) \ - dp[0 ] = res1; \ -@@ -106,7 +106,7 @@ - dp[0 ] = res0; \ - dp[chan1] = res1 - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /***************************************************************/ - #ifdef _NO_LONGLONG -@@ -117,17 +117,17 @@ - - #else /* _NO_LONGLONG */ - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[chan1]) << 32) | S64TOS32((mlib_s64)sp[0]) - --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - - #define LOAD_BUFF(buff) \ - *(mlib_s64*)(buff + i) = (((mlib_s64)sp[0]) << 32) | S64TOS32((mlib_s64)sp[chan1]) - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - #endif /* _NO_LONGLONG */ - - /***************************************************************/ ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageCopy_Bit.c Sun Feb 10 09:27:00 2019 -0800 -@@ -95,7 +95,7 @@ - dst = dp[0]; - if (ld_offset + size < 32) { - dmask = (mask0 << (32 - size)) >> ld_offset; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src0 = (src0 << 24) | ((src0 & 0xFF00) << 8) | ((src0 >> 8) & 0xFF00) | (src0 >> 24); - src = (src0 >> (ld_offset - ls_offset)); - dst = (dst << 24) | ((dst & 0xFF00) << 8) | ((dst >> 8) & 0xFF00) | (dst >> 24); -@@ -104,12 +104,12 @@ - #else - src = (src0 >> (ld_offset - ls_offset)); - dp[0] = (dst & (~dmask)) | (src & dmask); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - return; - } - - dmask = mask0 >> ld_offset; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src0 = (src0 << 24) | ((src0 & 0xFF00) << 8) | ((src0 >> 8) & 0xFF00) | (src0 >> 24); - src = (src0 >> (ld_offset - ls_offset)); - dst = (dst << 24) | ((dst & 0xFF00) << 8) | ((dst >> 8) & 0xFF00) | (dst >> 24); -@@ -118,7 +118,7 @@ - #else - src = (src0 >> (ld_offset - ls_offset)); - dp[0] = (dst & ~dmask) | (src & dmask); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - j = 32 - ld_offset; - dp++; - ls_offset += j; -@@ -131,7 +131,7 @@ - - if (ld_offset + size < 32) { - dmask = (mask0 << (32 - size)) >> ld_offset; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src0 = (src0 << 24) | ((src0 & 0xFF00) << 8) | ((src0 >> 8) & 0xFF00) | (src0 >> 24); - src1 = (src1 << 24) | ((src1 & 0xFF00) << 8) | ((src1 >> 8) & 0xFF00) | (src1 >> 24); - src = (src0 << shift) | (src1 >> (32 - shift)); -@@ -141,12 +141,12 @@ - #else - src = (src0 << shift) | (src1 >> (32 - shift)); - dp[0] = (dst & ~dmask) | (src & dmask); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - return; - } - - dmask = mask0 >> ld_offset; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src0 = (src0 << 24) | ((src0 & 0xFF00) << 8) | ((src0 >> 8) & 0xFF00) | (src0 >> 24); - src1 = (src1 << 24) | ((src1 & 0xFF00) << 8) | ((src1 >> 8) & 0xFF00) | (src1 >> 24); - src = (src0 << shift) | (src1 >> (32 - shift)); -@@ -156,7 +156,7 @@ - #else - src = (src0 << shift) | (src1 >> (32 - shift)); - dp[0] = (dst & ~dmask) | (src & dmask); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - j = 32 - ld_offset; - dp++; - sp++; -@@ -164,19 +164,19 @@ - } - - if (j < size) src1 = sp[0]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src1 = (src1 << 24) | ((src1 & 0xFF00) << 8) | ((src1 >> 8) & 0xFF00) | (src1 >> 24); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - for (; j <= size - 32; j += 32) { - src0 = src1; - src1 = sp[1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src1 = (src1 << 24) | ((src1 & 0xFF00) << 8) | ((src1 >> 8) & 0xFF00) | (src1 >> 24); - src = (src0 << ls_offset) | (src1 >> (32 - ls_offset)); - dp[0] = (src << 24) | ((src & 0xFF00) << 8) | ((src >> 8) & 0xFF00) | (src >> 24); - #else - dp[0] = (src0 << ls_offset) | (src1 >> (32 - ls_offset)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - sp++; - dp++; - } -@@ -187,7 +187,7 @@ - if (ls_offset + j > 32) src1 = sp[1]; - dst = dp[0]; - dmask = mask0 << (32 - j); --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src1 = (src1 << 24) | ((src1 & 0xFF00) << 8) | ((src1 >> 8) & 0xFF00) | (src1 >> 24); - src = (src0 << ls_offset) | (src1 >> (32 - ls_offset)); - dst = (dst << 24) | ((dst & 0xFF00) << 8) | ((dst >> 8) & 0xFF00) | (dst >> 24); -@@ -196,7 +196,7 @@ - #else - src = (src0 << ls_offset) | (src1 >> (32 - ls_offset)); - dp[0] = (dst & ~dmask) | (src & dmask); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - } - - #else /* _LONGLONG */ -@@ -315,7 +315,7 @@ - dst = dp[0]; - if (ld_offset >= size) { - dmask = (lmask0 << (32 - size)) >> (ld_offset - size); --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src0 = (src0 << 24) | ((src0 & 0xFF00) << 8) | ((src0 >> 8) & 0xFF00) | (src0 >> 24); - src = (src0 << (ls_offset - ld_offset)); - dst = (dst << 24) | ((dst & 0xFF00) << 8) | ((dst >> 8) & 0xFF00) | (dst >> 24); -@@ -324,12 +324,12 @@ - #else - src = (src0 << (ls_offset - ld_offset)); - dp[0] = (dst & (~dmask)) | (src & dmask); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - return; - } - - dmask = lmask0 << (32 - ld_offset); --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src0 = (src0 << 24) | ((src0 & 0xFF00) << 8) | ((src0 >> 8) & 0xFF00) | (src0 >> 24); - src = (src0 << (ls_offset - ld_offset)); - dst = (dst << 24) | ((dst & 0xFF00) << 8) | ((dst >> 8) & 0xFF00) | (dst >> 24); -@@ -338,7 +338,7 @@ - #else - src = (src0 << (ls_offset - ld_offset)); - dp[0] = (dst & ~dmask) | (src & dmask); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - j = ld_offset; - dp--; - ls_offset -= j; -@@ -351,7 +351,7 @@ - - if (ld_offset >= size) { - dmask = (lmask0 << (32 - size)) >> (ld_offset - size); --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src0 = (src0 << 24) | ((src0 & 0xFF00) << 8) | ((src0 >> 8) & 0xFF00) | (src0 >> 24); - src1 = (src1 << 24) | ((src1 & 0xFF00) << 8) | ((src1 >> 8) & 0xFF00) | (src1 >> 24); - src = (src0 >> shift) | (src1 << (32 - shift)); -@@ -361,12 +361,12 @@ - #else - src = (src0 >> shift) | (src1 << (32 - shift)); - dp[0] = (dst & ~dmask) | (src & dmask); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - return; - } - - dmask = lmask0 << (32 - ld_offset); --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src0 = (src0 << 24) | ((src0 & 0xFF00) << 8) | ((src0 >> 8) & 0xFF00) | (src0 >> 24); - src1 = (src1 << 24) | ((src1 & 0xFF00) << 8) | ((src1 >> 8) & 0xFF00) | (src1 >> 24); - src = (src0 >> shift) | (src1 << (32 - shift)); -@@ -376,7 +376,7 @@ - #else - src = (src0 >> shift) | (src1 << (32 - shift)); - dp[0] = (dst & ~dmask) | (src & dmask); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - j = ld_offset; - dp--; - sp--; -@@ -384,22 +384,22 @@ - } - - if (j < size) src1 = sp[0]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src1 = (src1 << 24) | ((src1 & 0xFF00) << 8) | ((src1 >> 8) & 0xFF00) | (src1 >> 24); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - #ifdef __SUNPRO_C - #pragma pipeloop(0) - #endif /* __SUNPRO_C */ - for (; j <= size - 32; j += 32) { - src0 = src1; - src1 = sp[-1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src1 = (src1 << 24) | ((src1 & 0xFF00) << 8) | ((src1 >> 8) & 0xFF00) | (src1 >> 24); - src = (src0 >> (32 - ls_offset)) | (src1 << ls_offset); - dp[0] = (src << 24) | ((src & 0xFF00) << 8) | ((src >> 8) & 0xFF00) | (src >> 24); - #else - dp[0] = (src0 >> (32 - ls_offset)) | (src1 << ls_offset); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - sp--; - dp--; - } -@@ -410,7 +410,7 @@ - if (ls_offset < j) src1 = sp[-1]; - dst = dp[0]; - dmask = lmask0 >> (32 - j); --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - src1 = (src1 << 24) | ((src1 & 0xFF00) << 8) | ((src1 >> 8) & 0xFF00) | (src1 >> 24); - src = (src0 >> (32 - ls_offset)) | (src1 << ls_offset); - dst = (dst << 24) | ((dst & 0xFF00) << 8) | ((dst >> 8) & 0xFF00) | (dst >> 24); -@@ -419,7 +419,7 @@ - #else - src = (src0 >> (32 - ls_offset)) | (src1 << ls_offset); - dp[0] = (dst & ~dmask) | (src & dmask); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - } - - #else /* _LONGLONG */ ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_64.c Sun Feb 10 09:27:00 2019 -0800 -@@ -168,7 +168,7 @@ - } - - /***************************************************************/ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - #define READ_U8_D64(table0, table1, table2, table3) \ - t0 = *(mlib_d64*)((mlib_u8*)table0 + ((s0 << 3) & 0x7F8)); \ -@@ -184,7 +184,7 @@ - t2 = *(mlib_d64*)((mlib_u8*)table2 + ((s0 >> 5) & 0x7F8)); \ - t3 = *(mlib_d64*)((mlib_u8*)table3 + ((s0 << 3) & 0x7F8)) - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /***************************************************************/ - void mlib_ImageLookUp_U8_D64(const mlib_u8 *src, -@@ -613,7 +613,7 @@ - #pragma pipeloop(0) - #endif /* __SUNPRO_C */ - for (i = 0; i < size - 7; i += 4, dp += 8, sa++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 << 3) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 5) & 0x7F8)); -@@ -623,12 +623,12 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 21) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 13) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 13) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 21) & 0x7F8)); -@@ -638,7 +638,7 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 5) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 << 3) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - dp[4] = t0; - dp[5] = t1; -@@ -646,7 +646,7 @@ - dp[7] = t3; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 << 3) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 5) & 0x7F8)); -@@ -656,12 +656,12 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 21) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 13) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 13) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 21) & 0x7F8)); -@@ -671,7 +671,7 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 5) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 << 3) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[4] = t0; - dp[5] = t1; - dp[6] = t2; -@@ -719,7 +719,7 @@ - #pragma pipeloop(0) - #endif /* __SUNPRO_C */ - for (i = 0; i < size - 7; i += 4, dp += 12, sa++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 << 3) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 << 3) & 0x7F8)); -@@ -733,14 +733,14 @@ - t3 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 13) & 0x7F8)); - t4 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); - t5 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 13) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; - dp[4] = t4; - dp[5] = t5; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 13) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 13) & 0x7F8)); -@@ -754,7 +754,7 @@ - t3 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 << 3) & 0x7F8)); - t4 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); - t5 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 << 3) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - dp[6] = t0; - dp[7] = t1; -@@ -764,7 +764,7 @@ - dp[11] = t5; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 << 3) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 << 3) & 0x7F8)); -@@ -778,14 +778,14 @@ - t3 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 13) & 0x7F8)); - t4 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); - t5 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 13) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; - dp[4] = t4; - dp[5] = t5; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 13) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 13) & 0x7F8)); -@@ -799,7 +799,7 @@ - t3 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 << 3) & 0x7F8)); - t4 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); - t5 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 << 3) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[6] = t0; - dp[7] = t1; - dp[8] = t2; -@@ -852,7 +852,7 @@ - #pragma pipeloop(0) - #endif /* __SUNPRO_C */ - for (i = 0; i < size - 7; i += 4, dp += 16, sa++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 << 3) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 << 3) & 0x7F8)); -@@ -862,12 +862,12 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 21) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 21) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab3 + ((s0 >> 21) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 5) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 5) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 5) & 0x7F8)); -@@ -877,12 +877,12 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 13) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab3 + ((s0 >> 13) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[4] = t0; - dp[5] = t1; - dp[6] = t2; - dp[7] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 13) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 13) & 0x7F8)); -@@ -892,12 +892,12 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 5) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 5) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab3 + ((s0 >> 5) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[8] = t0; - dp[9] = t1; - dp[10] = t2; - dp[11] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 21) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 21) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 21) & 0x7F8)); -@@ -907,7 +907,7 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 << 3) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab3 + ((s0 << 3) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - dp[12] = t0; - dp[13] = t1; -@@ -915,7 +915,7 @@ - dp[15] = t3; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 << 3) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 << 3) & 0x7F8)); -@@ -925,12 +925,12 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 21) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 21) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab3 + ((s0 >> 21) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 5) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 5) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 5) & 0x7F8)); -@@ -940,12 +940,12 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 13) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab3 + ((s0 >> 13) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[4] = t0; - dp[5] = t1; - dp[6] = t2; - dp[7] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 13) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 13) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 13) & 0x7F8)); -@@ -955,12 +955,12 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 5) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 5) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab3 + ((s0 >> 5) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[8] = t0; - dp[9] = t1; - dp[10] = t2; - dp[11] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_d64 *) ((mlib_u8 *) tab0 + ((s0 >> 21) & 0x7F8)); - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 >> 21) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 >> 21) & 0x7F8)); -@@ -970,7 +970,7 @@ - t1 = *(mlib_d64 *) ((mlib_u8 *) tab1 + ((s0 << 3) & 0x7F8)); - t2 = *(mlib_d64 *) ((mlib_u8 *) tab2 + ((s0 << 3) & 0x7F8)); - t3 = *(mlib_d64 *) ((mlib_u8 *) tab3 + ((s0 << 3) & 0x7F8)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[12] = t0; - dp[13] = t1; - dp[14] = t2; ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageLookUp_Bit.c Sun Feb 10 09:27:00 2019 -0800 -@@ -88,7 +88,7 @@ - } d64_2_f32; - - /***************************************************************/ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - static const mlib_u32 mlib_bit_mask[16] = { - 0x00000000u, 0xFF000000u, 0x00FF0000u, 0xFFFF0000u, -@@ -126,7 +126,7 @@ - 0x00000000u, 0x00FFFFFFu, 0xFF000000u, 0xFFFFFFFFu - }; - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /***************************************************************/ - mlib_status mlib_ImageLookUp_Bit_U8_1(const mlib_u8 *src, -@@ -228,13 +228,13 @@ - #endif /* __SUNPRO_C */ - for (; i <= (size - 16); i += 16) { - s0 = *(mlib_u16*)sa; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *da++ = dd_array[s0 & 0xFF]; - *da++ = dd_array[s0 >> 8]; - #else - *da++ = dd_array[s0 >> 8]; - *da++ = dd_array[s0 & 0xFF]; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - sa += 2; - } - -@@ -258,20 +258,20 @@ - val1 = p_dd[2*val0+1]; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - emask = (mlib_u32)((mlib_s32)(-1)) >> ((4 - (size - i)) * 8); - #else - emask = (mlib_s32)(-1) << ((4 - (size - i)) * 8); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - ((mlib_u32*)da)[0] = (val1 & emask) | (((mlib_u32*)da)[0] &~ emask); - - #else /* _NO_LONGLONG */ - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - mlib_u64 emask = (mlib_u64)((mlib_s64)(-1)) >> ((8 - (size - i)) * 8); - #else - mlib_u64 emask = (mlib_s64)(-1) << ((8 - (size - i)) * 8); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - ((mlib_u64*)da)[0] = (((mlib_u64*)dd_array)[sa[0]] & emask) | (((mlib_u64*)da)[0] &~ emask); - -@@ -323,13 +323,13 @@ - - val0 = table[0][0]; - val1 = table[0][1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - val0 = val0 | (table[1][0] << 8); - val1 = val1 | (table[1][1] << 8); - #else - val0 = (val0 << 8) | table[1][0]; - val1 = (val1 << 8) | table[1][1]; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - val0 |= (val0 << 16); - val1 |= (val1 << 16); - -@@ -394,11 +394,11 @@ - dd1 = dd2; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - emask = (mlib_u32)((mlib_s32)(-1)) >> ((4 - (size - i)) * 8); - #else - emask = (mlib_s32)(-1) << ((4 - (size - i)) * 8); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - ((mlib_u32*)da)[0] = (dd1 & emask) | (((mlib_u32*)da)[0] &~ emask); - - #else /* _NO_LONGLONG */ -@@ -412,11 +412,11 @@ - dd = ((mlib_u64*)dd_array)[s0 & 0xf]; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - emask = (mlib_u64)((mlib_s64)(-1)) >> ((8 - (size - i)) * 8); - #else - emask = (mlib_s64)(-1) << ((8 - (size - i)) * 8); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - ((mlib_u64*)da)[0] = (dd & emask) | (((mlib_u64*)da)[0] &~ emask); - - #endif /* _NO_LONGLONG */ -@@ -462,7 +462,7 @@ - - buffs = buff + size; - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - l0 = (table[0][0] << 24) | (table[2][0] << 16) | (table[1][0] << 8) | (table[0][0]); - h0 = (table[0][1] << 24) | (table[2][1] << 16) | (table[1][1] << 8) | (table[0][1]); - l1 = (l0 >> 8); l1 |= (l1 << 24); -@@ -476,7 +476,7 @@ - h1 = (h0 << 8); h1 |= (h1 >> 24); - l2 = (l1 << 8); l2 |= (l2 >> 24); - h2 = (h1 << 8); h2 |= (h2 >> 24); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /* calculate lookup table */ - #ifdef __SUNPRO_C -@@ -564,11 +564,11 @@ - dd = ((mlib_u32*)(d_array12 + (s0 & 0xF)))[1]; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - emask = (mlib_u32)((mlib_s32)(-1)) >> ((4 - (size - i)) * 8); - #else - emask = (mlib_s32)(-1) << ((4 - (size - i)) * 8); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = (dd & emask) | (da[0] &~ emask); - } - -@@ -611,13 +611,13 @@ - - buffs = buff + size; - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - l = (table[3][0] << 24) | (table[2][0] << 16) | (table[1][0] << 8) | (table[0][0]); - h = (table[3][1] << 24) | (table[2][1] << 16) | (table[1][1] << 8) | (table[0][1]); - #else - l = (table[0][0] << 24) | (table[1][0] << 16) | (table[2][0] << 8) | (table[3][0]); - h = (table[0][1] << 24) | (table[1][1] << 16) | (table[2][1] << 8) | (table[3][1]); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - ((mlib_u32*)lh)[0] = l; ((mlib_u32*)lh)[1] = l; - ((mlib_u32*)lh)[2] = l; ((mlib_u32*)lh)[3] = h; ---- ./jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_ImageUtils.c Sun Feb 10 09:27:00 2019 -0800 -@@ -30,7 +30,7 @@ - typedef union { - mlib_d64 db; - struct { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - mlib_s32 int1, int0; - #else - mlib_s32 int0, int1; ---- ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageCopy.c Sun Feb 10 09:27:00 2019 -0800 -@@ -275,11 +275,11 @@ - for (i = 0; j <= (b_size - 4); j += 4, i++) { - src0 = src1; - src1 = pws[i + 1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - pwd[i] = (src0 >> lshift) | (src1 << rshift); - #else - pwd[i] = (src0 << lshift) | (src1 >> rshift); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - } - - sa += i << 2; -@@ -381,11 +381,11 @@ - for (; j <= (src_width - 4); j += 4) { - src0 = src1; - src1 = ps[1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *((mlib_s32 *) (pdst_row + j)) = (src0 >> shl) | (src1 << shr); - #else - *((mlib_s32 *) (pdst_row + j)) = (src0 << shl) | (src1 >> shr); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - ps++; - } - } -@@ -414,11 +414,11 @@ - for (; j <= (src_width - 8); j += 8) { - src0 = src1; - src1 = ps[1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *((mlib_s64 *) (pdst_row + j)) = (src0 >> shl) | (src1 << shr); - #else - *((mlib_s64 *) (pdst_row + j)) = (src0 << shl) | (src1 >> shr); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - ps++; - } - } -@@ -484,11 +484,11 @@ - for (; j <= (src_width - 2); j += 2) { - src0 = src1; - src1 = ps[1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *((mlib_s32 *) (pdst_row + j)) = (src0 >> 16) | (src1 << 16); - #else - *((mlib_s32 *) (pdst_row + j)) = (src0 << 16) | (src1 >> 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - ps++; - } - } -@@ -516,11 +516,11 @@ - for (; j <= (src_width - 4); j += 4) { - src0 = src1; - src1 = ps[1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *((mlib_s64 *) (pdst_row + j)) = (src0 >> shl) | (src1 << shr); - #else - *((mlib_s64 *) (pdst_row + j)) = (src0 << shl) | (src1 >> shr); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - ps++; - } - } -@@ -585,11 +585,11 @@ - for (; j <= (src_width - 2); j += 2) { - src0 = src1; - src1 = ps[1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *((mlib_s64 *) (pdst_row + j)) = (src0 >> 32) | (src1 << 32); - #else - *((mlib_s64 *) (pdst_row + j)) = (src0 << 32) | (src1 >> 32); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - ps++; - } - } -@@ -687,11 +687,11 @@ - #endif /* __SUNPRO_C */ - for (; n > SIZE; n -= SIZE) { - s1 = *tmp++; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *(TYPE *) dp = (s0 >> shl) | (s1 << shr); - #else - *(TYPE *) dp = (s0 << shl) | (s1 >> shr); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = s1; - dp += SIZE; - sp += SIZE; ---- ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_c_ImageLookUp_f.c Sun Feb 10 09:27:00 2019 -0800 -@@ -120,7 +120,7 @@ - } \ - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - /***************************************************************/ - #define READ_U8_U8_ALIGN(table0, table1, table2, table3) \ -@@ -163,7 +163,7 @@ - t2 = *(mlib_u32*)((mlib_u8*)table2 + ((s0 >> 14) & 0x3FC)); \ - t3 = *(mlib_u32*)((mlib_u8*)table3 + ((s0 >> 22) & 0x3FC)) - --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - - /***********/ - #define READ_U8_U8_ALIGN(table0, table1, table2, table3) \ -@@ -206,7 +206,7 @@ - t2 = *(mlib_u32*)((mlib_u8*)table2 + ((s0 >> 6) & 0x3FC)); \ - t3 = *(mlib_u32*)((mlib_u8*)table3 + ((s0 << 2) & 0x3FC)) - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /***************************************************************/ - void mlib_c_ImageLookUp_U8_U8(const mlib_u8 *src, -@@ -297,11 +297,11 @@ - da[0] = t; - da++; - dp = (mlib_u8 *) da; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *dp++ = tab[s2 >> 8]; - #else - *dp++ = tab[s2 & 0xFF]; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - sp = (mlib_u8 *) sa; - i += 5; - for (; i < size; i++, dp++, sp++) -@@ -403,11 +403,11 @@ - da[0] = t; - da++; - dp = (mlib_u8 *) da; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *dp++ = tab0[s2 >> 8]; - #else - *dp++ = tab0[s2 & 0xFF]; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - sp = (mlib_u8 *) sa; - i += 5; - -@@ -544,11 +544,11 @@ - da[0] = t; - da++; - dp = (mlib_u8 *) da; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *dp++ = tab1[s2 >> 8]; - #else - *dp++ = tab1[s2 & 0xFF]; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - sp = (mlib_u8 *) sa; - i += 5; - -@@ -694,11 +694,11 @@ - da[0] = t; - da++; - dp = (mlib_u8 *) da; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *dp++ = tab0[s2 >> 8]; - #else - *dp++ = tab0[s2 & 0xFF]; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - sp = (mlib_u8 *) sa; - i += 5; - -@@ -1852,21 +1852,21 @@ - s0 = tab0[0]; - s1 = tab1[0]; - for (i = 1; i < 256; i++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s2 = (s1 << 8) + s0; - #else - s2 = (s0 << 8) + s1; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = tab0[i]; - s1 = tab1[i]; - tab[i - 1] = (mlib_u16) s2; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s2 = (s1 << 8) + s0; - #else - s2 = (s0 << 8) + s1; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - tab[255] = (mlib_u16) s2; - - for (j = 0; j < ysize; j++, dst += dlb, src += slb) { -@@ -1897,11 +1897,11 @@ - for (i = 0; i < size - 3; i += 2, da++, sa += 2) { - t0 = tab[s0]; - t1 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t = (t1 << 16) + t0; - #else - t = (t0 << 16) + t1; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - s1 = sa[1]; - da[0] = t; -@@ -1909,11 +1909,11 @@ - - t0 = tab[s0]; - t1 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t = (t1 << 16) + t0; - #else - t = (t0 << 16) + t1; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = t; - da++; - -@@ -1927,13 +1927,13 @@ - - if (off > 1) { - t0 = tab[sa[0]]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - dp[1] = (t0 >> 8); - dp[0] = t0; - #else - dp[0] = (t0 >> 8); - dp[1] = t0; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - sa++; - size--; - dp += 2; -@@ -1941,11 +1941,11 @@ - - t0 = tab[sa[0]]; - sa++; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *dp++ = t0; - #else - *dp++ = (t0 >> 8); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - da = (mlib_s32 *) dp; - -@@ -1959,11 +1959,11 @@ - for (i = 0; i < size - 4; i += 2, da++, sa += 2) { - t1 = tab[s0]; - t2 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t = (t0 >> 8) + (t1 << 8) + (t2 << 24); - #else - t = (t0 << 24) + (t1 << 8) + (t2 >> 8); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - t0 = t2; - s0 = sa[0]; - s1 = sa[1]; -@@ -1972,29 +1972,29 @@ - - t1 = tab[s0]; - t2 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t = (t0 >> 8) + (t1 << 8) + (t2 << 24); - #else - t = (t0 << 24) + (t1 << 8) + (t2 >> 8); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = t; - da++; - dp = (mlib_u8 *) da; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - dp[0] = (t2 >> 8); - #else - dp[0] = t2; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - if ((size & 1) == 0) { - t0 = tab[sa[0]]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - dp[2] = (t0 >> 8); - dp[1] = t0; - #else - dp[1] = (t0 >> 8); - dp[2] = t0; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - } - } - } -@@ -2012,22 +2012,22 @@ - s1 = tab1[0]; - s2 = tab2[0]; - for (i = 1; i < 256; i++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s3 = (s2 << 24) + (s1 << 16) + (s0 << 8); - #else - s3 = (s0 << 16) + (s1 << 8) + s2; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = tab0[i]; - s1 = tab1[i]; - s2 = tab2[i]; - tab[i - 1] = s3; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s3 = (s2 << 24) + (s1 << 16) + (s0 << 8); - #else - s3 = (s0 << 16) + (s1 << 8) + s2; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - tab[255] = s3; - - for (j = 0; j < ysize; j++, dst += dlb, src += slb) { -@@ -2064,24 +2064,24 @@ - for (i = 0; i < size - 7; i += 4, da += 3, sa += 4) { - t0 = tab[s0]; - t1 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - da[0] = (t0 >> 8) + (t1 << 16); - res2 = (t1 >> 16); - #else - da[0] = (t0 << 8) + (t1 >> 16); - res2 = (t1 << 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - s1 = sa[1]; - t0 = tab[s0]; - t1 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res2 += (t0 << 8); - res1 = (t0 >> 24) + t1; - #else - res2 += (t0 >> 8); - res1 = (t0 << 24) + t1; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[2]; - s1 = sa[3]; - da[1] = res2; -@@ -2090,24 +2090,24 @@ - - t0 = tab[s0]; - t1 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - da[0] = (t0 >> 8) + (t1 << 16); - res2 = (t1 >> 16); - #else - da[0] = (t0 << 8) + (t1 >> 16); - res2 = (t1 << 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - s1 = sa[1]; - t0 = tab[s0]; - t1 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res2 += (t0 << 8); - res1 = (t0 >> 24) + t1; - #else - res2 += (t0 >> 8); - res1 = (t0 << 24) + t1; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[1] = res2; - da[2] = res1; - da += 3; -@@ -2143,11 +2143,11 @@ - s2 = tab2[0]; - s3 = tab3[0]; - for (i = 1; i < 256; i++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s4 = (s3 << 24) + (s2 << 16) + (s1 << 8) + s0; - #else - s4 = (s0 << 24) + (s1 << 16) + (s2 << 8) + s3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = tab0[i]; - s1 = tab1[i]; - s2 = tab2[i]; -@@ -2155,11 +2155,11 @@ - tab[i - 1] = s4; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s4 = (s3 << 24) + (s2 << 16) + (s1 << 8) + s0; - #else - s4 = (s0 << 24) + (s1 << 16) + (s2 << 8) + s3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - tab[255] = s4; - - for (j = 0; j < ysize; j++, dst += dlb, src += slb) { -@@ -2225,13 +2225,13 @@ - for (i = 0; i < size - 4; i += 2, da += 2, sa += 2) { - t1 = tab[s0]; - t2 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (t0 >> shift) + (t1 << shift1); - res2 = (t1 >> shift) + (t2 << shift1); - #else - res1 = (t0 << shift) + (t1 >> shift1); - res2 = (t1 << shift) + (t2 >> shift1); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - t0 = t2; - s0 = sa[0]; - s1 = sa[1]; -@@ -2241,28 +2241,28 @@ - - t1 = tab[s0]; - t2 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (t0 >> shift) + (t1 << shift1); - res2 = (t1 >> shift) + (t2 << shift1); - #else - res1 = (t0 << shift) + (t1 >> shift1); - res2 = (t1 << shift) + (t2 >> shift1); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = res1; - da[1] = res2; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = (da[2] >> shift1); - da[2] = (t2 >> shift) + (t0 << shift1); - #else - t0 = (da[2] << shift1); - da[2] = (t2 << shift) + (t0 >> shift1); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da += 2; - dp = (mlib_u8 *) da + (4 - off); - - if ((size & 1) == 0) { - t0 = tab[sa[0]]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - dp[3] = (mlib_u8) (t0 >> 24); - dp[2] = (mlib_u8) (t0 >> 16); - dp[1] = (mlib_u8) (t0 >> 8); -@@ -2272,7 +2272,7 @@ - dp[1] = (mlib_u8) (t0 >> 16); - dp[2] = (mlib_u8) (t0 >> 8); - dp[3] = (mlib_u8) t0; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - } - } - } -@@ -2348,13 +2348,13 @@ - t3 = tab0[s1]; - t4 = tab1[s1]; - t5 = tab2[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - da[0] = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - res2 = (t5 << 8) + t4; - #else - da[0] = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; - res2 = (t4 << 24) + (t5 << 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - s1 = sa[1]; - t0 = tab0[s0]; -@@ -2363,13 +2363,13 @@ - t3 = tab0[s1]; - t4 = tab1[s1]; - t5 = tab2[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res2 += ((t1 << 24) + (t0 << 16)); - res1 = (t5 << 24) + (t4 << 16) + (t3 << 8) + t2; - #else - res2 += ((t0 << 8) + t1); - res1 = (t2 << 24) + (t3 << 16) + (t4 << 8) + t5; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[2]; - s1 = sa[3]; - da[1] = res2; -@@ -2382,13 +2382,13 @@ - t3 = tab0[s1]; - t4 = tab1[s1]; - t5 = tab2[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - da[0] = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - res2 = (t5 << 8) + t4; - #else - da[0] = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; - res2 = (t4 << 24) + (t5 << 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - s1 = sa[1]; - t0 = tab0[s0]; -@@ -2397,13 +2397,13 @@ - t3 = tab0[s1]; - t4 = tab1[s1]; - t5 = tab2[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res2 += ((t1 << 24) + (t0 << 16)); - res1 = (t5 << 24) + (t4 << 16) + (t3 << 8) + t2; - #else - res2 += ((t0 << 8) + t1); - res1 = (t2 << 24) + (t3 << 16) + (t4 << 8) + t5; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[1] = res2; - da[2] = res1; - da += 3; -@@ -2455,11 +2455,11 @@ - t1 = tab1[s0]; - t2 = tab2[s0]; - t3 = tab3[s0]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - #else - res = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - da[0] = res; - } -@@ -2468,11 +2468,11 @@ - t1 = tab1[s0]; - t2 = tab2[s0]; - t3 = tab3[s0]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - #else - res = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = res; - - } -@@ -2496,11 +2496,11 @@ - t2 = tab2[s0]; - t3 = tab3[s0]; - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - #else - res1 = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - s0 = sa[0]; - sa++; -@@ -2513,13 +2513,13 @@ - t1 = tab1[s0]; - t2 = tab2[s0]; - t3 = tab3[s0]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res2 = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - res = (res1 >> shift) + (res2 << shift1); - #else - res2 = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; - res = (res1 << shift) + (res2 >> shift1); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - res1 = res2; - s0 = sa[0]; - da[0] = res; -@@ -2529,21 +2529,21 @@ - t1 = tab1[s0]; - t2 = tab2[s0]; - t3 = tab3[s0]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res2 = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - res = (res1 >> shift) + (res2 << shift1); - #else - res2 = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; - res = (res1 << shift) + (res2 >> shift1); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = res; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (da[1] >> shift1); - da[1] = (res2 >> shift) + (res1 << shift1); - #else - res1 = (da[1] << shift1); - da[1] = (res2 << shift) + (res1 >> shift1); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - } - } - } -@@ -2617,13 +2617,13 @@ - t3 = tab0[s1]; - t4 = tab1[s1]; - t5 = tab2[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - da[0] = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - res2 = (t5 << 8) + t4; - #else - da[0] = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; - res2 = (t4 << 24) + (t5 << 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - s1 = sa[1]; - t0 = tab0[s0]; -@@ -2632,13 +2632,13 @@ - t3 = tab0[s1]; - t4 = tab1[s1]; - t5 = tab2[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res2 += ((t1 << 24) + (t0 << 16)); - res1 = (t5 << 24) + (t4 << 16) + (t3 << 8) + t2; - #else - res2 += ((t0 << 8) + t1); - res1 = (t2 << 24) + (t3 << 16) + (t4 << 8) + t5; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[2]; - s1 = sa[3]; - da[1] = res2; -@@ -2651,13 +2651,13 @@ - t3 = tab0[s1]; - t4 = tab1[s1]; - t5 = tab2[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - da[0] = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - res2 = (t5 << 8) + t4; - #else - da[0] = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; - res2 = (t4 << 24) + (t5 << 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - s1 = sa[1]; - t0 = tab0[s0]; -@@ -2666,13 +2666,13 @@ - t3 = tab0[s1]; - t4 = tab1[s1]; - t5 = tab2[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res2 += ((t1 << 24) + (t0 << 16)); - res1 = (t5 << 24) + (t4 << 16) + (t3 << 8) + t2; - #else - res2 += ((t0 << 8) + t1); - res1 = (t2 << 24) + (t3 << 16) + (t4 << 8) + t5; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[1] = res2; - da[2] = res1; - da += 3; -@@ -2724,11 +2724,11 @@ - t1 = tab1[s0]; - t2 = tab2[s0]; - t3 = tab3[s0]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - #else - res = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - da[0] = res; - } -@@ -2737,11 +2737,11 @@ - t1 = tab1[s0]; - t2 = tab2[s0]; - t3 = tab3[s0]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - #else - res = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = res; - - } -@@ -2765,11 +2765,11 @@ - t2 = tab2[s0]; - t3 = tab3[s0]; - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - #else - res1 = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - s0 = sa[0]; - sa++; -@@ -2782,13 +2782,13 @@ - t1 = tab1[s0]; - t2 = tab2[s0]; - t3 = tab3[s0]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res2 = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - res = (res1 >> shift) + (res2 << shift1); - #else - res2 = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; - res = (res1 << shift) + (res2 >> shift1); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - res1 = res2; - s0 = sa[0]; - da[0] = res; -@@ -2798,21 +2798,21 @@ - t1 = tab1[s0]; - t2 = tab2[s0]; - t3 = tab3[s0]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res2 = (t3 << 24) + (t2 << 16) + (t1 << 8) + t0; - res = (res1 >> shift) + (res2 << shift1); - #else - res2 = (t0 << 24) + (t1 << 16) + (t2 << 8) + t3; - res = (res1 << shift) + (res2 >> shift1); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = res; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (da[1] >> shift1); - da[1] = (res2 >> shift) + (res1 << shift1); - #else - res1 = (da[1] << shift1); - da[1] = (res2 << shift) + (res1 >> shift1); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - } - } - } -@@ -2863,21 +2863,21 @@ - s0 = tab0[0]; - s1 = tab1[0]; - for (i = 1; i < 256; i++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s2 = (s1 << 16) + s0; - #else - s2 = (s0 << 16) + s1; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = tab0[i]; - s1 = tab1[i]; - tab[i - 1] = s2; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s2 = (s1 << 16) + s0; - #else - s2 = (s0 << 16) + s1; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - tab[255] = s2; - - for (j = 0; j < ysize; j++, dst += dlb, src += slb) { -@@ -2919,11 +2919,11 @@ - else { - - t0 = tab[*sa++]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *dp++ = (mlib_u16) (t0); - #else - *dp++ = (mlib_u16) (t0 >> 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da = (mlib_u32 *) dp; - s0 = sa[0]; - s1 = sa[1]; -@@ -2935,13 +2935,13 @@ - for (i = 0; i < size - 4; i += 2, da += 2, sa += 2) { - t1 = tab[s0]; - t2 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (t0 >> 16) + (t1 << 16); - res2 = (t1 >> 16) + (t2 << 16); - #else - res1 = (t0 << 16) + (t1 >> 16); - res2 = (t1 << 16) + (t2 >> 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - t0 = t2; - s0 = sa[0]; - s1 = sa[1]; -@@ -2951,32 +2951,32 @@ - - t1 = tab[s0]; - t2 = tab[s1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (t0 >> 16) + (t1 << 16); - res2 = (t1 >> 16) + (t2 << 16); - #else - res1 = (t0 << 16) + (t1 >> 16); - res2 = (t1 << 16) + (t2 >> 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = res1; - da[1] = res2; - da += 2; - dp = (mlib_u16 *) da; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - dp[0] = (mlib_u16) (t2 >> 16); - #else - dp[0] = (mlib_u16) t2; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - if ((size & 1) == 0) { - t0 = tab[sa[0]]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - dp[2] = (mlib_u16) (t0 >> 16); - dp[1] = (mlib_u16) t0; - #else - dp[1] = (mlib_u16) (t0 >> 16); - dp[2] = (mlib_u16) t0; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - } - } - } -@@ -2994,13 +2994,13 @@ - s1 = tab1[0]; - s2 = tab2[0]; - for (i = 1; i < 256; i++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s3 = (s0 << 16); - s4 = (s2 << 16) + s1; - #else - s3 = s0; - s4 = (s1 << 16) + s2; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = tab0[i]; - s1 = tab1[i]; - s2 = tab2[i]; -@@ -3008,13 +3008,13 @@ - tab[2 * i - 1] = s4; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s4 = (s2 << 16) + s1; - tab[510] = s0 << 16; - #else - s4 = (s1 << 16) + s2; - tab[510] = s0; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - tab[511] = s4; - - for (j = 0; j < ysize; j++, dst += dlb, src += slb) { -@@ -3050,13 +3050,13 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab + s0 + 4); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab + s1); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab + s1 + 4); --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (t0 >> 16) + (t1 << 16); - res2 = (t1 >> 16) + t2; - #else - res1 = (t0 << 16) + (t1 >> 16); - res2 = (t1 << 16) + t2; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0] << 3; - s1 = sa[1] << 3; - da[0] = res1; -@@ -3068,13 +3068,13 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab + s0 + 4); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab + s1); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab + s1 + 4); --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (t0 >> 16) + (t1 << 16); - res2 = (t1 >> 16) + t2; - #else - res1 = (t0 << 16) + (t1 >> 16); - res2 = (t1 << 16) + t2; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = res1; - da[1] = res2; - da[2] = t3; -@@ -3105,13 +3105,13 @@ - s2 = tab2[0]; - s3 = tab3[0]; - for (i = 1; i < 256; i++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s4 = (s1 << 16) + s0; - s5 = (s3 << 16) + s2; - #else - s4 = (s0 << 16) + s1; - s5 = (s2 << 16) + s3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = tab0[i]; - s1 = tab1[i]; - s2 = tab2[i]; -@@ -3120,13 +3120,13 @@ - tab[2 * i - 1] = s5; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - s4 = (s1 << 16) + s0; - s5 = (s3 << 16) + s2; - #else - s4 = (s0 << 16) + s1; - s5 = (s2 << 16) + s3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - tab[510] = s4; - tab[511] = s5; - -@@ -3181,18 +3181,18 @@ - - t4 = tab[2 * sa[0]]; - t5 = tab[2 * sa[0] + 1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *dp++ = (mlib_u16) (t4); - #else - *dp++ = (mlib_u16) (t4 >> 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - sa++; - da = (mlib_u32 *) dp; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - *da++ = (t4 >> 16) + (t5 << 16); - #else - *da++ = (t4 << 16) + (t5 >> 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0] << 3; - s1 = sa[1] << 3; - sa += 2; -@@ -3205,7 +3205,7 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab + s0 + 4); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab + s1); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab + s1 + 4); --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (t5 >> 16) + (t0 << 16); - res2 = (t0 >> 16) + (t1 << 16); - res3 = (t1 >> 16) + (t2 << 16); -@@ -3215,7 +3215,7 @@ - res2 = (t0 << 16) + (t1 >> 16); - res3 = (t1 << 16) + (t2 >> 16); - res4 = (t2 << 16) + (t3 >> 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0] << 3; - s1 = sa[1] << 3; - da[0] = res1; -@@ -3229,7 +3229,7 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab + s0 + 4); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab + s1); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab + s1 + 4); --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - res1 = (t5 >> 16) + (t0 << 16); - res2 = (t0 >> 16) + (t1 << 16); - res3 = (t1 >> 16) + (t2 << 16); -@@ -3239,36 +3239,36 @@ - res2 = (t0 << 16) + (t1 >> 16); - res3 = (t1 << 16) + (t2 >> 16); - res4 = (t2 << 16) + (t3 >> 16); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - da[0] = res1; - da[1] = res2; - da[2] = res3; - da[3] = res4; - da += 4; - dp = (mlib_u16 *) da; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - dp[0] = (mlib_u16) (t3 >> 16); - #else - dp[0] = (mlib_u16) t3; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - if ((size & 1) == 0) { - t0 = tab[2 * sa[0]]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - dp[2] = (mlib_u16) (t0 >> 16); - dp[1] = (mlib_u16) t0; - #else - dp[1] = (mlib_u16) (t0 >> 16); - dp[2] = (mlib_u16) t0; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - t0 = tab[2 * sa[0] + 1]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - dp[4] = (mlib_u16) (t0 >> 16); - dp[3] = (mlib_u16) t0; - #else - dp[3] = (mlib_u16) (t0 >> 16); - dp[4] = (mlib_u16) t0; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - } - } - } -@@ -3439,7 +3439,7 @@ - #pragma pipeloop(0) - #endif /* __SUNPRO_C */ - for (i = 0; i < size - 7; i += 4, dp += 8, sa++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 << 2) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 6) & 0x3FC)); -@@ -3449,12 +3449,12 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 22) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 14) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 14) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 22) & 0x3FC)); -@@ -3464,7 +3464,7 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 6) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 << 2) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - dp[4] = t0; - dp[5] = t1; -@@ -3472,7 +3472,7 @@ - dp[7] = t3; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 << 2) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 6) & 0x3FC)); -@@ -3482,12 +3482,12 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 22) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 14) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 14) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 22) & 0x3FC)); -@@ -3497,7 +3497,7 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 6) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 << 2) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[4] = t0; - dp[5] = t1; - dp[6] = t2; -@@ -3545,7 +3545,7 @@ - #pragma pipeloop(0) - #endif /* __SUNPRO_C */ - for (i = 0; i < size - 7; i += 4, dp += 12, sa++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 << 2) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 << 2) & 0x3FC)); -@@ -3559,14 +3559,14 @@ - t3 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 14) & 0x3FC)); - t4 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); - t5 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 14) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; - dp[4] = t4; - dp[5] = t5; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 14) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 14) & 0x3FC)); -@@ -3580,7 +3580,7 @@ - t3 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 << 2) & 0x3FC)); - t4 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); - t5 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 << 2) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - dp[6] = t0; - dp[7] = t1; -@@ -3590,7 +3590,7 @@ - dp[11] = t5; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 << 2) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 << 2) & 0x3FC)); -@@ -3604,14 +3604,14 @@ - t3 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 14) & 0x3FC)); - t4 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); - t5 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 14) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; - dp[4] = t4; - dp[5] = t5; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 14) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 14) & 0x3FC)); -@@ -3625,7 +3625,7 @@ - t3 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 << 2) & 0x3FC)); - t4 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); - t5 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 << 2) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[6] = t0; - dp[7] = t1; - dp[8] = t2; -@@ -3678,7 +3678,7 @@ - #pragma pipeloop(0) - #endif /* __SUNPRO_C */ - for (i = 0; i < size - 7; i += 4, dp += 16, sa++) { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 << 2) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 << 2) & 0x3FC)); -@@ -3688,12 +3688,12 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 22) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 22) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab3 + ((s0 >> 22) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 6) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 6) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 6) & 0x3FC)); -@@ -3703,12 +3703,12 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 14) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab3 + ((s0 >> 14) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[4] = t0; - dp[5] = t1; - dp[6] = t2; - dp[7] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 14) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 14) & 0x3FC)); -@@ -3718,12 +3718,12 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 6) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 6) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab3 + ((s0 >> 6) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[8] = t0; - dp[9] = t1; - dp[10] = t2; - dp[11] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 22) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 22) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 22) & 0x3FC)); -@@ -3733,7 +3733,7 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 << 2) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab3 + ((s0 << 2) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - s0 = sa[0]; - dp[12] = t0; - dp[13] = t1; -@@ -3741,7 +3741,7 @@ - dp[15] = t3; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 << 2) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 << 2) & 0x3FC)); -@@ -3751,12 +3751,12 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 22) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 22) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab3 + ((s0 >> 22) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[0] = t0; - dp[1] = t1; - dp[2] = t2; - dp[3] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 6) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 6) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 6) & 0x3FC)); -@@ -3766,12 +3766,12 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 14) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab3 + ((s0 >> 14) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[4] = t0; - dp[5] = t1; - dp[6] = t2; - dp[7] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 14) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 14) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 14) & 0x3FC)); -@@ -3781,12 +3781,12 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 6) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 6) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab3 + ((s0 >> 6) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[8] = t0; - dp[9] = t1; - dp[10] = t2; - dp[11] = t3; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - t0 = *(mlib_u32 *) ((mlib_u8 *) tab0 + ((s0 >> 22) & 0x3FC)); - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 >> 22) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 >> 22) & 0x3FC)); -@@ -3796,7 +3796,7 @@ - t1 = *(mlib_u32 *) ((mlib_u8 *) tab1 + ((s0 << 2) & 0x3FC)); - t2 = *(mlib_u32 *) ((mlib_u8 *) tab2 + ((s0 << 2) & 0x3FC)); - t3 = *(mlib_u32 *) ((mlib_u8 *) tab3 + ((s0 << 2) & 0x3FC)); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - dp[12] = t0; - dp[13] = t1; - dp[14] = t2; ---- ./jdk/src/share/native/sun/awt/medialib/mlib_image.h Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_image.h Sun Feb 10 09:27:00 2019 -0800 -@@ -27,9 +27,6 @@ - #ifndef MLIB_IMAGE_H - #define MLIB_IMAGE_H - --#ifdef MACOSX --#include --#endif - #include - #include - #include ---- ./jdk/src/share/native/sun/awt/medialib/mlib_sys.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/awt/medialib/mlib_sys.c Sun Feb 10 09:27:00 2019 -0800 -@@ -29,7 +29,7 @@ - #ifdef MACOSX - #include - #include --#else -+#elif !defined(_ALLBSD_SOURCE) - #include - #endif - #include -@@ -97,6 +97,9 @@ - return (void *) malloc(size); - #elif defined(MACOSX) - return valloc(size); -+#elif defined(_ALLBSD_SOURCE) -+ void *ret; -+ return posix_memalign(&ret, 8, size) ? NULL : ret; - #else - return (void *) memalign(8, size); - #endif /* _MSC_VER */ ---- ./jdk/src/share/native/sun/font/layout/LEStandalone.h Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/font/layout/LEStandalone.h Sun Feb 10 09:27:00 2019 -0800 -@@ -136,7 +136,7 @@ - #define U_CAPI extern "C" - - #if !defined(U_IS_BIG_ENDIAN) -- #ifdef _LITTLE_ENDIAN -+ #ifdef VM_LITTLE_ENDIAN - #define U_IS_BIG_ENDIAN 0 - #endif - #endif ---- ./jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/java2d/cmm/lcms/LCMS.c Sun Feb 10 09:27:00 2019 -0800 -@@ -182,7 +182,7 @@ - return 0L; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - /* Reversing data packed into int for LE archs */ - if (isInIntPacked) { - inFormatter ^= DOSWAP_SH(1); ---- ./jdk/src/share/native/sun/management/DiagnosticCommandImpl.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/share/native/sun/management/DiagnosticCommandImpl.c Sun Feb 10 09:27:00 2019 -0800 -@@ -27,6 +27,7 @@ - #include - #include "management.h" - #include "sun_management_DiagnosticCommandImpl.h" -+#include - - JNIEXPORT void JNICALL Java_sun_management_DiagnosticCommandImpl_setNotificationEnabled - (JNIEnv *env, jobject dummy, jboolean enabled) { ---- ./jdk/src/solaris/back/util_md.h Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/back/util_md.h Sun Feb 10 09:27:00 2019 -0800 -@@ -51,7 +51,7 @@ - - /* On little endian machines, convert java big endian numbers. */ - --#if defined(_LITTLE_ENDIAN) -+#if defined(VM_LITTLE_ENDIAN) - - #define HOST_TO_JAVA_CHAR(x) (((x & 0xff) << 8) | ((x >> 8) & (0xff))) - #define HOST_TO_JAVA_SHORT(x) (((x & 0xff) << 8) | ((x >> 8) & (0xff))) ---- ./jdk/src/solaris/bin/ergo_i586.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/bin/ergo_i586.c Sun Feb 10 09:27:00 2019 -0800 -@@ -106,7 +106,7 @@ - - #endif /* __solaris__ */ - --#ifdef __linux__ -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - - /* - * A utility method for asking the CPU about itself. -@@ -197,7 +197,7 @@ - (result == JNI_TRUE ? "true" : "false")); - return result; - } --#endif /* __linux__ */ -+#endif /* __linux__ || _ALLBSD_SOURCE */ - - /* - * Routines shared by solaris-i586 and linux-i586. ---- ./jdk/src/solaris/bin/java_md_solinux.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/bin/java_md_solinux.c Sun Feb 10 09:27:00 2019 -0800 -@@ -35,6 +35,9 @@ - #include - #include - #include -+#ifdef __FreeBSD__ -+#include -+#endif - #include "manifest_info.h" - #include "version_comp.h" - -@@ -306,9 +309,9 @@ - if (llp == NULL && dmllp == NULL) { - return JNI_FALSE; - } --#ifdef __linux -+#ifndef __solaris__ - /* -- * On linux, if a binary is running as sgid or suid, glibc sets -+ * On linux and BSD, if a binary is running as sgid or suid, glibc/libc sets - * LD_LIBRARY_PATH to the empty string for security purposes. (In contrast, - * on Solaris the LD_LIBRARY_PATH variable for a privileged binary does not - * lose its settings; but the dynamic linker does apply more scrutiny to the -@@ -319,12 +322,18 @@ - * libraries will be handled by the RPATH. In reality, this check is - * redundant, as the previous check for a non-null LD_LIBRARY_PATH will - * return back to the calling function forthwith, it is left here to safe -- * guard against any changes, in the glibc's existing security policy. -+ * guard against any changes, in the glibc/libc's existing security policy. - */ -+#ifndef _ALLBSD_SOURCE - if ((getgid() != getegid()) || (getuid() != geteuid())) { - return JNI_FALSE; - } --#endif /* __linux */ -+#else -+ if (issetugid()) { -+ return JNI_FALSE; -+ } -+#endif /* ! _ALLBSD_SOURCE */ -+#endif /* ! __solaris__ */ - - /* - * Prevent recursions. Since LD_LIBRARY_PATH is the one which will be set by -@@ -929,8 +938,9 @@ - * onwards the filename returned in DL_info structure from dladdr is - * an absolute pathname so technically realpath isn't required. - * On Linux we read the executable name from /proc/self/exe. -- * As a fallback, and for platforms other than Solaris and Linux, -- * we use FindExecName to compute the executable name. -+ * On FreeBSD, we get the executable name via sysctl(3). -+ * As a fallback, and for platforms other than Solaris, Linux, and -+ * FreeBSD, we use FindExecName to compute the executable name. - */ - const char* - SetExecname(char **argv) -@@ -967,7 +977,17 @@ - exec_path = JLI_StringDup(buf); - } - } --#else /* !__solaris__ && !__linux__ */ -+#elif defined(__FreeBSD__) -+ { -+ char buf[PATH_MAX+1]; -+ int name[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 }; -+ size_t len = sizeof(buf); -+ if (sysctl(name, 4, buf, &len, NULL, 0) == 0 && len > 0) { -+ buf[len] = '\0'; -+ exec_path = JLI_StringDup(buf); -+ } -+ } -+#else /* !__solaris__ && !__linux__ && !__FreeBSD__ */ - { - /* Not implemented */ - } -@@ -1073,13 +1093,13 @@ - #define MAX_PID_STR_SZ 20 - - void SetJavaLauncherPlatformProps() { -- /* Linux only */ --#ifdef __linux__ -+ /* Linux and BSD only */ -+#ifndef __solaris__ - const char *substr = "-Dsun.java.launcher.pid="; - char *pid_prop_str = (char *)JLI_MemAlloc(JLI_StrLen(substr) + MAX_PID_STR_SZ + 1); - sprintf(pid_prop_str, "%s%d", substr, getpid()); - AddOption(pid_prop_str, NULL); --#endif /* __linux__ */ -+#endif /* ! __solaris__ */ - } - - int ---- ./jdk/src/solaris/bin/java_md_solinux.h Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/bin/java_md_solinux.h Sun Feb 10 09:27:00 2019 -0800 -@@ -26,17 +26,26 @@ - #ifndef JAVA_MD_SOLINUX_H - #define JAVA_MD_SOLINUX_H - --#ifdef HAVE_GETHRTIME -+#if defined(HAVE_GETHRTIME) || defined(__FreeBSD__) - /* - * Support for doing cheap, accurate interval timing. - */ -+#ifdef HAVE_GETHRTIME - #include -+#else /* __FreeBSD__ */ -+#include -+#define gethrtime() __extension__ ({ \ -+ struct timespec tp; \ -+ clock_gettime(CLOCK_MONOTONIC, &tp); \ -+ (uint64_t)tp.tv_sec*1000000 + tp.tv_nsec/1000; \ -+}) -+#endif /* HAVE_GETHRTIME */ - #define CounterGet() (gethrtime()/1000) - #define Counter2Micros(counts) (counts) --#else /* ! HAVE_GETHRTIME */ -+#else /* ! HAVE_GETHRTIME && ! __FreeBSD__ */ - #define CounterGet() (0) - #define Counter2Micros(counts) (1) --#endif /* HAVE_GETHRTIME */ -+#endif /* HAVE_GETHRTIME || __FreeBSD__ */ - - /* pointer to environment */ - extern char **environ; -@@ -48,6 +57,9 @@ - #ifdef __solaris__ - static const char *system_dir = "/usr/jdk"; - static const char *user_dir = "/jdk"; -+#elif defined(__FreeBSD__) -+static const char *system_dir = PACKAGE_PATH "/openjdk8"; -+static const char *user_dir = "/java"; - #else /* !__solaris__, i.e. Linux, AIX,.. */ - static const char *system_dir = "/usr/java"; - static const char *user_dir = "/java"; ---- ./jdk/src/solaris/classes/java/lang/UNIXProcess.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/classes/java/lang/UNIXProcess.java Sun Feb 10 09:27:00 2019 -0800 -@@ -82,6 +82,8 @@ - - LINUX(LaunchMechanism.VFORK, LaunchMechanism.FORK), - -+ MACOS(LaunchMechanism.POSIX_SPAWN, LaunchMechanism.FORK), -+ - BSD(LaunchMechanism.POSIX_SPAWN, LaunchMechanism.FORK), - - SOLARIS(LaunchMechanism.POSIX_SPAWN, LaunchMechanism.FORK), -@@ -105,9 +107,10 @@ - // fall through... - case LINUX: - case AIX: -+ case BSD: - return javahome + "/lib/" + osArch + "/jspawnhelper"; - -- case BSD: -+ case MACOS: - return javahome + "/lib/jspawnhelper"; - - default: -@@ -157,7 +160,8 @@ - ); - - if (osName.equals("Linux")) { return LINUX; } -- if (osName.contains("OS X")) { return BSD; } -+ if (osName.contains("OS X")) { return MACOS; } -+ if (osName.endsWith("BSD")) { return BSD; } - if (osName.equals("SunOS")) { return SOLARIS; } - if (osName.equals("AIX")) { return AIX; } - -@@ -272,6 +276,7 @@ - void initStreams(int[] fds) throws IOException { - switch (platform) { - case LINUX: -+ case MACOS: - case BSD: - stdin = (fds[0] == -1) ? - ProcessBuilder.NullOutputStream.INSTANCE : -@@ -430,6 +435,7 @@ - private void destroy(boolean force) { - switch (platform) { - case LINUX: -+ case MACOS: - case BSD: - case AIX: - // There is a risk that pid will be recycled, causing us to ---- ./jdk/src/solaris/classes/sun/awt/X11FontManager.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/classes/sun/awt/X11FontManager.java Sun Feb 10 09:27:00 2019 -0800 -@@ -234,7 +234,7 @@ - if (fontID != null) { - fileName = (String)fontNameMap.get(fontID); - /* On Linux check for the Lucida Oblique fonts */ -- if (fileName == null && FontUtilities.isLinux && !isOpenJDK()) { -+ if (fileName == null && (FontUtilities.isLinux || FontUtilities.isBSD) && !isOpenJDK()) { - if (oblmap == null) { - initObliqueLucidaFontMap(); - } -@@ -733,7 +733,7 @@ - if (fontConfigDirs == null) { - return; - } -- if (FontUtilities.isLinux) { -+ if (FontUtilities.isLinux || FontUtilities.isBSD) { - fontConfigDirs.add(jreLibDirName+File.separator+"oblique-fonts"); - } - fontdirs = (String[])fontConfigDirs.toArray(new String[0]); -@@ -761,7 +761,7 @@ - */ - FontConfiguration mFontConfig = new MFontConfiguration(this); - if (FontUtilities.isOpenSolaris || -- (FontUtilities.isLinux && -+ ((FontUtilities.isLinux || FontUtilities.isBSD) && - (!mFontConfig.foundOsSpecificFile() || - !mFontConfig.fontFilesArePresent()) || - (FontUtilities.isSolaris && !mFontConfig.fontFilesArePresent()))) { ---- ./jdk/src/solaris/classes/sun/awt/fontconfigs/bsd.fontconfig.properties Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/classes/sun/awt/fontconfigs/bsd.fontconfig.properties Sun Feb 10 09:27:00 2019 -0800 -@@ -26,134 +26,134 @@ - - # Version - --# Uses Fedora Core 6 fonts and file paths. -+# Uses FreeBSD ports Tree fonts and file paths. - version=1 - - # Component Font Mappings - --dialog.plain.latin-1=DejaVu LGC Sans -+dialog.plain.latin-1=DejaVu Sans - dialog.plain.japanese-x0208=Sazanami Gothic --dialog.plain.korean=Baekmuk Gulim --dialog.plain.chinese-big5=AR PL ShanHeiSun Uni --dialog.plain.chinese-gb18030=AR PL ShanHeiSun Uni -+dialog.plain.korean=NanumGothic -+dialog.plain.chinese-big5=AR PL UMing -+dialog.plain.chinese-gb18030=AR PL UMing - --dialog.bold.latin-1=DejaVu LGC Sans Bold -+dialog.bold.latin-1=DejaVu Sans Bold - dialog.bold.japanese-x0208=Sazanami Gothic --dialog.bold.korean=Baekmuk Gulim --dialog.bold.chinese-big5=AR PL ShanHeiSun Uni --dialog.bold.chinese-gb18030=AR PL ShanHeiSun Uni -+dialog.bold.korean=NanumGothic Bold -+dialog.bold.chinese-big5=AR PL UMing -+dialog.bold.chinese-gb18030=AR PL UMing - --dialog.italic.latin-1=DejaVu LGC Sans Oblique -+dialog.italic.latin-1=DejaVu Sans Oblique - dialog.italic.japanese-x0208=Sazanami Gothic --dialog.italic.korean=Baekmuk Gulim --dialog.italic.chinese-big5=AR PL ShanHeiSun Uni --dialog.italic.chinese-gb18030=AR PL ShanHeiSun Uni -+dialog.italic.korean=NanumGothic -+dialog.italic.chinese-big5=AR PL UMing -+dialog.italic.chinese-gb18030=AR PL UMing - --dialog.bolditalic.latin-1=DejaVu LGC Sans Bold Oblique -+dialog.bolditalic.latin-1=DejaVu Sans Bold Oblique - dialog.bolditalic.japanese-x0208=Sazanami Gothic --dialog.bolditalic.korean=Baekmuk Gulim --dialog.bolditalic.chinese-big5=AR PL ShanHeiSun Uni --dialog.bolditalic.chinese-gb18030=AR PL ShanHeiSun Uni -+dialog.bolditalic.korean=NanumGothic Bold -+dialog.bolditalic.chinese-big5=AR PL UMing -+dialog.bolditalic.chinese-gb18030=AR PL UMing - - --sansserif.plain.latin-1=DejaVu LGC Sans -+sansserif.plain.latin-1=DejaVu Sans - sansserif.plain.japanese-x0208=Sazanami Gothic --sansserif.plain.korean=Baekmuk Gulim --sansserif.plain.chinese-big5=AR PL ShanHeiSun Uni --sansserif.plain.chinese-gb18030=AR PL ShanHeiSun Uni -+sansserif.plain.korean=NanumGothic -+sansserif.plain.chinese-big5=AR PL UMing -+sansserif.plain.chinese-gb18030=AR PL UMing - --sansserif.bold.latin-1=DejaVu LGC Sans Bold -+sansserif.bold.latin-1=DejaVu Sans Bold - sansserif.bold.japanese-x0208=Sazanami Gothic --sansserif.bold.korean=Baekmuk Gulim --sansserif.bold.chinese-big5=AR PL ShanHeiSun Uni --sansserif.bold.chinese-gb18030=AR PL ShanHeiSun Uni -+sansserif.bold.korean=NanumGothic Bold -+sansserif.bold.chinese-big5=AR PL UMing -+sansserif.bold.chinese-gb18030=AR PL UMing - --sansserif.italic.latin-1=DejaVu LGC Sans Oblique -+sansserif.italic.latin-1=DejaVu Sans Oblique - sansserif.italic.japanese-x0208=Sazanami Gothic --sansserif.italic.korean=Baekmuk Gulim --sansserif.italic.chinese-big5=AR PL ShanHeiSun Uni --sansserif.italic.chinese-gb18030=AR PL ShanHeiSun Uni -+sansserif.italic.korean=NanumGothic -+sansserif.italic.chinese-big5=AR PL UMing -+sansserif.italic.chinese-gb18030=AR PL UMing - --sansserif.bolditalic.latin-1=DejaVu LGC Sans Bold Oblique -+sansserif.bolditalic.latin-1=DejaVu Sans Bold Oblique - sansserif.bolditalic.japanese-x0208=Sazanami Gothic --sansserif.bolditalic.korean=Baekmuk Gulim --sansserif.bolditalic.chinese-big5=AR PL ShanHeiSun Uni --sansserif.bolditalic.chinese-gb18030=AR PL ShanHeiSun Uni -+sansserif.bolditalic.korean=NanumGothic Bold -+sansserif.bolditalic.chinese-big5=AR PL UMing -+sansserif.bolditalic.chinese-gb18030=AR PL UMing - - --serif.plain.latin-1=DejaVu LGC Serif -+serif.plain.latin-1=DejaVu Serif - serif.plain.japanese-x0208=Sazanami Mincho --serif.plain.korean=Baekmuk Batang --serif.plain.chinese-big5=AR PL ZenKai Uni --serif.plain.chinese-gb18030=AR PL ZenKai Uni -+serif.plain.korean=NanumMyeongjo -+serif.plain.chinese-big5=AR PL UKai -+serif.plain.chinese-gb18030=AR PL UKai - --serif.bold.latin-1=DejaVu LGC Serif Bold -+serif.bold.latin-1=DejaVu Serif Bold - serif.bold.japanese-x0208=Sazanami Mincho --serif.bold.korean=Baekmuk Batang --serif.bold.chinese-big5=AR PL ZenKai Uni --serif.bold.chinese-gb18030=AR PL ZenKai Uni -+serif.bold.korean=NanumMyeongjo Bold -+serif.bold.chinese-big5=AR PL UKai -+serif.bold.chinese-gb18030=AR PL UKai - --serif.italic.latin-1=DejaVu LGC Serif Oblique -+serif.italic.latin-1=DejaVu Serif Italic - serif.italic.japanese-x0208=Sazanami Mincho --serif.italic.korean=Baekmuk Batang --serif.italic.chinese-big5=AR PL ZenKai Uni --serif.italic.chinese-gb18030=AR PL ZenKai Uni -+serif.italic.korean=NanumMyeongjo -+serif.italic.chinese-big5=AR PL UKai -+serif.italic.chinese-gb18030=AR PL UKai - --serif.bolditalic.latin-1=DejaVu LGC Serif Bold Oblique -+serif.bolditalic.latin-1=DejaVu Serif Bold Italic - serif.bolditalic.japanese-x0208=Sazanami Mincho --serif.bolditalic.korean=Baekmuk Batang --serif.bolditalic.chinese-big5=AR PL ZenKai Uni --serif.bolditalic.chinese-gb18030=AR PL ZenKai Uni -+serif.bolditalic.korean=NanumMyeongjo Bold -+serif.bolditalic.chinese-big5=AR PL UKai -+serif.bolditalic.chinese-gb18030=AR PL UKai - - --monospaced.plain.latin-1=DejaVu LGC Sans Mono -+monospaced.plain.latin-1=DejaVu Sans Mono - monospaced.plain.japanese-x0208=Sazanami Gothic --monospaced.plain.korean=Baekmuk Gulim --monospaced.plain.chinese-big5=AR PL ShanHeiSun Uni --monospaced.plain.chinese-gb18030=AR PL ShanHeiSun Uni -+monospaced.plain.korean=NanumGothic -+monospaced.plain.chinese-big5=AR PL UMing -+monospaced.plain.chinese-gb18030=AR PL UMing - --monospaced.bold.latin-1=DejaVu LGC Sans Mono Bold -+monospaced.bold.latin-1=DejaVu Sans Mono Bold - monospaced.bold.japanese-x0208=Sazanami Gothic --monospaced.bold.korean=Baekmuk Gulim --monospaced.bold.chinese-big5=AR PL ShanHeiSun Uni --monospaced.bold.chinese-gb18030=AR PL ShanHeiSun Uni -+monospaced.bold.korean=NanumGothic Bold -+monospaced.bold.chinese-big5=AR PL UMing -+monospaced.bold.chinese-gb18030=AR PL UMing - --monospaced.italic.latin-1=DejaVu LGC Sans Mono Oblique -+monospaced.italic.latin-1=DejaVu Sans Mono Oblique - monospaced.italic.japanese-x0208=Sazanami Gothic --monospaced.italic.korean=Baekmuk Gulim --monospaced.italic.chinese-big5=AR PL ShanHeiSun Uni --monospaced.italic.chinese-gb18030=AR PL ShanHeiSun Uni -+monospaced.italic.korean=NanumGothic -+monospaced.italic.chinese-big5=AR PL UMing -+monospaced.italic.chinese-gb18030=AR PL UMing - --monospaced.bolditalic.latin-1=DejaVu LGC Sans Mono Bold Oblique -+monospaced.bolditalic.latin-1=DejaVu Sans Mono Bold Oblique - monospaced.bolditalic.japanese-x0208=Sazanami Gothic --monospaced.bolditalic.korean=Baekmuk Gulim --monospaced.bolditalic.chinese-big5=AR PL ShanHeiSun Uni --monospaced.bolditalic.chinese-gb18030=AR PL ShanHeiSun Uni -+monospaced.bolditalic.korean=NanumGothic Bold -+monospaced.bolditalic.chinese-big5=AR PL UMing -+monospaced.bolditalic.chinese-gb18030=AR PL UMing - - --dialoginput.plain.latin-1=DejaVu LGC Sans Mono -+dialoginput.plain.latin-1=DejaVu Sans Mono - dialoginput.plain.japanese-x0208=Sazanami Gothic --dialoginput.plain.korean=Baekmuk Gulim --dialoginput.plain.chinese-big5=AR PL ShanHeiSun Uni --dialoginput.plain.chinese-gb18030=AR PL ShanHeiSun Uni -+dialoginput.plain.korean=NanumGothic -+dialoginput.plain.chinese-big5=AR PL UMing -+dialoginput.plain.chinese-gb18030=AR PL UMing - --dialoginput.bold.latin-1=DejaVu LGC Sans Mono Bold -+dialoginput.bold.latin-1=DejaVu Sans Mono Bold - dialoginput.bold.japanese-x0208=Sazanami Gothic --dialoginput.bold.korean=Baekmuk Gulim --dialoginput.bold.chinese-big5=AR PL ShanHeiSun Uni --dialoginput.bold.chinese-gb18030=AR PL ShanHeiSun Uni -+dialoginput.bold.korean=NanumGothic Bold -+dialoginput.bold.chinese-big5=AR PL UMing -+dialoginput.bold.chinese-gb18030=AR PL UMing - --dialoginput.italic.latin-1=DejaVu LGC Sans Mono Oblique -+dialoginput.italic.latin-1=DejaVu Sans Mono Oblique - dialoginput.italic.japanese-x0208=Sazanami Gothic --dialoginput.italic.korean=Baekmuk Gulim --dialoginput.italic.chinese-big5=AR PL ShanHeiSun Uni --dialoginput.italic.chinese-gb18030=AR PL ShanHeiSun Uni -+dialoginput.italic.korean=NanumGothic -+dialoginput.italic.chinese-big5=AR PL UMing -+dialoginput.italic.chinese-gb18030=AR PL UMing - --dialoginput.bolditalic.latin-1=DejaVu LGC Sans Mono Bold Oblique -+dialoginput.bolditalic.latin-1=DejaVu Sans Mono Bold Oblique - dialoginput.bolditalic.japanese-x0208=Sazanami Gothic --dialoginput.bolditalic.korean=Baekmuk Gulim --dialoginput.bolditalic.chinese-big5=AR PL ShanHeiSun Uni --dialoginput.bolditalic.chinese-gb18030=AR PL ShanHeiSun Uni -+dialoginput.bolditalic.korean=NanumGothic Bold -+dialoginput.bolditalic.chinese-big5=AR PL UMing -+dialoginput.bolditalic.chinese-gb18030=AR PL UMing - - # Search Sequences - -@@ -166,24 +166,27 @@ - - # Font File Names - --filename.DejaVu_LGC_Sans=/usr/share/fonts/dejavu-lgc/DejaVuLGCSans.ttf --filename.DejaVu_LGC_Sans_Bold=/usr/share/fonts/dejavu-lgc/DejaVuLGCSans-Bold.ttf --filename.DejaVu_LGC_Sans_Oblique=/usr/share/fonts/dejavu-lgc/DejaVuLGCSans-Oblique.ttf --filename.DejaVu_LGC_Sans_Bold_Oblique=/usr/share/fonts/dejavu-lgc/DejaVuLGCSans-BoldOblique.ttf -+## FIXME: Should not hardcode /usr/local -+filename.DejaVu_Sans=/usr/local/lib/X11/fonts/dejavu/DejaVuSans.ttf -+filename.DejaVu_Sans_Bold=/usr/local/lib/X11/fonts/dejavu/DejaVuSans-Bold.ttf -+filename.DejaVu_Sans_Oblique=/usr/local/lib/X11/fonts/dejavu/DejaVuSans-Oblique.ttf -+filename.DejaVu_Sans_Bold_Oblique=/usr/local/lib/X11/fonts/dejavu/DejaVuSans-BoldOblique.ttf - --filename.DejaVu_LGC_Sans_Mono=/usr/share/fonts/dejavu-lgc/DejaVuLGCSansMono.ttf --filename.DejaVu_LGC_Sans_Mono_Bold=/usr/share/fonts/dejavu-lgc/DejaVuLGCSansMono-Bold.ttf --filename.DejaVu_LGC_Sans_Mono_Oblique=/usr/share/fonts/dejavu-lgc/DejaVuLGCSansMono-Oblique.ttf --filename.DejaVu_LGC_Sans_Mono_Bold_Oblique=/usr/share/fonts/dejavu-lgc/DejaVuLGCSansMono-BoldOblique.ttf -+filename.DejaVu_Sans_Mono=/usr/local/lib/X11/fonts/dejavu/DejaVuSansMono.ttf -+filename.DejaVu_Sans_Mono_Bold=/usr/local/lib/X11/fonts/dejavu/DejaVuSansMono-Bold.ttf -+filename.DejaVu_Sans_Mono_Oblique=/usr/local/lib/X11/fonts/dejavu/DejaVuSansMono-Oblique.ttf -+filename.DejaVu_Sans_Mono_Bold_Oblique=/usr/local/lib/X11/fonts/dejavu/DejaVuSansMono-BoldOblique.ttf - --filename.DejaVu_LGC_Serif=/usr/share/fonts/dejavu-lgc/DejaVuLGCSerif.ttf --filename.DejaVu_LGC_Serif_Bold=/usr/share/fonts/dejavu-lgc/DejaVuLGCSerif-Bold.ttf --filename.DejaVu_LGC_Serif_Oblique=/usr/share/fonts/dejavu-lgc/DejaVuLGCSerif-Oblique.ttf --filename.DejaVu_LGC_Serif_Bold_Oblique=/usr/share/fonts/dejavu-lgc/DejaVuLGCSerif-BoldOblique.ttf -+filename.DejaVu_Serif=/usr/local/lib/X11/fonts/dejavu/DejaVuSerif.ttf -+filename.DejaVu_Serif_Bold=/usr/local/lib/X11/fonts/dejavu/DejaVuSerif-Bold.ttf -+filename.DejaVu_Serif_Italic=/usr/local/lib/X11/fonts/dejavu/DejaVuSerif-Italic.ttf -+filename.DejaVu_Serif_Bold_Italic=/usr/local/lib/X11/fonts/dejavu/DejaVuSerif-BoldItalic.ttf - --filename.Sazanami_Gothic=/usr/share/fonts/japanese/TrueType/sazanami-gothic.ttf --filename.Sazanami_Mincho=/usr/share/fonts/japanese/TrueType/sazanami-mincho.ttf --filename.AR_PL_ShanHeiSun_Uni=/usr/share/fonts/chinese/TrueType/uming.ttf --filename.AR_PL_ZenKai_Uni=/usr/share/fonts/chinese/TrueType/ukai.ttf --filename.Baekmuk_Gulim=/usr/share/fonts/korean/TrueType/gulim.ttf --filename.Baekmuk_Batang=/usr/share/fonts/korean/TrueType/batang.ttf -+filename.Sazanami_Gothic=/usr/local/share/font-sazanami/sazanami-gothic.ttf -+filename.Sazanami_Mincho=/usr/local/share/font-sazanami/sazanami-mincho.ttf -+filename.AR_PL_ShanHeiSun_Uni=/usr/local/share/fonts/TrueType/uming.ttc -+filename.AR_PL_ZenKai_Uni=/usr/local/share/fonts/TrueType/ukai.ttc -+filename.NanumGothic=/usr/local/lib/X11/fonts/nanum-ttf/NanumGothic.ttf -+filename.NanumGothic_Bold=/usr/local/lib/X11/fonts/nanum-ttf/NanumGothicBold.ttf -+filename.NanumMyeongjo=/usr/local/lib/X11/fonts/nanum-ttf/NanumMyeongjo.ttf -+filename.NanumMyeongjo_Bold=/usr/local/lib/X11/fonts/nanum-ttf/NanumMyeongjoBold.ttf ---- ./jdk/src/solaris/classes/sun/net/PortConfig.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/classes/sun/net/PortConfig.java Sun Feb 10 09:27:00 2019 -0800 -@@ -52,7 +52,7 @@ - } else if (os.startsWith("SunOS")) { - defaultLower = 32768; - defaultUpper = 65535; -- } else if (os.contains("OS X")) { -+ } else if (os.endsWith("BSD") || os.contains("OS X")) { - defaultLower = 49152; - defaultUpper = 65535; - } else if (os.startsWith("AIX")) { ---- ./jdk/src/solaris/classes/sun/nio/ch/DefaultAsynchronousChannelProvider.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/classes/sun/nio/ch/DefaultAsynchronousChannelProvider.java Sun Feb 10 09:27:00 2019 -0800 -@@ -66,7 +66,7 @@ - return createProvider("sun.nio.ch.SolarisAsynchronousChannelProvider"); - if (osname.equals("Linux")) - return createProvider("sun.nio.ch.LinuxAsynchronousChannelProvider"); -- if (osname.contains("OS X")) -+ if (osname.endsWith("BSD") || osname.contains("OS X")) - return createProvider("sun.nio.ch.BsdAsynchronousChannelProvider"); - if (osname.equals("AIX")) - return createProvider("sun.nio.ch.AixAsynchronousChannelProvider"); ---- ./jdk/src/solaris/classes/sun/nio/fs/BsdFileSystem.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/classes/sun/nio/fs/BsdFileSystem.java Sun Feb 10 09:27:00 2019 -0800 -@@ -73,7 +73,7 @@ - * Returns object to iterate over mount entries - */ - @Override -- Iterable getMountEntries() { -+ List getMountEntries() { - ArrayList entries = new ArrayList(); - try { - long iter = BsdNativeDispatcher.getfsstat(); ---- ./jdk/src/solaris/classes/sun/nio/fs/BsdFileSystemProvider.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/classes/sun/nio/fs/BsdFileSystemProvider.java Sun Feb 10 09:27:00 2019 -0800 -@@ -25,10 +25,14 @@ - - package sun.nio.fs; - -+import java.nio.file.*; -+import java.nio.file.spi.FileTypeDetector; - import java.io.IOException; -+import java.security.AccessController; -+import sun.security.action.GetPropertyAction; - - /** -- * Bsd implementation of FileSystemProvider -+ * BSD implementation of FileSystemProvider - */ - - public class BsdFileSystemProvider extends UnixFileSystemProvider { -@@ -45,4 +49,16 @@ - BsdFileStore getFileStore(UnixPath path) throws IOException { - return new BsdFileStore(path); - } -+ -+ @Override -+ FileTypeDetector getFileTypeDetector() { -+ Path userMimeTypes = Paths.get(AccessController.doPrivileged( -+ new GetPropertyAction("user.home")), ".mime.types"); -+ Path etcMimeTypes = Paths.get("/etc/mime.types"); -+ -+ return chain(new GnomeFileTypeDetector(), -+ new MimeTypesFileTypeDetector(userMimeTypes), -+ new MimeTypesFileTypeDetector(etcMimeTypes), -+ new MagicFileTypeDetector()); -+ } - } ---- ./jdk/src/solaris/classes/sun/nio/fs/DefaultFileSystemProvider.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/classes/sun/nio/fs/DefaultFileSystemProvider.java Sun Feb 10 09:27:00 2019 -0800 -@@ -61,6 +61,8 @@ - return createProvider("sun.nio.fs.SolarisFileSystemProvider"); - if (osname.equals("Linux")) - return createProvider("sun.nio.fs.LinuxFileSystemProvider"); -+ if (osname.endsWith("BSD")) -+ return createProvider("sun.nio.fs.BsdFileSystemProvider"); - if (osname.contains("OS X")) - return createProvider("sun.nio.fs.MacOSXFileSystemProvider"); - if (osname.equals("AIX")) ---- ./jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/classes/sun/print/UnixPrintServiceLookup.java Sun Feb 10 09:27:00 2019 -0800 -@@ -161,6 +161,7 @@ - - static boolean isBSD() { - return (osname.equals("Linux") || -+ osname.endsWith("BSD") || - osname.contains("OS X")); - } - -@@ -175,12 +176,12 @@ - static int cmdIndex = UNINITIALIZED; - - String[] lpcFirstCom = { -- "/usr/sbin/lpc status | grep : | sed -ne '1,1 s/://p'", -+ "/usr/sbin/lpc status all | grep ':$' | sed -ne '1,1 s/://p'", - "/usr/sbin/lpc status | grep -E '^[ 0-9a-zA-Z_-]*@' | awk -F'@' '{print $1}'" - }; - - String[] lpcAllCom = { -- "/usr/sbin/lpc status all | grep : | sed -e 's/://'", -+ "/usr/sbin/lpc status all | grep ':$' | sed -e 's/://'", - "/usr/sbin/lpc status all | grep -E '^[ 0-9a-zA-Z_-]*@' | awk -F'@' '{print $1}' | sort" - }; - ---- ./jdk/src/solaris/classes/sun/tools/attach/BsdVirtualMachine.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/classes/sun/tools/attach/BsdVirtualMachine.java Sun Feb 10 09:27:00 2019 -0800 -@@ -273,7 +273,7 @@ - try { - b = s.getBytes("UTF-8"); - } catch (java.io.UnsupportedEncodingException x) { -- throw new InternalError(); -+ throw new InternalError(x); - } - BsdVirtualMachine.write(fd, b, 0, b.length); - } ---- ./jdk/src/solaris/native/com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_PCM.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_PCM.c Sun Feb 10 09:27:00 2019 -0800 -@@ -675,6 +675,7 @@ - return -1; - } - return 1; -+#ifdef ESTRPIPE - } else if (err == -ESTRPIPE) { - TRACE0("xrun_recovery: suspended.\n"); - ret = snd_pcm_resume(info->handle); -@@ -690,6 +691,7 @@ - return -1; - } - return 1; -+#endif - } else if (err == -EAGAIN) { - TRACE0("xrun_recovery: EAGAIN try again flag.\n"); - return 0; ---- ./jdk/src/solaris/native/com/sun/media/sound/PLATFORM_API_SolarisOS_PCM.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/com/sun/media/sound/PLATFORM_API_SolarisOS_PCM.c Sun Feb 10 09:27:00 2019 -0800 -@@ -140,7 +140,7 @@ - (float) ((int) sr->samp_rates[s]), - DAUDIO_PCM, /* encoding - let's only do PCM */ - (bits[b] > 8)?TRUE:TRUE, /* isSigned */ --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - FALSE /* little endian */ - #else - (bits[b] > 8)?TRUE:FALSE /* big endian */ ---- ./jdk/src/solaris/native/common/jni_util_md.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/common/jni_util_md.c Sun Feb 10 09:27:00 2019 -0800 -@@ -28,6 +28,7 @@ - #include "jni.h" - #include "jni_util.h" - #include "dlfcn.h" -+#include - - jstring nativeNewStringPlatform(JNIEnv *env, const char *str) { - return NULL; ---- ./jdk/src/solaris/native/java/lang/java_props_md.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/java/lang/java_props_md.c Sun Feb 10 09:27:00 2019 -0800 -@@ -111,7 +111,7 @@ - lc = setlocale(cat, NULL); - #endif - --#ifndef __linux__ -+#if !defined(__linux__) && !defined(__FreeBSD__) - if (lc == NULL) { - return 0; - } -@@ -528,23 +528,11 @@ - sprops.sun_jnu_encoding = sprops.encoding; - #endif - --#ifdef _ALLBSD_SOURCE --#if BYTE_ORDER == _LITTLE_ENDIAN -- sprops.unicode_encoding = "UnicodeLittle"; -- #else -- sprops.unicode_encoding = "UnicodeBig"; -- #endif --#else /* !_ALLBSD_SOURCE */ --#ifdef __linux__ --#if __BYTE_ORDER == __LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - sprops.unicode_encoding = "UnicodeLittle"; - #else - sprops.unicode_encoding = "UnicodeBig"; - #endif --#else -- sprops.unicode_encoding = "UnicodeBig"; --#endif --#endif /* _ALLBSD_SOURCE */ - - /* user properties */ - { ---- ./jdk/src/solaris/native/java/net/Inet4AddressImpl.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/java/net/Inet4AddressImpl.c Sun Feb 10 09:27:00 2019 -0800 -@@ -36,20 +36,13 @@ - #include - #include - --#ifdef _ALLBSD_SOURCE --#include --#include --#endif -- - #include "jvm.h" - #include "jni_util.h" - #include "net_util.h" - - #include "java_net_Inet4AddressImpl.h" - --#if defined(__GLIBC__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 601104)) --#define HAS_GLIBC_GETHOSTBY_R 1 --#endif -+extern jobjectArray lookupIfLocalhost(JNIEnv *env, const char *hostname, jboolean includeV6); - - - #if defined(_ALLBSD_SOURCE) && !defined(HAS_GLIBC_GETHOSTBY_R) -@@ -415,6 +408,17 @@ - } - #endif - -+#ifdef _ALLBSD_SOURCE -+ /* If we're looking up the local machine, bypass DNS lookups and get -+ * address from getifaddrs. -+ */ -+ ret = lookupIfLocalhost(env, hostname, JNI_FALSE); -+ if (ret != NULL || (*env)->ExceptionCheck(env)) { -+ JNU_ReleaseStringPlatformChars(env, host, hostname); -+ return ret; -+ } -+#endif -+ - error = getaddrinfo(hostname, NULL, &hints, &res); - - if (error) { ---- ./jdk/src/solaris/native/java/net/Inet6AddressImpl.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/java/net/Inet6AddressImpl.c Sun Feb 10 09:27:00 2019 -0800 -@@ -33,7 +33,7 @@ - #include - #include - #include --#ifdef MACOSX -+#ifdef _ALLBSD_SOURCE - #include - #include - #include /* gethostname */ -@@ -99,9 +99,9 @@ - return (*env)->NewStringUTF(env, hostname); - } - --#ifdef MACOSX -+#ifdef _ALLBSD_SOURCE - /* also called from Inet4AddressImpl.c */ --__private_extern__ jobjectArray -+jobjectArray - lookupIfLocalhost(JNIEnv *env, const char *hostname, jboolean includeV6) - { - jobjectArray result = NULL; -@@ -256,6 +256,19 @@ - hostname = JNU_GetStringPlatformChars(env, host, JNI_FALSE); - CHECK_NULL_RETURN(hostname, NULL); - -+#ifdef _ALLBSD_SOURCE -+ /* -+ * If we're looking up the local machine, attempt to get the address -+ * from getifaddrs. This ensures we get an IPv6 address for the local -+ * machine. -+ */ -+ ret = lookupIfLocalhost(env, hostname, JNI_TRUE); -+ if (ret != NULL || (*env)->ExceptionCheck(env)) { -+ JNU_ReleaseStringPlatformChars(env, host, hostname); -+ return ret; -+ } -+#endif -+ - #ifdef AF_INET6 - /* Try once, with our static buffer. */ - memset(&hints, 0, sizeof(hints)); ---- ./jdk/src/solaris/native/java/net/NetworkInterface.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/java/net/NetworkInterface.c Sun Feb 10 09:27:00 2019 -0800 -@@ -58,14 +58,19 @@ - #include - #include - #include --#if defined(__APPLE__) -+#if defined(__APPLE__) || defined(__FreeBSD__) - #include - #include -+#elif defined(__OpenBSD__) -+#include -+#include -+#elif defined(__NetBSD__) -+#include -+#endif - #include - #include - #include - #endif --#endif - - #include "jvm.h" - #include "jni_util.h" ---- ./jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c Sun Feb 10 09:27:00 2019 -0800 -@@ -2243,7 +2243,7 @@ - } - } - #endif --#ifdef MACOSX -+#ifdef _ALLBSD_SOURCE - if (family == AF_INET6 && index == 0) { - index = getDefaultScopeID(env); - } ---- ./jdk/src/solaris/native/java/net/PlainSocketImpl.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/java/net/PlainSocketImpl.c Sun Feb 10 09:27:00 2019 -0800 -@@ -215,6 +215,7 @@ - } - - #ifdef AF_INET6 -+#ifndef __OpenBSD__ - /* Disable IPV6_V6ONLY to ensure dual-socket support */ - if (domain == AF_INET6) { - int arg = 0; -@@ -225,6 +226,7 @@ - return; - } - } -+#endif /* ! __OpenBSD__ */ - #endif /* AF_INET6 */ - - /* ---- ./jdk/src/solaris/native/java/net/bsd_close.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/java/net/bsd_close.c Sun Feb 10 09:27:00 2019 -0800 -@@ -320,11 +320,8 @@ - } - - int NET_Accept(int s, struct sockaddr *addr, int *addrlen) { -- socklen_t len = *addrlen; -- int error = accept(s, addr, &len); -- if (error != -1) -- *addrlen = (int)len; -- BLOCKING_IO_RETURN_INT( s, error ); -+ /* See NET_RecvFrom() */ -+ BLOCKING_IO_RETURN_INT( s, accept(s, addr, (socklen_t *)addrlen) ); - } - - int NET_Connect(int s, struct sockaddr *addr, int addrlen) { -@@ -349,6 +346,68 @@ - * signal other than our wakeup signal. - */ - int NET_Timeout0(int s, long timeout, long currentTime) { -+/* -+ * On MacOS X, poll(2) is not working correctly, so a select(2) based -+ * implementation is preferred. See -+ * -+ * http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7131399 -+ * -+ * However, on FreeBSD, the select(2) based implementation can cause -+ * crashes under load and poll(2) is preferred. See -+ * -+ * http://docs.freebsd.org/cgi/getmsg.cgi?fetch=215525+0+current/freebsd-java -+ * -+ * Other *BSD will use poll(2) for now, but please adjust as appropriate. -+ */ -+#ifndef __APPLE__ -+ long prevtime = currentTime, newtime; -+ struct timeval t; -+ fdEntry_t *fdEntry = getFdEntry(s); -+ -+ /* -+ * Check that fd hasn't been closed. -+ */ -+ if (fdEntry == NULL) { -+ errno = EBADF; -+ return -1; -+ } -+ -+ for(;;) { -+ struct pollfd pfd; -+ int rv; -+ threadEntry_t self; -+ -+ /* -+ * Poll the fd. If interrupted by our wakeup signal -+ * errno will be set to EBADF. -+ */ -+ pfd.fd = s; -+ pfd.events = POLLIN | POLLERR; -+ -+ startOp(fdEntry, &self); -+ rv = poll(&pfd, 1, timeout); -+ endOp(fdEntry, &self); -+ -+ /* -+ * If interrupted then adjust timeout. If timeout -+ * has expired return 0 (indicating timeout expired). -+ */ -+ if (rv < 0 && errno == EINTR) { -+ if (timeout > 0) { -+ gettimeofday(&t, NULL); -+ newtime = t.tv_sec * 1000 + t.tv_usec / 1000; -+ timeout -= newtime - prevtime; -+ if (timeout <= 0) { -+ return 0; -+ } -+ prevtime = newtime; -+ } -+ } else { -+ return rv; -+ } -+ -+ } -+#else - long prevtime = currentTime, newtime; - struct timeval t, *tp = &t; - fd_set fds; -@@ -432,4 +491,5 @@ - } - - } -+#endif - } ---- ./jdk/src/solaris/native/java/net/net_util_md.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/java/net/net_util_md.c Sun Feb 10 09:27:00 2019 -0800 -@@ -46,6 +46,10 @@ - #endif - #endif - -+#ifdef __OpenBSD__ -+#include -+#endif -+ - #ifdef __solaris__ - #include - #include -@@ -81,7 +85,7 @@ - - void setDefaultScopeID(JNIEnv *env, struct sockaddr *him) - { --#ifdef MACOSX -+#ifdef _ALLBSD_SOURCE - static jclass ni_class = NULL; - static jfieldID ni_defaultIndexID; - if (ni_class == NULL) { ---- ./jdk/src/solaris/native/java/nio/MappedByteBuffer.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/java/nio/MappedByteBuffer.c Sun Feb 10 09:27:00 2019 -0800 -@@ -36,6 +36,9 @@ - Java_java_nio_MappedByteBuffer_isLoaded0(JNIEnv *env, jobject obj, jlong address, - jlong len, jint numPages) - { -+#ifdef __OpenBSD__ -+ return JNI_FALSE; -+#else - jboolean loaded = JNI_TRUE; - int result = 0; - int i = 0; -@@ -66,6 +69,7 @@ - } - free(vec); - return loaded; -+#endif - } - - ---- ./jdk/src/solaris/native/java/util/TimeZone_md.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/java/util/TimeZone_md.c Sun Feb 10 09:27:00 2019 -0800 -@@ -56,7 +56,11 @@ - #endif - - #if defined(__linux__) || defined(_ALLBSD_SOURCE) -+#ifdef __FreeBSD__ -+static const char *ETC_TIMEZONE_FILE = "/var/db/zoneinfo"; -+#else - static const char *ETC_TIMEZONE_FILE = "/etc/timezone"; -+#endif - static const char *ZONEINFO_DIR = "/usr/share/zoneinfo"; - static const char *DEFAULT_ZONEINFO_FILE = "/etc/localtime"; - #else -@@ -69,7 +73,7 @@ - static const char *ETC_ENVIRONMENT_FILE = "/etc/environment"; - #endif - --#if defined(__linux__) || defined(MACOSX) || defined(__solaris__) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) || defined(__solaris__) - - /* - * Returns a pointer to the zone ID portion of the given zoneinfo file -@@ -215,7 +219,7 @@ - return tz; - } - --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - - /* - * Performs Linux specific mapping and returns a zone ID -@@ -231,7 +235,7 @@ - char *buf; - size_t size; - --#if defined(__linux__) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - /* - * Try reading the /etc/timezone file for Debian distros. There's - * no spec of the file format available. This parsing assumes that -@@ -255,7 +259,7 @@ - return tz; - } - } --#endif /* defined(__linux__) */ -+#endif /* __linux__ || _ALLBSD_SOURCE */ - - /* - * Next, try /etc/localtime to find the zone ID. -@@ -815,7 +819,7 @@ - * Returns a GMT-offset-based zone ID. (e.g., "GMT-08:00") - */ - --#if defined(MACOSX) -+#if defined(_ALLBSD_SOURCE) - - char * - getGMTOffsetID() -@@ -877,4 +881,4 @@ - sign, (int)(offset/3600), (int)((offset%3600)/60)); - return strdup(buf); - } --#endif /* MACOSX */ -+#endif /* _ALLBSD_SOURCE */ ---- ./jdk/src/solaris/native/sun/awt/awt_Font.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/awt/awt_Font.c Sun Feb 10 09:27:00 2019 -0800 -@@ -255,7 +255,7 @@ - if (strcmp(style, "regular") == 0) { - altstyle = "roman"; - } --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - if (!strcmp(family, "lucidasans")) { - family = "lucida"; - } ---- ./jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/awt/awt_GraphicsEnv.c Sun Feb 10 09:27:00 2019 -0800 -@@ -121,7 +121,7 @@ - */ - - #define MAXFRAMEBUFFERS 16 --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - typedef struct { - int screen_number; - short x_org; -@@ -427,20 +427,15 @@ - if (XQueryExtension(awt_display, "RENDER", - &major_opcode, &first_event, &first_error)) - { -- xrenderLibHandle = dlopen("libXrender.so.1", RTLD_LAZY | RTLD_GLOBAL); -- --#ifdef MACOSX --#define XRENDER_LIB "/usr/X11/lib/libXrender.dylib" --#else --#define XRENDER_LIB "libXrender.so" --#endif -+ xrenderLibHandle = dlopen(VERSIONED_JNI_LIB_NAME("Xrender", "1"), -+ RTLD_LAZY | RTLD_GLOBAL); - - if (xrenderLibHandle == NULL) { -- xrenderLibHandle = dlopen(XRENDER_LIB, -+ xrenderLibHandle = dlopen(JNI_LIB_NAME("Xrender"), - RTLD_LAZY | RTLD_GLOBAL); - } - --#ifndef __linux__ /* SOLARIS */ -+#if !defined(__linux__) && !defined(_ALLBSD_SOURCE) /* SOLARIS */ - if (xrenderLibHandle == NULL) { - xrenderLibHandle = dlopen("/usr/sfw/lib/libXrender.so.1", - RTLD_LAZY | RTLD_GLOBAL); -@@ -584,7 +579,7 @@ - } - - #ifndef HEADLESS --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - static void xinerama_init_linux() - { - void* libHandle = NULL; -@@ -635,7 +630,7 @@ - } - } - #endif --#if !defined(__linux__) && !defined(MACOSX) /* Solaris */ -+#if !defined(__linux__) && !defined(_ALLBSD_SOURCE) /* Solaris */ - static void xinerama_init_solaris() - { - void* libHandle = NULL; -@@ -695,11 +690,11 @@ - } - - DTRACE_PRINTLN("Xinerama extension is available"); --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - xinerama_init_linux(); - #else /* Solaris */ - xinerama_init_solaris(); --#endif /* __linux__ || MACOSX */ -+#endif /* __linux__ || _ALLBSD_SOURCE */ - } - #endif /* HEADLESS */ - -@@ -1597,7 +1592,7 @@ - { - jobject point = NULL; - #ifndef HEADLESS /* return NULL in HEADLESS, Linux */ --#if !defined(__linux__) && !defined(MACOSX) -+#if !defined(__linux__) && !defined(_ALLBSD_SOURCE) - int x,y; - - AWT_LOCK(); -@@ -1610,7 +1605,7 @@ - DTRACE_PRINTLN("unable to call XineramaSolarisCenterFunc: symbol is null"); - } - AWT_FLUSH_UNLOCK(); --#endif /* __linux __ || MACOSX */ -+#endif /* __linux __ || _ALLBSD_SOURCE */ - #endif /* HEADLESS */ - return point; - } ---- ./jdk/src/solaris/native/sun/awt/awt_InputMethod.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/awt/awt_InputMethod.c Sun Feb 10 09:27:00 2019 -0800 -@@ -53,7 +53,7 @@ - XIMPreeditDrawCallbackStruct *); - static void PreeditCaretCallback(XIC, XPointer, - XIMPreeditCaretCallbackStruct *); --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - static void StatusStartCallback(XIC, XPointer, XPointer); - static void StatusDoneCallback(XIC, XPointer, XPointer); - static void StatusDrawCallback(XIC, XPointer, -@@ -67,7 +67,7 @@ - #define PreeditDoneIndex 1 - #define PreeditDrawIndex 2 - #define PreeditCaretIndex 3 --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - #define StatusStartIndex 4 - #define StatusDoneIndex 5 - #define StatusDrawIndex 6 -@@ -85,14 +85,14 @@ - (XIMProc)PreeditDoneCallback, - (XIMProc)PreeditDrawCallback, - (XIMProc)PreeditCaretCallback, --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - (XIMProc)StatusStartCallback, - (XIMProc)StatusDoneCallback, - (XIMProc)StatusDrawCallback, - #endif - }; - --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - #define MAX_STATUS_LEN 100 - typedef struct { - Window w; /*status window id */ -@@ -125,7 +125,7 @@ - XIMCallback *callbacks; /* callback parameters */ - jobject x11inputmethod; /* global ref to X11InputMethod instance */ - /* associated with the XIC */ --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - StatusWindow *statusWindow; /* our own status window */ - #endif - char *lookup_buf; /* buffer used for XmbLookupString */ -@@ -371,7 +371,7 @@ - static void - freeX11InputMethodData(JNIEnv *env, X11InputMethodData *pX11IMData) - { --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - if (pX11IMData->statusWindow != NULL){ - StatusWindow *sw = pX11IMData->statusWindow; - XFreeGC(awt_display, sw->lightGC); -@@ -474,7 +474,7 @@ - pX11IMData = getX11InputMethodData(env, currentX11InputMethodInstance); - - if (pX11IMData == NULL) { --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - return False; - #else - return result; -@@ -482,7 +482,7 @@ - } - - if ((ic = pX11IMData->current_ic) == (XIC)0){ --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - return False; - #else - return result; -@@ -574,7 +574,7 @@ - return result; - } - --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - static StatusWindow *createStatusWindow( - Window parent) { - StatusWindow *statusWindow; -@@ -887,7 +887,7 @@ - } - } - } --#endif /* __linux__ || MACOSX */ -+#endif /* __linux__ || _ALLBSD_SOURCE */ - /* - * Creates two XICs, one for active clients and the other for passive - * clients. All information on those XICs are stored in the -@@ -930,7 +930,7 @@ - return FALSE ; - } - --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - on_the_spot_styles |= XIMStatusNothing; - - /*kinput does not support XIMPreeditCallbacks and XIMStatusArea -@@ -943,9 +943,9 @@ - break; - } - } --#else /*! __linux__ && !MACOSX */ -+#else /*! __linux__ && !_ALLBSD_SOURCE */ - on_the_spot_styles |= XIMStatusNothing; --#endif /* __linux__ || MACOSX */ -+#endif /* __linux__ || _ALLBSD_SOURCE */ - - for (i = 0; i < im_styles->count_styles; i++) { - active_styles |= im_styles->supported_styles[i] & on_the_spot_styles; -@@ -999,7 +999,7 @@ - NULL); - if (preedit == (XVaNestedList)NULL) - goto err; --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - /*always try XIMStatusCallbacks for active client...*/ - { - status = (XVaNestedList)XVaCreateNestedList(0, -@@ -1021,7 +1021,7 @@ - XFree((void *)status); - XFree((void *)preedit); - } --#else /* !__linux__ && !MACOSX */ -+#else /* !__linux__ && !_ALLBSD_SOURCE */ - pX11IMData->ic_active = XCreateIC(X11im, - XNClientWindow, w, - XNFocusWindow, w, -@@ -1029,7 +1029,7 @@ - XNPreeditAttributes, preedit, - NULL); - XFree((void *)preedit); --#endif /* __linux__ || MACOSX */ -+#endif /* __linux__ || _ALLBSD_SOURCE */ - } else { - pX11IMData->ic_active = XCreateIC(X11im, - XNClientWindow, w, -@@ -1189,7 +1189,7 @@ - - } - --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - static void - StatusStartCallback(XIC ic, XPointer client_data, XPointer call_data) - { -@@ -1257,7 +1257,7 @@ - finally: - AWT_UNLOCK(); - } --#endif /* __linux__ || MACOSX */ -+#endif /* __linux__ || _ALLBSD_SOURCE */ - - static void CommitStringCallback(XIC ic, XPointer client_data, XPointer call_data) { - JNIEnv *env = GetJNIEnv(); -@@ -1354,14 +1354,14 @@ - /* Use IMInstantiate call back only on Linux, as there is a bug in Solaris - (4768335) - */ --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - registered = XRegisterIMInstantiateCallback(dpy, NULL, NULL, - NULL, (XIDProc)OpenXIMCallback, NULL); - if (!registered) { - /* directly call openXIM callback */ - #endif - OpenXIMCallback(dpy, NULL, NULL); --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - } - #endif - -@@ -1396,9 +1396,9 @@ - - globalRef = (*env)->NewGlobalRef(env, this); - pX11IMData->x11inputmethod = globalRef; --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - pX11IMData->statusWindow = NULL; --#endif /* __linux__ || MACOSX */ -+#endif /* __linux__ || _ALLBSD_SOURCE */ - - pX11IMData->lookup_buf = 0; - pX11IMData->lookup_buf_len = 0; -@@ -1448,14 +1448,14 @@ - setXICFocus(pX11IMData->current_ic, req); - currentX11InputMethodInstance = pX11IMData->x11inputmethod; - currentFocusWindow = w; --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - if (active && pX11IMData->statusWindow && pX11IMData->statusWindow->on) - onoffStatusWindow(pX11IMData, w, True); - #endif - } else { - currentX11InputMethodInstance = NULL; - currentFocusWindow = 0; --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - onoffStatusWindow(pX11IMData, 0, False); - if (pX11IMData->current_ic != NULL) - #endif -@@ -1472,7 +1472,7 @@ - Java_sun_awt_X11InputMethod_turnoffStatusWindow(JNIEnv *env, - jobject this) - { --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - X11InputMethodData *pX11IMData; - StatusWindow *statusWindow; - -@@ -1640,7 +1640,7 @@ - JNIEXPORT void JNICALL Java_sun_awt_X11_XInputMethod_adjustStatusWindow - (JNIEnv *env, jobject this, jlong window) - { --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - AWT_LOCK(); - adjustStatusWindow(window); - AWT_UNLOCK(); ---- ./jdk/src/solaris/native/sun/awt/awt_Robot.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/awt/awt_Robot.c Sun Feb 10 09:27:00 2019 -0800 -@@ -48,7 +48,7 @@ - #include "wsutils.h" - #include "list.h" - #include "multiVis.h" --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - #include - #endif - ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/src/solaris/native/sun/awt/extutil.h Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,251 @@ -+/* -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+/* -+ * This file is available under and governed by the GNU General Public -+ * License version 2 only, as published by the Free Software Foundation. -+ * However, the following notice accompanied the original version of this -+ * file: -+ * -+ * $Xorg: extutil.h,v 1.3 2000/08/18 04:05:45 coskrey Exp $ -+ * -+Copyright 1989, 1998 The Open Group -+ -+All Rights Reserved. -+ -+The above copyright notice and this permission notice shall be included in -+all copies or substantial portions of the Software. -+ -+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -+OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -+ -+Except as contained in this notice, the name of The Open Group shall not be -+used in advertising or otherwise to promote the sale, use or other dealings -+in this Software without prior written authorization from The Open Group. -+ * -+ * Author: Jim Fulton, MIT The Open Group -+ * -+ * Xlib Extension-Writing Utilities -+ * -+ * This package contains utilities for writing the client API for various -+ * protocol extensions. THESE INTERFACES ARE NOT PART OF THE X STANDARD AND -+ * ARE SUBJECT TO CHANGE! -+ */ -+/* $XFree86: xc/include/extensions/extutil.h,v 1.5 2001/01/17 17:53:20 dawes Exp $ */ -+ -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) -+ -+#ifndef _EXTUTIL_H_ -+#define _EXTUTIL_H_ -+ -+/* -+ * We need to keep a list of open displays since the Xlib display list isn't -+ * public. We also have to per-display info in a separate block since it isn't -+ * stored directly in the Display structure. -+ */ -+typedef struct _XExtDisplayInfo { -+ struct _XExtDisplayInfo *next; /* keep a linked list */ -+ Display *display; /* which display this is */ -+ XExtCodes *codes; /* the extension protocol codes */ -+ XPointer data; /* extra data for extension to use */ -+} XExtDisplayInfo; -+ -+typedef struct _XExtensionInfo { -+ XExtDisplayInfo *head; /* start of list */ -+ XExtDisplayInfo *cur; /* most recently used */ -+ int ndisplays; /* number of displays */ -+} XExtensionInfo; -+ -+typedef struct _XExtensionHooks { -+ int (*create_gc)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ GC /* gc */, -+ XExtCodes* /* codes */ -+#endif -+); -+ int (*copy_gc)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ GC /* gc */, -+ XExtCodes* /* codes */ -+#endif -+); -+ int (*flush_gc)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ GC /* gc */, -+ XExtCodes* /* codes */ -+#endif -+); -+ int (*free_gc)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ GC /* gc */, -+ XExtCodes* /* codes */ -+#endif -+); -+ int (*create_font)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ XFontStruct* /* fs */, -+ XExtCodes* /* codes */ -+#endif -+); -+ int (*free_font)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ XFontStruct* /* fs */, -+ XExtCodes* /* codes */ -+#endif -+); -+ int (*close_display)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ XExtCodes* /* codes */ -+#endif -+); -+ Bool (*wire_to_event)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ XEvent* /* re */, -+ xEvent* /* event */ -+#endif -+); -+ Status (*event_to_wire)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ XEvent* /* re */, -+ xEvent* /* event */ -+#endif -+); -+ int (*error)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ xError* /* err */, -+ XExtCodes* /* codes */, -+ int* /* ret_code */ -+#endif -+); -+ char *(*error_string)( -+#if NeedNestedPrototypes -+ Display* /* display */, -+ int /* code */, -+ XExtCodes* /* codes */, -+ char* /* buffer */, -+ int /* nbytes */ -+#endif -+); -+} XExtensionHooks; -+ -+extern XExtensionInfo *XextCreateExtension( -+#if NeedFunctionPrototypes -+ void -+#endif -+); -+extern void XextDestroyExtension( -+#if NeedFunctionPrototypes -+ XExtensionInfo* /* info */ -+#endif -+); -+extern XExtDisplayInfo *XextAddDisplay( -+#if NeedFunctionPrototypes -+ XExtensionInfo* /* extinfo */, -+ Display* /* dpy */, -+ char* /* ext_name */, -+ XExtensionHooks* /* hooks */, -+ int /* nevents */, -+ XPointer /* data */ -+#endif -+); -+extern int XextRemoveDisplay( -+#if NeedFunctionPrototypes -+ XExtensionInfo* /* extinfo */, -+ Display* /* dpy */ -+#endif -+); -+extern XExtDisplayInfo *XextFindDisplay( -+#if NeedFunctionPrototypes -+ XExtensionInfo* /* extinfo */, -+ Display* /* dpy */ -+#endif -+); -+ -+#define XextHasExtension(i) ((i) && ((i)->codes)) -+#define XextCheckExtension(dpy,i,name,val) \ -+ if (!XextHasExtension(i)) { XMissingExtension (dpy, name); return val; } -+#define XextSimpleCheckExtension(dpy,i,name) \ -+ if (!XextHasExtension(i)) { XMissingExtension (dpy, name); return; } -+ -+ -+/* -+ * helper macros to generate code that is common to all extensions; caller -+ * should prefix it with static if extension source is in one file; this -+ * could be a utility function, but have to stack 6 unused arguments for -+ * something that is called many, many times would be bad. -+ */ -+#define XEXT_GENERATE_FIND_DISPLAY(proc,extinfo,extname,hooks,nev,data) \ -+XExtDisplayInfo *proc (Display *dpy) \ -+{ \ -+ XExtDisplayInfo *dpyinfo; \ -+ if (!extinfo) { if (!(extinfo = XextCreateExtension())) return NULL; } \ -+ if (!(dpyinfo = XextFindDisplay (extinfo, dpy))) \ -+ dpyinfo = XextAddDisplay (extinfo,dpy,extname,hooks,nev,data); \ -+ return dpyinfo; \ -+} -+ -+#define XEXT_FIND_DISPLAY_PROTO(proc) \ -+ XExtDisplayInfo *proc(Display *dpy) -+ -+#define XEXT_GENERATE_CLOSE_DISPLAY(proc,extinfo) \ -+int proc (Display *dpy, XExtCodes *codes) \ -+{ \ -+ return XextRemoveDisplay (extinfo, dpy); \ -+} -+ -+#define XEXT_CLOSE_DISPLAY_PROTO(proc) \ -+ int proc(Display *dpy, XExtCodes *codes) -+ -+#define XEXT_GENERATE_ERROR_STRING(proc,extname,nerr,errl) \ -+char *proc (Display *dpy, int code, XExtCodes *codes, char *buf, int n) \ -+{ \ -+ code -= codes->first_error; \ -+ if (code >= 0 && code < nerr) { \ -+ char tmp[256]; \ -+ sprintf (tmp, "%s.%d", extname, code); \ -+ XGetErrorDatabaseText (dpy, "XProtoError", tmp, errl[code], buf, n); \ -+ return buf; \ -+ } \ -+ return (char *)0; \ -+} -+ -+#define XEXT_ERROR_STRING_PROTO(proc) \ -+ char *proc(Display *dpy, int code, XExtCodes *codes, char *buf, int n) -+#endif -+ -+#endif /* __linux__ || _ALLBSD_SOURCE */ ---- ./jdk/src/solaris/native/sun/awt/fontpath.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/awt/fontpath.c Sun Feb 10 09:27:00 2019 -0800 -@@ -23,9 +23,9 @@ - * questions. - */ - --#if defined(__linux__) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - #include --#endif /* __linux__ */ -+#endif /* __linux__ || _ALLBSD_SOURCE */ - #include - #include - #include -@@ -113,7 +113,6 @@ - OPENWINHOMELIB "locale/ar/X11/fonts/Type1", - NULL, /* terminates the list */ - }; -- - #elif defined( __linux__) - /* All the known interesting locations we have discovered on - * various flavors of Linux -@@ -140,6 +139,20 @@ - "/usr/lpp/X11/lib/X11/fonts/TrueType", /* from X11.fnt.ucs.ttf */ - NULL, /* terminates the list */ - }; -+#elif defined(_ALLBSD_SOURCE) -+static char *fullBSDFontPath[] = { -+ PACKAGE_PATH "/lib/X11/fonts/TrueType", -+ PACKAGE_PATH "/lib/X11/fonts/truetype", -+ PACKAGE_PATH "/lib/X11/fonts/TTF", -+ PACKAGE_PATH "/lib/X11/fonts/OTF", -+ PACKAGE_PATH "/share/fonts/TrueType", -+ PACKAGE_PATH "/share/fonts/truetype", -+ PACKAGE_PATH "/share/fonts/TTF", -+ PACKAGE_PATH "/share/fonts/OTF", -+ PACKAGE_PATH "/lib/X11/fonts/Type1", -+ PACKAGE_PATH "/share/fonts/Type1", -+ NULL, /* terminates the list */ -+}; - #endif - - static char **getFontConfigLocations(); -@@ -381,7 +394,7 @@ - - #endif /* !HEADLESS */ - --#if defined(__linux__) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - /* from awt_LoadLibrary.c */ - JNIEXPORT jboolean JNICALL AWTIsHeadless(); - #endif -@@ -512,6 +525,8 @@ - knowndirs = fullSolarisFontPath; - #elif defined(_AIX) - knowndirs = fullAixFontPath; -+#elif defined(_ALLBSD_SOURCE) -+ knowndirs = fullBSDFontPath; - #endif - /* REMIND: this code requires to be executed when the GraphicsEnvironment - * is already initialised. That is always true, but if it were not so, -@@ -520,8 +535,8 @@ - */ - #ifndef HEADLESS - if (isX11) { // The following only works in an x11 environment. --#if defined(__linux__) -- /* There's no headless build on linux ... */ -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) -+ /* There's no headless build on linux and BSD ... */ - if (!AWTIsHeadless()) { /* .. so need to call a function to check */ - #endif - /* Using the X11 font path to locate font files is now a fallback -@@ -536,7 +551,7 @@ - x11dirs = getX11FontPath(); - } - AWT_UNLOCK(); --#if defined(__linux__) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - } - #endif - } -@@ -1247,7 +1262,7 @@ - */ - if (fontformat != NULL - && (strcmp((char*)fontformat, "TrueType") != 0) --#if defined(__linux__) || defined(_AIX) -+#if defined(__linux__) || defined(_AIX) || defined(_ALLBSD_SOURCE) - && (strcmp((char*)fontformat, "Type 1") != 0) - && !(isOpenJDK && (strcmp((char*)fontformat, "CFF") == 0)) - #endif ---- ./jdk/src/solaris/native/sun/java2d/j2d_md.h Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/java2d/j2d_md.h Sun Feb 10 09:27:00 2019 -0800 -@@ -28,11 +28,11 @@ - #include - - /* -- * Linux and MACOSX's version of does not define intptr_t -+ * Linux and BSD's version of does not define intptr_t - */ --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - #include --#endif /* __linux__ || MACOSX */ -+#endif /* __linux__ || _ALLBSD_SOURCE */ - - typedef unsigned char jubyte; - typedef unsigned short jushort; ---- ./jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/java2d/loops/mlib_ImageZoom_NN.c Sun Feb 10 09:27:00 2019 -0800 -@@ -63,9 +63,6 @@ - * MLIB_EDGE_SRC_PADDED - */ - --#ifdef MACOSX --#include --#endif - #include - #include - -@@ -102,7 +99,7 @@ - - /***************************************************************/ - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - - static const mlib_u32 mlib_bit_mask4[16] = { - 0x00000000u, 0xFF000000u, 0x00FF0000u, 0xFFFF0000u, -@@ -111,7 +108,7 @@ - 0x0000FFFFu, 0xFF00FFFFu, 0x00FFFFFFu, 0xFFFFFFFFu - }; - --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - - static const mlib_u32 mlib_bit_mask4[16] = { - 0x00000000u, 0x000000FFu, 0x0000FF00u, 0x0000FFFFu, -@@ -120,7 +117,7 @@ - 0xFFFF0000u, 0xFFFF00FFu, 0xFFFFFF00u, 0xFFFFFFFFu - }; - --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - /***************************************************************/ - -@@ -344,11 +341,11 @@ - #ifdef _NO_LONGLONG - - typedef struct { --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - mlib_u32 uint1, uint0; --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - mlib_u32 uint0, uint1; --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - } two_uint; - - /***************************************************************/ -@@ -511,11 +508,11 @@ - DTYPE mask; - MASK(mask); - off *= 8; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - LSHIFT(dd_old, da[0], 64 - off); --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - RSHIFT(dd_old, da[0], 64 - off); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - - #ifdef __SUNPRO_C - #pragma pipeloop(0) -@@ -540,30 +537,30 @@ - - res = (res & 0xff) | (res >> 8); - dd = gray_mask[res]; --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - /* *da++ = (dd_old >> (64 - off)) | (dd << off);*/ - RSHIFT(dd_old, dd_old, 64 - off); - LSHIFT(dtmp, dd, off); --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - /* *da++ = (dd_old << (64 - off)) | (dd >> off);*/ - LSHIFT(dd_old, dd_old, 64 - off); - RSHIFT(dtmp, dd, off); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - LOGIC(*da++, dd_old, dtmp, |); - dd_old = dd; - } - --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - /* da[0] = (dd_old >> (64 - off)) | (da[0] & ((mlib_u64)((mlib_s64) -1) << off));*/ - LSHIFT(dtmp, mask, off); - LOGIC(dtmp, da[0], dtmp, &); - RSHIFT(dtmp1, dd_old, 64 - off); --#else /* _LITTLE_ENDIAN */ -+#else /* VM_LITTLE_ENDIAN */ - /* da[0] = (dd_old << (64 - off)) | (da[0] & ((mlib_u64)((mlib_s64) -1) >> off));*/ - RSHIFT(dtmp, mask, off); - LOGIC(dtmp, da[0], dtmp, &); - LSHIFT(dtmp1, dd_old, 64 - off); --#endif /* _LITTLE_ENDIAN */ -+#endif /* VM_LITTLE_ENDIAN */ - LOGIC(da[0], dtmp, dtmp1, |); - } - else { /* aligned */ ---- ./jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/java2d/loops/vis_FuncArray.c Sun Feb 10 09:27:00 2019 -0800 -@@ -804,7 +804,7 @@ - static int initialized; - static int usevis = JNI_TRUE; - --#if defined(__linux__) || defined(MACOSX) -+#if defined(__linux__) || defined(_ALLBSD_SOURCE) - # define ULTRA_CHIP "sparc64" - #else - # define ULTRA_CHIP "sun4u" ---- /dev/null Thu Jan 01 00:00:00 1970 +0000 -+++ ./jdk/src/solaris/native/sun/management/BsdOperatingSystem.c Sun Feb 10 09:27:00 2019 -0800 -@@ -0,0 +1,42 @@ -+/* -+ * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. Oracle designates this -+ * particular file as subject to the "Classpath" exception as provided -+ * by Oracle in the LICENSE file that accompanied this code. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+#include -+#include "jvm.h" -+#include "sun_management_OperatingSystemImpl.h" -+ -+JNIEXPORT jdouble JNICALL -+Java_sun_management_OperatingSystemImpl_getSystemCpuLoad -+(JNIEnv *env, jobject dummy) -+{ -+ return (jdouble) -1; -+} -+ -+JNIEXPORT jdouble JNICALL -+Java_sun_management_OperatingSystemImpl_getProcessCpuLoad -+(JNIEnv *env, jobject dummy) -+{ -+ return (jdouble) -1; -+} ---- ./jdk/src/solaris/native/sun/management/OperatingSystemImpl.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/management/OperatingSystemImpl.c Sun Feb 10 09:27:00 2019 -0800 -@@ -56,6 +56,9 @@ - #include - #include - #include -+#ifdef __FreeBSD__ -+#include -+#endif - - #if defined(_AIX) - #include -@@ -168,6 +171,25 @@ - throw_internal_error(env, "sysctlbyname failed"); - } - return available ? (jlong)vmusage.xsu_avail : (jlong)vmusage.xsu_total; -+#elif defined(__FreeBSD__) -+ struct xswdev xsw; -+ size_t mibsize, size; -+ jlong npages; -+ int mib[16], n; -+ -+ mibsize = sizeof(mib) / sizeof(mib[0]); -+ if (sysctlnametomib("vm.swap_info", mib, &mibsize) == -1) -+ return (0); -+ for (n = 0, npages = 0; ; n++) { -+ mib[mibsize] = n; -+ size = sizeof(xsw); -+ if (sysctl(mib, mibsize + 1, &xsw, &size, NULL, 0) == -1) -+ break; -+ npages += xsw.xsw_nblks; -+ if (available) -+ npages -= xsw.xsw_used; -+ } -+ return (npages * page_size); - #else /* _ALLBSD_SOURCE */ - /* - * XXXBSD: there's no way available to get swap info in -@@ -243,11 +265,30 @@ - throw_internal_error(env, "task_info failed"); - } - return t_info.virtual_size; -+#elif defined(__FreeBSD__) -+ FILE *fp; -+ unsigned long end, start; -+ jlong total = 0; -+ -+ if ((fp = fopen("/proc/curproc/map", "r")) == NULL) { -+ throw_internal_error(env, "Unable to open /proc/curproc/map"); -+ return -1; -+ } -+ -+ for (;;) { -+ // Ignore everything except start and end entries -+ if (fscanf(fp, "0x%lx 0x%lx %*[^\n]\n", &start, &end) != 2 || start > end) -+ break; -+ total += end - start; -+ } -+ -+ fclose(fp); -+ return total; - #else /* _ALLBSD_SOURCE */ - /* -- * XXXBSD: there's no way available to do it in FreeBSD, AFAIK. -+ * XXXBSD: there's no way available to do it in BSD, AFAIK. - */ -- // throw_internal_error(env, "Unimplemented in FreeBSD"); -+ // throw_internal_error(env, "Unimplemented in BSD"); - return (64 * MB); - #endif - } -@@ -324,11 +365,27 @@ - return -1; - } - return (jlong)vm_stats.free_count * page_size; -+#elif defined(__FreeBSD__) -+ static const char *vm_stats[] = { -+ "vm.stats.vm.v_free_count", -+ "vm.stats.vm.v_cache_count", -+ /* "vm.stats.vm.v_inactive_count", */ -+ NULL -+ }; -+ size_t size; -+ jlong free_pages; -+ u_int i, npages; -+ for (i = 0, free_pages = 0, size = sizeof(npages); vm_stats[i] != NULL; i++) { -+ if (sysctlbyname(vm_stats[i], &npages, &size, NULL, 0) == -1) -+ return 0; -+ free_pages += npages; -+ } -+ return (free_pages * page_size); - #elif defined(_ALLBSD_SOURCE) - /* -- * XXBSDL no way to do it in FreeBSD -+ * XXBSDL no way to do it in BSD - */ -- // throw_internal_error(env, "unimplemented in FreeBSD") -+ // throw_internal_error(env, "unimplemented in BSD") - return (128 * MB); - #elif defined(_AIX) - perfstat_memory_total_t memory_info; -@@ -346,13 +403,19 @@ - Java_sun_management_OperatingSystemImpl_getTotalPhysicalMemorySize - (JNIEnv *env, jobject mbean) - { --#ifdef _ALLBSD_SOURCE -+#if defined(_ALLBSD_SOURCE) && !defined(_SC_PHYS_PAGES) - jlong result = 0; - int mib[2]; - size_t rlen; - - mib[0] = CTL_HW; -+#if defined (HW_MEMSIZE) // Apple - mib[1] = HW_MEMSIZE; -+#elif defined(HW_PHYSMEM) // Most of BSD -+ mib[1] = HW_PHYSMEM; -+#else -+ #error No ways to get physmem -+#endif - rlen = sizeof(result); - if (sysctl(mib, 2, &result, &rlen, NULL, 0) != 0) { - throw_internal_error(env, "sysctl failed"); -@@ -372,6 +435,11 @@ - } - - -+#ifdef _ALLBSD_SOURCE -+#define FD_DIR "/dev/fd" -+#else -+#define FD_DIR "/proc/self/fd" -+#endif - - JNIEXPORT jlong JNICALL - Java_sun_management_OperatingSystemImpl_getOpenFileDescriptorCount -@@ -421,12 +489,8 @@ - free(fds); - - return nfiles; --#elif defined(_ALLBSD_SOURCE) -- /* -- * XXXBSD: there's no way available to do it in FreeBSD, AFAIK. -- */ -- // throw_internal_error(env, "Unimplemented in FreeBSD"); -- return (100); -+#elif defined(__OpenBSD__) -+ return getdtablecount(); - #else /* solaris/linux */ - DIR *dirp; - struct dirent dbuf; -@@ -438,13 +502,15 @@ - #define FD_DIR aix_fd_dir - char aix_fd_dir[32]; /* the pid has at most 19 digits */ - snprintf(aix_fd_dir, 32, "/proc/%d/fd", getpid()); -+#elif defined(_ALLBSD_SOURCE) -+#define FD_DIR "/dev/fd" - #else - #define FD_DIR "/proc/self/fd" - #endif - - dirp = opendir(FD_DIR); - if (dirp == NULL) { -- throw_internal_error(env, "Unable to open directory /proc/self/fd"); -+ throw_internal_error(env, "Unable to open directory " FD_DIR); - return -1; - } - ---- ./jdk/src/solaris/native/sun/net/portconfig.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/net/portconfig.c Sun Feb 10 09:27:00 2019 -0800 -@@ -67,6 +67,24 @@ - range->lower = net_getParam("/dev/tcp", "tcp_smallest_anon_port"); - return 0; - } -+#elif defined(__OpenBSD__) -+ { -+ int mib[3]; -+ mib[0] = CTL_NET; -+ mib[1] = PF_INET; -+ -+ mib[2] = IPCTL_IPPORT_HIFIRSTAUTO; -+ size_t rlen = sizeof(range->lower); -+ if (sysctl(mib, 3, &range->lower, &rlen, NULL, 0) == -1) -+ return -1; -+ -+ mib[2] = IPCTL_IPPORT_HILASTAUTO; -+ rlen = sizeof(range->higher); -+ if (sysctl(mib, 3, &range->higher, &rlen, NULL, 0) == -1) -+ return -1; -+ -+ return 0; -+ } - #elif defined(_ALLBSD_SOURCE) - { - int ret; ---- ./jdk/src/solaris/native/sun/nio/ch/sctp/Sctp.h Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/nio/ch/sctp/Sctp.h Sun Feb 10 09:27:00 2019 -0800 -@@ -67,7 +67,7 @@ - - - --#else /* __linux__ */ -+#elif defined(__linux__) - #include - #include - #include -@@ -319,9 +319,20 @@ - typedef int sctp_bindx_func(int sd, struct sockaddr *addrs, int addrcnt, int flags); - typedef int sctp_peeloff_func(int sock, sctp_assoc_t id); - -+#elif defined(__FreeBSD__) -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include "jni.h" - - #endif /* __linux__ */ - -+#ifndef __FreeBSD__ -+ - sctp_getladdrs_func* nio_sctp_getladdrs; - sctp_freeladdrs_func* nio_sctp_freeladdrs; - sctp_getpaddrs_func* nio_sctp_getpaddrs; -@@ -329,6 +340,17 @@ - sctp_bindx_func* nio_sctp_bindx; - sctp_peeloff_func* nio_sctp_peeloff; - -+#else -+ -+#define nio_sctp_getladdrs sctp_getladdrs -+#define nio_sctp_freeladdrs sctp_freeladdrs -+#define nio_sctp_getpaddrs sctp_getpaddrs -+#define nio_sctp_freepaddrs sctp_freepaddrs -+#define nio_sctp_bindx sctp_bindx -+#define nio_sctp_peeloff sctp_peeloff -+ -+#endif -+ - jboolean loadSocketExtensionFuncs(JNIEnv* env); - - #endif /* !SUN_NIO_CH_SCTP_H */ ---- ./jdk/src/solaris/native/sun/nio/ch/sctp/SctpNet.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/nio/ch/sctp/SctpNet.c Sun Feb 10 09:27:00 2019 -0800 -@@ -58,6 +58,7 @@ - */ - jboolean loadSocketExtensionFuncs - (JNIEnv* env) { -+#ifndef __FreeBSD__ - if (dlopen(nativeSctpLib, RTLD_GLOBAL | RTLD_LAZY) == NULL) { - JNU_ThrowByName(env, "java/lang/UnsupportedOperationException", - dlerror()); -@@ -105,6 +106,7 @@ - dlerror()); - return JNI_FALSE; - } -+#endif - - funcsLoaded = JNI_TRUE; - return JNI_TRUE; ---- ./jdk/src/solaris/native/sun/nio/fs/MagicFileTypeDetector.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/nio/fs/MagicFileTypeDetector.c Sun Feb 10 09:27:00 2019 -0800 -@@ -31,6 +31,12 @@ - #include - #include - -+#ifdef __FreeBSD__ -+#define MAGIC_MAJOR_VERSION "4" -+#else -+#define MAGIC_MAJOR_VERSION "1" -+#endif -+ - #define MAGIC_MIME_TYPE 0x000010 /* Return the MIME type */ - - typedef struct magic_set magic_t; -@@ -54,7 +60,7 @@ - { - magic_handle = dlopen("libmagic.so", RTLD_LAZY); - if (magic_handle == NULL) { -- magic_handle = dlopen("libmagic.so.1", RTLD_LAZY); -+ magic_handle = dlopen("libmagic.so." MAGIC_MAJOR_VERSION, RTLD_LAZY); - if (magic_handle == NULL) { - return JNI_FALSE; - } ---- ./jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/security/pkcs11/j2secmod_md.c Sun Feb 10 09:27:00 2019 -0800 -@@ -54,7 +54,7 @@ - } - - // look up existing handle only, do not load --#if defined(AIX) -+#if defined(AIX) || !defined(RTLD_NOLOAD) - void *hModule = dlopen(libName, RTLD_LAZY); - #else - void *hModule = dlopen(libName, RTLD_NOLOAD); ---- ./jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/tools/attach/BsdVirtualMachine.c Sun Feb 10 09:27:00 2019 -0800 -@@ -38,7 +38,9 @@ - #include - #include - #include -+#ifndef __FreeBSD__ - #include -+#endif - #include - #include - ---- ./jdk/src/solaris/native/sun/xawt/XWindow.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/solaris/native/sun/xawt/XWindow.c Sun Feb 10 09:27:00 2019 -0800 -@@ -886,7 +886,7 @@ - { - KeySym originalKeysym = *keysym; - --#if !defined(__linux__) && !defined(MACOSX) -+#if !defined(__linux__) && !defined(_ALLBSD_SOURCE) - /* The following code on Linux will cause the keypad keys - * not to echo on JTextField when the NumLock is on. The - * keysyms will be 0, because the last parameter 2 is not defined. ---- ./jdk/src/windows/native/com/sun/media/sound/PLATFORM_API_WinOS_DirectSound.cpp Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/src/windows/native/com/sun/media/sound/PLATFORM_API_WinOS_DirectSound.cpp Sun Feb 10 09:27:00 2019 -0800 -@@ -308,7 +308,7 @@ - DAUDIO_PCM, - (bitsArray[bitIndex]==8)?FALSE:TRUE, /* signed */ - (bitsArray[bitIndex]==8)?FALSE: --#ifndef _LITTLE_ENDIAN -+#ifndef VM_LITTLE_ENDIAN - TRUE /* big endian */ - #else - FALSE /* little endian */ -@@ -864,7 +864,7 @@ - return NULL; - } - if (sampleSizeInBits > 8 && --#ifdef _LITTLE_ENDIAN -+#ifdef VM_LITTLE_ENDIAN - isBigEndian - #else - !isBigEndian diff --git a/java/openjdk8/files/patch-bsd-test b/java/openjdk8/files/patch-bsd-test deleted file mode 100644 index 607257e67fe..00000000000 --- a/java/openjdk8/files/patch-bsd-test +++ /dev/null @@ -1,1503 +0,0 @@ ---- ./hotspot/test/compiler/5091921/Test7005594.sh Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/test/compiler/5091921/Test7005594.sh Sun Feb 10 09:26:05 2019 -0800 -@@ -60,6 +60,15 @@ - # Windows/MKS - MEM=`"$ROOTDIR/mksnt/sysinf" memory -v | grep "Total Physical Memory: " | sed 's/Total Physical Memory: *//g'` - MEM="$(($machine_memory / 1024))" -+elif [ -x "/sbin/sysctl" ]; then -+ # BSD -+ MEM=`(/sbin/sysctl -n hw.physmem64 2> /dev/null || /sbin/sysctl -n hw.physmem)` -+ if [ -z "$MEM" ]; then -+ echo "Unable to determine amount of physical memory on the machine" -+ MEM=0 -+ else -+ MEM="$(($MEM / 1024 / 1024))" -+ fi - else - echo "Unable to determine amount of physical memory on the machine" - fi ---- ./hotspot/test/compiler/6894807/Test6894807.sh Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/test/compiler/6894807/Test6894807.sh Sun Feb 10 09:26:05 2019 -0800 -@@ -21,7 +21,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin ) -+ SunOS | Linux | *BSD | Darwin ) - NULL=/dev/null - PS=":" - FS="/" ---- ./hotspot/test/runtime/7110720/Test7110720.sh Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/test/runtime/7110720/Test7110720.sh Sun Feb 10 09:26:05 2019 -0800 -@@ -28,7 +28,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin ) -+ SunOS | Linux | *BSD | Darwin ) - FS="/" - RM=/bin/rm - CP=/bin/cp ---- ./hotspot/test/runtime/XCheckJniJsig/XCheckJSig.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/test/runtime/XCheckJniJsig/XCheckJSig.java Sun Feb 10 09:26:05 2019 -0800 -@@ -37,8 +37,8 @@ - public static void main(String args[]) throws Throwable { - - System.out.println("Regression test for bugs 7051189 and 8023393"); -- if (!Platform.isSolaris() && !Platform.isLinux() && !Platform.isOSX()) { -- System.out.println("Test only applicable on Solaris, Linux, and Mac OSX, skipping"); -+ if (!Platform.isSolaris() && !Platform.isLinux() && !Platform.isOSX() && !Platform.isBSD()) { -+ System.out.println("Test only applicable on Solaris, Linux, BSD, and Mac OSX, skipping"); - return; - } - ---- ./hotspot/test/serviceability/dcmd/DynLibDcmdTest.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/test/serviceability/dcmd/DynLibDcmdTest.java Sun Feb 10 09:26:05 2019 -0800 -@@ -47,6 +47,8 @@ - osDependentBaseString = "lib%s.dylib"; - } else if (Platform.isLinux()) { - osDependentBaseString = "lib%s.so"; -+ } else if (Platform.isBSD()) { -+ osDependentBaseString = "lib%s.so"; - } - - if (osDependentBaseString == null) { ---- ./hotspot/test/test_env.sh Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/test/test_env.sh Sun Feb 10 09:26:05 2019 -0800 -@@ -53,7 +53,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- AIX | Darwin | Linux | SunOS ) -+ AIX | *BSD | Darwin | Linux | SunOS ) - NULL=/dev/null - PS=":" - FS="/" ---- ./hotspot/test/testlibrary/com/oracle/java/testlibrary/Platform.java Sat Dec 08 11:48:29 2018 +0000 -+++ ./hotspot/test/testlibrary/com/oracle/java/testlibrary/Platform.java Sun Feb 10 09:26:05 2019 -0800 -@@ -67,6 +67,10 @@ - return isOs("aix"); - } - -+ public static boolean isBSD() { -+ return osName.toLowerCase().endsWith("bsd"); -+ } -+ - public static boolean isLinux() { - return isOs("linux"); - } ---- ./jdk/test/com/sun/corba/5036554/TestCorbaBug.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/com/sun/corba/5036554/TestCorbaBug.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -48,7 +48,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/com/sun/corba/cachedSocket/7056731.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/com/sun/corba/cachedSocket/7056731.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -31,7 +31,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/com/sun/jdi/ImmutableResourceTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/com/sun/jdi/ImmutableResourceTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -56,7 +56,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PATHSEP=":" - ;; - ---- ./jdk/test/com/sun/jdi/JITDebug.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/com/sun/jdi/JITDebug.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -63,7 +63,7 @@ - OS=`uname -s` - export TRANSPORT_METHOD - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PATHSEP=":" - TRANSPORT_METHOD=dt_socket - ;; ---- ./jdk/test/com/sun/jdi/PrivateTransportTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/com/sun/jdi/PrivateTransportTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -106,7 +106,7 @@ - xx=`find ${jreloc}/lib -name libdt_socket.so` - libloc=`dirname ${xx}` - ;; -- Darwin) -+ *BSD | Darwin) - libloc=${jreloc}/lib - ;; - Windows*) ---- ./jdk/test/com/sun/jdi/ShellScaffold.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/com/sun/jdi/ShellScaffold.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -284,7 +284,7 @@ - psCmd=ps - jstack=jstack.exe - ;; -- SunOS | Linux | Darwin | AIX) -+ SunOS | Linux | *BSD | Darwin | AIX) - transport=dt_socket - address= - devnull=/dev/null ---- ./jdk/test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -45,7 +45,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - ;; - Windows* | CYGWIN*) ---- ./jdk/test/java/awt/Desktop/DesktopGtkLoadTest/DesktopGtkLoadTest.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/awt/Desktop/DesktopGtkLoadTest/DesktopGtkLoadTest.java Sun Feb 10 09:27:00 2019 -0800 -@@ -25,7 +25,7 @@ - * @bug 8157827 - * @summary AWT_Desktop/Automated/Exceptions/BasicTest loads incorrect GTK - * version when jdk.gtk.version=3 -- * @requires (os.family == "linux") -+ * @requires (os.family == "linux") | (os.family == "bsd") - * @run main DesktopGtkLoadTest - */ - ---- ./jdk/test/java/awt/Gtk/GtkVersionTest/GtkVersionTest.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/awt/Gtk/GtkVersionTest/GtkVersionTest.java Sun Feb 10 09:27:00 2019 -0800 -@@ -25,7 +25,7 @@ - * @bug 8156121 - * @summary "Fail forward" fails for GTK3 if no GTK2 available - * @modules java.desktop/sun.awt -- * @requires (os.family == "linux") -+ * @requires (os.family == "linux") | (os.family == "bsd") - * @run main GtkVersionTest - */ - ---- ./jdk/test/java/awt/JAWT/JAWT.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/awt/JAWT/JAWT.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -62,6 +62,23 @@ - MAKE="make" - LD_LIBRARY_PATH="." - ;; -+ *BSD ) -+ NULL=/dev/null -+ PS=":" -+ FS="/" -+ ${TESTJAVA}${FS}bin${FS}java -version 2>&1 | grep '64-Bit' > $NULL -+ if [ $? -eq '0' ] -+ then -+ ARCH="amd64" -+ else -+ ARCH="i386" -+ fi -+ SYST="bsd" -+ MAKEFILE="Makefile.unix" -+ CC="cc" -+ MAKE="make" -+ LD_LIBRARY_PATH="." -+ ;; - SunOS ) - NULL=/dev/null - PS=":" -@@ -111,7 +128,7 @@ - MAKE="make" - ;; - Darwin ) -- echo "Test passed. This test is not for MacOS." -+ echo "Test passed. This test is not for MacOS" - exit 0; - ;; - * ) ---- ./jdk/test/java/awt/Toolkit/AutoShutdown/ShowExitTest/ShowExitTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/awt/Toolkit/AutoShutdown/ShowExitTest/ShowExitTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -86,6 +86,14 @@ - TMP="/tmp" - ;; - -+ *BSD ) -+ VAR="A different value for BSD" -+ DEFAULT_JDK=/usr/local/openjdk8 -+ FILESEP="/" -+ PATHSEP=":" -+ TMP="/tmp" -+ ;; -+ - Windows* ) - VAR="A different value for Win32" - DEFAULT_JDK="C:/Program Files/Java/jdk1.8.0" ---- ./jdk/test/java/awt/Toolkit/Headless/WrappedToolkitTest/WrappedToolkitTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/awt/Toolkit/Headless/WrappedToolkitTest/WrappedToolkitTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -59,7 +59,7 @@ - # Checking for proper OS - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | CYGWIN* ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - FILESEP="/" - ;; - ---- ./jdk/test/java/awt/appletviewer/IOExceptionIfEncodedURLTest/IOExceptionIfEncodedURLTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/awt/appletviewer/IOExceptionIfEncodedURLTest/IOExceptionIfEncodedURLTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -119,6 +119,14 @@ - TMP="/tmp" - ;; - -+ *BSD ) -+ VAR="A different value for BSD" -+ DEFAULT_JDK=/usr/local/openjdk8 -+ FILESEP="/" -+ PATHSEP=":" -+ TMP="/tmp" -+ ;; -+ - Windows* ) - VAR="A different value for Win32" - DEFAULT_JDK="C:/Program Files/Java/jdk1.8.0" ---- ./jdk/test/java/io/File/GetXSpace.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/io/File/GetXSpace.java Sun Feb 10 09:27:00 2019 -0800 -@@ -51,7 +51,7 @@ - private static final String dfFormat; - static { - if (name.equals("SunOS") || name.equals("Linux") -- || name.contains("OS X")) { -+ || name.endsWith("BSD") || name.contains("OS X")) { - // FileSystem Total Used Available Use% MountedOn - dfFormat = "([^\\s]+)\\s+(\\d+)\\s+\\d+\\s+(\\d+)\\s+\\d+%\\s+([^\\s]+)"; - } else if (name.startsWith("Windows")) { ---- ./jdk/test/java/io/File/GetXSpace.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/io/File/GetXSpace.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -26,7 +26,7 @@ - # set platform-dependent variable - OS=`uname -s` - case "$OS" in -- SunOS | Linux ) TMP=/tmp ;; -+ SunOS | Linux | *BSD | Darwin ) TMP=/tmp ;; - Windows_98 ) return ;; - Windows* ) SID=`sid`; TMP="c:/temp" ;; - * ) ---- ./jdk/test/java/io/Serializable/evolution/RenamePackage/run.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/io/Serializable/evolution/RenamePackage/run.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -45,7 +45,7 @@ - # Need to determine the classpath separator and filepath separator based on the - # operating system. - case "$OS" in --SunOS | Linux | Darwin | AIX ) -+SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" ;; - Windows* | CYGWIN* ) - PS=";" ;; ---- ./jdk/test/java/io/Serializable/serialver/classpath/run.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/io/Serializable/serialver/classpath/run.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -47,7 +47,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" ;; - Windows* | CYGWIN* ) - PS=";" ;; ---- ./jdk/test/java/io/Serializable/serialver/nested/run.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/io/Serializable/serialver/nested/run.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -47,7 +47,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" ;; - Windows* | CYGWIN* ) - PS=";" ;; ---- ./jdk/test/java/lang/ClassLoader/Assert.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/ClassLoader/Assert.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -25,7 +25,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin ) -+ SunOS | Linux | Darwin | *BSD ) - FS="/" - CHMOD="${FS}bin${FS}chmod" - ;; ---- ./jdk/test/java/lang/ClassLoader/deadlock/TestCrossDelegate.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/ClassLoader/deadlock/TestCrossDelegate.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -55,7 +55,7 @@ - Linux ) - FS="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - FS="/" - ;; - AIX ) ---- ./jdk/test/java/lang/ClassLoader/deadlock/TestOneWayDelegate.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/ClassLoader/deadlock/TestOneWayDelegate.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -60,7 +60,7 @@ - Linux ) - FS="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - FS="/" - ;; - AIX ) ---- ./jdk/test/java/lang/ProcessBuilder/DestroyTest.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/ProcessBuilder/DestroyTest.java Sun Feb 10 09:27:00 2019 -0800 -@@ -148,6 +148,9 @@ - } else if (osName.startsWith("Linux") == true) { - return new UnixTest( - File.createTempFile("ProcessTrap-", ".sh",null)); -+ } else if (osName.endsWith("BSD")) { -+ return new UnixTest( -+ File.createTempFile("ProcessTrap-", ".sh",null)); - } else if (osName.startsWith("Mac OS")) { - return new MacTest( - File.createTempFile("ProcessTrap-", ".sh",null)); ---- ./jdk/test/java/lang/ProcessBuilder/Zombies.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/ProcessBuilder/Zombies.java Sun Feb 10 09:27:00 2019 -0800 -@@ -34,7 +34,7 @@ - - static final String os = System.getProperty("os.name"); - -- static final String TrueCommand = os.contains("OS X")? -+ static final String TrueCommand = (os.endsWith("BSD") || os.contains("OS X")) ? - "/usr/bin/true" : "/bin/true"; - - public static void main(String[] args) throws Throwable { ---- ./jdk/test/java/lang/StringCoding/CheckEncodings.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/StringCoding/CheckEncodings.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -30,7 +30,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) ;; -+ SunOS | Linux | *BSD | Darwin | AIX ) ;; - Windows* | CYGWIN* ) - echo "Passed"; exit 0 ;; - * ) echo "Unrecognized system!" ; exit 1 ;; ---- ./jdk/test/java/lang/annotation/loaderLeak/LoaderLeak.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/annotation/loaderLeak/LoaderLeak.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -48,7 +48,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/java/lang/instrument/MakeJAR2.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/instrument/MakeJAR2.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -55,7 +55,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux ) -+ SunOS | Linux | *BSD | Darwin ) - PATHSEP=":" - ;; - ---- ./jdk/test/java/lang/instrument/appendToClassLoaderSearch/CommonSetup.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/instrument/appendToClassLoaderSearch/CommonSetup.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -43,7 +43,7 @@ - PS=":" - FS="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - PS=":" - FS="/" - ;; ---- ./jdk/test/java/lang/management/OperatingSystemMXBean/GetSystemLoadAverage.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/management/OperatingSystemMXBean/GetSystemLoadAverage.java Sun Feb 10 09:27:00 2019 -0800 -@@ -79,8 +79,10 @@ - System.out.println("Test passed."); - } - -+ private static String osName = System.getProperty("os.name"); -+ - private static String LOAD_AVERAGE_TEXT -- = System.getProperty("os.name").contains("OS X") -+ = (osName.endsWith("BSD") || osName.contains("OS X")) - ? "load averages:" - : "load average:"; - -@@ -99,7 +101,7 @@ - System.out.println("Load average returned from uptime = " + output); - System.out.println("getSystemLoadAverage() returned " + loadavg); - -- String[] lavg = System.getProperty("os.name").contains("OS X") -+ String[] lavg = (osName.endsWith("BSD") || osName.contains("OS X")) - ? output.split(" ") - : output.split(","); - double expected = Double.parseDouble(lavg[0]); ---- ./jdk/test/java/lang/management/OperatingSystemMXBean/TestSystemLoadAvg.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/lang/management/OperatingSystemMXBean/TestSystemLoadAvg.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -61,7 +61,7 @@ - while true; do - echo "Run $i: TestSystemLoadAvg" - case `uname -s` in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - runOne GetSystemLoadAverage - ;; - * ) ---- ./jdk/test/java/net/Authenticator/B4933582.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/net/Authenticator/B4933582.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -26,7 +26,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/java/net/DatagramSocket/Send12k.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/net/DatagramSocket/Send12k.java Sun Feb 10 09:27:00 2019 -0800 -@@ -36,9 +36,10 @@ - - public static void main(String args[]) throws Exception { - -- int SEND_SIZE=0; -+ String osName = System.getProperty("os.name"); -+ int SEND_SIZE; - -- if(System.getProperty("os.name").contains("Mac")) { -+ if(osName.endsWith("BSD") || osName.contains("Mac")) { - SEND_SIZE = 16 * 576; - } else { - SEND_SIZE = 16 * 1024; ---- ./jdk/test/java/net/DatagramSocket/SendDatagramToBadAddress.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/net/DatagramSocket/SendDatagramToBadAddress.java Sun Feb 10 09:27:00 2019 -0800 -@@ -45,6 +45,8 @@ - return (true); - if (p.getProperty ("os.name").equals ("Linux")) - return (true); -+ if (p.getProperty ("os.name").endsWith ("BSD")) -+ return (true); - if (p.getProperty ("os.name").startsWith ("Mac OS")) - return (true); - // Check for specific Solaris version from here ---- ./jdk/test/java/net/DatagramSocket/SetDatagramSocketImplFactory/ADatagramSocket.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/net/DatagramSocket/SetDatagramSocketImplFactory/ADatagramSocket.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -27,11 +27,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Darwin | AIX ) -- PATHSEP=":" -- FILESEP="/" -- ;; -- Linux ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PATHSEP=":" - FILESEP="/" - ;; ---- ./jdk/test/java/net/Socket/OldSocketImpl.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/net/Socket/OldSocketImpl.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -28,7 +28,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/java/net/URL/B5086147.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/net/URL/B5086147.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -26,7 +26,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - exit 0 - ;; - CYGWIN* ) ---- ./jdk/test/java/net/URLClassLoader/B5077773.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/net/URLClassLoader/B5077773.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -34,11 +34,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Darwin | AIX ) -- PS=":" -- FS="/" -- ;; -- Linux ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/java/net/URLClassLoader/sealing/checksealed.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/net/URLClassLoader/sealing/checksealed.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -27,11 +27,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Darwin | AIX ) -- PS=":" -- FS="/" -- ;; -- Linux ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/java/net/URLConnection/6212146/test.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/net/URLConnection/6212146/test.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -33,11 +33,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Darwin | AIX ) -- PS=":" -- FS="/" -- ;; -- Linux ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/java/nio/channels/FileChannel/Transfer.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/nio/channels/FileChannel/Transfer.java Sun Feb 10 09:27:00 2019 -0800 -@@ -228,7 +228,7 @@ - // Windows and Linux can't handle the really large file sizes for a - // truncate or a positional write required by the test for 4563125 - String osName = System.getProperty("os.name"); -- if (!(osName.startsWith("SunOS") || osName.contains("OS X"))) -+ if (!(osName.startsWith("SunOS") || osName.endsWith("BSD") || osName.contains("OS X"))) - return; - File source = File.createTempFile("blah", null); - source.deleteOnExit(); ---- ./jdk/test/java/nio/channels/spi/SelectorProvider/inheritedChannel/Launcher.c Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/nio/channels/spi/SelectorProvider/inheritedChannel/Launcher.c Sun Feb 10 09:27:00 2019 -0800 -@@ -17,6 +17,12 @@ - - #include "Launcher.h" - -+#ifdef _ALLBSD_SOURCE -+#define FD_DIR "/dev/fd" -+#else -+#define FD_DIR "/proc/self/fd" -+#endif -+ - /* - * Throws the exception of the given class name and detail message - */ -@@ -135,7 +141,7 @@ - } - close(thisFd); - -- if ((dp = opendir("/proc/self/fd")) == NULL) { -+ if ((dp = opendir(FD_DIR)) == NULL) { - _exit(-1); - } - ---- ./jdk/test/java/nio/charset/coders/CheckSJISMappingProp.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/nio/charset/coders/CheckSJISMappingProp.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -34,7 +34,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) ;; -+ SunOS | Linux | *BSD | Darwin | AIX ) ;; - # Skip locale test for Windows - Windows* | CYGWIN* ) - echo "Passed"; exit 0 ;; ---- ./jdk/test/java/nio/charset/spi/basic.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/nio/charset/spi/basic.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -48,7 +48,7 @@ - - DIR=`pwd` - case `uname` in -- SunOS | Linux | Darwin | AIX ) CPS=':' ;; -+ SunOS | Linux | *BSD | Darwin | AIX ) CPS=':' ;; - Windows* ) CPS=';' ;; - CYGWIN* ) - DIR=`/usr/bin/cygpath -a -s -m $DIR` ---- ./jdk/test/java/nio/file/FileSystem/Basic.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/nio/file/FileSystem/Basic.java Sun Feb 10 09:27:00 2019 -0800 -@@ -76,7 +76,7 @@ - checkSupported(fs, "posix", "unix", "owner", "acl", "user"); - if (os.equals("Linux")) - checkSupported(fs, "posix", "unix", "owner", "dos", "user"); -- if (os.contains("OS X")) -+ if (os.endsWith("BSD") || os.contains("OS X")) - checkSupported(fs, "posix", "unix", "owner"); - if (os.equals("Windows")) - checkSupported(fs, "owner", "dos", "acl", "user"); ---- ./jdk/test/java/nio/file/Files/CopyAndMove.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/nio/file/Files/CopyAndMove.java Sun Feb 10 09:27:00 2019 -0800 -@@ -651,7 +651,7 @@ - - // check POSIX attributes are copied - String os = System.getProperty("os.name"); -- if ((os.equals("SunOS") || os.equals("Linux")) && -+ if ((os.equals("SunOS") || os.equals("Linux") || os.endsWith("BSD")) && - testPosixAttributes) - { - checkPosixAttributes( -@@ -1155,7 +1155,7 @@ - static void randomizeAttributes(Path file) throws IOException { - String os = System.getProperty("os.name"); - boolean isWindows = os.startsWith("Windows"); -- boolean isUnix = os.equals("SunOS") || os.equals("Linux"); -+ boolean isUnix = os.equals("SunOS") || os.equals("Linux") || os.endsWith("BSD"); - boolean isDirectory = isDirectory(file, NOFOLLOW_LINKS); - - if (isUnix) { ---- ./jdk/test/java/nio/file/Files/probeContentType/ParallelProbes.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/nio/file/Files/probeContentType/ParallelProbes.java Sun Feb 10 09:27:00 2019 -0800 -@@ -28,7 +28,7 @@ - - /* @test - * @summary Test probing content type simultaneously from multiple threads. -- * @requires (os.family == "linux") | (os.family == "solaris") -+ * @requires (os.family == "linux") | (os.family == "solaris") | (os.family == "bsd") - * @run main ParallelProbes 10 - */ - public class ParallelProbes { ---- ./jdk/test/java/rmi/activation/Activatable/extLoadedImpl/ext.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/rmi/activation/Activatable/extLoadedImpl/ext.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -33,7 +33,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - ;; - Windows* | CYGWIN* ) ---- ./jdk/test/java/rmi/registry/readTest/readTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/rmi/registry/readTest/readTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -34,7 +34,7 @@ - REGARGS="" - - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - CHMOD="${FS}bin${FS}chmod" ---- ./jdk/test/java/security/Security/ClassLoaderDeadlock/ClassLoaderDeadlock.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/security/Security/ClassLoaderDeadlock/ClassLoaderDeadlock.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -58,7 +58,7 @@ - PATHSEP=":" - FILESEP="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - PATHSEP=":" - FILESEP="/" - ;; ---- ./jdk/test/java/security/Security/ClassLoaderDeadlock/Deadlock.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/security/Security/ClassLoaderDeadlock/Deadlock.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -42,7 +42,7 @@ - PATHSEP=":" - FILESEP="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - PATHSEP=":" - FILESEP="/" - ;; ---- ./jdk/test/java/security/Security/ClassLoaderDeadlock/Deadlock2.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/security/Security/ClassLoaderDeadlock/Deadlock2.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -66,7 +66,7 @@ - PATHSEP=";" - FILESEP="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - PATHSEP=":" - FILESEP="/" - ;; ---- ./jdk/test/java/security/Security/signedfirst/Dyn.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/security/Security/signedfirst/Dyn.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -58,7 +58,7 @@ - PATHSEP=":" - FILESEP="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - PATHSEP=":" - FILESEP="/" - ;; ---- ./jdk/test/java/security/Security/signedfirst/Static.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/security/Security/signedfirst/Static.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -58,7 +58,7 @@ - PATHSEP=":" - FILESEP="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - PATHSEP=":" - FILESEP="/" - ;; ---- ./jdk/test/java/util/Currency/PropertiesTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/util/Currency/PropertiesTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -52,7 +52,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/java/util/PluggableLocale/ExecTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/util/PluggableLocale/ExecTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -62,7 +62,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/java/util/ResourceBundle/Bug6299235Test.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/util/ResourceBundle/Bug6299235Test.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -31,7 +31,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PATHSEP=":" - FILESEP="/" - ;; ---- ./jdk/test/java/util/ServiceLoader/basic.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/util/ServiceLoader/basic.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -43,9 +43,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Darwin | AIX ) -- SEP=':' ;; -- Linux ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - SEP=':' ;; - * ) - SEP='\;' ;; ---- ./jdk/test/java/util/prefs/CheckUserPrefsStorage.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/java/util/prefs/CheckUserPrefsStorage.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -31,7 +31,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/javax/crypto/SecretKeyFactory/FailOverTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/javax/crypto/SecretKeyFactory/FailOverTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -56,7 +56,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/javax/imageio/metadata/IIOMetadataFormat/runMetadataFormatTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/javax/imageio/metadata/IIOMetadataFormat/runMetadataFormatTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -89,7 +89,7 @@ - FILESEP="/" - ;; - -- Linux | Darwin | AIX ) -+ Linux | *BSD | Darwin | AIX ) - VAR="A different value for Linux" - DEFAULT_JDK=/none - #DEFAULT_JDK=/usr/local/java/jdk1.4/linux-i386 ---- ./jdk/test/javax/imageio/metadata/IIOMetadataFormat/runMetadataFormatThreadTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/javax/imageio/metadata/IIOMetadataFormat/runMetadataFormatThreadTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -90,7 +90,7 @@ - FILESEP="/" - ;; - -- Linux | Darwin | AIX ) -+ Linux | *BSD | Darwin | AIX ) - VAR="A different value for Linux" - DEFAULT_JDK=/none - #DEFAULT_JDK=/usr/local/java/jdk1.4/linux-i386 ---- ./jdk/test/javax/imageio/stream/StreamCloserLeak/run_test.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/javax/imageio/stream/StreamCloserLeak/run_test.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -108,6 +108,14 @@ - TMP="/tmp" - ;; - -+ *BSD ) -+ VAR="A different value for BSD" -+ DEFAULT_JDK=/usr/local/openjdk8 -+ FILESEP="/" -+ PATHSEP=":" -+ TMP="/tmp" -+ ;; -+ - Windows* ) - VAR="A different value for Win32" - DEFAULT_JDK="C:/Program Files/Java/jdk1.8.0" ---- ./jdk/test/javax/script/CommonSetup.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/javax/script/CommonSetup.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -36,7 +36,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/javax/security/auth/Subject/doAs/Test.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/javax/security/auth/Subject/doAs/Test.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -43,7 +43,7 @@ - FS="/" - RM="/bin/rm -f" - ;; -- Darwin ) -+ *BSD | Darwin ) - PS=":" - FS="/" - RM="/bin/rm -f" ---- ./jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/javax/swing/LookAndFeel/8145547/DemandGTK.java Sun Feb 10 09:27:00 2019 -0800 -@@ -26,7 +26,7 @@ - @summary Tests that GTK LaF is supported on solaris - regardless of jdk.gtk.version flag values. - @bug 8156121 -- @requires (os.name == "linux" | os.name == "solaris") -+ @requires (os.family == "linux" | os.family == "solaris" | os.family == "bsd") - @run main/othervm -Djdk.gtk.version=2 DemandGTK - @run main/othervm -Djdk.gtk.version=3 DemandGTK - */ ---- ./jdk/test/lib/security/java.policy/Ext_AllPolicy.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/lib/security/java.policy/Ext_AllPolicy.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -53,7 +53,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/lib/testlibrary/jdk/testlibrary/Platform.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/lib/testlibrary/jdk/testlibrary/Platform.java Sun Feb 10 09:27:00 2019 -0800 -@@ -53,8 +53,13 @@ - return isOs("linux"); - } - -+ public static boolean isBSD() { -+ return isOs("bsd"); -+ } -+ - private static boolean isOs(String osname) { -- return osName.toLowerCase().startsWith(osname.toLowerCase()); -+ return (osName.toLowerCase().startsWith(osname.toLowerCase()) || -+ osName.toLowerCase().endsWith(osname.toLowerCase())); - } - - public static String getOsName() { ---- ./jdk/test/sun/awt/dnd/8024061/bug8024061.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/awt/dnd/8024061/bug8024061.java Sun Feb 10 09:27:00 2019 -0800 -@@ -107,8 +107,8 @@ - - public static void main(String[] args) throws AWTException, InvocationTargetException, InterruptedException { - OSType type = OSInfo.getOSType(); -- if (type != OSType.LINUX && type != OSType.SOLARIS) { -- System.out.println("This test is for Linux and Solaris only... " + -+ if (type != OSType.LINUX && type != OSType.SOLARIS && type != OSType.BSD) { -+ System.out.println("This test is for BSD, Linux and Solaris only... " + - "skipping!"); - return; - } ---- ./jdk/test/sun/management/jmxremote/bootstrap/GeneratePropertyPassword.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/management/jmxremote/bootstrap/GeneratePropertyPassword.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -42,7 +42,7 @@ - fi - - case $OS in --SunOS | Linux | Darwin | AIX ) -+SunOS | Linux | *BSD | Darwin | AIX ) - PATHSEP=":" - FILESEP="/" - DFILESEP=$FILESEP ---- ./jdk/test/sun/net/ftp/MarkResetTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/net/ftp/MarkResetTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -28,7 +28,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/sun/net/www/http/HttpClient/RetryPost.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/net/www/http/HttpClient/RetryPost.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -28,7 +28,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/sun/net/www/protocol/jar/B5105410.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/net/www/protocol/jar/B5105410.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -31,7 +31,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/sun/net/www/protocol/jar/jarbug/run.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/net/www/protocol/jar/jarbug/run.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -31,7 +31,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - CHMOD="${FS}bin${FS}chmod" ---- ./jdk/test/sun/nio/ch/SelProvider.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/nio/ch/SelProvider.java Sun Feb 10 09:27:00 2019 -0800 -@@ -39,7 +39,7 @@ - expected = "sun.nio.ch.DevPollSelectorProvider"; - } else if ("Linux".equals(osname)) { - expected = "sun.nio.ch.EPollSelectorProvider"; -- } else if (osname.contains("OS X")) { -+ } else if (osname.endsWith("BSD") || osname.contains("OS X")) { - expected = "sun.nio.ch.KQueueSelectorProvider"; - } else { - return; ---- ./jdk/test/sun/security/krb5/runNameEquals.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/krb5/runNameEquals.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -52,7 +52,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin ) -+ SunOS | Linux | *BSD | Darwin ) - PATHSEP=":" - FILESEP="/" - NATIVE=true ---- ./jdk/test/sun/security/mscapi/ShortRSAKey1024.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/mscapi/ShortRSAKey1024.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -50,7 +50,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | CYGWIN* ) -+ SunOS | Linux | *BSD | Darwin | CYGWIN* ) - FS="/" - ;; - Windows_* ) ---- ./jdk/test/sun/security/pkcs11/Provider/ConfigQuotedString.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/pkcs11/Provider/ConfigQuotedString.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -66,7 +66,7 @@ - CP="${FS}bin${FS}cp" - CHMOD="${FS}bin${FS}chmod" - ;; -- Darwin ) -+ *BSD | Darwin ) - FS="/" - PS=":" - CP="${FS}bin${FS}cp" ---- ./jdk/test/sun/security/pkcs11/Provider/Login.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/pkcs11/Provider/Login.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -67,7 +67,7 @@ - CP="${FS}bin${FS}cp" - CHMOD="${FS}bin${FS}chmod" - ;; -- Darwin ) -+ *BSD | Darwin ) - FS="/" - PS=":" - CP="${FS}bin${FS}cp" ---- ./jdk/test/sun/security/provider/KeyStore/DKSTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/provider/KeyStore/DKSTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -50,7 +50,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/sun/security/provider/PolicyFile/GrantAllPermToExtWhenNoPolicy.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/provider/PolicyFile/GrantAllPermToExtWhenNoPolicy.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -52,7 +52,7 @@ - PATHSEP=":" - FILESEP="/" - ;; -- Linux ) -+ Linux | *BSD | Darwin ) - PATHSEP=":" - FILESEP="/" - ;; ---- ./jdk/test/sun/security/provider/PolicyFile/getinstance/getinstance.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/provider/PolicyFile/getinstance/getinstance.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -59,7 +59,7 @@ - PS=":" - FS="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - PS=":" - FS="/" - ;; ---- ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/EngineArgs/DebugReportsOneExtraByte.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/EngineArgs/DebugReportsOneExtraByte.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -33,7 +33,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLSocketImpl/NotifyHandshakeTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLSocketImpl/NotifyHandshakeTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -46,7 +46,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - FILESEP="/" - PATHSEP=":" - ;; ---- ./jdk/test/sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/PostThruProxy.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/PostThruProxy.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -32,7 +32,7 @@ - HOSTNAME=`uname -n` - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/PostThruProxyWithAuth.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/PostThruProxyWithAuth.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -32,7 +32,7 @@ - HOSTNAME=`uname -n` - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PS=":" - FS="/" - ;; ---- ./jdk/test/sun/security/tools/jarsigner/AlgOptions.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/jarsigner/AlgOptions.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -46,7 +46,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/jarsigner/PercentSign.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/jarsigner/PercentSign.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -46,7 +46,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/jarsigner/diffend.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/jarsigner/diffend.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -47,6 +47,13 @@ - FS="/" - CP="${FS}bin${FS}cp -f" - ;; -+ *BSD ) -+ NULL=/dev/null -+ PS=":" -+ FS="/" -+ PATH="${PATH}${PS}${FS}usr${FS}local${FS}bin" -+ CP="${FS}bin${FS}cp -f" -+ ;; - CYGWIN* ) - NULL=/dev/null - PS=";" ---- ./jdk/test/sun/security/tools/jarsigner/emptymanifest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/jarsigner/emptymanifest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -39,6 +39,11 @@ - Windows_* ) - FS="\\" - ;; -+ *BSD ) -+ PS=":" -+ FS="/" -+ PATH="${PATH}${PS}${FS}usr${FS}local${FS}bin" -+ ;; - * ) - FS="/" - ;; ---- ./jdk/test/sun/security/tools/jarsigner/oldsig.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/jarsigner/oldsig.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -42,7 +42,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/keytool/AltProviderPath.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/keytool/AltProviderPath.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -46,7 +46,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/keytool/CloneKeyAskPassword.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/keytool/CloneKeyAskPassword.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -55,7 +55,7 @@ - PATHSEP=":" - FILESEP="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - PATHSEP=":" - FILESEP="/" - ;; ---- ./jdk/test/sun/security/tools/keytool/NoExtNPE.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/keytool/NoExtNPE.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -48,7 +48,7 @@ - Linux ) - FILESEP="/" - ;; -- Darwin ) -+ *BSD | Darwin ) - FILESEP="/" - ;; - AIX ) ---- ./jdk/test/sun/security/tools/keytool/SecretKeyKS.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/keytool/SecretKeyKS.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -45,7 +45,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/keytool/StandardAlgName.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/keytool/StandardAlgName.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -46,7 +46,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/keytool/StorePasswordsByShell.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/keytool/StorePasswordsByShell.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -46,7 +46,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PATHSEP=":" - FILESEP="/" - ;; ---- ./jdk/test/sun/security/tools/keytool/i18n.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/keytool/i18n.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -46,7 +46,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux ) -+ SunOS | Linux | *BSD ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/keytool/printssl.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/keytool/printssl.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -40,7 +40,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - FS="/" - ;; - CYGWIN* ) ---- ./jdk/test/sun/security/tools/keytool/resource.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/keytool/resource.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -43,7 +43,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - FS="/" - ;; ---- ./jdk/test/sun/security/tools/keytool/standard.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/keytool/standard.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -45,7 +45,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX | CYGWIN* ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - FS="/" - ;; - Windows_* ) ---- ./jdk/test/sun/security/tools/policytool/Alias.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/policytool/Alias.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -47,7 +47,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/policytool/ChangeUI.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/policytool/ChangeUI.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -46,7 +46,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/policytool/OpenPolicy.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/policytool/OpenPolicy.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -46,7 +46,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/policytool/SaveAs.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/policytool/SaveAs.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -47,7 +47,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/policytool/UpdatePermissions.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/policytool/UpdatePermissions.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -47,7 +47,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/policytool/UsePolicy.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/policytool/UsePolicy.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -46,7 +46,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/security/tools/policytool/i18n.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/security/tools/policytool/i18n.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -49,7 +49,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - NULL=/dev/null - PS=":" - FS="/" ---- ./jdk/test/sun/tools/common/CommonSetup.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/tools/common/CommonSetup.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -47,6 +47,7 @@ - # isLinux - true if OS is Linux - # isSolaris - true if OS is Solaris - # isWindows - true if OS is Windows -+# isBSD - true if OS is BSD - # isMacos - true if OS is Macos X - # isAIX - true if OS is AIX - -@@ -83,6 +84,7 @@ - isSolaris=false - isUnknownOS=false - isWindows=false -+isBSD=false - isMacos=false - isAIX=false - -@@ -107,6 +109,10 @@ - OS="Linux" - isLinux=true - ;; -+ *BSD ) -+ OS="BSD" -+ isBSD=true -+ ;; - Darwin ) - OS="Mac OS X" - isMacos=true ---- ./jdk/test/sun/tools/jconsole/ResourceCheckTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/tools/jconsole/ResourceCheckTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -54,7 +54,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX) -+ SunOS | Linux | *BSD | Darwin | AIX) - PATHSEP=":" - ;; - ---- ./jdk/test/sun/tools/native2ascii/resources/ImmutableResourceTest.sh Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/sun/tools/native2ascii/resources/ImmutableResourceTest.sh Sun Feb 10 09:27:00 2019 -0800 -@@ -56,7 +56,7 @@ - - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | AIX ) -+ SunOS | Linux | *BSD | Darwin | AIX ) - PATHSEP=":" - ;; - ---- ./jdk/test/tools/launcher/ExecutionEnvironment.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/tools/launcher/ExecutionEnvironment.java Sun Feb 10 09:27:00 2019 -0800 -@@ -194,7 +194,7 @@ - - Map env = new HashMap<>(); - -- if (TestHelper.isLinux || TestHelper.isMacOSX || TestHelper.isAIX) { -+ if (TestHelper.isLinux || TestHelper.isBSD || TestHelper.isMacOSX || TestHelper.isAIX) { - for (String x : LD_PATH_STRINGS) { - String pairs[] = x.split("="); - env.put(pairs[0], pairs[1]); ---- ./jdk/test/tools/launcher/RunpathTest.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/tools/launcher/RunpathTest.java Sun Feb 10 09:27:00 2019 -0800 -@@ -69,7 +69,7 @@ - } - - public static void main(String... args) throws Exception { -- if (isSolaris || isLinux) { -+ if (isSolaris || isLinux || isBSD) { - RunpathTest rp = new RunpathTest(); - rp.testRpath(); - } ---- ./jdk/test/tools/launcher/Test7029048.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/tools/launcher/Test7029048.java Sun Feb 10 09:27:00 2019 -0800 -@@ -223,7 +223,7 @@ - } else if (isSolaris && passes < 9) { - throw new Exception("Test7029048: FAIL: " + - "all tests did not run, expected " + 9 + " got " + passes); -- } else if (isLinux && passes < 6) { -+ } else if ((isLinux || isBSD) && passes < 6) { - throw new Exception("Test7029048: FAIL: " + - "all tests did not run, expected " + 6 + " got " + passes); - } else { ---- ./jdk/test/tools/launcher/TestHelper.java Sat Dec 08 11:51:25 2018 +0000 -+++ ./jdk/test/tools/launcher/TestHelper.java Sun Feb 10 09:27:00 2019 -0800 -@@ -94,6 +94,8 @@ - System.getProperty("os.name", "unknown").startsWith("Linux"); - static final boolean isAIX = - System.getProperty("os.name", "unknown").startsWith("AIX"); -+ static final boolean isBSD = -+ System.getProperty("os.name", "unknown").endsWith("BSD"); - static final String LIBJVM = isWindows - ? "jvm.dll" - : "libjvm" + (isMacOSX ? ".dylib" : ".so"); ---- ./langtools/test/Makefile Sat Dec 08 11:52:50 2018 +0000 -+++ ./langtools/test/Makefile Fri Feb 08 17:44:17 2019 -0800 -@@ -34,6 +34,14 @@ - ARCH=i586 - endif - endif -+ifneq ($(findstring BSD, $(OSNAME)), ) -+ PLATFORM = bsd -+ JT_PLATFORM = linux -+ ARCH = $(shell uname -p) -+ ifeq ($(ARCH), i386) -+ ARCH=i586 -+ endif -+endif - ifeq ($(OSNAME), Darwin) - PLATFORM = bsd - ARCH = $(shell uname -m) ---- ./langtools/test/tools/javah/ReadOldClass.sh Sat Dec 08 11:52:50 2018 +0000 -+++ ./langtools/test/tools/javah/ReadOldClass.sh Fri Feb 08 17:44:17 2019 -0800 -@@ -43,7 +43,7 @@ - # set platform-dependent variables - OS=`uname -s` - case "$OS" in -- SunOS | Linux | Darwin | CYGWIN* ) -+ SunOS | Linux | *BSD | Darwin | CYGWIN* ) - PS=":" - FS="/" - ;; ---- ./nashorn/test/script/jfx.js Sat Dec 08 11:53:10 2018 +0000 -+++ ./nashorn/test/script/jfx.js Fri Feb 08 17:44:19 2019 -0800 -@@ -93,6 +93,8 @@ - f2 = new File(sb.append(fsep + "linux.png").toString()); - } else if (OSInfo.getOSType() == OSType.MACOSX) { - f2 = new File(sb.append(fsep + "macosx.png").toString()); -+ } else if (OSInfo.getOSType() == OSType.BSD) { -+ f2 = new File(sb.append(fsep + "bsd.png").toString()); - } - if (f1.exists() && f2.exists()) { - var image1 = new AWTImage(PNGDecoder.decode(f1.getAbsolutePath())); diff --git a/java/openjdk8/files/patch-common_autoconf_build-performance.m4 b/java/openjdk8/files/patch-common_autoconf_build-performance.m4 deleted file mode 100644 index e54d13e29f5..00000000000 --- a/java/openjdk8/files/patch-common_autoconf_build-performance.m4 +++ /dev/null @@ -1,11 +0,0 @@ ---- common/autoconf/build-performance.m4.orig -+++ common/autoconf/build-performance.m4 -@@ -213,7 +213,7 @@ AC_DEFUN([BPERF_SETUP_CCACHE_USAGE], - # precompiled headers. - AC_MSG_CHECKING([if ccache supports precompiled headers]) - HAS_GOOD_CCACHE=`($CCACHE --version | head -n 1 | awk '{ split(@S|@3, a, "."); if (a@<:@1@:>@ >= 3 && (a@<:@2@:>@ > 1 || (a@<:@2@:>@ == 1 && a@<:@3@:>@ >= 4))) print "yes"; else print "no"; }') 2> /dev/null` -- if test "x$HAS_GOOD_CCACHE" = xyes; then -+ if test "x$HAS_GOOD_CCACHE" != xyes; then - AC_MSG_RESULT([no, disabling ccache]) - CCACHE= - else diff --git a/java/openjdk8/files/patch-common_autoconf_generated-configure.sh b/java/openjdk8/files/patch-common_autoconf_generated-configure.sh deleted file mode 100644 index 5d23acb8604..00000000000 --- a/java/openjdk8/files/patch-common_autoconf_generated-configure.sh +++ /dev/null @@ -1,11 +0,0 @@ ---- common/autoconf/generated-configure.sh.orig -+++ common/autoconf/generated-configure.sh -@@ -36760,7 +36760,7 @@ fi - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ccache supports precompiled headers" >&5 - $as_echo_n "checking if ccache supports precompiled headers... " >&6; } - HAS_GOOD_CCACHE=`($CCACHE --version | head -n 1 | awk '{ split($3, a, "."); if (a[1] >= 3 && (a[2] > 1 || (a[2] == 1 && a[3] >= 4))) print "yes"; else print "no"; }') 2> /dev/null` -- if test "x$HAS_GOOD_CCACHE" = xyes; then -+ if test "x$HAS_GOOD_CCACHE" != xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, disabling ccache" >&5 - $as_echo "no, disabling ccache" >&6; } - CCACHE= diff --git a/java/openjdk8/files/patch-hotspot-agent-src-share-classes-sun-jvm-hotspot-debugger-bsd-BsdThread.java b/java/openjdk8/files/patch-hotspot-agent-src-share-classes-sun-jvm-hotspot-debugger-bsd-BsdThread.java deleted file mode 100644 index 2f42fcb3672..00000000000 --- a/java/openjdk8/files/patch-hotspot-agent-src-share-classes-sun-jvm-hotspot-debugger-bsd-BsdThread.java +++ /dev/null @@ -1,11 +0,0 @@ ---- ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThread.java.orig 2016-05-14 19:57:37.394543000 +0000 -+++ ./hotspot/agent/src/share/classes/sun/jvm/hotspot/debugger/bsd/BsdThread.java 2016-05-14 20:47:09.600014000 +0000 -@@ -61,7 +62,7 @@ - } - - public String toString() { -- return Integer.toString(thread_id); -+ return Integer.toString(thread_id) + "/" + Long.toString(unique_thread_id); - } - - public ThreadContext getContext() throws IllegalThreadStateException { diff --git a/java/openjdk8/files/patch-hotspot-src-os-bsd-vm-os_bsd.cpp b/java/openjdk8/files/patch-hotspot-src-os-bsd-vm-os_bsd.cpp deleted file mode 100644 index 09594d524ca..00000000000 --- a/java/openjdk8/files/patch-hotspot-src-os-bsd-vm-os_bsd.cpp +++ /dev/null @@ -1,36 +0,0 @@ ---- hotspot/src/os/bsd/vm/os_bsd.cpp.orig 2017-09-06 22:12:44 UTC -+++ hotspot/src/os/bsd/vm/os_bsd.cpp -@@ -189,7 +189,9 @@ julong os::Bsd::available_memory() { - #ifdef __FreeBSD__ - static const char *vm_stats[] = { - "vm.stats.vm.v_free_count", -+#if __FreeBSD_version < 1200016 - "vm.stats.vm.v_cache_count", -+#endif - "vm.stats.vm.v_inactive_count" - }; - size_t size; -@@ -775,6 +777,11 @@ static void *java_start(Thread *thread) - guarantee(unique_thread_id != 0, "unique thread id was not found"); - osthread->set_unique_thread_id(unique_thread_id); - #endif -+#ifdef __FreeBSD__ -+ uint64_t unique_thread_id = os::Bsd::gettid(); -+ guarantee(unique_thread_id != 0, "unique thread id was not found"); -+ osthread->set_unique_thread_id(unique_thread_id); -+#endif - // initialize signal mask for this thread - os::Bsd::hotspot_sigmask(thread); - -@@ -938,6 +945,11 @@ bool os::create_attached_thread(JavaThre - guarantee(unique_thread_id != 0, "just checking"); - osthread->set_unique_thread_id(unique_thread_id); - #endif -+#ifdef __FreeBSD__ -+ uint64_t unique_thread_id = os::Bsd::gettid(); -+ guarantee(unique_thread_id != 0, "unique thread id was not found"); -+ osthread->set_unique_thread_id(unique_thread_id); -+#endif - osthread->set_pthread_id(::pthread_self()); - - // initialize floating point control register diff --git a/java/openjdk8/files/patch-hotspot-src_cpu_zero_vm_methodHandles__zero.cpp b/java/openjdk8/files/patch-hotspot-src_cpu_zero_vm_methodHandles__zero.cpp deleted file mode 100644 index abb4e555424..00000000000 --- a/java/openjdk8/files/patch-hotspot-src_cpu_zero_vm_methodHandles__zero.cpp +++ /dev/null @@ -1,12 +0,0 @@ ---- hotspot/src/cpu/zero/vm/methodHandles_zero.cpp.orig -+++ hotspot/src/cpu/zero/vm/methodHandles_zero.cpp -@@ -180,3 +180,9 @@ address MethodHandles::generate_method_handle_interpre - return NULL; - } - } -+ -+#ifndef PRODUCT -+void MethodHandles::trace_method_handle(MacroAssembler* _masm, const char* adaptername) { -+ // This is just a stub. -+} -+#endif //PRODUCT diff --git a/java/openjdk8/files/patch-hotspot_make_bsd_makefiles_gcc.make b/java/openjdk8/files/patch-hotspot_make_bsd_makefiles_gcc.make deleted file mode 100644 index 83d10567617..00000000000 --- a/java/openjdk8/files/patch-hotspot_make_bsd_makefiles_gcc.make +++ /dev/null @@ -1,12 +0,0 @@ ---- hotspot/make/bsd/makefiles/gcc.make.orig -+++ hotspot/make/bsd/makefiles/gcc.make -@@ -200,6 +200,9 @@ ifeq ($(USE_CLANG),) - CFLAGS += -fvisibility=hidden - endif - else -+ ifneq ($(OS_VENDOR), Darwin) -+ CFLAGS += -pthread -+ endif - CFLAGS += -fvisibility=hidden - endif - diff --git a/java/openjdk8/files/patch-hotspot_src_cpu_ppc_vm_vm_version_ppc.cpp b/java/openjdk8/files/patch-hotspot_src_cpu_ppc_vm_vm_version_ppc.cpp deleted file mode 100644 index f5ab1641093..00000000000 --- a/java/openjdk8/files/patch-hotspot_src_cpu_ppc_vm_vm_version_ppc.cpp +++ /dev/null @@ -1,17 +0,0 @@ ---- hotspot/src/cpu/ppc/vm/vm_version_ppc.cpp.orig -+++ hotspot/src/cpu/ppc/vm/vm_version_ppc.cpp -@@ -38,8 +38,13 @@ - #ifdef TARGET_OS_FAMILY_linux - # include "os_linux.inline.hpp" - #endif -- -+#ifdef TARGET_OS_FAMILY_bsd -+# include "os_bsd.inline.hpp" -+#endif -+ -+#ifndef TARGET_OS_FAMILY_bsd - # include -+#endif - - int VM_Version::_features = VM_Version::unknown_m; - int VM_Version::_measured_cache_line_size = 128; // default value diff --git a/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_atomic__bsd__zero.inline.hpp b/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_atomic__bsd__zero.inline.hpp deleted file mode 100644 index cf23cc7cd43..00000000000 --- a/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_atomic__bsd__zero.inline.hpp +++ /dev/null @@ -1,46 +0,0 @@ ---- hotspot/src/os_cpu/bsd_zero/vm/atomic_bsd_zero.inline.hpp.orig 2015-06-03 16:41:00 UTC -+++ hotspot/src/os_cpu/bsd_zero/vm/atomic_bsd_zero.inline.hpp -@@ -112,8 +112,16 @@ static inline int m68k_lock_test_and_set - * - */ - -+#if defined(__FreeBSD__) -+#include -+#define __kernel_cmpxchg(oldval, newval, ptr) (!atomic_cmpset_rel_32((volatile u_int32_t *)(ptr), (u_int32_t)(oldval), (u_int32_t)(newval))) -+#elif defined(__NetBSD__) -+#include -+#define __kernel_cmpxchg(oldval, newval, ptr) ((unsigned int)(oldval) != atomic_cas_uint((volatile unsigned int*)(ptr), (unsigned int)(oldval), (unsigned int)(newval))) -+#else - typedef int (__kernel_cmpxchg_t)(int oldval, int newval, volatile int *ptr); - #define __kernel_cmpxchg (*(__kernel_cmpxchg_t *) 0xffff0fc0) -+#endif - - - -@@ -177,7 +185,7 @@ inline void Atomic::store_ptr(intptr_t s - - inline jint Atomic::add(jint add_value, volatile jint* dest) { - #ifdef ARM -- return arm_add_and_fetch(dest, add_value); -+ return arm_add_and_fetch((volatile int*)dest, add_value); - #else - #ifdef M68K - return m68k_add_and_fetch(dest, add_value); -@@ -189,7 +197,7 @@ inline jint Atomic::add(jint add_value, - - inline intptr_t Atomic::add_ptr(intptr_t add_value, volatile intptr_t* dest) { - #ifdef ARM -- return arm_add_and_fetch(dest, add_value); -+ return arm_add_and_fetch((volatile int*)dest, add_value); - #else - #ifdef M68K - return m68k_add_and_fetch(dest, add_value); -@@ -286,7 +294,7 @@ inline intptr_t Atomic::cmpxchg_ptr(intp - volatile intptr_t* dest, - intptr_t compare_value) { - #ifdef ARM -- return arm_compare_and_swap(dest, compare_value, exchange_value); -+ return arm_compare_and_swap((volatile int*)dest, compare_value, exchange_value); - #else - #ifdef M68K - return m68k_compare_and_swap(dest, compare_value, exchange_value); diff --git a/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_orderAccess__bsd__zero.inline.hpp b/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_orderAccess__bsd__zero.inline.hpp deleted file mode 100644 index 3ce69f31e33..00000000000 --- a/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_orderAccess__bsd__zero.inline.hpp +++ /dev/null @@ -1,21 +0,0 @@ -ARM: Substitute Linux atomic ops with FreeBSD/NetBSD atomic ops - ---- hotspot/src/os_cpu/bsd_zero/vm/orderAccess_bsd_zero.inline.hpp.orig 2015-06-03 15:49:41 UTC -+++ hotspot/src/os_cpu/bsd_zero/vm/orderAccess_bsd_zero.inline.hpp -@@ -37,8 +37,16 @@ - * and gcc __sync_synchronize(); implementation does not use the kernel - * helper for all gcc versions so it is unreliable to use as well. - */ -+#if defined(__FreeBSD__) -+#include -+#define __kernel_dmb dmb -+#elif defined(__NetBSD__) -+#include -+#define __kernel_dmb membar_sync -+#else - typedef void (__kernel_dmb_t) (void); - #define __kernel_dmb (*(__kernel_dmb_t *) 0xffff0fa0) -+#endif - - #define FULL_MEM_BARRIER __kernel_dmb() - #define READ_MEM_BARRIER __kernel_dmb() diff --git a/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_os__bsd__zero.cpp b/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_os__bsd__zero.cpp deleted file mode 100644 index 713d5c13c63..00000000000 --- a/java/openjdk8/files/patch-hotspot_src_os__cpu_bsd__zero_vm_os__bsd__zero.cpp +++ /dev/null @@ -1,44 +0,0 @@ ---- hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp.orig 2014-03-04 02:52:15 UTC -+++ hotspot/src/os_cpu/bsd_zero/vm/os_bsd_zero.cpp -@@ -60,8 +60,8 @@ - #include "utilities/vmError.hpp" - - address os::current_stack_pointer() { -- address dummy = (address) &dummy; -- return dummy; -+ // return the address of the current function -+ return (address)__builtin_frame_address(0); - } - - frame os::get_sender_for_C_frame(frame* fr) { -@@ -189,7 +189,7 @@ - ShouldNotCallThis(); - } - else*/ if (thread->thread_state() == _thread_in_vm && -- sig == SIGBUS && thread->doing_unsafe_access()) { -+ (sig == SIGSEGV || sig == SIGBUS) && thread->doing_unsafe_access()) { - ShouldNotCallThis(); - } - -@@ -446,21 +446,6 @@ extern "C" { - } - }; - --///////////////////////////////////////////////////////////////////////////// --// Implementations of atomic operations not supported by processors. --// -- http://gcc.gnu.org/onlinedocs/gcc-4.2.1/gcc/Atomic-Builtins.html -- --#ifndef _LP64 --extern "C" { -- long long unsigned int __sync_val_compare_and_swap_8( -- volatile void *ptr, -- long long unsigned int oldval, -- long long unsigned int newval) { -- ShouldNotCallThis(); -- } --}; --#endif // !_LP64 -- - #ifndef PRODUCT - void os::verify_stack_alignment() { - } diff --git a/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_globals__bsd.hpp b/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_globals__bsd.hpp deleted file mode 100644 index 5449e002c8f..00000000000 --- a/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_globals__bsd.hpp +++ /dev/null @@ -1,27 +0,0 @@ ---- hotspot/src/os/bsd/vm/globals_bsd.hpp.orig 2014-03-04 02:52:13 UTC -+++ hotspot/src/os/bsd/vm/globals_bsd.hpp -@@ -35,19 +35,17 @@ - product(bool, UseBsdPosixThreadCPUClocks, true, \ - "enable fast Bsd Posix clocks where available") \ - /* NB: The default value of UseBsdPosixThreadCPUClocks may be \ -- overridden in Arguments::parse_each_vm_init_arg. */ \ -- \ -- product(bool, UseHugeTLBFS, false, \ -- "Use MAP_HUGETLB for large pages") \ -- \ -- product(bool, UseSHM, false, \ -- "Use SYSV shared memory for large pages") -+ overridden in Arguments::parse_each_vm_init_arg. */ - - // - // Defines Bsd-specific default values. The flags are available on all - // platforms, but they may have different default values on other platforms. - // -+#ifdef __FreeBSD__ -+define_pd_global(bool, UseLargePages, true); -+#else - define_pd_global(bool, UseLargePages, false); -+#endif - define_pd_global(bool, UseLargePagesIndividualAllocation, false); - define_pd_global(bool, UseOSErrorReporting, false); - define_pd_global(bool, UseThreadPriorities, true) ; diff --git a/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_os__bsd.cpp b/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_os__bsd.cpp deleted file mode 100644 index edafe166630..00000000000 --- a/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_os__bsd.cpp +++ /dev/null @@ -1,249 +0,0 @@ ---- hotspot/src/os/bsd/vm/os_bsd.cpp.orig 2017-12-01 00:32:02 UTC -+++ hotspot/src/os/bsd/vm/os_bsd.cpp -@@ -1588,6 +1588,10 @@ void * os::dll_load(const char *filename, char *ebuf, - #define EM_X86_64 62 /* AMD x86-64 */ - #endif - -+ #ifndef EM_AARCH64 -+ #define EM_AARCH64 183 /* ARM AARCH64 */ -+ #endif -+ - static const arch_t arch_array[]={ - {EM_386, EM_386, ELFCLASS32, ELFDATA2LSB, (char*)"IA 32"}, - {EM_486, EM_386, ELFCLASS32, ELFDATA2LSB, (char*)"IA 32"}, -@@ -1604,7 +1608,8 @@ void * os::dll_load(const char *filename, char *ebuf, - {EM_MIPS_RS3_LE, EM_MIPS_RS3_LE, ELFCLASS32, ELFDATA2LSB, (char*)"MIPSel"}, - {EM_MIPS, EM_MIPS, ELFCLASS32, ELFDATA2MSB, (char*)"MIPS"}, - {EM_PARISC, EM_PARISC, ELFCLASS32, ELFDATA2MSB, (char*)"PARISC"}, -- {EM_68K, EM_68K, ELFCLASS32, ELFDATA2MSB, (char*)"M68k"} -+ {EM_68K, EM_68K, ELFCLASS32, ELFDATA2MSB, (char*)"M68k"}, -+ {EM_AARCH64, EM_AARCH64, ELFCLASS64, ELFDATA2LSB, (char*)"AARCH64"}, - }; - - #if (defined IA32) -@@ -1621,6 +1626,8 @@ void * os::dll_load(const char *filename, char *ebuf, - static Elf32_Half running_arch_code=EM_PPC64; - #elif (defined __powerpc__) - static Elf32_Half running_arch_code=EM_PPC; -+ #elif (defined AARCH64) -+ static Elf32_Half running_arch_code=EM_AARCH64; - #elif (defined ARM) - static Elf32_Half running_arch_code=EM_ARM; - #elif (defined S390) -@@ -1637,7 +1644,7 @@ void * os::dll_load(const char *filename, char *ebuf, - static Elf32_Half running_arch_code=EM_68K; - #else - #error Method os::dll_load requires that one of following is defined:\ -- IA32, AMD64, IA64, __sparc, __powerpc__, ARM, S390, ALPHA, MIPS, MIPSEL, PARISC, M68K -+ AARCH64, IA32, AMD64, IA64, __sparc, __powerpc__, ARM, S390, ALPHA, MIPS, MIPSEL, PARISC, M68K - #endif - - // Identify compatability class for VM's architecture and library's architecture -@@ -2395,14 +2402,18 @@ static address _highest_vm_reserved_address = NULL; - // 'requested_addr' is only treated as a hint, the return value may or - // may not start from the requested address. Unlike Bsd mmap(), this - // function returns NULL to indicate failure. --static char* anon_mmap(char* requested_addr, size_t bytes, bool fixed) { -+static char* anon_mmap(char* requested_addr, size_t bytes, size_t alignment_hint, bool fixed) { - char * addr; - int flags; - -+ assert(!(fixed && (alignment_hint > 0)), "alignment hint meaningless with fixed mmap"); -+ - flags = MAP_PRIVATE | MAP_ANONYMOUS; - if (fixed) { - assert((uintptr_t)requested_addr % os::Bsd::page_size() == 0, "unaligned address"); - flags |= MAP_FIXED; -+ } else if (alignment_hint > 0) { -+ flags |= MAP_ALIGNED(ffs(alignment_hint) - 1); - } - - // Map reserved/uncommitted pages PROT_NONE so we fail early if we -@@ -2434,7 +2445,7 @@ static int anon_munmap(char * addr, size_t size) { - - char* os::pd_reserve_memory(size_t bytes, char* requested_addr, - size_t alignment_hint) { -- return anon_mmap(requested_addr, bytes, (requested_addr != NULL)); -+ return anon_mmap(requested_addr, bytes, alignment_hint, (requested_addr != NULL)); - } - - bool os::pd_release_memory(char* addr, size_t size) { -@@ -2480,19 +2491,93 @@ bool os::unguard_memory(char* addr, size_t size) { - return bsd_mprotect(addr, size, PROT_READ|PROT_WRITE); - } - --bool os::Bsd::hugetlbfs_sanity_check(bool warn, size_t page_size) { -- return false; --} -- - // Large page support - - static size_t _large_page_size = 0; - - void os::large_page_init() { -+ if (UseLargePages) { -+ // print a warning if any large page related flag is specified on command line -+ bool warn_on_failure = !FLAG_IS_DEFAULT(UseLargePages) || -+ !FLAG_IS_DEFAULT(LargePageSizeInBytes); -+ -+ UseLargePages = Bsd::superpage_sanity_check(warn_on_failure, &_large_page_size); -+ } - } - -+// Insertion sort for small arrays (descending order). -+static void insertion_sort_descending(size_t* array, int len) { -+ for (int i = 0; i < len; i++) { -+ size_t val = array[i]; -+ for (size_t key = i; key > 0 && array[key - 1] < val; --key) { -+ size_t tmp = array[key]; -+ array[key] = array[key - 1]; -+ array[key - 1] = tmp; -+ } -+ } -+} - -+bool os::Bsd::superpage_sanity_check(bool warn, size_t* page_size) { -+#ifdef __FreeBSD__ -+ const unsigned int usable_count = VM_Version::page_size_count(); -+ if (usable_count == 1) { -+ return false; -+ } -+ -+ // Fill the array of page sizes. -+ int n = ::getpagesizes(_page_sizes, page_sizes_max); -+ assert(n > 0, "FreeBSD bug?"); -+ -+ if (n == page_sizes_max) { -+ // Add a sentinel value (necessary only if the array was completely filled -+ // since it is static (zeroed at initialization)). -+ _page_sizes[--n] = 0; -+ DEBUG_ONLY(warning("increase the size of the os::_page_sizes array.");) -+ } -+ assert(_page_sizes[n] == 0, "missing sentinel"); -+ trace_page_sizes("available page sizes", _page_sizes, n); -+ -+ if (n == 1) return false; // Only one page size available. -+ -+ // Skip sizes larger than 4M (or LargePageSizeInBytes if it was set) and -+ // select up to usable_count elements. First sort the array, find the first -+ // acceptable value, then copy the usable sizes to the top of the array and -+ // trim the rest. Make sure to include the default page size :-). -+ // -+ // A better policy could get rid of the 4M limit by taking the sizes of the -+ // important VM memory regions (java heap and possibly the code cache) into -+ // account. -+ insertion_sort_descending(_page_sizes, n); -+ const size_t size_limit = -+ FLAG_IS_DEFAULT(LargePageSizeInBytes) ? 4 * M : LargePageSizeInBytes; -+ int beg; -+ for (beg = 0; beg < n && _page_sizes[beg] > size_limit; ++beg) /* empty */ ; -+ const int end = MIN2((int)usable_count, n) - 1; -+ for (int cur = 0; cur < end; ++cur, ++beg) { -+ _page_sizes[cur] = _page_sizes[beg]; -+ } -+ _page_sizes[end] = vm_page_size(); -+ _page_sizes[end + 1] = 0; -+ -+ if (_page_sizes[end] > _page_sizes[end - 1]) { -+ // Default page size is not the smallest; sort again. -+ insertion_sort_descending(_page_sizes, end + 1); -+ } -+ *page_size = _page_sizes[0]; -+ -+ trace_page_sizes("usable page sizes", _page_sizes, end + 1); -+ return true; -+#else -+ return false; -+#endif -+} -+ -+ - char* os::reserve_memory_special(size_t bytes, size_t alignment, char* req_addr, bool exec) { -+#ifdef __FreeBSD__ -+ fatal("os::reserve_memory_special should not be called on FreeBSD."); -+ return NULL; -+#else - fatal("This code is not used or maintained."); - - // "exec" is passed in but not used. Creating the shared image for -@@ -2552,9 +2637,14 @@ char* os::reserve_memory_special(size_t bytes, size_t - MemTracker::record_virtual_memory_reserve_and_commit((address)addr, bytes, CALLER_PC); - - return addr; -+#endif - } - - bool os::release_memory_special(char* base, size_t bytes) { -+#ifdef __FreeBSD__ -+ fatal("os::release_memory_special should not be called on FreeBSD."); -+ return false; -+#else - if (MemTracker::tracking_level() > NMT_minimal) { - Tracker tkr = MemTracker::get_virtual_memory_release_tracker(); - // detaching the SHM segment will also delete it, see reserve_memory_special() -@@ -2568,21 +2658,28 @@ bool os::release_memory_special(char* base, size_t byt - } else { - return shmdt(base) == 0; - } -+#endif - } - - size_t os::large_page_size() { - return _large_page_size; - } - --// HugeTLBFS allows application to commit large page memory on demand; --// with SysV SHM the entire memory region must be allocated as shared --// memory. -+// FreeBSD allows application to commit large page memory on demand. - bool os::can_commit_large_page_memory() { -- return UseHugeTLBFS; -+#ifdef __FreeBSD__ -+ return true; -+#else -+ return false; -+#endif - } - - bool os::can_execute_large_page_memory() { -- return UseHugeTLBFS; -+#ifdef __FreeBSD__ -+ return true; -+#else -+ return false; -+#endif - } - - // Reserve memory at an arbitrary address, only if that area is -@@ -2614,7 +2711,7 @@ char* os::pd_attempt_reserve_memory_at(size_t bytes, c - - // Bsd mmap allows caller to pass an address as hint; give it a try first, - // if kernel honors the hint then we can return immediately. -- char * addr = anon_mmap(requested_addr, bytes, false); -+ char * addr = anon_mmap(requested_addr, bytes, 0, false); - if (addr == requested_addr) { - return requested_addr; - } -@@ -4010,15 +4010,19 @@ - } - - void os::set_native_thread_name(const char *name) { --#if defined(__APPLE__) && MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_5 -- // This is only supported in Snow Leopard and beyond - if (name != NULL) { -+#if defined(__APPLE__) && MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_5 -+ // This is only supported in Snow Leopard and beyond - // Add a "Java: " prefix to the name - char buf[MAXTHREADNAMESIZE]; - snprintf(buf, sizeof(buf), "Java: %s", name); - pthread_setname_np(buf); -- } -+#elif defined(__FreeBSD__) -+ char buf[MAXCOMLEN+1]; -+ strlcpy(buf, name, sizeof(buf)); -+ pthread_set_name_np(pthread_self(), buf); - #endif -+ } - } - - bool os::distribute_processes(uint length, uint* distribution) { diff --git a/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_os__bsd.hpp b/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_os__bsd.hpp deleted file mode 100644 index 1f513305cc5..00000000000 --- a/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_os__bsd.hpp +++ /dev/null @@ -1,11 +0,0 @@ ---- hotspot/src/os/bsd/vm/os_bsd.hpp.orig 2017-12-01 00:32:02 UTC -+++ hotspot/src/os/bsd/vm/os_bsd.hpp -@@ -87,7 +87,7 @@ class Bsd { - static void rebuild_cpu_to_node_map(); - static GrowableArray* cpu_to_node() { return _cpu_to_node; } - -- static bool hugetlbfs_sanity_check(bool warn, size_t page_size); -+ static bool superpage_sanity_check(bool warn, size_t *page_size); - - public: - diff --git a/java/openjdk8/files/patch-hotspot_src_share_vm_runtime_arguments.cpp b/java/openjdk8/files/patch-hotspot_src_share_vm_runtime_arguments.cpp deleted file mode 100644 index a437f8fccb4..00000000000 --- a/java/openjdk8/files/patch-hotspot_src_share_vm_runtime_arguments.cpp +++ /dev/null @@ -1,12 +0,0 @@ ---- hotspot/src/share/vm/runtime/arguments.cpp.orig 2017-12-01 00:32:02.284351000 +0000 -+++ hotspot/src/share/vm/runtime/arguments.cpp 2017-12-01 00:38:48.362549000 +0000 -@@ -3974,7 +3974,8 @@ jint Arguments::parse(const JavaVMInitArgs* args) { - hotspotrc, hotspotrc); - } - --#ifdef _ALLBSD_SOURCE // UseLargePages is not yet supported on BSD. -+#if defined(_ALLBSD_SOURCE) && !defined(__FreeBSD__) -+ // UseLargePages is not yet supported on BSD. - UNSUPPORTED_OPTION(UseLargePages, "-XX:+UseLargePages"); - #endif - diff --git a/java/openjdk8/files/patch-jdk-make-lib-Awt2dLibraries.gmk b/java/openjdk8/files/patch-jdk-make-lib-Awt2dLibraries.gmk index b24c0ec378d..5069b0c696e 100644 --- a/java/openjdk8/files/patch-jdk-make-lib-Awt2dLibraries.gmk +++ b/java/openjdk8/files/patch-jdk-make-lib-Awt2dLibraries.gmk @@ -1,23 +1,20 @@ ---- jdk/make/lib/Awt2dLibraries.gmk.orig 2018-12-02 16:06:28.335527000 -0800 -+++ jdk/make/lib/Awt2dLibraries.gmk 2018-12-02 16:29:22.253979000 -0800 -@@ -1236,6 +1236,11 @@ - LIBSPLASHSCREEN_splashscreen_png.c_CFLAGS := -x objective-c -O0 - LIBSPLASHSCREEN_splashscreen_sys.m_CFLAGS := -O0 - -+ else ifeq ($(OPENJDK_TARGET_OS), bsd) -+ LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 $(X_CFLAGS) -I$(PACKAGE_PATH)/include -+ ifneq ($(OPENJDK_TARGET_OS_VENDOR), openbsd) +--- jdk/make/lib/Awt2dLibraries.gmk.orig 2019-04-17 23:24:06.000000000 -0700 ++++ jdk/make/lib/Awt2dLibraries.gmk 2019-04-18 11:22:47.195832000 -0700 +@@ -1190,7 +1190,7 @@ + else ifeq ($(OPENJDK_TARGET_OS), bsd) + LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 $(X_CFLAGS) -I$(PACKAGE_PATH)/include + ifneq ($(OPENJDK_TARGET_OS_VENDOR), openbsd) +- LIBSPLASHSCREEN_CFLAGS += -DLIBICONV_PLUG + LIBSPLASHSCREEN_CFLAGS += %%ICONV_CPPFLAGS%% -+ endif + endif else ifeq ($(OPENJDK_TARGET_OS), windows) LIBSPLASHSCREEN_CFLAGS += -DWITH_WIN32 - else -@@ -1257,6 +1262,8 @@ +@@ -1212,7 +1212,7 @@ + -framework Cocoa \ -framework JavaNativeFoundation + else ifeq ($(OPENJDK_TARGET_OS), bsd) +- LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) -L$(PACKAGE_PATH)/lib -liconv -pthread ++ LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) %%ICONV_LDFLAGS%% -pthread else ifeq ($(OPENJDK_TARGET_OS), windows) LIBSPLASHSCREEN_LDFLAGS_SUFFIX += kernel32.lib user32.lib gdi32.lib delayimp.lib -DELAYLOAD:user32.dll -+ else ifeq ($(OPENJDK_TARGET_OS), bsd) -+ LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) %%ICONV_LDFLAGS%% -pthread else # .. all other Unixes can use X_LIBS - LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread - endif diff --git a/java/openjdk8/files/patch-jdk-src-share-native-sun-font-freetypeScaler.c b/java/openjdk8/files/patch-jdk-src-share-native-sun-font-freetypeScaler.c deleted file mode 100644 index 093996a8008..00000000000 --- a/java/openjdk8/files/patch-jdk-src-share-native-sun-font-freetypeScaler.c +++ /dev/null @@ -1,52 +0,0 @@ ---- jdk/src/share/native/sun/font/freetypeScaler.c -+++ jdk/src/share/native/sun/font/freetypeScaler.c -@@ -60,6 +60,7 @@ - JNIEnv* env; - FT_Library library; - FT_Face face; -+ FT_Stream faceStream; - jobject font2D; - jobject directBuffer; - -@@ -107,15 +108,10 @@ - if (scalerInfo == NULL) - return; - -- //apparently Done_Face will only close the stream -- // but will not relase the memory of stream structure. -- // We need to free it explicitly to avoid leak. -- //Direct access to the stream field might be not ideal solution as -- // it is considred to be "private". -- //Alternatively we could have stored pointer to the structure -- // in the scalerInfo but this will increase size of the structure -- // for no good reason -- stream = scalerInfo->face->stream; -+ // FT_Done_Face always closes the stream, but only frees the memory -+ // of the data structure if it was internally allocated by FT. -+ // We hold on to a pointer to the stream structure if we provide it -+ // ourselves, so that we can free it here. - - FT_Done_Face(scalerInfo->face); - FT_Done_FreeType(scalerInfo->library); -@@ -128,8 +124,8 @@ - free(scalerInfo->fontData); - } - -- if (stream != NULL) { -- free(stream); -+ if (scalerInfo->faceStream != NULL) { -+ free(scalerInfo->faceStream); - } - - free(scalerInfo); -@@ -302,6 +298,10 @@ - &ft_open_args, - indexInCollection, - &scalerInfo->face); -+ -+ if (!error) { -+ scalerInfo->faceStream = ftstream; -+ } - } - if (error || scalerInfo->directBuffer == NULL) { - free(ftstream); diff --git a/java/openjdk8/files/patch-jdk-src-solaris-classes-native-java-net-NetworkInterface.c b/java/openjdk8/files/patch-jdk-src-solaris-classes-native-java-net-NetworkInterface.c deleted file mode 100644 index bc94b240430..00000000000 --- a/java/openjdk8/files/patch-jdk-src-solaris-classes-native-java-net-NetworkInterface.c +++ /dev/null @@ -1,13 +0,0 @@ ---- jdk/src/solaris/native/java/net/NetworkInterface.c.orig 2017-12-24 22:01:27.592305000 -0800 -+++ jdk/src/solaris/native/java/net/NetworkInterface.c 2017-12-24 22:06:51.899725000 -0800 -@@ -2075,10 +2075,6 @@ - if (ifa->ifa_addr == NULL || ifa->ifa_addr->sa_family != AF_INET6) - continue; - -- // set scope ID to interface index -- ((struct sockaddr_in6 *)ifa->ifa_addr)->sin6_scope_id = -- getIndex(sock, ifa->ifa_name); -- - // add interface to the list - ifs = addif(env, sock, ifa->ifa_name, ifs, ifa->ifa_addr, NULL, - AF_INET6, diff --git a/java/openjdk8/files/patch-jdk-src-solaris-native-java-io-UnixFileSystem_md.c b/java/openjdk8/files/patch-jdk-src-solaris-native-java-io-UnixFileSystem_md.c deleted file mode 100644 index f5d0902cff9..00000000000 --- a/java/openjdk8/files/patch-jdk-src-solaris-native-java-io-UnixFileSystem_md.c +++ /dev/null @@ -1,23 +0,0 @@ ---- jdk/src/solaris/native/java/io/UnixFileSystem_md.c.orig 2018-12-12 23:07:51.229721000 +0100 -+++ jdk/src/solaris/native/java/io/UnixFileSystem_md.c 2018-12-12 23:12:21.847169000 +0100 -@@ -208,7 +208,8 @@ - WITH_FIELD_PLATFORM_STRING(env, file, ids.path, path) { - struct stat64 sb; - if (stat64(path, &sb) == 0) { -- rv = 1000 * (jlong)sb.st_mtime; -+ rv = (jlong)sb.st_mtim.tv_sec * 1000; -+ rv += (jlong)sb.st_mtim.tv_nsec / 1000000; - } - } END_PLATFORM_STRING(env, path); - return rv; -@@ -392,8 +393,8 @@ - struct timeval tv[2]; - - /* Preserve access time */ -- tv[0].tv_sec = sb.st_atime; -- tv[0].tv_usec = 0; -+ tv[0].tv_sec = sb.st_atim.tv_sec; -+ tv[0].tv_usec = sb.st_atim.tv_nsec / 1000; - - /* Change last-modified time */ - tv[1].tv_sec = time / 1000; diff --git a/java/openjdk8/files/patch-jdk-src-solaris-native-sun-nio-ch-sctp-SctpChannelImpl.c b/java/openjdk8/files/patch-jdk-src-solaris-native-sun-nio-ch-sctp-SctpChannelImpl.c deleted file mode 100644 index 226536edfcd..00000000000 --- a/java/openjdk8/files/patch-jdk-src-solaris-native-sun-nio-ch-sctp-SctpChannelImpl.c +++ /dev/null @@ -1,41 +0,0 @@ ---- jdk/src/solaris/native/sun/nio/ch/sctp/SctpChannelImpl.c.org 2018-07-26 09:56:49.897172000 +0200 -+++ jdk/src/solaris/native/sun/nio/ch/sctp/SctpChannelImpl.c 2018-07-30 16:13:19.116935000 +0200 -@@ -330,11 +330,11 @@ - break; - case SCTP_ADDR_MADE_PRIM : - event = sun_nio_ch_sctp_PeerAddrChange_SCTP_ADDR_MADE_PRIM; --#ifdef __linux__ /* Solaris currently doesn't support SCTP_ADDR_CONFIRMED */ -+#ifndef __solaris__ /* Solaris currently doesn't support SCTP_ADDR_CONFIRMED */ - break; - case SCTP_ADDR_CONFIRMED : - event = sun_nio_ch_sctp_PeerAddrChange_SCTP_ADDR_CONFIRMED; --#endif /* __linux__ */ -+#endif /* __solaris__ */ - } - - addressObj = SockAddrToInetSocketAddress(env, (struct sockaddr*)&spc->spc_aaddr); -@@ -445,13 +445,13 @@ - } else if (errno == EINTR) { - return IOS_INTERRUPTED; - --#ifdef __linux__ -+#ifndef __solaris__ - } else if (errno == ENOTCONN) { - /* ENOTCONN when EOF reached */ - rv = 0; - /* there will be no control data */ - msg->msg_controllen = 0; --#endif /* __linux__ */ -+#endif /* __solaris__ */ - - } else { - handleSocketError(env, errno); -@@ -568,7 +568,7 @@ - /* Set up the msghdr structure for sending */ - memset(msg, 0, sizeof (*msg)); - memset(cbuf, 0, cbuf_size); -- msg->msg_name = &sa; -+ msg->msg_name = (sa_len == 0 ? NULL : &sa); - msg->msg_namelen = sa_len; - iov->iov_base = addr; - iov->iov_len = length; diff --git a/java/openjdk8/files/patch-jdk-src-solaris-native-sun-nio-fs-UnixNativeDispatcher.c b/java/openjdk8/files/patch-jdk-src-solaris-native-sun-nio-fs-UnixNativeDispatcher.c deleted file mode 100644 index 5e44a53651d..00000000000 --- a/java/openjdk8/files/patch-jdk-src-solaris-native-sun-nio-fs-UnixNativeDispatcher.c +++ /dev/null @@ -1,11 +0,0 @@ ---- ./jdk/src/solaris/native/sun/nio/fs/UnixNativeDispatcher.c.orig 2018-12-13 10:02:37.501082000 +0100 -+++ ./jdk/src/solaris/native/sun/nio/fs/UnixNativeDispatcher.c 2018-12-13 10:06:26.825382000 +0100 -@@ -453,7 +453,7 @@ - (*env)->SetLongField(env, attrs, attrs_st_birthtime_sec, (jlong)buf->st_birthtime); - #endif - --#if (_POSIX_C_SOURCE >= 200809L) || defined(__solaris__) -+#if (_POSIX_C_SOURCE >= 200809L) || defined(__solaris__) || defined(__FreeBSD__) - (*env)->SetLongField(env, attrs, attrs_st_atime_nsec, (jlong)buf->st_atim.tv_nsec); - (*env)->SetLongField(env, attrs, attrs_st_mtime_nsec, (jlong)buf->st_mtim.tv_nsec); - (*env)->SetLongField(env, attrs, attrs_st_ctime_nsec, (jlong)buf->st_ctim.tv_nsec); diff --git a/java/openjdk8/files/patch-jdk_src_solaris_native_sun_management_OperatingSystemImpl.c b/java/openjdk8/files/patch-jdk_src_solaris_native_sun_management_OperatingSystemImpl.c deleted file mode 100644 index 53d58ea2a87..00000000000 --- a/java/openjdk8/files/patch-jdk_src_solaris_native_sun_management_OperatingSystemImpl.c +++ /dev/null @@ -1,24 +0,0 @@ ---- jdk/src/solaris/native/sun/management/OperatingSystemImpl.c.orig 2017-09-06 22:12:44 UTC -+++ jdk/src/solaris/native/sun/management/OperatingSystemImpl.c -@@ -368,7 +368,9 @@ Java_sun_management_OperatingSystemImpl_ - #elif defined(__FreeBSD__) - static const char *vm_stats[] = { - "vm.stats.vm.v_free_count", -+#if __FreeBSD_version < 1200016 - "vm.stats.vm.v_cache_count", -+#endif - /* "vm.stats.vm.v_inactive_count", */ - NULL - }; -@@ -435,11 +437,6 @@ Java_sun_management_OperatingSystemImpl_ - } - - --#ifdef _ALLBSD_SOURCE --#define FD_DIR "/dev/fd" --#else --#define FD_DIR "/proc/self/fd" --#endif - - JNIEXPORT jlong JNICALL - Java_sun_management_OperatingSystemImpl_getOpenFileDescriptorCount diff --git a/lang/rust-nightly/Makefile b/lang/rust-nightly/Makefile index 709bc9df799..eadbb31a17e 100644 --- a/lang/rust-nightly/Makefile +++ b/lang/rust-nightly/Makefile @@ -14,7 +14,7 @@ CONFLICTS_INSTALL= rust # Which source to pull: # https://static.rust-lang.org/dist/${NIGHTLY_DATE}/rustc-nightly-src.tar.gz # https://static.rust-lang.org/dist/channel-rust-nightly.toml -NIGHTLY_DATE= 2019-04-18 +NIGHTLY_DATE= 2019-04-20 NIGHTLY_SUBDIR= ${NIGHTLY_DATE}/ # See WRKSRC/src/stage0.txt for this date diff --git a/lang/rust-nightly/distinfo b/lang/rust-nightly/distinfo index 713d8dfc2ee..89982c88f77 100644 --- a/lang/rust-nightly/distinfo +++ b/lang/rust-nightly/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1555534554 -SHA256 (rust/2019-04-18/rustc-nightly-src.tar.xz) = a30c814e24ccb8a1ce7e0d172ced7e8e8faf420b7153d346f6d1d808287de18f -SIZE (rust/2019-04-18/rustc-nightly-src.tar.xz) = 96698684 +TIMESTAMP = 1555710537 +SHA256 (rust/2019-04-20/rustc-nightly-src.tar.xz) = 659179ea8b29e106bd68ab21ada511568a3e2f6adf64a17c76c7150a568329a1 +SIZE (rust/2019-04-20/rustc-nightly-src.tar.xz) = 96729956 SHA256 (rust/2019-04-11/rustc-beta-x86_64-unknown-freebsd.tar.gz) = 711f4537f4f92dd1a42035411d8e002cdd5d30f4e29e702014656cc79ddc0f0c SIZE (rust/2019-04-11/rustc-beta-x86_64-unknown-freebsd.tar.gz) = 73817509 SHA256 (rust/2019-04-11/rust-std-beta-x86_64-unknown-freebsd.tar.gz) = 005f878c85250a1c0cb8c3ba43c42bfc509177c5c61bbe81f62d35c99f1478d3 diff --git a/mail/postfix-current/Makefile b/mail/postfix-current/Makefile index 9a4e2358640..f9c640c776a 100644 --- a/mail/postfix-current/Makefile +++ b/mail/postfix-current/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= postfix -DISTVERSION= 3.4-20190106 +DISTVERSION= 3.5-20190330 PORTREVISION?= 0 PORTEPOCH= 5 CATEGORIES= mail ipv6 diff --git a/mail/postfix-current/distinfo b/mail/postfix-current/distinfo index 8621b6b2736..e1670b364a9 100644 --- a/mail/postfix-current/distinfo +++ b/mail/postfix-current/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1546794397 -SHA256 (postfix/postfix-3.4-20190106.tar.gz) = 09e123a8027101dcac16725dab9d8cad99414c858feec617a627e12a79a7d050 -SIZE (postfix/postfix-3.4-20190106.tar.gz) = 4511160 +TIMESTAMP = 1553986683 +SHA256 (postfix/postfix-3.5-20190330.tar.gz) = ed51359b0572aa64d81e6dd21232c28b41200628bc1d813f450cff8ba0089233 +SIZE (postfix/postfix-3.5-20190330.tar.gz) = 4596058 diff --git a/mail/postfix-current/files/extra-patch-blacklistd b/mail/postfix-current/files/extra-patch-blacklistd index a9448d978c7..a4102e3ab12 100644 --- a/mail/postfix-current/files/extra-patch-blacklistd +++ b/mail/postfix-current/files/extra-patch-blacklistd @@ -1,6 +1,6 @@ # PR 225664: support blacklistd on FreeBSD >= 11.0 # ---- src/smtpd/Makefile.in.orig 2017-02-05 23:36:32 UTC +--- src/smtpd/Makefile.in.orig 2019-01-27 22:17:15 UTC +++ src/smtpd/Makefile.in @@ -2,14 +2,14 @@ SHELL = /bin/sh SRCS = smtpd.c smtpd_token.c smtpd_check.c smtpd_chat.c smtpd_state.c \ @@ -20,7 +20,7 @@ TESTSRC = smtpd_token_test.c DEFS = -I. -I$(INC_DIR) -D$(SYSTYPE) CFLAGS = $(DEBUG) $(OPT) $(DEFS) ---- src/smtpd/smtpd_sasl_glue.c.orig 2017-02-19 01:58:21 UTC +--- src/smtpd/smtpd_sasl_glue.c.orig 2018-08-26 18:48:45 UTC +++ src/smtpd/smtpd_sasl_glue.c @@ -147,6 +147,7 @@ #include "smtpd.h" @@ -30,7 +30,7 @@ #ifdef USE_SASL_AUTH -@@ -332,6 +333,10 @@ int smtpd_sasl_authenticate(SMTPD_ST +@@ -331,6 +332,10 @@ int smtpd_sasl_authenticate(SMTPD_ST else smtpd_chat_reply(state, "535 5.7.8 Error: authentication failed: %s", STR(state->sasl_reply)); diff --git a/mail/postfix-current/files/patch-src_tls_tls__certkey.c b/mail/postfix-current/files/patch-src_tls_tls__certkey.c new file mode 100644 index 00000000000..b34b8efd2be --- /dev/null +++ b/mail/postfix-current/files/patch-src_tls_tls__certkey.c @@ -0,0 +1,11 @@ +--- src/tls/tls_certkey.c.orig 2019-03-07 23:57:10 UTC ++++ src/tls/tls_certkey.c +@@ -144,7 +144,7 @@ static void init_pem_load_state(pem_load + + /* use_chain - load cert, key and chain into ctx or ssl */ + +-#if OPENSSL_VERSION_NUMBER >= 0x1010100fUL ++#if OPENSSL_VERSION_NUMBER >= 0x1010100fUL && !defined(LIBRESSL_VERSION_NUMBER) + static int use_chain(pem_load_state_t *st) + { + int ret; diff --git a/mail/postfix-current/pkg-plist b/mail/postfix-current/pkg-plist index 319a29d3b66..09e304898f3 100644 --- a/mail/postfix-current/pkg-plist +++ b/mail/postfix-current/pkg-plist @@ -61,6 +61,7 @@ libexec/postfix/postfix-files libexec/postfix/postfix-script libexec/postfix/postfix-tls-script libexec/postfix/postfix-wrapper +libexec/postfix/postlogd libexec/postfix/postmulti-script libexec/postfix/postscreen libexec/postfix/proxymap @@ -137,6 +138,7 @@ libexec/postfix/virtual %%BMAN%%man/man8/oqmgr.8.gz %%BMAN%%man/man8/pickup.8.gz %%BMAN%%man/man8/pipe.8.gz +%%BMAN%%man/man8/postlogd.8.gz %%BMAN%%man/man8/postscreen.8.gz %%BMAN%%man/man8/proxymap.8.gz %%BMAN%%man/man8/qmgr.8.gz diff --git a/mail/sqwebmail/Makefile b/mail/sqwebmail/Makefile index 6fa4612dcb4..ee37f6bc9b0 100644 --- a/mail/sqwebmail/Makefile +++ b/mail/sqwebmail/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= sqwebmail -PORTVERSION= 6.0.0 -PORTREVISION= 2 +PORTVERSION= 6.0.1 CATEGORIES= mail www MASTER_SITES= SF/courier/webmail/${PORTVERSION} diff --git a/mail/sqwebmail/distinfo b/mail/sqwebmail/distinfo index 6ff7baf6952..10872404ddf 100644 --- a/mail/sqwebmail/distinfo +++ b/mail/sqwebmail/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1537265399 -SHA256 (sqwebmail-6.0.0.tar.bz2) = 137745444cd9223ec8837db57324f3304086a511aed678da600d61d0d1b4cf7e -SIZE (sqwebmail-6.0.0.tar.bz2) = 3613704 +TIMESTAMP = 1555683818 +SHA256 (sqwebmail-6.0.1.tar.bz2) = d55b379fdc34fd6c2708b4901526ee588e5adae0e0c071a46555c4473e09a5c7 +SIZE (sqwebmail-6.0.1.tar.bz2) = 3673276 diff --git a/math/octave-forge-doctest/Makefile b/math/octave-forge-doctest/Makefile index fb62946ec2f..6444e7d84dc 100644 --- a/math/octave-forge-doctest/Makefile +++ b/math/octave-forge-doctest/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= octave-forge-doctest -PORTVERSION= 0.6.1 -PORTREVISION= 7 +PORTVERSION= 0.7.0 CATEGORIES= math MAINTAINER= stephen@FreeBSD.org diff --git a/math/octave-forge-doctest/distinfo b/math/octave-forge-doctest/distinfo index 0528d0113a8..c7ef1b9b5d5 100644 --- a/math/octave-forge-doctest/distinfo +++ b/math/octave-forge-doctest/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1519515102 -SHA256 (octave-forge/doctest-0.6.1.tar.gz) = fa464108199f07ebb50cf4f829025b5521ac4ec6c5f3e64e6e65d07141adea5d -SIZE (octave-forge/doctest-0.6.1.tar.gz) = 23589 +TIMESTAMP = 1555727373 +SHA256 (octave-forge/doctest-0.7.0.tar.gz) = c44d2378d6241c87a88e878102c738e713169a3341d6ba735dc9e896e48f0942 +SIZE (octave-forge/doctest-0.7.0.tar.gz) = 26458 diff --git a/math/taucs/Makefile b/math/taucs/Makefile index 61e58402fe6..f1b7b59b2ac 100644 --- a/math/taucs/Makefile +++ b/math/taucs/Makefile @@ -3,7 +3,7 @@ PORTNAME= taucs PORTVERSION= 2.2 -PORTREVISION= 19 +PORTREVISION= 20 CATEGORIES= math MASTER_SITES= http://www.tau.ac.il/~stoledo/taucs/${PORTVERSION}/ \ LOCAL/bf @@ -17,12 +17,13 @@ LICENSE_NAME= TAUCS License LICENSE_FILE= ${FILESDIR}/TAUCS-license.txt LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept -LIB_DEPENDS= libmetis.so:math/metis4 +LIB_DEPENDS= libmetis.so:math/metis -HAS_CONFIGURE= yes USES= blaslapack fortran tar:tgz USE_LDCONFIG= yes + NO_WRKSUBDIR= yes +HAS_CONFIGURE= yes OPTIONS_DEFINE= DOCS @@ -92,7 +93,7 @@ do-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/doc/*.pdf ${STAGEDIR}${DOCSDIR} -do-test: # XXX: building tests fail +do-test: # XXX: building tests fail .for t in ${TESTS} @${PRINTF} "\n%s\n" "Building test_${t}" @cd ${WRKSRC}_SHARED ; ${FC} ${FFLAGS} -Llib/FreeBSD -L./ \ diff --git a/math/taucs/files/patch-src_taucs__memory.c b/math/taucs/files/patch-src_taucs__memory.c new file mode 100644 index 00000000000..923a89ca169 --- /dev/null +++ b/math/taucs/files/patch-src_taucs__memory.c @@ -0,0 +1,44 @@ +--- src/taucs_memory.c.orig 2003-09-01 06:16:13 UTC ++++ src/taucs_memory.c +@@ -123,7 +123,6 @@ double taucs_system_memory_size() + } + #endif + +-#ifdef OSTYPE_darwin + #define TAUCS_SYSTEM_MEMORY_SIZE_DEFINED + + /* This is a BSD4.4 interface, so it should work on other BSD systems */ +@@ -134,7 +133,7 @@ double taucs_system_memory_size() + double taucs_system_memory_size() + { + int mib[2] = { CTL_HW, HW_PHYSMEM }; +- int int_retval; ++ unsigned long int_retval; + size_t len = sizeof(int); + + taucs_printf("taucs_system_memory_size: calling sysctl\n"); +@@ -142,7 +141,7 @@ double taucs_system_memory_size() + if ( sysctl(mib,2, + &int_retval,&len, + NULL, 0)) { +- taucs_printf("taucs_system_memory_size: ERROR, sysctl failed (on darwin)\n"); ++ taucs_printf("taucs_system_memory_size: ERROR, HW_PAGESIZE sysctl failed (on bsd)\n"); + return -1.0; + } + taucs_printf(" sysctl pagesize %d bytes\n",int_retval); +@@ -151,14 +150,13 @@ double taucs_system_memory_size() + if ( sysctl(mib,2, + &int_retval,&len, + NULL, 0)) { +- taucs_printf("taucs_system_memory_size: ERROR, sysctl failed (on darwin)\n"); ++ taucs_printf("taucs_system_memory_size: ERROR, HW_PHYSMEM sysctl failed (on bsd)\n"); + return -1.0; + } + taucs_printf(" sysctl physmem %d bytes\n",int_retval); + + return (double) int_retval; + } +-#endif + + #ifdef OSTYPE_aix + #define TAUCS_SYSTEM_MEMORY_SIZE_DEFINED diff --git a/misc/mime-support/Makefile b/misc/mime-support/Makefile index 86f9c959599..0379505d374 100644 --- a/misc/mime-support/Makefile +++ b/misc/mime-support/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= mime-support -PORTVERSION= 3.61 +PORTVERSION= 3.62 CATEGORIES= misc MASTER_SITES= DEBIAN_POOL DISTNAME= ${PORTNAME}_${PORTVERSION:C/([0-9]*\.[0-9]*)\.(.*)/\1-\2/} @@ -16,7 +16,7 @@ USES= cpe shebangfix CPE_VENDOR= debian -WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION} +WRKSRC= ${WRKDIR}/${PORTNAME} NO_BUILD= yes PLIST_FILES= bin/run-mailcap etc/mime.types \ diff --git a/misc/mime-support/distinfo b/misc/mime-support/distinfo index bb83f79c407..0b189105420 100644 --- a/misc/mime-support/distinfo +++ b/misc/mime-support/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1535223973 -SHA256 (mime-support_3.61.tar.gz) = 027fa5b709b3dabfb8dcdf68ab8c59e1f534a37eb1d1b5160ee1fd788103131d -SIZE (mime-support_3.61.tar.gz) = 36436 +TIMESTAMP = 1555683589 +SHA256 (mime-support_3.62.tar.gz) = 54e0a03e0cd63c7c9fe68a18ead0a2143fd3c327604215f989d85484d0409f4a +SIZE (mime-support_3.62.tar.gz) = 37130 diff --git a/multimedia/aom/Makefile b/multimedia/aom/Makefile index b0a087fb05d..7d4bee1d721 100644 --- a/multimedia/aom/Makefile +++ b/multimedia/aom/Makefile @@ -2,8 +2,8 @@ PORTNAME= aom DISTVERSIONPREFIX= v -DISTVERSION= 1.0.0-1624 -DISTVERSIONSUFFIX= -gc45451d8a +DISTVERSION= 1.0.0-1632 +DISTVERSIONSUFFIX= -gb6568aa69 CATEGORIES= multimedia MAINTAINER= jbeich@FreeBSD.org diff --git a/multimedia/aom/distinfo b/multimedia/aom/distinfo index c6e45280af5..327ad72e82f 100644 --- a/multimedia/aom/distinfo +++ b/multimedia/aom/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555547090 -SHA256 (jbeich-aom-v1.0.0-1624-gc45451d8a_GH0.tar.gz) = 017efdb68e37566b6f06114344c5ae463fb8b9014ee6bfc1fc8ad36ec9aea1d4 -SIZE (jbeich-aom-v1.0.0-1624-gc45451d8a_GH0.tar.gz) = 3266598 +TIMESTAMP = 1555704797 +SHA256 (jbeich-aom-v1.0.0-1632-gb6568aa69_GH0.tar.gz) = fafb8cae8ea4fd1fc998613da1b555eb3800e0263bd384ca323b54fe39963607 +SIZE (jbeich-aom-v1.0.0-1632-gb6568aa69_GH0.tar.gz) = 3263677 diff --git a/multimedia/dav1d/Makefile b/multimedia/dav1d/Makefile index b50eaceb461..9dd0826393d 100644 --- a/multimedia/dav1d/Makefile +++ b/multimedia/dav1d/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= dav1d -DISTVERSION= 0.2.1 +DISTVERSION= 0.2.2 CATEGORIES= multimedia MAINTAINER= jbeich@FreeBSD.org @@ -19,7 +19,7 @@ USE_GITLAB= yes USE_LDCONFIG= yes GL_SITE= https://code.videolan.org GL_ACCOUNT= videolan -GL_COMMIT= 408d0486889f4f6d92f73abdeaef250659a10bc7 +GL_COMMIT= 1f7a7e8a6af739a05b320151d04f0f7509ae7579 CONFIGURE_ENV= UNAME_m=${ARCH} # XXX cpu_family() OPTIONS_DEFINE= TEST diff --git a/multimedia/dav1d/distinfo b/multimedia/dav1d/distinfo index 34e9e308f1d..e75270d1c52 100644 --- a/multimedia/dav1d/distinfo +++ b/multimedia/dav1d/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1552400916 -SHA256 (videolan-dav1d-408d0486889f4f6d92f73abdeaef250659a10bc7_GL0.tar.gz) = 9a8366c4c56f779a431f4cb0aab0cc165dc6de0aedcada076d2b7e5efc110c24 -SIZE (videolan-dav1d-408d0486889f4f6d92f73abdeaef250659a10bc7_GL0.tar.gz) = 533128 +TIMESTAMP = 1555658199 +SHA256 (videolan-dav1d-1f7a7e8a6af739a05b320151d04f0f7509ae7579_GL0.tar.gz) = add58d685c5eccc252364f599c0330257e3fc3f5de7b190c20cc1f8c66dc4fd0 +SIZE (videolan-dav1d-1f7a7e8a6af739a05b320151d04f0f7509ae7579_GL0.tar.gz) = 569274 SHA256 (videolan-dav1d-test-data-3ccdd3df4fb8583d58bcc0101e315b00ec3ae130_GL0.tar.gz) = 4ac0c3fa7993f53c6e5f03fda28252269ecd6ca11bcd96f6026cb0c2edb64d41 SIZE (videolan-dav1d-test-data-3ccdd3df4fb8583d58bcc0101e315b00ec3ae130_GL0.tar.gz) = 31340228 diff --git a/multimedia/mkvtoolnix/Makefile b/multimedia/mkvtoolnix/Makefile index a1b40f8d7f1..4a72a8d1d3e 100644 --- a/multimedia/mkvtoolnix/Makefile +++ b/multimedia/mkvtoolnix/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= mkvtoolnix -PORTVERSION= 33.0.0 +PORTVERSION= 33.1.0 CATEGORIES= multimedia audio MASTER_SITES= http://www.bunkus.org/videotools/mkvtoolnix/sources/ \ https://mkvtoolnix.download/sources/ diff --git a/multimedia/mkvtoolnix/distinfo b/multimedia/mkvtoolnix/distinfo index 68ce812a8ec..8c60040312c 100644 --- a/multimedia/mkvtoolnix/distinfo +++ b/multimedia/mkvtoolnix/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555158184 -SHA256 (mkvtoolnix-33.0.0.tar.xz) = 92b82b183d14e1d4ef1dd779d00df703f973595c6ae60b32c9faa9cf21e26781 -SIZE (mkvtoolnix-33.0.0.tar.xz) = 7285816 +TIMESTAMP = 1555666463 +SHA256 (mkvtoolnix-33.1.0.tar.xz) = c077f4563fe76e09799fca2451464e0d2d0ebf0e17d1b1b179ec735b19fe6f2a +SIZE (mkvtoolnix-33.1.0.tar.xz) = 7286068 diff --git a/multimedia/rav1e/Makefile b/multimedia/rav1e/Makefile index 74de40327fd..36fb089523a 100644 --- a/multimedia/rav1e/Makefile +++ b/multimedia/rav1e/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= rav1e -PORTVERSION= s20190417 +PORTVERSION= s20190419 CATEGORIES= multimedia MAINTAINER= jbeich@FreeBSD.org @@ -16,7 +16,7 @@ BUILD_DEPENDS_amd64= nasm:devel/nasm USES= cargo USE_GITHUB= yes GH_ACCOUNT= xiph -GH_TAGNAME= 3c2aebf +GH_TAGNAME= d7599d66 PLIST_FILES= bin/${PORTNAME} CARGO_CRATES= aho-corasick-0.6.10 \ diff --git a/multimedia/rav1e/distinfo b/multimedia/rav1e/distinfo index 533730441c1..cf55a75c04a 100644 --- a/multimedia/rav1e/distinfo +++ b/multimedia/rav1e/distinfo @@ -1,4 +1,4 @@ -TIMESTAMP = 1555539676 +TIMESTAMP = 1555718402 SHA256 (rust/crates/aho-corasick-0.6.10.tar.gz) = 81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5 SIZE (rust/crates/aho-corasick-0.6.10.tar.gz) = 26122 SHA256 (rust/crates/aho-corasick-0.7.3.tar.gz) = e6f484ae0c99fec2e858eb6134949117399f222608d84cadb3f58c1f97c2364c @@ -215,5 +215,5 @@ SHA256 (rust/crates/wincolor-1.0.1.tar.gz) = 561ed901ae465d6185fa7864d63fbd5720d SIZE (rust/crates/wincolor-1.0.1.tar.gz) = 4737 SHA256 (rust/crates/y4m-0.3.2.tar.gz) = 61d8cd9e4a938c6d5478e43e92c0b853cff403e28232558fcd8d61dcf9b734e0 SIZE (rust/crates/y4m-0.3.2.tar.gz) = 11083 -SHA256 (xiph-rav1e-s20190417-3c2aebf_GH0.tar.gz) = f3f33ce24a528595ba6a499572ec5bd27332ae3f7fe67774b22c6bbd2e5f7005 -SIZE (xiph-rav1e-s20190417-3c2aebf_GH0.tar.gz) = 370892 +SHA256 (xiph-rav1e-s20190419-d7599d66_GH0.tar.gz) = 807246f893a08ec39dec4927d585c1c05c4f0e61a09590636a6f5adbe2382aa9 +SIZE (xiph-rav1e-s20190419-d7599d66_GH0.tar.gz) = 386214 diff --git a/multimedia/xawtv/Makefile b/multimedia/xawtv/Makefile index 92946604358..285fc78509a 100644 --- a/multimedia/xawtv/Makefile +++ b/multimedia/xawtv/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= xawtv -PORTVERSION= 3.103 -PORTREVISION= 2 +PORTVERSION= 3.106 CATEGORIES= multimedia MASTER_SITES= http://linuxtv.org/downloads/xawtv/ diff --git a/multimedia/xawtv/distinfo b/multimedia/xawtv/distinfo index 22a45f82d87..1214489bbcb 100644 --- a/multimedia/xawtv/distinfo +++ b/multimedia/xawtv/distinfo @@ -1,2 +1,3 @@ -SHA256 (xawtv-3.103.tar.bz2) = 2cf3a91b5d59a094bd86e101684a65c0e3d09225c11a787e060fa01bfbc8dd52 -SIZE (xawtv-3.103.tar.bz2) = 475816 +TIMESTAMP = 1555684312 +SHA256 (xawtv-3.106.tar.bz2) = 57cf4c36f8dabcae8649c0801d3970a1799406bb96dad45f1d628299cd689c9c +SIZE (xawtv-3.106.tar.bz2) = 513314 diff --git a/net-im/talkatu/Makefile b/net-im/talkatu/Makefile index 9aa2b641047..0f3348c49af 100644 --- a/net-im/talkatu/Makefile +++ b/net-im/talkatu/Makefile @@ -1,10 +1,10 @@ # $FreeBSD$ PORTNAME= talkatu -PORTVERSION= g2018102501 +PORTVERSION= g2019031701 CATEGORIES= net-im -MASTER_SITES= https://bitbucket.org/rw_grim/talkatu/get/ -DISTNAME= d8b7f2b0a9b4 +MASTER_SITES= https://bitbucket.org/pidgin/talkatu/get/ +DISTNAME= 1b7433db5cd5 DIST_SUBDIR= ${PORTNAME} MAINTAINER= swills@FreeBSD.org @@ -13,8 +13,7 @@ COMMENT= Collection of Gtk+ widgets that are useful for chat applications LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING -BUILD_DEPENDS= help2man:misc/help2man \ - gtkdoc-scan:textproc/gtk-doc +BUILD_DEPENDS= help2man:misc/help2man LIB_DEPENDS= libgladeui-2.so:devel/glade \ libgspell-1.so:textproc/gspell \ libgumbo.so:devel/gumbo \ @@ -24,9 +23,12 @@ USES= gettext-runtime gnome meson pkgconfig USE_LDCONFIG= yes MESON_ARGS= -Dtests=false -WRKSRC= ${WRKDIR}/rw_grim-talkatu-${DISTNAME} +WRKSRC= ${WRKDIR}/pidgin-talkatu-${DISTNAME} USE_GNOME= glib20 gtk30 OPTIONS_DEFINE= DOCS +DOCS_BUILD_DEPENDS= gtkdoc-scan:textproc/gtk-doc +DOCS_MESON_OFF= -Ddoc=false + .include diff --git a/net-im/talkatu/distinfo b/net-im/talkatu/distinfo index e7c65caced9..b1dc0d4d4f4 100644 --- a/net-im/talkatu/distinfo +++ b/net-im/talkatu/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1540520575 -SHA256 (talkatu/d8b7f2b0a9b4.tar.gz) = b9cf87ed27fd65e8f55e2d441ba346c8038d109129ea898fde3cdb36615c252b -SIZE (talkatu/d8b7f2b0a9b4.tar.gz) = 126341 +TIMESTAMP = 1555692462 +SHA256 (talkatu/1b7433db5cd5.tar.gz) = 48be4f00aaa3fd19b7cae3dc6c4bd21667b6c45fe6b048d759420788a02be9bb +SIZE (talkatu/1b7433db5cd5.tar.gz) = 128302 diff --git a/net-im/talkatu/pkg-descr b/net-im/talkatu/pkg-descr index 4581138c310..111ec0bb924 100644 --- a/net-im/talkatu/pkg-descr +++ b/net-im/talkatu/pkg-descr @@ -3,4 +3,4 @@ Talkatu is a collection of Gtk+ widgets that are useful for chat applications. It was started as a rewrite of the GtkIMHTML widget found in Pidgin, but quickly expanded to include most things related to conversation windows. -WWW: https://bitbucket.org/rw_grim/talkatu/overview +WWW: https://bitbucket.org/pidgin/talkatu/overview diff --git a/net-im/talkatu/pkg-plist b/net-im/talkatu/pkg-plist index a1f8a2218ec..ea5c11f0df6 100644 --- a/net-im/talkatu/pkg-plist +++ b/net-im/talkatu/pkg-plist @@ -35,39 +35,39 @@ man/man1/talkatu-demo.1.gz %%PORTDOCS%%%%DOCSDIR%%/logo.png share/glade/catalogs/talkatu.xml share/gir-1.0/Talkatu-0.0.gir -share/gtk-doc/html/talkatu/API.html -share/gtk-doc/html/talkatu/TalkatuActionGroup.html -share/gtk-doc/html/talkatu/TalkatuBuffer.html -share/gtk-doc/html/talkatu/TalkatuEditor.html -share/gtk-doc/html/talkatu/TalkatuHistory.html -share/gtk-doc/html/talkatu/TalkatuHistoryBuffer.html -share/gtk-doc/html/talkatu/TalkatuHtmlBuffer.html -share/gtk-doc/html/talkatu/TalkatuLinkDialog.html -share/gtk-doc/html/talkatu/TalkatuMarkdownBuffer.html -share/gtk-doc/html/talkatu/TalkatuMenuToolButton.html -share/gtk-doc/html/talkatu/TalkatuMessage.html -share/gtk-doc/html/talkatu/TalkatuMessageActions.html -share/gtk-doc/html/talkatu/TalkatuTagTable.html -share/gtk-doc/html/talkatu/TalkatuToolDrawer.html -share/gtk-doc/html/talkatu/TalkatuToolbar.html -share/gtk-doc/html/talkatu/TalkatuView.html -share/gtk-doc/html/talkatu/TalkatuWholeBuffer.html -share/gtk-doc/html/talkatu/annotation-glossary.html -share/gtk-doc/html/talkatu/api-index-deprecated.html -share/gtk-doc/html/talkatu/api-index-full.html -share/gtk-doc/html/talkatu/home.png -share/gtk-doc/html/talkatu/index.html -share/gtk-doc/html/talkatu/left-insensitive.png -share/gtk-doc/html/talkatu/left.png -share/gtk-doc/html/talkatu/object-hierarchy.html -share/gtk-doc/html/talkatu/right-insensitive.png -share/gtk-doc/html/talkatu/right.png -share/gtk-doc/html/talkatu/style.css -share/gtk-doc/html/talkatu/talkatu-Codeset-Helpers.html -share/gtk-doc/html/talkatu/talkatu-Core-API.html -share/gtk-doc/html/talkatu/talkatu-Markup-Helpers.html -share/gtk-doc/html/talkatu/talkatu-Tags.html -share/gtk-doc/html/talkatu/talkatu-Version-Information.html -share/gtk-doc/html/talkatu/talkatu.devhelp2 -share/gtk-doc/html/talkatu/up-insensitive.png -share/gtk-doc/html/talkatu/up.png +%%PORTDOCS%%share/gtk-doc/html/talkatu/API.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuActionGroup.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuBuffer.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuEditor.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuHistory.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuHistoryBuffer.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuHtmlBuffer.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuLinkDialog.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuMarkdownBuffer.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuMenuToolButton.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuMessage.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuMessageActions.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuTagTable.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuToolDrawer.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuToolbar.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuView.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuWholeBuffer.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/annotation-glossary.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/api-index-deprecated.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/api-index-full.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/home.png +%%PORTDOCS%%share/gtk-doc/html/talkatu/index.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/left-insensitive.png +%%PORTDOCS%%share/gtk-doc/html/talkatu/left.png +%%PORTDOCS%%share/gtk-doc/html/talkatu/object-hierarchy.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/right-insensitive.png +%%PORTDOCS%%share/gtk-doc/html/talkatu/right.png +%%PORTDOCS%%share/gtk-doc/html/talkatu/style.css +%%PORTDOCS%%share/gtk-doc/html/talkatu/talkatu-Codeset-Helpers.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/talkatu-Core-API.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/talkatu-Markup-Helpers.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/TalkatuTag.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/talkatu-Version-Information.html +%%PORTDOCS%%share/gtk-doc/html/talkatu/talkatu.devhelp2 +%%PORTDOCS%%share/gtk-doc/html/talkatu/up-insensitive.png +%%PORTDOCS%%share/gtk-doc/html/talkatu/up.png diff --git a/net-im/uTox/Makefile b/net-im/uTox/Makefile index a0d58363cb9..5bb60e60ae4 100644 --- a/net-im/uTox/Makefile +++ b/net-im/uTox/Makefile @@ -3,7 +3,7 @@ PORTNAME= uTox DISTVERSION= 0.17.0 DISTVERSIONSUFFIX= -full -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= net-im net-p2p MASTER_SITES= https://github.com/uTox/uTox/releases/download/v${PORTVERSION}/ @@ -17,7 +17,8 @@ BROKEN_aarch64= fails to compile: endian.h:68:20: too many arguments provided t BROKEN_armv6= fails to compile: endian.h:68:20: too many arguments provided to function-like macro invocation BROKEN_armv7= fails to compile: endian.h:68:20: too many arguments provided to function-like macro invocation -BUILD_DEPENDS= ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat +BUILD_DEPENDS= ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ + ${LOCALBASE}/include/linux/input.h:devel/evdev-proto LIB_DEPENDS= libfreetype.so:print/freetype2 \ libfontconfig.so:x11-fonts/fontconfig \ libsodium.so:security/libsodium \ @@ -29,6 +30,7 @@ LIB_DEPENDS= libfreetype.so:print/freetype2 \ USES= cmake compiler:c11 desktop-file-utils dos2unix \ openal pkgconfig USE_XORG= ice sm x11 xext xrender + CMAKE_OFF= ENABLE_LTO DOS2UNIX_GLOB= * LLD_UNSAFE= yes diff --git a/net-im/uTox/files/patch-src_xlib_main.c b/net-im/uTox/files/patch-src_xlib_main.c new file mode 100644 index 00000000000..7e0ffeb96d5 --- /dev/null +++ b/net-im/uTox/files/patch-src_xlib_main.c @@ -0,0 +1,23 @@ +--- src/xlib/main.c.orig 2019-02-17 05:10:45 UTC ++++ src/xlib/main.c +@@ -94,6 +94,11 @@ void init_ptt(void) { + + #ifdef __linux__ + #include ++#elif defined(__DragonFly__) || defined(__FreeBSD__) ++#include ++#endif ++ ++#if defined(__linux__) || defined(__DragonFly__) || defined(__FreeBSD__) + static bool linux_check_ptt(void) { + /* First, we try for direct access to the keyboard. */ + int ptt_key = KEY_LEFTCTRL; // TODO allow user to change this... +@@ -146,7 +151,7 @@ bool check_ptt_key(void) { + return true; /* If push to talk is disabled, return true. */ + } + +-#ifdef __linux__ ++#if defined(__linux__) || defined(__DragonFly__) || defined(__FreeBSD__) + return linux_check_ptt(); + #else + return bsd_check_ptt(); diff --git a/net-p2p/libtorrent-rasterbar/Makefile b/net-p2p/libtorrent-rasterbar/Makefile index 3deba6febdf..edcc48916bf 100644 --- a/net-p2p/libtorrent-rasterbar/Makefile +++ b/net-p2p/libtorrent-rasterbar/Makefile @@ -13,8 +13,6 @@ COMMENT= C++ library implementing a BitTorrent client LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/COPYING -BROKEN= fails to build with boost 1.70, see bug 236588 - LIB_DEPENDS= libboost_chrono.so:devel/boost-libs \ libboost_random.so:devel/boost-libs \ libboost_system.so:devel/boost-libs diff --git a/net-p2p/libtorrent-rasterbar/files/patch-boost-1.70 b/net-p2p/libtorrent-rasterbar/files/patch-boost-1.70 new file mode 100644 index 00000000000..68b5ff07e63 --- /dev/null +++ b/net-p2p/libtorrent-rasterbar/files/patch-boost-1.70 @@ -0,0 +1,193 @@ +https://github.com/arvidn/libtorrent/commit/76c2794923c4 + +--- include/libtorrent/io_service.hpp.orig 2018-10-05 09:19:18 UTC ++++ include/libtorrent/io_service.hpp +@@ -53,6 +53,7 @@ POSSIBILITY OF SUCH DAMAGE. + #endif + + #include "libtorrent/aux_/disable_warnings_pop.hpp" ++#include "libtorrent/io_service_fwd.hpp" + + #ifdef __OBJC__ + #undef Protocol +--- include/libtorrent/io_service_fwd.hpp.orig 2018-10-05 09:19:18 UTC ++++ include/libtorrent/io_service_fwd.hpp +@@ -65,10 +65,19 @@ namespace boost { namespace asio { + namespace libtorrent + { + #if defined TORRENT_BUILD_SIMULATOR +- typedef sim::asio::io_service io_service; ++ using io_service = sim::asio::io_service; + #else +- typedef boost::asio::io_service io_service; ++ using io_service = boost::asio::io_service; + #endif ++ ++#if BOOST_VERSION >= 107000 ++template ++io_service& get_io_service(T& o) { return static_cast(o.get_executor().context()); } ++#else ++template ++io_service& get_io_service(T& o) { return o.get_io_service(); } ++#endif ++ + } + + #endif +--- include/libtorrent/proxy_base.hpp.orig 2018-10-05 09:19:18 UTC ++++ include/libtorrent/proxy_base.hpp +@@ -249,7 +249,7 @@ class proxy_base : boost::noncopyable (public) + + io_service& get_io_service() + { +- return m_sock.get_io_service(); ++ return lt::get_io_service(m_sock); + } + + lowest_layer_type& lowest_layer() +--- include/libtorrent/tracker_manager.hpp.orig 2018-10-05 09:19:21 UTC ++++ include/libtorrent/tracker_manager.hpp +@@ -283,7 +283,7 @@ namespace libtorrent + virtual void on_timeout(error_code const& ec) = 0; + virtual ~timeout_handler() {} + +- io_service& get_io_service() { return m_timeout.get_io_service(); } ++ io_service& get_io_service() { return lt::get_io_service(m_timeout); } + + private: + +--- include/libtorrent/udp_socket.hpp.orig 2018-10-05 09:19:18 UTC ++++ include/libtorrent/udp_socket.hpp +@@ -80,7 +80,7 @@ namespace libtorrent + }; + + bool is_open() const { return m_abort == false; } +- io_service& get_io_service() { return m_ipv4_sock.get_io_service(); } ++ io_service& get_io_service() { return lt::get_io_service(m_ipv4_sock); } + + void subscribe(udp_socket_observer* o); + void unsubscribe(udp_socket_observer* o); +--- src/http_connection.cpp.orig 2018-10-05 09:19:18 UTC ++++ src/http_connection.cpp +@@ -150,7 +150,7 @@ void http_connection::get(std::string const& url, time + + if (ec) + { +- m_timer.get_io_service().post(boost::bind(&http_connection::callback ++ lt::get_io_service(m_timer).post(boost::bind(&http_connection::callback + , me, ec, static_cast(NULL), 0)); + return; + } +@@ -162,7 +162,7 @@ void http_connection::get(std::string const& url, time + ) + { + error_code err(errors::unsupported_url_protocol); +- m_timer.get_io_service().post(boost::bind(&http_connection::callback ++ lt::get_io_service(m_timer).post(boost::bind(&http_connection::callback + , me, err, static_cast(NULL), 0)); + return; + } +@@ -263,7 +263,7 @@ void http_connection::start(std::string const& hostnam + + if (ec) + { +- m_timer.get_io_service().post(boost::bind(&http_connection::callback ++ lt::get_io_service(m_timer).post(boost::bind(&http_connection::callback + , me, ec, static_cast(NULL), 0)); + return; + } +@@ -303,7 +303,7 @@ void http_connection::start(std::string const& hostnam + + if (i2p_conn->proxy().type != settings_pack::i2p_proxy) + { +- m_timer.get_io_service().post(boost::bind(&http_connection::callback ++ lt::get_io_service(m_timer).post(boost::bind(&http_connection::callback + , me, error_code(errors::no_i2p_router), static_cast(NULL), 0)); + return; + } +@@ -337,7 +337,7 @@ void http_connection::start(std::string const& hostnam + m_ssl_ctx->set_verify_mode(ssl::context::verify_none, ec); + if (ec) + { +- m_timer.get_io_service().post(boost::bind(&http_connection::callback ++ lt::get_io_service(m_timer).post(boost::bind(&http_connection::callback + , me, ec, static_cast(NULL), 0)); + return; + } +@@ -349,7 +349,7 @@ void http_connection::start(std::string const& hostnam + // assume this is not a tracker connection. Tracker connections that + // shouldn't be subject to the proxy should pass in NULL as the proxy + // pointer. +- instantiate_connection(m_timer.get_io_service() ++ instantiate_connection(lt::get_io_service(m_timer) + , proxy ? *proxy : null_proxy, m_sock, userdata, NULL, false, false); + + if (m_bind_addr) +@@ -358,7 +358,7 @@ void http_connection::start(std::string const& hostnam + m_sock.bind(tcp::endpoint(*m_bind_addr, 0), ec); + if (ec) + { +- m_timer.get_io_service().post(boost::bind(&http_connection::callback ++ lt::get_io_service(m_timer).post(boost::bind(&http_connection::callback + , me, ec, static_cast(NULL), 0)); + return; + } +@@ -367,7 +367,7 @@ void http_connection::start(std::string const& hostnam + setup_ssl_hostname(m_sock, hostname, ec); + if (ec) + { +- m_timer.get_io_service().post(boost::bind(&http_connection::callback ++ lt::get_io_service(m_timer).post(boost::bind(&http_connection::callback + , me, ec, static_cast(NULL), 0)); + return; + } +--- src/lsd.cpp.orig 2018-10-05 09:19:18 UTC ++++ src/lsd.cpp +@@ -112,12 +112,12 @@ void lsd::debug_log(char const* fmt, ...) const + void lsd::start(error_code& ec) + { + m_socket.open(boost::bind(&lsd::on_announce, self(), _1, _2, _3) +- , m_broadcast_timer.get_io_service(), ec); ++ , lt::get_io_service(m_broadcast_timer), ec); + if (ec) return; + + #if TORRENT_USE_IPV6 + m_socket6.open(boost::bind(&lsd::on_announce, self(), _1, _2, _3) +- , m_broadcast_timer.get_io_service(), ec); ++ , lt::get_io_service(m_broadcast_timer), ec); + #endif + } + +--- src/natpmp.cpp.orig 2018-10-05 09:19:18 UTC ++++ src/natpmp.cpp +@@ -89,7 +89,7 @@ void natpmp::start() + mutex::scoped_lock l(m_mutex); + + error_code ec; +- address gateway = get_default_gateway(m_socket.get_io_service(), ec); ++ address gateway = get_default_gateway(lt::get_io_service(m_socket), ec); + if (ec) + { + char msg[200]; +--- src/upnp.cpp.orig 2018-10-05 09:19:18 UTC ++++ src/upnp.cpp +@@ -135,7 +135,7 @@ void upnp::start() + { + error_code ec; + m_socket.open(boost::bind(&upnp::on_reply, self(), _1, _2, _3) +- , m_refresh_timer.get_io_service(), ec); ++ , lt::get_io_service(m_refresh_timer), ec); + + m_mappings.reserve(10); + } +--- test/test_fast_extension.cpp.orig 2018-10-05 09:19:21 UTC ++++ test/test_fast_extension.cpp +@@ -453,7 +453,7 @@ boost::shared_ptr setup_peer(tcp::socket + } + else + { +- tcp::acceptor l(s.get_io_service()); ++ tcp::acceptor l(lt::get_io_service(s)); + l.open(tcp::v4()); + l.bind(tcp::endpoint(address_v4::from_string("127.0.0.1") + , 3000 + rand() % 60000)); diff --git a/net/fonulator/Makefile b/net/fonulator/Makefile index 419d0e58d49..2aefaf089e3 100644 --- a/net/fonulator/Makefile +++ b/net/fonulator/Makefile @@ -29,6 +29,10 @@ post-patch: -e 's,/usr/lib/libargtable2.a,${LOCALBASE}/lib/libargtable2.a,'\ -e 's,/usr/lib/libnet.a,${LOCALBASE}/lib/libnet.a,'\ ${WRKSRC}/Makefile.in ${WRKSRC}/configure +.if exists(/usr/lib/libibverbs.a) + @${REINPLACE_CMD} -e 's,^fonulator_LDADD.*,& /usr/lib/libibverbs.a,' \ + ${WRKSRC}/Makefile.in +.endif @${REINPLACE_CMD} -e 's,/etc/redfone.conf,${LOCALBASE}/etc/redfone.conf,'\ ${WRKSRC}/fonulator.c ${WRKSRC}/fonulator.1 diff --git a/net/madonctl/Makefile b/net/madonctl/Makefile index 5d27bbd5615..2970669417f 100644 --- a/net/madonctl/Makefile +++ b/net/madonctl/Makefile @@ -4,7 +4,7 @@ PORTNAME= madonctl PORTVERSION= 2.3.1 DISTVERSIONPREFIX= v -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= net MAINTAINER= sunpoet@FreeBSD.org @@ -23,29 +23,29 @@ GH_ACCOUNT= McKael GH_TUPLE= McKael:madon:v2.3.0:McKael_madon/../src/github.com/McKael/madon \ fsnotify:fsnotify:v1.4.7:fsnotify_fsnotify/../src/github.com/fsnotify/fsnotify \ ghodss:yaml:v1.0.0:ghodss_yaml/../src/github.com/ghodss/yaml \ - go-yaml:yaml:v2.2.1:goyaml_yaml/../src/gopkg.in/yaml.v2 \ - golang:net:adae6a3:golang_net/../src/golang.org/x/net \ - golang:oauth2:8f65e30:golang_oauth2/../src/golang.org/x/oauth2 \ - golang:sys:62eef0e:golang_sys/../src/golang.org/x/sys \ - golang:text:6f44c5a:golang_text/../src/golang.org/x/text \ + go-yaml:yaml:v2.2.2:goyaml_yaml/../src/gopkg.in/yaml.v2 \ + golang:net:1f3472d:golang_net/../src/golang.org/x/net \ + golang:oauth2:9f33145:golang_oauth2/../src/golang.org/x/oauth2 \ + golang:sys:e8e3143:golang_sys/../src/golang.org/x/sys \ + golang:text:f4905fb:golang_text/../src/golang.org/x/text \ gorilla:websocket:v1.4.0:gorilla_websocket/../src/github.com/gorilla/websocket \ hashicorp:hcl:v1.0.0:hashicorp_hcl/../src/github.com/hashicorp/hcl \ kr:text:v0.1.0:kr_text/../src/github.com/kr/text \ magiconair:properties:v1.8.0:magiconair_properties/../src/github.com/magiconair/properties \ mattn:go:go1.9.1:imattn_go/../src/github.com/mattn/go \ - mattn:go-isatty:v0.0.4:mattn_goisatty/../src/github.com/mattn/go-isatty \ + mattn:go-isatty:v0.0.7:mattn_goisatty/../src/github.com/mattn/go-isatty \ mitchellh:mapstructure:v1.1.2:mitchellh_mapstructure/../src/github.com/mitchellh/mapstructure \ - pelletier:go-toml:v1.2.0:pelletier_gotoml/../src/github.com/pelletier/go-toml \ - pkg:errors:v0.8.0:pkg_errors/../src/github.com/pkg/errors \ + pelletier:go-toml:v1.3.0:pelletier_gotoml/../src/github.com/pelletier/go-toml \ + pkg:errors:v0.8.1:pkg_errors/../src/github.com/pkg/errors \ sendgrid:rest:v2.4.1:sendgrid_rest/../src/github.com/sendgrid/rest \ sgoertzen:html2text:491ddf8:sgoertzen_html2text/../src/github.com/sgoertzen/html2text \ - spf13:afero:v1.1.2:spf13_afero/../src/github.com/spf13/afero \ + spf13:afero:v1.2.2:spf13_afero/../src/github.com/spf13/afero \ spf13:cast:v1.3.0:spf13_cast/../src/github.com/spf13/cast \ spf13:cobra:v0.0.3:spf13_cobra/../src/github.com/spf13/cobra \ - spf13:jwalterweatherman:v1.0.0:spf13_jwalterweatherman/../src/github.com/spf13/jwalterweatherman \ + spf13:jwalterweatherman:v1.1.0:spf13_jwalterweatherman/../src/github.com/spf13/jwalterweatherman \ spf13:pflag:v1.0.3:spf13_pflag/../src/github.com/spf13/pflag \ - spf13:viper:v1.2.1:spf13_viper/../src/github.com/spf13/viper \ - stretchr:testify:v1.2.2:stretchr_testify/../src/github.com/stretchr/testify + spf13:viper:v1.3.2:spf13_viper/../src/github.com/spf13/viper \ + stretchr:testify:v1.3.0:stretchr_testify/../src/github.com/stretchr/testify USE_GITHUB= yes do-install: diff --git a/net/madonctl/distinfo b/net/madonctl/distinfo index cca1a8f29d0..e0115803885 100644 --- a/net/madonctl/distinfo +++ b/net/madonctl/distinfo @@ -1,4 +1,4 @@ -TIMESTAMP = 1543074738 +TIMESTAMP = 1555710429 SHA256 (McKael-madonctl-v2.3.1_GH0.tar.gz) = f97707a4f96b15a8331a0b3725a43c7717bf068bf9e6c5e885a13dd3016d5cf6 SIZE (McKael-madonctl-v2.3.1_GH0.tar.gz) = 43395 SHA256 (McKael-madon-v2.3.0_GH0.tar.gz) = c970cb350b3da734399906e6da4b333d300dbaa820af921cb2c72cc6e533c600 @@ -7,16 +7,16 @@ SHA256 (fsnotify-fsnotify-v1.4.7_GH0.tar.gz) = b7530d973d0ab0e58ad8ce1b9a4b963d6 SIZE (fsnotify-fsnotify-v1.4.7_GH0.tar.gz) = 31139 SHA256 (ghodss-yaml-v1.0.0_GH0.tar.gz) = 8a76b47cd171944612aae1cfa08bbb971b63fec16794c839252808392097de44 SIZE (ghodss-yaml-v1.0.0_GH0.tar.gz) = 11772 -SHA256 (go-yaml-yaml-v2.2.1_GH0.tar.gz) = 33218aa3bd60a307fe14e66b970473cb411bb6ca3d4f4a5e30c97b44f9b4e84b -SIZE (go-yaml-yaml-v2.2.1_GH0.tar.gz) = 70217 -SHA256 (golang-net-adae6a3_GH0.tar.gz) = 73198da598de91875030ad99b73544ec20eca47d890db46a30f1c7e0a11034e3 -SIZE (golang-net-adae6a3_GH0.tar.gz) = 965656 -SHA256 (golang-oauth2-8f65e30_GH0.tar.gz) = d7adf01bf91a699779eb066d2d6fba14aff4f0d9a354679b1b3f7c1159b80da2 -SIZE (golang-oauth2-8f65e30_GH0.tar.gz) = 43222 -SHA256 (golang-sys-62eef0e_GH0.tar.gz) = ad3c32771a961d18cb8a1ae96c56e8927f49bc97f281a3f6333c05c4ee32d005 -SIZE (golang-sys-62eef0e_GH0.tar.gz) = 1115440 -SHA256 (golang-text-6f44c5a_GH0.tar.gz) = 345199c54d88774ff10d6d6d8d5d185451f7be2001c766ba1e467531f07c5152 -SIZE (golang-text-6f44c5a_GH0.tar.gz) = 6581161 +SHA256 (go-yaml-yaml-v2.2.2_GH0.tar.gz) = 42c3e4ef9eca2860d22b3c6c5582c6c13fb4b417e5ebc1acc56ee5e2c4ddcaff +SIZE (go-yaml-yaml-v2.2.2_GH0.tar.gz) = 70656 +SHA256 (golang-net-1f3472d_GH0.tar.gz) = 456f38c5326e18728f194cb99fb43e63e17a5074db86926c0a939eb4be8b9df6 +SIZE (golang-net-1f3472d_GH0.tar.gz) = 978051 +SHA256 (golang-oauth2-9f33145_GH0.tar.gz) = 5a2b86ad2446e6f0752b7c789a41778348d419f03ab04059164fd278e15ecc9b +SIZE (golang-oauth2-9f33145_GH0.tar.gz) = 45019 +SHA256 (golang-sys-e8e3143_GH0.tar.gz) = d72b8fb8f6f5c868b709c40343512e71076a8702266c1d4409686edd397bc73b +SIZE (golang-sys-e8e3143_GH0.tar.gz) = 1350775 +SHA256 (golang-text-f4905fb_GH0.tar.gz) = 51709e7e625106115979cfa36d405233d505f8ef393fac19290abdaa36551b52 +SIZE (golang-text-f4905fb_GH0.tar.gz) = 6589997 SHA256 (gorilla-websocket-v1.4.0_GH0.tar.gz) = 2b5743c72bd0930c5a80e49c0138b5b7d27fa7c085efd0c86805cccfa7220c9d SIZE (gorilla-websocket-v1.4.0_GH0.tar.gz) = 50228 SHA256 (hashicorp-hcl-v1.0.0_GH0.tar.gz) = 50632428210503070fd2fde748c88b7414bf84a6a0eadebf9d8e596a033bead2 @@ -27,29 +27,29 @@ SHA256 (magiconair-properties-v1.8.0_GH0.tar.gz) = f6c732fe6031e2cf72c6eb6d6ce50 SIZE (magiconair-properties-v1.8.0_GH0.tar.gz) = 29504 SHA256 (mattn-go-go1.9.1_GH0.tar.gz) = cffb270091d61263254a130543ec7de30e4c3d847d394ea6fb71e09ce22f63fb SIZE (mattn-go-go1.9.1_GH0.tar.gz) = 16355327 -SHA256 (mattn-go-isatty-v0.0.4_GH0.tar.gz) = a6228abe42ccfcad4b17c176117ccf2822d06bde51dc437852854056d8737f12 -SIZE (mattn-go-isatty-v0.0.4_GH0.tar.gz) = 3377 +SHA256 (mattn-go-isatty-v0.0.7_GH0.tar.gz) = 80b6b3e4fee3b15864f23d622129c17ba222786f8c93bb01f8805f3cb91dfefe +SIZE (mattn-go-isatty-v0.0.7_GH0.tar.gz) = 3559 SHA256 (mitchellh-mapstructure-v1.1.2_GH0.tar.gz) = 53fbc06b125ff1c9c73a4eb1764346932671a29c67a45a92e2ebc6855635069b SIZE (mitchellh-mapstructure-v1.1.2_GH0.tar.gz) = 20980 -SHA256 (pelletier-go-toml-v1.2.0_GH0.tar.gz) = 1a5a620f680033f17e34148bee8f26d96d8c27ff1d7f56f0fe1c7253595b5244 -SIZE (pelletier-go-toml-v1.2.0_GH0.tar.gz) = 57496 -SHA256 (pkg-errors-v0.8.0_GH0.tar.gz) = bacf6c58e490911398cee61742ddc6a90c560733e4c9dcb3d867b17a894c9dd5 -SIZE (pkg-errors-v0.8.0_GH0.tar.gz) = 11344 +SHA256 (pelletier-go-toml-v1.3.0_GH0.tar.gz) = 731d6cfb21a70177e3e55998eabf86020aad768179bfc5ec52d3fd2d9877992c +SIZE (pelletier-go-toml-v1.3.0_GH0.tar.gz) = 71949 +SHA256 (pkg-errors-v0.8.1_GH0.tar.gz) = 7a428967c6fc2e80cd84a0d9469ab6bd4dbe6b13493ba6294322a933a5a7e356 +SIZE (pkg-errors-v0.8.1_GH0.tar.gz) = 11009 SHA256 (sendgrid-rest-v2.4.1_GH0.tar.gz) = 1967b7e11e6dbf06d5c7aa4e27988e77f4f40b8aa1ed13b2f163d2eb9c3f9240 SIZE (sendgrid-rest-v2.4.1_GH0.tar.gz) = 14187 SHA256 (sgoertzen-html2text-491ddf8_GH0.tar.gz) = f96d51db9b417bdca071956c490101542412e97be7b63e9502e75ab393d872d6 SIZE (sgoertzen-html2text-491ddf8_GH0.tar.gz) = 3799 -SHA256 (spf13-afero-v1.1.2_GH0.tar.gz) = 66554a6b09b0009340ae77c119d5a14e2460bb3aea56e75e138c87e621f3803b -SIZE (spf13-afero-v1.1.2_GH0.tar.gz) = 45309 +SHA256 (spf13-afero-v1.2.2_GH0.tar.gz) = b577afca7e9839aa7cf0ddd712af553aec671b74f97fe0c88c63f911d1020570 +SIZE (spf13-afero-v1.2.2_GH0.tar.gz) = 46157 SHA256 (spf13-cast-v1.3.0_GH0.tar.gz) = e685282ea33f89e9354d148ad1886f532bcebe86b0b60a167988f7c6d081085f SIZE (spf13-cast-v1.3.0_GH0.tar.gz) = 11085 SHA256 (spf13-cobra-v0.0.3_GH0.tar.gz) = 7eafb953b58fdd738c4db5202d94a0b6ac0de4f07718fc85a80450c2347c2f9c SIZE (spf13-cobra-v0.0.3_GH0.tar.gz) = 101526 -SHA256 (spf13-jwalterweatherman-v1.0.0_GH0.tar.gz) = 2ece12b964e0d230b10851555185d42d3c81b401efda044265ae716eb1d0bc2d -SIZE (spf13-jwalterweatherman-v1.0.0_GH0.tar.gz) = 6392 +SHA256 (spf13-jwalterweatherman-v1.1.0_GH0.tar.gz) = 4fd850a792c5738954c4801cf549d8d0bf53edd17139cd39d179aa5abf7ec68d +SIZE (spf13-jwalterweatherman-v1.1.0_GH0.tar.gz) = 6871 SHA256 (spf13-pflag-v1.0.3_GH0.tar.gz) = 9e57f86f493f04d9077fccd04e7139ebf243dd544e917ab83d35729b3e54a124 SIZE (spf13-pflag-v1.0.3_GH0.tar.gz) = 46002 -SHA256 (spf13-viper-v1.2.1_GH0.tar.gz) = a98557c9b0450f053d6dcaf886c7945969b8d5257a955f4236b42a8465e426f4 -SIZE (spf13-viper-v1.2.1_GH0.tar.gz) = 34467 -SHA256 (stretchr-testify-v1.2.2_GH0.tar.gz) = 0728bb470254e8b39deae3e6c1c92a98e737239ae0be484188fb9083250adf5f -SIZE (stretchr-testify-v1.2.2_GH0.tar.gz) = 101698 +SHA256 (spf13-viper-v1.3.2_GH0.tar.gz) = 3eb6e09dc9de3d46ad659b97774afa3f27b560b642ca025bee04d14b5aad3b16 +SIZE (spf13-viper-v1.3.2_GH0.tar.gz) = 36932 +SHA256 (stretchr-testify-v1.3.0_GH0.tar.gz) = 0cd9c199a72b8d80621624b37c0ed5ac724352d458506a31dfa86710551e7fc5 +SIZE (stretchr-testify-v1.3.0_GH0.tar.gz) = 102859 diff --git a/net/pecl-rdkafka/Makefile b/net/pecl-rdkafka/Makefile index bf7d9a8cb8b..64c3e6e99b5 100644 --- a/net/pecl-rdkafka/Makefile +++ b/net/pecl-rdkafka/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= rdkafka -PORTVERSION= 3.0.5 +PORTVERSION= 3.1.0 CATEGORIES= net pear MAINTAINER= sergey@akhmatov.ru diff --git a/net/pecl-rdkafka/distinfo b/net/pecl-rdkafka/distinfo index 9a8bdedc917..14fc3808e34 100644 --- a/net/pecl-rdkafka/distinfo +++ b/net/pecl-rdkafka/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1522404468 -SHA256 (PECL/rdkafka-3.0.5.tgz) = 3c199cc872a32e18f28ff12e90a92612fb6b169432517feb36643e431e468d54 -SIZE (PECL/rdkafka-3.0.5.tgz) = 30235 +TIMESTAMP = 1555606663 +SHA256 (PECL/rdkafka-3.1.0.tgz) = 410d417ae222e585e9ca128b28f1be300c0f41aa313cef2bf5a2235a8f472a27 +SIZE (PECL/rdkafka-3.1.0.tgz) = 32386 diff --git a/net/xmlrpc-c/Makefile b/net/xmlrpc-c/Makefile index c349311a5a4..0a139c7088d 100644 --- a/net/xmlrpc-c/Makefile +++ b/net/xmlrpc-c/Makefile @@ -3,6 +3,7 @@ PORTNAME= xmlrpc-c PORTVERSION= 1.51.03 +PORTREVISION= 1 CATEGORIES= net MASTER_SITES= SF/${PORTNAME}/Xmlrpc-c%20Super%20Stable/${PORTVERSION} diff --git a/net/xmlrpc-c/files/patch-src_cpp_value.cpp b/net/xmlrpc-c/files/patch-src_cpp_value.cpp new file mode 100644 index 00000000000..aba637c1010 --- /dev/null +++ b/net/xmlrpc-c/files/patch-src_cpp_value.cpp @@ -0,0 +1,34 @@ +--- src/cpp/value.cpp.orig 2019-03-29 03:33:33 UTC ++++ src/cpp/value.cpp +@@ -1,4 +1,3 @@ +-#include + /***************************************************************************** + value.cpp + ****************************************************************************** +@@ -622,13 +621,9 @@ class cNewStringWrapper { (public) + + switch (nlCode) { + case value_string::nlCode_all: +- cerr << "Going to call xmlrpc_string_new_lp" << endl; +- cerr << "length = " << cppvalue.length() << ", value = " +- << cppvalue.c_str() << endl; + this->valueP = xmlrpc_string_new_lp(&env.env_c, + cppvalue.length(), + cppvalue.c_str()); +- cerr << "Back from xmlrpc_string_new_lp" << endl; + break; + case value_string::nlCode_lf: + this->valueP = xmlrpc_string_new_lp_cr(&env.env_c, +@@ -661,12 +656,9 @@ value_string::value_string(std::string const& + + value_string::value_string(std::string const& cppvalue) { + +- cerr << "value_string constructor entered" << endl; + cNewStringWrapper wrapper(cppvalue, nlCode_all); +- cerr << "wrapper constructed" << endl; + + this->instantiate(wrapper.valueP); +- cerr << "value_string constructor exiting" << endl; + } + + diff --git a/net/xmlrpc-c/files/patch-src_xmlrpc__string.c b/net/xmlrpc-c/files/patch-src_xmlrpc__string.c new file mode 100644 index 00000000000..8287543239e --- /dev/null +++ b/net/xmlrpc-c/files/patch-src_xmlrpc__string.c @@ -0,0 +1,31 @@ +--- src/xmlrpc_string.c.orig 2019-03-29 03:33:33 UTC ++++ src/xmlrpc_string.c +@@ -1,4 +1,3 @@ +-#include + /*============================================================================= + xmlrpc_string + =============================================================================== +@@ -746,15 +745,12 @@ stringNew(xmlrpc_env * const envP, + enum crTreatment const crTreatment, + xmlrpc_value ** const valPP) { + +- fprintf(stderr, "stringNew entered\n"); + xmlrpc_value * valP; + + xmlrpc_validate_utf8(envP, value, length); + + if (!envP->fault_occurred) { +- fprintf(stderr, "Going to xmlrpc_createXmlrpcValue\n"); + xmlrpc_createXmlrpcValue(envP, &valP); +- fprintf(stderr, "Back from createXmlrpcValue\n"); + + if (!envP->fault_occurred) { + valP->_type = XMLRPC_TYPE_STRING; +@@ -774,7 +770,6 @@ stringNew(xmlrpc_env * const envP, + *valPP = valP; + } + } +- fprintf(stderr, "stringNew exiting\n"); + } + + diff --git a/polish/hunspell/Makefile b/polish/hunspell/Makefile index dd1076c7b38..618616b2c6d 100644 --- a/polish/hunspell/Makefile +++ b/polish/hunspell/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= hunspell -PORTVERSION= 20190418 +PORTVERSION= 20190419 CATEGORIES= polish textproc MASTER_SITES= https://sjp.pl/slownik/ort/ \ LOCAL/sunpoet/${PORTNAME} diff --git a/polish/hunspell/distinfo b/polish/hunspell/distinfo index 1f057b954a3..a1fe93c3aa3 100644 --- a/polish/hunspell/distinfo +++ b/polish/hunspell/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555604335 -SHA256 (hunspell/sjp-myspell-pl-20190418.zip) = 38d024542c413bab0cb84114a796d517833d40068191fe4152e4c2ff1ed1edd5 -SIZE (hunspell/sjp-myspell-pl-20190418.zip) = 1221133 +TIMESTAMP = 1555702439 +SHA256 (hunspell/sjp-myspell-pl-20190419.zip) = b4e3c5e9f1ca636219036cd015c78cb9cdc6ed6cf0bf5f9ed25a93eb9788f449 +SIZE (hunspell/sjp-myspell-pl-20190419.zip) = 1221127 diff --git a/ports-mgmt/pkg-devel/Makefile b/ports-mgmt/pkg-devel/Makefile index 219511f8ce8..2a8acf0070e 100644 --- a/ports-mgmt/pkg-devel/Makefile +++ b/ports-mgmt/pkg-devel/Makefile @@ -1,8 +1,9 @@ # $FreeBSD$ PORTNAME= pkg -DISTVERSION= 1.10.99.11 +DISTVERSION= 1.10.99.13 _PKG_VERSION= ${DISTVERSION} +PORTREVISION= 1 CATEGORIES= ports-mgmt PKGNAMESUFFIX= -devel @@ -13,7 +14,7 @@ LICENSE= BSD2CLAUSE USE_GITHUB= yes GH_ACCOUNT= freebsd -GH_TAGNAME= e368c4c3 +GH_TAGNAME= 68770f9 WITH_DEBUG= yes CFLAGS+= -O0 -g -Wno-error diff --git a/ports-mgmt/pkg-devel/distinfo b/ports-mgmt/pkg-devel/distinfo index eceb243ba43..aee986fdec4 100644 --- a/ports-mgmt/pkg-devel/distinfo +++ b/ports-mgmt/pkg-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1553691423 -SHA256 (freebsd-pkg-1.10.99.11-e368c4c3_GH0.tar.gz) = fbe5ab14ed9a8bf44b1e106283b2f067fab7d0700e715438e584d33d8125e648 -SIZE (freebsd-pkg-1.10.99.11-e368c4c3_GH0.tar.gz) = 3560328 +TIMESTAMP = 1555695600 +SHA256 (freebsd-pkg-1.10.99.13-68770f9_GH0.tar.gz) = f061504330d7c090b0e501272217f3c037006d1b1a7c9cbb3192b0ab0241ada9 +SIZE (freebsd-pkg-1.10.99.13-68770f9_GH0.tar.gz) = 3560666 diff --git a/print/cups-filters/Makefile b/print/cups-filters/Makefile index ea3bf3289ba..1ddf7ae5d3e 100644 --- a/print/cups-filters/Makefile +++ b/print/cups-filters/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= cups-filters -PORTVERSION= 1.22.2 +PORTVERSION= 1.22.5 CATEGORIES= print MASTER_SITES= https://www.openprinting.org/download/cups-filters/ diff --git a/print/cups-filters/distinfo b/print/cups-filters/distinfo index 55e5b0eb05c..733e2c830cc 100644 --- a/print/cups-filters/distinfo +++ b/print/cups-filters/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1552752943 -SHA256 (cups-filters-1.22.2.tar.xz) = 9c21004147775b3da7208cc72c24de4d5d5c4f70275859c7e77a9e6b361ffe19 -SIZE (cups-filters-1.22.2.tar.xz) = 1476812 +TIMESTAMP = 1555686102 +SHA256 (cups-filters-1.22.5.tar.xz) = 30d453a2152f0b3032126720aecfe35d5c3adc00d9f32f0320da492e92f707a6 +SIZE (cups-filters-1.22.5.tar.xz) = 1476792 diff --git a/print/cups/Makefile b/print/cups/Makefile index 46a922d1edc..b6ce3700fb9 100644 --- a/print/cups/Makefile +++ b/print/cups/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= cups -PORTVERSION= 2.2.10 +PORTVERSION= 2.2.11 DISTVERSIONPREFIX=v CATEGORIES= print diff --git a/print/cups/distinfo b/print/cups/distinfo index ac46e30ef31..0f3f2311868 100644 --- a/print/cups/distinfo +++ b/print/cups/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1544806439 -SHA256 (apple-cups-v2.2.10_GH0.tar.gz) = 50b672db6bab90bc71040ebedbfa3691cb8b5e9f0fbb13e38ced2a7610435584 -SIZE (apple-cups-v2.2.10_GH0.tar.gz) = 10362636 +TIMESTAMP = 1555685808 +SHA256 (apple-cups-v2.2.11_GH0.tar.gz) = 23e2014f3ae653b8d6d2bb15ba7569a86bc381045f3c7ed2d1876c57dc112312 +SIZE (apple-cups-v2.2.11_GH0.tar.gz) = 10364301 diff --git a/print/linux-c6-cups-libs/Makefile b/print/linux-c6-cups-libs/Makefile index 6b13789d90e..75d573450b0 100644 --- a/print/linux-c6-cups-libs/Makefile +++ b/print/linux-c6-cups-libs/Makefile @@ -3,7 +3,7 @@ PORTNAME= cups PORTVERSION= 1.4.2 -PORTREVISION= 9 +PORTREVISION= 10 CATEGORIES= print linux PKGNAMESUFFIX= -libs LIB_DISTNAMES= ${LINUXNAME}-${DISTVERSIONFULL} @@ -13,7 +13,7 @@ COMMENT= Common UNIX Printing System libraries DESCR= ${.CURDIR}/../${PORTNAME}/pkg-descr LINUXNAME= ${PORTNAME}${PKGNAMESUFFIX} -RPMVERSION= 79.el6 +RPMVERSION= 81.el6_10 USES= linux:c6 USE_LDCONFIG= yes USE_LINUX= avahi-libs gnutls jpeg png tiff diff --git a/print/linux-c6-cups-libs/distinfo b/print/linux-c6-cups-libs/distinfo index 6a22c54f05f..6db734d6f1f 100644 --- a/print/linux-c6-cups-libs/distinfo +++ b/print/linux-c6-cups-libs/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1532351588 -SHA256 (centos/cups-libs-1.4.2-79.el6.i686.rpm) = ceda2338ab5c8e05e55dd7ab3213a3a4c10031ca5bdb17468dc9a7af8fa38455 -SIZE (centos/cups-libs-1.4.2-79.el6.i686.rpm) = 340480 -SHA256 (centos/cups-libs-1.4.2-79.el6.x86_64.rpm) = 0ff919a104a12bb82bab65e9a412b3693638707540c0f98fcc5f9595f853cbba -SIZE (centos/cups-libs-1.4.2-79.el6.x86_64.rpm) = 330304 -SHA256 (centos/cups-1.4.2-79.el6.src.rpm) = 7bae82ec9f595f16aaca10b3780b9bc30c4cb06386f481af3a48cfc6c1e602f2 -SIZE (centos/cups-1.4.2-79.el6.src.rpm) = 4685739 +TIMESTAMP = 1555676045 +SHA256 (centos/cups-libs-1.4.2-81.el6_10.i686.rpm) = e18fe7c6c2ceac124d33d36d3798c6728d44c66c53e372a390575bfb6f1cb3fc +SIZE (centos/cups-libs-1.4.2-81.el6_10.i686.rpm) = 340752 +SHA256 (centos/cups-libs-1.4.2-81.el6_10.x86_64.rpm) = e1253ae8c62c1d1f5fdb219efae54045e77ca75892f5c068f946250962837618 +SIZE (centos/cups-libs-1.4.2-81.el6_10.x86_64.rpm) = 330580 +SHA256 (centos/cups-1.4.2-81.el6_10.src.rpm) = f3122ab37e83fd2e4a21235d17b666c4ede19f6125f115a691094188cdc38d08 +SIZE (centos/cups-1.4.2-81.el6_10.src.rpm) = 4687927 diff --git a/science/p5-Geo-WebService-Elevation-USGS/Makefile b/science/p5-Geo-WebService-Elevation-USGS/Makefile index 139170c8d44..6acbe9952b4 100644 --- a/science/p5-Geo-WebService-Elevation-USGS/Makefile +++ b/science/p5-Geo-WebService-Elevation-USGS/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= Geo-WebService-Elevation-USGS -PORTVERSION= 0.111 +PORTVERSION= 0.112 CATEGORIES= science perl5 MASTER_SITES= CPAN MASTER_SITE_SUBDIR= CPAN:WYANT diff --git a/science/p5-Geo-WebService-Elevation-USGS/distinfo b/science/p5-Geo-WebService-Elevation-USGS/distinfo index 4d14e8864c4..942818c434c 100644 --- a/science/p5-Geo-WebService-Elevation-USGS/distinfo +++ b/science/p5-Geo-WebService-Elevation-USGS/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555111286 -SHA256 (Geo-WebService-Elevation-USGS-0.111.tar.gz) = cf41ff0f5c1663a8bd9d3cfd3f22e334cd95a8fea52d9f78e9f8345fb7467af2 -SIZE (Geo-WebService-Elevation-USGS-0.111.tar.gz) = 42894 +TIMESTAMP = 1555702440 +SHA256 (Geo-WebService-Elevation-USGS-0.112.tar.gz) = 2644447819f950fbb0a107da780176a8d6fd4371d79d32fe2b6ae800176959b9 +SIZE (Geo-WebService-Elevation-USGS-0.112.tar.gz) = 42963 diff --git a/security/certificate-transparency/Makefile b/security/certificate-transparency/Makefile index cec88aa08aa..404b3817eee 100644 --- a/security/certificate-transparency/Makefile +++ b/security/certificate-transparency/Makefile @@ -25,7 +25,8 @@ LIB_DEPENDS?= libevent.so:devel/libevent \ libsqlite3.so:databases/sqlite3 \ libtcmalloc.so:devel/google-perftools -USES= autoreconf compiler:c++11-lib gmake pkgconfig +USES= autoreconf compiler:c++11-lib gmake pkgconfig ssl + GNU_CONFIGURE= yes CONFIGURE_ENV+= "CFLAGS+=-I${LOCALBASE}/include CXXFLAGS+=-lgtest CXXFLAGS+=-lgmock" MAKE_FLAGS+= "V=1" diff --git a/security/oidentd/Makefile b/security/oidentd/Makefile index 70de43495be..70af7826d1c 100644 --- a/security/oidentd/Makefile +++ b/security/oidentd/Makefile @@ -2,10 +2,9 @@ # $FreeBSD$ PORTNAME= oidentd -PORTVERSION= 2.0.8 -PORTREVISION= 2 +PORTVERSION= 2.3.2 CATEGORIES= security -MASTER_SITES= SF/ojnk/${PORTNAME}/${PORTVERSION} +MASTER_SITES= https://github.com/janikrabe/oidentd/releases/download/v2.3.2/ MAINTAINER= oliver@FreeBSD.org COMMENT= Ident server that supports user-defined ident strings diff --git a/security/oidentd/distinfo b/security/oidentd/distinfo index fb1a4c8ce8a..4b0ef9911bc 100644 --- a/security/oidentd/distinfo +++ b/security/oidentd/distinfo @@ -1,2 +1,3 @@ -SHA256 (oidentd-2.0.8.tar.gz) = a54cbed187281f8d5a301d1d8fd5cb0f30bfb13a5a8e9ab752ace76c1010fb6f -SIZE (oidentd-2.0.8.tar.gz) = 212354 +TIMESTAMP = 1555678649 +SHA256 (oidentd-2.3.2.tar.gz) = b62ccff3b72e402ef999048b21a59bd944c76225b2fdb1890e75cf1ce1948581 +SIZE (oidentd-2.3.2.tar.gz) = 265691 diff --git a/security/oidentd/files/patch-configure b/security/oidentd/files/patch-configure deleted file mode 100644 index 89c41e1cbbb..00000000000 --- a/security/oidentd/files/patch-configure +++ /dev/null @@ -1,33 +0,0 @@ ---- configure.orig Fri Jul 11 17:50:57 2003 -+++ configure Sat Aug 21 20:41:25 2004 -@@ -3597,7 +3597,7 @@ - - echo "$as_me:$LINENO: checking for egrep" >&5 - echo $ECHO_N "checking for egrep... $ECHO_C" >&6 --if test "${ac_cv_prog_egrep+set}" = set; then -+if test "${ac_cv_prog_egrep+set}" = set ; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 -@@ -3858,6 +3858,9 @@ - cat >>conftest.$ac_ext <<_ACEOF - /* end confdefs.h. */ - $ac_includes_default -+#include -+#include -+#include - #include <$ac_header> - _ACEOF - rm -f conftest.$ac_objext -@@ -5478,6 +5481,11 @@ - cat >>conftest.$ac_ext <<_ACEOF - /* end confdefs.h. */ - $ac_includes_default -+#include -+#include -+#include -+#include -+#include - #include - _ACEOF - rm -f conftest.$ac_objext diff --git a/security/oidentd/files/patch-oidentd-multiple-ip b/security/oidentd/files/patch-oidentd-multiple-ip deleted file mode 100644 index 2d54a184922..00000000000 --- a/security/oidentd/files/patch-oidentd-multiple-ip +++ /dev/null @@ -1,137 +0,0 @@ -diff -ur doc/oidentd.8 doc/oidentd.8.orig ---- doc/oidentd.8.orig 2003-07-13 20:27:52.000000000 +0200 -+++ doc/oidentd.8 2008-04-14 15:04:26.000000000 +0200 -@@ -50,7 +50,7 @@ - - .TP - .B "\-a or \-\-address=" --Listen for connections on the specified address. The default is to listen for connections on all configured IP addresses. -+Listen for connections on the specified address, this option can be specified multiple times. The default is to listen for connections on all configured IP addresses. - - .TP - .B "\-c or \-\-charset=" -diff -ur src/oidentd.c src/oidentd.c.orig ---- src/oidentd.c.orig 2006-05-22 02:43:26.000000000 +0200 -+++ src/oidentd.c 2008-04-14 14:55:07.000000000 +0200 -@@ -73,7 +73,7 @@ - char *config_file; - - in_port_t listen_port; --struct sockaddr_storage *addr; -+struct sockaddr_storage **addr; - - int main(int argc, char **argv) { - int *listen_fds = NULL; -diff -ur src/oidentd_inet_util.c src/oidentd_inet_util.c.orig ---- src/oidentd_inet_util.c.orig 2006-05-22 02:31:19.000000000 +0200 -+++ src/oidentd_inet_util.c 2008-04-14 15:00:37.000000000 +0200 -@@ -92,16 +92,18 @@ - ** Setup the listening socket(s). - */ - --int *setup_listen(struct sockaddr_storage *listen_addr, in_port_t listen_port) { -+int *setup_listen(struct sockaddr_storage **listen_addr, in_port_t listen_port) { - int ret; -- int *bound_fds; -+ int *bound_fds = NULL; - u_char listen_port_str[64]; - struct addrinfo hints, *res, *cur; -+ int naddr = 0; - - if (listen_addr != NULL) { -+ do { - cur = xcalloc(1, sizeof(struct addrinfo)); - -- cur->ai_family = listen_addr->ss_family; -+ cur->ai_family = listen_addr[naddr]->ss_family; - - switch (cur->ai_family) { - #ifdef WANT_IPV6 -@@ -115,20 +117,22 @@ - } - - cur->ai_addr = xmalloc(cur->ai_addrlen); -- memcpy(cur->ai_addr, listen_addr, cur->ai_addrlen); -+ memcpy(cur->ai_addr, listen_addr[naddr], cur->ai_addrlen); - - ret = setup_bind(cur, listen_port); - free(cur->ai_addr); - free(cur); -- free(listen_addr); -+ free(listen_addr[naddr]); - - if (ret == -1) - return (NULL); - -- bound_fds = xmalloc(2 * sizeof(int)); -- bound_fds[0] = ret; -- bound_fds[1] = -1; -- -+ bound_fds = xrealloc(bound_fds, (naddr + 2) * sizeof(int)); -+ bound_fds[naddr] = ret; -+ bound_fds[naddr+1] = -1; -+ naddr++; -+ } while (listen_addr[naddr] != NULL); -+ free(listen_addr); - return (bound_fds); - } - -diff -ur src/oidentd_inet_util.h src/oidentd_inet_util.h.orig ---- src/oidentd_inet_util.h.orig 2006-05-22 00:52:24.000000000 +0200 -+++ src/oidentd_inet_util.h 2008-04-14 15:00:26.000000000 +0200 -@@ -22,7 +22,7 @@ - #define SIN4(x) ((struct sockaddr_in *) (x)) - #define SIN6(x) ((struct sockaddr_in6 *) (x)) - --int *setup_listen(struct sockaddr_storage *listen_addr, in_port_t listen_port); -+int *setup_listen(struct sockaddr_storage **listen_addr, in_port_t listen_port); - - int get_port(const char *name, in_port_t *port); - int get_addr(const char *const hostname, struct sockaddr_storage *g_addr); -diff -ur src/oidentd_options.c src/oidentd_options.c.orig ---- src/oidentd_options.c.orig 2006-05-22 02:31:19.000000000 +0200 -+++ src/oidentd_options.c 2008-04-14 15:00:49.000000000 +0200 -@@ -53,7 +53,7 @@ - extern u_int32_t timeout; - extern u_int32_t connection_limit; - extern in_port_t listen_port; --extern struct sockaddr_storage *addr; -+extern struct sockaddr_storage **addr; - extern uid_t uid; - extern gid_t gid; - -@@ -126,6 +126,7 @@ - int opt; - char *temp_os; - char *charset = NULL; -+ int naddrs = 0; - - #ifdef MASQ_SUPPORT - if (get_port(DEFAULT_FPORT, &fwdport) == -1) { -@@ -151,13 +152,16 @@ - struct sockaddr_storage *temp_ss = - xmalloc(sizeof(struct sockaddr_storage)); - -+ if (naddrs % 16 == 0) -+ addr = xrealloc(addr, sizeof(struct sockaddr_storage *)*(naddrs+16)); -+ - if (get_addr(optarg, temp_ss) == -1) { - o_log(NORMAL, "Fatal: Unknown host: \"%s\"", optarg); - free(temp_ss); - return (-1); - } - -- addr = temp_ss; -+ addr[naddrs++] = temp_ss; - break; - } - -@@ -327,6 +331,8 @@ - return (-1); - } - } -+ if (addr != NULL) -+ addr[naddrs] = NULL; - - if (charset != NULL) { - size_t len = strlen(temp_os) + strlen(charset) + 4; diff --git a/security/oidentd/files/patch-oidentd.8 b/security/oidentd/files/patch-oidentd.8 index fa1d73d908b..d97a39c0d0e 100644 --- a/security/oidentd/files/patch-oidentd.8 +++ b/security/oidentd/files/patch-oidentd.8 @@ -1,24 +1,24 @@ ---- doc/oidentd.8.orig Sun Apr 27 20:40:59 2003 -+++ doc/oidentd.8 Sat Sep 4 16:12:29 2004 -@@ -58,7 +58,7 @@ - +--- doc/oidentd.8.orig 2019-01-08 08:56:02.000000000 +0100 ++++ doc/oidentd.8 2019-04-19 15:01:30.103268000 +0200 +@@ -65,7 +65,7 @@ .TP .B "\-C or \-\-config=" --Use the specified file as the configuration file. The default location of the configuration file is \fB/etc/oidentd.conf\fP. -+Use the specified file as the configuration file. The default location of the configuration file is \fB%%PREFIX%%/etc/oidentd.conf\fP. + Use the specified file as the configuration file. The default location of the +-configuration file is \fB/etc/oidentd.conf\fP. ++configuration file is \fB%%PREFIX%%/etc/oidentd.conf\fP. .TP .B "\-d or \-\-debug" -@@ -70,7 +70,7 @@ - - .TP - .B "\-f or \-\-forward=[]" --When IP masquerading support is enabled, forward requests for machines that masquerade through us to those machines on the specified port. If a port is not given, oidentd will use the default port for the ident service ("auth" or port 113). If the forwarded request fails, \fBoidentd\fP will fall back to reading the \fB/etc/oidentd_masq.conf\fP file. In order for forwarding to work, the machine to which the connection is forwarded must also be running oidentd, and oidentd must be run with the -P switch specifying the host that is forwarding the connections. If the ident daemon on the host to which the connection is forwarded is capable of returning a fixed string for any lookup (for example, the ident server built in to the mIRC windows IRC client), it is not necessary to run oidentd on that host. -+When IP masquerading support is enabled, forward requests for machines that masquerade through us to those machines on the specified port. If a port is not given, oidentd will use the default port for the ident service ("auth" or port 113). If the forwarded request fails, \fBoidentd\fP will fall back to reading the \fB%%PREFIX%%/etc/oidentd_masq.conf\fP file. In order for forwarding to work, the machine to which the connection is forwarded must also be running oidentd, and oidentd must be run with the -P switch specifying the host that is forwarding the connections. If the ident daemon on the host to which the connection is forwarded is capable of returning a fixed string for any lookup (for example, the ident server built in to the mIRC windows IRC client), it is not necessary to run oidentd on that host. - - .TP - .B "\-g or \-\-group=" -@@ -152,11 +152,11 @@ +@@ -85,7 +85,7 @@ + masquerade through us to those machines on the specified port. If a port is not + given, \fBoidentd\fP will use the default port for the ident service ("auth" or + port 113). If the forwarded request fails, \fBoidentd\fP will fall back to +-reading the \fB/etc/oidentd_masq.conf\fP file. In order for forwarding to work, ++reading the \fB%%PREFIX%%/etc/oidentd_masq.conf\fP file. In order for forwarding to work, + the machine to which the connection is forwarded must also be running + \fBoidentd\fP, and \fBoidentd\fP must be run with the \fB-P\fP switch + specifying the host that is forwarding the connections. If the ident daemon on +@@ -198,11 +198,11 @@ .SH FILES .TP diff --git a/security/oidentd/files/patch-oidentd.conf.5 b/security/oidentd/files/patch-oidentd.conf.5 index 808da011ac1..6a1c77de423 100644 --- a/security/oidentd/files/patch-oidentd.conf.5 +++ b/security/oidentd/files/patch-oidentd.conf.5 @@ -1,36 +1,36 @@ ---- doc/oidentd.conf.5.orig Sun Apr 27 20:40:59 2003 -+++ doc/oidentd.conf.5 Sat Sep 4 16:12:48 2004 -@@ -16,7 +16,7 @@ - The \fBoidentd\fP configuration file is used to specify the amount of control users have over the responses \fBoidentd\fP returns upon successful lookups for connections owned by them. - .PP - The \fB$HOME/.oidentd.conf\fP file allows a user to specify what ident response will be returned for specific connections. +--- doc/oidentd.conf.5.orig 2019-01-08 08:56:17.000000000 +0100 ++++ doc/oidentd.conf.5 2019-04-19 15:03:44.447798000 +0200 +@@ -22,7 +22,7 @@ + The \fB$HOME/.oidentd.conf\fP file allows a user to specify what ident response + will be returned for specific connections. + -.SH /etc/oidentd.conf SYNTAX +.SH %%PREFIX%%/etc/oidentd.conf SYNTAX + .TP .B USER DIRECTIVE - The \fBoidentd.conf\fP file consists of 0 or more \fIuser\fP directives. The \fIuser\fP directive is used to grant capabilities on a per-user basis. -@@ -101,7 +101,7 @@ +@@ -148,7 +148,7 @@ + manner. - The \fIglobal\fP directive acts as a wildcard, matching all connections, so if used at all, the global directive should be the first entry in the file and should be used only once. Use is permitted anywhere in the file and infinitely many times, however it doesn't make much sense to use it in this manner. + The range directive has the same syntax and semantics as the range directive in +-the \fB/etc/oidentd.conf\fP file. See above for a description. ++the \fB%%PREFIX%%/etc/oidentd.conf\fP file. See above for a description. --The range directive has the same syntax and semantics as the range directive in the \fB/etc/oidentd.conf\fP file. See above for a description. -+The range directive has the same syntax and semantics as the range directive in the \fB%%PREFIX%%/etc/oidentd.conf\fP file. See above for a description. + Valid capabilities are \fIreply\fP, \fIforward\fP, \fIrandom\fP, \fInumeric\fP, + \fIrandom_numeric\fP, and \fIhide\fP. Descriptions can be found below. +@@ -185,7 +185,7 @@ + In a user's \fB$HOME/.oidentd.conf\fP file, up to 20 strings may be specified + for a \fBreply\fP statement. - Valid capabilities are \fIreply\fP, \fIrandom\fP, \fInumeric\fP, \fIrandom_numeric\fP, and \fIhide\fP. Descriptions can be found below. - .SH CAPABILITIES -@@ -126,7 +126,7 @@ +-In the \fB/etc/oidentd.conf\fP file, there is no limitation on the number of ++In the \fB%%PREFIX%%/etc/oidentd.conf\fP file, there is no limitation on the number of + strings that may be specified. - In a user's \fB$HOME/.oidentd.conf\fP file, up to 20 strings may be specified for a \fBreply\fP statement. + The strings must be quoted strings (e.g. "string"). Strings may contain the +@@ -260,7 +260,7 @@ + Reply to successful with a randomly generated ident response of the form userN, + where N is a random number between 0 and 100000. --In the \fB/etc/oidentd.conf\fP file, there is no limitation on the number of strings that may be specified. -+In the \fB%%PREFIX%%/etc/oidentd.conf\fP file, there is no limitation on the number of strings that may be specified. - - The strings must be quoted strings (e.g. "string"). Strings may contain the following escape characters: - -@@ -183,7 +183,7 @@ - .TP - .B random_numeric - Reply to successful with a randomly generated ident response of the form userN, where N is a random number between 0 and 100000. -.SH EXAMPLE /etc/oidentd.conf FILE +.SH EXAMPLE %%PREFIX%%/etc/oidentd.conf FILE .nf diff --git a/security/oidentd/files/patch-oidentd_masq.conf.5 b/security/oidentd/files/patch-oidentd_masq.conf.5 index 58f133798e8..a9e4740f251 100644 --- a/security/oidentd/files/patch-oidentd_masq.conf.5 +++ b/security/oidentd/files/patch-oidentd_masq.conf.5 @@ -1,11 +1,11 @@ ---- doc/oidentd_masq.conf.5.orig Sun Apr 27 20:40:59 2003 -+++ doc/oidentd_masq.conf.5 Sat Sep 4 16:12:11 2004 -@@ -13,7 +13,7 @@ - oidentd_masq.conf - oidentd IP masquerading/NAT configuration file. - - .SH DESCRIPTION --If you are using IP masquerading or NAT, oidentd can optionally return a username for connections from other machines. Support for this is specified by calling \fBoidentd\fP with the \-m (or \-\-masq) flag and by creating an \fB/etc/oidentd_masq.conf\fP file. -+If you are using IP masquerading or NAT, oidentd can optionally return a username for connections from other machines. Support for this is specified by calling \fBoidentd\fP with the \-m (or \-\-masq) flag and by creating an \fB%%PREFIX%%/etc/oidentd_masq.conf\fP file. +--- doc/oidentd_masq.conf.5.orig 2019-01-08 08:56:09.000000000 +0100 ++++ doc/oidentd_masq.conf.5 2019-04-19 16:07:21.986856000 +0200 +@@ -18,7 +18,7 @@ + If you are using IP masquerading or NAT, \fBoidentd\fP can optionally return a + username for connections from other machines. Support for this is enabled by + calling \fBoidentd\fP with the \fB\-m\fP (or \fB\-\-masquerade\fP) flag and by +-creating an \fB/etc/oidentd_masq.conf\fP file. This file is read from top to ++creating an \fB%%PREFIX%%/etc/oidentd_masq.conf\fP file. This file is read from top to + bottom, and \fBoidentd\fP stops at the first matching entry it encounters. .PP - \fBoidentd\fP can also forward requests for an IP masqueraded connection to the machine from which connection originates by way of the -f option. This will only work if the host to which the connection is forwarded is running oidentd with the -P (proxy) flag, or if the host's ident daemon will return a valid reply regardless of the input supplied by and the address of the host requesting the info (some ident daemons for windows do this, maybe others). - + \fBoidentd\fP can also forward requests for an IP masqueraded connection to diff --git a/security/oidentd/pkg-descr b/security/oidentd/pkg-descr index b864456b99b..c27ff2e6129 100644 --- a/security/oidentd/pkg-descr +++ b/security/oidentd/pkg-descr @@ -13,7 +13,7 @@ bogus responses. Please see the TODO file for more information on why only ipf is supported under FreeBSD. -WWW: http://ojnk.sourceforge.net/ +WWW: https://oidentd.janikrabe.com/ Mark Laws mdl@60hz.org diff --git a/security/snort3/Makefile b/security/snort3/Makefile index 14d56b76f78..1871652aa67 100644 --- a/security/snort3/Makefile +++ b/security/snort3/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= snort -DISTVERSION= 3.0.0-252 +DISTVERSION= 3.0.0_253 PORTEPOCH= 1 CATEGORIES= security PKGNAMESUFFIX= 3 diff --git a/security/snort3/distinfo b/security/snort3/distinfo index 6fbba90a6d2..ea018aa6c8b 100644 --- a/security/snort3/distinfo +++ b/security/snort3/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555091119 -SHA256 (snort3-snort3-3.0.0-252_GH0.tar.gz) = 73790d71f5cfee603cf644fb1e98376b640728a92cedb3830b0066bbd89e035a -SIZE (snort3-snort3-3.0.0-252_GH0.tar.gz) = 6376265 +TIMESTAMP = 1555617986 +SHA256 (snort3-snort3-3.0.0_253_GH0.tar.gz) = b0d3759114618578fa1aee5fdb5f9fe499ea5fd463d88fe47d31aac44f50cbf6 +SIZE (snort3-snort3-3.0.0_253_GH0.tar.gz) = 6375281 diff --git a/sysutils/cbsd/Makefile b/sysutils/cbsd/Makefile index de0fbe1ed14..68e179d34af 100644 --- a/sysutils/cbsd/Makefile +++ b/sysutils/cbsd/Makefile @@ -1,8 +1,7 @@ # $FreeBSD$ PORTNAME= cbsd -DISTVERSION= 12.0.8 -PORTREVISION= 1 +DISTVERSION= 12.0.9 CATEGORIES= sysutils MAINTAINER= olevole@olevole.ru diff --git a/sysutils/cbsd/distinfo b/sysutils/cbsd/distinfo index c5c44da472d..ed0483b7194 100644 --- a/sysutils/cbsd/distinfo +++ b/sysutils/cbsd/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1554152513 -SHA256 (cbsd-cbsd-12.0.8_GH0.tar.gz) = 67b29a51eb2617ef731673e6b17f3defedf2b4bb9b8e2c394b3eb5ed82dbeefd -SIZE (cbsd-cbsd-12.0.8_GH0.tar.gz) = 5802841 +TIMESTAMP = 1555698068 +SHA256 (cbsd-cbsd-12.0.9_GH0.tar.gz) = ccaa127065293375d483ac4e6562e03b01c8c1b15e16d469d49fa1fe7fcd1c30 +SIZE (cbsd-cbsd-12.0.9_GH0.tar.gz) = 5807366 diff --git a/sysutils/cbsd/files/cbsd-statsd-bhyve.in b/sysutils/cbsd/files/cbsd-statsd-bhyve.in index 3da82bc1fc4..6aa40abc7f8 100644 --- a/sysutils/cbsd/files/cbsd-statsd-bhyve.in +++ b/sysutils/cbsd/files/cbsd-statsd-bhyve.in @@ -17,13 +17,13 @@ load_rc_config $name : ${cbsd_statsd_bhyve_enable:="NO"} export workdir="${cbsd_workdir}" -globalconf=${cbsd_globalconf:-"${workdir}/cbsd.conf"} +globalconf=${cbsd_globalconf:-"%%PREFIX%%/cbsd/cbsd.conf"} start_cmd=${name}_start restart_cmd=${name}_restart extra_commands="restart" -command="${cbsd_workdir}/tools/racct-bhyve-statsd" +command="%%PREFIX%%/cbsd/tools/racct-bhyve-statsd" pidfile="/var/run/$name.pid" command_args="&" @@ -84,7 +84,7 @@ cbsd_statsd_bhyve_start() ;; esac - exec env workdir=${cbsd_workdir} ${cbsd_workdir}/tools/racct-bhyve-statsd ${args} + exec env workdir=${cbsd_workdir} %%PREFIX%%/cbsd/tools/racct-bhyve-statsd ${args} } cbsd_statsd_bhyve_restart() diff --git a/sysutils/cbsd/files/cbsd-statsd-hoster.in b/sysutils/cbsd/files/cbsd-statsd-hoster.in index 28aacfd1633..ae09eaae83f 100644 --- a/sysutils/cbsd/files/cbsd-statsd-hoster.in +++ b/sysutils/cbsd/files/cbsd-statsd-hoster.in @@ -17,13 +17,13 @@ load_rc_config $name : ${cbsd_statsd_hoster_enable:="NO"} export workdir="${cbsd_workdir}" -globalconf=${cbsd_globalconf:-"${workdir}/cbsd.conf"} +globalconf=${cbsd_globalconf:-"%%PREFIX%%/cbsd/cbsd.conf"} start_cmd=${name}_start restart_cmd=${name}_restart extra_commands="restart" -command="${cbsd_workdir}/tools/racct-hoster-statsd" +command="%%PREFIX%%/cbsd/tools/racct-hoster-statsd" pidfile="/var/run/$name.pid" command_args="&" @@ -84,7 +84,7 @@ cbsd_statsd_hoster_start() ;; esac - exec env workdir=${cbsd_workdir} ${cbsd_workdir}/tools/racct-hoster-statsd ${args} + exec env workdir=${cbsd_workdir} %%PREFIX%%/cbsd/tools/racct-hoster-statsd ${args} } cbsd_statsd_hoster_restart() diff --git a/sysutils/cbsd/files/cbsd-statsd-jail.in b/sysutils/cbsd/files/cbsd-statsd-jail.in index fda4ffbbe27..e650b07ab25 100644 --- a/sysutils/cbsd/files/cbsd-statsd-jail.in +++ b/sysutils/cbsd/files/cbsd-statsd-jail.in @@ -17,13 +17,13 @@ load_rc_config $name : ${cbsd_statsd_jail_enable:="NO"} export workdir="${cbsd_workdir}" -globalconf=${cbsd_globalconf:-"${workdir}/cbsd.conf"} +globalconf=${cbsd_globalconf:-"%%PREFIX%%/cbsd/cbsd.conf"} start_cmd=${name}_start restart_cmd=${name}_restart extra_commands="restart" -command="${cbsd_workdir}/tools/racct-jail-statsd" +command="%%PREFIX%%/cbsd/tools/racct-jail-statsd" pidfile="/var/run/$name.pid" command_args="&" @@ -84,7 +84,7 @@ cbsd_statsd_jail_start() ;; esac - exec env workdir=${cbsd_workdir} ${cbsd_workdir}/tools/racct-jail-statsd ${args} + exec env workdir=${cbsd_workdir} %%PREFIX%%/cbsd/tools/racct-jail-statsd ${args} } cbsd_statsd_jail_restart() diff --git a/sysutils/cbsd/files/patch-nc.subr b/sysutils/cbsd/files/patch-nc.subr deleted file mode 100644 index 8f03ed265b9..00000000000 --- a/sysutils/cbsd/files/patch-nc.subr +++ /dev/null @@ -1,15 +0,0 @@ ---- nc.subr.orig 2019-04-01 20:14:44 UTC -+++ nc.subr -@@ -139,9 +139,10 @@ init() { - VAL=$( substr --pos=$(( ${_pos} +2 )) --len=${_pref} --str="${1}" ) - IFS=" " - VAL=$( echo ${VAL} | /usr/bin/tr -d '"' ) # strip extra quotes -- if [ ${double_args} -eq 0 -a -n "${VAL}" ]; then -+ if [ ${double_args} -eq 0 ]; then - shift -- continue # value already set, skip -+ eval T="\$$ARG" -+ [ -n "${T}" ] && continue # value already set, skip - fi - i=$(( i + 1 )) - eval "${ARG}='${VAL}'"; diff --git a/textproc/minify/Makefile b/textproc/minify/Makefile index c9f2bc5fb19..03e0357e9b6 100644 --- a/textproc/minify/Makefile +++ b/textproc/minify/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= minify -PORTVERSION= 2.3.8 +PORTVERSION= 2.4.0 DISTVERSIONPREFIX= v CATEGORIES= textproc www @@ -22,10 +22,10 @@ PLIST_FILES= bin/minify GH_ACCOUNT= tdewolff GH_TUPLE= dustin:go-humanize:v1.0.0:dustin_go_humanize/../src/github.com/dustin/go-humanize \ fsnotify:fsnotify:v1.4.7:fsnotify_fsnotify/../src/github.com/fsnotify/fsnotify \ - golang:sys:770c602:golang_sys/../src/golang.org/x/sys \ + golang:sys:e8e3143:golang_sys/../src/golang.org/x/sys \ matryer:try:v1:matryer_try/../src/github.com/matryer/try \ spf13:pflag:v1.0.3:spf13_pflag/../src/github.com/spf13/pflag \ - tdewolff:parse:v2.3.5:tdewolff_parse/../src/github.com/tdewolff/parse + tdewolff:parse:v2.3.6:tdewolff_parse/../src/github.com/tdewolff/parse USE_GITHUB= yes do-install: diff --git a/textproc/minify/distinfo b/textproc/minify/distinfo index a4f3bd08a8b..061c0cea188 100644 --- a/textproc/minify/distinfo +++ b/textproc/minify/distinfo @@ -1,15 +1,15 @@ -TIMESTAMP = 1548102446 -SHA256 (tdewolff-minify-v2.3.8_GH0.tar.gz) = b767118737eda7c2aade905d2fdeaf78d707a8cd202a0624b24dd477091ba669 -SIZE (tdewolff-minify-v2.3.8_GH0.tar.gz) = 2125614 +TIMESTAMP = 1555710236 +SHA256 (tdewolff-minify-v2.4.0_GH0.tar.gz) = 716bbb34d827aa0b6672f4345e2116259294cd4e9a825d931aa4f92bff634051 +SIZE (tdewolff-minify-v2.4.0_GH0.tar.gz) = 2127100 SHA256 (dustin-go-humanize-v1.0.0_GH0.tar.gz) = e4540bd50ac855143b4f2e509313079c50cf5d8774f09cc10dbca5ae9803d8ba SIZE (dustin-go-humanize-v1.0.0_GH0.tar.gz) = 17260 SHA256 (fsnotify-fsnotify-v1.4.7_GH0.tar.gz) = b7530d973d0ab0e58ad8ce1b9a4b963d6f57b3d72f2f9e13d49846976361b1cd SIZE (fsnotify-fsnotify-v1.4.7_GH0.tar.gz) = 31139 -SHA256 (golang-sys-770c602_GH0.tar.gz) = 7886385551f7097416028f612a9f2994d6aa9c9c913ef7ca949a030cce6909e2 -SIZE (golang-sys-770c602_GH0.tar.gz) = 1238669 +SHA256 (golang-sys-e8e3143_GH0.tar.gz) = d72b8fb8f6f5c868b709c40343512e71076a8702266c1d4409686edd397bc73b +SIZE (golang-sys-e8e3143_GH0.tar.gz) = 1350775 SHA256 (matryer-try-v1_GH0.tar.gz) = a01c6644fc2e1403a4489306a4fbca52dd3b2e1b6374e6a2f86f57fd430104be SIZE (matryer-try-v1_GH0.tar.gz) = 2924 SHA256 (spf13-pflag-v1.0.3_GH0.tar.gz) = 9e57f86f493f04d9077fccd04e7139ebf243dd544e917ab83d35729b3e54a124 SIZE (spf13-pflag-v1.0.3_GH0.tar.gz) = 46002 -SHA256 (tdewolff-parse-v2.3.5_GH0.tar.gz) = e7d691607f6f53336af7c03a92ba24b78c709513b31a31e719620d4d2d07d813 -SIZE (tdewolff-parse-v2.3.5_GH0.tar.gz) = 75027 +SHA256 (tdewolff-parse-v2.3.6_GH0.tar.gz) = 26d3798d6e90cf028d259b331bd89f889c0ed74cb2bf74de0b0a965cd43fabdd +SIZE (tdewolff-parse-v2.3.6_GH0.tar.gz) = 76127 diff --git a/textproc/sift/Makefile b/textproc/sift/Makefile index 5b74066261e..64b980dadee 100644 --- a/textproc/sift/Makefile +++ b/textproc/sift/Makefile @@ -4,6 +4,7 @@ PORTNAME= sift PORTVERSION= 0.9.0 DISTVERSIONPREFIX= v +PORTREVISION= 1 CATEGORIES= textproc MAINTAINER= sunpoet@FreeBSD.org @@ -19,8 +20,8 @@ GO_PKGNAME= github.com/${GH_ACCOUNT}/${GH_PROJECT} PLIST_FILES= bin/sift GH_ACCOUNT= svent -GH_TUPLE= golang:crypto:3d3f9f4:golang_crypto/../src/golang.org/x/crypto \ - golang:sys:62eef0e:golang_sys/../src/golang.org/x/sys \ +GH_TUPLE= golang:crypto:df01cb2:golang_crypto/../src/golang.org/x/crypto \ + golang:sys:e8e3143:golang_sys/../src/golang.org/x/sys \ svent:go-flags:4bcbad3:svent_goflags/../src/github.com/svent/go-flags \ svent:go-nbreader:7cef48d:svent_gonbreader/../src/github.com/svent/go-nbreader USE_GITHUB= yes diff --git a/textproc/sift/distinfo b/textproc/sift/distinfo index 0ee699396a6..a2ed6eebce0 100644 --- a/textproc/sift/distinfo +++ b/textproc/sift/distinfo @@ -1,10 +1,10 @@ -TIMESTAMP = 1543074658 +TIMESTAMP = 1555712791 SHA256 (svent-sift-v0.9.0_GH0.tar.gz) = bbbd5c472c36b78896cd7ae673749d3943621a6d5523d47973ed2fc6800ae4c8 SIZE (svent-sift-v0.9.0_GH0.tar.gz) = 37442 -SHA256 (golang-crypto-3d3f9f4_GH0.tar.gz) = 4cac408ad0b69d6117d973764bc8dab1f9cf5bee6bf7c78041459241afa0b414 -SIZE (golang-crypto-3d3f9f4_GH0.tar.gz) = 1644646 -SHA256 (golang-sys-62eef0e_GH0.tar.gz) = ad3c32771a961d18cb8a1ae96c56e8927f49bc97f281a3f6333c05c4ee32d005 -SIZE (golang-sys-62eef0e_GH0.tar.gz) = 1115440 +SHA256 (golang-crypto-df01cb2_GH0.tar.gz) = c9f32911dd7931daadd3b7a21ebfce06b93816affdd303eece129debb6ceb4d4 +SIZE (golang-crypto-df01cb2_GH0.tar.gz) = 1676942 +SHA256 (golang-sys-e8e3143_GH0.tar.gz) = d72b8fb8f6f5c868b709c40343512e71076a8702266c1d4409686edd397bc73b +SIZE (golang-sys-e8e3143_GH0.tar.gz) = 1350775 SHA256 (svent-go-flags-4bcbad3_GH0.tar.gz) = 8fb342e5d1ad220c7040a6f185f39a38679f9c88e24716fcc6f2fef2ee09825a SIZE (svent-go-flags-4bcbad3_GH0.tar.gz) = 45988 SHA256 (svent-go-nbreader-7cef48d_GH0.tar.gz) = 62e0248ba434aa54461f554afc532cd5a4393ce55c35fdf750175fa14f997448 diff --git a/textproc/zxing-cpp/Makefile b/textproc/zxing-cpp/Makefile index 3f2ace811c9..4f7f9d5df90 100644 --- a/textproc/zxing-cpp/Makefile +++ b/textproc/zxing-cpp/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= zxing-cpp -DISTVERSION= 0.20180320 -PORTREVISION= 1 +DISTVERSION= 0.20190320 CATEGORIES= textproc MAINTAINER= yuri@FreeBSD.org @@ -18,8 +17,8 @@ LIB_DEPENDS= libopencv_core.so:graphics/opencv-core \ USES= cmake compiler:c++11-lang iconv USE_GITHUB= yes GH_ACCOUNT= glassechidna -GH_TAGNAME= 5aad474 +GH_TAGNAME= e0e40dd -CMAKE_ARGS= -DBUILD_SHARED_LIBS=ON +CMAKE_ON= BUILD_SHARED_LIBS .include diff --git a/textproc/zxing-cpp/distinfo b/textproc/zxing-cpp/distinfo index fc97544ab71..cb0f635f4bb 100644 --- a/textproc/zxing-cpp/distinfo +++ b/textproc/zxing-cpp/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1531121512 -SHA256 (glassechidna-zxing-cpp-0.20180320-5aad474_GH0.tar.gz) = dee73f487b9160582a48dd71d521a48403a635d0f482a6a6ddfa331daf938f57 -SIZE (glassechidna-zxing-cpp-0.20180320-5aad474_GH0.tar.gz) = 312290 +TIMESTAMP = 1555688287 +SHA256 (glassechidna-zxing-cpp-0.20190320-e0e40dd_GH0.tar.gz) = 699ed1e08812631d40730bd96a7e314d1ad8adf28f45770d8ae8e57a536ba33b +SIZE (glassechidna-zxing-cpp-0.20190320-e0e40dd_GH0.tar.gz) = 312377 diff --git a/www/nghttp2/Makefile b/www/nghttp2/Makefile index fafd9e2191a..2ce237292d0 100644 --- a/www/nghttp2/Makefile +++ b/www/nghttp2/Makefile @@ -6,9 +6,6 @@ PORTVERSION= 1.38.0 DISTVERSIONPREFIX= v CATEGORIES= www net -PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ -PATCHFILES+= cbba1ebf8fce.patch:-p1 - MAINTAINER= sunpoet@FreeBSD.org COMMENT= HTTP/2.0 C Library diff --git a/www/nghttp2/files/patch-src-asio_server_connection.h b/www/nghttp2/files/patch-src-asio_server_connection.h new file mode 100644 index 00000000000..cb5336a9fce --- /dev/null +++ b/www/nghttp2/files/patch-src-asio_server_connection.h @@ -0,0 +1,35 @@ +Obtained from: https://github.com/nghttp2/nghttp2/commit/cbba1ebf8fcecb24392f0cc07b1235b17d0de9d8 + +--- src/asio_server_connection.h.orig 2019-04-18 06:08:36 UTC ++++ src/asio_server_connection.h +@@ -51,6 +51,12 @@ + #include "util.h" + #include "template.h" + ++#if BOOST_VERSION >= 107000 ++#define GET_IO_SERVICE(s) ((boost::asio::io_context&)(s).get_executor().context()) ++#else ++#define GET_IO_SERVICE(s) ((s).get_io_service()) ++#endif ++ + namespace nghttp2 { + + namespace asio_http2 { +@@ -71,7 +77,7 @@ public: + SocketArgs &&... args) + : socket_(std::forward(args)...), + mux_(mux), +- deadline_(socket_.get_io_service()), ++ deadline_(GET_IO_SERVICE(socket_)), + tls_handshake_timeout_(tls_handshake_timeout), + read_timeout_(read_timeout), + writing_(false), +@@ -82,7 +88,7 @@ public: + boost::system::error_code ec; + + handler_ = std::make_shared( +- socket_.get_io_service(), socket_.lowest_layer().remote_endpoint(ec), ++ GET_IO_SERVICE(socket_), socket_.lowest_layer().remote_endpoint(ec), + [this]() { do_write(); }, mux_); + if (handler_->start() != 0) { + stop(); diff --git a/www/py-google-cloud-storage/Makefile b/www/py-google-cloud-storage/Makefile index 9106f57b8f4..59e744415f5 100644 --- a/www/py-google-cloud-storage/Makefile +++ b/www/py-google-cloud-storage/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= google-cloud-storage -PORTVERSION= 1.14.0 +PORTVERSION= 1.15.0 CATEGORIES= www python MASTER_SITES= CHEESESHOP PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-google-cloud-storage/distinfo b/www/py-google-cloud-storage/distinfo index c5cec67611b..a33028bfee9 100644 --- a/www/py-google-cloud-storage/distinfo +++ b/www/py-google-cloud-storage/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1550367414 -SHA256 (google-cloud-storage-1.14.0.tar.gz) = aef243b533144c11c9ff750565c43dffe5445debb143697002edb6205f64a437 -SIZE (google-cloud-storage-1.14.0.tar.gz) = 5372122 +TIMESTAMP = 1555702427 +SHA256 (google-cloud-storage-1.15.0.tar.gz) = d66bfed1fd51f392ee361b5b7d84efd912f47db52a28722ee2e3994f0a54698d +SIZE (google-cloud-storage-1.15.0.tar.gz) = 5384822 diff --git a/x11-themes/plata-theme/Makefile b/x11-themes/plata-theme/Makefile index f1a801f1789..b092c7b5ccc 100644 --- a/x11-themes/plata-theme/Makefile +++ b/x11-themes/plata-theme/Makefile @@ -1,7 +1,7 @@ # $FreeBSD$ PORTNAME= plata-theme -PORTVERSION= 0.7.6 +PORTVERSION= 0.7.7 CATEGORIES= x11-themes MAINTAINER= tagattie@yandex.com @@ -23,7 +23,7 @@ USES= autoreconf gmake gnome pkgconfig shebangfix USE_GITLAB= yes GL_SITE= https://gitlab.com GL_ACCOUNT= tista500 -GL_COMMIT= e013b219b11e0208e71b787ad73a3709ef890a7e +GL_COMMIT= 4d938aa71ae5b6e93ea22b1fcfcd62c5026f3034 NO_ARCH= yes diff --git a/x11-themes/plata-theme/distinfo b/x11-themes/plata-theme/distinfo index 28b5c87f0e9..5e8a73a0a1b 100644 --- a/x11-themes/plata-theme/distinfo +++ b/x11-themes/plata-theme/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1555486293 -SHA256 (tista500-plata-theme-e013b219b11e0208e71b787ad73a3709ef890a7e_GL0.tar.gz) = 887ddd063d072dc7d31ffc38821a2d9429b73474a499720800ebc6d1dffee244 -SIZE (tista500-plata-theme-e013b219b11e0208e71b787ad73a3709ef890a7e_GL0.tar.gz) = 522795 +TIMESTAMP = 1555659164 +SHA256 (tista500-plata-theme-4d938aa71ae5b6e93ea22b1fcfcd62c5026f3034_GL0.tar.gz) = 2f8be65460423379e8d562598c3583d4869b04034199bab0f7995c76e572479d +SIZE (tista500-plata-theme-4d938aa71ae5b6e93ea22b1fcfcd62c5026f3034_GL0.tar.gz) = 437927