Skip to content
This repository was archived by the owner on Sep 12, 2025. It is now read-only.

Commit feb096c

Browse files
committed
Fix relocation RPM feature by createing own prefix variable.
1 parent fd50173 commit feb096c

File tree

1 file changed

+14
-15
lines changed

1 file changed

+14
-15
lines changed

packaging/rpm/el/SPECS/cloudberry-db.spec

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ Source0: cloudberry-binary.tar.gz
1010
# Disable debugsource files
1111
%define _debugsource_template %{nil}
1212

13-
Prefix: /usr/local
13+
# Define the installation prefix
14+
%define cloudberry_prefix /usr/local
1415

1516
# List runtime dependencies
1617
%if 0%{?rhel} == 8
@@ -130,9 +131,9 @@ at https://cloudberrydb.org.
130131
%prep
131132
%setup -q -c -T
132133
# Ensure the target directory exists
133-
mkdir -p %{buildroot}%{_prefix}
134+
mkdir -p %{buildroot}%{cloudberry_prefix}
134135
# Unpack the source tarball into the target directory
135-
tar xzf %{SOURCE0} -C %{buildroot}%{_prefix}
136+
tar xzf %{SOURCE0} -C %{buildroot}%{cloudberry_prefix}
136137

137138
%build
138139
# Normally you'd run your build system here (e.g., make), but we're using the pre-built binary.
@@ -141,32 +142,30 @@ tar xzf %{SOURCE0} -C %{buildroot}%{_prefix}
141142
rm -rf %{buildroot}
142143

143144
# Create the versioned directory
144-
mkdir -p %{buildroot}%{_prefix}/cloudberry-%{version}
145+
mkdir -p %{buildroot}%{cloudberry_prefix}/cloudberry-%{version}
145146

146147
# Unpack the tarball
147-
tar xzf %{SOURCE0} -C %{buildroot}%{_prefix}/cloudberry-%{version}
148+
tar xzf %{SOURCE0} -C %{buildroot}%{cloudberry_prefix}/cloudberry-%{version}
148149

149150
# Move the contents of the cloudberry directory up one level
150-
mv %{buildroot}%{_prefix}/cloudberry-%{version}/cloudberry/* %{buildroot}%{_prefix}/cloudberry-%{version}/
151+
mv %{buildroot}%{cloudberry_prefix}/cloudberry-%{version}/cloudberry/* %{buildroot}%{cloudberry_prefix}/cloudberry-%{version}/
151152

152153
# Remove the now-empty cloudberry directory
153-
rmdir %{buildroot}%{_prefix}/cloudberry-%{version}/cloudberry
154+
rmdir %{buildroot}%{cloudberry_prefix}/cloudberry-%{version}/cloudberry
154155

155156
# Create the symbolic link
156-
ln -sfn %{_prefix}/cloudberry-%{version} %{buildroot}%{_prefix}/cloudberry
157-
158-
# No need to install LICENSE if it's already in the right place within the cloudberry-1.0.0 directory
157+
ln -sfn %{cloudberry_prefix}/cloudberry-%{version} %{buildroot}%{cloudberry_prefix}/cloudberry
159158

160159
%files
161-
%{_prefix}/cloudberry-%{version}
162-
%{_prefix}/cloudberry
160+
%{cloudberry_prefix}/cloudberry-%{version}
161+
%{cloudberry_prefix}/cloudberry
163162

164-
%license %{_prefix}/cloudberry-%{version}/LICENSE
163+
%license %{cloudberry_prefix}/cloudberry-%{version}/LICENSE
165164

166165
%postun
167166
if [ $1 -eq 0 ] ; then
168-
if [ "$(readlink -f "%{_prefix}/cloudberry")" == "%{_prefix}/cloudberry-%{version}" ]; then
169-
unlink "%{_prefix}/cloudberry" || true
167+
if [ "$(readlink -f "%{cloudberry_prefix}/cloudberry")" == "%{cloudberry_prefix}/cloudberry-%{version}" ]; then
168+
unlink "%{cloudberry_prefix}/cloudberry" || true
170169
fi
171170
fi
172171

0 commit comments

Comments
 (0)