diff options
author | CoprDistGit <infra@openeuler.org> | 2025-03-04 12:23:00 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2025-03-04 12:23:00 +0000 |
commit | 434d8166bff360cdb7039326bb617ebaca98face (patch) | |
tree | 1b0333fc674186afc80e2193efebadf8d521d51f /0144-update-centos-build-script.patch | |
parent | 2ccdcb50a81459161cf6b42f0b45c2b86e1bbf76 (diff) |
automatic import of iSuladopeneuler22.03_LTS
Diffstat (limited to '0144-update-centos-build-script.patch')
-rw-r--r-- | 0144-update-centos-build-script.patch | 189 |
1 files changed, 189 insertions, 0 deletions
diff --git a/0144-update-centos-build-script.patch b/0144-update-centos-build-script.patch new file mode 100644 index 0000000..4400afe --- /dev/null +++ b/0144-update-centos-build-script.patch @@ -0,0 +1,189 @@ +From 10aa1ba26eecdf044c1a97e05db53d286e19a3af Mon Sep 17 00:00:00 2001 +From: zhongtao <zhongtao17@huawei.com> +Date: Sat, 26 Oct 2024 18:24:21 +1400 +Subject: [PATCH 144/156] update centos build script + +Signed-off-by: zhongtao <zhongtao17@huawei.com> +--- + CI/dockerfiles/Dockerfile-centos | 10 ++- + docs/build_docs/README_zh.md | 4 + + .../script/install_iSulad_on_Centos_7.sh | 83 +++---------------- + 3 files changed, 23 insertions(+), 74 deletions(-) + +diff --git a/CI/dockerfiles/Dockerfile-centos b/CI/dockerfiles/Dockerfile-centos +index af3ce035..0b11014b 100644 +--- a/CI/dockerfiles/Dockerfile-centos ++++ b/CI/dockerfiles/Dockerfile-centos +@@ -24,6 +24,11 @@ + FROM centos:7.6.1810 + MAINTAINER LiFeng <lifeng68@huawei.com> + ++RUN sed -i 's/mirror.centos.org/archive.kernel.org\/centos-vault/g' /etc/yum.repos.d/*.repo ++RUN sed -i s/^#.*baseurl=http/baseurl=http/g /etc/yum.repos.d/*.repo ++RUN sed -i s/^mirrorlist=http/#mirrorlist=http/g /etc/yum.repos.d/*.repo ++RUN echo "sslverify=false" | tee -a /etc/yum.conf ++ + # Install dependency package + RUN yum clean all && yum makecache && yum install -y epel-release && yum swap -y fakesystemd systemd && \ + yum update -y && \ +@@ -113,6 +118,9 @@ RUN git config --global http.sslverify false + # install rust + RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y + ++RUN mkdir -p /root/.cargo/ ++RUN touch ${HOME}/.cargo/config ++ + # configure rust + RUN echo "[source.crates-io]" >> ${HOME}/.cargo/config && \ + echo "[source.local-registry]" >> ${HOME}/.cargo/config && \ +@@ -286,7 +294,7 @@ RUN export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH && \ + make install && \ + ldconfig + +-RUN dnf install -y ncurses-devel && dnf clean all ++RUN yum install -y ncurses-devel && yum clean all + + VOLUME [ "/sys/fs/cgroup" ] + CMD ["/usr/sbin/init"] +diff --git a/docs/build_docs/README_zh.md b/docs/build_docs/README_zh.md +index f27fbc4f..6450bf7e 100644 +--- a/docs/build_docs/README_zh.md ++++ b/docs/build_docs/README_zh.md +@@ -40,6 +40,8 @@ $ cd iSulad/docs/build_docs/guide/script + $ sudo ./install_iSulad_on_Centos_7.sh + ``` + ++若需要在centos容器中编译iSulad,可参照iSulad编译可使用的镜像dockerfile[Dockerfile-ubuntu](../../CI/dockerfiles/Dockerfile-ubuntu)。 ++ + ### Ubuntu + + 我们同样在代码仓中提供了在Ubuntu上自动化安装的脚本: [install_iSulad_on_Ubuntu_20_04_LTS](./guide/script/install_iSulad_on_Ubuntu_20_04_LTS.sh),您只需要执行这个脚本就可以自动编译安装iSulad以及其依赖的组件。 +@@ -51,6 +53,8 @@ $ sudo chmod +x ./install_iSulad_on_Ubuntu_20_04_LTS.sh + $ sudo ./install_iSulad_on_Ubuntu_20_04_LTS.sh + ``` + ++若需要在ubuntu容器中编译iSulad,可参照iSulad编译可使用的镜像dockerfile[Dockerfile-centos](../../CI/dockerfiles/)。 ++ + ## 构建指南 + + 我们提供了多种构建iSulad的方式: +diff --git a/docs/build_docs/guide/script/install_iSulad_on_Centos_7.sh b/docs/build_docs/guide/script/install_iSulad_on_Centos_7.sh +index b268d777..d83520e1 100755 +--- a/docs/build_docs/guide/script/install_iSulad_on_Centos_7.sh ++++ b/docs/build_docs/guide/script/install_iSulad_on_Centos_7.sh +@@ -5,93 +5,29 @@ set -x + set -e + + # install neccessary packages +-yum install -y patch automake autoconf libtool cmake make libcap libcap-devel libselinux libselinux-devel libseccomp libseccomp-devel yajl-devel git libcgroup tar python3 python3-pip device-mapper-devel libcurl-devel zlib-devel glibc-headers openssl-devel gcc gcc-c++ systemd-devel systemd-libs golang libtar libtar-devel which ++# yum install -y patch automake autoconf libtool cmake make libcap libcap-devel libselinux libselinux-devel libseccomp libseccomp-devel yajl-devel git libcgroup tar python3 python3-pip device-mapper-devel libcurl-devel zlib-devel glibc-headers openssl-devel gcc gcc-c++ systemd-devel systemd-libs golang libtar libtar-devel which + + # export LDFLAGS + export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH + export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib:$LD_LIBRARY_PATH +- echo "/usr/local/lib" >> /etc/ld.so.conf ++echo "/usr/local/lib" >> /etc/ld.so.conf + + BUILD_DIR=/tmp/build_isulad + + rm -rf $BUILD_DIR + mkdir -p $BUILD_DIR + +-# build libarchive +-cd $BUILD_DIR +-git clone https://gitee.com/src-openeuler/libarchive.git +-cd libarchive +-git checkout -b openEuler-20.03-LTS-tag openEuler-20.03-LTS-tag +-tar -zxvf libarchive-3.4.1.tar.gz +-cd libarchive-3.4.1 +-patch -p1 -F1 -s < ../libarchive-uninitialized-value.patch +-cd build +-cmake -DCMAKE_USE_SYSTEM_LIBRARIES=ON ../ +-make -j $(nproc) +-make install +-ldconfig +- +-# build protobuf +-cd $BUILD_DIR +-git clone https://gitee.com/src-openeuler/protobuf.git +-cd protobuf +-git checkout openEuler-20.03-LTS-tag +-tar -xzvf protobuf-all-3.9.0.tar.gz +-cd protobuf-3.9.0 +-./autogen.sh +-./configure +-make -j $(nproc) +-make install +-ldconfig +- +-# build c-ares +-cd $BUILD_DIR +-git clone https://gitee.com/src-openeuler/c-ares.git +-cd c-ares +-git checkout openEuler-20.03-LTS-tag +-tar -xzvf c-ares-1.15.0.tar.gz +-cd c-ares-1.15.0 +-autoreconf -if +-./configure --enable-shared --disable-dependency-tracking +-make -j $(nproc) +-make install +-ldconfig +- +-# build grpc +-cd $BUILD_DIR +-git clone https://gitee.com/src-openeuler/grpc.git +-cd grpc +-git checkout openEuler-20.03-LTS-tag +-tar -xzvf grpc-1.22.0.tar.gz +-cd grpc-1.22.0 +-make -j $(nproc) +-make install +-ldconfig +- +-# build libwebsockets +-cd $BUILD_DIR +-git clone https://gitee.com/src-openeuler/libwebsockets.git +-cd libwebsockets +-git checkout openEuler-20.03-LTS-tag +-tar -xzvf libwebsockets-2.4.2.tar.gz +-cd libwebsockets-2.4.2 +-patch -p1 -F1 -s < ../libwebsockets-fix-coredump.patch +-mkdir build +-cd build +-cmake -DLWS_WITH_SSL=0 -DLWS_MAX_SMP=32 -DCMAKE_BUILD_TYPE=Debug ../ +-make -j $(nproc) +-make install +-ldconfig +- + # build lxc + cd $BUILD_DIR + git clone https://gitee.com/src-openeuler/lxc.git + cd lxc ++git config --global --add safe.directory $BUILD_DIR/lxc/lxc-5.0.2 + ./apply-patches +-cd lxc-4.0.3 +-./autogen.sh +-./configure +-make -j ++cd lxc-5.0.2 ++sed -i 's/return open(rpath, (int)((unsigned int)flags | O_CLOEXEC));/return open(rpath, (int)((unsigned int)flags | O_CLOEXEC), 0);/g' src/lxc/isulad_utils.c ++meson setup -Disulad=true \ ++ -Dprefix=/usr build ++meson compile -C build + make install + + # build lcr +@@ -118,8 +54,9 @@ make install + cd $BUILD_DIR + git clone https://gitee.com/openeuler/iSulad.git + cd iSulad ++sed -i 's/-O2 -Wall -fPIE/-O2 -Wall -fPIE -std=gnu99/g' cmake/set_build_flags.cmake + mkdir build + cd build +-cmake .. ++cmake -DDISABLE_WERROR=on ../ + make + make install +-- +2.34.1 + |