Kai Zheng created HADOOP-12039: ---------------------------------- Summary: Build native codes modularly even in a component Key: HADOOP-12039 URL: https://issues.apache.org/jira/browse/HADOOP-12039 Project: Hadoop Common Issue Type: Improvement Reporter: Kai Zheng Assignee: Kai Zheng
It might be good to be able to build native codes in modular approach instead of coupling all things together. For example, in Hadoop common side, it has to build for compression, encryption and new erasure coding feature. This desires to separate the aspects, have separate cmake file and make, base on HADOOP-12036, thus avoiding the following too lengthy make target: {code} <id>make</id> <phase>compile</phase> <goals><goal>run</goal></goals> <configuration> <target> <exec executable="cmake" dir="${project.build.directory}/native" failonerror="true"> <arg line="${basedir}/src/ -DGENERATED_JAVAH=${project.build.directory}/native/javah -DJVM_ARCH_DATA_MODEL=${sun.arch.data.model} -DREQUIRE_BZIP2=${require.bzip2} -DREQUIRE_SNAPPY=${require.snappy} -DCUSTOM_SNAPPY_PREFIX=${snappy.prefix} -DCUSTOM_SNAPPY_LIB=${snappy.lib} -DCUSTOM_SNAPPY_INCLUDE=${snappy.include} -DREQUIRE_OPENSSL=${require.openssl} -DCUSTOM_OPENSSL_PREFIX=${openssl.prefix} -DCUSTOM_OPENSSL_LIB=${openssl.lib} -DCUSTOM_OPENSSL_INCLUDE=${openssl.include} -DEXTRA_LIBHADOOP_RPATH=${extra.libhadoop.rpath}"/> </exec> <exec executable="make" dir="${project.build.directory}/native" failonerror="true"> <arg line="VERBOSE=1"/> </exec> <exec executable="make" dir="${project.build.directory}/native" failonerror="true"></exec> </target> </configuration> {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)