You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bigtop.apache.org by iw...@apache.org on 2022/07/03 08:50:32 UTC

[bigtop] 01/02: BIGTOP-3669. Use maven instead of ant to build ZooKeeper. (#890)

This is an automated email from the ASF dual-hosted git repository.

iwasakims pushed a commit to branch branch-3.1
in repository https://gitbox.apache.org/repos/asf/bigtop.git

commit e463d893cc4a0383e80fbfe487a4f53a02287f54
Author: Masatake Iwasaki <iw...@apache.org>
AuthorDate: Tue Jun 21 18:41:33 2022 +0900

    BIGTOP-3669. Use maven instead of ant to build ZooKeeper. (#890)
    
    (cherry picked from commit 5b25fe1836dd469abcd65f3744fac4d7c8a8e9aa)
---
 .../src/common/zookeeper/do-component-build         | 21 +++++++++++++++------
 .../src/common/zookeeper/install_zookeeper.sh       | 19 +++++++++----------
 bigtop-packages/src/deb/zookeeper/rules             |  2 +-
 .../src/rpm/zookeeper/SPECS/zookeeper.spec          |  2 +-
 4 files changed, 26 insertions(+), 18 deletions(-)

diff --git a/bigtop-packages/src/common/zookeeper/do-component-build b/bigtop-packages/src/common/zookeeper/do-component-build
index c1163bbf..664a5c56 100644
--- a/bigtop-packages/src/common/zookeeper/do-component-build
+++ b/bigtop-packages/src/common/zookeeper/do-component-build
@@ -18,10 +18,19 @@ set -ex
 
 . `dirname ${0}`/bigtop.bom
 
-ANT_OPTS="-Dversion=$ZOOKEEPER_VERSION -f build.xml $@"
-sed -i.orig -e 's#test-jar,api-report#test-jar#g' build.xml
-ant compile ${ANT_OPTS}
-ant package package-native tar ${ANT_OPTS}
+mvn clean install -DskipTests -Pfull-build
+(cd zookeeper-contrib/zookeeper-contrib-rest ; mvn dependency:copy-dependencies)
 
-mvn install:install-file -DcreateChecksum=true -DgroupId=org.apache.zookeeper -DartifactId=zookeeper -Dversion=$ZOOKEEPER_VERSION -Dpackaging=jar -Dfile=build/zookeeper-$ZOOKEEPER_VERSION.jar -DpomFile=build/zookeeper-$ZOOKEEPER_VERSION/dist-maven/zookeeper-$ZOOKEEPER_VERSION.pom
-mvn install:install-file -DcreateChecksum=true -DgroupId=org.apache.zookeeper -DartifactId=zookeeper -Dversion=$ZOOKEEPER_VERSION -Dclassifier=tests -Dpackaging=jar -Dfile=build/zookeeper-$ZOOKEEPER_VERSION-test.jar -DpomFile=build/zookeeper-$ZOOKEEPER_VERSION/dist-maven/zookeeper-$ZOOKEEPER_VERSION.pom
+mkdir -p build
+(cd build ; tar --strip-components=1 -xzvf  ../zookeeper-assembly/target/apache-zookeeper-${ZOOKEEPER_VERSION}-bin.tar.gz)
+
+mkdir -p build/native
+cp -R zookeeper-client/zookeeper-client-c/target/c/include build/native/
+cp -R zookeeper-client/zookeeper-client-c/target/c/lib build/native/
+cp -R zookeeper-client/zookeeper-client-c/target/c/bin build/native/
+
+mkdir -p build/contrib/rest
+mkdir -p build/contrib/rest/lib
+cp -R zookeeper-contrib/zookeeper-contrib-rest/conf build/contrib/rest/
+cp zookeeper-contrib/zookeeper-contrib-rest/target/zookeeper-contrib-rest-${ZOOKEEPER_VERSION}.jar build/contrib/rest/
+cp zookeeper-contrib/zookeeper-contrib-rest/target/dependency/* build/contrib/rest/lib/
diff --git a/bigtop-packages/src/common/zookeeper/install_zookeeper.sh b/bigtop-packages/src/common/zookeeper/install_zookeeper.sh
index bf3562c4..cbb22104 100755
--- a/bigtop-packages/src/common/zookeeper/install_zookeeper.sh
+++ b/bigtop-packages/src/common/zookeeper/install_zookeeper.sh
@@ -106,17 +106,18 @@ CONF_DIST_DIR=/etc/zookeeper/conf.dist/
 SYSTEM_INCLUDE_DIR=${SYSTEM_INCLUDE_DIR:-/usr/include}
 SYSTEM_LIB_DIR=${SYSTEM_LIB_DIR:-/usr/lib}
 
+tar -z -x -f zookeeper-assembly/target/apache-zookeeper-*-bin.tar.gz
 install -d -m 0755 $PREFIX/$LIB_DIR/
 rm -f $BUILD_DIR/zookeeper-*-javadoc.jar $BUILD_DIR/zookeeper-*-bin.jar $BUILD_DIR/zookeeper-*-sources.jar $BUILD_DIR/zookeeper-*-test.jar
-cp $BUILD_DIR/zookeeper*.jar $PREFIX/$LIB_DIR/
+cp $BUILD_DIR/lib/zookeeper*.jar $PREFIX/$LIB_DIR/
 install -d -m 0755 ${PREFIX}/${LIB_DIR}/contrib/rest
 install -d -m 0755 ${PREFIX}/${CONF_DIST_DIR}/rest
-cp ${BUILD_DIR}/zookeeper-contrib/zookeeper-contrib-rest/zookeeper-*-rest.jar ${PREFIX}/${LIB_DIR}/contrib/rest/
-cp -r ${BUILD_DIR}/zookeeper-contrib/zookeeper-contrib-rest/lib ${PREFIX}/${LIB_DIR}/contrib/rest/
-cp -r ${BUILD_DIR}/zookeeper-contrib/zookeeper-contrib-rest/conf/* ${PREFIX}/${CONF_DIST_DIR}/rest/
+cp ${BUILD_DIR}/contrib/rest/zookeeper-contrib-rest-*.jar ${PREFIX}/${LIB_DIR}/contrib/rest/
+cp -r ${BUILD_DIR}/contrib/rest/lib ${PREFIX}/${LIB_DIR}/contrib/rest/
+cp -r ${BUILD_DIR}/contrib/rest/conf/* ${PREFIX}/${CONF_DIST_DIR}/rest/
 
 # Make a symlink of zookeeper.jar to zookeeper-version.jar
-for x in $PREFIX/$LIB_DIR/zookeeper*jar ; do
+for x in $PREFIX/$LIB_DIR/zookeeper-[[:digit:]]*.jar ; do
   x=$(basename $x)
   ln -s $x $PREFIX/$LIB_DIR/zookeeper.jar
 done
@@ -196,11 +197,9 @@ install -d ${PREFIX}/$SYSTEM_INCLUDE_DIR
 install -d ${PREFIX}/$SYSTEM_LIB_DIR
 install -d ${PREFIX}/${LIB_DIR}-native
 
-mkdir ${BUILD_DIR}/../native
-(cd ${BUILD_DIR}/../native && tar xzf ../zookeeper-*-lib.tar.gz)
-cp -R ${BUILD_DIR}/../native/include/* ${PREFIX}/${SYSTEM_INCLUDE_DIR}/
-cp -R ${BUILD_DIR}/../native/lib*/* ${PREFIX}/${SYSTEM_LIB_DIR}/
-cp -R ${BUILD_DIR}/../native/bin/* ${PREFIX}/${LIB_DIR}-native/
+cp -R ${BUILD_DIR}/native/include/* ${PREFIX}/${SYSTEM_INCLUDE_DIR}/
+cp -R ${BUILD_DIR}/native/lib*/* ${PREFIX}/${SYSTEM_LIB_DIR}/
+cp -R ${BUILD_DIR}/native/bin/* ${PREFIX}/${LIB_DIR}-native/
 for binary in ${PREFIX}/${LIB_DIR}-native/*; do
   cat > ${PREFIX}/${BIN_DIR}/`basename ${binary}` <<EOF
 #!/bin/bash
diff --git a/bigtop-packages/src/deb/zookeeper/rules b/bigtop-packages/src/deb/zookeeper/rules
index 49572e94..ccd3574d 100755
--- a/bigtop-packages/src/deb/zookeeper/rules
+++ b/bigtop-packages/src/deb/zookeeper/rules
@@ -36,7 +36,7 @@ override_dh_auto_build:
 override_dh_auto_install:
 	cp debian/zookeeper.1 debian/zoo.cfg debian/zookeeper.default .
 	bash -x debian/install_zookeeper.sh \
-	  --build-dir=build/zookeeper-${ZOOKEEPER_BASE_VERSION} \
+	  --build-dir=build \
 	  --prefix=debian/$(zookeeper_pkg_name)
 	   # Move native files to a dedicated package
 	   mkdir -p debian/zookeeper-native/usr/bin
diff --git a/bigtop-packages/src/rpm/zookeeper/SPECS/zookeeper.spec b/bigtop-packages/src/rpm/zookeeper/SPECS/zookeeper.spec
index 5b0ffeac..7877559c 100644
--- a/bigtop-packages/src/rpm/zookeeper/SPECS/zookeeper.spec
+++ b/bigtop-packages/src/rpm/zookeeper/SPECS/zookeeper.spec
@@ -154,7 +154,7 @@ bash %{SOURCE1}
 %__rm -rf $RPM_BUILD_ROOT
 cp $RPM_SOURCE_DIR/zookeeper.1 $RPM_SOURCE_DIR/zoo.cfg $RPM_SOURCE_DIR/zookeeper.default .
 bash %{SOURCE2} \
-          --build-dir=build/%{name}-%{zookeeper_base_version} \
+          --build-dir=build \
           --doc-dir=%{doc_zookeeper} \
           --prefix=$RPM_BUILD_ROOT \
           --system-include-dir=%{_includedir} \