mirror of
https://github.com/JetBrains/JetBrainsRuntime.git
synced 2025-12-06 09:29:38 +01:00
Compare commits
25 Commits
jb16-blana
...
jb15-blana
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
00887ec679 | ||
|
|
2c82078266 | ||
|
|
cf222f4650 | ||
|
|
0edb5c39c2 | ||
|
|
801c9f33c9 | ||
|
|
f53113218e | ||
|
|
a3d9ec166a | ||
|
|
715658fa7e | ||
|
|
40329c274c | ||
|
|
e4799e1b0a | ||
|
|
797483bc86 | ||
|
|
03dda5e15b | ||
|
|
f106ea21ed | ||
|
|
a142ad3021 | ||
|
|
31c7442af9 | ||
|
|
37fa500b87 | ||
|
|
cfac207239 | ||
|
|
1bbb048780 | ||
|
|
88f81b973c | ||
|
|
7a9c4d1e71 | ||
|
|
a250b59c6d | ||
|
|
e3c8d3faab | ||
|
|
629e19faf2 | ||
|
|
5f8e57b037 | ||
|
|
59edcf9f0f |
10
jb/project/docker/Dockerfile
Normal file
10
jb/project/docker/Dockerfile
Normal file
@@ -0,0 +1,10 @@
|
||||
# jetbrains/runtime:jbr15env
|
||||
FROM centos:7
|
||||
RUN yum -y install centos-release-scl
|
||||
RUN yum -y install devtoolset-8
|
||||
RUN yum -y install zip bzip2 unzip tar wget make autoconf automake libtool alsa-devel cups-devel xorg-x11-devel libjpeg62-devel giflib-devel freetype-devel file which libXtst-devel libXt-devel libXrender-devel alsa-lib-devel fontconfig-devel libXrandr-devel libXi-devel git
|
||||
# Install Java 11
|
||||
RUN wget https://download.java.net/java/GA/jdk13.0.1/cec27d702aa74d5a8630c65ae61e4305/9/GPL/openjdk-13.0.1_linux-x64_bin.tar.gz \
|
||||
-O - | tar xz -C /
|
||||
ENV JAVA_HOME /jbrsdk
|
||||
ENV PATH $JAVA_HOME/bin:/opt/rh/devtoolset-8/root/usr/bin:$PATH
|
||||
9
jb/project/tools/linux/scripts/mkbundles_x64.sh
Executable file
9
jb/project/tools/linux/scripts/mkbundles_x64.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
script_dir=jb/project/tools/linux/scripts
|
||||
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jcef" || exit $?
|
||||
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx" || exit $?
|
||||
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx_jcef" || exit $?
|
||||
77
jb/project/tools/linux/scripts/mkimages_aarch64.sh
Executable file
77
jb/project/tools/linux/scripts/mkimages_aarch64.sh
Executable file
@@ -0,0 +1,77 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
# The following parameters must be specified:
|
||||
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
|
||||
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
|
||||
# build_number - specifies the number of JetBrainsRuntime build
|
||||
# bundle_type - specifies bundle to bu built; possible values:
|
||||
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
|
||||
# jfx - the bundle 1) jbr with javafx only will be created
|
||||
#
|
||||
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
#
|
||||
# $ ./java --version
|
||||
# openjdk 11.0.6 2020-01-14
|
||||
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
|
||||
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
|
||||
#
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
|
||||
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
|
||||
|
||||
sh configure \
|
||||
--disable-warnings-as-errors \
|
||||
--with-debug-level=release \
|
||||
--with-version-build=$JDK_BUILD_NUMBER \
|
||||
--with-version-pre= \
|
||||
--with-version-opt=b$build_number \
|
||||
--with-boot-jdk=amazon-corretto-11.0.5.10.1-linux-aarch64 \
|
||||
--with-import-modules=./modular-sdk \
|
||||
--enable-cds=yes || exit $?
|
||||
make clean CONF=linux-aarch64-normal-server-release || exit $?
|
||||
make images CONF=linux-aarch64-normal-server-release test-image || exit $?
|
||||
|
||||
JBSDK=${JBRSDK_BASE_NAME}-linux-aarch64-b${build_number}
|
||||
BASE_DIR=build/linux-aarch64-normal-server-release/images
|
||||
JSDK=${BASE_DIR}/jdk
|
||||
JBRSDK_BUNDLE=jbrsdk
|
||||
|
||||
echo Fixing permissions
|
||||
chmod -R a+r $JSDK
|
||||
|
||||
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
|
||||
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
|
||||
|
||||
echo Creating $JBSDK.tar.gz ...
|
||||
tar -pcf $JBSDK.tar \
|
||||
--exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man \
|
||||
-C $BASE_DIR ${JBRSDK_BUNDLE} || exit $?
|
||||
gzip $JBSDK.tar || exit $?
|
||||
|
||||
JBR_BUNDLE=jbr
|
||||
JBR_BASE_NAME=jbr-$JBSDK_VERSION
|
||||
rm -rf $BASE_DIR/$JBR_BUNDLE
|
||||
|
||||
JBR=$JBR_BASE_NAME-linux-aarch64-b$build_number
|
||||
grep -v javafx modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.aarch64
|
||||
echo Running jlink....
|
||||
${JSDK}/bin/jlink \
|
||||
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
|
||||
--add-modules $(xargs < modules.list.aarch64 | sed s/" "//g | sed s/,$//g) \
|
||||
--output ${BASE_DIR}/${JBR_BUNDLE} || exit $?
|
||||
|
||||
echo Modifying release info ...
|
||||
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${BASE_DIR}/${JBR_BUNDLE}/release
|
||||
|
||||
echo Creating $JBR.tar.gz ...
|
||||
tar -pcf $JBR.tar -C $BASE_DIR ${JBR_BUNDLE} || exit $?
|
||||
gzip $JBR.tar || exit $?
|
||||
|
||||
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-test-aarch64-b$build_number
|
||||
echo Creating $JBRSDK_TEST.tar.gz ...
|
||||
tar -pcf $JBRSDK_TEST.tar -C $BASE_DIR --exclude='test/jdk/demos' test || exit $?
|
||||
gzip $JBRSDK_TEST.tar || exit $?
|
||||
139
jb/project/tools/linux/scripts/mkimages_x64.sh
Executable file
139
jb/project/tools/linux/scripts/mkimages_x64.sh
Executable file
@@ -0,0 +1,139 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
# The following parameters must be specified:
|
||||
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
|
||||
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
|
||||
# build_number - specifies the number of JetBrainsRuntime build
|
||||
# bundle_type - specifies bundle to bu built; possible values:
|
||||
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
|
||||
# jfx - the bundle 1) jbr with javafx only will be created
|
||||
#
|
||||
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
#
|
||||
# $ ./java --version
|
||||
# openjdk 11.0.6 2020-01-14
|
||||
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
|
||||
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
|
||||
#
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
bundle_type=$4
|
||||
|
||||
function create_jbr {
|
||||
|
||||
case "$1" in
|
||||
"${bundle_type}_lw")
|
||||
JBR_BASE_NAME=jbr_${bundle_type}_lw-${JBSDK_VERSION}
|
||||
grep -v "jdk.compiler\|jdk.hotspot.agent" modules.list > modules_tmp.list
|
||||
;;
|
||||
"jfx" | "jcef")
|
||||
JBR_BASE_NAME=jbr_${bundle_type}-${JBSDK_VERSION}
|
||||
cat modules.list > modules_tmp.list
|
||||
;;
|
||||
"jfx_jcef")
|
||||
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
|
||||
cat modules.list > modules_tmp.list
|
||||
;;
|
||||
*)
|
||||
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
|
||||
cat modules.list > modules_tmp.list
|
||||
;;
|
||||
esac
|
||||
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
|
||||
|
||||
JBR=$JBR_BASE_NAME-linux-x64-b$build_number
|
||||
|
||||
echo Running jlink....
|
||||
$JSDK/bin/jlink \
|
||||
--module-path $JSDK/jmods --no-man-pages --compress=2 \
|
||||
--add-modules $(xargs < modules_tmp.list | sed s/" "//g) --output $BASE_DIR/$JBR_BUNDLE
|
||||
|
||||
if [[ "$bundle_type" == *jcef* ]]; then
|
||||
cp -R $BASE_DIR/$JBR_BUNDLE $BASE_DIR/jbr
|
||||
cp -R jcef_linux_x64/* $BASE_DIR/$JBR_BUNDLE/lib || exit $?
|
||||
fi
|
||||
grep -v "^JAVA_VERSION" $JSDK/release | grep -v "^MODULES" >> $BASE_DIR/$JBR_BUNDLE/release
|
||||
|
||||
echo Creating $JBR.tar.gz ...
|
||||
if [ ! -z "$bundle_type" ]; then
|
||||
rm -rf ${BASE_DIR}/jbr
|
||||
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
|
||||
fi
|
||||
tar -pcf $JBR.tar -C $BASE_DIR jbr || exit $?
|
||||
gzip $JBR.tar || exit $?
|
||||
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
|
||||
}
|
||||
|
||||
JBRSDK_BASE_NAME=jbrsdk-$JBSDK_VERSION
|
||||
|
||||
#git checkout -- modules.list src
|
||||
case "$bundle_type" in
|
||||
"jfx")
|
||||
git apply -p0 < jb/project/tools/exclude_jcef_module.patch
|
||||
;;
|
||||
"jcef")
|
||||
git apply -p0 < jb/project/tools/exclude_jfx_module.patch
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -z "$bundle_type" ]; then
|
||||
JBR_BUNDLE=jbr
|
||||
sh configure \
|
||||
--disable-warnings-as-errors \
|
||||
--with-debug-level=release \
|
||||
--with-version-pre= \
|
||||
--with-version-build=${JDK_BUILD_NUMBER} \
|
||||
--with-version-opt=b${build_number} \
|
||||
--with-boot-jdk=$BOOT_JDK \
|
||||
--enable-cds=yes || exit $?
|
||||
else
|
||||
JBR_BUNDLE=jbr_${bundle_type}
|
||||
sh configure \
|
||||
--disable-warnings-as-errors \
|
||||
--with-debug-level=release \
|
||||
--with-version-pre= \
|
||||
--with-version-build=${JDK_BUILD_NUMBER} \
|
||||
--with-version-opt=b${build_number} \
|
||||
--with-import-modules=./modular-sdk \
|
||||
--with-boot-jdk=$BOOT_JDK \
|
||||
--enable-cds=yes || exit $?
|
||||
fi
|
||||
|
||||
make images CONF=linux-x86_64-server-release || exit $?
|
||||
|
||||
JSDK=build/linux-x86_64-server-release/images/jdk
|
||||
JBSDK=$JBRSDK_BASE_NAME-linux-x64-b$build_number
|
||||
|
||||
echo Fixing permissions
|
||||
chmod -R a+r $JSDK
|
||||
|
||||
BASE_DIR=build/linux-x86_64-server-release/images
|
||||
JBRSDK_BUNDLE=jbrsdk
|
||||
|
||||
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
|
||||
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
|
||||
|
||||
if [[ "$bundle_type" == *jcef* ]]; then
|
||||
cp -R jcef_linux_x64/* $BASE_DIR/$JBRSDK_BUNDLE/lib || exit $?
|
||||
fi
|
||||
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
|
||||
echo Creating $JBSDK.tar.gz ...
|
||||
tar -pcf $JBSDK.tar --exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man \
|
||||
-C $BASE_DIR $JBRSDK_BUNDLE || exit $?
|
||||
gzip $JBSDK.tar || exit $?
|
||||
fi
|
||||
|
||||
create_jbr ${bundle_type}
|
||||
|
||||
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
|
||||
make test-image || exit $?
|
||||
|
||||
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-test-x64-b$build_number
|
||||
|
||||
echo Creating $JBSDK_TEST.tar.gz ...
|
||||
tar -pcf $JBRSDK_TEST.tar -C $BASE_DIR --exclude='test/jdk/demos' test || exit $?
|
||||
gzip $JBRSDK_TEST.tar || exit $?
|
||||
fi
|
||||
72
jb/project/tools/linux/scripts/mkimages_x64_fd.sh
Executable file
72
jb/project/tools/linux/scripts/mkimages_x64_fd.sh
Executable file
@@ -0,0 +1,72 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
# The following parameters must be specified:
|
||||
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
|
||||
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
|
||||
# build_number - specifies the number of JetBrainsRuntime build
|
||||
# bundle_type - specifies bundle to bu built; possible values:
|
||||
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
|
||||
# jfx - the bundle 1) jbr with javafx only will be created
|
||||
#
|
||||
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
#
|
||||
# $ ./java --version
|
||||
# openjdk 11.0.6 2020-01-14
|
||||
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
|
||||
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
|
||||
#
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
|
||||
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
|
||||
|
||||
sh configure \
|
||||
--disable-warnings-as-errors \
|
||||
--with-debug-level=fastdebug \
|
||||
--with-version-build=$JDK_BUILD_NUMBER \
|
||||
--with-version-pre= \
|
||||
--with-version-opt=b$build_number \
|
||||
--with-import-modules=./modular-sdk \
|
||||
--enable-cds=yes || exit $?
|
||||
make clean CONF=linux-x86_64-normal-server-fastdebug || exit $?
|
||||
make images CONF=linux-x86_64-normal-server-fastdebug || exit $?
|
||||
|
||||
JBSDK=${JBRSDK_BASE_NAME}-linux-x64-fastdebug-b${build_number}
|
||||
BASE_DIR=build/linux-x86_64-normal-server-fastdebug/images
|
||||
JSDK=${BASE_DIR}/jdk
|
||||
JBRSDK_BUNDLE=jbrsdk
|
||||
|
||||
echo Fixing permissions
|
||||
chmod -R a+r $JSDK
|
||||
|
||||
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
|
||||
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
|
||||
cp -R jcef_linux_x64/* $BASE_DIR/$JBRSDK_BUNDLE/lib || exit $?
|
||||
|
||||
echo Creating $JBSDK.tar.gz ...
|
||||
tar -pcf $JBSDK.tar \
|
||||
--exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man \
|
||||
-C $BASE_DIR ${JBRSDK_BUNDLE} || exit $?
|
||||
gzip $JBSDK.tar || exit $?
|
||||
|
||||
JBR_BUNDLE=jbr
|
||||
JBR_BASE_NAME=jbr-$JBSDK_VERSION
|
||||
rm -rf $BASE_DIR/$JBR_BUNDLE
|
||||
|
||||
JBR=$JBR_BASE_NAME-linux-x64-fastdebug-b$build_number
|
||||
echo Running jlink....
|
||||
${JSDK}/bin/jlink \
|
||||
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
|
||||
--add-modules $(xargs < modules.list | sed s/" "//g | sed s/,$//g) \
|
||||
--output ${BASE_DIR}/${JBR_BUNDLE} || exit $?
|
||||
cp -R jcef_linux_x64/* $BASE_DIR/$JBR_BUNDLE/lib || exit $?
|
||||
|
||||
echo Modifying release info ...
|
||||
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${BASE_DIR}/${JBR_BUNDLE}/release
|
||||
|
||||
echo Creating $JBR.tar.gz ...
|
||||
tar -czf $JBR.tar -C $BASE_DIR ${JBR_BUNDLE} || exit $?
|
||||
gzip $JBR.tar || exit $?
|
||||
73
jb/project/tools/linux/scripts/mkimages_x86.sh
Executable file
73
jb/project/tools/linux/scripts/mkimages_x86.sh
Executable file
@@ -0,0 +1,73 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
# The following parameters must be specified:
|
||||
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
|
||||
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
|
||||
# build_number - specifies the number of JetBrainsRuntime build
|
||||
# bundle_type - specifies bundle to bu built; possible values:
|
||||
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
|
||||
# jfx - the bundle 1) jbr with javafx only will be created
|
||||
#
|
||||
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
#
|
||||
# $ ./java --version
|
||||
# openjdk 11.0.6 2020-01-14
|
||||
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
|
||||
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
|
||||
#
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
|
||||
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
|
||||
|
||||
linux32 bash configure \
|
||||
--disable-warnings-as-errors \
|
||||
--with-debug-level=release \
|
||||
--with-version-build=$JDK_BUILD_NUMBER \
|
||||
--with-version-pre= \
|
||||
--with-version-opt=b$build_number \
|
||||
--with-boot-jdk=/jbrsdk-11.0.5-b1 \
|
||||
--enable-cds=yes || exit $?
|
||||
make clean CONF=linux-x86-normal-server-release || exit $?
|
||||
make images CONF=linux-x86-normal-server-release test-image || exit $?
|
||||
|
||||
JBSDK=${JBRSDK_BASE_NAME}-linux-x86-b${build_number}
|
||||
BASE_DIR=build/linux-x86-normal-server-release/images
|
||||
JSDK=${BASE_DIR}/jdk
|
||||
JBRSDK_BUNDLE=jbrsdk
|
||||
|
||||
echo Fixing permissions
|
||||
chmod -R a+r $JSDK
|
||||
|
||||
rm -rf $BASE_DIR/$JBRSDK_BUNDLE
|
||||
cp -r $JSDK $BASE_DIR/$JBRSDK_BUNDLE || exit $?
|
||||
|
||||
echo Creating $JBSDK.tar.gz ...
|
||||
tar -pcf $JBSDK.tar --exclude=*.debuginfo --exclude=demo --exclude=sample --exclude=man -C $BASE_DIR ${JBRSDK_BUNDLE} || exit $?
|
||||
gzip $JBSDK.tar || exit $?
|
||||
|
||||
JBR_BUNDLE=jbr
|
||||
JBR_BASE_NAME=jbr-$JBSDK_VERSION
|
||||
rm -rf $BASE_DIR/$JBR_BUNDLE
|
||||
|
||||
JBR=$JBR_BASE_NAME-linux-x86-b$build_number
|
||||
grep -v javafx modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.x86
|
||||
echo Running jlink....
|
||||
${JSDK}/bin/jlink \
|
||||
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
|
||||
--add-modules $(xargs < modules.list.x86 | sed s/" "//g | sed s/,$//g) --output ${BASE_DIR}/${JBR_BUNDLE} || exit $?
|
||||
|
||||
echo Modifying release info ...
|
||||
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${BASE_DIR}/${JBR_BUNDLE}/release
|
||||
|
||||
echo Creating $JBR.tar.gz ...
|
||||
tar -pcf $JBR.tar -C $BASE_DIR $JBR_BUNDLE || exit $?
|
||||
gzip $JBR.tar || exit $?
|
||||
|
||||
JBRSDK_TEST=$JBRSDK_BASE_NAME-linux-test-x86-b$build_number
|
||||
echo Creating $JBRSDK_TEST.tar.gz ...
|
||||
tar -pcf $JBRSDK_TEST.tar -C $BASE_DIR --exclude='test/jdk/demos' --exclude='test/hotspot/gtest' test || exit $?
|
||||
gzip $JBRSDK_TEST.tar || exit $?
|
||||
16
jb/project/tools/mac/scripts/entitlements.xml
Normal file
16
jb/project/tools/mac/scripts/entitlements.xml
Normal file
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>com.apple.security.cs.allow-jit</key>
|
||||
<true/>
|
||||
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
|
||||
<true/>
|
||||
<key>com.apple.security.cs.allow-dyld-environment-variables</key>
|
||||
<true/>
|
||||
<key>com.apple.security.cs.disable-library-validation</key>
|
||||
<true/>
|
||||
<key>com.apple.security.cs.disable-executable-page-protection</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
9
jb/project/tools/mac/scripts/mkbundles.sh
Executable file
9
jb/project/tools/mac/scripts/mkbundles.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
script_dir=jb/project/tools/mac/scripts
|
||||
${script_dir}/mkimages.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jcef" || exit $?
|
||||
${script_dir}/mkimages.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx" || exit $?
|
||||
${script_dir}/mkimages.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx_jcef" || exit $?
|
||||
148
jb/project/tools/mac/scripts/mkimages.sh
Executable file
148
jb/project/tools/mac/scripts/mkimages.sh
Executable file
@@ -0,0 +1,148 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
# The following parameters must be specified:
|
||||
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
|
||||
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
|
||||
# build_number - specifies the number of JetBrainsRuntime build
|
||||
# bundle_type - specifies bundle to bu built; possible values:
|
||||
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
|
||||
# jfx - the bundle 1) jbr with javafx only will be created
|
||||
#
|
||||
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
#
|
||||
# $ ./java --version
|
||||
# openjdk 11.0.6 2020-01-14
|
||||
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
|
||||
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
|
||||
#
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
bundle_type=$4
|
||||
|
||||
function create_jbr {
|
||||
|
||||
case "$1" in
|
||||
"${bundle_type}_lw")
|
||||
JBR_BASE_NAME=jbr_${bundle_type}_lw-${JBSDK_VERSION}
|
||||
grep -v "jdk.compiler\|jdk.hotspot.agent" modules.list > modules_tmp.list
|
||||
;;
|
||||
"jfx" | "jcef")
|
||||
JBR_BASE_NAME=jbr_${bundle_type}-${JBSDK_VERSION}
|
||||
cat modules.list > modules_tmp.list
|
||||
;;
|
||||
"jfx_jcef")
|
||||
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
|
||||
cat modules.list > modules_tmp.list
|
||||
;;
|
||||
*)
|
||||
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
|
||||
cat modules.list > modules_tmp.list
|
||||
;;
|
||||
esac
|
||||
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
|
||||
|
||||
JRE_CONTENTS=${BASE_DIR}/${JBR_BUNDLE}/Contents
|
||||
JRE_HOME=${JRE_CONTENTS}/Home
|
||||
if [ -d "${JRE_CONTENTS}" ]; then
|
||||
rm -rf ${JRE_CONTENTS}
|
||||
fi
|
||||
mkdir -p ${JRE_CONTENTS}
|
||||
|
||||
JBR=${JBR_BASE_NAME}-osx-x64-b${build_number}
|
||||
|
||||
${BASE_DIR}/$JBRSDK_BUNDLE/Contents/Home/bin/jlink \
|
||||
--module-path ${BASE_DIR}/${JBRSDK_BUNDLE}/Contents/Home/jmods --no-man-pages --compress=2 \
|
||||
--add-modules $(xargs < modules_tmp.list | sed s/" "//g) --output ${JRE_HOME} || exit $?
|
||||
grep -v "^JAVA_VERSION" ${BASE_DIR}/${JBRSDK_BUNDLE}/Contents/Home/release | grep -v "^MODULES" >> ${JRE_HOME}/release
|
||||
cp -R ${BASE_DIR}/${JBRSDK_BUNDLE}/Contents/MacOS ${JRE_CONTENTS}
|
||||
cp ${BASE_DIR}/${JBRSDK_BUNDLE}/Contents/Info.plist ${JRE_CONTENTS}
|
||||
|
||||
if [[ "${bundle_type}" == *jcef* ]]; then
|
||||
rm -rf ${JRE_CONTENTS}/Frameworks || exit $?
|
||||
rm -rf ${JRE_CONTENTS}/Helpers || exit $?
|
||||
cp -a jcef_mac/Frameworks ${JRE_CONTENTS} || exit $?
|
||||
cp -a jcef_mac/Helpers ${JRE_CONTENTS} || exit $?
|
||||
fi
|
||||
|
||||
echo Creating ${JBR}.tar.gz ...
|
||||
if [ ! -z "$bundle_type" ]; then
|
||||
rm -rf ${BASE_DIR}/jbr
|
||||
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
|
||||
fi
|
||||
COPYFILE_DISABLE=1 tar -pczf ${JBR}.tar.gz --exclude='*.dSYM' --exclude='man' -C ${BASE_DIR} jbr || exit $?
|
||||
rm -rf ${BASE_DIR}/${JBR_BUNDLE}
|
||||
}
|
||||
|
||||
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
|
||||
|
||||
#git checkout -- modules.list src
|
||||
case "$bundle_type" in
|
||||
"jfx")
|
||||
git apply -p0 < jb/project/tools/exclude_jcef_module.patch
|
||||
;;
|
||||
"jcef")
|
||||
git apply -p0 < jb/project/tools/exclude_jfx_module.patch
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ -z "$bundle_type" ]; then
|
||||
JBR_BUNDLE=jbr
|
||||
sh configure \
|
||||
--disable-warnings-as-errors \
|
||||
--with-debug-level=release \
|
||||
--with-version-pre= \
|
||||
--with-version-build=${JDK_BUILD_NUMBER} \
|
||||
--with-version-opt=b${build_number} \
|
||||
--with-boot-jdk=`/usr/libexec/java_home -v $BOOT_JDK` \
|
||||
--enable-cds=yes || exit $?
|
||||
else
|
||||
JBR_BUNDLE=jbr_${bundle_type}
|
||||
sh configure \
|
||||
--disable-warnings-as-errors \
|
||||
--with-debug-level=release \
|
||||
--with-version-pre= \
|
||||
--with-version-build=${JDK_BUILD_NUMBER} \
|
||||
--with-version-opt=b${build_number} \
|
||||
--with-import-modules=./modular-sdk \
|
||||
--with-boot-jdk=`/usr/libexec/java_home -v $BOOT_JDK` \
|
||||
--enable-cds=yes || exit $?
|
||||
fi
|
||||
make images CONF=macosx-x86_64-server-release || exit $?
|
||||
|
||||
JSDK=build/macosx-x86_64-server-release/images/jdk-bundle
|
||||
JBSDK=${JBRSDK_BASE_NAME}-osx-x64-b${build_number}
|
||||
|
||||
BASE_DIR=jre
|
||||
JBRSDK_BUNDLE=jbrsdk
|
||||
|
||||
rm -rf $BASE_DIR
|
||||
mkdir $BASE_DIR || exit $?
|
||||
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
|
||||
cp -a $JSDK/jdk-$JBSDK_VERSION_WITH_DOTS.jdk $BASE_DIR/$JBRSDK_BUNDLE || exit $?
|
||||
|
||||
if [[ "$bundle_type" == *jcef* ]]; then
|
||||
cp -a jcef_mac/Frameworks $BASE_DIR/$JBRSDK_BUNDLE/Contents/ || exit $?
|
||||
cp -a jcef_mac/Helpers $BASE_DIR/$JBRSDK_BUNDLE/Contents/ || exit $?
|
||||
fi
|
||||
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
|
||||
echo Creating $JBSDK.tar.gz ...
|
||||
COPYFILE_DISABLE=1 tar -pczf $JBSDK.tar.gz -C $BASE_DIR \
|
||||
--exclude='._*' --exclude='.DS_Store' --exclude='*~' \
|
||||
--exclude='Home/demo' --exclude='Home/man' --exclude='Home/sample' \
|
||||
$JBRSDK_BUNDLE || exit $?
|
||||
fi
|
||||
|
||||
create_jbr "${bundle_type}" || exit $?
|
||||
|
||||
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
|
||||
make test-image || exit $?
|
||||
|
||||
JBRSDK_TEST=$JBRSDK_BASE_NAME-osx-test-x64-b$build_number
|
||||
|
||||
echo Creating $JBRSDK_TEST.tar.gz ...
|
||||
COPYFILE_DISABLE=1 tar -pczf $JBRSDK_TEST.tar.gz -C build/macosx-x86_64-server-release/images \
|
||||
--exclude='test/jdk/demos' test || exit $?
|
||||
fi
|
||||
83
jb/project/tools/mac/scripts/mkimages_fd.sh
Executable file
83
jb/project/tools/mac/scripts/mkimages_fd.sh
Executable file
@@ -0,0 +1,83 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
# The following parameters must be specified:
|
||||
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
|
||||
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
|
||||
# build_number - specifies the number of JetBrainsRuntime build
|
||||
# bundle_type - specifies bundle to bu built; possible values:
|
||||
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
|
||||
# jfx - the bundle 1) jbr with javafx only will be created
|
||||
#
|
||||
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
#
|
||||
# $ ./java --version
|
||||
# openjdk 11.0.6 2020-01-14
|
||||
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
|
||||
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
|
||||
#
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
|
||||
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
|
||||
|
||||
sh configure \
|
||||
--disable-warnings-as-errors \
|
||||
--with-debug-level=fastdebug \
|
||||
--with-version-build=$JDK_BUILD_NUMBER \
|
||||
--with-version-pre= \
|
||||
--with-version-opt=b$build_number \
|
||||
--with-import-modules=./modular-sdk \
|
||||
--with-boot-jdk=`/usr/libexec/java_home -v 11` \
|
||||
--enable-cds=yes || exit $?
|
||||
make clean CONF=macosx-x86_64-normal-server-fastdebug || exit $?
|
||||
make images CONF=macosx-x86_64-normal-server-fastdebug || exit $?
|
||||
|
||||
JSDK=build/macosx-x86_64-normal-server-fastdebug/images/jdk-bundle
|
||||
JBSDK=${JBRSDK_BASE_NAME}-osx-x64-fastdebug-b${build_number}
|
||||
|
||||
BASE_DIR=jre
|
||||
JBRSDK_BUNDLE=jbrsdk
|
||||
|
||||
rm -rf $BASE_DIR
|
||||
mkdir $BASE_DIR || exit $?
|
||||
JBSDK_VERSION_WITH_DOTS=$(echo $JBSDK_VERSION | sed 's/_/\./g')
|
||||
cp -a $JSDK/jdk-$JBSDK_VERSION_WITH_DOTS.jdk $BASE_DIR/$JBRSDK_BUNDLE || exit $?
|
||||
|
||||
echo Creating $JBSDK.tar.gz ...
|
||||
cp -a jcef_mac/Frameworks $BASE_DIR/$JBRSDK_BUNDLE/Contents/
|
||||
cp -a jcef_mac/Helpers $BASE_DIR/$JBRSDK_BUNDLE/Contents
|
||||
|
||||
COPYFILE_DISABLE=1 \
|
||||
tar -pczf ${JBSDK}.tar.gz -C ${BASE_DIR} \
|
||||
--exclude='._*' --exclude='.DS_Store' --exclude='*~' \
|
||||
--exclude='Home/demo' --exclude='Home/man' --exclude='Home/sample' \
|
||||
${JBRSDK_BUNDLE} || exit $?
|
||||
|
||||
JBR_BUNDLE=jbr
|
||||
JRE_CONTENTS=$BASE_DIR/$JBR_BUNDLE/Contents
|
||||
JRE_HOME=$JRE_CONTENTS/Home
|
||||
JBR_BASE_NAME=jbr-$JBSDK_VERSION
|
||||
|
||||
mkdir -p $JRE_CONTENTS
|
||||
|
||||
if [ -d "$JRE_HOME" ]; then
|
||||
rm -rf $JRE_HOME
|
||||
fi
|
||||
|
||||
JBR=${JBR_BASE_NAME}-osx-x64-fastdebug-b${build_number}
|
||||
|
||||
$BASE_DIR/$JBRSDK_BUNDLE/Contents/Home/bin/jlink \
|
||||
--module-path $BASE_DIR/$JBRSDK_BUNDLE/Contents/Home/jmods --no-man-pages --compress=2 \
|
||||
--add-modules $(xargs < modules.list | sed s/" "//g) --output $JRE_HOME || exit $?
|
||||
grep -v "^JAVA_VERSION" $BASE_DIR/$JBRSDK_BUNDLE/Contents/Home/release | grep -v "^MODULES" >> $JRE_HOME/release
|
||||
cp -R $BASE_DIR/$JBRSDK_BUNDLE/Contents/MacOS $JRE_CONTENTS
|
||||
cp $BASE_DIR/$JBRSDK_BUNDLE/Contents/Info.plist $JRE_CONTENTS
|
||||
cp -a jcef_mac/Frameworks ${JRE_CONTENTS} || exit $?
|
||||
cp -a jcef_mac/Helpers ${JRE_CONTENTS} || exit $?
|
||||
|
||||
|
||||
echo Creating $JBR.tar.gz ...
|
||||
COPYFILE_DISABLE=1 tar -pczf $JBR.tar.gz --exclude='*.dSYM' --exclude='man' -C $BASE_DIR $JBR_BUNDLE || exit $?
|
||||
120
jb/project/tools/mac/scripts/notarize.sh
Executable file
120
jb/project/tools/mac/scripts/notarize.sh
Executable file
@@ -0,0 +1,120 @@
|
||||
#!/bin/bash
|
||||
|
||||
APP_DIRECTORY=$1
|
||||
APPL_USER=$2
|
||||
APPL_PASSWORD=$3
|
||||
APP_NAME=$4
|
||||
BUNDLE_ID=$5
|
||||
FAKE_ROOT="${6:-fake-root}"
|
||||
|
||||
if [[ -z "$APP_DIRECTORY" ]] || [[ -z "$APPL_USER" ]] || [[ -z "$APPL_PASSWORD" ]]; then
|
||||
echo "Usage: $0 AppDirectory Username Password"
|
||||
exit 1
|
||||
fi
|
||||
if [[ ! -d "$APP_DIRECTORY" ]]; then
|
||||
echo "AppDirectory '$APP_DIRECTORY' does not exist or not a directory"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
function log() {
|
||||
echo "$(date '+[%H:%M:%S]') $*"
|
||||
}
|
||||
|
||||
function publish-log() {
|
||||
id=$1
|
||||
file=$2
|
||||
curl -T "$file" "$ARTIFACTORY_URL/$id" || true
|
||||
}
|
||||
|
||||
function altool-upload() {
|
||||
# Since altool uses same file for upload token we have to trick it into using different folders for token file location
|
||||
# Also it copies zip into TMPDIR so we override it too, to simplify cleanup
|
||||
OLD_HOME="$HOME"
|
||||
export HOME="$FAKE_ROOT/home"
|
||||
export TMPDIR="$FAKE_ROOT/tmp"
|
||||
mkdir -p "$HOME"
|
||||
mkdir -p "$TMPDIR"
|
||||
export _JAVA_OPTIONS="-Duser.home=$HOME -Djava.io.tmpdir=$TMPDIR"
|
||||
# Reduce amount of downloads, cache transporter libraries
|
||||
shared_itmstransporter="$OLD_HOME/shared-itmstransporter"
|
||||
if [[ -f "$shared_itmstransporter" ]]; then
|
||||
cp -r "$shared_itmstransporter" "$HOME/.itmstransporter"
|
||||
fi
|
||||
# For some reason altool prints everything to stderr, not stdout
|
||||
set +e
|
||||
xcrun altool --notarize-app \
|
||||
--username "$APPL_USER" --password "$APPL_PASSWORD" \
|
||||
--primary-bundle-id "$BUNDLE_ID" \
|
||||
--asc-provider JetBrainssro --file "$1" 2>&1 | tee "altool.init.out"
|
||||
unset TMPDIR
|
||||
export HOME="$OLD_HOME"
|
||||
set -e
|
||||
}
|
||||
|
||||
#immediately exit script with an error if a command fails
|
||||
set -euo pipefail
|
||||
|
||||
file="$APP_NAME.zip"
|
||||
|
||||
log "Zipping $file..."
|
||||
rm -rf "$file"
|
||||
ditto -c -k --sequesterRsrc --keepParent "$APP_DIRECTORY/Contents" "$file"
|
||||
|
||||
log "Notarizing $file..."
|
||||
rm -rf "altool.init.out" "altool.check.out"
|
||||
altool-upload "$file"
|
||||
|
||||
rm -rf "$file"
|
||||
|
||||
notarization_info="$(grep -e "RequestUUID" "altool.init.out" | grep -oE '([0-9a-f-]{36})')"
|
||||
|
||||
if [ -z "$notarization_info" ]; then
|
||||
log "Faile to read RequestUUID from altool.init.out"
|
||||
exit 10
|
||||
fi
|
||||
|
||||
PATH="$PATH:/usr/local/bin/"
|
||||
|
||||
log "Notarization request sent, awaiting response"
|
||||
spent=0
|
||||
|
||||
while true; do
|
||||
# For some reason altool prints everything to stderr, not stdout
|
||||
xcrun altool --username "$APPL_USER" --notarization-info "$notarization_info" --password "$APPL_PASSWORD" >"altool.check.out" 2>&1 || true
|
||||
status="$(grep -oe 'Status: .*' "altool.check.out" | cut -c 9- || true)"
|
||||
log "Current status: $status"
|
||||
if [ "$status" = "invalid" ]; then
|
||||
log "Notarization failed"
|
||||
ec=1
|
||||
elif [ "$status" = "success" ]; then
|
||||
log "Notarization succeeded"
|
||||
ec=0
|
||||
else
|
||||
if [ "$status" != "in progress" ]; then
|
||||
log "Unknown notarization status, waiting more, altool output:"
|
||||
cat "altool.check.out"
|
||||
fi
|
||||
if [[ $spent -gt 60 ]]; then
|
||||
log "Waiting time out (apx 60 minutes)"
|
||||
ec=2
|
||||
break
|
||||
fi
|
||||
sleep 60
|
||||
((spent += 1))
|
||||
continue
|
||||
fi
|
||||
developer_log="developer_log.json"
|
||||
log "Fetching $developer_log"
|
||||
# TODO: Replace cut with trim or something better
|
||||
url="$(grep -oe 'LogFileURL: .*' "altool.check.out" | cut -c 13-)"
|
||||
wget "$url" -O "$developer_log" && cat "$developer_log" || true
|
||||
if [ $ec != 0 ]; then
|
||||
log "Publishing $developer_log"
|
||||
publish-log "$notarization_info" "$developer_log"
|
||||
fi
|
||||
break
|
||||
done
|
||||
cat "altool.check.out"
|
||||
|
||||
rm -rf "altool.init.out" "altool.check.out"
|
||||
exit $ec
|
||||
93
jb/project/tools/mac/scripts/sign.sh
Executable file
93
jb/project/tools/mac/scripts/sign.sh
Executable file
@@ -0,0 +1,93 @@
|
||||
#!/bin/bash
|
||||
|
||||
APP_DIRECTORY=$1
|
||||
JB_CERT=$2
|
||||
|
||||
if [[ -z "$APP_DIRECTORY" ]] || [[ -z "$JB_CERT" ]]; then
|
||||
echo "Usage: $0 AppDirectory CertificateID"
|
||||
exit 1
|
||||
fi
|
||||
if [[ ! -d "$APP_DIRECTORY" ]]; then
|
||||
echo "AppDirectory '$APP_DIRECTORY' does not exist or not a directory"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
function log() {
|
||||
echo "$(date '+[%H:%M:%S]') $*"
|
||||
}
|
||||
|
||||
#immediately exit script with an error if a command fails
|
||||
set -euo pipefail
|
||||
|
||||
# Cleanup files left from previous sign attempt (if any)
|
||||
find "$APP_DIRECTORY" -name '*.cstemp' -exec rm '{}' \;
|
||||
|
||||
log "Signing libraries and executables..."
|
||||
# -perm +111 searches for executables
|
||||
for f in \
|
||||
"Contents/Home/bin" \
|
||||
"Contents/Home/lib"; do
|
||||
if [ -d "$APP_DIRECTORY/$f" ]; then
|
||||
find "$APP_DIRECTORY/$f" \
|
||||
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -perm +111 \) \
|
||||
-exec codesign --timestamp \
|
||||
-v -s "$JB_CERT" --options=runtime \
|
||||
--entitlements entitlements.xml {} \;
|
||||
fi
|
||||
done
|
||||
|
||||
log "Signing libraries in jars in $PWD"
|
||||
|
||||
# todo: add set -euo pipefail; into the inner sh -c
|
||||
# `-e` prevents `grep -q && printf` loginc
|
||||
# with `-o pipefail` there's no input for 'while' loop
|
||||
find "$APP_DIRECTORY" -name '*.jar' \
|
||||
-exec sh -c "set -u; unzip -l \"\$0\" | grep -q -e '\.dylib\$' -e '\.jnilib\$' -e '\.so\$' -e '^jattach\$' && printf \"\$0\0\" " {} \; |
|
||||
while IFS= read -r -d $'\0' file; do
|
||||
log "Processing libraries in $file"
|
||||
|
||||
rm -rf jarfolder jar.jar
|
||||
mkdir jarfolder
|
||||
filename="${file##*/}"
|
||||
log "Filename: $filename"
|
||||
cp "$file" jarfolder && (cd jarfolder && jar xf "$filename" && rm "$filename")
|
||||
|
||||
find jarfolder \
|
||||
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -name "jattach" \) \
|
||||
-exec codesign --timestamp \
|
||||
-v -s "$JB_CERT" --options=runtime \
|
||||
--entitlements entitlements.xml {} \;
|
||||
|
||||
(cd jarfolder; zip -q -r -o ../jar.jar .)
|
||||
mv jar.jar "$file"
|
||||
done
|
||||
|
||||
rm -rf jarfolder jar.jar
|
||||
|
||||
log "Signing other files..."
|
||||
for f in \
|
||||
"Contents/MacOS"; do
|
||||
if [ -d "$APP_DIRECTORY/$f" ]; then
|
||||
find "$APP_DIRECTORY/$f" \
|
||||
-type f \( -name "*.jnilib" -o -name "*.dylib" -o -name "*.so" -o -perm +111 \) \
|
||||
-exec codesign --timestamp \
|
||||
-v -s "$JB_CERT" --options=runtime \
|
||||
--entitlements entitlements.xml {} \;
|
||||
fi
|
||||
done
|
||||
|
||||
#log "Signing executable..."
|
||||
#codesign --timestamp \
|
||||
# -v -s "$JB_CERT" --options=runtime \
|
||||
# --force \
|
||||
# --entitlements entitlements.xml "$APP_DIRECTORY/Contents/MacOS/idea"
|
||||
|
||||
log "Signing whole app..."
|
||||
codesign --timestamp \
|
||||
-v -s "$JB_CERT" --options=runtime \
|
||||
--force \
|
||||
--entitlements entitlements.xml "$APP_DIRECTORY"
|
||||
|
||||
log "Verifying java is not broken"
|
||||
find "$APP_DIRECTORY" \
|
||||
-type f -name 'java' -perm +111 -exec {} -version \;
|
||||
145
jb/project/tools/mac/scripts/signapp.sh
Executable file
145
jb/project/tools/mac/scripts/signapp.sh
Executable file
@@ -0,0 +1,145 @@
|
||||
#!/bin/bash
|
||||
|
||||
#immediately exit script with an error if a command fails
|
||||
set -euo pipefail
|
||||
|
||||
export COPY_EXTENDED_ATTRIBUTES_DISABLE=true
|
||||
export COPYFILE_DISABLE=true
|
||||
|
||||
INPUT_FILE=$1
|
||||
EXPLODED=$2.exploded
|
||||
BACKUP_JMODS=$2.backup
|
||||
USERNAME=$3
|
||||
PASSWORD=$4
|
||||
CODESIGN_STRING=$5
|
||||
NOTARIZE=$6
|
||||
BUNDLE_ID=$7
|
||||
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
function log() {
|
||||
echo "$(date '+[%H:%M:%S]') $*"
|
||||
}
|
||||
|
||||
log "Deleting $EXPLODED ..."
|
||||
if test -d "$EXPLODED"; then
|
||||
find "$EXPLODED" -mindepth 1 -maxdepth 1 -exec chmod -R u+wx '{}' \;
|
||||
fi
|
||||
rm -rf "$EXPLODED"
|
||||
mkdir "$EXPLODED"
|
||||
rm -rf "$BACKUP_JMODS"
|
||||
mkdir "$BACKUP_JMODS"
|
||||
|
||||
log "Unzipping $INPUT_FILE to $EXPLODED ..."
|
||||
tar -xzvf "$INPUT_FILE" --directory $EXPLODED
|
||||
rm "$INPUT_FILE"
|
||||
BUILD_NAME="$(ls "$EXPLODED")"
|
||||
if test -d $EXPLODED/$BUILD_NAME/Contents/Home/jmods; then
|
||||
mv $EXPLODED/$BUILD_NAME/Contents/Home/jmods $BACKUP_JMODS
|
||||
fi
|
||||
if test -d $EXPLODED/$BUILD_NAME/Contents/Home/Frameworks; then
|
||||
mv $EXPLODED/$BUILD_NAME/Contents/Home/Frameworks $BACKUP_JMODS
|
||||
fi
|
||||
if test -f $EXPLODED/$BUILD_NAME/Contents/MacOS/libjli.dylib; then
|
||||
mv $EXPLODED/$BUILD_NAME/Contents/MacOS/libjli.dylib $BACKUP_JMODS
|
||||
fi
|
||||
|
||||
#log "$INPUT_FILE unzipped and removed"
|
||||
log "$INPUT_FILE extracted and removed"
|
||||
|
||||
APPLICATION_PATH="$EXPLODED/$BUILD_NAME"
|
||||
|
||||
find "$APPLICATION_PATH/Contents/Home/bin" \
|
||||
-maxdepth 1 -type f -name '*.jnilib' -print0 |
|
||||
while IFS= read -r -d $'\0' file; do
|
||||
if [ -f "$file" ]; then
|
||||
log "Linking $file"
|
||||
b="$(basename "$file" .jnilib)"
|
||||
ln -sf "$b.jnilib" "$(dirname "$file")/$b.dylib"
|
||||
fi
|
||||
done
|
||||
|
||||
find "$APPLICATION_PATH/Contents/" \
|
||||
-maxdepth 1 -type f -name '*.txt' -print0 |
|
||||
while IFS= read -r -d $'\0' file; do
|
||||
if [ -f "$file" ]; then
|
||||
log "Moving $file"
|
||||
mv "$file" "$APPLICATION_PATH/Contents/Resources"
|
||||
fi
|
||||
done
|
||||
|
||||
non_plist=$(find "$APPLICATION_PATH/Contents/" -maxdepth 1 -type f -and -not -name 'Info.plist' | wc -l)
|
||||
if [[ $non_plist -gt 0 ]]; then
|
||||
log "Only Info.plist file is allowed in Contents directory but found $non_plist file(s):"
|
||||
log "$(find "$APPLICATION_PATH/Contents/" -maxdepth 1 -type f -and -not -name 'Info.plist')"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
log "Unlocking keychain..."
|
||||
# Make sure *.p12 is imported into local KeyChain
|
||||
security unlock-keychain -p "$PASSWORD" "/Users/$USERNAME/Library/Keychains/login.keychain"
|
||||
|
||||
attempt=1
|
||||
limit=3
|
||||
set +e
|
||||
while [[ $attempt -le $limit ]]; do
|
||||
log "Signing (attempt $attempt) $APPLICATION_PATH ..."
|
||||
./sign.sh "$APPLICATION_PATH" "$CODESIGN_STRING"
|
||||
ec=$?
|
||||
if [[ $ec -ne 0 ]]; then
|
||||
((attempt += 1))
|
||||
if [ $attempt -eq $limit ]; then
|
||||
set -e
|
||||
fi
|
||||
log "Signing failed, wait for 30 sec and try to sign again"
|
||||
sleep 30
|
||||
else
|
||||
log "Signing done"
|
||||
codesign -v "$APPLICATION_PATH" -vvvvv
|
||||
log "Check sign done"
|
||||
((attempt += limit))
|
||||
fi
|
||||
done
|
||||
|
||||
set -e
|
||||
|
||||
if [ "$NOTARIZE" = "yes" ]; then
|
||||
log "Notarizing..."
|
||||
# shellcheck disable=SC1090
|
||||
source "$HOME/.notarize_token"
|
||||
APP_NAME=$(echo ${INPUT_FILE} | awk -F"." '{ print $1 }')
|
||||
# Since notarization tool uses same file for upload token we have to trick it into using different folders, hence fake root
|
||||
# Also it leaves copy of zip file in TMPDIR, so notarize.sh overrides it and uses FAKE_ROOT as location for temp TMPDIR
|
||||
FAKE_ROOT="$(pwd)/fake-root"
|
||||
mkdir -p "$FAKE_ROOT"
|
||||
echo "Notarization will use fake root: $FAKE_ROOT"
|
||||
./notarize.sh "$APPLICATION_PATH" "$APPLE_USERNAME" "$APPLE_PASSWORD" "$APP_NAME" "$BUNDLE_ID" "$FAKE_ROOT"
|
||||
rm -rf "$FAKE_ROOT"
|
||||
|
||||
set +e
|
||||
log "Stapling..."
|
||||
xcrun stapler staple "$APPLICATION_PATH"
|
||||
else
|
||||
log "Notarization disabled"
|
||||
log "Stapling disabled"
|
||||
fi
|
||||
|
||||
log "Zipping $BUILD_NAME to $INPUT_FILE ..."
|
||||
(
|
||||
#cd "$EXPLODED"
|
||||
#ditto -c -k --sequesterRsrc --keepParent "$BUILD_NAME" "../$INPUT_FILE"
|
||||
if test ! -z $(ls $BACKUP_JMODS/libjli.dylib); then
|
||||
mv $BACKUP_JMODS/libjli.dylib $EXPLODED/$BUILD_NAME/Contents/MacOS
|
||||
fi
|
||||
if test -d $BACKUP_JMODS/jmods; then
|
||||
mv $BACKUP_JMODS/jmods $EXPLODED/$BUILD_NAME/Contents/Home
|
||||
fi
|
||||
if test -d $BACKUP_JMODS/Frameworks; then
|
||||
mv $BACKUP_JMODS/Frameworks $EXPLODED/$BUILD_NAME/Contents/Home
|
||||
fi
|
||||
|
||||
COPYFILE_DISABLE=1 tar -pczf $INPUT_FILE --exclude='*.dSYM' --exclude='man' -C $EXPLODED $BUILD_NAME
|
||||
log "Finished zipping"
|
||||
)
|
||||
rm -rf "$EXPLODED"
|
||||
log "Done"
|
||||
9
jb/project/tools/windows/scripts/mkbundles_x64.sh
Executable file
9
jb/project/tools/windows/scripts/mkbundles_x64.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
script_dir=jb/project/tools/windows/scripts
|
||||
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jcef" || exit $?
|
||||
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx" || exit $?
|
||||
${script_dir}/mkimages_x64.sh $JBSDK_VERSION $JDK_BUILD_NUMBER $build_number "jfx_jcef" || exit $?
|
||||
119
jb/project/tools/windows/scripts/mkimages_x64.sh
Executable file
119
jb/project/tools/windows/scripts/mkimages_x64.sh
Executable file
@@ -0,0 +1,119 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
# The following parameters must be specified:
|
||||
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
|
||||
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
|
||||
# build_number - specifies the number of JetBrainsRuntime build
|
||||
# bundle_type - specifies bundle to bu built; possible values:
|
||||
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
|
||||
# jfx - the bundle 1) jbr with javafx only will be created
|
||||
#
|
||||
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
#
|
||||
# $ ./java --version
|
||||
# openjdk 11.0.6 2020-01-14
|
||||
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
|
||||
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
|
||||
#
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
bundle_type=$4
|
||||
|
||||
function create_jbr {
|
||||
|
||||
case "$1" in
|
||||
"${bundle_type}_lw")
|
||||
grep -v "jdk.compiler\|jdk.hotspot.agent" modules.list > modules_tmp.list
|
||||
;;
|
||||
"jfx" | "jcef" | "jfx_jcef")
|
||||
cat modules.list > modules_tmp.list
|
||||
;;
|
||||
*)
|
||||
cat modules.list > modules_tmp.list
|
||||
;;
|
||||
esac
|
||||
rm -rf ${JBR_BUNDLE}
|
||||
|
||||
${JSDK}/bin/jlink \
|
||||
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
|
||||
--add-modules $(xargs < modules_tmp.list | sed s/" "//g) --output ${JBR_BUNDLE} || exit $?
|
||||
if [[ "${bundle_type}" == *jcef* ]]
|
||||
then
|
||||
cp -R jcef_win_x64/* ${JBR_BUNDLE}/bin
|
||||
fi
|
||||
echo Modifying release info ...
|
||||
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${JBR_BUNDLE}/release
|
||||
}
|
||||
|
||||
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
|
||||
WORK_DIR=$(pwd)
|
||||
|
||||
#git checkout -- modules.list src
|
||||
case "$bundle_type" in
|
||||
"jfx")
|
||||
echo "Excluding jcef modules"
|
||||
git apply -p0 < jb/project/tools/exclude_jcef_module.patch
|
||||
;;
|
||||
"jcef")
|
||||
echo "Excluding jfx modules"
|
||||
git apply -p0 < jb/project/tools/exclude_jfx_module.patch
|
||||
;;
|
||||
esac
|
||||
|
||||
PATH="/usr/local/bin:/usr/bin:${PATH}"
|
||||
|
||||
if [ -z "$bundle_type" ]; then
|
||||
bash ./configure \
|
||||
--disable-warnings-as-errors \
|
||||
--with-target-bits=64 \
|
||||
--with-version-pre= \
|
||||
--with-version-build=${JDK_BUILD_NUMBER} \
|
||||
--with-version-opt=b${build_number} \
|
||||
--with-toolchain-version=${TOOLCHAIN_VERSION} \
|
||||
--with-boot-jdk=${BOOT_JDK} \
|
||||
--disable-ccache \
|
||||
--enable-cds=yes || exit 1
|
||||
else
|
||||
bash ./configure \
|
||||
--disable-warnings-as-errors \
|
||||
--with-target-bits=64 \
|
||||
--with-version-pre= \
|
||||
--with-version-build=${JDK_BUILD_NUMBER} \
|
||||
--with-version-opt=b${build_number} \
|
||||
--with-import-modules=${WORK_DIR}/modular-sdk \
|
||||
--with-toolchain-version=${TOOLCHAIN_VERSION} \
|
||||
--with-boot-jdk=${BOOT_JDK} \
|
||||
--disable-ccache \
|
||||
--enable-cds=yes || exit 1
|
||||
fi
|
||||
|
||||
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
|
||||
make LOG=info images CONF=windows-x86_64-server-release test-image || exit 1
|
||||
else
|
||||
make LOG=info images CONF=windows-x86_64-server-release || exit 1
|
||||
fi
|
||||
|
||||
JSDK=build/windows-x86_64-server-release/images/jdk
|
||||
if [[ "$bundle_type" == "*jcef*" || -z "$bundle_type" ]]; then
|
||||
JBSDK=${JBRSDK_BASE_NAME}-windows-x64-b${build_number}
|
||||
fi
|
||||
BASE_DIR=build/windows-x86_64-server-release/images
|
||||
JBRSDK_BUNDLE=jbrsdk
|
||||
|
||||
rm -rf ${BASE_DIR}/${JBRSDK_BUNDLE} && rsync -a --exclude demo --exclude sample ${JSDK}/ ${JBRSDK_BUNDLE} || exit 1
|
||||
if [[ "$bundle_type" == "*jcef*" ]]; then
|
||||
cp -R jcef_win_x64/* ${JBRSDK_BUNDLE}/bin
|
||||
fi
|
||||
|
||||
if [ -z "$bundle_type" ]; then
|
||||
JBR_BUNDLE=jbr
|
||||
else
|
||||
JBR_BUNDLE=jbr_${bundle_type}
|
||||
fi
|
||||
create_jbr ${bundle_type}
|
||||
|
||||
#JBR_BUNDLE=jbr_${bundle_type}_lw
|
||||
#create_jbr ${bundle_type}_lw
|
||||
57
jb/project/tools/windows/scripts/mkimages_x86.sh
Executable file
57
jb/project/tools/windows/scripts/mkimages_x86.sh
Executable file
@@ -0,0 +1,57 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
# The following parameters must be specified:
|
||||
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
|
||||
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
|
||||
# build_number - specifies the number of JetBrainsRuntime build
|
||||
# bundle_type - specifies bundle to bu built; possible values:
|
||||
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
|
||||
# jfx - the bundle 1) jbr with javafx only will be created
|
||||
#
|
||||
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
#
|
||||
# $ ./java --version
|
||||
# openjdk 11.0.6 2020-01-14
|
||||
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
|
||||
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
|
||||
#
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
|
||||
JBRSDK_BASE_NAME=jbrsdk-${JBSDK_VERSION}
|
||||
WORK_DIR=$(pwd)
|
||||
|
||||
PATH="/usr/local/bin:/usr/bin:${PATH}"
|
||||
./configure \
|
||||
--disable-warnings-as-errors \
|
||||
--disable-debug-symbols \
|
||||
--with-target-bits=32 \
|
||||
--with-version-pre= \
|
||||
--with-version-build=${JDK_BUILD_NUMBER} \
|
||||
--with-version-opt=b${build_number} \
|
||||
--with-toolchain-version=2015 \
|
||||
--with-boot-jdk=${BOOT_JDK} \
|
||||
--disable-ccache \
|
||||
--enable-cds=yes || exit 1
|
||||
make clean CONF=windows-x86-normal-server-release || exit 1
|
||||
make LOG=info images CONF=windows-x86-normal-server-release test-image || exit 1
|
||||
|
||||
JBSDK=${JBRSDK_BASE_NAME}-windows-x86-b${build_number}
|
||||
BASE_DIR=build/windows-x86-normal-server-release/images
|
||||
JSDK=${BASE_DIR}/jdk
|
||||
JBRSDK_BUNDLE=jbrsdk
|
||||
|
||||
rm -rf ${BASE_DIR}/${JBRSDK_BUNDLE} && rsync -a --exclude demo --exclude sample ${JSDK}/ ${JBRSDK_BUNDLE} || exit 1
|
||||
|
||||
JBR_BUNDLE=jbr
|
||||
rm -rf ${JBR_BUNDLE}
|
||||
grep -v javafx modules.list | grep -v "jdk.internal.vm\|jdk.aot\|jcef" > modules.list.x86
|
||||
${JSDK}/bin/jlink \
|
||||
--module-path ${JSDK}/jmods --no-man-pages --compress=2 \
|
||||
--add-modules $(xargs < modules.list.x86 | sed s/" "//g) --output ${JBR_BUNDLE} || exit $?
|
||||
|
||||
echo Modifying release info ...
|
||||
grep -v \"^JAVA_VERSION\" ${JSDK}/release | grep -v \"^MODULES\" >> ${JBR_BUNDLE}/release
|
||||
79
jb/project/tools/windows/scripts/pack_x64.sh
Executable file
79
jb/project/tools/windows/scripts/pack_x64.sh
Executable file
@@ -0,0 +1,79 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
# The following parameters must be specified:
|
||||
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
|
||||
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
|
||||
# build_number - specifies the number of JetBrainsRuntime build
|
||||
# bundle_type - specifies bundle to bu built; possible values:
|
||||
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
|
||||
# jfx - the bundle 1) jbr with javafx only will be created
|
||||
#
|
||||
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
#
|
||||
# $ ./java --version
|
||||
# openjdk 11.0.6 2020-01-14
|
||||
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
|
||||
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
|
||||
#
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
bundle_type=$4
|
||||
|
||||
function pack_jbr {
|
||||
|
||||
case "$1" in
|
||||
"${bundle_type}_lw")
|
||||
JBR_BASE_NAME=jbr_${bundle_type}_lw-${JBSDK_VERSION}
|
||||
;;
|
||||
"jfx" | "jcef")
|
||||
JBR_BASE_NAME=jbr_${bundle_type}-${JBSDK_VERSION}
|
||||
;;
|
||||
"jfx_jcef" | "")
|
||||
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
|
||||
;;
|
||||
*)
|
||||
echo "***ERR*** bundle was not specified" && exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
JBR=$JBR_BASE_NAME-windows-x64-b$build_number
|
||||
echo Creating $JBR.tar.gz ...
|
||||
if [ ! -z "$bundle_type" ]; then
|
||||
rm -rf ${BASE_DIR}/jbr
|
||||
cp -R ${BASE_DIR}/${JBR_BUNDLE} ${BASE_DIR}/jbr
|
||||
fi
|
||||
|
||||
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR jbr || exit 1
|
||||
#rm -rf ${BASE_DIR}/${JBR_BUNDLE}
|
||||
}
|
||||
|
||||
JBRSDK_BASE_NAME=jbrsdk-$JBSDK_VERSION
|
||||
JBR_BASE_NAME=jbr-$JBSDK_VERSION
|
||||
|
||||
IMAGES_DIR=build/windows-x86_64-server-release/images
|
||||
JSDK=$IMAGES_DIR/jdk
|
||||
JBSDK=$JBRSDK_BASE_NAME-windows-x64-b$build_number
|
||||
BASE_DIR=.
|
||||
|
||||
if [ -z "$bundle_type" ]; then
|
||||
JBR_BUNDLE=jbr
|
||||
else
|
||||
JBR_BUNDLE=jbr_${bundle_type}
|
||||
fi
|
||||
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
|
||||
JBRSDK_BUNDLE=jbrsdk
|
||||
echo Creating $JBSDK.tar.gz ...
|
||||
/usr/bin/tar -czf $JBSDK.tar.gz $JBRSDK_BUNDLE || exit 1
|
||||
fi
|
||||
|
||||
JBR_BUNDLE=jbr_${bundle_type}
|
||||
pack_jbr $bundle_type
|
||||
|
||||
if [[ "$bundle_type" == "jfx_jcef" || -z "$bundle_type" ]]; then
|
||||
JBRSDK_TEST=$JBRSDK_BASE_NAME-windows-test-x64-b$build_number
|
||||
echo Creating $JBRSDK_TEST.tar.gz ...
|
||||
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || exit 1
|
||||
fi
|
||||
45
jb/project/tools/windows/scripts/pack_x86.sh
Executable file
45
jb/project/tools/windows/scripts/pack_x86.sh
Executable file
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
# The following parameters must be specified:
|
||||
# JBSDK_VERSION - specifies the current version of OpenJDK e.g. 11_0_6
|
||||
# JDK_BUILD_NUMBER - specifies the number of OpenJDK build or the value of --with-version-build argument to configure
|
||||
# build_number - specifies the number of JetBrainsRuntime build
|
||||
# bundle_type - specifies bundle to bu built; possible values:
|
||||
# jcef - the bundles 1) jbr with jcef+javafx, 2) jbrsdk and 3) test will be created
|
||||
# jfx - the bundle 1) jbr with javafx only will be created
|
||||
#
|
||||
# jbrsdk-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
# jbr-${JBSDK_VERSION}-osx-x64-b${build_number}.tar.gz
|
||||
#
|
||||
# $ ./java --version
|
||||
# openjdk 11.0.6 2020-01-14
|
||||
# OpenJDK Runtime Environment (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number})
|
||||
# OpenJDK 64-Bit Server VM (build 11.0.6+${JDK_BUILD_NUMBER}-b${build_number}, mixed mode)
|
||||
#
|
||||
|
||||
JBSDK_VERSION=$1
|
||||
JDK_BUILD_NUMBER=$2
|
||||
build_number=$3
|
||||
|
||||
JBRSDK_BASE_NAME=jbrsdk-$JBSDK_VERSION
|
||||
JBR_BASE_NAME=jbr-$JBSDK_VERSION
|
||||
|
||||
IMAGES_DIR=build/windows-x86-normal-server-release/images
|
||||
JSDK=$IMAGES_DIR/jdk
|
||||
JBSDK=$JBRSDK_BASE_NAME-windows-x86-b$build_number
|
||||
BASE_DIR=.
|
||||
|
||||
JBRSDK_BUNDLE=jbrsdk
|
||||
echo Creating $JBSDK.tar.gz ...
|
||||
/usr/bin/tar -czf $JBSDK.tar.gz $JBRSDK_BUNDLE || exit 1
|
||||
|
||||
JBR_BUNDLE=jbr
|
||||
JBR_BASE_NAME=jbr-${JBSDK_VERSION}
|
||||
|
||||
JBR=$JBR_BASE_NAME-windows-x86-b$build_number
|
||||
echo Creating $JBR.tar.gz ...
|
||||
/usr/bin/tar -czf $JBR.tar.gz -C $BASE_DIR ${JBR_BUNDLE} || exit 1
|
||||
|
||||
JBRSDK_TEST=$JBRSDK_BASE_NAME-windows-test-x86-b$build_number
|
||||
echo Creating $JBRSDK_TEST.tar.gz ...
|
||||
/usr/bin/tar -czf $JBRSDK_TEST.tar.gz -C $IMAGES_DIR --exclude='test/jdk/demos' test || exit 1
|
||||
55
modules.list
Normal file
55
modules.list
Normal file
@@ -0,0 +1,55 @@
|
||||
java.base,
|
||||
java.compiler,
|
||||
java.datatransfer,
|
||||
java.desktop,
|
||||
java.instrument,
|
||||
java.logging,
|
||||
java.management,
|
||||
java.management.rmi,
|
||||
java.naming,
|
||||
java.net.http,
|
||||
java.prefs,
|
||||
java.rmi,
|
||||
java.scripting,
|
||||
java.se,
|
||||
java.security.jgss,
|
||||
java.security.sasl,
|
||||
java.smartcardio,
|
||||
java.sql,
|
||||
java.sql.rowset,
|
||||
java.transaction.xa,
|
||||
java.xml,
|
||||
java.xml.crypto,
|
||||
jdk.accessibility,
|
||||
jdk.aot,
|
||||
jdk.charsets,
|
||||
jdk.compiler,
|
||||
jdk.crypto.cryptoki,
|
||||
jdk.crypto.ec,
|
||||
jdk.dynalink,
|
||||
jdk.httpserver,
|
||||
jdk.internal.ed,
|
||||
jdk.internal.le,
|
||||
jdk.internal.vm.ci,
|
||||
jdk.internal.vm.compiler,
|
||||
jdk.internal.vm.compiler.management,
|
||||
jdk.jdi,
|
||||
jdk.jdwp.agent,
|
||||
jdk.jfr,
|
||||
jdk.jsobject,
|
||||
jdk.localedata,
|
||||
jdk.management,
|
||||
jdk.management.agent,
|
||||
jdk.management.jfr,
|
||||
jdk.naming.dns,
|
||||
jdk.naming.rmi,
|
||||
jdk.net,
|
||||
jdk.scripting.nashorn,
|
||||
jdk.scripting.nashorn.shell,
|
||||
jdk.sctp,
|
||||
jdk.security.auth,
|
||||
jdk.security.jgss,
|
||||
jdk.unsupported,
|
||||
jdk.xml.dom,
|
||||
jdk.zipfs,
|
||||
jdk.hotspot.agent
|
||||
@@ -65,11 +65,18 @@ struct TxtVertex {
|
||||
float txtpos[2];
|
||||
};
|
||||
|
||||
#define INTERPOLATION_NEAREST_NEIGHBOR 0
|
||||
#define INTERPOLATION_BILINEAR 1
|
||||
// NOTE: Metal samplers doesn't supports bicubic interpolation
|
||||
// see table 2.7 from https://developer.apple.com/metal/Metal-Shading-Language-Specification.pdf
|
||||
// (probably we need to implement separate fragment shader with bicubic interpolation)
|
||||
|
||||
struct TxtFrameUniforms {
|
||||
vector_float4 color;
|
||||
int mode;
|
||||
int mode; // NOTE: consider to use bit fields
|
||||
int isSrcOpaque;
|
||||
int isDstOpaque;
|
||||
float extraAlpha;
|
||||
};
|
||||
|
||||
struct AnchorData
|
||||
|
||||
@@ -129,32 +129,35 @@ fragment unsigned int frag_stencil(StencilShaderInOut in [[stage_in]]) {
|
||||
return in.color;
|
||||
}
|
||||
|
||||
// NOTE:
|
||||
// 1. consider to make shaders without IF-conditions
|
||||
// 2. we can pass interpolation mode via uniforms and select corresponding sampler in shader
|
||||
// but it can cause performance problems (something like getTextureSampler(hint) will be invoked
|
||||
// for every pixel)
|
||||
|
||||
fragment half4 frag_txt(
|
||||
TxtShaderInOut vert [[stage_in]],
|
||||
texture2d<float, access::sample> renderTexture [[texture(0)]],
|
||||
constant TxtFrameUniforms& uniforms [[buffer(1)]]
|
||||
)
|
||||
{
|
||||
constexpr sampler textureSampler (mag_filter::linear,
|
||||
min_filter::linear);
|
||||
constant TxtFrameUniforms& uniforms [[buffer(1)]],
|
||||
sampler textureSampler [[sampler(0)]]
|
||||
) {
|
||||
float4 pixelColor = renderTexture.sample(textureSampler, vert.texCoords);
|
||||
float srcA = uniforms.isSrcOpaque ? 1 : pixelColor.a;
|
||||
// TODO: consider to make shaders without IF-conditions
|
||||
if (uniforms.mode) {
|
||||
float4 c = mix(pixelColor, uniforms.color, srcA);
|
||||
return half4(c.r, c.g, c.b , c.a);
|
||||
}
|
||||
return half4(pixelColor.r, pixelColor.g, pixelColor.b, srcA);
|
||||
|
||||
return half4(pixelColor.r,
|
||||
pixelColor.g,
|
||||
pixelColor.b, srcA*uniforms.extraAlpha);
|
||||
}
|
||||
|
||||
fragment half4 frag_txt_tp(TxtShaderInOut vert [[stage_in]],
|
||||
texture2d<float, access::sample> renderTexture [[texture(0)]],
|
||||
texture2d<float, access::sample> paintTexture [[texture(1)]])
|
||||
{
|
||||
constexpr sampler textureSampler (address::repeat,
|
||||
mag_filter::nearest,
|
||||
min_filter::nearest);
|
||||
|
||||
texture2d<float, access::sample> paintTexture [[texture(1)]],
|
||||
sampler textureSampler [[sampler(0)]]
|
||||
) {
|
||||
float4 renderColor = renderTexture.sample(textureSampler, vert.texCoords);
|
||||
float4 paintColor = paintTexture.sample(textureSampler, vert.tpCoords);
|
||||
return half4(paintColor.r*renderColor.a,
|
||||
@@ -184,10 +187,9 @@ fragment half4 frag_txt_grad(GradShaderInOut in [[stage_in]],
|
||||
fragment half4 aa_frag_txt(
|
||||
TxtShaderInOut vert [[stage_in]],
|
||||
texture2d<float, access::sample> renderTexture [[texture(0)]],
|
||||
constant TxtFrameUniforms& uniforms [[buffer(1)]]
|
||||
)
|
||||
{
|
||||
constexpr sampler textureSampler (mag_filter::linear, min_filter::linear);
|
||||
constant TxtFrameUniforms& uniforms [[buffer(1)]],
|
||||
sampler textureSampler [[sampler(0)]]
|
||||
) {
|
||||
float4 pixelColor = renderTexture.sample(textureSampler, vert.texCoords);
|
||||
return half4(pixelColor.r, pixelColor.g, pixelColor.b, pixelColor.a);
|
||||
}
|
||||
|
||||
@@ -40,13 +40,19 @@
|
||||
- (id<MTLRenderCommandEncoder> _Nonnull)getTextureEncoder:(const BMTLSDOps * _Nonnull)dstOps
|
||||
isSrcOpaque:(bool)isSrcOpaque;
|
||||
|
||||
- (id<MTLRenderCommandEncoder> _Nonnull) getTextureEncoder:(id<MTLTexture> _Nonnull)dest
|
||||
isSrcOpaque:(bool)isSrcOpaque
|
||||
isDstOpaque:(bool)isDstOpaque;
|
||||
|
||||
- (id<MTLRenderCommandEncoder> _Nonnull)getTextureEncoder:(id<MTLTexture> _Nonnull)dest
|
||||
isSrcOpaque:(bool)isSrcOpaque
|
||||
isDstOpaque:(bool)isDstOpaque;
|
||||
isDstOpaque:(bool)isDstOpaque
|
||||
interpolation:(int)interpolation;
|
||||
|
||||
- (id<MTLRenderCommandEncoder> _Nonnull)getTextureEncoder:(id<MTLTexture> _Nonnull)dest
|
||||
isSrcOpaque:(bool)isSrcOpaque
|
||||
isDstOpaque:(bool)isDstOpaque
|
||||
interpolation:(int)interpolation
|
||||
isAA:(jboolean)isAA;
|
||||
|
||||
// Base method to obtain any MTLRenderCommandEncoder
|
||||
@@ -54,6 +60,7 @@
|
||||
getEncoder:(id<MTLTexture> _Nonnull)dest
|
||||
isOpaque:(jboolean)isOpaque
|
||||
isTexture:(jboolean)isTexture
|
||||
interpolation:(int)interpolation
|
||||
isAA:(jboolean)isAA
|
||||
srcFlags:(const SurfaceRasterFlags *_Nullable)srcFlags;
|
||||
|
||||
|
||||
@@ -40,6 +40,8 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
id<MTLTexture> _destination;
|
||||
SurfaceRasterFlags _dstFlags;
|
||||
|
||||
jboolean _isAA;
|
||||
|
||||
//
|
||||
// Cached 'mutable' states of encoder
|
||||
//
|
||||
@@ -53,7 +55,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
|
||||
// If true, indicates that encoder is used for texture drawing (user must do [encoder setFragmentTexture:] before drawing)
|
||||
jboolean _isTexture;
|
||||
jboolean _isAA;
|
||||
int _interpolationMode;
|
||||
|
||||
// Clip rect or stencil
|
||||
MTLClip * _clip;
|
||||
@@ -102,6 +104,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
paint:(MTLPaint *)paint
|
||||
composite:(MTLComposite *)composite
|
||||
isTexture:(jboolean)isTexture
|
||||
interpolation:(int)interpolation
|
||||
isAA:(jboolean)isAA
|
||||
srcFlags:(const SurfaceRasterFlags * _Nullable)srcFlags
|
||||
clip:(MTLClip *)clip
|
||||
@@ -129,6 +132,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
composite:composite
|
||||
isStencilUsed:[clip isShape]
|
||||
isTexture:isTexture
|
||||
interpolation:interpolation
|
||||
isAA:isAA
|
||||
srcFlags:srcFlags
|
||||
forceUpdate:forceUpdate];
|
||||
@@ -146,6 +150,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
composite:(MTLComposite *)composite
|
||||
isStencilUsed:(jboolean)isStencilUsed
|
||||
isTexture:(jboolean)isTexture
|
||||
interpolation:(int)interpolation
|
||||
isAA:(jboolean)isAA
|
||||
srcFlags:(const SurfaceRasterFlags * _Nullable)srcFlags
|
||||
forceUpdate:(jboolean)forceUpdate
|
||||
@@ -156,7 +161,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
if (!forceUpdate
|
||||
&& [_paint isEqual:paint]
|
||||
&& [_composite isEqual:composite]
|
||||
&& _isTexture == isTexture
|
||||
&& (_isTexture == isTexture && (!isTexture || _interpolationMode == interpolation)) // interpolation is used only in texture mode
|
||||
&& _isAA == isAA
|
||||
&& _srcFlags.isOpaque == srcFlags->isOpaque && _srcFlags.isPremultiplied == srcFlags->isPremultiplied)
|
||||
return;
|
||||
@@ -164,6 +169,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
[_paint copyFrom:paint];
|
||||
[_composite copyFrom:composite];
|
||||
_isTexture = isTexture;
|
||||
_interpolationMode = interpolation;
|
||||
_isAA = isAA;
|
||||
_srcFlags = *srcFlags;
|
||||
|
||||
@@ -172,6 +178,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
composite:_composite
|
||||
isStencilUsed:isStencilUsed
|
||||
isTexture:_isTexture
|
||||
interpolation:interpolation
|
||||
srcFlags:&_srcFlags
|
||||
dstFlags:&_dstFlags
|
||||
pipelineStateStorage:_pipelineStateStorage];
|
||||
@@ -180,6 +187,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
composite:_composite
|
||||
isStencilUsed:isStencilUsed
|
||||
isTexture:_isTexture
|
||||
interpolation:interpolation
|
||||
isAA:isAA
|
||||
srcFlags:&_srcFlags
|
||||
dstFlags:&_dstFlags
|
||||
@@ -267,6 +275,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
return [self getEncoder:dstTxt
|
||||
isOpaque:dstOps->isOpaque
|
||||
isTexture:JNI_FALSE
|
||||
interpolation:INTERPOLATION_NEAREST_NEIGHBOR
|
||||
isAA:JNI_TRUE
|
||||
srcFlags:NULL];
|
||||
}
|
||||
@@ -277,6 +286,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
return [self getEncoder:dest
|
||||
isOpaque:isOpaque
|
||||
isTexture:JNI_FALSE
|
||||
interpolation:INTERPOLATION_NEAREST_NEIGHBOR
|
||||
isAA:JNI_FALSE
|
||||
srcFlags:NULL];
|
||||
}
|
||||
@@ -284,18 +294,34 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
- (id<MTLRenderCommandEncoder> _Nonnull) getTextureEncoder:(const BMTLSDOps * _Nonnull)dstOps
|
||||
isSrcOpaque:(bool)isSrcOpaque
|
||||
{
|
||||
return [self getTextureEncoder:dstOps->pTexture isSrcOpaque:isSrcOpaque isDstOpaque:dstOps->isOpaque];
|
||||
return [self getTextureEncoder:dstOps->pTexture
|
||||
isSrcOpaque:isSrcOpaque
|
||||
isDstOpaque:dstOps->isOpaque
|
||||
interpolation:INTERPOLATION_NEAREST_NEIGHBOR];
|
||||
}
|
||||
|
||||
- (id<MTLRenderCommandEncoder> _Nonnull) getTextureEncoder:(id<MTLTexture> _Nonnull)dest
|
||||
isSrcOpaque:(bool)isSrcOpaque
|
||||
isDstOpaque:(bool)isDstOpaque
|
||||
{
|
||||
return [self getTextureEncoder:dest
|
||||
isSrcOpaque:isSrcOpaque
|
||||
isDstOpaque:isDstOpaque
|
||||
interpolation:INTERPOLATION_NEAREST_NEIGHBOR
|
||||
isAA:JNI_FALSE];
|
||||
}
|
||||
|
||||
- (id<MTLRenderCommandEncoder> _Nonnull) getTextureEncoder:(id<MTLTexture> _Nonnull)dest
|
||||
isSrcOpaque:(bool)isSrcOpaque
|
||||
isDstOpaque:(bool)isDstOpaque
|
||||
interpolation:(int)interpolation
|
||||
isAA:(jboolean)isAA
|
||||
{
|
||||
SurfaceRasterFlags srcFlags = { isSrcOpaque, JNI_TRUE };
|
||||
return [self getEncoder:dest
|
||||
isOpaque:isDstOpaque
|
||||
isTexture:JNI_TRUE
|
||||
interpolation:interpolation
|
||||
isAA:isAA
|
||||
srcFlags:&srcFlags];
|
||||
}
|
||||
@@ -303,14 +329,16 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
- (id<MTLRenderCommandEncoder> _Nonnull) getTextureEncoder:(id<MTLTexture> _Nonnull)dest
|
||||
isSrcOpaque:(bool)isSrcOpaque
|
||||
isDstOpaque:(bool)isDstOpaque
|
||||
interpolation:(int)interpolation
|
||||
{
|
||||
return [self getTextureEncoder:dest isSrcOpaque:isSrcOpaque isDstOpaque:isDstOpaque isAA:JNI_FALSE];
|
||||
return [self getTextureEncoder:dest isSrcOpaque:isSrcOpaque isDstOpaque:isDstOpaque interpolation:interpolation isAA:JNI_FALSE];
|
||||
}
|
||||
|
||||
- (id<MTLRenderCommandEncoder> _Nonnull)
|
||||
getEncoder:(id<MTLTexture> _Nonnull)dest
|
||||
isOpaque:(jboolean)isOpaque
|
||||
isTexture:(jboolean)isTexture
|
||||
interpolation:(int)interpolation
|
||||
isAA:(jboolean)isAA
|
||||
srcFlags:(const SurfaceRasterFlags *_Nullable)srcFlags {
|
||||
//
|
||||
@@ -409,6 +437,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
paint:_mtlc.paint
|
||||
composite:_mtlc.composite
|
||||
isTexture:isTexture
|
||||
interpolation:interpolation
|
||||
isAA:isAA
|
||||
srcFlags:srcFlags
|
||||
clip:_mtlc.clip
|
||||
@@ -436,6 +465,7 @@ const SurfaceRasterFlags defaultRasterFlags = { JNI_FALSE, JNI_TRUE };
|
||||
_encoder = [self getTextureEncoder:_destination
|
||||
isSrcOpaque:JNI_FALSE
|
||||
isDstOpaque:JNI_TRUE
|
||||
interpolation:INTERPOLATION_NEAREST_NEIGHBOR
|
||||
isAA:JNI_TRUE];
|
||||
|
||||
struct TxtVertex quadTxVerticesBuffer[] = {
|
||||
|
||||
@@ -71,7 +71,7 @@ void MTLBlitTex2Tex(MTLContext *mtlc, id<MTLTexture> src, id<MTLTexture> dest);
|
||||
|
||||
void drawTex2Tex(MTLContext *mtlc,
|
||||
id<MTLTexture> src, id<MTLTexture> dst,
|
||||
jboolean isSrcOpaque, jboolean isDstOpaque,
|
||||
jboolean isSrcOpaque, jboolean isDstOpaque, jint hint,
|
||||
jint sx1, jint sy1, jint sx2, jint sy2,
|
||||
jdouble dx1, jdouble dy1, jdouble dx2, jdouble dy2);
|
||||
|
||||
|
||||
@@ -41,8 +41,10 @@
|
||||
|
||||
#import <Accelerate/Accelerate.h>
|
||||
|
||||
//#define TRACE_ISOBLIT
|
||||
//#define TRACE_BLIT
|
||||
#ifdef DEBUG
|
||||
#define TRACE_ISOBLIT
|
||||
#define TRACE_BLIT
|
||||
#endif //DEBUG
|
||||
//#define DEBUG_ISOBLIT
|
||||
//#define DEBUG_BLIT
|
||||
|
||||
@@ -142,7 +144,7 @@ void fillTxQuad(
|
||||
|
||||
void drawTex2Tex(MTLContext *mtlc,
|
||||
id<MTLTexture> src, id<MTLTexture> dst,
|
||||
jboolean isSrcOpaque, jboolean isDstOpaque,
|
||||
jboolean isSrcOpaque, jboolean isDstOpaque, jint hint,
|
||||
jint sx1, jint sy1, jint sx2, jint sy2,
|
||||
jdouble dx1, jdouble dy1, jdouble dx2, jdouble dy2)
|
||||
{
|
||||
@@ -155,7 +157,9 @@ void drawTex2Tex(MTLContext *mtlc,
|
||||
|
||||
id<MTLRenderCommandEncoder> encoder = [mtlc.encoderManager getTextureEncoder:dst
|
||||
isSrcOpaque:isSrcOpaque
|
||||
isDstOpaque:isDstOpaque];
|
||||
isDstOpaque:isDstOpaque
|
||||
interpolation:hint
|
||||
];
|
||||
|
||||
struct TxtVertex quadTxVerticesBuffer[6];
|
||||
fillTxQuad(quadTxVerticesBuffer, sx1, sy1, sx2, sy2, src.width, src.height, dx1, dy1, dx2, dy2, dst.width, dst.height);
|
||||
@@ -214,14 +218,14 @@ id<MTLTexture> replaceTextureRegion(id<MTLTexture> dest, const SurfaceDataRasInf
|
||||
return nil;
|
||||
}
|
||||
vImage_Buffer srcBuf;
|
||||
srcBuf.height = dw;
|
||||
srcBuf.width = dh;
|
||||
srcBuf.height = dh;
|
||||
srcBuf.width = dw;
|
||||
srcBuf.rowBytes = srcInfo->scanStride;
|
||||
srcBuf.data = srcInfo->rasBase;
|
||||
|
||||
vImage_Buffer destBuf;
|
||||
destBuf.height = dw;
|
||||
destBuf.width = dh;
|
||||
destBuf.height = dh;
|
||||
destBuf.width = dw;
|
||||
destBuf.rowBytes = dw*4;
|
||||
destBuf.data = buffer;
|
||||
|
||||
@@ -249,7 +253,7 @@ id<MTLTexture> replaceTextureRegion(id<MTLTexture> dest, const SurfaceDataRasInf
|
||||
static void
|
||||
MTLBlitSwToTextureViaPooledTexture(
|
||||
MTLContext *mtlc, SurfaceDataRasInfo *srcInfo, BMTLSDOps * bmtlsdOps,
|
||||
MTLRasterFormatInfo * rfi, jboolean useBlitEncoder,
|
||||
MTLRasterFormatInfo * rfi, jboolean useBlitEncoder, jint hint,
|
||||
jdouble dx1, jdouble dy1, jdouble dx2, jdouble dy2)
|
||||
{
|
||||
const int sw = srcInfo->bounds.x2 - srcInfo->bounds.x1;
|
||||
@@ -279,7 +283,7 @@ MTLBlitSwToTextureViaPooledTexture(
|
||||
destinationOrigin:MTLOriginMake(dx1, dy1, 0)];
|
||||
[blitEncoder endEncoding];
|
||||
} else {
|
||||
drawTex2Tex(mtlc, swizzledTexture != nil ? swizzledTexture : texBuff, dest, !rfi->hasAlpha, bmtlsdOps->isOpaque,
|
||||
drawTex2Tex(mtlc, swizzledTexture != nil ? swizzledTexture : texBuff, dest, !rfi->hasAlpha, bmtlsdOps->isOpaque, hint,
|
||||
0, 0, sw, sh, dx1, dy1, dx2, dy2);
|
||||
}
|
||||
|
||||
@@ -485,7 +489,7 @@ MTLBlitLoops_IsoBlit(JNIEnv *env,
|
||||
#ifdef TRACE_ISOBLIT
|
||||
J2dTraceImpl(J2D_TRACE_VERBOSE, JNI_TRUE," [via sampling]");
|
||||
#endif //TRACE_ISOBLIT
|
||||
drawTex2Tex(mtlc, srcTex, dstTex, srcOps->isOpaque, dstOps->isOpaque, sx1, sy1, sx2, sy2, dx1, dy1, dx2, dy2);
|
||||
drawTex2Tex(mtlc, srcTex, dstTex, srcOps->isOpaque, dstOps->isOpaque, hint, sx1, sy1, sx2, sy2, dx1, dy1, dx2, dy2);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -613,13 +617,13 @@ MTLBlitLoops_Blit(JNIEnv *env,
|
||||
#ifdef TRACE_BLIT
|
||||
J2dTraceImpl(J2D_TRACE_VERBOSE, JNI_TRUE," [via pooled + blit]");
|
||||
#endif //TRACE_BLIT
|
||||
MTLBlitSwToTextureViaPooledTexture(mtlc, &srcInfo, dstOps, &rfi, true, dx1, dy1, dx2, dy2);
|
||||
MTLBlitSwToTextureViaPooledTexture(mtlc, &srcInfo, dstOps, &rfi, true, hint, dx1, dy1, dx2, dy2);
|
||||
}
|
||||
} else { // !useReplaceRegion
|
||||
#ifdef TRACE_BLIT
|
||||
J2dTraceImpl(J2D_TRACE_VERBOSE, JNI_TRUE," [via pooled texture]");
|
||||
#endif //TRACE_BLIT
|
||||
MTLBlitSwToTextureViaPooledTexture(mtlc, &srcInfo, dstOps, &rfi, false, dx1, dy1, dx2, dy2);
|
||||
MTLBlitSwToTextureViaPooledTexture(mtlc, &srcInfo, dstOps, &rfi, false, hint, dx1, dy1, dx2, dy2);
|
||||
}
|
||||
}
|
||||
SurfaceData_InvokeRelease(env, srcOps, &srcInfo);
|
||||
@@ -637,8 +641,164 @@ MTLBlitLoops_SurfaceToSwBlit(JNIEnv *env, MTLContext *mtlc,
|
||||
jint srcx, jint srcy, jint dstx, jint dsty,
|
||||
jint width, jint height)
|
||||
{
|
||||
//TODO
|
||||
J2dTraceLn(J2D_TRACE_ERROR, "MTLBlitLoops_SurfaceToSwBlit -- :TODO");
|
||||
J2dTraceLn6(J2D_TRACE_VERBOSE, "MTLBlitLoops_SurfaceToSwBlit: sx=%d sy=%d w=%d h=%d dx=%d dy=%d", srcx, srcy, width, height, dstx, dsty);
|
||||
|
||||
BMTLSDOps *srcOps = (BMTLSDOps *)jlong_to_ptr(pSrcOps);
|
||||
SurfaceDataOps *dstOps = (SurfaceDataOps *)jlong_to_ptr(pDstOps);
|
||||
SurfaceDataRasInfo srcInfo, dstInfo;
|
||||
|
||||
if (dsttype < 0 || dsttype >= sizeof(RasterFormatInfos)/ sizeof(MTLRasterFormatInfo)) {
|
||||
J2dTraceLn1(J2D_TRACE_ERROR, "MTLBlitLoops_SurfaceToSwBlit: destination pixel format %d isn't supported", dsttype);
|
||||
return;
|
||||
}
|
||||
|
||||
if (width <= 0 || height <= 0) {
|
||||
J2dTraceLn(J2D_TRACE_ERROR, "MTLBlitLoops_SurfaceToSwBlit: dimensions are non-positive");
|
||||
return;
|
||||
}
|
||||
|
||||
RETURN_IF_NULL(srcOps);
|
||||
RETURN_IF_NULL(dstOps);
|
||||
RETURN_IF_NULL(mtlc);
|
||||
|
||||
srcInfo.bounds.x1 = srcx;
|
||||
srcInfo.bounds.y1 = srcy;
|
||||
srcInfo.bounds.x2 = srcx + width;
|
||||
srcInfo.bounds.y2 = srcy + height;
|
||||
dstInfo.bounds.x1 = dstx;
|
||||
dstInfo.bounds.y1 = dsty;
|
||||
dstInfo.bounds.x2 = dstx + width;
|
||||
dstInfo.bounds.y2 = dsty + height;
|
||||
|
||||
if (dstOps->Lock(env, dstOps, &dstInfo, SD_LOCK_WRITE) != SD_SUCCESS) {
|
||||
J2dTraceLn(J2D_TRACE_WARNING,"MTLBlitLoops_SurfaceToSwBlit: could not acquire dst lock");
|
||||
return;
|
||||
}
|
||||
|
||||
SurfaceData_IntersectBoundsXYXY(&srcInfo.bounds,
|
||||
0, 0, srcOps->width, srcOps->height);
|
||||
SurfaceData_IntersectBlitBounds(&dstInfo.bounds, &srcInfo.bounds,
|
||||
srcx - dstx, srcy - dsty);
|
||||
|
||||
if (srcInfo.bounds.x2 > srcInfo.bounds.x1 &&
|
||||
srcInfo.bounds.y2 > srcInfo.bounds.y1)
|
||||
{
|
||||
dstOps->GetRasInfo(env, dstOps, &dstInfo);
|
||||
if (dstInfo.rasBase) {
|
||||
void *pDst = dstInfo.rasBase;
|
||||
|
||||
srcx = srcInfo.bounds.x1;
|
||||
srcy = srcInfo.bounds.y1;
|
||||
dstx = dstInfo.bounds.x1;
|
||||
dsty = dstInfo.bounds.y1;
|
||||
width = srcInfo.bounds.x2 - srcInfo.bounds.x1;
|
||||
height = srcInfo.bounds.y2 - srcInfo.bounds.y1;
|
||||
|
||||
pDst = PtrAddBytes(pDst, dstx * dstInfo.pixelStride);
|
||||
pDst = PtrPixelsRow(pDst, dsty, dstInfo.scanStride);
|
||||
|
||||
// this accounts for lower-left origin of the source region
|
||||
srcx = srcOps->xOffset + srcx;
|
||||
srcy = srcOps->yOffset + srcOps->height - srcy - height;
|
||||
const int srcLength = width * height * 4; // NOTE: assume that src format is MTLPixelFormatBGRA8Unorm
|
||||
|
||||
#ifdef DEBUG
|
||||
void *pDstEnd = dstInfo.rasBase + (height - 1)*dstInfo.scanStride + width*dstInfo.pixelStride;
|
||||
if (pDst + srcLength > pDstEnd) {
|
||||
J2dTraceLn6(J2D_TRACE_ERROR, "MTLBlitLoops_SurfaceToSwBlit: length mismatch: dstx=%d, dsty=%d, w=%d, h=%d, pixStride=%d, scanStride=%d",
|
||||
dstx, dsty, width, height, dstInfo.pixelStride, dstInfo.scanStride);
|
||||
return;
|
||||
}
|
||||
#endif //DEBUG
|
||||
|
||||
// Create MTLBuffer (or use static)
|
||||
MTLRasterFormatInfo rfi = RasterFormatInfos[dsttype];
|
||||
const jboolean directCopy = rfi.permuteMap == NULL;
|
||||
|
||||
id<MTLBuffer> mtlbuf;
|
||||
#ifdef USE_STATIC_BUFFER
|
||||
if (directCopy) {
|
||||
// NOTE: theoretically we can use newBufferWithBytesNoCopy, but pDst must be allocated with special API
|
||||
// mtlbuf = [mtlc.device
|
||||
// newBufferWithBytesNoCopy:pDst
|
||||
// length:(NSUInteger) srcLength
|
||||
// options:MTLResourceCPUCacheModeDefaultCache
|
||||
// deallocator:nil];
|
||||
//
|
||||
// see https://developer.apple.com/documentation/metal/mtldevice/1433382-newbufferwithbytesnocopy?language=objc
|
||||
//
|
||||
// The storage allocation of the returned new MTLBuffer object is the same as the pointer input value.
|
||||
// The existing memory allocation must be covered by a single VM region, typically allocated with vm_allocate or mmap.
|
||||
// Memory allocated by malloc is specifically disallowed.
|
||||
}
|
||||
|
||||
static id<MTLBuffer> mtlIntermediateBuffer = nil; // need to reimplement with MTLBufferManager
|
||||
if (mtlIntermediateBuffer == nil || mtlIntermediateBuffer.length < srcLength) {
|
||||
if (mtlIntermediateBuffer != nil) {
|
||||
[mtlIntermediateBuffer release];
|
||||
}
|
||||
mtlIntermediateBuffer = [mtlc.device newBufferWithLength:srcLength options:MTLResourceCPUCacheModeDefaultCache];
|
||||
}
|
||||
mtlbuf = mtlIntermediateBuffer;
|
||||
#else // USE_STATIC_BUFFER
|
||||
mtlbuf = [mtlc.device newBufferWithLength:width*height*4 options:MTLResourceStorageModeShared];
|
||||
#endif // USE_STATIC_BUFFER
|
||||
|
||||
// Read from surface into MTLBuffer
|
||||
// NOTE: using of separate blitCommandBuffer can produce errors (draw into surface (with general cmd-buf)
|
||||
// can be unfinished when reading raster from blit cmd-buf).
|
||||
// Consider to use [mtlc.encoderManager createBlitEncoder] and [mtlc commitCommandBuffer:JNI_TRUE];
|
||||
J2dTraceLn1(J2D_TRACE_VERBOSE, "MTLBlitLoops_SurfaceToSwBlit: source texture %p", srcOps->pTexture);
|
||||
|
||||
id<MTLCommandBuffer> cb = [mtlc createBlitCommandBuffer];
|
||||
id<MTLBlitCommandEncoder> blitEncoder = [cb blitCommandEncoder];
|
||||
[blitEncoder synchronizeTexture:srcOps->pTexture slice:0 level:0];
|
||||
[blitEncoder copyFromTexture:srcOps->pTexture
|
||||
sourceSlice:0
|
||||
sourceLevel:0
|
||||
sourceOrigin:MTLOriginMake(srcx, srcy, 0)
|
||||
sourceSize:MTLSizeMake(width, height, 1)
|
||||
toBuffer:mtlbuf
|
||||
destinationOffset:0 /*offset already taken in: pDst = PtrAddBytes(pDst, dstx * dstInfo.pixelStride)*/
|
||||
destinationBytesPerRow:width*4
|
||||
destinationBytesPerImage:width * height*4];
|
||||
[blitEncoder endEncoding];
|
||||
|
||||
// Commit and wait for reading complete
|
||||
[cb commit];
|
||||
[cb waitUntilCompleted];
|
||||
|
||||
// Perform conversion if necessary
|
||||
if (directCopy) {
|
||||
memcpy(pDst, mtlbuf.contents, srcLength);
|
||||
} else {
|
||||
J2dTraceLn6(J2D_TRACE_VERBOSE,"MTLBlitLoops_SurfaceToSwBlit: dsttype=%d, raster conversion will be performed, dest rfi: %d, %d, %d, %d, hasA=%d",
|
||||
dsttype, rfi.permuteMap[0], rfi.permuteMap[1], rfi.permuteMap[2], rfi.permuteMap[3], rfi.hasAlpha);
|
||||
|
||||
// perform raster conversion: mtlIntermediateBuffer(8888) -> pDst(rfi)
|
||||
// invoked only from rq-thread, so use static buffers
|
||||
// but it's better to use thread-local buffers (or special buffer manager)
|
||||
vImage_Buffer srcBuf;
|
||||
srcBuf.height = height;
|
||||
srcBuf.width = width;
|
||||
srcBuf.rowBytes = 4*width;
|
||||
srcBuf.data = mtlbuf.contents;
|
||||
|
||||
vImage_Buffer destBuf;
|
||||
destBuf.height = height;
|
||||
destBuf.width = width;
|
||||
destBuf.rowBytes = dstInfo.scanStride;
|
||||
destBuf.data = pDst;
|
||||
|
||||
vImagePermuteChannels_ARGB8888(&srcBuf, &destBuf, rfi.permuteMap, kvImageNoFlags);
|
||||
}
|
||||
#ifndef USE_STATIC_BUFFER
|
||||
[mtlbuf release];
|
||||
#endif // USE_STATIC_BUFFER
|
||||
}
|
||||
SurfaceData_InvokeRelease(env, dstOps, &dstInfo);
|
||||
}
|
||||
SurfaceData_InvokeUnlock(env, dstOps, &dstInfo);
|
||||
}
|
||||
|
||||
void
|
||||
@@ -657,6 +817,10 @@ MTLBlitLoops_CopyArea(JNIEnv *env,
|
||||
sourceSlice:0 sourceLevel:0 sourceOrigin:MTLOriginMake(x, y, 0) sourceSize:MTLSizeMake(width, height, 1)
|
||||
toTexture:dstOps->pTexture destinationSlice:0 destinationLevel:0 destinationOrigin:MTLOriginMake(x + dx, y + dy, 0)];
|
||||
[blitEncoder endEncoding];
|
||||
|
||||
// TODO:
|
||||
// 1. check rect bounds
|
||||
// 2. support CopyArea with extra-alpha (and with custom Composite if necessary)
|
||||
}
|
||||
|
||||
#endif /* !HEADLESS */
|
||||
|
||||
@@ -5,6 +5,10 @@
|
||||
|
||||
#include <jni.h>
|
||||
|
||||
#define FLT_ACCURACY (0.99f)
|
||||
#define FLT_LT(x,y) ((x) < (y) - FLT_ACCURACY)
|
||||
#define FLT_GE(x,y) ((x) >= (y) - FLT_ACCURACY)
|
||||
|
||||
/**
|
||||
* The MTLComposite class represents composite mode
|
||||
* */
|
||||
@@ -25,6 +29,7 @@
|
||||
- (jint)getCompositeState;
|
||||
- (jint)getRule;
|
||||
- (jint)getXorColor;
|
||||
- (jfloat)getExtraAlpha;
|
||||
|
||||
- (jboolean)isBlendingDisabled:(jboolean) isSrcOpaque;
|
||||
- (NSString *)getDescription; // creates autorelease string
|
||||
|
||||
@@ -172,4 +172,8 @@
|
||||
return _xorPixel;
|
||||
}
|
||||
|
||||
- (jfloat)getExtraAlpha {
|
||||
return _extraAlpha;
|
||||
}
|
||||
|
||||
@end
|
||||
@@ -99,6 +99,8 @@ static struct TxtVertex verts[PGRAM_VERTEX_COUNT] = {
|
||||
commandQueue, vertexBuffer,
|
||||
texturePool;
|
||||
|
||||
extern void initSamplers(id<MTLDevice> device);
|
||||
|
||||
- (id)initWithDevice:(id<MTLDevice>)d shadersLib:(NSString*)shadersLib {
|
||||
self = [super init];
|
||||
if (self) {
|
||||
@@ -131,6 +133,8 @@ static struct TxtVertex verts[PGRAM_VERTEX_COUNT] = {
|
||||
|
||||
// Create command queue
|
||||
commandQueue = [device newCommandQueue];
|
||||
|
||||
initSamplers(device);
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
@@ -98,6 +98,7 @@
|
||||
composite:(MTLComposite *)composite
|
||||
isStencilUsed:(jboolean)isStencilUsed
|
||||
isTexture:(jboolean)isTexture
|
||||
interpolation:(int)interpolation
|
||||
srcFlags:(const SurfaceRasterFlags *)srcFlags
|
||||
dstFlags:(const SurfaceRasterFlags *)dstFlags
|
||||
pipelineStateStorage:(MTLPipelineStatesStorage *)pipelineStateStorage;
|
||||
@@ -106,6 +107,7 @@
|
||||
composite:(MTLComposite *)composite
|
||||
isStencilUsed:(jboolean)isStencilUsed
|
||||
isTexture:(jboolean)isTexture
|
||||
interpolation:(int)interpolation
|
||||
srcFlags:(const SurfaceRasterFlags *)srcFlags
|
||||
dstFlags:(const SurfaceRasterFlags *)dstFlags
|
||||
pipelineStateStorage:(MTLPipelineStatesStorage *)pipelineStateStorage;
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
|
||||
#include "sun_java2d_SunGraphics2D.h"
|
||||
#include "sun_java2d_pipe_BufferedPaints.h"
|
||||
#import "MTLComposite.h"
|
||||
|
||||
#define RGBA_TO_V4(c) \
|
||||
{ \
|
||||
@@ -282,6 +283,62 @@ static void initTemplatePipelineDescriptors() {
|
||||
_anchor.yParams[2] = yp3;
|
||||
}
|
||||
|
||||
static id<MTLSamplerState> samplerNearestClamp = nil;
|
||||
static id<MTLSamplerState> samplerLinearClamp = nil;
|
||||
static id<MTLSamplerState> samplerNearestRepeat = nil;
|
||||
static id<MTLSamplerState> samplerLinearRepeat = nil;
|
||||
|
||||
void initSamplers(id<MTLDevice> device) {
|
||||
// TODO: move this code into SamplerManager (need implement)
|
||||
|
||||
if (samplerNearestClamp != nil)
|
||||
return;
|
||||
|
||||
MTLSamplerDescriptor *samplerDescriptor = [MTLSamplerDescriptor new];
|
||||
|
||||
samplerDescriptor.rAddressMode = MTLSamplerAddressModeClampToEdge;
|
||||
samplerDescriptor.sAddressMode = MTLSamplerAddressModeClampToEdge;
|
||||
samplerDescriptor.tAddressMode = MTLSamplerAddressModeClampToEdge;
|
||||
|
||||
samplerDescriptor.minFilter = MTLSamplerMinMagFilterNearest;
|
||||
samplerDescriptor.magFilter = MTLSamplerMinMagFilterNearest;
|
||||
samplerNearestClamp = [device newSamplerStateWithDescriptor:samplerDescriptor];
|
||||
|
||||
samplerDescriptor.minFilter = MTLSamplerMinMagFilterLinear;
|
||||
samplerDescriptor.magFilter = MTLSamplerMinMagFilterLinear;
|
||||
samplerLinearClamp = [device newSamplerStateWithDescriptor:samplerDescriptor];
|
||||
|
||||
samplerDescriptor.rAddressMode = MTLSamplerAddressModeRepeat;
|
||||
samplerDescriptor.sAddressMode = MTLSamplerAddressModeRepeat;
|
||||
samplerDescriptor.tAddressMode = MTLSamplerAddressModeRepeat;
|
||||
|
||||
samplerDescriptor.minFilter = MTLSamplerMinMagFilterNearest;
|
||||
samplerDescriptor.magFilter = MTLSamplerMinMagFilterNearest;
|
||||
samplerNearestRepeat = [device newSamplerStateWithDescriptor:samplerDescriptor];
|
||||
|
||||
samplerDescriptor.minFilter = MTLSamplerMinMagFilterLinear;
|
||||
samplerDescriptor.magFilter = MTLSamplerMinMagFilterLinear;
|
||||
samplerLinearRepeat = [device newSamplerStateWithDescriptor:samplerDescriptor];
|
||||
}
|
||||
|
||||
static void setTxtUniforms(
|
||||
id<MTLRenderCommandEncoder> encoder, int color, int mode, int interpolation, bool repeat, jfloat extraAlpha,
|
||||
const SurfaceRasterFlags * srcFlags, const SurfaceRasterFlags * dstFlags
|
||||
) {
|
||||
struct TxtFrameUniforms uf = {RGBA_TO_V4(color), mode, srcFlags->isOpaque, dstFlags->isOpaque, interpolation};
|
||||
[encoder setFragmentBytes:&uf length:sizeof(uf) atIndex:FrameUniformBuffer];
|
||||
|
||||
id<MTLSamplerState> sampler;
|
||||
if (repeat) {
|
||||
sampler = interpolation == INTERPOLATION_BILINEAR ? samplerLinearRepeat : samplerNearestRepeat;
|
||||
} else {
|
||||
sampler = interpolation == INTERPOLATION_BILINEAR ? samplerLinearClamp : samplerNearestClamp;
|
||||
}
|
||||
[encoder setFragmentSamplerState:sampler atIndex:0];
|
||||
}
|
||||
|
||||
// TODO: need support hints for all shaders
|
||||
|
||||
// For the current paint mode:
|
||||
// 1. Selects vertex+fragment shaders (and corresponding pipelineDesc) and set pipelineState
|
||||
// 2. Set vertex and fragment buffers
|
||||
@@ -289,6 +346,7 @@ static void initTemplatePipelineDescriptors() {
|
||||
composite:(MTLComposite *)composite
|
||||
isStencilUsed:(jboolean)isStencilUsed
|
||||
isTexture:(jboolean)isTexture
|
||||
interpolation:(int)interpolation
|
||||
isAA:(jboolean)isAA
|
||||
srcFlags:(const SurfaceRasterFlags *)srcFlags
|
||||
dstFlags:(const SurfaceRasterFlags *)dstFlags
|
||||
@@ -313,11 +371,7 @@ static void initTemplatePipelineDescriptors() {
|
||||
[encoder setVertexBytes:&_anchor length:sizeof(_anchor) atIndex:FrameUniformBuffer];
|
||||
[encoder setFragmentTexture:_paintTexture atIndex: 1];
|
||||
|
||||
struct TxtFrameUniforms uf = {RGBA_TO_V4(0), 0, srcFlags->isOpaque,
|
||||
dstFlags->isOpaque};
|
||||
[encoder setFragmentBytes:&uf length:sizeof(uf)
|
||||
atIndex:FrameUniformBuffer];
|
||||
|
||||
setTxtUniforms(encoder, 0, 0, interpolation, YES, [composite getExtraAlpha], srcFlags, dstFlags);
|
||||
} else if (_paintState == sun_java2d_SunGraphics2D_PAINT_GRADIENT) {
|
||||
pipelineState = [pipelineStateStorage getPipelineState:templateTexturePipelineDesc
|
||||
vertexShaderId:@"vert_txt_grad"
|
||||
@@ -351,19 +405,14 @@ static void initTemplatePipelineDescriptors() {
|
||||
vertexShaderId:@"vert_txt"
|
||||
fragmentShaderId:@"frag_txt"
|
||||
compositeRule:[composite getRule]
|
||||
composite:composite
|
||||
isAA:JNI_FALSE
|
||||
srcFlags:srcFlags
|
||||
dstFlags:dstFlags
|
||||
stencilNeeded:stencil];
|
||||
}
|
||||
|
||||
if (_paintState == sun_java2d_SunGraphics2D_PAINT_ALPHACOLOR) {
|
||||
struct TxtFrameUniforms uf = {RGBA_TO_V4(_color), 1, srcFlags->isOpaque, dstFlags->isOpaque };
|
||||
[encoder setFragmentBytes:&uf length:sizeof(uf) atIndex:FrameUniformBuffer];
|
||||
} else {
|
||||
struct TxtFrameUniforms uf = {RGBA_TO_V4(0), 0, srcFlags->isOpaque, dstFlags->isOpaque };
|
||||
[encoder setFragmentBytes:&uf length:sizeof(uf) atIndex:FrameUniformBuffer];
|
||||
}
|
||||
setTxtUniforms(encoder, _color, _paintState == sun_java2d_SunGraphics2D_PAINT_ALPHACOLOR ? 1 : 0, interpolation, NO, [composite getExtraAlpha], srcFlags, dstFlags);
|
||||
}
|
||||
} else {
|
||||
if (_paintState == sun_java2d_SunGraphics2D_PAINT_ALPHACOLOR) {
|
||||
@@ -419,6 +468,7 @@ static void initTemplatePipelineDescriptors() {
|
||||
composite:(MTLComposite *)composite
|
||||
isStencilUsed:(jboolean)isStencilUsed
|
||||
isTexture:(jboolean)isTexture
|
||||
interpolation:(int)interpolation
|
||||
srcFlags:(const SurfaceRasterFlags *)srcFlags
|
||||
dstFlags:(const SurfaceRasterFlags *)dstFlags
|
||||
pipelineStateStorage:(MTLPipelineStatesStorage *)pipelineStateStorage {
|
||||
@@ -435,14 +485,8 @@ static void initTemplatePipelineDescriptors() {
|
||||
srcFlags:srcFlags
|
||||
dstFlags:dstFlags
|
||||
stencilNeeded:stencil];
|
||||
|
||||
if (_paintState == sun_java2d_SunGraphics2D_PAINT_ALPHACOLOR) {
|
||||
struct TxtFrameUniforms uf = {RGBA_TO_V4(_color ^ xorColor), 1, srcFlags->isOpaque, dstFlags->isOpaque };
|
||||
[encoder setFragmentBytes:&uf length:sizeof(uf) atIndex:FrameUniformBuffer];
|
||||
} else {
|
||||
struct TxtFrameUniforms uf = {RGBA_TO_V4(0 ^ xorColor), 0, srcFlags->isOpaque, dstFlags->isOpaque };
|
||||
[encoder setFragmentBytes:&uf length:sizeof(uf) atIndex:FrameUniformBuffer];
|
||||
}
|
||||
const int col = _paintState == sun_java2d_SunGraphics2D_PAINT_ALPHACOLOR ? _color ^ xorColor : 0 ^ xorColor;
|
||||
setTxtUniforms(encoder, col, _paintState == sun_java2d_SunGraphics2D_PAINT_ALPHACOLOR ? 1 : 0, interpolation, NO, [composite getExtraAlpha], srcFlags, dstFlags);
|
||||
[encoder setFragmentBytes:&xorColor length:sizeof(xorColor) atIndex: 0];
|
||||
} else {
|
||||
if (_paintState == sun_java2d_SunGraphics2D_PAINT_ALPHACOLOR) {
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
#import "MTLUtils.h"
|
||||
#include "MTLSurfaceDataBase.h"
|
||||
|
||||
@class MTLComposite;
|
||||
|
||||
/**
|
||||
* The MTLPipelineStatesStorage class used to obtain MTLRenderPipelineState
|
||||
* */
|
||||
@@ -54,6 +56,16 @@ NSMutableDictionary<NSString*, id<MTLFunction>> * shaders;
|
||||
dstFlags:(const SurfaceRasterFlags *)dstFlags
|
||||
stencilNeeded:(bool)stencilNeeded;
|
||||
|
||||
- (id<MTLRenderPipelineState>) getPipelineState:(MTLRenderPipelineDescriptor *) pipelineDescriptor
|
||||
vertexShaderId:(NSString *)vertexShaderId
|
||||
fragmentShaderId:(NSString *)fragmentShaderId
|
||||
compositeRule:(jint)compositeRule
|
||||
composite:(MTLComposite*)composite
|
||||
isAA:(jboolean)isAA
|
||||
srcFlags:(const SurfaceRasterFlags *)srcFlags
|
||||
dstFlags:(const SurfaceRasterFlags *)dstFlags
|
||||
stencilNeeded:(bool)stencilNeeded;
|
||||
|
||||
- (id<MTLRenderPipelineState>) getXorModePipelineState:(MTLRenderPipelineDescriptor *) pipelineDescriptor
|
||||
vertexShaderId:(NSString *)vertexShaderId
|
||||
fragmentShaderId:(NSString *)fragmentShaderId
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#import "MTLPipelineStatesStorage.h"
|
||||
|
||||
#include "GraphicsPrimitiveMgr.h"
|
||||
#import "MTLComposite.h"
|
||||
|
||||
// A special value for xor composite
|
||||
const int XOR_COMPOSITE_RULE = 20;
|
||||
@@ -10,6 +11,7 @@ extern const SurfaceRasterFlags defaultRasterFlags;
|
||||
static void setBlendingFactors(
|
||||
MTLRenderPipelineColorAttachmentDescriptor * cad,
|
||||
int compositeRule,
|
||||
MTLComposite* composite,
|
||||
const SurfaceRasterFlags * srcFlags, const SurfaceRasterFlags * dstFlags);
|
||||
|
||||
@implementation MTLPipelineStatesStorage
|
||||
@@ -100,6 +102,25 @@ static void setBlendingFactors(
|
||||
stencilNeeded:stencilNeeded];
|
||||
}
|
||||
|
||||
- (id<MTLRenderPipelineState>) getPipelineState:(MTLRenderPipelineDescriptor *) pipelineDescriptor
|
||||
vertexShaderId:(NSString *)vertexShaderId
|
||||
fragmentShaderId:(NSString *)fragmentShaderId
|
||||
compositeRule:(jint)compositeRule
|
||||
isAA:(jboolean)isAA
|
||||
srcFlags:(const SurfaceRasterFlags *)srcFlags
|
||||
dstFlags:(const SurfaceRasterFlags *)dstFlags
|
||||
stencilNeeded:(bool)stencilNeeded;
|
||||
{
|
||||
return [self getPipelineState:pipelineDescriptor
|
||||
vertexShaderId:vertexShaderId
|
||||
fragmentShaderId:fragmentShaderId
|
||||
compositeRule:compositeRule
|
||||
composite:nil
|
||||
isAA:isAA
|
||||
srcFlags:srcFlags
|
||||
dstFlags:dstFlags
|
||||
stencilNeeded:stencilNeeded];
|
||||
}
|
||||
|
||||
// Base method to obtain MTLRenderPipelineState.
|
||||
// NOTE: parameters compositeRule, srcFlags, dstFlags are used to set MTLRenderPipelineColorAttachmentDescriptor multipliers
|
||||
@@ -107,6 +128,7 @@ static void setBlendingFactors(
|
||||
vertexShaderId:(NSString *)vertexShaderId
|
||||
fragmentShaderId:(NSString *)fragmentShaderId
|
||||
compositeRule:(jint)compositeRule
|
||||
composite:(MTLComposite*) composite
|
||||
isAA:(jboolean)isAA
|
||||
srcFlags:(const SurfaceRasterFlags *)srcFlags
|
||||
dstFlags:(const SurfaceRasterFlags *)dstFlags
|
||||
@@ -144,6 +166,10 @@ static void setBlendingFactors(
|
||||
if (isAA) {
|
||||
subIndex |= 1 << 5;
|
||||
}
|
||||
|
||||
if ((composite != nil && FLT_LT([composite getExtraAlpha], 1.0f))) {
|
||||
subIndex |= 1 << 6;
|
||||
}
|
||||
int index = compositeRule*64 + subIndex;
|
||||
|
||||
NSPointerArray * subStates = [self getSubStates:vertexShaderId fragmentShader:fragmentShaderId];
|
||||
@@ -167,10 +193,14 @@ static void setBlendingFactors(
|
||||
pipelineDesc.colorAttachments[0].sourceRGBBlendFactor = MTLBlendFactorOneMinusDestinationColor;
|
||||
pipelineDesc.colorAttachments[0].destinationRGBBlendFactor = MTLBlendFactorOneMinusSourceColor;
|
||||
|
||||
} else if (useComposite) {
|
||||
} else if (useComposite ||
|
||||
(composite != nil &&
|
||||
FLT_GE([composite getExtraAlpha], 1.0f)))
|
||||
{
|
||||
setBlendingFactors(
|
||||
pipelineDesc.colorAttachments[0],
|
||||
compositeRule,
|
||||
composite,
|
||||
srcFlags, dstFlags
|
||||
);
|
||||
}
|
||||
@@ -231,6 +261,7 @@ static void setBlendingFactors(
|
||||
static void setBlendingFactors(
|
||||
MTLRenderPipelineColorAttachmentDescriptor * cad,
|
||||
int compositeRule,
|
||||
MTLComposite* composite,
|
||||
const SurfaceRasterFlags * srcFlags,
|
||||
const SurfaceRasterFlags * dstFlags
|
||||
) {
|
||||
@@ -258,7 +289,10 @@ static void setBlendingFactors(
|
||||
case RULE_SrcOver: {
|
||||
// Ar = As + Ad*(1-As)
|
||||
// Cr = Cs + Cd*(1-As)
|
||||
if (srcFlags->isOpaque) {
|
||||
if (srcFlags->isOpaque &&
|
||||
(composite == nil ||
|
||||
FLT_GE([composite getExtraAlpha], 1.0f)))
|
||||
{
|
||||
J2dTraceLn(J2D_TRACE_VERBOSE, "rule=RULE_Src, but blending is disabled because src is opaque");
|
||||
cad.blendingEnabled = NO;
|
||||
return;
|
||||
@@ -274,7 +308,11 @@ static void setBlendingFactors(
|
||||
if (!srcFlags->isPremultiplied) {
|
||||
cad.sourceRGBBlendFactor = MTLBlendFactorSourceAlpha;
|
||||
}
|
||||
if (composite != nil && FLT_LT([composite getExtraAlpha], 1.0f)) {
|
||||
cad.sourceRGBBlendFactor = MTLBlendFactorSourceAlpha;
|
||||
}
|
||||
cad.destinationRGBBlendFactor = MTLBlendFactorOneMinusSourceAlpha;
|
||||
|
||||
J2dTraceLn(J2D_TRACE_VERBOSE, "set RULE_SrcOver");
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -47,6 +47,8 @@ enum {
|
||||
MTL_OP_INIT,
|
||||
MTL_OP_AA,
|
||||
MTL_OP_SET_COLOR,
|
||||
MTL_OP_RESET_PAINT,
|
||||
MTL_OP_SYNC,
|
||||
MTL_OP_OTHER
|
||||
};
|
||||
|
||||
|
||||
@@ -328,6 +328,18 @@ void MTLRenderQueue_CheckPreviousOp(jint op) {
|
||||
|
||||
if (mtlc != NULL) {
|
||||
[mtlc.encoderManager endEncoder];
|
||||
|
||||
if (op == MTL_OP_RESET_PAINT || op == MTL_OP_SYNC) {
|
||||
MTLCommandBufferWrapper *cbwrapper = [mtlc pullCommandBufferWrapper];
|
||||
id <MTLCommandBuffer> commandbuf = [cbwrapper getCommandBuffer];
|
||||
[commandbuf addCompletedHandler:^(id <MTLCommandBuffer> commandbuf) {
|
||||
[cbwrapper release];
|
||||
}];
|
||||
[commandbuf commit];
|
||||
if (op == MTL_OP_SYNC) {
|
||||
[commandbuf waitUntilCompleted];
|
||||
}
|
||||
}
|
||||
}
|
||||
mtlPreviousOp = op;
|
||||
}
|
||||
@@ -337,7 +349,6 @@ Java_sun_java2d_metal_MTLRenderQueue_flushBuffer
|
||||
(JNIEnv *env, jobject mtlrq,
|
||||
jlong buf, jint limit)
|
||||
{
|
||||
jboolean sync = JNI_FALSE;
|
||||
unsigned char *b, *end;
|
||||
|
||||
J2dTraceLn1(J2D_TRACE_INFO,
|
||||
@@ -803,12 +814,7 @@ Java_sun_java2d_metal_MTLRenderQueue_flushBuffer
|
||||
break;
|
||||
case sun_java2d_pipe_BufferedOpCodes_SYNC:
|
||||
{
|
||||
CHECK_PREVIOUS_OP(MTL_OP_OTHER);
|
||||
sync = JNI_TRUE;
|
||||
|
||||
// TODO
|
||||
J2dTraceLn(J2D_TRACE_ERROR, "MTLRenderQueue_SYNC -- :TODO");
|
||||
|
||||
CHECK_PREVIOUS_OP(MTL_OP_SYNC);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -828,7 +834,7 @@ Java_sun_java2d_metal_MTLRenderQueue_flushBuffer
|
||||
// paint-related ops
|
||||
case sun_java2d_pipe_BufferedOpCodes_RESET_PAINT:
|
||||
{
|
||||
CHECK_PREVIOUS_OP(MTL_OP_OTHER);
|
||||
CHECK_PREVIOUS_OP(MTL_OP_RESET_PAINT);
|
||||
[mtlc resetPaint];
|
||||
}
|
||||
break;
|
||||
@@ -1015,9 +1021,6 @@ Java_sun_java2d_metal_MTLRenderQueue_flushBuffer
|
||||
[cbwrapper release];
|
||||
}];
|
||||
[commandbuf commit];
|
||||
if (sync) {
|
||||
[commandbuf waitUntilCompleted];
|
||||
}
|
||||
BMTLSDOps *dstOps = MTLRenderQueue_GetCurrentDestination();
|
||||
if (dstOps != NULL) {
|
||||
MTLSDOps *dstMTLOps = (MTLSDOps *)dstOps->privOps;
|
||||
|
||||
940
test/jdk/jbProblemList.txt
Normal file
940
test/jdk/jbProblemList.txt
Normal file
@@ -0,0 +1,940 @@
|
||||
###########################################################################
|
||||
#
|
||||
# Copyright (c) 2009, 2019, 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.
|
||||
#
|
||||
###########################################################################
|
||||
#
|
||||
# List of tests that should not be run by test/Makefile, for various reasons:
|
||||
# 1. Does not run with jtreg -samevm mode
|
||||
# 2. Causes problems in jtreg -samevm mode for jtreg or tests that follow it
|
||||
# 3. The test is too slow or consumes too many system resources
|
||||
# 4. The test fails when run on any official build systems
|
||||
#
|
||||
# It is possible that a test being on this list is a mistake, and that some
|
||||
# other test in samevm mode caused tests to fail, mistakes happen.
|
||||
#
|
||||
# Tests marked @ignore are not run by test/Makefile, but harmless to be listed.
|
||||
#
|
||||
# Tests that explicitly state "@run main/othervm ...", and are not listed here,
|
||||
# will be run in the same batch as the samevm tests.
|
||||
#
|
||||
# Shell tests are othervm by default.
|
||||
#
|
||||
# List items are testnames followed by labels, all MUST BE commented
|
||||
# as to why they are here and use a label:
|
||||
# generic-all Problems on all platforms
|
||||
# generic-ARCH Where ARCH is one of: sparc, sparcv9, x64, i586, ppc64,
|
||||
# ppc64le, s390x etc.
|
||||
# OSNAME-all Where OSNAME is one of: solaris, linux, windows, macosx, aix
|
||||
# OSNAME-ARCH Specific on to one OSNAME and ARCH, e.g. solaris-amd64
|
||||
# OSNAME-REV Specific on to one OSNAME and REV, e.g. solaris-5.8
|
||||
#
|
||||
# More than one label is allowed but must be on the same line comma seperated,
|
||||
# without spaces.
|
||||
# If there are several lines mentioning the same test, the last one is used.
|
||||
#
|
||||
#############################################################################
|
||||
#
|
||||
# Running the tests:
|
||||
# cd test && make JT_HOME=jtreg_home PRODUCT_HOME=jdk_home jdk_all
|
||||
# Or instead of jdk_all, use any of the jdk_* targets.
|
||||
#
|
||||
# Samevm Notes:
|
||||
# * Although some tests may have only been seen to fail on some platforms,
|
||||
# they might be flagged as 'generic-all' because the problem they have
|
||||
# could cause hidden slowdowns on other platforms.
|
||||
# Most samevm problems will be generic-all, but windows usually dislikes
|
||||
# them the most.
|
||||
# Address already in use or connection errors indicate a generic port issue.
|
||||
# (this is not necessarily a samevm issue, but an issue for running the tests
|
||||
# on shared machines, two people or two test runs will collide).
|
||||
# * Samevm problem (windows in particular) is not closing all input/output
|
||||
# * Samevm problem when a test calls setSecurityManager()
|
||||
# * Samevm problem with setHttps*() is used? (not exactly sure here)
|
||||
# * Samevm problem when stuffing system properties with non Strings or anything
|
||||
# * Samevm problem when changing vm settings, or registering any vm actions
|
||||
# * Samevm problems with deleteOnExit(), if it must happen at end of test
|
||||
# * Samevm problems with URLClassLoader? (no details here)
|
||||
# * Samevm problems with dependence on predictable GC or finalizations
|
||||
#
|
||||
# Any of the above problems may mean the test needs to be flagged as "othervm".
|
||||
#
|
||||
#############################################################################
|
||||
#
|
||||
# Fixing the tests:
|
||||
#
|
||||
# Some tests just may need to be run with "othervm", and that can easily be
|
||||
# done by adding a @run line (or modifying any existing @run):
|
||||
# @run main/othervm NameOfMainClass
|
||||
# Make sure this @run follows any use of @library.
|
||||
# Otherwise, if the test is a samevm possibility, make sure the test is
|
||||
# cleaning up after itself, closing all streams, deleting temp files, etc.
|
||||
#
|
||||
# Keep in mind that the bug could be in many places, and even different per
|
||||
# platform, it could be a bug in any one of:
|
||||
# - the testcase
|
||||
# - the jdk (jdk classes, native code, or hotspot)
|
||||
# - the native compiler
|
||||
# - the javac compiler
|
||||
# - the OS (depends on what the testcase does)
|
||||
#
|
||||
# If you managed to really fix one of these tests, here is how you can
|
||||
# remove tests from this list:
|
||||
# 1. Make sure test passes on all platforms with samevm, or mark it othervm
|
||||
# 2. Make sure test passes on all platforms when run with it's entire group
|
||||
# 3. Make sure both VMs are tested, -server and -client, if possible
|
||||
# 4. Use your favorite build and test system to verify these results
|
||||
# 5. Delete lines in this file, include the changes with your test changes
|
||||
#
|
||||
# You may need to repeat your testing 2 or even 3 times to verify good
|
||||
# results, some of these samevm failures are not very predictable.
|
||||
#
|
||||
#############################################################################
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_awt
|
||||
|
||||
java/awt/event/KeyEvent/SwallowKeyEvents/SwallowKeyEvents.java 8224055 macosx-all
|
||||
java/awt/event/MouseEvent/MouseClickTest/MouseClickTest.java 8168389 windows-all,macosx-all
|
||||
java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion.java 8060176 windows-all,macosx-all
|
||||
java/awt/event/MouseWheelEvent/InfiniteRecursion/InfiniteRecursion_1.java 8060176 windows-all,macosx-all
|
||||
java/awt/dnd/MissingEventsOnModalDialog/MissingEventsOnModalDialogTest.java 8164464 linux-all,macosx-all
|
||||
java/awt/dnd/URIListBetweenJVMsTest/URIListBetweenJVMsTest.java 8171510 macosx-all
|
||||
java/awt/FileDialog/FileDialogIconTest/FileDialogIconTest.java 8160558 windows-all
|
||||
java/awt/FileDialog/8003399/bug8003399.java 8198334 windows-all
|
||||
java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowBlockingTest.java 8168408 windows-all,macosx-all
|
||||
java/awt/Focus/AutoRequestFocusTest/AutoRequestFocusToFrontTest.java 6848406 generic-all
|
||||
java/awt/Focus/AutoRequestFocusTest/AutoRequestFocusSetVisibleTest.java 6848407 generic-all
|
||||
java/awt/Focus/FocusOwnerFrameOnClick/FocusOwnerFrameOnClick.java 8081489 generic-all
|
||||
java/awt/Focus/FocusSubRequestTest/FocusSubRequestTest.java 8233567 macosx-all
|
||||
java/awt/Focus/IconifiedFrameFocusChangeTest/IconifiedFrameFocusChangeTest.java 6849364 generic-all
|
||||
java/awt/Focus/UnaccessibleChoice/AccessibleChoiceTest.java.AccessibleChoiceTest 8239801 macosx-all
|
||||
java/awt/Frame/MaximizedUndecorated/MaximizedUndecorated.java 8022302 generic-all
|
||||
java/awt/Frame/InvisibleOwner/InvisibleOwner.java 8169111 macosx-all
|
||||
java/awt/FullScreen/UninitializedDisplayModeChangeTest/UninitializedDisplayModeChangeTest.java 7188711 macosx-all
|
||||
|
||||
javax/swing/dnd/7171812/bug7171812.java 8041447 macosx-all
|
||||
java/awt/Focus/ChoiceFocus/ChoiceFocus.java 8169103 windows-all,macosx-all
|
||||
java/awt/Focus/ClearLwQueueBreakTest/ClearLwQueueBreakTest.java 8198618 macosx-all
|
||||
java/awt/Focus/ConsumeNextKeyTypedOnModalShowTest/ConsumeNextKeyTypedOnModalShowTest.java 6986252 macosx-all
|
||||
java/awt/Focus/FocusTraversalPolicy/ButtonGroupLayoutTraversal/ButtonGroupLayoutTraversalTest.java 8198619 macosx-all
|
||||
java/awt/Focus/KeyEventForBadFocusOwnerTest/KeyEventForBadFocusOwnerTest.java 8198621 macosx-all
|
||||
java/awt/Focus/MouseClickRequestFocusRaceTest/MouseClickRequestFocusRaceTest.java 8194753 linux-all,macosx-all
|
||||
java/awt/Focus/NoAutotransferToDisabledCompTest/NoAutotransferToDisabledCompTest.java 7152980 macosx-all
|
||||
java/awt/Focus/ShowFrameCheckForegroundTest/ShowFrameCheckForegroundTest.java 8028701 macosx-all,linux-all
|
||||
java/awt/Focus/SimpleWindowActivationTest/SimpleWindowActivationTest.java 8159599 macosx-all
|
||||
java/awt/Focus/TypeAhead/TestFocusFreeze.java 8198622 macosx-all
|
||||
java/awt/Focus/ToFrontFocusTest/ToFrontFocus.java 7156130 linux-all
|
||||
java/awt/Focus/WrongKeyTypedConsumedTest/WrongKeyTypedConsumedTest.java 8169096 macosx-all
|
||||
java/awt/event/KeyEvent/CorrectTime/CorrectTime.java 6626492 generic-all
|
||||
java/awt/EventQueue/6980209/bug6980209.java 8198615 macosx-all
|
||||
java/awt/Frame/ExceptionOnSetExtendedStateTest/ExceptionOnSetExtendedStateTest.java 8198237 macosx-all
|
||||
java/awt/Frame/ShapeNotSetSometimes/ShapeNotSetSometimes.java 8144030 macosx-all,linux-all
|
||||
java/awt/grab/EmbeddedFrameTest1/EmbeddedFrameTest1.java 7080150 macosx-all
|
||||
java/awt/event/InputEvent/EventWhenTest/EventWhenTest.java 8168646 generic-all
|
||||
java/awt/KeyboardFocusmanager/TypeAhead/EnqueueWithDialogButtonTest/EnqueueWithDialogButtonTest.java 8198623 macosx-all
|
||||
java/awt/KeyboardFocusmanager/TypeAhead/FreezeTest/FreezeTest.java 8198623 macosx-all
|
||||
java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.java 8198626 macosx-all
|
||||
java/awt/Mixing/AWT_Mixing/HierarchyBoundsListenerMixingTest.java 8049405 macosx-all
|
||||
java/awt/Mixing/AWT_Mixing/OpaqueOverlappingChoice.java 8048171 generic-all
|
||||
java/awt/Mixing/AWT_Mixing/JMenuBarOverlapping.java 8159451 linux-all,windows-all,macosx-all
|
||||
java/awt/Mixing/AWT_Mixing/JSplitPaneOverlapping.java 8194765 generic-all
|
||||
java/awt/Mixing/AWT_Mixing/JInternalFrameMoveOverlapping.java 6986109 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/MixingPanelsResizing.java 8049405 generic-all
|
||||
java/awt/Mixing/AWT_Mixing/JComboBoxOverlapping.java 8049405 macosx-all
|
||||
java/awt/Mixing/AWT_Mixing/JPopupMenuOverlapping.java 8049405 macosx-all
|
||||
java/awt/Mixing/AWT_Mixing/JButtonInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JButtonOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JColorChooserOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JEditorPaneInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JEditorPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JLabelInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JLabelOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JListInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JListOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JPanelInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JPanelOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JProgressBarInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JProgressBarOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JScrollBarInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JScrollBarOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JSliderInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JSliderOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JSpinnerInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JSpinnerOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JTableInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JTableOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JTextAreaInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JTextAreaOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JTextFieldInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JTextFieldOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JToggleButtonInGlassPaneOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/AWT_Mixing/JToggleButtonOverlapping.java 8158801 windows-all
|
||||
java/awt/Mixing/NonOpaqueInternalFrame.java 7124549 macosx-all
|
||||
java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowRetaining.java 6829264 generic-all
|
||||
java/awt/datatransfer/DragImage/MultiResolutionDragImageTest.java 8080982 generic-all
|
||||
java/awt/datatransfer/SystemFlavorMap/AddFlavorTest.java 8079268 linux-all
|
||||
java/awt/Toolkit/ScreenInsetsTest/ScreenInsetsTest.java 6829250 windows-all
|
||||
java/awt/Toolkit/RealSync/Test.java 6849383 macosx-all,linux-all
|
||||
java/awt/LightweightComponent/LightweightEventTest/LightweightEventTest.java 8159252 windows-all
|
||||
java/awt/EventDispatchThread/HandleExceptionOnEDT/HandleExceptionOnEDT.java 8203047 macosx-all
|
||||
java/awt/EventDispatchThread/LoopRobustness/LoopRobustness.java 8073636 macosx-all
|
||||
java/awt/FullScreen/FullScreenInsets/FullScreenInsets.java 7019055 windows-all,linux-all
|
||||
java/awt/Focus/8013611/JDK8013611.java 8175366 windows-all,macosx-all
|
||||
java/awt/Focus/6378278/InputVerifierTest.java 8198616 macosx-all
|
||||
java/awt/Focus/6382144/EndlessLoopTest.java 8198617 macosx-all
|
||||
java/awt/Focus/6981400/Test1.java 8029675 windows-all,macosx-all
|
||||
java/awt/Focus/8073453/AWTFocusTransitionTest.java 8136517 macosx-all
|
||||
java/awt/Focus/8073453/SwingFocusTransitionTest.java 8136517 macosx-all
|
||||
java/awt/Focus/6981400/Test3.java 8173264 generic-all
|
||||
java/awt/event/KeyEvent/ExtendedKeyCode/ExtendedKeyCodeTest.java 8169476 windows-all
|
||||
java/awt/event/KeyEvent/KeyChar/KeyCharTest.java 8169474,8224055 macosx-all,windows-all
|
||||
java/awt/event/MouseEvent/SpuriousExitEnter/SpuriousExitEnter_3.java 6854300 generic-all
|
||||
java/awt/event/KeyEvent/ExtendedModifiersTest/ExtendedModifiersTest.java 8129778 generic-all
|
||||
java/awt/event/KeyEvent/KeyMaskTest/KeyMaskTest.java 8129778 generic-all
|
||||
java/awt/event/MouseEvent/MouseButtonsAndKeyMasksTest/MouseButtonsAndKeyMasksTest.java 8129778 generic-all
|
||||
|
||||
java/awt/dnd/URIListToFileListBetweenJVMsTest/URIListToFileListBetweenJVMsTest.java 8194947 generic-all
|
||||
java/awt/Frame/SetMaximizedBounds/SetMaximizedBounds.java 8196006 windows-all
|
||||
java/awt/Frame/FramesGC/FramesGC.java 8079069 macosx-all
|
||||
java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java 8047218 generic-all
|
||||
java/awt/GridLayout/LayoutExtraGaps/LayoutExtraGaps.java 8000171 windows-all
|
||||
java/awt/Mouse/GetMousePositionTest/GetMousePositionWithPopup.java 8196017 windows-all
|
||||
java/awt/Scrollbar/ScrollbarMouseWheelTest/ScrollbarMouseWheelTest.java 8196018 windows-all,linux-all
|
||||
java/awt/TrayIcon/ActionCommand/ActionCommand.java 8150540 windows-all
|
||||
java/awt/TrayIcon/ActionEventMask/ActionEventMask.java 8150540 windows-all
|
||||
java/awt/TrayIcon/ActionEventTest/ActionEventTest.java 8150540 windows-all
|
||||
java/awt/TrayIcon/ModalityTest/ModalityTest.java 8150540 windows-all,macosx-all
|
||||
java/awt/TrayIcon/MouseEventMask/MouseEventMaskTest.java 8150540 windows-all
|
||||
java/awt/TrayIcon/MouseMovedTest/MouseMovedTest.java 8150540 windows-all
|
||||
java/awt/TrayIcon/SecurityCheck/FunctionalityCheck/FunctionalityCheck.java 8150540 windows-all
|
||||
java/awt/TrayIcon/SystemTrayInstance/SystemTrayInstanceTest.java 8193543 linux-all
|
||||
java/awt/TrayIcon/TrayIconEventModifiers/TrayIconEventModifiersTest.java 8150540 windows-all,macosx-all
|
||||
java/awt/TrayIcon/TrayIconEvents/TrayIconEventsTest.java 8150540 windows-all
|
||||
java/awt/TrayIcon/TrayIconMouseTest/TrayIconMouseTest.java 8150540 windows-all
|
||||
java/awt/TrayIcon/TrayIconPopup/TrayIconPopupClickTest.java 8150540 windows-all,macosx-all
|
||||
java/awt/TrayIcon/TrayIconPopup/TrayIconPopupTest.java 8150540 windows-all
|
||||
java/awt/TrayIcon/PopupMenuLeakTest/PopupMenuLeakTest.java 8196440 linux-all
|
||||
java/awt/Window/Grab/GrabTest.java 8196019 windows-all
|
||||
java/awt/Window/ShapedAndTranslucentWindows/SetShapeAndClick.java 8197936 macosx-all
|
||||
java/awt/Window/ShapedAndTranslucentWindows/SetShapeDynamicallyAndClick.java 8013450 macosx-all
|
||||
java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucentWindowClick.java 8013450 macosx-all
|
||||
java/awt/Window/ShapedAndTranslucentWindows/TranslucentChoice.java 8221901 linux-all
|
||||
java/awt/Window/MultiWindowApp/ChildAlwaysOnTopTest.java 8222323 windows-all
|
||||
java/awt/Window/ShapedAndTranslucentWindows/FocusAWTTest.java 8222328 windows-all,linux-all,macosx-all
|
||||
java/awt/Window/ShapedAndTranslucentWindows/Shaped.java 8222328 windows-all,linux-all,macosx-all
|
||||
java/awt/Window/ShapedAndTranslucentWindows/ShapedByAPI.java 8222328 windows-all,linux-all,macosx-all
|
||||
java/awt/Window/ShapedAndTranslucentWindows/ShapedTranslucent.java 8222328 windows-all,linux-all,macosx-all
|
||||
java/awt/Window/ShapedAndTranslucentWindows/StaticallyShaped.java 8165218,8222328 windows-all,macosx-all,linux-all
|
||||
java/awt/Window/ShapedAndTranslucentWindows/Translucent.java 8222328 windows-all,linux-all,macosx-all
|
||||
java/awt/Window/AlwaysOnTop/AutoTestOnTop.java 6847593 macosx-all,windows-all,linux-all
|
||||
java/awt/Window/GrabSequence/GrabSequence.java 6848409 macosx-all,linux-all
|
||||
java/awt/Window/LocationAtScreenCorner/LocationAtScreenCorner.java 8203371 linux-all,solaris-all
|
||||
java/awt/font/TextLayout/CombiningPerf.java 8192931 generic-all
|
||||
java/awt/font/TextLayout/TextLayoutBounds.java 8169188 generic-all
|
||||
java/awt/font/StyledMetrics/BoldSpace.java 8198422 linux-all
|
||||
java/awt/FontMetrics/FontCrash.java 8198336 windows-all
|
||||
java/awt/FontMetrics/MaxAdvanceIsMax.java 8221305,8231495 solaris-all,macosx-all,linux-all
|
||||
java/awt/image/DrawImage/IncorrectAlphaSurface2SW.java 8056077 generic-all
|
||||
java/awt/image/DrawImage/IncorrectClipXorModeSW2Surface.java 8196025 windows-all
|
||||
java/awt/image/DrawImage/IncorrectClipXorModeSurface2Surface.java 8196025 windows-all
|
||||
java/awt/image/DrawImage/IncorrectSourceOffset.java 8196086 windows-all
|
||||
java/awt/image/DrawImage/IncorrectUnmanagedImageRotatedClip.java 8196087 windows-all
|
||||
java/awt/image/MultiResolutionImage/MultiResolutionDrawImageWithTransformTest.java 8198390 generic-all
|
||||
java/awt/image/multiresolution/MultiresolutionIconTest.java 8169187 macosx-all
|
||||
java/awt/print/Headless/HeadlessPrinterJob.java 8196088 windows-all
|
||||
java/awt/print/PrinterJob/TestPgfmtSetMPA.java 8198343 generic-all
|
||||
sun/awt/datatransfer/SuplementaryCharactersTransferTest.java 8011371 generic-all
|
||||
sun/awt/shell/ShellFolderMemoryLeak.java 8197794 windows-all
|
||||
sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java 8022403 generic-all
|
||||
sun/java2d/DirectX/OverriddenInsetsTest/OverriddenInsetsTest.java 8196102 generic-all
|
||||
sun/java2d/DirectX/RenderingToCachedGraphicsTest/RenderingToCachedGraphicsTest.java 8196180 windows-all,macosx-all
|
||||
sun/java2d/GdiRendering/InsetClipping.java 8196181 windows-all
|
||||
java/awt/Graphics2D/CopyAreaOOB.java 7001973 windows-all,macosx-all
|
||||
sun/java2d/SunGraphics2D/EmptyClipRenderingTest.java 8144029 macosx-all,linux-all
|
||||
sun/java2d/SunGraphics2D/DrawImageBilinear.java 8191406 generic-all
|
||||
sun/java2d/SunGraphics2D/PolyVertTest.java 6986565 generic-all
|
||||
sun/java2d/SunGraphics2D/SimplePrimQuality.java 6992007 generic-all
|
||||
sun/java2d/SunGraphics2D/SourceClippingBlitTest/SourceClippingBlitTest.java 8196185 generic-all
|
||||
sun/java2d/pipe/InterpolationQualityTest.java 8171303 windows-all,linux-all,macosx-all
|
||||
sun/java2d/X11SurfaceData/SharedMemoryPixmapsTest/SharedMemoryPixmapsTest.sh 8221451 linux-all
|
||||
java/awt/FullScreen/DisplayChangeVITest/DisplayChangeVITest.java 8169469 windows-all
|
||||
java/awt/Graphics2D/DrawString/DrawRotatedStringUsingRotatedFont.java 8197796 generic-all
|
||||
java/awt/TextArea/TextAreaScrolling/TextAreaScrolling.java 8196300 windows-all
|
||||
java/awt/print/PrinterJob/PSQuestionMark.java 7003378 generic-all
|
||||
java/awt/print/PrinterJob/GlyphPositions.java 7003378 generic-all
|
||||
java/awt/print/PrinterJob/Margins.java 8196301 windows-all,macosx-all
|
||||
java/awt/PrintJob/PrinterException.java 8196301 windows-all,macosx-all
|
||||
java/awt/Choice/PopupPosTest/PopupPosTest.java 8197811 windows-all
|
||||
java/awt/Choice/ChoiceMouseWheelTest/ChoiceMouseWheelTest.java 7100044 macosx-all,linux-all
|
||||
java/awt/Component/CreateImage/CreateImage.java 8198334 windows-all
|
||||
java/awt/Component/GetScreenLocTest/GetScreenLocTest.java 4753654 generic-all
|
||||
java/awt/Component/SetEnabledPerformance/SetEnabledPerformance.java 8165863 macosx-all
|
||||
java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.java 8017454 macosx-all
|
||||
java/awt/Focus/NonFocusableWindowTest/NoEventsTest.java 8000171 windows-all
|
||||
java/awt/Frame/MiscUndecorated/RepaintTest.java 8079267 windows-all,linux-all,macosx-all
|
||||
java/awt/Robot/CheckCommonColors/CheckCommonColors.java 8237925 windows-all,linux-all,macosx-all
|
||||
java/awt/Robot/ModifierRobotKey/ModifierRobotKeyTest.java 8157173 generic-all
|
||||
java/awt/Modal/FileDialog/FileDialogAppModal1Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogAppModal2Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogAppModal3Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogAppModal4Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogAppModal5Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogAppModal6Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogDocModal1Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogDocModal2Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogDocModal3Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogDocModal4Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogDocModal5Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogDocModal6Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogDocModal7Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogModal1Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogModal2Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogModal3Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogModal4Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogModal5Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogModal6Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogNonModal1Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogNonModal2Test.java 7186009 macosx-all,linux-all
|
||||
java/awt/Modal/FileDialog/FileDialogNonModal3Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogNonModal4Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogNonModal5Test.java 7186009 macosx-all
|
||||
java/awt/Modal/FileDialog/FileDialogNonModal6Test.java 7186009 macosx-all,linux-all
|
||||
java/awt/Modal/FileDialog/FileDialogNonModal7Test.java 7186009 macosx-all,linux-all
|
||||
java/awt/Modal/FileDialog/FileDialogTKModal1Test.java 8196430 generic-all
|
||||
java/awt/Modal/FileDialog/FileDialogTKModal2Test.java 8196430 generic-all
|
||||
java/awt/Modal/FileDialog/FileDialogTKModal3Test.java 8196430 generic-all
|
||||
java/awt/Modal/FileDialog/FileDialogTKModal4Test.java 8196430 generic-all
|
||||
java/awt/Modal/FileDialog/FileDialogTKModal5Test.java 8196430 generic-all
|
||||
java/awt/Modal/FileDialog/FileDialogTKModal6Test.java 8196430 generic-all
|
||||
java/awt/Modal/FileDialog/FileDialogTKModal7Test.java 8196430 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDDAppModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDDDocModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDDModelessTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDDNonModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDDSetModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDDToolkitModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDFAppModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDFSetModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDFToolkitModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDFWModeless1Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDFWModeless2Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDFWNonModal1Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDFWNonModal2Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingDocModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDModelessTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDNonModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWDocModal1Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWDocModal2Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWDocModal3Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWDocModal4Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWModeless1Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWModeless2Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWModeless3Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWModeless4Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWNonModal1Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWNonModal2Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWNonModal3Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingFDWNonModal4Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsAppModal1Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsAppModal2Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsAppModal3Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsAppModal4Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsAppModal5Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsAppModal6Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsDocModal1Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsDocModal2Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsSetModal1Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsSetModal2Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsSetModal3Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsSetModal4Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsSetModal5Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsSetModal6Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsToolkitModal1Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsToolkitModal2Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsToolkitModal3Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsToolkitModal4Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsToolkitModal5Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/BlockingWindowsToolkitModal6Test.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/UnblockedDialogAppModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/UnblockedDialogDocModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/UnblockedDialogModelessTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/UnblockedDialogNonModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/UnblockedDialogSetModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalBlockingTests/UnblockedDialogToolkitModalTest.java 8198665 macosx-all
|
||||
java/awt/Modal/ModalDialogOrderingTest/ModalDialogOrderingTest.java 8066259 macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ApplicationExcludeFrameFileTest.java 8047179 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ApplicationExcludeDialogFileTest.java 8047179 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ApplicationExcludeDialogPageSetupTest.java 8196431 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ApplicationExcludeDialogPrintSetupTest.java 8196431 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ApplicationExcludeFramePageSetupTest.java 8196431 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ApplicationExcludeFramePrintSetupTest.java 8196431 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ToolkitExcludeFrameFileTest.java 8047179 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ToolkitExcludeDialogFileTest.java 8047179 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ToolkitExcludeDialogPageSetupTest.java 8196431 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ToolkitExcludeDialogPrintSetupTest.java 8196431 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ToolkitExcludeFramePageSetupTest.java 8196431 linux-all,macosx-all
|
||||
java/awt/Modal/ModalExclusionTests/ToolkitExcludeFramePrintSetupTest.java 8196431 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferWDFAppModal2Test.java 8058813 windows-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferWDFModeless2Test.java 8196191 windows-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferDWFDocModalTest.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferDWFModelessTest.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferDWFNonModalTest.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferDialogsModelessTest.java 8196432 linux-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferDialogsNonModalTest.java 8196432 linux-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFDWDocModalTest.java 8196432 linux-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFDWModelessTest.java 8196432 linux-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFDWNonModalTest.java 8196432 linux-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDAppModal1Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDAppModal2Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDAppModal3Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDAppModal4Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDDocModal1Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDDocModal2Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDDocModal3Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDDocModal4Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDModeless1Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDModeless2Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDModeless3Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDModeless4Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDNonModal1Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDNonModal2Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDNonModal3Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferFWDNonModal4Test.java 8196432 linux-all,macosx-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferWDFDocModal2Test.java 8196432 linux-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferWDFNonModal2Test.java 8196432 linux-all
|
||||
java/awt/Modal/MultipleDialogs/MultipleDialogs1Test.java 8198665 macosx-all
|
||||
java/awt/Modal/MultipleDialogs/MultipleDialogs2Test.java 8198665 macosx-all
|
||||
java/awt/Modal/MultipleDialogs/MultipleDialogs3Test.java 8198665 macosx-all
|
||||
java/awt/Modal/MultipleDialogs/MultipleDialogs4Test.java 8198665 macosx-all
|
||||
java/awt/Modal/MultipleDialogs/MultipleDialogs5Test.java 8198665 macosx-all
|
||||
java/awt/Mouse/EnterExitEvents/DragWindowOutOfFrameTest.java 8177326 macosx-all
|
||||
java/awt/Mouse/EnterExitEvents/DragWindowTest.java 8023562 macosx-all
|
||||
java/awt/Mouse/EnterExitEvents/ResizingFrameTest.java 8005021 macosx-all
|
||||
java/awt/Mouse/EnterExitEvents/FullscreenEnterEventTest.java 8051455 macosx-all
|
||||
java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Standard.java 7124407 macosx-all
|
||||
java/awt/Mouse/RemovedComponentMouseListener/RemovedComponentMouseListener.java 8157170 macosx-all
|
||||
java/awt/Modal/ToFront/DialogToFrontModeless1Test.java 8213530 linux-all
|
||||
java/awt/Modal/ToFront/DialogToFrontNonModalTest.java 8221899 linux-all
|
||||
java/awt/Modal/ToBack/ToBackAppModal1Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackAppModal2Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackAppModal3Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackAppModal4Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackAppModal5Test.java 8196441 macosx-all
|
||||
java/awt/Modal/ToBack/ToBackAppModal6Test.java 8196441 linux-all
|
||||
java/awt/Modal/ToBack/ToBackModal1Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackModal2Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackModal3Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackModal4Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackTKModal1Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackTKModal2Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackTKModal3Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackTKModal4Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackTKModal5Test.java 8196441 macosx-all
|
||||
java/awt/Modal/ToBack/ToBackDocModal1Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackDocModal2Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackDocModal3Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackDocModal4Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackDocModal5Test.java 8196441 linux-all,macosx-all
|
||||
java/awt/Modal/ToBack/ToBackModeless1Test.java 8196441 macosx-all,linux-all
|
||||
java/awt/Modal/ToBack/ToBackModeless2Test.java 8196441 macosx-all,linux-all
|
||||
java/awt/Modal/ToBack/ToBackModeless3Test.java 8196441 macosx-all,linux-all
|
||||
java/awt/Modal/ToBack/ToBackModeless4Test.java 8196441 macosx-all,linux-all
|
||||
java/awt/Modal/ToBack/ToBackModeless5Test.java 8196441 macosx-all
|
||||
java/awt/Modal/ToBack/ToBackNonModal1Test.java 8196441 macosx-all,linux-all
|
||||
java/awt/Modal/ToBack/ToBackNonModal2Test.java 8196441 macosx-all,linux-all
|
||||
java/awt/Modal/ToBack/ToBackNonModal3Test.java 8196441 macosx-all,linux-all
|
||||
java/awt/Modal/ToBack/ToBackNonModal4Test.java 8196441 macosx-all,linux-all
|
||||
java/awt/Modal/ToBack/ToBackNonModal5Test.java 8196441 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopAppModal1Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopAppModal2Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopAppModal3Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopAppModal4Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopAppModal5Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopAppModal6Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopDocModal1Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopDocModal2Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopDocModal3Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopDocModal4Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopDocModal5Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopDocModal6Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModal1Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModal2Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModal3Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModal4Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModal5Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModal6Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModeless1Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModeless2Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModeless3Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModeless4Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModeless5Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopModeless6Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopTKModal1Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopTKModal2Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopTKModal3Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopTKModal4Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopTKModal5Test.java 8198666 macosx-all
|
||||
java/awt/Modal/OnTop/OnTopTKModal6Test.java 8198666 macosx-all
|
||||
java/awt/List/SingleModeDeselect/SingleModeDeselect.java 8196367 windows-all
|
||||
java/awt/SplashScreen/MultiResolutionSplash/MultiResolutionSplashTest.java 8061235 macosx-all
|
||||
javax/print/PrintSEUmlauts/PrintSEUmlauts.java 8135174 generic-all
|
||||
java/awt/font/TextLayout/LigatureCaretTest.java 8197821 generic-all
|
||||
java/awt/Graphics2D/DrawString/RotTransText.java 8197797 generic-all
|
||||
java/awt/image/VolatileImage/CustomCompositeTest.java 8199002 windows-all,linux-all
|
||||
java/awt/image/VolatileImage/GradientPaints.java 8199003 linux-all
|
||||
java/awt/JAWT/JAWT.sh 8197798 windows-all,linux-all
|
||||
java/awt/Debug/DumpOnKey/DumpOnKey.java 8202667 windows-all
|
||||
java/awt/Robot/RobotWheelTest/RobotWheelTest.java 8129827 generic-all
|
||||
java/awt/Focus/WindowUpdateFocusabilityTest/WindowUpdateFocusabilityTest.java 8202926 linux-all
|
||||
java/awt/datatransfer/ConstructFlavoredObjectTest/ConstructFlavoredObjectTest.java 8202860 linux-all
|
||||
java/awt/dnd/DisposeFrameOnDragCrash/DisposeFrameOnDragTest.java 8202790 macosx-all,linux-all
|
||||
java/awt/dnd/DragInterceptorAppletTest/DragInterceptorAppletTest.java 8215538 windows-all,macosx-all,linux-all
|
||||
java/awt/dnd/FileListBetweenJVMsTest/FileListBetweenJVMsTest.html 7124379,7188825 macosx-all,linux-all,windows-all
|
||||
java/awt/FileDialog/FilenameFilterTest/FilenameFilterTest.java 8202882 linux-all
|
||||
java/awt/dnd/MissingDragExitEventTest/MissingDragExitEventTest.java 8030121 macosx-all,linux-all
|
||||
java/awt/dnd/NoFormatsCrashTest/NoFormatsCrashTest.html 8214221 windows-all,linux-all,macosx-all
|
||||
java/awt/Choice/ChoicePopupLocation/ChoicePopupLocation.java 8202931 macosx-all,linux-all
|
||||
java/awt/Focus/NonFocusableBlockedOwnerTest/NonFocusableBlockedOwnerTest.java 7124275 macosx-all
|
||||
java/awt/Focus/TranserFocusToWindow/TranserFocusToWindow.java 6848810 macosx-all,linux-all
|
||||
java/awt/Component/NativeInLightShow/NativeInLightShow.java 8202932 linux-all
|
||||
java/awt/FileDialog/ModalFocus/FileDialogModalFocusTest.java 8194751 linux-all
|
||||
java/awt/image/VolatileImage/BitmaskVolatileImage.java 8133102 linux-all
|
||||
java/awt/SplashScreen/MultiResolutionSplash/unix/UnixMultiResolutionSplashTest.java 8203004 linux-all
|
||||
java/awt/Robot/AcceptExtraMouseButtons/AcceptExtraMouseButtons.java 7107528 linux-all,macosx-all
|
||||
java/awt/Mouse/MouseDragEvent/MouseDraggedTest.java 8080676 linux-all
|
||||
java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersInKeyEvent.java 8157147 linux-all,solaris-all,windows-all,macosx-all
|
||||
java/awt/Mouse/TitleBarDoubleClick/TitleBarDoubleClick.java 8148041 linux-all
|
||||
java/awt/Toolkit/DesktopProperties/rfe4758438.java 8193547 linux-all
|
||||
java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Enable.java 6847163
|
||||
java/awt/xembed/server/RunTestXEmbed.java 7034201 linux-all
|
||||
java/awt/Modal/ModalFocusTransferTests/FocusTransferDialogsDocModalTest.java 8164473 linux-all
|
||||
java/awt/im/memoryleak/InputContextMemoryLeakTest.java 8023814 linux-all,solaris-all
|
||||
# below test fails only on Win 7
|
||||
java/awt/font/FontNames/LocaleFamilyNames.java 8213129 windows-all
|
||||
|
||||
java/awt/Frame/DisposeParentGC/DisposeParentGC.java 8079786 macosx-all
|
||||
java/awt/FullScreen/NoResizeEventOnDMChangeTest/NoResizeEventOnDMChangeTest.java 8169468 macosx-all
|
||||
java/awt/GraphicsDevice/CheckDisplayModes.java 8213119 macosx-all
|
||||
java/awt/TextArea/AutoScrollOnSelectAndAppend/AutoScrollOnSelectAndAppend.java 8213120 macosx-all
|
||||
java/awt/Window/MainKeyWindowTest/TestMainKeyWindow.java 8213126 macosx-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_beans
|
||||
|
||||
java/beans/Introspector/8132566/OverridePropertyInfoTest.java 8132565 generic-all
|
||||
java/beans/Introspector/8132566/OverrideUserDefPropertyInfoTest.java 8132565 generic-all
|
||||
|
||||
java/beans/XMLEncoder/Test6570354.java 8015593 macosx-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_lang
|
||||
|
||||
java/lang/StringCoding/CheckEncodings.sh 7008363 generic-all
|
||||
java/lang/ProcessHandle/InfoTest.java 8211847 aix-ppc64
|
||||
java/lang/invoke/LFCaching/LFMultiThreadCachingTest.java 8151492 generic-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_instrument
|
||||
|
||||
java/lang/instrument/RedefineBigClass.sh 8065756 generic-all
|
||||
java/lang/instrument/RetransformBigClass.sh 8065756 generic-all
|
||||
|
||||
java/lang/management/MemoryMXBean/Pending.java 8158837 generic-all
|
||||
java/lang/management/MemoryMXBean/PendingAllGC.sh 8158837 generic-all
|
||||
|
||||
java/lang/management/ThreadMXBean/ThreadMXBeanStateTest.java 8081652 generic-all
|
||||
java/lang/management/ThreadMXBean/AllThreadIds.java 8131745 generic-all
|
||||
|
||||
javax/management/monitor/DerivedGaugeMonitorTest.java 8042211 generic-all
|
||||
javax/management/remote/mandatory/connection/MultiThreadDeadLockTest.java 8042215 generic-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_io
|
||||
|
||||
java/io/pathNames/GeneralWin32.java 8180264 windows-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_management
|
||||
|
||||
com/sun/management/OperatingSystemMXBean/GetProcessCpuLoad.java 8030957 aix-all
|
||||
com/sun/management/OperatingSystemMXBean/GetSystemCpuLoad.java 8030957 aix-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_jmx
|
||||
|
||||
javax/management/MBeanServer/OldMBeanServerTest.java 8030957 aix-all
|
||||
|
||||
javax/management/remote/mandatory/notif/NotifReconnectDeadlockTest.java 8042215 generic-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_net
|
||||
|
||||
java/net/MulticastSocket/NoLoopbackPackets.java 7122846 macosx-all
|
||||
java/net/MulticastSocket/SetLoopbackMode.java 7122846 macosx-all
|
||||
|
||||
java/net/MulticastSocket/Test.java 7145658 macosx-all
|
||||
|
||||
java/net/MulticastSocket/SetGetNetworkInterfaceTest.java 8219083 windows-all
|
||||
|
||||
java/net/DatagramSocket/SendDatagramToBadAddress.java 7143960 macosx-all
|
||||
|
||||
java/net/ServerSocket/AcceptInheritHandle.java 8211854 aix-ppc64
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_nio
|
||||
|
||||
java/nio/Buffer/EqualsCompareTest.java 8193917 solaris-all
|
||||
|
||||
java/nio/channels/DatagramChannel/ChangingAddress.java 7141822 macosx-all
|
||||
|
||||
java/nio/channels/AsynchronousSocketChannel/StressLoopback.java 8211851 aix-ppc64
|
||||
|
||||
java/nio/channels/Selector/Wakeup.java 6963118 windows-all
|
||||
|
||||
java/nio/file/WatchService/Basic.java 7158947 solaris-all Solaris 11
|
||||
java/nio/file/WatchService/MayFlies.java 7158947 solaris-all Solaris 11
|
||||
java/nio/file/WatchService/LotsOfEvents.java 7158947 solaris-all Solaris 11
|
||||
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_rmi
|
||||
|
||||
java/rmi/server/Unreferenced/finiteGCLatency/FiniteGCLatency.java 7140992 generic-all
|
||||
|
||||
java/rmi/transport/rapidExportUnexport/RapidExportUnexport.java 7146541 linux-all
|
||||
|
||||
java/rmi/transport/checkLeaseInfoLeak/CheckLeaseLeak.java 7191877 generic-all
|
||||
|
||||
java/rmi/activation/Activatable/extLoadedImpl/ext.sh 8062724 generic-all
|
||||
|
||||
java/rmi/activation/ActivationGroup/downloadActivationGroup/DownloadActivationGroup.java 8169569 windows-all
|
||||
|
||||
java/rmi/activation/rmidViaInheritedChannel/InheritedChannelNotServerSocket.java 8170562 generic-all
|
||||
|
||||
java/rmi/registry/readTest/CodebaseTest.java 8173324 windows-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_sctp
|
||||
|
||||
com/sun/nio/sctp/SctpMultiChannel/SendFailed.java 8141694 linux-all
|
||||
|
||||
com/sun/nio/sctp/SctpMultiChannel/SocketOptionTests.java 8141694 linux-all
|
||||
|
||||
com/sun/nio/sctp/SctpChannel/SocketOptionTests.java 8141694 linux-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_security
|
||||
|
||||
sun/security/pkcs11/ec/TestKeyFactory.java 8026976 generic-all
|
||||
sun/security/pkcs11/sslecc/ClientJSSEServerJSSE.java 8161536 generic-all
|
||||
|
||||
sun/security/tools/keytool/ListKeychainStore.sh 8156889 macosx-all
|
||||
sun/security/tools/keytool/KeyToolTest.java 8224644 solaris-all
|
||||
sun/security/tools/keytool/WeakAlg.java 8224644 solaris-all
|
||||
|
||||
sun/security/tools/jarsigner/warnings/BadKeyUsageTest.java 8026393 generic-all
|
||||
sun/security/tools/jarsigner/PreserveRawManifestEntryAndDigest.java 8228431 solaris-all
|
||||
|
||||
javax/net/ssl/ServerName/SSLEngineExplorerMatchedSNI.java 8212096 generic-all
|
||||
javax/net/ssl/DTLS/PacketLossRetransmission.java 8169086 macosx-x64
|
||||
javax/net/ssl/DTLS/RespondToRetransmit.java 8169086 macosx-x64
|
||||
javax/net/ssl/DTLS/CipherSuite.java 8202059 macosx-x64
|
||||
|
||||
sun/security/provider/KeyStore/DKSTest.sh 8180266 windows-all
|
||||
|
||||
sun/security/pkcs11/KeyStore/SecretKeysBasic.sh 8209398 generic-all
|
||||
|
||||
security/infra/java/security/cert/CertPathValidator/certification/ActalisCA.java 8224768 generic-all
|
||||
|
||||
sun/security/smartcardio/TestChannel.java 8039280 generic-all
|
||||
sun/security/smartcardio/TestConnect.java 8039280 generic-all
|
||||
sun/security/smartcardio/TestConnectAgain.java 8039280 generic-all
|
||||
sun/security/smartcardio/TestControl.java 8039280 generic-all
|
||||
sun/security/smartcardio/TestDefault.java 8039280 generic-all
|
||||
sun/security/smartcardio/TestDirect.java 8039280 generic-all
|
||||
sun/security/smartcardio/TestExclusive.java 8039280 generic-all
|
||||
sun/security/smartcardio/TestMultiplePresent.java 8039280 generic-all
|
||||
sun/security/smartcardio/TestPresent.java 8039280 generic-all
|
||||
sun/security/smartcardio/TestTransmit.java 8039280 generic-all
|
||||
com/sun/crypto/provider/Cipher/DES/PerformanceTest.java 8039280 generic-all
|
||||
com/sun/security/auth/callback/TextCallbackHandler/Default.java 8039280 generic-all
|
||||
com/sun/security/auth/callback/TextCallbackHandler/Password.java 8039280 generic-all
|
||||
com/sun/security/sasl/gsskerb/AuthOnly.java 8039280 generic-all
|
||||
com/sun/security/sasl/gsskerb/ConfSecurityLayer.java 8039280 generic-all
|
||||
com/sun/security/sasl/gsskerb/NoSecurityLayer.java 8039280 generic-all
|
||||
javax/security/auth/kerberos/KerberosHashEqualsTest.java 8039280 generic-all
|
||||
javax/security/auth/kerberos/KerberosTixDateTest.java 8039280 generic-all
|
||||
sun/security/provider/PolicyFile/GrantAllPermToExtWhenNoPolicy.java 8039280 generic-all
|
||||
sun/security/provider/PolicyParser/ExtDirsChange.java 8039280 generic-all
|
||||
sun/security/provider/PolicyParser/PrincipalExpansionError.java 8039280 generic-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_sound
|
||||
javax/sound/sampled/DirectAudio/bug6372428.java 8055097 generic-all
|
||||
javax/sound/sampled/Clip/bug5070081.java 8055097 generic-all
|
||||
javax/sound/sampled/DataLine/LongFramePosition.java 8055097 generic-all
|
||||
|
||||
javax/sound/sampled/Clip/Drain/ClipDrain.java 7062792 generic-all
|
||||
|
||||
javax/sound/sampled/Mixers/DisabledAssertionCrash.java 7067310 generic-all
|
||||
|
||||
javax/sound/midi/Sequencer/Recording.java 8167580 linux-all,solaris-all
|
||||
javax/sound/midi/Sequencer/MetaCallback.java 8178698 linux-all,solaris-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_imageio
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_swing
|
||||
|
||||
com/sun/java/swing/plaf/windows/Test8173145.java 8198334 windows-all
|
||||
|
||||
javax/swing/border/TestTitledBorderLeak.java 8213531 linux-all
|
||||
javax/swing/JColorChooser/Test8051548.java 8233647 macosx-all
|
||||
javax/swing/JComponent/7154030/bug7154030.java 7190978 generic-all
|
||||
javax/swing/JComboBox/ConsumedKeyTest/ConsumedKeyTest.java 8067986 generic-all
|
||||
javax/swing/JComponent/6683775/bug6683775.java 8172337 generic-all
|
||||
javax/swing/JComboBox/6236162/bug6236162.java 8028707 windows-all,macosx-all
|
||||
javax/swing/JPopupMenu/4458079/bug4458079.java 8233556 macosx-all
|
||||
javax/swing/JPopupMenu/4634626/bug4634626.java 8233556 macosx-all
|
||||
javax/swing/JPopupMenu/4870644/bug4870644.java 8194130 macosx-all,linux-all
|
||||
javax/swing/JPopupMenu/4966112/bug4966112.java 8064915 macosx-all
|
||||
javax/swing/JPopupMenu/6544309/bug6544309.java 8233556 macosx-all
|
||||
javax/swing/JPopupMenu/6827786/bug6827786.java 8233556 macosx-all
|
||||
javax/swing/JPopupMenu/7156657/bug7156657.java 8171381 macosx-all
|
||||
javax/swing/JRadioButton/8033699/bug8033699.java 8233555 macosx-all
|
||||
javax/swing/JRadioButton/8041561/bug8041561.java 8233555 macosx-all
|
||||
javax/swing/JSplitPane/4885629/bug4885629.java 8019935 macosx-all
|
||||
|
||||
javax/swing/text/html/parser/Test8017492.java 8022535 generic-all
|
||||
javax/swing/JWindow/ShapedAndTranslucentWindows/PerPixelTranslucentSwing.java 8194128 macosx-all
|
||||
javax/swing/JWindow/ShapedAndTranslucentWindows/SetShapeAndClickSwing.java 8013450 macosx-all
|
||||
javax/swing/JWindow/ShapedAndTranslucentWindows/TranslucentJComboBox.java 8024627 macosx-all
|
||||
# The next test below is an intermittent failure
|
||||
javax/swing/JComboBox/8033069/bug8033069ScrollBar.java 8163367 generic-all
|
||||
javax/swing/JColorChooser/Test6541987.java 8143021 windows-all,linux-all,macosx-all
|
||||
javax/swing/JColorChooser/Test7194184.java 8194126 linux-all,macosx-all
|
||||
javax/swing/JTable/7124218/SelectEditTableCell.java 8148958 linux-all
|
||||
javax/swing/JTable/4235420/bug4235420.java 8079127 generic-all
|
||||
javax/swing/JSplitPane/4201995/bug4201995.java 8079127 generic-all
|
||||
javax/swing/JTree/DnD/LastNodeLowerHalfDrop.java 8159131 linux-all
|
||||
javax/swing/JTree/4633594/JTreeFocusTest.java 8173125 macosx-all
|
||||
javax/swing/JFileChooser/8041694/bug8041694.java 8196302 windows-all
|
||||
javax/swing/AbstractButton/6711682/bug6711682.java 8060765 windows-all,macosx-all
|
||||
javax/swing/Action/8133039/bug8133039.java 8196089 windows-all,macosx-all
|
||||
javax/swing/JComboBox/6559152/bug6559152.java 8196090 windows-all,macosx-all
|
||||
javax/swing/JComboBox/8032878/bug8032878.java 8196092,8196439 windows-all,macosx-all,linux-all
|
||||
javax/swing/JComboBox/8057893/bug8057893.java 8169953 windows-all,macosx-all
|
||||
javax/swing/JComboBox/8072767/bug8072767.java 8196093 windows-all,macosx-all
|
||||
javax/swing/JComponent/4337267/bug4337267.java 8146451 windows-all
|
||||
javax/swing/JFileChooser/4524490/bug4524490.java 8042380 generic-all
|
||||
javax/swing/JFileChooser/8002077/bug8002077.java 8196094 windows-all
|
||||
javax/swing/JFileChooser/DeserializedJFileChooser/DeserializedJFileChooserTest.java 8196095 generic-all
|
||||
javax/swing/JFileChooser/6396844/TwentyThousandTest.java 8198003 generic-all
|
||||
javax/swing/JFrame/8175301/ScaledFrameBackgroundTest.java 8193942 generic-all
|
||||
javax/swing/JList/6462008/bug6462008.java 7156347 generic-all
|
||||
javax/swing/JPopupMenu/6580930/bug6580930.java 7124313 macosx-all
|
||||
javax/swing/JPopupMenu/6800513/bug6800513.java 7184956 macosx-all
|
||||
javax/swing/JPopupMenu/6675802/bug6675802.java 8196097 windows-all
|
||||
javax/swing/JTabbedPane/8007563/Test8007563.java 8051591 generic-all
|
||||
javax/swing/JTabbedPane/4624207/bug4624207.java 8064922 macosx-all
|
||||
javax/swing/JTabbedPane/7024235/Test7024235.java 8028281 macosx-all
|
||||
javax/swing/SwingUtilities/TestBadBreak/TestBadBreak.java 8160720 generic-all
|
||||
javax/swing/plaf/basic/Test6984643.java 8198340 windows-all
|
||||
javax/swing/text/CSSBorder/6796710/bug6796710.java 8196099 windows-all
|
||||
javax/swing/text/DefaultCaret/HidingSelection/HidingSelectionTest.java 8194048 windows-all
|
||||
javax/swing/text/DefaultCaret/HidingSelection/MultiSelectionTest.java 8213562 linux-all
|
||||
javax/swing/text/JTextComponent/5074573/bug5074573.java 8196100 windows-all
|
||||
javax/swing/JFileChooser/6798062/bug6798062.java 8146446 windows-all
|
||||
javax/swing/JComboBox/8182031/ComboPopupTest.java 8196465 linux-all,macosx-all
|
||||
javax/swing/JFileChooser/6738668/bug6738668.java 8194946 generic-all
|
||||
javax/swing/JFileChooser/8021253/bug8021253.java 8169954 windows-all,linux-all,macosx-all
|
||||
javax/swing/JFileChooser/8062561/bug8062561.java 8196466 linux-all,macosx-all
|
||||
javax/swing/JInternalFrame/5066752/bug5066752.java 8207850 macosx-all
|
||||
javax/swing/JInternalFrame/8069348/bug8069348.java 8208570 macosx-all
|
||||
javax/swing/JInternalFrame/Test6325652.java 8224977 macosx-all
|
||||
javax/swing/JLabel/6596966/bug6596966.java 8040914 macosx-all
|
||||
javax/swing/MultiUIDefaults/Test6860438.java 8198391 generic-all
|
||||
javax/swing/MultiUIDefaults/4300666/bug4300666.java 7105119 macosx-all
|
||||
javax/swing/UITest/UITest.java 8198392 generic-all
|
||||
javax/swing/plaf/basic/BasicComboBoxEditor/Test8015336.java 8198394 generic-all
|
||||
javax/swing/plaf/metal/MetalLookAndFeel/Test8039750.java 8198395 generic-all
|
||||
javax/swing/text/DevanagariEditor.java 8198397 generic-all
|
||||
javax/swing/SpringLayout/4726194/bug4726194.java 8198399 generic-all
|
||||
javax/swing/SwingUtilities/6797139/bug6797139.java 8198400 generic-all
|
||||
javax/swing/text/html/parser/Parser/6836089/bug6836089.java 8198401 generic-all
|
||||
javax/swing/JTable/8133919/DrawGridLinesTest.java 8198407 generic-all
|
||||
javax/swing/text/html/StyleSheet/BackgroundImage/BackgroundImagePosition.java 8198409 generic-all
|
||||
javax/swing/text/AbstractDocument/DocumentInsert/DocumentInsertAtWrongPositionTest.java 8198396 generic-all
|
||||
javax/swing/JFileChooser/6868611/bug6868611.java 7059834 windows-all
|
||||
javax/swing/SwingWorker/6493680/bug6493680.java 8198410 windows-all
|
||||
javax/swing/PopupFactory/6276087/NonOpaquePopupMenuTest.java 8065099 macosx-all
|
||||
javax/swing/DataTransfer/8059739/bug8059739.java 8199074 generic-all
|
||||
javax/swing/JCheckBox/8032667/bug8032667_image_diff.java 8199063 macosx-all
|
||||
javax/swing/JComboBox/7031551/bug7031551.java 8199056 generic-all
|
||||
javax/swing/JScrollBar/6924059/bug6924059.java 8199078 generic-all
|
||||
javax/swing/JTree/8003830/bug8003830.java 8199057 generic-all
|
||||
javax/swing/plaf/nimbus/ColorCustomizationTest.java 8199080 generic-all
|
||||
javax/swing/SwingWorker/6432565/bug6432565.java 8199077 generic-all
|
||||
javax/swing/SwingWorker/6880336/NestedWorkers.java 8199049 windows-all
|
||||
javax/swing/text/DefaultCaret/6938583/bug6938583.java 8199058 generic-all
|
||||
javax/swing/text/html/parser/Parser/6990651/bug6990651.java 8199060 generic-all
|
||||
javax/swing/text/html/parser/Parser/HtmlCommentTagParseTest/HtmlCommentTagParseTest.java 8199073 generic-all
|
||||
javax/swing/text/StyledEditorKit/8016833/bug8016833.java 8199055 generic-all
|
||||
javax/swing/text/Utilities/8134721/bug8134721.java 8199062 generic-all
|
||||
javax/swing/tree/DefaultTreeCellRenderer/7142955/bug7142955.java 8199076 generic-all
|
||||
javax/swing/UIDefaults/6302464/bug6302464.java 8199079 generic-all
|
||||
javax/swing/UIDefaults/8133926/InternalFrameIcon.java 8199075 generic-all
|
||||
javax/swing/UIDefaults/8149879/InternalResourceBundle.java 8199054 windows-all
|
||||
javax/swing/text/html/parser/Parser/8078268/bug8078268.java 8199092 generic-all
|
||||
javax/swing/PopupFactory/8048506/bug8048506.java 8202660 windows-all
|
||||
javax/swing/JTextArea/TextViewOOM/TextViewOOM.java 8167355 generic-all
|
||||
javax/swing/text/Utilities/8142966/SwingFontMetricsTest.java 8199529 windows-all
|
||||
javax/swing/JPopupMenu/8075063/ContextMenuScrollTest.java 202880 linux-all
|
||||
javax/swing/dnd/8139050/NativeErrorsInTableDnD.java 8202765 macosx-all,linux-all
|
||||
javax/swing/Popup/TaskbarPositionTest.java 8065097 macosx-all,linux-all
|
||||
javax/swing/JButton/4368790/bug4368790.java 8213123 macosx-all
|
||||
javax/swing/JEditorPane/6917744/bug6917744.java 8213124 macosx-all
|
||||
javax/swing/JTable/6263446/bug6263446.java 8169959 macosx-all
|
||||
javax/swing/JTree/6263446/bug6263446.java 8213125 macosx-all
|
||||
javax/swing/JTree/8003400/Test8003400.java 8197560 macosx-all,linux-all
|
||||
javax/swing/RepaintManager/IconifyTest/IconifyTest.java 8221903 linux-all
|
||||
javax/swing/JRadioButton/FocusTraversal/FocusTraversal.java 8221902 linux-all
|
||||
|
||||
sanity/client/SwingSet/src/ToolTipDemoTest.java 8225012 windows-all
|
||||
sanity/client/SwingSet/src/ScrollPaneDemoTest.java 8225013 linux-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_text
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_time
|
||||
|
||||
|
||||
############################################################################
|
||||
|
||||
# core_tools
|
||||
|
||||
tools/pack200/CommandLineTests.java 8059906 generic-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_jdi
|
||||
|
||||
com/sun/jdi/RepStep.java 8043571 generic-all
|
||||
|
||||
com/sun/jdi/NashornPopFrameTest.java 8187143 generic-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_time
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_util
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_instrument
|
||||
|
||||
############################################################################
|
||||
|
||||
# svc_tools
|
||||
|
||||
sun/tools/jstat/jstatClassloadOutput1.sh 8173942 generic-all
|
||||
sun/tools/jhsdb/BasicLauncherTest.java 8193639,8211767 solaris-all,linux-ppc64,linux-ppc64le
|
||||
sun/tools/jhsdb/HeapDumpTest.java 8193639 solaris-all
|
||||
sun/tools/jhsdb/HeapDumpTestWithActiveProcess.java 8230731,8001227 windows-all
|
||||
sun/tools/jhsdb/HeapDumpTestWithActiveProcess.java 8231635,8231634 generic-all
|
||||
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_other
|
||||
|
||||
com/sun/jndi/ldap/DeadSSLLdapTimeoutTest.java 8169942 linux-i586,macosx-all,windows-x64
|
||||
|
||||
com/sun/jndi/dns/ConfigTests/PortUnreachable.java 7164518 macosx-all
|
||||
|
||||
javax/rmi/ssl/SSLSocketParametersTest.sh 8162906 generic-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_jfr
|
||||
|
||||
jdk/jfr/event/io/TestInstrumentation.java 8202142 generic-all
|
||||
jdk/jfr/api/recording/event/TestPeriod.java 8215890 generic-all
|
||||
jdk/jfr/event/io/EvilInstrument.java 8221331 generic-all
|
||||
jdk/jfr/event/runtime/TestNetworkUtilizationEvent.java 8228990,8229370 generic-all
|
||||
jdk/jfr/event/compiler/TestCodeSweeper.java 8225209 generic-all
|
||||
|
||||
############################################################################
|
||||
|
||||
# jdk_internal
|
||||
|
||||
jdk/internal/platform/docker/TestDockerMemoryMetrics.java 8227317 linux-x64
|
||||
|
||||
############################################################################
|
||||
|
||||
# no printer found
|
||||
java/awt/print/PrinterJob/ExceptionTest.java nobug generic-all
|
||||
java/awt/print/PrinterJob/ImagePrinting/NullClipARGB.java nobug generic-all
|
||||
java/awt/print/PrinterJob/PrintCrashTest.java nobug generic-all
|
||||
java/awt/print/PrinterJob/PrtException.java nobug generic-all
|
||||
javax/print/attribute/ChromaticityValues.java nobug generic-all
|
||||
javax/print/CheckDupFlavor.java nobug generic-all
|
||||
javax/print/PrintSE/PrintSE.sh nobug generic-all
|
||||
javax/print/PrintServiceLookup/CountPrintServices.java nobug generic-all
|
||||
javax/print/attribute/AttributeTest.java nobug generic-all
|
||||
javax/print/attribute/GetCopiesSupported.java nobug generic-all
|
||||
javax/print/attribute/SidesPageRangesTest.java nobug generic-all
|
||||
javax/print/attribute/SupportedPrintableAreas.java nobug generic-all
|
||||
|
||||
java/awt/image/VolatileImage/CustomCompositeTest.java JBR-2262 generic-all
|
||||
java/awt/image/VolatileImage/TransparentVImage.java JBR-2262 generic-all
|
||||
java/awt/image/VolatileImage/DrawHugeImageTest.java JBR-2262 generic-all
|
||||
java/awt/image/DrawImage/IncorrectAlphaConversionBicubic.java JBR-2262 generic-all
|
||||
javax/swing/JLightweightFrame/ResizedMovedEvents.java JBR-2262 generic-all
|
||||
java/awt/image/DrawImage/IncorrectBounds.java JBR-2262 generic-all
|
||||
java/awt/image/DrawImage/IncorrectClipXorModeSurface2Surface.java JBR-2262 generic-all
|
||||
java/awt/image/DrawImage/IncorrectClipXorModeSW2Surface.java JBR-2262 generic-all
|
||||
java/awt/image/DrawImage/IncorrectUnmanagedImageRotatedClip.java JBR-2262 generic-all
|
||||
java/awt/image/VolatileImage/DrawBufImgOp.java JBR-2262 generic-all
|
||||
javax/swing/JMenuBar/MisplacedBorder/MisplacedBorder.java JBR-2262 generic-all
|
||||
0
test/jdk/jbcommitProblemList.txt
Normal file
0
test/jdk/jbcommitProblemList.txt
Normal file
Reference in New Issue
Block a user