From 2f36d508c44e599650114d5acb1a408c2be36298 Mon Sep 17 00:00:00 2001
From: Fredric Silberberg <333fred@users.noreply.github.com>
Date: Sat, 2 Jul 2016 16:32:14 -0700
Subject: [PATCH] Gradle 2.14 (#118)
Updates the gradle version to 2.14. In doing so, some model elements have changed. Additionally, some redundant elements have been removed from the gradle scripts.
---
build.gradle | 4 ++
cppSettings.gradle | 59 ++++--------------
gradle/wrapper/gradle-wrapper.jar | Bin 53638 -> 53319 bytes
gradle/wrapper/gradle-wrapper.properties | 4 +-
gradlew | 46 +++++++-------
gradlew.bat | 8 +--
hal/build.gradle | 6 +-
simulation/SimDS/build.gradle | 2 +-
test-scripts/config.sh | 2 +-
wpilibc/athena.gradle | 74 +++++++++++++----------
wpilibcIntegrationTests/build.gradle | 4 +-
wpilibj/athena.gradle | 12 ++--
wpilibjIntegrationTests/build.gradle | 26 +-------
13 files changed, 107 insertions(+), 140 deletions(-)
diff --git a/build.gradle b/build.gradle
index c424857a39..7921716cf2 100644
--- a/build.gradle
+++ b/build.gradle
@@ -63,3 +63,7 @@ subprojects {
}
apply from: 'cppSettings.gradle'
+
+task wrapper(type: Wrapper) {
+ gradleVersion = '2.14'
+}
diff --git a/cppSettings.gradle b/cppSettings.gradle
index 77c4ece891..91ccca00d2 100644
--- a/cppSettings.gradle
+++ b/cppSettings.gradle
@@ -60,27 +60,17 @@ subprojects {
ext.netTables = netTablesUnzipLocation
ext.netTablesInclude = "$netTablesUnzipLocation/include"
ext.netLibArmLocation = "$netTablesUnzipLocation/Linux/arm"
- if (project.hasProperty('makeSim')){
- ext.netLibDesktopLocation = "$netTablesUnzipLocation/Linux/amd64"
+ if (project.hasProperty('makeSim')) {
+ ext.netLibDesktopLocation = "$netTablesUnzipLocation/Linux/amd64"
}
ext.netSharedLib = "$netLibArmLocation/libntcore.so"
ext.netStaticLib = "$netLibArmLocation/libntcore.a"
- task addNetworkTablesLibraryLinks() {
- description = 'Adds the linker flags for the networktables libraries retreived from maven'
- group = 'WPILib'
- dependsOn project(':').unzipNetworkTables
- doLast {
- binaries.all {
- tasks.withType(CppCompile) {
- // desktop version doesn't use all the NI libraries
- // so only do this for arm libraries
- String architecture = targetPlatform.architecture
- if (architecture.contains('arm')){
- linker.args netStaticLib
- }
- }
- }
+ ext.addNetworkTablesLibraryLinks = { compileTask, linker, targetPlatform ->
+ compileTask.dependsOn project(':').unzipNetworkTables
+ String architecture = targetPlatform.architecture
+ if (architecture.contains('arm')) {
+ linker.args netStaticLib
}
}
}
@@ -158,36 +148,11 @@ subprojects {
}
// This task adds the appropriate linker flags for the NI libraries
- task addNiLibraryLinks() {
- description = 'Adds the linker flags for the NI libraries in the ni-library folders'
- group = 'WPILib'
- doLast {
- binaries.all {
- tasks.withType(CppCompile) {
- // desktop version doesn't use all the NI libraries
- // so only do this for arm libraries
- String architecture = targetPlatform.architecture
- if (architecture.contains('arm')){
- linker.args << '-L' + niLibraryPath
- linker.args.addAll(niLibraryArgs)
- }
- }
- }
- model {
- repositories {
- libs(PrebuiltLibraries) { libs ->
- // Loops through all .so files (except files matching *libwpi*.so) in ../ni-libraries
- // and includes them for linking
- niLibraryTree.each { niLib ->
- libs.create(niLib) {
- binaries.withType(SharedLibraryBinary) {
- sharedLibraryFile = file(niLib.path)
- }
- }
- }
- }
- }
- }
+ ext.addNiLibraryLinks = { linker, targetPlatform ->
+ String architecture = targetPlatform.architecture
+ if (architecture.contains('arm')){
+ linker.args << '-L' + niLibraryPath
+ linker.args.addAll(niLibraryArgs)
}
}
}
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index e8c6bf7bb47dff6b81c2cf7a349eb7e912c9fbe2..d3b83982b9b1bccad955349d702be9b884c6e049 100644
GIT binary patch
delta 5489
zcmZWs2{=^k`yOL0#y*y5H1>VXl3m#;g=EjxSjv(uM4C`!kCQA(3Q3D~(5EEE3?^#{
zkzKNssAP@*nHgVw^Z%XeI@fvTnftk)`+45?yyt!6i)h;lX<03g(bDaQK$w^y+UDJ+
z8LVP3(vw%2uk;860y&*=
|#6+mA^an-&O-EOx_d?tS)^7Fg{%pne
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
HIUxTB&u-0i
delta 5811
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
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index b396175bc4..8d5723b5f8 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Sat Nov 21 18:19:09 EST 2015
+#Wed Jun 29 20:35:34 PDT 2016
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.14-bin.zip
diff --git a/gradlew b/gradlew
index 97fac783e1..27309d9231 100755
--- a/gradlew
+++ b/gradlew
@@ -6,12 +6,30 @@
##
##############################################################################
-# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-DEFAULT_JVM_OPTS=""
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`"/$link"
+ fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >/dev/null
+APP_HOME="`pwd -P`"
+cd "$SAVED" >/dev/null
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
@@ -30,6 +48,7 @@ die ( ) {
cygwin=false
msys=false
darwin=false
+nonstop=false
case "`uname`" in
CYGWIN* )
cygwin=true
@@ -40,26 +59,11 @@ case "`uname`" in
MINGW* )
msys=true
;;
+ NONSTOP* )
+ nonstop=true
+ ;;
esac
-# Attempt to set APP_HOME
-# Resolve links: $0 may be a link
-PRG="$0"
-# Need this for relative symlinks.
-while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- 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.
@@ -85,7 +89,7 @@ location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
-if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
+if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
diff --git a/gradlew.bat b/gradlew.bat
index aec99730b4..f6d5974e72 100644
--- a/gradlew.bat
+++ b/gradlew.bat
@@ -8,14 +8,14 @@
@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 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=
+
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
@@ -46,7 +46,7 @@ echo location of your Java installation.
goto fail
:init
-@rem Get command-line arguments, handling Windowz variants
+@rem Get command-line arguments, handling Windows variants
if not "%OS%" == "Windows_NT" goto win9xME_args
if "%@eval[2+2]" == "4" goto 4NT_args
diff --git a/hal/build.gradle b/hal/build.gradle
index dd0096dbef..0c4aa06fd4 100644
--- a/hal/build.gradle
+++ b/hal/build.gradle
@@ -8,8 +8,10 @@ model {
components {
HALAthena(NativeLibrarySpec) {
targetPlatform 'arm'
- tasks.withType(CppCompile) {
- dependsOn addNiLibraryLinks
+ binaries.all {
+ tasks.withType(CppCompile) {
+ addNiLibraryLinks(linker, targetPlatform)
+ }
}
sources {
cpp {
diff --git a/simulation/SimDS/build.gradle b/simulation/SimDS/build.gradle
index 58270b7f21..5d8d7db471 100644
--- a/simulation/SimDS/build.gradle
+++ b/simulation/SimDS/build.gradle
@@ -7,7 +7,7 @@ apply plugin: 'maven-publish'
buildscript {
repositories { jcenter() }
dependencies {
- classpath 'com.github.jengelman.gradle.plugins:shadow:1.2.1'
+ classpath 'com.github.jengelman.gradle.plugins:shadow:1.2.3'
}
}
diff --git a/test-scripts/config.sh b/test-scripts/config.sh
index 181d2ffcf4..7d0d054a91 100644
--- a/test-scripts/config.sh
+++ b/test-scripts/config.sh
@@ -21,7 +21,7 @@ DEFAULT_DESTINATION_TEST_RESULTS_DIR=${DEFAULT_DESTINATION_DIR}/testResults
# C++ test variables
DEFAULT_CPP_TEST_NAME=FRCUserProgram
DEFAULT_CPP_TEST_ARGS="--gtest_color=yes"
-DEFAULT_LOCAL_CPP_TEST_FILE=../wpilibcIntegrationTests/build/binaries/fRCUserProgramExecutable/FRCUserProgram
+DEFAULT_LOCAL_CPP_TEST_FILE=../wpilibcIntegrationTests/build/exe/fRCUserProgram/FRCUserProgram
CPP_REPORT=cppreport.xml
DEFAULT_LOCAL_CPP_TEST_RESULT=${DEFAULT_LOCAL_TEST_RESULTS_DIR}/${CPP_REPORT}
diff --git a/wpilibc/athena.gradle b/wpilibc/athena.gradle
index 0d63ae7a12..fc582a13ca 100644
--- a/wpilibc/athena.gradle
+++ b/wpilibc/athena.gradle
@@ -8,8 +8,8 @@ model {
targetPlatform 'arm'
binaries.all {
tasks.withType(CppCompile) {
- dependsOn addNiLibraryLinks
- dependsOn addNetworkTablesLibraryLinks
+ addNiLibraryLinks(linker, targetPlatform)
+ addNetworkTablesLibraryLinks(it, linker, targetPlatform)
}
}
sources {
@@ -36,34 +36,42 @@ task wpilibcZip(type: Zip) {
destinationDir = project.buildDir
// Include the static library file and header files from this project
- binaries.withType(StaticLibraryBinarySpec) { spec ->
- spec.headerDirs.each {
- from(it) {
- into 'include'
+ model {
+ binaries {
+ withType(StaticLibraryBinarySpec) { spec ->
+ spec.headerDirs.each {
+ from(it) {
+ into 'include'
+ }
+ }
+ from(spec.staticLibraryFile) {
+ into 'lib'
+ }
}
}
- from(spec.staticLibraryFile) {
- into 'lib'
- }
}
// Include the static library file and shared library object from hal project
def hal = project(':hal')
- hal.binaries.withType(StaticLibraryBinarySpec) { spec ->
- spec.headerDirs.each {
- from(it) {
- into 'include'
- // We don't want to include any of the .cpp files that are in some of the header directories
- exclude '**/*.cpp'
+ hal.model{
+ binaries{
+ withType(StaticLibraryBinarySpec) { spec ->
+ spec.headerDirs.each {
+ from(it) {
+ into 'include'
+ // We don't want to include any of the .cpp files that are in some of the header directories
+ exclude '**/*.cpp'
+ }
+ }
+ from(spec.staticLibraryFile) {
+ into 'lib'
+ }
+ }
+ withType(SharedLibraryBinarySpec) { spec ->
+ from(spec.sharedLibraryFile) {
+ into 'lib'
+ }
}
- }
- from(spec.staticLibraryFile) {
- into 'lib'
- }
- }
- hal.binaries.withType(SharedLibraryBinarySpec) { spec ->
- from(spec.sharedLibraryFile) {
- into 'lib'
}
}
@@ -119,15 +127,15 @@ if (checkDoxygen()) {
doxygen {
def halLocation = '../hal'
- source file("${project.shared}/src")
- source file("${project.shared}/include")
- source file("${project.athena}/src")
- source file("${project.athena}/include")
- source file("$ntSourceDir/src")
- source file("$ntSourceDir/include")
- source file("$halLocation/shared")
- source file("$halLocation/athena")
- source file("$halLocation/include")
+ source new File("${project.shared}/src")
+ source new File("${project.shared}/include")
+ source new File("${project.athena}/src")
+ source new File("${project.athena}/include")
+ source new File("$ntSourceDir/src")
+ source new File("$ntSourceDir/include")
+ source new File("$halLocation/shared")
+ source new File("$halLocation/athena")
+ source new File("$halLocation/include")
// template file('cpp.doxy')
exclude 'nivision.h'
extension_mapping 'inc=C++'
@@ -144,7 +152,7 @@ if (checkDoxygen()) {
generate_latex false
html_timestamp true
generate_treeview true
- outputDir file("$buildDir/docs")
+ outputDir new File("$buildDir/docs")
}
doxygen.dependsOn unzipCppNtSources
diff --git a/wpilibcIntegrationTests/build.gradle b/wpilibcIntegrationTests/build.gradle
index a7b982419d..6a9485b2fc 100644
--- a/wpilibcIntegrationTests/build.gradle
+++ b/wpilibcIntegrationTests/build.gradle
@@ -12,8 +12,8 @@ model {
targetPlatform 'arm'
binaries.all {
tasks.withType(CppCompile) {
- dependsOn addNiLibraryLinks
- dependsOn addNetworkTablesLibraryLinks
+ addNiLibraryLinks(linker, targetPlatform)
+ addNetworkTablesLibraryLinks(it, linker, targetPlatform)
}
cppCompiler.args '-pthread', '-Wno-unused-variable'
diff --git a/wpilibj/athena.gradle b/wpilibj/athena.gradle
index ed63278644..9fc4dd4972 100644
--- a/wpilibj/athena.gradle
+++ b/wpilibj/athena.gradle
@@ -22,7 +22,7 @@ model {
binaries.all {
tasks.withType(CppCompile) {
dependsOn jniHeaders
- dependsOn addNiLibraryLinks
+ addNiLibraryLinks(linker, targetPlatform)
}
}
sources {
@@ -85,9 +85,13 @@ jar {
addClasspath sourceSets.shared.runtimeClasspath
}
- binaries.withType(SharedLibraryBinarySpec) {
- from(file(it.sharedLibraryFile)) {
- into 'linux-arm'
+ model {
+ binaries {
+ withType(SharedLibraryBinarySpec) {
+ from(file(it.sharedLibraryFile)) {
+ into 'linux-arm'
+ }
+ }
}
}
}
diff --git a/wpilibjIntegrationTests/build.gradle b/wpilibjIntegrationTests/build.gradle
index 8d309a503c..5b0f904370 100644
--- a/wpilibjIntegrationTests/build.gradle
+++ b/wpilibjIntegrationTests/build.gradle
@@ -14,42 +14,22 @@ mainClassName = 'edu.wpi.first.wpilibj.test.AntJunitLanucher'
buildscript {
repositories { jcenter() }
dependencies {
- classpath 'com.github.jengelman.gradle.plugins:shadow:1.2.1'
+ classpath 'com.github.jengelman.gradle.plugins:shadow:1.2.3'
}
}
def wpilibj = project(':wpilibj')
dependencies {
- compile wpilibj.sourceSets.shared.output
- compile wpilibj.sourceSets.athena.output
- compile files(wpilibj.jar.archivePath)
+ compile wpilibj
+ compile files(wpilibj.sourceSets.test.output.classesDir)
compile 'edu.wpi.first.wpilib.networktables.java:NetworkTables:3.0.0-SNAPSHOT:arm'
compile 'junit:junit:4.11'
compile 'com.googlecode.junit-toolbox:junit-toolbox:2.0'
compile 'org.apache.ant:ant:1.9.4'
compile 'org.apache.ant:ant-junit:1.9.4'
- compile files(wpilibj.sourceSets.test.output.classesDir)
}
compileJava.dependsOn tasks.getByPath(':wpilibj:testClasses')
build.dependsOn shadowJar
-
-jar {
- wpilibj.binaries.withType(SharedLibraryBinarySpec) {
- from(file(it.sharedLibraryFile)) {
- into 'linux-arm'
- }
- }
-
- dependsOn wpilibj.jar
-}
-
-shadowJar {
- wpilibj.binaries.withType(SharedLibraryBinarySpec) {
- from(file(it.sharedLibraryFile)) {
- into 'linux-arm'
- }
- }
-}