HADOOP-12712. Fix some cmake plugin and native build warnings (cmccabe)

(cherry picked from commit b2c155f810)
This commit is contained in:
Colin Patrick Mccabe 2016-01-15 12:29:18 -08:00
parent 2a6224aa0f
commit 48b8c99479
6 changed files with 27 additions and 21 deletions

View File

@ -48,6 +48,8 @@ Release 2.9.0 - UNRELEASED
HDFS-9517. Fix missing @Test annotation on
TestDistCpUtils.testUnpackAttributes (Wei-Chiu Chuang via cmccabe)
HADOOP-12712. Fix some cmake plugin and native build warnings (cmccabe)
Release 2.8.0 - UNRELEASED
INCOMPATIBLE CHANGES

View File

@ -268,7 +268,7 @@ Java_org_apache_hadoop_net_unix_DomainSocket_validateSocketPathSecurity0(
JNIEnv *env, jclass clazz, jobject jstr, jint skipComponents)
{
jint utfLength;
char path[PATH_MAX], check[PATH_MAX], *token, *rest, *rest_free;
char path[PATH_MAX], check[PATH_MAX], *token, *rest, *rest_free = NULL;
struct stat st;
int ret, mode, strlenPath;
uid_t uid;

View File

@ -22,18 +22,15 @@
import org.apache.maven.plugins.annotations.Mojo;
import org.apache.maven.plugins.annotations.Parameter;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.concurrent.TimeUnit;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
/**
* Goal which builds the native sources
* Goal which builds the native sources.
*/
@Mojo(name="cmake-compile", defaultPhase = LifecyclePhase.COMPILE)
public class CompileMojo extends AbstractMojo {
@ -203,8 +200,6 @@ public void runCMake() throws MojoExecutionException {
public void runMake() throws MojoExecutionException {
List<String> cmd = new LinkedList<String>();
cmd.add("make");
// TODO: it would be nice to determine the number of CPUs and set the
// parallelism to that. It requires some platform-specific logic, though.
cmd.add("-j");
cmd.add(String.valueOf(availableProcessors));
cmd.add("VERBOSE=1");
@ -259,11 +254,13 @@ public void runMake() throws MojoExecutionException {
}
// We always print stderr, since it contains the compiler warning
// messages. These are interesting even if compilation succeeded.
for (String line: stderrThread.getOutput()) {
getLog().warn(line);
}
for (String line: stderrThread.getOutput()) {
getLog().warn(line);
}
}
if (proc != null) {
proc.destroy();
}
if (proc != null) proc.destroy();
}
}
}

View File

@ -60,7 +60,6 @@ public class TestMojo extends AbstractMojo {
/**
* Environment variables to pass to the binary.
*
*/
@Parameter
private Map<String, String> env;
@ -105,7 +104,7 @@ public class TestMojo extends AbstractMojo {
private String expectedResult;
/**
* The Maven Session Object
* The Maven Session Object.
*/
@Parameter(defaultValue="${session}", readonly=true, required=true)
private MavenSession session;
@ -205,7 +204,7 @@ private void validateParameters() throws MojoExecutionException {
private boolean shouldRunTest() throws MojoExecutionException {
// Were we told to skip all tests?
String skipTests = session.
getExecutionProperties().getProperty("skipTests");
getSystemProperties().getProperty("skipTests");
if (isTruthy(skipTests)) {
getLog().info("skipTests is in effect for test " + testName);
return false;
@ -223,7 +222,7 @@ private boolean shouldRunTest() throws MojoExecutionException {
// If there is an explicit list of tests to run, it should include this
// test.
String testProp = session.
getExecutionProperties().getProperty("test");
getSystemProperties().getProperty("test");
if (testProp != null) {
String testPropArr[] = testProp.split(",");
boolean found = false;
@ -251,8 +250,9 @@ private boolean shouldRunTest() throws MojoExecutionException {
String val = entry.getValue();
if (key == null) {
throw new MojoExecutionException("NULL is not a valid " +
"precondition type. " + VALID_PRECONDITION_TYPES_STR);
} if (key.equals("and")) {
"precondition type. " + VALID_PRECONDITION_TYPES_STR);
}
if (key.equals("and")) {
if (!isTruthy(val)) {
getLog().info("Skipping test " + testName +
" because precondition number " + idx + " was not met.");
@ -267,7 +267,7 @@ private boolean shouldRunTest() throws MojoExecutionException {
}
} else {
throw new MojoExecutionException(key + " is not a valid " +
"precondition type. " + VALID_PRECONDITION_TYPES_STR);
"precondition type. " + VALID_PRECONDITION_TYPES_STR);
}
idx++;
}

View File

@ -127,9 +127,9 @@ public void run() {
}
/**
* Returns every line consumed from the input.
* Get every line consumed from the input.
*
* @return List<String> every line consumed from the input
* @return Every line consumed from the input
*/
public List<String> getOutput() {
return output;
@ -138,6 +138,9 @@ public List<String> getOutput() {
/**
* Add environment variables to a ProcessBuilder.
*
* @param pb The ProcessBuilder
* @param env A map of environment variable names to values.
*/
public static void addEnvironment(ProcessBuilder pb,
Map<String, String> env) {
@ -156,6 +159,10 @@ public static void addEnvironment(ProcessBuilder pb,
/**
* Pretty-print the environment to a StringBuilder.
*
* @param env A map of environment variable names to values to print.
*
* @return The pretty-printed string.
*/
public static String envToString(Map<String, String> env) {
StringBuilder bld = new StringBuilder();

View File

@ -320,7 +320,7 @@ char ** extract_values_delim(char *value, const char *delim) {
* Extracts array of values from the '%' separated list of values.
*/
char ** extract_values(char *value) {
extract_values_delim(value, "%");
return extract_values_delim(value, "%");
}
// free an entry set of values