HADOOP-12712. Fix some cmake plugin and native build warnings (cmccabe)
(cherry picked from commit b2c155f810
)
This commit is contained in:
parent
2a6224aa0f
commit
48b8c99479
|
@ -48,6 +48,8 @@ Release 2.9.0 - UNRELEASED
|
||||||
HDFS-9517. Fix missing @Test annotation on
|
HDFS-9517. Fix missing @Test annotation on
|
||||||
TestDistCpUtils.testUnpackAttributes (Wei-Chiu Chuang via cmccabe)
|
TestDistCpUtils.testUnpackAttributes (Wei-Chiu Chuang via cmccabe)
|
||||||
|
|
||||||
|
HADOOP-12712. Fix some cmake plugin and native build warnings (cmccabe)
|
||||||
|
|
||||||
Release 2.8.0 - UNRELEASED
|
Release 2.8.0 - UNRELEASED
|
||||||
|
|
||||||
INCOMPATIBLE CHANGES
|
INCOMPATIBLE CHANGES
|
||||||
|
|
|
@ -268,7 +268,7 @@ Java_org_apache_hadoop_net_unix_DomainSocket_validateSocketPathSecurity0(
|
||||||
JNIEnv *env, jclass clazz, jobject jstr, jint skipComponents)
|
JNIEnv *env, jclass clazz, jobject jstr, jint skipComponents)
|
||||||
{
|
{
|
||||||
jint utfLength;
|
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;
|
struct stat st;
|
||||||
int ret, mode, strlenPath;
|
int ret, mode, strlenPath;
|
||||||
uid_t uid;
|
uid_t uid;
|
||||||
|
|
|
@ -22,18 +22,15 @@ import org.apache.maven.plugins.annotations.LifecyclePhase;
|
||||||
import org.apache.maven.plugins.annotations.Mojo;
|
import org.apache.maven.plugins.annotations.Mojo;
|
||||||
import org.apache.maven.plugins.annotations.Parameter;
|
import org.apache.maven.plugins.annotations.Parameter;
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
|
||||||
import java.io.InputStreamReader;
|
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Goal which builds the native sources
|
* Goal which builds the native sources.
|
||||||
*/
|
*/
|
||||||
@Mojo(name="cmake-compile", defaultPhase = LifecyclePhase.COMPILE)
|
@Mojo(name="cmake-compile", defaultPhase = LifecyclePhase.COMPILE)
|
||||||
public class CompileMojo extends AbstractMojo {
|
public class CompileMojo extends AbstractMojo {
|
||||||
|
@ -203,8 +200,6 @@ public class CompileMojo extends AbstractMojo {
|
||||||
public void runMake() throws MojoExecutionException {
|
public void runMake() throws MojoExecutionException {
|
||||||
List<String> cmd = new LinkedList<String>();
|
List<String> cmd = new LinkedList<String>();
|
||||||
cmd.add("make");
|
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("-j");
|
||||||
cmd.add(String.valueOf(availableProcessors));
|
cmd.add(String.valueOf(availableProcessors));
|
||||||
cmd.add("VERBOSE=1");
|
cmd.add("VERBOSE=1");
|
||||||
|
@ -259,11 +254,13 @@ public class CompileMojo extends AbstractMojo {
|
||||||
}
|
}
|
||||||
// We always print stderr, since it contains the compiler warning
|
// We always print stderr, since it contains the compiler warning
|
||||||
// messages. These are interesting even if compilation succeeded.
|
// messages. These are interesting even if compilation succeeded.
|
||||||
for (String line: stderrThread.getOutput()) {
|
for (String line: stderrThread.getOutput()) {
|
||||||
getLog().warn(line);
|
getLog().warn(line);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
if (proc != null) {
|
||||||
|
proc.destroy();
|
||||||
}
|
}
|
||||||
if (proc != null) proc.destroy();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -60,7 +60,6 @@ public class TestMojo extends AbstractMojo {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Environment variables to pass to the binary.
|
* Environment variables to pass to the binary.
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
@Parameter
|
@Parameter
|
||||||
private Map<String, String> env;
|
private Map<String, String> env;
|
||||||
|
@ -105,7 +104,7 @@ public class TestMojo extends AbstractMojo {
|
||||||
private String expectedResult;
|
private String expectedResult;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The Maven Session Object
|
* The Maven Session Object.
|
||||||
*/
|
*/
|
||||||
@Parameter(defaultValue="${session}", readonly=true, required=true)
|
@Parameter(defaultValue="${session}", readonly=true, required=true)
|
||||||
private MavenSession session;
|
private MavenSession session;
|
||||||
|
@ -205,7 +204,7 @@ public class TestMojo extends AbstractMojo {
|
||||||
private boolean shouldRunTest() throws MojoExecutionException {
|
private boolean shouldRunTest() throws MojoExecutionException {
|
||||||
// Were we told to skip all tests?
|
// Were we told to skip all tests?
|
||||||
String skipTests = session.
|
String skipTests = session.
|
||||||
getExecutionProperties().getProperty("skipTests");
|
getSystemProperties().getProperty("skipTests");
|
||||||
if (isTruthy(skipTests)) {
|
if (isTruthy(skipTests)) {
|
||||||
getLog().info("skipTests is in effect for test " + testName);
|
getLog().info("skipTests is in effect for test " + testName);
|
||||||
return false;
|
return false;
|
||||||
|
@ -223,7 +222,7 @@ public class TestMojo extends AbstractMojo {
|
||||||
// If there is an explicit list of tests to run, it should include this
|
// If there is an explicit list of tests to run, it should include this
|
||||||
// test.
|
// test.
|
||||||
String testProp = session.
|
String testProp = session.
|
||||||
getExecutionProperties().getProperty("test");
|
getSystemProperties().getProperty("test");
|
||||||
if (testProp != null) {
|
if (testProp != null) {
|
||||||
String testPropArr[] = testProp.split(",");
|
String testPropArr[] = testProp.split(",");
|
||||||
boolean found = false;
|
boolean found = false;
|
||||||
|
@ -251,8 +250,9 @@ public class TestMojo extends AbstractMojo {
|
||||||
String val = entry.getValue();
|
String val = entry.getValue();
|
||||||
if (key == null) {
|
if (key == null) {
|
||||||
throw new MojoExecutionException("NULL is not a valid " +
|
throw new MojoExecutionException("NULL is not a valid " +
|
||||||
"precondition type. " + VALID_PRECONDITION_TYPES_STR);
|
"precondition type. " + VALID_PRECONDITION_TYPES_STR);
|
||||||
} if (key.equals("and")) {
|
}
|
||||||
|
if (key.equals("and")) {
|
||||||
if (!isTruthy(val)) {
|
if (!isTruthy(val)) {
|
||||||
getLog().info("Skipping test " + testName +
|
getLog().info("Skipping test " + testName +
|
||||||
" because precondition number " + idx + " was not met.");
|
" because precondition number " + idx + " was not met.");
|
||||||
|
@ -267,7 +267,7 @@ public class TestMojo extends AbstractMojo {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
throw new MojoExecutionException(key + " is not a valid " +
|
throw new MojoExecutionException(key + " is not a valid " +
|
||||||
"precondition type. " + VALID_PRECONDITION_TYPES_STR);
|
"precondition type. " + VALID_PRECONDITION_TYPES_STR);
|
||||||
}
|
}
|
||||||
idx++;
|
idx++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -127,9 +127,9 @@ public class Exec {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 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() {
|
public List<String> getOutput() {
|
||||||
return output;
|
return output;
|
||||||
|
@ -138,6 +138,9 @@ public class Exec {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add environment variables to a ProcessBuilder.
|
* 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,
|
public static void addEnvironment(ProcessBuilder pb,
|
||||||
Map<String, String> env) {
|
Map<String, String> env) {
|
||||||
|
@ -156,6 +159,10 @@ public class Exec {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Pretty-print the environment to a StringBuilder.
|
* 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) {
|
public static String envToString(Map<String, String> env) {
|
||||||
StringBuilder bld = new StringBuilder();
|
StringBuilder bld = new StringBuilder();
|
||||||
|
|
|
@ -320,7 +320,7 @@ char ** extract_values_delim(char *value, const char *delim) {
|
||||||
* Extracts array of values from the '%' separated list of values.
|
* Extracts array of values from the '%' separated list of values.
|
||||||
*/
|
*/
|
||||||
char ** extract_values(char *value) {
|
char ** extract_values(char *value) {
|
||||||
extract_values_delim(value, "%");
|
return extract_values_delim(value, "%");
|
||||||
}
|
}
|
||||||
|
|
||||||
// free an entry set of values
|
// free an entry set of values
|
||||||
|
|
Loading…
Reference in New Issue