1 # Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved. 2 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 # 4 # This code is free software; you can redistribute it and/or modify it 5 # under the terms of the GNU General Public License version 2 only, as 6 # published by the Free Software Foundation. 7 # 8 # This code is distributed in the hope that it will be useful, but WITHOUT 9 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 10 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 11 # version 2 for more details (a copy is included in the LICENSE file that 12 # accompanied this code). 13 # 14 # You should have received a copy of the GNU General Public License version 15 # 2 along with this work; if not, write to the Free Software Foundation, 16 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 17 # 18 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 19 # or visit www.oracle.com if you need additional information or have any 20 # questions. 21 22 23 24 # build-for-jtreg.sh -- 25 # 26 # This script builds the binaries needed by the tests under ../../runtime/cds/appcds/applications/ 27 # It also prints out the arguments to be added to the jtreg command-line 28 29 # Edit the following according to your local setting, or pass them in like this 30 # 31 # env BLDJDK_HOME=/my/java/home ROOT=/my/repo MVN=${HOME}/bin/maven/apache-maven-3.8.8/bin/mvn bash build-for-jtreg.sh 32 # 33 if test "$BLDJDK_HOME" = ""; then 34 # you need JDK 21 35 BLDJDK_HOME=/jdk3/official/jdk21 36 fi 37 38 if test "$ROOT" = ""; then 39 # This is your copy of https://github.com/openjdk/leyden/tree/premain 40 ROOT=/jdk3/le4/open 41 fi 42 43 # MVN should point to the mvn executable. You need at least 3.8.2 44 # If MVN is not specified, we will use the mvn installed in your $PATH 45 if test "$MVN" != ""; then 46 MVNARG="MVN=$MVN" 47 else 48 MVNARG= 49 fi 50 51 cd $ROOT/test/hotspot/jtreg/premain 52 for i in helidon-quickstart-se micronaut-first-app quarkus-getting-started spring-petclinic; do 53 (cd $i; make app BLDJDK_HOME=${BLDJDK_HOME} ${MVNARG}) || exit 1 54 done 55 56 PM=$ROOT/test/hotspot/jtreg/premain 57 echo Add the following to your jtreg command-line 58 echo " -vmoption:-Djdk.test.lib.artifacts.helidon-quickstart-se=$PM/helidon-quickstart-se/helidon-quickstart-se \\" 59 echo " -vmoption:-Djdk.test.lib.artifacts.micronaut-first-app=$PM/micronaut-first-app/download/target \\" 60 echo " -vmoption:-Djdk.test.lib.artifacts.quarkus-getting-started=$PM/quarkus-getting-started/getting-started/target \\" 61 echo " -vmoption:-Djdk.test.lib.artifacts.spring-petclinic=$PM/spring-petclinic/petclinic-snapshot/target/spring-petclinic-3.2.0.zip \\" 62 63 exit 64 65 =============================================================================== 66 This is how Ioi executes the tests: 67 68 env JAVA_HOME=/jdk3/official/jdk22 \ 69 /jdk3/official/jtreg7.3.1/bin/jtreg \ 70 -J-Djavatest.maxOutputSize=10000000 \ 71 -conc:1 \ 72 -testjdk:/jdk3/bld/le4-fastdebug/images/jdk \ 73 -compilejdk:/jdk3/bld/le4/images/jdk \ 74 -verbose:2 \ 75 -timeout:4.0 \ 76 -agentvm \ 77 -vmoptions:-XX:MaxRAMPercentage=6 \ 78 -noreport \ 79 -vmoption:-Djdk.test.lib.artifacts.helidon-quickstart-se=/jdk3/le4/open/test/hotspot/jtreg/premain/helidon-quickstart-se/helidon-quickstart-se \ 80 -vmoption:-Djdk.test.lib.artifacts.micronaut-first-app=/jdk3/le4/open/test/hotspot/jtreg/premain/micronaut-first-app/download/target \ 81 -vmoption:-Djdk.test.lib.artifacts.quarkus-getting-started=/jdk3/le4/open/test/hotspot/jtreg/premain/quarkus-getting-started/getting-started/target \ 82 -vmoption:-Djdk.test.lib.artifacts.spring-petclinic=/jdk3/le4/open/test/hotspot/jtreg/premain/spring-petclinic/petclinic-snapshot/target/spring-petclinic-3.2.0.zip \ 83 -w /home/iklam/tmp/jtreg/work \ 84 HelidonQuickStartSE.java#static \ 85 MicronautFirstApp.java#static \ 86 QuarkusGettingStarted.java#static \ 87 spring-petclinic/SpringPetClinicStatic.java