From f207567d931df73e7780b7e9a63cb064f6e85b1e Mon Sep 17 00:00:00 2001 From: david dali susanibar arce Date: Fri, 28 Jul 2023 07:31:00 -0500 Subject: [PATCH 1/3] fix: Enable Gandiva build as part of Java maven commands --- docs/source/developers/java/building.rst | 20 +++++++++++------- java/pom.xml | 27 +++++++++++++++--------- 2 files changed, 29 insertions(+), 18 deletions(-) diff --git a/docs/source/developers/java/building.rst b/docs/source/developers/java/building.rst index 5dd3a979d8293..20768fa81c656 100644 --- a/docs/source/developers/java/building.rst +++ b/docs/source/developers/java/building.rst @@ -132,11 +132,7 @@ Maven $ cd arrow/java $ export JAVA_HOME= $ java --version - $ mvn generate-resources \ - -Pgenerate-libs-jni-macos-linux \ - -DARROW_GANDIVA=ON \ - -DARROW_JAVA_JNI_ENABLE_GANDIVA=ON \ - -N + $ mvn generate-resources -Pgenerate-libs-jni-macos-linux -N $ ls -latr java-dist/lib//*_{jni,java}.* |__ libarrow_dataset_jni.dylib |__ libarrow_orc_jni.dylib @@ -227,6 +223,7 @@ CMake -DCMAKE_INSTALL_PREFIX=java-dist \ -DCMAKE_UNITY_BUILD=ON $ cmake --build cpp-jni --target install --config Release + $ export JAVA_JNI_CMAKE_ARGS="-DProtobuf_ROOT=$PWD/cpp-jni/protobuf_ep-install" $ cmake \ -S java \ -B java-jni \ @@ -236,7 +233,8 @@ CMake -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_LIBDIR=lib/ \ -DCMAKE_INSTALL_PREFIX=java-dist \ - -DCMAKE_PREFIX_PATH=$PWD/java-dist + -DCMAKE_PREFIX_PATH=$PWD/java-dist \ + -DProtobuf_USE_STATIC_LIBS=ON $ cmake --build java-jni --target install --config Release $ ls -latr java-dist/lib//*_{jni,java}.* |__ libarrow_dataset_jni.dylib @@ -257,8 +255,9 @@ CMake -DARROW_DATASET=ON ^ -DARROW_DEPENDENCY_USE_SHARED=OFF ^ -DARROW_FILESYSTEM=ON ^ + -DARROW_GANDIVA=OFF ^ -DARROW_JSON=ON ^ - -DARROW_ORC=OFF ^ + -DARROW_ORC=ON ^ -DARROW_PARQUET=ON ^ -DARROW_S3=ON ^ -DARROW_SUBSTRAIT=ON ^ @@ -272,6 +271,9 @@ CMake -DCMAKE_INSTALL_LIBDIR=lib/x86_64 ^ -DCMAKE_INSTALL_PREFIX=java-dist ^ -DCMAKE_UNITY_BUILD=ON ^ + -DPARQUET_BUILD_EXAMPLES=OFF ^ + -DPARQUET_BUILD_EXECUTABLES=OFF ^ + -DPARQUET_REQUIRE_ENCRYPTION=OFF ^ -GNinja $ cd cpp-jni $ ninja install @@ -280,9 +282,10 @@ CMake -S java ^ -B java-jni ^ -DARROW_JAVA_JNI_ENABLE_C=OFF ^ + -DARROW_JAVA_JNI_ENABLE_DATASET=ON ^ -DARROW_JAVA_JNI_ENABLE_DEFAULT=ON ^ -DARROW_JAVA_JNI_ENABLE_GANDIVA=OFF ^ - -DARROW_JAVA_JNI_ENABLE_ORC=OFF ^ + -DARROW_JAVA_JNI_ENABLE_ORC=ON ^ -DBUILD_TESTING=OFF ^ -DCMAKE_BUILD_TYPE=Release ^ -DCMAKE_INSTALL_LIBDIR=lib/x86_64 ^ @@ -290,6 +293,7 @@ CMake -DCMAKE_PREFIX_PATH=$PWD/java-dist $ cmake --build java-jni --target install --config Release $ dir "java-dist/bin" + |__ arrow_orc_jni.dll |__ arrow_dataset_jni.dll Archery diff --git a/java/pom.xml b/java/pom.xml index 7f8de003a3355..608eda7b80da7 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -984,13 +984,13 @@ java-dist false - ON + ON + ON ON ON - OFF OFF ON - OFF + ON ON @@ -1012,8 +1012,8 @@ -S cpp -B cpp-jni -DARROW_BUILD_SHARED=OFF - -DARROW_CSV=${ARROW_CSV} - -DARROW_DATASET=ON + -DARROW_CSV=${ARROW_DATASET} + -DARROW_DATASET=${ARROW_DATASET} -DARROW_DEPENDENCY_SOURCE=BUNDLED -DARROW_DEPENDENCY_USE_SHARED=OFF -DARROW_FILESYSTEM=ON @@ -1070,6 +1070,8 @@ -DCMAKE_INSTALL_LIBDIR=lib/${os.detected.arch} -DCMAKE_INSTALL_PREFIX=${arrow.dataset.jni.dist.dir} -DCMAKE_PREFIX_PATH=${project.basedir}/../java-dist/lib/${os.detected.arch}/cmake + -DProtobuf_USE_STATIC_LIBS=ON + -DProtobuf_ROOT=${project.basedir}/../cpp-jni/protobuf_ep-install ../ @@ -1099,13 +1101,14 @@ java-dist false - ON - OFF + ON + OFF + ON ON OFF ON OFF - OFF + ON @@ -1126,10 +1129,11 @@ -S cpp -B cpp-jni -DARROW_BUILD_SHARED=OFF - -DARROW_CSV=${ARROW_CSV} - -DARROW_DATASET=ON + -DARROW_CSV=${ARROW_DATASET} + -DARROW_DATASET=${ARROW_DATASET} -DARROW_DEPENDENCY_USE_SHARED=OFF -DARROW_FILESYSTEM=ON + -DARROW_GANDIVA=${ARROW_GANDIVA} -DARROW_JSON=${ARROW_DATASET} -DARROW_ORC=${ARROW_ORC} -DARROW_PARQUET=${ARROW_PARQUET} @@ -1145,6 +1149,9 @@ -DCMAKE_INSTALL_LIBDIR=lib/${os.detected.arch} -DCMAKE_INSTALL_PREFIX=java-dist -DCMAKE_UNITY_BUILD=ON + -DPARQUET_BUILD_EXAMPLES=OFF + -DPARQUET_BUILD_EXECUTABLES=OFF + -DPARQUET_REQUIRE_ENCRYPTION=OFF -GNinja ../ From a5b21434bbfced68ebf1489c5d7a9df0d0174132 Mon Sep 17 00:00:00 2001 From: david dali susanibar arce Date: Mon, 31 Jul 2023 16:22:34 -0500 Subject: [PATCH 2/3] fix: clean documentation --- docs/source/developers/java/building.rst | 7 ++----- java/pom.xml | 3 --- 2 files changed, 2 insertions(+), 8 deletions(-) diff --git a/docs/source/developers/java/building.rst b/docs/source/developers/java/building.rst index 20768fa81c656..6872b71b9c2e5 100644 --- a/docs/source/developers/java/building.rst +++ b/docs/source/developers/java/building.rst @@ -223,7 +223,6 @@ CMake -DCMAKE_INSTALL_PREFIX=java-dist \ -DCMAKE_UNITY_BUILD=ON $ cmake --build cpp-jni --target install --config Release - $ export JAVA_JNI_CMAKE_ARGS="-DProtobuf_ROOT=$PWD/cpp-jni/protobuf_ep-install" $ cmake \ -S java \ -B java-jni \ @@ -234,7 +233,8 @@ CMake -DCMAKE_INSTALL_LIBDIR=lib/ \ -DCMAKE_INSTALL_PREFIX=java-dist \ -DCMAKE_PREFIX_PATH=$PWD/java-dist \ - -DProtobuf_USE_STATIC_LIBS=ON + -DProtobuf_USE_STATIC_LIBS=ON \ + -DProtobuf_ROOT=$PWD/../cpp-jni/protobuf_ep-install $ cmake --build java-jni --target install --config Release $ ls -latr java-dist/lib//*_{jni,java}.* |__ libarrow_dataset_jni.dylib @@ -271,9 +271,6 @@ CMake -DCMAKE_INSTALL_LIBDIR=lib/x86_64 ^ -DCMAKE_INSTALL_PREFIX=java-dist ^ -DCMAKE_UNITY_BUILD=ON ^ - -DPARQUET_BUILD_EXAMPLES=OFF ^ - -DPARQUET_BUILD_EXECUTABLES=OFF ^ - -DPARQUET_REQUIRE_ENCRYPTION=OFF ^ -GNinja $ cd cpp-jni $ ninja install diff --git a/java/pom.xml b/java/pom.xml index 608eda7b80da7..0821e9d5c1ad1 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -1149,9 +1149,6 @@ -DCMAKE_INSTALL_LIBDIR=lib/${os.detected.arch} -DCMAKE_INSTALL_PREFIX=java-dist -DCMAKE_UNITY_BUILD=ON - -DPARQUET_BUILD_EXAMPLES=OFF - -DPARQUET_BUILD_EXECUTABLES=OFF - -DPARQUET_REQUIRE_ENCRYPTION=OFF -GNinja ../ From 7d570651b66ff39acc14e7e3e21d16a31d19c798 Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Tue, 1 Aug 2023 18:05:08 +0900 Subject: [PATCH 3/3] Sort --- docs/source/developers/java/building.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/source/developers/java/building.rst b/docs/source/developers/java/building.rst index 6872b71b9c2e5..061c616d4b971 100644 --- a/docs/source/developers/java/building.rst +++ b/docs/source/developers/java/building.rst @@ -233,8 +233,8 @@ CMake -DCMAKE_INSTALL_LIBDIR=lib/ \ -DCMAKE_INSTALL_PREFIX=java-dist \ -DCMAKE_PREFIX_PATH=$PWD/java-dist \ - -DProtobuf_USE_STATIC_LIBS=ON \ - -DProtobuf_ROOT=$PWD/../cpp-jni/protobuf_ep-install + -DProtobuf_ROOT=$PWD/../cpp-jni/protobuf_ep-install \ + -DProtobuf_USE_STATIC_LIBS=ON $ cmake --build java-jni --target install --config Release $ ls -latr java-dist/lib//*_{jni,java}.* |__ libarrow_dataset_jni.dylib