From 0f520dfb4222bca2a812f45dadc78b9e04796a1e Mon Sep 17 00:00:00 2001 From: Skylot Date: Mon, 18 Mar 2013 21:05:00 +0400 Subject: [PATCH] Add gradle files --- build.gradle | 93 +++++++++++++ gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 46735 bytes gradle/wrapper/gradle-wrapper.properties | 5 + gradlew | 164 +++++++++++++++++++++++ gradlew.bat | 90 +++++++++++++ 5 files changed, 352 insertions(+) create mode 100644 build.gradle create mode 100644 gradle/wrapper/gradle-wrapper.jar create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100755 gradlew create mode 100644 gradlew.bat diff --git a/build.gradle b/build.gradle new file mode 100644 index 00000000..30b2f2a8 --- /dev/null +++ b/build.gradle @@ -0,0 +1,93 @@ +apply plugin: 'java' +apply plugin: 'application' + +apply plugin: 'eclipse' +apply plugin: 'idea' + +sourceCompatibility = 1.6 +targetCompatibility = 1.6 + +version = 'dev' + +mainClassName = "jadx.Main" + +project.ext { + mainSamplesClass = "jadx.samples.RunTests" + samplesJadxSrcDir = "${buildDir}/samples-jadx/src" +} + +dependencies { + compile 'com.google.android.tools:dx:1.7' + compile 'com.beust:jcommander:1.30' + compile 'org.slf4j:slf4j-api:1.6.6' + compile 'ch.qos.logback:logback-classic:1.0.9' + testCompile 'junit:junit:4.8.2' +} + +repositories { + mavenCentral() +} + +sourceSets { + samples + //TODO don't add to eclipse classpath + samplesJadx { + java { + srcDir samplesJadxSrcDir + output.classesDir "${buildDir}/samples-jadx/output" + } + } +} + +task samplesRun(type: JavaExec, dependsOn: compileSamplesJava) { + classpath = sourceSets.samples.output + main = mainSamplesClass +} + +task samplesJar(type: Jar, dependsOn: samplesRun) { + baseName = 'samples' + from sourceSets.samples.output +} + +task samplesJadxCreate(type: JavaExec, dependsOn: [compileJava, samplesJar]) { + classpath = sourceSets.main.output + configurations.compile + main = mainClassName + args = ['-d', samplesJadxSrcDir, samplesJar.archivePath] +} + +compileSamplesJadxJava.dependsOn samplesJadxCreate + +task samplesJadxRun(type: JavaExec, dependsOn: compileSamplesJadxJava) { + classpath = sourceSets.samplesJadx.output + main = mainSamplesClass +} + +task samples (dependsOn: samplesJadxRun) { +} + +//check.dependsOn samples +build.dependsOn distZip +build.dependsOn installApp + +startScripts { + doLast { + // increase default max heap size + String var = 'DEFAULT_JVM_OPTS=' + String args = '-Xmx1500M' + unixScript.text = unixScript.text.replace(var + '""', var + '"' + args + '"') + windowsScript.text = windowsScript.text.replace(var, var + args) + } +} + +applicationDistribution.with { + into('') { + from '.' + include 'README.md' + include 'NOTICE' + } +} + +task wrapper(type: Wrapper) { + gradleVersion = '1.4' +} + diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..42d9b0e9c5872910311a1d035995ab8ec466e7ac GIT binary patch literal 46735 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 \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >&- +APP_HOME="`pwd -P`" +cd "$SAVED" >&- + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules +function splitJvmOpts() { + JVM_OPTS=("$@") +} +eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS +JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" + +exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 00000000..aec99730 --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,90 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega -- GitLab