Changeset: 240b8889d95f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/240b8889d95f
Modified Files:
MonetDB.spec
Branch: Dec2025
Log Message:
Fixes to get compat RPM build to work again.
We need to compile with ODBC in order for the ODBC loader to be
available. We still don't want the ODBC driver, though.
diffs (213 lines):
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -111,9 +111,7 @@ BuildRequires: unixODBC-devel
BuildRequires: readline-devel
%else
BuildRequires: pkgconfig(bzip2)
-%if %{without compat}
BuildRequires: pkgconfig(odbc)
-%endif
BuildRequires: pkgconfig(readline)
%endif
%if %{with fits}
@@ -392,7 +390,7 @@ This package contains the MonetDB ODBC d
%post client-odbc
# install driver if first install of package or if driver not installed yet
if [ "$1" -eq 1 ] || ! odbcinst -d -q -n MonetDB >& /dev/null; then
-odbcinst -i -d -r <<EOF
+ odbcinst -i -d -r <<\EOF
[MonetDB]
Description = ODBC for MonetDB
Driver = %{_exec_prefix}/lib/libMonetODBC.so
@@ -404,7 +402,7 @@ fi
%postun client-odbc
if [ "$1" -eq 0 ]; then
-odbcinst -u -d -n MonetDB
+ odbcinst -u -d -n MonetDB
fi
%files client-odbc
@@ -844,16 +842,16 @@ package. You probably don't need this,
%{_bindir}/example_proxy
%{_bindir}/example_sessions
%{_bindir}/example_temporal
+%endif
+%if %{without compat}
%package testing-python
Summary: MonetDB - Monet Database Management System
Group: Applications/Databases
Requires: %{name}-client-tests = %{version}-%{release}
Requires: python3dist(pymonetdb) >= 1.9
BuildArch: noarch
-%endif
-%if %{without compat}
%description testing-python
MonetDB is a database management system that is developed from a
main-memory perspective with use of a fully decomposed storage model,
@@ -907,28 +905,34 @@ an mserver5 process started by monetdbd
read files in users' home directories.
%post selinux
-for selinuxvariant in %{selinux_variants}
-do
- /usr/sbin/semodule -s ${selinuxvariant} -i \
- %{_datadir}/selinux/${selinuxvariant}/monetdb.pp &> /dev/null || :
+for selinuxvariant in %{selinux_variants}; do
+ /usr/sbin/semodule -s ${selinuxvariant} -i \
+ %{_datadir}/selinux/${selinuxvariant}/monetdb.pp &> /dev/null || :
done
-/sbin/restorecon -R %{_localstatedir}/monetdb5 %{_localstatedir}/log/monetdb
%{_rundir}/monetdb %{_bindir}/monetdbd* %{_bindir}/mserver5*
%{_unitdir}/monetdbd.service &> /dev/null || :
+/sbin/restorecon -R %{_localstatedir}/monetdb5 \
+ %{_localstatedir}/log/monetdb \
+ %{_rundir}/monetdb %{_bindir}/monetdbd* \
+ %{_bindir}/mserver5* \
+ %{_unitdir}/monetdbd.service &> /dev/null || :
/usr/bin/systemctl try-restart monetdbd.service
%postun selinux
-if [ $1 -eq 0 ] ; then
- active=`/usr/bin/systemctl is-active monetdbd.service`
- if [ $active = active ]; then
- /usr/bin/systemctl stop monetdbd.service
- fi
- for selinuxvariant in %{selinux_variants}
- do
- /usr/sbin/semodule -s ${selinuxvariant} -r monetdb &> /dev/null || :
- done
- /sbin/restorecon -R %{_localstatedir}/monetdb5 %{_localstatedir}/log/monetdb
%{_rundir}/monetdb %{_bindir}/monetdbd* %{_bindir}/mserver5*
%{_unitdir}/monetdbd.service &> /dev/null || :
- if [ $active = active ]; then
- /usr/bin/systemctl start monetdbd.service
- fi
+if [ $1 -eq 0 ]; then
+ active=`/usr/bin/systemctl is-active monetdbd.service`
+ if [ $active = active ]; then
+ /usr/bin/systemctl stop monetdbd.service
+ fi
+ for selinuxvariant in %{selinux_variants}; do
+ /usr/sbin/semodule -s ${selinuxvariant} -r monetdb &> /dev/null || :
+ done
+ /sbin/restorecon -R %{_localstatedir}/monetdb5 \
+ %{_localstatedir}/log/monetdb \
+ %{_rundir}/monetdb %{_bindir}/monetdbd* \
+ %{_bindir}/mserver5* \
+ %{_unitdir}/monetdbd.service &> /dev/null || :
+ if [ $active = active ]; then
+ /usr/bin/systemctl start monetdbd.service
+ fi
fi
%files selinux
@@ -952,7 +956,7 @@ fi
-DGEOM=%{?with_geos:ON}%{!?with_geos:OFF} \
-DINT128=%{?with_hugeint:ON}%{!?with_hugeint:OFF} \
-DNETCDF=OFF \
- -DODBC=%{!?with_compat:ON}%{?with_compat:OFF} \
+ -DODBC=ON \
-DPY3INTEGRATION=%{?with_py3integration:ON}%{!?with_py3integration:OFF} \
-DRINTEGRATION=%{?with_rintegration:ON}%{!?with_rintegration:OFF} \
-DSANITIZER=OFF \
@@ -978,14 +982,18 @@ fi
%install
mkdir -p "${RPM_BUILD_ROOT}"/usr
-for d in etc var; do mkdir "${RPM_BUILD_ROOT}"/$d; ln -s ../$d
"${RPM_BUILD_ROOT}"/usr/$d; done
+for d in etc var; do
+ mkdir "${RPM_BUILD_ROOT}"/$d
+ ln -s ../$d "${RPM_BUILD_ROOT}"/usr/$d
+done
%cmake_install
rm "${RPM_BUILD_ROOT}"/usr/var "${RPM_BUILD_ROOT}"/usr/etc
# move file to correct location
mkdir -p "${RPM_BUILD_ROOT}"%{_tmpfilesdir} "${RPM_BUILD_ROOT}"%{_sysusersdir}
-mv "${RPM_BUILD_ROOT}"%{_sysconfdir}/tmpfiles.d/monetdbd.conf
"${RPM_BUILD_ROOT}"%{_tmpfilesdir}
-cat > "${RPM_BUILD_ROOT}"%{_sysusersdir}/monetdb.conf << EOF
+mv "${RPM_BUILD_ROOT}"%{_sysconfdir}/tmpfiles.d/monetdbd.conf \
+ "${RPM_BUILD_ROOT}"%{_tmpfilesdir}
+cat > "${RPM_BUILD_ROOT}"%{_sysusersdir}/monetdb.conf << \EOF
u monetdb - "MonetDB Server" /var/lib/monetdb
EOF
rmdir "${RPM_BUILD_ROOT}"%{_sysconfdir}/tmpfiles.d
@@ -1000,11 +1008,11 @@ rm -f "${RPM_BUILD_ROOT}"%{_libdir}/mone
rm -f "${RPM_BUILD_ROOT}"%{_libdir}/monetdb5*/lib_udf*.so
rm -f "${RPM_BUILD_ROOT}"%{_bindir}/monetdb_mtest.sh
-if [ -x /usr/sbin/hardlink ]; then
- /usr/sbin/hardlink -cv "${RPM_BUILD_ROOT}"%{_datadir}/selinux
+if [ -x /usr/bin/hardlink ]; then
+ # post unification of /bin and /sbin
+ /usr/bin/hardlink -cv "${RPM_BUILD_ROOT}"%{_datadir}/selinux
else
- # Fedora 31
- /usr/bin/hardlink -cv "${RPM_BUILD_ROOT}"%{_datadir}/selinux
+ /usr/sbin/hardlink -cv "${RPM_BUILD_ROOT}"%{_datadir}/selinux
fi
# update shebang lines for Python scripts
@@ -1018,14 +1026,59 @@ fi
%if %{with compat}
# delete files that are not going to be installed in compat packages
-rm
"${RPM_BUILD_ROOT}"%{_bindir}/{M{convert.py,test.py,z.py},bincopydata,example_proxy,m{alsample.pl,client,ktest.py,onetdb{,d},s{erver5,qldump},urltest},s{ample{0,1,4},hutdowntest,mack0{0,1},ql{logictest.py,sample.p{hp,l}},treamcat},testcondvar}
+rm "${RPM_BUILD_ROOT}"%{_bindir}/Mtest.py
+rm "${RPM_BUILD_ROOT}"%{_bindir}/Mz.py
+rm "${RPM_BUILD_ROOT}"%{_bindir}/ODBCgetInfo
+rm "${RPM_BUILD_ROOT}"%{_bindir}/ODBCmetadata
+rm "${RPM_BUILD_ROOT}"%{_bindir}/ODBCStmtAttr
+rm "${RPM_BUILD_ROOT}"%{_bindir}/ODBCtester
+rm "${RPM_BUILD_ROOT}"%{_bindir}/arraytest
+rm "${RPM_BUILD_ROOT}"%{_bindir}/backrefencode
+rm "${RPM_BUILD_ROOT}"%{_bindir}/bincopydata
+rm "${RPM_BUILD_ROOT}"%{_bindir}/demo_oob_read
+rm "${RPM_BUILD_ROOT}"%{_bindir}/demo_oob_write
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example1
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example2
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example_append
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example_append_raw
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example_backup
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example_blob
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example_connections
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example_copy
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example_decimals
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example_proxy
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example_sessions
+rm "${RPM_BUILD_ROOT}"%{_bindir}/example_temporal
+rm "${RPM_BUILD_ROOT}"%{_bindir}/malsample.pl
+rm "${RPM_BUILD_ROOT}"%{_bindir}/mclient
+rm "${RPM_BUILD_ROOT}"%{_bindir}/mktest.py
+rm "${RPM_BUILD_ROOT}"%{_bindir}/monetdb
+rm "${RPM_BUILD_ROOT}"%{_bindir}/monetdbd
+rm "${RPM_BUILD_ROOT}"%{_bindir}/mserver5
+rm "${RPM_BUILD_ROOT}"%{_bindir}/msqldump
+rm "${RPM_BUILD_ROOT}"%{_bindir}/murltest
+rm "${RPM_BUILD_ROOT}"%{_bindir}/odbcconnect
+rm "${RPM_BUILD_ROOT}"%{_bindir}/odbcsample1
+rm "${RPM_BUILD_ROOT}"%{_bindir}/sample0
+rm "${RPM_BUILD_ROOT}"%{_bindir}/sample1
+rm "${RPM_BUILD_ROOT}"%{_bindir}/sample4
+rm "${RPM_BUILD_ROOT}"%{_bindir}/shutdowntest
+rm "${RPM_BUILD_ROOT}"%{_bindir}/smack00
+rm "${RPM_BUILD_ROOT}"%{_bindir}/smack01
+rm "${RPM_BUILD_ROOT}"%{_bindir}/sqllogictest.py
+rm "${RPM_BUILD_ROOT}"%{_bindir}/sqlsample.php
+rm "${RPM_BUILD_ROOT}"%{_bindir}/sqlsample.pl
+rm "${RPM_BUILD_ROOT}"%{_bindir}/streamcat
+rm "${RPM_BUILD_ROOT}"%{_bindir}/testcondvar
rm -r "${RPM_BUILD_ROOT}"%{_datadir}/doc/MonetDB*
rm "${RPM_BUILD_ROOT}"%{_datadir}/selinux/*/monetdb.pp
rm -r "${RPM_BUILD_ROOT}"%{_datadir}/monetdb
rm -r "${RPM_BUILD_ROOT}"%{_includedir}/monetdb
-rm "${RPM_BUILD_ROOT}"%{_libdir}/*.so
"${RPM_BUILD_ROOT}"%{_libdir}/libmonetdbe.so.*
+rm "${RPM_BUILD_ROOT}"%{_libdir}/*.so
+rm "${RPM_BUILD_ROOT}"%{_libdir}/libmonetdbe.so.*
rm -r "${RPM_BUILD_ROOT}"%{_libdir}/pkgconfig
-rm -r "${RPM_BUILD_ROOT}"%{_localstatedir}/lib/monetdb
"${RPM_BUILD_ROOT}"%{_localstatedir}/monetdb5
+rm -r "${RPM_BUILD_ROOT}"%{_localstatedir}/lib/monetdb
+rm -r "${RPM_BUILD_ROOT}"%{_localstatedir}/monetdb5
rm -r "${RPM_BUILD_ROOT}"%{_mandir}/man1
rm -r "${RPM_BUILD_ROOT}"%{python3_sitelib}/MonetDBtesting
rm "${RPM_BUILD_ROOT}"%{_sysconfdir}/logrotate.d/monetdbd
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]