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 # Leyden-premain + Helidon helidon-quickstart-se demo
24 # (https://helidon.io/docs/v4/se/guides/quickstart)
25 #
26 # See ../lib/DemoSupport.gmk for the "make" targets that build the demo, run the
27 # demo, and gather benchmarking data.
28 #===============================================================================
29 
30 # The following needs to be defined before including ../lib/DemoSupport.gmk
31 DEMO_NAME       = helidon-quickstart-se
32 DEMO_SRC        = helidon-quickstart-se/src/main/java/io/helidon/examples/quickstart/se/Main.java
33 DEMO_JAR        = helidon-quickstart-se/target/helidon-quickstart-se.jar
34 DEMO_CMDLINE    = -DautoQuit=true -Dserver.port=0 -jar ${DEMO_JAR}
35 # This is for uploading into Artifactory, usually to a path like
36 #    https://xxxx.com/artifactory/yyyy/io/helidon/helidon-quickstart-se/4.0.7/helidon-quickstart-se-4.0.7.zip
37 DEMO_ARTIFACT   = helidon-quickstart-se-4.0.7.zip
38 
39 include ../lib/DemoSupport.gmk
40 
41 # Create the project using instructions from https://helidon.io/docs/v4/se/guides/quickstart, then
42 # patch it to add some start-up timing data.
43 ${DEMO_SRC}: Main.java.diff
44 	JAVA_HOME=${BLDJDK_HOME} mvn -U archetype:generate -DinteractiveMode=false \
45 	    -DarchetypeGroupId=io.helidon.archetypes \
46 	    -DarchetypeArtifactId=helidon-quickstart-se \
47 	    -DarchetypeVersion=4.0.7 \
48 	    -DgroupId=io.helidon.examples \
49 	    -DartifactId=helidon-quickstart-se \
50 	    -Dpackage=io.helidon.examples.quickstart.se
51 	patch ${DEMO_SRC} Main.java.diff
52 
53 
54 ${DEMO_ARTIFACT}: ${DEMO_JAR}
55 	${JAR} cvfM ${DEMO_ARTIFACT} \
56 		-C helidon-quickstart-se target/helidon-quickstart-se.jar \
57 		-C helidon-quickstart-se target/libs
58 
59 ${DEMO_JAR}: ${DEMO_SRC}
60 	cd helidon-quickstart-se && JAVA_HOME=${BLDJDK_HOME} mvn package
61 
62 clean: clean0
63 	rm -rf helidon-quickstart-se ${DEMO_ARTIFACT}
64 
65 clean0:
66 	rm -f *.cds *.cds.code *.classlist *.jsa *~ *.log *.log.* hs_err_*
67