From 959830c6520970d01d12a055d8baad0f0e4ada15 Mon Sep 17 00:00:00 2001 From: Dan Vargas <10914883+dvargas46@users.noreply.github.com> Date: Mon, 26 Apr 2021 19:18:52 -0500 Subject: [PATCH] pkg(groovy-3.0.7): add compile step (#232) Co-authored-by: Vargas, Dan --- packages/groovy/3.0.7/build.sh | 3 ++- packages/groovy/3.0.7/compile | 17 +++++++++++++++++ packages/groovy/3.0.7/environment | 7 ++++++- packages/groovy/3.0.7/run | 4 +++- 4 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 packages/groovy/3.0.7/compile diff --git a/packages/groovy/3.0.7/build.sh b/packages/groovy/3.0.7/build.sh index ae1ecc5..fb6321d 100755 --- a/packages/groovy/3.0.7/build.sh +++ b/packages/groovy/3.0.7/build.sh @@ -8,6 +8,7 @@ tar xzf java.tar.gz --strip-components=1 rm java.tar.gz cd .. -curl -L "https://dl.bintray.com/groovy/maven/apache-groovy-binary-3.0.7.zip" -o groovy.zip +# Download Groovy binaries +curl -L "https://groovy.jfrog.io/artifactory/dist-release-local/groovy-zips/apache-groovy-binary-3.0.7.zip" -o groovy.zip unzip -q groovy.zip rm groovy.zip diff --git a/packages/groovy/3.0.7/compile b/packages/groovy/3.0.7/compile new file mode 100644 index 0000000..c501c9e --- /dev/null +++ b/packages/groovy/3.0.7/compile @@ -0,0 +1,17 @@ +#!/bin/bash + +# Compile groovy scripts into a separate "classes" directory +# NOTE: - Main file MUST be a groovy script +# - not supporting object class entry points as of now +groovyc -d classes "$@" + +# Create the Manifest and include groovy jars: +# NOTE: - main class will be the first file ('.' becomes '_' and without the extension) +# - groovy lib jars MUST be in the class path in order to work properly +echo "Main-Class: $(sed 's/\./\_/g'<<<${1%.*}) +Class-Path: $(echo $GROOVY_HOME/lib/*.jar | sed 's/\s/\n /g') + +" > manifest.txt + +# Create the jar from the manifest and classes +jar cfm out.jar manifest.txt -C classes . diff --git a/packages/groovy/3.0.7/environment b/packages/groovy/3.0.7/environment index 842a62b..1817781 100644 --- a/packages/groovy/3.0.7/environment +++ b/packages/groovy/3.0.7/environment @@ -2,4 +2,9 @@ # Groovy requires JAVA_HOME to be set export JAVA_HOME=$PWD/java -export PATH=$PWD/groovy-3.0.7/bin:$PATH + +# GROOVY_HOME needed to get the groovy libs +export GROOVY_HOME=$PWD/groovy-3.0.7 + +# Add java and groovy binaries to the path +export PATH=$PWD/java/bin:$PWD/groovy-3.0.7/bin:$PATH diff --git a/packages/groovy/3.0.7/run b/packages/groovy/3.0.7/run index e31d7d4..813d3bc 100644 --- a/packages/groovy/3.0.7/run +++ b/packages/groovy/3.0.7/run @@ -1,3 +1,5 @@ #!/bin/bash -groovy "$@" +# Run the jar created during compile +shift +java -jar out.jar "$@"