From bee9f1cb17c21935feaee3d50bc658efc4eda64d Mon Sep 17 00:00:00 2001 From: Thad House Date: Fri, 3 Nov 2017 22:50:06 -0700 Subject: [PATCH] Adds header task to print out all headers (#704) Will be used to create a generator for IDE's to get include paths. --- hal/build.gradle | 26 ++++++++++++++++++++++++++ wpilibc/build.gradle | 26 ++++++++++++++++++++++++++ wpilibj/build.gradle | 30 ++++++++++++++++++++++++++++++ 3 files changed, 82 insertions(+) diff --git a/hal/build.gradle b/hal/build.gradle index 63717842c8..9f65617713 100644 --- a/hal/build.gradle +++ b/hal/build.gradle @@ -202,6 +202,32 @@ model { } } } + getHeaders(Task) { + def list = [] + $.components.each { + if (it in NativeLibrarySpec && (it.name == 'halAthena' || it.name == 'halSim')) { + it.sources.each { + it.exportedHeaders.srcDirs.each { + list.add(it) + } + } + it.binaries.each { + it.libs.each { + it.includeRoots.each { + list.add(it) + } + } + } + } + } + list = list.unique(false) + doLast { + list.each { + print "WPIHEADER: " + println it + } + } + } } } diff --git a/wpilibc/build.gradle b/wpilibc/build.gradle index 20d6ae75f1..85f9019fcc 100644 --- a/wpilibc/build.gradle +++ b/wpilibc/build.gradle @@ -202,6 +202,32 @@ model { } } } + getHeaders(Task) { + def list = [] + $.components.each { + if (it in NativeLibrarySpec && it.name == 'wpilibc') { + it.sources.each { + it.exportedHeaders.srcDirs.each { + list.add(it) + } + } + it.binaries.each { + it.libs.each { + it.includeRoots.each { + list.add(it) + } + } + } + } + } + list = list.unique(false) + doLast { + list.each { + print "WPIHEADER: " + println it + } + } + } } } diff --git a/wpilibj/build.gradle b/wpilibj/build.gradle index 58c462a716..ad6ec9cac1 100644 --- a/wpilibj/build.gradle +++ b/wpilibj/build.gradle @@ -273,6 +273,36 @@ model { it.buildable = false } } + tasks { + getHeaders(Task) { + def list = [] + $.components.each { + if (it in NativeLibrarySpec && it.name == 'wpilibJNIStatic') { + it.sources.each { + it.exportedHeaders.srcDirs.each { + list.add(it) + } + } + it.binaries.each { + it.libs.each { + it.includeRoots.each { + list.add(it) + } + } + } + } + } + // use file to normalize this dir + list.add(file("$buildDir/wpilibJNIStatic/jniinclude")) + list = list.unique(false) + doLast { + list.each { + print "WPIHEADER: " + println it + } + } + } + } } apply from: 'publish.gradle'