556 lines
18 KiB
RPMSpec
Executable File
556 lines
18 KiB
RPMSpec
Executable File
%define zlib_name zlib
|
||
%define zlib_version 1.2.12
|
||
%define krb5_name krb5
|
||
%define krb5_version 1.18.3-final
|
||
%define xgboost_name xgboost
|
||
%define xgboost_version 1.4.1
|
||
%define dmlc_name dmlc-core
|
||
%define dmlc_version 0.5
|
||
%define port 7654
|
||
%define datapath /var/lib/opengauss
|
||
%define apppath %{_prefix}/local/opengauss
|
||
%define tmppath /var/lib/opengauss/pkg_6.0.0
|
||
|
||
Name: opengauss
|
||
Version: 6.0.0
|
||
Release: 24
|
||
Summary: openGauss is an open source relational database management system
|
||
License: MulanPSL-2.0 and MIT and BSD and zlib and TCL and Apache-2.0 and BSL-1.0
|
||
URL: https://gitee.com/opengauss/openGauss-server
|
||
Source0: openGauss-server-%{version}.tar.gz
|
||
Source1: %{zlib_name}-%{zlib_version}.tar.gz
|
||
Source2: %{krb5_name}-%{krb5_version}.tar.gz
|
||
Source3: %{dmlc_name}-v%{dmlc_version}.tar.gz
|
||
Source4: %{xgboost_name}-v%{xgboost_version}.tar.gz
|
||
|
||
Source20: opengauss-bashprofile
|
||
Source21: opengauss.service
|
||
Source22: autostart.sh
|
||
Source23: version.cfg
|
||
Source24: opengauss_upgrade_start.sh
|
||
Source25: opengauss_upgrade_common.sh
|
||
Source26: opengauss_upgrade_config.sh
|
||
Source27: opengauss_upgrade_errorcode.sh
|
||
Source28: upgrade.sh
|
||
Source29: krb-configure
|
||
|
||
Patch0: og-cmake.patch
|
||
Patch1: og-delete-obs.patch
|
||
Patch2: og-openssl3-adptor.patch
|
||
Patch3: og-security.patch
|
||
Patch4: og-syntax.patch
|
||
Patch5: og-riscv64-support.patch
|
||
Patch6: og-dolphin.patch
|
||
Patch11: zlib.patch
|
||
Patch12: zlib-CVE-2022-37434.patch
|
||
Patch21: krb5-backport-Add-a-simple-DER-support-header.patch
|
||
Patch22: krb5-backport-CVE-2024-37370-CVE-2024-37371-Fix-vulnerabilities-in-GSS-message-token-handling.patch
|
||
Patch23: krb5-cve-2022-42898.patch
|
||
Patch24: krb5-CVE-2023-36054.patch
|
||
Patch25: krb5.patch
|
||
Patch26: xgboost-cmake-3.13.patch
|
||
Patch27: dmlc-core-port-to-newer-cmake.patch
|
||
|
||
BuildRequires: cmake gcc gcc-c++ openssl-devel python tar
|
||
BuildRequires: lz4-devel zstd-devel boost-devel cjson-devel
|
||
BuildRequires: libcgroup-devel libcurl-devel unixODBC-devel jemalloc-devel
|
||
BuildRequires: java-1.8.0-openjdk-devel libedit-devel libaio-devel
|
||
BuildRequires: bison flex, DCF >= 6
|
||
BuildRequires: numactl-devel libxml2-devel xerces-c-devel pkgconfig(aws-cpp-sdk-core)
|
||
BuildRequires: libatomic autoconf
|
||
|
||
%global _privatelibs lib(krb5_gauss|ecpg|z|pg|pq)\\.so*
|
||
%global __provides_exclude %{_privatelibs}
|
||
%global __requires_exclude %{_privatelibs}
|
||
|
||
Requires: lz4-devel zstd-devel boost-devel cjson-devel tar
|
||
Requires: libcgroup-devel libcurl-devel unixODBC-devel jemalloc-devel
|
||
Requires: java-1.8.0-openjdk-devel libedit-devel libaio-devel
|
||
Requires: DCF >= 6, lsof
|
||
Requires: numactl-devel libxml2-devel xerces-c-devel pkgconfig(aws-cpp-sdk-core)
|
||
|
||
%description
|
||
openGauss kernel : openGauss is an open source relational database management system.
|
||
|
||
%global debug_package %{nil}
|
||
|
||
%prep
|
||
%setup -q -c -n %{name}-%{version}
|
||
%setup -q -D -T -a 1
|
||
%setup -q -D -T -a 2
|
||
%setup -q -D -T -a 3
|
||
%setup -q -D -T -a 4
|
||
|
||
pushd openGauss-server-%{version}
|
||
%patch -P0 -p1
|
||
%patch -P1 -p1
|
||
%patch -P2 -p1
|
||
%patch -P3 -p1
|
||
%patch -P4 -p1
|
||
%patch -P5 -p1
|
||
%patch -P6 -p1
|
||
popd
|
||
|
||
pushd %{zlib_name}-%{zlib_version}
|
||
%patch -P11 -p1
|
||
%patch -P12 -p1
|
||
popd
|
||
|
||
pushd %{krb5_name}-%{krb5_name}-%{krb5_version}
|
||
%patch -P21 -p1
|
||
%patch -P22 -p1
|
||
%patch -P23 -p1
|
||
%patch -P24 -p1
|
||
%patch -P25 -p1
|
||
popd
|
||
|
||
pushd %{xgboost_name}-%{xgboost_version}
|
||
%patch -P26 -p1
|
||
popd
|
||
|
||
pushd %{dmlc_name}-%{dmlc_version}
|
||
%patch -P27 -p1
|
||
popd
|
||
|
||
%build
|
||
build_target=$(pwd)/binarylibs/kernel/dependency
|
||
|
||
########### build krb5 ###########
|
||
pushd %{krb5_name}-%{krb5_name}-%{krb5_version}
|
||
krb5_dir=${build_target}/kerberos/comm
|
||
|
||
cd src
|
||
rm -rf configure; cp %{SOURCE29} ./configure
|
||
autoheader; chmod +x configure; sed -i 's/lcom_err/lcom_err_gauss/g' configure
|
||
./configure --prefix=${krb5_dir} LDFLAGS='-Wl,-z,relro,-z,now' CFLAGS='-fstack-protector-strong -fPIC' --disable-rpath --disable-pkinit --with-system-verto=no
|
||
|
||
make -s %{?_smp_mflags}
|
||
make install -s %{?_smp_mflags}
|
||
|
||
rm -rf ${krb5_dir}/lib/pkgconfig
|
||
rm -rf ${krb5_dir}/share
|
||
rm -rf ${krb5_dir}/var
|
||
popd
|
||
|
||
########### build zlib ###########
|
||
pushd %{zlib_name}-%{zlib_version}
|
||
zlib_dir=${build_target}/zlib1.2.11/comm
|
||
CONFIGURE_EXTRA_FLAG="--64"
|
||
%ifarch aarch64
|
||
CONFIGURE_EXTRA_FLAG=""
|
||
%endif
|
||
%ifarch sw_64
|
||
CONFIGURE_EXTRA_FLAG=""
|
||
%endif
|
||
%ifarch riscv64
|
||
CONFIGURE_EXTRA_FLAG=""
|
||
%endif
|
||
./configure ${CONFIGURE_EXTRA_FLAG} --prefix=${zlib_dir}
|
||
sed -i '21a CFLAGS += -fPIC' Makefile
|
||
MAKE_EXTRA_FLAG="-m64"
|
||
%ifarch aarch64
|
||
MAKE_EXTRA_FLAG=""
|
||
%endif
|
||
%ifarch sw_64
|
||
MAKE_EXTRA_FLAG=""
|
||
%endif
|
||
%ifarch riscv64
|
||
MAKE_EXTRA_FLAG=""
|
||
%endif
|
||
make CFLAGS="-fPIE -fPIC" SFLAGS="-O2 -fPIC -fstack-protector-strong -Wl,-z,noexecstack -Wl,-z,relro,-z,now ${MAKE_EXTRA_FLAG} -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN" %{?_smp_mflags}
|
||
make install
|
||
cd contrib/minizip/
|
||
make CFLAGS="-O3 -fPIC -I../.." -f Makefile %{?_smp_mflags}
|
||
mv libminiz.a libminiunz.a
|
||
cp ioapi.h ${zlib_dir}/include/
|
||
cp unzip.h ${zlib_dir}/include/
|
||
cp libminiunz.a ${zlib_dir}/lib/
|
||
chmod 644 ${zlib_dir}/include/ioapi.h ${zlib_dir}/include/unzip.h ${zlib_dir}/lib/libminiunz.a
|
||
cp -r ${zlib_dir} ${build_target}/zlib1.2.11/llt
|
||
popd
|
||
|
||
########### build xgboost ###########
|
||
pushd %{xgboost_name}-%{xgboost_version}
|
||
xgboost_dir=${build_target}/xgboost/comm
|
||
|
||
sed -i '9a set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wl,-z,now -fPIE -fPIC -fstack-protector-strong")' ./CMakeLists.txt
|
||
sed -i '10a set (CMAKE_CPP_FLAGS "${CMAKE_CPP_FLAGS} -Wl,-z,now -fPIE -fPIC -fstack-protector-strong")' ./CMakeLists.txt
|
||
sed -i '11a set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-z,now -fPIE -fPIC -fstack-protector-strong")' ./CMakeLists.txt
|
||
|
||
rm -rf dmlc-core
|
||
cp -r ../dmlc-core-%{dmlc_version}/ ./dmlc-core
|
||
|
||
rm -rf build_install
|
||
mkdir build_install && cd build_install
|
||
cmake .. -DCMAKE_INSTALL_PREFIX=${xgboost_dir}
|
||
make %{?_smp_mflags}
|
||
make install
|
||
cp -r ${xgboost_dir} ${build_target}/xgboost/llt
|
||
popd
|
||
|
||
########### build opengauss ###########
|
||
%ifarch riscv64
|
||
CMAKE_EXTRA_FLAG="-DENABLE_BBOX=OFF"
|
||
rm -rf openGauss-server-%{version}/contrib/dolphin
|
||
%endif
|
||
pushd openGauss-server-%{version}
|
||
opengauss_source_dir=$(pwd)
|
||
export BUILD_TUPLE=$(uname -m)
|
||
export DEBUG_TYPE=release
|
||
export THIRD_BIN_PATH=${build_target}/../../../binarylibs
|
||
export LD_LIBRARY_PATH=$THIRD_BIN_PATH/kernel/dependency/zlib1.2.11/comm/lib:$LD_LIBRARY_PATH
|
||
export LD_LIBRARY_PATH=$THIRD_BIN_PATH/kernel/dependency/kerberos/comm/lib:$LD_LIBRARY_PATH
|
||
export LD_LIBRARY_PATH=$THIRD_BIN_PATH/kernel/dependency/xgboost/comm/lib:$LD_LIBRARY_PATH
|
||
export PREFIX_HOME=${opengauss_source_dir}/mppdb_temp_install
|
||
|
||
mkdir -p tmp_build
|
||
cd tmp_build
|
||
cmake .. -DENABLE_MULTIPLE_NODES=OFF -DENABLE_THREAD_SAFETY=ON -DWITH_OPENEULER_OS=ON -DENABLE_OPENEULER_MAJOR=ON \
|
||
-DENABLE_LLVM_COMPILE=OFF -DENABLE_OBS=OFF -DENABLE_OPENSSL3=ON ${CMAKE_EXTRA_FLAG}
|
||
make %{?_smp_mflags}
|
||
make install
|
||
|
||
# clean build root
|
||
rm -rf %{buildroot}/*
|
||
|
||
mkdir -p %{buildroot}/var/lib/opengauss/data
|
||
mkdir -p %{buildroot}%{apppath}/script
|
||
mkdir -p %{buildroot}%{tmppath}/script
|
||
|
||
# separate_debug_symbol.sh dir
|
||
cd ${opengauss_source_dir}/build/script
|
||
chmod +x ./separate_debug_information.sh
|
||
sed -i '/"$BIN_DIR\/gaussdb\.map"/d' ./separate_debug_information.sh
|
||
./separate_debug_information.sh
|
||
rm -rf ${opengauss_source_dir}/mppdb_temp_install/packages
|
||
rm -rf ${opengauss_source_dir}/mppdb_temp_install/symbols
|
||
|
||
# package
|
||
os_name=$(cat /etc/os-release | grep -w NAME | awk -F '"' '{print $2}')
|
||
if [[ -f "/etc/openEuler-release" ]]; then
|
||
os_name="openEuler"
|
||
elif [[ -f "/etc/euleros-release" ]]; then
|
||
os_name="EulerOS"
|
||
elif [[ -f "/etc/centos-release" ]]; then
|
||
os_name="CentOS"
|
||
elif [[ -f "/etc/FusionOS-release" ]]; then
|
||
os_name="FusionOS"
|
||
elif [[ -f "/etc/kylin-release" ]]; then
|
||
os_name="Kylin"
|
||
elif [[ -f "/etc/asianux-release" ]]; then
|
||
os_name="Asianux"
|
||
elif [[ -f "/etc/CSIOS-release" ]]; then
|
||
os_name="CSIOS"
|
||
else
|
||
os_name=$(lsb_release -d | awk -F ' ' '{print $2}'| tr A-Z a-z | sed 's/.*/\L&/; s/[a-z]*/\u&/g')
|
||
fi
|
||
|
||
os_version=$(cat /etc/os-release | grep -w VERSION_ID | awk -F '"' '{print $2}')
|
||
|
||
platform_arch=$(uname -m)
|
||
kernel_package_name=openGauss-Server-%{version}-${os_name}-${os_version}-${platform_arch}
|
||
cd ${opengauss_source_dir}/mppdb_temp_install
|
||
tar -zcf ${kernel_package_name}.tar.bz2 *
|
||
sha256sum ${kernel_package_name}.tar.bz2 | awk '{print $1}' > ${kernel_package_name}.sha256
|
||
|
||
# copy binarylibs packages to %{tmppath}
|
||
cp -r ${opengauss_source_dir}/mppdb_temp_install/* %{buildroot}%{tmppath}
|
||
|
||
# make package upgrade sql
|
||
cd ${opengauss_source_dir}/tmp_build
|
||
cp -r ${opengauss_source_dir}/src/include/catalog/upgrade_sql ./upgrade_sql
|
||
tar -zcf upgrade_sql.tar.gz ./upgrade_sql
|
||
rm -rf ./upgrade_sql > /dev/null 2>&1
|
||
sha256sum upgrade_sql.tar.gz | awk '{print $1}' > upgrade_sql.sha256
|
||
if [ $? -ne 0 ]; then
|
||
echo "Generate upgrade_sql.sha256 failed."
|
||
exit 1
|
||
fi
|
||
cp -r upgrade_sql.tar.gz %{buildroot}%{tmppath}
|
||
cp -r upgrade_sql.sha256 %{buildroot}%{tmppath}
|
||
|
||
# opengauss datanode dir.
|
||
install -d -m 700 $RPM_BUILD_ROOT%{?_localstatedir}/lib/opengauss/data
|
||
|
||
# opengauss .bash_profile
|
||
install -m 644 %{SOURCE20} $RPM_BUILD_ROOT%{?_localstatedir}/lib/opengauss/.bash_profile
|
||
# auto start files
|
||
install -m 644 %{SOURCE21} %{buildroot}%{tmppath}/script/opengauss.service
|
||
install -m 644 %{SOURCE22} %{buildroot}%{tmppath}/script/autostart.sh
|
||
|
||
# upgrade script
|
||
install -m 644 %{SOURCE23} %{buildroot}%{tmppath}/version.cfg
|
||
install -m 644 %{SOURCE24} %{buildroot}%{tmppath}/opengauss_upgrade_start.sh
|
||
install -m 644 %{SOURCE25} %{buildroot}%{tmppath}/opengauss_upgrade_common.sh
|
||
install -m 644 %{SOURCE26} %{buildroot}%{tmppath}/opengauss_upgrade_config.sh
|
||
install -m 644 %{SOURCE27} %{buildroot}%{tmppath}/opengauss_upgrade_errorcode.sh
|
||
install -m 644 %{SOURCE28} %{buildroot}%{tmppath}/upgrade.sh
|
||
|
||
popd
|
||
|
||
%pre
|
||
# add opengauss user
|
||
/usr/sbin/groupadd -r opengauss >/dev/null 2>&1 || :
|
||
/usr/sbin/useradd -M -N -g opengauss -r -d %{datapath} -s /bin/bash -c "openGauss Server" opengauss >/dev/null 2>&1 || :
|
||
|
||
# for install step
|
||
# 1:install 2:upgrade
|
||
if [ $1 -eq 1 ]; then
|
||
echo "Preparing for install"
|
||
portinfo=$(lsof -i:%{port})
|
||
if [ "${portinfo}" != "" ]; then
|
||
echo "Error: The port[%{port}] is occupied. Please use command 'lsof -i:%{port} to check it.'"
|
||
fi
|
||
|
||
if [ -d /var/lib/opengauss/data ]; then
|
||
if [ "`ls -A /var/lib/opengauss/data`" != "" ]; then
|
||
echo "Datanode dir(/var/lib/opengauss/data) is not empty."
|
||
echo "Please delete dir and reinstall opengauss."
|
||
exit 1
|
||
fi
|
||
process_id=$(ps -ef | grep /var/lib/opengauss/data | grep -v grep | awk '{print $2}')
|
||
if [ "$process_id" != "" ]; then
|
||
echo "A process of opengauss already exists. Use command (ps -ef | grep /var/lib/opengauss/data) to confirm."
|
||
echo "Please kill the process and reinstall opengauss."
|
||
exit 1
|
||
fi
|
||
fi
|
||
|
||
elif [ $1 -eq 2 ]; then
|
||
echo "Preparing for upgrade"
|
||
old_version=$(rpm -qi opengauss | grep -i version | awk -F':' '{print $2}' | sed 's/^[ \t]*//;s/[ \t]*$//')
|
||
if [ "$(printf '%s\n' "%{version}" "$old_version" | sort -V | head -n1)" == "%{version}" ]; then
|
||
echo "Error: New version (%{version}) must be greater than the old version ($old_version)."
|
||
exit 1
|
||
fi
|
||
if [[ "${old_version}" == "2.1.0" && %{version} == "6.0.0" ]]; then
|
||
echo "The opengauss do not support upgrade from 2.1.0 to 6.0.0."
|
||
exit 1
|
||
fi
|
||
fi
|
||
|
||
%post
|
||
start_opengauss(){
|
||
result=$(su - opengauss -c "source ~/.bash_profile; gs_initdb -D /var/lib/opengauss/data -U opengauss --nodename=single_node")
|
||
if [ $? -ne 0 ]; then
|
||
echo "Init openGauss database failed."
|
||
exit $result
|
||
else
|
||
echo "Init openGauss database success."
|
||
fi
|
||
}
|
||
|
||
add_service(){
|
||
cp %{apppath}/script/opengauss.service /usr/lib/systemd/system/
|
||
systemctl daemon-reload
|
||
}
|
||
|
||
remove_service(){
|
||
service_name=/usr/lib/systemd/system/opengauss.service
|
||
if [ -f $service_name ]; then
|
||
systemctl disable opengauss.service
|
||
rm $service_name
|
||
fi
|
||
}
|
||
|
||
create_dir() {
|
||
if [ -d /usr/local/opengauss ]; then
|
||
rm -rf /usr/local/opengauss
|
||
fi
|
||
mkdir -p /usr/local/opengauss
|
||
cp -r /var/lib/opengauss/pkg_%{version}/* /usr/local/opengauss
|
||
chmod -R 755 /usr/local/opengauss
|
||
chown -R opengauss:opengauss /usr/local/opengauss
|
||
}
|
||
|
||
upgrade_create_dir() {
|
||
rm -rf /var/lib/opengauss/opengauss_upgrade/pkg_%{version}
|
||
rm -rf /var/lib/opengauss/opengauss_upgrade/bak
|
||
rm -rf /var/lib/opengauss/opengauss_upgrade/tmp
|
||
mkdir -p /var/lib/opengauss/opengauss_upgrade/pkg_%{version}
|
||
mkdir -p /var/lib/opengauss/opengauss_upgrade/bak
|
||
mkdir -p /var/lib/opengauss/opengauss_upgrade/tmp
|
||
chown -R opengauss:opengauss /var/lib/opengauss
|
||
}
|
||
|
||
# for install step
|
||
# 1:install 2:upgrade
|
||
if [ $1 -eq 1 ]; then
|
||
echo "install" > /var/lib/opengauss/recode_install_flag
|
||
create_dir
|
||
start_opengauss
|
||
add_service
|
||
elif [ $1 -eq 2 ]; then
|
||
echo "upgrade" > /var/lib/opengauss/recode_install_flag
|
||
echo "start upgrade..."
|
||
upgrade_create_dir
|
||
cmd="source ~/.bash_profile; cd /var/lib/opengauss/pkg_%{version}; sh upgrade.sh"
|
||
result=$(su - opengauss -c "$cmd")
|
||
if [ $? -ne 0 ]; then
|
||
echo "Upgrade failed."
|
||
echo "$result, Please cat the log information: cat /var/lib/opengauss/opengauss_upgrade/opengauss_upgrade.log"
|
||
echo "failed" > /var/lib/opengauss/upgrade_result
|
||
exit 1
|
||
else
|
||
echo "Upgrade success."
|
||
echo "success" > /var/lib/opengauss/upgrade_result
|
||
fi
|
||
remove_service
|
||
add_service
|
||
fi
|
||
|
||
%preun
|
||
remove_service(){
|
||
service_name=/usr/lib/systemd/system/opengauss.service
|
||
if [ -f $service_name ]; then
|
||
systemctl disable opengauss.service
|
||
rm $service_name
|
||
fi
|
||
}
|
||
|
||
# 0: uninstall 1:upgrade
|
||
if [ $1 -eq 0 ]; then
|
||
echo "remove opengauss service"
|
||
remove_service
|
||
fi
|
||
|
||
%postun
|
||
clear_database(){
|
||
pid=$(ps -ef | grep /var/lib/opengauss/data | grep -v grep | awk '{print $2}')
|
||
if [ "$pid" != "" ]; then
|
||
kill -9 $pid
|
||
fi
|
||
if [ -d /usr/local/opengauss ]; then
|
||
rm -rf /usr/local/opengauss
|
||
fi
|
||
if [ -d /usr/local/opengauss_%{version} ]; then
|
||
rm -rf /usr/local/opengauss_%{version}
|
||
fi
|
||
if [ -f /var/lib/opengauss/recode_install_flag ]; then
|
||
rm -rf /var/lib/opengauss/recode_install_flag
|
||
fi
|
||
if [ -f /var/lib/opengauss/upgrade_result ]; then
|
||
rm -rf /var/lib/opengauss/upgrade_result
|
||
fi
|
||
if [ -d /var/lib/opengauss/pkg_%{version} ]; then
|
||
rm -rf /var/lib/opengauss/pkg_%{version}
|
||
fi
|
||
if [ -d /var/lib/opengauss/opengauss_upgrade ]; then
|
||
rm -rf /var/lib/opengauss/opengauss_upgrade
|
||
fi
|
||
}
|
||
|
||
# 0: uninstall
|
||
if [ $1 -eq 0 ]; then
|
||
echo "clean database"
|
||
clear_database
|
||
fi
|
||
|
||
%posttrans
|
||
flag=$(cat /var/lib/opengauss/recode_install_flag)
|
||
if [ $flag = "install" ]; then
|
||
echo "opengauss install successfully!"
|
||
echo "Please run: systemctl start opengauss.service"
|
||
else
|
||
echo "upgrade posttrans"
|
||
if [ -d "/usr/local/opengauss" ] && [ "$(ls -A /usr/local/opengauss)" ]; then
|
||
rm -rf /usr/local/opengauss
|
||
fi
|
||
mkdir -p /usr/local/opengauss
|
||
upgrade_file=/var/lib/opengauss/upgrade_result
|
||
if [[ -f ${upgrade_file} && $(cat $upgrade_file) = "success" ]]; then
|
||
echo "opengauss upgrade successfully"
|
||
cp -rf /var/lib/opengauss/opengauss_upgrade/pkg_%{version}/* /usr/local/opengauss
|
||
else
|
||
echo "opengauss upgrade failed, rollback in progress"
|
||
cp -rf /var/lib/opengauss/opengauss_upgrade/bak/* /usr/local/opengauss
|
||
fi
|
||
chown -R opengauss:opengauss /usr/local/opengauss
|
||
chmod -R 755 /usr/local/opengauss
|
||
chmod -R 700 /var/lib/opengauss/data
|
||
systemctl restart opengauss.service
|
||
fi
|
||
|
||
|
||
%files
|
||
%doc
|
||
%defattr (755,opengauss,opengauss)
|
||
%{apppath}
|
||
|
||
%defattr (700,opengauss,opengauss)
|
||
%{?_localstatedir}/lib/opengauss
|
||
|
||
|
||
%changelog
|
||
* Wed Mar 12 2025 Funda Wang <fundawang@yeah.net> - 6.0.0-24
|
||
- fix build with cmake 4.0
|
||
|
||
* Sat Dec 28 2024 liuheng <liuheng76@huawei.com> - 6.0.0-23
|
||
- Fix bugs: upgrade failed
|
||
|
||
* Sat Dec 14 2024 liuheng <liuheng76@huawei.com> - 6.0.0-22
|
||
- Fix bugs: when upgrading, the new version cannot be lower than the old version
|
||
|
||
* Sat Dec 14 2024 liuheng <liuheng76@huawei.com> - 6.0.0-21
|
||
- Fix different versions of autoconf and resolve exceptions
|
||
|
||
* Fri Dec 13 2024 liuheng <liuheng76@huawei.com> - 6.0.0-20
|
||
- Fix bugs: #IBB3VO
|
||
|
||
* Tue Dec 10 2024 liuheng <liuheng76@huawei.com> - 6.0.0-19
|
||
- Fix bugs: #IBAAVY
|
||
|
||
* Thu Dec 5 2024 xiaofan <xiaofan@iscas.ac.cn> - 6.0.0-18
|
||
- Support riscv64
|
||
|
||
* Mon Dec 2 2024 liuheng <liuheng76@huawei.com> - 6.0.0-17
|
||
- Adaptation upgrade
|
||
|
||
* Thu Nov 14 2024 liuheng <liuheng76@huawei.com> - 6.0.0-16
|
||
- Update version to 6.0.0
|
||
|
||
* Thu Jun 20 2024 liuheng <liuheng76@huawei.com> - 5.0.1-15
|
||
- Fix bugs: Initialize Remove Password
|
||
|
||
* Wed Jun 12 2024 liuheng <liuheng76@huawei.com> - 5.0.1-14
|
||
- Fix bugs: #IA4KLQ #IA4PTU
|
||
|
||
* Fri May 24 2024 zhangzhihui <zhangzhihui42@huawei.com> - 5.0.1-13
|
||
- upgrade function
|
||
|
||
* Mon May 6 2024 liuheng <liuheng76@huawei.com> - 5.0.1-12
|
||
- Update version to 5.0.1
|
||
|
||
* Fri Aug 18 2023 panchenbo <panchenbo@kylinsec.com.cn> - 2.1.0-11
|
||
- add sw_64 support
|
||
|
||
* Mon Aug 14 2023 zhangxubo <zhangxubo1@huawei.com> - 2.1.0-10
|
||
- Fix bugs: #I7QJRO
|
||
|
||
* Tue Jun 6 2023 dillon chen<dillon.chen@gmail.com> - 2.1.0-9
|
||
- Fix bugs: #I677QX; add lsof
|
||
|
||
* Mon Apr 10 2023 panchenbo <panchenbo@kylinsec.com.cn> - 2.1.0-8
|
||
- add /etc/kylinsec-release support for KylinSec
|
||
|
||
* Sat Feb 11 2023 zhangxubo <zhangxubo1@huawei.com> - 2.1.0-7
|
||
- Fix bugs: #I6ED94
|
||
|
||
* Wed Mar 30 2022 ouyangminxiang <ouyangminxiang@kylinsec.com.cn> - 2.1.0-6
|
||
- add kylinsec platform
|
||
|
||
* Sat Mar 12 2022 zhangxubo <zhangxubo1@huawei.com> - 2.1.0-5
|
||
- Fix bugs: #I4VDYQ #I4V624 #I4UOUU #I4TCDB #I4TCB8
|
||
|
||
* Thu Jan 27 2022 zhangxubo <zhangxubo1@huawei.com> - 2.1.0-4
|
||
- Fix bugs: #I4SDWX
|
||
|
||
* Sat Jan 22 2022 zhangxubo <zhangxubo1@huawei.com> - 2.1.0-3
|
||
- Fix bugs: #I4RVNX
|
||
|
||
* Mon Dec 13 2021 zhangxubo <zhangxubo1@huawei.com> - 2.1.0-2
|
||
- Fix bugs: Mask dependencies acquired during installation
|
||
|
||
* Wed Dec 1 2021 zhangxubo <zhangxubo1@huawei.com> - 2.1.0-1
|
||
- Package init
|